From 242f56afdbe3a703fe862c10e8fd7b99cc28194e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 6 Oct 2024 21:37:54 +0200 Subject: [PATCH] build(deps): update hugo-coder theme to v1.1.0 (#8) Co-authored-by: matsest <10927304+matsest@users.noreply.github.com> --- themes/hugo-geekdoc/VERSION | 2 +- themes/hugo-geekdoc/data/assets.json | 400 +++++++++--------- .../static/favicon/android-chrome-144x144.png | Bin 2252 -> 2246 bytes .../static/favicon/android-chrome-192x192.png | Bin 3237 -> 3210 bytes .../static/favicon/android-chrome-256x256.png | Bin 4191 -> 4149 bytes .../static/favicon/android-chrome-384x384.png | Bin 7475 -> 7255 bytes .../static/favicon/android-chrome-48x48.png | Bin 785 -> 785 bytes .../static/favicon/android-chrome-512x512.png | Bin 10460 -> 10167 bytes .../static/favicon/android-chrome-72x72.png | Bin 1227 -> 1228 bytes .../static/favicon/android-chrome-96x96.png | Bin 1456 -> 1455 bytes .../favicon/apple-touch-icon-1024x1024.png | Bin 44661 -> 28555 bytes .../favicon/apple-touch-icon-114x114.png | Bin 1870 -> 1817 bytes .../favicon/apple-touch-icon-120x120.png | Bin 1778 -> 1708 bytes .../favicon/apple-touch-icon-144x144.png | Bin 2544 -> 2446 bytes .../favicon/apple-touch-icon-152x152.png | Bin 2685 -> 2581 bytes .../favicon/apple-touch-icon-167x167.png | Bin 2993 -> 2881 bytes .../favicon/apple-touch-icon-180x180.png | Bin 2896 -> 2714 bytes .../static/favicon/apple-touch-icon-57x57.png | Bin 990 -> 982 bytes .../static/favicon/apple-touch-icon-60x60.png | Bin 940 -> 932 bytes .../static/favicon/apple-touch-icon-72x72.png | Bin 1282 -> 1273 bytes .../static/favicon/apple-touch-icon-76x76.png | Bin 1277 -> 1257 bytes .../favicon/apple-touch-icon-precomposed.png | Bin 2896 -> 2714 bytes .../static/favicon/apple-touch-icon.png | Bin 2896 -> 2714 bytes .../apple-touch-startup-image-1125x2436.png | Bin 77173 -> 34421 bytes .../apple-touch-startup-image-1136x640.png | Bin 25751 -> 14264 bytes .../apple-touch-startup-image-1170x2532.png | Bin 82913 -> 35593 bytes .../apple-touch-startup-image-1179x2556.png | Bin 83401 -> 36122 bytes .../apple-touch-startup-image-1242x2208.png | Bin 81872 -> 38178 bytes .../apple-touch-startup-image-1242x2688.png | Bin 91208 -> 38449 bytes .../apple-touch-startup-image-1284x2778.png | Bin 93616 -> 40415 bytes .../apple-touch-startup-image-1290x2796.png | Bin 92755 -> 38496 bytes .../apple-touch-startup-image-1334x750.png | Bin 33179 -> 17849 bytes .../apple-touch-startup-image-1488x2266.png | Bin 100044 -> 46150 bytes .../apple-touch-startup-image-1536x2048.png | Bin 97682 -> 48063 bytes .../apple-touch-startup-image-1620x2160.png | Bin 107404 -> 50761 bytes .../apple-touch-startup-image-1640x2160.png | Bin 108728 -> 51512 bytes .../apple-touch-startup-image-1668x2224.png | Bin 111578 -> 52584 bytes .../apple-touch-startup-image-1668x2388.png | Bin 115863 -> 53231 bytes .../apple-touch-startup-image-1792x828.png | Bin 42683 -> 19743 bytes .../apple-touch-startup-image-2048x1536.png | Bin 97518 -> 47501 bytes .../apple-touch-startup-image-2048x2732.png | Bin 159255 -> 68870 bytes .../apple-touch-startup-image-2160x1620.png | Bin 105728 -> 50168 bytes .../apple-touch-startup-image-2160x1640.png | Bin 107651 -> 50719 bytes .../apple-touch-startup-image-2208x1242.png | Bin 79499 -> 36319 bytes .../apple-touch-startup-image-2224x1668.png | Bin 111964 -> 52053 bytes .../apple-touch-startup-image-2266x1488.png | Bin 99653 -> 45351 bytes .../apple-touch-startup-image-2388x1668.png | Bin 114861 -> 52019 bytes .../apple-touch-startup-image-2436x1125.png | Bin 73386 -> 31694 bytes .../apple-touch-startup-image-2532x1170.png | Bin 78507 -> 32612 bytes .../apple-touch-startup-image-2556x1179.png | Bin 79298 -> 33061 bytes .../apple-touch-startup-image-2688x1242.png | Bin 86236 -> 35333 bytes .../apple-touch-startup-image-2732x2048.png | Bin 158066 -> 67100 bytes .../apple-touch-startup-image-2778x1284.png | Bin 91249 -> 37048 bytes .../apple-touch-startup-image-2796x1290.png | Bin 93178 -> 37351 bytes .../apple-touch-startup-image-640x1136.png | Bin 25904 -> 15332 bytes .../apple-touch-startup-image-750x1334.png | Bin 34349 -> 19095 bytes .../apple-touch-startup-image-828x1792.png | Bin 44548 -> 22015 bytes .../static/favicon/favicon-48x48.png | Bin 846 -> 846 bytes .../static/favicon/mstile-144x144.png | Bin 2252 -> 2246 bytes .../static/favicon/mstile-150x150.png | Bin 2119 -> 2104 bytes .../static/favicon/mstile-310x150.png | Bin 2134 -> 2127 bytes .../static/favicon/mstile-310x310.png | Bin 5612 -> 5496 bytes .../static/favicon/mstile-70x70.png | Bin 1112 -> 1113 bytes .../static/fonts/GeekdocIcons.woff | Bin 6140 -> 6140 bytes .../static/fonts/GeekdocIcons.woff2 | Bin 5084 -> 5084 bytes .../static/js/148-5c9964c4.chunk.min.js | 1 - .../static/js/165-ccff0039.chunk.min.js | 2 + ... => 165-ccff0039.chunk.min.js.LICENSE.txt} | 0 .../static/js/174-c58623b5.chunk.min.js | 1 - .../static/js/205-9a3f06a7.chunk.min.js | 1 - .../static/js/207-76b424b6.chunk.min.js | 1 - .../static/js/221-9d1089ca.chunk.min.js | 1 - .../static/js/223-a5ce106a.chunk.min.js | 1 + .../static/js/257-acdc3108.chunk.min.js | 1 - .../static/js/258-c1edc5c0.chunk.min.js | 1 + .../static/js/265-4e4c541c.chunk.min.js | 1 + .../static/js/278-82f9d9ad.chunk.min.js | 1 - .../static/js/3-bc686a20.chunk.min.js | 1 + .../static/js/300-19c1a4f9.chunk.min.js | 1 - .../static/js/317-0413318d.chunk.min.js | 1 + .../static/js/331-bd053b7e.chunk.min.js | 1 - .../static/js/334-f60074e8.chunk.min.js | 1 + .../static/js/339-ed783b3e.chunk.min.js | 1 - .../static/js/344-91b41751.chunk.min.js | 1 + .../static/js/356-34014d94.chunk.min.js | 1 - .../static/js/376-769d6d21.chunk.min.js | 1 - .../static/js/382-2d69f8f9.chunk.min.js | 1 + .../static/js/387-3546ecdc.chunk.min.js | 1 + .../static/js/4-934f5a40.chunk.min.js | 1 + .../static/js/42-aadd500f.chunk.min.js | 1 - .../static/js/444-671f5f2b.chunk.min.js | 1 - .../static/js/452-e65d6d68.chunk.min.js | 1 + .../static/js/501-f9886899.chunk.min.js | 1 + .../static/js/51-a5b3e792.chunk.min.js | 1 - .../static/js/533-e75dcf61.chunk.min.js | 1 - .../static/js/557-be45235e.chunk.min.js | 1 - .../static/js/564-301f7508.chunk.min.js | 1 + .../static/js/573-ba5e956a.chunk.min.js | 1 + .../static/js/578-d3d4963d.chunk.min.js | 1 - .../static/js/589-841514a2.chunk.min.js | 1 - .../static/js/590-754a9e66.chunk.min.js | 1 + .../static/js/604-d2d497f5.chunk.min.js | 1 + .../static/js/650-4e563e3b.chunk.min.js | 1 - .../static/js/654-9045dc15.chunk.min.js | 1 - .../static/js/657-d323ea06.chunk.min.js | 1 - .../static/js/663-31678b4b.chunk.min.js | 1 + .../static/js/670-2fb0c100.chunk.min.js | 1 + ...chunk.min.js => 674-17bd4f73.chunk.min.js} | 2 +- .../static/js/70-826e03f2.chunk.min.js | 1 + .../static/js/720-970f726e.chunk.min.js | 1 + .../static/js/723-47eb515a.chunk.min.js | 1 + .../static/js/731-7b5d66f3.chunk.min.js | 1 + .../static/js/731-a0fa9714.chunk.min.js | 1 - .../static/js/756-713e8876.chunk.min.js | 1 - .../static/js/760-f618e0e3.chunk.min.js | 1 - .../static/js/799-c3a32fe5.chunk.min.js | 1 - .../static/js/805-68e3b42f.chunk.min.js | 1 + .../static/js/81-3a33b512.chunk.min.js | 1 + .../static/js/826-2ac63153.chunk.min.js | 1 + .../static/js/862-ff5166f8.chunk.min.js | 1 + .../static/js/875-2aebef6b.chunk.min.js | 1 - .../static/js/890-c9907c95.chunk.min.js | 1 + .../static/js/907-a936ddbe.chunk.min.js | 1 + .../static/js/911-59f72ec0.chunk.min.js | 1 + .../static/js/918-70ec2bcb.chunk.min.js | 1 - .../static/js/932-3e97de09.chunk.min.js | 1 + .../static/js/959-64fbcd17.chunk.min.js | 1 - .../static/js/991-6e5a46d1.chunk.min.js | 2 - .../static/js/998-31a2dbbe.chunk.min.js | 1 + .../static/js/mermaid-3292ee5a.bundle.min.js | 2 + ...ermaid-3292ee5a.bundle.min.js.LICENSE.txt} | 6 + .../static/js/mermaid-73641aad.bundle.min.js | 2 - .../hugo-geekdoc/static/main-287d5b5c.min.css | 1 - .../hugo-geekdoc/static/main-4434ec39.min.css | 1 + 134 files changed, 248 insertions(+), 232 deletions(-) delete mode 100644 themes/hugo-geekdoc/static/js/148-5c9964c4.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/165-ccff0039.chunk.min.js rename themes/hugo-geekdoc/static/js/{991-6e5a46d1.chunk.min.js.LICENSE.txt => 165-ccff0039.chunk.min.js.LICENSE.txt} (100%) delete mode 100644 themes/hugo-geekdoc/static/js/174-c58623b5.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/205-9a3f06a7.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/207-76b424b6.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/221-9d1089ca.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/223-a5ce106a.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/257-acdc3108.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/258-c1edc5c0.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/265-4e4c541c.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/278-82f9d9ad.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/3-bc686a20.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/300-19c1a4f9.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/317-0413318d.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/331-bd053b7e.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/334-f60074e8.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/339-ed783b3e.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/344-91b41751.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/356-34014d94.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/376-769d6d21.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/382-2d69f8f9.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/387-3546ecdc.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/4-934f5a40.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/42-aadd500f.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/444-671f5f2b.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/452-e65d6d68.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/501-f9886899.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/51-a5b3e792.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/533-e75dcf61.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/557-be45235e.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/564-301f7508.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/573-ba5e956a.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/578-d3d4963d.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/589-841514a2.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/590-754a9e66.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/604-d2d497f5.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/650-4e563e3b.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/654-9045dc15.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/657-d323ea06.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/663-31678b4b.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/670-2fb0c100.chunk.min.js rename themes/hugo-geekdoc/static/js/{593-bfe7ed66.chunk.min.js => 674-17bd4f73.chunk.min.js} (99%) create mode 100644 themes/hugo-geekdoc/static/js/70-826e03f2.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/720-970f726e.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/723-47eb515a.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/731-7b5d66f3.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/731-a0fa9714.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/756-713e8876.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/760-f618e0e3.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/799-c3a32fe5.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/805-68e3b42f.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/81-3a33b512.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/826-2ac63153.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/862-ff5166f8.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/875-2aebef6b.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/890-c9907c95.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/907-a936ddbe.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/911-59f72ec0.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/918-70ec2bcb.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/932-3e97de09.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/959-64fbcd17.chunk.min.js delete mode 100644 themes/hugo-geekdoc/static/js/991-6e5a46d1.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/998-31a2dbbe.chunk.min.js create mode 100644 themes/hugo-geekdoc/static/js/mermaid-3292ee5a.bundle.min.js rename themes/hugo-geekdoc/static/js/{mermaid-73641aad.bundle.min.js.LICENSE.txt => mermaid-3292ee5a.bundle.min.js.LICENSE.txt} (58%) delete mode 100644 themes/hugo-geekdoc/static/js/mermaid-73641aad.bundle.min.js delete mode 100644 themes/hugo-geekdoc/static/main-287d5b5c.min.css create mode 100644 themes/hugo-geekdoc/static/main-4434ec39.min.css diff --git a/themes/hugo-geekdoc/VERSION b/themes/hugo-geekdoc/VERSION index 0ec25f750..795460fce 100644 --- a/themes/hugo-geekdoc/VERSION +++ b/themes/hugo-geekdoc/VERSION @@ -1 +1 @@ -v1.0.0 +v1.1.0 diff --git a/themes/hugo-geekdoc/data/assets.json b/themes/hugo-geekdoc/data/assets.json index 7b1a959fc..4999ae57f 100644 --- a/themes/hugo-geekdoc/data/assets.json +++ b/themes/hugo-geekdoc/data/assets.json @@ -8,8 +8,8 @@ "integrity": "sha512-bwxOkIbX+Q5GC6o0wPHaoxMope9EXjyHsSB6S+DorQTPIcYMV1TYow9GvYUsSBqQtNoZGjGH7xqvu0Pv5R5viQ==" }, "mermaid.js": { - "src": "js/mermaid-73641aad.bundle.min.js", - "integrity": "sha512-4DUFiMA54/YucDDh3+P6OlarRlezKME9TzFu5qxOUSoy8kIW1ToGBxZM8fUxKHl2B/5xKCPDfAmE8eUW+w8qEg==" + "src": "js/mermaid-3292ee5a.bundle.min.js", + "integrity": "sha512-nPoabkrwg+nX3uFEf732rFIth8e7YfDSwYBh+DACCqdUUvLaYgtXyvOpuutmuP2k1TG+Ctv9i+Z/htfD0g30wQ==" }, "katex.js": { "src": "js/katex-81adfa46.bundle.min.js", @@ -19,113 +19,121 @@ "src": "js/search-d0afef64.bundle.min.js", "integrity": "sha512-QXG9TV2XCEH9ad4nmFIUBdyhcJP3kSWQgt9Dyi7Q93tzQl8NUxPjeywxYSpRujtyrWuZAwiLy8FdRbDHA/UIhw==" }, - "js/918-70ec2bcb.chunk.min.js": { - "src": "js/918-70ec2bcb.chunk.min.js", - "integrity": "sha512-TGDhvoE1WqEpzGa1za3VJ6LpOKZZ8LmxdAq+jioB94pz81WhDKLRAqwm8uJihDmrJ/2r0JmiWPzNobMj34AYxA==" + "js/826-2ac63153.chunk.min.js": { + "src": "js/826-2ac63153.chunk.min.js", + "integrity": "sha512-nhQQaQ3XaOuGg7VNH5ajPX+rFR7cEQUBMWwSdseczWRqfWs5jP0klAE9ANyHHRKgwcD5Fr8erbzztZcvCqrcsQ==" }, - "js/376-769d6d21.chunk.min.js": { - "src": "js/376-769d6d21.chunk.min.js", - "integrity": "sha512-IXwTG3jDORFNmreXmrFFbB3feeuB6ITlWq+AHpmcXsoT7mP12yzHSSDXURYD/Hp4q6g5h1iOTggUrDhx9dK7oQ==" + "js/663-31678b4b.chunk.min.js": { + "src": "js/663-31678b4b.chunk.min.js", + "integrity": "sha512-CJpdyIoHoUAxbqutsgLgmQou8fzqhkmbgjSWp2h1OuTSswTpEa53ZVfYLY1fOZOykfSf7xxX3FIeOZYdnvt5hw==" }, - "js/875-2aebef6b.chunk.min.js": { - "src": "js/875-2aebef6b.chunk.min.js", - "integrity": "sha512-xmMlZmsdX1gTADtr1q5b1AfEt0oQ5RjMaWnDBNv4+lvFysK3pDpVc8d1cZGE8T+48cVt1rnQGoOmfsU43NWMZg==" + "js/911-59f72ec0.chunk.min.js": { + "src": "js/911-59f72ec0.chunk.min.js", + "integrity": "sha512-dUO8yfgcStImwWHVQ4QC3bvddy9rmKwfio+ion/2OBNJMnrTe9+MNF4ytBSRycKh3gPDnIZ73QPz2S6m9UMoEg==" }, - "js/356-34014d94.chunk.min.js": { - "src": "js/356-34014d94.chunk.min.js", - "integrity": "sha512-H5y98ZVoXEAg2KP2p/Fd7ne1NOCvEc1amWgI9/tIlFDG4N4B1x/xKV3k3yy6nVn9T7o1lLMT/mshcJoJtrtXfw==" + "js/564-301f7508.chunk.min.js": { + "src": "js/564-301f7508.chunk.min.js", + "integrity": "sha512-niJuOcvXtUYwtE2ZekOD+erNGcNUvrCOq1MIdxGxoYZrrfcFz0GdkOG1h+0w0yi4nDBW24H1XfXeC9pz92ttkw==" }, - "js/300-19c1a4f9.chunk.min.js": { - "src": "js/300-19c1a4f9.chunk.min.js", - "integrity": "sha512-qbCFQ4UDbzuP5s5wSj/OuZYi//tRd3J6BgOzWEHjoF3ij4a4K5csytGqF/9fgwAeV/4q/6zkC8wLtac61/TBPg==" + "js/81-3a33b512.chunk.min.js": { + "src": "js/81-3a33b512.chunk.min.js", + "integrity": "sha512-OE+7EaNX9jzliiJ0WxyGyQVI1b3FBir/CcDK1mA+mB9X2UnmIZiFXl4fqWh425m4pm509ybjn56FCqfq6BBbnw==" }, - "js/331-bd053b7e.chunk.min.js": { - "src": "js/331-bd053b7e.chunk.min.js", - "integrity": "sha512-n/vbk+VsHF5r7fGnG46IFOtC3DkeXZlGL1BQRAl+XteL6iN9LmMejhdulcKErQeTc7MpTkER73BNtGv77uX2YA==" + "js/223-a5ce106a.chunk.min.js": { + "src": "js/223-a5ce106a.chunk.min.js", + "integrity": "sha512-snerbVUJiiyg5LgPt5LEW4rdXfF4msMQpTIAMd5ck+T+RMJqCK0xmWtI8FDvh5CrSg3cCoXL1gxRtxq0ux1qOw==" }, - "js/444-671f5f2b.chunk.min.js": { - "src": "js/444-671f5f2b.chunk.min.js", - "integrity": "sha512-DoS8D9K0ewaXvFevQWGv3nfp7OVg0tWuGPf+sgTvyXDTTiP0JXcKFNlg/msU+hooujUFS5L8gTcbrErNACCo/g==" + "js/674-17bd4f73.chunk.min.js": { + "src": "js/674-17bd4f73.chunk.min.js", + "integrity": "sha512-6j6RF20vhXVfAjmZNJVfvWS+aiG+WnucH4Mo38IR80e/z0yl/Dfdzv1AGM1o+XjIYv22kC6toShhG3HqKFy+FQ==" }, - "js/593-bfe7ed66.chunk.min.js": { - "src": "js/593-bfe7ed66.chunk.min.js", - "integrity": "sha512-R0yjMSvgSAPtK6wn5RvEKJ3jo2R043Gqlun6NpJp6jy8p8RKIq6FrpkFtMmF6IIRs1hl2ezykVrrZCP2RSPSlA==" + "js/344-91b41751.chunk.min.js": { + "src": "js/344-91b41751.chunk.min.js", + "integrity": "sha512-SMKFT2rVPNAdj7cAG9SP2jSof6CSLVJcn2+rIe3d1GZlJmkstfW13pJIzjENt6FaNGk4e2LRrLw0lDepS+PrCA==" }, - "js/174-c58623b5.chunk.min.js": { - "src": "js/174-c58623b5.chunk.min.js", - "integrity": "sha512-XinN0ieq574gP9GFMliYuLVnvCwK9scVJGdR276rEBsm7u5L5tR9XQgFa0rdOs5jlWsnskE2OvpmrIKVhkcfxg==" + "js/573-ba5e956a.chunk.min.js": { + "src": "js/573-ba5e956a.chunk.min.js", + "integrity": "sha512-mzl0rfnKpsqzuUA2my2vBW4Uv5BJM9OEnMFYylg4GC5OtAe/8Yg21lQLzZGb6tpO9d90L5eKhavhYNYLjvhSnQ==" }, - "js/533-e75dcf61.chunk.min.js": { - "src": "js/533-e75dcf61.chunk.min.js", - "integrity": "sha512-ZyX4GEbtDZ5fweLEqehKLS9eM2yFMFT/5bafzrM2goi+ygC7Q7ek2CwZqZFcB9SdMtgEnT1eFl2h6iqNNNf7+g==" + "js/382-2d69f8f9.chunk.min.js": { + "src": "js/382-2d69f8f9.chunk.min.js", + "integrity": "sha512-m9ot8NxGRXVIY4tLzR7FcjTSB05kOwXS0uPMeDXfk0VfcivlIMBnRC+Y+PEPhg0oDMAxjm1QOQOyrxZtmbG/8Q==" }, - "js/589-841514a2.chunk.min.js": { - "src": "js/589-841514a2.chunk.min.js", - "integrity": "sha512-yDiLGxhl/lZDxh4Z3mmrjZ6ry+JxQqy/ZeGSzYpYNM+TrDqjB0Myn/iEv58+M6LfvKhHCGsudiad2TijWW3u+A==" + "js/998-31a2dbbe.chunk.min.js": { + "src": "js/998-31a2dbbe.chunk.min.js", + "integrity": "sha512-DE82+VXR4rdeNg0ZF/uxITgw1h48qk4dwc7gyqj0ExvzoyjfU72kPwc+I+KPq0GTLgqVfQLTBR98rDAoXquJ4g==" }, - "js/650-4e563e3b.chunk.min.js": { - "src": "js/650-4e563e3b.chunk.min.js", - "integrity": "sha512-xun5xMf0uKy9KKHUQ/32T+wLQ/BrnuJwI6hrAdlUwCHK8Tr9aN295ujsI45DqG4I0PyR+revp46a4sxViSXXQw==" + "js/265-4e4c541c.chunk.min.js": { + "src": "js/265-4e4c541c.chunk.min.js", + "integrity": "sha512-ZUYu22EG4MgQBRlKCaOLuWJHbR/9nx01h4ApQt6UY9SKirMU/bLv38XyCh0cQU2SNamxZz+9WkTBivisAegaoA==" }, - "js/42-aadd500f.chunk.min.js": { - "src": "js/42-aadd500f.chunk.min.js", - "integrity": "sha512-ZBkGgoAqH1qK6Ha3eTtFRqFwb4Zgk1BPUCJr/hGINzKpb935mIWrRbrszuFTLwz1aPizh166u/zRs6DKB0nXwg==" + "js/590-754a9e66.chunk.min.js": { + "src": "js/590-754a9e66.chunk.min.js", + "integrity": "sha512-8Zc4jXRB25q0vBMls6tApZCcGsCH3FHb44Uhi3GzA4ajrpWi/4CUwDKJghBwSxsyMQSAT99WsfAbB3W/+Z1Hog==" }, - "js/657-d323ea06.chunk.min.js": { - "src": "js/657-d323ea06.chunk.min.js", - "integrity": "sha512-IqrsWSLLMOyOrC2uHCFbHb63L+HEft1yCNRcB/3jBDUCa4Wg9lA/7bZZYrf/3rf5TNcxMbqMPmNr0fF2agBDeQ==" + "js/932-3e97de09.chunk.min.js": { + "src": "js/932-3e97de09.chunk.min.js", + "integrity": "sha512-9iSKm2kk5N5N9ud0rISALq4lPjWDnUCaHUNRg796pJmEsFiN/UVHp+YITb5wu0xJHfbNbcUaivNrRAu5mGQm2g==" }, - "js/205-9a3f06a7.chunk.min.js": { - "src": "js/205-9a3f06a7.chunk.min.js", - "integrity": "sha512-1ybvYOflPydvXSjf4qMYOk+So0hqcwWAKGp+p7KkYoI5ToNFAPNtQD/PGEVJ8zatbQmyT6/zFRVMmvrUToH//g==" + "js/862-ff5166f8.chunk.min.js": { + "src": "js/862-ff5166f8.chunk.min.js", + "integrity": "sha512-bZUXeBkedttZ40rUgaUQzHxm8LxAw0j9WYtcACbyDhpVvxSElXifoF0rOnl88Krqnr3sFTpYwWvimqJNIf93cQ==" }, - "js/257-acdc3108.chunk.min.js": { - "src": "js/257-acdc3108.chunk.min.js", - "integrity": "sha512-geLlwcbpoKcC42Uq3LbckrMIaPhVKh11cuJrMPr26p0AnsfronKpdDM7nXR75OUrU5eOB1ejFW1BT5qN1RT5cw==" + "js/334-f60074e8.chunk.min.js": { + "src": "js/334-f60074e8.chunk.min.js", + "integrity": "sha512-w44Ocym3ZQ1+1w0v+aw5XWEEXH+vRsGoG+lbEYqpgpt8n97drS1v7ALq65JMtfoeTaNdSq6s2uKoa6J68f6Ecw==" }, - "js/799-c3a32fe5.chunk.min.js": { - "src": "js/799-c3a32fe5.chunk.min.js", - "integrity": "sha512-PjkFF7zol1s0XBZJHf6Ny1Q9yD743R3vjtXkrA1D5fqWWjOAz9vChUqrNwFkHn1ZS+7xc2j+1y3unRRfdH9LLw==" + "js/4-934f5a40.chunk.min.js": { + "src": "js/4-934f5a40.chunk.min.js", + "integrity": "sha512-YS4+dBcjQNzJ5PJq+X0b8Zy+w5o7QU/n4MdIjqM0dHWkCwVhWZUdgNZciRrIdVZ6jfuNi+cZSbq+FcplFVvPIw==" }, - "js/991-6e5a46d1.chunk.min.js": { - "src": "js/991-6e5a46d1.chunk.min.js", - "integrity": "sha512-UsBLAUYS2NarRSibrKEo1MntCcwNCdAiquh7W2zJlMQWYijzh/Gek1VKfJnbhACDI/MHPOo5jS3WoWgz8kDC6g==" + "js/258-c1edc5c0.chunk.min.js": { + "src": "js/258-c1edc5c0.chunk.min.js", + "integrity": "sha512-Bt1oQsbXvq8UMlHjMWKvpkm9J06La/x7dSSsnY+StgXcjvC5afY6Reb1cHNDvq4RhwS1ricju4ZPzwJuoR5dag==" }, - "js/339-ed783b3e.chunk.min.js": { - "src": "js/339-ed783b3e.chunk.min.js", - "integrity": "sha512-rZNJToDwb9QetD6vUCBkssWfyDL7VnJKreYJBzRJ0kwYhRZ6j20spnN93HscX0YrVagx3JwrAmnepQ9FQxhKnw==" + "js/317-0413318d.chunk.min.js": { + "src": "js/317-0413318d.chunk.min.js", + "integrity": "sha512-fnTLyit39LnWgFZmugajmzNYCI6j3fhciDk6Pymu+ZV7nOh8/6wNIA2Ir/9bqW20esEjaoIzDIS7H8NaovxtKA==" }, - "js/756-713e8876.chunk.min.js": { - "src": "js/756-713e8876.chunk.min.js", - "integrity": "sha512-wb2REpD3Rg+3iyFl74cF+7Kfu1JehE13rRJzyM9/9vcjOaURFDDrZu99jZcIFcHVZLPghqJq0hifgJvFpSyzLw==" + "js/907-a936ddbe.chunk.min.js": { + "src": "js/907-a936ddbe.chunk.min.js", + "integrity": "sha512-OCL2vqRhRApbjGH+kiqsDJkkM31r7ifRDfXdVZFZl4vYGc6I+xaSOuR1mV57eRYhT2B3rahRvw0hqBT//kXmyw==" }, - "js/654-9045dc15.chunk.min.js": { - "src": "js/654-9045dc15.chunk.min.js", - "integrity": "sha512-xJQRyAM+7YoZDymwnDO1J43nJRYD9bNAgurKki7BMEH0fNwP844vJ1dQd272F9XreWC4T2oq5y5Osi2p7VHxGg==" + "js/70-826e03f2.chunk.min.js": { + "src": "js/70-826e03f2.chunk.min.js", + "integrity": "sha512-jh+v8KpvKhE+SBgoGCKp56gVspoqFgNpVWakuRIoK2v6cosBwjYFwzYh1JXi89ntkKVngVWNmH0CWi+Iad7s2Q==" }, - "js/51-a5b3e792.chunk.min.js": { - "src": "js/51-a5b3e792.chunk.min.js", - "integrity": "sha512-mTE98TuisWdAm6643QYEedLR7FcsnLNN7EfWllIGYTfx3zc1Mrntbn2J1BCuNEXL4kGiJiu1h4Z0FBQddv8I1A==" + "js/604-d2d497f5.chunk.min.js": { + "src": "js/604-d2d497f5.chunk.min.js", + "integrity": "sha512-76Dzpe8EHYz8lf45kawhC6JkYknTBIN0bK29i4yt21Wrf499z6Ql31hpdlUm3EsiW2rYFNpoqLI47oq6bU0THg==" }, "js/130-395cb664.chunk.min.js": { "src": "js/130-395cb664.chunk.min.js", "integrity": "sha512-egScF+3+l5OM+Ec+eNRX4UiWoZ9icpTxjOWGt8oLPS/Efp1cjGYBq/rpgb6NQAkcAS6Jm6350BuSiGVtpY00dg==" }, - "js/278-82f9d9ad.chunk.min.js": { - "src": "js/278-82f9d9ad.chunk.min.js", - "integrity": "sha512-KAJ+62pi4H8Onxhvnn5GpJIZhTJp1oU7X1p9gOAMnNSejsyGlxRaXrqNaIe5PGZbpzbi/WykEF00/pO3O0jibA==" + "js/501-f9886899.chunk.min.js": { + "src": "js/501-f9886899.chunk.min.js", + "integrity": "sha512-fdXTCRVOX0ef3jNoTYmJsoPmnt7m1B0dKxV/Q+EjmALlJRoM0MUSaZRa9DbuW8DCaVdW2bwKB2xburkykELXYA==" }, - "js/959-64fbcd17.chunk.min.js": { - "src": "js/959-64fbcd17.chunk.min.js", - "integrity": "sha512-yM/3+K6rFZ6HsJ+N6oj0LtSsXygzIxnuzO8JF86qvZCJXr1TNmiLDinNW2RRASQYSokzK6fNehLzWg+iO2XoVg==" + "js/890-c9907c95.chunk.min.js": { + "src": "js/890-c9907c95.chunk.min.js", + "integrity": "sha512-gD2gqeomVVlkJ6wgB1VcUPizRgyG4JdQJ0t98yt9pVb07uzkhAAhKSddzxP/OF3tUA2bYZHrUYcgEkDAX5JOjQ==" }, - "js/221-9d1089ca.chunk.min.js": { - "src": "js/221-9d1089ca.chunk.min.js", - "integrity": "sha512-JN5Ev5S6oeLL+Ct1EQ0nfDGBqXgMQiKC4+8t0dV6P3K4A8yDQCXrgWPnue1pf8/at8qucgyLI4Mf+x6DpaJSFA==" + "js/452-e65d6d68.chunk.min.js": { + "src": "js/452-e65d6d68.chunk.min.js", + "integrity": "sha512-oOJ9nLMs4Ih5X9kyj5828RYSUg+7Wzcz4QEhURKPZWO1F1dSFNfmih2LJcFvjSdNp8wDepvAUQcQLDz3F7MX9g==" }, - "js/760-f618e0e3.chunk.min.js": { - "src": "js/760-f618e0e3.chunk.min.js", - "integrity": "sha512-DzfeeTA74munNSoXhR6fIMFh8vyfZewx7yUX3OTO3mal7ElX2/xQLe7sfn+e5hB7mjOq7yr1rEIBYbC2PKZYrQ==" + "js/723-47eb515a.chunk.min.js": { + "src": "js/723-47eb515a.chunk.min.js", + "integrity": "sha512-W5+LIxRrc4yIVvFTgX3mx/Wd1K/HPhtr1j6IanCDprpeNAl2if5eMlCDZDhUJYZSm7ta4s4lb+IkdGaSf7EEKg==" + }, + "js/720-970f726e.chunk.min.js": { + "src": "js/720-970f726e.chunk.min.js", + "integrity": "sha512-KZoim0oHUzo3JWb5J9AV6RNVm43jnQJyRBbV8gYTS6te6+h4VYg62lbjrapFwBQmHOMkcyLCp1dH2PqHvL36Qg==" + }, + "js/387-3546ecdc.chunk.min.js": { + "src": "js/387-3546ecdc.chunk.min.js", + "integrity": "sha512-XA2Opiddehmv/Po1naDCYg2seMBBqYOzJbDT1WTvT8gLNVuQaI61Fw1hbCxIIOz2t/5LtnqErZc+tond4WuO5Q==" }, "js/913-4409c8d7.chunk.min.js": { "src": "js/913-4409c8d7.chunk.min.js", @@ -135,245 +143,245 @@ "src": "js/567-38dd778c.chunk.min.js", "integrity": "sha512-qTLTZWwjSeEh+B5dvHK4tasCqW36AUD0OIK4ihl1I0dOXcyUDrH3MczQwA/hP9xY1f7TXfIjWtB1QjqRy/SjiQ==" }, - "js/578-d3d4963d.chunk.min.js": { - "src": "js/578-d3d4963d.chunk.min.js", - "integrity": "sha512-v7brpyeCc5QaZGF5IoB7qAvuphJfUjqchKlzSjBhtoQv7aHIGw95W/kHDe5k/Yxx6dhy+XfHp1MV0IIMq2pt3w==" + "js/731-7b5d66f3.chunk.min.js": { + "src": "js/731-7b5d66f3.chunk.min.js", + "integrity": "sha512-jk2QFiAKNpc3Zjy14hvR4qCsAraoW82zKUMU1kZvGqtTbe9u3DyfiAz8aPj3//hioR93N4uBtcSbMOQaj2UqzA==" }, - "js/731-a0fa9714.chunk.min.js": { - "src": "js/731-a0fa9714.chunk.min.js", - "integrity": "sha512-7rnB8KgcZjkCuux8x+GubkB5dU6z6aFUd9+gqxcKPbyHFUeh54ghrxIvdzNAPk7V8AcURnUylTt0KpI0l4h5tA==" + "js/165-ccff0039.chunk.min.js": { + "src": "js/165-ccff0039.chunk.min.js", + "integrity": "sha512-zYPY0S3QHGSRdNCoIxreRyOlQv6lOJ8XXs8+e+Yii9GKpES7s2ZqCw9AxMqOeBkcyvkcmtsoo1ErhjtN1WyuLw==" }, - "js/148-5c9964c4.chunk.min.js": { - "src": "js/148-5c9964c4.chunk.min.js", - "integrity": "sha512-uLYBVhiNCniOhoET+Rp1BDJeDANZeeFpLcEqj6FLLbm+KMUIY7zpARpcXkPQD0rQAzWjrPBWs6tAjSyAYvjg9A==" + "js/670-2fb0c100.chunk.min.js": { + "src": "js/670-2fb0c100.chunk.min.js", + "integrity": "sha512-fDkG5YKslYJ+sg2MYVwDHzkbkQ4EdU4kRQBJEeIk8q5iBukultPyCCqujwmRLxm3l2CyYPY6+C48dNLSLKwoYw==" }, - "js/207-76b424b6.chunk.min.js": { - "src": "js/207-76b424b6.chunk.min.js", - "integrity": "sha512-OA+LgQNgXnyCp2TDxLPR5mcgV4hcDu/iyOt/nM+X+ydjtJwMW8iVMZo84crG2hZe25opFQ0cNZrXgtuFwOzq9g==" + "js/805-68e3b42f.chunk.min.js": { + "src": "js/805-68e3b42f.chunk.min.js", + "integrity": "sha512-VAK7eQPqRw3EDz7adpECJjriCv10iNm68D2wayKasUUIeoP6B3HiZUFKm4CBJs9SML3ydbVEtxiRGsLe2DOzNA==" }, - "js/557-be45235e.chunk.min.js": { - "src": "js/557-be45235e.chunk.min.js", - "integrity": "sha512-95vo8dvRJmLLSZMXElW0fEoaWOaARNX138RH+h5+NC1UTQs83NHJRcynu3LMT0kTBfNJpaO6/Ssxo2eWrIKZSg==" + "js/3-bc686a20.chunk.min.js": { + "src": "js/3-bc686a20.chunk.min.js", + "integrity": "sha512-Eyh34TaDGnAFJbhgGi9TXMNrlbPpmSiCjULVtYNXe3Urdzz132HQIkaUMT3XZJgM2vgXJbeQmPtYkW6sR1W3Tg==" }, "favicon/apple-touch-startup-image-2048x2732.png": { "src": "favicon/apple-touch-startup-image-2048x2732.png", - "integrity": "sha512-YokE0NKCcDD/prfUCXQEs4vuVJJobwjlFbUV7G0JNWNflpfIvddwFWYi/rpxXmimyxP46hv8jS+5oekNDtWMHw==" + "integrity": "sha512-pp/8QkfwltmJfJZv6lzhl9bbE+0ltO1lcpXR3432kiV2VCl1SXOiTiJYzU/lVmTO1wMrdyFwHdk0C0ZPauVmUg==" }, "favicon/apple-touch-startup-image-2732x2048.png": { "src": "favicon/apple-touch-startup-image-2732x2048.png", - "integrity": "sha512-nCB9v/9CbzLz8sWSItEAYvUMNiFxL7ue2a9kGVlQxsH7SKbI1WDnElVqz/wmS66mEUPtgCazXEDXmZ61AgEojg==" + "integrity": "sha512-DOw5FcezHTkJ2dDT8agLZlIfrNZoxc0/OTlrkmuYgpRJiIkJykxAYQed0Ysu/MBkfwe6lWDydhlpV8oomWMKgw==" + }, + "main.scss": { + "src": "main-4434ec39.min.css", + "integrity": "sha512-r/q6wo+L6sb+dLwtDEwjwVIhQNZct+bmxfFkwHhb8irzzmXXO7mrM4jL/K4zfNYNUviw3D+Qj2qWRvrwGb+FTg==" }, "favicon/apple-touch-startup-image-1668x2388.png": { "src": "favicon/apple-touch-startup-image-1668x2388.png", - "integrity": "sha512-AUEabfLce1eUE4gl5aT+bu1o5xQx1xhKeBDAqDqVzLWIm7GcCAvNzUYFc2Q+8XsRz3xyipeCchx3pcmCptR01A==" + "integrity": "sha512-Stx19Yj7N6TXbMiFMq03kLQYs1X+ft6zmpwVa/+06q8I48P+8dG64MnC8zvl0PqzYWGwcBtCa8m+/qy5JQHzmw==" }, - "favicon/apple-touch-startup-image-2388x1668.png": { - "src": "favicon/apple-touch-startup-image-2388x1668.png", - "integrity": "sha512-HElqvqhRP5wNGCkVnq9DK63ote1m9cjGU4D75USjVenObeJC3H5Q52/Htep/KShxP6lbqYmzbZaJXbJn+DR7eA==" + "favicon/apple-touch-startup-image-1668x2224.png": { + "src": "favicon/apple-touch-startup-image-1668x2224.png", + "integrity": "sha512-OJnVL7cFjpYgoqph0ZAAZ0bQMeHZHyYzeasV314vTyarpeyVDZuw0j/U2F/7ldxgFVP+Z67RNfLGfSr6SKqujw==" }, "favicon/apple-touch-startup-image-2224x1668.png": { "src": "favicon/apple-touch-startup-image-2224x1668.png", - "integrity": "sha512-oZUXN3bw5WljJTtAQ6GsjpR1+WFebJ4CRwg49fcQnv4Qnw+MZWOMgtU+dK69mwkwL629Ur0S2tL/njFUaCY9GQ==" + "integrity": "sha512-h86d25uMsQo1wqWrc0Bm7hwQPx1/WMpIcuFXq6TV4v7QLix8jaBeXjCz6d/JG9dQVqp0rJj2L2Koh9KR4iLlbQ==" }, - "favicon/apple-touch-startup-image-1668x2224.png": { - "src": "favicon/apple-touch-startup-image-1668x2224.png", - "integrity": "sha512-0BLXRqxQg3T8EaP1feuMRtEwGe4mRxN4J/V9DUH4mPfDhO+KlkOQPt5hMSkZgm/iRCN3ontRfUqQuM9o7rNlNw==" + "favicon/apple-touch-startup-image-2388x1668.png": { + "src": "favicon/apple-touch-startup-image-2388x1668.png", + "integrity": "sha512-HrLClFRnn0TKngyeMONGPw8WFltiAd/+456Z2w+/tRYlhblrxfNxddoacMhAfywJuZL2bnMrDFxgIeisKV7UZg==" }, "favicon/apple-touch-startup-image-1640x2160.png": { "src": "favicon/apple-touch-startup-image-1640x2160.png", - "integrity": "sha512-NIOwjDakge6LbQOi6yJ95+6fDt8r6G4a/DciK3UpznPon27rcYnHSLzQcjQPhaB3ipq6m4N+0+00xn7UtgqBlQ==" - }, - "favicon/apple-touch-startup-image-2160x1640.png": { - "src": "favicon/apple-touch-startup-image-2160x1640.png", - "integrity": "sha512-sIFsy+zli4JyDj5zBsotkiPpFvF9dsMhpvIgUVE+LqPIwZFYkE2GtKnP+KVNNykAFVsDkcy3QZthcm9KK5/UkQ==" + "integrity": "sha512-bkGRXPNafzTvHm7iqK90kmtvdUIg1davqSECk72QWcc8KQhB58+j6Y/Lsv4PNhuki/3CafltGYPwq5DC/uFwLg==" }, "favicon/apple-touch-startup-image-1620x2160.png": { "src": "favicon/apple-touch-startup-image-1620x2160.png", - "integrity": "sha512-RHyTtirEIbYgcbi7o4OA9ERX20kKWPkVUxkOMU4r4QEUs00mdXGFgFcoJi9ppH8zvlQJ+axSe1k0kqglEeeGxg==" + "integrity": "sha512-a52rXNm6ZAK3hBxTW9ySrYEX76I11+P20QU4eS1spuSHH9byqr82n2C2vWsB3ASOvJgF6L9X2m1gTfcezcWa2Q==" + }, + "favicon/apple-touch-startup-image-2160x1640.png": { + "src": "favicon/apple-touch-startup-image-2160x1640.png", + "integrity": "sha512-lAMwiXWTpWy3R8WXVK0Pxyfzh+nVf6TWxB1CS28nckPIvoJZ01UDW7MX15R6VJH4hC6b9yBwRFqgiWI3ey7XIg==" }, "favicon/apple-touch-startup-image-2160x1620.png": { "src": "favicon/apple-touch-startup-image-2160x1620.png", - "integrity": "sha512-8lp0hbQZ0tLs8G5UaHOnFg3B8YCeoB7Hwh+MIrSyPJN5L6bsknvHKh7OJ+CSe8y6bNMw3oaF8McuFZdwAFz8pg==" - }, - "favicon/apple-touch-startup-image-1488x2266.png": { - "src": "favicon/apple-touch-startup-image-1488x2266.png", - "integrity": "sha512-BrZPqZBUqE4P6wGmGstthjdoJS0ZHMH3+ZayiHZ98kU2uFaalUJ06ufYtqwtYGAjt1gm+jRcecWpXQS/dSuctQ==" - }, - "favicon/apple-touch-startup-image-2266x1488.png": { - "src": "favicon/apple-touch-startup-image-2266x1488.png", - "integrity": "sha512-9IY9tbEUW6SA5+SVO7ZPRrHLUhxxWfNjgzzy4zjJoRKs3dkCZjfIblJ/LryGxVn8ADdMsQ95NnoHsrdDl2DNnA==" + "integrity": "sha512-q4BwNvR4nA/lX+O3hw5SAhDnyOAsxK2QbaUt0J2rBVr9nhewmvgyvPEQTt/rI2+v5Obt8ofbB1nKKTUKpCPpTQ==" }, "favicon/apple-touch-startup-image-1536x2048.png": { "src": "favicon/apple-touch-startup-image-1536x2048.png", - "integrity": "sha512-vBTv46G4vFcoEZH1UBNDg6rsFbXq89BJaJxMUAvYJiRg/KBpufEHw1kgWTA2oNCYlNRhMT0hjxNJmmqtu2COwg==" + "integrity": "sha512-gvsMZlTvNSZUJ52q80FFfNk+oLaAw2w8EEcX3ns9QYdNJAhn51+VHnceIw49xiQpMZxu8djiEDhmGAbrnBc8Aw==" }, "favicon/apple-touch-startup-image-2048x1536.png": { "src": "favicon/apple-touch-startup-image-2048x1536.png", - "integrity": "sha512-OI4gHQ4IldAV8SyUc2ho9SbbYyp+XwDruORa1fQ//ajtHrnOhcJwbHKITDU/txXi9Mu8lNoQF4ZL0KlwbgWACQ==" + "integrity": "sha512-HddG543jHxr+S6DljYFOj+mOrh5xQfIv+Ca2aCDuY+AU15vXWvuMeRAaNB5eGaXUA5ngSrGkPSR6cZItcipmFg==" + }, + "favicon/apple-touch-startup-image-1488x2266.png": { + "src": "favicon/apple-touch-startup-image-1488x2266.png", + "integrity": "sha512-M+iU7dAuzTuuhlkFLwLOnkC/hsN6pFEuwngs+PmKEQeHnWw/nzIsfovwEjQTm5Bz7h/bbwaF8szZFHGh2lNl5A==" + }, + "favicon/apple-touch-startup-image-2266x1488.png": { + "src": "favicon/apple-touch-startup-image-2266x1488.png", + "integrity": "sha512-SOCJUsMcfWiGiQFMdQ7lhUZrjio+/jwrHidpBmMZqxQL8TESi0ODeU3F1ARleaPF+rvjcWmpFpmFN7kn9tkaAA==" }, "favicon/apple-touch-startup-image-1284x2778.png": { "src": "favicon/apple-touch-startup-image-1284x2778.png", - "integrity": "sha512-QponzIbyJK4swXUNcRvBOA2PxLVMtpler77JaGFFEekuBLDSEjgqlFQpUU8OP9D7azxV4hbCuo3mIBk+ACVU0A==" - }, - "favicon/apple-touch-startup-image-2796x1290.png": { - "src": "favicon/apple-touch-startup-image-2796x1290.png", - "integrity": "sha512-9vFVbbDidzf6kotWFjrbzjX+Hb3e9iMj3dcOoIi4sCPiWs1f7Syje/YHCEAcvexGl/lBmx2dQGeGuh240Dbk5Q==" + "integrity": "sha512-HytWl/niNY0h8Z2g+lCOn7O9/fpBS+oPU73GnBNCd7CDwHs+IpzZ0duuRlKmfdH8x80y2bsK5DHcRDQo8TJOPQ==" }, "favicon/apple-touch-startup-image-1290x2796.png": { "src": "favicon/apple-touch-startup-image-1290x2796.png", - "integrity": "sha512-lPcXLHVgYWacvHsaYIGTBEgEkihk11RA9rOu7GYdaYcwsZ589w9SVPnKz2ZrWbAnumFBJcSbtsjFbnKtUN1Y/g==" - }, - "favicon/apple-touch-startup-image-2778x1284.png": { - "src": "favicon/apple-touch-startup-image-2778x1284.png", - "integrity": "sha512-Y3JKY94vTDTwDyfkevU9SzMFCCwCxc+5E6HXGbWNrDEC2G/pBjfc0Dtj7vjUWwXYkGlvz83mv6lOwyx977qDww==" + "integrity": "sha512-uE8D0pZL30x6zd3sq8tPPcmC6Q8g2dSrnypzZGllIkfSGVoj+tSEKcYrS+/L6DPM3jMuF69TNScufJtVA+Qupg==" }, "favicon/apple-touch-startup-image-1242x2688.png": { "src": "favicon/apple-touch-startup-image-1242x2688.png", - "integrity": "sha512-idI9QV970BBuqHVUK3Iz8/VIJIxbUSdsO0lRMhhhuM946UwU6hxkmEALjIAOUVsoNocLx83IDJQ3xFzvJdmqhg==" + "integrity": "sha512-IR0rOpZn1Vs2fT7UavU7MA8D/PDGS7XmaTwkiPxLi3207GPDxZdQHIKA0vIJSodDGJT/ajON/zxDciq/6Jd00Q==" }, - "favicon/apple-touch-startup-image-2688x1242.png": { - "src": "favicon/apple-touch-startup-image-2688x1242.png", - "integrity": "sha512-pheYOnXH6xTfyN6Fu/WWt8Iri0Gi5GYgz+omDYRJDm0Hqvbzj9d5qdSWFNajsP4cq7SIWvufk4HTKM8HRlJcmQ==" + "favicon/apple-touch-startup-image-1242x2208.png": { + "src": "favicon/apple-touch-startup-image-1242x2208.png", + "integrity": "sha512-V2CpCg23Xb5d0wHJS0dDPjXs9Mk2CxMOn2cx/b9zC2RWBR9QF/F33zI+MioRQ9RPqCZwt093erdAiEiOonDS3Q==" + }, + "favicon/apple-touch-startup-image-2796x1290.png": { + "src": "favicon/apple-touch-startup-image-2796x1290.png", + "integrity": "sha512-Hn5Bsg7wYJhZhE+UmIMBS0lg+lHWjcrNjY/23Qxvk8keWq/D+LEz8UBA8+b9xaCF+HXo39l41keoix9bvg4zyg==" + }, + "favicon/apple-touch-startup-image-2778x1284.png": { + "src": "favicon/apple-touch-startup-image-2778x1284.png", + "integrity": "sha512-CF8j/XPdlQUQHNjxGO59cS2GVyskflUEPnCqKOWellvVq+RdRa7r3952bNVlUrfzdCoaeszmZS4n71qn2ZTyTA==" + }, + "favicon/apple-touch-startup-image-2208x1242.png": { + "src": "favicon/apple-touch-startup-image-2208x1242.png", + "integrity": "sha512-Ime4TqPHk2qrjA8eHM50as6Sgnlvn3pCkLlI1B/yBDvZ4CPWxDidSmWeJHeV//3dThozo95VllD1bvz/cw8gQA==" }, "favicon/apple-touch-startup-image-1179x2556.png": { "src": "favicon/apple-touch-startup-image-1179x2556.png", - "integrity": "sha512-pMG0JoxB6oSXTlvDmMqd9eSTw4AKh79yoezlt4rY84c/j0rNq5TDlA9ufFbxlaG7AmmPLuIHjpF/QkxEsvcOVQ==" + "integrity": "sha512-CGw2nqsLTTrX3YjpHGuJD18Mv8tHySni96E6Z6pTGwfAKK1l6UCqFtbRlUZQ2MlN8vudm4aFifKtPDlFyyAOzw==" }, "favicon/apple-touch-startup-image-1170x2532.png": { "src": "favicon/apple-touch-startup-image-1170x2532.png", - "integrity": "sha512-7SGtX4osQ9usUAR0Y+Tzhm1yNgbuFqakrfUdpIq1Ew+G3CaKPz7yAIhAOaVzZjx/1845xF2xIuzQDqaUv1MZOg==" + "integrity": "sha512-Bctz35gi47GseEkA5EmsAVmtS60Vhlrc0czWW4UY0cQqIGO0VfoGvSXaccCNesY8VMgVWoZayLxcwrUWbUKK9A==" }, - "favicon/apple-touch-startup-image-1242x2208.png": { - "src": "favicon/apple-touch-startup-image-1242x2208.png", - "integrity": "sha512-tt0ce2lqND4xuWki9CvqM5EXGZ7NX4v9RwYIZ9VFD1z3uxqBhWCcCNvVoSxRRWM+dYwsarkPg1K/hx0V3lkP5g==" + "favicon/apple-touch-startup-image-2688x1242.png": { + "src": "favicon/apple-touch-startup-image-2688x1242.png", + "integrity": "sha512-ZamHO4IC0SZ5XhNCI0HaeGaKiDgLhuwWZ12z9Rt0auKt9bvtVucJgI74iAmRXE9zZNE5nmZwMuhajd+dzmZamg==" }, - "favicon/apple-touch-startup-image-2208x1242.png": { - "src": "favicon/apple-touch-startup-image-2208x1242.png", - "integrity": "sha512-bvniXuoGpDamwT44txRGN9oddmRNAIhmqNxeUknES1xC6i5wyBwREP9sAwPnpEhN331l6Cn5Wb1qdGA9QaLlxw==" + "favicon/apple-touch-startup-image-1125x2436.png": { + "src": "favicon/apple-touch-startup-image-1125x2436.png", + "integrity": "sha512-FNQGGCfYgeFjeFzLFNmqcB9bcWaEX6rGk1bUS+oetvVQBU9iZ/YYp9go1A5oeifV1MMX290mlcDwG4i/mg2I0g==" + }, + "favicon/favicon.ico": { + "src": "favicon/favicon.ico", + "integrity": "sha512-oyLtFbxhoEnH/aFDXDWkC+S1LT5M7VHeH+f+FOLsy8JzsswzGR0VkLu/BFvzyVQTzexmfNjP4ZFm6QJYW1/7hw==" }, "favicon/apple-touch-startup-image-2556x1179.png": { "src": "favicon/apple-touch-startup-image-2556x1179.png", - "integrity": "sha512-ITdm5LRh+q3NInMJTTOZoAxYELGjGZ9SpVdNHNp5ybF1qTxX/nkssKXMfAJ/dfm37kyxRPWyQyXQ/KUHJLSocQ==" + "integrity": "sha512-Jtknw0tI9ryKINVqgtOWLR8dZgc6cPhrh1XrDwQHRGvfdwTcU2/AGVr1w9mj59RZNnMZZgikpdW0ebZuUe4YjA==" }, "favicon/apple-touch-startup-image-2532x1170.png": { "src": "favicon/apple-touch-startup-image-2532x1170.png", - "integrity": "sha512-4Qc/I1TX0EHaDimxw8frjq0WFaSvBd+t5pWziJ3j6EgPCjWGjpMS+p2ydudjsztvXi7zpOVWNnSLtt7XsTtFcA==" - }, - "favicon/apple-touch-startup-image-1125x2436.png": { - "src": "favicon/apple-touch-startup-image-1125x2436.png", - "integrity": "sha512-h9ZTyMSymNZHrZtOpWb5N2DJ4vircBLXwHRJogSUxWTqaaMv1v9niPpGPG+wPPkE385kGt34FvHcUJduQltZdg==" + "integrity": "sha512-vAjXBduB/PLTvOwTsCf+VvkRq5PNhxCjDMJ408ul3wFjUb7owqU/LKspOtkNuxOE2H9u2aXqJhdcR61AUdeP8Q==" }, "favicon/apple-touch-startup-image-2436x1125.png": { "src": "favicon/apple-touch-startup-image-2436x1125.png", - "integrity": "sha512-zbbCawkNNm/X+dfE9EKwShnCNlgekifcgyizmbWo+hhqzANicUVRr0mdHbiHtiYTvaT9r+5bp82CCGSXV1I92Q==" - }, - "main.scss": { - "src": "main-287d5b5c.min.css", - "integrity": "sha512-rXiYJPMIrDBBPbaJkBPGeldQ5uCErSO5812YGcIRgWmLVuvv7pZcyW+f13/pWTLtEtS+tgI5oSga88jmqsszeA==" + "integrity": "sha512-yW+pbc/y6e4ZtL/PfbA77bs++nyHDjt2LewdNSgHoFytdO/0IzCi2th64HrqjkXAnwieqnqBIHOmfQDb6ntOxw==" }, "favicon/apple-touch-icon-1024x1024.png": { "src": "favicon/apple-touch-icon-1024x1024.png", - "integrity": "sha512-x4EPwmg4HpFLbCAC4JFhaPNIwuNQCPLfjWqK9ai9I1+oLOhtZbgNbKxjBz/AxFS60IYVhyZvJCyFQMYbIC+SxQ==" + "integrity": "sha512-uNxs8UKFz57bkfl4uezhkIl4VfZIuSOV6lcaE/0VIYbx8hFZ7SJTShz9wiIzPMZsCSHKMY5P7uhr0FigLGD+3w==" + }, + "katex.css": { + "src": "katex-59efccf3.min.css", + "integrity": "sha512-LoA9jYWADilujFvJrka88siGszaREbfUaqz+lfLV+JJvNCxFCliO5Xxao82BEGTAgFPaWsDRe08PU9CrASv0HA==" }, "favicon/apple-touch-startup-image-828x1792.png": { "src": "favicon/apple-touch-startup-image-828x1792.png", - "integrity": "sha512-4cxF+n/FQtSCnoGbBMnp1aeTR3qnW6/DtzowLnlDRpCnSxRjSXOg7AizEx1dw0ICoqN7rQE3/+elGjgog7uxsg==" + "integrity": "sha512-lOKELuDZcqdtCvvU+wU4XbRSGVx4j5fXOViEIy8vJ/H/vad9Nb1HjXA517Mo2X3KE+xWpKBa7iaRKONe2NR77A==" }, "favicon/apple-touch-startup-image-1792x828.png": { "src": "favicon/apple-touch-startup-image-1792x828.png", - "integrity": "sha512-1oo0qYsLrdER2jKA50krWOfppk6+zUwYXkoJ5pcRESF2wZFHT1DbuLF7j9ULJNgWIc4OiL1FF6PsGbX4UVO0jg==" + "integrity": "sha512-Q0rPW22UcOSrAk1Cc+VJElqo1FUOxN6M5yk6rr19l15aDfwMmlWVLVCEEuYr7YN9Yd7P6oFIP5krWpBwP8XevA==" }, "favicon/apple-touch-startup-image-750x1334.png": { "src": "favicon/apple-touch-startup-image-750x1334.png", - "integrity": "sha512-XJxhIzy72gE1Cpgf2LYQRRBwm6mwmuXZ0dCaJMebL+dhBCotd9kANbQhVOZXwhajwpxVZrwDnoQFBW551wmXyw==" - }, - "favicon/favicon.ico": { - "src": "favicon/favicon.ico", - "integrity": "sha512-oyLtFbxhoEnH/aFDXDWkC+S1LT5M7VHeH+f+FOLsy8JzsswzGR0VkLu/BFvzyVQTzexmfNjP4ZFm6QJYW1/7hw==" + "integrity": "sha512-zFiwOUbcWZ5ZT6WIoo5JH5sBgNRKgaw+38nZ4INvrJksTXVYiTSNK+HI+g/fpjATMD3oIy3zRD1QD5MF0xcI+A==" }, "favicon/apple-touch-startup-image-1334x750.png": { "src": "favicon/apple-touch-startup-image-1334x750.png", - "integrity": "sha512-z9MTHnbgUAFNt+UEklBBTTdRhvOEDgOr0/ZRFxKibO3qN3l9oRLtWFkgbl/3eNhUpfq57KYsc+IU4/w1ok2jQw==" + "integrity": "sha512-wS3VX86WIIMYLFcu6PTWwilPBtW2/eQgoFC4nUPbxOhA6tDCv0jXfLhpFBk0kEPvtFGqIzdMIwkhB3Q9z2WuEQ==" }, "favicon/apple-touch-startup-image-640x1136.png": { "src": "favicon/apple-touch-startup-image-640x1136.png", - "integrity": "sha512-uq4us0Q1DP1lHqmRSDXrU/gorQahSLk+oKQ7TgczYMNLhKnhi+Y2hHk8FqXvB2B3dJrgyepd0XD2ZMiZudq2bA==" + "integrity": "sha512-Ol0z2NW7PjFrVwo5GQ0IolK6IsFJyji9biOIE7BW9wuid/H8VhMW6/j4Sxh9SZ/v0NEtQqaA5VOjvLT7hcpxVA==" }, "favicon/apple-touch-startup-image-1136x640.png": { "src": "favicon/apple-touch-startup-image-1136x640.png", - "integrity": "sha512-Ix/GZO3qGzFYVpIlNa7jYkVyq7n1kAaQZx2Pobw+fqGGE1GqElPKCdUwCBCmxC9OM3qrdA9qB9AHg8IdOqNb/w==" - }, - "katex.css": { - "src": "katex-59efccf3.min.css", - "integrity": "sha512-LoA9jYWADilujFvJrka88siGszaREbfUaqz+lfLV+JJvNCxFCliO5Xxao82BEGTAgFPaWsDRe08PU9CrASv0HA==" + "integrity": "sha512-l7AF6JJHQNpeEOT32Tj+sZsyigN+FIer/RLxKqwLzXZ3cPMizSjmL5FjfoyZ7waJfDpxV448BWJcpObDEp2f0Q==" }, "favicon/android-chrome-512x512.png": { "src": "favicon/android-chrome-512x512.png", - "integrity": "sha512-+zvj9hEahF0mXa6M9DCcmUfrRL2A9DRtRBbIZuD+adAX+KrGEKq/86X6v1zpxq3C34TXFtSroQ51Us0H0sZO9Q==" + "integrity": "sha512-XmRxXro8tWSW9pyhfNcuoIVqHqOHH051Lh8NpsR0bMMILrx4QSIGI+IOKo2DYafyJ32rRXQ9XapCUigUoU9lVA==" }, "favicon/android-chrome-384x384.png": { "src": "favicon/android-chrome-384x384.png", - "integrity": "sha512-MN160lMatZUhdpfOjITGN2NRViQENPh59k2sMVyzelDawyWrm9CrK8U/9u642UL0kEhsBc+stqMxsLIPs/0IUA==" + "integrity": "sha512-aaWWtDDKoURtcZjVjuEygWnAX3JmiMIkzG2gw0e90QU2BBiMEFRh+Dq5lONs3NKviyhKrWjYXktnLzbBDgwYqw==" }, "favicon/mstile-310x310.png": { "src": "favicon/mstile-310x310.png", - "integrity": "sha512-yznL6hsezsoaIlzrRBhdlvfqaotZ4fDs2O6yFs4ksJ38llkYLEQOK0dR8vRZj7IrBA9cPBpFnF8a7zren1/dsw==" + "integrity": "sha512-0cJZvExwO4YX9shSiRIio61MHiRYzmd1ZKJcIuurb30a85VAebz64fGkg5WgaljhDufbzQV8juSMSMdjVU1PaQ==" }, "favicon/android-chrome-256x256.png": { "src": "favicon/android-chrome-256x256.png", - "integrity": "sha512-EoDoPR6+AyBjbQe+6nQuk8ztSv6IyE5r5+ALh8HWjvAIKfoB9gfMuuKlo6PJVFxWyEDgJLpjhmqPMNwrBjK/og==" + "integrity": "sha512-7K6tC2Nt0G4xGWOnXI0eHTnflCfBnmoZI+41wRXubcINCVj9zfE1urbpRvWXu+JEkyoD+/1i/SHKJvlj0V8Qng==" }, "favicon/android-chrome-192x192.png": { "src": "favicon/android-chrome-192x192.png", - "integrity": "sha512-jURssFPJfNTqdQQM6YGPRIejKPiCmHdydbOkKux0RVGtQdIM/JqpTOIxYtJoWxIATm4yUuoowB8ZLR6irsiTsw==" + "integrity": "sha512-vFuJFgoHAo1gYkmVDylyiAHTUEAzZWmusNxCf4BKZucXjB1O5WSNrnaDHd/P1U3If7pTDG3zM3R8xll9qn/TFw==" }, "favicon/apple-touch-icon-167x167.png": { "src": "favicon/apple-touch-icon-167x167.png", - "integrity": "sha512-r21EOceDocSx20MdajHg68eSKbmmHv/bm+1GwZ7cVQmzqiTOAVNgvG7Q7UD3hWzT6PY+YlbU7d2Smfzwgd+NVg==" + "integrity": "sha512-n9IE0XrWkdUJCWDP+BXWGZ3f8YPWUt0j1YbpOql6ECHbBv94MqBZsCNgAAZcz2nlngn6B/VsLquKPF+C73uAaA==" }, "favicon/apple-touch-icon-180x180.png": { "src": "favicon/apple-touch-icon-180x180.png", - "integrity": "sha512-EyF0U+VyXr/sfsXNbJwdTQ5IHTRkiy4dp3dnYqgwy5NTelKNTXoo8yn70jm7h5t83BBrNVIGvXfgTUVGjsXQqw==" + "integrity": "sha512-MOwxPnc3afecYk/ITIQPavTxfNlk68gSBXzbhrf+cYuXaXx+OKApfhsfT0MwS0RjFsi50lirbvtJyyWUce+AnA==" }, "favicon/apple-touch-icon-precomposed.png": { "src": "favicon/apple-touch-icon-precomposed.png", - "integrity": "sha512-EyF0U+VyXr/sfsXNbJwdTQ5IHTRkiy4dp3dnYqgwy5NTelKNTXoo8yn70jm7h5t83BBrNVIGvXfgTUVGjsXQqw==" + "integrity": "sha512-MOwxPnc3afecYk/ITIQPavTxfNlk68gSBXzbhrf+cYuXaXx+OKApfhsfT0MwS0RjFsi50lirbvtJyyWUce+AnA==" }, "favicon/apple-touch-icon.png": { "src": "favicon/apple-touch-icon.png", - "integrity": "sha512-EyF0U+VyXr/sfsXNbJwdTQ5IHTRkiy4dp3dnYqgwy5NTelKNTXoo8yn70jm7h5t83BBrNVIGvXfgTUVGjsXQqw==" + "integrity": "sha512-MOwxPnc3afecYk/ITIQPavTxfNlk68gSBXzbhrf+cYuXaXx+OKApfhsfT0MwS0RjFsi50lirbvtJyyWUce+AnA==" }, "favicon/apple-touch-icon-152x152.png": { "src": "favicon/apple-touch-icon-152x152.png", - "integrity": "sha512-lRnGXbXzsVrCxAbIg+I40XjDAsNROy/6BPlPC/+2F9v3p+3g9vcy0F8HA/DlVD1I52HYfNH2p1ux1DbZArdGRQ==" + "integrity": "sha512-Tl7OztU9EPEmqAB5g1fZbDfJILIFGGRYoXVRLmBli4G/kDRcZMhsZPEpwjcaElSsZ6Vf+GOBX5w+y/37wcLNmA==" }, "favicon/apple-touch-icon-144x144.png": { "src": "favicon/apple-touch-icon-144x144.png", - "integrity": "sha512-l79kJAsLq1OgOOq2n2BW21kYMTNd51vkjJwc7q1GYIswhF88t1hoHFQSfVDjIeYChjWKGwxBvHwEwIvjDBW7eQ==" + "integrity": "sha512-RcXaoNQ/5TvDfRK3B16Xmbool22kaq9anaZ/+bxz6T4IkXly6Ss4V7E7sjAHY0z9VdBi8RlOXmCf1QVF/bO1UQ==" }, "favicon/android-chrome-144x144.png": { "src": "favicon/android-chrome-144x144.png", - "integrity": "sha512-bT2lgHn/yXT3P6/li3MKnzS7wg9O8gNzZiRn0Wb4/mRGCHnNcWgtbKBQUf3OKDgoX3RLux+RtERWl5Ii4ByGwA==" + "integrity": "sha512-MwJ9846H56kKjlblEn11IvX5wwgw8thJRda/Oz17yUs75jussMZX4XX5CFgp+Fgcj00FydeEm2x5QX4aay2H4w==" }, "favicon/mstile-144x144.png": { "src": "favicon/mstile-144x144.png", - "integrity": "sha512-bT2lgHn/yXT3P6/li3MKnzS7wg9O8gNzZiRn0Wb4/mRGCHnNcWgtbKBQUf3OKDgoX3RLux+RtERWl5Ii4ByGwA==" + "integrity": "sha512-MwJ9846H56kKjlblEn11IvX5wwgw8thJRda/Oz17yUs75jussMZX4XX5CFgp+Fgcj00FydeEm2x5QX4aay2H4w==" }, "favicon/mstile-310x150.png": { "src": "favicon/mstile-310x150.png", - "integrity": "sha512-r+sceTi0g2LBKAWM7DHlg3oZwo4cWy+fKjlCydQD3EonqCFDzYXiRDbry3YErC9WNBBliP2bM4xMTrTZgm+Kwg==" + "integrity": "sha512-533u9y8NEHRs6GP6+n7s7h296T50Y8dwB8FcS5htN7k+V9hWfurx6zfeqw6nDA9r9viOcKQXlJ/XfZLEpaMGMA==" }, "favicon/mstile-150x150.png": { "src": "favicon/mstile-150x150.png", - "integrity": "sha512-GPqhaPXp69HpgcB2Ah/xazMg3W3KmL8XMOH8nhvKUkU3o3JSkw1DIaEzZgtL7upFEkXluCdyRAt/6Dm16fh+DQ==" + "integrity": "sha512-jm3Ncpm56VyOSvOsiKRMhX/AYl6vbZr9n80if2QsEyx/Rk9/+owriCEhlKkQ0krUrlEvvAh4Yy40JIiB7GHZYw==" }, "favicon/apple-touch-icon-114x114.png": { "src": "favicon/apple-touch-icon-114x114.png", - "integrity": "sha512-H+TUSPPwtVHdJabqOhKdPxWjB9nBs+PMgjvU8+k2ODvo3LKfBoJGm1GZ3yxYcI5NN4a7lp/CEl3dpl7ip3WGrg==" + "integrity": "sha512-ZiGvyFWIDPl9YZ+NOn93b/7EpDtrw97agCizkuDdFRLr9I2u9FFZTnoik7LJapL3dnDGYD0E8qTJULOwMAthzA==" }, "favicon/apple-touch-icon-120x120.png": { "src": "favicon/apple-touch-icon-120x120.png", - "integrity": "sha512-lmal7rWGjyN5/sPczKKS2f9PArcANPIpGSIBXeihN9qOXty8XmZXIRdxlgWD+57jqTnJVTAeJSkK0dXFaQnG2Q==" + "integrity": "sha512-0PVV+vO18IoVIOgedCOGdzRv6DF/71ygDGR7ijVJOT06xOsACnKooiS25YcXg6sVYjSBNO9omRGqYS+icunJCw==" }, "favicon/manifest.webmanifest": { "src": "favicon/manifest.webmanifest", @@ -381,7 +389,7 @@ }, "favicon/android-chrome-96x96.png": { "src": "favicon/android-chrome-96x96.png", - "integrity": "sha512-rY/ZP3MD9/rW30HxMcFIqMWmFE8NDcxtqZZV2TjfHedwuE6DQKtx+KnvrLZdB6yZ7AhdsmsGsqn/a+WukRV6rw==" + "integrity": "sha512-Ml8MN6tFQcvVu1M9uFZyZxrtkJwcQv1i/VBs+6YDFvfNkGkvAMGmD3xmvS6qPbc6zazvpncQoAwihcwDYQ1DdQ==" }, "mobile.scss": { "src": "mobile-79ddc617.min.css", @@ -389,35 +397,35 @@ }, "favicon/apple-touch-icon-72x72.png": { "src": "favicon/apple-touch-icon-72x72.png", - "integrity": "sha512-ZatvjdL1snYdxe3iXsOU0ltj2Ci3v+zK/GOZ6sb64zDrUSn7VO7imIyGcMUJEX9GJ2Blg5o5R7JFQaCS+ejuJg==" + "integrity": "sha512-xtDi3mPErMdQnOCAF36WY9+Yb9IEgFiWZxcwfI8ZyzLM+zSVXieiTNgvMp3Q7FKbYzuO/YbcY34aSpDeNbwSkw==" }, "favicon/apple-touch-icon-76x76.png": { "src": "favicon/apple-touch-icon-76x76.png", - "integrity": "sha512-WwGHnql4UjcNS6UwgjUR7UVaXeLtL32VfbFmNloqRECNEgrNe7DCl4ojpNFB/VX2LjP2dzZl7D0GKdzM1PF+6Q==" + "integrity": "sha512-5mXpJ0SOGLyJhM+1sKauzI78IZ2e3KX0Ut6bakTWECIS+GMtGU9i4YX2kCgIlf6MYD8NlHhNjgjTXguCQvpOkQ==" }, "favicon/android-chrome-72x72.png": { "src": "favicon/android-chrome-72x72.png", - "integrity": "sha512-5+665FIGx0WNd2RMotKVPKd6Hr5B91p3PEJDk5tphr8YT6TjMRlOAO3S1JiyRgYX1Ad2zvBy16O9m2xe6Oq+/g==" + "integrity": "sha512-yRiTvAL7S+LN+QqFT20OKvlUxy76dWOdYDt/oYrlvlITmWTB+IT3zscjYV3a+eQK0aaBnI3BYvyPpP0Jl0cp/w==" }, "favicon/mstile-70x70.png": { "src": "favicon/mstile-70x70.png", - "integrity": "sha512-uk2TelCQgggqSrlXZqNI1jvoS9c1whC2No7MVAwo5A436F9YnrN8UcRQR8FIqXcf1QYdDqgu7T/PsfdKJGpXqA==" + "integrity": "sha512-YR17fb3y2Mop9r3sGULUWVS08KBsjl541ijD4NfjH9B7MHXot+bKNm+xtqlYSrTNnh1Q5swG1pE8ilH8aT77kA==" }, "favicon/apple-touch-icon-57x57.png": { "src": "favicon/apple-touch-icon-57x57.png", - "integrity": "sha512-i9gj+VyNSIRC+MzON9tQLFnJeILsNOSBM+pQ7Xvlvme9T+tddMojY1bdqsy7EbYt0wxmjAg+4OaTPWCP6mq29A==" + "integrity": "sha512-3QaWN6DLuPtw8MP7aduHbuO1xiPEJlWE5WCckCnbLThBoYUOB1RV8flSAFAE11UpmqefMB4r2sWwuGRuHFSCtg==" }, "favicon/apple-touch-icon-60x60.png": { "src": "favicon/apple-touch-icon-60x60.png", - "integrity": "sha512-s0boJ/PY8f+qT/WS73RM5n9UNxtUvjemVOvKpC2Yz8e1iT7zxhQUwg4FRQ3kWMe0jGjA33unYfH0h7HPyXhfgQ==" + "integrity": "sha512-tHDTnMw35Ydrn4aUvkaXwVUsqBjboI2vqm3n2lL5jf21t6SMoekze+YFNC0MBNWEG08ajVQ9L7Qljf9Z2evhBA==" }, "favicon/favicon-48x48.png": { "src": "favicon/favicon-48x48.png", - "integrity": "sha512-lJ6dZkyrr8SJezHQg048oTdSW2Y7hsBdYITYStFpbiBUNMoVcrqzLl9I6pkuwfitMevjJNr5VZA0EDvy+4fhFQ==" + "integrity": "sha512-Yp178+WA3ntd5AMrdskywuc8ubmWN9qqghWXAyyzbpBBMhKplIP2BveCOP6R16ZUGOcyzPnzjSRY3yESXjcZCQ==" }, "favicon/android-chrome-48x48.png": { "src": "favicon/android-chrome-48x48.png", - "integrity": "sha512-4TLfus/Gh7ss8fkmuvguqSV7onXq8kkXwqqRq2nabo9L1T1N4055IGHV2ByPF6DQPs6iJO0848eF4LJHs12Fxg==" + "integrity": "sha512-pPHYffX13GvEmTZMLvEocQDWE7rdp0KIM7cdY3w24+3H37j5vbo7K2xsCR92GpzBNXkw0hzcJcdyktaT+E1sag==" }, "favicon/favicon-32x32.png": { "src": "favicon/favicon-32x32.png", diff --git a/themes/hugo-geekdoc/static/favicon/android-chrome-144x144.png b/themes/hugo-geekdoc/static/favicon/android-chrome-144x144.png index 1d331782118ebd1ffed4d4e4eb73f2ab6fd0a58d..e874d34ef1a7964ff1e8cfe7f4f000cf1518d9b7 100644 GIT binary patch delta 2195 zcmV;E2yFMv5ylaaIe&ObL_t(|ob8=&tQ|!az^BDV18?`v+(&6jAO)@T-I?2#F+IJC zD|kRCIEkJ}{J0N09Zn&puWWDyPg;;TYogJDPh;oB4Q6J};u4;~PMCEe;YIA!IDwGx zb@XIe8lk*wJ$8PqhJUxVtrH54VJFJg2;2I4>>OE*Q2HV4Bv~C2Zp6-!wKUgn390(P z83fXRohNH)D18HZf-DZM;0Rm)sSjf3$y$Vp?!``$&A}Dy#m;sLriT z2{XJEb=Ixh{vqs~)I%Tz-@<-&8_9RDRSUa<4cY8OC+!B;q`QL4(%I$(%vVUD@yYkF zm1!J)CW|M2oW{YCED7`Fk;cKF(m1$pewJ@$K0yMF$9xiAmBqn}{iNwHQg|YbgGYKh z8y7JjAc00BXMb!(mNa%7AqJIaSw%XMCc(ALbx5Gm);U=c%#9+>X%Z#j@iY#1GM6EN zhLVvT!jR}lgA5*NFZE!oR^3M!k1^6M7x+vkU)0G<7_1&f$WjT zIf=}vQ=#;qM-oWtx%1jv*Dz1X$Cf8}E=z*@vm|`oyMO77w>sBx1uu;v&S@d_aiL(} zWP95b^N4&*dFH#p5A!|j1LkjKU2$O=2e0`e(F(4jyT=yi{ncom%gFt=s;q#@69+#! zCC@3$$J8_l4mdxZ38`-{TAroQ3t>C@7^{2bnPF%3``e2WjZukuac~R6q_JW9MJCDR z3A8BD3xCW}@)9b~a>lGg|1n!c7#2doH_MgB-6Jr0iIu0wN|eRHq5Sic0mFbxc&-Y8 zxP(2-A@T|;Pmz@%n|YmD^GEiD0nNMZB~C$L?}2|(G>O_<^VZD z zvZ`4-J$?45pDhLt{SdR5+@i{}oP{q2A01+Q?B5s$<|j5+x>wTF^~c6W5X@3+mgm$S z>;HG6qu)ZBVbM_filTp!ajAbjxgk2AS&HrQ7}7ZG4!(#EUS;UbG^M_SD|lJR(Ymp6 z(|-zA>R<9U++=e*To>f&#lbDZobE{D;8)BRgwnqsQJ}k+<=D7j9#@`so-4HHWv#Cp z%Dj~)S^ODq&qr$?1@dv)%9f_D=goqf*@ABZ`CNH2BX<&B#caYSfqbq!*}HNx+weso z-z!fVhx<`JqSiqm-z!g=1b?x%n}_QH`F~$|f`h$o^5B4>dQa{2aWTVKlB$0kyDELNW^LAe4^OHP?n2w|+oX$AdkkO@8JU_{Uh*0p^ z(yp>>>BHveP?^t9@*omSeSC89X5upBSz1^>R@U>=PjzI3gxzJz^S{`5`NlGyKYxwG zyGR~Hgw#(}B9MgLML+xejzewpM!#^ou@?7$l;LG){@cwAmY4<}GCN0p}pT>cq9j6h}g(dpH#^7!x~(H4Pv zb*wx-e9EvvpkAFTkLw>(u?6apJb!L)=fD)GNAkG8p$to)9?5fNNTB|ZJOe@ky&sZi z2uPsQA$f*`1X_aR837XL9Y~%LA%PglGY-B9l*ZvJX&gK`cuf4F_MazwZ!k6Vc8&@n zt+PC?wYalQptR1@mWxd`Z4xN0vplZ0`L#u$w9fLl+-N*Y!aLFBNou_2aew`)gR~pQ zBo8t!U$*k^_#8#@Aj4(!*D3@OGP=Kv=g+#qK9UC!*DstqdfUY6ED2w(OrAJ+mE`g4 z%1d)!=(}g+|5ctm!JAne-t$(sVeQ2+DEM^g?&8fhv&{?4PwFBg>xv79ZQ?y~sb0-n zoy(goxRSSF6PuYS^-LNXbbsx4u?PiPDE)Jx;KXTT(1L#orN6dXZl7SjA*8;&M0pm% zc4W^T4&{&Ii8D;)`x~1&7cJ>H`ThI3!RXNT9(Xfr=E!Y|@voqfWsU z93_DY5{LpwAOn~B8Gq~n_CGqeGG7r=&*2ZS=h2F;X1*d+bT9eD%PDHLkV1ltNI@SOH delta 2219 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 diff --git a/themes/hugo-geekdoc/static/favicon/android-chrome-192x192.png b/themes/hugo-geekdoc/static/favicon/android-chrome-192x192.png index ae6e07a5ed4b02d4f7cad94e12dd343481f8bddb..d694e30cf17d50c1134f163f7ae86fb5913db675 100644 GIT binary patch literal 3210 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 literal 3237 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 URF02#-{D)Doi}}T&h!3%0e@2y!vFvP literal 4191 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 diff --git a/themes/hugo-geekdoc/static/favicon/android-chrome-384x384.png b/themes/hugo-geekdoc/static/favicon/android-chrome-384x384.png index 512949ee7e848c16ab22c1b157bad93f579dfdaa..0f983220efab9c9954142325e7aa0be10b72d71c 100644 GIT binary patch literal 7255 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 literal 7475 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 diff --git a/themes/hugo-geekdoc/static/favicon/android-chrome-48x48.png b/themes/hugo-geekdoc/static/favicon/android-chrome-48x48.png index 9d1c7af611cf3f042a12e79d9de0ee0065c00148..e2e6889bdd278a2c4c26a74eeea21dcf23a5f263 100644 GIT binary patch delta 97 zcmV-n0G|Jm29XA^xB^)Mz`cXWlw1Zc+qY8-!C;#)0LsLTEX})2yh0{b+_|4v`^41x zdNvVA+X5Dc~%1E5UY$kM#a#4BV{#hv?!wNFf~ z&zFEQ5Xjy~K6q=zd`Wzv93If!2lf~@pDR}`wCeR6%M#wXK0Uce00000NkvXXu0mjf D&)qB> diff --git a/themes/hugo-geekdoc/static/favicon/android-chrome-512x512.png b/themes/hugo-geekdoc/static/favicon/android-chrome-512x512.png index d26118bcaf509fcf06140d0074e391e562edda1c..e6a2d03b170be94a7963cb0944604ba6b7936037 100644 GIT binary patch literal 10167 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 delta 164 zcmX@Zd75*AC1dSItKZD^r&zwSoYp$=$6s*GvU)^-s zKb2ot!@oF$-{IDUMSFV}-#HyvJ9(Q<+op4Ya!F2mv)Hq)$ diff --git a/themes/hugo-geekdoc/static/favicon/android-chrome-96x96.png b/themes/hugo-geekdoc/static/favicon/android-chrome-96x96.png index f5288687d30d21ecdada510e79b70ef3b6cad2aa..021b510a00806a8b376b60f0471d0b17c72e4353 100644 GIT binary patch delta 1254 zcmVkmlnIoH$4#p3G*OEX0b~Kn zgrr=~=@yiB8cciy*0b)W^9U24X%~~Hic?@ago%3%5Hd;?CGjKJ4&`#Eb|HD{coA%e zFmb>DA)^%WlQ&Ym6l^Dc5d*}GI*EA9!lj9;APW#Ke`))|Ty!;0-FkpQr#w zONNh5s(Rtk*d#E4EE%AD^hoIAxn;%wj}drZv}pk8e&);=5C&*_BH5Oz`Xmuw03B3`kF9~i74k5%s@T%1a<@Y(MT z%Tchf=FbM`6&2uZp^ux!v;>b;ucamVL&vL7CU(cWr(jFX_tCBh;H>yJvjM&_3~)nx zOISN3*Ap&&O}!1kT)k;&Ks7O zfo0-%YJv*zv(OI+6Gyu=AS#x{Ca_TaPD}^`d|LT<9rPN?spt2Ei5-RY6Kf$$;@1i# z<>O;5%J>-awiTfQ@3CGFxJ%L8f(BK9ziVeOUmUdBVigl#Acm8o=a-go}G% za`K#Bm9O$Few^S$nLOR`LX3-py;uvVoQq%S<{(DAce&i=$lGlBVp?FT9y+@wFQepd)Si;^#6g zzV2(pcU8M+xQtP+Adm{JTg$edI)TxI3&g?lZUfW^W`4zib(=C ze#$W3JEu&(O}PBlmR3QS49|Ryi;0(uWwAlGjt+;z;cz${4u`|xa6qQ{6F?8knSmNU Q`v3p{07*qoM6N<$f+AL9NdN!< delta 1255 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 JKffKe{ZDGLo38)> literal 44661 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 F{{sddpkM$1 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-icon-114x114.png b/themes/hugo-geekdoc/static/favicon/apple-touch-icon-114x114.png index 060d4672daa7953bebb964b12bd8cda9fa01835b..125098ac9ec63d4fc84f9b6aa3805da48dc6ac1a 100644 GIT binary patch delta 1748 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 A{r~^~ literal 81872 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 A*8l(j diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1242x2688.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1242x2688.png index b00f85bd8673399ab4d4c57910f7f8e4e3e0f211..d7b4300f2d20be00081bf7ef2888764abec1d696 100644 GIT binary patch literal 38449 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 literal 91208 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

$XOlmJ1xr?fkmF=X4A?^%y>T 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%0DhF$=XD_gVKp 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 Shd%J%_p=v$clBHEo&N=DeV2s* diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1290x2796.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1290x2796.png index 005e6b8f9af9f345ecf9316e82457761828e4874..17d90e89359173ca505305515e1b1fa976b79bfb 100644 GIT binary patch literal 38496 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 CDOw`{ diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1334x750.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1334x750.png index 199d5b5c156e50e07aae3d6937291ffd5e314ed6..da1eea88e849ccfbda7134aa8d1687b5a2976305 100644 GIT binary patch literal 17849 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 literal 33179 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1536x2048.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1536x2048.png index 3fa3827375974b4bd246762ef986428341d584d0..fe2399ddf8cd1d88b5f25d3004156df02a90716a 100644 GIT binary patch literal 48063 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 Nu3G=i&96O={0}-h`J4a% literal 97682 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 AE&u=k diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1620x2160.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1620x2160.png index fde41a76c42fd33d362370b0f25af45afe6538fb..7bb33c58edd12ff5916df520a90851bb7a836406 100644 GIT binary patch literal 50761 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 BwUht= literal 107404 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1668x2388.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1668x2388.png index 79960c5f07a13f0071f9dcef4e8fa854912c964a..1482b74e3f07e2bf738f8e9f04fc19e42042a67d 100644 GIT binary patch literal 53231 zcmeGEcT`hp_c)3lih$H0DoseRffW%D5lDil=r{tlaTF=)C?FzA5rL3|jty`us35@# zjs+b>q$LO_C_+$CR7wn85E6QTK<++=7QesW=l*g3xNF_@nRhMM%bfE(d+%rWXYYM- z%E8W7NnT4HK@g=)8`o_^5Sa)BnZ83#2AΞWXg?rXSn5+ZREkTG4+J8Nu5;5rlwj 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 omRX>05e0(7OAE@+-6aWAK literal 115863 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1792x828.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1792x828.png index 0ec217719dceb757851325c1bd5016509e6f7c41..75cde80cf052e53de83270936a57dd3c51c53db5 100644 GIT binary patch literal 19743 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%0D^l%i98%;bdw zc_bFp8`z=V&5Isbb$K4Pr?O=jyiG46a9ni+%3Kc*=+uPrr!4}033p4{xBouH*NM|5 zwjp#IPE2%)_Bb#zFw|fJ{mKaD%6)=r+5&Ul_xBNg|7Gd>!myU6n=@EVq)E`Tt8z`7hci{jsKjg;87IaQ z=z&P@8%q4S(6k(RiekoDs0SK2D-Gu?f>svDK@F1f zTwoYsOwrT4kP;{(-34e>fo7M6Pzh$KLk_CYRLTFHeHc>(eq7g|EM0B$^8S@t<_-g% zN&uvJN3>k3r09J*E!mO2~^p;2-s|*~6z;Bcd0T023XYkk0bT6@raH|86h7i4Uj8MiRQ{ zjrl~b7`eLIC|s>SvpHLA_s(&<>p%`6A&2>^&(M$Med@^_#8?}4Un=c4x)B@{% zi)ds==hdq}6tB0Dd;lT=;eeuNxqEh!56kP3x&Kg6f3E0}Yh0Y$V(}6+c!o+E6x*yT z{Ttu38+?WW9@#~4un4qIQfNNku*0tTu=3raZQudEMJ{R!M1GCHS5Hn&N`i*K&+(Ov zralM)2Y9SF_^x>~Mb(3!qFcw%gE{O^xk!zBLLuLOZ&a4MiV1a$c_<=OqdfJ5@Y+<< z#S;oBJT(7c?)85KRW+A{&;3rneJTB zg7-_*1g191L+GOV%#0~xYV0l7#$;lFA5Mq54Yrq0dl>Pr(;=F9rR1vRVWE*{{K06z z^qLlZ8mw!8i}Mtlry!HJfnN;xT3$G}ymtQ#y#Y!~uC9sMyA?+TzfR(NJl&7-$wtSy zme00K^UchzVTk=I(VQfS3$P~))WLKH7)-KQ$bFBc=tNjsEc5TGV1bGFm4UawqxI?u zXsv4R-IaFikwVE2yHz6m_!n7`@v-NEhv$#I%L3d(BVO$HE1>7(lX3>UIhA?6g#bV8 zeH^XrTDxyUaE!~LJHGFx+CnOK^`?xfQf*TTgzS>3WVPY>)&qLYZLB*_mxtwy^n%%P!3MAbV@6QAAdr-_ROYKQ~USR{pcUhMU+>z?KP?LOM91G!u3xaz&6rOqj)l zS-=9%M6?)X#)Mf+n8k!y2xBFr3lktp#DxhEB~*-w++xBkCd>jJCzvIsTFZ;&Q9{>OV diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2048x1536.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2048x1536.png index 28d1467b03270881ca33636d62ab094d813b54ae..4b372adbea3dd1741636454e42b30b56889fd414 100644 GIT binary patch literal 47501 zcmeFaXH=6}*8uuZq)3U13W^XMMzDi|qEZqYsHk8YM;!==f~bg!NKFD3&=JLksFYyE zj)KZa3laqtAqXmhLI^0m1VRZRBzK=D1mk?)x88N{ulwU=trs(S_St9mz0W@T;XUcR z)jf{T1V7o8I_z>IXW|Sf}%p|rcLYpH%*VB4a8kAU$mPOo_Q}Zna1vT z#6HE=*EU)MX!y-kHiihD~M2K4RBH zWh=20UH>bv$|xBy`J$8TBeu>?LH2oBzq0IO3HG0`$!$H6EL-+}U>o&AM+QMwLK?t- z{xc)Hu>XxVd2DiwXc-OR#s0Hck`#tH{XekDiN!KZhWNii{;!b#YsoTi_;0xQU!&-M z!^Kar{5M?u|14bm=bZb06c2Lg{y$e5|L=j57FWBzn4X=nHz>HipOfqmYm?AU<(+%F zzmwXOZ$19j3#;lxPm15tMFXYxOQ)sHUMaERXB~RgorYo01^E*=YfTgVK8&|0W+W6} zq4r#=;8wLDla?T}fasK=6Yqq`YoL8!t-bpsCsijFY`t^>{OO>gZOK+!T5D$Oc)@wX40 z$?RA|S>$P7Nh_zOnN=xZi(a1zaatKWSd-uV`Q4@pulYd9E;U$0*0$VB747(5`sG8yM=$Jr?U40+I0&M@TsiqgPSrs&n)*YeR?6ytW*J8#eZqr z>*z%Z-W1Gli>YW>1c;|zgavNOLZPr!DcUCS%)&uYcX(BHEfI6OIiI=MyLy(!247#_ z-YuX`qmjk{tQS#~awmaWq~)D{GI9syyb@;lq2adS724pJ3l$A^2N?3)C}6UjXvnsu2i!R8|M zFzE1vHeygfZ~teY8rkO#$}T00SN*(dXQ;5cC*6}V83cR%C~O=yr{mMk!m?|op%w#U z^s%sO*4$Q&vW%XVG&U0G2UPRsUj9^G9=k8gW1X;rarH9w0MNxV5S_lVE$7{|zEC(f zjJg89!sax+(50-Uh=eCAVn1Qn(|iSoNetwo1MvuE0uFP_t19ErhfkzcU)$zS9ymV{ z3;TR^|C_k-V4%`FWv6kki3(!S_vz$!#(5Rr{>l)IKz;47y;zOl>3>c zRDRx!(t!X&26ZwJ)EH`zTlwfwtKU>)^>cy0l3gh?LuRd6(0#epaTkW!my--ac5mf; zjiVZl01>VG9U*GjOduuZpJrU7_G@BfLsM$Y`BsZ*2*qy*#R?>3pUhL6#h`b8PNw*C zYa0G^40<{>j@i<~@JfuOet^YZUnU)|mhe0(8a9G3^hN+LNplhh2OXO>T!?;?vqJ?- zN{bq3{oeg9wLF!5A9nxXiC{*LuNoj%x~G`!pv(q-uk>2CetEiYP}u4>1L$~q4gjZa zrBEnWk*UTd6nIgl16W0lg_mn@|2Pm^XD%)k4O@WTT}r@_bNr+B#6xd7Ez-=Q z0ZCcL`qnGEbj0JBUGKxgl}P2Q4}NwHLS zkVrpbe{mtzaZ}J!{q2 zj$v1KHVodr4Mer_XCq;p0FcIADYLgFiaT>zsb-N1*sj}!4Ml7_K8SMJDK+5aOb-N* z(tWCv&QqrW5q{KG3)S17_I&naP=UqkBfz4`4iLar>M(0?LewoAUtCGr11sak>##zyBSK*OfW~Xo$2cG+=kj+rs_%IDPp;l0j>|J z$j)r|`MPq@wl*Yz-q)b7jSB_;T&eK#M6{~_?dHvoE(dJry#)zU!6fhzExCx)@engd{~h{PX#3>j{(Yex3GF@#1($Ue zb)t$2-4|fU1vibI-pN1eOrwbR^iF}TKlX%I^{r_M2}xsrfKBHpBaOHHk=1i}q7`jD z4x;(Gw88a_ogXmIbev{jk;j<@JzM_LrZJ2bl-|>YXwR!uz{tR-ALx{GV9&(rkCPk3f&`;)GiK z^UHRSi_PUw^kFe`TphdS=#W~&gT2CQlk@p`lXANW_Ma)CC zF?!33-TqRydJhP#ai_g9yqEDo6avh4Dqu-2C~LM_Sjhw(@eoqh)3TfmX+w|cf+wwh zKOeWF!lAeiiUka$sOdPnuWfQ zw+7~dj4PX#hO{!M?YNnvVuE$BJ)psp@&=Jf4Som7q6)sn?bPkh!`3xtTQv}e$t))u z27UMrxn?S44d}krna^<*6p@a zh8|aNm=~$yVPckc6-F8s<(xoR2Y87Cz9%VuY|bz}E7mR;$ZIY96X;2w=8$ln+KaD5 z>U-AnU|X!6unFor4-jkB?8Fe4-hL$U2oxqiK5wj6O*PxDfVo+UT5dS)U@$>s+fN_^ z^>JVv-q*VvsrM@?3;p}Le|b#ggske_i9hC=CY+OQ>W*ahOw``5nMbb#GbgDV)~64ja2!lupkff)*o!4t9Hk*z-Z`nW)YkXhovMBj)Z3Z_eF{*eBqa z`&=bZK`uj;a&Aa))2E#ky7<>$J2HHO_x!lm%EzUS+%V9IuPbH@2?x(6xNt@zIy;&K zX|vx*l@;=xBOcn#*a)6gm+jLbyp=u^e*0*gCe{BE;GxE4);6*I5bIi`oEcIg@sw2k zsqNHwFPwgB>h`?FcyWpIF!cCt1Lcy`PA&WLze=&<`L4zV=XVJ*#+}~;E4|?W(E9>u zYAYG&$-3{-J8-b~7Ls>iUxV2jJ3p`(RwhK2cB*7@6YP5&`krG?*`#I zZ54jgsA%v32ii3U4CV1AyjGJ24viF{yEJfAB7*mRy6J5y4IDGt=JlUIbr1D3!aN_z ze%mwLnRkIv#-xbpwM|~B>MeZsd@6}osx zMl1z)zfG3L-Z>+Y+21056V_Meilyzte$5ZidRyp)QSc?m7wEdQfZT}%N43O#3xqg4-e0q?TLx47ATG2 zRkCx_O<$LI>H&DXbRLv;cuG!0`)cAO-B_CtLk&VtJ71?TE`L7kzmstbSp7{0@!M2W z=jlnQ0e)R1hg$ERkpS9>E%?GBrfp2fNm%H=mlm>#o#9{MwF~6*W;Kw!v9h7&Mw;0{ zC^NF-;mC*Ah%~gRwh>~sZB7%fweT-6kgIJ0Ri-Y?8Yt{70QaF$xRjHr$)1#E*fr)r zo#`zKsdq>3l?fn^MNvo|PwT2Tq?#QDgaHqMs4N=ZC>X(o04z+ajWI!26!FJnL$*mvGZb=6xVPPMII$bv z-@Ht2&7dFhYi@2Xw$ngQul;=LFJM9!!TVG5yb3Qjpl)hBthw_${7OnV%n1DRYCz!< zW+w!sQ4fvb%jv)Y}g_Eg2zFU;lQfw~5r%_BYP)E++V{E!>=S zg<6cNa~0e|VQVbvyVW2;RC#jS8L?S*#!P8_?{N&C;5)lbRh6hmPD=2kHFO>7qY|XG zwHI)+T@!Z^gkxjBpn5~8E|a!>(az6Png;l~HzSFZ^BEaXO`wDwjkF zzfi-beyfOe?J;ej1?mSEEr7~K9kcEje)0lf>yfe^k-muiFTqCr1Q z>1}}TK=;VAKPh7$r=b4=e$E)dZxF~GNA#Z{A%n&68x-Xni~l!R%MthhEG5kbeDFg) zq%1>>i~x3ORFjGI{YkiK!kwS|34G*dRuvn zFqRZ2Wc2T>mCfuC_siOzZuub>1}v$+yBY%~t5QGvemk1n;TjeGOSJAttW+@NBw-ZiZoZ@5=Ks zbxB|IM@j7sZ`RWCr69gn8r=09dT>Kjtd&aVy)tvuAr*-0vi ze*SX8*ITFkv{x&gGFvlfX4kt``P_gPgpy|b9B>|!>N+Z-D6&1=ni->FCMalC6|7BL zc;ri9%SvxnDdpy$oC||qBcK;CKQA1ASR zUPv<{&HzQ4dDq1&ZIE0D2%Z6^Y#A+&d}(QU<_|$uznbkA1=UW8UW@ODKSP@?S()#k z!@+6ALn8o|xfFR;)t=Ibfk&&4Hnd(Ic{RajKZ_lhrR6>zflVc>&N`k@C3DsE82!Ys$i`=#i3kF7WBX!-3mUNp;r$#Lf*u&-HsdyE40+u2o<t1Aefo-R~g;8pOHd#-<) zP?$>c12;#}8!`gf1tAEN^(#{TR3%xO1hrfq;c| zm&-dxeo{`(Q|>kW(%Tkx=LhxH7#=O-#H#FLoV&hflel3tfIG-D>G6Js)9uro!O&hM z%LMnb3VN)NC^;Z*7=wj9y&@;MTs?3Gt(iHNT8UlaRtK*|?EIie-~Lr6TG`Ve<@?Cv zEGm}>`P*{(Z2Qh#DSqDcAo`YgO2AIKs{%ywp=^K~(XPjc)R%k8YNFawiLujIHTCHV z-$FzGezd8dL4hM{h&*Exo7+e?Py3m8lBRCB{gN-9+`|<7DQ?iijPl3J3$4CMQZ?vZ zwxuqWcy8L)nrUBeYxTKY84OavPRv;b9La(}l6#7X+40UY@ZJ21=mN`v{5^z~)IHVj zB%w;!GQPaVEMGNSL7Y+DNg7|a`Y5M*-s>4o_4Hx|?0Us71lGh%@!tR0G?jSL8xIF! z)A9B6Y5;p75BBakx9PQa*?WQ~N!wz+W}+zF+wDV81tSECy{Yny9P|m~Ra!0>q*g@d zMcFD@8D7{<4d`Vf@51Ymp$tO~4~EG4)oTYy(c-yJ)?Uuo`OobyDgyx_*xJltGXGa|&3)RmVx!NzCcDR+W|t^mC* zBiK{s@g-dFzlrfZeHGD}&IL7hCG&g)ZMOX+IPk1P$K7Ff(0*R~+A^?xZAEm3`Pie$ zd*g($Gv7)2Vb?BsP7h5jppQf~_X&6Tkkv>&Be4tvK%tq&DWos z)e4-HP6FWd`M-S46*wKmzy8JOv}*)xJtMSd-|up)oxM^=@;HI^tOoBLj<#g`Gm@yq zXwRQD2doWSJxMZwg=`eR7m^9vNU4C1>eE+r6FJo8?R*ux$#WaMmy2;dP`eQ;^drB*NW81;coxsCQ1t`8T%eh$6EGTcoRvL*}$0mTByfLWRvD2E^u0r@X z$-I;J_Z(oQGz>y9HgN)0atVOQi)%?^y>Kks<*_VzMZaum56>r#f^!4eSP83~3(u#L zMUg9|;BNBZ>SHAC@ALrQ-GlPrm$6Rb?RXH>+3BA0;0MM?CP(34|3dnKQIg40=pFLV zbH+%n`Qpgu$|KiP>Ld!!;8=bk{n9IX<2HLB`ra`hsN@Z_7vZ>oZ5<`K)`8@5S5Y3z z7llsZB6Q2P!oW*@(>4J2gZL8m(On)q(6E+t=n~p=(K`U&wF4t>gXfqQY-$6=hmrqT z`Ax-t3kaXk!C-xX9ze;IQDdfQ_BQ)k6ZgZIsmXm@m#%zOnjW1Ax-_r=Fqv|48G-$T zPhC)9lbh8*w@K#|FdwAU6B2VZoHhk{+Efw+1SOmmYB2!GXv-z*NZf01`9;fHgx;UE zB+Z$K=ALQt$dy)#BExYV+sUiJt>%Ozmw}^U%k!c)wU)%&j8o$Pat^as!JZ zaj)oZ=W)*(DKCIVn@-~8-*7Z=3H1}rqBSDb+n3R4BVB$@YIoe4}+J#q9=JEaLZpTOn6B^ID})*e=AQ61z0*`0mPIp_=R?Bkh?mv zu+zUtAm=x+QVbr8^nL-?XE`49-4z`8;Ksh}GS~Q!h8(-T`u13>1Uk8$TCWwvzd|R9 z8K*LO?6MrI1-XQ}jxCr`pEVe7jqd}O^x4eajHN8r+^YROr#14}Ga>Y|cQhrWZm72G zIAJ5a;Mny>he;J%{L@MZ`kvFmZ~W0w80SRaBB1YU_CPWi5BBSp`_MJbMADi=`C� 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 literal 97518 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2048x2732.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2048x2732.png index bb3185e5b365fa168162fca16c7d762fbfc68dc6..4686f2c70d034ac3b931b3c6e5b3bf83e5073a77 100644 GIT binary patch literal 68870 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2160x1620.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2160x1620.png index 0b11a487a6db4ffe2fc57a56264e18046eb2de49..c67d989f04ff1b866151d501dea3c2295fc74f59 100644 GIT binary patch literal 50168 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�->Ae z&IAA>CQ7bHSxov_p8*oI$wOBodj;Jb*L$@6@b!ame|D=pqN%Qp zewqd*SJ@sXk?@VYU1j6pwVy!Ued#PkEb9d`qVl}?+q2XS_viCdc0_p;1BrVXC`{sx zE4X&?V85bOvP-Nyp+|%KaoE-&c6p4^3(Z(^*q*4r0Z_+(TP4R*UJEP0Uh;;2-vY5* zJjm0LXtyvRD3*;&(`JwVS&_fvBNB80dwf*~b@Oo!yC~hNp`Ymei`^c%5t}?0XVg6V z)b!?MJRn}|Ds}8ti4rywfHD5{k=7|yw=CPr8C8tV9jn>9-W=xbedWLe@R7LfHxPTX zJ(>yi&l>!$Uj1Wp7`Hd|&$2tH?CPJXh?ZCXjD3U_P5l%5D=3@#CvYgrP5pCx8?FNN z&%d4jKf;y@RnqQk*hpp#IH0(GGib%qG5VXJl-ZhI8rf%V{P$1P*?;+ERIY5kcnX65pJnFUDf Ok4skmaO*!?{`fERCWs&a literal 105728 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 UF>KFnHTdVN1sPPZ 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�+TzO!c^#Wu_+h=kJ; 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 G^S=O}Z&c*~ diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2224x1668.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2224x1668.png index 322770778d83f415f7007c36ceb2b390b6af3ccb..9eb92b4faa720c777563399bcb9d929c6431a1e7 100644 GIT binary patch literal 52053 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 P|E*rJZu#9`C`bMe#TQ%M diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2266x1488.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2266x1488.png index 76bec15b9d0baa53bc638fa4c724b52ea25f34ca..cd41465495560ad8d1e66d0ebe2d737304c7ca51 100644 GIT binary patch literal 45351 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

^wue#~SQZa>_AX6O>6 zTp^J+#Ec{*O^su?sCJ0U*RkT|{bq0+SkK@Bu21zL9H@WO_8`7d|4!l5qyBp(F6q>N zUqh1p?QbIz!|Gr7T$J>s{!uOe8sGNV7Ec!oiu!KC=k^@MY`l$)M#cto{ z8w_oKI*e%Xr_=9sboTe}m0wx>->UfFH89H5zuO-hf5gWB=d@wH=r`;E$1@*}-Waxa M)rOUsD|R0HA9nc|(EtDd literal 99653 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 literal 114861 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 HSzG@Pd8nRP diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2436x1125.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2436x1125.png index 928a0755259077d9a74c40976a0290c0aef38094..771fa938431ce160eeada7046ed4a79176a80760 100644 GIT binary patch literal 31694 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 S#%JZgzxBVEuZ~?sJ@&s*NXUl( diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2532x1170.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2532x1170.png index f3790a1fd3e8e21543208b120dec2f7c68948237..ed0ad242060404a633b34c8b2b8a34e44fb179da 100644 GIT binary patch literal 32612 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�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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2556x1179.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2556x1179.png index d96cf9424af8cc0c6146bed53ec838452cd15959..ef7a14dff6759823564c64d549165b2e7a5d7b90 100644 GIT binary patch literal 33061 zcmeIb3sj8jA3r*@30(=LbfHa%l1i$n$#%)Da>;Jf4Q+~4=w8#zAmx@}+eE2}kRnM) z*GW;7nv!&HjP4iBbf22rd7kH;694~MXPtA_f35#IXSddG+4Vk`@AJKXKi}tle;0OI zTguE*o`u8VWVUYExEqI?$;aV-i=HtZ{N=-6JqqBTnJ2dF^Ty#MI^h4NybRv$j>Bo- zwr*T+8*rzmu|BQwa7fWf(bW1sPM`EyS@rRS^xfhQhdROxRz>YtbDy#>><@|QOBcVP zOw~KJ=8yAJca>Rd%>Gw?+N&)Zv$x#U2>;FC%(6wdEM~Oa>B*s+273kZeEu0udR1Ik zyN}_YJd_#Gm@*W6ghY!T;m68t+BgLeg#9djDOV-@@v8-Y>lwoMGu(OpZ{&$z~vS`ubN{m0Eytm;x$t;yktgIW5HoWZVBg^{}23JDH>T@mGHJm|i^ z9Jk7Agm-)-`1@O3C)=`|mW!uGeFuuOM@Md2s*#hPki0#HM%F+^Rh&fCRi1i4Yx?67 z0U_iG(Yq<8^~t3pHyE)2e;RW*sja%Q0!f^(=uOdO-Gn>-Co@=A&b5x-c$`Gfg4Ngg zS6JayJSM}wxv7zQ^QgXSL%fZ9TfB=&@mWdXYjEHH{@9XM;z4*#KVF;pa?BLgYZNyXRH}7ocs&hy z{4wJ&$(TQo@F(>k&g9J_J%y2Me`fvb#4%Xw;^bFh)t|@Hg!J^4j=~+r-eVt6CTvILqQ|jqeiFAs-}rS9aHnjrbj;AZmm^x zewsTQj@-C?4lFq>qH9AuT6)+``^<&68GGgIaoi0&YVV3jXQPzk^||q5N3dl#VapyG zxS1UM^wQua0_Dqz9{L?eD9ox6m?Kf#7NB#voiq&&Dvt0M#t~0_4DIThg^Q>a7=8(l zT$Pf$1TOYsI^x=kXNu&}?o$mP+HK|j#MNYJlf3qwa2~RPlF;~s>R}71y63*`8T`z^ zR$aO7B()^m>NQU@`(AbNrh-8h_m{#tnKFN%MV}F=Sx9p-+cD)p%l9i8?rdqe(Y2c> zwb=jmi${HNWUer|OK%pA_a!}dM9>utNw&EEJGR2JvC@~Vudg$b)$ZcT7fQ|dw_~co z6&9-^Qh!fxxsXr-v?fK3hAYQQl8znUC+v}`GMWL#P_|&a**Y{dbR#3Z(Q#P4ajzME zO5EsXU#pew%>B+GRJhi81Eil<%iC7jmvlO3z6d%#)xz=m!yQZoN_7+B%;IU-c429W+kA^h(yXv@uBw+Bwz2X?rALPe=-! ze?AG3xwE#*sQMET+!hoRT(Z2~(ZNh@N}MlI`0;4fh!l8Ed9)cF;KmO6A?u+Nzfryn@V7rs@=}89 z`p$rONZgrjubjt0tEXDHj}`Cre#}PCcAZ0#jOr26%>Oi-4;BsK>(jLD(>)&Ny28mD zE77UqE;!leJS6sXC?pjv#=UqYsUDI&_7EN03fVSgX>D!g9%0{$fh0>XAa_6~Cv)uS zPXjXA9@amW1P{Y)F5licHa3>zr2@C8u*KB-jPsL#jD;s^`l=*mKDzIHu1^nEgQnjQ7&x{uVzxN_s({ewGy zdH8oxSxoEI)a#Fn)Nwvnc$ty5OoXl7JBl=R^&j(B_C8f3;mY@^IlamrLol4Y6{eB1 z*Bt4uttybinUqNBrX=Me9B!QG-|#~X7rQDXaWSrqWBy5A8j$D;10-&xDf&-i?ajt; zacRWCM+(~j|A%CL1J5<0FpdT%0@r-m#BcWyM}kteX81*7m61GnPI1HRr02nd5?Z2K z2(CQvVd)*m5DBPkS9H`%_~l`_@27vU6Lw2Pb|TLwPf8EEWMfu7L9b`c`{ zV3grV8(O{nMzvE)?rHE0w{f0$^^*x!$!KM3WA?W$9#THB-#A$F$|KmAv&ZFeIAF=m zgjoAsVtyUNL@cc<8Z)Yjhhlt7=A9Z6Ani%Q%xX2iXSj)3b}$cyM*fplBEJjT$2 zuR*-8Y6i25Mk5{fgzz9;=exv9D}Ky;6~v!n;mUn`Yvy632nb%?6@v^T>|p*rMO&oV zmon9p#cDqbJ5<<)LhGkcsfA^kZhsDyBCA^{X5ur|+6( z;f=rn_A2PgjIig+F#_RpR+Pcvpg@nIs4jb$6Is0Y9l1G!EgVUU_$x}}&7DqTe-FuE z8%JRqgRuVftjV!&3l6{e){C+u64c)DbV>#&45z4vkoow|sit?WcZ*_|!M*)aj1s43 zZg6jr2ff1aaKq6(B{KdiSGs?B`Z#wlSO>S!9!s9i0tvxT(0XgD>&;HPkIM-}&b8;m z$wO5mC}6tuOd79NXPQP>3K0C5QTVg=;Qo6}++k!hrccmT4 z#}`C}{JkJb|DiOgomTvHWa-T}ri^70Qn`OkCv#iZaK0LC6ZM;xJl$KeEjul9qqDO> z1T%+!tue2K9pd*?(|r51=RHCEn`@qN_-g{1XSND%#}|{GxUAVm2F;W;2E2|n0ldV+ zUr(n*3U4$nd3F4e2z%{Sb`mXsynPUZ6sxP;_95LIcFA$1%IOljFgTs=7K59 zzFT0HIfoDStFc_0y=yv&7#K)y(|TMKq^T^l5)G_b=SA!!pX`ghl{)4PwSL><355fa z+*}hi?=UC!=wY|QDOJtcA!;JWK)2eLJrC#9r++5*g7Fqd4JS!F?|n^(2m9+Pts8fL zTjZ4XJvS*Jj+Zniy4sEa523L?Y?3lO^B;2#%$6=Seih^s`KJ7`L`j~6vu>)#o*{3@ zrNw6B<_9Ep;1;C5*E~U!-Z7GpP4Kp@eaXKvCnRTx0rh{`zR4VwsY`tzy)q+L+VRxR zp=UZ-jn3vhFY?+$ldq$jI=dil>?DbW+@m3aEwLf=`j3%N^(rK72serJMAV-wv;;V$6e!Vu7F>TU2D}>M#ssoofS@-qis** zB|e(6?PAzzEw?(#;#cKyk1RBo-D{XDKUZ%~==t?WuP&bVR(tWqdy7{ryT&tg2zBuH z8!p>1+{DK-C~H?-y(-Av=WXVm+dWXwK4SJ|;G>|@AFm5&x*Cre{UW6J?R7p3oBm2I zx(WWg%6x@L_3M?~Fir+^l8J1L(^tO&Uy!HnF*alv*tH=m)bd2Zky90KjFasbn8Wl) zW9SB^6-ZCHUJ3-^?pPDyVOC%LvnZ2b+MQV9Y9f>d<+Bl{Yg;%#C6t0xjM^@Am(7rC z3fLNJ^4+Wd;k=S&f9TWR3ouU=2E{?SyEb=`4e{{$fQ~|SvylGB0}q2euP~we*NDUd zka(Qo+9<8ah4a;3_x-U)%D*(aH(QTn3HNpQXA*&7pSXX;z8*Z!c^08~L1_MBds8+) zjOz$h_LMl9VDyZjwPIqh%2Wmsvv&?JRTVp{ z1Qu_wzgNxX=~;>YKAHHvvw0O)(YBxRCKGS?mh|Fxw5`F_$>dB+RX5!-2tC))uakIo z;A=!g+lM8BH%nT8aM4|Wfr7JoT}CfYRA+aVsWkg5gDLMBm`_0b$+PgTrK)*%Lh*je zoBSYe4sX|aj3$f8f42aCzlEv8x=E~%UYM#LvKY}i7pvp2BTH=Rv7}u<+I9{VK^EA) zdGfs38_^M#i{m*`!s%yfs0T0(gp~k;8)G3%?ezL(Cn!_#@ z*seoZ<*baB|Kq$s=>)d?yGhH$vEPzx|3K6vE}L|y!5cNyVobjCurP;FlRKNYYk37s zj_)s?B$slzid3Z5L~3~m)^+r*0G0{f-d@2_8yE!*Rotz)A)@`*!#-2HHVZHX~93|(R&?(SPs zt4o@KUomu&_b5w3HGuxwTx~F|Y4yu%oLkMroG^x7F)ryA84TA3Tra z(*HEYR0DsdJF~jXUsnw|;NuIFgf1@-ZOl;x5kS z-Jq7tr>{yFa#v;?sr=6TxJQ(`oy%nI#YCKpY(wJ#vDt=vjhTDkVAIjUC!Csy_MlP~ zxv~Trc^9c?#3qbA)50c#+InF-b%tC@=JBrl4X2bHtAjR2v$?SyDJ{ftSDFq>yhJrb zVOZUW*VsOD&a-K(T`KkIJg2mQ3$%64TuGm^HC|s`=&Lr8&$VNw+ko_&a`y$lH+Ud> znpA=2+NgRL+S&fm?K%w2?vO6UNB`EOMAdjnRXDQ(F{QPMgla;$`~2YXmE^H+y6ug_ z4FtS{OHt40%~1yFqH$0HPI)$OuOiQ5(U>;g2nnR66WQr%15am?UDJpt#}scH@9!6@ zr%fZ4-ODC@eo2U%3VgqqI!sZs&9L+2w~B^J`4_9zmDC>XDkKeDDIPKB?&QW!Iext+ zWeg+E_#(1nx)M^Tn6+!oV{O)bZ{TP|^b3j1vjbF;pF6i~N;ah?ML(4}{~kSmV6Fhf zAB(2>*o>D)zGw0oY_sL~jqzl^dT$Z&ogq_}X+|N)^L%xN>;D+E3wVlT_ud}aTio?O zpYD$lv7Wi)OBftlxzEp+D?9bPAX5c9w=;I`c2o$If2d(o3g(Aey1vcq&=xJoy_6@f z!1Fc7mMz1UB_rQtk#PBmda0M$w;E2(rvd_w$V{5Jc?Ja48m~t|rd?v=069uINhAHFLJhe!@Tf@=*gK4zjD@}Xi3JNz5 zwEQ#5T5lU^r4t)n8Fr1k&nvtmv~+jC_QZv zCm}tItzE8ni2m)^CBZ9s!MvtRmBOV7H>jbE1z^^08giSD>Z+Kzi}1h4s|DxylAMgz zaA{|MTd`OLhUR1l!gLZo6-gfwAG}T&T)ra;sZ~8;B(3o z2WD4?^*a1LPjJKV@BMHYwOlHU0mA~ibU4_#~W zYfa!OfqR~X6mMtD-pAD~b|Qg2oH@)&)1ARQ9Jlxoz5mUhMabBu`FHH$wHdrJ7f(Ym zerJrX18Hx-%FTk|n)bMCKgW@RIdPJ}{ccEJbOEydhW^Q+@Pc+&lP78*@~Q$W>zN8_ zmnvi;9fu+~A=9VdsY!W#5EE2gLbKC9MvZ=sTq3YJjd>XJR?uGyu5h+o?p@d6$d+Or zJwQP@!a#w`yitOTW?!1@;xX;!&OJ`oE4zyFu?=w;KSpZ;6~inK`IMZc0$x<- z;ZD_p4Ra9t)+~*@Fb1~T5`&6?xD_ch?|=Y}&FKz&b!RE2`+>akf{O|~v&fE=yel9y zWq0P%!Wr|S7Ev)RDvTL1msbm~F!OSLwwjoJddgy;L5INMw+&VYUvC#}uvRe&!)C~d zXFRZTQh+m3>e}P*Yt7YinRz&Q-aM`0;FI_0P4)Z%?fiClZ!$3)Q-Nk+w^G!Cj)%?- zBug$y;tdey1;Inh!D@ROa*yt*{q&{8r%;wb8)2xmFmxicb2zIndyeI|+MQz?$-5ml zu+h1#uC~;-w&h!fv4_$Hn(va0A~ZkBB9>tJhlnlx=W*zUd>^3^-f*?ZZmshz8E^a`xz<%0i}> zr1&q*)$9c{Y4{>EiL!!Uo$fV*n&0u1-bD7~UXch{I;?HoQ>_9H9x&D-a#07uc<+cx zjJR1ede39lE~Uny{@ZE&HQWGhtV9T4FBoqR#^2)hMdrK067{Gg#@YNt+P;N=5)Z1m za3dVN8de=2<>aWD$4~V&+*y11EhE!qBiYom>v{^~XmcTFA1G-o>ZV|p{fzU`CS3BM zPkrMEK`FQ0;-C)ihFp@vu=cjW^yamKu{w_Nnmm$+j!^s5|ZG;BZuK`l?tY8PgkFA$1O>M&8%SA!K*bX>r$Bq zDzD3hF(B@^TT09jx6XO2^-7H|2QKdmJWj-eL#lyV~&N z?coeq?2S+0y!3KXhpIq+$!y@LN(TKc);xtDnrFyZH0FM!E88fX0sY+g)DtBsWCb`? zQtg!nvFNngiP{w6@2$_7777BxnpWT!DxiZiS*N|Kv%7M>=Y}Q zgF74q*EsuNs6Pf!NoYn_@T_LmL8ZpQN_#IUrdQmOROge2=q4A04^!*gbBu}BV9Bc> zDF<_QMj%J1w0Wc_x4H)8>kTFGrBKDImU1E z_YW^R=)+hf3Uc6jN~}6BC@$K0h;A(}$a(EbqIEz_%iT5 zw~4k69tVRp3^B7?LC9^jgM(9<+41@Q%5D}=rBdoQlI?3py_rhpkfU2Dd#AOrJkZ(s>rqaiYYTRNS))4T&bv=jiyl(Xzg8LsHncp+5xq}u zeO<#CKsvZj2AK2tQdE|;8ow~!9A;O<5rJG7TbHvKxoYkn1t$M*uJz_9ZrxTE%v>l2 zRv1HG9vh0{*X;`rmHhj2>+PKeLH?%|K@MWwQzUgcnXxBNmcIoBXetJr8_g3Qxu8+!inJ&h!)%>!LCOX8`nQFgixZ5WC_u=@vrSzIo4KY$a{LZ}n{n9?wGivN&lfgr|83@}x4isj{V~_} z1!?`?ba|I`rGJNxhfr7NBU%;M^*U0PU7yh(%E44ZyvN!#&&}0O@|Uv~DYxc)8Q z;CGw$N;3_|Md0D%5zB9|FYsSi*QTO#9k>wMMytsNTC(I8~)(l=gq ze`%%0_+w@6&Ir{3U>hx>v0fRL>9pg>?A4Pm2x46-FShpSgP9Zqaq;)bhSb+h%;U!w z#2ZG{doTn8AKF(I+av?yu!P0|vbc(<8g_qLYTwL;h4n;)B7NhPB92UW*pYUe(y799a=vx5?mF1v`&#y}27dDcMG~+`AiY=JAWv7p2A3jN z6NlhfdEU_38tRv~q{{w}qG#e*j5X*H5Vv{|^9EKuMjp{#*~>^yV7sePlOQ>1Lu4uY z6?lgKsAaAq9r+&yB&Sy3GyWz8+^;-*{Zf0|i-W(DzSt`BN@p@z`|$w4_O5%aNAmn1 zrY(sSTm&fN7l&c@?2dAj8;do{A??>srpPavk+&#E z-H#X)E+Io=LBFK5PankgUq*}@&xy?A{r5It!F)x8pe>Yr!fuDtiJkl%Fr*BL8)y(^ zjZ;WvE;&U12Q!f%-h68C(Iy`z;~Q3(8BN-MuL8)3F9R!BGTfbUp@gYIu!D@tnRMJo zH^)^!NTg=dV3v@ec7?VI9=2(c^4h}GNoPNQZL0crpiH-33;EnySa5W$n#5h-aT~B} zvx?QzgthMgJn?7yNlManhz_Y=s%v8V*IU`QB=3Cx*O%4`+U&(+gC~tW_Ig5Gde=*? zM9_30VQVIz5akI#p`0`P0}Gk02G31M2sgdFL-m!n~fcMNzrZ1=uN6rElI6CfzjelPFlLas3krYo>Jk(eWR zmdc!y>b&*3qG}XEl=d9$G14N2XLSL`5?z^O+1!pG6#Ngqy~#USo3bua;8uE={@iQe zZKHS4*T_B$*ioOnH!R=hB0p_6>=FBHPZPhMU5MdEqDj7LdKiFwc7mwCD%H6*J+NVW ze_OQfB@C4kqC`||^}hkO#9?gtwlvqiM63c zr0s7>n_TW)k}W-2u!a95(O@`QA-BMBZR%j7aRl`p1NKCAOaD0SdZh{b()RrJ$-mVg zcM<6e7aiv*>RBw?_UpQn8XfB)-iKll&>fKJ z;f`iaQehCje?IEbNrpH0LjVdqARUXSwUbzBbK#e%n{udB>J(%@fc^=C#Ch{MxHU#7{a(ZT4w4{30W(oKW+4lrJ4+L-mUrLaaqhwTh!m8-1RH<_xi{yGh2f{ z=ECy}X`C`zv!|?BE?Hivm-nmeP9hf)_9;1Cmm#S>dYW@SqRo%#?k9ZPuG5$3Je~Rr zXS<}(nKm5$`)@&7YK@Nmh@4z?jh?lWJB7A$Q$=Scthfjp3#uNgLPi5X4zZ&Jv0m0tAAxj*}( zLzs97I^3K%*Ypd{8Wf`@&ybP8fY`1C(BPj83~PE)%J#nuvWn$-X@!Qn4Khkx%Zejc z^7eCk^+2ltxDGcfXtdBr>=yT226+j8wi(fzol!p|(`O%7_S3I2UyjM3ED$u^vH=WH z5U+nIX5?H+zW+7ZUm3$fO6F6XdF>i8@1Rt^i~jV2!*-6K9pdw=LMzX}j_5)p;^_kt zTH%&Qq^~$0>7~(m1z%RN?^vf7oNeFBTlgn*L-%Q$ zF$4r=-@p$-AE)ewjeHqYTE|!9<*Y*e42KgZxxH(CRqs!ESd$>Rl0jdGR|60SsBUuE zZ^8>kBBua&5)0O1PnCqBNZTL=+Z2*g%j#3|4Pt+w&0rp!{t;a7a5(i>zzL9j{~EiG zAL`7a2?$E&;3EJy4KJ)PTM^Qe{e?~^GqxyV(f@*GwbQnl&=c_gN+{O}A0Bl2MB%ut2(zOz_ zm0>r-DPyE38z3{BkfmQ9Iy+xan68o8x#H(du-8VaYW;h!u~L;9Pjud>4rS|~CXvac zvHNymmPU@P&()K$To^`%By=GqZUuqY`ki%6sqrM#RsSdraMLDHN^U0AGqdP*oGl%GuPV0j773oR*D%QqtfBcYk!VHy)}m2M*yFy0(%kORFg%-^v;wEUNi-@ zCZB6Rv8M}5Evo){-qXcdcexjJu{x$JQo{;6GWnpGnMw7^Ec}UjUvzHt#*!z9-^e*1~{CMbEdm`6IvQ-uu$L(t{V_rKG> zG&jUAAhdGc&&yY0%d^~>+2;6J@ma!S^bD4%b>MY?BH`b5PDMqm*o?Zc9CPnqF9t7i zmR;_x1I-iE(`ldkf&?zif~!_~*58SRkza^~>Fa2HFjY60E8gHUW2G$Ug}jh#*aC<7o1Ug8^6f=>MdZ2H2%KTULm=nKo<- zz&<)Rc2C*cz3Q{5r;h!sl3|$IuUHuJtrOz>ekC4s8K!sf?QBpX-`b-&`Jl?%Fb(^f zul^u|Q|)n`X1p3-mKed{eu`pn=eO(ULM0DFZ|hK2ti%sgq7|z{madz;)g-oW>48?tzl`Z&oS0dG7Li(mMJTU!sjVrk_UaN zVW@Fw28|4B<2|l?$ACwBBqs9$7dt8==5v=<2muK)NCXAB?+pDrLW9J4?^R(qLV;HB zzYUw_$FI(GA7&MWvezA+DRi2g0#gRH{?8R}3AY{;ZWI0$*BOY7bz!7~1{7%CK{SU* zU%s7_?t6#;5DF~Yz88_c z*fX%}H8V}wpR<%m>!co(5k543>1D05IiE~EhSlUTJ7tBPuKmM} z$Ni5%o{3kA_k>2o)u|*DDD$m!j92p06aJX+iQ{du2M~Wm4TRenWGu?v63*toF&K}X zpx=lw_)|QUaLpg2c>(J-$20}^Yvudj0>$4O1C)Y;z%tR9{IWpNVWHZUT{PJDV2a8$ zS-kCJPz{@+90?4hd=_^|P&|(0mCDGye^hcC%*xFg1jV8g7U{vr@h)#wZqRrCe2Fz( zdfvm?+2B?R2V7hJjSK;LF`v7zK3SD1U!Xn{;{GEfA8&5%9FWsMSQsml?yF%&m=kV? zzbOJ&UYCsd9{ZXwliZYxqtDW03J{puv^R~&CuP+l_=q1-<#NOHWJR(O8t$@A)vk~ ztoAhKVG`FbEGil>C7d`FaG>yO&EYoTXci&cm}qnXAZ4k}g!8Z-rP$s=Mr*y#Xw5%z z>yEESKz>h>d%piaZ#1|r9TU<@l*8yQyRK~q@mW>1=-J)bx(@SmFGF zt`7TE`)SrL<-0=(vmmF!o~AWc+KPHz~l&xXPOq;k&Cn>~!u z?#-L?M=rft%5`y@(8lH9bqK(@yK6wRfc(unvIV5R>S{@;E=S5@BkANyM!x?=lNmy# zSraNW3ti$pu&gnN*AL!`P@h5l;^sM$bA+Jc@pNC74w3pO{3{g$96{!V`-DSj#p=&b zM|&dznHiR0mdB4X;dMIo;NpFwcjr;V*fK-2`4vYec2Jf_aV4y&FhXU($m{iT`p|io zg7~#gZqyLjVsV`oN_wHijZd2}76S_;QjXS5W{8)NQ>)kluj=7_RF0UI-n!wcPTJuV zRQ1xlal6e7VF%Vdf$AlLRUpUT0kmG&w~Ah@MN3;o?<*g{tHf;rSEo;W@M=19ZuFnS z&Lvd*SO8bHeAO9(iRE|!vqb_mhH;ggmg2n(((p*brJHRC@GtUxmzr=VCURw#2{Wj^ zA0`0iu9@38mI)KQKWc%&9Cx>;aDxJtRnN1*kJ@ta3uM6#8-DDt1J)Zjgb;kT-y{lna3CxLZ9Gxc^( zDB0&-KT{4NKe5%B{4Ay-3sg5k3)o%s^Py&FO*q;`KZ{8d+?W(E7xs&oR!=ZO`4=%^ zkR6IF?|&9khbb!Ok(y(Ee}a1Ho88*)IK1mEC63MM_w5>3v$s7boe(c9(FfIfUHH`5~PC5;1%q6kWflT)ugl{pb>X85>qtz zrVF(VDDJXD^qZ)($KC$}@o^_?k5~@O5H8!%Q+?_X3`OFg`D3qh=O@URj)9ZYpj-@q zFddgpkfCgVxIY)ZFi?R%L-4!sgN!Xd@5QzFLB=8s3q`MDm1=UELw=lj8)n55>5kDQ?ySi$EIX1sH+jT{H%>J~jfze2(+j3DpyFrN2F(a96yg}!IZEH8g(w&w57?TJzu zsAQzb(x%j1`YKn9@#8$kj`ToopH~0vcHQ^E>Hz@(xav+>CX_xVeZ)?3G17xx{RKswuBVzkd>=iR!xr)3}qi|e#jZU*Yq2C=VdV+7*6-9n#rW; z(mhW$g>WAM-1SS1SHsEC3awaanqe2fBC^D$e+jf_QU2ob$Mgg9jZHoD&V}SKQfjr{VQ*_n6>uOoo77XblM<34EKH9Y*_bTR`q#0I=VsKP%jks&Mrz+9`_8H}#{?s#_?|Vx%^71TdN*uV60v4ovzKI>E%-y}ZHD_2|MJ=M@ zxN9t3gLpHsESed!Q0>6_y<)L@V9dEw@-#;eKRdah>(7r!UMi0pGDAavSZ zdGY3$&Yc{loge~OH2C${L;HgE+sBU6T@MDFpO*Yekg4F^)h#2+fxb=bJ1ye*?HlMa z)VFTx;c9|&oZAnT$@_i10xnNWZaIQci)o%gaV_)pO8lJo9DLT;J5I*KsnJdh(_`|7 z*K3QNv@eD`Myw(BQ~*@-`{4>X&sjA0q*Una3sx?Rj)s*WZnq^u56hLb$s(VCg`0V| zPZaNCrCAxi5^>#GC+GjW6;o{NZEQ**w<#h$wCLaqnjCdubo%i|Wpn0>CKX15qMFM$Ant9A2UrUbKJpTu;p7sG@h}EHsZdyfBvQ?vj-&aI1$hsp|xBsIJSFKn7l0C<~-S(0H_NJ4pDJ(t3Y;{aMuQp*OqRFSHIL`rh zp_^i%<{KyM_ri-#H0d>y&sjQhJjd5nJOkyg%zBaHs00VA*$>%r@9fF>KC)6;F6(Q| z_&7Oi+`+mYsr<8G{|!`u4zcV)s(`nrKth+RJ-#^x+igBkpq@PZT19A5{iSrY)JuK7 zTF_}sGq$LU8T2vAe=7h_gM-IL!Rs8>cZ62%16QU=hD$p8JpE2s_W=utEpk{~m|aF6 zEC$!LhhMebuq$Z4bHGfcKRS{sCr9tVdkH%}-WlV4Bg3=+*OH0(+8K5ZWN)wmuMRl; zhH9->EM3}2qfn5@nxYhQuxKCodb)1LI#MsRllN8_qC4Bu{<#5wB|}0E4PFD%&Ea=8 zmGob^T>#HqO{4c$@C%EVu+rd-Yzwi+jd=DgbuU1$zjt#KtfgotkGT!S2NoI0%>w#F z@NzO6u&H8;Y8qjV+Jy?D zX&VVI>b$G|j$w#qCW@7s)ODk?Lp?X4qCA_sMHy7+3*c8xvI$My?-mWSoTV`4|7R|}K z9AJ8+_a-x&=+HzOc`zDb7b{EK1rM;hUhEKT%z1x6hhThc>Z?t#(GtSS#MWX~}5a zyYzOR8p*(`w{xb*9`3UndmAT0UtVfs_#p#kljOpiMjlNI%^A4wkAPbcjh&u13K}4I zs>zZ4!g5aU?%`gL64nKpc2AR{N2>?<9PVYa`R9N;lFlYf?wH&%Cn5?l^Y@?3PI7yrXm)n$I zFY0<1SslvIvoNj6^spC>)RS%!^hXEo2J>o~txMB&_eJr>#`0LL68o9 z?*4O8mzT!eh*(F;!~Fxrk4Hn(a_8qpD(d+bW{g%YD(J%YV7>n@W`Y2%UxSvb{mBfpi)o_u=aRe{wF5>mOqG6)ESQwPXBfIYgkf; z@ie!8m}a9pn*2YuaLlsj!JL2u(l8dfzcr5BdN^=n+zTY8cD1w3&2$Jbu8;oa_Rl_Gn*thF?{~kt;ybxl;xZT*RH+7rIWOD3U-Wd*sGFH=kJ$@jkM12O$in28D zZ_vX{JzE&gX6==SFJj^n4Y2W zdyJOie~&YiH5-!}t*z1xV=S9;*<~(F; z-r;N`EjM!+17roLX0m@ZOCLAA`Qt$28J=gGZsyXTC+&JQG~BlRY33rf@gduQ9eL%K z*Acfl`H2cx`qRp7sZShkg!}r2v)g@N6uqw)tyOfI<*W%dr3?bN6Z~uPDJg+gYH358 zr#5$I1N1$LPTuj1Ra2!aLid!-VpewdwCwZFuZF%>Bj+s2T(0=B`z0f5OFO}z(02j) zZ@DCdTTUZBgK3;A!}*qoTi4CY%3j&qz5i@CN+K|*33)@E0X+v=u7tY0XZ`N5})T9E9LA$vF3DjyAP;oZtB@Y z?1}5kNO0ZGt%K*0#$&IC&K(rIBgj(a>fTud%*lzx#k5@P_L61tqC39OmOxG!X3KK)f{PLg#cqp0e}#tE4#n0j(?Zc$O$k6sfKaz-5v2hx2Fy3*ibw46n2UE(V{^yH?(@yN?#xiBC@0@h{pD&^m z(lZE8vyk^7B{XFT*ygGU_5qb~0m!^@#$Z?rtoK71=hX&|9q5+98D~%hIYF2_{{}(~ zaQ6=&Bb#6yU@~$sxaFu-2T?~PSCz&3Vw%r@ zX~jesf8<*71rLyEya_nW5QNo#qIdNS2>oIYv$SY431=s*d_caC=Ce7#2himD)sGn) zyNcyHnG@3a3%qq?<>UY-dSHq@ijqE6>}y$PPt+P3g@sGvEPR*7uF>Sfx5PpIfwha) zb3Zti2;_3l;(nyOwi!}weGX|Cjzs&3a2|T;+Lj|i342W1l z=QB71Fe4jJq^2MJm|9uT43-`W^Yv}7{_<3c5IlMLt8EUa4hK-cC%l{9SjH|S^}>fr z0n?E?RJ!lH(os!K1BXjC3Kr&byy4P$dHN`h=V>IvYT`?ksv6*NvM(%T+aWqdIqiz| zwij_fwlKmiXW%T{lLLoda`bel}#u)h2|wQ5JDWKee(J zO~sX)q_sKDAvJ+#xGmxgTK;(Bt5sx>&$9Hu0AJV))7y*j^Hal7Cym?AbHq=7O6!rbpZEaJ;dH z7+SjQ1MJReZB}2Pwj77sFu-ZH38lfB2KNao;4Ci8ck*@#xDQhNrcefL0Vx(f6qkm$ zCHu2T8-xHyJ6ALdm-iKAvG5%_usMdZE~_a7P1^sZN54@Q)RO`&tbH z8M9sTd|m)D=f{8OX|y6_119kB~5^GyW}QUxy4 zabL;GC%OMNRHiNAKY;_T`dvd8L-rpB1%F`6>^=GMU=W??7T}*te&@n!hn%9=Vy`c) z;FQN}4}j|LT#*be&lw>d45;AapSH368#1C9te}r7J&0VUK~7n$z%CBW>+J3>vD{&1 zhChX)SihV=Mp;=}CHQ`sl=9VfhZck$Xk5RyYOu-$+KA^WVwLWrX zX+dUY!C6UMhXHaRh>ZJ-Fn&J9phtVJzxKHvZ8Pa&4w`xO0 zp9Ie5jKoswQrI3Pqp$yqu_lYFfO6tTMTRU@0~Z$~D7dRI01G5x6WnIY5^R^aA(gdl zXP3szRoj5GFdgH(PaTET6qyNWz5frkQ%x7)$p_J3E#sW!Y+SiD=ryen9qR1ojNri_ zixn96k9}<=+lNK%XS_H=IF5lcZWK8`ve62Lc05<0ba`)UhK_&it*ep_U4` z^4}qDN`S^5j19srVjOd8epre?JT)7fg#z&y|K#Wg*H}3+g8c8##}Y=Xp^=gHk`((p z{_5r{@b__)Op~@3X#;gbD*4QMuq7^WD)LN^G7gUr?u;1!eJEh(6rAsKfW*hrJGx>{ z69=>4YkL}d(MNl5GS9~3-1|G0SLQd*!aX`mRW&eY3c8u0bR@dn?~pqwmp3!B2mN-k zKK?oQ|15~7#>CR>1-rSy@LK>H(=fpl@Bwxkh=6HD+|CCO9nsC`3TvpZRut+$w6k7#!M7P%-IXR>K-SgW+WMk#kj^Hd7O!s^i19}al)|W3??0smgCN@?fdaajm zJGXijUn1_dAK;x$bjW%VY|F6WSD7ic8?bTuDn>c;gsN-w@C`VMBWy0)0BnZTm7$o= zj0Xd8iG>(T9)3w?Ue)E7y&P4SohO{K(*}TT*KGt{_`B+0ltrER8@k>hAt9pxcIe4A zKKgafg^H7sxE=zFOZ>3csKw6NSw$F&vJn|98p#4U!xzEkNW+7{H`IsCIUHi)ol653 zi~c-EmxD~&y#cF)H#E|}rQ%0Eu_3N{6Cz*X8n_ptAFUb7us!aPhxSiBt3I?kdxirTs%S{@z1uN`Ly^s3EAR%w}kK zc<3Cx0Ij5g)EAd^KP5$%Fpz&~w0(PIySpMY79emgxd&K#1BdzNMlZD!H37eS%j{z| ztLm@vw=tha2^*tp(XJ)jA^Ab1Hip)$I%7-+C>F6w&Z|_^mzLG+uY6Z*NL|*dZBN^eoFOGC4qji;7R{5rE>EE_3=Tt7YyWMu;0J`H)WhL z|9|6{8#wrX;z!9ZRDu7$iT^+8|1VR1`~mpoXzYhFyg)eq-?+GtupiOWjmCo2F!odD z`ri~WEB@oye+na3h5yI)(rKq+2i8c~x^ca&c&-0^&5b!_uOG8ytl+IPBz5a1>y1zU IIB@3w01^E*WB>pF literal 79298 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2688x1242.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2688x1242.png index b9c1dd3de3d456b04c3d3d2fa4c7398eb36f9e4a..8f45b8cd10b9b75ae6386ff28b43004472810d49 100644 GIT binary patch literal 35333 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 RoShD`!PC{xWt~$(697dG{(}Gj literal 86236 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 M-Im??hIr^d0dVh<$p8QV diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2732x2048.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2732x2048.png index 3718f6bf8855bf14b86189bc827e11d3bc343bc8..06f054b7f9d7c0f125d410a3073821ca3fc3bf8e 100644 GIT binary patch literal 67100 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2778x1284.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-2778x1284.png index 95929bf5c0dbaad53174539f64a09474eaf801fe..4144f5415ee3e681ed1f01f8e0aa4978f293a638 100644 GIT binary patch literal 37048 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 C+Z%EK literal 91249 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 z z@-X(jP@TmfqaU|Sc7*c0+Vfn$o}*0L0$U`M;Yev=HR%`$T4`S&p>ORMfAZ=zAg+^Z zl3S}IXok?jvRh!!vnbz%SZbA};>+)2?EKl*9R&q-ZSNJRbBJ2chA1gc5&{}xM|C#~ zUo@Kn^2fRZhkh||M7fh&$=?)Q?K=NeRZ-qK$Jm{YUfl783}TFyD&9K_IY?I>_NFgz z&K6%&h+BZItZD$=mtClAdCs=B;}0}P@(guimhgS|bwzJi;He|aLe1di(t4-#;(lfk zbG43t(6;O+N~=`1ka=ALY&EbFe2pPa!6#)KZ({vx#EJ4X&;vKa`|drVYs*ixDq&SN z;G!Sq5ZX5dwJXF~tkNW7B=iv!woXK|ISGH7@LQP-RMGruT%e9fdXEG|jDvOtI57~h zM<~5r#a~rbkOl(5A{8X18fbR%TgijKC?jogd@X&iJF81LC?^QduD0%e-usvs4 zck~q?5B3sTZ}tP@u#6uJmqC}_lMOTEvyk35zj)fZsMy$8!q*VzibB@*b-4J|bx1q~zHS$XmfY838kryBcsQP{{Zfz( zzLQcSY~-PzRh)bo97qF~AL2MGh<|(R+k1;FH#m$`@+r&(e!U!!+*QVn4!mUNCEn{1 zD3!Gj%k1zcqHGo3)PHsTWMl0;TPx3N4u#tbw|bPU(0b>bZYHZq#Pr;^G0@n=)3D#~ zV{#*bj93v&GITfA`!tHVk8%8ZR$!3It<)_#v7vJ2Ll?lk{EU_{{;CjPL$g|2@>mY9 zvI|ckuSQqGFK@>$lKRU-ML?y18v;*Hdjw;Nmk|qsHrq-u^=gZs#4h4L&wgPVVJXd@ zkBYnS?eM+Mo4dwKXwK1>y*!RlDm!nc6TO(}gP;jVVb1f5;e3n3iWAMvXh{b`Di93# zo6*(#p>J4?C647I#Q;8e&#qk=r|mS0Suc6LS-$rLT<# zY-jXqW*gzt`8l<#tL14t+$akQPv7M1;zuFsNmvnt8umikzB}s#As?Cuhyvkd=$Jf>c1gW|qUG>3* z3cgBK0|`-sSIc5Qq6xn^=0IJi^r@A6es-8TaZsD9ig+UVrNYbOj%`uSL16VImK=Wx zzj(&ex`N^ELAva>l8K95<8oGy$jI9iO!DLl7NogFi7McJUThdZbjCc}4nCh7MAqs( zm#3jVfO@({TfmW2xg-* z*ZG6(><02|{fSopkJHwO$4L^s8)~h3U3L3_rRB*W9relk6_Y1gwp$YQxQ(AHi_lOa zF%245kRk=_$K1O0o*ui9Ka!oL=ghU|sv<8>1$D@j$%kwJh&w@dy3N|F5-7s#9T@ZD!%7H69~-W#Nt#l zVo#C9=z`*TDi5slyn$Jr*qhNPi)LP!N6=)dME*B|(jYv&C^OY8OVUsCVo%YwXY?3f z=u6~xq3%dK0py*2xiIis0BINx!W4|QIhv4Su1msd7ZS|Ir$HCCF9^MaV2AWns!se& zcWI2>CUgy^8W#RnBA1)8@1bk_I-uhUM*8Fpupy#-83rr|kd}udtXckV!IQjw>sSa# zVl;ytoMlo;kC71K`T^m__?k=eA*4l%zU;|k8ZT#H?x&8cYMA-xAo0M0U`Vi)ti%B3F)1euW?i?H+&Hxh{g}3& z9lXU^FI0gqFM_3&7*$c51@{IM0eQ~s@=0Pn5pmd|)^l-yZ zd(S&6w(Pi+Ga$!#3MDFqr2r1bJQD7`>912Sio84kMn?n_yt=M&v^p{g);uC{_*oZY zKIYZFUT;qE&!gQtE5Mkk3n~M{r zT{9#xugXRnR1MQf574!x!nK)hjYh+B#4z7l{wnT??23Z;z!pf=Mym%o8D7_CV%SIO z_(Ko7yr+*cEsGw(QA=88${709borGqE6M&aQ^5BaUI2Ecd>kDat<6J!VNta%s#WpF zB_*UHlwwrKUZG(3-Fb8$tKl@H^rNi;(=EFgaYezAVR^8A;`aSrSv?ICUc=}ww)rum z!cfCPJuaP~uO3jo3l{0fS; zdQaP9Qf?SOeh&XNF@=k8kJC8E(a|BDEW-^HF{u;uy~vDxEwH3^qLI_* z-KM8dk&f-bU?!M#ujNeWd(au1pitGBkA|eAh^b?=iKE|d41Pe>Z1=PojT2*0XFm+( z*HUCL@x)t1iw_JIQ!9V^6(o+B5cv>yodaItS5k*IdA?@`wb zDNNOPUxDCtS0hrr^|OPwSF5)5`Fy*Bjy9f)_HtUWLN<-$jX-ey1e8Dxn+q3GKdO(H zbgc$k6vldZ=?zyPS&w!$OqV-0n8$iQT(!mR-0*!sPz_tFAxf7yJVaPe2`5!1wI7y2;#uMB*u8tE!TQaC?5_{*58vYLHZ z__mj$wkM=~Fn%Lud8dyK>qA_GpL?@MaZz)0AFda}*u`aqTUh#(BZn-|fN9`RQMZ#^ zDwc=A^bXXTCf&^&AzAp8O`icId#ga5o{r^%Sr=~8fY;0=(*S>=>VzV96$?ulxJE z{EB_SAlG!vgDgt=b*Xpt^)UWshK95mW(83C~(GpPpX}I2c~^35(4MEqhzH_ZKh-fjRyc zWNG{YP+1A~i?R}f!ud0<-lwGV->%(f4N}yx4^p63%&#`Hi&^F~Kh{=_iGgqbA)cT z;ZOJNQ)@1tTP+8?OH4i=nERhTvwp7$j$4rH7+fIjpoAtjclXl|e)T@(R_6)npUBYg z|9y0Ne8jdq=~er{iv|>+Cw&`uI^Qmz8ocj!`PIcL3=iu6{sWdax!Kp{f9+WI4P4JP z{D2(m*WjNCtW{4>PoEQG8^qL5SN7|Y_o=??-$Ed>D<29Wp*R2FJoEcn;{QJE`c!>6 zEsTE}!-Dy9HauAK>B9N>EB1jWVieRMd-n?@cyjNDPFuSpZU;BR$z}ho<^xwv31)h_ zIEL`f31hpSuLCS0?2?(we^ddGAi{mb!UKi%zXW8=TcORTHA4+?w*J4g}auxNVRPv4!N zmRX+)Pt#o^XT#_a-BbUe=+#g0>GN$rMOYf>fG;soh=PpUUtk5^=k;{s^18@#k#(+? zMYrC(QWRk@`D%LiBY$k$w)d;*c7u)QQwFy<9j3pn`+K(N^W5)K>@6z`zXI=n%KH7M zkooBz`Iu0-|3{5efraR=x!}Uc1JbNp@nY&*Yf$91$KCteZ2$N3E8s<3C5Nx?tE`IL z_UPB9%+Hfk|NmpY`W`%S;bH`_$GNAcZ<_A;y#ZlsBg4gXcCL^qeKY5kBkq5V0fW=R)zK|IfN!p90<;8MJO^ zsqfCz5A&S$pY_#8e0p;E{511>x1#^LfeR87$od+Pvw=XVAKY$-a7KC1a2O32ctDJ% z33yP9<`q~_jE2N$NQ{<|urx3l66A!05Tv;S(W(GhzYjHMlm`pY(U8Cq5)((8t&orz zt%_kOgy@iXP=9NyGpH}bmiYH_&_m64YGDk%7kU#x=jK4cFGKM8o)DgceH(a)1;TrA z9K0J6s_?G_csL2dTOfZ}4=N6%z9fV1d4vcw)bZ>_NL}b3!Itqt!eMxYBlEPU#bwob R=RnDd!PC{xWt~$(69DEa)UyBp literal 93178 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≪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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-640x1136.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-640x1136.png index d02141646206eab130f47a6f79ab01cefe438f39..2fc6504afdb8af13d4e4c6930b7a2e6dbbc94c6f 100644 GIT binary patch literal 15332 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 literal 25904 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 b0KV2CJ-aYTJvQ_=P);4!IhJ-5>;FFh-^mic diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-750x1334.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-750x1334.png index 6779f9696d3a83eb43bb34ffc6bd589218b7b991..6786ce815de8326b908336a000f6277dbb3ead07 100644 GIT binary patch literal 19095 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 literal 34349 zcmeHwc|6qX|7e}*j56A7`rV?Vbswi3|*$R`CC27bqNu?-M)-0nWIfPJT zn6V^Xd=-;`oJ&xMXnX_un zfjv8qyG0K)O;8k$yJM$EWO|Yi+szbA{TgJp|F-v^3Z<3n@}60~Kt2EMFX^3etClW_ zJif*7EvXB>ZDt5`lw%DwJ7_`|)R%aqC!%bLRipRkpaI zAi(3snmcIKf;kA3=!bNP{BJUI#lNT)=-PQB%^Ax!?X36?`hNm*a0JI`i?v*E772rZ z;OuqwE7L+J#Hs{d86THc6j=pOD*vM_^eC!dBV-bhg+0g%DQbPA% zxtNCkuw2Y}=Jna!5$smaTFY5$Ih%}y4CJgy_}?)J|E>hgx}US|=WO8zs(1VseXRd` z0(Jdg^{%Yhde=<#@BeHLdcOd@LyKsh-yY8WrcWEmzgC2n`BsddD$yK!v8*o^gU@9R zKPc|o<{@t+^5;`mg*{8g;`PX<40ntqkNNj|pCaMB_L;r8 zXu{(wLd8mvZ>K7Y&<|Hm&SvuaCvPoON%B~E#oCK5=}|+gv(^F-|J=d}lo~k6#h*Q$ zKRhY--g^$wadN;KWEnYd_4FORy2%0R^|!(}%jWYJBmo zNApLFX^UtsP#G0w-1poJ?_%ZbYCc}$rNbySMtY4+q)#B~p7%@JQCiAdoR@b7MWn_m1UjP5xnU#eFI6&NkIa%7!5PP>4qzVF?2DZG~+dRLwPD)LQBA zOI-S+-qdO2Z33m{;L?J|?B>_z-h)z%5}hD`f-TtxsvoP>p?8c`WRBr1G-*`#@&m2E zgQ~Mn9#T?U@J*9c_!}{Uz6L4#!h|3KjB-HMPII158aECon9m1SIbU2L>4DiXZqdys z*NFmP|Be=c&1fZXKCcd{`6wa3-269aBfX%D!a7D0_O!EX$%ZIZqs&jbP(8Tb2`9@h zJy|Jye}Y;X8#jFion_vPi5h!0RZoxxS2DmEL8b6*6)0PJq^WS|^SNR?2bA4qB@w2E zv8TH$Ju2k~UHs=FFNC2({UbRuy#VW=dUQYDcS^xCM=;2mx<&dNfL2vKgB+jceK{xW z^7UvSEJvV1=E3l5gfd3Vj8OcLteMk0)a~kmNEx%P*m0ARIf$*rC}~he4|XLN)~4k? zr#gHcEXLPCD3~MSg&D(X-b6B`p&J1E)`JGs{%uj2Sn6NX2s1!PZ-GHa50<9K^ZayGwjxU;;eRwol}88;aS8Ub!>mE{e3Nqx(9%(v(Hy@8qlrn|A;ovGvQ zpTx*;)R0{jF~;hR?vA$(Se?D@BaPH?E|OtX>!blF8=&3>^Y;aXWX<){zNevn1#?wS z>L8cniYC{BEia&cgBvnvUKdwjW_2_|)^b&h4~6x%)@u+KH5b{phhD&R_EQ-w!Hv8! z86)wVn0_Q(aHoQTfJM>5`^iP@{XhT@65&TO_eOfGMG%k zn;p+D10qD;V;@3nOgpZeumXWP4v>s%46v+uWEhlhz5dX_WeAkDI_GmmX%X81LeLn; zDNh0nM~W`IOYq)0U3?0nMa}yHHjDI`KZv_G7x_<{IL(m2bwD_h|X3Q|O24|8vzVATrHMB?*$D|(m(ZuE4mB?h|+?v&n^zRgWau|BB;+r zRRMv~o_r^U(g{P+P$GLhsd}~r5a<}vA*b`rzm_T99qD2$PMIP|`NgrWy%{!Qij~8M z*soAI(?QqWU~mwJIE3Eb-yiPBjDZB!K_sxd(%u65bCWb*L<=|X^{%7Lm^)OM7?qF~ zyJ_xH;)*~1IAkqS_Wb*TdKrr)-j4ogRioTkkvh!p3UR^yArwFAW)9U%=ZuWX>6QQ5 zbp706F^r;uPuWdNya^&0KvPTZtW&J>F5B6Pc@I&7a{;O2+ECvV{yRDJkJX4ZB`__v zvKh8Sn7h9ruhvbqyrNxS?qvah6coIeTOxlmz1%Wh`RX4+BN2CPMY};(PLH7dM0Fw> z@WNvoq(5j)8jV<^AHKoh55VNl1Yd)QOq}*~DtOxKKEp~t5Pjyql?J+4PAq6xLW?}6 z?q#zpJ^znKbUh%9^&%^@D=2cJZWD~n738)i_k;Pw_q$t(&midv36BJq+V`PTmG9$M zgpY&zs9Fpc4QP&~Px6)-t~bz;0qVszMnpaBE+QBIV$1qNDAnMi0=aFCRA2^gouhdy z^HPWIrt5wSyyJDiFaEv&_-5prsLPi5Q|jIestHdrKIqz=g|8)xW%>W}v`qJz&!?-+ z6v!6#RoRpmv3El(y3Sq$Q6j&h#LVaDQ*_V!ftEk(ejM^Dcuh)>-m%dJw?{n7QChbGyi^L==L_lXM7|cwB%A+v zuB*`Su-uf**M9FS`d)3l1nD(o7ofBKX6W8*&ValOUIj!Ck!O5}F5)kR_?%LWK>AYnF0)m;BfaTgb7+#%W=`elq9qJ%OWM7_? zu44^pfp$5|`HOZ8_viLy1XVvc*DQOwruI~uu=D;oi!bYgnwH@=ZuYHe{?}m&h>f<4 zNx#~$d7Yk@GAC0GxR#{RWOTH^*3Z9gJs7CPfb~+%yO~zIaXLIZd86(07SFJ= z$OIo)A)S-v^5lWr_Bq|BKIop;nzgxC96!tO7AAgMZm2DdH{I;}kSONq5^Zk@z-U{} zTYj0&?VBR&Psxvud3)i<@4Hq@;VsJBCWbOs;MPruW%3B4oe0|Wbk89bD2aidR>_>p z+KRsmzA0aboG9l-2B1UE{7Q?sC5ZCy+R*H1W4%D{-EL1}KM#9X$dwA%3Va&g6CAy! z^k4TYC}5blju~@N*e?%E_^;QW6W%$_Qvp<-{@2Eq5@9j6b2 zZ38H2qMz!#*f!R%%ebtia^}G}LdOfCiE;C! zt2aaOb?L9v4=yh#Gp$^NEqQ6(@uBuxC|+=oSNRTAHV??8pGrsD5r)~-N(BUJ-C!BT zqd*&SA%-pHiDmMGRe?SwoO|B)=;KIH8)napwBAvV%bIF1$lAI7UlQwc3UQFa&eQT` zwW?JDR6eg`MO`$Oh~WoCbltdGBWtN^$6c7rn#skI3sii>P%o~b@NAJ1^u5QCNsD<*COahbIexmrFvb^e=7N? zjaAa*=kIZSZi4poEk-%TrAI{t_+lE^->|SK73h0hNjllww43#$twjFDw2V)i0u2Ea zE|O4Cdv4f9OxQoTENa6r%Jalp;5poz*>VnGiR~?;Oua<){>nSD26mVOMn;_{%BBoe zI+*gOOyRggd!KU<(+3ywreIResG+?)dzhuNQT|t5>obOn%PI|b=xowHsTl0qnQiVe7atxV383@3&nd(Xel+6NHp$s`xX0pbZF@x@Trr%p1&@o znWF3wa+i0&a;!(I2WaP zd3bHt=E-5fqlGbYM8bXWMv^TztxU7robv}OEoy+%nBvVN2So+5!w4TKZ(`0Q#&~=4 z$E6%nK(O0T!e(p^uG3{F@F$ivn-~jtH%@nHk9B88PVF&s{aQaZ(a!ubB!w&U7@gP@ zqX)TRR+S8QdUbLt?Fnn-ZhPPRD8oOnpG`7AATX9SLe&|!PNlyv_O{wOT@fZ352EoRRhzDJnSD!? zVnIAsKi+yP=k+v*N2~3<-Hw@2J>7WJyHDnAb`+!@9TX znjpcrR^73;U$x(~g~2^ zbBUX@Q&PvaHJnYnR!H;u+VAljQ;mT$YN-8wNSMA7bjXv=GyEn@b@s*AE^c4sYX*qC zAy+`eR*w}p*?r&uZ(F&ag zB}GQdS`v+}VAjk9fxl}KDP{fij{T;%9)ZQ4 ze9rE3HrIA_Q{4o0w08|-_^Q#bX}21~)sDla<<<_tyJKTme2#~kT`0byWgsAJzPh6A zXaBj_!DYNEL7SU<+D4MMI}aVKwnh9Ai+xQ~!RJD{_TaZ)%$o=ttK~Lh9ClZ%q5$bi z&!Po4mrs33OWT;pl=fcn3&cvO??qj0;4T*G9=kE3=uU{sQUWx3#vK+U zsn-sFNNeM+dOar6R>2wzSE#IqT74FYUc@`>Q9x|4P|hcH^Ih0U zHsh;@Jc5B*h2HH$bSBl?-AyBOE8TL`@1GL=u$x*-a38FJf_@r4E|WMC&aLh?_{Szv zON(J;rw%=!^{1k}0sS6V>y9}e78DnE)(TcJ{3CX*0LrtiO0Y{4%TD%oIyf!)?2V>K zuVr*qIeMw*g_I@JTYQBa!`74UP-?P94RX*m+J|*6ci8ur^=7|g>s|;DQA^Q&?V!h< zHpT}jDPoh0V~)&b-~9miZoo-b&NP#S0~C9ARxeL}|D{VJJ!f6Pm->Xl#%GMz z)5{&hFRSqPW8WduzJdchnz2Bj>WdSLW&(9)G59up& z)yC+NlH%fdQ%?A^NVzJ2x1>dbmbW_=#||WCf2)8Qz;rF<%5k^3p{`Md`8b6?xT|f` zpP=0A*t~@Nui@MiwF(%#eNrSGg})g9I$gSZAIZ&)_n@?he+PYWK5&?-n$NjoCKw(U zOsEyweF`t_9|J2>s&C{uQ1_^4;fs_;RBS9iWg#=tq4|1MY8LlQvvCE_j)x9;cvXD0 z1%xwk+tqo+#XYpE6b3#<-rL)nZ`-0ZNd4M8MQk=EjXYv4A=;UJ1&--<^BZmU#-2(d zLZ^2+OuZe5>3+V*&5m0|tuepN1EhW?RGQv&@PHQlhMi%J?BmgL)2&vtV*b%%qxBD5 z$vyy&pvF&&!@0xvXp6gal(ArQli#4eQAG^*j91h1Mn9P&XeNq!r8PlCv-|A<=$h0@ z@7q~DYYvs9DbWR{_oL4rSLZ_KXF*kgNC_%rENu(4CFKlaC&S z^BVUih6ZVXO(t8dn8kQ`2OtqUfPd&=$7~_KU!0#8v~uFKkQb))n#usgQ8i!jKEtNG z50W-F#n9JLg|F2aDciNmKLITeI_@*^=hI`NaBOSmbJ=uhiV~cR}EHB?1JWavW>ltN0Z@<}QApY2M5Rx6PD_y;7*kLN7g>}!l` zkvYQu>p}%Kg{5F#P`fobO{b`-&*3E&WNai$HkzYw3bDP_+RlM^{tg)mE?UGqeiNpu z*@4l+w8l-Wa9(YCJUjKFs^}Ctf!blX+qQ!8rarzh7N^eeizwWPhHl-Xb+*KjiZL&$ zU9&pg;^k#p#LkHkpg<%`k`??lT)HO~;ug5nZ)FmnXwZ^?w(+>{RjYYTs);Z$ta-W0 zqtU||Pk7igWC{|yHNAi3bP|X)wU=_e+)RK)vLqX>?A}ETI|l4z=(vH2YklEhehyhc zY;}1A?hg%-Jqe9=djGq>%MFaeJ|R``h+ZMdU1giT7GjgwLGM#z`SjPu48!^@o(@N= zV6QezaO62@$7mg=t-)nmv*%HMNg7GcVP}QqA!Nwa1nqWydS63(<3?7Z!xA0!nTOPO zzY21OgMO0pvFX}fi=r-Bq)~>#oDgS`_G)oi8wX9;e$_IpYIA4d@EaIA*hff=b$>%8 z4S(bO)p%?liPrK@zvFynenjD8;3FLLsF|{wm?rdppyh4OyA!0IOmE!kd36TQ6(bdy zE`60#@_(A2_xSKWihYX4_mwLqs?1z(0$h*(s7RluxtyDJXaPAU{RZqelTy1Qp%b2gGp?^qs z2EEKSJT{OV|Lvma7FMU!PH(~HO*f92H6E74(q0OF>(dL;d8M;um zryXV^i_72c9d;D1y4e>e3VasXAYgdR8;&v2yGN^Z{v;J^`y@TYLEJPN z!31X8{F#zkys%pFTGv@*{{>w;W3Uyo`y?P=pG4w2`iTqg#UbB5i|F|B(LJ`K3EHB) zXW_l_yHA0=!&K8Y!p5!bB9k@~yPJc6Ej25Vs&qRmD`+J@_wP)Atf)GM;eoSXeI7 zAm50^!QtZ|VbRad)|1=#R^$W+!I>P+S&<-5n#&GX={&CPW-Y}NW(?-cmPC=*j>UWi zeDJBv6zflZEw;Zi885d&*ak$heXRt0zu`XtfqNC^Zg`7sdazGSEjT50?@vh6R1kM! z6TG$no%xq%^U#S8x``jf$L%#@l#|ys)1nIabw0SdV947Nw#W* z0|{F;i%c$@Kj?Ktnm6PF0Djm(AimVph^^Y*<3~+F-uZjbI=U4yG=?#f`cvmmnyD*8 z>%e>Xv5te+59?2jkSEG>Jq4LVBjF8IKk>w~AT;kVg`Gt>9K^IEDT<4Yuf8i**+ zM+?x9dl0J`L(K|$PbL|(q-CK+B@%du_UFcj1@O5J}3g{e|7sTPgn#9U?C(W7H&Uv(azQ1?{ylsNhru0FsKI*N&c z47XuSAW%#Pr_`U<04bbSc=l$;PgFyvijjfBV~W1A{)+ePofrCl;@sfYNcds86TCVW zl1$5|>p_sAiTY(rgbzDw>aa)Gs32zi6>Sx6>H$Z4Kl<@coV0%m$EjjL3_!9Y2{PHK z8)KuF&?J(IxBP^Sod>wqFh#?TAnC?6vE`Hz*4coEyk z1KtYSc4{)<2Satl{)~Z_C`g5I8?F>7A3dP0;unQ^|0LoXKi@~6`O{53LC_mI{_P0( zao%??$Ug3pyaAG?&f_8DLe1f=!k8rq+T2KJ56D950sqN2F2^y$O#aF^{_JD@QWMj7 zSOt-#M3}A{gUTqX26a9Wf`Z*+50lf9B}jc8xz((xMR}VDWl?V!Z&?#V@%>4l;^9ag z421dvWFBND0LZLHRpAq%~bG1h3Z))P9}TPK{&DStXTYtM$B}n|l<0 zf=VhX&kxg|gkQzZJX8V|WVy7Y5gM}ioQay;QXeu3`$4&*Ny{LWj2Awf1eX5HQTZ4> zNM2#Wt{dwFE~M|Pol>RB*-R5+12>qX#yHz75SaDJ(1!C5OA%*!0q##SJT2nU<1R@* zI3pp|4ji~ruH$+|EG}EYxvjUglPH_fTY0RHChQ=nq$+AhiG)tXd`5j6fo~*XoiFwA z{7293Z4^J5W~=fZsa+rtzjAlc7xalAFLBfYM5|hV_j?+JVJ*xJb*73qH?%4yTJY1y zyqvn?RWcQ~C;kk%0jNC*n;6OR9*bQXJs@ZaxFqFX`{q%<8JE$2)Sj2J0a6cQ^4fz) zK|ahG69GB`g7}Aqdv-M*gX-901R}qov!=!UXGBVIU~`1Ck4c{Ofu`U4%`| zFl%xs^AR){47()%OxAu72)Nb!Q3fjC=?-}lf0t-{l#(iqzVU0aoag?u`5hk#wzW`CgWG}7aB`uBj76)Ofz$1uVJ_MVDD&KSp4#B(NNCqP z024$X)o({)UDodl8^@3m0#{Bvp0tRu9lPaGonfu$djPM0a)&3uOOTU&TkCGw2-%Bh zHuMeA>aiFH4cPfo=f}oqISx4b>4hJ2??guf7fwg|>A^2)smZJLsN3?Q_t?DC_h4mq zCp77MWbI6ny9T`TC#P2jeo3=h_i2LUR0k4dxfkozWIFbcJM~D%^mJZ3ySWGYhmSK7 z-hoO2B*REGfOYEDHeNwTQftET8V97HsA3*z|0c6DdX;r+^LBXH8B3biBtmjkxlg`E zq;G>agWO7572~s%BnHn4al&caR7)8y#L~?h+U2e9L3_U-6Hp-ktYwW|*q$|_A}PwS z@REUBtnX!Jdsas^)+;M;W#$n#pTIlpEG6t3$g=9mg=j+kF2VVm?!}C2oDwBL$V|Rm zc-Oq>?h{O%wRyUF?}!a9;Y%S$Cw|ev$Y8KNJ%3(F(XD_!IrT>1(wFgUThhu63KBF( zSHo$+eF@s`>xUq_0N(vB6v#K~8!^1OX`x+6lGFBSEr6Oah7gqCl}T{O1#~O9#7G6tmXVQn4sOf^D$(H6)qWpwi8gnVXawr zSZ8Wi$=gDVLUV4liprOrvE8>u`aT>XEir$tw1N6HmJ%ZV#K8}Mt9c;y4{kSHgna_i zAQ9Sx)bcC3glnDo!kO)PGutnK0xh)tEUh@mSd?S|Dd00N5Sm|;1?~4Zy9N`?tRVAe z=D6NWoR6s=Ij83*V`P$zW^h}ITfJ|Ch*Wb^-f<5*_6{+*|I`N0Ulbl^#AxIf?sUd5 zY&0fg*ga>pKY+v^YX(z)_|=uE8@@Vtp0IW5K0EeSsGfI53cAn?C~>9VI>6%aC3SBN zSFo$2yz#coMeHEIM9ghR;b`#UQ1`0Fdw2p|b^t;JjDdIm17)aTVz2KW~Hm80&H|R~&J77?8L#LUTTm z6Ju4GE=>eHA=U)qq|v#n4c#rAzc#c-750$U-@OU|-u@Y&IAv8~*KL*}%Klkg%JeYH zy=amXWp%i}1XvIS*x=#xzS=SmNe~`TUi69~7Q+e5(;q-m?;nsMU7wdyhOu=T zNFv;d>QRO&q>t~zSZZ#99mmi!p4G2KSqi9m!z}$XnHP0l2zJVUJ3IYRk2JiwAui+z z?3^oizIaqQADgP(4Fca(942ZxD^BG5omZJrOc!COuh|qfNE(7#K@gfBH7QCm`T4tseu6;J7}ZKbd^MA(XHs+j`AE!lKBFGu0Zz=76V zZ^F|`-Ry$Y(;%RCXMn;!_32Nb;jaH9!9v#jqMrt4+K=>)RHf$@&)TOsxbzj>kjK{) z&hiI6m>?Zge{J<7mpq+9b%|;!)@P-6-dSeItv$Ci#t=e2k(P>^&a;G801Pn`aQMH0AKkxi~i^XS;!QvL67}z6PL!) z-g^#hWWJz(vS|6uz)fX2=rwqDPs}tR#|fNl+4s{eU8emC65eWgsO(@OTlKBCU|PQq zN3UGKj7o6_wgQ877M*g7eqZesbV{zzZ&OWtsTz=xtInNBow_O0Vc`CCg;p)d5k^8) zGhnh6Bu6X+5J8Xb6*;;G2VosC`mk4O$8qf2$=qw4#KWnkgH#KPy0_<8a;Kn%CVRm9NVpL7jYsj*AHmPzZJ31o*vI35DGU?t&}>Yt9Bx zE7w2eOt8G9vk)+|8NtaoL`3!{ZK*kwJIje6RX%Bzs->=qV_OrI&T3i89ATORHv<@<82(==XO=@H&=CVohain@$HDDV#-iRs%lK zTBj(n*O|EU_0@4{t|A;10Te;nrliSgfyO34uYVvsr0ihfkJxE41@WoD2OrS*aQtPA zc8S+~ILazP0Xq&LZc+5x=S(z#AqI#z3P5ZJ{cEh2n=4nAG~KF(NaeR~21k&b2RJHq zZ~%@kML7OFgQHCogrlya#C~U@GYs+048(p2N5wxh_5d;_LpZ976}qia4G9p$SNd`= zAjm0*AdcH-4!alup?~ay)lr7oSqT07FR-|7_RVO8&^J<)IOt4#AUX{B{bsj;`^hr8 zwQ@sAlT8hTzTEel$w3d}yZkaRQZlEZ!-ANFr{NIJA01K%{CZ-}F3IpV)=~Sxf%UBW zdqhkREdkR?EZ8L((Z)I}T3YmD2?YMc54$8I+gO)HOCP^u(gIQByrRS*XJVlU$#>t0 zbr!<^qM{#I`Y2j@_I;@hT5?j9IP6UPB3ioned#O&@QR`zSgIE-S$|(@gO=PBB@CU3 zt)itpGfQi1!KI63egiALqLshDuZY^fWTBNIu=02l%c7Bz8twg+(~;^}+a2U#&pQ)8 zJWXJl8Sfa=<(Ys^tGJsGCFbmISV?1!Nf+im7%vGp#9_Jy5S}xMMrvkaH0B zRsLS^aW43Hz4+tiP(xHZ&=Cq2)*k*H>eXsGk z2?`#4Ca#qA5;ga?F*oNK7+%>Hxy5FH!jhS8R4=7&kj`HQbc{5yq^b5CLymO_d5{Bs zn=f(O{$o|bSc9B{g2$!i^8qnM0WNPYzAhDjeg>7)pdEreyuGXZDQW+JB$P*i*$3SN zcv1f3wldJ}M)bU%jLBws(1}&5+ySNJ6BS%{@vGUah0GYBIm{XPIa7O&6K`rg^jQil zmVD8o+jgKicC4tJX2yIy*a5}U=GndDq7e$rj z{(bBb`SC?&EpYZcj7=kG#QRg)SnRA)@@~*QHz9hb^IJz`HocgV_x9v198>L%X&f+j z%x`CL%mUh2$vA=Y8t!#Uu+LJUUP0^e=?Y+{lC;>w^KP#O73CbM=lC^TM-;`WM>Lag3^ACIwEXXu8dpnPb3J_lOBaG$TMZ-ZGwKY~VpoZ{-dXeG% zd=$iaX^`(z6mT((v~4(7&T)bIXM6B+AlrlY13i3DaR+oR9}H7AJ;~MShyW3_%RZrE zvc>ddcIyg|olMQ~_}A9M+uLt&+BP&+)9UTgCOdGM#oD8w71fzL7Qu5_XKSPh4{IoQ zfGVHS<7NC7PHS=CLiI1E5W^4~+UZXsc8Ys}tm%N`-kZC}m;W<8fl{G#O|@>j<`2%C z+WYNiSoJtj==+S+?lm6$wpHiaU1(4L=Amw*inuE zV6|Wrk2cq`40UwIbaRYBBUhOboT{wQ808%+E>FrEwup3}zMEJSGa6jo&CiFxY7H)^ zdF|sDszM!y~GjfQEz~oNk7Pve#>}? zS=pS|`L{(ldi3q7H(5Hu-t6`4G73%MQ48)MI3AXCHCxaO4EGMi3v(}JMFBj^B~LPz z6S3mU!yR7M<(V$s)u4ix-^Qqul1e0vSriYVJWfuJBTMo}e(?Q}i0?mynR;I(h=QjA zE<>rsbCZR+-r=Ud@^&1wgtFfp`Z^#ZGkZY`g1ji4eZ#m!bJEg&XA#~zA|Zht93mK2 z!~u^*vQQs;V_9X+D!6!Az4!-&$w+2xx1pP{+ehhyCPL)Ha@}6I&)XX6 zRX7Gk-K}3t3~x^LDsQxHO3st|A|EwSzyLM!KD%MX-A=u&h>($&! z&_F#_JAN`&jz9M-C=^~9;I1f=zYF!Jn~XpN>R7W*g*GnHy5{(Myzk)il|32yPO--P zZdy$@p8p2Kv-aw~-HH4YX707w#ZA!ngX)?D06~b$n^ywO7>N#xw{ULL_*jA`T{Uz4 z?Kzs@!5!c=Km_LhDhs}5l3zjv zUH<#(+FCl9^s!EgtrzV!N$P%wqn(Cq)3v7i+4uMXWuSxSHHHx4Qzd}K?Xf;>%&g?C z4@NO?G5o32(nV zKA-aK5uKV|8QadT*D9@awzGs&E<$={e5Yz|Tv<6?R8Uv{3z|j5aT=!-UXbu(%a(a} z=R*n45p4do0p?J;A>pylOgju+oyKMRyA)v*1azujO=o$yAH)up{6+T!;hD!O^It&2 zio4jM^5Z&nv<0mOT3^?&VI!^Rfw^qpb|e&EY1#gXm_nm+1x_;16a>vjPl5E5mB)Ny z$I7|?rp|6)tjQt95qU6Ir075IiglZeoJ_qmK3}N&05sY~!;N+T=ZVg*v<6#l2(ghC zeffD><@WAM_m3cX3z_+khqC#3RI5xdj%RR<-b21JqWz6G0-77BNGj>8AvFD%PExkr zO#rPcW-=;g-f6K>AuD04pAhZxad|7|Z|!bi`D;KM#w}6fKOZ$+`Z7Dnt5bRMuu0Sa zsCJYJcBIE>fodfOM)kDLRA<^vQt)WR7aD5>sJUBg3&12}IH$%KS_+iwm_Cd)l-%C6 zhlXMgXicpFF#^<=8TN%{tu{%w*8?9t*?_s$@rBa_=84k1k^4wIhcWIgs#D>bakivo z+&d@&m|u&g_gKi^5v=M}gytLxP(r>pMeTEr&)xu;+QGz?(%y+F_9E|$NgB@NXn?RH z5J(N^k1T&XNx?U?2&J>9osqz2$^$uDC(sn3h=Q7JJ~18H%~qGau8n6_-ozE^-USs= z7U!ktPRH@=-C$9F_{(g1&Kw8<@Q2XHp^9k$6#bG$lI-Lbv~d&Z_B6{B%+!0$;<3>eNyZ$&{vJsgV7Zrf3rixW}4Br?;?M~b8JGPEA)p!_NdplLqyEcGj(NpL^!4Di_e zL~my$i)(L<9IHD<|HsiosM3m2tsmhY!yie@Z|wpZ^bAfuP`c@@iw4rUU_38!XGdwa z@P-T#iLim=9mMb3K)MX_^IlAOw&ipQ9EReAM?tpGD__78NSIx#T!q+uu?1?VqB$Zb zq;Pxb#=y*PgA0?B$Iizy19pr&E${OaPULW;V(x;bpIK2Js{Ly3{r-OXnM7s~6g> zV@RoJ;n<$e96EWKj^qCVPz%aa_?&!OrtfZ95ABcghf_Cw)D*!h$!{z1`c0=UFK5cg zrFPV&Wm-Q?68mjgC`gGeAZG*Cu@*_iC>Y6tCvKdO(7XeNHDX zMwY?B_b(9QL^D}&D7as|XY-HGtz%V&kCf=53jj?)asbfNk^$yKSkw*e3QkfX)36RI zbrTOO_~KehnkFt&W!E7fCoK$$QY7wysfv=O0MTU0Fl_F=_v)i6ugeg-%O}ppp@7EM zIwgu!Rl(>6bQUxq0!q+uJz54HBvRduFlWSIy90dGt^&;;~$4@Jr$)@cw`X7$Sodfeqw@fGnz) z+eRnwt(-uXy$Yn3d>6s57`OdLjHJO4K8l+;1#HX$;h7~MeuV=k1!z>h6|)6G8#qXt zIq!}c`jJxaphF}9dcgb#fzm*#lmRqVEi1be0TMxr1#kcQp(bsI9NUL`nk@q^k;V?Kuw;kC$E-)*?8-n3HXaE=_O=|O?Dg_>VRRV-k`HGmel zL#MzER{6Gm`BLLPNnkE}4&uIC1mvfal>l)c!PK$`!~4%TQY#_y0^br=>c4C_ti|rv zQ4IwX)s}J22#Z`!6^9NQcV}$bR%3J0Zk|LSL{`X)N}Xsu^y>+%>1szW%MD;^7`lS@ zL}Tx->yV4C4klzcQt~hsO{hG(fSCTLB>}}h-?e*S@R9J>-vKrZ3>HF7 zhta?VSDp6N6HVuyQb$-!m#G)w^#HLzCJ`c5H-q=JaR!rkqyv<=qAvkg`2y=)jgiM)Kac%#kH1YX(H1ulwP4V+Kh4H%UQx>mZ__zMj5XpxL&!5|!jof-Crs7?&rL|VN7*Toh0EyP#MK)={Yi6cG_sL zo*gqL-3bw~4j<=Kv>r2b)t!dE1LgzeHRq3?@yM6>3Vpc&3bmPYzuyrIC>g1JkgO;u z$&XvGq1<j(C-`JKaU15X^nF7G{ZfuM??~ z+m@V6lR1d2e}c||FyN19HIXNVjnf3{)`KW}4noSYy`$I#0yMKE()Jw$L!@CfFH zW1r`ZanN}z-XmjD3Pe}SM7cVCD%T@1uNw7iH6p-c=dy3b1P-NJmIL9s(Nk37NU8#bRuR)zXNZ`AhymopWMhhIt0Km^9$CtQJF)7gw? zc6$x)!v&{`57YJ~3x{h>$*<2$Z9WF*=ribGIg-7X#;bPBJJd`-R)vc|UJ$C~v`XMl zOL`7jCF3tZlu9>Sw373*IJ}=mdPMx#SfQ(l6YLE}K7mX3&?1^0U zkCY1CYw!l`Toec+i>fi|BK#eYm746O><8+RK353v1xL}IZ8yqKk~&1Rq{#9gH8!RYc??m{>xgYjvW$=eNF~IMKGv9Eht@-?Avp7)P*8 zOj9APX>b+2WAyXxa)JuKYB(fZ;ngG}3EHiU+=fw_9_Tc_^l86i zATiwM-lu{#bHHA81gHK%;wDFTx`Z)lQz*n^mk^Gg-BV#q#9pW=^ z59VTdO#B2xhI`RVY8t43tlx{4ew>4FMaJg$M|2J7X<%968fYZ_dReZ1~-ilL}F zzh)b!1srw=PqoqL&(ja9l_w1k=M|gNCVgL87ZgbBOsqV>71tm@RUBda?;)1SlqaegE)S7m@1dUhS-;LTTm% zcE+tHZUkzsz#CmxanCq^@ZC#vM&z2P$jg)UGMmD^Iv;m-kr^3dmrgY+vB49FlpkOP zU^by2fVD(QQ>1G}-$`M)Y6Z|;Km8>__vj+kEK*{2(*G%|)u|AY_1ygJ=H^<=-S3`fpB>x&I;>_#2@9 zQ;23so%{d$>&-Ise-68@npJzVmSEO6LUG%yzYw=z)`j}vmd$#VvyS$EcSn2HRhxCy zW+T+upnW!vF`L>E<@x`+X1glX|6?*pvmyC^>*VY;wFleh%=ta-z@DAQLAhx*%9xEZ qW}}S%spvCHl39}cKU4?f$^Dti>J}b-@OcjS=fK{>ds25<-uNF_zqxS$ diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-828x1792.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-828x1792.png index 04eb697149e8e11e279e9d674641bdfb38def968..eb2911ad318ee7476c35de53735124ec499e20c7 100644 GIT binary patch literal 22015 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 Dl{`X2 literal 44548 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 bM>Q+l0B)|Pdv6{1&+#MrhckY+y7B)2?x&rN diff --git a/themes/hugo-geekdoc/static/favicon/favicon-48x48.png b/themes/hugo-geekdoc/static/favicon/favicon-48x48.png index 686c494424e02f1c71c2994c4640d8c1d37c218e..1584010bf902616c3b3bdfecd93648c98228b452 100644 GIT binary patch delta 742 zcmV3q4Eb(63eZ%s=V ze;}b38gz^smO&IQ!emi^gDT&9MR9n1K5uVdF$PrLKB74MsRVSFC^=kI0^WDWw=?2Y2Ok2=|1O?Q3`J@ns>rJ{!KME$)@>lF$g4{6e_sE0 zWducRPQ0am5=#yyqDmVnKz%mo9AqVK?=~u4w*i%hM~#ZtokCK;WB$d9JV7E8ue*qY z3@qe(2ecJzGw5ie?HZWXB|Z)VTE&|-pj~{F29y9V6$ejhDLMSoS;59o#G%PMjJ(!1 z%HiQo#LJE%AHg7-KVxt69&?R}fA^sKKXEA!MkNPtlmMTaQ3^O+;`V84xrpmnrCtZ! zg$SLjoL47|Ukx41RD&YE8a@hxnbA=5z#x+(d#LMQbfd=nP~!}aq(U30 zq!GQ<1;X7bA6o5V>+tY;hp^}Ii>H&x9s6M02CC@sUjJ9WTKQ#6G^TUjCqC8byC$sK YztO^`ZKV(M%m4rY07*qoM6N<$f=v!y^#A|> delta 742 zcmV`$ie~|`~nN*6bY?@%)Y?4hfJDWm3_-?zI z@B2OGx0zkTXv6@*bkf4)6~Z)+Z0e{dSwuGdig4z#yPly6!>QB;%cd{F5#5woWd7KJgP8rN{Imr({uhQCgn;qtENro-8BtW ze}Fc*&}7HBVQ56*A{;Doa8TyrS0sbS%Q8@^}@Xr47_tr4uQTjAUM3!N_<^5W*xRE-d6@ho5;7%L@Kq`9bguw!q)({dw(el9*1tA+nTQ-KZ#7qzy}}mzl&#MqoEoIEAp~JaOuB`RT~H^@^ZO(f3N?$ zGK419C*Dv$i3J1GVU>;Gps^ZM4zdz6cWV`|+JMZ#qgutQE+N6;G4J9<7PCVWueyo- z3@qm2No5V&3M#hIP7UN$iI2j7Qt`SCC>I~50m;Ej$-t9(3I@M)*RT;ZabU78Bd>HD zW$q6dcZ#n0eah6;U0lH0mI` zkWFTmPp`>aIGWxQ?9K=ewrT*$y+g=O|M09^*qF==8$l7}*{F##C;ZEnvK3(fVKU`w z0F!Hhe`M7_4?wFKFd}%#S4Rs|*`$fD22bNidLqy~(8xhMbExlMbff0{P-BgZCpu~- z3zJ)YAl#|)q0uR}j*YFiZ2CNU@nmLj$3EDxfhq>v*ZF+IJC zD|kRCIEkJ}{J0N09Zn&puWWDyPg;;TYogJDPh;oB4Q6J};u4;~PMCEe;YIA!IDwGx zb@XIe8lk*wJ$8PqhJUxVtrH54VJFJg2;2I4>>OE*Q2HV4Bv~C2Zp6-!wKUgn390(P z83fXRohNH)D18HZf-DZM;0Rm)sSjf3$y$Vp?!``$&A}Dy#m;sLriT z2{XJEb=Ixh{vqs~)I%Tz-@<-&8_9RDRSUa<4cY8OC+!B;q`QL4(%I$(%vVUD@yYkF zm1!J)CW|M2oW{YCED7`Fk;cKF(m1$pewJ@$K0yMF$9xiAmBqn}{iNwHQg|YbgGYKh z8y7JjAc00BXMb!(mNa%7AqJIaSw%XMCc(ALbx5Gm);U=c%#9+>X%Z#j@iY#1GM6EN zhLVvT!jR}lgA5*NFZE!oR^3M!k1^6M7x+vkU)0G<7_1&f$WjT zIf=}vQ=#;qM-oWtx%1jv*Dz1X$Cf8}E=z*@vm|`oyMO77w>sBx1uu;v&S@d_aiL(} zWP95b^N4&*dFH#p5A!|j1LkjKU2$O=2e0`e(F(4jyT=yi{ncom%gFt=s;q#@69+#! zCC@3$$J8_l4mdxZ38`-{TAroQ3t>C@7^{2bnPF%3``e2WjZukuac~R6q_JW9MJCDR z3A8BD3xCW}@)9b~a>lGg|1n!c7#2doH_MgB-6Jr0iIu0wN|eRHq5Sic0mFbxc&-Y8 zxP(2-A@T|;Pmz@%n|YmD^GEiD0nNMZB~C$L?}2|(G>O_<^VZD z zvZ`4-J$?45pDhLt{SdR5+@i{}oP{q2A01+Q?B5s$<|j5+x>wTF^~c6W5X@3+mgm$S z>;HG6qu)ZBVbM_filTp!ajAbjxgk2AS&HrQ7}7ZG4!(#EUS;UbG^M_SD|lJR(Ymp6 z(|-zA>R<9U++=e*To>f&#lbDZobE{D;8)BRgwnqsQJ}k+<=D7j9#@`so-4HHWv#Cp z%Dj~)S^ODq&qr$?1@dv)%9f_D=goqf*@ABZ`CNH2BX<&B#caYSfqbq!*}HNx+weso z-z!fVhx<`JqSiqm-z!g=1b?x%n}_QH`F~$|f`h$o^5B4>dQa{2aWTVKlB$0kyDELNW^LAe4^OHP?n2w|+oX$AdkkO@8JU_{Uh*0p^ z(yp>>>BHveP?^t9@*omSeSC89X5upBSz1^>R@U>=PjzI3gxzJz^S{`5`NlGyKYxwG zyGR~Hgw#(}B9MgLML+xejzewpM!#^ou@?7$l;LG){@cwAmY4<}GCN0p}pT>cq9j6h}g(dpH#^7!x~(H4Pv zb*wx-e9EvvpkAFTkLw>(u?6apJb!L)=fD)GNAkG8p$to)9?5fNNTB|ZJOe@ky&sZi z2uPsQA$f*`1X_aR837XL9Y~%LA%PglGY-B9l*ZvJX&gK`cuf4F_MazwZ!k6Vc8&@n zt+PC?wYalQptR1@mWxd`Z4xN0vplZ0`L#u$w9fLl+-N*Y!aLFBNou_2aew`)gR~pQ zBo8t!U$*k^_#8#@Aj4(!*D3@OGP=Kv=g+#qK9UC!*DstqdfUY6ED2w(OrAJ+mE`g4 z%1d)!=(}g+|5ctm!JAne-t$(sVeQ2+DEM^g?&8fhv&{?4PwFBg>xv79ZQ?y~sb0-n zoy(goxRSSF6PuYS^-LNXbbsx4u?PiPDE)Jx;KXTT(1L#orN6dXZl7SjA*8;&M0pm% zc4W^T4&{&Ii8D;)`x~1&7cJ>H`ThI3!RXNT9(Xfr=E!Y|@voqfWsU z93_DY5{LpwAOn~B8Gq~n_CGqeGG7r=&*2ZS=h2F;X1*d+bT9eD%PDHLkV1ltNI@SOH delta 2219 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 diff --git a/themes/hugo-geekdoc/static/favicon/mstile-150x150.png b/themes/hugo-geekdoc/static/favicon/mstile-150x150.png index b17f103f750a21ed455c715b45eaa85f53893451..b33cb9b01306d7eba46a31d22ba4d27755033bba 100644 GIT binary patch delta 2070 zcmZXVdpr{g8^_l{ln%p`OKBsjQPY;*kP*YQtjxyB)@8GVNbZ*y8WE@5X5|t(q-kf2 zESIUgshvrZ%yK`~tTvO=9Lk*4Tj%rscb>m~-|y#n{(XKzUMH)E?vYkTu4rH(B*Zr6m>+#|`ldWXF3#P&s^UcRtZYThN4*2(E=C{bl7g0&kx-3~3N#V;FhUtZudm04G^nzs%u)#B=bozv? z-W9ogWw8@J1H!@dY3fftTMu>h*hfih^ce8tXpKN~tIKG&|I4vk_b0dolKA>D5fgc) z`#LuVqfw2>tlG$1VQ=~`(y=?@CKHXwKeN=9{7C7R{K*G?Xie_?+s@70fmi%F=@wFj z`^4@lU1#2f)n)y2l77o%$$;z8y|C7UgY=Qa9>GC$T=RT(O36Dhyl_4><)C=Hb8mx| z_aa!mZemHbcF(I-jwXA>i2E1v2kw4uHKDU;qXt@CasuM$LVCu_suyz6)#4o4|t~Dqz-u)SPhiwm^wMl#7n2);M4=g6!tx#=k3ayt$s*|fPH?#^PRDjrUo58Slr)?8 z(a)4Y0zUI+V~g#nlG5`Y4oMBFATD1SWs2K+4oVO5t$4D;dXd5SY5S3h8ff5hD%Bac z{2A^a4QrMD0gUabZdAI&n%Bv=MmTpd{!XCvb2e$z4RyFKQuN+NY$F>?`LHs{AN%|l%H z+gG-Y<=UsOb~L2IgewEey(x!~Pq9vlLBbiO=&NLqsIHV zq$6(EJ(*}@GN{X5+!AYgOr_PTW493P_SI*F$dTHGoa*dNXCrq=M3!z^FWPR}R-Vcl zNoNP`OuQd$_BVn@YxP%#xFFGlfKZX4?zh8A@7OHjf9l8;cWSO4h)PeXrKjcJ^(*xi z*-~8gy$fg@CxnXfkJrFx?zWP=H?=2Qs-Yp(g8R|iBzj~{tt){Kf0)`vUo1=e_8J_@ z^IX8sidMwdo#;E1oN0D{DXwRHX3Fn(Z%6a1CEP4iq|v1=b$L4M%{JORFq6t?Q5mo|TbK2CqGy41RneJv1Ec;FhkpP} zE{0Muz0H9%rGY97I4B4v-|qUT{e7Jg;v$Yf)W;SAcXKxGT-E=73Ri9Tp1@W)=4t#B zygwx~uh*Sco$%#YQw?ha{WF2(mWn(AJ;BHVkup#Xt=GY^`k<5rJS0lqVI6c8YdUIo zPoFYd1Qk#b{3rbo!gXEExhqVsrc@6OLW^wy;9(8xBlP;z-#nTinZ!sfcCI!>11pNq z_TU6&;ccw(yeoz2cZp}u-z|kx?^7zzpcv56`oP-2Cp;B0fDMmtI=j4{{*rBX*rCx9 zEY{AKAJ|x50X$d*j*7WKalp~82j(Qm+-RS@ph7)q`5+QKYX%_^=VuZ>sjaD(Axtku z%<1;GXS+@?ce=uz>q<;$6&KS2^;HW(~Yrd;2q85Os(BiEHP{g{Fp8jV*l6AWU`Nst*>V50V zFCcx-8#AtsAB<4nexYQ)_)DfVOw}${>w_#w3io4MzhpjUrgXX3A1UVAJv`G5fP8-x z4)SGgJ<$l!GpCqldKE6Q>XR3(e)^kv)`xDwo|(lh@X3K;z^Q3Yk<586=hJ>c>PvD` z^yT^EUBcUuFHD9n{w9AiKz!UVm;;}w9-pN0F(3BfZiYPX=@?FG76|+m?}J0V%9~=w x((*Byyds&$QZxs{kLn&u6#ctif0%f?uli)0_aM2U+Z6DJ@bku^xSpr7{|Ck6@e}|6 delta 2085 zcmZ{ldpr}28plI1qIX`mSI9=lCCUtu%NFG>wlOugY4kFeToQ|+!bs`VXv^ieY_*ZL z5Igj`oXN0#)IyvUN+Y*-9g$qd>wV9E=X1{U*YkXz&*%9(pWh$9UpufLSbB=M;pqlL zUaMHH^u4Xyr_rx3FZ1GYCNnzT*}#NQh$ArNStrUm5v@x-_dxbAwn2D%4gi$c=5opY zE7&`Zo?CFRr_|27nB$AlGGvkW#Y(4T+k~P zyMvJVkA{X_m-*0`7-sgj1z+N5Lzuz7|5dK0jlZoay?OM$mzF{Gme!u%j0X!EhkD4T zddV40Z{MbyRO{0j*X~YXu_=W5#@PHpRrrBPSgt4mT;t?p&+z3vMX{cgRx$~EF8C5kHV$K%-#jnO<-A%GJw%VL`myI^d-ej zLA)RecflpHhZ~}UnJ*7&gv5bRXWK_ycrIUN3rlBNDK)F+aH`yZ=YG}Wxky~`Xl1AN zjYFCTuqF939cAHJy)o(T&Rf|w%Tfd7P8V+OI$oD04VaFwf*YcI^>AmS{=Tcp_LU7u}bHPk+=ev$f%lyKvNCYAdRxuDJ*!i&Ys`aJ*=}GEs9n zuyQDDvMZ_!$I}3fCEd&>WGxXSDn_FmewsBkI^0Mr2YuB;T!8@&9br`b?I3o-hzv=F zS!~rO!z~MOkCAf&8Y~eb!PSC5V?M>iPlQ|5J3m}+WEm0#{FOzMCWC%O>Gu-$@Z|9E zg5j`|ti(k1YYGLWi#J}!wA~W`pc%!bn~Aqt$~?Z+oS*HFircC-R8TD7BL|u`yTd2E z!s1vZmL;;1ock2-V=t{ZuaMUyf$z3se0=do3jhZn#LAe6e}1|1{hsZsw6zYnZ+4X~ zNH=+-czcW}QCJV{z_Z`&pqpayLo}nhUQ+NN&QJYh=P-D`*qms9v)3g);PjK%c1{Nun@$d=27(rKeuaW7~ZNE8I=v(Lz?9&)To@kd~wA zv(yCN091r&OE5E1TqG;$Kx!PDT)wbVgwa&vFw9sVBD#>(4;Gh7sz%brbdW~lpw@8a zfm*$%&uBz{{2eBJ{+vTvsTo+QQ?dt^^q%L^kHAI9C*g&!6F=Nv2>S&8FEul*#JhDg)7FcwKcf#SDFH^5Vq-Ta4DwypIO|UGT2nd#C6r7u%!|i+2#z z^%uWU!8%t^fAvAkbOlF;BNK(iSd~hKtmN;@6f>nxMC9}b_=`_ebO{gHb3MMb0RPH} zO)X`7Y7TTd`(maDT{>t@!~hQlhU6b~l#~t{U{0CeL~4HYN|&pD4hY_4gUIgfLYRXU zsyn)J>ao(eGgHoTwbO*)GmvKDfm5}7FZ8_n2u#McCq+V6CM2xwy+c|-hErRPv1UU_ zSX1S39s8|jWv!xh3#_{gL8fcRtNYe+z6I7uZ@&$;*ErSGh8THc#F$-6UqV1Xdh~0u z;g`(X4%Ng1_a6DZRe(Gm1Yo?!uQmiW0t0b!*ic;$vRq+WBnagP8rxL}RFUCc(Di^G z1uizbGG%knb8-x&UKG1F$LX+do82XneZ>0ALplhf(XdpAId$Grwmf~(n{1Y}^n;IkaXS%Ahr-o#k+C zdO;k}eJE<98K7m^Xso+l-Y_0>Zm{8TCxk6=vSAJ*2pF`I)f9(Bk#3 zmOr7ZNLr>Xj$t@is!NJbj-TJzwn8##Tk=BMQPE#=X|p(y|d=FjaT!nS_jfF z;|VN{XOG*I7~vN$o%T~=5RtF``NfR(yH5QWJ6=S?P)rab6)DS26F!!RIYT|sbf8O> z!+mePWLhGqoUsUQ@x9F;m3TT)7(S)5R&J?^9KR3$ipK9*?|lsP@~}^U+7m=wHPPKd zRmh(`48c*~00HdhZ!bIxp53wbl0sr-f#!|_&Y=nH2N`#$`?!OLxLy#CCv0muwov(J z?x6CYBhVZIG#7wijeOTen;ZN8|1zMMy!ysFrTt0`-*G&n3jqIKeXKr9{v^?31Gf!@ z=6+^s)}Ih(ovhE!r|t`m*5X>zNPV=OL(trfgg}d^8!OgjoN{XSUui=HBvY)p4sSUL zu^P|=HGC^@nJLUdY7JGKT=s`sAkKcwR)DHluI=fd9r~t;zv%hwG&I$2!-d9IF$&}p+uH-)z#W@ zXbYT{yQ6Jk;QEXcl0H6NzT825@Hzn>UyX9Qb=6QT_FV2GPrB@WwPj3Il&hS4bX%re zN=#;is|$5Ks!Gz9^HqkJRo4HVv`78}LT}&Q7iu`CPP>v4{wMKt_j7B4N96qh=M(B4 diff --git a/themes/hugo-geekdoc/static/favicon/mstile-310x150.png b/themes/hugo-geekdoc/static/favicon/mstile-310x150.png index 2637f40c30f16e39540283118339dab416524e3f..c942d58e16cde8b7e5ad586ec3ed0f8d46fea9e5 100644 GIT binary patch delta 1966 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 a9PYAL(I@6NLeKvLURLHdW;GW)iQY diff --git a/themes/hugo-geekdoc/static/favicon/mstile-70x70.png b/themes/hugo-geekdoc/static/favicon/mstile-70x70.png index 271c8489dca1dea5556bfdff1035676875ccc674..5fc76e690dac6e87de9719b1d36d7dd63f0b561e 100644 GIT binary patch delta 1071 zcmV+~1kn4~2-ygbIe!aDL_t(|ob8)ih*L)xfPdo()yKrBq}2dhs!sLWc6MbPIVKL!)1SDGI_6bR#wbPJgaDt-ooND(GxW0IXER6I*O7{8CHI1M8sOTaKOrN|f*Pr(3+Id_dO z-JO9%yNkK>V1H>BEbeJBg`@pLp>)PWiAwV$kj{f*&fU_JVtg-sF!0dJS}AYkcxWb& z&Nn?JrkGD3D1Y%dDK&!5^@Nx}x`zXaW}A^x4PQFnbv%)QfstkLQz)NMIaAb=5=f^I zdd{R0Ihcu)nDIh``eKq$aR_v_6fgZG^w7E&httbL>3`fwR1T(Gwo-h#gJK70l2SZ| z)>dEJNKPP;Tu?HY@_$+pgPFJvst4LiOR0U&bj~HAbZ*6Txu9J4w4D&4e5yq;cR@q< ziFp}!);jJKUwhK_!MsR)`BGttRaukX2s7AmDm zn0I%*`+p2)YC#F&A+Z57{%f69@(NS_lRGTh@3RR?DID!z8A^0FLd>6CRp9w5q|8;r z&iSqpQ*2}QX&~kA7%9)g99h*BVthp{rLuN90v#fiq!?8#rP5l?LPr=I>qG1Lmvv^N z0%4=u0ANwiNI^84!BmVlRoqc=?W1gV>3c7w41Z?ghn6Z|%1=R)gdY03V`Iwk{txSp zDV^S|!i@jdQsv9|?Pi`^0$3DE^t3CbBq?U#+UD!qxXPU|o72cv7kX6; zVf=pVST`()sytFwOf)GgCYqELW9pT8T6=|F%*2Y>IEH)gPZq3UOem9L+TU{O2fqO- z$*|F#`oDDJz?AO?)ezHL4HY+4R=qXnO#GseErp3I{Tnu~1f38jcF%2hQt?2q5Gei_ pQ~n!fe4mzdF6nxPK^}!-O2#OY;yXb?h6cKC-Qi`y4S98t@B5ovW zA~xnEIoX_qDj5-iu7PO~CT{AKQjK{l#MfX78Op!cE#zYi4u1=#Kp4NFT}UMm z%`OL1AdLT|TgX&UaS03}MVOe3XzV1R;=ja$@u!%IV=y!{8w?Xusv8611sFgv=Pvc7 zyDgAtM=_TkD1U8-nLRD0aG-B6l+I`6w1d`&J>NL1kx#l zp7TVdYBDYfsJ$hjnx&Vz_97nJLswi`q!ACD>KF=*&M zQSWV>InKGZ8$}rZCEhxQUj{>@{7;UDeyby9wC#pv= z&UTHMVjHth6Dhw(NO=|J$l|UL<15OP%Gzl^bcj@vVpL^HC0kBIM;IBIg;wzI8q7uo z!iF~kz>J=ef@n5_sTggkxTE6EqHK1~7cZp@W`E**tjd@2qtGIuhkoqXm~yCZVZ$+{ z)08D#V#W`{5*52rO47$C<%9ON#AqC7l^nQD zEhO{K&hq(Ay#e>L0oZfS`gvzdokyk8YxsPnH?6QiN3?a@Hz;;uCjP1XD6a_>C(EML zd^j`bQ2$fN!1{0M-3!E2sOxI|23-TGf`2K$9rYu%yUp757l+DVDxO5PX=sxRy()$< z{xou|TPcXDcBHHrD<&2xn=z(dnWwc^=*7FpF=q7$hMxPA1#22(%A}a~x17eo?}17( zYZN4&aGrt6iFg(`iS3stj{h57%6bAzn Phz9^KCkZdJQWUBK94Z(o delta 57 zcmV-90LK6PFZ?f%jRRqH?Xi%Z6D3)$I~wEpZN4&aGrt6iFg*Gt5sOSS`!o9jDGmlE P5Dx%6B?IrOI+#U+TCbef=2 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 delta 5028 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 uRo5eBVt;30bi4T~KDRC8U$`J`ia*7 diff --git a/themes/hugo-geekdoc/static/js/148-5c9964c4.chunk.min.js b/themes/hugo-geekdoc/static/js/148-5c9964c4.chunk.min.js deleted file mode 100644 index 4ee6a6b23..000000000 --- a/themes/hugo-geekdoc/static/js/148-5c9964c4.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[148],{6151:(t,e,s)=>{s.d(e,{A:()=>r,P:()=>o});var i=s(798),n=s(4852),r=(0,i.K2)(((t,e)=>{let s;return"sandbox"===e&&(s=(0,n.Ltv)("#i"+t)),("sandbox"===e?(0,n.Ltv)(s.nodes()[0].contentDocument.body):(0,n.Ltv)("body")).select(`[id="${t}"]`)}),"getDiagramElement"),o=(0,i.K2)(((t,e,s,n)=>{t.attr("class",s);const{width:r,height:o,x:c,y:h}=a(t,e);(0,i.a$)(t,o,r,n);const d=l(c,h,r,o,e);t.attr("viewBox",d),i.Rm.debug(`viewBox configured: ${d} with padding: ${e}`)}),"setupViewPortForSVG"),a=(0,i.K2)(((t,e)=>{const s=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:s.width+2*e,height:s.height+2*e,x:s.x,y:s.y}}),"calculateDimensionsWithPadding"),l=(0,i.K2)(((t,e,s,i,n)=>`${t-n} ${e-n} ${s} ${i}`),"createViewBox")},3148:(t,e,s)=>{s.d(e,{Zk:()=>l,iP:()=>Bt,q7:()=>w,tM:()=>Ft});var i=s(6151),n=s(2602),r=s(7323),o=s(798),a=function(){var t=(0,o.K2)((function(t,e,s,i){for(s=s||{},i=t.length;i--;s[t[i]]=e);return s}),"o"),e=[1,2],s=[1,3],i=[1,4],n=[2,4],r=[1,9],a=[1,11],l=[1,16],c=[1,17],h=[1,18],d=[1,19],u=[1,32],p=[1,20],y=[1,21],g=[1,22],f=[1,23],m=[1,24],S=[1,26],_=[1,27],b=[1,28],T=[1,29],k=[1,30],E=[1,31],x=[1,34],D=[1,35],C=[1,36],$=[1,37],v=[1,33],L=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],I=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],A=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],K={trace:(0,o.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"--\x3e":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,style:42,STYLE_IDS:43,STYLEDEF_STYLEOPTS:44,class:45,CLASSENTITY_IDS:46,STYLECLASS:47,direction_tb:48,direction_bt:49,direction_rl:50,direction_lr:51,eol:52,";":53,EDGE_STATE:54,STYLE_SEPARATOR:55,left_of:56,right_of:57,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"--\x3e",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"style",43:"STYLE_IDS",44:"STYLEDEF_STYLEOPTS",45:"class",46:"CLASSENTITY_IDS",47:"STYLECLASS",48:"direction_tb",49:"direction_bt",50:"direction_rl",51:"direction_lr",53:";",54:"EDGE_STATE",55:"STYLE_SEPARATOR",56:"left_of",57:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[52,1],[52,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:(0,o.K2)((function(t,e,s,i,n,r,o){var a=r.length-1;switch(n){case 3:return i.setRootDoc(r[a]),r[a];case 4:this.$=[];break;case 5:"nl"!=r[a]&&(r[a-1].push(r[a]),this.$=r[a-1]);break;case 6:case 7:case 12:this.$=r[a];break;case 8:this.$="nl";break;case 13:const t=r[a-1];t.description=i.trimColon(r[a]),this.$=t;break;case 14:this.$={stmt:"relation",state1:r[a-2],state2:r[a]};break;case 15:const e=i.trimColon(r[a]);this.$={stmt:"relation",state1:r[a-3],state2:r[a-1],description:e};break;case 19:this.$={stmt:"state",id:r[a-3],type:"default",description:"",doc:r[a-1]};break;case 20:var l=r[a],c=r[a-2].trim();if(r[a].match(":")){var h=r[a].split(":");l=h[0],c=[c,h[1]]}this.$={stmt:"state",id:l,type:"default",description:c};break;case 21:this.$={stmt:"state",id:r[a-3],type:"default",description:r[a-5],doc:r[a-1]};break;case 22:this.$={stmt:"state",id:r[a],type:"fork"};break;case 23:this.$={stmt:"state",id:r[a],type:"join"};break;case 24:this.$={stmt:"state",id:r[a],type:"choice"};break;case 25:this.$={stmt:"state",id:i.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:r[a-1].trim(),note:{position:r[a-2].trim(),text:r[a].trim()}};break;case 29:this.$=r[a].trim(),i.setAccTitle(this.$);break;case 30:case 31:this.$=r[a].trim(),i.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:r[a-1].trim(),classes:r[a].trim()};break;case 34:this.$={stmt:"style",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 35:this.$={stmt:"applyClass",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 36:i.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 37:i.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 38:i.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 39:i.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 42:case 43:this.$={stmt:"state",id:r[a].trim(),type:"default",description:""};break;case 44:case 45:this.$={stmt:"state",id:r[a-2].trim(),classes:[r[a].trim()],type:"default",description:""}}}),"anonymous"),table:[{3:1,4:e,5:s,6:i},{1:[3]},{3:5,4:e,5:s,6:i},{3:6,4:e,5:s,6:i},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],n,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:r,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:c,19:h,22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,5]),{9:38,10:12,11:13,12:14,13:15,16:l,17:c,19:h,22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,7]),t(L,[2,8]),t(L,[2,9]),t(L,[2,10]),t(L,[2,11]),t(L,[2,12],{14:[1,39],15:[1,40]}),t(L,[2,16]),{18:[1,41]},t(L,[2,18],{20:[1,42]}),{23:[1,43]},t(L,[2,22]),t(L,[2,23]),t(L,[2,24]),t(L,[2,25]),{30:44,31:[1,45],56:[1,46],57:[1,47]},t(L,[2,28]),{34:[1,48]},{36:[1,49]},t(L,[2,31]),{39:[1,50],41:[1,51]},{43:[1,52]},{46:[1,53]},t(I,[2,42],{55:[1,54]}),t(I,[2,43],{55:[1,55]}),t(L,[2,36]),t(L,[2,37]),t(L,[2,38]),t(L,[2,39]),t(L,[2,6]),t(L,[2,13]),{13:56,24:u,54:v},t(L,[2,17]),t(A,n,{7:57}),{24:[1,58]},{24:[1,59]},{23:[1,60]},{24:[2,46]},{24:[2,47]},t(L,[2,29]),t(L,[2,30]),{40:[1,61]},{40:[1,62]},{44:[1,63]},{47:[1,64]},{24:[1,65]},{24:[1,66]},t(L,[2,14],{14:[1,67]}),{4:r,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:c,19:h,21:[1,68],22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,20],{20:[1,69]}),{31:[1,70]},{24:[1,71]},t(L,[2,32]),t(L,[2,33]),t(L,[2,34]),t(L,[2,35]),t(I,[2,44]),t(I,[2,45]),t(L,[2,15]),t(L,[2,19]),t(A,n,{7:72}),t(L,[2,26]),t(L,[2,27]),{4:r,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:c,19:h,21:[1,73],22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,21])],defaultActions:{5:[2,1],6:[2,2],46:[2,46],47:[2,47]},parseError:(0,o.K2)((function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)}),"parseError"),parse:(0,o.K2)((function(t){var e=this,s=[0],i=[],n=[null],r=[],a=this.table,l="",c=0,h=0,d=0,u=r.slice.call(arguments,1),p=Object.create(this.lexer),y={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(y.yy[g]=this.yy[g]);p.setInput(t,y.yy),y.yy.lexer=p,y.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;r.push(f);var m=p.options&&p.options.ranges;function S(){var t;return"number"!=typeof(t=i.pop()||p.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,o.K2)((function(t){s.length=s.length-2*t,n.length=n.length-t,r.length=r.length-t}),"popStack"),(0,o.K2)(S,"lex");for(var _,b,T,k,E,x,D,C,$,v={};;){if(T=s[s.length-1],this.defaultActions[T]?k=this.defaultActions[T]:(null==_&&(_=S()),k=a[T]&&a[T][_]),void 0===k||!k.length||!k[0]){var L;for(x in $=[],a[T])this.terminals_[x]&&x>2&&$.push("'"+this.terminals_[x]+"'");L=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+$.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==_?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(L,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:f,expected:$})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+T+", token: "+_);switch(k[0]){case 1:s.push(_),n.push(p.yytext),r.push(p.yylloc),s.push(k[1]),_=null,b?(_=b,b=null):(h=p.yyleng,l=p.yytext,c=p.yylineno,f=p.yylloc,d>0&&d--);break;case 2:if(D=this.productions_[k[1]][1],v.$=n[n.length-D],v._$={first_line:r[r.length-(D||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(D||1)].first_column,last_column:r[r.length-1].last_column},m&&(v._$.range=[r[r.length-(D||1)].range[0],r[r.length-1].range[1]]),void 0!==(E=this.performAction.apply(v,[l,h,c,y.yy,k[1],n,r].concat(u))))return E;D&&(s=s.slice(0,-1*D*2),n=n.slice(0,-1*D),r=r.slice(0,-1*D)),s.push(this.productions_[k[1]][0]),n.push(v.$),r.push(v._$),C=a[s[s.length-2]][s[s.length-1]],s.push(C);break;case 3:return!0}}return!0}),"parse")},R=function(){return{EOF:1,parseError:(0,o.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,o.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,o.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,o.K2)((function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,o.K2)((function(){return this._more=!0,this}),"more"),reject:(0,o.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,o.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,o.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,o.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,o.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,o.K2)((function(t,e){var s,i,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var r in n)this[r]=n[r];return!1}return!1}),"test_match"),next:(0,o.K2)((function(){if(this.done)return this.EOF;var t,e,s,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),r=0;re[0].length)){if(e=s,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,n[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,o.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,o.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,o.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,o.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,o.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,o.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,o.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,o.K2)((function(t,e,s,i){switch(s){case 0:return 41;case 1:case 42:return 48;case 2:case 43:return 49;case 3:case 44:return 50;case 4:case 45:return 51;case 5:case 6:case 8:case 9:case 10:case 11:case 54:case 56:case 62:break;case 7:case 77:return 5;case 12:case 32:return this.pushState("SCALE"),17;case 13:case 33:return 18;case 14:case 20:case 34:case 49:case 52:this.popState();break;case 15:return this.begin("acc_title"),33;case 16:return this.popState(),"acc_title_value";case 17:return this.begin("acc_descr"),35;case 18:return this.popState(),"acc_descr_value";case 19:this.begin("acc_descr_multiline");break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),38;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 24:return this.popState(),this.pushState("CLASSDEFID"),39;case 25:return this.popState(),40;case 26:return this.pushState("CLASS"),45;case 27:return this.popState(),this.pushState("CLASS_STYLE"),46;case 28:return this.popState(),47;case 29:return this.pushState("STYLE"),42;case 30:return this.popState(),this.pushState("STYLEDEF_STYLES"),43;case 31:return this.popState(),44;case 35:this.pushState("STATE");break;case 36:case 39:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),25;case 37:case 40:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),26;case 38:case 41:return this.popState(),e.yytext=e.yytext.slice(0,-10).trim(),27;case 46:this.pushState("STATE_STRING");break;case 47:return this.pushState("STATE_ID"),"AS";case 48:case 64:return this.popState(),"ID";case 50:return"STATE_DESCR";case 51:return 19;case 53:return this.popState(),this.pushState("struct"),20;case 55:return this.popState(),21;case 57:return this.begin("NOTE"),29;case 58:return this.popState(),this.pushState("NOTE_ID"),56;case 59:return this.popState(),this.pushState("NOTE_ID"),57;case 60:this.popState(),this.pushState("FLOATING_NOTE");break;case 61:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 63:return"NOTE_TEXT";case 65:return this.popState(),this.pushState("NOTE_TEXT"),24;case 66:return this.popState(),e.yytext=e.yytext.substr(2).trim(),31;case 67:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),31;case 68:case 69:return 6;case 70:return 16;case 71:return 54;case 72:return 24;case 73:return e.yytext=e.yytext.trim(),14;case 74:return 15;case 75:return 28;case 76:return 55;case 78:return"INVALID"}}),"anonymous"),rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[9,10],inclusive:!1},struct:{rules:[9,10,22,26,29,35,42,43,44,45,54,55,56,57,71,72,73,74,75],inclusive:!1},FLOATING_NOTE_ID:{rules:[64],inclusive:!1},FLOATING_NOTE:{rules:[61,62,63],inclusive:!1},NOTE_TEXT:{rules:[66,67],inclusive:!1},NOTE_ID:{rules:[65],inclusive:!1},NOTE:{rules:[58,59,60],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[31],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[30],inclusive:!1},CLASS_STYLE:{rules:[28],inclusive:!1},CLASS:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[25],inclusive:!1},CLASSDEF:{rules:[23,24],inclusive:!1},acc_descr_multiline:{rules:[20,21],inclusive:!1},acc_descr:{rules:[18],inclusive:!1},acc_title:{rules:[16],inclusive:!1},SCALE:{rules:[13,14,33,34],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[48],inclusive:!1},STATE_STRING:{rules:[49,50],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[9,10,36,37,38,39,40,41,46,47,51,52,53],inclusive:!1},ID:{rules:[9,10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,10,11,12,15,17,19,22,26,29,32,35,53,57,68,69,70,71,72,73,74,76,77,78],inclusive:!0}}}}();function w(){this.yy={}}return K.lexer=R,(0,o.K2)(w,"Parser"),w.prototype=K,K.Parser=w,new w}();a.parser=a;var l=a,c="state",h="relation",d="default",u="divider",p="fill:none",y="fill: #333",g="text",f="normal",m="rect",S="rectWithTitle",_="divider",b="roundedWithTitle",T="statediagram",k=`${T}-state`,E="transition",x=`${E} note-edge`,D=`${T}-note`,C=`${T}-cluster`,$=`${T}-cluster-alt`,v="parent",L="note",I="----",A=`${I}${L}`,K=`${I}${v}`,R=(0,o.K2)(((t,e="TB")=>{if(!t.doc)return e;let s=e;for(const e of t.doc)"dir"===e.stmt&&(s=e.value);return s}),"getDir"),w={getClasses:(0,o.K2)((function(t,e){return e.db.extract(e.db.getRootDocV2()),e.db.getClasses()}),"getClasses"),draw:(0,o.K2)((async function(t,e,s,a){o.Rm.info("REF0:"),o.Rm.info("Drawing state diagram (v2)",e);const{securityLevel:l,state:c,layout:h}=(0,o.D7)();a.db.extract(a.db.getRootDocV2());const d=a.db.getData(),u=(0,i.A)(e,l);d.type=a.type,d.layoutAlgorithm=h,d.nodeSpacing=c?.nodeSpacing||50,d.rankSpacing=c?.rankSpacing||50,d.markers=["barb"],d.diagramId=e,await(0,n.XX)(d,u),r._K.insertTitle(u,"statediagramTitleText",c?.titleTopMargin??25,a.db.getDiagramTitle()),(0,i.P)(u,8,T,c?.useMaxWidth??!0)}),"draw"),getDir:R},O=new Map,N=0;function B(t="",e=0,s="",i=I){return`state-${t}${null!==s&&s.length>0?`${i}${s}`:""}-${e}`}(0,o.K2)(B,"stateDomId");var F=(0,o.K2)(((t,e,s,i,n,r,a,l)=>{o.Rm.trace("items",e),e.forEach((e=>{switch(e.stmt){case c:case d:z(t,e,s,i,n,r,a,l);break;case h:{z(t,e.state1,s,i,n,r,a,l),z(t,e.state2,s,i,n,r,a,l);const c={id:"edge"+N,start:e.state1.id,end:e.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:p,labelStyle:"",label:o.Y2.sanitizeText(e.description,(0,o.D7)()),arrowheadStyle:y,labelpos:"c",labelType:g,thickness:f,classes:E,look:a};n.push(c),N++}}}))}),"setupDoc"),P=(0,o.K2)(((t,e="TB")=>{let s=e;if(t.doc)for(const e of t.doc)"dir"===e.stmt&&(s=e.value);return s}),"getDir");function Y(t,e,s){if(!e.id||""===e.id||""===e.id)return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach((t=>{if(s.get(t)){const i=s.get(t);e.cssCompiledStyles=[...e.cssCompiledStyles,...i.styles]}})));const i=t.find((t=>t.id===e.id));i?Object.assign(i,e):t.push(e)}function G(t){return t?.classes?.join(" ")??""}function j(t){return t?.styles??[]}(0,o.K2)(Y,"insertOrUpdateNode"),(0,o.K2)(G,"getClassesFromDbInfo"),(0,o.K2)(j,"getStylesFromDbInfo");var z=(0,o.K2)(((t,e,s,i,n,r,a,l)=>{const c=e.id,h=s.get(c),T=G(h),E=j(h);if(o.Rm.info("dataFetcher parsedItem",e,h,E),"root"!==c){let s=m;!0===e.start?s="stateStart":!1===e.start&&(s="stateEnd"),e.type!==d&&(s=e.type),O.get(c)||O.set(c,{id:c,shape:s,description:o.Y2.sanitizeText(c,(0,o.D7)()),cssClasses:`${T} ${k}`,cssStyles:E});const h=O.get(c);e.description&&(Array.isArray(h.description)?(h.shape=S,h.description.push(e.description)):h.description?.length>0?(h.shape=S,h.description===c?h.description=[e.description]:h.description=[h.description,e.description]):(h.shape=m,h.description=e.description),h.description=o.Y2.sanitizeTextOrArray(h.description,(0,o.D7)())),1===h.description?.length&&h.shape===S&&("group"===h.type?h.shape=b:h.shape=m),!h.type&&e.doc&&(o.Rm.info("Setting cluster for XCX",c,P(e)),h.type="group",h.isGroup=!0,h.dir=P(e),h.shape=e.type===u?_:b,h.cssClasses=`${h.cssClasses} ${C} ${r?$:""}`);const I={labelStyle:"",shape:h.shape,label:h.description,cssClasses:h.cssClasses,cssCompiledStyles:[],cssStyles:h.cssStyles,id:c,dir:h.dir,domId:B(c,N),type:h.type,isGroup:"group"===h.type,padding:8,rx:10,ry:10,look:a};if(I.shape===_&&(I.label=""),t&&"root"!==t.id&&(o.Rm.trace("Setting node ",c," to be child of its parent ",t.id),I.parentId=t.id),I.centerLabel=!0,e.note){const t={labelStyle:"",shape:"note",label:e.note.text,cssClasses:D,cssStyles:[],cssCompilesStyles:[],id:c+A+"-"+N,domId:B(c,N,L),type:h.type,isGroup:"group"===h.type,padding:(0,o.D7)().flowchart.padding,look:a,position:e.note.position},s=c+K,r={labelStyle:"",shape:"noteGroup",label:e.note.text,cssClasses:h.cssClasses,cssStyles:[],id:c+K,domId:B(c,N,v),type:"group",isGroup:!0,padding:16,look:a,position:e.note.position};N++,r.id=s,t.parentId=s,Y(i,r,l),Y(i,t,l),Y(i,I,l);let d=c,u=t.id;"left of"===e.note.position&&(d=t.id,u=c),n.push({id:d+"-"+u,start:d,end:u,arrowhead:"none",arrowTypeEnd:"",style:p,labelStyle:"",classes:x,arrowheadStyle:y,labelpos:"c",labelType:g,thickness:f,look:a})}else Y(i,I,l)}e.doc&&(o.Rm.trace("Adding nodes children "),F(e,e.doc,s,i,n,!r,a,l))}),"dataFetcher"),U=(0,o.K2)((()=>{O.clear(),N=0}),"reset"),M="[*]",X="start",V=M,W="color",H="fill";function J(){return new Map}(0,o.K2)(J,"newClassesList");var q=[],Z=[],Q="LR",tt=[],et=J(),st=(0,o.K2)((()=>({relations:[],states:new Map,documents:{}})),"newDoc"),it={root:st()},nt=it.root,rt=0,ot=0,at=(0,o.K2)((t=>JSON.parse(JSON.stringify(t))),"clone"),lt=(0,o.K2)((t=>{o.Rm.info("Setting root doc",t),tt=t}),"setRootDoc"),ct=(0,o.K2)((()=>tt),"getRootDoc"),ht=(0,o.K2)(((t,e,s)=>{if(e.stmt===h)ht(t,e.state1,!0),ht(t,e.state2,!1);else if(e.stmt===c&&("[*]"===e.id?(e.id=s?t.id+"_start":t.id+"_end",e.start=s):e.id=e.id.trim()),e.doc){const t=[];let s,i=[];for(s=0;s0&&i.length>0){const s={stmt:c,id:(0,r.$C)(),type:"divider",doc:at(i)};t.push(at(s)),e.doc=t}e.doc.forEach((t=>ht(e,t,!0)))}}),"docTranslator"),dt=(0,o.K2)((()=>(ht({id:"root"},{id:"root",doc:tt},!0),{id:"root",doc:tt})),"getRootDocV2"),ut=(0,o.K2)((t=>{let e;e=t.doc?t.doc:t,o.Rm.info(e),yt(!0),o.Rm.info("Extract initial document:",e),e.forEach((t=>{switch(o.Rm.warn("Statement",t.stmt),t.stmt){case c:pt(t.id.trim(),t.type,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles);break;case h:xt(t.state1,t.state2,t.description);break;case"classDef":vt(t.id.trim(),t.classes);break;case"style":{const e=t.id.trim().split(","),s=t.styleClass.split(",");e.forEach((t=>{let e=gt(t);if(void 0===e){const s=t.trim();pt(s),e=gt(s)}e.styles=s.map((t=>t.replace(/;/g,"")?.trim()))}))}break;case"applyClass":It(t.id.trim(),t.styleClass)}}));const s=ft(),i=(0,o.D7)().look;U(),z(void 0,dt(),s,q,Z,!0,i,et),q.forEach((t=>{if(Array.isArray(t.label)){if(t.description=t.label.slice(1),t.isGroup&&t.description.length>0)throw new Error("Group nodes can only have label. Remove the additional description for node ["+t.id+"]");t.label=t.label[0]}}))}),"extract"),pt=(0,o.K2)((function(t,e=d,s=null,i=null,n=null,r=null,a=null,l=null){const c=t?.trim();if(nt.states.has(c)?(nt.states.get(c).doc||(nt.states.get(c).doc=s),nt.states.get(c).type||(nt.states.get(c).type=e)):(o.Rm.info("Adding state ",c,i),nt.states.set(c,{id:c,descriptions:[],type:e,doc:s,note:n,classes:[],styles:[],textStyles:[]})),i&&(o.Rm.info("Setting state description",c,i),"string"==typeof i&&Dt(c,i.trim()),"object"==typeof i&&i.forEach((t=>Dt(c,t.trim())))),n){const t=nt.states.get(c);t.note=n,t.note.text=o.Y2.sanitizeText(t.note.text,(0,o.D7)())}r&&(o.Rm.info("Setting state classes",c,r),("string"==typeof r?[r]:r).forEach((t=>It(c,t.trim())))),a&&(o.Rm.info("Setting state styles",c,a),("string"==typeof a?[a]:a).forEach((t=>At(c,t.trim())))),l&&(o.Rm.info("Setting state styles",c,a),("string"==typeof l?[l]:l).forEach((t=>Kt(c,t.trim()))))}),"addState"),yt=(0,o.K2)((function(t){q=[],Z=[],it={root:st()},nt=it.root,rt=0,et=J(),t||(0,o.IU)()}),"clear"),gt=(0,o.K2)((function(t){return nt.states.get(t)}),"getState"),ft=(0,o.K2)((function(){return nt.states}),"getStates"),mt=(0,o.K2)((function(){o.Rm.info("Documents = ",it)}),"logDocuments"),St=(0,o.K2)((function(){return nt.relations}),"getRelations");function _t(t=""){let e=t;return t===M&&(rt++,e=`${X}${rt}`),e}function bt(t="",e=d){return t===M?X:e}function Tt(t=""){let e=t;return t===V&&(e="end"+ ++rt),e}function kt(t="",e=d){return t===V?"end":e}function Et(t,e,s){let i=_t(t.id.trim()),n=bt(t.id.trim(),t.type),r=_t(e.id.trim()),a=bt(e.id.trim(),e.type);pt(i,n,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),pt(r,a,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),nt.relations.push({id1:i,id2:r,relationTitle:o.Y2.sanitizeText(s,(0,o.D7)())})}(0,o.K2)(_t,"startIdIfNeeded"),(0,o.K2)(bt,"startTypeIfNeeded"),(0,o.K2)(Tt,"endIdIfNeeded"),(0,o.K2)(kt,"endTypeIfNeeded"),(0,o.K2)(Et,"addRelationObjs");var xt=(0,o.K2)((function(t,e,s){if("object"==typeof t)Et(t,e,s);else{const i=_t(t.trim()),n=bt(t),r=Tt(e.trim()),a=kt(e);pt(i,n),pt(r,a),nt.relations.push({id1:i,id2:r,title:o.Y2.sanitizeText(s,(0,o.D7)())})}}),"addRelation"),Dt=(0,o.K2)((function(t,e){const s=nt.states.get(t),i=e.startsWith(":")?e.replace(":","").trim():e;s.descriptions.push(o.Y2.sanitizeText(i,(0,o.D7)()))}),"addDescription"),Ct=(0,o.K2)((function(t){return":"===t.substring(0,1)?t.substr(2).trim():t.trim()}),"cleanupLabel"),$t=(0,o.K2)((()=>"divider-id-"+ ++ot),"getDividerId"),vt=(0,o.K2)((function(t,e=""){et.has(t)||et.set(t,{id:t,styles:[],textStyles:[]});const s=et.get(t);null!=e&&e.split(",").forEach((t=>{const e=t.replace(/([^;]*);/,"$1").trim();if(RegExp(W).exec(t)){const t=e.replace(H,"bgFill").replace(W,H);s.textStyles.push(t)}s.styles.push(e)}))}),"addStyleClass"),Lt=(0,o.K2)((function(){return et}),"getClasses"),It=(0,o.K2)((function(t,e){t.split(",").forEach((function(t){let s=gt(t);if(void 0===s){const e=t.trim();pt(e),s=gt(e)}s.classes.push(e)}))}),"setCssClass"),At=(0,o.K2)((function(t,e){const s=gt(t);void 0!==s&&s.styles.push(e)}),"setStyle"),Kt=(0,o.K2)((function(t,e){const s=gt(t);void 0!==s&&s.textStyles.push(e)}),"setTextStyle"),Rt=(0,o.K2)((()=>Q),"getDirection"),wt=(0,o.K2)((t=>{Q=t}),"setDirection"),Ot=(0,o.K2)((t=>t&&":"===t[0]?t.substr(1).trim():t.trim()),"trimColon"),Nt=(0,o.K2)((()=>{const t=(0,o.D7)();return{nodes:q,edges:Z,other:{},config:t,direction:R(dt())}}),"getData"),Bt={getConfig:(0,o.K2)((()=>(0,o.D7)().state),"getConfig"),getData:Nt,addState:pt,clear:yt,getState:gt,getStates:ft,getRelations:St,getClasses:Lt,getDirection:Rt,addRelation:xt,getDividerId:$t,setDirection:wt,cleanupLabel:Ct,lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},logDocuments:mt,getRootDoc:ct,setRootDoc:lt,getRootDocV2:dt,extract:ut,trimColon:Ot,getAccTitle:o.iN,setAccTitle:o.SV,getAccDescription:o.m7,setAccDescription:o.EI,addStyleClass:vt,setCssClass:It,addDescription:Dt,setDiagramTitle:o.ke,getDiagramTitle:o.ab},Ft=(0,o.K2)((t=>`\ndefs #statediagram-barbEnd {\n fill: ${t.transitionColor};\n stroke: ${t.transitionColor};\n }\ng.stateGroup text {\n fill: ${t.nodeBorder};\n stroke: none;\n font-size: 10px;\n}\ng.stateGroup text {\n fill: ${t.textColor};\n stroke: none;\n font-size: 10px;\n\n}\ng.stateGroup .state-title {\n font-weight: bolder;\n fill: ${t.stateLabelColor};\n}\n\ng.stateGroup rect {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n}\n\ng.stateGroup line {\n stroke: ${t.lineColor};\n stroke-width: 1;\n}\n\n.transition {\n stroke: ${t.transitionColor};\n stroke-width: 1;\n fill: none;\n}\n\n.stateGroup .composit {\n fill: ${t.background};\n border-bottom: 1px\n}\n\n.stateGroup .alt-composit {\n fill: #e0e0e0;\n border-bottom: 1px\n}\n\n.state-note {\n stroke: ${t.noteBorderColor};\n fill: ${t.noteBkgColor};\n\n text {\n fill: ${t.noteTextColor};\n stroke: none;\n font-size: 10px;\n }\n}\n\n.stateLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ${t.mainBkg};\n opacity: 0.5;\n}\n\n.edgeLabel .label rect {\n fill: ${t.labelBackgroundColor};\n opacity: 0.5;\n}\n.edgeLabel {\n background-color: ${t.edgeLabelBackground};\n p {\n background-color: ${t.edgeLabelBackground};\n }\n rect {\n opacity: 0.5;\n background-color: ${t.edgeLabelBackground};\n fill: ${t.edgeLabelBackground};\n }\n text-align: center;\n}\n.edgeLabel .label text {\n fill: ${t.transitionLabelColor||t.tertiaryTextColor};\n}\n.label div .edgeLabel {\n color: ${t.transitionLabelColor||t.tertiaryTextColor};\n}\n\n.stateLabel text {\n fill: ${t.stateLabelColor};\n font-size: 10px;\n font-weight: bold;\n}\n\n.node circle.state-start {\n fill: ${t.specialStateColor};\n stroke: ${t.specialStateColor};\n}\n\n.node .fork-join {\n fill: ${t.specialStateColor};\n stroke: ${t.specialStateColor};\n}\n\n.node circle.state-end {\n fill: ${t.innerEndBackground};\n stroke: ${t.background};\n stroke-width: 1.5\n}\n.end-state-inner {\n fill: ${t.compositeBackground||t.background};\n // stroke: ${t.background};\n stroke-width: 1.5\n}\n\n.node rect {\n fill: ${t.stateBkg||t.mainBkg};\n stroke: ${t.stateBorder||t.nodeBorder};\n stroke-width: 1px;\n}\n.node polygon {\n fill: ${t.mainBkg};\n stroke: ${t.stateBorder||t.nodeBorder};;\n stroke-width: 1px;\n}\n#statediagram-barbEnd {\n fill: ${t.lineColor};\n}\n\n.statediagram-cluster rect {\n fill: ${t.compositeTitleBackground};\n stroke: ${t.stateBorder||t.nodeBorder};\n stroke-width: 1px;\n}\n\n.cluster-label, .nodeLabel {\n color: ${t.stateLabelColor};\n // line-height: 1;\n}\n\n.statediagram-cluster rect.outer {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state .divider {\n stroke: ${t.stateBorder||t.nodeBorder};\n}\n\n.statediagram-state .title-state {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-cluster.statediagram-cluster .inner {\n fill: ${t.compositeBackground||t.background};\n}\n.statediagram-cluster.statediagram-cluster-alt .inner {\n fill: ${t.altBackground?t.altBackground:"#efefef"};\n}\n\n.statediagram-cluster .inner {\n rx:0;\n ry:0;\n}\n\n.statediagram-state rect.basic {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state rect.divider {\n stroke-dasharray: 10,10;\n fill: ${t.altBackground?t.altBackground:"#efefef"};\n}\n\n.note-edge {\n stroke-dasharray: 5;\n}\n\n.statediagram-note rect {\n fill: ${t.noteBkgColor};\n stroke: ${t.noteBorderColor};\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n.statediagram-note rect {\n fill: ${t.noteBkgColor};\n stroke: ${t.noteBorderColor};\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n\n.statediagram-note text {\n fill: ${t.noteTextColor};\n}\n\n.statediagram-note .nodeLabel {\n color: ${t.noteTextColor};\n}\n.statediagram .edgeLabel {\n color: red; // ${t.noteTextColor};\n}\n\n#dependencyStart, #dependencyEnd {\n fill: ${t.lineColor};\n stroke: ${t.lineColor};\n stroke-width: 1;\n}\n\n.statediagramTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n}\n`),"getStyles")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/165-ccff0039.chunk.min.js b/themes/hugo-geekdoc/static/js/165-ccff0039.chunk.min.js new file mode 100644 index 000000000..894cb7dee --- /dev/null +++ b/themes/hugo-geekdoc/static/js/165-ccff0039.chunk.min.js @@ -0,0 +1,2 @@ +/*! For license information please see 165-ccff0039.chunk.min.js.LICENSE.txt */ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[165],{165:(e,t,n)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,i=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw i}}}}n.d(t,{A:()=>ju});var h="undefined"==typeof window?null:window,p=h?h.navigator:null;h&&h.document;var f=r(""),g=r({}),v=r((function(){})),y="undefined"==typeof HTMLElement?"undefined":r(HTMLElement),m=function(e){return e&&e.instanceString&&x(e.instanceString)?e.instanceString():null},b=function(e){return null!=e&&r(e)==f},x=function(e){return null!=e&&r(e)===v},w=function(e){return!S(e)&&(Array.isArray?Array.isArray(e):null!=e&&e instanceof Array)},E=function(e){return null!=e&&r(e)===g&&!w(e)&&e.constructor===Object},k=function(e){return null!=e&&r(e)===r(1)&&!isNaN(e)},C=function(e){return"undefined"===y?void 0:null!=e&&e instanceof HTMLElement},S=function(e){return P(e)||D(e)},P=function(e){return"collection"===m(e)&&e._private.single},D=function(e){return"collection"===m(e)&&!e._private.single},T=function(e){return"core"===m(e)},_=function(e){return"stylesheet"===m(e)},M=function(e){return null==e||!(""!==e&&!e.match(/^\s+$/))},B=function(e){return function(e){return null!=e&&r(e)===g}(e)&&x(e.then)},N=function(e,t){t||(t=function(){if(1===arguments.length)return arguments[0];if(0===arguments.length)return"undefined";for(var e=[],t=0;tt?1:0},Y=null!=Object.assign?Object.assign.bind(Object):function(e){for(var t=arguments,n=1;n=t||n<0||d&&e-u>=i}function g(){var e=Q();if(f(e))return v(e);s=setTimeout(g,function(e){var n=t-(e-l);return d?ye(n,i-(e-u)):n}(e))}function v(e){return s=void 0,h&&r?p(e):(r=a=void 0,o)}function y(){var e=Q(),n=f(e);if(r=arguments,a=this,l=e,n){if(void 0===s)return function(e){return u=e,s=setTimeout(g,t),c?p(e):o}(l);if(d)return clearTimeout(s),s=setTimeout(g,t),p(l)}return void 0===s&&(s=setTimeout(g,t)),o}return t=ge(t)||0,K(n)&&(c=!!n.leading,i=(d="maxWait"in n)?ve(ge(n.maxWait)||0,t):i,h="trailing"in n?!!n.trailing:h),y.cancel=function(){void 0!==s&&clearTimeout(s),u=0,r=l=a=s=void 0},y.flush=function(){return void 0===s?o:v(Q())},y},be=h?h.performance:null,xe=be&&be.now?function(){return be.now()}:function(){return Date.now()},we=function(){if(h){if(h.requestAnimationFrame)return function(e){h.requestAnimationFrame(e)};if(h.mozRequestAnimationFrame)return function(e){h.mozRequestAnimationFrame(e)};if(h.webkitRequestAnimationFrame)return function(e){h.webkitRequestAnimationFrame(e)};if(h.msRequestAnimationFrame)return function(e){h.msRequestAnimationFrame(e)}}return function(e){e&&setTimeout((function(){e(xe())}),1e3/60)}}(),Ee=function(e){return we(e)},ke=xe,Ce=9261,Se=5381,Pe=function(e){for(var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ce;!(t=e.next()).done;)n=65599*n+t.value|0;return n},De=function(e){return 65599*(arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ce)+e|0},Te=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Se;return(t<<5)+t+e|0},_e=function(e){return 2097152*e[0]+e[1]},Me=function(e,t){return[De(e[0],t[0]),Te(e[1],t[1])]},Be=function(e,t){var n={value:0,done:!1},r=0,a=e.length;return Pe({next:function(){return r=0&&(e[r]!==t||(e.splice(r,1),!n));r--);},$e=function(e){e.splice(0,e.length)},Qe=function(e,t,n){return n&&(t=A(n,t)),e[t]},Je=function(e,t,n,r){n&&(t=A(n,t)),e[t]=r},et="undefined"!=typeof Map?Map:function(){function e(){a(this,e),this._obj={}}return o(e,[{key:"set",value:function(e,t){return this._obj[e]=t,this}},{key:"delete",value:function(e){return this._obj[e]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(e){return void 0!==this._obj[e]}},{key:"get",value:function(e){return this._obj[e]}}]),e}(),tt=function(){function e(t){if(a(this,e),this._obj=Object.create(null),this.size=0,null!=t){var n;n=null!=t.instanceString&&t.instanceString()===this.instanceString()?t.toArray():t;for(var r=0;r2&&void 0!==arguments[2])||arguments[2];if(void 0!==e&&void 0!==t&&T(e)){var r=t.group;if(null==r&&(r=t.data&&null!=t.data.source&&null!=t.data.target?"edges":"nodes"),"nodes"===r||"edges"===r){this.length=1,this[0]=this;var a=this._private={cy:e,single:!0,data:t.data||{},position:t.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:r,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!t.selected,selectable:void 0===t.selectable||!!t.selectable,locked:!!t.locked,grabbed:!1,grabbable:void 0===t.grabbable||!!t.grabbable,pannable:void 0===t.pannable?"edges"===r:!!t.pannable,active:!1,classes:new nt,animation:{current:[],queue:[]},rscratch:{},scratch:t.scratch||{},edges:[],children:[],parent:t.parent&&t.parent.isNode()?t.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(null==a.position.x&&(a.position.x=0),null==a.position.y&&(a.position.y=0),t.renderedPosition){var i=t.renderedPosition,o=e.pan(),s=e.zoom();a.position={x:(i.x-o.x)/s,y:(i.y-o.y)/s}}var l=[];w(t.classes)?l=t.classes:b(t.classes)&&(l=t.classes.split(/\s+/));for(var u=0,c=l.length;ut?1:0},u=function(e,t,a,i,o){var s;if(null==a&&(a=0),null==o&&(o=n),a<0)throw new Error("lo must be non-negative");for(null==i&&(i=e.length);an;0<=n?t++:t--)u.push(t);return u}.apply(this).reverse()).length;ig;0<=g?++h:--h)v.push(i(e,r));return v},f=function(e,t,r,a){var i,o,s;for(null==a&&(a=n),i=e[r];r>t&&a(i,o=e[s=r-1>>1])<0;)e[r]=o,r=s;return e[r]=i},g=function(e,t,r){var a,i,o,s,l;for(null==r&&(r=n),i=e.length,l=t,o=e[t],a=2*t+1;a0;){var k=y.pop(),C=g(k),S=k.id();if(d[S]=C,C!==1/0)for(var P=k.neighborhood().intersect(p),D=0;D0)for(n.unshift(t);c[a];){var i=c[a];n.unshift(i.edge),n.unshift(i.node),a=(r=i.node).id()}return o.spawn(n)}}}},dt={kruskal:function(e){e=e||function(e){return 1};for(var t=this.byGroup(),n=t.nodes,r=t.edges,a=n.length,i=new Array(a),o=n,s=function(e){for(var t=0;t0;){if(u=(l=g.pop()).id(),v.delete(u),w++,u===d){for(var E=[],k=a,C=d,S=m[C];E.unshift(k),null!=S&&E.unshift(S),null!=(k=y[C]);)S=m[C=k.id()];return{found:!0,distance:h[u],path:this.spawn(E),steps:w}}f[u]=!0;for(var P=l._private.edges,D=0;DD&&(p[P]=D,y[P]=S,m[P]=w),!a){var T=S*u+C;!a&&p[T]>D&&(p[T]=D,y[T]=C,m[T]=w)}}}for(var _=0;_1&&void 0!==arguments[1]?arguments[1]:i,r=[],a=m(e);;){if(null==a)return t.spawn();var o=y(a),l=o.edge,u=o.pred;if(r.unshift(a[0]),a.same(n)&&r.length>0)break;null!=l&&r.unshift(l),a=u}return s.spawn(r)},hasNegativeWeightCycle:f,negativeWeightCycles:g}}},mt=Math.sqrt(2),bt=function(e,t,n){0===n.length&&qe("Karger-Stein must be run on a connected (sub)graph");for(var r=n[e],a=r[1],i=r[2],o=t[a],s=t[i],l=n,u=l.length-1;u>=0;u--){var c=l[u],d=c[1],h=c[2];(t[d]===o&&t[h]===s||t[d]===s&&t[h]===o)&&l.splice(u,1)}for(var p=0;pr;){var a=Math.floor(Math.random()*t.length);t=bt(a,e,t),n--}return t},wt={kargerStein:function(){var e=this,t=this.byGroup(),n=t.nodes,r=t.edges;r.unmergeBy((function(e){return e.isLoop()}));var a=n.length,i=r.length,o=Math.ceil(Math.pow(Math.log(a)/Math.LN2,2)),s=Math.floor(a/mt);if(!(a<2)){for(var l=[],u=0;u0?1:e<0?-1:0},Tt=function(e,t){return Math.sqrt(_t(e,t))},_t=function(e,t){var n=t.x-e.x,r=t.y-e.y;return n*n+r*r},Mt=function(e){for(var t=e.length,n=0,r=0;r=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(null!=e.w&&null!=e.h&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},At=function(e,t){e.x1=Math.min(e.x1,t.x1),e.x2=Math.max(e.x2,t.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,t.y1),e.y2=Math.max(e.y2,t.y2),e.h=e.y2-e.y1},Lt=function(e,t,n){e.x1=Math.min(e.x1,t),e.x2=Math.max(e.x2,t),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,n),e.y2=Math.max(e.y2,n),e.h=e.y2-e.y1},Ot=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.x1-=t,e.x2+=t,e.y1-=t,e.y2+=t,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},Rt=function(e){var t,n,r,a,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0];if(1===i.length)t=n=r=a=i[0];else if(2===i.length)t=r=i[0],a=n=i[1];else if(4===i.length){var o=l(i,4);t=o[0],n=o[1],r=o[2],a=o[3]}return e.x1-=a,e.x2+=n,e.y1-=t,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},Vt=function(e,t){e.x1=t.x1,e.y1=t.y1,e.x2=t.x2,e.y2=t.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},Ft=function(e,t){return!(e.x1>t.x2||t.x1>e.x2||e.x2t.y2||t.y1>e.y2)},jt=function(e,t,n){return e.x1<=t&&t<=e.x2&&e.y1<=n&&n<=e.y2},qt=function(e,t){return jt(e,t.x1,t.y1)&&jt(e,t.x2,t.y2)},Yt=function(e,t,n,r,a,i,o){var s,l,u=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"auto",c="auto"===u?ln(a,i):u,d=a/2,h=i/2,p=(c=Math.min(c,d,h))!==d,f=c!==h;if(p){var g=r-h-o;if((s=tn(e,t,n,r,n-d+c-o,g,n+d-c+o,g,!1)).length>0)return s}if(f){var v=n+d+o;if((s=tn(e,t,n,r,v,r-h+c-o,v,r+h-c+o,!1)).length>0)return s}if(p){var y=r+h+o;if((s=tn(e,t,n,r,n-d+c-o,y,n+d-c+o,y,!1)).length>0)return s}if(f){var m=n-d-o;if((s=tn(e,t,n,r,m,r-h+c-o,m,r+h-c+o,!1)).length>0)return s}var b=n-d+c,x=r-h+c;if((l=Jt(e,t,n,r,b,x,c+o)).length>0&&l[0]<=b&&l[1]<=x)return[l[0],l[1]];var w=n+d-c,E=r-h+c;if((l=Jt(e,t,n,r,w,E,c+o)).length>0&&l[0]>=w&&l[1]<=E)return[l[0],l[1]];var k=n+d-c,C=r+h-c;if((l=Jt(e,t,n,r,k,C,c+o)).length>0&&l[0]>=k&&l[1]>=C)return[l[0],l[1]];var S=n-d+c,P=r+h-c;return(l=Jt(e,t,n,r,S,P,c+o)).length>0&&l[0]<=S&&l[1]>=P?[l[0],l[1]]:[]},Xt=function(e,t,n,r,a,i,o){var s=o,l=Math.min(n,a),u=Math.max(n,a),c=Math.min(r,i),d=Math.max(r,i);return l-s<=e&&e<=u+s&&c-s<=t&&t<=d+s},Wt=function(e,t,n,r,a,i,o,s,l){var u=Math.min(n,o,a)-l,c=Math.max(n,o,a)+l,d=Math.min(r,s,i)-l,h=Math.max(r,s,i)+l;return!(ec||th)},Ht=function(e,t,n,r,a,i,o,s){var l,u,c,d,h,p,f,g,v,y,m,b,x,w=[];u=9*n*a-3*n*n-3*n*o-6*a*a+3*a*o+9*r*i-3*r*r-3*r*s-6*i*i+3*i*s,c=3*n*n-6*n*a+n*o-n*e+2*a*a+2*a*e-o*e+3*r*r-6*r*i+r*s-r*t+2*i*i+2*i*t-s*t,d=1*n*a-n*n+n*e-a*e+r*i-r*r+r*t-i*t,0===(l=1*n*n-4*n*a+2*n*o+4*a*a-4*a*o+o*o+r*r-4*r*i+2*r*s+4*i*i-4*i*s+s*s)&&(l=1e-5),g=-27*(d/=l)+(u/=l)*(9*(c/=l)-u*u*2),p=(f=(3*c-u*u)/9)*f*f+(g/=54)*g,(h=w)[1]=0,b=u/3,p>0?(y=(y=g+Math.sqrt(p))<0?-Math.pow(-y,1/3):Math.pow(y,1/3),m=(m=g-Math.sqrt(p))<0?-Math.pow(-m,1/3):Math.pow(m,1/3),h[0]=-b+y+m,b+=(y+m)/2,h[4]=h[2]=-b,b=Math.sqrt(3)*(-m+y)/2,h[3]=b,h[5]=-b):(h[5]=h[3]=0,0===p?(x=g<0?-Math.pow(-g,1/3):Math.pow(g,1/3),h[0]=2*x-b,h[4]=h[2]=-(x+b)):(v=(f=-f)*f*f,v=Math.acos(g/Math.sqrt(v)),x=2*Math.sqrt(f),h[0]=-b+x*Math.cos(v/3),h[2]=-b+x*Math.cos((v+2*Math.PI)/3),h[4]=-b+x*Math.cos((v+4*Math.PI)/3)));for(var E=[],k=0;k<6;k+=2)Math.abs(w[k+1])<1e-7&&w[k]>=0&&w[k]<=1&&E.push(w[k]);E.push(1),E.push(0);for(var C,S,P,D=-1,T=0;T=0?Pl?(e-a)*(e-a)+(t-i)*(t-i):u-d},Gt=function(e,t,n){for(var r,a,i,o,s=0,l=0;l=e&&e>=i||r<=e&&e<=i))continue;(e-r)/(i-r)*(o-a)+a>t&&s++}return s%2!=0},Ut=function(e,t,n,r,a,i,o,s,l){var u,c=new Array(n.length);null!=s[0]?(u=Math.atan(s[1]/s[0]),s[0]<0?u+=Math.PI/2:u=-u-Math.PI/2):u=s;for(var d,h=Math.cos(-u),p=Math.sin(-u),f=0;f0){var g=$t(c,-l);d=Zt(g)}else d=c;return Gt(e,t,d)},Zt=function(e){for(var t,n,r,a,i,o,s,l,u=new Array(e.length/2),c=0;c=0&&f<=1&&v.push(f),g>=0&&g<=1&&v.push(g),0===v.length)return[];var y=v[0]*s[0]+e,m=v[0]*s[1]+t;return v.length>1?v[0]==v[1]?[y,m]:[y,m,v[1]*s[0]+e,v[1]*s[1]+t]:[y,m]},en=function(e,t,n){return t<=e&&e<=n||n<=e&&e<=t?e:e<=t&&t<=n||n<=t&&t<=e?t:n},tn=function(e,t,n,r,a,i,o,s,l){var u=e-a,c=n-e,d=o-a,h=t-i,p=r-t,f=s-i,g=d*h-f*u,v=c*h-p*u,y=f*c-d*p;if(0!==y){var m=g/y,b=v/y,x=-.001;return x<=m&&m<=1.001&&x<=b&&b<=1.001||l?[e+m*c,t+m*p]:[]}return 0===g||0===v?en(e,n,o)===o?[o,s]:en(e,n,a)===a?[a,i]:en(a,o,n)===n?[n,r]:[]:[]},nn=function(e,t,n,r,a,i,o,s){var l,u,c,d,h,p,f=[],g=new Array(n.length),v=!0;if(null==i&&(v=!1),v){for(var y=0;y0){var m=$t(g,-s);u=Zt(m)}else u=g}else u=n;for(var b=0;bu&&(u=t)},d=function(e){return l[e]},h=0;h0?x.edgesTo(b)[0]:b.edgesTo(x)[0];var w=r(m);b=b.id(),h[b]>h[v]+w&&(h[b]=h[v]+w,p.nodes.indexOf(b)<0?p.push(b):p.updateItem(b),u[b]=0,l[b]=[]),h[b]==h[v]+w&&(u[b]=u[b]+u[v],l[b].push(v))}else for(var E=0;E0;){for(var P=n.pop(),D=0;D0&&o.push(n[s]);0!==o.length&&a.push(r.collection(o))}return a}(c,l,t,r);return b=function(e){for(var t=0;t5&&void 0!==arguments[5]?arguments[5]:_n,o=r,s=0;s=2?An(e,t,n,0,Nn,zn):An(e,t,n,0,Bn)},squaredEuclidean:function(e,t,n){return An(e,t,n,0,Nn)},manhattan:function(e,t,n){return An(e,t,n,0,Bn)},max:function(e,t,n){return An(e,t,n,-1/0,In)}};function On(e,t,n,r,a,i){var o;return o=x(e)?e:Ln[e]||Ln.euclidean,0===t&&x(e)?o(a,i):o(t,n,r,a,i)}Ln["squared-euclidean"]=Ln.squaredEuclidean,Ln.squaredeuclidean=Ln.squaredEuclidean;var Rn=Ue({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),Vn=function(e){return Rn(e)},Fn=function(e,t,n,r,a){var i="kMedoids"!==a?function(e){return n[e]}:function(e){return r[e](n)},o=n,s=t;return On(e,r.length,i,(function(e){return r[e](t)}),o,s)},jn=function(e,t,n){for(var r=n.length,a=new Array(r),i=new Array(r),o=new Array(t),s=null,l=0;ln)return!1;return!0},Hn=function(e,t,n){for(var r=0;ra&&(a=t[l][u],i=u);o[i].push(e[l])}for(var c=0;c=a.threshold||"dendrogram"===a.mode&&1===e.length)return!1;var p,f=t[o],g=t[r[o]];p="dendrogram"===a.mode?{left:f,right:g,key:f.key}:{value:f.value.concat(g.value),key:f.key},e[f.index]=p,e.splice(g.index,1),t[f.key]=p;for(var v=0;vn[g.key][y.key]&&(i=n[g.key][y.key])):"max"===a.linkage?(i=n[f.key][y.key],n[f.key][y.key]o&&(i=l,o=t[a*e+l])}i>0&&r.push(i)}for(var u=0;u1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];arguments.length>3&&void 0!==arguments[3]&&!arguments[3]?(n0&&e.splice(0,t)):e=e.slice(t,n);for(var i=0,o=e.length-1;o>=0;o--){var s=e[o];a?isFinite(s)||(e[o]=-1/0,i++):e.splice(o,1)}r&&e.sort((function(e,t){return e-t}));var l=e.length,u=Math.floor(l/2);return l%2!=0?e[u+1+i]:(e[u-1+i]+e[u+i])/2}(e):"mean"===t?function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=0,a=0,i=t;i1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=1/0,a=t;a1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=-1/0,a=t;a=D?(T=D,D=M,_=B):M>T&&(T=M);for(var N=0;N0?1:0;C[E%u.minIterations*t+R]=V,O+=V}if(O>0&&(E>=u.minIterations-1||E==u.maxIterations-1)){for(var F=0,j=0;j0&&r.push(a);return r}(t,i,o),X=function(e,t,n){for(var r=ur(e,t,n),a=0;al&&(s=u,l=c)}n[a]=i[s]}return ur(e,t,n)}(t,r,Y),W={},H=0;H1)}}));var l=Object.keys(t).filter((function(e){return t[e].cutVertex})).map((function(t){return e.getElementById(t)}));return{cut:e.spawn(l),components:a}},fr=function(){var e=this,t={},n=0,r=[],a=[],i=e.spawn(e),o=function o(s){if(a.push(s),t[s]={index:n,low:n++,explored:!1},e.getElementById(s).connectedEdges().intersection(e).forEach((function(e){var n=e.target().id();n!==s&&(n in t||o(n),t[n].explored||(t[s].low=Math.min(t[s].low,t[n].low)))})),t[s].index===t[s].low){for(var l=e.spawn();;){var u=a.pop();if(l.merge(e.getElementById(u)),t[u].low=t[s].index,t[u].explored=!0,u===s)break}var c=l.edgesWith(l),d=l.merge(c);r.push(d),i=i.difference(d)}};return e.forEach((function(e){if(e.isNode()){var n=e.id();n in t||o(n)}})),{cut:i,components:r}},gr={};[it,ct,dt,pt,gt,yt,wt,hn,fn,vn,mn,Tn,Qn,or,dr,{hierholzer:function(e){if(!E(e)){var t=arguments;e={root:t[0],directed:t[1]}}var n,r,a,i=hr(e),o=i.root,s=i.directed,l=this,u=!1;o&&(a=b(o)?this.filter(o)[0].id():o[0].id());var c={},d={};s?l.forEach((function(e){var t=e.id();if(e.isNode()){var a=e.indegree(!0),i=e.outdegree(!0),o=a-i,s=i-a;1==o?n?u=!0:n=t:1==s?r?u=!0:r=t:(s>1||o>1)&&(u=!0),c[t]=[],e.outgoers().forEach((function(e){e.isEdge()&&c[t].push(e.id())}))}else d[t]=[void 0,e.target().id()]})):l.forEach((function(e){var t=e.id();e.isNode()?(e.degree(!0)%2&&(n?r?u=!0:r=t:n=t),c[t]=[],e.connectedEdges().forEach((function(e){return c[t].push(e.id())}))):d[t]=[e.source().id(),e.target().id()]}));var h={found:!1,trail:void 0};if(u)return h;if(r&&n)if(s){if(a&&r!=a)return h;a=r}else{if(a&&r!=a&&n!=a)return h;a||(a=r)}else a||(a=l[0].id());var p=function(e){for(var t,n,r,a=e,i=[e];c[a].length;)t=c[a].shift(),n=d[t][0],a!=(r=d[t][1])?(c[r]=c[r].filter((function(e){return e!=t})),a=r):s||a==n||(c[n]=c[n].filter((function(e){return e!=t})),a=n),i.unshift(t),i.unshift(a);return i},f=[],g=[];for(g=p(a);1!=g.length;)0==c[g[0]].length?(f.unshift(l.getElementById(g.shift())),f.unshift(l.getElementById(g.shift()))):g=p(g.shift()).concat(g);for(var v in f.unshift(l.getElementById(g.shift())),c)if(c[v].length)return h;return h.found=!0,h.trail=this.spawn(f,!0),h}},{hopcroftTarjanBiconnected:pr,htbc:pr,htb:pr,hopcroftTarjanBiconnectedComponents:pr},{tarjanStronglyConnected:fr,tsc:fr,tscc:fr,tarjanStronglyConnectedComponents:fr}].forEach((function(e){Y(gr,e)}));var vr=function e(t){if(!(this instanceof e))return new e(t);this.id="Thenable/1.0.7",this.state=0,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},"function"==typeof t&&t.call(this,this.fulfill.bind(this),this.reject.bind(this))};vr.prototype={fulfill:function(e){return yr(this,1,"fulfillValue",e)},reject:function(e){return yr(this,2,"rejectReason",e)},then:function(e,t){var n=this,r=new vr;return n.onFulfilled.push(xr(e,r,"fulfill")),n.onRejected.push(xr(t,r,"reject")),mr(n),r.proxy}};var yr=function(e,t,n,r){return 0===e.state&&(e.state=t,e[n]=r,mr(e)),e},mr=function(e){1===e.state?br(e,"onFulfilled",e.fulfillValue):2===e.state&&br(e,"onRejected",e.rejectReason)},br=function(e,t,n){if(0!==e[t].length){var r=e[t];e[t]=[];var a=function(){for(var e=0;e0:void 0}},clearQueue:function(){return function(){var e=this,t=void 0!==e.length?e:[e];if(!(this._private.cy||this).styleEnabled())return this;for(var n=0;n-1},Ur.prototype.set=function(e,t){var n=this.__data__,r=Kr(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this};var Zr=Ur,$r=Fr($,"Map"),Qr=function(e,t){var n,r,a=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?a["string"==typeof t?"string":"hash"]:a.map};function Jr(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t-1&&e%1==0&&e0&&this.spawn(r).updateStyle().emit("class"),t},addClass:function(e){return this.toggleClass(e,!0)},hasClass:function(e){var t=this[0];return null!=t&&t._private.classes.has(e)},toggleClass:function(e,t){w(e)||(e=e.match(/\S+/g)||[]);for(var n=this,r=void 0===t,a=[],i=0,o=n.length;i0&&this.spawn(a).updateStyle().emit("class"),n},removeClass:function(e){return this.toggleClass(e,!1)},flashClass:function(e,t){var n=this;if(null==t)t=250;else if(0===t)return n;return n.addClass(e),setTimeout((function(){n.removeClass(e)}),t),n}};Pa.className=Pa.classNames=Pa.classes;var Da={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:"\"(?:\\\\\"|[^\"])*\"|'(?:\\\\'|[^'])*'",number:O,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Da.variable="(?:[\\w-.]|(?:\\\\"+Da.metaChar+"))+",Da.className="(?:[\\w-]|(?:\\\\"+Da.metaChar+"))+",Da.value=Da.string+"|"+Da.number,Da.id=Da.variable,function(){var e,t,n;for(e=Da.comparatorOp.split("|"),n=0;n=0||"="!==t&&(Da.comparatorOp+="|\\!"+t)}();var Ta=20,_a=[{selector:":selected",matches:function(e){return e.selected()}},{selector:":unselected",matches:function(e){return!e.selected()}},{selector:":selectable",matches:function(e){return e.selectable()}},{selector:":unselectable",matches:function(e){return!e.selectable()}},{selector:":locked",matches:function(e){return e.locked()}},{selector:":unlocked",matches:function(e){return!e.locked()}},{selector:":visible",matches:function(e){return e.visible()}},{selector:":hidden",matches:function(e){return!e.visible()}},{selector:":transparent",matches:function(e){return e.transparent()}},{selector:":grabbed",matches:function(e){return e.grabbed()}},{selector:":free",matches:function(e){return!e.grabbed()}},{selector:":removed",matches:function(e){return e.removed()}},{selector:":inside",matches:function(e){return!e.removed()}},{selector:":grabbable",matches:function(e){return e.grabbable()}},{selector:":ungrabbable",matches:function(e){return!e.grabbable()}},{selector:":animated",matches:function(e){return e.animated()}},{selector:":unanimated",matches:function(e){return!e.animated()}},{selector:":parent",matches:function(e){return e.isParent()}},{selector:":childless",matches:function(e){return e.isChildless()}},{selector:":child",matches:function(e){return e.isChild()}},{selector:":orphan",matches:function(e){return e.isOrphan()}},{selector:":nonorphan",matches:function(e){return e.isChild()}},{selector:":compound",matches:function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()}},{selector:":loop",matches:function(e){return e.isLoop()}},{selector:":simple",matches:function(e){return e.isSimple()}},{selector:":active",matches:function(e){return e.active()}},{selector:":inactive",matches:function(e){return!e.active()}},{selector:":backgrounding",matches:function(e){return e.backgrounding()}},{selector:":nonbackgrounding",matches:function(e){return!e.backgrounding()}}].sort((function(e,t){return function(e,t){return-1*q(e,t)}(e.selector,t.selector)})),Ma=function(){for(var e,t={},n=0;n<_a.length;n++)t[(e=_a[n]).selector]=e.matches;return t}(),Ba="("+_a.map((function(e){return e.selector})).join("|")+")",Na=function(e){return e.replace(new RegExp("\\\\("+Da.metaChar+")","g"),(function(e,t){return t}))},za=function(e,t,n){e[e.length-1]=n},Ia=[{name:"group",query:!0,regex:"("+Da.group+")",populate:function(e,t,n){var r=l(n,1)[0];t.checks.push({type:0,value:"*"===r?r:r+"s"})}},{name:"state",query:!0,regex:Ba,populate:function(e,t,n){var r=l(n,1)[0];t.checks.push({type:7,value:r})}},{name:"id",query:!0,regex:"\\#("+Da.id+")",populate:function(e,t,n){var r=l(n,1)[0];t.checks.push({type:8,value:Na(r)})}},{name:"className",query:!0,regex:"\\.("+Da.className+")",populate:function(e,t,n){var r=l(n,1)[0];t.checks.push({type:9,value:Na(r)})}},{name:"dataExists",query:!0,regex:"\\[\\s*("+Da.variable+")\\s*\\]",populate:function(e,t,n){var r=l(n,1)[0];t.checks.push({type:4,field:Na(r)})}},{name:"dataCompare",query:!0,regex:"\\[\\s*("+Da.variable+")\\s*("+Da.comparatorOp+")\\s*("+Da.value+")\\s*\\]",populate:function(e,t,n){var r=l(n,3),a=r[0],i=r[1],o=r[2];o=null!=new RegExp("^"+Da.string+"$").exec(o)?o.substring(1,o.length-1):parseFloat(o),t.checks.push({type:3,field:Na(a),operator:i,value:o})}},{name:"dataBool",query:!0,regex:"\\[\\s*("+Da.boolOp+")\\s*("+Da.variable+")\\s*\\]",populate:function(e,t,n){var r=l(n,2),a=r[0],i=r[1];t.checks.push({type:5,field:Na(i),operator:a})}},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+Da.meta+")\\s*("+Da.comparatorOp+")\\s*("+Da.number+")\\s*\\]\\]",populate:function(e,t,n){var r=l(n,3),a=r[0],i=r[1],o=r[2];t.checks.push({type:6,field:Na(a),operator:i,value:parseFloat(o)})}},{name:"nextQuery",separator:!0,regex:Da.separator,populate:function(e,t){var n=e.currentSubject,r=e.edgeCount,a=e.compoundCount,i=e[e.length-1];return null!=n&&(i.subject=n,e.currentSubject=null),i.edgeCount=r,i.compoundCount=a,e.edgeCount=0,e.compoundCount=0,e[e.length++]={checks:[]}}},{name:"directedEdge",separator:!0,regex:Da.directedEdge,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r=t,a={checks:[]};return n.checks.push({type:11,source:r,target:a}),za(e,0,n),e.edgeCount++,a}var i={checks:[]},o=t,s={checks:[]};return i.checks.push({type:12,source:o,target:s}),za(e,0,i),e.edgeCount++,s}},{name:"undirectedEdge",separator:!0,regex:Da.undirectedEdge,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r=t,a={checks:[]};return n.checks.push({type:10,nodes:[r,a]}),za(e,0,n),e.edgeCount++,a}var i={checks:[]},o=t,s={checks:[]};return i.checks.push({type:14,node:o,neighbor:s}),za(e,0,i),s}},{name:"child",separator:!0,regex:Da.child,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r={checks:[]},a=e[e.length-1];return n.checks.push({type:15,parent:a,child:r}),za(e,0,n),e.compoundCount++,r}if(e.currentSubject===t){var i={checks:[]},o=e[e.length-1],s={checks:[]},l={checks:[]},u={checks:[]},c={checks:[]};return i.checks.push({type:19,left:o,right:s,subject:l}),l.checks=t.checks,t.checks=[{type:Ta}],c.checks.push({type:Ta}),s.checks.push({type:17,parent:c,child:u}),za(e,0,i),e.currentSubject=l,e.compoundCount++,u}var d={checks:[]},h={checks:[]},p=[{type:17,parent:d,child:h}];return d.checks=t.checks,t.checks=p,e.compoundCount++,h}},{name:"descendant",separator:!0,regex:Da.descendant,populate:function(e,t){if(null==e.currentSubject){var n={checks:[]},r={checks:[]},a=e[e.length-1];return n.checks.push({type:16,ancestor:a,descendant:r}),za(e,0,n),e.compoundCount++,r}if(e.currentSubject===t){var i={checks:[]},o=e[e.length-1],s={checks:[]},l={checks:[]},u={checks:[]},c={checks:[]};return i.checks.push({type:19,left:o,right:s,subject:l}),l.checks=t.checks,t.checks=[{type:Ta}],c.checks.push({type:Ta}),s.checks.push({type:18,ancestor:c,descendant:u}),za(e,0,i),e.currentSubject=l,e.compoundCount++,u}var d={checks:[]},h={checks:[]},p=[{type:18,ancestor:d,descendant:h}];return d.checks=t.checks,t.checks=p,e.compoundCount++,h}},{name:"subject",modifier:!0,regex:Da.subject,populate:function(e,t){if(null!=e.currentSubject&&e.currentSubject!==t)return Xe("Redefinition of subject in selector `"+e.toString()+"`"),!1;e.currentSubject=t;var n=e[e.length-1].checks[0],r=null==n?null:n.type;11===r?n.type=13:10===r&&(n.type=14,n.node=n.nodes[1],n.neighbor=n.nodes[0],n.nodes=null)}}];Ia.forEach((function(e){return e.regexObj=new RegExp("^"+e.regex)}));var Aa=function(e){for(var t,n,r,a=0;a0&&u.edgeCount>0)return Xe("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(u.edgeCount>1)return Xe("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;1===u.edgeCount&&Xe("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},toString:function(){if(null!=this.toStringCache)return this.toStringCache;for(var e=function(e){return null==e?"":e},t=function(t){return b(t)?'"'+t+'"':e(t)},n=function(e){return" "+e+" "},r=function(a,i){return a.checks.reduce((function(o,s,l){return o+(i===a&&0===l?"$":"")+function(a,i){var o=a.type,s=a.value;switch(o){case 0:var l=e(s);return l.substring(0,l.length-1);case 3:var u=a.field,c=a.operator;return"["+u+n(e(c))+t(s)+"]";case 5:var d=a.operator,h=a.field;return"["+e(d)+h+"]";case 4:return"["+a.field+"]";case 6:var p=a.operator;return"[["+a.field+n(e(p))+t(s)+"]]";case 7:return s;case 8:return"#"+s;case 9:return"."+s;case 17:case 15:return r(a.parent,i)+n(">")+r(a.child,i);case 18:case 16:return r(a.ancestor,i)+" "+r(a.descendant,i);case 19:var f=r(a.left,i),g=r(a.subject,i),v=r(a.right,i);return f+(f.length>0?" ":"")+g+v;case Ta:return""}}(s,i)}),"")},a="",i=0;i1&&i=0&&(t=t.replace("!",""),c=!0),t.indexOf("@")>=0&&(t=t.replace("@",""),u=!0),(o||l||u)&&(a=o||s?""+e:"",i=""+n),u&&(e=a=a.toLowerCase(),n=i=i.toLowerCase()),t){case"*=":r=a.indexOf(i)>=0;break;case"$=":r=a.indexOf(i,a.length-i.length)>=0;break;case"^=":r=0===a.indexOf(i);break;case"=":r=e===n;break;case">":d=!0,r=e>n;break;case">=":d=!0,r=e>=n;break;case"<":d=!0,r=e0;){var u=a.shift();t(u),i.add(u.id()),o&&r(a,i,u)}return e}function Za(e,t,n){if(n.isParent())for(var r=n._private.children,a=0;a1&&void 0!==arguments[1])||arguments[1],Za)},Ga.forEachUp=function(e){return Ua(this,e,!(arguments.length>1&&void 0!==arguments[1])||arguments[1],$a)},Ga.forEachUpAndDown=function(e){return Ua(this,e,!(arguments.length>1&&void 0!==arguments[1])||arguments[1],Qa)},Ga.ancestors=Ga.parents,(Wa=Ha={data:Ca.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:Ca.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:Ca.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Ca.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:Ca.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:Ca.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var e=this[0];if(e)return e._private.data.id}}).attr=Wa.data,Wa.removeAttr=Wa.removeData;var Ja,ei,ti=Ha,ni={};function ri(e){return function(t){var n=this;if(void 0===t&&(t=!0),0!==n.length&&n.isNode()&&!n.removed()){for(var r=0,a=n[0],i=a._private.edges,o=0;ot})),minIndegree:ai("indegree",(function(e,t){return et})),minOutdegree:ai("outdegree",(function(e,t){return et}))}),Y(ni,{totalDegree:function(e){for(var t=0,n=this.nodes(),r=0;r0,c=u;u&&(l=l[0]);var d=c?l.position():{x:0,y:0};return a={x:s.x-d.x,y:s.y-d.y},void 0===e?a:a[e]}for(var h=0;h0,v=g;g&&(f=f[0]);var y=v?f.position():{x:0,y:0};void 0!==t?p.position(e,t+y[e]):void 0!==a&&p.position({x:a.x+y.x,y:a.y+y.y})}}else if(!i)return;return this}},Ja.modelPosition=Ja.point=Ja.position,Ja.modelPositions=Ja.points=Ja.positions,Ja.renderedPoint=Ja.renderedPosition,Ja.relativePoint=Ja.relativePosition;var si,li,ui=ei;si=li={},li.renderedBoundingBox=function(e){var t=this.boundingBox(e),n=this.cy(),r=n.zoom(),a=n.pan(),i=t.x1*r+a.x,o=t.x2*r+a.x,s=t.y1*r+a.y,l=t.y2*r+a.y;return{x1:i,x2:o,y1:s,y2:l,w:o-i,h:l-s}},li.dirtyCompoundBoundsCache=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();return t.styleEnabled()&&t.hasCompoundNodes()?(this.forEachUp((function(t){if(t.isParent()){var n=t._private;n.compoundBoundsClean=!1,n.bbCache=null,e||t.emitAndNotify("bounds")}})),this):this},li.updateCompoundBounds=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();if(!t.styleEnabled()||!t.hasCompoundNodes())return this;if(!e&&t.batching())return this;function n(e){if(e.isParent()){var t=e._private,n=e.children(),r="include"===e.pstyle("compound-sizing-wrt-labels").value,a={width:{val:e.pstyle("min-width").pfValue,left:e.pstyle("min-width-bias-left"),right:e.pstyle("min-width-bias-right")},height:{val:e.pstyle("min-height").pfValue,top:e.pstyle("min-height-bias-top"),bottom:e.pstyle("min-height-bias-bottom")}},i=n.boundingBox({includeLabels:r,includeOverlays:!1,useCache:!1}),o=t.position;0!==i.w&&0!==i.h||((i={w:e.pstyle("width").pfValue,h:e.pstyle("height").pfValue}).x1=o.x-i.w/2,i.x2=o.x+i.w/2,i.y1=o.y-i.h/2,i.y2=o.y+i.h/2);var s=a.width.left.value;"px"===a.width.left.units&&a.width.val>0&&(s=100*s/a.width.val);var l=a.width.right.value;"px"===a.width.right.units&&a.width.val>0&&(l=100*l/a.width.val);var u=a.height.top.value;"px"===a.height.top.units&&a.height.val>0&&(u=100*u/a.height.val);var c=a.height.bottom.value;"px"===a.height.bottom.units&&a.height.val>0&&(c=100*c/a.height.val);var d=y(a.width.val-i.w,s,l),h=d.biasDiff,p=d.biasComplementDiff,f=y(a.height.val-i.h,u,c),g=f.biasDiff,v=f.biasComplementDiff;t.autoPadding=function(e,t,n,r){if("%"!==n.units)return"px"===n.units?n.pfValue:0;switch(r){case"width":return e>0?n.pfValue*e:0;case"height":return t>0?n.pfValue*t:0;case"average":return e>0&&t>0?n.pfValue*(e+t)/2:0;case"min":return e>0&&t>0?e>t?n.pfValue*t:n.pfValue*e:0;case"max":return e>0&&t>0?e>t?n.pfValue*e:n.pfValue*t:0;default:return 0}}(i.w,i.h,e.pstyle("padding"),e.pstyle("padding-relative-to").value),t.autoWidth=Math.max(i.w,a.width.val),o.x=(-h+i.x1+i.x2+p)/2,t.autoHeight=Math.max(i.h,a.height.val),o.y=(-g+i.y1+i.y2+v)/2}function y(e,t,n){var r=0,a=0,i=t+n;return e>0&&i>0&&(r=t/i*e,a=n/i*e),{biasDiff:r,biasComplementDiff:a}}}for(var r=0;re.x2?r:e.x2,e.y1=ne.y2?a:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},hi=function(e,t){return null==t?e:di(e,t.x1,t.y1,t.x2,t.y2)},pi=function(e,t,n){return Qe(e,t,n)},fi=function(e,t,n){if(!t.cy().headless()){var r,a,i=t._private,o=i.rstyle,s=o.arrowWidth/2;if("none"!==t.pstyle(n+"-arrow-shape").value){"source"===n?(r=o.srcX,a=o.srcY):"target"===n?(r=o.tgtX,a=o.tgtY):(r=o.midX,a=o.midY);var l=i.arrowBounds=i.arrowBounds||{},u=l[n]=l[n]||{};u.x1=r-s,u.y1=a-s,u.x2=r+s,u.y2=a+s,u.w=u.x2-u.x1,u.h=u.y2-u.y1,Ot(u,1),di(e,u.x1,u.y1,u.x2,u.y2)}}},gi=function(e,t,n){if(!t.cy().headless()){var r;r=n?n+"-":"";var a=t._private,i=a.rstyle;if(t.pstyle(r+"label").strValue){var o,s,l,u,c=t.pstyle("text-halign"),d=t.pstyle("text-valign"),h=pi(i,"labelWidth",n),p=pi(i,"labelHeight",n),f=pi(i,"labelX",n),g=pi(i,"labelY",n),v=t.pstyle(r+"text-margin-x").pfValue,y=t.pstyle(r+"text-margin-y").pfValue,m=t.isEdge(),b=t.pstyle(r+"text-rotation"),x=t.pstyle("text-outline-width").pfValue,w=t.pstyle("text-border-width").pfValue/2,E=t.pstyle("text-background-padding").pfValue,k=p,C=h,S=C/2,P=k/2;if(m)o=f-S,s=f+S,l=g-P,u=g+P;else{switch(c.value){case"left":o=f-C,s=f;break;case"center":o=f-S,s=f+S;break;case"right":o=f,s=f+C}switch(d.value){case"top":l=g-k,u=g;break;case"center":l=g-P,u=g+P;break;case"bottom":l=g,u=g+k}}o+=v-Math.max(x,w)-E-2,s+=v+Math.max(x,w)+E+2,l+=y-Math.max(x,w)-E-2,u+=y+Math.max(x,w)+E+2;var D=n||"main",T=a.labelBounds,_=T[D]=T[D]||{};_.x1=o,_.y1=l,_.x2=s,_.y2=u,_.w=s-o,_.h=u-l;var M=m&&"autorotate"===b.strValue,B=null!=b.pfValue&&0!==b.pfValue;if(M||B){var N=M?pi(a.rstyle,"labelAngle",n):b.pfValue,z=Math.cos(N),I=Math.sin(N),A=(o+s)/2,L=(l+u)/2;if(!m){switch(c.value){case"left":A=s;break;case"right":A=o}switch(d.value){case"top":L=u;break;case"bottom":L=l}}var O=function(e,t){return{x:(e-=A)*z-(t-=L)*I+A,y:e*I+t*z+L}},R=O(o,l),V=O(o,u),F=O(s,l),j=O(s,u);o=Math.min(R.x,V.x,F.x,j.x),s=Math.max(R.x,V.x,F.x,j.x),l=Math.min(R.y,V.y,F.y,j.y),u=Math.max(R.y,V.y,F.y,j.y)}var q=D+"Rot",Y=T[q]=T[q]||{};Y.x1=o,Y.y1=l,Y.x2=s,Y.y2=u,Y.w=s-o,Y.h=u-l,di(e,o,l,s,u),di(a.labelBounds.all,o,l,s,u)}return e}},vi=function(e){var t=0,n=function(e){return(e?1:0)<0&&i>0){var o=t.pstyle("outline-offset").value,s=t.pstyle("shape").value,l=i+o,u=(e.w+2*l)/e.w,c=(e.h+2*l)/e.h,d=0;["diamond","pentagon","round-triangle"].includes(s)?(u=(e.w+2.4*l)/e.w,d=-l/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(s)?u=(e.w+2.4*l)/e.w:"star"===s?(u=(e.w+2.8*l)/e.w,c=(e.h+2.6*l)/e.h,d=-l/3.8):"triangle"===s?(u=(e.w+2.8*l)/e.w,c=(e.h+2.4*l)/e.h,d=-l/1.4):"vee"===s&&(u=(e.w+4.4*l)/e.w,c=(e.h+3.8*l)/e.h,d=.5*-l);var h=e.h*c-e.h,p=e.w*u-e.w;if(Rt(e,[Math.ceil(h/2),Math.ceil(p/2)]),0!==d){var f=(r=d,{x1:(n=e).x1+0,x2:n.x2+0,y1:n.y1+r,y2:n.y2+r,w:n.w,h:n.h});At(e,f)}}}}(h,e)}else if(g&&t.includeEdges)if(c&&!d){var D=e.pstyle("curve-style").strValue;if(n=Math.min(v.srcX,v.midX,v.tgtX),r=Math.max(v.srcX,v.midX,v.tgtX),a=Math.min(v.srcY,v.midY,v.tgtY),i=Math.max(v.srcY,v.midY,v.tgtY),di(h,n-=k,a-=k,r+=k,i+=k),"haystack"===D){var T=v.haystackPts;if(T&&2===T.length){if(n=T[0].x,a=T[0].y,n>(r=T[1].x)){var _=n;n=r,r=_}if(a>(i=T[1].y)){var M=a;a=i,i=M}di(h,n-k,a-k,r+k,i+k)}}else if("bezier"===D||"unbundled-bezier"===D||D.endsWith("segments")||D.endsWith("taxi")){var B;switch(D){case"bezier":case"unbundled-bezier":B=v.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":B=v.linePts}if(null!=B)for(var N=0;N(r=A.x)){var L=n;n=r,r=L}if((a=I.y)>(i=A.y)){var O=a;a=i,i=O}di(h,n-=k,a-=k,r+=k,i+=k)}if(c&&t.includeEdges&&g&&(fi(h,e,"mid-source"),fi(h,e,"mid-target"),fi(h,e,"source"),fi(h,e,"target")),c&&"yes"===e.pstyle("ghost").value){var R=e.pstyle("ghost-offset-x").pfValue,V=e.pstyle("ghost-offset-y").pfValue;di(h,h.x1+R,h.y1+V,h.x2+R,h.y2+V)}var F=p.bodyBounds=p.bodyBounds||{};Vt(F,h),Rt(F,y),Ot(F,1),c&&(n=h.x1,r=h.x2,a=h.y1,i=h.y2,di(h,n-E,a-E,r+E,i+E));var j=p.overlayBounds=p.overlayBounds||{};Vt(j,h),Rt(j,y),Ot(j,1);var q=p.labelBounds=p.labelBounds||{};null!=q.all?((l=q.all).x1=1/0,l.y1=1/0,l.x2=-1/0,l.y2=-1/0,l.w=0,l.h=0):q.all=It(),c&&t.includeLabels&&(t.includeMainLabels&&gi(h,e,null),g&&(t.includeSourceLabels&&gi(h,e,"source"),t.includeTargetLabels&&gi(h,e,"target")))}return h.x1=ci(h.x1),h.y1=ci(h.y1),h.x2=ci(h.x2),h.y2=ci(h.y2),h.w=ci(h.x2-h.x1),h.h=ci(h.y2-h.y1),h.w>0&&h.h>0&&b&&(Rt(h,y),Ot(h,1)),h}(e,bi),r.bbCache=n,r.bbCachePosKey=o):n=r.bbCache,!i){var c=e.isNode();n=It(),(t.includeNodes&&c||t.includeEdges&&!c)&&(t.includeOverlays?hi(n,r.overlayBounds):hi(n,r.bodyBounds)),t.includeLabels&&(t.includeMainLabels&&(!a||t.includeSourceLabels&&t.includeTargetLabels)?hi(n,r.labelBounds.all):(t.includeMainLabels&&hi(n,r.labelBounds.mainRot),t.includeSourceLabels&&hi(n,r.labelBounds.sourceRot),t.includeTargetLabels&&hi(n,r.labelBounds.targetRot))),n.w=n.x2-n.x1,n.h=n.y2-n.y1}return n},bi={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,includeOutlines:!0,useCache:!0},xi=vi(bi),wi=Ue(bi);li.boundingBox=function(e){var t;if(1!==this.length||null==this[0]._private.bbCache||this[0]._private.styleDirty||void 0!==e&&void 0!==e.useCache&&!0!==e.useCache){t=It();var n=wi(e=e||bi),r=this;if(r.cy().styleEnabled())for(var a=0;a0&&void 0!==arguments[0]?arguments[0]:Li,t=arguments.length>1?arguments[1]:void 0,n=0;n=0;s--)o(s);return this},Ri.removeAllListeners=function(){return this.removeListener("*")},Ri.emit=Ri.trigger=function(e,t,n){var r=this.listeners,a=r.length;return this.emitting++,w(t)||(t=[t]),function(e,t,n){if("event"!==m(n))if(E(n))t(e,Fi(e,n));else for(var r=w(n)?n:n.split(/\s+/),a=0;a1&&!r){var a=this.length-1,i=this[a],o=i._private.data.id;this[a]=void 0,this[e]=i,n.set(o,{ele:i,index:e})}return this.length--,this},unmergeOne:function(e){e=e[0];var t=this._private,n=e._private.data.id,r=t.map.get(n);if(!r)return this;var a=r.index;return this.unmergeAt(a),this},unmerge:function(e){var t=this._private.cy;if(!e)return this;if(e&&b(e)){var n=e;e=t.mutableElements().filter(n)}for(var r=0;r=0;t--)e(this[t])&&this.unmergeAt(t);return this},map:function(e,t){for(var n=[],r=this,a=0;ar&&(r=s,n=o)}return{value:r,ele:n}},min:function(e,t){for(var n,r=1/0,a=this,i=0;i=0&&a1&&void 0!==arguments[1])||arguments[1],n=this[0],r=n.cy();if(r.styleEnabled()&&n){this.cleanStyle();var a=n._private.style[e];return null!=a?a:t?r.style().getDefaultProperty(e):null}},numericStyle:function(e){var t=this[0];if(t.cy().styleEnabled()&&t){var n=t.pstyle(e);return void 0!==n.pfValue?n.pfValue:n.value}},numericStyleUnits:function(e){var t=this[0];if(t.cy().styleEnabled())return t?t.pstyle(e).units:void 0},renderedStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=this[0];return n?t.style().getRenderedStyle(n,e):void 0},style:function(e,t){var n=this.cy();if(!n.styleEnabled())return this;var r=!1,a=n.style();if(E(e)){var i=e;a.applyBypass(this,i,r),this.emitAndNotify("style")}else if(b(e)){if(void 0===t){var o=this[0];return o?a.getStylePropertyValue(o,e):void 0}a.applyBypass(this,e,t,r),this.emitAndNotify("style")}else if(void 0===e){var s=this[0];return s?a.getRawStyle(s):void 0}return this},removeStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=!1,r=t.style(),a=this;if(void 0===e)for(var i=0;i0&&t.push(c[0]),t.push(s[0])}return this.spawn(t,!0).filter(e)}),"neighborhood"),closedNeighborhood:function(e){return this.neighborhood().add(this).filter(e)},openNeighborhood:function(e){return this.neighborhood(e)}}),ho.neighbourhood=ho.neighborhood,ho.closedNeighbourhood=ho.closedNeighborhood,ho.openNeighbourhood=ho.openNeighborhood,Y(ho,{source:Ka((function(e){var t,n=this[0];return n&&(t=n._private.source||n.cy().collection()),t&&e?t.filter(e):t}),"source"),target:Ka((function(e){var t,n=this[0];return n&&(t=n._private.target||n.cy().collection()),t&&e?t.filter(e):t}),"target"),sources:vo({attr:"source"}),targets:vo({attr:"target"})}),Y(ho,{edgesWith:Ka(yo(),"edgesWith"),edgesTo:Ka(yo({thisIsSrc:!0}),"edgesTo")}),Y(ho,{connectedEdges:Ka((function(e){for(var t=[],n=0;n0);return i},component:function(){var e=this[0];return e.cy().mutableElements().components(e)[0]}}),ho.componentsOf=ho.components;var bo=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(void 0!==e){var a=new et,i=!1;if(t){if(t.length>0&&E(t[0])&&!P(t[0])){i=!0;for(var o=[],s=new nt,l=0,u=t.length;l0&&void 0!==arguments[0])||arguments[0],r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],a=this,i=a.cy(),o=i._private,s=[],l=[],u=0,c=a.length;u0){for(var O=e.length===a.length?a:new bo(i,e),R=0;R0&&void 0!==arguments[0])||arguments[0],t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this,r=[],a={},i=n._private.cy;function o(e){var n=a[e.id()];t&&e.removed()||n||(a[e.id()]=!0,e.isNode()?(r.push(e),function(e){for(var t=e._private.edges,n=0;n0&&(e?k.emitAndNotify("remove"):t&&k.emit("remove"));for(var C=0;C=.001?function(t,r){for(var a=0;a<4;++a){var i=h(r,e,n);if(0===i)return r;r-=(d(r,e,n)-t)/i}return r}(t,o):0===l?o:function(t,r,a){var i,o,s=0;do{(i=d(o=r+(a-r)/2,e,n)-t)>0?a=o:r=o}while(Math.abs(i)>1e-7&&++s<10);return o}(t,r,r+a)}(i),t,r)};f.getControlPoints=function(){return[{x:e,y:t},{x:n,y:r}]};var g="generateBezier("+[e,t,n,r]+")";return f.toString=function(){return g},f}var ko=function(){function e(e){return-e.tension*e.x-e.friction*e.v}function t(t,n,r){var a={x:t.x+r.dx*n,v:t.v+r.dv*n,tension:t.tension,friction:t.friction};return{dx:a.v,dv:e(a)}}function n(n,r){var a={dx:n.v,dv:e(n)},i=t(n,.5*r,a),o=t(n,.5*r,i),s=t(n,r,o),l=1/6*(a.dx+2*(i.dx+o.dx)+s.dx),u=1/6*(a.dv+2*(i.dv+o.dv)+s.dv);return n.x=n.x+l*r,n.v=n.v+u*r,n}return function e(t,r,a){var i,o,s,l={x:-1,v:0,tension:null,friction:null},u=[0],c=0,d=1e-4;for(t=parseFloat(t)||500,r=parseFloat(r)||20,a=a||null,l.tension=t,l.friction=r,o=(i=null!==a)?(c=e(t,r))/a*.016:.016;s=n(s||l,o),u.push(1+s.x),c+=16,Math.abs(s.x)>d&&Math.abs(s.v)>d;);return i?function(e){return u[e*(u.length-1)|0]}:c}}(),Co=function(e,t,n,r){var a=Eo(e,t,n,r);return function(e,t,n){return e+(t-e)*a(n)}},So={linear:function(e,t,n){return e+(t-e)*n},ease:Co(.25,.1,.25,1),"ease-in":Co(.42,0,1,1),"ease-out":Co(0,0,.58,1),"ease-in-out":Co(.42,0,.58,1),"ease-in-sine":Co(.47,0,.745,.715),"ease-out-sine":Co(.39,.575,.565,1),"ease-in-out-sine":Co(.445,.05,.55,.95),"ease-in-quad":Co(.55,.085,.68,.53),"ease-out-quad":Co(.25,.46,.45,.94),"ease-in-out-quad":Co(.455,.03,.515,.955),"ease-in-cubic":Co(.55,.055,.675,.19),"ease-out-cubic":Co(.215,.61,.355,1),"ease-in-out-cubic":Co(.645,.045,.355,1),"ease-in-quart":Co(.895,.03,.685,.22),"ease-out-quart":Co(.165,.84,.44,1),"ease-in-out-quart":Co(.77,0,.175,1),"ease-in-quint":Co(.755,.05,.855,.06),"ease-out-quint":Co(.23,1,.32,1),"ease-in-out-quint":Co(.86,0,.07,1),"ease-in-expo":Co(.95,.05,.795,.035),"ease-out-expo":Co(.19,1,.22,1),"ease-in-out-expo":Co(1,0,0,1),"ease-in-circ":Co(.6,.04,.98,.335),"ease-out-circ":Co(.075,.82,.165,1),"ease-in-out-circ":Co(.785,.135,.15,.86),spring:function(e,t,n){if(0===n)return So.linear;var r=ko(e,t,n);return function(e,t,n){return e+(t-e)*r(n)}},"cubic-bezier":Co};function Po(e,t,n,r,a){if(1===r)return n;if(t===n)return n;var i=a(t,n,r);return null==e||((e.roundValue||e.color)&&(i=Math.round(i)),void 0!==e.min&&(i=Math.max(i,e.min)),void 0!==e.max&&(i=Math.min(i,e.max))),i}function Do(e,t){return null!=e.pfValue||null!=e.value?null==e.pfValue||null!=t&&"%"===t.type.units?e.value:e.pfValue:e}function To(e,t,n,r,a){var i=null!=a?a.type:null;n<0?n=0:n>1&&(n=1);var o=Do(e,a),s=Do(t,a);if(k(o)&&k(s))return Po(i,o,s,n,r);if(w(o)&&w(s)){for(var l=[],u=0;u0?("spring"===d&&h.push(o.duration),o.easingImpl=So[d].apply(null,h)):o.easingImpl=So[d]}var p,f=o.easingImpl;if(p=0===o.duration?1:(n-l)/o.duration,o.applying&&(p=o.progress),p<0?p=0:p>1&&(p=1),null==o.delay){var g=o.startPosition,v=o.position;if(v&&a&&!e.locked()){var y={};Mo(g.x,v.x)&&(y.x=To(g.x,v.x,p,f)),Mo(g.y,v.y)&&(y.y=To(g.y,v.y,p,f)),e.position(y)}var m=o.startPan,x=o.pan,w=i.pan,E=null!=x&&r;E&&(Mo(m.x,x.x)&&(w.x=To(m.x,x.x,p,f)),Mo(m.y,x.y)&&(w.y=To(m.y,x.y,p,f)),e.emit("pan"));var k=o.startZoom,C=o.zoom,S=null!=C&&r;S&&(Mo(k,C)&&(i.zoom=zt(i.minZoom,To(k,C,p,f),i.maxZoom)),e.emit("zoom")),(E||S)&&e.emit("viewport");var P=o.style;if(P&&P.length>0&&a){for(var D=0;D=0;t--)(0,e[t])();e.splice(0,e.length)},c=i.length-1;c>=0;c--){var d=i[c],h=d._private;h.stopped?(i.splice(c,1),h.hooked=!1,h.playing=!1,h.started=!1,u(h.frames)):(h.playing||h.applying)&&(h.playing&&h.applying&&(h.applying=!1),h.started||Bo(0,d,e),_o(t,d,e,n),h.applying&&(h.applying=!1),u(h.frames),null!=h.step&&h.step(e),d.completed()&&(i.splice(c,1),h.hooked=!1,h.playing=!1,h.started=!1,u(h.completes)),s=!0)}return n||0!==i.length||0!==o.length||r.push(t),s}for(var i=!1,o=0;o0?t.notify("draw",n):t.notify("draw")),n.unmerge(r),t.emit("step")}var zo={animate:Ca.animate(),animation:Ca.animation(),animated:Ca.animated(),clearQueue:Ca.clearQueue(),delay:Ca.delay(),delayAnimation:Ca.delayAnimation(),stop:Ca.stop(),addToAnimationPool:function(e){this.styleEnabled()&&this._private.aniEles.merge(e)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var e=this;if(e._private.animationsRunning=!0,e.styleEnabled()){var t=e.renderer();t&&t.beforeRender?t.beforeRender((function(t,n){No(n,e)}),t.beforeRenderPriorities.animations):function t(){e._private.animationsRunning&&Ee((function(n){No(n,e),t()}))}()}}},Io={qualifierCompare:function(e,t){return null==e||null==t?null==e&&null==t:e.sameText(t)},eventMatches:function(e,t,n){var r=t.qualifier;return null==r||e!==n.target&&P(n.target)&&r.matches(n.target)},addEventFields:function(e,t){t.cy=e,t.target=e},callbackContext:function(e,t,n){return null!=t.qualifier?n.target:e}},Ao=function(e){return b(e)?new qa(e):e},Lo={createEmitter:function(){var e=this._private;return e.emitter||(e.emitter=new Oi(Io,this)),this},emitter:function(){return this._private.emitter},on:function(e,t,n){return this.emitter().on(e,Ao(t),n),this},removeListener:function(e,t,n){return this.emitter().removeListener(e,Ao(t),n),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(e,t,n){return this.emitter().one(e,Ao(t),n),this},once:function(e,t,n){return this.emitter().one(e,Ao(t),n),this},emit:function(e,t){return this.emitter().emit(e,t),this},emitAndNotify:function(e,t){return this.emit(e),this.notify(e,t),this}};Ca.eventAliasesOn(Lo);var Oo={png:function(e){return e=e||{},this._private.renderer.png(e)},jpg:function(e){var t=this._private.renderer;return(e=e||{}).bg=e.bg||"#fff",t.jpg(e)}};Oo.jpeg=Oo.jpg;var Ro={layout:function(e){var t=this;if(null!=e)if(null!=e.name){var n,r=e.name,a=t.extension("layout",r);if(null!=a)return n=b(e.eles)?t.$(e.eles):null!=e.eles?e.eles:t.$(),new a(Y({},e,{cy:t,eles:n}));qe("No such layout `"+r+"` found. Did you forget to import it and `cytoscape.use()` it?")}else qe("A `name` must be specified to make a layout");else qe("Layout options must be specified to make a layout")}};Ro.createLayout=Ro.makeLayout=Ro.layout;var Vo={notify:function(e,t){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var r=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();null!=t&&r.merge(t)}else if(n.notificationsEnabled){var a=this.renderer();!this.destroyed()&&a&&a.notify(e,t)}},notifications:function(e){var t=this._private;return void 0===e?t.notificationsEnabled:(t.notificationsEnabled=!!e,this)},noNotifications:function(e){this.notifications(!1),e(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var e=this._private;return null==e.batchCount&&(e.batchCount=0),0===e.batchCount&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},endBatch:function(){var e=this._private;if(0===e.batchCount)return this;if(e.batchCount--,0===e.batchCount){e.batchStyleEles.updateStyle();var t=this.renderer();Object.keys(e.batchNotifications).forEach((function(n){var r=e.batchNotifications[n];r.empty()?t.notify(n):t.notify(n,r)}))}return this},batch:function(e){return this.startBatch(),e(),this.endBatch(),this},batchData:function(e){var t=this;return this.batch((function(){for(var n=Object.keys(e),r=0;r0;)t.removeChild(t.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach((function(e){var t=e._private;t.rscratch={},t.rstyle={},t.animation.current=[],t.animation.queue=[]}))},onRender:function(e){return this.on("render",e)},offRender:function(e){return this.off("render",e)}};jo.invalidateDimensions=jo.resize;var qo={collection:function(e,t){return b(e)?this.$(e):S(e)?e.collection():w(e)?(t||(t={}),new bo(this,e,t.unique,t.removed)):new bo(this)},nodes:function(e){var t=this.$((function(e){return e.isNode()}));return e?t.filter(e):t},edges:function(e){var t=this.$((function(e){return e.isEdge()}));return e?t.filter(e):t},$:function(e){var t=this._private.elements;return e?t.filter(e):t.spawnSelf()},mutableElements:function(){return this._private.elements}};qo.elements=qo.filter=qo.$;var Yo={},Xo="t";Yo.apply=function(e){for(var t=this,n=t._private.cy.collection(),r=0;r0;if(h||d&&p){var f=void 0;h&&p||h?f=u.properties:p&&(f=u.mappedProperties);for(var g=0;g1&&(v=1),s.color){var w=a.valueMin[0],E=a.valueMax[0],C=a.valueMin[1],S=a.valueMax[1],P=a.valueMin[2],D=a.valueMax[2],T=null==a.valueMin[3]?1:a.valueMin[3],_=null==a.valueMax[3]?1:a.valueMax[3],M=[Math.round(w+(E-w)*v),Math.round(C+(S-C)*v),Math.round(P+(D-P)*v),Math.round(T+(_-T)*v)];n={bypass:a.bypass,name:a.name,value:M,strValue:"rgb("+M[0]+", "+M[1]+", "+M[2]+")"}}else{if(!s.number)return!1;var B=a.valueMin+(a.valueMax-a.valueMin)*v;n=this.parse(a.name,B,a.bypass,h)}if(!n)return g(),!1;n.mapping=a,a=n;break;case o.data:for(var N=a.field.split("."),z=d.data,I=0;I0&&i>0){for(var s={},l=!1,u=0;u0?e.delayAnimation(o).play().promise().then(t):t()})).then((function(){return e.animation({style:s,duration:i,easing:e.pstyle("transition-timing-function").value,queue:!1}).play().promise()})).then((function(){n.removeBypasses(e,a),e.emitAndNotify("style"),r.transitioning=!1}))}else r.transitioning&&(this.removeBypasses(e,a),e.emitAndNotify("style"),r.transitioning=!1)},Yo.checkTrigger=function(e,t,n,r,a,i){var o=this.properties[t],s=a(o);null!=s&&s(n,r)&&i(o)},Yo.checkZOrderTrigger=function(e,t,n,r){var a=this;this.checkTrigger(e,t,n,r,(function(e){return e.triggersZOrder}),(function(){a._private.cy.notify("zorder",e)}))},Yo.checkBoundsTrigger=function(e,t,n,r){this.checkTrigger(e,t,n,r,(function(e){return e.triggersBounds}),(function(a){e.dirtyCompoundBoundsCache(),e.dirtyBoundingBoxCache(),!a.triggersBoundsOfParallelBeziers||"curve-style"!==t||"bezier"!==n&&"bezier"!==r||e.parallelEdges().forEach((function(e){e.isBundledBezier()&&e.dirtyBoundingBoxCache()})),!a.triggersBoundsOfConnectedEdges||"display"!==t||"none"!==n&&"none"!==r||e.connectedEdges().forEach((function(e){e.dirtyBoundingBoxCache()}))}))},Yo.checkTriggers=function(e,t,n,r){e.dirtyStyleCache(),this.checkZOrderTrigger(e,t,n,r),this.checkBoundsTrigger(e,t,n,r)};var Wo={applyBypass:function(e,t,n,r){var a=[];if("*"===t||"**"===t){if(void 0!==n)for(var i=0;it.length?i.substr(t.length):""}function s(){n=n.length>r.length?n.substr(r.length):""}for(i=i.replace(/[/][*](\s|.)+?[*][/]/g,"");!i.match(/^\s*$/);){var l=i.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!l){Xe("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+i);break}t=l[0];var u=l[1];if("core"!==u&&new qa(u).invalid)Xe("Skipping parsing of block: Invalid selector found in string stylesheet: "+u),o();else{var c=l[2],d=!1;n=c;for(var h=[];!n.match(/^\s*$/);){var p=n.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!p){Xe("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+c),d=!0;break}r=p[0];var f=p[1],g=p[2];this.properties[f]?a.parse(f,g)?(h.push({name:f,val:g}),s()):(Xe("Skipping property: Invalid property definition in: "+r),s()):(Xe("Skipping property: Invalid property name in: "+r),s())}if(d){o();break}a.selector(u);for(var v=0;v=7&&"d"===t[0]&&(u=new RegExp(s.data.regex).exec(t))){if(n)return!1;var h=s.data;return{name:e,value:u,strValue:""+t,mapped:h,field:u[1],bypass:n}}if(t.length>=10&&"m"===t[0]&&(c=new RegExp(s.mapData.regex).exec(t))){if(n)return!1;if(d.multiple)return!1;var p=s.mapData;if(!d.color&&!d.number)return!1;var f=this.parse(e,c[4]);if(!f||f.mapped)return!1;var g=this.parse(e,c[5]);if(!g||g.mapped)return!1;if(f.pfValue===g.pfValue||f.strValue===g.strValue)return Xe("`"+e+": "+t+"` is not a valid mapper because the output range is zero; converting to `"+e+": "+f.strValue+"`"),this.parse(e,f.strValue);if(d.color){var v=f.value,y=g.value;if(!(v[0]!==y[0]||v[1]!==y[1]||v[2]!==y[2]||v[3]!==y[3]&&(null!=v[3]&&1!==v[3]||null!=y[3]&&1!==y[3])))return!1}return{name:e,value:c,strValue:""+t,mapped:p,field:c[1],fieldMin:parseFloat(c[2]),fieldMax:parseFloat(c[3]),valueMin:f.value,valueMax:g.value,bypass:n}}}if(d.multiple&&"multiple"!==r){var m;if(m=l?t.split(/\s+/):w(t)?t:[t],d.evenMultiple&&m.length%2!=0)return null;for(var E=[],C=[],S=[],P="",D=!1,T=0;T0?" ":"")+_.strValue}return d.validate&&!d.validate(E,C)?null:d.singleEnum&&D?1===E.length&&b(E[0])?{name:e,value:E[0],strValue:E[0],bypass:n}:null:{name:e,value:E,pfValue:S,strValue:P,bypass:n,units:C}}var M,B,N,I=function(){for(var r=0;rd.max||d.strictMax&&t===d.max))return null;var q={name:e,value:t,strValue:""+t+(A||""),units:A,bypass:n};return d.unitless||"px"!==A&&"em"!==A?q.pfValue=t:q.pfValue="px"!==A&&A?this.getEmSizeInPixels()*t:t,"ms"!==A&&"s"!==A||(q.pfValue="ms"===A?t:1e3*t),"deg"!==A&&"rad"!==A||(q.pfValue="rad"===A?t:(M=t,Math.PI*M/180)),"%"===A&&(q.pfValue=t/100),q}if(d.propList){var Y=[],W=""+t;if("none"===W);else{for(var H=W.split(/\s*,\s*|\s+/),K=0;K255)return;t.push(Math.floor(i))}var o=r[1]||r[2]||r[3],s=r[1]&&r[2]&&r[3];if(o&&!s)return;var l=n[4];if(void 0!==l){if((l=parseFloat(l))<0||l>1)return;t.push(l)}}return t}(N)||function(e){var t,n,r,a,i,o,s,l;function u(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}var c=new RegExp("^"+F+"$").exec(e);if(c){if((n=parseInt(c[1]))<0?n=(360- -1*n%360)%360:n>360&&(n%=360),n/=360,(r=parseFloat(c[2]))<0||r>100)return;if(r/=100,(a=parseFloat(c[3]))<0||a>100)return;if(a/=100,void 0!==(i=c[4])&&((i=parseFloat(i))<0||i>1))return;if(0===r)o=s=l=Math.round(255*a);else{var d=a<.5?a*(1+r):a+r-a*r,h=2*a-d;o=Math.round(255*u(h,d,n+1/3)),s=Math.round(255*u(h,d,n)),l=Math.round(255*u(h,d,n-1/3))}t=[o,s,l,i]}return t}(N);return U?{name:e,value:U,pfValue:U,strValue:"rgb("+U[0]+","+U[1]+","+U[2]+")",bypass:n}:null}if(d.regex||d.regexes){if(d.enums){var Z=I();if(Z)return Z}for(var $=d.regexes?d.regexes:[d.regex],Q=0;Q<$.length;Q++){var J=new RegExp($[Q]).exec(t);if(J)return{name:e,value:d.singleRegexMatchValue?J[1]:J,strValue:""+t,bypass:n}}return null}return d.string?{name:e,value:""+t,strValue:""+t,bypass:n}:d.enums?I():null};var Qo=function e(t){if(!(this instanceof e))return new e(t);T(t)?(this._private={cy:t,coreStyle:{}},this.length=0,this.resetToDefault()):qe("A style must have a core reference")},Jo=Qo.prototype;Jo.instanceString=function(){return"style"},Jo.clear=function(){for(var e=this._private,t=e.cy.elements(),n=0;n0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0)return{zoom:o=(o=(o=Math.min((s-2*t)/n.w,(l-2*t)/n.h))>this._private.maxZoom?this._private.maxZoom:o)=n.minZoom&&(n.maxZoom=t),this},minZoom:function(e){return void 0===e?this._private.minZoom:this.zoomRange({min:e})},maxZoom:function(e){return void 0===e?this._private.maxZoom:this.zoomRange({max:e})},getZoomedViewport:function(e){var t,n,r=this._private,a=r.pan,i=r.zoom,o=!1;if(r.zoomingEnabled||(o=!0),k(e)?n=e:E(e)&&(n=e.level,null!=e.position?t=Et(e.position,i,a):null!=e.renderedPosition&&(t=e.renderedPosition),null==t||r.panningEnabled||(o=!0)),n=(n=n>r.maxZoom?r.maxZoom:n)t.maxZoom||!t.zoomingEnabled?i=!0:(t.zoom=s,a.push("zoom"))}if(r&&(!i||!e.cancelOnFailedZoom)&&t.panningEnabled){var l=e.pan;k(l.x)&&(t.pan.x=l.x,o=!1),k(l.y)&&(t.pan.y=l.y,o=!1),o||a.push("pan")}return a.length>0&&(a.push("viewport"),this.emit(a.join(" ")),this.notify("viewport")),this},center:function(e){var t=this.getCenterPan(e);return t&&(this._private.pan=t,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(e,t){if(this._private.panningEnabled){if(b(e)){var n=e;e=this.mutableElements().filter(n)}else S(e)||(e=this.mutableElements());if(0!==e.length){var r=e.boundingBox(),a=this.width(),i=this.height();return{x:(a-(t=void 0===t?this._private.zoom:t)*(r.x1+r.x2))/2,y:(i-t*(r.y1+r.y2))/2}}}},reset:function(){return this._private.panningEnabled&&this._private.zoomingEnabled?(this.viewport({pan:{x:0,y:0},zoom:1}),this):this},invalidateSize:function(){this._private.sizeCache=null},size:function(){var e,t,n=this._private,r=n.container;return n.sizeCache=n.sizeCache||(r?(e=this.window().getComputedStyle(r),t=function(t){return parseFloat(e.getPropertyValue(t))},{width:r.clientWidth-t("padding-left")-t("padding-right"),height:r.clientHeight-t("padding-top")-t("padding-bottom")}):{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var e=this._private.pan,t=this._private.zoom,n=this.renderedExtent(),r={x1:(n.x1-e.x)/t,x2:(n.x2-e.x)/t,y1:(n.y1-e.y)/t,y2:(n.y2-e.y)/t};return r.w=r.x2-r.x1,r.h=r.y2-r.y1,r},renderedExtent:function(){var e=this.width(),t=this.height();return{x1:0,y1:0,x2:e,y2:t,w:e,h:t}},multiClickDebounceTime:function(e){return e?(this._private.multiClickDebounceTime=e,this):this._private.multiClickDebounceTime}};ts.centre=ts.center,ts.autolockNodes=ts.autolock,ts.autoungrabifyNodes=ts.autoungrabify;var ns={data:Ca.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:Ca.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:Ca.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Ca.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};ns.attr=ns.data,ns.removeAttr=ns.removeData;var rs=function(e){var t=this,n=(e=Y({},e)).container;n&&!C(n)&&C(n[0])&&(n=n[0]);var r=n?n._cyreg:null;(r=r||{})&&r.cy&&(r.cy.destroy(),r={});var a=r.readies=r.readies||[];n&&(n._cyreg=r),r.cy=t;var i=void 0!==h&&void 0!==n&&!e.headless,o=e;o.layout=Y({name:i?"grid":"null"},o.layout),o.renderer=Y({name:i?"canvas":"null"},o.renderer);var s=function(e,t,n){return void 0!==t?t:void 0!==n?n:e},l=this._private={container:n,ready:!1,options:o,elements:new bo(this),listeners:[],aniEles:new bo(this),data:o.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:s(!0,o.zoomingEnabled),userZoomingEnabled:s(!0,o.userZoomingEnabled),panningEnabled:s(!0,o.panningEnabled),userPanningEnabled:s(!0,o.userPanningEnabled),boxSelectionEnabled:s(!0,o.boxSelectionEnabled),autolock:s(!1,o.autolock,o.autolockNodes),autoungrabify:s(!1,o.autoungrabify,o.autoungrabifyNodes),autounselectify:s(!1,o.autounselectify),styleEnabled:void 0===o.styleEnabled?i:o.styleEnabled,zoom:k(o.zoom)?o.zoom:1,pan:{x:E(o.pan)&&k(o.pan.x)?o.pan.x:0,y:E(o.pan)&&k(o.pan.y)?o.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:s(250,o.multiClickDebounceTime)};this.createEmitter(),this.selectionType(o.selectionType),this.zoomRange({min:o.minZoom,max:o.maxZoom}),l.styleEnabled&&t.setStyle([]);var u=Y({},o,o.renderer);t.initRenderer(u),function(e,t){if(e.some(B))return Er.all(e).then(t);t(e)}([o.style,o.elements],(function(e){var n=e[0],i=e[1];l.styleEnabled&&t.style().append(n),function(e,n,r){t.notifications(!1);var a=t.mutableElements();a.length>0&&a.remove(),null!=e&&(E(e)||w(e))&&t.add(e),t.one("layoutready",(function(e){t.notifications(!0),t.emit(e),t.one("load",n),t.emitAndNotify("load")})).one("layoutstop",(function(){t.one("done",r),t.emit("done")}));var i=Y({},t._private.options.layout);i.eles=t.elements(),t.layout(i).run()}(i,(function(){t.startAnimationLoop(),l.ready=!0,x(o.ready)&&t.on("ready",o.ready);for(var e=0;e0,u=It(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(S(n.roots))e=n.roots;else if(w(n.roots)){for(var c=[],d=0;d0;){var N=_.shift(),z=T(N,M);if(z)N.outgoers().filter((function(e){return e.isNode()&&a.has(e)})).forEach(B);else if(null===z){Xe("Detected double maximal shift for node `"+N.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}D();var I=0;if(n.avoidOverlap)for(var A=0;A0&&y[0].length<=3?l/2:0),d=2*Math.PI/y[r].length*a;return 0===r&&1===y[0].length&&(c=1),{x:G+c*Math.cos(d),y:U+c*Math.sin(d)}}return{x:G+(a+1-(i+1)/2)*o,y:(r+1)*s}})),this};var cs={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function ds(e){this.options=Y({},cs,e)}ds.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,a=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,i=r.nodes().not(":parent");t.sort&&(i=i.sort(t.sort));for(var o,s=It(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l=s.x1+s.w/2,u=s.y1+s.h/2,c=(void 0===t.sweep?2*Math.PI-2*Math.PI/i.length:t.sweep)/Math.max(1,i.length-1),d=0,h=0;h1&&t.avoidOverlap){d*=1.75;var v=Math.cos(c)-Math.cos(0),y=Math.sin(c)-Math.sin(0),m=Math.sqrt(d*d/(v*v+y*y));o=Math.max(m,o)}return r.nodes().layoutPositions(this,t,(function(e,n){var r=t.startAngle+n*c*(a?1:-1),i=o*Math.cos(r),s=o*Math.sin(r);return{x:l+i,y:u+s}})),this};var hs,ps={fit:!0,padding:30,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(e){return e.degree()},levelWidth:function(e){return e.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function fs(e){this.options=Y({},ps,e)}fs.prototype.run=function(){for(var e=this.options,t=e,n=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,r=e.cy,a=t.eles,i=a.nodes().not(":parent"),o=It(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),s=o.x1+o.w/2,l=o.y1+o.h/2,u=[],c=0,d=0;d0&&Math.abs(m[0].value-x.value)>=v&&(m=[],y.push(m)),m.push(x)}var w=c+t.minNodeSpacing;if(!t.avoidOverlap){var E=y.length>0&&y[0].length>1,k=(Math.min(o.w,o.h)/2-w)/(y.length+E?1:0);w=Math.min(w,k)}for(var C=0,S=0;S1&&t.avoidOverlap){var _=Math.cos(T)-Math.cos(0),M=Math.sin(T)-Math.sin(0),B=Math.sqrt(w*w/(_*_+M*M));C=Math.max(B,C)}P.r=C,C+=w}if(t.equidistant){for(var N=0,z=0,I=0;I=e.numIter||(ks(r,e),r.temperature=r.temperature*e.coolingFactor,r.temperature=e.animationThreshold&&i(),Ee(t)):(As(r,e),s())}();else{for(;u;)u=o(l),l++;As(r,e),s()}return this},vs.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},vs.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var ys=function(e,t,n){for(var r=n.eles.edges(),a=n.eles.nodes(),i=It(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),o={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:a.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:r.size(),temperature:n.initialTemp,clientWidth:i.w,clientHeight:i.h,boundingBox:i},s=n.eles.components(),l={},u=0;u0)for(o.graphSet.push(E),u=0;ur.count?0:r.graph},bs=function e(t,n,r,a){var i=a.graphSet[r];if(-10)var s=(u=r.nodeOverlap*o)*a/(g=Math.sqrt(a*a+i*i)),l=u*i/g;else{var u,c=Ts(e,a,i),d=Ts(t,-1*a,-1*i),h=d.x-c.x,p=d.y-c.y,f=h*h+p*p,g=Math.sqrt(f);s=(u=(e.nodeRepulsion+t.nodeRepulsion)/f)*h/g,l=u*p/g}e.isLocked||(e.offsetX-=s,e.offsetY-=l),t.isLocked||(t.offsetX+=s,t.offsetY+=l)}},Ds=function(e,t,n,r){if(n>0)var a=e.maxX-t.minX;else a=t.maxX-e.minX;if(r>0)var i=e.maxY-t.minY;else i=t.maxY-e.minY;return a>=0&&i>=0?Math.sqrt(a*a+i*i):0},Ts=function(e,t,n){var r=e.positionX,a=e.positionY,i=e.height||1,o=e.width||1,s=n/t,l=i/o,u={};return 0===t&&0n?(u.x=r,u.y=a+i/2,u):0t&&-1*l<=s&&s<=l?(u.x=r-o/2,u.y=a-o*n/2/t,u):0=l)?(u.x=r+i*t/2/n,u.y=a+i/2,u):0>n&&(s<=-1*l||s>=l)?(u.x=r-i*t/2/n,u.y=a-i/2,u):u},_s=function(e,t){for(var n=0;n1){var f=t.gravity*d/p,g=t.gravity*h/p;c.offsetX+=f,c.offsetY+=g}}}}},Bs=function(e,t){var n=[],r=0,a=-1;for(n.push.apply(n,e.graphSet[0]),a+=e.graphSet[0].length;r<=a;){var i=n[r++],o=e.idToIndex[i],s=e.layoutNodes[o],l=s.children;if(0n)var a={x:n*e/r,y:n*t/r};else a={x:e,y:t};return a},Is=function e(t,n){var r=t.parentId;if(null!=r){var a=n.layoutNodes[n.idToIndex[r]],i=!1;return(null==a.maxX||t.maxX+a.padRight>a.maxX)&&(a.maxX=t.maxX+a.padRight,i=!0),(null==a.minX||t.minX-a.padLefta.maxY)&&(a.maxY=t.maxY+a.padBottom,i=!0),(null==a.minY||t.minY-a.padTopf&&(d+=p+t.componentSpacing,c=0,h=0,p=0)}}},Ls={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(e){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function Os(e){this.options=Y({},Ls,e)}Os.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,a=r.nodes().not(":parent");t.sort&&(a=a.sort(t.sort));var i=It(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()});if(0===i.h||0===i.w)r.nodes().layoutPositions(this,t,(function(e){return{x:i.x1,y:i.y1}}));else{var o=a.size(),s=Math.sqrt(o*i.h/i.w),l=Math.round(s),u=Math.round(i.w/i.h*s),c=function(e){if(null==e)return Math.min(l,u);Math.min(l,u)==l?l=e:u=e},d=function(e){if(null==e)return Math.max(l,u);Math.max(l,u)==l?l=e:u=e},h=t.rows,p=null!=t.cols?t.cols:t.columns;if(null!=h&&null!=p)l=h,u=p;else if(null!=h&&null==p)l=h,u=Math.ceil(o/l);else if(null==h&&null!=p)u=p,l=Math.ceil(o/u);else if(u*l>o){var f=c(),g=d();(f-1)*g>=o?c(f-1):(g-1)*f>=o&&d(g-1)}else for(;u*l=o?d(y+1):c(v+1)}var m=i.w/u,b=i.h/l;if(t.condense&&(m=0,b=0),t.avoidOverlap)for(var x=0;x=u&&(B=0,M++)},z={},I=0;I(r=Kt(e,t,x[w],x[w+1],x[w+2],x[w+3])))return v(n,r),!0}else if("bezier"===i.edgeType||"multibezier"===i.edgeType||"self"===i.edgeType||"compound"===i.edgeType)for(x=i.allpts,w=0;w+5(r=Ht(e,t,x[w],x[w+1],x[w+2],x[w+3],x[w+4],x[w+5])))return v(n,r),!0;m=m||a.source,b=b||a.target;var E=o.getArrowWidth(l,c),k=[{name:"source",x:i.arrowStartX,y:i.arrowStartY,angle:i.srcArrowAngle},{name:"target",x:i.arrowEndX,y:i.arrowEndY,angle:i.tgtArrowAngle},{name:"mid-source",x:i.midX,y:i.midY,angle:i.midsrcArrowAngle},{name:"mid-target",x:i.midX,y:i.midY,angle:i.midtgtArrowAngle}];for(w=0;w0&&(y(m),y(b))}function b(e,t,n){return Qe(e,t,n)}function x(n,r){var a,i=n._private,o=f;a=r?r+"-":"",n.boundingBox();var s=i.labelBounds[r||"main"],l=n.pstyle(a+"label").value;if("yes"===n.pstyle("text-events").strValue&&l){var u=b(i.rscratch,"labelX",r),c=b(i.rscratch,"labelY",r),d=b(i.rscratch,"labelAngle",r),h=n.pstyle(a+"text-margin-x").pfValue,p=n.pstyle(a+"text-margin-y").pfValue,g=s.x1-o-h,y=s.x2+o-h,m=s.y1-o-p,x=s.y2+o-p;if(d){var w=Math.cos(d),E=Math.sin(d),k=function(e,t){return{x:(e-=u)*w-(t-=c)*E+u,y:e*E+t*w+c}},C=k(g,m),S=k(g,x),P=k(y,m),D=k(y,x),T=[C.x+h,C.y+p,P.x+h,P.y+p,D.x+h,D.y+p,S.x+h,S.y+p];if(Gt(e,t,T))return v(n),!0}else if(jt(s,e,t))return v(n),!0}}n&&(l=l.interactive);for(var w=l.length-1;w>=0;w--){var E=l[w];E.isNode()?y(E)||x(E):m(E)||x(E)||x(E,"source")||x(E,"target")}return u},getAllInBox:function(e,t,n,r){for(var a,i,o=this.getCachedZSortedEles().interactive,s=[],l=Math.min(e,n),u=Math.max(e,n),c=Math.min(t,r),d=Math.max(t,r),h=It({x1:e=l,y1:t=c,x2:n=u,y2:r=d}),p=0;p4&&void 0!==arguments[4])||arguments[4];return 0===r||0===t.radius?{cx:t.x,cy:t.y,radius:0,startX:t.x,startY:t.y,stopX:t.x,stopY:t.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(function(e,t,n,r,a){var i,o;if(e!==pl?vl(t,e,fl):((o=fl).x=-1*(i=gl).x,o.y=-1*i.y,o.nx=-1*i.nx,o.ny=-1*i.ny,o.ang=i.ang>0?-(Math.PI-i.ang):Math.PI+i.ang),vl(t,n,gl),Js=fl.nx*gl.ny-fl.ny*gl.nx,el=fl.nx*gl.nx-fl.ny*-gl.ny,rl=Math.asin(Math.max(-1,Math.min(1,Js))),Math.abs(rl)<1e-6)return $s=t.x,Qs=t.y,void(il=sl=0);tl=1,nl=!1,el<0?rl<0?rl=Math.PI+rl:(rl=Math.PI-rl,tl=-1,nl=!0):rl>0&&(tl=-1,nl=!0),sl=void 0!==t.radius?t.radius:r,al=rl/2,ll=Math.min(fl.len/2,gl.len/2),a?(ol=Math.abs(Math.cos(al)*sl/Math.sin(al)))>ll?(ol=ll,il=Math.abs(ol*Math.sin(al)/Math.cos(al))):il=sl:(ol=Math.min(ll,sl),il=Math.abs(ol*Math.sin(al)/Math.cos(al))),dl=t.x+gl.nx*ol,hl=t.y+gl.ny*ol,$s=dl-gl.ny*il*tl,Qs=hl+gl.nx*il*tl,ul=t.x+fl.nx*ol,cl=t.y+fl.ny*ol,pl=t}(e,t,n,r,a),{cx:$s,cy:Qs,radius:il,startX:ul,startY:cl,stopX:dl,stopY:hl,startAngle:fl.ang+Math.PI/2*tl,endAngle:gl.ang-Math.PI/2*tl,counterClockwise:nl})}var bl={};function xl(e){var t=[];if(null!=e){for(var n=0;n0?Math.max(e-t,0):Math.min(e+t,0)},D=P(C,E),T=P(S,k),_=!1;"auto"===v?g=Math.abs(D)>Math.abs(T)?a:r:v===l||v===s?(g=r,_=!0):v!==i&&v!==o||(g=a,_=!0);var M,B=g===r,N=B?T:D,z=B?S:C,I=Dt(z),A=!1;_&&(m||x)||!(v===s&&z<0||v===l&&z>0||v===i&&z>0||v===o&&z<0)||(N=(I*=-1)*Math.abs(N),A=!0);var L=function(e){return Math.abs(e)=Math.abs(N)},O=L(M=m?(b<0?1+b:b)*N:(b<0?N:0)+b*I),R=L(Math.abs(N)-Math.abs(M));if(!O&&!R||A)if(B){var V=u.y1+M+(f?d/2*I:0),F=u.x1,j=u.x2;n.segpts=[F,V,j,V]}else{var q=u.x1+M+(f?c/2*I:0),Y=u.y1,X=u.y2;n.segpts=[q,Y,q,X]}else if(B){var W=Math.abs(z)<=d/2,H=Math.abs(C)<=h/2;if(W){var K=(u.x1+u.x2)/2,G=u.y1,U=u.y2;n.segpts=[K,G,K,U]}else if(H){var Z=(u.y1+u.y2)/2,$=u.x1,Q=u.x2;n.segpts=[$,Z,Q,Z]}else n.segpts=[u.x1,u.y2]}else{var J=Math.abs(z)<=c/2,ee=Math.abs(S)<=p/2;if(J){var te=(u.y1+u.y2)/2,ne=u.x1,re=u.x2;n.segpts=[ne,te,re,te]}else if(ee){var ae=(u.x1+u.x2)/2,ie=u.y1,oe=u.y2;n.segpts=[ae,ie,ae,oe]}else n.segpts=[u.x2,u.y1]}if(n.isRound){var se=e.pstyle("taxi-radius").value,le="arc-radius"===e.pstyle("radius-type").value[0];n.radii=new Array(n.segpts.length/2).fill(se),n.isArcRadius=new Array(n.segpts.length/2).fill(le)}},bl.tryToCorrectInvalidPoints=function(e,t){var n=e._private.rscratch;if("bezier"===n.edgeType){var r=t.srcPos,a=t.tgtPos,i=t.srcW,o=t.srcH,s=t.tgtW,l=t.tgtH,u=t.srcShape,c=t.tgtShape,d=t.srcCornerRadius,h=t.tgtCornerRadius,p=t.srcRs,f=t.tgtRs,g=!k(n.startX)||!k(n.startY),v=!k(n.arrowStartX)||!k(n.arrowStartY),y=!k(n.endX)||!k(n.endY),m=!k(n.arrowEndX)||!k(n.arrowEndY),b=this.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.arrowShapeWidth*3,x=Tt({x:n.ctrlpts[0],y:n.ctrlpts[1]},{x:n.startX,y:n.startY}),w=xh.poolIndex()){var p=d;d=h,h=p}var f=s.srcPos=d.position(),g=s.tgtPos=h.position(),v=s.srcW=d.outerWidth(),y=s.srcH=d.outerHeight(),m=s.tgtW=h.outerWidth(),b=s.tgtH=h.outerHeight(),x=s.srcShape=n.nodeShapes[t.getNodeShape(d)],w=s.tgtShape=n.nodeShapes[t.getNodeShape(h)],E=s.srcCornerRadius="auto"===d.pstyle("corner-radius").value?"auto":d.pstyle("corner-radius").pfValue,C=s.tgtCornerRadius="auto"===h.pstyle("corner-radius").value?"auto":h.pstyle("corner-radius").pfValue,S=s.tgtRs=h._private.rscratch,P=s.srcRs=d._private.rscratch;s.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var D=0;D0){var H=u,K=_t(H,Ct(t)),G=_t(H,Ct(W)),U=K;G2&&_t(H,{x:W[2],y:W[3]})0){var le=c,ue=_t(le,Ct(t)),ce=_t(le,Ct(se)),de=ue;ce2&&_t(le,{x:se[2],y:se[3]})=u||m){c={cp:g,segment:y};break}}if(c)break}var b=c.cp,x=c.segment,w=(u-h)/x.length,E=x.t1-x.t0,k=s?x.t0+E*w:x.t1-E*w;k=zt(0,k,1),t=Nt(b.p0,b.p1,b.p2,k),a=function(e,t,n,r){var a=zt(0,r-.001,1),i=zt(0,r+.001,1),o=Nt(e,t,n,a),s=Nt(e,t,n,i);return Pl(o,s)}(b.p0,b.p1,b.p2,k);break;case"straight":case"segments":case"haystack":for(var C,S,P,D,T=0,_=r.allpts.length,M=0;M+3<_&&(s?(P={x:r.allpts[M],y:r.allpts[M+1]},D={x:r.allpts[M+2],y:r.allpts[M+3]}):(P={x:r.allpts[_-2-M],y:r.allpts[_-1-M]},D={x:r.allpts[_-4-M],y:r.allpts[_-3-M]}),S=T,!((T+=C=Tt(P,D))>=u));M+=2);var B=(u-S)/C;B=zt(0,B,1),t=function(e,t,n,r){var a=t.x-e.x,i=t.y-e.y,o=Tt(e,t),s=a/o,l=i/o;return n=null==n?0:n,r=null!=r?r:n*o,{x:e.x+s*r,y:e.y+l*r}}(P,D,B),a=Pl(P,D)}o("labelX",n,t.x),o("labelY",n,t.y),o("labelAutoAngle",n,a)}};u("source"),u("target"),this.applyLabelDimensions(e)}},Cl.applyLabelDimensions=function(e){this.applyPrefixedLabelDimensions(e),e.isEdge()&&(this.applyPrefixedLabelDimensions(e,"source"),this.applyPrefixedLabelDimensions(e,"target"))},Cl.applyPrefixedLabelDimensions=function(e,t){var n=e._private,r=this.getLabelText(e,t),a=this.calculateLabelDimensions(e,r),i=e.pstyle("line-height").pfValue,o=e.pstyle("text-wrap").strValue,s=Qe(n.rscratch,"labelWrapCachedLines",t)||[],l="wrap"!==o?1:Math.max(s.length,1),u=a.height/l,c=u*i,d=a.width,h=a.height+(l-1)*(i-1)*u;Je(n.rstyle,"labelWidth",t,d),Je(n.rscratch,"labelWidth",t,d),Je(n.rstyle,"labelHeight",t,h),Je(n.rscratch,"labelHeight",t,h),Je(n.rscratch,"labelLineHeight",t,c)},Cl.getLabelText=function(e,t){var n=e._private,r=t?t+"-":"",a=e.pstyle(r+"label").strValue,i=e.pstyle("text-transform").value,o=function(e,r){return r?(Je(n.rscratch,e,t,r),r):Qe(n.rscratch,e,t)};if(!a)return"";"none"==i||("uppercase"==i?a=a.toUpperCase():"lowercase"==i&&(a=a.toLowerCase()));var s=e.pstyle("text-wrap").value;if("wrap"===s){var l=o("labelKey");if(null!=l&&o("labelWrapKey")===l)return o("labelWrapCachedText");for(var u=a.split("\n"),c=e.pstyle("text-max-width").pfValue,h="anywhere"===e.pstyle("text-overflow-wrap").value,p=[],f=/[\s\u200b]+|$/g,g=0;gc){var b,x="",w=0,E=d(v.matchAll(f));try{for(E.s();!(b=E.n()).done;){var k=b.value,C=k[0],S=v.substring(w,k.index);w=k.index+C.length;var P=0===x.length?S:x+S+C;this.calculateLabelDimensions(e,P).width<=c?x+=S+C:(x&&p.push(x),x=S+C)}}catch(e){E.e(e)}finally{E.f()}x.match(/^[\s\u200b]+$/)||p.push(x)}else p.push(v)}o("labelWrapCachedLines",p),a=o("labelWrapCachedText",p.join("\n")),o("labelWrapKey",l)}else if("ellipsis"===s){var D=e.pstyle("text-max-width").pfValue,T="",_=!1;if(this.calculateLabelDimensions(e,a).widthD);M++)T+=a[M],M===a.length-1&&(_=!0);return _||(T+="…"),T}return a},Cl.getLabelJustification=function(e){var t=e.pstyle("text-justification").strValue,n=e.pstyle("text-halign").strValue;if("auto"!==t)return t;if(!e.isNode())return"center";switch(n){case"left":return"right";case"right":return"left";default:return"center"}},Cl.calculateLabelDimensions=function(e,t){var n=this,r=n.cy.window().document,a=Be(t,e._private.labelDimsKey),i=n.labelDimCache||(n.labelDimCache=[]),o=i[a];if(null!=o)return o;var s=e.pstyle("font-style").strValue,l=e.pstyle("font-size").pfValue,u=e.pstyle("font-family").strValue,c=e.pstyle("font-weight").strValue,d=this.labelCalcCanvas,h=this.labelCalcCanvasContext;if(!d){d=this.labelCalcCanvas=r.createElement("canvas"),h=this.labelCalcCanvasContext=d.getContext("2d");var p=d.style;p.position="absolute",p.left="-9999px",p.top="-9999px",p.zIndex="-1",p.visibility="hidden",p.pointerEvents="none"}h.font="".concat(s," ").concat(c," ").concat(l,"px ").concat(u);for(var f=0,g=0,v=t.split("\n"),y=0;y1&&void 0!==arguments[1])||arguments[1];if(t.merge(e),n)for(var r=0;r=e.desktopTapThreshold2}var D=a(t);v&&(e.hoverData.tapholdCancelled=!0),n=!0,r(g,["mousemove","vmousemove","tapdrag"],t,{x:c[0],y:c[1]});var T=function(){e.data.bgActivePosistion=void 0,e.hoverData.selecting||o.emit({originalEvent:t,type:"boxstart",position:{x:c[0],y:c[1]}}),f[4]=1,e.hoverData.selecting=!0,e.redrawHint("select",!0),e.redraw()};if(3===e.hoverData.which){if(v){var _={originalEvent:t,type:"cxtdrag",position:{x:c[0],y:c[1]}};m?m.emit(_):o.emit(_),e.hoverData.cxtDragged=!0,e.hoverData.cxtOver&&g===e.hoverData.cxtOver||(e.hoverData.cxtOver&&e.hoverData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:c[0],y:c[1]}}),e.hoverData.cxtOver=g,g&&g.emit({originalEvent:t,type:"cxtdragover",position:{x:c[0],y:c[1]}}))}}else if(e.hoverData.dragging){if(n=!0,o.panningEnabled()&&o.userPanningEnabled()){var M;if(e.hoverData.justStartedPan){var B=e.hoverData.mdownPos;M={x:(c[0]-B[0])*s,y:(c[1]-B[1])*s},e.hoverData.justStartedPan=!1}else M={x:b[0]*s,y:b[1]*s};o.panBy(M),o.emit("dragpan"),e.hoverData.dragged=!0}c=e.projectIntoViewport(t.clientX,t.clientY)}else if(1!=f[4]||null!=m&&!m.pannable()){if(m&&m.pannable()&&m.active()&&m.unactivate(),m&&m.grabbed()||g==y||(y&&r(y,["mouseout","tapdragout"],t,{x:c[0],y:c[1]}),g&&r(g,["mouseover","tapdragover"],t,{x:c[0],y:c[1]}),e.hoverData.last=g),m)if(v){if(o.boxSelectionEnabled()&&D)m&&m.grabbed()&&(d(x),m.emit("freeon"),x.emit("free"),e.dragData.didDrag&&(m.emit("dragfreeon"),x.emit("dragfree"))),T();else if(m&&m.grabbed()&&e.nodeIsDraggable(m)){var N=!e.dragData.didDrag;N&&e.redrawHint("eles",!0),e.dragData.didDrag=!0,e.hoverData.draggingEles||u(x,{inDragLayer:!0});var z={x:0,y:0};if(k(b[0])&&k(b[1])&&(z.x+=b[0],z.y+=b[1],N)){var I=e.hoverData.dragDelta;I&&k(I[0])&&k(I[1])&&(z.x+=I[0],z.y+=I[1])}e.hoverData.draggingEles=!0,x.silentShift(z).emit("position drag"),e.redrawHint("drag",!0),e.redraw()}}else!function(){var t=e.hoverData.dragDelta=e.hoverData.dragDelta||[];0===t.length?(t.push(b[0]),t.push(b[1])):(t[0]+=b[0],t[1]+=b[1])}();n=!0}else v&&(e.hoverData.dragging||!o.boxSelectionEnabled()||!D&&o.panningEnabled()&&o.userPanningEnabled()?!e.hoverData.selecting&&o.panningEnabled()&&o.userPanningEnabled()&&i(m,e.hoverData.downs)&&(e.hoverData.dragging=!0,e.hoverData.justStartedPan=!0,f[4]=0,e.data.bgActivePosistion=Ct(h),e.redrawHint("select",!0),e.redraw()):T(),m&&m.pannable()&&m.active()&&m.unactivate());return f[2]=c[0],f[3]=c[1],n?(t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault(),!1):void 0}}),!1),e.registerBinding(t,"mouseup",(function(t){if((1!==e.hoverData.which||1===t.which||!e.hoverData.capture)&&e.hoverData.capture){e.hoverData.capture=!1;var i=e.cy,o=e.projectIntoViewport(t.clientX,t.clientY),s=e.selection,l=e.findNearestElement(o[0],o[1],!0,!1),u=e.dragData.possibleDragElements,c=e.hoverData.down,h=a(t);if(e.data.bgActivePosistion&&(e.redrawHint("select",!0),e.redraw()),e.hoverData.tapholdCancelled=!0,e.data.bgActivePosistion=void 0,c&&c.unactivate(),3===e.hoverData.which){var p={originalEvent:t,type:"cxttapend",position:{x:o[0],y:o[1]}};if(c?c.emit(p):i.emit(p),!e.hoverData.cxtDragged){var f={originalEvent:t,type:"cxttap",position:{x:o[0],y:o[1]}};c?c.emit(f):i.emit(f)}e.hoverData.cxtDragged=!1,e.hoverData.which=null}else if(1===e.hoverData.which){if(r(l,["mouseup","tapend","vmouseup"],t,{x:o[0],y:o[1]}),e.dragData.didDrag||e.hoverData.dragged||e.hoverData.selecting||e.hoverData.isOverThresholdDrag||(r(c,["click","tap","vclick"],t,{x:o[0],y:o[1]}),b=!1,t.timeStamp-x<=i.multiClickDebounceTime()?(m&&clearTimeout(m),b=!0,x=null,r(c,["dblclick","dbltap","vdblclick"],t,{x:o[0],y:o[1]})):(m=setTimeout((function(){b||r(c,["oneclick","onetap","voneclick"],t,{x:o[0],y:o[1]})}),i.multiClickDebounceTime()),x=t.timeStamp)),null!=c||e.dragData.didDrag||e.hoverData.selecting||e.hoverData.dragged||a(t)||(i.$(n).unselect(["tapunselect"]),u.length>0&&e.redrawHint("eles",!0),e.dragData.possibleDragElements=u=i.collection()),l!=c||e.dragData.didDrag||e.hoverData.selecting||null!=l&&l._private.selectable&&(e.hoverData.dragging||("additive"===i.selectionType()||h?l.selected()?l.unselect(["tapunselect"]):l.select(["tapselect"]):h||(i.$(n).unmerge(l).unselect(["tapunselect"]),l.select(["tapselect"]))),e.redrawHint("eles",!0)),e.hoverData.selecting){var g=i.collection(e.getAllInBox(s[0],s[1],s[2],s[3]));e.redrawHint("select",!0),g.length>0&&e.redrawHint("eles",!0),i.emit({type:"boxend",originalEvent:t,position:{x:o[0],y:o[1]}});"additive"===i.selectionType()||h||i.$(n).unmerge(g).unselect(),g.emit("box").stdFilter((function(e){return e.selectable()&&!e.selected()})).select().emit("boxselect"),e.redraw()}if(e.hoverData.dragging&&(e.hoverData.dragging=!1,e.redrawHint("select",!0),e.redrawHint("eles",!0),e.redraw()),!s[4]){e.redrawHint("drag",!0),e.redrawHint("eles",!0);var v=c&&c.grabbed();d(u),v&&(c.emit("freeon"),u.emit("free"),e.dragData.didDrag&&(c.emit("dragfreeon"),u.emit("dragfree")))}}s[4]=0,e.hoverData.down=null,e.hoverData.cxtStarted=!1,e.hoverData.draggingEles=!1,e.hoverData.selecting=!1,e.hoverData.isOverThresholdDrag=!1,e.dragData.didDrag=!1,e.hoverData.dragged=!1,e.hoverData.dragDelta=[],e.hoverData.mdownPos=null,e.hoverData.mdownGPos=null,e.hoverData.which=null}}),!1);var E,C,S,P,D,T,_,M,B,N,z,I,A,L=function(t){if(!e.scrollingPage){var n=e.cy,r=n.zoom(),a=n.pan(),i=e.projectIntoViewport(t.clientX,t.clientY),o=[i[0]*r+a.x,i[1]*r+a.y];if(e.hoverData.draggingEles||e.hoverData.dragging||e.hoverData.cxtStarted||0!==e.selection[4])t.preventDefault();else if(n.panningEnabled()&&n.userPanningEnabled()&&n.zoomingEnabled()&&n.userZoomingEnabled()){var s;t.preventDefault(),e.data.wheelZooming=!0,clearTimeout(e.data.wheelTimeout),e.data.wheelTimeout=setTimeout((function(){e.data.wheelZooming=!1,e.redrawHint("eles",!0),e.redraw()}),150),s=null!=t.deltaY?t.deltaY/-250:null!=t.wheelDeltaY?t.wheelDeltaY/1e3:t.wheelDelta/1e3,s*=e.wheelSensitivity,1===t.deltaMode&&(s*=33);var l=n.zoom()*Math.pow(10,s);"gesturechange"===t.type&&(l=e.gestureStartZoom*t.scale),n.zoom({level:l,renderedPosition:{x:o[0],y:o[1]}}),n.emit("gesturechange"===t.type?"pinchzoom":"scrollzoom")}}};e.registerBinding(e.container,"wheel",L,!0),e.registerBinding(t,"scroll",(function(t){e.scrollingPage=!0,clearTimeout(e.scrollingPageTimeout),e.scrollingPageTimeout=setTimeout((function(){e.scrollingPage=!1}),250)}),!0),e.registerBinding(e.container,"gesturestart",(function(t){e.gestureStartZoom=e.cy.zoom(),e.hasTouchStarted||t.preventDefault()}),!0),e.registerBinding(e.container,"gesturechange",(function(t){e.hasTouchStarted||L(t)}),!0),e.registerBinding(e.container,"mouseout",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseout",position:{x:n[0],y:n[1]}})}),!1),e.registerBinding(e.container,"mouseover",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseover",position:{x:n[0],y:n[1]}})}),!1);var O,R,V,F,j,q,Y,X=function(e,t,n,r){return Math.sqrt((n-e)*(n-e)+(r-t)*(r-t))},W=function(e,t,n,r){return(n-e)*(n-e)+(r-t)*(r-t)};if(e.registerBinding(e.container,"touchstart",O=function(t){if(e.hasTouchStarted=!0,w(t)){p(),e.touchData.capture=!0,e.data.bgActivePosistion=void 0;var n=e.cy,a=e.touchData.now,i=e.touchData.earlier;if(t.touches[0]){var o=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);a[0]=o[0],a[1]=o[1]}if(t.touches[1]&&(o=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY),a[2]=o[0],a[3]=o[1]),t.touches[2]&&(o=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY),a[4]=o[0],a[5]=o[1]),t.touches[1]){e.touchData.singleTouchMoved=!0,d(e.dragData.touchDragEles);var l=e.findContainerClientCoords();B=l[0],N=l[1],z=l[2],I=l[3],E=t.touches[0].clientX-B,C=t.touches[0].clientY-N,S=t.touches[1].clientX-B,P=t.touches[1].clientY-N,A=0<=E&&E<=z&&0<=S&&S<=z&&0<=C&&C<=I&&0<=P&&P<=I;var h=n.pan(),f=n.zoom();if(D=X(E,C,S,P),T=W(E,C,S,P),M=[((_=[(E+S)/2,(C+P)/2])[0]-h.x)/f,(_[1]-h.y)/f],T<4e4&&!t.touches[2]){var g=e.findNearestElement(a[0],a[1],!0,!0),v=e.findNearestElement(a[2],a[3],!0,!0);return g&&g.isNode()?(g.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:a[0],y:a[1]}}),e.touchData.start=g):v&&v.isNode()?(v.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:a[0],y:a[1]}}),e.touchData.start=v):n.emit({originalEvent:t,type:"cxttapstart",position:{x:a[0],y:a[1]}}),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!0,e.touchData.cxtDragged=!1,e.data.bgActivePosistion=void 0,void e.redraw()}}if(t.touches[2])n.boxSelectionEnabled()&&t.preventDefault();else if(t.touches[1]);else if(t.touches[0]){var y=e.findNearestElements(a[0],a[1],!0,!0),m=y[0];if(null!=m&&(m.activate(),e.touchData.start=m,e.touchData.starts=y,e.nodeIsGrabbable(m))){var b=e.dragData.touchDragEles=n.collection(),x=null;e.redrawHint("eles",!0),e.redrawHint("drag",!0),m.selected()?(x=n.$((function(t){return t.selected()&&e.nodeIsGrabbable(t)})),u(x,{addToList:b})):c(m,{addToList:b}),s(m);var k=function(e){return{originalEvent:t,type:e,position:{x:a[0],y:a[1]}}};m.emit(k("grabon")),x?x.forEach((function(e){e.emit(k("grab"))})):m.emit(k("grab"))}r(m,["touchstart","tapstart","vmousedown"],t,{x:a[0],y:a[1]}),null==m&&(e.data.bgActivePosistion={x:o[0],y:o[1]},e.redrawHint("select",!0),e.redraw()),e.touchData.singleTouchMoved=!1,e.touchData.singleTouchStartTime=+new Date,clearTimeout(e.touchData.tapholdTimeout),e.touchData.tapholdTimeout=setTimeout((function(){!1!==e.touchData.singleTouchMoved||e.pinching||e.touchData.selecting||r(e.touchData.start,["taphold"],t,{x:a[0],y:a[1]})}),e.tapholdDuration)}if(t.touches.length>=1){for(var L=e.touchData.startPosition=[null,null,null,null,null,null],O=0;O=e.touchTapThreshold2}if(n&&e.touchData.cxt){t.preventDefault();var x=t.touches[0].clientX-B,_=t.touches[0].clientY-N,z=t.touches[1].clientX-B,I=t.touches[1].clientY-N,L=W(x,_,z,I);if(L/T>=2.25||L>=22500){e.touchData.cxt=!1,e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var O={originalEvent:t,type:"cxttapend",position:{x:s[0],y:s[1]}};e.touchData.start?(e.touchData.start.unactivate().emit(O),e.touchData.start=null):o.emit(O)}}if(n&&e.touchData.cxt){O={originalEvent:t,type:"cxtdrag",position:{x:s[0],y:s[1]}},e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.touchData.start?e.touchData.start.emit(O):o.emit(O),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxtDragged=!0;var R=e.findNearestElement(s[0],s[1],!0,!0);e.touchData.cxtOver&&R===e.touchData.cxtOver||(e.touchData.cxtOver&&e.touchData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:s[0],y:s[1]}}),e.touchData.cxtOver=R,R&&R.emit({originalEvent:t,type:"cxtdragover",position:{x:s[0],y:s[1]}}))}else if(n&&t.touches[2]&&o.boxSelectionEnabled())t.preventDefault(),e.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,e.touchData.selecting||o.emit({originalEvent:t,type:"boxstart",position:{x:s[0],y:s[1]}}),e.touchData.selecting=!0,e.touchData.didSelect=!0,a[4]=1,a&&0!==a.length&&void 0!==a[0]?(a[2]=(s[0]+s[2]+s[4])/3,a[3]=(s[1]+s[3]+s[5])/3):(a[0]=(s[0]+s[2]+s[4])/3,a[1]=(s[1]+s[3]+s[5])/3,a[2]=(s[0]+s[2]+s[4])/3+1,a[3]=(s[1]+s[3]+s[5])/3+1),e.redrawHint("select",!0),e.redraw();else if(n&&t.touches[1]&&!e.touchData.didSelect&&o.zoomingEnabled()&&o.panningEnabled()&&o.userZoomingEnabled()&&o.userPanningEnabled()){if(t.preventDefault(),e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),ee=e.dragData.touchDragEles){e.redrawHint("drag",!0);for(var V=0;V0&&!e.hoverData.draggingEles&&!e.swipePanning&&null!=e.data.bgActivePosistion&&(e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.redraw())}},!1),e.registerBinding(t,"touchcancel",V=function(t){var n=e.touchData.start;e.touchData.capture=!1,n&&n.unactivate()}),e.registerBinding(t,"touchend",F=function(t){var a=e.touchData.start;if(e.touchData.capture){0===t.touches.length&&(e.touchData.capture=!1),t.preventDefault();var i=e.selection;e.swipePanning=!1,e.hoverData.draggingEles=!1;var o,s=e.cy,l=s.zoom(),u=e.touchData.now,c=e.touchData.earlier;if(t.touches[0]){var h=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);u[0]=h[0],u[1]=h[1]}if(t.touches[1]&&(h=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY),u[2]=h[0],u[3]=h[1]),t.touches[2]&&(h=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY),u[4]=h[0],u[5]=h[1]),a&&a.unactivate(),e.touchData.cxt){if(o={originalEvent:t,type:"cxttapend",position:{x:u[0],y:u[1]}},a?a.emit(o):s.emit(o),!e.touchData.cxtDragged){var p={originalEvent:t,type:"cxttap",position:{x:u[0],y:u[1]}};a?a.emit(p):s.emit(p)}return e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!1,e.touchData.start=null,void e.redraw()}if(!t.touches[2]&&s.boxSelectionEnabled()&&e.touchData.selecting){e.touchData.selecting=!1;var f=s.collection(e.getAllInBox(i[0],i[1],i[2],i[3]));i[0]=void 0,i[1]=void 0,i[2]=void 0,i[3]=void 0,i[4]=0,e.redrawHint("select",!0),s.emit({type:"boxend",originalEvent:t,position:{x:u[0],y:u[1]}}),f.emit("box").stdFilter((function(e){return e.selectable()&&!e.selected()})).select().emit("boxselect"),f.nonempty()&&e.redrawHint("eles",!0),e.redraw()}if(null!=a&&a.unactivate(),t.touches[2])e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);else if(t.touches[1]);else if(t.touches[0]);else if(!t.touches[0]){e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var g=e.dragData.touchDragEles;if(null!=a){var v=a._private.grabbed;d(g),e.redrawHint("drag",!0),e.redrawHint("eles",!0),v&&(a.emit("freeon"),g.emit("free"),e.dragData.didDrag&&(a.emit("dragfreeon"),g.emit("dragfree"))),r(a,["touchend","tapend","vmouseup","tapdragout"],t,{x:u[0],y:u[1]}),a.unactivate(),e.touchData.start=null}else{var y=e.findNearestElement(u[0],u[1],!0,!0);r(y,["touchend","tapend","vmouseup","tapdragout"],t,{x:u[0],y:u[1]})}var m=e.touchData.startPosition[0]-u[0],b=m*m,x=e.touchData.startPosition[1]-u[1],w=(b+x*x)*l*l;e.touchData.singleTouchMoved||(a||s.$(":selected").unselect(["tapunselect"]),r(a,["tap","vclick"],t,{x:u[0],y:u[1]}),j=!1,t.timeStamp-Y<=s.multiClickDebounceTime()?(q&&clearTimeout(q),j=!0,Y=null,r(a,["dbltap","vdblclick"],t,{x:u[0],y:u[1]})):(q=setTimeout((function(){j||r(a,["onetap","voneclick"],t,{x:u[0],y:u[1]})}),s.multiClickDebounceTime()),Y=t.timeStamp)),null!=a&&!e.dragData.didDrag&&a._private.selectable&&w2){for(var p=[c[0],c[1]],f=Math.pow(p[0]-e,2)+Math.pow(p[1]-t,2),g=1;g0)return g[0]}return null},p=Object.keys(d),f=0;f0?u:Yt(a,i,e,t,n,r,o,s)},checkPoint:function(e,t,n,r,a,i,o,s){var l=2*(s="auto"===s?ln(r,a):s);if(Ut(e,t,this.points,i,o,r,a-l,[0,-1],n))return!0;if(Ut(e,t,this.points,i,o,r-l,a,[0,-1],n))return!0;var u=r/2+2*n,c=a/2+2*n;return!!Gt(e,t,[i-u,o-c,i-u,o,i+u,o,i+u,o-c])||!!Qt(e,t,l,l,i+r/2-s,o+a/2-s,n)||!!Qt(e,t,l,l,i-r/2+s,o+a/2-s,n)}}},registerNodeShapes:function(){var e=this.nodeShapes={},t=this;this.generateEllipse(),this.generatePolygon("triangle",an(3,0)),this.generateRoundPolygon("round-triangle",an(3,0)),this.generatePolygon("rectangle",an(4,0)),e.square=e.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();var n=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",n),this.generateRoundPolygon("round-diamond",n),this.generatePolygon("pentagon",an(5,0)),this.generateRoundPolygon("round-pentagon",an(5,0)),this.generatePolygon("hexagon",an(6,0)),this.generateRoundPolygon("round-hexagon",an(6,0)),this.generatePolygon("heptagon",an(7,0)),this.generateRoundPolygon("round-heptagon",an(7,0)),this.generatePolygon("octagon",an(8,0)),this.generateRoundPolygon("round-octagon",an(8,0));var r=new Array(20),a=sn(5,0),i=sn(5,Math.PI/5),o=.5*(3-Math.sqrt(5));o*=1.57;for(var s=0;s=e.deqFastCost*g)break}else if(a){if(p>=e.deqCost*l||p>=e.deqAvgCost*s)break}else if(f>=e.deqNoDrawCost*Rl)break;var v=e.deq(t,d,c);if(!(v.length>0))break;for(var y=0;y0&&(e.onDeqd(t,u),!a&&e.shouldRedraw(t,u,d,c)&&r())}),a(t))}}},Fl=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ve;a(this,e),this.idsByKey=new et,this.keyForId=new et,this.cachesByLvl=new et,this.lvls=[],this.getKey=t,this.doesEleInvalidateKey=n}return o(e,[{key:"getIdsFor",value:function(e){null==e&&qe("Can not get id list for null key");var t=this.idsByKey,n=this.idsByKey.get(e);return n||(n=new nt,t.set(e,n)),n}},{key:"addIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).add(t)}},{key:"deleteIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).delete(t)}},{key:"getNumberOfIdsForKey",value:function(e){return null==e?0:this.getIdsFor(e).size}},{key:"updateKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t),r=this.getKey(e);this.deleteIdForKey(n,t),this.addIdForKey(r,t),this.keyForId.set(t,r)}},{key:"deleteKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteIdForKey(n,t),this.keyForId.delete(t)}},{key:"keyHasChangedFor",value:function(e){var t=e.id();return this.keyForId.get(t)!==this.getKey(e)}},{key:"isInvalid",value:function(e){return this.keyHasChangedFor(e)||this.doesEleInvalidateKey(e)}},{key:"getCachesAt",value:function(e){var t=this.cachesByLvl,n=this.lvls,r=t.get(e);return r||(r=new et,t.set(e,r),n.push(e)),r}},{key:"getCache",value:function(e,t){return this.getCachesAt(t).get(e)}},{key:"get",value:function(e,t){var n=this.getKey(e),r=this.getCache(n,t);return null!=r&&this.updateKeyMappingFor(e),r}},{key:"getForCachedKey",value:function(e,t){var n=this.keyForId.get(e.id());return this.getCache(n,t)}},{key:"hasCache",value:function(e,t){return this.getCachesAt(t).has(e)}},{key:"has",value:function(e,t){var n=this.getKey(e);return this.hasCache(n,t)}},{key:"setCache",value:function(e,t,n){n.key=e,this.getCachesAt(t).set(e,n)}},{key:"set",value:function(e,t,n){var r=this.getKey(e);this.setCache(r,t,n),this.updateKeyMappingFor(e)}},{key:"deleteCache",value:function(e,t){this.getCachesAt(t).delete(e)}},{key:"delete",value:function(e,t){var n=this.getKey(e);this.deleteCache(n,t)}},{key:"invalidateKey",value:function(e){var t=this;this.lvls.forEach((function(n){return t.deleteCache(e,n)}))}},{key:"invalidate",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteKeyMappingFor(e);var r=this.doesEleInvalidateKey(e);return r&&this.invalidateKey(n),r||0===this.getNumberOfIdsForKey(n)}}]),e}(),jl={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},ql=Ue({getKey:null,doesEleInvalidateKey:Ve,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:Re,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),Yl=function(e,t){var n=this;n.renderer=e,n.onDequeues=[];var r=ql(t);Y(n,r),n.lookup=new Fl(r.getKey,r.doesEleInvalidateKey),n.setupDequeueing()},Xl=Yl.prototype;Xl.reasons=jl,Xl.getTextureQueue=function(e){var t=this;return t.eleImgCaches=t.eleImgCaches||{},t.eleImgCaches[e]=t.eleImgCaches[e]||[]},Xl.getRetiredTextureQueue=function(e){var t=this.eleImgCaches.retired=this.eleImgCaches.retired||{};return t[e]=t[e]||[]},Xl.getElementQueue=function(){return this.eleCacheQueue=this.eleCacheQueue||new lt((function(e,t){return t.reqs-e.reqs}))},Xl.getElementKeyToQueue=function(){return this.eleKeyToCacheQueue=this.eleKeyToCacheQueue||{}},Xl.getElement=function(e,t,n,r,a){var i=this,o=this.renderer,s=o.cy.zoom(),l=this.lookup;if(!t||0===t.w||0===t.h||isNaN(t.w)||isNaN(t.h)||!e.visible()||e.removed())return null;if(!i.allowEdgeTxrCaching&&e.isEdge()||!i.allowParentTxrCaching&&e.isParent())return null;if(null==r&&(r=Math.ceil(Pt(s*n))),r<-4)r=-4;else if(s>=7.99||r>3)return null;var u=Math.pow(2,r),c=t.h*u,d=t.w*u,h=o.eleTextBiggerThanMin(e,u);if(!this.isVisible(e,h))return null;var p,f=l.get(e,r);if(f&&f.invalidated&&(f.invalidated=!1,f.texture.invalidatedWidth-=f.width),f)return f;if(p=c<=25?25:c<=50?50:50*Math.ceil(c/50),c>1024||d>1024)return null;var g=i.getTextureQueue(p),v=g[g.length-2],y=function(){return i.recycleTexture(p,d)||i.addTexture(p,d)};v||(v=g[g.length-1]),v||(v=y()),v.width-v.usedWidthr;D--)S=i.getElement(e,t,n,D,jl.downscale);P()}else{var T;if(!x&&!w&&!E)for(var _=r-1;_>=-4;_--){var M=l.get(e,_);if(M){T=M;break}}if(b(T))return i.queueElement(e,r),T;v.context.translate(v.usedWidth,0),v.context.scale(u,u),this.drawElement(v.context,e,t,h,!1),v.context.scale(1/u,1/u),v.context.translate(-v.usedWidth,0)}return f={x:v.usedWidth,texture:v,level:r,scale:u,width:d,height:c,scaledLabelShown:h},v.usedWidth+=Math.ceil(d+8),v.eleCaches.push(f),l.set(e,r,f),i.checkTextureFullness(v),f},Xl.invalidateElements=function(e){for(var t=0;t=.2*e.width&&this.retireTexture(e)},Xl.checkTextureFullness=function(e){var t=this.getTextureQueue(e.height);e.usedWidth/e.width>.8&&e.fullnessChecks>=10?Ze(t,e):e.fullnessChecks++},Xl.retireTexture=function(e){var t=e.height,n=this.getTextureQueue(t),r=this.lookup;Ze(n,e),e.retired=!0;for(var a=e.eleCaches,i=0;i=t)return i.retired=!1,i.usedWidth=0,i.invalidatedWidth=0,i.fullnessChecks=0,$e(i.eleCaches),i.context.setTransform(1,0,0,1,0,0),i.context.clearRect(0,0,i.width,i.height),Ze(r,i),n.push(i),i}},Xl.queueElement=function(e,t){var n=this.getElementQueue(),r=this.getElementKeyToQueue(),a=this.getKey(e),i=r[a];if(i)i.level=Math.max(i.level,t),i.eles.merge(e),i.reqs++,n.updateItem(i);else{var o={eles:e.spawn().merge(e),level:t,reqs:1,key:a};n.push(o),r[a]=o}},Xl.dequeue=function(e){for(var t=this,n=t.getElementQueue(),r=t.getElementKeyToQueue(),a=[],i=t.lookup,o=0;o<1&&n.size()>0;o++){var s=n.pop(),l=s.key,u=s.eles[0],c=i.hasCache(u,s.level);if(r[l]=null,!c){a.push(s);var d=t.getBoundingBox(u);t.getElement(u,d,e,s.level,jl.dequeue)}}return a},Xl.removeFromQueue=function(e){var t=this.getElementQueue(),n=this.getElementKeyToQueue(),r=this.getKey(e),a=n[r];null!=a&&(1===a.eles.length?(a.reqs=Oe,t.updateItem(a),t.pop(),n[r]=null):a.eles.unmerge(e))},Xl.onDequeue=function(e){this.onDequeues.push(e)},Xl.offDequeue=function(e){Ze(this.onDequeues,e)},Xl.setupDequeueing=Vl({deqRedrawThreshold:100,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(e,t,n){return e.dequeue(t,n)},onDeqd:function(e,t){for(var n=0;n=3.99||n>2)return null;r.validateLayersElesOrdering(n,e);var o,s,l=r.layersByLevel,u=Math.pow(2,n),c=l[n]=l[n]||[];if(r.levelIsComplete(n,e))return c;!function(){var t=function(t){if(r.validateLayersElesOrdering(t,e),r.levelIsComplete(t,e))return s=l[t],!0},a=function(e){if(!s)for(var r=n+e;-4<=r&&r<=2&&!t(r);r+=e);};a(1),a(-1);for(var i=c.length-1;i>=0;i--){var o=c[i];o.invalid&&Ze(c,o)}}();var d=function(t){var a=(t=t||{}).after;if(function(){if(!o){o=It();for(var t=0;t16e6)return null;var i=r.makeLayer(o,n);if(null!=a){var s=c.indexOf(a)+1;c.splice(s,0,i)}else(void 0===t.insert||t.insert)&&c.unshift(i);return i};if(r.skipping&&!i)return null;for(var h=null,p=e.length/1,f=!i,g=0;g=p||!qt(h.bb,v.boundingBox()))&&!(h=d({insert:!0,after:h})))return null;s||f?r.queueLayer(h,v):r.drawEleInLayer(h,v,n,t),h.eles.push(v),m[n]=h}}return s||(f?null:c)},Hl.getEleLevelForLayerLevel=function(e,t){return e},Hl.drawEleInLayer=function(e,t,n,r){var a=this.renderer,i=e.context,o=t.boundingBox();0!==o.w&&0!==o.h&&t.visible()&&(n=this.getEleLevelForLayerLevel(n,r),a.setImgSmoothing(i,!1),a.drawCachedElement(i,t,null,null,n,!0),a.setImgSmoothing(i,!0))},Hl.levelIsComplete=function(e,t){var n=this.layersByLevel[e];if(!n||0===n.length)return!1;for(var r=0,a=0;a0)return!1;if(i.invalid)return!1;r+=i.eles.length}return r===t.length},Hl.validateLayersElesOrdering=function(e,t){var n=this.layersByLevel[e];if(n)for(var r=0;r0){e=!0;break}}return e},Hl.invalidateElements=function(e){var t=this;0!==e.length&&(t.lastInvalidationTime=ke(),0!==e.length&&t.haveLayers()&&t.updateElementsInLayers(e,(function(e,n,r){t.invalidateLayer(e)})))},Hl.invalidateLayer=function(e){if(this.lastInvalidationTime=ke(),!e.invalid){var t=e.level,n=e.eles,r=this.layersByLevel[t];Ze(r,e),e.elesQueue=[],e.invalid=!0,e.replacement&&(e.replacement.invalid=!0);for(var a=0;a3&&void 0!==arguments[3])||arguments[3],a=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],o=this,s=t._private.rscratch;if((!i||t.visible())&&!s.badLine&&null!=s.allpts&&!isNaN(s.allpts[0])){var l;n&&(l=n,e.translate(-l.x1,-l.y1));var u=i?t.pstyle("opacity").value:1,c=i?t.pstyle("line-opacity").value:1,d=t.pstyle("curve-style").value,h=t.pstyle("line-style").value,p=t.pstyle("width").pfValue,f=t.pstyle("line-cap").value,g=t.pstyle("line-outline-width").value,v=t.pstyle("line-outline-color").value,y=u*c,m=u*c,b=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y;"straight-triangle"===d?(o.eleStrokeStyle(e,t,n),o.drawEdgeTrianglePath(t,e,s.allpts)):(e.lineWidth=p,e.lineCap=f,o.eleStrokeStyle(e,t,n),o.drawEdgePath(t,e,s.allpts,h),e.lineCap="butt")},x=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:m;o.drawArrowheads(e,t,n)};if(e.lineJoin="round","yes"===t.pstyle("ghost").value){var w=t.pstyle("ghost-offset-x").pfValue,E=t.pstyle("ghost-offset-y").pfValue,k=t.pstyle("ghost-opacity").value,C=y*k;e.translate(w,E),b(C),x(C),e.translate(-w,-E)}else!function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y;e.lineWidth=p+g,e.lineCap=f,g>0?(o.colorStrokeStyle(e,v[0],v[1],v[2],n),"straight-triangle"===d?o.drawEdgeTrianglePath(t,e,s.allpts):(o.drawEdgePath(t,e,s.allpts,h),e.lineCap="butt")):e.lineCap="butt"}();a&&o.drawEdgeUnderlay(e,t),b(),x(),a&&o.drawEdgeOverlay(e,t),o.drawElementText(e,t,null,r),n&&e.translate(l.x1,l.y1)}}},cu=function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(t,n){if(n.visible()){var r=n.pstyle("".concat(e,"-opacity")).value;if(0!==r){var a=this,i=a.usePaths(),o=n._private.rscratch,s=2*n.pstyle("".concat(e,"-padding")).pfValue,l=n.pstyle("".concat(e,"-color")).value;t.lineWidth=s,"self"!==o.edgeType||i?t.lineCap="round":t.lineCap="butt",a.colorStrokeStyle(t,l[0],l[1],l[2],r),a.drawEdgePath(n,t,o.allpts,"solid")}}}};uu.drawEdgeOverlay=cu("overlay"),uu.drawEdgeUnderlay=cu("underlay"),uu.drawEdgePath=function(e,t,n,r){var a,i=e._private.rscratch,o=t,s=!1,l=this.usePaths(),u=e.pstyle("line-dash-pattern").pfValue,c=e.pstyle("line-dash-offset").pfValue;if(l){var h=n.join("$");i.pathCacheKey&&i.pathCacheKey===h?(a=t=i.pathCache,s=!0):(a=t=new Path2D,i.pathCacheKey=h,i.pathCache=a)}if(o.setLineDash)switch(r){case"dotted":o.setLineDash([1,1]);break;case"dashed":o.setLineDash(u),o.lineDashOffset=c;break;case"solid":o.setLineDash([])}if(!s&&!i.badLine)switch(t.beginPath&&t.beginPath(),t.moveTo(n[0],n[1]),i.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var p=2;p+35&&void 0!==arguments[5]?arguments[5]:5,o=arguments.length>6?arguments[6]:void 0;e.beginPath(),e.moveTo(t+i,n),e.lineTo(t+r-i,n),e.quadraticCurveTo(t+r,n,t+r,n+i),e.lineTo(t+r,n+a-i),e.quadraticCurveTo(t+r,n+a,t+r-i,n+a),e.lineTo(t+i,n+a),e.quadraticCurveTo(t,n+a,t,n+a-i),e.lineTo(t,n+i),e.quadraticCurveTo(t,n,t+i,n),e.closePath(),o?e.stroke():e.fill()}hu.eleTextBiggerThanMin=function(e,t){if(!t){var n=e.cy().zoom(),r=this.getPixelRatio(),a=Math.ceil(Pt(n*r));t=Math.pow(2,a)}return!(e.pstyle("font-size").pfValue*t5&&void 0!==arguments[5])||arguments[5],o=this;if(null==r){if(i&&!o.eleTextBiggerThanMin(t))return}else if(!1===r)return;if(t.isNode()){var s=t.pstyle("label");if(!s||!s.value)return;var l=o.getLabelJustification(t);e.textAlign=l,e.textBaseline="bottom"}else{var u=t.element()._private.rscratch.badLine,c=t.pstyle("label"),d=t.pstyle("source-label"),h=t.pstyle("target-label");if(u||(!c||!c.value)&&(!d||!d.value)&&(!h||!h.value))return;e.textAlign="center",e.textBaseline="bottom"}var p,f=!n;n&&(p=n,e.translate(-p.x1,-p.y1)),null==a?(o.drawText(e,t,null,f,i),t.isEdge()&&(o.drawText(e,t,"source",f,i),o.drawText(e,t,"target",f,i))):o.drawText(e,t,a,f,i),n&&e.translate(p.x1,p.y1)},hu.getFontCache=function(e){var t;this.fontCaches=this.fontCaches||[];for(var n=0;n2&&void 0!==arguments[2])||arguments[2],r=t.pstyle("font-style").strValue,a=t.pstyle("font-size").pfValue+"px",i=t.pstyle("font-family").strValue,o=t.pstyle("font-weight").strValue,s=n?t.effectiveOpacity()*t.pstyle("text-opacity").value:1,l=t.pstyle("text-outline-opacity").value*s,u=t.pstyle("color").value,c=t.pstyle("text-outline-color").value;e.font=r+" "+o+" "+a+" "+i,e.lineJoin="round",this.colorFillStyle(e,u[0],u[1],u[2],s),this.colorStrokeStyle(e,c[0],c[1],c[2],l)},hu.getTextAngle=function(e,t){var n=e._private.rscratch,r=t?t+"-":"",a=e.pstyle(r+"text-rotation"),i=Qe(n,"labelAngle",t);return"autorotate"===a.strValue?e.isEdge()?i:0:"none"===a.strValue?0:a.pfValue},hu.drawText=function(e,t,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=t._private.rscratch,o=a?t.effectiveOpacity():1;if(!a||0!==o&&0!==t.pstyle("text-opacity").value){"main"===n&&(n=null);var s,l,u=Qe(i,"labelX",n),c=Qe(i,"labelY",n),d=this.getLabelText(t,n);if(null!=d&&""!==d&&!isNaN(u)&&!isNaN(c)){this.setupTextStyle(e,t,a);var h,p=n?n+"-":"",f=Qe(i,"labelWidth",n),g=Qe(i,"labelHeight",n),v=t.pstyle(p+"text-margin-x").pfValue,y=t.pstyle(p+"text-margin-y").pfValue,m=t.isEdge(),b=t.pstyle("text-halign").value,x=t.pstyle("text-valign").value;switch(m&&(b="center",x="center"),u+=v,c+=y,0!==(h=r?this.getTextAngle(t,n):0)&&(s=u,l=c,e.translate(s,l),e.rotate(h),u=0,c=0),x){case"top":break;case"center":c+=g/2;break;case"bottom":c+=g}var w=t.pstyle("text-background-opacity").value,E=t.pstyle("text-border-opacity").value,k=t.pstyle("text-border-width").pfValue,C=t.pstyle("text-background-padding").pfValue,S=0===t.pstyle("text-background-shape").strValue.indexOf("round");if(w>0||k>0&&E>0){var P=u-C;switch(b){case"left":P-=f;break;case"center":P-=f/2}var D=c-g-C,T=f+2*C,_=g+2*C;if(w>0){var M=e.fillStyle,B=t.pstyle("text-background-color").value;e.fillStyle="rgba("+B[0]+","+B[1]+","+B[2]+","+w*o+")",S?pu(e,P,D,T,_,2):e.fillRect(P,D,T,_),e.fillStyle=M}if(k>0&&E>0){var N=e.strokeStyle,z=e.lineWidth,I=t.pstyle("text-border-color").value,A=t.pstyle("text-border-style").value;if(e.strokeStyle="rgba("+I[0]+","+I[1]+","+I[2]+","+E*o+")",e.lineWidth=k,e.setLineDash)switch(A){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"double":e.lineWidth=k/4,e.setLineDash([]);break;case"solid":e.setLineDash([])}if(S?pu(e,P,D,T,_,2,"stroke"):e.strokeRect(P,D,T,_),"double"===A){var L=k/2;S?pu(e,P+L,D+L,T-2*L,_-2*L,2,"stroke"):e.strokeRect(P+L,D+L,T-2*L,_-2*L)}e.setLineDash&&e.setLineDash([]),e.lineWidth=z,e.strokeStyle=N}}var O=2*t.pstyle("text-outline-width").pfValue;if(O>0&&(e.lineWidth=O),"wrap"===t.pstyle("text-wrap").value){var R=Qe(i,"labelWrapCachedLines",n),V=Qe(i,"labelLineHeight",n),F=f/2,j=this.getLabelJustification(t);switch("auto"===j||("left"===b?"left"===j?u+=-f:"center"===j&&(u+=-F):"center"===b?"left"===j?u+=-F:"right"===j&&(u+=F):"right"===b&&("center"===j?u+=F:"right"===j&&(u+=f))),x){case"top":case"center":case"bottom":c-=(R.length-1)*V}for(var q=0;q0&&e.strokeText(R[q],u,c),e.fillText(R[q],u,c),c+=V}else O>0&&e.strokeText(d,u,c),e.fillText(d,u,c);0!==h&&(e.rotate(-h),e.translate(-s,-l))}}};var fu={drawNode:function(e,t,n){var r,a,i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],s=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],l=this,u=t._private,c=u.rscratch,d=t.position();if(k(d.x)&&k(d.y)&&(!s||t.visible())){var h,p,f=s?t.effectiveOpacity():1,g=l.usePaths(),v=!1,y=t.padding();r=t.width()+2*y,a=t.height()+2*y,n&&(p=n,e.translate(-p.x1,-p.y1));for(var m=t.pstyle("background-image").value,b=new Array(m.length),x=new Array(m.length),w=0,E=0;E0&&void 0!==arguments[0]?arguments[0]:T;l.eleFillStyle(e,t,n)},X=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:L;l.colorStrokeStyle(e,_[0],_[1],_[2],t)},W=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:F;l.colorStrokeStyle(e,R[0],R[1],R[2],t)},H=function(e,t,n,r){var a,i=l.nodePathCache=l.nodePathCache||[],o=Ne("polygon"===n?n+","+r.join(","):n,""+t,""+e,""+q),s=i[o],u=!1;return null!=s?(a=s,u=!0,c.pathCache=a):(a=new Path2D,i[o]=c.pathCache=a),{path:a,cacheHit:u}},K=t.pstyle("shape").strValue,G=t.pstyle("shape-polygon-points").pfValue;if(g){e.translate(d.x,d.y);var U=H(r,a,K,G);h=U.path,v=U.cacheHit}var Z=function(){if(!v){var n=d;g&&(n={x:0,y:0}),l.nodeShapes[l.getNodeShape(t)].draw(h||e,n.x,n.y,r,a,q,c)}g?e.fill(h):e.fill()},$=function(){for(var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],a=u.backgrounding,i=0,o=0;o0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:f;l.hasPie(t)&&(l.drawPie(e,t,i),n&&(g||l.nodeShapes[l.getNodeShape(t)].draw(e,d.x,d.y,r,a,q,c)))},J=function(){var t=(P>0?P:-P)*(arguments.length>0&&void 0!==arguments[0]?arguments[0]:f),n=P>0?0:255;0!==P&&(l.colorFillStyle(e,n,n,n,t),g?e.fill(h):e.fill())},ee=function(){if(D>0){if(e.lineWidth=D,e.lineCap=N,e.lineJoin=B,e.setLineDash)switch(M){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash(I),e.lineDashOffset=A;break;case"solid":case"double":e.setLineDash([])}if("center"!==z){if(e.save(),e.lineWidth*=2,"inside"===z)g?e.clip(h):e.clip();else{var t=new Path2D;t.rect(-r/2-D,-a/2-D,r+2*D,a+2*D),t.addPath(h),e.clip(t,"evenodd")}g?e.stroke(h):e.stroke(),e.restore()}else g?e.stroke(h):e.stroke();if("double"===M){e.lineWidth=D/3;var n=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",g?e.stroke(h):e.stroke(),e.globalCompositeOperation=n}e.setLineDash&&e.setLineDash([])}},te=function(){if(O>0){if(e.lineWidth=O,e.lineCap="butt",e.setLineDash)switch(V){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"solid":case"double":e.setLineDash([])}var n=d;g&&(n={x:0,y:0});var i=l.getNodeShape(t),o=D;"inside"===z&&(o=0),"outside"===z&&(o*=2);var s,u=(r+o+(O+j))/r,c=(a+o+(O+j))/a,h=r*u,p=a*c,f=l.nodeShapes[i].points;if(g&&(s=H(h,p,i,f).path),"ellipse"===i)l.drawEllipsePath(s||e,n.x,n.y,h,p);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(i)){var v=0,y=0,m=0;"round-diamond"===i?v=1.4*(o+j+O):"round-heptagon"===i?(v=1.075*(o+j+O),m=-(o/2+j+O)/35):"round-hexagon"===i?v=1.12*(o+j+O):"round-pentagon"===i?(v=1.13*(o+j+O),m=-(o/2+j+O)/15):"round-tag"===i?(v=1.12*(o+j+O),y=.07*(o/2+O+j)):"round-triangle"===i&&(v=(o+j+O)*(Math.PI/2),m=-(o+j/2+O)/Math.PI),0!==v&&(h=r*(u=(r+v)/r),["round-hexagon","round-tag"].includes(i)||(p=a*(c=(a+v)/a)));for(var b=h/2,x=p/2,w=(q="auto"===q?un(h,p):q)+(o+O+j)/2,E=new Array(f.length/2),k=new Array(f.length/2),C=0;C0){if(r=r||n.position(),null==a||null==i){var d=n.padding();a=n.width()+2*d,i=n.height()+2*d}this.colorFillStyle(t,l[0],l[1],l[2],s),this.nodeShapes[u].draw(t,r.x,r.y,a+2*o,i+2*o,c),t.fill()}}}};fu.drawNodeOverlay=gu("overlay"),fu.drawNodeUnderlay=gu("underlay"),fu.hasPie=function(e){return(e=e[0])._private.hasPie},fu.drawPie=function(e,t,n,r){t=t[0],r=r||t.position();var a=t.cy().style(),i=t.pstyle("pie-size"),o=r.x,s=r.y,l=t.width(),u=t.height(),c=Math.min(l,u)/2,d=0;this.usePaths()&&(o=0,s=0),"%"===i.units?c*=i.pfValue:void 0!==i.pfValue&&(c=i.pfValue/2);for(var h=1;h<=a.pieBackgroundN;h++){var p=t.pstyle("pie-"+h+"-background-size").value,f=t.pstyle("pie-"+h+"-background-color").value,g=t.pstyle("pie-"+h+"-background-opacity").value*n,v=p/100;v+d>1&&(v=1-d);var y=1.5*Math.PI+2*Math.PI*d,m=y+2*Math.PI*v;0===p||d>=1||d+v>1||(e.beginPath(),e.moveTo(o,s),e.arc(o,s,c,y,m),e.closePath(),this.colorFillStyle(e,f[0],f[1],f[2],g),e.fill(),d+=v)}};for(var vu={getPixelRatio:function(){var e=this.data.contexts[0];if(null!=this.forcedPixelRatio)return this.forcedPixelRatio;var t=this.cy.window(),n=e.backingStorePixelRatio||e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return(t.devicePixelRatio||1)/n},paintCache:function(e){for(var t,n=this.paintCaches=this.paintCaches||[],r=!0,a=0;ao.minMbLowQualFrames&&(o.motionBlurPxRatio=o.mbPxRBlurry)),o.clearingMotionBlur&&(o.motionBlurPxRatio=1),o.textureDrawLastFrame&&!d&&(c[o.NODE]=!0,c[o.SELECT_BOX]=!0);var m=l.style(),b=l.zoom(),x=void 0!==a?a:b,w=l.pan(),E={x:w.x,y:w.y},k={zoom:b,pan:{x:w.x,y:w.y}},C=o.prevViewport;void 0===C||k.zoom!==C.zoom||k.pan.x!==C.pan.x||k.pan.y!==C.pan.y||g&&!f||(o.motionBlurPxRatio=1),i&&(E=i),x*=s,E.x*=s,E.y*=s;var S=o.getCachedZSortedEles();function P(e,t,n,r,a){var i=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",o.colorFillStyle(e,255,255,255,o.motionBlurTransparency),e.fillRect(t,n,r,a),e.globalCompositeOperation=i}function D(e,r){var s,l,c,d;o.clearingMotionBlur||e!==u.bufferContexts[o.MOTIONBLUR_BUFFER_NODE]&&e!==u.bufferContexts[o.MOTIONBLUR_BUFFER_DRAG]?(s=E,l=x,c=o.canvasWidth,d=o.canvasHeight):(s={x:w.x*p,y:w.y*p},l=b*p,c=o.canvasWidth*p,d=o.canvasHeight*p),e.setTransform(1,0,0,1,0,0),"motionBlur"===r?P(e,0,0,c,d):t||void 0!==r&&!r||e.clearRect(0,0,c,d),n||(e.translate(s.x,s.y),e.scale(l,l)),i&&e.translate(i.x,i.y),a&&e.scale(a,a)}if(d||(o.textureDrawLastFrame=!1),d){if(o.textureDrawLastFrame=!0,!o.textureCache){o.textureCache={},o.textureCache.bb=l.mutableElements().boundingBox(),o.textureCache.texture=o.data.bufferCanvases[o.TEXTURE_BUFFER];var T=o.data.bufferContexts[o.TEXTURE_BUFFER];T.setTransform(1,0,0,1,0,0),T.clearRect(0,0,o.canvasWidth*o.textureMult,o.canvasHeight*o.textureMult),o.render({forcedContext:T,drawOnlyNodeLayer:!0,forcedPxRatio:s*o.textureMult}),(k=o.textureCache.viewport={zoom:l.zoom(),pan:l.pan(),width:o.canvasWidth,height:o.canvasHeight}).mpan={x:(0-k.pan.x)/k.zoom,y:(0-k.pan.y)/k.zoom}}c[o.DRAG]=!1,c[o.NODE]=!1;var _=u.contexts[o.NODE],M=o.textureCache.texture;k=o.textureCache.viewport,_.setTransform(1,0,0,1,0,0),h?P(_,0,0,k.width,k.height):_.clearRect(0,0,k.width,k.height);var B=m.core("outside-texture-bg-color").value,N=m.core("outside-texture-bg-opacity").value;o.colorFillStyle(_,B[0],B[1],B[2],N),_.fillRect(0,0,k.width,k.height),b=l.zoom(),D(_,!1),_.clearRect(k.mpan.x,k.mpan.y,k.width/k.zoom/s,k.height/k.zoom/s),_.drawImage(M,k.mpan.x,k.mpan.y,k.width/k.zoom/s,k.height/k.zoom/s)}else o.textureOnViewport&&!t&&(o.textureCache=null);var z=l.extent(),I=o.pinching||o.hoverData.dragging||o.swipePanning||o.data.wheelZooming||o.hoverData.draggingEles||o.cy.animated(),A=o.hideEdgesOnViewport&&I,L=[];if(L[o.NODE]=!c[o.NODE]&&h&&!o.clearedForMotionBlur[o.NODE]||o.clearingMotionBlur,L[o.NODE]&&(o.clearedForMotionBlur[o.NODE]=!0),L[o.DRAG]=!c[o.DRAG]&&h&&!o.clearedForMotionBlur[o.DRAG]||o.clearingMotionBlur,L[o.DRAG]&&(o.clearedForMotionBlur[o.DRAG]=!0),c[o.NODE]||n||r||L[o.NODE]){var O=h&&!L[o.NODE]&&1!==p;D(_=t||(O?o.data.bufferContexts[o.MOTIONBLUR_BUFFER_NODE]:u.contexts[o.NODE]),h&&!O?"motionBlur":void 0),A?o.drawCachedNodes(_,S.nondrag,s,z):o.drawLayeredElements(_,S.nondrag,s,z),o.debug&&o.drawDebugPoints(_,S.nondrag),n||h||(c[o.NODE]=!1)}if(!r&&(c[o.DRAG]||n||L[o.DRAG])&&(O=h&&!L[o.DRAG]&&1!==p,D(_=t||(O?o.data.bufferContexts[o.MOTIONBLUR_BUFFER_DRAG]:u.contexts[o.DRAG]),h&&!O?"motionBlur":void 0),A?o.drawCachedNodes(_,S.drag,s,z):o.drawCachedElements(_,S.drag,s,z),o.debug&&o.drawDebugPoints(_,S.drag),n||h||(c[o.DRAG]=!1)),o.showFps||!r&&c[o.SELECT_BOX]&&!n){if(D(_=t||u.contexts[o.SELECT_BOX]),1==o.selection[4]&&(o.hoverData.selecting||o.touchData.selecting)){b=o.cy.zoom();var R=m.core("selection-box-border-width").value/b;_.lineWidth=R,_.fillStyle="rgba("+m.core("selection-box-color").value[0]+","+m.core("selection-box-color").value[1]+","+m.core("selection-box-color").value[2]+","+m.core("selection-box-opacity").value+")",_.fillRect(o.selection[0],o.selection[1],o.selection[2]-o.selection[0],o.selection[3]-o.selection[1]),R>0&&(_.strokeStyle="rgba("+m.core("selection-box-border-color").value[0]+","+m.core("selection-box-border-color").value[1]+","+m.core("selection-box-border-color").value[2]+","+m.core("selection-box-opacity").value+")",_.strokeRect(o.selection[0],o.selection[1],o.selection[2]-o.selection[0],o.selection[3]-o.selection[1]))}if(u.bgActivePosistion&&!o.hoverData.selecting){b=o.cy.zoom();var V=u.bgActivePosistion;_.fillStyle="rgba("+m.core("active-bg-color").value[0]+","+m.core("active-bg-color").value[1]+","+m.core("active-bg-color").value[2]+","+m.core("active-bg-opacity").value+")",_.beginPath(),_.arc(V.x,V.y,m.core("active-bg-size").pfValue/b,0,2*Math.PI),_.fill()}var F=o.lastRedrawTime;if(o.showFps&&F){F=Math.round(F);var j=Math.round(1e3/F);_.setTransform(1,0,0,1,0,0),_.fillStyle="rgba(255, 0, 0, 0.75)",_.strokeStyle="rgba(255, 0, 0, 0.75)",_.lineWidth=1,_.fillText("1 frame = "+F+" ms = "+j+" fps",0,20),_.strokeRect(0,30,250,20),_.fillRect(0,30,250*Math.min(j/60,1),20)}n||(c[o.SELECT_BOX]=!1)}if(h&&1!==p){var q=u.contexts[o.NODE],Y=o.data.bufferCanvases[o.MOTIONBLUR_BUFFER_NODE],X=u.contexts[o.DRAG],W=o.data.bufferCanvases[o.MOTIONBLUR_BUFFER_DRAG],H=function(e,t,n){e.setTransform(1,0,0,1,0,0),n||!y?e.clearRect(0,0,o.canvasWidth,o.canvasHeight):P(e,0,0,o.canvasWidth,o.canvasHeight);var r=p;e.drawImage(t,0,0,o.canvasWidth*r,o.canvasHeight*r,0,0,o.canvasWidth,o.canvasHeight)};(c[o.NODE]||L[o.NODE])&&(H(q,Y,L[o.NODE]),c[o.NODE]=!1),(c[o.DRAG]||L[o.DRAG])&&(H(X,W,L[o.DRAG]),c[o.DRAG]=!1)}o.prevViewport=k,o.clearingMotionBlur&&(o.clearingMotionBlur=!1,o.motionBlurCleared=!0,o.motionBlur=!0),h&&(o.motionBlurTimeout=setTimeout((function(){o.motionBlurTimeout=null,o.clearedForMotionBlur[o.NODE]=!1,o.clearedForMotionBlur[o.DRAG]=!1,o.motionBlur=!1,o.clearingMotionBlur=!d,o.mbFrames=0,c[o.NODE]=!0,c[o.DRAG]=!0,o.redraw()}),100)),t||l.emit("render")}},yu={drawPolygonPath:function(e,t,n,r,a,i){var o=r/2,s=a/2;e.beginPath&&e.beginPath(),e.moveTo(t+o*i[0],n+s*i[1]);for(var l=1;l0&&i>0){h.clearRect(0,0,a,i),h.globalCompositeOperation="source-over";var p=this.getCachedZSortedEles();if(e.full)h.translate(-n.x1*l,-n.y1*l),h.scale(l,l),this.drawElements(h,p),h.scale(1/l,1/l),h.translate(n.x1*l,n.y1*l);else{var f=t.pan(),g={x:f.x*l,y:f.y*l};l*=t.zoom(),h.translate(g.x,g.y),h.scale(l,l),this.drawElements(h,p),h.scale(1/l,1/l),h.translate(-g.x,-g.y)}e.bg&&(h.globalCompositeOperation="destination-over",h.fillStyle=e.bg,h.rect(0,0,a,i),h.fill())}return d},Cu.png=function(e){return Pu(e,this.bufferCanvasImage(e),"image/png")},Cu.jpg=function(e){return Pu(e,this.bufferCanvasImage(e),"image/jpeg")};var Du=_u,Tu=_u.prototype;function _u(e){var t=this,n=t.cy.window().document;t.data={canvases:new Array(Tu.CANVAS_LAYERS),contexts:new Array(Tu.CANVAS_LAYERS),canvasNeedsRedraw:new Array(Tu.CANVAS_LAYERS),bufferCanvases:new Array(Tu.BUFFER_COUNT),bufferContexts:new Array(Tu.CANVAS_LAYERS)};var r="-webkit-tap-highlight-color",a="rgba(0,0,0,0)";t.data.canvasContainer=n.createElement("div");var i=t.data.canvasContainer.style;t.data.canvasContainer.style[r]=a,i.position="relative",i.zIndex="0",i.overflow="hidden";var o=e.cy.container();o.appendChild(t.data.canvasContainer),o.style[r]=a;var s={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};p&&p.userAgent.match(/msie|trident|edge/i)&&(s["-ms-touch-action"]="none",s["touch-action"]="none");for(var l=0;l{e.d(i,{diagram:()=>J});var s=e(8252),n=e(7323),a=e(8852),h=e(798),o=e(4852),r=function(){var t=(0,h.K2)((function(t,i,e,s){for(e=e||{},s=t.length;s--;e[t[s]]=i);return e}),"o"),i=[1,10,12,14,16,18,19,21,23],e=[2,6],s=[1,3],n=[1,5],a=[1,6],o=[1,7],r=[1,5,10,12,14,16,18,19,21,23,34,35,36],l=[1,25],c=[1,26],g=[1,28],u=[1,29],x=[1,30],d=[1,31],p=[1,32],f=[1,33],y=[1,34],m=[1,35],b=[1,36],A=[1,37],S=[1,43],C=[1,42],w=[1,47],k=[1,50],_=[1,10,12,14,16,18,19,21,23,34,35,36],T=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],R=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],D=[1,64],L={trace:(0,h.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:(0,h.K2)((function(t,i,e,s,n,a,h){var o=a.length-1;switch(n){case 5:s.setOrientation(a[o]);break;case 9:s.setDiagramTitle(a[o].text.trim());break;case 12:s.setLineData({text:"",type:"text"},a[o]);break;case 13:s.setLineData(a[o-1],a[o]);break;case 14:s.setBarData({text:"",type:"text"},a[o]);break;case 15:s.setBarData(a[o-1],a[o]);break;case 16:this.$=a[o].trim(),s.setAccTitle(this.$);break;case 17:case 18:this.$=a[o].trim(),s.setAccDescription(this.$);break;case 19:case 27:this.$=a[o-1];break;case 20:this.$=[Number(a[o-2]),...a[o]];break;case 21:this.$=[Number(a[o])];break;case 22:s.setXAxisTitle(a[o]);break;case 23:s.setXAxisTitle(a[o-1]);break;case 24:s.setXAxisTitle({type:"text",text:""});break;case 25:s.setXAxisBand(a[o]);break;case 26:s.setXAxisRangeData(Number(a[o-2]),Number(a[o]));break;case 28:this.$=[a[o-2],...a[o]];break;case 29:this.$=[a[o]];break;case 30:s.setYAxisTitle(a[o]);break;case 31:s.setYAxisTitle(a[o-1]);break;case 32:s.setYAxisTitle({type:"text",text:""});break;case 33:s.setYAxisRangeData(Number(a[o-2]),Number(a[o]));break;case 37:case 38:this.$={text:a[o],type:"text"};break;case 39:this.$={text:a[o],type:"markdown"};break;case 40:this.$=a[o];break;case 41:this.$=a[o-1]+""+a[o]}}),"anonymous"),table:[t(i,e,{3:1,4:2,7:4,5:s,34:n,35:a,36:o}),{1:[3]},t(i,e,{4:2,7:4,3:8,5:s,34:n,35:a,36:o}),t(i,e,{4:2,7:4,6:9,3:10,5:s,8:[1,11],34:n,35:a,36:o}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(r,[2,34]),t(r,[2,35]),t(r,[2,36]),{1:[2,1]},t(i,e,{4:2,7:4,3:21,5:s,34:n,35:a,36:o}),{1:[2,3]},t(r,[2,5]),t(i,[2,7],{4:22,34:n,35:a,36:o}),{11:23,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{11:39,13:38,24:S,27:C,29:40,30:41,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{11:45,15:44,27:w,33:46,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{11:49,17:48,24:k,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{11:52,17:51,24:k,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{20:[1,53]},{22:[1,54]},t(_,[2,18]),{1:[2,2]},t(_,[2,8]),t(_,[2,9]),t(T,[2,37],{40:55,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A}),t(T,[2,38]),t(T,[2,39]),t(R,[2,40]),t(R,[2,42]),t(R,[2,43]),t(R,[2,44]),t(R,[2,45]),t(R,[2,46]),t(R,[2,47]),t(R,[2,48]),t(R,[2,49]),t(R,[2,50]),t(R,[2,51]),t(_,[2,10]),t(_,[2,22],{30:41,29:56,24:S,27:C}),t(_,[2,24]),t(_,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},t(_,[2,11]),t(_,[2,30],{33:60,27:w}),t(_,[2,32]),{31:[1,61]},t(_,[2,12]),{17:62,24:k},{25:63,27:D},t(_,[2,14]),{17:65,24:k},t(_,[2,16]),t(_,[2,17]),t(R,[2,41]),t(_,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(_,[2,31]),{27:[1,69]},t(_,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(_,[2,15]),t(_,[2,26]),t(_,[2,27]),{11:59,32:72,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},t(_,[2,33]),t(_,[2,19]),{25:73,27:D},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:(0,h.K2)((function(t,i){if(!i.recoverable){var e=new Error(t);throw e.hash=i,e}this.trace(t)}),"parseError"),parse:(0,h.K2)((function(t){var i=this,e=[0],s=[],n=[null],a=[],o=this.table,r="",l=0,c=0,g=0,u=a.slice.call(arguments,1),x=Object.create(this.lexer),d={yy:{}};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(d.yy[p]=this.yy[p]);x.setInput(t,d.yy),d.yy.lexer=x,d.yy.parser=this,void 0===x.yylloc&&(x.yylloc={});var f=x.yylloc;a.push(f);var y=x.options&&x.options.ranges;function m(){var t;return"number"!=typeof(t=s.pop()||x.lex()||1)&&(t instanceof Array&&(t=(s=t).pop()),t=i.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,h.K2)((function(t){e.length=e.length-2*t,n.length=n.length-t,a.length=a.length-t}),"popStack"),(0,h.K2)(m,"lex");for(var b,A,S,C,w,k,_,T,R,D={};;){if(S=e[e.length-1],this.defaultActions[S]?C=this.defaultActions[S]:(null==b&&(b=m()),C=o[S]&&o[S][b]),void 0===C||!C.length||!C[0]){var L;for(k in R=[],o[S])this.terminals_[k]&&k>2&&R.push("'"+this.terminals_[k]+"'");L=x.showPosition?"Parse error on line "+(l+1)+":\n"+x.showPosition()+"\nExpecting "+R.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(L,{text:x.match,token:this.terminals_[b]||b,line:x.yylineno,loc:f,expected:R})}if(C[0]instanceof Array&&C.length>1)throw new Error("Parse Error: multiple actions possible at state: "+S+", token: "+b);switch(C[0]){case 1:e.push(b),n.push(x.yytext),a.push(x.yylloc),e.push(C[1]),b=null,A?(b=A,A=null):(c=x.yyleng,r=x.yytext,l=x.yylineno,f=x.yylloc,g>0&&g--);break;case 2:if(_=this.productions_[C[1]][1],D.$=n[n.length-_],D._$={first_line:a[a.length-(_||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(_||1)].first_column,last_column:a[a.length-1].last_column},y&&(D._$.range=[a[a.length-(_||1)].range[0],a[a.length-1].range[1]]),void 0!==(w=this.performAction.apply(D,[r,c,l,d.yy,C[1],n,a].concat(u))))return w;_&&(e=e.slice(0,-1*_*2),n=n.slice(0,-1*_),a=a.slice(0,-1*_)),e.push(this.productions_[C[1]][0]),n.push(D.$),a.push(D._$),T=o[e[e.length-2]][e[e.length-1]],e.push(T);break;case 3:return!0}}return!0}),"parse")},P=function(){return{EOF:1,parseError:(0,h.K2)((function(t,i){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,i)}),"parseError"),setInput:(0,h.K2)((function(t,i){return this.yy=i||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,h.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,h.K2)((function(t){var i=t.length,e=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i;var s=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),e.length-1&&(this.yylineno-=e.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:e?(e.length===s.length?this.yylloc.first_column:0)+s[s.length-e.length].length-e[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-i]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,h.K2)((function(){return this._more=!0,this}),"more"),reject:(0,h.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,h.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,h.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,h.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,h.K2)((function(){var t=this.pastInput(),i=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+i+"^"}),"showPosition"),test_match:(0,h.K2)((function(t,i){var e,s,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(s=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=s.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:s?s[s.length-1].length-s[s.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,i,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e)return e;if(this._backtrack){for(var a in n)this[a]=n[a];return!1}return!1}),"test_match"),next:(0,h.K2)((function(){if(this.done)return this.EOF;var t,i,e,s;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),a=0;ai[0].length)){if(i=e,s=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(e,n[a])))return t;if(this._backtrack){i=!1;continue}return!1}if(!this.options.flex)break}return i?!1!==(t=this.test_match(i,n[s]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,h.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,h.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,h.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,h.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,h.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,h.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,h.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,h.K2)((function(t,i,e,s){switch(e){case 0:case 1:case 5:case 43:break;case 2:case 3:return this.popState(),34;case 4:return 34;case 6:return 10;case 7:return this.pushState("acc_title"),19;case 8:return this.popState(),"acc_title_value";case 9:return this.pushState("acc_descr"),21;case 10:return this.popState(),"acc_descr_value";case 11:this.pushState("acc_descr_multiline");break;case 12:case 25:case 27:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 8;case 16:return this.pushState("axis_data"),"X_AXIS";case 17:return this.pushState("axis_data"),"Y_AXIS";case 18:return this.pushState("axis_band_data"),24;case 19:return 31;case 20:return this.pushState("data"),16;case 21:return this.pushState("data"),18;case 22:return this.pushState("data_inner"),24;case 23:return 27;case 24:return this.popState(),26;case 26:this.pushState("string");break;case 28:return"STR";case 29:return 24;case 30:return 26;case 31:return 43;case 32:return"COLON";case 33:return 44;case 34:return 28;case 35:return 45;case 36:return 46;case 37:return 48;case 38:return 50;case 39:return 47;case 40:return 41;case 41:return 49;case 42:return 42;case 44:return 35;case 45:return 36}}),"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\{)/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,23,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,20,21,22,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,23,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[27,28],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0}}}}();function E(){this.yy={}}return L.lexer=P,(0,h.K2)(E,"Parser"),E.prototype=L,L.Parser=E,new E}();r.parser=r;var l=r;function c(t){return"bar"===t.type}function g(t){return"band"===t.type}function u(t){return"linear"===t.type}(0,h.K2)(c,"isBarPlot"),(0,h.K2)(g,"isBandAxisData"),(0,h.K2)(u,"isLinearAxisData");var x=class{constructor(t){this.parentGroup=t}static{(0,h.K2)(this,"TextDimensionCalculatorWithFont")}getMaxDimension(t,i){if(!this.parentGroup)return{width:t.reduce(((t,i)=>Math.max(i.length,t)),0)*i,height:i};const e={width:0,height:0},n=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",i);for(const a of t){const t=(0,s.W6)(n,1,a),h=t?t.width:a.length*i,o=t?t.height:i;e.width=Math.max(e.width,h),e.height=Math.max(e.height,o)}return n.remove(),e}},d=class{constructor(t,i,e,s){this.axisConfig=t,this.title=i,this.textDimensionCalculator=e,this.axisThemeConfig=s,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}static{(0,h.K2)(this,"BaseAxis")}setRange(t){this.range=t,"left"===this.axisPosition||"right"===this.axisPosition?this.boundingRect.height=t[1]-t[0]:this.boundingRect.width=t[1]-t[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(t){this.axisPosition=t,this.setRange(this.range)}getTickDistance(){const t=this.getRange();return Math.abs(t[0]-t[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map((t=>t.toString())),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){.7*this.getTickDistance()>2*this.outerPadding&&(this.outerPadding=Math.floor(.7*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(t){let i=t.height;if(this.axisConfig.showAxisLine&&i>this.axisConfig.axisLineWidth&&(i-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const e=this.getLabelDimension(),s=.2*t.width;this.outerPadding=Math.min(e.width/2,s);const n=e.height+2*this.axisConfig.labelPadding;this.labelTextHeight=e.height,n<=i&&(i-=n,this.showLabel=!0)}if(this.axisConfig.showTick&&i>=this.axisConfig.tickLength&&(this.showTick=!0,i-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const t=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),e=t.height+2*this.axisConfig.titlePadding;this.titleTextHeight=t.height,e<=i&&(i-=e,this.showTitle=!0)}this.boundingRect.width=t.width,this.boundingRect.height=t.height-i}calculateSpaceIfDrawnVertical(t){let i=t.width;if(this.axisConfig.showAxisLine&&i>this.axisConfig.axisLineWidth&&(i-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const e=this.getLabelDimension(),s=.2*t.height;this.outerPadding=Math.min(e.height/2,s);const n=e.width+2*this.axisConfig.labelPadding;n<=i&&(i-=n,this.showLabel=!0)}if(this.axisConfig.showTick&&i>=this.axisConfig.tickLength&&(this.showTick=!0,i-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const t=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),e=t.height+2*this.axisConfig.titlePadding;this.titleTextHeight=t.height,e<=i&&(i-=e,this.showTitle=!0)}this.boundingRect.width=t.width-i,this.boundingRect.height=t.height}calculateSpace(t){return"left"===this.axisPosition||"right"===this.axisPosition?this.calculateSpaceIfDrawnVertical(t):this.calculateSpaceIfDrawnHorizontally(t),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}getDrawableElementsForLeftAxis(){const t=[];if(this.showAxisLine){const i=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${i},${this.boundingRect.y} L ${i},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map((t=>({text:t.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(t),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"})))}),this.showTick){const i=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map((t=>({path:`M ${i},${this.getScaleValue(t)} L ${i-this.axisConfig.tickLength},${this.getScaleValue(t)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth})))})}return this.showTitle&&t.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForBottomAxis(){const t=[];if(this.showAxisLine){const i=this.boundingRect.y+this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${i} L ${this.boundingRect.x+this.boundingRect.width},${i}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map((t=>({text:t.toString(),x:this.getScaleValue(t),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"})))}),this.showTick){const i=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map((t=>({path:`M ${this.getScaleValue(t)},${i} L ${this.getScaleValue(t)},${i+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth})))})}return this.showTitle&&t.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForTopAxis(){const t=[];if(this.showAxisLine){const i=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${i} L ${this.boundingRect.x+this.boundingRect.width},${i}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map((t=>({text:t.toString(),x:this.getScaleValue(t),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+2*this.axisConfig.titlePadding:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"})))}),this.showTick){const i=this.boundingRect.y;t.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map((t=>({path:`M ${this.getScaleValue(t)},${i+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(t)},${i+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth})))})}return this.showTitle&&t.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElements(){if("left"===this.axisPosition)return this.getDrawableElementsForLeftAxis();if("right"===this.axisPosition)throw Error("Drawing of right axis is not implemented");return"bottom"===this.axisPosition?this.getDrawableElementsForBottomAxis():"top"===this.axisPosition?this.getDrawableElementsForTopAxis():[]}},p=class extends d{static{(0,h.K2)(this,"BandAxis")}constructor(t,i,e,s,n){super(t,s,n,i),this.categories=e,this.scale=(0,o.WH)().domain(this.categories).range(this.getRange())}setRange(t){super.setRange(t)}recalculateScale(){this.scale=(0,o.WH)().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),h.Rm.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(t){return this.scale(t)??this.getRange()[0]}},f=class extends d{static{(0,h.K2)(this,"LinearAxis")}constructor(t,i,e,s,n){super(t,s,n,i),this.domain=e,this.scale=(0,o.m4Y)().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){const t=[...this.domain];"left"===this.axisPosition&&t.reverse(),this.scale=(0,o.m4Y)().domain(t).range(this.getRange())}getScaleValue(t){return this.scale(t)}};function y(t,i,e,s){const n=new x(s);return g(t)?new p(i,e,t.categories,t.title,n):new f(i,e,[t.min,t.max],t.title,n)}(0,h.K2)(y,"getAxis");var m=class{constructor(t,i,e,s){this.textDimensionCalculator=t,this.chartConfig=i,this.chartData=e,this.chartThemeConfig=s,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{(0,h.K2)(this,"ChartTitle")}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){const i=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),e=Math.max(i.width,t.width),s=i.height+2*this.chartConfig.titlePadding;return i.width<=e&&i.height<=s&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=e,this.boundingRect.height=s,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){const t=[];return this.showChartTitle&&t.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),t}};function b(t,i,e,s){const n=new x(s);return new m(n,t,i,e)}(0,h.K2)(b,"getChartTitleComponent");var A=class{constructor(t,i,e,s,n){this.plotData=t,this.xAxis=i,this.yAxis=e,this.orientation=s,this.plotIndex=n}static{(0,h.K2)(this,"LinePlot")}getDrawableElement(){const t=this.plotData.data.map((t=>[this.xAxis.getScaleValue(t[0]),this.yAxis.getScaleValue(t[1])]));let i;return i="horizontal"===this.orientation?(0,o.n8j)().y((t=>t[0])).x((t=>t[1]))(t):(0,o.n8j)().x((t=>t[0])).y((t=>t[1]))(t),i?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:i,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}},S=class{constructor(t,i,e,s,n,a){this.barData=t,this.boundingRect=i,this.xAxis=e,this.yAxis=s,this.orientation=n,this.plotIndex=a}static{(0,h.K2)(this,"BarPlot")}getDrawableElement(){const t=this.barData.data.map((t=>[this.xAxis.getScaleValue(t[0]),this.yAxis.getScaleValue(t[1])])),i=.95*Math.min(2*this.xAxis.getAxisOuterPadding(),this.xAxis.getTickDistance()),e=i/2;return"horizontal"===this.orientation?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map((t=>({x:this.boundingRect.x,y:t[0]-e,height:i,width:t[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill})))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map((t=>({x:t[0]-e,y:t[1],width:i,height:this.boundingRect.y+this.boundingRect.height-t[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill})))}]}},C=class{constructor(t,i,e){this.chartConfig=t,this.chartData=i,this.chartThemeConfig=e,this.boundingRect={x:0,y:0,width:0,height:0}}static{(0,h.K2)(this,"BasePlot")}setAxes(t,i){this.xAxis=t,this.yAxis=i}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){return this.boundingRect.width=t.width,this.boundingRect.height=t.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!this.xAxis||!this.yAxis)throw Error("Axes must be passed to render Plots");const t=[];for(const[i,e]of this.chartData.plots.entries())switch(e.type){case"line":{const s=new A(e,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,i);t.push(...s.getDrawableElement())}break;case"bar":{const s=new S(e,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,i);t.push(...s.getDrawableElement())}}return t}};function w(t,i,e){return new C(t,i,e)}(0,h.K2)(w,"getPlotComponent");var k,_=class{constructor(t,i,e,s){this.chartConfig=t,this.chartData=i,this.componentStore={title:b(t,i,e,s),plot:w(t,i,e),xAxis:y(i.xAxis,t.xAxis,{titleColor:e.xAxisTitleColor,labelColor:e.xAxisLabelColor,tickColor:e.xAxisTickColor,axisLineColor:e.xAxisLineColor},s),yAxis:y(i.yAxis,t.yAxis,{titleColor:e.yAxisTitleColor,labelColor:e.yAxisLabelColor,tickColor:e.yAxisTickColor,axisLineColor:e.yAxisLineColor},s)}}static{(0,h.K2)(this,"Orchestrator")}calculateVerticalSpace(){let t=this.chartConfig.width,i=this.chartConfig.height,e=0,s=0,n=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),a=Math.floor(i*this.chartConfig.plotReservedSpacePercent/100),h=this.componentStore.plot.calculateSpace({width:n,height:a});t-=h.width,i-=h.height,h=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:i}),s=h.height,i-=h.height,this.componentStore.xAxis.setAxisPosition("bottom"),h=this.componentStore.xAxis.calculateSpace({width:t,height:i}),i-=h.height,this.componentStore.yAxis.setAxisPosition("left"),h=this.componentStore.yAxis.calculateSpace({width:t,height:i}),e=h.width,t-=h.width,t>0&&(n+=t,t=0),i>0&&(a+=i,i=0),this.componentStore.plot.calculateSpace({width:n,height:a}),this.componentStore.plot.setBoundingBoxXY({x:e,y:s}),this.componentStore.xAxis.setRange([e,e+n]),this.componentStore.xAxis.setBoundingBoxXY({x:e,y:s+a}),this.componentStore.yAxis.setRange([s,s+a]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:s}),this.chartData.plots.some((t=>c(t)))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let t=this.chartConfig.width,i=this.chartConfig.height,e=0,s=0,n=0,a=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),h=Math.floor(i*this.chartConfig.plotReservedSpacePercent/100),o=this.componentStore.plot.calculateSpace({width:a,height:h});t-=o.width,i-=o.height,o=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:i}),e=o.height,i-=o.height,this.componentStore.xAxis.setAxisPosition("left"),o=this.componentStore.xAxis.calculateSpace({width:t,height:i}),t-=o.width,s=o.width,this.componentStore.yAxis.setAxisPosition("top"),o=this.componentStore.yAxis.calculateSpace({width:t,height:i}),i-=o.height,n=e+o.height,t>0&&(a+=t,t=0),i>0&&(h+=i,i=0),this.componentStore.plot.calculateSpace({width:a,height:h}),this.componentStore.plot.setBoundingBoxXY({x:s,y:n}),this.componentStore.yAxis.setRange([s,s+a]),this.componentStore.yAxis.setBoundingBoxXY({x:s,y:e}),this.componentStore.xAxis.setRange([n,n+h]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:n}),this.chartData.plots.some((t=>c(t)))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){"horizontal"===this.chartConfig.chartOrientation?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();const t=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(const i of Object.values(this.componentStore))t.push(...i.getDrawableElements());return t}},T=class{static{(0,h.K2)(this,"XYChartBuilder")}static build(t,i,e,s){return new _(t,i,e,s).getDrawableElement()}},R=0,D=$(),L=I(),P={yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]},E=L.plotColorPalette.split(",").map((t=>t.trim())),v=!1,K=!1;function I(){const t=(0,h.P$)(),i=(0,h.zj)();return(0,n.$t)(t.xyChart,i.themeVariables.xyChart)}function $(){const t=(0,h.zj)();return(0,n.$t)(h.UI.xyChart,t.xyChart)}function M(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function B(t){const i=(0,h.zj)();return(0,h.jZ)(t.trim(),i)}function z(t){k=t}function W(t){D.chartOrientation="horizontal"===t?"horizontal":"vertical"}function O(t){P.xAxis.title=B(t.text)}function F(t,i){P.xAxis={type:"linear",title:P.xAxis.title,min:t,max:i},v=!0}function N(t){P.xAxis={type:"band",title:P.xAxis.title,categories:t.map((t=>B(t.text)))},v=!0}function V(t){P.yAxis.title=B(t.text)}function X(t,i){P.yAxis={type:"linear",title:P.yAxis.title,min:t,max:i},K=!0}function Y(t){const i=Math.min(...t),e=Math.max(...t),s=u(P.yAxis)?P.yAxis.min:1/0,n=u(P.yAxis)?P.yAxis.max:-1/0;P.yAxis={type:"linear",title:P.yAxis.title,min:Math.min(s,i),max:Math.max(n,e)}}function U(t){let i=[];if(0===t.length)return i;if(!v){const i=u(P.xAxis)?P.xAxis.min:1/0,e=u(P.xAxis)?P.xAxis.max:-1/0;F(Math.min(i,1),Math.max(e,t.length))}if(K||Y(t),g(P.xAxis)&&(i=P.xAxis.categories.map(((i,e)=>[i,t[e]]))),u(P.xAxis)){const e=P.xAxis.min,s=P.xAxis.max,n=(s-e)/(t.length-1),a=[];for(let t=e;t<=s;t+=n)a.push(`${t}`);i=a.map(((i,e)=>[i,t[e]]))}return i}function H(t){return E[0===t?0:t%E.length]}function j(t,i){const e=U(i);P.plots.push({type:"line",strokeFill:H(R),strokeWidth:2,data:e}),R++}function G(t,i){const e=U(i);P.plots.push({type:"bar",fill:H(R),data:e}),R++}function Q(){if(0===P.plots.length)throw Error("No Plot to render, please provide a plot with some data");return P.title=(0,h.ab)(),T.build(D,P,L,k)}function Z(){return L}function q(){return D}(0,h.K2)(I,"getChartDefaultThemeConfig"),(0,h.K2)($,"getChartDefaultConfig"),(0,h.K2)(M,"getChartDefaultData"),(0,h.K2)(B,"textSanitizer"),(0,h.K2)(z,"setTmpSVGG"),(0,h.K2)(W,"setOrientation"),(0,h.K2)(O,"setXAxisTitle"),(0,h.K2)(F,"setXAxisRangeData"),(0,h.K2)(N,"setXAxisBand"),(0,h.K2)(V,"setYAxisTitle"),(0,h.K2)(X,"setYAxisRangeData"),(0,h.K2)(Y,"setYAxisRangeFromPlotData"),(0,h.K2)(U,"transformDataWithoutCategory"),(0,h.K2)(H,"getPlotColorFromPalette"),(0,h.K2)(j,"setLineData"),(0,h.K2)(G,"setBarData"),(0,h.K2)(Q,"getDrawableElem"),(0,h.K2)(Z,"getChartThemeConfig"),(0,h.K2)(q,"getChartConfig");var J={parser:l,db:{getDrawableElem:Q,clear:(0,h.K2)((function(){(0,h.IU)(),R=0,D=$(),P={yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]},L=I(),E=L.plotColorPalette.split(",").map((t=>t.trim())),v=!1,K=!1}),"clear"),setAccTitle:h.SV,getAccTitle:h.iN,setDiagramTitle:h.ke,getDiagramTitle:h.ab,getAccDescription:h.m7,setAccDescription:h.EI,setOrientation:W,setXAxisTitle:O,setXAxisRangeData:F,setXAxisBand:N,setYAxisTitle:V,setYAxisRangeData:X,setLineData:j,setBarData:G,setTmpSVGG:z,getChartThemeConfig:Z,getChartConfig:q},renderer:{draw:(0,h.K2)(((t,i,e,s)=>{const n=s.db,o=n.getChartThemeConfig(),r=n.getChartConfig();function l(t){return"top"===t?"text-before-edge":"middle"}function c(t){return"left"===t?"start":"right"===t?"end":"middle"}function g(t){return`translate(${t.x}, ${t.y}) rotate(${t.rotation||0})`}(0,h.K2)(l,"getDominantBaseLine"),(0,h.K2)(c,"getTextAnchor"),(0,h.K2)(g,"getTextTransformation"),h.Rm.debug("Rendering xychart chart\n"+t);const u=(0,a.D)(i),x=u.append("g").attr("class","main"),d=x.append("rect").attr("width",r.width).attr("height",r.height).attr("class","background");(0,h.a$)(u,r.height,r.width,!0),u.attr("viewBox",`0 0 ${r.width} ${r.height}`),d.attr("fill",o.backgroundColor),n.setTmpSVGG(u.append("g").attr("class","mermaid-tmp-group"));const p=n.getDrawableElem(),f={};function y(t){let i=x,e="";for(const[s]of t.entries()){let n=x;s>0&&f[e]&&(n=f[e]),e+=t[s],i=f[e],i||(i=f[e]=n.append("g").attr("class",t[s]))}return i}(0,h.K2)(y,"getGroup");for(const t of p){if(0===t.data.length)continue;const i=y(t.groupTexts);switch(t.type){case"rect":i.selectAll("rect").data(t.data).enter().append("rect").attr("x",(t=>t.x)).attr("y",(t=>t.y)).attr("width",(t=>t.width)).attr("height",(t=>t.height)).attr("fill",(t=>t.fill)).attr("stroke",(t=>t.strokeFill)).attr("stroke-width",(t=>t.strokeWidth));break;case"text":i.selectAll("text").data(t.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",(t=>t.fill)).attr("font-size",(t=>t.fontSize)).attr("dominant-baseline",(t=>l(t.verticalPos))).attr("text-anchor",(t=>c(t.horizontalPos))).attr("transform",(t=>g(t))).text((t=>t.text));break;case"path":i.selectAll("path").data(t.data).enter().append("path").attr("d",(t=>t.path)).attr("fill",(t=>t.fill?t.fill:"none")).attr("stroke",(t=>t.strokeFill)).attr("stroke-width",(t=>t.strokeWidth))}}}),"draw")}}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/205-9a3f06a7.chunk.min.js b/themes/hugo-geekdoc/static/js/205-9a3f06a7.chunk.min.js deleted file mode 100644 index 324fba363..000000000 --- a/themes/hugo-geekdoc/static/js/205-9a3f06a7.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[205],{7205:(e,r,a)=>{a.d(r,{diagram:()=>k});var t=a(3148),s=(a(6151),a(6578),a(2602),a(9022),a(8496),a(8252),a(7323),a(798)),k={parser:t.Zk,db:t.iP,renderer:t.q7,styles:t.tM,init:(0,s.K2)((e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,t.iP.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/207-76b424b6.chunk.min.js b/themes/hugo-geekdoc/static/js/207-76b424b6.chunk.min.js deleted file mode 100644 index cd67f6448..000000000 --- a/themes/hugo-geekdoc/static/js/207-76b424b6.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[207],{2207:(t,e,s)=>{s.d(e,{_$:()=>a,tM:()=>J,z2:()=>q});var n=s(7323),i=s(798),u=s(4852),r=function(){var t=(0,i.K2)((function(t,e,s,n){for(s=s||{},n=t.length;n--;s[t[n]]=e);return s}),"o"),e=[1,17],s=[1,18],n=[1,19],u=[1,39],r=[1,40],a=[1,25],o=[1,23],c=[1,24],l=[1,31],h=[1,32],A=[1,33],p=[1,34],d=[1,35],y=[1,36],C=[1,26],E=[1,27],m=[1,28],g=[1,29],f=[1,43],b=[1,30],k=[1,42],T=[1,44],F=[1,41],D=[1,45],B=[1,9],_=[1,8,9],S=[1,56],N=[1,57],L=[1,58],$=[1,59],x=[1,60],I=[1,61],O=[1,62],v=[1,8,9,39],K=[1,74],R=[1,8,9,12,13,21,37,39,42,59,60,61,62,63,64,65,70,72],w=[1,8,9,12,13,19,21,37,39,42,46,59,60,61,62,63,64,65,70,72,74,80,95,97,98],P=[13,74,80,95,97,98],M=[13,64,65,74,80,95,97,98],G=[13,59,60,61,62,63,74,80,95,97,98],U=[1,93],Y=[1,110],z=[1,108],Q=[1,102],j=[1,103],W=[1,104],X=[1,105],H=[1,106],q=[1,107],J=[1,109],V=[1,8,9,37,39,42],Z=[1,8,9,21],tt=[1,8,9,78],et=[1,8,9,21,73,74,78,80,81,82,83,84,85],st={trace:(0,i.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,className:17,classLiteralName:18,GENERICTYPE:19,relationStatement:20,LABEL:21,namespaceStatement:22,classStatement:23,memberStatement:24,annotationStatement:25,clickStatement:26,styleStatement:27,cssClassStatement:28,noteStatement:29,direction:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,namespaceIdentifier:36,STRUCT_START:37,classStatements:38,STRUCT_STOP:39,NAMESPACE:40,classIdentifier:41,STYLE_SEPARATOR:42,members:43,CLASS:44,ANNOTATION_START:45,ANNOTATION_END:46,MEMBER:47,SEPARATOR:48,relation:49,NOTE_FOR:50,noteText:51,NOTE:52,direction_tb:53,direction_bt:54,direction_rl:55,direction_lr:56,relationType:57,lineType:58,AGGREGATION:59,EXTENSION:60,COMPOSITION:61,DEPENDENCY:62,LOLLIPOP:63,LINE:64,DOTTED_LINE:65,CALLBACK:66,LINK:67,LINK_TARGET:68,CLICK:69,CALLBACK_NAME:70,CALLBACK_ARGS:71,HREF:72,STYLE:73,ALPHA:74,stylesOpt:75,CSSCLASS:76,style:77,COMMA:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,commentToken:86,textToken:87,graphCodeTokens:88,textNoTagsToken:89,TAGSTART:90,TAGEND:91,"==":92,"--":93,DEFAULT:94,MINUS:95,keywords:96,UNICODE_TEXT:97,BQUOTE_STR:98,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",19:"GENERICTYPE",21:"LABEL",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",37:"STRUCT_START",39:"STRUCT_STOP",40:"NAMESPACE",42:"STYLE_SEPARATOR",44:"CLASS",45:"ANNOTATION_START",46:"ANNOTATION_END",47:"MEMBER",48:"SEPARATOR",50:"NOTE_FOR",52:"NOTE",53:"direction_tb",54:"direction_bt",55:"direction_rl",56:"direction_lr",59:"AGGREGATION",60:"EXTENSION",61:"COMPOSITION",62:"DEPENDENCY",63:"LOLLIPOP",64:"LINE",65:"DOTTED_LINE",66:"CALLBACK",67:"LINK",68:"LINK_TARGET",69:"CLICK",70:"CALLBACK_NAME",71:"CALLBACK_ARGS",72:"HREF",73:"STYLE",74:"ALPHA",76:"CSSCLASS",78:"COMMA",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",88:"graphCodeTokens",90:"TAGSTART",91:"TAGEND",92:"==",93:"--",94:"DEFAULT",95:"MINUS",96:"keywords",97:"UNICODE_TEXT",98:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,2],[17,1],[17,1],[17,2],[17,2],[17,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[22,4],[22,5],[36,2],[38,1],[38,2],[38,3],[23,1],[23,3],[23,4],[23,6],[41,2],[41,3],[25,4],[43,1],[43,2],[24,1],[24,2],[24,1],[24,1],[20,3],[20,4],[20,4],[20,5],[29,3],[29,2],[30,1],[30,1],[30,1],[30,1],[49,3],[49,2],[49,2],[49,1],[57,1],[57,1],[57,1],[57,1],[57,1],[58,1],[58,1],[26,3],[26,4],[26,3],[26,4],[26,4],[26,5],[26,3],[26,4],[26,4],[26,5],[26,4],[26,5],[26,5],[26,6],[27,3],[28,3],[75,1],[75,3],[77,1],[77,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[86,1],[86,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[89,1],[89,1],[89,1],[89,1],[16,1],[16,1],[16,1],[16,1],[18,1],[51,1]],performAction:(0,i.K2)((function(t,e,s,n,i,u,r){var a=u.length-1;switch(i){case 8:this.$=u[a-1];break;case 9:case 11:case 12:this.$=u[a];break;case 10:case 13:case 89:this.$=u[a-1]+u[a];break;case 14:case 15:this.$=u[a-1]+"~"+u[a]+"~";break;case 16:n.addRelation(u[a]);break;case 17:u[a-1].title=n.cleanupLabel(u[a]),n.addRelation(u[a-1]);break;case 27:this.$=u[a].trim(),n.setAccTitle(this.$);break;case 28:case 29:this.$=u[a].trim(),n.setAccDescription(this.$);break;case 30:n.addClassesToNamespace(u[a-3],u[a-1]);break;case 31:n.addClassesToNamespace(u[a-4],u[a-1]);break;case 32:this.$=u[a],n.addNamespace(u[a]);break;case 33:case 43:case 86:this.$=[u[a]];break;case 34:this.$=[u[a-1]];break;case 35:u[a].unshift(u[a-2]),this.$=u[a];break;case 37:n.setCssClass(u[a-2],u[a]);break;case 38:n.addMembers(u[a-3],u[a-1]);break;case 39:n.setCssClass(u[a-5],u[a-3]),n.addMembers(u[a-5],u[a-1]);break;case 40:this.$=u[a],n.addClass(u[a]);break;case 41:this.$=u[a-1],n.addClass(u[a-1]),n.setClassLabel(u[a-1],u[a]);break;case 42:n.addAnnotation(u[a],u[a-2]);break;case 44:u[a].push(u[a-1]),this.$=u[a];break;case 45:case 47:case 48:break;case 46:n.addMember(u[a-1],n.cleanupLabel(u[a]));break;case 49:this.$={id1:u[a-2],id2:u[a],relation:u[a-1],relationTitle1:"none",relationTitle2:"none"};break;case 50:this.$={id1:u[a-3],id2:u[a],relation:u[a-1],relationTitle1:u[a-2],relationTitle2:"none"};break;case 51:this.$={id1:u[a-3],id2:u[a],relation:u[a-2],relationTitle1:"none",relationTitle2:u[a-1]};break;case 52:this.$={id1:u[a-4],id2:u[a],relation:u[a-2],relationTitle1:u[a-3],relationTitle2:u[a-1]};break;case 53:n.addNote(u[a],u[a-1]);break;case 54:n.addNote(u[a]);break;case 55:n.setDirection("TB");break;case 56:n.setDirection("BT");break;case 57:n.setDirection("RL");break;case 58:n.setDirection("LR");break;case 59:this.$={type1:u[a-2],type2:u[a],lineType:u[a-1]};break;case 60:this.$={type1:"none",type2:u[a],lineType:u[a-1]};break;case 61:this.$={type1:u[a-1],type2:"none",lineType:u[a]};break;case 62:this.$={type1:"none",type2:"none",lineType:u[a]};break;case 63:this.$=n.relationType.AGGREGATION;break;case 64:this.$=n.relationType.EXTENSION;break;case 65:this.$=n.relationType.COMPOSITION;break;case 66:this.$=n.relationType.DEPENDENCY;break;case 67:this.$=n.relationType.LOLLIPOP;break;case 68:this.$=n.lineType.LINE;break;case 69:this.$=n.lineType.DOTTED_LINE;break;case 70:case 76:this.$=u[a-2],n.setClickEvent(u[a-1],u[a]);break;case 71:case 77:this.$=u[a-3],n.setClickEvent(u[a-2],u[a-1]),n.setTooltip(u[a-2],u[a]);break;case 72:this.$=u[a-2],n.setLink(u[a-1],u[a]);break;case 73:this.$=u[a-3],n.setLink(u[a-2],u[a-1],u[a]);break;case 74:this.$=u[a-3],n.setLink(u[a-2],u[a-1]),n.setTooltip(u[a-2],u[a]);break;case 75:this.$=u[a-4],n.setLink(u[a-3],u[a-2],u[a]),n.setTooltip(u[a-3],u[a-1]);break;case 78:this.$=u[a-3],n.setClickEvent(u[a-2],u[a-1],u[a]);break;case 79:this.$=u[a-4],n.setClickEvent(u[a-3],u[a-2],u[a-1]),n.setTooltip(u[a-3],u[a]);break;case 80:this.$=u[a-3],n.setLink(u[a-2],u[a]);break;case 81:this.$=u[a-4],n.setLink(u[a-3],u[a-1],u[a]);break;case 82:this.$=u[a-4],n.setLink(u[a-3],u[a-1]),n.setTooltip(u[a-3],u[a]);break;case 83:this.$=u[a-5],n.setLink(u[a-4],u[a-2],u[a]),n.setTooltip(u[a-4],u[a-1]);break;case 84:this.$=u[a-2],n.setCssStyle(u[a-1],u[a]);break;case 85:n.setCssClass(u[a-1],u[a]);break;case 87:u[a-2].push(u[a]),this.$=u[a-2]}}),"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:e,33:s,35:n,36:21,40:u,41:22,44:r,45:a,47:o,48:c,50:l,52:h,53:A,54:p,55:d,56:y,66:C,67:E,69:m,73:g,74:f,76:b,80:k,95:T,97:F,98:D},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(B,[2,5],{8:[1,46]}),{8:[1,47]},t(_,[2,16],{21:[1,48]}),t(_,[2,18]),t(_,[2,19]),t(_,[2,20]),t(_,[2,21]),t(_,[2,22]),t(_,[2,23]),t(_,[2,24]),t(_,[2,25]),t(_,[2,26]),{32:[1,49]},{34:[1,50]},t(_,[2,29]),t(_,[2,45],{49:51,57:54,58:55,13:[1,52],21:[1,53],59:S,60:N,61:L,62:$,63:x,64:I,65:O}),{37:[1,63]},t(v,[2,36],{37:[1,65],42:[1,64]}),t(_,[2,47]),t(_,[2,48]),{16:66,74:f,80:k,95:T,97:F},{16:37,17:67,18:38,74:f,80:k,95:T,97:F,98:D},{16:37,17:68,18:38,74:f,80:k,95:T,97:F,98:D},{16:37,17:69,18:38,74:f,80:k,95:T,97:F,98:D},{74:[1,70]},{13:[1,71]},{16:37,17:72,18:38,74:f,80:k,95:T,97:F,98:D},{13:K,51:73},t(_,[2,55]),t(_,[2,56]),t(_,[2,57]),t(_,[2,58]),t(R,[2,11],{16:37,18:38,17:75,19:[1,76],74:f,80:k,95:T,97:F,98:D}),t(R,[2,12],{19:[1,77]}),{15:78,16:79,74:f,80:k,95:T,97:F},{16:37,17:80,18:38,74:f,80:k,95:T,97:F,98:D},t(w,[2,112]),t(w,[2,113]),t(w,[2,114]),t(w,[2,115]),t([1,8,9,12,13,19,21,37,39,42,59,60,61,62,63,64,65,70,72],[2,116]),t(B,[2,6],{10:5,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,17:20,36:21,41:22,16:37,18:38,5:81,31:e,33:s,35:n,40:u,44:r,45:a,47:o,48:c,50:l,52:h,53:A,54:p,55:d,56:y,66:C,67:E,69:m,73:g,74:f,76:b,80:k,95:T,97:F,98:D}),{5:82,10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:e,33:s,35:n,36:21,40:u,41:22,44:r,45:a,47:o,48:c,50:l,52:h,53:A,54:p,55:d,56:y,66:C,67:E,69:m,73:g,74:f,76:b,80:k,95:T,97:F,98:D},t(_,[2,17]),t(_,[2,27]),t(_,[2,28]),{13:[1,84],16:37,17:83,18:38,74:f,80:k,95:T,97:F,98:D},{49:85,57:54,58:55,59:S,60:N,61:L,62:$,63:x,64:I,65:O},t(_,[2,46]),{58:86,64:I,65:O},t(P,[2,62],{57:87,59:S,60:N,61:L,62:$,63:x}),t(M,[2,63]),t(M,[2,64]),t(M,[2,65]),t(M,[2,66]),t(M,[2,67]),t(G,[2,68]),t(G,[2,69]),{8:[1,89],23:90,38:88,41:22,44:r},{16:91,74:f,80:k,95:T,97:F},{43:92,47:U},{46:[1,94]},{13:[1,95]},{13:[1,96]},{70:[1,97],72:[1,98]},{21:Y,73:z,74:Q,75:99,77:100,79:101,80:j,81:W,82:X,83:H,84:q,85:J},{74:[1,111]},{13:K,51:112},t(_,[2,54]),t(_,[2,117]),t(R,[2,13]),t(R,[2,14]),t(R,[2,15]),{37:[2,32]},{15:113,16:79,37:[2,9],74:f,80:k,95:T,97:F},t(V,[2,40],{11:114,12:[1,115]}),t(B,[2,7]),{9:[1,116]},t(Z,[2,49]),{16:37,17:117,18:38,74:f,80:k,95:T,97:F,98:D},{13:[1,119],16:37,17:118,18:38,74:f,80:k,95:T,97:F,98:D},t(P,[2,61],{57:120,59:S,60:N,61:L,62:$,63:x}),t(P,[2,60]),{39:[1,121]},{23:90,38:122,41:22,44:r},{8:[1,123],39:[2,33]},t(v,[2,37],{37:[1,124]}),{39:[1,125]},{39:[2,43],43:126,47:U},{16:37,17:127,18:38,74:f,80:k,95:T,97:F,98:D},t(_,[2,70],{13:[1,128]}),t(_,[2,72],{13:[1,130],68:[1,129]}),t(_,[2,76],{13:[1,131],71:[1,132]}),{13:[1,133]},t(_,[2,84],{78:[1,134]}),t(tt,[2,86],{79:135,21:Y,73:z,74:Q,80:j,81:W,82:X,83:H,84:q,85:J}),t(et,[2,88]),t(et,[2,90]),t(et,[2,91]),t(et,[2,92]),t(et,[2,93]),t(et,[2,94]),t(et,[2,95]),t(et,[2,96]),t(et,[2,97]),t(et,[2,98]),t(_,[2,85]),t(_,[2,53]),{37:[2,10]},t(V,[2,41]),{13:[1,136]},{1:[2,4]},t(Z,[2,51]),t(Z,[2,50]),{16:37,17:137,18:38,74:f,80:k,95:T,97:F,98:D},t(P,[2,59]),t(_,[2,30]),{39:[1,138]},{23:90,38:139,39:[2,34],41:22,44:r},{43:140,47:U},t(v,[2,38]),{39:[2,44]},t(_,[2,42]),t(_,[2,71]),t(_,[2,73]),t(_,[2,74],{68:[1,141]}),t(_,[2,77]),t(_,[2,78],{13:[1,142]}),t(_,[2,80],{13:[1,144],68:[1,143]}),{21:Y,73:z,74:Q,77:145,79:101,80:j,81:W,82:X,83:H,84:q,85:J},t(et,[2,89]),{14:[1,146]},t(Z,[2,52]),t(_,[2,31]),{39:[2,35]},{39:[1,147]},t(_,[2,75]),t(_,[2,79]),t(_,[2,81]),t(_,[2,82],{68:[1,148]}),t(tt,[2,87],{79:135,21:Y,73:z,74:Q,80:j,81:W,82:X,83:H,84:q,85:J}),t(V,[2,8]),t(v,[2,39]),t(_,[2,83])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],78:[2,32],113:[2,10],116:[2,4],126:[2,44],139:[2,35]},parseError:(0,i.K2)((function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)}),"parseError"),parse:(0,i.K2)((function(t){var e=this,s=[0],n=[],u=[null],r=[],a=this.table,o="",c=0,l=0,h=0,A=r.slice.call(arguments,1),p=Object.create(this.lexer),d={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(d.yy[y]=this.yy[y]);p.setInput(t,d.yy),d.yy.lexer=p,d.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var C=p.yylloc;r.push(C);var E=p.options&&p.options.ranges;function m(){var t;return"number"!=typeof(t=n.pop()||p.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)((function(t){s.length=s.length-2*t,u.length=u.length-t,r.length=r.length-t}),"popStack"),(0,i.K2)(m,"lex");for(var g,f,b,k,T,F,D,B,_,S={};;){if(b=s[s.length-1],this.defaultActions[b]?k=this.defaultActions[b]:(null==g&&(g=m()),k=a[b]&&a[b][g]),void 0===k||!k.length||!k[0]){var N;for(F in _=[],a[b])this.terminals_[F]&&F>2&&_.push("'"+this.terminals_[F]+"'");N=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+_.join(", ")+", got '"+(this.terminals_[g]||g)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==g?"end of input":"'"+(this.terminals_[g]||g)+"'"),this.parseError(N,{text:p.match,token:this.terminals_[g]||g,line:p.yylineno,loc:C,expected:_})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+g);switch(k[0]){case 1:s.push(g),u.push(p.yytext),r.push(p.yylloc),s.push(k[1]),g=null,f?(g=f,f=null):(l=p.yyleng,o=p.yytext,c=p.yylineno,C=p.yylloc,h>0&&h--);break;case 2:if(D=this.productions_[k[1]][1],S.$=u[u.length-D],S._$={first_line:r[r.length-(D||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(D||1)].first_column,last_column:r[r.length-1].last_column},E&&(S._$.range=[r[r.length-(D||1)].range[0],r[r.length-1].range[1]]),void 0!==(T=this.performAction.apply(S,[o,l,c,d.yy,k[1],u,r].concat(A))))return T;D&&(s=s.slice(0,-1*D*2),u=u.slice(0,-1*D),r=r.slice(0,-1*D)),s.push(this.productions_[k[1]][0]),u.push(S.$),r.push(S._$),B=a[s[s.length-2]][s[s.length-1]],s.push(B);break;case 3:return!0}}return!0}),"parse")},nt=function(){return{EOF:1,parseError:(0,i.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,i.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,i.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,i.K2)((function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===n.length?this.yylloc.first_column:0)+n[n.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,i.K2)((function(){return this._more=!0,this}),"more"),reject:(0,i.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,i.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,i.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,i.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,i.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,i.K2)((function(t,e){var s,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var u in i)this[u]=i[u];return!1}return!1}),"test_match"),next:(0,i.K2)((function(){if(this.done)return this.EOF;var t,e,s,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),u=0;ue[0].length)){if(e=s,n=u,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,i[u])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,i.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,i.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,i.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,i.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,i.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,i.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,i.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,i.K2)((function(t,e,s,n){switch(s){case 0:return 53;case 1:return 54;case 2:return 55;case 3:return 56;case 4:case 5:case 14:case 30:case 35:case 39:case 46:break;case 6:return this.begin("acc_title"),31;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),33;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 19:case 22:case 24:case 57:case 60:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:case 34:return 8;case 15:case 16:return 7;case 17:case 36:case 44:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 70;case 23:return 71;case 25:return"STR";case 26:this.begin("string");break;case 27:return 73;case 28:return this.begin("namespace"),40;case 29:case 38:return this.popState(),8;case 31:return this.begin("namespace-body"),37;case 32:case 42:return this.popState(),39;case 33:case 43:return"EOF_IN_STRUCT";case 37:return this.begin("class"),44;case 40:return this.popState(),this.popState(),39;case 41:return this.begin("class-body"),37;case 45:return"OPEN_IN_STRUCT";case 47:return"MEMBER";case 48:return 76;case 49:return 66;case 50:return 67;case 51:return 69;case 52:return 50;case 53:return 52;case 54:return 45;case 55:return 46;case 56:return 72;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:case 64:case 65:case 66:return 68;case 67:case 68:return 60;case 69:case 70:return 62;case 71:return 61;case 72:return 59;case 73:return 63;case 74:return 64;case 75:return 65;case 76:return 21;case 77:return 42;case 78:return 95;case 79:return"DOT";case 80:return"PLUS";case 81:return 81;case 82:return 78;case 83:case 84:return 84;case 85:return 85;case 86:case 87:return"EQUALS";case 88:return 74;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 80;case 93:return 97;case 94:case 95:return 83;case 96:return 9}}),"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,32,33,34,35,36,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},namespace:{rules:[26,28,29,30,31,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},"class-body":{rules:[26,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},class:{rules:[26,38,39,40,41,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr:{rules:[9,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_title:{rules:[7,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_args:{rules:[22,23,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_name:{rules:[19,20,21,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},href:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},struct:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},generic:{rules:[26,48,49,50,51,52,53,54,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},bqstring:{rules:[26,48,49,50,51,52,53,54,55,56,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},string:{rules:[24,25,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96],inclusive:!0}}}}();function it(){this.yy={}}return st.lexer=nt,(0,i.K2)(it,"Parser"),it.prototype=st,st.Parser=it,new it}();r.parser=r;var a=r,o=["#","+","~","-",""],c=class{static{(0,i.K2)(this,"ClassMember")}constructor(t,e){this.memberType=e,this.visibility="",this.classifier="";const s=(0,i.jZ)(t,(0,i.D7)());this.parseMember(s)}getDisplayDetails(){let t=this.visibility+(0,i.QO)(this.id);return"method"===this.memberType&&(t+=`(${(0,i.QO)(this.parameters.trim())})`,this.returnType&&(t+=" : "+(0,i.QO)(this.returnType))),t=t.trim(),{displayText:t,cssStyle:this.parseClassifier()}}parseMember(t){let e="";if("method"===this.memberType){const s=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(t);if(s){const t=s[1]?s[1].trim():"";if(o.includes(t)&&(this.visibility=t),this.id=s[2].trim(),this.parameters=s[3]?s[3].trim():"",e=s[4]?s[4].trim():"",this.returnType=s[5]?s[5].trim():"",""===e){const t=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(t)&&(e=t,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{const s=t.length,n=t.substring(0,1),i=t.substring(s-1);o.includes(n)&&(this.visibility=n),/[$*]/.exec(i)&&(e=i),this.id=t.substring(""===this.visibility?0:1,""===e?s:s-1)}this.classifier=e}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},l="classId-",h=[],A=new Map,p=[],d=0,y=new Map,C=0,E=[],m=(0,i.K2)((t=>i.Y2.sanitizeText(t,(0,i.D7)())),"sanitizeText"),g=(0,i.K2)((function(t){const e=i.Y2.sanitizeText(t,(0,i.D7)());let s="",n=e;if(e.indexOf("~")>0){const t=e.split("~");n=m(t[0]),s=m(t[1])}return{className:n,type:s}}),"splitClassNameAndType"),f=(0,i.K2)((function(t,e){const s=i.Y2.sanitizeText(t,(0,i.D7)());e&&(e=m(e));const{className:n}=g(s);A.get(n).label=e}),"setClassLabel"),b=(0,i.K2)((function(t){const e=i.Y2.sanitizeText(t,(0,i.D7)()),{className:s,type:n}=g(e);if(A.has(s))return;const u=i.Y2.sanitizeText(s,(0,i.D7)());A.set(u,{id:u,type:n,label:u,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:l+u+"-"+d}),d++}),"addClass"),k=(0,i.K2)((function(t){const e=i.Y2.sanitizeText(t,(0,i.D7)());if(A.has(e))return A.get(e).domId;throw new Error("Class not found: "+e)}),"lookUpDomId"),T=(0,i.K2)((function(){h=[],A=new Map,p=[],(E=[]).push(G),y=new Map,C=0,U="TB",(0,i.IU)()}),"clear"),F=(0,i.K2)((function(t){return A.get(t)}),"getClass"),D=(0,i.K2)((function(){return A}),"getClasses"),B=(0,i.K2)((function(){return h}),"getRelations"),_=(0,i.K2)((function(){return p}),"getNotes"),S=(0,i.K2)((function(t){i.Rm.debug("Adding relation: "+JSON.stringify(t)),b(t.id1),b(t.id2),t.id1=g(t.id1).className,t.id2=g(t.id2).className,t.relationTitle1=i.Y2.sanitizeText(t.relationTitle1.trim(),(0,i.D7)()),t.relationTitle2=i.Y2.sanitizeText(t.relationTitle2.trim(),(0,i.D7)()),h.push(t)}),"addRelation"),N=(0,i.K2)((function(t,e){const s=g(t).className;A.get(s).annotations.push(e)}),"addAnnotation"),L=(0,i.K2)((function(t,e){b(t);const s=g(t).className,n=A.get(s);if("string"==typeof e){const t=e.trim();t.startsWith("<<")&&t.endsWith(">>")?n.annotations.push(m(t.substring(2,t.length-2))):t.indexOf(")")>0?n.methods.push(new c(t,"method")):t&&n.members.push(new c(t,"attribute"))}}),"addMember"),$=(0,i.K2)((function(t,e){Array.isArray(e)&&(e.reverse(),e.forEach((e=>L(t,e))))}),"addMembers"),x=(0,i.K2)((function(t,e){const s={id:`note${p.length}`,class:e,text:t};p.push(s)}),"addNote"),I=(0,i.K2)((function(t){return t.startsWith(":")&&(t=t.substring(1)),m(t.trim())}),"cleanupLabel"),O=(0,i.K2)((function(t,e){t.split(",").forEach((function(t){let s=t;/\d/.exec(t[0])&&(s=l+s);const n=A.get(s);n&&n.cssClasses.push(e)}))}),"setCssClass"),v=(0,i.K2)((function(t,e){t.split(",").forEach((function(t){void 0!==e&&(A.get(t).tooltip=m(e))}))}),"setTooltip"),K=(0,i.K2)((function(t,e){return e&&y.has(e)?y.get(e).classes.get(t).tooltip:A.get(t).tooltip}),"getTooltip"),R=(0,i.K2)((function(t,e,s){const u=(0,i.D7)();t.split(",").forEach((function(t){let i=t;/\d/.exec(t[0])&&(i=l+i);const r=A.get(i);r&&(r.link=n._K.formatUrl(e,u),"sandbox"===u.securityLevel?r.linkTarget="_top":r.linkTarget="string"==typeof s?m(s):"_blank")})),O(t,"clickable")}),"setLink"),w=(0,i.K2)((function(t,e,s){t.split(",").forEach((function(t){P(t,e,s),A.get(t).haveCallback=!0})),O(t,"clickable")}),"setClickEvent"),P=(0,i.K2)((function(t,e,s){const u=i.Y2.sanitizeText(t,(0,i.D7)());if("loose"!==(0,i.D7)().securityLevel)return;if(void 0===e)return;const r=u;if(A.has(r)){const t=k(r);let i=[];if("string"==typeof s){i=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t")),t.classed("hover",!0)})).on("mouseout",(function(){e.transition().duration(500).style("opacity",0),(0,u.Ltv)(this).classed("hover",!1)}))}),"setupToolTips");E.push(G);var U="TB",Y=(0,i.K2)((()=>U),"getDirection"),z=(0,i.K2)((t=>{U=t}),"setDirection"),Q=(0,i.K2)((function(t){y.has(t)||(y.set(t,{id:t,classes:new Map,children:{},domId:l+t+"-"+C}),C++)}),"addNamespace"),j=(0,i.K2)((function(t){return y.get(t)}),"getNamespace"),W=(0,i.K2)((function(){return y}),"getNamespaces"),X=(0,i.K2)((function(t,e){if(y.has(t))for(const s of e){const{className:e}=g(s);A.get(e).parent=t,y.get(t).classes.set(e,A.get(e))}}),"addClassesToNamespace"),H=(0,i.K2)((function(t,e){const s=A.get(t);if(e&&s)for(const t of e)t.includes(",")?s.styles.push(...t.split(",")):s.styles.push(t)}),"setCssStyle"),q={setAccTitle:i.SV,getAccTitle:i.iN,getAccDescription:i.m7,setAccDescription:i.EI,getConfig:(0,i.K2)((()=>(0,i.D7)().class),"getConfig"),addClass:b,bindFunctions:M,clear:T,getClass:F,getClasses:D,getNotes:_,addAnnotation:N,addNote:x,getRelations:B,addRelation:S,getDirection:Y,setDirection:z,addMember:L,addMembers:$,cleanupLabel:I,lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},setClickEvent:w,setCssClass:O,setLink:R,getTooltip:K,setTooltip:v,lookUpDomId:k,setDiagramTitle:i.ke,getDiagramTitle:i.ab,setClassLabel:f,addNamespace:Q,addClassesToNamespace:X,getNamespace:j,getNamespaces:W,setCssStyle:H},J=(0,i.K2)((t=>`g.classGroup text {\n fill: ${t.nodeBorder||t.classText};\n stroke: none;\n font-family: ${t.fontFamily};\n font-size: 10px;\n\n .title {\n font-weight: bolder;\n }\n\n}\n\n.nodeLabel, .edgeLabel {\n color: ${t.classText};\n}\n.edgeLabel .label rect {\n fill: ${t.mainBkg};\n}\n.label text {\n fill: ${t.classText};\n}\n.edgeLabel .label span {\n background: ${t.mainBkg};\n}\n\n.classTitle {\n font-weight: bolder;\n}\n.node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n\n\n.divider {\n stroke: ${t.nodeBorder};\n stroke-width: 1;\n}\n\ng.clickable {\n cursor: pointer;\n}\n\ng.classGroup rect {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n}\n\ng.classGroup line {\n stroke: ${t.nodeBorder};\n stroke-width: 1;\n}\n\n.classLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ${t.mainBkg};\n opacity: 0.5;\n}\n\n.classLabel .label {\n fill: ${t.nodeBorder};\n font-size: 10px;\n}\n\n.relation {\n stroke: ${t.lineColor};\n stroke-width: 1;\n fill: none;\n}\n\n.dashed-line{\n stroke-dasharray: 3;\n}\n\n.dotted-line{\n stroke-dasharray: 1 2;\n}\n\n#compositionStart, .composition {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#compositionEnd, .composition {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#dependencyStart, .dependency {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#dependencyStart, .dependency {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#extensionStart, .extension {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#extensionEnd, .extension {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#aggregationStart, .aggregation {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#aggregationEnd, .aggregation {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#lollipopStart, .lollipop {\n fill: ${t.mainBkg} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#lollipopEnd, .lollipop {\n fill: ${t.mainBkg} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n.edgeTerminals {\n font-size: 11px;\n line-height: initial;\n}\n\n.classTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n}\n`),"getStyles")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/221-9d1089ca.chunk.min.js b/themes/hugo-geekdoc/static/js/221-9d1089ca.chunk.min.js deleted file mode 100644 index 4857b0981..000000000 --- a/themes/hugo-geekdoc/static/js/221-9d1089ca.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[221],{6221:(e,c,k)=>{k.d(c,{createPieServices:()=>s.f});var s=k(8660);k(8546)}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/223-a5ce106a.chunk.min.js b/themes/hugo-geekdoc/static/js/223-a5ce106a.chunk.min.js new file mode 100644 index 000000000..5adb968d0 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/223-a5ce106a.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[223],{3159:(e,t,a)=>{function i(e,t){e.accDescr&&t.setAccDescription?.(e.accDescr),e.accTitle&&t.setAccTitle?.(e.accTitle),e.title&&t.setDiagramTitle?.(e.title)}a.d(t,{S:()=>i}),(0,a(32).K2)(i,"populateCommonDb")},3223:(e,t,a)=>{a.d(t,{diagram:()=>k});var i=a(3159),n=a(5522),l=a(1661),r=a(32),s=a(8731),o=a(4852),c=r.UI.pie,p={sections:new Map,showData:!1,config:c},d=p.sections,g=p.showData,u=structuredClone(c),h=(0,r.K2)((()=>structuredClone(u)),"getConfig"),m=(0,r.K2)((()=>{d=new Map,g=p.showData,(0,r.IU)()}),"clear"),f=(0,r.K2)((({label:e,value:t})=>{d.has(e)||(d.set(e,t),r.Rm.debug(`added new section: ${e}, with value: ${t}`))}),"addSection"),S=(0,r.K2)((()=>d),"getSections"),x=(0,r.K2)((e=>{g=e}),"setShowData"),w=(0,r.K2)((()=>g),"getShowData"),D={getConfig:h,clear:m,setDiagramTitle:r.ke,getDiagramTitle:r.ab,setAccTitle:r.SV,getAccTitle:r.iN,setAccDescription:r.EI,getAccDescription:r.m7,addSection:f,getSections:S,setShowData:x,getShowData:w},T=(0,r.K2)(((e,t)=>{(0,i.S)(e,t),t.setShowData(e.showData),e.sections.map(t.addSection)}),"populateDb"),$={parse:(0,r.K2)((async e=>{const t=await(0,s.qg)("pie",e);r.Rm.debug(t),T(t,D)}),"parse")},y=(0,r.K2)((e=>`\n .pieCircle{\n stroke: ${e.pieStrokeColor};\n stroke-width : ${e.pieStrokeWidth};\n opacity : ${e.pieOpacity};\n }\n .pieOuterCircle{\n stroke: ${e.pieOuterStrokeColor};\n stroke-width: ${e.pieOuterStrokeWidth};\n fill: none;\n }\n .pieTitleText {\n text-anchor: middle;\n font-size: ${e.pieTitleTextSize};\n fill: ${e.pieTitleTextColor};\n font-family: ${e.fontFamily};\n }\n .slice {\n font-family: ${e.fontFamily};\n fill: ${e.pieSectionTextColor};\n font-size:${e.pieSectionTextSize};\n // fill: white;\n }\n .legend text {\n fill: ${e.pieLegendTextColor};\n font-family: ${e.fontFamily};\n font-size: ${e.pieLegendTextSize};\n }\n`),"getStyles"),C=(0,r.K2)((e=>{const t=[...e.entries()].map((e=>({label:e[0],value:e[1]}))).sort(((e,t)=>t.value-e.value));return(0,o.rLf)().value((e=>e.value))(t)}),"createPieArcs"),k={parser:$,db:D,renderer:{draw:(0,r.K2)(((e,t,a,i)=>{r.Rm.debug("rendering pie chart\n"+e);const s=i.db,c=(0,r.D7)(),p=(0,n.$t)(s.getConfig(),c.pie),d=(0,l.D)(t),g=d.append("g");g.attr("transform","translate(225,225)");const{themeVariables:u}=c;let[h]=(0,n.I5)(u.pieOuterStrokeWidth);h??=2;const m=p.textPosition,f=Math.min(450,450)/2-40,S=(0,o.JLW)().innerRadius(0).outerRadius(f),x=(0,o.JLW)().innerRadius(f*m).outerRadius(f*m);g.append("circle").attr("cx",0).attr("cy",0).attr("r",f+h/2).attr("class","pieOuterCircle");const w=s.getSections(),D=C(w),T=[u.pie1,u.pie2,u.pie3,u.pie4,u.pie5,u.pie6,u.pie7,u.pie8,u.pie9,u.pie10,u.pie11,u.pie12],$=(0,o.UMr)(T);g.selectAll("mySlices").data(D).enter().append("path").attr("d",S).attr("fill",(e=>$(e.data.label))).attr("class","pieCircle");let y=0;w.forEach((e=>{y+=e})),g.selectAll("mySlices").data(D).enter().append("text").text((e=>(e.data.value/y*100).toFixed(0)+"%")).attr("transform",(e=>"translate("+x.centroid(e)+")")).style("text-anchor","middle").attr("class","slice"),g.append("text").text(s.getDiagramTitle()).attr("x",0).attr("y",-200).attr("class","pieTitleText");const k=g.selectAll(".legend").data($.domain()).enter().append("g").attr("class","legend").attr("transform",((e,t)=>"translate(216,"+(22*t-22*$.domain().length/2)+")"));k.append("rect").attr("width",18).attr("height",18).style("fill",$).style("stroke",$),k.data(D).append("text").attr("x",22).attr("y",14).text((e=>{const{label:t,value:a}=e.data;return s.getShowData()?`${t} [${a}]`:t}));const b=512+Math.max(...k.selectAll("text").nodes().map((e=>e?.getBoundingClientRect().width??0)));d.attr("viewBox",`0 0 ${b} 450`),(0,r.a$)(d,450,b,p.useMaxWidth)}),"draw")},styles:y}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/257-acdc3108.chunk.min.js b/themes/hugo-geekdoc/static/js/257-acdc3108.chunk.min.js deleted file mode 100644 index cbae39586..000000000 --- a/themes/hugo-geekdoc/static/js/257-acdc3108.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[257],{9323:(t,e,n)=>{n.d(e,{CP:()=>l,HT:()=>u,PB:()=>h,aC:()=>c,lC:()=>a,m:()=>o,tk:()=>r});var i=n(798),s=n(6750),r=(0,i.K2)(((t,e)=>{const n=t.append("rect");if(n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),e.name&&n.attr("name",e.name),e.rx&&n.attr("rx",e.rx),e.ry&&n.attr("ry",e.ry),void 0!==e.attrs)for(const t in e.attrs)n.attr(t,e.attrs[t]);return e.class&&n.attr("class",e.class),n}),"drawRect"),a=(0,i.K2)(((t,e)=>{const n={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};r(t,n).lower()}),"drawBackgroundRect"),o=(0,i.K2)(((t,e)=>{const n=e.text.replace(i.H1," "),s=t.append("text");s.attr("x",e.x),s.attr("y",e.y),s.attr("class","legend"),s.style("text-anchor",e.anchor),e.class&&s.attr("class",e.class);const r=s.append("tspan");return r.attr("x",e.x+2*e.textMargin),r.text(n),s}),"drawText"),c=(0,i.K2)(((t,e,n,i)=>{const r=t.append("image");r.attr("x",e),r.attr("y",n);const a=(0,s.J)(i);r.attr("xlink:href",a)}),"drawImage"),l=(0,i.K2)(((t,e,n,i)=>{const r=t.append("use");r.attr("x",e),r.attr("y",n);const a=(0,s.J)(i);r.attr("xlink:href",`#${a}`)}),"drawEmbeddedImage"),h=(0,i.K2)((()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0})),"getNoteRect"),u=(0,i.K2)((()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0})),"getTextObj")},4257:(t,e,n)=>{n.d(e,{diagram:()=>Y});var i=n(9323),s=n(798),r=n(4852),a=function(){var t=(0,s.K2)((function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n}),"o"),e=[6,8,10,11,12,14,16,17,18],n=[1,9],i=[1,10],r=[1,11],a=[1,12],o=[1,13],c=[1,14],l={trace:(0,s.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:(0,s.K2)((function(t,e,n,i,s,r,a){var o=r.length-1;switch(s){case 1:return r[o-1];case 2:case 6:case 7:this.$=[];break;case 3:r[o-1].push(r[o]),this.$=r[o-1];break;case 4:case 5:this.$=r[o];break;case 8:i.setDiagramTitle(r[o].substr(6)),this.$=r[o].substr(6);break;case 9:this.$=r[o].trim(),i.setAccTitle(this.$);break;case 10:case 11:this.$=r[o].trim(),i.setAccDescription(this.$);break;case 12:i.addSection(r[o].substr(8)),this.$=r[o].substr(8);break;case 13:i.addTask(r[o-1],r[o]),this.$="task"}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:n,12:i,14:r,16:a,17:o,18:c},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:n,12:i,14:r,16:a,17:o,18:c},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:(0,s.K2)((function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)}),"parseError"),parse:(0,s.K2)((function(t){var e=this,n=[0],i=[],r=[null],a=[],o=this.table,c="",l=0,h=0,u=0,y=a.slice.call(arguments,1),p=Object.create(this.lexer),d={yy:{}};for(var f in this.yy)Object.prototype.hasOwnProperty.call(this.yy,f)&&(d.yy[f]=this.yy[f]);p.setInput(t,d.yy),d.yy.lexer=p,d.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var g=p.yylloc;a.push(g);var x=p.options&&p.options.ranges;function m(){var t;return"number"!=typeof(t=i.pop()||p.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,s.K2)((function(t){n.length=n.length-2*t,r.length=r.length-t,a.length=a.length-t}),"popStack"),(0,s.K2)(m,"lex");for(var k,_,b,w,v,K,$,T,M,S={};;){if(b=n[n.length-1],this.defaultActions[b]?w=this.defaultActions[b]:(null==k&&(k=m()),w=o[b]&&o[b][k]),void 0===w||!w.length||!w[0]){var E;for(K in M=[],o[b])this.terminals_[K]&&K>2&&M.push("'"+this.terminals_[K]+"'");E=p.showPosition?"Parse error on line "+(l+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[k]||k)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==k?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError(E,{text:p.match,token:this.terminals_[k]||k,line:p.yylineno,loc:g,expected:M})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+k);switch(w[0]){case 1:n.push(k),r.push(p.yytext),a.push(p.yylloc),n.push(w[1]),k=null,_?(k=_,_=null):(h=p.yyleng,c=p.yytext,l=p.yylineno,g=p.yylloc,u>0&&u--);break;case 2:if($=this.productions_[w[1]][1],S.$=r[r.length-$],S._$={first_line:a[a.length-($||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-($||1)].first_column,last_column:a[a.length-1].last_column},x&&(S._$.range=[a[a.length-($||1)].range[0],a[a.length-1].range[1]]),void 0!==(v=this.performAction.apply(S,[c,h,l,d.yy,w[1],r,a].concat(y))))return v;$&&(n=n.slice(0,-1*$*2),r=r.slice(0,-1*$),a=a.slice(0,-1*$)),n.push(this.productions_[w[1]][0]),r.push(S.$),a.push(S._$),T=o[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}),"parse")},h=function(){return{EOF:1,parseError:(0,s.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,s.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,s.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,s.K2)((function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,s.K2)((function(){return this._more=!0,this}),"more"),reject:(0,s.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,s.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,s.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,s.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,s.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,s.K2)((function(t,e){var n,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1}),"test_match"),next:(0,s.K2)((function(){if(this.done)return this.EOF;var t,e,n,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;re[0].length)){if(e=n,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,s[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,s.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,s.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,s.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,s.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,s.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,s.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,s.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,s.K2)((function(t,e,n,i){switch(n){case 0:case 1:case 3:case 4:break;case 2:return 10;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}}),"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}}}();function u(){this.yy={}}return l.lexer=h,(0,s.K2)(u,"Parser"),u.prototype=l,l.Parser=u,new u}();a.parser=a;var o=a,c="",l=[],h=[],u=[],y=(0,s.K2)((function(){l.length=0,h.length=0,c="",u.length=0,(0,s.IU)()}),"clear"),p=(0,s.K2)((function(t){c=t,l.push(t)}),"addSection"),d=(0,s.K2)((function(){return l}),"getSections"),f=(0,s.K2)((function(){let t=k(),e=0;for(;!t&&e<100;)t=k(),e++;return h.push(...u),h}),"getTasks"),g=(0,s.K2)((function(){const t=[];return h.forEach((e=>{e.people&&t.push(...e.people)})),[...new Set(t)].sort()}),"updateActors"),x=(0,s.K2)((function(t,e){const n=e.substr(1).split(":");let i=0,s=[];1===n.length?(i=Number(n[0]),s=[]):(i=Number(n[0]),s=n[1].split(","));const r=s.map((t=>t.trim())),a={section:c,type:c,people:r,task:t,score:i};u.push(a)}),"addTask"),m=(0,s.K2)((function(t){const e={section:c,type:c,description:t,task:t,classes:[]};h.push(e)}),"addTaskOrg"),k=(0,s.K2)((function(){const t=(0,s.K2)((function(t){return u[t].processed}),"compileTask");let e=!0;for(const[n,i]of u.entries())t(n),e=e&&i.processed;return e}),"compileTasks"),_=(0,s.K2)((function(){return g()}),"getActors"),b={getConfig:(0,s.K2)((()=>(0,s.D7)().journey),"getConfig"),clear:y,setDiagramTitle:s.ke,getDiagramTitle:s.ab,setAccTitle:s.SV,getAccTitle:s.iN,setAccDescription:s.EI,getAccDescription:s.m7,addSection:p,getSections:d,getTasks:f,addTask:x,addTaskOrg:m,getActors:_},w=(0,s.K2)((t=>`.label {\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n color: ${t.textColor};\n }\n .mouth {\n stroke: #666;\n }\n\n line {\n stroke: ${t.textColor}\n }\n\n .legend {\n fill: ${t.textColor};\n }\n\n .label text {\n fill: #333;\n }\n .label {\n color: ${t.textColor}\n }\n\n .face {\n ${t.faceColor?`fill: ${t.faceColor}`:"fill: #FFF8DC"};\n stroke: #999;\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${t.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${t.lineColor};\n stroke-width: 1.5px;\n }\n\n .flowchart-link {\n stroke: ${t.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${t.edgeLabelBackground};\n rect {\n opacity: 0.5;\n }\n text-align: center;\n }\n\n .cluster rect {\n }\n\n .cluster text {\n fill: ${t.titleColor};\n }\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n font-size: 12px;\n background: ${t.tertiaryColor};\n border: 1px solid ${t.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .task-type-0, .section-type-0 {\n ${t.fillType0?`fill: ${t.fillType0}`:""};\n }\n .task-type-1, .section-type-1 {\n ${t.fillType0?`fill: ${t.fillType1}`:""};\n }\n .task-type-2, .section-type-2 {\n ${t.fillType0?`fill: ${t.fillType2}`:""};\n }\n .task-type-3, .section-type-3 {\n ${t.fillType0?`fill: ${t.fillType3}`:""};\n }\n .task-type-4, .section-type-4 {\n ${t.fillType0?`fill: ${t.fillType4}`:""};\n }\n .task-type-5, .section-type-5 {\n ${t.fillType0?`fill: ${t.fillType5}`:""};\n }\n .task-type-6, .section-type-6 {\n ${t.fillType0?`fill: ${t.fillType6}`:""};\n }\n .task-type-7, .section-type-7 {\n ${t.fillType0?`fill: ${t.fillType7}`:""};\n }\n\n .actor-0 {\n ${t.actor0?`fill: ${t.actor0}`:""};\n }\n .actor-1 {\n ${t.actor1?`fill: ${t.actor1}`:""};\n }\n .actor-2 {\n ${t.actor2?`fill: ${t.actor2}`:""};\n }\n .actor-3 {\n ${t.actor3?`fill: ${t.actor3}`:""};\n }\n .actor-4 {\n ${t.actor4?`fill: ${t.actor4}`:""};\n }\n .actor-5 {\n ${t.actor5?`fill: ${t.actor5}`:""};\n }\n`),"getStyles"),v=(0,s.K2)((function(t,e){return(0,i.tk)(t,e)}),"drawRect"),K=(0,s.K2)((function(t,e){const n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");function a(t){const n=(0,r.JLW)().startAngle(Math.PI/2).endAngle(Math.PI/2*3).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",n).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}function o(t){const n=(0,r.JLW)().startAngle(3*Math.PI/2).endAngle(Math.PI/2*5).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",n).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}function c(t){t.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return i.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),(0,s.K2)(a,"smile"),(0,s.K2)(o,"sad"),(0,s.K2)(c,"ambivalent"),e.score>3?a(i):e.score<3?o(i):c(i),n}),"drawFace"),$=(0,s.K2)((function(t,e){const n=t.append("circle");return n.attr("cx",e.cx),n.attr("cy",e.cy),n.attr("class","actor-"+e.pos),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("r",e.r),void 0!==n.class&&n.attr("class",n.class),void 0!==e.title&&n.append("title").text(e.title),n}),"drawCircle"),T=(0,s.K2)((function(t,e){return(0,i.m)(t,e)}),"drawText"),M=(0,s.K2)((function(t,e){function n(t,e,n,i,s){return t+","+e+" "+(t+n)+","+e+" "+(t+n)+","+(e+i-s)+" "+(t+n-1.2*s)+","+(e+i)+" "+t+","+(e+i)}(0,s.K2)(n,"genPoints");const i=t.append("polygon");i.attr("points",n(e.x,e.y,50,20,7)),i.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,T(t,e)}),"drawLabel"),S=(0,s.K2)((function(t,e,n){const s=t.append("g"),r=(0,i.PB)();r.x=e.x,r.y=e.y,r.fill=e.fill,r.width=n.width*e.taskCount+n.diagramMarginX*(e.taskCount-1),r.height=n.height,r.class="journey-section section-type-"+e.num,r.rx=3,r.ry=3,v(s,r),C(n)(e.text,s,r.x,r.y,r.width,r.height,{class:"journey-section section-type-"+e.num},n,e.colour)}),"drawSection"),E=-1,I=(0,s.K2)((function(t,e,n){const s=e.x+n.width/2,r=t.append("g");E++,r.append("line").attr("id","task"+E).attr("x1",s).attr("y1",e.y).attr("x2",s).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),K(r,{cx:s,cy:300+30*(5-e.score),score:e.score});const a=(0,i.PB)();a.x=e.x,a.y=e.y,a.fill=e.fill,a.width=n.width,a.height=n.height,a.class="task task-type-"+e.num,a.rx=3,a.ry=3,v(r,a);let o=e.x+14;e.people.forEach((t=>{const n=e.actors[t].color,i={cx:o,cy:e.y,r:7,fill:n,stroke:"#000",title:t,pos:e.actors[t].position};$(r,i),o+=10})),C(n)(e.task,r,a.x,a.y,a.width,a.height,{class:"task"},n,e.colour)}),"drawTask"),P=(0,s.K2)((function(t,e){(0,i.lC)(t,e)}),"drawBackgroundRect"),C=function(){function t(t,e,n,s,r,a,o,c){i(e.append("text").attr("x",n+r/2).attr("y",s+a/2+5).style("font-color",c).style("text-anchor","middle").text(t),o)}function e(t,e,n,s,r,a,o,c,l){const{taskFontSize:h,taskFontFamily:u}=c,y=t.split(//gi);for(let t=0;t{const s=D[i].color,r={cx:20,cy:n,r:7,fill:s,stroke:"#000",pos:D[i].position};A.drawCircle(t,r);const a={x:40,y:n+7,fill:"#666",text:i,textMargin:5|e.boxTextMargin};A.drawText(t,a),n+=20}))}(0,s.K2)(L,"drawActorLegend");var V=(0,s.D7)().journey,B=V.leftMargin,O=(0,s.K2)((function(t,e,n,i){const a=(0,s.D7)().journey,o=(0,s.D7)().securityLevel;let c;"sandbox"===o&&(c=(0,r.Ltv)("#i"+e));const l="sandbox"===o?(0,r.Ltv)(c.nodes()[0].contentDocument.body):(0,r.Ltv)("body");F.init();const h=l.select("#"+e);A.initGraphics(h);const u=i.db.getTasks(),y=i.db.getDiagramTitle(),p=i.db.getActors();for(const t in D)delete D[t];let d=0;p.forEach((t=>{D[t]={color:a.actorColours[d%a.actorColours.length],position:d},d++})),L(h),F.insert(0,0,B,50*Object.keys(D).length),z(h,u,0);const f=F.getBounds();y&&h.append("text").text(y).attr("x",B).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);const g=f.stopy-f.starty+2*a.diagramMarginY,x=B+f.stopx+2*a.diagramMarginX;(0,s.a$)(h,g,x,a.useMaxWidth),h.append("line").attr("x1",B).attr("y1",4*a.height).attr("x2",x-B-4).attr("y2",4*a.height).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");const m=y?70:0;h.attr("viewBox",`${f.startx} -25 ${x} ${g+m}`),h.attr("preserveAspectRatio","xMinYMin meet"),h.attr("height",g+m+25)}),"draw"),F={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:(0,s.K2)((function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0}),"init"),updateVal:(0,s.K2)((function(t,e,n,i){void 0===t[e]?t[e]=n:t[e]=i(n,t[e])}),"updateVal"),updateBounds:(0,s.K2)((function(t,e,n,i){const r=(0,s.D7)().journey,a=this;let o=0;function c(c){return(0,s.K2)((function(s){o++;const l=a.sequenceItems.length-o+1;a.updateVal(s,"starty",e-l*r.boxMargin,Math.min),a.updateVal(s,"stopy",i+l*r.boxMargin,Math.max),a.updateVal(F.data,"startx",t-l*r.boxMargin,Math.min),a.updateVal(F.data,"stopx",n+l*r.boxMargin,Math.max),"activation"!==c&&(a.updateVal(s,"startx",t-l*r.boxMargin,Math.min),a.updateVal(s,"stopx",n+l*r.boxMargin,Math.max),a.updateVal(F.data,"starty",e-l*r.boxMargin,Math.min),a.updateVal(F.data,"stopy",i+l*r.boxMargin,Math.max))}),"updateItemBounds")}(0,s.K2)(c,"updateFn"),this.sequenceItems.forEach(c())}),"updateBounds"),insert:(0,s.K2)((function(t,e,n,i){const s=Math.min(t,n),r=Math.max(t,n),a=Math.min(e,i),o=Math.max(e,i);this.updateVal(F.data,"startx",s,Math.min),this.updateVal(F.data,"starty",a,Math.min),this.updateVal(F.data,"stopx",r,Math.max),this.updateVal(F.data,"stopy",o,Math.max),this.updateBounds(s,a,r,o)}),"insert"),bumpVerticalPos:(0,s.K2)((function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos}),"bumpVerticalPos"),getVerticalPos:(0,s.K2)((function(){return this.verticalPos}),"getVerticalPos"),getBounds:(0,s.K2)((function(){return this.data}),"getBounds")},N=V.sectionFills,R=V.sectionColours,z=(0,s.K2)((function(t,e,n){const i=(0,s.D7)().journey;let r="";const a=n+(2*i.height+i.diagramMarginY);let o=0,c="#CCC",l="black",h=0;for(const[n,s]of e.entries()){if(r!==s.section){c=N[o%N.length],h=o%N.length,l=R[o%R.length];let a=0;const u=s.section;for(let t=n;t(D[e]&&(t[e]=D[e]),t)),{});s.x=n*i.taskMargin+n*i.width+B,s.y=a,s.width=i.diagramMarginX,s.height=i.diagramMarginY,s.colour=l,s.fill=c,s.num=h,s.actors=u,A.drawTask(t,s,i),F.insert(s.x,s.y,s.x+s.width+i.taskMargin,450)}}),"drawTasks"),W={setConf:j,draw:O},Y={parser:o,db:b,renderer:W,styles:w,init:(0,s.K2)((t=>{W.setConf(t.journey),b.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/258-c1edc5c0.chunk.min.js b/themes/hugo-geekdoc/static/js/258-c1edc5c0.chunk.min.js new file mode 100644 index 000000000..b97e922e1 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/258-c1edc5c0.chunk.min.js @@ -0,0 +1 @@ +(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[258],{7799:function(t,e,i){var n;n=function(t){return function(t){var e={};function i(n){if(e[n])return e[n].exports;var r=e[n]={i:n,l:!1,exports:{}};return t[n].call(r.exports,r,r.exports,i),r.l=!0,r.exports}return i.m=t,i.c=e,i.i=function(t){return t},i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:n})},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=7)}([function(e,i){e.exports=t},function(t,e,i){"use strict";var n=i(0).FDLayoutConstants;function r(){}for(var o in n)r[o]=n[o];r.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,r.DEFAULT_RADIAL_SEPARATION=n.DEFAULT_EDGE_LENGTH,r.DEFAULT_COMPONENT_SEPERATION=60,r.TILE=!0,r.TILING_PADDING_VERTICAL=10,r.TILING_PADDING_HORIZONTAL=10,r.TREE_REDUCTION_ON_INCREMENTAL=!1,t.exports=r},function(t,e,i){"use strict";var n=i(0).FDLayoutEdge;function r(t,e,i){n.call(this,t,e,i)}for(var o in r.prototype=Object.create(n.prototype),n)r[o]=n[o];t.exports=r},function(t,e,i){"use strict";var n=i(0).LGraph;function r(t,e,i){n.call(this,t,e,i)}for(var o in r.prototype=Object.create(n.prototype),n)r[o]=n[o];t.exports=r},function(t,e,i){"use strict";var n=i(0).LGraphManager;function r(t){n.call(this,t)}for(var o in r.prototype=Object.create(n.prototype),n)r[o]=n[o];t.exports=r},function(t,e,i){"use strict";var n=i(0).FDLayoutNode,r=i(0).IMath;function o(t,e,i,r){n.call(this,t,e,i,r)}for(var s in o.prototype=Object.create(n.prototype),n)o[s]=n[s];o.prototype.move=function(){var t=this.graphManager.getLayout();this.displacementX=t.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=t.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>t.coolingFactor*t.maxNodeDisplacement&&(this.displacementX=t.coolingFactor*t.maxNodeDisplacement*r.sign(this.displacementX)),Math.abs(this.displacementY)>t.coolingFactor*t.maxNodeDisplacement&&(this.displacementY=t.coolingFactor*t.maxNodeDisplacement*r.sign(this.displacementY)),null==this.child||0==this.child.getNodes().length?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),t.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},o.prototype.propogateDisplacementToChildren=function(t,e){for(var i,n=this.getChild().getNodes(),r=0;r0)this.positionNodesRadially(t);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var e=new Set(this.getAllNodes()),i=this.nodesWithGravity.filter((function(t){return e.has(t)}));this.graphManager.setAllNodesToApplyGravitation(i),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},_.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished){if(!(this.prunedNodesAll.length>0))return!0;this.isTreeGrowing=!0}if(this.totalIterations%l.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged()){if(!(this.prunedNodesAll.length>0))return!0;this.isTreeGrowing=!0}this.coolingCycle++,0==this.layoutQuality?this.coolingAdjuster=this.coolingCycle:1==this.layoutQuality&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var t=new Set(this.getAllNodes()),e=this.nodesWithGravity.filter((function(e){return t.has(e)}));this.graphManager.setAllNodesToApplyGravitation(e),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var i=!this.isTreeGrowing&&!this.isGrowthFinished,n=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(i,n),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},_.prototype.getPositionsData=function(){for(var t=this.graphManager.getAllNodes(),e={},i=0;i1)for(a=0;an&&(n=Math.floor(s.y)),o=Math.floor(s.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new u(c.WORLD_CENTER_X-s.x/2,c.WORLD_CENTER_Y-s.y/2))},_.radialLayout=function(t,e,i){var n=Math.max(this.maxDiagonalInTree(t),h.DEFAULT_RADIAL_SEPARATION);_.branchRadialLayout(e,null,0,359,0,n);var r=y.calculateBounds(t),o=new E;o.setDeviceOrgX(r.getMinX()),o.setDeviceOrgY(r.getMinY()),o.setWorldOrgX(i.x),o.setWorldOrgY(i.y);for(var s=0;s1;){var E=y[0];y.splice(0,1);var m=c.indexOf(E);m>=0&&c.splice(m,1),p--,g--}u=null!=e?(c.indexOf(y[0])+1)%p:0;for(var v=Math.abs(n-i)/g,N=u;d!=g;N=++N%p){var A=c[N].getOtherEnd(t);if(A!=e){var L=(i+d*v)%360,T=(L+v)%360;_.branchRadialLayout(A,t,L,T,r+o,o),d++}}},_.maxDiagonalInTree=function(t){for(var e=p.MIN_VALUE,i=0;ie&&(e=n)}return e},_.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},_.prototype.groupZeroDegreeMembers=function(){var t=this,e={};this.memberGroups={},this.idToDummyNode={};for(var i=[],n=this.graphManager.getAllNodes(),r=0;r1){var n="DummyCompound_"+i;t.memberGroups[n]=e[i];var r=e[i][0].getParent(),o=new s(t.graphManager);o.id=n,o.paddingLeft=r.paddingLeft||0,o.paddingRight=r.paddingRight||0,o.paddingBottom=r.paddingBottom||0,o.paddingTop=r.paddingTop||0,t.idToDummyNode[n]=o;var a=t.getGraphManager().add(t.newGraph(),o),h=r.getChild();h.add(o);for(var l=0;l=0;t--){var e=this.compoundOrder[t],i=e.id,n=e.paddingLeft,r=e.paddingTop;this.adjustLocations(this.tiledMemberPack[i],e.rect.x,e.rect.y,n,r)}},_.prototype.repopulateZeroDegreeMembers=function(){var t=this,e=this.tiledZeroDegreePack;Object.keys(e).forEach((function(i){var n=t.idToDummyNode[i],r=n.paddingLeft,o=n.paddingTop;t.adjustLocations(e[i],n.rect.x,n.rect.y,r,o)}))},_.prototype.getToBeTiled=function(t){var e=t.id;if(null!=this.toBeTiled[e])return this.toBeTiled[e];var i=t.getChild();if(null==i)return this.toBeTiled[e]=!1,!1;for(var n=i.getNodes(),r=0;r0)return this.toBeTiled[e]=!1,!1;if(null!=o.getChild()){if(!this.getToBeTiled(o))return this.toBeTiled[e]=!1,!1}else this.toBeTiled[o.id]=!1}return this.toBeTiled[e]=!0,!0},_.prototype.getNodeDegree=function(t){t.id;for(var e=t.getEdges(),i=0,n=0;nh&&(h=c.rect.height)}i+=h+t.verticalPadding}},_.prototype.tileCompoundMembers=function(t,e){var i=this;this.tiledMemberPack=[],Object.keys(t).forEach((function(n){var r=e[n];i.tiledMemberPack[n]=i.tileNodes(t[n],r.paddingLeft+r.paddingRight),r.rect.width=i.tiledMemberPack[n].width,r.rect.height=i.tiledMemberPack[n].height}))},_.prototype.tileNodes=function(t,e){var i={rows:[],rowWidth:[],rowHeight:[],width:0,height:e,verticalPadding:h.TILING_PADDING_VERTICAL,horizontalPadding:h.TILING_PADDING_HORIZONTAL};t.sort((function(t,e){return t.rect.width*t.rect.height>e.rect.width*e.rect.height?-1:t.rect.width*t.rect.height0&&(o+=t.horizontalPadding),t.rowWidth[i]=o,t.width0&&(s+=t.verticalPadding);var a=0;s>t.rowHeight[i]&&(a=t.rowHeight[i],t.rowHeight[i]=s,a=t.rowHeight[i]-a),t.height+=a,t.rows[i].push(e)},_.prototype.getShortestRowIndex=function(t){for(var e=-1,i=Number.MAX_VALUE,n=0;ni&&(e=n,i=t.rowWidth[n]);return e},_.prototype.canAddHorizontal=function(t,e,i){var n=this.getShortestRowIndex(t);if(n<0)return!0;var r=t.rowWidth[n];if(r+t.horizontalPadding+e<=t.width)return!0;var o,s,a=0;return t.rowHeight[n]0&&(a=i+t.verticalPadding-t.rowHeight[n]),o=t.width-r>=e+t.horizontalPadding?(t.height+a)/(r+e+t.horizontalPadding):(t.height+a)/t.width,a=i+t.verticalPadding,(s=t.widtho&&e!=i){n.splice(-1,1),t.rows[i].push(r),t.rowWidth[e]=t.rowWidth[e]-o,t.rowWidth[i]=t.rowWidth[i]+o,t.width=t.rowWidth[instance.getLongestRowIndex(t)];for(var s=Number.MIN_VALUE,a=0;as&&(s=n[a].height);e>0&&(s+=t.verticalPadding);var h=t.rowHeight[e]+t.rowHeight[i];t.rowHeight[e]=s,t.rowHeight[i]0)for(var c=r;c<=o;c++)h[0]+=this.grid[c][s-1].length+this.grid[c][s].length-1;if(o0)for(c=s;c<=a;c++)h[3]+=this.grid[r-1][c].length+this.grid[r][c].length-1;for(var g,u,d=p.MAX_VALUE,f=0;f0&&(s=i.getGraphManager().add(i.newGraph(),o),this.processChildrenList(s,g,i))}},g.prototype.stop=function(){return this.stopped=!0,this};var d=function(t){t("layout","cose-bilkent",g)};"undefined"!=typeof cytoscape&&d(cytoscape),t.exports=d}])},t.exports=n(i(7799))},3143:function(t){var e;e=function(){return function(t){var e={};function i(n){if(e[n])return e[n].exports;var r=e[n]={i:n,l:!1,exports:{}};return t[n].call(r.exports,r,r.exports,i),r.l=!0,r.exports}return i.m=t,i.c=e,i.i=function(t){return t},i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:n})},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=26)}([function(t,e,i){"use strict";function n(){}n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,t.exports=n},function(t,e,i){"use strict";var n=i(2),r=i(8),o=i(9);function s(t,e,i){n.call(this,i),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=i,this.bendpoints=[],this.source=t,this.target=e}for(var a in s.prototype=Object.create(n.prototype),n)s[a]=n[a];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(t){if(this.source===t)return this.target;if(this.target===t)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(t,e){for(var i=this.getOtherEnd(t),n=e.getGraphManager().getRoot();;){if(i.getOwner()==e)return i;if(i.getOwner()==n)break;i=i.getOwner().getParent()}return null},s.prototype.updateLength=function(){var t=new Array(4);this.isOverlapingSourceAndTarget=r.getIntersection(this.target.getRect(),this.source.getRect(),t),this.isOverlapingSourceAndTarget||(this.lengthX=t[0]-t[2],this.lengthY=t[1]-t[3],Math.abs(this.lengthX)<1&&(this.lengthX=o.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=o.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=o.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=o.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s},function(t,e,i){"use strict";t.exports=function(t){this.vGraphObject=t}},function(t,e,i){"use strict";var n=i(2),r=i(10),o=i(13),s=i(0),a=i(16),h=i(4);function l(t,e,i,s){null==i&&null==s&&(s=e),n.call(this,s),null!=t.graphManager&&(t=t.graphManager),this.estimatedSize=r.MIN_VALUE,this.inclusionTreeDepth=r.MAX_VALUE,this.vGraphObject=s,this.edges=[],this.graphManager=t,this.rect=null!=i&&null!=e?new o(e.x,e.y,i.width,i.height):new o}for(var c in l.prototype=Object.create(n.prototype),n)l[c]=n[c];l.prototype.getEdges=function(){return this.edges},l.prototype.getChild=function(){return this.child},l.prototype.getOwner=function(){return this.owner},l.prototype.getWidth=function(){return this.rect.width},l.prototype.setWidth=function(t){this.rect.width=t},l.prototype.getHeight=function(){return this.rect.height},l.prototype.setHeight=function(t){this.rect.height=t},l.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},l.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},l.prototype.getCenter=function(){return new h(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},l.prototype.getLocation=function(){return new h(this.rect.x,this.rect.y)},l.prototype.getRect=function(){return this.rect},l.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},l.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},l.prototype.setRect=function(t,e){this.rect.x=t.x,this.rect.y=t.y,this.rect.width=e.width,this.rect.height=e.height},l.prototype.setCenter=function(t,e){this.rect.x=t-this.rect.width/2,this.rect.y=e-this.rect.height/2},l.prototype.setLocation=function(t,e){this.rect.x=t,this.rect.y=e},l.prototype.moveBy=function(t,e){this.rect.x+=t,this.rect.y+=e},l.prototype.getEdgeListToNode=function(t){var e=[],i=this;return i.edges.forEach((function(n){if(n.target==t){if(n.source!=i)throw"Incorrect edge source!";e.push(n)}})),e},l.prototype.getEdgesBetween=function(t){var e=[],i=this;return i.edges.forEach((function(n){if(n.source!=i&&n.target!=i)throw"Incorrect edge source and/or target";n.target!=t&&n.source!=t||e.push(n)})),e},l.prototype.getNeighborsList=function(){var t=new Set,e=this;return e.edges.forEach((function(i){if(i.source==e)t.add(i.target);else{if(i.target!=e)throw"Incorrect incidency!";t.add(i.source)}})),t},l.prototype.withChildren=function(){var t=new Set;if(t.add(this),null!=this.child)for(var e=this.child.getNodes(),i=0;ie&&(this.rect.x-=(this.labelWidth-e)/2,this.setWidth(this.labelWidth)),this.labelHeight>i&&("center"==this.labelPos?this.rect.y-=(this.labelHeight-i)/2:"top"==this.labelPos&&(this.rect.y-=this.labelHeight-i),this.setHeight(this.labelHeight))}}},l.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==r.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},l.prototype.transform=function(t){var e=this.rect.x;e>s.WORLD_BOUNDARY?e=s.WORLD_BOUNDARY:e<-s.WORLD_BOUNDARY&&(e=-s.WORLD_BOUNDARY);var i=this.rect.y;i>s.WORLD_BOUNDARY?i=s.WORLD_BOUNDARY:i<-s.WORLD_BOUNDARY&&(i=-s.WORLD_BOUNDARY);var n=new h(e,i),r=t.inverseTransformPoint(n);this.setLocation(r.x,r.y)},l.prototype.getLeft=function(){return this.rect.x},l.prototype.getRight=function(){return this.rect.x+this.rect.width},l.prototype.getTop=function(){return this.rect.y},l.prototype.getBottom=function(){return this.rect.y+this.rect.height},l.prototype.getParent=function(){return null==this.owner?null:this.owner.getParent()},t.exports=l},function(t,e,i){"use strict";function n(t,e){null==t&&null==e?(this.x=0,this.y=0):(this.x=t,this.y=e)}n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(t){this.x=t},n.prototype.setY=function(t){this.y=t},n.prototype.getDifference=function(t){return new DimensionD(this.x-t.x,this.y-t.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(t){return this.x+=t.width,this.y+=t.height,this},t.exports=n},function(t,e,i){"use strict";var n=i(2),r=i(10),o=i(0),s=i(6),a=i(3),h=i(1),l=i(13),c=i(12),g=i(11);function u(t,e,i){n.call(this,i),this.estimatedSize=r.MIN_VALUE,this.margin=o.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=t,null!=e&&e instanceof s?this.graphManager=e:null!=e&&e instanceof Layout&&(this.graphManager=e.graphManager)}for(var d in u.prototype=Object.create(n.prototype),n)u[d]=n[d];u.prototype.getNodes=function(){return this.nodes},u.prototype.getEdges=function(){return this.edges},u.prototype.getGraphManager=function(){return this.graphManager},u.prototype.getParent=function(){return this.parent},u.prototype.getLeft=function(){return this.left},u.prototype.getRight=function(){return this.right},u.prototype.getTop=function(){return this.top},u.prototype.getBottom=function(){return this.bottom},u.prototype.isConnected=function(){return this.isConnected},u.prototype.add=function(t,e,i){if(null==e&&null==i){var n=t;if(null==this.graphManager)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(n)>-1)throw"Node already in graph!";return n.owner=this,this.getNodes().push(n),n}var r=t;if(!(this.getNodes().indexOf(e)>-1&&this.getNodes().indexOf(i)>-1))throw"Source or target not in graph!";if(e.owner!=i.owner||e.owner!=this)throw"Both owners must be this graph!";return e.owner!=i.owner?null:(r.source=e,r.target=i,r.isInterGraph=!1,this.getEdges().push(r),e.edges.push(r),i!=e&&i.edges.push(r),r)},u.prototype.remove=function(t){var e=t;if(t instanceof a){if(null==e)throw"Node is null!";if(null==e.owner||e.owner!=this)throw"Owner graph is invalid!";if(null==this.graphManager)throw"Owner graph manager is invalid!";for(var i=e.edges.slice(),n=i.length,r=0;r-1&&c>-1))throw"Source and/or target doesn't know this edge!";if(o.source.edges.splice(l,1),o.target!=o.source&&o.target.edges.splice(c,1),-1==(s=o.source.owner.getEdges().indexOf(o)))throw"Not in owner's edge list!";o.source.owner.getEdges().splice(s,1)}},u.prototype.updateLeftTop=function(){for(var t,e,i,n=r.MAX_VALUE,o=r.MAX_VALUE,s=this.getNodes(),a=s.length,h=0;h(t=l.getTop())&&(n=t),o>(e=l.getLeft())&&(o=e)}return n==r.MAX_VALUE?null:(i=null!=s[0].getParent().paddingLeft?s[0].getParent().paddingLeft:this.margin,this.left=o-i,this.top=n-i,new c(this.left,this.top))},u.prototype.updateBounds=function(t){for(var e,i,n,o,s,a=r.MAX_VALUE,h=-r.MAX_VALUE,c=r.MAX_VALUE,g=-r.MAX_VALUE,u=this.nodes,d=u.length,p=0;p(e=f.getLeft())&&(a=e),h<(i=f.getRight())&&(h=i),c>(n=f.getTop())&&(c=n),g<(o=f.getBottom())&&(g=o)}var y=new l(a,c,h-a,g-c);a==r.MAX_VALUE&&(this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom()),s=null!=u[0].getParent().paddingLeft?u[0].getParent().paddingLeft:this.margin,this.left=y.x-s,this.right=y.x+y.width+s,this.top=y.y-s,this.bottom=y.y+y.height+s},u.calculateBounds=function(t){for(var e,i,n,o,s=r.MAX_VALUE,a=-r.MAX_VALUE,h=r.MAX_VALUE,c=-r.MAX_VALUE,g=t.length,u=0;u(e=d.getLeft())&&(s=e),a<(i=d.getRight())&&(a=i),h>(n=d.getTop())&&(h=n),c<(o=d.getBottom())&&(c=o)}return new l(s,h,a-s,c-h)},u.prototype.getInclusionTreeDepth=function(){return this==this.graphManager.getRoot()?1:this.parent.getInclusionTreeDepth()},u.prototype.getEstimatedSize=function(){if(this.estimatedSize==r.MIN_VALUE)throw"assert failed";return this.estimatedSize},u.prototype.calcEstimatedSize=function(){for(var t=0,e=this.nodes,i=e.length,n=0;n=this.nodes.length){var h=0;r.forEach((function(e){e.owner==t&&h++})),h==this.nodes.length&&(this.isConnected=!0)}}else this.isConnected=!0},t.exports=u},function(t,e,i){"use strict";var n,r=i(1);function o(t){n=i(5),this.layout=t,this.graphs=[],this.edges=[]}o.prototype.addRoot=function(){var t=this.layout.newGraph(),e=this.layout.newNode(null),i=this.add(t,e);return this.setRootGraph(i),this.rootGraph},o.prototype.add=function(t,e,i,n,r){if(null==i&&null==n&&null==r){if(null==t)throw"Graph is null!";if(null==e)throw"Parent node is null!";if(this.graphs.indexOf(t)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(t),null!=t.parent)throw"Already has a parent!";if(null!=e.child)throw"Already has a child!";return t.parent=e,e.child=t,t}r=i,i=t;var o=(n=e).getOwner(),s=r.getOwner();if(null==o||o.getGraphManager()!=this)throw"Source not in this graph mgr!";if(null==s||s.getGraphManager()!=this)throw"Target not in this graph mgr!";if(o==s)return i.isInterGraph=!1,o.add(i,n,r);if(i.isInterGraph=!0,i.source=n,i.target=r,this.edges.indexOf(i)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(i),null==i.source||null==i.target)throw"Edge source and/or target is null!";if(-1!=i.source.edges.indexOf(i)||-1!=i.target.edges.indexOf(i))throw"Edge already in source and/or target incidency list!";return i.source.edges.push(i),i.target.edges.push(i),i},o.prototype.remove=function(t){if(t instanceof n){var e=t;if(e.getGraphManager()!=this)throw"Graph not in this graph mgr";if(e!=this.rootGraph&&(null==e.parent||e.parent.graphManager!=this))throw"Invalid parent node!";for(var i,o=[],s=(o=o.concat(e.getEdges())).length,a=0;a=e.getRight()?i[0]+=Math.min(e.getX()-t.getX(),t.getRight()-e.getRight()):e.getX()<=t.getX()&&e.getRight()>=t.getRight()&&(i[0]+=Math.min(t.getX()-e.getX(),e.getRight()-t.getRight())),t.getY()<=e.getY()&&t.getBottom()>=e.getBottom()?i[1]+=Math.min(e.getY()-t.getY(),t.getBottom()-e.getBottom()):e.getY()<=t.getY()&&e.getBottom()>=t.getBottom()&&(i[1]+=Math.min(t.getY()-e.getY(),e.getBottom()-t.getBottom()));var o=Math.abs((e.getCenterY()-t.getCenterY())/(e.getCenterX()-t.getCenterX()));e.getCenterY()===t.getCenterY()&&e.getCenterX()===t.getCenterX()&&(o=1);var s=o*i[0],a=i[1]/o;i[0]s)return i[0]=n,i[1]=h,i[2]=o,i[3]=m,!1;if(ro)return i[0]=a,i[1]=r,i[2]=E,i[3]=s,!1;if(no?(i[0]=c,i[1]=g,L=!0):(i[0]=l,i[1]=h,L=!0):O===I&&(n>o?(i[0]=a,i[1]=h,L=!0):(i[0]=u,i[1]=g,L=!0)),-D===I?o>n?(i[2]=_,i[3]=m,T=!0):(i[2]=E,i[3]=y,T=!0):D===I&&(o>n?(i[2]=f,i[3]=y,T=!0):(i[2]=v,i[3]=m,T=!0)),L&&T)return!1;if(n>o?r>s?(w=this.getCardinalDirection(O,I,4),R=this.getCardinalDirection(D,I,2)):(w=this.getCardinalDirection(-O,I,3),R=this.getCardinalDirection(-D,I,1)):r>s?(w=this.getCardinalDirection(-O,I,1),R=this.getCardinalDirection(-D,I,3)):(w=this.getCardinalDirection(O,I,2),R=this.getCardinalDirection(D,I,4)),!L)switch(w){case 1:M=h,C=n+-p/I,i[0]=C,i[1]=M;break;case 2:C=u,M=r+d*I,i[0]=C,i[1]=M;break;case 3:M=g,C=n+p/I,i[0]=C,i[1]=M;break;case 4:C=c,M=r+-d*I,i[0]=C,i[1]=M}if(!T)switch(R){case 1:G=y,x=o+-A/I,i[2]=x,i[3]=G;break;case 2:x=v,G=s+N*I,i[2]=x,i[3]=G;break;case 3:G=m,x=o+A/I,i[2]=x,i[3]=G;break;case 4:x=_,G=s+-N*I,i[2]=x,i[3]=G}}return!1},r.getCardinalDirection=function(t,e,i){return t>e?i:1+i%4},r.getIntersection=function(t,e,i,r){if(null==r)return this.getIntersection2(t,e,i);var o,s,a,h,l,c,g,u=t.x,d=t.y,p=e.x,f=e.y,y=i.x,E=i.y,_=r.x,m=r.y;return 0==(g=(o=f-d)*(h=y-_)-(s=m-E)*(a=u-p))?null:new n((a*(c=_*E-y*m)-h*(l=p*d-u*f))/g,(s*l-o*c)/g)},r.angleOfVector=function(t,e,i,n){var r=void 0;return t!==i?(r=Math.atan((n-e)/(i-t)),i0?1:t<0?-1:0},n.floor=function(t){return t<0?Math.ceil(t):Math.floor(t)},n.ceil=function(t){return t<0?Math.floor(t):Math.ceil(t)},t.exports=n},function(t,e,i){"use strict";function n(){}n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n},function(t,e,i){"use strict";var n=function(){function t(t,e){for(var i=0;i0&&e;){for(a.push(l[0]);a.length>0&&e;){var c=a[0];a.splice(0,1),s.add(c);var g=c.getEdges();for(o=0;o-1&&l.splice(f,1)}s=new Set,h=new Map}else t=[]}return t},u.prototype.createDummyNodesForBendpoints=function(t){for(var e=[],i=t.source,n=this.graphManager.calcLowestCommonAncestor(t.source,t.target),r=0;r0){for(var r=this.edgeToDummyNodes.get(i),o=0;o=0&&e.splice(g,1),c.getNeighborsList().forEach((function(t){if(i.indexOf(t)<0){var e=n.get(t)-1;1==e&&h.push(t),n.set(t,e)}}))}i=i.concat(h),1!=e.length&&2!=e.length||(r=!0,o=e[0])}return o},u.prototype.setGraphManager=function(t){this.graphManager=t},t.exports=u},function(t,e,i){"use strict";function n(){}n.seed=1,n.x=0,n.nextDouble=function(){return n.x=1e4*Math.sin(n.seed++),n.x-Math.floor(n.x)},t.exports=n},function(t,e,i){"use strict";var n=i(4);function r(t,e){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}r.prototype.getWorldOrgX=function(){return this.lworldOrgX},r.prototype.setWorldOrgX=function(t){this.lworldOrgX=t},r.prototype.getWorldOrgY=function(){return this.lworldOrgY},r.prototype.setWorldOrgY=function(t){this.lworldOrgY=t},r.prototype.getWorldExtX=function(){return this.lworldExtX},r.prototype.setWorldExtX=function(t){this.lworldExtX=t},r.prototype.getWorldExtY=function(){return this.lworldExtY},r.prototype.setWorldExtY=function(t){this.lworldExtY=t},r.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},r.prototype.setDeviceOrgX=function(t){this.ldeviceOrgX=t},r.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},r.prototype.setDeviceOrgY=function(t){this.ldeviceOrgY=t},r.prototype.getDeviceExtX=function(){return this.ldeviceExtX},r.prototype.setDeviceExtX=function(t){this.ldeviceExtX=t},r.prototype.getDeviceExtY=function(){return this.ldeviceExtY},r.prototype.setDeviceExtY=function(t){this.ldeviceExtY=t},r.prototype.transformX=function(t){var e=0,i=this.lworldExtX;return 0!=i&&(e=this.ldeviceOrgX+(t-this.lworldOrgX)*this.ldeviceExtX/i),e},r.prototype.transformY=function(t){var e=0,i=this.lworldExtY;return 0!=i&&(e=this.ldeviceOrgY+(t-this.lworldOrgY)*this.ldeviceExtY/i),e},r.prototype.inverseTransformX=function(t){var e=0,i=this.ldeviceExtX;return 0!=i&&(e=this.lworldOrgX+(t-this.ldeviceOrgX)*this.lworldExtX/i),e},r.prototype.inverseTransformY=function(t){var e=0,i=this.ldeviceExtY;return 0!=i&&(e=this.lworldOrgY+(t-this.ldeviceOrgY)*this.lworldExtY/i),e},r.prototype.inverseTransformPoint=function(t){return new n(this.inverseTransformX(t.x),this.inverseTransformY(t.y))},t.exports=r},function(t,e,i){"use strict";var n=i(15),r=i(7),o=i(0),s=i(8),a=i(9);function h(){n.call(this),this.useSmartIdealEdgeLengthCalculation=r.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.idealEdgeLength=r.DEFAULT_EDGE_LENGTH,this.springConstant=r.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=r.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=r.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=r.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=r.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=r.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*r.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=r.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=r.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=r.MAX_ITERATIONS}for(var l in h.prototype=Object.create(n.prototype),n)h[l]=n[l];h.prototype.initParameters=function(){n.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=r.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},h.prototype.calcIdealEdgeLengths=function(){for(var t,e,i,n,s,a,h=this.getGraphManager().getAllEdges(),l=0;lr.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*r.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(t-r.ADAPTATION_LOWER_NODE_LIMIT)/(r.ADAPTATION_UPPER_NODE_LIMIT-r.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-r.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=r.MAX_NODE_DISPLACEMENT_INCREMENTAL):(t>r.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(r.COOLING_ADAPTATION_FACTOR,1-(t-r.ADAPTATION_LOWER_NODE_LIMIT)/(r.ADAPTATION_UPPER_NODE_LIMIT-r.ADAPTATION_LOWER_NODE_LIMIT)*(1-r.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=r.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(5*this.getAllNodes().length,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var t,e=this.getAllEdges(),i=0;i0&&void 0!==arguments[0])||arguments[0],a=arguments.length>1&&void 0!==arguments[1]&&arguments[1],h=this.getAllNodes();if(this.useFRGridVariant)for(this.totalIterations%r.GRID_CALCULATION_CHECK_PERIOD==1&&s&&this.updateGrid(),o=new Set,t=0;t(h=e.getEstimatedSize()*this.gravityRangeFactor)||a>h)&&(t.gravitationForceX=-this.gravityConstant*r,t.gravitationForceY=-this.gravityConstant*o):(s>(h=e.getEstimatedSize()*this.compoundGravityRangeFactor)||a>h)&&(t.gravitationForceX=-this.gravityConstant*r*this.compoundGravityConstant,t.gravitationForceY=-this.gravityConstant*o*this.compoundGravityConstant)},h.prototype.isConverged=function(){var t,e=!1;return this.totalIterations>this.maxIterations/3&&(e=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),t=this.totalDisplacement=a.length||l>=a[0].length))for(var c=0;ct}}]),t}();t.exports=o},function(t,e,i){"use strict";var n=function(){function t(t,e){for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:1,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:-1,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:-1;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.sequence1=e,this.sequence2=i,this.match_score=n,this.mismatch_penalty=r,this.gap_penalty=o,this.iMax=e.length+1,this.jMax=i.length+1,this.grid=new Array(this.iMax);for(var s=0;s=0;i--){var n=this.listeners[i];n.event===t&&n.callback===e&&this.listeners.splice(i,1)}},r.emit=function(t,e){for(var i=0;i{"use strict";i.d(e,{diagram:()=>X});var n=i(2382),r=i(5522),o=i(1661),s=i(32),a=i(165),h=i(3457),l=i(4852),c=i(5097),g=i(8041),u=i(5263),d=function(){var t=(0,s.K2)((function(t,e,i,n){for(i=i||{},n=t.length;n--;i[t[n]]=e);return i}),"o"),e=[1,4],i=[1,13],n=[1,12],r=[1,15],o=[1,16],a=[1,20],h=[1,19],l=[6,7,8],c=[1,26],g=[1,24],u=[1,25],d=[6,7,11],p=[1,6,13,15,16,19,22],f=[1,33],y=[1,34],E=[1,6,7,11,13,15,16,19,22],_={trace:(0,s.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:(0,s.K2)((function(t,e,i,n,r,o,s){var a=o.length-1;switch(r){case 6:case 7:return n;case 8:n.getLogger().trace("Stop NL ");break;case 9:n.getLogger().trace("Stop EOF ");break;case 11:n.getLogger().trace("Stop NL2 ");break;case 12:n.getLogger().trace("Stop EOF2 ");break;case 15:n.getLogger().info("Node: ",o[a].id),n.addNode(o[a-1].length,o[a].id,o[a].descr,o[a].type);break;case 16:n.getLogger().trace("Icon: ",o[a]),n.decorateNode({icon:o[a]});break;case 17:case 21:n.decorateNode({class:o[a]});break;case 18:n.getLogger().trace("SPACELIST");break;case 19:n.getLogger().trace("Node: ",o[a].id),n.addNode(0,o[a].id,o[a].descr,o[a].type);break;case 20:n.decorateNode({icon:o[a]});break;case 25:n.getLogger().trace("node found ..",o[a-2]),this.$={id:o[a-1],descr:o[a-1],type:n.getType(o[a-2],o[a])};break;case 26:this.$={id:o[a],descr:o[a],type:n.nodeType.DEFAULT};break;case 27:n.getLogger().trace("node found ..",o[a-3]),this.$={id:o[a-3],descr:o[a-1],type:n.getType(o[a-2],o[a])}}}),"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:i,7:[1,10],9:9,12:11,13:n,14:14,15:r,16:o,17:17,18:18,19:a,22:h},t(l,[2,3]),{1:[2,2]},t(l,[2,4]),t(l,[2,5]),{1:[2,6],6:i,12:21,13:n,14:14,15:r,16:o,17:17,18:18,19:a,22:h},{6:i,9:22,12:11,13:n,14:14,15:r,16:o,17:17,18:18,19:a,22:h},{6:c,7:g,10:23,11:u},t(d,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:a,22:h}),t(d,[2,18]),t(d,[2,19]),t(d,[2,20]),t(d,[2,21]),t(d,[2,23]),t(d,[2,24]),t(d,[2,26],{19:[1,30]}),{20:[1,31]},{6:c,7:g,10:32,11:u},{1:[2,7],6:i,12:21,13:n,14:14,15:r,16:o,17:17,18:18,19:a,22:h},t(p,[2,14],{7:f,11:y}),t(E,[2,8]),t(E,[2,9]),t(E,[2,10]),t(d,[2,15]),t(d,[2,16]),t(d,[2,17]),{20:[1,35]},{21:[1,36]},t(p,[2,13],{7:f,11:y}),t(E,[2,11]),t(E,[2,12]),{21:[1,37]},t(d,[2,25]),t(d,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:(0,s.K2)((function(t,e){if(!e.recoverable){var i=new Error(t);throw i.hash=e,i}this.trace(t)}),"parseError"),parse:(0,s.K2)((function(t){var e=this,i=[0],n=[],r=[null],o=[],a=this.table,h="",l=0,c=0,g=0,u=o.slice.call(arguments,1),d=Object.create(this.lexer),p={yy:{}};for(var f in this.yy)Object.prototype.hasOwnProperty.call(this.yy,f)&&(p.yy[f]=this.yy[f]);d.setInput(t,p.yy),p.yy.lexer=d,p.yy.parser=this,void 0===d.yylloc&&(d.yylloc={});var y=d.yylloc;o.push(y);var E=d.options&&d.options.ranges;function _(){var t;return"number"!=typeof(t=n.pop()||d.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,s.K2)((function(t){i.length=i.length-2*t,r.length=r.length-t,o.length=o.length-t}),"popStack"),(0,s.K2)(_,"lex");for(var m,v,N,A,L,T,O,D,I,w={};;){if(N=i[i.length-1],this.defaultActions[N]?A=this.defaultActions[N]:(null==m&&(m=_()),A=a[N]&&a[N][m]),void 0===A||!A.length||!A[0]){var R;for(T in I=[],a[N])this.terminals_[T]&&T>2&&I.push("'"+this.terminals_[T]+"'");R=d.showPosition?"Parse error on line "+(l+1)+":\n"+d.showPosition()+"\nExpecting "+I.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(R,{text:d.match,token:this.terminals_[m]||m,line:d.yylineno,loc:y,expected:I})}if(A[0]instanceof Array&&A.length>1)throw new Error("Parse Error: multiple actions possible at state: "+N+", token: "+m);switch(A[0]){case 1:i.push(m),r.push(d.yytext),o.push(d.yylloc),i.push(A[1]),m=null,v?(m=v,v=null):(c=d.yyleng,h=d.yytext,l=d.yylineno,y=d.yylloc,g>0&&g--);break;case 2:if(O=this.productions_[A[1]][1],w.$=r[r.length-O],w._$={first_line:o[o.length-(O||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(O||1)].first_column,last_column:o[o.length-1].last_column},E&&(w._$.range=[o[o.length-(O||1)].range[0],o[o.length-1].range[1]]),void 0!==(L=this.performAction.apply(w,[h,c,l,p.yy,A[1],r,o].concat(u))))return L;O&&(i=i.slice(0,-1*O*2),r=r.slice(0,-1*O),o=o.slice(0,-1*O)),i.push(this.productions_[A[1]][0]),r.push(w.$),o.push(w._$),D=a[i[i.length-2]][i[i.length-1]],i.push(D);break;case 3:return!0}}return!0}),"parse")},m=function(){return{EOF:1,parseError:(0,s.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,s.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,s.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,s.K2)((function(t){var e=t.length,i=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===n.length?this.yylloc.first_column:0)+n[n.length-i.length].length-i[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,s.K2)((function(){return this._more=!0,this}),"more"),reject:(0,s.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,s.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,s.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,s.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,s.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,s.K2)((function(t,e){var i,n,r;if(this.options.backtrack_lexer&&(r={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(r.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],i=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack){for(var o in r)this[o]=r[o];return!1}return!1}),"test_match"),next:(0,s.K2)((function(){if(this.done)return this.EOF;var t,e,i,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),o=0;oe[0].length)){if(e=i,n=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(i,r[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,r[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,s.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,s.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,s.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,s.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,s.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,s.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,s.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,s.K2)((function(t,e,i,n){switch(i){case 0:return t.getLogger().trace("Found comment",e.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:case 23:case 26:this.popState();break;case 5:t.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return t.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:t.getLogger().trace("end icon"),this.popState();break;case 10:return t.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return t.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return t.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return t.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:case 15:case 16:case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 24:t.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return t.getLogger().trace("description:",e.yytext),"NODE_DESCR";case 27:return this.popState(),t.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),t.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),t.getLogger().trace("node end ...",e.yytext),"NODE_DEND";case 30:case 33:case 34:return this.popState(),t.getLogger().trace("node end (("),"NODE_DEND";case 31:case 32:return this.popState(),t.getLogger().trace("node end (-"),"NODE_DEND";case 35:case 36:return t.getLogger().trace("Long description:",e.yytext),20}}),"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}}}();function v(){this.yy={}}return _.lexer=m,(0,s.K2)(v,"Parser"),v.prototype=_,_.Parser=v,new v}();d.parser=d;var p=d,f=[],y=0,E={},_=(0,s.K2)((()=>{f=[],y=0,E={}}),"clear"),m=(0,s.K2)((function(t){for(let e=f.length-1;e>=0;e--)if(f[e].levelf.length>0?f[0]:null),"getMindmap"),N=(0,s.K2)(((t,e,i,n)=>{s.Rm.info("addNode",t,e,i,n);const r=(0,s.D7)();let o=r.mindmap?.padding??s.UI.mindmap.padding;switch(n){case A.ROUNDED_RECT:case A.RECT:case A.HEXAGON:o*=2}const a={id:y++,nodeId:(0,s.jZ)(e,r),level:t,descr:(0,s.jZ)(i,r),type:n,children:[],width:r.mindmap?.maxNodeWidth??s.UI.mindmap.maxNodeWidth,padding:o},h=m(t);if(h)h.children.push(a),f.push(a);else{if(0!==f.length)throw new Error('There can be only one root. No parent could be found for ("'+a.descr+'")');f.push(a)}}),"addNode"),A={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},L={clear:_,addNode:N,getMindmap:v,nodeType:A,getType:(0,s.K2)(((t,e)=>{switch(s.Rm.debug("In get type",t,e),t){case"[":return A.RECT;case"(":return")"===e?A.ROUNDED_RECT:A.CLOUD;case"((":return A.CIRCLE;case")":return A.CLOUD;case"))":return A.BANG;case"{{":return A.HEXAGON;default:return A.DEFAULT}}),"getType"),setElementForId:(0,s.K2)(((t,e)=>{E[t]=e}),"setElementForId"),decorateNode:(0,s.K2)((t=>{if(!t)return;const e=(0,s.D7)(),i=f[f.length-1];t.icon&&(i.icon=(0,s.jZ)(t.icon,e)),t.class&&(i.class=(0,s.jZ)(t.class,e))}),"decorateNode"),type2Str:(0,s.K2)((t=>{switch(t){case A.DEFAULT:return"no-border";case A.RECT:return"rect";case A.ROUNDED_RECT:return"rounded-rect";case A.CIRCLE:return"circle";case A.CLOUD:return"cloud";case A.BANG:return"bang";case A.HEXAGON:return"hexgon";default:return"no-border"}}),"type2Str"),getLogger:(0,s.K2)((()=>s.Rm),"getLogger"),getElementById:(0,s.K2)((t=>E[t]),"getElementById")},T=(0,s.K2)((function(t,e,i,n){e.append("path").attr("id","node-"+i.id).attr("class","node-bkg node-"+t.type2Str(i.type)).attr("d",`M0 ${i.height-5} v${10-i.height} q0,-5 5,-5 h${i.width-10} q5,0 5,5 v${i.height-5} H0 Z`),e.append("line").attr("class","node-line-"+n).attr("x1",0).attr("y1",i.height).attr("x2",i.width).attr("y2",i.height)}),"defaultBkg"),O=(0,s.K2)((function(t,e,i){e.append("rect").attr("id","node-"+i.id).attr("class","node-bkg node-"+t.type2Str(i.type)).attr("height",i.height).attr("width",i.width)}),"rectBkg"),D=(0,s.K2)((function(t,e,i){const n=i.width,r=i.height,o=.15*n,s=.25*n,a=.35*n,h=.2*n;e.append("path").attr("id","node-"+i.id).attr("class","node-bkg node-"+t.type2Str(i.type)).attr("d",`M0 0 a${o},${o} 0 0,1 ${.25*n},${-1*n*.1}\n a${a},${a} 1 0,1 ${.4*n},${-1*n*.1}\n a${s},${s} 1 0,1 ${.35*n},${1*n*.2}\n\n a${o},${o} 1 0,1 ${.15*n},${1*r*.35}\n a${h},${h} 1 0,1 ${-1*n*.15},${1*r*.65}\n\n a${s},${o} 1 0,1 ${-1*n*.25},${.15*n}\n a${a},${a} 1 0,1 ${-1*n*.5},0\n a${o},${o} 1 0,1 ${-1*n*.25},${-1*n*.15}\n\n a${o},${o} 1 0,1 ${-1*n*.1},${-1*r*.35}\n a${h},${h} 1 0,1 ${.1*n},${-1*r*.65}\n\n H0 V0 Z`)}),"cloudBkg"),I=(0,s.K2)((function(t,e,i){const n=i.width,r=i.height,o=.15*n;e.append("path").attr("id","node-"+i.id).attr("class","node-bkg node-"+t.type2Str(i.type)).attr("d",`M0 0 a${o},${o} 1 0,0 ${.25*n},${-1*r*.1}\n a${o},${o} 1 0,0 ${.25*n},0\n a${o},${o} 1 0,0 ${.25*n},0\n a${o},${o} 1 0,0 ${.25*n},${1*r*.1}\n\n a${o},${o} 1 0,0 ${.15*n},${1*r*.33}\n a${.8*o},${.8*o} 1 0,0 0,${1*r*.34}\n a${o},${o} 1 0,0 ${-1*n*.15},${1*r*.33}\n\n a${o},${o} 1 0,0 ${-1*n*.25},${.15*r}\n a${o},${o} 1 0,0 ${-1*n*.25},0\n a${o},${o} 1 0,0 ${-1*n*.25},0\n a${o},${o} 1 0,0 ${-1*n*.25},${-1*r*.15}\n\n a${o},${o} 1 0,0 ${-1*n*.1},${-1*r*.33}\n a${.8*o},${.8*o} 1 0,0 0,${-1*r*.34}\n a${o},${o} 1 0,0 ${.1*n},${-1*r*.33}\n\n H0 V0 Z`)}),"bangBkg"),w=(0,s.K2)((function(t,e,i){e.append("circle").attr("id","node-"+i.id).attr("class","node-bkg node-"+t.type2Str(i.type)).attr("r",i.width/2)}),"circleBkg");function R(t,e,i,n,r){return t.insert("polygon",":first-child").attr("points",n.map((function(t){return t.x+","+t.y})).join(" ")).attr("transform","translate("+(r.width-e)/2+", "+i+")")}(0,s.K2)(R,"insertPolygonShape");var C=(0,s.K2)((function(t,e,i){const n=i.height,r=n/4,o=i.width-i.padding+2*r;R(e,o,n,[{x:r,y:0},{x:o-r,y:0},{x:o,y:-n/2},{x:o-r,y:-n},{x:r,y:-n},{x:0,y:-n/2}],i)}),"hexagonBkg"),M=(0,s.K2)((function(t,e,i){e.append("rect").attr("id","node-"+i.id).attr("class","node-bkg node-"+t.type2Str(i.type)).attr("height",i.height).attr("rx",i.padding).attr("ry",i.padding).attr("width",i.width)}),"roundedRectBkg"),x=(0,s.K2)((async function(t,e,i,o,s){const a=s.htmlLabels,h=o%11,l=e.append("g");i.section=h;let c="section-"+h;h<0&&(c+=" section-root"),l.attr("class",(i.class?i.class+" ":"")+"mindmap-node "+c);const g=l.append("g"),u=l.append("g"),d=i.descr.replace(/()/g,"\n");await(0,n.GZ)(u,d,{useHtmlLabels:a,width:i.width,classes:"mindmap-node-label"},s),a||u.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");const p=u.node().getBBox(),[f]=(0,r.I5)(s.fontSize);if(i.height=p.height+1.1*f*.5+i.padding,i.width=p.width+2*i.padding,i.icon)if(i.type===t.nodeType.CIRCLE)i.height+=50,i.width+=50,l.append("foreignObject").attr("height","50px").attr("width",i.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+h+" "+i.icon),u.attr("transform","translate("+i.width/2+", "+(i.height/2-1.5*i.padding)+")");else{i.width+=50;const t=i.height;i.height=Math.max(t,60);const e=Math.abs(i.height-t);l.append("foreignObject").attr("width","60px").attr("height",i.height).attr("style","text-align: center;margin-top:"+e/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+h+" "+i.icon),u.attr("transform","translate("+(25+i.width/2)+", "+(e/2+i.padding/2)+")")}else if(a){const t=(i.width-p.width)/2,e=(i.height-p.height)/2;u.attr("transform","translate("+t+", "+e+")")}else{const t=i.width/2,e=i.padding/2;u.attr("transform","translate("+t+", "+e+")")}switch(i.type){case t.nodeType.DEFAULT:T(t,g,i,h);break;case t.nodeType.ROUNDED_RECT:M(t,g,i,h);break;case t.nodeType.RECT:O(t,g,i,h);break;case t.nodeType.CIRCLE:g.attr("transform","translate("+i.width/2+", "+ +i.height/2+")"),w(t,g,i,h);break;case t.nodeType.CLOUD:D(t,g,i,h);break;case t.nodeType.BANG:I(t,g,i,h);break;case t.nodeType.HEXAGON:C(t,g,i,h)}return t.setElementForId(i.id,l),i.height}),"drawNode"),G=(0,s.K2)((function(t,e){const i=t.getElementById(e.id),n=e.x||0,r=e.y||0;i.attr("transform","translate("+n+","+r+")")}),"positionNode");async function S(t,e,i,n,r){await x(t,e,i,n,r),i.children&&await Promise.all(i.children.map(((i,o)=>S(t,e,i,n<0?o:n,r))))}function b(t,e){e.edges().map(((e,i)=>{const n=e.data();if(e[0]._private.bodyBounds){const r=e[0]._private.rscratch;s.Rm.trace("Edge: ",i,n),t.insert("path").attr("d",`M ${r.startX},${r.startY} L ${r.midX},${r.midY} L${r.endX},${r.endY} `).attr("class","edge section-edge-"+n.section+" edge-depth-"+n.depth)}}))}function F(t,e,i,n){e.add({group:"nodes",data:{id:t.id.toString(),labelText:t.descr,height:t.height,width:t.width,level:n,nodeId:t.id,padding:t.padding,type:t.type},position:{x:t.x,y:t.y}}),t.children&&t.children.forEach((r=>{F(r,e,i,n+1),e.add({group:"edges",data:{id:`${t.id}_${r.id}`,source:t.id,target:r.id,depth:n,section:r.section}})}))}function P(t,e){return new Promise((i=>{const n=(0,l.Ltv)("body").append("div").attr("id","cy").attr("style","display:none"),r=(0,a.A)({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});n.remove(),F(t,r,e,0),r.nodes().forEach((function(t){t.layoutDimensions=()=>{const e=t.data();return{w:e.width,h:e.height}}})),r.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),r.ready((t=>{s.Rm.info("Ready",t),i(r)}))}))}function U(t,e){e.nodes().map(((e,i)=>{const n=e.data();n.x=e.position().x,n.y=e.position().y,G(t,n);const r=t.getElementById(n.nodeId);s.Rm.info("Id:",i,"Position: (",e.position().x,", ",e.position().y,")",n),r.attr("transform",`translate(${e.position().x-n.width/2}, ${e.position().y-n.height/2})`),r.attr("attr",`apa-${i})`)}))}a.A.use(h),(0,s.K2)(S,"drawNodes"),(0,s.K2)(b,"drawEdges"),(0,s.K2)(F,"addNodes"),(0,s.K2)(P,"layoutMindmap"),(0,s.K2)(U,"positionNodes");var k={draw:(0,s.K2)((async(t,e,i,n)=>{s.Rm.debug("Rendering mindmap diagram\n"+t);const r=n.db,a=r.getMindmap();if(!a)return;const h=(0,s.D7)();h.htmlLabels=!1;const l=(0,o.D)(e),c=l.append("g");c.attr("class","mindmap-edges");const g=l.append("g");g.attr("class","mindmap-nodes"),await S(r,g,a,-1,h);const u=await P(a,h);b(c,u),U(r,u),(0,s.ot)(void 0,l,h.mindmap?.padding??s.UI.mindmap.padding,h.mindmap?.useMaxWidth??s.UI.mindmap.useMaxWidth)}),"draw")},Y=(0,s.K2)((t=>{let e="";for(let e=0;e`\n .edge {\n stroke-width: 3;\n }\n ${Y(t)}\n .section-root rect, .section-root path, .section-root circle, .section-root polygon {\n fill: ${t.git0};\n }\n .section-root text {\n fill: ${t.gitBranchLabel0};\n }\n .icon-container {\n height:100%;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n .edge {\n fill: none;\n }\n .mindmap-node-label {\n dy: 1em;\n alignment-baseline: middle;\n text-anchor: middle;\n dominant-baseline: middle;\n text-align: center;\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/265-4e4c541c.chunk.min.js b/themes/hugo-geekdoc/static/js/265-4e4c541c.chunk.min.js new file mode 100644 index 000000000..d8ee93037 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/265-4e4c541c.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[265],{4075:(e,t,n)=>{n.d(t,{M:()=>o});var i=n(9592),r=n(53),a=n(4722);function o(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:s(e),edges:d(e)};return i.A(e.graph())||(t.value=r.A(e.graph())),t}function s(e){return a.A(e.nodes(),(function(t){var n=e.node(t),r=e.parent(t),a={v:t};return i.A(n)||(a.value=n),i.A(r)||(a.parent=r),a}))}function d(e){return a.A(e.edges(),(function(t){var n=e.edge(t),r={v:t.v,w:t.w};return i.A(t.name)||(r.name=t.name),i.A(n)||(r.value=n),r}))}n(1471)},1265:(e,t,n)=>{n.d(t,{diagram:()=>U});var i=n(3258),r=n(1805),a=n(7750),o=n(2382),s=n(5522),d=n(32),l=n(4852),c=n(697),g=n(567),h=n(4075),f={},u={},p={},m=(0,d.K2)((()=>{u={},p={},f={}}),"clear"),w=(0,d.K2)(((e,t)=>(d.Rm.trace("In isDescendant",t," ",e," = ",u[t].includes(e)),!!u[t].includes(e))),"isDescendant"),y=(0,d.K2)(((e,t)=>(d.Rm.info("Descendants of ",t," is ",u[t]),d.Rm.info("Edge is ",e),e.v!==t&&e.w!==t&&(u[t]?u[t].includes(e.v)||w(e.v,t)||w(e.w,t)||u[t].includes(e.w):(d.Rm.debug("Tilt, ",t,",not in descendants"),!1)))),"edgeInCluster"),R=(0,d.K2)(((e,t,n,i)=>{d.Rm.warn("Copying children of ",e,"root",i,"data",t.node(e),i);const r=t.children(e)||[];e!==i&&r.push(e),d.Rm.warn("Copying (nodes) clusterId",e,"nodes",r),r.forEach((r=>{if(t.children(r).length>0)R(r,t,n,i);else{const a=t.node(r);d.Rm.info("cp ",r," to ",i," with parent ",e),n.setNode(r,a),i!==t.parent(r)&&(d.Rm.warn("Setting parent",r,t.parent(r)),n.setParent(r,t.parent(r))),e!==i&&r!==e?(d.Rm.debug("Setting parent",r,e),n.setParent(r,e)):(d.Rm.info("In copy ",e,"root",i,"data",t.node(e),i),d.Rm.debug("Not Setting parent for node=",r,"cluster!==rootId",e!==i,"node!==clusterId",r!==e));const o=t.edges(r);d.Rm.debug("Copying Edges",o),o.forEach((r=>{d.Rm.info("Edge",r);const a=t.edge(r.v,r.w,r.name);d.Rm.info("Edge data",a,i);try{y(r,i)?(d.Rm.info("Copying as ",r.v,r.w,a,r.name),n.setEdge(r.v,r.w,a,r.name),d.Rm.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):d.Rm.info("Skipping copy of edge ",r.v,"--\x3e",r.w," rootId: ",i," clusterId:",e)}catch(e){d.Rm.error(e)}}))}d.Rm.debug("Removing node",r),t.removeNode(r)}))}),"copy"),b=(0,d.K2)(((e,t)=>{const n=t.children(e);let i=[...n];for(const r of n)p[r]=e,i=[...i,...b(r,t)];return i}),"extractDescendants"),v=(0,d.K2)(((e,t)=>{d.Rm.trace("Searching",e);const n=t.children(e);if(d.Rm.trace("Searching children of id ",e,n),n.length<1)return d.Rm.trace("This is a valid node",e),e;for(const i of n){const n=v(i,t);if(n)return d.Rm.trace("Found replacement for",e," => ",n),n}}),"findNonClusterChild"),x=(0,d.K2)((e=>f[e]&&f[e].externalConnections&&f[e]?f[e].id:e),"getAnchorId"),N=(0,d.K2)(((e,t)=>{if(!e||t>10)d.Rm.debug("Opting out, no graph ");else{d.Rm.debug("Opting in, graph "),e.nodes().forEach((function(t){e.children(t).length>0&&(d.Rm.warn("Cluster identified",t," Replacement id in edges: ",v(t,e)),u[t]=b(t,e),f[t]={id:v(t,e),clusterData:e.node(t)})})),e.nodes().forEach((function(t){const n=e.children(t),i=e.edges();n.length>0?(d.Rm.debug("Cluster identified",t,u),i.forEach((e=>{e.v!==t&&e.w!==t&&w(e.v,t)^w(e.w,t)&&(d.Rm.warn("Edge: ",e," leaves cluster ",t),d.Rm.warn("Descendants of XXX ",t,": ",u[t]),f[t].externalConnections=!0)}))):d.Rm.debug("Not a cluster ",t,u)}));for(let t of Object.keys(f)){const n=f[t].id,i=e.parent(n);i!==t&&f[i]&&!f[i].externalConnections&&(f[t].id=i)}e.edges().forEach((function(t){const n=e.edge(t);d.Rm.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t)),d.Rm.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(e.edge(t)));let i=t.v,r=t.w;if(d.Rm.warn("Fix XXX",f,"ids:",t.v,t.w,"Translating: ",f[t.v]," --- ",f[t.w]),f[t.v]&&f[t.w]&&f[t.v]===f[t.w]){d.Rm.warn("Fixing and trixing link to self - removing XXX",t.v,t.w,t.name),d.Rm.warn("Fixing and trixing - removing XXX",t.v,t.w,t.name),i=x(t.v),r=x(t.w),e.removeEdge(t.v,t.w,t.name);const a=t.w+"---"+t.v;e.setNode(a,{domId:a,id:a,labelStyle:"",labelText:n.label,padding:0,shape:"labelRect",style:""});const o=structuredClone(n),s=structuredClone(n);o.label="",o.arrowTypeEnd="none",s.label="",o.fromCluster=t.v,s.toCluster=t.v,e.setEdge(i,a,o,t.name+"-cyclic-special"),e.setEdge(a,r,s,t.name+"-cyclic-special")}else if(f[t.v]||f[t.w]){if(d.Rm.warn("Fixing and trixing - removing XXX",t.v,t.w,t.name),i=x(t.v),r=x(t.w),e.removeEdge(t.v,t.w,t.name),i!==t.v){const r=e.parent(i);f[r].externalConnections=!0,n.fromCluster=t.v}if(r!==t.w){const i=e.parent(r);f[i].externalConnections=!0,n.toCluster=t.w}d.Rm.warn("Fix Replacing with XXX",i,r,t.name),e.setEdge(i,r,n,t.name)}})),d.Rm.warn("Adjusted Graph",h.M(e)),D(e,0),d.Rm.trace(f)}}),"adjustClustersAndEdges"),D=(0,d.K2)(((e,t)=>{if(d.Rm.warn("extractor - ",t,h.M(e),e.children("D")),t>10)return void d.Rm.error("Bailing out");let n=e.nodes(),i=!1;for(const t of n){const n=e.children(t);i=i||n.length>0}if(i){d.Rm.debug("Nodes = ",n,t);for(const i of n)if(d.Rm.debug("Extracting node",i,f,f[i]&&!f[i].externalConnections,!e.parent(i),e.node(i),e.children("D")," Depth ",t),f[i])if(!f[i].externalConnections&&e.children(i)&&e.children(i).length>0){d.Rm.warn("Cluster without external connections, without a parent and with children",i,t);let n="TB"===e.graph().rankdir?"LR":"TB";f[i]?.clusterData?.dir&&(n=f[i].clusterData.dir,d.Rm.warn("Fixing dir",f[i].clusterData.dir,n));const r=new c.T({multigraph:!0,compound:!0}).setGraph({rankdir:n,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}}));d.Rm.warn("Old graph before copy",h.M(e)),R(i,e,r,i),e.setNode(i,{clusterNode:!0,id:i,clusterData:f[i].clusterData,labelText:f[i].labelText,graph:r}),d.Rm.warn("New graph after copy node: (",i,")",h.M(r)),d.Rm.debug("Old graph after copy",h.M(e))}else d.Rm.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!f[i].externalConnections," no parent: ",!e.parent(i)," children ",e.children(i)&&e.children(i).length>0,e.children("D"),t),d.Rm.debug(f);else d.Rm.debug("Not a cluster",i,t);n=e.nodes(),d.Rm.warn("New list of nodes",n);for(const i of n){const n=e.node(i);d.Rm.warn(" Now next level",i,n),n.clusterNode&&D(n.graph,t+1)}}else d.Rm.debug("Done, no node has children",e.nodes())}),"extractor"),C=(0,d.K2)(((e,t)=>{if(0===t.length)return[];let n=Object.assign(t);return t.forEach((t=>{const i=e.children(t),r=C(e,i);n=[...n,...r]})),n}),"sorter"),T=(0,d.K2)((e=>C(e,e.children())),"sortNodesByHierarchy"),S=(0,d.K2)(((e,t)=>{d.Rm.info("Creating subgraph rect for ",t.id,t);const n=(0,d.D7)(),r=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),s=r.insert("rect",":first-child"),c=(0,d._3)(n.flowchart.htmlLabels),g=r.insert("g").attr("class","cluster-label"),h="markdown"===t.labelType?(0,o.GZ)(g,t.labelText,{style:t.labelStyle,useHtmlLabels:c},n):g.node().appendChild((0,i.DA)(t.labelText,t.labelStyle,void 0,!0));let f=h.getBBox();if((0,d._3)(n.flowchart.htmlLabels)){const e=h.children[0],t=(0,l.Ltv)(h);f=e.getBoundingClientRect(),t.attr("width",f.width),t.attr("height",f.height)}const u=0*t.padding,p=u/2,m=t.width<=f.width+u?f.width+u:t.width;t.width<=f.width+u?t.diff=(f.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,d.Rm.trace("Data ",t,JSON.stringify(t)),s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-m/2).attr("y",t.y-t.height/2-p).attr("width",m).attr("height",t.height+u);const{subGraphTitleTopMargin:w}=(0,a.O)(n);c?g.attr("transform",`translate(${t.x-f.width/2}, ${t.y-t.height/2+w})`):g.attr("transform",`translate(${t.x}, ${t.y-t.height/2+w})`);const y=s.node().getBBox();return t.width=y.width,t.height=y.height,t.intersect=function(e){return(0,i.nM)(t,e)},r}),"rect"),E=(0,d.K2)(((e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),a=0*t.padding,o=a/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2-o).attr("width",t.width+a).attr("height",t.height+a).attr("fill","none");const s=r.node().getBBox();return t.width=s.width,t.height=s.height,t.intersect=function(e){return(0,i.nM)(t,e)},n}),"noteGroup"),k={rect:S,roundedWithTitle:(0,d.K2)(((e,t)=>{const n=(0,d.D7)(),r=e.insert("g").attr("class",t.classes).attr("id",t.id),o=r.insert("rect",":first-child"),s=r.insert("g").attr("class","cluster-label"),c=r.append("rect"),g=s.node().appendChild((0,i.DA)(t.labelText,t.labelStyle,void 0,!0));let h=g.getBBox();if((0,d._3)(n.flowchart.htmlLabels)){const e=g.children[0],t=(0,l.Ltv)(g);h=e.getBoundingClientRect(),t.attr("width",h.width),t.attr("height",h.height)}h=g.getBBox();const f=0*t.padding,u=f/2,p=t.width<=h.width+t.padding?h.width+t.padding:t.width;t.width<=h.width+t.padding?t.diff=(h.width+0*t.padding-t.width)/2:t.diff=-t.padding/2,o.attr("class","outer").attr("x",t.x-p/2-u).attr("y",t.y-t.height/2-u).attr("width",p+f).attr("height",t.height+f),c.attr("class","inner").attr("x",t.x-p/2-u).attr("y",t.y-t.height/2-u+h.height-1).attr("width",p+f).attr("height",t.height+f-h.height-3);const{subGraphTitleTopMargin:m}=(0,a.O)(n);s.attr("transform",`translate(${t.x-h.width/2}, ${t.y-t.height/2-t.padding/3+((0,d._3)(n.flowchart.htmlLabels)?5:3)+m})`);const w=o.node().getBBox();return t.height=w.height,t.intersect=function(e){return(0,i.nM)(t,e)},r}),"roundedWithTitle"),noteGroup:E,divider:(0,d.K2)(((e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),a=0*t.padding,o=a/2;r.attr("class","divider").attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2).attr("width",t.width+a).attr("height",t.height+a);const s=r.node().getBBox();return t.width=s.width,t.height=s.height,t.diff=-t.padding/2,t.intersect=function(e){return(0,i.nM)(t,e)},n}),"divider")},X={},K=(0,d.K2)(((e,t)=>{d.Rm.trace("Inserting cluster");const n=t.shape||"rect";X[t.id]=k[n](e,t)}),"insertCluster"),M=(0,d.K2)((()=>{X={}}),"clear"),L=(0,d.K2)((async(e,t,n,r,o,s)=>{d.Rm.info("Graph in recursive render: XXX",h.M(t),o);const l=t.graph().rankdir;d.Rm.trace("Dir in recursive render - dir:",l);const c=e.insert("g").attr("class","root");t.nodes()?d.Rm.info("Recursive render XXX",t.nodes()):d.Rm.info("No nodes found for",t),t.edges().length>0&&d.Rm.trace("Recursive edges",t.edge(t.edges()[0]));const u=c.insert("g").attr("class","clusters"),p=c.insert("g").attr("class","edgePaths"),m=c.insert("g").attr("class","edgeLabels"),w=c.insert("g").attr("class","nodes");await Promise.all(t.nodes().map((async function(e){const a=t.node(e);if(void 0!==o){const n=JSON.parse(JSON.stringify(o.clusterData));d.Rm.info("Setting data for cluster XXX (",e,") ",n,o),t.setNode(o.id,n),t.parent(e)||(d.Rm.trace("Setting parent",e,o.id),t.setParent(e,o.id,n))}if(d.Rm.info("(Insert) Node XXX"+e+": "+JSON.stringify(t.node(e))),a?.clusterNode){d.Rm.info("Cluster identified",e,a.width,t.node(e));const{ranksep:o,nodesep:l}=t.graph();a.graph.setGraph({...a.graph.graph(),ranksep:o,nodesep:l});const c=await L(w,a.graph,n,r,t.node(e),s),g=c.elem;(0,i.lC)(a,g),a.diff=c.diff||0,d.Rm.info("Node bounds (abc123)",e,a,a.width,a.x,a.y),(0,i.U7)(g,a),d.Rm.warn("Recursive render complete ",g,a)}else t.children(e).length>0?(d.Rm.info("Cluster - the non recursive path XXX",e,a.id,a,t),d.Rm.info(v(a.id,t)),f[a.id]={id:v(a.id,t),node:a}):(d.Rm.info("Node - the non recursive path",e,a.id,a),await(0,i.on)(w,t.node(e),{config:s,dir:l}))}))),t.edges().forEach((async function(e){const n=t.edge(e.v,e.w,e.name);d.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),d.Rm.info("Edge "+e.v+" -> "+e.w+": ",e," ",JSON.stringify(t.edge(e))),d.Rm.info("Fix",f,"ids:",e.v,e.w,"Translating: ",f[e.v],f[e.w]),await(0,i.jP)(m,n)})),t.edges().forEach((function(e){d.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e))})),d.Rm.info("Graph before layout:",JSON.stringify(h.M(t))),d.Rm.info("#############################################"),d.Rm.info("### Layout ###"),d.Rm.info("#############################################"),d.Rm.info(t),(0,g.Zp)(t),d.Rm.info("Graph after layout:",JSON.stringify(h.M(t)));let y=0;const{subGraphTitleTotalMargin:R}=(0,a.O)(s);return T(t).forEach((function(e){const n=t.node(e);d.Rm.info("Position "+e+": "+JSON.stringify(t.node(e))),d.Rm.info("Position "+e+": ("+n.x,","+n.y,") width: ",n.width," height: ",n.height),n?.clusterNode?(n.y+=R,(0,i.U_)(n)):t.children(e).length>0?(n.height+=R,K(u,n),f[n.id].node=n):(n.y+=R/2,(0,i.U_)(n))})),t.edges().forEach((function(e){const a=t.edge(e);d.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(a),a),a.points.forEach((e=>e.y+=R/2));const o=(0,i.Jo)(p,e,a,f,n,t,r);(0,i.T_)(a,o)})),t.nodes().forEach((function(e){const n=t.node(e);d.Rm.info(e,n.type,n.diff),"group"===n.type&&(y=n.diff)})),{elem:c,diff:y}}),"recursiveRender"),B=(0,d.K2)((async(e,t,n,r,a)=>{(0,i.g0)(e,n,r,a),(0,i.IU)(),(0,i.gh)(),M(),m(),d.Rm.warn("Graph at first:",JSON.stringify(h.M(t))),N(t),d.Rm.warn("Graph after:",JSON.stringify(h.M(t)));const o=(0,d.D7)();await L(e,t,r,a,void 0,o)}),"render"),O=(0,d.K2)((e=>d.Y2.sanitizeText(e,(0,d.D7)())),"sanitizeText"),A={dividerMargin:10,padding:5,textHeight:10,curve:void 0},I=(0,d.K2)((function(e,t,n,i){d.Rm.info("keys:",[...e.keys()]),d.Rm.info(e),e.forEach((function(e){const r={shape:"rect",id:e.id,domId:e.domId,labelText:O(e.id),labelStyle:"",style:"fill: none; stroke: black",padding:(0,d.D7)().flowchart?.padding??(0,d.D7)().class?.padding};t.setNode(e.id,r),G(e.classes,t,n,i,e.id),d.Rm.info("setNode",r)}))}),"addNamespaces"),G=(0,d.K2)((function(e,t,n,i,r){d.Rm.info("keys:",[...e.keys()]),d.Rm.info(e),[...e.values()].filter((e=>e.parent===r)).forEach((function(e){const n=e.cssClasses.join(" "),a=(0,s.sM)(e.styles),o=e.label??e.id,l={labelStyle:a.labelStyle,shape:"class_box",labelText:O(o),classData:e,rx:0,ry:0,class:n,style:a.style,id:e.id,domId:e.domId,tooltip:i.db.getTooltip(e.id,r)||"",haveCallback:e.haveCallback,link:e.link,width:"group"===e.type?500:void 0,type:e.type,padding:(0,d.D7)().flowchart?.padding??(0,d.D7)().class?.padding};t.setNode(e.id,l),r&&t.setParent(e.id,r),d.Rm.info("setNode",l)}))}),"addClasses"),J=(0,d.K2)((function(e,t,n,i){d.Rm.info(e),e.forEach((function(e,r){const a=e,o=a.text,c={labelStyle:"",shape:"note",labelText:O(o),noteData:a,rx:0,ry:0,class:"",style:"",id:a.id,domId:a.id,tooltip:"",type:"note",padding:(0,d.D7)().flowchart?.padding??(0,d.D7)().class?.padding};if(t.setNode(a.id,c),d.Rm.info("setNode",c),!a.class||!i.has(a.class))return;const g=n+r,h={id:`edgeNote${g}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:(0,s.Ib)(A.curve,l.lUB)};t.setEdge(a.id,a.class,h,g)}))}),"addNotes"),_=(0,d.K2)((function(e,t){const n=(0,d.D7)().flowchart;let i=0;e.forEach((function(e){i++;const r={classes:"relation",pattern:1==e.relation.lineType?"dashed":"solid",id:(0,s.rY)(e.id1,e.id2,{prefix:"id",counter:i}),arrowhead:"arrow_open"===e.type?"none":"normal",startLabelRight:"none"===e.relationTitle1?"":e.relationTitle1,endLabelLeft:"none"===e.relationTitle2?"":e.relationTitle2,arrowTypeStart:F(e.relation.type1),arrowTypeEnd:F(e.relation.type2),style:"fill:none",labelStyle:"",curve:(0,s.Ib)(n?.curve,l.lUB)};if(d.Rm.info(r,e),void 0!==e.style){const t=(0,s.sM)(e.style);r.style=t.style,r.labelStyle=t.labelStyle}e.text=e.title,void 0===e.text?void 0!==e.style&&(r.arrowheadStyle="fill: #333"):(r.arrowheadStyle="fill: #333",r.labelpos="c",(0,d.D7)().flowchart?.htmlLabels??(0,d.D7)().htmlLabels?(r.labelType="html",r.label=''+e.text+""):(r.labelType="text",r.label=e.text.replace(d.Y2.lineBreakRegex,"\n"),void 0===e.style&&(r.style=r.style||"stroke: #333; stroke-width: 1.5px;fill:none"),r.labelStyle=r.labelStyle.replace("color:","fill:"))),t.setEdge(e.id1,e.id2,r,i)}))}),"addRelations"),P=(0,d.K2)((function(e){A={...A,...e}}),"setConf"),$=(0,d.K2)((async function(e,t,n,i){d.Rm.info("Drawing class - ",t);const r=(0,d.D7)().flowchart??(0,d.D7)().class,a=(0,d.D7)().securityLevel;d.Rm.info("config:",r);const o=r?.nodeSpacing??50,g=r?.rankSpacing??50,h=new c.T({multigraph:!0,compound:!0}).setGraph({rankdir:i.db.getDirection(),nodesep:o,ranksep:g,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}})),f=i.db.getNamespaces(),u=i.db.getClasses(),p=i.db.getRelations(),m=i.db.getNotes();let w;d.Rm.info(p),I(f,h,t,i),G(u,h,t,i),_(p,h),J(m,h,p.length+1,u),"sandbox"===a&&(w=(0,l.Ltv)("#i"+t));const y="sandbox"===a?(0,l.Ltv)(w.nodes()[0].contentDocument.body):(0,l.Ltv)("body"),R=y.select(`[id="${t}"]`),b=y.select("#"+t+" g");if(await B(b,h,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",t),s._K.insertTitle(R,"classTitleText",r?.titleTopMargin??5,i.db.getDiagramTitle()),(0,d.ot)(h,R,r?.diagramPadding,r?.useMaxWidth),!r?.htmlLabels){const e="sandbox"===a?w.nodes()[0].contentDocument:document,n=e.querySelectorAll('[id="'+t+'"] .edgeLabel .label');for(const t of n){const n=t.getBBox(),i=e.createElementNS("http://www.w3.org/2000/svg","rect");i.setAttribute("rx",0),i.setAttribute("ry",0),i.setAttribute("width",n.width),i.setAttribute("height",n.height),t.insertBefore(i,t.firstChild)}}}),"draw");function F(e){let t;switch(e){case 0:t="aggregation";break;case 1:t="extension";break;case 2:t="composition";break;case 3:t="dependency";break;case 4:t="lollipop";break;default:t="none"}return t}(0,d.K2)(F,"getArrowMarker");var j={setConf:P,draw:$},U={parser:r._$,db:r.z2,renderer:j,styles:r.tM,init:(0,d.K2)((e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute,r.z2.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/278-82f9d9ad.chunk.min.js b/themes/hugo-geekdoc/static/js/278-82f9d9ad.chunk.min.js deleted file mode 100644 index 8136d20c2..000000000 --- a/themes/hugo-geekdoc/static/js/278-82f9d9ad.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[278],{2278:(e,c,k)=>{k.d(c,{createInfoServices:()=>s.v});var s=k(7010);k(8546)}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/3-bc686a20.chunk.min.js b/themes/hugo-geekdoc/static/js/3-bc686a20.chunk.min.js new file mode 100644 index 000000000..94d2e4585 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/3-bc686a20.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[3],{4868:(t,e,s)=>{s.d(e,{A:()=>r,P:()=>o});var i=s(32),n=s(4852),r=(0,i.K2)(((t,e)=>{let s;return"sandbox"===e&&(s=(0,n.Ltv)("#i"+t)),("sandbox"===e?(0,n.Ltv)(s.nodes()[0].contentDocument.body):(0,n.Ltv)("body")).select(`[id="${t}"]`)}),"getDiagramElement"),o=(0,i.K2)(((t,e,s,n)=>{t.attr("class",s);const{width:r,height:o,x:c,y:h}=a(t,e);(0,i.a$)(t,o,r,n);const d=l(c,h,r,o,e);t.attr("viewBox",d),i.Rm.debug(`viewBox configured: ${d} with padding: ${e}`)}),"setupViewPortForSVG"),a=(0,i.K2)(((t,e)=>{const s=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:s.width+2*e,height:s.height+2*e,x:s.x,y:s.y}}),"calculateDimensionsWithPadding"),l=(0,i.K2)(((t,e,s,i,n)=>`${t-n} ${e-n} ${s} ${i}`),"createViewBox")},1003:(t,e,s)=>{s.d(e,{Zk:()=>l,iP:()=>Bt,q7:()=>w,tM:()=>Ft});var i=s(4868),n=s(5388),r=s(5522),o=s(32),a=function(){var t=(0,o.K2)((function(t,e,s,i){for(s=s||{},i=t.length;i--;s[t[i]]=e);return s}),"o"),e=[1,2],s=[1,3],i=[1,4],n=[2,4],r=[1,9],a=[1,11],l=[1,16],c=[1,17],h=[1,18],d=[1,19],u=[1,32],p=[1,20],y=[1,21],g=[1,22],f=[1,23],m=[1,24],S=[1,26],_=[1,27],b=[1,28],T=[1,29],k=[1,30],E=[1,31],x=[1,34],D=[1,35],C=[1,36],$=[1,37],v=[1,33],L=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],I=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],A=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],K={trace:(0,o.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"--\x3e":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,style:42,STYLE_IDS:43,STYLEDEF_STYLEOPTS:44,class:45,CLASSENTITY_IDS:46,STYLECLASS:47,direction_tb:48,direction_bt:49,direction_rl:50,direction_lr:51,eol:52,";":53,EDGE_STATE:54,STYLE_SEPARATOR:55,left_of:56,right_of:57,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"--\x3e",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"style",43:"STYLE_IDS",44:"STYLEDEF_STYLEOPTS",45:"class",46:"CLASSENTITY_IDS",47:"STYLECLASS",48:"direction_tb",49:"direction_bt",50:"direction_rl",51:"direction_lr",53:";",54:"EDGE_STATE",55:"STYLE_SEPARATOR",56:"left_of",57:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[52,1],[52,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:(0,o.K2)((function(t,e,s,i,n,r,o){var a=r.length-1;switch(n){case 3:return i.setRootDoc(r[a]),r[a];case 4:this.$=[];break;case 5:"nl"!=r[a]&&(r[a-1].push(r[a]),this.$=r[a-1]);break;case 6:case 7:case 12:this.$=r[a];break;case 8:this.$="nl";break;case 13:const t=r[a-1];t.description=i.trimColon(r[a]),this.$=t;break;case 14:this.$={stmt:"relation",state1:r[a-2],state2:r[a]};break;case 15:const e=i.trimColon(r[a]);this.$={stmt:"relation",state1:r[a-3],state2:r[a-1],description:e};break;case 19:this.$={stmt:"state",id:r[a-3],type:"default",description:"",doc:r[a-1]};break;case 20:var l=r[a],c=r[a-2].trim();if(r[a].match(":")){var h=r[a].split(":");l=h[0],c=[c,h[1]]}this.$={stmt:"state",id:l,type:"default",description:c};break;case 21:this.$={stmt:"state",id:r[a-3],type:"default",description:r[a-5],doc:r[a-1]};break;case 22:this.$={stmt:"state",id:r[a],type:"fork"};break;case 23:this.$={stmt:"state",id:r[a],type:"join"};break;case 24:this.$={stmt:"state",id:r[a],type:"choice"};break;case 25:this.$={stmt:"state",id:i.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:r[a-1].trim(),note:{position:r[a-2].trim(),text:r[a].trim()}};break;case 29:this.$=r[a].trim(),i.setAccTitle(this.$);break;case 30:case 31:this.$=r[a].trim(),i.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:r[a-1].trim(),classes:r[a].trim()};break;case 34:this.$={stmt:"style",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 35:this.$={stmt:"applyClass",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 36:i.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 37:i.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 38:i.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 39:i.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 42:case 43:this.$={stmt:"state",id:r[a].trim(),type:"default",description:""};break;case 44:case 45:this.$={stmt:"state",id:r[a-2].trim(),classes:[r[a].trim()],type:"default",description:""}}}),"anonymous"),table:[{3:1,4:e,5:s,6:i},{1:[3]},{3:5,4:e,5:s,6:i},{3:6,4:e,5:s,6:i},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],n,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:r,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:c,19:h,22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,5]),{9:38,10:12,11:13,12:14,13:15,16:l,17:c,19:h,22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,7]),t(L,[2,8]),t(L,[2,9]),t(L,[2,10]),t(L,[2,11]),t(L,[2,12],{14:[1,39],15:[1,40]}),t(L,[2,16]),{18:[1,41]},t(L,[2,18],{20:[1,42]}),{23:[1,43]},t(L,[2,22]),t(L,[2,23]),t(L,[2,24]),t(L,[2,25]),{30:44,31:[1,45],56:[1,46],57:[1,47]},t(L,[2,28]),{34:[1,48]},{36:[1,49]},t(L,[2,31]),{39:[1,50],41:[1,51]},{43:[1,52]},{46:[1,53]},t(I,[2,42],{55:[1,54]}),t(I,[2,43],{55:[1,55]}),t(L,[2,36]),t(L,[2,37]),t(L,[2,38]),t(L,[2,39]),t(L,[2,6]),t(L,[2,13]),{13:56,24:u,54:v},t(L,[2,17]),t(A,n,{7:57}),{24:[1,58]},{24:[1,59]},{23:[1,60]},{24:[2,46]},{24:[2,47]},t(L,[2,29]),t(L,[2,30]),{40:[1,61]},{40:[1,62]},{44:[1,63]},{47:[1,64]},{24:[1,65]},{24:[1,66]},t(L,[2,14],{14:[1,67]}),{4:r,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:c,19:h,21:[1,68],22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,20],{20:[1,69]}),{31:[1,70]},{24:[1,71]},t(L,[2,32]),t(L,[2,33]),t(L,[2,34]),t(L,[2,35]),t(I,[2,44]),t(I,[2,45]),t(L,[2,15]),t(L,[2,19]),t(A,n,{7:72}),t(L,[2,26]),t(L,[2,27]),{4:r,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:c,19:h,21:[1,73],22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,21])],defaultActions:{5:[2,1],6:[2,2],46:[2,46],47:[2,47]},parseError:(0,o.K2)((function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)}),"parseError"),parse:(0,o.K2)((function(t){var e=this,s=[0],i=[],n=[null],r=[],a=this.table,l="",c=0,h=0,d=0,u=r.slice.call(arguments,1),p=Object.create(this.lexer),y={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(y.yy[g]=this.yy[g]);p.setInput(t,y.yy),y.yy.lexer=p,y.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;r.push(f);var m=p.options&&p.options.ranges;function S(){var t;return"number"!=typeof(t=i.pop()||p.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,o.K2)((function(t){s.length=s.length-2*t,n.length=n.length-t,r.length=r.length-t}),"popStack"),(0,o.K2)(S,"lex");for(var _,b,T,k,E,x,D,C,$,v={};;){if(T=s[s.length-1],this.defaultActions[T]?k=this.defaultActions[T]:(null==_&&(_=S()),k=a[T]&&a[T][_]),void 0===k||!k.length||!k[0]){var L;for(x in $=[],a[T])this.terminals_[x]&&x>2&&$.push("'"+this.terminals_[x]+"'");L=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+$.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==_?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(L,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:f,expected:$})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+T+", token: "+_);switch(k[0]){case 1:s.push(_),n.push(p.yytext),r.push(p.yylloc),s.push(k[1]),_=null,b?(_=b,b=null):(h=p.yyleng,l=p.yytext,c=p.yylineno,f=p.yylloc,d>0&&d--);break;case 2:if(D=this.productions_[k[1]][1],v.$=n[n.length-D],v._$={first_line:r[r.length-(D||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(D||1)].first_column,last_column:r[r.length-1].last_column},m&&(v._$.range=[r[r.length-(D||1)].range[0],r[r.length-1].range[1]]),void 0!==(E=this.performAction.apply(v,[l,h,c,y.yy,k[1],n,r].concat(u))))return E;D&&(s=s.slice(0,-1*D*2),n=n.slice(0,-1*D),r=r.slice(0,-1*D)),s.push(this.productions_[k[1]][0]),n.push(v.$),r.push(v._$),C=a[s[s.length-2]][s[s.length-1]],s.push(C);break;case 3:return!0}}return!0}),"parse")},R=function(){return{EOF:1,parseError:(0,o.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,o.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,o.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,o.K2)((function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,o.K2)((function(){return this._more=!0,this}),"more"),reject:(0,o.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,o.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,o.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,o.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,o.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,o.K2)((function(t,e){var s,i,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var r in n)this[r]=n[r];return!1}return!1}),"test_match"),next:(0,o.K2)((function(){if(this.done)return this.EOF;var t,e,s,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),r=0;re[0].length)){if(e=s,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,n[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,o.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,o.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,o.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,o.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,o.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,o.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,o.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,o.K2)((function(t,e,s,i){switch(s){case 0:return 41;case 1:case 42:return 48;case 2:case 43:return 49;case 3:case 44:return 50;case 4:case 45:return 51;case 5:case 6:case 8:case 9:case 10:case 11:case 54:case 56:case 62:break;case 7:case 77:return 5;case 12:case 32:return this.pushState("SCALE"),17;case 13:case 33:return 18;case 14:case 20:case 34:case 49:case 52:this.popState();break;case 15:return this.begin("acc_title"),33;case 16:return this.popState(),"acc_title_value";case 17:return this.begin("acc_descr"),35;case 18:return this.popState(),"acc_descr_value";case 19:this.begin("acc_descr_multiline");break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),38;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 24:return this.popState(),this.pushState("CLASSDEFID"),39;case 25:return this.popState(),40;case 26:return this.pushState("CLASS"),45;case 27:return this.popState(),this.pushState("CLASS_STYLE"),46;case 28:return this.popState(),47;case 29:return this.pushState("STYLE"),42;case 30:return this.popState(),this.pushState("STYLEDEF_STYLES"),43;case 31:return this.popState(),44;case 35:this.pushState("STATE");break;case 36:case 39:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),25;case 37:case 40:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),26;case 38:case 41:return this.popState(),e.yytext=e.yytext.slice(0,-10).trim(),27;case 46:this.pushState("STATE_STRING");break;case 47:return this.pushState("STATE_ID"),"AS";case 48:case 64:return this.popState(),"ID";case 50:return"STATE_DESCR";case 51:return 19;case 53:return this.popState(),this.pushState("struct"),20;case 55:return this.popState(),21;case 57:return this.begin("NOTE"),29;case 58:return this.popState(),this.pushState("NOTE_ID"),56;case 59:return this.popState(),this.pushState("NOTE_ID"),57;case 60:this.popState(),this.pushState("FLOATING_NOTE");break;case 61:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 63:return"NOTE_TEXT";case 65:return this.popState(),this.pushState("NOTE_TEXT"),24;case 66:return this.popState(),e.yytext=e.yytext.substr(2).trim(),31;case 67:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),31;case 68:case 69:return 6;case 70:return 16;case 71:return 54;case 72:return 24;case 73:return e.yytext=e.yytext.trim(),14;case 74:return 15;case 75:return 28;case 76:return 55;case 78:return"INVALID"}}),"anonymous"),rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[9,10],inclusive:!1},struct:{rules:[9,10,22,26,29,35,42,43,44,45,54,55,56,57,71,72,73,74,75],inclusive:!1},FLOATING_NOTE_ID:{rules:[64],inclusive:!1},FLOATING_NOTE:{rules:[61,62,63],inclusive:!1},NOTE_TEXT:{rules:[66,67],inclusive:!1},NOTE_ID:{rules:[65],inclusive:!1},NOTE:{rules:[58,59,60],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[31],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[30],inclusive:!1},CLASS_STYLE:{rules:[28],inclusive:!1},CLASS:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[25],inclusive:!1},CLASSDEF:{rules:[23,24],inclusive:!1},acc_descr_multiline:{rules:[20,21],inclusive:!1},acc_descr:{rules:[18],inclusive:!1},acc_title:{rules:[16],inclusive:!1},SCALE:{rules:[13,14,33,34],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[48],inclusive:!1},STATE_STRING:{rules:[49,50],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[9,10,36,37,38,39,40,41,46,47,51,52,53],inclusive:!1},ID:{rules:[9,10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,10,11,12,15,17,19,22,26,29,32,35,53,57,68,69,70,71,72,73,74,76,77,78],inclusive:!0}}}}();function w(){this.yy={}}return K.lexer=R,(0,o.K2)(w,"Parser"),w.prototype=K,K.Parser=w,new w}();a.parser=a;var l=a,c="state",h="relation",d="default",u="divider",p="fill:none",y="fill: #333",g="text",f="normal",m="rect",S="rectWithTitle",_="divider",b="roundedWithTitle",T="statediagram",k=`${T}-state`,E="transition",x=`${E} note-edge`,D=`${T}-note`,C=`${T}-cluster`,$=`${T}-cluster-alt`,v="parent",L="note",I="----",A=`${I}${L}`,K=`${I}${v}`,R=(0,o.K2)(((t,e="TB")=>{if(!t.doc)return e;let s=e;for(const e of t.doc)"dir"===e.stmt&&(s=e.value);return s}),"getDir"),w={getClasses:(0,o.K2)((function(t,e){return e.db.extract(e.db.getRootDocV2()),e.db.getClasses()}),"getClasses"),draw:(0,o.K2)((async function(t,e,s,a){o.Rm.info("REF0:"),o.Rm.info("Drawing state diagram (v2)",e);const{securityLevel:l,state:c,layout:h}=(0,o.D7)();a.db.extract(a.db.getRootDocV2());const d=a.db.getData(),u=(0,i.A)(e,l);d.type=a.type,d.layoutAlgorithm=h,d.nodeSpacing=c?.nodeSpacing||50,d.rankSpacing=c?.rankSpacing||50,d.markers=["barb"],d.diagramId=e,await(0,n.XX)(d,u),r._K.insertTitle(u,"statediagramTitleText",c?.titleTopMargin??25,a.db.getDiagramTitle()),(0,i.P)(u,8,T,c?.useMaxWidth??!0)}),"draw"),getDir:R},O=new Map,N=0;function B(t="",e=0,s="",i=I){return`state-${t}${null!==s&&s.length>0?`${i}${s}`:""}-${e}`}(0,o.K2)(B,"stateDomId");var F=(0,o.K2)(((t,e,s,i,n,r,a,l)=>{o.Rm.trace("items",e),e.forEach((e=>{switch(e.stmt){case c:case d:z(t,e,s,i,n,r,a,l);break;case h:{z(t,e.state1,s,i,n,r,a,l),z(t,e.state2,s,i,n,r,a,l);const c={id:"edge"+N,start:e.state1.id,end:e.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:p,labelStyle:"",label:o.Y2.sanitizeText(e.description,(0,o.D7)()),arrowheadStyle:y,labelpos:"c",labelType:g,thickness:f,classes:E,look:a};n.push(c),N++}}}))}),"setupDoc"),P=(0,o.K2)(((t,e="TB")=>{let s=e;if(t.doc)for(const e of t.doc)"dir"===e.stmt&&(s=e.value);return s}),"getDir");function Y(t,e,s){if(!e.id||""===e.id||""===e.id)return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach((t=>{if(s.get(t)){const i=s.get(t);e.cssCompiledStyles=[...e.cssCompiledStyles,...i.styles]}})));const i=t.find((t=>t.id===e.id));i?Object.assign(i,e):t.push(e)}function G(t){return t?.classes?.join(" ")??""}function j(t){return t?.styles??[]}(0,o.K2)(Y,"insertOrUpdateNode"),(0,o.K2)(G,"getClassesFromDbInfo"),(0,o.K2)(j,"getStylesFromDbInfo");var z=(0,o.K2)(((t,e,s,i,n,r,a,l)=>{const c=e.id,h=s.get(c),T=G(h),E=j(h);if(o.Rm.info("dataFetcher parsedItem",e,h,E),"root"!==c){let s=m;!0===e.start?s="stateStart":!1===e.start&&(s="stateEnd"),e.type!==d&&(s=e.type),O.get(c)||O.set(c,{id:c,shape:s,description:o.Y2.sanitizeText(c,(0,o.D7)()),cssClasses:`${T} ${k}`,cssStyles:E});const h=O.get(c);e.description&&(Array.isArray(h.description)?(h.shape=S,h.description.push(e.description)):h.description?.length>0?(h.shape=S,h.description===c?h.description=[e.description]:h.description=[h.description,e.description]):(h.shape=m,h.description=e.description),h.description=o.Y2.sanitizeTextOrArray(h.description,(0,o.D7)())),1===h.description?.length&&h.shape===S&&("group"===h.type?h.shape=b:h.shape=m),!h.type&&e.doc&&(o.Rm.info("Setting cluster for XCX",c,P(e)),h.type="group",h.isGroup=!0,h.dir=P(e),h.shape=e.type===u?_:b,h.cssClasses=`${h.cssClasses} ${C} ${r?$:""}`);const I={labelStyle:"",shape:h.shape,label:h.description,cssClasses:h.cssClasses,cssCompiledStyles:[],cssStyles:h.cssStyles,id:c,dir:h.dir,domId:B(c,N),type:h.type,isGroup:"group"===h.type,padding:8,rx:10,ry:10,look:a};if(I.shape===_&&(I.label=""),t&&"root"!==t.id&&(o.Rm.trace("Setting node ",c," to be child of its parent ",t.id),I.parentId=t.id),I.centerLabel=!0,e.note){const t={labelStyle:"",shape:"note",label:e.note.text,cssClasses:D,cssStyles:[],cssCompilesStyles:[],id:c+A+"-"+N,domId:B(c,N,L),type:h.type,isGroup:"group"===h.type,padding:(0,o.D7)().flowchart.padding,look:a,position:e.note.position},s=c+K,r={labelStyle:"",shape:"noteGroup",label:e.note.text,cssClasses:h.cssClasses,cssStyles:[],id:c+K,domId:B(c,N,v),type:"group",isGroup:!0,padding:16,look:a,position:e.note.position};N++,r.id=s,t.parentId=s,Y(i,r,l),Y(i,t,l),Y(i,I,l);let d=c,u=t.id;"left of"===e.note.position&&(d=t.id,u=c),n.push({id:d+"-"+u,start:d,end:u,arrowhead:"none",arrowTypeEnd:"",style:p,labelStyle:"",classes:x,arrowheadStyle:y,labelpos:"c",labelType:g,thickness:f,look:a})}else Y(i,I,l)}e.doc&&(o.Rm.trace("Adding nodes children "),F(e,e.doc,s,i,n,!r,a,l))}),"dataFetcher"),U=(0,o.K2)((()=>{O.clear(),N=0}),"reset"),M="[*]",X="start",V=M,W="color",H="fill";function J(){return new Map}(0,o.K2)(J,"newClassesList");var q=[],Z=[],Q="LR",tt=[],et=J(),st=(0,o.K2)((()=>({relations:[],states:new Map,documents:{}})),"newDoc"),it={root:st()},nt=it.root,rt=0,ot=0,at=(0,o.K2)((t=>JSON.parse(JSON.stringify(t))),"clone"),lt=(0,o.K2)((t=>{o.Rm.info("Setting root doc",t),tt=t}),"setRootDoc"),ct=(0,o.K2)((()=>tt),"getRootDoc"),ht=(0,o.K2)(((t,e,s)=>{if(e.stmt===h)ht(t,e.state1,!0),ht(t,e.state2,!1);else if(e.stmt===c&&("[*]"===e.id?(e.id=s?t.id+"_start":t.id+"_end",e.start=s):e.id=e.id.trim()),e.doc){const t=[];let s,i=[];for(s=0;s0&&i.length>0){const s={stmt:c,id:(0,r.$C)(),type:"divider",doc:at(i)};t.push(at(s)),e.doc=t}e.doc.forEach((t=>ht(e,t,!0)))}}),"docTranslator"),dt=(0,o.K2)((()=>(ht({id:"root"},{id:"root",doc:tt},!0),{id:"root",doc:tt})),"getRootDocV2"),ut=(0,o.K2)((t=>{let e;e=t.doc?t.doc:t,o.Rm.info(e),yt(!0),o.Rm.info("Extract initial document:",e),e.forEach((t=>{switch(o.Rm.warn("Statement",t.stmt),t.stmt){case c:pt(t.id.trim(),t.type,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles);break;case h:xt(t.state1,t.state2,t.description);break;case"classDef":vt(t.id.trim(),t.classes);break;case"style":{const e=t.id.trim().split(","),s=t.styleClass.split(",");e.forEach((t=>{let e=gt(t);if(void 0===e){const s=t.trim();pt(s),e=gt(s)}e.styles=s.map((t=>t.replace(/;/g,"")?.trim()))}))}break;case"applyClass":It(t.id.trim(),t.styleClass)}}));const s=ft(),i=(0,o.D7)().look;U(),z(void 0,dt(),s,q,Z,!0,i,et),q.forEach((t=>{if(Array.isArray(t.label)){if(t.description=t.label.slice(1),t.isGroup&&t.description.length>0)throw new Error("Group nodes can only have label. Remove the additional description for node ["+t.id+"]");t.label=t.label[0]}}))}),"extract"),pt=(0,o.K2)((function(t,e=d,s=null,i=null,n=null,r=null,a=null,l=null){const c=t?.trim();if(nt.states.has(c)?(nt.states.get(c).doc||(nt.states.get(c).doc=s),nt.states.get(c).type||(nt.states.get(c).type=e)):(o.Rm.info("Adding state ",c,i),nt.states.set(c,{id:c,descriptions:[],type:e,doc:s,note:n,classes:[],styles:[],textStyles:[]})),i&&(o.Rm.info("Setting state description",c,i),"string"==typeof i&&Dt(c,i.trim()),"object"==typeof i&&i.forEach((t=>Dt(c,t.trim())))),n){const t=nt.states.get(c);t.note=n,t.note.text=o.Y2.sanitizeText(t.note.text,(0,o.D7)())}r&&(o.Rm.info("Setting state classes",c,r),("string"==typeof r?[r]:r).forEach((t=>It(c,t.trim())))),a&&(o.Rm.info("Setting state styles",c,a),("string"==typeof a?[a]:a).forEach((t=>At(c,t.trim())))),l&&(o.Rm.info("Setting state styles",c,a),("string"==typeof l?[l]:l).forEach((t=>Kt(c,t.trim()))))}),"addState"),yt=(0,o.K2)((function(t){q=[],Z=[],it={root:st()},nt=it.root,rt=0,et=J(),t||(0,o.IU)()}),"clear"),gt=(0,o.K2)((function(t){return nt.states.get(t)}),"getState"),ft=(0,o.K2)((function(){return nt.states}),"getStates"),mt=(0,o.K2)((function(){o.Rm.info("Documents = ",it)}),"logDocuments"),St=(0,o.K2)((function(){return nt.relations}),"getRelations");function _t(t=""){let e=t;return t===M&&(rt++,e=`${X}${rt}`),e}function bt(t="",e=d){return t===M?X:e}function Tt(t=""){let e=t;return t===V&&(e="end"+ ++rt),e}function kt(t="",e=d){return t===V?"end":e}function Et(t,e,s){let i=_t(t.id.trim()),n=bt(t.id.trim(),t.type),r=_t(e.id.trim()),a=bt(e.id.trim(),e.type);pt(i,n,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),pt(r,a,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),nt.relations.push({id1:i,id2:r,relationTitle:o.Y2.sanitizeText(s,(0,o.D7)())})}(0,o.K2)(_t,"startIdIfNeeded"),(0,o.K2)(bt,"startTypeIfNeeded"),(0,o.K2)(Tt,"endIdIfNeeded"),(0,o.K2)(kt,"endTypeIfNeeded"),(0,o.K2)(Et,"addRelationObjs");var xt=(0,o.K2)((function(t,e,s){if("object"==typeof t)Et(t,e,s);else{const i=_t(t.trim()),n=bt(t),r=Tt(e.trim()),a=kt(e);pt(i,n),pt(r,a),nt.relations.push({id1:i,id2:r,title:o.Y2.sanitizeText(s,(0,o.D7)())})}}),"addRelation"),Dt=(0,o.K2)((function(t,e){const s=nt.states.get(t),i=e.startsWith(":")?e.replace(":","").trim():e;s.descriptions.push(o.Y2.sanitizeText(i,(0,o.D7)()))}),"addDescription"),Ct=(0,o.K2)((function(t){return":"===t.substring(0,1)?t.substr(2).trim():t.trim()}),"cleanupLabel"),$t=(0,o.K2)((()=>"divider-id-"+ ++ot),"getDividerId"),vt=(0,o.K2)((function(t,e=""){et.has(t)||et.set(t,{id:t,styles:[],textStyles:[]});const s=et.get(t);null!=e&&e.split(",").forEach((t=>{const e=t.replace(/([^;]*);/,"$1").trim();if(RegExp(W).exec(t)){const t=e.replace(H,"bgFill").replace(W,H);s.textStyles.push(t)}s.styles.push(e)}))}),"addStyleClass"),Lt=(0,o.K2)((function(){return et}),"getClasses"),It=(0,o.K2)((function(t,e){t.split(",").forEach((function(t){let s=gt(t);if(void 0===s){const e=t.trim();pt(e),s=gt(e)}s.classes.push(e)}))}),"setCssClass"),At=(0,o.K2)((function(t,e){const s=gt(t);void 0!==s&&s.styles.push(e)}),"setStyle"),Kt=(0,o.K2)((function(t,e){const s=gt(t);void 0!==s&&s.textStyles.push(e)}),"setTextStyle"),Rt=(0,o.K2)((()=>Q),"getDirection"),wt=(0,o.K2)((t=>{Q=t}),"setDirection"),Ot=(0,o.K2)((t=>t&&":"===t[0]?t.substr(1).trim():t.trim()),"trimColon"),Nt=(0,o.K2)((()=>{const t=(0,o.D7)();return{nodes:q,edges:Z,other:{},config:t,direction:R(dt())}}),"getData"),Bt={getConfig:(0,o.K2)((()=>(0,o.D7)().state),"getConfig"),getData:Nt,addState:pt,clear:yt,getState:gt,getStates:ft,getRelations:St,getClasses:Lt,getDirection:Rt,addRelation:xt,getDividerId:$t,setDirection:wt,cleanupLabel:Ct,lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},logDocuments:mt,getRootDoc:ct,setRootDoc:lt,getRootDocV2:dt,extract:ut,trimColon:Ot,getAccTitle:o.iN,setAccTitle:o.SV,getAccDescription:o.m7,setAccDescription:o.EI,addStyleClass:vt,setCssClass:It,addDescription:Dt,setDiagramTitle:o.ke,getDiagramTitle:o.ab},Ft=(0,o.K2)((t=>`\ndefs #statediagram-barbEnd {\n fill: ${t.transitionColor};\n stroke: ${t.transitionColor};\n }\ng.stateGroup text {\n fill: ${t.nodeBorder};\n stroke: none;\n font-size: 10px;\n}\ng.stateGroup text {\n fill: ${t.textColor};\n stroke: none;\n font-size: 10px;\n\n}\ng.stateGroup .state-title {\n font-weight: bolder;\n fill: ${t.stateLabelColor};\n}\n\ng.stateGroup rect {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n}\n\ng.stateGroup line {\n stroke: ${t.lineColor};\n stroke-width: 1;\n}\n\n.transition {\n stroke: ${t.transitionColor};\n stroke-width: 1;\n fill: none;\n}\n\n.stateGroup .composit {\n fill: ${t.background};\n border-bottom: 1px\n}\n\n.stateGroup .alt-composit {\n fill: #e0e0e0;\n border-bottom: 1px\n}\n\n.state-note {\n stroke: ${t.noteBorderColor};\n fill: ${t.noteBkgColor};\n\n text {\n fill: ${t.noteTextColor};\n stroke: none;\n font-size: 10px;\n }\n}\n\n.stateLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ${t.mainBkg};\n opacity: 0.5;\n}\n\n.edgeLabel .label rect {\n fill: ${t.labelBackgroundColor};\n opacity: 0.5;\n}\n.edgeLabel {\n background-color: ${t.edgeLabelBackground};\n p {\n background-color: ${t.edgeLabelBackground};\n }\n rect {\n opacity: 0.5;\n background-color: ${t.edgeLabelBackground};\n fill: ${t.edgeLabelBackground};\n }\n text-align: center;\n}\n.edgeLabel .label text {\n fill: ${t.transitionLabelColor||t.tertiaryTextColor};\n}\n.label div .edgeLabel {\n color: ${t.transitionLabelColor||t.tertiaryTextColor};\n}\n\n.stateLabel text {\n fill: ${t.stateLabelColor};\n font-size: 10px;\n font-weight: bold;\n}\n\n.node circle.state-start {\n fill: ${t.specialStateColor};\n stroke: ${t.specialStateColor};\n}\n\n.node .fork-join {\n fill: ${t.specialStateColor};\n stroke: ${t.specialStateColor};\n}\n\n.node circle.state-end {\n fill: ${t.innerEndBackground};\n stroke: ${t.background};\n stroke-width: 1.5\n}\n.end-state-inner {\n fill: ${t.compositeBackground||t.background};\n // stroke: ${t.background};\n stroke-width: 1.5\n}\n\n.node rect {\n fill: ${t.stateBkg||t.mainBkg};\n stroke: ${t.stateBorder||t.nodeBorder};\n stroke-width: 1px;\n}\n.node polygon {\n fill: ${t.mainBkg};\n stroke: ${t.stateBorder||t.nodeBorder};;\n stroke-width: 1px;\n}\n#statediagram-barbEnd {\n fill: ${t.lineColor};\n}\n\n.statediagram-cluster rect {\n fill: ${t.compositeTitleBackground};\n stroke: ${t.stateBorder||t.nodeBorder};\n stroke-width: 1px;\n}\n\n.cluster-label, .nodeLabel {\n color: ${t.stateLabelColor};\n // line-height: 1;\n}\n\n.statediagram-cluster rect.outer {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state .divider {\n stroke: ${t.stateBorder||t.nodeBorder};\n}\n\n.statediagram-state .title-state {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-cluster.statediagram-cluster .inner {\n fill: ${t.compositeBackground||t.background};\n}\n.statediagram-cluster.statediagram-cluster-alt .inner {\n fill: ${t.altBackground?t.altBackground:"#efefef"};\n}\n\n.statediagram-cluster .inner {\n rx:0;\n ry:0;\n}\n\n.statediagram-state rect.basic {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state rect.divider {\n stroke-dasharray: 10,10;\n fill: ${t.altBackground?t.altBackground:"#efefef"};\n}\n\n.note-edge {\n stroke-dasharray: 5;\n}\n\n.statediagram-note rect {\n fill: ${t.noteBkgColor};\n stroke: ${t.noteBorderColor};\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n.statediagram-note rect {\n fill: ${t.noteBkgColor};\n stroke: ${t.noteBorderColor};\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n\n.statediagram-note text {\n fill: ${t.noteTextColor};\n}\n\n.statediagram-note .nodeLabel {\n color: ${t.noteTextColor};\n}\n.statediagram .edgeLabel {\n color: red; // ${t.noteTextColor};\n}\n\n#dependencyStart, #dependencyEnd {\n fill: ${t.lineColor};\n stroke: ${t.lineColor};\n stroke-width: 1;\n}\n\n.statediagramTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n}\n`),"getStyles")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/300-19c1a4f9.chunk.min.js b/themes/hugo-geekdoc/static/js/300-19c1a4f9.chunk.min.js deleted file mode 100644 index ad96598f8..000000000 --- a/themes/hugo-geekdoc/static/js/300-19c1a4f9.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[300],{7375:function(t){t.exports=function(){"use strict";return function(t,e){var n=e.prototype,i=n.format;n.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return i.bind(this)(t);var s=this.$utils(),r=(t||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(t){switch(t){case"Q":return Math.ceil((e.$M+1)/3);case"Do":return n.ordinal(e.$D);case"gggg":return e.weekYear();case"GGGG":return e.isoWeekYear();case"wo":return n.ordinal(e.week(),"W");case"w":case"ww":return s.s(e.week(),"w"===t?1:2,"0");case"W":case"WW":return s.s(e.isoWeek(),"W"===t?1:2,"0");case"k":case"kk":return s.s(String(0===e.$H?24:e.$H),"k"===t?1:2,"0");case"X":return Math.floor(e.$d.getTime()/1e3);case"x":return e.$d.getTime();case"z":return"["+e.offsetName()+"]";case"zzz":return"["+e.offsetName("long")+"]";default:return t}}));return i.bind(this)(r)}}}()},445:function(t){t.exports=function(){"use strict";var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},e=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d\d/,i=/\d\d?/,s=/\d*[^-_:/,()\s\d]+/,r={},a=function(t){return(t=+t)+(t>68?1900:2e3)},o=function(t){return function(e){this[t]=+e}},c=[/[+-]\d\d:?(\d\d)?|Z/,function(t){(this.zone||(this.zone={})).offset=function(t){if(!t)return 0;if("Z"===t)return 0;var e=t.match(/([+-]|\d\d)/g),n=60*e[1]+(+e[2]||0);return 0===n?0:"+"===e[0]?-n:n}(t)}],l=function(t){var e=r[t];return e&&(e.indexOf?e:e.s.concat(e.f))},d=function(t,e){var n,i=r.meridiem;if(i){for(var s=1;s<=24;s+=1)if(t.indexOf(i(s,0,e))>-1){n=s>12;break}}else n=t===(e?"pm":"PM");return n},u={A:[s,function(t){this.afternoon=d(t,!1)}],a:[s,function(t){this.afternoon=d(t,!0)}],S:[/\d/,function(t){this.milliseconds=100*+t}],SS:[n,function(t){this.milliseconds=10*+t}],SSS:[/\d{3}/,function(t){this.milliseconds=+t}],s:[i,o("seconds")],ss:[i,o("seconds")],m:[i,o("minutes")],mm:[i,o("minutes")],H:[i,o("hours")],h:[i,o("hours")],HH:[i,o("hours")],hh:[i,o("hours")],D:[i,o("day")],DD:[n,o("day")],Do:[s,function(t){var e=r.ordinal,n=t.match(/\d+/);if(this.day=n[0],e)for(var i=1;i<=31;i+=1)e(i).replace(/\[|\]/g,"")===t&&(this.day=i)}],M:[i,o("month")],MM:[n,o("month")],MMM:[s,function(t){var e=l("months"),n=(l("monthsShort")||e.map((function(t){return t.slice(0,3)}))).indexOf(t)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[s,function(t){var e=l("months").indexOf(t)+1;if(e<1)throw new Error;this.month=e%12||e}],Y:[/[+-]?\d+/,o("year")],YY:[n,function(t){this.year=a(t)}],YYYY:[/\d{4}/,o("year")],Z:c,ZZ:c};function h(n){var i,s;i=n,s=r&&r.formats;for(var a=(n=i.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(e,n,i){var r=i&&i.toUpperCase();return n||s[i]||t[i]||s[r].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(t,e,n){return e||n.slice(1)}))}))).match(e),o=a.length,c=0;c-1)return new Date(("X"===e?1e3:1)*t);var i=h(e)(t),s=i.year,r=i.month,a=i.day,o=i.hours,c=i.minutes,l=i.seconds,d=i.milliseconds,u=i.zone,f=new Date,y=a||(s||r?1:f.getDate()),k=s||f.getFullYear(),m=0;s&&!r||(m=r>0?r-1:f.getMonth());var p=o||0,g=c||0,b=l||0,T=d||0;return u?new Date(Date.UTC(k,m,y,p,g,b,T+60*u.offset*1e3)):n?new Date(Date.UTC(k,m,y,p,g,b,T)):new Date(k,m,y,p,g,b,T)}catch(t){return new Date("")}}(e,o,i),this.init(),u&&!0!==u&&(this.$L=this.locale(u).$L),d&&e!=this.format(o)&&(this.$d=new Date("")),r={}}else if(o instanceof Array)for(var f=o.length,y=1;y<=f;y+=1){a[1]=o[y-1];var k=n.apply(this,a);if(k.isValid()){this.$d=k.$d,this.$L=k.$L,this.init();break}y===f&&(this.$d=new Date(""))}else s.call(this,t)}}}()},8313:function(t){t.exports=function(){"use strict";var t="day";return function(e,n,i){var s=function(e){return e.add(4-e.isoWeekday(),t)},r=n.prototype;r.isoWeekYear=function(){return s(this).year()},r.isoWeek=function(e){if(!this.$utils().u(e))return this.add(7*(e-this.isoWeek()),t);var n,r,a,o=s(this),c=(n=this.isoWeekYear(),a=4-(r=(this.$u?i.utc:i)().year(n).startOf("year")).isoWeekday(),r.isoWeekday()>4&&(a+=7),r.add(a,t));return o.diff(c,"week")+1},r.isoWeekday=function(t){return this.$utils().u(t)?this.day()||7:this.day(this.day()%7?t:t-7)};var a=r.startOf;r.startOf=function(t,e){var n=this.$utils(),i=!!n.u(e)||e;return"isoweek"===n.p(t)?i?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):a.bind(this)(t,e)}}}()},9300:(t,e,n)=>{"use strict";n.d(e,{diagram:()=>Yt});var i=n(7323),s=n(798),r=n(6750),a=n(4353),o=n(8313),c=n(445),l=n(7375),d=n(4852),u=function(){var t=(0,s.K2)((function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n}),"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],n=[1,26],i=[1,27],r=[1,28],a=[1,29],o=[1,30],c=[1,31],l=[1,32],d=[1,33],u=[1,34],h=[1,9],f=[1,10],y=[1,11],k=[1,12],m=[1,13],p=[1,14],g=[1,15],b=[1,16],T=[1,19],v=[1,20],x=[1,21],w=[1,22],_=[1,23],D=[1,25],$=[1,35],C={trace:(0,s.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:(0,s.K2)((function(t,e,n,i,s,r,a){var o=r.length-1;switch(s){case 1:return r[o-1];case 2:case 6:case 7:this.$=[];break;case 3:r[o-1].push(r[o]),this.$=r[o-1];break;case 4:case 5:this.$=r[o];break;case 8:i.setWeekday("monday");break;case 9:i.setWeekday("tuesday");break;case 10:i.setWeekday("wednesday");break;case 11:i.setWeekday("thursday");break;case 12:i.setWeekday("friday");break;case 13:i.setWeekday("saturday");break;case 14:i.setWeekday("sunday");break;case 15:i.setWeekend("friday");break;case 16:i.setWeekend("saturday");break;case 17:i.setDateFormat(r[o].substr(11)),this.$=r[o].substr(11);break;case 18:i.enableInclusiveEndDates(),this.$=r[o].substr(18);break;case 19:i.TopAxis(),this.$=r[o].substr(8);break;case 20:i.setAxisFormat(r[o].substr(11)),this.$=r[o].substr(11);break;case 21:i.setTickInterval(r[o].substr(13)),this.$=r[o].substr(13);break;case 22:i.setExcludes(r[o].substr(9)),this.$=r[o].substr(9);break;case 23:i.setIncludes(r[o].substr(9)),this.$=r[o].substr(9);break;case 24:i.setTodayMarker(r[o].substr(12)),this.$=r[o].substr(12);break;case 27:i.setDiagramTitle(r[o].substr(6)),this.$=r[o].substr(6);break;case 28:this.$=r[o].trim(),i.setAccTitle(this.$);break;case 29:case 30:this.$=r[o].trim(),i.setAccDescription(this.$);break;case 31:i.addSection(r[o].substr(8)),this.$=r[o].substr(8);break;case 33:i.addTask(r[o-1],r[o]),this.$="task";break;case 34:this.$=r[o-1],i.setClickEvent(r[o-1],r[o],null);break;case 35:this.$=r[o-2],i.setClickEvent(r[o-2],r[o-1],r[o]);break;case 36:this.$=r[o-2],i.setClickEvent(r[o-2],r[o-1],null),i.setLink(r[o-2],r[o]);break;case 37:this.$=r[o-3],i.setClickEvent(r[o-3],r[o-2],r[o-1]),i.setLink(r[o-3],r[o]);break;case 38:this.$=r[o-2],i.setClickEvent(r[o-2],r[o],null),i.setLink(r[o-2],r[o-1]);break;case 39:this.$=r[o-3],i.setClickEvent(r[o-3],r[o-1],r[o]),i.setLink(r[o-3],r[o-2]);break;case 40:this.$=r[o-1],i.setLink(r[o-1],r[o]);break;case 41:case 47:this.$=r[o-1]+" "+r[o];break;case 42:case 43:case 45:this.$=r[o-2]+" "+r[o-1]+" "+r[o];break;case 44:case 46:this.$=r[o-3]+" "+r[o-2]+" "+r[o-1]+" "+r[o]}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:n,13:i,14:r,15:a,16:o,17:c,18:l,19:18,20:d,21:u,22:h,23:f,24:y,25:k,26:m,27:p,28:g,29:b,30:T,31:v,33:x,35:w,36:_,37:24,38:D,40:$},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:n,13:i,14:r,15:a,16:o,17:c,18:l,19:18,20:d,21:u,22:h,23:f,24:y,25:k,26:m,27:p,28:g,29:b,30:T,31:v,33:x,35:w,36:_,37:24,38:D,40:$},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:(0,s.K2)((function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)}),"parseError"),parse:(0,s.K2)((function(t){var e=this,n=[0],i=[],r=[null],a=[],o=this.table,c="",l=0,d=0,u=0,h=a.slice.call(arguments,1),f=Object.create(this.lexer),y={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(y.yy[k]=this.yy[k]);f.setInput(t,y.yy),y.yy.lexer=f,y.yy.parser=this,void 0===f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var p=f.options&&f.options.ranges;function g(){var t;return"number"!=typeof(t=i.pop()||f.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,s.K2)((function(t){n.length=n.length-2*t,r.length=r.length-t,a.length=a.length-t}),"popStack"),(0,s.K2)(g,"lex");for(var b,T,v,x,w,_,D,$,C,S={};;){if(v=n[n.length-1],this.defaultActions[v]?x=this.defaultActions[v]:(null==b&&(b=g()),x=o[v]&&o[v][b]),void 0===x||!x.length||!x[0]){var K;for(_ in C=[],o[v])this.terminals_[_]&&_>2&&C.push("'"+this.terminals_[_]+"'");K=f.showPosition?"Parse error on line "+(l+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(K,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+b);switch(x[0]){case 1:n.push(b),r.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,T?(b=T,T=null):(d=f.yyleng,c=f.yytext,l=f.yylineno,m=f.yylloc,u>0&&u--);break;case 2:if(D=this.productions_[x[1]][1],S.$=r[r.length-D],S._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},p&&(S._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),void 0!==(w=this.performAction.apply(S,[c,d,l,y.yy,x[1],r,a].concat(h))))return w;D&&(n=n.slice(0,-1*D*2),r=r.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),r.push(S.$),a.push(S._$),$=o[n[n.length-2]][n[n.length-1]],n.push($);break;case 3:return!0}}return!0}),"parse")},S=function(){return{EOF:1,parseError:(0,s.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,s.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,s.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,s.K2)((function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,s.K2)((function(){return this._more=!0,this}),"more"),reject:(0,s.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,s.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,s.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,s.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,s.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,s.K2)((function(t,e){var n,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1}),"test_match"),next:(0,s.K2)((function(){if(this.done)return this.EOF;var t,e,n,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;re[0].length)){if(e=n,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,s[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,s.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,s.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,s.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,s.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,s.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,s.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,s.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,s.K2)((function(t,e,n,i){switch(n){case 0:return this.begin("open_directive"),"open_directive";case 1:return this.begin("acc_title"),31;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),33;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:case 15:case 18:case 21:case 24:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:case 9:case 10:case 12:case 13:break;case 11:return 10;case 14:this.begin("href");break;case 16:return 43;case 17:this.begin("callbackname");break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 22:return 42;case 23:this.begin("click");break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}}),"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}}}();function K(){this.yy={}}return C.lexer=S,(0,s.K2)(K,"Parser"),K.prototype=C,C.Parser=K,new K}();u.parser=u;var h=u;a.extend(o),a.extend(c),a.extend(l);var f,y,k={friday:5,saturday:6},m="",p="",g=void 0,b="",T=[],v=[],x=new Map,w=[],_=[],D="",$="",C=["active","done","crit","milestone"],S=[],K=!1,E=!1,M="sunday",A="saturday",L=0,Y=(0,s.K2)((function(){w=[],_=[],D="",S=[],ht=0,f=void 0,y=void 0,mt=[],m="",p="",$="",g=void 0,b="",T=[],v=[],K=!1,E=!1,L=0,x=new Map,(0,s.IU)(),M="sunday",A="saturday"}),"clear"),I=(0,s.K2)((function(t){p=t}),"setAxisFormat"),W=(0,s.K2)((function(){return p}),"getAxisFormat"),F=(0,s.K2)((function(t){g=t}),"setTickInterval"),O=(0,s.K2)((function(){return g}),"getTickInterval"),P=(0,s.K2)((function(t){b=t}),"setTodayMarker"),B=(0,s.K2)((function(){return b}),"getTodayMarker"),z=(0,s.K2)((function(t){m=t}),"setDateFormat"),N=(0,s.K2)((function(){K=!0}),"enableInclusiveEndDates"),G=(0,s.K2)((function(){return K}),"endDatesAreInclusive"),H=(0,s.K2)((function(){E=!0}),"enableTopAxis"),R=(0,s.K2)((function(){return E}),"topAxisEnabled"),j=(0,s.K2)((function(t){$=t}),"setDisplayMode"),U=(0,s.K2)((function(){return $}),"getDisplayMode"),V=(0,s.K2)((function(){return m}),"getDateFormat"),Z=(0,s.K2)((function(t){T=t.toLowerCase().split(/[\s,]+/)}),"setIncludes"),X=(0,s.K2)((function(){return T}),"getIncludes"),q=(0,s.K2)((function(t){v=t.toLowerCase().split(/[\s,]+/)}),"setExcludes"),Q=(0,s.K2)((function(){return v}),"getExcludes"),J=(0,s.K2)((function(){return x}),"getLinks"),tt=(0,s.K2)((function(t){D=t,w.push(t)}),"addSection"),et=(0,s.K2)((function(){return w}),"getSections"),nt=(0,s.K2)((function(){let t=vt(),e=0;for(;!t&&e<10;)t=vt(),e++;return _=mt}),"getTasks"),it=(0,s.K2)((function(t,e,n,i){return!i.includes(t.format(e.trim()))&&(!(!n.includes("weekends")||t.isoWeekday()!==k[A]&&t.isoWeekday()!==k[A]+1)||!!n.includes(t.format("dddd").toLowerCase())||n.includes(t.format(e.trim())))}),"isInvalidDate"),st=(0,s.K2)((function(t){M=t}),"setWeekday"),rt=(0,s.K2)((function(){return M}),"getWeekday"),at=(0,s.K2)((function(t){A=t}),"setWeekend"),ot=(0,s.K2)((function(t,e,n,i){if(!n.length||t.manualEndTime)return;let s,r;s=t.startTime instanceof Date?a(t.startTime):a(t.startTime,e,!0),s=s.add(1,"d"),r=t.endTime instanceof Date?a(t.endTime):a(t.endTime,e,!0);const[o,c]=ct(s,r,e,n,i);t.endTime=o.toDate(),t.renderEndTime=c}),"checkTaskDates"),ct=(0,s.K2)((function(t,e,n,i,s){let r=!1,a=null;for(;t<=e;)r||(a=e.toDate()),r=it(t,n,i,s),r&&(e=e.add(1,"d")),t=t.add(1,"d");return[e,a]}),"fixTaskDates"),lt=(0,s.K2)((function(t,e,n){n=n.trim();const i=/^after\s+(?[\d\w- ]+)/.exec(n);if(null!==i){let t=null;for(const e of i.groups.ids.split(" ")){let n=bt(e);void 0!==n&&(!t||n.endTime>t.endTime)&&(t=n)}if(t)return t.endTime;const e=new Date;return e.setHours(0,0,0,0),e}let r=a(n,e.trim(),!0);if(r.isValid())return r.toDate();{s.Rm.debug("Invalid date:"+n),s.Rm.debug("With date format:"+e.trim());const t=new Date(n);if(void 0===t||isNaN(t.getTime())||t.getFullYear()<-1e4||t.getFullYear()>1e4)throw new Error("Invalid date:"+n);return t}}),"getStartDate"),dt=(0,s.K2)((function(t){const e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return null!==e?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]}),"parseDuration"),ut=(0,s.K2)((function(t,e,n,i=!1){n=n.trim();const s=/^until\s+(?[\d\w- ]+)/.exec(n);if(null!==s){let t=null;for(const e of s.groups.ids.split(" ")){let n=bt(e);void 0!==n&&(!t||n.startTime{window.open(n,"_self")})),x.set(t,n))})),wt(t,"clickable")}),"setLink"),wt=(0,s.K2)((function(t,e){t.split(",").forEach((function(t){let n=bt(t);void 0!==n&&n.classes.push(e)}))}),"setClass"),_t=(0,s.K2)((function(t,e,n){if("loose"!==(0,s.D7)().securityLevel)return;if(void 0===e)return;let r=[];if("string"==typeof n){r=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t{i._K.runFunc(e,...r)}))}),"setClickFun"),Dt=(0,s.K2)((function(t,e){S.push((function(){const n=document.querySelector(`[id="${t}"]`);null!==n&&n.addEventListener("click",(function(){e()}))}),(function(){const n=document.querySelector(`[id="${t}-text"]`);null!==n&&n.addEventListener("click",(function(){e()}))}))}),"pushFun"),$t=(0,s.K2)((function(t,e,n){t.split(",").forEach((function(t){_t(t,e,n)})),wt(t,"clickable")}),"setClickEvent"),Ct=(0,s.K2)((function(t){S.forEach((function(e){e(t)}))}),"bindFunctions"),St={getConfig:(0,s.K2)((()=>(0,s.D7)().gantt),"getConfig"),clear:Y,setDateFormat:z,getDateFormat:V,enableInclusiveEndDates:N,endDatesAreInclusive:G,enableTopAxis:H,topAxisEnabled:R,setAxisFormat:I,getAxisFormat:W,setTickInterval:F,getTickInterval:O,setTodayMarker:P,getTodayMarker:B,setAccTitle:s.SV,getAccTitle:s.iN,setDiagramTitle:s.ke,getDiagramTitle:s.ab,setDisplayMode:j,getDisplayMode:U,setAccDescription:s.EI,getAccDescription:s.m7,addSection:tt,getSections:et,getTasks:nt,addTask:gt,findTaskById:bt,addTaskOrg:Tt,setIncludes:Z,getIncludes:X,setExcludes:q,getExcludes:Q,setClickEvent:$t,setLink:xt,getLinks:J,bindFunctions:Ct,parseDuration:dt,isInvalidDate:it,setWeekday:st,getWeekday:rt,setWeekend:at};function Kt(t,e,n){let i=!0;for(;i;)i=!1,n.forEach((function(n){const s=new RegExp("^\\s*"+n+"\\s*$");t[0].match(s)&&(e[n]=!0,t.shift(1),i=!0)}))}(0,s.K2)(Kt,"getTaskTags");var Et,Mt=(0,s.K2)((function(){s.Rm.debug("Something is calling, setConf, remove the call")}),"setConf"),At={monday:d.ABi,tuesday:d.PGu,wednesday:d.GuW,thursday:d.Mol,friday:d.TUC,saturday:d.rGn,sunday:d.YPH},Lt=(0,s.K2)(((t,e)=>{let n=[...t].map((()=>-1/0)),i=[...t].sort(((t,e)=>t.startTime-e.startTime||t.order-e.order)),s=0;for(const t of i)for(let i=0;i=n[i]){n[i]=t.endTime,t.order=i+e,i>s&&(s=i);break}return s}),"getMaxIntersections"),Yt={parser:h,db:St,renderer:{setConf:Mt,draw:(0,s.K2)((function(t,e,n,i){const r=(0,s.D7)().gantt,o=(0,s.D7)().securityLevel;let c;"sandbox"===o&&(c=(0,d.Ltv)("#i"+e));const l="sandbox"===o?(0,d.Ltv)(c.nodes()[0].contentDocument.body):(0,d.Ltv)("body"),u="sandbox"===o?c.nodes()[0].contentDocument:document,h=u.getElementById(e);void 0===(Et=h.parentElement.offsetWidth)&&(Et=1200),void 0!==r.useWidth&&(Et=r.useWidth);const f=i.db.getTasks();let y=[];for(const t of f)y.push(t.type);y=$(y);const k={};let m=2*r.topPadding;if("compact"===i.db.getDisplayMode()||"compact"===r.displayMode){const t={};for(const e of f)void 0===t[e.section]?t[e.section]=[e]:t[e.section].push(e);let e=0;for(const n of Object.keys(t)){const i=Lt(t[n],e)+1;e+=i,m+=i*(r.barHeight+r.barGap),k[n]=i}}else{m+=f.length*(r.barHeight+r.barGap);for(const t of y)k[t]=f.filter((e=>e.type===t)).length}h.setAttribute("viewBox","0 0 "+Et+" "+m);const p=l.select(`[id="${e}"]`),g=(0,d.w7C)().domain([(0,d.jkA)(f,(function(t){return t.startTime})),(0,d.T9B)(f,(function(t){return t.endTime}))]).rangeRound([0,Et-r.leftPadding-r.rightPadding]);function b(t,e){const n=t.startTime,i=e.startTime;let s=0;return n>i?s=1:nt.order)))].map((e=>t.find((t=>t.order===e))));p.append("g").selectAll("rect").data(h).enter().append("rect").attr("x",0).attr("y",(function(t,e){return t.order*n+a-2})).attr("width",(function(){return u-r.rightPadding/2})).attr("height",n).attr("class",(function(t){for(const[e,n]of y.entries())if(t.type===n)return"section section"+e%r.numberSectionStyles;return"section section0"}));const f=p.append("g").selectAll("rect").data(t).enter(),k=i.db.getLinks();if(f.append("rect").attr("id",(function(t){return t.id})).attr("rx",3).attr("ry",3).attr("x",(function(t){return t.milestone?g(t.startTime)+o+.5*(g(t.endTime)-g(t.startTime))-.5*c:g(t.startTime)+o})).attr("y",(function(t,e){return t.order*n+a})).attr("width",(function(t){return t.milestone?c:g(t.renderEndTime||t.endTime)-g(t.startTime)})).attr("height",c).attr("transform-origin",(function(t,e){return e=t.order,(g(t.startTime)+o+.5*(g(t.endTime)-g(t.startTime))).toString()+"px "+(e*n+a+.5*c).toString()+"px"})).attr("class",(function(t){let e="";t.classes.length>0&&(e=t.classes.join(" "));let n=0;for(const[e,i]of y.entries())t.type===i&&(n=e%r.numberSectionStyles);let i="";return t.active?t.crit?i+=" activeCrit":i=" active":t.done?i=t.crit?" doneCrit":" done":t.crit&&(i+=" crit"),0===i.length&&(i=" task"),t.milestone&&(i=" milestone "+i),i+=n,i+=" "+e,"task"+i})),f.append("text").attr("id",(function(t){return t.id+"-text"})).text((function(t){return t.task})).attr("font-size",r.fontSize).attr("x",(function(t){let e=g(t.startTime),n=g(t.renderEndTime||t.endTime);t.milestone&&(e+=.5*(g(t.endTime)-g(t.startTime))-.5*c),t.milestone&&(n=e+c);const i=this.getBBox().width;return i>n-e?n+i+1.5*r.leftPadding>u?e+o-5:n+o+5:(n-e)/2+e+o})).attr("y",(function(t,e){return t.order*n+r.barHeight/2+(r.fontSize/2-2)+a})).attr("text-height",c).attr("class",(function(t){const e=g(t.startTime);let n=g(t.endTime);t.milestone&&(n=e+c);const i=this.getBBox().width;let s="";t.classes.length>0&&(s=t.classes.join(" "));let a=0;for(const[e,n]of y.entries())t.type===n&&(a=e%r.numberSectionStyles);let o="";return t.active&&(o=t.crit?"activeCritText"+a:"activeText"+a),t.done?o=t.crit?o+" doneCritText"+a:o+" doneText"+a:t.crit&&(o=o+" critText"+a),t.milestone&&(o+=" milestoneText"),i>n-e?n+i+1.5*r.leftPadding>u?s+" taskTextOutsideLeft taskTextOutside"+a+" "+o:s+" taskTextOutsideRight taskTextOutside"+a+" "+o+" width-"+i:s+" taskText taskText"+a+" "+o+" width-"+i})),"sandbox"===(0,s.D7)().securityLevel){let t;t=(0,d.Ltv)("#i"+e);const n=t.nodes()[0].contentDocument;f.filter((function(t){return k.has(t.id)})).each((function(t){var e=n.querySelector("#"+t.id),i=n.querySelector("#"+t.id+"-text");const s=e.parentNode;var r=n.createElement("a");r.setAttribute("xlink:href",k.get(t.id)),r.setAttribute("target","_top"),s.appendChild(r),r.appendChild(e),r.appendChild(i)}))}}function x(t,e,n,o,c,l,d,u){if(0===d.length&&0===u.length)return;let h,f;for(const{startTime:t,endTime:e}of l)(void 0===h||tf)&&(f=e);if(!h||!f)return;if(a(f).diff(a(h),"year")>5)return void s.Rm.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");const y=i.db.getDateFormat(),k=[];let m=null,b=a(h);for(;b.valueOf()<=f;)i.db.isInvalidDate(b,y,d,u)?m?m.end=b:m={start:b,end:b}:m&&(k.push(m),m=null),b=b.add(1,"d");p.append("g").selectAll("rect").data(k).enter().append("rect").attr("id",(function(t){return"exclude-"+t.start.format("YYYY-MM-DD")})).attr("x",(function(t){return g(t.start)+n})).attr("y",r.gridLineStartPadding).attr("width",(function(t){const e=t.end.add(1,"day");return g(e)-g(t.start)})).attr("height",c-e-r.gridLineStartPadding).attr("transform-origin",(function(e,i){return(g(e.start)+n+.5*(g(e.end)-g(e.start))).toString()+"px "+(i*t+.5*c).toString()+"px"})).attr("class","exclude-range")}function w(t,e,n,s){let a=(0,d.l78)(g).tickSize(-s+e+r.gridLineStartPadding).tickFormat((0,d.DCK)(i.db.getAxisFormat()||r.axisFormat||"%Y-%m-%d"));const o=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(i.db.getTickInterval()||r.tickInterval);if(null!==o){const t=o[1],e=o[2],n=i.db.getWeekday()||r.weekday;switch(e){case"millisecond":a.ticks(d.t6C.every(t));break;case"second":a.ticks(d.ucG.every(t));break;case"minute":a.ticks(d.wXd.every(t));break;case"hour":a.ticks(d.Agd.every(t));break;case"day":a.ticks(d.UAC.every(t));break;case"week":a.ticks(At[n].every(t));break;case"month":a.ticks(d.Ui6.every(t))}}if(p.append("g").attr("class","grid").attr("transform","translate("+t+", "+(s-50)+")").call(a).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),i.db.topAxisEnabled()||r.topAxis){let n=(0,d.tlR)(g).tickSize(-s+e+r.gridLineStartPadding).tickFormat((0,d.DCK)(i.db.getAxisFormat()||r.axisFormat||"%Y-%m-%d"));if(null!==o){const t=o[1],e=o[2],s=i.db.getWeekday()||r.weekday;switch(e){case"millisecond":n.ticks(d.t6C.every(t));break;case"second":n.ticks(d.ucG.every(t));break;case"minute":n.ticks(d.wXd.every(t));break;case"hour":n.ticks(d.Agd.every(t));break;case"day":n.ticks(d.UAC.every(t));break;case"week":n.ticks(At[s].every(t));break;case"month":n.ticks(d.Ui6.every(t))}}p.append("g").attr("class","grid").attr("transform","translate("+t+", "+e+")").call(n).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function _(t,e){let n=0;const i=Object.keys(k).map((t=>[t,k[t]]));p.append("g").selectAll("text").data(i).enter().append((function(t){const e=t[0].split(s.Y2.lineBreakRegex),n=-(e.length-1)/2,i=u.createElementNS("http://www.w3.org/2000/svg","text");i.setAttribute("dy",n+"em");for(const[t,n]of e.entries()){const e=u.createElementNS("http://www.w3.org/2000/svg","tspan");e.setAttribute("alignment-baseline","central"),e.setAttribute("x","10"),t>0&&e.setAttribute("dy","1em"),e.textContent=n,i.appendChild(e)}return i})).attr("x",10).attr("y",(function(s,r){if(!(r>0))return s[1]*t/2+e;for(let a=0;a`\n .mermaid-main-font {\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n\n .exclude-range {\n fill: ${t.excludeBkgColor};\n }\n\n .section {\n stroke: none;\n opacity: 0.2;\n }\n\n .section0 {\n fill: ${t.sectionBkgColor};\n }\n\n .section2 {\n fill: ${t.sectionBkgColor2};\n }\n\n .section1,\n .section3 {\n fill: ${t.altSectionBkgColor};\n opacity: 0.2;\n }\n\n .sectionTitle0 {\n fill: ${t.titleColor};\n }\n\n .sectionTitle1 {\n fill: ${t.titleColor};\n }\n\n .sectionTitle2 {\n fill: ${t.titleColor};\n }\n\n .sectionTitle3 {\n fill: ${t.titleColor};\n }\n\n .sectionTitle {\n text-anchor: start;\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n\n\n /* Grid and axis */\n\n .grid .tick {\n stroke: ${t.gridColor};\n opacity: 0.8;\n shape-rendering: crispEdges;\n }\n\n .grid .tick text {\n font-family: ${t.fontFamily};\n fill: ${t.textColor};\n }\n\n .grid path {\n stroke-width: 0;\n }\n\n\n /* Today line */\n\n .today {\n fill: none;\n stroke: ${t.todayLineColor};\n stroke-width: 2px;\n }\n\n\n /* Task styling */\n\n /* Default task */\n\n .task {\n stroke-width: 2;\n }\n\n .taskText {\n text-anchor: middle;\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n\n .taskTextOutsideRight {\n fill: ${t.taskTextDarkColor};\n text-anchor: start;\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n\n .taskTextOutsideLeft {\n fill: ${t.taskTextDarkColor};\n text-anchor: end;\n }\n\n\n /* Special case clickable */\n\n .task.clickable {\n cursor: pointer;\n }\n\n .taskText.clickable {\n cursor: pointer;\n fill: ${t.taskTextClickableColor} !important;\n font-weight: bold;\n }\n\n .taskTextOutsideLeft.clickable {\n cursor: pointer;\n fill: ${t.taskTextClickableColor} !important;\n font-weight: bold;\n }\n\n .taskTextOutsideRight.clickable {\n cursor: pointer;\n fill: ${t.taskTextClickableColor} !important;\n font-weight: bold;\n }\n\n\n /* Specific task settings for the sections*/\n\n .taskText0,\n .taskText1,\n .taskText2,\n .taskText3 {\n fill: ${t.taskTextColor};\n }\n\n .task0,\n .task1,\n .task2,\n .task3 {\n fill: ${t.taskBkgColor};\n stroke: ${t.taskBorderColor};\n }\n\n .taskTextOutside0,\n .taskTextOutside2\n {\n fill: ${t.taskTextOutsideColor};\n }\n\n .taskTextOutside1,\n .taskTextOutside3 {\n fill: ${t.taskTextOutsideColor};\n }\n\n\n /* Active task */\n\n .active0,\n .active1,\n .active2,\n .active3 {\n fill: ${t.activeTaskBkgColor};\n stroke: ${t.activeTaskBorderColor};\n }\n\n .activeText0,\n .activeText1,\n .activeText2,\n .activeText3 {\n fill: ${t.taskTextDarkColor} !important;\n }\n\n\n /* Completed task */\n\n .done0,\n .done1,\n .done2,\n .done3 {\n stroke: ${t.doneTaskBorderColor};\n fill: ${t.doneTaskBkgColor};\n stroke-width: 2;\n }\n\n .doneText0,\n .doneText1,\n .doneText2,\n .doneText3 {\n fill: ${t.taskTextDarkColor} !important;\n }\n\n\n /* Tasks on the critical line */\n\n .crit0,\n .crit1,\n .crit2,\n .crit3 {\n stroke: ${t.critBorderColor};\n fill: ${t.critBkgColor};\n stroke-width: 2;\n }\n\n .activeCrit0,\n .activeCrit1,\n .activeCrit2,\n .activeCrit3 {\n stroke: ${t.critBorderColor};\n fill: ${t.activeTaskBkgColor};\n stroke-width: 2;\n }\n\n .doneCrit0,\n .doneCrit1,\n .doneCrit2,\n .doneCrit3 {\n stroke: ${t.critBorderColor};\n fill: ${t.doneTaskBkgColor};\n stroke-width: 2;\n cursor: pointer;\n shape-rendering: crispEdges;\n }\n\n .milestone {\n transform: rotate(45deg) scale(0.8,0.8);\n }\n\n .milestoneText {\n font-style: italic;\n }\n .doneCritText0,\n .doneCritText1,\n .doneCritText2,\n .doneCritText3 {\n fill: ${t.taskTextDarkColor} !important;\n }\n\n .activeCritText0,\n .activeCritText1,\n .activeCritText2,\n .activeCritText3 {\n fill: ${t.taskTextDarkColor} !important;\n }\n\n .titleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.titleColor||t.textColor};\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/317-0413318d.chunk.min.js b/themes/hugo-geekdoc/static/js/317-0413318d.chunk.min.js new file mode 100644 index 000000000..f30c4d98e --- /dev/null +++ b/themes/hugo-geekdoc/static/js/317-0413318d.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[317],{8317:(t,n,e)=>{e.d(n,{diagram:()=>it});var i=e(32),s=e(4852);function r(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e>n||void 0===e&&n>=n)&&(e=n);else{let i=-1;for(let s of t)null!=(s=n(s,++i,t))&&(e>s||void 0===e&&s>=s)&&(e=s)}return e}function o(t){return t.target.depth}function c(t,n){return t.sourceLinks.length?t.depth:n-1}function a(t,n){let e=0;if(void 0===n)for(let n of t)(n=+n)&&(e+=n);else{let i=-1;for(let s of t)(s=+n(s,++i,t))&&(e+=s)}return e}function l(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e=n)&&(e=n);else{let i=-1;for(let s of t)null!=(s=n(s,++i,t))&&(e=s)&&(e=s)}return e}function h(t){return function(){return t}}function u(t,n){return y(t.source,n.source)||t.index-n.index}function f(t,n){return y(t.target,n.target)||t.index-n.index}function y(t,n){return t.y0-n.y0}function d(t){return t.value}function p(t){return t.index}function g(t){return t.nodes}function _(t){return t.links}function k(t,n){const e=t.get(n);if(!e)throw new Error("missing: "+n);return e}function x({nodes:t}){for(const n of t){let t=n.y0,e=t;for(const e of n.sourceLinks)e.y0=t+e.width/2,t+=e.width;for(const t of n.targetLinks)t.y1=e+t.width/2,e+=t.width}}var m=Math.PI,v=2*m,b=1e-6,w=v-b;function L(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function S(){return new L}L.prototype=S.prototype={constructor:L,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,e,i){this._+="Q"+ +t+","+ +n+","+(this._x1=+e)+","+(this._y1=+i)},bezierCurveTo:function(t,n,e,i,s,r){this._+="C"+ +t+","+ +n+","+ +e+","+ +i+","+(this._x1=+s)+","+(this._y1=+r)},arcTo:function(t,n,e,i,s){t=+t,n=+n,e=+e,i=+i,s=+s;var r=this._x1,o=this._y1,c=e-t,a=i-n,l=r-t,h=o-n,u=l*l+h*h;if(s<0)throw new Error("negative radius: "+s);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(u>b)if(Math.abs(h*c-a*l)>b&&s){var f=e-r,y=i-o,d=c*c+a*a,p=f*f+y*y,g=Math.sqrt(d),_=Math.sqrt(u),k=s*Math.tan((m-Math.acos((d+u-p)/(2*g*_)))/2),x=k/_,v=k/g;Math.abs(x-1)>b&&(this._+="L"+(t+x*l)+","+(n+x*h)),this._+="A"+s+","+s+",0,0,"+ +(h*f>l*y)+","+(this._x1=t+v*c)+","+(this._y1=n+v*a)}else this._+="L"+(this._x1=t)+","+(this._y1=n)},arc:function(t,n,e,i,s,r){t=+t,n=+n,r=!!r;var o=(e=+e)*Math.cos(i),c=e*Math.sin(i),a=t+o,l=n+c,h=1^r,u=r?i-s:s-i;if(e<0)throw new Error("negative radius: "+e);null===this._x1?this._+="M"+a+","+l:(Math.abs(this._x1-a)>b||Math.abs(this._y1-l)>b)&&(this._+="L"+a+","+l),e&&(u<0&&(u=u%v+v),u>w?this._+="A"+e+","+e+",0,1,"+h+","+(t-o)+","+(n-c)+"A"+e+","+e+",0,1,"+h+","+(this._x1=a)+","+(this._y1=l):u>b&&(this._+="A"+e+","+e+",0,"+ +(u>=m)+","+h+","+(this._x1=t+e*Math.cos(s))+","+(this._y1=n+e*Math.sin(s))))},rect:function(t,n,e,i){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +e+"v"+ +i+"h"+-e+"Z"},toString:function(){return this._}};const E=S;var A=Array.prototype.slice;function K(t){return function(){return t}}function M(t){return t[0]}function I(t){return t[1]}function T(t){return t.source}function D(t){return t.target}function N(t,n,e,i,s){t.moveTo(n,e),t.bezierCurveTo(n=(n+i)/2,e,n,s,i,s)}function P(t){return[t.source.x1,t.y0]}function C(t){return[t.target.x0,t.y1]}function O(){return function(t){var n=T,e=D,i=M,s=I,r=null;function o(){var o,c=A.call(arguments),a=n.apply(this,c),l=e.apply(this,c);if(r||(r=o=E()),t(r,+i.apply(this,(c[0]=a,c)),+s.apply(this,c),+i.apply(this,(c[0]=l,c)),+s.apply(this,c)),o)return r=null,o+""||null}return o.source=function(t){return arguments.length?(n=t,o):n},o.target=function(t){return arguments.length?(e=t,o):e},o.x=function(t){return arguments.length?(i="function"==typeof t?t:K(+t),o):i},o.y=function(t){return arguments.length?(s="function"==typeof t?t:K(+t),o):s},o.context=function(t){return arguments.length?(r=null==t?null:t,o):r},o}(N).source(P).target(C)}var $=function(){var t=(0,i.K2)((function(t,n,e,i){for(e=e||{},i=t.length;i--;e[t[i]]=n);return e}),"o"),n=[1,9],e=[1,10],s=[1,5,10,12],r={trace:(0,i.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:(0,i.K2)((function(t,n,e,i,s,r,o){var c=r.length-1;switch(s){case 7:const t=i.findOrCreateNode(r[c-4].trim().replaceAll('""','"')),n=i.findOrCreateNode(r[c-2].trim().replaceAll('""','"')),e=parseFloat(r[c].trim());i.addLink(t,n,e);break;case 8:case 9:case 11:this.$=r[c];break;case 10:this.$=r[c-1]}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:e},{1:[2,6],7:11,10:[1,12]},t(e,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(s,[2,8]),t(s,[2,9]),{19:[1,16]},t(s,[2,11]),{1:[2,1]},{1:[2,5]},t(e,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:e},{15:18,16:7,17:8,18:n,20:e},{18:[1,19]},t(e,[2,3]),{12:[1,20]},t(s,[2,10]),{15:21,16:7,17:8,18:n,20:e},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:(0,i.K2)((function(t,n){if(!n.recoverable){var e=new Error(t);throw e.hash=n,e}this.trace(t)}),"parseError"),parse:(0,i.K2)((function(t){var n=this,e=[0],s=[],r=[null],o=[],c=this.table,a="",l=0,h=0,u=0,f=o.slice.call(arguments,1),y=Object.create(this.lexer),d={yy:{}};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(d.yy[p]=this.yy[p]);y.setInput(t,d.yy),d.yy.lexer=y,d.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var g=y.yylloc;o.push(g);var _=y.options&&y.options.ranges;function k(){var t;return"number"!=typeof(t=s.pop()||y.lex()||1)&&(t instanceof Array&&(t=(s=t).pop()),t=n.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)((function(t){e.length=e.length-2*t,r.length=r.length-t,o.length=o.length-t}),"popStack"),(0,i.K2)(k,"lex");for(var x,m,v,b,w,L,S,E,A,K={};;){if(v=e[e.length-1],this.defaultActions[v]?b=this.defaultActions[v]:(null==x&&(x=k()),b=c[v]&&c[v][x]),void 0===b||!b.length||!b[0]){var M;for(L in A=[],c[v])this.terminals_[L]&&L>2&&A.push("'"+this.terminals_[L]+"'");M=y.showPosition?"Parse error on line "+(l+1)+":\n"+y.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==x?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(M,{text:y.match,token:this.terminals_[x]||x,line:y.yylineno,loc:g,expected:A})}if(b[0]instanceof Array&&b.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+x);switch(b[0]){case 1:e.push(x),r.push(y.yytext),o.push(y.yylloc),e.push(b[1]),x=null,m?(x=m,m=null):(h=y.yyleng,a=y.yytext,l=y.yylineno,g=y.yylloc,u>0&&u--);break;case 2:if(S=this.productions_[b[1]][1],K.$=r[r.length-S],K._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},_&&(K._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(w=this.performAction.apply(K,[a,h,l,d.yy,b[1],r,o].concat(f))))return w;S&&(e=e.slice(0,-1*S*2),r=r.slice(0,-1*S),o=o.slice(0,-1*S)),e.push(this.productions_[b[1]][0]),r.push(K.$),o.push(K._$),E=c[e[e.length-2]][e[e.length-1]],e.push(E);break;case 3:return!0}}return!0}),"parse")},o=function(){return{EOF:1,parseError:(0,i.K2)((function(t,n){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,n)}),"parseError"),setInput:(0,i.K2)((function(t,n){return this.yy=n||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,i.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,i.K2)((function(t){var n=t.length,e=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),e.length-1&&(this.yylineno-=e.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:e?(e.length===i.length?this.yylloc.first_column:0)+i[i.length-e.length].length-e[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,i.K2)((function(){return this._more=!0,this}),"more"),reject:(0,i.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,i.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,i.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,i.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,i.K2)((function(){var t=this.pastInput(),n=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+n+"^"}),"showPosition"),test_match:(0,i.K2)((function(t,n){var e,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,n,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e)return e;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1}),"test_match"),next:(0,i.K2)((function(){if(this.done)return this.EOF;var t,n,e,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;rn[0].length)){if(n=e,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(e,s[r])))return t;if(this._backtrack){n=!1;continue}return!1}if(!this.options.flex)break}return n?!1!==(t=this.test_match(n,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,i.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,i.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,i.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,i.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,i.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,i.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,i.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)((function(t,n,e,i){switch(e){case 0:return this.pushState("csv"),4;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;case 5:return 20;case 6:return this.popState("escaped_text"),18;case 7:return 19}}),"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[1,2,3,4,5,6,7],inclusive:!1},escaped_text:{rules:[6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}}}();function c(){this.yy={}}return r.lexer=o,(0,i.K2)(c,"Parser"),c.prototype=r,r.Parser=c,new c}();$.parser=$;var j=$,z=[],U=[],F=new Map,W=(0,i.K2)((()=>{z=[],U=[],F=new Map,(0,i.IU)()}),"clear"),G=class{constructor(t,n,e=0){this.source=t,this.target=n,this.value=e}static{(0,i.K2)(this,"SankeyLink")}},V=(0,i.K2)(((t,n,e)=>{z.push(new G(t,n,e))}),"addLink"),X=class{constructor(t){this.ID=t}static{(0,i.K2)(this,"SankeyNode")}},Y=(0,i.K2)((t=>{t=i.Y2.sanitizeText(t,(0,i.D7)());let n=F.get(t);return void 0===n&&(n=new X(t),F.set(t,n),U.push(n)),n}),"findOrCreateNode"),q=(0,i.K2)((()=>U),"getNodes"),Q=(0,i.K2)((()=>z),"getLinks"),R=(0,i.K2)((()=>({nodes:U.map((t=>({id:t.ID}))),links:z.map((t=>({source:t.source.ID,target:t.target.ID,value:t.value})))})),"getGraph"),B={nodesMap:F,getConfig:(0,i.K2)((()=>(0,i.D7)().sankey),"getConfig"),getNodes:q,getLinks:Q,getGraph:R,addLink:V,findOrCreateNode:Y,getAccTitle:i.iN,setAccTitle:i.SV,getAccDescription:i.m7,setAccDescription:i.EI,getDiagramTitle:i.ab,setDiagramTitle:i.ke,clear:W},Z=class t{static{(0,i.K2)(this,"Uid")}static{this.count=0}static next(n){return new t(n+ ++t.count)}constructor(t){this.id=t,this.href=`#${t}`}toString(){return"url("+this.href+")"}},H={left:function(t){return t.depth},right:function(t,n){return n-1-t.height},center:function(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?r(t.sourceLinks,o)-1:0},justify:c},J=(0,i.K2)((function(t,n,e,o){const{securityLevel:m,sankey:v}=(0,i.D7)(),b=i.ME.sankey;let w;"sandbox"===m&&(w=(0,s.Ltv)("#i"+n));const L="sandbox"===m?(0,s.Ltv)(w.nodes()[0].contentDocument.body):(0,s.Ltv)("body"),S="sandbox"===m?L.select(`[id="${n}"]`):(0,s.Ltv)(`[id="${n}"]`),E=v?.width??b.width,A=v?.height??b.width,K=v?.useMaxWidth??b.useMaxWidth,M=v?.nodeAlignment??b.nodeAlignment,I=v?.prefix??b.prefix,T=v?.suffix??b.suffix,D=v?.showValues??b.showValues,N=o.db.getGraph(),P=H[M];(function(){let t,n,e,i=0,s=0,o=1,m=1,v=24,b=8,w=p,L=c,S=g,E=_,A=6;function K(){const c={nodes:S.apply(null,arguments),links:E.apply(null,arguments)};return function({nodes:t,links:n}){for(const[n,e]of t.entries())e.index=n,e.sourceLinks=[],e.targetLinks=[];const i=new Map(t.map(((n,e)=>[w(n,e,t),n])));for(const[t,e]of n.entries()){e.index=t;let{source:n,target:s}=e;"object"!=typeof n&&(n=e.source=k(i,n)),"object"!=typeof s&&(s=e.target=k(i,s)),n.sourceLinks.push(e),s.targetLinks.push(e)}if(null!=e)for(const{sourceLinks:n,targetLinks:i}of t)n.sort(e),i.sort(e)}(c),function({nodes:t}){for(const n of t)n.value=void 0===n.fixedValue?Math.max(a(n.sourceLinks,d),a(n.targetLinks,d)):n.fixedValue}(c),function({nodes:t}){const n=t.length;let e=new Set(t),i=new Set,s=0;for(;e.size;){for(const t of e){t.depth=s;for(const{target:n}of t.sourceLinks)i.add(n)}if(++s>n)throw new Error("circular link");e=i,i=new Set}}(c),function({nodes:t}){const n=t.length;let e=new Set(t),i=new Set,s=0;for(;e.size;){for(const t of e){t.height=s;for(const{source:n}of t.targetLinks)i.add(n)}if(++s>n)throw new Error("circular link");e=i,i=new Set}}(c),function(e){const c=function({nodes:t}){const e=l(t,(t=>t.depth))+1,s=(o-i-v)/(e-1),r=new Array(e);for(const n of t){const t=Math.max(0,Math.min(e-1,Math.floor(L.call(null,n,e))));n.layer=t,n.x0=i+t*s,n.x1=n.x0+v,r[t]?r[t].push(n):r[t]=[n]}if(n)for(const t of r)t.sort(n);return r}(e);t=Math.min(b,(m-s)/(l(c,(t=>t.length))-1)),function(n){const e=r(n,(n=>(m-s-(n.length-1)*t)/a(n,d)));for(const i of n){let n=s;for(const s of i){s.y0=n,s.y1=n+s.value*e,n=s.y1+t;for(const t of s.sourceLinks)t.width=t.value*e}n=(m-n+t)/(i.length+1);for(let t=0;t0))continue;let s=(n/i-t.y0)*e;t.y0+=s,t.y1+=s,P(t)}void 0===n&&r.sort(y),T(r,i)}}function I(t,e,i){for(let s=t.length-2;s>=0;--s){const r=t[s];for(const t of r){let n=0,i=0;for(const{target:e,value:s}of t.sourceLinks){let r=s*(e.layer-t.layer);n+=$(t,e)*r,i+=r}if(!(i>0))continue;let s=(n/i-t.y0)*e;t.y0+=s,t.y1+=s,P(t)}void 0===n&&r.sort(y),T(r,i)}}function T(n,e){const i=n.length>>1,r=n[i];N(n,r.y0-t,i-1,e),D(n,r.y1+t,i+1,e),N(n,m,n.length-1,e),D(n,s,0,e)}function D(n,e,i,s){for(;i1e-6&&(r.y0+=o,r.y1+=o),e=r.y1+t}}function N(n,e,i,s){for(;i>=0;--i){const r=n[i],o=(r.y1-e)*s;o>1e-6&&(r.y0-=o,r.y1-=o),e=r.y0-t}}function P({sourceLinks:t,targetLinks:n}){if(void 0===e){for(const{source:{sourceLinks:t}}of n)t.sort(f);for(const{target:{targetLinks:n}}of t)n.sort(u)}}function C(t){if(void 0===e)for(const{sourceLinks:n,targetLinks:e}of t)n.sort(f),e.sort(u)}function O(n,e){let i=n.y0-(n.sourceLinks.length-1)*t/2;for(const{target:s,width:r}of n.sourceLinks){if(s===e)break;i+=r+t}for(const{source:t,width:s}of e.targetLinks){if(t===n)break;i-=s}return i}function $(n,e){let i=e.y0-(e.targetLinks.length-1)*t/2;for(const{source:s,width:r}of e.targetLinks){if(s===n)break;i+=r+t}for(const{target:t,width:s}of n.sourceLinks){if(t===e)break;i-=s}return i}return K.update=function(t){return x(t),t},K.nodeId=function(t){return arguments.length?(w="function"==typeof t?t:h(t),K):w},K.nodeAlign=function(t){return arguments.length?(L="function"==typeof t?t:h(t),K):L},K.nodeSort=function(t){return arguments.length?(n=t,K):n},K.nodeWidth=function(t){return arguments.length?(v=+t,K):v},K.nodePadding=function(n){return arguments.length?(b=t=+n,K):b},K.nodes=function(t){return arguments.length?(S="function"==typeof t?t:h(t),K):S},K.links=function(t){return arguments.length?(E="function"==typeof t?t:h(t),K):E},K.linkSort=function(t){return arguments.length?(e=t,K):e},K.size=function(t){return arguments.length?(i=s=0,o=+t[0],m=+t[1],K):[o-i,m-s]},K.extent=function(t){return arguments.length?(i=+t[0][0],o=+t[1][0],s=+t[0][1],m=+t[1][1],K):[[i,s],[o,m]]},K.iterations=function(t){return arguments.length?(A=+t,K):A},K})().nodeId((t=>t.id)).nodeWidth(10).nodePadding(10+(D?15:0)).nodeAlign(P).extent([[0,0],[E,A]])(N);const C=(0,s.UMr)(s.zt);S.append("g").attr("class","nodes").selectAll(".node").data(N.nodes).join("g").attr("class","node").attr("id",(t=>(t.uid=Z.next("node-")).id)).attr("transform",(function(t){return"translate("+t.x0+","+t.y0+")"})).attr("x",(t=>t.x0)).attr("y",(t=>t.y0)).append("rect").attr("height",(t=>t.y1-t.y0)).attr("width",(t=>t.x1-t.x0)).attr("fill",(t=>C(t.id)));const $=(0,i.K2)((({id:t,value:n})=>D?`${t}\n${I}${Math.round(100*n)/100}${T}`:t),"getText");S.append("g").attr("class","node-labels").attr("font-family","sans-serif").attr("font-size",14).selectAll("text").data(N.nodes).join("text").attr("x",(t=>t.x0(t.y1+t.y0)/2)).attr("dy",(D?"0":"0.35")+"em").attr("text-anchor",(t=>t.x0(t.uid=Z.next("linearGradient-")).id)).attr("gradientUnits","userSpaceOnUse").attr("x1",(t=>t.source.x1)).attr("x2",(t=>t.target.x0));t.append("stop").attr("offset","0%").attr("stop-color",(t=>C(t.source.id))),t.append("stop").attr("offset","100%").attr("stop-color",(t=>C(t.target.id)))}let U;switch(z){case"gradient":U=(0,i.K2)((t=>t.uid),"coloring");break;case"source":U=(0,i.K2)((t=>C(t.source.id)),"coloring");break;case"target":U=(0,i.K2)((t=>C(t.target.id)),"coloring");break;default:U=z}j.append("path").attr("d",O()).attr("stroke",U).attr("stroke-width",(t=>Math.max(1,t.width))),(0,i.ot)(void 0,S,0,K)}),"draw"),tt={draw:J},nt=(0,i.K2)((t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,"\n").trim()),"prepareTextForParsing"),et=j.parse.bind(j);j.parse=t=>et(nt(t));var it={parser:j,db:B,renderer:tt}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/331-bd053b7e.chunk.min.js b/themes/hugo-geekdoc/static/js/331-bd053b7e.chunk.min.js deleted file mode 100644 index 3dbcff26e..000000000 --- a/themes/hugo-geekdoc/static/js/331-bd053b7e.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[331],{7331:(e,r,a)=>{a.d(r,{diagram:()=>g});var t=a(261),n=a(8852),s=a(798),d=a(8731),i={parse:(0,s.K2)((async e=>{const r=await(0,d.qg)("info",e);s.Rm.debug(r)}),"parse")},o={version:t.r},g={parser:i,db:{getVersion:(0,s.K2)((()=>o.version),"getVersion")},renderer:{draw:(0,s.K2)(((e,r,a)=>{s.Rm.debug("rendering info diagram\n"+e);const t=(0,n.D)(r);(0,s.a$)(t,100,400,!0),t.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${a}`)}),"draw")}}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/334-f60074e8.chunk.min.js b/themes/hugo-geekdoc/static/js/334-f60074e8.chunk.min.js new file mode 100644 index 000000000..53c29b106 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/334-f60074e8.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[334],{5937:(t,e,s)=>{s.d(e,{A:()=>i});var n=s(6309),r=s(1931);const i=(t,e)=>n.A.lang.round(r.A.parse(t)[e])},4868:(t,e,s)=>{s.d(e,{A:()=>i,P:()=>u});var n=s(32),r=s(4852),i=(0,n.K2)(((t,e)=>{let s;return"sandbox"===e&&(s=(0,r.Ltv)("#i"+t)),("sandbox"===e?(0,r.Ltv)(s.nodes()[0].contentDocument.body):(0,r.Ltv)("body")).select(`[id="${t}"]`)}),"getDiagramElement"),u=(0,n.K2)(((t,e,s,r)=>{t.attr("class",s);const{width:i,height:u,x:c,y:l}=a(t,e);(0,n.a$)(t,u,i,r);const h=o(c,l,i,u,e);t.attr("viewBox",h),n.Rm.debug(`viewBox configured: ${h} with padding: ${e}`)}),"setupViewPortForSVG"),a=(0,n.K2)(((t,e)=>{const s=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:s.width+2*e,height:s.height+2*e,x:s.x,y:s.y}}),"calculateDimensionsWithPadding"),o=(0,n.K2)(((t,e,s,n,r)=>`${t-r} ${e-r} ${s} ${n}`),"createViewBox")},9334:(t,e,s)=>{s.d(e,{diagram:()=>mt});var n,r,i=s(4868),u=s(1417),a=s(5388),o=(s(3256),s(8568),s(7750),s(2382),s(5522)),c=s(32),l=s(4852),h=s(5937),d=s(5582),p=0,A=(0,c.D7)(),g=new Map,f=[],y=new Map,k=[],b=new Map,E=new Map,m=0,D=!0,x=[],C=(0,c.K2)((t=>c.Y2.sanitizeText(t,A)),"sanitizeText"),T=(0,c.K2)((function(t){for(const e of g.values())if(e.id===t)return e.domId;return t}),"lookUpDomId"),S=(0,c.K2)((function(t,e,s,n,r,i,a={},o){if(!t||0===t.trim().length)return;let l,h=g.get(t);if(void 0===h&&(h={id:t,labelType:"text",domId:"flowchart-"+t+"-"+p,styles:[],classes:[]},g.set(t,h)),p++,void 0!==e?(A=(0,c.D7)(),l=C(e.text.trim()),h.labelType=e.type,l.startsWith('"')&&l.endsWith('"')&&(l=l.substring(1,l.length-1)),h.text=l):void 0===h.text&&(h.text=t),void 0!==s&&(h.type=s),null!=n&&n.forEach((function(t){h.styles.push(t)})),null!=r&&r.forEach((function(t){h.classes.push(t)})),void 0!==i&&(h.dir=i),void 0===h.props?h.props=a:void 0!==a&&Object.assign(h.props,a),void 0!==o){let e;e=o.includes("\n")?o+"\n":"{\n"+o+"\n}";const s=(0,u.H)(e,{schema:u.r});if(s.shape&&(s.shape!==s.shape.toLowerCase()||s.shape.includes("_")))throw new Error(`No such shape: ${s.shape}. Shape names should be lowercase.`);s?.shape&&(h.type=s?.shape),s?.label&&(h.text=s?.label),s?.icon&&(h.icon=s?.icon,s.label?.trim()||h.text!==t||(h.text="")),s?.form&&(h.form=s?.form),s?.pos&&(h.pos=s?.pos),s?.img&&(h.img=s?.img,s.label?.trim()||h.text!==t||(h.text="")),s?.constraint&&(h.constraint=s.constraint),s.w&&(h.assetWidth=Number(s.w)),s.h&&(h.assetHeight=Number(s.h))}}),"addVertex"),F=(0,c.K2)((function(t,e,s){const n={start:t,end:e,type:void 0,text:"",labelType:"text"};c.Rm.info("abc78 Got edge...",n);const r=s.text;if(void 0!==r&&(n.text=C(r.text.trim()),n.text.startsWith('"')&&n.text.endsWith('"')&&(n.text=n.text.substring(1,n.text.length-1)),n.labelType=r.type),void 0!==s&&(n.type=s.type,n.stroke=s.stroke,n.length=s.length>10?10:s.length),!(f.length<(A.maxEdges??500)))throw new Error(`Edge limit exceeded. ${f.length} edges found, but the limit is ${A.maxEdges}.\n\nInitialize mermaid with maxEdges set to a higher number to allow more edges.\nYou cannot set this config via configuration inside the diagram as it is a secure config.\nYou have to call mermaid.initialize.`);c.Rm.info("Pushing edge..."),f.push(n)}),"addSingleLink"),_=(0,c.K2)((function(t,e,s){c.Rm.info("addLink",t,e,s);for(const n of t)for(const t of e)F(n,t,s)}),"addLink"),B=(0,c.K2)((function(t,e){t.forEach((function(t){"default"===t?f.defaultInterpolate=e:f[t].interpolate=e}))}),"updateLinkInterpolate"),v=(0,c.K2)((function(t,e){t.forEach((function(t){if("number"==typeof t&&t>=f.length)throw new Error(`The index ${t} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${f.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);"default"===t?f.defaultStyle=e:(f[t].style=e,(f[t]?.style?.length??0)>0&&!f[t]?.style?.some((t=>t?.startsWith("fill")))&&f[t]?.style?.push("fill:none"))}))}),"updateLink"),w=(0,c.K2)((function(t,e){t.split(",").forEach((function(t){let s=y.get(t);void 0===s&&(s={id:t,styles:[],textStyles:[]},y.set(t,s)),null!=e&&e.forEach((function(t){if(/color/.exec(t)){const e=t.replace("fill","bgFill");s.textStyles.push(e)}s.styles.push(t)}))}))}),"addClass"),$=(0,c.K2)((function(t){/.*/.exec(n)&&(n="LR"),/.*v/.exec(n)&&(n="TB"),"TD"===n&&(n="TB")}),"setDirection"),L=(0,c.K2)((function(t,e){for(const s of t.split(",")){const t=g.get(s);t&&t.classes.push(e);const n=b.get(s);n&&n.classes.push(e)}}),"setClass"),R=(0,c.K2)((function(t,e){if(void 0!==e){e=C(e);for(const s of t.split(","))E.set("gen-1"===r?T(s):s,e)}}),"setTooltip"),I=(0,c.K2)((function(t,e,s){const n=T(t);if("loose"!==(0,c.D7)().securityLevel)return;if(void 0===e)return;let r=[];if("string"==typeof s){r=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t")),t.classed("hover",!0)})).on("mouseout",(function(){e.transition().duration(500).style("opacity",0),(0,l.Ltv)(this).classed("hover",!1)}))}),"setupToolTips");x.push(W);var Y=(0,c.K2)((function(t="gen-1"){g=new Map,y=new Map,f=[],x=[W],k=[],b=new Map,m=0,E=new Map,D=!0,r=t,A=(0,c.D7)(),(0,c.IU)()}),"clear"),j=(0,c.K2)((t=>{r=t||"gen-2"}),"setGen"),X=(0,c.K2)((function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}),"defaultStyle"),z=(0,c.K2)((function(t,e,s){let n=t.text.trim(),i=s.text;function u(t){const e={boolean:{},number:{},string:{}},s=[];let n;return{nodeList:t.filter((function(t){const r=typeof t;return t.stmt&&"dir"===t.stmt?(n=t.value,!1):""!==t.trim()&&(r in e?!e[r].hasOwnProperty(t)&&(e[r][t]=!0):!s.includes(t)&&s.push(t))})),dir:n}}t===s&&/\s/.exec(s.text)&&(n=void 0),(0,c.K2)(u,"uniq");const{nodeList:a,dir:o}=u(e.flat());if("gen-1"===r)for(let t=0;t2e3)return{result:!1,count:0};if(Q[q]=e,k[e].id===t)return{result:!0,count:0};let n=0,r=1;for(;n=0){const s=Z(t,e);if(s.result)return{result:!0,count:r+s.count};r+=s.count}n+=1}return{result:!1,count:r}}),"indexNodes2"),J=(0,c.K2)((function(t){return Q[t]}),"getDepthFirstPos"),tt=(0,c.K2)((function(){q=-1,k.length>0&&Z("none",k.length-1)}),"indexNodes"),et=(0,c.K2)((function(){return k}),"getSubGraphs"),st=(0,c.K2)((()=>!!D&&(D=!1,!0)),"firstGraph"),nt=(0,c.K2)((t=>{let e=t.trim(),s="arrow_open";switch(e[0]){case"<":s="arrow_point",e=e.slice(1);break;case"x":s="arrow_cross",e=e.slice(1);break;case"o":s="arrow_circle",e=e.slice(1)}let n="normal";return e.includes("=")&&(n="thick"),e.includes(".")&&(n="dotted"),{type:s,stroke:n}}),"destructStartLink"),rt=(0,c.K2)(((t,e)=>{const s=e.length;let n=0;for(let r=0;r{const e=t.trim();let s=e.slice(0,-1),n="arrow_open";switch(e.slice(-1)){case"x":n="arrow_cross",e.startsWith("x")&&(n="double_"+n,s=s.slice(1));break;case">":n="arrow_point",e.startsWith("<")&&(n="double_"+n,s=s.slice(1));break;case"o":n="arrow_circle",e.startsWith("o")&&(n="double_"+n,s=s.slice(1))}let r="normal",i=s.length-1;s.startsWith("=")&&(r="thick"),s.startsWith("~")&&(r="invisible");const u=rt(".",s);return u&&(r="dotted",i=u),{type:n,stroke:r,length:i}}),"destructEndLink"),ut=(0,c.K2)(((t,e)=>{const s=it(t);let n;if(e){if(n=nt(e),n.stroke!==s.stroke)return{type:"INVALID",stroke:"INVALID"};if("arrow_open"===n.type)n.type=s.type;else{if(n.type!==s.type)return{type:"INVALID",stroke:"INVALID"};n.type="double_"+n.type}return"double_arrow"===n.type&&(n.type="double_arrow_point"),n.length=s.length,n}return s}),"destructLink"),at=(0,c.K2)(((t,e)=>{for(const s of t)if(s.nodes.includes(e))return!0;return!1}),"exists"),ot=(0,c.K2)(((t,e)=>{const s=[];return t.nodes.forEach(((n,r)=>{at(e,n)||s.push(t.nodes[r])})),{nodes:s}}),"makeUniq"),ct={firstGraph:st},lt=(0,c.K2)((t=>t.img?"imageSquare":t.icon?"circle"===t.form?"iconCircle":"square"===t.form?"iconSquare":"rounded"===t.form?"iconRounded":"icon":"square"===t.type?"squareRect":"round"===t.type?"roundedRect":t.type??"squareRect"),"getTypeFromVertex"),ht=(0,c.K2)(((t,e)=>t.find((t=>t.id===e))),"findNode"),dt=(0,c.K2)((t=>{let e="none",s="arrow_point";switch(t){case"arrow_point":case"arrow_circle":case"arrow_cross":s=t;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":e=t.replace("double_",""),s=e}return{arrowTypeStart:e,arrowTypeEnd:s}}),"destructEdgeType"),pt=(0,c.K2)(((t,e,s,n,r,i)=>{const u=s.get(t.id),a=n.get(t.id)??!1,o=ht(e,t.id);o?(o.cssStyles=t.styles,o.cssCompiledStyles=At(t.classes),o.cssClasses=t.classes.join(" ")):e.push({id:t.id,label:t.text,labelStyle:"",parentId:u,padding:r.flowchart?.padding||8,cssStyles:t.styles,cssCompiledStyles:At(["default","node",...t.classes]),cssClasses:"default "+t.classes.join(" "),shape:lt(t),dir:t.dir,domId:t.domId,isGroup:a,look:i,link:t.link,linkTarget:t.linkTarget,tooltip:N(t.id),icon:t.icon,pos:t.pos,img:t.img,assetWidth:t.assetWidth,assetHeight:t.assetHeight,constraint:t.constraint})}),"addNodeFromVertex");function At(t){let e=[];for(const s of t){const t=y.get(s);t?.styles&&(e=[...e,...t.styles??[]].map((t=>t.trim()))),t?.textStyles&&(e=[...e,...t.textStyles??[]].map((t=>t.trim())))}return e}(0,c.K2)(At,"getCompiledStyles");var gt=(0,c.K2)((()=>{const t=(0,c.D7)(),e=[],s=[],n=et(),r=new Map,i=new Map;for(let t=n.length-1;t>=0;t--){const e=n[t];e.nodes.length>0&&i.set(e.id,!0);for(const t of e.nodes)r.set(t,e.id)}for(let s=n.length-1;s>=0;s--){const i=n[s];e.push({id:i.id,label:i.title,labelStyle:"",parentId:r.get(i.id),padding:8,cssCompiledStyles:At(i.classes),cssClasses:i.classes.join(" "),shape:"rect",dir:i.dir,isGroup:!0,look:t.look})}V().forEach((s=>{pt(s,e,r,i,t,t.look||"classic")}));const u=U();return u.forEach(((e,n)=>{const{arrowTypeStart:r,arrowTypeEnd:i}=dt(e.type),a=[...u.defaultStyle??[]];e.style&&a.push(...e.style);const c={id:(0,o.rY)(e.start,e.end,{counter:n,prefix:"L"}),start:e.start,end:e.end,type:e.type??"normal",label:e.text,labelpos:"c",thickness:e.stroke,minlen:e.length,classes:"invisible"===e?.stroke?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:"invisible"===e?.stroke?"none":r,arrowTypeEnd:"invisible"===e?.stroke?"none":i,arrowheadStyle:"fill: #333",labelStyle:a,style:a,pattern:e.stroke,look:t.look};s.push(c)})),{nodes:e,edges:s,other:{},config:t}}),"getData"),ft={defaultConfig:(0,c.K2)((()=>c.ME.flowchart),"defaultConfig"),setAccTitle:c.SV,getAccTitle:c.iN,getAccDescription:c.m7,getData:gt,setAccDescription:c.EI,addVertex:S,lookUpDomId:T,addLink:_,updateLinkInterpolate:B,updateLink:v,addClass:w,setDirection:$,setClass:L,setTooltip:R,getTooltip:N,setClickEvent:P,setLink:K,bindFunctions:O,getDirection:M,getVertices:V,getEdges:U,getClasses:G,clear:Y,setGen:j,defaultStyle:X,addSubGraph:z,getDepthFirstPos:J,indexNodes:tt,getSubGraphs:et,destructLink:ut,lex:ct,exists:at,makeUniq:ot,setDiagramTitle:c.ke,getDiagramTitle:c.ab},yt={getClasses:(0,c.K2)((function(t,e){return e.db.getClasses()}),"getClasses"),draw:(0,c.K2)((async function(t,e,s,n){c.Rm.info("REF0:"),c.Rm.info("Drawing state diagram (v2)",e);const{securityLevel:r,flowchart:u,layout:h}=(0,c.D7)();let d;"sandbox"===r&&(d=(0,l.Ltv)("#i"+e));const p="sandbox"===r?d.nodes()[0].contentDocument:document;c.Rm.debug("Before getData: ");const A=n.db.getData();c.Rm.debug("Data: ",A);const g=(0,i.A)(e,r),f=M();A.type=n.type,A.layoutAlgorithm=(0,a.q7)(h),"dagre"===A.layoutAlgorithm&&"elk"===h&&c.Rm.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),A.direction=f,A.nodeSpacing=u?.nodeSpacing||50,A.rankSpacing=u?.rankSpacing||50,A.markers=["point","circle","cross"],A.diagramId=e,c.Rm.debug("REF1:",A),await(0,a.XX)(A,g);const y=A.config.flowchart?.diagramPadding??8;o._K.insertTitle(g,"flowchartTitleText",u?.titleTopMargin||0,n.db.getDiagramTitle()),(0,i.P)(g,y,"flowchart",u?.useMaxWidth||!1);for(const t of A.nodes){const s=(0,l.Ltv)(`#${e} [id="${t.id}"]`);if(!s||!t.link)continue;const n=p.createElementNS("http://www.w3.org/2000/svg","a");n.setAttributeNS("http://www.w3.org/2000/svg","class",t.cssClasses),n.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),"sandbox"===r?n.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):t.linkTarget&&n.setAttributeNS("http://www.w3.org/2000/svg","target",t.linkTarget);const i=s.insert((function(){return n}),":first-child"),u=s.select(".label-container");u&&i.append((function(){return u.node()}));const a=s.select(".label");a&&i.append((function(){return a.node()}))}}),"draw")},kt=function(){var t=(0,c.K2)((function(t,e,s,n){for(s=s||{},n=t.length;n--;s[t[n]]=e);return s}),"o"),e=[1,4],s=[1,3],n=[1,5],r=[1,8,9,10,11,27,34,36,38,44,60,83,84,85,86,87,88,101,104,105,108,110,113,114,115,120,121,122,123],i=[2,2],u=[1,13],a=[1,14],o=[1,15],l=[1,16],h=[1,23],d=[1,25],p=[1,26],A=[1,27],g=[1,49],f=[1,48],y=[1,29],k=[1,30],b=[1,31],E=[1,32],m=[1,33],D=[1,44],x=[1,46],C=[1,42],T=[1,47],S=[1,43],F=[1,50],_=[1,45],B=[1,51],v=[1,52],w=[1,34],$=[1,35],L=[1,36],R=[1,37],I=[1,57],K=[1,8,9,10,11,27,32,34,36,38,44,60,83,84,85,86,87,88,101,104,105,108,110,113,114,115,120,121,122,123],N=[1,61],P=[1,60],O=[1,62],M=[8,9,11,75,77],V=[1,77],U=[1,90],G=[1,95],W=[1,94],Y=[1,91],j=[1,87],X=[1,93],z=[1,89],H=[1,96],q=[1,92],Q=[1,97],Z=[1,88],J=[8,9,10,11,40,75,77],tt=[8,9,10,11,40,46,75,77],et=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,88,101,104,105,108,110,113,114,115],st=[8,9,11,44,60,75,77,88,101,104,105,108,110,113,114,115],nt=[44,60,88,101,104,105,108,110,113,114,115],rt=[1,123],it=[1,122],ut=[1,130],at=[1,144],ot=[1,145],ct=[1,146],lt=[1,147],ht=[1,132],dt=[1,134],pt=[1,138],At=[1,139],gt=[1,140],ft=[1,141],yt=[1,142],kt=[1,143],bt=[1,148],Et=[1,149],mt=[1,128],Dt=[1,129],xt=[1,136],Ct=[1,131],Tt=[1,135],St=[1,133],Ft=[8,9,10,11,27,32,34,36,38,44,60,83,84,85,86,87,88,101,104,105,108,110,113,114,115,120,121,122,123],_t=[1,151],Bt=[1,153],vt=[8,9,11],wt=[8,9,10,11,14,44,60,88,104,105,108,110,113,114,115],$t=[1,173],Lt=[1,169],Rt=[1,170],It=[1,174],Kt=[1,171],Nt=[1,172],Pt=[77,115,118],Ot=[8,9,10,11,12,14,27,29,32,44,60,75,83,84,85,86,87,88,89,104,108,110,113,114,115],Mt=[10,105],Vt=[31,49,51,53,55,57,62,64,66,67,69,71,115,116,117],Ut=[1,242],Gt=[1,240],Wt=[1,244],Yt=[1,238],jt=[1,239],Xt=[1,241],zt=[1,243],Ht=[1,245],qt=[1,263],Qt=[8,9,11,105],Zt=[8,9,10,11,60,83,104,105,108,109,110,111],Jt={trace:(0,c.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,edgeTextToken:78,STR:79,MD_STR:80,textToken:81,keywords:82,STYLE:83,LINKSTYLE:84,CLASSDEF:85,CLASS:86,CLICK:87,DOWN:88,UP:89,textNoTagsToken:90,stylesOpt:91,"idString[vertex]":92,"idString[class]":93,CALLBACKNAME:94,CALLBACKARGS:95,HREF:96,LINK_TARGET:97,"STR[link]":98,"STR[tooltip]":99,alphaNum:100,DEFAULT:101,numList:102,INTERPOLATE:103,NUM:104,COMMA:105,style:106,styleComponent:107,NODE_STRING:108,UNIT:109,BRKT:110,PCT:111,idStringToken:112,MINUS:113,MULT:114,UNICODE_TEXT:115,TEXT:116,TAGSTART:117,EDGE_TEXT:118,alphaNumToken:119,direction_tb:120,direction_bt:121,direction_rl:122,direction_lr:123,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",79:"STR",80:"MD_STR",83:"STYLE",84:"LINKSTYLE",85:"CLASSDEF",86:"CLASS",87:"CLICK",88:"DOWN",89:"UP",92:"idString[vertex]",93:"idString[class]",94:"CALLBACKNAME",95:"CALLBACKARGS",96:"HREF",97:"LINK_TARGET",98:"STR[link]",99:"STR[tooltip]",101:"DEFAULT",103:"INTERPOLATE",104:"NUM",105:"COMMA",108:"NODE_STRING",109:"UNIT",110:"BRKT",111:"PCT",113:"MINUS",114:"MULT",115:"UNICODE_TEXT",116:"TEXT",117:"TAGSTART",118:"EDGE_TEXT",120:"direction_tb",121:"direction_bt",122:"direction_rl",123:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[76,1],[76,2],[76,1],[76,1],[72,1],[73,3],[30,1],[30,2],[30,1],[30,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[82,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[102,1],[102,3],[91,1],[91,3],[106,1],[106,2],[107,1],[107,1],[107,1],[107,1],[107,1],[107,1],[107,1],[107,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[112,1],[81,1],[81,1],[81,1],[81,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[90,1],[78,1],[78,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[119,1],[47,1],[47,2],[100,1],[100,2],[33,1],[33,1],[33,1],[33,1]],performAction:(0,c.K2)((function(t,e,s,n,r,i,u){var a=i.length-1;switch(r){case 2:case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 3:(!Array.isArray(i[a])||i[a].length>0)&&i[a-1].push(i[a]),this.$=i[a-1];break;case 4:case 181:case 44:case 54:case 76:case 179:this.$=i[a];break;case 11:n.setDirection("TB"),this.$="TB";break;case 12:n.setDirection(i[a-1]),this.$=i[a-1];break;case 27:this.$=i[a-1].nodes;break;case 33:this.$=n.addSubGraph(i[a-6],i[a-1],i[a-4]);break;case 34:this.$=n.addSubGraph(i[a-3],i[a-1],i[a-3]);break;case 35:this.$=n.addSubGraph(void 0,i[a-1],void 0);break;case 37:this.$=i[a].trim(),n.setAccTitle(this.$);break;case 38:case 39:this.$=i[a].trim(),n.setAccDescription(this.$);break;case 43:case 131:this.$=i[a-1]+i[a];break;case 45:n.addVertex(i[a-1][0],void 0,void 0,void 0,void 0,void 0,void 0,i[a]),n.addLink(i[a-3].stmt,i[a-1],i[a-2]),this.$={stmt:i[a-1],nodes:i[a-1].concat(i[a-3].nodes)};break;case 46:n.addLink(i[a-2].stmt,i[a],i[a-1]),this.$={stmt:i[a],nodes:i[a].concat(i[a-2].nodes)};break;case 47:n.addLink(i[a-3].stmt,i[a-1],i[a-2]),this.$={stmt:i[a-1],nodes:i[a-1].concat(i[a-3].nodes)};break;case 48:this.$={stmt:i[a-1],nodes:i[a-1]};break;case 49:n.addVertex(i[a-1][0],void 0,void 0,void 0,void 0,void 0,void 0,i[a]),this.$={stmt:i[a-1],nodes:i[a-1],shapeData:i[a]};break;case 50:this.$={stmt:i[a],nodes:i[a]};break;case 51:case 126:case 128:this.$=[i[a]];break;case 52:n.addVertex(i[a-5][0],void 0,void 0,void 0,void 0,void 0,void 0,i[a-4]),this.$=i[a-5].concat(i[a]);break;case 53:this.$=i[a-4].concat(i[a]);break;case 55:this.$=i[a-2],n.setClass(i[a-2],i[a]);break;case 56:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"square");break;case 57:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"doublecircle");break;case 58:this.$=i[a-5],n.addVertex(i[a-5],i[a-2],"circle");break;case 59:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"ellipse");break;case 60:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"stadium");break;case 61:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"subroutine");break;case 62:this.$=i[a-7],n.addVertex(i[a-7],i[a-1],"rect",void 0,void 0,void 0,Object.fromEntries([[i[a-5],i[a-3]]]));break;case 63:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"cylinder");break;case 64:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"round");break;case 65:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"diamond");break;case 66:this.$=i[a-5],n.addVertex(i[a-5],i[a-2],"hexagon");break;case 67:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"odd");break;case 68:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"trapezoid");break;case 69:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"inv_trapezoid");break;case 70:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"lean_right");break;case 71:this.$=i[a-3],n.addVertex(i[a-3],i[a-1],"lean_left");break;case 72:this.$=i[a],n.addVertex(i[a]);break;case 73:i[a-1].text=i[a],this.$=i[a-1];break;case 74:case 75:i[a-2].text=i[a-1],this.$=i[a-2];break;case 77:var o=n.destructLink(i[a],i[a-2]);this.$={type:o.type,stroke:o.stroke,length:o.length,text:i[a-1]};break;case 78:case 84:case 99:case 101:this.$={text:i[a],type:"text"};break;case 79:case 85:case 100:this.$={text:i[a-1].text+""+i[a],type:i[a-1].type};break;case 80:case 86:this.$={text:i[a],type:"string"};break;case 81:case 87:case 102:this.$={text:i[a],type:"markdown"};break;case 82:o=n.destructLink(i[a]),this.$={type:o.type,stroke:o.stroke,length:o.length};break;case 83:this.$=i[a-1];break;case 103:this.$=i[a-4],n.addClass(i[a-2],i[a]);break;case 104:this.$=i[a-4],n.setClass(i[a-2],i[a]);break;case 105:case 113:this.$=i[a-1],n.setClickEvent(i[a-1],i[a]);break;case 106:case 114:this.$=i[a-3],n.setClickEvent(i[a-3],i[a-2]),n.setTooltip(i[a-3],i[a]);break;case 107:this.$=i[a-2],n.setClickEvent(i[a-2],i[a-1],i[a]);break;case 108:this.$=i[a-4],n.setClickEvent(i[a-4],i[a-3],i[a-2]),n.setTooltip(i[a-4],i[a]);break;case 109:this.$=i[a-2],n.setLink(i[a-2],i[a]);break;case 110:this.$=i[a-4],n.setLink(i[a-4],i[a-2]),n.setTooltip(i[a-4],i[a]);break;case 111:this.$=i[a-4],n.setLink(i[a-4],i[a-2],i[a]);break;case 112:this.$=i[a-6],n.setLink(i[a-6],i[a-4],i[a]),n.setTooltip(i[a-6],i[a-2]);break;case 115:this.$=i[a-1],n.setLink(i[a-1],i[a]);break;case 116:this.$=i[a-3],n.setLink(i[a-3],i[a-2]),n.setTooltip(i[a-3],i[a]);break;case 117:this.$=i[a-3],n.setLink(i[a-3],i[a-2],i[a]);break;case 118:this.$=i[a-5],n.setLink(i[a-5],i[a-4],i[a]),n.setTooltip(i[a-5],i[a-2]);break;case 119:this.$=i[a-4],n.addVertex(i[a-2],void 0,void 0,i[a]);break;case 120:this.$=i[a-4],n.updateLink([i[a-2]],i[a]);break;case 121:this.$=i[a-4],n.updateLink(i[a-2],i[a]);break;case 122:this.$=i[a-8],n.updateLinkInterpolate([i[a-6]],i[a-2]),n.updateLink([i[a-6]],i[a]);break;case 123:this.$=i[a-8],n.updateLinkInterpolate(i[a-6],i[a-2]),n.updateLink(i[a-6],i[a]);break;case 124:this.$=i[a-6],n.updateLinkInterpolate([i[a-4]],i[a]);break;case 125:this.$=i[a-6],n.updateLinkInterpolate(i[a-4],i[a]);break;case 127:case 129:i[a-2].push(i[a]),this.$=i[a-2];break;case 180:case 182:this.$=i[a-1]+""+i[a];break;case 183:this.$={stmt:"dir",value:"TB"};break;case 184:this.$={stmt:"dir",value:"BT"};break;case 185:this.$={stmt:"dir",value:"RL"};break;case 186:this.$={stmt:"dir",value:"LR"}}}),"anonymous"),table:[{3:1,4:2,9:e,10:s,12:n},{1:[3]},t(r,i,{5:6}),{4:7,9:e,10:s,12:n},{4:8,9:e,10:s,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:u,9:a,10:o,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,33:24,34:d,36:p,38:A,42:28,43:38,44:g,45:39,47:40,60:f,83:y,84:k,85:b,86:E,87:m,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v,120:w,121:$,122:L,123:R},t(r,[2,9]),t(r,[2,10]),t(r,[2,11]),{8:[1,54],9:[1,55],10:I,15:53,18:56},t(K,[2,3]),t(K,[2,4]),t(K,[2,5]),t(K,[2,6]),t(K,[2,7]),t(K,[2,8]),{8:N,9:P,11:O,21:58,41:59,72:63,75:[1,64],77:[1,65]},{8:N,9:P,11:O,21:66},{8:N,9:P,11:O,21:67},{8:N,9:P,11:O,21:68},{8:N,9:P,11:O,21:69},{8:N,9:P,11:O,21:70},{8:N,9:P,10:[1,71],11:O,21:72},t(K,[2,36]),{35:[1,73]},{37:[1,74]},t(K,[2,39]),t(M,[2,50],{18:75,39:76,10:I,40:V}),{10:[1,78]},{10:[1,79]},{10:[1,80]},{10:[1,81]},{14:U,44:G,60:W,79:[1,85],88:Y,94:[1,82],96:[1,83],100:84,104:j,105:X,108:z,110:H,113:q,114:Q,115:Z,119:86},t(K,[2,183]),t(K,[2,184]),t(K,[2,185]),t(K,[2,186]),t(J,[2,51]),t(J,[2,54],{46:[1,98]}),t(tt,[2,72],{112:111,29:[1,99],44:g,48:[1,100],50:[1,101],52:[1,102],54:[1,103],56:[1,104],58:[1,105],60:f,63:[1,106],65:[1,107],67:[1,108],68:[1,109],70:[1,110],88:D,101:x,104:C,105:T,108:S,110:F,113:_,114:B,115:v}),t(et,[2,179]),t(et,[2,140]),t(et,[2,141]),t(et,[2,142]),t(et,[2,143]),t(et,[2,144]),t(et,[2,145]),t(et,[2,146]),t(et,[2,147]),t(et,[2,148]),t(et,[2,149]),t(et,[2,150]),t(r,[2,12]),t(r,[2,18]),t(r,[2,19]),{9:[1,112]},t(st,[2,26],{18:113,10:I}),t(K,[2,27]),{42:114,43:38,44:g,45:39,47:40,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v},t(K,[2,40]),t(K,[2,41]),t(K,[2,42]),t(nt,[2,76],{73:115,62:[1,117],74:[1,116]}),{76:118,78:119,79:[1,120],80:[1,121],115:rt,118:it},t([44,60,62,74,88,101,104,105,108,110,113,114,115],[2,82]),t(K,[2,28]),t(K,[2,29]),t(K,[2,30]),t(K,[2,31]),t(K,[2,32]),{10:ut,12:at,14:ot,27:ct,28:124,32:lt,44:ht,60:dt,75:pt,79:[1,126],80:[1,127],82:137,83:At,84:gt,85:ft,86:yt,87:kt,88:bt,89:Et,90:125,104:mt,108:Dt,110:xt,113:Ct,114:Tt,115:St},t(Ft,i,{5:150}),t(K,[2,37]),t(K,[2,38]),t(M,[2,48],{44:_t}),t(M,[2,49],{18:152,10:I,40:Bt}),t(J,[2,44]),{44:g,47:154,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v},{101:[1,155],102:156,104:[1,157]},{44:g,47:158,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v},{44:g,47:159,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v},t(vt,[2,105],{10:[1,160],95:[1,161]}),{79:[1,162]},t(vt,[2,113],{119:164,10:[1,163],14:U,44:G,60:W,88:Y,104:j,105:X,108:z,110:H,113:q,114:Q,115:Z}),t(vt,[2,115],{10:[1,165]}),t(wt,[2,181]),t(wt,[2,168]),t(wt,[2,169]),t(wt,[2,170]),t(wt,[2,171]),t(wt,[2,172]),t(wt,[2,173]),t(wt,[2,174]),t(wt,[2,175]),t(wt,[2,176]),t(wt,[2,177]),t(wt,[2,178]),{44:g,47:166,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v},{30:167,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{30:175,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{30:177,50:[1,176],67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{30:178,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{30:179,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{30:180,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{108:[1,181]},{30:182,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{30:183,65:[1,184],67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{30:185,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{30:186,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{30:187,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},t(et,[2,180]),t(r,[2,20]),t(st,[2,25]),t(M,[2,46],{39:188,18:189,10:I,40:V}),t(nt,[2,73],{10:[1,190]}),{10:[1,191]},{30:192,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{77:[1,193],78:194,115:rt,118:it},t(Pt,[2,78]),t(Pt,[2,80]),t(Pt,[2,81]),t(Pt,[2,166]),t(Pt,[2,167]),{8:N,9:P,10:ut,11:O,12:at,14:ot,21:196,27:ct,29:[1,195],32:lt,44:ht,60:dt,75:pt,82:137,83:At,84:gt,85:ft,86:yt,87:kt,88:bt,89:Et,90:197,104:mt,108:Dt,110:xt,113:Ct,114:Tt,115:St},t(Ot,[2,99]),t(Ot,[2,101]),t(Ot,[2,102]),t(Ot,[2,155]),t(Ot,[2,156]),t(Ot,[2,157]),t(Ot,[2,158]),t(Ot,[2,159]),t(Ot,[2,160]),t(Ot,[2,161]),t(Ot,[2,162]),t(Ot,[2,163]),t(Ot,[2,164]),t(Ot,[2,165]),t(Ot,[2,88]),t(Ot,[2,89]),t(Ot,[2,90]),t(Ot,[2,91]),t(Ot,[2,92]),t(Ot,[2,93]),t(Ot,[2,94]),t(Ot,[2,95]),t(Ot,[2,96]),t(Ot,[2,97]),t(Ot,[2,98]),{6:11,7:12,8:u,9:a,10:o,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,32:[1,198],33:24,34:d,36:p,38:A,42:28,43:38,44:g,45:39,47:40,60:f,83:y,84:k,85:b,86:E,87:m,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v,120:w,121:$,122:L,123:R},{10:I,18:199},{44:[1,200]},t(J,[2,43]),{10:[1,201],44:g,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:111,113:_,114:B,115:v},{10:[1,202]},{10:[1,203],105:[1,204]},t(Mt,[2,126]),{10:[1,205],44:g,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:111,113:_,114:B,115:v},{10:[1,206],44:g,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:111,113:_,114:B,115:v},{79:[1,207]},t(vt,[2,107],{10:[1,208]}),t(vt,[2,109],{10:[1,209]}),{79:[1,210]},t(wt,[2,182]),{79:[1,211],97:[1,212]},t(J,[2,55],{112:111,44:g,60:f,88:D,101:x,104:C,105:T,108:S,110:F,113:_,114:B,115:v}),{31:[1,213],67:$t,81:214,115:It,116:Kt,117:Nt},t(Vt,[2,84]),t(Vt,[2,86]),t(Vt,[2,87]),t(Vt,[2,151]),t(Vt,[2,152]),t(Vt,[2,153]),t(Vt,[2,154]),{49:[1,215],67:$t,81:214,115:It,116:Kt,117:Nt},{30:216,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{51:[1,217],67:$t,81:214,115:It,116:Kt,117:Nt},{53:[1,218],67:$t,81:214,115:It,116:Kt,117:Nt},{55:[1,219],67:$t,81:214,115:It,116:Kt,117:Nt},{57:[1,220],67:$t,81:214,115:It,116:Kt,117:Nt},{60:[1,221]},{64:[1,222],67:$t,81:214,115:It,116:Kt,117:Nt},{66:[1,223],67:$t,81:214,115:It,116:Kt,117:Nt},{30:224,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},{31:[1,225],67:$t,81:214,115:It,116:Kt,117:Nt},{67:$t,69:[1,226],71:[1,227],81:214,115:It,116:Kt,117:Nt},{67:$t,69:[1,229],71:[1,228],81:214,115:It,116:Kt,117:Nt},t(M,[2,45],{18:152,10:I,40:Bt}),t(M,[2,47],{44:_t}),t(nt,[2,75]),t(nt,[2,74]),{62:[1,230],67:$t,81:214,115:It,116:Kt,117:Nt},t(nt,[2,77]),t(Pt,[2,79]),{30:231,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},t(Ft,i,{5:232}),t(Ot,[2,100]),t(K,[2,35]),{43:233,44:g,45:39,47:40,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v},{10:I,18:234},{10:Ut,60:Gt,83:Wt,91:235,104:Yt,106:236,107:237,108:jt,109:Xt,110:zt,111:Ht},{10:Ut,60:Gt,83:Wt,91:246,103:[1,247],104:Yt,106:236,107:237,108:jt,109:Xt,110:zt,111:Ht},{10:Ut,60:Gt,83:Wt,91:248,103:[1,249],104:Yt,106:236,107:237,108:jt,109:Xt,110:zt,111:Ht},{104:[1,250]},{10:Ut,60:Gt,83:Wt,91:251,104:Yt,106:236,107:237,108:jt,109:Xt,110:zt,111:Ht},{44:g,47:252,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v},t(vt,[2,106]),{79:[1,253]},{79:[1,254],97:[1,255]},t(vt,[2,114]),t(vt,[2,116],{10:[1,256]}),t(vt,[2,117]),t(tt,[2,56]),t(Vt,[2,85]),t(tt,[2,57]),{51:[1,257],67:$t,81:214,115:It,116:Kt,117:Nt},t(tt,[2,64]),t(tt,[2,59]),t(tt,[2,60]),t(tt,[2,61]),{108:[1,258]},t(tt,[2,63]),t(tt,[2,65]),{66:[1,259],67:$t,81:214,115:It,116:Kt,117:Nt},t(tt,[2,67]),t(tt,[2,68]),t(tt,[2,70]),t(tt,[2,69]),t(tt,[2,71]),t([10,44,60,88,101,104,105,108,110,113,114,115],[2,83]),{31:[1,260],67:$t,81:214,115:It,116:Kt,117:Nt},{6:11,7:12,8:u,9:a,10:o,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,32:[1,261],33:24,34:d,36:p,38:A,42:28,43:38,44:g,45:39,47:40,60:f,83:y,84:k,85:b,86:E,87:m,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v,120:w,121:$,122:L,123:R},t(J,[2,53]),{43:262,44:g,45:39,47:40,60:f,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v},t(vt,[2,119],{105:qt}),t(Qt,[2,128],{107:264,10:Ut,60:Gt,83:Wt,104:Yt,108:jt,109:Xt,110:zt,111:Ht}),t(Zt,[2,130]),t(Zt,[2,132]),t(Zt,[2,133]),t(Zt,[2,134]),t(Zt,[2,135]),t(Zt,[2,136]),t(Zt,[2,137]),t(Zt,[2,138]),t(Zt,[2,139]),t(vt,[2,120],{105:qt}),{10:[1,265]},t(vt,[2,121],{105:qt}),{10:[1,266]},t(Mt,[2,127]),t(vt,[2,103],{105:qt}),t(vt,[2,104],{112:111,44:g,60:f,88:D,101:x,104:C,105:T,108:S,110:F,113:_,114:B,115:v}),t(vt,[2,108]),t(vt,[2,110],{10:[1,267]}),t(vt,[2,111]),{97:[1,268]},{51:[1,269]},{62:[1,270]},{66:[1,271]},{8:N,9:P,11:O,21:272},t(K,[2,34]),t(J,[2,52]),{10:Ut,60:Gt,83:Wt,104:Yt,106:273,107:237,108:jt,109:Xt,110:zt,111:Ht},t(Zt,[2,131]),{14:U,44:G,60:W,88:Y,100:274,104:j,105:X,108:z,110:H,113:q,114:Q,115:Z,119:86},{14:U,44:G,60:W,88:Y,100:275,104:j,105:X,108:z,110:H,113:q,114:Q,115:Z,119:86},{97:[1,276]},t(vt,[2,118]),t(tt,[2,58]),{30:277,67:$t,79:Lt,80:Rt,81:168,115:It,116:Kt,117:Nt},t(tt,[2,66]),t(Ft,i,{5:278}),t(Qt,[2,129],{107:264,10:Ut,60:Gt,83:Wt,104:Yt,108:jt,109:Xt,110:zt,111:Ht}),t(vt,[2,124],{119:164,10:[1,279],14:U,44:G,60:W,88:Y,104:j,105:X,108:z,110:H,113:q,114:Q,115:Z}),t(vt,[2,125],{119:164,10:[1,280],14:U,44:G,60:W,88:Y,104:j,105:X,108:z,110:H,113:q,114:Q,115:Z}),t(vt,[2,112]),{31:[1,281],67:$t,81:214,115:It,116:Kt,117:Nt},{6:11,7:12,8:u,9:a,10:o,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,32:[1,282],33:24,34:d,36:p,38:A,42:28,43:38,44:g,45:39,47:40,60:f,83:y,84:k,85:b,86:E,87:m,88:D,101:x,104:C,105:T,108:S,110:F,112:41,113:_,114:B,115:v,120:w,121:$,122:L,123:R},{10:Ut,60:Gt,83:Wt,91:283,104:Yt,106:236,107:237,108:jt,109:Xt,110:zt,111:Ht},{10:Ut,60:Gt,83:Wt,91:284,104:Yt,106:236,107:237,108:jt,109:Xt,110:zt,111:Ht},t(tt,[2,62]),t(K,[2,33]),t(vt,[2,122],{105:qt}),t(vt,[2,123],{105:qt})],defaultActions:{},parseError:(0,c.K2)((function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)}),"parseError"),parse:(0,c.K2)((function(t){var e=this,s=[0],n=[],r=[null],i=[],u=this.table,a="",o=0,l=0,h=0,d=i.slice.call(arguments,1),p=Object.create(this.lexer),A={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(A.yy[g]=this.yy[g]);p.setInput(t,A.yy),A.yy.lexer=p,A.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;i.push(f);var y=p.options&&p.options.ranges;function k(){var t;return"number"!=typeof(t=n.pop()||p.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof A.yy.parseError?this.parseError=A.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,c.K2)((function(t){s.length=s.length-2*t,r.length=r.length-t,i.length=i.length-t}),"popStack"),(0,c.K2)(k,"lex");for(var b,E,m,D,x,C,T,S,F,_={};;){if(m=s[s.length-1],this.defaultActions[m]?D=this.defaultActions[m]:(null==b&&(b=k()),D=u[m]&&u[m][b]),void 0===D||!D.length||!D[0]){var B;for(C in F=[],u[m])this.terminals_[C]&&C>2&&F.push("'"+this.terminals_[C]+"'");B=p.showPosition?"Parse error on line "+(o+1)+":\n"+p.showPosition()+"\nExpecting "+F.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(o+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:p.match,token:this.terminals_[b]||b,line:p.yylineno,loc:f,expected:F})}if(D[0]instanceof Array&&D.length>1)throw new Error("Parse Error: multiple actions possible at state: "+m+", token: "+b);switch(D[0]){case 1:s.push(b),r.push(p.yytext),i.push(p.yylloc),s.push(D[1]),b=null,E?(b=E,E=null):(l=p.yyleng,a=p.yytext,o=p.yylineno,f=p.yylloc,h>0&&h--);break;case 2:if(T=this.productions_[D[1]][1],_.$=r[r.length-T],_._$={first_line:i[i.length-(T||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(T||1)].first_column,last_column:i[i.length-1].last_column},y&&(_._$.range=[i[i.length-(T||1)].range[0],i[i.length-1].range[1]]),void 0!==(x=this.performAction.apply(_,[a,l,o,A.yy,D[1],r,i].concat(d))))return x;T&&(s=s.slice(0,-1*T*2),r=r.slice(0,-1*T),i=i.slice(0,-1*T)),s.push(this.productions_[D[1]][0]),r.push(_.$),i.push(_._$),S=u[s[s.length-2]][s[s.length-1]],s.push(S);break;case 3:return!0}}return!0}),"parse")},te=function(){return{EOF:1,parseError:(0,c.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,c.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,c.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,c.K2)((function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===n.length?this.yylloc.first_column:0)+n[n.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,c.K2)((function(){return this._more=!0,this}),"more"),reject:(0,c.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,c.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,c.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,c.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,c.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,c.K2)((function(t,e){var s,n,r;if(this.options.backtrack_lexer&&(r={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(r.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var i in r)this[i]=r[i];return!1}return!1}),"test_match"),next:(0,c.K2)((function(){if(this.done)return this.EOF;var t,e,s,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),i=0;ie[0].length)){if(e=s,n=i,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,r[i])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,r[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,c.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,c.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,c.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,c.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,c.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,c.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,c.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,c.K2)((function(t,e,s,n){switch(s){case 0:return this.begin("acc_title"),34;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),36;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:case 12:case 14:case 17:case 20:case 23:case 33:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),e.yytext="",40;case 8:return this.pushState("shapeDataStr"),40;case 9:return this.popState(),40;case 10:const s=/\n\s*/g;return e.yytext=e.yytext.replace(s,"
"),40;case 11:return 40;case 13:this.begin("callbackname");break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 94;case 18:return 95;case 19:return"MD_STR";case 21:this.begin("md_string");break;case 22:return"STR";case 24:this.pushState("string");break;case 25:return 83;case 26:return 101;case 27:return 84;case 28:return 103;case 29:return 85;case 30:return 86;case 31:return 96;case 32:this.begin("click");break;case 34:return 87;case 35:case 36:case 37:return t.lex.firstGraph()&&this.begin("dir"),12;case 38:return 27;case 39:return 32;case 40:case 41:case 42:case 43:return 97;case 44:return this.popState(),13;case 45:case 46:case 47:case 48:case 49:case 50:case 51:case 52:case 53:case 54:return this.popState(),14;case 55:return 120;case 56:return 121;case 57:return 122;case 58:return 123;case 59:return 104;case 60:case 101:return 110;case 61:return 46;case 62:return 60;case 63:case 102:return 44;case 64:return 8;case 65:return 105;case 66:case 100:return 114;case 67:case 70:case 73:return this.popState(),77;case 68:return this.pushState("edgeText"),75;case 69:case 72:case 75:return 118;case 71:return this.pushState("thickEdgeText"),75;case 74:return this.pushState("dottedEdgeText"),75;case 76:return 77;case 77:return this.popState(),53;case 78:case 114:return"TEXT";case 79:return this.pushState("ellipseText"),52;case 80:return this.popState(),55;case 81:return this.pushState("text"),54;case 82:return this.popState(),57;case 83:return this.pushState("text"),56;case 84:return 58;case 85:return this.pushState("text"),67;case 86:return this.popState(),64;case 87:return this.pushState("text"),63;case 88:return this.popState(),49;case 89:return this.pushState("text"),48;case 90:return this.popState(),69;case 91:return this.popState(),71;case 92:return 116;case 93:return this.pushState("trapText"),68;case 94:return this.pushState("trapText"),70;case 95:return 117;case 96:return 67;case 97:return 89;case 98:return"SEP";case 99:return 88;case 103:return 108;case 104:return 113;case 105:return 115;case 106:return this.popState(),62;case 107:return this.pushState("text"),62;case 108:return this.popState(),51;case 109:return this.pushState("text"),50;case 110:return this.popState(),31;case 111:return this.pushState("text"),29;case 112:return this.popState(),66;case 113:return this.pushState("text"),65;case 115:return"QUOTE";case 116:return 9;case 117:return 10;case 118:return 11}}),"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},shapeData:{rules:[8,11,12,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},callbackargs:{rules:[17,18,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},callbackname:{rules:[14,15,16,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},href:{rules:[21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},click:{rules:[21,24,33,34,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},dottedEdgeText:{rules:[21,24,73,75,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},thickEdgeText:{rules:[21,24,70,72,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},edgeText:{rules:[21,24,67,69,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},trapText:{rules:[21,24,76,79,81,83,87,89,90,91,92,93,94,107,109,111,113],inclusive:!1},ellipseText:{rules:[21,24,76,77,78,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},text:{rules:[21,24,76,79,80,81,82,83,86,87,88,89,93,94,106,107,108,109,110,111,112,113,114],inclusive:!1},vertex:{rules:[21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},dir:{rules:[21,24,44,45,46,47,48,49,50,51,52,53,54,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},acc_descr:{rules:[3,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},acc_title:{rules:[1,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},md_string:{rules:[19,20,21,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},string:{rules:[21,22,23,24,76,79,81,83,87,89,93,94,107,109,111,113],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,55,56,57,58,59,60,61,62,63,64,65,66,67,68,70,71,73,74,76,79,81,83,84,85,87,89,93,94,95,96,97,98,99,100,101,102,103,104,105,107,109,111,113,115,116,117,118],inclusive:!0}}}}();function ee(){this.yy={}}return Jt.lexer=te,(0,c.K2)(ee,"Parser"),ee.prototype=Jt,Jt.Parser=ee,new ee}();kt.parser=kt;var bt=kt,Et=(0,c.K2)(((t,e)=>{const s=h.A,n=s(t,"r"),r=s(t,"g"),i=s(t,"b");return d.A(n,r,i,e)}),"fade"),mt={parser:bt,db:ft,renderer:yt,styles:(0,c.K2)((t=>`.label {\n font-family: ${t.fontFamily};\n color: ${t.nodeTextColor||t.textColor};\n }\n .cluster-label text {\n fill: ${t.titleColor};\n }\n .cluster-label span {\n color: ${t.titleColor};\n }\n .cluster-label span p {\n background-color: transparent;\n }\n\n .label text,span {\n fill: ${t.nodeTextColor||t.textColor};\n color: ${t.nodeTextColor||t.textColor};\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n .rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label {\n text-anchor: middle;\n }\n // .flowchart-label .text-outer-tspan {\n // text-anchor: middle;\n // }\n // .flowchart-label .text-inner-tspan {\n // text-anchor: start;\n // }\n\n .node .katex path {\n fill: #000;\n stroke: #000;\n stroke-width: 1px;\n }\n\n .rough-node .label,.node .label, .image-shape .label, .icon-shape .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n\n .root .anchor path {\n fill: ${t.lineColor} !important;\n stroke-width: 0;\n stroke: ${t.lineColor};\n }\n\n .arrowheadPath {\n fill: ${t.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${t.lineColor};\n stroke-width: 2.0px;\n }\n\n .flowchart-link {\n stroke: ${t.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${t.edgeLabelBackground};\n p {\n background-color: ${t.edgeLabelBackground};\n }\n rect {\n opacity: 0.5;\n background-color: ${t.edgeLabelBackground};\n fill: ${t.edgeLabelBackground};\n }\n text-align: center;\n }\n\n /* For html labels only */\n .labelBkg {\n background-color: ${Et(t.edgeLabelBackground,.5)};\n // background-color:\n }\n\n .cluster rect {\n fill: ${t.clusterBkg};\n stroke: ${t.clusterBorder};\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ${t.titleColor};\n }\n\n .cluster span {\n color: ${t.titleColor};\n }\n /* .cluster div {\n color: ${t.titleColor};\n } */\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ${t.fontFamily};\n font-size: 12px;\n background: ${t.tertiaryColor};\n border: 1px solid ${t.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .flowchartTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n }\n\n rect.text {\n fill: none;\n stroke-width: 0;\n }\n\n .icon-shape, .image-shape {\n background-color: ${t.edgeLabelBackground};\n p {\n background-color: ${t.edgeLabelBackground};\n padding: 2px;\n }\n rect {\n opacity: 0.5;\n background-color: ${t.edgeLabelBackground};\n fill: ${t.edgeLabelBackground};\n }\n text-align: center;\n }\n`),"getStyles"),init:(0,c.K2)((t=>{t.flowchart||(t.flowchart={}),t.layout&&(0,c.XV)({layout:t.layout}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,(0,c.XV)({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}}),ft.clear(),ft.setGen("gen-2")}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/339-ed783b3e.chunk.min.js b/themes/hugo-geekdoc/static/js/339-ed783b3e.chunk.min.js deleted file mode 100644 index 0930937b3..000000000 --- a/themes/hugo-geekdoc/static/js/339-ed783b3e.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[339],{3339:(t,n,e)=>{e.d(n,{diagram:()=>it});var i=e(798),s=e(4852);function r(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e>n||void 0===e&&n>=n)&&(e=n);else{let i=-1;for(let s of t)null!=(s=n(s,++i,t))&&(e>s||void 0===e&&s>=s)&&(e=s)}return e}function o(t){return t.target.depth}function c(t,n){return t.sourceLinks.length?t.depth:n-1}function a(t,n){let e=0;if(void 0===n)for(let n of t)(n=+n)&&(e+=n);else{let i=-1;for(let s of t)(s=+n(s,++i,t))&&(e+=s)}return e}function l(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e=n)&&(e=n);else{let i=-1;for(let s of t)null!=(s=n(s,++i,t))&&(e=s)&&(e=s)}return e}function h(t){return function(){return t}}function u(t,n){return y(t.source,n.source)||t.index-n.index}function f(t,n){return y(t.target,n.target)||t.index-n.index}function y(t,n){return t.y0-n.y0}function d(t){return t.value}function p(t){return t.index}function g(t){return t.nodes}function _(t){return t.links}function k(t,n){const e=t.get(n);if(!e)throw new Error("missing: "+n);return e}function x({nodes:t}){for(const n of t){let t=n.y0,e=t;for(const e of n.sourceLinks)e.y0=t+e.width/2,t+=e.width;for(const t of n.targetLinks)t.y1=e+t.width/2,e+=t.width}}var m=Math.PI,v=2*m,b=1e-6,w=v-b;function L(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function S(){return new L}L.prototype=S.prototype={constructor:L,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,e,i){this._+="Q"+ +t+","+ +n+","+(this._x1=+e)+","+(this._y1=+i)},bezierCurveTo:function(t,n,e,i,s,r){this._+="C"+ +t+","+ +n+","+ +e+","+ +i+","+(this._x1=+s)+","+(this._y1=+r)},arcTo:function(t,n,e,i,s){t=+t,n=+n,e=+e,i=+i,s=+s;var r=this._x1,o=this._y1,c=e-t,a=i-n,l=r-t,h=o-n,u=l*l+h*h;if(s<0)throw new Error("negative radius: "+s);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(u>b)if(Math.abs(h*c-a*l)>b&&s){var f=e-r,y=i-o,d=c*c+a*a,p=f*f+y*y,g=Math.sqrt(d),_=Math.sqrt(u),k=s*Math.tan((m-Math.acos((d+u-p)/(2*g*_)))/2),x=k/_,v=k/g;Math.abs(x-1)>b&&(this._+="L"+(t+x*l)+","+(n+x*h)),this._+="A"+s+","+s+",0,0,"+ +(h*f>l*y)+","+(this._x1=t+v*c)+","+(this._y1=n+v*a)}else this._+="L"+(this._x1=t)+","+(this._y1=n)},arc:function(t,n,e,i,s,r){t=+t,n=+n,r=!!r;var o=(e=+e)*Math.cos(i),c=e*Math.sin(i),a=t+o,l=n+c,h=1^r,u=r?i-s:s-i;if(e<0)throw new Error("negative radius: "+e);null===this._x1?this._+="M"+a+","+l:(Math.abs(this._x1-a)>b||Math.abs(this._y1-l)>b)&&(this._+="L"+a+","+l),e&&(u<0&&(u=u%v+v),u>w?this._+="A"+e+","+e+",0,1,"+h+","+(t-o)+","+(n-c)+"A"+e+","+e+",0,1,"+h+","+(this._x1=a)+","+(this._y1=l):u>b&&(this._+="A"+e+","+e+",0,"+ +(u>=m)+","+h+","+(this._x1=t+e*Math.cos(s))+","+(this._y1=n+e*Math.sin(s))))},rect:function(t,n,e,i){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +e+"v"+ +i+"h"+-e+"Z"},toString:function(){return this._}};const E=S;var A=Array.prototype.slice;function K(t){return function(){return t}}function M(t){return t[0]}function I(t){return t[1]}function T(t){return t.source}function D(t){return t.target}function N(t,n,e,i,s){t.moveTo(n,e),t.bezierCurveTo(n=(n+i)/2,e,n,s,i,s)}function P(t){return[t.source.x1,t.y0]}function C(t){return[t.target.x0,t.y1]}function O(){return function(t){var n=T,e=D,i=M,s=I,r=null;function o(){var o,c=A.call(arguments),a=n.apply(this,c),l=e.apply(this,c);if(r||(r=o=E()),t(r,+i.apply(this,(c[0]=a,c)),+s.apply(this,c),+i.apply(this,(c[0]=l,c)),+s.apply(this,c)),o)return r=null,o+""||null}return o.source=function(t){return arguments.length?(n=t,o):n},o.target=function(t){return arguments.length?(e=t,o):e},o.x=function(t){return arguments.length?(i="function"==typeof t?t:K(+t),o):i},o.y=function(t){return arguments.length?(s="function"==typeof t?t:K(+t),o):s},o.context=function(t){return arguments.length?(r=null==t?null:t,o):r},o}(N).source(P).target(C)}var $=function(){var t=(0,i.K2)((function(t,n,e,i){for(e=e||{},i=t.length;i--;e[t[i]]=n);return e}),"o"),n=[1,9],e=[1,10],s=[1,5,10,12],r={trace:(0,i.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:(0,i.K2)((function(t,n,e,i,s,r,o){var c=r.length-1;switch(s){case 7:const t=i.findOrCreateNode(r[c-4].trim().replaceAll('""','"')),n=i.findOrCreateNode(r[c-2].trim().replaceAll('""','"')),e=parseFloat(r[c].trim());i.addLink(t,n,e);break;case 8:case 9:case 11:this.$=r[c];break;case 10:this.$=r[c-1]}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:e},{1:[2,6],7:11,10:[1,12]},t(e,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(s,[2,8]),t(s,[2,9]),{19:[1,16]},t(s,[2,11]),{1:[2,1]},{1:[2,5]},t(e,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:e},{15:18,16:7,17:8,18:n,20:e},{18:[1,19]},t(e,[2,3]),{12:[1,20]},t(s,[2,10]),{15:21,16:7,17:8,18:n,20:e},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:(0,i.K2)((function(t,n){if(!n.recoverable){var e=new Error(t);throw e.hash=n,e}this.trace(t)}),"parseError"),parse:(0,i.K2)((function(t){var n=this,e=[0],s=[],r=[null],o=[],c=this.table,a="",l=0,h=0,u=0,f=o.slice.call(arguments,1),y=Object.create(this.lexer),d={yy:{}};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(d.yy[p]=this.yy[p]);y.setInput(t,d.yy),d.yy.lexer=y,d.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var g=y.yylloc;o.push(g);var _=y.options&&y.options.ranges;function k(){var t;return"number"!=typeof(t=s.pop()||y.lex()||1)&&(t instanceof Array&&(t=(s=t).pop()),t=n.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)((function(t){e.length=e.length-2*t,r.length=r.length-t,o.length=o.length-t}),"popStack"),(0,i.K2)(k,"lex");for(var x,m,v,b,w,L,S,E,A,K={};;){if(v=e[e.length-1],this.defaultActions[v]?b=this.defaultActions[v]:(null==x&&(x=k()),b=c[v]&&c[v][x]),void 0===b||!b.length||!b[0]){var M;for(L in A=[],c[v])this.terminals_[L]&&L>2&&A.push("'"+this.terminals_[L]+"'");M=y.showPosition?"Parse error on line "+(l+1)+":\n"+y.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==x?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(M,{text:y.match,token:this.terminals_[x]||x,line:y.yylineno,loc:g,expected:A})}if(b[0]instanceof Array&&b.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+x);switch(b[0]){case 1:e.push(x),r.push(y.yytext),o.push(y.yylloc),e.push(b[1]),x=null,m?(x=m,m=null):(h=y.yyleng,a=y.yytext,l=y.yylineno,g=y.yylloc,u>0&&u--);break;case 2:if(S=this.productions_[b[1]][1],K.$=r[r.length-S],K._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},_&&(K._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(w=this.performAction.apply(K,[a,h,l,d.yy,b[1],r,o].concat(f))))return w;S&&(e=e.slice(0,-1*S*2),r=r.slice(0,-1*S),o=o.slice(0,-1*S)),e.push(this.productions_[b[1]][0]),r.push(K.$),o.push(K._$),E=c[e[e.length-2]][e[e.length-1]],e.push(E);break;case 3:return!0}}return!0}),"parse")},o=function(){return{EOF:1,parseError:(0,i.K2)((function(t,n){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,n)}),"parseError"),setInput:(0,i.K2)((function(t,n){return this.yy=n||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,i.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,i.K2)((function(t){var n=t.length,e=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),e.length-1&&(this.yylineno-=e.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:e?(e.length===i.length?this.yylloc.first_column:0)+i[i.length-e.length].length-e[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,i.K2)((function(){return this._more=!0,this}),"more"),reject:(0,i.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,i.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,i.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,i.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,i.K2)((function(){var t=this.pastInput(),n=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+n+"^"}),"showPosition"),test_match:(0,i.K2)((function(t,n){var e,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,n,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e)return e;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1}),"test_match"),next:(0,i.K2)((function(){if(this.done)return this.EOF;var t,n,e,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;rn[0].length)){if(n=e,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(e,s[r])))return t;if(this._backtrack){n=!1;continue}return!1}if(!this.options.flex)break}return n?!1!==(t=this.test_match(n,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,i.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,i.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,i.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,i.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,i.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,i.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,i.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)((function(t,n,e,i){switch(e){case 0:return this.pushState("csv"),4;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;case 5:return 20;case 6:return this.popState("escaped_text"),18;case 7:return 19}}),"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[1,2,3,4,5,6,7],inclusive:!1},escaped_text:{rules:[6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}}}();function c(){this.yy={}}return r.lexer=o,(0,i.K2)(c,"Parser"),c.prototype=r,r.Parser=c,new c}();$.parser=$;var j=$,z=[],U=[],F=new Map,W=(0,i.K2)((()=>{z=[],U=[],F=new Map,(0,i.IU)()}),"clear"),G=class{constructor(t,n,e=0){this.source=t,this.target=n,this.value=e}static{(0,i.K2)(this,"SankeyLink")}},V=(0,i.K2)(((t,n,e)=>{z.push(new G(t,n,e))}),"addLink"),X=class{constructor(t){this.ID=t}static{(0,i.K2)(this,"SankeyNode")}},Y=(0,i.K2)((t=>{t=i.Y2.sanitizeText(t,(0,i.D7)());let n=F.get(t);return void 0===n&&(n=new X(t),F.set(t,n),U.push(n)),n}),"findOrCreateNode"),q=(0,i.K2)((()=>U),"getNodes"),Q=(0,i.K2)((()=>z),"getLinks"),R=(0,i.K2)((()=>({nodes:U.map((t=>({id:t.ID}))),links:z.map((t=>({source:t.source.ID,target:t.target.ID,value:t.value})))})),"getGraph"),B={nodesMap:F,getConfig:(0,i.K2)((()=>(0,i.D7)().sankey),"getConfig"),getNodes:q,getLinks:Q,getGraph:R,addLink:V,findOrCreateNode:Y,getAccTitle:i.iN,setAccTitle:i.SV,getAccDescription:i.m7,setAccDescription:i.EI,getDiagramTitle:i.ab,setDiagramTitle:i.ke,clear:W},Z=class t{static{(0,i.K2)(this,"Uid")}static{this.count=0}static next(n){return new t(n+ ++t.count)}constructor(t){this.id=t,this.href=`#${t}`}toString(){return"url("+this.href+")"}},H={left:function(t){return t.depth},right:function(t,n){return n-1-t.height},center:function(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?r(t.sourceLinks,o)-1:0},justify:c},J=(0,i.K2)((function(t,n,e,o){const{securityLevel:m,sankey:v}=(0,i.D7)(),b=i.ME.sankey;let w;"sandbox"===m&&(w=(0,s.Ltv)("#i"+n));const L="sandbox"===m?(0,s.Ltv)(w.nodes()[0].contentDocument.body):(0,s.Ltv)("body"),S="sandbox"===m?L.select(`[id="${n}"]`):(0,s.Ltv)(`[id="${n}"]`),E=v?.width??b.width,A=v?.height??b.width,K=v?.useMaxWidth??b.useMaxWidth,M=v?.nodeAlignment??b.nodeAlignment,I=v?.prefix??b.prefix,T=v?.suffix??b.suffix,D=v?.showValues??b.showValues,N=o.db.getGraph(),P=H[M];(function(){let t,n,e,i=0,s=0,o=1,m=1,v=24,b=8,w=p,L=c,S=g,E=_,A=6;function K(){const c={nodes:S.apply(null,arguments),links:E.apply(null,arguments)};return function({nodes:t,links:n}){for(const[n,e]of t.entries())e.index=n,e.sourceLinks=[],e.targetLinks=[];const i=new Map(t.map(((n,e)=>[w(n,e,t),n])));for(const[t,e]of n.entries()){e.index=t;let{source:n,target:s}=e;"object"!=typeof n&&(n=e.source=k(i,n)),"object"!=typeof s&&(s=e.target=k(i,s)),n.sourceLinks.push(e),s.targetLinks.push(e)}if(null!=e)for(const{sourceLinks:n,targetLinks:i}of t)n.sort(e),i.sort(e)}(c),function({nodes:t}){for(const n of t)n.value=void 0===n.fixedValue?Math.max(a(n.sourceLinks,d),a(n.targetLinks,d)):n.fixedValue}(c),function({nodes:t}){const n=t.length;let e=new Set(t),i=new Set,s=0;for(;e.size;){for(const t of e){t.depth=s;for(const{target:n}of t.sourceLinks)i.add(n)}if(++s>n)throw new Error("circular link");e=i,i=new Set}}(c),function({nodes:t}){const n=t.length;let e=new Set(t),i=new Set,s=0;for(;e.size;){for(const t of e){t.height=s;for(const{source:n}of t.targetLinks)i.add(n)}if(++s>n)throw new Error("circular link");e=i,i=new Set}}(c),function(e){const c=function({nodes:t}){const e=l(t,(t=>t.depth))+1,s=(o-i-v)/(e-1),r=new Array(e);for(const n of t){const t=Math.max(0,Math.min(e-1,Math.floor(L.call(null,n,e))));n.layer=t,n.x0=i+t*s,n.x1=n.x0+v,r[t]?r[t].push(n):r[t]=[n]}if(n)for(const t of r)t.sort(n);return r}(e);t=Math.min(b,(m-s)/(l(c,(t=>t.length))-1)),function(n){const e=r(n,(n=>(m-s-(n.length-1)*t)/a(n,d)));for(const i of n){let n=s;for(const s of i){s.y0=n,s.y1=n+s.value*e,n=s.y1+t;for(const t of s.sourceLinks)t.width=t.value*e}n=(m-n+t)/(i.length+1);for(let t=0;t0))continue;let s=(n/i-t.y0)*e;t.y0+=s,t.y1+=s,P(t)}void 0===n&&r.sort(y),T(r,i)}}function I(t,e,i){for(let s=t.length-2;s>=0;--s){const r=t[s];for(const t of r){let n=0,i=0;for(const{target:e,value:s}of t.sourceLinks){let r=s*(e.layer-t.layer);n+=$(t,e)*r,i+=r}if(!(i>0))continue;let s=(n/i-t.y0)*e;t.y0+=s,t.y1+=s,P(t)}void 0===n&&r.sort(y),T(r,i)}}function T(n,e){const i=n.length>>1,r=n[i];N(n,r.y0-t,i-1,e),D(n,r.y1+t,i+1,e),N(n,m,n.length-1,e),D(n,s,0,e)}function D(n,e,i,s){for(;i1e-6&&(r.y0+=o,r.y1+=o),e=r.y1+t}}function N(n,e,i,s){for(;i>=0;--i){const r=n[i],o=(r.y1-e)*s;o>1e-6&&(r.y0-=o,r.y1-=o),e=r.y0-t}}function P({sourceLinks:t,targetLinks:n}){if(void 0===e){for(const{source:{sourceLinks:t}}of n)t.sort(f);for(const{target:{targetLinks:n}}of t)n.sort(u)}}function C(t){if(void 0===e)for(const{sourceLinks:n,targetLinks:e}of t)n.sort(f),e.sort(u)}function O(n,e){let i=n.y0-(n.sourceLinks.length-1)*t/2;for(const{target:s,width:r}of n.sourceLinks){if(s===e)break;i+=r+t}for(const{source:t,width:s}of e.targetLinks){if(t===n)break;i-=s}return i}function $(n,e){let i=e.y0-(e.targetLinks.length-1)*t/2;for(const{source:s,width:r}of e.targetLinks){if(s===n)break;i+=r+t}for(const{target:t,width:s}of n.sourceLinks){if(t===e)break;i-=s}return i}return K.update=function(t){return x(t),t},K.nodeId=function(t){return arguments.length?(w="function"==typeof t?t:h(t),K):w},K.nodeAlign=function(t){return arguments.length?(L="function"==typeof t?t:h(t),K):L},K.nodeSort=function(t){return arguments.length?(n=t,K):n},K.nodeWidth=function(t){return arguments.length?(v=+t,K):v},K.nodePadding=function(n){return arguments.length?(b=t=+n,K):b},K.nodes=function(t){return arguments.length?(S="function"==typeof t?t:h(t),K):S},K.links=function(t){return arguments.length?(E="function"==typeof t?t:h(t),K):E},K.linkSort=function(t){return arguments.length?(e=t,K):e},K.size=function(t){return arguments.length?(i=s=0,o=+t[0],m=+t[1],K):[o-i,m-s]},K.extent=function(t){return arguments.length?(i=+t[0][0],o=+t[1][0],s=+t[0][1],m=+t[1][1],K):[[i,s],[o,m]]},K.iterations=function(t){return arguments.length?(A=+t,K):A},K})().nodeId((t=>t.id)).nodeWidth(10).nodePadding(10+(D?15:0)).nodeAlign(P).extent([[0,0],[E,A]])(N);const C=(0,s.UMr)(s.zt);S.append("g").attr("class","nodes").selectAll(".node").data(N.nodes).join("g").attr("class","node").attr("id",(t=>(t.uid=Z.next("node-")).id)).attr("transform",(function(t){return"translate("+t.x0+","+t.y0+")"})).attr("x",(t=>t.x0)).attr("y",(t=>t.y0)).append("rect").attr("height",(t=>t.y1-t.y0)).attr("width",(t=>t.x1-t.x0)).attr("fill",(t=>C(t.id)));const $=(0,i.K2)((({id:t,value:n})=>D?`${t}\n${I}${Math.round(100*n)/100}${T}`:t),"getText");S.append("g").attr("class","node-labels").attr("font-family","sans-serif").attr("font-size",14).selectAll("text").data(N.nodes).join("text").attr("x",(t=>t.x0(t.y1+t.y0)/2)).attr("dy",(D?"0":"0.35")+"em").attr("text-anchor",(t=>t.x0(t.uid=Z.next("linearGradient-")).id)).attr("gradientUnits","userSpaceOnUse").attr("x1",(t=>t.source.x1)).attr("x2",(t=>t.target.x0));t.append("stop").attr("offset","0%").attr("stop-color",(t=>C(t.source.id))),t.append("stop").attr("offset","100%").attr("stop-color",(t=>C(t.target.id)))}let U;switch(z){case"gradient":U=(0,i.K2)((t=>t.uid),"coloring");break;case"source":U=(0,i.K2)((t=>C(t.source.id)),"coloring");break;case"target":U=(0,i.K2)((t=>C(t.target.id)),"coloring");break;default:U=z}j.append("path").attr("d",O()).attr("stroke",U).attr("stroke-width",(t=>Math.max(1,t.width))),(0,i.ot)(void 0,S,0,K)}),"draw"),tt={draw:J},nt=(0,i.K2)((t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,"\n").trim()),"prepareTextForParsing"),et=j.parse.bind(j);j.parse=t=>et(nt(t));var it={parser:j,db:B,renderer:tt}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/344-91b41751.chunk.min.js b/themes/hugo-geekdoc/static/js/344-91b41751.chunk.min.js new file mode 100644 index 000000000..345878f5a --- /dev/null +++ b/themes/hugo-geekdoc/static/js/344-91b41751.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[344],{9344:(t,i,e)=>{e.d(i,{diagram:()=>J});var s=e(2382),n=e(5522),a=e(1661),h=e(32),o=e(4852),r=function(){var t=(0,h.K2)((function(t,i,e,s){for(e=e||{},s=t.length;s--;e[t[s]]=i);return e}),"o"),i=[1,10,12,14,16,18,19,21,23],e=[2,6],s=[1,3],n=[1,5],a=[1,6],o=[1,7],r=[1,5,10,12,14,16,18,19,21,23,34,35,36],l=[1,25],c=[1,26],g=[1,28],u=[1,29],x=[1,30],d=[1,31],p=[1,32],f=[1,33],y=[1,34],m=[1,35],b=[1,36],A=[1,37],S=[1,43],C=[1,42],w=[1,47],k=[1,50],_=[1,10,12,14,16,18,19,21,23,34,35,36],T=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],R=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],D=[1,64],L={trace:(0,h.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:(0,h.K2)((function(t,i,e,s,n,a,h){var o=a.length-1;switch(n){case 5:s.setOrientation(a[o]);break;case 9:s.setDiagramTitle(a[o].text.trim());break;case 12:s.setLineData({text:"",type:"text"},a[o]);break;case 13:s.setLineData(a[o-1],a[o]);break;case 14:s.setBarData({text:"",type:"text"},a[o]);break;case 15:s.setBarData(a[o-1],a[o]);break;case 16:this.$=a[o].trim(),s.setAccTitle(this.$);break;case 17:case 18:this.$=a[o].trim(),s.setAccDescription(this.$);break;case 19:case 27:this.$=a[o-1];break;case 20:this.$=[Number(a[o-2]),...a[o]];break;case 21:this.$=[Number(a[o])];break;case 22:s.setXAxisTitle(a[o]);break;case 23:s.setXAxisTitle(a[o-1]);break;case 24:s.setXAxisTitle({type:"text",text:""});break;case 25:s.setXAxisBand(a[o]);break;case 26:s.setXAxisRangeData(Number(a[o-2]),Number(a[o]));break;case 28:this.$=[a[o-2],...a[o]];break;case 29:this.$=[a[o]];break;case 30:s.setYAxisTitle(a[o]);break;case 31:s.setYAxisTitle(a[o-1]);break;case 32:s.setYAxisTitle({type:"text",text:""});break;case 33:s.setYAxisRangeData(Number(a[o-2]),Number(a[o]));break;case 37:case 38:this.$={text:a[o],type:"text"};break;case 39:this.$={text:a[o],type:"markdown"};break;case 40:this.$=a[o];break;case 41:this.$=a[o-1]+""+a[o]}}),"anonymous"),table:[t(i,e,{3:1,4:2,7:4,5:s,34:n,35:a,36:o}),{1:[3]},t(i,e,{4:2,7:4,3:8,5:s,34:n,35:a,36:o}),t(i,e,{4:2,7:4,6:9,3:10,5:s,8:[1,11],34:n,35:a,36:o}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(r,[2,34]),t(r,[2,35]),t(r,[2,36]),{1:[2,1]},t(i,e,{4:2,7:4,3:21,5:s,34:n,35:a,36:o}),{1:[2,3]},t(r,[2,5]),t(i,[2,7],{4:22,34:n,35:a,36:o}),{11:23,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{11:39,13:38,24:S,27:C,29:40,30:41,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{11:45,15:44,27:w,33:46,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{11:49,17:48,24:k,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{11:52,17:51,24:k,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},{20:[1,53]},{22:[1,54]},t(_,[2,18]),{1:[2,2]},t(_,[2,8]),t(_,[2,9]),t(T,[2,37],{40:55,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A}),t(T,[2,38]),t(T,[2,39]),t(R,[2,40]),t(R,[2,42]),t(R,[2,43]),t(R,[2,44]),t(R,[2,45]),t(R,[2,46]),t(R,[2,47]),t(R,[2,48]),t(R,[2,49]),t(R,[2,50]),t(R,[2,51]),t(_,[2,10]),t(_,[2,22],{30:41,29:56,24:S,27:C}),t(_,[2,24]),t(_,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},t(_,[2,11]),t(_,[2,30],{33:60,27:w}),t(_,[2,32]),{31:[1,61]},t(_,[2,12]),{17:62,24:k},{25:63,27:D},t(_,[2,14]),{17:65,24:k},t(_,[2,16]),t(_,[2,17]),t(R,[2,41]),t(_,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(_,[2,31]),{27:[1,69]},t(_,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(_,[2,15]),t(_,[2,26]),t(_,[2,27]),{11:59,32:72,37:24,38:l,39:c,40:27,41:g,42:u,43:x,44:d,45:p,46:f,47:y,48:m,49:b,50:A},t(_,[2,33]),t(_,[2,19]),{25:73,27:D},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:(0,h.K2)((function(t,i){if(!i.recoverable){var e=new Error(t);throw e.hash=i,e}this.trace(t)}),"parseError"),parse:(0,h.K2)((function(t){var i=this,e=[0],s=[],n=[null],a=[],o=this.table,r="",l=0,c=0,g=0,u=a.slice.call(arguments,1),x=Object.create(this.lexer),d={yy:{}};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(d.yy[p]=this.yy[p]);x.setInput(t,d.yy),d.yy.lexer=x,d.yy.parser=this,void 0===x.yylloc&&(x.yylloc={});var f=x.yylloc;a.push(f);var y=x.options&&x.options.ranges;function m(){var t;return"number"!=typeof(t=s.pop()||x.lex()||1)&&(t instanceof Array&&(t=(s=t).pop()),t=i.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,h.K2)((function(t){e.length=e.length-2*t,n.length=n.length-t,a.length=a.length-t}),"popStack"),(0,h.K2)(m,"lex");for(var b,A,S,C,w,k,_,T,R,D={};;){if(S=e[e.length-1],this.defaultActions[S]?C=this.defaultActions[S]:(null==b&&(b=m()),C=o[S]&&o[S][b]),void 0===C||!C.length||!C[0]){var L;for(k in R=[],o[S])this.terminals_[k]&&k>2&&R.push("'"+this.terminals_[k]+"'");L=x.showPosition?"Parse error on line "+(l+1)+":\n"+x.showPosition()+"\nExpecting "+R.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(L,{text:x.match,token:this.terminals_[b]||b,line:x.yylineno,loc:f,expected:R})}if(C[0]instanceof Array&&C.length>1)throw new Error("Parse Error: multiple actions possible at state: "+S+", token: "+b);switch(C[0]){case 1:e.push(b),n.push(x.yytext),a.push(x.yylloc),e.push(C[1]),b=null,A?(b=A,A=null):(c=x.yyleng,r=x.yytext,l=x.yylineno,f=x.yylloc,g>0&&g--);break;case 2:if(_=this.productions_[C[1]][1],D.$=n[n.length-_],D._$={first_line:a[a.length-(_||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(_||1)].first_column,last_column:a[a.length-1].last_column},y&&(D._$.range=[a[a.length-(_||1)].range[0],a[a.length-1].range[1]]),void 0!==(w=this.performAction.apply(D,[r,c,l,d.yy,C[1],n,a].concat(u))))return w;_&&(e=e.slice(0,-1*_*2),n=n.slice(0,-1*_),a=a.slice(0,-1*_)),e.push(this.productions_[C[1]][0]),n.push(D.$),a.push(D._$),T=o[e[e.length-2]][e[e.length-1]],e.push(T);break;case 3:return!0}}return!0}),"parse")},P=function(){return{EOF:1,parseError:(0,h.K2)((function(t,i){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,i)}),"parseError"),setInput:(0,h.K2)((function(t,i){return this.yy=i||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,h.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,h.K2)((function(t){var i=t.length,e=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i;var s=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),e.length-1&&(this.yylineno-=e.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:e?(e.length===s.length?this.yylloc.first_column:0)+s[s.length-e.length].length-e[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-i]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,h.K2)((function(){return this._more=!0,this}),"more"),reject:(0,h.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,h.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,h.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,h.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,h.K2)((function(){var t=this.pastInput(),i=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+i+"^"}),"showPosition"),test_match:(0,h.K2)((function(t,i){var e,s,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(s=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=s.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:s?s[s.length-1].length-s[s.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,i,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e)return e;if(this._backtrack){for(var a in n)this[a]=n[a];return!1}return!1}),"test_match"),next:(0,h.K2)((function(){if(this.done)return this.EOF;var t,i,e,s;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),a=0;ai[0].length)){if(i=e,s=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(e,n[a])))return t;if(this._backtrack){i=!1;continue}return!1}if(!this.options.flex)break}return i?!1!==(t=this.test_match(i,n[s]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,h.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,h.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,h.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,h.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,h.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,h.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,h.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,h.K2)((function(t,i,e,s){switch(e){case 0:case 1:case 5:case 43:break;case 2:case 3:return this.popState(),34;case 4:return 34;case 6:return 10;case 7:return this.pushState("acc_title"),19;case 8:return this.popState(),"acc_title_value";case 9:return this.pushState("acc_descr"),21;case 10:return this.popState(),"acc_descr_value";case 11:this.pushState("acc_descr_multiline");break;case 12:case 25:case 27:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 8;case 16:return this.pushState("axis_data"),"X_AXIS";case 17:return this.pushState("axis_data"),"Y_AXIS";case 18:return this.pushState("axis_band_data"),24;case 19:return 31;case 20:return this.pushState("data"),16;case 21:return this.pushState("data"),18;case 22:return this.pushState("data_inner"),24;case 23:return 27;case 24:return this.popState(),26;case 26:this.pushState("string");break;case 28:return"STR";case 29:return 24;case 30:return 26;case 31:return 43;case 32:return"COLON";case 33:return 44;case 34:return 28;case 35:return 45;case 36:return 46;case 37:return 48;case 38:return 50;case 39:return 47;case 40:return 41;case 41:return 49;case 42:return 42;case 44:return 35;case 45:return 36}}),"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\{)/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,23,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,20,21,22,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,23,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[27,28],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0}}}}();function E(){this.yy={}}return L.lexer=P,(0,h.K2)(E,"Parser"),E.prototype=L,L.Parser=E,new E}();r.parser=r;var l=r;function c(t){return"bar"===t.type}function g(t){return"band"===t.type}function u(t){return"linear"===t.type}(0,h.K2)(c,"isBarPlot"),(0,h.K2)(g,"isBandAxisData"),(0,h.K2)(u,"isLinearAxisData");var x=class{constructor(t){this.parentGroup=t}static{(0,h.K2)(this,"TextDimensionCalculatorWithFont")}getMaxDimension(t,i){if(!this.parentGroup)return{width:t.reduce(((t,i)=>Math.max(i.length,t)),0)*i,height:i};const e={width:0,height:0},n=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",i);for(const a of t){const t=(0,s.W6)(n,1,a),h=t?t.width:a.length*i,o=t?t.height:i;e.width=Math.max(e.width,h),e.height=Math.max(e.height,o)}return n.remove(),e}},d=class{constructor(t,i,e,s){this.axisConfig=t,this.title=i,this.textDimensionCalculator=e,this.axisThemeConfig=s,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}static{(0,h.K2)(this,"BaseAxis")}setRange(t){this.range=t,"left"===this.axisPosition||"right"===this.axisPosition?this.boundingRect.height=t[1]-t[0]:this.boundingRect.width=t[1]-t[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(t){this.axisPosition=t,this.setRange(this.range)}getTickDistance(){const t=this.getRange();return Math.abs(t[0]-t[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map((t=>t.toString())),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){.7*this.getTickDistance()>2*this.outerPadding&&(this.outerPadding=Math.floor(.7*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(t){let i=t.height;if(this.axisConfig.showAxisLine&&i>this.axisConfig.axisLineWidth&&(i-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const e=this.getLabelDimension(),s=.2*t.width;this.outerPadding=Math.min(e.width/2,s);const n=e.height+2*this.axisConfig.labelPadding;this.labelTextHeight=e.height,n<=i&&(i-=n,this.showLabel=!0)}if(this.axisConfig.showTick&&i>=this.axisConfig.tickLength&&(this.showTick=!0,i-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const t=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),e=t.height+2*this.axisConfig.titlePadding;this.titleTextHeight=t.height,e<=i&&(i-=e,this.showTitle=!0)}this.boundingRect.width=t.width,this.boundingRect.height=t.height-i}calculateSpaceIfDrawnVertical(t){let i=t.width;if(this.axisConfig.showAxisLine&&i>this.axisConfig.axisLineWidth&&(i-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const e=this.getLabelDimension(),s=.2*t.height;this.outerPadding=Math.min(e.height/2,s);const n=e.width+2*this.axisConfig.labelPadding;n<=i&&(i-=n,this.showLabel=!0)}if(this.axisConfig.showTick&&i>=this.axisConfig.tickLength&&(this.showTick=!0,i-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const t=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),e=t.height+2*this.axisConfig.titlePadding;this.titleTextHeight=t.height,e<=i&&(i-=e,this.showTitle=!0)}this.boundingRect.width=t.width-i,this.boundingRect.height=t.height}calculateSpace(t){return"left"===this.axisPosition||"right"===this.axisPosition?this.calculateSpaceIfDrawnVertical(t):this.calculateSpaceIfDrawnHorizontally(t),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}getDrawableElementsForLeftAxis(){const t=[];if(this.showAxisLine){const i=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${i},${this.boundingRect.y} L ${i},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map((t=>({text:t.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(t),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"})))}),this.showTick){const i=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map((t=>({path:`M ${i},${this.getScaleValue(t)} L ${i-this.axisConfig.tickLength},${this.getScaleValue(t)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth})))})}return this.showTitle&&t.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForBottomAxis(){const t=[];if(this.showAxisLine){const i=this.boundingRect.y+this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${i} L ${this.boundingRect.x+this.boundingRect.width},${i}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map((t=>({text:t.toString(),x:this.getScaleValue(t),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"})))}),this.showTick){const i=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map((t=>({path:`M ${this.getScaleValue(t)},${i} L ${this.getScaleValue(t)},${i+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth})))})}return this.showTitle&&t.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForTopAxis(){const t=[];if(this.showAxisLine){const i=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${i} L ${this.boundingRect.x+this.boundingRect.width},${i}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map((t=>({text:t.toString(),x:this.getScaleValue(t),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+2*this.axisConfig.titlePadding:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"})))}),this.showTick){const i=this.boundingRect.y;t.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map((t=>({path:`M ${this.getScaleValue(t)},${i+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(t)},${i+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth})))})}return this.showTitle&&t.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElements(){if("left"===this.axisPosition)return this.getDrawableElementsForLeftAxis();if("right"===this.axisPosition)throw Error("Drawing of right axis is not implemented");return"bottom"===this.axisPosition?this.getDrawableElementsForBottomAxis():"top"===this.axisPosition?this.getDrawableElementsForTopAxis():[]}},p=class extends d{static{(0,h.K2)(this,"BandAxis")}constructor(t,i,e,s,n){super(t,s,n,i),this.categories=e,this.scale=(0,o.WH)().domain(this.categories).range(this.getRange())}setRange(t){super.setRange(t)}recalculateScale(){this.scale=(0,o.WH)().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),h.Rm.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(t){return this.scale(t)??this.getRange()[0]}},f=class extends d{static{(0,h.K2)(this,"LinearAxis")}constructor(t,i,e,s,n){super(t,s,n,i),this.domain=e,this.scale=(0,o.m4Y)().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){const t=[...this.domain];"left"===this.axisPosition&&t.reverse(),this.scale=(0,o.m4Y)().domain(t).range(this.getRange())}getScaleValue(t){return this.scale(t)}};function y(t,i,e,s){const n=new x(s);return g(t)?new p(i,e,t.categories,t.title,n):new f(i,e,[t.min,t.max],t.title,n)}(0,h.K2)(y,"getAxis");var m=class{constructor(t,i,e,s){this.textDimensionCalculator=t,this.chartConfig=i,this.chartData=e,this.chartThemeConfig=s,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{(0,h.K2)(this,"ChartTitle")}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){const i=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),e=Math.max(i.width,t.width),s=i.height+2*this.chartConfig.titlePadding;return i.width<=e&&i.height<=s&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=e,this.boundingRect.height=s,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){const t=[];return this.showChartTitle&&t.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),t}};function b(t,i,e,s){const n=new x(s);return new m(n,t,i,e)}(0,h.K2)(b,"getChartTitleComponent");var A=class{constructor(t,i,e,s,n){this.plotData=t,this.xAxis=i,this.yAxis=e,this.orientation=s,this.plotIndex=n}static{(0,h.K2)(this,"LinePlot")}getDrawableElement(){const t=this.plotData.data.map((t=>[this.xAxis.getScaleValue(t[0]),this.yAxis.getScaleValue(t[1])]));let i;return i="horizontal"===this.orientation?(0,o.n8j)().y((t=>t[0])).x((t=>t[1]))(t):(0,o.n8j)().x((t=>t[0])).y((t=>t[1]))(t),i?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:i,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}},S=class{constructor(t,i,e,s,n,a){this.barData=t,this.boundingRect=i,this.xAxis=e,this.yAxis=s,this.orientation=n,this.plotIndex=a}static{(0,h.K2)(this,"BarPlot")}getDrawableElement(){const t=this.barData.data.map((t=>[this.xAxis.getScaleValue(t[0]),this.yAxis.getScaleValue(t[1])])),i=.95*Math.min(2*this.xAxis.getAxisOuterPadding(),this.xAxis.getTickDistance()),e=i/2;return"horizontal"===this.orientation?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map((t=>({x:this.boundingRect.x,y:t[0]-e,height:i,width:t[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill})))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map((t=>({x:t[0]-e,y:t[1],width:i,height:this.boundingRect.y+this.boundingRect.height-t[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill})))}]}},C=class{constructor(t,i,e){this.chartConfig=t,this.chartData=i,this.chartThemeConfig=e,this.boundingRect={x:0,y:0,width:0,height:0}}static{(0,h.K2)(this,"BasePlot")}setAxes(t,i){this.xAxis=t,this.yAxis=i}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){return this.boundingRect.width=t.width,this.boundingRect.height=t.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!this.xAxis||!this.yAxis)throw Error("Axes must be passed to render Plots");const t=[];for(const[i,e]of this.chartData.plots.entries())switch(e.type){case"line":{const s=new A(e,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,i);t.push(...s.getDrawableElement())}break;case"bar":{const s=new S(e,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,i);t.push(...s.getDrawableElement())}}return t}};function w(t,i,e){return new C(t,i,e)}(0,h.K2)(w,"getPlotComponent");var k,_=class{constructor(t,i,e,s){this.chartConfig=t,this.chartData=i,this.componentStore={title:b(t,i,e,s),plot:w(t,i,e),xAxis:y(i.xAxis,t.xAxis,{titleColor:e.xAxisTitleColor,labelColor:e.xAxisLabelColor,tickColor:e.xAxisTickColor,axisLineColor:e.xAxisLineColor},s),yAxis:y(i.yAxis,t.yAxis,{titleColor:e.yAxisTitleColor,labelColor:e.yAxisLabelColor,tickColor:e.yAxisTickColor,axisLineColor:e.yAxisLineColor},s)}}static{(0,h.K2)(this,"Orchestrator")}calculateVerticalSpace(){let t=this.chartConfig.width,i=this.chartConfig.height,e=0,s=0,n=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),a=Math.floor(i*this.chartConfig.plotReservedSpacePercent/100),h=this.componentStore.plot.calculateSpace({width:n,height:a});t-=h.width,i-=h.height,h=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:i}),s=h.height,i-=h.height,this.componentStore.xAxis.setAxisPosition("bottom"),h=this.componentStore.xAxis.calculateSpace({width:t,height:i}),i-=h.height,this.componentStore.yAxis.setAxisPosition("left"),h=this.componentStore.yAxis.calculateSpace({width:t,height:i}),e=h.width,t-=h.width,t>0&&(n+=t,t=0),i>0&&(a+=i,i=0),this.componentStore.plot.calculateSpace({width:n,height:a}),this.componentStore.plot.setBoundingBoxXY({x:e,y:s}),this.componentStore.xAxis.setRange([e,e+n]),this.componentStore.xAxis.setBoundingBoxXY({x:e,y:s+a}),this.componentStore.yAxis.setRange([s,s+a]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:s}),this.chartData.plots.some((t=>c(t)))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let t=this.chartConfig.width,i=this.chartConfig.height,e=0,s=0,n=0,a=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),h=Math.floor(i*this.chartConfig.plotReservedSpacePercent/100),o=this.componentStore.plot.calculateSpace({width:a,height:h});t-=o.width,i-=o.height,o=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:i}),e=o.height,i-=o.height,this.componentStore.xAxis.setAxisPosition("left"),o=this.componentStore.xAxis.calculateSpace({width:t,height:i}),t-=o.width,s=o.width,this.componentStore.yAxis.setAxisPosition("top"),o=this.componentStore.yAxis.calculateSpace({width:t,height:i}),i-=o.height,n=e+o.height,t>0&&(a+=t,t=0),i>0&&(h+=i,i=0),this.componentStore.plot.calculateSpace({width:a,height:h}),this.componentStore.plot.setBoundingBoxXY({x:s,y:n}),this.componentStore.yAxis.setRange([s,s+a]),this.componentStore.yAxis.setBoundingBoxXY({x:s,y:e}),this.componentStore.xAxis.setRange([n,n+h]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:n}),this.chartData.plots.some((t=>c(t)))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){"horizontal"===this.chartConfig.chartOrientation?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();const t=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(const i of Object.values(this.componentStore))t.push(...i.getDrawableElements());return t}},T=class{static{(0,h.K2)(this,"XYChartBuilder")}static build(t,i,e,s){return new _(t,i,e,s).getDrawableElement()}},R=0,D=$(),L=I(),P={yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]},E=L.plotColorPalette.split(",").map((t=>t.trim())),v=!1,K=!1;function I(){const t=(0,h.P$)(),i=(0,h.zj)();return(0,n.$t)(t.xyChart,i.themeVariables.xyChart)}function $(){const t=(0,h.zj)();return(0,n.$t)(h.UI.xyChart,t.xyChart)}function M(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function B(t){const i=(0,h.zj)();return(0,h.jZ)(t.trim(),i)}function z(t){k=t}function W(t){D.chartOrientation="horizontal"===t?"horizontal":"vertical"}function O(t){P.xAxis.title=B(t.text)}function F(t,i){P.xAxis={type:"linear",title:P.xAxis.title,min:t,max:i},v=!0}function N(t){P.xAxis={type:"band",title:P.xAxis.title,categories:t.map((t=>B(t.text)))},v=!0}function V(t){P.yAxis.title=B(t.text)}function X(t,i){P.yAxis={type:"linear",title:P.yAxis.title,min:t,max:i},K=!0}function Y(t){const i=Math.min(...t),e=Math.max(...t),s=u(P.yAxis)?P.yAxis.min:1/0,n=u(P.yAxis)?P.yAxis.max:-1/0;P.yAxis={type:"linear",title:P.yAxis.title,min:Math.min(s,i),max:Math.max(n,e)}}function U(t){let i=[];if(0===t.length)return i;if(!v){const i=u(P.xAxis)?P.xAxis.min:1/0,e=u(P.xAxis)?P.xAxis.max:-1/0;F(Math.min(i,1),Math.max(e,t.length))}if(K||Y(t),g(P.xAxis)&&(i=P.xAxis.categories.map(((i,e)=>[i,t[e]]))),u(P.xAxis)){const e=P.xAxis.min,s=P.xAxis.max,n=(s-e)/(t.length-1),a=[];for(let t=e;t<=s;t+=n)a.push(`${t}`);i=a.map(((i,e)=>[i,t[e]]))}return i}function H(t){return E[0===t?0:t%E.length]}function j(t,i){const e=U(i);P.plots.push({type:"line",strokeFill:H(R),strokeWidth:2,data:e}),R++}function G(t,i){const e=U(i);P.plots.push({type:"bar",fill:H(R),data:e}),R++}function Q(){if(0===P.plots.length)throw Error("No Plot to render, please provide a plot with some data");return P.title=(0,h.ab)(),T.build(D,P,L,k)}function Z(){return L}function q(){return D}(0,h.K2)(I,"getChartDefaultThemeConfig"),(0,h.K2)($,"getChartDefaultConfig"),(0,h.K2)(M,"getChartDefaultData"),(0,h.K2)(B,"textSanitizer"),(0,h.K2)(z,"setTmpSVGG"),(0,h.K2)(W,"setOrientation"),(0,h.K2)(O,"setXAxisTitle"),(0,h.K2)(F,"setXAxisRangeData"),(0,h.K2)(N,"setXAxisBand"),(0,h.K2)(V,"setYAxisTitle"),(0,h.K2)(X,"setYAxisRangeData"),(0,h.K2)(Y,"setYAxisRangeFromPlotData"),(0,h.K2)(U,"transformDataWithoutCategory"),(0,h.K2)(H,"getPlotColorFromPalette"),(0,h.K2)(j,"setLineData"),(0,h.K2)(G,"setBarData"),(0,h.K2)(Q,"getDrawableElem"),(0,h.K2)(Z,"getChartThemeConfig"),(0,h.K2)(q,"getChartConfig");var J={parser:l,db:{getDrawableElem:Q,clear:(0,h.K2)((function(){(0,h.IU)(),R=0,D=$(),P={yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]},L=I(),E=L.plotColorPalette.split(",").map((t=>t.trim())),v=!1,K=!1}),"clear"),setAccTitle:h.SV,getAccTitle:h.iN,setDiagramTitle:h.ke,getDiagramTitle:h.ab,getAccDescription:h.m7,setAccDescription:h.EI,setOrientation:W,setXAxisTitle:O,setXAxisRangeData:F,setXAxisBand:N,setYAxisTitle:V,setYAxisRangeData:X,setLineData:j,setBarData:G,setTmpSVGG:z,getChartThemeConfig:Z,getChartConfig:q},renderer:{draw:(0,h.K2)(((t,i,e,s)=>{const n=s.db,o=n.getChartThemeConfig(),r=n.getChartConfig();function l(t){return"top"===t?"text-before-edge":"middle"}function c(t){return"left"===t?"start":"right"===t?"end":"middle"}function g(t){return`translate(${t.x}, ${t.y}) rotate(${t.rotation||0})`}(0,h.K2)(l,"getDominantBaseLine"),(0,h.K2)(c,"getTextAnchor"),(0,h.K2)(g,"getTextTransformation"),h.Rm.debug("Rendering xychart chart\n"+t);const u=(0,a.D)(i),x=u.append("g").attr("class","main"),d=x.append("rect").attr("width",r.width).attr("height",r.height).attr("class","background");(0,h.a$)(u,r.height,r.width,!0),u.attr("viewBox",`0 0 ${r.width} ${r.height}`),d.attr("fill",o.backgroundColor),n.setTmpSVGG(u.append("g").attr("class","mermaid-tmp-group"));const p=n.getDrawableElem(),f={};function y(t){let i=x,e="";for(const[s]of t.entries()){let n=x;s>0&&f[e]&&(n=f[e]),e+=t[s],i=f[e],i||(i=f[e]=n.append("g").attr("class",t[s]))}return i}(0,h.K2)(y,"getGroup");for(const t of p){if(0===t.data.length)continue;const i=y(t.groupTexts);switch(t.type){case"rect":i.selectAll("rect").data(t.data).enter().append("rect").attr("x",(t=>t.x)).attr("y",(t=>t.y)).attr("width",(t=>t.width)).attr("height",(t=>t.height)).attr("fill",(t=>t.fill)).attr("stroke",(t=>t.strokeFill)).attr("stroke-width",(t=>t.strokeWidth));break;case"text":i.selectAll("text").data(t.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",(t=>t.fill)).attr("font-size",(t=>t.fontSize)).attr("dominant-baseline",(t=>l(t.verticalPos))).attr("text-anchor",(t=>c(t.horizontalPos))).attr("transform",(t=>g(t))).text((t=>t.text));break;case"path":i.selectAll("path").data(t.data).enter().append("path").attr("d",(t=>t.path)).attr("fill",(t=>t.fill?t.fill:"none")).attr("stroke",(t=>t.strokeFill)).attr("stroke-width",(t=>t.strokeWidth))}}}),"draw")}}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/356-34014d94.chunk.min.js b/themes/hugo-geekdoc/static/js/356-34014d94.chunk.min.js deleted file mode 100644 index 979e98873..000000000 --- a/themes/hugo-geekdoc/static/js/356-34014d94.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[356],{2424:(t,r,e)=>{e.d(r,{m:()=>o});var n=e(798),o=class{constructor(t){this.init=t,this.records=this.init()}static{(0,n.K2)(this,"ImperativeState")}reset(){this.records=this.init()}}},7459:(t,r,e)=>{function n(t,r){t.accDescr&&r.setAccDescription?.(t.accDescr),t.accTitle&&r.setAccTitle?.(t.accTitle),t.title&&r.setDiagramTitle?.(t.title)}e.d(r,{S:()=>n}),(0,e(798).K2)(n,"populateCommonDb")},356:(t,r,e)=>{e.d(r,{diagram:()=>ft});var n=e(7459),o=e(2424),a=e(7323),c=e(798),s=e(8731),i=e(4852),h={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},d=c.UI.gitGraph,m=(0,c.K2)((()=>(0,a.$t)({...d,...(0,c.zj)().gitGraph})),"getConfig"),$=new o.m((()=>{const t=m(),r=t.mainBranchName,e=t.mainBranchOrder;return{mainBranchName:r,commits:new Map,head:null,branchConfig:new Map([[r,{name:r,order:e}]]),branches:new Map([[r,null]]),currBranch:r,direction:"LR",seq:0,options:{}}}));function l(){return(0,a.yT)({length:7})}function g(t,r){const e=Object.create(null);return t.reduce(((t,n)=>{const o=r(n);return e[o]||(e[o]=!0,t.push(n)),t}),[])}(0,c.K2)(l,"getID"),(0,c.K2)(g,"uniqBy");var y=(0,c.K2)((function(t){$.records.direction=t}),"setDirection"),p=(0,c.K2)((function(t){c.Rm.debug("options str",t),t=t?.trim(),t=t||"{}";try{$.records.options=JSON.parse(t)}catch(t){c.Rm.error("error while parsing gitGraph options",t.message)}}),"setOptions"),x=(0,c.K2)((function(){return $.records.options}),"getOptions"),f=(0,c.K2)((function(t){let r=t.msg,e=t.id;const n=t.type;let o=t.tags;c.Rm.info("commit",r,e,n,o),c.Rm.debug("Entering commit:",r,e,n,o);const a=m();e=c.Y2.sanitizeText(e,a),r=c.Y2.sanitizeText(r,a),o=o?.map((t=>c.Y2.sanitizeText(t,a)));const s={id:e||$.records.seq+"-"+l(),message:r,seq:$.records.seq++,type:n??h.NORMAL,tags:o??[],parents:null==$.records.head?[]:[$.records.head.id],branch:$.records.currBranch};$.records.head=s,c.Rm.info("main branch",a.mainBranchName),$.records.commits.set(s.id,s),$.records.branches.set($.records.currBranch,s.id),c.Rm.debug("in pushCommit "+s.id)}),"commit"),u=(0,c.K2)((function(t){let r=t.name;const e=t.order;if(r=c.Y2.sanitizeText(r,m()),$.records.branches.has(r))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${r}")`);$.records.branches.set(r,null!=$.records.head?$.records.head.id:null),$.records.branchConfig.set(r,{name:r,order:e}),B(r),c.Rm.debug("in createBranch")}),"branch"),b=(0,c.K2)((t=>{let r=t.branch,e=t.id;const n=t.type,o=t.tags,a=m();r=c.Y2.sanitizeText(r,a),e&&(e=c.Y2.sanitizeText(e,a));const s=$.records.branches.get($.records.currBranch),i=$.records.branches.get(r),d=s?$.records.commits.get(s):void 0,g=i?$.records.commits.get(i):void 0;if(d&&g&&d.branch===r)throw new Error(`Cannot merge branch '${r}' into itself.`);if($.records.currBranch===r){const t=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["branch abc"]},t}if(void 0===d||!d){const t=new Error(`Incorrect usage of "merge". Current branch (${$.records.currBranch})has no commits`);throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["commit"]},t}if(!$.records.branches.has(r)){const t=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") does not exist");throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:[`branch ${r}`]},t}if(void 0===g||!g){const t=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") has no commits");throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:['"commit"']},t}if(d===g){const t=new Error('Incorrect usage of "merge". Both branches have same head');throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["branch abc"]},t}if(e&&$.records.commits.has(e)){const t=new Error('Incorrect usage of "merge". Commit with id:'+e+" already exists, use different custom Id");throw t.hash={text:`merge ${r} ${e} ${n} ${o?.join(" ")}`,token:`merge ${r} ${e} ${n} ${o?.join(" ")}`,expected:[`merge ${r} ${e}_UNIQUE ${n} ${o?.join(" ")}`]},t}const y=i||"",p={id:e||`${$.records.seq}-${l()}`,message:`merged branch ${r} into ${$.records.currBranch}`,seq:$.records.seq++,parents:null==$.records.head?[]:[$.records.head.id,y],branch:$.records.currBranch,type:h.MERGE,customType:n,customId:!!e,tags:o??[]};$.records.head=p,$.records.commits.set(p.id,p),$.records.branches.set($.records.currBranch,p.id),c.Rm.debug($.records.branches),c.Rm.debug("in mergeBranch")}),"merge"),w=(0,c.K2)((function(t){let r=t.id,e=t.targetId,n=t.tags,o=t.parent;c.Rm.debug("Entering cherryPick:",r,e,n);const a=m();if(r=c.Y2.sanitizeText(r,a),e=c.Y2.sanitizeText(e,a),n=n?.map((t=>c.Y2.sanitizeText(t,a))),o=c.Y2.sanitizeText(o,a),!r||!$.records.commits.has(r)){const t=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw t.hash={text:`cherryPick ${r} ${e}`,token:`cherryPick ${r} ${e}`,expected:["cherry-pick abc"]},t}const s=$.records.commits.get(r);if(void 0===s||!s)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(o&&(!Array.isArray(s.parents)||!s.parents.includes(o)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");const i=s.branch;if(s.type===h.MERGE&&!o)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!e||!$.records.commits.has(e)){if(i===$.records.currBranch){const t=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw t.hash={text:`cherryPick ${r} ${e}`,token:`cherryPick ${r} ${e}`,expected:["cherry-pick abc"]},t}const t=$.records.branches.get($.records.currBranch);if(void 0===t||!t){const t=new Error(`Incorrect usage of "cherry-pick". Current branch (${$.records.currBranch})has no commits`);throw t.hash={text:`cherryPick ${r} ${e}`,token:`cherryPick ${r} ${e}`,expected:["cherry-pick abc"]},t}const a=$.records.commits.get(t);if(void 0===a||!a){const t=new Error(`Incorrect usage of "cherry-pick". Current branch (${$.records.currBranch})has no commits`);throw t.hash={text:`cherryPick ${r} ${e}`,token:`cherryPick ${r} ${e}`,expected:["cherry-pick abc"]},t}const d={id:$.records.seq+"-"+l(),message:`cherry-picked ${s?.message} into ${$.records.currBranch}`,seq:$.records.seq++,parents:null==$.records.head?[]:[$.records.head.id,s.id],branch:$.records.currBranch,type:h.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===h.MERGE?`|parent:${o}`:""}`]};$.records.head=d,$.records.commits.set(d.id,d),$.records.branches.set($.records.currBranch,d.id),c.Rm.debug($.records.branches),c.Rm.debug("in cherryPick")}}),"cherryPick"),B=(0,c.K2)((function(t){if(t=c.Y2.sanitizeText(t,m()),!$.records.branches.has(t)){const r=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${t}")`);throw r.hash={text:`checkout ${t}`,token:`checkout ${t}`,expected:[`branch ${t}`]},r}{$.records.currBranch=t;const r=$.records.branches.get($.records.currBranch);$.records.head=void 0!==r&&r?$.records.commits.get(r)??null:null}}),"checkout");function E(t,r,e){const n=t.indexOf(r);-1===n?t.push(e):t.splice(n,1,e)}function k(t){const r=t.reduce(((t,r)=>t.seq>r.seq?t:r),t[0]);let e="";t.forEach((function(t){e+=t===r?"\t*":"\t|"}));const n=[e,r.id,r.seq];for(const t in $.records.branches)$.records.branches.get(t)===r.id&&n.push(t);if(c.Rm.debug(n.join(" ")),r.parents&&2==r.parents.length&&r.parents[0]&&r.parents[1]){const e=$.records.commits.get(r.parents[0]);E(t,r,e),r.parents[1]&&t.push($.records.commits.get(r.parents[1]))}else{if(0==r.parents.length)return;if(r.parents[0]){const e=$.records.commits.get(r.parents[0]);E(t,r,e)}}k(t=g(t,(t=>t.id)))}(0,c.K2)(E,"upsert"),(0,c.K2)(k,"prettyPrintCommitHistory");var C=(0,c.K2)((function(){c.Rm.debug($.records.commits),k([R()[0]])}),"prettyPrint"),T=(0,c.K2)((function(){$.reset(),(0,c.IU)()}),"clear"),L=(0,c.K2)((function(){return[...$.records.branchConfig.values()].map(((t,r)=>null!==t.order&&void 0!==t.order?t:{...t,order:parseFloat(`0.${r}`)})).sort(((t,r)=>(t.order??0)-(r.order??0))).map((({name:t})=>({name:t})))}),"getBranchesAsObjArray"),K=(0,c.K2)((function(){return $.records.branches}),"getBranches"),M=(0,c.K2)((function(){return $.records.commits}),"getCommits"),R=(0,c.K2)((function(){const t=[...$.records.commits.values()];return t.forEach((function(t){c.Rm.debug(t.id)})),t.sort(((t,r)=>t.seq-r.seq)),t}),"getCommitsArray"),v={commitType:h,getConfig:m,setDirection:y,setOptions:p,getOptions:x,commit:f,branch:u,merge:b,cherryPick:w,checkout:B,prettyPrint:C,clear:T,getBranchesAsObjArray:L,getBranches:K,getCommits:M,getCommitsArray:R,getCurrentBranch:(0,c.K2)((function(){return $.records.currBranch}),"getCurrentBranch"),getDirection:(0,c.K2)((function(){return $.records.direction}),"getDirection"),getHead:(0,c.K2)((function(){return $.records.head}),"getHead"),setAccTitle:c.SV,getAccTitle:c.iN,getAccDescription:c.m7,setAccDescription:c.EI,setDiagramTitle:c.ke,getDiagramTitle:c.ab},P=(0,c.K2)(((t,r)=>{(0,n.S)(t,r),t.dir&&r.setDirection(t.dir);for(const e of t.statements)I(e,r)}),"populate"),I=(0,c.K2)(((t,r)=>{const e={Commit:(0,c.K2)((t=>r.commit(A(t))),"Commit"),Branch:(0,c.K2)((t=>r.branch(G(t))),"Branch"),Merge:(0,c.K2)((t=>r.merge(O(t))),"Merge"),Checkout:(0,c.K2)((t=>r.checkout(q(t))),"Checkout"),CherryPicking:(0,c.K2)((t=>r.cherryPick(z(t))),"CherryPicking")}[t.$type];e?e(t):c.Rm.error(`Unknown statement type: ${t.$type}`)}),"parseStatement"),A=(0,c.K2)((t=>({id:t.id,msg:t.message??"",type:void 0!==t.type?h[t.type]:h.NORMAL,tags:t.tags??void 0})),"parseCommit"),G=(0,c.K2)((t=>({name:t.name,order:t.order??0})),"parseBranch"),O=(0,c.K2)((t=>({branch:t.branch,id:t.id??"",type:void 0!==t.type?h[t.type]:void 0,tags:t.tags??void 0})),"parseMerge"),q=(0,c.K2)((t=>t.branch),"parseCheckout"),z=(0,c.K2)((t=>({id:t.id,targetId:"",tags:0===t.tags?.length?void 0:t.tags,parent:t.parent})),"parseCherryPicking"),H={parse:(0,c.K2)((async t=>{const r=await(0,s.qg)("gitGraph",t);c.Rm.debug(r),P(r,v)}),"parse")},S=(0,c.D7)(),D=S?.gitGraph,Y=10,N=40,j=new Map,W=new Map,_=new Map,F=[],U=0,V="LR",J=(0,c.K2)((()=>{j.clear(),W.clear(),_.clear(),U=0,F=[],V="LR"}),"clear"),Q=(0,c.K2)((t=>{const r=document.createElementNS("http://www.w3.org/2000/svg","text");return("string"==typeof t?t.split(/\\n|\n|/gi):t).forEach((t=>{const e=document.createElementNS("http://www.w3.org/2000/svg","tspan");e.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),e.setAttribute("dy","1em"),e.setAttribute("x","0"),e.setAttribute("class","row"),e.textContent=t.trim(),r.appendChild(e)})),r}),"drawText"),X=(0,c.K2)((t=>{let r,e,n;return"BT"===V?(e=(0,c.K2)(((t,r)=>t<=r),"comparisonFunc"),n=1/0):(e=(0,c.K2)(((t,r)=>t>=r),"comparisonFunc"),n=0),t.forEach((t=>{const o="TB"===V||"BT"==V?W.get(t)?.y:W.get(t)?.x;void 0!==o&&e(o,n)&&(r=t,n=o)})),r}),"findClosestParent"),Z=(0,c.K2)((t=>{let r="",e=1/0;return t.forEach((t=>{const n=W.get(t).y;n<=e&&(r=t,e=n)})),r||void 0}),"findClosestParentBT"),tt=(0,c.K2)(((t,r,e)=>{let n=e,o=e;const a=[];t.forEach((t=>{const e=r.get(t);if(!e)throw new Error(`Commit not found for key ${t}`);e.parents.length?(n=et(e),o=Math.max(n,o)):a.push(e),nt(e,n)})),n=o,a.forEach((t=>{ot(t,n,e)})),t.forEach((t=>{const e=r.get(t);if(e?.parents.length){const t=Z(e.parents);n=W.get(t).y-N,n<=o&&(o=n);const r=j.get(e.branch).pos,a=n-Y;W.set(e.id,{x:r,y:a})}}))}),"setParallelBTPos"),rt=(0,c.K2)((t=>{const r=X(t.parents.filter((t=>null!==t)));if(!r)throw new Error(`Closest parent not found for commit ${t.id}`);const e=W.get(r)?.y;if(void 0===e)throw new Error(`Closest parent position not found for commit ${t.id}`);return e}),"findClosestParentPos"),et=(0,c.K2)((t=>rt(t)+N),"calculateCommitPosition"),nt=(0,c.K2)(((t,r)=>{const e=j.get(t.branch);if(!e)throw new Error(`Branch not found for commit ${t.id}`);const n=e.pos,o=r+Y;return W.set(t.id,{x:n,y:o}),{x:n,y:o}}),"setCommitPosition"),ot=(0,c.K2)(((t,r,e)=>{const n=j.get(t.branch);if(!n)throw new Error(`Branch not found for commit ${t.id}`);const o=r+e,a=n.pos;W.set(t.id,{x:a,y:o})}),"setRootPosition"),at=(0,c.K2)(((t,r,e,n,o,a)=>{if(a===h.HIGHLIGHT)t.append("rect").attr("x",e.x-10).attr("y",e.y-10).attr("width",20).attr("height",20).attr("class",`commit ${r.id} commit-highlight${o%8} ${n}-outer`),t.append("rect").attr("x",e.x-6).attr("y",e.y-6).attr("width",12).attr("height",12).attr("class",`commit ${r.id} commit${o%8} ${n}-inner`);else if(a===h.CHERRY_PICK)t.append("circle").attr("cx",e.x).attr("cy",e.y).attr("r",10).attr("class",`commit ${r.id} ${n}`),t.append("circle").attr("cx",e.x-3).attr("cy",e.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${r.id} ${n}`),t.append("circle").attr("cx",e.x+3).attr("cy",e.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${r.id} ${n}`),t.append("line").attr("x1",e.x+3).attr("y1",e.y+1).attr("x2",e.x).attr("y2",e.y-5).attr("stroke","#fff").attr("class",`commit ${r.id} ${n}`),t.append("line").attr("x1",e.x-3).attr("y1",e.y+1).attr("x2",e.x).attr("y2",e.y-5).attr("stroke","#fff").attr("class",`commit ${r.id} ${n}`);else{const c=t.append("circle");if(c.attr("cx",e.x),c.attr("cy",e.y),c.attr("r",r.type===h.MERGE?9:10),c.attr("class",`commit ${r.id} commit${o%8}`),a===h.MERGE){const a=t.append("circle");a.attr("cx",e.x),a.attr("cy",e.y),a.attr("r",6),a.attr("class",`commit ${n} ${r.id} commit${o%8}`)}a===h.REVERSE&&t.append("path").attr("d",`M ${e.x-5},${e.y-5}L${e.x+5},${e.y+5}M${e.x-5},${e.y+5}L${e.x+5},${e.y-5}`).attr("class",`commit ${n} ${r.id} commit${o%8}`)}}),"drawCommitBullet"),ct=(0,c.K2)(((t,r,e,n)=>{if(r.type!==h.CHERRY_PICK&&(r.customId&&r.type===h.MERGE||r.type!==h.MERGE)&&D?.showCommitLabel){const o=t.append("g"),a=o.insert("rect").attr("class","commit-label-bkg"),c=o.append("text").attr("x",n).attr("y",e.y+25).attr("class","commit-label").text(r.id),s=c.node()?.getBBox();if(s&&(a.attr("x",e.posWithOffset-s.width/2-2).attr("y",e.y+13.5).attr("width",s.width+4).attr("height",s.height+4),"TB"===V||"BT"===V?(a.attr("x",e.x-(s.width+16+5)).attr("y",e.y-12),c.attr("x",e.x-(s.width+16)).attr("y",e.y+s.height-12)):c.attr("x",e.posWithOffset-s.width/2),D.rotateCommitLabel))if("TB"===V||"BT"===V)c.attr("transform","rotate(-45, "+e.x+", "+e.y+")"),a.attr("transform","rotate(-45, "+e.x+", "+e.y+")");else{const t=-7.5-(s.width+10)/25*9.5,r=10+s.width/25*8.5;o.attr("transform","translate("+t+", "+r+") rotate(-45, "+n+", "+e.y+")")}}}),"drawCommitLabel"),st=(0,c.K2)(((t,r,e,n)=>{if(r.tags.length>0){let o=0,a=0,c=0;const s=[];for(const n of r.tags.reverse()){const r=t.insert("polygon"),i=t.append("circle"),h=t.append("text").attr("y",e.y-16-o).attr("class","tag-label").text(n),d=h.node()?.getBBox();if(!d)throw new Error("Tag bbox not found");a=Math.max(a,d.width),c=Math.max(c,d.height),h.attr("x",e.posWithOffset-d.width/2),s.push({tag:h,hole:i,rect:r,yOffset:o}),o+=20}for(const{tag:t,hole:r,rect:o,yOffset:i}of s){const s=c/2,h=e.y-19.2-i;if(o.attr("class","tag-label-bkg").attr("points",`\n ${n-a/2-2},${h+2} \n ${n-a/2-2},${h-2}\n ${e.posWithOffset-a/2-4},${h-s-2}\n ${e.posWithOffset+a/2+4},${h-s-2}\n ${e.posWithOffset+a/2+4},${h+s+2}\n ${e.posWithOffset-a/2-4},${h+s+2}`),r.attr("cy",h).attr("cx",n-a/2+2).attr("r",1.5).attr("class","tag-hole"),"TB"===V||"BT"===V){const c=n+i;o.attr("class","tag-label-bkg").attr("points",`\n ${e.x},${c+2}\n ${e.x},${c-2}\n ${e.x+Y},${c-s-2}\n ${e.x+Y+a+4},${c-s-2}\n ${e.x+Y+a+4},${c+s+2}\n ${e.x+Y},${c+s+2}`).attr("transform","translate(12,12) rotate(45, "+e.x+","+n+")"),r.attr("cx",e.x+2).attr("cy",c).attr("transform","translate(12,12) rotate(45, "+e.x+","+n+")"),t.attr("x",e.x+5).attr("y",c+3).attr("transform","translate(14,14) rotate(45, "+e.x+","+n+")")}}}}),"drawCommitTags"),it=(0,c.K2)((t=>{switch(t.customType??t.type){case h.NORMAL:return"commit-normal";case h.REVERSE:return"commit-reverse";case h.HIGHLIGHT:return"commit-highlight";case h.MERGE:return"commit-merge";case h.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}}),"getCommitClassType"),ht=(0,c.K2)(((t,r,e,n)=>{const o={x:0,y:0};if(!(t.parents.length>0))return"TB"===r?30:"BT"===r?(n.get(t.id)??o).y-N:0;{const e=X(t.parents);if(e){const a=n.get(e)??o;return"TB"===r?a.y+N:"BT"===r?(n.get(t.id)??o).y-N:a.x+N}}return 0}),"calculatePosition"),dt=(0,c.K2)(((t,r,e)=>{const n="BT"===V&&e?r:r+Y,o="TB"===V||"BT"===V?n:j.get(t.branch)?.pos,a="TB"===V||"BT"===V?j.get(t.branch)?.pos:n;if(void 0===a||void 0===o)throw new Error(`Position were undefined for commit ${t.id}`);return{x:a,y:o,posWithOffset:n}}),"getCommitPosition"),mt=(0,c.K2)(((t,r,e)=>{if(!D)throw new Error("GitGraph config not found");const n=t.append("g").attr("class","commit-bullets"),o=t.append("g").attr("class","commit-labels");let a="TB"===V||"BT"===V?30:0;const s=[...r.keys()],i=D?.parallelCommits??!1,h=(0,c.K2)(((t,e)=>{const n=r.get(t)?.seq,o=r.get(e)?.seq;return void 0!==n&&void 0!==o?n-o:0}),"sortKeys");let d=s.sort(h);"BT"===V&&(i&&tt(d,r,a),d=d.reverse()),d.forEach((t=>{const c=r.get(t);if(!c)throw new Error(`Commit not found for key ${t}`);i&&(a=ht(c,V,a,W));const s=dt(c,a,i);if(e){const t=it(c),r=c.customType??c.type,e=j.get(c.branch)?.index??0;at(n,c,s,t,e,r),ct(o,c,s,a),st(o,c,s,a)}"TB"===V||"BT"===V?W.set(c.id,{x:s.x,y:s.posWithOffset}):W.set(c.id,{x:s.posWithOffset,y:s.y}),a="BT"===V&&i?a+N:a+N+Y,a>U&&(U=a)}))}),"drawCommits"),$t=(0,c.K2)(((t,r,e,n,o)=>{const a=("TB"===V||"BT"===V?e.xt.branch===a),"isOnBranchToGetCurve"),i=(0,c.K2)((e=>e.seq>t.seq&&e.seqi(t)&&s(t)))}),"shouldRerouteArrow"),lt=(0,c.K2)(((t,r,e=0)=>{const n=t+Math.abs(t-r)/2;if(e>5)return n;if(F.every((t=>Math.abs(t-n)>=10)))return F.push(n),n;const o=Math.abs(t-r);return lt(t,r-o/5,e+1)}),"findLane"),gt=(0,c.K2)(((t,r,e,n)=>{const o=W.get(r.id),a=W.get(e.id);if(void 0===o||void 0===a)throw new Error(`Commit positions not found for commits ${r.id} and ${e.id}`);const c=$t(r,e,o,a,n);let s,i="",d="",m=0,$=0,l=j.get(e.branch)?.index;if(e.type===h.MERGE&&r.id!==e.parents[0]&&(l=j.get(r.branch)?.index),c){i="A 10 10, 0, 0, 0,",d="A 10 10, 0, 0, 1,",m=10,$=10;const t=o.ya.x&&(i="A 20 20, 0, 0, 0,",d="A 20 20, 0, 0, 1,",m=20,$=20,s=e.type===h.MERGE&&r.id!==e.parents[0]?`M ${o.x} ${o.y} L ${o.x} ${a.y-m} ${d} ${o.x-$} ${a.y} L ${a.x} ${a.y}`:`M ${o.x} ${o.y} L ${a.x+m} ${o.y} ${i} ${a.x} ${o.y+$} L ${a.x} ${a.y}`),o.x===a.x&&(s=`M ${o.x} ${o.y} L ${a.x} ${a.y}`)):"BT"===V?(o.xa.x&&(i="A 20 20, 0, 0, 0,",d="A 20 20, 0, 0, 1,",m=20,$=20,s=e.type===h.MERGE&&r.id!==e.parents[0]?`M ${o.x} ${o.y} L ${o.x} ${a.y+m} ${i} ${o.x-$} ${a.y} L ${a.x} ${a.y}`:`M ${o.x} ${o.y} L ${a.x-m} ${o.y} ${i} ${a.x} ${o.y-$} L ${a.x} ${a.y}`),o.x===a.x&&(s=`M ${o.x} ${o.y} L ${a.x} ${a.y}`)):(o.ya.y&&(s=e.type===h.MERGE&&r.id!==e.parents[0]?`M ${o.x} ${o.y} L ${a.x-m} ${o.y} ${i} ${a.x} ${o.y-$} L ${a.x} ${a.y}`:`M ${o.x} ${o.y} L ${o.x} ${a.y+m} ${d} ${o.x+$} ${a.y} L ${a.x} ${a.y}`),o.y===a.y&&(s=`M ${o.x} ${o.y} L ${a.x} ${a.y}`));if(void 0===s)throw new Error("Line definition not found");t.append("path").attr("d",s).attr("class","arrow arrow"+l%8)}),"drawArrow"),yt=(0,c.K2)(((t,r)=>{const e=t.append("g").attr("class","commit-arrows");[...r.keys()].forEach((t=>{const n=r.get(t);n.parents&&n.parents.length>0&&n.parents.forEach((t=>{gt(e,r.get(t),n,r)}))}))}),"drawArrows"),pt=(0,c.K2)(((t,r)=>{const e=t.append("g");r.forEach(((t,r)=>{const n=r%8,o=j.get(t.name)?.pos;if(void 0===o)throw new Error(`Position not found for branch ${t.name}`);const a=e.append("line");a.attr("x1",0),a.attr("y1",o),a.attr("x2",U),a.attr("y2",o),a.attr("class","branch branch"+n),"TB"===V?(a.attr("y1",30),a.attr("x1",o),a.attr("y2",U),a.attr("x2",o)):"BT"===V&&(a.attr("y1",U),a.attr("x1",o),a.attr("y2",30),a.attr("x2",o)),F.push(o);const c=t.name,s=Q(c),i=e.insert("rect"),h=e.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+n);h.node().appendChild(s);const d=s.getBBox();i.attr("class","branchLabelBkg label"+n).attr("rx",4).attr("ry",4).attr("x",-d.width-4-(!0===D?.rotateCommitLabel?30:0)).attr("y",-d.height/2+8).attr("width",d.width+18).attr("height",d.height+4),h.attr("transform","translate("+(-d.width-14-(!0===D?.rotateCommitLabel?30:0))+", "+(o-d.height/2-1)+")"),"TB"===V?(i.attr("x",o-d.width/2-10).attr("y",0),h.attr("transform","translate("+(o-d.width/2-5)+", 0)")):"BT"===V?(i.attr("x",o-d.width/2-10).attr("y",U),h.attr("transform","translate("+(o-d.width/2-5)+", "+U+")")):i.attr("transform","translate(-19, "+(o-d.height/2)+")")}))}),"drawBranches"),xt=(0,c.K2)((function(t,r,e,n,o){return j.set(t,{pos:r,index:e}),r+(50+(o?40:0)+("TB"===V||"BT"===V?n.width/2:0))}),"setBranchPosition"),ft={parser:H,db:v,renderer:{draw:(0,c.K2)((function(t,r,e,n){if(J(),c.Rm.debug("in gitgraph renderer",t+"\n","id:",r,e),!D)throw new Error("GitGraph config not found");const o=D.rotateCommitLabel??!1,s=n.db;_=s.getCommits();const h=s.getBranchesAsObjArray();V=s.getDirection();const d=(0,i.Ltv)(`[id="${r}"]`);let m=0;h.forEach(((t,r)=>{const e=Q(t.name),n=d.append("g"),a=n.insert("g").attr("class","branchLabel"),c=a.insert("g").attr("class","label branch-label");c.node()?.appendChild(e);const s=e.getBBox();m=xt(t.name,m,r,s,o),c.remove(),a.remove(),n.remove()})),mt(d,_,!1),D.showBranches&&pt(d,h),yt(d,_),mt(d,_,!0),a._K.insertTitle(d,"gitTitleText",D.titleTopMargin??0,s.getDiagramTitle()),(0,c.mj)(void 0,d,D.diagramPadding,D.useMaxWidth)}),"draw")},styles:(0,c.K2)((t=>`\n .commit-id,\n .commit-msg,\n .branch-label {\n fill: lightgrey;\n color: lightgrey;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n }\n ${[0,1,2,3,4,5,6,7].map((r=>`\n .branch-label${r} { fill: ${t["gitBranchLabel"+r]}; }\n .commit${r} { stroke: ${t["git"+r]}; fill: ${t["git"+r]}; }\n .commit-highlight${r} { stroke: ${t["gitInv"+r]}; fill: ${t["gitInv"+r]}; }\n .label${r} { fill: ${t["git"+r]}; }\n .arrow${r} { stroke: ${t["git"+r]}; }\n `)).join("\n")}\n\n .branch {\n stroke-width: 1;\n stroke: ${t.lineColor};\n stroke-dasharray: 2;\n }\n .commit-label { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelColor};}\n .commit-label-bkg { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelBackground}; opacity: 0.5; }\n .tag-label { font-size: ${t.tagLabelFontSize}; fill: ${t.tagLabelColor};}\n .tag-label-bkg { fill: ${t.tagLabelBackground}; stroke: ${t.tagLabelBorder}; }\n .tag-hole { fill: ${t.textColor}; }\n\n .commit-merge {\n stroke: ${t.primaryColor};\n fill: ${t.primaryColor};\n }\n .commit-reverse {\n stroke: ${t.primaryColor};\n fill: ${t.primaryColor};\n stroke-width: 3;\n }\n .commit-highlight-outer {\n }\n .commit-highlight-inner {\n stroke: ${t.primaryColor};\n fill: ${t.primaryColor};\n }\n\n .arrow { stroke-width: 8; stroke-linecap: round; fill: none}\n .gitTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/376-769d6d21.chunk.min.js b/themes/hugo-geekdoc/static/js/376-769d6d21.chunk.min.js deleted file mode 100644 index e508ea013..000000000 --- a/themes/hugo-geekdoc/static/js/376-769d6d21.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[376],{5937:(t,e,s)=>{s.d(e,{A:()=>u});var n=s(6309),r=s(1931);const u=(t,e)=>n.A.lang.round(r.A.parse(t)[e])},6151:(t,e,s)=>{s.d(e,{A:()=>u,P:()=>i});var n=s(798),r=s(4852),u=(0,n.K2)(((t,e)=>{let s;return"sandbox"===e&&(s=(0,r.Ltv)("#i"+t)),("sandbox"===e?(0,r.Ltv)(s.nodes()[0].contentDocument.body):(0,r.Ltv)("body")).select(`[id="${t}"]`)}),"getDiagramElement"),i=(0,n.K2)(((t,e,s,r)=>{t.attr("class",s);const{width:u,height:i,x:c,y:l}=a(t,e);(0,n.a$)(t,i,u,r);const h=o(c,l,u,i,e);t.attr("viewBox",h),n.Rm.debug(`viewBox configured: ${h} with padding: ${e}`)}),"setupViewPortForSVG"),a=(0,n.K2)(((t,e)=>{const s=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:s.width+2*e,height:s.height+2*e,x:s.x,y:s.y}}),"calculateDimensionsWithPadding"),o=(0,n.K2)(((t,e,s,n,r)=>`${t-r} ${e-r} ${s} ${n}`),"createViewBox")},376:(t,e,s)=>{s.d(e,{diagram:()=>Et});var n,r,u=s(6151),i=(s(6578),s(2602)),a=(s(9022),s(8496),s(8252),s(7323)),o=s(798),c=s(4852),l=s(5937),h=s(5582),d=0,p=(0,o.D7)(),A=new Map,g=[],y=new Map,f=[],k=new Map,b=new Map,E=0,D=!0,m=[],C=(0,o.K2)((t=>o.Y2.sanitizeText(t,p)),"sanitizeText"),T=(0,o.K2)((function(t){for(const e of A.values())if(e.id===t)return e.domId;return t}),"lookUpDomId"),x=(0,o.K2)((function(t,e,s,n,r,u,i={}){if(!t||0===t.trim().length)return;let a,c=A.get(t);void 0===c&&(c={id:t,labelType:"text",domId:"flowchart-"+t+"-"+d,styles:[],classes:[]},A.set(t,c)),d++,void 0!==e?(p=(0,o.D7)(),a=C(e.text.trim()),c.labelType=e.type,a.startsWith('"')&&a.endsWith('"')&&(a=a.substring(1,a.length-1)),c.text=a):void 0===c.text&&(c.text=t),void 0!==s&&(c.type=s),null!=n&&n.forEach((function(t){c.styles.push(t)})),null!=r&&r.forEach((function(t){c.classes.push(t)})),void 0!==u&&(c.dir=u),void 0===c.props?c.props=i:void 0!==i&&Object.assign(c.props,i)}),"addVertex"),F=(0,o.K2)((function(t,e,s){const n={start:t,end:e,type:void 0,text:"",labelType:"text"};o.Rm.info("abc78 Got edge...",n);const r=s.text;if(void 0!==r&&(n.text=C(r.text.trim()),n.text.startsWith('"')&&n.text.endsWith('"')&&(n.text=n.text.substring(1,n.text.length-1)),n.labelType=r.type),void 0!==s&&(n.type=s.type,n.stroke=s.stroke,n.length=s.length>10?10:s.length),!(g.length<(p.maxEdges??500)))throw new Error(`Edge limit exceeded. ${g.length} edges found, but the limit is ${p.maxEdges}.\n\nInitialize mermaid with maxEdges set to a higher number to allow more edges.\nYou cannot set this config via configuration inside the diagram as it is a secure config.\nYou have to call mermaid.initialize.`);o.Rm.info("Pushing edge..."),g.push(n)}),"addSingleLink"),S=(0,o.K2)((function(t,e,s){o.Rm.info("addLink",t,e,s);for(const n of t)for(const t of e)F(n,t,s)}),"addLink"),_=(0,o.K2)((function(t,e){t.forEach((function(t){"default"===t?g.defaultInterpolate=e:g[t].interpolate=e}))}),"updateLinkInterpolate"),B=(0,o.K2)((function(t,e){t.forEach((function(t){if("number"==typeof t&&t>=g.length)throw new Error(`The index ${t} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${g.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);"default"===t?g.defaultStyle=e:(g[t].style=e,(g[t]?.style?.length??0)>0&&!g[t]?.style?.some((t=>t?.startsWith("fill")))&&g[t]?.style?.push("fill:none"))}))}),"updateLink"),v=(0,o.K2)((function(t,e){t.split(",").forEach((function(t){let s=y.get(t);void 0===s&&(s={id:t,styles:[],textStyles:[]},y.set(t,s)),null!=e&&e.forEach((function(t){if(/color/.exec(t)){const e=t.replace("fill","bgFill");s.textStyles.push(e)}s.styles.push(t)}))}))}),"addClass"),w=(0,o.K2)((function(t){/.*/.exec(n)&&(n="LR"),/.*v/.exec(n)&&(n="TB"),"TD"===n&&(n="TB")}),"setDirection"),L=(0,o.K2)((function(t,e){for(const s of t.split(",")){const t=A.get(s);t&&t.classes.push(e);const n=k.get(s);n&&n.classes.push(e)}}),"setClass"),$=(0,o.K2)((function(t,e){if(void 0!==e){e=C(e);for(const s of t.split(","))b.set("gen-1"===r?T(s):s,e)}}),"setTooltip"),R=(0,o.K2)((function(t,e,s){const n=T(t);if("loose"!==(0,o.D7)().securityLevel)return;if(void 0===e)return;let r=[];if("string"==typeof s){r=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t")),t.classed("hover",!0)})).on("mouseout",(function(){e.transition().duration(500).style("opacity",0),(0,c.Ltv)(this).classed("hover",!1)}))}),"setupToolTips");m.push(G);var W=(0,o.K2)((function(t="gen-1"){A=new Map,y=new Map,g=[],m=[G],f=[],k=new Map,E=0,b=new Map,D=!0,r=t,p=(0,o.D7)(),(0,o.IU)()}),"clear"),Y=(0,o.K2)((t=>{r=t||"gen-2"}),"setGen"),j=(0,o.K2)((function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}),"defaultStyle"),X=(0,o.K2)((function(t,e,s){let n=t.text.trim(),u=s.text;function i(t){const e={boolean:{},number:{},string:{}},s=[];let n;return{nodeList:t.filter((function(t){const r=typeof t;return t.stmt&&"dir"===t.stmt?(n=t.value,!1):""!==t.trim()&&(r in e?!e[r].hasOwnProperty(t)&&(e[r][t]=!0):!s.includes(t)&&s.push(t))})),dir:n}}t===s&&/\s/.exec(s.text)&&(n=void 0),(0,o.K2)(i,"uniq");const{nodeList:a,dir:c}=i(e.flat());if("gen-1"===r)for(let t=0;t2e3)return{result:!1,count:0};if(H[q]=e,f[e].id===t)return{result:!0,count:0};let n=0,r=1;for(;n=0){const s=Q(t,e);if(s.result)return{result:!0,count:r+s.count};r+=s.count}n+=1}return{result:!1,count:r}}),"indexNodes2"),Z=(0,o.K2)((function(t){return H[t]}),"getDepthFirstPos"),J=(0,o.K2)((function(){q=-1,f.length>0&&Q("none",f.length-1)}),"indexNodes"),tt=(0,o.K2)((function(){return f}),"getSubGraphs"),et=(0,o.K2)((()=>!!D&&(D=!1,!0)),"firstGraph"),st=(0,o.K2)((t=>{let e=t.trim(),s="arrow_open";switch(e[0]){case"<":s="arrow_point",e=e.slice(1);break;case"x":s="arrow_cross",e=e.slice(1);break;case"o":s="arrow_circle",e=e.slice(1)}let n="normal";return e.includes("=")&&(n="thick"),e.includes(".")&&(n="dotted"),{type:s,stroke:n}}),"destructStartLink"),nt=(0,o.K2)(((t,e)=>{const s=e.length;let n=0;for(let r=0;r{const e=t.trim();let s=e.slice(0,-1),n="arrow_open";switch(e.slice(-1)){case"x":n="arrow_cross",e.startsWith("x")&&(n="double_"+n,s=s.slice(1));break;case">":n="arrow_point",e.startsWith("<")&&(n="double_"+n,s=s.slice(1));break;case"o":n="arrow_circle",e.startsWith("o")&&(n="double_"+n,s=s.slice(1))}let r="normal",u=s.length-1;s.startsWith("=")&&(r="thick"),s.startsWith("~")&&(r="invisible");const i=nt(".",s);return i&&(r="dotted",u=i),{type:n,stroke:r,length:u}}),"destructEndLink"),ut=(0,o.K2)(((t,e)=>{const s=rt(t);let n;if(e){if(n=st(e),n.stroke!==s.stroke)return{type:"INVALID",stroke:"INVALID"};if("arrow_open"===n.type)n.type=s.type;else{if(n.type!==s.type)return{type:"INVALID",stroke:"INVALID"};n.type="double_"+n.type}return"double_arrow"===n.type&&(n.type="double_arrow_point"),n.length=s.length,n}return s}),"destructLink"),it=(0,o.K2)(((t,e)=>{for(const s of t)if(s.nodes.includes(e))return!0;return!1}),"exists"),at=(0,o.K2)(((t,e)=>{const s=[];return t.nodes.forEach(((n,r)=>{it(e,n)||s.push(t.nodes[r])})),{nodes:s}}),"makeUniq"),ot={firstGraph:et},ct=(0,o.K2)((t=>"square"===t.type?"squareRect":"round"===t.type?"roundedRect":t.type??"squareRect"),"getTypeFromVertex"),lt=(0,o.K2)(((t,e)=>t.find((t=>t.id===e))),"findNode"),ht=(0,o.K2)((t=>{let e="none",s="arrow_point";switch(t){case"arrow_point":case"arrow_circle":case"arrow_cross":s=t;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":e=t.replace("double_",""),s=e}return{arrowTypeStart:e,arrowTypeEnd:s}}),"destructEdgeType"),dt=(0,o.K2)(((t,e,s,n,r,u)=>{const i=s.get(t.id),a=n.get(t.id)??!1,o=lt(e,t.id);o?(o.cssStyles=t.styles,o.cssCompiledStyles=pt(t.classes),o.cssClasses=t.classes.join(" ")):e.push({id:t.id,label:t.text,labelStyle:"",parentId:i,padding:r.flowchart?.padding||8,cssStyles:t.styles,cssCompiledStyles:pt(["default","node",...t.classes]),cssClasses:"default "+t.classes.join(" "),shape:ct(t),dir:t.dir,domId:t.domId,isGroup:a,look:u,link:t.link,linkTarget:t.linkTarget,tooltip:K(t.id)})}),"addNodeFromVertex");function pt(t){let e=[];for(const s of t){const t=y.get(s);t?.styles&&(e=[...e,...t.styles??[]].map((t=>t.trim()))),t?.textStyles&&(e=[...e,...t.textStyles??[]].map((t=>t.trim())))}return e}(0,o.K2)(pt,"getCompiledStyles");var At=(0,o.K2)((()=>{const t=(0,o.D7)(),e=[],s=[],n=tt(),r=new Map,u=new Map;for(let t=n.length-1;t>=0;t--){const e=n[t];e.nodes.length>0&&u.set(e.id,!0);for(const t of e.nodes)r.set(t,e.id)}for(let s=n.length-1;s>=0;s--){const u=n[s];e.push({id:u.id,label:u.title,labelStyle:"",parentId:r.get(u.id),padding:8,cssCompiledStyles:pt(u.classes),cssClasses:u.classes.join(" "),shape:"rect",dir:u.dir,isGroup:!0,look:t.look})}M().forEach((s=>{dt(s,e,r,u,t,t.look||"classic")}));const i=V();return i.forEach(((e,n)=>{const{arrowTypeStart:r,arrowTypeEnd:u}=ht(e.type),o=[...i.defaultStyle??[]];e.style&&o.push(...e.style);const c={id:(0,a.rY)(e.start,e.end,{counter:n,prefix:"L"}),start:e.start,end:e.end,type:e.type??"normal",label:e.text,labelpos:"c",thickness:e.stroke,minlen:e.length,classes:"invisible"===e?.stroke?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:"invisible"===e?.stroke?"none":r,arrowTypeEnd:"invisible"===e?.stroke?"none":u,arrowheadStyle:"fill: #333",labelStyle:o,style:o,pattern:e.stroke,look:t.look};s.push(c)})),{nodes:e,edges:s,other:{},config:t}}),"getData"),gt={defaultConfig:(0,o.K2)((()=>o.ME.flowchart),"defaultConfig"),setAccTitle:o.SV,getAccTitle:o.iN,getAccDescription:o.m7,getData:At,setAccDescription:o.EI,addVertex:x,lookUpDomId:T,addLink:S,updateLinkInterpolate:_,updateLink:B,addClass:v,setDirection:w,setClass:L,setTooltip:$,getTooltip:K,setClickEvent:N,setLink:I,bindFunctions:P,getDirection:O,getVertices:M,getEdges:V,getClasses:U,clear:W,setGen:Y,defaultStyle:j,addSubGraph:X,getDepthFirstPos:Z,indexNodes:J,getSubGraphs:tt,destructLink:ut,lex:ot,exists:it,makeUniq:at,setDiagramTitle:o.ke,getDiagramTitle:o.ab},yt={getClasses:(0,o.K2)((function(t,e){return e.db.getClasses()}),"getClasses"),draw:(0,o.K2)((async function(t,e,s,n){o.Rm.info("REF0:"),o.Rm.info("Drawing state diagram (v2)",e);const{securityLevel:r,flowchart:l,layout:h}=(0,o.D7)();let d;"sandbox"===r&&(d=(0,c.Ltv)("#i"+e));const p="sandbox"===r?d.nodes()[0].contentDocument:document;o.Rm.debug("Before getData: ");const A=n.db.getData();o.Rm.debug("Data: ",A);const g=(0,u.A)(e,r),y=O();A.type=n.type,A.layoutAlgorithm=(0,i.q7)(h),"dagre"===A.layoutAlgorithm&&"elk"===h&&o.Rm.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),A.direction=y,A.nodeSpacing=l?.nodeSpacing||50,A.rankSpacing=l?.rankSpacing||50,A.markers=["point","circle","cross"],A.diagramId=e,o.Rm.debug("REF1:",A),await(0,i.XX)(A,g);const f=A.config.flowchart?.diagramPadding??8;a._K.insertTitle(g,"flowchartTitleText",l?.titleTopMargin||0,n.db.getDiagramTitle()),(0,u.P)(g,f,"flowchart",l?.useMaxWidth||!1);for(const t of A.nodes){const s=(0,c.Ltv)(`#${e} [id="${t.id}"]`);if(!s||!t.link)continue;const n=p.createElementNS("http://www.w3.org/2000/svg","a");n.setAttributeNS("http://www.w3.org/2000/svg","class",t.cssClasses),n.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),"sandbox"===r?n.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):t.linkTarget&&n.setAttributeNS("http://www.w3.org/2000/svg","target",t.linkTarget);const u=s.insert((function(){return n}),":first-child"),i=s.select(".label-container");i&&u.append((function(){return i.node()}));const a=s.select(".label");a&&u.append((function(){return a.node()}))}}),"draw")},ft=function(){var t=(0,o.K2)((function(t,e,s,n){for(s=s||{},n=t.length;n--;s[t[n]]=e);return s}),"o"),e=[1,4],s=[1,3],n=[1,5],r=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],u=[2,2],i=[1,13],a=[1,14],c=[1,15],l=[1,16],h=[1,23],d=[1,25],p=[1,26],A=[1,27],g=[1,49],y=[1,48],f=[1,29],k=[1,30],b=[1,31],E=[1,32],D=[1,33],m=[1,44],C=[1,46],T=[1,42],x=[1,47],F=[1,43],S=[1,50],_=[1,45],B=[1,51],v=[1,52],w=[1,34],L=[1,35],$=[1,36],R=[1,37],I=[1,57],K=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],N=[1,61],P=[1,60],O=[1,62],M=[8,9,11,73,75],V=[1,88],U=[1,93],G=[1,92],W=[1,89],Y=[1,85],j=[1,91],X=[1,87],z=[1,94],q=[1,90],H=[1,95],Q=[1,86],Z=[8,9,10,11,73,75],J=[8,9,10,11,44,73,75],tt=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],et=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],st=[42,58,86,99,102,103,106,108,111,112,113],nt=[1,121],rt=[1,120],ut=[1,128],it=[1,142],at=[1,143],ot=[1,144],ct=[1,145],lt=[1,130],ht=[1,132],dt=[1,136],pt=[1,137],At=[1,138],gt=[1,139],yt=[1,140],ft=[1,141],kt=[1,146],bt=[1,147],Et=[1,126],Dt=[1,127],mt=[1,134],Ct=[1,129],Tt=[1,133],xt=[1,131],Ft=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],St=[1,149],_t=[8,9,11],Bt=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],vt=[1,169],wt=[1,165],Lt=[1,166],$t=[1,170],Rt=[1,167],It=[1,168],Kt=[75,113,116],Nt=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],Pt=[10,103],Ot=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],Mt=[1,235],Vt=[1,233],Ut=[1,237],Gt=[1,231],Wt=[1,232],Yt=[1,234],jt=[1,236],Xt=[1,238],zt=[1,255],qt=[8,9,11,103],Ht=[8,9,10,11,58,81,102,103,106,107,108,109],Qt={trace:(0,o.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING[value]",60:"PIPE",61:"CYLINDERSTART",62:"CYLINDEREND",63:"DIAMOND_START",64:"DIAMOND_STOP",65:"TAGEND",66:"TRAPSTART",67:"TRAPEND",68:"INVTRAPSTART",69:"INVTRAPEND",72:"TESTSTR",73:"START_LINK",75:"LINK",77:"STR",78:"MD_STR",81:"STYLE",82:"LINKSTYLE",83:"CLASSDEF",84:"CLASS",85:"CLICK",86:"DOWN",87:"UP",90:"idString[vertex]",91:"idString[class]",92:"CALLBACKNAME",93:"CALLBACKARGS",94:"HREF",95:"LINK_TARGET",96:"STR[link]",97:"STR[tooltip]",99:"DEFAULT",101:"INTERPOLATE",102:"NUM",103:"COMMA",106:"NODE_STRING",107:"UNIT",108:"BRKT",109:"PCT",111:"MINUS",112:"MULT",113:"UNICODE_TEXT",114:"TEXT",115:"TAGSTART",116:"EDGE_TEXT",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[20,3],[20,4],[20,2],[20,1],[40,1],[40,5],[41,1],[41,3],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,8],[43,4],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,4],[43,4],[43,1],[39,2],[39,3],[39,3],[39,1],[39,3],[74,1],[74,2],[74,1],[74,1],[70,1],[71,3],[30,1],[30,2],[30,1],[30,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[100,1],[100,3],[89,1],[89,3],[104,1],[104,2],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[79,1],[79,1],[79,1],[79,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[76,1],[76,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[45,1],[45,2],[98,1],[98,2],[33,1],[33,1],[33,1],[33,1]],performAction:(0,o.K2)((function(t,e,s,n,r,u,i){var a=u.length-1;switch(r){case 2:case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 3:(!Array.isArray(u[a])||u[a].length>0)&&u[a-1].push(u[a]),this.$=u[a-1];break;case 4:case 176:case 49:case 71:case 174:this.$=u[a];break;case 11:n.setDirection("TB"),this.$="TB";break;case 12:n.setDirection(u[a-1]),this.$=u[a-1];break;case 27:this.$=u[a-1].nodes;break;case 33:this.$=n.addSubGraph(u[a-6],u[a-1],u[a-4]);break;case 34:this.$=n.addSubGraph(u[a-3],u[a-1],u[a-3]);break;case 35:this.$=n.addSubGraph(void 0,u[a-1],void 0);break;case 37:this.$=u[a].trim(),n.setAccTitle(this.$);break;case 38:case 39:this.$=u[a].trim(),n.setAccDescription(this.$);break;case 43:n.addLink(u[a-2].stmt,u[a],u[a-1]),this.$={stmt:u[a],nodes:u[a].concat(u[a-2].nodes)};break;case 44:n.addLink(u[a-3].stmt,u[a-1],u[a-2]),this.$={stmt:u[a-1],nodes:u[a-1].concat(u[a-3].nodes)};break;case 45:this.$={stmt:u[a-1],nodes:u[a-1]};break;case 46:this.$={stmt:u[a],nodes:u[a]};break;case 47:case 121:case 123:this.$=[u[a]];break;case 48:this.$=u[a-4].concat(u[a]);break;case 50:this.$=u[a-2],n.setClass(u[a-2],u[a]);break;case 51:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"square");break;case 52:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"doublecircle");break;case 53:this.$=u[a-5],n.addVertex(u[a-5],u[a-2],"circle");break;case 54:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"ellipse");break;case 55:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"stadium");break;case 56:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"subroutine");break;case 57:this.$=u[a-7],n.addVertex(u[a-7],u[a-1],"rect",void 0,void 0,void 0,Object.fromEntries([[u[a-5],u[a-3]]]));break;case 58:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"cylinder");break;case 59:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"round");break;case 60:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"diamond");break;case 61:this.$=u[a-5],n.addVertex(u[a-5],u[a-2],"hexagon");break;case 62:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"odd");break;case 63:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"trapezoid");break;case 64:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"inv_trapezoid");break;case 65:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"lean_right");break;case 66:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"lean_left");break;case 67:this.$=u[a],n.addVertex(u[a]);break;case 68:u[a-1].text=u[a],this.$=u[a-1];break;case 69:case 70:u[a-2].text=u[a-1],this.$=u[a-2];break;case 72:var o=n.destructLink(u[a],u[a-2]);this.$={type:o.type,stroke:o.stroke,length:o.length,text:u[a-1]};break;case 73:case 79:case 94:case 96:this.$={text:u[a],type:"text"};break;case 74:case 80:case 95:this.$={text:u[a-1].text+""+u[a],type:u[a-1].type};break;case 75:case 81:this.$={text:u[a],type:"string"};break;case 76:case 82:case 97:this.$={text:u[a],type:"markdown"};break;case 77:o=n.destructLink(u[a]),this.$={type:o.type,stroke:o.stroke,length:o.length};break;case 78:this.$=u[a-1];break;case 98:this.$=u[a-4],n.addClass(u[a-2],u[a]);break;case 99:this.$=u[a-4],n.setClass(u[a-2],u[a]);break;case 100:case 108:this.$=u[a-1],n.setClickEvent(u[a-1],u[a]);break;case 101:case 109:this.$=u[a-3],n.setClickEvent(u[a-3],u[a-2]),n.setTooltip(u[a-3],u[a]);break;case 102:this.$=u[a-2],n.setClickEvent(u[a-2],u[a-1],u[a]);break;case 103:this.$=u[a-4],n.setClickEvent(u[a-4],u[a-3],u[a-2]),n.setTooltip(u[a-4],u[a]);break;case 104:this.$=u[a-2],n.setLink(u[a-2],u[a]);break;case 105:this.$=u[a-4],n.setLink(u[a-4],u[a-2]),n.setTooltip(u[a-4],u[a]);break;case 106:this.$=u[a-4],n.setLink(u[a-4],u[a-2],u[a]);break;case 107:this.$=u[a-6],n.setLink(u[a-6],u[a-4],u[a]),n.setTooltip(u[a-6],u[a-2]);break;case 110:this.$=u[a-1],n.setLink(u[a-1],u[a]);break;case 111:this.$=u[a-3],n.setLink(u[a-3],u[a-2]),n.setTooltip(u[a-3],u[a]);break;case 112:this.$=u[a-3],n.setLink(u[a-3],u[a-2],u[a]);break;case 113:this.$=u[a-5],n.setLink(u[a-5],u[a-4],u[a]),n.setTooltip(u[a-5],u[a-2]);break;case 114:this.$=u[a-4],n.addVertex(u[a-2],void 0,void 0,u[a]);break;case 115:this.$=u[a-4],n.updateLink([u[a-2]],u[a]);break;case 116:this.$=u[a-4],n.updateLink(u[a-2],u[a]);break;case 117:this.$=u[a-8],n.updateLinkInterpolate([u[a-6]],u[a-2]),n.updateLink([u[a-6]],u[a]);break;case 118:this.$=u[a-8],n.updateLinkInterpolate(u[a-6],u[a-2]),n.updateLink(u[a-6],u[a]);break;case 119:this.$=u[a-6],n.updateLinkInterpolate([u[a-4]],u[a]);break;case 120:this.$=u[a-6],n.updateLinkInterpolate(u[a-4],u[a]);break;case 122:case 124:u[a-2].push(u[a]),this.$=u[a-2];break;case 126:this.$=u[a-1]+u[a];break;case 175:case 177:this.$=u[a-1]+""+u[a];break;case 178:this.$={stmt:"dir",value:"TB"};break;case 179:this.$={stmt:"dir",value:"BT"};break;case 180:this.$={stmt:"dir",value:"RL"};break;case 181:this.$={stmt:"dir",value:"LR"}}}),"anonymous"),table:[{3:1,4:2,9:e,10:s,12:n},{1:[3]},t(r,u,{5:6}),{4:7,9:e,10:s,12:n},{4:8,9:e,10:s,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:i,9:a,10:c,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,33:24,34:d,36:p,38:A,40:28,41:38,42:g,43:39,45:40,58:y,81:f,82:k,83:b,84:E,85:D,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v,118:w,119:L,120:$,121:R},t(r,[2,9]),t(r,[2,10]),t(r,[2,11]),{8:[1,54],9:[1,55],10:I,15:53,18:56},t(K,[2,3]),t(K,[2,4]),t(K,[2,5]),t(K,[2,6]),t(K,[2,7]),t(K,[2,8]),{8:N,9:P,11:O,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:N,9:P,11:O,21:66},{8:N,9:P,11:O,21:67},{8:N,9:P,11:O,21:68},{8:N,9:P,11:O,21:69},{8:N,9:P,11:O,21:70},{8:N,9:P,10:[1,71],11:O,21:72},t(K,[2,36]),{35:[1,73]},{37:[1,74]},t(K,[2,39]),t(M,[2,46],{18:75,10:I}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:V,42:U,58:G,77:[1,83],86:W,92:[1,80],94:[1,81],98:82,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q,117:84},t(K,[2,178]),t(K,[2,179]),t(K,[2,180]),t(K,[2,181]),t(Z,[2,47]),t(Z,[2,49],{44:[1,96]}),t(J,[2,67],{110:109,29:[1,97],42:g,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:y,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:m,99:C,102:T,103:x,106:F,108:S,111:_,112:B,113:v}),t(tt,[2,174]),t(tt,[2,135]),t(tt,[2,136]),t(tt,[2,137]),t(tt,[2,138]),t(tt,[2,139]),t(tt,[2,140]),t(tt,[2,141]),t(tt,[2,142]),t(tt,[2,143]),t(tt,[2,144]),t(tt,[2,145]),t(r,[2,12]),t(r,[2,18]),t(r,[2,19]),{9:[1,110]},t(et,[2,26],{18:111,10:I}),t(K,[2,27]),{40:112,41:38,42:g,43:39,45:40,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},t(K,[2,40]),t(K,[2,41]),t(K,[2,42]),t(st,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:nt,116:rt},t([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),t(K,[2,28]),t(K,[2,29]),t(K,[2,30]),t(K,[2,31]),t(K,[2,32]),{10:ut,12:it,14:at,27:ot,28:122,32:ct,42:lt,58:ht,73:dt,77:[1,124],78:[1,125],80:135,81:pt,82:At,83:gt,84:yt,85:ft,86:kt,87:bt,88:123,102:Et,106:Dt,108:mt,111:Ct,112:Tt,113:xt},t(Ft,u,{5:148}),t(K,[2,37]),t(K,[2,38]),t(M,[2,45],{42:St}),{42:g,45:150,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},{99:[1,151],100:152,102:[1,153]},{42:g,45:154,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},{42:g,45:155,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},t(_t,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},t(_t,[2,108],{117:160,10:[1,159],14:V,42:U,58:G,86:W,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q}),t(_t,[2,110],{10:[1,161]}),t(Bt,[2,176]),t(Bt,[2,163]),t(Bt,[2,164]),t(Bt,[2,165]),t(Bt,[2,166]),t(Bt,[2,167]),t(Bt,[2,168]),t(Bt,[2,169]),t(Bt,[2,170]),t(Bt,[2,171]),t(Bt,[2,172]),t(Bt,[2,173]),{42:g,45:162,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},{30:163,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:171,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:173,48:[1,172],65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:174,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:175,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:176,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{106:[1,177]},{30:178,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:179,63:[1,180],65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:181,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:182,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:183,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},t(tt,[2,175]),t(r,[2,20]),t(et,[2,25]),t(M,[2,43],{18:184,10:I}),t(st,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{75:[1,188],76:189,113:nt,116:rt},t(Kt,[2,73]),t(Kt,[2,75]),t(Kt,[2,76]),t(Kt,[2,161]),t(Kt,[2,162]),{8:N,9:P,10:ut,11:O,12:it,14:at,21:191,27:ot,29:[1,190],32:ct,42:lt,58:ht,73:dt,80:135,81:pt,82:At,83:gt,84:yt,85:ft,86:kt,87:bt,88:192,102:Et,106:Dt,108:mt,111:Ct,112:Tt,113:xt},t(Nt,[2,94]),t(Nt,[2,96]),t(Nt,[2,97]),t(Nt,[2,150]),t(Nt,[2,151]),t(Nt,[2,152]),t(Nt,[2,153]),t(Nt,[2,154]),t(Nt,[2,155]),t(Nt,[2,156]),t(Nt,[2,157]),t(Nt,[2,158]),t(Nt,[2,159]),t(Nt,[2,160]),t(Nt,[2,83]),t(Nt,[2,84]),t(Nt,[2,85]),t(Nt,[2,86]),t(Nt,[2,87]),t(Nt,[2,88]),t(Nt,[2,89]),t(Nt,[2,90]),t(Nt,[2,91]),t(Nt,[2,92]),t(Nt,[2,93]),{6:11,7:12,8:i,9:a,10:c,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,32:[1,193],33:24,34:d,36:p,38:A,40:28,41:38,42:g,43:39,45:40,58:y,81:f,82:k,83:b,84:E,85:D,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v,118:w,119:L,120:$,121:R},{10:I,18:194},{10:[1,195],42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:109,111:_,112:B,113:v},{10:[1,196]},{10:[1,197],103:[1,198]},t(Pt,[2,121]),{10:[1,199],42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:109,111:_,112:B,113:v},{10:[1,200],42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:109,111:_,112:B,113:v},{77:[1,201]},t(_t,[2,102],{10:[1,202]}),t(_t,[2,104],{10:[1,203]}),{77:[1,204]},t(Bt,[2,177]),{77:[1,205],95:[1,206]},t(Z,[2,50],{110:109,42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,111:_,112:B,113:v}),{31:[1,207],65:vt,79:208,113:$t,114:Rt,115:It},t(Ot,[2,79]),t(Ot,[2,81]),t(Ot,[2,82]),t(Ot,[2,146]),t(Ot,[2,147]),t(Ot,[2,148]),t(Ot,[2,149]),{47:[1,209],65:vt,79:208,113:$t,114:Rt,115:It},{30:210,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{49:[1,211],65:vt,79:208,113:$t,114:Rt,115:It},{51:[1,212],65:vt,79:208,113:$t,114:Rt,115:It},{53:[1,213],65:vt,79:208,113:$t,114:Rt,115:It},{55:[1,214],65:vt,79:208,113:$t,114:Rt,115:It},{58:[1,215]},{62:[1,216],65:vt,79:208,113:$t,114:Rt,115:It},{64:[1,217],65:vt,79:208,113:$t,114:Rt,115:It},{30:218,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{31:[1,219],65:vt,79:208,113:$t,114:Rt,115:It},{65:vt,67:[1,220],69:[1,221],79:208,113:$t,114:Rt,115:It},{65:vt,67:[1,223],69:[1,222],79:208,113:$t,114:Rt,115:It},t(M,[2,44],{42:St}),t(st,[2,70]),t(st,[2,69]),{60:[1,224],65:vt,79:208,113:$t,114:Rt,115:It},t(st,[2,72]),t(Kt,[2,74]),{30:225,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},t(Ft,u,{5:226}),t(Nt,[2,95]),t(K,[2,35]),{41:227,42:g,43:39,45:40,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},{10:Mt,58:Vt,81:Ut,89:228,102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{10:Mt,58:Vt,81:Ut,89:239,101:[1,240],102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{10:Mt,58:Vt,81:Ut,89:241,101:[1,242],102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{102:[1,243]},{10:Mt,58:Vt,81:Ut,89:244,102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{42:g,45:245,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},t(_t,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},t(_t,[2,109]),t(_t,[2,111],{10:[1,249]}),t(_t,[2,112]),t(J,[2,51]),t(Ot,[2,80]),t(J,[2,52]),{49:[1,250],65:vt,79:208,113:$t,114:Rt,115:It},t(J,[2,59]),t(J,[2,54]),t(J,[2,55]),t(J,[2,56]),{106:[1,251]},t(J,[2,58]),t(J,[2,60]),{64:[1,252],65:vt,79:208,113:$t,114:Rt,115:It},t(J,[2,62]),t(J,[2,63]),t(J,[2,65]),t(J,[2,64]),t(J,[2,66]),t([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:vt,79:208,113:$t,114:Rt,115:It},{6:11,7:12,8:i,9:a,10:c,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,32:[1,254],33:24,34:d,36:p,38:A,40:28,41:38,42:g,43:39,45:40,58:y,81:f,82:k,83:b,84:E,85:D,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v,118:w,119:L,120:$,121:R},t(Z,[2,48]),t(_t,[2,114],{103:zt}),t(qt,[2,123],{105:256,10:Mt,58:Vt,81:Ut,102:Gt,106:Wt,107:Yt,108:jt,109:Xt}),t(Ht,[2,125]),t(Ht,[2,127]),t(Ht,[2,128]),t(Ht,[2,129]),t(Ht,[2,130]),t(Ht,[2,131]),t(Ht,[2,132]),t(Ht,[2,133]),t(Ht,[2,134]),t(_t,[2,115],{103:zt}),{10:[1,257]},t(_t,[2,116],{103:zt}),{10:[1,258]},t(Pt,[2,122]),t(_t,[2,98],{103:zt}),t(_t,[2,99],{110:109,42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,111:_,112:B,113:v}),t(_t,[2,103]),t(_t,[2,105],{10:[1,259]}),t(_t,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:N,9:P,11:O,21:264},t(K,[2,34]),{10:Mt,58:Vt,81:Ut,102:Gt,104:265,105:230,106:Wt,107:Yt,108:jt,109:Xt},t(Ht,[2,126]),{14:V,42:U,58:G,86:W,98:266,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q,117:84},{14:V,42:U,58:G,86:W,98:267,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q,117:84},{95:[1,268]},t(_t,[2,113]),t(J,[2,53]),{30:269,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},t(J,[2,61]),t(Ft,u,{5:270}),t(qt,[2,124],{105:256,10:Mt,58:Vt,81:Ut,102:Gt,106:Wt,107:Yt,108:jt,109:Xt}),t(_t,[2,119],{117:160,10:[1,271],14:V,42:U,58:G,86:W,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q}),t(_t,[2,120],{117:160,10:[1,272],14:V,42:U,58:G,86:W,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q}),t(_t,[2,107]),{31:[1,273],65:vt,79:208,113:$t,114:Rt,115:It},{6:11,7:12,8:i,9:a,10:c,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,32:[1,274],33:24,34:d,36:p,38:A,40:28,41:38,42:g,43:39,45:40,58:y,81:f,82:k,83:b,84:E,85:D,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v,118:w,119:L,120:$,121:R},{10:Mt,58:Vt,81:Ut,89:275,102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{10:Mt,58:Vt,81:Ut,89:276,102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},t(J,[2,57]),t(K,[2,33]),t(_t,[2,117],{103:zt}),t(_t,[2,118],{103:zt})],defaultActions:{},parseError:(0,o.K2)((function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)}),"parseError"),parse:(0,o.K2)((function(t){var e=this,s=[0],n=[],r=[null],u=[],i=this.table,a="",c=0,l=0,h=0,d=u.slice.call(arguments,1),p=Object.create(this.lexer),A={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(A.yy[g]=this.yy[g]);p.setInput(t,A.yy),A.yy.lexer=p,A.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var y=p.yylloc;u.push(y);var f=p.options&&p.options.ranges;function k(){var t;return"number"!=typeof(t=n.pop()||p.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof A.yy.parseError?this.parseError=A.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,o.K2)((function(t){s.length=s.length-2*t,r.length=r.length-t,u.length=u.length-t}),"popStack"),(0,o.K2)(k,"lex");for(var b,E,D,m,C,T,x,F,S,_={};;){if(D=s[s.length-1],this.defaultActions[D]?m=this.defaultActions[D]:(null==b&&(b=k()),m=i[D]&&i[D][b]),void 0===m||!m.length||!m[0]){var B;for(T in S=[],i[D])this.terminals_[T]&&T>2&&S.push("'"+this.terminals_[T]+"'");B=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+S.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:p.match,token:this.terminals_[b]||b,line:p.yylineno,loc:y,expected:S})}if(m[0]instanceof Array&&m.length>1)throw new Error("Parse Error: multiple actions possible at state: "+D+", token: "+b);switch(m[0]){case 1:s.push(b),r.push(p.yytext),u.push(p.yylloc),s.push(m[1]),b=null,E?(b=E,E=null):(l=p.yyleng,a=p.yytext,c=p.yylineno,y=p.yylloc,h>0&&h--);break;case 2:if(x=this.productions_[m[1]][1],_.$=r[r.length-x],_._$={first_line:u[u.length-(x||1)].first_line,last_line:u[u.length-1].last_line,first_column:u[u.length-(x||1)].first_column,last_column:u[u.length-1].last_column},f&&(_._$.range=[u[u.length-(x||1)].range[0],u[u.length-1].range[1]]),void 0!==(C=this.performAction.apply(_,[a,l,c,A.yy,m[1],r,u].concat(d))))return C;x&&(s=s.slice(0,-1*x*2),r=r.slice(0,-1*x),u=u.slice(0,-1*x)),s.push(this.productions_[m[1]][0]),r.push(_.$),u.push(_._$),F=i[s[s.length-2]][s[s.length-1]],s.push(F);break;case 3:return!0}}return!0}),"parse")},Zt=function(){return{EOF:1,parseError:(0,o.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,o.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,o.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,o.K2)((function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===n.length?this.yylloc.first_column:0)+n[n.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,o.K2)((function(){return this._more=!0,this}),"more"),reject:(0,o.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,o.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,o.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,o.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,o.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,o.K2)((function(t,e){var s,n,r;if(this.options.backtrack_lexer&&(r={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(r.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var u in r)this[u]=r[u];return!1}return!1}),"test_match"),next:(0,o.K2)((function(){if(this.done)return this.EOF;var t,e,s,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),u=0;ue[0].length)){if(e=s,n=u,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,r[u])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,r[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,o.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,o.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,o.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,o.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,o.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,o.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,o.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,o.K2)((function(t,e,s,n){switch(s){case 0:return this.begin("acc_title"),34;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),36;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:case 8:case 11:case 14:case 17:case 27:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:this.begin("callbackname");break;case 9:this.popState(),this.begin("callbackargs");break;case 10:return 92;case 12:return 93;case 13:return"MD_STR";case 15:this.begin("md_string");break;case 16:return"STR";case 18:this.pushState("string");break;case 19:return 81;case 20:return 99;case 21:return 82;case 22:return 101;case 23:return 83;case 24:return 84;case 25:return 94;case 26:this.begin("click");break;case 28:return 85;case 29:case 30:case 31:return t.lex.firstGraph()&&this.begin("dir"),12;case 32:return 27;case 33:return 32;case 34:case 35:case 36:case 37:return 95;case 38:return this.popState(),13;case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 48:return this.popState(),14;case 49:return 118;case 50:return 119;case 51:return 120;case 52:return 121;case 53:return 102;case 54:case 95:return 108;case 55:return 44;case 56:return 58;case 57:case 96:return 42;case 58:return 8;case 59:return 103;case 60:case 94:return 112;case 61:case 64:case 67:return this.popState(),75;case 62:return this.pushState("edgeText"),73;case 63:case 66:case 69:return 116;case 65:return this.pushState("thickEdgeText"),73;case 68:return this.pushState("dottedEdgeText"),73;case 70:return 75;case 71:return this.popState(),51;case 72:case 108:return"TEXT";case 73:return this.pushState("ellipseText"),50;case 74:return this.popState(),53;case 75:return this.pushState("text"),52;case 76:return this.popState(),55;case 77:return this.pushState("text"),54;case 78:return 56;case 79:return this.pushState("text"),65;case 80:return this.popState(),62;case 81:return this.pushState("text"),61;case 82:return this.popState(),47;case 83:return this.pushState("text"),46;case 84:return this.popState(),67;case 85:return this.popState(),69;case 86:return 114;case 87:return this.pushState("trapText"),66;case 88:return this.pushState("trapText"),68;case 89:return 115;case 90:return 65;case 91:return 87;case 92:return"SEP";case 93:return 86;case 97:return 106;case 98:return 111;case 99:return 113;case 100:return this.popState(),60;case 101:return this.pushState("text"),60;case 102:return this.popState(),49;case 103:return this.pushState("text"),48;case 104:return this.popState(),31;case 105:return this.pushState("text"),29;case 106:return this.popState(),64;case 107:return this.pushState("text"),63;case 109:return"QUOTE";case 110:return 9;case 111:return 10;case 112:return 11}}),"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{callbackargs:{rules:[11,12,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},callbackname:{rules:[8,9,10,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},href:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},click:{rules:[15,18,27,28,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dottedEdgeText:{rules:[15,18,67,69,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},thickEdgeText:{rules:[15,18,64,66,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},edgeText:{rules:[15,18,61,63,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},trapText:{rules:[15,18,70,73,75,77,81,83,84,85,86,87,88,101,103,105,107],inclusive:!1},ellipseText:{rules:[15,18,70,71,72,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},text:{rules:[15,18,70,73,74,75,76,77,80,81,82,83,87,88,100,101,102,103,104,105,106,107,108],inclusive:!1},vertex:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dir:{rules:[15,18,38,39,40,41,42,43,44,45,46,47,48,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr_multiline:{rules:[5,6,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr:{rules:[3,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_title:{rules:[1,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},md_string:{rules:[13,14,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},string:{rules:[15,16,17,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},INITIAL:{rules:[0,2,4,7,15,18,19,20,21,22,23,24,25,26,29,30,31,32,33,34,35,36,37,49,50,51,52,53,54,55,56,57,58,59,60,61,62,64,65,67,68,70,73,75,77,78,79,81,83,87,88,89,90,91,92,93,94,95,96,97,98,99,101,103,105,107,109,110,111,112],inclusive:!0}}}}();function Jt(){this.yy={}}return Qt.lexer=Zt,(0,o.K2)(Jt,"Parser"),Jt.prototype=Qt,Qt.Parser=Jt,new Jt}();ft.parser=ft;var kt=ft,bt=(0,o.K2)(((t,e)=>{const s=l.A,n=s(t,"r"),r=s(t,"g"),u=s(t,"b");return h.A(n,r,u,e)}),"fade"),Et={parser:kt,db:gt,renderer:yt,styles:(0,o.K2)((t=>`.label {\n font-family: ${t.fontFamily};\n color: ${t.nodeTextColor||t.textColor};\n }\n .cluster-label text {\n fill: ${t.titleColor};\n }\n .cluster-label span {\n color: ${t.titleColor};\n }\n .cluster-label span p {\n background-color: transparent;\n }\n\n .label text,span {\n fill: ${t.nodeTextColor||t.textColor};\n color: ${t.nodeTextColor||t.textColor};\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n .rough-node .label text , .node .label text {\n text-anchor: middle;\n }\n // .flowchart-label .text-outer-tspan {\n // text-anchor: middle;\n // }\n // .flowchart-label .text-inner-tspan {\n // text-anchor: start;\n // }\n\n .node .katex path {\n fill: #000;\n stroke: #000;\n stroke-width: 1px;\n }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${t.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${t.lineColor};\n stroke-width: 2.0px;\n }\n\n .flowchart-link {\n stroke: ${t.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${t.edgeLabelBackground};\n p {\n background-color: ${t.edgeLabelBackground};\n }\n rect {\n opacity: 0.5;\n background-color: ${t.edgeLabelBackground};\n fill: ${t.edgeLabelBackground};\n }\n text-align: center;\n }\n\n /* For html labels only */\n .labelBkg {\n background-color: ${bt(t.edgeLabelBackground,.5)};\n // background-color:\n }\n\n .cluster rect {\n fill: ${t.clusterBkg};\n stroke: ${t.clusterBorder};\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ${t.titleColor};\n }\n\n .cluster span {\n color: ${t.titleColor};\n }\n /* .cluster div {\n color: ${t.titleColor};\n } */\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ${t.fontFamily};\n font-size: 12px;\n background: ${t.tertiaryColor};\n border: 1px solid ${t.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .flowchartTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n }\n`),"getStyles"),init:(0,o.K2)((t=>{t.flowchart||(t.flowchart={}),t.layout&&(0,o.XV)({layout:t.layout}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,(0,o.XV)({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}}),gt.clear(),gt.setGen("gen-2")}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/382-2d69f8f9.chunk.min.js b/themes/hugo-geekdoc/static/js/382-2d69f8f9.chunk.min.js new file mode 100644 index 000000000..14744f755 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/382-2d69f8f9.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[382],{8448:(t,e,a)=>{a.d(e,{m:()=>s});var r=a(32),s=class{constructor(t){this.init=t,this.records=this.init()}static{(0,r.K2)(this,"ImperativeState")}reset(){this.records=this.init()}}},4323:(t,e,a)=>{a.d(e,{CP:()=>l,HT:()=>h,PB:()=>d,aC:()=>c,lC:()=>n,m:()=>o,tk:()=>i});var r=a(32),s=a(6750),i=(0,r.K2)(((t,e)=>{const a=t.append("rect");if(a.attr("x",e.x),a.attr("y",e.y),a.attr("fill",e.fill),a.attr("stroke",e.stroke),a.attr("width",e.width),a.attr("height",e.height),e.name&&a.attr("name",e.name),e.rx&&a.attr("rx",e.rx),e.ry&&a.attr("ry",e.ry),void 0!==e.attrs)for(const t in e.attrs)a.attr(t,e.attrs[t]);return e.class&&a.attr("class",e.class),a}),"drawRect"),n=(0,r.K2)(((t,e)=>{const a={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};i(t,a).lower()}),"drawBackgroundRect"),o=(0,r.K2)(((t,e)=>{const a=e.text.replace(r.H1," "),s=t.append("text");s.attr("x",e.x),s.attr("y",e.y),s.attr("class","legend"),s.style("text-anchor",e.anchor),e.class&&s.attr("class",e.class);const i=s.append("tspan");return i.attr("x",e.x+2*e.textMargin),i.text(a),s}),"drawText"),c=(0,r.K2)(((t,e,a,r)=>{const i=t.append("image");i.attr("x",e),i.attr("y",a);const n=(0,s.J)(r);i.attr("xlink:href",n)}),"drawImage"),l=(0,r.K2)(((t,e,a,r)=>{const i=t.append("use");i.attr("x",e),i.attr("y",a);const n=(0,s.J)(r);i.attr("xlink:href",`#${n}`)}),"drawEmbeddedImage"),d=(0,r.K2)((()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0})),"getNoteRect"),h=(0,r.K2)((()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0})),"getTextObj")},1:(t,e,a)=>{a.d(e,{diagram:()=>Ut});var r=a(4323),s=a(8448),i=a(5522),n=a(32),o=a(4852),c=a(6750),l=function(){var t=(0,n.K2)((function(t,e,a,r){for(a=a||{},r=t.length;r--;a[t[r]]=e);return a}),"o"),e=[1,2],a=[1,3],r=[1,4],s=[2,4],i=[1,9],o=[1,11],c=[1,13],l=[1,14],d=[1,16],h=[1,17],p=[1,18],g=[1,24],u=[1,25],x=[1,26],y=[1,27],m=[1,28],b=[1,29],T=[1,30],f=[1,31],E=[1,32],w=[1,33],I=[1,34],L=[1,35],_=[1,36],P=[1,37],k=[1,38],A=[1,39],v=[1,41],N=[1,42],M=[1,43],D=[1,44],O=[1,45],S=[1,46],K=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,54,59,60,61,62,70],R=[4,5,16,50,52,53],Y=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],C=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,54,59,60,61,62,70],B=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,54,59,60,61,62,70],$=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,54,59,60,61,62,70],V=[68,69,70],F=[1,122],W={trace:(0,n.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,note:54,placement:55,text2:56,over:57,actor_pair:58,links:59,link:60,properties:61,details:62,spaceList:63,",":64,left_of:65,right_of:66,signaltype:67,"+":68,"-":69,ACTOR:70,SOLID_OPEN_ARROW:71,DOTTED_OPEN_ARROW:72,SOLID_ARROW:73,BIDIRECTIONAL_SOLID_ARROW:74,DOTTED_ARROW:75,BIDIRECTIONAL_DOTTED_ARROW:76,SOLID_CROSS:77,DOTTED_CROSS:78,SOLID_POINT:79,DOTTED_POINT:80,TXT:81,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",54:"note",57:"over",59:"links",60:"link",61:"properties",62:"details",64:",",65:"left_of",66:"right_of",68:"+",69:"-",70:"ACTOR",71:"SOLID_OPEN_ARROW",72:"DOTTED_OPEN_ARROW",73:"SOLID_ARROW",74:"BIDIRECTIONAL_SOLID_ARROW",75:"DOTTED_ARROW",76:"BIDIRECTIONAL_DOTTED_ARROW",77:"SOLID_CROSS",78:"DOTTED_CROSS",79:"SOLID_POINT",80:"DOTTED_POINT",81:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[63,2],[63,1],[58,3],[58,1],[55,1],[55,1],[17,5],[17,5],[17,4],[22,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[56,1]],performAction:(0,n.K2)((function(t,e,a,r,s,i,n){var o=i.length-1;switch(s){case 3:return r.apply(i[o]),i[o];case 4:case 9:case 8:case 13:this.$=[];break;case 5:case 10:i[o-1].push(i[o]),this.$=i[o-1];break;case 6:case 7:case 11:case 12:case 62:this.$=i[o];break;case 15:i[o].type="createParticipant",this.$=i[o];break;case 16:i[o-1].unshift({type:"boxStart",boxData:r.parseBoxData(i[o-2])}),i[o-1].push({type:"boxEnd",boxText:i[o-2]}),this.$=i[o-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(i[o-2]),sequenceIndexStep:Number(i[o-1]),sequenceVisible:!0,signalType:r.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(i[o-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:r.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:r.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:r.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:r.LINETYPE.ACTIVE_START,actor:i[o-1].actor};break;case 23:this.$={type:"activeEnd",signalType:r.LINETYPE.ACTIVE_END,actor:i[o-1].actor};break;case 29:r.setDiagramTitle(i[o].substring(6)),this.$=i[o].substring(6);break;case 30:r.setDiagramTitle(i[o].substring(7)),this.$=i[o].substring(7);break;case 31:this.$=i[o].trim(),r.setAccTitle(this.$);break;case 32:case 33:this.$=i[o].trim(),r.setAccDescription(this.$);break;case 34:i[o-1].unshift({type:"loopStart",loopText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.LOOP_START}),i[o-1].push({type:"loopEnd",loopText:i[o-2],signalType:r.LINETYPE.LOOP_END}),this.$=i[o-1];break;case 35:i[o-1].unshift({type:"rectStart",color:r.parseMessage(i[o-2]),signalType:r.LINETYPE.RECT_START}),i[o-1].push({type:"rectEnd",color:r.parseMessage(i[o-2]),signalType:r.LINETYPE.RECT_END}),this.$=i[o-1];break;case 36:i[o-1].unshift({type:"optStart",optText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.OPT_START}),i[o-1].push({type:"optEnd",optText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.OPT_END}),this.$=i[o-1];break;case 37:i[o-1].unshift({type:"altStart",altText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.ALT_START}),i[o-1].push({type:"altEnd",signalType:r.LINETYPE.ALT_END}),this.$=i[o-1];break;case 38:i[o-1].unshift({type:"parStart",parText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.PAR_START}),i[o-1].push({type:"parEnd",signalType:r.LINETYPE.PAR_END}),this.$=i[o-1];break;case 39:i[o-1].unshift({type:"parStart",parText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.PAR_OVER_START}),i[o-1].push({type:"parEnd",signalType:r.LINETYPE.PAR_END}),this.$=i[o-1];break;case 40:i[o-1].unshift({type:"criticalStart",criticalText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.CRITICAL_START}),i[o-1].push({type:"criticalEnd",signalType:r.LINETYPE.CRITICAL_END}),this.$=i[o-1];break;case 41:i[o-1].unshift({type:"breakStart",breakText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.BREAK_START}),i[o-1].push({type:"breakEnd",optText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.BREAK_END}),this.$=i[o-1];break;case 43:this.$=i[o-3].concat([{type:"option",optionText:r.parseMessage(i[o-1]),signalType:r.LINETYPE.CRITICAL_OPTION},i[o]]);break;case 45:this.$=i[o-3].concat([{type:"and",parText:r.parseMessage(i[o-1]),signalType:r.LINETYPE.PAR_AND},i[o]]);break;case 47:this.$=i[o-3].concat([{type:"else",altText:r.parseMessage(i[o-1]),signalType:r.LINETYPE.ALT_ELSE},i[o]]);break;case 48:i[o-3].draw="participant",i[o-3].type="addParticipant",i[o-3].description=r.parseMessage(i[o-1]),this.$=i[o-3];break;case 49:i[o-1].draw="participant",i[o-1].type="addParticipant",this.$=i[o-1];break;case 50:i[o-3].draw="actor",i[o-3].type="addParticipant",i[o-3].description=r.parseMessage(i[o-1]),this.$=i[o-3];break;case 51:i[o-1].draw="actor",i[o-1].type="addParticipant",this.$=i[o-1];break;case 52:i[o-1].type="destroyParticipant",this.$=i[o-1];break;case 53:this.$=[i[o-1],{type:"addNote",placement:i[o-2],actor:i[o-1].actor,text:i[o]}];break;case 54:i[o-2]=[].concat(i[o-1],i[o-1]).slice(0,2),i[o-2][0]=i[o-2][0].actor,i[o-2][1]=i[o-2][1].actor,this.$=[i[o-1],{type:"addNote",placement:r.PLACEMENT.OVER,actor:i[o-2].slice(0,2),text:i[o]}];break;case 55:this.$=[i[o-1],{type:"addLinks",actor:i[o-1].actor,text:i[o]}];break;case 56:this.$=[i[o-1],{type:"addALink",actor:i[o-1].actor,text:i[o]}];break;case 57:this.$=[i[o-1],{type:"addProperties",actor:i[o-1].actor,text:i[o]}];break;case 58:this.$=[i[o-1],{type:"addDetails",actor:i[o-1].actor,text:i[o]}];break;case 61:this.$=[i[o-2],i[o]];break;case 63:this.$=r.PLACEMENT.LEFTOF;break;case 64:this.$=r.PLACEMENT.RIGHTOF;break;case 65:this.$=[i[o-4],i[o-1],{type:"addMessage",from:i[o-4].actor,to:i[o-1].actor,signalType:i[o-3],msg:i[o],activate:!0},{type:"activeStart",signalType:r.LINETYPE.ACTIVE_START,actor:i[o-1].actor}];break;case 66:this.$=[i[o-4],i[o-1],{type:"addMessage",from:i[o-4].actor,to:i[o-1].actor,signalType:i[o-3],msg:i[o]},{type:"activeEnd",signalType:r.LINETYPE.ACTIVE_END,actor:i[o-4].actor}];break;case 67:this.$=[i[o-3],i[o-1],{type:"addMessage",from:i[o-3].actor,to:i[o-1].actor,signalType:i[o-2],msg:i[o]}];break;case 68:this.$={type:"addParticipant",actor:i[o]};break;case 69:this.$=r.LINETYPE.SOLID_OPEN;break;case 70:this.$=r.LINETYPE.DOTTED_OPEN;break;case 71:this.$=r.LINETYPE.SOLID;break;case 72:this.$=r.LINETYPE.BIDIRECTIONAL_SOLID;break;case 73:this.$=r.LINETYPE.DOTTED;break;case 74:this.$=r.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 75:this.$=r.LINETYPE.SOLID_CROSS;break;case 76:this.$=r.LINETYPE.DOTTED_CROSS;break;case 77:this.$=r.LINETYPE.SOLID_POINT;break;case 78:this.$=r.LINETYPE.DOTTED_POINT;break;case 79:this.$=r.parseMessage(i[o].trim().substring(1))}}),"anonymous"),table:[{3:1,4:e,5:a,6:r},{1:[3]},{3:5,4:e,5:a,6:r},{3:6,4:e,5:a,6:r},t([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],s,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:i,5:o,8:8,9:10,12:12,13:c,14:l,17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},t(K,[2,5]),{9:47,12:12,13:c,14:l,17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},t(K,[2,7]),t(K,[2,8]),t(K,[2,14]),{12:48,50:P,52:k,53:A},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:S},{22:55,70:S},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},t(K,[2,29]),t(K,[2,30]),{32:[1,61]},{34:[1,62]},t(K,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,70:S},{22:72,70:S},{22:73,70:S},{67:74,71:[1,75],72:[1,76],73:[1,77],74:[1,78],75:[1,79],76:[1,80],77:[1,81],78:[1,82],79:[1,83],80:[1,84]},{55:85,57:[1,86],65:[1,87],66:[1,88]},{22:89,70:S},{22:90,70:S},{22:91,70:S},{22:92,70:S},t([5,51,64,71,72,73,74,75,76,77,78,79,80,81],[2,68]),t(K,[2,6]),t(K,[2,15]),t(R,[2,9],{10:93}),t(K,[2,17]),{5:[1,95],19:[1,94]},{5:[1,96]},t(K,[2,21]),{5:[1,97]},{5:[1,98]},t(K,[2,24]),t(K,[2,25]),t(K,[2,26]),t(K,[2,27]),t(K,[2,28]),t(K,[2,31]),t(K,[2,32]),t(Y,s,{7:99}),t(Y,s,{7:100}),t(Y,s,{7:101}),t(C,s,{40:102,7:103}),t(B,s,{42:104,7:105}),t(B,s,{7:105,42:106}),t($,s,{45:107,7:108}),t(Y,s,{7:109}),{5:[1,111],51:[1,110]},{5:[1,113],51:[1,112]},{5:[1,114]},{22:117,68:[1,115],69:[1,116],70:S},t(V,[2,69]),t(V,[2,70]),t(V,[2,71]),t(V,[2,72]),t(V,[2,73]),t(V,[2,74]),t(V,[2,75]),t(V,[2,76]),t(V,[2,77]),t(V,[2,78]),{22:118,70:S},{22:120,58:119,70:S},{70:[2,63]},{70:[2,64]},{56:121,81:F},{56:123,81:F},{56:124,81:F},{56:125,81:F},{4:[1,128],5:[1,130],11:127,12:129,16:[1,126],50:P,52:k,53:A},{5:[1,131]},t(K,[2,19]),t(K,[2,20]),t(K,[2,22]),t(K,[2,23]),{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[1,132],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[1,133],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[1,134],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{16:[1,135]},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[2,46],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,49:[1,136],50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{16:[1,137]},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[2,44],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,48:[1,138],50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{16:[1,139]},{16:[1,140]},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[2,42],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,47:[1,141],50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[1,142],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{15:[1,143]},t(K,[2,49]),{15:[1,144]},t(K,[2,51]),t(K,[2,52]),{22:145,70:S},{22:146,70:S},{56:147,81:F},{56:148,81:F},{56:149,81:F},{64:[1,150],81:[2,62]},{5:[2,55]},{5:[2,79]},{5:[2,56]},{5:[2,57]},{5:[2,58]},t(K,[2,16]),t(R,[2,10]),{12:151,50:P,52:k,53:A},t(R,[2,12]),t(R,[2,13]),t(K,[2,18]),t(K,[2,34]),t(K,[2,35]),t(K,[2,36]),t(K,[2,37]),{15:[1,152]},t(K,[2,38]),{15:[1,153]},t(K,[2,39]),t(K,[2,40]),{15:[1,154]},t(K,[2,41]),{5:[1,155]},{5:[1,156]},{56:157,81:F},{56:158,81:F},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:159,70:S},t(R,[2,11]),t(C,s,{7:103,40:160}),t(B,s,{7:105,42:161}),t($,s,{7:108,45:162}),t(K,[2,48]),t(K,[2,50]),{5:[2,65]},{5:[2,66]},{81:[2,61]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],87:[2,63],88:[2,64],121:[2,55],122:[2,79],123:[2,56],124:[2,57],125:[2,58],147:[2,67],148:[2,53],149:[2,54],157:[2,65],158:[2,66],159:[2,61],160:[2,47],161:[2,45],162:[2,43]},parseError:(0,n.K2)((function(t,e){if(!e.recoverable){var a=new Error(t);throw a.hash=e,a}this.trace(t)}),"parseError"),parse:(0,n.K2)((function(t){var e=this,a=[0],r=[],s=[null],i=[],o=this.table,c="",l=0,d=0,h=0,p=i.slice.call(arguments,1),g=Object.create(this.lexer),u={yy:{}};for(var x in this.yy)Object.prototype.hasOwnProperty.call(this.yy,x)&&(u.yy[x]=this.yy[x]);g.setInput(t,u.yy),u.yy.lexer=g,u.yy.parser=this,void 0===g.yylloc&&(g.yylloc={});var y=g.yylloc;i.push(y);var m=g.options&&g.options.ranges;function b(){var t;return"number"!=typeof(t=r.pop()||g.lex()||1)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof u.yy.parseError?this.parseError=u.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,n.K2)((function(t){a.length=a.length-2*t,s.length=s.length-t,i.length=i.length-t}),"popStack"),(0,n.K2)(b,"lex");for(var T,f,E,w,I,L,_,P,k,A={};;){if(E=a[a.length-1],this.defaultActions[E]?w=this.defaultActions[E]:(null==T&&(T=b()),w=o[E]&&o[E][T]),void 0===w||!w.length||!w[0]){var v;for(L in k=[],o[E])this.terminals_[L]&&L>2&&k.push("'"+this.terminals_[L]+"'");v=g.showPosition?"Parse error on line "+(l+1)+":\n"+g.showPosition()+"\nExpecting "+k.join(", ")+", got '"+(this.terminals_[T]||T)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==T?"end of input":"'"+(this.terminals_[T]||T)+"'"),this.parseError(v,{text:g.match,token:this.terminals_[T]||T,line:g.yylineno,loc:y,expected:k})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+T);switch(w[0]){case 1:a.push(T),s.push(g.yytext),i.push(g.yylloc),a.push(w[1]),T=null,f?(T=f,f=null):(d=g.yyleng,c=g.yytext,l=g.yylineno,y=g.yylloc,h>0&&h--);break;case 2:if(_=this.productions_[w[1]][1],A.$=s[s.length-_],A._$={first_line:i[i.length-(_||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(_||1)].first_column,last_column:i[i.length-1].last_column},m&&(A._$.range=[i[i.length-(_||1)].range[0],i[i.length-1].range[1]]),void 0!==(I=this.performAction.apply(A,[c,d,l,u.yy,w[1],s,i].concat(p))))return I;_&&(a=a.slice(0,-1*_*2),s=s.slice(0,-1*_),i=i.slice(0,-1*_)),a.push(this.productions_[w[1]][0]),s.push(A.$),i.push(A._$),P=o[a[a.length-2]][a[a.length-1]],a.push(P);break;case 3:return!0}}return!0}),"parse")},q=function(){return{EOF:1,parseError:(0,n.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,n.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,n.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,n.K2)((function(t){var e=t.length,a=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===r.length?this.yylloc.first_column:0)+r[r.length-a.length].length-a[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,n.K2)((function(){return this._more=!0,this}),"more"),reject:(0,n.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,n.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,n.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,n.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,n.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,n.K2)((function(t,e){var a,r,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],a=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),a)return a;if(this._backtrack){for(var i in s)this[i]=s[i];return!1}return!1}),"test_match"),next:(0,n.K2)((function(){if(this.done)return this.EOF;var t,e,a,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),i=0;ie[0].length)){if(e=a,r=i,this.options.backtrack_lexer){if(!1!==(t=this.test_match(a,s[i])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,n.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,n.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,n.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,n.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,n.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,n.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,n.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,n.K2)((function(t,e,a,r){switch(a){case 0:case 51:case 66:return 5;case 1:case 2:case 3:case 4:case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;case 8:return this.begin("ID"),50;case 9:return this.begin("ID"),52;case 10:return 13;case 11:return this.begin("ID"),53;case 12:return e.yytext=e.yytext.trim(),this.begin("ALIAS"),70;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;case 14:return this.popState(),this.popState(),5;case 15:return this.begin("LINE"),36;case 16:return this.begin("LINE"),37;case 17:return this.begin("LINE"),38;case 18:return this.begin("LINE"),39;case 19:return this.begin("LINE"),49;case 20:return this.begin("LINE"),41;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),48;case 23:return this.begin("LINE"),44;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),46;case 26:return this.popState(),15;case 27:return 16;case 28:return 65;case 29:return 66;case 30:return 59;case 31:return 60;case 32:return 61;case 33:return 62;case 34:return 57;case 35:return 54;case 36:return this.begin("ID"),21;case 37:return this.begin("ID"),23;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;case 41:return this.popState(),"acc_title_value";case 42:return this.begin("acc_descr"),33;case 43:return this.popState(),"acc_descr_value";case 44:this.begin("acc_descr_multiline");break;case 45:this.popState();break;case 46:return"acc_descr_multiline_value";case 47:return 6;case 48:return 18;case 49:return 20;case 50:return 64;case 52:return e.yytext=e.yytext.trim(),70;case 53:return 73;case 54:return 74;case 55:return 75;case 56:return 76;case 57:return 71;case 58:return 72;case 59:return 77;case 60:return 78;case 61:return 79;case 62:return 80;case 63:return 81;case 64:return 68;case 65:return 69;case 67:return"INVALID"}}),"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\<->\->:\n,;]+?([\-]*[^\<->\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\<->\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\<->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[45,46],inclusive:!1},acc_descr:{rules:[43],inclusive:!1},acc_title:{rules:[41],inclusive:!1},ID:{rules:[2,3,12],inclusive:!1},ALIAS:{rules:[2,3,13,14],inclusive:!1},LINE:{rules:[2,3,26],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,7,8,9,10,11,15,16,17,18,19,20,21,22,23,24,25,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67],inclusive:!0}}}}();function z(){this.yy={}}return W.lexer=q,(0,n.K2)(z,"Parser"),z.prototype=W,W.Parser=z,new z}();l.parser=l;var d=l,h=new s.m((()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0}))),p=(0,n.K2)((function(t){h.records.boxes.push({name:t.text,wrap:t.wrap??M(),fill:t.color,actorKeys:[]}),h.records.currentBox=h.records.boxes.slice(-1)[0]}),"addBox"),g=(0,n.K2)((function(t,e,a,r){let s=h.records.currentBox;const i=h.records.actors.get(t);if(i){if(h.records.currentBox&&i.box&&h.records.currentBox!==i.box)throw new Error(`A same participant should only be defined in one Box: ${i.name} can't be in '${i.box.name}' and in '${h.records.currentBox.name}' at the same time.`);if(s=i.box?i.box:h.records.currentBox,i.box=s,i&&e===i.name&&null==a)return}if(null==a?.text&&(a={text:e,type:r}),null!=r&&null!=a.text||(a={text:e,type:r}),h.records.actors.set(t,{box:s,name:e,description:a.text,wrap:a.wrap??M(),prevActor:h.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:r??"participant"}),h.records.prevActor){const e=h.records.actors.get(h.records.prevActor);e&&(e.nextActor=t)}h.records.currentBox&&h.records.currentBox.actorKeys.push(t),h.records.prevActor=t}),"addActor"),u=(0,n.K2)((t=>{let e,a=0;if(!t)return 0;for(e=0;e>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},e}return h.records.messages.push({from:t,to:e,message:a?.text??"",wrap:a?.wrap??M(),type:r,activate:s}),!0}),"addSignal"),m=(0,n.K2)((function(){return h.records.boxes.length>0}),"hasAtLeastOneBox"),b=(0,n.K2)((function(){return h.records.boxes.some((t=>t.name))}),"hasAtLeastOneBoxWithTitle"),T=(0,n.K2)((function(){return h.records.messages}),"getMessages"),f=(0,n.K2)((function(){return h.records.boxes}),"getBoxes"),E=(0,n.K2)((function(){return h.records.actors}),"getActors"),w=(0,n.K2)((function(){return h.records.createdActors}),"getCreatedActors"),I=(0,n.K2)((function(){return h.records.destroyedActors}),"getDestroyedActors"),L=(0,n.K2)((function(t){return h.records.actors.get(t)}),"getActor"),_=(0,n.K2)((function(){return[...h.records.actors.keys()]}),"getActorKeys"),P=(0,n.K2)((function(){h.records.sequenceNumbersEnabled=!0}),"enableSequenceNumbers"),k=(0,n.K2)((function(){h.records.sequenceNumbersEnabled=!1}),"disableSequenceNumbers"),A=(0,n.K2)((()=>h.records.sequenceNumbersEnabled),"showSequenceNumbers"),v=(0,n.K2)((function(t){h.records.wrapEnabled=t}),"setWrap"),N=(0,n.K2)((t=>{if(void 0===t)return{};t=t.trim();const e=null!==/^:?wrap:/.exec(t)||null===/^:?nowrap:/.exec(t)&&void 0;return{cleanedText:(void 0===e?t:t.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:e}}),"extractWrap"),M=(0,n.K2)((()=>void 0!==h.records.wrapEnabled?h.records.wrapEnabled:(0,n.D7)().sequence?.wrap??!1),"autoWrap"),D=(0,n.K2)((function(){h.reset(),(0,n.IU)()}),"clear"),O=(0,n.K2)((function(t){const e=t.trim(),{wrap:a,cleanedText:r}=N(e),s={text:r,wrap:a};return n.Rm.debug(`parseMessage: ${JSON.stringify(s)}`),s}),"parseMessage"),S=(0,n.K2)((function(t){const e=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(t);let a=e?.[1]?e[1].trim():"transparent",r=e?.[2]?e[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",a)||(a="transparent",r=t.trim());else{const e=(new Option).style;e.color=a,e.color!==a&&(a="transparent",r=t.trim())}const{wrap:s,cleanedText:i}=N(r);return{text:i?(0,n.jZ)(i,(0,n.D7)()):void 0,color:a,wrap:s}}),"parseBoxData"),K={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34},R=(0,n.K2)((function(t,e,a){const r={actor:t,placement:e,message:a.text,wrap:a.wrap??M()},s=[].concat(t,t);h.records.notes.push(r),h.records.messages.push({from:s[0],to:s[1],message:a.text,wrap:a.wrap??M(),type:K.NOTE,placement:e})}),"addNote"),Y=(0,n.K2)((function(t,e){const a=L(t);try{let t=(0,n.jZ)(e.text,(0,n.D7)());t=t.replace(/&/g,"&"),t=t.replace(/=/g,"="),B(a,JSON.parse(t))}catch(t){n.Rm.error("error while parsing actor link text",t)}}),"addLinks"),C=(0,n.K2)((function(t,e){const a=L(t);try{const t={};let r=(0,n.jZ)(e.text,(0,n.D7)());const s=r.indexOf("@");r=r.replace(/&/g,"&"),r=r.replace(/=/g,"=");const i=r.slice(0,s-1).trim(),o=r.slice(s+1).trim();t[i]=o,B(a,t)}catch(t){n.Rm.error("error while parsing actor link text",t)}}),"addALink");function B(t,e){if(null==t.links)t.links=e;else for(const a in e)t.links[a]=e[a]}(0,n.K2)(B,"insertLinks");var $=(0,n.K2)((function(t,e){const a=L(t);try{const t=(0,n.jZ)(e.text,(0,n.D7)());V(a,JSON.parse(t))}catch(t){n.Rm.error("error while parsing actor properties text",t)}}),"addProperties");function V(t,e){if(null==t.properties)t.properties=e;else for(const a in e)t.properties[a]=e[a]}function F(){h.records.currentBox=void 0}(0,n.K2)(V,"insertProperties"),(0,n.K2)(F,"boxEnd");var W=(0,n.K2)((function(t,e){const a=L(t),r=document.getElementById(e.text);try{const t=r.innerHTML,e=JSON.parse(t);e.properties&&V(a,e.properties),e.links&&B(a,e.links)}catch(t){n.Rm.error("error while parsing actor details text",t)}}),"addDetails"),q=(0,n.K2)((function(t,e){if(void 0!==t?.properties)return t.properties[e]}),"getActorProperty"),z=(0,n.K2)((function(t){if(Array.isArray(t))t.forEach((function(t){z(t)}));else switch(t.type){case"sequenceIndex":h.records.messages.push({from:void 0,to:void 0,message:{start:t.sequenceIndex,step:t.sequenceIndexStep,visible:t.sequenceVisible},wrap:!1,type:t.signalType});break;case"addParticipant":g(t.actor,t.actor,t.description,t.draw);break;case"createParticipant":if(h.records.actors.has(t.actor))throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");h.records.lastCreated=t.actor,g(t.actor,t.actor,t.description,t.draw),h.records.createdActors.set(t.actor,h.records.messages.length);break;case"destroyParticipant":h.records.lastDestroyed=t.actor,h.records.destroyedActors.set(t.actor,h.records.messages.length);break;case"activeStart":case"activeEnd":y(t.actor,void 0,void 0,t.signalType);break;case"addNote":R(t.actor,t.placement,t.text);break;case"addLinks":Y(t.actor,t.text);break;case"addALink":C(t.actor,t.text);break;case"addProperties":$(t.actor,t.text);break;case"addDetails":W(t.actor,t.text);break;case"addMessage":if(h.records.lastCreated){if(t.to!==h.records.lastCreated)throw new Error("The created participant "+h.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");h.records.lastCreated=void 0}else if(h.records.lastDestroyed){if(t.to!==h.records.lastDestroyed&&t.from!==h.records.lastDestroyed)throw new Error("The destroyed participant "+h.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");h.records.lastDestroyed=void 0}y(t.from,t.to,t.msg,t.signalType,t.activate);break;case"boxStart":p(t.boxData);break;case"boxEnd":F();break;case"loopStart":y(void 0,void 0,t.loopText,t.signalType);break;case"loopEnd":case"rectEnd":case"optEnd":case"altEnd":case"parEnd":case"criticalEnd":case"breakEnd":y(void 0,void 0,void 0,t.signalType);break;case"rectStart":y(void 0,void 0,t.color,t.signalType);break;case"optStart":y(void 0,void 0,t.optText,t.signalType);break;case"altStart":case"else":y(void 0,void 0,t.altText,t.signalType);break;case"setAccTitle":(0,n.SV)(t.text);break;case"parStart":case"and":y(void 0,void 0,t.parText,t.signalType);break;case"criticalStart":y(void 0,void 0,t.criticalText,t.signalType);break;case"option":y(void 0,void 0,t.optionText,t.signalType);break;case"breakStart":y(void 0,void 0,t.breakText,t.signalType)}}),"apply"),H={addActor:g,addMessage:x,addSignal:y,addLinks:Y,addDetails:W,addProperties:$,autoWrap:M,setWrap:v,enableSequenceNumbers:P,disableSequenceNumbers:k,showSequenceNumbers:A,getMessages:T,getActors:E,getCreatedActors:w,getDestroyedActors:I,getActor:L,getActorKeys:_,getActorProperty:q,getAccTitle:n.iN,getBoxes:f,getDiagramTitle:n.ab,setDiagramTitle:n.ke,getConfig:(0,n.K2)((()=>(0,n.D7)().sequence),"getConfig"),clear:D,parseMessage:O,parseBoxData:S,LINETYPE:K,ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},addNote:R,setAccTitle:n.SV,apply:z,setAccDescription:n.EI,getAccDescription:n.m7,hasAtLeastOneBox:m,hasAtLeastOneBoxWithTitle:b},j=(0,n.K2)((t=>`.actor {\n stroke: ${t.actorBorder};\n fill: ${t.actorBkg};\n }\n\n text.actor > tspan {\n fill: ${t.actorTextColor};\n stroke: none;\n }\n\n .actor-line {\n stroke: ${t.actorLineColor};\n }\n\n .messageLine0 {\n stroke-width: 1.5;\n stroke-dasharray: none;\n stroke: ${t.signalColor};\n }\n\n .messageLine1 {\n stroke-width: 1.5;\n stroke-dasharray: 2, 2;\n stroke: ${t.signalColor};\n }\n\n #arrowhead path {\n fill: ${t.signalColor};\n stroke: ${t.signalColor};\n }\n\n .sequenceNumber {\n fill: ${t.sequenceNumberColor};\n }\n\n #sequencenumber {\n fill: ${t.signalColor};\n }\n\n #crosshead path {\n fill: ${t.signalColor};\n stroke: ${t.signalColor};\n }\n\n .messageText {\n fill: ${t.signalTextColor};\n stroke: none;\n }\n\n .labelBox {\n stroke: ${t.labelBoxBorderColor};\n fill: ${t.labelBoxBkgColor};\n }\n\n .labelText, .labelText > tspan {\n fill: ${t.labelTextColor};\n stroke: none;\n }\n\n .loopText, .loopText > tspan {\n fill: ${t.loopTextColor};\n stroke: none;\n }\n\n .loopLine {\n stroke-width: 2px;\n stroke-dasharray: 2, 2;\n stroke: ${t.labelBoxBorderColor};\n fill: ${t.labelBoxBorderColor};\n }\n\n .note {\n //stroke: #decc93;\n stroke: ${t.noteBorderColor};\n fill: ${t.noteBkgColor};\n }\n\n .noteText, .noteText > tspan {\n fill: ${t.noteTextColor};\n stroke: none;\n }\n\n .activation0 {\n fill: ${t.activationBkgColor};\n stroke: ${t.activationBorderColor};\n }\n\n .activation1 {\n fill: ${t.activationBkgColor};\n stroke: ${t.activationBorderColor};\n }\n\n .activation2 {\n fill: ${t.activationBkgColor};\n stroke: ${t.activationBorderColor};\n }\n\n .actorPopupMenu {\n position: absolute;\n }\n\n .actorPopupMenuPanel {\n position: absolute;\n fill: ${t.actorBkg};\n box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);\n filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));\n}\n .actor-man line {\n stroke: ${t.actorBorder};\n fill: ${t.actorBkg};\n }\n .actor-man circle, line {\n stroke: ${t.actorBorder};\n fill: ${t.actorBkg};\n stroke-width: 2px;\n }\n`),"getStyles"),U="actor-top",J="actor-bottom",X="actor-man",G=(0,n.K2)((function(t,e){return(0,r.tk)(t,e)}),"drawRect"),Z=(0,n.K2)((function(t,e,a,r,s){if(void 0===e.links||null===e.links||0===Object.keys(e.links).length)return{height:0,width:0};const i=e.links,n=e.actorCnt,o=e.rectData;var l="none";s&&(l="block !important");const d=t.append("g");d.attr("id","actor"+n+"_popup"),d.attr("class","actorPopupMenu"),d.attr("display",l);var h="";void 0!==o.class&&(h=" "+o.class);let p=o.width>a?o.width:a;const g=d.append("rect");if(g.attr("class","actorPopupMenuPanel"+h),g.attr("x",o.x),g.attr("y",o.height),g.attr("fill",o.fill),g.attr("stroke",o.stroke),g.attr("width",p),g.attr("height",o.height),g.attr("rx",o.rx),g.attr("ry",o.ry),null!=i){var u=20;for(let t in i){var x=d.append("a"),y=(0,c.J)(i[t]);x.attr("xlink:href",y),x.attr("target","_blank"),It(r)(t,x,o.x+10,o.height+u,p,20,{class:"actor"},r),u+=30}}return g.attr("height",u),{height:o.height+u,width:p}}),"drawPopup"),Q=(0,n.K2)((function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"}),"popupMenuToggle"),tt=(0,n.K2)((async function(t,e,a=null){let r=t.append("foreignObject");const s=await(0,n.VJ)(e.text,(0,n.zj)()),i=r.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(s).node().getBoundingClientRect();if(r.attr("height",Math.round(i.height)).attr("width",Math.round(i.width)),"noteText"===e.class){const a=t.node().firstChild;a.setAttribute("height",i.height+2*e.textMargin);const s=a.getBBox();r.attr("x",Math.round(s.x+s.width/2-i.width/2)).attr("y",Math.round(s.y+s.height/2-i.height/2))}else if(a){let{startx:t,stopx:s,starty:n}=a;if(t>s){const e=t;t=s,s=e}r.attr("x",Math.round(t+Math.abs(t-s)/2-i.width/2)),"loopText"===e.class?r.attr("y",Math.round(n)):r.attr("y",Math.round(n-i.height))}return[r]}),"drawKatex"),et=(0,n.K2)((function(t,e){let a=0,r=0;const s=e.text.split(n.Y2.lineBreakRegex),[o,c]=(0,i.I5)(e.fontSize);let l=[],d=0,h=(0,n.K2)((()=>e.y),"yfunc");if(void 0!==e.valign&&void 0!==e.textMargin&&e.textMargin>0)switch(e.valign){case"top":case"start":h=(0,n.K2)((()=>Math.round(e.y+e.textMargin)),"yfunc");break;case"middle":case"center":h=(0,n.K2)((()=>Math.round(e.y+(a+r+e.textMargin)/2)),"yfunc");break;case"bottom":case"end":h=(0,n.K2)((()=>Math.round(e.y+(a+r+2*e.textMargin)-e.textMargin)),"yfunc")}if(void 0!==e.anchor&&void 0!==e.textMargin&&void 0!==e.width)switch(e.anchor){case"left":case"start":e.x=Math.round(e.x+e.textMargin),e.anchor="start",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"middle":case"center":e.x=Math.round(e.x+e.width/2),e.anchor="middle",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"right":case"end":e.x=Math.round(e.x+e.width-e.textMargin),e.anchor="end",e.dominantBaseline="middle",e.alignmentBaseline="middle"}for(let[n,p]of s.entries()){void 0!==e.textMargin&&0===e.textMargin&&void 0!==o&&(d=n*o);const s=t.append("text");s.attr("x",e.x),s.attr("y",h()),void 0!==e.anchor&&s.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline),void 0!==e.fontFamily&&s.style("font-family",e.fontFamily),void 0!==c&&s.style("font-size",c),void 0!==e.fontWeight&&s.style("font-weight",e.fontWeight),void 0!==e.fill&&s.attr("fill",e.fill),void 0!==e.class&&s.attr("class",e.class),void 0!==e.dy?s.attr("dy",e.dy):0!==d&&s.attr("dy",d);const g=p||i.pe;if(e.tspan){const t=s.append("tspan");t.attr("x",e.x),void 0!==e.fill&&t.attr("fill",e.fill),t.text(g)}else s.text(g);void 0!==e.valign&&void 0!==e.textMargin&&e.textMargin>0&&(r+=(s._groups||s)[0][0].getBBox().height,a=r),l.push(s)}return l}),"drawText"),at=(0,n.K2)((function(t,e){function a(t,e,a,r,s){return t+","+e+" "+(t+a)+","+e+" "+(t+a)+","+(e+r-s)+" "+(t+a-1.2*s)+","+(e+r)+" "+t+","+(e+r)}(0,n.K2)(a,"genPoints");const r=t.append("polygon");return r.attr("points",a(e.x,e.y,e.width,e.height,7)),r.attr("class","labelBox"),e.y=e.y+e.height/2,et(t,e),r}),"drawLabel"),rt=-1,st=(0,n.K2)(((t,e,a,r)=>{t.select&&a.forEach((a=>{const s=e.get(a),i=t.select("#actor"+s.actorCnt);!r.mirrorActors&&s.stopy?i.attr("y2",s.stopy+s.height/2):r.mirrorActors&&i.attr("y2",s.stopy)}))}),"fixLifeLineHeights"),it=(0,n.K2)((function(t,e,a,s){const i=s?e.stopy:e.starty,o=e.x+e.width/2,c=i+e.height,l=t.append("g").lower();var d=l;s||(rt++,Object.keys(e.links||{}).length&&!a.forceMenus&&d.attr("onclick",Q(`actor${rt}_popup`)).attr("cursor","pointer"),d.append("line").attr("id","actor"+rt).attr("x1",o).attr("y1",c).attr("x2",o).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),d=l.append("g"),e.actorCnt=rt,null!=e.links&&d.attr("id","root-"+rt));const h=(0,r.PB)();var p="actor";e.properties?.class?p=e.properties.class:h.fill="#eaeaea",p+=s?` ${J}`:` ${U}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=p,h.rx=3,h.ry=3,h.name=e.name;const g=G(d,h);if(e.rectData=h,e.properties?.icon){const t=e.properties.icon.trim();"@"===t.charAt(0)?(0,r.CP)(d,h.x+h.width-20,h.y+10,t.substr(1)):(0,r.aC)(d,h.x+h.width-20,h.y+10,t)}wt(a,(0,n.Wi)(e.description))(e.description,d,h.x,h.y,h.width,h.height,{class:"actor actor-box"},a);let u=e.height;if(g.node){const t=g.node().getBBox();e.height=t.height,u=t.height}return u}),"drawActorTypeParticipant"),nt=(0,n.K2)((function(t,e,a,s){const i=s?e.stopy:e.starty,o=e.x+e.width/2,c=i+80,l=t.append("g").lower();s||(rt++,l.append("line").attr("id","actor"+rt).attr("x1",o).attr("y1",c).attr("x2",o).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=rt);const d=t.append("g");let h=X;h+=s?` ${J}`:` ${U}`,d.attr("class",h),d.attr("name",e.name);const p=(0,r.PB)();p.x=e.x,p.y=i,p.fill="#eaeaea",p.width=e.width,p.height=e.height,p.class="actor",p.rx=3,p.ry=3,d.append("line").attr("id","actor-man-torso"+rt).attr("x1",o).attr("y1",i+25).attr("x2",o).attr("y2",i+45),d.append("line").attr("id","actor-man-arms"+rt).attr("x1",o-18).attr("y1",i+33).attr("x2",o+18).attr("y2",i+33),d.append("line").attr("x1",o-18).attr("y1",i+60).attr("x2",o).attr("y2",i+45),d.append("line").attr("x1",o).attr("y1",i+45).attr("x2",o+18-2).attr("y2",i+60);const g=d.append("circle");g.attr("cx",e.x+e.width/2),g.attr("cy",i+10),g.attr("r",15),g.attr("width",e.width),g.attr("height",e.height);const u=d.node().getBBox();return e.height=u.height,wt(a,(0,n.Wi)(e.description))(e.description,d,p.x,p.y+35,p.width,p.height,{class:`actor ${X}`},a),e.height}),"drawActorTypeActor"),ot=(0,n.K2)((async function(t,e,a,r){switch(e.type){case"actor":return await nt(t,e,a,r);case"participant":return await it(t,e,a,r)}}),"drawActor"),ct=(0,n.K2)((function(t,e,a){const r=t.append("g");pt(r,e),e.name&&wt(a)(e.name,r,e.x,e.y+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},a),r.lower()}),"drawBox"),lt=(0,n.K2)((function(t){return t.append("g")}),"anchorElement"),dt=(0,n.K2)((function(t,e,a,s,i){const n=(0,r.PB)(),o=e.anchored;n.x=e.startx,n.y=e.starty,n.class="activation"+i%3,n.width=e.stopx-e.startx,n.height=a-e.starty,G(o,n)}),"drawActivation"),ht=(0,n.K2)((async function(t,e,a,s){const{boxMargin:i,boxTextMargin:o,labelBoxHeight:c,labelBoxWidth:l,messageFontFamily:d,messageFontSize:h,messageFontWeight:p}=s,g=t.append("g"),u=(0,n.K2)((function(t,e,a,r){return g.append("line").attr("x1",t).attr("y1",e).attr("x2",a).attr("y2",r).attr("class","loopLine")}),"drawLoopLine");u(e.startx,e.starty,e.stopx,e.starty),u(e.stopx,e.starty,e.stopx,e.stopy),u(e.startx,e.stopy,e.stopx,e.stopy),u(e.startx,e.starty,e.startx,e.stopy),void 0!==e.sections&&e.sections.forEach((function(t){u(e.startx,t.y,e.stopx,t.y).style("stroke-dasharray","3, 3")}));let x=(0,r.HT)();x.text=a,x.x=e.startx,x.y=e.starty,x.fontFamily=d,x.fontSize=h,x.fontWeight=p,x.anchor="middle",x.valign="middle",x.tspan=!1,x.width=l||50,x.height=c||20,x.textMargin=o,x.class="labelText",at(g,x),x=ft(),x.text=e.title,x.x=e.startx+l/2+(e.stopx-e.startx)/2,x.y=e.starty+i+o,x.anchor="middle",x.valign="middle",x.textMargin=o,x.class="loopText",x.fontFamily=d,x.fontSize=h,x.fontWeight=p,x.wrap=!0;let y=(0,n.Wi)(x.text)?await tt(g,x,e):et(g,x);if(void 0!==e.sectionTitles)for(const[t,a]of Object.entries(e.sectionTitles))if(a.message){x.text=a.message,x.x=e.startx+(e.stopx-e.startx)/2,x.y=e.sections[t].y+i+o,x.class="loopText",x.anchor="middle",x.valign="middle",x.tspan=!1,x.fontFamily=d,x.fontSize=h,x.fontWeight=p,x.wrap=e.wrap,(0,n.Wi)(x.text)?(e.starty=e.sections[t].y,await tt(g,x,e)):et(g,x);let r=Math.round(y.map((t=>(t._groups||t)[0][0].getBBox().height)).reduce(((t,e)=>t+e)));e.sections[t].height+=r-(i+o)}return e.height=Math.round(e.stopy-e.starty),g}),"drawLoop"),pt=(0,n.K2)((function(t,e){(0,r.lC)(t,e)}),"drawBackgroundRect"),gt=(0,n.K2)((function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")}),"insertDatabaseIcon"),ut=(0,n.K2)((function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")}),"insertComputerIcon"),xt=(0,n.K2)((function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")}),"insertClockIcon"),yt=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")}),"insertArrowHead"),mt=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"insertArrowFilledHead"),bt=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)}),"insertSequenceNumber"),Tt=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")}),"insertArrowCrossHead"),ft=(0,n.K2)((function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}}),"getTextObj"),Et=(0,n.K2)((function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}}),"getNoteRect"),wt=function(){function t(t,e,a,r,i,n,o){s(e.append("text").attr("x",a+i/2).attr("y",r+n/2+5).style("text-anchor","middle").text(t),o)}function e(t,e,a,r,o,c,l,d){const{actorFontSize:h,actorFontFamily:p,actorFontWeight:g}=d,[u,x]=(0,i.I5)(h),y=t.split(n.Y2.lineBreakRegex);for(let t=0;tt.height||0)))+(0===this.loops.length?0:this.loops.map((t=>t.height||0)).reduce(((t,e)=>t+e)))+(0===this.messages.length?0:this.messages.map((t=>t.height||0)).reduce(((t,e)=>t+e)))+(0===this.notes.length?0:this.notes.map((t=>t.height||0)).reduce(((t,e)=>t+e)))}),"getHeight"),clear:(0,n.K2)((function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]}),"clear"),addBox:(0,n.K2)((function(t){this.boxes.push(t)}),"addBox"),addActor:(0,n.K2)((function(t){this.actors.push(t)}),"addActor"),addLoop:(0,n.K2)((function(t){this.loops.push(t)}),"addLoop"),addMessage:(0,n.K2)((function(t){this.messages.push(t)}),"addMessage"),addNote:(0,n.K2)((function(t){this.notes.push(t)}),"addNote"),lastActor:(0,n.K2)((function(){return this.actors[this.actors.length-1]}),"lastActor"),lastLoop:(0,n.K2)((function(){return this.loops[this.loops.length-1]}),"lastLoop"),lastMessage:(0,n.K2)((function(){return this.messages[this.messages.length-1]}),"lastMessage"),lastNote:(0,n.K2)((function(){return this.notes[this.notes.length-1]}),"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:(0,n.K2)((function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,Rt((0,n.D7)())}),"init"),updateVal:(0,n.K2)((function(t,e,a,r){void 0===t[e]?t[e]=a:t[e]=r(a,t[e])}),"updateVal"),updateBounds:(0,n.K2)((function(t,e,a,r){const s=this;let i=0;function o(o){return(0,n.K2)((function(n){i++;const c=s.sequenceItems.length-i+1;s.updateVal(n,"starty",e-c*_t.boxMargin,Math.min),s.updateVal(n,"stopy",r+c*_t.boxMargin,Math.max),s.updateVal(Pt.data,"startx",t-c*_t.boxMargin,Math.min),s.updateVal(Pt.data,"stopx",a+c*_t.boxMargin,Math.max),"activation"!==o&&(s.updateVal(n,"startx",t-c*_t.boxMargin,Math.min),s.updateVal(n,"stopx",a+c*_t.boxMargin,Math.max),s.updateVal(Pt.data,"starty",e-c*_t.boxMargin,Math.min),s.updateVal(Pt.data,"stopy",r+c*_t.boxMargin,Math.max))}),"updateItemBounds")}(0,n.K2)(o,"updateFn"),this.sequenceItems.forEach(o()),this.activations.forEach(o("activation"))}),"updateBounds"),insert:(0,n.K2)((function(t,e,a,r){const s=n.Y2.getMin(t,a),i=n.Y2.getMax(t,a),o=n.Y2.getMin(e,r),c=n.Y2.getMax(e,r);this.updateVal(Pt.data,"startx",s,Math.min),this.updateVal(Pt.data,"starty",o,Math.min),this.updateVal(Pt.data,"stopx",i,Math.max),this.updateVal(Pt.data,"stopy",c,Math.max),this.updateBounds(s,o,i,c)}),"insert"),newActivation:(0,n.K2)((function(t,e,a){const r=a.get(t.from),s=Yt(t.from).length||0,i=r.x+r.width/2+(s-1)*_t.activationWidth/2;this.activations.push({startx:i,starty:this.verticalPos+2,stopx:i+_t.activationWidth,stopy:void 0,actor:t.from,anchored:Lt.anchorElement(e)})}),"newActivation"),endActivation:(0,n.K2)((function(t){const e=this.activations.map((function(t){return t.actor})).lastIndexOf(t.from);return this.activations.splice(e,1)[0]}),"endActivation"),createLoop:(0,n.K2)((function(t={message:void 0,wrap:!1,width:void 0},e){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:t.message,wrap:t.wrap,width:t.width,height:0,fill:e}}),"createLoop"),newLoop:(0,n.K2)((function(t={message:void 0,wrap:!1,width:void 0},e){this.sequenceItems.push(this.createLoop(t,e))}),"newLoop"),endLoop:(0,n.K2)((function(){return this.sequenceItems.pop()}),"endLoop"),isLoopOverlap:(0,n.K2)((function(){return!!this.sequenceItems.length&&this.sequenceItems[this.sequenceItems.length-1].overlap}),"isLoopOverlap"),addSectionToLoop:(0,n.K2)((function(t){const e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:Pt.getVerticalPos(),height:0}),e.sectionTitles.push(t),this.sequenceItems.push(e)}),"addSectionToLoop"),saveVerticalPos:(0,n.K2)((function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)}),"saveVerticalPos"),resetVerticalPos:(0,n.K2)((function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)}),"resetVerticalPos"),bumpVerticalPos:(0,n.K2)((function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=n.Y2.getMax(this.data.stopy,this.verticalPos)}),"bumpVerticalPos"),getVerticalPos:(0,n.K2)((function(){return this.verticalPos}),"getVerticalPos"),getBounds:(0,n.K2)((function(){return{bounds:this.data,models:this.models}}),"getBounds")},kt=(0,n.K2)((async function(t,e){Pt.bumpVerticalPos(_t.boxMargin),e.height=_t.boxMargin,e.starty=Pt.getVerticalPos();const a=(0,r.PB)();a.x=e.startx,a.y=e.starty,a.width=e.width||_t.width,a.class="note";const s=t.append("g"),i=Lt.drawRect(s,a),o=(0,r.HT)();o.x=e.startx,o.y=e.starty,o.width=a.width,o.dy="1em",o.text=e.message,o.class="noteText",o.fontFamily=_t.noteFontFamily,o.fontSize=_t.noteFontSize,o.fontWeight=_t.noteFontWeight,o.anchor=_t.noteAlign,o.textMargin=_t.noteMargin,o.valign="center";const c=(0,n.Wi)(o.text)?await tt(s,o):et(s,o),l=Math.round(c.map((t=>(t._groups||t)[0][0].getBBox().height)).reduce(((t,e)=>t+e)));i.attr("height",l+2*_t.noteMargin),e.height+=l+2*_t.noteMargin,Pt.bumpVerticalPos(l+2*_t.noteMargin),e.stopy=e.starty+l+2*_t.noteMargin,e.stopx=e.startx+a.width,Pt.insert(e.startx,e.starty,e.stopx,e.stopy),Pt.models.addNote(e)}),"drawNote"),At=(0,n.K2)((t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight})),"messageFont"),vt=(0,n.K2)((t=>({fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight})),"noteFont"),Nt=(0,n.K2)((t=>({fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight})),"actorFont");async function Mt(t,e){Pt.bumpVerticalPos(10);const{startx:a,stopx:r,message:s}=e,o=n.Y2.splitBreaks(s).length,c=(0,n.Wi)(s),l=c?await(0,n.Dl)(s,(0,n.D7)()):i._K.calculateTextDimensions(s,At(_t));if(!c){const t=l.height/o;e.height+=t,Pt.bumpVerticalPos(t)}let d,h=l.height-10;const p=l.width;if(a===r){d=Pt.getVerticalPos()+h,_t.rightAngles||(h+=_t.boxMargin,d=Pt.getVerticalPos()+h),h+=30;const t=n.Y2.getMax(p/2,_t.width/2);Pt.insert(a-t,Pt.getVerticalPos()-10+h,r+t,Pt.getVerticalPos()+30+h)}else h+=_t.boxMargin,d=Pt.getVerticalPos()+h,Pt.insert(a,d-10,r,d);return Pt.bumpVerticalPos(h),e.height+=h,e.stopy=e.starty+e.height,Pt.insert(e.fromBounds,e.starty,e.toBounds,e.stopy),d}(0,n.K2)(Mt,"boundMessage");var Dt=(0,n.K2)((async function(t,e,a,s){const{startx:o,stopx:c,starty:l,message:d,type:h,sequenceIndex:p,sequenceVisible:g}=e,u=i._K.calculateTextDimensions(d,At(_t)),x=(0,r.HT)();x.x=o,x.y=l+10,x.width=c-o,x.class="messageText",x.dy="1em",x.text=d,x.fontFamily=_t.messageFontFamily,x.fontSize=_t.messageFontSize,x.fontWeight=_t.messageFontWeight,x.anchor=_t.messageAlign,x.valign="center",x.textMargin=_t.wrapPadding,x.tspan=!1,(0,n.Wi)(x.text)?await tt(t,x,{startx:o,stopx:c,starty:a}):et(t,x);const y=u.width;let m;o===c?m=_t.rightAngles?t.append("path").attr("d",`M ${o},${a} H ${o+n.Y2.getMax(_t.width/2,y/2)} V ${a+25} H ${o}`):t.append("path").attr("d","M "+o+","+a+" C "+(o+60)+","+(a-10)+" "+(o+60)+","+(a+30)+" "+o+","+(a+20)):(m=t.append("line"),m.attr("x1",o),m.attr("y1",a),m.attr("x2",c),m.attr("y2",a)),h===s.db.LINETYPE.DOTTED||h===s.db.LINETYPE.DOTTED_CROSS||h===s.db.LINETYPE.DOTTED_POINT||h===s.db.LINETYPE.DOTTED_OPEN||h===s.db.LINETYPE.BIDIRECTIONAL_DOTTED?(m.style("stroke-dasharray","3, 3"),m.attr("class","messageLine1")):m.attr("class","messageLine0");let b="";_t.arrowMarkerAbsolute&&(b=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,b=b.replace(/\(/g,"\\("),b=b.replace(/\)/g,"\\)")),m.attr("stroke-width",2),m.attr("stroke","none"),m.style("fill","none"),h!==s.db.LINETYPE.SOLID&&h!==s.db.LINETYPE.DOTTED||m.attr("marker-end","url("+b+"#arrowhead)"),h!==s.db.LINETYPE.BIDIRECTIONAL_SOLID&&h!==s.db.LINETYPE.BIDIRECTIONAL_DOTTED||(m.attr("marker-start","url("+b+"#arrowhead)"),m.attr("marker-end","url("+b+"#arrowhead)")),h!==s.db.LINETYPE.SOLID_POINT&&h!==s.db.LINETYPE.DOTTED_POINT||m.attr("marker-end","url("+b+"#filled-head)"),h!==s.db.LINETYPE.SOLID_CROSS&&h!==s.db.LINETYPE.DOTTED_CROSS||m.attr("marker-end","url("+b+"#crosshead)"),(g||_t.showSequenceNumbers)&&(m.attr("marker-start","url("+b+"#sequencenumber)"),t.append("text").attr("x",o).attr("y",a+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(p))}),"drawMessage"),Ot=(0,n.K2)((function(t,e,a,r,s,i,o){let c,l=0,d=0,h=0;for(const t of r){const r=e.get(t),i=r.box;c&&c!=i&&(o||Pt.models.addBox(c),d+=_t.boxMargin+c.margin),i&&i!=c&&(o||(i.x=l+d,i.y=s),d+=i.margin),r.width=r.width||_t.width,r.height=n.Y2.getMax(r.height||_t.height,_t.height),r.margin=r.margin||_t.actorMargin,h=n.Y2.getMax(h,r.height),a.get(r.name)&&(d+=r.width/2),r.x=l+d,r.starty=Pt.getVerticalPos(),Pt.insert(r.x,s,r.x+r.width,r.height),l+=r.width+d,r.box&&(r.box.width=l+i.margin-r.box.x),d=r.margin,c=r.box,Pt.models.addActor(r)}c&&!o&&Pt.models.addBox(c),Pt.bumpVerticalPos(h)}),"addActorRenderingData"),St=(0,n.K2)((async function(t,e,a,r){if(r){let r=0;Pt.bumpVerticalPos(2*_t.boxMargin);for(const s of a){const a=e.get(s);a.stopy||(a.stopy=Pt.getVerticalPos());const i=await Lt.drawActor(t,a,_t,!0);r=n.Y2.getMax(r,i)}Pt.bumpVerticalPos(r+_t.boxMargin)}else for(const r of a){const a=e.get(r);await Lt.drawActor(t,a,_t,!1)}}),"drawActors"),Kt=(0,n.K2)((function(t,e,a,r){let s=0,i=0;for(const n of a){const a=e.get(n),o=Wt(a),c=Lt.drawPopup(t,a,o,_t,_t.forceMenus,r);c.height>s&&(s=c.height),c.width+a.x>i&&(i=c.width+a.x)}return{maxHeight:s,maxWidth:i}}),"drawActorsPopup"),Rt=(0,n.K2)((function(t){(0,n.hH)(_t,t),t.fontFamily&&(_t.actorFontFamily=_t.noteFontFamily=_t.messageFontFamily=t.fontFamily),t.fontSize&&(_t.actorFontSize=_t.noteFontSize=_t.messageFontSize=t.fontSize),t.fontWeight&&(_t.actorFontWeight=_t.noteFontWeight=_t.messageFontWeight=t.fontWeight)}),"setConf"),Yt=(0,n.K2)((function(t){return Pt.activations.filter((function(e){return e.actor===t}))}),"actorActivations"),Ct=(0,n.K2)((function(t,e){const a=e.get(t),r=Yt(t);return[r.reduce((function(t,e){return n.Y2.getMin(t,e.startx)}),a.x+a.width/2-1),r.reduce((function(t,e){return n.Y2.getMax(t,e.stopx)}),a.x+a.width/2+1)]}),"activationBounds");function Bt(t,e,a,r,s){Pt.bumpVerticalPos(a);let o=r;if(e.id&&e.message&&t[e.id]){const a=t[e.id].width,s=At(_t);e.message=i._K.wrapLabel(`[${e.message}]`,a-2*_t.wrapPadding,s),e.width=a,e.wrap=!0;const c=i._K.calculateTextDimensions(e.message,s),l=n.Y2.getMax(c.height,_t.labelBoxHeight);o=r+l,n.Rm.debug(`${l} - ${e.message}`)}s(e),Pt.bumpVerticalPos(o)}function $t(t,e,a,r,s,i,o){function c(a,r){a.x{t.add(e.from),t.add(e.to)})),y=y.filter((e=>t.has(e)))}Ot(h,p,g,y,0,m,!1);const w=await jt(m,p,E,r);function I(t,e){const a=Pt.endActivation(t);a.starty+18>e&&(a.starty=e-6,e+=12),Lt.drawActivation(h,a,e,_t,Yt(t.from).length),Pt.insert(a.startx,e-10,a.stopx,e)}Lt.insertArrowHead(h),Lt.insertArrowCrossHead(h),Lt.insertArrowFilledHead(h),Lt.insertSequenceNumber(h),(0,n.K2)(I,"activeEnd");let L=1,_=1;const P=[],k=[];let A=0;for(const t of m){let e,a,s;switch(t.type){case r.db.LINETYPE.NOTE:Pt.resetVerticalPos(),a=t.noteModel,await kt(h,a);break;case r.db.LINETYPE.ACTIVE_START:Pt.newActivation(t,h,p);break;case r.db.LINETYPE.ACTIVE_END:I(t,Pt.getVerticalPos());break;case r.db.LINETYPE.LOOP_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.LOOP_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"loop",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.RECT_START:Bt(w,t,_t.boxMargin,_t.boxMargin,(t=>Pt.newLoop(void 0,t.message)));break;case r.db.LINETYPE.RECT_END:e=Pt.endLoop(),k.push(e),Pt.models.addLoop(e),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos());break;case r.db.LINETYPE.OPT_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.OPT_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"opt",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.ALT_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.ALT_ELSE:Bt(w,t,_t.boxMargin+_t.boxTextMargin,_t.boxMargin,(t=>Pt.addSectionToLoop(t)));break;case r.db.LINETYPE.ALT_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"alt",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t))),Pt.saveVerticalPos();break;case r.db.LINETYPE.PAR_AND:Bt(w,t,_t.boxMargin+_t.boxTextMargin,_t.boxMargin,(t=>Pt.addSectionToLoop(t)));break;case r.db.LINETYPE.PAR_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"par",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.AUTONUMBER:L=t.message.start||L,_=t.message.step||_,t.message.visible?r.db.enableSequenceNumbers():r.db.disableSequenceNumbers();break;case r.db.LINETYPE.CRITICAL_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.CRITICAL_OPTION:Bt(w,t,_t.boxMargin+_t.boxTextMargin,_t.boxMargin,(t=>Pt.addSectionToLoop(t)));break;case r.db.LINETYPE.CRITICAL_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"critical",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.BREAK_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.BREAK_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"break",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;default:try{s=t.msgModel,s.starty=Pt.getVerticalPos(),s.sequenceIndex=L,s.sequenceVisible=r.db.showSequenceNumbers();const e=await Mt(0,s);$t(t,s,e,A,p,g,u),P.push({messageModel:s,lineStartY:e}),Pt.models.addMessage(s)}catch(t){n.Rm.error("error while drawing message",t)}}[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN,r.db.LINETYPE.SOLID,r.db.LINETYPE.DOTTED,r.db.LINETYPE.SOLID_CROSS,r.db.LINETYPE.DOTTED_CROSS,r.db.LINETYPE.SOLID_POINT,r.db.LINETYPE.DOTTED_POINT,r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type)&&(L+=_),A++}n.Rm.debug("createdActors",g),n.Rm.debug("destroyedActors",u),await St(h,p,y,!1);for(const t of P)await Dt(h,t.messageModel,t.lineStartY,r);_t.mirrorActors&&await St(h,p,y,!0),k.forEach((t=>Lt.drawBackgroundRect(h,t))),st(h,p,y,_t);for(const t of Pt.models.boxes)t.height=Pt.getVerticalPos()-t.y,Pt.insert(t.x,t.y,t.x+t.width,t.height),t.startx=t.x,t.starty=t.y,t.stopx=t.startx+t.width,t.stopy=t.starty+t.height,t.stroke="rgb(0,0,0, 0.5)",Lt.drawBox(h,t,_t);T&&Pt.bumpVerticalPos(_t.boxMargin);const v=Kt(h,p,y,d),{bounds:N}=Pt.getBounds();void 0===N.startx&&(N.startx=0),void 0===N.starty&&(N.starty=0),void 0===N.stopx&&(N.stopx=0),void 0===N.stopy&&(N.stopy=0);let M=N.stopy-N.starty;M{const a=At(_t);let r=e.actorKeys.reduce(((e,a)=>e+(t.get(a).width+(t.get(a).margin||0))),0);r-=2*_t.boxTextMargin,e.wrap&&(e.name=i._K.wrapLabel(e.name,r-2*_t.wrapPadding,a));const o=i._K.calculateTextDimensions(e.name,a);s=n.Y2.getMax(o.height,s);const c=n.Y2.getMax(r,o.width+2*_t.wrapPadding);if(e.margin=_t.boxTextMargin,rt.textMaxHeight=s)),n.Y2.getMax(r,_t.height)}(0,n.K2)(qt,"calculateActorMargins");var zt=(0,n.K2)((async function(t,e,a){const r=e.get(t.from),s=e.get(t.to),o=r.x,c=s.x,l=t.wrap&&t.message;let d=(0,n.Wi)(t.message)?await(0,n.Dl)(t.message,(0,n.D7)()):i._K.calculateTextDimensions(l?i._K.wrapLabel(t.message,_t.width,vt(_t)):t.message,vt(_t));const h={width:l?_t.width:n.Y2.getMax(_t.width,d.width+2*_t.noteMargin),height:0,startx:r.x,stopx:0,starty:0,stopy:0,message:t.message};return t.placement===a.db.PLACEMENT.RIGHTOF?(h.width=l?n.Y2.getMax(_t.width,d.width):n.Y2.getMax(r.width/2+s.width/2,d.width+2*_t.noteMargin),h.startx=o+(r.width+_t.actorMargin)/2):t.placement===a.db.PLACEMENT.LEFTOF?(h.width=l?n.Y2.getMax(_t.width,d.width+2*_t.noteMargin):n.Y2.getMax(r.width/2+s.width/2,d.width+2*_t.noteMargin),h.startx=o-h.width+(r.width-_t.actorMargin)/2):t.to===t.from?(d=i._K.calculateTextDimensions(l?i._K.wrapLabel(t.message,n.Y2.getMax(_t.width,r.width),vt(_t)):t.message,vt(_t)),h.width=l?n.Y2.getMax(_t.width,r.width):n.Y2.getMax(r.width,_t.width,d.width+2*_t.noteMargin),h.startx=o+(r.width-h.width)/2):(h.width=Math.abs(o+r.width/2-(c+s.width/2))+_t.actorMargin,h.startx=o2,g=(0,n.K2)((t=>l?-t:t),"adjustValue");t.from===t.to?h=d:(t.activate&&!p&&(h+=g(_t.activationWidth/2-1)),[a.db.LINETYPE.SOLID_OPEN,a.db.LINETYPE.DOTTED_OPEN].includes(t.type)||(h+=g(3)),[a.db.LINETYPE.BIDIRECTIONAL_SOLID,a.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type)&&(d-=g(3)));const u=[r,s,o,c],x=Math.abs(d-h);t.wrap&&t.message&&(t.message=i._K.wrapLabel(t.message,n.Y2.getMax(x+2*_t.wrapPadding,_t.width),At(_t)));const y=i._K.calculateTextDimensions(t.message,At(_t));return{width:n.Y2.getMax(t.wrap?0:y.width+2*_t.wrapPadding,x+2*_t.wrapPadding,_t.width),height:0,startx:d,stopx:h,starty:0,stopy:0,message:t.message,type:t.type,wrap:t.wrap,fromBounds:Math.min.apply(null,u),toBounds:Math.max.apply(null,u)}}),"buildMessageModel"),jt=(0,n.K2)((async function(t,e,a,r){const s={},o=[];let c,l,d;for(const a of t){switch(a.id=i._K.random({length:10}),a.type){case r.db.LINETYPE.LOOP_START:case r.db.LINETYPE.ALT_START:case r.db.LINETYPE.OPT_START:case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:case r.db.LINETYPE.CRITICAL_START:case r.db.LINETYPE.BREAK_START:o.push({id:a.id,msg:a.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case r.db.LINETYPE.ALT_ELSE:case r.db.LINETYPE.PAR_AND:case r.db.LINETYPE.CRITICAL_OPTION:a.message&&(c=o.pop(),s[c.id]=c,s[a.id]=c,o.push(c));break;case r.db.LINETYPE.LOOP_END:case r.db.LINETYPE.ALT_END:case r.db.LINETYPE.OPT_END:case r.db.LINETYPE.PAR_END:case r.db.LINETYPE.CRITICAL_END:case r.db.LINETYPE.BREAK_END:c=o.pop(),s[c.id]=c;break;case r.db.LINETYPE.ACTIVE_START:{const t=e.get(a.from?a.from:a.to.actor),r=Yt(a.from?a.from:a.to.actor).length,s=t.x+t.width/2+(r-1)*_t.activationWidth/2,i={startx:s,stopx:s+_t.activationWidth,actor:a.from,enabled:!0};Pt.activations.push(i)}break;case r.db.LINETYPE.ACTIVE_END:{const t=Pt.activations.map((t=>t.actor)).lastIndexOf(a.from);Pt.activations.splice(t,1).splice(0,1)}}void 0!==a.placement?(l=await zt(a,e,r),a.noteModel=l,o.forEach((t=>{c=t,c.from=n.Y2.getMin(c.from,l.startx),c.to=n.Y2.getMax(c.to,l.startx+l.width),c.width=n.Y2.getMax(c.width,Math.abs(c.from-c.to))-_t.labelBoxWidth}))):(d=Ht(a,e,r),a.msgModel=d,d.startx&&d.stopx&&o.length>0&&o.forEach((t=>{if(c=t,d.startx===d.stopx){const t=e.get(a.from),r=e.get(a.to);c.from=n.Y2.getMin(t.x-d.width/2,t.x-t.width/2,c.from),c.to=n.Y2.getMax(r.x+d.width/2,r.x+t.width/2,c.to),c.width=n.Y2.getMax(c.width,Math.abs(c.to-c.from))-_t.labelBoxWidth}else c.from=n.Y2.getMin(d.startx,c.from),c.to=n.Y2.getMax(d.stopx,c.to),c.width=n.Y2.getMax(c.width,d.width)-_t.labelBoxWidth})))}return Pt.activations=[],n.Rm.debug("Loop type widths:",s),s}),"calculateLoopBounds"),Ut={parser:d,db:H,renderer:{bounds:Pt,drawActors:St,drawActorsPopup:Kt,setConf:Rt,draw:Vt},styles:j,init:(0,n.K2)((({wrap:t})=>{H.setWrap(t)}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/387-3546ecdc.chunk.min.js b/themes/hugo-geekdoc/static/js/387-3546ecdc.chunk.min.js new file mode 100644 index 000000000..75d1a6008 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/387-3546ecdc.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[387],{2387:(e,c,k)=>{k.d(c,{createGitGraphServices:()=>s.b});var s=k(2785);k(9369)}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/4-934f5a40.chunk.min.js b/themes/hugo-geekdoc/static/js/4-934f5a40.chunk.min.js new file mode 100644 index 000000000..dcf05e5c7 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/4-934f5a40.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[4],{3004:(t,e,n)=>{n.d(e,{diagram:()=>J});var i=n(32),s=n(4852),r=n(5097),a=n(8041),o=n(5263),c=function(){var t=(0,i.K2)((function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n}),"o"),e=[6,8,10,11,12,14,16,17,20,21],n=[1,9],s=[1,10],r=[1,11],a=[1,12],o=[1,13],c=[1,16],l=[1,17],h={trace:(0,i.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:(0,i.K2)((function(t,e,n,i,s,r,a){var o=r.length-1;switch(s){case 1:return r[o-1];case 2:case 6:case 7:this.$=[];break;case 3:r[o-1].push(r[o]),this.$=r[o-1];break;case 4:case 5:this.$=r[o];break;case 8:i.getCommonDb().setDiagramTitle(r[o].substr(6)),this.$=r[o].substr(6);break;case 9:this.$=r[o].trim(),i.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=r[o].trim(),i.getCommonDb().setAccDescription(this.$);break;case 12:i.addSection(r[o].substr(8)),this.$=r[o].substr(8);break;case 15:i.addTask(r[o],0,""),this.$=r[o];break;case 16:i.addEvent(r[o].substr(2)),this.$=r[o]}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:n,12:s,14:r,16:a,17:o,18:14,19:15,20:c,21:l},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:18,11:n,12:s,14:r,16:a,17:o,18:14,19:15,20:c,21:l},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,19]},{15:[1,20]},t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),t(e,[2,4]),t(e,[2,9]),t(e,[2,10])],defaultActions:{},parseError:(0,i.K2)((function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)}),"parseError"),parse:(0,i.K2)((function(t){var e=this,n=[0],s=[],r=[null],a=[],o=this.table,c="",l=0,h=0,d=0,u=a.slice.call(arguments,1),p=Object.create(this.lexer),y={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(y.yy[g]=this.yy[g]);p.setInput(t,y.yy),y.yy.lexer=p,y.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;a.push(f);var m=p.options&&p.options.ranges;function x(){var t;return"number"!=typeof(t=s.pop()||p.lex()||1)&&(t instanceof Array&&(t=(s=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)((function(t){n.length=n.length-2*t,r.length=r.length-t,a.length=a.length-t}),"popStack"),(0,i.K2)(x,"lex");for(var b,k,_,w,v,K,S,$,E,T={};;){if(_=n[n.length-1],this.defaultActions[_]?w=this.defaultActions[_]:(null==b&&(b=x()),w=o[_]&&o[_][b]),void 0===w||!w.length||!w[0]){var I;for(K in E=[],o[_])this.terminals_[K]&&K>2&&E.push("'"+this.terminals_[K]+"'");I=p.showPosition?"Parse error on line "+(l+1)+":\n"+p.showPosition()+"\nExpecting "+E.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(I,{text:p.match,token:this.terminals_[b]||b,line:p.yylineno,loc:f,expected:E})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+b);switch(w[0]){case 1:n.push(b),r.push(p.yytext),a.push(p.yylloc),n.push(w[1]),b=null,k?(b=k,k=null):(h=p.yyleng,c=p.yytext,l=p.yylineno,f=p.yylloc,d>0&&d--);break;case 2:if(S=this.productions_[w[1]][1],T.$=r[r.length-S],T._$={first_line:a[a.length-(S||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(S||1)].first_column,last_column:a[a.length-1].last_column},m&&(T._$.range=[a[a.length-(S||1)].range[0],a[a.length-1].range[1]]),void 0!==(v=this.performAction.apply(T,[c,h,l,y.yy,w[1],r,a].concat(u))))return v;S&&(n=n.slice(0,-1*S*2),r=r.slice(0,-1*S),a=a.slice(0,-1*S)),n.push(this.productions_[w[1]][0]),r.push(T.$),a.push(T._$),$=o[n[n.length-2]][n[n.length-1]],n.push($);break;case 3:return!0}}return!0}),"parse")},d=function(){return{EOF:1,parseError:(0,i.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,i.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,i.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,i.K2)((function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,i.K2)((function(){return this._more=!0,this}),"more"),reject:(0,i.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,i.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,i.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,i.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,i.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,i.K2)((function(t,e){var n,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1}),"test_match"),next:(0,i.K2)((function(){if(this.done)return this.EOF;var t,e,n,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;re[0].length)){if(e=n,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,s[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,i.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,i.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,i.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,i.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,i.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,i.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,i.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)((function(t,e,n,i){switch(n){case 0:case 1:case 3:case 4:break;case 2:return 10;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}}),"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s[^:\n]+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18],inclusive:!0}}}}();function u(){this.yy={}}return h.lexer=d,(0,i.K2)(u,"Parser"),u.prototype=h,h.Parser=u,new u}();c.parser=c;var l=c,h={};(0,i.VA)(h,{addEvent:()=>w,addSection:()=>x,addTask:()=>_,addTaskOrg:()=>v,clear:()=>m,default:()=>S,getCommonDb:()=>f,getSections:()=>b,getTasks:()=>k});var d="",u=0,p=[],y=[],g=[],f=(0,i.K2)((()=>i.Wt),"getCommonDb"),m=(0,i.K2)((function(){p.length=0,y.length=0,d="",g.length=0,(0,i.IU)()}),"clear"),x=(0,i.K2)((function(t){d=t,p.push(t)}),"addSection"),b=(0,i.K2)((function(){return p}),"getSections"),k=(0,i.K2)((function(){let t=K(),e=0;for(;!t&&e<100;)t=K(),e++;return y.push(...g),y}),"getTasks"),_=(0,i.K2)((function(t,e,n){const i={id:u++,section:d,type:d,task:t,score:e||0,events:n?[n]:[]};g.push(i)}),"addTask"),w=(0,i.K2)((function(t){g.find((t=>t.id===u-1)).events.push(t)}),"addEvent"),v=(0,i.K2)((function(t){const e={section:d,type:d,description:t,task:t,classes:[]};y.push(e)}),"addTaskOrg"),K=(0,i.K2)((function(){const t=(0,i.K2)((function(t){return g[t].processed}),"compileTask");let e=!0;for(const[n,i]of g.entries())t(n),e=e&&i.processed;return e}),"compileTasks"),S={clear:m,getCommonDb:f,addSection:x,getSections:b,getTasks:k,addTask:_,addTaskOrg:v,addEvent:w},$=(0,i.K2)((function(t,e){const n=t.append("rect");return n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),n.attr("rx",e.rx),n.attr("ry",e.ry),void 0!==e.class&&n.attr("class",e.class),n}),"drawRect"),E=(0,i.K2)((function(t,e){const n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),r=t.append("g");function a(t){const n=(0,s.JLW)().startAngle(Math.PI/2).endAngle(Math.PI/2*3).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",n).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}function o(t){const n=(0,s.JLW)().startAngle(3*Math.PI/2).endAngle(Math.PI/2*5).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",n).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}function c(t){t.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return r.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),r.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),(0,i.K2)(a,"smile"),(0,i.K2)(o,"sad"),(0,i.K2)(c,"ambivalent"),e.score>3?a(r):e.score<3?o(r):c(r),n}),"drawFace"),T=(0,i.K2)((function(t,e){const n=t.append("circle");return n.attr("cx",e.cx),n.attr("cy",e.cy),n.attr("class","actor-"+e.pos),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("r",e.r),void 0!==n.class&&n.attr("class",n.class),void 0!==e.title&&n.append("title").text(e.title),n}),"drawCircle"),I=(0,i.K2)((function(t,e){const n=e.text.replace(//gi," "),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.attr("class","legend"),i.style("text-anchor",e.anchor),void 0!==e.class&&i.attr("class",e.class);const s=i.append("tspan");return s.attr("x",e.x+2*e.textMargin),s.text(n),i}),"drawText"),R=(0,i.K2)((function(t,e){function n(t,e,n,i,s){return t+","+e+" "+(t+n)+","+e+" "+(t+n)+","+(e+i-s)+" "+(t+n-1.2*s)+","+(e+i)+" "+t+","+(e+i)}(0,i.K2)(n,"genPoints");const s=t.append("polygon");s.attr("points",n(e.x,e.y,50,20,7)),s.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,I(t,e)}),"drawLabel"),A=(0,i.K2)((function(t,e,n){const i=t.append("g"),s=P();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=n.width,s.height=n.height,s.class="journey-section section-type-"+e.num,s.rx=3,s.ry=3,$(i,s),H(n)(e.text,i,s.x,s.y,s.width,s.height,{class:"journey-section section-type-"+e.num},n,e.colour)}),"drawSection"),L=-1,M=(0,i.K2)((function(t,e,n){const i=e.x+n.width/2,s=t.append("g");L++,s.append("line").attr("id","task"+L).attr("x1",i).attr("y1",e.y).attr("x2",i).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),E(s,{cx:i,cy:300+30*(5-e.score),score:e.score});const r=P();r.x=e.x,r.y=e.y,r.fill=e.fill,r.width=n.width,r.height=n.height,r.class="task task-type-"+e.num,r.rx=3,r.ry=3,$(s,r),H(n)(e.task,s,r.x,r.y,r.width,r.height,{class:"task"},n,e.colour)}),"drawTask"),C=(0,i.K2)((function(t,e){$(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()}),"drawBackgroundRect"),N=(0,i.K2)((function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}}),"getTextObj"),P=(0,i.K2)((function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}}),"getNoteRect"),H=function(){function t(t,e,n,i,r,a,o,c){s(e.append("text").attr("x",n+r/2).attr("y",i+a/2+5).style("font-color",c).style("text-anchor","middle").text(t),o)}function e(t,e,n,i,r,a,o,c,l){const{taskFontSize:h,taskFontFamily:d}=c,u=t.split(//gi);for(let t=0;t)/).reverse(),r=[],a=n.attr("y"),o=parseFloat(n.attr("dy")),c=n.text(null).append("tspan").attr("x",0).attr("y",a).attr("dy",o+"em");for(let s=0;se||"
"===t)&&(r.pop(),c.text(r.join(" ").trim()),r="
"===t?[""]:[t],c=n.append("tspan").attr("x",0).attr("y",a).attr("dy","1.1em").text(t))}))}(0,i.K2)(j,"wrap");var D=(0,i.K2)((function(t,e,n,i){const s=n%12-1,r=t.append("g");e.section=s,r.attr("class",(e.class?e.class+" ":"")+"timeline-node section-"+s);const a=r.append("g"),o=r.append("g"),c=o.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(j,e.width).node().getBBox(),l=i.fontSize?.replace?i.fontSize.replace("px",""):i.fontSize;return e.height=c.height+1.1*l*.5+e.padding,e.height=Math.max(e.height,e.maxHeight),e.width=e.width+2*e.padding,o.attr("transform","translate("+e.width/2+", "+e.padding/2+")"),W(a,e,s,i),e}),"drawNode"),z=(0,i.K2)((function(t,e,n){const i=t.append("g"),s=i.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(j,e.width).node().getBBox(),r=n.fontSize?.replace?n.fontSize.replace("px",""):n.fontSize;return i.remove(),s.height+1.1*r*.5+e.padding}),"getVirtualNodeHeight"),W=(0,i.K2)((function(t,e,n){t.append("path").attr("id","node-"+e.id).attr("class","node-bkg node-"+e.type).attr("d",`M0 ${e.height-5} v${10-e.height} q0,-5 5,-5 h${e.width-10} q5,0 5,5 v${e.height-5} H0 Z`),t.append("line").attr("class","node-line-"+n).attr("x1",0).attr("y1",e.height).attr("x2",e.width).attr("y2",e.height)}),"defaultBkg"),B={drawRect:$,drawCircle:T,drawSection:A,drawText:I,drawLabel:R,drawTask:M,drawBackgroundRect:C,getTextObj:N,getNoteRect:P,initGraphics:O,drawNode:D,getVirtualNodeHeight:z},F=(0,i.K2)((function(t,e,n,r){const a=(0,i.D7)(),o=a.leftMargin??50;i.Rm.debug("timeline",r.db);const c=a.securityLevel;let l;"sandbox"===c&&(l=(0,s.Ltv)("#i"+e));const h=("sandbox"===c?(0,s.Ltv)(l.nodes()[0].contentDocument.body):(0,s.Ltv)("body")).select("#"+e);h.append("g");const d=r.db.getTasks(),u=r.db.getCommonDb().getDiagramTitle();i.Rm.debug("task",d),B.initGraphics(h);const p=r.db.getSections();i.Rm.debug("sections",p);let y=0,g=0,f=0,m=0,x=50+o,b=50;m=50;let k=0,_=!0;p.forEach((function(t){const e={number:k,descr:t,section:k,width:150,padding:20,maxHeight:y},n=B.getVirtualNodeHeight(h,e,a);i.Rm.debug("sectionHeight before draw",n),y=Math.max(y,n+20)}));let w=0,v=0;i.Rm.debug("tasks.length",d.length);for(const[t,e]of d.entries()){const n={number:t,descr:e,section:e.section,width:150,padding:20,maxHeight:g},s=B.getVirtualNodeHeight(h,n,a);i.Rm.debug("taskHeight before draw",s),g=Math.max(g,s+20),w=Math.max(w,e.events.length);let r=0;for(const t of e.events){const n={descr:t,section:e.section,number:e.section,width:150,padding:20,maxHeight:50};r+=B.getVirtualNodeHeight(h,n,a)}v=Math.max(v,r)}i.Rm.debug("maxSectionHeight before draw",y),i.Rm.debug("maxTaskHeight before draw",g),p&&p.length>0?p.forEach((t=>{const e=d.filter((e=>e.section===t)),n={number:k,descr:t,section:k,width:200*Math.max(e.length,1)-50,padding:20,maxHeight:y};i.Rm.debug("sectionNode",n);const s=h.append("g"),r=B.drawNode(s,n,k,a);i.Rm.debug("sectionNode output",r),s.attr("transform",`translate(${x}, 50)`),b+=y+50,e.length>0&&V(h,e,k,x,b,g,a,w,v,y,!1),x+=200*Math.max(e.length,1),b=50,k++})):(_=!1,V(h,d,k,x,b,g,a,w,v,y,!0));const K=h.node().getBBox();i.Rm.debug("bounds",K),u&&h.append("text").text(u).attr("x",K.width/2-o).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),f=_?y+g+150:g+100,h.append("g").attr("class","lineWrapper").append("line").attr("x1",o).attr("y1",f).attr("x2",K.width+3*o).attr("y2",f).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),(0,i.ot)(void 0,h,a.timeline?.padding??50,a.timeline?.useMaxWidth??!1)}),"draw"),V=(0,i.K2)((function(t,e,n,s,r,a,o,c,l,h,d){for(const c of e){const e={descr:c.task,section:n,number:n,width:150,padding:20,maxHeight:a};i.Rm.debug("taskNode",e);const u=t.append("g").attr("class","taskWrapper"),p=B.drawNode(u,e,n,o).height;if(i.Rm.debug("taskHeight after draw",p),u.attr("transform",`translate(${s}, ${r})`),a=Math.max(a,p),c.events){const e=t.append("g").attr("class","lineWrapper");let i=a;r+=100,i+=G(t,c.events,n,s,r,o),r-=100,e.append("line").attr("x1",s+95).attr("y1",r+a).attr("x2",s+95).attr("y2",r+a+(d?a:h)+l+120).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}s+=200,d&&!o.timeline?.disableMulticolor&&n++}r-=10}),"drawTasks"),G=(0,i.K2)((function(t,e,n,s,r,a){let o=0;const c=r;r+=100;for(const c of e){const e={descr:c,section:n,number:n,width:150,padding:20,maxHeight:50};i.Rm.debug("eventNode",e);const l=t.append("g").attr("class","eventWrapper"),h=B.drawNode(l,e,n,a).height;o+=h,l.attr("transform",`translate(${s}, ${r})`),r=r+10+h}return r=c,o}),"drawEvents"),U={setConf:(0,i.K2)((()=>{}),"setConf"),draw:F},q=(0,i.K2)((t=>{let e="";for(let e=0;e`\n .edge {\n stroke-width: 3;\n }\n ${q(t)}\n .section-root rect, .section-root path, .section-root circle {\n fill: ${t.git0};\n }\n .section-root text {\n fill: ${t.gitBranchLabel0};\n }\n .icon-container {\n height:100%;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n .edge {\n fill: none;\n }\n .eventWrapper {\n filter: brightness(120%);\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/42-aadd500f.chunk.min.js b/themes/hugo-geekdoc/static/js/42-aadd500f.chunk.min.js deleted file mode 100644 index 8337e4932..000000000 --- a/themes/hugo-geekdoc/static/js/42-aadd500f.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[42],{4075:(e,t,n)=>{n.d(t,{M:()=>o});var i=n(9592),r=n(53),a=n(4722);function o(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:s(e),edges:d(e)};return i.A(e.graph())||(t.value=r.A(e.graph())),t}function s(e){return a.A(e.nodes(),(function(t){var n=e.node(t),r=e.parent(t),a={v:t};return i.A(n)||(a.value=n),i.A(r)||(a.parent=r),a}))}function d(e){return a.A(e.edges(),(function(t){var n=e.edge(t),r={v:t.v,w:t.w};return i.A(t.name)||(r.name=t.name),i.A(n)||(r.value=n),r}))}n(1471)},5042:(e,t,n)=>{n.d(t,{diagram:()=>z});var i=n(1953),r=n(2207),a=n(6578),o=n(8496),s=n(8252),d=n(7323),l=n(798),c=n(4852),g=n(697),h=n(567),f=n(4075),u={},p={},m={},w=(0,l.K2)((()=>{p={},m={},u={}}),"clear"),y=(0,l.K2)(((e,t)=>(l.Rm.trace("In isDescendant",t," ",e," = ",p[t].includes(e)),!!p[t].includes(e))),"isDescendant"),R=(0,l.K2)(((e,t)=>(l.Rm.info("Descendants of ",t," is ",p[t]),l.Rm.info("Edge is ",e),e.v!==t&&e.w!==t&&(p[t]?p[t].includes(e.v)||y(e.v,t)||y(e.w,t)||p[t].includes(e.w):(l.Rm.debug("Tilt, ",t,",not in descendants"),!1)))),"edgeInCluster"),b=(0,l.K2)(((e,t,n,i)=>{l.Rm.warn("Copying children of ",e,"root",i,"data",t.node(e),i);const r=t.children(e)||[];e!==i&&r.push(e),l.Rm.warn("Copying (nodes) clusterId",e,"nodes",r),r.forEach((r=>{if(t.children(r).length>0)b(r,t,n,i);else{const a=t.node(r);l.Rm.info("cp ",r," to ",i," with parent ",e),n.setNode(r,a),i!==t.parent(r)&&(l.Rm.warn("Setting parent",r,t.parent(r)),n.setParent(r,t.parent(r))),e!==i&&r!==e?(l.Rm.debug("Setting parent",r,e),n.setParent(r,e)):(l.Rm.info("In copy ",e,"root",i,"data",t.node(e),i),l.Rm.debug("Not Setting parent for node=",r,"cluster!==rootId",e!==i,"node!==clusterId",r!==e));const o=t.edges(r);l.Rm.debug("Copying Edges",o),o.forEach((r=>{l.Rm.info("Edge",r);const a=t.edge(r.v,r.w,r.name);l.Rm.info("Edge data",a,i);try{R(r,i)?(l.Rm.info("Copying as ",r.v,r.w,a,r.name),n.setEdge(r.v,r.w,a,r.name),l.Rm.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):l.Rm.info("Skipping copy of edge ",r.v,"--\x3e",r.w," rootId: ",i," clusterId:",e)}catch(e){l.Rm.error(e)}}))}l.Rm.debug("Removing node",r),t.removeNode(r)}))}),"copy"),v=(0,l.K2)(((e,t)=>{const n=t.children(e);let i=[...n];for(const r of n)m[r]=e,i=[...i,...v(r,t)];return i}),"extractDescendants"),x=(0,l.K2)(((e,t)=>{l.Rm.trace("Searching",e);const n=t.children(e);if(l.Rm.trace("Searching children of id ",e,n),n.length<1)return l.Rm.trace("This is a valid node",e),e;for(const i of n){const n=x(i,t);if(n)return l.Rm.trace("Found replacement for",e," => ",n),n}}),"findNonClusterChild"),N=(0,l.K2)((e=>u[e]&&u[e].externalConnections&&u[e]?u[e].id:e),"getAnchorId"),D=(0,l.K2)(((e,t)=>{if(!e||t>10)l.Rm.debug("Opting out, no graph ");else{l.Rm.debug("Opting in, graph "),e.nodes().forEach((function(t){e.children(t).length>0&&(l.Rm.warn("Cluster identified",t," Replacement id in edges: ",x(t,e)),p[t]=v(t,e),u[t]={id:x(t,e),clusterData:e.node(t)})})),e.nodes().forEach((function(t){const n=e.children(t),i=e.edges();n.length>0?(l.Rm.debug("Cluster identified",t,p),i.forEach((e=>{e.v!==t&&e.w!==t&&y(e.v,t)^y(e.w,t)&&(l.Rm.warn("Edge: ",e," leaves cluster ",t),l.Rm.warn("Descendants of XXX ",t,": ",p[t]),u[t].externalConnections=!0)}))):l.Rm.debug("Not a cluster ",t,p)}));for(let t of Object.keys(u)){const n=u[t].id,i=e.parent(n);i!==t&&u[i]&&!u[i].externalConnections&&(u[t].id=i)}e.edges().forEach((function(t){const n=e.edge(t);l.Rm.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t)),l.Rm.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(e.edge(t)));let i=t.v,r=t.w;if(l.Rm.warn("Fix XXX",u,"ids:",t.v,t.w,"Translating: ",u[t.v]," --- ",u[t.w]),u[t.v]&&u[t.w]&&u[t.v]===u[t.w]){l.Rm.warn("Fixing and trixing link to self - removing XXX",t.v,t.w,t.name),l.Rm.warn("Fixing and trixing - removing XXX",t.v,t.w,t.name),i=N(t.v),r=N(t.w),e.removeEdge(t.v,t.w,t.name);const a=t.w+"---"+t.v;e.setNode(a,{domId:a,id:a,labelStyle:"",labelText:n.label,padding:0,shape:"labelRect",style:""});const o=structuredClone(n),s=structuredClone(n);o.label="",o.arrowTypeEnd="none",s.label="",o.fromCluster=t.v,s.toCluster=t.v,e.setEdge(i,a,o,t.name+"-cyclic-special"),e.setEdge(a,r,s,t.name+"-cyclic-special")}else if(u[t.v]||u[t.w]){if(l.Rm.warn("Fixing and trixing - removing XXX",t.v,t.w,t.name),i=N(t.v),r=N(t.w),e.removeEdge(t.v,t.w,t.name),i!==t.v){const r=e.parent(i);u[r].externalConnections=!0,n.fromCluster=t.v}if(r!==t.w){const i=e.parent(r);u[i].externalConnections=!0,n.toCluster=t.w}l.Rm.warn("Fix Replacing with XXX",i,r,t.name),e.setEdge(i,r,n,t.name)}})),l.Rm.warn("Adjusted Graph",f.M(e)),C(e,0),l.Rm.trace(u)}}),"adjustClustersAndEdges"),C=(0,l.K2)(((e,t)=>{if(l.Rm.warn("extractor - ",t,f.M(e),e.children("D")),t>10)return void l.Rm.error("Bailing out");let n=e.nodes(),i=!1;for(const t of n){const n=e.children(t);i=i||n.length>0}if(i){l.Rm.debug("Nodes = ",n,t);for(const i of n)if(l.Rm.debug("Extracting node",i,u,u[i]&&!u[i].externalConnections,!e.parent(i),e.node(i),e.children("D")," Depth ",t),u[i])if(!u[i].externalConnections&&e.children(i)&&e.children(i).length>0){l.Rm.warn("Cluster without external connections, without a parent and with children",i,t);let n="TB"===e.graph().rankdir?"LR":"TB";u[i]?.clusterData?.dir&&(n=u[i].clusterData.dir,l.Rm.warn("Fixing dir",u[i].clusterData.dir,n));const r=new g.T({multigraph:!0,compound:!0}).setGraph({rankdir:n,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}}));l.Rm.warn("Old graph before copy",f.M(e)),b(i,e,r,i),e.setNode(i,{clusterNode:!0,id:i,clusterData:u[i].clusterData,labelText:u[i].labelText,graph:r}),l.Rm.warn("New graph after copy node: (",i,")",f.M(r)),l.Rm.debug("Old graph after copy",f.M(e))}else l.Rm.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!u[i].externalConnections," no parent: ",!e.parent(i)," children ",e.children(i)&&e.children(i).length>0,e.children("D"),t),l.Rm.debug(u);else l.Rm.debug("Not a cluster",i,t);n=e.nodes(),l.Rm.warn("New list of nodes",n);for(const i of n){const n=e.node(i);l.Rm.warn(" Now next level",i,n),n.clusterNode&&C(n.graph,t+1)}}else l.Rm.debug("Done, no node has children",e.nodes())}),"extractor"),T=(0,l.K2)(((e,t)=>{if(0===t.length)return[];let n=Object.assign(t);return t.forEach((t=>{const i=e.children(t),r=T(e,i);n=[...n,...r]})),n}),"sorter"),S=(0,l.K2)((e=>T(e,e.children())),"sortNodesByHierarchy"),E=(0,l.K2)(((e,t)=>{l.Rm.info("Creating subgraph rect for ",t.id,t);const n=(0,l.D7)(),i=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),r=i.insert("rect",":first-child"),d=(0,l._3)(n.flowchart.htmlLabels),g=i.insert("g").attr("class","cluster-label"),h="markdown"===t.labelType?(0,s.GZ)(g,t.labelText,{style:t.labelStyle,useHtmlLabels:d},n):g.node().appendChild((0,a.DA)(t.labelText,t.labelStyle,void 0,!0));let f=h.getBBox();if((0,l._3)(n.flowchart.htmlLabels)){const e=h.children[0],t=(0,c.Ltv)(h);f=e.getBoundingClientRect(),t.attr("width",f.width),t.attr("height",f.height)}const u=0*t.padding,p=u/2,m=t.width<=f.width+u?f.width+u:t.width;t.width<=f.width+u?t.diff=(f.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,l.Rm.trace("Data ",t,JSON.stringify(t)),r.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-m/2).attr("y",t.y-t.height/2-p).attr("width",m).attr("height",t.height+u);const{subGraphTitleTopMargin:w}=(0,o.O)(n);d?g.attr("transform",`translate(${t.x-f.width/2}, ${t.y-t.height/2+w})`):g.attr("transform",`translate(${t.x}, ${t.y-t.height/2+w})`);const y=r.node().getBBox();return t.width=y.width,t.height=y.height,t.intersect=function(e){return(0,a.nM)(t,e)},i}),"rect"),k=(0,l.K2)(((e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),i=n.insert("rect",":first-child"),r=0*t.padding,o=r/2;i.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2-o).attr("width",t.width+r).attr("height",t.height+r).attr("fill","none");const s=i.node().getBBox();return t.width=s.width,t.height=s.height,t.intersect=function(e){return(0,a.nM)(t,e)},n}),"noteGroup"),X={rect:E,roundedWithTitle:(0,l.K2)(((e,t)=>{const n=(0,l.D7)(),i=e.insert("g").attr("class",t.classes).attr("id",t.id),r=i.insert("rect",":first-child"),s=i.insert("g").attr("class","cluster-label"),d=i.append("rect"),g=s.node().appendChild((0,a.DA)(t.labelText,t.labelStyle,void 0,!0));let h=g.getBBox();if((0,l._3)(n.flowchart.htmlLabels)){const e=g.children[0],t=(0,c.Ltv)(g);h=e.getBoundingClientRect(),t.attr("width",h.width),t.attr("height",h.height)}h=g.getBBox();const f=0*t.padding,u=f/2,p=t.width<=h.width+t.padding?h.width+t.padding:t.width;t.width<=h.width+t.padding?t.diff=(h.width+0*t.padding-t.width)/2:t.diff=-t.padding/2,r.attr("class","outer").attr("x",t.x-p/2-u).attr("y",t.y-t.height/2-u).attr("width",p+f).attr("height",t.height+f),d.attr("class","inner").attr("x",t.x-p/2-u).attr("y",t.y-t.height/2-u+h.height-1).attr("width",p+f).attr("height",t.height+f-h.height-3);const{subGraphTitleTopMargin:m}=(0,o.O)(n);s.attr("transform",`translate(${t.x-h.width/2}, ${t.y-t.height/2-t.padding/3+((0,l._3)(n.flowchart.htmlLabels)?5:3)+m})`);const w=r.node().getBBox();return t.height=w.height,t.intersect=function(e){return(0,a.nM)(t,e)},i}),"roundedWithTitle"),noteGroup:k,divider:(0,l.K2)(((e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),i=n.insert("rect",":first-child"),r=0*t.padding,o=r/2;i.attr("class","divider").attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2).attr("width",t.width+r).attr("height",t.height+r);const s=i.node().getBBox();return t.width=s.width,t.height=s.height,t.diff=-t.padding/2,t.intersect=function(e){return(0,a.nM)(t,e)},n}),"divider")},K={},M=(0,l.K2)(((e,t)=>{l.Rm.trace("Inserting cluster");const n=t.shape||"rect";K[t.id]=X[n](e,t)}),"insertCluster"),L=(0,l.K2)((()=>{K={}}),"clear"),B=(0,l.K2)((async(e,t,n,r,s,d)=>{l.Rm.info("Graph in recursive render: XXX",f.M(t),s);const c=t.graph().rankdir;l.Rm.trace("Dir in recursive render - dir:",c);const g=e.insert("g").attr("class","root");t.nodes()?l.Rm.info("Recursive render XXX",t.nodes()):l.Rm.info("No nodes found for",t),t.edges().length>0&&l.Rm.trace("Recursive edges",t.edge(t.edges()[0]));const p=g.insert("g").attr("class","clusters"),m=g.insert("g").attr("class","edgePaths"),w=g.insert("g").attr("class","edgeLabels"),y=g.insert("g").attr("class","nodes");await Promise.all(t.nodes().map((async function(e){const i=t.node(e);if(void 0!==s){const n=JSON.parse(JSON.stringify(s.clusterData));l.Rm.info("Setting data for cluster XXX (",e,") ",n,s),t.setNode(s.id,n),t.parent(e)||(l.Rm.trace("Setting parent",e,s.id),t.setParent(e,s.id,n))}if(l.Rm.info("(Insert) Node XXX"+e+": "+JSON.stringify(t.node(e))),i?.clusterNode){l.Rm.info("Cluster identified",e,i.width,t.node(e));const{ranksep:o,nodesep:s}=t.graph();i.graph.setGraph({...i.graph.graph(),ranksep:o,nodesep:s});const c=await B(y,i.graph,n,r,t.node(e),d),g=c.elem;(0,a.lC)(i,g),i.diff=c.diff||0,l.Rm.info("Node bounds (abc123)",e,i,i.width,i.x,i.y),(0,a.U7)(g,i),l.Rm.warn("Recursive render complete ",g,i)}else t.children(e).length>0?(l.Rm.info("Cluster - the non recursive path XXX",e,i.id,i,t),l.Rm.info(x(i.id,t)),u[i.id]={id:x(i.id,t),node:i}):(l.Rm.info("Node - the non recursive path",e,i.id,i),await(0,a.on)(y,t.node(e),c))}))),t.edges().forEach((async function(e){const n=t.edge(e.v,e.w,e.name);l.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),l.Rm.info("Edge "+e.v+" -> "+e.w+": ",e," ",JSON.stringify(t.edge(e))),l.Rm.info("Fix",u,"ids:",e.v,e.w,"Translating: ",u[e.v],u[e.w]),await(0,i.jP)(w,n)})),t.edges().forEach((function(e){l.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e))})),l.Rm.info("Graph before layout:",JSON.stringify(f.M(t))),l.Rm.info("#############################################"),l.Rm.info("### Layout ###"),l.Rm.info("#############################################"),l.Rm.info(t),(0,h.Zp)(t),l.Rm.info("Graph after layout:",JSON.stringify(f.M(t)));let R=0;const{subGraphTitleTotalMargin:b}=(0,o.O)(d);return S(t).forEach((function(e){const n=t.node(e);l.Rm.info("Position "+e+": "+JSON.stringify(t.node(e))),l.Rm.info("Position "+e+": ("+n.x,","+n.y,") width: ",n.width," height: ",n.height),n?.clusterNode?(n.y+=b,(0,a.U_)(n)):t.children(e).length>0?(n.height+=b,M(p,n),u[n.id].node=n):(n.y+=b/2,(0,a.U_)(n))})),t.edges().forEach((function(e){const a=t.edge(e);l.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(a),a),a.points.forEach((e=>e.y+=b/2));const o=(0,i.Jo)(m,e,a,u,n,t,r);(0,i.T_)(a,o)})),t.nodes().forEach((function(e){const n=t.node(e);l.Rm.info(e,n.type,n.diff),"group"===n.type&&(R=n.diff)})),{elem:g,diff:R}}),"recursiveRender"),O=(0,l.K2)((async(e,t,n,r,o)=>{(0,i.g0)(e,n,r,o),(0,a.IU)(),(0,i.IU)(),L(),w(),l.Rm.warn("Graph at first:",JSON.stringify(f.M(t))),D(t),l.Rm.warn("Graph after:",JSON.stringify(f.M(t)));const s=(0,l.D7)();await B(e,t,r,o,void 0,s)}),"render"),A=(0,l.K2)((e=>l.Y2.sanitizeText(e,(0,l.D7)())),"sanitizeText"),I={dividerMargin:10,padding:5,textHeight:10,curve:void 0},G=(0,l.K2)((function(e,t,n,i){l.Rm.info("keys:",[...e.keys()]),l.Rm.info(e),e.forEach((function(e){const r={shape:"rect",id:e.id,domId:e.domId,labelText:A(e.id),labelStyle:"",style:"fill: none; stroke: black",padding:(0,l.D7)().flowchart?.padding??(0,l.D7)().class?.padding};t.setNode(e.id,r),J(e.classes,t,n,i,e.id),l.Rm.info("setNode",r)}))}),"addNamespaces"),J=(0,l.K2)((function(e,t,n,i,r){l.Rm.info("keys:",[...e.keys()]),l.Rm.info(e),[...e.values()].filter((e=>e.parent===r)).forEach((function(e){const n=e.cssClasses.join(" "),a=(0,d.sM)(e.styles),o=e.label??e.id,s={labelStyle:a.labelStyle,shape:"class_box",labelText:A(o),classData:e,rx:0,ry:0,class:n,style:a.style,id:e.id,domId:e.domId,tooltip:i.db.getTooltip(e.id,r)||"",haveCallback:e.haveCallback,link:e.link,width:"group"===e.type?500:void 0,type:e.type,padding:(0,l.D7)().flowchart?.padding??(0,l.D7)().class?.padding};t.setNode(e.id,s),r&&t.setParent(e.id,r),l.Rm.info("setNode",s)}))}),"addClasses"),_=(0,l.K2)((function(e,t,n,i){l.Rm.info(e),e.forEach((function(e,r){const a=e,o=a.text,s={labelStyle:"",shape:"note",labelText:A(o),noteData:a,rx:0,ry:0,class:"",style:"",id:a.id,domId:a.id,tooltip:"",type:"note",padding:(0,l.D7)().flowchart?.padding??(0,l.D7)().class?.padding};if(t.setNode(a.id,s),l.Rm.info("setNode",s),!a.class||!i.has(a.class))return;const g=n+r,h={id:`edgeNote${g}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:(0,d.Ib)(I.curve,c.lUB)};t.setEdge(a.id,a.class,h,g)}))}),"addNotes"),P=(0,l.K2)((function(e,t){const n=(0,l.D7)().flowchart;let i=0;e.forEach((function(e){i++;const r={classes:"relation",pattern:1==e.relation.lineType?"dashed":"solid",id:(0,d.rY)(e.id1,e.id2,{prefix:"id",counter:i}),arrowhead:"arrow_open"===e.type?"none":"normal",startLabelRight:"none"===e.relationTitle1?"":e.relationTitle1,endLabelLeft:"none"===e.relationTitle2?"":e.relationTitle2,arrowTypeStart:U(e.relation.type1),arrowTypeEnd:U(e.relation.type2),style:"fill:none",labelStyle:"",curve:(0,d.Ib)(n?.curve,c.lUB)};if(l.Rm.info(r,e),void 0!==e.style){const t=(0,d.sM)(e.style);r.style=t.style,r.labelStyle=t.labelStyle}e.text=e.title,void 0===e.text?void 0!==e.style&&(r.arrowheadStyle="fill: #333"):(r.arrowheadStyle="fill: #333",r.labelpos="c",(0,l.D7)().flowchart?.htmlLabels??(0,l.D7)().htmlLabels?(r.labelType="html",r.label=''+e.text+""):(r.labelType="text",r.label=e.text.replace(l.Y2.lineBreakRegex,"\n"),void 0===e.style&&(r.style=r.style||"stroke: #333; stroke-width: 1.5px;fill:none"),r.labelStyle=r.labelStyle.replace("color:","fill:"))),t.setEdge(e.id1,e.id2,r,i)}))}),"addRelations"),$=(0,l.K2)((function(e){I={...I,...e}}),"setConf"),F=(0,l.K2)((async function(e,t,n,i){l.Rm.info("Drawing class - ",t);const r=(0,l.D7)().flowchart??(0,l.D7)().class,a=(0,l.D7)().securityLevel;l.Rm.info("config:",r);const o=r?.nodeSpacing??50,s=r?.rankSpacing??50,h=new g.T({multigraph:!0,compound:!0}).setGraph({rankdir:i.db.getDirection(),nodesep:o,ranksep:s,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}})),f=i.db.getNamespaces(),u=i.db.getClasses(),p=i.db.getRelations(),m=i.db.getNotes();let w;l.Rm.info(p),G(f,h,t,i),J(u,h,t,i),P(p,h),_(m,h,p.length+1,u),"sandbox"===a&&(w=(0,c.Ltv)("#i"+t));const y="sandbox"===a?(0,c.Ltv)(w.nodes()[0].contentDocument.body):(0,c.Ltv)("body"),R=y.select(`[id="${t}"]`),b=y.select("#"+t+" g");if(await O(b,h,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",t),d._K.insertTitle(R,"classTitleText",r?.titleTopMargin??5,i.db.getDiagramTitle()),(0,l.ot)(h,R,r?.diagramPadding,r?.useMaxWidth),!r?.htmlLabels){const e="sandbox"===a?w.nodes()[0].contentDocument:document,n=e.querySelectorAll('[id="'+t+'"] .edgeLabel .label');for(const t of n){const n=t.getBBox(),i=e.createElementNS("http://www.w3.org/2000/svg","rect");i.setAttribute("rx",0),i.setAttribute("ry",0),i.setAttribute("width",n.width),i.setAttribute("height",n.height),t.insertBefore(i,t.firstChild)}}}),"draw");function U(e){let t;switch(e){case 0:t="aggregation";break;case 1:t="extension";break;case 2:t="composition";break;case 3:t="dependency";break;case 4:t="lollipop";break;default:t="none"}return t}(0,l.K2)(U,"getArrowMarker");var j={setConf:$,draw:F},z={parser:r._$,db:r.z2,renderer:j,styles:r.tM,init:(0,l.K2)((e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute,r.z2.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/444-671f5f2b.chunk.min.js b/themes/hugo-geekdoc/static/js/444-671f5f2b.chunk.min.js deleted file mode 100644 index d10d2451b..000000000 --- a/themes/hugo-geekdoc/static/js/444-671f5f2b.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[444],{7459:(e,t,a)=>{function i(e,t){e.accDescr&&t.setAccDescription?.(e.accDescr),e.accTitle&&t.setAccTitle?.(e.accTitle),e.title&&t.setDiagramTitle?.(e.title)}a.d(t,{S:()=>i}),(0,a(798).K2)(i,"populateCommonDb")},8444:(e,t,a)=>{a.d(t,{diagram:()=>k});var i=a(7459),n=a(7323),l=a(8852),r=a(798),s=a(8731),o=a(4852),c=r.UI.pie,p={sections:new Map,showData:!1,config:c},d=p.sections,g=p.showData,u=structuredClone(c),h=(0,r.K2)((()=>structuredClone(u)),"getConfig"),m=(0,r.K2)((()=>{d=new Map,g=p.showData,(0,r.IU)()}),"clear"),f=(0,r.K2)((({label:e,value:t})=>{d.has(e)||(d.set(e,t),r.Rm.debug(`added new section: ${e}, with value: ${t}`))}),"addSection"),S=(0,r.K2)((()=>d),"getSections"),x=(0,r.K2)((e=>{g=e}),"setShowData"),w=(0,r.K2)((()=>g),"getShowData"),D={getConfig:h,clear:m,setDiagramTitle:r.ke,getDiagramTitle:r.ab,setAccTitle:r.SV,getAccTitle:r.iN,setAccDescription:r.EI,getAccDescription:r.m7,addSection:f,getSections:S,setShowData:x,getShowData:w},T=(0,r.K2)(((e,t)=>{(0,i.S)(e,t),t.setShowData(e.showData),e.sections.map(t.addSection)}),"populateDb"),$={parse:(0,r.K2)((async e=>{const t=await(0,s.qg)("pie",e);r.Rm.debug(t),T(t,D)}),"parse")},y=(0,r.K2)((e=>`\n .pieCircle{\n stroke: ${e.pieStrokeColor};\n stroke-width : ${e.pieStrokeWidth};\n opacity : ${e.pieOpacity};\n }\n .pieOuterCircle{\n stroke: ${e.pieOuterStrokeColor};\n stroke-width: ${e.pieOuterStrokeWidth};\n fill: none;\n }\n .pieTitleText {\n text-anchor: middle;\n font-size: ${e.pieTitleTextSize};\n fill: ${e.pieTitleTextColor};\n font-family: ${e.fontFamily};\n }\n .slice {\n font-family: ${e.fontFamily};\n fill: ${e.pieSectionTextColor};\n font-size:${e.pieSectionTextSize};\n // fill: white;\n }\n .legend text {\n fill: ${e.pieLegendTextColor};\n font-family: ${e.fontFamily};\n font-size: ${e.pieLegendTextSize};\n }\n`),"getStyles"),C=(0,r.K2)((e=>{const t=[...e.entries()].map((e=>({label:e[0],value:e[1]}))).sort(((e,t)=>t.value-e.value));return(0,o.rLf)().value((e=>e.value))(t)}),"createPieArcs"),k={parser:$,db:D,renderer:{draw:(0,r.K2)(((e,t,a,i)=>{r.Rm.debug("rendering pie chart\n"+e);const s=i.db,c=(0,r.D7)(),p=(0,n.$t)(s.getConfig(),c.pie),d=(0,l.D)(t),g=d.append("g");g.attr("transform","translate(225,225)");const{themeVariables:u}=c;let[h]=(0,n.I5)(u.pieOuterStrokeWidth);h??=2;const m=p.textPosition,f=Math.min(450,450)/2-40,S=(0,o.JLW)().innerRadius(0).outerRadius(f),x=(0,o.JLW)().innerRadius(f*m).outerRadius(f*m);g.append("circle").attr("cx",0).attr("cy",0).attr("r",f+h/2).attr("class","pieOuterCircle");const w=s.getSections(),D=C(w),T=[u.pie1,u.pie2,u.pie3,u.pie4,u.pie5,u.pie6,u.pie7,u.pie8,u.pie9,u.pie10,u.pie11,u.pie12],$=(0,o.UMr)(T);g.selectAll("mySlices").data(D).enter().append("path").attr("d",S).attr("fill",(e=>$(e.data.label))).attr("class","pieCircle");let y=0;w.forEach((e=>{y+=e})),g.selectAll("mySlices").data(D).enter().append("text").text((e=>(e.data.value/y*100).toFixed(0)+"%")).attr("transform",(e=>"translate("+x.centroid(e)+")")).style("text-anchor","middle").attr("class","slice"),g.append("text").text(s.getDiagramTitle()).attr("x",0).attr("y",-200).attr("class","pieTitleText");const k=g.selectAll(".legend").data($.domain()).enter().append("g").attr("class","legend").attr("transform",((e,t)=>"translate(216,"+(22*t-22*$.domain().length/2)+")"));k.append("rect").attr("width",18).attr("height",18).style("fill",$).style("stroke",$),k.data(D).append("text").attr("x",22).attr("y",14).text((e=>{const{label:t,value:a}=e.data;return s.getShowData()?`${t} [${a}]`:t}));const b=512+Math.max(...k.selectAll("text").nodes().map((e=>e?.getBoundingClientRect().width??0)));d.attr("viewBox",`0 0 ${b} 450`),(0,r.a$)(d,450,b,p.useMaxWidth)}),"draw")},styles:y}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/452-e65d6d68.chunk.min.js b/themes/hugo-geekdoc/static/js/452-e65d6d68.chunk.min.js new file mode 100644 index 000000000..34932b1a2 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/452-e65d6d68.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[452],{4071:(e,c,k)=>{k.d(c,{createPacketServices:()=>s.$});var s=k(1609);k(9369)}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/501-f9886899.chunk.min.js b/themes/hugo-geekdoc/static/js/501-f9886899.chunk.min.js new file mode 100644 index 000000000..e903d1479 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/501-f9886899.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[501],{4075:(e,n,t)=>{t.d(n,{M:()=>o});var r=t(9592),i=t(53),a=t(4722);function o(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:d(e),edges:s(e)};return r.A(e.graph())||(n.value=i.A(e.graph())),n}function d(e){return a.A(e.nodes(),(function(n){var t=e.node(n),i=e.parent(n),a={v:n};return r.A(t)||(a.value=t),r.A(i)||(a.parent=i),a}))}function s(e){return a.A(e.edges(),(function(n){var t=e.edge(n),i={v:n.v,w:n.w};return r.A(n.name)||(i.name=n.name),r.A(t)||(i.value=t),i}))}t(1471)},53:(e,n,t)=>{t.d(n,{A:()=>i});var r=t(4507);const i=function(e){return(0,r.A)(e,4)}},501:(e,n,t)=>{t.r(n),t.d(n,{render:()=>C});var r=t(3256),i=(t(8568),t(7750)),a=(t(2382),t(5522),t(32)),o=t(567),d=t(4075),s=t(697),c=new Map,g=new Map,l=new Map,f=(0,a.K2)((()=>{g.clear(),l.clear(),c.clear()}),"clear"),h=(0,a.K2)(((e,n)=>{const t=g.get(n)||[];return a.Rm.trace("In isDescendant",n," ",e," = ",t.includes(e)),t.includes(e)}),"isDescendant"),u=(0,a.K2)(((e,n)=>{const t=g.get(n)||[];return a.Rm.info("Descendants of ",n," is ",t),a.Rm.info("Edge is ",e),e.v!==n&&e.w!==n&&(t?t.includes(e.v)||h(e.v,n)||h(e.w,n)||t.includes(e.w):(a.Rm.debug("Tilt, ",n,",not in descendants"),!1))}),"edgeInCluster"),p=(0,a.K2)(((e,n,t,r)=>{a.Rm.warn("Copying children of ",e,"root",r,"data",n.node(e),r);const i=n.children(e)||[];e!==r&&i.push(e),a.Rm.warn("Copying (nodes) clusterId",e,"nodes",i),i.forEach((i=>{if(n.children(i).length>0)p(i,n,t,r);else{const o=n.node(i);a.Rm.info("cp ",i," to ",r," with parent ",e),t.setNode(i,o),r!==n.parent(i)&&(a.Rm.warn("Setting parent",i,n.parent(i)),t.setParent(i,n.parent(i))),e!==r&&i!==e?(a.Rm.debug("Setting parent",i,e),t.setParent(i,e)):(a.Rm.info("In copy ",e,"root",r,"data",n.node(e),r),a.Rm.debug("Not Setting parent for node=",i,"cluster!==rootId",e!==r,"node!==clusterId",i!==e));const d=n.edges(i);a.Rm.debug("Copying Edges",d),d.forEach((i=>{a.Rm.info("Edge",i);const o=n.edge(i.v,i.w,i.name);a.Rm.info("Edge data",o,r);try{u(i,r)?(a.Rm.info("Copying as ",i.v,i.w,o,i.name),t.setEdge(i.v,i.w,o,i.name),a.Rm.info("newGraph edges ",t.edges(),t.edge(t.edges()[0]))):a.Rm.info("Skipping copy of edge ",i.v,"--\x3e",i.w," rootId: ",r," clusterId:",e)}catch(e){a.Rm.error(e)}}))}a.Rm.debug("Removing node",i),n.removeNode(i)}))}),"copy"),m=(0,a.K2)(((e,n)=>{const t=n.children(e);let r=[...t];for(const i of t)l.set(i,e),r=[...r,...m(i,n)];return r}),"extractDescendants"),w=(0,a.K2)(((e,n,t)=>{const r=e.edges().filter((e=>e.v===n||e.w===n)),i=e.edges().filter((e=>e.v===t||e.w===t)),a=r.map((e=>({v:e.v===n?t:e.v,w:e.w===n?n:e.w}))),o=i.map((e=>({v:e.v,w:e.w})));return a.filter((e=>o.some((n=>e.v===n.v&&e.w===n.w))))}),"findCommonEdges"),R=(0,a.K2)(((e,n,t)=>{const r=n.children(e);if(a.Rm.trace("Searching children of id ",e,r),r.length<1)return e;let i;for(const e of r){const r=R(e,n,t),a=w(n,t,r);if(r){if(!(a.length>0))return r;i=r}}return i}),"findNonClusterChild"),v=(0,a.K2)((e=>c.has(e)&&c.get(e).externalConnections&&c.has(e)?c.get(e).id:e),"getAnchorId"),y=(0,a.K2)(((e,n)=>{if(!e||n>10)a.Rm.debug("Opting out, no graph ");else{a.Rm.debug("Opting in, graph "),e.nodes().forEach((function(n){e.children(n).length>0&&(a.Rm.warn("Cluster identified",n," Replacement id in edges: ",R(n,e,n)),g.set(n,m(n,e)),c.set(n,{id:R(n,e,n),clusterData:e.node(n)}))})),e.nodes().forEach((function(n){const t=e.children(n),r=e.edges();t.length>0?(a.Rm.debug("Cluster identified",n,g),r.forEach((e=>{h(e.v,n)^h(e.w,n)&&(a.Rm.warn("Edge: ",e," leaves cluster ",n),a.Rm.warn("Descendants of XXX ",n,": ",g.get(n)),c.get(n).externalConnections=!0)}))):a.Rm.debug("Not a cluster ",n,g)}));for(let n of c.keys()){const t=c.get(n).id,r=e.parent(t);r!==n&&c.has(r)&&!c.get(r).externalConnections&&(c.get(n).id=r)}e.edges().forEach((function(n){const t=e.edge(n);a.Rm.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),a.Rm.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let r=n.v,i=n.w;if(a.Rm.warn("Fix XXX",c,"ids:",n.v,n.w,"Translating: ",c.get(n.v)," --- ",c.get(n.w)),c.get(n.v)||c.get(n.w)){if(a.Rm.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),r=v(n.v),i=v(n.w),e.removeEdge(n.v,n.w,n.name),r!==n.v){const i=e.parent(r);c.get(i).externalConnections=!0,t.fromCluster=n.v}if(i!==n.w){const r=e.parent(i);c.get(r).externalConnections=!0,t.toCluster=n.w}a.Rm.warn("Fix Replacing with XXX",r,i,n.name),e.setEdge(r,i,t,n.name)}})),a.Rm.warn("Adjusted Graph",d.M(e)),X(e,0),a.Rm.trace(c)}}),"adjustClustersAndEdges"),X=(0,a.K2)(((e,n)=>{if(a.Rm.warn("extractor - ",n,d.M(e),e.children("D")),n>10)return void a.Rm.error("Bailing out");let t=e.nodes(),r=!1;for(const n of t){const t=e.children(n);r=r||t.length>0}if(r){a.Rm.debug("Nodes = ",t,n);for(const r of t)if(a.Rm.debug("Extracting node",r,c,c.has(r)&&!c.get(r).externalConnections,!e.parent(r),e.node(r),e.children("D")," Depth ",n),c.has(r))if(!c.get(r).externalConnections&&e.children(r)&&e.children(r).length>0){a.Rm.warn("Cluster without external connections, without a parent and with children",r,n);let t="TB"===e.graph().rankdir?"LR":"TB";c.get(r)?.clusterData?.dir&&(t=c.get(r).clusterData.dir,a.Rm.warn("Fixing dir",c.get(r).clusterData.dir,t));const i=new s.T({multigraph:!0,compound:!0}).setGraph({rankdir:t,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}}));a.Rm.warn("Old graph before copy",d.M(e)),p(r,e,i,r),e.setNode(r,{clusterNode:!0,id:r,clusterData:c.get(r).clusterData,label:c.get(r).label,graph:i}),a.Rm.warn("New graph after copy node: (",r,")",d.M(i)),a.Rm.debug("Old graph after copy",d.M(e))}else a.Rm.warn("Cluster ** ",r," **not meeting the criteria !externalConnections:",!c.get(r).externalConnections," no parent: ",!e.parent(r)," children ",e.children(r)&&e.children(r).length>0,e.children("D"),n),a.Rm.debug(c);else a.Rm.debug("Not a cluster",r,n);t=e.nodes(),a.Rm.warn("New list of nodes",t);for(const r of t){const t=e.node(r);a.Rm.warn(" Now next level",r,t),t?.clusterNode&&X(t.graph,n+1)}}else a.Rm.debug("Done, no node has children",e.nodes())}),"extractor"),b=(0,a.K2)(((e,n)=>{if(0===n.length)return[];let t=Object.assign([],n);return n.forEach((n=>{const r=e.children(n),i=b(e,r);t=[...t,...i]})),t}),"sorter"),E=(0,a.K2)((e=>b(e,e.children())),"sortNodesByHierarchy"),N=(0,a.K2)((async(e,n,t,s,g,l)=>{a.Rm.warn("Graph in recursive render:XAX",d.M(n),g);const f=n.graph().rankdir;a.Rm.trace("Dir in recursive render - dir:",f);const h=e.insert("g").attr("class","root");n.nodes()?a.Rm.info("Recursive render XXX",n.nodes()):a.Rm.info("No nodes found for",n),n.edges().length>0&&a.Rm.info("Recursive edges",n.edge(n.edges()[0]));const u=h.insert("g").attr("class","clusters"),p=h.insert("g").attr("class","edgePaths"),m=h.insert("g").attr("class","edgeLabels"),w=h.insert("g").attr("class","nodes");await Promise.all(n.nodes().map((async function(e){const i=n.node(e);if(void 0!==g){const t=JSON.parse(JSON.stringify(g.clusterData));a.Rm.trace("Setting data for parent cluster XXX\n Node.id = ",e,"\n data=",t.height,"\nParent cluster",g.height),n.setNode(g.id,t),n.parent(e)||(a.Rm.trace("Setting parent",e,g.id),n.setParent(e,g.id,t))}if(a.Rm.info("(Insert) Node XXX"+e+": "+JSON.stringify(n.node(e))),i?.clusterNode){a.Rm.info("Cluster identified XBX",e,i.width,n.node(e));const{ranksep:o,nodesep:d}=n.graph();i.graph.setGraph({...i.graph.graph(),ranksep:o+25,nodesep:d});const c=await N(w,i.graph,t,s,n.node(e),l),g=c.elem;(0,r.lC)(i,g),i.diff=c.diff||0,a.Rm.info("New compound node after recursive render XAX",e,"width",i.width,"height",i.height),(0,r.U7)(g,i)}else n.children(e).length>0?(a.Rm.trace("Cluster - the non recursive path XBX",e,i.id,i,i.width,"Graph:",n),a.Rm.trace(R(i.id,n)),c.set(i.id,{id:R(i.id,n),node:i})):(a.Rm.trace("Node - the non recursive path XAX",e,w,n.node(e),f),await(0,r.on)(w,n.node(e),{config:l,dir:f}))})));const v=(0,a.K2)((async()=>{const e=n.edges().map((async function(e){const t=n.edge(e.v,e.w,e.name);a.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),a.Rm.info("Edge "+e.v+" -> "+e.w+": ",e," ",JSON.stringify(n.edge(e))),a.Rm.info("Fix",c,"ids:",e.v,e.w,"Translating: ",c.get(e.v),c.get(e.w)),await(0,r.jP)(m,t)}));await Promise.all(e)}),"processEdges");await v(),a.Rm.info("Graph before layout:",JSON.stringify(d.M(n))),a.Rm.info("############################################# XXX"),a.Rm.info("### Layout ### XXX"),a.Rm.info("############################################# XXX"),(0,o.Zp)(n),a.Rm.info("Graph after layout:",JSON.stringify(d.M(n)));let y=0,{subGraphTitleTotalMargin:X}=(0,i.O)(l);return await Promise.all(E(n).map((async function(e){const t=n.node(e);if(a.Rm.info("Position XBX => "+e+": ("+t.x,","+t.y,") width: ",t.width," height: ",t.height),t?.clusterNode)t.y+=X,a.Rm.info("A tainted cluster node XBX1",e,t.id,t.width,t.height,t.x,t.y,n.parent(e)),c.get(t.id).node=t,(0,r.U_)(t);else if(n.children(e).length>0){a.Rm.info("A pure cluster node XBX1",e,t.id,t.x,t.y,t.width,t.height,n.parent(e)),t.height+=X,n.node(t.parentId);const i=t?.padding/2||0,o=t?.labelBBox?.height||0,d=o-i||0;a.Rm.debug("OffsetY",d,"labelHeight",o,"halfPadding",i),await(0,r.U)(u,t),c.get(t.id).node=t}else{const e=n.node(t.parentId);t.y+=X/2,a.Rm.info("A regular node XBX1 - using the padding",t.id,"parent",t.parentId,t.width,t.height,t.x,t.y,"offsetY",t.offsetY,"parent",e,e?.offsetY,t),(0,r.U_)(t)}}))),n.edges().forEach((function(e){const i=n.edge(e);a.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(i),i),i.points.forEach((e=>e.y+=X/2));const o=n.node(e.v);var d=n.node(e.w);const g=(0,r.Jo)(p,i,c,t,o,d,s);(0,r.T_)(i,g)})),n.nodes().forEach((function(e){const t=n.node(e);a.Rm.info(e,t.type,t.diff),t.isGroup&&(y=t.diff)})),a.Rm.warn("Returning from recursive render XAX",h,y),{elem:h,diff:y}}),"recursiveRender"),C=(0,a.K2)((async(e,n)=>{const t=new s.T({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.config?.flowchart?.nodeSpacing||e.nodeSpacing,ranksep:e.config?.rankSpacing||e.config?.flowchart?.rankSpacing||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}})),i=n.select("g");(0,r.g0)(i,e.markers,e.type,e.diagramId),(0,r.nA)(),(0,r.gh)(),(0,r.IU)(),f(),e.nodes.forEach((e=>{t.setNode(e.id,{...e}),e.parentId&&t.setParent(e.id,e.parentId)})),a.Rm.debug("Edges:",e.edges),e.edges.forEach((e=>{if(e.start===e.end){const n=e.start,r=n+"---"+n+"---1",i=n+"---"+n+"---2",a=t.node(n);t.setNode(r,{domId:r,id:r,parentId:a.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),t.setParent(r,a.parentId),t.setNode(i,{domId:i,id:i,parentId:a.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),t.setParent(i,a.parentId);const o=structuredClone(e),d=structuredClone(e),s=structuredClone(e);o.label="",o.arrowTypeEnd="none",o.id=n+"-cyclic-special-1",d.arrowTypeEnd="none",d.id=n+"-cyclic-special-mid",s.label="",a.isGroup&&(o.fromCluster=n,s.toCluster=n),s.id=n+"-cyclic-special-2",t.setEdge(n,r,o,n+"-cyclic-special-0"),t.setEdge(r,i,d,n+"-cyclic-special-1"),t.setEdge(i,n,s,n+"-cyc{t.d(n,{M:()=>o});var r=t(9592),i=t(53),a=t(4722);function o(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:d(e),edges:s(e)};return r.A(e.graph())||(n.value=i.A(e.graph())),n}function d(e){return a.A(e.nodes(),(function(n){var t=e.node(n),i=e.parent(n),a={v:n};return r.A(t)||(a.value=t),r.A(i)||(a.parent=i),a}))}function s(e){return a.A(e.edges(),(function(n){var t=e.edge(n),i={v:n.v,w:n.w};return r.A(n.name)||(i.name=n.name),r.A(t)||(i.value=t),i}))}t(1471)},53:(e,n,t)=>{t.d(n,{A:()=>i});var r=t(4507);const i=function(e){return(0,r.A)(e,4)}},1051:(e,n,t)=>{t.r(n),t.d(n,{render:()=>C});var r=t(9022),i=t(8496),a=(t(8252),t(7323),t(798)),o=t(567),d=t(4075),s=t(697),c=new Map,g=new Map,l=new Map,f=(0,a.K2)((()=>{g.clear(),l.clear(),c.clear()}),"clear"),h=(0,a.K2)(((e,n)=>{const t=g.get(n)||[];return a.Rm.trace("In isDescendant",n," ",e," = ",t.includes(e)),t.includes(e)}),"isDescendant"),m=(0,a.K2)(((e,n)=>{const t=g.get(n)||[];return a.Rm.info("Descendants of ",n," is ",t),a.Rm.info("Edge is ",e),e.v!==n&&e.w!==n&&(t?t.includes(e.v)||h(e.v,n)||h(e.w,n)||t.includes(e.w):(a.Rm.debug("Tilt, ",n,",not in descendants"),!1))}),"edgeInCluster"),u=(0,a.K2)(((e,n,t,r)=>{a.Rm.warn("Copying children of ",e,"root",r,"data",n.node(e),r);const i=n.children(e)||[];e!==r&&i.push(e),a.Rm.warn("Copying (nodes) clusterId",e,"nodes",i),i.forEach((i=>{if(n.children(i).length>0)u(i,n,t,r);else{const o=n.node(i);a.Rm.info("cp ",i," to ",r," with parent ",e),t.setNode(i,o),r!==n.parent(i)&&(a.Rm.warn("Setting parent",i,n.parent(i)),t.setParent(i,n.parent(i))),e!==r&&i!==e?(a.Rm.debug("Setting parent",i,e),t.setParent(i,e)):(a.Rm.info("In copy ",e,"root",r,"data",n.node(e),r),a.Rm.debug("Not Setting parent for node=",i,"cluster!==rootId",e!==r,"node!==clusterId",i!==e));const d=n.edges(i);a.Rm.debug("Copying Edges",d),d.forEach((i=>{a.Rm.info("Edge",i);const o=n.edge(i.v,i.w,i.name);a.Rm.info("Edge data",o,r);try{m(i,r)?(a.Rm.info("Copying as ",i.v,i.w,o,i.name),t.setEdge(i.v,i.w,o,i.name),a.Rm.info("newGraph edges ",t.edges(),t.edge(t.edges()[0]))):a.Rm.info("Skipping copy of edge ",i.v,"--\x3e",i.w," rootId: ",r," clusterId:",e)}catch(e){a.Rm.error(e)}}))}a.Rm.debug("Removing node",i),n.removeNode(i)}))}),"copy"),p=(0,a.K2)(((e,n)=>{const t=n.children(e);let r=[...t];for(const i of t)l.set(i,e),r=[...r,...p(i,n)];return r}),"extractDescendants"),w=(0,a.K2)(((e,n,t)=>{const r=e.edges().filter((e=>e.v===n||e.w===n)),i=e.edges().filter((e=>e.v===t||e.w===t)),a=r.map((e=>({v:e.v===n?t:e.v,w:e.w===n?n:e.w}))),o=i.map((e=>({v:e.v,w:e.w})));return a.filter((e=>o.some((n=>e.v===n.v&&e.w===n.w))))}),"findCommonEdges"),R=(0,a.K2)(((e,n,t)=>{const r=n.children(e);if(a.Rm.trace("Searching children of id ",e,r),r.length<1)return e;let i;for(const e of r){const r=R(e,n,t),a=w(n,t,r);if(r){if(!(a.length>0))return r;i=r}}return i}),"findNonClusterChild"),v=(0,a.K2)((e=>c.has(e)&&c.get(e).externalConnections&&c.has(e)?c.get(e).id:e),"getAnchorId"),y=(0,a.K2)(((e,n)=>{if(!e||n>10)a.Rm.debug("Opting out, no graph ");else{a.Rm.debug("Opting in, graph "),e.nodes().forEach((function(n){e.children(n).length>0&&(a.Rm.warn("Cluster identified",n," Replacement id in edges: ",R(n,e,n)),g.set(n,p(n,e)),c.set(n,{id:R(n,e,n),clusterData:e.node(n)}))})),e.nodes().forEach((function(n){const t=e.children(n),r=e.edges();t.length>0?(a.Rm.debug("Cluster identified",n,g),r.forEach((e=>{h(e.v,n)^h(e.w,n)&&(a.Rm.warn("Edge: ",e," leaves cluster ",n),a.Rm.warn("Descendants of XXX ",n,": ",g.get(n)),c.get(n).externalConnections=!0)}))):a.Rm.debug("Not a cluster ",n,g)}));for(let n of c.keys()){const t=c.get(n).id,r=e.parent(t);r!==n&&c.has(r)&&!c.get(r).externalConnections&&(c.get(n).id=r)}e.edges().forEach((function(n){const t=e.edge(n);a.Rm.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),a.Rm.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let r=n.v,i=n.w;if(a.Rm.warn("Fix XXX",c,"ids:",n.v,n.w,"Translating: ",c.get(n.v)," --- ",c.get(n.w)),c.get(n.v)&&c.get(n.w)&&c.get(n.v)===c.get(n.w)){a.Rm.warn("Fixing and trying link to self - removing XXX",n.v,n.w,n.name),a.Rm.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),r=v(n.v),i=v(n.w),e.removeEdge(n.v,n.w,n.name);const o=n.w+"---"+n.v+"---1",d=n.w+"---"+n.v+"---2";e.setNode(o,{domId:o,id:o,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),e.setNode(d,{domId:d,id:d,labelStyle:"",padding:0,shape:"labelRect",style:"",width:10,height:10});const s=structuredClone(t),c=structuredClone(t),g=structuredClone(t);s.label="",s.arrowTypeEnd="none",s.id=n.name+"-cyclic-special-1",c.arrowTypeEnd="none",c.id=n.name+"-cyclic-special-mid",g.label="",s.fromCluster=n.v,g.toCluster=n.v,g.id=n.name+"-cyclic-special-2",e.setEdge(r,o,s,n.name+"-cyclic-special-0"),e.setEdge(o,d,c,n.name+"-cyclic-special-1"),e.setEdge(d,i,g,n.name+"-cyclic-special-2")}else if(c.get(n.v)||c.get(n.w)){if(a.Rm.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),r=v(n.v),i=v(n.w),e.removeEdge(n.v,n.w,n.name),r!==n.v){const i=e.parent(r);c.get(i).externalConnections=!0,t.fromCluster=n.v}if(i!==n.w){const r=e.parent(i);c.get(r).externalConnections=!0,t.toCluster=n.w}a.Rm.warn("Fix Replacing with XXX",r,i,n.name),e.setEdge(r,i,t,n.name)}})),a.Rm.warn("Adjusted Graph",d.M(e)),X(e,0),a.Rm.trace(c)}}),"adjustClustersAndEdges"),X=(0,a.K2)(((e,n)=>{if(a.Rm.warn("extractor - ",n,d.M(e),e.children("D")),n>10)return void a.Rm.error("Bailing out");let t=e.nodes(),r=!1;for(const n of t){const t=e.children(n);r=r||t.length>0}if(r){a.Rm.debug("Nodes = ",t,n);for(const r of t)if(a.Rm.debug("Extracting node",r,c,c.has(r)&&!c.get(r).externalConnections,!e.parent(r),e.node(r),e.children("D")," Depth ",n),c.has(r))if(!c.get(r).externalConnections&&e.children(r)&&e.children(r).length>0){a.Rm.warn("Cluster without external connections, without a parent and with children",r,n);let t="TB"===e.graph().rankdir?"LR":"TB";c.get(r)?.clusterData?.dir&&(t=c.get(r).clusterData.dir,a.Rm.warn("Fixing dir",c.get(r).clusterData.dir,t));const i=new s.T({multigraph:!0,compound:!0}).setGraph({rankdir:t,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}}));a.Rm.warn("Old graph before copy",d.M(e)),u(r,e,i,r),e.setNode(r,{clusterNode:!0,id:r,clusterData:c.get(r).clusterData,label:c.get(r).label,graph:i}),a.Rm.warn("New graph after copy node: (",r,")",d.M(i)),a.Rm.debug("Old graph after copy",d.M(e))}else a.Rm.warn("Cluster ** ",r," **not meeting the criteria !externalConnections:",!c.get(r).externalConnections," no parent: ",!e.parent(r)," children ",e.children(r)&&e.children(r).length>0,e.children("D"),n),a.Rm.debug(c);else a.Rm.debug("Not a cluster",r,n);t=e.nodes(),a.Rm.warn("New list of nodes",t);for(const r of t){const t=e.node(r);a.Rm.warn(" Now next level",r,t),t.clusterNode&&X(t.graph,n+1)}}else a.Rm.debug("Done, no node has children",e.nodes())}),"extractor"),E=(0,a.K2)(((e,n)=>{if(0===n.length)return[];let t=Object.assign([],n);return n.forEach((n=>{const r=e.children(n),i=E(e,r);t=[...t,...i]})),t}),"sorter"),b=(0,a.K2)((e=>E(e,e.children())),"sortNodesByHierarchy"),N=(0,a.K2)((async(e,n,t,s,g,l)=>{a.Rm.info("Graph in recursive render: XXX",d.M(n),g);const f=n.graph().rankdir;a.Rm.trace("Dir in recursive render - dir:",f);const h=e.insert("g").attr("class","root");n.nodes()?a.Rm.info("Recursive render XXX",n.nodes()):a.Rm.info("No nodes found for",n),n.edges().length>0&&a.Rm.info("Recursive edges",n.edge(n.edges()[0]));const m=h.insert("g").attr("class","clusters"),u=h.insert("g").attr("class","edgePaths"),p=h.insert("g").attr("class","edgeLabels"),w=h.insert("g").attr("class","nodes");await Promise.all(n.nodes().map((async function(e){const i=n.node(e);if(void 0!==g){const t=JSON.parse(JSON.stringify(g.clusterData));a.Rm.trace("Setting data for parent cluster XXX\n Node.id = ",e,"\n data=",t.height,"\nParent cluster",g.height),n.setNode(g.id,t),n.parent(e)||(a.Rm.trace("Setting parent",e,g.id),n.setParent(e,g.id,t))}if(a.Rm.info("(Insert) Node XXX"+e+": "+JSON.stringify(n.node(e))),i?.clusterNode){a.Rm.info("Cluster identified XBX",e,i.width,n.node(e));const{ranksep:o,nodesep:d}=n.graph();i.graph.setGraph({...i.graph.graph(),ranksep:o+25,nodesep:d});const c=await N(w,i.graph,t,s,n.node(e),l),g=c.elem;(0,r.lC)(i,g),i.diff=c.diff||0,a.Rm.info("New compound node after recursive render XAX",e,"width",i.width,"height",i.height),(0,r.U7)(g,i)}else n.children(e).length>0?(a.Rm.info("Cluster - the non recursive path XBX",e,i.id,i,i.width,"Graph:",n),a.Rm.info(R(i.id,n)),c.set(i.id,{id:R(i.id,n),node:i})):(a.Rm.trace("Node - the non recursive path XAX",e,i.id,i),await(0,r.on)(w,n.node(e),f))})));const v=(0,a.K2)((async()=>{const e=n.edges().map((async function(e){const t=n.edge(e.v,e.w,e.name);a.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),a.Rm.info("Edge "+e.v+" -> "+e.w+": ",e," ",JSON.stringify(n.edge(e))),a.Rm.info("Fix",c,"ids:",e.v,e.w,"Translating: ",c.get(e.v),c.get(e.w)),await(0,r.jP)(p,t)}));await Promise.all(e)}),"processEdges");await v(),a.Rm.info("Graph before layout:",JSON.stringify(d.M(n))),a.Rm.info("############################################# XXX"),a.Rm.info("### Layout ### XXX"),a.Rm.info("############################################# XXX"),(0,o.Zp)(n),a.Rm.info("Graph after layout:",JSON.stringify(d.M(n)));let y=0,{subGraphTitleTotalMargin:X}=(0,i.O)(l);return await Promise.all(b(n).map((async function(e){const t=n.node(e);if(a.Rm.info("Position XBX => "+e+": ("+t.x,","+t.y,") width: ",t.width," height: ",t.height),t?.clusterNode)t.y+=X,a.Rm.info("A tainted cluster node XBX1",e,t.id,t.width,t.height,t.x,t.y,n.parent(e)),c.get(t.id).node=t,(0,r.U_)(t);else if(n.children(e).length>0){a.Rm.info("A pure cluster node XBX1",e,t.id,t.x,t.y,t.width,t.height,n.parent(e)),t.height+=X,n.node(t.parentId);const i=t?.padding/2||0,o=t?.labelBBox?.height||0,d=o-i||0;a.Rm.debug("OffsetY",d,"labelHeight",o,"halfPadding",i),await(0,r.U)(m,t),c.get(t.id).node=t}else{const e=n.node(t.parentId);t.y+=X/2,a.Rm.info("A regular node XBX1 - using the padding",t.id,"parent",t.parentId,t.width,t.height,t.x,t.y,"offsetY",t.offsetY,"parent",e,e?.offsetY,t),(0,r.U_)(t)}}))),n.edges().forEach((function(e){const i=n.edge(e);a.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(i),i),i.points.forEach((e=>e.y+=X/2));const o=n.node(e.v);var d=n.node(e.w);const g=(0,r.Jo)(u,i,c,t,o,d,s);(0,r.T_)(i,g)})),n.nodes().forEach((function(e){const t=n.node(e);a.Rm.info(e,t.type,t.diff),t.isGroup&&(y=t.diff)})),a.Rm.warn("Returning from recursive render XAX",h,y),{elem:h,diff:y}}),"recursiveRender"),C=(0,a.K2)((async(e,n)=>{const t=new s.T({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.config?.flowchart?.nodeSpacing||e.nodeSpacing,ranksep:e.config?.rankSpacing||e.config?.flowchart?.rankSpacing||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}})),i=n.select("g");(0,r.g0)(i,e.markers,e.type,e.diagramId),(0,r.nA)(),(0,r.gh)(),(0,r.IU)(),f(),e.nodes.forEach((e=>{t.setNode(e.id,{...e}),e.parentId&&t.setParent(e.id,e.parentId)})),a.Rm.debug("Edges:",e.edges),e.edges.forEach((e=>{t.setEdge(e.start,e.end,{...e},e.id)})),a.Rm.warn("Graph at first:",JSON.stringify(d.M(t))),y(t),a.Rm.warn("Graph after:",JSON.stringify(d.M(t)));const o=(0,a.D7)();await N(i,t,e.type,e.diagramId,void 0,o)}),"render")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/533-e75dcf61.chunk.min.js b/themes/hugo-geekdoc/static/js/533-e75dcf61.chunk.min.js deleted file mode 100644 index 48b580fc4..000000000 --- a/themes/hugo-geekdoc/static/js/533-e75dcf61.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[533],{5533:(e,t,i)=>{i.d(t,{diagram:()=>Y});var n=i(798),r=i(4852),s=i(567),a=i(697),l=function(){var e=(0,n.K2)((function(e,t,i,n){for(i=i||{},n=e.length;n--;i[e[n]]=t);return i}),"o"),t=[1,3],i=[1,4],r=[1,5],s=[1,6],a=[5,6,8,9,11,13,31,32,33,34,35,36,44,62,63],l=[1,18],o=[2,7],h=[1,22],c=[1,23],u=[1,24],d=[1,25],y=[1,26],p=[1,27],_=[1,20],g=[1,28],E=[1,29],R=[62,63],m=[5,8,9,11,13,31,32,33,34,35,36,44,51,53,62,63],f=[1,47],I=[1,48],S=[1,49],k=[1,50],N=[1,51],b=[1,52],T=[1,53],x=[53,54],w=[1,64],A=[1,60],q=[1,61],v=[1,62],K=[1,63],$=[1,65],O=[1,69],L=[1,70],C=[1,67],M=[1,68],F=[5,8,9,11,13,31,32,33,34,35,36,44,62,63],D={trace:(0,n.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,requirementType:17,requirementName:18,STRUCT_START:19,requirementBody:20,ID:21,COLONSEP:22,id:23,TEXT:24,text:25,RISK:26,riskLevel:27,VERIFYMTHD:28,verifyType:29,STRUCT_STOP:30,REQUIREMENT:31,FUNCTIONAL_REQUIREMENT:32,INTERFACE_REQUIREMENT:33,PERFORMANCE_REQUIREMENT:34,PHYSICAL_REQUIREMENT:35,DESIGN_CONSTRAINT:36,LOW_RISK:37,MED_RISK:38,HIGH_RISK:39,VERIFY_ANALYSIS:40,VERIFY_DEMONSTRATION:41,VERIFY_INSPECTION:42,VERIFY_TEST:43,ELEMENT:44,elementName:45,elementBody:46,TYPE:47,type:48,DOCREF:49,ref:50,END_ARROW_L:51,relationship:52,LINE:53,END_ARROW_R:54,CONTAINS:55,COPIES:56,DERIVES:57,SATISFIES:58,VERIFIES:59,REFINES:60,TRACES:61,unqString:62,qString:63,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",19:"STRUCT_START",21:"ID",22:"COLONSEP",24:"TEXT",26:"RISK",28:"VERIFYMTHD",30:"STRUCT_STOP",31:"REQUIREMENT",32:"FUNCTIONAL_REQUIREMENT",33:"INTERFACE_REQUIREMENT",34:"PERFORMANCE_REQUIREMENT",35:"PHYSICAL_REQUIREMENT",36:"DESIGN_CONSTRAINT",37:"LOW_RISK",38:"MED_RISK",39:"HIGH_RISK",40:"VERIFY_ANALYSIS",41:"VERIFY_DEMONSTRATION",42:"VERIFY_INSPECTION",43:"VERIFY_TEST",44:"ELEMENT",47:"TYPE",49:"DOCREF",51:"END_ARROW_L",53:"LINE",54:"END_ARROW_R",55:"CONTAINS",56:"COPIES",57:"DERIVES",58:"SATISFIES",59:"VERIFIES",60:"REFINES",61:"TRACES",62:"unqString",63:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[14,5],[20,5],[20,5],[20,5],[20,5],[20,2],[20,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[27,1],[27,1],[27,1],[29,1],[29,1],[29,1],[29,1],[15,5],[46,5],[46,5],[46,2],[46,1],[16,5],[16,5],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[18,1],[18,1],[23,1],[23,1],[25,1],[25,1],[45,1],[45,1],[48,1],[48,1],[50,1],[50,1]],performAction:(0,n.K2)((function(e,t,i,n,r,s,a){var l=s.length-1;switch(r){case 4:this.$=s[l].trim(),n.setAccTitle(this.$);break;case 5:case 6:this.$=s[l].trim(),n.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:n.addRequirement(s[l-3],s[l-4]);break;case 14:n.setNewReqId(s[l-2]);break;case 15:n.setNewReqText(s[l-2]);break;case 16:n.setNewReqRisk(s[l-2]);break;case 17:n.setNewReqVerifyMethod(s[l-2]);break;case 20:this.$=n.RequirementType.REQUIREMENT;break;case 21:this.$=n.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 22:this.$=n.RequirementType.INTERFACE_REQUIREMENT;break;case 23:this.$=n.RequirementType.PERFORMANCE_REQUIREMENT;break;case 24:this.$=n.RequirementType.PHYSICAL_REQUIREMENT;break;case 25:this.$=n.RequirementType.DESIGN_CONSTRAINT;break;case 26:this.$=n.RiskLevel.LOW_RISK;break;case 27:this.$=n.RiskLevel.MED_RISK;break;case 28:this.$=n.RiskLevel.HIGH_RISK;break;case 29:this.$=n.VerifyType.VERIFY_ANALYSIS;break;case 30:this.$=n.VerifyType.VERIFY_DEMONSTRATION;break;case 31:this.$=n.VerifyType.VERIFY_INSPECTION;break;case 32:this.$=n.VerifyType.VERIFY_TEST;break;case 33:n.addElement(s[l-3]);break;case 34:n.setNewElementType(s[l-2]);break;case 35:n.setNewElementDocRef(s[l-2]);break;case 38:n.addRelationship(s[l-2],s[l],s[l-4]);break;case 39:n.addRelationship(s[l-2],s[l-4],s[l]);break;case 40:this.$=n.Relationships.CONTAINS;break;case 41:this.$=n.Relationships.COPIES;break;case 42:this.$=n.Relationships.DERIVES;break;case 43:this.$=n.Relationships.SATISFIES;break;case 44:this.$=n.Relationships.VERIFIES;break;case 45:this.$=n.Relationships.REFINES;break;case 46:this.$=n.Relationships.TRACES}}),"anonymous"),table:[{3:1,4:2,6:t,9:i,11:r,13:s},{1:[3]},{3:8,4:2,5:[1,7],6:t,9:i,11:r,13:s},{5:[1,9]},{10:[1,10]},{12:[1,11]},e(a,[2,6]),{3:12,4:2,6:t,9:i,11:r,13:s},{1:[2,2]},{4:17,5:l,7:13,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},e(a,[2,4]),e(a,[2,5]),{1:[2,1]},{8:[1,30]},{4:17,5:l,7:31,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{4:17,5:l,7:32,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{4:17,5:l,7:33,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{4:17,5:l,7:34,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{4:17,5:l,7:35,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{18:36,62:[1,37],63:[1,38]},{45:39,62:[1,40],63:[1,41]},{51:[1,42],53:[1,43]},e(R,[2,20]),e(R,[2,21]),e(R,[2,22]),e(R,[2,23]),e(R,[2,24]),e(R,[2,25]),e(m,[2,49]),e(m,[2,50]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{19:[1,44]},{19:[2,47]},{19:[2,48]},{19:[1,45]},{19:[2,53]},{19:[2,54]},{52:46,55:f,56:I,57:S,58:k,59:N,60:b,61:T},{52:54,55:f,56:I,57:S,58:k,59:N,60:b,61:T},{5:[1,55]},{5:[1,56]},{53:[1,57]},e(x,[2,40]),e(x,[2,41]),e(x,[2,42]),e(x,[2,43]),e(x,[2,44]),e(x,[2,45]),e(x,[2,46]),{54:[1,58]},{5:w,20:59,21:A,24:q,26:v,28:K,30:$},{5:O,30:L,46:66,47:C,49:M},{23:71,62:g,63:E},{23:72,62:g,63:E},e(F,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:w,20:77,21:A,24:q,26:v,28:K,30:$},e(F,[2,19]),e(F,[2,33]),{22:[1,78]},{22:[1,79]},{5:O,30:L,46:80,47:C,49:M},e(F,[2,37]),e(F,[2,38]),e(F,[2,39]),{23:81,62:g,63:E},{25:82,62:[1,83],63:[1,84]},{27:85,37:[1,86],38:[1,87],39:[1,88]},{29:89,40:[1,90],41:[1,91],42:[1,92],43:[1,93]},e(F,[2,18]),{48:94,62:[1,95],63:[1,96]},{50:97,62:[1,98],63:[1,99]},e(F,[2,36]),{5:[1,100]},{5:[1,101]},{5:[2,51]},{5:[2,52]},{5:[1,102]},{5:[2,26]},{5:[2,27]},{5:[2,28]},{5:[1,103]},{5:[2,29]},{5:[2,30]},{5:[2,31]},{5:[2,32]},{5:[1,104]},{5:[2,55]},{5:[2,56]},{5:[1,105]},{5:[2,57]},{5:[2,58]},{5:w,20:106,21:A,24:q,26:v,28:K,30:$},{5:w,20:107,21:A,24:q,26:v,28:K,30:$},{5:w,20:108,21:A,24:q,26:v,28:K,30:$},{5:w,20:109,21:A,24:q,26:v,28:K,30:$},{5:O,30:L,46:110,47:C,49:M},{5:O,30:L,46:111,47:C,49:M},e(F,[2,14]),e(F,[2,15]),e(F,[2,16]),e(F,[2,17]),e(F,[2,34]),e(F,[2,35])],defaultActions:{8:[2,2],12:[2,1],30:[2,3],31:[2,8],32:[2,9],33:[2,10],34:[2,11],35:[2,12],37:[2,47],38:[2,48],40:[2,53],41:[2,54],83:[2,51],84:[2,52],86:[2,26],87:[2,27],88:[2,28],90:[2,29],91:[2,30],92:[2,31],93:[2,32],95:[2,55],96:[2,56],98:[2,57],99:[2,58]},parseError:(0,n.K2)((function(e,t){if(!t.recoverable){var i=new Error(e);throw i.hash=t,i}this.trace(e)}),"parseError"),parse:(0,n.K2)((function(e){var t=this,i=[0],r=[],s=[null],a=[],l=this.table,o="",h=0,c=0,u=0,d=a.slice.call(arguments,1),y=Object.create(this.lexer),p={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(p.yy[_]=this.yy[_]);y.setInput(e,p.yy),p.yy.lexer=y,p.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var g=y.yylloc;a.push(g);var E=y.options&&y.options.ranges;function R(){var e;return"number"!=typeof(e=r.pop()||y.lex()||1)&&(e instanceof Array&&(e=(r=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,n.K2)((function(e){i.length=i.length-2*e,s.length=s.length-e,a.length=a.length-e}),"popStack"),(0,n.K2)(R,"lex");for(var m,f,I,S,k,N,b,T,x,w={};;){if(I=i[i.length-1],this.defaultActions[I]?S=this.defaultActions[I]:(null==m&&(m=R()),S=l[I]&&l[I][m]),void 0===S||!S.length||!S[0]){var A;for(N in x=[],l[I])this.terminals_[N]&&N>2&&x.push("'"+this.terminals_[N]+"'");A=y.showPosition?"Parse error on line "+(h+1)+":\n"+y.showPosition()+"\nExpecting "+x.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(h+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(A,{text:y.match,token:this.terminals_[m]||m,line:y.yylineno,loc:g,expected:x})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+I+", token: "+m);switch(S[0]){case 1:i.push(m),s.push(y.yytext),a.push(y.yylloc),i.push(S[1]),m=null,f?(m=f,f=null):(c=y.yyleng,o=y.yytext,h=y.yylineno,g=y.yylloc,u>0&&u--);break;case 2:if(b=this.productions_[S[1]][1],w.$=s[s.length-b],w._$={first_line:a[a.length-(b||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(b||1)].first_column,last_column:a[a.length-1].last_column},E&&(w._$.range=[a[a.length-(b||1)].range[0],a[a.length-1].range[1]]),void 0!==(k=this.performAction.apply(w,[o,c,h,p.yy,S[1],s,a].concat(d))))return k;b&&(i=i.slice(0,-1*b*2),s=s.slice(0,-1*b),a=a.slice(0,-1*b)),i.push(this.productions_[S[1]][0]),s.push(w.$),a.push(w._$),T=l[i[i.length-2]][i[i.length-1]],i.push(T);break;case 3:return!0}}return!0}),"parse")},P=function(){return{EOF:1,parseError:(0,n.K2)((function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)}),"parseError"),setInput:(0,n.K2)((function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,n.K2)((function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e}),"input"),unput:(0,n.K2)((function(e){var t=e.length,i=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===n.length?this.yylloc.first_column:0)+n[n.length-i.length].length-i[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,n.K2)((function(){return this._more=!0,this}),"more"),reject:(0,n.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,n.K2)((function(e){this.unput(this.match.slice(e))}),"less"),pastInput:(0,n.K2)((function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,n.K2)((function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,n.K2)((function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"}),"showPosition"),test_match:(0,n.K2)((function(e,t){var i,n,r;if(this.options.backtrack_lexer&&(r={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(r.yylloc.range=this.yylloc.range.slice(0))),(n=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],i=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack){for(var s in r)this[s]=r[s];return!1}return!1}),"test_match"),next:(0,n.K2)((function(){if(this.done)return this.EOF;var e,t,i,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),s=0;st[0].length)){if(t=i,n=s,this.options.backtrack_lexer){if(!1!==(e=this.test_match(i,r[s])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,r[n]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,n.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,n.K2)((function(e){this.conditionStack.push(e)}),"begin"),popState:(0,n.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,n.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,n.K2)((function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"}),"topState"),pushState:(0,n.K2)((function(e){this.begin(e)}),"pushState"),stateStackSize:(0,n.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,n.K2)((function(e,t,i,n){switch(i){case 0:return"title";case 1:return this.begin("acc_title"),9;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),11;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:case 48:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 5;case 9:case 10:case 11:break;case 12:return 8;case 13:return 6;case 14:return 19;case 15:return 30;case 16:return 22;case 17:return 21;case 18:return 24;case 19:return 26;case 20:return 28;case 21:return 31;case 22:return 32;case 23:return 33;case 24:return 34;case 25:return 35;case 26:return 36;case 27:return 37;case 28:return 38;case 29:return 39;case 30:return 40;case 31:return 41;case 32:return 42;case 33:return 43;case 34:return 44;case 35:return 55;case 36:return 56;case 37:return 57;case 38:return 58;case 39:return 59;case 40:return 60;case 41:return 61;case 42:return 47;case 43:return 49;case 44:return 51;case 45:return 54;case 46:return 53;case 47:this.begin("string");break;case 49:return"qString";case 50:return t.yytext=t.yytext.trim(),62}}),"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[48,49],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,50],inclusive:!0}}}}();function V(){this.yy={}}return D.lexer=P,(0,n.K2)(V,"Parser"),V.prototype=D,D.Parser=V,new V}();l.parser=l;var o=l,h=[],c={},u=new Map,d={},y=new Map,p=(0,n.K2)(((e,t)=>(u.has(e)||u.set(e,{name:e,type:t,id:c.id,text:c.text,risk:c.risk,verifyMethod:c.verifyMethod}),c={},u.get(e))),"addRequirement"),_=(0,n.K2)((()=>u),"getRequirements"),g=(0,n.K2)((e=>{void 0!==c&&(c.id=e)}),"setNewReqId"),E=(0,n.K2)((e=>{void 0!==c&&(c.text=e)}),"setNewReqText"),R=(0,n.K2)((e=>{void 0!==c&&(c.risk=e)}),"setNewReqRisk"),m=(0,n.K2)((e=>{void 0!==c&&(c.verifyMethod=e)}),"setNewReqVerifyMethod"),f=(0,n.K2)((e=>(y.has(e)||(y.set(e,{name:e,type:d.type,docRef:d.docRef}),n.Rm.info("Added new requirement: ",e)),d={},y.get(e))),"addElement"),I=(0,n.K2)((()=>y),"getElements"),S=(0,n.K2)((e=>{void 0!==d&&(d.type=e)}),"setNewElementType"),k=(0,n.K2)((e=>{void 0!==d&&(d.docRef=e)}),"setNewElementDocRef"),N=(0,n.K2)(((e,t,i)=>{h.push({type:e,src:t,dst:i})}),"addRelationship"),b=(0,n.K2)((()=>h),"getRelationships"),T=(0,n.K2)((()=>{h=[],c={},u=new Map,d={},y=new Map,(0,n.IU)()}),"clear"),x={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},RiskLevel:{LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},VerifyType:{VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},Relationships:{CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},getConfig:(0,n.K2)((()=>(0,n.D7)().req),"getConfig"),addRequirement:p,getRequirements:_,setNewReqId:g,setNewReqText:E,setNewReqRisk:R,setNewReqVerifyMethod:m,setAccTitle:n.SV,getAccTitle:n.iN,setAccDescription:n.EI,getAccDescription:n.m7,addElement:f,getElements:I,setNewElementType:S,setNewElementDocRef:k,addRelationship:N,getRelationships:b,clear:T},w=(0,n.K2)((e=>`\n\n marker {\n fill: ${e.relationColor};\n stroke: ${e.relationColor};\n }\n\n marker.cross {\n stroke: ${e.lineColor};\n }\n\n svg {\n font-family: ${e.fontFamily};\n font-size: ${e.fontSize};\n }\n\n .reqBox {\n fill: ${e.requirementBackground};\n fill-opacity: 1.0;\n stroke: ${e.requirementBorderColor};\n stroke-width: ${e.requirementBorderSize};\n }\n \n .reqTitle, .reqLabel{\n fill: ${e.requirementTextColor};\n }\n .reqLabelBox {\n fill: ${e.relationLabelBackground};\n fill-opacity: 1.0;\n }\n\n .req-title-line {\n stroke: ${e.requirementBorderColor};\n stroke-width: ${e.requirementBorderSize};\n }\n .relationshipLine {\n stroke: ${e.relationColor};\n stroke-width: 1;\n }\n .relationshipLabel {\n fill: ${e.relationLabelColor};\n }\n\n`),"getStyles"),A={CONTAINS:"contains",ARROW:"arrow"},q={ReqMarkers:A,insertLineEndings:(0,n.K2)(((e,t)=>{let i=e.append("defs").append("marker").attr("id",A.CONTAINS+"_line_ending").attr("refX",0).attr("refY",t.line_height/2).attr("markerWidth",t.line_height).attr("markerHeight",t.line_height).attr("orient","auto").append("g");i.append("circle").attr("cx",t.line_height/2).attr("cy",t.line_height/2).attr("r",t.line_height/2).attr("fill","none"),i.append("line").attr("x1",0).attr("x2",t.line_height).attr("y1",t.line_height/2).attr("y2",t.line_height/2).attr("stroke-width",1),i.append("line").attr("y1",0).attr("y2",t.line_height).attr("x1",t.line_height/2).attr("x2",t.line_height/2).attr("stroke-width",1),e.append("defs").append("marker").attr("id",A.ARROW+"_line_ending").attr("refX",t.line_height).attr("refY",.5*t.line_height).attr("markerWidth",t.line_height).attr("markerHeight",t.line_height).attr("orient","auto").append("path").attr("d",`M0,0\n L${t.line_height},${t.line_height/2}\n M${t.line_height},${t.line_height/2}\n L0,${t.line_height}`).attr("stroke-width",1)}),"insertLineEndings")},v={},K=0,$=(0,n.K2)(((e,t)=>e.insert("rect","#"+t).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",v.rect_min_width+"px").attr("height",v.rect_min_height+"px")),"newRectNode"),O=(0,n.K2)(((e,t,i)=>{let n=v.rect_min_width/2,r=e.append("text").attr("class","req reqLabel reqTitle").attr("id",t).attr("x",n).attr("y",v.rect_padding).attr("dominant-baseline","hanging"),s=0;i.forEach((e=>{0==s?r.append("tspan").attr("text-anchor","middle").attr("x",v.rect_min_width/2).attr("dy",0).text(e):r.append("tspan").attr("text-anchor","middle").attr("x",v.rect_min_width/2).attr("dy",.75*v.line_height).text(e),s++}));let a=1.5*v.rect_padding+s*v.line_height*.75;return e.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",v.rect_min_width).attr("y1",a).attr("y2",a),{titleNode:r,y:a}}),"newTitleNode"),L=(0,n.K2)(((e,t,i,n)=>{let r=e.append("text").attr("class","req reqLabel").attr("id",t).attr("x",v.rect_padding).attr("y",n).attr("dominant-baseline","hanging"),s=0,a=[];return i.forEach((e=>{let t=e.length;for(;t>30&&s<3;){let i=e.substring(0,30);t=(e=e.substring(30,e.length)).length,a[a.length]=i,s++}if(3==s){let e=a[a.length-1];a[a.length-1]=e.substring(0,e.length-4)+"..."}else a[a.length]=e;s=0})),a.forEach((e=>{r.append("tspan").attr("x",v.rect_padding).attr("dy",v.line_height).text(e)})),r}),"newBodyNode"),C=(0,n.K2)(((e,t,i,n)=>{const r=t.node().getTotalLength(),s=t.node().getPointAtLength(.5*r),a="rel"+K;K++;const l=e.append("text").attr("class","req relationshipLabel").attr("id",a).attr("x",s.x).attr("y",s.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(n).node().getBBox();e.insert("rect","#"+a).attr("class","req reqLabelBox").attr("x",s.x-l.width/2).attr("y",s.y-l.height/2).attr("width",l.width).attr("height",l.height).attr("fill","white").attr("fill-opacity","85%")}),"addEdgeLabel"),M=(0,n.K2)((function(e,t,i,s,a){const l=i.edge(U(t.src),U(t.dst)),o=(0,r.n8j)().x((function(e){return e.x})).y((function(e){return e.y})),h=e.insert("path","#"+s).attr("class","er relationshipLine").attr("d",o(l.points)).attr("fill","none");t.type==a.db.Relationships.CONTAINS?h.attr("marker-start","url("+n.Y2.getUrl(v.arrowMarkerAbsolute)+"#"+t.type+"_line_ending)"):(h.attr("stroke-dasharray","10,7"),h.attr("marker-end","url("+n.Y2.getUrl(v.arrowMarkerAbsolute)+"#"+q.ReqMarkers.ARROW+"_line_ending)")),C(e,h,v,`<<${t.type}>>`)}),"drawRelationshipFromLayout"),F=(0,n.K2)(((e,t,i)=>{e.forEach(((e,r)=>{r=U(r),n.Rm.info("Added new requirement: ",r);const s=i.append("g").attr("id",r),a=$(s,"req-"+r);let l=[],o=O(s,r+"_title",[`<<${e.type}>>`,`${e.name}`]);l.push(o.titleNode);let h=L(s,r+"_body",[`Id: ${e.id}`,`Text: ${e.text}`,`Risk: ${e.risk}`,`Verification: ${e.verifyMethod}`],o.y);l.push(h);const c=a.node().getBBox();t.setNode(r,{width:c.width,height:c.height,shape:"rect",id:r})}))}),"drawReqs"),D=(0,n.K2)(((e,t,i)=>{e.forEach(((e,n)=>{const r=U(n),s=i.append("g").attr("id",r),a="element-"+r,l=$(s,a);let o=[],h=O(s,a+"_title",["<>",`${n}`]);o.push(h.titleNode);let c=L(s,a+"_body",[`Type: ${e.type||"Not Specified"}`,`Doc Ref: ${e.docRef||"None"}`],h.y);o.push(c);const u=l.node().getBBox();t.setNode(r,{width:u.width,height:u.height,shape:"rect",id:r})}))}),"drawElements"),P=(0,n.K2)(((e,t)=>(e.forEach((function(e){let i=U(e.src),n=U(e.dst);t.setEdge(i,n,{relationship:e})})),e)),"addRelationships"),V=(0,n.K2)((function(e,t){t.nodes().forEach((function(i){void 0!==i&&void 0!==t.node(i)&&(e.select("#"+i),e.select("#"+i).attr("transform","translate("+(t.node(i).x-t.node(i).width/2)+","+(t.node(i).y-t.node(i).height/2)+" )"))}))}),"adjustEntities"),U=(0,n.K2)((e=>e.replace(/\s/g,"").replace(/\./g,"_")),"elementString"),Y={parser:o,db:x,renderer:{draw:(0,n.K2)(((e,t,i,l)=>{const o=(v=(0,n.D7)().requirement).securityLevel;let h;"sandbox"===o&&(h=(0,r.Ltv)("#i"+t));const c=("sandbox"===o?(0,r.Ltv)(h.nodes()[0].contentDocument.body):(0,r.Ltv)("body")).select(`[id='${t}']`);q.insertLineEndings(c,v);const u=new a.T({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:v.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel((function(){return{}}));let d=l.db.getRequirements(),y=l.db.getElements(),p=l.db.getRelationships();F(d,u,c),D(y,u,c),P(p,u),(0,s.Zp)(u),V(c,u),p.forEach((function(e){M(c,e,u,t,l)}));const _=v.rect_padding,g=c.node().getBBox(),E=g.width+2*_,R=g.height+2*_;(0,n.a$)(c,R,E,v.useMaxWidth),c.attr("viewBox",`${g.x-_} ${g.y-_} ${E} ${R}`)}),"draw")},styles:w}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/557-be45235e.chunk.min.js b/themes/hugo-geekdoc/static/js/557-be45235e.chunk.min.js deleted file mode 100644 index f14983937..000000000 --- a/themes/hugo-geekdoc/static/js/557-be45235e.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[557],{53:(t,r,a)=>{a.d(r,{A:()=>n});var e=a(4507);const n=function(t){return(0,e.A)(t,4)}},1953:(t,r,a)=>{a.d(r,{IU:()=>y,Jo:()=>_,T_:()=>x,g0:()=>p,jP:()=>b});var e=a(6578),n=a(8496),s=a(8252),i=a(7323),d=a(798),o=a(4852),l=(0,d.K2)(((t,r,a,e)=>{r.forEach((r=>{c[r](t,a,e)}))}),"insertMarkers"),c={extension:(0,d.K2)(((t,r,a)=>{d.Rm.trace("Making markers for ",a),t.append("defs").append("marker").attr("id",a+"_"+r+"-extensionStart").attr("class","marker extension "+r).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",a+"_"+r+"-extensionEnd").attr("class","marker extension "+r).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")}),"extension"),composition:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-compositionStart").attr("class","marker composition "+r).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",a+"_"+r+"-compositionEnd").attr("class","marker composition "+r).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"composition"),aggregation:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-aggregationStart").attr("class","marker aggregation "+r).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",a+"_"+r+"-aggregationEnd").attr("class","marker aggregation "+r).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"aggregation"),dependency:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-dependencyStart").attr("class","marker dependency "+r).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",a+"_"+r+"-dependencyEnd").attr("class","marker dependency "+r).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"dependency"),lollipop:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-lollipopStart").attr("class","marker lollipop "+r).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",a+"_"+r+"-lollipopEnd").attr("class","marker lollipop "+r).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)}),"lollipop"),point:(0,d.K2)(((t,r,a)=>{t.append("marker").attr("id",a+"_"+r+"-pointEnd").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",a+"_"+r+"-pointStart").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"point"),circle:(0,d.K2)(((t,r,a)=>{t.append("marker").attr("id",a+"_"+r+"-circleEnd").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",a+"_"+r+"-circleStart").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"circle"),cross:(0,d.K2)(((t,r,a)=>{t.append("marker").attr("id",a+"_"+r+"-crossEnd").attr("class","marker cross "+r).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",a+"_"+r+"-crossStart").attr("class","marker cross "+r).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")}),"cross"),barb:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}),"barb")},p=l,h=(0,d.K2)(((t,r,a,e,n)=>{r.arrowTypeStart&&m(t,"start",r.arrowTypeStart,a,e,n),r.arrowTypeEnd&&m(t,"end",r.arrowTypeEnd,a,e,n)}),"addEdgeMarkers"),g={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},m=(0,d.K2)(((t,r,a,e,n,s)=>{const i=g[a];if(!i)return void d.Rm.warn(`Unknown arrow type: ${a}`);const o="start"===r?"Start":"End";t.attr(`marker-${r}`,`url(${e}#${n}_${s}-${i}${o})`)}),"addEdgeMarker"),k={},f={},y=(0,d.K2)((()=>{k={},f={}}),"clear"),b=(0,d.K2)(((t,r)=>{const a=(0,d.D7)(),n=(0,d._3)(a.flowchart.htmlLabels),i="markdown"===r.labelType?(0,s.GZ)(t,r.label,{style:r.labelStyle,useHtmlLabels:n,addSvgBackground:!0},a):(0,e.DA)(r.label,r.labelStyle),l=t.insert("g").attr("class","edgeLabel"),c=l.insert("g").attr("class","label");c.node().appendChild(i);let p,h=i.getBBox();if(n){const t=i.children[0],r=(0,o.Ltv)(i);h=t.getBoundingClientRect(),r.attr("width",h.width),r.attr("height",h.height)}if(c.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),k[r.id]=l,r.width=h.width,r.height=h.height,r.startLabelLeft){const a=(0,e.DA)(r.startLabelLeft,r.labelStyle),n=t.insert("g").attr("class","edgeTerminals"),s=n.insert("g").attr("class","inner");p=s.node().appendChild(a);const i=a.getBBox();s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),f[r.id]||(f[r.id]={}),f[r.id].startLeft=n,u(p,r.startLabelLeft)}if(r.startLabelRight){const a=(0,e.DA)(r.startLabelRight,r.labelStyle),n=t.insert("g").attr("class","edgeTerminals"),s=n.insert("g").attr("class","inner");p=n.node().appendChild(a),s.node().appendChild(a);const i=a.getBBox();s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),f[r.id]||(f[r.id]={}),f[r.id].startRight=n,u(p,r.startLabelRight)}if(r.endLabelLeft){const a=(0,e.DA)(r.endLabelLeft,r.labelStyle),n=t.insert("g").attr("class","edgeTerminals"),s=n.insert("g").attr("class","inner");p=s.node().appendChild(a);const i=a.getBBox();s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),n.node().appendChild(a),f[r.id]||(f[r.id]={}),f[r.id].endLeft=n,u(p,r.endLabelLeft)}if(r.endLabelRight){const a=(0,e.DA)(r.endLabelRight,r.labelStyle),n=t.insert("g").attr("class","edgeTerminals"),s=n.insert("g").attr("class","inner");p=s.node().appendChild(a);const i=a.getBBox();s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),n.node().appendChild(a),f[r.id]||(f[r.id]={}),f[r.id].endRight=n,u(p,r.endLabelRight)}return i}),"insertEdgeLabel");function u(t,r){(0,d.D7)().flowchart.htmlLabels&&t&&(t.style.width=9*r.length+"px",t.style.height="12px")}(0,d.K2)(u,"setTerminalWidth");var x=(0,d.K2)(((t,r)=>{d.Rm.debug("Moving label abc88 ",t.id,t.label,k[t.id],r);let a=r.updatedPath?r.updatedPath:r.originalPath;const e=(0,d.D7)(),{subGraphTitleTotalMargin:s}=(0,n.O)(e);if(t.label){const e=k[t.id];let n=t.x,o=t.y;if(a){const e=i._K.calcLabelPosition(a);d.Rm.debug("Moving label "+t.label+" from (",n,",",o,") to (",e.x,",",e.y,") abc88"),r.updatedPath&&(n=e.x,o=e.y)}e.attr("transform",`translate(${n}, ${o+s/2})`)}if(t.startLabelLeft){const r=f[t.id].startLeft;let e=t.x,n=t.y;if(a){const r=i._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",a);e=r.x,n=r.y}r.attr("transform",`translate(${e}, ${n})`)}if(t.startLabelRight){const r=f[t.id].startRight;let e=t.x,n=t.y;if(a){const r=i._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",a);e=r.x,n=r.y}r.attr("transform",`translate(${e}, ${n})`)}if(t.endLabelLeft){const r=f[t.id].endLeft;let e=t.x,n=t.y;if(a){const r=i._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",a);e=r.x,n=r.y}r.attr("transform",`translate(${e}, ${n})`)}if(t.endLabelRight){const r=f[t.id].endRight;let e=t.x,n=t.y;if(a){const r=i._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",a);e=r.x,n=r.y}r.attr("transform",`translate(${e}, ${n})`)}}),"positionEdgeLabel"),w=(0,d.K2)(((t,r)=>{const a=t.x,e=t.y,n=Math.abs(r.x-a),s=Math.abs(r.y-e),i=t.width/2,d=t.height/2;return n>=i||s>=d}),"outsideNode"),L=(0,d.K2)(((t,r,a)=>{d.Rm.debug(`intersection calc abc89:\n outsidePoint: ${JSON.stringify(r)}\n insidePoint : ${JSON.stringify(a)}\n node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);const e=t.x,n=t.y,s=Math.abs(e-a.x),i=t.width/2;let o=a.xMath.abs(e-r.x)*l){let t=a.y{d.Rm.debug("abc88 cutPathAtIntersect",t,r);let a=[],e=t[0],n=!1;return t.forEach((t=>{if(w(r,t)||n)e=t,n||a.push(t);else{const s=L(r,e,t);let i=!1;a.forEach((t=>{i=i||t.x===s.x&&t.y===s.y})),a.some((t=>t.x===s.x&&t.y===s.y))||a.push(s),n=!0}})),a}),"cutPathAtIntersect"),_=(0,d.K2)((function(t,r,a,e,s,i,l){let c=a.points;d.Rm.debug("abc88 InsertEdge: edge=",a,"e=",r);let p=!1;const g=i.node(r.v);var m=i.node(r.w);m?.intersect&&g?.intersect&&(c=c.slice(1,a.points.length-1),c.unshift(g.intersect(c[0])),c.push(m.intersect(c[c.length-1]))),a.toCluster&&(d.Rm.debug("to cluster abc88",e[a.toCluster]),c=M(a.points,e[a.toCluster].node),p=!0),a.fromCluster&&(d.Rm.debug("from cluster abc88",e[a.fromCluster]),c=M(c.reverse(),e[a.fromCluster].node).reverse(),p=!0);const k=c.filter((t=>!Number.isNaN(t.y)));let f=o.qrM;!a.curve||"graph"!==s&&"flowchart"!==s||(f=a.curve);const{x:y,y:b}=(0,n.R)(a),u=(0,o.n8j)().x(y).y(b).curve(f);let x;switch(a.thickness){case"normal":x="edge-thickness-normal";break;case"thick":case"invisible":x="edge-thickness-thick";break;default:x=""}switch(a.pattern){case"solid":x+=" edge-pattern-solid";break;case"dotted":x+=" edge-pattern-dotted";break;case"dashed":x+=" edge-pattern-dashed"}const w=t.append("path").attr("d",u(k)).attr("id",a.id).attr("class"," "+x+(a.classes?" "+a.classes:"")).attr("style",a.style);let L="";((0,d.D7)().flowchart.arrowMarkerAbsolute||(0,d.D7)().state.arrowMarkerAbsolute)&&(L=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,L=L.replace(/\(/g,"\\("),L=L.replace(/\)/g,"\\)")),h(w,a,L,l,s);let _={};return p&&(_.updatedPath=c),_.originalPath=a.points,_}),"insertEdge")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/564-301f7508.chunk.min.js b/themes/hugo-geekdoc/static/js/564-301f7508.chunk.min.js new file mode 100644 index 000000000..f75df9a74 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/564-301f7508.chunk.min.js @@ -0,0 +1 @@ +(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[564],{7375:function(t){t.exports=function(){"use strict";return function(t,e){var n=e.prototype,i=n.format;n.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return i.bind(this)(t);var s=this.$utils(),r=(t||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(t){switch(t){case"Q":return Math.ceil((e.$M+1)/3);case"Do":return n.ordinal(e.$D);case"gggg":return e.weekYear();case"GGGG":return e.isoWeekYear();case"wo":return n.ordinal(e.week(),"W");case"w":case"ww":return s.s(e.week(),"w"===t?1:2,"0");case"W":case"WW":return s.s(e.isoWeek(),"W"===t?1:2,"0");case"k":case"kk":return s.s(String(0===e.$H?24:e.$H),"k"===t?1:2,"0");case"X":return Math.floor(e.$d.getTime()/1e3);case"x":return e.$d.getTime();case"z":return"["+e.offsetName()+"]";case"zzz":return"["+e.offsetName("long")+"]";default:return t}}));return i.bind(this)(r)}}}()},445:function(t){t.exports=function(){"use strict";var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},e=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d/,i=/\d\d/,s=/\d\d?/,r=/\d*[^-_:/,()\s\d]+/,a={},o=function(t){return(t=+t)+(t>68?1900:2e3)},c=function(t){return function(e){this[t]=+e}},l=[/[+-]\d\d:?(\d\d)?|Z/,function(t){(this.zone||(this.zone={})).offset=function(t){if(!t)return 0;if("Z"===t)return 0;var e=t.match(/([+-]|\d\d)/g),n=60*e[1]+(+e[2]||0);return 0===n?0:"+"===e[0]?-n:n}(t)}],d=function(t){var e=a[t];return e&&(e.indexOf?e:e.s.concat(e.f))},u=function(t,e){var n,i=a.meridiem;if(i){for(var s=1;s<=24;s+=1)if(t.indexOf(i(s,0,e))>-1){n=s>12;break}}else n=t===(e?"pm":"PM");return n},h={A:[r,function(t){this.afternoon=u(t,!1)}],a:[r,function(t){this.afternoon=u(t,!0)}],Q:[n,function(t){this.month=3*(t-1)+1}],S:[n,function(t){this.milliseconds=100*+t}],SS:[i,function(t){this.milliseconds=10*+t}],SSS:[/\d{3}/,function(t){this.milliseconds=+t}],s:[s,c("seconds")],ss:[s,c("seconds")],m:[s,c("minutes")],mm:[s,c("minutes")],H:[s,c("hours")],h:[s,c("hours")],HH:[s,c("hours")],hh:[s,c("hours")],D:[s,c("day")],DD:[i,c("day")],Do:[r,function(t){var e=a.ordinal,n=t.match(/\d+/);if(this.day=n[0],e)for(var i=1;i<=31;i+=1)e(i).replace(/\[|\]/g,"")===t&&(this.day=i)}],w:[s,c("week")],ww:[i,c("week")],M:[s,c("month")],MM:[i,c("month")],MMM:[r,function(t){var e=d("months"),n=(d("monthsShort")||e.map((function(t){return t.slice(0,3)}))).indexOf(t)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[r,function(t){var e=d("months").indexOf(t)+1;if(e<1)throw new Error;this.month=e%12||e}],Y:[/[+-]?\d+/,c("year")],YY:[i,function(t){this.year=o(t)}],YYYY:[/\d{4}/,c("year")],Z:l,ZZ:l};function f(n){var i,s;i=n,s=a&&a.formats;for(var r=(n=i.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(e,n,i){var r=i&&i.toUpperCase();return n||s[i]||t[i]||s[r].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(t,e,n){return e||n.slice(1)}))}))).match(e),o=r.length,c=0;c-1)return new Date(("X"===e?1e3:1)*t);var s=f(e)(t),r=s.year,a=s.month,o=s.day,c=s.hours,l=s.minutes,d=s.seconds,u=s.milliseconds,h=s.zone,y=s.week,k=new Date,m=o||(r||a?1:k.getDate()),p=r||k.getFullYear(),g=0;r&&!a||(g=a>0?a-1:k.getMonth());var b,T=c||0,v=l||0,x=d||0,w=u||0;return h?new Date(Date.UTC(p,g,m,T,v,x,w+60*h.offset*1e3)):n?new Date(Date.UTC(p,g,m,T,v,x,w)):(b=new Date(p,g,m,T,v,x,w),y&&(b=i(b).week(y).toDate()),b)}catch(t){return new Date("")}}(e,o,i,n),this.init(),u&&!0!==u&&(this.$L=this.locale(u).$L),d&&e!=this.format(o)&&(this.$d=new Date("")),a={}}else if(o instanceof Array)for(var h=o.length,y=1;y<=h;y+=1){r[1]=o[y-1];var k=n.apply(this,r);if(k.isValid()){this.$d=k.$d,this.$L=k.$L,this.init();break}y===h&&(this.$d=new Date(""))}else s.call(this,t)}}}()},8313:function(t){t.exports=function(){"use strict";var t="day";return function(e,n,i){var s=function(e){return e.add(4-e.isoWeekday(),t)},r=n.prototype;r.isoWeekYear=function(){return s(this).year()},r.isoWeek=function(e){if(!this.$utils().u(e))return this.add(7*(e-this.isoWeek()),t);var n,r,a,o=s(this),c=(n=this.isoWeekYear(),a=4-(r=(this.$u?i.utc:i)().year(n).startOf("year")).isoWeekday(),r.isoWeekday()>4&&(a+=7),r.add(a,t));return o.diff(c,"week")+1},r.isoWeekday=function(t){return this.$utils().u(t)?this.day()||7:this.day(this.day()%7?t:t-7)};var a=r.startOf;r.startOf=function(t,e){var n=this.$utils(),i=!!n.u(e)||e;return"isoweek"===n.p(t)?i?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):a.bind(this)(t,e)}}}()},2564:(t,e,n)=>{"use strict";n.d(e,{diagram:()=>Yt});var i=n(5522),s=n(32),r=n(6750),a=n(4353),o=n(8313),c=n(445),l=n(7375),d=n(4852),u=function(){var t=(0,s.K2)((function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n}),"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],n=[1,26],i=[1,27],r=[1,28],a=[1,29],o=[1,30],c=[1,31],l=[1,32],d=[1,33],u=[1,34],h=[1,9],f=[1,10],y=[1,11],k=[1,12],m=[1,13],p=[1,14],g=[1,15],b=[1,16],T=[1,19],v=[1,20],x=[1,21],w=[1,22],_=[1,23],D=[1,25],$=[1,35],C={trace:(0,s.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:(0,s.K2)((function(t,e,n,i,s,r,a){var o=r.length-1;switch(s){case 1:return r[o-1];case 2:case 6:case 7:this.$=[];break;case 3:r[o-1].push(r[o]),this.$=r[o-1];break;case 4:case 5:this.$=r[o];break;case 8:i.setWeekday("monday");break;case 9:i.setWeekday("tuesday");break;case 10:i.setWeekday("wednesday");break;case 11:i.setWeekday("thursday");break;case 12:i.setWeekday("friday");break;case 13:i.setWeekday("saturday");break;case 14:i.setWeekday("sunday");break;case 15:i.setWeekend("friday");break;case 16:i.setWeekend("saturday");break;case 17:i.setDateFormat(r[o].substr(11)),this.$=r[o].substr(11);break;case 18:i.enableInclusiveEndDates(),this.$=r[o].substr(18);break;case 19:i.TopAxis(),this.$=r[o].substr(8);break;case 20:i.setAxisFormat(r[o].substr(11)),this.$=r[o].substr(11);break;case 21:i.setTickInterval(r[o].substr(13)),this.$=r[o].substr(13);break;case 22:i.setExcludes(r[o].substr(9)),this.$=r[o].substr(9);break;case 23:i.setIncludes(r[o].substr(9)),this.$=r[o].substr(9);break;case 24:i.setTodayMarker(r[o].substr(12)),this.$=r[o].substr(12);break;case 27:i.setDiagramTitle(r[o].substr(6)),this.$=r[o].substr(6);break;case 28:this.$=r[o].trim(),i.setAccTitle(this.$);break;case 29:case 30:this.$=r[o].trim(),i.setAccDescription(this.$);break;case 31:i.addSection(r[o].substr(8)),this.$=r[o].substr(8);break;case 33:i.addTask(r[o-1],r[o]),this.$="task";break;case 34:this.$=r[o-1],i.setClickEvent(r[o-1],r[o],null);break;case 35:this.$=r[o-2],i.setClickEvent(r[o-2],r[o-1],r[o]);break;case 36:this.$=r[o-2],i.setClickEvent(r[o-2],r[o-1],null),i.setLink(r[o-2],r[o]);break;case 37:this.$=r[o-3],i.setClickEvent(r[o-3],r[o-2],r[o-1]),i.setLink(r[o-3],r[o]);break;case 38:this.$=r[o-2],i.setClickEvent(r[o-2],r[o],null),i.setLink(r[o-2],r[o-1]);break;case 39:this.$=r[o-3],i.setClickEvent(r[o-3],r[o-1],r[o]),i.setLink(r[o-3],r[o-2]);break;case 40:this.$=r[o-1],i.setLink(r[o-1],r[o]);break;case 41:case 47:this.$=r[o-1]+" "+r[o];break;case 42:case 43:case 45:this.$=r[o-2]+" "+r[o-1]+" "+r[o];break;case 44:case 46:this.$=r[o-3]+" "+r[o-2]+" "+r[o-1]+" "+r[o]}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:n,13:i,14:r,15:a,16:o,17:c,18:l,19:18,20:d,21:u,22:h,23:f,24:y,25:k,26:m,27:p,28:g,29:b,30:T,31:v,33:x,35:w,36:_,37:24,38:D,40:$},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:n,13:i,14:r,15:a,16:o,17:c,18:l,19:18,20:d,21:u,22:h,23:f,24:y,25:k,26:m,27:p,28:g,29:b,30:T,31:v,33:x,35:w,36:_,37:24,38:D,40:$},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:(0,s.K2)((function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)}),"parseError"),parse:(0,s.K2)((function(t){var e=this,n=[0],i=[],r=[null],a=[],o=this.table,c="",l=0,d=0,u=0,h=a.slice.call(arguments,1),f=Object.create(this.lexer),y={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(y.yy[k]=this.yy[k]);f.setInput(t,y.yy),y.yy.lexer=f,y.yy.parser=this,void 0===f.yylloc&&(f.yylloc={});var m=f.yylloc;a.push(m);var p=f.options&&f.options.ranges;function g(){var t;return"number"!=typeof(t=i.pop()||f.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,s.K2)((function(t){n.length=n.length-2*t,r.length=r.length-t,a.length=a.length-t}),"popStack"),(0,s.K2)(g,"lex");for(var b,T,v,x,w,_,D,$,C,S={};;){if(v=n[n.length-1],this.defaultActions[v]?x=this.defaultActions[v]:(null==b&&(b=g()),x=o[v]&&o[v][b]),void 0===x||!x.length||!x[0]){var K;for(_ in C=[],o[v])this.terminals_[_]&&_>2&&C.push("'"+this.terminals_[_]+"'");K=f.showPosition?"Parse error on line "+(l+1)+":\n"+f.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(K,{text:f.match,token:this.terminals_[b]||b,line:f.yylineno,loc:m,expected:C})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+b);switch(x[0]){case 1:n.push(b),r.push(f.yytext),a.push(f.yylloc),n.push(x[1]),b=null,T?(b=T,T=null):(d=f.yyleng,c=f.yytext,l=f.yylineno,m=f.yylloc,u>0&&u--);break;case 2:if(D=this.productions_[x[1]][1],S.$=r[r.length-D],S._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},p&&(S._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),void 0!==(w=this.performAction.apply(S,[c,d,l,y.yy,x[1],r,a].concat(h))))return w;D&&(n=n.slice(0,-1*D*2),r=r.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[x[1]][0]),r.push(S.$),a.push(S._$),$=o[n[n.length-2]][n[n.length-1]],n.push($);break;case 3:return!0}}return!0}),"parse")},S=function(){return{EOF:1,parseError:(0,s.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,s.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,s.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,s.K2)((function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,s.K2)((function(){return this._more=!0,this}),"more"),reject:(0,s.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,s.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,s.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,s.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,s.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,s.K2)((function(t,e){var n,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1}),"test_match"),next:(0,s.K2)((function(){if(this.done)return this.EOF;var t,e,n,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;re[0].length)){if(e=n,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,s[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,s.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,s.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,s.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,s.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,s.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,s.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,s.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,s.K2)((function(t,e,n,i){switch(n){case 0:return this.begin("open_directive"),"open_directive";case 1:return this.begin("acc_title"),31;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),33;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:case 15:case 18:case 21:case 24:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:case 9:case 10:case 12:case 13:break;case 11:return 10;case 14:this.begin("href");break;case 16:return 43;case 17:this.begin("callbackname");break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 22:return 42;case 23:this.begin("click");break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}}),"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}}}();function K(){this.yy={}}return C.lexer=S,(0,s.K2)(K,"Parser"),K.prototype=C,C.Parser=K,new K}();u.parser=u;var h=u;a.extend(o),a.extend(c),a.extend(l);var f,y,k={friday:5,saturday:6},m="",p="",g=void 0,b="",T=[],v=[],x=new Map,w=[],_=[],D="",$="",C=["active","done","crit","milestone"],S=[],K=!1,E=!1,M="sunday",A="saturday",L=0,Y=(0,s.K2)((function(){w=[],_=[],D="",S=[],ht=0,f=void 0,y=void 0,mt=[],m="",p="",$="",g=void 0,b="",T=[],v=[],K=!1,E=!1,L=0,x=new Map,(0,s.IU)(),M="sunday",A="saturday"}),"clear"),I=(0,s.K2)((function(t){p=t}),"setAxisFormat"),W=(0,s.K2)((function(){return p}),"getAxisFormat"),F=(0,s.K2)((function(t){g=t}),"setTickInterval"),O=(0,s.K2)((function(){return g}),"getTickInterval"),P=(0,s.K2)((function(t){b=t}),"setTodayMarker"),B=(0,s.K2)((function(){return b}),"getTodayMarker"),z=(0,s.K2)((function(t){m=t}),"setDateFormat"),N=(0,s.K2)((function(){K=!0}),"enableInclusiveEndDates"),G=(0,s.K2)((function(){return K}),"endDatesAreInclusive"),H=(0,s.K2)((function(){E=!0}),"enableTopAxis"),R=(0,s.K2)((function(){return E}),"topAxisEnabled"),j=(0,s.K2)((function(t){$=t}),"setDisplayMode"),U=(0,s.K2)((function(){return $}),"getDisplayMode"),V=(0,s.K2)((function(){return m}),"getDateFormat"),Z=(0,s.K2)((function(t){T=t.toLowerCase().split(/[\s,]+/)}),"setIncludes"),X=(0,s.K2)((function(){return T}),"getIncludes"),q=(0,s.K2)((function(t){v=t.toLowerCase().split(/[\s,]+/)}),"setExcludes"),Q=(0,s.K2)((function(){return v}),"getExcludes"),J=(0,s.K2)((function(){return x}),"getLinks"),tt=(0,s.K2)((function(t){D=t,w.push(t)}),"addSection"),et=(0,s.K2)((function(){return w}),"getSections"),nt=(0,s.K2)((function(){let t=vt(),e=0;for(;!t&&e<10;)t=vt(),e++;return _=mt}),"getTasks"),it=(0,s.K2)((function(t,e,n,i){return!i.includes(t.format(e.trim()))&&(!(!n.includes("weekends")||t.isoWeekday()!==k[A]&&t.isoWeekday()!==k[A]+1)||!!n.includes(t.format("dddd").toLowerCase())||n.includes(t.format(e.trim())))}),"isInvalidDate"),st=(0,s.K2)((function(t){M=t}),"setWeekday"),rt=(0,s.K2)((function(){return M}),"getWeekday"),at=(0,s.K2)((function(t){A=t}),"setWeekend"),ot=(0,s.K2)((function(t,e,n,i){if(!n.length||t.manualEndTime)return;let s,r;s=t.startTime instanceof Date?a(t.startTime):a(t.startTime,e,!0),s=s.add(1,"d"),r=t.endTime instanceof Date?a(t.endTime):a(t.endTime,e,!0);const[o,c]=ct(s,r,e,n,i);t.endTime=o.toDate(),t.renderEndTime=c}),"checkTaskDates"),ct=(0,s.K2)((function(t,e,n,i,s){let r=!1,a=null;for(;t<=e;)r||(a=e.toDate()),r=it(t,n,i,s),r&&(e=e.add(1,"d")),t=t.add(1,"d");return[e,a]}),"fixTaskDates"),lt=(0,s.K2)((function(t,e,n){n=n.trim();const i=/^after\s+(?[\d\w- ]+)/.exec(n);if(null!==i){let t=null;for(const e of i.groups.ids.split(" ")){let n=bt(e);void 0!==n&&(!t||n.endTime>t.endTime)&&(t=n)}if(t)return t.endTime;const e=new Date;return e.setHours(0,0,0,0),e}let r=a(n,e.trim(),!0);if(r.isValid())return r.toDate();{s.Rm.debug("Invalid date:"+n),s.Rm.debug("With date format:"+e.trim());const t=new Date(n);if(void 0===t||isNaN(t.getTime())||t.getFullYear()<-1e4||t.getFullYear()>1e4)throw new Error("Invalid date:"+n);return t}}),"getStartDate"),dt=(0,s.K2)((function(t){const e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return null!==e?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]}),"parseDuration"),ut=(0,s.K2)((function(t,e,n,i=!1){n=n.trim();const s=/^until\s+(?[\d\w- ]+)/.exec(n);if(null!==s){let t=null;for(const e of s.groups.ids.split(" ")){let n=bt(e);void 0!==n&&(!t||n.startTime{window.open(n,"_self")})),x.set(t,n))})),wt(t,"clickable")}),"setLink"),wt=(0,s.K2)((function(t,e){t.split(",").forEach((function(t){let n=bt(t);void 0!==n&&n.classes.push(e)}))}),"setClass"),_t=(0,s.K2)((function(t,e,n){if("loose"!==(0,s.D7)().securityLevel)return;if(void 0===e)return;let r=[];if("string"==typeof n){r=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t{i._K.runFunc(e,...r)}))}),"setClickFun"),Dt=(0,s.K2)((function(t,e){S.push((function(){const n=document.querySelector(`[id="${t}"]`);null!==n&&n.addEventListener("click",(function(){e()}))}),(function(){const n=document.querySelector(`[id="${t}-text"]`);null!==n&&n.addEventListener("click",(function(){e()}))}))}),"pushFun"),$t=(0,s.K2)((function(t,e,n){t.split(",").forEach((function(t){_t(t,e,n)})),wt(t,"clickable")}),"setClickEvent"),Ct=(0,s.K2)((function(t){S.forEach((function(e){e(t)}))}),"bindFunctions"),St={getConfig:(0,s.K2)((()=>(0,s.D7)().gantt),"getConfig"),clear:Y,setDateFormat:z,getDateFormat:V,enableInclusiveEndDates:N,endDatesAreInclusive:G,enableTopAxis:H,topAxisEnabled:R,setAxisFormat:I,getAxisFormat:W,setTickInterval:F,getTickInterval:O,setTodayMarker:P,getTodayMarker:B,setAccTitle:s.SV,getAccTitle:s.iN,setDiagramTitle:s.ke,getDiagramTitle:s.ab,setDisplayMode:j,getDisplayMode:U,setAccDescription:s.EI,getAccDescription:s.m7,addSection:tt,getSections:et,getTasks:nt,addTask:gt,findTaskById:bt,addTaskOrg:Tt,setIncludes:Z,getIncludes:X,setExcludes:q,getExcludes:Q,setClickEvent:$t,setLink:xt,getLinks:J,bindFunctions:Ct,parseDuration:dt,isInvalidDate:it,setWeekday:st,getWeekday:rt,setWeekend:at};function Kt(t,e,n){let i=!0;for(;i;)i=!1,n.forEach((function(n){const s=new RegExp("^\\s*"+n+"\\s*$");t[0].match(s)&&(e[n]=!0,t.shift(1),i=!0)}))}(0,s.K2)(Kt,"getTaskTags");var Et,Mt=(0,s.K2)((function(){s.Rm.debug("Something is calling, setConf, remove the call")}),"setConf"),At={monday:d.ABi,tuesday:d.PGu,wednesday:d.GuW,thursday:d.Mol,friday:d.TUC,saturday:d.rGn,sunday:d.YPH},Lt=(0,s.K2)(((t,e)=>{let n=[...t].map((()=>-1/0)),i=[...t].sort(((t,e)=>t.startTime-e.startTime||t.order-e.order)),s=0;for(const t of i)for(let i=0;i=n[i]){n[i]=t.endTime,t.order=i+e,i>s&&(s=i);break}return s}),"getMaxIntersections"),Yt={parser:h,db:St,renderer:{setConf:Mt,draw:(0,s.K2)((function(t,e,n,i){const r=(0,s.D7)().gantt,o=(0,s.D7)().securityLevel;let c;"sandbox"===o&&(c=(0,d.Ltv)("#i"+e));const l="sandbox"===o?(0,d.Ltv)(c.nodes()[0].contentDocument.body):(0,d.Ltv)("body"),u="sandbox"===o?c.nodes()[0].contentDocument:document,h=u.getElementById(e);void 0===(Et=h.parentElement.offsetWidth)&&(Et=1200),void 0!==r.useWidth&&(Et=r.useWidth);const f=i.db.getTasks();let y=[];for(const t of f)y.push(t.type);y=$(y);const k={};let m=2*r.topPadding;if("compact"===i.db.getDisplayMode()||"compact"===r.displayMode){const t={};for(const e of f)void 0===t[e.section]?t[e.section]=[e]:t[e.section].push(e);let e=0;for(const n of Object.keys(t)){const i=Lt(t[n],e)+1;e+=i,m+=i*(r.barHeight+r.barGap),k[n]=i}}else{m+=f.length*(r.barHeight+r.barGap);for(const t of y)k[t]=f.filter((e=>e.type===t)).length}h.setAttribute("viewBox","0 0 "+Et+" "+m);const p=l.select(`[id="${e}"]`),g=(0,d.w7C)().domain([(0,d.jkA)(f,(function(t){return t.startTime})),(0,d.T9B)(f,(function(t){return t.endTime}))]).rangeRound([0,Et-r.leftPadding-r.rightPadding]);function b(t,e){const n=t.startTime,i=e.startTime;let s=0;return n>i?s=1:nt.order)))].map((e=>t.find((t=>t.order===e))));p.append("g").selectAll("rect").data(h).enter().append("rect").attr("x",0).attr("y",(function(t,e){return t.order*n+a-2})).attr("width",(function(){return u-r.rightPadding/2})).attr("height",n).attr("class",(function(t){for(const[e,n]of y.entries())if(t.type===n)return"section section"+e%r.numberSectionStyles;return"section section0"}));const f=p.append("g").selectAll("rect").data(t).enter(),k=i.db.getLinks();if(f.append("rect").attr("id",(function(t){return t.id})).attr("rx",3).attr("ry",3).attr("x",(function(t){return t.milestone?g(t.startTime)+o+.5*(g(t.endTime)-g(t.startTime))-.5*c:g(t.startTime)+o})).attr("y",(function(t,e){return t.order*n+a})).attr("width",(function(t){return t.milestone?c:g(t.renderEndTime||t.endTime)-g(t.startTime)})).attr("height",c).attr("transform-origin",(function(t,e){return e=t.order,(g(t.startTime)+o+.5*(g(t.endTime)-g(t.startTime))).toString()+"px "+(e*n+a+.5*c).toString()+"px"})).attr("class",(function(t){let e="";t.classes.length>0&&(e=t.classes.join(" "));let n=0;for(const[e,i]of y.entries())t.type===i&&(n=e%r.numberSectionStyles);let i="";return t.active?t.crit?i+=" activeCrit":i=" active":t.done?i=t.crit?" doneCrit":" done":t.crit&&(i+=" crit"),0===i.length&&(i=" task"),t.milestone&&(i=" milestone "+i),i+=n,i+=" "+e,"task"+i})),f.append("text").attr("id",(function(t){return t.id+"-text"})).text((function(t){return t.task})).attr("font-size",r.fontSize).attr("x",(function(t){let e=g(t.startTime),n=g(t.renderEndTime||t.endTime);t.milestone&&(e+=.5*(g(t.endTime)-g(t.startTime))-.5*c),t.milestone&&(n=e+c);const i=this.getBBox().width;return i>n-e?n+i+1.5*r.leftPadding>u?e+o-5:n+o+5:(n-e)/2+e+o})).attr("y",(function(t,e){return t.order*n+r.barHeight/2+(r.fontSize/2-2)+a})).attr("text-height",c).attr("class",(function(t){const e=g(t.startTime);let n=g(t.endTime);t.milestone&&(n=e+c);const i=this.getBBox().width;let s="";t.classes.length>0&&(s=t.classes.join(" "));let a=0;for(const[e,n]of y.entries())t.type===n&&(a=e%r.numberSectionStyles);let o="";return t.active&&(o=t.crit?"activeCritText"+a:"activeText"+a),t.done?o=t.crit?o+" doneCritText"+a:o+" doneText"+a:t.crit&&(o=o+" critText"+a),t.milestone&&(o+=" milestoneText"),i>n-e?n+i+1.5*r.leftPadding>u?s+" taskTextOutsideLeft taskTextOutside"+a+" "+o:s+" taskTextOutsideRight taskTextOutside"+a+" "+o+" width-"+i:s+" taskText taskText"+a+" "+o+" width-"+i})),"sandbox"===(0,s.D7)().securityLevel){let t;t=(0,d.Ltv)("#i"+e);const n=t.nodes()[0].contentDocument;f.filter((function(t){return k.has(t.id)})).each((function(t){var e=n.querySelector("#"+t.id),i=n.querySelector("#"+t.id+"-text");const s=e.parentNode;var r=n.createElement("a");r.setAttribute("xlink:href",k.get(t.id)),r.setAttribute("target","_top"),s.appendChild(r),r.appendChild(e),r.appendChild(i)}))}}function x(t,e,n,o,c,l,d,u){if(0===d.length&&0===u.length)return;let h,f;for(const{startTime:t,endTime:e}of l)(void 0===h||tf)&&(f=e);if(!h||!f)return;if(a(f).diff(a(h),"year")>5)return void s.Rm.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");const y=i.db.getDateFormat(),k=[];let m=null,b=a(h);for(;b.valueOf()<=f;)i.db.isInvalidDate(b,y,d,u)?m?m.end=b:m={start:b,end:b}:m&&(k.push(m),m=null),b=b.add(1,"d");p.append("g").selectAll("rect").data(k).enter().append("rect").attr("id",(function(t){return"exclude-"+t.start.format("YYYY-MM-DD")})).attr("x",(function(t){return g(t.start)+n})).attr("y",r.gridLineStartPadding).attr("width",(function(t){const e=t.end.add(1,"day");return g(e)-g(t.start)})).attr("height",c-e-r.gridLineStartPadding).attr("transform-origin",(function(e,i){return(g(e.start)+n+.5*(g(e.end)-g(e.start))).toString()+"px "+(i*t+.5*c).toString()+"px"})).attr("class","exclude-range")}function w(t,e,n,s){let a=(0,d.l78)(g).tickSize(-s+e+r.gridLineStartPadding).tickFormat((0,d.DCK)(i.db.getAxisFormat()||r.axisFormat||"%Y-%m-%d"));const o=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(i.db.getTickInterval()||r.tickInterval);if(null!==o){const t=o[1],e=o[2],n=i.db.getWeekday()||r.weekday;switch(e){case"millisecond":a.ticks(d.t6C.every(t));break;case"second":a.ticks(d.ucG.every(t));break;case"minute":a.ticks(d.wXd.every(t));break;case"hour":a.ticks(d.Agd.every(t));break;case"day":a.ticks(d.UAC.every(t));break;case"week":a.ticks(At[n].every(t));break;case"month":a.ticks(d.Ui6.every(t))}}if(p.append("g").attr("class","grid").attr("transform","translate("+t+", "+(s-50)+")").call(a).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),i.db.topAxisEnabled()||r.topAxis){let n=(0,d.tlR)(g).tickSize(-s+e+r.gridLineStartPadding).tickFormat((0,d.DCK)(i.db.getAxisFormat()||r.axisFormat||"%Y-%m-%d"));if(null!==o){const t=o[1],e=o[2],s=i.db.getWeekday()||r.weekday;switch(e){case"millisecond":n.ticks(d.t6C.every(t));break;case"second":n.ticks(d.ucG.every(t));break;case"minute":n.ticks(d.wXd.every(t));break;case"hour":n.ticks(d.Agd.every(t));break;case"day":n.ticks(d.UAC.every(t));break;case"week":n.ticks(At[s].every(t));break;case"month":n.ticks(d.Ui6.every(t))}}p.append("g").attr("class","grid").attr("transform","translate("+t+", "+e+")").call(n).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function _(t,e){let n=0;const i=Object.keys(k).map((t=>[t,k[t]]));p.append("g").selectAll("text").data(i).enter().append((function(t){const e=t[0].split(s.Y2.lineBreakRegex),n=-(e.length-1)/2,i=u.createElementNS("http://www.w3.org/2000/svg","text");i.setAttribute("dy",n+"em");for(const[t,n]of e.entries()){const e=u.createElementNS("http://www.w3.org/2000/svg","tspan");e.setAttribute("alignment-baseline","central"),e.setAttribute("x","10"),t>0&&e.setAttribute("dy","1em"),e.textContent=n,i.appendChild(e)}return i})).attr("x",10).attr("y",(function(s,r){if(!(r>0))return s[1]*t/2+e;for(let a=0;a`\n .mermaid-main-font {\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n\n .exclude-range {\n fill: ${t.excludeBkgColor};\n }\n\n .section {\n stroke: none;\n opacity: 0.2;\n }\n\n .section0 {\n fill: ${t.sectionBkgColor};\n }\n\n .section2 {\n fill: ${t.sectionBkgColor2};\n }\n\n .section1,\n .section3 {\n fill: ${t.altSectionBkgColor};\n opacity: 0.2;\n }\n\n .sectionTitle0 {\n fill: ${t.titleColor};\n }\n\n .sectionTitle1 {\n fill: ${t.titleColor};\n }\n\n .sectionTitle2 {\n fill: ${t.titleColor};\n }\n\n .sectionTitle3 {\n fill: ${t.titleColor};\n }\n\n .sectionTitle {\n text-anchor: start;\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n\n\n /* Grid and axis */\n\n .grid .tick {\n stroke: ${t.gridColor};\n opacity: 0.8;\n shape-rendering: crispEdges;\n }\n\n .grid .tick text {\n font-family: ${t.fontFamily};\n fill: ${t.textColor};\n }\n\n .grid path {\n stroke-width: 0;\n }\n\n\n /* Today line */\n\n .today {\n fill: none;\n stroke: ${t.todayLineColor};\n stroke-width: 2px;\n }\n\n\n /* Task styling */\n\n /* Default task */\n\n .task {\n stroke-width: 2;\n }\n\n .taskText {\n text-anchor: middle;\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n\n .taskTextOutsideRight {\n fill: ${t.taskTextDarkColor};\n text-anchor: start;\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n\n .taskTextOutsideLeft {\n fill: ${t.taskTextDarkColor};\n text-anchor: end;\n }\n\n\n /* Special case clickable */\n\n .task.clickable {\n cursor: pointer;\n }\n\n .taskText.clickable {\n cursor: pointer;\n fill: ${t.taskTextClickableColor} !important;\n font-weight: bold;\n }\n\n .taskTextOutsideLeft.clickable {\n cursor: pointer;\n fill: ${t.taskTextClickableColor} !important;\n font-weight: bold;\n }\n\n .taskTextOutsideRight.clickable {\n cursor: pointer;\n fill: ${t.taskTextClickableColor} !important;\n font-weight: bold;\n }\n\n\n /* Specific task settings for the sections*/\n\n .taskText0,\n .taskText1,\n .taskText2,\n .taskText3 {\n fill: ${t.taskTextColor};\n }\n\n .task0,\n .task1,\n .task2,\n .task3 {\n fill: ${t.taskBkgColor};\n stroke: ${t.taskBorderColor};\n }\n\n .taskTextOutside0,\n .taskTextOutside2\n {\n fill: ${t.taskTextOutsideColor};\n }\n\n .taskTextOutside1,\n .taskTextOutside3 {\n fill: ${t.taskTextOutsideColor};\n }\n\n\n /* Active task */\n\n .active0,\n .active1,\n .active2,\n .active3 {\n fill: ${t.activeTaskBkgColor};\n stroke: ${t.activeTaskBorderColor};\n }\n\n .activeText0,\n .activeText1,\n .activeText2,\n .activeText3 {\n fill: ${t.taskTextDarkColor} !important;\n }\n\n\n /* Completed task */\n\n .done0,\n .done1,\n .done2,\n .done3 {\n stroke: ${t.doneTaskBorderColor};\n fill: ${t.doneTaskBkgColor};\n stroke-width: 2;\n }\n\n .doneText0,\n .doneText1,\n .doneText2,\n .doneText3 {\n fill: ${t.taskTextDarkColor} !important;\n }\n\n\n /* Tasks on the critical line */\n\n .crit0,\n .crit1,\n .crit2,\n .crit3 {\n stroke: ${t.critBorderColor};\n fill: ${t.critBkgColor};\n stroke-width: 2;\n }\n\n .activeCrit0,\n .activeCrit1,\n .activeCrit2,\n .activeCrit3 {\n stroke: ${t.critBorderColor};\n fill: ${t.activeTaskBkgColor};\n stroke-width: 2;\n }\n\n .doneCrit0,\n .doneCrit1,\n .doneCrit2,\n .doneCrit3 {\n stroke: ${t.critBorderColor};\n fill: ${t.doneTaskBkgColor};\n stroke-width: 2;\n cursor: pointer;\n shape-rendering: crispEdges;\n }\n\n .milestone {\n transform: rotate(45deg) scale(0.8,0.8);\n }\n\n .milestoneText {\n font-style: italic;\n }\n .doneCritText0,\n .doneCritText1,\n .doneCritText2,\n .doneCritText3 {\n fill: ${t.taskTextDarkColor} !important;\n }\n\n .activeCritText0,\n .activeCritText1,\n .activeCritText2,\n .activeCritText3 {\n fill: ${t.taskTextDarkColor} !important;\n }\n\n .titleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.titleColor||t.textColor};\n font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/573-ba5e956a.chunk.min.js b/themes/hugo-geekdoc/static/js/573-ba5e956a.chunk.min.js new file mode 100644 index 000000000..aff26bb60 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/573-ba5e956a.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[573],{6573:(e,t,i)=>{i.d(t,{diagram:()=>Y});var n=i(32),r=i(4852),s=i(567),a=i(697),l=function(){var e=(0,n.K2)((function(e,t,i,n){for(i=i||{},n=e.length;n--;i[e[n]]=t);return i}),"o"),t=[1,3],i=[1,4],r=[1,5],s=[1,6],a=[5,6,8,9,11,13,31,32,33,34,35,36,44,62,63],l=[1,18],o=[2,7],h=[1,22],c=[1,23],u=[1,24],d=[1,25],y=[1,26],p=[1,27],_=[1,20],g=[1,28],E=[1,29],R=[62,63],m=[5,8,9,11,13,31,32,33,34,35,36,44,51,53,62,63],f=[1,47],I=[1,48],S=[1,49],k=[1,50],N=[1,51],b=[1,52],T=[1,53],x=[53,54],w=[1,64],A=[1,60],q=[1,61],v=[1,62],K=[1,63],$=[1,65],O=[1,69],L=[1,70],C=[1,67],M=[1,68],F=[5,8,9,11,13,31,32,33,34,35,36,44,62,63],D={trace:(0,n.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,requirementType:17,requirementName:18,STRUCT_START:19,requirementBody:20,ID:21,COLONSEP:22,id:23,TEXT:24,text:25,RISK:26,riskLevel:27,VERIFYMTHD:28,verifyType:29,STRUCT_STOP:30,REQUIREMENT:31,FUNCTIONAL_REQUIREMENT:32,INTERFACE_REQUIREMENT:33,PERFORMANCE_REQUIREMENT:34,PHYSICAL_REQUIREMENT:35,DESIGN_CONSTRAINT:36,LOW_RISK:37,MED_RISK:38,HIGH_RISK:39,VERIFY_ANALYSIS:40,VERIFY_DEMONSTRATION:41,VERIFY_INSPECTION:42,VERIFY_TEST:43,ELEMENT:44,elementName:45,elementBody:46,TYPE:47,type:48,DOCREF:49,ref:50,END_ARROW_L:51,relationship:52,LINE:53,END_ARROW_R:54,CONTAINS:55,COPIES:56,DERIVES:57,SATISFIES:58,VERIFIES:59,REFINES:60,TRACES:61,unqString:62,qString:63,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",19:"STRUCT_START",21:"ID",22:"COLONSEP",24:"TEXT",26:"RISK",28:"VERIFYMTHD",30:"STRUCT_STOP",31:"REQUIREMENT",32:"FUNCTIONAL_REQUIREMENT",33:"INTERFACE_REQUIREMENT",34:"PERFORMANCE_REQUIREMENT",35:"PHYSICAL_REQUIREMENT",36:"DESIGN_CONSTRAINT",37:"LOW_RISK",38:"MED_RISK",39:"HIGH_RISK",40:"VERIFY_ANALYSIS",41:"VERIFY_DEMONSTRATION",42:"VERIFY_INSPECTION",43:"VERIFY_TEST",44:"ELEMENT",47:"TYPE",49:"DOCREF",51:"END_ARROW_L",53:"LINE",54:"END_ARROW_R",55:"CONTAINS",56:"COPIES",57:"DERIVES",58:"SATISFIES",59:"VERIFIES",60:"REFINES",61:"TRACES",62:"unqString",63:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[14,5],[20,5],[20,5],[20,5],[20,5],[20,2],[20,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[27,1],[27,1],[27,1],[29,1],[29,1],[29,1],[29,1],[15,5],[46,5],[46,5],[46,2],[46,1],[16,5],[16,5],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[18,1],[18,1],[23,1],[23,1],[25,1],[25,1],[45,1],[45,1],[48,1],[48,1],[50,1],[50,1]],performAction:(0,n.K2)((function(e,t,i,n,r,s,a){var l=s.length-1;switch(r){case 4:this.$=s[l].trim(),n.setAccTitle(this.$);break;case 5:case 6:this.$=s[l].trim(),n.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:n.addRequirement(s[l-3],s[l-4]);break;case 14:n.setNewReqId(s[l-2]);break;case 15:n.setNewReqText(s[l-2]);break;case 16:n.setNewReqRisk(s[l-2]);break;case 17:n.setNewReqVerifyMethod(s[l-2]);break;case 20:this.$=n.RequirementType.REQUIREMENT;break;case 21:this.$=n.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 22:this.$=n.RequirementType.INTERFACE_REQUIREMENT;break;case 23:this.$=n.RequirementType.PERFORMANCE_REQUIREMENT;break;case 24:this.$=n.RequirementType.PHYSICAL_REQUIREMENT;break;case 25:this.$=n.RequirementType.DESIGN_CONSTRAINT;break;case 26:this.$=n.RiskLevel.LOW_RISK;break;case 27:this.$=n.RiskLevel.MED_RISK;break;case 28:this.$=n.RiskLevel.HIGH_RISK;break;case 29:this.$=n.VerifyType.VERIFY_ANALYSIS;break;case 30:this.$=n.VerifyType.VERIFY_DEMONSTRATION;break;case 31:this.$=n.VerifyType.VERIFY_INSPECTION;break;case 32:this.$=n.VerifyType.VERIFY_TEST;break;case 33:n.addElement(s[l-3]);break;case 34:n.setNewElementType(s[l-2]);break;case 35:n.setNewElementDocRef(s[l-2]);break;case 38:n.addRelationship(s[l-2],s[l],s[l-4]);break;case 39:n.addRelationship(s[l-2],s[l-4],s[l]);break;case 40:this.$=n.Relationships.CONTAINS;break;case 41:this.$=n.Relationships.COPIES;break;case 42:this.$=n.Relationships.DERIVES;break;case 43:this.$=n.Relationships.SATISFIES;break;case 44:this.$=n.Relationships.VERIFIES;break;case 45:this.$=n.Relationships.REFINES;break;case 46:this.$=n.Relationships.TRACES}}),"anonymous"),table:[{3:1,4:2,6:t,9:i,11:r,13:s},{1:[3]},{3:8,4:2,5:[1,7],6:t,9:i,11:r,13:s},{5:[1,9]},{10:[1,10]},{12:[1,11]},e(a,[2,6]),{3:12,4:2,6:t,9:i,11:r,13:s},{1:[2,2]},{4:17,5:l,7:13,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},e(a,[2,4]),e(a,[2,5]),{1:[2,1]},{8:[1,30]},{4:17,5:l,7:31,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{4:17,5:l,7:32,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{4:17,5:l,7:33,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{4:17,5:l,7:34,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{4:17,5:l,7:35,8:o,9:i,11:r,13:s,14:14,15:15,16:16,17:19,23:21,31:h,32:c,33:u,34:d,35:y,36:p,44:_,62:g,63:E},{18:36,62:[1,37],63:[1,38]},{45:39,62:[1,40],63:[1,41]},{51:[1,42],53:[1,43]},e(R,[2,20]),e(R,[2,21]),e(R,[2,22]),e(R,[2,23]),e(R,[2,24]),e(R,[2,25]),e(m,[2,49]),e(m,[2,50]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{19:[1,44]},{19:[2,47]},{19:[2,48]},{19:[1,45]},{19:[2,53]},{19:[2,54]},{52:46,55:f,56:I,57:S,58:k,59:N,60:b,61:T},{52:54,55:f,56:I,57:S,58:k,59:N,60:b,61:T},{5:[1,55]},{5:[1,56]},{53:[1,57]},e(x,[2,40]),e(x,[2,41]),e(x,[2,42]),e(x,[2,43]),e(x,[2,44]),e(x,[2,45]),e(x,[2,46]),{54:[1,58]},{5:w,20:59,21:A,24:q,26:v,28:K,30:$},{5:O,30:L,46:66,47:C,49:M},{23:71,62:g,63:E},{23:72,62:g,63:E},e(F,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:w,20:77,21:A,24:q,26:v,28:K,30:$},e(F,[2,19]),e(F,[2,33]),{22:[1,78]},{22:[1,79]},{5:O,30:L,46:80,47:C,49:M},e(F,[2,37]),e(F,[2,38]),e(F,[2,39]),{23:81,62:g,63:E},{25:82,62:[1,83],63:[1,84]},{27:85,37:[1,86],38:[1,87],39:[1,88]},{29:89,40:[1,90],41:[1,91],42:[1,92],43:[1,93]},e(F,[2,18]),{48:94,62:[1,95],63:[1,96]},{50:97,62:[1,98],63:[1,99]},e(F,[2,36]),{5:[1,100]},{5:[1,101]},{5:[2,51]},{5:[2,52]},{5:[1,102]},{5:[2,26]},{5:[2,27]},{5:[2,28]},{5:[1,103]},{5:[2,29]},{5:[2,30]},{5:[2,31]},{5:[2,32]},{5:[1,104]},{5:[2,55]},{5:[2,56]},{5:[1,105]},{5:[2,57]},{5:[2,58]},{5:w,20:106,21:A,24:q,26:v,28:K,30:$},{5:w,20:107,21:A,24:q,26:v,28:K,30:$},{5:w,20:108,21:A,24:q,26:v,28:K,30:$},{5:w,20:109,21:A,24:q,26:v,28:K,30:$},{5:O,30:L,46:110,47:C,49:M},{5:O,30:L,46:111,47:C,49:M},e(F,[2,14]),e(F,[2,15]),e(F,[2,16]),e(F,[2,17]),e(F,[2,34]),e(F,[2,35])],defaultActions:{8:[2,2],12:[2,1],30:[2,3],31:[2,8],32:[2,9],33:[2,10],34:[2,11],35:[2,12],37:[2,47],38:[2,48],40:[2,53],41:[2,54],83:[2,51],84:[2,52],86:[2,26],87:[2,27],88:[2,28],90:[2,29],91:[2,30],92:[2,31],93:[2,32],95:[2,55],96:[2,56],98:[2,57],99:[2,58]},parseError:(0,n.K2)((function(e,t){if(!t.recoverable){var i=new Error(e);throw i.hash=t,i}this.trace(e)}),"parseError"),parse:(0,n.K2)((function(e){var t=this,i=[0],r=[],s=[null],a=[],l=this.table,o="",h=0,c=0,u=0,d=a.slice.call(arguments,1),y=Object.create(this.lexer),p={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(p.yy[_]=this.yy[_]);y.setInput(e,p.yy),p.yy.lexer=y,p.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var g=y.yylloc;a.push(g);var E=y.options&&y.options.ranges;function R(){var e;return"number"!=typeof(e=r.pop()||y.lex()||1)&&(e instanceof Array&&(e=(r=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,n.K2)((function(e){i.length=i.length-2*e,s.length=s.length-e,a.length=a.length-e}),"popStack"),(0,n.K2)(R,"lex");for(var m,f,I,S,k,N,b,T,x,w={};;){if(I=i[i.length-1],this.defaultActions[I]?S=this.defaultActions[I]:(null==m&&(m=R()),S=l[I]&&l[I][m]),void 0===S||!S.length||!S[0]){var A;for(N in x=[],l[I])this.terminals_[N]&&N>2&&x.push("'"+this.terminals_[N]+"'");A=y.showPosition?"Parse error on line "+(h+1)+":\n"+y.showPosition()+"\nExpecting "+x.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(h+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(A,{text:y.match,token:this.terminals_[m]||m,line:y.yylineno,loc:g,expected:x})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+I+", token: "+m);switch(S[0]){case 1:i.push(m),s.push(y.yytext),a.push(y.yylloc),i.push(S[1]),m=null,f?(m=f,f=null):(c=y.yyleng,o=y.yytext,h=y.yylineno,g=y.yylloc,u>0&&u--);break;case 2:if(b=this.productions_[S[1]][1],w.$=s[s.length-b],w._$={first_line:a[a.length-(b||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(b||1)].first_column,last_column:a[a.length-1].last_column},E&&(w._$.range=[a[a.length-(b||1)].range[0],a[a.length-1].range[1]]),void 0!==(k=this.performAction.apply(w,[o,c,h,p.yy,S[1],s,a].concat(d))))return k;b&&(i=i.slice(0,-1*b*2),s=s.slice(0,-1*b),a=a.slice(0,-1*b)),i.push(this.productions_[S[1]][0]),s.push(w.$),a.push(w._$),T=l[i[i.length-2]][i[i.length-1]],i.push(T);break;case 3:return!0}}return!0}),"parse")},P=function(){return{EOF:1,parseError:(0,n.K2)((function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)}),"parseError"),setInput:(0,n.K2)((function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,n.K2)((function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e}),"input"),unput:(0,n.K2)((function(e){var t=e.length,i=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===n.length?this.yylloc.first_column:0)+n[n.length-i.length].length-i[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,n.K2)((function(){return this._more=!0,this}),"more"),reject:(0,n.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,n.K2)((function(e){this.unput(this.match.slice(e))}),"less"),pastInput:(0,n.K2)((function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,n.K2)((function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,n.K2)((function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"}),"showPosition"),test_match:(0,n.K2)((function(e,t){var i,n,r;if(this.options.backtrack_lexer&&(r={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(r.yylloc.range=this.yylloc.range.slice(0))),(n=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],i=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack){for(var s in r)this[s]=r[s];return!1}return!1}),"test_match"),next:(0,n.K2)((function(){if(this.done)return this.EOF;var e,t,i,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),s=0;st[0].length)){if(t=i,n=s,this.options.backtrack_lexer){if(!1!==(e=this.test_match(i,r[s])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,r[n]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,n.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,n.K2)((function(e){this.conditionStack.push(e)}),"begin"),popState:(0,n.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,n.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,n.K2)((function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"}),"topState"),pushState:(0,n.K2)((function(e){this.begin(e)}),"pushState"),stateStackSize:(0,n.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,n.K2)((function(e,t,i,n){switch(i){case 0:return"title";case 1:return this.begin("acc_title"),9;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),11;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:case 48:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 5;case 9:case 10:case 11:break;case 12:return 8;case 13:return 6;case 14:return 19;case 15:return 30;case 16:return 22;case 17:return 21;case 18:return 24;case 19:return 26;case 20:return 28;case 21:return 31;case 22:return 32;case 23:return 33;case 24:return 34;case 25:return 35;case 26:return 36;case 27:return 37;case 28:return 38;case 29:return 39;case 30:return 40;case 31:return 41;case 32:return 42;case 33:return 43;case 34:return 44;case 35:return 55;case 36:return 56;case 37:return 57;case 38:return 58;case 39:return 59;case 40:return 60;case 41:return 61;case 42:return 47;case 43:return 49;case 44:return 51;case 45:return 54;case 46:return 53;case 47:this.begin("string");break;case 49:return"qString";case 50:return t.yytext=t.yytext.trim(),62}}),"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[48,49],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,50],inclusive:!0}}}}();function V(){this.yy={}}return D.lexer=P,(0,n.K2)(V,"Parser"),V.prototype=D,D.Parser=V,new V}();l.parser=l;var o=l,h=[],c={},u=new Map,d={},y=new Map,p=(0,n.K2)(((e,t)=>(u.has(e)||u.set(e,{name:e,type:t,id:c.id,text:c.text,risk:c.risk,verifyMethod:c.verifyMethod}),c={},u.get(e))),"addRequirement"),_=(0,n.K2)((()=>u),"getRequirements"),g=(0,n.K2)((e=>{void 0!==c&&(c.id=e)}),"setNewReqId"),E=(0,n.K2)((e=>{void 0!==c&&(c.text=e)}),"setNewReqText"),R=(0,n.K2)((e=>{void 0!==c&&(c.risk=e)}),"setNewReqRisk"),m=(0,n.K2)((e=>{void 0!==c&&(c.verifyMethod=e)}),"setNewReqVerifyMethod"),f=(0,n.K2)((e=>(y.has(e)||(y.set(e,{name:e,type:d.type,docRef:d.docRef}),n.Rm.info("Added new requirement: ",e)),d={},y.get(e))),"addElement"),I=(0,n.K2)((()=>y),"getElements"),S=(0,n.K2)((e=>{void 0!==d&&(d.type=e)}),"setNewElementType"),k=(0,n.K2)((e=>{void 0!==d&&(d.docRef=e)}),"setNewElementDocRef"),N=(0,n.K2)(((e,t,i)=>{h.push({type:e,src:t,dst:i})}),"addRelationship"),b=(0,n.K2)((()=>h),"getRelationships"),T=(0,n.K2)((()=>{h=[],c={},u=new Map,d={},y=new Map,(0,n.IU)()}),"clear"),x={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},RiskLevel:{LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},VerifyType:{VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},Relationships:{CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},getConfig:(0,n.K2)((()=>(0,n.D7)().req),"getConfig"),addRequirement:p,getRequirements:_,setNewReqId:g,setNewReqText:E,setNewReqRisk:R,setNewReqVerifyMethod:m,setAccTitle:n.SV,getAccTitle:n.iN,setAccDescription:n.EI,getAccDescription:n.m7,addElement:f,getElements:I,setNewElementType:S,setNewElementDocRef:k,addRelationship:N,getRelationships:b,clear:T},w=(0,n.K2)((e=>`\n\n marker {\n fill: ${e.relationColor};\n stroke: ${e.relationColor};\n }\n\n marker.cross {\n stroke: ${e.lineColor};\n }\n\n svg {\n font-family: ${e.fontFamily};\n font-size: ${e.fontSize};\n }\n\n .reqBox {\n fill: ${e.requirementBackground};\n fill-opacity: 1.0;\n stroke: ${e.requirementBorderColor};\n stroke-width: ${e.requirementBorderSize};\n }\n \n .reqTitle, .reqLabel{\n fill: ${e.requirementTextColor};\n }\n .reqLabelBox {\n fill: ${e.relationLabelBackground};\n fill-opacity: 1.0;\n }\n\n .req-title-line {\n stroke: ${e.requirementBorderColor};\n stroke-width: ${e.requirementBorderSize};\n }\n .relationshipLine {\n stroke: ${e.relationColor};\n stroke-width: 1;\n }\n .relationshipLabel {\n fill: ${e.relationLabelColor};\n }\n\n`),"getStyles"),A={CONTAINS:"contains",ARROW:"arrow"},q={ReqMarkers:A,insertLineEndings:(0,n.K2)(((e,t)=>{let i=e.append("defs").append("marker").attr("id",A.CONTAINS+"_line_ending").attr("refX",0).attr("refY",t.line_height/2).attr("markerWidth",t.line_height).attr("markerHeight",t.line_height).attr("orient","auto").append("g");i.append("circle").attr("cx",t.line_height/2).attr("cy",t.line_height/2).attr("r",t.line_height/2).attr("fill","none"),i.append("line").attr("x1",0).attr("x2",t.line_height).attr("y1",t.line_height/2).attr("y2",t.line_height/2).attr("stroke-width",1),i.append("line").attr("y1",0).attr("y2",t.line_height).attr("x1",t.line_height/2).attr("x2",t.line_height/2).attr("stroke-width",1),e.append("defs").append("marker").attr("id",A.ARROW+"_line_ending").attr("refX",t.line_height).attr("refY",.5*t.line_height).attr("markerWidth",t.line_height).attr("markerHeight",t.line_height).attr("orient","auto").append("path").attr("d",`M0,0\n L${t.line_height},${t.line_height/2}\n M${t.line_height},${t.line_height/2}\n L0,${t.line_height}`).attr("stroke-width",1)}),"insertLineEndings")},v={},K=0,$=(0,n.K2)(((e,t)=>e.insert("rect","#"+t).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",v.rect_min_width+"px").attr("height",v.rect_min_height+"px")),"newRectNode"),O=(0,n.K2)(((e,t,i)=>{let n=v.rect_min_width/2,r=e.append("text").attr("class","req reqLabel reqTitle").attr("id",t).attr("x",n).attr("y",v.rect_padding).attr("dominant-baseline","hanging"),s=0;i.forEach((e=>{0==s?r.append("tspan").attr("text-anchor","middle").attr("x",v.rect_min_width/2).attr("dy",0).text(e):r.append("tspan").attr("text-anchor","middle").attr("x",v.rect_min_width/2).attr("dy",.75*v.line_height).text(e),s++}));let a=1.5*v.rect_padding+s*v.line_height*.75;return e.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",v.rect_min_width).attr("y1",a).attr("y2",a),{titleNode:r,y:a}}),"newTitleNode"),L=(0,n.K2)(((e,t,i,n)=>{let r=e.append("text").attr("class","req reqLabel").attr("id",t).attr("x",v.rect_padding).attr("y",n).attr("dominant-baseline","hanging"),s=0,a=[];return i.forEach((e=>{let t=e.length;for(;t>30&&s<3;){let i=e.substring(0,30);t=(e=e.substring(30,e.length)).length,a[a.length]=i,s++}if(3==s){let e=a[a.length-1];a[a.length-1]=e.substring(0,e.length-4)+"..."}else a[a.length]=e;s=0})),a.forEach((e=>{r.append("tspan").attr("x",v.rect_padding).attr("dy",v.line_height).text(e)})),r}),"newBodyNode"),C=(0,n.K2)(((e,t,i,n)=>{const r=t.node().getTotalLength(),s=t.node().getPointAtLength(.5*r),a="rel"+K;K++;const l=e.append("text").attr("class","req relationshipLabel").attr("id",a).attr("x",s.x).attr("y",s.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(n).node().getBBox();e.insert("rect","#"+a).attr("class","req reqLabelBox").attr("x",s.x-l.width/2).attr("y",s.y-l.height/2).attr("width",l.width).attr("height",l.height).attr("fill","white").attr("fill-opacity","85%")}),"addEdgeLabel"),M=(0,n.K2)((function(e,t,i,s,a){const l=i.edge(U(t.src),U(t.dst)),o=(0,r.n8j)().x((function(e){return e.x})).y((function(e){return e.y})),h=e.insert("path","#"+s).attr("class","er relationshipLine").attr("d",o(l.points)).attr("fill","none");t.type==a.db.Relationships.CONTAINS?h.attr("marker-start","url("+n.Y2.getUrl(v.arrowMarkerAbsolute)+"#"+t.type+"_line_ending)"):(h.attr("stroke-dasharray","10,7"),h.attr("marker-end","url("+n.Y2.getUrl(v.arrowMarkerAbsolute)+"#"+q.ReqMarkers.ARROW+"_line_ending)")),C(e,h,v,`<<${t.type}>>`)}),"drawRelationshipFromLayout"),F=(0,n.K2)(((e,t,i)=>{e.forEach(((e,r)=>{r=U(r),n.Rm.info("Added new requirement: ",r);const s=i.append("g").attr("id",r),a=$(s,"req-"+r);let l=[],o=O(s,r+"_title",[`<<${e.type}>>`,`${e.name}`]);l.push(o.titleNode);let h=L(s,r+"_body",[`Id: ${e.id}`,`Text: ${e.text}`,`Risk: ${e.risk}`,`Verification: ${e.verifyMethod}`],o.y);l.push(h);const c=a.node().getBBox();t.setNode(r,{width:c.width,height:c.height,shape:"rect",id:r})}))}),"drawReqs"),D=(0,n.K2)(((e,t,i)=>{e.forEach(((e,n)=>{const r=U(n),s=i.append("g").attr("id",r),a="element-"+r,l=$(s,a);let o=[],h=O(s,a+"_title",["<>",`${n}`]);o.push(h.titleNode);let c=L(s,a+"_body",[`Type: ${e.type||"Not Specified"}`,`Doc Ref: ${e.docRef||"None"}`],h.y);o.push(c);const u=l.node().getBBox();t.setNode(r,{width:u.width,height:u.height,shape:"rect",id:r})}))}),"drawElements"),P=(0,n.K2)(((e,t)=>(e.forEach((function(e){let i=U(e.src),n=U(e.dst);t.setEdge(i,n,{relationship:e})})),e)),"addRelationships"),V=(0,n.K2)((function(e,t){t.nodes().forEach((function(i){void 0!==i&&void 0!==t.node(i)&&(e.select("#"+i),e.select("#"+i).attr("transform","translate("+(t.node(i).x-t.node(i).width/2)+","+(t.node(i).y-t.node(i).height/2)+" )"))}))}),"adjustEntities"),U=(0,n.K2)((e=>e.replace(/\s/g,"").replace(/\./g,"_")),"elementString"),Y={parser:o,db:x,renderer:{draw:(0,n.K2)(((e,t,i,l)=>{const o=(v=(0,n.D7)().requirement).securityLevel;let h;"sandbox"===o&&(h=(0,r.Ltv)("#i"+t));const c=("sandbox"===o?(0,r.Ltv)(h.nodes()[0].contentDocument.body):(0,r.Ltv)("body")).select(`[id='${t}']`);q.insertLineEndings(c,v);const u=new a.T({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:v.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel((function(){return{}}));let d=l.db.getRequirements(),y=l.db.getElements(),p=l.db.getRelationships();F(d,u,c),D(y,u,c),P(p,u),(0,s.Zp)(u),V(c,u),p.forEach((function(e){M(c,e,u,t,l)}));const _=v.rect_padding,g=c.node().getBBox(),E=g.width+2*_,R=g.height+2*_;(0,n.a$)(c,R,E,v.useMaxWidth),c.attr("viewBox",`${g.x-_} ${g.y-_} ${E} ${R}`)}),"draw")},styles:w}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/578-d3d4963d.chunk.min.js b/themes/hugo-geekdoc/static/js/578-d3d4963d.chunk.min.js deleted file mode 100644 index 0410d7db1..000000000 --- a/themes/hugo-geekdoc/static/js/578-d3d4963d.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[578],{6578:(t,e,a)=>{a.d(e,{DA:()=>o,IU:()=>rt,U7:()=>at,U_:()=>it,lC:()=>c,nM:()=>D,on:()=>et});var r=a(8252),i=a(7323),n=a(798),s=a(4852);function l(t,e){e&&t.attr("style",e)}function d(t){const e=(0,s.Ltv)(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),a=e.append("xhtml:div"),r=t.label,i=t.isNode?"nodeLabel":"edgeLabel",n=a.append("span");return n.html(r),l(n,t.labelStyle),n.attr("class",i),l(a,t.labelStyle),a.style("display","inline-block"),a.style("white-space","nowrap"),a.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}(0,n.K2)(l,"applyStyle"),(0,n.K2)(d,"addHtmlLabel");var o=(0,n.K2)(((t,e,a,s)=>{let l=t||"";if("object"==typeof l&&(l=l[0]),(0,n._3)((0,n.D7)().flowchart.htmlLabels))return l=l.replace(/\\n|\n/g,"
"),n.Rm.debug("vertexText"+l),d({isNode:s,label:(0,r.hE)((0,i.Sm)(l)),labelStyle:e.replace("fill:","color:")});{const t=document.createElementNS("http://www.w3.org/2000/svg","text");t.setAttribute("style",e.replace("color:","fill:"));let r=[];r="string"==typeof l?l.split(/\\n|\n|/gi):Array.isArray(l)?l:[];for(const e of r){const r=document.createElementNS("http://www.w3.org/2000/svg","tspan");r.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),r.setAttribute("dy","1em"),r.setAttribute("x","0"),a?r.setAttribute("class","title-row"):r.setAttribute("class","row"),r.textContent=e.trim(),t.appendChild(r)}return t}}),"createLabel"),h=(0,n.K2)((async(t,e,a,l)=>{const d=(0,n.D7)();let h;const c=e.useHtmlLabels||(0,n._3)(d.flowchart.htmlLabels);h=a||"node default";const y=t.insert("g").attr("class",h).attr("id",e.domId||e.id),g=y.insert("g").attr("class","label").attr("style",e.labelStyle);let x;x=void 0===e.labelText?"":"string"==typeof e.labelText?e.labelText:e.labelText[0];const p=g.node();let w;w="markdown"===e.labelType?(0,r.GZ)(g,(0,n.jZ)((0,i.Sm)(x),d),{useHtmlLabels:c,width:e.width||d.flowchart.wrappingWidth,classes:"markdown-node-label"},d):p.appendChild(o((0,n.jZ)((0,i.Sm)(x),d),e.labelStyle,!1,l));let u=w.getBBox();const f=e.padding/2;if((0,n._3)(d.flowchart.htmlLabels)){const t=w.children[0],e=(0,s.Ltv)(w),a=t.getElementsByTagName("img");if(a){const t=""===x.replace(/]*>/g,"").trim();await Promise.all([...a].map((e=>new Promise((a=>{function r(){if(e.style.display="flex",e.style.flexDirection="column",t){const t=d.fontSize?d.fontSize:window.getComputedStyle(document.body).fontSize,a=5,r=parseInt(t,10)*a+"px";e.style.minWidth=r,e.style.maxWidth=r}else e.style.width="100%";a(e)}(0,n.K2)(r,"setupImage"),setTimeout((()=>{e.complete&&r()})),e.addEventListener("error",r),e.addEventListener("load",r)})))))}u=t.getBoundingClientRect(),e.attr("width",u.width),e.attr("height",u.height)}return c?g.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"):g.attr("transform","translate(0, "+-u.height/2+")"),e.centerLabel&&g.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"),g.insert("rect",":first-child"),{shapeSvg:y,bbox:u,halfPadding:f,label:g}}),"labelHelper"),c=(0,n.K2)(((t,e)=>{const a=e.node().getBBox();t.width=a.width,t.height=a.height}),"updateNodeBounds");function y(t,e,a,r){return t.insert("polygon",":first-child").attr("points",r.map((function(t){return t.x+","+t.y})).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+a/2+")")}(0,n.K2)(y,"insertPolygonShape");var g=(0,n.K2)((t=>{const e=new Set;for(const a of t)switch(a){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(a)}return e}),"expandAndDeduplicateDirections"),x=(0,n.K2)(((t,e,a)=>{const r=g(t),i=e.height+2*a.padding,n=i/2,s=e.width+2*n+a.padding,l=a.padding/2;return r.has("right")&&r.has("left")&&r.has("up")&&r.has("down")?[{x:0,y:0},{x:n,y:0},{x:s/2,y:2*l},{x:s-n,y:0},{x:s,y:0},{x:s,y:-i/3},{x:s+2*l,y:-i/2},{x:s,y:-2*i/3},{x:s,y:-i},{x:s-n,y:-i},{x:s/2,y:-i-2*l},{x:n,y:-i},{x:0,y:-i},{x:0,y:-2*i/3},{x:-2*l,y:-i/2},{x:0,y:-i/3}]:r.has("right")&&r.has("left")&&r.has("up")?[{x:n,y:0},{x:s-n,y:0},{x:s,y:-i/2},{x:s-n,y:-i},{x:n,y:-i},{x:0,y:-i/2}]:r.has("right")&&r.has("left")&&r.has("down")?[{x:0,y:0},{x:n,y:-i},{x:s-n,y:-i},{x:s,y:0}]:r.has("right")&&r.has("up")&&r.has("down")?[{x:0,y:0},{x:s,y:-n},{x:s,y:-i+n},{x:0,y:-i}]:r.has("left")&&r.has("up")&&r.has("down")?[{x:s,y:0},{x:0,y:-n},{x:0,y:-i+n},{x:s,y:-i}]:r.has("right")&&r.has("left")?[{x:n,y:0},{x:n,y:-l},{x:s-n,y:-l},{x:s-n,y:0},{x:s,y:-i/2},{x:s-n,y:-i},{x:s-n,y:-i+l},{x:n,y:-i+l},{x:n,y:-i},{x:0,y:-i/2}]:r.has("up")&&r.has("down")?[{x:s/2,y:0},{x:0,y:-l},{x:n,y:-l},{x:n,y:-i+l},{x:0,y:-i+l},{x:s/2,y:-i},{x:s,y:-i+l},{x:s-n,y:-i+l},{x:s-n,y:-l},{x:s,y:-l}]:r.has("right")&&r.has("up")?[{x:0,y:0},{x:s,y:-n},{x:0,y:-i}]:r.has("right")&&r.has("down")?[{x:0,y:0},{x:s,y:0},{x:0,y:-i}]:r.has("left")&&r.has("up")?[{x:s,y:0},{x:0,y:-n},{x:s,y:-i}]:r.has("left")&&r.has("down")?[{x:s,y:0},{x:0,y:0},{x:s,y:-i}]:r.has("right")?[{x:n,y:-l},{x:n,y:-l},{x:s-n,y:-l},{x:s-n,y:0},{x:s,y:-i/2},{x:s-n,y:-i},{x:s-n,y:-i+l},{x:n,y:-i+l},{x:n,y:-i+l}]:r.has("left")?[{x:n,y:0},{x:n,y:-l},{x:s-n,y:-l},{x:s-n,y:-i+l},{x:n,y:-i+l},{x:n,y:-i},{x:0,y:-i/2}]:r.has("up")?[{x:n,y:-l},{x:n,y:-i+l},{x:0,y:-i+l},{x:s/2,y:-i},{x:s,y:-i+l},{x:s-n,y:-i+l},{x:s-n,y:-l}]:r.has("down")?[{x:s/2,y:0},{x:0,y:-l},{x:n,y:-l},{x:n,y:-i+l},{x:s-n,y:-i+l},{x:s-n,y:-l},{x:s,y:-l}]:[{x:0,y:0}]}),"getArrowPoints");function p(t,e){return t.intersect(e)}(0,n.K2)(p,"intersectNode");var w=p;function u(t,e,a,r){var i=t.x,n=t.y,s=i-r.x,l=n-r.y,d=Math.sqrt(e*e*l*l+a*a*s*s),o=Math.abs(e*a*s/d);r.x0}(0,n.K2)(v,"intersectLine"),(0,n.K2)(S,"sameSign");var K=v,L=_;function _(t,e,a){var r=t.x,i=t.y,n=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;"function"==typeof e.forEach?e.forEach((function(t){s=Math.min(s,t.x),l=Math.min(l,t.y)})):(s=Math.min(s,e.x),l=Math.min(l,e.y));for(var d=r-t.width/2-s,o=i-t.height/2-l,h=0;h1&&n.sort((function(t,e){var r=t.x-a.x,i=t.y-a.y,n=Math.sqrt(r*r+i*i),s=e.x-a.x,l=e.y-a.y,d=Math.sqrt(s*s+l*l);return n{var a,r,i=t.x,n=t.y,s=e.x-i,l=e.y-n,d=t.width/2,o=t.height/2;return Math.abs(l)*d>Math.abs(s)*o?(l<0&&(o=-o),a=0===l?0:o*s/l,r=o):(s<0&&(d=-d),a=d,r=0===s?0:d*l/s),{x:i+a,y:n+r}}),"intersectRect"),k={node:w,circle:m,ellipse:f,polygon:L,rect:D},B=(0,n.K2)((async(t,e)=>{e.useHtmlLabels||(0,n.D7)().flowchart.htmlLabels||(e.centerLabel=!0);const{shapeSvg:a,bbox:r,halfPadding:i}=await h(t,e,"node "+e.classes,!0);n.Rm.info("Classes = ",e.classes);const s=a.insert("rect",":first-child");return s.attr("rx",e.rx).attr("ry",e.ry).attr("x",-r.width/2-i).attr("y",-r.height/2-i).attr("width",r.width+e.padding).attr("height",r.height+e.padding),c(e,s),e.intersect=function(t){return k.rect(e,t)},a}),"note"),C=(0,n.K2)((t=>t?" "+t:""),"formatClass"),R=(0,n.K2)(((t,e)=>`${e||"node default"}${C(t.classes)} ${C(t.class)}`),"getClassesFromNode"),T=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.width+e.padding+(r.height+e.padding),s=[{x:i/2,y:0},{x:i,y:-i/2},{x:i/2,y:-i},{x:0,y:-i/2}];n.Rm.info("Question main (Circle)");const l=y(a,i,i,s);return l.attr("style",e.style),c(e,l),e.intersect=function(t){return n.Rm.warn("Intersect called"),k.polygon(e,s,t)},a}),"question"),I=(0,n.K2)(((t,e)=>{const a=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);return a.insert("polygon",":first-child").attr("points",[{x:0,y:14},{x:14,y:0},{x:0,y:-14},{x:-14,y:0}].map((function(t){return t.x+","+t.y})).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(t){return k.circle(e,14,t)},a}),"choice"),N=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.height+e.padding,n=i/4,s=r.width+2*n+e.padding,l=[{x:n,y:0},{x:s-n,y:0},{x:s,y:-i/2},{x:s-n,y:-i},{x:n,y:-i},{x:0,y:-i/2}],d=y(a,s,i,l);return d.attr("style",e.style),c(e,d),e.intersect=function(t){return k.polygon(e,l,t)},a}),"hexagon"),E=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,void 0,!0),i=r.height+2*e.padding,n=i/2,s=r.width+2*n+e.padding,l=x(e.directions,r,e),d=y(a,s,i,l);return d.attr("style",e.style),c(e,d),e.intersect=function(t){return k.polygon(e,l,t)},a}),"block_arrow"),M=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.width+e.padding,n=r.height+e.padding,s=[{x:-n/2,y:0},{x:i,y:0},{x:i,y:-n},{x:-n/2,y:-n},{x:0,y:-n/2}];return y(a,i,n,s).attr("style",e.style),e.width=i+n,e.height=n,e.intersect=function(t){return k.polygon(e,s,t)},a}),"rect_left_inv_arrow"),j=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e),!0),i=r.width+e.padding,n=r.height+e.padding,s=[{x:-2*n/6,y:0},{x:i-n/6,y:0},{x:i+2*n/6,y:-n},{x:n/6,y:-n}],l=y(a,i,n,s);return l.attr("style",e.style),c(e,l),e.intersect=function(t){return k.polygon(e,s,t)},a}),"lean_right"),P=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.width+e.padding,n=r.height+e.padding,s=[{x:2*n/6,y:0},{x:i+n/6,y:0},{x:i-2*n/6,y:-n},{x:-n/6,y:-n}],l=y(a,i,n,s);return l.attr("style",e.style),c(e,l),e.intersect=function(t){return k.polygon(e,s,t)},a}),"lean_left"),A=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.width+e.padding,n=r.height+e.padding,s=[{x:-2*n/6,y:0},{x:i+2*n/6,y:0},{x:i-n/6,y:-n},{x:n/6,y:-n}],l=y(a,i,n,s);return l.attr("style",e.style),c(e,l),e.intersect=function(t){return k.polygon(e,s,t)},a}),"trapezoid"),z=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.width+e.padding,n=r.height+e.padding,s=[{x:n/6,y:0},{x:i-n/6,y:0},{x:i+2*n/6,y:-n},{x:-2*n/6,y:-n}],l=y(a,i,n,s);return l.attr("style",e.style),c(e,l),e.intersect=function(t){return k.polygon(e,s,t)},a}),"inv_trapezoid"),q=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.width+e.padding,n=r.height+e.padding,s=[{x:0,y:0},{x:i+n/2,y:0},{x:i,y:-n/2},{x:i+n/2,y:-n},{x:0,y:-n}],l=y(a,i,n,s);return l.attr("style",e.style),c(e,l),e.intersect=function(t){return k.polygon(e,s,t)},a}),"rect_right_inv_arrow"),O=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.width+e.padding,n=i/2,s=n/(2.5+i/50),l=r.height+s+e.padding,d="M 0,"+s+" a "+n+","+s+" 0,0,0 "+i+" 0 a "+n+","+s+" 0,0,0 "+-i+" 0 l 0,"+l+" a "+n+","+s+" 0,0,0 "+i+" 0 l 0,"+-l,o=a.attr("label-offset-y",s).insert("path",":first-child").attr("style",e.style).attr("d",d).attr("transform","translate("+-i/2+","+-(l/2+s)+")");return c(e,o),e.intersect=function(t){const a=k.rect(e,t),r=a.x-e.x;if(0!=n&&(Math.abs(r)e.height/2-s)){let i=s*s*(1-r*r/(n*n));0!=i&&(i=Math.sqrt(i)),i=s-i,t.y-e.y>0&&(i=-i),a.y+=i}return a},a}),"cylinder"),U=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r,halfPadding:i}=await h(t,e,"node "+e.classes+" "+e.class,!0),s=a.insert("rect",":first-child"),l=e.positioned?e.width:r.width+e.padding,d=e.positioned?e.height:r.height+e.padding,o=e.positioned?-l/2:-r.width/2-i,y=e.positioned?-d/2:-r.height/2-i;if(s.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",o).attr("y",y).attr("width",l).attr("height",d),e.props){const t=new Set(Object.keys(e.props));e.props.borders&&(W(s,e.props.borders,l,d),t.delete("borders")),t.forEach((t=>{n.Rm.warn(`Unknown node property ${t}`)}))}return c(e,s),e.intersect=function(t){return k.rect(e,t)},a}),"rect"),$=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r,halfPadding:i}=await h(t,e,"node "+e.classes,!0),s=a.insert("rect",":first-child"),l=e.positioned?e.width:r.width+e.padding,d=e.positioned?e.height:r.height+e.padding,o=e.positioned?-l/2:-r.width/2-i,y=e.positioned?-d/2:-r.height/2-i;if(s.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",o).attr("y",y).attr("width",l).attr("height",d),e.props){const t=new Set(Object.keys(e.props));e.props.borders&&(W(s,e.props.borders,l,d),t.delete("borders")),t.forEach((t=>{n.Rm.warn(`Unknown node property ${t}`)}))}return c(e,s),e.intersect=function(t){return k.rect(e,t)},a}),"composite"),H=(0,n.K2)((async(t,e)=>{const{shapeSvg:a}=await h(t,e,"label",!0);n.Rm.trace("Classes = ",e.class);const r=a.insert("rect",":first-child");if(r.attr("width",0).attr("height",0),a.attr("class","label edgeLabel"),e.props){const t=new Set(Object.keys(e.props));e.props.borders&&(W(r,e.props.borders,0,0),t.delete("borders")),t.forEach((t=>{n.Rm.warn(`Unknown node property ${t}`)}))}return c(e,r),e.intersect=function(t){return k.rect(e,t)},a}),"labelRect");function W(t,e,a,r){const i=[],s=(0,n.K2)((t=>{i.push(t,0)}),"addBorder"),l=(0,n.K2)((t=>{i.push(0,t)}),"skipBorder");e.includes("t")?(n.Rm.debug("add top border"),s(a)):l(a),e.includes("r")?(n.Rm.debug("add right border"),s(r)):l(r),e.includes("b")?(n.Rm.debug("add bottom border"),s(a)):l(a),e.includes("l")?(n.Rm.debug("add left border"),s(r)):l(r),t.attr("stroke-dasharray",i.join(" "))}(0,n.K2)(W,"applyNodePropertyBorders");var F=(0,n.K2)(((t,e)=>{let a;a=e.classes?"node "+e.classes:"node default";const r=t.insert("g").attr("class",a).attr("id",e.domId||e.id),i=r.insert("rect",":first-child"),l=r.insert("line"),d=r.insert("g").attr("class","label"),h=e.labelText.flat?e.labelText.flat():e.labelText;let y="";y="object"==typeof h?h[0]:h,n.Rm.info("Label text abc79",y,h,"object"==typeof h);const g=d.node().appendChild(o(y,e.labelStyle,!0,!0));let x={width:0,height:0};if((0,n._3)((0,n.D7)().flowchart.htmlLabels)){const t=g.children[0],e=(0,s.Ltv)(g);x=t.getBoundingClientRect(),e.attr("width",x.width),e.attr("height",x.height)}n.Rm.info("Text 2",h);const p=h.slice(1,h.length);let w=g.getBBox();const u=d.node().appendChild(o(p.join?p.join("
"):p,e.labelStyle,!0,!0));if((0,n._3)((0,n.D7)().flowchart.htmlLabels)){const t=u.children[0],e=(0,s.Ltv)(u);x=t.getBoundingClientRect(),e.attr("width",x.width),e.attr("height",x.height)}const f=e.padding/2;return(0,s.Ltv)(u).attr("transform","translate( "+(x.width>w.width?0:(w.width-x.width)/2)+", "+(w.height+f+5)+")"),(0,s.Ltv)(g).attr("transform","translate( "+(x.width{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.height+e.padding,n=r.width+i/4+e.padding,s=a.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-n/2).attr("y",-i/2).attr("width",n).attr("height",i);return c(e,s),e.intersect=function(t){return k.rect(e,t)},a}),"stadium"),V=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r,halfPadding:i}=await h(t,e,R(e,void 0),!0),s=a.insert("circle",":first-child");return s.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",r.width/2+i).attr("width",r.width+e.padding).attr("height",r.height+e.padding),n.Rm.info("Circle main"),c(e,s),e.intersect=function(t){return n.Rm.info("Circle intersect",e,r.width/2+i,t),k.circle(e,r.width/2+i,t)},a}),"circle"),Y=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r,halfPadding:i}=await h(t,e,R(e,void 0),!0),s=a.insert("g",":first-child"),l=s.insert("circle"),d=s.insert("circle");return s.attr("class",e.class),l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",r.width/2+i+5).attr("width",r.width+e.padding+10).attr("height",r.height+e.padding+10),d.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",r.width/2+i).attr("width",r.width+e.padding).attr("height",r.height+e.padding),n.Rm.info("DoubleCircle main"),c(e,l),e.intersect=function(t){return n.Rm.info("DoubleCircle intersect",e,r.width/2+i+5,t),k.circle(e,r.width/2+i+5,t)},a}),"doublecircle"),G=(0,n.K2)((async(t,e)=>{const{shapeSvg:a,bbox:r}=await h(t,e,R(e,void 0),!0),i=r.width+e.padding,n=r.height+e.padding,s=[{x:0,y:0},{x:i,y:0},{x:i,y:-n},{x:0,y:-n},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-n},{x:-8,y:-n},{x:-8,y:0}],l=y(a,i,n,s);return l.attr("style",e.style),c(e,l),e.intersect=function(t){return k.polygon(e,s,t)},a}),"subroutine"),J=(0,n.K2)(((t,e)=>{const a=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=a.insert("circle",":first-child");return r.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),c(e,r),e.intersect=function(t){return k.circle(e,7,t)},a}),"start"),Q=(0,n.K2)(((t,e,a)=>{const r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let i=70,n=10;"LR"===a&&(i=10,n=70);const s=r.append("rect").attr("x",-1*i/2).attr("y",-1*n/2).attr("width",i).attr("height",n).attr("class","fork-join");return c(e,s),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(t){return k.rect(e,t)},r}),"forkJoin"),X={rhombus:T,composite:$,question:T,rect:U,labelRect:H,rectWithTitle:F,choice:I,circle:V,doublecircle:Y,stadium:Z,hexagon:N,block_arrow:E,rect_left_inv_arrow:M,lean_right:j,lean_left:P,trapezoid:A,inv_trapezoid:z,rect_right_inv_arrow:q,cylinder:O,start:J,end:(0,n.K2)(((t,e)=>{const a=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=a.insert("circle",":first-child"),i=a.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),r.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),c(e,i),e.intersect=function(t){return k.circle(e,7,t)},a}),"end"),note:B,subroutine:G,fork:Q,join:Q,class_box:(0,n.K2)(((t,e)=>{const a=e.padding/2;let r;r=e.classes?"node "+e.classes:"node default";const i=t.insert("g").attr("class",r).attr("id",e.domId||e.id),l=i.insert("rect",":first-child"),d=i.insert("line"),h=i.insert("line");let y=0,g=4;const x=i.insert("g").attr("class","label");let p=0;const w=e.classData.annotations?.[0],u=e.classData.annotations[0]?"«"+e.classData.annotations[0]+"»":"",f=x.node().appendChild(o(u,e.labelStyle,!0,!0));let b=f.getBBox();if((0,n._3)((0,n.D7)().flowchart.htmlLabels)){const t=f.children[0],e=(0,s.Ltv)(f);b=t.getBoundingClientRect(),e.attr("width",b.width),e.attr("height",b.height)}e.classData.annotations[0]&&(g+=b.height+4,y+=b.width);let m=e.classData.label;void 0!==e.classData.type&&""!==e.classData.type&&((0,n.D7)().flowchart.htmlLabels?m+="<"+e.classData.type+">":m+="<"+e.classData.type+">");const v=x.node().appendChild(o(m,e.labelStyle,!0,!0));(0,s.Ltv)(v).attr("class","classTitle");let S=v.getBBox();if((0,n._3)((0,n.D7)().flowchart.htmlLabels)){const t=v.children[0],e=(0,s.Ltv)(v);S=t.getBoundingClientRect(),e.attr("width",S.width),e.attr("height",S.height)}g+=S.height+4,S.width>y&&(y=S.width);const K=[];e.classData.members.forEach((t=>{const a=t.getDisplayDetails();let r=a.displayText;(0,n.D7)().flowchart.htmlLabels&&(r=r.replace(//g,">"));const i=x.node().appendChild(o(r,a.cssStyle?a.cssStyle:e.labelStyle,!0,!0));let l=i.getBBox();if((0,n._3)((0,n.D7)().flowchart.htmlLabels)){const t=i.children[0],e=(0,s.Ltv)(i);l=t.getBoundingClientRect(),e.attr("width",l.width),e.attr("height",l.height)}l.width>y&&(y=l.width),g+=l.height+4,K.push(i)})),g+=8;const L=[];if(e.classData.methods.forEach((t=>{const a=t.getDisplayDetails();let r=a.displayText;(0,n.D7)().flowchart.htmlLabels&&(r=r.replace(//g,">"));const i=x.node().appendChild(o(r,a.cssStyle?a.cssStyle:e.labelStyle,!0,!0));let l=i.getBBox();if((0,n._3)((0,n.D7)().flowchart.htmlLabels)){const t=i.children[0],e=(0,s.Ltv)(i);l=t.getBoundingClientRect(),e.attr("width",l.width),e.attr("height",l.height)}l.width>y&&(y=l.width),g+=l.height+4,L.push(i)})),g+=8,w){let t=(y-b.width)/2;(0,s.Ltv)(f).attr("transform","translate( "+(-1*y/2+t)+", "+-1*g/2+")"),p=b.height+4}let _=(y-S.width)/2;return(0,s.Ltv)(v).attr("transform","translate( "+(-1*y/2+_)+", "+(-1*g/2+p)+")"),p+=S.height+4,d.attr("class","divider").attr("x1",-y/2-a).attr("x2",y/2+a).attr("y1",-g/2-a+8+p).attr("y2",-g/2-a+8+p),p+=8,K.forEach((t=>{(0,s.Ltv)(t).attr("transform","translate( "+-y/2+", "+(-1*g/2+p+4)+")");const e=t?.getBBox();p+=(e?.height??0)+4})),p+=8,h.attr("class","divider").attr("x1",-y/2-a).attr("x2",y/2+a).attr("y1",-g/2-a+8+p).attr("y2",-g/2-a+8+p),p+=8,L.forEach((t=>{(0,s.Ltv)(t).attr("transform","translate( "+-y/2+", "+(-1*g/2+p)+")");const e=t?.getBBox();p+=(e?.height??0)+4})),l.attr("style",e.style).attr("class","outer title-state").attr("x",-y/2-a).attr("y",-g/2-a).attr("width",y+e.padding).attr("height",g+e.padding),c(e,l),e.intersect=function(t){return k.rect(e,t)},i}),"class_box")},tt={},et=(0,n.K2)((async(t,e,a)=>{let r,i;if(e.link){let s;"sandbox"===(0,n.D7)().securityLevel?s="_top":e.linkTarget&&(s=e.linkTarget||"_blank"),r=t.insert("svg:a").attr("xlink:href",e.link).attr("target",s),i=await X[e.shape](r,e,a)}else i=await X[e.shape](t,e,a),r=i;return e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),tt[e.id]=r,e.haveCallback&&tt[e.id].attr("class",tt[e.id].attr("class")+" clickable"),r}),"insertNode"),at=(0,n.K2)(((t,e)=>{tt[e.id]=t}),"setNodeElem"),rt=(0,n.K2)((()=>{tt={}}),"clear"),it=(0,n.K2)((t=>{const e=tt[t.id];n.Rm.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");const a=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+a-t.width/2)+", "+(t.y-t.height/2-8)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),a}),"positionNode")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/589-841514a2.chunk.min.js b/themes/hugo-geekdoc/static/js/589-841514a2.chunk.min.js deleted file mode 100644 index b95ec8752..000000000 --- a/themes/hugo-geekdoc/static/js/589-841514a2.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[589],{9323:(t,e,a)=>{a.d(e,{CP:()=>l,HT:()=>h,PB:()=>d,aC:()=>c,lC:()=>n,m:()=>o,tk:()=>i});var r=a(798),s=a(6750),i=(0,r.K2)(((t,e)=>{const a=t.append("rect");if(a.attr("x",e.x),a.attr("y",e.y),a.attr("fill",e.fill),a.attr("stroke",e.stroke),a.attr("width",e.width),a.attr("height",e.height),e.name&&a.attr("name",e.name),e.rx&&a.attr("rx",e.rx),e.ry&&a.attr("ry",e.ry),void 0!==e.attrs)for(const t in e.attrs)a.attr(t,e.attrs[t]);return e.class&&a.attr("class",e.class),a}),"drawRect"),n=(0,r.K2)(((t,e)=>{const a={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};i(t,a).lower()}),"drawBackgroundRect"),o=(0,r.K2)(((t,e)=>{const a=e.text.replace(r.H1," "),s=t.append("text");s.attr("x",e.x),s.attr("y",e.y),s.attr("class","legend"),s.style("text-anchor",e.anchor),e.class&&s.attr("class",e.class);const i=s.append("tspan");return i.attr("x",e.x+2*e.textMargin),i.text(a),s}),"drawText"),c=(0,r.K2)(((t,e,a,r)=>{const i=t.append("image");i.attr("x",e),i.attr("y",a);const n=(0,s.J)(r);i.attr("xlink:href",n)}),"drawImage"),l=(0,r.K2)(((t,e,a,r)=>{const i=t.append("use");i.attr("x",e),i.attr("y",a);const n=(0,s.J)(r);i.attr("xlink:href",`#${n}`)}),"drawEmbeddedImage"),d=(0,r.K2)((()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0})),"getNoteRect"),h=(0,r.K2)((()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0})),"getTextObj")},2424:(t,e,a)=>{a.d(e,{m:()=>s});var r=a(798),s=class{constructor(t){this.init=t,this.records=this.init()}static{(0,r.K2)(this,"ImperativeState")}reset(){this.records=this.init()}}},3589:(t,e,a)=>{a.d(e,{diagram:()=>Ut});var r=a(9323),s=a(2424),i=a(7323),n=a(798),o=a(4852),c=a(6750),l=function(){var t=(0,n.K2)((function(t,e,a,r){for(a=a||{},r=t.length;r--;a[t[r]]=e);return a}),"o"),e=[1,2],a=[1,3],r=[1,4],s=[2,4],i=[1,9],o=[1,11],c=[1,13],l=[1,14],d=[1,16],h=[1,17],p=[1,18],g=[1,24],u=[1,25],x=[1,26],y=[1,27],m=[1,28],b=[1,29],T=[1,30],f=[1,31],E=[1,32],w=[1,33],I=[1,34],L=[1,35],_=[1,36],P=[1,37],k=[1,38],A=[1,39],v=[1,41],N=[1,42],M=[1,43],D=[1,44],O=[1,45],S=[1,46],K=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,54,59,60,61,62,70],R=[4,5,16,50,52,53],Y=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],C=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,54,59,60,61,62,70],B=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,54,59,60,61,62,70],$=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,54,59,60,61,62,70],V=[68,69,70],F=[1,122],W={trace:(0,n.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,note:54,placement:55,text2:56,over:57,actor_pair:58,links:59,link:60,properties:61,details:62,spaceList:63,",":64,left_of:65,right_of:66,signaltype:67,"+":68,"-":69,ACTOR:70,SOLID_OPEN_ARROW:71,DOTTED_OPEN_ARROW:72,SOLID_ARROW:73,BIDIRECTIONAL_SOLID_ARROW:74,DOTTED_ARROW:75,BIDIRECTIONAL_DOTTED_ARROW:76,SOLID_CROSS:77,DOTTED_CROSS:78,SOLID_POINT:79,DOTTED_POINT:80,TXT:81,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",54:"note",57:"over",59:"links",60:"link",61:"properties",62:"details",64:",",65:"left_of",66:"right_of",68:"+",69:"-",70:"ACTOR",71:"SOLID_OPEN_ARROW",72:"DOTTED_OPEN_ARROW",73:"SOLID_ARROW",74:"BIDIRECTIONAL_SOLID_ARROW",75:"DOTTED_ARROW",76:"BIDIRECTIONAL_DOTTED_ARROW",77:"SOLID_CROSS",78:"DOTTED_CROSS",79:"SOLID_POINT",80:"DOTTED_POINT",81:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[63,2],[63,1],[58,3],[58,1],[55,1],[55,1],[17,5],[17,5],[17,4],[22,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[56,1]],performAction:(0,n.K2)((function(t,e,a,r,s,i,n){var o=i.length-1;switch(s){case 3:return r.apply(i[o]),i[o];case 4:case 9:case 8:case 13:this.$=[];break;case 5:case 10:i[o-1].push(i[o]),this.$=i[o-1];break;case 6:case 7:case 11:case 12:case 62:this.$=i[o];break;case 15:i[o].type="createParticipant",this.$=i[o];break;case 16:i[o-1].unshift({type:"boxStart",boxData:r.parseBoxData(i[o-2])}),i[o-1].push({type:"boxEnd",boxText:i[o-2]}),this.$=i[o-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(i[o-2]),sequenceIndexStep:Number(i[o-1]),sequenceVisible:!0,signalType:r.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(i[o-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:r.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:r.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:r.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:r.LINETYPE.ACTIVE_START,actor:i[o-1].actor};break;case 23:this.$={type:"activeEnd",signalType:r.LINETYPE.ACTIVE_END,actor:i[o-1].actor};break;case 29:r.setDiagramTitle(i[o].substring(6)),this.$=i[o].substring(6);break;case 30:r.setDiagramTitle(i[o].substring(7)),this.$=i[o].substring(7);break;case 31:this.$=i[o].trim(),r.setAccTitle(this.$);break;case 32:case 33:this.$=i[o].trim(),r.setAccDescription(this.$);break;case 34:i[o-1].unshift({type:"loopStart",loopText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.LOOP_START}),i[o-1].push({type:"loopEnd",loopText:i[o-2],signalType:r.LINETYPE.LOOP_END}),this.$=i[o-1];break;case 35:i[o-1].unshift({type:"rectStart",color:r.parseMessage(i[o-2]),signalType:r.LINETYPE.RECT_START}),i[o-1].push({type:"rectEnd",color:r.parseMessage(i[o-2]),signalType:r.LINETYPE.RECT_END}),this.$=i[o-1];break;case 36:i[o-1].unshift({type:"optStart",optText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.OPT_START}),i[o-1].push({type:"optEnd",optText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.OPT_END}),this.$=i[o-1];break;case 37:i[o-1].unshift({type:"altStart",altText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.ALT_START}),i[o-1].push({type:"altEnd",signalType:r.LINETYPE.ALT_END}),this.$=i[o-1];break;case 38:i[o-1].unshift({type:"parStart",parText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.PAR_START}),i[o-1].push({type:"parEnd",signalType:r.LINETYPE.PAR_END}),this.$=i[o-1];break;case 39:i[o-1].unshift({type:"parStart",parText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.PAR_OVER_START}),i[o-1].push({type:"parEnd",signalType:r.LINETYPE.PAR_END}),this.$=i[o-1];break;case 40:i[o-1].unshift({type:"criticalStart",criticalText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.CRITICAL_START}),i[o-1].push({type:"criticalEnd",signalType:r.LINETYPE.CRITICAL_END}),this.$=i[o-1];break;case 41:i[o-1].unshift({type:"breakStart",breakText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.BREAK_START}),i[o-1].push({type:"breakEnd",optText:r.parseMessage(i[o-2]),signalType:r.LINETYPE.BREAK_END}),this.$=i[o-1];break;case 43:this.$=i[o-3].concat([{type:"option",optionText:r.parseMessage(i[o-1]),signalType:r.LINETYPE.CRITICAL_OPTION},i[o]]);break;case 45:this.$=i[o-3].concat([{type:"and",parText:r.parseMessage(i[o-1]),signalType:r.LINETYPE.PAR_AND},i[o]]);break;case 47:this.$=i[o-3].concat([{type:"else",altText:r.parseMessage(i[o-1]),signalType:r.LINETYPE.ALT_ELSE},i[o]]);break;case 48:i[o-3].draw="participant",i[o-3].type="addParticipant",i[o-3].description=r.parseMessage(i[o-1]),this.$=i[o-3];break;case 49:i[o-1].draw="participant",i[o-1].type="addParticipant",this.$=i[o-1];break;case 50:i[o-3].draw="actor",i[o-3].type="addParticipant",i[o-3].description=r.parseMessage(i[o-1]),this.$=i[o-3];break;case 51:i[o-1].draw="actor",i[o-1].type="addParticipant",this.$=i[o-1];break;case 52:i[o-1].type="destroyParticipant",this.$=i[o-1];break;case 53:this.$=[i[o-1],{type:"addNote",placement:i[o-2],actor:i[o-1].actor,text:i[o]}];break;case 54:i[o-2]=[].concat(i[o-1],i[o-1]).slice(0,2),i[o-2][0]=i[o-2][0].actor,i[o-2][1]=i[o-2][1].actor,this.$=[i[o-1],{type:"addNote",placement:r.PLACEMENT.OVER,actor:i[o-2].slice(0,2),text:i[o]}];break;case 55:this.$=[i[o-1],{type:"addLinks",actor:i[o-1].actor,text:i[o]}];break;case 56:this.$=[i[o-1],{type:"addALink",actor:i[o-1].actor,text:i[o]}];break;case 57:this.$=[i[o-1],{type:"addProperties",actor:i[o-1].actor,text:i[o]}];break;case 58:this.$=[i[o-1],{type:"addDetails",actor:i[o-1].actor,text:i[o]}];break;case 61:this.$=[i[o-2],i[o]];break;case 63:this.$=r.PLACEMENT.LEFTOF;break;case 64:this.$=r.PLACEMENT.RIGHTOF;break;case 65:this.$=[i[o-4],i[o-1],{type:"addMessage",from:i[o-4].actor,to:i[o-1].actor,signalType:i[o-3],msg:i[o],activate:!0},{type:"activeStart",signalType:r.LINETYPE.ACTIVE_START,actor:i[o-1].actor}];break;case 66:this.$=[i[o-4],i[o-1],{type:"addMessage",from:i[o-4].actor,to:i[o-1].actor,signalType:i[o-3],msg:i[o]},{type:"activeEnd",signalType:r.LINETYPE.ACTIVE_END,actor:i[o-4].actor}];break;case 67:this.$=[i[o-3],i[o-1],{type:"addMessage",from:i[o-3].actor,to:i[o-1].actor,signalType:i[o-2],msg:i[o]}];break;case 68:this.$={type:"addParticipant",actor:i[o]};break;case 69:this.$=r.LINETYPE.SOLID_OPEN;break;case 70:this.$=r.LINETYPE.DOTTED_OPEN;break;case 71:this.$=r.LINETYPE.SOLID;break;case 72:this.$=r.LINETYPE.BIDIRECTIONAL_SOLID;break;case 73:this.$=r.LINETYPE.DOTTED;break;case 74:this.$=r.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 75:this.$=r.LINETYPE.SOLID_CROSS;break;case 76:this.$=r.LINETYPE.DOTTED_CROSS;break;case 77:this.$=r.LINETYPE.SOLID_POINT;break;case 78:this.$=r.LINETYPE.DOTTED_POINT;break;case 79:this.$=r.parseMessage(i[o].trim().substring(1))}}),"anonymous"),table:[{3:1,4:e,5:a,6:r},{1:[3]},{3:5,4:e,5:a,6:r},{3:6,4:e,5:a,6:r},t([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],s,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:i,5:o,8:8,9:10,12:12,13:c,14:l,17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},t(K,[2,5]),{9:47,12:12,13:c,14:l,17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},t(K,[2,7]),t(K,[2,8]),t(K,[2,14]),{12:48,50:P,52:k,53:A},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:S},{22:55,70:S},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},t(K,[2,29]),t(K,[2,30]),{32:[1,61]},{34:[1,62]},t(K,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,70:S},{22:72,70:S},{22:73,70:S},{67:74,71:[1,75],72:[1,76],73:[1,77],74:[1,78],75:[1,79],76:[1,80],77:[1,81],78:[1,82],79:[1,83],80:[1,84]},{55:85,57:[1,86],65:[1,87],66:[1,88]},{22:89,70:S},{22:90,70:S},{22:91,70:S},{22:92,70:S},t([5,51,64,71,72,73,74,75,76,77,78,79,80,81],[2,68]),t(K,[2,6]),t(K,[2,15]),t(R,[2,9],{10:93}),t(K,[2,17]),{5:[1,95],19:[1,94]},{5:[1,96]},t(K,[2,21]),{5:[1,97]},{5:[1,98]},t(K,[2,24]),t(K,[2,25]),t(K,[2,26]),t(K,[2,27]),t(K,[2,28]),t(K,[2,31]),t(K,[2,32]),t(Y,s,{7:99}),t(Y,s,{7:100}),t(Y,s,{7:101}),t(C,s,{40:102,7:103}),t(B,s,{42:104,7:105}),t(B,s,{7:105,42:106}),t($,s,{45:107,7:108}),t(Y,s,{7:109}),{5:[1,111],51:[1,110]},{5:[1,113],51:[1,112]},{5:[1,114]},{22:117,68:[1,115],69:[1,116],70:S},t(V,[2,69]),t(V,[2,70]),t(V,[2,71]),t(V,[2,72]),t(V,[2,73]),t(V,[2,74]),t(V,[2,75]),t(V,[2,76]),t(V,[2,77]),t(V,[2,78]),{22:118,70:S},{22:120,58:119,70:S},{70:[2,63]},{70:[2,64]},{56:121,81:F},{56:123,81:F},{56:124,81:F},{56:125,81:F},{4:[1,128],5:[1,130],11:127,12:129,16:[1,126],50:P,52:k,53:A},{5:[1,131]},t(K,[2,19]),t(K,[2,20]),t(K,[2,22]),t(K,[2,23]),{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[1,132],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[1,133],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[1,134],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{16:[1,135]},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[2,46],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,49:[1,136],50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{16:[1,137]},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[2,44],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,48:[1,138],50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{16:[1,139]},{16:[1,140]},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[2,42],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,47:[1,141],50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{4:i,5:o,8:8,9:10,12:12,13:c,14:l,16:[1,142],17:15,18:d,21:h,22:40,23:p,24:19,25:20,26:21,27:22,28:23,29:g,30:u,31:x,33:y,35:m,36:b,37:T,38:f,39:E,41:w,43:I,44:L,46:_,50:P,52:k,53:A,54:v,59:N,60:M,61:D,62:O,70:S},{15:[1,143]},t(K,[2,49]),{15:[1,144]},t(K,[2,51]),t(K,[2,52]),{22:145,70:S},{22:146,70:S},{56:147,81:F},{56:148,81:F},{56:149,81:F},{64:[1,150],81:[2,62]},{5:[2,55]},{5:[2,79]},{5:[2,56]},{5:[2,57]},{5:[2,58]},t(K,[2,16]),t(R,[2,10]),{12:151,50:P,52:k,53:A},t(R,[2,12]),t(R,[2,13]),t(K,[2,18]),t(K,[2,34]),t(K,[2,35]),t(K,[2,36]),t(K,[2,37]),{15:[1,152]},t(K,[2,38]),{15:[1,153]},t(K,[2,39]),t(K,[2,40]),{15:[1,154]},t(K,[2,41]),{5:[1,155]},{5:[1,156]},{56:157,81:F},{56:158,81:F},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:159,70:S},t(R,[2,11]),t(C,s,{7:103,40:160}),t(B,s,{7:105,42:161}),t($,s,{7:108,45:162}),t(K,[2,48]),t(K,[2,50]),{5:[2,65]},{5:[2,66]},{81:[2,61]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],87:[2,63],88:[2,64],121:[2,55],122:[2,79],123:[2,56],124:[2,57],125:[2,58],147:[2,67],148:[2,53],149:[2,54],157:[2,65],158:[2,66],159:[2,61],160:[2,47],161:[2,45],162:[2,43]},parseError:(0,n.K2)((function(t,e){if(!e.recoverable){var a=new Error(t);throw a.hash=e,a}this.trace(t)}),"parseError"),parse:(0,n.K2)((function(t){var e=this,a=[0],r=[],s=[null],i=[],o=this.table,c="",l=0,d=0,h=0,p=i.slice.call(arguments,1),g=Object.create(this.lexer),u={yy:{}};for(var x in this.yy)Object.prototype.hasOwnProperty.call(this.yy,x)&&(u.yy[x]=this.yy[x]);g.setInput(t,u.yy),u.yy.lexer=g,u.yy.parser=this,void 0===g.yylloc&&(g.yylloc={});var y=g.yylloc;i.push(y);var m=g.options&&g.options.ranges;function b(){var t;return"number"!=typeof(t=r.pop()||g.lex()||1)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof u.yy.parseError?this.parseError=u.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,n.K2)((function(t){a.length=a.length-2*t,s.length=s.length-t,i.length=i.length-t}),"popStack"),(0,n.K2)(b,"lex");for(var T,f,E,w,I,L,_,P,k,A={};;){if(E=a[a.length-1],this.defaultActions[E]?w=this.defaultActions[E]:(null==T&&(T=b()),w=o[E]&&o[E][T]),void 0===w||!w.length||!w[0]){var v;for(L in k=[],o[E])this.terminals_[L]&&L>2&&k.push("'"+this.terminals_[L]+"'");v=g.showPosition?"Parse error on line "+(l+1)+":\n"+g.showPosition()+"\nExpecting "+k.join(", ")+", got '"+(this.terminals_[T]||T)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==T?"end of input":"'"+(this.terminals_[T]||T)+"'"),this.parseError(v,{text:g.match,token:this.terminals_[T]||T,line:g.yylineno,loc:y,expected:k})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+T);switch(w[0]){case 1:a.push(T),s.push(g.yytext),i.push(g.yylloc),a.push(w[1]),T=null,f?(T=f,f=null):(d=g.yyleng,c=g.yytext,l=g.yylineno,y=g.yylloc,h>0&&h--);break;case 2:if(_=this.productions_[w[1]][1],A.$=s[s.length-_],A._$={first_line:i[i.length-(_||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(_||1)].first_column,last_column:i[i.length-1].last_column},m&&(A._$.range=[i[i.length-(_||1)].range[0],i[i.length-1].range[1]]),void 0!==(I=this.performAction.apply(A,[c,d,l,u.yy,w[1],s,i].concat(p))))return I;_&&(a=a.slice(0,-1*_*2),s=s.slice(0,-1*_),i=i.slice(0,-1*_)),a.push(this.productions_[w[1]][0]),s.push(A.$),i.push(A._$),P=o[a[a.length-2]][a[a.length-1]],a.push(P);break;case 3:return!0}}return!0}),"parse")},q=function(){return{EOF:1,parseError:(0,n.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,n.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,n.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,n.K2)((function(t){var e=t.length,a=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===r.length?this.yylloc.first_column:0)+r[r.length-a.length].length-a[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,n.K2)((function(){return this._more=!0,this}),"more"),reject:(0,n.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,n.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,n.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,n.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,n.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,n.K2)((function(t,e){var a,r,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],a=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),a)return a;if(this._backtrack){for(var i in s)this[i]=s[i];return!1}return!1}),"test_match"),next:(0,n.K2)((function(){if(this.done)return this.EOF;var t,e,a,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),i=0;ie[0].length)){if(e=a,r=i,this.options.backtrack_lexer){if(!1!==(t=this.test_match(a,s[i])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,n.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,n.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,n.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,n.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,n.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,n.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,n.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,n.K2)((function(t,e,a,r){switch(a){case 0:case 51:case 66:return 5;case 1:case 2:case 3:case 4:case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;case 8:return this.begin("ID"),50;case 9:return this.begin("ID"),52;case 10:return 13;case 11:return this.begin("ID"),53;case 12:return e.yytext=e.yytext.trim(),this.begin("ALIAS"),70;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;case 14:return this.popState(),this.popState(),5;case 15:return this.begin("LINE"),36;case 16:return this.begin("LINE"),37;case 17:return this.begin("LINE"),38;case 18:return this.begin("LINE"),39;case 19:return this.begin("LINE"),49;case 20:return this.begin("LINE"),41;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),48;case 23:return this.begin("LINE"),44;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),46;case 26:return this.popState(),15;case 27:return 16;case 28:return 65;case 29:return 66;case 30:return 59;case 31:return 60;case 32:return 61;case 33:return 62;case 34:return 57;case 35:return 54;case 36:return this.begin("ID"),21;case 37:return this.begin("ID"),23;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;case 41:return this.popState(),"acc_title_value";case 42:return this.begin("acc_descr"),33;case 43:return this.popState(),"acc_descr_value";case 44:this.begin("acc_descr_multiline");break;case 45:this.popState();break;case 46:return"acc_descr_multiline_value";case 47:return 6;case 48:return 18;case 49:return 20;case 50:return 64;case 52:return e.yytext=e.yytext.trim(),70;case 53:return 73;case 54:return 74;case 55:return 75;case 56:return 76;case 57:return 71;case 58:return 72;case 59:return 77;case 60:return 78;case 61:return 79;case 62:return 80;case 63:return 81;case 64:return 68;case 65:return 69;case 67:return"INVALID"}}),"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\<->\->:\n,;]+?([\-]*[^\<->\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\<->\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\<->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[45,46],inclusive:!1},acc_descr:{rules:[43],inclusive:!1},acc_title:{rules:[41],inclusive:!1},ID:{rules:[2,3,12],inclusive:!1},ALIAS:{rules:[2,3,13,14],inclusive:!1},LINE:{rules:[2,3,26],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,7,8,9,10,11,15,16,17,18,19,20,21,22,23,24,25,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67],inclusive:!0}}}}();function z(){this.yy={}}return W.lexer=q,(0,n.K2)(z,"Parser"),z.prototype=W,W.Parser=z,new z}();l.parser=l;var d=l,h=new s.m((()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0}))),p=(0,n.K2)((function(t){h.records.boxes.push({name:t.text,wrap:t.wrap??M(),fill:t.color,actorKeys:[]}),h.records.currentBox=h.records.boxes.slice(-1)[0]}),"addBox"),g=(0,n.K2)((function(t,e,a,r){let s=h.records.currentBox;const i=h.records.actors.get(t);if(i){if(h.records.currentBox&&i.box&&h.records.currentBox!==i.box)throw new Error(`A same participant should only be defined in one Box: ${i.name} can't be in '${i.box.name}' and in '${h.records.currentBox.name}' at the same time.`);if(s=i.box?i.box:h.records.currentBox,i.box=s,i&&e===i.name&&null==a)return}if(null==a?.text&&(a={text:e,type:r}),null!=r&&null!=a.text||(a={text:e,type:r}),h.records.actors.set(t,{box:s,name:e,description:a.text,wrap:a.wrap??M(),prevActor:h.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:r??"participant"}),h.records.prevActor){const e=h.records.actors.get(h.records.prevActor);e&&(e.nextActor=t)}h.records.currentBox&&h.records.currentBox.actorKeys.push(t),h.records.prevActor=t}),"addActor"),u=(0,n.K2)((t=>{let e,a=0;if(!t)return 0;for(e=0;e>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},e}return h.records.messages.push({from:t,to:e,message:a?.text??"",wrap:a?.wrap??M(),type:r,activate:s}),!0}),"addSignal"),m=(0,n.K2)((function(){return h.records.boxes.length>0}),"hasAtLeastOneBox"),b=(0,n.K2)((function(){return h.records.boxes.some((t=>t.name))}),"hasAtLeastOneBoxWithTitle"),T=(0,n.K2)((function(){return h.records.messages}),"getMessages"),f=(0,n.K2)((function(){return h.records.boxes}),"getBoxes"),E=(0,n.K2)((function(){return h.records.actors}),"getActors"),w=(0,n.K2)((function(){return h.records.createdActors}),"getCreatedActors"),I=(0,n.K2)((function(){return h.records.destroyedActors}),"getDestroyedActors"),L=(0,n.K2)((function(t){return h.records.actors.get(t)}),"getActor"),_=(0,n.K2)((function(){return[...h.records.actors.keys()]}),"getActorKeys"),P=(0,n.K2)((function(){h.records.sequenceNumbersEnabled=!0}),"enableSequenceNumbers"),k=(0,n.K2)((function(){h.records.sequenceNumbersEnabled=!1}),"disableSequenceNumbers"),A=(0,n.K2)((()=>h.records.sequenceNumbersEnabled),"showSequenceNumbers"),v=(0,n.K2)((function(t){h.records.wrapEnabled=t}),"setWrap"),N=(0,n.K2)((t=>{if(void 0===t)return{};t=t.trim();const e=null!==/^:?wrap:/.exec(t)||null===/^:?nowrap:/.exec(t)&&void 0;return{cleanedText:(void 0===e?t:t.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:e}}),"extractWrap"),M=(0,n.K2)((()=>void 0!==h.records.wrapEnabled?h.records.wrapEnabled:(0,n.D7)().sequence?.wrap??!1),"autoWrap"),D=(0,n.K2)((function(){h.reset(),(0,n.IU)()}),"clear"),O=(0,n.K2)((function(t){const e=t.trim(),{wrap:a,cleanedText:r}=N(e),s={text:r,wrap:a};return n.Rm.debug(`parseMessage: ${JSON.stringify(s)}`),s}),"parseMessage"),S=(0,n.K2)((function(t){const e=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(t);let a=e?.[1]?e[1].trim():"transparent",r=e?.[2]?e[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",a)||(a="transparent",r=t.trim());else{const e=(new Option).style;e.color=a,e.color!==a&&(a="transparent",r=t.trim())}const{wrap:s,cleanedText:i}=N(r);return{text:i?(0,n.jZ)(i,(0,n.D7)()):void 0,color:a,wrap:s}}),"parseBoxData"),K={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34},R=(0,n.K2)((function(t,e,a){const r={actor:t,placement:e,message:a.text,wrap:a.wrap??M()},s=[].concat(t,t);h.records.notes.push(r),h.records.messages.push({from:s[0],to:s[1],message:a.text,wrap:a.wrap??M(),type:K.NOTE,placement:e})}),"addNote"),Y=(0,n.K2)((function(t,e){const a=L(t);try{let t=(0,n.jZ)(e.text,(0,n.D7)());t=t.replace(/&/g,"&"),t=t.replace(/=/g,"="),B(a,JSON.parse(t))}catch(t){n.Rm.error("error while parsing actor link text",t)}}),"addLinks"),C=(0,n.K2)((function(t,e){const a=L(t);try{const t={};let r=(0,n.jZ)(e.text,(0,n.D7)());const s=r.indexOf("@");r=r.replace(/&/g,"&"),r=r.replace(/=/g,"=");const i=r.slice(0,s-1).trim(),o=r.slice(s+1).trim();t[i]=o,B(a,t)}catch(t){n.Rm.error("error while parsing actor link text",t)}}),"addALink");function B(t,e){if(null==t.links)t.links=e;else for(const a in e)t.links[a]=e[a]}(0,n.K2)(B,"insertLinks");var $=(0,n.K2)((function(t,e){const a=L(t);try{const t=(0,n.jZ)(e.text,(0,n.D7)());V(a,JSON.parse(t))}catch(t){n.Rm.error("error while parsing actor properties text",t)}}),"addProperties");function V(t,e){if(null==t.properties)t.properties=e;else for(const a in e)t.properties[a]=e[a]}function F(){h.records.currentBox=void 0}(0,n.K2)(V,"insertProperties"),(0,n.K2)(F,"boxEnd");var W=(0,n.K2)((function(t,e){const a=L(t),r=document.getElementById(e.text);try{const t=r.innerHTML,e=JSON.parse(t);e.properties&&V(a,e.properties),e.links&&B(a,e.links)}catch(t){n.Rm.error("error while parsing actor details text",t)}}),"addDetails"),q=(0,n.K2)((function(t,e){if(void 0!==t?.properties)return t.properties[e]}),"getActorProperty"),z=(0,n.K2)((function(t){if(Array.isArray(t))t.forEach((function(t){z(t)}));else switch(t.type){case"sequenceIndex":h.records.messages.push({from:void 0,to:void 0,message:{start:t.sequenceIndex,step:t.sequenceIndexStep,visible:t.sequenceVisible},wrap:!1,type:t.signalType});break;case"addParticipant":g(t.actor,t.actor,t.description,t.draw);break;case"createParticipant":if(h.records.actors.has(t.actor))throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");h.records.lastCreated=t.actor,g(t.actor,t.actor,t.description,t.draw),h.records.createdActors.set(t.actor,h.records.messages.length);break;case"destroyParticipant":h.records.lastDestroyed=t.actor,h.records.destroyedActors.set(t.actor,h.records.messages.length);break;case"activeStart":case"activeEnd":y(t.actor,void 0,void 0,t.signalType);break;case"addNote":R(t.actor,t.placement,t.text);break;case"addLinks":Y(t.actor,t.text);break;case"addALink":C(t.actor,t.text);break;case"addProperties":$(t.actor,t.text);break;case"addDetails":W(t.actor,t.text);break;case"addMessage":if(h.records.lastCreated){if(t.to!==h.records.lastCreated)throw new Error("The created participant "+h.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");h.records.lastCreated=void 0}else if(h.records.lastDestroyed){if(t.to!==h.records.lastDestroyed&&t.from!==h.records.lastDestroyed)throw new Error("The destroyed participant "+h.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");h.records.lastDestroyed=void 0}y(t.from,t.to,t.msg,t.signalType,t.activate);break;case"boxStart":p(t.boxData);break;case"boxEnd":F();break;case"loopStart":y(void 0,void 0,t.loopText,t.signalType);break;case"loopEnd":case"rectEnd":case"optEnd":case"altEnd":case"parEnd":case"criticalEnd":case"breakEnd":y(void 0,void 0,void 0,t.signalType);break;case"rectStart":y(void 0,void 0,t.color,t.signalType);break;case"optStart":y(void 0,void 0,t.optText,t.signalType);break;case"altStart":case"else":y(void 0,void 0,t.altText,t.signalType);break;case"setAccTitle":(0,n.SV)(t.text);break;case"parStart":case"and":y(void 0,void 0,t.parText,t.signalType);break;case"criticalStart":y(void 0,void 0,t.criticalText,t.signalType);break;case"option":y(void 0,void 0,t.optionText,t.signalType);break;case"breakStart":y(void 0,void 0,t.breakText,t.signalType)}}),"apply"),H={addActor:g,addMessage:x,addSignal:y,addLinks:Y,addDetails:W,addProperties:$,autoWrap:M,setWrap:v,enableSequenceNumbers:P,disableSequenceNumbers:k,showSequenceNumbers:A,getMessages:T,getActors:E,getCreatedActors:w,getDestroyedActors:I,getActor:L,getActorKeys:_,getActorProperty:q,getAccTitle:n.iN,getBoxes:f,getDiagramTitle:n.ab,setDiagramTitle:n.ke,getConfig:(0,n.K2)((()=>(0,n.D7)().sequence),"getConfig"),clear:D,parseMessage:O,parseBoxData:S,LINETYPE:K,ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},addNote:R,setAccTitle:n.SV,apply:z,setAccDescription:n.EI,getAccDescription:n.m7,hasAtLeastOneBox:m,hasAtLeastOneBoxWithTitle:b},j=(0,n.K2)((t=>`.actor {\n stroke: ${t.actorBorder};\n fill: ${t.actorBkg};\n }\n\n text.actor > tspan {\n fill: ${t.actorTextColor};\n stroke: none;\n }\n\n .actor-line {\n stroke: ${t.actorLineColor};\n }\n\n .messageLine0 {\n stroke-width: 1.5;\n stroke-dasharray: none;\n stroke: ${t.signalColor};\n }\n\n .messageLine1 {\n stroke-width: 1.5;\n stroke-dasharray: 2, 2;\n stroke: ${t.signalColor};\n }\n\n #arrowhead path {\n fill: ${t.signalColor};\n stroke: ${t.signalColor};\n }\n\n .sequenceNumber {\n fill: ${t.sequenceNumberColor};\n }\n\n #sequencenumber {\n fill: ${t.signalColor};\n }\n\n #crosshead path {\n fill: ${t.signalColor};\n stroke: ${t.signalColor};\n }\n\n .messageText {\n fill: ${t.signalTextColor};\n stroke: none;\n }\n\n .labelBox {\n stroke: ${t.labelBoxBorderColor};\n fill: ${t.labelBoxBkgColor};\n }\n\n .labelText, .labelText > tspan {\n fill: ${t.labelTextColor};\n stroke: none;\n }\n\n .loopText, .loopText > tspan {\n fill: ${t.loopTextColor};\n stroke: none;\n }\n\n .loopLine {\n stroke-width: 2px;\n stroke-dasharray: 2, 2;\n stroke: ${t.labelBoxBorderColor};\n fill: ${t.labelBoxBorderColor};\n }\n\n .note {\n //stroke: #decc93;\n stroke: ${t.noteBorderColor};\n fill: ${t.noteBkgColor};\n }\n\n .noteText, .noteText > tspan {\n fill: ${t.noteTextColor};\n stroke: none;\n }\n\n .activation0 {\n fill: ${t.activationBkgColor};\n stroke: ${t.activationBorderColor};\n }\n\n .activation1 {\n fill: ${t.activationBkgColor};\n stroke: ${t.activationBorderColor};\n }\n\n .activation2 {\n fill: ${t.activationBkgColor};\n stroke: ${t.activationBorderColor};\n }\n\n .actorPopupMenu {\n position: absolute;\n }\n\n .actorPopupMenuPanel {\n position: absolute;\n fill: ${t.actorBkg};\n box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);\n filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));\n}\n .actor-man line {\n stroke: ${t.actorBorder};\n fill: ${t.actorBkg};\n }\n .actor-man circle, line {\n stroke: ${t.actorBorder};\n fill: ${t.actorBkg};\n stroke-width: 2px;\n }\n`),"getStyles"),U="actor-top",J="actor-bottom",X="actor-man",G=(0,n.K2)((function(t,e){return(0,r.tk)(t,e)}),"drawRect"),Z=(0,n.K2)((function(t,e,a,r,s){if(void 0===e.links||null===e.links||0===Object.keys(e.links).length)return{height:0,width:0};const i=e.links,n=e.actorCnt,o=e.rectData;var l="none";s&&(l="block !important");const d=t.append("g");d.attr("id","actor"+n+"_popup"),d.attr("class","actorPopupMenu"),d.attr("display",l);var h="";void 0!==o.class&&(h=" "+o.class);let p=o.width>a?o.width:a;const g=d.append("rect");if(g.attr("class","actorPopupMenuPanel"+h),g.attr("x",o.x),g.attr("y",o.height),g.attr("fill",o.fill),g.attr("stroke",o.stroke),g.attr("width",p),g.attr("height",o.height),g.attr("rx",o.rx),g.attr("ry",o.ry),null!=i){var u=20;for(let t in i){var x=d.append("a"),y=(0,c.J)(i[t]);x.attr("xlink:href",y),x.attr("target","_blank"),It(r)(t,x,o.x+10,o.height+u,p,20,{class:"actor"},r),u+=30}}return g.attr("height",u),{height:o.height+u,width:p}}),"drawPopup"),Q=(0,n.K2)((function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"}),"popupMenuToggle"),tt=(0,n.K2)((async function(t,e,a=null){let r=t.append("foreignObject");const s=await(0,n.VJ)(e.text,(0,n.zj)()),i=r.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(s).node().getBoundingClientRect();if(r.attr("height",Math.round(i.height)).attr("width",Math.round(i.width)),"noteText"===e.class){const a=t.node().firstChild;a.setAttribute("height",i.height+2*e.textMargin);const s=a.getBBox();r.attr("x",Math.round(s.x+s.width/2-i.width/2)).attr("y",Math.round(s.y+s.height/2-i.height/2))}else if(a){let{startx:t,stopx:s,starty:n}=a;if(t>s){const e=t;t=s,s=e}r.attr("x",Math.round(t+Math.abs(t-s)/2-i.width/2)),"loopText"===e.class?r.attr("y",Math.round(n)):r.attr("y",Math.round(n-i.height))}return[r]}),"drawKatex"),et=(0,n.K2)((function(t,e){let a=0,r=0;const s=e.text.split(n.Y2.lineBreakRegex),[o,c]=(0,i.I5)(e.fontSize);let l=[],d=0,h=(0,n.K2)((()=>e.y),"yfunc");if(void 0!==e.valign&&void 0!==e.textMargin&&e.textMargin>0)switch(e.valign){case"top":case"start":h=(0,n.K2)((()=>Math.round(e.y+e.textMargin)),"yfunc");break;case"middle":case"center":h=(0,n.K2)((()=>Math.round(e.y+(a+r+e.textMargin)/2)),"yfunc");break;case"bottom":case"end":h=(0,n.K2)((()=>Math.round(e.y+(a+r+2*e.textMargin)-e.textMargin)),"yfunc")}if(void 0!==e.anchor&&void 0!==e.textMargin&&void 0!==e.width)switch(e.anchor){case"left":case"start":e.x=Math.round(e.x+e.textMargin),e.anchor="start",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"middle":case"center":e.x=Math.round(e.x+e.width/2),e.anchor="middle",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"right":case"end":e.x=Math.round(e.x+e.width-e.textMargin),e.anchor="end",e.dominantBaseline="middle",e.alignmentBaseline="middle"}for(let[n,p]of s.entries()){void 0!==e.textMargin&&0===e.textMargin&&void 0!==o&&(d=n*o);const s=t.append("text");s.attr("x",e.x),s.attr("y",h()),void 0!==e.anchor&&s.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline),void 0!==e.fontFamily&&s.style("font-family",e.fontFamily),void 0!==c&&s.style("font-size",c),void 0!==e.fontWeight&&s.style("font-weight",e.fontWeight),void 0!==e.fill&&s.attr("fill",e.fill),void 0!==e.class&&s.attr("class",e.class),void 0!==e.dy?s.attr("dy",e.dy):0!==d&&s.attr("dy",d);const g=p||i.pe;if(e.tspan){const t=s.append("tspan");t.attr("x",e.x),void 0!==e.fill&&t.attr("fill",e.fill),t.text(g)}else s.text(g);void 0!==e.valign&&void 0!==e.textMargin&&e.textMargin>0&&(r+=(s._groups||s)[0][0].getBBox().height,a=r),l.push(s)}return l}),"drawText"),at=(0,n.K2)((function(t,e){function a(t,e,a,r,s){return t+","+e+" "+(t+a)+","+e+" "+(t+a)+","+(e+r-s)+" "+(t+a-1.2*s)+","+(e+r)+" "+t+","+(e+r)}(0,n.K2)(a,"genPoints");const r=t.append("polygon");return r.attr("points",a(e.x,e.y,e.width,e.height,7)),r.attr("class","labelBox"),e.y=e.y+e.height/2,et(t,e),r}),"drawLabel"),rt=-1,st=(0,n.K2)(((t,e,a,r)=>{t.select&&a.forEach((a=>{const s=e.get(a),i=t.select("#actor"+s.actorCnt);!r.mirrorActors&&s.stopy?i.attr("y2",s.stopy+s.height/2):r.mirrorActors&&i.attr("y2",s.stopy)}))}),"fixLifeLineHeights"),it=(0,n.K2)((function(t,e,a,s){const i=s?e.stopy:e.starty,o=e.x+e.width/2,c=i+5,l=t.append("g").lower();var d=l;s||(rt++,Object.keys(e.links||{}).length&&!a.forceMenus&&d.attr("onclick",Q(`actor${rt}_popup`)).attr("cursor","pointer"),d.append("line").attr("id","actor"+rt).attr("x1",o).attr("y1",c).attr("x2",o).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),d=l.append("g"),e.actorCnt=rt,null!=e.links&&d.attr("id","root-"+rt));const h=(0,r.PB)();var p="actor";e.properties?.class?p=e.properties.class:h.fill="#eaeaea",p+=s?` ${J}`:` ${U}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=p,h.rx=3,h.ry=3,h.name=e.name;const g=G(d,h);if(e.rectData=h,e.properties?.icon){const t=e.properties.icon.trim();"@"===t.charAt(0)?(0,r.CP)(d,h.x+h.width-20,h.y+10,t.substr(1)):(0,r.aC)(d,h.x+h.width-20,h.y+10,t)}wt(a,(0,n.Wi)(e.description))(e.description,d,h.x,h.y,h.width,h.height,{class:"actor actor-box"},a);let u=e.height;if(g.node){const t=g.node().getBBox();e.height=t.height,u=t.height}return u}),"drawActorTypeParticipant"),nt=(0,n.K2)((function(t,e,a,s){const i=s?e.stopy:e.starty,o=e.x+e.width/2,c=i+80,l=t.append("g").lower();s||(rt++,l.append("line").attr("id","actor"+rt).attr("x1",o).attr("y1",c).attr("x2",o).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=rt);const d=t.append("g");let h=X;h+=s?` ${J}`:` ${U}`,d.attr("class",h),d.attr("name",e.name);const p=(0,r.PB)();p.x=e.x,p.y=i,p.fill="#eaeaea",p.width=e.width,p.height=e.height,p.class="actor",p.rx=3,p.ry=3,d.append("line").attr("id","actor-man-torso"+rt).attr("x1",o).attr("y1",i+25).attr("x2",o).attr("y2",i+45),d.append("line").attr("id","actor-man-arms"+rt).attr("x1",o-18).attr("y1",i+33).attr("x2",o+18).attr("y2",i+33),d.append("line").attr("x1",o-18).attr("y1",i+60).attr("x2",o).attr("y2",i+45),d.append("line").attr("x1",o).attr("y1",i+45).attr("x2",o+18-2).attr("y2",i+60);const g=d.append("circle");g.attr("cx",e.x+e.width/2),g.attr("cy",i+10),g.attr("r",15),g.attr("width",e.width),g.attr("height",e.height);const u=d.node().getBBox();return e.height=u.height,wt(a,(0,n.Wi)(e.description))(e.description,d,p.x,p.y+35,p.width,p.height,{class:`actor ${X}`},a),e.height}),"drawActorTypeActor"),ot=(0,n.K2)((async function(t,e,a,r){switch(e.type){case"actor":return await nt(t,e,a,r);case"participant":return await it(t,e,a,r)}}),"drawActor"),ct=(0,n.K2)((function(t,e,a){const r=t.append("g");pt(r,e),e.name&&wt(a)(e.name,r,e.x,e.y+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},a),r.lower()}),"drawBox"),lt=(0,n.K2)((function(t){return t.append("g")}),"anchorElement"),dt=(0,n.K2)((function(t,e,a,s,i){const n=(0,r.PB)(),o=e.anchored;n.x=e.startx,n.y=e.starty,n.class="activation"+i%3,n.width=e.stopx-e.startx,n.height=a-e.starty,G(o,n)}),"drawActivation"),ht=(0,n.K2)((async function(t,e,a,s){const{boxMargin:i,boxTextMargin:o,labelBoxHeight:c,labelBoxWidth:l,messageFontFamily:d,messageFontSize:h,messageFontWeight:p}=s,g=t.append("g"),u=(0,n.K2)((function(t,e,a,r){return g.append("line").attr("x1",t).attr("y1",e).attr("x2",a).attr("y2",r).attr("class","loopLine")}),"drawLoopLine");u(e.startx,e.starty,e.stopx,e.starty),u(e.stopx,e.starty,e.stopx,e.stopy),u(e.startx,e.stopy,e.stopx,e.stopy),u(e.startx,e.starty,e.startx,e.stopy),void 0!==e.sections&&e.sections.forEach((function(t){u(e.startx,t.y,e.stopx,t.y).style("stroke-dasharray","3, 3")}));let x=(0,r.HT)();x.text=a,x.x=e.startx,x.y=e.starty,x.fontFamily=d,x.fontSize=h,x.fontWeight=p,x.anchor="middle",x.valign="middle",x.tspan=!1,x.width=l||50,x.height=c||20,x.textMargin=o,x.class="labelText",at(g,x),x=ft(),x.text=e.title,x.x=e.startx+l/2+(e.stopx-e.startx)/2,x.y=e.starty+i+o,x.anchor="middle",x.valign="middle",x.textMargin=o,x.class="loopText",x.fontFamily=d,x.fontSize=h,x.fontWeight=p,x.wrap=!0;let y=(0,n.Wi)(x.text)?await tt(g,x,e):et(g,x);if(void 0!==e.sectionTitles)for(const[t,a]of Object.entries(e.sectionTitles))if(a.message){x.text=a.message,x.x=e.startx+(e.stopx-e.startx)/2,x.y=e.sections[t].y+i+o,x.class="loopText",x.anchor="middle",x.valign="middle",x.tspan=!1,x.fontFamily=d,x.fontSize=h,x.fontWeight=p,x.wrap=e.wrap,(0,n.Wi)(x.text)?(e.starty=e.sections[t].y,await tt(g,x,e)):et(g,x);let r=Math.round(y.map((t=>(t._groups||t)[0][0].getBBox().height)).reduce(((t,e)=>t+e)));e.sections[t].height+=r-(i+o)}return e.height=Math.round(e.stopy-e.starty),g}),"drawLoop"),pt=(0,n.K2)((function(t,e){(0,r.lC)(t,e)}),"drawBackgroundRect"),gt=(0,n.K2)((function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")}),"insertDatabaseIcon"),ut=(0,n.K2)((function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")}),"insertComputerIcon"),xt=(0,n.K2)((function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")}),"insertClockIcon"),yt=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")}),"insertArrowHead"),mt=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"insertArrowFilledHead"),bt=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)}),"insertSequenceNumber"),Tt=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")}),"insertArrowCrossHead"),ft=(0,n.K2)((function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}}),"getTextObj"),Et=(0,n.K2)((function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}}),"getNoteRect"),wt=function(){function t(t,e,a,r,i,n,o){s(e.append("text").attr("x",a+i/2).attr("y",r+n/2+5).style("text-anchor","middle").text(t),o)}function e(t,e,a,r,o,c,l,d){const{actorFontSize:h,actorFontFamily:p,actorFontWeight:g}=d,[u,x]=(0,i.I5)(h),y=t.split(n.Y2.lineBreakRegex);for(let t=0;tt.height||0)))+(0===this.loops.length?0:this.loops.map((t=>t.height||0)).reduce(((t,e)=>t+e)))+(0===this.messages.length?0:this.messages.map((t=>t.height||0)).reduce(((t,e)=>t+e)))+(0===this.notes.length?0:this.notes.map((t=>t.height||0)).reduce(((t,e)=>t+e)))}),"getHeight"),clear:(0,n.K2)((function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]}),"clear"),addBox:(0,n.K2)((function(t){this.boxes.push(t)}),"addBox"),addActor:(0,n.K2)((function(t){this.actors.push(t)}),"addActor"),addLoop:(0,n.K2)((function(t){this.loops.push(t)}),"addLoop"),addMessage:(0,n.K2)((function(t){this.messages.push(t)}),"addMessage"),addNote:(0,n.K2)((function(t){this.notes.push(t)}),"addNote"),lastActor:(0,n.K2)((function(){return this.actors[this.actors.length-1]}),"lastActor"),lastLoop:(0,n.K2)((function(){return this.loops[this.loops.length-1]}),"lastLoop"),lastMessage:(0,n.K2)((function(){return this.messages[this.messages.length-1]}),"lastMessage"),lastNote:(0,n.K2)((function(){return this.notes[this.notes.length-1]}),"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:(0,n.K2)((function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,Rt((0,n.D7)())}),"init"),updateVal:(0,n.K2)((function(t,e,a,r){void 0===t[e]?t[e]=a:t[e]=r(a,t[e])}),"updateVal"),updateBounds:(0,n.K2)((function(t,e,a,r){const s=this;let i=0;function o(o){return(0,n.K2)((function(n){i++;const c=s.sequenceItems.length-i+1;s.updateVal(n,"starty",e-c*_t.boxMargin,Math.min),s.updateVal(n,"stopy",r+c*_t.boxMargin,Math.max),s.updateVal(Pt.data,"startx",t-c*_t.boxMargin,Math.min),s.updateVal(Pt.data,"stopx",a+c*_t.boxMargin,Math.max),"activation"!==o&&(s.updateVal(n,"startx",t-c*_t.boxMargin,Math.min),s.updateVal(n,"stopx",a+c*_t.boxMargin,Math.max),s.updateVal(Pt.data,"starty",e-c*_t.boxMargin,Math.min),s.updateVal(Pt.data,"stopy",r+c*_t.boxMargin,Math.max))}),"updateItemBounds")}(0,n.K2)(o,"updateFn"),this.sequenceItems.forEach(o()),this.activations.forEach(o("activation"))}),"updateBounds"),insert:(0,n.K2)((function(t,e,a,r){const s=n.Y2.getMin(t,a),i=n.Y2.getMax(t,a),o=n.Y2.getMin(e,r),c=n.Y2.getMax(e,r);this.updateVal(Pt.data,"startx",s,Math.min),this.updateVal(Pt.data,"starty",o,Math.min),this.updateVal(Pt.data,"stopx",i,Math.max),this.updateVal(Pt.data,"stopy",c,Math.max),this.updateBounds(s,o,i,c)}),"insert"),newActivation:(0,n.K2)((function(t,e,a){const r=a.get(t.from),s=Yt(t.from).length||0,i=r.x+r.width/2+(s-1)*_t.activationWidth/2;this.activations.push({startx:i,starty:this.verticalPos+2,stopx:i+_t.activationWidth,stopy:void 0,actor:t.from,anchored:Lt.anchorElement(e)})}),"newActivation"),endActivation:(0,n.K2)((function(t){const e=this.activations.map((function(t){return t.actor})).lastIndexOf(t.from);return this.activations.splice(e,1)[0]}),"endActivation"),createLoop:(0,n.K2)((function(t={message:void 0,wrap:!1,width:void 0},e){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:t.message,wrap:t.wrap,width:t.width,height:0,fill:e}}),"createLoop"),newLoop:(0,n.K2)((function(t={message:void 0,wrap:!1,width:void 0},e){this.sequenceItems.push(this.createLoop(t,e))}),"newLoop"),endLoop:(0,n.K2)((function(){return this.sequenceItems.pop()}),"endLoop"),isLoopOverlap:(0,n.K2)((function(){return!!this.sequenceItems.length&&this.sequenceItems[this.sequenceItems.length-1].overlap}),"isLoopOverlap"),addSectionToLoop:(0,n.K2)((function(t){const e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:Pt.getVerticalPos(),height:0}),e.sectionTitles.push(t),this.sequenceItems.push(e)}),"addSectionToLoop"),saveVerticalPos:(0,n.K2)((function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)}),"saveVerticalPos"),resetVerticalPos:(0,n.K2)((function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)}),"resetVerticalPos"),bumpVerticalPos:(0,n.K2)((function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=n.Y2.getMax(this.data.stopy,this.verticalPos)}),"bumpVerticalPos"),getVerticalPos:(0,n.K2)((function(){return this.verticalPos}),"getVerticalPos"),getBounds:(0,n.K2)((function(){return{bounds:this.data,models:this.models}}),"getBounds")},kt=(0,n.K2)((async function(t,e){Pt.bumpVerticalPos(_t.boxMargin),e.height=_t.boxMargin,e.starty=Pt.getVerticalPos();const a=(0,r.PB)();a.x=e.startx,a.y=e.starty,a.width=e.width||_t.width,a.class="note";const s=t.append("g"),i=Lt.drawRect(s,a),o=(0,r.HT)();o.x=e.startx,o.y=e.starty,o.width=a.width,o.dy="1em",o.text=e.message,o.class="noteText",o.fontFamily=_t.noteFontFamily,o.fontSize=_t.noteFontSize,o.fontWeight=_t.noteFontWeight,o.anchor=_t.noteAlign,o.textMargin=_t.noteMargin,o.valign="center";const c=(0,n.Wi)(o.text)?await tt(s,o):et(s,o),l=Math.round(c.map((t=>(t._groups||t)[0][0].getBBox().height)).reduce(((t,e)=>t+e)));i.attr("height",l+2*_t.noteMargin),e.height+=l+2*_t.noteMargin,Pt.bumpVerticalPos(l+2*_t.noteMargin),e.stopy=e.starty+l+2*_t.noteMargin,e.stopx=e.startx+a.width,Pt.insert(e.startx,e.starty,e.stopx,e.stopy),Pt.models.addNote(e)}),"drawNote"),At=(0,n.K2)((t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight})),"messageFont"),vt=(0,n.K2)((t=>({fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight})),"noteFont"),Nt=(0,n.K2)((t=>({fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight})),"actorFont");async function Mt(t,e){Pt.bumpVerticalPos(10);const{startx:a,stopx:r,message:s}=e,o=n.Y2.splitBreaks(s).length,c=(0,n.Wi)(s),l=c?await(0,n.Dl)(s,(0,n.D7)()):i._K.calculateTextDimensions(s,At(_t));if(!c){const t=l.height/o;e.height+=t,Pt.bumpVerticalPos(t)}let d,h=l.height-10;const p=l.width;if(a===r){d=Pt.getVerticalPos()+h,_t.rightAngles||(h+=_t.boxMargin,d=Pt.getVerticalPos()+h),h+=30;const t=n.Y2.getMax(p/2,_t.width/2);Pt.insert(a-t,Pt.getVerticalPos()-10+h,r+t,Pt.getVerticalPos()+30+h)}else h+=_t.boxMargin,d=Pt.getVerticalPos()+h,Pt.insert(a,d-10,r,d);return Pt.bumpVerticalPos(h),e.height+=h,e.stopy=e.starty+e.height,Pt.insert(e.fromBounds,e.starty,e.toBounds,e.stopy),d}(0,n.K2)(Mt,"boundMessage");var Dt=(0,n.K2)((async function(t,e,a,s){const{startx:o,stopx:c,starty:l,message:d,type:h,sequenceIndex:p,sequenceVisible:g}=e,u=i._K.calculateTextDimensions(d,At(_t)),x=(0,r.HT)();x.x=o,x.y=l+10,x.width=c-o,x.class="messageText",x.dy="1em",x.text=d,x.fontFamily=_t.messageFontFamily,x.fontSize=_t.messageFontSize,x.fontWeight=_t.messageFontWeight,x.anchor=_t.messageAlign,x.valign="center",x.textMargin=_t.wrapPadding,x.tspan=!1,(0,n.Wi)(x.text)?await tt(t,x,{startx:o,stopx:c,starty:a}):et(t,x);const y=u.width;let m;o===c?m=_t.rightAngles?t.append("path").attr("d",`M ${o},${a} H ${o+n.Y2.getMax(_t.width/2,y/2)} V ${a+25} H ${o}`):t.append("path").attr("d","M "+o+","+a+" C "+(o+60)+","+(a-10)+" "+(o+60)+","+(a+30)+" "+o+","+(a+20)):(m=t.append("line"),m.attr("x1",o),m.attr("y1",a),m.attr("x2",c),m.attr("y2",a)),h===s.db.LINETYPE.DOTTED||h===s.db.LINETYPE.DOTTED_CROSS||h===s.db.LINETYPE.DOTTED_POINT||h===s.db.LINETYPE.DOTTED_OPEN||h===s.db.LINETYPE.BIDIRECTIONAL_DOTTED?(m.style("stroke-dasharray","3, 3"),m.attr("class","messageLine1")):m.attr("class","messageLine0");let b="";_t.arrowMarkerAbsolute&&(b=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,b=b.replace(/\(/g,"\\("),b=b.replace(/\)/g,"\\)")),m.attr("stroke-width",2),m.attr("stroke","none"),m.style("fill","none"),h!==s.db.LINETYPE.SOLID&&h!==s.db.LINETYPE.DOTTED||m.attr("marker-end","url("+b+"#arrowhead)"),h!==s.db.LINETYPE.BIDIRECTIONAL_SOLID&&h!==s.db.LINETYPE.BIDIRECTIONAL_DOTTED||(m.attr("marker-start","url("+b+"#arrowhead)"),m.attr("marker-end","url("+b+"#arrowhead)")),h!==s.db.LINETYPE.SOLID_POINT&&h!==s.db.LINETYPE.DOTTED_POINT||m.attr("marker-end","url("+b+"#filled-head)"),h!==s.db.LINETYPE.SOLID_CROSS&&h!==s.db.LINETYPE.DOTTED_CROSS||m.attr("marker-end","url("+b+"#crosshead)"),(g||_t.showSequenceNumbers)&&(m.attr("marker-start","url("+b+"#sequencenumber)"),t.append("text").attr("x",o).attr("y",a+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(p))}),"drawMessage"),Ot=(0,n.K2)((function(t,e,a,r,s,i,o){let c,l=0,d=0,h=0;for(const t of r){const r=e.get(t),i=r.box;c&&c!=i&&(o||Pt.models.addBox(c),d+=_t.boxMargin+c.margin),i&&i!=c&&(o||(i.x=l+d,i.y=s),d+=i.margin),r.width=r.width||_t.width,r.height=n.Y2.getMax(r.height||_t.height,_t.height),r.margin=r.margin||_t.actorMargin,h=n.Y2.getMax(h,r.height),a.get(r.name)&&(d+=r.width/2),r.x=l+d,r.starty=Pt.getVerticalPos(),Pt.insert(r.x,s,r.x+r.width,r.height),l+=r.width+d,r.box&&(r.box.width=l+i.margin-r.box.x),d=r.margin,c=r.box,Pt.models.addActor(r)}c&&!o&&Pt.models.addBox(c),Pt.bumpVerticalPos(h)}),"addActorRenderingData"),St=(0,n.K2)((async function(t,e,a,r){if(r){let r=0;Pt.bumpVerticalPos(2*_t.boxMargin);for(const s of a){const a=e.get(s);a.stopy||(a.stopy=Pt.getVerticalPos());const i=await Lt.drawActor(t,a,_t,!0);r=n.Y2.getMax(r,i)}Pt.bumpVerticalPos(r+_t.boxMargin)}else for(const r of a){const a=e.get(r);await Lt.drawActor(t,a,_t,!1)}}),"drawActors"),Kt=(0,n.K2)((function(t,e,a,r){let s=0,i=0;for(const n of a){const a=e.get(n),o=Wt(a),c=Lt.drawPopup(t,a,o,_t,_t.forceMenus,r);c.height>s&&(s=c.height),c.width+a.x>i&&(i=c.width+a.x)}return{maxHeight:s,maxWidth:i}}),"drawActorsPopup"),Rt=(0,n.K2)((function(t){(0,n.hH)(_t,t),t.fontFamily&&(_t.actorFontFamily=_t.noteFontFamily=_t.messageFontFamily=t.fontFamily),t.fontSize&&(_t.actorFontSize=_t.noteFontSize=_t.messageFontSize=t.fontSize),t.fontWeight&&(_t.actorFontWeight=_t.noteFontWeight=_t.messageFontWeight=t.fontWeight)}),"setConf"),Yt=(0,n.K2)((function(t){return Pt.activations.filter((function(e){return e.actor===t}))}),"actorActivations"),Ct=(0,n.K2)((function(t,e){const a=e.get(t),r=Yt(t);return[r.reduce((function(t,e){return n.Y2.getMin(t,e.startx)}),a.x+a.width/2-1),r.reduce((function(t,e){return n.Y2.getMax(t,e.stopx)}),a.x+a.width/2+1)]}),"activationBounds");function Bt(t,e,a,r,s){Pt.bumpVerticalPos(a);let o=r;if(e.id&&e.message&&t[e.id]){const a=t[e.id].width,s=At(_t);e.message=i._K.wrapLabel(`[${e.message}]`,a-2*_t.wrapPadding,s),e.width=a,e.wrap=!0;const c=i._K.calculateTextDimensions(e.message,s),l=n.Y2.getMax(c.height,_t.labelBoxHeight);o=r+l,n.Rm.debug(`${l} - ${e.message}`)}s(e),Pt.bumpVerticalPos(o)}function $t(t,e,a,r,s,i,o){function c(a,r){a.x{t.add(e.from),t.add(e.to)})),y=y.filter((e=>t.has(e)))}Ot(h,p,g,y,0,m,!1);const w=await jt(m,p,E,r);function I(t,e){const a=Pt.endActivation(t);a.starty+18>e&&(a.starty=e-6,e+=12),Lt.drawActivation(h,a,e,_t,Yt(t.from).length),Pt.insert(a.startx,e-10,a.stopx,e)}Lt.insertArrowHead(h),Lt.insertArrowCrossHead(h),Lt.insertArrowFilledHead(h),Lt.insertSequenceNumber(h),(0,n.K2)(I,"activeEnd");let L=1,_=1;const P=[],k=[];let A=0;for(const t of m){let e,a,s;switch(t.type){case r.db.LINETYPE.NOTE:Pt.resetVerticalPos(),a=t.noteModel,await kt(h,a);break;case r.db.LINETYPE.ACTIVE_START:Pt.newActivation(t,h,p);break;case r.db.LINETYPE.ACTIVE_END:I(t,Pt.getVerticalPos());break;case r.db.LINETYPE.LOOP_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.LOOP_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"loop",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.RECT_START:Bt(w,t,_t.boxMargin,_t.boxMargin,(t=>Pt.newLoop(void 0,t.message)));break;case r.db.LINETYPE.RECT_END:e=Pt.endLoop(),k.push(e),Pt.models.addLoop(e),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos());break;case r.db.LINETYPE.OPT_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.OPT_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"opt",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.ALT_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.ALT_ELSE:Bt(w,t,_t.boxMargin+_t.boxTextMargin,_t.boxMargin,(t=>Pt.addSectionToLoop(t)));break;case r.db.LINETYPE.ALT_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"alt",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t))),Pt.saveVerticalPos();break;case r.db.LINETYPE.PAR_AND:Bt(w,t,_t.boxMargin+_t.boxTextMargin,_t.boxMargin,(t=>Pt.addSectionToLoop(t)));break;case r.db.LINETYPE.PAR_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"par",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.AUTONUMBER:L=t.message.start||L,_=t.message.step||_,t.message.visible?r.db.enableSequenceNumbers():r.db.disableSequenceNumbers();break;case r.db.LINETYPE.CRITICAL_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.CRITICAL_OPTION:Bt(w,t,_t.boxMargin+_t.boxTextMargin,_t.boxMargin,(t=>Pt.addSectionToLoop(t)));break;case r.db.LINETYPE.CRITICAL_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"critical",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;case r.db.LINETYPE.BREAK_START:Bt(w,t,_t.boxMargin,_t.boxMargin+_t.boxTextMargin,(t=>Pt.newLoop(t)));break;case r.db.LINETYPE.BREAK_END:e=Pt.endLoop(),await Lt.drawLoop(h,e,"break",_t),Pt.bumpVerticalPos(e.stopy-Pt.getVerticalPos()),Pt.models.addLoop(e);break;default:try{s=t.msgModel,s.starty=Pt.getVerticalPos(),s.sequenceIndex=L,s.sequenceVisible=r.db.showSequenceNumbers();const e=await Mt(0,s);$t(t,s,e,A,p,g,u),P.push({messageModel:s,lineStartY:e}),Pt.models.addMessage(s)}catch(t){n.Rm.error("error while drawing message",t)}}[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN,r.db.LINETYPE.SOLID,r.db.LINETYPE.DOTTED,r.db.LINETYPE.SOLID_CROSS,r.db.LINETYPE.DOTTED_CROSS,r.db.LINETYPE.SOLID_POINT,r.db.LINETYPE.DOTTED_POINT,r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type)&&(L+=_),A++}n.Rm.debug("createdActors",g),n.Rm.debug("destroyedActors",u),await St(h,p,y,!1);for(const t of P)await Dt(h,t.messageModel,t.lineStartY,r);_t.mirrorActors&&await St(h,p,y,!0),k.forEach((t=>Lt.drawBackgroundRect(h,t))),st(h,p,y,_t);for(const t of Pt.models.boxes)t.height=Pt.getVerticalPos()-t.y,Pt.insert(t.x,t.y,t.x+t.width,t.height),t.startx=t.x,t.starty=t.y,t.stopx=t.startx+t.width,t.stopy=t.starty+t.height,t.stroke="rgb(0,0,0, 0.5)",Lt.drawBox(h,t,_t);T&&Pt.bumpVerticalPos(_t.boxMargin);const v=Kt(h,p,y,d),{bounds:N}=Pt.getBounds();void 0===N.startx&&(N.startx=0),void 0===N.starty&&(N.starty=0),void 0===N.stopx&&(N.stopx=0),void 0===N.stopy&&(N.stopy=0);let M=N.stopy-N.starty;M{const a=At(_t);let r=e.actorKeys.reduce(((e,a)=>e+(t.get(a).width+(t.get(a).margin||0))),0);r-=2*_t.boxTextMargin,e.wrap&&(e.name=i._K.wrapLabel(e.name,r-2*_t.wrapPadding,a));const o=i._K.calculateTextDimensions(e.name,a);s=n.Y2.getMax(o.height,s);const c=n.Y2.getMax(r,o.width+2*_t.wrapPadding);if(e.margin=_t.boxTextMargin,rt.textMaxHeight=s)),n.Y2.getMax(r,_t.height)}(0,n.K2)(qt,"calculateActorMargins");var zt=(0,n.K2)((async function(t,e,a){const r=e.get(t.from),s=e.get(t.to),o=r.x,c=s.x,l=t.wrap&&t.message;let d=(0,n.Wi)(t.message)?await(0,n.Dl)(t.message,(0,n.D7)()):i._K.calculateTextDimensions(l?i._K.wrapLabel(t.message,_t.width,vt(_t)):t.message,vt(_t));const h={width:l?_t.width:n.Y2.getMax(_t.width,d.width+2*_t.noteMargin),height:0,startx:r.x,stopx:0,starty:0,stopy:0,message:t.message};return t.placement===a.db.PLACEMENT.RIGHTOF?(h.width=l?n.Y2.getMax(_t.width,d.width):n.Y2.getMax(r.width/2+s.width/2,d.width+2*_t.noteMargin),h.startx=o+(r.width+_t.actorMargin)/2):t.placement===a.db.PLACEMENT.LEFTOF?(h.width=l?n.Y2.getMax(_t.width,d.width+2*_t.noteMargin):n.Y2.getMax(r.width/2+s.width/2,d.width+2*_t.noteMargin),h.startx=o-h.width+(r.width-_t.actorMargin)/2):t.to===t.from?(d=i._K.calculateTextDimensions(l?i._K.wrapLabel(t.message,n.Y2.getMax(_t.width,r.width),vt(_t)):t.message,vt(_t)),h.width=l?n.Y2.getMax(_t.width,r.width):n.Y2.getMax(r.width,_t.width,d.width+2*_t.noteMargin),h.startx=o+(r.width-h.width)/2):(h.width=Math.abs(o+r.width/2-(c+s.width/2))+_t.actorMargin,h.startx=o2,g=(0,n.K2)((t=>l?-t:t),"adjustValue");t.from===t.to?h=d:(t.activate&&!p&&(h+=g(_t.activationWidth/2-1)),[a.db.LINETYPE.SOLID_OPEN,a.db.LINETYPE.DOTTED_OPEN].includes(t.type)||(h+=g(3)),[a.db.LINETYPE.BIDIRECTIONAL_SOLID,a.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type)&&(d-=g(3)));const u=[r,s,o,c],x=Math.abs(d-h);t.wrap&&t.message&&(t.message=i._K.wrapLabel(t.message,n.Y2.getMax(x+2*_t.wrapPadding,_t.width),At(_t)));const y=i._K.calculateTextDimensions(t.message,At(_t));return{width:n.Y2.getMax(t.wrap?0:y.width+2*_t.wrapPadding,x+2*_t.wrapPadding,_t.width),height:0,startx:d,stopx:h,starty:0,stopy:0,message:t.message,type:t.type,wrap:t.wrap,fromBounds:Math.min.apply(null,u),toBounds:Math.max.apply(null,u)}}),"buildMessageModel"),jt=(0,n.K2)((async function(t,e,a,r){const s={},o=[];let c,l,d;for(const a of t){switch(a.id=i._K.random({length:10}),a.type){case r.db.LINETYPE.LOOP_START:case r.db.LINETYPE.ALT_START:case r.db.LINETYPE.OPT_START:case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:case r.db.LINETYPE.CRITICAL_START:case r.db.LINETYPE.BREAK_START:o.push({id:a.id,msg:a.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case r.db.LINETYPE.ALT_ELSE:case r.db.LINETYPE.PAR_AND:case r.db.LINETYPE.CRITICAL_OPTION:a.message&&(c=o.pop(),s[c.id]=c,s[a.id]=c,o.push(c));break;case r.db.LINETYPE.LOOP_END:case r.db.LINETYPE.ALT_END:case r.db.LINETYPE.OPT_END:case r.db.LINETYPE.PAR_END:case r.db.LINETYPE.CRITICAL_END:case r.db.LINETYPE.BREAK_END:c=o.pop(),s[c.id]=c;break;case r.db.LINETYPE.ACTIVE_START:{const t=e.get(a.from?a.from:a.to.actor),r=Yt(a.from?a.from:a.to.actor).length,s=t.x+t.width/2+(r-1)*_t.activationWidth/2,i={startx:s,stopx:s+_t.activationWidth,actor:a.from,enabled:!0};Pt.activations.push(i)}break;case r.db.LINETYPE.ACTIVE_END:{const t=Pt.activations.map((t=>t.actor)).lastIndexOf(a.from);Pt.activations.splice(t,1).splice(0,1)}}void 0!==a.placement?(l=await zt(a,e,r),a.noteModel=l,o.forEach((t=>{c=t,c.from=n.Y2.getMin(c.from,l.startx),c.to=n.Y2.getMax(c.to,l.startx+l.width),c.width=n.Y2.getMax(c.width,Math.abs(c.from-c.to))-_t.labelBoxWidth}))):(d=Ht(a,e,r),a.msgModel=d,d.startx&&d.stopx&&o.length>0&&o.forEach((t=>{if(c=t,d.startx===d.stopx){const t=e.get(a.from),r=e.get(a.to);c.from=n.Y2.getMin(t.x-d.width/2,t.x-t.width/2,c.from),c.to=n.Y2.getMax(r.x+d.width/2,r.x+t.width/2,c.to),c.width=n.Y2.getMax(c.width,Math.abs(c.to-c.from))-_t.labelBoxWidth}else c.from=n.Y2.getMin(d.startx,c.from),c.to=n.Y2.getMax(d.stopx,c.to),c.width=n.Y2.getMax(c.width,d.width)-_t.labelBoxWidth})))}return Pt.activations=[],n.Rm.debug("Loop type widths:",s),s}),"calculateLoopBounds"),Ut={parser:d,db:H,renderer:{bounds:Pt,drawActors:St,drawActorsPopup:Kt,setConf:Rt,draw:Vt},styles:j,init:(0,n.K2)((({wrap:t})=>{H.setWrap(t)}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/590-754a9e66.chunk.min.js b/themes/hugo-geekdoc/static/js/590-754a9e66.chunk.min.js new file mode 100644 index 000000000..2918bb568 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/590-754a9e66.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[590],{4590:(t,e,a)=>{a.d(e,{diagram:()=>L});var i,n=a(1003),r=(a(4868),a(5388),a(3256),a(8568),a(7750),a(2382),a(5522)),d=a(32),s=a(4852),o=a(567),g=a(697),c={},p=(0,d.K2)(((t,e)=>{c[t]=e}),"set"),h=(0,d.K2)((t=>c[t]),"get"),l=(0,d.K2)((()=>Object.keys(c)),"keys"),x=(0,d.K2)((()=>l().length),"size"),D={get:h,set:p,keys:l,size:x},u=(0,d.K2)((t=>t.append("circle").attr("class","start-state").attr("r",(0,d.D7)().state.sizeUnit).attr("cx",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit).attr("cy",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit)),"drawStartState"),f=(0,d.K2)((t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",(0,d.D7)().state.textHeight).attr("class","divider").attr("x2",2*(0,d.D7)().state.textHeight).attr("y1",0).attr("y2",0)),"drawDivider"),y=(0,d.K2)(((t,e)=>{const a=t.append("text").attr("x",2*(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.textHeight+2*(0,d.D7)().state.padding).attr("font-size",(0,d.D7)().state.fontSize).attr("class","state-title").text(e.id),i=a.node().getBBox();return t.insert("rect",":first-child").attr("x",(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.padding).attr("width",i.width+2*(0,d.D7)().state.padding).attr("height",i.height+2*(0,d.D7)().state.padding).attr("rx",(0,d.D7)().state.radius),a}),"drawSimpleState"),w=(0,d.K2)(((t,e)=>{const a=(0,d.K2)((function(t,e,a){const i=t.append("tspan").attr("x",2*(0,d.D7)().state.padding).text(e);a||i.attr("dy",(0,d.D7)().state.textHeight)}),"addTspan"),i=t.append("text").attr("x",2*(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.textHeight+1.3*(0,d.D7)().state.padding).attr("font-size",(0,d.D7)().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),n=i.height,r=t.append("text").attr("x",(0,d.D7)().state.padding).attr("y",n+.4*(0,d.D7)().state.padding+(0,d.D7)().state.dividerMargin+(0,d.D7)().state.textHeight).attr("class","state-description");let s=!0,o=!0;e.descriptions.forEach((function(t){s||(a(r,t,o),o=!1),s=!1}));const g=t.append("line").attr("x1",(0,d.D7)().state.padding).attr("y1",(0,d.D7)().state.padding+n+(0,d.D7)().state.dividerMargin/2).attr("y2",(0,d.D7)().state.padding+n+(0,d.D7)().state.dividerMargin/2).attr("class","descr-divider"),c=r.node().getBBox(),p=Math.max(c.width,i.width);return g.attr("x2",p+3*(0,d.D7)().state.padding),t.insert("rect",":first-child").attr("x",(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.padding).attr("width",p+2*(0,d.D7)().state.padding).attr("height",c.height+n+2*(0,d.D7)().state.padding).attr("rx",(0,d.D7)().state.radius),t}),"drawDescrState"),m=(0,d.K2)(((t,e,a)=>{const i=(0,d.D7)().state.padding,n=2*(0,d.D7)().state.padding,r=t.node().getBBox(),s=r.width,o=r.x,g=t.append("text").attr("x",0).attr("y",(0,d.D7)().state.titleShift).attr("font-size",(0,d.D7)().state.fontSize).attr("class","state-title").text(e.id),c=g.node().getBBox().width+n;let p,h=Math.max(c,s);h===s&&(h+=n);const l=t.node().getBBox();e.doc,p=o-i,c>s&&(p=(s-h)/2+i),Math.abs(o-l.x)s&&(p=o-(c-s)/2);const x=1-(0,d.D7)().state.textHeight;return t.insert("rect",":first-child").attr("x",p).attr("y",x).attr("class",a?"alt-composit":"composit").attr("width",h).attr("height",l.height+(0,d.D7)().state.textHeight+(0,d.D7)().state.titleShift+1).attr("rx","0"),g.attr("x",p+i),c<=s&&g.attr("x",o+(h-n)/2-c/2+i),t.insert("rect",":first-child").attr("x",p).attr("y",(0,d.D7)().state.titleShift-(0,d.D7)().state.textHeight-(0,d.D7)().state.padding).attr("width",h).attr("height",3*(0,d.D7)().state.textHeight).attr("rx",(0,d.D7)().state.radius),t.insert("rect",":first-child").attr("x",p).attr("y",(0,d.D7)().state.titleShift-(0,d.D7)().state.textHeight-(0,d.D7)().state.padding).attr("width",h).attr("height",l.height+3+2*(0,d.D7)().state.textHeight).attr("rx",(0,d.D7)().state.radius),t}),"addTitleAndBox"),b=(0,d.K2)((t=>(t.append("circle").attr("class","end-state-outer").attr("r",(0,d.D7)().state.sizeUnit+(0,d.D7)().state.miniPadding).attr("cx",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit+(0,d.D7)().state.miniPadding).attr("cy",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit+(0,d.D7)().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",(0,d.D7)().state.sizeUnit).attr("cx",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit+2).attr("cy",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit+2))),"drawEndState"),B=(0,d.K2)(((t,e)=>{let a=(0,d.D7)().state.forkWidth,i=(0,d.D7)().state.forkHeight;if(e.parentId){let t=a;a=i,i=t}return t.append("rect").style("stroke","black").style("fill","black").attr("width",a).attr("height",i).attr("x",(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.padding)}),"drawForkJoinState"),k=(0,d.K2)(((t,e,a,i)=>{let n=0;const r=i.append("text");r.style("text-anchor","start"),r.attr("class","noteText");let s=t.replace(/\r\n/g,"
");s=s.replace(/\n/g,"
");const o=s.split(d.Y2.lineBreakRegex);let g=1.25*(0,d.D7)().state.noteMargin;for(const t of o){const i=t.trim();if(i.length>0){const t=r.append("tspan");t.text(i),0===g&&(g+=t.node().getBBox().height),n+=g,t.attr("x",e+(0,d.D7)().state.noteMargin),t.attr("y",a+n+1.25*(0,d.D7)().state.noteMargin)}}return{textWidth:r.node().getBBox().width,textHeight:n}}),"_drawLongText"),S=(0,d.K2)(((t,e)=>{e.attr("class","state-note");const a=e.append("rect").attr("x",0).attr("y",(0,d.D7)().state.padding),i=e.append("g"),{textWidth:n,textHeight:r}=k(t,0,0,i);return a.attr("height",r+2*(0,d.D7)().state.noteMargin),a.attr("width",n+2*(0,d.D7)().state.noteMargin),a}),"drawNote"),N=(0,d.K2)((function(t,e){const a=e.id,i={id:a,label:e.id,width:0,height:0},n=t.append("g").attr("id",a).attr("class","stateGroup");"start"===e.type&&u(n),"end"===e.type&&b(n),"fork"!==e.type&&"join"!==e.type||B(n,e),"note"===e.type&&S(e.note.text,n),"divider"===e.type&&f(n),"default"===e.type&&0===e.descriptions.length&&y(n,e),"default"===e.type&&e.descriptions.length>0&&w(n,e);const r=n.node().getBBox();return i.width=r.width+2*(0,d.D7)().state.padding,i.height=r.height+2*(0,d.D7)().state.padding,D.set(a,i),i}),"drawState"),E=0,K=(0,d.K2)((function(t,e,a){const i=(0,d.K2)((function(t){switch(t){case n.iP.relationType.AGGREGATION:return"aggregation";case n.iP.relationType.EXTENSION:return"extension";case n.iP.relationType.COMPOSITION:return"composition";case n.iP.relationType.DEPENDENCY:return"dependency"}}),"getRelationType");e.points=e.points.filter((t=>!Number.isNaN(t.y)));const o=e.points,g=(0,s.n8j)().x((function(t){return t.x})).y((function(t){return t.y})).curve(s.qrM),c=t.append("path").attr("d",g(o)).attr("id","edge"+E).attr("class","transition");let p="";if((0,d.D7)().state.arrowMarkerAbsolute&&(p=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,p=p.replace(/\(/g,"\\("),p=p.replace(/\)/g,"\\)")),c.attr("marker-end","url("+p+"#"+i(n.iP.relationType.DEPENDENCY)+"End)"),void 0!==a.title){const i=t.append("g").attr("class","stateLabel"),{x:n,y:s}=r._K.calcLabelPosition(e.points),o=d.Y2.getRows(a.title);let g=0;const c=[];let p=0,h=0;for(let t=0;t<=o.length;t++){const e=i.append("text").attr("text-anchor","middle").text(o[t]).attr("x",n).attr("y",s+g),a=e.node().getBBox();if(p=Math.max(p,a.width),h=Math.min(h,a.x),d.Rm.info(a.x,n,s+g),0===g){const t=e.node().getBBox();g=t.height,d.Rm.info("Title height",g,s)}c.push(e)}let l=g*o.length;if(o.length>1){const t=(o.length-1)*g*.5;c.forEach(((e,a)=>e.attr("y",s+a*g-t))),l=g*o.length}const x=i.node().getBBox();i.insert("rect",":first-child").attr("class","box").attr("x",n-p/2-(0,d.D7)().state.padding/2).attr("y",s-l/2-(0,d.D7)().state.padding/2-3.5).attr("width",p+(0,d.D7)().state.padding).attr("height",l+(0,d.D7)().state.padding),d.Rm.info(x)}E++}),"drawEdge"),M={},v=(0,d.K2)((function(){}),"setConf"),R=(0,d.K2)((function(t){t.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}),"insertMarkers"),z=(0,d.K2)((function(t,e,a,n){i=(0,d.D7)().state;const r=(0,d.D7)().securityLevel;let o;"sandbox"===r&&(o=(0,s.Ltv)("#i"+e));const g="sandbox"===r?(0,s.Ltv)(o.nodes()[0].contentDocument.body):(0,s.Ltv)("body"),c="sandbox"===r?o.nodes()[0].contentDocument:document;d.Rm.debug("Rendering diagram "+t);const p=g.select(`[id='${e}']`);R(p);const h=n.db.getRootDoc();T(h,p,void 0,!1,g,c,n);const l=i.padding,x=p.node().getBBox(),D=x.width+2*l,u=x.height+2*l,f=1.75*D;(0,d.a$)(p,u,f,i.useMaxWidth),p.attr("viewBox",`${x.x-i.padding} ${x.y-i.padding} `+D+" "+u)}),"draw"),H=(0,d.K2)((t=>t?t.length*i.fontSizeFactor:1),"getLabelWidth"),T=(0,d.K2)(((t,e,a,n,r,s,c)=>{const p=new g.T({compound:!0,multigraph:!0});let h,l=!0;for(h=0;h{const e=t.parentElement;let a=0,i=0;e&&(e.parentElement&&(a=e.parentElement.getBBox().width),i=parseInt(e.getAttribute("data-x-shift"),10),Number.isNaN(i)&&(i=0)),t.setAttribute("x1",0-i+8),t.setAttribute("x2",a-i-8)}))):d.Rm.debug("No Node "+t+": "+JSON.stringify(p.node(t)))}));let w=y.getBBox();p.edges().forEach((function(t){void 0!==t&&void 0!==p.edge(t)&&(d.Rm.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(p.edge(t))),K(e,p.edge(t),p.edge(t).relation))})),w=y.getBBox();const b={id:a||"root",label:a||"root",width:0,height:0};return b.width=w.width+2*i.padding,b.height=w.height+2*i.padding,d.Rm.debug("Doc rendered",b,p),b}),"renderDoc"),P={setConf:v,draw:z},L={parser:n.Zk,db:n.iP,renderer:P,styles:n.tM,init:(0,d.K2)((t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,n.iP.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/604-d2d497f5.chunk.min.js b/themes/hugo-geekdoc/static/js/604-d2d497f5.chunk.min.js new file mode 100644 index 000000000..066f7030e --- /dev/null +++ b/themes/hugo-geekdoc/static/js/604-d2d497f5.chunk.min.js @@ -0,0 +1 @@ +(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[604],{6527:function(t,e,i){var r;r=function(t){return(()=>{"use strict";var e={658:t=>{t.exports=null!=Object.assign?Object.assign.bind(Object):function(t){for(var e=arguments.length,i=Array(e>1?e-1:0),r=1;r{var r=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var i=[],r=!0,n=!1,o=void 0;try{for(var s,a=t[Symbol.iterator]();!(r=(s=a.next()).done)&&(i.push(s.value),!e||i.length!==e);r=!0);}catch(t){n=!0,o=t}finally{try{!r&&a.return&&a.return()}finally{if(n)throw o}}return i}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")},n=i(140).layoutBase.LinkedList,o={getTopMostNodes:function(t){for(var e={},i=0;i0&&l.merge(t)}));for(var c=0;c1){l=a[0],c=l.connectedEdges().length,a.forEach((function(t){t.connectedEdges().length0&&r.set("dummy"+(r.size+1),u),p},relocateComponent:function(t,e,i){if(!i.fixedNodeConstraint){var n=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,s=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY;if("draft"==i.quality){var h=!0,l=!1,c=void 0;try{for(var d,g=e.nodeIndexes[Symbol.iterator]();!(h=(d=g.next()).done);h=!0){var u=d.value,p=r(u,2),f=p[0],y=p[1],v=i.cy.getElementById(f);if(v){var m=v.boundingBox(),E=e.xCoords[y]-m.w/2,N=e.xCoords[y]+m.w/2,T=e.yCoords[y]-m.h/2,A=e.yCoords[y]+m.h/2;Eo&&(o=N),Ta&&(a=A)}}}catch(t){l=!0,c=t}finally{try{!h&&g.return&&g.return()}finally{if(l)throw c}}var w=t.x-(o+n)/2,L=t.y-(a+s)/2;e.xCoords=e.xCoords.map((function(t){return t+w})),e.yCoords=e.yCoords.map((function(t){return t+L}))}else{Object.keys(e).forEach((function(t){var i=e[t],r=i.getRect().x,h=i.getRect().x+i.getRect().width,l=i.getRect().y,c=i.getRect().y+i.getRect().height;ro&&(o=h),la&&(a=c)}));var I=t.x-(o+n)/2,_=t.y-(a+s)/2;Object.keys(e).forEach((function(t){var i=e[t];i.setCenter(i.getCenterX()+I,i.getCenterY()+_)}))}}},calcBoundingBox:function(t,e,i,r){for(var n=Number.MAX_SAFE_INTEGER,o=Number.MIN_SAFE_INTEGER,s=Number.MAX_SAFE_INTEGER,a=Number.MIN_SAFE_INTEGER,h=void 0,l=void 0,c=void 0,d=void 0,g=t.descendants().not(":parent"),u=g.length,p=0;p(h=e[r.get(f.id())]-f.width()/2)&&(n=h),o<(l=e[r.get(f.id())]+f.width()/2)&&(o=l),s>(c=i[r.get(f.id())]-f.height()/2)&&(s=c),a<(d=i[r.get(f.id())]+f.height()/2)&&(a=d)}var y={};return y.topLeftX=n,y.topLeftY=s,y.width=o-n,y.height=a-s,y},calcParentsWithoutChildren:function(t,e){var i=t.collection();return e.nodes(":parent").forEach((function(t){var e=!1;t.children().forEach((function(t){"none"!=t.css("display")&&(e=!0)})),e||i.merge(t)})),i}};t.exports=o},816:(t,e,i)=>{var r=i(548),n=i(140).CoSELayout,o=i(140).CoSENode,s=i(140).layoutBase.PointD,a=i(140).layoutBase.DimensionD,h=i(140).layoutBase.LayoutConstants,l=i(140).layoutBase.FDLayoutConstants,c=i(140).CoSEConstants;t.exports={coseLayout:function(t,e){var i=t.cy,d=t.eles,g=d.nodes(),u=d.edges(),p=void 0,f=void 0,y=void 0,v={};t.randomize&&(p=e.nodeIndexes,f=e.xCoords,y=e.yCoords);var m=function(t){return"function"==typeof t},E=function(t,e){return m(t)?t(e):t},N=r.calcParentsWithoutChildren(i,d);null!=t.nestingFactor&&(c.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=l.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=t.nestingFactor),null!=t.gravity&&(c.DEFAULT_GRAVITY_STRENGTH=l.DEFAULT_GRAVITY_STRENGTH=t.gravity),null!=t.numIter&&(c.MAX_ITERATIONS=l.MAX_ITERATIONS=t.numIter),null!=t.gravityRange&&(c.DEFAULT_GRAVITY_RANGE_FACTOR=l.DEFAULT_GRAVITY_RANGE_FACTOR=t.gravityRange),null!=t.gravityCompound&&(c.DEFAULT_COMPOUND_GRAVITY_STRENGTH=l.DEFAULT_COMPOUND_GRAVITY_STRENGTH=t.gravityCompound),null!=t.gravityRangeCompound&&(c.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=t.gravityRangeCompound),null!=t.initialEnergyOnIncremental&&(c.DEFAULT_COOLING_FACTOR_INCREMENTAL=l.DEFAULT_COOLING_FACTOR_INCREMENTAL=t.initialEnergyOnIncremental),null!=t.tilingCompareBy&&(c.TILING_COMPARE_BY=t.tilingCompareBy),"proof"==t.quality?h.QUALITY=2:h.QUALITY=0,c.NODE_DIMENSIONS_INCLUDE_LABELS=l.NODE_DIMENSIONS_INCLUDE_LABELS=h.NODE_DIMENSIONS_INCLUDE_LABELS=t.nodeDimensionsIncludeLabels,c.DEFAULT_INCREMENTAL=l.DEFAULT_INCREMENTAL=h.DEFAULT_INCREMENTAL=!t.randomize,c.ANIMATE=l.ANIMATE=h.ANIMATE=t.animate,c.TILE=t.tile,c.TILING_PADDING_VERTICAL="function"==typeof t.tilingPaddingVertical?t.tilingPaddingVertical.call():t.tilingPaddingVertical,c.TILING_PADDING_HORIZONTAL="function"==typeof t.tilingPaddingHorizontal?t.tilingPaddingHorizontal.call():t.tilingPaddingHorizontal,c.DEFAULT_INCREMENTAL=l.DEFAULT_INCREMENTAL=h.DEFAULT_INCREMENTAL=!0,c.PURE_INCREMENTAL=!t.randomize,h.DEFAULT_UNIFORM_LEAF_NODE_SIZES=t.uniformNodeDimensions,"transformed"==t.step&&(c.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,c.ENFORCE_CONSTRAINTS=!1,c.APPLY_LAYOUT=!1),"enforced"==t.step&&(c.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,c.ENFORCE_CONSTRAINTS=!0,c.APPLY_LAYOUT=!1),"cose"==t.step&&(c.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,c.ENFORCE_CONSTRAINTS=!1,c.APPLY_LAYOUT=!0),"all"==t.step&&(t.randomize?c.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:c.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,c.ENFORCE_CONSTRAINTS=!0,c.APPLY_LAYOUT=!0),t.fixedNodeConstraint||t.alignmentConstraint||t.relativePlacementConstraint?c.TREE_REDUCTION_ON_INCREMENTAL=!1:c.TREE_REDUCTION_ON_INCREMENTAL=!0;var T=new n,A=T.newGraphManager();return function t(e,i,n,h){for(var l=i.length,c=0;c0&&t(n.getGraphManager().add(n.newGraph(),u),g,n,h)}}(A.addRoot(),r.getTopMostNodes(g),T,t),function(e,i,r){for(var n=0,o=0,s=0;s0?c.DEFAULT_EDGE_LENGTH=l.DEFAULT_EDGE_LENGTH=n/o:m(t.idealEdgeLength)?c.DEFAULT_EDGE_LENGTH=l.DEFAULT_EDGE_LENGTH=50:c.DEFAULT_EDGE_LENGTH=l.DEFAULT_EDGE_LENGTH=t.idealEdgeLength,c.MIN_REPULSION_DIST=l.MIN_REPULSION_DIST=l.DEFAULT_EDGE_LENGTH/10,c.DEFAULT_RADIAL_SEPARATION=l.DEFAULT_EDGE_LENGTH)}(T,A,u),function(t,e){e.fixedNodeConstraint&&(t.constraints.fixedNodeConstraint=e.fixedNodeConstraint),e.alignmentConstraint&&(t.constraints.alignmentConstraint=e.alignmentConstraint),e.relativePlacementConstraint&&(t.constraints.relativePlacementConstraint=e.relativePlacementConstraint)}(T,t),T.runLayout(),v}}},212:(t,e,i)=>{var r=function(){function t(t,e){for(var i=0;i0)if(d){var g=o.getTopMostNodes(t.eles.nodes());if((h=o.connectComponents(e,t.eles,g)).forEach((function(t){var e=t.boundingBox();l.push({x:e.x1+e.w/2,y:e.y1+e.h/2})})),t.randomize&&h.forEach((function(e){t.eles=e,r.push(s(t))})),"default"==t.quality||"proof"==t.quality){var u=e.collection();if(t.tile){var p=new Map,f=0,y={nodeIndexes:p,xCoords:[],yCoords:[]},v=[];if(h.forEach((function(t,e){0==t.edges().length&&(t.nodes().forEach((function(e,i){u.merge(t.nodes()[i]),e.isParent()||(y.nodeIndexes.set(t.nodes()[i].id(),f++),y.xCoords.push(t.nodes()[0].position().x),y.yCoords.push(t.nodes()[0].position().y))})),v.push(e))})),u.length>1){var m=u.boundingBox();l.push({x:m.x1+m.w/2,y:m.y1+m.h/2}),h.push(u),r.push(y);for(var E=v.length-1;E>=0;E--)h.splice(v[E],1),r.splice(v[E],1),l.splice(v[E],1)}}h.forEach((function(e,i){t.eles=e,n.push(a(t,r[i])),o.relocateComponent(l[i],n[i],t)}))}else h.forEach((function(e,i){o.relocateComponent(l[i],r[i],t)}));var N=new Set;if(h.length>1){var T=[],A=i.filter((function(t){return"none"==t.css("display")}));h.forEach((function(e,i){var s=void 0;if("draft"==t.quality&&(s=r[i].nodeIndexes),e.nodes().not(A).length>0){var a={edges:[],nodes:[]},h=void 0;e.nodes().not(A).forEach((function(e){if("draft"==t.quality)if(e.isParent()){var l=o.calcBoundingBox(e,r[i].xCoords,r[i].yCoords,s);a.nodes.push({x:l.topLeftX,y:l.topLeftY,width:l.width,height:l.height})}else h=s.get(e.id()),a.nodes.push({x:r[i].xCoords[h]-e.boundingbox().w/2,y:r[i].yCoords[h]-e.boundingbox().h/2,width:e.boundingbox().w,height:e.boundingbox().h});else n[i][e.id()]&&a.nodes.push({x:n[i][e.id()].getLeft(),y:n[i][e.id()].getTop(),width:n[i][e.id()].getWidth(),height:n[i][e.id()].getHeight()})})),e.edges().forEach((function(e){var h=e.source(),l=e.target();if("none"!=h.css("display")&&"none"!=l.css("display"))if("draft"==t.quality){var c=s.get(h.id()),d=s.get(l.id()),g=[],u=[];if(h.isParent()){var p=o.calcBoundingBox(h,r[i].xCoords,r[i].yCoords,s);g.push(p.topLeftX+p.width/2),g.push(p.topLeftY+p.height/2)}else g.push(r[i].xCoords[c]),g.push(r[i].yCoords[c]);if(l.isParent()){var f=o.calcBoundingBox(l,r[i].xCoords,r[i].yCoords,s);u.push(f.topLeftX+f.width/2),u.push(f.topLeftY+f.height/2)}else u.push(r[i].xCoords[d]),u.push(r[i].yCoords[d]);a.edges.push({startX:g[0],startY:g[1],endX:u[0],endY:u[1]})}else n[i][h.id()]&&n[i][l.id()]&&a.edges.push({startX:n[i][h.id()].getCenterX(),startY:n[i][h.id()].getCenterY(),endX:n[i][l.id()].getCenterX(),endY:n[i][l.id()].getCenterY()})})),a.nodes.length>0&&(T.push(a),N.add(i))}}));var w=c.packComponents(T,t.randomize).shifts;if("draft"==t.quality)r.forEach((function(t,e){var i=t.xCoords.map((function(t){return t+w[e].dx})),r=t.yCoords.map((function(t){return t+w[e].dy}));t.xCoords=i,t.yCoords=r}));else{var L=0;N.forEach((function(t){Object.keys(n[t]).forEach((function(e){var i=n[t][e];i.setCenter(i.getCenterX()+w[L].dx,i.getCenterY()+w[L].dy)})),L++}))}}}else{var I=t.eles.boundingBox();if(l.push({x:I.x1+I.w/2,y:I.y1+I.h/2}),t.randomize){var _=s(t);r.push(_)}"default"==t.quality||"proof"==t.quality?(n.push(a(t,r[0])),o.relocateComponent(l[0],n[0],t)):o.relocateComponent(l[0],r[0],t)}var C=function(e,i){if("default"==t.quality||"proof"==t.quality){"number"==typeof e&&(e=i);var o=void 0,s=void 0,a=e.data("id");return n.forEach((function(t){a in t&&(o={x:t[a].getRect().getCenterX(),y:t[a].getRect().getCenterY()},s=t[a])})),t.nodeDimensionsIncludeLabels&&(s.labelWidth&&("left"==s.labelPosHorizontal?o.x+=s.labelWidth/2:"right"==s.labelPosHorizontal&&(o.x-=s.labelWidth/2)),s.labelHeight&&("top"==s.labelPosVertical?o.y+=s.labelHeight/2:"bottom"==s.labelPosVertical&&(o.y-=s.labelHeight/2))),null==o&&(o={x:e.position("x"),y:e.position("y")}),{x:o.x,y:o.y}}var h=void 0;return r.forEach((function(t){var i=t.nodeIndexes.get(e.id());null!=i&&(h={x:t.xCoords[i],y:t.yCoords[i]})})),null==h&&(h={x:e.position("x"),y:e.position("y")}),{x:h.x,y:h.y}};if("default"==t.quality||"proof"==t.quality||t.randomize){var M=o.calcParentsWithoutChildren(e,i),x=i.filter((function(t){return"none"==t.css("display")}));t.eles=i.not(x),i.nodes().not(":parent").not(x).layoutPositions(this,t,C),M.length>0&&M.forEach((function(t){t.position(C(t))}))}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")}}]),t}();t.exports=l},657:(t,e,i)=>{var r=i(548),n=i(140).layoutBase.Matrix,o=i(140).layoutBase.SVD;t.exports={spectralLayout:function(t){var e=t.cy,i=t.eles,s=i.nodes(),a=i.nodes(":parent"),h=new Map,l=new Map,c=new Map,d=[],g=[],u=[],p=[],f=[],y=[],v=[],m=[],E=void 0,N=1e8,T=1e-9,A=t.piTol,w=t.samplingType,L=t.nodeSeparation,I=void 0,_=function(t,e,i){for(var r=[],n=0,o=0,s=0,a=void 0,h=[],c=0,g=1,u=0;u=n;){s=r[n++];for(var p=d[s],v=0;vc&&(c=f[T],g=T)}return g};r.connectComponents(e,i,r.getTopMostNodes(s),h),a.forEach((function(t){r.connectComponents(e,i,r.getTopMostNodes(t.descendants().intersection(i)),h)}));for(var C=0,M=0;M0&&(r.isParent()?d[e].push(c.get(r.id())):d[e].push(r.id()))}))}));var S=function(t){var i=l.get(t),r=void 0;h.get(t).forEach((function(n){r=e.getElementById(n).isParent()?c.get(n):n,d[i].push(r),d[l.get(r)].push(t)}))},P=!0,U=!1,Y=void 0;try{for(var k,H=h.keys()[Symbol.iterator]();!(P=(k=H.next()).done);P=!0)S(k.value)}catch(t){U=!0,Y=t}finally{try{!P&&H.return&&H.return()}finally{if(U)throw Y}}var X=void 0;if((E=l.size)>2){I=E=1)break;l=h}for(var p=0;p=1)break;l=h}for(var v=0;v{var r=i(212),n=function(t){t&&t("layout","fcose",r)};"undefined"!=typeof cytoscape&&n(cytoscape),t.exports=n},140:e=>{e.exports=t}},i={},r=function t(r){var n=i[r];if(void 0!==n)return n.exports;var o=i[r]={exports:{}};return e[r](o,o.exports,t),o.exports}(579);return r})()},t.exports=r(i(1709))},1709:function(t,e,i){var r;r=function(t){return(()=>{"use strict";var e={45:(t,e,i)=>{var r={};r.layoutBase=i(551),r.CoSEConstants=i(806),r.CoSEEdge=i(767),r.CoSEGraph=i(880),r.CoSEGraphManager=i(578),r.CoSELayout=i(765),r.CoSENode=i(991),r.ConstraintHandler=i(902),t.exports=r},806:(t,e,i)=>{var r=i(551).FDLayoutConstants;function n(){}for(var o in r)n[o]=r[o];n.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,n.DEFAULT_RADIAL_SEPARATION=r.DEFAULT_EDGE_LENGTH,n.DEFAULT_COMPONENT_SEPERATION=60,n.TILE=!0,n.TILING_PADDING_VERTICAL=10,n.TILING_PADDING_HORIZONTAL=10,n.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,n.ENFORCE_CONSTRAINTS=!0,n.APPLY_LAYOUT=!0,n.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,n.TREE_REDUCTION_ON_INCREMENTAL=!0,n.PURE_INCREMENTAL=n.DEFAULT_INCREMENTAL,t.exports=n},767:(t,e,i)=>{var r=i(551).FDLayoutEdge;function n(t,e,i){r.call(this,t,e,i)}for(var o in n.prototype=Object.create(r.prototype),r)n[o]=r[o];t.exports=n},880:(t,e,i)=>{var r=i(551).LGraph;function n(t,e,i){r.call(this,t,e,i)}for(var o in n.prototype=Object.create(r.prototype),r)n[o]=r[o];t.exports=n},578:(t,e,i)=>{var r=i(551).LGraphManager;function n(t){r.call(this,t)}for(var o in n.prototype=Object.create(r.prototype),r)n[o]=r[o];t.exports=n},765:(t,e,i)=>{var r=i(551).FDLayout,n=i(578),o=i(880),s=i(991),a=i(767),h=i(806),l=i(902),c=i(551).FDLayoutConstants,d=i(551).LayoutConstants,g=i(551).Point,u=i(551).PointD,p=i(551).DimensionD,f=i(551).Layout,y=i(551).Integer,v=i(551).IGeometry,m=i(551).LGraph,E=i(551).Transform,N=i(551).LinkedList;function T(){r.call(this),this.toBeTiled={},this.constraints={}}for(var A in T.prototype=Object.create(r.prototype),r)T[A]=r[A];T.prototype.newGraphManager=function(){var t=new n(this);return this.graphManager=t,t},T.prototype.newGraph=function(t){return new o(null,this.graphManager,t)},T.prototype.newNode=function(t){return new s(this.graphManager,t)},T.prototype.newEdge=function(t){return new a(null,null,t)},T.prototype.initParameters=function(){r.prototype.initParameters.call(this,arguments),this.isSubLayout||(h.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=h.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=h.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=c.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=c.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=c.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=c.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},T.prototype.initSpringEmbedder=function(){r.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/c.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},T.prototype.layout=function(){return d.DEFAULT_CREATE_BENDS_AS_NEEDED&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},T.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental)h.TREE_REDUCTION_ON_INCREMENTAL&&(this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation(),e=new Set(this.getAllNodes()),i=this.nodesWithGravity.filter((function(t){return e.has(t)})),this.graphManager.setAllNodesToApplyGravitation(i));else{var t=this.getFlatForest();if(t.length>0)this.positionNodesRadially(t);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var e=new Set(this.getAllNodes()),i=this.nodesWithGravity.filter((function(t){return e.has(t)}));this.graphManager.setAllNodesToApplyGravitation(i),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(l.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),h.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},T.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished){if(!(this.prunedNodesAll.length>0))return!0;this.isTreeGrowing=!0}if(this.totalIterations%c.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged()){if(!(this.prunedNodesAll.length>0))return!0;this.isTreeGrowing=!0}this.coolingCycle++,0==this.layoutQuality?this.coolingAdjuster=this.coolingCycle:1==this.layoutQuality&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var t=new Set(this.getAllNodes()),e=this.nodesWithGravity.filter((function(e){return t.has(e)}));this.graphManager.setAllNodesToApplyGravitation(e),this.graphManager.updateBounds(),this.updateGrid(),h.PURE_INCREMENTAL?this.coolingFactor=c.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=c.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),h.PURE_INCREMENTAL?this.coolingFactor=c.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=c.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var i=!this.isTreeGrowing&&!this.isGrowthFinished,r=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(i,r),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},T.prototype.getPositionsData=function(){for(var t=this.graphManager.getAllNodes(),e={},i=0;i0&&this.updateDisplacements(),e=0;e0&&(r.fixedNodeWeight=o)}if(this.constraints.relativePlacementConstraint){var s=new Map,a=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach((function(e){t.fixedNodesOnHorizontal.add(e),t.fixedNodesOnVertical.add(e)})),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical){var l=this.constraints.alignmentConstraint.vertical;for(i=0;i=2*t.length/3;r--)e=Math.floor(Math.random()*(r+1)),i=t[r],t[r]=t[e],t[e]=i;return t},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach((function(e){if(e.left){var i=s.has(e.left)?s.get(e.left):e.left,r=s.has(e.right)?s.get(e.right):e.right;t.nodesInRelativeHorizontal.includes(i)||(t.nodesInRelativeHorizontal.push(i),t.nodeToRelativeConstraintMapHorizontal.set(i,[]),t.dummyToNodeForVerticalAlignment.has(i)?t.nodeToTempPositionMapHorizontal.set(i,t.idToNodeMap.get(t.dummyToNodeForVerticalAlignment.get(i)[0]).getCenterX()):t.nodeToTempPositionMapHorizontal.set(i,t.idToNodeMap.get(i).getCenterX())),t.nodesInRelativeHorizontal.includes(r)||(t.nodesInRelativeHorizontal.push(r),t.nodeToRelativeConstraintMapHorizontal.set(r,[]),t.dummyToNodeForVerticalAlignment.has(r)?t.nodeToTempPositionMapHorizontal.set(r,t.idToNodeMap.get(t.dummyToNodeForVerticalAlignment.get(r)[0]).getCenterX()):t.nodeToTempPositionMapHorizontal.set(r,t.idToNodeMap.get(r).getCenterX())),t.nodeToRelativeConstraintMapHorizontal.get(i).push({right:r,gap:e.gap}),t.nodeToRelativeConstraintMapHorizontal.get(r).push({left:i,gap:e.gap})}else{var n=a.has(e.top)?a.get(e.top):e.top,o=a.has(e.bottom)?a.get(e.bottom):e.bottom;t.nodesInRelativeVertical.includes(n)||(t.nodesInRelativeVertical.push(n),t.nodeToRelativeConstraintMapVertical.set(n,[]),t.dummyToNodeForHorizontalAlignment.has(n)?t.nodeToTempPositionMapVertical.set(n,t.idToNodeMap.get(t.dummyToNodeForHorizontalAlignment.get(n)[0]).getCenterY()):t.nodeToTempPositionMapVertical.set(n,t.idToNodeMap.get(n).getCenterY())),t.nodesInRelativeVertical.includes(o)||(t.nodesInRelativeVertical.push(o),t.nodeToRelativeConstraintMapVertical.set(o,[]),t.dummyToNodeForHorizontalAlignment.has(o)?t.nodeToTempPositionMapVertical.set(o,t.idToNodeMap.get(t.dummyToNodeForHorizontalAlignment.get(o)[0]).getCenterY()):t.nodeToTempPositionMapVertical.set(o,t.idToNodeMap.get(o).getCenterY())),t.nodeToRelativeConstraintMapVertical.get(n).push({bottom:o,gap:e.gap}),t.nodeToRelativeConstraintMapVertical.get(o).push({top:n,gap:e.gap})}}));else{var d=new Map,g=new Map;this.constraints.relativePlacementConstraint.forEach((function(t){if(t.left){var e=s.has(t.left)?s.get(t.left):t.left,i=s.has(t.right)?s.get(t.right):t.right;d.has(e)?d.get(e).push(i):d.set(e,[i]),d.has(i)?d.get(i).push(e):d.set(i,[e])}else{var r=a.has(t.top)?a.get(t.top):t.top,n=a.has(t.bottom)?a.get(t.bottom):t.bottom;g.has(r)?g.get(r).push(n):g.set(r,[n]),g.has(n)?g.get(n).push(r):g.set(n,[r])}}));var u=function(t,e){var i=[],r=[],n=new N,o=new Set,s=0;return t.forEach((function(a,h){if(!o.has(h)){i[s]=[],r[s]=!1;var l=h;for(n.push(l),o.add(l),i[s].push(l);0!=n.length;)l=n.shift(),e.has(l)&&(r[s]=!0),t.get(l).forEach((function(t){o.has(t)||(n.push(t),o.add(t),i[s].push(t))}));s++}})),{components:i,isFixed:r}},p=u(d,t.fixedNodesOnHorizontal);this.componentsOnHorizontal=p.components,this.fixedComponentsOnHorizontal=p.isFixed;var f=u(g,t.fixedNodesOnVertical);this.componentsOnVertical=f.components,this.fixedComponentsOnVertical=f.isFixed}}},T.prototype.updateDisplacements=function(){var t=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach((function(e){var i=t.idToNodeMap.get(e.nodeId);i.displacementX=0,i.displacementY=0})),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var e=this.constraints.alignmentConstraint.vertical,i=0;i1)for(a=0;ar&&(r=Math.floor(s.y)),o=Math.floor(s.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new u(d.WORLD_CENTER_X-s.x/2,d.WORLD_CENTER_Y-s.y/2))},T.radialLayout=function(t,e,i){var r=Math.max(this.maxDiagonalInTree(t),h.DEFAULT_RADIAL_SEPARATION);T.branchRadialLayout(e,null,0,359,0,r);var n=m.calculateBounds(t),o=new E;o.setDeviceOrgX(n.getMinX()),o.setDeviceOrgY(n.getMinY()),o.setWorldOrgX(i.x),o.setWorldOrgY(i.y);for(var s=0;s1;){var y=f[0];f.splice(0,1);var m=c.indexOf(y);m>=0&&c.splice(m,1),p--,d--}g=null!=e?(c.indexOf(f[0])+1)%p:0;for(var E=Math.abs(r-i)/d,N=g;u!=d;N=++N%p){var A=c[N].getOtherEnd(t);if(A!=e){var w=(i+u*E)%360,L=(w+E)%360;T.branchRadialLayout(A,t,w,L,n+o,o),u++}}},T.maxDiagonalInTree=function(t){for(var e=y.MIN_VALUE,i=0;ie&&(e=r)}return e},T.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},T.prototype.groupZeroDegreeMembers=function(){var t=this,e={};this.memberGroups={},this.idToDummyNode={};for(var i=[],r=this.graphManager.getAllNodes(),n=0;n1){var r="DummyCompound_"+i;t.memberGroups[r]=e[i];var n=e[i][0].getParent(),o=new s(t.graphManager);o.id=r,o.paddingLeft=n.paddingLeft||0,o.paddingRight=n.paddingRight||0,o.paddingBottom=n.paddingBottom||0,o.paddingTop=n.paddingTop||0,t.idToDummyNode[r]=o;var a=t.getGraphManager().add(t.newGraph(),o),h=n.getChild();h.add(o);for(var l=0;ln?(r.rect.x-=(r.labelWidth-n)/2,r.setWidth(r.labelWidth),r.labelMarginLeft=(r.labelWidth-n)/2):"right"==r.labelPosHorizontal&&r.setWidth(n+r.labelWidth)),r.labelHeight&&("top"==r.labelPosVertical?(r.rect.y-=r.labelHeight,r.setHeight(o+r.labelHeight),r.labelMarginTop=r.labelHeight):"center"==r.labelPosVertical&&r.labelHeight>o?(r.rect.y-=(r.labelHeight-o)/2,r.setHeight(r.labelHeight),r.labelMarginTop=(r.labelHeight-o)/2):"bottom"==r.labelPosVertical&&r.setHeight(o+r.labelHeight))}}))},T.prototype.repopulateCompounds=function(){for(var t=this.compoundOrder.length-1;t>=0;t--){var e=this.compoundOrder[t],i=e.id,r=e.paddingLeft,n=e.paddingTop,o=e.labelMarginLeft,s=e.labelMarginTop;this.adjustLocations(this.tiledMemberPack[i],e.rect.x,e.rect.y,r,n,o,s)}},T.prototype.repopulateZeroDegreeMembers=function(){var t=this,e=this.tiledZeroDegreePack;Object.keys(e).forEach((function(i){var r=t.idToDummyNode[i],n=r.paddingLeft,o=r.paddingTop,s=r.labelMarginLeft,a=r.labelMarginTop;t.adjustLocations(e[i],r.rect.x,r.rect.y,n,o,s,a)}))},T.prototype.getToBeTiled=function(t){var e=t.id;if(null!=this.toBeTiled[e])return this.toBeTiled[e];var i=t.getChild();if(null==i)return this.toBeTiled[e]=!1,!1;for(var r=i.getNodes(),n=0;n0)return this.toBeTiled[e]=!1,!1;if(null!=o.getChild()){if(!this.getToBeTiled(o))return this.toBeTiled[e]=!1,!1}else this.toBeTiled[o.id]=!1}return this.toBeTiled[e]=!0,!0},T.prototype.getNodeDegree=function(t){t.id;for(var e=t.getEdges(),i=0,r=0;rc&&(c=g.rect.height)}i+=c+t.verticalPadding}},T.prototype.tileCompoundMembers=function(t,e){var i=this;this.tiledMemberPack=[],Object.keys(t).forEach((function(r){var n=e[r];if(i.tiledMemberPack[r]=i.tileNodes(t[r],n.paddingLeft+n.paddingRight),n.rect.width=i.tiledMemberPack[r].width,n.rect.height=i.tiledMemberPack[r].height,n.setCenter(i.tiledMemberPack[r].centerX,i.tiledMemberPack[r].centerY),n.labelMarginLeft=0,n.labelMarginTop=0,h.NODE_DIMENSIONS_INCLUDE_LABELS){var o=n.rect.width,s=n.rect.height;n.labelWidth&&("left"==n.labelPosHorizontal?(n.rect.x-=n.labelWidth,n.setWidth(o+n.labelWidth),n.labelMarginLeft=n.labelWidth):"center"==n.labelPosHorizontal&&n.labelWidth>o?(n.rect.x-=(n.labelWidth-o)/2,n.setWidth(n.labelWidth),n.labelMarginLeft=(n.labelWidth-o)/2):"right"==n.labelPosHorizontal&&n.setWidth(o+n.labelWidth)),n.labelHeight&&("top"==n.labelPosVertical?(n.rect.y-=n.labelHeight,n.setHeight(s+n.labelHeight),n.labelMarginTop=n.labelHeight):"center"==n.labelPosVertical&&n.labelHeight>s?(n.rect.y-=(n.labelHeight-s)/2,n.setHeight(n.labelHeight),n.labelMarginTop=(n.labelHeight-s)/2):"bottom"==n.labelPosVertical&&n.setHeight(s+n.labelHeight))}}))},T.prototype.tileNodes=function(t,e){var i=this.tileNodesByFavoringDim(t,e,!0),r=this.tileNodesByFavoringDim(t,e,!1),n=this.getOrgRatio(i);return this.getOrgRatio(r)a&&(a=t.getWidth())}));var l,c=o/n,d=s/n,g=Math.pow(i-r,2)+4*(c+r)*(d+i)*n,u=(r-i+Math.sqrt(g))/(2*(c+r));e?(l=Math.ceil(u))==u&&l++:l=Math.floor(u);var p=l*(c+r)-r;return a>p&&(p=a),p+2*r},T.prototype.tileNodesByFavoringDim=function(t,e,i){var r=h.TILING_PADDING_VERTICAL,n=h.TILING_PADDING_HORIZONTAL,o=h.TILING_COMPARE_BY,s={rows:[],rowWidth:[],rowHeight:[],width:0,height:e,verticalPadding:r,horizontalPadding:n,centerX:0,centerY:0};o&&(s.idealRowWidth=this.calcIdealRowWidth(t,i));var a=function(t){return t.rect.width*t.rect.height},l=function(t,e){return a(e)-a(t)};t.sort((function(t,e){var i=l;return s.idealRowWidth?(i=o)(t.id,e.id):i(t,e)}));for(var c=0,d=0,g=0;g0&&(o+=t.horizontalPadding),t.rowWidth[i]=o,t.width0&&(s+=t.verticalPadding);var a=0;s>t.rowHeight[i]&&(a=t.rowHeight[i],t.rowHeight[i]=s,a=t.rowHeight[i]-a),t.height+=a,t.rows[i].push(e)},T.prototype.getShortestRowIndex=function(t){for(var e=-1,i=Number.MAX_VALUE,r=0;ri&&(e=r,i=t.rowWidth[r]);return e},T.prototype.canAddHorizontal=function(t,e,i){if(t.idealRowWidth){var r=t.rows.length-1;return t.rowWidth[r]+e+t.horizontalPadding<=t.idealRowWidth}var n=this.getShortestRowIndex(t);if(n<0)return!0;var o=t.rowWidth[n];if(o+t.horizontalPadding+e<=t.width)return!0;var s,a,h=0;return t.rowHeight[n]0&&(h=i+t.verticalPadding-t.rowHeight[n]),s=t.width-o>=e+t.horizontalPadding?(t.height+h)/(o+e+t.horizontalPadding):(t.height+h)/t.width,h=i+t.verticalPadding,(a=t.widtho&&e!=i){r.splice(-1,1),t.rows[i].push(n),t.rowWidth[e]=t.rowWidth[e]-o,t.rowWidth[i]=t.rowWidth[i]+o,t.width=t.rowWidth[instance.getLongestRowIndex(t)];for(var s=Number.MIN_VALUE,a=0;as&&(s=r[a].height);e>0&&(s+=t.verticalPadding);var h=t.rowHeight[e]+t.rowHeight[i];t.rowHeight[e]=s,t.rowHeight[i]0)for(var d=n;d<=o;d++)l[0]+=this.grid[d][s-1].length+this.grid[d][s].length-1;if(o0)for(d=s;d<=a;d++)l[3]+=this.grid[n-1][d].length+this.grid[n][d].length-1;for(var g,u,p=y.MAX_VALUE,f=0;f{var r=i(551).FDLayoutNode,n=i(551).IMath;function o(t,e,i,n){r.call(this,t,e,i,n)}for(var s in o.prototype=Object.create(r.prototype),r)o[s]=r[s];o.prototype.calculateDisplacement=function(){var t=this.graphManager.getLayout();null!=this.getChild()&&this.fixedNodeWeight?(this.displacementX+=t.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=t.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=t.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=t.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>t.coolingFactor*t.maxNodeDisplacement&&(this.displacementX=t.coolingFactor*t.maxNodeDisplacement*n.sign(this.displacementX)),Math.abs(this.displacementY)>t.coolingFactor*t.maxNodeDisplacement&&(this.displacementY=t.coolingFactor*t.maxNodeDisplacement*n.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},o.prototype.propogateDisplacementToChildren=function(t,e){for(var i,r=this.getChild().getNodes(),n=0;n{function r(t){if(Array.isArray(t)){for(var e=0,i=Array(t.length);e0){var o=0;r.forEach((function(t){"horizontal"==e?(d.set(t,h.has(t)?l[h.get(t)]:n.get(t)),o+=d.get(t)):(d.set(t,h.has(t)?c[h.get(t)]:n.get(t)),o+=d.get(t))})),o/=r.length,t.forEach((function(t){i.has(t)||d.set(t,o)}))}else{var s=0;t.forEach((function(t){s+="horizontal"==e?h.has(t)?l[h.get(t)]:n.get(t):h.has(t)?c[h.get(t)]:n.get(t)})),s/=t.length,t.forEach((function(t){d.set(t,s)}))}}));for(var p=function(){var r=u.shift();t.get(r).forEach((function(t){if(d.get(t.id)s&&(s=v),Ea&&(a=E)}}catch(t){u=!0,p=t}finally{try{!g&&y.return&&y.return()}finally{if(u)throw p}}var N=(r+s)/2-(o+a)/2,T=!0,A=!1,w=void 0;try{for(var L,I=t[Symbol.iterator]();!(T=(L=I.next()).done);T=!0){var _=L.value;d.set(_,d.get(_)+N)}}catch(t){A=!0,w=t}finally{try{!T&&I.return&&I.return()}finally{if(A)throw w}}}))}return d},v=function(t){var e=0,i=0,r=0,n=0;if(t.forEach((function(t){t.left?l[h.get(t.left)]-l[h.get(t.right)]>=0?e++:i++:c[h.get(t.top)]-c[h.get(t.bottom)]>=0?r++:n++})),e>i&&r>n)for(var o=0;oi)for(var s=0;sn)for(var a=0;a1)e.fixedNodeConstraint.forEach((function(t,e){T[e]=[t.position.x,t.position.y],A[e]=[l[h.get(t.nodeId)],c[h.get(t.nodeId)]]})),w=!0;else if(e.alignmentConstraint)!function(){var t=0;if(e.alignmentConstraint.vertical){for(var i=e.alignmentConstraint.vertical,n=function(e){var n=new Set;i[e].forEach((function(t){n.add(t)}));var o,s=new Set([].concat(r(n)).filter((function(t){return I.has(t)})));o=s.size>0?l[h.get(s.values().next().value)]:f(n).x,i[e].forEach((function(e){T[t]=[o,c[h.get(e)]],A[t]=[l[h.get(e)],c[h.get(e)]],t++}))},o=0;o0?l[h.get(o.values().next().value)]:f(i).y,s[e].forEach((function(e){T[t]=[l[h.get(e)],n],A[t]=[l[h.get(e)],c[h.get(e)]],t++}))},d=0;dx&&(x=M[D].length,O=D);if(x0){var j={x:0,y:0};e.fixedNodeConstraint.forEach((function(t,e){var i,r,n=(r={x:l[h.get(t.nodeId)],y:c[h.get(t.nodeId)]},{x:(i=t.position).x-r.x,y:i.y-r.y});j.x+=n.x,j.y+=n.y})),j.x/=e.fixedNodeConstraint.length,j.y/=e.fixedNodeConstraint.length,l.forEach((function(t,e){l[e]+=j.x})),c.forEach((function(t,e){c[e]+=j.y})),e.fixedNodeConstraint.forEach((function(t){l[h.get(t.nodeId)]=t.position.x,c[h.get(t.nodeId)]=t.position.y}))}if(e.alignmentConstraint){if(e.alignmentConstraint.vertical)for(var q=e.alignmentConstraint.vertical,$=function(t){var e=new Set;q[t].forEach((function(t){e.add(t)}));var i,n=new Set([].concat(r(e)).filter((function(t){return I.has(t)})));i=n.size>0?l[h.get(n.values().next().value)]:f(e).x,e.forEach((function(t){I.has(t)||(l[h.get(t)]=i)}))},K=0;K0?c[h.get(n.values().next().value)]:f(e).y,e.forEach((function(t){I.has(t)||(c[h.get(t)]=i)}))},J=0;J{e.exports=t}},i={},r=function t(r){var n=i[r];if(void 0!==n)return n.exports;var o=i[r]={exports:{}};return e[r](o,o.exports,t),o.exports}(45);return r})()},t.exports=r(i(4298))},4298:function(t){var e;e=function(){return function(t){var e={};function i(r){if(e[r])return e[r].exports;var n=e[r]={i:r,l:!1,exports:{}};return t[r].call(n.exports,n,n.exports,i),n.l=!0,n.exports}return i.m=t,i.c=e,i.i=function(t){return t},i.d=function(t,e,r){i.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:r})},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=28)}([function(t,e,i){"use strict";function r(){}r.QUALITY=1,r.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,r.DEFAULT_INCREMENTAL=!1,r.DEFAULT_ANIMATION_ON_LAYOUT=!0,r.DEFAULT_ANIMATION_DURING_LAYOUT=!1,r.DEFAULT_ANIMATION_PERIOD=50,r.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,r.DEFAULT_GRAPH_MARGIN=15,r.NODE_DIMENSIONS_INCLUDE_LABELS=!1,r.SIMPLE_NODE_SIZE=40,r.SIMPLE_NODE_HALF_SIZE=r.SIMPLE_NODE_SIZE/2,r.EMPTY_COMPOUND_NODE_SIZE=40,r.MIN_EDGE_LENGTH=1,r.WORLD_BOUNDARY=1e6,r.INITIAL_WORLD_BOUNDARY=r.WORLD_BOUNDARY/1e3,r.WORLD_CENTER_X=1200,r.WORLD_CENTER_Y=900,t.exports=r},function(t,e,i){"use strict";var r=i(2),n=i(8),o=i(9);function s(t,e,i){r.call(this,i),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=i,this.bendpoints=[],this.source=t,this.target=e}for(var a in s.prototype=Object.create(r.prototype),r)s[a]=r[a];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(t){if(this.source===t)return this.target;if(this.target===t)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(t,e){for(var i=this.getOtherEnd(t),r=e.getGraphManager().getRoot();;){if(i.getOwner()==e)return i;if(i.getOwner()==r)break;i=i.getOwner().getParent()}return null},s.prototype.updateLength=function(){var t=new Array(4);this.isOverlapingSourceAndTarget=n.getIntersection(this.target.getRect(),this.source.getRect(),t),this.isOverlapingSourceAndTarget||(this.lengthX=t[0]-t[2],this.lengthY=t[1]-t[3],Math.abs(this.lengthX)<1&&(this.lengthX=o.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=o.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=o.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=o.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s},function(t,e,i){"use strict";t.exports=function(t){this.vGraphObject=t}},function(t,e,i){"use strict";var r=i(2),n=i(10),o=i(13),s=i(0),a=i(16),h=i(5);function l(t,e,i,s){null==i&&null==s&&(s=e),r.call(this,s),null!=t.graphManager&&(t=t.graphManager),this.estimatedSize=n.MIN_VALUE,this.inclusionTreeDepth=n.MAX_VALUE,this.vGraphObject=s,this.edges=[],this.graphManager=t,this.rect=null!=i&&null!=e?new o(e.x,e.y,i.width,i.height):new o}for(var c in l.prototype=Object.create(r.prototype),r)l[c]=r[c];l.prototype.getEdges=function(){return this.edges},l.prototype.getChild=function(){return this.child},l.prototype.getOwner=function(){return this.owner},l.prototype.getWidth=function(){return this.rect.width},l.prototype.setWidth=function(t){this.rect.width=t},l.prototype.getHeight=function(){return this.rect.height},l.prototype.setHeight=function(t){this.rect.height=t},l.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},l.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},l.prototype.getCenter=function(){return new h(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},l.prototype.getLocation=function(){return new h(this.rect.x,this.rect.y)},l.prototype.getRect=function(){return this.rect},l.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},l.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},l.prototype.setRect=function(t,e){this.rect.x=t.x,this.rect.y=t.y,this.rect.width=e.width,this.rect.height=e.height},l.prototype.setCenter=function(t,e){this.rect.x=t-this.rect.width/2,this.rect.y=e-this.rect.height/2},l.prototype.setLocation=function(t,e){this.rect.x=t,this.rect.y=e},l.prototype.moveBy=function(t,e){this.rect.x+=t,this.rect.y+=e},l.prototype.getEdgeListToNode=function(t){var e=[],i=this;return i.edges.forEach((function(r){if(r.target==t){if(r.source!=i)throw"Incorrect edge source!";e.push(r)}})),e},l.prototype.getEdgesBetween=function(t){var e=[],i=this;return i.edges.forEach((function(r){if(r.source!=i&&r.target!=i)throw"Incorrect edge source and/or target";r.target!=t&&r.source!=t||e.push(r)})),e},l.prototype.getNeighborsList=function(){var t=new Set,e=this;return e.edges.forEach((function(i){if(i.source==e)t.add(i.target);else{if(i.target!=e)throw"Incorrect incidency!";t.add(i.source)}})),t},l.prototype.withChildren=function(){var t=new Set;if(t.add(this),null!=this.child)for(var e=this.child.getNodes(),i=0;ie?(this.rect.x-=(this.labelWidth-e)/2,this.setWidth(this.labelWidth)):"right"==this.labelPosHorizontal&&this.setWidth(e+this.labelWidth)),this.labelHeight&&("top"==this.labelPosVertical?(this.rect.y-=this.labelHeight,this.setHeight(i+this.labelHeight)):"center"==this.labelPosVertical&&this.labelHeight>i?(this.rect.y-=(this.labelHeight-i)/2,this.setHeight(this.labelHeight)):"bottom"==this.labelPosVertical&&this.setHeight(i+this.labelHeight))}}},l.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==n.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},l.prototype.transform=function(t){var e=this.rect.x;e>s.WORLD_BOUNDARY?e=s.WORLD_BOUNDARY:e<-s.WORLD_BOUNDARY&&(e=-s.WORLD_BOUNDARY);var i=this.rect.y;i>s.WORLD_BOUNDARY?i=s.WORLD_BOUNDARY:i<-s.WORLD_BOUNDARY&&(i=-s.WORLD_BOUNDARY);var r=new h(e,i),n=t.inverseTransformPoint(r);this.setLocation(n.x,n.y)},l.prototype.getLeft=function(){return this.rect.x},l.prototype.getRight=function(){return this.rect.x+this.rect.width},l.prototype.getTop=function(){return this.rect.y},l.prototype.getBottom=function(){return this.rect.y+this.rect.height},l.prototype.getParent=function(){return null==this.owner?null:this.owner.getParent()},t.exports=l},function(t,e,i){"use strict";var r=i(0);function n(){}for(var o in r)n[o]=r[o];n.MAX_ITERATIONS=2500,n.DEFAULT_EDGE_LENGTH=50,n.DEFAULT_SPRING_STRENGTH=.45,n.DEFAULT_REPULSION_STRENGTH=4500,n.DEFAULT_GRAVITY_STRENGTH=.4,n.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,n.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,n.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,n.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,n.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,n.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,n.COOLING_ADAPTATION_FACTOR=.33,n.ADAPTATION_LOWER_NODE_LIMIT=1e3,n.ADAPTATION_UPPER_NODE_LIMIT=5e3,n.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,n.MAX_NODE_DISPLACEMENT=3*n.MAX_NODE_DISPLACEMENT_INCREMENTAL,n.MIN_REPULSION_DIST=n.DEFAULT_EDGE_LENGTH/10,n.CONVERGENCE_CHECK_PERIOD=100,n.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,n.MIN_EDGE_LENGTH=1,n.GRID_CALCULATION_CHECK_PERIOD=10,t.exports=n},function(t,e,i){"use strict";function r(t,e){null==t&&null==e?(this.x=0,this.y=0):(this.x=t,this.y=e)}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.setX=function(t){this.x=t},r.prototype.setY=function(t){this.y=t},r.prototype.getDifference=function(t){return new DimensionD(this.x-t.x,this.y-t.y)},r.prototype.getCopy=function(){return new r(this.x,this.y)},r.prototype.translate=function(t){return this.x+=t.width,this.y+=t.height,this},t.exports=r},function(t,e,i){"use strict";var r=i(2),n=i(10),o=i(0),s=i(7),a=i(3),h=i(1),l=i(13),c=i(12),d=i(11);function g(t,e,i){r.call(this,i),this.estimatedSize=n.MIN_VALUE,this.margin=o.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=t,null!=e&&e instanceof s?this.graphManager=e:null!=e&&e instanceof Layout&&(this.graphManager=e.graphManager)}for(var u in g.prototype=Object.create(r.prototype),r)g[u]=r[u];g.prototype.getNodes=function(){return this.nodes},g.prototype.getEdges=function(){return this.edges},g.prototype.getGraphManager=function(){return this.graphManager},g.prototype.getParent=function(){return this.parent},g.prototype.getLeft=function(){return this.left},g.prototype.getRight=function(){return this.right},g.prototype.getTop=function(){return this.top},g.prototype.getBottom=function(){return this.bottom},g.prototype.isConnected=function(){return this.isConnected},g.prototype.add=function(t,e,i){if(null==e&&null==i){var r=t;if(null==this.graphManager)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(r)>-1)throw"Node already in graph!";return r.owner=this,this.getNodes().push(r),r}var n=t;if(!(this.getNodes().indexOf(e)>-1&&this.getNodes().indexOf(i)>-1))throw"Source or target not in graph!";if(e.owner!=i.owner||e.owner!=this)throw"Both owners must be this graph!";return e.owner!=i.owner?null:(n.source=e,n.target=i,n.isInterGraph=!1,this.getEdges().push(n),e.edges.push(n),i!=e&&i.edges.push(n),n)},g.prototype.remove=function(t){var e=t;if(t instanceof a){if(null==e)throw"Node is null!";if(null==e.owner||e.owner!=this)throw"Owner graph is invalid!";if(null==this.graphManager)throw"Owner graph manager is invalid!";for(var i=e.edges.slice(),r=i.length,n=0;n-1&&c>-1))throw"Source and/or target doesn't know this edge!";if(o.source.edges.splice(l,1),o.target!=o.source&&o.target.edges.splice(c,1),-1==(s=o.source.owner.getEdges().indexOf(o)))throw"Not in owner's edge list!";o.source.owner.getEdges().splice(s,1)}},g.prototype.updateLeftTop=function(){for(var t,e,i,r=n.MAX_VALUE,o=n.MAX_VALUE,s=this.getNodes(),a=s.length,h=0;h(t=l.getTop())&&(r=t),o>(e=l.getLeft())&&(o=e)}return r==n.MAX_VALUE?null:(i=null!=s[0].getParent().paddingLeft?s[0].getParent().paddingLeft:this.margin,this.left=o-i,this.top=r-i,new c(this.left,this.top))},g.prototype.updateBounds=function(t){for(var e,i,r,o,s,a=n.MAX_VALUE,h=-n.MAX_VALUE,c=n.MAX_VALUE,d=-n.MAX_VALUE,g=this.nodes,u=g.length,p=0;p(e=f.getLeft())&&(a=e),h<(i=f.getRight())&&(h=i),c>(r=f.getTop())&&(c=r),d<(o=f.getBottom())&&(d=o)}var y=new l(a,c,h-a,d-c);a==n.MAX_VALUE&&(this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom()),s=null!=g[0].getParent().paddingLeft?g[0].getParent().paddingLeft:this.margin,this.left=y.x-s,this.right=y.x+y.width+s,this.top=y.y-s,this.bottom=y.y+y.height+s},g.calculateBounds=function(t){for(var e,i,r,o,s=n.MAX_VALUE,a=-n.MAX_VALUE,h=n.MAX_VALUE,c=-n.MAX_VALUE,d=t.length,g=0;g(e=u.getLeft())&&(s=e),a<(i=u.getRight())&&(a=i),h>(r=u.getTop())&&(h=r),c<(o=u.getBottom())&&(c=o)}return new l(s,h,a-s,c-h)},g.prototype.getInclusionTreeDepth=function(){return this==this.graphManager.getRoot()?1:this.parent.getInclusionTreeDepth()},g.prototype.getEstimatedSize=function(){if(this.estimatedSize==n.MIN_VALUE)throw"assert failed";return this.estimatedSize},g.prototype.calcEstimatedSize=function(){for(var t=0,e=this.nodes,i=e.length,r=0;r=this.nodes.length){var h=0;n.forEach((function(e){e.owner==t&&h++})),h==this.nodes.length&&(this.isConnected=!0)}}else this.isConnected=!0},t.exports=g},function(t,e,i){"use strict";var r,n=i(1);function o(t){r=i(6),this.layout=t,this.graphs=[],this.edges=[]}o.prototype.addRoot=function(){var t=this.layout.newGraph(),e=this.layout.newNode(null),i=this.add(t,e);return this.setRootGraph(i),this.rootGraph},o.prototype.add=function(t,e,i,r,n){if(null==i&&null==r&&null==n){if(null==t)throw"Graph is null!";if(null==e)throw"Parent node is null!";if(this.graphs.indexOf(t)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(t),null!=t.parent)throw"Already has a parent!";if(null!=e.child)throw"Already has a child!";return t.parent=e,e.child=t,t}n=i,i=t;var o=(r=e).getOwner(),s=n.getOwner();if(null==o||o.getGraphManager()!=this)throw"Source not in this graph mgr!";if(null==s||s.getGraphManager()!=this)throw"Target not in this graph mgr!";if(o==s)return i.isInterGraph=!1,o.add(i,r,n);if(i.isInterGraph=!0,i.source=r,i.target=n,this.edges.indexOf(i)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(i),null==i.source||null==i.target)throw"Edge source and/or target is null!";if(-1!=i.source.edges.indexOf(i)||-1!=i.target.edges.indexOf(i))throw"Edge already in source and/or target incidency list!";return i.source.edges.push(i),i.target.edges.push(i),i},o.prototype.remove=function(t){if(t instanceof r){var e=t;if(e.getGraphManager()!=this)throw"Graph not in this graph mgr";if(e!=this.rootGraph&&(null==e.parent||e.parent.graphManager!=this))throw"Invalid parent node!";for(var i,o=[],s=(o=o.concat(e.getEdges())).length,a=0;a=e.getRight()?i[0]+=Math.min(e.getX()-t.getX(),t.getRight()-e.getRight()):e.getX()<=t.getX()&&e.getRight()>=t.getRight()&&(i[0]+=Math.min(t.getX()-e.getX(),e.getRight()-t.getRight())),t.getY()<=e.getY()&&t.getBottom()>=e.getBottom()?i[1]+=Math.min(e.getY()-t.getY(),t.getBottom()-e.getBottom()):e.getY()<=t.getY()&&e.getBottom()>=t.getBottom()&&(i[1]+=Math.min(t.getY()-e.getY(),e.getBottom()-t.getBottom()));var o=Math.abs((e.getCenterY()-t.getCenterY())/(e.getCenterX()-t.getCenterX()));e.getCenterY()===t.getCenterY()&&e.getCenterX()===t.getCenterX()&&(o=1);var s=o*i[0],a=i[1]/o;i[0]s)return i[0]=r,i[1]=h,i[2]=o,i[3]=E,!1;if(no)return i[0]=a,i[1]=n,i[2]=v,i[3]=s,!1;if(ro?(i[0]=c,i[1]=d,w=!0):(i[0]=l,i[1]=h,w=!0):I===C&&(r>o?(i[0]=a,i[1]=h,w=!0):(i[0]=g,i[1]=d,w=!0)),-_===C?o>r?(i[2]=m,i[3]=E,L=!0):(i[2]=v,i[3]=y,L=!0):_===C&&(o>r?(i[2]=f,i[3]=y,L=!0):(i[2]=N,i[3]=E,L=!0)),w&&L)return!1;if(r>o?n>s?(M=this.getCardinalDirection(I,C,4),x=this.getCardinalDirection(_,C,2)):(M=this.getCardinalDirection(-I,C,3),x=this.getCardinalDirection(-_,C,1)):n>s?(M=this.getCardinalDirection(-I,C,1),x=this.getCardinalDirection(-_,C,3)):(M=this.getCardinalDirection(I,C,2),x=this.getCardinalDirection(_,C,4)),!w)switch(M){case 1:D=h,O=r+-p/C,i[0]=O,i[1]=D;break;case 2:O=g,D=n+u*C,i[0]=O,i[1]=D;break;case 3:D=d,O=r+p/C,i[0]=O,i[1]=D;break;case 4:O=c,D=n+-u*C,i[0]=O,i[1]=D}if(!L)switch(x){case 1:b=y,R=o+-A/C,i[2]=R,i[3]=b;break;case 2:R=N,b=s+T*C,i[2]=R,i[3]=b;break;case 3:b=E,R=o+A/C,i[2]=R,i[3]=b;break;case 4:R=m,b=s+-T*C,i[2]=R,i[3]=b}}return!1},n.getCardinalDirection=function(t,e,i){return t>e?i:1+i%4},n.getIntersection=function(t,e,i,n){if(null==n)return this.getIntersection2(t,e,i);var o,s,a,h,l,c,d,g=t.x,u=t.y,p=e.x,f=e.y,y=i.x,v=i.y,m=n.x,E=n.y;return 0==(d=(o=f-u)*(h=y-m)-(s=E-v)*(a=g-p))?null:new r((a*(c=m*v-y*E)-h*(l=p*u-g*f))/d,(s*l-o*c)/d)},n.angleOfVector=function(t,e,i,r){var n=void 0;return t!==i?(n=Math.atan((r-e)/(i-t)),i=0){var c=(-h+Math.sqrt(h*h-4*a*l))/(2*a),d=(-h-Math.sqrt(h*h-4*a*l))/(2*a);return c>=0&&c<=1?[c]:d>=0&&d<=1?[d]:null}return null},n.HALF_PI=.5*Math.PI,n.ONE_AND_HALF_PI=1.5*Math.PI,n.TWO_PI=2*Math.PI,n.THREE_PI=3*Math.PI,t.exports=n},function(t,e,i){"use strict";function r(){}r.sign=function(t){return t>0?1:t<0?-1:0},r.floor=function(t){return t<0?Math.ceil(t):Math.floor(t)},r.ceil=function(t){return t<0?Math.floor(t):Math.ceil(t)},t.exports=r},function(t,e,i){"use strict";function r(){}r.MAX_VALUE=2147483647,r.MIN_VALUE=-2147483648,t.exports=r},function(t,e,i){"use strict";var r=function(){function t(t,e){for(var i=0;i0&&e;){for(a.push(l[0]);a.length>0&&e;){var c=a[0];a.splice(0,1),s.add(c);var d=c.getEdges();for(o=0;o-1&&l.splice(f,1)}s=new Set,h=new Map}else t=[]}return t},g.prototype.createDummyNodesForBendpoints=function(t){for(var e=[],i=t.source,r=this.graphManager.calcLowestCommonAncestor(t.source,t.target),n=0;n0){for(var n=this.edgeToDummyNodes.get(i),o=0;o=0&&e.splice(d,1),c.getNeighborsList().forEach((function(t){if(i.indexOf(t)<0){var e=r.get(t)-1;1==e&&h.push(t),r.set(t,e)}}))}i=i.concat(h),1!=e.length&&2!=e.length||(n=!0,o=e[0])}return o},g.prototype.setGraphManager=function(t){this.graphManager=t},t.exports=g},function(t,e,i){"use strict";function r(){}r.seed=1,r.x=0,r.nextDouble=function(){return r.x=1e4*Math.sin(r.seed++),r.x-Math.floor(r.x)},t.exports=r},function(t,e,i){"use strict";var r=i(5);function n(t,e){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}n.prototype.getWorldOrgX=function(){return this.lworldOrgX},n.prototype.setWorldOrgX=function(t){this.lworldOrgX=t},n.prototype.getWorldOrgY=function(){return this.lworldOrgY},n.prototype.setWorldOrgY=function(t){this.lworldOrgY=t},n.prototype.getWorldExtX=function(){return this.lworldExtX},n.prototype.setWorldExtX=function(t){this.lworldExtX=t},n.prototype.getWorldExtY=function(){return this.lworldExtY},n.prototype.setWorldExtY=function(t){this.lworldExtY=t},n.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},n.prototype.setDeviceOrgX=function(t){this.ldeviceOrgX=t},n.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},n.prototype.setDeviceOrgY=function(t){this.ldeviceOrgY=t},n.prototype.getDeviceExtX=function(){return this.ldeviceExtX},n.prototype.setDeviceExtX=function(t){this.ldeviceExtX=t},n.prototype.getDeviceExtY=function(){return this.ldeviceExtY},n.prototype.setDeviceExtY=function(t){this.ldeviceExtY=t},n.prototype.transformX=function(t){var e=0,i=this.lworldExtX;return 0!=i&&(e=this.ldeviceOrgX+(t-this.lworldOrgX)*this.ldeviceExtX/i),e},n.prototype.transformY=function(t){var e=0,i=this.lworldExtY;return 0!=i&&(e=this.ldeviceOrgY+(t-this.lworldOrgY)*this.ldeviceExtY/i),e},n.prototype.inverseTransformX=function(t){var e=0,i=this.ldeviceExtX;return 0!=i&&(e=this.lworldOrgX+(t-this.ldeviceOrgX)*this.lworldExtX/i),e},n.prototype.inverseTransformY=function(t){var e=0,i=this.ldeviceExtY;return 0!=i&&(e=this.lworldOrgY+(t-this.ldeviceOrgY)*this.lworldExtY/i),e},n.prototype.inverseTransformPoint=function(t){return new r(this.inverseTransformX(t.x),this.inverseTransformY(t.y))},t.exports=n},function(t,e,i){"use strict";var r=i(15),n=i(4),o=i(0),s=i(8),a=i(9);function h(){r.call(this),this.useSmartIdealEdgeLengthCalculation=n.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=n.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=n.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=n.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=n.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*n.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=n.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=n.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=n.MAX_ITERATIONS}for(var l in h.prototype=Object.create(r.prototype),r)h[l]=r[l];h.prototype.initParameters=function(){r.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=n.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},h.prototype.calcIdealEdgeLengths=function(){for(var t,e,i,r,s,a,h,l=this.getGraphManager().getAllEdges(),c=0;cn.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*n.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(t-n.ADAPTATION_LOWER_NODE_LIMIT)/(n.ADAPTATION_UPPER_NODE_LIMIT-n.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-n.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=n.MAX_NODE_DISPLACEMENT_INCREMENTAL):(t>n.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(n.COOLING_ADAPTATION_FACTOR,1-(t-n.ADAPTATION_LOWER_NODE_LIMIT)/(n.ADAPTATION_UPPER_NODE_LIMIT-n.ADAPTATION_LOWER_NODE_LIMIT)*(1-n.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=n.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(5*this.getAllNodes().length,this.maxIterations),this.displacementThresholdPerNode=3*n.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var t,e=this.getAllEdges(),i=0;i0&&void 0!==arguments[0])||arguments[0],a=arguments.length>1&&void 0!==arguments[1]&&arguments[1],h=this.getAllNodes();if(this.useFRGridVariant)for(this.totalIterations%n.GRID_CALCULATION_CHECK_PERIOD==1&&s&&this.updateGrid(),o=new Set,t=0;t(h=e.getEstimatedSize()*this.gravityRangeFactor)||a>h)&&(t.gravitationForceX=-this.gravityConstant*n,t.gravitationForceY=-this.gravityConstant*o):(s>(h=e.getEstimatedSize()*this.compoundGravityRangeFactor)||a>h)&&(t.gravitationForceX=-this.gravityConstant*n*this.compoundGravityConstant,t.gravitationForceY=-this.gravityConstant*o*this.compoundGravityConstant)},h.prototype.isConverged=function(){var t,e=!1;return this.totalIterations>this.maxIterations/3&&(e=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),t=this.totalDisplacement=a.length||l>=a[0].length))for(var c=0;ct}}]),t}();t.exports=o},function(t,e,i){"use strict";function r(){}r.svd=function(t){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=t.length,this.n=t[0].length;var e=Math.min(this.m,this.n);this.s=function(t){for(var e=[];t-- >0;)e.push(0);return e}(Math.min(this.m+1,this.n)),this.U=function t(e){if(0==e.length)return 0;for(var i=[],r=0;r0;)e.push(0);return e}(this.n),s=function(t){for(var e=[];t-- >0;)e.push(0);return e}(this.m),a=Math.min(this.m-1,this.n),h=Math.max(0,Math.min(this.n-2,this.m)),l=0;l=0;x--)if(0!==this.s[x]){for(var O=x+1;O=0;P--){if(function(t,e){return t&&e}(P0;){var W=void 0,j=void 0;for(W=_-2;W>=-1&&-1!==W;W--)if(Math.abs(o[W])<=B+V*(Math.abs(this.s[W])+Math.abs(this.s[W+1]))){o[W]=0;break}if(W===_-2)j=4;else{var q=void 0;for(q=_-1;q>=W&&q!==W;q--){var $=(q!==_?Math.abs(o[q]):0)+(q!==W+1?Math.abs(o[q-1]):0);if(Math.abs(this.s[q])<=B+V*$){this.s[q]=0;break}}q===W?j=3:q===_-1?j=1:(j=2,W=q)}switch(W++,j){case 1:var K=o[_-2];o[_-2]=0;for(var Z=_-2;Z>=W;Z--){var Q=r.hypot(this.s[Z],K),J=this.s[Z]/Q,tt=K/Q;this.s[Z]=Q,Z!==W&&(K=-tt*o[Z-1],o[Z-1]=J*o[Z-1]);for(var et=0;et=this.s[W+1]);){var _t=this.s[W];if(this.s[W]=this.s[W+1],this.s[W+1]=_t,WMath.abs(e)?(i=e/t,i=Math.abs(t)*Math.sqrt(1+i*i)):0!=e?(i=t/e,i=Math.abs(e)*Math.sqrt(1+i*i)):i=0,i},t.exports=r},function(t,e,i){"use strict";var r=function(){function t(t,e){for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:1,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:-1,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:-1;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.sequence1=e,this.sequence2=i,this.match_score=r,this.mismatch_penalty=n,this.gap_penalty=o,this.iMax=e.length+1,this.jMax=i.length+1,this.grid=new Array(this.iMax);for(var s=0;s=0;i--){var r=this.listeners[i];r.event===t&&r.callback===e&&this.listeners.splice(i,1)}},n.emit=function(t,e){for(var i=0;i{"use strict";i.d(e,{diagram:()=>dt});var r=i(8568),n=i(2382),o=i(3159),s=i(8448),a=(i(5522),i(1661)),h=i(32),l=i(8731),c=i(165),d=i(6527),g=i(4852),u={L:"left",R:"right",T:"top",B:"bottom"},p={L:(0,h.K2)((t=>`${t},${t/2} 0,${t} 0,0`),"L"),R:(0,h.K2)((t=>`0,${t/2} ${t},0 ${t},${t}`),"R"),T:(0,h.K2)((t=>`0,0 ${t},0 ${t/2},${t}`),"T"),B:(0,h.K2)((t=>`${t/2},0 ${t},${t} 0,${t}`),"B")},f={L:(0,h.K2)(((t,e)=>t-e+2),"L"),R:(0,h.K2)(((t,e)=>t-2),"R"),T:(0,h.K2)(((t,e)=>t-e+2),"T"),B:(0,h.K2)(((t,e)=>t-2),"B")},y=(0,h.K2)((function(t){return m(t)?"L"===t?"R":"L":"T"===t?"B":"T"}),"getOppositeArchitectureDirection"),v=(0,h.K2)((function(t){return"L"===t||"R"===t||"T"===t||"B"===t}),"isArchitectureDirection"),m=(0,h.K2)((function(t){return"L"===t||"R"===t}),"isArchitectureDirectionX"),E=(0,h.K2)((function(t){return"T"===t||"B"===t}),"isArchitectureDirectionY"),N=(0,h.K2)((function(t,e){const i=m(t)&&E(e),r=E(t)&&m(e);return i||r}),"isArchitectureDirectionXY"),T=(0,h.K2)((function(t){const e=t[0],i=t[1],r=m(e)&&E(i),n=E(e)&&m(i);return r||n}),"isArchitecturePairXY"),A=(0,h.K2)((function(t){return"LL"!==t&&"RR"!==t&&"TT"!==t&&"BB"!==t}),"isValidArchitectureDirectionPair"),w=(0,h.K2)((function(t,e){const i=`${t}${e}`;return A(i)?i:void 0}),"getArchitectureDirectionPair"),L=(0,h.K2)((function([t,e],i){const r=i[0],n=i[1];return m(r)?E(n)?[t+("L"===r?-1:1),e+("T"===n?1:-1)]:[t+("L"===r?-1:1),e]:m(n)?[t+("L"===n?1:-1),e+("T"===r?1:-1)]:[t,e+("T"===r?1:-1)]}),"shiftPositionByArchitectureDirectionPair"),I=(0,h.K2)((function(t){return"LT"===t||"TL"===t?[1,1]:"BL"===t||"LB"===t?[1,-1]:"BR"===t||"RB"===t?[-1,-1]:[-1,1]}),"getArchitectureDirectionXYFactors"),_=(0,h.K2)((function(t){return"service"===t.type}),"isArchitectureService"),C=(0,h.K2)((function(t){return"junction"===t.type}),"isArchitectureJunction"),M=(0,h.K2)((t=>t.data()),"edgeData"),x=(0,h.K2)((t=>t.data()),"nodeData"),O=h.UI.architecture,D=new s.m((()=>({nodes:{},groups:{},edges:[],registeredIds:{},config:O,dataStructures:void 0,elements:{}}))),R=(0,h.K2)((()=>{D.reset(),(0,h.IU)()}),"clear"),b=(0,h.K2)((function({id:t,icon:e,in:i,title:r,iconText:n}){if(void 0!==D.records.registeredIds[t])throw new Error(`The service id [${t}] is already in use by another ${D.records.registeredIds[t]}`);if(void 0!==i){if(t===i)throw new Error(`The service [${t}] cannot be placed within itself`);if(void 0===D.records.registeredIds[i])throw new Error(`The service [${t}]'s parent does not exist. Please make sure the parent is created before this service`);if("node"===D.records.registeredIds[i])throw new Error(`The service [${t}]'s parent is not a group`)}D.records.registeredIds[t]="node",D.records.nodes[t]={id:t,type:"service",icon:e,iconText:n,title:r,edges:[],in:i}}),"addService"),G=(0,h.K2)((()=>Object.values(D.records.nodes).filter(_)),"getServices"),F=(0,h.K2)((function({id:t,in:e}){D.records.registeredIds[t]="node",D.records.nodes[t]={id:t,type:"junction",edges:[],in:e}}),"addJunction"),S=(0,h.K2)((()=>Object.values(D.records.nodes).filter(C)),"getJunctions"),P=(0,h.K2)((()=>Object.values(D.records.nodes)),"getNodes"),U=(0,h.K2)((t=>D.records.nodes[t]),"getNode"),Y=(0,h.K2)((function({id:t,icon:e,in:i,title:r}){if(void 0!==D.records.registeredIds[t])throw new Error(`The group id [${t}] is already in use by another ${D.records.registeredIds[t]}`);if(void 0!==i){if(t===i)throw new Error(`The group [${t}] cannot be placed within itself`);if(void 0===D.records.registeredIds[i])throw new Error(`The group [${t}]'s parent does not exist. Please make sure the parent is created before this group`);if("node"===D.records.registeredIds[i])throw new Error(`The group [${t}]'s parent is not a group`)}D.records.registeredIds[t]="group",D.records.groups[t]={id:t,icon:e,title:r,in:i}}),"addGroup"),k=(0,h.K2)((()=>Object.values(D.records.groups)),"getGroups"),H=(0,h.K2)((function({lhsId:t,rhsId:e,lhsDir:i,rhsDir:r,lhsInto:n,rhsInto:o,lhsGroup:s,rhsGroup:a,title:h}){if(!v(i))throw new Error(`Invalid direction given for left hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${i}`);if(!v(r))throw new Error(`Invalid direction given for right hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${r}`);if(void 0===D.records.nodes[t]&&void 0===D.records.groups[t])throw new Error(`The left-hand id [${t}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(void 0===D.records.nodes[e]&&void 0===D.records.groups[t])throw new Error(`The right-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);const l=D.records.nodes[t].in,c=D.records.nodes[e].in;if(s&&l&&c&&l==c)throw new Error(`The left-hand id [${t}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(a&&l&&c&&l==c)throw new Error(`The right-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);const d={lhsId:t,lhsDir:i,lhsInto:n,lhsGroup:s,rhsId:e,rhsDir:r,rhsInto:o,rhsGroup:a,title:h};D.records.edges.push(d),D.records.nodes[t]&&D.records.nodes[e]&&(D.records.nodes[t].edges.push(D.records.edges[D.records.edges.length-1]),D.records.nodes[e].edges.push(D.records.edges[D.records.edges.length-1]))}),"addEdge"),X=(0,h.K2)((()=>D.records.edges),"getEdges"),z=(0,h.K2)((()=>{if(void 0===D.records.dataStructures){const t=Object.entries(D.records.nodes).reduce(((t,[e,i])=>(t[e]=i.edges.reduce(((t,i)=>{if(i.lhsId===e){const e=w(i.lhsDir,i.rhsDir);e&&(t[e]=i.rhsId)}else{const e=w(i.rhsDir,i.lhsDir);e&&(t[e]=i.lhsId)}return t}),{}),t)),{}),e=Object.keys(t)[0],i={[e]:1},r=Object.keys(t).reduce(((t,i)=>i===e?t:{...t,[i]:1}),{}),n=(0,h.K2)((e=>{const n={[e]:[0,0]},o=[e];for(;o.length>0;){const e=o.shift();if(e){i[e]=1,delete r[e];const s=t[e],[a,h]=n[e];Object.entries(s).forEach((([t,e])=>{i[e]||(n[e]=L([a,h],t),o.push(e))}))}}return n}),"BFS"),o=[n(e)];for(;Object.keys(r).length>0;)o.push(n(Object.keys(r)[0]));D.records.dataStructures={adjList:t,spatialMaps:o}}return D.records.dataStructures}),"getDataStructures"),V=(0,h.K2)(((t,e)=>{D.records.elements[t]=e}),"setElementForId"),B=(0,h.K2)((t=>D.records.elements[t]),"getElementById"),W={clear:R,setDiagramTitle:h.ke,getDiagramTitle:h.ab,setAccTitle:h.SV,getAccTitle:h.iN,setAccDescription:h.EI,getAccDescription:h.m7,addService:b,getServices:G,addJunction:F,getJunctions:S,getNodes:P,getNode:U,addGroup:Y,getGroups:k,addEdge:H,getEdges:X,setElementForId:V,getElementById:B,getDataStructures:z};function j(t){const e=(0,h.D7)().architecture;return e?.[t]?e[t]:O[t]}(0,h.K2)(j,"getConfigField");var q=(0,h.K2)(((t,e)=>{(0,o.S)(t,e),t.groups.map(e.addGroup),t.services.map((t=>e.addService({...t,type:"service"}))),t.junctions.map((t=>e.addJunction({...t,type:"junction"}))),t.edges.map(e.addEdge)}),"populateDb"),$={parse:(0,h.K2)((async t=>{const e=await(0,l.qg)("architecture",t);h.Rm.debug(e),q(e,W)}),"parse")},K=(0,h.K2)((t=>`\n .edge {\n stroke-width: ${t.archEdgeWidth};\n stroke: ${t.archEdgeColor};\n fill: none;\n }\n\n .arrow {\n fill: ${t.archEdgeArrowColor};\n }\n\n .node-bkg {\n fill: none;\n stroke: ${t.archGroupBorderColor};\n stroke-width: ${t.archGroupBorderWidth};\n stroke-dasharray: 8;\n }\n .node-icon-text {\n display: flex; \n align-items: center;\n }\n \n .node-icon-text > div {\n color: #fff;\n margin: 1px;\n height: fit-content;\n text-align: center;\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n }\n`),"getStyles"),Z=(0,h.K2)((t=>`${t}`),"wrapIcon"),Q={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:Z('')},server:{body:Z('')},disk:{body:Z('')},internet:{body:Z('')},cloud:{body:Z('')},unknown:r.Gc,blank:{body:Z("")}}},J=(0,h.K2)((async function(t,e){const i=j("padding"),r=j("iconSize"),o=r/2,s=r/6,a=s/2;await Promise.all(e.edges().map((async e=>{const{source:r,sourceDir:l,sourceArrow:c,sourceGroup:d,target:g,targetDir:u,targetArrow:y,targetGroup:v,label:A}=M(e);let{x:L,y:_}=e[0].sourceEndpoint();const{x:C,y:x}=e[0].midpoint();let{x:O,y:D}=e[0].targetEndpoint();const R=i+4;if(d&&(m(l)?L+="L"===l?-R:R:_+="T"===l?-R:R+18),v&&(m(u)?O+="L"===u?-R:R:D+="T"===u?-R:R+18),d||"junction"!==W.getNode(r)?.type||(m(l)?L+="L"===l?o:-o:_+="T"===l?o:-o),v||"junction"!==W.getNode(g)?.type||(m(u)?O+="L"===u?o:-o:D+="T"===u?o:-o),e[0]._private.rscratch){const e=t.insert("g");if(e.insert("path").attr("d",`M ${L},${_} L ${C},${x} L${O},${D} `).attr("class","edge"),c){const t=m(l)?f[l](L,s):L-a,i=E(l)?f[l](_,s):_-a;e.insert("polygon").attr("points",p[l](s)).attr("transform",`translate(${t},${i})`).attr("class","arrow")}if(y){const t=m(u)?f[u](O,s):O-a,i=E(u)?f[u](D,s):D-a;e.insert("polygon").attr("points",p[u](s)).attr("transform",`translate(${t},${i})`).attr("class","arrow")}if(A){const t=N(l,u)?"XY":m(l)?"X":"Y";let i=0;i="X"===t?Math.abs(L-O):"Y"===t?Math.abs(_-D)/1.5:Math.abs(L-O)/2;const r=e.append("g");if(await(0,n.GZ)(r,A,{useHtmlLabels:!1,width:i,classes:"architecture-service-label"},(0,h.D7)()),r.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),"X"===t)r.attr("transform","translate("+C+", "+x+")");else if("Y"===t)r.attr("transform","translate("+C+", "+x+") rotate(-90)");else if("XY"===t){const t=w(l,u);if(t&&T(t)){const e=r.node().getBoundingClientRect(),[i,n]=I(t);r.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*i*n*45})`);const o=r.node().getBoundingClientRect();r.attr("transform",`\n translate(${C}, ${x-e.height/2})\n translate(${i*o.width/2}, ${n*o.height/2})\n rotate(${-1*i*n*45}, 0, ${e.height/2})\n `)}}}}})))}),"drawEdges"),tt=(0,h.K2)((async function(t,e){const i=.75*j("padding"),o=j("fontSize"),s=j("iconSize")/2;await Promise.all(e.nodes().map((async e=>{const a=x(e);if("group"===a.type){const{h:l,w:c,x1:d,y1:g}=e.boundingBox();t.append("rect").attr("x",d+s).attr("y",g+s).attr("width",c).attr("height",l).attr("class","node-bkg");const u=t.append("g");let p=d,f=g;if(a.icon){const t=u.append("g");t.html(`${await(0,r.WY)(a.icon,{height:i,width:i,fallbackPrefix:Q.prefix})}`),t.attr("transform","translate("+(p+s+1)+", "+(f+s+1)+")"),p+=i,f+=o/2-1-2}if(a.label){const t=u.append("g");await(0,n.GZ)(t,a.label,{useHtmlLabels:!1,width:c,classes:"architecture-service-label"},(0,h.D7)()),t.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),t.attr("transform","translate("+(p+s+4)+", "+(f+s+2)+")")}}})))}),"drawGroups"),et=(0,h.K2)((async function(t,e,i){for(const o of i){const i=e.append("g"),s=j("iconSize");if(o.title){const t=i.append("g");await(0,n.GZ)(t,o.title,{useHtmlLabels:!1,width:1.5*s,classes:"architecture-service-label"},(0,h.D7)()),t.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),t.attr("transform","translate("+s/2+", "+s+")")}const a=i.append("g");if(o.icon)a.html(`${await(0,r.WY)(o.icon,{height:s,width:s,fallbackPrefix:Q.prefix})}`);else if(o.iconText){a.html(`${await(0,r.WY)("blank",{height:s,width:s,fallbackPrefix:Q.prefix})}`);const t=a.append("g").append("foreignObject").attr("width",s).attr("height",s).append("div").attr("class","node-icon-text").attr("style",`height: ${s}px;`).append("div").html(o.iconText),e=parseInt(window.getComputedStyle(t.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;t.attr("style",`-webkit-line-clamp: ${Math.floor((s-2)/e)};`)}else a.append("path").attr("class","node-bkg").attr("id","node-"+o.id).attr("d",`M0 ${s} v${-s} q0,-5 5,-5 h${s} q5,0 5,5 v${s} H0 Z`);i.attr("class","architecture-service");const{width:l,height:c}=i._groups[0][0].getBBox();o.width=l,o.height=c,t.setElementForId(o.id,i)}return 0}),"drawServices"),it=(0,h.K2)((function(t,e,i){i.forEach((i=>{const r=e.append("g"),n=j("iconSize");r.append("g").append("rect").attr("id","node-"+i.id).attr("fill-opacity","0").attr("width",n).attr("height",n),r.attr("class","architecture-junction");const{width:o,height:s}=r._groups[0][0].getBBox();r.width=o,r.height=s,t.setElementForId(i.id,r)}))}),"drawJunctions");function rt(t,e){t.forEach((t=>{e.add({group:"nodes",data:{type:"service",id:t.id,icon:t.icon,label:t.title,parent:t.in,width:j("iconSize"),height:j("iconSize")},classes:"node-service"})}))}function nt(t,e){t.forEach((t=>{e.add({group:"nodes",data:{type:"junction",id:t.id,parent:t.in,width:j("iconSize"),height:j("iconSize")},classes:"node-junction"})}))}function ot(t,e){e.nodes().map((e=>{const i=x(e);"group"!==i.type&&(i.x=e.position().x,i.y=e.position().y,t.getElementById(i.id).attr("transform","translate("+(i.x||0)+","+(i.y||0)+")"))}))}function st(t,e){t.forEach((t=>{e.add({group:"nodes",data:{type:"group",id:t.id,icon:t.icon,label:t.title,parent:t.in},classes:"node-group"})}))}function at(t,e){t.forEach((t=>{const{lhsId:i,rhsId:r,lhsInto:n,lhsGroup:o,rhsInto:s,lhsDir:a,rhsDir:h,rhsGroup:l,title:c}=t,d=N(t.lhsDir,t.rhsDir)?"segments":"straight",g={id:`${i}-${r}`,label:c,source:i,sourceDir:a,sourceArrow:n,sourceGroup:o,sourceEndpoint:"L"===a?"0 50%":"R"===a?"100% 50%":"T"===a?"50% 0":"50% 100%",target:r,targetDir:h,targetArrow:s,targetGroup:l,targetEndpoint:"L"===h?"0 50%":"R"===h?"100% 50%":"T"===h?"50% 0":"50% 100%"};e.add({group:"edges",data:g,classes:d})}))}function ht(t){const e=t.map((t=>{const e={},i={};return Object.entries(t).forEach((([t,[r,n]])=>{e[n]||(e[n]=[]),i[r]||(i[r]=[]),e[n].push(t),i[r].push(t)})),{horiz:Object.values(e).filter((t=>t.length>1)),vert:Object.values(i).filter((t=>t.length>1))}})),[i,r]=e.reduce((([t,e],{horiz:i,vert:r})=>[[...t,...i],[...e,...r]]),[[],[]]);return{horizontal:i,vertical:r}}function lt(t){const e=[],i=(0,h.K2)((t=>`${t[0]},${t[1]}`),"posToStr"),r=(0,h.K2)((t=>t.split(",").map((t=>parseInt(t)))),"strToPos");return t.forEach((t=>{const n=Object.fromEntries(Object.entries(t).map((([t,e])=>[i(e),t]))),o=[i([0,0])],s={},a={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;o.length>0;){const t=o.shift();if(t){s[t]=1;const h=n[t];if(h){const l=r(t);Object.entries(a).forEach((([t,r])=>{const a=i([l[0]+r[0],l[1]+r[1]]),c=n[a];c&&!s[a]&&(o.push(a),e.push({[u[t]]:c,[u[y(t)]]:h,gap:1.5*j("iconSize")}))}))}}}})),e}function ct(t,e,i,r,{spatialMaps:n}){return new Promise((o=>{const s=(0,g.Ltv)("body").append("div").attr("id","cy").attr("style","display:none"),a=(0,c.A)({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight",label:"data(label)","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${j("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${j("padding")}px`}}]});s.remove(),st(i,a),rt(t,a),nt(e,a),at(r,a);const l=ht(n),d=lt(n),u=a.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(t){const[e,i]=t.connectedNodes(),{parent:r}=x(e),{parent:n}=x(i);return r===n?1.5*j("iconSize"):.5*j("iconSize")},edgeElasticity(t){const[e,i]=t.connectedNodes(),{parent:r}=x(e),{parent:n}=x(i);return r===n?.45:.001},alignmentConstraint:l,relativePlacementConstraint:d});u.one("layoutstop",(()=>{function t(t,e,i,r){let n,o;const{x:s,y:a}=t,{x:h,y:l}=e;o=(r-a+(s-i)*(a-l)/(s-h))/Math.sqrt(1+Math.pow((a-l)/(s-h),2)),n=Math.sqrt(Math.pow(r-a,2)+Math.pow(i-s,2)-Math.pow(o,2)),n/=Math.sqrt(Math.pow(h-s,2)+Math.pow(l-a,2));let c=(h-s)*(r-a)-(l-a)*(i-s);switch(!0){case c>=0:c=1;break;case c<0:c=-1}let d=(h-s)*(i-s)+(l-a)*(r-a);switch(!0){case d>=0:d=1;break;case d<0:d=-1}return o=Math.abs(o)*c,n*=d,{distances:o,weights:n}}(0,h.K2)(t,"getSegmentWeights"),a.startBatch();for(const e of Object.values(a.edges()))if(e.data?.()){const{x:i,y:r}=e.source().position(),{x:n,y:o}=e.target().position();if(i!==n&&r!==o){const i=e.sourceEndpoint(),r=e.targetEndpoint(),{sourceDir:n}=M(e),[o,s]=E(n)?[i.x,r.y]:[r.x,i.y],{weights:a,distances:h}=t(i,r,o,s);e.style("segment-distances",h),e.style("segment-weights",a)}}a.endBatch(),u.run()})),u.run(),a.ready((t=>{h.Rm.info("Ready",t),o(a)}))}))}(0,r.pC)([{name:Q.prefix,icons:Q}]),c.A.use(d),(0,h.K2)(rt,"addServices"),(0,h.K2)(nt,"addJunctions"),(0,h.K2)(ot,"positionNodes"),(0,h.K2)(st,"addGroups"),(0,h.K2)(at,"addEdges"),(0,h.K2)(ht,"getAlignments"),(0,h.K2)(lt,"getRelativeConstraints"),(0,h.K2)(ct,"layoutArchitecture");var dt={parser:$,db:W,renderer:{draw:(0,h.K2)((async(t,e,i,r)=>{const n=r.db,o=n.getServices(),s=n.getJunctions(),l=n.getGroups(),c=n.getEdges(),d=n.getDataStructures(),g=(0,a.D)(e),u=g.append("g");u.attr("class","architecture-edges");const p=g.append("g");p.attr("class","architecture-services");const f=g.append("g");f.attr("class","architecture-groups"),await et(n,p,o),it(n,p,s);const y=await ct(o,s,l,c,d);await J(u,y),await tt(f,y),ot(n,y),(0,h.ot)(void 0,g,j("padding"),j("useMaxWidth"))}),"draw")},styles:K}},8448:(t,e,i)=>{"use strict";i.d(e,{m:()=>n});var r=i(32),n=class{constructor(t){this.init=t,this.records=this.init()}static{(0,r.K2)(this,"ImperativeState")}reset(){this.records=this.init()}}},3159:(t,e,i)=>{"use strict";function r(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}i.d(e,{S:()=>r}),(0,i(32).K2)(r,"populateCommonDb")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/650-4e563e3b.chunk.min.js b/themes/hugo-geekdoc/static/js/650-4e563e3b.chunk.min.js deleted file mode 100644 index 005293683..000000000 --- a/themes/hugo-geekdoc/static/js/650-4e563e3b.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[650],{1650:(t,e,a)=>{a.d(e,{diagram:()=>b});var r=a(2207),i=a(7323),n=a(798),d=a(4852),o=a(567),s=a(697),l=0,p=(0,n.K2)((function(t,e,a,r,o){const s=(0,n.K2)((function(t){switch(t){case o.db.relationType.AGGREGATION:return"aggregation";case o.db.relationType.EXTENSION:return"extension";case o.db.relationType.COMPOSITION:return"composition";case o.db.relationType.DEPENDENCY:return"dependency";case o.db.relationType.LOLLIPOP:return"lollipop"}}),"getRelationType");e.points=e.points.filter((t=>!Number.isNaN(t.y)));const p=e.points,g=(0,d.n8j)().x((function(t){return t.x})).y((function(t){return t.y})).curve(d.qrM),c=t.append("path").attr("d",g(p)).attr("id","edge"+l).attr("class","relation");let h,f,x="";r.arrowMarkerAbsolute&&(x=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,x=x.replace(/\(/g,"\\("),x=x.replace(/\)/g,"\\)")),1==a.relation.lineType&&c.attr("class","relation dashed-line"),10==a.relation.lineType&&c.attr("class","relation dotted-line"),"none"!==a.relation.type1&&c.attr("marker-start","url("+x+"#"+s(a.relation.type1)+"Start)"),"none"!==a.relation.type2&&c.attr("marker-end","url("+x+"#"+s(a.relation.type2)+"End)");const y=e.points.length;let u,m,w,b,k=i._K.calcLabelPosition(e.points);if(h=k.x,f=k.y,y%2!=0&&y>1){let t=i._K.calcCardinalityPosition("none"!==a.relation.type1,e.points,e.points[0]),r=i._K.calcCardinalityPosition("none"!==a.relation.type2,e.points,e.points[y-1]);n.Rm.debug("cardinality_1_point "+JSON.stringify(t)),n.Rm.debug("cardinality_2_point "+JSON.stringify(r)),u=t.x,m=t.y,w=r.x,b=r.y}if(void 0!==a.title){const e=t.append("g").attr("class","classLabel"),i=e.append("text").attr("class","label").attr("x",h).attr("y",f).attr("fill","red").attr("text-anchor","middle").text(a.title);window.label=i;const n=i.node().getBBox();e.insert("rect",":first-child").attr("class","box").attr("x",n.x-r.padding/2).attr("y",n.y-r.padding/2).attr("width",n.width+r.padding).attr("height",n.height+r.padding)}n.Rm.info("Rendering relation "+JSON.stringify(a)),void 0!==a.relationTitle1&&"none"!==a.relationTitle1&&t.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",u).attr("y",m).attr("fill","black").attr("font-size","6").text(a.relationTitle1),void 0!==a.relationTitle2&&"none"!==a.relationTitle2&&t.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",w).attr("y",b).attr("fill","black").attr("font-size","6").text(a.relationTitle2),l++}),"drawEdge"),g=(0,n.K2)((function(t,e,a,r){n.Rm.debug("Rendering class ",e,a);const i=e.id,d={id:i,label:e.id,width:0,height:0},o=t.append("g").attr("id",r.db.lookUpDomId(i)).attr("class","classGroup");let s;s=e.link?o.append("svg:a").attr("xlink:href",e.link).attr("target",e.linkTarget).append("text").attr("y",a.textHeight+a.padding).attr("x",0):o.append("text").attr("y",a.textHeight+a.padding).attr("x",0);let l=!0;e.annotations.forEach((function(t){const e=s.append("tspan").text("«"+t+"»");l||e.attr("dy",a.textHeight),l=!1}));let p=c(e);const g=s.append("tspan").text(p).attr("class","title");l||g.attr("dy",a.textHeight);const h=s.node().getBBox().height;let x,y,u;if(e.members.length>0){x=o.append("line").attr("x1",0).attr("y1",a.padding+h+a.dividerMargin/2).attr("y2",a.padding+h+a.dividerMargin/2);const t=o.append("text").attr("x",a.padding).attr("y",h+a.dividerMargin+a.textHeight).attr("fill","white").attr("class","classText");l=!0,e.members.forEach((function(e){f(t,e,l,a),l=!1})),y=t.node().getBBox()}if(e.methods.length>0){u=o.append("line").attr("x1",0).attr("y1",a.padding+h+a.dividerMargin+y.height).attr("y2",a.padding+h+a.dividerMargin+y.height);const t=o.append("text").attr("x",a.padding).attr("y",h+2*a.dividerMargin+y.height+a.textHeight).attr("fill","white").attr("class","classText");l=!0,e.methods.forEach((function(e){f(t,e,l,a),l=!1}))}const m=o.node().getBBox();var w=" ";e.cssClasses.length>0&&(w+=e.cssClasses.join(" "));const b=o.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",m.width+2*a.padding).attr("height",m.height+a.padding+.5*a.dividerMargin).attr("class",w).node().getBBox().width;return s.node().childNodes.forEach((function(t){t.setAttribute("x",(b-t.getBBox().width)/2)})),e.tooltip&&s.insert("title").text(e.tooltip),x&&x.attr("x2",b),u&&u.attr("x2",b),d.width=b,d.height=m.height+a.padding+.5*a.dividerMargin,d}),"drawClass"),c=(0,n.K2)((function(t){let e=t.id;return t.type&&(e+="<"+(0,n.QO)(t.type)+">"),e}),"getClassTitleString"),h=(0,n.K2)((function(t,e,a,r){n.Rm.debug("Rendering note ",e,a);const i=e.id,d={id:i,text:e.text,width:0,height:0},o=t.append("g").attr("id",i).attr("class","classGroup");let s=o.append("text").attr("y",a.textHeight+a.padding).attr("x",0);const l=JSON.parse(`"${e.text}"`).split("\n");l.forEach((function(t){n.Rm.debug(`Adding line: ${t}`),s.append("tspan").text(t).attr("class","title").attr("dy",a.textHeight)}));const p=o.node().getBBox(),g=o.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",p.width+2*a.padding).attr("height",p.height+l.length*a.textHeight+a.padding+.5*a.dividerMargin).node().getBBox().width;return s.node().childNodes.forEach((function(t){t.setAttribute("x",(g-t.getBBox().width)/2)})),d.width=g,d.height=p.height+l.length*a.textHeight+a.padding+.5*a.dividerMargin,d}),"drawNote"),f=(0,n.K2)((function(t,e,a,r){const{displayText:i,cssStyle:n}=e.getDisplayDetails(),d=t.append("tspan").attr("x",r.padding).text(i);""!==n&&d.attr("style",e.cssStyle),a||d.attr("dy",r.textHeight)}),"addTspan"),x={getClassTitleString:c,drawClass:g,drawEdge:p,drawNote:h},y={},u=(0,n.K2)((function(t){const e=Object.entries(y).find((e=>e[1].label===t));if(e)return e[0]}),"getGraphId"),m=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),t.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"insertMarkers"),w={draw:(0,n.K2)((function(t,e,a,r){const i=(0,n.D7)().class;y={},n.Rm.info("Rendering diagram "+t);const l=(0,n.D7)().securityLevel;let p;"sandbox"===l&&(p=(0,d.Ltv)("#i"+e));const g="sandbox"===l?(0,d.Ltv)(p.nodes()[0].contentDocument.body):(0,d.Ltv)("body"),c=g.select(`[id='${e}']`);m(c);const h=new s.T({multigraph:!0});h.setGraph({isMultiGraph:!0}),h.setDefaultEdgeLabel((function(){return{}}));const f=r.db.getClasses(),w=[...f.keys()];for(const t of w){const e=f.get(t),a=x.drawClass(c,e,i,r);y[a.id]=a,h.setNode(a.id,a),n.Rm.info("Org height: "+a.height)}r.db.getRelations().forEach((function(t){n.Rm.info("tjoho"+u(t.id1)+u(t.id2)+JSON.stringify(t)),h.setEdge(u(t.id1),u(t.id2),{relation:t},t.title||"DEFAULT")})),r.db.getNotes().forEach((function(t){n.Rm.debug(`Adding note: ${JSON.stringify(t)}`);const e=x.drawNote(c,t,i,r);y[e.id]=e,h.setNode(e.id,e),t.class&&f.has(t.class)&&h.setEdge(t.id,u(t.class),{relation:{id1:t.id,id2:t.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")})),(0,o.Zp)(h),h.nodes().forEach((function(t){void 0!==t&&void 0!==h.node(t)&&(n.Rm.debug("Node "+t+": "+JSON.stringify(h.node(t))),g.select("#"+(r.db.lookUpDomId(t)||t)).attr("transform","translate("+(h.node(t).x-h.node(t).width/2)+","+(h.node(t).y-h.node(t).height/2)+" )"))})),h.edges().forEach((function(t){void 0!==t&&void 0!==h.edge(t)&&(n.Rm.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(h.edge(t))),x.drawEdge(c,h.edge(t),h.edge(t).relation,i,r))}));const b=c.node().getBBox(),k=b.width+40,L=b.height+40;(0,n.a$)(c,L,k,i.useMaxWidth);const E=`${b.x-20} ${b.y-20} ${k} ${L}`;n.Rm.debug(`viewBox ${E}`),c.attr("viewBox",E)}),"draw")},b={parser:r._$,db:r.z2,renderer:w,styles:r.tM,init:(0,n.K2)((t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,r.z2.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/654-9045dc15.chunk.min.js b/themes/hugo-geekdoc/static/js/654-9045dc15.chunk.min.js deleted file mode 100644 index 4f1866fca..000000000 --- a/themes/hugo-geekdoc/static/js/654-9045dc15.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[654],{1471:(e,t,s)=>{s.d(t,{T:()=>L});var i=s(9622),n=s(9142),r=s(9610),o=s(5041),a=s(4092),l=s(6401),c=s(8058),h=s(9592),d=s(7671),u=s(4326),g=s(7371),p=s(3533);const y=(0,u.A)((function(e){return(0,g.A)((0,d.A)(e,1,p.A,!0))}));var b=s(2866),_=s(3130),f="\0",m="\0",x="";class L{constructor(e={}){this._isDirected=!i.A(e,"directed")||e.directed,this._isMultigraph=!!i.A(e,"multigraph")&&e.multigraph,this._isCompound=!!i.A(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=n.A(void 0),this._defaultEdgeLabelFn=n.A(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[m]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return r.A(e)||(e=n.A(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return o.A(this._nodes)}sources(){var e=this;return a.A(this.nodes(),(function(t){return l.A(e._in[t])}))}sinks(){var e=this;return a.A(this.nodes(),(function(t){return l.A(e._out[t])}))}setNodes(e,t){var s=arguments,i=this;return c.A(e,(function(e){s.length>1?i.setNode(e,t):i.setNode(e)})),this}setNode(e,t){return i.A(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=m,this._children[e]={},this._children[m][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return i.A(this._nodes,e)}removeNode(e){var t=this;if(i.A(this._nodes,e)){var s=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],c.A(this.children(e),(function(e){t.setParent(e)})),delete this._children[e]),c.A(o.A(this._in[e]),s),delete this._in[e],delete this._preds[e],c.A(o.A(this._out[e]),s),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(h.A(t))t=m;else{for(var s=t+="";!h.A(s);s=this.parent(s))if(s===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var t=this._parent[e];if(t!==m)return t}}children(e){if(h.A(e)&&(e=m),this._isCompound){var t=this._children[e];if(t)return o.A(t)}else{if(e===m)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var t=this._preds[e];if(t)return o.A(t)}successors(e){var t=this._sucs[e];if(t)return o.A(t)}neighbors(e){var t=this.predecessors(e);if(t)return y(t,this.successors(e))}isLeaf(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length}filterNodes(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var s=this;c.A(this._nodes,(function(s,i){e(i)&&t.setNode(i,s)})),c.A(this._edgeObjs,(function(e){t.hasNode(e.v)&&t.hasNode(e.w)&&t.setEdge(e,s.edge(e))}));var i={};function n(e){var r=s.parent(e);return void 0===r||t.hasNode(r)?(i[e]=r,r):r in i?i[r]:n(r)}return this._isCompound&&c.A(t.nodes(),(function(e){t.setParent(e,n(e))})),t}setDefaultEdgeLabel(e){return r.A(e)||(e=n.A(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return b.A(this._edgeObjs)}setPath(e,t){var s=this,i=arguments;return _.A(e,(function(e,n){return i.length>1?s.setEdge(e,n,t):s.setEdge(e,n),n})),this}setEdge(){var e,t,s,n,r=!1,o=arguments[0];"object"==typeof o&&null!==o&&"v"in o?(e=o.v,t=o.w,s=o.name,2===arguments.length&&(n=arguments[1],r=!0)):(e=o,t=arguments[1],s=arguments[3],arguments.length>2&&(n=arguments[2],r=!0)),e=""+e,t=""+t,h.A(s)||(s=""+s);var a=E(this._isDirected,e,t,s);if(i.A(this._edgeLabels,a))return r&&(this._edgeLabels[a]=n),this;if(!h.A(s)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[a]=r?n:this._defaultEdgeLabelFn(e,t,s);var l=function(e,t,s,i){var n=""+t,r=""+s;if(!e&&n>r){var o=n;n=r,r=o}var a={v:n,w:r};return i&&(a.name=i),a}(this._isDirected,e,t,s);return e=l.v,t=l.w,Object.freeze(l),this._edgeObjs[a]=l,S(this._preds[t],e),S(this._sucs[e],t),this._in[t][a]=l,this._out[e][a]=l,this._edgeCount++,this}edge(e,t,s){var i=1===arguments.length?w(this._isDirected,arguments[0]):E(this._isDirected,e,t,s);return this._edgeLabels[i]}hasEdge(e,t,s){var n=1===arguments.length?w(this._isDirected,arguments[0]):E(this._isDirected,e,t,s);return i.A(this._edgeLabels,n)}removeEdge(e,t,s){var i=1===arguments.length?w(this._isDirected,arguments[0]):E(this._isDirected,e,t,s),n=this._edgeObjs[i];return n&&(e=n.v,t=n.w,delete this._edgeLabels[i],delete this._edgeObjs[i],k(this._preds[t],e),k(this._sucs[e],t),delete this._in[t][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,t){var s=this._in[e];if(s){var i=b.A(s);return t?a.A(i,(function(e){return e.v===t})):i}}outEdges(e,t){var s=this._out[e];if(s){var i=b.A(s);return t?a.A(i,(function(e){return e.w===t})):i}}nodeEdges(e,t){var s=this.inEdges(e,t);if(s)return s.concat(this.outEdges(e,t))}}function S(e,t){e[t]?e[t]++:e[t]=1}function k(e,t){--e[t]||delete e[t]}function E(e,t,s,i){var n=""+t,r=""+s;if(!e&&n>r){var o=n;n=r,r=o}return n+x+r+x+(h.A(i)?f:i)}function w(e,t){return E(e,t.v,t.w,t.name)}L.prototype._nodeCount=0,L.prototype._edgeCount=0},697:(e,t,s)=>{s.d(t,{T:()=>i.T});var i=s(1471)},5937:(e,t,s)=>{s.d(t,{A:()=>r});var i=s(6309),n=s(1931);const r=(e,t)=>i.A.lang.round(n.A.parse(e)[t])},2654:(e,t,s)=>{s.d(t,{diagram:()=>ae});var i=s(1953),n=s(6578),r=(s(8496),s(8252),s(7323)),o=s(798),a=s(53),l=s(5937),c=s(5582),h=s(4852),d=s(697),u=function(){var e=(0,o.K2)((function(e,t,s,i){for(s=s||{},i=e.length;i--;s[e[i]]=t);return s}),"o"),t=[1,7],s=[1,13],i=[1,14],n=[1,15],r=[1,19],a=[1,16],l=[1,17],c=[1,18],h=[8,30],d=[8,21,28,29,30,31,32,40,44,47],u=[1,23],g=[1,24],p=[8,15,16,21,28,29,30,31,32,40,44,47],y=[8,15,16,21,27,28,29,30,31,32,40,44,47],b=[1,49],_={trace:(0,o.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList:34,DIR:35,NODE_DSTART:36,NODE_DEND:37,BLOCK_ARROW_START:38,BLOCK_ARROW_END:39,classDef:40,CLASSDEF_ID:41,CLASSDEF_STYLEOPTS:42,DEFAULT:43,class:44,CLASSENTITY_IDS:45,STYLECLASS:46,style:47,STYLE_ENTITY_IDS:48,STYLE_DEFINITION_DATA:49,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:(0,o.K2)((function(e,t,s,i,n,r,o){var a=r.length-1;switch(n){case 4:i.getLogger().debug("Rule: separator (NL) ");break;case 5:i.getLogger().debug("Rule: separator (Space) ");break;case 6:i.getLogger().debug("Rule: separator (EOF) ");break;case 7:i.getLogger().debug("Rule: hierarchy: ",r[a-1]),i.setHierarchy(r[a-1]);break;case 8:i.getLogger().debug("Stop NL ");break;case 9:i.getLogger().debug("Stop EOF ");break;case 10:i.getLogger().debug("Stop NL2 ");break;case 11:i.getLogger().debug("Stop EOF2 ");break;case 12:i.getLogger().debug("Rule: statement: ",r[a]),"number"==typeof r[a].length?this.$=r[a]:this.$=[r[a]];break;case 13:i.getLogger().debug("Rule: statement #2: ",r[a-1]),this.$=[r[a-1]].concat(r[a]);break;case 14:i.getLogger().debug("Rule: link: ",r[a],e),this.$={edgeTypeStr:r[a],label:""};break;case 15:i.getLogger().debug("Rule: LABEL link: ",r[a-3],r[a-1],r[a]),this.$={edgeTypeStr:r[a],label:r[a-1]};break;case 18:const t=parseInt(r[a]),s=i.generateId();this.$={id:s,type:"space",label:"",width:t,children:[]};break;case 23:i.getLogger().debug("Rule: (nodeStatement link node) ",r[a-2],r[a-1],r[a]," typestr: ",r[a-1].edgeTypeStr);const n=i.edgeStrToEdgeData(r[a-1].edgeTypeStr);this.$=[{id:r[a-2].id,label:r[a-2].label,type:r[a-2].type,directions:r[a-2].directions},{id:r[a-2].id+"-"+r[a].id,start:r[a-2].id,end:r[a].id,label:r[a-1].label,type:"edge",directions:r[a].directions,arrowTypeEnd:n,arrowTypeStart:"arrow_open"},{id:r[a].id,label:r[a].label,type:i.typeStr2Type(r[a].typeStr),directions:r[a].directions}];break;case 24:i.getLogger().debug("Rule: nodeStatement (abc88 node size) ",r[a-1],r[a]),this.$={id:r[a-1].id,label:r[a-1].label,type:i.typeStr2Type(r[a-1].typeStr),directions:r[a-1].directions,widthInColumns:parseInt(r[a],10)};break;case 25:i.getLogger().debug("Rule: nodeStatement (node) ",r[a]),this.$={id:r[a].id,label:r[a].label,type:i.typeStr2Type(r[a].typeStr),directions:r[a].directions,widthInColumns:1};break;case 26:i.getLogger().debug("APA123",this?this:"na"),i.getLogger().debug("COLUMNS: ",r[a]),this.$={type:"column-setting",columns:"auto"===r[a]?-1:parseInt(r[a])};break;case 27:i.getLogger().debug("Rule: id-block statement : ",r[a-2],r[a-1]),i.generateId(),this.$={...r[a-2],type:"composite",children:r[a-1]};break;case 28:i.getLogger().debug("Rule: blockStatement : ",r[a-2],r[a-1],r[a]);const o=i.generateId();this.$={id:o,type:"composite",label:"",children:r[a-1]};break;case 29:i.getLogger().debug("Rule: node (NODE_ID separator): ",r[a]),this.$={id:r[a]};break;case 30:i.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",r[a-1],r[a]),this.$={id:r[a-1],label:r[a].label,typeStr:r[a].typeStr,directions:r[a].directions};break;case 31:i.getLogger().debug("Rule: dirList: ",r[a]),this.$=[r[a]];break;case 32:i.getLogger().debug("Rule: dirList: ",r[a-1],r[a]),this.$=[r[a-1]].concat(r[a]);break;case 33:i.getLogger().debug("Rule: nodeShapeNLabel: ",r[a-2],r[a-1],r[a]),this.$={typeStr:r[a-2]+r[a],label:r[a-1]};break;case 34:i.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",r[a-3],r[a-2]," #3:",r[a-1],r[a]),this.$={typeStr:r[a-3]+r[a],label:r[a-2],directions:r[a-1]};break;case 35:case 36:this.$={type:"classDef",id:r[a-1].trim(),css:r[a].trim()};break;case 37:this.$={type:"applyClass",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 38:this.$={type:"applyStyles",id:r[a-1].trim(),stylesStr:r[a].trim()}}}),"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:n,32:r,40:a,44:l,47:c},{8:[1,20]},e(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:t,28:s,29:i,31:n,32:r,40:a,44:l,47:c}),e(d,[2,16],{14:22,15:u,16:g}),e(d,[2,17]),e(d,[2,18]),e(d,[2,19]),e(d,[2,20]),e(d,[2,21]),e(d,[2,22]),e(p,[2,25],{27:[1,25]}),e(d,[2,26]),{19:26,26:12,32:r},{11:27,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:n,32:r,40:a,44:l,47:c},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},e(y,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},e(h,[2,13]),{26:35,32:r},{32:[2,14]},{17:[1,36]},e(p,[2,24]),{11:37,13:4,14:22,15:u,16:g,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:n,32:r,40:a,44:l,47:c},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},e(y,[2,30]),{18:[1,43]},{18:[1,44]},e(p,[2,23]),{18:[1,45]},{30:[1,46]},e(d,[2,28]),e(d,[2,35]),e(d,[2,36]),e(d,[2,37]),e(d,[2,38]),{37:[1,47]},{34:48,35:b},{15:[1,50]},e(d,[2,27]),e(y,[2,33]),{39:[1,51]},{34:52,35:b,39:[2,31]},{32:[2,15]},e(y,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:(0,o.K2)((function(e,t){if(!t.recoverable){var s=new Error(e);throw s.hash=t,s}this.trace(e)}),"parseError"),parse:(0,o.K2)((function(e){var t=this,s=[0],i=[],n=[null],r=[],a=this.table,l="",c=0,h=0,d=0,u=r.slice.call(arguments,1),g=Object.create(this.lexer),p={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(p.yy[y]=this.yy[y]);g.setInput(e,p.yy),p.yy.lexer=g,p.yy.parser=this,void 0===g.yylloc&&(g.yylloc={});var b=g.yylloc;r.push(b);var _=g.options&&g.options.ranges;function f(){var e;return"number"!=typeof(e=i.pop()||g.lex()||1)&&(e instanceof Array&&(e=(i=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,o.K2)((function(e){s.length=s.length-2*e,n.length=n.length-e,r.length=r.length-e}),"popStack"),(0,o.K2)(f,"lex");for(var m,x,L,S,k,E,w,D,A,N={};;){if(L=s[s.length-1],this.defaultActions[L]?S=this.defaultActions[L]:(null==m&&(m=f()),S=a[L]&&a[L][m]),void 0===S||!S.length||!S[0]){var v;for(E in A=[],a[L])this.terminals_[E]&&E>2&&A.push("'"+this.terminals_[E]+"'");v=g.showPosition?"Parse error on line "+(c+1)+":\n"+g.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(v,{text:g.match,token:this.terminals_[m]||m,line:g.yylineno,loc:b,expected:A})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+L+", token: "+m);switch(S[0]){case 1:s.push(m),n.push(g.yytext),r.push(g.yylloc),s.push(S[1]),m=null,x?(m=x,x=null):(h=g.yyleng,l=g.yytext,c=g.yylineno,b=g.yylloc,d>0&&d--);break;case 2:if(w=this.productions_[S[1]][1],N.$=n[n.length-w],N._$={first_line:r[r.length-(w||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(w||1)].first_column,last_column:r[r.length-1].last_column},_&&(N._$.range=[r[r.length-(w||1)].range[0],r[r.length-1].range[1]]),void 0!==(k=this.performAction.apply(N,[l,h,c,p.yy,S[1],n,r].concat(u))))return k;w&&(s=s.slice(0,-1*w*2),n=n.slice(0,-1*w),r=r.slice(0,-1*w)),s.push(this.productions_[S[1]][0]),n.push(N.$),r.push(N._$),D=a[s[s.length-2]][s[s.length-1]],s.push(D);break;case 3:return!0}}return!0}),"parse")},f=function(){return{EOF:1,parseError:(0,o.K2)((function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)}),"parseError"),setInput:(0,o.K2)((function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,o.K2)((function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e}),"input"),unput:(0,o.K2)((function(e){var t=e.length,s=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,o.K2)((function(){return this._more=!0,this}),"more"),reject:(0,o.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,o.K2)((function(e){this.unput(this.match.slice(e))}),"less"),pastInput:(0,o.K2)((function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,o.K2)((function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,o.K2)((function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"}),"showPosition"),test_match:(0,o.K2)((function(e,t){var s,i,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(i=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],s=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var r in n)this[r]=n[r];return!1}return!1}),"test_match"),next:(0,o.K2)((function(){if(this.done)return this.EOF;var e,t,s,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),r=0;rt[0].length)){if(t=s,i=r,this.options.backtrack_lexer){if(!1!==(e=this.test_match(s,n[r])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,n[i]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,o.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,o.K2)((function(e){this.conditionStack.push(e)}),"begin"),popState:(0,o.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,o.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,o.K2)((function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"}),"topState"),pushState:(0,o.K2)((function(e){this.begin(e)}),"pushState"),stateStackSize:(0,o.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,o.K2)((function(e,t,s,i){switch(s){case 0:return 10;case 1:return e.getLogger().debug("Found space-block"),31;case 2:return e.getLogger().debug("Found nl-block"),31;case 3:return e.getLogger().debug("Found space-block"),29;case 4:e.getLogger().debug(".",t.yytext);break;case 5:e.getLogger().debug("_",t.yytext);break;case 6:return 5;case 7:return t.yytext=-1,28;case 8:return t.yytext=t.yytext.replace(/columns\s+/,""),e.getLogger().debug("COLUMNS (LEX)",t.yytext),28;case 9:case 77:case 78:case 100:this.pushState("md_string");break;case 10:return"MD_STR";case 11:case 35:case 80:this.popState();break;case 12:this.pushState("string");break;case 13:e.getLogger().debug("LEX: POPPING STR:",t.yytext),this.popState();break;case 14:return e.getLogger().debug("LEX: STR end:",t.yytext),"STR";case 15:return t.yytext=t.yytext.replace(/space\:/,""),e.getLogger().debug("SPACE NUM (LEX)",t.yytext),21;case 16:return t.yytext="1",e.getLogger().debug("COLUMNS (LEX)",t.yytext),21;case 17:return 43;case 18:return"LINKSTYLE";case 19:return"INTERPOLATE";case 20:return this.pushState("CLASSDEF"),40;case 21:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 22:return this.popState(),this.pushState("CLASSDEFID"),41;case 23:return this.popState(),42;case 24:return this.pushState("CLASS"),44;case 25:return this.popState(),this.pushState("CLASS_STYLE"),45;case 26:return this.popState(),46;case 27:return this.pushState("STYLE_STMNT"),47;case 28:return this.popState(),this.pushState("STYLE_DEFINITION"),48;case 29:return this.popState(),49;case 30:return this.pushState("acc_title"),"acc_title";case 31:return this.popState(),"acc_title_value";case 32:return this.pushState("acc_descr"),"acc_descr";case 33:return this.popState(),"acc_descr_value";case 34:this.pushState("acc_descr_multiline");break;case 36:return"acc_descr_multiline_value";case 37:return 30;case 38:case 39:case 41:case 42:case 45:return this.popState(),e.getLogger().debug("Lex: (("),"NODE_DEND";case 40:return this.popState(),e.getLogger().debug("Lex: ))"),"NODE_DEND";case 43:return this.popState(),e.getLogger().debug("Lex: (-"),"NODE_DEND";case 44:return this.popState(),e.getLogger().debug("Lex: -)"),"NODE_DEND";case 46:return this.popState(),e.getLogger().debug("Lex: ]]"),"NODE_DEND";case 47:return this.popState(),e.getLogger().debug("Lex: ("),"NODE_DEND";case 48:return this.popState(),e.getLogger().debug("Lex: ])"),"NODE_DEND";case 49:case 50:return this.popState(),e.getLogger().debug("Lex: /]"),"NODE_DEND";case 51:return this.popState(),e.getLogger().debug("Lex: )]"),"NODE_DEND";case 52:return this.popState(),e.getLogger().debug("Lex: )"),"NODE_DEND";case 53:return this.popState(),e.getLogger().debug("Lex: ]>"),"NODE_DEND";case 54:return this.popState(),e.getLogger().debug("Lex: ]"),"NODE_DEND";case 55:return e.getLogger().debug("Lexa: -)"),this.pushState("NODE"),36;case 56:return e.getLogger().debug("Lexa: (-"),this.pushState("NODE"),36;case 57:return e.getLogger().debug("Lexa: ))"),this.pushState("NODE"),36;case 58:case 60:case 61:case 62:case 65:return e.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;case 59:return e.getLogger().debug("Lex: ((("),this.pushState("NODE"),36;case 63:return e.getLogger().debug("Lexc: >"),this.pushState("NODE"),36;case 64:return e.getLogger().debug("Lexa: (["),this.pushState("NODE"),36;case 66:case 67:case 68:case 69:case 70:case 71:case 72:return this.pushState("NODE"),36;case 73:return e.getLogger().debug("Lexa: ["),this.pushState("NODE"),36;case 74:return this.pushState("BLOCK_ARROW"),e.getLogger().debug("LEX ARR START"),38;case 75:return e.getLogger().debug("Lex: NODE_ID",t.yytext),32;case 76:return e.getLogger().debug("Lex: EOF",t.yytext),8;case 79:return"NODE_DESCR";case 81:e.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 82:e.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 83:return e.getLogger().debug("LEX: NODE_DESCR:",t.yytext),"NODE_DESCR";case 84:e.getLogger().debug("LEX POPPING"),this.popState();break;case 85:e.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 86:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (right): dir:",t.yytext),"DIR";case 87:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (left):",t.yytext),"DIR";case 88:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (x):",t.yytext),"DIR";case 89:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (y):",t.yytext),"DIR";case 90:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (up):",t.yytext),"DIR";case 91:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (down):",t.yytext),"DIR";case 92:return t.yytext="]>",e.getLogger().debug("Lex (ARROW_DIR end):",t.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";case 93:return e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 94:case 95:case 96:return e.getLogger().debug("Lex: LINK",t.yytext),15;case 97:case 98:case 99:return e.getLogger().debug("Lex: START_LINK",t.yytext),this.pushState("LLABEL"),16;case 101:return e.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";case 102:return this.popState(),e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 103:case 104:return this.popState(),e.getLogger().debug("Lex: LINK",t.yytext),15;case 105:return e.getLogger().debug("Lex: COLON",t.yytext),t.yytext=t.yytext.slice(1),27}}),"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block\s+)/,/^(?:block\n+)/,/^(?:block:)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[29],inclusive:!1},STYLE_STMNT:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[23],inclusive:!1},CLASSDEF:{rules:[21,22],inclusive:!1},CLASS_STYLE:{rules:[26],inclusive:!1},CLASS:{rules:[25],inclusive:!1},LLABEL:{rules:[100,101,102,103,104],inclusive:!1},ARROW_DIR:{rules:[86,87,88,89,90,91,92],inclusive:!1},BLOCK_ARROW:{rules:[77,82,85],inclusive:!1},NODE:{rules:[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,78,81],inclusive:!1},md_string:{rules:[10,11,79,80],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[13,14,83,84],inclusive:!1},acc_descr_multiline:{rules:[35,36],inclusive:!1},acc_descr:{rules:[33],inclusive:!1},acc_title:{rules:[31],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,12,15,16,17,18,19,20,24,27,30,32,34,37,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,93,94,95,96,97,98,99,105],inclusive:!0}}}}();function m(){this.yy={}}return _.lexer=f,(0,o.K2)(m,"Parser"),m.prototype=_,_.Parser=m,new m}();u.parser=u;var g=u,p=new Map,y=[],b=new Map,_="color",f="fill",m=(0,o.D7)(),x=new Map,L=(0,o.K2)((e=>o.Y2.sanitizeText(e,m)),"sanitizeText"),S=(0,o.K2)((function(e,t=""){let s=x.get(e);s||(s={id:e,styles:[],textStyles:[]},x.set(e,s)),null!=t&&t.split(",").forEach((e=>{const t=e.replace(/([^;]*);/,"$1").trim();if(RegExp(_).exec(e)){const e=t.replace(f,"bgFill").replace(_,f);s.textStyles.push(e)}s.styles.push(t)}))}),"addStyleClass"),k=(0,o.K2)((function(e,t=""){const s=p.get(e);null!=t&&(s.styles=t.split(","))}),"addStyle2Node"),E=(0,o.K2)((function(e,t){e.split(",").forEach((function(e){let s=p.get(e);if(void 0===s){const t=e.trim();s={id:t,type:"na",children:[]},p.set(t,s)}s.classes||(s.classes=[]),s.classes.push(t)}))}),"setCssClass"),w=(0,o.K2)(((e,t)=>{const s=e.flat(),i=[];for(const e of s)if(e.label&&(e.label=L(e.label)),"classDef"!==e.type)if("applyClass"!==e.type)if("applyStyles"!==e.type)if("column-setting"===e.type)t.columns=e.columns??-1;else if("edge"===e.type){const t=(b.get(e.id)??0)+1;b.set(e.id,t),e.id=t+"-"+e.id,y.push(e)}else{e.label||("composite"===e.type?e.label="":e.label=e.id);const t=p.get(e.id);if(void 0===t?p.set(e.id,e):("na"!==e.type&&(t.type=e.type),e.label!==e.id&&(t.label=e.label)),e.children&&w(e.children,e),"space"===e.type){const t=e.width??1;for(let s=0;s{o.Rm.debug("Clear called"),(0,o.IU)(),A={id:"root",type:"composite",children:[],columns:-1},p=new Map([["root",A]]),D=[],x=new Map,y=[],b=new Map}),"clear");function v(e){switch(o.Rm.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return o.Rm.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function C(e){return o.Rm.debug("typeStr2Type",e),"=="===e?"thick":"normal"}function $(e){switch(e.trim()){case"--x":return"arrow_cross";case"--o":return"arrow_circle";default:return"arrow_point"}}(0,o.K2)(v,"typeStr2Type"),(0,o.K2)(C,"edgeTypeStr2Type"),(0,o.K2)($,"edgeStrToEdgeData");var T=0,R=(0,o.K2)((()=>(T++,"id-"+Math.random().toString(36).substr(2,12)+"-"+T)),"generateId"),I=(0,o.K2)((e=>{A.children=e,w(e,A),D=A.children}),"setHierarchy"),z=(0,o.K2)((e=>{const t=p.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1}),"getColumns"),O=(0,o.K2)((()=>[...p.values()]),"getBlocksFlat"),K=(0,o.K2)((()=>D||[]),"getBlocks"),B=(0,o.K2)((()=>y),"getEdges"),P=(0,o.K2)((e=>p.get(e)),"getBlock"),F=(0,o.K2)((e=>{p.set(e.id,e)}),"setBlock"),M=(0,o.K2)((()=>console),"getLogger"),Y=(0,o.K2)((function(){return x}),"getClasses"),X={getConfig:(0,o.K2)((()=>(0,o.zj)().block),"getConfig"),typeStr2Type:v,edgeTypeStr2Type:C,edgeStrToEdgeData:$,getLogger:M,getBlocksFlat:O,getBlocks:K,getEdges:B,setHierarchy:I,getBlock:P,setBlock:F,getColumns:z,getClasses:Y,clear:N,generateId:R},j=(0,o.K2)(((e,t)=>{const s=l.A,i=s(e,"r"),n=s(e,"g"),r=s(e,"b");return c.A(i,n,r,t)}),"fade"),W=(0,o.K2)((e=>`.label {\n font-family: ${e.fontFamily};\n color: ${e.nodeTextColor||e.textColor};\n }\n .cluster-label text {\n fill: ${e.titleColor};\n }\n .cluster-label span,p {\n color: ${e.titleColor};\n }\n\n\n\n .label text,span,p {\n fill: ${e.nodeTextColor||e.textColor};\n color: ${e.nodeTextColor||e.textColor};\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${e.mainBkg};\n stroke: ${e.nodeBorder};\n stroke-width: 1px;\n }\n .flowchart-label text {\n text-anchor: middle;\n }\n // .flowchart-label .text-outer-tspan {\n // text-anchor: middle;\n // }\n // .flowchart-label .text-inner-tspan {\n // text-anchor: start;\n // }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${e.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${e.lineColor};\n stroke-width: 2.0px;\n }\n\n .flowchart-link {\n stroke: ${e.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${e.edgeLabelBackground};\n rect {\n opacity: 0.5;\n background-color: ${e.edgeLabelBackground};\n fill: ${e.edgeLabelBackground};\n }\n text-align: center;\n }\n\n /* For html labels only */\n .labelBkg {\n background-color: ${j(e.edgeLabelBackground,.5)};\n // background-color:\n }\n\n .node .cluster {\n // fill: ${j(e.mainBkg,.5)};\n fill: ${j(e.clusterBkg,.5)};\n stroke: ${j(e.clusterBorder,.2)};\n box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ${e.titleColor};\n }\n\n .cluster span,p {\n color: ${e.titleColor};\n }\n /* .cluster div {\n color: ${e.titleColor};\n } */\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ${e.fontFamily};\n font-size: 12px;\n background: ${e.tertiaryColor};\n border: 1px solid ${e.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .flowchartTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${e.textColor};\n }\n`),"getStyles"),U=(0,o.D7)()?.block?.padding??8;function H(e,t){if(0===e||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);return e<0?{px:t,py:0}:1===e?{px:0,py:t}:{px:t%e,py:Math.floor(t/e)}}(0,o.K2)(H,"calculateBlockPosition");var G=(0,o.K2)((e=>{let t=0,s=0;for(const i of e.children){const{width:n,height:r,x:a,y:l}=i.size??{width:0,height:0,x:0,y:0};o.Rm.debug("getMaxChildSize abc95 child:",i.id,"width:",n,"height:",r,"x:",a,"y:",l,i.type),"space"!==i.type&&(n>t&&(t=n/(e.widthInColumns??1)),r>s&&(s=r))}return{width:t,height:s}}),"getMaxChildSize");function q(e,t,s=0,i=0){o.Rm.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"sieblingWidth",s),e?.size?.width||(e.size={width:s,height:i,x:0,y:0});let n=0,r=0;if(e.children?.length>0){for(const s of e.children)q(s,t);const a=G(e);n=a.width,r=a.height,o.Rm.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",n,r);for(const t of e.children)t.size&&(o.Rm.debug(`abc95 Setting size of children of ${e.id} id=${t.id} ${n} ${r} ${JSON.stringify(t.size)}`),t.size.width=n*(t.widthInColumns??1)+U*((t.widthInColumns??1)-1),t.size.height=r,t.size.x=0,t.size.y=0,o.Rm.debug(`abc95 updating size of ${e.id} children child:${t.id} maxWidth:${n} maxHeight:${r}`));for(const s of e.children)q(s,t,n,r);const l=e.columns??-1;let c=0;for(const t of e.children)c+=t.widthInColumns??1;let h=e.children.length;l>0&&l0?Math.min(e.children.length,l):e.children.length;if(t>0){const s=(u-t*U-U)/t;o.Rm.debug("abc95 (growing to fit) width",e.id,u,e.size?.width,s);for(const t of e.children)t.size&&(t.size.width=s)}}e.size={width:u,height:g,x:0,y:0}}o.Rm.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}function J(e,t){o.Rm.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);const s=e.columns??-1;if(o.Rm.debug("layoutBlocks columns abc95",e.id,"=>",s,e),e.children&&e.children.length>0){const i=e?.children[0]?.size?.width??0,n=e.children.length*i+(e.children.length-1)*U;o.Rm.debug("widthOfChildren 88",n,"posX");let r=0;o.Rm.debug("abc91 block?.size?.x",e.id,e?.size?.x);let a=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-U,l=0;for(const i of e.children){const n=e;if(!i.size)continue;const{width:c,height:h}=i.size,{px:d,py:u}=H(s,r);if(u!=l&&(l=u,a=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-U,o.Rm.debug("New row in layout for block",e.id," and child ",i.id,l)),o.Rm.debug(`abc89 layout blocks (child) id: ${i.id} Pos: ${r} (px, py) ${d},${u} (${n?.size?.x},${n?.size?.y}) parent: ${n.id} width: ${c}${U}`),n.size){const e=c/2;i.size.x=a+U+e,o.Rm.debug(`abc91 layout blocks (calc) px, pyid:${i.id} startingPos=X${a} new startingPosX${i.size.x} ${e} padding=${U} width=${c} halfWidth=${e} => x:${i.size.x} y:${i.size.y} ${i.widthInColumns} (width * (child?.w || 1)) / 2 ${c*(i?.widthInColumns??1)/2}`),a=i.size.x+e,i.size.y=n.size.y-n.size.height/2+u*(h+U)+h/2+U,o.Rm.debug(`abc88 layout blocks (calc) px, pyid:${i.id}startingPosX${a}${U}${e}=>x:${i.size.x}y:${i.size.y}${i.widthInColumns}(width * (child?.w || 1)) / 2${c*(i?.widthInColumns??1)/2}`)}i.children&&J(i,t),r+=i?.widthInColumns??1,o.Rm.debug("abc88 columnsPos",i,r)}}o.Rm.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}function Z(e,{minX:t,minY:s,maxX:i,maxY:n}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&"root"!==e.id){const{x:r,y:o,width:a,height:l}=e.size;r-a/2i&&(i=r+a/2),o+l/2>n&&(n=o+l/2)}if(e.children)for(const r of e.children)({minX:t,minY:s,maxX:i,maxY:n}=Z(r,{minX:t,minY:s,maxX:i,maxY:n}));return{minX:t,minY:s,maxX:i,maxY:n}}function Q(e){const t=e.getBlock("root");if(!t)return;q(t,e,0,0),J(t,e),o.Rm.debug("getBlocks",JSON.stringify(t,null,2));const{minX:s,minY:i,maxX:n,maxY:r}=Z(t);return{x:s,y:i,width:n-s,height:r-i}}function V(e,t,s=!1){const i=e;let n="default";(i?.classes?.length||0)>0&&(n=(i?.classes??[]).join(" ")),n+=" flowchart-label";let a,l=0,c="";switch(i.type){case"round":l=5,c="rect";break;case"composite":l=0,c="composite",a=0;break;case"square":case"group":default:c="rect";break;case"diamond":c="question";break;case"hexagon":c="hexagon";break;case"block_arrow":c="block_arrow";break;case"odd":case"rect_left_inv_arrow":c="rect_left_inv_arrow";break;case"lean_right":c="lean_right";break;case"lean_left":c="lean_left";break;case"trapezoid":c="trapezoid";break;case"inv_trapezoid":c="inv_trapezoid";break;case"circle":c="circle";break;case"ellipse":c="ellipse";break;case"stadium":c="stadium";break;case"subroutine":c="subroutine";break;case"cylinder":c="cylinder";break;case"doublecircle":c="doublecircle"}const h=(0,r.sM)(i?.styles??[]),d=i.label,u=i.size??{width:0,height:0,x:0,y:0};return{labelStyle:h.labelStyle,shape:c,labelText:d,rx:l,ry:l,class:n,style:h.style,id:i.id,directions:i.directions,width:u.width,height:u.height,x:u.x,y:u.y,positioned:s,intersect:void 0,type:i.type,padding:a??(0,o.zj)()?.block?.padding??0}}async function ee(e,t,s){const i=V(t,0,!1);if("group"===i.type)return;const r=await(0,n.on)(e,i),o=r.node().getBBox(),a=s.getBlock(i.id);a.size={width:o.width,height:o.height,x:0,y:0,node:r},s.setBlock(a),r.remove()}async function te(e,t,s){const i=V(t,0,!0);"space"!==s.getBlock(i.id).type&&(await(0,n.on)(e,i),t.intersect=i?.intersect,(0,n.U_)(i))}async function se(e,t,s,i){for(const n of t)await i(e,n,s),n.children&&await se(e,n.children,s,i)}async function ie(e,t,s){await se(e,t,s,ee)}async function ne(e,t,s){await se(e,t,s,te)}async function re(e,t,s,n,r){const o=new d.T({multigraph:!0,compound:!0});o.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(const e of s)e.size&&o.setNode(e.id,{width:e.size.width,height:e.size.height,intersect:e.intersect});for(const s of t)if(s.start&&s.end){const t=n.getBlock(s.start),a=n.getBlock(s.end);if(t?.size&&a?.size){const n=t.size,l=a.size,c=[{x:n.x,y:n.y},{x:n.x+(l.x-n.x)/2,y:n.y+(l.y-n.y)/2},{x:l.x,y:l.y}];(0,i.Jo)(e,{v:s.start,w:s.end,name:s.id},{...s,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:c,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",o,r),s.label&&(await(0,i.jP)(e,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:c,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),(0,i.T_)({...s,x:c[1].x,y:c[1].y},{originalPath:c}))}}}(0,o.K2)(q,"setBlockSizes"),(0,o.K2)(J,"layoutBlocks"),(0,o.K2)(Z,"findBounds"),(0,o.K2)(Q,"layout"),(0,o.K2)(V,"getNodeFromBlock"),(0,o.K2)(ee,"calculateBlockSize"),(0,o.K2)(te,"insertBlockPositioned"),(0,o.K2)(se,"performOperations"),(0,o.K2)(ie,"calculateBlockSizes"),(0,o.K2)(ne,"insertBlocks"),(0,o.K2)(re,"insertEdges");var oe=(0,o.K2)((function(e,t){return t.db.getClasses()}),"getClasses"),ae={parser:g,db:X,renderer:{draw:(0,o.K2)((async function(e,t,s,n){const{securityLevel:r,block:a}=(0,o.zj)(),l=n.db;let c;"sandbox"===r&&(c=(0,h.Ltv)("#i"+t));const d="sandbox"===r?(0,h.Ltv)(c.nodes()[0].contentDocument.body):(0,h.Ltv)("body"),u="sandbox"===r?d.select(`[id="${t}"]`):(0,h.Ltv)(`[id="${t}"]`);(0,i.g0)(u,["point","circle","cross"],n.type,t);const g=l.getBlocks(),p=l.getBlocksFlat(),y=l.getEdges(),b=u.insert("g").attr("class","block");await ie(b,g,l);const _=Q(l);if(await ne(b,g,l),await re(b,y,p,l,t),_){const e=_,t=Math.max(1,Math.round(e.width/e.height*.125)),s=e.height+t+10,i=e.width+10,{useMaxWidth:n}=a;(0,o.a$)(u,s,i,!!n),o.Rm.debug("Here Bounds",_,e),u.attr("viewBox",`${e.x-5} ${e.y-5} ${e.width+10} ${e.height+10}`)}}),"draw"),getClasses:oe},styles:W}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/657-d323ea06.chunk.min.js b/themes/hugo-geekdoc/static/js/657-d323ea06.chunk.min.js deleted file mode 100644 index fbb3a2dab..000000000 --- a/themes/hugo-geekdoc/static/js/657-d323ea06.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[657],{8657:(t,e,a)=>{a.d(e,{diagram:()=>L});var i,n=a(3148),r=(a(6151),a(6578),a(2602),a(9022),a(8496),a(8252),a(7323)),d=a(798),s=a(4852),o=a(567),g=a(697),c={},p=(0,d.K2)(((t,e)=>{c[t]=e}),"set"),h=(0,d.K2)((t=>c[t]),"get"),l=(0,d.K2)((()=>Object.keys(c)),"keys"),x=(0,d.K2)((()=>l().length),"size"),D={get:h,set:p,keys:l,size:x},u=(0,d.K2)((t=>t.append("circle").attr("class","start-state").attr("r",(0,d.D7)().state.sizeUnit).attr("cx",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit).attr("cy",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit)),"drawStartState"),f=(0,d.K2)((t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",(0,d.D7)().state.textHeight).attr("class","divider").attr("x2",2*(0,d.D7)().state.textHeight).attr("y1",0).attr("y2",0)),"drawDivider"),y=(0,d.K2)(((t,e)=>{const a=t.append("text").attr("x",2*(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.textHeight+2*(0,d.D7)().state.padding).attr("font-size",(0,d.D7)().state.fontSize).attr("class","state-title").text(e.id),i=a.node().getBBox();return t.insert("rect",":first-child").attr("x",(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.padding).attr("width",i.width+2*(0,d.D7)().state.padding).attr("height",i.height+2*(0,d.D7)().state.padding).attr("rx",(0,d.D7)().state.radius),a}),"drawSimpleState"),w=(0,d.K2)(((t,e)=>{const a=(0,d.K2)((function(t,e,a){const i=t.append("tspan").attr("x",2*(0,d.D7)().state.padding).text(e);a||i.attr("dy",(0,d.D7)().state.textHeight)}),"addTspan"),i=t.append("text").attr("x",2*(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.textHeight+1.3*(0,d.D7)().state.padding).attr("font-size",(0,d.D7)().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),n=i.height,r=t.append("text").attr("x",(0,d.D7)().state.padding).attr("y",n+.4*(0,d.D7)().state.padding+(0,d.D7)().state.dividerMargin+(0,d.D7)().state.textHeight).attr("class","state-description");let s=!0,o=!0;e.descriptions.forEach((function(t){s||(a(r,t,o),o=!1),s=!1}));const g=t.append("line").attr("x1",(0,d.D7)().state.padding).attr("y1",(0,d.D7)().state.padding+n+(0,d.D7)().state.dividerMargin/2).attr("y2",(0,d.D7)().state.padding+n+(0,d.D7)().state.dividerMargin/2).attr("class","descr-divider"),c=r.node().getBBox(),p=Math.max(c.width,i.width);return g.attr("x2",p+3*(0,d.D7)().state.padding),t.insert("rect",":first-child").attr("x",(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.padding).attr("width",p+2*(0,d.D7)().state.padding).attr("height",c.height+n+2*(0,d.D7)().state.padding).attr("rx",(0,d.D7)().state.radius),t}),"drawDescrState"),m=(0,d.K2)(((t,e,a)=>{const i=(0,d.D7)().state.padding,n=2*(0,d.D7)().state.padding,r=t.node().getBBox(),s=r.width,o=r.x,g=t.append("text").attr("x",0).attr("y",(0,d.D7)().state.titleShift).attr("font-size",(0,d.D7)().state.fontSize).attr("class","state-title").text(e.id),c=g.node().getBBox().width+n;let p,h=Math.max(c,s);h===s&&(h+=n);const l=t.node().getBBox();e.doc,p=o-i,c>s&&(p=(s-h)/2+i),Math.abs(o-l.x)s&&(p=o-(c-s)/2);const x=1-(0,d.D7)().state.textHeight;return t.insert("rect",":first-child").attr("x",p).attr("y",x).attr("class",a?"alt-composit":"composit").attr("width",h).attr("height",l.height+(0,d.D7)().state.textHeight+(0,d.D7)().state.titleShift+1).attr("rx","0"),g.attr("x",p+i),c<=s&&g.attr("x",o+(h-n)/2-c/2+i),t.insert("rect",":first-child").attr("x",p).attr("y",(0,d.D7)().state.titleShift-(0,d.D7)().state.textHeight-(0,d.D7)().state.padding).attr("width",h).attr("height",3*(0,d.D7)().state.textHeight).attr("rx",(0,d.D7)().state.radius),t.insert("rect",":first-child").attr("x",p).attr("y",(0,d.D7)().state.titleShift-(0,d.D7)().state.textHeight-(0,d.D7)().state.padding).attr("width",h).attr("height",l.height+3+2*(0,d.D7)().state.textHeight).attr("rx",(0,d.D7)().state.radius),t}),"addTitleAndBox"),b=(0,d.K2)((t=>(t.append("circle").attr("class","end-state-outer").attr("r",(0,d.D7)().state.sizeUnit+(0,d.D7)().state.miniPadding).attr("cx",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit+(0,d.D7)().state.miniPadding).attr("cy",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit+(0,d.D7)().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",(0,d.D7)().state.sizeUnit).attr("cx",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit+2).attr("cy",(0,d.D7)().state.padding+(0,d.D7)().state.sizeUnit+2))),"drawEndState"),B=(0,d.K2)(((t,e)=>{let a=(0,d.D7)().state.forkWidth,i=(0,d.D7)().state.forkHeight;if(e.parentId){let t=a;a=i,i=t}return t.append("rect").style("stroke","black").style("fill","black").attr("width",a).attr("height",i).attr("x",(0,d.D7)().state.padding).attr("y",(0,d.D7)().state.padding)}),"drawForkJoinState"),k=(0,d.K2)(((t,e,a,i)=>{let n=0;const r=i.append("text");r.style("text-anchor","start"),r.attr("class","noteText");let s=t.replace(/\r\n/g,"
");s=s.replace(/\n/g,"
");const o=s.split(d.Y2.lineBreakRegex);let g=1.25*(0,d.D7)().state.noteMargin;for(const t of o){const i=t.trim();if(i.length>0){const t=r.append("tspan");t.text(i),0===g&&(g+=t.node().getBBox().height),n+=g,t.attr("x",e+(0,d.D7)().state.noteMargin),t.attr("y",a+n+1.25*(0,d.D7)().state.noteMargin)}}return{textWidth:r.node().getBBox().width,textHeight:n}}),"_drawLongText"),S=(0,d.K2)(((t,e)=>{e.attr("class","state-note");const a=e.append("rect").attr("x",0).attr("y",(0,d.D7)().state.padding),i=e.append("g"),{textWidth:n,textHeight:r}=k(t,0,0,i);return a.attr("height",r+2*(0,d.D7)().state.noteMargin),a.attr("width",n+2*(0,d.D7)().state.noteMargin),a}),"drawNote"),N=(0,d.K2)((function(t,e){const a=e.id,i={id:a,label:e.id,width:0,height:0},n=t.append("g").attr("id",a).attr("class","stateGroup");"start"===e.type&&u(n),"end"===e.type&&b(n),"fork"!==e.type&&"join"!==e.type||B(n,e),"note"===e.type&&S(e.note.text,n),"divider"===e.type&&f(n),"default"===e.type&&0===e.descriptions.length&&y(n,e),"default"===e.type&&e.descriptions.length>0&&w(n,e);const r=n.node().getBBox();return i.width=r.width+2*(0,d.D7)().state.padding,i.height=r.height+2*(0,d.D7)().state.padding,D.set(a,i),i}),"drawState"),E=0,K=(0,d.K2)((function(t,e,a){const i=(0,d.K2)((function(t){switch(t){case n.iP.relationType.AGGREGATION:return"aggregation";case n.iP.relationType.EXTENSION:return"extension";case n.iP.relationType.COMPOSITION:return"composition";case n.iP.relationType.DEPENDENCY:return"dependency"}}),"getRelationType");e.points=e.points.filter((t=>!Number.isNaN(t.y)));const o=e.points,g=(0,s.n8j)().x((function(t){return t.x})).y((function(t){return t.y})).curve(s.qrM),c=t.append("path").attr("d",g(o)).attr("id","edge"+E).attr("class","transition");let p="";if((0,d.D7)().state.arrowMarkerAbsolute&&(p=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,p=p.replace(/\(/g,"\\("),p=p.replace(/\)/g,"\\)")),c.attr("marker-end","url("+p+"#"+i(n.iP.relationType.DEPENDENCY)+"End)"),void 0!==a.title){const i=t.append("g").attr("class","stateLabel"),{x:n,y:s}=r._K.calcLabelPosition(e.points),o=d.Y2.getRows(a.title);let g=0;const c=[];let p=0,h=0;for(let t=0;t<=o.length;t++){const e=i.append("text").attr("text-anchor","middle").text(o[t]).attr("x",n).attr("y",s+g),a=e.node().getBBox();if(p=Math.max(p,a.width),h=Math.min(h,a.x),d.Rm.info(a.x,n,s+g),0===g){const t=e.node().getBBox();g=t.height,d.Rm.info("Title height",g,s)}c.push(e)}let l=g*o.length;if(o.length>1){const t=(o.length-1)*g*.5;c.forEach(((e,a)=>e.attr("y",s+a*g-t))),l=g*o.length}const x=i.node().getBBox();i.insert("rect",":first-child").attr("class","box").attr("x",n-p/2-(0,d.D7)().state.padding/2).attr("y",s-l/2-(0,d.D7)().state.padding/2-3.5).attr("width",p+(0,d.D7)().state.padding).attr("height",l+(0,d.D7)().state.padding),d.Rm.info(x)}E++}),"drawEdge"),M={},v=(0,d.K2)((function(){}),"setConf"),R=(0,d.K2)((function(t){t.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}),"insertMarkers"),z=(0,d.K2)((function(t,e,a,n){i=(0,d.D7)().state;const r=(0,d.D7)().securityLevel;let o;"sandbox"===r&&(o=(0,s.Ltv)("#i"+e));const g="sandbox"===r?(0,s.Ltv)(o.nodes()[0].contentDocument.body):(0,s.Ltv)("body"),c="sandbox"===r?o.nodes()[0].contentDocument:document;d.Rm.debug("Rendering diagram "+t);const p=g.select(`[id='${e}']`);R(p);const h=n.db.getRootDoc();T(h,p,void 0,!1,g,c,n);const l=i.padding,x=p.node().getBBox(),D=x.width+2*l,u=x.height+2*l,f=1.75*D;(0,d.a$)(p,u,f,i.useMaxWidth),p.attr("viewBox",`${x.x-i.padding} ${x.y-i.padding} `+D+" "+u)}),"draw"),H=(0,d.K2)((t=>t?t.length*i.fontSizeFactor:1),"getLabelWidth"),T=(0,d.K2)(((t,e,a,n,r,s,c)=>{const p=new g.T({compound:!0,multigraph:!0});let h,l=!0;for(h=0;h{const e=t.parentElement;let a=0,i=0;e&&(e.parentElement&&(a=e.parentElement.getBBox().width),i=parseInt(e.getAttribute("data-x-shift"),10),Number.isNaN(i)&&(i=0)),t.setAttribute("x1",0-i+8),t.setAttribute("x2",a-i-8)}))):d.Rm.debug("No Node "+t+": "+JSON.stringify(p.node(t)))}));let w=y.getBBox();p.edges().forEach((function(t){void 0!==t&&void 0!==p.edge(t)&&(d.Rm.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(p.edge(t))),K(e,p.edge(t),p.edge(t).relation))})),w=y.getBBox();const b={id:a||"root",label:a||"root",width:0,height:0};return b.width=w.width+2*i.padding,b.height=w.height+2*i.padding,d.Rm.debug("Doc rendered",b,p),b}),"renderDoc"),P={setConf:v,draw:z},L={parser:n.Zk,db:n.iP,renderer:P,styles:n.tM,init:(0,d.K2)((t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,n.iP.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/663-31678b4b.chunk.min.js b/themes/hugo-geekdoc/static/js/663-31678b4b.chunk.min.js new file mode 100644 index 000000000..feca80eb9 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/663-31678b4b.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[663],{4663:(t,e,r)=>{r.d(e,{diagram:()=>F});var a=r(5522),i=r(32),n=r(697),s=r(4852),o=r(567);const c=[];for(let t=0;t<256;++t)c.push((t+256).toString(16).slice(1));const l=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,h=function(t){if(!function(t){return"string"==typeof t&&l.test(t)}(t))throw TypeError("Invalid UUID");let e;const r=new Uint8Array(16);return r[0]=(e=parseInt(t.slice(0,8),16))>>>24,r[1]=e>>>16&255,r[2]=e>>>8&255,r[3]=255&e,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=255&e,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=255&e,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=255&e,r[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,r[11]=e/4294967296&255,r[12]=e>>>24&255,r[13]=e>>>16&255,r[14]=e>>>8&255,r[15]=255&e,r};function d(t,e,r,a){switch(t){case 0:return e&r^~e&a;case 1:case 3:return e^r^a;case 2:return e&r^e&a^r&a}}function u(t,e){return t<>>32-e}const y=function(){function t(t,e,r,a){var i;if("string"==typeof t&&(t=function(t){t=unescape(encodeURIComponent(t));const e=[];for(let r=0;r>>0;l=c,c=o,o=u(s,30)>>>0,s=i,i=n}r[0]=r[0]+i>>>0,r[1]=r[1]+s>>>0,r[2]=r[2]+o>>>0,r[3]=r[3]+c>>>0,r[4]=r[4]+l>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,255&r[0],r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,255&r[1],r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,255&r[2],r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,255&r[3],r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,255&r[4]]}(n),n[6]=15&n[6]|80,n[8]=63&n[8]|128,r){a=a||0;for(let t=0;t<16;++t)r[a+t]=n[t];return r}return function(t,e=0){return c[t[e+0]]+c[t[e+1]]+c[t[e+2]]+c[t[e+3]]+"-"+c[t[e+4]]+c[t[e+5]]+"-"+c[t[e+6]]+c[t[e+7]]+"-"+c[t[e+8]]+c[t[e+9]]+"-"+c[t[e+10]]+c[t[e+11]]+c[t[e+12]]+c[t[e+13]]+c[t[e+14]]+c[t[e+15]]}(n)}try{t.name="v5"}catch(t){}return t.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",t.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",t}();var p=function(){var t=(0,i.K2)((function(t,e,r,a){for(r=r||{},a=t.length;a--;r[t[a]]=e);return r}),"o"),e=[6,8,10,20,22,24,26,27,28],r=[1,10],a=[1,11],n=[1,12],s=[1,13],o=[1,14],c=[1,15],l=[1,21],h=[1,22],d=[1,23],u=[1,24],y=[1,25],p=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],_=[1,34],f=[27,28,46,47],E=[41,42,43,44,45],g=[17,34],m=[1,54],O=[1,53],k=[17,34,36,38],b={trace:(0,i.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:(0,i.K2)((function(t,e,r,a,i,n,s){var o=n.length-1;switch(i){case 1:break;case 2:case 6:case 7:this.$=[];break;case 3:n[o-1].push(n[o]),this.$=n[o-1];break;case 4:case 5:case 19:case 43:case 27:case 28:case 31:this.$=n[o];break;case 8:a.addEntity(n[o-4]),a.addEntity(n[o-2]),a.addRelationship(n[o-4],n[o],n[o-2],n[o-3]);break;case 9:a.addEntity(n[o-3]),a.addAttributes(n[o-3],n[o-1]);break;case 10:a.addEntity(n[o-2]);break;case 11:a.addEntity(n[o]);break;case 12:a.addEntity(n[o-6],n[o-4]),a.addAttributes(n[o-6],n[o-1]);break;case 13:a.addEntity(n[o-5],n[o-3]);break;case 14:a.addEntity(n[o-3],n[o-1]);break;case 15:case 16:this.$=n[o].trim(),a.setAccTitle(this.$);break;case 17:case 18:this.$=n[o].trim(),a.setAccDescription(this.$);break;case 20:case 41:case 42:case 32:this.$=n[o].replace(/"/g,"");break;case 21:case 29:this.$=[n[o]];break;case 22:n[o].push(n[o-1]),this.$=n[o];break;case 23:this.$={attributeType:n[o-1],attributeName:n[o]};break;case 24:this.$={attributeType:n[o-2],attributeName:n[o-1],attributeKeyTypeList:n[o]};break;case 25:this.$={attributeType:n[o-2],attributeName:n[o-1],attributeComment:n[o]};break;case 26:this.$={attributeType:n[o-3],attributeName:n[o-2],attributeKeyTypeList:n[o-1],attributeComment:n[o]};break;case 30:n[o-2].push(n[o]),this.$=n[o-2];break;case 33:this.$={cardA:n[o],relType:n[o-1],cardB:n[o-2]};break;case 34:this.$=a.Cardinality.ZERO_OR_ONE;break;case 35:this.$=a.Cardinality.ZERO_OR_MORE;break;case 36:this.$=a.Cardinality.ONE_OR_MORE;break;case 37:this.$=a.Cardinality.ONLY_ONE;break;case 38:this.$=a.Cardinality.MD_PARENT;break;case 39:this.$=a.Identification.NON_IDENTIFYING;break;case 40:this.$=a.Identification.IDENTIFYING}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:r,22:a,24:n,26:s,27:o,28:c},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:16,11:9,20:r,22:a,24:n,26:s,27:o,28:c},t(e,[2,5]),t(e,[2,6]),t(e,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:l,42:h,43:d,44:u,45:y}),{21:[1,26]},{23:[1,27]},{25:[1,28]},t(e,[2,18]),t(p,[2,19]),t(p,[2,20]),t(e,[2,4]),{11:29,27:o,28:c},{16:30,17:[1,31],29:32,30:33,34:_},{11:35,27:o,28:c},{40:36,46:[1,37],47:[1,38]},t(f,[2,34]),t(f,[2,35]),t(f,[2,36]),t(f,[2,37]),t(f,[2,38]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),{13:[1,39]},{17:[1,40]},t(e,[2,10]),{16:41,17:[2,21],29:32,30:33,34:_},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:l,42:h,43:d,44:u,45:y},t(E,[2,39]),t(E,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},t(e,[2,9]),{17:[2,22]},t(g,[2,23],{32:50,33:51,35:52,37:m,38:O}),t([17,34,37,38],[2,28]),t(e,[2,14],{15:[1,55]}),t([27,28],[2,33]),t(e,[2,8]),t(e,[2,41]),t(e,[2,42]),t(e,[2,43]),t(g,[2,24],{33:56,36:[1,57],38:O}),t(g,[2,25]),t(k,[2,29]),t(g,[2,32]),t(k,[2,31]),{16:58,17:[1,59],29:32,30:33,34:_},t(g,[2,26]),{35:60,37:m},{17:[1,61]},t(e,[2,13]),t(k,[2,30]),t(e,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:(0,i.K2)((function(t,e){if(!e.recoverable){var r=new Error(t);throw r.hash=e,r}this.trace(t)}),"parseError"),parse:(0,i.K2)((function(t){var e=this,r=[0],a=[],n=[null],s=[],o=this.table,c="",l=0,h=0,d=0,u=s.slice.call(arguments,1),y=Object.create(this.lexer),p={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(p.yy[_]=this.yy[_]);y.setInput(t,p.yy),p.yy.lexer=y,p.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var f=y.yylloc;s.push(f);var E=y.options&&y.options.ranges;function g(){var t;return"number"!=typeof(t=a.pop()||y.lex()||1)&&(t instanceof Array&&(t=(a=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)((function(t){r.length=r.length-2*t,n.length=n.length-t,s.length=s.length-t}),"popStack"),(0,i.K2)(g,"lex");for(var m,O,k,b,R,N,x,T,A,M={};;){if(k=r[r.length-1],this.defaultActions[k]?b=this.defaultActions[k]:(null==m&&(m=g()),b=o[k]&&o[k][m]),void 0===b||!b.length||!b[0]){var w;for(N in A=[],o[k])this.terminals_[N]&&N>2&&A.push("'"+this.terminals_[N]+"'");w=y.showPosition?"Parse error on line "+(l+1)+":\n"+y.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(w,{text:y.match,token:this.terminals_[m]||m,line:y.yylineno,loc:f,expected:A})}if(b[0]instanceof Array&&b.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+m);switch(b[0]){case 1:r.push(m),n.push(y.yytext),s.push(y.yylloc),r.push(b[1]),m=null,O?(m=O,O=null):(h=y.yyleng,c=y.yytext,l=y.yylineno,f=y.yylloc,d>0&&d--);break;case 2:if(x=this.productions_[b[1]][1],M.$=n[n.length-x],M._$={first_line:s[s.length-(x||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(x||1)].first_column,last_column:s[s.length-1].last_column},E&&(M._$.range=[s[s.length-(x||1)].range[0],s[s.length-1].range[1]]),void 0!==(R=this.performAction.apply(M,[c,h,l,p.yy,b[1],n,s].concat(u))))return R;x&&(r=r.slice(0,-1*x*2),n=n.slice(0,-1*x),s=s.slice(0,-1*x)),r.push(this.productions_[b[1]][0]),n.push(M.$),s.push(M._$),T=o[r[r.length-2]][r[r.length-1]],r.push(T);break;case 3:return!0}}return!0}),"parse")},R=function(){return{EOF:1,parseError:(0,i.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,i.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,i.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,i.K2)((function(t){var e=t.length,r=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var a=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),r.length-1&&(this.yylineno-=r.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:r?(r.length===a.length?this.yylloc.first_column:0)+a[a.length-r.length].length-r[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,i.K2)((function(){return this._more=!0,this}),"more"),reject:(0,i.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,i.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,i.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,i.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,i.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,i.K2)((function(t,e){var r,a,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(a=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=a.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:a?a[a.length-1].length-a[a.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],r=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;if(this._backtrack){for(var n in i)this[n]=i[n];return!1}return!1}),"test_match"),next:(0,i.K2)((function(){if(this.done)return this.EOF;var t,e,r,a;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),n=0;ne[0].length)){if(e=r,a=n,this.options.backtrack_lexer){if(!1!==(t=this.test_match(r,i[n])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[a]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,i.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,i.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,i.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,i.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,i.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,i.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,i.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)((function(t,e,r,a){switch(r){case 0:return this.begin("acc_title"),22;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),24;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 10;case 8:case 15:case 20:break;case 9:return 8;case 10:return 28;case 11:return 48;case 12:return 4;case 13:return this.begin("block"),15;case 14:return 36;case 16:return 37;case 17:case 18:return 34;case 19:return 38;case 21:return this.popState(),17;case 22:case 54:return e.yytext[0];case 23:return 18;case 24:return 19;case 25:case 29:case 30:case 43:return 41;case 26:case 27:case 28:case 36:case 38:case 45:return 43;case 31:case 32:case 33:case 34:case 35:case 37:case 44:return 42;case 39:case 40:case 41:case 42:return 44;case 46:return 45;case 47:case 50:case 51:case 52:return 46;case 48:case 49:return 47;case 53:return 27;case 55:return 6}}),"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[14,15,16,17,18,19,20,21,22],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],inclusive:!0}}}}();function N(){this.yy={}}return b.lexer=R,(0,i.K2)(N,"Parser"),N.prototype=b,b.Parser=N,new N}();p.parser=p;var _=p,f=new Map,E=[],g=(0,i.K2)((function(t,e=void 0){return f.has(t)?!f.get(t).alias&&e&&(f.get(t).alias=e,i.Rm.info(`Add alias '${e}' to entity '${t}'`)):(f.set(t,{attributes:[],alias:e}),i.Rm.info("Added new entity :",t)),f.get(t)}),"addEntity"),m=(0,i.K2)((()=>f),"getEntities"),O=(0,i.K2)((function(t,e){let r,a=g(t);for(r=e.length-1;r>=0;r--)a.attributes.push(e[r]),i.Rm.debug("Added attribute ",e[r].attributeName)}),"addAttributes"),k=(0,i.K2)((function(t,e,r,a){let n={entityA:t,roleA:e,entityB:r,relSpec:a};E.push(n),i.Rm.debug("Added new relationship :",n)}),"addRelationship"),b=(0,i.K2)((()=>E),"getRelationships"),R=(0,i.K2)((function(){f=new Map,E=[],(0,i.IU)()}),"clear"),N={Cardinality:{ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},Identification:{NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},getConfig:(0,i.K2)((()=>(0,i.D7)().er),"getConfig"),addEntity:g,addAttributes:O,getEntities:m,addRelationship:k,getRelationships:b,clear:R,setAccTitle:i.SV,getAccTitle:i.iN,setAccDescription:i.EI,getAccDescription:i.m7,setDiagramTitle:i.ke,getDiagramTitle:i.ab},x={ONLY_ONE_START:"ONLY_ONE_START",ONLY_ONE_END:"ONLY_ONE_END",ZERO_OR_ONE_START:"ZERO_OR_ONE_START",ZERO_OR_ONE_END:"ZERO_OR_ONE_END",ONE_OR_MORE_START:"ONE_OR_MORE_START",ONE_OR_MORE_END:"ONE_OR_MORE_END",ZERO_OR_MORE_START:"ZERO_OR_MORE_START",ZERO_OR_MORE_END:"ZERO_OR_MORE_END",MD_PARENT_END:"MD_PARENT_END",MD_PARENT_START:"MD_PARENT_START"},T={ERMarkers:x,insertMarkers:(0,i.K2)((function(t,e){let r;t.append("defs").append("marker").attr("id",x.MD_PARENT_START).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",x.MD_PARENT_END).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",x.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),t.append("defs").append("marker").attr("id",x.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),r=t.append("defs").append("marker").attr("id",x.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M9,0 L9,18"),r=t.append("defs").append("marker").attr("id",x.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M21,0 L21,18"),t.append("defs").append("marker").attr("id",x.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),t.append("defs").append("marker").attr("id",x.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),r=t.append("defs").append("marker").attr("id",x.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),r=t.append("defs").append("marker").attr("id",x.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")}),"insertMarkers")},A=/[^\dA-Za-z](\W)*/g,M={},w=new Map,I=(0,i.K2)((function(t){const e=Object.keys(t);for(const r of e)M[r]=t[r]}),"setConf"),D=(0,i.K2)(((t,e,r)=>{const a=M.entityPadding/3,n=M.entityPadding/3,s=.85*M.fontSize,o=e.node().getBBox(),c=[];let l=!1,h=!1,d=0,u=0,y=0,p=0,_=o.height+2*a,f=1;r.forEach((t=>{void 0!==t.attributeKeyTypeList&&t.attributeKeyTypeList.length>0&&(l=!0),void 0!==t.attributeComment&&(h=!0)})),r.forEach((r=>{const n=`${e.node().id}-attr-${f}`;let o=0;const E=(0,i.QO)(r.attributeType),g=t.append("text").classed("er entityLabel",!0).attr("id",`${n}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",(0,i.D7)().fontFamily).style("font-size",s+"px").text(E),m=t.append("text").classed("er entityLabel",!0).attr("id",`${n}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",(0,i.D7)().fontFamily).style("font-size",s+"px").text(r.attributeName),O={};O.tn=g,O.nn=m;const k=g.node().getBBox(),b=m.node().getBBox();if(d=Math.max(d,k.width),u=Math.max(u,b.width),o=Math.max(k.height,b.height),l){const e=void 0!==r.attributeKeyTypeList?r.attributeKeyTypeList.join(","):"",a=t.append("text").classed("er entityLabel",!0).attr("id",`${n}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",(0,i.D7)().fontFamily).style("font-size",s+"px").text(e);O.kn=a;const c=a.node().getBBox();y=Math.max(y,c.width),o=Math.max(o,c.height)}if(h){const e=t.append("text").classed("er entityLabel",!0).attr("id",`${n}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",(0,i.D7)().fontFamily).style("font-size",s+"px").text(r.attributeComment||"");O.cn=e;const a=e.node().getBBox();p=Math.max(p,a.width),o=Math.max(o,a.height)}O.height=o,c.push(O),_+=o+2*a,f+=1}));let E=4;l&&(E+=2),h&&(E+=2);const g=d+u+y+p,m={width:Math.max(M.minEntityWidth,Math.max(o.width+2*M.entityPadding,g+n*E)),height:r.length>0?_:Math.max(M.minEntityHeight,o.height+2*M.entityPadding)};if(r.length>0){const r=Math.max(0,(m.width-g-n*E)/(E/2));e.attr("transform","translate("+m.width/2+","+(a+o.height/2)+")");let i=o.height+2*a,s="attributeBoxOdd";c.forEach((e=>{const o=i+a+e.height/2;e.tn.attr("transform","translate("+n+","+o+")");const c=t.insert("rect","#"+e.tn.node().id).classed(`er ${s}`,!0).attr("x",0).attr("y",i).attr("width",d+2*n+r).attr("height",e.height+2*a),_=parseFloat(c.attr("x"))+parseFloat(c.attr("width"));e.nn.attr("transform","translate("+(_+n)+","+o+")");const f=t.insert("rect","#"+e.nn.node().id).classed(`er ${s}`,!0).attr("x",_).attr("y",i).attr("width",u+2*n+r).attr("height",e.height+2*a);let E=parseFloat(f.attr("x"))+parseFloat(f.attr("width"));if(l){e.kn.attr("transform","translate("+(E+n)+","+o+")");const c=t.insert("rect","#"+e.kn.node().id).classed(`er ${s}`,!0).attr("x",E).attr("y",i).attr("width",y+2*n+r).attr("height",e.height+2*a);E=parseFloat(c.attr("x"))+parseFloat(c.attr("width"))}h&&(e.cn.attr("transform","translate("+(E+n)+","+o+")"),t.insert("rect","#"+e.cn.node().id).classed(`er ${s}`,"true").attr("x",E).attr("y",i).attr("width",p+2*n+r).attr("height",e.height+2*a)),i+=e.height+2*a,s="attributeBoxOdd"===s?"attributeBoxEven":"attributeBoxOdd"}))}else m.height=Math.max(M.minEntityHeight,_),e.attr("transform","translate("+m.width/2+","+m.height/2+")");return m}),"drawAttributes"),S=(0,i.K2)((function(t,e,r){let a;return[...e.keys()].forEach((function(n){const s=Y(n,"entity");w.set(n,s);const o=t.append("g").attr("id",s);a=void 0===a?s:a;const c="text-"+s,l=o.append("text").classed("er entityLabel",!0).attr("id",c).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",(0,i.D7)().fontFamily).style("font-size",M.fontSize+"px").text(e.get(n).alias??n),{width:h,height:d}=D(o,l,e.get(n).attributes),u=o.insert("rect","#"+c).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",h).attr("height",d).node().getBBox();r.setNode(s,{width:u.width,height:u.height,shape:"rect",id:s})})),a}),"drawEntities"),v=(0,i.K2)((function(t,e){e.nodes().forEach((function(r){void 0!==r&&void 0!==e.node(r)&&t.select("#"+r).attr("transform","translate("+(e.node(r).x-e.node(r).width/2)+","+(e.node(r).y-e.node(r).height/2)+" )")}))}),"adjustEntities"),L=(0,i.K2)((function(t){return(t.entityA+t.roleA+t.entityB).replace(/\s/g,"")}),"getEdgeName"),$=(0,i.K2)((function(t,e){return t.forEach((function(t){e.setEdge(w.get(t.entityA),w.get(t.entityB),{relationship:t},L(t))})),t}),"addRelationships"),K=0,C=(0,i.K2)((function(t,e,r,a,n){K++;const o=r.edge(w.get(e.entityA),w.get(e.entityB),L(e)),c=(0,s.n8j)().x((function(t){return t.x})).y((function(t){return t.y})).curve(s.qrM),l=t.insert("path","#"+a).classed("er relationshipLine",!0).attr("d",c(o.points)).style("stroke",M.stroke).style("fill","none");e.relSpec.relType===n.db.Identification.NON_IDENTIFYING&&l.attr("stroke-dasharray","8,8");let h="";switch(M.arrowMarkerAbsolute&&(h=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,h=h.replace(/\(/g,"\\("),h=h.replace(/\)/g,"\\)")),e.relSpec.cardA){case n.db.Cardinality.ZERO_OR_ONE:l.attr("marker-end","url("+h+"#"+T.ERMarkers.ZERO_OR_ONE_END+")");break;case n.db.Cardinality.ZERO_OR_MORE:l.attr("marker-end","url("+h+"#"+T.ERMarkers.ZERO_OR_MORE_END+")");break;case n.db.Cardinality.ONE_OR_MORE:l.attr("marker-end","url("+h+"#"+T.ERMarkers.ONE_OR_MORE_END+")");break;case n.db.Cardinality.ONLY_ONE:l.attr("marker-end","url("+h+"#"+T.ERMarkers.ONLY_ONE_END+")");break;case n.db.Cardinality.MD_PARENT:l.attr("marker-end","url("+h+"#"+T.ERMarkers.MD_PARENT_END+")")}switch(e.relSpec.cardB){case n.db.Cardinality.ZERO_OR_ONE:l.attr("marker-start","url("+h+"#"+T.ERMarkers.ZERO_OR_ONE_START+")");break;case n.db.Cardinality.ZERO_OR_MORE:l.attr("marker-start","url("+h+"#"+T.ERMarkers.ZERO_OR_MORE_START+")");break;case n.db.Cardinality.ONE_OR_MORE:l.attr("marker-start","url("+h+"#"+T.ERMarkers.ONE_OR_MORE_START+")");break;case n.db.Cardinality.ONLY_ONE:l.attr("marker-start","url("+h+"#"+T.ERMarkers.ONLY_ONE_START+")");break;case n.db.Cardinality.MD_PARENT:l.attr("marker-start","url("+h+"#"+T.ERMarkers.MD_PARENT_START+")")}const d=l.node().getTotalLength(),u=l.node().getPointAtLength(.5*d),y="rel"+K,p=e.roleA.split(/
/g),_=t.append("text").classed("er relationshipLabel",!0).attr("id",y).attr("x",u.x).attr("y",u.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",(0,i.D7)().fontFamily).style("font-size",M.fontSize+"px");if(1==p.length)_.text(e.roleA);else{const t=.5*-(p.length-1);p.forEach(((e,r)=>{_.append("tspan").attr("x",u.x).attr("dy",`${0===r?t:1}em`).text(e)}))}const f=_.node().getBBox();t.insert("rect","#"+y).classed("er relationshipLabelBox",!0).attr("x",u.x-f.width/2).attr("y",u.y-f.height/2).attr("width",f.width).attr("height",f.height)}),"drawRelationshipFromLayout"),B=(0,i.K2)((function(t,e,r,c){M=(0,i.D7)().er,i.Rm.info("Drawing ER diagram");const l=(0,i.D7)().securityLevel;let h;"sandbox"===l&&(h=(0,s.Ltv)("#i"+e));const d=("sandbox"===l?(0,s.Ltv)(h.nodes()[0].contentDocument.body):(0,s.Ltv)("body")).select(`[id='${e}']`);let u;T.insertMarkers(d,M),u=new n.T({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:M.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel((function(){return{}}));const y=S(d,c.db.getEntities(),u),p=$(c.db.getRelationships(),u);(0,o.Zp)(u),v(d,u),p.forEach((function(t){C(d,t,u,y,c)}));const _=M.diagramPadding;a._K.insertTitle(d,"entityTitleText",M.titleTopMargin,c.db.getDiagramTitle());const f=d.node().getBBox(),E=f.width+2*_,g=f.height+2*_;(0,i.a$)(d,g,E,M.useMaxWidth),d.attr("viewBox",`${f.x-_} ${f.y-_} ${E} ${g}`)}),"draw"),P="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function Y(t="",e=""){const r=t.replace(A,"");return`${Z(e)}${Z(r)}${y(t,P)}`}function Z(t=""){return t.length>0?`${t}-`:""}(0,i.K2)(Y,"generateId"),(0,i.K2)(Z,"strWithHyphen");var F={parser:_,db:N,renderer:{setConf:I,draw:B},styles:(0,i.K2)((t=>`\n .entityBox {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n }\n\n .attributeBoxOdd {\n fill: ${t.attributeBackgroundColorOdd};\n stroke: ${t.nodeBorder};\n }\n\n .attributeBoxEven {\n fill: ${t.attributeBackgroundColorEven};\n stroke: ${t.nodeBorder};\n }\n\n .relationshipLabelBox {\n fill: ${t.tertiaryColor};\n opacity: 0.7;\n background-color: ${t.tertiaryColor};\n rect {\n opacity: 0.5;\n }\n }\n\n .relationshipLine {\n stroke: ${t.lineColor};\n }\n\n .entityTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n } \n #MD_PARENT_START {\n fill: #f5f5f5 !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n }\n #MD_PARENT_END {\n fill: #f5f5f5 !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n }\n \n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/670-2fb0c100.chunk.min.js b/themes/hugo-geekdoc/static/js/670-2fb0c100.chunk.min.js new file mode 100644 index 000000000..dd7a7b827 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/670-2fb0c100.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[670],{53:(t,e,r)=>{r.d(e,{A:()=>i});var a=r(4507);const i=function(t){return(0,a.A)(t,4)}},3258:(t,e,r)=>{r.d(e,{DA:()=>p,IU:()=>dt,Jo:()=>kt,T_:()=>ut,U7:()=>st,U_:()=>lt,g0:()=>h,gh:()=>gt,jP:()=>xt,lC:()=>x,nM:()=>C,on:()=>nt});var a=r(7750),i=r(2382),n=r(5522),s=r(32),d=r(4852),l=(0,s.K2)(((t,e,r,a)=>{e.forEach((e=>{o[e](t,r,a)}))}),"insertMarkers"),o={extension:(0,s.K2)(((t,e,r)=>{s.Rm.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")}),"extension"),composition:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"composition"),aggregation:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"aggregation"),dependency:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"dependency"),lollipop:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)}),"lollipop"),point:(0,s.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"point"),circle:(0,s.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"circle"),cross:(0,s.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")}),"cross"),barb:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}),"barb")},h=l;function c(t,e){e&&t.attr("style",e)}function y(t){const e=(0,d.Ltv)(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),a=t.label,i=t.isNode?"nodeLabel":"edgeLabel",n=r.append("span");return n.html(a),c(n,t.labelStyle),n.attr("class",i),c(r,t.labelStyle),r.style("display","inline-block"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}(0,s.K2)(c,"applyStyle"),(0,s.K2)(y,"addHtmlLabel");var p=(0,s.K2)(((t,e,r,a)=>{let d=t||"";if("object"==typeof d&&(d=d[0]),(0,s._3)((0,s.D7)().flowchart.htmlLabels))return d=d.replace(/\\n|\n/g,"
"),s.Rm.debug("vertexText"+d),y({isNode:a,label:(0,i.hE)((0,n.Sm)(d)),labelStyle:e.replace("fill:","color:")});{const t=document.createElementNS("http://www.w3.org/2000/svg","text");t.setAttribute("style",e.replace("color:","fill:"));let a=[];a="string"==typeof d?d.split(/\\n|\n|/gi):Array.isArray(d)?d:[];for(const e of a){const a=document.createElementNS("http://www.w3.org/2000/svg","tspan");a.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),a.setAttribute("dy","1em"),a.setAttribute("x","0"),r?a.setAttribute("class","title-row"):a.setAttribute("class","row"),a.textContent=e.trim(),t.appendChild(a)}return t}}),"createLabel"),g=(0,s.K2)((async(t,e,r,a)=>{const l=(0,s.D7)();let o;const h=e.useHtmlLabels||(0,s._3)(l.flowchart.htmlLabels);o=r||"node default";const c=t.insert("g").attr("class",o).attr("id",e.domId||e.id),y=c.insert("g").attr("class","label").attr("style",e.labelStyle);let g;g=void 0===e.labelText?"":"string"==typeof e.labelText?e.labelText:e.labelText[0];const x=y.node();let f;f="markdown"===e.labelType?(0,i.GZ)(y,(0,s.jZ)((0,n.Sm)(g),l),{useHtmlLabels:h,width:e.width||l.flowchart.wrappingWidth,classes:"markdown-node-label"},l):x.appendChild(p((0,s.jZ)((0,n.Sm)(g),l),e.labelStyle,!1,a));let u=f.getBBox();const w=e.padding/2;if((0,s._3)(l.flowchart.htmlLabels)){const t=f.children[0],e=(0,d.Ltv)(f),r=t.getElementsByTagName("img");if(r){const t=""===g.replace(/]*>/g,"").trim();await Promise.all([...r].map((e=>new Promise((r=>{function a(){if(e.style.display="flex",e.style.flexDirection="column",t){const t=l.fontSize?l.fontSize:window.getComputedStyle(document.body).fontSize,r=5,a=parseInt(t,10)*r+"px";e.style.minWidth=a,e.style.maxWidth=a}else e.style.width="100%";r(e)}(0,s.K2)(a,"setupImage"),setTimeout((()=>{e.complete&&a()})),e.addEventListener("error",a),e.addEventListener("load",a)})))))}u=t.getBoundingClientRect(),e.attr("width",u.width),e.attr("height",u.height)}return h?y.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"):y.attr("transform","translate(0, "+-u.height/2+")"),e.centerLabel&&y.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"),y.insert("rect",":first-child"),{shapeSvg:c,bbox:u,halfPadding:w,label:y}}),"labelHelper"),x=(0,s.K2)(((t,e)=>{const r=e.node().getBBox();t.width=r.width,t.height=r.height}),"updateNodeBounds");function f(t,e,r,a){return t.insert("polygon",":first-child").attr("points",a.map((function(t){return t.x+","+t.y})).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}(0,s.K2)(f,"insertPolygonShape");var u=(0,s.K2)((t=>{const e=new Set;for(const r of t)switch(r){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(r)}return e}),"expandAndDeduplicateDirections"),w=(0,s.K2)(((t,e,r)=>{const a=u(t),i=e.height+2*r.padding,n=i/2,s=e.width+2*n+r.padding,d=r.padding/2;return a.has("right")&&a.has("left")&&a.has("up")&&a.has("down")?[{x:0,y:0},{x:n,y:0},{x:s/2,y:2*d},{x:s-n,y:0},{x:s,y:0},{x:s,y:-i/3},{x:s+2*d,y:-i/2},{x:s,y:-2*i/3},{x:s,y:-i},{x:s-n,y:-i},{x:s/2,y:-i-2*d},{x:n,y:-i},{x:0,y:-i},{x:0,y:-2*i/3},{x:-2*d,y:-i/2},{x:0,y:-i/3}]:a.has("right")&&a.has("left")&&a.has("up")?[{x:n,y:0},{x:s-n,y:0},{x:s,y:-i/2},{x:s-n,y:-i},{x:n,y:-i},{x:0,y:-i/2}]:a.has("right")&&a.has("left")&&a.has("down")?[{x:0,y:0},{x:n,y:-i},{x:s-n,y:-i},{x:s,y:0}]:a.has("right")&&a.has("up")&&a.has("down")?[{x:0,y:0},{x:s,y:-n},{x:s,y:-i+n},{x:0,y:-i}]:a.has("left")&&a.has("up")&&a.has("down")?[{x:s,y:0},{x:0,y:-n},{x:0,y:-i+n},{x:s,y:-i}]:a.has("right")&&a.has("left")?[{x:n,y:0},{x:n,y:-d},{x:s-n,y:-d},{x:s-n,y:0},{x:s,y:-i/2},{x:s-n,y:-i},{x:s-n,y:-i+d},{x:n,y:-i+d},{x:n,y:-i},{x:0,y:-i/2}]:a.has("up")&&a.has("down")?[{x:s/2,y:0},{x:0,y:-d},{x:n,y:-d},{x:n,y:-i+d},{x:0,y:-i+d},{x:s/2,y:-i},{x:s,y:-i+d},{x:s-n,y:-i+d},{x:s-n,y:-d},{x:s,y:-d}]:a.has("right")&&a.has("up")?[{x:0,y:0},{x:s,y:-n},{x:0,y:-i}]:a.has("right")&&a.has("down")?[{x:0,y:0},{x:s,y:0},{x:0,y:-i}]:a.has("left")&&a.has("up")?[{x:s,y:0},{x:0,y:-n},{x:s,y:-i}]:a.has("left")&&a.has("down")?[{x:s,y:0},{x:0,y:0},{x:s,y:-i}]:a.has("right")?[{x:n,y:-d},{x:n,y:-d},{x:s-n,y:-d},{x:s-n,y:0},{x:s,y:-i/2},{x:s-n,y:-i},{x:s-n,y:-i+d},{x:n,y:-i+d},{x:n,y:-i+d}]:a.has("left")?[{x:n,y:0},{x:n,y:-d},{x:s-n,y:-d},{x:s-n,y:-i+d},{x:n,y:-i+d},{x:n,y:-i},{x:0,y:-i/2}]:a.has("up")?[{x:n,y:-d},{x:n,y:-i+d},{x:0,y:-i+d},{x:s/2,y:-i},{x:s,y:-i+d},{x:s-n,y:-i+d},{x:s-n,y:-d}]:a.has("down")?[{x:s/2,y:0},{x:0,y:-d},{x:n,y:-d},{x:n,y:-i+d},{x:s-n,y:-i+d},{x:s-n,y:-d},{x:s,y:-d}]:[{x:0,y:0}]}),"getArrowPoints");function b(t,e){return t.intersect(e)}(0,s.K2)(b,"intersectNode");var m=b;function k(t,e,r,a){var i=t.x,n=t.y,s=i-a.x,d=n-a.y,l=Math.sqrt(e*e*d*d+r*r*s*s),o=Math.abs(e*r*s/l);a.x0}(0,s.K2)(K,"intersectLine"),(0,s.K2)(_,"sameSign");var M=K,R=B;function B(t,e,r){var a=t.x,i=t.y,n=[],s=Number.POSITIVE_INFINITY,d=Number.POSITIVE_INFINITY;"function"==typeof e.forEach?e.forEach((function(t){s=Math.min(s,t.x),d=Math.min(d,t.y)})):(s=Math.min(s,e.x),d=Math.min(d,e.y));for(var l=a-t.width/2-s,o=i-t.height/2-d,h=0;h1&&n.sort((function(t,e){var a=t.x-r.x,i=t.y-r.y,n=Math.sqrt(a*a+i*i),s=e.x-r.x,d=e.y-r.y,l=Math.sqrt(s*s+d*d);return n{var r,a,i=t.x,n=t.y,s=e.x-i,d=e.y-n,l=t.width/2,o=t.height/2;return Math.abs(d)*l>Math.abs(s)*o?(d<0&&(o=-o),r=0===d?0:o*s/d,a=o):(s<0&&(l=-l),r=l,a=0===s?0:l*d/s),{x:i+r,y:n+a}}),"intersectRect"),T={node:m,circle:S,ellipse:L,polygon:R,rect:C},E=(0,s.K2)((async(t,e)=>{e.useHtmlLabels||(0,s.D7)().flowchart.htmlLabels||(e.centerLabel=!0);const{shapeSvg:r,bbox:a,halfPadding:i}=await g(t,e,"node "+e.classes,!0);s.Rm.info("Classes = ",e.classes);const n=r.insert("rect",":first-child");return n.attr("rx",e.rx).attr("ry",e.ry).attr("x",-a.width/2-i).attr("y",-a.height/2-i).attr("width",a.width+e.padding).attr("height",a.height+e.padding),x(e,n),e.intersect=function(t){return T.rect(e,t)},r}),"note"),D=(0,s.K2)((t=>t?" "+t:""),"formatClass"),$=(0,s.K2)(((t,e)=>`${e||"node default"}${D(t.classes)} ${D(t.class)}`),"getClassesFromNode"),P=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.width+e.padding+(a.height+e.padding),n=[{x:i/2,y:0},{x:i,y:-i/2},{x:i/2,y:-i},{x:0,y:-i/2}];s.Rm.info("Question main (Circle)");const d=f(r,i,i,n);return d.attr("style",e.style),x(e,d),e.intersect=function(t){return s.Rm.warn("Intersect called"),T.polygon(e,n,t)},r}),"question"),N=(0,s.K2)(((t,e)=>{const r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);return r.insert("polygon",":first-child").attr("points",[{x:0,y:14},{x:14,y:0},{x:0,y:-14},{x:-14,y:0}].map((function(t){return t.x+","+t.y})).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(t){return T.circle(e,14,t)},r}),"choice"),I=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.height+e.padding,n=i/4,s=a.width+2*n+e.padding,d=[{x:n,y:0},{x:s-n,y:0},{x:s,y:-i/2},{x:s-n,y:-i},{x:n,y:-i},{x:0,y:-i/2}],l=f(r,s,i,d);return l.attr("style",e.style),x(e,l),e.intersect=function(t){return T.polygon(e,d,t)},r}),"hexagon"),W=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,void 0,!0),i=a.height+2*e.padding,n=i/2,s=a.width+2*n+e.padding,d=w(e.directions,a,e),l=f(r,s,i,d);return l.attr("style",e.style),x(e,l),e.intersect=function(t){return T.polygon(e,d,t)},r}),"block_arrow"),H=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,s=[{x:-n/2,y:0},{x:i,y:0},{x:i,y:-n},{x:-n/2,y:-n},{x:0,y:-n/2}];return f(r,i,n,s).attr("style",e.style),e.width=i+n,e.height=n,e.intersect=function(t){return T.polygon(e,s,t)},r}),"rect_left_inv_arrow"),U=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e),!0),i=a.width+e.padding,n=a.height+e.padding,s=[{x:-2*n/6,y:0},{x:i-n/6,y:0},{x:i+2*n/6,y:-n},{x:n/6,y:-n}],d=f(r,i,n,s);return d.attr("style",e.style),x(e,d),e.intersect=function(t){return T.polygon(e,s,t)},r}),"lean_right"),Y=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,s=[{x:2*n/6,y:0},{x:i+n/6,y:0},{x:i-2*n/6,y:-n},{x:-n/6,y:-n}],d=f(r,i,n,s);return d.attr("style",e.style),x(e,d),e.intersect=function(t){return T.polygon(e,s,t)},r}),"lean_left"),j=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,s=[{x:-2*n/6,y:0},{x:i+2*n/6,y:0},{x:i-n/6,y:-n},{x:n/6,y:-n}],d=f(r,i,n,s);return d.attr("style",e.style),x(e,d),e.intersect=function(t){return T.polygon(e,s,t)},r}),"trapezoid"),X=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,s=[{x:n/6,y:0},{x:i-n/6,y:0},{x:i+2*n/6,y:-n},{x:-2*n/6,y:-n}],d=f(r,i,n,s);return d.attr("style",e.style),x(e,d),e.intersect=function(t){return T.polygon(e,s,t)},r}),"inv_trapezoid"),A=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,s=[{x:0,y:0},{x:i+n/2,y:0},{x:i,y:-n/2},{x:i+n/2,y:-n},{x:0,y:-n}],d=f(r,i,n,s);return d.attr("style",e.style),x(e,d),e.intersect=function(t){return T.polygon(e,s,t)},r}),"rect_right_inv_arrow"),O=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.width+e.padding,n=i/2,s=n/(2.5+i/50),d=a.height+s+e.padding,l="M 0,"+s+" a "+n+","+s+" 0,0,0 "+i+" 0 a "+n+","+s+" 0,0,0 "+-i+" 0 l 0,"+d+" a "+n+","+s+" 0,0,0 "+i+" 0 l 0,"+-d,o=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",e.style).attr("d",l).attr("transform","translate("+-i/2+","+-(d/2+s)+")");return x(e,o),e.intersect=function(t){const r=T.rect(e,t),a=r.x-e.x;if(0!=n&&(Math.abs(a)e.height/2-s)){let i=s*s*(1-a*a/(n*n));0!=i&&(i=Math.sqrt(i)),i=s-i,t.y-e.y>0&&(i=-i),r.y+=i}return r},r}),"cylinder"),Z=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a,halfPadding:i}=await g(t,e,"node "+e.classes+" "+e.class,!0),n=r.insert("rect",":first-child"),d=e.positioned?e.width:a.width+e.padding,l=e.positioned?e.height:a.height+e.padding,o=e.positioned?-d/2:-a.width/2-i,h=e.positioned?-l/2:-a.height/2-i;if(n.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",o).attr("y",h).attr("width",d).attr("height",l),e.props){const t=new Set(Object.keys(e.props));e.props.borders&&(J(n,e.props.borders,d,l),t.delete("borders")),t.forEach((t=>{s.Rm.warn(`Unknown node property ${t}`)}))}return x(e,n),e.intersect=function(t){return T.rect(e,t)},r}),"rect"),q=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a,halfPadding:i}=await g(t,e,"node "+e.classes,!0),n=r.insert("rect",":first-child"),d=e.positioned?e.width:a.width+e.padding,l=e.positioned?e.height:a.height+e.padding,o=e.positioned?-d/2:-a.width/2-i,h=e.positioned?-l/2:-a.height/2-i;if(n.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",o).attr("y",h).attr("width",d).attr("height",l),e.props){const t=new Set(Object.keys(e.props));e.props.borders&&(J(n,e.props.borders,d,l),t.delete("borders")),t.forEach((t=>{s.Rm.warn(`Unknown node property ${t}`)}))}return x(e,n),e.intersect=function(t){return T.rect(e,t)},r}),"composite"),z=(0,s.K2)((async(t,e)=>{const{shapeSvg:r}=await g(t,e,"label",!0);s.Rm.trace("Classes = ",e.class);const a=r.insert("rect",":first-child");if(a.attr("width",0).attr("height",0),r.attr("class","label edgeLabel"),e.props){const t=new Set(Object.keys(e.props));e.props.borders&&(J(a,e.props.borders,0,0),t.delete("borders")),t.forEach((t=>{s.Rm.warn(`Unknown node property ${t}`)}))}return x(e,a),e.intersect=function(t){return T.rect(e,t)},r}),"labelRect");function J(t,e,r,a){const i=[],n=(0,s.K2)((t=>{i.push(t,0)}),"addBorder"),d=(0,s.K2)((t=>{i.push(0,t)}),"skipBorder");e.includes("t")?(s.Rm.debug("add top border"),n(r)):d(r),e.includes("r")?(s.Rm.debug("add right border"),n(a)):d(a),e.includes("b")?(s.Rm.debug("add bottom border"),n(r)):d(r),e.includes("l")?(s.Rm.debug("add left border"),n(a)):d(a),t.attr("stroke-dasharray",i.join(" "))}(0,s.K2)(J,"applyNodePropertyBorders");var V=(0,s.K2)(((t,e)=>{let r;r=e.classes?"node "+e.classes:"node default";const a=t.insert("g").attr("class",r).attr("id",e.domId||e.id),i=a.insert("rect",":first-child"),n=a.insert("line"),l=a.insert("g").attr("class","label"),o=e.labelText.flat?e.labelText.flat():e.labelText;let h="";h="object"==typeof o?o[0]:o,s.Rm.info("Label text abc79",h,o,"object"==typeof o);const c=l.node().appendChild(p(h,e.labelStyle,!0,!0));let y={width:0,height:0};if((0,s._3)((0,s.D7)().flowchart.htmlLabels)){const t=c.children[0],e=(0,d.Ltv)(c);y=t.getBoundingClientRect(),e.attr("width",y.width),e.attr("height",y.height)}s.Rm.info("Text 2",o);const g=o.slice(1,o.length);let f=c.getBBox();const u=l.node().appendChild(p(g.join?g.join("
"):g,e.labelStyle,!0,!0));if((0,s._3)((0,s.D7)().flowchart.htmlLabels)){const t=u.children[0],e=(0,d.Ltv)(u);y=t.getBoundingClientRect(),e.attr("width",y.width),e.attr("height",y.height)}const w=e.padding/2;return(0,d.Ltv)(u).attr("transform","translate( "+(y.width>f.width?0:(f.width-y.width)/2)+", "+(f.height+w+5)+")"),(0,d.Ltv)(c).attr("transform","translate( "+(y.width{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.height+e.padding,n=a.width+i/4+e.padding,s=r.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-n/2).attr("y",-i/2).attr("width",n).attr("height",i);return x(e,s),e.intersect=function(t){return T.rect(e,t)},r}),"stadium"),G=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a,halfPadding:i}=await g(t,e,$(e,void 0),!0),n=r.insert("circle",":first-child");return n.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",a.width/2+i).attr("width",a.width+e.padding).attr("height",a.height+e.padding),s.Rm.info("Circle main"),x(e,n),e.intersect=function(t){return s.Rm.info("Circle intersect",e,a.width/2+i,t),T.circle(e,a.width/2+i,t)},r}),"circle"),Q=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a,halfPadding:i}=await g(t,e,$(e,void 0),!0),n=r.insert("g",":first-child"),d=n.insert("circle"),l=n.insert("circle");return n.attr("class",e.class),d.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",a.width/2+i+5).attr("width",a.width+e.padding+10).attr("height",a.height+e.padding+10),l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",a.width/2+i).attr("width",a.width+e.padding).attr("height",a.height+e.padding),s.Rm.info("DoubleCircle main"),x(e,d),e.intersect=function(t){return s.Rm.info("DoubleCircle intersect",e,a.width/2+i+5,t),T.circle(e,a.width/2+i+5,t)},r}),"doublecircle"),tt=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:a}=await g(t,e,$(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,s=[{x:0,y:0},{x:i,y:0},{x:i,y:-n},{x:0,y:-n},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-n},{x:-8,y:-n},{x:-8,y:0}],d=f(r,i,n,s);return d.attr("style",e.style),x(e,d),e.intersect=function(t){return T.polygon(e,s,t)},r}),"subroutine"),et=(0,s.K2)(((t,e)=>{const r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),a=r.insert("circle",":first-child");return a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),x(e,a),e.intersect=function(t){return T.circle(e,7,t)},r}),"start"),rt=(0,s.K2)(((t,e,r)=>{const a=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let i=70,n=10;"LR"===r&&(i=10,n=70);const s=a.append("rect").attr("x",-1*i/2).attr("y",-1*n/2).attr("width",i).attr("height",n).attr("class","fork-join");return x(e,s),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(t){return T.rect(e,t)},a}),"forkJoin"),at={rhombus:P,composite:q,question:P,rect:Z,labelRect:z,rectWithTitle:V,choice:N,circle:G,doublecircle:Q,stadium:F,hexagon:I,block_arrow:W,rect_left_inv_arrow:H,lean_right:U,lean_left:Y,trapezoid:j,inv_trapezoid:X,rect_right_inv_arrow:A,cylinder:O,start:et,end:(0,s.K2)(((t,e)=>{const r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),a=r.insert("circle",":first-child"),i=r.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),a.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),x(e,i),e.intersect=function(t){return T.circle(e,7,t)},r}),"end"),note:E,subroutine:tt,fork:rt,join:rt,class_box:(0,s.K2)(((t,e)=>{const r=e.padding/2;let a;a=e.classes?"node "+e.classes:"node default";const i=t.insert("g").attr("class",a).attr("id",e.domId||e.id),n=i.insert("rect",":first-child"),l=i.insert("line"),o=i.insert("line");let h=0,c=4;const y=i.insert("g").attr("class","label");let g=0;const f=e.classData.annotations?.[0],u=e.classData.annotations[0]?"«"+e.classData.annotations[0]+"»":"",w=y.node().appendChild(p(u,e.labelStyle,!0,!0));let b=w.getBBox();if((0,s._3)((0,s.D7)().flowchart.htmlLabels)){const t=w.children[0],e=(0,d.Ltv)(w);b=t.getBoundingClientRect(),e.attr("width",b.width),e.attr("height",b.height)}e.classData.annotations[0]&&(c+=b.height+4,h+=b.width);let m=e.classData.label;void 0!==e.classData.type&&""!==e.classData.type&&((0,s.D7)().flowchart.htmlLabels?m+="<"+e.classData.type+">":m+="<"+e.classData.type+">");const k=y.node().appendChild(p(m,e.labelStyle,!0,!0));(0,d.Ltv)(k).attr("class","classTitle");let L=k.getBBox();if((0,s._3)((0,s.D7)().flowchart.htmlLabels)){const t=k.children[0],e=(0,d.Ltv)(k);L=t.getBoundingClientRect(),e.attr("width",L.width),e.attr("height",L.height)}c+=L.height+4,L.width>h&&(h=L.width);const v=[];e.classData.members.forEach((t=>{const r=t.getDisplayDetails();let a=r.displayText;(0,s.D7)().flowchart.htmlLabels&&(a=a.replace(//g,">"));const i=y.node().appendChild(p(a,r.cssStyle?r.cssStyle:e.labelStyle,!0,!0));let n=i.getBBox();if((0,s._3)((0,s.D7)().flowchart.htmlLabels)){const t=i.children[0],e=(0,d.Ltv)(i);n=t.getBoundingClientRect(),e.attr("width",n.width),e.attr("height",n.height)}n.width>h&&(h=n.width),c+=n.height+4,v.push(i)})),c+=8;const S=[];if(e.classData.methods.forEach((t=>{const r=t.getDisplayDetails();let a=r.displayText;(0,s.D7)().flowchart.htmlLabels&&(a=a.replace(//g,">"));const i=y.node().appendChild(p(a,r.cssStyle?r.cssStyle:e.labelStyle,!0,!0));let n=i.getBBox();if((0,s._3)((0,s.D7)().flowchart.htmlLabels)){const t=i.children[0],e=(0,d.Ltv)(i);n=t.getBoundingClientRect(),e.attr("width",n.width),e.attr("height",n.height)}n.width>h&&(h=n.width),c+=n.height+4,S.push(i)})),c+=8,f){let t=(h-b.width)/2;(0,d.Ltv)(w).attr("transform","translate( "+(-1*h/2+t)+", "+-1*c/2+")"),g=b.height+4}let K=(h-L.width)/2;return(0,d.Ltv)(k).attr("transform","translate( "+(-1*h/2+K)+", "+(-1*c/2+g)+")"),g+=L.height+4,l.attr("class","divider").attr("x1",-h/2-r).attr("x2",h/2+r).attr("y1",-c/2-r+8+g).attr("y2",-c/2-r+8+g),g+=8,v.forEach((t=>{(0,d.Ltv)(t).attr("transform","translate( "+-h/2+", "+(-1*c/2+g+4)+")");const e=t?.getBBox();g+=(e?.height??0)+4})),g+=8,o.attr("class","divider").attr("x1",-h/2-r).attr("x2",h/2+r).attr("y1",-c/2-r+8+g).attr("y2",-c/2-r+8+g),g+=8,S.forEach((t=>{(0,d.Ltv)(t).attr("transform","translate( "+-h/2+", "+(-1*c/2+g)+")");const e=t?.getBBox();g+=(e?.height??0)+4})),n.attr("style",e.style).attr("class","outer title-state").attr("x",-h/2-r).attr("y",-c/2-r).attr("width",h+e.padding).attr("height",c+e.padding),x(e,n),e.intersect=function(t){return T.rect(e,t)},i}),"class_box")},it={},nt=(0,s.K2)((async(t,e,r)=>{let a,i;if(e.link){let n;"sandbox"===(0,s.D7)().securityLevel?n="_top":e.linkTarget&&(n=e.linkTarget||"_blank"),a=t.insert("svg:a").attr("xlink:href",e.link).attr("target",n),i=await at[e.shape](a,e,r)}else i=await at[e.shape](t,e,r),a=i;return e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),it[e.id]=a,e.haveCallback&&it[e.id].attr("class",it[e.id].attr("class")+" clickable"),a}),"insertNode"),st=(0,s.K2)(((t,e)=>{it[e.id]=t}),"setNodeElem"),dt=(0,s.K2)((()=>{it={}}),"clear"),lt=(0,s.K2)((t=>{const e=it[t.id];s.Rm.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");const r=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+r-t.width/2)+", "+(t.y-t.height/2-8)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),r}),"positionNode"),ot=(0,s.K2)(((t,e,r,a,i)=>{e.arrowTypeStart&&ct(t,"start",e.arrowTypeStart,r,a,i),e.arrowTypeEnd&&ct(t,"end",e.arrowTypeEnd,r,a,i)}),"addEdgeMarkers"),ht={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},ct=(0,s.K2)(((t,e,r,a,i,n)=>{const d=ht[r];if(!d)return void s.Rm.warn(`Unknown arrow type: ${r}`);const l="start"===e?"Start":"End";t.attr(`marker-${e}`,`url(${a}#${i}_${n}-${d}${l})`)}),"addEdgeMarker"),yt={},pt={},gt=(0,s.K2)((()=>{yt={},pt={}}),"clear"),xt=(0,s.K2)(((t,e)=>{const r=(0,s.D7)(),a=(0,s._3)(r.flowchart.htmlLabels),n="markdown"===e.labelType?(0,i.GZ)(t,e.label,{style:e.labelStyle,useHtmlLabels:a,addSvgBackground:!0},r):p(e.label,e.labelStyle),l=t.insert("g").attr("class","edgeLabel"),o=l.insert("g").attr("class","label");o.node().appendChild(n);let h,c=n.getBBox();if(a){const t=n.children[0],e=(0,d.Ltv)(n);c=t.getBoundingClientRect(),e.attr("width",c.width),e.attr("height",c.height)}if(o.attr("transform","translate("+-c.width/2+", "+-c.height/2+")"),yt[e.id]=l,e.width=c.width,e.height=c.height,e.startLabelLeft){const r=p(e.startLabelLeft,e.labelStyle),a=t.insert("g").attr("class","edgeTerminals"),i=a.insert("g").attr("class","inner");h=i.node().appendChild(r);const n=r.getBBox();i.attr("transform","translate("+-n.width/2+", "+-n.height/2+")"),pt[e.id]||(pt[e.id]={}),pt[e.id].startLeft=a,ft(h,e.startLabelLeft)}if(e.startLabelRight){const r=p(e.startLabelRight,e.labelStyle),a=t.insert("g").attr("class","edgeTerminals"),i=a.insert("g").attr("class","inner");h=a.node().appendChild(r),i.node().appendChild(r);const n=r.getBBox();i.attr("transform","translate("+-n.width/2+", "+-n.height/2+")"),pt[e.id]||(pt[e.id]={}),pt[e.id].startRight=a,ft(h,e.startLabelRight)}if(e.endLabelLeft){const r=p(e.endLabelLeft,e.labelStyle),a=t.insert("g").attr("class","edgeTerminals"),i=a.insert("g").attr("class","inner");h=i.node().appendChild(r);const n=r.getBBox();i.attr("transform","translate("+-n.width/2+", "+-n.height/2+")"),a.node().appendChild(r),pt[e.id]||(pt[e.id]={}),pt[e.id].endLeft=a,ft(h,e.endLabelLeft)}if(e.endLabelRight){const r=p(e.endLabelRight,e.labelStyle),a=t.insert("g").attr("class","edgeTerminals"),i=a.insert("g").attr("class","inner");h=i.node().appendChild(r);const n=r.getBBox();i.attr("transform","translate("+-n.width/2+", "+-n.height/2+")"),a.node().appendChild(r),pt[e.id]||(pt[e.id]={}),pt[e.id].endRight=a,ft(h,e.endLabelRight)}return n}),"insertEdgeLabel");function ft(t,e){(0,s.D7)().flowchart.htmlLabels&&t&&(t.style.width=9*e.length+"px",t.style.height="12px")}(0,s.K2)(ft,"setTerminalWidth");var ut=(0,s.K2)(((t,e)=>{s.Rm.debug("Moving label abc88 ",t.id,t.label,yt[t.id],e);let r=e.updatedPath?e.updatedPath:e.originalPath;const i=(0,s.D7)(),{subGraphTitleTotalMargin:d}=(0,a.O)(i);if(t.label){const a=yt[t.id];let i=t.x,l=t.y;if(r){const a=n._K.calcLabelPosition(r);s.Rm.debug("Moving label "+t.label+" from (",i,",",l,") to (",a.x,",",a.y,") abc88"),e.updatedPath&&(i=a.x,l=a.y)}a.attr("transform",`translate(${i}, ${l+d/2})`)}if(t.startLabelLeft){const e=pt[t.id].startLeft;let a=t.x,i=t.y;if(r){const e=n._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);a=e.x,i=e.y}e.attr("transform",`translate(${a}, ${i})`)}if(t.startLabelRight){const e=pt[t.id].startRight;let a=t.x,i=t.y;if(r){const e=n._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);a=e.x,i=e.y}e.attr("transform",`translate(${a}, ${i})`)}if(t.endLabelLeft){const e=pt[t.id].endLeft;let a=t.x,i=t.y;if(r){const e=n._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);a=e.x,i=e.y}e.attr("transform",`translate(${a}, ${i})`)}if(t.endLabelRight){const e=pt[t.id].endRight;let a=t.x,i=t.y;if(r){const e=n._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);a=e.x,i=e.y}e.attr("transform",`translate(${a}, ${i})`)}}),"positionEdgeLabel"),wt=(0,s.K2)(((t,e)=>{const r=t.x,a=t.y,i=Math.abs(e.x-r),n=Math.abs(e.y-a),s=t.width/2,d=t.height/2;return i>=s||n>=d}),"outsideNode"),bt=(0,s.K2)(((t,e,r)=>{s.Rm.debug(`intersection calc abc89:\n outsidePoint: ${JSON.stringify(e)}\n insidePoint : ${JSON.stringify(r)}\n node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);const a=t.x,i=t.y,n=Math.abs(a-r.x),d=t.width/2;let l=r.xMath.abs(a-e.x)*o){let t=r.y{s.Rm.debug("abc88 cutPathAtIntersect",t,e);let r=[],a=t[0],i=!1;return t.forEach((t=>{if(wt(e,t)||i)a=t,i||r.push(t);else{const n=bt(e,a,t);let s=!1;r.forEach((t=>{s=s||t.x===n.x&&t.y===n.y})),r.some((t=>t.x===n.x&&t.y===n.y))||r.push(n),i=!0}})),r}),"cutPathAtIntersect"),kt=(0,s.K2)((function(t,e,r,i,n,l,o){let h=r.points;s.Rm.debug("abc88 InsertEdge: edge=",r,"e=",e);let c=!1;const y=l.node(e.v);var p=l.node(e.w);p?.intersect&&y?.intersect&&(h=h.slice(1,r.points.length-1),h.unshift(y.intersect(h[0])),h.push(p.intersect(h[h.length-1]))),r.toCluster&&(s.Rm.debug("to cluster abc88",i[r.toCluster]),h=mt(r.points,i[r.toCluster].node),c=!0),r.fromCluster&&(s.Rm.debug("from cluster abc88",i[r.fromCluster]),h=mt(h.reverse(),i[r.fromCluster].node).reverse(),c=!0);const g=h.filter((t=>!Number.isNaN(t.y)));let x=d.qrM;!r.curve||"graph"!==n&&"flowchart"!==n||(x=r.curve);const{x:f,y:u}=(0,a.R)(r),w=(0,d.n8j)().x(f).y(u).curve(x);let b;switch(r.thickness){case"normal":b="edge-thickness-normal";break;case"thick":case"invisible":b="edge-thickness-thick";break;default:b=""}switch(r.pattern){case"solid":b+=" edge-pattern-solid";break;case"dotted":b+=" edge-pattern-dotted";break;case"dashed":b+=" edge-pattern-dashed"}const m=t.append("path").attr("d",w(g)).attr("id",r.id).attr("class"," "+b+(r.classes?" "+r.classes:"")).attr("style",r.style);let k="";((0,s.D7)().flowchart.arrowMarkerAbsolute||(0,s.D7)().state.arrowMarkerAbsolute)&&(k=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,k=k.replace(/\(/g,"\\("),k=k.replace(/\)/g,"\\)")),ot(m,r,k,o,n);let L={};return c&&(L.updatedPath=h),L.originalPath=r.points,L}),"insertEdge")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/593-bfe7ed66.chunk.min.js b/themes/hugo-geekdoc/static/js/674-17bd4f73.chunk.min.js similarity index 99% rename from themes/hugo-geekdoc/static/js/593-bfe7ed66.chunk.min.js rename to themes/hugo-geekdoc/static/js/674-17bd4f73.chunk.min.js index d2465af35..26a38b95a 100644 --- a/themes/hugo-geekdoc/static/js/593-bfe7ed66.chunk.min.js +++ b/themes/hugo-geekdoc/static/js/674-17bd4f73.chunk.min.js @@ -1 +1 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[593],{593:(t,e,i)=>{i.d(e,{diagram:()=>v});var a=i(798),n=i(4852),s=function(){var t=(0,a.K2)((function(t,e,i,a){for(i=i||{},a=t.length;a--;i[t[a]]=e);return i}),"o"),e=[1,3],i=[1,4],n=[1,5],s=[1,6],r=[1,7],o=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],l=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],h=[55,56,57],c=[2,36],d=[1,37],u=[1,36],x=[1,38],g=[1,35],f=[1,43],p=[1,41],y=[1,14],T=[1,23],m=[1,18],q=[1,19],A=[1,20],_=[1,21],b=[1,22],S=[1,24],k=[1,25],F=[1,26],P=[1,27],C=[1,28],L=[1,29],v=[1,32],I=[1,33],E=[1,34],D=[1,39],z=[1,40],w=[1,42],K=[1,44],U=[1,62],N=[1,61],R=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],B=[1,65],W=[1,66],$=[1,67],Q=[1,68],O=[1,69],X=[1,70],H=[1,71],M=[1,72],Y=[1,73],j=[1,74],G=[1,75],V=[1,76],Z=[4,5,6,7,8,9,10,11,12,13,14,15,18],J=[1,90],tt=[1,91],et=[1,92],it=[1,99],at=[1,93],nt=[1,96],st=[1,94],rt=[1,95],ot=[1,97],lt=[1,98],ht=[1,102],ct=[10,55,56,57],dt=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],ut={trace:(0,a.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:(0,a.K2)((function(t,e,i,a,n,s,r){var o=s.length-1;switch(n){case 23:case 68:this.$=s[o];break;case 24:case 69:this.$=s[o-1]+""+s[o];break;case 26:this.$=s[o-1]+s[o];break;case 27:this.$=[s[o].trim()];break;case 28:s[o-2].push(s[o].trim()),this.$=s[o-2];break;case 29:this.$=s[o-4],a.addClass(s[o-2],s[o]);break;case 37:this.$=[];break;case 42:this.$=s[o].trim(),a.setDiagramTitle(this.$);break;case 43:this.$=s[o].trim(),a.setAccTitle(this.$);break;case 44:case 45:this.$=s[o].trim(),a.setAccDescription(this.$);break;case 46:a.addSection(s[o].substr(8)),this.$=s[o].substr(8);break;case 47:a.addPoint(s[o-3],"",s[o-1],s[o],[]);break;case 48:a.addPoint(s[o-4],s[o-3],s[o-1],s[o],[]);break;case 49:a.addPoint(s[o-4],"",s[o-2],s[o-1],s[o]);break;case 50:a.addPoint(s[o-5],s[o-4],s[o-2],s[o-1],s[o]);break;case 51:a.setXAxisLeftText(s[o-2]),a.setXAxisRightText(s[o]);break;case 52:s[o-1].text+=" ⟶ ",a.setXAxisLeftText(s[o-1]);break;case 53:a.setXAxisLeftText(s[o]);break;case 54:a.setYAxisBottomText(s[o-2]),a.setYAxisTopText(s[o]);break;case 55:s[o-1].text+=" ⟶ ",a.setYAxisBottomText(s[o-1]);break;case 56:a.setYAxisBottomText(s[o]);break;case 57:a.setQuadrant1Text(s[o]);break;case 58:a.setQuadrant2Text(s[o]);break;case 59:a.setQuadrant3Text(s[o]);break;case 60:a.setQuadrant4Text(s[o]);break;case 64:case 66:this.$={text:s[o],type:"text"};break;case 65:this.$={text:s[o-1].text+""+s[o],type:s[o-1].type};break;case 67:this.$={text:s[o],type:"markdown"}}}),"anonymous"),table:[{18:e,26:1,27:2,28:i,55:n,56:s,57:r},{1:[3]},{18:e,26:8,27:2,28:i,55:n,56:s,57:r},{18:e,26:9,27:2,28:i,55:n,56:s,57:r},t(o,[2,33],{29:10}),t(l,[2,61]),t(l,[2,62]),t(l,[2,63]),{1:[2,30]},{1:[2,31]},t(h,c,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:d,5:u,10:x,12:g,13:f,14:p,18:y,25:T,35:m,37:q,39:A,41:_,42:b,48:S,50:k,51:F,52:P,53:C,54:L,60:v,61:I,63:E,64:D,65:z,66:w,67:K}),t(o,[2,34]),{27:45,55:n,56:s,57:r},t(h,[2,37]),t(h,c,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:d,5:u,10:x,12:g,13:f,14:p,18:y,25:T,35:m,37:q,39:A,41:_,42:b,48:S,50:k,51:F,52:P,53:C,54:L,60:v,61:I,63:E,64:D,65:z,66:w,67:K}),t(h,[2,39]),t(h,[2,40]),t(h,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},t(h,[2,45]),t(h,[2,46]),{18:[1,50]},{4:d,5:u,10:x,12:g,13:f,14:p,43:51,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:52,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:53,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:54,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:55,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:56,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,44:[1,57],47:[1,58],58:60,59:59,63:E,64:D,65:z,66:w,67:K},t(R,[2,64]),t(R,[2,66]),t(R,[2,67]),t(R,[2,70]),t(R,[2,71]),t(R,[2,72]),t(R,[2,73]),t(R,[2,74]),t(R,[2,75]),t(R,[2,76]),t(R,[2,77]),t(R,[2,78]),t(R,[2,79]),t(R,[2,80]),t(o,[2,35]),t(h,[2,38]),t(h,[2,42]),t(h,[2,43]),t(h,[2,44]),{3:64,4:B,5:W,6:$,7:Q,8:O,9:X,10:H,11:M,12:Y,13:j,14:G,15:V,21:63},t(h,[2,53],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,49:[1,77],63:E,64:D,65:z,66:w,67:K}),t(h,[2,56],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,49:[1,78],63:E,64:D,65:z,66:w,67:K}),t(h,[2,57],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,58],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,59],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,60],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),{45:[1,79]},{44:[1,80]},t(R,[2,65]),t(R,[2,81]),t(R,[2,82]),t(R,[2,83]),{3:82,4:B,5:W,6:$,7:Q,8:O,9:X,10:H,11:M,12:Y,13:j,14:G,15:V,18:[1,81]},t(Z,[2,23]),t(Z,[2,1]),t(Z,[2,2]),t(Z,[2,3]),t(Z,[2,4]),t(Z,[2,5]),t(Z,[2,6]),t(Z,[2,7]),t(Z,[2,8]),t(Z,[2,9]),t(Z,[2,10]),t(Z,[2,11]),t(Z,[2,12]),t(h,[2,52],{58:31,43:83,4:d,5:u,10:x,12:g,13:f,14:p,60:v,61:I,63:E,64:D,65:z,66:w,67:K}),t(h,[2,55],{58:31,43:84,4:d,5:u,10:x,12:g,13:f,14:p,60:v,61:I,63:E,64:D,65:z,66:w,67:K}),{46:[1,85]},{45:[1,86]},{4:J,5:tt,6:et,8:it,11:at,13:nt,16:89,17:st,18:rt,19:ot,20:lt,22:88,23:87},t(Z,[2,24]),t(h,[2,51],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,54],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,47],{22:88,16:89,23:100,4:J,5:tt,6:et,8:it,11:at,13:nt,17:st,18:rt,19:ot,20:lt}),{46:[1,101]},t(h,[2,29],{10:ht}),t(ct,[2,27],{16:103,4:J,5:tt,6:et,8:it,11:at,13:nt,17:st,18:rt,19:ot,20:lt}),t(dt,[2,25]),t(dt,[2,13]),t(dt,[2,14]),t(dt,[2,15]),t(dt,[2,16]),t(dt,[2,17]),t(dt,[2,18]),t(dt,[2,19]),t(dt,[2,20]),t(dt,[2,21]),t(dt,[2,22]),t(h,[2,49],{10:ht}),t(h,[2,48],{22:88,16:89,23:104,4:J,5:tt,6:et,8:it,11:at,13:nt,17:st,18:rt,19:ot,20:lt}),{4:J,5:tt,6:et,8:it,11:at,13:nt,16:89,17:st,18:rt,19:ot,20:lt,22:105},t(dt,[2,26]),t(h,[2,50],{10:ht}),t(ct,[2,28],{16:103,4:J,5:tt,6:et,8:it,11:at,13:nt,17:st,18:rt,19:ot,20:lt})],defaultActions:{8:[2,30],9:[2,31]},parseError:(0,a.K2)((function(t,e){if(!e.recoverable){var i=new Error(t);throw i.hash=e,i}this.trace(t)}),"parseError"),parse:(0,a.K2)((function(t){var e=this,i=[0],n=[],s=[null],r=[],o=this.table,l="",h=0,c=0,d=0,u=r.slice.call(arguments,1),x=Object.create(this.lexer),g={yy:{}};for(var f in this.yy)Object.prototype.hasOwnProperty.call(this.yy,f)&&(g.yy[f]=this.yy[f]);x.setInput(t,g.yy),g.yy.lexer=x,g.yy.parser=this,void 0===x.yylloc&&(x.yylloc={});var p=x.yylloc;r.push(p);var y=x.options&&x.options.ranges;function T(){var t;return"number"!=typeof(t=n.pop()||x.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,a.K2)((function(t){i.length=i.length-2*t,s.length=s.length-t,r.length=r.length-t}),"popStack"),(0,a.K2)(T,"lex");for(var m,q,A,_,b,S,k,F,P,C={};;){if(A=i[i.length-1],this.defaultActions[A]?_=this.defaultActions[A]:(null==m&&(m=T()),_=o[A]&&o[A][m]),void 0===_||!_.length||!_[0]){var L;for(S in P=[],o[A])this.terminals_[S]&&S>2&&P.push("'"+this.terminals_[S]+"'");L=x.showPosition?"Parse error on line "+(h+1)+":\n"+x.showPosition()+"\nExpecting "+P.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(h+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(L,{text:x.match,token:this.terminals_[m]||m,line:x.yylineno,loc:p,expected:P})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+A+", token: "+m);switch(_[0]){case 1:i.push(m),s.push(x.yytext),r.push(x.yylloc),i.push(_[1]),m=null,q?(m=q,q=null):(c=x.yyleng,l=x.yytext,h=x.yylineno,p=x.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[_[1]][1],C.$=s[s.length-k],C._$={first_line:r[r.length-(k||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(k||1)].first_column,last_column:r[r.length-1].last_column},y&&(C._$.range=[r[r.length-(k||1)].range[0],r[r.length-1].range[1]]),void 0!==(b=this.performAction.apply(C,[l,c,h,g.yy,_[1],s,r].concat(u))))return b;k&&(i=i.slice(0,-1*k*2),s=s.slice(0,-1*k),r=r.slice(0,-1*k)),i.push(this.productions_[_[1]][0]),s.push(C.$),r.push(C._$),F=o[i[i.length-2]][i[i.length-1]],i.push(F);break;case 3:return!0}}return!0}),"parse")},xt=function(){return{EOF:1,parseError:(0,a.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,a.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,a.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,a.K2)((function(t){var e=t.length,i=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var a=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===a.length?this.yylloc.first_column:0)+a[a.length-i.length].length-i[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,a.K2)((function(){return this._more=!0,this}),"more"),reject:(0,a.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,a.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,a.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,a.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,a.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,a.K2)((function(t,e){var i,a,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(a=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=a.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:a?a[a.length-1].length-a[a.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],i=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack){for(var s in n)this[s]=n[s];return!1}return!1}),"test_match"),next:(0,a.K2)((function(){if(this.done)return this.EOF;var t,e,i,a;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),s=0;se[0].length)){if(e=i,a=s,this.options.backtrack_lexer){if(!1!==(t=this.test_match(i,n[s])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[a]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,a.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,a.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,a.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,a.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,a.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,a.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,a.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,a.K2)((function(t,e,i,a){switch(i){case 0:case 1:case 3:break;case 2:return 55;case 4:return this.begin("title"),35;case 5:return this.popState(),"title_value";case 6:return this.begin("acc_title"),37;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),39;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 23:case 25:case 31:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 24:this.begin("string");break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;case 29:return this.begin("point_start"),44;case 30:return this.begin("point_x"),45;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;case 34:return 28;case 35:return 4;case 36:return 11;case 37:return 64;case 38:return 10;case 39:case 40:return 65;case 41:return 14;case 42:return 13;case 43:return 67;case 44:return 66;case 45:return 12;case 46:return 8;case 47:return 5;case 48:return 18;case 49:return 56;case 50:return 63;case 51:return 57}}),"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],inclusive:!0}}}}();function gt(){this.yy={}}return ut.lexer=xt,(0,a.K2)(gt,"Parser"),gt.prototype=ut,ut.Parser=gt,new gt}();s.parser=s;var r=s,o=(0,a.P$)(),l=class{constructor(){this.classes=new Map,this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{(0,a.K2)(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:a.UI.quadrantChart?.chartWidth||500,chartWidth:a.UI.quadrantChart?.chartHeight||500,titlePadding:a.UI.quadrantChart?.titlePadding||10,titleFontSize:a.UI.quadrantChart?.titleFontSize||20,quadrantPadding:a.UI.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:a.UI.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:a.UI.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:a.UI.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:a.UI.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:a.UI.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:a.UI.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:a.UI.quadrantChart?.pointTextPadding||5,pointLabelFontSize:a.UI.quadrantChart?.pointLabelFontSize||12,pointRadius:a.UI.quadrantChart?.pointRadius||5,xAxisPosition:a.UI.quadrantChart?.xAxisPosition||"top",yAxisPosition:a.UI.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:a.UI.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:a.UI.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:o.quadrant1Fill,quadrant2Fill:o.quadrant2Fill,quadrant3Fill:o.quadrant3Fill,quadrant4Fill:o.quadrant4Fill,quadrant1TextFill:o.quadrant1TextFill,quadrant2TextFill:o.quadrant2TextFill,quadrant3TextFill:o.quadrant3TextFill,quadrant4TextFill:o.quadrant4TextFill,quadrantPointFill:o.quadrantPointFill,quadrantPointTextFill:o.quadrantPointTextFill,quadrantXAxisTextFill:o.quadrantXAxisTextFill,quadrantYAxisTextFill:o.quadrantYAxisTextFill,quadrantTitleFill:o.quadrantTitleFill,quadrantInternalBorderStrokeFill:o.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:o.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,a.Rm.info("clear called")}setData(t){this.data={...this.data,...t}}addPoints(t){this.data.points=[...t,...this.data.points]}addClass(t,e){this.classes.set(t,e)}setConfig(t){a.Rm.trace("setConfig called with: ",t),this.config={...this.config,...t}}setThemeConfig(t){a.Rm.trace("setThemeConfig called with: ",t),this.themeConfig={...this.themeConfig,...t}}calculateSpace(t,e,i,a){const n=2*this.config.xAxisLabelPadding+this.config.xAxisLabelFontSize,s={top:"top"===t&&e?n:0,bottom:"bottom"===t&&e?n:0},r=2*this.config.yAxisLabelPadding+this.config.yAxisLabelFontSize,o={left:"left"===this.config.yAxisPosition&&i?r:0,right:"right"===this.config.yAxisPosition&&i?r:0},l=this.config.titleFontSize+2*this.config.titlePadding,h={top:a?l:0},c=this.config.quadrantPadding+o.left,d=this.config.quadrantPadding+s.top+h.top,u=this.config.chartWidth-2*this.config.quadrantPadding-o.left-o.right,x=this.config.chartHeight-2*this.config.quadrantPadding-s.top-s.bottom-h.top;return{xAxisSpace:s,yAxisSpace:o,titleSpace:h,quadrantSpace:{quadrantLeft:c,quadrantTop:d,quadrantWidth:u,quadrantHalfWidth:u/2,quadrantHeight:x,quadrantHalfHeight:x/2}}}getAxisLabels(t,e,i,a){const{quadrantSpace:n,titleSpace:s}=a,{quadrantHalfHeight:r,quadrantHeight:o,quadrantLeft:l,quadrantHalfWidth:h,quadrantTop:c,quadrantWidth:d}=n,u=Boolean(this.data.xAxisRightText),x=Boolean(this.data.yAxisTopText),g=[];return this.data.xAxisLeftText&&e&&g.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:l+(u?h/2:0),y:"top"===t?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+c+o+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:u?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&e&&g.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:l+h+(u?h/2:0),y:"top"===t?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+c+o+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:u?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&i&&g.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:"left"===this.config.yAxisPosition?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+l+d+this.config.quadrantPadding,y:c+o-(x?r/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:x?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&i&&g.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:"left"===this.config.yAxisPosition?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+l+d+this.config.quadrantPadding,y:c+r-(x?r/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:x?"center":"left",horizontalPos:"top",rotation:-90}),g}getQuadrants(t){const{quadrantSpace:e}=t,{quadrantHalfHeight:i,quadrantLeft:a,quadrantHalfWidth:n,quadrantTop:s}=e,r=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a+n,y:s,width:n,height:i,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a,y:s,width:n,height:i,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a,y:s+i,width:n,height:i,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a+n,y:s+i,width:n,height:i,fill:this.themeConfig.quadrant4Fill}];for(const t of r)t.text.x=t.x+t.width/2,0===this.data.points.length?(t.text.y=t.y+t.height/2,t.text.horizontalPos="middle"):(t.text.y=t.y+this.config.quadrantTextTopPadding,t.text.horizontalPos="top");return r}getQuadrantPoints(t){const{quadrantSpace:e}=t,{quadrantHeight:i,quadrantLeft:a,quadrantTop:s,quadrantWidth:r}=e,o=(0,n.m4Y)().domain([0,1]).range([a,r+a]),l=(0,n.m4Y)().domain([0,1]).range([i+s,s]);return this.data.points.map((t=>{const e=this.classes.get(t.className);return e&&(t={...e,...t}),{x:o(t.x),y:l(t.y),fill:t.color??this.themeConfig.quadrantPointFill,radius:t.radius??this.config.pointRadius,text:{text:t.text,fill:this.themeConfig.quadrantPointTextFill,x:o(t.x),y:l(t.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:t.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:t.strokeWidth??"0px"}}))}getBorders(t){const e=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:i}=t,{quadrantHalfHeight:a,quadrantHeight:n,quadrantLeft:s,quadrantHalfWidth:r,quadrantTop:o,quadrantWidth:l}=i;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-e,y1:o,x2:s+l+e,y2:o},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s+l,y1:o+e,x2:s+l,y2:o+n-e},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-e,y1:o+n,x2:s+l+e,y2:o+n},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s,y1:o+e,x2:s,y2:o+n-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+r,y1:o+e,x2:s+r,y2:o+n-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+e,y1:o+a,x2:s+l-e,y2:o+a}]}getTitle(t){if(t)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){const t=this.config.showXAxis&&!(!this.data.xAxisLeftText&&!this.data.xAxisRightText),e=this.config.showYAxis&&!(!this.data.yAxisTopText&&!this.data.yAxisBottomText),i=this.config.showTitle&&!!this.data.titleText,a=this.data.points.length>0?"bottom":this.config.xAxisPosition,n=this.calculateSpace(a,t,e,i);return{points:this.getQuadrantPoints(n),quadrants:this.getQuadrants(n),axisLabels:this.getAxisLabels(a,t,e,n),borderLines:this.getBorders(n),title:this.getTitle(i)}}},h=class extends Error{static{(0,a.K2)(this,"InvalidStyleError")}constructor(t,e,i){super(`value for ${t} ${e} is invalid, please use a valid ${i}`),this.name="InvalidStyleError"}};function c(t){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(t)}function d(t){return!/^\d+$/.test(t)}function u(t){return!/^\d+px$/.test(t)}(0,a.K2)(c,"validateHexCode"),(0,a.K2)(d,"validateNumber"),(0,a.K2)(u,"validateSizeInPixels");var x=(0,a.D7)();function g(t){return(0,a.jZ)(t.trim(),x)}(0,a.K2)(g,"textSanitizer");var f=new l;function p(t){f.setData({quadrant1Text:g(t.text)})}function y(t){f.setData({quadrant2Text:g(t.text)})}function T(t){f.setData({quadrant3Text:g(t.text)})}function m(t){f.setData({quadrant4Text:g(t.text)})}function q(t){f.setData({xAxisLeftText:g(t.text)})}function A(t){f.setData({xAxisRightText:g(t.text)})}function _(t){f.setData({yAxisTopText:g(t.text)})}function b(t){f.setData({yAxisBottomText:g(t.text)})}function S(t){const e={};for(const i of t){const[t,a]=i.trim().split(/\s*:\s*/);if("radius"===t){if(d(a))throw new h(t,a,"number");e.radius=parseInt(a)}else if("color"===t){if(c(a))throw new h(t,a,"hex code");e.color=a}else if("stroke-color"===t){if(c(a))throw new h(t,a,"hex code");e.strokeColor=a}else{if("stroke-width"!==t)throw new Error(`style named ${t} is not supported.`);if(u(a))throw new h(t,a,"number of pixels (eg. 10px)");e.strokeWidth=a}}return e}function k(t,e,i,a,n){const s=S(n);f.addPoints([{x:i,y:a,text:g(t.text),className:e,...s}])}function F(t,e){f.addClass(t,S(e))}function P(t){f.setConfig({chartWidth:t})}function C(t){f.setConfig({chartHeight:t})}function L(){const t=(0,a.D7)(),{themeVariables:e,quadrantChart:i}=t;return i&&f.setConfig(i),f.setThemeConfig({quadrant1Fill:e.quadrant1Fill,quadrant2Fill:e.quadrant2Fill,quadrant3Fill:e.quadrant3Fill,quadrant4Fill:e.quadrant4Fill,quadrant1TextFill:e.quadrant1TextFill,quadrant2TextFill:e.quadrant2TextFill,quadrant3TextFill:e.quadrant3TextFill,quadrant4TextFill:e.quadrant4TextFill,quadrantPointFill:e.quadrantPointFill,quadrantPointTextFill:e.quadrantPointTextFill,quadrantXAxisTextFill:e.quadrantXAxisTextFill,quadrantYAxisTextFill:e.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:e.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:e.quadrantInternalBorderStrokeFill,quadrantTitleFill:e.quadrantTitleFill}),f.setData({titleText:(0,a.ab)()}),f.build()}(0,a.K2)(p,"setQuadrant1Text"),(0,a.K2)(y,"setQuadrant2Text"),(0,a.K2)(T,"setQuadrant3Text"),(0,a.K2)(m,"setQuadrant4Text"),(0,a.K2)(q,"setXAxisLeftText"),(0,a.K2)(A,"setXAxisRightText"),(0,a.K2)(_,"setYAxisTopText"),(0,a.K2)(b,"setYAxisBottomText"),(0,a.K2)(S,"parseStyles"),(0,a.K2)(k,"addPoint"),(0,a.K2)(F,"addClass"),(0,a.K2)(P,"setWidth"),(0,a.K2)(C,"setHeight"),(0,a.K2)(L,"getQuadrantData");var v={parser:r,db:{setWidth:P,setHeight:C,setQuadrant1Text:p,setQuadrant2Text:y,setQuadrant3Text:T,setQuadrant4Text:m,setXAxisLeftText:q,setXAxisRightText:A,setYAxisTopText:_,setYAxisBottomText:b,parseStyles:S,addPoint:k,addClass:F,getQuadrantData:L,clear:(0,a.K2)((function(){f.clear(),(0,a.IU)()}),"clear"),setAccTitle:a.SV,getAccTitle:a.iN,setDiagramTitle:a.ke,getDiagramTitle:a.ab,getAccDescription:a.m7,setAccDescription:a.EI},renderer:{draw:(0,a.K2)(((t,e,i,s)=>{function r(t){return"top"===t?"hanging":"middle"}function o(t){return"left"===t?"start":"middle"}function l(t){return`translate(${t.x}, ${t.y}) rotate(${t.rotation||0})`}(0,a.K2)(r,"getDominantBaseLine"),(0,a.K2)(o,"getTextAnchor"),(0,a.K2)(l,"getTransformation");const h=(0,a.D7)();a.Rm.debug("Rendering quadrant chart\n"+t);const c=h.securityLevel;let d;"sandbox"===c&&(d=(0,n.Ltv)("#i"+e));const u=("sandbox"===c?(0,n.Ltv)(d.nodes()[0].contentDocument.body):(0,n.Ltv)("body")).select(`[id="${e}"]`),x=u.append("g").attr("class","main"),g=h.quadrantChart?.chartWidth??500,f=h.quadrantChart?.chartHeight??500;(0,a.a$)(u,f,g,h.quadrantChart?.useMaxWidth??!0),u.attr("viewBox","0 0 "+g+" "+f),s.db.setHeight(f),s.db.setWidth(g);const p=s.db.getQuadrantData(),y=x.append("g").attr("class","quadrants"),T=x.append("g").attr("class","border"),m=x.append("g").attr("class","data-points"),q=x.append("g").attr("class","labels"),A=x.append("g").attr("class","title");p.title&&A.append("text").attr("x",0).attr("y",0).attr("fill",p.title.fill).attr("font-size",p.title.fontSize).attr("dominant-baseline",r(p.title.horizontalPos)).attr("text-anchor",o(p.title.verticalPos)).attr("transform",l(p.title)).text(p.title.text),p.borderLines&&T.selectAll("line").data(p.borderLines).enter().append("line").attr("x1",(t=>t.x1)).attr("y1",(t=>t.y1)).attr("x2",(t=>t.x2)).attr("y2",(t=>t.y2)).style("stroke",(t=>t.strokeFill)).style("stroke-width",(t=>t.strokeWidth));const _=y.selectAll("g.quadrant").data(p.quadrants).enter().append("g").attr("class","quadrant");_.append("rect").attr("x",(t=>t.x)).attr("y",(t=>t.y)).attr("width",(t=>t.width)).attr("height",(t=>t.height)).attr("fill",(t=>t.fill)),_.append("text").attr("x",0).attr("y",0).attr("fill",(t=>t.text.fill)).attr("font-size",(t=>t.text.fontSize)).attr("dominant-baseline",(t=>r(t.text.horizontalPos))).attr("text-anchor",(t=>o(t.text.verticalPos))).attr("transform",(t=>l(t.text))).text((t=>t.text.text)),q.selectAll("g.label").data(p.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text((t=>t.text)).attr("fill",(t=>t.fill)).attr("font-size",(t=>t.fontSize)).attr("dominant-baseline",(t=>r(t.horizontalPos))).attr("text-anchor",(t=>o(t.verticalPos))).attr("transform",(t=>l(t)));const b=m.selectAll("g.data-point").data(p.points).enter().append("g").attr("class","data-point");b.append("circle").attr("cx",(t=>t.x)).attr("cy",(t=>t.y)).attr("r",(t=>t.radius)).attr("fill",(t=>t.fill)).attr("stroke",(t=>t.strokeColor)).attr("stroke-width",(t=>t.strokeWidth)),b.append("text").attr("x",0).attr("y",0).text((t=>t.text.text)).attr("fill",(t=>t.text.fill)).attr("font-size",(t=>t.text.fontSize)).attr("dominant-baseline",(t=>r(t.text.horizontalPos))).attr("text-anchor",(t=>o(t.text.verticalPos))).attr("transform",(t=>l(t.text)))}),"draw")},styles:(0,a.K2)((()=>""),"styles")}}}]); \ No newline at end of file +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[674],{7674:(t,e,i)=>{i.d(e,{diagram:()=>v});var a=i(32),n=i(4852),s=function(){var t=(0,a.K2)((function(t,e,i,a){for(i=i||{},a=t.length;a--;i[t[a]]=e);return i}),"o"),e=[1,3],i=[1,4],n=[1,5],s=[1,6],r=[1,7],o=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],l=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],h=[55,56,57],c=[2,36],d=[1,37],u=[1,36],x=[1,38],g=[1,35],f=[1,43],p=[1,41],y=[1,14],T=[1,23],m=[1,18],q=[1,19],A=[1,20],_=[1,21],b=[1,22],S=[1,24],k=[1,25],F=[1,26],P=[1,27],C=[1,28],L=[1,29],v=[1,32],I=[1,33],E=[1,34],D=[1,39],z=[1,40],w=[1,42],K=[1,44],U=[1,62],N=[1,61],R=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],B=[1,65],W=[1,66],$=[1,67],Q=[1,68],O=[1,69],X=[1,70],H=[1,71],M=[1,72],Y=[1,73],j=[1,74],G=[1,75],V=[1,76],Z=[4,5,6,7,8,9,10,11,12,13,14,15,18],J=[1,90],tt=[1,91],et=[1,92],it=[1,99],at=[1,93],nt=[1,96],st=[1,94],rt=[1,95],ot=[1,97],lt=[1,98],ht=[1,102],ct=[10,55,56,57],dt=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],ut={trace:(0,a.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:(0,a.K2)((function(t,e,i,a,n,s,r){var o=s.length-1;switch(n){case 23:case 68:this.$=s[o];break;case 24:case 69:this.$=s[o-1]+""+s[o];break;case 26:this.$=s[o-1]+s[o];break;case 27:this.$=[s[o].trim()];break;case 28:s[o-2].push(s[o].trim()),this.$=s[o-2];break;case 29:this.$=s[o-4],a.addClass(s[o-2],s[o]);break;case 37:this.$=[];break;case 42:this.$=s[o].trim(),a.setDiagramTitle(this.$);break;case 43:this.$=s[o].trim(),a.setAccTitle(this.$);break;case 44:case 45:this.$=s[o].trim(),a.setAccDescription(this.$);break;case 46:a.addSection(s[o].substr(8)),this.$=s[o].substr(8);break;case 47:a.addPoint(s[o-3],"",s[o-1],s[o],[]);break;case 48:a.addPoint(s[o-4],s[o-3],s[o-1],s[o],[]);break;case 49:a.addPoint(s[o-4],"",s[o-2],s[o-1],s[o]);break;case 50:a.addPoint(s[o-5],s[o-4],s[o-2],s[o-1],s[o]);break;case 51:a.setXAxisLeftText(s[o-2]),a.setXAxisRightText(s[o]);break;case 52:s[o-1].text+=" ⟶ ",a.setXAxisLeftText(s[o-1]);break;case 53:a.setXAxisLeftText(s[o]);break;case 54:a.setYAxisBottomText(s[o-2]),a.setYAxisTopText(s[o]);break;case 55:s[o-1].text+=" ⟶ ",a.setYAxisBottomText(s[o-1]);break;case 56:a.setYAxisBottomText(s[o]);break;case 57:a.setQuadrant1Text(s[o]);break;case 58:a.setQuadrant2Text(s[o]);break;case 59:a.setQuadrant3Text(s[o]);break;case 60:a.setQuadrant4Text(s[o]);break;case 64:case 66:this.$={text:s[o],type:"text"};break;case 65:this.$={text:s[o-1].text+""+s[o],type:s[o-1].type};break;case 67:this.$={text:s[o],type:"markdown"}}}),"anonymous"),table:[{18:e,26:1,27:2,28:i,55:n,56:s,57:r},{1:[3]},{18:e,26:8,27:2,28:i,55:n,56:s,57:r},{18:e,26:9,27:2,28:i,55:n,56:s,57:r},t(o,[2,33],{29:10}),t(l,[2,61]),t(l,[2,62]),t(l,[2,63]),{1:[2,30]},{1:[2,31]},t(h,c,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:d,5:u,10:x,12:g,13:f,14:p,18:y,25:T,35:m,37:q,39:A,41:_,42:b,48:S,50:k,51:F,52:P,53:C,54:L,60:v,61:I,63:E,64:D,65:z,66:w,67:K}),t(o,[2,34]),{27:45,55:n,56:s,57:r},t(h,[2,37]),t(h,c,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:d,5:u,10:x,12:g,13:f,14:p,18:y,25:T,35:m,37:q,39:A,41:_,42:b,48:S,50:k,51:F,52:P,53:C,54:L,60:v,61:I,63:E,64:D,65:z,66:w,67:K}),t(h,[2,39]),t(h,[2,40]),t(h,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},t(h,[2,45]),t(h,[2,46]),{18:[1,50]},{4:d,5:u,10:x,12:g,13:f,14:p,43:51,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:52,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:53,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:54,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:55,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,10:x,12:g,13:f,14:p,43:56,58:31,60:v,61:I,63:E,64:D,65:z,66:w,67:K},{4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,44:[1,57],47:[1,58],58:60,59:59,63:E,64:D,65:z,66:w,67:K},t(R,[2,64]),t(R,[2,66]),t(R,[2,67]),t(R,[2,70]),t(R,[2,71]),t(R,[2,72]),t(R,[2,73]),t(R,[2,74]),t(R,[2,75]),t(R,[2,76]),t(R,[2,77]),t(R,[2,78]),t(R,[2,79]),t(R,[2,80]),t(o,[2,35]),t(h,[2,38]),t(h,[2,42]),t(h,[2,43]),t(h,[2,44]),{3:64,4:B,5:W,6:$,7:Q,8:O,9:X,10:H,11:M,12:Y,13:j,14:G,15:V,21:63},t(h,[2,53],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,49:[1,77],63:E,64:D,65:z,66:w,67:K}),t(h,[2,56],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,49:[1,78],63:E,64:D,65:z,66:w,67:K}),t(h,[2,57],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,58],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,59],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,60],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),{45:[1,79]},{44:[1,80]},t(R,[2,65]),t(R,[2,81]),t(R,[2,82]),t(R,[2,83]),{3:82,4:B,5:W,6:$,7:Q,8:O,9:X,10:H,11:M,12:Y,13:j,14:G,15:V,18:[1,81]},t(Z,[2,23]),t(Z,[2,1]),t(Z,[2,2]),t(Z,[2,3]),t(Z,[2,4]),t(Z,[2,5]),t(Z,[2,6]),t(Z,[2,7]),t(Z,[2,8]),t(Z,[2,9]),t(Z,[2,10]),t(Z,[2,11]),t(Z,[2,12]),t(h,[2,52],{58:31,43:83,4:d,5:u,10:x,12:g,13:f,14:p,60:v,61:I,63:E,64:D,65:z,66:w,67:K}),t(h,[2,55],{58:31,43:84,4:d,5:u,10:x,12:g,13:f,14:p,60:v,61:I,63:E,64:D,65:z,66:w,67:K}),{46:[1,85]},{45:[1,86]},{4:J,5:tt,6:et,8:it,11:at,13:nt,16:89,17:st,18:rt,19:ot,20:lt,22:88,23:87},t(Z,[2,24]),t(h,[2,51],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,54],{59:59,58:60,4:d,5:u,8:U,10:x,12:g,13:f,14:p,18:N,63:E,64:D,65:z,66:w,67:K}),t(h,[2,47],{22:88,16:89,23:100,4:J,5:tt,6:et,8:it,11:at,13:nt,17:st,18:rt,19:ot,20:lt}),{46:[1,101]},t(h,[2,29],{10:ht}),t(ct,[2,27],{16:103,4:J,5:tt,6:et,8:it,11:at,13:nt,17:st,18:rt,19:ot,20:lt}),t(dt,[2,25]),t(dt,[2,13]),t(dt,[2,14]),t(dt,[2,15]),t(dt,[2,16]),t(dt,[2,17]),t(dt,[2,18]),t(dt,[2,19]),t(dt,[2,20]),t(dt,[2,21]),t(dt,[2,22]),t(h,[2,49],{10:ht}),t(h,[2,48],{22:88,16:89,23:104,4:J,5:tt,6:et,8:it,11:at,13:nt,17:st,18:rt,19:ot,20:lt}),{4:J,5:tt,6:et,8:it,11:at,13:nt,16:89,17:st,18:rt,19:ot,20:lt,22:105},t(dt,[2,26]),t(h,[2,50],{10:ht}),t(ct,[2,28],{16:103,4:J,5:tt,6:et,8:it,11:at,13:nt,17:st,18:rt,19:ot,20:lt})],defaultActions:{8:[2,30],9:[2,31]},parseError:(0,a.K2)((function(t,e){if(!e.recoverable){var i=new Error(t);throw i.hash=e,i}this.trace(t)}),"parseError"),parse:(0,a.K2)((function(t){var e=this,i=[0],n=[],s=[null],r=[],o=this.table,l="",h=0,c=0,d=0,u=r.slice.call(arguments,1),x=Object.create(this.lexer),g={yy:{}};for(var f in this.yy)Object.prototype.hasOwnProperty.call(this.yy,f)&&(g.yy[f]=this.yy[f]);x.setInput(t,g.yy),g.yy.lexer=x,g.yy.parser=this,void 0===x.yylloc&&(x.yylloc={});var p=x.yylloc;r.push(p);var y=x.options&&x.options.ranges;function T(){var t;return"number"!=typeof(t=n.pop()||x.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,a.K2)((function(t){i.length=i.length-2*t,s.length=s.length-t,r.length=r.length-t}),"popStack"),(0,a.K2)(T,"lex");for(var m,q,A,_,b,S,k,F,P,C={};;){if(A=i[i.length-1],this.defaultActions[A]?_=this.defaultActions[A]:(null==m&&(m=T()),_=o[A]&&o[A][m]),void 0===_||!_.length||!_[0]){var L;for(S in P=[],o[A])this.terminals_[S]&&S>2&&P.push("'"+this.terminals_[S]+"'");L=x.showPosition?"Parse error on line "+(h+1)+":\n"+x.showPosition()+"\nExpecting "+P.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(h+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(L,{text:x.match,token:this.terminals_[m]||m,line:x.yylineno,loc:p,expected:P})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+A+", token: "+m);switch(_[0]){case 1:i.push(m),s.push(x.yytext),r.push(x.yylloc),i.push(_[1]),m=null,q?(m=q,q=null):(c=x.yyleng,l=x.yytext,h=x.yylineno,p=x.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[_[1]][1],C.$=s[s.length-k],C._$={first_line:r[r.length-(k||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(k||1)].first_column,last_column:r[r.length-1].last_column},y&&(C._$.range=[r[r.length-(k||1)].range[0],r[r.length-1].range[1]]),void 0!==(b=this.performAction.apply(C,[l,c,h,g.yy,_[1],s,r].concat(u))))return b;k&&(i=i.slice(0,-1*k*2),s=s.slice(0,-1*k),r=r.slice(0,-1*k)),i.push(this.productions_[_[1]][0]),s.push(C.$),r.push(C._$),F=o[i[i.length-2]][i[i.length-1]],i.push(F);break;case 3:return!0}}return!0}),"parse")},xt=function(){return{EOF:1,parseError:(0,a.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,a.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,a.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,a.K2)((function(t){var e=t.length,i=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var a=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===a.length?this.yylloc.first_column:0)+a[a.length-i.length].length-i[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,a.K2)((function(){return this._more=!0,this}),"more"),reject:(0,a.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,a.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,a.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,a.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,a.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,a.K2)((function(t,e){var i,a,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(a=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=a.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:a?a[a.length-1].length-a[a.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],i=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack){for(var s in n)this[s]=n[s];return!1}return!1}),"test_match"),next:(0,a.K2)((function(){if(this.done)return this.EOF;var t,e,i,a;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),s=0;se[0].length)){if(e=i,a=s,this.options.backtrack_lexer){if(!1!==(t=this.test_match(i,n[s])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[a]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,a.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,a.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,a.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,a.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,a.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,a.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,a.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,a.K2)((function(t,e,i,a){switch(i){case 0:case 1:case 3:break;case 2:return 55;case 4:return this.begin("title"),35;case 5:return this.popState(),"title_value";case 6:return this.begin("acc_title"),37;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),39;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 23:case 25:case 31:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 24:this.begin("string");break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;case 29:return this.begin("point_start"),44;case 30:return this.begin("point_x"),45;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;case 34:return 28;case 35:return 4;case 36:return 11;case 37:return 64;case 38:return 10;case 39:case 40:return 65;case 41:return 14;case 42:return 13;case 43:return 67;case 44:return 66;case 45:return 12;case 46:return 8;case 47:return 5;case 48:return 18;case 49:return 56;case 50:return 63;case 51:return 57}}),"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],inclusive:!0}}}}();function gt(){this.yy={}}return ut.lexer=xt,(0,a.K2)(gt,"Parser"),gt.prototype=ut,ut.Parser=gt,new gt}();s.parser=s;var r=s,o=(0,a.P$)(),l=class{constructor(){this.classes=new Map,this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{(0,a.K2)(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:a.UI.quadrantChart?.chartWidth||500,chartWidth:a.UI.quadrantChart?.chartHeight||500,titlePadding:a.UI.quadrantChart?.titlePadding||10,titleFontSize:a.UI.quadrantChart?.titleFontSize||20,quadrantPadding:a.UI.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:a.UI.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:a.UI.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:a.UI.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:a.UI.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:a.UI.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:a.UI.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:a.UI.quadrantChart?.pointTextPadding||5,pointLabelFontSize:a.UI.quadrantChart?.pointLabelFontSize||12,pointRadius:a.UI.quadrantChart?.pointRadius||5,xAxisPosition:a.UI.quadrantChart?.xAxisPosition||"top",yAxisPosition:a.UI.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:a.UI.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:a.UI.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:o.quadrant1Fill,quadrant2Fill:o.quadrant2Fill,quadrant3Fill:o.quadrant3Fill,quadrant4Fill:o.quadrant4Fill,quadrant1TextFill:o.quadrant1TextFill,quadrant2TextFill:o.quadrant2TextFill,quadrant3TextFill:o.quadrant3TextFill,quadrant4TextFill:o.quadrant4TextFill,quadrantPointFill:o.quadrantPointFill,quadrantPointTextFill:o.quadrantPointTextFill,quadrantXAxisTextFill:o.quadrantXAxisTextFill,quadrantYAxisTextFill:o.quadrantYAxisTextFill,quadrantTitleFill:o.quadrantTitleFill,quadrantInternalBorderStrokeFill:o.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:o.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,a.Rm.info("clear called")}setData(t){this.data={...this.data,...t}}addPoints(t){this.data.points=[...t,...this.data.points]}addClass(t,e){this.classes.set(t,e)}setConfig(t){a.Rm.trace("setConfig called with: ",t),this.config={...this.config,...t}}setThemeConfig(t){a.Rm.trace("setThemeConfig called with: ",t),this.themeConfig={...this.themeConfig,...t}}calculateSpace(t,e,i,a){const n=2*this.config.xAxisLabelPadding+this.config.xAxisLabelFontSize,s={top:"top"===t&&e?n:0,bottom:"bottom"===t&&e?n:0},r=2*this.config.yAxisLabelPadding+this.config.yAxisLabelFontSize,o={left:"left"===this.config.yAxisPosition&&i?r:0,right:"right"===this.config.yAxisPosition&&i?r:0},l=this.config.titleFontSize+2*this.config.titlePadding,h={top:a?l:0},c=this.config.quadrantPadding+o.left,d=this.config.quadrantPadding+s.top+h.top,u=this.config.chartWidth-2*this.config.quadrantPadding-o.left-o.right,x=this.config.chartHeight-2*this.config.quadrantPadding-s.top-s.bottom-h.top;return{xAxisSpace:s,yAxisSpace:o,titleSpace:h,quadrantSpace:{quadrantLeft:c,quadrantTop:d,quadrantWidth:u,quadrantHalfWidth:u/2,quadrantHeight:x,quadrantHalfHeight:x/2}}}getAxisLabels(t,e,i,a){const{quadrantSpace:n,titleSpace:s}=a,{quadrantHalfHeight:r,quadrantHeight:o,quadrantLeft:l,quadrantHalfWidth:h,quadrantTop:c,quadrantWidth:d}=n,u=Boolean(this.data.xAxisRightText),x=Boolean(this.data.yAxisTopText),g=[];return this.data.xAxisLeftText&&e&&g.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:l+(u?h/2:0),y:"top"===t?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+c+o+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:u?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&e&&g.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:l+h+(u?h/2:0),y:"top"===t?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+c+o+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:u?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&i&&g.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:"left"===this.config.yAxisPosition?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+l+d+this.config.quadrantPadding,y:c+o-(x?r/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:x?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&i&&g.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:"left"===this.config.yAxisPosition?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+l+d+this.config.quadrantPadding,y:c+r-(x?r/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:x?"center":"left",horizontalPos:"top",rotation:-90}),g}getQuadrants(t){const{quadrantSpace:e}=t,{quadrantHalfHeight:i,quadrantLeft:a,quadrantHalfWidth:n,quadrantTop:s}=e,r=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a+n,y:s,width:n,height:i,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a,y:s,width:n,height:i,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a,y:s+i,width:n,height:i,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a+n,y:s+i,width:n,height:i,fill:this.themeConfig.quadrant4Fill}];for(const t of r)t.text.x=t.x+t.width/2,0===this.data.points.length?(t.text.y=t.y+t.height/2,t.text.horizontalPos="middle"):(t.text.y=t.y+this.config.quadrantTextTopPadding,t.text.horizontalPos="top");return r}getQuadrantPoints(t){const{quadrantSpace:e}=t,{quadrantHeight:i,quadrantLeft:a,quadrantTop:s,quadrantWidth:r}=e,o=(0,n.m4Y)().domain([0,1]).range([a,r+a]),l=(0,n.m4Y)().domain([0,1]).range([i+s,s]);return this.data.points.map((t=>{const e=this.classes.get(t.className);return e&&(t={...e,...t}),{x:o(t.x),y:l(t.y),fill:t.color??this.themeConfig.quadrantPointFill,radius:t.radius??this.config.pointRadius,text:{text:t.text,fill:this.themeConfig.quadrantPointTextFill,x:o(t.x),y:l(t.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:t.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:t.strokeWidth??"0px"}}))}getBorders(t){const e=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:i}=t,{quadrantHalfHeight:a,quadrantHeight:n,quadrantLeft:s,quadrantHalfWidth:r,quadrantTop:o,quadrantWidth:l}=i;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-e,y1:o,x2:s+l+e,y2:o},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s+l,y1:o+e,x2:s+l,y2:o+n-e},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-e,y1:o+n,x2:s+l+e,y2:o+n},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s,y1:o+e,x2:s,y2:o+n-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+r,y1:o+e,x2:s+r,y2:o+n-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+e,y1:o+a,x2:s+l-e,y2:o+a}]}getTitle(t){if(t)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){const t=this.config.showXAxis&&!(!this.data.xAxisLeftText&&!this.data.xAxisRightText),e=this.config.showYAxis&&!(!this.data.yAxisTopText&&!this.data.yAxisBottomText),i=this.config.showTitle&&!!this.data.titleText,a=this.data.points.length>0?"bottom":this.config.xAxisPosition,n=this.calculateSpace(a,t,e,i);return{points:this.getQuadrantPoints(n),quadrants:this.getQuadrants(n),axisLabels:this.getAxisLabels(a,t,e,n),borderLines:this.getBorders(n),title:this.getTitle(i)}}},h=class extends Error{static{(0,a.K2)(this,"InvalidStyleError")}constructor(t,e,i){super(`value for ${t} ${e} is invalid, please use a valid ${i}`),this.name="InvalidStyleError"}};function c(t){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(t)}function d(t){return!/^\d+$/.test(t)}function u(t){return!/^\d+px$/.test(t)}(0,a.K2)(c,"validateHexCode"),(0,a.K2)(d,"validateNumber"),(0,a.K2)(u,"validateSizeInPixels");var x=(0,a.D7)();function g(t){return(0,a.jZ)(t.trim(),x)}(0,a.K2)(g,"textSanitizer");var f=new l;function p(t){f.setData({quadrant1Text:g(t.text)})}function y(t){f.setData({quadrant2Text:g(t.text)})}function T(t){f.setData({quadrant3Text:g(t.text)})}function m(t){f.setData({quadrant4Text:g(t.text)})}function q(t){f.setData({xAxisLeftText:g(t.text)})}function A(t){f.setData({xAxisRightText:g(t.text)})}function _(t){f.setData({yAxisTopText:g(t.text)})}function b(t){f.setData({yAxisBottomText:g(t.text)})}function S(t){const e={};for(const i of t){const[t,a]=i.trim().split(/\s*:\s*/);if("radius"===t){if(d(a))throw new h(t,a,"number");e.radius=parseInt(a)}else if("color"===t){if(c(a))throw new h(t,a,"hex code");e.color=a}else if("stroke-color"===t){if(c(a))throw new h(t,a,"hex code");e.strokeColor=a}else{if("stroke-width"!==t)throw new Error(`style named ${t} is not supported.`);if(u(a))throw new h(t,a,"number of pixels (eg. 10px)");e.strokeWidth=a}}return e}function k(t,e,i,a,n){const s=S(n);f.addPoints([{x:i,y:a,text:g(t.text),className:e,...s}])}function F(t,e){f.addClass(t,S(e))}function P(t){f.setConfig({chartWidth:t})}function C(t){f.setConfig({chartHeight:t})}function L(){const t=(0,a.D7)(),{themeVariables:e,quadrantChart:i}=t;return i&&f.setConfig(i),f.setThemeConfig({quadrant1Fill:e.quadrant1Fill,quadrant2Fill:e.quadrant2Fill,quadrant3Fill:e.quadrant3Fill,quadrant4Fill:e.quadrant4Fill,quadrant1TextFill:e.quadrant1TextFill,quadrant2TextFill:e.quadrant2TextFill,quadrant3TextFill:e.quadrant3TextFill,quadrant4TextFill:e.quadrant4TextFill,quadrantPointFill:e.quadrantPointFill,quadrantPointTextFill:e.quadrantPointTextFill,quadrantXAxisTextFill:e.quadrantXAxisTextFill,quadrantYAxisTextFill:e.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:e.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:e.quadrantInternalBorderStrokeFill,quadrantTitleFill:e.quadrantTitleFill}),f.setData({titleText:(0,a.ab)()}),f.build()}(0,a.K2)(p,"setQuadrant1Text"),(0,a.K2)(y,"setQuadrant2Text"),(0,a.K2)(T,"setQuadrant3Text"),(0,a.K2)(m,"setQuadrant4Text"),(0,a.K2)(q,"setXAxisLeftText"),(0,a.K2)(A,"setXAxisRightText"),(0,a.K2)(_,"setYAxisTopText"),(0,a.K2)(b,"setYAxisBottomText"),(0,a.K2)(S,"parseStyles"),(0,a.K2)(k,"addPoint"),(0,a.K2)(F,"addClass"),(0,a.K2)(P,"setWidth"),(0,a.K2)(C,"setHeight"),(0,a.K2)(L,"getQuadrantData");var v={parser:r,db:{setWidth:P,setHeight:C,setQuadrant1Text:p,setQuadrant2Text:y,setQuadrant3Text:T,setQuadrant4Text:m,setXAxisLeftText:q,setXAxisRightText:A,setYAxisTopText:_,setYAxisBottomText:b,parseStyles:S,addPoint:k,addClass:F,getQuadrantData:L,clear:(0,a.K2)((function(){f.clear(),(0,a.IU)()}),"clear"),setAccTitle:a.SV,getAccTitle:a.iN,setDiagramTitle:a.ke,getDiagramTitle:a.ab,getAccDescription:a.m7,setAccDescription:a.EI},renderer:{draw:(0,a.K2)(((t,e,i,s)=>{function r(t){return"top"===t?"hanging":"middle"}function o(t){return"left"===t?"start":"middle"}function l(t){return`translate(${t.x}, ${t.y}) rotate(${t.rotation||0})`}(0,a.K2)(r,"getDominantBaseLine"),(0,a.K2)(o,"getTextAnchor"),(0,a.K2)(l,"getTransformation");const h=(0,a.D7)();a.Rm.debug("Rendering quadrant chart\n"+t);const c=h.securityLevel;let d;"sandbox"===c&&(d=(0,n.Ltv)("#i"+e));const u=("sandbox"===c?(0,n.Ltv)(d.nodes()[0].contentDocument.body):(0,n.Ltv)("body")).select(`[id="${e}"]`),x=u.append("g").attr("class","main"),g=h.quadrantChart?.chartWidth??500,f=h.quadrantChart?.chartHeight??500;(0,a.a$)(u,f,g,h.quadrantChart?.useMaxWidth??!0),u.attr("viewBox","0 0 "+g+" "+f),s.db.setHeight(f),s.db.setWidth(g);const p=s.db.getQuadrantData(),y=x.append("g").attr("class","quadrants"),T=x.append("g").attr("class","border"),m=x.append("g").attr("class","data-points"),q=x.append("g").attr("class","labels"),A=x.append("g").attr("class","title");p.title&&A.append("text").attr("x",0).attr("y",0).attr("fill",p.title.fill).attr("font-size",p.title.fontSize).attr("dominant-baseline",r(p.title.horizontalPos)).attr("text-anchor",o(p.title.verticalPos)).attr("transform",l(p.title)).text(p.title.text),p.borderLines&&T.selectAll("line").data(p.borderLines).enter().append("line").attr("x1",(t=>t.x1)).attr("y1",(t=>t.y1)).attr("x2",(t=>t.x2)).attr("y2",(t=>t.y2)).style("stroke",(t=>t.strokeFill)).style("stroke-width",(t=>t.strokeWidth));const _=y.selectAll("g.quadrant").data(p.quadrants).enter().append("g").attr("class","quadrant");_.append("rect").attr("x",(t=>t.x)).attr("y",(t=>t.y)).attr("width",(t=>t.width)).attr("height",(t=>t.height)).attr("fill",(t=>t.fill)),_.append("text").attr("x",0).attr("y",0).attr("fill",(t=>t.text.fill)).attr("font-size",(t=>t.text.fontSize)).attr("dominant-baseline",(t=>r(t.text.horizontalPos))).attr("text-anchor",(t=>o(t.text.verticalPos))).attr("transform",(t=>l(t.text))).text((t=>t.text.text)),q.selectAll("g.label").data(p.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text((t=>t.text)).attr("fill",(t=>t.fill)).attr("font-size",(t=>t.fontSize)).attr("dominant-baseline",(t=>r(t.horizontalPos))).attr("text-anchor",(t=>o(t.verticalPos))).attr("transform",(t=>l(t)));const b=m.selectAll("g.data-point").data(p.points).enter().append("g").attr("class","data-point");b.append("circle").attr("cx",(t=>t.x)).attr("cy",(t=>t.y)).attr("r",(t=>t.radius)).attr("fill",(t=>t.fill)).attr("stroke",(t=>t.strokeColor)).attr("stroke-width",(t=>t.strokeWidth)),b.append("text").attr("x",0).attr("y",0).text((t=>t.text.text)).attr("fill",(t=>t.text.fill)).attr("font-size",(t=>t.text.fontSize)).attr("dominant-baseline",(t=>r(t.text.horizontalPos))).attr("text-anchor",(t=>o(t.text.verticalPos))).attr("transform",(t=>l(t.text)))}),"draw")},styles:(0,a.K2)((()=>""),"styles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/70-826e03f2.chunk.min.js b/themes/hugo-geekdoc/static/js/70-826e03f2.chunk.min.js new file mode 100644 index 000000000..a58482b52 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/70-826e03f2.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[70],{1471:(e,t,s)=>{s.d(t,{T:()=>L});var i=s(9622),n=s(9142),r=s(9610),o=s(5041),a=s(4092),l=s(6401),c=s(8058),h=s(9592),d=s(7671),u=s(4326),g=s(7371),p=s(3533);const y=(0,u.A)((function(e){return(0,g.A)((0,d.A)(e,1,p.A,!0))}));var b=s(2866),_=s(3130),f="\0",m="\0",x="";class L{constructor(e={}){this._isDirected=!i.A(e,"directed")||e.directed,this._isMultigraph=!!i.A(e,"multigraph")&&e.multigraph,this._isCompound=!!i.A(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=n.A(void 0),this._defaultEdgeLabelFn=n.A(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[m]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return r.A(e)||(e=n.A(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return o.A(this._nodes)}sources(){var e=this;return a.A(this.nodes(),(function(t){return l.A(e._in[t])}))}sinks(){var e=this;return a.A(this.nodes(),(function(t){return l.A(e._out[t])}))}setNodes(e,t){var s=arguments,i=this;return c.A(e,(function(e){s.length>1?i.setNode(e,t):i.setNode(e)})),this}setNode(e,t){return i.A(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=m,this._children[e]={},this._children[m][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return i.A(this._nodes,e)}removeNode(e){var t=this;if(i.A(this._nodes,e)){var s=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],c.A(this.children(e),(function(e){t.setParent(e)})),delete this._children[e]),c.A(o.A(this._in[e]),s),delete this._in[e],delete this._preds[e],c.A(o.A(this._out[e]),s),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(h.A(t))t=m;else{for(var s=t+="";!h.A(s);s=this.parent(s))if(s===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var t=this._parent[e];if(t!==m)return t}}children(e){if(h.A(e)&&(e=m),this._isCompound){var t=this._children[e];if(t)return o.A(t)}else{if(e===m)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var t=this._preds[e];if(t)return o.A(t)}successors(e){var t=this._sucs[e];if(t)return o.A(t)}neighbors(e){var t=this.predecessors(e);if(t)return y(t,this.successors(e))}isLeaf(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length}filterNodes(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var s=this;c.A(this._nodes,(function(s,i){e(i)&&t.setNode(i,s)})),c.A(this._edgeObjs,(function(e){t.hasNode(e.v)&&t.hasNode(e.w)&&t.setEdge(e,s.edge(e))}));var i={};function n(e){var r=s.parent(e);return void 0===r||t.hasNode(r)?(i[e]=r,r):r in i?i[r]:n(r)}return this._isCompound&&c.A(t.nodes(),(function(e){t.setParent(e,n(e))})),t}setDefaultEdgeLabel(e){return r.A(e)||(e=n.A(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return b.A(this._edgeObjs)}setPath(e,t){var s=this,i=arguments;return _.A(e,(function(e,n){return i.length>1?s.setEdge(e,n,t):s.setEdge(e,n),n})),this}setEdge(){var e,t,s,n,r=!1,o=arguments[0];"object"==typeof o&&null!==o&&"v"in o?(e=o.v,t=o.w,s=o.name,2===arguments.length&&(n=arguments[1],r=!0)):(e=o,t=arguments[1],s=arguments[3],arguments.length>2&&(n=arguments[2],r=!0)),e=""+e,t=""+t,h.A(s)||(s=""+s);var a=E(this._isDirected,e,t,s);if(i.A(this._edgeLabels,a))return r&&(this._edgeLabels[a]=n),this;if(!h.A(s)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[a]=r?n:this._defaultEdgeLabelFn(e,t,s);var l=function(e,t,s,i){var n=""+t,r=""+s;if(!e&&n>r){var o=n;n=r,r=o}var a={v:n,w:r};return i&&(a.name=i),a}(this._isDirected,e,t,s);return e=l.v,t=l.w,Object.freeze(l),this._edgeObjs[a]=l,S(this._preds[t],e),S(this._sucs[e],t),this._in[t][a]=l,this._out[e][a]=l,this._edgeCount++,this}edge(e,t,s){var i=1===arguments.length?w(this._isDirected,arguments[0]):E(this._isDirected,e,t,s);return this._edgeLabels[i]}hasEdge(e,t,s){var n=1===arguments.length?w(this._isDirected,arguments[0]):E(this._isDirected,e,t,s);return i.A(this._edgeLabels,n)}removeEdge(e,t,s){var i=1===arguments.length?w(this._isDirected,arguments[0]):E(this._isDirected,e,t,s),n=this._edgeObjs[i];return n&&(e=n.v,t=n.w,delete this._edgeLabels[i],delete this._edgeObjs[i],k(this._preds[t],e),k(this._sucs[e],t),delete this._in[t][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,t){var s=this._in[e];if(s){var i=b.A(s);return t?a.A(i,(function(e){return e.v===t})):i}}outEdges(e,t){var s=this._out[e];if(s){var i=b.A(s);return t?a.A(i,(function(e){return e.w===t})):i}}nodeEdges(e,t){var s=this.inEdges(e,t);if(s)return s.concat(this.outEdges(e,t))}}function S(e,t){e[t]?e[t]++:e[t]=1}function k(e,t){--e[t]||delete e[t]}function E(e,t,s,i){var n=""+t,r=""+s;if(!e&&n>r){var o=n;n=r,r=o}return n+x+r+x+(h.A(i)?f:i)}function w(e,t){return E(e,t.v,t.w,t.name)}L.prototype._nodeCount=0,L.prototype._edgeCount=0},697:(e,t,s)=>{s.d(t,{T:()=>i.T});var i=s(1471)},5937:(e,t,s)=>{s.d(t,{A:()=>r});var i=s(6309),n=s(1931);const r=(e,t)=>i.A.lang.round(n.A.parse(e)[t])},4070:(e,t,s)=>{s.d(t,{diagram:()=>oe});var i=s(3258),n=(s(7750),s(2382),s(5522)),r=s(32),o=s(53),a=s(5937),l=s(5582),c=s(4852),h=s(697),d=function(){var e=(0,r.K2)((function(e,t,s,i){for(s=s||{},i=e.length;i--;s[e[i]]=t);return s}),"o"),t=[1,7],s=[1,13],i=[1,14],n=[1,15],o=[1,19],a=[1,16],l=[1,17],c=[1,18],h=[8,30],d=[8,21,28,29,30,31,32,40,44,47],u=[1,23],g=[1,24],p=[8,15,16,21,28,29,30,31,32,40,44,47],y=[8,15,16,21,27,28,29,30,31,32,40,44,47],b=[1,49],_={trace:(0,r.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList:34,DIR:35,NODE_DSTART:36,NODE_DEND:37,BLOCK_ARROW_START:38,BLOCK_ARROW_END:39,classDef:40,CLASSDEF_ID:41,CLASSDEF_STYLEOPTS:42,DEFAULT:43,class:44,CLASSENTITY_IDS:45,STYLECLASS:46,style:47,STYLE_ENTITY_IDS:48,STYLE_DEFINITION_DATA:49,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:(0,r.K2)((function(e,t,s,i,n,r,o){var a=r.length-1;switch(n){case 4:i.getLogger().debug("Rule: separator (NL) ");break;case 5:i.getLogger().debug("Rule: separator (Space) ");break;case 6:i.getLogger().debug("Rule: separator (EOF) ");break;case 7:i.getLogger().debug("Rule: hierarchy: ",r[a-1]),i.setHierarchy(r[a-1]);break;case 8:i.getLogger().debug("Stop NL ");break;case 9:i.getLogger().debug("Stop EOF ");break;case 10:i.getLogger().debug("Stop NL2 ");break;case 11:i.getLogger().debug("Stop EOF2 ");break;case 12:i.getLogger().debug("Rule: statement: ",r[a]),"number"==typeof r[a].length?this.$=r[a]:this.$=[r[a]];break;case 13:i.getLogger().debug("Rule: statement #2: ",r[a-1]),this.$=[r[a-1]].concat(r[a]);break;case 14:i.getLogger().debug("Rule: link: ",r[a],e),this.$={edgeTypeStr:r[a],label:""};break;case 15:i.getLogger().debug("Rule: LABEL link: ",r[a-3],r[a-1],r[a]),this.$={edgeTypeStr:r[a],label:r[a-1]};break;case 18:const t=parseInt(r[a]),s=i.generateId();this.$={id:s,type:"space",label:"",width:t,children:[]};break;case 23:i.getLogger().debug("Rule: (nodeStatement link node) ",r[a-2],r[a-1],r[a]," typestr: ",r[a-1].edgeTypeStr);const n=i.edgeStrToEdgeData(r[a-1].edgeTypeStr);this.$=[{id:r[a-2].id,label:r[a-2].label,type:r[a-2].type,directions:r[a-2].directions},{id:r[a-2].id+"-"+r[a].id,start:r[a-2].id,end:r[a].id,label:r[a-1].label,type:"edge",directions:r[a].directions,arrowTypeEnd:n,arrowTypeStart:"arrow_open"},{id:r[a].id,label:r[a].label,type:i.typeStr2Type(r[a].typeStr),directions:r[a].directions}];break;case 24:i.getLogger().debug("Rule: nodeStatement (abc88 node size) ",r[a-1],r[a]),this.$={id:r[a-1].id,label:r[a-1].label,type:i.typeStr2Type(r[a-1].typeStr),directions:r[a-1].directions,widthInColumns:parseInt(r[a],10)};break;case 25:i.getLogger().debug("Rule: nodeStatement (node) ",r[a]),this.$={id:r[a].id,label:r[a].label,type:i.typeStr2Type(r[a].typeStr),directions:r[a].directions,widthInColumns:1};break;case 26:i.getLogger().debug("APA123",this?this:"na"),i.getLogger().debug("COLUMNS: ",r[a]),this.$={type:"column-setting",columns:"auto"===r[a]?-1:parseInt(r[a])};break;case 27:i.getLogger().debug("Rule: id-block statement : ",r[a-2],r[a-1]),i.generateId(),this.$={...r[a-2],type:"composite",children:r[a-1]};break;case 28:i.getLogger().debug("Rule: blockStatement : ",r[a-2],r[a-1],r[a]);const o=i.generateId();this.$={id:o,type:"composite",label:"",children:r[a-1]};break;case 29:i.getLogger().debug("Rule: node (NODE_ID separator): ",r[a]),this.$={id:r[a]};break;case 30:i.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",r[a-1],r[a]),this.$={id:r[a-1],label:r[a].label,typeStr:r[a].typeStr,directions:r[a].directions};break;case 31:i.getLogger().debug("Rule: dirList: ",r[a]),this.$=[r[a]];break;case 32:i.getLogger().debug("Rule: dirList: ",r[a-1],r[a]),this.$=[r[a-1]].concat(r[a]);break;case 33:i.getLogger().debug("Rule: nodeShapeNLabel: ",r[a-2],r[a-1],r[a]),this.$={typeStr:r[a-2]+r[a],label:r[a-1]};break;case 34:i.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",r[a-3],r[a-2]," #3:",r[a-1],r[a]),this.$={typeStr:r[a-3]+r[a],label:r[a-2],directions:r[a-1]};break;case 35:case 36:this.$={type:"classDef",id:r[a-1].trim(),css:r[a].trim()};break;case 37:this.$={type:"applyClass",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 38:this.$={type:"applyStyles",id:r[a-1].trim(),stylesStr:r[a].trim()}}}),"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:n,32:o,40:a,44:l,47:c},{8:[1,20]},e(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:t,28:s,29:i,31:n,32:o,40:a,44:l,47:c}),e(d,[2,16],{14:22,15:u,16:g}),e(d,[2,17]),e(d,[2,18]),e(d,[2,19]),e(d,[2,20]),e(d,[2,21]),e(d,[2,22]),e(p,[2,25],{27:[1,25]}),e(d,[2,26]),{19:26,26:12,32:o},{11:27,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:n,32:o,40:a,44:l,47:c},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},e(y,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},e(h,[2,13]),{26:35,32:o},{32:[2,14]},{17:[1,36]},e(p,[2,24]),{11:37,13:4,14:22,15:u,16:g,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:n,32:o,40:a,44:l,47:c},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},e(y,[2,30]),{18:[1,43]},{18:[1,44]},e(p,[2,23]),{18:[1,45]},{30:[1,46]},e(d,[2,28]),e(d,[2,35]),e(d,[2,36]),e(d,[2,37]),e(d,[2,38]),{37:[1,47]},{34:48,35:b},{15:[1,50]},e(d,[2,27]),e(y,[2,33]),{39:[1,51]},{34:52,35:b,39:[2,31]},{32:[2,15]},e(y,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:(0,r.K2)((function(e,t){if(!t.recoverable){var s=new Error(e);throw s.hash=t,s}this.trace(e)}),"parseError"),parse:(0,r.K2)((function(e){var t=this,s=[0],i=[],n=[null],o=[],a=this.table,l="",c=0,h=0,d=0,u=o.slice.call(arguments,1),g=Object.create(this.lexer),p={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(p.yy[y]=this.yy[y]);g.setInput(e,p.yy),p.yy.lexer=g,p.yy.parser=this,void 0===g.yylloc&&(g.yylloc={});var b=g.yylloc;o.push(b);var _=g.options&&g.options.ranges;function f(){var e;return"number"!=typeof(e=i.pop()||g.lex()||1)&&(e instanceof Array&&(e=(i=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,r.K2)((function(e){s.length=s.length-2*e,n.length=n.length-e,o.length=o.length-e}),"popStack"),(0,r.K2)(f,"lex");for(var m,x,L,S,k,E,w,D,A,N={};;){if(L=s[s.length-1],this.defaultActions[L]?S=this.defaultActions[L]:(null==m&&(m=f()),S=a[L]&&a[L][m]),void 0===S||!S.length||!S[0]){var v;for(E in A=[],a[L])this.terminals_[E]&&E>2&&A.push("'"+this.terminals_[E]+"'");v=g.showPosition?"Parse error on line "+(c+1)+":\n"+g.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(v,{text:g.match,token:this.terminals_[m]||m,line:g.yylineno,loc:b,expected:A})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+L+", token: "+m);switch(S[0]){case 1:s.push(m),n.push(g.yytext),o.push(g.yylloc),s.push(S[1]),m=null,x?(m=x,x=null):(h=g.yyleng,l=g.yytext,c=g.yylineno,b=g.yylloc,d>0&&d--);break;case 2:if(w=this.productions_[S[1]][1],N.$=n[n.length-w],N._$={first_line:o[o.length-(w||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(w||1)].first_column,last_column:o[o.length-1].last_column},_&&(N._$.range=[o[o.length-(w||1)].range[0],o[o.length-1].range[1]]),void 0!==(k=this.performAction.apply(N,[l,h,c,p.yy,S[1],n,o].concat(u))))return k;w&&(s=s.slice(0,-1*w*2),n=n.slice(0,-1*w),o=o.slice(0,-1*w)),s.push(this.productions_[S[1]][0]),n.push(N.$),o.push(N._$),D=a[s[s.length-2]][s[s.length-1]],s.push(D);break;case 3:return!0}}return!0}),"parse")},f=function(){return{EOF:1,parseError:(0,r.K2)((function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)}),"parseError"),setInput:(0,r.K2)((function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,r.K2)((function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e}),"input"),unput:(0,r.K2)((function(e){var t=e.length,s=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,r.K2)((function(){return this._more=!0,this}),"more"),reject:(0,r.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,r.K2)((function(e){this.unput(this.match.slice(e))}),"less"),pastInput:(0,r.K2)((function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,r.K2)((function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,r.K2)((function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"}),"showPosition"),test_match:(0,r.K2)((function(e,t){var s,i,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(i=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],s=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var r in n)this[r]=n[r];return!1}return!1}),"test_match"),next:(0,r.K2)((function(){if(this.done)return this.EOF;var e,t,s,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),r=0;rt[0].length)){if(t=s,i=r,this.options.backtrack_lexer){if(!1!==(e=this.test_match(s,n[r])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,n[i]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,r.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,r.K2)((function(e){this.conditionStack.push(e)}),"begin"),popState:(0,r.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,r.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,r.K2)((function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"}),"topState"),pushState:(0,r.K2)((function(e){this.begin(e)}),"pushState"),stateStackSize:(0,r.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,r.K2)((function(e,t,s,i){switch(s){case 0:return 10;case 1:return e.getLogger().debug("Found space-block"),31;case 2:return e.getLogger().debug("Found nl-block"),31;case 3:return e.getLogger().debug("Found space-block"),29;case 4:e.getLogger().debug(".",t.yytext);break;case 5:e.getLogger().debug("_",t.yytext);break;case 6:return 5;case 7:return t.yytext=-1,28;case 8:return t.yytext=t.yytext.replace(/columns\s+/,""),e.getLogger().debug("COLUMNS (LEX)",t.yytext),28;case 9:case 77:case 78:case 100:this.pushState("md_string");break;case 10:return"MD_STR";case 11:case 35:case 80:this.popState();break;case 12:this.pushState("string");break;case 13:e.getLogger().debug("LEX: POPPING STR:",t.yytext),this.popState();break;case 14:return e.getLogger().debug("LEX: STR end:",t.yytext),"STR";case 15:return t.yytext=t.yytext.replace(/space\:/,""),e.getLogger().debug("SPACE NUM (LEX)",t.yytext),21;case 16:return t.yytext="1",e.getLogger().debug("COLUMNS (LEX)",t.yytext),21;case 17:return 43;case 18:return"LINKSTYLE";case 19:return"INTERPOLATE";case 20:return this.pushState("CLASSDEF"),40;case 21:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 22:return this.popState(),this.pushState("CLASSDEFID"),41;case 23:return this.popState(),42;case 24:return this.pushState("CLASS"),44;case 25:return this.popState(),this.pushState("CLASS_STYLE"),45;case 26:return this.popState(),46;case 27:return this.pushState("STYLE_STMNT"),47;case 28:return this.popState(),this.pushState("STYLE_DEFINITION"),48;case 29:return this.popState(),49;case 30:return this.pushState("acc_title"),"acc_title";case 31:return this.popState(),"acc_title_value";case 32:return this.pushState("acc_descr"),"acc_descr";case 33:return this.popState(),"acc_descr_value";case 34:this.pushState("acc_descr_multiline");break;case 36:return"acc_descr_multiline_value";case 37:return 30;case 38:case 39:case 41:case 42:case 45:return this.popState(),e.getLogger().debug("Lex: (("),"NODE_DEND";case 40:return this.popState(),e.getLogger().debug("Lex: ))"),"NODE_DEND";case 43:return this.popState(),e.getLogger().debug("Lex: (-"),"NODE_DEND";case 44:return this.popState(),e.getLogger().debug("Lex: -)"),"NODE_DEND";case 46:return this.popState(),e.getLogger().debug("Lex: ]]"),"NODE_DEND";case 47:return this.popState(),e.getLogger().debug("Lex: ("),"NODE_DEND";case 48:return this.popState(),e.getLogger().debug("Lex: ])"),"NODE_DEND";case 49:case 50:return this.popState(),e.getLogger().debug("Lex: /]"),"NODE_DEND";case 51:return this.popState(),e.getLogger().debug("Lex: )]"),"NODE_DEND";case 52:return this.popState(),e.getLogger().debug("Lex: )"),"NODE_DEND";case 53:return this.popState(),e.getLogger().debug("Lex: ]>"),"NODE_DEND";case 54:return this.popState(),e.getLogger().debug("Lex: ]"),"NODE_DEND";case 55:return e.getLogger().debug("Lexa: -)"),this.pushState("NODE"),36;case 56:return e.getLogger().debug("Lexa: (-"),this.pushState("NODE"),36;case 57:return e.getLogger().debug("Lexa: ))"),this.pushState("NODE"),36;case 58:case 60:case 61:case 62:case 65:return e.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;case 59:return e.getLogger().debug("Lex: ((("),this.pushState("NODE"),36;case 63:return e.getLogger().debug("Lexc: >"),this.pushState("NODE"),36;case 64:return e.getLogger().debug("Lexa: (["),this.pushState("NODE"),36;case 66:case 67:case 68:case 69:case 70:case 71:case 72:return this.pushState("NODE"),36;case 73:return e.getLogger().debug("Lexa: ["),this.pushState("NODE"),36;case 74:return this.pushState("BLOCK_ARROW"),e.getLogger().debug("LEX ARR START"),38;case 75:return e.getLogger().debug("Lex: NODE_ID",t.yytext),32;case 76:return e.getLogger().debug("Lex: EOF",t.yytext),8;case 79:return"NODE_DESCR";case 81:e.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 82:e.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 83:return e.getLogger().debug("LEX: NODE_DESCR:",t.yytext),"NODE_DESCR";case 84:e.getLogger().debug("LEX POPPING"),this.popState();break;case 85:e.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 86:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (right): dir:",t.yytext),"DIR";case 87:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (left):",t.yytext),"DIR";case 88:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (x):",t.yytext),"DIR";case 89:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (y):",t.yytext),"DIR";case 90:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (up):",t.yytext),"DIR";case 91:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (down):",t.yytext),"DIR";case 92:return t.yytext="]>",e.getLogger().debug("Lex (ARROW_DIR end):",t.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";case 93:return e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 94:case 95:case 96:return e.getLogger().debug("Lex: LINK",t.yytext),15;case 97:case 98:case 99:return e.getLogger().debug("Lex: START_LINK",t.yytext),this.pushState("LLABEL"),16;case 101:return e.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";case 102:return this.popState(),e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 103:case 104:return this.popState(),e.getLogger().debug("Lex: LINK",t.yytext),15;case 105:return e.getLogger().debug("Lex: COLON",t.yytext),t.yytext=t.yytext.slice(1),27}}),"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block\s+)/,/^(?:block\n+)/,/^(?:block:)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[29],inclusive:!1},STYLE_STMNT:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[23],inclusive:!1},CLASSDEF:{rules:[21,22],inclusive:!1},CLASS_STYLE:{rules:[26],inclusive:!1},CLASS:{rules:[25],inclusive:!1},LLABEL:{rules:[100,101,102,103,104],inclusive:!1},ARROW_DIR:{rules:[86,87,88,89,90,91,92],inclusive:!1},BLOCK_ARROW:{rules:[77,82,85],inclusive:!1},NODE:{rules:[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,78,81],inclusive:!1},md_string:{rules:[10,11,79,80],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[13,14,83,84],inclusive:!1},acc_descr_multiline:{rules:[35,36],inclusive:!1},acc_descr:{rules:[33],inclusive:!1},acc_title:{rules:[31],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,12,15,16,17,18,19,20,24,27,30,32,34,37,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,93,94,95,96,97,98,99,105],inclusive:!0}}}}();function m(){this.yy={}}return _.lexer=f,(0,r.K2)(m,"Parser"),m.prototype=_,_.Parser=m,new m}();d.parser=d;var u=d,g=new Map,p=[],y=new Map,b="color",_="fill",f=(0,r.D7)(),m=new Map,x=(0,r.K2)((e=>r.Y2.sanitizeText(e,f)),"sanitizeText"),L=(0,r.K2)((function(e,t=""){let s=m.get(e);s||(s={id:e,styles:[],textStyles:[]},m.set(e,s)),null!=t&&t.split(",").forEach((e=>{const t=e.replace(/([^;]*);/,"$1").trim();if(RegExp(b).exec(e)){const e=t.replace(_,"bgFill").replace(b,_);s.textStyles.push(e)}s.styles.push(t)}))}),"addStyleClass"),S=(0,r.K2)((function(e,t=""){const s=g.get(e);null!=t&&(s.styles=t.split(","))}),"addStyle2Node"),k=(0,r.K2)((function(e,t){e.split(",").forEach((function(e){let s=g.get(e);if(void 0===s){const t=e.trim();s={id:t,type:"na",children:[]},g.set(t,s)}s.classes||(s.classes=[]),s.classes.push(t)}))}),"setCssClass"),E=(0,r.K2)(((e,t)=>{const s=e.flat(),i=[];for(const e of s)if(e.label&&(e.label=x(e.label)),"classDef"!==e.type)if("applyClass"!==e.type)if("applyStyles"!==e.type)if("column-setting"===e.type)t.columns=e.columns??-1;else if("edge"===e.type){const t=(y.get(e.id)??0)+1;y.set(e.id,t),e.id=t+"-"+e.id,p.push(e)}else{e.label||("composite"===e.type?e.label="":e.label=e.id);const t=g.get(e.id);if(void 0===t?g.set(e.id,e):("na"!==e.type&&(t.type=e.type),e.label!==e.id&&(t.label=e.label)),e.children&&E(e.children,e),"space"===e.type){const t=e.width??1;for(let s=0;s{r.Rm.debug("Clear called"),(0,r.IU)(),D={id:"root",type:"composite",children:[],columns:-1},g=new Map([["root",D]]),w=[],m=new Map,p=[],y=new Map}),"clear");function N(e){switch(r.Rm.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return r.Rm.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function v(e){return r.Rm.debug("typeStr2Type",e),"=="===e?"thick":"normal"}function C(e){switch(e.trim()){case"--x":return"arrow_cross";case"--o":return"arrow_circle";default:return"arrow_point"}}(0,r.K2)(N,"typeStr2Type"),(0,r.K2)(v,"edgeTypeStr2Type"),(0,r.K2)(C,"edgeStrToEdgeData");var $=0,T=(0,r.K2)((()=>($++,"id-"+Math.random().toString(36).substr(2,12)+"-"+$)),"generateId"),R=(0,r.K2)((e=>{D.children=e,E(e,D),w=D.children}),"setHierarchy"),I=(0,r.K2)((e=>{const t=g.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1}),"getColumns"),z=(0,r.K2)((()=>[...g.values()]),"getBlocksFlat"),O=(0,r.K2)((()=>w||[]),"getBlocks"),K=(0,r.K2)((()=>p),"getEdges"),B=(0,r.K2)((e=>g.get(e)),"getBlock"),P=(0,r.K2)((e=>{g.set(e.id,e)}),"setBlock"),F=(0,r.K2)((()=>console),"getLogger"),M=(0,r.K2)((function(){return m}),"getClasses"),Y={getConfig:(0,r.K2)((()=>(0,r.zj)().block),"getConfig"),typeStr2Type:N,edgeTypeStr2Type:v,edgeStrToEdgeData:C,getLogger:F,getBlocksFlat:z,getBlocks:O,getEdges:K,setHierarchy:R,getBlock:B,setBlock:P,getColumns:I,getClasses:M,clear:A,generateId:T},X=(0,r.K2)(((e,t)=>{const s=a.A,i=s(e,"r"),n=s(e,"g"),r=s(e,"b");return l.A(i,n,r,t)}),"fade"),j=(0,r.K2)((e=>`.label {\n font-family: ${e.fontFamily};\n color: ${e.nodeTextColor||e.textColor};\n }\n .cluster-label text {\n fill: ${e.titleColor};\n }\n .cluster-label span,p {\n color: ${e.titleColor};\n }\n\n\n\n .label text,span,p {\n fill: ${e.nodeTextColor||e.textColor};\n color: ${e.nodeTextColor||e.textColor};\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${e.mainBkg};\n stroke: ${e.nodeBorder};\n stroke-width: 1px;\n }\n .flowchart-label text {\n text-anchor: middle;\n }\n // .flowchart-label .text-outer-tspan {\n // text-anchor: middle;\n // }\n // .flowchart-label .text-inner-tspan {\n // text-anchor: start;\n // }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${e.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${e.lineColor};\n stroke-width: 2.0px;\n }\n\n .flowchart-link {\n stroke: ${e.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${e.edgeLabelBackground};\n rect {\n opacity: 0.5;\n background-color: ${e.edgeLabelBackground};\n fill: ${e.edgeLabelBackground};\n }\n text-align: center;\n }\n\n /* For html labels only */\n .labelBkg {\n background-color: ${X(e.edgeLabelBackground,.5)};\n // background-color:\n }\n\n .node .cluster {\n // fill: ${X(e.mainBkg,.5)};\n fill: ${X(e.clusterBkg,.5)};\n stroke: ${X(e.clusterBorder,.2)};\n box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ${e.titleColor};\n }\n\n .cluster span,p {\n color: ${e.titleColor};\n }\n /* .cluster div {\n color: ${e.titleColor};\n } */\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ${e.fontFamily};\n font-size: 12px;\n background: ${e.tertiaryColor};\n border: 1px solid ${e.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .flowchartTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${e.textColor};\n }\n`),"getStyles"),W=(0,r.D7)()?.block?.padding??8;function U(e,t){if(0===e||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);return e<0?{px:t,py:0}:1===e?{px:0,py:t}:{px:t%e,py:Math.floor(t/e)}}(0,r.K2)(U,"calculateBlockPosition");var H=(0,r.K2)((e=>{let t=0,s=0;for(const i of e.children){const{width:n,height:o,x:a,y:l}=i.size??{width:0,height:0,x:0,y:0};r.Rm.debug("getMaxChildSize abc95 child:",i.id,"width:",n,"height:",o,"x:",a,"y:",l,i.type),"space"!==i.type&&(n>t&&(t=n/(e.widthInColumns??1)),o>s&&(s=o))}return{width:t,height:s}}),"getMaxChildSize");function G(e,t,s=0,i=0){r.Rm.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"sieblingWidth",s),e?.size?.width||(e.size={width:s,height:i,x:0,y:0});let n=0,o=0;if(e.children?.length>0){for(const s of e.children)G(s,t);const a=H(e);n=a.width,o=a.height,r.Rm.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",n,o);for(const t of e.children)t.size&&(r.Rm.debug(`abc95 Setting size of children of ${e.id} id=${t.id} ${n} ${o} ${JSON.stringify(t.size)}`),t.size.width=n*(t.widthInColumns??1)+W*((t.widthInColumns??1)-1),t.size.height=o,t.size.x=0,t.size.y=0,r.Rm.debug(`abc95 updating size of ${e.id} children child:${t.id} maxWidth:${n} maxHeight:${o}`));for(const s of e.children)G(s,t,n,o);const l=e.columns??-1;let c=0;for(const t of e.children)c+=t.widthInColumns??1;let h=e.children.length;l>0&&l0?Math.min(e.children.length,l):e.children.length;if(t>0){const s=(u-t*W-W)/t;r.Rm.debug("abc95 (growing to fit) width",e.id,u,e.size?.width,s);for(const t of e.children)t.size&&(t.size.width=s)}}e.size={width:u,height:g,x:0,y:0}}r.Rm.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}function q(e,t){r.Rm.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);const s=e.columns??-1;if(r.Rm.debug("layoutBlocks columns abc95",e.id,"=>",s,e),e.children&&e.children.length>0){const i=e?.children[0]?.size?.width??0,n=e.children.length*i+(e.children.length-1)*W;r.Rm.debug("widthOfChildren 88",n,"posX");let o=0;r.Rm.debug("abc91 block?.size?.x",e.id,e?.size?.x);let a=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-W,l=0;for(const i of e.children){const n=e;if(!i.size)continue;const{width:c,height:h}=i.size,{px:d,py:u}=U(s,o);if(u!=l&&(l=u,a=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-W,r.Rm.debug("New row in layout for block",e.id," and child ",i.id,l)),r.Rm.debug(`abc89 layout blocks (child) id: ${i.id} Pos: ${o} (px, py) ${d},${u} (${n?.size?.x},${n?.size?.y}) parent: ${n.id} width: ${c}${W}`),n.size){const e=c/2;i.size.x=a+W+e,r.Rm.debug(`abc91 layout blocks (calc) px, pyid:${i.id} startingPos=X${a} new startingPosX${i.size.x} ${e} padding=${W} width=${c} halfWidth=${e} => x:${i.size.x} y:${i.size.y} ${i.widthInColumns} (width * (child?.w || 1)) / 2 ${c*(i?.widthInColumns??1)/2}`),a=i.size.x+e,i.size.y=n.size.y-n.size.height/2+u*(h+W)+h/2+W,r.Rm.debug(`abc88 layout blocks (calc) px, pyid:${i.id}startingPosX${a}${W}${e}=>x:${i.size.x}y:${i.size.y}${i.widthInColumns}(width * (child?.w || 1)) / 2${c*(i?.widthInColumns??1)/2}`)}i.children&&q(i,t),o+=i?.widthInColumns??1,r.Rm.debug("abc88 columnsPos",i,o)}}r.Rm.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}function J(e,{minX:t,minY:s,maxX:i,maxY:n}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&"root"!==e.id){const{x:r,y:o,width:a,height:l}=e.size;r-a/2i&&(i=r+a/2),o+l/2>n&&(n=o+l/2)}if(e.children)for(const r of e.children)({minX:t,minY:s,maxX:i,maxY:n}=J(r,{minX:t,minY:s,maxX:i,maxY:n}));return{minX:t,minY:s,maxX:i,maxY:n}}function Z(e){const t=e.getBlock("root");if(!t)return;G(t,e,0,0),q(t,e),r.Rm.debug("getBlocks",JSON.stringify(t,null,2));const{minX:s,minY:i,maxX:n,maxY:o}=J(t);return{x:s,y:i,width:n-s,height:o-i}}function Q(e,t,s=!1){const i=e;let o="default";(i?.classes?.length||0)>0&&(o=(i?.classes??[]).join(" ")),o+=" flowchart-label";let a,l=0,c="";switch(i.type){case"round":l=5,c="rect";break;case"composite":l=0,c="composite",a=0;break;case"square":case"group":default:c="rect";break;case"diamond":c="question";break;case"hexagon":c="hexagon";break;case"block_arrow":c="block_arrow";break;case"odd":case"rect_left_inv_arrow":c="rect_left_inv_arrow";break;case"lean_right":c="lean_right";break;case"lean_left":c="lean_left";break;case"trapezoid":c="trapezoid";break;case"inv_trapezoid":c="inv_trapezoid";break;case"circle":c="circle";break;case"ellipse":c="ellipse";break;case"stadium":c="stadium";break;case"subroutine":c="subroutine";break;case"cylinder":c="cylinder";break;case"doublecircle":c="doublecircle"}const h=(0,n.sM)(i?.styles??[]),d=i.label,u=i.size??{width:0,height:0,x:0,y:0};return{labelStyle:h.labelStyle,shape:c,labelText:d,rx:l,ry:l,class:o,style:h.style,id:i.id,directions:i.directions,width:u.width,height:u.height,x:u.x,y:u.y,positioned:s,intersect:void 0,type:i.type,padding:a??(0,r.zj)()?.block?.padding??0}}async function V(e,t,s){const n=Q(t,0,!1);if("group"===n.type)return;const o=(0,r.zj)(),a=await(0,i.on)(e,n,{config:o}),l=a.node().getBBox(),c=s.getBlock(n.id);c.size={width:l.width,height:l.height,x:0,y:0,node:a},s.setBlock(c),a.remove()}async function ee(e,t,s){const n=Q(t,0,!0);if("space"!==s.getBlock(n.id).type){const s=(0,r.zj)();await(0,i.on)(e,n,{config:s}),t.intersect=n?.intersect,(0,i.U_)(n)}}async function te(e,t,s,i){for(const n of t)await i(e,n,s),n.children&&await te(e,n.children,s,i)}async function se(e,t,s){await te(e,t,s,V)}async function ie(e,t,s){await te(e,t,s,ee)}async function ne(e,t,s,n,r){const o=new h.T({multigraph:!0,compound:!0});o.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(const e of s)e.size&&o.setNode(e.id,{width:e.size.width,height:e.size.height,intersect:e.intersect});for(const s of t)if(s.start&&s.end){const t=n.getBlock(s.start),a=n.getBlock(s.end);if(t?.size&&a?.size){const n=t.size,l=a.size,c=[{x:n.x,y:n.y},{x:n.x+(l.x-n.x)/2,y:n.y+(l.y-n.y)/2},{x:l.x,y:l.y}];(0,i.Jo)(e,{v:s.start,w:s.end,name:s.id},{...s,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:c,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",o,r),s.label&&(await(0,i.jP)(e,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:c,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),(0,i.T_)({...s,x:c[1].x,y:c[1].y},{originalPath:c}))}}}(0,r.K2)(G,"setBlockSizes"),(0,r.K2)(q,"layoutBlocks"),(0,r.K2)(J,"findBounds"),(0,r.K2)(Z,"layout"),(0,r.K2)(Q,"getNodeFromBlock"),(0,r.K2)(V,"calculateBlockSize"),(0,r.K2)(ee,"insertBlockPositioned"),(0,r.K2)(te,"performOperations"),(0,r.K2)(se,"calculateBlockSizes"),(0,r.K2)(ie,"insertBlocks"),(0,r.K2)(ne,"insertEdges");var re=(0,r.K2)((function(e,t){return t.db.getClasses()}),"getClasses"),oe={parser:u,db:Y,renderer:{draw:(0,r.K2)((async function(e,t,s,n){const{securityLevel:o,block:a}=(0,r.zj)(),l=n.db;let h;"sandbox"===o&&(h=(0,c.Ltv)("#i"+t));const d="sandbox"===o?(0,c.Ltv)(h.nodes()[0].contentDocument.body):(0,c.Ltv)("body"),u="sandbox"===o?d.select(`[id="${t}"]`):(0,c.Ltv)(`[id="${t}"]`);(0,i.g0)(u,["point","circle","cross"],n.type,t);const g=l.getBlocks(),p=l.getBlocksFlat(),y=l.getEdges(),b=u.insert("g").attr("class","block");await se(b,g,l);const _=Z(l);if(await ie(b,g,l),await ne(b,y,p,l,t),_){const e=_,t=Math.max(1,Math.round(e.width/e.height*.125)),s=e.height+t+10,i=e.width+10,{useMaxWidth:n}=a;(0,r.a$)(u,s,i,!!n),r.Rm.debug("Here Bounds",_,e),u.attr("viewBox",`${e.x-5} ${e.y-5} ${e.width+10} ${e.height+10}`)}}),"draw"),getClasses:re},styles:j}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/720-970f726e.chunk.min.js b/themes/hugo-geekdoc/static/js/720-970f726e.chunk.min.js new file mode 100644 index 000000000..158ba0ef8 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/720-970f726e.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[720],{9720:(e,c,k)=>{k.d(c,{createArchitectureServices:()=>r.S});var r=k(9936);k(9369)}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/723-47eb515a.chunk.min.js b/themes/hugo-geekdoc/static/js/723-47eb515a.chunk.min.js new file mode 100644 index 000000000..128f89722 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/723-47eb515a.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[723],{7723:(e,c,k)=>{k.d(c,{createPieServices:()=>s.f});var s=k(8685);k(9369)}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/731-7b5d66f3.chunk.min.js b/themes/hugo-geekdoc/static/js/731-7b5d66f3.chunk.min.js new file mode 100644 index 000000000..5b522e1e5 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/731-7b5d66f3.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[731],{9850:(e,t,n)=>{t.Qi=t.XO=void 0;const r=n(9590),i=n(8585),s=n(2676);var a;!function(e){e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:s.Event.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:s.Event.None}),e.is=function(t){const n=t;return n&&(n===e.None||n===e.Cancelled||i.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}}(a||(t.XO=a={}));const o=Object.freeze((function(e,t){const n=(0,r.default)().timer.setTimeout(e.bind(t),0);return{dispose(){n.dispose()}}}));class c{constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?o:(this._emitter||(this._emitter=new s.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}}t.Qi=class{get token(){return this._token||(this._token=new c),this._token}cancel(){this._token?this._token.cancel():this._token=a.Cancelled}dispose(){this._token?this._token instanceof c&&this._token.dispose():this._token=a.None}}},2676:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Emitter=t.Event=void 0;const r=n(9590);var i;!function(e){const t={dispose(){}};e.None=function(){return t}}(i||(t.Event=i={}));class s{add(e,t=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(t),Array.isArray(n)&&n.push({dispose:()=>this.remove(e,t)})}remove(e,t=null){if(!this._callbacks)return;let n=!1;for(let r=0,i=this._callbacks.length;r{this._callbacks||(this._callbacks=new s),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,t);const r={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,t),r.dispose=a._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(n)&&n.push(r),r}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}}t.Emitter=a,a._noop=function(){}},8585:(e,t)=>{function n(e){return"string"==typeof e||e instanceof String}function r(e){return Array.isArray(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.stringArray=t.array=t.func=t.error=t.number=t.string=t.boolean=void 0,t.boolean=function(e){return!0===e||!1===e},t.string=n,t.number=function(e){return"number"==typeof e||e instanceof Number},t.error=function(e){return e instanceof Error},t.func=function(e){return"function"==typeof e},t.array=r,t.stringArray=function(e){return r(e)&&e.every((e=>n(e)))}},9590:(e,t)=>{let n;function r(){if(void 0===n)throw new Error("No runtime abstraction layer installed");return n}Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.install=function(e){if(void 0===e)throw new Error("No runtime abstraction layer provided");n=e}}(r||(r={})),t.default=r},7021:(e,t,n)=>{n.d(t,{v:()=>o});var r=n(9369),i=n(3707),s=class extends r.mR{static{(0,r.K2)(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},a={parser:{TokenBuilder:(0,r.K2)((()=>new s),"TokenBuilder"),ValueConverter:(0,r.K2)((()=>new r.Tm),"ValueConverter")}};function o(e=i.DD){const t=(0,i.WQ)((0,i.uM)(e),r.sr),n=(0,i.WQ)((0,i.tG)({shared:t}),r.e5,a);return t.ServiceRegistry.register(n),{shared:t,Info:n}}(0,r.K2)(o,"createInfoServices")},8685:(e,t,n)=>{n.d(t,{f:()=>c});var r=n(9369),i=n(3707),s=class extends r.mR{static{(0,r.K2)(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},a=class extends r.dg{static{(0,r.K2)(this,"PieValueConverter")}runCustomConverter(e,t,n){if("PIE_SECTION_LABEL"===e.name)return t.replace(/"/g,"").trim()}},o={parser:{TokenBuilder:(0,r.K2)((()=>new s),"TokenBuilder"),ValueConverter:(0,r.K2)((()=>new a),"ValueConverter")}};function c(e=i.DD){const t=(0,i.WQ)((0,i.uM)(e),r.sr),n=(0,i.WQ)((0,i.tG)({shared:t}),r.KX,o);return t.ServiceRegistry.register(n),{shared:t,Pie:n}}(0,r.K2)(c,"createPieServices")},1609:(e,t,n)=>{n.d(t,{$:()=>o});var r=n(9369),i=n(3707),s=class extends r.mR{static{(0,r.K2)(this,"PacketTokenBuilder")}constructor(){super(["packet-beta"])}},a={parser:{TokenBuilder:(0,r.K2)((()=>new s),"TokenBuilder"),ValueConverter:(0,r.K2)((()=>new r.Tm),"ValueConverter")}};function o(e=i.DD){const t=(0,i.WQ)((0,i.uM)(e),r.sr),n=(0,i.WQ)((0,i.tG)({shared:t}),r.AM,a);return t.ServiceRegistry.register(n),{shared:t,Packet:n}}(0,r.K2)(o,"createPacketServices")},9936:(e,t,n)=>{n.d(t,{S:()=>c});var r=n(9369),i=n(3707),s=class extends r.mR{static{(0,r.K2)(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},a=class extends r.dg{static{(0,r.K2)(this,"ArchitectureValueConverter")}runCustomConverter(e,t,n){return"ARCH_ICON"===e.name?t.replace(/[()]/g,"").trim():"ARCH_TEXT_ICON"===e.name?t.replace(/["()]/g,""):"ARCH_TITLE"===e.name?t.replace(/[[\]]/g,"").trim():void 0}},o={parser:{TokenBuilder:(0,r.K2)((()=>new s),"TokenBuilder"),ValueConverter:(0,r.K2)((()=>new a),"ValueConverter")}};function c(e=i.DD){const t=(0,i.WQ)((0,i.uM)(e),r.sr),n=(0,i.WQ)((0,i.tG)({shared:t}),r.jE,o);return t.ServiceRegistry.register(n),{shared:t,Architecture:n}}(0,r.K2)(c,"createArchitectureServices")},2785:(e,t,n)=>{n.d(t,{b:()=>o});var r=n(9369),i=n(3707),s=class extends r.mR{static{(0,r.K2)(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},a={parser:{TokenBuilder:(0,r.K2)((()=>new s),"TokenBuilder"),ValueConverter:(0,r.K2)((()=>new r.Tm),"ValueConverter")}};function o(e=i.DD){const t=(0,i.WQ)((0,i.uM)(e),r.sr),n=(0,i.WQ)((0,i.tG)({shared:t}),r.eZ,a);return t.ServiceRegistry.register(n),{shared:t,GitGraph:n}}(0,r.K2)(o,"createGitGraphServices")},9369:(e,t,n)=>{n.d(t,{AM:()=>$,K2:()=>s,KX:()=>w,Tm:()=>P,dg:()=>_,e5:()=>C,eZ:()=>O,jE:()=>L,mR:()=>M,sr:()=>N});var r=n(3707),i=Object.defineProperty,s=(e,t)=>i(e,"name",{value:t,configurable:!0});s((function(e){return g.isInstance(e,"Architecture")}),"isArchitecture");var a="Branch";s((function(e){return g.isInstance(e,a)}),"isBranch");var o="Commit";s((function(e){return g.isInstance(e,o)}),"isCommit"),s((function(e){return g.isInstance(e,"Common")}),"isCommon");var c="GitGraph";s((function(e){return g.isInstance(e,c)}),"isGitGraph"),s((function(e){return g.isInstance(e,"Info")}),"isInfo");var l="Merge";s((function(e){return g.isInstance(e,l)}),"isMerge"),s((function(e){return g.isInstance(e,"Packet")}),"isPacket"),s((function(e){return g.isInstance(e,"PacketBlock")}),"isPacketBlock"),s((function(e){return g.isInstance(e,"Pie")}),"isPie"),s((function(e){return g.isInstance(e,"PieSection")}),"isPieSection");var u,d,h,f,p,m=class extends r.kD{static{s(this,"MermaidAstReflection")}getAllTypes(){return["Architecture","Branch","Checkout","CherryPicking","Commit","Common","Direction","Edge","GitGraph","Group","Info","Junction","Merge","Packet","PacketBlock","Pie","PieSection","Service","Statement"]}computeIsSubtype(e,t){switch(e){case a:case"Checkout":case"CherryPicking":case o:case l:return this.isSubtype("Statement",t);case"Direction":return this.isSubtype(c,t);default:return!1}}getReferenceType(e){const t=`${e.container.$type}:${e.property}`;throw new Error(`${t} is not a valid reference id.`)}getTypeMetaData(e){switch(e){case"Architecture":return{name:"Architecture",properties:[{name:"accDescr"},{name:"accTitle"},{name:"edges",defaultValue:[]},{name:"groups",defaultValue:[]},{name:"junctions",defaultValue:[]},{name:"services",defaultValue:[]},{name:"title"}]};case"Branch":return{name:"Branch",properties:[{name:"name"},{name:"order"}]};case"Checkout":return{name:"Checkout",properties:[{name:"branch"}]};case"CherryPicking":return{name:"CherryPicking",properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case"Commit":return{name:"Commit",properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case"Common":return{name:"Common",properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case"Edge":return{name:"Edge",properties:[{name:"lhsDir"},{name:"lhsGroup",defaultValue:!1},{name:"lhsId"},{name:"lhsInto",defaultValue:!1},{name:"rhsDir"},{name:"rhsGroup",defaultValue:!1},{name:"rhsId"},{name:"rhsInto",defaultValue:!1},{name:"title"}]};case"GitGraph":return{name:"GitGraph",properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case"Group":return{name:"Group",properties:[{name:"icon"},{name:"id"},{name:"in"},{name:"title"}]};case"Info":return{name:"Info",properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case"Junction":return{name:"Junction",properties:[{name:"id"},{name:"in"}]};case"Merge":return{name:"Merge",properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case"Packet":return{name:"Packet",properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case"PacketBlock":return{name:"PacketBlock",properties:[{name:"end"},{name:"label"},{name:"start"}]};case"Pie":return{name:"Pie",properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case"PieSection":return{name:"PieSection",properties:[{name:"label"},{name:"value"}]};case"Service":return{name:"Service",properties:[{name:"icon"},{name:"iconText"},{name:"id"},{name:"in"},{name:"title"}]};case"Direction":return{name:"Direction",properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};default:return{name:e,properties:[]}}}},g=new m,y=s((()=>u??(u=(0,r.y0)('{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","name":"Info","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}'))),"InfoGrammar"),A=s((()=>d??(d=(0,r.y0)('{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","name":"Packet","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"packet-beta"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"?"},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}'))),"PacketGrammar"),T=s((()=>h??(h=(0,r.y0)('{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","name":"Pie","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"PIE_SECTION_LABEL","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]+\\"/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PIE_SECTION_VALUE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/(0|[1-9][0-9]*)(\\\\.[0-9]+)?/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}'))),"PieGrammar"),v=s((()=>f??(f=(0,r.y0)('{"$type":"Grammar","isDeclared":true,"name":"Architecture","imports":[],"rules":[{"$type":"ParserRule","name":"Architecture","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","fragment":true,"definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"LeftPort","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"RightPort","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Arrow","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_ID","definition":{"$type":"RegexToken","regex":"/[\\\\w]+/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TEXT_ICON","definition":{"$type":"RegexToken","regex":"/\\\\(\\"[^\\"]+\\"\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}'))),"ArchitectureGrammar"),R=s((()=>p??(p=(0,r.y0)('{"$type":"Grammar","isDeclared":true,"name":"GitGraph","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"rules":[{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"ParserRule","name":"GitGraph","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+(?=\\\\s)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[]}'))),"GitGraphGrammar"),E={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},k={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},x={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},I={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},S={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},N={AstReflection:s((()=>new m),"AstReflection")},C={Grammar:s((()=>y()),"Grammar"),LanguageMetaData:s((()=>E),"LanguageMetaData"),parser:{}},$={Grammar:s((()=>A()),"Grammar"),LanguageMetaData:s((()=>k),"LanguageMetaData"),parser:{}},w={Grammar:s((()=>T()),"Grammar"),LanguageMetaData:s((()=>x),"LanguageMetaData"),parser:{}},L={Grammar:s((()=>v()),"Grammar"),LanguageMetaData:s((()=>I),"LanguageMetaData"),parser:{}},O={Grammar:s((()=>R()),"Grammar"),LanguageMetaData:s((()=>S),"LanguageMetaData"),parser:{}},b={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},_=class extends r.dM{static{s(this,"AbstractMermaidValueConverter")}runConverter(e,t,n){let r=this.runCommonConverter(e,t,n);return void 0===r&&(r=this.runCustomConverter(e,t,n)),void 0===r?super.runConverter(e,t,n):r}runCommonConverter(e,t,n){const r=b[e.name];if(void 0===r)return;const i=r.exec(t);return null!==i?void 0!==i[1]?i[1].trim().replace(/[\t ]{2,}/gm," "):void 0!==i[2]?i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,"\n"):void 0:void 0}},P=class extends _{static{s(this,"CommonValueConverter")}runCustomConverter(e,t,n){}},M=class extends r.QU{static{s(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,n){const r=super.buildKeywordTokens(e,t,n);return r.forEach((e=>{this.keywords.has(e.name)&&void 0!==e.PATTERN&&(e.PATTERN=new RegExp(e.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))})),r}};(class extends M{static{s(this,"CommonTokenBuilder")}})},8731:(e,t,n)=>{n.d(t,{qg:()=>a}),n(2785),n(7021),n(1609),n(8685),n(9936);var r=n(9369),i={},s={info:(0,r.K2)((async()=>{const{createInfoServices:e}=await n.e(890).then(n.bind(n,890)),t=e().Info.parser.LangiumParser;i.info=t}),"info"),packet:(0,r.K2)((async()=>{const{createPacketServices:e}=await n.e(452).then(n.bind(n,4071)),t=e().Packet.parser.LangiumParser;i.packet=t}),"packet"),pie:(0,r.K2)((async()=>{const{createPieServices:e}=await n.e(723).then(n.bind(n,7723)),t=e().Pie.parser.LangiumParser;i.pie=t}),"pie"),architecture:(0,r.K2)((async()=>{const{createArchitectureServices:e}=await n.e(720).then(n.bind(n,9720)),t=e().Architecture.parser.LangiumParser;i.architecture=t}),"architecture"),gitGraph:(0,r.K2)((async()=>{const{createGitGraphServices:e}=await n.e(387).then(n.bind(n,2387)),t=e().GitGraph.parser.LangiumParser;i.gitGraph=t}),"gitGraph")};async function a(e,t){const n=s[e];if(!n)throw new Error(`Unknown diagram type: ${e}`);i[e]||await n();const r=i[e].parse(t);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new o(r);return r.value}(0,r.K2)(a,"parse");var o=class extends Error{constructor(e){super(`Parsing failed: ${e.lexerErrors.map((e=>e.message)).join("\n")} ${e.parserErrors.map((e=>e.message)).join("\n")}`),this.result=e}static{(0,r.K2)(this,"MermaidParseError")}}},3707:(e,t,n)=>{function r(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$type}function i(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText}function s(e){return"object"==typeof e&&null!==e&&r(e.container)&&i(e.reference)&&"string"==typeof e.message}n.d(t,{kD:()=>a,QU:()=>Ic,dM:()=>Sc,DD:()=>lu,tG:()=>eu,uM:()=>tu,WQ:()=>nu,y0:()=>hu});class a{constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,t){return r(e)&&this.isSubtype(e.$type,t)}isSubtype(e,t){if(e===t)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});const r=n[t];if(void 0!==r)return r;{const r=this.computeIsSubtype(e,t);return n[t]=r,r}}getAllSubTypes(e){const t=this.allSubtypes[e];if(t)return t;{const t=this.getAllTypes(),n=[];for(const r of t)this.isSubtype(r,e)&&n.push(r);return this.allSubtypes[e]=n,n}}}function o(e){return"object"==typeof e&&null!==e&&Array.isArray(e.content)}function c(e){return"object"==typeof e&&null!==e&&"object"==typeof e.tokenType}function l(e){return o(e)&&"string"==typeof e.fullText}class u{constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){const e=this.iterator();return Boolean(e.next().done)}count(){const e=this.iterator();let t=0,n=e.next();for(;!n.done;)t++,n=e.next();return t}toArray(){const e=[],t=this.iterator();let n;do{n=t.next(),void 0!==n.value&&e.push(n.value)}while(!n.done);return e}toSet(){return new Set(this)}toMap(e,t){const n=this.map((n=>[e?e(n):n,t?t(n):n]));return new Map(n)}toString(){return this.join()}concat(e){const t=e[Symbol.iterator]();return new u((()=>({first:this.startFn(),firstDone:!1})),(e=>{let n;if(!e.firstDone){do{if(n=this.nextFn(e.first),!n.done)return n}while(!n.done);e.firstDone=!0}do{if(n=t.next(),!n.done)return n}while(!n.done);return f}))}join(e=","){const t=this.iterator();let n,r="",i=!1;do{n=t.next(),n.done||(i&&(r+=e),r+="string"==typeof(s=n.value)?s:void 0===s?"undefined":"function"==typeof s.toString?s.toString():Object.prototype.toString.call(s)),i=!0}while(!n.done);var s;return r}indexOf(e,t=0){const n=this.iterator();let r=0,i=n.next();for(;!i.done;){if(r>=t&&i.value===e)return r;i=n.next(),r++}return-1}every(e){const t=this.iterator();let n=t.next();for(;!n.done;){if(!e(n.value))return!1;n=t.next()}return!0}some(e){const t=this.iterator();let n=t.next();for(;!n.done;){if(e(n.value))return!0;n=t.next()}return!1}forEach(e){const t=this.iterator();let n=0,r=t.next();for(;!r.done;)e(r.value,n),r=t.next(),n++}map(e){return new u(this.startFn,(t=>{const{done:n,value:r}=this.nextFn(t);return n?f:{done:!1,value:e(r)}}))}filter(e){return new u(this.startFn,(t=>{let n;do{if(n=this.nextFn(t),!n.done&&e(n.value))return n}while(!n.done);return f}))}nonNullable(){return this.filter((e=>null!=e))}reduce(e,t){const n=this.iterator();let r=t,i=n.next();for(;!i.done;)r=void 0===r?i.value:e(r,i.value),i=n.next();return r}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,n){const r=e.next();if(r.done)return n;const i=this.recursiveReduce(e,t,n);return void 0===i?r.value:t(i,r.value)}find(e){const t=this.iterator();let n=t.next();for(;!n.done;){if(e(n.value))return n.value;n=t.next()}}findIndex(e){const t=this.iterator();let n=0,r=t.next();for(;!r.done;){if(e(r.value))return n;r=t.next(),n++}return-1}includes(e){const t=this.iterator();let n=t.next();for(;!n.done;){if(n.value===e)return!0;n=t.next()}return!1}flatMap(e){return new u((()=>({this:this.startFn()})),(t=>{do{if(t.iterator){const e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}const{done:n,value:r}=this.nextFn(t.this);if(!n){const n=e(r);if(!d(n))return{done:!1,value:n};t.iterator=n[Symbol.iterator]()}}while(t.iterator);return f}))}flat(e){if(void 0===e&&(e=1),e<=0)return this;const t=e>1?this.flat(e-1):this;return new u((()=>({this:t.startFn()})),(e=>{do{if(e.iterator){const t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}const{done:n,value:r}=t.nextFn(e.this);if(!n){if(!d(r))return{done:!1,value:r};e.iterator=r[Symbol.iterator]()}}while(e.iterator);return f}))}head(){const e=this.iterator().next();if(!e.done)return e.value}tail(e=1){return new u((()=>{const t=this.startFn();for(let n=0;n({size:0,state:this.startFn()})),(t=>(t.size++,t.size>e?f:this.nextFn(t.state))))}distinct(e){const t=new Set;return this.filter((n=>{const r=e?e(n):n;return!t.has(r)&&(t.add(r),!0)}))}exclude(e,t){const n=new Set;for(const r of e){const e=t?t(r):r;n.add(e)}return this.filter((e=>{const r=t?t(e):e;return!n.has(r)}))}}function d(e){return!!e&&"function"==typeof e[Symbol.iterator]}const h=new u((()=>{}),(()=>f)),f=Object.freeze({done:!0,value:void 0});function p(...e){if(1===e.length){const t=e[0];if(t instanceof u)return t;if(d(t))return new u((()=>t[Symbol.iterator]()),(e=>e.next()));if("number"==typeof t.length)return new u((()=>({index:0})),(e=>e.index1?new u((()=>({collIndex:0,arrIndex:0})),(t=>{do{if(t.iterator){const e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}if(t.array){if(t.arrIndex({iterators:(null==n?void 0:n.includeRoot)?[[e][Symbol.iterator]()]:[t(e)[Symbol.iterator]()],pruned:!1})),(e=>{for(e.pruned&&(e.iterators.pop(),e.pruned=!1);e.iterators.length>0;){const n=e.iterators[e.iterators.length-1].next();if(!n.done)return e.iterators.push(t(n.value)[Symbol.iterator]()),n;e.iterators.pop()}return f}))}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}var g,y;function A(e){return new m(e,(e=>o(e)?e.content:[]),{includeRoot:!0})}function T(e){return{start:{character:e.startColumn-1,line:e.startLine-1},end:{character:e.endColumn,line:e.endLine-1}}}function v(e){if(!e)return;const{offset:t,end:n,range:r}=e;return{range:r,offset:t,end:n,length:n-t}}!function(e){e.sum=function(e){return e.reduce(((e,t)=>e+t),0)},e.product=function(e){return e.reduce(((e,t)=>e*t),0)},e.min=function(e){return e.reduce(((e,t)=>Math.min(e,t)))},e.max=function(e){return e.reduce(((e,t)=>Math.max(e,t)))}}(g||(g={})),function(e){e[e.Before=0]="Before",e[e.After=1]="After",e[e.OverlapFront=2]="OverlapFront",e[e.OverlapBack=3]="OverlapBack",e[e.Inside=4]="Inside"}(y||(y={}));const R=/^[\w\p{L}]$/u;function E(e,t){return c(e)&&t.includes(e.tokenType.name)}class k extends Error{constructor(e,t){super(e?`${t} at ${e.range.start.line}:${e.range.start.character}`:t)}}function x(e){throw new Error("Error! The input value was not handled.")}const I="AbstractRule",S="AbstractType",N="Condition",C="ValueLiteral",$="AbstractElement",w="BooleanLiteral",L="Conjunction",O="Disjunction",b="InferredType";function _(e){return ve.isInstance(e,b)}const P="Interface";function M(e){return ve.isInstance(e,P)}const D="Negation",U="ParameterReference",F="ParserRule";function G(e){return ve.isInstance(e,F)}const K="ReturnType",B="SimpleType",j="TerminalRule";function V(e){return ve.isInstance(e,j)}const H="Type";function W(e){return ve.isInstance(e,H)}const z="Action";function Y(e){return ve.isInstance(e,z)}const X="Alternatives";function q(e){return ve.isInstance(e,X)}const Q="Assignment";function J(e){return ve.isInstance(e,Q)}const Z="CharacterRange",ee="CrossReference";function te(e){return ve.isInstance(e,ee)}const ne="EndOfFile",re="Group";function ie(e){return ve.isInstance(e,re)}const se="Keyword";function ae(e){return ve.isInstance(e,se)}const oe="NegatedToken",ce="RegexToken",le="RuleCall";function ue(e){return ve.isInstance(e,le)}const de="TerminalAlternatives",he="TerminalGroup",fe="TerminalRuleCall";function pe(e){return ve.isInstance(e,fe)}const me="UnorderedGroup";function ge(e){return ve.isInstance(e,me)}const ye="UntilToken",Ae="Wildcard";class Te extends a{getAllTypes(){return["AbstractElement","AbstractRule","AbstractType","Action","Alternatives","ArrayLiteral","ArrayType","Assignment","BooleanLiteral","CharacterRange","Condition","Conjunction","CrossReference","Disjunction","EndOfFile","Grammar","GrammarImport","Group","InferredType","Interface","Keyword","NamedArgument","NegatedToken","Negation","NumberLiteral","Parameter","ParameterReference","ParserRule","ReferenceType","RegexToken","ReturnType","RuleCall","SimpleType","StringLiteral","TerminalAlternatives","TerminalGroup","TerminalRule","TerminalRuleCall","Type","TypeAttribute","TypeDefinition","UnionType","UnorderedGroup","UntilToken","ValueLiteral","Wildcard"]}computeIsSubtype(e,t){switch(e){case z:case X:case Q:case Z:case ee:case ne:case re:case se:case oe:case ce:case le:case de:case he:case fe:case me:case ye:case Ae:return this.isSubtype($,t);case"ArrayLiteral":case"NumberLiteral":case"StringLiteral":return this.isSubtype(C,t);case"ArrayType":case"ReferenceType":case B:case"UnionType":return this.isSubtype("TypeDefinition",t);case w:return this.isSubtype(N,t)||this.isSubtype(C,t);case L:case O:case D:case U:return this.isSubtype(N,t);case b:case P:case H:return this.isSubtype(S,t);case F:return this.isSubtype(I,t)||this.isSubtype(S,t);case j:return this.isSubtype(I,t);default:return!1}}getReferenceType(e){const t=`${e.container.$type}:${e.property}`;switch(t){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return S;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return I;case"Grammar:usedGrammars":return"Grammar";case"NamedArgument:parameter":case"ParameterReference:parameter":return"Parameter";case"TerminalRuleCall:rule":return j;default:throw new Error(`${t} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case"AbstractElement":return{name:"AbstractElement",properties:[{name:"cardinality"},{name:"lookahead"}]};case"ArrayLiteral":return{name:"ArrayLiteral",properties:[{name:"elements",defaultValue:[]}]};case"ArrayType":return{name:"ArrayType",properties:[{name:"elementType"}]};case"BooleanLiteral":return{name:"BooleanLiteral",properties:[{name:"true",defaultValue:!1}]};case"Conjunction":return{name:"Conjunction",properties:[{name:"left"},{name:"right"}]};case"Disjunction":return{name:"Disjunction",properties:[{name:"left"},{name:"right"}]};case"Grammar":return{name:"Grammar",properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case"GrammarImport":return{name:"GrammarImport",properties:[{name:"path"}]};case"InferredType":return{name:"InferredType",properties:[{name:"name"}]};case"Interface":return{name:"Interface",properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case"NamedArgument":return{name:"NamedArgument",properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case"Negation":return{name:"Negation",properties:[{name:"value"}]};case"NumberLiteral":return{name:"NumberLiteral",properties:[{name:"value"}]};case"Parameter":return{name:"Parameter",properties:[{name:"name"}]};case"ParameterReference":return{name:"ParameterReference",properties:[{name:"parameter"}]};case"ParserRule":return{name:"ParserRule",properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case"ReferenceType":return{name:"ReferenceType",properties:[{name:"referenceType"}]};case"ReturnType":return{name:"ReturnType",properties:[{name:"name"}]};case"SimpleType":return{name:"SimpleType",properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case"StringLiteral":return{name:"StringLiteral",properties:[{name:"value"}]};case"TerminalRule":return{name:"TerminalRule",properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case"Type":return{name:"Type",properties:[{name:"name"},{name:"type"}]};case"TypeAttribute":return{name:"TypeAttribute",properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case"UnionType":return{name:"UnionType",properties:[{name:"types",defaultValue:[]}]};case"Action":return{name:"Action",properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case"Alternatives":return{name:"Alternatives",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"Assignment":return{name:"Assignment",properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case"CharacterRange":return{name:"CharacterRange",properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case"CrossReference":return{name:"CrossReference",properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case"EndOfFile":return{name:"EndOfFile",properties:[{name:"cardinality"},{name:"lookahead"}]};case"Group":return{name:"Group",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case"Keyword":return{name:"Keyword",properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case"NegatedToken":return{name:"NegatedToken",properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case"RegexToken":return{name:"RegexToken",properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case"RuleCall":return{name:"RuleCall",properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case"TerminalAlternatives":return{name:"TerminalAlternatives",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"TerminalGroup":return{name:"TerminalGroup",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"TerminalRuleCall":return{name:"TerminalRuleCall",properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case"UnorderedGroup":return{name:"UnorderedGroup",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"UntilToken":return{name:"UntilToken",properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case"Wildcard":return{name:"Wildcard",properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:e,properties:[]}}}}const ve=new Te;function Re(e,t){let n=e;for(;n;){if(t(n))return n;n=n.$container}}function Ee(e){const t=function(e){for(;e.$container;)e=e.$container;return e}(e),n=t.$document;if(!n)throw new Error("AST node has no document.");return n}function ke(e,t){if(!e)throw new Error("Node must be an AstNode.");const n=null==t?void 0:t.range;return new u((()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0})),(t=>{for(;t.keyIndexke(e,t)))}function Ie(e,t){if(!e)throw new Error("Root node must be an AstNode.");return(null==t?void 0:t.range)&&!Se(e,t.range)?new m(e,(()=>[])):new m(e,(e=>ke(e,t)),{includeRoot:!0})}function Se(e,t){var n;if(!t)return!0;const r=null===(n=e.$cstNode)||void 0===n?void 0:n.range;return!!r&&function(e,t){const n=function(e,t){if(e.end.linet.end.line||e.start.line===t.end.line&&e.start.character>t.end.character)return y.After;const n=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,r=e.end.liney.After}(r,t)}function Ne(e){return new u((()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0})),(t=>{for(;t.keyIndex=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}class Be{visitChildren(e){for(const t in e){const n=e[t];e.hasOwnProperty(t)&&(void 0!==n.type?this.visit(n):Array.isArray(n)&&n.forEach((e=>{this.visit(e)}),this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e)}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}const je=/\r?\n/gm,Ve=new Ke,He=new class extends Be{constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){const t=String.fromCharCode(e.value);if(this.multiline||"\n"!==t||(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const e=Ye(t);this.endRegexpStack.push(e),this.isStarting&&(this.startRegexp+=e)}}visitSet(e){if(!this.multiline){const t=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(t);this.multiline=Boolean("\n".match(n))}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const t=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(t),this.isStarting&&(this.startRegexp+=t)}}visitChildren(e){"Group"===e.type&&e.quantifier||super.visitChildren(e)}};function We(e){try{return"string"==typeof e&&(e=new RegExp(e)),e=e.toString(),He.reset(e),He.visit(Ve.pattern(e)),He.multiline}catch(e){return!1}}function ze(e){return("string"==typeof e?new RegExp(e):e).test(" ")}function Ye(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Xe(e,t){const n=new Set,r=function(e){return e.rules.find((e=>G(e)&&e.entry))}(e);if(!r)return new Set(e.rules);const i=[r].concat(function(e){return e.rules.filter((e=>V(e)&&e.hidden))}(e));for(const e of i)qe(e,n,t);const s=new Set;for(const t of e.rules)(n.has(t.name)||V(t)&&t.hidden)&&s.add(t);return s}function qe(e,t,n){t.add(e.name),xe(e).forEach((e=>{if(ue(e)||n&&pe(e)){const r=e.rule.ref;r&&!t.has(r.name)&&qe(r,t,n)}}))}function Qe(e,t,n){if(!e||!t)return;const r=Je(e,t,e.astNode,!0);return 0!==r.length?r[n=void 0!==n?Math.max(0,Math.min(n,r.length-1)):0]:void 0}function Je(e,t,n,r){if(!r){const n=Re(e.grammarSource,J);if(n&&n.feature===t)return[e]}return o(e)&&e.astNode===n?e.content.flatMap((e=>Je(e,t,n,!1))):[]}function Ze(e){let t=e;return _(t)&&(Y(t.$container)?t=t.$container.$container:G(t.$container)?t=t.$container:x(t.$container)),et(e,t,new Map)}function et(e,t,n){var r,i;function s(t,r){let i;return Re(t,J)||(i=et(r,r,n)),n.set(e,i),i}if(n.has(e))return n.get(e);n.set(e,void 0);for(const a of xe(t)){if(J(a)&&"name"===a.feature.toLowerCase())return n.set(e,a),a;if(ue(a)&&G(a.rule.ref))return s(a,a.rule.ref);if(i=a,ve.isInstance(i,B)&&(null===(r=a.typeRef)||void 0===r?void 0:r.ref))return s(a,a.typeRef.ref)}}function tt(e){return nt(e,new Set)}function nt(e,t){if(t.has(e))return!0;t.add(e);for(const n of xe(e))if(ue(n)){if(!n.rule.ref)return!1;if(G(n.rule.ref)&&!nt(n.rule.ref,t))return!1}else{if(J(n))return!1;if(Y(n))return!1}return Boolean(e.definition)}function rt(e){if(e.inferredType)return e.inferredType.name;if(e.dataType)return e.dataType;if(e.returnType){const t=e.returnType.ref;if(t){if(G(t))return t.name;if(M(t)||W(t))return t.name}}}function it(e){var t,n;if(G(e))return tt(e)?e.name:null!==(t=rt(e))&&void 0!==t?t:e.name;if(M(e)||W(e)||(n=e,ve.isInstance(n,K)))return e.name;if(Y(e)){const t=function(e){var t;return e.inferredType?e.inferredType.name:(null===(t=e.type)||void 0===t?void 0:t.ref)?it(e.type.ref):void 0}(e);if(t)return t}else if(_(e))return e.name;throw new Error("Cannot get name of Unknown Type")}function st(e){const t={s:!1,i:!1,u:!1},n=ot(e.definition,t),r=Object.entries(t).filter((([,e])=>e)).map((([e])=>e)).join("");return new RegExp(n,r)}const at=/[\s\S]/.source;function ot(e,t){if(o=e,ve.isInstance(o,de))return lt((a=e).elements.map((e=>ot(e))).join("|"),{cardinality:a.cardinality,lookahead:a.lookahead});if(function(e){return ve.isInstance(e,he)}(e))return lt((s=e).elements.map((e=>ot(e))).join(""),{cardinality:s.cardinality,lookahead:s.lookahead});if(function(e){return ve.isInstance(e,Z)}(e))return(n=e).right?lt(`[${ct(n.left)}-${ct(n.right)}]`,{cardinality:n.cardinality,lookahead:n.lookahead,wrap:!1}):lt(ct(n.left),{cardinality:n.cardinality,lookahead:n.lookahead,wrap:!1});var n,r,i,s,a,o;if(pe(e)){const t=e.rule.ref;if(!t)throw new Error("Missing rule reference.");return lt(ot(t.definition),{cardinality:e.cardinality,lookahead:e.lookahead})}if(function(e){return ve.isInstance(e,oe)}(e))return lt(`(?!${ot((r=e).terminal)})${at}*?`,{cardinality:r.cardinality,lookahead:r.lookahead});if(function(e){return ve.isInstance(e,ye)}(e))return lt(`${at}*?${ot((i=e).terminal)}`,{cardinality:i.cardinality,lookahead:i.lookahead});if(function(e){return ve.isInstance(e,ce)}(e)){const n=e.regex.lastIndexOf("/"),r=e.regex.substring(1,n),i=e.regex.substring(n+1);return t&&(t.i=i.includes("i"),t.s=i.includes("s"),t.u=i.includes("u")),lt(r,{cardinality:e.cardinality,lookahead:e.lookahead,wrap:!1})}if(function(e){return ve.isInstance(e,Ae)}(e))return lt(at,{cardinality:e.cardinality,lookahead:e.lookahead});throw new Error(`Invalid terminal element: ${null==e?void 0:e.$type}`)}function ct(e){return Ye(e.value)}function lt(e,t){var n;return(!1!==t.wrap||t.lookahead)&&(e=`(${null!==(n=t.lookahead)&&void 0!==n?n:""}${e})`),t.cardinality?`${e}${t.cardinality}`:e}var ut=n(8058),dt=n(2866),ht=n(6401),ft=n(4722),pt=n(9622),mt=n(53);function gt(e){function t(){}t.prototype=e;const n=new t;function r(){return typeof n.bar}return r(),r(),e}const yt=function(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(i);++r{t.accept(e)}))}}class Kt extends Gt{constructor(e){super([]),this.idx=1,Ct(this,bt(e,(e=>void 0!==e)))}set definition(e){}get definition(){return void 0!==this.referencedRule?this.referencedRule.definition:[]}accept(e){e.visit(this)}}class Bt extends Gt{constructor(e){super(e.definition),this.orgText="",Ct(this,bt(e,(e=>void 0!==e)))}}class jt extends Gt{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Ct(this,bt(e,(e=>void 0!==e)))}}class Vt extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,bt(e,(e=>void 0!==e)))}}class Ht extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,bt(e,(e=>void 0!==e)))}}class Wt extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,bt(e,(e=>void 0!==e)))}}class zt extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,bt(e,(e=>void 0!==e)))}}class Yt extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,bt(e,(e=>void 0!==e)))}}class Xt extends Gt{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Ct(this,bt(e,(e=>void 0!==e)))}}class qt{constructor(e){this.idx=1,Ct(this,bt(e,(e=>void 0!==e)))}accept(e){e.visit(this)}}function Qt(e){function t(e){return(0,ft.A)(e,Qt)}if(e instanceof Kt){const t={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return(0,vt.A)(e.label)&&(t.label=e.label),t}if(e instanceof jt)return{type:"Alternative",definition:t(e.definition)};if(e instanceof Vt)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof Ht)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof Wt)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:Qt(new qt({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Yt)return{type:"RepetitionWithSeparator",idx:e.idx,separator:Qt(new qt({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof zt)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};if(e instanceof Xt)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};if(e instanceof qt){const t={type:"Terminal",name:e.terminalType.name,label:(n=e.terminalType,r=n,(0,vt.A)(r.LABEL)&&""!==r.LABEL?n.LABEL:n.name),idx:e.idx};(0,vt.A)(e.label)&&(t.terminalLabel=e.label);const i=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(t.pattern=Ft(i)?i.source:i),t}var n,r;if(e instanceof Bt)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};throw Error("non exhaustive match")}class Jt{visit(e){const t=e;switch(t.constructor){case Kt:return this.visitNonTerminal(t);case jt:return this.visitAlternative(t);case Vt:return this.visitOption(t);case Ht:return this.visitRepetitionMandatory(t);case Wt:return this.visitRepetitionMandatoryWithSeparator(t);case Yt:return this.visitRepetitionWithSeparator(t);case zt:return this.visitRepetition(t);case Xt:return this.visitAlternation(t);case qt:return this.visitTerminal(t);case Bt:return this.visitRule(t);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}var Zt=n(3736),en=n(4288);const tn=function(e,t){var n;return(0,en.A)(e,(function(e,r,i){return!(n=t(e,r,i))})),!!n};var nn=n(2049),rn=n(6832);const sn=function(e,t,n){var r=(0,nn.A)(e)?Zt.A:tn;return n&&(0,rn.A)(e,t,n)&&(t=void 0),r(e,(0,wt.A)(t,3))};var an=n(5205),on=Math.max;const cn=function(e,t,n,r){e=(0,xt.A)(e)?e:(0,dt.A)(e),n=n&&!r?(0,At.A)(n):0;var i=e.length;return n<0&&(n=on(i+n,0)),(0,vt.A)(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&(0,an.A)(e,t,n)>-1},ln=function(e,t){for(var n=-1,r=null==e?0:e.length;++nhn(e,t))):!(e instanceof Kt&&cn(t,e))&&e instanceof Gt&&(e instanceof Kt&&t.push(e),dn(e.definition,(e=>hn(e,t)))))}function fn(e){if(e instanceof Kt)return"SUBRULE";if(e instanceof Vt)return"OPTION";if(e instanceof Xt)return"OR";if(e instanceof Ht)return"AT_LEAST_ONE";if(e instanceof Wt)return"AT_LEAST_ONE_SEP";if(e instanceof Yt)return"MANY_SEP";if(e instanceof zt)return"MANY";if(e instanceof qt)return"CONSUME";throw Error("non exhaustive match")}class pn{walk(e,t=[]){(0,ut.A)(e.definition,((n,r)=>{const i=Tt(e.definition,r+1);if(n instanceof Kt)this.walkProdRef(n,i,t);else if(n instanceof qt)this.walkTerminal(n,i,t);else if(n instanceof jt)this.walkFlat(n,i,t);else if(n instanceof Vt)this.walkOption(n,i,t);else if(n instanceof Ht)this.walkAtLeastOne(n,i,t);else if(n instanceof Wt)this.walkAtLeastOneSep(n,i,t);else if(n instanceof Yt)this.walkManySep(n,i,t);else if(n instanceof zt)this.walkMany(n,i,t);else{if(!(n instanceof Xt))throw Error("non exhaustive match");this.walkOr(n,i,t)}}))}walkTerminal(e,t,n){}walkProdRef(e,t,n){}walkFlat(e,t,n){const r=t.concat(n);this.walk(e,r)}walkOption(e,t,n){const r=t.concat(n);this.walk(e,r)}walkAtLeastOne(e,t,n){const r=[new Vt({definition:e.definition})].concat(t,n);this.walk(e,r)}walkAtLeastOneSep(e,t,n){const r=mn(e,t,n);this.walk(e,r)}walkMany(e,t,n){const r=[new Vt({definition:e.definition})].concat(t,n);this.walk(e,r)}walkManySep(e,t,n){const r=mn(e,t,n);this.walk(e,r)}walkOr(e,t,n){const r=t.concat(n);(0,ut.A)(e.definition,(e=>{const t=new jt({definition:[e]});this.walk(t,r)}))}}function mn(e,t,n){return[new Vt({definition:[new qt({terminalType:e.separator})].concat(e.definition)})].concat(t,n)}var gn=n(7371);const yn=function(e){return e&&e.length?(0,gn.A)(e):[]};var An=n(4098);function Tn(e){if(e instanceof Kt)return Tn(e.referencedRule);if(e instanceof qt)return[e.terminalType];if(function(e){return e instanceof jt||e instanceof Vt||e instanceof zt||e instanceof Ht||e instanceof Wt||e instanceof Yt||e instanceof qt||e instanceof Bt}(e))return function(e){let t=[];const n=e.definition;let r,i=0,s=n.length>i,a=!0;for(;s&&a;)r=n[i],a=hn(r),t=t.concat(Tn(r)),i+=1,s=n.length>i;return yn(t)}(e);if(function(e){return e instanceof Xt}(e))return function(e){const t=(0,ft.A)(e.definition,(e=>Tn(e)));return yn((0,An.A)(t))}(e);throw Error("non exhaustive match")}const vn="_~IN~_";class Rn extends pn{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,t,n){}walkProdRef(e,t,n){const r=(i=e.referencedRule,s=e.idx,i.name+s+vn+this.topProd.name);var i,s;const a=t.concat(n),o=Tn(new jt({definition:a}));this.follows[r]=o}}var En=n(9592),kn=n(3068),xn=n(2634),In=n(1790);const Sn=function(e,t){return((0,nn.A)(e)?xn.A:In.A)(e,function(e){if("function"!=typeof e)throw new TypeError("Expected a function");return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}((0,wt.A)(t,3)))};var Nn=n(9610),Cn=Math.max;const $n=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:(0,At.A)(n);return i<0&&(i=Cn(r+i,0)),(0,an.A)(e,t,i)};var wn=n(3130),Ln=n(4092),On=n(8300),bn=n(5530),_n=n(7809),Pn=n(4099);var Mn=n(7671),Dn=n(4326),Un=n(3533);const Fn=(0,Dn.A)((function(e,t){return(0,Un.A)(e)?function(e,t,n,r){var i=-1,s=bn.A,a=!0,o=e.length,c=[],l=t.length;if(!o)return c;n&&(t=(0,$t.A)(t,(0,Mt.A)(n))),r?(s=_n.A,a=!1):t.length>=200&&(s=Pn.A,a=!1,t=new On.A(t));e:for(;++i\n\tComplement Sets cannot be automatically optimized.\n\tThis will disable the lexer's first char optimizations.\n\tSee: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";t&&(n="\n\tThis will disable the lexer's first char optimizations.\n\tSee: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details."),jn(`${Xn}\n\tFailed parsing: < ${e.toString()} >\n\tUsing the @chevrotain/regexp-to-ast library\n\tPlease open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function Qn(e,t,n){switch(e.type){case"Disjunction":for(let r=0;r{if("number"==typeof e)Jn(e,t,n);else{const r=e;if(!0===n)for(let e=r.from;e<=r.to;e++)Jn(e,t,n);else{for(let e=r.from;e<=r.to&&e=yr){const e=r.from>=yr?r.from:yr,n=r.to,i=Tr(e),s=Tr(n);for(let e=i;e<=s;e++)t[e]=e}}}}));break;case"Group":Qn(s.value,t,n);break;default:throw Error("Non Exhaustive Match")}const a=void 0!==s.quantifier&&0===s.quantifier.atLeast;if("Group"===s.type&&!1===er(s)||"Group"!==s.type&&!1===a)break}break;default:throw Error("non exhaustive match!")}return(0,dt.A)(t)}function Jn(e,t,n){const r=Tr(e);t[r]=r,!0===n&&function(e,t){const n=String.fromCharCode(e),r=n.toUpperCase();if(r!==n){const e=Tr(r.charCodeAt(0));t[e]=e}else{const e=n.toLowerCase();if(e!==n){const n=Tr(e.charCodeAt(0));t[n]=n}}}(e,t)}function Zn(e,t){return(0,Bn.A)(e.value,(e=>{if("number"==typeof e)return cn(t,e);{const n=e;return void 0!==(0,Bn.A)(t,(e=>n.from<=e&&e<=n.to))}}))}function er(e){const t=e.quantifier;return!(!t||0!==t.atLeast)||!!e.value&&((0,nn.A)(e.value)?dn(e.value,er):er(e.value))}class tr extends Be{constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(!0!==this.found){switch(e.type){case"Lookahead":return void this.visitLookahead(e);case"NegativeLookahead":return void this.visitNegativeLookahead(e)}super.visitChildren(e)}}visitCharacter(e){cn(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?void 0===Zn(e,this.targetCharCodes)&&(this.found=!0):void 0!==Zn(e,this.targetCharCodes)&&(this.found=!0)}}function nr(e,t){if(t instanceof RegExp){const n=zn(t),r=new tr(e);return r.visit(n),r.found}return void 0!==(0,Bn.A)(t,(t=>cn(e,t.charCodeAt(0))))}const rr="PATTERN",ir="defaultMode",sr="modes";let ar="boolean"==typeof new RegExp("(?:)").sticky;const or=/[^\\][$]/,cr=/[^\\[][\^]|^\^/;function lr(e){const t=e.ignoreCase?"i":"";return new RegExp(`^(?:${e.source})`,t)}function ur(e){const t=e.ignoreCase?"iy":"y";return new RegExp(`${e.source}`,t)}function dr(e){const t=e.PATTERN;if(Ft(t))return!1;if((0,Nn.A)(t))return!0;if((0,pt.A)(t,"exec"))return!0;if((0,vt.A)(t))return!1;throw Error("non exhaustive match")}function hr(e){return!(!(0,vt.A)(e)||1!==e.length)&&e.charCodeAt(0)}const fr={test:function(e){const t=e.length;for(let n=this.lastIndex;n(0,vt.A)(e)?e.charCodeAt(0):e))}function gr(e,t,n){void 0===e[t]?e[t]=[n]:e[t].push(n)}const yr=256;let Ar=[];function Tr(e){return ee.CATEGORIES))));const e=Fn(n,t);t=t.concat(e),(0,ht.A)(e)?r=!1:n=e}return t}(e);!function(e){(0,ut.A)(e,(e=>{var t;wr(e)||(Nr[Sr]=e,e.tokenTypeIdx=Sr++),Lr(e)&&!(0,nn.A)(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Lr(e)||(e.CATEGORIES=[]),t=e,(0,pt.A)(t,"categoryMatches")||(e.categoryMatches=[]),function(e){return(0,pt.A)(e,"categoryMatchesMap")}(e)||(e.categoryMatchesMap={})}))}(t),function(e){(0,ut.A)(e,(e=>{$r([],e)}))}(t),function(e){(0,ut.A)(e,(e=>{e.categoryMatches=[],(0,ut.A)(e.categoryMatchesMap,((t,n)=>{e.categoryMatches.push(Nr[n].tokenTypeIdx)}))}))}(t),(0,ut.A)(t,(e=>{e.isParent=e.categoryMatches.length>0}))}function $r(e,t){(0,ut.A)(e,(e=>{t.categoryMatchesMap[e.tokenTypeIdx]=!0})),(0,ut.A)(t.CATEGORIES,(n=>{const r=e.concat(t);cn(r,n)||$r(r,n)}))}function wr(e){return(0,pt.A)(e,"tokenTypeIdx")}function Lr(e){return(0,pt.A)(e,"CATEGORIES")}function Or(e){return(0,pt.A)(e,"tokenTypeIdx")}var br;!function(e){e[e.MISSING_PATTERN=0]="MISSING_PATTERN",e[e.INVALID_PATTERN=1]="INVALID_PATTERN",e[e.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",e[e.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",e[e.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",e[e.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",e[e.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",e[e.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",e[e.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",e[e.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",e[e.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",e[e.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",e[e.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",e[e.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",e[e.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",e[e.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",e[e.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",e[e.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"}(br||(br={}));const _r={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:["\n","\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:{buildUnableToPopLexerModeMessage:e=>`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`,buildUnexpectedCharactersMessage:(e,t,n,r,i)=>`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${n} characters.`},traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(_r);class Pr{constructor(e,t=_r){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(e,t)=>{if(!0===this.traceInitPerf){this.traceInitIndent++;const n=new Array(this.traceInitIndent+1).join("\t");this.traceInitIndent`);const{time:r,value:i}=kr(t),s=r>10?console.warn:console.log;return this.traceInitIndent time: ${r}ms`),this.traceInitIndent--,i}return t()},"boolean"==typeof t)throw Error("The second argument to the Lexer constructor is now an ILexerConfig Object.\na boolean 2nd argument is no longer supported");this.config=Ct({},_r,t);const n=this.config.traceInitPerf;!0===n?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):"number"==typeof n&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",(()=>{let n,r=!0;this.TRACE_INIT("Lexer Config handling",(()=>{if(this.config.lineTerminatorsPattern===_r.lineTerminatorsPattern)this.config.lineTerminatorsPattern=fr;else if(this.config.lineTerminatorCharacters===_r.lineTerminatorCharacters)throw Error("Error: Missing property on the Lexer config.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS");if(t.safeMode&&t.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),(0,nn.A)(e)?n={modes:{defaultMode:(0,mt.A)(e)},defaultMode:ir}:(r=!1,n=(0,mt.A)(e))})),!1===this.config.skipValidations&&(this.TRACE_INIT("performRuntimeChecks",(()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(function(e){const t=[];return(0,pt.A)(e,ir)||t.push({message:"A MultiMode Lexer cannot be initialized without a <"+ir+"> property in its definition\n",type:br.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),(0,pt.A)(e,sr)||t.push({message:"A MultiMode Lexer cannot be initialized without a property in its definition\n",type:br.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),(0,pt.A)(e,sr)&&(0,pt.A)(e,ir)&&!(0,pt.A)(e.modes,e.defaultMode)&&t.push({message:`A MultiMode Lexer cannot be initialized with a ${ir}: <${e.defaultMode}>which does not exist\n`,type:br.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),(0,pt.A)(e,sr)&&(0,ut.A)(e.modes,((e,n)=>{(0,ut.A)(e,((r,i)=>{if((0,En.A)(r))t.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${n}> at index: <${i}>\n`,type:br.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if((0,pt.A)(r,"LONGER_ALT")){const i=(0,nn.A)(r.LONGER_ALT)?r.LONGER_ALT:[r.LONGER_ALT];(0,ut.A)(i,(i=>{(0,En.A)(i)||cn(e,i)||t.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${i.name}> on token <${r.name}> outside of mode <${n}>\n`,type:br.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})}))}}))})),t}(n,this.trackStartLines,this.config.lineTerminatorCharacters))})),this.TRACE_INIT("performWarningRuntimeChecks",(()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(function(e,t,n){const r=[];let i=!1;const s=Gn((0,An.A)((0,dt.A)(e.modes))),a=Sn(s,(e=>e[rr]===Pr.NA)),o=mr(n);return t&&(0,ut.A)(a,(e=>{const t=pr(e,o);if(!1!==t){const n=function(e,t){if(t.issue===br.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.\n\tThe problem is in the <${e.name}> Token Type\n\t Root cause: ${t.errMsg}.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===br.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option.\n\tThe problem is in the <${e.name}> Token Type\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}(e,t),i={message:n,type:t.issue,tokenType:e};r.push(i)}else(0,pt.A)(e,"LINE_BREAKS")?!0===e.LINE_BREAKS&&(i=!0):nr(o,e.PATTERN)&&(i=!0)})),t&&!i&&r.push({message:"Warning: No LINE_BREAKS Found.\n\tThis Lexer has been defined to track line and column information,\n\tBut none of the Token Types can be identified as matching a line terminator.\n\tSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS \n\tfor details.",type:br.NO_LINE_BREAKS_FLAGS}),r}(n,this.trackStartLines,this.config.lineTerminatorCharacters))}))),n.modes=n.modes?n.modes:{},(0,ut.A)(n.modes,((e,t)=>{n.modes[t]=Sn(e,(e=>(0,En.A)(e)))}));const i=(0,St.A)(n.modes);if((0,ut.A)(n.modes,((e,n)=>{this.TRACE_INIT(`Mode: <${n}> processing`,(()=>{if(this.modes.push(n),!1===this.config.skipValidations&&this.TRACE_INIT("validatePatterns",(()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(function(e,t){let n=[];const r=function(e){const t=(0,Ln.A)(e,(e=>!(0,pt.A)(e,rr)));return{errors:(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- missing static 'PATTERN' property",type:br.MISSING_PATTERN,tokenTypes:[e]}))),valid:Fn(e,t)}}(e);n=n.concat(r.errors);const i=function(e){const t=(0,Ln.A)(e,(e=>{const t=e[rr];return!(Ft(t)||(0,Nn.A)(t)||(0,pt.A)(t,"exec")||(0,vt.A)(t))}));return{errors:(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:br.INVALID_PATTERN,tokenTypes:[e]}))),valid:Fn(e,t)}}(r.valid),s=i.valid;return n=n.concat(i.errors),n=n.concat(function(e){let t=[];const n=(0,Ln.A)(e,(e=>Ft(e[rr])));return t=t.concat(function(e){class t extends Be{constructor(){super(...arguments),this.found=!1}visitEndAnchor(e){this.found=!0}}const n=(0,Ln.A)(e,(e=>{const n=e.PATTERN;try{const e=zn(n),r=new t;return r.visit(e),r.found}catch(e){return or.test(n.source)}}));return(0,ft.A)(n,(e=>({message:"Unexpected RegExp Anchor Error:\n\tToken Type: ->"+e.name+"<- static 'PATTERN' cannot contain end of input anchor '$'\n\tSee chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS\tfor details.",type:br.EOI_ANCHOR_FOUND,tokenTypes:[e]})))}(n)),t=t.concat(function(e){class t extends Be{constructor(){super(...arguments),this.found=!1}visitStartAnchor(e){this.found=!0}}const n=(0,Ln.A)(e,(e=>{const n=e.PATTERN;try{const e=zn(n),r=new t;return r.visit(e),r.found}catch(e){return cr.test(n.source)}}));return(0,ft.A)(n,(e=>({message:"Unexpected RegExp Anchor Error:\n\tToken Type: ->"+e.name+"<- static 'PATTERN' cannot contain start of input anchor '^'\n\tSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS\tfor details.",type:br.SOI_ANCHOR_FOUND,tokenTypes:[e]})))}(n)),t=t.concat(function(e){const t=(0,Ln.A)(e,(e=>{const t=e[rr];return t instanceof RegExp&&(t.multiline||t.global)}));return(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:br.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[e]})))}(n)),t=t.concat(function(e){const t=[];let n=(0,ft.A)(e,(n=>(0,wn.A)(e,((e,r)=>(n.PATTERN.source!==r.PATTERN.source||cn(t,r)||r.PATTERN===Pr.NA||(t.push(r),e.push(r)),e)),[])));n=Gn(n);const r=(0,Ln.A)(n,(e=>e.length>1));return(0,ft.A)(r,(e=>{const t=(0,ft.A)(e,(e=>e.name));return{message:`The same RegExp pattern ->${Kn(e).PATTERN}<-has been used in all of the following Token Types: ${t.join(", ")} <-`,type:br.DUPLICATE_PATTERNS_FOUND,tokenTypes:e}}))}(n)),t=t.concat(function(e){const t=(0,Ln.A)(e,(e=>e.PATTERN.test("")));return(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' must not match an empty string",type:br.EMPTY_MATCH_PATTERN,tokenTypes:[e]})))}(n)),t}(s)),n=n.concat(function(e){const t=(0,Ln.A)(e,(e=>{if(!(0,pt.A)(e,"GROUP"))return!1;const t=e.GROUP;return t!==Pr.SKIPPED&&t!==Pr.NA&&!(0,vt.A)(t)}));return(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:br.INVALID_GROUP_TYPE_FOUND,tokenTypes:[e]})))}(s)),n=n.concat(function(e,t){const n=(0,Ln.A)(e,(e=>void 0!==e.PUSH_MODE&&!cn(t,e.PUSH_MODE)));return(0,ft.A)(n,(e=>({message:`Token Type: ->${e.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${e.PUSH_MODE}<-which does not exist`,type:br.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[e]})))}(s,t)),n=n.concat(function(e){const t=[],n=(0,wn.A)(e,((e,t,n)=>{const r=t.PATTERN;return r===Pr.NA||((0,vt.A)(r)?e.push({str:r,idx:n,tokenType:t}):Ft(r)&&(i=r,void 0===(0,Bn.A)([".","\\","[","]","|","^","$","(",")","?","*","+","{"],(e=>-1!==i.source.indexOf(e))))&&e.push({str:r.source,idx:n,tokenType:t})),e;var i}),[]);return(0,ut.A)(e,((e,r)=>{(0,ut.A)(n,(({str:n,idx:i,tokenType:s})=>{if(r${s.name}<- can never be matched.\nBecause it appears AFTER the Token Type ->${e.name}<-in the lexer's definition.\nSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:n,type:br.UNREACHABLE_PATTERN,tokenTypes:[e,s]})}}))})),t}(s)),n}(e,i))})),(0,ht.A)(this.lexerDefinitionErrors)){let r;Cr(e),this.TRACE_INIT("analyzeTokenTypes",(()=>{r=function(e,t){const n=(t=(0,kn.A)(t,{useSticky:ar,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r","\n"],tracer:(e,t)=>t()})).tracer;let r;n("initCharCodeToOptimizedIndexMap",(()=>{!function(){if((0,ht.A)(Ar)){Ar=new Array(65536);for(let e=0;e<65536;e++)Ar[e]=e>255?255+~~(e/255):e}}()})),n("Reject Lexer.NA",(()=>{r=Sn(e,(e=>e[rr]===Pr.NA))}));let i,s,a,o,c,l,u,d,h,f,p,m=!1;n("Transform Patterns",(()=>{m=!1,i=(0,ft.A)(r,(e=>{const n=e[rr];if(Ft(n)){const e=n.source;return 1!==e.length||"^"===e||"$"===e||"."===e||n.ignoreCase?2!==e.length||"\\"!==e[0]||cn(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],e[1])?t.useSticky?ur(n):lr(n):e[1]:e}if((0,Nn.A)(n))return m=!0,{exec:n};if("object"==typeof n)return m=!0,n;if("string"==typeof n){if(1===n.length)return n;{const e=n.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),r=new RegExp(e);return t.useSticky?ur(r):lr(r)}}throw Error("non exhaustive match")}))})),n("misc mapping",(()=>{s=(0,ft.A)(r,(e=>e.tokenTypeIdx)),a=(0,ft.A)(r,(e=>{const t=e.GROUP;if(t!==Pr.SKIPPED){if((0,vt.A)(t))return t;if((0,En.A)(t))return!1;throw Error("non exhaustive match")}})),o=(0,ft.A)(r,(e=>{const t=e.LONGER_ALT;if(t)return(0,nn.A)(t)?(0,ft.A)(t,(e=>$n(r,e))):[$n(r,t)]})),c=(0,ft.A)(r,(e=>e.PUSH_MODE)),l=(0,ft.A)(r,(e=>(0,pt.A)(e,"POP_MODE")))})),n("Line Terminator Handling",(()=>{const e=mr(t.lineTerminatorCharacters);u=(0,ft.A)(r,(e=>!1)),"onlyOffset"!==t.positionTracking&&(u=(0,ft.A)(r,(t=>(0,pt.A)(t,"LINE_BREAKS")?!!t.LINE_BREAKS:!1===pr(t,e)&&nr(e,t.PATTERN))))})),n("Misc Mapping #2",(()=>{d=(0,ft.A)(r,dr),h=(0,ft.A)(i,hr),f=(0,wn.A)(r,((e,t)=>{const n=t.GROUP;return(0,vt.A)(n)&&n!==Pr.SKIPPED&&(e[n]=[]),e}),{}),p=(0,ft.A)(i,((e,t)=>({pattern:i[t],longerAlt:o[t],canLineTerminator:u[t],isCustom:d[t],short:h[t],group:a[t],push:c[t],pop:l[t],tokenTypeIdx:s[t],tokenType:r[t]})))}));let g=!0,y=[];return t.safeMode||n("First Char Optimization",(()=>{y=(0,wn.A)(r,((e,n,r)=>{if("string"==typeof n.PATTERN){const t=Tr(n.PATTERN.charCodeAt(0));gr(e,t,p[r])}else if((0,nn.A)(n.START_CHARS_HINT)){let t;(0,ut.A)(n.START_CHARS_HINT,(n=>{const i=Tr("string"==typeof n?n.charCodeAt(0):n);t!==i&&(t=i,gr(e,i,p[r]))}))}else if(Ft(n.PATTERN))if(n.PATTERN.unicode)g=!1,t.ensureOptimizations&&jn(`${Xn}\tUnable to analyze < ${n.PATTERN.toString()} > pattern.\n\tThe regexp unicode flag is not currently supported by the regexp-to-ast library.\n\tThis will disable the lexer's first char optimizations.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{const i=qn(n.PATTERN,t.ensureOptimizations);(0,ht.A)(i)&&(g=!1),(0,ut.A)(i,(t=>{gr(e,t,p[r])}))}else t.ensureOptimizations&&jn(`${Xn}\tTokenType: <${n.name}> is using a custom token pattern without providing parameter.\n\tThis will disable the lexer's first char optimizations.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),g=!1;return e}),[])})),{emptyGroups:f,patternIdxToConfig:p,charCodeToPatternIdxToConfig:y,hasCustom:m,canBeOptimized:g}}(e,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:t.positionTracking,ensureOptimizations:t.ensureOptimizations,safeMode:t.safeMode,tracer:this.TRACE_INIT})})),this.patternIdxToConfig[n]=r.patternIdxToConfig,this.charCodeToPatternIdxToConfig[n]=r.charCodeToPatternIdxToConfig,this.emptyGroups=Ct({},this.emptyGroups,r.emptyGroups),this.hasCustom=r.hasCustom||this.hasCustom,this.canModeBeOptimized[n]=r.canBeOptimized}}))})),this.defaultMode=n.defaultMode,!(0,ht.A)(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){const e=(0,ft.A)(this.lexerDefinitionErrors,(e=>e.message)).join("-----------------------\n");throw new Error("Errors detected in definition of Lexer:\n"+e)}(0,ut.A)(this.lexerDefinitionWarning,(e=>{Vn(e.message)})),this.TRACE_INIT("Choosing sub-methods implementations",(()=>{if(ar?(this.chopInput=vr.A,this.match=this.matchWithTest):(this.updateLastIndex=Rr.A,this.match=this.matchWithExec),r&&(this.handleModes=Rr.A),!1===this.trackStartLines&&(this.computeNewColumn=vr.A),!1===this.trackEndLines&&(this.updateTokenEndLineColumnLocation=Rr.A),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else{if(!/onlyOffset/i.test(this.config.positionTracking))throw Error(`Invalid config option: "${this.config.positionTracking}"`);this.createTokenInstance=this.createOffsetOnlyToken}this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)})),this.TRACE_INIT("Failed Optimization Warnings",(()=>{const e=(0,wn.A)(this.canModeBeOptimized,((e,t,n)=>(!1===t&&e.push(n),e)),[]);if(t.ensureOptimizations&&!(0,ht.A)(e))throw Error(`Lexer Modes: < ${e.join(", ")} > cannot be optimized.\n\t Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.\n\t Or inspect the console log for details on how to resolve these issues.`)})),this.TRACE_INIT("clearRegExpParserCache",(()=>{Hn={}})),this.TRACE_INIT("toFastProperties",(()=>{gt(this)}))}))}tokenize(e,t=this.defaultMode){if(!(0,ht.A)(this.lexerDefinitionErrors)){const e=(0,ft.A)(this.lexerDefinitionErrors,(e=>e.message)).join("-----------------------\n");throw new Error("Unable to Tokenize because Errors detected in definition of Lexer:\n"+e)}return this.tokenizeInternal(e,t)}tokenizeInternal(e,t){let n,r,i,s,a,o,c,l,u,d,h,f,p,m,g;const y=e,A=y.length;let T=0,v=0;const R=this.hasCustom?0:Math.floor(e.length/10),E=new Array(R),k=[];let x=this.trackStartLines?1:void 0,I=this.trackStartLines?1:void 0;const S=function(e){const t={},n=(0,St.A)(e);return(0,ut.A)(n,(n=>{const r=e[n];if(!(0,nn.A)(r))throw Error("non exhaustive match");t[n]=[]})),t}(this.emptyGroups),N=this.trackStartLines,C=this.config.lineTerminatorsPattern;let $=0,w=[],L=[];const O=[],b=[];let _;function P(){return w}function M(e){const t=Tr(e),n=L[t];return void 0===n?b:n}Object.freeze(b);const D=e=>{if(1===O.length&&void 0===e.tokenType.PUSH_MODE){const t=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(e);k.push({offset:e.startOffset,line:e.startLine,column:e.startColumn,length:e.image.length,message:t})}else{O.pop();const e=(0,Er.A)(O);w=this.patternIdxToConfig[e],L=this.charCodeToPatternIdxToConfig[e],$=w.length;const t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;_=L&&t?M:P}};function U(e){O.push(e),L=this.charCodeToPatternIdxToConfig[e],w=this.patternIdxToConfig[e],$=w.length,$=w.length;const t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;_=L&&t?M:P}let F;U.call(this,t);const G=this.config.recoveryEnabled;for(;To.length){o=s,c=l,F=t;break}}}break}}if(null!==o){if(u=o.length,d=F.group,void 0!==d&&(h=F.tokenTypeIdx,f=this.createTokenInstance(o,T,h,F.tokenType,x,I,u),this.handlePayload(f,c),!1===d?v=this.addToken(E,v,f):S[d].push(f)),e=this.chopInput(e,u),T+=u,I=this.computeNewColumn(I,u),!0===N&&!0===F.canLineTerminator){let e,t,n=0;C.lastIndex=0;do{e=C.test(o),!0===e&&(t=C.lastIndex-1,n++)}while(!0===e);0!==n&&(x+=n,I=u-t,this.updateTokenEndLineColumnLocation(f,d,t,n,x,I,u))}this.handleModes(F,D,U,f)}else{const t=T,n=x,i=I;let s=!1===G;for(;!1===s&&T`Expecting ${Dr(e)?`--\x3e ${Mr(e)} <--`:`token of type --\x3e ${e.name} <--`} but found --\x3e '${t.image}' <--`,buildNotAllInputParsedMessage:({firstRedundant:e,ruleName:t})=>"Redundant input, expecting EOF but found: "+e.image,buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:n,customUserDescription:r,ruleName:i}){const s="Expecting: ",a="\nbut found: '"+Kn(t).image+"'";if(r)return s+r+a;{const t=(0,wn.A)(e,((e,t)=>e.concat(t)),[]),n=(0,ft.A)(t,(e=>`[${(0,ft.A)(e,(e=>Mr(e))).join(", ")}]`));return s+`one of these possible Token sequences:\n${(0,ft.A)(n,((e,t)=>` ${t+1}. ${e}`)).join("\n")}`+a}},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:n,ruleName:r}){const i="Expecting: ",s="\nbut found: '"+Kn(t).image+"'";return n?i+n+s:i+`expecting at least one iteration which starts with one of these possible Token sequences::\n <${(0,ft.A)(e,(e=>`[${(0,ft.A)(e,(e=>Mr(e))).join(",")}]`)).join(" ,")}>`+s}};Object.freeze(qr);const Qr={buildRuleNotFoundError:(e,t)=>"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+"<-\ninside top level rule: ->"+e.name+"<-"},Jr={buildDuplicateFoundError(e,t){const n=e.name,r=Kn(t),i=r.idx,s=fn(r),a=(o=r)instanceof qt?o.terminalType.name:o instanceof Kt?o.nonTerminalName:"";var o;let c=`->${s}${i>0?i:""}<- ${a?`with argument: ->${a}<-`:""}\n appears more than once (${t.length} times) in the top level rule: ->${n}<-. \n For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES \n `;return c=c.replace(/[ \t]+/g," "),c=c.replace(/\s\s+/g,"\n"),c},buildNamespaceConflictError:e=>`Namespace conflict found in grammar.\nThe grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.name}>.\nTo resolve this make sure each Terminal and Non-Terminal names are unique\nThis is easy to accomplish by using the convention that Terminal names start with an uppercase letter\nand Non-Terminal names start with a lower case letter.`,buildAlternationPrefixAmbiguityError(e){const t=(0,ft.A)(e.prefixPath,(e=>Mr(e))).join(", "),n=0===e.alternation.idx?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix\nin inside <${e.topLevelRule.name}> Rule,\n<${t}> may appears as a prefix path in all these alternatives.\nSee: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX\nFor Further details.`},buildAlternationAmbiguityError(e){const t=(0,ft.A)(e.prefixPath,(e=>Mr(e))).join(", "),n=0===e.alternation.idx?"":e.alternation.idx;let r=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in inside <${e.topLevelRule.name}> Rule,\n<${t}> may appears as a prefix path in all these alternatives.\n`;return r+="See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES\nFor Further details.",r},buildEmptyRepetitionError(e){let t=fn(e.repetition);return 0!==e.repetition.idx&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens.\nThis could lead to an infinite loop.`},buildTokenNameError:e=>"deprecated",buildEmptyAlternationError:e=>`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in inside <${e.topLevelRule.name}> Rule.\nOnly the last alternative may be an empty alternative.`,buildTooManyAlternativesError:e=>`An Alternation cannot have more than 256 alternatives:\n inside <${e.topLevelRule.name}> Rule.\n has ${e.alternation.definition.length+1} alternatives.`,buildLeftRecursionError(e){const t=e.topLevelRule.name;return`Left Recursion found in grammar.\nrule: <${t}> can be invoked from itself (directly or indirectly)\nwithout consuming any Tokens. The grammar path that causes this is: \n ${t} --\x3e ${(0,ft.A)(e.leftRecursionPath,(e=>e.name)).concat([t]).join(" --\x3e ")}\n To fix this refactor your grammar to remove the left recursion.\nsee: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError:e=>"deprecated",buildDuplicateRuleNameError(e){let t;return t=e.topLevelRule instanceof Bt?e.topLevelRule.name:e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}};class Zr extends Jt{constructor(e,t){super(),this.nameToTopRule=e,this.errMsgProvider=t,this.errors=[]}resolveRefs(){(0,ut.A)((0,dt.A)(this.nameToTopRule),(e=>{this.currTopLevel=e,e.accept(this)}))}visitNonTerminal(e){const t=this.nameToTopRule[e.nonTerminalName];if(t)e.referencedRule=t;else{const t=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:t,type:Cs.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}const ei=function(e,t){return(0,Mn.A)((0,ft.A)(e,t),1)};var ti=n(2528);const ni=function(e,t,n,r){for(var i=-1,s=null==e?0:e.length;++i{!1===(0,ht.A)(e.definition)&&(r=s(e.definition))})),r;if(!(t instanceof qt))throw Error("non exhaustive match");n.push(t.terminalType)}}i++}return r.push({partialPath:n,suffixDef:Tt(e,i)}),r}function yi(e,t,n,r){const i="EXIT_NONE_TERMINAL",s=[i],a="EXIT_ALTERNATIVE";let o=!1;const c=t.length,l=c-r-1,u=[],d=[];for(d.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});!(0,ht.A)(d);){const e=d.pop();if(e===a){o&&(0,Er.A)(d).idx<=l&&d.pop();continue}const r=e.def,h=e.idx,f=e.ruleStack,p=e.occurrenceStack;if((0,ht.A)(r))continue;const m=r[0];if(m===i){const e={idx:h,def:Tt(r),ruleStack:ci(f),occurrenceStack:ci(p)};d.push(e)}else if(m instanceof qt)if(h=0;e--){const t={idx:h,def:m.definition[e].definition.concat(Tt(r)),ruleStack:f,occurrenceStack:p};d.push(t),d.push(a)}else if(m instanceof jt)d.push({idx:h,def:m.definition.concat(Tt(r)),ruleStack:f,occurrenceStack:p});else{if(!(m instanceof Bt))throw Error("non exhaustive match");d.push(Ai(m,h,f,p))}}return u}function Ai(e,t,n,r){const i=(0,mt.A)(n);i.push(e.name);const s=(0,mt.A)(r);return s.push(1),{idx:t,def:e.definition,ruleStack:i,occurrenceStack:s}}var Ti;function vi(e){if(e instanceof Vt||"Option"===e)return Ti.OPTION;if(e instanceof zt||"Repetition"===e)return Ti.REPETITION;if(e instanceof Ht||"RepetitionMandatory"===e)return Ti.REPETITION_MANDATORY;if(e instanceof Wt||"RepetitionMandatoryWithSeparator"===e)return Ti.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof Yt||"RepetitionWithSeparator"===e)return Ti.REPETITION_WITH_SEPARATOR;if(e instanceof Xt||"Alternation"===e)return Ti.ALTERNATION;throw Error("non exhaustive match")}function Ri(e){const{occurrence:t,rule:n,prodType:r,maxLookahead:i}=e,s=vi(r);return s===Ti.ALTERNATION?wi(t,n,i):Li(t,n,s,i)}function Ei(e,t,n,r){const i=e.length,s=dn(e,(e=>dn(e,(e=>1===e.length))));if(t)return function(t){const r=(0,ft.A)(t,(e=>e.GATE));for(let t=0;t(0,An.A)(e))),n=(0,wn.A)(t,((e,t,n)=>((0,ut.A)(t,(t=>{(0,pt.A)(e,t.tokenTypeIdx)||(e[t.tokenTypeIdx]=n),(0,ut.A)(t.categoryMatches,(t=>{(0,pt.A)(e,t)||(e[t]=n)}))})),e)),{});return function(){const e=this.LA(1);return n[e.tokenTypeIdx]}}return function(){for(let t=0;t1===e.length)),i=e.length;if(r&&!n){const t=(0,An.A)(e);if(1===t.length&&(0,ht.A)(t[0].categoryMatches)){const e=t[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===e}}{const e=(0,wn.A)(t,((e,t,n)=>(e[t.tokenTypeIdx]=!0,(0,ut.A)(t.categoryMatches,(t=>{e[t]=!0})),e)),[]);return function(){const t=this.LA(1);return!0===e[t.tokenTypeIdx]}}}return function(){e:for(let n=0;ngi([e],1))),r=Si(n.length),i=(0,ft.A)(n,(e=>{const t={};return(0,ut.A)(e,(e=>{const n=Ni(e.partialPath);(0,ut.A)(n,(e=>{t[e]=!0}))})),t}));let s=n;for(let e=1;e<=t;e++){const n=s;s=Si(n.length);for(let a=0;a{const t=Ni(e.partialPath);(0,ut.A)(t,(e=>{i[a][e]=!0}))}))}}}}return r}function wi(e,t,n,r){const i=new Ii(e,Ti.ALTERNATION,r);return t.accept(i),$i(i.result,n)}function Li(e,t,n,r){const i=new Ii(e,n);t.accept(i);const s=i.result,a=new xi(t,e,n).startWalking();return $i([new jt({definition:s}),new jt({definition:a})],r)}function Oi(e,t){e:for(let n=0;ndn(e,(e=>dn(e,(e=>(0,ht.A)(e.categoryMatches)))))))}function _i(e){return`${fn(e)}_#_${e.idx}_#_${Pi(e)}`}function Pi(e){return e instanceof qt?e.terminalType.name:e instanceof Kt?e.nonTerminalName:""}class Mi extends Jt{constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}}function Di(e,t,n,r=[]){const i=[],s=Ui(t.definition);if((0,ht.A)(s))return[];{const t=e.name;cn(s,e)&&i.push({message:n.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:r}),type:Cs.LEFT_RECURSION,ruleName:t});const a=Fn(s,r.concat([e])),o=ei(a,(t=>{const i=(0,mt.A)(r);return i.push(t),Di(e,t,n,i)}));return i.concat(o)}}function Ui(e){let t=[];if((0,ht.A)(e))return t;const n=Kn(e);if(n instanceof Kt)t.push(n.referencedRule);else if(n instanceof jt||n instanceof Vt||n instanceof Ht||n instanceof Wt||n instanceof Yt||n instanceof zt)t=t.concat(Ui(n.definition));else if(n instanceof Xt)t=(0,An.A)((0,ft.A)(n.definition,(e=>Ui(e.definition))));else if(!(n instanceof qt))throw Error("non exhaustive match");const r=hn(n),i=e.length>1;if(r&&i){const n=Tt(e);return t.concat(Ui(n))}return t}class Fi extends Jt{constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}}class Gi extends Jt{constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}}const Ki="MismatchedTokenException",Bi="NoViableAltException",ji="EarlyExitException",Vi="NotAllInputParsedException",Hi=[Ki,Bi,ji,Vi];function Wi(e){return cn(Hi,e.name)}Object.freeze(Hi);class zi extends Error{constructor(e,t){super(e),this.token=t,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}class Yi extends zi{constructor(e,t,n){super(e,t),this.previousToken=n,this.name=Ki}}class Xi extends zi{constructor(e,t,n){super(e,t),this.previousToken=n,this.name=Bi}}class qi extends zi{constructor(e,t){super(e,t),this.name=Vi}}class Qi extends zi{constructor(e,t,n){super(e,t),this.previousToken=n,this.name=ji}}const Ji={},Zi="InRuleRecoveryException";class es extends Error{constructor(e){super(e),this.name=Zi}}function ts(e,t,n,r,i,s,a){const o=this.getKeyForAutomaticLookahead(r,i);let c=this.firstAfterRepMap[o];if(void 0===c){const e=this.getCurrRuleFullName();c=new s(this.getGAstProductions()[e],i).startWalking(),this.firstAfterRepMap[o]=c}let l=c.token,u=c.occurrence;const d=c.isEndOfRule;1===this.RULE_STACK.length&&d&&void 0===l&&(l=zr,u=1),void 0!==l&&void 0!==u&&this.shouldInRepetitionRecoveryBeTried(l,u,a)&&this.tryInRepetitionRecovery(e,t,n,l)}const ns=1024,rs=1280,is=1536;function ss(e,t,n){return n|t|e}class as{constructor(e){var t;this.maxLookahead=null!==(t=null==e?void 0:e.maxLookahead)&&void 0!==t?t:Ss.maxLookahead}validate(e){const t=this.validateNoLeftRecursion(e.rules);if((0,ht.A)(t)){const n=this.validateEmptyOrAlternatives(e.rules),r=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),i=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...t,...n,...r,...i]}return t}validateNoLeftRecursion(e){return ei(e,(e=>Di(e,e,Jr)))}validateEmptyOrAlternatives(e){return ei(e,(e=>function(e,t){const n=new Fi;e.accept(n);const r=n.alternations;return ei(r,(n=>{const r=ci(n.definition);return ei(r,((r,i)=>{const s=yi([r],[],xr,1);return(0,ht.A)(s)?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:n,emptyChoiceIdx:i}),type:Cs.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:n.idx,alternative:i+1}]:[]}))}))}(e,Jr)))}validateAmbiguousAlternationAlternatives(e,t){return ei(e,(e=>function(e,t,n){const r=new Fi;e.accept(r);let i=r.alternations;i=Sn(i,(e=>!0===e.ignoreAmbiguities));return ei(i,(r=>{const i=r.idx,s=r.maxLookahead||t,a=wi(i,e,s,r),o=function(e,t,n,r){const i=[],s=(0,wn.A)(e,((n,r,s)=>(!0===t.definition[s].ignoreAmbiguities||(0,ut.A)(r,(r=>{const a=[s];(0,ut.A)(e,((e,n)=>{s!==n&&Oi(e,r)&&!0!==t.definition[n].ignoreAmbiguities&&a.push(n)})),a.length>1&&!Oi(i,r)&&(i.push(r),n.push({alts:a,path:r}))})),n)),[]);return(0,ft.A)(s,(e=>{const i=(0,ft.A)(e.alts,(e=>e+1));return{message:r.buildAlternationAmbiguityError({topLevelRule:n,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:Cs.AMBIGUOUS_ALTS,ruleName:n.name,occurrence:t.idx,alternatives:e.alts}}))}(a,r,e,n),c=function(e,t,n,r){const i=(0,wn.A)(e,((e,t,n)=>{const r=(0,ft.A)(t,(e=>({idx:n,path:e})));return e.concat(r)}),[]);return Gn(ei(i,(e=>{if(!0===t.definition[e.idx].ignoreAmbiguities)return[];const s=e.idx,a=e.path,o=(0,Ln.A)(i,(e=>{return!0!==t.definition[e.idx].ignoreAmbiguities&&e.idx{const n=r[t];return e===n||n.categoryMatchesMap[e.tokenTypeIdx]})));var n,r}));return(0,ft.A)(o,(e=>{const i=[e.idx+1,s+1],a=0===t.idx?"":t.idx;return{message:r.buildAlternationPrefixAmbiguityError({topLevelRule:n,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:Cs.AMBIGUOUS_PREFIX_ALTS,ruleName:n.name,occurrence:a,alternatives:i}}))})))}(a,r,e,n);return o.concat(c)}))}(e,t,Jr)))}validateSomeNonEmptyLookaheadPath(e,t){return function(e,t,n){const r=[];return(0,ut.A)(e,(e=>{const i=new Gi;e.accept(i);const s=i.allProductions;(0,ut.A)(s,(i=>{const s=vi(i),a=i.maxLookahead||t,o=Li(i.idx,e,s,a)[0];if((0,ht.A)((0,An.A)(o))){const t=n.buildEmptyRepetitionError({topLevelRule:e,repetition:i});r.push({message:t,type:Cs.NO_NON_EMPTY_LOOKAHEAD,ruleName:e.name})}}))})),r}(e,t,Jr)}buildLookaheadForAlternation(e){return function(e,t,n,r,i,s){const a=wi(e,t,n);return s(a,r,bi(a)?Ir:xr,i)}(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,Ei)}buildLookaheadForOptional(e){return function(e,t,n,r,i,s){const a=Li(e,t,i,n),o=bi(a)?Ir:xr;return s(a[0],o,r)}(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,vi(e.prodType),ki)}}const os=new class extends Jt{constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}};function cs(e,t){!0===isNaN(e.startOffset)?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset(0,Nn.A)(e.GATE)));return s.hasPredicates=a,n.definition.push(s),(0,ut.A)(i,(e=>{const t=new jt({definition:[]});s.definition.push(t),(0,pt.A)(e,"IGNORE_AMBIGUITIES")?t.ignoreAmbiguities=e.IGNORE_AMBIGUITIES:(0,pt.A)(e,"GATE")&&(t.ignoreAmbiguities=!0),this.recordingProdStack.push(t),e.ALT.call(this),this.recordingProdStack.pop()})),ms}function ks(e){return 0===e?"":`${e}`}function xs(e){if(e<0||e>ys){const t=new Error(`Invalid DSL Method idx value: <${e}>\n\tIdx value must be a none negative value smaller than ${ys+1}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}const Is=Yr(zr,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Is);const Ss=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:qr,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Ns=Object.freeze({recoveryValueFunc:()=>{},resyncEnabled:!0});var Cs,$s,ws;function Ls(e=void 0){return function(){return e}}!function(e){e[e.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",e[e.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",e[e.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",e[e.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",e[e.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",e[e.LEFT_RECURSION=5]="LEFT_RECURSION",e[e.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",e[e.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",e[e.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",e[e.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",e[e.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",e[e.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",e[e.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",e[e.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"}(Cs||(Cs={}));class Os{static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated.\t\nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",(()=>{let e;this.selfAnalysisDone=!0;const t=this.className;this.TRACE_INIT("toFastProps",(()=>{gt(this)})),this.TRACE_INIT("Grammar Recording",(()=>{try{this.enableRecording(),(0,ut.A)(this.definedRulesNames,(e=>{const t=this[e].originalGrammarAction;let n;this.TRACE_INIT(`${e} Rule`,(()=>{n=this.topLevelRuleRecord(e,t)})),this.gastProductionsCache[e]=n}))}finally{this.disableRecording()}}));let n=[];if(this.TRACE_INIT("Grammar Resolving",(()=>{n=function(e){const t=(0,kn.A)(e,{errMsgProvider:Qr}),n={};return(0,ut.A)(e.rules,(e=>{n[e.name]=e})),function(e,t){const n=new Zr(e,t);return n.resolveRefs(),n.errors}(n,t.errMsgProvider)}({rules:(0,dt.A)(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)})),this.TRACE_INIT("Grammar Validations",(()=>{if((0,ht.A)(n)&&!1===this.skipValidations){const n=(e={rules:(0,dt.A)(this.gastProductionsCache),tokenTypes:(0,dt.A)(this.tokensMap),errMsgProvider:Jr,grammarName:t},function(e,t,n,r){const i=ei(e,(e=>function(e,t){const n=new Mi;e.accept(n);const r=n.allProductions,i=si(r,_i),s=bt(i,(e=>e.length>1));return(0,ft.A)((0,dt.A)(s),(n=>{const r=Kn(n),i=t.buildDuplicateFoundError(e,n),s=fn(r),a={message:i,type:Cs.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:s,occurrence:r.idx},o=Pi(r);return o&&(a.parameter=o),a}))}(e,n))),s=function(e,t,n){const r=[],i=(0,ft.A)(t,(e=>e.name));return(0,ut.A)(e,(e=>{const t=e.name;if(cn(i,t)){const i=n.buildNamespaceConflictError(e);r.push({message:i,type:Cs.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:t})}})),r}(e,t,n),a=ei(e,(e=>function(e,t){const n=new Fi;e.accept(n);const r=n.alternations;return ei(r,(n=>n.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:n}),type:Cs.TOO_MANY_ALTS,ruleName:e.name,occurrence:n.idx}]:[]))}(e,n))),o=ei(e,(t=>function(e,t,n,r){const i=[],s=(0,wn.A)(t,((t,n)=>n.name===e.name?t+1:t),0);if(s>1){const t=r.buildDuplicateRuleNameError({topLevelRule:e,grammarName:n});i.push({message:t,type:Cs.DUPLICATE_RULE_NAME,ruleName:e.name})}return i}(t,e,r,n)));return i.concat(s,a,o)}((e=(0,kn.A)(e,{errMsgProvider:Jr})).rules,e.tokenTypes,e.errMsgProvider,e.grammarName)),r=function(e){const t=e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName});return(0,ft.A)(t,(e=>Object.assign({type:Cs.CUSTOM_LOOKAHEAD_VALIDATION},e)))}({lookaheadStrategy:this.lookaheadStrategy,rules:(0,dt.A)(this.gastProductionsCache),tokenTypes:(0,dt.A)(this.tokensMap),grammarName:t});this.definitionErrors=this.definitionErrors.concat(n,r)}var e})),(0,ht.A)(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",(()=>{const e=function(e){const t={};return(0,ut.A)(e,(e=>{const n=new Rn(e).startWalking();Ct(t,n)})),t}((0,dt.A)(this.gastProductionsCache));this.resyncFollows=e})),this.TRACE_INIT("ComputeLookaheadFunctions",(()=>{var e,t;null===(t=(e=this.lookaheadStrategy).initialize)||void 0===t||t.call(e,{rules:(0,dt.A)(this.gastProductionsCache)}),this.preComputeLookaheadFunctions((0,dt.A)(this.gastProductionsCache))}))),!Os.DEFER_DEFINITION_ERRORS_HANDLING&&!(0,ht.A)(this.definitionErrors))throw e=(0,ft.A)(this.definitionErrors,(e=>e.message)),new Error(`Parser Definition Errors detected:\n ${e.join("\n-------------------------------\n")}`)}))}constructor(e,t){this.definitionErrors=[],this.selfAnalysisDone=!1;const n=this;if(n.initErrorHandler(t),n.initLexerAdapter(),n.initLooksAhead(t),n.initRecognizerEngine(e,t),n.initRecoverable(t),n.initTreeBuilder(t),n.initContentAssist(),n.initGastRecorder(t),n.initPerformanceTracer(t),(0,pt.A)(t,"ignoredIssues"))throw new Error("The IParserConfig property has been deprecated.\n\tPlease use the flag on the relevant DSL method instead.\n\tSee: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES\n\tFor further details.");this.skipValidations=(0,pt.A)(t,"skipValidations")?t.skipValidations:Ss.skipValidations}}Os.DEFER_DEFINITION_ERRORS_HANDLING=!1,$s=Os,ws=[class{initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=(0,pt.A)(e,"recoveryEnabled")?e.recoveryEnabled:Ss.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=ts)}getTokenToInsert(e){const t=Yr(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return t.isInsertedInRecovery=!0,t}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,t,n,r){const i=this.findReSyncTokenType(),s=this.exportLexerState(),a=[];let o=!1;const c=this.LA(1);let l=this.LA(1);const u=()=>{const e=this.LA(0),t=this.errorMessageProvider.buildMismatchTokenMessage({expected:r,actual:c,previous:e,ruleName:this.getCurrRuleFullName()}),n=new Yi(t,c,this.LA(0));n.resyncedTokens=ci(a),this.SAVE_ERROR(n)};for(;!o;){if(this.tokenMatcher(l,r))return void u();if(n.call(this))return u(),void e.apply(this,t);this.tokenMatcher(l,i)?o=!0:(l=this.SKIP_TOKEN(),this.addToResyncTokens(l,a))}this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(e,t,n){return!1!==n&&!this.tokenMatcher(this.LA(1),e)&&!this.isBackTracking()&&!this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,t))}getFollowsForInRuleRecovery(e,t){const n=this.getCurrentGrammarPath(e,t);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,t){if(this.canRecoverWithSingleTokenInsertion(e,t))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){const e=this.SKIP_TOKEN();return this.consumeToken(),e}throw new es("sad sad panda")}canPerformInRuleRecovery(e,t){return this.canRecoverWithSingleTokenInsertion(e,t)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,t){if(!this.canTokenTypeBeInsertedInRecovery(e))return!1;if((0,ht.A)(t))return!1;const n=this.LA(1);return void 0!==(0,Bn.A)(t,(e=>this.tokenMatcher(n,e)))}canRecoverWithSingleTokenDeletion(e){return!!this.canTokenTypeBeDeletedInRecovery(e)&&this.tokenMatcher(this.LA(2),e)}isInCurrentRuleReSyncSet(e){const t=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(t);return cn(n,e)}findReSyncTokenType(){const e=this.flattenFollowSet();let t=this.LA(1),n=2;for(;;){const r=(0,Bn.A)(e,(e=>Xr(t,e)));if(void 0!==r)return r;t=this.LA(n),n++}}getCurrFollowKey(){if(1===this.RULE_STACK.length)return Ji;const e=this.getLastExplicitRuleShortName(),t=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:t,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){const e=this.RULE_STACK,t=this.RULE_OCCURRENCE_STACK;return(0,ft.A)(e,((n,r)=>0===r?Ji:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:t[r],inRule:this.shortRuleNameToFullName(e[r-1])}))}flattenFollowSet(){const e=(0,ft.A)(this.buildFullFollowKeyStack(),(e=>this.getFollowSetFromFollowKey(e)));return(0,An.A)(e)}getFollowSetFromFollowKey(e){if(e===Ji)return[zr];const t=e.ruleName+e.idxInCallingRule+vn+e.inRule;return this.resyncFollows[t]}addToResyncTokens(e,t){return this.tokenMatcher(e,zr)||t.push(e),t}reSyncTo(e){const t=[];let n=this.LA(1);for(;!1===this.tokenMatcher(n,e);)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,t);return ci(t)}attemptInRepetitionRecovery(e,t,n,r,i,s,a){}getCurrentGrammarPath(e,t){return{ruleStack:this.getHumanReadableRuleStack(),occurrenceStack:(0,mt.A)(this.RULE_OCCURRENCE_STACK),lastTok:e,lastTokOccurrence:t}}getHumanReadableRuleStack(){return(0,ft.A)(this.RULE_STACK,(e=>this.shortRuleNameToFullName(e)))}},class{initLooksAhead(e){this.dynamicTokensEnabled=(0,pt.A)(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:Ss.dynamicTokensEnabled,this.maxLookahead=(0,pt.A)(e,"maxLookahead")?e.maxLookahead:Ss.maxLookahead,this.lookaheadStrategy=(0,pt.A)(e,"lookaheadStrategy")?e.lookaheadStrategy:new as({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){(0,ut.A)(e,(e=>{this.TRACE_INIT(`${e.name} Rule Lookahead`,(()=>{const{alternation:t,repetition:n,option:r,repetitionMandatory:i,repetitionMandatoryWithSeparator:s,repetitionWithSeparator:a}=function(e){os.reset(),e.accept(os);const t=os.dslMethods;return os.reset(),t}(e);(0,ut.A)(t,(t=>{const n=0===t.idx?"":t.idx;this.TRACE_INIT(`${fn(t)}${n}`,(()=>{const n=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:t.idx,rule:e,maxLookahead:t.maxLookahead||this.maxLookahead,hasPredicates:t.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),r=ss(this.fullRuleNameToShort[e.name],256,t.idx);this.setLaFuncCache(r,n)}))})),(0,ut.A)(n,(t=>{this.computeLookaheadFunc(e,t.idx,768,"Repetition",t.maxLookahead,fn(t))})),(0,ut.A)(r,(t=>{this.computeLookaheadFunc(e,t.idx,512,"Option",t.maxLookahead,fn(t))})),(0,ut.A)(i,(t=>{this.computeLookaheadFunc(e,t.idx,ns,"RepetitionMandatory",t.maxLookahead,fn(t))})),(0,ut.A)(s,(t=>{this.computeLookaheadFunc(e,t.idx,is,"RepetitionMandatoryWithSeparator",t.maxLookahead,fn(t))})),(0,ut.A)(a,(t=>{this.computeLookaheadFunc(e,t.idx,rs,"RepetitionWithSeparator",t.maxLookahead,fn(t))}))}))}))}computeLookaheadFunc(e,t,n,r,i,s){this.TRACE_INIT(`${s}${0===t?"":t}`,(()=>{const s=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:t,rule:e,maxLookahead:i||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:r}),a=ss(this.fullRuleNameToShort[e.name],n,t);this.setLaFuncCache(a,s)}))}getKeyForAutomaticLookahead(e,t){return ss(this.getLastExplicitRuleShortName(),e,t)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,t){this.lookAheadFuncsCache.set(e,t)}},class{initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=(0,pt.A)(e,"nodeLocationTracking")?e.nodeLocationTracking:Ss.nodeLocationTracking,this.outputCst)if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=ls,this.setNodeLocationFromNode=ls,this.cstPostRule=Rr.A,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=Rr.A,this.setNodeLocationFromNode=Rr.A,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=cs,this.setNodeLocationFromNode=cs,this.cstPostRule=Rr.A,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=Rr.A,this.setNodeLocationFromNode=Rr.A,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else{if(!/none/i.test(this.nodeLocationTracking))throw Error(`Invalid config option: "${e.nodeLocationTracking}"`);this.setNodeLocationFromToken=Rr.A,this.setNodeLocationFromNode=Rr.A,this.cstPostRule=Rr.A,this.setInitialNodeLocation=Rr.A}else this.cstInvocationStateUpdate=Rr.A,this.cstFinallyStateUpdate=Rr.A,this.cstPostTerminal=Rr.A,this.cstPostNonTerminal=Rr.A,this.cstPostRule=Rr.A}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){const t=this.LA(1);e.location={startOffset:t.startOffset,startLine:t.startLine,startColumn:t.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){const t={name:e,children:Object.create(null)};this.setInitialNodeLocation(t),this.CST_STACK.push(t)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){const t=this.LA(0),n=e.location;n.startOffset<=t.startOffset==1?(n.endOffset=t.endOffset,n.endLine=t.endLine,n.endColumn=t.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){const t=this.LA(0),n=e.location;n.startOffset<=t.startOffset==1?n.endOffset=t.endOffset:n.startOffset=NaN}cstPostTerminal(e,t){const n=this.CST_STACK[this.CST_STACK.length-1];var r,i,s;i=t,s=e,void 0===(r=n).children[s]?r.children[s]=[i]:r.children[s].push(i),this.setNodeLocationFromToken(n.location,t)}cstPostNonTerminal(e,t){const n=this.CST_STACK[this.CST_STACK.length-1];!function(e,t,n){void 0===e.children[t]?e.children[t]=[n]:e.children[t].push(n)}(n,t,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if((0,En.A)(this.baseCstVisitorConstructor)){const e=function(e,t){const n=function(){};ds(n,e+"BaseSemantics");const r={visit:function(e,t){if((0,nn.A)(e)&&(e=e[0]),!(0,En.A)(e))return this[e.name](e.children,t)},validateVisitor:function(){const e=function(e,t){const n=function(e,t){const n=(0,Ln.A)(t,(t=>!1===(0,Nn.A)(e[t]))),r=(0,ft.A)(n,(t=>({msg:`Missing visitor method: <${t}> on ${e.constructor.name} CST Visitor.`,type:fs.MISSING_METHOD,methodName:t})));return Gn(r)}(e,t);return n}(this,t);if(!(0,ht.A)(e)){const t=(0,ft.A)(e,(e=>e.msg));throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:\n\t${t.join("\n\n").replace(/\n/g,"\n\t")}`)}}};return(n.prototype=r).constructor=n,n._RULE_NAMES=t,n}(this.className,(0,St.A)(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if((0,En.A)(this.baseCstVisitorWithDefaultsConstructor)){const e=function(e,t,n){const r=function(){};ds(r,e+"BaseSemanticsWithDefaults");const i=Object.create(n.prototype);return(0,ut.A)(t,(e=>{i[e]=hs})),(r.prototype=i).constructor=r,r}(this.className,(0,St.A)(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){const e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}},class{initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(!0!==this.selfAnalysisDone)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):Is}LA(e){const t=this.currIdx+e;return t<0||this.tokVectorLength<=t?Is:this.tokVector[t]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}},class{initRecognizerEngine(e,t){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=Ir,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},(0,pt.A)(t,"serializedGrammar"))throw Error("The Parser's configuration can no longer contain a property.\n\tSee: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0\n\tFor Further details.");if((0,nn.A)(e)){if((0,ht.A)(e))throw Error("A Token Vocabulary cannot be empty.\n\tNote that the first argument for the parser constructor\n\tis no longer a Token vector (since v4.0).");if("number"==typeof e[0].startOffset)throw Error("The Parser constructor no longer accepts a token vector as the first argument.\n\tSee: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0\n\tFor Further details.")}if((0,nn.A)(e))this.tokensMap=(0,wn.A)(e,((e,t)=>(e[t.name]=t,e)),{});else if((0,pt.A)(e,"modes")&&dn((0,An.A)((0,dt.A)(e.modes)),Or)){const t=(0,An.A)((0,dt.A)(e.modes)),n=yn(t);this.tokensMap=(0,wn.A)(n,((e,t)=>(e[t.name]=t,e)),{})}else{if(!(0,ps.A)(e))throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap=(0,mt.A)(e)}this.tokensMap.EOF=zr;const n=(0,pt.A)(e,"modes")?(0,An.A)((0,dt.A)(e.modes)):(0,dt.A)(e),r=dn(n,(e=>(0,ht.A)(e.categoryMatches)));this.tokenMatcher=r?Ir:xr,Cr((0,dt.A)(this.tokensMap))}defineRule(e,t,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'\nMake sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);const r=(0,pt.A)(n,"resyncEnabled")?n.resyncEnabled:Ns.resyncEnabled,i=(0,pt.A)(n,"recoveryValueFunc")?n.recoveryValueFunc:Ns.recoveryValueFunc,s=this.ruleShortNameIdx<<12;let a;return this.ruleShortNameIdx++,this.shortRuleNameToFull[s]=e,this.fullRuleNameToShort[e]=s,a=!0===this.outputCst?function(...n){try{this.ruleInvocationStateUpdate(s,e,this.subruleIdx),t.apply(this,n);const r=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(r),r}catch(e){return this.invokeRuleCatch(e,r,i)}finally{this.ruleFinallyStateUpdate()}}:function(...n){try{return this.ruleInvocationStateUpdate(s,e,this.subruleIdx),t.apply(this,n)}catch(e){return this.invokeRuleCatch(e,r,i)}finally{this.ruleFinallyStateUpdate()}},Object.assign(a,{ruleName:e,originalGrammarAction:t})}invokeRuleCatch(e,t,n){const r=1===this.RULE_STACK.length,i=t&&!this.isBackTracking()&&this.recoveryEnabled;if(Wi(e)){const t=e;if(i){const r=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(r)){if(t.resyncedTokens=this.reSyncTo(r),this.outputCst){const e=this.CST_STACK[this.CST_STACK.length-1];return e.recoveredNode=!0,e}return n(e)}if(this.outputCst){const e=this.CST_STACK[this.CST_STACK.length-1];e.recoveredNode=!0,t.partialCstResult=e}throw t}if(r)return this.moveToTerminatedState(),n(e);throw t}throw e}optionInternal(e,t){const n=this.getKeyForAutomaticLookahead(512,t);return this.optionInternalLogic(e,t,n)}optionInternalLogic(e,t,n){let r,i=this.getLaFuncFromCache(n);if("function"!=typeof e){r=e.DEF;const t=e.GATE;if(void 0!==t){const e=i;i=()=>t.call(this)&&e.call(this)}}else r=e;if(!0===i.call(this))return r.call(this)}atLeastOneInternal(e,t){const n=this.getKeyForAutomaticLookahead(ns,e);return this.atLeastOneInternalLogic(e,t,n)}atLeastOneInternalLogic(e,t,n){let r,i=this.getLaFuncFromCache(n);if("function"!=typeof t){r=t.DEF;const e=t.GATE;if(void 0!==e){const t=i;i=()=>e.call(this)&&t.call(this)}}else r=t;if(!0!==i.call(this))throw this.raiseEarlyExitException(e,Ti.REPETITION_MANDATORY,t.ERR_MSG);{let e=this.doSingleRepetition(r);for(;!0===i.call(this)&&!0===e;)e=this.doSingleRepetition(r)}this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,t],i,ns,e,pi)}atLeastOneSepFirstInternal(e,t){const n=this.getKeyForAutomaticLookahead(is,e);this.atLeastOneSepFirstInternalLogic(e,t,n)}atLeastOneSepFirstInternalLogic(e,t,n){const r=t.DEF,i=t.SEP;if(!0!==this.getLaFuncFromCache(n).call(this))throw this.raiseEarlyExitException(e,Ti.REPETITION_MANDATORY_WITH_SEPARATOR,t.ERR_MSG);{r.call(this);const t=()=>this.tokenMatcher(this.LA(1),i);for(;!0===this.tokenMatcher(this.LA(1),i);)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,r,mi],t,is,e,mi)}}manyInternal(e,t){const n=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,t,n)}manyInternalLogic(e,t,n){let r,i=this.getLaFuncFromCache(n);if("function"!=typeof t){r=t.DEF;const e=t.GATE;if(void 0!==e){const t=i;i=()=>e.call(this)&&t.call(this)}}else r=t;let s=!0;for(;!0===i.call(this)&&!0===s;)s=this.doSingleRepetition(r);this.attemptInRepetitionRecovery(this.manyInternal,[e,t],i,768,e,hi,s)}manySepFirstInternal(e,t){const n=this.getKeyForAutomaticLookahead(rs,e);this.manySepFirstInternalLogic(e,t,n)}manySepFirstInternalLogic(e,t,n){const r=t.DEF,i=t.SEP;if(!0===this.getLaFuncFromCache(n).call(this)){r.call(this);const t=()=>this.tokenMatcher(this.LA(1),i);for(;!0===this.tokenMatcher(this.LA(1),i);)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,r,fi],t,rs,e,fi)}}repetitionSepSecondInternal(e,t,n,r,i){for(;n();)this.CONSUME(t),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,t,n,r,i],n,is,e,i)}doSingleRepetition(e){const t=this.getLexerPosition();return e.call(this),this.getLexerPosition()>t}orInternal(e,t){const n=this.getKeyForAutomaticLookahead(256,t),r=(0,nn.A)(e)?e:e.DEF,i=this.getLaFuncFromCache(n).call(this,r);if(void 0!==i)return r[i].ALT.call(this);this.raiseNoAltException(t,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),0===this.RULE_STACK.length&&!1===this.isAtEndOfInput()){const e=this.LA(1),t=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new qi(t,e))}}subruleInternal(e,t,n){let r;try{const i=void 0!==n?n.ARGS:void 0;return this.subruleIdx=t,r=e.apply(this,i),this.cstPostNonTerminal(r,void 0!==n&&void 0!==n.LABEL?n.LABEL:e.ruleName),r}catch(t){throw this.subruleInternalError(t,n,e.ruleName)}}subruleInternalError(e,t,n){throw Wi(e)&&void 0!==e.partialCstResult&&(this.cstPostNonTerminal(e.partialCstResult,void 0!==t&&void 0!==t.LABEL?t.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,t,n){let r;try{const t=this.LA(1);!0===this.tokenMatcher(t,e)?(this.consumeToken(),r=t):this.consumeInternalError(e,t,n)}catch(n){r=this.consumeInternalRecovery(e,t,n)}return this.cstPostTerminal(void 0!==n&&void 0!==n.LABEL?n.LABEL:e.name,r),r}consumeInternalError(e,t,n){let r;const i=this.LA(0);throw r=void 0!==n&&n.ERR_MSG?n.ERR_MSG:this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:t,previous:i,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Yi(r,t,i))}consumeInternalRecovery(e,t,n){if(!this.recoveryEnabled||"MismatchedTokenException"!==n.name||this.isBackTracking())throw n;{const r=this.getFollowsForInRuleRecovery(e,t);try{return this.tryInRuleRecovery(e,r)}catch(e){throw e.name===Zi?n:e}}}saveRecogState(){const e=this.errors,t=(0,mt.A)(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:t,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,t,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(t)}isBackTracking(){return 0!==this.isBackTrackingStack.length}getCurrRuleFullName(){const e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),zr)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},class{ACTION(e){return e.call(this)}consume(e,t,n){return this.consumeInternal(t,e,n)}subrule(e,t,n){return this.subruleInternal(t,e,n)}option(e,t){return this.optionInternal(t,e)}or(e,t){return this.orInternal(t,e)}many(e,t){return this.manyInternal(e,t)}atLeastOne(e,t){return this.atLeastOneInternal(e,t)}CONSUME(e,t){return this.consumeInternal(e,0,t)}CONSUME1(e,t){return this.consumeInternal(e,1,t)}CONSUME2(e,t){return this.consumeInternal(e,2,t)}CONSUME3(e,t){return this.consumeInternal(e,3,t)}CONSUME4(e,t){return this.consumeInternal(e,4,t)}CONSUME5(e,t){return this.consumeInternal(e,5,t)}CONSUME6(e,t){return this.consumeInternal(e,6,t)}CONSUME7(e,t){return this.consumeInternal(e,7,t)}CONSUME8(e,t){return this.consumeInternal(e,8,t)}CONSUME9(e,t){return this.consumeInternal(e,9,t)}SUBRULE(e,t){return this.subruleInternal(e,0,t)}SUBRULE1(e,t){return this.subruleInternal(e,1,t)}SUBRULE2(e,t){return this.subruleInternal(e,2,t)}SUBRULE3(e,t){return this.subruleInternal(e,3,t)}SUBRULE4(e,t){return this.subruleInternal(e,4,t)}SUBRULE5(e,t){return this.subruleInternal(e,5,t)}SUBRULE6(e,t){return this.subruleInternal(e,6,t)}SUBRULE7(e,t){return this.subruleInternal(e,7,t)}SUBRULE8(e,t){return this.subruleInternal(e,8,t)}SUBRULE9(e,t){return this.subruleInternal(e,9,t)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,t,n=Ns){if(cn(this.definedRulesNames,e)){const t={message:Jr.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:Cs.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(t)}this.definedRulesNames.push(e);const r=this.defineRule(e,t,n);return this[e]=r,r}OVERRIDE_RULE(e,t,n=Ns){const r=function(e,t,n){const r=[];let i;return cn(t,e)||(i=`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${n}<-as it is not defined in any of the super grammars `,r.push({message:i,type:Cs.INVALID_RULE_OVERRIDE,ruleName:e})),r}(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(r);const i=this.defineRule(e,t,n);return this[e]=i,i}BACKTRACK(e,t){return function(){this.isBackTrackingStack.push(1);const n=this.saveRecogState();try{return e.apply(this,t),!0}catch(e){if(Wi(e))return!1;throw e}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return e=(0,dt.A)(this.gastProductionsCache),(0,ft.A)(e,Qt);var e}},class{initErrorHandler(e){this._errors=[],this.errorMessageProvider=(0,pt.A)(e,"errorMessageProvider")?e.errorMessageProvider:Ss.errorMessageProvider}SAVE_ERROR(e){if(Wi(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:(0,mt.A)(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return(0,mt.A)(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,t,n){const r=this.getCurrRuleFullName(),i=Li(e,this.getGAstProductions()[r],t,this.maxLookahead)[0],s=[];for(let e=1;e<=this.maxLookahead;e++)s.push(this.LA(e));const a=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:i,actual:s,previous:this.LA(0),customUserDescription:n,ruleName:r});throw this.SAVE_ERROR(new Qi(a,this.LA(1),this.LA(0)))}raiseNoAltException(e,t){const n=this.getCurrRuleFullName(),r=wi(e,this.getGAstProductions()[n],this.maxLookahead),i=[];for(let e=1;e<=this.maxLookahead;e++)i.push(this.LA(e));const s=this.LA(0),a=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:r,actual:i,previous:s,customUserDescription:t,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Xi(a,this.LA(1),s))}},class{initContentAssist(){}computeContentAssist(e,t){const n=this.gastProductionsCache[e];if((0,En.A)(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return yi([n],t,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){const t=Kn(e.ruleStack),n=this.getGAstProductions()[t];return new ui(n,e).startWalking()}},class{initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",(()=>{for(let e=0;e<10;e++){const t=e>0?e:"";this[`CONSUME${t}`]=function(t,n){return this.consumeInternalRecord(t,e,n)},this[`SUBRULE${t}`]=function(t,n){return this.subruleInternalRecord(t,e,n)},this[`OPTION${t}`]=function(t){return this.optionInternalRecord(t,e)},this[`OR${t}`]=function(t){return this.orInternalRecord(t,e)},this[`MANY${t}`]=function(t){this.manyInternalRecord(e,t)},this[`MANY_SEP${t}`]=function(t){this.manySepFirstInternalRecord(e,t)},this[`AT_LEAST_ONE${t}`]=function(t){this.atLeastOneInternalRecord(e,t)},this[`AT_LEAST_ONE_SEP${t}`]=function(t){this.atLeastOneSepFirstInternalRecord(e,t)}}this.consume=function(e,t,n){return this.consumeInternalRecord(t,e,n)},this.subrule=function(e,t,n){return this.subruleInternalRecord(t,e,n)},this.option=function(e,t){return this.optionInternalRecord(t,e)},this.or=function(e,t){return this.orInternalRecord(t,e)},this.many=function(e,t){this.manyInternalRecord(e,t)},this.atLeastOne=function(e,t){this.atLeastOneInternalRecord(e,t)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD}))}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",(()=>{const e=this;for(let t=0;t<10;t++){const n=t>0?t:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA}))}ACTION_RECORD(e){}BACKTRACK_RECORD(e,t){return()=>!0}LA_RECORD(e){return Is}topLevelRuleRecord(e,t){try{const n=new Bt({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),t.call(this),this.recordingProdStack.pop(),n}catch(e){if(!0!==e.KNOWN_RECORDER_ERROR)try{e.message=e.message+'\n\t This error was thrown during the "grammar recording phase" For more info see:\n\thttps://chevrotain.io/docs/guide/internals.html#grammar-recording'}catch(t){throw e}throw e}}optionInternalRecord(e,t){return Rs.call(this,Vt,e,t)}atLeastOneInternalRecord(e,t){Rs.call(this,Ht,t,e)}atLeastOneSepFirstInternalRecord(e,t){Rs.call(this,Wt,t,e,gs)}manyInternalRecord(e,t){Rs.call(this,zt,t,e)}manySepFirstInternalRecord(e,t){Rs.call(this,Yt,t,e,gs)}orInternalRecord(e,t){return Es.call(this,e,t)}subruleInternalRecord(e,t,n){if(xs(t),!e||!1===(0,pt.A)(e,"ruleName")){const n=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>\n inside top level rule: <${this.recordingProdStack[0].name}>`);throw n.KNOWN_RECORDER_ERROR=!0,n}const r=(0,Er.A)(this.recordingProdStack),i=e.ruleName,s=new Kt({idx:t,nonTerminalName:i,label:null==n?void 0:n.LABEL,referencedRule:void 0});return r.definition.push(s),this.outputCst?vs:ms}consumeInternalRecord(e,t,n){if(xs(t),!wr(e)){const n=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>\n inside top level rule: <${this.recordingProdStack[0].name}>`);throw n.KNOWN_RECORDER_ERROR=!0,n}const r=(0,Er.A)(this.recordingProdStack),i=new qt({idx:t,terminalType:e,label:null==n?void 0:n.LABEL});return r.definition.push(i),Ts}},class{initPerformanceTracer(e){if((0,pt.A)(e,"traceInitPerf")){const t=e.traceInitPerf,n="number"==typeof t;this.traceInitMaxIdent=n?t:1/0,this.traceInitPerf=n?t>0:t}else this.traceInitMaxIdent=0,this.traceInitPerf=Ss.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,t){if(!0===this.traceInitPerf){this.traceInitIndent++;const n=new Array(this.traceInitIndent+1).join("\t");this.traceInitIndent`);const{time:r,value:i}=kr(t),s=r>10?console.warn:console.log;return this.traceInitIndent time: ${r}ms`),this.traceInitIndent--,i}return t()}}],ws.forEach((e=>{const t=e.prototype;Object.getOwnPropertyNames(t).forEach((n=>{if("constructor"===n)return;const r=Object.getOwnPropertyDescriptor(t,n);r&&(r.get||r.set)?Object.defineProperty($s.prototype,n,r):$s.prototype[n]=e.prototype[n]}))}));class bs extends Os{constructor(e,t=Ss){const n=(0,mt.A)(t);n.outputCst=!1,super(e,n)}}function _s(e,t,n){return`${e.name}_${t}_${n}`}const Ps=1,Ms=4,Ds=5,Us=7,Fs=8,Gs=9,Ks=10,Bs=11,js=12;class Vs{constructor(e){this.target=e}isEpsilon(){return!1}}class Hs extends Vs{constructor(e,t){super(e),this.tokenType=t}}class Ws extends Vs{constructor(e){super(e)}isEpsilon(){return!0}}class zs extends Vs{constructor(e,t,n){super(e),this.rule=t,this.followState=n}isEpsilon(){return!0}}function Ys(e,t,n){return n instanceof qt?ea(e,t,n.terminalType,n):n instanceof Kt?function(e,t,n){const r=n.referencedRule,i=e.ruleToStartState.get(r),s=ra(e,t,n,{type:Ps}),a=ra(e,t,n,{type:Ps});return ia(s,new zs(i,r,a)),{left:s,right:a}}(e,t,n):n instanceof Xt?function(e,t,n){const r=ra(e,t,n,{type:Ps});Js(e,r);const i=(0,ft.A)(n.definition,(n=>Ys(e,t,n)));return Zs(e,t,r,n,...i)}(e,t,n):n instanceof Vt?function(e,t,n){const r=ra(e,t,n,{type:Ps});Js(e,r);return function(e,t,n,r){const i=r.left;return na(i,r.right),e.decisionMap[_s(t,"Option",n.idx)]=i,r}(e,t,n,Zs(e,t,r,n,Xs(e,t,n)))}(e,t,n):n instanceof zt?function(e,t,n){const r=ra(e,t,n,{type:Ds});Js(e,r);return Qs(e,t,n,Zs(e,t,r,n,Xs(e,t,n)))}(e,t,n):n instanceof Yt?function(e,t,n){const r=ra(e,t,n,{type:Ds});Js(e,r);return Qs(e,t,n,Zs(e,t,r,n,Xs(e,t,n)),ea(e,t,n.separator,n))}(e,t,n):n instanceof Ht?function(e,t,n){const r=ra(e,t,n,{type:Ms});Js(e,r);return qs(e,t,n,Zs(e,t,r,n,Xs(e,t,n)))}(e,t,n):n instanceof Wt?function(e,t,n){const r=ra(e,t,n,{type:Ms});Js(e,r);return qs(e,t,n,Zs(e,t,r,n,Xs(e,t,n)),ea(e,t,n.separator,n))}(e,t,n):Xs(e,t,n)}function Xs(e,t,n){const r=(0,Ln.A)((0,ft.A)(n.definition,(n=>Ys(e,t,n))),(e=>void 0!==e));return 1===r.length?r[0]:0===r.length?void 0:function(e,t){const n=t.length;for(let r=0;re.alt))}get key(){let e="";for(const t in this.map)e+=t+":";return e}}function ca(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map((e=>e.stateNumber.toString())).join("_")}`}var la=n(6452);const ua=function(e,t){return e&&e.length?(0,gn.A)(e,(0,wt.A)(t,2)):[]};function da(e,t){const n={};return r=>{const i=r.toString();let s=n[i];return void 0!==s||(s={atnStartState:e,decision:t,states:{}},n[i]=s),s}}class ha{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,t){this.predicates[e]=t}toString(){let e="";const t=this.predicates.length;for(let n=0;nconsole.log(e)}initialize(e){this.atn=function(e){const t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};!function(e,t){const n=t.length;for(let r=0;r(0,ft.A)(e,(e=>e[0]))));if(ma(l,!1)&&!i){const e=(0,wn.A)(l,((e,t,n)=>((0,ut.A)(t,(t=>{t&&(e[t.tokenTypeIdx]=n,(0,ut.A)(t.categoryMatches,(t=>{e[t]=n})))})),e)),{});return r?function(t){var n;const r=this.LA(1),i=e[r.tokenTypeIdx];if(void 0!==t&&void 0!==i){const e=null===(n=t[i])||void 0===n?void 0:n.GATE;if(void 0!==e&&!1===e.call(this))return}return i}:function(){const t=this.LA(1);return e[t.tokenTypeIdx]}}return r?function(e){const t=new ha,n=void 0===e?0:e.length;for(let r=0;r(0,ft.A)(e,(e=>e[0]))));if(ma(l)&&l[0][0]&&!i){const e=l[0],t=(0,An.A)(e);if(1===t.length&&(0,ht.A)(t[0].categoryMatches)){const e=t[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===e}}{const e=(0,wn.A)(t,((e,t)=>(void 0!==t&&(e[t.tokenTypeIdx]=!0,(0,ut.A)(t.categoryMatches,(t=>{e[t]=!0}))),e)),{});return function(){const t=this.LA(1);return!0===e[t.tokenTypeIdx]}}}return function(){const e=ga.call(this,s,c,fa,a);return"object"!=typeof e&&0===e}}}function ma(e,t=!0){const n=new Set;for(const r of e){const e=new Set;for(const i of r){if(void 0===i){if(t)break;return!1}const r=[i.tokenTypeIdx].concat(i.categoryMatches);for(const t of r)if(n.has(t)){if(!e.has(t))return!1}else n.add(t),e.add(t)}}return!0}function ga(e,t,n,r){const i=e[t](n);let s=i.start;return void 0===s&&(s=xa(i,Ea(function(e){const t=new oa,n=e.transitions.length;for(let r=0;r0&&!function(e){for(const t of e.elements)if(t.state.type===Us)return!0;return!1}(s))for(const e of i)s.add(e);return s}(t.configs,n,i);if(0===a.size)return ka(e,t,n,aa),aa;let o=Ea(a);const c=function(e,t){let n;for(const r of e.elements)if(!0===t.is(r.alt))if(void 0===n)n=r.alt;else if(n!==r.alt)return;return n}(a,i);if(void 0!==c)o.isAcceptState=!0,o.prediction=c,o.configs.uniqueAlt=c;else if(function(e){if(function(e){for(const t of e.elements)if(t.state.type!==Us)return!1;return!0}(e))return!0;const t=function(e){const t=new Map;for(const n of e){const e=ca(n,!1);let r=t.get(e);void 0===r&&(r={},t.set(e,r)),r[n.alt]=!0}return t}(e.elements);return function(e){for(const t of Array.from(e.values()))if(Object.keys(t).length>1)return!0;return!1}(t)&&!function(e){for(const t of Array.from(e.values()))if(1===Object.keys(t).length)return!0;return!1}(t)}(a)){const t=(0,la.A)(a.alts);o.isAcceptState=!0,o.prediction=t,o.configs.uniqueAlt=t,Ta.apply(this,[e,r,a.alts,s])}return o=ka(e,t,n,o),o}function Ta(e,t,n,r){const i=[];for(let e=1;e<=t;e++)i.push(this.LA(e).tokenType);const s=e.atnStartState;r(function(e){const t=(0,ft.A)(e.prefixPath,(e=>Mr(e))).join(", "),n=0===e.production.idx?"":e.production.idx;let r=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(", ")}> in <${function(e){if(e instanceof Kt)return"SUBRULE";if(e instanceof Vt)return"OPTION";if(e instanceof Xt)return"OR";if(e instanceof Ht)return"AT_LEAST_ONE";if(e instanceof Wt)return"AT_LEAST_ONE_SEP";if(e instanceof Yt)return"MANY_SEP";if(e instanceof zt)return"MANY";if(e instanceof qt)return"CONSUME";throw Error("non exhaustive match")}(e.production)}${n}> inside <${e.topLevelRule.name}> Rule,\n<${t}> may appears as a prefix path in all these alternatives.\n`;return r+="See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES\nFor Further details.",r}({topLevelRule:s.rule,ambiguityIndices:n,production:s.production,prefixPath:i}))}function va(e,t,n){const r=ei(t.configs.elements,(e=>e.state.transitions));return{actualToken:n,possibleTokenTypes:ua(r.filter((e=>e instanceof Hs)).map((e=>e.tokenType)),(e=>e.tokenTypeIdx)),tokenPath:e}}function Ra(e,t){if(e instanceof Hs&&Xr(t,e.tokenType))return e.target}function Ea(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}function ka(e,t,n,r){return r=xa(e,r),t.edges[n.tokenTypeIdx]=r,r}function xa(e,t){if(t===aa)return t;const n=t.configs.key,r=e.states[n];return void 0!==r?r:(t.configs.finalize(),e.states[n]=t,t)}function Ia(e,t){const n=e.state;if(n.type===Us){if(e.stack.length>0){const n=[...e.stack];Ia({state:n.pop(),alt:e.alt,stack:n},t)}else t.add(e);return}n.epsilonOnlyTransitions||t.add(e);const r=n.transitions.length;for(let i=0;i0&&(r.arguments=n),r},e.is=function(e){let t=e;return Zo.defined(t)&&Zo.string(t.title)&&Zo.string(t.command)}}(Ha||(Ha={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){const t=e;return Zo.objectLiteral(t)&&Zo.string(t.newText)&&Oa.is(t.range)}}(Wa||(Wa={})),function(e){e.create=function(e,t,n){const r={label:e};return void 0!==t&&(r.needsConfirmation=t),void 0!==n&&(r.description=n),r},e.is=function(e){const t=e;return Zo.objectLiteral(t)&&Zo.string(t.label)&&(Zo.boolean(t.needsConfirmation)||void 0===t.needsConfirmation)&&(Zo.string(t.description)||void 0===t.description)}}(za||(za={})),function(e){e.is=function(e){const t=e;return Zo.string(t)}}(Ya||(Ya={})),function(e){e.replace=function(e,t,n){return{range:e,newText:t,annotationId:n}},e.insert=function(e,t,n){return{range:{start:e,end:e},newText:t,annotationId:n}},e.del=function(e,t){return{range:e,newText:"",annotationId:t}},e.is=function(e){const t=e;return Wa.is(t)&&(za.is(t.annotationId)||Ya.is(t.annotationId))}}(Xa||(Xa={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){let t=e;return Zo.defined(t)&&ro.is(t.textDocument)&&Array.isArray(t.edits)}}(qa||(qa={})),function(e){e.create=function(e,t,n){let r={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(r.options=t),void 0!==n&&(r.annotationId=n),r},e.is=function(e){let t=e;return t&&"create"===t.kind&&Zo.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||Zo.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||Zo.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||Ya.is(t.annotationId))}}(Qa||(Qa={})),function(e){e.create=function(e,t,n,r){let i={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(i.options=n),void 0!==r&&(i.annotationId=r),i},e.is=function(e){let t=e;return t&&"rename"===t.kind&&Zo.string(t.oldUri)&&Zo.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||Zo.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||Zo.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||Ya.is(t.annotationId))}}(Ja||(Ja={})),function(e){e.create=function(e,t,n){let r={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(r.options=t),void 0!==n&&(r.annotationId=n),r},e.is=function(e){let t=e;return t&&"delete"===t.kind&&Zo.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||Zo.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||Zo.boolean(t.options.ignoreIfNotExists)))&&(void 0===t.annotationId||Ya.is(t.annotationId))}}(Za||(Za={})),function(e){e.is=function(e){let t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every((e=>Zo.string(e.kind)?Qa.is(e)||Ja.is(e)||Za.is(e):qa.is(e))))}}(eo||(eo={})),function(e){e.create=function(e){return{uri:e}},e.is=function(e){let t=e;return Zo.defined(t)&&Zo.string(t.uri)}}(to||(to={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){let t=e;return Zo.defined(t)&&Zo.string(t.uri)&&Zo.integer(t.version)}}(no||(no={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){let t=e;return Zo.defined(t)&&Zo.string(t.uri)&&(null===t.version||Zo.integer(t.version))}}(ro||(ro={})),function(e){e.create=function(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}},e.is=function(e){let t=e;return Zo.defined(t)&&Zo.string(t.uri)&&Zo.string(t.languageId)&&Zo.integer(t.version)&&Zo.string(t.text)}}(io||(io={})),function(e){e.PlainText="plaintext",e.Markdown="markdown",e.is=function(t){const n=t;return n===e.PlainText||n===e.Markdown}}(so||(so={})),function(e){e.is=function(e){const t=e;return Zo.objectLiteral(e)&&so.is(t.kind)&&Zo.string(t.value)}}(ao||(ao={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(oo||(oo={})),function(e){e.PlainText=1,e.Snippet=2}(co||(co={})),function(e){e.Deprecated=1}(lo||(lo={})),function(e){e.create=function(e,t,n){return{newText:e,insert:t,replace:n}},e.is=function(e){const t=e;return t&&Zo.string(t.newText)&&Oa.is(t.insert)&&Oa.is(t.replace)}}(uo||(uo={})),function(e){e.asIs=1,e.adjustIndentation=2}(ho||(ho={})),function(e){e.is=function(e){const t=e;return t&&(Zo.string(t.detail)||void 0===t.detail)&&(Zo.string(t.description)||void 0===t.description)}}(fo||(fo={})),function(e){e.create=function(e){return{label:e}}}(po||(po={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(mo||(mo={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){const t=e;return Zo.string(t)||Zo.objectLiteral(t)&&Zo.string(t.language)&&Zo.string(t.value)}}(go||(go={})),function(e){e.is=function(e){let t=e;return!!t&&Zo.objectLiteral(t)&&(ao.is(t.contents)||go.is(t.contents)||Zo.typedArray(t.contents,go.is))&&(void 0===e.range||Oa.is(e.range))}}(yo||(yo={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(Ao||(Ao={})),function(e){e.create=function(e,t,...n){let r={label:e};return Zo.defined(t)&&(r.documentation=t),Zo.defined(n)?r.parameters=n:r.parameters=[],r}}(To||(To={})),function(e){e.Text=1,e.Read=2,e.Write=3}(vo||(vo={})),function(e){e.create=function(e,t){let n={range:e};return Zo.number(t)&&(n.kind=t),n}}(Ro||(Ro={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(Eo||(Eo={})),function(e){e.Deprecated=1}(ko||(ko={})),function(e){e.create=function(e,t,n,r,i){let s={name:e,kind:t,location:{uri:r,range:n}};return i&&(s.containerName=i),s}}(xo||(xo={})),function(e){e.create=function(e,t,n,r){return void 0!==r?{name:e,kind:t,location:{uri:n,range:r}}:{name:e,kind:t,location:{uri:n}}}}(Io||(Io={})),function(e){e.create=function(e,t,n,r,i,s){let a={name:e,detail:t,kind:n,range:r,selectionRange:i};return void 0!==s&&(a.children=s),a},e.is=function(e){let t=e;return t&&Zo.string(t.name)&&Zo.number(t.kind)&&Oa.is(t.range)&&Oa.is(t.selectionRange)&&(void 0===t.detail||Zo.string(t.detail))&&(void 0===t.deprecated||Zo.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))&&(void 0===t.tags||Array.isArray(t.tags))}}(So||(So={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(No||(No={})),function(e){e.Invoked=1,e.Automatic=2}(Co||(Co={})),function(e){e.create=function(e,t,n){let r={diagnostics:e};return null!=t&&(r.only=t),null!=n&&(r.triggerKind=n),r},e.is=function(e){let t=e;return Zo.defined(t)&&Zo.typedArray(t.diagnostics,Va.is)&&(void 0===t.only||Zo.typedArray(t.only,Zo.string))&&(void 0===t.triggerKind||t.triggerKind===Co.Invoked||t.triggerKind===Co.Automatic)}}($o||($o={})),function(e){e.create=function(e,t,n){let r={title:e},i=!0;return"string"==typeof t?(i=!1,r.kind=t):Ha.is(t)?r.command=t:r.edit=t,i&&void 0!==n&&(r.kind=n),r},e.is=function(e){let t=e;return t&&Zo.string(t.title)&&(void 0===t.diagnostics||Zo.typedArray(t.diagnostics,Va.is))&&(void 0===t.kind||Zo.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||Ha.is(t.command))&&(void 0===t.isPreferred||Zo.boolean(t.isPreferred))&&(void 0===t.edit||eo.is(t.edit))}}(wo||(wo={})),function(e){e.create=function(e,t){let n={range:e};return Zo.defined(t)&&(n.data=t),n},e.is=function(e){let t=e;return Zo.defined(t)&&Oa.is(t.range)&&(Zo.undefined(t.command)||Ha.is(t.command))}}(Lo||(Lo={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){let t=e;return Zo.defined(t)&&Zo.uinteger(t.tabSize)&&Zo.boolean(t.insertSpaces)}}(Oo||(Oo={})),function(e){e.create=function(e,t,n){return{range:e,target:t,data:n}},e.is=function(e){let t=e;return Zo.defined(t)&&Oa.is(t.range)&&(Zo.undefined(t.target)||Zo.string(t.target))}}(bo||(bo={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){let n=t;return Zo.objectLiteral(n)&&Oa.is(n.range)&&(void 0===n.parent||e.is(n.parent))}}(_o||(_o={})),function(e){e.namespace="namespace",e.type="type",e.class="class",e.enum="enum",e.interface="interface",e.struct="struct",e.typeParameter="typeParameter",e.parameter="parameter",e.variable="variable",e.property="property",e.enumMember="enumMember",e.event="event",e.function="function",e.method="method",e.macro="macro",e.keyword="keyword",e.modifier="modifier",e.comment="comment",e.string="string",e.number="number",e.regexp="regexp",e.operator="operator",e.decorator="decorator"}(Po||(Po={})),function(e){e.declaration="declaration",e.definition="definition",e.readonly="readonly",e.static="static",e.deprecated="deprecated",e.abstract="abstract",e.async="async",e.modification="modification",e.documentation="documentation",e.defaultLibrary="defaultLibrary"}(Mo||(Mo={})),function(e){e.is=function(e){const t=e;return Zo.objectLiteral(t)&&(void 0===t.resultId||"string"==typeof t.resultId)&&Array.isArray(t.data)&&(0===t.data.length||"number"==typeof t.data[0])}}(Do||(Do={})),function(e){e.create=function(e,t){return{range:e,text:t}},e.is=function(e){const t=e;return null!=t&&Oa.is(t.range)&&Zo.string(t.text)}}(Uo||(Uo={})),function(e){e.create=function(e,t,n){return{range:e,variableName:t,caseSensitiveLookup:n}},e.is=function(e){const t=e;return null!=t&&Oa.is(t.range)&&Zo.boolean(t.caseSensitiveLookup)&&(Zo.string(t.variableName)||void 0===t.variableName)}}(Fo||(Fo={})),function(e){e.create=function(e,t){return{range:e,expression:t}},e.is=function(e){const t=e;return null!=t&&Oa.is(t.range)&&(Zo.string(t.expression)||void 0===t.expression)}}(Go||(Go={})),function(e){e.create=function(e,t){return{frameId:e,stoppedLocation:t}},e.is=function(e){const t=e;return Zo.defined(t)&&Oa.is(e.stoppedLocation)}}(Ko||(Ko={})),function(e){e.Type=1,e.Parameter=2,e.is=function(e){return 1===e||2===e}}(Bo||(Bo={})),function(e){e.create=function(e){return{value:e}},e.is=function(e){const t=e;return Zo.objectLiteral(t)&&(void 0===t.tooltip||Zo.string(t.tooltip)||ao.is(t.tooltip))&&(void 0===t.location||ba.is(t.location))&&(void 0===t.command||Ha.is(t.command))}}(jo||(jo={})),function(e){e.create=function(e,t,n){const r={position:e,label:t};return void 0!==n&&(r.kind=n),r},e.is=function(e){const t=e;return Zo.objectLiteral(t)&&La.is(t.position)&&(Zo.string(t.label)||Zo.typedArray(t.label,jo.is))&&(void 0===t.kind||Bo.is(t.kind))&&void 0===t.textEdits||Zo.typedArray(t.textEdits,Wa.is)&&(void 0===t.tooltip||Zo.string(t.tooltip)||ao.is(t.tooltip))&&(void 0===t.paddingLeft||Zo.boolean(t.paddingLeft))&&(void 0===t.paddingRight||Zo.boolean(t.paddingRight))}}(Vo||(Vo={})),function(e){e.createSnippet=function(e){return{kind:"snippet",value:e}}}(Ho||(Ho={})),function(e){e.create=function(e,t,n,r){return{insertText:e,filterText:t,range:n,command:r}}}(Wo||(Wo={})),function(e){e.create=function(e){return{items:e}}}(zo||(zo={})),function(e){e.Invoked=0,e.Automatic=1}(Yo||(Yo={})),function(e){e.create=function(e,t){return{range:e,text:t}}}(Xo||(Xo={})),function(e){e.create=function(e,t){return{triggerKind:e,selectedCompletionInfo:t}}}(qo||(qo={})),function(e){e.is=function(e){const t=e;return Zo.objectLiteral(t)&&Ca.is(t.uri)&&Zo.string(t.name)}}(Qo||(Qo={})),function(e){function t(e,n){if(e.length<=1)return e;const r=e.length/2|0,i=e.slice(0,r),s=e.slice(r);t(i,n),t(s,n);let a=0,o=0,c=0;for(;a{let n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n})),s=r.length;for(let t=i.length-1;t>=0;t--){let n=i[t],a=e.offsetAt(n.range.start),o=e.offsetAt(n.range.end);if(!(o<=s))throw new Error("Overlapping edit");r=r.substring(0,a)+n.newText+r.substring(o,r.length),s=a}return r}}(Jo||(Jo={}));class ec{constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){let e=[],t=this._content,n=!0;for(let r=0;r0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),n=0,r=t.length;if(0===r)return La.create(0,e);for(;ne?r=i:n=i+1}let i=n-1;return La.create(i,e-t[i])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let n=t[e.line],r=e.line+1=0&&t.content.splice(n,1)}}construct(e){const t=this.current;"string"==typeof e.$type&&(this.current.astNode=e),e.$cstNode=t;const n=this.nodeStack.pop();0===(null==n?void 0:n.content.length)&&this.removeNode(n)}addHiddenTokens(e){for(const t of e){const e=new rc(t.startOffset,t.image.length,T(t),t.tokenType,!0);e.root=this.rootNode,this.addHiddenToken(this.rootNode,e)}}addHiddenToken(e,t){const{offset:n,end:r}=t;for(let i=0;ia&&r=0;e--){const t=this.content[e];if(!t.hidden)return t}return this.content[this.content.length-1]}}class sc extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,sc.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,t,...n){return this.addParents(n),super.splice(e,t,...n)}addParents(e){for(const t of e)t.container=this.parent}}class ac extends ic{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=null!=e?e:""}}const oc=Symbol("Datatype");function cc(e){return e.$type===oc}const lc=e=>e.endsWith("​")?e:e+"​";class uc{constructor(e){this._unorderedGroups=new Map,this.lexer=e.parser.Lexer;const t=this.lexer.definition;this.wrapper=new gc(t,Object.assign(Object.assign({},e.parser.ParserConfig),{errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,t){this.wrapper.wrapOr(e,t)}optional(e,t){this.wrapper.wrapOption(e,t)}many(e,t){this.wrapper.wrapMany(e,t)}atLeastOne(e,t){this.wrapper.wrapAtLeastOne(e,t)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}}class dc extends uc{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new tc,this.stack=[],this.assignmentMap=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,t){const n=e.fragment?void 0:tt(e)?oc:it(e),r=this.wrapper.DEFINE_RULE(lc(e.name),this.startImplementation(n,t).bind(this));return e.entry&&(this.mainRule=r),r}parse(e){this.nodeBuilder.buildRootNode(e);const t=this.lexer.tokenize(e);this.wrapper.input=t.tokens;const n=this.mainRule.call(this.wrapper,{});return this.nodeBuilder.addHiddenTokens(t.hidden),this.unorderedGroups.clear(),{value:n,lexerErrors:t.errors,parserErrors:this.wrapper.errors}}startImplementation(e,t){return n=>{if(!this.isRecording()){const t={$type:e};this.stack.push(t),e===oc&&(t.value="")}let r;try{r=t(n)}catch(e){r=void 0}return this.isRecording()||void 0!==r||(r=this.construct()),r}}consume(e,t,n){const r=this.wrapper.wrapConsume(e,t);if(!this.isRecording()&&this.isValidToken(r)){const e=this.nodeBuilder.buildLeafNode(r,n),{assignment:t,isCrossRef:i}=this.getAssignment(n),s=this.current;if(t){const s=ae(n)?r.image:this.converter.convert(r.image,e);this.assign(t.operator,t.feature,s,e,i)}else if(cc(s)){let t=r.image;ae(n)||(t=this.converter.convert(t,e).toString()),s.value+=t}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&"number"==typeof e.endOffset&&!isNaN(e.endOffset)}subrule(e,t,n,r){let i;this.isRecording()||(i=this.nodeBuilder.buildCompositeNode(n));const s=this.wrapper.wrapSubrule(e,t,r);!this.isRecording()&&i&&i.length>0&&this.performSubruleAssignment(s,n,i)}performSubruleAssignment(e,t,n){const{assignment:r,isCrossRef:i}=this.getAssignment(t);if(r)this.assign(r.operator,r.feature,e,n,i);else if(!r){const t=this.current;if(cc(t))t.value+=e.toString();else if("object"==typeof e&&e){const n=e.$type,r=this.assignWithoutOverride(e,t);n&&(r.$type=n);const i=r;this.stack.pop(),this.stack.push(i)}}}action(e,t){if(!this.isRecording()){let n=this.current;if(!n.$cstNode&&t.feature&&t.operator){n=this.construct(!1);const e=n.$cstNode.feature;this.nodeBuilder.buildCompositeNode(e)}const r={$type:e};this.stack.pop(),this.stack.push(r),t.feature&&t.operator&&this.assign(t.operator,t.feature,n,n.$cstNode,!1)}}construct(e=!0){if(this.isRecording())return;const t=this.current;return function(e){for(const[t,n]of Object.entries(e))t.startsWith("$")||(Array.isArray(n)?n.forEach(((n,i)=>{r(n)&&(n.$container=e,n.$containerProperty=t,n.$containerIndex=i)})):r(n)&&(n.$container=e,n.$containerProperty=t))}(t),this.nodeBuilder.construct(t),e&&this.stack.pop(),cc(t)?this.converter.convert(t.value,t.$cstNode):(function(e,t){const n=e.getTypeMetaData(t.$type),r=t;for(const e of n.properties)void 0!==e.defaultValue&&void 0===r[e.name]&&(r[e.name]=Ce(e.defaultValue))}(this.astReflection,t),t)}getAssignment(e){if(!this.assignmentMap.has(e)){const t=Re(e,J);this.assignmentMap.set(e,{assignment:t,isCrossRef:!!t&&te(t.terminal)})}return this.assignmentMap.get(e)}assign(e,t,n,r,i){const s=this.current;let a;switch(a=i&&"string"==typeof n?this.linker.buildReference(s,t,r,n):n,e){case"=":s[t]=a;break;case"?=":s[t]=!0;break;case"+=":Array.isArray(s[t])||(s[t]=[]),s[t].push(a)}}assignWithoutOverride(e,t){for(const[n,r]of Object.entries(t)){const t=e[n];void 0===t?e[n]=r:Array.isArray(t)&&Array.isArray(r)&&(r.push(...t),e[n]=r)}return e}get definitionErrors(){return this.wrapper.definitionErrors}}class hc{buildMismatchTokenMessage(e){return qr.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return qr.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return qr.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return qr.buildEarlyExitMessage(e)}}class fc extends hc{buildMismatchTokenMessage({expected:e,actual:t}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${t.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}}class pc extends uc{constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();const t=this.lexer.tokenize(e);return this.tokens=t.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,t){const n=this.wrapper.DEFINE_RULE(lc(e.name),this.startImplementation(t).bind(this));return e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return t=>{const n=this.keepStackSize();try{e(t)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){const e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,t,n){this.wrapper.wrapConsume(e,t),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,t,n,r){this.before(n),this.wrapper.wrapSubrule(e,t,r),this.after(n)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){const t=this.elementStack.lastIndexOf(e);t>=0&&this.elementStack.splice(t)}}get currIdx(){return this.wrapper.currIdx}}const mc={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new fc};class gc extends bs{constructor(e,t){const n=t&&"maxLookahead"in t;super(e,Object.assign(Object.assign(Object.assign({},mc),{lookaheadStrategy:n?new as({maxLookahead:t.maxLookahead}):new pa}),t))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,t){return this.RULE(e,t)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,t){return this.consume(e,t)}wrapSubrule(e,t,n){return this.subrule(e,t,{ARGS:[n]})}wrapOr(e,t){this.or(e,t)}wrapOption(e,t){this.option(e,t)}wrapMany(e,t){this.many(e,t)}wrapAtLeastOne(e,t){this.atLeastOne(e,t)}}function yc(e,t,n){return function(e,t){const n=Xe(t,!1),r=p(t.rules).filter(G).filter((e=>n.has(e)));for(const t of r){const n=Object.assign(Object.assign({},e),{consume:1,optional:1,subrule:1,many:1,or:1});n.rules.set(t.name,e.parser.rule(t,Ac(n,t.definition)))}}({parser:t,tokens:n,rules:new Map,ruleNames:new Map},e),t}function Ac(e,t,n=!1){let r;if(ae(t))r=function(e,t){const n=e.consume++,r=e.tokens[t.value];if(!r)throw new Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(n,r,t)}(e,t);else if(Y(t))r=function(e,t){const n=it(t);return()=>e.parser.action(n,t)}(e,t);else if(J(t))r=Ac(e,t.terminal);else if(te(t))r=Rc(e,t);else if(ue(t))r=function(e,t){const n=t.rule.ref;if(G(n)){const r=e.subrule++,i=t.arguments.length>0?function(e,t){const n=t.map((e=>Tc(e.value)));return t=>{const r={};for(let i=0;i({});return s=>e.parser.subrule(r,kc(e,n),t,i(s))}if(V(n)){const r=e.consume++,i=xc(e,n.name);return()=>e.parser.consume(r,i,t)}if(!n)throw new k(t.$cstNode,`Undefined rule type: ${t.$type}`);x()}(e,t);else if(q(t))r=function(e,t){if(1===t.elements.length)return Ac(e,t.elements[0]);{const n=[];for(const r of t.elements){const t={ALT:Ac(e,r,!0)},i=vc(r);i&&(t.GATE=Tc(i)),n.push(t)}const r=e.or++;return t=>e.parser.alternatives(r,n.map((e=>{const n={ALT:()=>e.ALT(t)},r=e.GATE;return r&&(n.GATE=()=>r(t)),n})))}}(e,t);else if(ge(t))r=function(e,t){if(1===t.elements.length)return Ac(e,t.elements[0]);const n=[];for(const r of t.elements){const t={ALT:Ac(e,r,!0)},i=vc(r);i&&(t.GATE=Tc(i)),n.push(t)}const r=e.or++,i=(e,t)=>`uGroup_${e}_${t.getRuleStack().join("-")}`,s=Ec(e,vc(t),(t=>e.parser.alternatives(r,n.map(((n,s)=>{const a={ALT:()=>!0},o=e.parser;a.ALT=()=>{if(n.ALT(t),!o.isRecording()){const e=i(r,o);o.unorderedGroups.get(e)||o.unorderedGroups.set(e,[]);const t=o.unorderedGroups.get(e);void 0===(null==t?void 0:t[s])&&(t[s]=!0)}};const c=n.GATE;return a.GATE=c?()=>c(t):()=>{const e=o.unorderedGroups.get(i(r,o));return!(null==e?void 0:e[s])},a})))),"*");return t=>{s(t),e.parser.isRecording()||e.parser.unorderedGroups.delete(i(r,e.parser))}}(e,t);else if(ie(t))r=function(e,t){const n=t.elements.map((t=>Ac(e,t)));return e=>n.forEach((t=>t(e)))}(e,t);else{if(i=t,!ve.isInstance(i,ne))throw new k(t.$cstNode,`Unexpected element type: ${t.$type}`);{const n=e.consume++;r=()=>e.parser.consume(n,zr,t)}}var i;return Ec(e,n?void 0:vc(t),r,t.cardinality)}function Tc(e){if(t=e,ve.isInstance(t,O)){const t=Tc(e.left),n=Tc(e.right);return e=>t(e)||n(e)}if(function(e){return ve.isInstance(e,L)}(e)){const t=Tc(e.left),n=Tc(e.right);return e=>t(e)&&n(e)}if(function(e){return ve.isInstance(e,D)}(e)){const t=Tc(e.value);return e=>!t(e)}if(function(e){return ve.isInstance(e,U)}(e)){const t=e.parameter.ref.name;return e=>void 0!==e&&!0===e[t]}if(function(e){return ve.isInstance(e,w)}(e)){const t=Boolean(e.true);return()=>t}var t;x()}function vc(e){if(ie(e))return e.guardCondition}function Rc(e,t,n=t.terminal){if(n){if(ue(n)&&G(n.rule.ref)){const r=e.subrule++;return i=>e.parser.subrule(r,kc(e,n.rule.ref),t,i)}if(ue(n)&&V(n.rule.ref)){const r=e.consume++,i=xc(e,n.rule.ref.name);return()=>e.parser.consume(r,i,t)}if(ae(n)){const r=e.consume++,i=xc(e,n.value);return()=>e.parser.consume(r,i,t)}throw new Error("Could not build cross reference parser")}{if(!t.type.ref)throw new Error("Could not resolve reference to type: "+t.type.$refText);const n=Ze(t.type.ref),r=null==n?void 0:n.terminal;if(!r)throw new Error("Could not find name assignment for type: "+it(t.type.ref));return Rc(e,t,r)}}function Ec(e,t,n,r){const i=t&&Tc(t);if(!r){if(i){const t=e.or++;return r=>e.parser.alternatives(t,[{ALT:()=>n(r),GATE:()=>i(r)},{ALT:Ls(),GATE:()=>!i(r)}])}return n}if("*"===r){const t=e.many++;return r=>e.parser.many(t,{DEF:()=>n(r),GATE:i?()=>i(r):void 0})}if("+"===r){const t=e.many++;if(i){const r=e.or++;return s=>e.parser.alternatives(r,[{ALT:()=>e.parser.atLeastOne(t,{DEF:()=>n(s)}),GATE:()=>i(s)},{ALT:Ls(),GATE:()=>!i(s)}])}return r=>e.parser.atLeastOne(t,{DEF:()=>n(r)})}if("?"===r){const t=e.optional++;return r=>e.parser.optional(t,{DEF:()=>n(r),GATE:i?()=>i(r):void 0})}x()}function kc(e,t){const n=function(e,t){if(G(t))return t.name;if(e.ruleNames.has(t))return e.ruleNames.get(t);{let n=t,r=n.$container,i=t.$type;for(;!G(r);)(ie(r)||q(r)||ge(r))&&(i=r.elements.indexOf(n).toString()+":"+i),n=r,r=r.$container;return i=r.name+":"+i,e.ruleNames.set(t,i),i}}(e,t),r=e.rules.get(n);if(!r)throw new Error(`Rule "${n}" not found."`);return r}function xc(e,t){const n=e.tokens[t];if(!n)throw new Error(`Token "${t}" not found."`);return n}class Ic{buildTokens(e,t){const n=p(Xe(e,!1)),r=this.buildTerminalTokens(n),i=this.buildKeywordTokens(n,r,t);return r.forEach((e=>{const t=e.PATTERN;"object"==typeof t&&t&&"test"in t&&ze(t)?i.unshift(e):i.push(e)})),i}buildTerminalTokens(e){return e.filter(V).filter((e=>!e.fragment)).map((e=>this.buildTerminalToken(e))).toArray()}buildTerminalToken(e){const t=st(e),n=this.requiresCustomPattern(t)?this.regexPatternFunction(t):t,r={name:e.name,PATTERN:n,LINE_BREAKS:!0};return e.hidden&&(r.GROUP=ze(t)?Pr.SKIPPED:"hidden"),r}requiresCustomPattern(e){return!!e.flags.includes("u")||!(!e.source.includes("?<=")&&!e.source.includes("?(t.lastIndex=n,t.exec(e))}buildKeywordTokens(e,t,n){return e.filter(G).flatMap((e=>xe(e).filter(ae))).distinct((e=>e.value)).toArray().sort(((e,t)=>t.value.length-e.value.length)).map((e=>this.buildKeywordToken(e,t,Boolean(null==n?void 0:n.caseInsensitive))))}buildKeywordToken(e,t,n){return{name:e.value,PATTERN:this.buildKeywordPattern(e,n),LONGER_ALT:this.findLongerAlt(e,t)}}buildKeywordPattern(e,t){return t?new RegExp(function(e){return Array.prototype.map.call(e,(e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:Ye(e))).join("")}(e.value)):e.value}findLongerAlt(e,t){return t.reduce(((t,n)=>{const r=null==n?void 0:n.PATTERN;return(null==r?void 0:r.source)&&function(e,t){const n=function(e){"string"==typeof e&&(e=new RegExp(e));const t=e,n=e.source;let r=0;return new RegExp(function e(){let i,s="";function a(e){s+=n.substr(r,e),r+=e}function o(e){s+="(?:"+n.substr(r,e)+"|$)",r+=e}for(;r",r)-r+1);break;default:o(2)}break;case"[":i=/\[(?:\\.|.)*?\]/g,i.lastIndex=r,i=i.exec(n)||[],o(i[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":a(1);break;case"{":i=/\{\d+,?\d*\}/g,i.lastIndex=r,i=i.exec(n),i?a(i[0].length):o(1);break;case"(":if("?"===n[r+1])switch(n[r+2]){case":":s+="(?:",r+=3,s+=e()+"|$)";break;case"=":s+="(?=",r+=3,s+=e()+")";break;case"!":i=r,r+=3,e(),s+=n.substr(i,r-i);break;case"<":switch(n[r+3]){case"=":case"!":i=r,r+=4,e(),s+=n.substr(i,r-i);break;default:a(n.indexOf(">",r)-r+1),s+=e()+"|$)"}}else a(1),s+=e()+"|$)";break;case")":return++r,s;default:o(1)}return s}(),e.flags)}(e),r=t.match(n);return!!r&&r[0].length>0}("^"+r.source+"$",e.value)&&t.push(n),t}),[])}}class Sc{convert(e,t){let n=t.grammarSource;if(te(n)&&(n=function(e){if(e.terminal)return e.terminal;if(e.type.ref){const t=Ze(e.type.ref);return null==t?void 0:t.terminal}}(n)),ue(n)){const r=n.rule.ref;if(!r)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(r,e,t)}return e}runConverter(e,t,n){var r;switch(e.name.toUpperCase()){case"INT":return Nc.convertInt(t);case"STRING":return Nc.convertString(t);case"ID":return Nc.convertID(t)}switch(null===(r=function(e){var t,n,r;return V(e)?null!==(n=null===(t=e.type)||void 0===t?void 0:t.name)&&void 0!==n?n:"string":tt(e)?e.name:null!==(r=rt(e))&&void 0!==r?r:e.name}(e))||void 0===r?void 0:r.toLowerCase()){case"number":return Nc.convertNumber(t);case"boolean":return Nc.convertBoolean(t);case"bigint":return Nc.convertBigint(t);case"date":return Nc.convertDate(t);default:return t}}}var Nc;!function(e){function t(e){switch(e){case"b":return"\b";case"f":return"\f";case"n":return"\n";case"r":return"\r";case"t":return"\t";case"v":return"\v";case"0":return"\0";default:return e}}e.convertString=function(e){let n="";for(let r=1;r=10&&($c=t,await new Promise((e=>{"undefined"==typeof setImmediate?setTimeout(e,0):setImmediate(e)}))),e.isCancellationRequested)throw wc}class bc{constructor(){this.promise=new Promise(((e,t)=>{this.resolve=t=>(e(t),this),this.reject=e=>(t(e),this)}))}}class _c{constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){const t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(e,t){for(const t of e)if(_c.isIncremental(t)){const e=Gc(t.range),n=this.offsetAt(e.start),r=this.offsetAt(e.end);this._content=this._content.substring(0,n)+t.text+this._content.substring(r,this._content.length);const i=Math.max(e.start.line,0),s=Math.max(e.end.line,0);let a=this._lineOffsets;const o=Uc(t.text,!1,n);if(s-i===o.length)for(let e=0,t=o.length;ee?r=i:n=i+1}const i=n-1;return{line:i,character:(e=this.ensureBeforeEOL(e,t[i]))-t[i]}}offsetAt(e){const t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;const n=t[e.line];if(e.character<=0)return n;const r=e.line+1t&&Fc(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){const t=e;return null!=t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)}static isFull(e){const t=e;return null!=t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength}}var Pc,Mc;function Dc(e,t){if(e.length<=1)return e;const n=e.length/2|0,r=e.slice(0,n),i=e.slice(n);Dc(r,t),Dc(i,t);let s=0,a=0,o=0;for(;sn.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function Kc(e){const t=Gc(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){e.create=function(e,t,n,r){return new _c(e,t,n,r)},e.update=function(e,t,n){if(e instanceof _c)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){const n=e.getText(),r=Dc(t.map(Kc),((e,t)=>{const n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}));let i=0;const s=[];for(const t of r){const r=e.offsetAt(t.range.start);if(ri&&s.push(n.substring(i,r)),t.newText.length&&s.push(t.newText),i=e.offsetAt(t.range.end)}return s.push(n.substr(i)),s.join("")}}(Pc||(Pc={})),(()=>{var e={470:e=>{function t(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}function n(e,t){for(var n,r="",i=0,s=-1,a=0,o=0;o<=e.length;++o){if(o2){var c=r.lastIndexOf("/");if(c!==r.length-1){-1===c?(r="",i=0):i=(r=r.slice(0,c)).length-1-r.lastIndexOf("/"),s=o,a=0;continue}}else if(2===r.length||1===r.length){r="",i=0,s=o,a=0;continue}t&&(r.length>0?r+="/..":r="..",i=2)}else r.length>0?r+="/"+e.slice(s+1,o):r=e.slice(s+1,o),i=o-s-1;s=o,a=0}else 46===n&&-1!==a?++a:a=-1}return r}var r={resolve:function(){for(var e,r="",i=!1,s=arguments.length-1;s>=-1&&!i;s--){var a;s>=0?a=arguments[s]:(void 0===e&&(e=process.cwd()),a=e),t(a),0!==a.length&&(r=a+"/"+r,i=47===a.charCodeAt(0))}return r=n(r,!i),i?r.length>0?"/"+r:"/":r.length>0?r:"."},normalize:function(e){if(t(e),0===e.length)return".";var r=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=n(e,!r)).length||r||(e="."),e.length>0&&i&&(e+="/"),r?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var e,n=0;n0&&(void 0===e?e=i:e+="/"+i)}return void 0===e?".":r.normalize(e)},relative:function(e,n){if(t(e),t(n),e===n)return"";if((e=r.resolve(e))===(n=r.resolve(n)))return"";for(var i=1;il){if(47===n.charCodeAt(o+d))return n.slice(o+d+1);if(0===d)return n.slice(o+d)}else a>l&&(47===e.charCodeAt(i+d)?u=d:0===d&&(u=0));break}var h=e.charCodeAt(i+d);if(h!==n.charCodeAt(o+d))break;47===h&&(u=d)}var f="";for(d=i+u+1;d<=s;++d)d!==s&&47!==e.charCodeAt(d)||(0===f.length?f+="..":f+="/..");return f.length>0?f+n.slice(o+u):(o+=u,47===n.charCodeAt(o)&&++o,n.slice(o))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var n=e.charCodeAt(0),r=47===n,i=-1,s=!0,a=e.length-1;a>=1;--a)if(47===(n=e.charCodeAt(a))){if(!s){i=a;break}}else s=!1;return-1===i?r?"/":".":r&&1===i?"//":e.slice(0,i)},basename:function(e,n){if(void 0!==n&&"string"!=typeof n)throw new TypeError('"ext" argument must be a string');t(e);var r,i=0,s=-1,a=!0;if(void 0!==n&&n.length>0&&n.length<=e.length){if(n.length===e.length&&n===e)return"";var o=n.length-1,c=-1;for(r=e.length-1;r>=0;--r){var l=e.charCodeAt(r);if(47===l){if(!a){i=r+1;break}}else-1===c&&(a=!1,c=r+1),o>=0&&(l===n.charCodeAt(o)?-1==--o&&(s=r):(o=-1,s=c))}return i===s?s=c:-1===s&&(s=e.length),e.slice(i,s)}for(r=e.length-1;r>=0;--r)if(47===e.charCodeAt(r)){if(!a){i=r+1;break}}else-1===s&&(a=!1,s=r+1);return-1===s?"":e.slice(i,s)},extname:function(e){t(e);for(var n=-1,r=0,i=-1,s=!0,a=0,o=e.length-1;o>=0;--o){var c=e.charCodeAt(o);if(47!==c)-1===i&&(s=!1,i=o+1),46===c?-1===n?n=o:1!==a&&(a=1):-1!==n&&(a=-1);else if(!s){r=o+1;break}}return-1===n||-1===i||0===a||1===a&&n===i-1&&n===r+1?"":e.slice(n,i)},format:function(e){if(null===e||"object"!=typeof e)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return function(e,t){var n=t.dir||t.root,r=t.base||(t.name||"")+(t.ext||"");return n?n===t.root?n+r:n+"/"+r:r}(0,e)},parse:function(e){t(e);var n={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return n;var r,i=e.charCodeAt(0),s=47===i;s?(n.root="/",r=1):r=0;for(var a=-1,o=0,c=-1,l=!0,u=e.length-1,d=0;u>=r;--u)if(47!==(i=e.charCodeAt(u)))-1===c&&(l=!1,c=u+1),46===i?-1===a?a=u:1!==d&&(d=1):-1!==a&&(d=-1);else if(!l){o=u+1;break}return-1===a||-1===c||0===d||1===d&&a===c-1&&a===o+1?-1!==c&&(n.base=n.name=0===o&&s?e.slice(1,c):e.slice(o,c)):(0===o&&s?(n.name=e.slice(1,a),n.base=e.slice(1,c)):(n.name=e.slice(o,a),n.base=e.slice(o,c)),n.ext=e.slice(a,c)),o>0?n.dir=e.slice(0,o-1):s&&(n.dir="/"),n},sep:"/",delimiter:":",win32:null,posix:null};r.posix=r,e.exports=r}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,n),s.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};(()=>{let e;if(n.r(r),n.d(r,{URI:()=>u,Utils:()=>x}),"object"==typeof process)e="win32"===process.platform;else if("object"==typeof navigator){let t=navigator.userAgent;e=t.indexOf("Windows")>=0}const t=/^\w[\w\d+.-]*$/,i=/^\//,s=/^\/\//;function a(e,n){if(!e.scheme&&n)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!t.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!i.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(s.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}const o="",c="/",l=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class u{static isUri(e){return e instanceof u||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}scheme;authority;path;query;fragment;constructor(e,t,n,r,i,s=!1){"object"==typeof e?(this.scheme=e.scheme||o,this.authority=e.authority||o,this.path=e.path||o,this.query=e.query||o,this.fragment=e.fragment||o):(this.scheme=function(e,t){return e||t?e:"file"}(e,s),this.authority=t||o,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==c&&(t=c+t):t=c}return t}(this.scheme,n||o),this.query=r||o,this.fragment=i||o,a(this,s))}get fsPath(){return g(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:n,path:r,query:i,fragment:s}=e;return void 0===t?t=this.scheme:null===t&&(t=o),void 0===n?n=this.authority:null===n&&(n=o),void 0===r?r=this.path:null===r&&(r=o),void 0===i?i=this.query:null===i&&(i=o),void 0===s?s=this.fragment:null===s&&(s=o),t===this.scheme&&n===this.authority&&r===this.path&&i===this.query&&s===this.fragment?this:new h(t,n,r,i,s)}static parse(e,t=!1){const n=l.exec(e);return n?new h(n[2]||o,v(n[4]||o),v(n[5]||o),v(n[7]||o),v(n[9]||o),t):new h(o,o,o,o,o)}static file(t){let n=o;if(e&&(t=t.replace(/\\/g,c)),t[0]===c&&t[1]===c){const e=t.indexOf(c,2);-1===e?(n=t.substring(2),t=c):(n=t.substring(2,e),t=t.substring(e)||c)}return new h("file",n,t,o,o)}static from(e){const t=new h(e.scheme,e.authority,e.path,e.query,e.fragment);return a(t,!0),t}toString(e=!1){return y(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof u)return e;{const t=new h(e);return t._formatted=e.external,t._fsPath=e._sep===d?e.fsPath:null,t}}return e}}const d=e?1:void 0;class h extends u{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=g(this,!1)),this._fsPath}toString(e=!1){return e?y(this,!0):(this._formatted||(this._formatted=y(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=d),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const f={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function p(e,t,n){let r,i=-1;for(let s=0;s=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57||45===a||46===a||95===a||126===a||t&&47===a||n&&91===a||n&&93===a||n&&58===a)-1!==i&&(r+=encodeURIComponent(e.substring(i,s)),i=-1),void 0!==r&&(r+=e.charAt(s));else{void 0===r&&(r=e.substr(0,s));const t=f[a];void 0!==t?(-1!==i&&(r+=encodeURIComponent(e.substring(i,s)),i=-1),r+=t):-1===i&&(i=s)}}return-1!==i&&(r+=encodeURIComponent(e.substring(i))),void 0!==r?r:e}function m(e){let t;for(let n=0;n1&&"file"===t.scheme?`//${t.authority}${t.path}`:47===t.path.charCodeAt(0)&&(t.path.charCodeAt(1)>=65&&t.path.charCodeAt(1)<=90||t.path.charCodeAt(1)>=97&&t.path.charCodeAt(1)<=122)&&58===t.path.charCodeAt(2)?n?t.path.substr(1):t.path[1].toLowerCase()+t.path.substr(2):t.path,e&&(r=r.replace(/\//g,"\\")),r}function y(e,t){const n=t?m:p;let r="",{scheme:i,authority:s,path:a,query:o,fragment:l}=e;if(i&&(r+=i,r+=":"),(s||"file"===i)&&(r+=c,r+=c),s){let e=s.indexOf("@");if(-1!==e){const t=s.substr(0,e);s=s.substr(e+1),e=t.lastIndexOf(":"),-1===e?r+=n(t,!1,!1):(r+=n(t.substr(0,e),!1,!1),r+=":",r+=n(t.substr(e+1),!1,!0)),r+="@"}s=s.toLowerCase(),e=s.lastIndexOf(":"),-1===e?r+=n(s,!1,!0):(r+=n(s.substr(0,e),!1,!0),r+=s.substr(e))}if(a){if(a.length>=3&&47===a.charCodeAt(0)&&58===a.charCodeAt(2)){const e=a.charCodeAt(1);e>=65&&e<=90&&(a=`/${String.fromCharCode(e+32)}:${a.substr(3)}`)}else if(a.length>=2&&58===a.charCodeAt(1)){const e=a.charCodeAt(0);e>=65&&e<=90&&(a=`${String.fromCharCode(e+32)}:${a.substr(2)}`)}r+=n(a,!0,!1)}return o&&(r+="?",r+=n(o,!1,!1)),l&&(r+="#",r+=t?l:p(l,!1,!1)),r}function A(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+A(e.substr(3)):e}}const T=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function v(e){return e.match(T)?e.replace(T,(e=>A(e))):e}var R=n(470);const E=R.posix||R,k="/";var x;!function(e){e.joinPath=function(e,...t){return e.with({path:E.join(e.path,...t)})},e.resolvePath=function(e,...t){let n=e.path,r=!1;n[0]!==k&&(n=k+n,r=!0);let i=E.resolve(n,...t);return r&&i[0]===k&&!e.authority&&(i=i.substring(1)),e.with({path:i})},e.dirname=function(e){if(0===e.path.length||e.path===k)return e;let t=E.dirname(e.path);return 1===t.length&&46===t.charCodeAt(0)&&(t=""),e.with({path:t})},e.basename=function(e){return E.basename(e.path)},e.extname=function(e){return E.extname(e.path)}}(x||(x={}))})(),Mc=r})();const{URI:Bc,Utils:jc}=Mc;var Vc,Hc,Wc,zc,Yc;!function(e){e.basename=jc.basename,e.dirname=jc.dirname,e.extname=jc.extname,e.joinPath=jc.joinPath,e.resolvePath=jc.resolvePath,e.equals=function(e,t){return(null==e?void 0:e.toString())===(null==t?void 0:t.toString())},e.relative=function(e,t){const n="string"==typeof e?e:e.path,r="string"==typeof t?t:t.path,i=n.split("/").filter((e=>e.length>0)),s=r.split("/").filter((e=>e.length>0));let a=0;for(;anull!=r?r:r=Pc.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,null!=t?t:"")}}class qc{constructor(e){this.documentMap=new Map,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory}get all(){return p(this.documentMap.values())}addDocument(e){const t=e.uri.toString();if(this.documentMap.has(t))throw new Error(`A document with the URI '${t}' is already present.`);this.documentMap.set(t,e)}getDocument(e){const t=e.toString();return this.documentMap.get(t)}async getOrCreateDocument(e,t){let n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,t),this.addDocument(n),n)}createDocument(e,t,n){if(n)return this.langiumDocumentFactory.fromString(t,e,n).then((e=>(this.addDocument(e),e)));{const n=this.langiumDocumentFactory.fromString(t,e);return this.addDocument(n),n}}hasDocument(e){return this.documentMap.has(e.toString())}invalidateDocument(e){const t=e.toString(),n=this.documentMap.get(t);return n&&(n.state=Hc.Changed,n.precomputedScopes=void 0,n.references=[],n.diagnostics=void 0),n}deleteDocument(e){const t=e.toString(),n=this.documentMap.get(t);return n&&(n.state=Hc.Changed,this.documentMap.delete(t)),n}}class Qc{constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator}async link(e,t=Cc.XO.None){for(const n of Ie(e.parseResult.value))await Oc(t),Ne(n).forEach((t=>this.doLink(t,e)))}doLink(e,t){const n=e.reference;if(void 0===n._ref)try{const t=this.getCandidate(e);if(s(t))n._ref=t;else if(n._nodeDescription=t,this.langiumDocuments().hasDocument(t.documentUri)){const r=this.loadAstNode(t);n._ref=null!=r?r:this.createLinkingError(e,t)}}catch(t){n._ref=Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${n.$refText}': ${t}`})}t.references.push(n)}unlink(e){for(const t of e.references)delete t._ref,delete t._nodeDescription;e.references=[]}getCandidate(e){const t=this.scopeProvider.getScope(e).getElement(e.reference.$refText);return null!=t?t:this.createLinkingError(e)}buildReference(e,t,n,i){const a=this,o={$refNode:n,$refText:i,get ref(){var n,i;if(r(this._ref))return this._ref;if("object"==typeof(i=this._nodeDescription)&&null!==i&&"string"==typeof i.name&&"string"==typeof i.type&&"string"==typeof i.path){const n=a.loadAstNode(this._nodeDescription);this._ref=null!=n?n:a.createLinkingError({reference:o,container:e,property:t},this._nodeDescription)}else if(void 0===this._ref){const r=a.getLinkedNode({reference:o,container:e,property:t});if(r.error&&Ee(e).state=e.end)return t.ref}if(n){const t=this.nameProvider.getNameNode(n);if(t&&(t===e||function(e,t){for(;e.container;)if((e=e.container)===t)return!0;return!1}(e,t)))return n}}}findDeclarationNode(e){const t=this.findDeclaration(e);if(null==t?void 0:t.$cstNode){const e=this.nameProvider.getNameNode(t);return null!=e?e:t.$cstNode}}findReferences(e,t){const n=[];if(t.includeDeclaration){const t=this.getReferenceToSelf(e);t&&n.push(t)}let r=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return t.documentUri&&(r=r.filter((e=>Vc.equals(e.sourceUri,t.documentUri)))),n.push(...r),p(n)}getReferenceToSelf(e){const t=this.nameProvider.getNameNode(e);if(t){const n=Ee(e),r=this.nodeLocator.getAstNodePath(e);return{sourceUri:n.uri,sourcePath:r,targetUri:n.uri,targetPath:r,segment:v(t),local:!0}}}}class el{constructor(e){if(this.map=new Map,e)for(const[t,n]of e)this.add(t,n)}get size(){return g.sum(p(this.map.values()).map((e=>e.length)))}clear(){this.map.clear()}delete(e,t){if(void 0===t)return this.map.delete(e);{const n=this.map.get(e);if(n){const r=n.indexOf(t);if(r>=0)return 1===n.length?this.map.delete(e):n.splice(r,1),!0}return!1}}get(e){var t;return null!==(t=this.map.get(e))&&void 0!==t?t:[]}has(e,t){if(void 0===t)return this.map.has(e);{const n=this.map.get(e);return!!n&&n.indexOf(t)>=0}}add(e,t){return this.map.has(e)?this.map.get(e).push(t):this.map.set(e,[t]),this}addAll(e,t){return this.map.has(e)?this.map.get(e).push(...t):this.map.set(e,Array.from(t)),this}forEach(e){this.map.forEach(((t,n)=>t.forEach((t=>e(t,n,this)))))}[Symbol.iterator](){return this.entries().iterator()}entries(){return p(this.map.entries()).flatMap((([e,t])=>t.map((t=>[e,t]))))}keys(){return p(this.map.keys())}values(){return p(this.map.values()).flat()}entriesGroupedByKey(){return p(this.map.entries())}}class tl{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[t,n]of e)this.set(t,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,t){return this.map.set(e,t),this.inverse.set(t,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){const t=this.map.get(e);return void 0!==t&&(this.map.delete(e),this.inverse.delete(t),!0)}}class nl{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,t=Cc.XO.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,t)}async computeExportsForNode(e,t,n=ke,r=Cc.XO.None){const i=[];this.exportNode(e,i,t);for(const s of n(e))await Oc(r),this.exportNode(s,i,t);return i}exportNode(e,t,n){const r=this.nameProvider.getName(e);r&&t.push(this.descriptions.createDescription(e,r,n))}async computeLocalScopes(e,t=Cc.XO.None){const n=e.parseResult.value,r=new el;for(const i of xe(n))await Oc(t),this.processNode(i,e,r);return r}processNode(e,t,n){const r=e.$container;if(r){const i=this.nameProvider.getName(e);i&&n.add(r,this.descriptions.createDescription(e,i,t))}}}class rl{constructor(e,t,n){var r;this.elements=e,this.outerScope=t,this.caseInsensitive=null!==(r=null==n?void 0:n.caseInsensitive)&&void 0!==r&&r}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){return(this.caseInsensitive?this.elements.find((t=>t.name.toLowerCase()===e.toLowerCase())):this.elements.find((t=>t.name===e)))||(this.outerScope?this.outerScope.getElement(e):void 0)}}class il{constructor(e,t,n){var r;this.elements=new Map,this.caseInsensitive=null!==(r=null==n?void 0:n.caseInsensitive)&&void 0!==r&&r;for(const t of e){const e=this.caseInsensitive?t.name.toLowerCase():t.name;this.elements.set(e,t)}this.outerScope=t}getElement(e){const t=this.caseInsensitive?e.toLowerCase():e;return this.elements.get(t)||(this.outerScope?this.outerScope.getElement(e):void 0)}getAllElements(){let e=p(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}}class sl{constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach((e=>e.dispose()))}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}}class al extends sl{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,t){this.throwIfDisposed(),this.cache.set(e,t)}get(e,t){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(t){const n=t();return this.cache.set(e,n),n}}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}}class ol extends sl{constructor(e){super(),this.cache=new Map,this.converter=null!=e?e:e=>e}has(e,t){return this.throwIfDisposed(),this.cacheForContext(e).has(t)}set(e,t,n){this.throwIfDisposed(),this.cacheForContext(e).set(t,n)}get(e,t,n){this.throwIfDisposed();const r=this.cacheForContext(e);if(r.has(t))return r.get(t);if(n){const e=n();return r.set(t,e),e}}delete(e,t){return this.throwIfDisposed(),this.cacheForContext(e).delete(t)}clear(e){if(this.throwIfDisposed(),e){const t=this.converter(e);this.cache.delete(t)}else this.cache.clear()}cacheForContext(e){const t=this.converter(e);let n=this.cache.get(t);return n||(n=new Map,this.cache.set(t,n)),n}}class cl extends al{constructor(e){super(),this.onDispose(e.workspace.DocumentBuilder.onUpdate((()=>{this.clear()})))}}class ll{constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new cl(e.shared)}getScope(e){const t=[],n=this.reflection.getReferenceType(e),r=Ee(e.container).precomputedScopes;if(r){let i=e.container;do{const e=r.get(i);e.length>0&&t.push(p(e).filter((e=>this.reflection.isSubtype(e.type,n)))),i=i.$container}while(i)}let i=this.getGlobalScope(n,e);for(let e=t.length-1;e>=0;e--)i=this.createScope(t[e],i);return i}createScope(e,t,n){return new rl(p(e),t,n)}createScopeForNodes(e,t,n){const r=p(e).map((e=>{const t=this.nameProvider.getName(e);if(t)return this.descriptions.createDescription(e,t)})).nonNullable();return new rl(r,t,n)}getGlobalScope(e,t){return this.globalScopeCache.get(e,(()=>new il(this.indexManager.allElements(e))))}}function ul(e){return"object"==typeof e&&!!e&&("$ref"in e||"$error"in e)}class dl{constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,t={}){const n=null==t?void 0:t.replacer,r=(e,n)=>this.replacer(e,n,t),i=n?(e,t)=>n(e,t,r):r;try{return this.currentDocument=Ee(e),JSON.stringify(e,i,null==t?void 0:t.space)}finally{this.currentDocument=void 0}}deserialize(e,t={}){const n=JSON.parse(e);return this.linkNode(n,n,t),n}replacer(e,t,{refText:n,sourceText:s,textRegions:a,comments:o,uriConverter:c}){var l,u,d,h;if(!this.ignoreProperties.has(e)){if(i(t)){const e=t.ref,r=n?t.$refText:void 0;if(e){const n=Ee(e);let i="";return this.currentDocument&&this.currentDocument!==n&&(i=c?c(n.uri,t):n.uri.toString()),{$ref:`${i}#${this.astNodeLocator.getAstNodePath(e)}`,$refText:r}}return{$error:null!==(u=null===(l=t.error)||void 0===l?void 0:l.message)&&void 0!==u?u:"Could not resolve reference",$refText:r}}if(r(t)){let n;if(a&&(n=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},t)),e&&!t.$document||!(null==n?void 0:n.$textRegion)||(n.$textRegion.documentURI=null===(d=this.currentDocument)||void 0===d?void 0:d.uri.toString())),s&&!e&&(null!=n||(n=Object.assign({},t)),n.$sourceText=null===(h=t.$cstNode)||void 0===h?void 0:h.text),o){null!=n||(n=Object.assign({},t));const e=this.commentProvider.getComment(t);e&&(n.$comment=e.replace(/\r/g,""))}return null!=n?n:t}return t}}addAstNodeRegionWithAssignmentsTo(e){const t=e=>({offset:e.offset,end:e.end,length:e.length,range:e.range});if(e.$cstNode){const n=(e.$textRegion=t(e.$cstNode)).assignments={};return Object.keys(e).filter((e=>!e.startsWith("$"))).forEach((r=>{const i=function(e,t){return e&&t?Je(e,t,e.astNode,!0):[]}(e.$cstNode,r).map(t);0!==i.length&&(n[r]=i)})),e}}linkNode(e,t,n,i,s,a){for(const[i,s]of Object.entries(e))if(Array.isArray(s))for(let a=0;a{try{await e.call(t,n,r,i)}catch(e){if(Lc(e))throw e;console.error("An error occurred during validation:",e);const t=e instanceof Error?e.message:String(e);e instanceof Error&&e.stack&&console.error(e.stack),r("error","An error occurred during validation: "+t,{node:n})}}}addEntry(e,t){if("AstNode"!==e)for(const n of this.reflection.getAllSubTypes(e))this.entries.add(n,t);else this.entries.add("AstNode",t)}getChecks(e,t){let n=p(this.entries.get(e)).concat(this.entries.get("AstNode"));return t&&(n=n.filter((e=>t.includes(e.category)))),n.map((e=>e.check))}}class ml{constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,t={},n=Cc.XO.None){const r=e.parseResult,i=[];if(await Oc(n),!t.categories||t.categories.includes("built-in")){if(this.processLexingErrors(r,i,t),t.stopAfterLexingErrors&&i.some((e=>{var t;return(null===(t=e.data)||void 0===t?void 0:t.code)===zc.LexingError})))return i;if(this.processParsingErrors(r,i,t),t.stopAfterParsingErrors&&i.some((e=>{var t;return(null===(t=e.data)||void 0===t?void 0:t.code)===zc.ParsingError})))return i;if(this.processLinkingErrors(e,i,t),t.stopAfterLinkingErrors&&i.some((e=>{var t;return(null===(t=e.data)||void 0===t?void 0:t.code)===zc.LinkingError})))return i}try{i.push(...await this.validateAst(r.value,t,n))}catch(e){if(Lc(e))throw e;console.error("An error occurred during validation:",e)}return await Oc(n),i}processLexingErrors(e,t,n){for(const n of e.lexerErrors){const e={severity:yl("error"),range:{start:{line:n.line-1,character:n.column-1},end:{line:n.line-1,character:n.column+n.length-1}},message:n.message,data:fl(zc.LexingError),source:this.getSource()};t.push(e)}}processParsingErrors(e,t,n){for(const n of e.parserErrors){let e;if(isNaN(n.token.startOffset)){if("previousToken"in n){const t=n.previousToken;if(isNaN(t.startOffset)){const t={line:0,character:0};e={start:t,end:t}}else{const n={line:t.endLine-1,character:t.endColumn};e={start:n,end:n}}}}else e=T(n.token);if(e){const r={severity:yl("error"),range:e,message:n.message,data:fl(zc.ParsingError),source:this.getSource()};t.push(r)}}}processLinkingErrors(e,t,n){for(const n of e.references){const e=n.error;if(e){const n={node:e.container,property:e.property,index:e.index,data:{code:zc.LinkingError,containerType:e.container.$type,property:e.property,refText:e.reference.$refText}};t.push(this.toDiagnostic("error",e.message,n))}}}async validateAst(e,t,n=Cc.XO.None){const r=[],i=(e,t,n)=>{r.push(this.toDiagnostic(e,t,n))};return await Promise.all(Ie(e).map((async e=>{await Oc(n);const r=this.validationRegistry.getChecks(e.$type,t.categories);for(const t of r)await t(e,i,n)}))),r}toDiagnostic(e,t,n){return{message:t,range:gl(n),severity:yl(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}}function gl(e){if(e.range)return e.range;let t;return"string"==typeof e.property?t=Qe(e.node.$cstNode,e.property,e.index):"string"==typeof e.keyword&&(t=function(e,t,n){if(!e)return;const r=function(e,t,n){if(e.astNode!==n)return[];if(ae(e.grammarSource)&&e.grammarSource.value===t)return[e];const r=A(e).iterator();let i;const s=[];do{if(i=r.next(),!i.done){const e=i.value;e.astNode===n?ae(e.grammarSource)&&e.grammarSource.value===t&&s.push(e):r.prune()}}while(!i.done);return s}(e,t,null==e?void 0:e.astNode);return 0!==r.length?r[n=void 0!==n?Math.max(0,Math.min(n,r.length-1)):0]:void 0}(e.node.$cstNode,e.keyword,e.index)),null!=t||(t=e.node.$cstNode),t?t.range:{start:{line:0,character:0},end:{line:0,character:0}}}function yl(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+e)}}!function(e){e.LexingError="lexing-error",e.ParsingError="parsing-error",e.LinkingError="linking-error"}(zc||(zc={}));class Al{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,t,n=Ee(e)){null!=t||(t=this.nameProvider.getName(e));const r=this.astNodeLocator.getAstNodePath(e);if(!t)throw new Error(`Node at path ${r} has no name.`);let i;const s=()=>{var t;return null!=i?i:i=v(null!==(t=this.nameProvider.getNameNode(e))&&void 0!==t?t:e.$cstNode)};return{node:e,name:t,get nameSegment(){return s()},selectionSegment:v(e.$cstNode),type:e.$type,documentUri:n.uri,path:r}}}class Tl{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,t=Cc.XO.None){const n=[],r=e.parseResult.value;for(const e of Ie(r))await Oc(t),Ne(e).filter((e=>!s(e))).forEach((e=>{const t=this.createDescription(e);t&&n.push(t)}));return n}createDescription(e){const t=e.reference.$nodeDescription,n=e.reference.$refNode;if(!t||!n)return;const r=Ee(e.container).uri;return{sourceUri:r,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:t.documentUri,targetPath:t.path,segment:v(n),local:Vc.equals(t.documentUri,r)}}}class vl{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){const t=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return t+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:t}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return void 0!==t?e+this.indexSeparator+t:e}getAstNode(e,t){return t.split(this.segmentSeparator).reduce(((e,t)=>{if(!e||0===t.length)return e;const n=t.indexOf(this.indexSeparator);if(n>0){const r=t.substring(0,n),i=parseInt(t.substring(n+1)),s=e[r];return null==s?void 0:s[i]}return e[t]}),e)}}class Rl{constructor(e){this._ready=new bc,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var t,n;this.workspaceConfig=null!==(n=null===(t=e.capabilities.workspace)||void 0===t?void 0:t.configuration)&&void 0!==n&&n}async initialized(e){if(this.workspaceConfig){if(e.register){const t=this.serviceRegistry.all;e.register({section:t.map((e=>this.toSectionName(e.LanguageMetaData.languageId)))})}if(e.fetchConfiguration){const t=this.serviceRegistry.all.map((e=>({section:this.toSectionName(e.LanguageMetaData.languageId)}))),n=await e.fetchConfiguration(t);t.forEach(((e,t)=>{this.updateSectionConfiguration(e.section,n[t])}))}}this._ready.resolve()}updateConfiguration(e){e.settings&&Object.keys(e.settings).forEach((t=>{this.updateSectionConfiguration(t,e.settings[t])}))}updateSectionConfiguration(e,t){this.settings[e]=t}async getConfiguration(e,t){await this.ready;const n=this.toSectionName(e);if(this.settings[n])return this.settings[n][t]}toSectionName(e){return`${e}`}}!function(e){e.create=function(e){return{dispose:async()=>await e()}}}(Yc||(Yc={}));class El{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new el,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Hc.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.indexManager=e.workspace.IndexManager,this.serviceRegistry=e.ServiceRegistry}async build(e,t={},n=Cc.XO.None){var r,i;for(const n of e){const e=n.uri.toString();if(n.state===Hc.Validated){if("boolean"==typeof t.validation&&t.validation)n.state=Hc.IndexedReferences,n.diagnostics=void 0,this.buildState.delete(e);else if("object"==typeof t.validation){const s=this.buildState.get(e),a=null===(r=null==s?void 0:s.result)||void 0===r?void 0:r.validationChecks;if(a){const r=(null!==(i=t.validation.categories)&&void 0!==i?i:Wc.all).filter((e=>!a.includes(e)));r.length>0&&(this.buildState.set(e,{completed:!1,options:{validation:Object.assign(Object.assign({},t.validation),{categories:r})},result:s.result}),n.state=Hc.IndexedReferences)}}}else this.buildState.delete(e)}this.currentState=Hc.Changed,await this.emitUpdate(e.map((e=>e.uri)),[]),await this.buildDocuments(e,t,n)}async update(e,t,n=Cc.XO.None){this.currentState=Hc.Changed;for(const e of t)this.langiumDocuments.deleteDocument(e),this.buildState.delete(e.toString()),this.indexManager.remove(e);for(const t of e){if(!this.langiumDocuments.invalidateDocument(t)){const e=this.langiumDocumentFactory.fromModel({$type:"INVALID"},t);e.state=Hc.Changed,this.langiumDocuments.addDocument(e)}this.buildState.delete(t.toString())}const r=p(e).concat(t).map((e=>e.toString())).toSet();this.langiumDocuments.all.filter((e=>!r.has(e.uri.toString())&&this.shouldRelink(e,r))).forEach((e=>{this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e),e.state=Math.min(e.state,Hc.ComputedScopes),e.diagnostics=void 0})),await this.emitUpdate(e,t),await Oc(n);const i=this.langiumDocuments.all.filter((e=>{var t;return e.staten(e,t))))}shouldRelink(e,t){return!!e.references.some((e=>void 0!==e.error))||this.indexManager.isAffected(e,t)}onUpdate(e){return this.updateListeners.push(e),Yc.create((()=>{const t=this.updateListeners.indexOf(e);t>=0&&this.updateListeners.splice(t,1)}))}async buildDocuments(e,t,n){this.prepareBuild(e,t),await this.runCancelable(e,Hc.Parsed,n,(e=>this.langiumDocumentFactory.update(e,n))),await this.runCancelable(e,Hc.IndexedContent,n,(e=>this.indexManager.updateContent(e,n))),await this.runCancelable(e,Hc.ComputedScopes,n,(async e=>{const t=this.serviceRegistry.getServices(e.uri).references.ScopeComputation;e.precomputedScopes=await t.computeLocalScopes(e,n)})),await this.runCancelable(e,Hc.Linked,n,(e=>this.serviceRegistry.getServices(e.uri).references.Linker.link(e,n))),await this.runCancelable(e,Hc.IndexedReferences,n,(e=>this.indexManager.updateReferences(e,n)));const r=e.filter((e=>this.shouldValidate(e)));await this.runCancelable(r,Hc.Validated,n,(e=>this.validate(e,n)));for(const t of e){const e=this.buildState.get(t.uri.toString());e&&(e.completed=!0)}}prepareBuild(e,t){for(const n of e){const e=n.uri.toString(),r=this.buildState.get(e);r&&!r.completed||this.buildState.set(e,{completed:!1,options:t,result:null==r?void 0:r.result})}}async runCancelable(e,t,n,r){const i=e.filter((e=>e.state{this.buildPhaseListeners.delete(e,t)}))}waitUntil(e,t,n){let r;if(t&&"path"in t?r=t:n=t,null!=n||(n=Cc.XO.None),r){const t=this.langiumDocuments.getDocument(r);if(t&&t.state>e)return Promise.resolve(r)}return this.currentState>=e?Promise.resolve(void 0):n.isCancellationRequested?Promise.reject(wc):new Promise(((t,i)=>{const s=this.onBuildPhase(e,(()=>{if(s.dispose(),a.dispose(),r){const e=this.langiumDocuments.getDocument(r);t(null==e?void 0:e.uri)}else t(void 0)})),a=n.onCancellationRequested((()=>{s.dispose(),a.dispose(),i(wc)}))}))}async notifyBuildPhase(e,t,n){if(0===e.length)return;const r=this.buildPhaseListeners.get(t);for(const t of r)await Oc(n),await t(e,n)}shouldValidate(e){return Boolean(this.getBuildOptions(e).validation)}async validate(e,t){var n,r;const i=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,s=this.getBuildOptions(e).validation,a="object"==typeof s?s:void 0,o=await i.validateDocument(e,a,t);e.diagnostics?e.diagnostics.push(...o):e.diagnostics=o;const c=this.buildState.get(e.uri.toString());if(c){null!==(n=c.result)&&void 0!==n||(c.result={});const e=null!==(r=null==a?void 0:a.categories)&&void 0!==r?r:Wc.all;c.result.validationChecks?c.result.validationChecks.push(...e):c.result.validationChecks=[...e]}}getBuildOptions(e){var t,n;return null!==(n=null===(t=this.buildState.get(e.uri.toString()))||void 0===t?void 0:t.options)&&void 0!==n?n:{}}}class kl{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new ol,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,t){const n=Ee(e).uri,r=[];return this.referenceIndex.forEach((e=>{e.forEach((e=>{Vc.equals(e.targetUri,n)&&e.targetPath===t&&r.push(e)}))})),p(r)}allElements(e,t){let n=p(this.symbolIndex.keys());return t&&(n=n.filter((e=>!t||t.has(e)))),n.map((t=>this.getFileDescriptions(t,e))).flat()}getFileDescriptions(e,t){var n;if(!t)return null!==(n=this.symbolIndex.get(e))&&void 0!==n?n:[];const r=this.symbolByTypeIndex.get(e,t,(()=>{var n;return(null!==(n=this.symbolIndex.get(e))&&void 0!==n?n:[]).filter((e=>this.astReflection.isSubtype(e.type,t)))}));return r}remove(e){const t=e.toString();this.symbolIndex.delete(t),this.symbolByTypeIndex.clear(t),this.referenceIndex.delete(t)}async updateContent(e,t=Cc.XO.None){const n=this.serviceRegistry.getServices(e.uri),r=await n.references.ScopeComputation.computeExports(e,t),i=e.uri.toString();this.symbolIndex.set(i,r),this.symbolByTypeIndex.clear(i)}async updateReferences(e,t=Cc.XO.None){const n=this.serviceRegistry.getServices(e.uri),r=await n.workspace.ReferenceDescriptionProvider.createDescriptions(e,t);this.referenceIndex.set(e.uri.toString(),r)}isAffected(e,t){const n=this.referenceIndex.get(e.uri.toString());return!!n&&n.some((e=>!e.local&&t.has(e.targetUri.toString())))}}class xl{constructor(e){this.initialBuildOptions={},this._ready=new bc,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}initialize(e){var t;this.folders=null!==(t=e.workspaceFolders)&&void 0!==t?t:void 0}initialized(e){return this.mutex.write((e=>{var t;return this.initializeWorkspace(null!==(t=this.folders)&&void 0!==t?t:[],e)}))}async initializeWorkspace(e,t=Cc.XO.None){const n=await this.performStartup(e);await Oc(t),await this.documentBuilder.build(n,this.initialBuildOptions,t)}async performStartup(e){const t=this.serviceRegistry.all.flatMap((e=>e.LanguageMetaData.fileExtensions)),n=[],r=e=>{n.push(e),this.langiumDocuments.hasDocument(e.uri)||this.langiumDocuments.addDocument(e)};return await this.loadAdditionalDocuments(e,r),await Promise.all(e.map((e=>[e,this.getRootFolder(e)])).map((async e=>this.traverseFolder(...e,t,r)))),this._ready.resolve(),n}loadAdditionalDocuments(e,t){return Promise.resolve()}getRootFolder(e){return Bc.parse(e.uri)}async traverseFolder(e,t,n,r){const i=await this.fileSystemProvider.readDirectory(t);await Promise.all(i.map((async t=>{if(this.includeEntry(e,t,n))if(t.isDirectory)await this.traverseFolder(e,t.uri,n,r);else if(t.isFile){const e=await this.langiumDocuments.getOrCreateDocument(t.uri);r(e)}})))}includeEntry(e,t,n){const r=Vc.basename(t.uri);if(r.startsWith("."))return!1;if(t.isDirectory)return"node_modules"!==r&&"out"!==r;if(t.isFile){const e=Vc.extname(t.uri);return n.includes(e)}return!1}}class Il{constructor(e){const t=e.parser.TokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(t);const n=Nl(t)?Object.values(t):t;this.chevrotainLexer=new Pr(n,{positionTracking:"full"})}get definition(){return this.tokenTypes}tokenize(e){var t;const n=this.chevrotainLexer.tokenize(e);return{tokens:n.tokens,errors:n.errors,hidden:null!==(t=n.groups.hidden)&&void 0!==t?t:[]}}toTokenTypeDictionary(e){if(Nl(e))return e;const t=Sl(e)?Object.values(e.modes).flat():e,n={};return t.forEach((e=>n[e.name]=e)),n}}function Sl(e){return e&&"modes"in e&&"defaultMode"in e}function Nl(e){return!function(e){return Array.isArray(e)&&(0===e.length||"name"in e[0])}(e)&&!Sl(e)}function Cl(e){let t="";return t="string"==typeof e?e:e.text,t.split(je)}const $l=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,wl=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function Ll(e,t,n,r){const i=[];if(0===e.length){const e=La.create(n,r),s=La.create(n,r+t.length);i.push({type:"text",content:t,range:Oa.create(e,s)})}else{let s=0;for(const a of e){const e=a.index,o=t.substring(s,e);o.length>0&&i.push({type:"text",content:t.substring(s,e),range:Oa.create(La.create(n,s+r),La.create(n,e+r))});let c=o.length+1;const l=a[1];if(i.push({type:"inline-tag",content:l,range:Oa.create(La.create(n,s+c+r),La.create(n,s+c+l.length+r))}),c+=l.length,4===a.length){c+=a[2].length;const e=a[3];i.push({type:"text",content:e,range:Oa.create(La.create(n,s+c+r),La.create(n,s+c+e.length+r))})}else i.push({type:"text",content:"",range:Oa.create(La.create(n,s+c+r),La.create(n,s+c+r))});s=e+a[0].length}const a=t.substring(s);a.length>0&&i.push({type:"text",content:a,range:Oa.create(La.create(n,s+r),La.create(n,s+r+a.length))})}return i}const Ol=/\S/,bl=/\s*$/;function _l(e,t){const n=e.substring(t).match(Ol);return n?t+n.index:e.length}function Pl(e){const t=e.match(bl);if(t&&"number"==typeof t.index)return t.index}function Ml(e,t){const n=e.tokens[e.index];return"tag"===n.type?Fl(e,!1):"text"===n.type||"inline-tag"===n.type?Dl(e):(function(e,t){if(t){const n=new Wl("",e.range);"inlines"in t?t.inlines.push(n):t.content.inlines.push(n)}}(n,t),void e.index++)}function Dl(e){let t=e.tokens[e.index];const n=t;let r=t;const i=[];for(;t&&"break"!==t.type&&"tag"!==t.type;)i.push(Ul(e)),r=t,t=e.tokens[e.index];return new Hl(i,Oa.create(n.range.start,r.range.end))}function Ul(e){return"inline-tag"===e.tokens[e.index].type?Fl(e,!0):Gl(e)}function Fl(e,t){const n=e.tokens[e.index++],r=n.content.substring(1),i=e.tokens[e.index];if("text"===(null==i?void 0:i.type)){if(t){const i=Gl(e);return new Vl(r,new Hl([i],i.range),t,Oa.create(n.range.start,i.range.end))}{const i=Dl(e);return new Vl(r,i,t,Oa.create(n.range.start,i.range.end))}}{const e=n.range;return new Vl(r,new Hl([],e),t,e)}}function Gl(e){const t=e.tokens[e.index++];return new Wl(t.content,t.range)}function Kl(e){if(!e)return Kl({start:"/**",end:"*/",line:"*"});const{start:t,end:n,line:r}=e;return{start:Bl(t,!0),end:Bl(n,!1),line:Bl(r,!0)}}function Bl(e,t){if("string"==typeof e||"object"==typeof e){const n="string"==typeof e?Ye(e):e.source;return t?new RegExp(`^\\s*${n}`):new RegExp(`\\s*${n}\\s*$`)}return e}class jl{constructor(e,t){this.elements=e,this.range=t}getTag(e){return this.getAllTags().find((t=>t.name===e))}getTags(e){return this.getAllTags().filter((t=>t.name===e))}getAllTags(){return this.elements.filter((e=>"name"in e))}toString(){let e="";for(const t of this.elements)if(0===e.length)e=t.toString();else{const n=t.toString();e+=zl(e)+n}return e.trim()}toMarkdown(e){let t="";for(const n of this.elements)if(0===t.length)t=n.toMarkdown(e);else{const r=n.toMarkdown(e);t+=zl(t)+r}return t.trim()}}class Vl{constructor(e,t,n,r){this.name=e,this.content=t,this.inline=n,this.range=r}toString(){let e=`@${this.name}`;const t=this.content.toString();return 1===this.content.inlines.length?e=`${e} ${t}`:this.content.inlines.length>1&&(e=`${e}\n${t}`),this.inline?`{${e}}`:e}toMarkdown(e){var t,n;return null!==(n=null===(t=null==e?void 0:e.renderTag)||void 0===t?void 0:t.call(e,this))&&void 0!==n?n:this.toMarkdownDefault(e)}toMarkdownDefault(e){const t=this.content.toMarkdown(e);if(this.inline){const n=function(e,t,n){var r,i;if("linkplain"===e||"linkcode"===e||"link"===e){const s=t.indexOf(" ");let a=t;if(s>0){const e=_l(t,s);a=t.substring(e),t=t.substring(0,s)}("linkcode"===e||"link"===e&&"code"===n.link)&&(a=`\`${a}\``);const o=null!==(i=null===(r=n.renderLink)||void 0===r?void 0:r.call(n,t,a))&&void 0!==i?i:function(e,t){try{return Bc.parse(e,!0),`[${t}](${e})`}catch(t){return e}}(t,a);return o}}(this.name,t,null!=e?e:{});if("string"==typeof n)return n}let n="";"italic"===(null==e?void 0:e.tag)||void 0===(null==e?void 0:e.tag)?n="*":"bold"===(null==e?void 0:e.tag)?n="**":"bold-italic"===(null==e?void 0:e.tag)&&(n="***");let r=`${n}@${this.name}${n}`;return 1===this.content.inlines.length?r=`${r} — ${t}`:this.content.inlines.length>1&&(r=`${r}\n${t}`),this.inline?`{${r}}`:r}}class Hl{constructor(e,t){this.inlines=e,this.range=t}toString(){let e="";for(let t=0;tn.range.start.line&&(e+="\n")}return e}toMarkdown(e){let t="";for(let n=0;nr.range.start.line&&(t+="\n")}return t}}class Wl{constructor(e,t){this.text=e,this.range=t}toString(){return this.text}toMarkdown(){return this.text}}function zl(e){return e.endsWith("\n")?"\n":"\n\n"}class Yl{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){const t=this.commentProvider.getComment(e);if(t&&function(e){const t=Kl(void 0),n=Cl(e);if(0===n.length)return!1;const r=n[0],i=n[n.length-1],s=t.start,a=t.end;return Boolean(null==s?void 0:s.exec(r))&&Boolean(null==a?void 0:a.exec(i))}(t))return function(e,t,n){let r,i;"string"==typeof e?(i=t,r=n):(i=e.range.start,r=t),i||(i=La.create(0,0));const s=function(e){var t,n,r;const i=[];let s=e.position.line,a=e.position.character;for(let o=0;o=u.length){if(i.length>0){const e=La.create(s,a);i.push({type:"break",content:"",range:Oa.create(e,e)})}}else{$l.lastIndex=d;const e=$l.exec(u);if(e){const t=e[0],n=e[1],r=La.create(s,a+d),o=La.create(s,a+d+t.length);i.push({type:"tag",content:n,range:Oa.create(r,o)}),d+=t.length,d=_l(u,d)}if(d0&&"break"===i[i.length-1].type?i.slice(0,-1):i}({lines:Cl(e),position:i,options:Kl(r)});return function(e){var t,n,r,i;const s=La.create(e.position.line,e.position.character);if(0===e.tokens.length)return new jl([],Oa.create(s,s));const a=[];for(;e.indexthis.documentationLinkRenderer(e,t,n),renderTag:t=>this.documentationTagRenderer(e,t)})}documentationLinkRenderer(e,t,n){var r;const i=null!==(r=this.findNameInPrecomputedScopes(e,t))&&void 0!==r?r:this.findNameInGlobalScope(e,t);if(i&&i.nameSegment){const e=i.nameSegment.range.start.line+1,t=i.nameSegment.range.start.character+1;return`[${n}](${i.documentUri.with({fragment:`L${e},${t}`}).toString()})`}}documentationTagRenderer(e,t){}findNameInPrecomputedScopes(e,t){const n=Ee(e).precomputedScopes;if(!n)return;let r=e;do{const e=n.get(r).find((e=>e.name===t));if(e)return e;r=r.$container}while(r)}findNameInGlobalScope(e,t){return this.indexManager.allElements().find((e=>e.name===t))}}class Xl{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var t;return function(e){return"string"==typeof e.$comment}(e)?e.$comment:null===(t=function(e,t){if(e){const n=function(e,t=!0){for(;e.container;){const n=e.container;let r=n.content.indexOf(e);for(;r>0;){r--;const e=n.content[r];if(t||!e.hidden)return e}e=n}}(e,!0);if(n&&E(n,t))return n;if(l(e))for(let n=e.content.findIndex((e=>!e.hidden))-1;n>=0;n--){const r=e.content[n];if(E(r,t))return r}}}(e.$cstNode,this.grammarConfig().multilineCommentRules))||void 0===t?void 0:t.text}}var ql;n(2676);class Ql{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e){return Promise.resolve(this.syncParser.parse(e))}}class Jl{constructor(){this.previousTokenSource=new Cc.Qi,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();const t=new Cc.Qi;return this.previousTokenSource=t,this.enqueue(this.writeQueue,e,t.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,t,n){const r=new bc,i={action:t,deferred:r,cancellationToken:null!=n?n:Cc.XO.None};return e.push(i),this.performNextOperation(),r.promise}async performNextOperation(){if(!this.done)return;const e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else{if(!(this.readQueue.length>0))return;e.push(...this.readQueue.splice(0,this.readQueue.length))}this.done=!1,await Promise.all(e.map((async({action:e,deferred:t,cancellationToken:n})=>{try{const r=await Promise.resolve().then((()=>e(n)));t.resolve(r)}catch(e){Lc(e)?t.resolve(void 0):t.reject(e)}}))),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}class Zl{constructor(e){this.grammarElementIdMap=new tl,this.tokenTypeIdMap=new tl,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors.map((e=>Object.assign({},e))),parserErrors:e.parserErrors.map((e=>Object.assign({},e))),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}createDehyrationContext(e){const t=new Map,n=new Map;for(const n of Ie(e))t.set(n,{});if(e.$cstNode)for(const t of A(e.$cstNode))n.set(t,{});return{astNodes:t,cstNodes:n}}dehydrateAstNode(e,t){const n=t.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,void 0!==e.$cstNode&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,t));for(const[s,a]of Object.entries(e))if(!s.startsWith("$"))if(Array.isArray(a)){const e=[];n[s]=e;for(const n of a)r(n)?e.push(this.dehydrateAstNode(n,t)):i(n)?e.push(this.dehydrateReference(n,t)):e.push(n)}else r(a)?n[s]=this.dehydrateAstNode(a,t):i(a)?n[s]=this.dehydrateReference(a,t):void 0!==a&&(n[s]=a);return n}dehydrateReference(e,t){const n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=t.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,t){const n=t.cstNodes.get(e);return l(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=t.astNodes.get(e.astNode),o(e)?n.content=e.content.map((e=>this.dehydrateCstNode(e,t))):c(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){const t=e.value,n=this.createHydrationContext(t);return"$cstNode"in t&&this.hydrateCstNode(t.$cstNode,n),{lexerErrors:e.lexerErrors,parserErrors:e.parserErrors,value:this.hydrateAstNode(t,n)}}createHydrationContext(e){const t=new Map,n=new Map;for(const n of Ie(e))t.set(n,{});let r;if(e.$cstNode)for(const t of A(e.$cstNode)){let e;"fullText"in t?(e=new ac(t.fullText),r=e):"content"in t?e=new ic:"tokenType"in t&&(e=this.hydrateCstLeafNode(t)),e&&(n.set(t,e),e.root=r)}return{astNodes:t,cstNodes:n}}hydrateAstNode(e,t){const n=t.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=t.cstNodes.get(e.$cstNode));for(const[s,a]of Object.entries(e))if(!s.startsWith("$"))if(Array.isArray(a)){const e=[];n[s]=e;for(const o of a)r(o)?e.push(this.setParent(this.hydrateAstNode(o,t),n)):i(o)?e.push(this.hydrateReference(o,n,s,t)):e.push(o)}else r(a)?n[s]=this.setParent(this.hydrateAstNode(a,t),n):i(a)?n[s]=this.hydrateReference(a,n,s,t):void 0!==a&&(n[s]=a);return n}setParent(e,t){return e.$container=t,e}hydrateReference(e,t,n,r){return this.linker.buildReference(t,n,r.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,t,n=0){const r=t.cstNodes.get(e);if("number"==typeof e.grammarSource&&(r.grammarSource=this.getGrammarElement(e.grammarSource)),r.astNode=t.astNodes.get(e.astNode),o(r))for(const i of e.content){const e=this.hydrateCstNode(i,t,n++);r.content.push(e)}return r}hydrateCstLeafNode(e){const t=this.getTokenType(e.tokenType),n=e.offset,r=e.length,i=e.startLine,s=e.startColumn,a=e.endLine,o=e.endColumn,c=e.hidden;return new rc(n,r,{start:{line:i,character:s},end:{line:a,character:o}},t,c)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap();const t=this.grammarElementIdMap.getKey(e);if(t)return t;throw new Error("Invalid grammar element id: "+e)}createGrammarElementIdMap(){let e=0;for(const n of Ie(this.grammar))t=n,ve.isInstance(t,$)&&this.grammarElementIdMap.set(n,e++);var t}}function eu(e){return{documentation:{CommentProvider:e=>new Xl(e),DocumentationProvider:e=>new Yl(e)},parser:{AsyncParser:e=>new Ql(e),GrammarConfig:e=>function(e){const t=[],n=e.Grammar;for(const e of n.rules)V(e)&&(r=e).hidden&&!st(r).test(" ")&&We(st(e))&&t.push(e.name);var r;return{multilineCommentRules:t,nameRegexp:R}}(e),LangiumParser:e=>function(e){const t=function(e){const t=e.Grammar,n=e.parser.Lexer;return yc(t,new dc(e),n.definition)}(e);return t.finalize(),t}(e),CompletionParser:e=>function(e){const t=e.Grammar,n=e.parser.Lexer,r=new pc(e);return yc(t,r,n.definition),r.finalize(),r}(e),ValueConverter:()=>new Sc,TokenBuilder:()=>new Ic,Lexer:e=>new Il(e),ParserErrorMessageProvider:()=>new fc},workspace:{AstNodeLocator:()=>new vl,AstNodeDescriptionProvider:e=>new Al(e),ReferenceDescriptionProvider:e=>new Tl(e)},references:{Linker:e=>new Qc(e),NameProvider:()=>new Jc,ScopeProvider:e=>new ll(e),ScopeComputation:e=>new nl(e),References:e=>new Zc(e)},serializer:{Hydrator:e=>new Zl(e),JsonSerializer:e=>new dl(e)},validation:{DocumentValidator:e=>new ml(e),ValidationRegistry:e=>new pl(e)},shared:()=>e.shared}}function tu(e){return{ServiceRegistry:()=>new hl,workspace:{LangiumDocuments:e=>new qc(e),LangiumDocumentFactory:e=>new Xc(e),DocumentBuilder:e=>new El(e),IndexManager:e=>new kl(e),WorkspaceManager:e=>new xl(e),FileSystemProvider:t=>e.fileSystemProvider(t),WorkspaceLock:()=>new Jl,ConfigurationProvider:e=>new Rl(e)}}}function nu(e,t,n,r,i,s,a,o,c){return iu([e,t,n,r,i,s,a,o,c].reduce(ou,{}))}!function(e){e.merge=(e,t)=>ou(ou({},e),t)}(ql||(ql={}));const ru=Symbol("isProxy");function iu(e,t){const n=new Proxy({},{deleteProperty:()=>!1,get:(r,i)=>au(r,i,e,t||n),getOwnPropertyDescriptor:(r,i)=>(au(r,i,e,t||n),Object.getOwnPropertyDescriptor(r,i)),has:(t,n)=>n in e,ownKeys:()=>[...Reflect.ownKeys(e),ru]});return n[ru]=!0,n}const su=Symbol();function au(e,t,n,r){if(t in e){if(e[t]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:e[t]});if(e[t]===su)throw new Error('Cycle detected. Please make "'+String(t)+'" lazy. See https://langium.org/docs/configuration-services/#resolving-cyclic-dependencies');return e[t]}if(t in n){const i=n[t];e[t]=su;try{e[t]="function"==typeof i?i(r):iu(i,r)}catch(n){throw e[t]=n instanceof Error?n:void 0,n}return e[t]}}function ou(e,t){if(t)for(const[n,r]of Object.entries(t))if(void 0!==r){const t=e[n];e[n]=null!==t&&null!==r&&"object"==typeof t&&"object"==typeof r?ou(t,r):r}return e}class cu{readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}}const lu={fileSystemProvider:()=>new cu},uu={Grammar:()=>{},LanguageMetaData:()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"})},du={AstReflection:()=>new Te};function hu(e){var t;const n=function(){const e=nu(tu(lu),du),t=nu(eu({shared:e}),uu);return e.ServiceRegistry.register(t),t}(),r=n.serializer.JsonSerializer.deserialize(e);return n.shared.workspace.LangiumDocumentFactory.fromModel(r,Bc.parse(`memory://${null!==(t=r.name)&&void 0!==t?t:"grammar"}.langium`)),r}},2559:(e,t,n)=>{n.d(t,{A:()=>i});var r=n(9501);const i=function(e,t,n){for(var i=-1,s=e.length;++i{n.d(t,{A:()=>r});const r=function(e,t){return e{n.d(t,{A:()=>s});var r=n(4288),i=n(8446);const s=function(e,t){var n=-1,s=(0,i.A)(e)?Array(e.length):[];return(0,r.A)(e,(function(e,r,i){s[++n]=t(e,r,i)})),s}},5507:(e,t,n)=>{n.d(t,{A:()=>u});var r=n(6318),i=n(2851),s=n(1521),a=n(5353),o=n(3149),c=n(901);const l=function(e,t,n,r){if(!(0,o.A)(e))return e;for(var l=-1,u=(t=(0,s.A)(t,e)).length,d=u-1,h=e;null!=h&&++l{n.d(t,{A:()=>i});var r=n(4507);const i=function(e){return(0,r.A)(e,4)}},3068:(e,t,n)=>{n.d(t,{A:()=>l});var r=n(4326),i=n(6984),s=n(6832),a=n(9999),o=Object.prototype,c=o.hasOwnProperty;const l=(0,r.A)((function(e,t){e=Object(e);var n=-1,r=t.length,l=r>2?t[2]:void 0;for(l&&(0,s.A)(t[0],t[1],l)&&(r=1);++n{n.d(t,{A:()=>l});var r=n(6307),i=n(8446),s=n(5041);var a=n(5707),o=n(8593),c=Math.max;const l=(u=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var s=null==n?0:(0,o.A)(n);return s<0&&(s=c(i+s,0)),(0,a.A)(e,(0,r.A)(t,3),s)},function(e,t,n){var a=Object(e);if(!(0,i.A)(e)){var o=(0,r.A)(t,3);e=(0,s.A)(e),t=function(e){return o(a[e],e,a)}}var c=u(e,t,n);return c>-1?a[o?e[c]:c]:void 0});var u},4098:(e,t,n)=>{n.d(t,{A:()=>i});var r=n(7671);const i=function(e){return null!=e&&e.length?(0,r.A)(e,1):[]}},9703:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(2383),i=n(2049),s=n(3098);const a=function(e){return"string"==typeof e||!(0,i.A)(e)&&(0,s.A)(e)&&"[object String]"==(0,r.A)(e)}},6666:(e,t,n)=>{n.d(t,{A:()=>r});const r=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},4722:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(5572),i=n(6307),s=n(2568),a=n(2049);const o=function(e,t){return((0,a.A)(e)?r.A:s.A)(e,(0,i.A)(t,3))}},6452:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(2559),i=n(6224),s=n(9008);const a=function(e){return e&&e.length?(0,r.A)(e,s.A,i.A):void 0}},3631:(e,t,n)=>{n.d(t,{A:()=>f});var r=/\s/;var i=/^\s+/;const s=function(e){return e?e.slice(0,function(e){for(var t=e.length;t--&&r.test(e.charAt(t)););return t}(e)+1).replace(i,""):e};var a=n(3149),o=n(9501),c=/^[-+]0x[0-9a-f]+$/i,l=/^0b[01]+$/i,u=/^0o[0-7]+$/i,d=parseInt;var h=1/0;const f=function(e){return e?(e=function(e){if("number"==typeof e)return e;if((0,o.A)(e))return NaN;if((0,a.A)(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=(0,a.A)(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=s(e);var n=l.test(e);return n||u.test(e)?d(e.slice(2),n?2:8):c.test(e)?NaN:+e}(e))===h||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},8593:(e,t,n)=>{n.d(t,{A:()=>i});var r=n(3631);const i=function(e){var t=(0,r.A)(e),n=t%1;return t==t?n?t-n:t:0}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/731-a0fa9714.chunk.min.js b/themes/hugo-geekdoc/static/js/731-a0fa9714.chunk.min.js deleted file mode 100644 index 83cfcc3e9..000000000 --- a/themes/hugo-geekdoc/static/js/731-a0fa9714.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[731],{9850:(e,t,n)=>{t.Qi=t.XO=void 0;const r=n(9590),i=n(8585),s=n(2676);var o;!function(e){e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:s.Event.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:s.Event.None}),e.is=function(t){const n=t;return n&&(n===e.None||n===e.Cancelled||i.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}}(o||(t.XO=o={}));const a=Object.freeze((function(e,t){const n=(0,r.default)().timer.setTimeout(e.bind(t),0);return{dispose(){n.dispose()}}}));class c{constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?a:(this._emitter||(this._emitter=new s.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}}t.Qi=class{get token(){return this._token||(this._token=new c),this._token}cancel(){this._token?this._token.cancel():this._token=o.Cancelled}dispose(){this._token?this._token instanceof c&&this._token.dispose():this._token=o.None}}},2676:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Emitter=t.Event=void 0;const r=n(9590);var i;!function(e){const t={dispose(){}};e.None=function(){return t}}(i||(t.Event=i={}));class s{add(e,t=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(t),Array.isArray(n)&&n.push({dispose:()=>this.remove(e,t)})}remove(e,t=null){if(!this._callbacks)return;let n=!1;for(let r=0,i=this._callbacks.length;r{this._callbacks||(this._callbacks=new s),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,t);const r={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,t),r.dispose=o._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(n)&&n.push(r),r}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}}t.Emitter=o,o._noop=function(){}},8585:(e,t)=>{function n(e){return"string"==typeof e||e instanceof String}function r(e){return Array.isArray(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.stringArray=t.array=t.func=t.error=t.number=t.string=t.boolean=void 0,t.boolean=function(e){return!0===e||!1===e},t.string=n,t.number=function(e){return"number"==typeof e||e instanceof Number},t.error=function(e){return e instanceof Error},t.func=function(e){return"function"==typeof e},t.array=r,t.stringArray=function(e){return r(e)&&e.every((e=>n(e)))}},9590:(e,t)=>{let n;function r(){if(void 0===n)throw new Error("No runtime abstraction layer installed");return n}Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.install=function(e){if(void 0===e)throw new Error("No runtime abstraction layer provided");n=e}}(r||(r={})),t.default=r},9222:(e,t,n)=>{n.d(t,{$:()=>a});var r=n(8546),i=n(3707),s=class extends r.mR{static{(0,r.K2)(this,"PacketTokenBuilder")}constructor(){super(["packet-beta"])}},o={parser:{TokenBuilder:(0,r.K2)((()=>new s),"TokenBuilder"),ValueConverter:(0,r.K2)((()=>new r.Tm),"ValueConverter")}};function a(e=i.DD){const t=(0,i.WQ)((0,i.uM)(e),r.sr),n=(0,i.WQ)((0,i.tG)({shared:t}),r.AM,o);return t.ServiceRegistry.register(n),{shared:t,Packet:n}}(0,r.K2)(a,"createPacketServices")},8660:(e,t,n)=>{n.d(t,{f:()=>c});var r=n(8546),i=n(3707),s=class extends r.mR{static{(0,r.K2)(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},o=class extends r.dg{static{(0,r.K2)(this,"PieValueConverter")}runCustomConverter(e,t,n){if("PIE_SECTION_LABEL"===e.name)return t.replace(/"/g,"").trim()}},a={parser:{TokenBuilder:(0,r.K2)((()=>new s),"TokenBuilder"),ValueConverter:(0,r.K2)((()=>new o),"ValueConverter")}};function c(e=i.DD){const t=(0,i.WQ)((0,i.uM)(e),r.sr),n=(0,i.WQ)((0,i.tG)({shared:t}),r.KX,a);return t.ServiceRegistry.register(n),{shared:t,Pie:n}}(0,r.K2)(c,"createPieServices")},7010:(e,t,n)=>{n.d(t,{v:()=>a});var r=n(8546),i=n(3707),s=class extends r.mR{static{(0,r.K2)(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},o={parser:{TokenBuilder:(0,r.K2)((()=>new s),"TokenBuilder"),ValueConverter:(0,r.K2)((()=>new r.Tm),"ValueConverter")}};function a(e=i.DD){const t=(0,i.WQ)((0,i.uM)(e),r.sr),n=(0,i.WQ)((0,i.tG)({shared:t}),r.e5,o);return t.ServiceRegistry.register(n),{shared:t,Info:n}}(0,r.K2)(a,"createInfoServices")},6288:(e,t,n)=>{n.d(t,{b:()=>a});var r=n(8546),i=n(3707),s=class extends r.mR{static{(0,r.K2)(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},o={parser:{TokenBuilder:(0,r.K2)((()=>new s),"TokenBuilder"),ValueConverter:(0,r.K2)((()=>new r.Tm),"ValueConverter")}};function a(e=i.DD){const t=(0,i.WQ)((0,i.uM)(e),r.sr),n=(0,i.WQ)((0,i.tG)({shared:t}),r.eZ,o);return t.ServiceRegistry.register(n),{shared:t,GitGraph:n}}(0,r.K2)(a,"createGitGraphServices")},8546:(e,t,n)=>{n.d(t,{AM:()=>S,K2:()=>s,KX:()=>N,Tm:()=>b,dg:()=>L,e5:()=>I,eZ:()=>C,mR:()=>O,sr:()=>x});var r=n(3707),i=Object.defineProperty,s=(e,t)=>i(e,"name",{value:t,configurable:!0}),o="Branch";s((function(e){return m.isInstance(e,o)}),"isBranch");var a="Commit";s((function(e){return m.isInstance(e,a)}),"isCommit"),s((function(e){return m.isInstance(e,"Common")}),"isCommon");var c="GitGraph";s((function(e){return m.isInstance(e,c)}),"isGitGraph"),s((function(e){return m.isInstance(e,"Info")}),"isInfo");var u="Merge";s((function(e){return m.isInstance(e,u)}),"isMerge"),s((function(e){return m.isInstance(e,"Packet")}),"isPacket"),s((function(e){return m.isInstance(e,"PacketBlock")}),"isPacketBlock"),s((function(e){return m.isInstance(e,"Pie")}),"isPie"),s((function(e){return m.isInstance(e,"PieSection")}),"isPieSection");var l,d,h,f,p=class extends r.kD{static{s(this,"MermaidAstReflection")}getAllTypes(){return["Branch","Checkout","CherryPicking","Commit","Common","Direction","GitGraph","Info","Merge","Packet","PacketBlock","Pie","PieSection","Statement"]}computeIsSubtype(e,t){switch(e){case o:case"Checkout":case"CherryPicking":case a:case u:return this.isSubtype("Statement",t);case"Direction":return this.isSubtype(c,t);default:return!1}}getReferenceType(e){const t=`${e.container.$type}:${e.property}`;throw new Error(`${t} is not a valid reference id.`)}getTypeMetaData(e){switch(e){case"Branch":return{name:"Branch",properties:[{name:"name"},{name:"order"}]};case"Checkout":return{name:"Checkout",properties:[{name:"branch"}]};case"CherryPicking":return{name:"CherryPicking",properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case"Commit":return{name:"Commit",properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case"Common":return{name:"Common",properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case"GitGraph":return{name:"GitGraph",properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case"Info":return{name:"Info",properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case"Merge":return{name:"Merge",properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case"Packet":return{name:"Packet",properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case"PacketBlock":return{name:"PacketBlock",properties:[{name:"end"},{name:"label"},{name:"start"}]};case"Pie":return{name:"Pie",properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case"PieSection":return{name:"PieSection",properties:[{name:"label"},{name:"value"}]};case"Direction":return{name:"Direction",properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};default:return{name:e,properties:[]}}}},m=new p,g=s((()=>l??(l=(0,r.y0)('{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","name":"Info","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}'))),"InfoGrammar"),y=s((()=>d??(d=(0,r.y0)('{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","name":"Packet","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"packet-beta"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"?"},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}'))),"PacketGrammar"),A=s((()=>h??(h=(0,r.y0)('{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","name":"Pie","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"PIE_SECTION_LABEL","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]+\\"/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PIE_SECTION_VALUE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/(0|[1-9][0-9]*)(\\\\.[0-9]+)?/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}'))),"PieGrammar"),T=s((()=>f??(f=(0,r.y0)('{"$type":"Grammar","isDeclared":true,"name":"GitGraph","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"rules":[{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"ParserRule","name":"GitGraph","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+(?=\\\\s)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[]}'))),"GitGraphGrammar"),v={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},E={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},R={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},k={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},x={AstReflection:s((()=>new p),"AstReflection")},I={Grammar:s((()=>g()),"Grammar"),LanguageMetaData:s((()=>v),"LanguageMetaData"),parser:{}},S={Grammar:s((()=>y()),"Grammar"),LanguageMetaData:s((()=>E),"LanguageMetaData"),parser:{}},N={Grammar:s((()=>A()),"Grammar"),LanguageMetaData:s((()=>R),"LanguageMetaData"),parser:{}},C={Grammar:s((()=>T()),"Grammar"),LanguageMetaData:s((()=>k),"LanguageMetaData"),parser:{}},w={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},L=class extends r.dM{static{s(this,"AbstractMermaidValueConverter")}runConverter(e,t,n){let r=this.runCommonConverter(e,t,n);return void 0===r&&(r=this.runCustomConverter(e,t,n)),void 0===r?super.runConverter(e,t,n):r}runCommonConverter(e,t,n){const r=w[e.name];if(void 0===r)return;const i=r.exec(t);return null!==i?void 0!==i[1]?i[1].trim().replace(/[\t ]{2,}/gm," "):void 0!==i[2]?i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,"\n"):void 0:void 0}},b=class extends L{static{s(this,"CommonValueConverter")}runCustomConverter(e,t,n){}},O=class extends r.QU{static{s(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,n){const r=super.buildKeywordTokens(e,t,n);return r.forEach((e=>{this.keywords.has(e.name)&&void 0!==e.PATTERN&&(e.PATTERN=new RegExp(e.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))})),r}};(class extends O{static{s(this,"CommonTokenBuilder")}})},8731:(e,t,n)=>{n.d(t,{qg:()=>o}),n(6288),n(7010),n(9222),n(8660);var r=n(8546),i={},s={info:(0,r.K2)((async()=>{const{createInfoServices:e}=await n.e(278).then(n.bind(n,2278)),t=e().Info.parser.LangiumParser;i.info=t}),"info"),packet:(0,r.K2)((async()=>{const{createPacketServices:e}=await n.e(959).then(n.bind(n,6959)),t=e().Packet.parser.LangiumParser;i.packet=t}),"packet"),pie:(0,r.K2)((async()=>{const{createPieServices:e}=await n.e(221).then(n.bind(n,6221)),t=e().Pie.parser.LangiumParser;i.pie=t}),"pie"),gitGraph:(0,r.K2)((async()=>{const{createGitGraphServices:e}=await n.e(760).then(n.bind(n,5760)),t=e().GitGraph.parser.LangiumParser;i.gitGraph=t}),"gitGraph")};async function o(e,t){const n=s[e];if(!n)throw new Error(`Unknown diagram type: ${e}`);i[e]||await n();const r=i[e].parse(t);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new a(r);return r.value}(0,r.K2)(o,"parse");var a=class extends Error{constructor(e){super(`Parsing failed: ${e.lexerErrors.map((e=>e.message)).join("\n")} ${e.parserErrors.map((e=>e.message)).join("\n")}`),this.result=e}static{(0,r.K2)(this,"MermaidParseError")}}},3707:(e,t,n)=>{function r(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$type}function i(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText}function s(e){return"object"==typeof e&&null!==e&&r(e.container)&&i(e.reference)&&"string"==typeof e.message}n.d(t,{kD:()=>o,QU:()=>Ic,dM:()=>Sc,DD:()=>ul,tG:()=>el,uM:()=>tl,WQ:()=>nl,y0:()=>hl});class o{constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,t){return r(e)&&this.isSubtype(e.$type,t)}isSubtype(e,t){if(e===t)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});const r=n[t];if(void 0!==r)return r;{const r=this.computeIsSubtype(e,t);return n[t]=r,r}}getAllSubTypes(e){const t=this.allSubtypes[e];if(t)return t;{const t=this.getAllTypes(),n=[];for(const r of t)this.isSubtype(r,e)&&n.push(r);return this.allSubtypes[e]=n,n}}}function a(e){return"object"==typeof e&&null!==e&&Array.isArray(e.content)}function c(e){return"object"==typeof e&&null!==e&&"object"==typeof e.tokenType}function u(e){return a(e)&&"string"==typeof e.fullText}class l{constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){const e=this.iterator();return Boolean(e.next().done)}count(){const e=this.iterator();let t=0,n=e.next();for(;!n.done;)t++,n=e.next();return t}toArray(){const e=[],t=this.iterator();let n;do{n=t.next(),void 0!==n.value&&e.push(n.value)}while(!n.done);return e}toSet(){return new Set(this)}toMap(e,t){const n=this.map((n=>[e?e(n):n,t?t(n):n]));return new Map(n)}toString(){return this.join()}concat(e){const t=e[Symbol.iterator]();return new l((()=>({first:this.startFn(),firstDone:!1})),(e=>{let n;if(!e.firstDone){do{if(n=this.nextFn(e.first),!n.done)return n}while(!n.done);e.firstDone=!0}do{if(n=t.next(),!n.done)return n}while(!n.done);return f}))}join(e=","){const t=this.iterator();let n,r="",i=!1;do{n=t.next(),n.done||(i&&(r+=e),r+="string"==typeof(s=n.value)?s:void 0===s?"undefined":"function"==typeof s.toString?s.toString():Object.prototype.toString.call(s)),i=!0}while(!n.done);var s;return r}indexOf(e,t=0){const n=this.iterator();let r=0,i=n.next();for(;!i.done;){if(r>=t&&i.value===e)return r;i=n.next(),r++}return-1}every(e){const t=this.iterator();let n=t.next();for(;!n.done;){if(!e(n.value))return!1;n=t.next()}return!0}some(e){const t=this.iterator();let n=t.next();for(;!n.done;){if(e(n.value))return!0;n=t.next()}return!1}forEach(e){const t=this.iterator();let n=0,r=t.next();for(;!r.done;)e(r.value,n),r=t.next(),n++}map(e){return new l(this.startFn,(t=>{const{done:n,value:r}=this.nextFn(t);return n?f:{done:!1,value:e(r)}}))}filter(e){return new l(this.startFn,(t=>{let n;do{if(n=this.nextFn(t),!n.done&&e(n.value))return n}while(!n.done);return f}))}nonNullable(){return this.filter((e=>null!=e))}reduce(e,t){const n=this.iterator();let r=t,i=n.next();for(;!i.done;)r=void 0===r?i.value:e(r,i.value),i=n.next();return r}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,n){const r=e.next();if(r.done)return n;const i=this.recursiveReduce(e,t,n);return void 0===i?r.value:t(i,r.value)}find(e){const t=this.iterator();let n=t.next();for(;!n.done;){if(e(n.value))return n.value;n=t.next()}}findIndex(e){const t=this.iterator();let n=0,r=t.next();for(;!r.done;){if(e(r.value))return n;r=t.next(),n++}return-1}includes(e){const t=this.iterator();let n=t.next();for(;!n.done;){if(n.value===e)return!0;n=t.next()}return!1}flatMap(e){return new l((()=>({this:this.startFn()})),(t=>{do{if(t.iterator){const e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}const{done:n,value:r}=this.nextFn(t.this);if(!n){const n=e(r);if(!d(n))return{done:!1,value:n};t.iterator=n[Symbol.iterator]()}}while(t.iterator);return f}))}flat(e){if(void 0===e&&(e=1),e<=0)return this;const t=e>1?this.flat(e-1):this;return new l((()=>({this:t.startFn()})),(e=>{do{if(e.iterator){const t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}const{done:n,value:r}=t.nextFn(e.this);if(!n){if(!d(r))return{done:!1,value:r};e.iterator=r[Symbol.iterator]()}}while(e.iterator);return f}))}head(){const e=this.iterator().next();if(!e.done)return e.value}tail(e=1){return new l((()=>{const t=this.startFn();for(let n=0;n({size:0,state:this.startFn()})),(t=>(t.size++,t.size>e?f:this.nextFn(t.state))))}distinct(e){const t=new Set;return this.filter((n=>{const r=e?e(n):n;return!t.has(r)&&(t.add(r),!0)}))}exclude(e,t){const n=new Set;for(const r of e){const e=t?t(r):r;n.add(e)}return this.filter((e=>{const r=t?t(e):e;return!n.has(r)}))}}function d(e){return!!e&&"function"==typeof e[Symbol.iterator]}const h=new l((()=>{}),(()=>f)),f=Object.freeze({done:!0,value:void 0});function p(...e){if(1===e.length){const t=e[0];if(t instanceof l)return t;if(d(t))return new l((()=>t[Symbol.iterator]()),(e=>e.next()));if("number"==typeof t.length)return new l((()=>({index:0})),(e=>e.index1?new l((()=>({collIndex:0,arrIndex:0})),(t=>{do{if(t.iterator){const e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}if(t.array){if(t.arrIndex({iterators:(null==n?void 0:n.includeRoot)?[[e][Symbol.iterator]()]:[t(e)[Symbol.iterator]()],pruned:!1})),(e=>{for(e.pruned&&(e.iterators.pop(),e.pruned=!1);e.iterators.length>0;){const n=e.iterators[e.iterators.length-1].next();if(!n.done)return e.iterators.push(t(n.value)[Symbol.iterator]()),n;e.iterators.pop()}return f}))}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}var g,y;function A(e){return new m(e,(e=>a(e)?e.content:[]),{includeRoot:!0})}function T(e){return{start:{character:e.startColumn-1,line:e.startLine-1},end:{character:e.endColumn,line:e.endLine-1}}}function v(e){if(!e)return;const{offset:t,end:n,range:r}=e;return{range:r,offset:t,end:n,length:n-t}}!function(e){e.sum=function(e){return e.reduce(((e,t)=>e+t),0)},e.product=function(e){return e.reduce(((e,t)=>e*t),0)},e.min=function(e){return e.reduce(((e,t)=>Math.min(e,t)))},e.max=function(e){return e.reduce(((e,t)=>Math.max(e,t)))}}(g||(g={})),function(e){e[e.Before=0]="Before",e[e.After=1]="After",e[e.OverlapFront=2]="OverlapFront",e[e.OverlapBack=3]="OverlapBack",e[e.Inside=4]="Inside"}(y||(y={}));const E=/^[\w\p{L}]$/u;function R(e,t){return c(e)&&t.includes(e.tokenType.name)}class k extends Error{constructor(e,t){super(e?`${t} at ${e.range.start.line}:${e.range.start.character}`:t)}}function x(e){throw new Error("Error! The input value was not handled.")}const I="AbstractRule",S="AbstractType",N="Condition",C="ValueLiteral",w="AbstractElement",L="BooleanLiteral",b="Conjunction",O="Disjunction",_="InferredType";function $(e){return ve.isInstance(e,_)}const P="Interface";function M(e){return ve.isInstance(e,P)}const D="Negation",U="ParameterReference",F="ParserRule";function G(e){return ve.isInstance(e,F)}const B="ReturnType",K="SimpleType",j="TerminalRule";function V(e){return ve.isInstance(e,j)}const W="Type";function H(e){return ve.isInstance(e,W)}const z="Action";function Y(e){return ve.isInstance(e,z)}const X="Alternatives";function q(e){return ve.isInstance(e,X)}const Q="Assignment";function Z(e){return ve.isInstance(e,Q)}const J="CharacterRange",ee="CrossReference";function te(e){return ve.isInstance(e,ee)}const ne="EndOfFile",re="Group";function ie(e){return ve.isInstance(e,re)}const se="Keyword";function oe(e){return ve.isInstance(e,se)}const ae="NegatedToken",ce="RegexToken",ue="RuleCall";function le(e){return ve.isInstance(e,ue)}const de="TerminalAlternatives",he="TerminalGroup",fe="TerminalRuleCall";function pe(e){return ve.isInstance(e,fe)}const me="UnorderedGroup";function ge(e){return ve.isInstance(e,me)}const ye="UntilToken",Ae="Wildcard";class Te extends o{getAllTypes(){return["AbstractElement","AbstractRule","AbstractType","Action","Alternatives","ArrayLiteral","ArrayType","Assignment","BooleanLiteral","CharacterRange","Condition","Conjunction","CrossReference","Disjunction","EndOfFile","Grammar","GrammarImport","Group","InferredType","Interface","Keyword","NamedArgument","NegatedToken","Negation","NumberLiteral","Parameter","ParameterReference","ParserRule","ReferenceType","RegexToken","ReturnType","RuleCall","SimpleType","StringLiteral","TerminalAlternatives","TerminalGroup","TerminalRule","TerminalRuleCall","Type","TypeAttribute","TypeDefinition","UnionType","UnorderedGroup","UntilToken","ValueLiteral","Wildcard"]}computeIsSubtype(e,t){switch(e){case z:case X:case Q:case J:case ee:case ne:case re:case se:case ae:case ce:case ue:case de:case he:case fe:case me:case ye:case Ae:return this.isSubtype(w,t);case"ArrayLiteral":case"NumberLiteral":case"StringLiteral":return this.isSubtype(C,t);case"ArrayType":case"ReferenceType":case K:case"UnionType":return this.isSubtype("TypeDefinition",t);case L:return this.isSubtype(N,t)||this.isSubtype(C,t);case b:case O:case D:case U:return this.isSubtype(N,t);case _:case P:case W:return this.isSubtype(S,t);case F:return this.isSubtype(I,t)||this.isSubtype(S,t);case j:return this.isSubtype(I,t);default:return!1}}getReferenceType(e){const t=`${e.container.$type}:${e.property}`;switch(t){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return S;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return I;case"Grammar:usedGrammars":return"Grammar";case"NamedArgument:parameter":case"ParameterReference:parameter":return"Parameter";case"TerminalRuleCall:rule":return j;default:throw new Error(`${t} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case"AbstractElement":return{name:"AbstractElement",properties:[{name:"cardinality"},{name:"lookahead"}]};case"ArrayLiteral":return{name:"ArrayLiteral",properties:[{name:"elements",defaultValue:[]}]};case"ArrayType":return{name:"ArrayType",properties:[{name:"elementType"}]};case"BooleanLiteral":return{name:"BooleanLiteral",properties:[{name:"true",defaultValue:!1}]};case"Conjunction":return{name:"Conjunction",properties:[{name:"left"},{name:"right"}]};case"Disjunction":return{name:"Disjunction",properties:[{name:"left"},{name:"right"}]};case"Grammar":return{name:"Grammar",properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case"GrammarImport":return{name:"GrammarImport",properties:[{name:"path"}]};case"InferredType":return{name:"InferredType",properties:[{name:"name"}]};case"Interface":return{name:"Interface",properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case"NamedArgument":return{name:"NamedArgument",properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case"Negation":return{name:"Negation",properties:[{name:"value"}]};case"NumberLiteral":return{name:"NumberLiteral",properties:[{name:"value"}]};case"Parameter":return{name:"Parameter",properties:[{name:"name"}]};case"ParameterReference":return{name:"ParameterReference",properties:[{name:"parameter"}]};case"ParserRule":return{name:"ParserRule",properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case"ReferenceType":return{name:"ReferenceType",properties:[{name:"referenceType"}]};case"ReturnType":return{name:"ReturnType",properties:[{name:"name"}]};case"SimpleType":return{name:"SimpleType",properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case"StringLiteral":return{name:"StringLiteral",properties:[{name:"value"}]};case"TerminalRule":return{name:"TerminalRule",properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case"Type":return{name:"Type",properties:[{name:"name"},{name:"type"}]};case"TypeAttribute":return{name:"TypeAttribute",properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case"UnionType":return{name:"UnionType",properties:[{name:"types",defaultValue:[]}]};case"Action":return{name:"Action",properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case"Alternatives":return{name:"Alternatives",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"Assignment":return{name:"Assignment",properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case"CharacterRange":return{name:"CharacterRange",properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case"CrossReference":return{name:"CrossReference",properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case"EndOfFile":return{name:"EndOfFile",properties:[{name:"cardinality"},{name:"lookahead"}]};case"Group":return{name:"Group",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case"Keyword":return{name:"Keyword",properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case"NegatedToken":return{name:"NegatedToken",properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case"RegexToken":return{name:"RegexToken",properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case"RuleCall":return{name:"RuleCall",properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case"TerminalAlternatives":return{name:"TerminalAlternatives",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"TerminalGroup":return{name:"TerminalGroup",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"TerminalRuleCall":return{name:"TerminalRuleCall",properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case"UnorderedGroup":return{name:"UnorderedGroup",properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case"UntilToken":return{name:"UntilToken",properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case"Wildcard":return{name:"Wildcard",properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:e,properties:[]}}}}const ve=new Te;function Ee(e,t){let n=e;for(;n;){if(t(n))return n;n=n.$container}}function Re(e){const t=function(e){for(;e.$container;)e=e.$container;return e}(e),n=t.$document;if(!n)throw new Error("AST node has no document.");return n}function ke(e,t){if(!e)throw new Error("Node must be an AstNode.");const n=null==t?void 0:t.range;return new l((()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0})),(t=>{for(;t.keyIndexke(e,t)))}function Ie(e,t){if(!e)throw new Error("Root node must be an AstNode.");return(null==t?void 0:t.range)&&!Se(e,t.range)?new m(e,(()=>[])):new m(e,(e=>ke(e,t)),{includeRoot:!0})}function Se(e,t){var n;if(!t)return!0;const r=null===(n=e.$cstNode)||void 0===n?void 0:n.range;return!!r&&function(e,t){const n=function(e,t){if(e.end.linet.end.line||e.start.line===t.end.line&&e.start.character>t.end.character)return y.After;const n=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,r=e.end.liney.After}(r,t)}function Ne(e){return new l((()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0})),(t=>{for(;t.keyIndex=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}class Ke{visitChildren(e){for(const t in e){const n=e[t];e.hasOwnProperty(t)&&(void 0!==n.type?this.visit(n):Array.isArray(n)&&n.forEach((e=>{this.visit(e)}),this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e)}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}const je=/\r?\n/gm,Ve=new Be,We=new class extends Ke{constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){const t=String.fromCharCode(e.value);if(this.multiline||"\n"!==t||(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const e=Ye(t);this.endRegexpStack.push(e),this.isStarting&&(this.startRegexp+=e)}}visitSet(e){if(!this.multiline){const t=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(t);this.multiline=Boolean("\n".match(n))}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const t=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(t),this.isStarting&&(this.startRegexp+=t)}}visitChildren(e){"Group"===e.type&&e.quantifier||super.visitChildren(e)}};function He(e){try{return"string"==typeof e&&(e=new RegExp(e)),e=e.toString(),We.reset(e),We.visit(Ve.pattern(e)),We.multiline}catch(e){return!1}}function ze(e){return("string"==typeof e?new RegExp(e):e).test(" ")}function Ye(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Xe(e,t){const n=new Set,r=function(e){return e.rules.find((e=>G(e)&&e.entry))}(e);if(!r)return new Set(e.rules);const i=[r].concat(function(e){return e.rules.filter((e=>V(e)&&e.hidden))}(e));for(const e of i)qe(e,n,t);const s=new Set;for(const t of e.rules)(n.has(t.name)||V(t)&&t.hidden)&&s.add(t);return s}function qe(e,t,n){t.add(e.name),xe(e).forEach((e=>{if(le(e)||n&&pe(e)){const r=e.rule.ref;r&&!t.has(r.name)&&qe(r,t,n)}}))}function Qe(e,t,n){if(!e||!t)return;const r=Ze(e,t,e.astNode,!0);return 0!==r.length?r[n=void 0!==n?Math.max(0,Math.min(n,r.length-1)):0]:void 0}function Ze(e,t,n,r){if(!r){const n=Ee(e.grammarSource,Z);if(n&&n.feature===t)return[e]}return a(e)&&e.astNode===n?e.content.flatMap((e=>Ze(e,t,n,!1))):[]}function Je(e){let t=e;return $(t)&&(Y(t.$container)?t=t.$container.$container:G(t.$container)?t=t.$container:x(t.$container)),et(e,t,new Map)}function et(e,t,n){var r,i;function s(t,r){let i;return Ee(t,Z)||(i=et(r,r,n)),n.set(e,i),i}if(n.has(e))return n.get(e);n.set(e,void 0);for(const o of xe(t)){if(Z(o)&&"name"===o.feature.toLowerCase())return n.set(e,o),o;if(le(o)&&G(o.rule.ref))return s(o,o.rule.ref);if(i=o,ve.isInstance(i,K)&&(null===(r=o.typeRef)||void 0===r?void 0:r.ref))return s(o,o.typeRef.ref)}}function tt(e){return nt(e,new Set)}function nt(e,t){if(t.has(e))return!0;t.add(e);for(const n of xe(e))if(le(n)){if(!n.rule.ref)return!1;if(G(n.rule.ref)&&!nt(n.rule.ref,t))return!1}else{if(Z(n))return!1;if(Y(n))return!1}return Boolean(e.definition)}function rt(e){if(e.inferredType)return e.inferredType.name;if(e.dataType)return e.dataType;if(e.returnType){const t=e.returnType.ref;if(t){if(G(t))return t.name;if(M(t)||H(t))return t.name}}}function it(e){var t,n;if(G(e))return tt(e)?e.name:null!==(t=rt(e))&&void 0!==t?t:e.name;if(M(e)||H(e)||(n=e,ve.isInstance(n,B)))return e.name;if(Y(e)){const t=function(e){var t;return e.inferredType?e.inferredType.name:(null===(t=e.type)||void 0===t?void 0:t.ref)?it(e.type.ref):void 0}(e);if(t)return t}else if($(e))return e.name;throw new Error("Cannot get name of Unknown Type")}function st(e){const t={s:!1,i:!1,u:!1},n=at(e.definition,t),r=Object.entries(t).filter((([,e])=>e)).map((([e])=>e)).join("");return new RegExp(n,r)}const ot=/[\s\S]/.source;function at(e,t){if(a=e,ve.isInstance(a,de))return ut((o=e).elements.map((e=>at(e))).join("|"),{cardinality:o.cardinality,lookahead:o.lookahead});if(function(e){return ve.isInstance(e,he)}(e))return ut((s=e).elements.map((e=>at(e))).join(""),{cardinality:s.cardinality,lookahead:s.lookahead});if(function(e){return ve.isInstance(e,J)}(e))return(n=e).right?ut(`[${ct(n.left)}-${ct(n.right)}]`,{cardinality:n.cardinality,lookahead:n.lookahead,wrap:!1}):ut(ct(n.left),{cardinality:n.cardinality,lookahead:n.lookahead,wrap:!1});var n,r,i,s,o,a;if(pe(e)){const t=e.rule.ref;if(!t)throw new Error("Missing rule reference.");return ut(at(t.definition),{cardinality:e.cardinality,lookahead:e.lookahead})}if(function(e){return ve.isInstance(e,ae)}(e))return ut(`(?!${at((r=e).terminal)})${ot}*?`,{cardinality:r.cardinality,lookahead:r.lookahead});if(function(e){return ve.isInstance(e,ye)}(e))return ut(`${ot}*?${at((i=e).terminal)}`,{cardinality:i.cardinality,lookahead:i.lookahead});if(function(e){return ve.isInstance(e,ce)}(e)){const n=e.regex.lastIndexOf("/"),r=e.regex.substring(1,n),i=e.regex.substring(n+1);return t&&(t.i=i.includes("i"),t.s=i.includes("s"),t.u=i.includes("u")),ut(r,{cardinality:e.cardinality,lookahead:e.lookahead,wrap:!1})}if(function(e){return ve.isInstance(e,Ae)}(e))return ut(ot,{cardinality:e.cardinality,lookahead:e.lookahead});throw new Error(`Invalid terminal element: ${null==e?void 0:e.$type}`)}function ct(e){return Ye(e.value)}function ut(e,t){var n;return(!1!==t.wrap||t.lookahead)&&(e=`(${null!==(n=t.lookahead)&&void 0!==n?n:""}${e})`),t.cardinality?`${e}${t.cardinality}`:e}var lt=n(8058),dt=n(2866),ht=n(6401),ft=n(4722),pt=n(9622),mt=n(53);function gt(e){function t(){}t.prototype=e;const n=new t;function r(){return typeof n.bar}return r(),r(),e}const yt=function(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(i);++r{t.accept(e)}))}}class Bt extends Gt{constructor(e){super([]),this.idx=1,Ct(this,_t(e,(e=>void 0!==e)))}set definition(e){}get definition(){return void 0!==this.referencedRule?this.referencedRule.definition:[]}accept(e){e.visit(this)}}class Kt extends Gt{constructor(e){super(e.definition),this.orgText="",Ct(this,_t(e,(e=>void 0!==e)))}}class jt extends Gt{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Ct(this,_t(e,(e=>void 0!==e)))}}class Vt extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,_t(e,(e=>void 0!==e)))}}class Wt extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,_t(e,(e=>void 0!==e)))}}class Ht extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,_t(e,(e=>void 0!==e)))}}class zt extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,_t(e,(e=>void 0!==e)))}}class Yt extends Gt{constructor(e){super(e.definition),this.idx=1,Ct(this,_t(e,(e=>void 0!==e)))}}class Xt extends Gt{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Ct(this,_t(e,(e=>void 0!==e)))}}class qt{constructor(e){this.idx=1,Ct(this,_t(e,(e=>void 0!==e)))}accept(e){e.visit(this)}}function Qt(e){function t(e){return(0,ft.A)(e,Qt)}if(e instanceof Bt){const t={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return(0,vt.A)(e.label)&&(t.label=e.label),t}if(e instanceof jt)return{type:"Alternative",definition:t(e.definition)};if(e instanceof Vt)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof Wt)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof Ht)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:Qt(new qt({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Yt)return{type:"RepetitionWithSeparator",idx:e.idx,separator:Qt(new qt({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof zt)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};if(e instanceof Xt)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};if(e instanceof qt){const t={type:"Terminal",name:e.terminalType.name,label:(n=e.terminalType,r=n,(0,vt.A)(r.LABEL)&&""!==r.LABEL?n.LABEL:n.name),idx:e.idx};(0,vt.A)(e.label)&&(t.terminalLabel=e.label);const i=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(t.pattern=Ft(i)?i.source:i),t}var n,r;if(e instanceof Kt)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};throw Error("non exhaustive match")}class Zt{visit(e){const t=e;switch(t.constructor){case Bt:return this.visitNonTerminal(t);case jt:return this.visitAlternative(t);case Vt:return this.visitOption(t);case Wt:return this.visitRepetitionMandatory(t);case Ht:return this.visitRepetitionMandatoryWithSeparator(t);case Yt:return this.visitRepetitionWithSeparator(t);case zt:return this.visitRepetition(t);case Xt:return this.visitAlternation(t);case qt:return this.visitTerminal(t);case Kt:return this.visitRule(t);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}var Jt=n(3736),en=n(4288);const tn=function(e,t){var n;return(0,en.A)(e,(function(e,r,i){return!(n=t(e,r,i))})),!!n};var nn=n(2049),rn=n(6832);const sn=function(e,t,n){var r=(0,nn.A)(e)?Jt.A:tn;return n&&(0,rn.A)(e,t,n)&&(t=void 0),r(e,(0,Lt.A)(t,3))};var on=n(5205),an=Math.max;const cn=function(e,t,n,r){e=(0,xt.A)(e)?e:(0,dt.A)(e),n=n&&!r?(0,At.A)(n):0;var i=e.length;return n<0&&(n=an(i+n,0)),(0,vt.A)(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&(0,on.A)(e,t,n)>-1},un=function(e,t){for(var n=-1,r=null==e?0:e.length;++nhn(e,t))):!(e instanceof Bt&&cn(t,e))&&e instanceof Gt&&(e instanceof Bt&&t.push(e),dn(e.definition,(e=>hn(e,t)))))}function fn(e){if(e instanceof Bt)return"SUBRULE";if(e instanceof Vt)return"OPTION";if(e instanceof Xt)return"OR";if(e instanceof Wt)return"AT_LEAST_ONE";if(e instanceof Ht)return"AT_LEAST_ONE_SEP";if(e instanceof Yt)return"MANY_SEP";if(e instanceof zt)return"MANY";if(e instanceof qt)return"CONSUME";throw Error("non exhaustive match")}class pn{walk(e,t=[]){(0,lt.A)(e.definition,((n,r)=>{const i=Tt(e.definition,r+1);if(n instanceof Bt)this.walkProdRef(n,i,t);else if(n instanceof qt)this.walkTerminal(n,i,t);else if(n instanceof jt)this.walkFlat(n,i,t);else if(n instanceof Vt)this.walkOption(n,i,t);else if(n instanceof Wt)this.walkAtLeastOne(n,i,t);else if(n instanceof Ht)this.walkAtLeastOneSep(n,i,t);else if(n instanceof Yt)this.walkManySep(n,i,t);else if(n instanceof zt)this.walkMany(n,i,t);else{if(!(n instanceof Xt))throw Error("non exhaustive match");this.walkOr(n,i,t)}}))}walkTerminal(e,t,n){}walkProdRef(e,t,n){}walkFlat(e,t,n){const r=t.concat(n);this.walk(e,r)}walkOption(e,t,n){const r=t.concat(n);this.walk(e,r)}walkAtLeastOne(e,t,n){const r=[new Vt({definition:e.definition})].concat(t,n);this.walk(e,r)}walkAtLeastOneSep(e,t,n){const r=mn(e,t,n);this.walk(e,r)}walkMany(e,t,n){const r=[new Vt({definition:e.definition})].concat(t,n);this.walk(e,r)}walkManySep(e,t,n){const r=mn(e,t,n);this.walk(e,r)}walkOr(e,t,n){const r=t.concat(n);(0,lt.A)(e.definition,(e=>{const t=new jt({definition:[e]});this.walk(t,r)}))}}function mn(e,t,n){return[new Vt({definition:[new qt({terminalType:e.separator})].concat(e.definition)})].concat(t,n)}var gn=n(7371);const yn=function(e){return e&&e.length?(0,gn.A)(e):[]};var An=n(4098);function Tn(e){if(e instanceof Bt)return Tn(e.referencedRule);if(e instanceof qt)return[e.terminalType];if(function(e){return e instanceof jt||e instanceof Vt||e instanceof zt||e instanceof Wt||e instanceof Ht||e instanceof Yt||e instanceof qt||e instanceof Kt}(e))return function(e){let t=[];const n=e.definition;let r,i=0,s=n.length>i,o=!0;for(;s&&o;)r=n[i],o=hn(r),t=t.concat(Tn(r)),i+=1,s=n.length>i;return yn(t)}(e);if(function(e){return e instanceof Xt}(e))return function(e){const t=(0,ft.A)(e.definition,(e=>Tn(e)));return yn((0,An.A)(t))}(e);throw Error("non exhaustive match")}const vn="_~IN~_";class En extends pn{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,t,n){}walkProdRef(e,t,n){const r=(i=e.referencedRule,s=e.idx,i.name+s+vn+this.topProd.name);var i,s;const o=t.concat(n),a=Tn(new jt({definition:o}));this.follows[r]=a}}var Rn=n(9592),kn=n(3068),xn=n(2634),In=n(1790);const Sn=function(e,t){return((0,nn.A)(e)?xn.A:In.A)(e,function(e){if("function"!=typeof e)throw new TypeError("Expected a function");return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}((0,Lt.A)(t,3)))};var Nn=n(9610),Cn=Math.max;const wn=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:(0,At.A)(n);return i<0&&(i=Cn(r+i,0)),(0,on.A)(e,t,i)};var Ln=n(3130),bn=n(4092),On=n(8300),_n=n(5530),$n=n(7809),Pn=n(4099);var Mn=n(7671),Dn=n(4326),Un=n(3533);const Fn=(0,Dn.A)((function(e,t){return(0,Un.A)(e)?function(e,t,n,r){var i=-1,s=_n.A,o=!0,a=e.length,c=[],u=t.length;if(!a)return c;n&&(t=(0,wt.A)(t,(0,Mt.A)(n))),r?(s=$n.A,o=!1):t.length>=200&&(s=Pn.A,o=!1,t=new On.A(t));e:for(;++i\n\tComplement Sets cannot be automatically optimized.\n\tThis will disable the lexer's first char optimizations.\n\tSee: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";t&&(n="\n\tThis will disable the lexer's first char optimizations.\n\tSee: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details."),jn(`${Xn}\n\tFailed parsing: < ${e.toString()} >\n\tUsing the @chevrotain/regexp-to-ast library\n\tPlease open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function Qn(e,t,n){switch(e.type){case"Disjunction":for(let r=0;r{if("number"==typeof e)Zn(e,t,n);else{const r=e;if(!0===n)for(let e=r.from;e<=r.to;e++)Zn(e,t,n);else{for(let e=r.from;e<=r.to&&e=yr){const e=r.from>=yr?r.from:yr,n=r.to,i=Tr(e),s=Tr(n);for(let e=i;e<=s;e++)t[e]=e}}}}));break;case"Group":Qn(s.value,t,n);break;default:throw Error("Non Exhaustive Match")}const o=void 0!==s.quantifier&&0===s.quantifier.atLeast;if("Group"===s.type&&!1===er(s)||"Group"!==s.type&&!1===o)break}break;default:throw Error("non exhaustive match!")}return(0,dt.A)(t)}function Zn(e,t,n){const r=Tr(e);t[r]=r,!0===n&&function(e,t){const n=String.fromCharCode(e),r=n.toUpperCase();if(r!==n){const e=Tr(r.charCodeAt(0));t[e]=e}else{const e=n.toLowerCase();if(e!==n){const n=Tr(e.charCodeAt(0));t[n]=n}}}(e,t)}function Jn(e,t){return(0,Kn.A)(e.value,(e=>{if("number"==typeof e)return cn(t,e);{const n=e;return void 0!==(0,Kn.A)(t,(e=>n.from<=e&&e<=n.to))}}))}function er(e){const t=e.quantifier;return!(!t||0!==t.atLeast)||!!e.value&&((0,nn.A)(e.value)?dn(e.value,er):er(e.value))}class tr extends Ke{constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(!0!==this.found){switch(e.type){case"Lookahead":return void this.visitLookahead(e);case"NegativeLookahead":return void this.visitNegativeLookahead(e)}super.visitChildren(e)}}visitCharacter(e){cn(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?void 0===Jn(e,this.targetCharCodes)&&(this.found=!0):void 0!==Jn(e,this.targetCharCodes)&&(this.found=!0)}}function nr(e,t){if(t instanceof RegExp){const n=zn(t),r=new tr(e);return r.visit(n),r.found}return void 0!==(0,Kn.A)(t,(t=>cn(e,t.charCodeAt(0))))}const rr="PATTERN",ir="defaultMode",sr="modes";let or="boolean"==typeof new RegExp("(?:)").sticky;const ar=/[^\\][$]/,cr=/[^\\[][\^]|^\^/;function ur(e){const t=e.ignoreCase?"i":"";return new RegExp(`^(?:${e.source})`,t)}function lr(e){const t=e.ignoreCase?"iy":"y";return new RegExp(`${e.source}`,t)}function dr(e){const t=e.PATTERN;if(Ft(t))return!1;if((0,Nn.A)(t))return!0;if((0,pt.A)(t,"exec"))return!0;if((0,vt.A)(t))return!1;throw Error("non exhaustive match")}function hr(e){return!(!(0,vt.A)(e)||1!==e.length)&&e.charCodeAt(0)}const fr={test:function(e){const t=e.length;for(let n=this.lastIndex;n(0,vt.A)(e)?e.charCodeAt(0):e))}function gr(e,t,n){void 0===e[t]?e[t]=[n]:e[t].push(n)}const yr=256;let Ar=[];function Tr(e){return ee.CATEGORIES))));const e=Fn(n,t);t=t.concat(e),(0,ht.A)(e)?r=!1:n=e}return t}(e);!function(e){(0,lt.A)(e,(e=>{var t;Lr(e)||(Nr[Sr]=e,e.tokenTypeIdx=Sr++),br(e)&&!(0,nn.A)(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),br(e)||(e.CATEGORIES=[]),t=e,(0,pt.A)(t,"categoryMatches")||(e.categoryMatches=[]),function(e){return(0,pt.A)(e,"categoryMatchesMap")}(e)||(e.categoryMatchesMap={})}))}(t),function(e){(0,lt.A)(e,(e=>{wr([],e)}))}(t),function(e){(0,lt.A)(e,(e=>{e.categoryMatches=[],(0,lt.A)(e.categoryMatchesMap,((t,n)=>{e.categoryMatches.push(Nr[n].tokenTypeIdx)}))}))}(t),(0,lt.A)(t,(e=>{e.isParent=e.categoryMatches.length>0}))}function wr(e,t){(0,lt.A)(e,(e=>{t.categoryMatchesMap[e.tokenTypeIdx]=!0})),(0,lt.A)(t.CATEGORIES,(n=>{const r=e.concat(t);cn(r,n)||wr(r,n)}))}function Lr(e){return(0,pt.A)(e,"tokenTypeIdx")}function br(e){return(0,pt.A)(e,"CATEGORIES")}function Or(e){return(0,pt.A)(e,"tokenTypeIdx")}var _r;!function(e){e[e.MISSING_PATTERN=0]="MISSING_PATTERN",e[e.INVALID_PATTERN=1]="INVALID_PATTERN",e[e.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",e[e.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",e[e.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",e[e.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",e[e.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",e[e.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",e[e.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",e[e.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",e[e.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",e[e.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",e[e.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",e[e.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",e[e.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",e[e.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",e[e.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",e[e.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"}(_r||(_r={}));const $r={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:["\n","\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:{buildUnableToPopLexerModeMessage:e=>`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`,buildUnexpectedCharactersMessage:(e,t,n,r,i)=>`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${n} characters.`},traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze($r);class Pr{constructor(e,t=$r){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(e,t)=>{if(!0===this.traceInitPerf){this.traceInitIndent++;const n=new Array(this.traceInitIndent+1).join("\t");this.traceInitIndent`);const{time:r,value:i}=kr(t),s=r>10?console.warn:console.log;return this.traceInitIndent time: ${r}ms`),this.traceInitIndent--,i}return t()},"boolean"==typeof t)throw Error("The second argument to the Lexer constructor is now an ILexerConfig Object.\na boolean 2nd argument is no longer supported");this.config=Ct({},$r,t);const n=this.config.traceInitPerf;!0===n?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):"number"==typeof n&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",(()=>{let n,r=!0;this.TRACE_INIT("Lexer Config handling",(()=>{if(this.config.lineTerminatorsPattern===$r.lineTerminatorsPattern)this.config.lineTerminatorsPattern=fr;else if(this.config.lineTerminatorCharacters===$r.lineTerminatorCharacters)throw Error("Error: Missing property on the Lexer config.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS");if(t.safeMode&&t.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),(0,nn.A)(e)?n={modes:{defaultMode:(0,mt.A)(e)},defaultMode:ir}:(r=!1,n=(0,mt.A)(e))})),!1===this.config.skipValidations&&(this.TRACE_INIT("performRuntimeChecks",(()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(function(e){const t=[];return(0,pt.A)(e,ir)||t.push({message:"A MultiMode Lexer cannot be initialized without a <"+ir+"> property in its definition\n",type:_r.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),(0,pt.A)(e,sr)||t.push({message:"A MultiMode Lexer cannot be initialized without a property in its definition\n",type:_r.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),(0,pt.A)(e,sr)&&(0,pt.A)(e,ir)&&!(0,pt.A)(e.modes,e.defaultMode)&&t.push({message:`A MultiMode Lexer cannot be initialized with a ${ir}: <${e.defaultMode}>which does not exist\n`,type:_r.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),(0,pt.A)(e,sr)&&(0,lt.A)(e.modes,((e,n)=>{(0,lt.A)(e,((r,i)=>{if((0,Rn.A)(r))t.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${n}> at index: <${i}>\n`,type:_r.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if((0,pt.A)(r,"LONGER_ALT")){const i=(0,nn.A)(r.LONGER_ALT)?r.LONGER_ALT:[r.LONGER_ALT];(0,lt.A)(i,(i=>{(0,Rn.A)(i)||cn(e,i)||t.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${i.name}> on token <${r.name}> outside of mode <${n}>\n`,type:_r.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})}))}}))})),t}(n,this.trackStartLines,this.config.lineTerminatorCharacters))})),this.TRACE_INIT("performWarningRuntimeChecks",(()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(function(e,t,n){const r=[];let i=!1;const s=Gn((0,An.A)((0,dt.A)(e.modes))),o=Sn(s,(e=>e[rr]===Pr.NA)),a=mr(n);return t&&(0,lt.A)(o,(e=>{const t=pr(e,a);if(!1!==t){const n=function(e,t){if(t.issue===_r.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.\n\tThe problem is in the <${e.name}> Token Type\n\t Root cause: ${t.errMsg}.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===_r.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option.\n\tThe problem is in the <${e.name}> Token Type\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}(e,t),i={message:n,type:t.issue,tokenType:e};r.push(i)}else(0,pt.A)(e,"LINE_BREAKS")?!0===e.LINE_BREAKS&&(i=!0):nr(a,e.PATTERN)&&(i=!0)})),t&&!i&&r.push({message:"Warning: No LINE_BREAKS Found.\n\tThis Lexer has been defined to track line and column information,\n\tBut none of the Token Types can be identified as matching a line terminator.\n\tSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS \n\tfor details.",type:_r.NO_LINE_BREAKS_FLAGS}),r}(n,this.trackStartLines,this.config.lineTerminatorCharacters))}))),n.modes=n.modes?n.modes:{},(0,lt.A)(n.modes,((e,t)=>{n.modes[t]=Sn(e,(e=>(0,Rn.A)(e)))}));const i=(0,St.A)(n.modes);if((0,lt.A)(n.modes,((e,n)=>{this.TRACE_INIT(`Mode: <${n}> processing`,(()=>{if(this.modes.push(n),!1===this.config.skipValidations&&this.TRACE_INIT("validatePatterns",(()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(function(e,t){let n=[];const r=function(e){const t=(0,bn.A)(e,(e=>!(0,pt.A)(e,rr)));return{errors:(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- missing static 'PATTERN' property",type:_r.MISSING_PATTERN,tokenTypes:[e]}))),valid:Fn(e,t)}}(e);n=n.concat(r.errors);const i=function(e){const t=(0,bn.A)(e,(e=>{const t=e[rr];return!(Ft(t)||(0,Nn.A)(t)||(0,pt.A)(t,"exec")||(0,vt.A)(t))}));return{errors:(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:_r.INVALID_PATTERN,tokenTypes:[e]}))),valid:Fn(e,t)}}(r.valid),s=i.valid;return n=n.concat(i.errors),n=n.concat(function(e){let t=[];const n=(0,bn.A)(e,(e=>Ft(e[rr])));return t=t.concat(function(e){class t extends Ke{constructor(){super(...arguments),this.found=!1}visitEndAnchor(e){this.found=!0}}const n=(0,bn.A)(e,(e=>{const n=e.PATTERN;try{const e=zn(n),r=new t;return r.visit(e),r.found}catch(e){return ar.test(n.source)}}));return(0,ft.A)(n,(e=>({message:"Unexpected RegExp Anchor Error:\n\tToken Type: ->"+e.name+"<- static 'PATTERN' cannot contain end of input anchor '$'\n\tSee chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS\tfor details.",type:_r.EOI_ANCHOR_FOUND,tokenTypes:[e]})))}(n)),t=t.concat(function(e){class t extends Ke{constructor(){super(...arguments),this.found=!1}visitStartAnchor(e){this.found=!0}}const n=(0,bn.A)(e,(e=>{const n=e.PATTERN;try{const e=zn(n),r=new t;return r.visit(e),r.found}catch(e){return cr.test(n.source)}}));return(0,ft.A)(n,(e=>({message:"Unexpected RegExp Anchor Error:\n\tToken Type: ->"+e.name+"<- static 'PATTERN' cannot contain start of input anchor '^'\n\tSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS\tfor details.",type:_r.SOI_ANCHOR_FOUND,tokenTypes:[e]})))}(n)),t=t.concat(function(e){const t=(0,bn.A)(e,(e=>{const t=e[rr];return t instanceof RegExp&&(t.multiline||t.global)}));return(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:_r.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[e]})))}(n)),t=t.concat(function(e){const t=[];let n=(0,ft.A)(e,(n=>(0,Ln.A)(e,((e,r)=>(n.PATTERN.source!==r.PATTERN.source||cn(t,r)||r.PATTERN===Pr.NA||(t.push(r),e.push(r)),e)),[])));n=Gn(n);const r=(0,bn.A)(n,(e=>e.length>1));return(0,ft.A)(r,(e=>{const t=(0,ft.A)(e,(e=>e.name));return{message:`The same RegExp pattern ->${Bn(e).PATTERN}<-has been used in all of the following Token Types: ${t.join(", ")} <-`,type:_r.DUPLICATE_PATTERNS_FOUND,tokenTypes:e}}))}(n)),t=t.concat(function(e){const t=(0,bn.A)(e,(e=>e.PATTERN.test("")));return(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' must not match an empty string",type:_r.EMPTY_MATCH_PATTERN,tokenTypes:[e]})))}(n)),t}(s)),n=n.concat(function(e){const t=(0,bn.A)(e,(e=>{if(!(0,pt.A)(e,"GROUP"))return!1;const t=e.GROUP;return t!==Pr.SKIPPED&&t!==Pr.NA&&!(0,vt.A)(t)}));return(0,ft.A)(t,(e=>({message:"Token Type: ->"+e.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:_r.INVALID_GROUP_TYPE_FOUND,tokenTypes:[e]})))}(s)),n=n.concat(function(e,t){const n=(0,bn.A)(e,(e=>void 0!==e.PUSH_MODE&&!cn(t,e.PUSH_MODE)));return(0,ft.A)(n,(e=>({message:`Token Type: ->${e.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${e.PUSH_MODE}<-which does not exist`,type:_r.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[e]})))}(s,t)),n=n.concat(function(e){const t=[],n=(0,Ln.A)(e,((e,t,n)=>{const r=t.PATTERN;return r===Pr.NA||((0,vt.A)(r)?e.push({str:r,idx:n,tokenType:t}):Ft(r)&&(i=r,void 0===(0,Kn.A)([".","\\","[","]","|","^","$","(",")","?","*","+","{"],(e=>-1!==i.source.indexOf(e))))&&e.push({str:r.source,idx:n,tokenType:t})),e;var i}),[]);return(0,lt.A)(e,((e,r)=>{(0,lt.A)(n,(({str:n,idx:i,tokenType:s})=>{if(r${s.name}<- can never be matched.\nBecause it appears AFTER the Token Type ->${e.name}<-in the lexer's definition.\nSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:n,type:_r.UNREACHABLE_PATTERN,tokenTypes:[e,s]})}}))})),t}(s)),n}(e,i))})),(0,ht.A)(this.lexerDefinitionErrors)){let r;Cr(e),this.TRACE_INIT("analyzeTokenTypes",(()=>{r=function(e,t){const n=(t=(0,kn.A)(t,{useSticky:or,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r","\n"],tracer:(e,t)=>t()})).tracer;let r;n("initCharCodeToOptimizedIndexMap",(()=>{!function(){if((0,ht.A)(Ar)){Ar=new Array(65536);for(let e=0;e<65536;e++)Ar[e]=e>255?255+~~(e/255):e}}()})),n("Reject Lexer.NA",(()=>{r=Sn(e,(e=>e[rr]===Pr.NA))}));let i,s,o,a,c,u,l,d,h,f,p,m=!1;n("Transform Patterns",(()=>{m=!1,i=(0,ft.A)(r,(e=>{const n=e[rr];if(Ft(n)){const e=n.source;return 1!==e.length||"^"===e||"$"===e||"."===e||n.ignoreCase?2!==e.length||"\\"!==e[0]||cn(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],e[1])?t.useSticky?lr(n):ur(n):e[1]:e}if((0,Nn.A)(n))return m=!0,{exec:n};if("object"==typeof n)return m=!0,n;if("string"==typeof n){if(1===n.length)return n;{const e=n.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),r=new RegExp(e);return t.useSticky?lr(r):ur(r)}}throw Error("non exhaustive match")}))})),n("misc mapping",(()=>{s=(0,ft.A)(r,(e=>e.tokenTypeIdx)),o=(0,ft.A)(r,(e=>{const t=e.GROUP;if(t!==Pr.SKIPPED){if((0,vt.A)(t))return t;if((0,Rn.A)(t))return!1;throw Error("non exhaustive match")}})),a=(0,ft.A)(r,(e=>{const t=e.LONGER_ALT;if(t)return(0,nn.A)(t)?(0,ft.A)(t,(e=>wn(r,e))):[wn(r,t)]})),c=(0,ft.A)(r,(e=>e.PUSH_MODE)),u=(0,ft.A)(r,(e=>(0,pt.A)(e,"POP_MODE")))})),n("Line Terminator Handling",(()=>{const e=mr(t.lineTerminatorCharacters);l=(0,ft.A)(r,(e=>!1)),"onlyOffset"!==t.positionTracking&&(l=(0,ft.A)(r,(t=>(0,pt.A)(t,"LINE_BREAKS")?!!t.LINE_BREAKS:!1===pr(t,e)&&nr(e,t.PATTERN))))})),n("Misc Mapping #2",(()=>{d=(0,ft.A)(r,dr),h=(0,ft.A)(i,hr),f=(0,Ln.A)(r,((e,t)=>{const n=t.GROUP;return(0,vt.A)(n)&&n!==Pr.SKIPPED&&(e[n]=[]),e}),{}),p=(0,ft.A)(i,((e,t)=>({pattern:i[t],longerAlt:a[t],canLineTerminator:l[t],isCustom:d[t],short:h[t],group:o[t],push:c[t],pop:u[t],tokenTypeIdx:s[t],tokenType:r[t]})))}));let g=!0,y=[];return t.safeMode||n("First Char Optimization",(()=>{y=(0,Ln.A)(r,((e,n,r)=>{if("string"==typeof n.PATTERN){const t=Tr(n.PATTERN.charCodeAt(0));gr(e,t,p[r])}else if((0,nn.A)(n.START_CHARS_HINT)){let t;(0,lt.A)(n.START_CHARS_HINT,(n=>{const i=Tr("string"==typeof n?n.charCodeAt(0):n);t!==i&&(t=i,gr(e,i,p[r]))}))}else if(Ft(n.PATTERN))if(n.PATTERN.unicode)g=!1,t.ensureOptimizations&&jn(`${Xn}\tUnable to analyze < ${n.PATTERN.toString()} > pattern.\n\tThe regexp unicode flag is not currently supported by the regexp-to-ast library.\n\tThis will disable the lexer's first char optimizations.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{const i=qn(n.PATTERN,t.ensureOptimizations);(0,ht.A)(i)&&(g=!1),(0,lt.A)(i,(t=>{gr(e,t,p[r])}))}else t.ensureOptimizations&&jn(`${Xn}\tTokenType: <${n.name}> is using a custom token pattern without providing parameter.\n\tThis will disable the lexer's first char optimizations.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),g=!1;return e}),[])})),{emptyGroups:f,patternIdxToConfig:p,charCodeToPatternIdxToConfig:y,hasCustom:m,canBeOptimized:g}}(e,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:t.positionTracking,ensureOptimizations:t.ensureOptimizations,safeMode:t.safeMode,tracer:this.TRACE_INIT})})),this.patternIdxToConfig[n]=r.patternIdxToConfig,this.charCodeToPatternIdxToConfig[n]=r.charCodeToPatternIdxToConfig,this.emptyGroups=Ct({},this.emptyGroups,r.emptyGroups),this.hasCustom=r.hasCustom||this.hasCustom,this.canModeBeOptimized[n]=r.canBeOptimized}}))})),this.defaultMode=n.defaultMode,!(0,ht.A)(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){const e=(0,ft.A)(this.lexerDefinitionErrors,(e=>e.message)).join("-----------------------\n");throw new Error("Errors detected in definition of Lexer:\n"+e)}(0,lt.A)(this.lexerDefinitionWarning,(e=>{Vn(e.message)})),this.TRACE_INIT("Choosing sub-methods implementations",(()=>{if(or?(this.chopInput=vr.A,this.match=this.matchWithTest):(this.updateLastIndex=Er.A,this.match=this.matchWithExec),r&&(this.handleModes=Er.A),!1===this.trackStartLines&&(this.computeNewColumn=vr.A),!1===this.trackEndLines&&(this.updateTokenEndLineColumnLocation=Er.A),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else{if(!/onlyOffset/i.test(this.config.positionTracking))throw Error(`Invalid config option: "${this.config.positionTracking}"`);this.createTokenInstance=this.createOffsetOnlyToken}this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)})),this.TRACE_INIT("Failed Optimization Warnings",(()=>{const e=(0,Ln.A)(this.canModeBeOptimized,((e,t,n)=>(!1===t&&e.push(n),e)),[]);if(t.ensureOptimizations&&!(0,ht.A)(e))throw Error(`Lexer Modes: < ${e.join(", ")} > cannot be optimized.\n\t Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.\n\t Or inspect the console log for details on how to resolve these issues.`)})),this.TRACE_INIT("clearRegExpParserCache",(()=>{Wn={}})),this.TRACE_INIT("toFastProperties",(()=>{gt(this)}))}))}tokenize(e,t=this.defaultMode){if(!(0,ht.A)(this.lexerDefinitionErrors)){const e=(0,ft.A)(this.lexerDefinitionErrors,(e=>e.message)).join("-----------------------\n");throw new Error("Unable to Tokenize because Errors detected in definition of Lexer:\n"+e)}return this.tokenizeInternal(e,t)}tokenizeInternal(e,t){let n,r,i,s,o,a,c,u,l,d,h,f,p,m,g;const y=e,A=y.length;let T=0,v=0;const E=this.hasCustom?0:Math.floor(e.length/10),R=new Array(E),k=[];let x=this.trackStartLines?1:void 0,I=this.trackStartLines?1:void 0;const S=function(e){const t={},n=(0,St.A)(e);return(0,lt.A)(n,(n=>{const r=e[n];if(!(0,nn.A)(r))throw Error("non exhaustive match");t[n]=[]})),t}(this.emptyGroups),N=this.trackStartLines,C=this.config.lineTerminatorsPattern;let w=0,L=[],b=[];const O=[],_=[];let $;function P(){return L}function M(e){const t=Tr(e),n=b[t];return void 0===n?_:n}Object.freeze(_);const D=e=>{if(1===O.length&&void 0===e.tokenType.PUSH_MODE){const t=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(e);k.push({offset:e.startOffset,line:e.startLine,column:e.startColumn,length:e.image.length,message:t})}else{O.pop();const e=(0,Rr.A)(O);L=this.patternIdxToConfig[e],b=this.charCodeToPatternIdxToConfig[e],w=L.length;const t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;$=b&&t?M:P}};function U(e){O.push(e),b=this.charCodeToPatternIdxToConfig[e],L=this.patternIdxToConfig[e],w=L.length,w=L.length;const t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;$=b&&t?M:P}let F;U.call(this,t);const G=this.config.recoveryEnabled;for(;Ta.length){a=s,c=u,F=t;break}}}break}}if(null!==a){if(l=a.length,d=F.group,void 0!==d&&(h=F.tokenTypeIdx,f=this.createTokenInstance(a,T,h,F.tokenType,x,I,l),this.handlePayload(f,c),!1===d?v=this.addToken(R,v,f):S[d].push(f)),e=this.chopInput(e,l),T+=l,I=this.computeNewColumn(I,l),!0===N&&!0===F.canLineTerminator){let e,t,n=0;C.lastIndex=0;do{e=C.test(a),!0===e&&(t=C.lastIndex-1,n++)}while(!0===e);0!==n&&(x+=n,I=l-t,this.updateTokenEndLineColumnLocation(f,d,t,n,x,I,l))}this.handleModes(F,D,U,f)}else{const t=T,n=x,i=I;let s=!1===G;for(;!1===s&&T`Expecting ${Dr(e)?`--\x3e ${Mr(e)} <--`:`token of type --\x3e ${e.name} <--`} but found --\x3e '${t.image}' <--`,buildNotAllInputParsedMessage:({firstRedundant:e,ruleName:t})=>"Redundant input, expecting EOF but found: "+e.image,buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:n,customUserDescription:r,ruleName:i}){const s="Expecting: ",o="\nbut found: '"+Bn(t).image+"'";if(r)return s+r+o;{const t=(0,Ln.A)(e,((e,t)=>e.concat(t)),[]),n=(0,ft.A)(t,(e=>`[${(0,ft.A)(e,(e=>Mr(e))).join(", ")}]`));return s+`one of these possible Token sequences:\n${(0,ft.A)(n,((e,t)=>` ${t+1}. ${e}`)).join("\n")}`+o}},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:n,ruleName:r}){const i="Expecting: ",s="\nbut found: '"+Bn(t).image+"'";return n?i+n+s:i+`expecting at least one iteration which starts with one of these possible Token sequences::\n <${(0,ft.A)(e,(e=>`[${(0,ft.A)(e,(e=>Mr(e))).join(",")}]`)).join(" ,")}>`+s}};Object.freeze(qr);const Qr={buildRuleNotFoundError:(e,t)=>"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+"<-\ninside top level rule: ->"+e.name+"<-"},Zr={buildDuplicateFoundError(e,t){const n=e.name,r=Bn(t),i=r.idx,s=fn(r),o=(a=r)instanceof qt?a.terminalType.name:a instanceof Bt?a.nonTerminalName:"";var a;let c=`->${s}${i>0?i:""}<- ${o?`with argument: ->${o}<-`:""}\n appears more than once (${t.length} times) in the top level rule: ->${n}<-. \n For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES \n `;return c=c.replace(/[ \t]+/g," "),c=c.replace(/\s\s+/g,"\n"),c},buildNamespaceConflictError:e=>`Namespace conflict found in grammar.\nThe grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.name}>.\nTo resolve this make sure each Terminal and Non-Terminal names are unique\nThis is easy to accomplish by using the convention that Terminal names start with an uppercase letter\nand Non-Terminal names start with a lower case letter.`,buildAlternationPrefixAmbiguityError(e){const t=(0,ft.A)(e.prefixPath,(e=>Mr(e))).join(", "),n=0===e.alternation.idx?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix\nin inside <${e.topLevelRule.name}> Rule,\n<${t}> may appears as a prefix path in all these alternatives.\nSee: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX\nFor Further details.`},buildAlternationAmbiguityError(e){const t=(0,ft.A)(e.prefixPath,(e=>Mr(e))).join(", "),n=0===e.alternation.idx?"":e.alternation.idx;let r=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in inside <${e.topLevelRule.name}> Rule,\n<${t}> may appears as a prefix path in all these alternatives.\n`;return r+="See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES\nFor Further details.",r},buildEmptyRepetitionError(e){let t=fn(e.repetition);return 0!==e.repetition.idx&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens.\nThis could lead to an infinite loop.`},buildTokenNameError:e=>"deprecated",buildEmptyAlternationError:e=>`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in inside <${e.topLevelRule.name}> Rule.\nOnly the last alternative may be an empty alternative.`,buildTooManyAlternativesError:e=>`An Alternation cannot have more than 256 alternatives:\n inside <${e.topLevelRule.name}> Rule.\n has ${e.alternation.definition.length+1} alternatives.`,buildLeftRecursionError(e){const t=e.topLevelRule.name;return`Left Recursion found in grammar.\nrule: <${t}> can be invoked from itself (directly or indirectly)\nwithout consuming any Tokens. The grammar path that causes this is: \n ${t} --\x3e ${(0,ft.A)(e.leftRecursionPath,(e=>e.name)).concat([t]).join(" --\x3e ")}\n To fix this refactor your grammar to remove the left recursion.\nsee: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError:e=>"deprecated",buildDuplicateRuleNameError(e){let t;return t=e.topLevelRule instanceof Kt?e.topLevelRule.name:e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}};class Jr extends Zt{constructor(e,t){super(),this.nameToTopRule=e,this.errMsgProvider=t,this.errors=[]}resolveRefs(){(0,lt.A)((0,dt.A)(this.nameToTopRule),(e=>{this.currTopLevel=e,e.accept(this)}))}visitNonTerminal(e){const t=this.nameToTopRule[e.nonTerminalName];if(t)e.referencedRule=t;else{const t=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:t,type:Cs.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}const ei=function(e,t){return(0,Mn.A)((0,ft.A)(e,t),1)};var ti=n(2528);const ni=function(e,t,n,r){for(var i=-1,s=null==e?0:e.length;++i{!1===(0,ht.A)(e.definition)&&(r=s(e.definition))})),r;if(!(t instanceof qt))throw Error("non exhaustive match");n.push(t.terminalType)}}i++}return r.push({partialPath:n,suffixDef:Tt(e,i)}),r}function yi(e,t,n,r){const i="EXIT_NONE_TERMINAL",s=[i],o="EXIT_ALTERNATIVE";let a=!1;const c=t.length,u=c-r-1,l=[],d=[];for(d.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});!(0,ht.A)(d);){const e=d.pop();if(e===o){a&&(0,Rr.A)(d).idx<=u&&d.pop();continue}const r=e.def,h=e.idx,f=e.ruleStack,p=e.occurrenceStack;if((0,ht.A)(r))continue;const m=r[0];if(m===i){const e={idx:h,def:Tt(r),ruleStack:ci(f),occurrenceStack:ci(p)};d.push(e)}else if(m instanceof qt)if(h=0;e--){const t={idx:h,def:m.definition[e].definition.concat(Tt(r)),ruleStack:f,occurrenceStack:p};d.push(t),d.push(o)}else if(m instanceof jt)d.push({idx:h,def:m.definition.concat(Tt(r)),ruleStack:f,occurrenceStack:p});else{if(!(m instanceof Kt))throw Error("non exhaustive match");d.push(Ai(m,h,f,p))}}return l}function Ai(e,t,n,r){const i=(0,mt.A)(n);i.push(e.name);const s=(0,mt.A)(r);return s.push(1),{idx:t,def:e.definition,ruleStack:i,occurrenceStack:s}}var Ti;function vi(e){if(e instanceof Vt||"Option"===e)return Ti.OPTION;if(e instanceof zt||"Repetition"===e)return Ti.REPETITION;if(e instanceof Wt||"RepetitionMandatory"===e)return Ti.REPETITION_MANDATORY;if(e instanceof Ht||"RepetitionMandatoryWithSeparator"===e)return Ti.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof Yt||"RepetitionWithSeparator"===e)return Ti.REPETITION_WITH_SEPARATOR;if(e instanceof Xt||"Alternation"===e)return Ti.ALTERNATION;throw Error("non exhaustive match")}function Ei(e){const{occurrence:t,rule:n,prodType:r,maxLookahead:i}=e,s=vi(r);return s===Ti.ALTERNATION?Li(t,n,i):bi(t,n,s,i)}function Ri(e,t,n,r){const i=e.length,s=dn(e,(e=>dn(e,(e=>1===e.length))));if(t)return function(t){const r=(0,ft.A)(t,(e=>e.GATE));for(let t=0;t(0,An.A)(e))),n=(0,Ln.A)(t,((e,t,n)=>((0,lt.A)(t,(t=>{(0,pt.A)(e,t.tokenTypeIdx)||(e[t.tokenTypeIdx]=n),(0,lt.A)(t.categoryMatches,(t=>{(0,pt.A)(e,t)||(e[t]=n)}))})),e)),{});return function(){const e=this.LA(1);return n[e.tokenTypeIdx]}}return function(){for(let t=0;t1===e.length)),i=e.length;if(r&&!n){const t=(0,An.A)(e);if(1===t.length&&(0,ht.A)(t[0].categoryMatches)){const e=t[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===e}}{const e=(0,Ln.A)(t,((e,t,n)=>(e[t.tokenTypeIdx]=!0,(0,lt.A)(t.categoryMatches,(t=>{e[t]=!0})),e)),[]);return function(){const t=this.LA(1);return!0===e[t.tokenTypeIdx]}}}return function(){e:for(let n=0;ngi([e],1))),r=Si(n.length),i=(0,ft.A)(n,(e=>{const t={};return(0,lt.A)(e,(e=>{const n=Ni(e.partialPath);(0,lt.A)(n,(e=>{t[e]=!0}))})),t}));let s=n;for(let e=1;e<=t;e++){const n=s;s=Si(n.length);for(let o=0;o{const t=Ni(e.partialPath);(0,lt.A)(t,(e=>{i[o][e]=!0}))}))}}}}return r}function Li(e,t,n,r){const i=new Ii(e,Ti.ALTERNATION,r);return t.accept(i),wi(i.result,n)}function bi(e,t,n,r){const i=new Ii(e,n);t.accept(i);const s=i.result,o=new xi(t,e,n).startWalking();return wi([new jt({definition:s}),new jt({definition:o})],r)}function Oi(e,t){e:for(let n=0;ndn(e,(e=>dn(e,(e=>(0,ht.A)(e.categoryMatches)))))))}function $i(e){return`${fn(e)}_#_${e.idx}_#_${Pi(e)}`}function Pi(e){return e instanceof qt?e.terminalType.name:e instanceof Bt?e.nonTerminalName:""}class Mi extends Zt{constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}}function Di(e,t,n,r=[]){const i=[],s=Ui(t.definition);if((0,ht.A)(s))return[];{const t=e.name;cn(s,e)&&i.push({message:n.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:r}),type:Cs.LEFT_RECURSION,ruleName:t});const o=Fn(s,r.concat([e])),a=ei(o,(t=>{const i=(0,mt.A)(r);return i.push(t),Di(e,t,n,i)}));return i.concat(a)}}function Ui(e){let t=[];if((0,ht.A)(e))return t;const n=Bn(e);if(n instanceof Bt)t.push(n.referencedRule);else if(n instanceof jt||n instanceof Vt||n instanceof Wt||n instanceof Ht||n instanceof Yt||n instanceof zt)t=t.concat(Ui(n.definition));else if(n instanceof Xt)t=(0,An.A)((0,ft.A)(n.definition,(e=>Ui(e.definition))));else if(!(n instanceof qt))throw Error("non exhaustive match");const r=hn(n),i=e.length>1;if(r&&i){const n=Tt(e);return t.concat(Ui(n))}return t}class Fi extends Zt{constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}}class Gi extends Zt{constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}}const Bi="MismatchedTokenException",Ki="NoViableAltException",ji="EarlyExitException",Vi="NotAllInputParsedException",Wi=[Bi,Ki,ji,Vi];function Hi(e){return cn(Wi,e.name)}Object.freeze(Wi);class zi extends Error{constructor(e,t){super(e),this.token=t,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}class Yi extends zi{constructor(e,t,n){super(e,t),this.previousToken=n,this.name=Bi}}class Xi extends zi{constructor(e,t,n){super(e,t),this.previousToken=n,this.name=Ki}}class qi extends zi{constructor(e,t){super(e,t),this.name=Vi}}class Qi extends zi{constructor(e,t,n){super(e,t),this.previousToken=n,this.name=ji}}const Zi={},Ji="InRuleRecoveryException";class es extends Error{constructor(e){super(e),this.name=Ji}}function ts(e,t,n,r,i,s,o){const a=this.getKeyForAutomaticLookahead(r,i);let c=this.firstAfterRepMap[a];if(void 0===c){const e=this.getCurrRuleFullName();c=new s(this.getGAstProductions()[e],i).startWalking(),this.firstAfterRepMap[a]=c}let u=c.token,l=c.occurrence;const d=c.isEndOfRule;1===this.RULE_STACK.length&&d&&void 0===u&&(u=zr,l=1),void 0!==u&&void 0!==l&&this.shouldInRepetitionRecoveryBeTried(u,l,o)&&this.tryInRepetitionRecovery(e,t,n,u)}const ns=1024,rs=1280,is=1536;function ss(e,t,n){return n|t|e}class os{constructor(e){var t;this.maxLookahead=null!==(t=null==e?void 0:e.maxLookahead)&&void 0!==t?t:Ss.maxLookahead}validate(e){const t=this.validateNoLeftRecursion(e.rules);if((0,ht.A)(t)){const n=this.validateEmptyOrAlternatives(e.rules),r=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),i=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...t,...n,...r,...i]}return t}validateNoLeftRecursion(e){return ei(e,(e=>Di(e,e,Zr)))}validateEmptyOrAlternatives(e){return ei(e,(e=>function(e,t){const n=new Fi;e.accept(n);const r=n.alternations;return ei(r,(n=>{const r=ci(n.definition);return ei(r,((r,i)=>{const s=yi([r],[],xr,1);return(0,ht.A)(s)?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:n,emptyChoiceIdx:i}),type:Cs.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:n.idx,alternative:i+1}]:[]}))}))}(e,Zr)))}validateAmbiguousAlternationAlternatives(e,t){return ei(e,(e=>function(e,t,n){const r=new Fi;e.accept(r);let i=r.alternations;i=Sn(i,(e=>!0===e.ignoreAmbiguities));return ei(i,(r=>{const i=r.idx,s=r.maxLookahead||t,o=Li(i,e,s,r),a=function(e,t,n,r){const i=[],s=(0,Ln.A)(e,((n,r,s)=>(!0===t.definition[s].ignoreAmbiguities||(0,lt.A)(r,(r=>{const o=[s];(0,lt.A)(e,((e,n)=>{s!==n&&Oi(e,r)&&!0!==t.definition[n].ignoreAmbiguities&&o.push(n)})),o.length>1&&!Oi(i,r)&&(i.push(r),n.push({alts:o,path:r}))})),n)),[]);return(0,ft.A)(s,(e=>{const i=(0,ft.A)(e.alts,(e=>e+1));return{message:r.buildAlternationAmbiguityError({topLevelRule:n,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:Cs.AMBIGUOUS_ALTS,ruleName:n.name,occurrence:t.idx,alternatives:e.alts}}))}(o,r,e,n),c=function(e,t,n,r){const i=(0,Ln.A)(e,((e,t,n)=>{const r=(0,ft.A)(t,(e=>({idx:n,path:e})));return e.concat(r)}),[]);return Gn(ei(i,(e=>{if(!0===t.definition[e.idx].ignoreAmbiguities)return[];const s=e.idx,o=e.path,a=(0,bn.A)(i,(e=>{return!0!==t.definition[e.idx].ignoreAmbiguities&&e.idx{const n=r[t];return e===n||n.categoryMatchesMap[e.tokenTypeIdx]})));var n,r}));return(0,ft.A)(a,(e=>{const i=[e.idx+1,s+1],o=0===t.idx?"":t.idx;return{message:r.buildAlternationPrefixAmbiguityError({topLevelRule:n,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:Cs.AMBIGUOUS_PREFIX_ALTS,ruleName:n.name,occurrence:o,alternatives:i}}))})))}(o,r,e,n);return a.concat(c)}))}(e,t,Zr)))}validateSomeNonEmptyLookaheadPath(e,t){return function(e,t,n){const r=[];return(0,lt.A)(e,(e=>{const i=new Gi;e.accept(i);const s=i.allProductions;(0,lt.A)(s,(i=>{const s=vi(i),o=i.maxLookahead||t,a=bi(i.idx,e,s,o)[0];if((0,ht.A)((0,An.A)(a))){const t=n.buildEmptyRepetitionError({topLevelRule:e,repetition:i});r.push({message:t,type:Cs.NO_NON_EMPTY_LOOKAHEAD,ruleName:e.name})}}))})),r}(e,t,Zr)}buildLookaheadForAlternation(e){return function(e,t,n,r,i,s){const o=Li(e,t,n);return s(o,r,_i(o)?Ir:xr,i)}(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,Ri)}buildLookaheadForOptional(e){return function(e,t,n,r,i,s){const o=bi(e,t,i,n),a=_i(o)?Ir:xr;return s(o[0],a,r)}(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,vi(e.prodType),ki)}}const as=new class extends Zt{constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}};function cs(e,t){!0===isNaN(e.startOffset)?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset(0,Nn.A)(e.GATE)));return s.hasPredicates=o,n.definition.push(s),(0,lt.A)(i,(e=>{const t=new jt({definition:[]});s.definition.push(t),(0,pt.A)(e,"IGNORE_AMBIGUITIES")?t.ignoreAmbiguities=e.IGNORE_AMBIGUITIES:(0,pt.A)(e,"GATE")&&(t.ignoreAmbiguities=!0),this.recordingProdStack.push(t),e.ALT.call(this),this.recordingProdStack.pop()})),ms}function ks(e){return 0===e?"":`${e}`}function xs(e){if(e<0||e>ys){const t=new Error(`Invalid DSL Method idx value: <${e}>\n\tIdx value must be a none negative value smaller than ${ys+1}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}const Is=Yr(zr,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Is);const Ss=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:qr,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Ns=Object.freeze({recoveryValueFunc:()=>{},resyncEnabled:!0});var Cs,ws,Ls;function bs(e=void 0){return function(){return e}}!function(e){e[e.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",e[e.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",e[e.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",e[e.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",e[e.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",e[e.LEFT_RECURSION=5]="LEFT_RECURSION",e[e.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",e[e.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",e[e.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",e[e.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",e[e.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",e[e.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",e[e.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",e[e.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"}(Cs||(Cs={}));class Os{static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated.\t\nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",(()=>{let e;this.selfAnalysisDone=!0;const t=this.className;this.TRACE_INIT("toFastProps",(()=>{gt(this)})),this.TRACE_INIT("Grammar Recording",(()=>{try{this.enableRecording(),(0,lt.A)(this.definedRulesNames,(e=>{const t=this[e].originalGrammarAction;let n;this.TRACE_INIT(`${e} Rule`,(()=>{n=this.topLevelRuleRecord(e,t)})),this.gastProductionsCache[e]=n}))}finally{this.disableRecording()}}));let n=[];if(this.TRACE_INIT("Grammar Resolving",(()=>{n=function(e){const t=(0,kn.A)(e,{errMsgProvider:Qr}),n={};return(0,lt.A)(e.rules,(e=>{n[e.name]=e})),function(e,t){const n=new Jr(e,t);return n.resolveRefs(),n.errors}(n,t.errMsgProvider)}({rules:(0,dt.A)(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)})),this.TRACE_INIT("Grammar Validations",(()=>{if((0,ht.A)(n)&&!1===this.skipValidations){const n=(e={rules:(0,dt.A)(this.gastProductionsCache),tokenTypes:(0,dt.A)(this.tokensMap),errMsgProvider:Zr,grammarName:t},function(e,t,n,r){const i=ei(e,(e=>function(e,t){const n=new Mi;e.accept(n);const r=n.allProductions,i=si(r,$i),s=_t(i,(e=>e.length>1));return(0,ft.A)((0,dt.A)(s),(n=>{const r=Bn(n),i=t.buildDuplicateFoundError(e,n),s=fn(r),o={message:i,type:Cs.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:s,occurrence:r.idx},a=Pi(r);return a&&(o.parameter=a),o}))}(e,n))),s=function(e,t,n){const r=[],i=(0,ft.A)(t,(e=>e.name));return(0,lt.A)(e,(e=>{const t=e.name;if(cn(i,t)){const i=n.buildNamespaceConflictError(e);r.push({message:i,type:Cs.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:t})}})),r}(e,t,n),o=ei(e,(e=>function(e,t){const n=new Fi;e.accept(n);const r=n.alternations;return ei(r,(n=>n.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:n}),type:Cs.TOO_MANY_ALTS,ruleName:e.name,occurrence:n.idx}]:[]))}(e,n))),a=ei(e,(t=>function(e,t,n,r){const i=[],s=(0,Ln.A)(t,((t,n)=>n.name===e.name?t+1:t),0);if(s>1){const t=r.buildDuplicateRuleNameError({topLevelRule:e,grammarName:n});i.push({message:t,type:Cs.DUPLICATE_RULE_NAME,ruleName:e.name})}return i}(t,e,r,n)));return i.concat(s,o,a)}((e=(0,kn.A)(e,{errMsgProvider:Zr})).rules,e.tokenTypes,e.errMsgProvider,e.grammarName)),r=function(e){const t=e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName});return(0,ft.A)(t,(e=>Object.assign({type:Cs.CUSTOM_LOOKAHEAD_VALIDATION},e)))}({lookaheadStrategy:this.lookaheadStrategy,rules:(0,dt.A)(this.gastProductionsCache),tokenTypes:(0,dt.A)(this.tokensMap),grammarName:t});this.definitionErrors=this.definitionErrors.concat(n,r)}var e})),(0,ht.A)(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",(()=>{const e=function(e){const t={};return(0,lt.A)(e,(e=>{const n=new En(e).startWalking();Ct(t,n)})),t}((0,dt.A)(this.gastProductionsCache));this.resyncFollows=e})),this.TRACE_INIT("ComputeLookaheadFunctions",(()=>{var e,t;null===(t=(e=this.lookaheadStrategy).initialize)||void 0===t||t.call(e,{rules:(0,dt.A)(this.gastProductionsCache)}),this.preComputeLookaheadFunctions((0,dt.A)(this.gastProductionsCache))}))),!Os.DEFER_DEFINITION_ERRORS_HANDLING&&!(0,ht.A)(this.definitionErrors))throw e=(0,ft.A)(this.definitionErrors,(e=>e.message)),new Error(`Parser Definition Errors detected:\n ${e.join("\n-------------------------------\n")}`)}))}constructor(e,t){this.definitionErrors=[],this.selfAnalysisDone=!1;const n=this;if(n.initErrorHandler(t),n.initLexerAdapter(),n.initLooksAhead(t),n.initRecognizerEngine(e,t),n.initRecoverable(t),n.initTreeBuilder(t),n.initContentAssist(),n.initGastRecorder(t),n.initPerformanceTracer(t),(0,pt.A)(t,"ignoredIssues"))throw new Error("The IParserConfig property has been deprecated.\n\tPlease use the flag on the relevant DSL method instead.\n\tSee: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES\n\tFor further details.");this.skipValidations=(0,pt.A)(t,"skipValidations")?t.skipValidations:Ss.skipValidations}}Os.DEFER_DEFINITION_ERRORS_HANDLING=!1,ws=Os,Ls=[class{initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=(0,pt.A)(e,"recoveryEnabled")?e.recoveryEnabled:Ss.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=ts)}getTokenToInsert(e){const t=Yr(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return t.isInsertedInRecovery=!0,t}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,t,n,r){const i=this.findReSyncTokenType(),s=this.exportLexerState(),o=[];let a=!1;const c=this.LA(1);let u=this.LA(1);const l=()=>{const e=this.LA(0),t=this.errorMessageProvider.buildMismatchTokenMessage({expected:r,actual:c,previous:e,ruleName:this.getCurrRuleFullName()}),n=new Yi(t,c,this.LA(0));n.resyncedTokens=ci(o),this.SAVE_ERROR(n)};for(;!a;){if(this.tokenMatcher(u,r))return void l();if(n.call(this))return l(),void e.apply(this,t);this.tokenMatcher(u,i)?a=!0:(u=this.SKIP_TOKEN(),this.addToResyncTokens(u,o))}this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(e,t,n){return!1!==n&&!this.tokenMatcher(this.LA(1),e)&&!this.isBackTracking()&&!this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,t))}getFollowsForInRuleRecovery(e,t){const n=this.getCurrentGrammarPath(e,t);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,t){if(this.canRecoverWithSingleTokenInsertion(e,t))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){const e=this.SKIP_TOKEN();return this.consumeToken(),e}throw new es("sad sad panda")}canPerformInRuleRecovery(e,t){return this.canRecoverWithSingleTokenInsertion(e,t)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,t){if(!this.canTokenTypeBeInsertedInRecovery(e))return!1;if((0,ht.A)(t))return!1;const n=this.LA(1);return void 0!==(0,Kn.A)(t,(e=>this.tokenMatcher(n,e)))}canRecoverWithSingleTokenDeletion(e){return!!this.canTokenTypeBeDeletedInRecovery(e)&&this.tokenMatcher(this.LA(2),e)}isInCurrentRuleReSyncSet(e){const t=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(t);return cn(n,e)}findReSyncTokenType(){const e=this.flattenFollowSet();let t=this.LA(1),n=2;for(;;){const r=(0,Kn.A)(e,(e=>Xr(t,e)));if(void 0!==r)return r;t=this.LA(n),n++}}getCurrFollowKey(){if(1===this.RULE_STACK.length)return Zi;const e=this.getLastExplicitRuleShortName(),t=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:t,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){const e=this.RULE_STACK,t=this.RULE_OCCURRENCE_STACK;return(0,ft.A)(e,((n,r)=>0===r?Zi:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:t[r],inRule:this.shortRuleNameToFullName(e[r-1])}))}flattenFollowSet(){const e=(0,ft.A)(this.buildFullFollowKeyStack(),(e=>this.getFollowSetFromFollowKey(e)));return(0,An.A)(e)}getFollowSetFromFollowKey(e){if(e===Zi)return[zr];const t=e.ruleName+e.idxInCallingRule+vn+e.inRule;return this.resyncFollows[t]}addToResyncTokens(e,t){return this.tokenMatcher(e,zr)||t.push(e),t}reSyncTo(e){const t=[];let n=this.LA(1);for(;!1===this.tokenMatcher(n,e);)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,t);return ci(t)}attemptInRepetitionRecovery(e,t,n,r,i,s,o){}getCurrentGrammarPath(e,t){return{ruleStack:this.getHumanReadableRuleStack(),occurrenceStack:(0,mt.A)(this.RULE_OCCURRENCE_STACK),lastTok:e,lastTokOccurrence:t}}getHumanReadableRuleStack(){return(0,ft.A)(this.RULE_STACK,(e=>this.shortRuleNameToFullName(e)))}},class{initLooksAhead(e){this.dynamicTokensEnabled=(0,pt.A)(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:Ss.dynamicTokensEnabled,this.maxLookahead=(0,pt.A)(e,"maxLookahead")?e.maxLookahead:Ss.maxLookahead,this.lookaheadStrategy=(0,pt.A)(e,"lookaheadStrategy")?e.lookaheadStrategy:new os({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){(0,lt.A)(e,(e=>{this.TRACE_INIT(`${e.name} Rule Lookahead`,(()=>{const{alternation:t,repetition:n,option:r,repetitionMandatory:i,repetitionMandatoryWithSeparator:s,repetitionWithSeparator:o}=function(e){as.reset(),e.accept(as);const t=as.dslMethods;return as.reset(),t}(e);(0,lt.A)(t,(t=>{const n=0===t.idx?"":t.idx;this.TRACE_INIT(`${fn(t)}${n}`,(()=>{const n=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:t.idx,rule:e,maxLookahead:t.maxLookahead||this.maxLookahead,hasPredicates:t.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),r=ss(this.fullRuleNameToShort[e.name],256,t.idx);this.setLaFuncCache(r,n)}))})),(0,lt.A)(n,(t=>{this.computeLookaheadFunc(e,t.idx,768,"Repetition",t.maxLookahead,fn(t))})),(0,lt.A)(r,(t=>{this.computeLookaheadFunc(e,t.idx,512,"Option",t.maxLookahead,fn(t))})),(0,lt.A)(i,(t=>{this.computeLookaheadFunc(e,t.idx,ns,"RepetitionMandatory",t.maxLookahead,fn(t))})),(0,lt.A)(s,(t=>{this.computeLookaheadFunc(e,t.idx,is,"RepetitionMandatoryWithSeparator",t.maxLookahead,fn(t))})),(0,lt.A)(o,(t=>{this.computeLookaheadFunc(e,t.idx,rs,"RepetitionWithSeparator",t.maxLookahead,fn(t))}))}))}))}computeLookaheadFunc(e,t,n,r,i,s){this.TRACE_INIT(`${s}${0===t?"":t}`,(()=>{const s=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:t,rule:e,maxLookahead:i||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:r}),o=ss(this.fullRuleNameToShort[e.name],n,t);this.setLaFuncCache(o,s)}))}getKeyForAutomaticLookahead(e,t){return ss(this.getLastExplicitRuleShortName(),e,t)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,t){this.lookAheadFuncsCache.set(e,t)}},class{initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=(0,pt.A)(e,"nodeLocationTracking")?e.nodeLocationTracking:Ss.nodeLocationTracking,this.outputCst)if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=us,this.setNodeLocationFromNode=us,this.cstPostRule=Er.A,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=Er.A,this.setNodeLocationFromNode=Er.A,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=cs,this.setNodeLocationFromNode=cs,this.cstPostRule=Er.A,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=Er.A,this.setNodeLocationFromNode=Er.A,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else{if(!/none/i.test(this.nodeLocationTracking))throw Error(`Invalid config option: "${e.nodeLocationTracking}"`);this.setNodeLocationFromToken=Er.A,this.setNodeLocationFromNode=Er.A,this.cstPostRule=Er.A,this.setInitialNodeLocation=Er.A}else this.cstInvocationStateUpdate=Er.A,this.cstFinallyStateUpdate=Er.A,this.cstPostTerminal=Er.A,this.cstPostNonTerminal=Er.A,this.cstPostRule=Er.A}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){const t=this.LA(1);e.location={startOffset:t.startOffset,startLine:t.startLine,startColumn:t.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){const t={name:e,children:Object.create(null)};this.setInitialNodeLocation(t),this.CST_STACK.push(t)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){const t=this.LA(0),n=e.location;n.startOffset<=t.startOffset==1?(n.endOffset=t.endOffset,n.endLine=t.endLine,n.endColumn=t.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){const t=this.LA(0),n=e.location;n.startOffset<=t.startOffset==1?n.endOffset=t.endOffset:n.startOffset=NaN}cstPostTerminal(e,t){const n=this.CST_STACK[this.CST_STACK.length-1];var r,i,s;i=t,s=e,void 0===(r=n).children[s]?r.children[s]=[i]:r.children[s].push(i),this.setNodeLocationFromToken(n.location,t)}cstPostNonTerminal(e,t){const n=this.CST_STACK[this.CST_STACK.length-1];!function(e,t,n){void 0===e.children[t]?e.children[t]=[n]:e.children[t].push(n)}(n,t,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if((0,Rn.A)(this.baseCstVisitorConstructor)){const e=function(e,t){const n=function(){};ds(n,e+"BaseSemantics");const r={visit:function(e,t){if((0,nn.A)(e)&&(e=e[0]),!(0,Rn.A)(e))return this[e.name](e.children,t)},validateVisitor:function(){const e=function(e,t){const n=function(e,t){const n=(0,bn.A)(t,(t=>!1===(0,Nn.A)(e[t]))),r=(0,ft.A)(n,(t=>({msg:`Missing visitor method: <${t}> on ${e.constructor.name} CST Visitor.`,type:fs.MISSING_METHOD,methodName:t})));return Gn(r)}(e,t);return n}(this,t);if(!(0,ht.A)(e)){const t=(0,ft.A)(e,(e=>e.msg));throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:\n\t${t.join("\n\n").replace(/\n/g,"\n\t")}`)}}};return(n.prototype=r).constructor=n,n._RULE_NAMES=t,n}(this.className,(0,St.A)(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if((0,Rn.A)(this.baseCstVisitorWithDefaultsConstructor)){const e=function(e,t,n){const r=function(){};ds(r,e+"BaseSemanticsWithDefaults");const i=Object.create(n.prototype);return(0,lt.A)(t,(e=>{i[e]=hs})),(r.prototype=i).constructor=r,r}(this.className,(0,St.A)(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){const e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}},class{initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(!0!==this.selfAnalysisDone)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):Is}LA(e){const t=this.currIdx+e;return t<0||this.tokVectorLength<=t?Is:this.tokVector[t]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}},class{initRecognizerEngine(e,t){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=Ir,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},(0,pt.A)(t,"serializedGrammar"))throw Error("The Parser's configuration can no longer contain a property.\n\tSee: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0\n\tFor Further details.");if((0,nn.A)(e)){if((0,ht.A)(e))throw Error("A Token Vocabulary cannot be empty.\n\tNote that the first argument for the parser constructor\n\tis no longer a Token vector (since v4.0).");if("number"==typeof e[0].startOffset)throw Error("The Parser constructor no longer accepts a token vector as the first argument.\n\tSee: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0\n\tFor Further details.")}if((0,nn.A)(e))this.tokensMap=(0,Ln.A)(e,((e,t)=>(e[t.name]=t,e)),{});else if((0,pt.A)(e,"modes")&&dn((0,An.A)((0,dt.A)(e.modes)),Or)){const t=(0,An.A)((0,dt.A)(e.modes)),n=yn(t);this.tokensMap=(0,Ln.A)(n,((e,t)=>(e[t.name]=t,e)),{})}else{if(!(0,ps.A)(e))throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap=(0,mt.A)(e)}this.tokensMap.EOF=zr;const n=(0,pt.A)(e,"modes")?(0,An.A)((0,dt.A)(e.modes)):(0,dt.A)(e),r=dn(n,(e=>(0,ht.A)(e.categoryMatches)));this.tokenMatcher=r?Ir:xr,Cr((0,dt.A)(this.tokensMap))}defineRule(e,t,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'\nMake sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);const r=(0,pt.A)(n,"resyncEnabled")?n.resyncEnabled:Ns.resyncEnabled,i=(0,pt.A)(n,"recoveryValueFunc")?n.recoveryValueFunc:Ns.recoveryValueFunc,s=this.ruleShortNameIdx<<12;let o;return this.ruleShortNameIdx++,this.shortRuleNameToFull[s]=e,this.fullRuleNameToShort[e]=s,o=!0===this.outputCst?function(...n){try{this.ruleInvocationStateUpdate(s,e,this.subruleIdx),t.apply(this,n);const r=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(r),r}catch(e){return this.invokeRuleCatch(e,r,i)}finally{this.ruleFinallyStateUpdate()}}:function(...n){try{return this.ruleInvocationStateUpdate(s,e,this.subruleIdx),t.apply(this,n)}catch(e){return this.invokeRuleCatch(e,r,i)}finally{this.ruleFinallyStateUpdate()}},Object.assign(o,{ruleName:e,originalGrammarAction:t})}invokeRuleCatch(e,t,n){const r=1===this.RULE_STACK.length,i=t&&!this.isBackTracking()&&this.recoveryEnabled;if(Hi(e)){const t=e;if(i){const r=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(r)){if(t.resyncedTokens=this.reSyncTo(r),this.outputCst){const e=this.CST_STACK[this.CST_STACK.length-1];return e.recoveredNode=!0,e}return n(e)}if(this.outputCst){const e=this.CST_STACK[this.CST_STACK.length-1];e.recoveredNode=!0,t.partialCstResult=e}throw t}if(r)return this.moveToTerminatedState(),n(e);throw t}throw e}optionInternal(e,t){const n=this.getKeyForAutomaticLookahead(512,t);return this.optionInternalLogic(e,t,n)}optionInternalLogic(e,t,n){let r,i=this.getLaFuncFromCache(n);if("function"!=typeof e){r=e.DEF;const t=e.GATE;if(void 0!==t){const e=i;i=()=>t.call(this)&&e.call(this)}}else r=e;if(!0===i.call(this))return r.call(this)}atLeastOneInternal(e,t){const n=this.getKeyForAutomaticLookahead(ns,e);return this.atLeastOneInternalLogic(e,t,n)}atLeastOneInternalLogic(e,t,n){let r,i=this.getLaFuncFromCache(n);if("function"!=typeof t){r=t.DEF;const e=t.GATE;if(void 0!==e){const t=i;i=()=>e.call(this)&&t.call(this)}}else r=t;if(!0!==i.call(this))throw this.raiseEarlyExitException(e,Ti.REPETITION_MANDATORY,t.ERR_MSG);{let e=this.doSingleRepetition(r);for(;!0===i.call(this)&&!0===e;)e=this.doSingleRepetition(r)}this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,t],i,ns,e,pi)}atLeastOneSepFirstInternal(e,t){const n=this.getKeyForAutomaticLookahead(is,e);this.atLeastOneSepFirstInternalLogic(e,t,n)}atLeastOneSepFirstInternalLogic(e,t,n){const r=t.DEF,i=t.SEP;if(!0!==this.getLaFuncFromCache(n).call(this))throw this.raiseEarlyExitException(e,Ti.REPETITION_MANDATORY_WITH_SEPARATOR,t.ERR_MSG);{r.call(this);const t=()=>this.tokenMatcher(this.LA(1),i);for(;!0===this.tokenMatcher(this.LA(1),i);)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,r,mi],t,is,e,mi)}}manyInternal(e,t){const n=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,t,n)}manyInternalLogic(e,t,n){let r,i=this.getLaFuncFromCache(n);if("function"!=typeof t){r=t.DEF;const e=t.GATE;if(void 0!==e){const t=i;i=()=>e.call(this)&&t.call(this)}}else r=t;let s=!0;for(;!0===i.call(this)&&!0===s;)s=this.doSingleRepetition(r);this.attemptInRepetitionRecovery(this.manyInternal,[e,t],i,768,e,hi,s)}manySepFirstInternal(e,t){const n=this.getKeyForAutomaticLookahead(rs,e);this.manySepFirstInternalLogic(e,t,n)}manySepFirstInternalLogic(e,t,n){const r=t.DEF,i=t.SEP;if(!0===this.getLaFuncFromCache(n).call(this)){r.call(this);const t=()=>this.tokenMatcher(this.LA(1),i);for(;!0===this.tokenMatcher(this.LA(1),i);)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,r,fi],t,rs,e,fi)}}repetitionSepSecondInternal(e,t,n,r,i){for(;n();)this.CONSUME(t),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,t,n,r,i],n,is,e,i)}doSingleRepetition(e){const t=this.getLexerPosition();return e.call(this),this.getLexerPosition()>t}orInternal(e,t){const n=this.getKeyForAutomaticLookahead(256,t),r=(0,nn.A)(e)?e:e.DEF,i=this.getLaFuncFromCache(n).call(this,r);if(void 0!==i)return r[i].ALT.call(this);this.raiseNoAltException(t,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),0===this.RULE_STACK.length&&!1===this.isAtEndOfInput()){const e=this.LA(1),t=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new qi(t,e))}}subruleInternal(e,t,n){let r;try{const i=void 0!==n?n.ARGS:void 0;return this.subruleIdx=t,r=e.apply(this,i),this.cstPostNonTerminal(r,void 0!==n&&void 0!==n.LABEL?n.LABEL:e.ruleName),r}catch(t){throw this.subruleInternalError(t,n,e.ruleName)}}subruleInternalError(e,t,n){throw Hi(e)&&void 0!==e.partialCstResult&&(this.cstPostNonTerminal(e.partialCstResult,void 0!==t&&void 0!==t.LABEL?t.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,t,n){let r;try{const t=this.LA(1);!0===this.tokenMatcher(t,e)?(this.consumeToken(),r=t):this.consumeInternalError(e,t,n)}catch(n){r=this.consumeInternalRecovery(e,t,n)}return this.cstPostTerminal(void 0!==n&&void 0!==n.LABEL?n.LABEL:e.name,r),r}consumeInternalError(e,t,n){let r;const i=this.LA(0);throw r=void 0!==n&&n.ERR_MSG?n.ERR_MSG:this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:t,previous:i,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Yi(r,t,i))}consumeInternalRecovery(e,t,n){if(!this.recoveryEnabled||"MismatchedTokenException"!==n.name||this.isBackTracking())throw n;{const r=this.getFollowsForInRuleRecovery(e,t);try{return this.tryInRuleRecovery(e,r)}catch(e){throw e.name===Ji?n:e}}}saveRecogState(){const e=this.errors,t=(0,mt.A)(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:t,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,t,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(t)}isBackTracking(){return 0!==this.isBackTrackingStack.length}getCurrRuleFullName(){const e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),zr)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},class{ACTION(e){return e.call(this)}consume(e,t,n){return this.consumeInternal(t,e,n)}subrule(e,t,n){return this.subruleInternal(t,e,n)}option(e,t){return this.optionInternal(t,e)}or(e,t){return this.orInternal(t,e)}many(e,t){return this.manyInternal(e,t)}atLeastOne(e,t){return this.atLeastOneInternal(e,t)}CONSUME(e,t){return this.consumeInternal(e,0,t)}CONSUME1(e,t){return this.consumeInternal(e,1,t)}CONSUME2(e,t){return this.consumeInternal(e,2,t)}CONSUME3(e,t){return this.consumeInternal(e,3,t)}CONSUME4(e,t){return this.consumeInternal(e,4,t)}CONSUME5(e,t){return this.consumeInternal(e,5,t)}CONSUME6(e,t){return this.consumeInternal(e,6,t)}CONSUME7(e,t){return this.consumeInternal(e,7,t)}CONSUME8(e,t){return this.consumeInternal(e,8,t)}CONSUME9(e,t){return this.consumeInternal(e,9,t)}SUBRULE(e,t){return this.subruleInternal(e,0,t)}SUBRULE1(e,t){return this.subruleInternal(e,1,t)}SUBRULE2(e,t){return this.subruleInternal(e,2,t)}SUBRULE3(e,t){return this.subruleInternal(e,3,t)}SUBRULE4(e,t){return this.subruleInternal(e,4,t)}SUBRULE5(e,t){return this.subruleInternal(e,5,t)}SUBRULE6(e,t){return this.subruleInternal(e,6,t)}SUBRULE7(e,t){return this.subruleInternal(e,7,t)}SUBRULE8(e,t){return this.subruleInternal(e,8,t)}SUBRULE9(e,t){return this.subruleInternal(e,9,t)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,t,n=Ns){if(cn(this.definedRulesNames,e)){const t={message:Zr.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:Cs.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(t)}this.definedRulesNames.push(e);const r=this.defineRule(e,t,n);return this[e]=r,r}OVERRIDE_RULE(e,t,n=Ns){const r=function(e,t,n){const r=[];let i;return cn(t,e)||(i=`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${n}<-as it is not defined in any of the super grammars `,r.push({message:i,type:Cs.INVALID_RULE_OVERRIDE,ruleName:e})),r}(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(r);const i=this.defineRule(e,t,n);return this[e]=i,i}BACKTRACK(e,t){return function(){this.isBackTrackingStack.push(1);const n=this.saveRecogState();try{return e.apply(this,t),!0}catch(e){if(Hi(e))return!1;throw e}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return e=(0,dt.A)(this.gastProductionsCache),(0,ft.A)(e,Qt);var e}},class{initErrorHandler(e){this._errors=[],this.errorMessageProvider=(0,pt.A)(e,"errorMessageProvider")?e.errorMessageProvider:Ss.errorMessageProvider}SAVE_ERROR(e){if(Hi(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:(0,mt.A)(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return(0,mt.A)(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,t,n){const r=this.getCurrRuleFullName(),i=bi(e,this.getGAstProductions()[r],t,this.maxLookahead)[0],s=[];for(let e=1;e<=this.maxLookahead;e++)s.push(this.LA(e));const o=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:i,actual:s,previous:this.LA(0),customUserDescription:n,ruleName:r});throw this.SAVE_ERROR(new Qi(o,this.LA(1),this.LA(0)))}raiseNoAltException(e,t){const n=this.getCurrRuleFullName(),r=Li(e,this.getGAstProductions()[n],this.maxLookahead),i=[];for(let e=1;e<=this.maxLookahead;e++)i.push(this.LA(e));const s=this.LA(0),o=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:r,actual:i,previous:s,customUserDescription:t,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Xi(o,this.LA(1),s))}},class{initContentAssist(){}computeContentAssist(e,t){const n=this.gastProductionsCache[e];if((0,Rn.A)(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return yi([n],t,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){const t=Bn(e.ruleStack),n=this.getGAstProductions()[t];return new li(n,e).startWalking()}},class{initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",(()=>{for(let e=0;e<10;e++){const t=e>0?e:"";this[`CONSUME${t}`]=function(t,n){return this.consumeInternalRecord(t,e,n)},this[`SUBRULE${t}`]=function(t,n){return this.subruleInternalRecord(t,e,n)},this[`OPTION${t}`]=function(t){return this.optionInternalRecord(t,e)},this[`OR${t}`]=function(t){return this.orInternalRecord(t,e)},this[`MANY${t}`]=function(t){this.manyInternalRecord(e,t)},this[`MANY_SEP${t}`]=function(t){this.manySepFirstInternalRecord(e,t)},this[`AT_LEAST_ONE${t}`]=function(t){this.atLeastOneInternalRecord(e,t)},this[`AT_LEAST_ONE_SEP${t}`]=function(t){this.atLeastOneSepFirstInternalRecord(e,t)}}this.consume=function(e,t,n){return this.consumeInternalRecord(t,e,n)},this.subrule=function(e,t,n){return this.subruleInternalRecord(t,e,n)},this.option=function(e,t){return this.optionInternalRecord(t,e)},this.or=function(e,t){return this.orInternalRecord(t,e)},this.many=function(e,t){this.manyInternalRecord(e,t)},this.atLeastOne=function(e,t){this.atLeastOneInternalRecord(e,t)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD}))}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",(()=>{const e=this;for(let t=0;t<10;t++){const n=t>0?t:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA}))}ACTION_RECORD(e){}BACKTRACK_RECORD(e,t){return()=>!0}LA_RECORD(e){return Is}topLevelRuleRecord(e,t){try{const n=new Kt({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),t.call(this),this.recordingProdStack.pop(),n}catch(e){if(!0!==e.KNOWN_RECORDER_ERROR)try{e.message=e.message+'\n\t This error was thrown during the "grammar recording phase" For more info see:\n\thttps://chevrotain.io/docs/guide/internals.html#grammar-recording'}catch(t){throw e}throw e}}optionInternalRecord(e,t){return Es.call(this,Vt,e,t)}atLeastOneInternalRecord(e,t){Es.call(this,Wt,t,e)}atLeastOneSepFirstInternalRecord(e,t){Es.call(this,Ht,t,e,gs)}manyInternalRecord(e,t){Es.call(this,zt,t,e)}manySepFirstInternalRecord(e,t){Es.call(this,Yt,t,e,gs)}orInternalRecord(e,t){return Rs.call(this,e,t)}subruleInternalRecord(e,t,n){if(xs(t),!e||!1===(0,pt.A)(e,"ruleName")){const n=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>\n inside top level rule: <${this.recordingProdStack[0].name}>`);throw n.KNOWN_RECORDER_ERROR=!0,n}const r=(0,Rr.A)(this.recordingProdStack),i=e.ruleName,s=new Bt({idx:t,nonTerminalName:i,label:null==n?void 0:n.LABEL,referencedRule:void 0});return r.definition.push(s),this.outputCst?vs:ms}consumeInternalRecord(e,t,n){if(xs(t),!Lr(e)){const n=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>\n inside top level rule: <${this.recordingProdStack[0].name}>`);throw n.KNOWN_RECORDER_ERROR=!0,n}const r=(0,Rr.A)(this.recordingProdStack),i=new qt({idx:t,terminalType:e,label:null==n?void 0:n.LABEL});return r.definition.push(i),Ts}},class{initPerformanceTracer(e){if((0,pt.A)(e,"traceInitPerf")){const t=e.traceInitPerf,n="number"==typeof t;this.traceInitMaxIdent=n?t:1/0,this.traceInitPerf=n?t>0:t}else this.traceInitMaxIdent=0,this.traceInitPerf=Ss.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,t){if(!0===this.traceInitPerf){this.traceInitIndent++;const n=new Array(this.traceInitIndent+1).join("\t");this.traceInitIndent`);const{time:r,value:i}=kr(t),s=r>10?console.warn:console.log;return this.traceInitIndent time: ${r}ms`),this.traceInitIndent--,i}return t()}}],Ls.forEach((e=>{const t=e.prototype;Object.getOwnPropertyNames(t).forEach((n=>{if("constructor"===n)return;const r=Object.getOwnPropertyDescriptor(t,n);r&&(r.get||r.set)?Object.defineProperty(ws.prototype,n,r):ws.prototype[n]=e.prototype[n]}))}));class _s extends Os{constructor(e,t=Ss){const n=(0,mt.A)(t);n.outputCst=!1,super(e,n)}}function $s(e,t,n){return`${e.name}_${t}_${n}`}const Ps=1,Ms=4,Ds=5,Us=7,Fs=8,Gs=9,Bs=10,Ks=11,js=12;class Vs{constructor(e){this.target=e}isEpsilon(){return!1}}class Ws extends Vs{constructor(e,t){super(e),this.tokenType=t}}class Hs extends Vs{constructor(e){super(e)}isEpsilon(){return!0}}class zs extends Vs{constructor(e,t,n){super(e),this.rule=t,this.followState=n}isEpsilon(){return!0}}function Ys(e,t,n){return n instanceof qt?eo(e,t,n.terminalType,n):n instanceof Bt?function(e,t,n){const r=n.referencedRule,i=e.ruleToStartState.get(r),s=ro(e,t,n,{type:Ps}),o=ro(e,t,n,{type:Ps});return io(s,new zs(i,r,o)),{left:s,right:o}}(e,t,n):n instanceof Xt?function(e,t,n){const r=ro(e,t,n,{type:Ps});Zs(e,r);const i=(0,ft.A)(n.definition,(n=>Ys(e,t,n)));return Js(e,t,r,n,...i)}(e,t,n):n instanceof Vt?function(e,t,n){const r=ro(e,t,n,{type:Ps});Zs(e,r);return function(e,t,n,r){const i=r.left;return no(i,r.right),e.decisionMap[$s(t,"Option",n.idx)]=i,r}(e,t,n,Js(e,t,r,n,Xs(e,t,n)))}(e,t,n):n instanceof zt?function(e,t,n){const r=ro(e,t,n,{type:Ds});Zs(e,r);return Qs(e,t,n,Js(e,t,r,n,Xs(e,t,n)))}(e,t,n):n instanceof Yt?function(e,t,n){const r=ro(e,t,n,{type:Ds});Zs(e,r);return Qs(e,t,n,Js(e,t,r,n,Xs(e,t,n)),eo(e,t,n.separator,n))}(e,t,n):n instanceof Wt?function(e,t,n){const r=ro(e,t,n,{type:Ms});Zs(e,r);return qs(e,t,n,Js(e,t,r,n,Xs(e,t,n)))}(e,t,n):n instanceof Ht?function(e,t,n){const r=ro(e,t,n,{type:Ms});Zs(e,r);return qs(e,t,n,Js(e,t,r,n,Xs(e,t,n)),eo(e,t,n.separator,n))}(e,t,n):Xs(e,t,n)}function Xs(e,t,n){const r=(0,bn.A)((0,ft.A)(n.definition,(n=>Ys(e,t,n))),(e=>void 0!==e));return 1===r.length?r[0]:0===r.length?void 0:function(e,t){const n=t.length;for(let r=0;re.alt))}get key(){let e="";for(const t in this.map)e+=t+":";return e}}function co(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map((e=>e.stateNumber.toString())).join("_")}`}var uo=n(6452);const lo=function(e,t){return e&&e.length?(0,gn.A)(e,(0,Lt.A)(t,2)):[]};function ho(e,t){const n={};return r=>{const i=r.toString();let s=n[i];return void 0!==s||(s={atnStartState:e,decision:t,states:{}},n[i]=s),s}}class fo{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,t){this.predicates[e]=t}toString(){let e="";const t=this.predicates.length;for(let n=0;nconsole.log(e)}initialize(e){this.atn=function(e){const t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};!function(e,t){const n=t.length;for(let r=0;r(0,ft.A)(e,(e=>e[0]))));if(go(u,!1)&&!i){const e=(0,Ln.A)(u,((e,t,n)=>((0,lt.A)(t,(t=>{t&&(e[t.tokenTypeIdx]=n,(0,lt.A)(t.categoryMatches,(t=>{e[t]=n})))})),e)),{});return r?function(t){var n;const r=this.LA(1),i=e[r.tokenTypeIdx];if(void 0!==t&&void 0!==i){const e=null===(n=t[i])||void 0===n?void 0:n.GATE;if(void 0!==e&&!1===e.call(this))return}return i}:function(){const t=this.LA(1);return e[t.tokenTypeIdx]}}return r?function(e){const t=new fo,n=void 0===e?0:e.length;for(let r=0;r(0,ft.A)(e,(e=>e[0]))));if(go(u)&&u[0][0]&&!i){const e=u[0],t=(0,An.A)(e);if(1===t.length&&(0,ht.A)(t[0].categoryMatches)){const e=t[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===e}}{const e=(0,Ln.A)(t,((e,t)=>(void 0!==t&&(e[t.tokenTypeIdx]=!0,(0,lt.A)(t.categoryMatches,(t=>{e[t]=!0}))),e)),{});return function(){const t=this.LA(1);return!0===e[t.tokenTypeIdx]}}}return function(){const e=yo.call(this,s,c,po,o);return"object"!=typeof e&&0===e}}}function go(e,t=!0){const n=new Set;for(const r of e){const e=new Set;for(const i of r){if(void 0===i){if(t)break;return!1}const r=[i.tokenTypeIdx].concat(i.categoryMatches);for(const t of r)if(n.has(t)){if(!e.has(t))return!1}else n.add(t),e.add(t)}}return!0}function yo(e,t,n,r){const i=e[t](n);let s=i.start;return void 0===s&&(s=Io(i,ko(function(e){const t=new ao,n=e.transitions.length;for(let r=0;r0&&!function(e){for(const t of e.elements)if(t.state.type===Us)return!0;return!1}(s))for(const e of i)s.add(e);return s}(t.configs,n,i);if(0===o.size)return xo(e,t,n,oo),oo;let a=ko(o);const c=function(e,t){let n;for(const r of e.elements)if(!0===t.is(r.alt))if(void 0===n)n=r.alt;else if(n!==r.alt)return;return n}(o,i);if(void 0!==c)a.isAcceptState=!0,a.prediction=c,a.configs.uniqueAlt=c;else if(function(e){if(function(e){for(const t of e.elements)if(t.state.type!==Us)return!1;return!0}(e))return!0;const t=function(e){const t=new Map;for(const n of e){const e=co(n,!1);let r=t.get(e);void 0===r&&(r={},t.set(e,r)),r[n.alt]=!0}return t}(e.elements);return function(e){for(const t of Array.from(e.values()))if(Object.keys(t).length>1)return!0;return!1}(t)&&!function(e){for(const t of Array.from(e.values()))if(1===Object.keys(t).length)return!0;return!1}(t)}(o)){const t=(0,uo.A)(o.alts);a.isAcceptState=!0,a.prediction=t,a.configs.uniqueAlt=t,vo.apply(this,[e,r,o.alts,s])}return a=xo(e,t,n,a),a}function vo(e,t,n,r){const i=[];for(let e=1;e<=t;e++)i.push(this.LA(e).tokenType);const s=e.atnStartState;r(function(e){const t=(0,ft.A)(e.prefixPath,(e=>Mr(e))).join(", "),n=0===e.production.idx?"":e.production.idx;let r=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(", ")}> in <${function(e){if(e instanceof Bt)return"SUBRULE";if(e instanceof Vt)return"OPTION";if(e instanceof Xt)return"OR";if(e instanceof Wt)return"AT_LEAST_ONE";if(e instanceof Ht)return"AT_LEAST_ONE_SEP";if(e instanceof Yt)return"MANY_SEP";if(e instanceof zt)return"MANY";if(e instanceof qt)return"CONSUME";throw Error("non exhaustive match")}(e.production)}${n}> inside <${e.topLevelRule.name}> Rule,\n<${t}> may appears as a prefix path in all these alternatives.\n`;return r+="See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES\nFor Further details.",r}({topLevelRule:s.rule,ambiguityIndices:n,production:s.production,prefixPath:i}))}function Eo(e,t,n){const r=ei(t.configs.elements,(e=>e.state.transitions));return{actualToken:n,possibleTokenTypes:lo(r.filter((e=>e instanceof Ws)).map((e=>e.tokenType)),(e=>e.tokenTypeIdx)),tokenPath:e}}function Ro(e,t){if(e instanceof Ws&&Xr(t,e.tokenType))return e.target}function ko(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}function xo(e,t,n,r){return r=Io(e,r),t.edges[n.tokenTypeIdx]=r,r}function Io(e,t){if(t===oo)return t;const n=t.configs.key,r=e.states[n];return void 0!==r?r:(t.configs.finalize(),e.states[n]=t,t)}function So(e,t){const n=e.state;if(n.type===Us){if(e.stack.length>0){const n=[...e.stack];So({state:n.pop(),alt:e.alt,stack:n},t)}else t.add(e);return}n.epsilonOnlyTransitions||t.add(e);const r=n.transitions.length;for(let i=0;i0&&(r.arguments=n),r},e.is=function(e){let t=e;return Ja.defined(t)&&Ja.string(t.title)&&Ja.string(t.command)}}(Ho||(Ho={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){const t=e;return Ja.objectLiteral(t)&&Ja.string(t.newText)&&_o.is(t.range)}}(zo||(zo={})),function(e){e.create=function(e,t,n){const r={label:e};return void 0!==t&&(r.needsConfirmation=t),void 0!==n&&(r.description=n),r},e.is=function(e){const t=e;return Ja.objectLiteral(t)&&Ja.string(t.label)&&(Ja.boolean(t.needsConfirmation)||void 0===t.needsConfirmation)&&(Ja.string(t.description)||void 0===t.description)}}(Yo||(Yo={})),function(e){e.is=function(e){const t=e;return Ja.string(t)}}(Xo||(Xo={})),function(e){e.replace=function(e,t,n){return{range:e,newText:t,annotationId:n}},e.insert=function(e,t,n){return{range:{start:e,end:e},newText:t,annotationId:n}},e.del=function(e,t){return{range:e,newText:"",annotationId:t}},e.is=function(e){const t=e;return zo.is(t)&&(Yo.is(t.annotationId)||Xo.is(t.annotationId))}}(qo||(qo={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){let t=e;return Ja.defined(t)&&ia.is(t.textDocument)&&Array.isArray(t.edits)}}(Qo||(Qo={})),function(e){e.create=function(e,t,n){let r={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(r.options=t),void 0!==n&&(r.annotationId=n),r},e.is=function(e){let t=e;return t&&"create"===t.kind&&Ja.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||Ja.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||Ja.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||Xo.is(t.annotationId))}}(Zo||(Zo={})),function(e){e.create=function(e,t,n,r){let i={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(i.options=n),void 0!==r&&(i.annotationId=r),i},e.is=function(e){let t=e;return t&&"rename"===t.kind&&Ja.string(t.oldUri)&&Ja.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||Ja.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||Ja.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||Xo.is(t.annotationId))}}(Jo||(Jo={})),function(e){e.create=function(e,t,n){let r={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(r.options=t),void 0!==n&&(r.annotationId=n),r},e.is=function(e){let t=e;return t&&"delete"===t.kind&&Ja.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||Ja.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||Ja.boolean(t.options.ignoreIfNotExists)))&&(void 0===t.annotationId||Xo.is(t.annotationId))}}(ea||(ea={})),function(e){e.is=function(e){let t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every((e=>Ja.string(e.kind)?Zo.is(e)||Jo.is(e)||ea.is(e):Qo.is(e))))}}(ta||(ta={})),function(e){e.create=function(e){return{uri:e}},e.is=function(e){let t=e;return Ja.defined(t)&&Ja.string(t.uri)}}(na||(na={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){let t=e;return Ja.defined(t)&&Ja.string(t.uri)&&Ja.integer(t.version)}}(ra||(ra={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){let t=e;return Ja.defined(t)&&Ja.string(t.uri)&&(null===t.version||Ja.integer(t.version))}}(ia||(ia={})),function(e){e.create=function(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}},e.is=function(e){let t=e;return Ja.defined(t)&&Ja.string(t.uri)&&Ja.string(t.languageId)&&Ja.integer(t.version)&&Ja.string(t.text)}}(sa||(sa={})),function(e){e.PlainText="plaintext",e.Markdown="markdown",e.is=function(t){const n=t;return n===e.PlainText||n===e.Markdown}}(oa||(oa={})),function(e){e.is=function(e){const t=e;return Ja.objectLiteral(e)&&oa.is(t.kind)&&Ja.string(t.value)}}(aa||(aa={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(ca||(ca={})),function(e){e.PlainText=1,e.Snippet=2}(ua||(ua={})),function(e){e.Deprecated=1}(la||(la={})),function(e){e.create=function(e,t,n){return{newText:e,insert:t,replace:n}},e.is=function(e){const t=e;return t&&Ja.string(t.newText)&&_o.is(t.insert)&&_o.is(t.replace)}}(da||(da={})),function(e){e.asIs=1,e.adjustIndentation=2}(ha||(ha={})),function(e){e.is=function(e){const t=e;return t&&(Ja.string(t.detail)||void 0===t.detail)&&(Ja.string(t.description)||void 0===t.description)}}(fa||(fa={})),function(e){e.create=function(e){return{label:e}}}(pa||(pa={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(ma||(ma={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){const t=e;return Ja.string(t)||Ja.objectLiteral(t)&&Ja.string(t.language)&&Ja.string(t.value)}}(ga||(ga={})),function(e){e.is=function(e){let t=e;return!!t&&Ja.objectLiteral(t)&&(aa.is(t.contents)||ga.is(t.contents)||Ja.typedArray(t.contents,ga.is))&&(void 0===e.range||_o.is(e.range))}}(ya||(ya={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(Aa||(Aa={})),function(e){e.create=function(e,t,...n){let r={label:e};return Ja.defined(t)&&(r.documentation=t),Ja.defined(n)?r.parameters=n:r.parameters=[],r}}(Ta||(Ta={})),function(e){e.Text=1,e.Read=2,e.Write=3}(va||(va={})),function(e){e.create=function(e,t){let n={range:e};return Ja.number(t)&&(n.kind=t),n}}(Ea||(Ea={})),function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(Ra||(Ra={})),function(e){e.Deprecated=1}(ka||(ka={})),function(e){e.create=function(e,t,n,r,i){let s={name:e,kind:t,location:{uri:r,range:n}};return i&&(s.containerName=i),s}}(xa||(xa={})),function(e){e.create=function(e,t,n,r){return void 0!==r?{name:e,kind:t,location:{uri:n,range:r}}:{name:e,kind:t,location:{uri:n}}}}(Ia||(Ia={})),function(e){e.create=function(e,t,n,r,i,s){let o={name:e,detail:t,kind:n,range:r,selectionRange:i};return void 0!==s&&(o.children=s),o},e.is=function(e){let t=e;return t&&Ja.string(t.name)&&Ja.number(t.kind)&&_o.is(t.range)&&_o.is(t.selectionRange)&&(void 0===t.detail||Ja.string(t.detail))&&(void 0===t.deprecated||Ja.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))&&(void 0===t.tags||Array.isArray(t.tags))}}(Sa||(Sa={})),function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"}(Na||(Na={})),function(e){e.Invoked=1,e.Automatic=2}(Ca||(Ca={})),function(e){e.create=function(e,t,n){let r={diagnostics:e};return null!=t&&(r.only=t),null!=n&&(r.triggerKind=n),r},e.is=function(e){let t=e;return Ja.defined(t)&&Ja.typedArray(t.diagnostics,Wo.is)&&(void 0===t.only||Ja.typedArray(t.only,Ja.string))&&(void 0===t.triggerKind||t.triggerKind===Ca.Invoked||t.triggerKind===Ca.Automatic)}}(wa||(wa={})),function(e){e.create=function(e,t,n){let r={title:e},i=!0;return"string"==typeof t?(i=!1,r.kind=t):Ho.is(t)?r.command=t:r.edit=t,i&&void 0!==n&&(r.kind=n),r},e.is=function(e){let t=e;return t&&Ja.string(t.title)&&(void 0===t.diagnostics||Ja.typedArray(t.diagnostics,Wo.is))&&(void 0===t.kind||Ja.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||Ho.is(t.command))&&(void 0===t.isPreferred||Ja.boolean(t.isPreferred))&&(void 0===t.edit||ta.is(t.edit))}}(La||(La={})),function(e){e.create=function(e,t){let n={range:e};return Ja.defined(t)&&(n.data=t),n},e.is=function(e){let t=e;return Ja.defined(t)&&_o.is(t.range)&&(Ja.undefined(t.command)||Ho.is(t.command))}}(ba||(ba={})),function(e){e.create=function(e,t){return{tabSize:e,insertSpaces:t}},e.is=function(e){let t=e;return Ja.defined(t)&&Ja.uinteger(t.tabSize)&&Ja.boolean(t.insertSpaces)}}(Oa||(Oa={})),function(e){e.create=function(e,t,n){return{range:e,target:t,data:n}},e.is=function(e){let t=e;return Ja.defined(t)&&_o.is(t.range)&&(Ja.undefined(t.target)||Ja.string(t.target))}}(_a||(_a={})),function(e){e.create=function(e,t){return{range:e,parent:t}},e.is=function(t){let n=t;return Ja.objectLiteral(n)&&_o.is(n.range)&&(void 0===n.parent||e.is(n.parent))}}($a||($a={})),function(e){e.namespace="namespace",e.type="type",e.class="class",e.enum="enum",e.interface="interface",e.struct="struct",e.typeParameter="typeParameter",e.parameter="parameter",e.variable="variable",e.property="property",e.enumMember="enumMember",e.event="event",e.function="function",e.method="method",e.macro="macro",e.keyword="keyword",e.modifier="modifier",e.comment="comment",e.string="string",e.number="number",e.regexp="regexp",e.operator="operator",e.decorator="decorator"}(Pa||(Pa={})),function(e){e.declaration="declaration",e.definition="definition",e.readonly="readonly",e.static="static",e.deprecated="deprecated",e.abstract="abstract",e.async="async",e.modification="modification",e.documentation="documentation",e.defaultLibrary="defaultLibrary"}(Ma||(Ma={})),function(e){e.is=function(e){const t=e;return Ja.objectLiteral(t)&&(void 0===t.resultId||"string"==typeof t.resultId)&&Array.isArray(t.data)&&(0===t.data.length||"number"==typeof t.data[0])}}(Da||(Da={})),function(e){e.create=function(e,t){return{range:e,text:t}},e.is=function(e){const t=e;return null!=t&&_o.is(t.range)&&Ja.string(t.text)}}(Ua||(Ua={})),function(e){e.create=function(e,t,n){return{range:e,variableName:t,caseSensitiveLookup:n}},e.is=function(e){const t=e;return null!=t&&_o.is(t.range)&&Ja.boolean(t.caseSensitiveLookup)&&(Ja.string(t.variableName)||void 0===t.variableName)}}(Fa||(Fa={})),function(e){e.create=function(e,t){return{range:e,expression:t}},e.is=function(e){const t=e;return null!=t&&_o.is(t.range)&&(Ja.string(t.expression)||void 0===t.expression)}}(Ga||(Ga={})),function(e){e.create=function(e,t){return{frameId:e,stoppedLocation:t}},e.is=function(e){const t=e;return Ja.defined(t)&&_o.is(e.stoppedLocation)}}(Ba||(Ba={})),function(e){e.Type=1,e.Parameter=2,e.is=function(e){return 1===e||2===e}}(Ka||(Ka={})),function(e){e.create=function(e){return{value:e}},e.is=function(e){const t=e;return Ja.objectLiteral(t)&&(void 0===t.tooltip||Ja.string(t.tooltip)||aa.is(t.tooltip))&&(void 0===t.location||$o.is(t.location))&&(void 0===t.command||Ho.is(t.command))}}(ja||(ja={})),function(e){e.create=function(e,t,n){const r={position:e,label:t};return void 0!==n&&(r.kind=n),r},e.is=function(e){const t=e;return Ja.objectLiteral(t)&&Oo.is(t.position)&&(Ja.string(t.label)||Ja.typedArray(t.label,ja.is))&&(void 0===t.kind||Ka.is(t.kind))&&void 0===t.textEdits||Ja.typedArray(t.textEdits,zo.is)&&(void 0===t.tooltip||Ja.string(t.tooltip)||aa.is(t.tooltip))&&(void 0===t.paddingLeft||Ja.boolean(t.paddingLeft))&&(void 0===t.paddingRight||Ja.boolean(t.paddingRight))}}(Va||(Va={})),function(e){e.createSnippet=function(e){return{kind:"snippet",value:e}}}(Wa||(Wa={})),function(e){e.create=function(e,t,n,r){return{insertText:e,filterText:t,range:n,command:r}}}(Ha||(Ha={})),function(e){e.create=function(e){return{items:e}}}(za||(za={})),function(e){e.Invoked=0,e.Automatic=1}(Ya||(Ya={})),function(e){e.create=function(e,t){return{range:e,text:t}}}(Xa||(Xa={})),function(e){e.create=function(e,t){return{triggerKind:e,selectedCompletionInfo:t}}}(qa||(qa={})),function(e){e.is=function(e){const t=e;return Ja.objectLiteral(t)&&wo.is(t.uri)&&Ja.string(t.name)}}(Qa||(Qa={})),function(e){function t(e,n){if(e.length<=1)return e;const r=e.length/2|0,i=e.slice(0,r),s=e.slice(r);t(i,n),t(s,n);let o=0,a=0,c=0;for(;o{let n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n})),s=r.length;for(let t=i.length-1;t>=0;t--){let n=i[t],o=e.offsetAt(n.range.start),a=e.offsetAt(n.range.end);if(!(a<=s))throw new Error("Overlapping edit");r=r.substring(0,o)+n.newText+r.substring(a,r.length),s=o}return r}}(Za||(Za={}));class ec{constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){let e=[],t=this._content,n=!0;for(let r=0;r0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),n=0,r=t.length;if(0===r)return Oo.create(0,e);for(;ne?r=i:n=i+1}let i=n-1;return Oo.create(i,e-t[i])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let n=t[e.line],r=e.line+1=0&&t.content.splice(n,1)}}construct(e){const t=this.current;"string"==typeof e.$type&&(this.current.astNode=e),e.$cstNode=t;const n=this.nodeStack.pop();0===(null==n?void 0:n.content.length)&&this.removeNode(n)}addHiddenTokens(e){for(const t of e){const e=new rc(t.startOffset,t.image.length,T(t),t.tokenType,!0);e.root=this.rootNode,this.addHiddenToken(this.rootNode,e)}}addHiddenToken(e,t){const{offset:n,end:r}=t;for(let i=0;io&&r=0;e--){const t=this.content[e];if(!t.hidden)return t}return this.content[this.content.length-1]}}class sc extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,sc.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,t,...n){return this.addParents(n),super.splice(e,t,...n)}addParents(e){for(const t of e)t.container=this.parent}}class oc extends ic{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=null!=e?e:""}}const ac=Symbol("Datatype");function cc(e){return e.$type===ac}const uc=e=>e.endsWith("​")?e:e+"​";class lc{constructor(e){this._unorderedGroups=new Map,this.lexer=e.parser.Lexer;const t=this.lexer.definition;this.wrapper=new gc(t,Object.assign(Object.assign({},e.parser.ParserConfig),{errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,t){this.wrapper.wrapOr(e,t)}optional(e,t){this.wrapper.wrapOption(e,t)}many(e,t){this.wrapper.wrapMany(e,t)}atLeastOne(e,t){this.wrapper.wrapAtLeastOne(e,t)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}}class dc extends lc{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new tc,this.stack=[],this.assignmentMap=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,t){const n=e.fragment?void 0:tt(e)?ac:it(e),r=this.wrapper.DEFINE_RULE(uc(e.name),this.startImplementation(n,t).bind(this));return e.entry&&(this.mainRule=r),r}parse(e){this.nodeBuilder.buildRootNode(e);const t=this.lexer.tokenize(e);this.wrapper.input=t.tokens;const n=this.mainRule.call(this.wrapper,{});return this.nodeBuilder.addHiddenTokens(t.hidden),this.unorderedGroups.clear(),{value:n,lexerErrors:t.errors,parserErrors:this.wrapper.errors}}startImplementation(e,t){return n=>{if(!this.isRecording()){const t={$type:e};this.stack.push(t),e===ac&&(t.value="")}let r;try{r=t(n)}catch(e){r=void 0}return this.isRecording()||void 0!==r||(r=this.construct()),r}}consume(e,t,n){const r=this.wrapper.wrapConsume(e,t);if(!this.isRecording()&&this.isValidToken(r)){const e=this.nodeBuilder.buildLeafNode(r,n),{assignment:t,isCrossRef:i}=this.getAssignment(n),s=this.current;if(t){const s=oe(n)?r.image:this.converter.convert(r.image,e);this.assign(t.operator,t.feature,s,e,i)}else if(cc(s)){let t=r.image;oe(n)||(t=this.converter.convert(t,e).toString()),s.value+=t}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&"number"==typeof e.endOffset&&!isNaN(e.endOffset)}subrule(e,t,n,r){let i;this.isRecording()||(i=this.nodeBuilder.buildCompositeNode(n));const s=this.wrapper.wrapSubrule(e,t,r);!this.isRecording()&&i&&i.length>0&&this.performSubruleAssignment(s,n,i)}performSubruleAssignment(e,t,n){const{assignment:r,isCrossRef:i}=this.getAssignment(t);if(r)this.assign(r.operator,r.feature,e,n,i);else if(!r){const t=this.current;if(cc(t))t.value+=e.toString();else if("object"==typeof e&&e){const n=e.$type,r=this.assignWithoutOverride(e,t);n&&(r.$type=n);const i=r;this.stack.pop(),this.stack.push(i)}}}action(e,t){if(!this.isRecording()){let n=this.current;if(!n.$cstNode&&t.feature&&t.operator){n=this.construct(!1);const e=n.$cstNode.feature;this.nodeBuilder.buildCompositeNode(e)}const r={$type:e};this.stack.pop(),this.stack.push(r),t.feature&&t.operator&&this.assign(t.operator,t.feature,n,n.$cstNode,!1)}}construct(e=!0){if(this.isRecording())return;const t=this.current;return function(e){for(const[t,n]of Object.entries(e))t.startsWith("$")||(Array.isArray(n)?n.forEach(((n,i)=>{r(n)&&(n.$container=e,n.$containerProperty=t,n.$containerIndex=i)})):r(n)&&(n.$container=e,n.$containerProperty=t))}(t),this.nodeBuilder.construct(t),e&&this.stack.pop(),cc(t)?this.converter.convert(t.value,t.$cstNode):(function(e,t){const n=e.getTypeMetaData(t.$type),r=t;for(const e of n.properties)void 0!==e.defaultValue&&void 0===r[e.name]&&(r[e.name]=Ce(e.defaultValue))}(this.astReflection,t),t)}getAssignment(e){if(!this.assignmentMap.has(e)){const t=Ee(e,Z);this.assignmentMap.set(e,{assignment:t,isCrossRef:!!t&&te(t.terminal)})}return this.assignmentMap.get(e)}assign(e,t,n,r,i){const s=this.current;let o;switch(o=i&&"string"==typeof n?this.linker.buildReference(s,t,r,n):n,e){case"=":s[t]=o;break;case"?=":s[t]=!0;break;case"+=":Array.isArray(s[t])||(s[t]=[]),s[t].push(o)}}assignWithoutOverride(e,t){for(const[n,r]of Object.entries(t)){const t=e[n];void 0===t?e[n]=r:Array.isArray(t)&&Array.isArray(r)&&(r.push(...t),e[n]=r)}return e}get definitionErrors(){return this.wrapper.definitionErrors}}class hc{buildMismatchTokenMessage(e){return qr.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return qr.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return qr.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return qr.buildEarlyExitMessage(e)}}class fc extends hc{buildMismatchTokenMessage({expected:e,actual:t}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${t.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}}class pc extends lc{constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();const t=this.lexer.tokenize(e);return this.tokens=t.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,t){const n=this.wrapper.DEFINE_RULE(uc(e.name),this.startImplementation(t).bind(this));return e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return t=>{const n=this.keepStackSize();try{e(t)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){const e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,t,n){this.wrapper.wrapConsume(e,t),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,t,n,r){this.before(n),this.wrapper.wrapSubrule(e,t,r),this.after(n)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){const t=this.elementStack.lastIndexOf(e);t>=0&&this.elementStack.splice(t)}}get currIdx(){return this.wrapper.currIdx}}const mc={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new fc};class gc extends _s{constructor(e,t){const n=t&&"maxLookahead"in t;super(e,Object.assign(Object.assign(Object.assign({},mc),{lookaheadStrategy:n?new os({maxLookahead:t.maxLookahead}):new mo}),t))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,t){return this.RULE(e,t)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,t){return this.consume(e,t)}wrapSubrule(e,t,n){return this.subrule(e,t,{ARGS:[n]})}wrapOr(e,t){this.or(e,t)}wrapOption(e,t){this.option(e,t)}wrapMany(e,t){this.many(e,t)}wrapAtLeastOne(e,t){this.atLeastOne(e,t)}}function yc(e,t,n){return function(e,t){const n=Xe(t,!1),r=p(t.rules).filter(G).filter((e=>n.has(e)));for(const t of r){const n=Object.assign(Object.assign({},e),{consume:1,optional:1,subrule:1,many:1,or:1});n.rules.set(t.name,e.parser.rule(t,Ac(n,t.definition)))}}({parser:t,tokens:n,rules:new Map,ruleNames:new Map},e),t}function Ac(e,t,n=!1){let r;if(oe(t))r=function(e,t){const n=e.consume++,r=e.tokens[t.value];if(!r)throw new Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(n,r,t)}(e,t);else if(Y(t))r=function(e,t){const n=it(t);return()=>e.parser.action(n,t)}(e,t);else if(Z(t))r=Ac(e,t.terminal);else if(te(t))r=Ec(e,t);else if(le(t))r=function(e,t){const n=t.rule.ref;if(G(n)){const r=e.subrule++,i=t.arguments.length>0?function(e,t){const n=t.map((e=>Tc(e.value)));return t=>{const r={};for(let i=0;i({});return s=>e.parser.subrule(r,kc(e,n),t,i(s))}if(V(n)){const r=e.consume++,i=xc(e,n.name);return()=>e.parser.consume(r,i,t)}if(!n)throw new k(t.$cstNode,`Undefined rule type: ${t.$type}`);x()}(e,t);else if(q(t))r=function(e,t){if(1===t.elements.length)return Ac(e,t.elements[0]);{const n=[];for(const r of t.elements){const t={ALT:Ac(e,r,!0)},i=vc(r);i&&(t.GATE=Tc(i)),n.push(t)}const r=e.or++;return t=>e.parser.alternatives(r,n.map((e=>{const n={ALT:()=>e.ALT(t)},r=e.GATE;return r&&(n.GATE=()=>r(t)),n})))}}(e,t);else if(ge(t))r=function(e,t){if(1===t.elements.length)return Ac(e,t.elements[0]);const n=[];for(const r of t.elements){const t={ALT:Ac(e,r,!0)},i=vc(r);i&&(t.GATE=Tc(i)),n.push(t)}const r=e.or++,i=(e,t)=>`uGroup_${e}_${t.getRuleStack().join("-")}`,s=Rc(e,vc(t),(t=>e.parser.alternatives(r,n.map(((n,s)=>{const o={ALT:()=>!0},a=e.parser;o.ALT=()=>{if(n.ALT(t),!a.isRecording()){const e=i(r,a);a.unorderedGroups.get(e)||a.unorderedGroups.set(e,[]);const t=a.unorderedGroups.get(e);void 0===(null==t?void 0:t[s])&&(t[s]=!0)}};const c=n.GATE;return o.GATE=c?()=>c(t):()=>{const e=a.unorderedGroups.get(i(r,a));return!(null==e?void 0:e[s])},o})))),"*");return t=>{s(t),e.parser.isRecording()||e.parser.unorderedGroups.delete(i(r,e.parser))}}(e,t);else if(ie(t))r=function(e,t){const n=t.elements.map((t=>Ac(e,t)));return e=>n.forEach((t=>t(e)))}(e,t);else{if(i=t,!ve.isInstance(i,ne))throw new k(t.$cstNode,`Unexpected element type: ${t.$type}`);{const n=e.consume++;r=()=>e.parser.consume(n,zr,t)}}var i;return Rc(e,n?void 0:vc(t),r,t.cardinality)}function Tc(e){if(t=e,ve.isInstance(t,O)){const t=Tc(e.left),n=Tc(e.right);return e=>t(e)||n(e)}if(function(e){return ve.isInstance(e,b)}(e)){const t=Tc(e.left),n=Tc(e.right);return e=>t(e)&&n(e)}if(function(e){return ve.isInstance(e,D)}(e)){const t=Tc(e.value);return e=>!t(e)}if(function(e){return ve.isInstance(e,U)}(e)){const t=e.parameter.ref.name;return e=>void 0!==e&&!0===e[t]}if(function(e){return ve.isInstance(e,L)}(e)){const t=Boolean(e.true);return()=>t}var t;x()}function vc(e){if(ie(e))return e.guardCondition}function Ec(e,t,n=t.terminal){if(n){if(le(n)&&G(n.rule.ref)){const r=e.subrule++;return i=>e.parser.subrule(r,kc(e,n.rule.ref),t,i)}if(le(n)&&V(n.rule.ref)){const r=e.consume++,i=xc(e,n.rule.ref.name);return()=>e.parser.consume(r,i,t)}if(oe(n)){const r=e.consume++,i=xc(e,n.value);return()=>e.parser.consume(r,i,t)}throw new Error("Could not build cross reference parser")}{if(!t.type.ref)throw new Error("Could not resolve reference to type: "+t.type.$refText);const n=Je(t.type.ref),r=null==n?void 0:n.terminal;if(!r)throw new Error("Could not find name assignment for type: "+it(t.type.ref));return Ec(e,t,r)}}function Rc(e,t,n,r){const i=t&&Tc(t);if(!r){if(i){const t=e.or++;return r=>e.parser.alternatives(t,[{ALT:()=>n(r),GATE:()=>i(r)},{ALT:bs(),GATE:()=>!i(r)}])}return n}if("*"===r){const t=e.many++;return r=>e.parser.many(t,{DEF:()=>n(r),GATE:i?()=>i(r):void 0})}if("+"===r){const t=e.many++;if(i){const r=e.or++;return s=>e.parser.alternatives(r,[{ALT:()=>e.parser.atLeastOne(t,{DEF:()=>n(s)}),GATE:()=>i(s)},{ALT:bs(),GATE:()=>!i(s)}])}return r=>e.parser.atLeastOne(t,{DEF:()=>n(r)})}if("?"===r){const t=e.optional++;return r=>e.parser.optional(t,{DEF:()=>n(r),GATE:i?()=>i(r):void 0})}x()}function kc(e,t){const n=function(e,t){if(G(t))return t.name;if(e.ruleNames.has(t))return e.ruleNames.get(t);{let n=t,r=n.$container,i=t.$type;for(;!G(r);)(ie(r)||q(r)||ge(r))&&(i=r.elements.indexOf(n).toString()+":"+i),n=r,r=r.$container;return i=r.name+":"+i,e.ruleNames.set(t,i),i}}(e,t),r=e.rules.get(n);if(!r)throw new Error(`Rule "${n}" not found."`);return r}function xc(e,t){const n=e.tokens[t];if(!n)throw new Error(`Token "${t}" not found."`);return n}class Ic{buildTokens(e,t){const n=p(Xe(e,!1)),r=this.buildTerminalTokens(n),i=this.buildKeywordTokens(n,r,t);return r.forEach((e=>{const t=e.PATTERN;"object"==typeof t&&t&&"test"in t&&ze(t)?i.unshift(e):i.push(e)})),i}buildTerminalTokens(e){return e.filter(V).filter((e=>!e.fragment)).map((e=>this.buildTerminalToken(e))).toArray()}buildTerminalToken(e){const t=st(e),n=this.requiresCustomPattern(t)?this.regexPatternFunction(t):t,r={name:e.name,PATTERN:n,LINE_BREAKS:!0};return e.hidden&&(r.GROUP=ze(t)?Pr.SKIPPED:"hidden"),r}requiresCustomPattern(e){return!!e.flags.includes("u")||!(!e.source.includes("?<=")&&!e.source.includes("?(t.lastIndex=n,t.exec(e))}buildKeywordTokens(e,t,n){return e.filter(G).flatMap((e=>xe(e).filter(oe))).distinct((e=>e.value)).toArray().sort(((e,t)=>t.value.length-e.value.length)).map((e=>this.buildKeywordToken(e,t,Boolean(null==n?void 0:n.caseInsensitive))))}buildKeywordToken(e,t,n){return{name:e.value,PATTERN:this.buildKeywordPattern(e,n),LONGER_ALT:this.findLongerAlt(e,t)}}buildKeywordPattern(e,t){return t?new RegExp(function(e){return Array.prototype.map.call(e,(e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:Ye(e))).join("")}(e.value)):e.value}findLongerAlt(e,t){return t.reduce(((t,n)=>{const r=null==n?void 0:n.PATTERN;return(null==r?void 0:r.source)&&function(e,t){const n=function(e){"string"==typeof e&&(e=new RegExp(e));const t=e,n=e.source;let r=0;return new RegExp(function e(){let i,s="";function o(e){s+=n.substr(r,e),r+=e}function a(e){s+="(?:"+n.substr(r,e)+"|$)",r+=e}for(;r",r)-r+1);break;default:a(2)}break;case"[":i=/\[(?:\\.|.)*?\]/g,i.lastIndex=r,i=i.exec(n)||[],a(i[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":o(1);break;case"{":i=/\{\d+,?\d*\}/g,i.lastIndex=r,i=i.exec(n),i?o(i[0].length):a(1);break;case"(":if("?"===n[r+1])switch(n[r+2]){case":":s+="(?:",r+=3,s+=e()+"|$)";break;case"=":s+="(?=",r+=3,s+=e()+")";break;case"!":i=r,r+=3,e(),s+=n.substr(i,r-i);break;case"<":switch(n[r+3]){case"=":case"!":i=r,r+=4,e(),s+=n.substr(i,r-i);break;default:o(n.indexOf(">",r)-r+1),s+=e()+"|$)"}}else o(1),s+=e()+"|$)";break;case")":return++r,s;default:a(1)}return s}(),e.flags)}(e),r=t.match(n);return!!r&&r[0].length>0}("^"+r.source+"$",e.value)&&t.push(n),t}),[])}}class Sc{convert(e,t){let n=t.grammarSource;if(te(n)&&(n=function(e){if(e.terminal)return e.terminal;if(e.type.ref){const t=Je(e.type.ref);return null==t?void 0:t.terminal}}(n)),le(n)){const r=n.rule.ref;if(!r)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(r,e,t)}return e}runConverter(e,t,n){var r;switch(e.name.toUpperCase()){case"INT":return Nc.convertInt(t);case"STRING":return Nc.convertString(t);case"ID":return Nc.convertID(t)}switch(null===(r=function(e){var t,n,r;return V(e)?null!==(n=null===(t=e.type)||void 0===t?void 0:t.name)&&void 0!==n?n:"string":tt(e)?e.name:null!==(r=rt(e))&&void 0!==r?r:e.name}(e))||void 0===r?void 0:r.toLowerCase()){case"number":return Nc.convertNumber(t);case"boolean":return Nc.convertBoolean(t);case"bigint":return Nc.convertBigint(t);case"date":return Nc.convertDate(t);default:return t}}}var Nc;!function(e){function t(e){switch(e){case"b":return"\b";case"f":return"\f";case"n":return"\n";case"r":return"\r";case"t":return"\t";case"v":return"\v";case"0":return"\0";default:return e}}e.convertString=function(e){let n="";for(let r=1;r=10&&(wc=t,await new Promise((e=>{"undefined"==typeof setImmediate?setTimeout(e,0):setImmediate(e)}))),e.isCancellationRequested)throw Lc}class _c{constructor(){this.promise=new Promise(((e,t)=>{this.resolve=t=>(e(t),this),this.reject=e=>(t(e),this)}))}}class $c{constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){const t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(e,t){for(const t of e)if($c.isIncremental(t)){const e=Gc(t.range),n=this.offsetAt(e.start),r=this.offsetAt(e.end);this._content=this._content.substring(0,n)+t.text+this._content.substring(r,this._content.length);const i=Math.max(e.start.line,0),s=Math.max(e.end.line,0);let o=this._lineOffsets;const a=Uc(t.text,!1,n);if(s-i===a.length)for(let e=0,t=a.length;ee?r=i:n=i+1}const i=n-1;return{line:i,character:(e=this.ensureBeforeEOL(e,t[i]))-t[i]}}offsetAt(e){const t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;const n=t[e.line];if(e.character<=0)return n;const r=e.line+1t&&Fc(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){const t=e;return null!=t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)}static isFull(e){const t=e;return null!=t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength}}var Pc,Mc;function Dc(e,t){if(e.length<=1)return e;const n=e.length/2|0,r=e.slice(0,n),i=e.slice(n);Dc(r,t),Dc(i,t);let s=0,o=0,a=0;for(;sn.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function Bc(e){const t=Gc(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){e.create=function(e,t,n,r){return new $c(e,t,n,r)},e.update=function(e,t,n){if(e instanceof $c)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},e.applyEdits=function(e,t){const n=e.getText(),r=Dc(t.map(Bc),((e,t)=>{const n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}));let i=0;const s=[];for(const t of r){const r=e.offsetAt(t.range.start);if(ri&&s.push(n.substring(i,r)),t.newText.length&&s.push(t.newText),i=e.offsetAt(t.range.end)}return s.push(n.substr(i)),s.join("")}}(Pc||(Pc={})),(()=>{var e={470:e=>{function t(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}function n(e,t){for(var n,r="",i=0,s=-1,o=0,a=0;a<=e.length;++a){if(a2){var c=r.lastIndexOf("/");if(c!==r.length-1){-1===c?(r="",i=0):i=(r=r.slice(0,c)).length-1-r.lastIndexOf("/"),s=a,o=0;continue}}else if(2===r.length||1===r.length){r="",i=0,s=a,o=0;continue}t&&(r.length>0?r+="/..":r="..",i=2)}else r.length>0?r+="/"+e.slice(s+1,a):r=e.slice(s+1,a),i=a-s-1;s=a,o=0}else 46===n&&-1!==o?++o:o=-1}return r}var r={resolve:function(){for(var e,r="",i=!1,s=arguments.length-1;s>=-1&&!i;s--){var o;s>=0?o=arguments[s]:(void 0===e&&(e=process.cwd()),o=e),t(o),0!==o.length&&(r=o+"/"+r,i=47===o.charCodeAt(0))}return r=n(r,!i),i?r.length>0?"/"+r:"/":r.length>0?r:"."},normalize:function(e){if(t(e),0===e.length)return".";var r=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=n(e,!r)).length||r||(e="."),e.length>0&&i&&(e+="/"),r?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var e,n=0;n0&&(void 0===e?e=i:e+="/"+i)}return void 0===e?".":r.normalize(e)},relative:function(e,n){if(t(e),t(n),e===n)return"";if((e=r.resolve(e))===(n=r.resolve(n)))return"";for(var i=1;iu){if(47===n.charCodeAt(a+d))return n.slice(a+d+1);if(0===d)return n.slice(a+d)}else o>u&&(47===e.charCodeAt(i+d)?l=d:0===d&&(l=0));break}var h=e.charCodeAt(i+d);if(h!==n.charCodeAt(a+d))break;47===h&&(l=d)}var f="";for(d=i+l+1;d<=s;++d)d!==s&&47!==e.charCodeAt(d)||(0===f.length?f+="..":f+="/..");return f.length>0?f+n.slice(a+l):(a+=l,47===n.charCodeAt(a)&&++a,n.slice(a))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var n=e.charCodeAt(0),r=47===n,i=-1,s=!0,o=e.length-1;o>=1;--o)if(47===(n=e.charCodeAt(o))){if(!s){i=o;break}}else s=!1;return-1===i?r?"/":".":r&&1===i?"//":e.slice(0,i)},basename:function(e,n){if(void 0!==n&&"string"!=typeof n)throw new TypeError('"ext" argument must be a string');t(e);var r,i=0,s=-1,o=!0;if(void 0!==n&&n.length>0&&n.length<=e.length){if(n.length===e.length&&n===e)return"";var a=n.length-1,c=-1;for(r=e.length-1;r>=0;--r){var u=e.charCodeAt(r);if(47===u){if(!o){i=r+1;break}}else-1===c&&(o=!1,c=r+1),a>=0&&(u===n.charCodeAt(a)?-1==--a&&(s=r):(a=-1,s=c))}return i===s?s=c:-1===s&&(s=e.length),e.slice(i,s)}for(r=e.length-1;r>=0;--r)if(47===e.charCodeAt(r)){if(!o){i=r+1;break}}else-1===s&&(o=!1,s=r+1);return-1===s?"":e.slice(i,s)},extname:function(e){t(e);for(var n=-1,r=0,i=-1,s=!0,o=0,a=e.length-1;a>=0;--a){var c=e.charCodeAt(a);if(47!==c)-1===i&&(s=!1,i=a+1),46===c?-1===n?n=a:1!==o&&(o=1):-1!==n&&(o=-1);else if(!s){r=a+1;break}}return-1===n||-1===i||0===o||1===o&&n===i-1&&n===r+1?"":e.slice(n,i)},format:function(e){if(null===e||"object"!=typeof e)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return function(e,t){var n=t.dir||t.root,r=t.base||(t.name||"")+(t.ext||"");return n?n===t.root?n+r:n+"/"+r:r}(0,e)},parse:function(e){t(e);var n={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return n;var r,i=e.charCodeAt(0),s=47===i;s?(n.root="/",r=1):r=0;for(var o=-1,a=0,c=-1,u=!0,l=e.length-1,d=0;l>=r;--l)if(47!==(i=e.charCodeAt(l)))-1===c&&(u=!1,c=l+1),46===i?-1===o?o=l:1!==d&&(d=1):-1!==o&&(d=-1);else if(!u){a=l+1;break}return-1===o||-1===c||0===d||1===d&&o===c-1&&o===a+1?-1!==c&&(n.base=n.name=0===a&&s?e.slice(1,c):e.slice(a,c)):(0===a&&s?(n.name=e.slice(1,o),n.base=e.slice(1,c)):(n.name=e.slice(a,o),n.base=e.slice(a,c)),n.ext=e.slice(o,c)),a>0?n.dir=e.slice(0,a-1):s&&(n.dir="/"),n},sep:"/",delimiter:":",win32:null,posix:null};r.posix=r,e.exports=r}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,n),s.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};(()=>{let e;if(n.r(r),n.d(r,{URI:()=>l,Utils:()=>x}),"object"==typeof process)e="win32"===process.platform;else if("object"==typeof navigator){let t=navigator.userAgent;e=t.indexOf("Windows")>=0}const t=/^\w[\w\d+.-]*$/,i=/^\//,s=/^\/\//;function o(e,n){if(!e.scheme&&n)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!t.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!i.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(s.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}const a="",c="/",u=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class l{static isUri(e){return e instanceof l||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}scheme;authority;path;query;fragment;constructor(e,t,n,r,i,s=!1){"object"==typeof e?(this.scheme=e.scheme||a,this.authority=e.authority||a,this.path=e.path||a,this.query=e.query||a,this.fragment=e.fragment||a):(this.scheme=function(e,t){return e||t?e:"file"}(e,s),this.authority=t||a,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==c&&(t=c+t):t=c}return t}(this.scheme,n||a),this.query=r||a,this.fragment=i||a,o(this,s))}get fsPath(){return g(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:n,path:r,query:i,fragment:s}=e;return void 0===t?t=this.scheme:null===t&&(t=a),void 0===n?n=this.authority:null===n&&(n=a),void 0===r?r=this.path:null===r&&(r=a),void 0===i?i=this.query:null===i&&(i=a),void 0===s?s=this.fragment:null===s&&(s=a),t===this.scheme&&n===this.authority&&r===this.path&&i===this.query&&s===this.fragment?this:new h(t,n,r,i,s)}static parse(e,t=!1){const n=u.exec(e);return n?new h(n[2]||a,v(n[4]||a),v(n[5]||a),v(n[7]||a),v(n[9]||a),t):new h(a,a,a,a,a)}static file(t){let n=a;if(e&&(t=t.replace(/\\/g,c)),t[0]===c&&t[1]===c){const e=t.indexOf(c,2);-1===e?(n=t.substring(2),t=c):(n=t.substring(2,e),t=t.substring(e)||c)}return new h("file",n,t,a,a)}static from(e){const t=new h(e.scheme,e.authority,e.path,e.query,e.fragment);return o(t,!0),t}toString(e=!1){return y(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof l)return e;{const t=new h(e);return t._formatted=e.external,t._fsPath=e._sep===d?e.fsPath:null,t}}return e}}const d=e?1:void 0;class h extends l{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=g(this,!1)),this._fsPath}toString(e=!1){return e?y(this,!0):(this._formatted||(this._formatted=y(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=d),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const f={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function p(e,t,n){let r,i=-1;for(let s=0;s=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o||n&&91===o||n&&93===o||n&&58===o)-1!==i&&(r+=encodeURIComponent(e.substring(i,s)),i=-1),void 0!==r&&(r+=e.charAt(s));else{void 0===r&&(r=e.substr(0,s));const t=f[o];void 0!==t?(-1!==i&&(r+=encodeURIComponent(e.substring(i,s)),i=-1),r+=t):-1===i&&(i=s)}}return-1!==i&&(r+=encodeURIComponent(e.substring(i))),void 0!==r?r:e}function m(e){let t;for(let n=0;n1&&"file"===t.scheme?`//${t.authority}${t.path}`:47===t.path.charCodeAt(0)&&(t.path.charCodeAt(1)>=65&&t.path.charCodeAt(1)<=90||t.path.charCodeAt(1)>=97&&t.path.charCodeAt(1)<=122)&&58===t.path.charCodeAt(2)?n?t.path.substr(1):t.path[1].toLowerCase()+t.path.substr(2):t.path,e&&(r=r.replace(/\//g,"\\")),r}function y(e,t){const n=t?m:p;let r="",{scheme:i,authority:s,path:o,query:a,fragment:u}=e;if(i&&(r+=i,r+=":"),(s||"file"===i)&&(r+=c,r+=c),s){let e=s.indexOf("@");if(-1!==e){const t=s.substr(0,e);s=s.substr(e+1),e=t.lastIndexOf(":"),-1===e?r+=n(t,!1,!1):(r+=n(t.substr(0,e),!1,!1),r+=":",r+=n(t.substr(e+1),!1,!0)),r+="@"}s=s.toLowerCase(),e=s.lastIndexOf(":"),-1===e?r+=n(s,!1,!0):(r+=n(s.substr(0,e),!1,!0),r+=s.substr(e))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2)){const e=o.charCodeAt(1);e>=65&&e<=90&&(o=`/${String.fromCharCode(e+32)}:${o.substr(3)}`)}else if(o.length>=2&&58===o.charCodeAt(1)){const e=o.charCodeAt(0);e>=65&&e<=90&&(o=`${String.fromCharCode(e+32)}:${o.substr(2)}`)}r+=n(o,!0,!1)}return a&&(r+="?",r+=n(a,!1,!1)),u&&(r+="#",r+=t?u:p(u,!1,!1)),r}function A(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+A(e.substr(3)):e}}const T=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function v(e){return e.match(T)?e.replace(T,(e=>A(e))):e}var E=n(470);const R=E.posix||E,k="/";var x;!function(e){e.joinPath=function(e,...t){return e.with({path:R.join(e.path,...t)})},e.resolvePath=function(e,...t){let n=e.path,r=!1;n[0]!==k&&(n=k+n,r=!0);let i=R.resolve(n,...t);return r&&i[0]===k&&!e.authority&&(i=i.substring(1)),e.with({path:i})},e.dirname=function(e){if(0===e.path.length||e.path===k)return e;let t=R.dirname(e.path);return 1===t.length&&46===t.charCodeAt(0)&&(t=""),e.with({path:t})},e.basename=function(e){return R.basename(e.path)},e.extname=function(e){return R.extname(e.path)}}(x||(x={}))})(),Mc=r})();const{URI:Kc,Utils:jc}=Mc;var Vc,Wc,Hc,zc,Yc;!function(e){e.basename=jc.basename,e.dirname=jc.dirname,e.extname=jc.extname,e.joinPath=jc.joinPath,e.resolvePath=jc.resolvePath,e.equals=function(e,t){return(null==e?void 0:e.toString())===(null==t?void 0:t.toString())},e.relative=function(e,t){const n="string"==typeof e?e:e.path,r="string"==typeof t?t:t.path,i=n.split("/").filter((e=>e.length>0)),s=r.split("/").filter((e=>e.length>0));let o=0;for(;onull!=r?r:r=Pc.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,null!=t?t:"")}}class qc{constructor(e){this.documentMap=new Map,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory}get all(){return p(this.documentMap.values())}addDocument(e){const t=e.uri.toString();if(this.documentMap.has(t))throw new Error(`A document with the URI '${t}' is already present.`);this.documentMap.set(t,e)}getDocument(e){const t=e.toString();return this.documentMap.get(t)}async getOrCreateDocument(e,t){let n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,t),this.addDocument(n),n)}createDocument(e,t,n){if(n)return this.langiumDocumentFactory.fromString(t,e,n).then((e=>(this.addDocument(e),e)));{const n=this.langiumDocumentFactory.fromString(t,e);return this.addDocument(n),n}}hasDocument(e){return this.documentMap.has(e.toString())}invalidateDocument(e){const t=e.toString(),n=this.documentMap.get(t);return n&&(n.state=Wc.Changed,n.precomputedScopes=void 0,n.references=[],n.diagnostics=void 0),n}deleteDocument(e){const t=e.toString(),n=this.documentMap.get(t);return n&&(n.state=Wc.Changed,this.documentMap.delete(t)),n}}class Qc{constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator}async link(e,t=Cc.XO.None){for(const n of Ie(e.parseResult.value))await Oc(t),Ne(n).forEach((t=>this.doLink(t,e)))}doLink(e,t){const n=e.reference;if(void 0===n._ref)try{const t=this.getCandidate(e);if(s(t))n._ref=t;else if(n._nodeDescription=t,this.langiumDocuments().hasDocument(t.documentUri)){const r=this.loadAstNode(t);n._ref=null!=r?r:this.createLinkingError(e,t)}}catch(t){n._ref=Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${n.$refText}': ${t}`})}t.references.push(n)}unlink(e){for(const t of e.references)delete t._ref,delete t._nodeDescription;e.references=[]}getCandidate(e){const t=this.scopeProvider.getScope(e).getElement(e.reference.$refText);return null!=t?t:this.createLinkingError(e)}buildReference(e,t,n,i){const o=this,a={$refNode:n,$refText:i,get ref(){var n,i;if(r(this._ref))return this._ref;if("object"==typeof(i=this._nodeDescription)&&null!==i&&"string"==typeof i.name&&"string"==typeof i.type&&"string"==typeof i.path){const n=o.loadAstNode(this._nodeDescription);this._ref=null!=n?n:o.createLinkingError({reference:a,container:e,property:t},this._nodeDescription)}else if(void 0===this._ref){const r=o.getLinkedNode({reference:a,container:e,property:t});if(r.error&&Re(e).state=e.end)return t.ref}if(n){const t=this.nameProvider.getNameNode(n);if(t&&(t===e||function(e,t){for(;e.container;)if((e=e.container)===t)return!0;return!1}(e,t)))return n}}}findDeclarationNode(e){const t=this.findDeclaration(e);if(null==t?void 0:t.$cstNode){const e=this.nameProvider.getNameNode(t);return null!=e?e:t.$cstNode}}findReferences(e,t){const n=[];if(t.includeDeclaration){const t=this.getReferenceToSelf(e);t&&n.push(t)}let r=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return t.documentUri&&(r=r.filter((e=>Vc.equals(e.sourceUri,t.documentUri)))),n.push(...r),p(n)}getReferenceToSelf(e){const t=this.nameProvider.getNameNode(e);if(t){const n=Re(e),r=this.nodeLocator.getAstNodePath(e);return{sourceUri:n.uri,sourcePath:r,targetUri:n.uri,targetPath:r,segment:v(t),local:!0}}}}class eu{constructor(e){if(this.map=new Map,e)for(const[t,n]of e)this.add(t,n)}get size(){return g.sum(p(this.map.values()).map((e=>e.length)))}clear(){this.map.clear()}delete(e,t){if(void 0===t)return this.map.delete(e);{const n=this.map.get(e);if(n){const r=n.indexOf(t);if(r>=0)return 1===n.length?this.map.delete(e):n.splice(r,1),!0}return!1}}get(e){var t;return null!==(t=this.map.get(e))&&void 0!==t?t:[]}has(e,t){if(void 0===t)return this.map.has(e);{const n=this.map.get(e);return!!n&&n.indexOf(t)>=0}}add(e,t){return this.map.has(e)?this.map.get(e).push(t):this.map.set(e,[t]),this}addAll(e,t){return this.map.has(e)?this.map.get(e).push(...t):this.map.set(e,Array.from(t)),this}forEach(e){this.map.forEach(((t,n)=>t.forEach((t=>e(t,n,this)))))}[Symbol.iterator](){return this.entries().iterator()}entries(){return p(this.map.entries()).flatMap((([e,t])=>t.map((t=>[e,t]))))}keys(){return p(this.map.keys())}values(){return p(this.map.values()).flat()}entriesGroupedByKey(){return p(this.map.entries())}}class tu{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[t,n]of e)this.set(t,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,t){return this.map.set(e,t),this.inverse.set(t,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){const t=this.map.get(e);return void 0!==t&&(this.map.delete(e),this.inverse.delete(t),!0)}}class nu{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,t=Cc.XO.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,t)}async computeExportsForNode(e,t,n=ke,r=Cc.XO.None){const i=[];this.exportNode(e,i,t);for(const s of n(e))await Oc(r),this.exportNode(s,i,t);return i}exportNode(e,t,n){const r=this.nameProvider.getName(e);r&&t.push(this.descriptions.createDescription(e,r,n))}async computeLocalScopes(e,t=Cc.XO.None){const n=e.parseResult.value,r=new eu;for(const i of xe(n))await Oc(t),this.processNode(i,e,r);return r}processNode(e,t,n){const r=e.$container;if(r){const i=this.nameProvider.getName(e);i&&n.add(r,this.descriptions.createDescription(e,i,t))}}}class ru{constructor(e,t,n){var r;this.elements=e,this.outerScope=t,this.caseInsensitive=null!==(r=null==n?void 0:n.caseInsensitive)&&void 0!==r&&r}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){return(this.caseInsensitive?this.elements.find((t=>t.name.toLowerCase()===e.toLowerCase())):this.elements.find((t=>t.name===e)))||(this.outerScope?this.outerScope.getElement(e):void 0)}}class iu{constructor(e,t,n){var r;this.elements=new Map,this.caseInsensitive=null!==(r=null==n?void 0:n.caseInsensitive)&&void 0!==r&&r;for(const t of e){const e=this.caseInsensitive?t.name.toLowerCase():t.name;this.elements.set(e,t)}this.outerScope=t}getElement(e){const t=this.caseInsensitive?e.toLowerCase():e;return this.elements.get(t)||(this.outerScope?this.outerScope.getElement(e):void 0)}getAllElements(){let e=p(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}}class su{constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach((e=>e.dispose()))}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}}class ou extends su{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,t){this.throwIfDisposed(),this.cache.set(e,t)}get(e,t){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(t){const n=t();return this.cache.set(e,n),n}}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}}class au extends su{constructor(e){super(),this.cache=new Map,this.converter=null!=e?e:e=>e}has(e,t){return this.throwIfDisposed(),this.cacheForContext(e).has(t)}set(e,t,n){this.throwIfDisposed(),this.cacheForContext(e).set(t,n)}get(e,t,n){this.throwIfDisposed();const r=this.cacheForContext(e);if(r.has(t))return r.get(t);if(n){const e=n();return r.set(t,e),e}}delete(e,t){return this.throwIfDisposed(),this.cacheForContext(e).delete(t)}clear(e){if(this.throwIfDisposed(),e){const t=this.converter(e);this.cache.delete(t)}else this.cache.clear()}cacheForContext(e){const t=this.converter(e);let n=this.cache.get(t);return n||(n=new Map,this.cache.set(t,n)),n}}class cu extends ou{constructor(e){super(),this.onDispose(e.workspace.DocumentBuilder.onUpdate((()=>{this.clear()})))}}class uu{constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new cu(e.shared)}getScope(e){const t=[],n=this.reflection.getReferenceType(e),r=Re(e.container).precomputedScopes;if(r){let i=e.container;do{const e=r.get(i);e.length>0&&t.push(p(e).filter((e=>this.reflection.isSubtype(e.type,n)))),i=i.$container}while(i)}let i=this.getGlobalScope(n,e);for(let e=t.length-1;e>=0;e--)i=this.createScope(t[e],i);return i}createScope(e,t,n){return new ru(p(e),t,n)}createScopeForNodes(e,t,n){const r=p(e).map((e=>{const t=this.nameProvider.getName(e);if(t)return this.descriptions.createDescription(e,t)})).nonNullable();return new ru(r,t,n)}getGlobalScope(e,t){return this.globalScopeCache.get(e,(()=>new iu(this.indexManager.allElements(e))))}}function lu(e){return"object"==typeof e&&!!e&&("$ref"in e||"$error"in e)}class du{constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,t={}){const n=null==t?void 0:t.replacer,r=(e,n)=>this.replacer(e,n,t),i=n?(e,t)=>n(e,t,r):r;try{return this.currentDocument=Re(e),JSON.stringify(e,i,null==t?void 0:t.space)}finally{this.currentDocument=void 0}}deserialize(e,t={}){const n=JSON.parse(e);return this.linkNode(n,n,t),n}replacer(e,t,{refText:n,sourceText:s,textRegions:o,comments:a,uriConverter:c}){var u,l,d,h;if(!this.ignoreProperties.has(e)){if(i(t)){const e=t.ref,r=n?t.$refText:void 0;if(e){const n=Re(e);let i="";return this.currentDocument&&this.currentDocument!==n&&(i=c?c(n.uri,t):n.uri.toString()),{$ref:`${i}#${this.astNodeLocator.getAstNodePath(e)}`,$refText:r}}return{$error:null!==(l=null===(u=t.error)||void 0===u?void 0:u.message)&&void 0!==l?l:"Could not resolve reference",$refText:r}}if(r(t)){let n;if(o&&(n=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},t)),e&&!t.$document||!(null==n?void 0:n.$textRegion)||(n.$textRegion.documentURI=null===(d=this.currentDocument)||void 0===d?void 0:d.uri.toString())),s&&!e&&(null!=n||(n=Object.assign({},t)),n.$sourceText=null===(h=t.$cstNode)||void 0===h?void 0:h.text),a){null!=n||(n=Object.assign({},t));const e=this.commentProvider.getComment(t);e&&(n.$comment=e.replace(/\r/g,""))}return null!=n?n:t}return t}}addAstNodeRegionWithAssignmentsTo(e){const t=e=>({offset:e.offset,end:e.end,length:e.length,range:e.range});if(e.$cstNode){const n=(e.$textRegion=t(e.$cstNode)).assignments={};return Object.keys(e).filter((e=>!e.startsWith("$"))).forEach((r=>{const i=function(e,t){return e&&t?Ze(e,t,e.astNode,!0):[]}(e.$cstNode,r).map(t);0!==i.length&&(n[r]=i)})),e}}linkNode(e,t,n,i,s,o){for(const[i,s]of Object.entries(e))if(Array.isArray(s))for(let o=0;o{try{await e.call(t,n,r,i)}catch(e){if(bc(e))throw e;console.error("An error occurred during validation:",e);const t=e instanceof Error?e.message:String(e);e instanceof Error&&e.stack&&console.error(e.stack),r("error","An error occurred during validation: "+t,{node:n})}}}addEntry(e,t){if("AstNode"!==e)for(const n of this.reflection.getAllSubTypes(e))this.entries.add(n,t);else this.entries.add("AstNode",t)}getChecks(e,t){let n=p(this.entries.get(e)).concat(this.entries.get("AstNode"));return t&&(n=n.filter((e=>t.includes(e.category)))),n.map((e=>e.check))}}class mu{constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,t={},n=Cc.XO.None){const r=e.parseResult,i=[];if(await Oc(n),!t.categories||t.categories.includes("built-in")){if(this.processLexingErrors(r,i,t),t.stopAfterLexingErrors&&i.some((e=>{var t;return(null===(t=e.data)||void 0===t?void 0:t.code)===zc.LexingError})))return i;if(this.processParsingErrors(r,i,t),t.stopAfterParsingErrors&&i.some((e=>{var t;return(null===(t=e.data)||void 0===t?void 0:t.code)===zc.ParsingError})))return i;if(this.processLinkingErrors(e,i,t),t.stopAfterLinkingErrors&&i.some((e=>{var t;return(null===(t=e.data)||void 0===t?void 0:t.code)===zc.LinkingError})))return i}try{i.push(...await this.validateAst(r.value,t,n))}catch(e){if(bc(e))throw e;console.error("An error occurred during validation:",e)}return await Oc(n),i}processLexingErrors(e,t,n){for(const n of e.lexerErrors){const e={severity:yu("error"),range:{start:{line:n.line-1,character:n.column-1},end:{line:n.line-1,character:n.column+n.length-1}},message:n.message,data:fu(zc.LexingError),source:this.getSource()};t.push(e)}}processParsingErrors(e,t,n){for(const n of e.parserErrors){let e;if(isNaN(n.token.startOffset)){if("previousToken"in n){const t=n.previousToken;if(isNaN(t.startOffset)){const t={line:0,character:0};e={start:t,end:t}}else{const n={line:t.endLine-1,character:t.endColumn};e={start:n,end:n}}}}else e=T(n.token);if(e){const r={severity:yu("error"),range:e,message:n.message,data:fu(zc.ParsingError),source:this.getSource()};t.push(r)}}}processLinkingErrors(e,t,n){for(const n of e.references){const e=n.error;if(e){const n={node:e.container,property:e.property,index:e.index,data:{code:zc.LinkingError,containerType:e.container.$type,property:e.property,refText:e.reference.$refText}};t.push(this.toDiagnostic("error",e.message,n))}}}async validateAst(e,t,n=Cc.XO.None){const r=[],i=(e,t,n)=>{r.push(this.toDiagnostic(e,t,n))};return await Promise.all(Ie(e).map((async e=>{await Oc(n);const r=this.validationRegistry.getChecks(e.$type,t.categories);for(const t of r)await t(e,i,n)}))),r}toDiagnostic(e,t,n){return{message:t,range:gu(n),severity:yu(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}}function gu(e){if(e.range)return e.range;let t;return"string"==typeof e.property?t=Qe(e.node.$cstNode,e.property,e.index):"string"==typeof e.keyword&&(t=function(e,t,n){if(!e)return;const r=function(e,t,n){if(e.astNode!==n)return[];if(oe(e.grammarSource)&&e.grammarSource.value===t)return[e];const r=A(e).iterator();let i;const s=[];do{if(i=r.next(),!i.done){const e=i.value;e.astNode===n?oe(e.grammarSource)&&e.grammarSource.value===t&&s.push(e):r.prune()}}while(!i.done);return s}(e,t,null==e?void 0:e.astNode);return 0!==r.length?r[n=void 0!==n?Math.max(0,Math.min(n,r.length-1)):0]:void 0}(e.node.$cstNode,e.keyword,e.index)),null!=t||(t=e.node.$cstNode),t?t.range:{start:{line:0,character:0},end:{line:0,character:0}}}function yu(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+e)}}!function(e){e.LexingError="lexing-error",e.ParsingError="parsing-error",e.LinkingError="linking-error"}(zc||(zc={}));class Au{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,t,n=Re(e)){null!=t||(t=this.nameProvider.getName(e));const r=this.astNodeLocator.getAstNodePath(e);if(!t)throw new Error(`Node at path ${r} has no name.`);let i;const s=()=>{var t;return null!=i?i:i=v(null!==(t=this.nameProvider.getNameNode(e))&&void 0!==t?t:e.$cstNode)};return{node:e,name:t,get nameSegment(){return s()},selectionSegment:v(e.$cstNode),type:e.$type,documentUri:n.uri,path:r}}}class Tu{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,t=Cc.XO.None){const n=[],r=e.parseResult.value;for(const e of Ie(r))await Oc(t),Ne(e).filter((e=>!s(e))).forEach((e=>{const t=this.createDescription(e);t&&n.push(t)}));return n}createDescription(e){const t=e.reference.$nodeDescription,n=e.reference.$refNode;if(!t||!n)return;const r=Re(e.container).uri;return{sourceUri:r,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:t.documentUri,targetPath:t.path,segment:v(n),local:Vc.equals(t.documentUri,r)}}}class vu{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){const t=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return t+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:t}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return void 0!==t?e+this.indexSeparator+t:e}getAstNode(e,t){return t.split(this.segmentSeparator).reduce(((e,t)=>{if(!e||0===t.length)return e;const n=t.indexOf(this.indexSeparator);if(n>0){const r=t.substring(0,n),i=parseInt(t.substring(n+1)),s=e[r];return null==s?void 0:s[i]}return e[t]}),e)}}class Eu{constructor(e){this._ready=new _c,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var t,n;this.workspaceConfig=null!==(n=null===(t=e.capabilities.workspace)||void 0===t?void 0:t.configuration)&&void 0!==n&&n}async initialized(e){if(this.workspaceConfig){if(e.register){const t=this.serviceRegistry.all;e.register({section:t.map((e=>this.toSectionName(e.LanguageMetaData.languageId)))})}if(e.fetchConfiguration){const t=this.serviceRegistry.all.map((e=>({section:this.toSectionName(e.LanguageMetaData.languageId)}))),n=await e.fetchConfiguration(t);t.forEach(((e,t)=>{this.updateSectionConfiguration(e.section,n[t])}))}}this._ready.resolve()}updateConfiguration(e){e.settings&&Object.keys(e.settings).forEach((t=>{this.updateSectionConfiguration(t,e.settings[t])}))}updateSectionConfiguration(e,t){this.settings[e]=t}async getConfiguration(e,t){await this.ready;const n=this.toSectionName(e);if(this.settings[n])return this.settings[n][t]}toSectionName(e){return`${e}`}}!function(e){e.create=function(e){return{dispose:async()=>await e()}}}(Yc||(Yc={}));class Ru{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new eu,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Wc.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.indexManager=e.workspace.IndexManager,this.serviceRegistry=e.ServiceRegistry}async build(e,t={},n=Cc.XO.None){var r,i;for(const n of e){const e=n.uri.toString();if(n.state===Wc.Validated){if("boolean"==typeof t.validation&&t.validation)n.state=Wc.IndexedReferences,n.diagnostics=void 0,this.buildState.delete(e);else if("object"==typeof t.validation){const s=this.buildState.get(e),o=null===(r=null==s?void 0:s.result)||void 0===r?void 0:r.validationChecks;if(o){const r=(null!==(i=t.validation.categories)&&void 0!==i?i:Hc.all).filter((e=>!o.includes(e)));r.length>0&&(this.buildState.set(e,{completed:!1,options:{validation:Object.assign(Object.assign({},t.validation),{categories:r})},result:s.result}),n.state=Wc.IndexedReferences)}}}else this.buildState.delete(e)}this.currentState=Wc.Changed,await this.emitUpdate(e.map((e=>e.uri)),[]),await this.buildDocuments(e,t,n)}async update(e,t,n=Cc.XO.None){this.currentState=Wc.Changed;for(const e of t)this.langiumDocuments.deleteDocument(e),this.buildState.delete(e.toString()),this.indexManager.remove(e);for(const t of e){if(!this.langiumDocuments.invalidateDocument(t)){const e=this.langiumDocumentFactory.fromModel({$type:"INVALID"},t);e.state=Wc.Changed,this.langiumDocuments.addDocument(e)}this.buildState.delete(t.toString())}const r=p(e).concat(t).map((e=>e.toString())).toSet();this.langiumDocuments.all.filter((e=>!r.has(e.uri.toString())&&this.shouldRelink(e,r))).forEach((e=>{this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e),e.state=Math.min(e.state,Wc.ComputedScopes),e.diagnostics=void 0})),await this.emitUpdate(e,t),await Oc(n);const i=this.langiumDocuments.all.filter((e=>{var t;return e.staten(e,t))))}shouldRelink(e,t){return!!e.references.some((e=>void 0!==e.error))||this.indexManager.isAffected(e,t)}onUpdate(e){return this.updateListeners.push(e),Yc.create((()=>{const t=this.updateListeners.indexOf(e);t>=0&&this.updateListeners.splice(t,1)}))}async buildDocuments(e,t,n){this.prepareBuild(e,t),await this.runCancelable(e,Wc.Parsed,n,(e=>this.langiumDocumentFactory.update(e,n))),await this.runCancelable(e,Wc.IndexedContent,n,(e=>this.indexManager.updateContent(e,n))),await this.runCancelable(e,Wc.ComputedScopes,n,(async e=>{const t=this.serviceRegistry.getServices(e.uri).references.ScopeComputation;e.precomputedScopes=await t.computeLocalScopes(e,n)})),await this.runCancelable(e,Wc.Linked,n,(e=>this.serviceRegistry.getServices(e.uri).references.Linker.link(e,n))),await this.runCancelable(e,Wc.IndexedReferences,n,(e=>this.indexManager.updateReferences(e,n)));const r=e.filter((e=>this.shouldValidate(e)));await this.runCancelable(r,Wc.Validated,n,(e=>this.validate(e,n)));for(const t of e){const e=this.buildState.get(t.uri.toString());e&&(e.completed=!0)}}prepareBuild(e,t){for(const n of e){const e=n.uri.toString(),r=this.buildState.get(e);r&&!r.completed||this.buildState.set(e,{completed:!1,options:t,result:null==r?void 0:r.result})}}async runCancelable(e,t,n,r){const i=e.filter((e=>e.state{this.buildPhaseListeners.delete(e,t)}))}waitUntil(e,t,n){let r;if(t&&"path"in t?r=t:n=t,null!=n||(n=Cc.XO.None),r){const t=this.langiumDocuments.getDocument(r);if(t&&t.state>e)return Promise.resolve(r)}return this.currentState>=e?Promise.resolve(void 0):n.isCancellationRequested?Promise.reject(Lc):new Promise(((t,i)=>{const s=this.onBuildPhase(e,(()=>{if(s.dispose(),o.dispose(),r){const e=this.langiumDocuments.getDocument(r);t(null==e?void 0:e.uri)}else t(void 0)})),o=n.onCancellationRequested((()=>{s.dispose(),o.dispose(),i(Lc)}))}))}async notifyBuildPhase(e,t,n){if(0===e.length)return;const r=this.buildPhaseListeners.get(t);for(const t of r)await Oc(n),await t(e,n)}shouldValidate(e){return Boolean(this.getBuildOptions(e).validation)}async validate(e,t){var n,r;const i=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,s=this.getBuildOptions(e).validation,o="object"==typeof s?s:void 0,a=await i.validateDocument(e,o,t);e.diagnostics?e.diagnostics.push(...a):e.diagnostics=a;const c=this.buildState.get(e.uri.toString());if(c){null!==(n=c.result)&&void 0!==n||(c.result={});const e=null!==(r=null==o?void 0:o.categories)&&void 0!==r?r:Hc.all;c.result.validationChecks?c.result.validationChecks.push(...e):c.result.validationChecks=[...e]}}getBuildOptions(e){var t,n;return null!==(n=null===(t=this.buildState.get(e.uri.toString()))||void 0===t?void 0:t.options)&&void 0!==n?n:{}}}class ku{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new au,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,t){const n=Re(e).uri,r=[];return this.referenceIndex.forEach((e=>{e.forEach((e=>{Vc.equals(e.targetUri,n)&&e.targetPath===t&&r.push(e)}))})),p(r)}allElements(e,t){let n=p(this.symbolIndex.keys());return t&&(n=n.filter((e=>!t||t.has(e)))),n.map((t=>this.getFileDescriptions(t,e))).flat()}getFileDescriptions(e,t){var n;if(!t)return null!==(n=this.symbolIndex.get(e))&&void 0!==n?n:[];const r=this.symbolByTypeIndex.get(e,t,(()=>{var n;return(null!==(n=this.symbolIndex.get(e))&&void 0!==n?n:[]).filter((e=>this.astReflection.isSubtype(e.type,t)))}));return r}remove(e){const t=e.toString();this.symbolIndex.delete(t),this.symbolByTypeIndex.clear(t),this.referenceIndex.delete(t)}async updateContent(e,t=Cc.XO.None){const n=this.serviceRegistry.getServices(e.uri),r=await n.references.ScopeComputation.computeExports(e,t),i=e.uri.toString();this.symbolIndex.set(i,r),this.symbolByTypeIndex.clear(i)}async updateReferences(e,t=Cc.XO.None){const n=this.serviceRegistry.getServices(e.uri),r=await n.workspace.ReferenceDescriptionProvider.createDescriptions(e,t);this.referenceIndex.set(e.uri.toString(),r)}isAffected(e,t){const n=this.referenceIndex.get(e.uri.toString());return!!n&&n.some((e=>!e.local&&t.has(e.targetUri.toString())))}}class xu{constructor(e){this.initialBuildOptions={},this._ready=new _c,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}initialize(e){var t;this.folders=null!==(t=e.workspaceFolders)&&void 0!==t?t:void 0}initialized(e){return this.mutex.write((e=>{var t;return this.initializeWorkspace(null!==(t=this.folders)&&void 0!==t?t:[],e)}))}async initializeWorkspace(e,t=Cc.XO.None){const n=await this.performStartup(e);await Oc(t),await this.documentBuilder.build(n,this.initialBuildOptions,t)}async performStartup(e){const t=this.serviceRegistry.all.flatMap((e=>e.LanguageMetaData.fileExtensions)),n=[],r=e=>{n.push(e),this.langiumDocuments.hasDocument(e.uri)||this.langiumDocuments.addDocument(e)};return await this.loadAdditionalDocuments(e,r),await Promise.all(e.map((e=>[e,this.getRootFolder(e)])).map((async e=>this.traverseFolder(...e,t,r)))),this._ready.resolve(),n}loadAdditionalDocuments(e,t){return Promise.resolve()}getRootFolder(e){return Kc.parse(e.uri)}async traverseFolder(e,t,n,r){const i=await this.fileSystemProvider.readDirectory(t);await Promise.all(i.map((async t=>{if(this.includeEntry(e,t,n))if(t.isDirectory)await this.traverseFolder(e,t.uri,n,r);else if(t.isFile){const e=await this.langiumDocuments.getOrCreateDocument(t.uri);r(e)}})))}includeEntry(e,t,n){const r=Vc.basename(t.uri);if(r.startsWith("."))return!1;if(t.isDirectory)return"node_modules"!==r&&"out"!==r;if(t.isFile){const e=Vc.extname(t.uri);return n.includes(e)}return!1}}class Iu{constructor(e){const t=e.parser.TokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(t);const n=Nu(t)?Object.values(t):t;this.chevrotainLexer=new Pr(n,{positionTracking:"full"})}get definition(){return this.tokenTypes}tokenize(e){var t;const n=this.chevrotainLexer.tokenize(e);return{tokens:n.tokens,errors:n.errors,hidden:null!==(t=n.groups.hidden)&&void 0!==t?t:[]}}toTokenTypeDictionary(e){if(Nu(e))return e;const t=Su(e)?Object.values(e.modes).flat():e,n={};return t.forEach((e=>n[e.name]=e)),n}}function Su(e){return e&&"modes"in e&&"defaultMode"in e}function Nu(e){return!function(e){return Array.isArray(e)&&(0===e.length||"name"in e[0])}(e)&&!Su(e)}function Cu(e){let t="";return t="string"==typeof e?e:e.text,t.split(je)}const wu=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,Lu=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function bu(e,t,n,r){const i=[];if(0===e.length){const e=Oo.create(n,r),s=Oo.create(n,r+t.length);i.push({type:"text",content:t,range:_o.create(e,s)})}else{let s=0;for(const o of e){const e=o.index,a=t.substring(s,e);a.length>0&&i.push({type:"text",content:t.substring(s,e),range:_o.create(Oo.create(n,s+r),Oo.create(n,e+r))});let c=a.length+1;const u=o[1];if(i.push({type:"inline-tag",content:u,range:_o.create(Oo.create(n,s+c+r),Oo.create(n,s+c+u.length+r))}),c+=u.length,4===o.length){c+=o[2].length;const e=o[3];i.push({type:"text",content:e,range:_o.create(Oo.create(n,s+c+r),Oo.create(n,s+c+e.length+r))})}else i.push({type:"text",content:"",range:_o.create(Oo.create(n,s+c+r),Oo.create(n,s+c+r))});s=e+o[0].length}const o=t.substring(s);o.length>0&&i.push({type:"text",content:o,range:_o.create(Oo.create(n,s+r),Oo.create(n,s+r+o.length))})}return i}const Ou=/\S/,_u=/\s*$/;function $u(e,t){const n=e.substring(t).match(Ou);return n?t+n.index:e.length}function Pu(e){const t=e.match(_u);if(t&&"number"==typeof t.index)return t.index}function Mu(e,t){const n=e.tokens[e.index];return"tag"===n.type?Fu(e,!1):"text"===n.type||"inline-tag"===n.type?Du(e):(function(e,t){if(t){const n=new Hu("",e.range);"inlines"in t?t.inlines.push(n):t.content.inlines.push(n)}}(n,t),void e.index++)}function Du(e){let t=e.tokens[e.index];const n=t;let r=t;const i=[];for(;t&&"break"!==t.type&&"tag"!==t.type;)i.push(Uu(e)),r=t,t=e.tokens[e.index];return new Wu(i,_o.create(n.range.start,r.range.end))}function Uu(e){return"inline-tag"===e.tokens[e.index].type?Fu(e,!0):Gu(e)}function Fu(e,t){const n=e.tokens[e.index++],r=n.content.substring(1),i=e.tokens[e.index];if("text"===(null==i?void 0:i.type)){if(t){const i=Gu(e);return new Vu(r,new Wu([i],i.range),t,_o.create(n.range.start,i.range.end))}{const i=Du(e);return new Vu(r,i,t,_o.create(n.range.start,i.range.end))}}{const e=n.range;return new Vu(r,new Wu([],e),t,e)}}function Gu(e){const t=e.tokens[e.index++];return new Hu(t.content,t.range)}function Bu(e){if(!e)return Bu({start:"/**",end:"*/",line:"*"});const{start:t,end:n,line:r}=e;return{start:Ku(t,!0),end:Ku(n,!1),line:Ku(r,!0)}}function Ku(e,t){if("string"==typeof e||"object"==typeof e){const n="string"==typeof e?Ye(e):e.source;return t?new RegExp(`^\\s*${n}`):new RegExp(`\\s*${n}\\s*$`)}return e}class ju{constructor(e,t){this.elements=e,this.range=t}getTag(e){return this.getAllTags().find((t=>t.name===e))}getTags(e){return this.getAllTags().filter((t=>t.name===e))}getAllTags(){return this.elements.filter((e=>"name"in e))}toString(){let e="";for(const t of this.elements)if(0===e.length)e=t.toString();else{const n=t.toString();e+=zu(e)+n}return e.trim()}toMarkdown(e){let t="";for(const n of this.elements)if(0===t.length)t=n.toMarkdown(e);else{const r=n.toMarkdown(e);t+=zu(t)+r}return t.trim()}}class Vu{constructor(e,t,n,r){this.name=e,this.content=t,this.inline=n,this.range=r}toString(){let e=`@${this.name}`;const t=this.content.toString();return 1===this.content.inlines.length?e=`${e} ${t}`:this.content.inlines.length>1&&(e=`${e}\n${t}`),this.inline?`{${e}}`:e}toMarkdown(e){var t,n;return null!==(n=null===(t=null==e?void 0:e.renderTag)||void 0===t?void 0:t.call(e,this))&&void 0!==n?n:this.toMarkdownDefault(e)}toMarkdownDefault(e){const t=this.content.toMarkdown(e);if(this.inline){const n=function(e,t,n){var r,i;if("linkplain"===e||"linkcode"===e||"link"===e){const s=t.indexOf(" ");let o=t;if(s>0){const e=$u(t,s);o=t.substring(e),t=t.substring(0,s)}("linkcode"===e||"link"===e&&"code"===n.link)&&(o=`\`${o}\``);const a=null!==(i=null===(r=n.renderLink)||void 0===r?void 0:r.call(n,t,o))&&void 0!==i?i:function(e,t){try{return Kc.parse(e,!0),`[${t}](${e})`}catch(t){return e}}(t,o);return a}}(this.name,t,null!=e?e:{});if("string"==typeof n)return n}let n="";"italic"===(null==e?void 0:e.tag)||void 0===(null==e?void 0:e.tag)?n="*":"bold"===(null==e?void 0:e.tag)?n="**":"bold-italic"===(null==e?void 0:e.tag)&&(n="***");let r=`${n}@${this.name}${n}`;return 1===this.content.inlines.length?r=`${r} — ${t}`:this.content.inlines.length>1&&(r=`${r}\n${t}`),this.inline?`{${r}}`:r}}class Wu{constructor(e,t){this.inlines=e,this.range=t}toString(){let e="";for(let t=0;tn.range.start.line&&(e+="\n")}return e}toMarkdown(e){let t="";for(let n=0;nr.range.start.line&&(t+="\n")}return t}}class Hu{constructor(e,t){this.text=e,this.range=t}toString(){return this.text}toMarkdown(){return this.text}}function zu(e){return e.endsWith("\n")?"\n":"\n\n"}class Yu{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){const t=this.commentProvider.getComment(e);if(t&&function(e){const t=Bu(void 0),n=Cu(e);if(0===n.length)return!1;const r=n[0],i=n[n.length-1],s=t.start,o=t.end;return Boolean(null==s?void 0:s.exec(r))&&Boolean(null==o?void 0:o.exec(i))}(t))return function(e,t,n){let r,i;"string"==typeof e?(i=t,r=n):(i=e.range.start,r=t),i||(i=Oo.create(0,0));const s=function(e){var t,n,r;const i=[];let s=e.position.line,o=e.position.character;for(let a=0;a=l.length){if(i.length>0){const e=Oo.create(s,o);i.push({type:"break",content:"",range:_o.create(e,e)})}}else{wu.lastIndex=d;const e=wu.exec(l);if(e){const t=e[0],n=e[1],r=Oo.create(s,o+d),a=Oo.create(s,o+d+t.length);i.push({type:"tag",content:n,range:_o.create(r,a)}),d+=t.length,d=$u(l,d)}if(d0&&"break"===i[i.length-1].type?i.slice(0,-1):i}({lines:Cu(e),position:i,options:Bu(r)});return function(e){var t,n,r,i;const s=Oo.create(e.position.line,e.position.character);if(0===e.tokens.length)return new ju([],_o.create(s,s));const o=[];for(;e.indexthis.documentationLinkRenderer(e,t,n),renderTag:t=>this.documentationTagRenderer(e,t)})}documentationLinkRenderer(e,t,n){var r;const i=null!==(r=this.findNameInPrecomputedScopes(e,t))&&void 0!==r?r:this.findNameInGlobalScope(e,t);if(i&&i.nameSegment){const e=i.nameSegment.range.start.line+1,t=i.nameSegment.range.start.character+1;return`[${n}](${i.documentUri.with({fragment:`L${e},${t}`}).toString()})`}}documentationTagRenderer(e,t){}findNameInPrecomputedScopes(e,t){const n=Re(e).precomputedScopes;if(!n)return;let r=e;do{const e=n.get(r).find((e=>e.name===t));if(e)return e;r=r.$container}while(r)}findNameInGlobalScope(e,t){return this.indexManager.allElements().find((e=>e.name===t))}}class Xu{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var t;return function(e){return"string"==typeof e.$comment}(e)?e.$comment:null===(t=function(e,t){if(e){const n=function(e,t=!0){for(;e.container;){const n=e.container;let r=n.content.indexOf(e);for(;r>0;){r--;const e=n.content[r];if(t||!e.hidden)return e}e=n}}(e,!0);if(n&&R(n,t))return n;if(u(e))for(let n=e.content.findIndex((e=>!e.hidden))-1;n>=0;n--){const r=e.content[n];if(R(r,t))return r}}}(e.$cstNode,this.grammarConfig().multilineCommentRules))||void 0===t?void 0:t.text}}var qu;n(2676);class Qu{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e){return Promise.resolve(this.syncParser.parse(e))}}class Zu{constructor(){this.previousTokenSource=new Cc.Qi,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();const t=new Cc.Qi;return this.previousTokenSource=t,this.enqueue(this.writeQueue,e,t.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,t,n){const r=new _c,i={action:t,deferred:r,cancellationToken:null!=n?n:Cc.XO.None};return e.push(i),this.performNextOperation(),r.promise}async performNextOperation(){if(!this.done)return;const e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else{if(!(this.readQueue.length>0))return;e.push(...this.readQueue.splice(0,this.readQueue.length))}this.done=!1,await Promise.all(e.map((async({action:e,deferred:t,cancellationToken:n})=>{try{const r=await Promise.resolve().then((()=>e(n)));t.resolve(r)}catch(e){bc(e)?t.resolve(void 0):t.reject(e)}}))),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}class Ju{constructor(e){this.grammarElementIdMap=new tu,this.tokenTypeIdMap=new tu,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors.map((e=>Object.assign({},e))),parserErrors:e.parserErrors.map((e=>Object.assign({},e))),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}createDehyrationContext(e){const t=new Map,n=new Map;for(const n of Ie(e))t.set(n,{});if(e.$cstNode)for(const t of A(e.$cstNode))n.set(t,{});return{astNodes:t,cstNodes:n}}dehydrateAstNode(e,t){const n=t.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,void 0!==e.$cstNode&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,t));for(const[s,o]of Object.entries(e))if(!s.startsWith("$"))if(Array.isArray(o)){const e=[];n[s]=e;for(const n of o)r(n)?e.push(this.dehydrateAstNode(n,t)):i(n)?e.push(this.dehydrateReference(n,t)):e.push(n)}else r(o)?n[s]=this.dehydrateAstNode(o,t):i(o)?n[s]=this.dehydrateReference(o,t):void 0!==o&&(n[s]=o);return n}dehydrateReference(e,t){const n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=t.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,t){const n=t.cstNodes.get(e);return u(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=t.astNodes.get(e.astNode),a(e)?n.content=e.content.map((e=>this.dehydrateCstNode(e,t))):c(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){const t=e.value,n=this.createHydrationContext(t);return"$cstNode"in t&&this.hydrateCstNode(t.$cstNode,n),{lexerErrors:e.lexerErrors,parserErrors:e.parserErrors,value:this.hydrateAstNode(t,n)}}createHydrationContext(e){const t=new Map,n=new Map;for(const n of Ie(e))t.set(n,{});let r;if(e.$cstNode)for(const t of A(e.$cstNode)){let e;"fullText"in t?(e=new oc(t.fullText),r=e):"content"in t?e=new ic:"tokenType"in t&&(e=this.hydrateCstLeafNode(t)),e&&(n.set(t,e),e.root=r)}return{astNodes:t,cstNodes:n}}hydrateAstNode(e,t){const n=t.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=t.cstNodes.get(e.$cstNode));for(const[s,o]of Object.entries(e))if(!s.startsWith("$"))if(Array.isArray(o)){const e=[];n[s]=e;for(const a of o)r(a)?e.push(this.setParent(this.hydrateAstNode(a,t),n)):i(a)?e.push(this.hydrateReference(a,n,s,t)):e.push(a)}else r(o)?n[s]=this.setParent(this.hydrateAstNode(o,t),n):i(o)?n[s]=this.hydrateReference(o,n,s,t):void 0!==o&&(n[s]=o);return n}setParent(e,t){return e.$container=t,e}hydrateReference(e,t,n,r){return this.linker.buildReference(t,n,r.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,t,n=0){const r=t.cstNodes.get(e);if("number"==typeof e.grammarSource&&(r.grammarSource=this.getGrammarElement(e.grammarSource)),r.astNode=t.astNodes.get(e.astNode),a(r))for(const i of e.content){const e=this.hydrateCstNode(i,t,n++);r.content.push(e)}return r}hydrateCstLeafNode(e){const t=this.getTokenType(e.tokenType),n=e.offset,r=e.length,i=e.startLine,s=e.startColumn,o=e.endLine,a=e.endColumn,c=e.hidden;return new rc(n,r,{start:{line:i,character:s},end:{line:o,character:a}},t,c)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap();const t=this.grammarElementIdMap.getKey(e);if(t)return t;throw new Error("Invalid grammar element id: "+e)}createGrammarElementIdMap(){let e=0;for(const n of Ie(this.grammar))t=n,ve.isInstance(t,w)&&this.grammarElementIdMap.set(n,e++);var t}}function el(e){return{documentation:{CommentProvider:e=>new Xu(e),DocumentationProvider:e=>new Yu(e)},parser:{AsyncParser:e=>new Qu(e),GrammarConfig:e=>function(e){const t=[],n=e.Grammar;for(const e of n.rules)V(e)&&(r=e).hidden&&!st(r).test(" ")&&He(st(e))&&t.push(e.name);var r;return{multilineCommentRules:t,nameRegexp:E}}(e),LangiumParser:e=>function(e){const t=function(e){const t=e.Grammar,n=e.parser.Lexer;return yc(t,new dc(e),n.definition)}(e);return t.finalize(),t}(e),CompletionParser:e=>function(e){const t=e.Grammar,n=e.parser.Lexer,r=new pc(e);return yc(t,r,n.definition),r.finalize(),r}(e),ValueConverter:()=>new Sc,TokenBuilder:()=>new Ic,Lexer:e=>new Iu(e),ParserErrorMessageProvider:()=>new fc},workspace:{AstNodeLocator:()=>new vu,AstNodeDescriptionProvider:e=>new Au(e),ReferenceDescriptionProvider:e=>new Tu(e)},references:{Linker:e=>new Qc(e),NameProvider:()=>new Zc,ScopeProvider:e=>new uu(e),ScopeComputation:e=>new nu(e),References:e=>new Jc(e)},serializer:{Hydrator:e=>new Ju(e),JsonSerializer:e=>new du(e)},validation:{DocumentValidator:e=>new mu(e),ValidationRegistry:e=>new pu(e)},shared:()=>e.shared}}function tl(e){return{ServiceRegistry:()=>new hu,workspace:{LangiumDocuments:e=>new qc(e),LangiumDocumentFactory:e=>new Xc(e),DocumentBuilder:e=>new Ru(e),IndexManager:e=>new ku(e),WorkspaceManager:e=>new xu(e),FileSystemProvider:t=>e.fileSystemProvider(t),WorkspaceLock:()=>new Zu,ConfigurationProvider:e=>new Eu(e)}}}function nl(e,t,n,r,i,s,o,a,c){return il([e,t,n,r,i,s,o,a,c].reduce(al,{}))}!function(e){e.merge=(e,t)=>al(al({},e),t)}(qu||(qu={}));const rl=Symbol("isProxy");function il(e,t){const n=new Proxy({},{deleteProperty:()=>!1,get:(r,i)=>ol(r,i,e,t||n),getOwnPropertyDescriptor:(r,i)=>(ol(r,i,e,t||n),Object.getOwnPropertyDescriptor(r,i)),has:(t,n)=>n in e,ownKeys:()=>[...Reflect.ownKeys(e),rl]});return n[rl]=!0,n}const sl=Symbol();function ol(e,t,n,r){if(t in e){if(e[t]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:e[t]});if(e[t]===sl)throw new Error('Cycle detected. Please make "'+String(t)+'" lazy. See https://langium.org/docs/configuration-services/#resolving-cyclic-dependencies');return e[t]}if(t in n){const i=n[t];e[t]=sl;try{e[t]="function"==typeof i?i(r):il(i,r)}catch(n){throw e[t]=n instanceof Error?n:void 0,n}return e[t]}}function al(e,t){if(t)for(const[n,r]of Object.entries(t))if(void 0!==r){const t=e[n];e[n]=null!==t&&null!==r&&"object"==typeof t&&"object"==typeof r?al(t,r):r}return e}class cl{readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}}const ul={fileSystemProvider:()=>new cl},ll={Grammar:()=>{},LanguageMetaData:()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"})},dl={AstReflection:()=>new Te};function hl(e){var t;const n=function(){const e=nl(tl(ul),dl),t=nl(el({shared:e}),ll);return e.ServiceRegistry.register(t),t}(),r=n.serializer.JsonSerializer.deserialize(e);return n.shared.workspace.LangiumDocumentFactory.fromModel(r,Kc.parse(`memory://${null!==(t=r.name)&&void 0!==t?t:"grammar"}.langium`)),r}},2559:(e,t,n)=>{n.d(t,{A:()=>i});var r=n(9501);const i=function(e,t,n){for(var i=-1,s=e.length;++i{n.d(t,{A:()=>r});const r=function(e,t){return e{n.d(t,{A:()=>s});var r=n(4288),i=n(8446);const s=function(e,t){var n=-1,s=(0,i.A)(e)?Array(e.length):[];return(0,r.A)(e,(function(e,r,i){s[++n]=t(e,r,i)})),s}},5507:(e,t,n)=>{n.d(t,{A:()=>l});var r=n(6318),i=n(2851),s=n(1521),o=n(5353),a=n(3149),c=n(901);const u=function(e,t,n,r){if(!(0,a.A)(e))return e;for(var u=-1,l=(t=(0,s.A)(t,e)).length,d=l-1,h=e;null!=h&&++u{n.d(t,{A:()=>i});var r=n(4507);const i=function(e){return(0,r.A)(e,4)}},3068:(e,t,n)=>{n.d(t,{A:()=>u});var r=n(4326),i=n(6984),s=n(6832),o=n(9999),a=Object.prototype,c=a.hasOwnProperty;const u=(0,r.A)((function(e,t){e=Object(e);var n=-1,r=t.length,u=r>2?t[2]:void 0;for(u&&(0,s.A)(t[0],t[1],u)&&(r=1);++n{n.d(t,{A:()=>u});var r=n(6307),i=n(8446),s=n(5041);var o=n(5707),a=n(8593),c=Math.max;const u=(l=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var s=null==n?0:(0,a.A)(n);return s<0&&(s=c(i+s,0)),(0,o.A)(e,(0,r.A)(t,3),s)},function(e,t,n){var o=Object(e);if(!(0,i.A)(e)){var a=(0,r.A)(t,3);e=(0,s.A)(e),t=function(e){return a(o[e],e,o)}}var c=l(e,t,n);return c>-1?o[a?e[c]:c]:void 0});var l},4098:(e,t,n)=>{n.d(t,{A:()=>i});var r=n(7671);const i=function(e){return null!=e&&e.length?(0,r.A)(e,1):[]}},9703:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(2383),i=n(2049),s=n(3098);const o=function(e){return"string"==typeof e||!(0,i.A)(e)&&(0,s.A)(e)&&"[object String]"==(0,r.A)(e)}},6666:(e,t,n)=>{n.d(t,{A:()=>r});const r=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},4722:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(5572),i=n(6307),s=n(2568),o=n(2049);const a=function(e,t){return((0,o.A)(e)?r.A:s.A)(e,(0,i.A)(t,3))}},6452:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(2559),i=n(6224),s=n(9008);const o=function(e){return e&&e.length?(0,r.A)(e,s.A,i.A):void 0}},3631:(e,t,n)=>{n.d(t,{A:()=>f});var r=/\s/;var i=/^\s+/;const s=function(e){return e?e.slice(0,function(e){for(var t=e.length;t--&&r.test(e.charAt(t)););return t}(e)+1).replace(i,""):e};var o=n(3149),a=n(9501),c=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,l=/^0o[0-7]+$/i,d=parseInt;var h=1/0;const f=function(e){return e?(e=function(e){if("number"==typeof e)return e;if((0,a.A)(e))return NaN;if((0,o.A)(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=(0,o.A)(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=s(e);var n=u.test(e);return n||l.test(e)?d(e.slice(2),n?2:8):c.test(e)?NaN:+e}(e))===h||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},8593:(e,t,n)=>{n.d(t,{A:()=>i});var r=n(3631);const i=function(e){var t=(0,r.A)(e),n=t%1;return t==t?n?t-n:t:0}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/756-713e8876.chunk.min.js b/themes/hugo-geekdoc/static/js/756-713e8876.chunk.min.js deleted file mode 100644 index c9220eafd..000000000 --- a/themes/hugo-geekdoc/static/js/756-713e8876.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[756],{7459:(t,e,a)=>{function r(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}a.d(e,{S:()=>r}),(0,a(798).K2)(r,"populateCommonDb")},1756:(t,e,a)=>{a.d(e,{diagram:()=>x});var r=a(7459),n=a(7323),o=a(8852),l=a(798),i=a(8731),c={packet:[]},s=structuredClone(c),d=l.UI.packet,k=(0,l.K2)((()=>{const t=(0,n.$t)({...d,...(0,l.zj)().packet});return t.showBits&&(t.paddingY+=10),t}),"getConfig"),p=(0,l.K2)((()=>s.packet),"getPacket"),b={pushWord:(0,l.K2)((t=>{t.length>0&&s.packet.push(t)}),"pushWord"),getPacket:p,getConfig:k,clear:(0,l.K2)((()=>{(0,l.IU)(),s=structuredClone(c)}),"clear"),setAccTitle:l.SV,getAccTitle:l.iN,setDiagramTitle:l.ke,getDiagramTitle:l.ab,getAccDescription:l.m7,setAccDescription:l.EI},g=(0,l.K2)((t=>{(0,r.S)(t,b);let e=-1,a=[],n=1;const{bitsPerRow:o}=b.getConfig();for(let{start:r,end:i,label:c}of t.blocks){if(i&&i{if(void 0===t.end&&(t.end=t.start),t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);return t.end+1<=e*a?[t,void 0]:[{start:t.start,end:e*a-1,label:t.label},{start:e*a,end:t.end,label:t.label}]}),"getNextFittingBlock"),f={parse:(0,l.K2)((async t=>{const e=await(0,i.qg)("packet",t);l.Rm.debug(e),g(e)}),"parse")},u=(0,l.K2)(((t,e,a,r)=>{const n=r.db,i=n.getConfig(),{rowHeight:c,paddingY:s,bitWidth:d,bitsPerRow:k}=i,p=n.getPacket(),b=n.getDiagramTitle(),g=c+s,h=g*(p.length+1)-(b?0:c),f=d*k+2,u=(0,o.D)(e);u.attr("viewbox",`0 0 ${f} ${h}`),(0,l.a$)(u,h,f,i.useMaxWidth);for(const[t,e]of p.entries())$(u,e,t,i);u.append("text").text(b).attr("x",f/2).attr("y",h-g/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")}),"draw"),$=(0,l.K2)(((t,e,a,{rowHeight:r,paddingX:n,paddingY:o,bitWidth:l,bitsPerRow:i,showBits:c})=>{const s=t.append("g"),d=a*(r+o)+o;for(const t of e){const e=t.start%i*l+1,a=(t.end-t.start+1)*l-n;if(s.append("rect").attr("x",e).attr("y",d).attr("width",a).attr("height",r).attr("class","packetBlock"),s.append("text").attr("x",e+a/2).attr("y",d+r/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(t.label),!c)continue;const o=t.end===t.start,k=d-2;s.append("text").attr("x",e+(o?a/2:0)).attr("y",k).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",o?"middle":"start").text(t.start),o||s.append("text").attr("x",e+a).attr("y",k).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(t.end)}}),"drawWord"),w={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},x={parser:f,db:b,renderer:{draw:u},styles:(0,l.K2)((({packet:t}={})=>{const e=(0,n.$t)(w,t);return`\n\t.packetByte {\n\t\tfont-size: ${e.byteFontSize};\n\t}\n\t.packetByte.start {\n\t\tfill: ${e.startByteColor};\n\t}\n\t.packetByte.end {\n\t\tfill: ${e.endByteColor};\n\t}\n\t.packetLabel {\n\t\tfill: ${e.labelColor};\n\t\tfont-size: ${e.labelFontSize};\n\t}\n\t.packetTitle {\n\t\tfill: ${e.titleColor};\n\t\tfont-size: ${e.titleFontSize};\n\t}\n\t.packetBlock {\n\t\tstroke: ${e.blockStrokeColor};\n\t\tstroke-width: ${e.blockStrokeWidth};\n\t\tfill: ${e.blockFillColor};\n\t}\n\t`}),"styles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/760-f618e0e3.chunk.min.js b/themes/hugo-geekdoc/static/js/760-f618e0e3.chunk.min.js deleted file mode 100644 index 9632ead6b..000000000 --- a/themes/hugo-geekdoc/static/js/760-f618e0e3.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[760],{5760:(e,c,k)=>{k.d(c,{createGitGraphServices:()=>s.b});var s=k(6288);k(8546)}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/799-c3a32fe5.chunk.min.js b/themes/hugo-geekdoc/static/js/799-c3a32fe5.chunk.min.js deleted file mode 100644 index 41a9cf396..000000000 --- a/themes/hugo-geekdoc/static/js/799-c3a32fe5.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[799],{799:(t,e,n)=>{n.d(e,{diagram:()=>J});var i=n(798),s=n(4852),r=n(5097),a=n(8041),o=n(5263),c=function(){var t=(0,i.K2)((function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n}),"o"),e=[6,8,10,11,12,14,16,17,20,21],n=[1,9],s=[1,10],r=[1,11],a=[1,12],o=[1,13],c=[1,16],l=[1,17],h={trace:(0,i.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:(0,i.K2)((function(t,e,n,i,s,r,a){var o=r.length-1;switch(s){case 1:return r[o-1];case 2:case 6:case 7:this.$=[];break;case 3:r[o-1].push(r[o]),this.$=r[o-1];break;case 4:case 5:this.$=r[o];break;case 8:i.getCommonDb().setDiagramTitle(r[o].substr(6)),this.$=r[o].substr(6);break;case 9:this.$=r[o].trim(),i.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=r[o].trim(),i.getCommonDb().setAccDescription(this.$);break;case 12:i.addSection(r[o].substr(8)),this.$=r[o].substr(8);break;case 15:i.addTask(r[o],0,""),this.$=r[o];break;case 16:i.addEvent(r[o].substr(2)),this.$=r[o]}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:n,12:s,14:r,16:a,17:o,18:14,19:15,20:c,21:l},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:18,11:n,12:s,14:r,16:a,17:o,18:14,19:15,20:c,21:l},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,19]},{15:[1,20]},t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),t(e,[2,4]),t(e,[2,9]),t(e,[2,10])],defaultActions:{},parseError:(0,i.K2)((function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)}),"parseError"),parse:(0,i.K2)((function(t){var e=this,n=[0],s=[],r=[null],a=[],o=this.table,c="",l=0,h=0,d=0,u=a.slice.call(arguments,1),p=Object.create(this.lexer),y={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(y.yy[g]=this.yy[g]);p.setInput(t,y.yy),y.yy.lexer=p,y.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;a.push(f);var m=p.options&&p.options.ranges;function x(){var t;return"number"!=typeof(t=s.pop()||p.lex()||1)&&(t instanceof Array&&(t=(s=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)((function(t){n.length=n.length-2*t,r.length=r.length-t,a.length=a.length-t}),"popStack"),(0,i.K2)(x,"lex");for(var b,k,_,w,v,K,S,$,E,T={};;){if(_=n[n.length-1],this.defaultActions[_]?w=this.defaultActions[_]:(null==b&&(b=x()),w=o[_]&&o[_][b]),void 0===w||!w.length||!w[0]){var I;for(K in E=[],o[_])this.terminals_[K]&&K>2&&E.push("'"+this.terminals_[K]+"'");I=p.showPosition?"Parse error on line "+(l+1)+":\n"+p.showPosition()+"\nExpecting "+E.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(I,{text:p.match,token:this.terminals_[b]||b,line:p.yylineno,loc:f,expected:E})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+b);switch(w[0]){case 1:n.push(b),r.push(p.yytext),a.push(p.yylloc),n.push(w[1]),b=null,k?(b=k,k=null):(h=p.yyleng,c=p.yytext,l=p.yylineno,f=p.yylloc,d>0&&d--);break;case 2:if(S=this.productions_[w[1]][1],T.$=r[r.length-S],T._$={first_line:a[a.length-(S||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(S||1)].first_column,last_column:a[a.length-1].last_column},m&&(T._$.range=[a[a.length-(S||1)].range[0],a[a.length-1].range[1]]),void 0!==(v=this.performAction.apply(T,[c,h,l,y.yy,w[1],r,a].concat(u))))return v;S&&(n=n.slice(0,-1*S*2),r=r.slice(0,-1*S),a=a.slice(0,-1*S)),n.push(this.productions_[w[1]][0]),r.push(T.$),a.push(T._$),$=o[n[n.length-2]][n[n.length-1]],n.push($);break;case 3:return!0}}return!0}),"parse")},d=function(){return{EOF:1,parseError:(0,i.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,i.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,i.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,i.K2)((function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,i.K2)((function(){return this._more=!0,this}),"more"),reject:(0,i.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,i.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,i.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,i.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,i.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,i.K2)((function(t,e){var n,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1}),"test_match"),next:(0,i.K2)((function(){if(this.done)return this.EOF;var t,e,n,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;re[0].length)){if(e=n,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,s[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,i.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,i.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,i.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,i.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,i.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,i.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,i.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)((function(t,e,n,i){switch(n){case 0:case 1:case 3:case 4:break;case 2:return 10;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}}),"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s[^:\n]+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18],inclusive:!0}}}}();function u(){this.yy={}}return h.lexer=d,(0,i.K2)(u,"Parser"),u.prototype=h,h.Parser=u,new u}();c.parser=c;var l=c,h={};(0,i.VA)(h,{addEvent:()=>w,addSection:()=>x,addTask:()=>_,addTaskOrg:()=>v,clear:()=>m,default:()=>S,getCommonDb:()=>f,getSections:()=>b,getTasks:()=>k});var d="",u=0,p=[],y=[],g=[],f=(0,i.K2)((()=>i.Wt),"getCommonDb"),m=(0,i.K2)((function(){p.length=0,y.length=0,d="",g.length=0,(0,i.IU)()}),"clear"),x=(0,i.K2)((function(t){d=t,p.push(t)}),"addSection"),b=(0,i.K2)((function(){return p}),"getSections"),k=(0,i.K2)((function(){let t=K(),e=0;for(;!t&&e<100;)t=K(),e++;return y.push(...g),y}),"getTasks"),_=(0,i.K2)((function(t,e,n){const i={id:u++,section:d,type:d,task:t,score:e||0,events:n?[n]:[]};g.push(i)}),"addTask"),w=(0,i.K2)((function(t){g.find((t=>t.id===u-1)).events.push(t)}),"addEvent"),v=(0,i.K2)((function(t){const e={section:d,type:d,description:t,task:t,classes:[]};y.push(e)}),"addTaskOrg"),K=(0,i.K2)((function(){const t=(0,i.K2)((function(t){return g[t].processed}),"compileTask");let e=!0;for(const[n,i]of g.entries())t(n),e=e&&i.processed;return e}),"compileTasks"),S={clear:m,getCommonDb:f,addSection:x,getSections:b,getTasks:k,addTask:_,addTaskOrg:v,addEvent:w},$=(0,i.K2)((function(t,e){const n=t.append("rect");return n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),n.attr("rx",e.rx),n.attr("ry",e.ry),void 0!==e.class&&n.attr("class",e.class),n}),"drawRect"),E=(0,i.K2)((function(t,e){const n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),r=t.append("g");function a(t){const n=(0,s.JLW)().startAngle(Math.PI/2).endAngle(Math.PI/2*3).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",n).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}function o(t){const n=(0,s.JLW)().startAngle(3*Math.PI/2).endAngle(Math.PI/2*5).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",n).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}function c(t){t.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return r.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),r.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),(0,i.K2)(a,"smile"),(0,i.K2)(o,"sad"),(0,i.K2)(c,"ambivalent"),e.score>3?a(r):e.score<3?o(r):c(r),n}),"drawFace"),T=(0,i.K2)((function(t,e){const n=t.append("circle");return n.attr("cx",e.cx),n.attr("cy",e.cy),n.attr("class","actor-"+e.pos),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("r",e.r),void 0!==n.class&&n.attr("class",n.class),void 0!==e.title&&n.append("title").text(e.title),n}),"drawCircle"),I=(0,i.K2)((function(t,e){const n=e.text.replace(//gi," "),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.attr("class","legend"),i.style("text-anchor",e.anchor),void 0!==e.class&&i.attr("class",e.class);const s=i.append("tspan");return s.attr("x",e.x+2*e.textMargin),s.text(n),i}),"drawText"),R=(0,i.K2)((function(t,e){function n(t,e,n,i,s){return t+","+e+" "+(t+n)+","+e+" "+(t+n)+","+(e+i-s)+" "+(t+n-1.2*s)+","+(e+i)+" "+t+","+(e+i)}(0,i.K2)(n,"genPoints");const s=t.append("polygon");s.attr("points",n(e.x,e.y,50,20,7)),s.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,I(t,e)}),"drawLabel"),A=(0,i.K2)((function(t,e,n){const i=t.append("g"),s=P();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=n.width,s.height=n.height,s.class="journey-section section-type-"+e.num,s.rx=3,s.ry=3,$(i,s),H(n)(e.text,i,s.x,s.y,s.width,s.height,{class:"journey-section section-type-"+e.num},n,e.colour)}),"drawSection"),L=-1,M=(0,i.K2)((function(t,e,n){const i=e.x+n.width/2,s=t.append("g");L++,s.append("line").attr("id","task"+L).attr("x1",i).attr("y1",e.y).attr("x2",i).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),E(s,{cx:i,cy:300+30*(5-e.score),score:e.score});const r=P();r.x=e.x,r.y=e.y,r.fill=e.fill,r.width=n.width,r.height=n.height,r.class="task task-type-"+e.num,r.rx=3,r.ry=3,$(s,r),H(n)(e.task,s,r.x,r.y,r.width,r.height,{class:"task"},n,e.colour)}),"drawTask"),C=(0,i.K2)((function(t,e){$(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()}),"drawBackgroundRect"),N=(0,i.K2)((function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}}),"getTextObj"),P=(0,i.K2)((function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}}),"getNoteRect"),H=function(){function t(t,e,n,i,r,a,o,c){s(e.append("text").attr("x",n+r/2).attr("y",i+a/2+5).style("font-color",c).style("text-anchor","middle").text(t),o)}function e(t,e,n,i,r,a,o,c,l){const{taskFontSize:h,taskFontFamily:d}=c,u=t.split(//gi);for(let t=0;t)/).reverse(),r=[],a=n.attr("y"),o=parseFloat(n.attr("dy")),c=n.text(null).append("tspan").attr("x",0).attr("y",a).attr("dy",o+"em");for(let s=0;se||"
"===t)&&(r.pop(),c.text(r.join(" ").trim()),r="
"===t?[""]:[t],c=n.append("tspan").attr("x",0).attr("y",a).attr("dy","1.1em").text(t))}))}(0,i.K2)(j,"wrap");var D=(0,i.K2)((function(t,e,n,i){const s=n%12-1,r=t.append("g");e.section=s,r.attr("class",(e.class?e.class+" ":"")+"timeline-node section-"+s);const a=r.append("g"),o=r.append("g"),c=o.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(j,e.width).node().getBBox(),l=i.fontSize?.replace?i.fontSize.replace("px",""):i.fontSize;return e.height=c.height+1.1*l*.5+e.padding,e.height=Math.max(e.height,e.maxHeight),e.width=e.width+2*e.padding,o.attr("transform","translate("+e.width/2+", "+e.padding/2+")"),W(a,e,s,i),e}),"drawNode"),z=(0,i.K2)((function(t,e,n){const i=t.append("g"),s=i.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(j,e.width).node().getBBox(),r=n.fontSize?.replace?n.fontSize.replace("px",""):n.fontSize;return i.remove(),s.height+1.1*r*.5+e.padding}),"getVirtualNodeHeight"),W=(0,i.K2)((function(t,e,n){t.append("path").attr("id","node-"+e.id).attr("class","node-bkg node-"+e.type).attr("d",`M0 ${e.height-5} v${10-e.height} q0,-5 5,-5 h${e.width-10} q5,0 5,5 v${e.height-5} H0 Z`),t.append("line").attr("class","node-line-"+n).attr("x1",0).attr("y1",e.height).attr("x2",e.width).attr("y2",e.height)}),"defaultBkg"),B={drawRect:$,drawCircle:T,drawSection:A,drawText:I,drawLabel:R,drawTask:M,drawBackgroundRect:C,getTextObj:N,getNoteRect:P,initGraphics:O,drawNode:D,getVirtualNodeHeight:z},F=(0,i.K2)((function(t,e,n,r){const a=(0,i.D7)(),o=a.leftMargin??50;i.Rm.debug("timeline",r.db);const c=a.securityLevel;let l;"sandbox"===c&&(l=(0,s.Ltv)("#i"+e));const h=("sandbox"===c?(0,s.Ltv)(l.nodes()[0].contentDocument.body):(0,s.Ltv)("body")).select("#"+e);h.append("g");const d=r.db.getTasks(),u=r.db.getCommonDb().getDiagramTitle();i.Rm.debug("task",d),B.initGraphics(h);const p=r.db.getSections();i.Rm.debug("sections",p);let y=0,g=0,f=0,m=0,x=50+o,b=50;m=50;let k=0,_=!0;p.forEach((function(t){const e={number:k,descr:t,section:k,width:150,padding:20,maxHeight:y},n=B.getVirtualNodeHeight(h,e,a);i.Rm.debug("sectionHeight before draw",n),y=Math.max(y,n+20)}));let w=0,v=0;i.Rm.debug("tasks.length",d.length);for(const[t,e]of d.entries()){const n={number:t,descr:e,section:e.section,width:150,padding:20,maxHeight:g},s=B.getVirtualNodeHeight(h,n,a);i.Rm.debug("taskHeight before draw",s),g=Math.max(g,s+20),w=Math.max(w,e.events.length);let r=0;for(const t of e.events){const n={descr:t,section:e.section,number:e.section,width:150,padding:20,maxHeight:50};r+=B.getVirtualNodeHeight(h,n,a)}v=Math.max(v,r)}i.Rm.debug("maxSectionHeight before draw",y),i.Rm.debug("maxTaskHeight before draw",g),p&&p.length>0?p.forEach((t=>{const e=d.filter((e=>e.section===t)),n={number:k,descr:t,section:k,width:200*Math.max(e.length,1)-50,padding:20,maxHeight:y};i.Rm.debug("sectionNode",n);const s=h.append("g"),r=B.drawNode(s,n,k,a);i.Rm.debug("sectionNode output",r),s.attr("transform",`translate(${x}, 50)`),b+=y+50,e.length>0&&V(h,e,k,x,b,g,a,w,v,y,!1),x+=200*Math.max(e.length,1),b=50,k++})):(_=!1,V(h,d,k,x,b,g,a,w,v,y,!0));const K=h.node().getBBox();i.Rm.debug("bounds",K),u&&h.append("text").text(u).attr("x",K.width/2-o).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),f=_?y+g+150:g+100,h.append("g").attr("class","lineWrapper").append("line").attr("x1",o).attr("y1",f).attr("x2",K.width+3*o).attr("y2",f).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),(0,i.ot)(void 0,h,a.timeline?.padding??50,a.timeline?.useMaxWidth??!1)}),"draw"),V=(0,i.K2)((function(t,e,n,s,r,a,o,c,l,h,d){for(const c of e){const e={descr:c.task,section:n,number:n,width:150,padding:20,maxHeight:a};i.Rm.debug("taskNode",e);const u=t.append("g").attr("class","taskWrapper"),p=B.drawNode(u,e,n,o).height;if(i.Rm.debug("taskHeight after draw",p),u.attr("transform",`translate(${s}, ${r})`),a=Math.max(a,p),c.events){const e=t.append("g").attr("class","lineWrapper");let i=a;r+=100,i+=G(t,c.events,n,s,r,o),r-=100,e.append("line").attr("x1",s+95).attr("y1",r+a).attr("x2",s+95).attr("y2",r+a+(d?a:h)+l+120).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}s+=200,d&&!o.timeline?.disableMulticolor&&n++}r-=10}),"drawTasks"),G=(0,i.K2)((function(t,e,n,s,r,a){let o=0;const c=r;r+=100;for(const c of e){const e={descr:c,section:n,number:n,width:150,padding:20,maxHeight:50};i.Rm.debug("eventNode",e);const l=t.append("g").attr("class","eventWrapper"),h=B.drawNode(l,e,n,a).height;o+=h,l.attr("transform",`translate(${s}, ${r})`),r=r+10+h}return r=c,o}),"drawEvents"),U={setConf:(0,i.K2)((()=>{}),"setConf"),draw:F},q=(0,i.K2)((t=>{let e="";for(let e=0;e`\n .edge {\n stroke-width: 3;\n }\n ${q(t)}\n .section-root rect, .section-root path, .section-root circle {\n fill: ${t.git0};\n }\n .section-root text {\n fill: ${t.gitBranchLabel0};\n }\n .icon-container {\n height:100%;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n .edge {\n fill: none;\n }\n .eventWrapper {\n filter: brightness(120%);\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/805-68e3b42f.chunk.min.js b/themes/hugo-geekdoc/static/js/805-68e3b42f.chunk.min.js new file mode 100644 index 000000000..97e5ee775 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/805-68e3b42f.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[805],{1805:(t,e,s)=>{s.d(e,{_$:()=>a,tM:()=>J,z2:()=>q});var n=s(5522),i=s(32),u=s(4852),r=function(){var t=(0,i.K2)((function(t,e,s,n){for(s=s||{},n=t.length;n--;s[t[n]]=e);return s}),"o"),e=[1,17],s=[1,18],n=[1,19],u=[1,39],r=[1,40],a=[1,25],o=[1,23],c=[1,24],l=[1,31],h=[1,32],A=[1,33],p=[1,34],d=[1,35],y=[1,36],C=[1,26],E=[1,27],m=[1,28],g=[1,29],b=[1,43],f=[1,30],k=[1,42],T=[1,44],F=[1,41],D=[1,45],B=[1,9],_=[1,8,9],S=[1,56],N=[1,57],L=[1,58],$=[1,59],x=[1,60],I=[1,61],O=[1,62],v=[1,8,9,40],K=[1,74],R=[1,8,9,12,13,22,38,40,43,60,61,62,63,64,65,66,71,73],w=[1,8,9,12,13,17,20,22,38,40,43,47,60,61,62,63,64,65,66,71,73,75,81,96,98,99],P=[13,75,81,96,98,99],M=[13,65,66,75,81,96,98,99],G=[13,60,61,62,63,64,75,81,96,98,99],U=[1,94],Y=[1,111],z=[1,109],Q=[1,103],j=[1,104],W=[1,105],X=[1,106],H=[1,107],q=[1,108],J=[1,110],V=[1,8,9,38,40,43],Z=[1,8,9,22],tt=[1,8,9,79],et=[1,8,9,22,74,75,79,81,82,83,84,85,86],st={trace:(0,i.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,DOT:17,className:18,classLiteralName:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,namespaceIdentifier:37,STRUCT_START:38,classStatements:39,STRUCT_STOP:40,NAMESPACE:41,classIdentifier:42,STYLE_SEPARATOR:43,members:44,CLASS:45,ANNOTATION_START:46,ANNOTATION_END:47,MEMBER:48,SEPARATOR:49,relation:50,NOTE_FOR:51,noteText:52,NOTE:53,direction_tb:54,direction_bt:55,direction_rl:56,direction_lr:57,relationType:58,lineType:59,AGGREGATION:60,EXTENSION:61,COMPOSITION:62,DEPENDENCY:63,LOLLIPOP:64,LINE:65,DOTTED_LINE:66,CALLBACK:67,LINK:68,LINK_TARGET:69,CLICK:70,CALLBACK_NAME:71,CALLBACK_ARGS:72,HREF:73,STYLE:74,ALPHA:75,stylesOpt:76,CSSCLASS:77,style:78,COMMA:79,styleComponent:80,NUM:81,COLON:82,UNIT:83,SPACE:84,BRKT:85,PCT:86,commentToken:87,textToken:88,graphCodeTokens:89,textNoTagsToken:90,TAGSTART:91,TAGEND:92,"==":93,"--":94,DEFAULT:95,MINUS:96,keywords:97,UNICODE_TEXT:98,BQUOTE_STR:99,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",17:"DOT",20:"GENERICTYPE",22:"LABEL",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",38:"STRUCT_START",40:"STRUCT_STOP",41:"NAMESPACE",43:"STYLE_SEPARATOR",45:"CLASS",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"MEMBER",49:"SEPARATOR",51:"NOTE_FOR",53:"NOTE",54:"direction_tb",55:"direction_bt",56:"direction_rl",57:"direction_lr",60:"AGGREGATION",61:"EXTENSION",62:"COMPOSITION",63:"DEPENDENCY",64:"LOLLIPOP",65:"LINE",66:"DOTTED_LINE",67:"CALLBACK",68:"LINK",69:"LINK_TARGET",70:"CLICK",71:"CALLBACK_NAME",72:"CALLBACK_ARGS",73:"HREF",74:"STYLE",75:"ALPHA",77:"CSSCLASS",79:"COMMA",81:"NUM",82:"COLON",83:"UNIT",84:"SPACE",85:"BRKT",86:"PCT",89:"graphCodeTokens",91:"TAGSTART",92:"TAGEND",93:"==",94:"--",95:"DEFAULT",96:"MINUS",97:"keywords",98:"UNICODE_TEXT",99:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,3],[15,2],[18,1],[18,3],[18,1],[18,2],[18,2],[18,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[37,2],[39,1],[39,2],[39,3],[24,1],[24,3],[24,4],[24,6],[42,2],[42,3],[26,4],[44,1],[44,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,1],[31,1],[31,1],[31,1],[50,3],[50,2],[50,2],[50,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[76,1],[76,3],[78,1],[78,2],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[87,1],[87,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[90,1],[90,1],[90,1],[90,1],[16,1],[16,1],[16,1],[16,1],[19,1],[52,1]],performAction:(0,i.K2)((function(t,e,s,n,i,u,r){var a=u.length-1;switch(i){case 8:this.$=u[a-1];break;case 9:case 12:case 14:this.$=u[a];break;case 10:case 13:this.$=u[a-2]+"."+u[a];break;case 11:case 15:case 91:this.$=u[a-1]+u[a];break;case 16:case 17:this.$=u[a-1]+"~"+u[a]+"~";break;case 18:n.addRelation(u[a]);break;case 19:u[a-1].title=n.cleanupLabel(u[a]),n.addRelation(u[a-1]);break;case 29:this.$=u[a].trim(),n.setAccTitle(this.$);break;case 30:case 31:this.$=u[a].trim(),n.setAccDescription(this.$);break;case 32:n.addClassesToNamespace(u[a-3],u[a-1]);break;case 33:n.addClassesToNamespace(u[a-4],u[a-1]);break;case 34:this.$=u[a],n.addNamespace(u[a]);break;case 35:case 45:case 88:this.$=[u[a]];break;case 36:this.$=[u[a-1]];break;case 37:u[a].unshift(u[a-2]),this.$=u[a];break;case 39:n.setCssClass(u[a-2],u[a]);break;case 40:n.addMembers(u[a-3],u[a-1]);break;case 41:n.setCssClass(u[a-5],u[a-3]),n.addMembers(u[a-5],u[a-1]);break;case 42:this.$=u[a],n.addClass(u[a]);break;case 43:this.$=u[a-1],n.addClass(u[a-1]),n.setClassLabel(u[a-1],u[a]);break;case 44:n.addAnnotation(u[a],u[a-2]);break;case 46:u[a].push(u[a-1]),this.$=u[a];break;case 47:case 49:case 50:break;case 48:n.addMember(u[a-1],n.cleanupLabel(u[a]));break;case 51:this.$={id1:u[a-2],id2:u[a],relation:u[a-1],relationTitle1:"none",relationTitle2:"none"};break;case 52:this.$={id1:u[a-3],id2:u[a],relation:u[a-1],relationTitle1:u[a-2],relationTitle2:"none"};break;case 53:this.$={id1:u[a-3],id2:u[a],relation:u[a-2],relationTitle1:"none",relationTitle2:u[a-1]};break;case 54:this.$={id1:u[a-4],id2:u[a],relation:u[a-2],relationTitle1:u[a-3],relationTitle2:u[a-1]};break;case 55:n.addNote(u[a],u[a-1]);break;case 56:n.addNote(u[a]);break;case 57:n.setDirection("TB");break;case 58:n.setDirection("BT");break;case 59:n.setDirection("RL");break;case 60:n.setDirection("LR");break;case 61:this.$={type1:u[a-2],type2:u[a],lineType:u[a-1]};break;case 62:this.$={type1:"none",type2:u[a],lineType:u[a-1]};break;case 63:this.$={type1:u[a-1],type2:"none",lineType:u[a]};break;case 64:this.$={type1:"none",type2:"none",lineType:u[a]};break;case 65:this.$=n.relationType.AGGREGATION;break;case 66:this.$=n.relationType.EXTENSION;break;case 67:this.$=n.relationType.COMPOSITION;break;case 68:this.$=n.relationType.DEPENDENCY;break;case 69:this.$=n.relationType.LOLLIPOP;break;case 70:this.$=n.lineType.LINE;break;case 71:this.$=n.lineType.DOTTED_LINE;break;case 72:case 78:this.$=u[a-2],n.setClickEvent(u[a-1],u[a]);break;case 73:case 79:this.$=u[a-3],n.setClickEvent(u[a-2],u[a-1]),n.setTooltip(u[a-2],u[a]);break;case 74:this.$=u[a-2],n.setLink(u[a-1],u[a]);break;case 75:this.$=u[a-3],n.setLink(u[a-2],u[a-1],u[a]);break;case 76:this.$=u[a-3],n.setLink(u[a-2],u[a-1]),n.setTooltip(u[a-2],u[a]);break;case 77:this.$=u[a-4],n.setLink(u[a-3],u[a-2],u[a]),n.setTooltip(u[a-3],u[a-1]);break;case 80:this.$=u[a-3],n.setClickEvent(u[a-2],u[a-1],u[a]);break;case 81:this.$=u[a-4],n.setClickEvent(u[a-3],u[a-2],u[a-1]),n.setTooltip(u[a-3],u[a]);break;case 82:this.$=u[a-3],n.setLink(u[a-2],u[a]);break;case 83:this.$=u[a-4],n.setLink(u[a-3],u[a-1],u[a]);break;case 84:this.$=u[a-4],n.setLink(u[a-3],u[a-1]),n.setTooltip(u[a-3],u[a]);break;case 85:this.$=u[a-5],n.setLink(u[a-4],u[a-2],u[a]),n.setTooltip(u[a-4],u[a-1]);break;case 86:this.$=u[a-2],n.setCssStyle(u[a-1],u[a]);break;case 87:n.setCssClass(u[a-1],u[a]);break;case 89:u[a-2].push(u[a]),this.$=u[a-2]}}),"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,18:20,19:38,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:e,34:s,36:n,37:21,41:u,42:22,45:r,46:a,48:o,49:c,51:l,53:h,54:A,55:p,56:d,57:y,67:C,68:E,70:m,74:g,75:b,77:f,81:k,96:T,98:F,99:D},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(B,[2,5],{8:[1,46]}),{8:[1,47]},t(_,[2,18],{22:[1,48]}),t(_,[2,20]),t(_,[2,21]),t(_,[2,22]),t(_,[2,23]),t(_,[2,24]),t(_,[2,25]),t(_,[2,26]),t(_,[2,27]),t(_,[2,28]),{33:[1,49]},{35:[1,50]},t(_,[2,31]),t(_,[2,47],{50:51,58:54,59:55,13:[1,52],22:[1,53],60:S,61:N,62:L,63:$,64:x,65:I,66:O}),{38:[1,63]},t(v,[2,38],{38:[1,65],43:[1,64]}),t(_,[2,49]),t(_,[2,50]),{16:66,75:b,81:k,96:T,98:F},{16:37,18:67,19:38,75:b,81:k,96:T,98:F,99:D},{16:37,18:68,19:38,75:b,81:k,96:T,98:F,99:D},{16:37,18:69,19:38,75:b,81:k,96:T,98:F,99:D},{75:[1,70]},{13:[1,71]},{16:37,18:72,19:38,75:b,81:k,96:T,98:F,99:D},{13:K,52:73},t(_,[2,57]),t(_,[2,58]),t(_,[2,59]),t(_,[2,60]),t(R,[2,12],{16:37,19:38,18:76,17:[1,75],20:[1,77],75:b,81:k,96:T,98:F,99:D}),t(R,[2,14],{20:[1,78]}),{15:79,16:80,75:b,81:k,96:T,98:F},{16:37,18:81,19:38,75:b,81:k,96:T,98:F,99:D},t(w,[2,114]),t(w,[2,115]),t(w,[2,116]),t(w,[2,117]),t([1,8,9,12,13,20,22,38,40,43,60,61,62,63,64,65,66,71,73],[2,118]),t(B,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,18:20,37:21,42:22,16:37,19:38,5:82,32:e,34:s,36:n,41:u,45:r,46:a,48:o,49:c,51:l,53:h,54:A,55:p,56:d,57:y,67:C,68:E,70:m,74:g,75:b,77:f,81:k,96:T,98:F,99:D}),{5:83,10:5,16:37,18:20,19:38,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:e,34:s,36:n,37:21,41:u,42:22,45:r,46:a,48:o,49:c,51:l,53:h,54:A,55:p,56:d,57:y,67:C,68:E,70:m,74:g,75:b,77:f,81:k,96:T,98:F,99:D},t(_,[2,19]),t(_,[2,29]),t(_,[2,30]),{13:[1,85],16:37,18:84,19:38,75:b,81:k,96:T,98:F,99:D},{50:86,58:54,59:55,60:S,61:N,62:L,63:$,64:x,65:I,66:O},t(_,[2,48]),{59:87,65:I,66:O},t(P,[2,64],{58:88,60:S,61:N,62:L,63:$,64:x}),t(M,[2,65]),t(M,[2,66]),t(M,[2,67]),t(M,[2,68]),t(M,[2,69]),t(G,[2,70]),t(G,[2,71]),{8:[1,90],24:91,39:89,42:22,45:r},{16:92,75:b,81:k,96:T,98:F},{44:93,48:U},{47:[1,95]},{13:[1,96]},{13:[1,97]},{71:[1,98],73:[1,99]},{22:Y,74:z,75:Q,76:100,78:101,80:102,81:j,82:W,83:X,84:H,85:q,86:J},{75:[1,112]},{13:K,52:113},t(_,[2,56]),t(_,[2,119]),{16:37,18:114,19:38,75:b,81:k,96:T,98:F,99:D},t(R,[2,15]),t(R,[2,16]),t(R,[2,17]),{38:[2,34]},{15:116,16:80,17:[1,115],38:[2,9],75:b,81:k,96:T,98:F},t(V,[2,42],{11:117,12:[1,118]}),t(B,[2,7]),{9:[1,119]},t(Z,[2,51]),{16:37,18:120,19:38,75:b,81:k,96:T,98:F,99:D},{13:[1,122],16:37,18:121,19:38,75:b,81:k,96:T,98:F,99:D},t(P,[2,63],{58:123,60:S,61:N,62:L,63:$,64:x}),t(P,[2,62]),{40:[1,124]},{24:91,39:125,42:22,45:r},{8:[1,126],40:[2,35]},t(v,[2,39],{38:[1,127]}),{40:[1,128]},{40:[2,45],44:129,48:U},{16:37,18:130,19:38,75:b,81:k,96:T,98:F,99:D},t(_,[2,72],{13:[1,131]}),t(_,[2,74],{13:[1,133],69:[1,132]}),t(_,[2,78],{13:[1,134],72:[1,135]}),{13:[1,136]},t(_,[2,86],{79:[1,137]}),t(tt,[2,88],{80:138,22:Y,74:z,75:Q,81:j,82:W,83:X,84:H,85:q,86:J}),t(et,[2,90]),t(et,[2,92]),t(et,[2,93]),t(et,[2,94]),t(et,[2,95]),t(et,[2,96]),t(et,[2,97]),t(et,[2,98]),t(et,[2,99]),t(et,[2,100]),t(_,[2,87]),t(_,[2,55]),t(R,[2,13]),{15:139,16:80,75:b,81:k,96:T,98:F},{38:[2,11]},t(V,[2,43]),{13:[1,140]},{1:[2,4]},t(Z,[2,53]),t(Z,[2,52]),{16:37,18:141,19:38,75:b,81:k,96:T,98:F,99:D},t(P,[2,61]),t(_,[2,32]),{40:[1,142]},{24:91,39:143,40:[2,36],42:22,45:r},{44:144,48:U},t(v,[2,40]),{40:[2,46]},t(_,[2,44]),t(_,[2,73]),t(_,[2,75]),t(_,[2,76],{69:[1,145]}),t(_,[2,79]),t(_,[2,80],{13:[1,146]}),t(_,[2,82],{13:[1,148],69:[1,147]}),{22:Y,74:z,75:Q,78:149,80:102,81:j,82:W,83:X,84:H,85:q,86:J},t(et,[2,91]),{38:[2,10]},{14:[1,150]},t(Z,[2,54]),t(_,[2,33]),{40:[2,37]},{40:[1,151]},t(_,[2,77]),t(_,[2,81]),t(_,[2,83]),t(_,[2,84],{69:[1,152]}),t(tt,[2,89],{80:138,22:Y,74:z,75:Q,81:j,82:W,83:X,84:H,85:q,86:J}),t(V,[2,8]),t(v,[2,41]),t(_,[2,85])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],79:[2,34],116:[2,11],119:[2,4],129:[2,46],139:[2,10],143:[2,37]},parseError:(0,i.K2)((function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)}),"parseError"),parse:(0,i.K2)((function(t){var e=this,s=[0],n=[],u=[null],r=[],a=this.table,o="",c=0,l=0,h=0,A=r.slice.call(arguments,1),p=Object.create(this.lexer),d={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(d.yy[y]=this.yy[y]);p.setInput(t,d.yy),d.yy.lexer=p,d.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var C=p.yylloc;r.push(C);var E=p.options&&p.options.ranges;function m(){var t;return"number"!=typeof(t=n.pop()||p.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)((function(t){s.length=s.length-2*t,u.length=u.length-t,r.length=r.length-t}),"popStack"),(0,i.K2)(m,"lex");for(var g,b,f,k,T,F,D,B,_,S={};;){if(f=s[s.length-1],this.defaultActions[f]?k=this.defaultActions[f]:(null==g&&(g=m()),k=a[f]&&a[f][g]),void 0===k||!k.length||!k[0]){var N;for(F in _=[],a[f])this.terminals_[F]&&F>2&&_.push("'"+this.terminals_[F]+"'");N=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+_.join(", ")+", got '"+(this.terminals_[g]||g)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==g?"end of input":"'"+(this.terminals_[g]||g)+"'"),this.parseError(N,{text:p.match,token:this.terminals_[g]||g,line:p.yylineno,loc:C,expected:_})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+f+", token: "+g);switch(k[0]){case 1:s.push(g),u.push(p.yytext),r.push(p.yylloc),s.push(k[1]),g=null,b?(g=b,b=null):(l=p.yyleng,o=p.yytext,c=p.yylineno,C=p.yylloc,h>0&&h--);break;case 2:if(D=this.productions_[k[1]][1],S.$=u[u.length-D],S._$={first_line:r[r.length-(D||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(D||1)].first_column,last_column:r[r.length-1].last_column},E&&(S._$.range=[r[r.length-(D||1)].range[0],r[r.length-1].range[1]]),void 0!==(T=this.performAction.apply(S,[o,l,c,d.yy,k[1],u,r].concat(A))))return T;D&&(s=s.slice(0,-1*D*2),u=u.slice(0,-1*D),r=r.slice(0,-1*D)),s.push(this.productions_[k[1]][0]),u.push(S.$),r.push(S._$),B=a[s[s.length-2]][s[s.length-1]],s.push(B);break;case 3:return!0}}return!0}),"parse")},nt=function(){return{EOF:1,parseError:(0,i.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,i.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,i.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,i.K2)((function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===n.length?this.yylloc.first_column:0)+n[n.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,i.K2)((function(){return this._more=!0,this}),"more"),reject:(0,i.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,i.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,i.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,i.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,i.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,i.K2)((function(t,e){var s,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var u in i)this[u]=i[u];return!1}return!1}),"test_match"),next:(0,i.K2)((function(){if(this.done)return this.EOF;var t,e,s,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),u=0;ue[0].length)){if(e=s,n=u,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,i[u])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,i.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,i.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,i.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,i.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,i.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,i.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,i.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,i.K2)((function(t,e,s,n){switch(s){case 0:return 54;case 1:return 55;case 2:return 56;case 3:return 57;case 4:case 5:case 14:case 30:case 35:case 39:case 46:break;case 6:return this.begin("acc_title"),32;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),34;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 19:case 22:case 24:case 57:case 60:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:case 34:return 8;case 15:case 16:return 7;case 17:case 36:case 44:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 71;case 23:return 72;case 25:return"STR";case 26:this.begin("string");break;case 27:return 74;case 28:return this.begin("namespace"),41;case 29:case 38:return this.popState(),8;case 31:return this.begin("namespace-body"),38;case 32:case 42:return this.popState(),40;case 33:case 43:return"EOF_IN_STRUCT";case 37:return this.begin("class"),45;case 40:return this.popState(),this.popState(),40;case 41:return this.begin("class-body"),38;case 45:return"OPEN_IN_STRUCT";case 47:return"MEMBER";case 48:return 77;case 49:return 67;case 50:return 68;case 51:return 70;case 52:return 51;case 53:return 53;case 54:return 46;case 55:return 47;case 56:return 73;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:case 64:case 65:case 66:return 69;case 67:case 68:return 61;case 69:case 70:return 63;case 71:return 62;case 72:return 60;case 73:return 64;case 74:return 65;case 75:return 66;case 76:return 22;case 77:return 43;case 78:return 96;case 79:return 17;case 80:return"PLUS";case 81:return 82;case 82:return 79;case 83:case 84:return 85;case 85:return 86;case 86:case 87:return"EQUALS";case 88:return 75;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 81;case 93:return 98;case 94:case 95:return 84;case 96:return 9}}),"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,32,33,34,35,36,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},namespace:{rules:[26,28,29,30,31,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},"class-body":{rules:[26,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},class:{rules:[26,38,39,40,41,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr:{rules:[9,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_title:{rules:[7,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_args:{rules:[22,23,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_name:{rules:[19,20,21,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},href:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},struct:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},generic:{rules:[26,48,49,50,51,52,53,54,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},bqstring:{rules:[26,48,49,50,51,52,53,54,55,56,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},string:{rules:[24,25,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96],inclusive:!0}}}}();function it(){this.yy={}}return st.lexer=nt,(0,i.K2)(it,"Parser"),it.prototype=st,st.Parser=it,new it}();r.parser=r;var a=r,o=["#","+","~","-",""],c=class{static{(0,i.K2)(this,"ClassMember")}constructor(t,e){this.memberType=e,this.visibility="",this.classifier="";const s=(0,i.jZ)(t,(0,i.D7)());this.parseMember(s)}getDisplayDetails(){let t=this.visibility+(0,i.QO)(this.id);return"method"===this.memberType&&(t+=`(${(0,i.QO)(this.parameters.trim())})`,this.returnType&&(t+=" : "+(0,i.QO)(this.returnType))),t=t.trim(),{displayText:t,cssStyle:this.parseClassifier()}}parseMember(t){let e="";if("method"===this.memberType){const s=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(t);if(s){const t=s[1]?s[1].trim():"";if(o.includes(t)&&(this.visibility=t),this.id=s[2].trim(),this.parameters=s[3]?s[3].trim():"",e=s[4]?s[4].trim():"",this.returnType=s[5]?s[5].trim():"",""===e){const t=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(t)&&(e=t,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{const s=t.length,n=t.substring(0,1),i=t.substring(s-1);o.includes(n)&&(this.visibility=n),/[$*]/.exec(i)&&(e=i),this.id=t.substring(""===this.visibility?0:1,""===e?s:s-1)}this.classifier=e}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},l="classId-",h=[],A=new Map,p=[],d=0,y=new Map,C=0,E=[],m=(0,i.K2)((t=>i.Y2.sanitizeText(t,(0,i.D7)())),"sanitizeText"),g=(0,i.K2)((function(t){const e=i.Y2.sanitizeText(t,(0,i.D7)());let s="",n=e;if(e.indexOf("~")>0){const t=e.split("~");n=m(t[0]),s=m(t[1])}return{className:n,type:s}}),"splitClassNameAndType"),b=(0,i.K2)((function(t,e){const s=i.Y2.sanitizeText(t,(0,i.D7)());e&&(e=m(e));const{className:n}=g(s);A.get(n).label=e}),"setClassLabel"),f=(0,i.K2)((function(t){const e=i.Y2.sanitizeText(t,(0,i.D7)()),{className:s,type:n}=g(e);if(A.has(s))return;const u=i.Y2.sanitizeText(s,(0,i.D7)());A.set(u,{id:u,type:n,label:u,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:l+u+"-"+d}),d++}),"addClass"),k=(0,i.K2)((function(t){const e=i.Y2.sanitizeText(t,(0,i.D7)());if(A.has(e))return A.get(e).domId;throw new Error("Class not found: "+e)}),"lookUpDomId"),T=(0,i.K2)((function(){h=[],A=new Map,p=[],(E=[]).push(G),y=new Map,C=0,U="TB",(0,i.IU)()}),"clear"),F=(0,i.K2)((function(t){return A.get(t)}),"getClass"),D=(0,i.K2)((function(){return A}),"getClasses"),B=(0,i.K2)((function(){return h}),"getRelations"),_=(0,i.K2)((function(){return p}),"getNotes"),S=(0,i.K2)((function(t){i.Rm.debug("Adding relation: "+JSON.stringify(t)),f(t.id1),f(t.id2),t.id1=g(t.id1).className,t.id2=g(t.id2).className,t.relationTitle1=i.Y2.sanitizeText(t.relationTitle1.trim(),(0,i.D7)()),t.relationTitle2=i.Y2.sanitizeText(t.relationTitle2.trim(),(0,i.D7)()),h.push(t)}),"addRelation"),N=(0,i.K2)((function(t,e){const s=g(t).className;A.get(s).annotations.push(e)}),"addAnnotation"),L=(0,i.K2)((function(t,e){f(t);const s=g(t).className,n=A.get(s);if("string"==typeof e){const t=e.trim();t.startsWith("<<")&&t.endsWith(">>")?n.annotations.push(m(t.substring(2,t.length-2))):t.indexOf(")")>0?n.methods.push(new c(t,"method")):t&&n.members.push(new c(t,"attribute"))}}),"addMember"),$=(0,i.K2)((function(t,e){Array.isArray(e)&&(e.reverse(),e.forEach((e=>L(t,e))))}),"addMembers"),x=(0,i.K2)((function(t,e){const s={id:`note${p.length}`,class:e,text:t};p.push(s)}),"addNote"),I=(0,i.K2)((function(t){return t.startsWith(":")&&(t=t.substring(1)),m(t.trim())}),"cleanupLabel"),O=(0,i.K2)((function(t,e){t.split(",").forEach((function(t){let s=t;/\d/.exec(t[0])&&(s=l+s);const n=A.get(s);n&&n.cssClasses.push(e)}))}),"setCssClass"),v=(0,i.K2)((function(t,e){t.split(",").forEach((function(t){void 0!==e&&(A.get(t).tooltip=m(e))}))}),"setTooltip"),K=(0,i.K2)((function(t,e){return e&&y.has(e)?y.get(e).classes.get(t).tooltip:A.get(t).tooltip}),"getTooltip"),R=(0,i.K2)((function(t,e,s){const u=(0,i.D7)();t.split(",").forEach((function(t){let i=t;/\d/.exec(t[0])&&(i=l+i);const r=A.get(i);r&&(r.link=n._K.formatUrl(e,u),"sandbox"===u.securityLevel?r.linkTarget="_top":r.linkTarget="string"==typeof s?m(s):"_blank")})),O(t,"clickable")}),"setLink"),w=(0,i.K2)((function(t,e,s){t.split(",").forEach((function(t){P(t,e,s),A.get(t).haveCallback=!0})),O(t,"clickable")}),"setClickEvent"),P=(0,i.K2)((function(t,e,s){const u=i.Y2.sanitizeText(t,(0,i.D7)());if("loose"!==(0,i.D7)().securityLevel)return;if(void 0===e)return;const r=u;if(A.has(r)){const t=k(r);let i=[];if("string"==typeof s){i=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t")),t.classed("hover",!0)})).on("mouseout",(function(){e.transition().duration(500).style("opacity",0),(0,u.Ltv)(this).classed("hover",!1)}))}),"setupToolTips");E.push(G);var U="TB",Y=(0,i.K2)((()=>U),"getDirection"),z=(0,i.K2)((t=>{U=t}),"setDirection"),Q=(0,i.K2)((function(t){y.has(t)||(y.set(t,{id:t,classes:new Map,children:{},domId:l+t+"-"+C}),C++)}),"addNamespace"),j=(0,i.K2)((function(t){return y.get(t)}),"getNamespace"),W=(0,i.K2)((function(){return y}),"getNamespaces"),X=(0,i.K2)((function(t,e){if(y.has(t))for(const s of e){const{className:e}=g(s);A.get(e).parent=t,y.get(t).classes.set(e,A.get(e))}}),"addClassesToNamespace"),H=(0,i.K2)((function(t,e){const s=A.get(t);if(e&&s)for(const t of e)t.includes(",")?s.styles.push(...t.split(",")):s.styles.push(t)}),"setCssStyle"),q={setAccTitle:i.SV,getAccTitle:i.iN,getAccDescription:i.m7,setAccDescription:i.EI,getConfig:(0,i.K2)((()=>(0,i.D7)().class),"getConfig"),addClass:f,bindFunctions:M,clear:T,getClass:F,getClasses:D,getNotes:_,addAnnotation:N,addNote:x,getRelations:B,addRelation:S,getDirection:Y,setDirection:z,addMember:L,addMembers:$,cleanupLabel:I,lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},setClickEvent:w,setCssClass:O,setLink:R,getTooltip:K,setTooltip:v,lookUpDomId:k,setDiagramTitle:i.ke,getDiagramTitle:i.ab,setClassLabel:b,addNamespace:Q,addClassesToNamespace:X,getNamespace:j,getNamespaces:W,setCssStyle:H},J=(0,i.K2)((t=>`g.classGroup text {\n fill: ${t.nodeBorder||t.classText};\n stroke: none;\n font-family: ${t.fontFamily};\n font-size: 10px;\n\n .title {\n font-weight: bolder;\n }\n\n}\n\n.nodeLabel, .edgeLabel {\n color: ${t.classText};\n}\n.edgeLabel .label rect {\n fill: ${t.mainBkg};\n}\n.label text {\n fill: ${t.classText};\n}\n.edgeLabel .label span {\n background: ${t.mainBkg};\n}\n\n.classTitle {\n font-weight: bolder;\n}\n.node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n\n\n.divider {\n stroke: ${t.nodeBorder};\n stroke-width: 1;\n}\n\ng.clickable {\n cursor: pointer;\n}\n\ng.classGroup rect {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n}\n\ng.classGroup line {\n stroke: ${t.nodeBorder};\n stroke-width: 1;\n}\n\n.classLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ${t.mainBkg};\n opacity: 0.5;\n}\n\n.classLabel .label {\n fill: ${t.nodeBorder};\n font-size: 10px;\n}\n\n.relation {\n stroke: ${t.lineColor};\n stroke-width: 1;\n fill: none;\n}\n\n.dashed-line{\n stroke-dasharray: 3;\n}\n\n.dotted-line{\n stroke-dasharray: 1 2;\n}\n\n#compositionStart, .composition {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#compositionEnd, .composition {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#dependencyStart, .dependency {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#dependencyStart, .dependency {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#extensionStart, .extension {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#extensionEnd, .extension {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#aggregationStart, .aggregation {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#aggregationEnd, .aggregation {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#lollipopStart, .lollipop {\n fill: ${t.mainBkg} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#lollipopEnd, .lollipop {\n fill: ${t.mainBkg} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n.edgeTerminals {\n font-size: 11px;\n line-height: initial;\n}\n\n.classTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n}\n`),"getStyles")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/81-3a33b512.chunk.min.js b/themes/hugo-geekdoc/static/js/81-3a33b512.chunk.min.js new file mode 100644 index 000000000..42190223d --- /dev/null +++ b/themes/hugo-geekdoc/static/js/81-3a33b512.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[81],{3081:(e,r,a)=>{a.d(r,{diagram:()=>g});var t=a(1132),n=a(1661),s=a(32),d=a(8731),i={parse:(0,s.K2)((async e=>{const r=await(0,d.qg)("info",e);s.Rm.debug(r)}),"parse")},o={version:t.r},g={parser:i,db:{getVersion:(0,s.K2)((()=>o.version),"getVersion")},renderer:{draw:(0,s.K2)(((e,r,a)=>{s.Rm.debug("rendering info diagram\n"+e);const t=(0,n.D)(r);(0,s.a$)(t,100,400,!0),t.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${a}`)}),"draw")}}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/826-2ac63153.chunk.min.js b/themes/hugo-geekdoc/static/js/826-2ac63153.chunk.min.js new file mode 100644 index 000000000..15debd139 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/826-2ac63153.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[826],{4826:(t,e,a)=>{a.d(e,{diagram:()=>Nt});var n=a(4323),i=a(5522),r=a(32),s=a(4852),l=a(6750),o=function(){var t=(0,r.K2)((function(t,e,a,n){for(a=a||{},n=t.length;n--;a[t[n]]=e);return a}),"o"),e=[1,24],a=[1,25],n=[1,26],i=[1,27],s=[1,28],l=[1,63],o=[1,64],h=[1,65],d=[1,66],u=[1,67],p=[1,68],y=[1,69],g=[1,29],f=[1,30],b=[1,31],x=[1,32],_=[1,33],m=[1,34],E=[1,35],S=[1,36],A=[1,37],C=[1,38],w=[1,39],k=[1,40],O=[1,41],T=[1,42],v=[1,43],R=[1,44],D=[1,45],N=[1,46],P=[1,47],B=[1,48],I=[1,50],M=[1,51],j=[1,52],K=[1,53],L=[1,54],Y=[1,55],U=[1,56],F=[1,57],X=[1,58],z=[1,59],W=[1,60],Q=[14,42],$=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],H=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],q=[1,82],V=[1,83],G=[1,84],J=[1,85],Z=[12,14,42],tt=[12,14,33,42],et=[12,14,33,42,76,77,79,80],at=[12,33],nt=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],it={trace:(0,r.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:(0,r.K2)((function(t,e,a,n,i,r,s){var l=r.length-1;switch(i){case 3:n.setDirection("TB");break;case 4:n.setDirection("BT");break;case 5:n.setDirection("RL");break;case 6:n.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:n.setC4Type(r[l-3]);break;case 19:n.setTitle(r[l].substring(6)),this.$=r[l].substring(6);break;case 20:n.setAccDescription(r[l].substring(15)),this.$=r[l].substring(15);break;case 21:this.$=r[l].trim(),n.setTitle(this.$);break;case 22:case 23:this.$=r[l].trim(),n.setAccDescription(this.$);break;case 28:r[l].splice(2,0,"ENTERPRISE"),n.addPersonOrSystemBoundary(...r[l]),this.$=r[l];break;case 29:r[l].splice(2,0,"SYSTEM"),n.addPersonOrSystemBoundary(...r[l]),this.$=r[l];break;case 30:n.addPersonOrSystemBoundary(...r[l]),this.$=r[l];break;case 31:r[l].splice(2,0,"CONTAINER"),n.addContainerBoundary(...r[l]),this.$=r[l];break;case 32:n.addDeploymentNode("node",...r[l]),this.$=r[l];break;case 33:n.addDeploymentNode("nodeL",...r[l]),this.$=r[l];break;case 34:n.addDeploymentNode("nodeR",...r[l]),this.$=r[l];break;case 35:n.popBoundaryParseStack();break;case 39:n.addPersonOrSystem("person",...r[l]),this.$=r[l];break;case 40:n.addPersonOrSystem("external_person",...r[l]),this.$=r[l];break;case 41:n.addPersonOrSystem("system",...r[l]),this.$=r[l];break;case 42:n.addPersonOrSystem("system_db",...r[l]),this.$=r[l];break;case 43:n.addPersonOrSystem("system_queue",...r[l]),this.$=r[l];break;case 44:n.addPersonOrSystem("external_system",...r[l]),this.$=r[l];break;case 45:n.addPersonOrSystem("external_system_db",...r[l]),this.$=r[l];break;case 46:n.addPersonOrSystem("external_system_queue",...r[l]),this.$=r[l];break;case 47:n.addContainer("container",...r[l]),this.$=r[l];break;case 48:n.addContainer("container_db",...r[l]),this.$=r[l];break;case 49:n.addContainer("container_queue",...r[l]),this.$=r[l];break;case 50:n.addContainer("external_container",...r[l]),this.$=r[l];break;case 51:n.addContainer("external_container_db",...r[l]),this.$=r[l];break;case 52:n.addContainer("external_container_queue",...r[l]),this.$=r[l];break;case 53:n.addComponent("component",...r[l]),this.$=r[l];break;case 54:n.addComponent("component_db",...r[l]),this.$=r[l];break;case 55:n.addComponent("component_queue",...r[l]),this.$=r[l];break;case 56:n.addComponent("external_component",...r[l]),this.$=r[l];break;case 57:n.addComponent("external_component_db",...r[l]),this.$=r[l];break;case 58:n.addComponent("external_component_queue",...r[l]),this.$=r[l];break;case 60:n.addRel("rel",...r[l]),this.$=r[l];break;case 61:n.addRel("birel",...r[l]),this.$=r[l];break;case 62:n.addRel("rel_u",...r[l]),this.$=r[l];break;case 63:n.addRel("rel_d",...r[l]),this.$=r[l];break;case 64:n.addRel("rel_l",...r[l]),this.$=r[l];break;case 65:n.addRel("rel_r",...r[l]),this.$=r[l];break;case 66:n.addRel("rel_b",...r[l]),this.$=r[l];break;case 67:r[l].splice(0,1),n.addRel("rel",...r[l]),this.$=r[l];break;case 68:n.updateElStyle("update_el_style",...r[l]),this.$=r[l];break;case 69:n.updateRelStyle("update_rel_style",...r[l]),this.$=r[l];break;case 70:n.updateLayoutConfig("update_layout_config",...r[l]),this.$=r[l];break;case 71:this.$=[r[l]];break;case 72:r[l].unshift(r[l-1]),this.$=r[l];break;case 73:case 75:this.$=r[l].trim();break;case 74:let t={};t[r[l-1].trim()]=r[l].trim(),this.$=t;break;case 76:this.$=""}}),"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{13:70,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{13:71,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{13:72,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{13:73,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{14:[1,74]},t(Q,[2,13],{43:23,29:49,30:61,32:62,20:75,34:l,36:o,37:h,38:d,39:u,40:p,41:y,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W}),t(Q,[2,14]),t($,[2,16],{12:[1,76]}),t(Q,[2,36],{12:[1,77]}),t(H,[2,19]),t(H,[2,20]),{25:[1,78]},{27:[1,79]},t(H,[2,23]),{35:80,75:81,76:q,77:V,79:G,80:J},{35:86,75:81,76:q,77:V,79:G,80:J},{35:87,75:81,76:q,77:V,79:G,80:J},{35:88,75:81,76:q,77:V,79:G,80:J},{35:89,75:81,76:q,77:V,79:G,80:J},{35:90,75:81,76:q,77:V,79:G,80:J},{35:91,75:81,76:q,77:V,79:G,80:J},{35:92,75:81,76:q,77:V,79:G,80:J},{35:93,75:81,76:q,77:V,79:G,80:J},{35:94,75:81,76:q,77:V,79:G,80:J},{35:95,75:81,76:q,77:V,79:G,80:J},{35:96,75:81,76:q,77:V,79:G,80:J},{35:97,75:81,76:q,77:V,79:G,80:J},{35:98,75:81,76:q,77:V,79:G,80:J},{35:99,75:81,76:q,77:V,79:G,80:J},{35:100,75:81,76:q,77:V,79:G,80:J},{35:101,75:81,76:q,77:V,79:G,80:J},{35:102,75:81,76:q,77:V,79:G,80:J},{35:103,75:81,76:q,77:V,79:G,80:J},{35:104,75:81,76:q,77:V,79:G,80:J},t(Z,[2,59]),{35:105,75:81,76:q,77:V,79:G,80:J},{35:106,75:81,76:q,77:V,79:G,80:J},{35:107,75:81,76:q,77:V,79:G,80:J},{35:108,75:81,76:q,77:V,79:G,80:J},{35:109,75:81,76:q,77:V,79:G,80:J},{35:110,75:81,76:q,77:V,79:G,80:J},{35:111,75:81,76:q,77:V,79:G,80:J},{35:112,75:81,76:q,77:V,79:G,80:J},{35:113,75:81,76:q,77:V,79:G,80:J},{35:114,75:81,76:q,77:V,79:G,80:J},{35:115,75:81,76:q,77:V,79:G,80:J},{20:116,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{12:[1,118],33:[1,117]},{35:119,75:81,76:q,77:V,79:G,80:J},{35:120,75:81,76:q,77:V,79:G,80:J},{35:121,75:81,76:q,77:V,79:G,80:J},{35:122,75:81,76:q,77:V,79:G,80:J},{35:123,75:81,76:q,77:V,79:G,80:J},{35:124,75:81,76:q,77:V,79:G,80:J},{35:125,75:81,76:q,77:V,79:G,80:J},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},t(Q,[2,15]),t($,[2,17],{21:22,19:130,22:e,23:a,24:n,26:i,28:s}),t(Q,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:e,23:a,24:n,26:i,28:s,34:l,36:o,37:h,38:d,39:u,40:p,41:y,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W}),t(H,[2,21]),t(H,[2,22]),t(Z,[2,39]),t(tt,[2,71],{75:81,35:132,76:q,77:V,79:G,80:J}),t(et,[2,73]),{78:[1,133]},t(et,[2,75]),t(et,[2,76]),t(Z,[2,40]),t(Z,[2,41]),t(Z,[2,42]),t(Z,[2,43]),t(Z,[2,44]),t(Z,[2,45]),t(Z,[2,46]),t(Z,[2,47]),t(Z,[2,48]),t(Z,[2,49]),t(Z,[2,50]),t(Z,[2,51]),t(Z,[2,52]),t(Z,[2,53]),t(Z,[2,54]),t(Z,[2,55]),t(Z,[2,56]),t(Z,[2,57]),t(Z,[2,58]),t(Z,[2,60]),t(Z,[2,61]),t(Z,[2,62]),t(Z,[2,63]),t(Z,[2,64]),t(Z,[2,65]),t(Z,[2,66]),t(Z,[2,67]),t(Z,[2,68]),t(Z,[2,69]),t(Z,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},t(at,[2,28]),t(at,[2,29]),t(at,[2,30]),t(at,[2,31]),t(at,[2,32]),t(at,[2,33]),t(at,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},t($,[2,18]),t(Q,[2,38]),t(tt,[2,72]),t(et,[2,74]),t(Z,[2,24]),t(Z,[2,35]),t(nt,[2,25]),t(nt,[2,26],{12:[1,138]}),t(nt,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:(0,r.K2)((function(t,e){if(!e.recoverable){var a=new Error(t);throw a.hash=e,a}this.trace(t)}),"parseError"),parse:(0,r.K2)((function(t){var e=this,a=[0],n=[],i=[null],s=[],l=this.table,o="",c=0,h=0,d=0,u=s.slice.call(arguments,1),p=Object.create(this.lexer),y={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(y.yy[g]=this.yy[g]);p.setInput(t,y.yy),y.yy.lexer=p,y.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;s.push(f);var b=p.options&&p.options.ranges;function x(){var t;return"number"!=typeof(t=n.pop()||p.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,r.K2)((function(t){a.length=a.length-2*t,i.length=i.length-t,s.length=s.length-t}),"popStack"),(0,r.K2)(x,"lex");for(var _,m,E,S,A,C,w,k,O,T={};;){if(E=a[a.length-1],this.defaultActions[E]?S=this.defaultActions[E]:(null==_&&(_=x()),S=l[E]&&l[E][_]),void 0===S||!S.length||!S[0]){var v;for(C in O=[],l[E])this.terminals_[C]&&C>2&&O.push("'"+this.terminals_[C]+"'");v=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+O.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==_?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(v,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:f,expected:O})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+_);switch(S[0]){case 1:a.push(_),i.push(p.yytext),s.push(p.yylloc),a.push(S[1]),_=null,m?(_=m,m=null):(h=p.yyleng,o=p.yytext,c=p.yylineno,f=p.yylloc,d>0&&d--);break;case 2:if(w=this.productions_[S[1]][1],T.$=i[i.length-w],T._$={first_line:s[s.length-(w||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(w||1)].first_column,last_column:s[s.length-1].last_column},b&&(T._$.range=[s[s.length-(w||1)].range[0],s[s.length-1].range[1]]),void 0!==(A=this.performAction.apply(T,[o,h,c,y.yy,S[1],i,s].concat(u))))return A;w&&(a=a.slice(0,-1*w*2),i=i.slice(0,-1*w),s=s.slice(0,-1*w)),a.push(this.productions_[S[1]][0]),i.push(T.$),s.push(T._$),k=l[a[a.length-2]][a[a.length-1]],a.push(k);break;case 3:return!0}}return!0}),"parse")},rt=function(){return{EOF:1,parseError:(0,r.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,r.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,r.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,r.K2)((function(t){var e=t.length,a=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===n.length?this.yylloc.first_column:0)+n[n.length-a.length].length-a[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,r.K2)((function(){return this._more=!0,this}),"more"),reject:(0,r.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,r.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,r.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,r.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,r.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,r.K2)((function(t,e){var a,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],a=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),a)return a;if(this._backtrack){for(var r in i)this[r]=i[r];return!1}return!1}),"test_match"),next:(0,r.K2)((function(){if(this.done)return this.EOF;var t,e,a,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),r=0;re[0].length)){if(e=a,n=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(a,i[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,r.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,r.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,r.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,r.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,r.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,r.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,r.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,r.K2)((function(t,e,a,n){switch(a){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),26;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 73:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:case 16:case 70:break;case 14:c;break;case 15:return 12;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;case 23:return this.begin("person"),44;case 24:return this.begin("system_ext_queue"),51;case 25:return this.begin("system_ext_db"),50;case 26:return this.begin("system_ext"),49;case 27:return this.begin("system_queue"),48;case 28:return this.begin("system_db"),47;case 29:return this.begin("system"),46;case 30:return this.begin("boundary"),37;case 31:return this.begin("enterprise_boundary"),34;case 32:return this.begin("system_boundary"),36;case 33:return this.begin("container_ext_queue"),57;case 34:return this.begin("container_ext_db"),56;case 35:return this.begin("container_ext"),55;case 36:return this.begin("container_queue"),54;case 37:return this.begin("container_db"),53;case 38:return this.begin("container"),52;case 39:return this.begin("container_boundary"),38;case 40:return this.begin("component_ext_queue"),63;case 41:return this.begin("component_ext_db"),62;case 42:return this.begin("component_ext"),61;case 43:return this.begin("component_queue"),60;case 44:return this.begin("component_db"),59;case 45:return this.begin("component"),58;case 46:case 47:return this.begin("node"),39;case 48:return this.begin("node_l"),40;case 49:return this.begin("node_r"),41;case 50:return this.begin("rel"),64;case 51:return this.begin("birel"),65;case 52:case 53:return this.begin("rel_u"),66;case 54:case 55:return this.begin("rel_d"),67;case 56:case 57:return this.begin("rel_l"),68;case 58:case 59:return this.begin("rel_r"),69;case 60:return this.begin("rel_b"),70;case 61:return this.begin("rel_index"),71;case 62:return this.begin("update_el_style"),72;case 63:return this.begin("update_rel_style"),73;case 64:return this.begin("update_layout_config"),74;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 67:this.begin("attribute");break;case 68:case 79:this.popState(),this.popState();break;case 69:case 71:return 80;case 72:this.begin("string");break;case 74:case 80:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}}),"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}}}();function st(){this.yy={}}return it.lexer=rt,(0,r.K2)(st,"Parser"),st.prototype=it,it.Parser=st,new st}();o.parser=o;var h,d=o,u=[],p=[""],y="global",g="",f=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],b=[],x="",_=!1,m=4,E=2,S=(0,r.K2)((function(){return h}),"getC4Type"),A=(0,r.K2)((function(t){let e=(0,r.jZ)(t,(0,r.D7)());h=e}),"setC4Type"),C=(0,r.K2)((function(t,e,a,n,i,r,s,l,o){if(null==t||null==e||null==a||null==n)return;let c={};const h=b.find((t=>t.from===e&&t.to===a));if(h?c=h:b.push(c),c.type=t,c.from=e,c.to=a,c.label={text:n},null==i)c.techn={text:""};else if("object"==typeof i){let[t,e]=Object.entries(i)[0];c[t]={text:e}}else c.techn={text:i};if(null==r)c.descr={text:""};else if("object"==typeof r){let[t,e]=Object.entries(r)[0];c[t]={text:e}}else c.descr={text:r};if("object"==typeof s){let[t,e]=Object.entries(s)[0];c[t]=e}else c.sprite=s;if("object"==typeof l){let[t,e]=Object.entries(l)[0];c[t]=e}else c.tags=l;if("object"==typeof o){let[t,e]=Object.entries(o)[0];c[t]=e}else c.link=o;c.wrap=$()}),"addRel"),w=(0,r.K2)((function(t,e,a,n,i,r,s){if(null===e||null===a)return;let l={};const o=u.find((t=>t.alias===e));if(o&&e===o.alias?l=o:(l.alias=e,u.push(l)),l.label=null==a?{text:""}:{text:a},null==n)l.descr={text:""};else if("object"==typeof n){let[t,e]=Object.entries(n)[0];l[t]={text:e}}else l.descr={text:n};if("object"==typeof i){let[t,e]=Object.entries(i)[0];l[t]=e}else l.sprite=i;if("object"==typeof r){let[t,e]=Object.entries(r)[0];l[t]=e}else l.tags=r;if("object"==typeof s){let[t,e]=Object.entries(s)[0];l[t]=e}else l.link=s;l.typeC4Shape={text:t},l.parentBoundary=y,l.wrap=$()}),"addPersonOrSystem"),k=(0,r.K2)((function(t,e,a,n,i,r,s,l){if(null===e||null===a)return;let o={};const c=u.find((t=>t.alias===e));if(c&&e===c.alias?o=c:(o.alias=e,u.push(o)),o.label=null==a?{text:""}:{text:a},null==n)o.techn={text:""};else if("object"==typeof n){let[t,e]=Object.entries(n)[0];o[t]={text:e}}else o.techn={text:n};if(null==i)o.descr={text:""};else if("object"==typeof i){let[t,e]=Object.entries(i)[0];o[t]={text:e}}else o.descr={text:i};if("object"==typeof r){let[t,e]=Object.entries(r)[0];o[t]=e}else o.sprite=r;if("object"==typeof s){let[t,e]=Object.entries(s)[0];o[t]=e}else o.tags=s;if("object"==typeof l){let[t,e]=Object.entries(l)[0];o[t]=e}else o.link=l;o.wrap=$(),o.typeC4Shape={text:t},o.parentBoundary=y}),"addContainer"),O=(0,r.K2)((function(t,e,a,n,i,r,s,l){if(null===e||null===a)return;let o={};const c=u.find((t=>t.alias===e));if(c&&e===c.alias?o=c:(o.alias=e,u.push(o)),o.label=null==a?{text:""}:{text:a},null==n)o.techn={text:""};else if("object"==typeof n){let[t,e]=Object.entries(n)[0];o[t]={text:e}}else o.techn={text:n};if(null==i)o.descr={text:""};else if("object"==typeof i){let[t,e]=Object.entries(i)[0];o[t]={text:e}}else o.descr={text:i};if("object"==typeof r){let[t,e]=Object.entries(r)[0];o[t]=e}else o.sprite=r;if("object"==typeof s){let[t,e]=Object.entries(s)[0];o[t]=e}else o.tags=s;if("object"==typeof l){let[t,e]=Object.entries(l)[0];o[t]=e}else o.link=l;o.wrap=$(),o.typeC4Shape={text:t},o.parentBoundary=y}),"addComponent"),T=(0,r.K2)((function(t,e,a,n,i){if(null===t||null===e)return;let r={};const s=f.find((e=>e.alias===t));if(s&&t===s.alias?r=s:(r.alias=t,f.push(r)),r.label=null==e?{text:""}:{text:e},null==a)r.type={text:"system"};else if("object"==typeof a){let[t,e]=Object.entries(a)[0];r[t]={text:e}}else r.type={text:a};if("object"==typeof n){let[t,e]=Object.entries(n)[0];r[t]=e}else r.tags=n;if("object"==typeof i){let[t,e]=Object.entries(i)[0];r[t]=e}else r.link=i;r.parentBoundary=y,r.wrap=$(),g=y,y=t,p.push(g)}),"addPersonOrSystemBoundary"),v=(0,r.K2)((function(t,e,a,n,i){if(null===t||null===e)return;let r={};const s=f.find((e=>e.alias===t));if(s&&t===s.alias?r=s:(r.alias=t,f.push(r)),r.label=null==e?{text:""}:{text:e},null==a)r.type={text:"container"};else if("object"==typeof a){let[t,e]=Object.entries(a)[0];r[t]={text:e}}else r.type={text:a};if("object"==typeof n){let[t,e]=Object.entries(n)[0];r[t]=e}else r.tags=n;if("object"==typeof i){let[t,e]=Object.entries(i)[0];r[t]=e}else r.link=i;r.parentBoundary=y,r.wrap=$(),g=y,y=t,p.push(g)}),"addContainerBoundary"),R=(0,r.K2)((function(t,e,a,n,i,r,s,l){if(null===e||null===a)return;let o={};const c=f.find((t=>t.alias===e));if(c&&e===c.alias?o=c:(o.alias=e,f.push(o)),o.label=null==a?{text:""}:{text:a},null==n)o.type={text:"node"};else if("object"==typeof n){let[t,e]=Object.entries(n)[0];o[t]={text:e}}else o.type={text:n};if(null==i)o.descr={text:""};else if("object"==typeof i){let[t,e]=Object.entries(i)[0];o[t]={text:e}}else o.descr={text:i};if("object"==typeof s){let[t,e]=Object.entries(s)[0];o[t]=e}else o.tags=s;if("object"==typeof l){let[t,e]=Object.entries(l)[0];o[t]=e}else o.link=l;o.nodeType=t,o.parentBoundary=y,o.wrap=$(),g=y,y=e,p.push(g)}),"addDeploymentNode"),D=(0,r.K2)((function(){y=g,p.pop(),g=p.pop(),p.push(g)}),"popBoundaryParseStack"),N=(0,r.K2)((function(t,e,a,n,i,r,s,l,o,c,h){let d=u.find((t=>t.alias===e));if(void 0!==d||(d=f.find((t=>t.alias===e)),void 0!==d)){if(null!=a)if("object"==typeof a){let[t,e]=Object.entries(a)[0];d[t]=e}else d.bgColor=a;if(null!=n)if("object"==typeof n){let[t,e]=Object.entries(n)[0];d[t]=e}else d.fontColor=n;if(null!=i)if("object"==typeof i){let[t,e]=Object.entries(i)[0];d[t]=e}else d.borderColor=i;if(null!=r)if("object"==typeof r){let[t,e]=Object.entries(r)[0];d[t]=e}else d.shadowing=r;if(null!=s)if("object"==typeof s){let[t,e]=Object.entries(s)[0];d[t]=e}else d.shape=s;if(null!=l)if("object"==typeof l){let[t,e]=Object.entries(l)[0];d[t]=e}else d.sprite=l;if(null!=o)if("object"==typeof o){let[t,e]=Object.entries(o)[0];d[t]=e}else d.techn=o;if(null!=c)if("object"==typeof c){let[t,e]=Object.entries(c)[0];d[t]=e}else d.legendText=c;if(null!=h)if("object"==typeof h){let[t,e]=Object.entries(h)[0];d[t]=e}else d.legendSprite=h}}),"updateElStyle"),P=(0,r.K2)((function(t,e,a,n,i,r,s){const l=b.find((t=>t.from===e&&t.to===a));if(void 0!==l){if(null!=n)if("object"==typeof n){let[t,e]=Object.entries(n)[0];l[t]=e}else l.textColor=n;if(null!=i)if("object"==typeof i){let[t,e]=Object.entries(i)[0];l[t]=e}else l.lineColor=i;if(null!=r)if("object"==typeof r){let[t,e]=Object.entries(r)[0];l[t]=parseInt(e)}else l.offsetX=parseInt(r);if(null!=s)if("object"==typeof s){let[t,e]=Object.entries(s)[0];l[t]=parseInt(e)}else l.offsetY=parseInt(s)}}),"updateRelStyle"),B=(0,r.K2)((function(t,e,a){let n=m,i=E;if("object"==typeof e){const t=Object.values(e)[0];n=parseInt(t)}else n=parseInt(e);if("object"==typeof a){const t=Object.values(a)[0];i=parseInt(t)}else i=parseInt(a);n>=1&&(m=n),i>=1&&(E=i)}),"updateLayoutConfig"),I=(0,r.K2)((function(){return m}),"getC4ShapeInRow"),M=(0,r.K2)((function(){return E}),"getC4BoundaryInRow"),j=(0,r.K2)((function(){return y}),"getCurrentBoundaryParse"),K=(0,r.K2)((function(){return g}),"getParentBoundaryParse"),L=(0,r.K2)((function(t){return null==t?u:u.filter((e=>e.parentBoundary===t))}),"getC4ShapeArray"),Y=(0,r.K2)((function(t){return u.find((e=>e.alias===t))}),"getC4Shape"),U=(0,r.K2)((function(t){return Object.keys(L(t))}),"getC4ShapeKeys"),F=(0,r.K2)((function(t){return null==t?f:f.filter((e=>e.parentBoundary===t))}),"getBoundaries"),X=F,z=(0,r.K2)((function(){return b}),"getRels"),W=(0,r.K2)((function(){return x}),"getTitle"),Q=(0,r.K2)((function(t){_=t}),"setWrap"),$=(0,r.K2)((function(){return _}),"autoWrap"),H=(0,r.K2)((function(){u=[],f=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],g="",y="global",p=[""],b=[],p=[""],x="",_=!1,m=4,E=2}),"clear"),q=(0,r.K2)((function(t){let e=(0,r.jZ)(t,(0,r.D7)());x=e}),"setTitle"),V={addPersonOrSystem:w,addPersonOrSystemBoundary:T,addContainer:k,addContainerBoundary:v,addComponent:O,addDeploymentNode:R,popBoundaryParseStack:D,addRel:C,updateElStyle:N,updateRelStyle:P,updateLayoutConfig:B,autoWrap:$,setWrap:Q,getC4ShapeArray:L,getC4Shape:Y,getC4ShapeKeys:U,getBoundaries:F,getBoundarys:X,getCurrentBoundaryParse:j,getParentBoundaryParse:K,getRels:z,getTitle:W,getC4Type:S,getC4ShapeInRow:I,getC4BoundaryInRow:M,setAccTitle:r.SV,getAccTitle:r.iN,getAccDescription:r.m7,setAccDescription:r.EI,getConfig:(0,r.K2)((()=>(0,r.D7)().c4),"getConfig"),clear:H,LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:q,setC4Type:A},G=(0,r.K2)((function(t,e){return(0,n.tk)(t,e)}),"drawRect"),J=(0,r.K2)((function(t,e,a,n,i,r){const s=t.append("image");s.attr("width",e),s.attr("height",a),s.attr("x",n),s.attr("y",i);let o=r.startsWith("data:image/png;base64")?r:(0,l.J)(r);s.attr("xlink:href",o)}),"drawImage"),Z=(0,r.K2)(((t,e,a)=>{const n=t.append("g");let i=0;for(let t of e){let e=t.textColor?t.textColor:"#444444",r=t.lineColor?t.lineColor:"#444444",s=t.offsetX?parseInt(t.offsetX):0,l=t.offsetY?parseInt(t.offsetY):0,o="";if(0===i){let e=n.append("line");e.attr("x1",t.startPoint.x),e.attr("y1",t.startPoint.y),e.attr("x2",t.endPoint.x),e.attr("y2",t.endPoint.y),e.attr("stroke-width","1"),e.attr("stroke",r),e.style("fill","none"),"rel_b"!==t.type&&e.attr("marker-end","url("+o+"#arrowhead)"),"birel"!==t.type&&"rel_b"!==t.type||e.attr("marker-start","url("+o+"#arrowend)"),i=-1}else{let e=n.append("path");e.attr("fill","none").attr("stroke-width","1").attr("stroke",r).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",t.startPoint.x).replaceAll("starty",t.startPoint.y).replaceAll("controlx",t.startPoint.x+(t.endPoint.x-t.startPoint.x)/2-(t.endPoint.x-t.startPoint.x)/4).replaceAll("controly",t.startPoint.y+(t.endPoint.y-t.startPoint.y)/2).replaceAll("stopx",t.endPoint.x).replaceAll("stopy",t.endPoint.y)),"rel_b"!==t.type&&e.attr("marker-end","url("+o+"#arrowhead)"),"birel"!==t.type&&"rel_b"!==t.type||e.attr("marker-start","url("+o+"#arrowend)")}let c=a.messageFont();dt(a)(t.label.text,n,Math.min(t.startPoint.x,t.endPoint.x)+Math.abs(t.endPoint.x-t.startPoint.x)/2+s,Math.min(t.startPoint.y,t.endPoint.y)+Math.abs(t.endPoint.y-t.startPoint.y)/2+l,t.label.width,t.label.height,{fill:e},c),t.techn&&""!==t.techn.text&&(c=a.messageFont(),dt(a)("["+t.techn.text+"]",n,Math.min(t.startPoint.x,t.endPoint.x)+Math.abs(t.endPoint.x-t.startPoint.x)/2+s,Math.min(t.startPoint.y,t.endPoint.y)+Math.abs(t.endPoint.y-t.startPoint.y)/2+a.messageFontSize+5+l,Math.max(t.label.width,t.techn.width),t.techn.height,{fill:e,"font-style":"italic"},c))}}),"drawRels"),tt=(0,r.K2)((function(t,e,a){const n=t.append("g");let i=e.bgColor?e.bgColor:"none",r=e.borderColor?e.borderColor:"#444444",s=e.fontColor?e.fontColor:"black",l={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};e.nodeType&&(l={"stroke-width":1});let o={x:e.x,y:e.y,fill:i,stroke:r,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:l};G(n,o);let c=a.boundaryFont();c.fontWeight="bold",c.fontSize=c.fontSize+2,c.fontColor=s,dt(a)(e.label.text,n,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},c),e.type&&""!==e.type.text&&(c=a.boundaryFont(),c.fontColor=s,dt(a)(e.type.text,n,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},c)),e.descr&&""!==e.descr.text&&(c=a.boundaryFont(),c.fontSize=c.fontSize-2,c.fontColor=s,dt(a)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},c))}),"drawBoundary"),et=(0,r.K2)((function(t,e,a){let i=e.bgColor?e.bgColor:a[e.typeC4Shape.text+"_bg_color"],r=e.borderColor?e.borderColor:a[e.typeC4Shape.text+"_border_color"],s=e.fontColor?e.fontColor:"#FFFFFF",l="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(e.typeC4Shape.text){case"person":l="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":l="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII="}const o=t.append("g");o.attr("class","person-man");const c=(0,n.PB)();switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":c.x=e.x,c.y=e.y,c.fill=i,c.width=e.width,c.height=e.height,c.stroke=r,c.rx=2.5,c.ry=2.5,c.attrs={"stroke-width":.5},G(o,c);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":o.append("path").attr("fill",i).attr("stroke-width","0.5").attr("stroke",r).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2).replaceAll("height",e.height)),o.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",r).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":o.append("path").attr("fill",i).attr("stroke-width","0.5").attr("stroke",r).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("width",e.width).replaceAll("half",e.height/2)),o.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",r).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",e.x+e.width).replaceAll("starty",e.y).replaceAll("half",e.height/2))}let h=ht(a,e.typeC4Shape.text);switch(o.append("text").attr("fill",s).attr("font-family",h.fontFamily).attr("font-size",h.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",e.typeC4Shape.width).attr("x",e.x+e.width/2-e.typeC4Shape.width/2).attr("y",e.y+e.typeC4Shape.Y).text("<<"+e.typeC4Shape.text+">>"),e.typeC4Shape.text){case"person":case"external_person":J(o,48,48,e.x+e.width/2-24,e.y+e.image.Y,l)}let d=a[e.typeC4Shape.text+"Font"]();return d.fontWeight="bold",d.fontSize=d.fontSize+2,d.fontColor=s,dt(a)(e.label.text,o,e.x,e.y+e.label.Y,e.width,e.height,{fill:s},d),d=a[e.typeC4Shape.text+"Font"](),d.fontColor=s,e.techn&&""!==e.techn?.text?dt(a)(e.techn.text,o,e.x,e.y+e.techn.Y,e.width,e.height,{fill:s,"font-style":"italic"},d):e.type&&""!==e.type.text&&dt(a)(e.type.text,o,e.x,e.y+e.type.Y,e.width,e.height,{fill:s,"font-style":"italic"},d),e.descr&&""!==e.descr.text&&(d=a.personFont(),d.fontColor=s,dt(a)(e.descr.text,o,e.x,e.y+e.descr.Y,e.width,e.height,{fill:s},d)),e.height}),"drawC4Shape"),at=(0,r.K2)((function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")}),"insertDatabaseIcon"),nt=(0,r.K2)((function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")}),"insertComputerIcon"),it=(0,r.K2)((function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")}),"insertClockIcon"),rt=(0,r.K2)((function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")}),"insertArrowHead"),st=(0,r.K2)((function(t){t.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")}),"insertArrowEnd"),lt=(0,r.K2)((function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"insertArrowFilledHead"),ot=(0,r.K2)((function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)}),"insertDynamicNumber"),ct=(0,r.K2)((function(t){const e=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);e.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),e.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")}),"insertArrowCrossHead"),ht=(0,r.K2)(((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]})),"getC4ShapeFont"),dt=function(){function t(t,e,a,i,r,s,l){n(e.append("text").attr("x",a+r/2).attr("y",i+s/2+5).style("text-anchor","middle").text(t),l)}function e(t,e,a,i,s,l,o,c){const{fontSize:h,fontFamily:d,fontWeight:u}=c,p=t.split(r.Y2.lineBreakRegex);for(let t=0;t=this.data.widthLimit||a>=this.data.widthLimit||this.nextData.cnt>gt)&&(e=this.nextData.startx+t.margin+bt.nextLinePaddingX,n=this.nextData.stopy+2*t.margin,this.nextData.stopx=a=e+t.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=i=n+t.height,this.nextData.cnt=1),t.x=e,t.y=n,this.updateVal(this.data,"startx",e,Math.min),this.updateVal(this.data,"starty",n,Math.min),this.updateVal(this.data,"stopx",a,Math.max),this.updateVal(this.data,"stopy",i,Math.max),this.updateVal(this.nextData,"startx",e,Math.min),this.updateVal(this.nextData,"starty",n,Math.min),this.updateVal(this.nextData,"stopx",a,Math.max),this.updateVal(this.nextData,"stopy",i,Math.max)}init(t){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},_t(t.db.getConfig())}bumpLastMargin(t){this.data.stopx+=t,this.data.stopy+=t}},_t=(0,r.K2)((function(t){(0,r.hH)(bt,t),t.fontFamily&&(bt.personFontFamily=bt.systemFontFamily=bt.messageFontFamily=t.fontFamily),t.fontSize&&(bt.personFontSize=bt.systemFontSize=bt.messageFontSize=t.fontSize),t.fontWeight&&(bt.personFontWeight=bt.systemFontWeight=bt.messageFontWeight=t.fontWeight)}),"setConf"),mt=(0,r.K2)(((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]})),"c4ShapeFont"),Et=(0,r.K2)((t=>({fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight})),"boundaryFont"),St=(0,r.K2)((t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight})),"messageFont");function At(t,e,a,n,s){if(!e[t].width)if(a)e[t].text=(0,i.bH)(e[t].text,s,n),e[t].textLines=e[t].text.split(r.Y2.lineBreakRegex).length,e[t].width=s,e[t].height=(0,i.ru)(e[t].text,n);else{let a=e[t].text.split(r.Y2.lineBreakRegex);e[t].textLines=a.length;let s=0;e[t].height=0,e[t].width=0;for(const r of a)e[t].width=Math.max((0,i.Un)(r,n),e[t].width),s=(0,i.ru)(r,n),e[t].height=e[t].height+s}}(0,r.K2)(At,"calcC4ShapeTextWH");var Ct=(0,r.K2)((function(t,e,a){e.x=a.data.startx,e.y=a.data.starty,e.width=a.data.stopx-a.data.startx,e.height=a.data.stopy-a.data.starty,e.label.y=bt.c4ShapeMargin-35;let n=e.wrap&&bt.wrap,r=Et(bt);r.fontSize=r.fontSize+2,r.fontWeight="bold",At("label",e,n,r,(0,i.Un)(e.label.text,r)),ut.drawBoundary(t,e,bt)}),"drawBoundary"),wt=(0,r.K2)((function(t,e,a,n){let r=0;for(const s of n){r=0;const n=a[s];let l=mt(bt,n.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,n.typeC4Shape.width=(0,i.Un)("«"+n.typeC4Shape.text+"»",l),n.typeC4Shape.height=l.fontSize+2,n.typeC4Shape.Y=bt.c4ShapePadding,r=n.typeC4Shape.Y+n.typeC4Shape.height-4,n.image={width:0,height:0,Y:0},n.typeC4Shape.text){case"person":case"external_person":n.image.width=48,n.image.height=48,n.image.Y=r,r=n.image.Y+n.image.height}n.sprite&&(n.image.width=48,n.image.height=48,n.image.Y=r,r=n.image.Y+n.image.height);let o=n.wrap&&bt.wrap,c=bt.width-2*bt.c4ShapePadding,h=mt(bt,n.typeC4Shape.text);h.fontSize=h.fontSize+2,h.fontWeight="bold",At("label",n,o,h,c),n.label.Y=r+8,r=n.label.Y+n.label.height,n.type&&""!==n.type.text?(n.type.text="["+n.type.text+"]",At("type",n,o,mt(bt,n.typeC4Shape.text),c),n.type.Y=r+5,r=n.type.Y+n.type.height):n.techn&&""!==n.techn.text&&(n.techn.text="["+n.techn.text+"]",At("techn",n,o,mt(bt,n.techn.text),c),n.techn.Y=r+5,r=n.techn.Y+n.techn.height);let d=r,u=n.label.width;n.descr&&""!==n.descr.text&&(At("descr",n,o,mt(bt,n.typeC4Shape.text),c),n.descr.Y=r+20,r=n.descr.Y+n.descr.height,u=Math.max(n.label.width,n.descr.width),d=r-5*n.descr.textLines),u+=bt.c4ShapePadding,n.width=Math.max(n.width||bt.width,u,bt.width),n.height=Math.max(n.height||bt.height,d,bt.height),n.margin=n.margin||bt.c4ShapeMargin,t.insert(n),ut.drawC4Shape(e,n,bt)}t.bumpLastMargin(bt.c4ShapeMargin)}),"drawC4ShapeArray"),kt=class{static{(0,r.K2)(this,"Point")}constructor(t,e){this.x=t,this.y=e}},Ot=(0,r.K2)((function(t,e){let a=t.x,n=t.y,i=e.x,r=e.y,s=a+t.width/2,l=n+t.height/2,o=Math.abs(a-i),c=Math.abs(n-r),h=c/o,d=t.height/t.width,u=null;return n==r&&ai?u=new kt(a,l):a==i&&nr&&(u=new kt(s,n)),a>i&&n=h?new kt(a,l+h*t.width/2):new kt(s-o/c*t.height/2,n+t.height):a=h?new kt(a+t.width,l+h*t.width/2):new kt(s+o/c*t.height/2,n+t.height):ar?u=d>=h?new kt(a+t.width,l-h*t.width/2):new kt(s+t.height/2*o/c,n):a>i&&n>r&&(u=d>=h?new kt(a,l-t.width/2*h):new kt(s-t.height/2*o/c,n)),u}),"getIntersectPoint"),Tt=(0,r.K2)((function(t,e){let a={x:0,y:0};a.x=e.x+e.width/2,a.y=e.y+e.height/2;let n=Ot(t,a);return a.x=t.x+t.width/2,a.y=t.y+t.height/2,{startPoint:n,endPoint:Ot(e,a)}}),"getIntersectPoints"),vt=(0,r.K2)((function(t,e,a,n){let r=0;for(let t of e){r+=1;let e=t.wrap&&bt.wrap,s=St(bt);"C4Dynamic"===n.db.getC4Type()&&(t.label.text=r+": "+t.label.text);let l=(0,i.Un)(t.label.text,s);At("label",t,e,s,l),t.techn&&""!==t.techn.text&&(l=(0,i.Un)(t.techn.text,s),At("techn",t,e,s,l)),t.descr&&""!==t.descr.text&&(l=(0,i.Un)(t.descr.text,s),At("descr",t,e,s,l));let o=a(t.from),c=a(t.to),h=Tt(o,c);t.startPoint=h.startPoint,t.endPoint=h.endPoint}ut.drawRels(t,e,bt)}),"drawRels");function Rt(t,e,a,n,i){let r=new xt(i);r.data.widthLimit=a.data.widthLimit/Math.min(ft,n.length);for(let[s,l]of n.entries()){let n=0;l.image={width:0,height:0,Y:0},l.sprite&&(l.image.width=48,l.image.height=48,l.image.Y=n,n=l.image.Y+l.image.height);let o=l.wrap&&bt.wrap,c=Et(bt);if(c.fontSize=c.fontSize+2,c.fontWeight="bold",At("label",l,o,c,r.data.widthLimit),l.label.Y=n+8,n=l.label.Y+l.label.height,l.type&&""!==l.type.text&&(l.type.text="["+l.type.text+"]",At("type",l,o,Et(bt),r.data.widthLimit),l.type.Y=n+5,n=l.type.Y+l.type.height),l.descr&&""!==l.descr.text){let t=Et(bt);t.fontSize=t.fontSize-2,At("descr",l,o,t,r.data.widthLimit),l.descr.Y=n+20,n=l.descr.Y+l.descr.height}if(0==s||s%ft==0){let t=a.data.startx+bt.diagramMarginX,e=a.data.stopy+bt.diagramMarginY+n;r.setData(t,t,e,e)}else{let t=r.data.stopx!==r.data.startx?r.data.stopx+bt.diagramMarginX:r.data.startx,e=r.data.starty;r.setData(t,t,e,e)}r.name=l.alias;let h=i.db.getC4ShapeArray(l.alias),d=i.db.getC4ShapeKeys(l.alias);d.length>0&&wt(r,t,h,d),e=l.alias;let u=i.db.getBoundarys(e);u.length>0&&Rt(t,e,r,u,i),"global"!==l.alias&&Ct(t,l,r),a.data.stopy=Math.max(r.data.stopy+bt.c4ShapeMargin,a.data.stopy),a.data.stopx=Math.max(r.data.stopx+bt.c4ShapeMargin,a.data.stopx),pt=Math.max(pt,a.data.stopx),yt=Math.max(yt,a.data.stopy)}}(0,r.K2)(Rt,"drawInsideBoundary");var Dt={drawPersonOrSystemArray:wt,drawBoundary:Ct,setConf:_t,draw:(0,r.K2)((function(t,e,a,n){bt=(0,r.D7)().c4;const i=(0,r.D7)().securityLevel;let l;"sandbox"===i&&(l=(0,s.Ltv)("#i"+e));const o="sandbox"===i?(0,s.Ltv)(l.nodes()[0].contentDocument.body):(0,s.Ltv)("body");let c=n.db;n.db.setWrap(bt.wrap),gt=c.getC4ShapeInRow(),ft=c.getC4BoundaryInRow(),r.Rm.debug(`C:${JSON.stringify(bt,null,2)}`);const h="sandbox"===i?o.select(`[id="${e}"]`):(0,s.Ltv)(`[id="${e}"]`);ut.insertComputerIcon(h),ut.insertDatabaseIcon(h),ut.insertClockIcon(h);let d=new xt(n);d.setData(bt.diagramMarginX,bt.diagramMarginX,bt.diagramMarginY,bt.diagramMarginY),d.data.widthLimit=screen.availWidth,pt=bt.diagramMarginX,yt=bt.diagramMarginY;const u=n.db.getTitle();Rt(h,"",d,n.db.getBoundarys(""),n),ut.insertArrowHead(h),ut.insertArrowEnd(h),ut.insertArrowCrossHead(h),ut.insertArrowFilledHead(h),vt(h,n.db.getRels(),n.db.getC4Shape,n),d.data.stopx=pt,d.data.stopy=yt;const p=d.data;let y=p.stopy-p.starty+2*bt.diagramMarginY;const g=p.stopx-p.startx+2*bt.diagramMarginX;u&&h.append("text").text(u).attr("x",(p.stopx-p.startx)/2-4*bt.diagramMarginX).attr("y",p.starty+bt.diagramMarginY),(0,r.a$)(h,y,g,bt.useMaxWidth);const f=u?60:0;h.attr("viewBox",p.startx-bt.diagramMarginX+" -"+(bt.diagramMarginY+f)+" "+g+" "+(y+f)),r.Rm.debug("models:",p)}),"draw")},Nt={parser:d,db:V,renderer:Dt,styles:(0,r.K2)((t=>`.person {\n stroke: ${t.personBorder};\n fill: ${t.personBkg};\n }\n`),"getStyles"),init:(0,r.K2)((({c4:t,wrap:e})=>{Dt.setConf(t),V.setWrap(e)}),"init")}},4323:(t,e,a)=>{a.d(e,{CP:()=>c,HT:()=>d,PB:()=>h,aC:()=>o,lC:()=>s,m:()=>l,tk:()=>r});var n=a(32),i=a(6750),r=(0,n.K2)(((t,e)=>{const a=t.append("rect");if(a.attr("x",e.x),a.attr("y",e.y),a.attr("fill",e.fill),a.attr("stroke",e.stroke),a.attr("width",e.width),a.attr("height",e.height),e.name&&a.attr("name",e.name),e.rx&&a.attr("rx",e.rx),e.ry&&a.attr("ry",e.ry),void 0!==e.attrs)for(const t in e.attrs)a.attr(t,e.attrs[t]);return e.class&&a.attr("class",e.class),a}),"drawRect"),s=(0,n.K2)(((t,e)=>{const a={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};r(t,a).lower()}),"drawBackgroundRect"),l=(0,n.K2)(((t,e)=>{const a=e.text.replace(n.H1," "),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.attr("class","legend"),i.style("text-anchor",e.anchor),e.class&&i.attr("class",e.class);const r=i.append("tspan");return r.attr("x",e.x+2*e.textMargin),r.text(a),i}),"drawText"),o=(0,n.K2)(((t,e,a,n)=>{const r=t.append("image");r.attr("x",e),r.attr("y",a);const s=(0,i.J)(n);r.attr("xlink:href",s)}),"drawImage"),c=(0,n.K2)(((t,e,a,n)=>{const r=t.append("use");r.attr("x",e),r.attr("y",a);const s=(0,i.J)(n);r.attr("xlink:href",`#${s}`)}),"drawEmbeddedImage"),h=(0,n.K2)((()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0})),"getNoteRect"),d=(0,n.K2)((()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0})),"getTextObj")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/862-ff5166f8.chunk.min.js b/themes/hugo-geekdoc/static/js/862-ff5166f8.chunk.min.js new file mode 100644 index 000000000..7d8e46402 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/862-ff5166f8.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[862],{4323:(t,e,n)=>{n.d(e,{CP:()=>l,HT:()=>u,PB:()=>h,aC:()=>c,lC:()=>a,m:()=>o,tk:()=>r});var i=n(32),s=n(6750),r=(0,i.K2)(((t,e)=>{const n=t.append("rect");if(n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),e.name&&n.attr("name",e.name),e.rx&&n.attr("rx",e.rx),e.ry&&n.attr("ry",e.ry),void 0!==e.attrs)for(const t in e.attrs)n.attr(t,e.attrs[t]);return e.class&&n.attr("class",e.class),n}),"drawRect"),a=(0,i.K2)(((t,e)=>{const n={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};r(t,n).lower()}),"drawBackgroundRect"),o=(0,i.K2)(((t,e)=>{const n=e.text.replace(i.H1," "),s=t.append("text");s.attr("x",e.x),s.attr("y",e.y),s.attr("class","legend"),s.style("text-anchor",e.anchor),e.class&&s.attr("class",e.class);const r=s.append("tspan");return r.attr("x",e.x+2*e.textMargin),r.text(n),s}),"drawText"),c=(0,i.K2)(((t,e,n,i)=>{const r=t.append("image");r.attr("x",e),r.attr("y",n);const a=(0,s.J)(i);r.attr("xlink:href",a)}),"drawImage"),l=(0,i.K2)(((t,e,n,i)=>{const r=t.append("use");r.attr("x",e),r.attr("y",n);const a=(0,s.J)(i);r.attr("xlink:href",`#${a}`)}),"drawEmbeddedImage"),h=(0,i.K2)((()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0})),"getNoteRect"),u=(0,i.K2)((()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0})),"getTextObj")},1481:(t,e,n)=>{n.d(e,{diagram:()=>Y});var i=n(4323),s=n(32),r=n(4852),a=function(){var t=(0,s.K2)((function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n}),"o"),e=[6,8,10,11,12,14,16,17,18],n=[1,9],i=[1,10],r=[1,11],a=[1,12],o=[1,13],c=[1,14],l={trace:(0,s.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:(0,s.K2)((function(t,e,n,i,s,r,a){var o=r.length-1;switch(s){case 1:return r[o-1];case 2:case 6:case 7:this.$=[];break;case 3:r[o-1].push(r[o]),this.$=r[o-1];break;case 4:case 5:this.$=r[o];break;case 8:i.setDiagramTitle(r[o].substr(6)),this.$=r[o].substr(6);break;case 9:this.$=r[o].trim(),i.setAccTitle(this.$);break;case 10:case 11:this.$=r[o].trim(),i.setAccDescription(this.$);break;case 12:i.addSection(r[o].substr(8)),this.$=r[o].substr(8);break;case 13:i.addTask(r[o-1],r[o]),this.$="task"}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:n,12:i,14:r,16:a,17:o,18:c},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:n,12:i,14:r,16:a,17:o,18:c},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:(0,s.K2)((function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)}),"parseError"),parse:(0,s.K2)((function(t){var e=this,n=[0],i=[],r=[null],a=[],o=this.table,c="",l=0,h=0,u=0,y=a.slice.call(arguments,1),p=Object.create(this.lexer),d={yy:{}};for(var f in this.yy)Object.prototype.hasOwnProperty.call(this.yy,f)&&(d.yy[f]=this.yy[f]);p.setInput(t,d.yy),d.yy.lexer=p,d.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var g=p.yylloc;a.push(g);var x=p.options&&p.options.ranges;function m(){var t;return"number"!=typeof(t=i.pop()||p.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,s.K2)((function(t){n.length=n.length-2*t,r.length=r.length-t,a.length=a.length-t}),"popStack"),(0,s.K2)(m,"lex");for(var k,_,b,w,v,K,$,T,M,S={};;){if(b=n[n.length-1],this.defaultActions[b]?w=this.defaultActions[b]:(null==k&&(k=m()),w=o[b]&&o[b][k]),void 0===w||!w.length||!w[0]){var E;for(K in M=[],o[b])this.terminals_[K]&&K>2&&M.push("'"+this.terminals_[K]+"'");E=p.showPosition?"Parse error on line "+(l+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[k]||k)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==k?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError(E,{text:p.match,token:this.terminals_[k]||k,line:p.yylineno,loc:g,expected:M})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+k);switch(w[0]){case 1:n.push(k),r.push(p.yytext),a.push(p.yylloc),n.push(w[1]),k=null,_?(k=_,_=null):(h=p.yyleng,c=p.yytext,l=p.yylineno,g=p.yylloc,u>0&&u--);break;case 2:if($=this.productions_[w[1]][1],S.$=r[r.length-$],S._$={first_line:a[a.length-($||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-($||1)].first_column,last_column:a[a.length-1].last_column},x&&(S._$.range=[a[a.length-($||1)].range[0],a[a.length-1].range[1]]),void 0!==(v=this.performAction.apply(S,[c,h,l,d.yy,w[1],r,a].concat(y))))return v;$&&(n=n.slice(0,-1*$*2),r=r.slice(0,-1*$),a=a.slice(0,-1*$)),n.push(this.productions_[w[1]][0]),r.push(S.$),a.push(S._$),T=o[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}),"parse")},h=function(){return{EOF:1,parseError:(0,s.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,s.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,s.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,s.K2)((function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,s.K2)((function(){return this._more=!0,this}),"more"),reject:(0,s.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,s.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,s.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,s.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,s.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,s.K2)((function(t,e){var n,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1}),"test_match"),next:(0,s.K2)((function(){if(this.done)return this.EOF;var t,e,n,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;re[0].length)){if(e=n,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,s[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,s.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,s.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,s.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,s.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,s.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,s.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,s.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,s.K2)((function(t,e,n,i){switch(n){case 0:case 1:case 3:case 4:break;case 2:return 10;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}}),"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}}}();function u(){this.yy={}}return l.lexer=h,(0,s.K2)(u,"Parser"),u.prototype=l,l.Parser=u,new u}();a.parser=a;var o=a,c="",l=[],h=[],u=[],y=(0,s.K2)((function(){l.length=0,h.length=0,c="",u.length=0,(0,s.IU)()}),"clear"),p=(0,s.K2)((function(t){c=t,l.push(t)}),"addSection"),d=(0,s.K2)((function(){return l}),"getSections"),f=(0,s.K2)((function(){let t=k(),e=0;for(;!t&&e<100;)t=k(),e++;return h.push(...u),h}),"getTasks"),g=(0,s.K2)((function(){const t=[];return h.forEach((e=>{e.people&&t.push(...e.people)})),[...new Set(t)].sort()}),"updateActors"),x=(0,s.K2)((function(t,e){const n=e.substr(1).split(":");let i=0,s=[];1===n.length?(i=Number(n[0]),s=[]):(i=Number(n[0]),s=n[1].split(","));const r=s.map((t=>t.trim())),a={section:c,type:c,people:r,task:t,score:i};u.push(a)}),"addTask"),m=(0,s.K2)((function(t){const e={section:c,type:c,description:t,task:t,classes:[]};h.push(e)}),"addTaskOrg"),k=(0,s.K2)((function(){const t=(0,s.K2)((function(t){return u[t].processed}),"compileTask");let e=!0;for(const[n,i]of u.entries())t(n),e=e&&i.processed;return e}),"compileTasks"),_=(0,s.K2)((function(){return g()}),"getActors"),b={getConfig:(0,s.K2)((()=>(0,s.D7)().journey),"getConfig"),clear:y,setDiagramTitle:s.ke,getDiagramTitle:s.ab,setAccTitle:s.SV,getAccTitle:s.iN,setAccDescription:s.EI,getAccDescription:s.m7,addSection:p,getSections:d,getTasks:f,addTask:x,addTaskOrg:m,getActors:_},w=(0,s.K2)((t=>`.label {\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n color: ${t.textColor};\n }\n .mouth {\n stroke: #666;\n }\n\n line {\n stroke: ${t.textColor}\n }\n\n .legend {\n fill: ${t.textColor};\n }\n\n .label text {\n fill: #333;\n }\n .label {\n color: ${t.textColor}\n }\n\n .face {\n ${t.faceColor?`fill: ${t.faceColor}`:"fill: #FFF8DC"};\n stroke: #999;\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${t.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${t.lineColor};\n stroke-width: 1.5px;\n }\n\n .flowchart-link {\n stroke: ${t.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${t.edgeLabelBackground};\n rect {\n opacity: 0.5;\n }\n text-align: center;\n }\n\n .cluster rect {\n }\n\n .cluster text {\n fill: ${t.titleColor};\n }\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n font-size: 12px;\n background: ${t.tertiaryColor};\n border: 1px solid ${t.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .task-type-0, .section-type-0 {\n ${t.fillType0?`fill: ${t.fillType0}`:""};\n }\n .task-type-1, .section-type-1 {\n ${t.fillType0?`fill: ${t.fillType1}`:""};\n }\n .task-type-2, .section-type-2 {\n ${t.fillType0?`fill: ${t.fillType2}`:""};\n }\n .task-type-3, .section-type-3 {\n ${t.fillType0?`fill: ${t.fillType3}`:""};\n }\n .task-type-4, .section-type-4 {\n ${t.fillType0?`fill: ${t.fillType4}`:""};\n }\n .task-type-5, .section-type-5 {\n ${t.fillType0?`fill: ${t.fillType5}`:""};\n }\n .task-type-6, .section-type-6 {\n ${t.fillType0?`fill: ${t.fillType6}`:""};\n }\n .task-type-7, .section-type-7 {\n ${t.fillType0?`fill: ${t.fillType7}`:""};\n }\n\n .actor-0 {\n ${t.actor0?`fill: ${t.actor0}`:""};\n }\n .actor-1 {\n ${t.actor1?`fill: ${t.actor1}`:""};\n }\n .actor-2 {\n ${t.actor2?`fill: ${t.actor2}`:""};\n }\n .actor-3 {\n ${t.actor3?`fill: ${t.actor3}`:""};\n }\n .actor-4 {\n ${t.actor4?`fill: ${t.actor4}`:""};\n }\n .actor-5 {\n ${t.actor5?`fill: ${t.actor5}`:""};\n }\n`),"getStyles"),v=(0,s.K2)((function(t,e){return(0,i.tk)(t,e)}),"drawRect"),K=(0,s.K2)((function(t,e){const n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");function a(t){const n=(0,r.JLW)().startAngle(Math.PI/2).endAngle(Math.PI/2*3).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",n).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}function o(t){const n=(0,r.JLW)().startAngle(3*Math.PI/2).endAngle(Math.PI/2*5).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",n).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}function c(t){t.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return i.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),(0,s.K2)(a,"smile"),(0,s.K2)(o,"sad"),(0,s.K2)(c,"ambivalent"),e.score>3?a(i):e.score<3?o(i):c(i),n}),"drawFace"),$=(0,s.K2)((function(t,e){const n=t.append("circle");return n.attr("cx",e.cx),n.attr("cy",e.cy),n.attr("class","actor-"+e.pos),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("r",e.r),void 0!==n.class&&n.attr("class",n.class),void 0!==e.title&&n.append("title").text(e.title),n}),"drawCircle"),T=(0,s.K2)((function(t,e){return(0,i.m)(t,e)}),"drawText"),M=(0,s.K2)((function(t,e){function n(t,e,n,i,s){return t+","+e+" "+(t+n)+","+e+" "+(t+n)+","+(e+i-s)+" "+(t+n-1.2*s)+","+(e+i)+" "+t+","+(e+i)}(0,s.K2)(n,"genPoints");const i=t.append("polygon");i.attr("points",n(e.x,e.y,50,20,7)),i.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,T(t,e)}),"drawLabel"),S=(0,s.K2)((function(t,e,n){const s=t.append("g"),r=(0,i.PB)();r.x=e.x,r.y=e.y,r.fill=e.fill,r.width=n.width*e.taskCount+n.diagramMarginX*(e.taskCount-1),r.height=n.height,r.class="journey-section section-type-"+e.num,r.rx=3,r.ry=3,v(s,r),C(n)(e.text,s,r.x,r.y,r.width,r.height,{class:"journey-section section-type-"+e.num},n,e.colour)}),"drawSection"),E=-1,I=(0,s.K2)((function(t,e,n){const s=e.x+n.width/2,r=t.append("g");E++,r.append("line").attr("id","task"+E).attr("x1",s).attr("y1",e.y).attr("x2",s).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),K(r,{cx:s,cy:300+30*(5-e.score),score:e.score});const a=(0,i.PB)();a.x=e.x,a.y=e.y,a.fill=e.fill,a.width=n.width,a.height=n.height,a.class="task task-type-"+e.num,a.rx=3,a.ry=3,v(r,a);let o=e.x+14;e.people.forEach((t=>{const n=e.actors[t].color,i={cx:o,cy:e.y,r:7,fill:n,stroke:"#000",title:t,pos:e.actors[t].position};$(r,i),o+=10})),C(n)(e.task,r,a.x,a.y,a.width,a.height,{class:"task"},n,e.colour)}),"drawTask"),P=(0,s.K2)((function(t,e){(0,i.lC)(t,e)}),"drawBackgroundRect"),C=function(){function t(t,e,n,s,r,a,o,c){i(e.append("text").attr("x",n+r/2).attr("y",s+a/2+5).style("font-color",c).style("text-anchor","middle").text(t),o)}function e(t,e,n,s,r,a,o,c,l){const{taskFontSize:h,taskFontFamily:u}=c,y=t.split(//gi);for(let t=0;t{const s=D[i].color,r={cx:20,cy:n,r:7,fill:s,stroke:"#000",pos:D[i].position};A.drawCircle(t,r);const a={x:40,y:n+7,fill:"#666",text:i,textMargin:5|e.boxTextMargin};A.drawText(t,a),n+=20}))}(0,s.K2)(L,"drawActorLegend");var V=(0,s.D7)().journey,B=V.leftMargin,O=(0,s.K2)((function(t,e,n,i){const a=(0,s.D7)().journey,o=(0,s.D7)().securityLevel;let c;"sandbox"===o&&(c=(0,r.Ltv)("#i"+e));const l="sandbox"===o?(0,r.Ltv)(c.nodes()[0].contentDocument.body):(0,r.Ltv)("body");F.init();const h=l.select("#"+e);A.initGraphics(h);const u=i.db.getTasks(),y=i.db.getDiagramTitle(),p=i.db.getActors();for(const t in D)delete D[t];let d=0;p.forEach((t=>{D[t]={color:a.actorColours[d%a.actorColours.length],position:d},d++})),L(h),F.insert(0,0,B,50*Object.keys(D).length),z(h,u,0);const f=F.getBounds();y&&h.append("text").text(y).attr("x",B).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);const g=f.stopy-f.starty+2*a.diagramMarginY,x=B+f.stopx+2*a.diagramMarginX;(0,s.a$)(h,g,x,a.useMaxWidth),h.append("line").attr("x1",B).attr("y1",4*a.height).attr("x2",x-B-4).attr("y2",4*a.height).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");const m=y?70:0;h.attr("viewBox",`${f.startx} -25 ${x} ${g+m}`),h.attr("preserveAspectRatio","xMinYMin meet"),h.attr("height",g+m+25)}),"draw"),F={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:(0,s.K2)((function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0}),"init"),updateVal:(0,s.K2)((function(t,e,n,i){void 0===t[e]?t[e]=n:t[e]=i(n,t[e])}),"updateVal"),updateBounds:(0,s.K2)((function(t,e,n,i){const r=(0,s.D7)().journey,a=this;let o=0;function c(c){return(0,s.K2)((function(s){o++;const l=a.sequenceItems.length-o+1;a.updateVal(s,"starty",e-l*r.boxMargin,Math.min),a.updateVal(s,"stopy",i+l*r.boxMargin,Math.max),a.updateVal(F.data,"startx",t-l*r.boxMargin,Math.min),a.updateVal(F.data,"stopx",n+l*r.boxMargin,Math.max),"activation"!==c&&(a.updateVal(s,"startx",t-l*r.boxMargin,Math.min),a.updateVal(s,"stopx",n+l*r.boxMargin,Math.max),a.updateVal(F.data,"starty",e-l*r.boxMargin,Math.min),a.updateVal(F.data,"stopy",i+l*r.boxMargin,Math.max))}),"updateItemBounds")}(0,s.K2)(c,"updateFn"),this.sequenceItems.forEach(c())}),"updateBounds"),insert:(0,s.K2)((function(t,e,n,i){const s=Math.min(t,n),r=Math.max(t,n),a=Math.min(e,i),o=Math.max(e,i);this.updateVal(F.data,"startx",s,Math.min),this.updateVal(F.data,"starty",a,Math.min),this.updateVal(F.data,"stopx",r,Math.max),this.updateVal(F.data,"stopy",o,Math.max),this.updateBounds(s,a,r,o)}),"insert"),bumpVerticalPos:(0,s.K2)((function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos}),"bumpVerticalPos"),getVerticalPos:(0,s.K2)((function(){return this.verticalPos}),"getVerticalPos"),getBounds:(0,s.K2)((function(){return this.data}),"getBounds")},N=V.sectionFills,R=V.sectionColours,z=(0,s.K2)((function(t,e,n){const i=(0,s.D7)().journey;let r="";const a=n+(2*i.height+i.diagramMarginY);let o=0,c="#CCC",l="black",h=0;for(const[n,s]of e.entries()){if(r!==s.section){c=N[o%N.length],h=o%N.length,l=R[o%R.length];let a=0;const u=s.section;for(let t=n;t(D[e]&&(t[e]=D[e]),t)),{});s.x=n*i.taskMargin+n*i.width+B,s.y=a,s.width=i.diagramMarginX,s.height=i.diagramMarginY,s.colour=l,s.fill=c,s.num=h,s.actors=u,A.drawTask(t,s,i),F.insert(s.x,s.y,s.x+s.width+i.taskMargin,450)}}),"drawTasks"),W={setConf:j,draw:O},Y={parser:o,db:b,renderer:W,styles:w,init:(0,s.K2)((t=>{W.setConf(t.journey),b.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/875-2aebef6b.chunk.min.js b/themes/hugo-geekdoc/static/js/875-2aebef6b.chunk.min.js deleted file mode 100644 index ef627b924..000000000 --- a/themes/hugo-geekdoc/static/js/875-2aebef6b.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[875],{6875:(t,e,r)=>{r.d(e,{diagram:()=>F});var a=r(7323),i=r(798),n=r(697),s=r(4852),o=r(567);const c=[];for(let t=0;t<256;++t)c.push((t+256).toString(16).slice(1));const l=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,h=function(t){if(!function(t){return"string"==typeof t&&l.test(t)}(t))throw TypeError("Invalid UUID");let e;const r=new Uint8Array(16);return r[0]=(e=parseInt(t.slice(0,8),16))>>>24,r[1]=e>>>16&255,r[2]=e>>>8&255,r[3]=255&e,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=255&e,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=255&e,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=255&e,r[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,r[11]=e/4294967296&255,r[12]=e>>>24&255,r[13]=e>>>16&255,r[14]=e>>>8&255,r[15]=255&e,r};function d(t,e,r,a){switch(t){case 0:return e&r^~e&a;case 1:case 3:return e^r^a;case 2:return e&r^e&a^r&a}}function u(t,e){return t<>>32-e}const y=function(){function t(t,e,r,a){var i;if("string"==typeof t&&(t=function(t){t=unescape(encodeURIComponent(t));const e=[];for(let r=0;r>>0;l=c,c=o,o=u(s,30)>>>0,s=i,i=n}r[0]=r[0]+i>>>0,r[1]=r[1]+s>>>0,r[2]=r[2]+o>>>0,r[3]=r[3]+c>>>0,r[4]=r[4]+l>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,255&r[0],r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,255&r[1],r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,255&r[2],r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,255&r[3],r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,255&r[4]]}(n),n[6]=15&n[6]|80,n[8]=63&n[8]|128,r){a=a||0;for(let t=0;t<16;++t)r[a+t]=n[t];return r}return function(t,e=0){return c[t[e+0]]+c[t[e+1]]+c[t[e+2]]+c[t[e+3]]+"-"+c[t[e+4]]+c[t[e+5]]+"-"+c[t[e+6]]+c[t[e+7]]+"-"+c[t[e+8]]+c[t[e+9]]+"-"+c[t[e+10]]+c[t[e+11]]+c[t[e+12]]+c[t[e+13]]+c[t[e+14]]+c[t[e+15]]}(n)}try{t.name="v5"}catch(t){}return t.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",t.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",t}();var p=function(){var t=(0,i.K2)((function(t,e,r,a){for(r=r||{},a=t.length;a--;r[t[a]]=e);return r}),"o"),e=[6,8,10,20,22,24,26,27,28],r=[1,10],a=[1,11],n=[1,12],s=[1,13],o=[1,14],c=[1,15],l=[1,21],h=[1,22],d=[1,23],u=[1,24],y=[1,25],p=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],_=[1,34],f=[27,28,46,47],E=[41,42,43,44,45],g=[17,34],m=[1,54],O=[1,53],k=[17,34,36,38],b={trace:(0,i.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:(0,i.K2)((function(t,e,r,a,i,n,s){var o=n.length-1;switch(i){case 1:break;case 2:case 6:case 7:this.$=[];break;case 3:n[o-1].push(n[o]),this.$=n[o-1];break;case 4:case 5:case 19:case 43:case 27:case 28:case 31:this.$=n[o];break;case 8:a.addEntity(n[o-4]),a.addEntity(n[o-2]),a.addRelationship(n[o-4],n[o],n[o-2],n[o-3]);break;case 9:a.addEntity(n[o-3]),a.addAttributes(n[o-3],n[o-1]);break;case 10:a.addEntity(n[o-2]);break;case 11:a.addEntity(n[o]);break;case 12:a.addEntity(n[o-6],n[o-4]),a.addAttributes(n[o-6],n[o-1]);break;case 13:a.addEntity(n[o-5],n[o-3]);break;case 14:a.addEntity(n[o-3],n[o-1]);break;case 15:case 16:this.$=n[o].trim(),a.setAccTitle(this.$);break;case 17:case 18:this.$=n[o].trim(),a.setAccDescription(this.$);break;case 20:case 41:case 42:case 32:this.$=n[o].replace(/"/g,"");break;case 21:case 29:this.$=[n[o]];break;case 22:n[o].push(n[o-1]),this.$=n[o];break;case 23:this.$={attributeType:n[o-1],attributeName:n[o]};break;case 24:this.$={attributeType:n[o-2],attributeName:n[o-1],attributeKeyTypeList:n[o]};break;case 25:this.$={attributeType:n[o-2],attributeName:n[o-1],attributeComment:n[o]};break;case 26:this.$={attributeType:n[o-3],attributeName:n[o-2],attributeKeyTypeList:n[o-1],attributeComment:n[o]};break;case 30:n[o-2].push(n[o]),this.$=n[o-2];break;case 33:this.$={cardA:n[o],relType:n[o-1],cardB:n[o-2]};break;case 34:this.$=a.Cardinality.ZERO_OR_ONE;break;case 35:this.$=a.Cardinality.ZERO_OR_MORE;break;case 36:this.$=a.Cardinality.ONE_OR_MORE;break;case 37:this.$=a.Cardinality.ONLY_ONE;break;case 38:this.$=a.Cardinality.MD_PARENT;break;case 39:this.$=a.Identification.NON_IDENTIFYING;break;case 40:this.$=a.Identification.IDENTIFYING}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:r,22:a,24:n,26:s,27:o,28:c},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:16,11:9,20:r,22:a,24:n,26:s,27:o,28:c},t(e,[2,5]),t(e,[2,6]),t(e,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:l,42:h,43:d,44:u,45:y}),{21:[1,26]},{23:[1,27]},{25:[1,28]},t(e,[2,18]),t(p,[2,19]),t(p,[2,20]),t(e,[2,4]),{11:29,27:o,28:c},{16:30,17:[1,31],29:32,30:33,34:_},{11:35,27:o,28:c},{40:36,46:[1,37],47:[1,38]},t(f,[2,34]),t(f,[2,35]),t(f,[2,36]),t(f,[2,37]),t(f,[2,38]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),{13:[1,39]},{17:[1,40]},t(e,[2,10]),{16:41,17:[2,21],29:32,30:33,34:_},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:l,42:h,43:d,44:u,45:y},t(E,[2,39]),t(E,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},t(e,[2,9]),{17:[2,22]},t(g,[2,23],{32:50,33:51,35:52,37:m,38:O}),t([17,34,37,38],[2,28]),t(e,[2,14],{15:[1,55]}),t([27,28],[2,33]),t(e,[2,8]),t(e,[2,41]),t(e,[2,42]),t(e,[2,43]),t(g,[2,24],{33:56,36:[1,57],38:O}),t(g,[2,25]),t(k,[2,29]),t(g,[2,32]),t(k,[2,31]),{16:58,17:[1,59],29:32,30:33,34:_},t(g,[2,26]),{35:60,37:m},{17:[1,61]},t(e,[2,13]),t(k,[2,30]),t(e,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:(0,i.K2)((function(t,e){if(!e.recoverable){var r=new Error(t);throw r.hash=e,r}this.trace(t)}),"parseError"),parse:(0,i.K2)((function(t){var e=this,r=[0],a=[],n=[null],s=[],o=this.table,c="",l=0,h=0,d=0,u=s.slice.call(arguments,1),y=Object.create(this.lexer),p={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(p.yy[_]=this.yy[_]);y.setInput(t,p.yy),p.yy.lexer=y,p.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var f=y.yylloc;s.push(f);var E=y.options&&y.options.ranges;function g(){var t;return"number"!=typeof(t=a.pop()||y.lex()||1)&&(t instanceof Array&&(t=(a=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)((function(t){r.length=r.length-2*t,n.length=n.length-t,s.length=s.length-t}),"popStack"),(0,i.K2)(g,"lex");for(var m,O,k,b,R,N,T,x,A,M={};;){if(k=r[r.length-1],this.defaultActions[k]?b=this.defaultActions[k]:(null==m&&(m=g()),b=o[k]&&o[k][m]),void 0===b||!b.length||!b[0]){var w;for(N in A=[],o[k])this.terminals_[N]&&N>2&&A.push("'"+this.terminals_[N]+"'");w=y.showPosition?"Parse error on line "+(l+1)+":\n"+y.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(w,{text:y.match,token:this.terminals_[m]||m,line:y.yylineno,loc:f,expected:A})}if(b[0]instanceof Array&&b.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+m);switch(b[0]){case 1:r.push(m),n.push(y.yytext),s.push(y.yylloc),r.push(b[1]),m=null,O?(m=O,O=null):(h=y.yyleng,c=y.yytext,l=y.yylineno,f=y.yylloc,d>0&&d--);break;case 2:if(T=this.productions_[b[1]][1],M.$=n[n.length-T],M._$={first_line:s[s.length-(T||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(T||1)].first_column,last_column:s[s.length-1].last_column},E&&(M._$.range=[s[s.length-(T||1)].range[0],s[s.length-1].range[1]]),void 0!==(R=this.performAction.apply(M,[c,h,l,p.yy,b[1],n,s].concat(u))))return R;T&&(r=r.slice(0,-1*T*2),n=n.slice(0,-1*T),s=s.slice(0,-1*T)),r.push(this.productions_[b[1]][0]),n.push(M.$),s.push(M._$),x=o[r[r.length-2]][r[r.length-1]],r.push(x);break;case 3:return!0}}return!0}),"parse")},R=function(){return{EOF:1,parseError:(0,i.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,i.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,i.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,i.K2)((function(t){var e=t.length,r=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var a=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),r.length-1&&(this.yylineno-=r.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:r?(r.length===a.length?this.yylloc.first_column:0)+a[a.length-r.length].length-r[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,i.K2)((function(){return this._more=!0,this}),"more"),reject:(0,i.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,i.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,i.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,i.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,i.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,i.K2)((function(t,e){var r,a,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(a=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=a.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:a?a[a.length-1].length-a[a.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],r=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;if(this._backtrack){for(var n in i)this[n]=i[n];return!1}return!1}),"test_match"),next:(0,i.K2)((function(){if(this.done)return this.EOF;var t,e,r,a;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),n=0;ne[0].length)){if(e=r,a=n,this.options.backtrack_lexer){if(!1!==(t=this.test_match(r,i[n])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[a]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,i.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,i.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,i.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,i.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,i.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,i.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,i.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)((function(t,e,r,a){switch(r){case 0:return this.begin("acc_title"),22;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),24;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 10;case 8:case 15:case 20:break;case 9:return 8;case 10:return 28;case 11:return 48;case 12:return 4;case 13:return this.begin("block"),15;case 14:return 36;case 16:return 37;case 17:case 18:return 34;case 19:return 38;case 21:return this.popState(),17;case 22:case 54:return e.yytext[0];case 23:return 18;case 24:return 19;case 25:case 29:case 30:case 43:return 41;case 26:case 27:case 28:case 36:case 38:case 45:return 43;case 31:case 32:case 33:case 34:case 35:case 37:case 44:return 42;case 39:case 40:case 41:case 42:return 44;case 46:return 45;case 47:case 50:case 51:case 52:return 46;case 48:case 49:return 47;case 53:return 27;case 55:return 6}}),"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[14,15,16,17,18,19,20,21,22],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],inclusive:!0}}}}();function N(){this.yy={}}return b.lexer=R,(0,i.K2)(N,"Parser"),N.prototype=b,b.Parser=N,new N}();p.parser=p;var _=p,f=new Map,E=[],g=(0,i.K2)((function(t,e=void 0){return f.has(t)?!f.get(t).alias&&e&&(f.get(t).alias=e,i.Rm.info(`Add alias '${e}' to entity '${t}'`)):(f.set(t,{attributes:[],alias:e}),i.Rm.info("Added new entity :",t)),f.get(t)}),"addEntity"),m=(0,i.K2)((()=>f),"getEntities"),O=(0,i.K2)((function(t,e){let r,a=g(t);for(r=e.length-1;r>=0;r--)a.attributes.push(e[r]),i.Rm.debug("Added attribute ",e[r].attributeName)}),"addAttributes"),k=(0,i.K2)((function(t,e,r,a){let n={entityA:t,roleA:e,entityB:r,relSpec:a};E.push(n),i.Rm.debug("Added new relationship :",n)}),"addRelationship"),b=(0,i.K2)((()=>E),"getRelationships"),R=(0,i.K2)((function(){f=new Map,E=[],(0,i.IU)()}),"clear"),N={Cardinality:{ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},Identification:{NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},getConfig:(0,i.K2)((()=>(0,i.D7)().er),"getConfig"),addEntity:g,addAttributes:O,getEntities:m,addRelationship:k,getRelationships:b,clear:R,setAccTitle:i.SV,getAccTitle:i.iN,setAccDescription:i.EI,getAccDescription:i.m7,setDiagramTitle:i.ke,getDiagramTitle:i.ab},T={ONLY_ONE_START:"ONLY_ONE_START",ONLY_ONE_END:"ONLY_ONE_END",ZERO_OR_ONE_START:"ZERO_OR_ONE_START",ZERO_OR_ONE_END:"ZERO_OR_ONE_END",ONE_OR_MORE_START:"ONE_OR_MORE_START",ONE_OR_MORE_END:"ONE_OR_MORE_END",ZERO_OR_MORE_START:"ZERO_OR_MORE_START",ZERO_OR_MORE_END:"ZERO_OR_MORE_END",MD_PARENT_END:"MD_PARENT_END",MD_PARENT_START:"MD_PARENT_START"},x={ERMarkers:T,insertMarkers:(0,i.K2)((function(t,e){let r;t.append("defs").append("marker").attr("id",T.MD_PARENT_START).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",T.MD_PARENT_END).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",T.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),t.append("defs").append("marker").attr("id",T.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),r=t.append("defs").append("marker").attr("id",T.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M9,0 L9,18"),r=t.append("defs").append("marker").attr("id",T.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M21,0 L21,18"),t.append("defs").append("marker").attr("id",T.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),t.append("defs").append("marker").attr("id",T.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),r=t.append("defs").append("marker").attr("id",T.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),r=t.append("defs").append("marker").attr("id",T.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),r.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")}),"insertMarkers")},A=/[^\dA-Za-z](\W)*/g,M={},w=new Map,I=(0,i.K2)((function(t){const e=Object.keys(t);for(const r of e)M[r]=t[r]}),"setConf"),D=(0,i.K2)(((t,e,r)=>{const a=M.entityPadding/3,n=M.entityPadding/3,s=.85*M.fontSize,o=e.node().getBBox(),c=[];let l=!1,h=!1,d=0,u=0,y=0,p=0,_=o.height+2*a,f=1;r.forEach((t=>{void 0!==t.attributeKeyTypeList&&t.attributeKeyTypeList.length>0&&(l=!0),void 0!==t.attributeComment&&(h=!0)})),r.forEach((r=>{const n=`${e.node().id}-attr-${f}`;let o=0;const E=(0,i.QO)(r.attributeType),g=t.append("text").classed("er entityLabel",!0).attr("id",`${n}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",(0,i.D7)().fontFamily).style("font-size",s+"px").text(E),m=t.append("text").classed("er entityLabel",!0).attr("id",`${n}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",(0,i.D7)().fontFamily).style("font-size",s+"px").text(r.attributeName),O={};O.tn=g,O.nn=m;const k=g.node().getBBox(),b=m.node().getBBox();if(d=Math.max(d,k.width),u=Math.max(u,b.width),o=Math.max(k.height,b.height),l){const e=void 0!==r.attributeKeyTypeList?r.attributeKeyTypeList.join(","):"",a=t.append("text").classed("er entityLabel",!0).attr("id",`${n}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",(0,i.D7)().fontFamily).style("font-size",s+"px").text(e);O.kn=a;const c=a.node().getBBox();y=Math.max(y,c.width),o=Math.max(o,c.height)}if(h){const e=t.append("text").classed("er entityLabel",!0).attr("id",`${n}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",(0,i.D7)().fontFamily).style("font-size",s+"px").text(r.attributeComment||"");O.cn=e;const a=e.node().getBBox();p=Math.max(p,a.width),o=Math.max(o,a.height)}O.height=o,c.push(O),_+=o+2*a,f+=1}));let E=4;l&&(E+=2),h&&(E+=2);const g=d+u+y+p,m={width:Math.max(M.minEntityWidth,Math.max(o.width+2*M.entityPadding,g+n*E)),height:r.length>0?_:Math.max(M.minEntityHeight,o.height+2*M.entityPadding)};if(r.length>0){const r=Math.max(0,(m.width-g-n*E)/(E/2));e.attr("transform","translate("+m.width/2+","+(a+o.height/2)+")");let i=o.height+2*a,s="attributeBoxOdd";c.forEach((e=>{const o=i+a+e.height/2;e.tn.attr("transform","translate("+n+","+o+")");const c=t.insert("rect","#"+e.tn.node().id).classed(`er ${s}`,!0).attr("x",0).attr("y",i).attr("width",d+2*n+r).attr("height",e.height+2*a),_=parseFloat(c.attr("x"))+parseFloat(c.attr("width"));e.nn.attr("transform","translate("+(_+n)+","+o+")");const f=t.insert("rect","#"+e.nn.node().id).classed(`er ${s}`,!0).attr("x",_).attr("y",i).attr("width",u+2*n+r).attr("height",e.height+2*a);let E=parseFloat(f.attr("x"))+parseFloat(f.attr("width"));if(l){e.kn.attr("transform","translate("+(E+n)+","+o+")");const c=t.insert("rect","#"+e.kn.node().id).classed(`er ${s}`,!0).attr("x",E).attr("y",i).attr("width",y+2*n+r).attr("height",e.height+2*a);E=parseFloat(c.attr("x"))+parseFloat(c.attr("width"))}h&&(e.cn.attr("transform","translate("+(E+n)+","+o+")"),t.insert("rect","#"+e.cn.node().id).classed(`er ${s}`,"true").attr("x",E).attr("y",i).attr("width",p+2*n+r).attr("height",e.height+2*a)),i+=e.height+2*a,s="attributeBoxOdd"===s?"attributeBoxEven":"attributeBoxOdd"}))}else m.height=Math.max(M.minEntityHeight,_),e.attr("transform","translate("+m.width/2+","+m.height/2+")");return m}),"drawAttributes"),S=(0,i.K2)((function(t,e,r){let a;return[...e.keys()].forEach((function(n){const s=Y(n,"entity");w.set(n,s);const o=t.append("g").attr("id",s);a=void 0===a?s:a;const c="text-"+s,l=o.append("text").classed("er entityLabel",!0).attr("id",c).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",(0,i.D7)().fontFamily).style("font-size",M.fontSize+"px").text(e.get(n).alias??n),{width:h,height:d}=D(o,l,e.get(n).attributes),u=o.insert("rect","#"+c).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",h).attr("height",d).node().getBBox();r.setNode(s,{width:u.width,height:u.height,shape:"rect",id:s})})),a}),"drawEntities"),v=(0,i.K2)((function(t,e){e.nodes().forEach((function(r){void 0!==r&&void 0!==e.node(r)&&t.select("#"+r).attr("transform","translate("+(e.node(r).x-e.node(r).width/2)+","+(e.node(r).y-e.node(r).height/2)+" )")}))}),"adjustEntities"),L=(0,i.K2)((function(t){return(t.entityA+t.roleA+t.entityB).replace(/\s/g,"")}),"getEdgeName"),$=(0,i.K2)((function(t,e){return t.forEach((function(t){e.setEdge(w.get(t.entityA),w.get(t.entityB),{relationship:t},L(t))})),t}),"addRelationships"),K=0,C=(0,i.K2)((function(t,e,r,a,n){K++;const o=r.edge(w.get(e.entityA),w.get(e.entityB),L(e)),c=(0,s.n8j)().x((function(t){return t.x})).y((function(t){return t.y})).curve(s.qrM),l=t.insert("path","#"+a).classed("er relationshipLine",!0).attr("d",c(o.points)).style("stroke",M.stroke).style("fill","none");e.relSpec.relType===n.db.Identification.NON_IDENTIFYING&&l.attr("stroke-dasharray","8,8");let h="";switch(M.arrowMarkerAbsolute&&(h=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,h=h.replace(/\(/g,"\\("),h=h.replace(/\)/g,"\\)")),e.relSpec.cardA){case n.db.Cardinality.ZERO_OR_ONE:l.attr("marker-end","url("+h+"#"+x.ERMarkers.ZERO_OR_ONE_END+")");break;case n.db.Cardinality.ZERO_OR_MORE:l.attr("marker-end","url("+h+"#"+x.ERMarkers.ZERO_OR_MORE_END+")");break;case n.db.Cardinality.ONE_OR_MORE:l.attr("marker-end","url("+h+"#"+x.ERMarkers.ONE_OR_MORE_END+")");break;case n.db.Cardinality.ONLY_ONE:l.attr("marker-end","url("+h+"#"+x.ERMarkers.ONLY_ONE_END+")");break;case n.db.Cardinality.MD_PARENT:l.attr("marker-end","url("+h+"#"+x.ERMarkers.MD_PARENT_END+")")}switch(e.relSpec.cardB){case n.db.Cardinality.ZERO_OR_ONE:l.attr("marker-start","url("+h+"#"+x.ERMarkers.ZERO_OR_ONE_START+")");break;case n.db.Cardinality.ZERO_OR_MORE:l.attr("marker-start","url("+h+"#"+x.ERMarkers.ZERO_OR_MORE_START+")");break;case n.db.Cardinality.ONE_OR_MORE:l.attr("marker-start","url("+h+"#"+x.ERMarkers.ONE_OR_MORE_START+")");break;case n.db.Cardinality.ONLY_ONE:l.attr("marker-start","url("+h+"#"+x.ERMarkers.ONLY_ONE_START+")");break;case n.db.Cardinality.MD_PARENT:l.attr("marker-start","url("+h+"#"+x.ERMarkers.MD_PARENT_START+")")}const d=l.node().getTotalLength(),u=l.node().getPointAtLength(.5*d),y="rel"+K,p=t.append("text").classed("er relationshipLabel",!0).attr("id",y).attr("x",u.x).attr("y",u.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",(0,i.D7)().fontFamily).style("font-size",M.fontSize+"px").text(e.roleA).node().getBBox();t.insert("rect","#"+y).classed("er relationshipLabelBox",!0).attr("x",u.x-p.width/2).attr("y",u.y-p.height/2).attr("width",p.width).attr("height",p.height)}),"drawRelationshipFromLayout"),B=(0,i.K2)((function(t,e,r,c){M=(0,i.D7)().er,i.Rm.info("Drawing ER diagram");const l=(0,i.D7)().securityLevel;let h;"sandbox"===l&&(h=(0,s.Ltv)("#i"+e));const d=("sandbox"===l?(0,s.Ltv)(h.nodes()[0].contentDocument.body):(0,s.Ltv)("body")).select(`[id='${e}']`);let u;x.insertMarkers(d,M),u=new n.T({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:M.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel((function(){return{}}));const y=S(d,c.db.getEntities(),u),p=$(c.db.getRelationships(),u);(0,o.Zp)(u),v(d,u),p.forEach((function(t){C(d,t,u,y,c)}));const _=M.diagramPadding;a._K.insertTitle(d,"entityTitleText",M.titleTopMargin,c.db.getDiagramTitle());const f=d.node().getBBox(),E=f.width+2*_,g=f.height+2*_;(0,i.a$)(d,g,E,M.useMaxWidth),d.attr("viewBox",`${f.x-_} ${f.y-_} ${E} ${g}`)}),"draw"),P="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function Y(t="",e=""){const r=t.replace(A,"");return`${Z(e)}${Z(r)}${y(t,P)}`}function Z(t=""){return t.length>0?`${t}-`:""}(0,i.K2)(Y,"generateId"),(0,i.K2)(Z,"strWithHyphen");var F={parser:_,db:N,renderer:{setConf:I,draw:B},styles:(0,i.K2)((t=>`\n .entityBox {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n }\n\n .attributeBoxOdd {\n fill: ${t.attributeBackgroundColorOdd};\n stroke: ${t.nodeBorder};\n }\n\n .attributeBoxEven {\n fill: ${t.attributeBackgroundColorEven};\n stroke: ${t.nodeBorder};\n }\n\n .relationshipLabelBox {\n fill: ${t.tertiaryColor};\n opacity: 0.7;\n background-color: ${t.tertiaryColor};\n rect {\n opacity: 0.5;\n }\n }\n\n .relationshipLine {\n stroke: ${t.lineColor};\n }\n\n .entityTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n } \n #MD_PARENT_START {\n fill: #f5f5f5 !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n }\n #MD_PARENT_END {\n fill: #f5f5f5 !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n }\n \n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/890-c9907c95.chunk.min.js b/themes/hugo-geekdoc/static/js/890-c9907c95.chunk.min.js new file mode 100644 index 000000000..3437988ee --- /dev/null +++ b/themes/hugo-geekdoc/static/js/890-c9907c95.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[890],{890:(e,c,k)=>{k.d(c,{createInfoServices:()=>s.v});var s=k(7021);k(9369)}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/907-a936ddbe.chunk.min.js b/themes/hugo-geekdoc/static/js/907-a936ddbe.chunk.min.js new file mode 100644 index 000000000..90bc21978 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/907-a936ddbe.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[907],{3159:(t,e,a)=>{function r(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}a.d(e,{S:()=>r}),(0,a(32).K2)(r,"populateCommonDb")},6907:(t,e,a)=>{a.d(e,{diagram:()=>x});var r=a(3159),n=a(5522),o=a(1661),l=a(32),i=a(8731),c={packet:[]},s=structuredClone(c),d=l.UI.packet,k=(0,l.K2)((()=>{const t=(0,n.$t)({...d,...(0,l.zj)().packet});return t.showBits&&(t.paddingY+=10),t}),"getConfig"),p=(0,l.K2)((()=>s.packet),"getPacket"),b={pushWord:(0,l.K2)((t=>{t.length>0&&s.packet.push(t)}),"pushWord"),getPacket:p,getConfig:k,clear:(0,l.K2)((()=>{(0,l.IU)(),s=structuredClone(c)}),"clear"),setAccTitle:l.SV,getAccTitle:l.iN,setDiagramTitle:l.ke,getDiagramTitle:l.ab,getAccDescription:l.m7,setAccDescription:l.EI},g=(0,l.K2)((t=>{(0,r.S)(t,b);let e=-1,a=[],n=1;const{bitsPerRow:o}=b.getConfig();for(let{start:r,end:i,label:c}of t.blocks){if(i&&i{if(void 0===t.end&&(t.end=t.start),t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);return t.end+1<=e*a?[t,void 0]:[{start:t.start,end:e*a-1,label:t.label},{start:e*a,end:t.end,label:t.label}]}),"getNextFittingBlock"),f={parse:(0,l.K2)((async t=>{const e=await(0,i.qg)("packet",t);l.Rm.debug(e),g(e)}),"parse")},u=(0,l.K2)(((t,e,a,r)=>{const n=r.db,i=n.getConfig(),{rowHeight:c,paddingY:s,bitWidth:d,bitsPerRow:k}=i,p=n.getPacket(),b=n.getDiagramTitle(),g=c+s,h=g*(p.length+1)-(b?0:c),f=d*k+2,u=(0,o.D)(e);u.attr("viewbox",`0 0 ${f} ${h}`),(0,l.a$)(u,h,f,i.useMaxWidth);for(const[t,e]of p.entries())$(u,e,t,i);u.append("text").text(b).attr("x",f/2).attr("y",h-g/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")}),"draw"),$=(0,l.K2)(((t,e,a,{rowHeight:r,paddingX:n,paddingY:o,bitWidth:l,bitsPerRow:i,showBits:c})=>{const s=t.append("g"),d=a*(r+o)+o;for(const t of e){const e=t.start%i*l+1,a=(t.end-t.start+1)*l-n;if(s.append("rect").attr("x",e).attr("y",d).attr("width",a).attr("height",r).attr("class","packetBlock"),s.append("text").attr("x",e+a/2).attr("y",d+r/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(t.label),!c)continue;const o=t.end===t.start,k=d-2;s.append("text").attr("x",e+(o?a/2:0)).attr("y",k).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",o?"middle":"start").text(t.start),o||s.append("text").attr("x",e+a).attr("y",k).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(t.end)}}),"drawWord"),w={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},x={parser:f,db:b,renderer:{draw:u},styles:(0,l.K2)((({packet:t}={})=>{const e=(0,n.$t)(w,t);return`\n\t.packetByte {\n\t\tfont-size: ${e.byteFontSize};\n\t}\n\t.packetByte.start {\n\t\tfill: ${e.startByteColor};\n\t}\n\t.packetByte.end {\n\t\tfill: ${e.endByteColor};\n\t}\n\t.packetLabel {\n\t\tfill: ${e.labelColor};\n\t\tfont-size: ${e.labelFontSize};\n\t}\n\t.packetTitle {\n\t\tfill: ${e.titleColor};\n\t\tfont-size: ${e.titleFontSize};\n\t}\n\t.packetBlock {\n\t\tstroke: ${e.blockStrokeColor};\n\t\tstroke-width: ${e.blockStrokeWidth};\n\t\tfill: ${e.blockFillColor};\n\t}\n\t`}),"styles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/911-59f72ec0.chunk.min.js b/themes/hugo-geekdoc/static/js/911-59f72ec0.chunk.min.js new file mode 100644 index 000000000..67e7505c3 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/911-59f72ec0.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[911],{8448:(t,r,e)=>{e.d(r,{m:()=>o});var n=e(32),o=class{constructor(t){this.init=t,this.records=this.init()}static{(0,n.K2)(this,"ImperativeState")}reset(){this.records=this.init()}}},3159:(t,r,e)=>{function n(t,r){t.accDescr&&r.setAccDescription?.(t.accDescr),t.accTitle&&r.setAccTitle?.(t.accTitle),t.title&&r.setDiagramTitle?.(t.title)}e.d(r,{S:()=>n}),(0,e(32).K2)(n,"populateCommonDb")},4911:(t,r,e)=>{e.d(r,{diagram:()=>ft});var n=e(3159),o=e(8448),a=e(5522),c=e(32),s=e(8731),i=e(4852),h={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},d=c.UI.gitGraph,m=(0,c.K2)((()=>(0,a.$t)({...d,...(0,c.zj)().gitGraph})),"getConfig"),$=new o.m((()=>{const t=m(),r=t.mainBranchName,e=t.mainBranchOrder;return{mainBranchName:r,commits:new Map,head:null,branchConfig:new Map([[r,{name:r,order:e}]]),branches:new Map([[r,null]]),currBranch:r,direction:"LR",seq:0,options:{}}}));function l(){return(0,a.yT)({length:7})}function g(t,r){const e=Object.create(null);return t.reduce(((t,n)=>{const o=r(n);return e[o]||(e[o]=!0,t.push(n)),t}),[])}(0,c.K2)(l,"getID"),(0,c.K2)(g,"uniqBy");var y=(0,c.K2)((function(t){$.records.direction=t}),"setDirection"),p=(0,c.K2)((function(t){c.Rm.debug("options str",t),t=t?.trim(),t=t||"{}";try{$.records.options=JSON.parse(t)}catch(t){c.Rm.error("error while parsing gitGraph options",t.message)}}),"setOptions"),x=(0,c.K2)((function(){return $.records.options}),"getOptions"),f=(0,c.K2)((function(t){let r=t.msg,e=t.id;const n=t.type;let o=t.tags;c.Rm.info("commit",r,e,n,o),c.Rm.debug("Entering commit:",r,e,n,o);const a=m();e=c.Y2.sanitizeText(e,a),r=c.Y2.sanitizeText(r,a),o=o?.map((t=>c.Y2.sanitizeText(t,a)));const s={id:e||$.records.seq+"-"+l(),message:r,seq:$.records.seq++,type:n??h.NORMAL,tags:o??[],parents:null==$.records.head?[]:[$.records.head.id],branch:$.records.currBranch};$.records.head=s,c.Rm.info("main branch",a.mainBranchName),$.records.commits.set(s.id,s),$.records.branches.set($.records.currBranch,s.id),c.Rm.debug("in pushCommit "+s.id)}),"commit"),u=(0,c.K2)((function(t){let r=t.name;const e=t.order;if(r=c.Y2.sanitizeText(r,m()),$.records.branches.has(r))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${r}")`);$.records.branches.set(r,null!=$.records.head?$.records.head.id:null),$.records.branchConfig.set(r,{name:r,order:e}),B(r),c.Rm.debug("in createBranch")}),"branch"),b=(0,c.K2)((t=>{let r=t.branch,e=t.id;const n=t.type,o=t.tags,a=m();r=c.Y2.sanitizeText(r,a),e&&(e=c.Y2.sanitizeText(e,a));const s=$.records.branches.get($.records.currBranch),i=$.records.branches.get(r),d=s?$.records.commits.get(s):void 0,g=i?$.records.commits.get(i):void 0;if(d&&g&&d.branch===r)throw new Error(`Cannot merge branch '${r}' into itself.`);if($.records.currBranch===r){const t=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["branch abc"]},t}if(void 0===d||!d){const t=new Error(`Incorrect usage of "merge". Current branch (${$.records.currBranch})has no commits`);throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["commit"]},t}if(!$.records.branches.has(r)){const t=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") does not exist");throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:[`branch ${r}`]},t}if(void 0===g||!g){const t=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") has no commits");throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:['"commit"']},t}if(d===g){const t=new Error('Incorrect usage of "merge". Both branches have same head');throw t.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["branch abc"]},t}if(e&&$.records.commits.has(e)){const t=new Error('Incorrect usage of "merge". Commit with id:'+e+" already exists, use different custom Id");throw t.hash={text:`merge ${r} ${e} ${n} ${o?.join(" ")}`,token:`merge ${r} ${e} ${n} ${o?.join(" ")}`,expected:[`merge ${r} ${e}_UNIQUE ${n} ${o?.join(" ")}`]},t}const y=i||"",p={id:e||`${$.records.seq}-${l()}`,message:`merged branch ${r} into ${$.records.currBranch}`,seq:$.records.seq++,parents:null==$.records.head?[]:[$.records.head.id,y],branch:$.records.currBranch,type:h.MERGE,customType:n,customId:!!e,tags:o??[]};$.records.head=p,$.records.commits.set(p.id,p),$.records.branches.set($.records.currBranch,p.id),c.Rm.debug($.records.branches),c.Rm.debug("in mergeBranch")}),"merge"),w=(0,c.K2)((function(t){let r=t.id,e=t.targetId,n=t.tags,o=t.parent;c.Rm.debug("Entering cherryPick:",r,e,n);const a=m();if(r=c.Y2.sanitizeText(r,a),e=c.Y2.sanitizeText(e,a),n=n?.map((t=>c.Y2.sanitizeText(t,a))),o=c.Y2.sanitizeText(o,a),!r||!$.records.commits.has(r)){const t=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw t.hash={text:`cherryPick ${r} ${e}`,token:`cherryPick ${r} ${e}`,expected:["cherry-pick abc"]},t}const s=$.records.commits.get(r);if(void 0===s||!s)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(o&&(!Array.isArray(s.parents)||!s.parents.includes(o)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");const i=s.branch;if(s.type===h.MERGE&&!o)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!e||!$.records.commits.has(e)){if(i===$.records.currBranch){const t=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw t.hash={text:`cherryPick ${r} ${e}`,token:`cherryPick ${r} ${e}`,expected:["cherry-pick abc"]},t}const t=$.records.branches.get($.records.currBranch);if(void 0===t||!t){const t=new Error(`Incorrect usage of "cherry-pick". Current branch (${$.records.currBranch})has no commits`);throw t.hash={text:`cherryPick ${r} ${e}`,token:`cherryPick ${r} ${e}`,expected:["cherry-pick abc"]},t}const a=$.records.commits.get(t);if(void 0===a||!a){const t=new Error(`Incorrect usage of "cherry-pick". Current branch (${$.records.currBranch})has no commits`);throw t.hash={text:`cherryPick ${r} ${e}`,token:`cherryPick ${r} ${e}`,expected:["cherry-pick abc"]},t}const d={id:$.records.seq+"-"+l(),message:`cherry-picked ${s?.message} into ${$.records.currBranch}`,seq:$.records.seq++,parents:null==$.records.head?[]:[$.records.head.id,s.id],branch:$.records.currBranch,type:h.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===h.MERGE?`|parent:${o}`:""}`]};$.records.head=d,$.records.commits.set(d.id,d),$.records.branches.set($.records.currBranch,d.id),c.Rm.debug($.records.branches),c.Rm.debug("in cherryPick")}}),"cherryPick"),B=(0,c.K2)((function(t){if(t=c.Y2.sanitizeText(t,m()),!$.records.branches.has(t)){const r=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${t}")`);throw r.hash={text:`checkout ${t}`,token:`checkout ${t}`,expected:[`branch ${t}`]},r}{$.records.currBranch=t;const r=$.records.branches.get($.records.currBranch);$.records.head=void 0!==r&&r?$.records.commits.get(r)??null:null}}),"checkout");function E(t,r,e){const n=t.indexOf(r);-1===n?t.push(e):t.splice(n,1,e)}function k(t){const r=t.reduce(((t,r)=>t.seq>r.seq?t:r),t[0]);let e="";t.forEach((function(t){e+=t===r?"\t*":"\t|"}));const n=[e,r.id,r.seq];for(const t in $.records.branches)$.records.branches.get(t)===r.id&&n.push(t);if(c.Rm.debug(n.join(" ")),r.parents&&2==r.parents.length&&r.parents[0]&&r.parents[1]){const e=$.records.commits.get(r.parents[0]);E(t,r,e),r.parents[1]&&t.push($.records.commits.get(r.parents[1]))}else{if(0==r.parents.length)return;if(r.parents[0]){const e=$.records.commits.get(r.parents[0]);E(t,r,e)}}k(t=g(t,(t=>t.id)))}(0,c.K2)(E,"upsert"),(0,c.K2)(k,"prettyPrintCommitHistory");var C=(0,c.K2)((function(){c.Rm.debug($.records.commits),k([R()[0]])}),"prettyPrint"),T=(0,c.K2)((function(){$.reset(),(0,c.IU)()}),"clear"),L=(0,c.K2)((function(){return[...$.records.branchConfig.values()].map(((t,r)=>null!==t.order&&void 0!==t.order?t:{...t,order:parseFloat(`0.${r}`)})).sort(((t,r)=>(t.order??0)-(r.order??0))).map((({name:t})=>({name:t})))}),"getBranchesAsObjArray"),K=(0,c.K2)((function(){return $.records.branches}),"getBranches"),M=(0,c.K2)((function(){return $.records.commits}),"getCommits"),R=(0,c.K2)((function(){const t=[...$.records.commits.values()];return t.forEach((function(t){c.Rm.debug(t.id)})),t.sort(((t,r)=>t.seq-r.seq)),t}),"getCommitsArray"),v={commitType:h,getConfig:m,setDirection:y,setOptions:p,getOptions:x,commit:f,branch:u,merge:b,cherryPick:w,checkout:B,prettyPrint:C,clear:T,getBranchesAsObjArray:L,getBranches:K,getCommits:M,getCommitsArray:R,getCurrentBranch:(0,c.K2)((function(){return $.records.currBranch}),"getCurrentBranch"),getDirection:(0,c.K2)((function(){return $.records.direction}),"getDirection"),getHead:(0,c.K2)((function(){return $.records.head}),"getHead"),setAccTitle:c.SV,getAccTitle:c.iN,getAccDescription:c.m7,setAccDescription:c.EI,setDiagramTitle:c.ke,getDiagramTitle:c.ab},P=(0,c.K2)(((t,r)=>{(0,n.S)(t,r),t.dir&&r.setDirection(t.dir);for(const e of t.statements)I(e,r)}),"populate"),I=(0,c.K2)(((t,r)=>{const e={Commit:(0,c.K2)((t=>r.commit(A(t))),"Commit"),Branch:(0,c.K2)((t=>r.branch(G(t))),"Branch"),Merge:(0,c.K2)((t=>r.merge(O(t))),"Merge"),Checkout:(0,c.K2)((t=>r.checkout(q(t))),"Checkout"),CherryPicking:(0,c.K2)((t=>r.cherryPick(z(t))),"CherryPicking")}[t.$type];e?e(t):c.Rm.error(`Unknown statement type: ${t.$type}`)}),"parseStatement"),A=(0,c.K2)((t=>({id:t.id,msg:t.message??"",type:void 0!==t.type?h[t.type]:h.NORMAL,tags:t.tags??void 0})),"parseCommit"),G=(0,c.K2)((t=>({name:t.name,order:t.order??0})),"parseBranch"),O=(0,c.K2)((t=>({branch:t.branch,id:t.id??"",type:void 0!==t.type?h[t.type]:void 0,tags:t.tags??void 0})),"parseMerge"),q=(0,c.K2)((t=>t.branch),"parseCheckout"),z=(0,c.K2)((t=>({id:t.id,targetId:"",tags:0===t.tags?.length?void 0:t.tags,parent:t.parent})),"parseCherryPicking"),H={parse:(0,c.K2)((async t=>{const r=await(0,s.qg)("gitGraph",t);c.Rm.debug(r),P(r,v)}),"parse")},S=(0,c.D7)(),D=S?.gitGraph,Y=10,N=40,j=new Map,W=new Map,_=new Map,F=[],U=0,V="LR",J=(0,c.K2)((()=>{j.clear(),W.clear(),_.clear(),U=0,F=[],V="LR"}),"clear"),Q=(0,c.K2)((t=>{const r=document.createElementNS("http://www.w3.org/2000/svg","text");return("string"==typeof t?t.split(/\\n|\n|/gi):t).forEach((t=>{const e=document.createElementNS("http://www.w3.org/2000/svg","tspan");e.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),e.setAttribute("dy","1em"),e.setAttribute("x","0"),e.setAttribute("class","row"),e.textContent=t.trim(),r.appendChild(e)})),r}),"drawText"),X=(0,c.K2)((t=>{let r,e,n;return"BT"===V?(e=(0,c.K2)(((t,r)=>t<=r),"comparisonFunc"),n=1/0):(e=(0,c.K2)(((t,r)=>t>=r),"comparisonFunc"),n=0),t.forEach((t=>{const o="TB"===V||"BT"==V?W.get(t)?.y:W.get(t)?.x;void 0!==o&&e(o,n)&&(r=t,n=o)})),r}),"findClosestParent"),Z=(0,c.K2)((t=>{let r="",e=1/0;return t.forEach((t=>{const n=W.get(t).y;n<=e&&(r=t,e=n)})),r||void 0}),"findClosestParentBT"),tt=(0,c.K2)(((t,r,e)=>{let n=e,o=e;const a=[];t.forEach((t=>{const e=r.get(t);if(!e)throw new Error(`Commit not found for key ${t}`);e.parents.length?(n=et(e),o=Math.max(n,o)):a.push(e),nt(e,n)})),n=o,a.forEach((t=>{ot(t,n,e)})),t.forEach((t=>{const e=r.get(t);if(e?.parents.length){const t=Z(e.parents);n=W.get(t).y-N,n<=o&&(o=n);const r=j.get(e.branch).pos,a=n-Y;W.set(e.id,{x:r,y:a})}}))}),"setParallelBTPos"),rt=(0,c.K2)((t=>{const r=X(t.parents.filter((t=>null!==t)));if(!r)throw new Error(`Closest parent not found for commit ${t.id}`);const e=W.get(r)?.y;if(void 0===e)throw new Error(`Closest parent position not found for commit ${t.id}`);return e}),"findClosestParentPos"),et=(0,c.K2)((t=>rt(t)+N),"calculateCommitPosition"),nt=(0,c.K2)(((t,r)=>{const e=j.get(t.branch);if(!e)throw new Error(`Branch not found for commit ${t.id}`);const n=e.pos,o=r+Y;return W.set(t.id,{x:n,y:o}),{x:n,y:o}}),"setCommitPosition"),ot=(0,c.K2)(((t,r,e)=>{const n=j.get(t.branch);if(!n)throw new Error(`Branch not found for commit ${t.id}`);const o=r+e,a=n.pos;W.set(t.id,{x:a,y:o})}),"setRootPosition"),at=(0,c.K2)(((t,r,e,n,o,a)=>{if(a===h.HIGHLIGHT)t.append("rect").attr("x",e.x-10).attr("y",e.y-10).attr("width",20).attr("height",20).attr("class",`commit ${r.id} commit-highlight${o%8} ${n}-outer`),t.append("rect").attr("x",e.x-6).attr("y",e.y-6).attr("width",12).attr("height",12).attr("class",`commit ${r.id} commit${o%8} ${n}-inner`);else if(a===h.CHERRY_PICK)t.append("circle").attr("cx",e.x).attr("cy",e.y).attr("r",10).attr("class",`commit ${r.id} ${n}`),t.append("circle").attr("cx",e.x-3).attr("cy",e.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${r.id} ${n}`),t.append("circle").attr("cx",e.x+3).attr("cy",e.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${r.id} ${n}`),t.append("line").attr("x1",e.x+3).attr("y1",e.y+1).attr("x2",e.x).attr("y2",e.y-5).attr("stroke","#fff").attr("class",`commit ${r.id} ${n}`),t.append("line").attr("x1",e.x-3).attr("y1",e.y+1).attr("x2",e.x).attr("y2",e.y-5).attr("stroke","#fff").attr("class",`commit ${r.id} ${n}`);else{const c=t.append("circle");if(c.attr("cx",e.x),c.attr("cy",e.y),c.attr("r",r.type===h.MERGE?9:10),c.attr("class",`commit ${r.id} commit${o%8}`),a===h.MERGE){const a=t.append("circle");a.attr("cx",e.x),a.attr("cy",e.y),a.attr("r",6),a.attr("class",`commit ${n} ${r.id} commit${o%8}`)}a===h.REVERSE&&t.append("path").attr("d",`M ${e.x-5},${e.y-5}L${e.x+5},${e.y+5}M${e.x-5},${e.y+5}L${e.x+5},${e.y-5}`).attr("class",`commit ${n} ${r.id} commit${o%8}`)}}),"drawCommitBullet"),ct=(0,c.K2)(((t,r,e,n)=>{if(r.type!==h.CHERRY_PICK&&(r.customId&&r.type===h.MERGE||r.type!==h.MERGE)&&D?.showCommitLabel){const o=t.append("g"),a=o.insert("rect").attr("class","commit-label-bkg"),c=o.append("text").attr("x",n).attr("y",e.y+25).attr("class","commit-label").text(r.id),s=c.node()?.getBBox();if(s&&(a.attr("x",e.posWithOffset-s.width/2-2).attr("y",e.y+13.5).attr("width",s.width+4).attr("height",s.height+4),"TB"===V||"BT"===V?(a.attr("x",e.x-(s.width+16+5)).attr("y",e.y-12),c.attr("x",e.x-(s.width+16)).attr("y",e.y+s.height-12)):c.attr("x",e.posWithOffset-s.width/2),D.rotateCommitLabel))if("TB"===V||"BT"===V)c.attr("transform","rotate(-45, "+e.x+", "+e.y+")"),a.attr("transform","rotate(-45, "+e.x+", "+e.y+")");else{const t=-7.5-(s.width+10)/25*9.5,r=10+s.width/25*8.5;o.attr("transform","translate("+t+", "+r+") rotate(-45, "+n+", "+e.y+")")}}}),"drawCommitLabel"),st=(0,c.K2)(((t,r,e,n)=>{if(r.tags.length>0){let o=0,a=0,c=0;const s=[];for(const n of r.tags.reverse()){const r=t.insert("polygon"),i=t.append("circle"),h=t.append("text").attr("y",e.y-16-o).attr("class","tag-label").text(n),d=h.node()?.getBBox();if(!d)throw new Error("Tag bbox not found");a=Math.max(a,d.width),c=Math.max(c,d.height),h.attr("x",e.posWithOffset-d.width/2),s.push({tag:h,hole:i,rect:r,yOffset:o}),o+=20}for(const{tag:t,hole:r,rect:o,yOffset:i}of s){const s=c/2,h=e.y-19.2-i;if(o.attr("class","tag-label-bkg").attr("points",`\n ${n-a/2-2},${h+2} \n ${n-a/2-2},${h-2}\n ${e.posWithOffset-a/2-4},${h-s-2}\n ${e.posWithOffset+a/2+4},${h-s-2}\n ${e.posWithOffset+a/2+4},${h+s+2}\n ${e.posWithOffset-a/2-4},${h+s+2}`),r.attr("cy",h).attr("cx",n-a/2+2).attr("r",1.5).attr("class","tag-hole"),"TB"===V||"BT"===V){const c=n+i;o.attr("class","tag-label-bkg").attr("points",`\n ${e.x},${c+2}\n ${e.x},${c-2}\n ${e.x+Y},${c-s-2}\n ${e.x+Y+a+4},${c-s-2}\n ${e.x+Y+a+4},${c+s+2}\n ${e.x+Y},${c+s+2}`).attr("transform","translate(12,12) rotate(45, "+e.x+","+n+")"),r.attr("cx",e.x+2).attr("cy",c).attr("transform","translate(12,12) rotate(45, "+e.x+","+n+")"),t.attr("x",e.x+5).attr("y",c+3).attr("transform","translate(14,14) rotate(45, "+e.x+","+n+")")}}}}),"drawCommitTags"),it=(0,c.K2)((t=>{switch(t.customType??t.type){case h.NORMAL:return"commit-normal";case h.REVERSE:return"commit-reverse";case h.HIGHLIGHT:return"commit-highlight";case h.MERGE:return"commit-merge";case h.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}}),"getCommitClassType"),ht=(0,c.K2)(((t,r,e,n)=>{const o={x:0,y:0};if(!(t.parents.length>0))return"TB"===r?30:"BT"===r?(n.get(t.id)??o).y-N:0;{const e=X(t.parents);if(e){const a=n.get(e)??o;return"TB"===r?a.y+N:"BT"===r?(n.get(t.id)??o).y-N:a.x+N}}return 0}),"calculatePosition"),dt=(0,c.K2)(((t,r,e)=>{const n="BT"===V&&e?r:r+Y,o="TB"===V||"BT"===V?n:j.get(t.branch)?.pos,a="TB"===V||"BT"===V?j.get(t.branch)?.pos:n;if(void 0===a||void 0===o)throw new Error(`Position were undefined for commit ${t.id}`);return{x:a,y:o,posWithOffset:n}}),"getCommitPosition"),mt=(0,c.K2)(((t,r,e)=>{if(!D)throw new Error("GitGraph config not found");const n=t.append("g").attr("class","commit-bullets"),o=t.append("g").attr("class","commit-labels");let a="TB"===V||"BT"===V?30:0;const s=[...r.keys()],i=D?.parallelCommits??!1,h=(0,c.K2)(((t,e)=>{const n=r.get(t)?.seq,o=r.get(e)?.seq;return void 0!==n&&void 0!==o?n-o:0}),"sortKeys");let d=s.sort(h);"BT"===V&&(i&&tt(d,r,a),d=d.reverse()),d.forEach((t=>{const c=r.get(t);if(!c)throw new Error(`Commit not found for key ${t}`);i&&(a=ht(c,V,a,W));const s=dt(c,a,i);if(e){const t=it(c),r=c.customType??c.type,e=j.get(c.branch)?.index??0;at(n,c,s,t,e,r),ct(o,c,s,a),st(o,c,s,a)}"TB"===V||"BT"===V?W.set(c.id,{x:s.x,y:s.posWithOffset}):W.set(c.id,{x:s.posWithOffset,y:s.y}),a="BT"===V&&i?a+N:a+N+Y,a>U&&(U=a)}))}),"drawCommits"),$t=(0,c.K2)(((t,r,e,n,o)=>{const a=("TB"===V||"BT"===V?e.xt.branch===a),"isOnBranchToGetCurve"),i=(0,c.K2)((e=>e.seq>t.seq&&e.seqi(t)&&s(t)))}),"shouldRerouteArrow"),lt=(0,c.K2)(((t,r,e=0)=>{const n=t+Math.abs(t-r)/2;if(e>5)return n;if(F.every((t=>Math.abs(t-n)>=10)))return F.push(n),n;const o=Math.abs(t-r);return lt(t,r-o/5,e+1)}),"findLane"),gt=(0,c.K2)(((t,r,e,n)=>{const o=W.get(r.id),a=W.get(e.id);if(void 0===o||void 0===a)throw new Error(`Commit positions not found for commits ${r.id} and ${e.id}`);const c=$t(r,e,o,a,n);let s,i="",d="",m=0,$=0,l=j.get(e.branch)?.index;if(e.type===h.MERGE&&r.id!==e.parents[0]&&(l=j.get(r.branch)?.index),c){i="A 10 10, 0, 0, 0,",d="A 10 10, 0, 0, 1,",m=10,$=10;const t=o.ya.x&&(i="A 20 20, 0, 0, 0,",d="A 20 20, 0, 0, 1,",m=20,$=20,s=e.type===h.MERGE&&r.id!==e.parents[0]?`M ${o.x} ${o.y} L ${o.x} ${a.y-m} ${d} ${o.x-$} ${a.y} L ${a.x} ${a.y}`:`M ${o.x} ${o.y} L ${a.x+m} ${o.y} ${i} ${a.x} ${o.y+$} L ${a.x} ${a.y}`),o.x===a.x&&(s=`M ${o.x} ${o.y} L ${a.x} ${a.y}`)):"BT"===V?(o.xa.x&&(i="A 20 20, 0, 0, 0,",d="A 20 20, 0, 0, 1,",m=20,$=20,s=e.type===h.MERGE&&r.id!==e.parents[0]?`M ${o.x} ${o.y} L ${o.x} ${a.y+m} ${i} ${o.x-$} ${a.y} L ${a.x} ${a.y}`:`M ${o.x} ${o.y} L ${a.x-m} ${o.y} ${i} ${a.x} ${o.y-$} L ${a.x} ${a.y}`),o.x===a.x&&(s=`M ${o.x} ${o.y} L ${a.x} ${a.y}`)):(o.ya.y&&(s=e.type===h.MERGE&&r.id!==e.parents[0]?`M ${o.x} ${o.y} L ${a.x-m} ${o.y} ${i} ${a.x} ${o.y-$} L ${a.x} ${a.y}`:`M ${o.x} ${o.y} L ${o.x} ${a.y+m} ${d} ${o.x+$} ${a.y} L ${a.x} ${a.y}`),o.y===a.y&&(s=`M ${o.x} ${o.y} L ${a.x} ${a.y}`));if(void 0===s)throw new Error("Line definition not found");t.append("path").attr("d",s).attr("class","arrow arrow"+l%8)}),"drawArrow"),yt=(0,c.K2)(((t,r)=>{const e=t.append("g").attr("class","commit-arrows");[...r.keys()].forEach((t=>{const n=r.get(t);n.parents&&n.parents.length>0&&n.parents.forEach((t=>{gt(e,r.get(t),n,r)}))}))}),"drawArrows"),pt=(0,c.K2)(((t,r)=>{const e=t.append("g");r.forEach(((t,r)=>{const n=r%8,o=j.get(t.name)?.pos;if(void 0===o)throw new Error(`Position not found for branch ${t.name}`);const a=e.append("line");a.attr("x1",0),a.attr("y1",o),a.attr("x2",U),a.attr("y2",o),a.attr("class","branch branch"+n),"TB"===V?(a.attr("y1",30),a.attr("x1",o),a.attr("y2",U),a.attr("x2",o)):"BT"===V&&(a.attr("y1",U),a.attr("x1",o),a.attr("y2",30),a.attr("x2",o)),F.push(o);const c=t.name,s=Q(c),i=e.insert("rect"),h=e.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+n);h.node().appendChild(s);const d=s.getBBox();i.attr("class","branchLabelBkg label"+n).attr("rx",4).attr("ry",4).attr("x",-d.width-4-(!0===D?.rotateCommitLabel?30:0)).attr("y",-d.height/2+8).attr("width",d.width+18).attr("height",d.height+4),h.attr("transform","translate("+(-d.width-14-(!0===D?.rotateCommitLabel?30:0))+", "+(o-d.height/2-1)+")"),"TB"===V?(i.attr("x",o-d.width/2-10).attr("y",0),h.attr("transform","translate("+(o-d.width/2-5)+", 0)")):"BT"===V?(i.attr("x",o-d.width/2-10).attr("y",U),h.attr("transform","translate("+(o-d.width/2-5)+", "+U+")")):i.attr("transform","translate(-19, "+(o-d.height/2)+")")}))}),"drawBranches"),xt=(0,c.K2)((function(t,r,e,n,o){return j.set(t,{pos:r,index:e}),r+(50+(o?40:0)+("TB"===V||"BT"===V?n.width/2:0))}),"setBranchPosition"),ft={parser:H,db:v,renderer:{draw:(0,c.K2)((function(t,r,e,n){if(J(),c.Rm.debug("in gitgraph renderer",t+"\n","id:",r,e),!D)throw new Error("GitGraph config not found");const o=D.rotateCommitLabel??!1,s=n.db;_=s.getCommits();const h=s.getBranchesAsObjArray();V=s.getDirection();const d=(0,i.Ltv)(`[id="${r}"]`);let m=0;h.forEach(((t,r)=>{const e=Q(t.name),n=d.append("g"),a=n.insert("g").attr("class","branchLabel"),c=a.insert("g").attr("class","label branch-label");c.node()?.appendChild(e);const s=e.getBBox();m=xt(t.name,m,r,s,o),c.remove(),a.remove(),n.remove()})),mt(d,_,!1),D.showBranches&&pt(d,h),yt(d,_),mt(d,_,!0),a._K.insertTitle(d,"gitTitleText",D.titleTopMargin??0,s.getDiagramTitle()),(0,c.mj)(void 0,d,D.diagramPadding,D.useMaxWidth)}),"draw")},styles:(0,c.K2)((t=>`\n .commit-id,\n .commit-msg,\n .branch-label {\n fill: lightgrey;\n color: lightgrey;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n }\n ${[0,1,2,3,4,5,6,7].map((r=>`\n .branch-label${r} { fill: ${t["gitBranchLabel"+r]}; }\n .commit${r} { stroke: ${t["git"+r]}; fill: ${t["git"+r]}; }\n .commit-highlight${r} { stroke: ${t["gitInv"+r]}; fill: ${t["gitInv"+r]}; }\n .label${r} { fill: ${t["git"+r]}; }\n .arrow${r} { stroke: ${t["git"+r]}; }\n `)).join("\n")}\n\n .branch {\n stroke-width: 1;\n stroke: ${t.lineColor};\n stroke-dasharray: 2;\n }\n .commit-label { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelColor};}\n .commit-label-bkg { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelBackground}; opacity: 0.5; }\n .tag-label { font-size: ${t.tagLabelFontSize}; fill: ${t.tagLabelColor};}\n .tag-label-bkg { fill: ${t.tagLabelBackground}; stroke: ${t.tagLabelBorder}; }\n .tag-hole { fill: ${t.textColor}; }\n\n .commit-merge {\n stroke: ${t.primaryColor};\n fill: ${t.primaryColor};\n }\n .commit-reverse {\n stroke: ${t.primaryColor};\n fill: ${t.primaryColor};\n stroke-width: 3;\n }\n .commit-highlight-outer {\n }\n .commit-highlight-inner {\n stroke: ${t.primaryColor};\n fill: ${t.primaryColor};\n }\n\n .arrow { stroke-width: 8; stroke-linecap: round; fill: none}\n .gitTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/918-70ec2bcb.chunk.min.js b/themes/hugo-geekdoc/static/js/918-70ec2bcb.chunk.min.js deleted file mode 100644 index 3d915aa87..000000000 --- a/themes/hugo-geekdoc/static/js/918-70ec2bcb.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[918],{4918:(t,e,a)=>{a.d(e,{diagram:()=>Nt});var n=a(9323),i=a(7323),r=a(798),s=a(4852),l=a(6750),o=function(){var t=(0,r.K2)((function(t,e,a,n){for(a=a||{},n=t.length;n--;a[t[n]]=e);return a}),"o"),e=[1,24],a=[1,25],n=[1,26],i=[1,27],s=[1,28],l=[1,63],o=[1,64],h=[1,65],d=[1,66],u=[1,67],p=[1,68],y=[1,69],g=[1,29],f=[1,30],b=[1,31],x=[1,32],_=[1,33],m=[1,34],E=[1,35],S=[1,36],A=[1,37],C=[1,38],w=[1,39],k=[1,40],O=[1,41],T=[1,42],v=[1,43],R=[1,44],D=[1,45],N=[1,46],P=[1,47],B=[1,48],I=[1,50],M=[1,51],j=[1,52],K=[1,53],L=[1,54],Y=[1,55],U=[1,56],F=[1,57],X=[1,58],z=[1,59],W=[1,60],Q=[14,42],$=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],H=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],q=[1,82],V=[1,83],G=[1,84],J=[1,85],Z=[12,14,42],tt=[12,14,33,42],et=[12,14,33,42,76,77,79,80],at=[12,33],nt=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],it={trace:(0,r.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:(0,r.K2)((function(t,e,a,n,i,r,s){var l=r.length-1;switch(i){case 3:n.setDirection("TB");break;case 4:n.setDirection("BT");break;case 5:n.setDirection("RL");break;case 6:n.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:n.setC4Type(r[l-3]);break;case 19:n.setTitle(r[l].substring(6)),this.$=r[l].substring(6);break;case 20:n.setAccDescription(r[l].substring(15)),this.$=r[l].substring(15);break;case 21:this.$=r[l].trim(),n.setTitle(this.$);break;case 22:case 23:this.$=r[l].trim(),n.setAccDescription(this.$);break;case 28:r[l].splice(2,0,"ENTERPRISE"),n.addPersonOrSystemBoundary(...r[l]),this.$=r[l];break;case 29:r[l].splice(2,0,"SYSTEM"),n.addPersonOrSystemBoundary(...r[l]),this.$=r[l];break;case 30:n.addPersonOrSystemBoundary(...r[l]),this.$=r[l];break;case 31:r[l].splice(2,0,"CONTAINER"),n.addContainerBoundary(...r[l]),this.$=r[l];break;case 32:n.addDeploymentNode("node",...r[l]),this.$=r[l];break;case 33:n.addDeploymentNode("nodeL",...r[l]),this.$=r[l];break;case 34:n.addDeploymentNode("nodeR",...r[l]),this.$=r[l];break;case 35:n.popBoundaryParseStack();break;case 39:n.addPersonOrSystem("person",...r[l]),this.$=r[l];break;case 40:n.addPersonOrSystem("external_person",...r[l]),this.$=r[l];break;case 41:n.addPersonOrSystem("system",...r[l]),this.$=r[l];break;case 42:n.addPersonOrSystem("system_db",...r[l]),this.$=r[l];break;case 43:n.addPersonOrSystem("system_queue",...r[l]),this.$=r[l];break;case 44:n.addPersonOrSystem("external_system",...r[l]),this.$=r[l];break;case 45:n.addPersonOrSystem("external_system_db",...r[l]),this.$=r[l];break;case 46:n.addPersonOrSystem("external_system_queue",...r[l]),this.$=r[l];break;case 47:n.addContainer("container",...r[l]),this.$=r[l];break;case 48:n.addContainer("container_db",...r[l]),this.$=r[l];break;case 49:n.addContainer("container_queue",...r[l]),this.$=r[l];break;case 50:n.addContainer("external_container",...r[l]),this.$=r[l];break;case 51:n.addContainer("external_container_db",...r[l]),this.$=r[l];break;case 52:n.addContainer("external_container_queue",...r[l]),this.$=r[l];break;case 53:n.addComponent("component",...r[l]),this.$=r[l];break;case 54:n.addComponent("component_db",...r[l]),this.$=r[l];break;case 55:n.addComponent("component_queue",...r[l]),this.$=r[l];break;case 56:n.addComponent("external_component",...r[l]),this.$=r[l];break;case 57:n.addComponent("external_component_db",...r[l]),this.$=r[l];break;case 58:n.addComponent("external_component_queue",...r[l]),this.$=r[l];break;case 60:n.addRel("rel",...r[l]),this.$=r[l];break;case 61:n.addRel("birel",...r[l]),this.$=r[l];break;case 62:n.addRel("rel_u",...r[l]),this.$=r[l];break;case 63:n.addRel("rel_d",...r[l]),this.$=r[l];break;case 64:n.addRel("rel_l",...r[l]),this.$=r[l];break;case 65:n.addRel("rel_r",...r[l]),this.$=r[l];break;case 66:n.addRel("rel_b",...r[l]),this.$=r[l];break;case 67:r[l].splice(0,1),n.addRel("rel",...r[l]),this.$=r[l];break;case 68:n.updateElStyle("update_el_style",...r[l]),this.$=r[l];break;case 69:n.updateRelStyle("update_rel_style",...r[l]),this.$=r[l];break;case 70:n.updateLayoutConfig("update_layout_config",...r[l]),this.$=r[l];break;case 71:this.$=[r[l]];break;case 72:r[l].unshift(r[l-1]),this.$=r[l];break;case 73:case 75:this.$=r[l].trim();break;case 74:let t={};t[r[l-1].trim()]=r[l].trim(),this.$=t;break;case 76:this.$=""}}),"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{13:70,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{13:71,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{13:72,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{13:73,19:20,20:21,21:22,22:e,23:a,24:n,26:i,28:s,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{14:[1,74]},t(Q,[2,13],{43:23,29:49,30:61,32:62,20:75,34:l,36:o,37:h,38:d,39:u,40:p,41:y,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W}),t(Q,[2,14]),t($,[2,16],{12:[1,76]}),t(Q,[2,36],{12:[1,77]}),t(H,[2,19]),t(H,[2,20]),{25:[1,78]},{27:[1,79]},t(H,[2,23]),{35:80,75:81,76:q,77:V,79:G,80:J},{35:86,75:81,76:q,77:V,79:G,80:J},{35:87,75:81,76:q,77:V,79:G,80:J},{35:88,75:81,76:q,77:V,79:G,80:J},{35:89,75:81,76:q,77:V,79:G,80:J},{35:90,75:81,76:q,77:V,79:G,80:J},{35:91,75:81,76:q,77:V,79:G,80:J},{35:92,75:81,76:q,77:V,79:G,80:J},{35:93,75:81,76:q,77:V,79:G,80:J},{35:94,75:81,76:q,77:V,79:G,80:J},{35:95,75:81,76:q,77:V,79:G,80:J},{35:96,75:81,76:q,77:V,79:G,80:J},{35:97,75:81,76:q,77:V,79:G,80:J},{35:98,75:81,76:q,77:V,79:G,80:J},{35:99,75:81,76:q,77:V,79:G,80:J},{35:100,75:81,76:q,77:V,79:G,80:J},{35:101,75:81,76:q,77:V,79:G,80:J},{35:102,75:81,76:q,77:V,79:G,80:J},{35:103,75:81,76:q,77:V,79:G,80:J},{35:104,75:81,76:q,77:V,79:G,80:J},t(Z,[2,59]),{35:105,75:81,76:q,77:V,79:G,80:J},{35:106,75:81,76:q,77:V,79:G,80:J},{35:107,75:81,76:q,77:V,79:G,80:J},{35:108,75:81,76:q,77:V,79:G,80:J},{35:109,75:81,76:q,77:V,79:G,80:J},{35:110,75:81,76:q,77:V,79:G,80:J},{35:111,75:81,76:q,77:V,79:G,80:J},{35:112,75:81,76:q,77:V,79:G,80:J},{35:113,75:81,76:q,77:V,79:G,80:J},{35:114,75:81,76:q,77:V,79:G,80:J},{35:115,75:81,76:q,77:V,79:G,80:J},{20:116,29:49,30:61,32:62,34:l,36:o,37:h,38:d,39:u,40:p,41:y,43:23,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W},{12:[1,118],33:[1,117]},{35:119,75:81,76:q,77:V,79:G,80:J},{35:120,75:81,76:q,77:V,79:G,80:J},{35:121,75:81,76:q,77:V,79:G,80:J},{35:122,75:81,76:q,77:V,79:G,80:J},{35:123,75:81,76:q,77:V,79:G,80:J},{35:124,75:81,76:q,77:V,79:G,80:J},{35:125,75:81,76:q,77:V,79:G,80:J},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},t(Q,[2,15]),t($,[2,17],{21:22,19:130,22:e,23:a,24:n,26:i,28:s}),t(Q,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:e,23:a,24:n,26:i,28:s,34:l,36:o,37:h,38:d,39:u,40:p,41:y,44:g,45:f,46:b,47:x,48:_,49:m,50:E,51:S,52:A,53:C,54:w,55:k,56:O,57:T,58:v,59:R,60:D,61:N,62:P,63:B,64:I,65:M,66:j,67:K,68:L,69:Y,70:U,71:F,72:X,73:z,74:W}),t(H,[2,21]),t(H,[2,22]),t(Z,[2,39]),t(tt,[2,71],{75:81,35:132,76:q,77:V,79:G,80:J}),t(et,[2,73]),{78:[1,133]},t(et,[2,75]),t(et,[2,76]),t(Z,[2,40]),t(Z,[2,41]),t(Z,[2,42]),t(Z,[2,43]),t(Z,[2,44]),t(Z,[2,45]),t(Z,[2,46]),t(Z,[2,47]),t(Z,[2,48]),t(Z,[2,49]),t(Z,[2,50]),t(Z,[2,51]),t(Z,[2,52]),t(Z,[2,53]),t(Z,[2,54]),t(Z,[2,55]),t(Z,[2,56]),t(Z,[2,57]),t(Z,[2,58]),t(Z,[2,60]),t(Z,[2,61]),t(Z,[2,62]),t(Z,[2,63]),t(Z,[2,64]),t(Z,[2,65]),t(Z,[2,66]),t(Z,[2,67]),t(Z,[2,68]),t(Z,[2,69]),t(Z,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},t(at,[2,28]),t(at,[2,29]),t(at,[2,30]),t(at,[2,31]),t(at,[2,32]),t(at,[2,33]),t(at,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},t($,[2,18]),t(Q,[2,38]),t(tt,[2,72]),t(et,[2,74]),t(Z,[2,24]),t(Z,[2,35]),t(nt,[2,25]),t(nt,[2,26],{12:[1,138]}),t(nt,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:(0,r.K2)((function(t,e){if(!e.recoverable){var a=new Error(t);throw a.hash=e,a}this.trace(t)}),"parseError"),parse:(0,r.K2)((function(t){var e=this,a=[0],n=[],i=[null],s=[],l=this.table,o="",c=0,h=0,d=0,u=s.slice.call(arguments,1),p=Object.create(this.lexer),y={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(y.yy[g]=this.yy[g]);p.setInput(t,y.yy),y.yy.lexer=p,y.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;s.push(f);var b=p.options&&p.options.ranges;function x(){var t;return"number"!=typeof(t=n.pop()||p.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,r.K2)((function(t){a.length=a.length-2*t,i.length=i.length-t,s.length=s.length-t}),"popStack"),(0,r.K2)(x,"lex");for(var _,m,E,S,A,C,w,k,O,T={};;){if(E=a[a.length-1],this.defaultActions[E]?S=this.defaultActions[E]:(null==_&&(_=x()),S=l[E]&&l[E][_]),void 0===S||!S.length||!S[0]){var v;for(C in O=[],l[E])this.terminals_[C]&&C>2&&O.push("'"+this.terminals_[C]+"'");v=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+O.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==_?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(v,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:f,expected:O})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+_);switch(S[0]){case 1:a.push(_),i.push(p.yytext),s.push(p.yylloc),a.push(S[1]),_=null,m?(_=m,m=null):(h=p.yyleng,o=p.yytext,c=p.yylineno,f=p.yylloc,d>0&&d--);break;case 2:if(w=this.productions_[S[1]][1],T.$=i[i.length-w],T._$={first_line:s[s.length-(w||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(w||1)].first_column,last_column:s[s.length-1].last_column},b&&(T._$.range=[s[s.length-(w||1)].range[0],s[s.length-1].range[1]]),void 0!==(A=this.performAction.apply(T,[o,h,c,y.yy,S[1],i,s].concat(u))))return A;w&&(a=a.slice(0,-1*w*2),i=i.slice(0,-1*w),s=s.slice(0,-1*w)),a.push(this.productions_[S[1]][0]),i.push(T.$),s.push(T._$),k=l[a[a.length-2]][a[a.length-1]],a.push(k);break;case 3:return!0}}return!0}),"parse")},rt=function(){return{EOF:1,parseError:(0,r.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,r.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,r.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,r.K2)((function(t){var e=t.length,a=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===n.length?this.yylloc.first_column:0)+n[n.length-a.length].length-a[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,r.K2)((function(){return this._more=!0,this}),"more"),reject:(0,r.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,r.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,r.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,r.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,r.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,r.K2)((function(t,e){var a,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],a=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),a)return a;if(this._backtrack){for(var r in i)this[r]=i[r];return!1}return!1}),"test_match"),next:(0,r.K2)((function(){if(this.done)return this.EOF;var t,e,a,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),r=0;re[0].length)){if(e=a,n=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(a,i[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,r.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,r.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,r.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,r.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,r.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,r.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,r.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,r.K2)((function(t,e,a,n){switch(a){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),26;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 73:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:case 16:case 70:break;case 14:c;break;case 15:return 12;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;case 23:return this.begin("person"),44;case 24:return this.begin("system_ext_queue"),51;case 25:return this.begin("system_ext_db"),50;case 26:return this.begin("system_ext"),49;case 27:return this.begin("system_queue"),48;case 28:return this.begin("system_db"),47;case 29:return this.begin("system"),46;case 30:return this.begin("boundary"),37;case 31:return this.begin("enterprise_boundary"),34;case 32:return this.begin("system_boundary"),36;case 33:return this.begin("container_ext_queue"),57;case 34:return this.begin("container_ext_db"),56;case 35:return this.begin("container_ext"),55;case 36:return this.begin("container_queue"),54;case 37:return this.begin("container_db"),53;case 38:return this.begin("container"),52;case 39:return this.begin("container_boundary"),38;case 40:return this.begin("component_ext_queue"),63;case 41:return this.begin("component_ext_db"),62;case 42:return this.begin("component_ext"),61;case 43:return this.begin("component_queue"),60;case 44:return this.begin("component_db"),59;case 45:return this.begin("component"),58;case 46:case 47:return this.begin("node"),39;case 48:return this.begin("node_l"),40;case 49:return this.begin("node_r"),41;case 50:return this.begin("rel"),64;case 51:return this.begin("birel"),65;case 52:case 53:return this.begin("rel_u"),66;case 54:case 55:return this.begin("rel_d"),67;case 56:case 57:return this.begin("rel_l"),68;case 58:case 59:return this.begin("rel_r"),69;case 60:return this.begin("rel_b"),70;case 61:return this.begin("rel_index"),71;case 62:return this.begin("update_el_style"),72;case 63:return this.begin("update_rel_style"),73;case 64:return this.begin("update_layout_config"),74;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 67:this.begin("attribute");break;case 68:case 79:this.popState(),this.popState();break;case 69:case 71:return 80;case 72:this.begin("string");break;case 74:case 80:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}}),"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}}}();function st(){this.yy={}}return it.lexer=rt,(0,r.K2)(st,"Parser"),st.prototype=it,it.Parser=st,new st}();o.parser=o;var h,d=o,u=[],p=[""],y="global",g="",f=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],b=[],x="",_=!1,m=4,E=2,S=(0,r.K2)((function(){return h}),"getC4Type"),A=(0,r.K2)((function(t){let e=(0,r.jZ)(t,(0,r.D7)());h=e}),"setC4Type"),C=(0,r.K2)((function(t,e,a,n,i,r,s,l,o){if(null==t||null==e||null==a||null==n)return;let c={};const h=b.find((t=>t.from===e&&t.to===a));if(h?c=h:b.push(c),c.type=t,c.from=e,c.to=a,c.label={text:n},null==i)c.techn={text:""};else if("object"==typeof i){let[t,e]=Object.entries(i)[0];c[t]={text:e}}else c.techn={text:i};if(null==r)c.descr={text:""};else if("object"==typeof r){let[t,e]=Object.entries(r)[0];c[t]={text:e}}else c.descr={text:r};if("object"==typeof s){let[t,e]=Object.entries(s)[0];c[t]=e}else c.sprite=s;if("object"==typeof l){let[t,e]=Object.entries(l)[0];c[t]=e}else c.tags=l;if("object"==typeof o){let[t,e]=Object.entries(o)[0];c[t]=e}else c.link=o;c.wrap=$()}),"addRel"),w=(0,r.K2)((function(t,e,a,n,i,r,s){if(null===e||null===a)return;let l={};const o=u.find((t=>t.alias===e));if(o&&e===o.alias?l=o:(l.alias=e,u.push(l)),l.label=null==a?{text:""}:{text:a},null==n)l.descr={text:""};else if("object"==typeof n){let[t,e]=Object.entries(n)[0];l[t]={text:e}}else l.descr={text:n};if("object"==typeof i){let[t,e]=Object.entries(i)[0];l[t]=e}else l.sprite=i;if("object"==typeof r){let[t,e]=Object.entries(r)[0];l[t]=e}else l.tags=r;if("object"==typeof s){let[t,e]=Object.entries(s)[0];l[t]=e}else l.link=s;l.typeC4Shape={text:t},l.parentBoundary=y,l.wrap=$()}),"addPersonOrSystem"),k=(0,r.K2)((function(t,e,a,n,i,r,s,l){if(null===e||null===a)return;let o={};const c=u.find((t=>t.alias===e));if(c&&e===c.alias?o=c:(o.alias=e,u.push(o)),o.label=null==a?{text:""}:{text:a},null==n)o.techn={text:""};else if("object"==typeof n){let[t,e]=Object.entries(n)[0];o[t]={text:e}}else o.techn={text:n};if(null==i)o.descr={text:""};else if("object"==typeof i){let[t,e]=Object.entries(i)[0];o[t]={text:e}}else o.descr={text:i};if("object"==typeof r){let[t,e]=Object.entries(r)[0];o[t]=e}else o.sprite=r;if("object"==typeof s){let[t,e]=Object.entries(s)[0];o[t]=e}else o.tags=s;if("object"==typeof l){let[t,e]=Object.entries(l)[0];o[t]=e}else o.link=l;o.wrap=$(),o.typeC4Shape={text:t},o.parentBoundary=y}),"addContainer"),O=(0,r.K2)((function(t,e,a,n,i,r,s,l){if(null===e||null===a)return;let o={};const c=u.find((t=>t.alias===e));if(c&&e===c.alias?o=c:(o.alias=e,u.push(o)),o.label=null==a?{text:""}:{text:a},null==n)o.techn={text:""};else if("object"==typeof n){let[t,e]=Object.entries(n)[0];o[t]={text:e}}else o.techn={text:n};if(null==i)o.descr={text:""};else if("object"==typeof i){let[t,e]=Object.entries(i)[0];o[t]={text:e}}else o.descr={text:i};if("object"==typeof r){let[t,e]=Object.entries(r)[0];o[t]=e}else o.sprite=r;if("object"==typeof s){let[t,e]=Object.entries(s)[0];o[t]=e}else o.tags=s;if("object"==typeof l){let[t,e]=Object.entries(l)[0];o[t]=e}else o.link=l;o.wrap=$(),o.typeC4Shape={text:t},o.parentBoundary=y}),"addComponent"),T=(0,r.K2)((function(t,e,a,n,i){if(null===t||null===e)return;let r={};const s=f.find((e=>e.alias===t));if(s&&t===s.alias?r=s:(r.alias=t,f.push(r)),r.label=null==e?{text:""}:{text:e},null==a)r.type={text:"system"};else if("object"==typeof a){let[t,e]=Object.entries(a)[0];r[t]={text:e}}else r.type={text:a};if("object"==typeof n){let[t,e]=Object.entries(n)[0];r[t]=e}else r.tags=n;if("object"==typeof i){let[t,e]=Object.entries(i)[0];r[t]=e}else r.link=i;r.parentBoundary=y,r.wrap=$(),g=y,y=t,p.push(g)}),"addPersonOrSystemBoundary"),v=(0,r.K2)((function(t,e,a,n,i){if(null===t||null===e)return;let r={};const s=f.find((e=>e.alias===t));if(s&&t===s.alias?r=s:(r.alias=t,f.push(r)),r.label=null==e?{text:""}:{text:e},null==a)r.type={text:"container"};else if("object"==typeof a){let[t,e]=Object.entries(a)[0];r[t]={text:e}}else r.type={text:a};if("object"==typeof n){let[t,e]=Object.entries(n)[0];r[t]=e}else r.tags=n;if("object"==typeof i){let[t,e]=Object.entries(i)[0];r[t]=e}else r.link=i;r.parentBoundary=y,r.wrap=$(),g=y,y=t,p.push(g)}),"addContainerBoundary"),R=(0,r.K2)((function(t,e,a,n,i,r,s,l){if(null===e||null===a)return;let o={};const c=f.find((t=>t.alias===e));if(c&&e===c.alias?o=c:(o.alias=e,f.push(o)),o.label=null==a?{text:""}:{text:a},null==n)o.type={text:"node"};else if("object"==typeof n){let[t,e]=Object.entries(n)[0];o[t]={text:e}}else o.type={text:n};if(null==i)o.descr={text:""};else if("object"==typeof i){let[t,e]=Object.entries(i)[0];o[t]={text:e}}else o.descr={text:i};if("object"==typeof s){let[t,e]=Object.entries(s)[0];o[t]=e}else o.tags=s;if("object"==typeof l){let[t,e]=Object.entries(l)[0];o[t]=e}else o.link=l;o.nodeType=t,o.parentBoundary=y,o.wrap=$(),g=y,y=e,p.push(g)}),"addDeploymentNode"),D=(0,r.K2)((function(){y=g,p.pop(),g=p.pop(),p.push(g)}),"popBoundaryParseStack"),N=(0,r.K2)((function(t,e,a,n,i,r,s,l,o,c,h){let d=u.find((t=>t.alias===e));if(void 0!==d||(d=f.find((t=>t.alias===e)),void 0!==d)){if(null!=a)if("object"==typeof a){let[t,e]=Object.entries(a)[0];d[t]=e}else d.bgColor=a;if(null!=n)if("object"==typeof n){let[t,e]=Object.entries(n)[0];d[t]=e}else d.fontColor=n;if(null!=i)if("object"==typeof i){let[t,e]=Object.entries(i)[0];d[t]=e}else d.borderColor=i;if(null!=r)if("object"==typeof r){let[t,e]=Object.entries(r)[0];d[t]=e}else d.shadowing=r;if(null!=s)if("object"==typeof s){let[t,e]=Object.entries(s)[0];d[t]=e}else d.shape=s;if(null!=l)if("object"==typeof l){let[t,e]=Object.entries(l)[0];d[t]=e}else d.sprite=l;if(null!=o)if("object"==typeof o){let[t,e]=Object.entries(o)[0];d[t]=e}else d.techn=o;if(null!=c)if("object"==typeof c){let[t,e]=Object.entries(c)[0];d[t]=e}else d.legendText=c;if(null!=h)if("object"==typeof h){let[t,e]=Object.entries(h)[0];d[t]=e}else d.legendSprite=h}}),"updateElStyle"),P=(0,r.K2)((function(t,e,a,n,i,r,s){const l=b.find((t=>t.from===e&&t.to===a));if(void 0!==l){if(null!=n)if("object"==typeof n){let[t,e]=Object.entries(n)[0];l[t]=e}else l.textColor=n;if(null!=i)if("object"==typeof i){let[t,e]=Object.entries(i)[0];l[t]=e}else l.lineColor=i;if(null!=r)if("object"==typeof r){let[t,e]=Object.entries(r)[0];l[t]=parseInt(e)}else l.offsetX=parseInt(r);if(null!=s)if("object"==typeof s){let[t,e]=Object.entries(s)[0];l[t]=parseInt(e)}else l.offsetY=parseInt(s)}}),"updateRelStyle"),B=(0,r.K2)((function(t,e,a){let n=m,i=E;if("object"==typeof e){const t=Object.values(e)[0];n=parseInt(t)}else n=parseInt(e);if("object"==typeof a){const t=Object.values(a)[0];i=parseInt(t)}else i=parseInt(a);n>=1&&(m=n),i>=1&&(E=i)}),"updateLayoutConfig"),I=(0,r.K2)((function(){return m}),"getC4ShapeInRow"),M=(0,r.K2)((function(){return E}),"getC4BoundaryInRow"),j=(0,r.K2)((function(){return y}),"getCurrentBoundaryParse"),K=(0,r.K2)((function(){return g}),"getParentBoundaryParse"),L=(0,r.K2)((function(t){return null==t?u:u.filter((e=>e.parentBoundary===t))}),"getC4ShapeArray"),Y=(0,r.K2)((function(t){return u.find((e=>e.alias===t))}),"getC4Shape"),U=(0,r.K2)((function(t){return Object.keys(L(t))}),"getC4ShapeKeys"),F=(0,r.K2)((function(t){return null==t?f:f.filter((e=>e.parentBoundary===t))}),"getBoundaries"),X=F,z=(0,r.K2)((function(){return b}),"getRels"),W=(0,r.K2)((function(){return x}),"getTitle"),Q=(0,r.K2)((function(t){_=t}),"setWrap"),$=(0,r.K2)((function(){return _}),"autoWrap"),H=(0,r.K2)((function(){u=[],f=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],g="",y="global",p=[""],b=[],p=[""],x="",_=!1,m=4,E=2}),"clear"),q=(0,r.K2)((function(t){let e=(0,r.jZ)(t,(0,r.D7)());x=e}),"setTitle"),V={addPersonOrSystem:w,addPersonOrSystemBoundary:T,addContainer:k,addContainerBoundary:v,addComponent:O,addDeploymentNode:R,popBoundaryParseStack:D,addRel:C,updateElStyle:N,updateRelStyle:P,updateLayoutConfig:B,autoWrap:$,setWrap:Q,getC4ShapeArray:L,getC4Shape:Y,getC4ShapeKeys:U,getBoundaries:F,getBoundarys:X,getCurrentBoundaryParse:j,getParentBoundaryParse:K,getRels:z,getTitle:W,getC4Type:S,getC4ShapeInRow:I,getC4BoundaryInRow:M,setAccTitle:r.SV,getAccTitle:r.iN,getAccDescription:r.m7,setAccDescription:r.EI,getConfig:(0,r.K2)((()=>(0,r.D7)().c4),"getConfig"),clear:H,LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:q,setC4Type:A},G=(0,r.K2)((function(t,e){return(0,n.tk)(t,e)}),"drawRect"),J=(0,r.K2)((function(t,e,a,n,i,r){const s=t.append("image");s.attr("width",e),s.attr("height",a),s.attr("x",n),s.attr("y",i);let o=r.startsWith("data:image/png;base64")?r:(0,l.J)(r);s.attr("xlink:href",o)}),"drawImage"),Z=(0,r.K2)(((t,e,a)=>{const n=t.append("g");let i=0;for(let t of e){let e=t.textColor?t.textColor:"#444444",r=t.lineColor?t.lineColor:"#444444",s=t.offsetX?parseInt(t.offsetX):0,l=t.offsetY?parseInt(t.offsetY):0,o="";if(0===i){let e=n.append("line");e.attr("x1",t.startPoint.x),e.attr("y1",t.startPoint.y),e.attr("x2",t.endPoint.x),e.attr("y2",t.endPoint.y),e.attr("stroke-width","1"),e.attr("stroke",r),e.style("fill","none"),"rel_b"!==t.type&&e.attr("marker-end","url("+o+"#arrowhead)"),"birel"!==t.type&&"rel_b"!==t.type||e.attr("marker-start","url("+o+"#arrowend)"),i=-1}else{let e=n.append("path");e.attr("fill","none").attr("stroke-width","1").attr("stroke",r).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",t.startPoint.x).replaceAll("starty",t.startPoint.y).replaceAll("controlx",t.startPoint.x+(t.endPoint.x-t.startPoint.x)/2-(t.endPoint.x-t.startPoint.x)/4).replaceAll("controly",t.startPoint.y+(t.endPoint.y-t.startPoint.y)/2).replaceAll("stopx",t.endPoint.x).replaceAll("stopy",t.endPoint.y)),"rel_b"!==t.type&&e.attr("marker-end","url("+o+"#arrowhead)"),"birel"!==t.type&&"rel_b"!==t.type||e.attr("marker-start","url("+o+"#arrowend)")}let c=a.messageFont();dt(a)(t.label.text,n,Math.min(t.startPoint.x,t.endPoint.x)+Math.abs(t.endPoint.x-t.startPoint.x)/2+s,Math.min(t.startPoint.y,t.endPoint.y)+Math.abs(t.endPoint.y-t.startPoint.y)/2+l,t.label.width,t.label.height,{fill:e},c),t.techn&&""!==t.techn.text&&(c=a.messageFont(),dt(a)("["+t.techn.text+"]",n,Math.min(t.startPoint.x,t.endPoint.x)+Math.abs(t.endPoint.x-t.startPoint.x)/2+s,Math.min(t.startPoint.y,t.endPoint.y)+Math.abs(t.endPoint.y-t.startPoint.y)/2+a.messageFontSize+5+l,Math.max(t.label.width,t.techn.width),t.techn.height,{fill:e,"font-style":"italic"},c))}}),"drawRels"),tt=(0,r.K2)((function(t,e,a){const n=t.append("g");let i=e.bgColor?e.bgColor:"none",r=e.borderColor?e.borderColor:"#444444",s=e.fontColor?e.fontColor:"black",l={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};e.nodeType&&(l={"stroke-width":1});let o={x:e.x,y:e.y,fill:i,stroke:r,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:l};G(n,o);let c=a.boundaryFont();c.fontWeight="bold",c.fontSize=c.fontSize+2,c.fontColor=s,dt(a)(e.label.text,n,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},c),e.type&&""!==e.type.text&&(c=a.boundaryFont(),c.fontColor=s,dt(a)(e.type.text,n,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},c)),e.descr&&""!==e.descr.text&&(c=a.boundaryFont(),c.fontSize=c.fontSize-2,c.fontColor=s,dt(a)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},c))}),"drawBoundary"),et=(0,r.K2)((function(t,e,a){let i=e.bgColor?e.bgColor:a[e.typeC4Shape.text+"_bg_color"],r=e.borderColor?e.borderColor:a[e.typeC4Shape.text+"_border_color"],s=e.fontColor?e.fontColor:"#FFFFFF",l="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(e.typeC4Shape.text){case"person":l="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":l="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII="}const o=t.append("g");o.attr("class","person-man");const c=(0,n.PB)();switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":c.x=e.x,c.y=e.y,c.fill=i,c.width=e.width,c.height=e.height,c.stroke=r,c.rx=2.5,c.ry=2.5,c.attrs={"stroke-width":.5},G(o,c);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":o.append("path").attr("fill",i).attr("stroke-width","0.5").attr("stroke",r).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2).replaceAll("height",e.height)),o.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",r).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":o.append("path").attr("fill",i).attr("stroke-width","0.5").attr("stroke",r).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("width",e.width).replaceAll("half",e.height/2)),o.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",r).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",e.x+e.width).replaceAll("starty",e.y).replaceAll("half",e.height/2))}let h=ht(a,e.typeC4Shape.text);switch(o.append("text").attr("fill",s).attr("font-family",h.fontFamily).attr("font-size",h.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",e.typeC4Shape.width).attr("x",e.x+e.width/2-e.typeC4Shape.width/2).attr("y",e.y+e.typeC4Shape.Y).text("<<"+e.typeC4Shape.text+">>"),e.typeC4Shape.text){case"person":case"external_person":J(o,48,48,e.x+e.width/2-24,e.y+e.image.Y,l)}let d=a[e.typeC4Shape.text+"Font"]();return d.fontWeight="bold",d.fontSize=d.fontSize+2,d.fontColor=s,dt(a)(e.label.text,o,e.x,e.y+e.label.Y,e.width,e.height,{fill:s},d),d=a[e.typeC4Shape.text+"Font"](),d.fontColor=s,e.techn&&""!==e.techn?.text?dt(a)(e.techn.text,o,e.x,e.y+e.techn.Y,e.width,e.height,{fill:s,"font-style":"italic"},d):e.type&&""!==e.type.text&&dt(a)(e.type.text,o,e.x,e.y+e.type.Y,e.width,e.height,{fill:s,"font-style":"italic"},d),e.descr&&""!==e.descr.text&&(d=a.personFont(),d.fontColor=s,dt(a)(e.descr.text,o,e.x,e.y+e.descr.Y,e.width,e.height,{fill:s},d)),e.height}),"drawC4Shape"),at=(0,r.K2)((function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")}),"insertDatabaseIcon"),nt=(0,r.K2)((function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")}),"insertComputerIcon"),it=(0,r.K2)((function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")}),"insertClockIcon"),rt=(0,r.K2)((function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")}),"insertArrowHead"),st=(0,r.K2)((function(t){t.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")}),"insertArrowEnd"),lt=(0,r.K2)((function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"insertArrowFilledHead"),ot=(0,r.K2)((function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)}),"insertDynamicNumber"),ct=(0,r.K2)((function(t){const e=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);e.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),e.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")}),"insertArrowCrossHead"),ht=(0,r.K2)(((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]})),"getC4ShapeFont"),dt=function(){function t(t,e,a,i,r,s,l){n(e.append("text").attr("x",a+r/2).attr("y",i+s/2+5).style("text-anchor","middle").text(t),l)}function e(t,e,a,i,s,l,o,c){const{fontSize:h,fontFamily:d,fontWeight:u}=c,p=t.split(r.Y2.lineBreakRegex);for(let t=0;t=this.data.widthLimit||a>=this.data.widthLimit||this.nextData.cnt>gt)&&(e=this.nextData.startx+t.margin+bt.nextLinePaddingX,n=this.nextData.stopy+2*t.margin,this.nextData.stopx=a=e+t.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=i=n+t.height,this.nextData.cnt=1),t.x=e,t.y=n,this.updateVal(this.data,"startx",e,Math.min),this.updateVal(this.data,"starty",n,Math.min),this.updateVal(this.data,"stopx",a,Math.max),this.updateVal(this.data,"stopy",i,Math.max),this.updateVal(this.nextData,"startx",e,Math.min),this.updateVal(this.nextData,"starty",n,Math.min),this.updateVal(this.nextData,"stopx",a,Math.max),this.updateVal(this.nextData,"stopy",i,Math.max)}init(t){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},_t(t.db.getConfig())}bumpLastMargin(t){this.data.stopx+=t,this.data.stopy+=t}},_t=(0,r.K2)((function(t){(0,r.hH)(bt,t),t.fontFamily&&(bt.personFontFamily=bt.systemFontFamily=bt.messageFontFamily=t.fontFamily),t.fontSize&&(bt.personFontSize=bt.systemFontSize=bt.messageFontSize=t.fontSize),t.fontWeight&&(bt.personFontWeight=bt.systemFontWeight=bt.messageFontWeight=t.fontWeight)}),"setConf"),mt=(0,r.K2)(((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]})),"c4ShapeFont"),Et=(0,r.K2)((t=>({fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight})),"boundaryFont"),St=(0,r.K2)((t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight})),"messageFont");function At(t,e,a,n,s){if(!e[t].width)if(a)e[t].text=(0,i.bH)(e[t].text,s,n),e[t].textLines=e[t].text.split(r.Y2.lineBreakRegex).length,e[t].width=s,e[t].height=(0,i.ru)(e[t].text,n);else{let a=e[t].text.split(r.Y2.lineBreakRegex);e[t].textLines=a.length;let s=0;e[t].height=0,e[t].width=0;for(const r of a)e[t].width=Math.max((0,i.Un)(r,n),e[t].width),s=(0,i.ru)(r,n),e[t].height=e[t].height+s}}(0,r.K2)(At,"calcC4ShapeTextWH");var Ct=(0,r.K2)((function(t,e,a){e.x=a.data.startx,e.y=a.data.starty,e.width=a.data.stopx-a.data.startx,e.height=a.data.stopy-a.data.starty,e.label.y=bt.c4ShapeMargin-35;let n=e.wrap&&bt.wrap,r=Et(bt);r.fontSize=r.fontSize+2,r.fontWeight="bold",At("label",e,n,r,(0,i.Un)(e.label.text,r)),ut.drawBoundary(t,e,bt)}),"drawBoundary"),wt=(0,r.K2)((function(t,e,a,n){let r=0;for(const s of n){r=0;const n=a[s];let l=mt(bt,n.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,n.typeC4Shape.width=(0,i.Un)("«"+n.typeC4Shape.text+"»",l),n.typeC4Shape.height=l.fontSize+2,n.typeC4Shape.Y=bt.c4ShapePadding,r=n.typeC4Shape.Y+n.typeC4Shape.height-4,n.image={width:0,height:0,Y:0},n.typeC4Shape.text){case"person":case"external_person":n.image.width=48,n.image.height=48,n.image.Y=r,r=n.image.Y+n.image.height}n.sprite&&(n.image.width=48,n.image.height=48,n.image.Y=r,r=n.image.Y+n.image.height);let o=n.wrap&&bt.wrap,c=bt.width-2*bt.c4ShapePadding,h=mt(bt,n.typeC4Shape.text);h.fontSize=h.fontSize+2,h.fontWeight="bold",At("label",n,o,h,c),n.label.Y=r+8,r=n.label.Y+n.label.height,n.type&&""!==n.type.text?(n.type.text="["+n.type.text+"]",At("type",n,o,mt(bt,n.typeC4Shape.text),c),n.type.Y=r+5,r=n.type.Y+n.type.height):n.techn&&""!==n.techn.text&&(n.techn.text="["+n.techn.text+"]",At("techn",n,o,mt(bt,n.techn.text),c),n.techn.Y=r+5,r=n.techn.Y+n.techn.height);let d=r,u=n.label.width;n.descr&&""!==n.descr.text&&(At("descr",n,o,mt(bt,n.typeC4Shape.text),c),n.descr.Y=r+20,r=n.descr.Y+n.descr.height,u=Math.max(n.label.width,n.descr.width),d=r-5*n.descr.textLines),u+=bt.c4ShapePadding,n.width=Math.max(n.width||bt.width,u,bt.width),n.height=Math.max(n.height||bt.height,d,bt.height),n.margin=n.margin||bt.c4ShapeMargin,t.insert(n),ut.drawC4Shape(e,n,bt)}t.bumpLastMargin(bt.c4ShapeMargin)}),"drawC4ShapeArray"),kt=class{static{(0,r.K2)(this,"Point")}constructor(t,e){this.x=t,this.y=e}},Ot=(0,r.K2)((function(t,e){let a=t.x,n=t.y,i=e.x,r=e.y,s=a+t.width/2,l=n+t.height/2,o=Math.abs(a-i),c=Math.abs(n-r),h=c/o,d=t.height/t.width,u=null;return n==r&&ai?u=new kt(a,l):a==i&&nr&&(u=new kt(s,n)),a>i&&n=h?new kt(a,l+h*t.width/2):new kt(s-o/c*t.height/2,n+t.height):a=h?new kt(a+t.width,l+h*t.width/2):new kt(s+o/c*t.height/2,n+t.height):ar?u=d>=h?new kt(a+t.width,l-h*t.width/2):new kt(s+t.height/2*o/c,n):a>i&&n>r&&(u=d>=h?new kt(a,l-t.width/2*h):new kt(s-t.height/2*o/c,n)),u}),"getIntersectPoint"),Tt=(0,r.K2)((function(t,e){let a={x:0,y:0};a.x=e.x+e.width/2,a.y=e.y+e.height/2;let n=Ot(t,a);return a.x=t.x+t.width/2,a.y=t.y+t.height/2,{startPoint:n,endPoint:Ot(e,a)}}),"getIntersectPoints"),vt=(0,r.K2)((function(t,e,a,n){let r=0;for(let t of e){r+=1;let e=t.wrap&&bt.wrap,s=St(bt);"C4Dynamic"===n.db.getC4Type()&&(t.label.text=r+": "+t.label.text);let l=(0,i.Un)(t.label.text,s);At("label",t,e,s,l),t.techn&&""!==t.techn.text&&(l=(0,i.Un)(t.techn.text,s),At("techn",t,e,s,l)),t.descr&&""!==t.descr.text&&(l=(0,i.Un)(t.descr.text,s),At("descr",t,e,s,l));let o=a(t.from),c=a(t.to),h=Tt(o,c);t.startPoint=h.startPoint,t.endPoint=h.endPoint}ut.drawRels(t,e,bt)}),"drawRels");function Rt(t,e,a,n,i){let r=new xt(i);r.data.widthLimit=a.data.widthLimit/Math.min(ft,n.length);for(let[s,l]of n.entries()){let n=0;l.image={width:0,height:0,Y:0},l.sprite&&(l.image.width=48,l.image.height=48,l.image.Y=n,n=l.image.Y+l.image.height);let o=l.wrap&&bt.wrap,c=Et(bt);if(c.fontSize=c.fontSize+2,c.fontWeight="bold",At("label",l,o,c,r.data.widthLimit),l.label.Y=n+8,n=l.label.Y+l.label.height,l.type&&""!==l.type.text&&(l.type.text="["+l.type.text+"]",At("type",l,o,Et(bt),r.data.widthLimit),l.type.Y=n+5,n=l.type.Y+l.type.height),l.descr&&""!==l.descr.text){let t=Et(bt);t.fontSize=t.fontSize-2,At("descr",l,o,t,r.data.widthLimit),l.descr.Y=n+20,n=l.descr.Y+l.descr.height}if(0==s||s%ft==0){let t=a.data.startx+bt.diagramMarginX,e=a.data.stopy+bt.diagramMarginY+n;r.setData(t,t,e,e)}else{let t=r.data.stopx!==r.data.startx?r.data.stopx+bt.diagramMarginX:r.data.startx,e=r.data.starty;r.setData(t,t,e,e)}r.name=l.alias;let h=i.db.getC4ShapeArray(l.alias),d=i.db.getC4ShapeKeys(l.alias);d.length>0&&wt(r,t,h,d),e=l.alias;let u=i.db.getBoundarys(e);u.length>0&&Rt(t,e,r,u,i),"global"!==l.alias&&Ct(t,l,r),a.data.stopy=Math.max(r.data.stopy+bt.c4ShapeMargin,a.data.stopy),a.data.stopx=Math.max(r.data.stopx+bt.c4ShapeMargin,a.data.stopx),pt=Math.max(pt,a.data.stopx),yt=Math.max(yt,a.data.stopy)}}(0,r.K2)(Rt,"drawInsideBoundary");var Dt={drawPersonOrSystemArray:wt,drawBoundary:Ct,setConf:_t,draw:(0,r.K2)((function(t,e,a,n){bt=(0,r.D7)().c4;const i=(0,r.D7)().securityLevel;let l;"sandbox"===i&&(l=(0,s.Ltv)("#i"+e));const o="sandbox"===i?(0,s.Ltv)(l.nodes()[0].contentDocument.body):(0,s.Ltv)("body");let c=n.db;n.db.setWrap(bt.wrap),gt=c.getC4ShapeInRow(),ft=c.getC4BoundaryInRow(),r.Rm.debug(`C:${JSON.stringify(bt,null,2)}`);const h="sandbox"===i?o.select(`[id="${e}"]`):(0,s.Ltv)(`[id="${e}"]`);ut.insertComputerIcon(h),ut.insertDatabaseIcon(h),ut.insertClockIcon(h);let d=new xt(n);d.setData(bt.diagramMarginX,bt.diagramMarginX,bt.diagramMarginY,bt.diagramMarginY),d.data.widthLimit=screen.availWidth,pt=bt.diagramMarginX,yt=bt.diagramMarginY;const u=n.db.getTitle();Rt(h,"",d,n.db.getBoundarys(""),n),ut.insertArrowHead(h),ut.insertArrowEnd(h),ut.insertArrowCrossHead(h),ut.insertArrowFilledHead(h),vt(h,n.db.getRels(),n.db.getC4Shape,n),d.data.stopx=pt,d.data.stopy=yt;const p=d.data;let y=p.stopy-p.starty+2*bt.diagramMarginY;const g=p.stopx-p.startx+2*bt.diagramMarginX;u&&h.append("text").text(u).attr("x",(p.stopx-p.startx)/2-4*bt.diagramMarginX).attr("y",p.starty+bt.diagramMarginY),(0,r.a$)(h,y,g,bt.useMaxWidth);const f=u?60:0;h.attr("viewBox",p.startx-bt.diagramMarginX+" -"+(bt.diagramMarginY+f)+" "+g+" "+(y+f)),r.Rm.debug("models:",p)}),"draw")},Nt={parser:d,db:V,renderer:Dt,styles:(0,r.K2)((t=>`.person {\n stroke: ${t.personBorder};\n fill: ${t.personBkg};\n }\n`),"getStyles"),init:(0,r.K2)((({c4:t,wrap:e})=>{Dt.setConf(t),V.setWrap(e)}),"init")}},9323:(t,e,a)=>{a.d(e,{CP:()=>c,HT:()=>d,PB:()=>h,aC:()=>o,lC:()=>s,m:()=>l,tk:()=>r});var n=a(798),i=a(6750),r=(0,n.K2)(((t,e)=>{const a=t.append("rect");if(a.attr("x",e.x),a.attr("y",e.y),a.attr("fill",e.fill),a.attr("stroke",e.stroke),a.attr("width",e.width),a.attr("height",e.height),e.name&&a.attr("name",e.name),e.rx&&a.attr("rx",e.rx),e.ry&&a.attr("ry",e.ry),void 0!==e.attrs)for(const t in e.attrs)a.attr(t,e.attrs[t]);return e.class&&a.attr("class",e.class),a}),"drawRect"),s=(0,n.K2)(((t,e)=>{const a={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};r(t,a).lower()}),"drawBackgroundRect"),l=(0,n.K2)(((t,e)=>{const a=e.text.replace(n.H1," "),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.attr("class","legend"),i.style("text-anchor",e.anchor),e.class&&i.attr("class",e.class);const r=i.append("tspan");return r.attr("x",e.x+2*e.textMargin),r.text(a),i}),"drawText"),o=(0,n.K2)(((t,e,a,n)=>{const r=t.append("image");r.attr("x",e),r.attr("y",a);const s=(0,i.J)(n);r.attr("xlink:href",s)}),"drawImage"),c=(0,n.K2)(((t,e,a,n)=>{const r=t.append("use");r.attr("x",e),r.attr("y",a);const s=(0,i.J)(n);r.attr("xlink:href",`#${s}`)}),"drawEmbeddedImage"),h=(0,n.K2)((()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0})),"getNoteRect"),d=(0,n.K2)((()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0})),"getTextObj")}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/932-3e97de09.chunk.min.js b/themes/hugo-geekdoc/static/js/932-3e97de09.chunk.min.js new file mode 100644 index 000000000..e9677a306 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/932-3e97de09.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[932],{1932:(e,r,a)=>{a.d(r,{diagram:()=>k});var t=a(1003),s=(a(4868),a(5388),a(3256),a(8568),a(7750),a(2382),a(5522),a(32)),k={parser:t.Zk,db:t.iP,renderer:t.q7,styles:t.tM,init:(0,s.K2)((e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,t.iP.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/959-64fbcd17.chunk.min.js b/themes/hugo-geekdoc/static/js/959-64fbcd17.chunk.min.js deleted file mode 100644 index 07596d6f2..000000000 --- a/themes/hugo-geekdoc/static/js/959-64fbcd17.chunk.min.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[959],{6959:(e,c,k)=>{k.d(c,{createPacketServices:()=>s.$});var s=k(9222);k(8546)}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/991-6e5a46d1.chunk.min.js b/themes/hugo-geekdoc/static/js/991-6e5a46d1.chunk.min.js deleted file mode 100644 index 81e15db56..000000000 --- a/themes/hugo-geekdoc/static/js/991-6e5a46d1.chunk.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see 991-6e5a46d1.chunk.min.js.LICENSE.txt */ -(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[991],{7799:function(e,t,n){var r;r=function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.i=function(e){return e},n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=7)}([function(t,n){t.exports=e},function(e,t,n){"use strict";var r=n(0).FDLayoutConstants;function i(){}for(var a in r)i[a]=r[a];i.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,i.DEFAULT_RADIAL_SEPARATION=r.DEFAULT_EDGE_LENGTH,i.DEFAULT_COMPONENT_SEPERATION=60,i.TILE=!0,i.TILING_PADDING_VERTICAL=10,i.TILING_PADDING_HORIZONTAL=10,i.TREE_REDUCTION_ON_INCREMENTAL=!1,e.exports=i},function(e,t,n){"use strict";var r=n(0).FDLayoutEdge;function i(e,t,n){r.call(this,e,t,n)}for(var a in i.prototype=Object.create(r.prototype),r)i[a]=r[a];e.exports=i},function(e,t,n){"use strict";var r=n(0).LGraph;function i(e,t,n){r.call(this,e,t,n)}for(var a in i.prototype=Object.create(r.prototype),r)i[a]=r[a];e.exports=i},function(e,t,n){"use strict";var r=n(0).LGraphManager;function i(e){r.call(this,e)}for(var a in i.prototype=Object.create(r.prototype),r)i[a]=r[a];e.exports=i},function(e,t,n){"use strict";var r=n(0).FDLayoutNode,i=n(0).IMath;function a(e,t,n,i){r.call(this,e,t,n,i)}for(var o in a.prototype=Object.create(r.prototype),r)a[o]=r[o];a.prototype.move=function(){var e=this.graphManager.getLayout();this.displacementX=e.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=e.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>e.coolingFactor*e.maxNodeDisplacement&&(this.displacementX=e.coolingFactor*e.maxNodeDisplacement*i.sign(this.displacementX)),Math.abs(this.displacementY)>e.coolingFactor*e.maxNodeDisplacement&&(this.displacementY=e.coolingFactor*e.maxNodeDisplacement*i.sign(this.displacementY)),null==this.child||0==this.child.getNodes().length?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),e.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},a.prototype.propogateDisplacementToChildren=function(e,t){for(var n,r=this.getChild().getNodes(),i=0;i0)this.positionNodesRadially(e);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var t=new Set(this.getAllNodes()),n=this.nodesWithGravity.filter((function(e){return t.has(e)}));this.graphManager.setAllNodesToApplyGravitation(n),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},m.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished){if(!(this.prunedNodesAll.length>0))return!0;this.isTreeGrowing=!0}if(this.totalIterations%u.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged()){if(!(this.prunedNodesAll.length>0))return!0;this.isTreeGrowing=!0}this.coolingCycle++,0==this.layoutQuality?this.coolingAdjuster=this.coolingCycle:1==this.layoutQuality&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var e=new Set(this.getAllNodes()),t=this.nodesWithGravity.filter((function(t){return e.has(t)}));this.graphManager.setAllNodesToApplyGravitation(t),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var n=!this.isTreeGrowing&&!this.isGrowthFinished,r=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(n,r),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},m.prototype.getPositionsData=function(){for(var e=this.graphManager.getAllNodes(),t={},n=0;n1)for(s=0;sr&&(r=Math.floor(o.y)),a=Math.floor(o.x+l.DEFAULT_COMPONENT_SEPERATION)}this.transform(new d(c.WORLD_CENTER_X-o.x/2,c.WORLD_CENTER_Y-o.y/2))},m.radialLayout=function(e,t,n){var r=Math.max(this.maxDiagonalInTree(e),l.DEFAULT_RADIAL_SEPARATION);m.branchRadialLayout(t,null,0,359,0,r);var i=v.calculateBounds(e),a=new y;a.setDeviceOrgX(i.getMinX()),a.setDeviceOrgY(i.getMinY()),a.setWorldOrgX(n.x),a.setWorldOrgY(n.y);for(var o=0;o1;){var y=v[0];v.splice(0,1);var b=c.indexOf(y);b>=0&&c.splice(b,1),g--,h--}d=null!=t?(c.indexOf(v[0])+1)%g:0;for(var x=Math.abs(r-n)/h,w=d;p!=h;w=++w%g){var E=c[w].getOtherEnd(e);if(E!=t){var _=(n+p*x)%360,T=(_+x)%360;m.branchRadialLayout(E,e,_,T,i+a,a),p++}}},m.maxDiagonalInTree=function(e){for(var t=g.MIN_VALUE,n=0;nt&&(t=r)}return t},m.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},m.prototype.groupZeroDegreeMembers=function(){var e=this,t={};this.memberGroups={},this.idToDummyNode={};for(var n=[],r=this.graphManager.getAllNodes(),i=0;i1){var r="DummyCompound_"+n;e.memberGroups[r]=t[n];var i=t[n][0].getParent(),a=new o(e.graphManager);a.id=r,a.paddingLeft=i.paddingLeft||0,a.paddingRight=i.paddingRight||0,a.paddingBottom=i.paddingBottom||0,a.paddingTop=i.paddingTop||0,e.idToDummyNode[r]=a;var s=e.getGraphManager().add(e.newGraph(),a),l=i.getChild();l.add(a);for(var u=0;u=0;e--){var t=this.compoundOrder[e],n=t.id,r=t.paddingLeft,i=t.paddingTop;this.adjustLocations(this.tiledMemberPack[n],t.rect.x,t.rect.y,r,i)}},m.prototype.repopulateZeroDegreeMembers=function(){var e=this,t=this.tiledZeroDegreePack;Object.keys(t).forEach((function(n){var r=e.idToDummyNode[n],i=r.paddingLeft,a=r.paddingTop;e.adjustLocations(t[n],r.rect.x,r.rect.y,i,a)}))},m.prototype.getToBeTiled=function(e){var t=e.id;if(null!=this.toBeTiled[t])return this.toBeTiled[t];var n=e.getChild();if(null==n)return this.toBeTiled[t]=!1,!1;for(var r=n.getNodes(),i=0;i0)return this.toBeTiled[t]=!1,!1;if(null!=a.getChild()){if(!this.getToBeTiled(a))return this.toBeTiled[t]=!1,!1}else this.toBeTiled[a.id]=!1}return this.toBeTiled[t]=!0,!0},m.prototype.getNodeDegree=function(e){e.id;for(var t=e.getEdges(),n=0,r=0;rl&&(l=c.rect.height)}n+=l+e.verticalPadding}},m.prototype.tileCompoundMembers=function(e,t){var n=this;this.tiledMemberPack=[],Object.keys(e).forEach((function(r){var i=t[r];n.tiledMemberPack[r]=n.tileNodes(e[r],i.paddingLeft+i.paddingRight),i.rect.width=n.tiledMemberPack[r].width,i.rect.height=n.tiledMemberPack[r].height}))},m.prototype.tileNodes=function(e,t){var n={rows:[],rowWidth:[],rowHeight:[],width:0,height:t,verticalPadding:l.TILING_PADDING_VERTICAL,horizontalPadding:l.TILING_PADDING_HORIZONTAL};e.sort((function(e,t){return e.rect.width*e.rect.height>t.rect.width*t.rect.height?-1:e.rect.width*e.rect.height0&&(a+=e.horizontalPadding),e.rowWidth[n]=a,e.width0&&(o+=e.verticalPadding);var s=0;o>e.rowHeight[n]&&(s=e.rowHeight[n],e.rowHeight[n]=o,s=e.rowHeight[n]-s),e.height+=s,e.rows[n].push(t)},m.prototype.getShortestRowIndex=function(e){for(var t=-1,n=Number.MAX_VALUE,r=0;rn&&(t=r,n=e.rowWidth[r]);return t},m.prototype.canAddHorizontal=function(e,t,n){var r=this.getShortestRowIndex(e);if(r<0)return!0;var i=e.rowWidth[r];if(i+e.horizontalPadding+t<=e.width)return!0;var a,o,s=0;return e.rowHeight[r]0&&(s=n+e.verticalPadding-e.rowHeight[r]),a=e.width-i>=t+e.horizontalPadding?(e.height+s)/(i+t+e.horizontalPadding):(e.height+s)/e.width,s=n+e.verticalPadding,(o=e.widtha&&t!=n){r.splice(-1,1),e.rows[n].push(i),e.rowWidth[t]=e.rowWidth[t]-a,e.rowWidth[n]=e.rowWidth[n]+a,e.width=e.rowWidth[instance.getLongestRowIndex(e)];for(var o=Number.MIN_VALUE,s=0;so&&(o=r[s].height);t>0&&(o+=e.verticalPadding);var l=e.rowHeight[t]+e.rowHeight[n];e.rowHeight[t]=o,e.rowHeight[n]0)for(var c=i;c<=a;c++)l[0]+=this.grid[c][o-1].length+this.grid[c][o].length-1;if(a0)for(c=o;c<=s;c++)l[3]+=this.grid[i-1][c].length+this.grid[i][c].length-1;for(var h,d,p=g.MAX_VALUE,f=0;f0&&(o=n.getGraphManager().add(n.newGraph(),a),this.processChildrenList(o,h,n))}},h.prototype.stop=function(){return this.stopped=!0,this};var p=function(e){e("layout","cose-bilkent",h)};"undefined"!=typeof cytoscape&&p(cytoscape),e.exports=p}])},e.exports=r(n(7799))},3143:function(e){var t;t=function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.i=function(e){return e},n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=26)}([function(e,t,n){"use strict";function r(){}r.QUALITY=1,r.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,r.DEFAULT_INCREMENTAL=!1,r.DEFAULT_ANIMATION_ON_LAYOUT=!0,r.DEFAULT_ANIMATION_DURING_LAYOUT=!1,r.DEFAULT_ANIMATION_PERIOD=50,r.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,r.DEFAULT_GRAPH_MARGIN=15,r.NODE_DIMENSIONS_INCLUDE_LABELS=!1,r.SIMPLE_NODE_SIZE=40,r.SIMPLE_NODE_HALF_SIZE=r.SIMPLE_NODE_SIZE/2,r.EMPTY_COMPOUND_NODE_SIZE=40,r.MIN_EDGE_LENGTH=1,r.WORLD_BOUNDARY=1e6,r.INITIAL_WORLD_BOUNDARY=r.WORLD_BOUNDARY/1e3,r.WORLD_CENTER_X=1200,r.WORLD_CENTER_Y=900,e.exports=r},function(e,t,n){"use strict";var r=n(2),i=n(8),a=n(9);function o(e,t,n){r.call(this,n),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=n,this.bendpoints=[],this.source=e,this.target=t}for(var s in o.prototype=Object.create(r.prototype),r)o[s]=r[s];o.prototype.getSource=function(){return this.source},o.prototype.getTarget=function(){return this.target},o.prototype.isInterGraph=function(){return this.isInterGraph},o.prototype.getLength=function(){return this.length},o.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},o.prototype.getBendpoints=function(){return this.bendpoints},o.prototype.getLca=function(){return this.lca},o.prototype.getSourceInLca=function(){return this.sourceInLca},o.prototype.getTargetInLca=function(){return this.targetInLca},o.prototype.getOtherEnd=function(e){if(this.source===e)return this.target;if(this.target===e)return this.source;throw"Node is not incident with this edge"},o.prototype.getOtherEndInGraph=function(e,t){for(var n=this.getOtherEnd(e),r=t.getGraphManager().getRoot();;){if(n.getOwner()==t)return n;if(n.getOwner()==r)break;n=n.getOwner().getParent()}return null},o.prototype.updateLength=function(){var e=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),e),this.isOverlapingSourceAndTarget||(this.lengthX=e[0]-e[2],this.lengthY=e[1]-e[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},o.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},e.exports=o},function(e,t,n){"use strict";e.exports=function(e){this.vGraphObject=e}},function(e,t,n){"use strict";var r=n(2),i=n(10),a=n(13),o=n(0),s=n(16),l=n(4);function u(e,t,n,o){null==n&&null==o&&(o=t),r.call(this,o),null!=e.graphManager&&(e=e.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=o,this.edges=[],this.graphManager=e,this.rect=null!=n&&null!=t?new a(t.x,t.y,n.width,n.height):new a}for(var c in u.prototype=Object.create(r.prototype),r)u[c]=r[c];u.prototype.getEdges=function(){return this.edges},u.prototype.getChild=function(){return this.child},u.prototype.getOwner=function(){return this.owner},u.prototype.getWidth=function(){return this.rect.width},u.prototype.setWidth=function(e){this.rect.width=e},u.prototype.getHeight=function(){return this.rect.height},u.prototype.setHeight=function(e){this.rect.height=e},u.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},u.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},u.prototype.getCenter=function(){return new l(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},u.prototype.getLocation=function(){return new l(this.rect.x,this.rect.y)},u.prototype.getRect=function(){return this.rect},u.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},u.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},u.prototype.setRect=function(e,t){this.rect.x=e.x,this.rect.y=e.y,this.rect.width=t.width,this.rect.height=t.height},u.prototype.setCenter=function(e,t){this.rect.x=e-this.rect.width/2,this.rect.y=t-this.rect.height/2},u.prototype.setLocation=function(e,t){this.rect.x=e,this.rect.y=t},u.prototype.moveBy=function(e,t){this.rect.x+=e,this.rect.y+=t},u.prototype.getEdgeListToNode=function(e){var t=[],n=this;return n.edges.forEach((function(r){if(r.target==e){if(r.source!=n)throw"Incorrect edge source!";t.push(r)}})),t},u.prototype.getEdgesBetween=function(e){var t=[],n=this;return n.edges.forEach((function(r){if(r.source!=n&&r.target!=n)throw"Incorrect edge source and/or target";r.target!=e&&r.source!=e||t.push(r)})),t},u.prototype.getNeighborsList=function(){var e=new Set,t=this;return t.edges.forEach((function(n){if(n.source==t)e.add(n.target);else{if(n.target!=t)throw"Incorrect incidency!";e.add(n.source)}})),e},u.prototype.withChildren=function(){var e=new Set;if(e.add(this),null!=this.child)for(var t=this.child.getNodes(),n=0;nt&&(this.rect.x-=(this.labelWidth-t)/2,this.setWidth(this.labelWidth)),this.labelHeight>n&&("center"==this.labelPos?this.rect.y-=(this.labelHeight-n)/2:"top"==this.labelPos&&(this.rect.y-=this.labelHeight-n),this.setHeight(this.labelHeight))}}},u.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},u.prototype.transform=function(e){var t=this.rect.x;t>o.WORLD_BOUNDARY?t=o.WORLD_BOUNDARY:t<-o.WORLD_BOUNDARY&&(t=-o.WORLD_BOUNDARY);var n=this.rect.y;n>o.WORLD_BOUNDARY?n=o.WORLD_BOUNDARY:n<-o.WORLD_BOUNDARY&&(n=-o.WORLD_BOUNDARY);var r=new l(t,n),i=e.inverseTransformPoint(r);this.setLocation(i.x,i.y)},u.prototype.getLeft=function(){return this.rect.x},u.prototype.getRight=function(){return this.rect.x+this.rect.width},u.prototype.getTop=function(){return this.rect.y},u.prototype.getBottom=function(){return this.rect.y+this.rect.height},u.prototype.getParent=function(){return null==this.owner?null:this.owner.getParent()},e.exports=u},function(e,t,n){"use strict";function r(e,t){null==e&&null==t?(this.x=0,this.y=0):(this.x=e,this.y=t)}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.setX=function(e){this.x=e},r.prototype.setY=function(e){this.y=e},r.prototype.getDifference=function(e){return new DimensionD(this.x-e.x,this.y-e.y)},r.prototype.getCopy=function(){return new r(this.x,this.y)},r.prototype.translate=function(e){return this.x+=e.width,this.y+=e.height,this},e.exports=r},function(e,t,n){"use strict";var r=n(2),i=n(10),a=n(0),o=n(6),s=n(3),l=n(1),u=n(13),c=n(12),h=n(11);function d(e,t,n){r.call(this,n),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=e,null!=t&&t instanceof o?this.graphManager=t:null!=t&&t instanceof Layout&&(this.graphManager=t.graphManager)}for(var p in d.prototype=Object.create(r.prototype),r)d[p]=r[p];d.prototype.getNodes=function(){return this.nodes},d.prototype.getEdges=function(){return this.edges},d.prototype.getGraphManager=function(){return this.graphManager},d.prototype.getParent=function(){return this.parent},d.prototype.getLeft=function(){return this.left},d.prototype.getRight=function(){return this.right},d.prototype.getTop=function(){return this.top},d.prototype.getBottom=function(){return this.bottom},d.prototype.isConnected=function(){return this.isConnected},d.prototype.add=function(e,t,n){if(null==t&&null==n){var r=e;if(null==this.graphManager)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(r)>-1)throw"Node already in graph!";return r.owner=this,this.getNodes().push(r),r}var i=e;if(!(this.getNodes().indexOf(t)>-1&&this.getNodes().indexOf(n)>-1))throw"Source or target not in graph!";if(t.owner!=n.owner||t.owner!=this)throw"Both owners must be this graph!";return t.owner!=n.owner?null:(i.source=t,i.target=n,i.isInterGraph=!1,this.getEdges().push(i),t.edges.push(i),n!=t&&n.edges.push(i),i)},d.prototype.remove=function(e){var t=e;if(e instanceof s){if(null==t)throw"Node is null!";if(null==t.owner||t.owner!=this)throw"Owner graph is invalid!";if(null==this.graphManager)throw"Owner graph manager is invalid!";for(var n=t.edges.slice(),r=n.length,i=0;i-1&&c>-1))throw"Source and/or target doesn't know this edge!";if(a.source.edges.splice(u,1),a.target!=a.source&&a.target.edges.splice(c,1),-1==(o=a.source.owner.getEdges().indexOf(a)))throw"Not in owner's edge list!";a.source.owner.getEdges().splice(o,1)}},d.prototype.updateLeftTop=function(){for(var e,t,n,r=i.MAX_VALUE,a=i.MAX_VALUE,o=this.getNodes(),s=o.length,l=0;l(e=u.getTop())&&(r=e),a>(t=u.getLeft())&&(a=t)}return r==i.MAX_VALUE?null:(n=null!=o[0].getParent().paddingLeft?o[0].getParent().paddingLeft:this.margin,this.left=a-n,this.top=r-n,new c(this.left,this.top))},d.prototype.updateBounds=function(e){for(var t,n,r,a,o,s=i.MAX_VALUE,l=-i.MAX_VALUE,c=i.MAX_VALUE,h=-i.MAX_VALUE,d=this.nodes,p=d.length,g=0;g(t=f.getLeft())&&(s=t),l<(n=f.getRight())&&(l=n),c>(r=f.getTop())&&(c=r),h<(a=f.getBottom())&&(h=a)}var v=new u(s,c,l-s,h-c);s==i.MAX_VALUE&&(this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom()),o=null!=d[0].getParent().paddingLeft?d[0].getParent().paddingLeft:this.margin,this.left=v.x-o,this.right=v.x+v.width+o,this.top=v.y-o,this.bottom=v.y+v.height+o},d.calculateBounds=function(e){for(var t,n,r,a,o=i.MAX_VALUE,s=-i.MAX_VALUE,l=i.MAX_VALUE,c=-i.MAX_VALUE,h=e.length,d=0;d(t=p.getLeft())&&(o=t),s<(n=p.getRight())&&(s=n),l>(r=p.getTop())&&(l=r),c<(a=p.getBottom())&&(c=a)}return new u(o,l,s-o,c-l)},d.prototype.getInclusionTreeDepth=function(){return this==this.graphManager.getRoot()?1:this.parent.getInclusionTreeDepth()},d.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},d.prototype.calcEstimatedSize=function(){for(var e=0,t=this.nodes,n=t.length,r=0;r=this.nodes.length){var l=0;i.forEach((function(t){t.owner==e&&l++})),l==this.nodes.length&&(this.isConnected=!0)}}else this.isConnected=!0},e.exports=d},function(e,t,n){"use strict";var r,i=n(1);function a(e){r=n(5),this.layout=e,this.graphs=[],this.edges=[]}a.prototype.addRoot=function(){var e=this.layout.newGraph(),t=this.layout.newNode(null),n=this.add(e,t);return this.setRootGraph(n),this.rootGraph},a.prototype.add=function(e,t,n,r,i){if(null==n&&null==r&&null==i){if(null==e)throw"Graph is null!";if(null==t)throw"Parent node is null!";if(this.graphs.indexOf(e)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(e),null!=e.parent)throw"Already has a parent!";if(null!=t.child)throw"Already has a child!";return e.parent=t,t.child=e,e}i=n,n=e;var a=(r=t).getOwner(),o=i.getOwner();if(null==a||a.getGraphManager()!=this)throw"Source not in this graph mgr!";if(null==o||o.getGraphManager()!=this)throw"Target not in this graph mgr!";if(a==o)return n.isInterGraph=!1,a.add(n,r,i);if(n.isInterGraph=!0,n.source=r,n.target=i,this.edges.indexOf(n)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(n),null==n.source||null==n.target)throw"Edge source and/or target is null!";if(-1!=n.source.edges.indexOf(n)||-1!=n.target.edges.indexOf(n))throw"Edge already in source and/or target incidency list!";return n.source.edges.push(n),n.target.edges.push(n),n},a.prototype.remove=function(e){if(e instanceof r){var t=e;if(t.getGraphManager()!=this)throw"Graph not in this graph mgr";if(t!=this.rootGraph&&(null==t.parent||t.parent.graphManager!=this))throw"Invalid parent node!";for(var n,a=[],o=(a=a.concat(t.getEdges())).length,s=0;s=t.getRight()?n[0]+=Math.min(t.getX()-e.getX(),e.getRight()-t.getRight()):t.getX()<=e.getX()&&t.getRight()>=e.getRight()&&(n[0]+=Math.min(e.getX()-t.getX(),t.getRight()-e.getRight())),e.getY()<=t.getY()&&e.getBottom()>=t.getBottom()?n[1]+=Math.min(t.getY()-e.getY(),e.getBottom()-t.getBottom()):t.getY()<=e.getY()&&t.getBottom()>=e.getBottom()&&(n[1]+=Math.min(e.getY()-t.getY(),t.getBottom()-e.getBottom()));var a=Math.abs((t.getCenterY()-e.getCenterY())/(t.getCenterX()-e.getCenterX()));t.getCenterY()===e.getCenterY()&&t.getCenterX()===e.getCenterX()&&(a=1);var o=a*n[0],s=n[1]/a;n[0]o)return n[0]=r,n[1]=l,n[2]=a,n[3]=b,!1;if(ia)return n[0]=s,n[1]=i,n[2]=y,n[3]=o,!1;if(ra?(n[0]=c,n[1]=h,_=!0):(n[0]=u,n[1]=l,_=!0):D===N&&(r>a?(n[0]=s,n[1]=l,_=!0):(n[0]=d,n[1]=h,_=!0)),-C===N?a>r?(n[2]=m,n[3]=b,T=!0):(n[2]=y,n[3]=v,T=!0):C===N&&(a>r?(n[2]=f,n[3]=v,T=!0):(n[2]=x,n[3]=b,T=!0)),_&&T)return!1;if(r>a?i>o?(A=this.getCardinalDirection(D,N,4),k=this.getCardinalDirection(C,N,2)):(A=this.getCardinalDirection(-D,N,3),k=this.getCardinalDirection(-C,N,1)):i>o?(A=this.getCardinalDirection(-D,N,1),k=this.getCardinalDirection(-C,N,3)):(A=this.getCardinalDirection(D,N,2),k=this.getCardinalDirection(C,N,4)),!_)switch(A){case 1:S=l,L=r+-g/N,n[0]=L,n[1]=S;break;case 2:L=d,S=i+p*N,n[0]=L,n[1]=S;break;case 3:S=h,L=r+g/N,n[0]=L,n[1]=S;break;case 4:L=c,S=i+-p*N,n[0]=L,n[1]=S}if(!T)switch(k){case 1:I=v,M=a+-E/N,n[2]=M,n[3]=I;break;case 2:M=x,I=o+w*N,n[2]=M,n[3]=I;break;case 3:I=b,M=a+E/N,n[2]=M,n[3]=I;break;case 4:M=m,I=o+-w*N,n[2]=M,n[3]=I}}return!1},i.getCardinalDirection=function(e,t,n){return e>t?n:1+n%4},i.getIntersection=function(e,t,n,i){if(null==i)return this.getIntersection2(e,t,n);var a,o,s,l,u,c,h,d=e.x,p=e.y,g=t.x,f=t.y,v=n.x,y=n.y,m=i.x,b=i.y;return 0==(h=(a=f-p)*(l=v-m)-(o=b-y)*(s=d-g))?null:new r((s*(c=m*y-v*b)-l*(u=g*p-d*f))/h,(o*u-a*c)/h)},i.angleOfVector=function(e,t,n,r){var i=void 0;return e!==n?(i=Math.atan((r-t)/(n-e)),n0?1:e<0?-1:0},r.floor=function(e){return e<0?Math.ceil(e):Math.floor(e)},r.ceil=function(e){return e<0?Math.floor(e):Math.ceil(e)},e.exports=r},function(e,t,n){"use strict";function r(){}r.MAX_VALUE=2147483647,r.MIN_VALUE=-2147483648,e.exports=r},function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n0&&t;){for(s.push(u[0]);s.length>0&&t;){var c=s[0];s.splice(0,1),o.add(c);var h=c.getEdges();for(a=0;a-1&&u.splice(f,1)}o=new Set,l=new Map}else e=[]}return e},d.prototype.createDummyNodesForBendpoints=function(e){for(var t=[],n=e.source,r=this.graphManager.calcLowestCommonAncestor(e.source,e.target),i=0;i0){for(var i=this.edgeToDummyNodes.get(n),a=0;a=0&&t.splice(h,1),c.getNeighborsList().forEach((function(e){if(n.indexOf(e)<0){var t=r.get(e)-1;1==t&&l.push(e),r.set(e,t)}}))}n=n.concat(l),1!=t.length&&2!=t.length||(i=!0,a=t[0])}return a},d.prototype.setGraphManager=function(e){this.graphManager=e},e.exports=d},function(e,t,n){"use strict";function r(){}r.seed=1,r.x=0,r.nextDouble=function(){return r.x=1e4*Math.sin(r.seed++),r.x-Math.floor(r.x)},e.exports=r},function(e,t,n){"use strict";var r=n(4);function i(e,t){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(e){this.lworldOrgX=e},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(e){this.lworldOrgY=e},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(e){this.lworldExtX=e},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(e){this.lworldExtY=e},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(e){this.ldeviceOrgX=e},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(e){this.ldeviceOrgY=e},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(e){this.ldeviceExtX=e},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(e){this.ldeviceExtY=e},i.prototype.transformX=function(e){var t=0,n=this.lworldExtX;return 0!=n&&(t=this.ldeviceOrgX+(e-this.lworldOrgX)*this.ldeviceExtX/n),t},i.prototype.transformY=function(e){var t=0,n=this.lworldExtY;return 0!=n&&(t=this.ldeviceOrgY+(e-this.lworldOrgY)*this.ldeviceExtY/n),t},i.prototype.inverseTransformX=function(e){var t=0,n=this.ldeviceExtX;return 0!=n&&(t=this.lworldOrgX+(e-this.ldeviceOrgX)*this.lworldExtX/n),t},i.prototype.inverseTransformY=function(e){var t=0,n=this.ldeviceExtY;return 0!=n&&(t=this.lworldOrgY+(e-this.ldeviceOrgY)*this.lworldExtY/n),t},i.prototype.inverseTransformPoint=function(e){return new r(this.inverseTransformX(e.x),this.inverseTransformY(e.y))},e.exports=i},function(e,t,n){"use strict";var r=n(15),i=n(7),a=n(0),o=n(8),s=n(9);function l(){r.call(this),this.useSmartIdealEdgeLengthCalculation=i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.idealEdgeLength=i.DEFAULT_EDGE_LENGTH,this.springConstant=i.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=i.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=i.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=i.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=i.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*i.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=i.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=i.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=i.MAX_ITERATIONS}for(var u in l.prototype=Object.create(r.prototype),r)l[u]=r[u];l.prototype.initParameters=function(){r.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},l.prototype.calcIdealEdgeLengths=function(){for(var e,t,n,r,o,s,l=this.getGraphManager().getAllEdges(),u=0;ui.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*i.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(e-i.ADAPTATION_LOWER_NODE_LIMIT)/(i.ADAPTATION_UPPER_NODE_LIMIT-i.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-i.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=i.MAX_NODE_DISPLACEMENT_INCREMENTAL):(e>i.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(i.COOLING_ADAPTATION_FACTOR,1-(e-i.ADAPTATION_LOWER_NODE_LIMIT)/(i.ADAPTATION_UPPER_NODE_LIMIT-i.ADAPTATION_LOWER_NODE_LIMIT)*(1-i.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=i.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(5*this.getAllNodes().length,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},l.prototype.calcSpringForces=function(){for(var e,t=this.getAllEdges(),n=0;n0&&void 0!==arguments[0])||arguments[0],s=arguments.length>1&&void 0!==arguments[1]&&arguments[1],l=this.getAllNodes();if(this.useFRGridVariant)for(this.totalIterations%i.GRID_CALCULATION_CHECK_PERIOD==1&&o&&this.updateGrid(),a=new Set,e=0;e(l=t.getEstimatedSize()*this.gravityRangeFactor)||s>l)&&(e.gravitationForceX=-this.gravityConstant*i,e.gravitationForceY=-this.gravityConstant*a):(o>(l=t.getEstimatedSize()*this.compoundGravityRangeFactor)||s>l)&&(e.gravitationForceX=-this.gravityConstant*i*this.compoundGravityConstant,e.gravitationForceY=-this.gravityConstant*a*this.compoundGravityConstant)},l.prototype.isConverged=function(){var e,t=!1;return this.totalIterations>this.maxIterations/3&&(t=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),e=this.totalDisplacement=s.length||u>=s[0].length))for(var c=0;ce}}]),e}();e.exports=a},function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n2&&void 0!==arguments[2]?arguments[2]:1,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:-1,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:-1;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.sequence1=t,this.sequence2=n,this.match_score=r,this.mismatch_penalty=i,this.gap_penalty=a,this.iMax=t.length+1,this.jMax=n.length+1,this.grid=new Array(this.iMax);for(var o=0;o=0;n--){var r=this.listeners[n];r.event===e&&r.callback===t&&this.listeners.splice(n,1)}},i.emit=function(e,t){for(var n=0;n{"use strict";n.d(t,{diagram:()=>Cc});var r=n(8252),i=n(7323),a=n(8852),o=n(798);function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}var v="undefined"==typeof window?null:window,y=v?v.navigator:null;v&&v.document;var m=s(""),b=s({}),x=s((function(){})),w="undefined"==typeof HTMLElement?"undefined":s(HTMLElement),E=function(e){return e&&e.instanceString&&T(e.instanceString)?e.instanceString():null},_=function(e){return null!=e&&s(e)==m},T=function(e){return null!=e&&s(e)===x},D=function(e){return!k(e)&&(Array.isArray?Array.isArray(e):null!=e&&e instanceof Array)},C=function(e){return null!=e&&s(e)===b&&!D(e)&&e.constructor===Object},N=function(e){return null!=e&&s(e)===s(1)&&!isNaN(e)},A=function(e){return"undefined"===w?void 0:null!=e&&e instanceof HTMLElement},k=function(e){return L(e)||S(e)},L=function(e){return"collection"===E(e)&&e._private.single},S=function(e){return"collection"===E(e)&&!e._private.single},M=function(e){return"core"===E(e)},I=function(e){return"stylesheet"===E(e)},O=function(e){return null==e||!(""!==e&&!e.match(/^\s+$/))},P=function(e){return function(e){return null!=e&&s(e)===b}(e)&&T(e.then)},R=function(e,t){t||(t=function(){if(1===arguments.length)return arguments[0];if(0===arguments.length)return"undefined";for(var e=[],t=0;tt?1:0},H=null!=Object.assign?Object.assign.bind(Object):function(e){for(var t=arguments,n=1;n=t||n<0||h&&e-u>=a}function f(){var e=ne();if(g(e))return v(e);s=setTimeout(f,function(e){var n=t-(e-l);return h?we(n,a-(e-u)):n}(e))}function v(e){return s=void 0,d&&r?p(e):(r=i=void 0,o)}function y(){var e=ne(),n=g(e);if(r=arguments,i=this,l=e,n){if(void 0===s)return function(e){return u=e,s=setTimeout(f,t),c?p(e):o}(l);if(h)return clearTimeout(s),s=setTimeout(f,t),p(l)}return void 0===s&&(s=setTimeout(f,t)),o}return t=be(t)||0,Z(n)&&(c=!!n.leading,a=(h="maxWait"in n)?xe(be(n.maxWait)||0,t):a,d="trailing"in n?!!n.trailing:d),y.cancel=function(){void 0!==s&&clearTimeout(s),u=0,r=l=i=s=void 0},y.flush=function(){return void 0===s?o:v(ne())},y},_e=v?v.performance:null,Te=_e&&_e.now?function(){return _e.now()}:function(){return Date.now()},De=function(){if(v){if(v.requestAnimationFrame)return function(e){v.requestAnimationFrame(e)};if(v.mozRequestAnimationFrame)return function(e){v.mozRequestAnimationFrame(e)};if(v.webkitRequestAnimationFrame)return function(e){v.webkitRequestAnimationFrame(e)};if(v.msRequestAnimationFrame)return function(e){v.msRequestAnimationFrame(e)}}return function(e){e&&setTimeout((function(){e(Te())}),1e3/60)}}(),Ce=function(e){return De(e)},Ne=Te,Ae=9261,ke=5381,Le=function(e){for(var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ae;!(t=e.next()).done;)n=65599*n+t.value|0;return n},Se=function(e){return 65599*(arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ae)+e|0},Me=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ke;return(t<<5)+t+e|0},Ie=function(e){return 2097152*e[0]+e[1]},Oe=function(e,t){return[Se(e[0],t[0]),Me(e[1],t[1])]},Pe=function(e,t){var n={value:0,done:!1},r=0,i=e.length;return Le({next:function(){return r=0&&(e[r]!==t||(e.splice(r,1),!n));r--);},tt=function(e){e.splice(0,e.length)},nt=function(e,t,n){return n&&(t=z(n,t)),e[t]},rt=function(e,t,n,r){n&&(t=z(n,t)),e[t]=r},it="undefined"!=typeof Map?Map:function(){function e(){l(this,e),this._obj={}}return c(e,[{key:"set",value:function(e,t){return this._obj[e]=t,this}},{key:"delete",value:function(e){return this._obj[e]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(e){return void 0!==this._obj[e]}},{key:"get",value:function(e){return this._obj[e]}}]),e}(),at=function(){function e(t){if(l(this,e),this._obj=Object.create(null),this.size=0,null!=t){var n;n=null!=t.instanceString&&t.instanceString()===this.instanceString()?t.toArray():t;for(var r=0;r2&&void 0!==arguments[2])||arguments[2];if(void 0!==e&&void 0!==t&&M(e)){var r=t.group;if(null==r&&(r=t.data&&null!=t.data.source&&null!=t.data.target?"edges":"nodes"),"nodes"===r||"edges"===r){this.length=1,this[0]=this;var i=this._private={cy:e,single:!0,data:t.data||{},position:t.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:r,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!t.selected,selectable:void 0===t.selectable||!!t.selectable,locked:!!t.locked,grabbed:!1,grabbable:void 0===t.grabbable||!!t.grabbable,pannable:void 0===t.pannable?"edges"===r:!!t.pannable,active:!1,classes:new ot,animation:{current:[],queue:[]},rscratch:{},scratch:t.scratch||{},edges:[],children:[],parent:t.parent&&t.parent.isNode()?t.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(null==i.position.x&&(i.position.x=0),null==i.position.y&&(i.position.y=0),t.renderedPosition){var a=t.renderedPosition,o=e.pan(),s=e.zoom();i.position={x:(a.x-o.x)/s,y:(a.y-o.y)/s}}var l=[];D(t.classes)?l=t.classes:_(t.classes)&&(l=t.classes.split(/\s+/));for(var u=0,c=l.length;ut?1:0},u=function(e,t,i,a,o){var s;if(null==i&&(i=0),null==o&&(o=n),i<0)throw new Error("lo must be non-negative");for(null==a&&(a=e.length);in;0<=n?t++:t--)u.push(t);return u}.apply(this).reverse()).length;af;0<=f?++d:--d)v.push(a(e,r));return v},g=function(e,t,r,i){var a,o,s;for(null==i&&(i=n),a=e[r];r>t&&i(a,o=e[s=r-1>>1])<0;)e[r]=o,r=s;return e[r]=a},f=function(e,t,r){var i,a,o,s,l;for(null==r&&(r=n),a=e.length,l=t,o=e[t],i=2*t+1;i0;){var w=y.pop(),E=f(w),T=w.id();if(h[T]=E,E!==1/0)for(var D=w.neighborhood().intersect(p),N=0;N0)for(n.unshift(t);c[i];){var a=c[i];n.unshift(a.edge),n.unshift(a.node),i=(r=a.node).id()}return o.spawn(n)}}}},ft={kruskal:function(e){e=e||function(e){return 1};for(var t=this.byGroup(),n=t.nodes,r=t.edges,i=n.length,a=new Array(i),o=n,s=function(e){for(var t=0;t0;){if(u=(l=f.pop()).id(),v.delete(u),w++,u===h){for(var E=[],_=i,T=h,D=m[T];E.unshift(_),null!=D&&E.unshift(D),null!=(_=y[T]);)D=m[T=_.id()];return{found:!0,distance:d[u],path:this.spawn(E),steps:w}}g[u]=!0;for(var C=l._private.edges,N=0;NN&&(p[C]=N,y[C]=D,m[C]=x),!i){var A=D*u+T;!i&&p[A]>N&&(p[A]=N,y[A]=T,m[A]=x)}}}for(var k=0;k1&&void 0!==arguments[1]?arguments[1]:a,r=[],i=m(e);;){if(null==i)return t.spawn();var o=y(i),l=o.edge,u=o.pred;if(r.unshift(i[0]),i.same(n)&&r.length>0)break;null!=l&&r.unshift(l),i=u}return s.spawn(r)},hasNegativeWeightCycle:g,negativeWeightCycles:f}}},Et=Math.sqrt(2),_t=function(e,t,n){0===n.length&&qe("Karger-Stein must be run on a connected (sub)graph");for(var r=n[e],i=r[1],a=r[2],o=t[i],s=t[a],l=n,u=l.length-1;u>=0;u--){var c=l[u],h=c[1],d=c[2];(t[h]===o&&t[d]===s||t[h]===s&&t[d]===o)&&l.splice(u,1)}for(var p=0;pr;){var i=Math.floor(Math.random()*t.length);t=_t(i,e,t),n--}return t},Dt={kargerStein:function(){var e=this,t=this.byGroup(),n=t.nodes,r=t.edges;r.unmergeBy((function(e){return e.isLoop()}));var i=n.length,a=r.length,o=Math.ceil(Math.pow(Math.log(i)/Math.LN2,2)),s=Math.floor(i/Et);if(!(i<2)){for(var l=[],u=0;u0?1:e<0?-1:0},Mt=function(e,t){return Math.sqrt(It(e,t))},It=function(e,t){var n=t.x-e.x,r=t.y-e.y;return n*n+r*r},Ot=function(e){for(var t=e.length,n=0,r=0;r=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(null!=e.w&&null!=e.h&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},zt=function(e,t){e.x1=Math.min(e.x1,t.x1),e.x2=Math.max(e.x2,t.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,t.y1),e.y2=Math.max(e.y2,t.y2),e.h=e.y2-e.y1},Gt=function(e,t,n){e.x1=Math.min(e.x1,t),e.x2=Math.max(e.x2,t),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,n),e.y2=Math.max(e.y2,n),e.h=e.y2-e.y1},Yt=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.x1-=t,e.x2+=t,e.y1-=t,e.y2+=t,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},Vt=function(e){var t,n,r,i,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0];if(1===a.length)t=n=r=i=a[0];else if(2===a.length)t=r=a[0],i=n=a[1];else if(4===a.length){var o=d(a,4);t=o[0],n=o[1],r=o[2],i=o[3]}return e.x1-=i,e.x2+=n,e.y1-=t,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},Xt=function(e,t){e.x1=t.x1,e.y1=t.y1,e.x2=t.x2,e.y2=t.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},Ut=function(e,t){return!(e.x1>t.x2||t.x1>e.x2||e.x2t.y2||t.y1>e.y2)},jt=function(e,t,n){return e.x1<=t&&t<=e.x2&&e.y1<=n&&n<=e.y2},qt=function(e,t){return jt(e,t.x1,t.y1)&&jt(e,t.x2,t.y2)},Ht=function(e,t,n,r,i,a,o){var s,l,u=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"auto",c="auto"===u?dn(i,a):u,h=i/2,d=a/2,p=(c=Math.min(c,h,d))!==h,g=c!==d;if(p){var f=r-d-o;if((s=on(e,t,n,r,n-h+c-o,f,n+h-c+o,f,!1)).length>0)return s}if(g){var v=n+h+o;if((s=on(e,t,n,r,v,r-d+c-o,v,r+d-c+o,!1)).length>0)return s}if(p){var y=r+d+o;if((s=on(e,t,n,r,n-h+c-o,y,n+h-c+o,y,!1)).length>0)return s}if(g){var m=n-h-o;if((s=on(e,t,n,r,m,r-d+c-o,m,r+d-c+o,!1)).length>0)return s}var b=n-h+c,x=r-d+c;if((l=rn(e,t,n,r,b,x,c+o)).length>0&&l[0]<=b&&l[1]<=x)return[l[0],l[1]];var w=n+h-c,E=r-d+c;if((l=rn(e,t,n,r,w,E,c+o)).length>0&&l[0]>=w&&l[1]<=E)return[l[0],l[1]];var _=n+h-c,T=r+d-c;if((l=rn(e,t,n,r,_,T,c+o)).length>0&&l[0]>=_&&l[1]>=T)return[l[0],l[1]];var D=n-h+c,C=r+d-c;return(l=rn(e,t,n,r,D,C,c+o)).length>0&&l[0]<=D&&l[1]>=C?[l[0],l[1]]:[]},Wt=function(e,t,n,r,i,a,o){var s=o,l=Math.min(n,i),u=Math.max(n,i),c=Math.min(r,a),h=Math.max(r,a);return l-s<=e&&e<=u+s&&c-s<=t&&t<=h+s},$t=function(e,t,n,r,i,a,o,s,l){var u=Math.min(n,o,i)-l,c=Math.max(n,o,i)+l,h=Math.min(r,s,a)-l,d=Math.max(r,s,a)+l;return!(ec||td)},Kt=function(e,t,n,r,i,a,o,s){var l,u,c,h,d,p,g,f,v,y,m,b,x,w=[];u=9*n*i-3*n*n-3*n*o-6*i*i+3*i*o+9*r*a-3*r*r-3*r*s-6*a*a+3*a*s,c=3*n*n-6*n*i+n*o-n*e+2*i*i+2*i*e-o*e+3*r*r-6*r*a+r*s-r*t+2*a*a+2*a*t-s*t,h=1*n*i-n*n+n*e-i*e+r*a-r*r+r*t-a*t,0===(l=1*n*n-4*n*i+2*n*o+4*i*i-4*i*o+o*o+r*r-4*r*a+2*r*s+4*a*a-4*a*s+s*s)&&(l=1e-5),f=-27*(h/=l)+(u/=l)*(9*(c/=l)-u*u*2),p=(g=(3*c-u*u)/9)*g*g+(f/=54)*f,(d=w)[1]=0,b=u/3,p>0?(y=(y=f+Math.sqrt(p))<0?-Math.pow(-y,1/3):Math.pow(y,1/3),m=(m=f-Math.sqrt(p))<0?-Math.pow(-m,1/3):Math.pow(m,1/3),d[0]=-b+y+m,b+=(y+m)/2,d[4]=d[2]=-b,b=Math.sqrt(3)*(-m+y)/2,d[3]=b,d[5]=-b):(d[5]=d[3]=0,0===p?(x=f<0?-Math.pow(-f,1/3):Math.pow(f,1/3),d[0]=2*x-b,d[4]=d[2]=-(x+b)):(v=(g=-g)*g*g,v=Math.acos(f/Math.sqrt(v)),x=2*Math.sqrt(g),d[0]=-b+x*Math.cos(v/3),d[2]=-b+x*Math.cos((v+2*Math.PI)/3),d[4]=-b+x*Math.cos((v+4*Math.PI)/3)));for(var E=[],_=0;_<6;_+=2)Math.abs(w[_+1])<1e-7&&w[_]>=0&&w[_]<=1&&E.push(w[_]);E.push(1),E.push(0);for(var T,D,C,N=-1,A=0;A=0?Cl?(e-i)*(e-i)+(t-a)*(t-a):u-h},Qt=function(e,t,n){for(var r,i,a,o,s=0,l=0;l=e&&e>=a||r<=e&&e<=a))continue;(e-r)/(a-r)*(o-i)+i>t&&s++}return s%2!=0},Jt=function(e,t,n,r,i,a,o,s,l){var u,c=new Array(n.length);null!=s[0]?(u=Math.atan(s[1]/s[0]),s[0]<0?u+=Math.PI/2:u=-u-Math.PI/2):u=s;for(var h,d=Math.cos(-u),p=Math.sin(-u),g=0;g0){var f=tn(c,-l);h=en(f)}else h=c;return Qt(e,t,h)},en=function(e){for(var t,n,r,i,a,o,s,l,u=new Array(e.length/2),c=0;c=0&&g<=1&&v.push(g),f>=0&&f<=1&&v.push(f),0===v.length)return[];var y=v[0]*s[0]+e,m=v[0]*s[1]+t;return v.length>1?v[0]==v[1]?[y,m]:[y,m,v[1]*s[0]+e,v[1]*s[1]+t]:[y,m]},an=function(e,t,n){return t<=e&&e<=n||n<=e&&e<=t?e:e<=t&&t<=n||n<=t&&t<=e?t:n},on=function(e,t,n,r,i,a,o,s,l){var u=e-i,c=n-e,h=o-i,d=t-a,p=r-t,g=s-a,f=h*d-g*u,v=c*d-p*u,y=g*c-h*p;if(0!==y){var m=f/y,b=v/y,x=-.001;return x<=m&&m<=1.001&&x<=b&&b<=1.001||l?[e+m*c,t+m*p]:[]}return 0===f||0===v?an(e,n,o)===o?[o,s]:an(e,n,i)===i?[i,a]:an(i,o,n)===n?[n,r]:[]:[]},sn=function(e,t,n,r,i,a,o,s){var l,u,c,h,d,p,g=[],f=new Array(n.length),v=!0;if(null==a&&(v=!1),v){for(var y=0;y0){var m=tn(f,-s);u=en(m)}else u=f}else u=n;for(var b=0;bu&&(u=t)},h=function(e){return l[e]},d=0;d0?x.edgesTo(b)[0]:b.edgesTo(x)[0];var w=r(m);b=b.id(),d[b]>d[v]+w&&(d[b]=d[v]+w,p.nodes.indexOf(b)<0?p.push(b):p.updateItem(b),u[b]=0,l[b]=[]),d[b]==d[v]+w&&(u[b]=u[b]+u[v],l[b].push(v))}else for(var E=0;E0;){for(var C=n.pop(),N=0;N0&&o.push(n[s]);0!==o.length&&i.push(r.collection(o))}return i}(c,l,t,r);return b=function(e){for(var t=0;t5&&void 0!==arguments[5]?arguments[5]:In,o=r,s=0;s=2?zn(e,t,n,0,Rn,Bn):zn(e,t,n,0,Pn)},squaredEuclidean:function(e,t,n){return zn(e,t,n,0,Rn)},manhattan:function(e,t,n){return zn(e,t,n,0,Pn)},max:function(e,t,n){return zn(e,t,n,-1/0,Fn)}};function Yn(e,t,n,r,i,a){var o;return o=T(e)?e:Gn[e]||Gn.euclidean,0===t&&T(e)?o(i,a):o(t,n,r,i,a)}Gn["squared-euclidean"]=Gn.squaredEuclidean,Gn.squaredeuclidean=Gn.squaredEuclidean;var Vn=Je({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),Xn=function(e){return Vn(e)},Un=function(e,t,n,r,i){var a="kMedoids"!==i?function(e){return n[e]}:function(e){return r[e](n)},o=n,s=t;return Yn(e,r.length,a,(function(e){return r[e](t)}),o,s)},jn=function(e,t,n){for(var r=n.length,i=new Array(r),a=new Array(r),o=new Array(t),s=null,l=0;ln)return!1;return!0},Kn=function(e,t,n){for(var r=0;ri&&(i=t[l][u],a=u);o[a].push(e[l])}for(var c=0;c=i.threshold||"dendrogram"===i.mode&&1===e.length)return!1;var p,g=t[o],f=t[r[o]];p="dendrogram"===i.mode?{left:g,right:f,key:g.key}:{value:g.value.concat(f.value),key:g.key},e[g.index]=p,e.splice(f.index,1),t[g.key]=p;for(var v=0;vn[f.key][y.key]&&(a=n[f.key][y.key])):"max"===i.linkage?(a=n[g.key][y.key],n[g.key][y.key]o&&(a=l,o=t[i*e+l])}a>0&&r.push(a)}for(var u=0;u1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];arguments.length>3&&void 0!==arguments[3]&&!arguments[3]?(n0&&e.splice(0,t)):e=e.slice(t,n);for(var a=0,o=e.length-1;o>=0;o--){var s=e[o];i?isFinite(s)||(e[o]=-1/0,a++):e.splice(o,1)}r&&e.sort((function(e,t){return e-t}));var l=e.length,u=Math.floor(l/2);return l%2!=0?e[u+1+a]:(e[u-1+a]+e[u+a])/2}(e):"mean"===t?function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=0,i=0,a=t;a1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=1/0,i=t;i1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=-1/0,i=t;i=C?(A=C,C=L,k=S):L>A&&(A=L);for(var M=0;M0?1:0;_[E%u.minIterations*t+F]=z,B+=z}if(B>0&&(E>=u.minIterations-1||E==u.maxIterations-1)){for(var G=0,Y=0;Y0&&r.push(i);return r}(t,a,o),U=function(e,t,n){for(var r=pr(e,t,n),i=0;il&&(s=u,l=c)}n[i]=a[s]}return pr(e,t,n)}(t,r,X),j={},q=0;q1||o>1)&&(u=!0),c[t]=[],e.outgoers().forEach((function(e){e.isEdge()&&c[t].push(e.id())}))}else h[t]=[void 0,e.target().id()]})):l.forEach((function(e){var t=e.id();e.isNode()?(e.degree(!0)%2&&(n?r?u=!0:r=t:n=t),c[t]=[],e.connectedEdges().forEach((function(e){return c[t].push(e.id())}))):h[t]=[e.source().id(),e.target().id()]}));var d={found:!1,trail:void 0};if(u)return d;if(r&&n)if(s){if(i&&r!=i)return d;i=r}else{if(i&&r!=i&&n!=i)return d;i||(i=r)}else i||(i=l[0].id());var p=function(e){for(var t,n,r,i=e,a=[e];c[i].length;)t=c[i].shift(),n=h[t][0],i!=(r=h[t][1])?(c[r]=c[r].filter((function(e){return e!=t})),i=r):s||i==n||(c[n]=c[n].filter((function(e){return e!=t})),i=n),a.unshift(t),a.unshift(i);return a},g=[],f=[];for(f=p(i);1!=f.length;)0==c[f[0]].length?(g.unshift(l.getElementById(f.shift())),g.unshift(l.getElementById(f.shift()))):f=p(f.shift()).concat(f);for(var v in g.unshift(l.getElementById(f.shift())),c)if(c[v].length)return d;return d.found=!0,d.trail=this.spawn(g,!0),d}},mr=function(){var e=this,t={},n=0,r=0,i=[],a=[],o={},s=function s(l,u,c){l===c&&(r+=1),t[u]={id:n,low:n++,cutVertex:!1};var h,d,p,g,f=e.getElementById(u).connectedEdges().intersection(e);0===f.size()?i.push(e.spawn(e.getElementById(u))):f.forEach((function(n){h=n.source().id(),d=n.target().id(),(p=h===u?d:h)!==c&&(g=n.id(),o[g]||(o[g]=!0,a.push({x:u,y:p,edge:n})),p in t?t[u].low=Math.min(t[u].low,t[p].id):(s(l,p,u),t[u].low=Math.min(t[u].low,t[p].low),t[u].id<=t[p].low&&(t[u].cutVertex=!0,function(n,r){for(var o=a.length-1,s=[],l=e.spawn();a[o].x!=n||a[o].y!=r;)s.push(a.pop().edge),o--;s.push(a.pop().edge),s.forEach((function(n){var r=n.connectedNodes().intersection(e);l.merge(n),r.forEach((function(n){var r=n.id(),i=n.connectedEdges().intersection(e);l.merge(n),t[r].cutVertex?l.merge(i.filter((function(e){return e.isLoop()}))):l.merge(i)}))})),i.push(l)}(u,p))))}))};e.forEach((function(e){if(e.isNode()){var n=e.id();n in t||(r=0,s(n,n),t[n].cutVertex=r>1)}}));var l=Object.keys(t).filter((function(e){return t[e].cutVertex})).map((function(t){return e.getElementById(t)}));return{cut:e.spawn(l),components:i}},br=function(){var e=this,t={},n=0,r=[],i=[],a=e.spawn(e),o=function o(s){if(i.push(s),t[s]={index:n,low:n++,explored:!1},e.getElementById(s).connectedEdges().intersection(e).forEach((function(e){var n=e.target().id();n!==s&&(n in t||o(n),t[n].explored||(t[s].low=Math.min(t[s].low,t[n].low)))})),t[s].index===t[s].low){for(var l=e.spawn();;){var u=i.pop();if(l.merge(e.getElementById(u)),t[u].low=t[s].index,t[u].explored=!0,u===s)break}var c=l.edgesWith(l),h=l.merge(c);r.push(h),a=a.difference(h)}};return e.forEach((function(e){if(e.isNode()){var n=e.id();n in t||o(n)}})),{cut:a,components:r}},xr={};[ut,gt,ft,yt,bt,wt,Dt,vn,mn,xn,En,Mn,nr,cr,fr,yr,{hopcroftTarjanBiconnected:mr,htbc:mr,htb:mr,hopcroftTarjanBiconnectedComponents:mr},{tarjanStronglyConnected:br,tsc:br,tscc:br,tarjanStronglyConnectedComponents:br}].forEach((function(e){H(xr,e)}));var wr=function e(t){if(!(this instanceof e))return new e(t);this.id="Thenable/1.0.7",this.state=0,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},"function"==typeof t&&t.call(this,this.fulfill.bind(this),this.reject.bind(this))};wr.prototype={fulfill:function(e){return Er(this,1,"fulfillValue",e)},reject:function(e){return Er(this,2,"rejectReason",e)},then:function(e,t){var n=this,r=new wr;return n.onFulfilled.push(Dr(e,r,"fulfill")),n.onRejected.push(Dr(t,r,"reject")),_r(n),r.proxy}};var Er=function(e,t,n,r){return 0===e.state&&(e.state=t,e[n]=r,_r(e)),e},_r=function(e){1===e.state?Tr(e,"onFulfilled",e.fulfillValue):2===e.state&&Tr(e,"onRejected",e.rejectReason)},Tr=function(e,t,n){if(0!==e[t].length){var r=e[t];e[t]=[];var i=function(){for(var e=0;e0:void 0}},clearQueue:function(){return function(){var e=this,t=void 0!==e.length?e:[e];if(!(this._private.cy||this).styleEnabled())return this;for(var n=0;n-1},ei.prototype.set=function(e,t){var n=this.__data__,r=Qr(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this};var ti=ei,ni=jr(te,"Map"),ri=function(e,t){var n,r,i=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?i["string"==typeof t?"string":"hash"]:i.map};function ii(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t-1&&e%1==0&&e0&&this.spawn(r).updateStyle().emit("class"),t},addClass:function(e){return this.toggleClass(e,!0)},hasClass:function(e){var t=this[0];return null!=t&&t._private.classes.has(e)},toggleClass:function(e,t){D(e)||(e=e.match(/\S+/g)||[]);for(var n=this,r=void 0===t,i=[],a=0,o=n.length;a0&&this.spawn(i).updateStyle().emit("class"),n},removeClass:function(e){return this.toggleClass(e,!1)},flashClass:function(e,t){var n=this;if(null==t)t=250;else if(0===t)return n;return n.addClass(e),setTimeout((function(){n.removeClass(e)}),t),n}};Si.className=Si.classNames=Si.classes;var Mi={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:"\"(?:\\\\\"|[^\"])*\"|'(?:\\\\'|[^'])*'",number:Y,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Mi.variable="(?:[\\w-.]|(?:\\\\"+Mi.metaChar+"))+",Mi.className="(?:[\\w-]|(?:\\\\"+Mi.metaChar+"))+",Mi.value=Mi.string+"|"+Mi.number,Mi.id=Mi.variable,function(){var e,t,n;for(e=Mi.comparatorOp.split("|"),n=0;n=0||"="!==t&&(Mi.comparatorOp+="|\\!"+t)}();var Ii=20,Oi=[{selector:":selected",matches:function(e){return e.selected()}},{selector:":unselected",matches:function(e){return!e.selected()}},{selector:":selectable",matches:function(e){return e.selectable()}},{selector:":unselectable",matches:function(e){return!e.selectable()}},{selector:":locked",matches:function(e){return e.locked()}},{selector:":unlocked",matches:function(e){return!e.locked()}},{selector:":visible",matches:function(e){return e.visible()}},{selector:":hidden",matches:function(e){return!e.visible()}},{selector:":transparent",matches:function(e){return e.transparent()}},{selector:":grabbed",matches:function(e){return e.grabbed()}},{selector:":free",matches:function(e){return!e.grabbed()}},{selector:":removed",matches:function(e){return e.removed()}},{selector:":inside",matches:function(e){return!e.removed()}},{selector:":grabbable",matches:function(e){return e.grabbable()}},{selector:":ungrabbable",matches:function(e){return!e.grabbable()}},{selector:":animated",matches:function(e){return e.animated()}},{selector:":unanimated",matches:function(e){return!e.animated()}},{selector:":parent",matches:function(e){return e.isParent()}},{selector:":childless",matches:function(e){return e.isChildless()}},{selector:":child",matches:function(e){return e.isChild()}},{selector:":orphan",matches:function(e){return e.isOrphan()}},{selector:":nonorphan",matches:function(e){return e.isChild()}},{selector:":compound",matches:function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()}},{selector:":loop",matches:function(e){return e.isLoop()}},{selector:":simple",matches:function(e){return e.isSimple()}},{selector:":active",matches:function(e){return e.active()}},{selector:":inactive",matches:function(e){return!e.active()}},{selector:":backgrounding",matches:function(e){return e.backgrounding()}},{selector:":nonbackgrounding",matches:function(e){return!e.backgrounding()}}].sort((function(e,t){return function(e,t){return-1*q(e,t)}(e.selector,t.selector)})),Pi=function(){for(var e,t={},n=0;n0&&u.edgeCount>0)return We("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(u.edgeCount>1)return We("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;1===u.edgeCount&&We("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},toString:function(){if(null!=this.toStringCache)return this.toStringCache;for(var e=function(e){return null==e?"":e},t=function(t){return _(t)?'"'+t+'"':e(t)},n=function(e){return" "+e+" "},r=function(i,a){return i.checks.reduce((function(o,s,l){return o+(a===i&&0===l?"$":"")+function(i,a){var o=i.type,s=i.value;switch(o){case 0:var l=e(s);return l.substring(0,l.length-1);case 3:var u=i.field,c=i.operator;return"["+u+n(e(c))+t(s)+"]";case 5:var h=i.operator,d=i.field;return"["+e(h)+d+"]";case 4:return"["+i.field+"]";case 6:var p=i.operator;return"[["+i.field+n(e(p))+t(s)+"]]";case 7:return s;case 8:return"#"+s;case 9:return"."+s;case 17:case 15:return r(i.parent,a)+n(">")+r(i.child,a);case 18:case 16:return r(i.ancestor,a)+" "+r(i.descendant,a);case 19:var g=r(i.left,a),f=r(i.subject,a),v=r(i.right,a);return g+(g.length>0?" ":"")+f+v;case Ii:return""}}(s,a)}),"")},i="",a=0;a1&&a=0&&(t=t.replace("!",""),c=!0),t.indexOf("@")>=0&&(t=t.replace("@",""),u=!0),(o||l||u)&&(i=o||s?""+e:"",a=""+n),u&&(e=i=i.toLowerCase(),n=a=a.toLowerCase()),t){case"*=":r=i.indexOf(a)>=0;break;case"$=":r=i.indexOf(a,i.length-a.length)>=0;break;case"^=":r=0===i.indexOf(a);break;case"=":r=e===n;break;case">":h=!0,r=e>n;break;case">=":h=!0,r=e>=n;break;case"<":h=!0,r=e0;){var u=i.shift();t(u),a.add(u.id()),o&&r(i,a,u)}return e}function ta(e,t,n){if(n.isParent())for(var r=n._private.children,i=0;i1&&void 0!==arguments[1])||arguments[1],ta)},Ji.forEachUp=function(e){return ea(this,e,!(arguments.length>1&&void 0!==arguments[1])||arguments[1],na)},Ji.forEachUpAndDown=function(e){return ea(this,e,!(arguments.length>1&&void 0!==arguments[1])||arguments[1],ra)},Ji.ancestors=Ji.parents,(Ki=Zi={data:ki.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:ki.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:ki.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:ki.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:ki.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:ki.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var e=this[0];if(e)return e._private.data.id}}).attr=Ki.data,Ki.removeAttr=Ki.removeData;var ia,aa,oa=Zi,sa={};function la(e){return function(t){var n=this;if(void 0===t&&(t=!0),0!==n.length&&n.isNode()&&!n.removed()){for(var r=0,i=n[0],a=i._private.edges,o=0;ot})),minIndegree:ua("indegree",(function(e,t){return et})),minOutdegree:ua("outdegree",(function(e,t){return et}))}),H(sa,{totalDegree:function(e){for(var t=0,n=this.nodes(),r=0;r0,c=u;u&&(l=l[0]);var h=c?l.position():{x:0,y:0};return i={x:s.x-h.x,y:s.y-h.y},void 0===e?i:i[e]}for(var d=0;d0,v=f;f&&(g=g[0]);var y=v?g.position():{x:0,y:0};void 0!==t?p.position(e,t+y[e]):void 0!==i&&p.position({x:i.x+y.x,y:i.y+y.y})}}else if(!a)return;return this}},ia.modelPosition=ia.point=ia.position,ia.modelPositions=ia.points=ia.positions,ia.renderedPoint=ia.renderedPosition,ia.relativePoint=ia.relativePosition;var da,pa,ga=aa;da=pa={},pa.renderedBoundingBox=function(e){var t=this.boundingBox(e),n=this.cy(),r=n.zoom(),i=n.pan(),a=t.x1*r+i.x,o=t.x2*r+i.x,s=t.y1*r+i.y,l=t.y2*r+i.y;return{x1:a,x2:o,y1:s,y2:l,w:o-a,h:l-s}},pa.dirtyCompoundBoundsCache=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();return t.styleEnabled()&&t.hasCompoundNodes()?(this.forEachUp((function(t){if(t.isParent()){var n=t._private;n.compoundBoundsClean=!1,n.bbCache=null,e||t.emitAndNotify("bounds")}})),this):this},pa.updateCompoundBounds=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();if(!t.styleEnabled()||!t.hasCompoundNodes())return this;if(!e&&t.batching())return this;function n(e){if(e.isParent()){var t=e._private,n=e.children(),r="include"===e.pstyle("compound-sizing-wrt-labels").value,i={width:{val:e.pstyle("min-width").pfValue,left:e.pstyle("min-width-bias-left"),right:e.pstyle("min-width-bias-right")},height:{val:e.pstyle("min-height").pfValue,top:e.pstyle("min-height-bias-top"),bottom:e.pstyle("min-height-bias-bottom")}},a=n.boundingBox({includeLabels:r,includeOverlays:!1,useCache:!1}),o=t.position;0!==a.w&&0!==a.h||((a={w:e.pstyle("width").pfValue,h:e.pstyle("height").pfValue}).x1=o.x-a.w/2,a.x2=o.x+a.w/2,a.y1=o.y-a.h/2,a.y2=o.y+a.h/2);var s=i.width.left.value;"px"===i.width.left.units&&i.width.val>0&&(s=100*s/i.width.val);var l=i.width.right.value;"px"===i.width.right.units&&i.width.val>0&&(l=100*l/i.width.val);var u=i.height.top.value;"px"===i.height.top.units&&i.height.val>0&&(u=100*u/i.height.val);var c=i.height.bottom.value;"px"===i.height.bottom.units&&i.height.val>0&&(c=100*c/i.height.val);var h=y(i.width.val-a.w,s,l),d=h.biasDiff,p=h.biasComplementDiff,g=y(i.height.val-a.h,u,c),f=g.biasDiff,v=g.biasComplementDiff;t.autoPadding=function(e,t,n,r){if("%"!==n.units)return"px"===n.units?n.pfValue:0;switch(r){case"width":return e>0?n.pfValue*e:0;case"height":return t>0?n.pfValue*t:0;case"average":return e>0&&t>0?n.pfValue*(e+t)/2:0;case"min":return e>0&&t>0?e>t?n.pfValue*t:n.pfValue*e:0;case"max":return e>0&&t>0?e>t?n.pfValue*e:n.pfValue*t:0;default:return 0}}(a.w,a.h,e.pstyle("padding"),e.pstyle("padding-relative-to").value),t.autoWidth=Math.max(a.w,i.width.val),o.x=(-d+a.x1+a.x2+p)/2,t.autoHeight=Math.max(a.h,i.height.val),o.y=(-f+a.y1+a.y2+v)/2}function y(e,t,n){var r=0,i=0,a=t+n;return e>0&&a>0&&(r=t/a*e,i=n/a*e),{biasDiff:r,biasComplementDiff:i}}}for(var r=0;re.x2?r:e.x2,e.y1=ne.y2?i:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},ya=function(e,t){return null==t?e:va(e,t.x1,t.y1,t.x2,t.y2)},ma=function(e,t,n){return nt(e,t,n)},ba=function(e,t,n){if(!t.cy().headless()){var r,i,a=t._private,o=a.rstyle,s=o.arrowWidth/2;if("none"!==t.pstyle(n+"-arrow-shape").value){"source"===n?(r=o.srcX,i=o.srcY):"target"===n?(r=o.tgtX,i=o.tgtY):(r=o.midX,i=o.midY);var l=a.arrowBounds=a.arrowBounds||{},u=l[n]=l[n]||{};u.x1=r-s,u.y1=i-s,u.x2=r+s,u.y2=i+s,u.w=u.x2-u.x1,u.h=u.y2-u.y1,Yt(u,1),va(e,u.x1,u.y1,u.x2,u.y2)}}},xa=function(e,t,n){if(!t.cy().headless()){var r;r=n?n+"-":"";var i=t._private,a=i.rstyle;if(t.pstyle(r+"label").strValue){var o,s,l,u,c=t.pstyle("text-halign"),h=t.pstyle("text-valign"),d=ma(a,"labelWidth",n),p=ma(a,"labelHeight",n),g=ma(a,"labelX",n),f=ma(a,"labelY",n),v=t.pstyle(r+"text-margin-x").pfValue,y=t.pstyle(r+"text-margin-y").pfValue,m=t.isEdge(),b=t.pstyle(r+"text-rotation"),x=t.pstyle("text-outline-width").pfValue,w=t.pstyle("text-border-width").pfValue/2,E=t.pstyle("text-background-padding").pfValue,_=p,T=d,D=T/2,C=_/2;if(m)o=g-D,s=g+D,l=f-C,u=f+C;else{switch(c.value){case"left":o=g-T,s=g;break;case"center":o=g-D,s=g+D;break;case"right":o=g,s=g+T}switch(h.value){case"top":l=f-_,u=f;break;case"center":l=f-C,u=f+C;break;case"bottom":l=f,u=f+_}}o+=v-Math.max(x,w)-E-2,s+=v+Math.max(x,w)+E+2,l+=y-Math.max(x,w)-E-2,u+=y+Math.max(x,w)+E+2;var N=n||"main",A=i.labelBounds,k=A[N]=A[N]||{};k.x1=o,k.y1=l,k.x2=s,k.y2=u,k.w=s-o,k.h=u-l;var L=m&&"autorotate"===b.strValue,S=null!=b.pfValue&&0!==b.pfValue;if(L||S){var M=L?ma(i.rstyle,"labelAngle",n):b.pfValue,I=Math.cos(M),O=Math.sin(M),P=(o+s)/2,R=(l+u)/2;if(!m){switch(c.value){case"left":P=s;break;case"right":P=o}switch(h.value){case"top":R=u;break;case"bottom":R=l}}var B=function(e,t){return{x:(e-=P)*I-(t-=R)*O+P,y:e*O+t*I+R}},F=B(o,l),z=B(o,u),G=B(s,l),Y=B(s,u);o=Math.min(F.x,z.x,G.x,Y.x),s=Math.max(F.x,z.x,G.x,Y.x),l=Math.min(F.y,z.y,G.y,Y.y),u=Math.max(F.y,z.y,G.y,Y.y)}var V=N+"Rot",X=A[V]=A[V]||{};X.x1=o,X.y1=l,X.x2=s,X.y2=u,X.w=s-o,X.h=u-l,va(e,o,l,s,u),va(i.labelBounds.all,o,l,s,u)}return e}},wa=function(e){var t=0,n=function(e){return(e?1:0)<0&&a>0){var o=t.pstyle("outline-offset").value,s=t.pstyle("shape").value,l=a+o,u=(e.w+2*l)/e.w,c=(e.h+2*l)/e.h,h=0;["diamond","pentagon","round-triangle"].includes(s)?(u=(e.w+2.4*l)/e.w,h=-l/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(s)?u=(e.w+2.4*l)/e.w:"star"===s?(u=(e.w+2.8*l)/e.w,c=(e.h+2.6*l)/e.h,h=-l/3.8):"triangle"===s?(u=(e.w+2.8*l)/e.w,c=(e.h+2.4*l)/e.h,h=-l/1.4):"vee"===s&&(u=(e.w+4.4*l)/e.w,c=(e.h+3.8*l)/e.h,h=.5*-l);var d=e.h*c-e.h,p=e.w*u-e.w;if(Vt(e,[Math.ceil(d/2),Math.ceil(p/2)]),0!==h){var g=(r=h,{x1:(n=e).x1+0,x2:n.x2+0,y1:n.y1+r,y2:n.y2+r,w:n.w,h:n.h});zt(e,g)}}}}(d,e)}else if(f&&t.includeEdges)if(c&&!h){var N=e.pstyle("curve-style").strValue;if(n=Math.min(v.srcX,v.midX,v.tgtX),r=Math.max(v.srcX,v.midX,v.tgtX),i=Math.min(v.srcY,v.midY,v.tgtY),a=Math.max(v.srcY,v.midY,v.tgtY),va(d,n-=_,i-=_,r+=_,a+=_),"haystack"===N){var A=v.haystackPts;if(A&&2===A.length){if(n=A[0].x,i=A[0].y,n>(r=A[1].x)){var k=n;n=r,r=k}if(i>(a=A[1].y)){var L=i;i=a,a=L}va(d,n-_,i-_,r+_,a+_)}}else if("bezier"===N||"unbundled-bezier"===N||N.endsWith("segments")||N.endsWith("taxi")){var S;switch(N){case"bezier":case"unbundled-bezier":S=v.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":S=v.linePts}if(null!=S)for(var M=0;M(r=P.x)){var R=n;n=r,r=R}if((i=O.y)>(a=P.y)){var B=i;i=a,a=B}va(d,n-=_,i-=_,r+=_,a+=_)}if(c&&t.includeEdges&&f&&(ba(d,e,"mid-source"),ba(d,e,"mid-target"),ba(d,e,"source"),ba(d,e,"target")),c&&"yes"===e.pstyle("ghost").value){var F=e.pstyle("ghost-offset-x").pfValue,z=e.pstyle("ghost-offset-y").pfValue;va(d,d.x1+F,d.y1+z,d.x2+F,d.y2+z)}var G=p.bodyBounds=p.bodyBounds||{};Xt(G,d),Vt(G,y),Yt(G,1),c&&(n=d.x1,r=d.x2,i=d.y1,a=d.y2,va(d,n-E,i-E,r+E,a+E));var Y=p.overlayBounds=p.overlayBounds||{};Xt(Y,d),Vt(Y,y),Yt(Y,1);var V=p.labelBounds=p.labelBounds||{};null!=V.all?((l=V.all).x1=1/0,l.y1=1/0,l.x2=-1/0,l.y2=-1/0,l.w=0,l.h=0):V.all=Ft(),c&&t.includeLabels&&(t.includeMainLabels&&xa(d,e,null),f&&(t.includeSourceLabels&&xa(d,e,"source"),t.includeTargetLabels&&xa(d,e,"target")))}return d.x1=fa(d.x1),d.y1=fa(d.y1),d.x2=fa(d.x2),d.y2=fa(d.y2),d.w=fa(d.x2-d.x1),d.h=fa(d.y2-d.y1),d.w>0&&d.h>0&&b&&(Vt(d,y),Yt(d,1)),d}(e,Ta),r.bbCache=n,r.bbCachePosKey=o):n=r.bbCache,!a){var c=e.isNode();n=Ft(),(t.includeNodes&&c||t.includeEdges&&!c)&&(t.includeOverlays?ya(n,r.overlayBounds):ya(n,r.bodyBounds)),t.includeLabels&&(t.includeMainLabels&&(!i||t.includeSourceLabels&&t.includeTargetLabels)?ya(n,r.labelBounds.all):(t.includeMainLabels&&ya(n,r.labelBounds.mainRot),t.includeSourceLabels&&ya(n,r.labelBounds.sourceRot),t.includeTargetLabels&&ya(n,r.labelBounds.targetRot))),n.w=n.x2-n.x1,n.h=n.y2-n.y1}return n},Ta={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,includeOutlines:!0,useCache:!0},Da=wa(Ta),Ca=Je(Ta);pa.boundingBox=function(e){var t;if(1!==this.length||null==this[0]._private.bbCache||this[0]._private.styleDirty||void 0!==e&&void 0!==e.useCache&&!0!==e.useCache){t=Ft();var n=Ca(e=e||Ta),r=this;if(r.cy().styleEnabled())for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:Ya,t=arguments.length>1?arguments[1]:void 0,n=0;n=0;s--)o(s);return this},Xa.removeAllListeners=function(){return this.removeListener("*")},Xa.emit=Xa.trigger=function(e,t,n){var r=this.listeners,i=r.length;return this.emitting++,D(t)||(t=[t]),function(e,t,n){if("event"!==E(n))if(C(n))t(e,ja(e,n));else for(var r=D(n)?n:n.split(/\s+/),i=0;i1&&!r){var i=this.length-1,a=this[i],o=a._private.data.id;this[i]=void 0,this[e]=a,n.set(o,{ele:a,index:e})}return this.length--,this},unmergeOne:function(e){e=e[0];var t=this._private,n=e._private.data.id,r=t.map.get(n);if(!r)return this;var i=r.index;return this.unmergeAt(i),this},unmerge:function(e){var t=this._private.cy;if(!e)return this;if(e&&_(e)){var n=e;e=t.mutableElements().filter(n)}for(var r=0;r=0;t--)e(this[t])&&this.unmergeAt(t);return this},map:function(e,t){for(var n=[],r=this,i=0;ir&&(r=s,n=o)}return{value:r,ele:n}},min:function(e,t){for(var n,r=1/0,i=this,a=0;a=0&&i1&&void 0!==arguments[1])||arguments[1],n=this[0],r=n.cy();if(r.styleEnabled()&&n){this.cleanStyle();var i=n._private.style[e];return null!=i?i:t?r.style().getDefaultProperty(e):null}},numericStyle:function(e){var t=this[0];if(t.cy().styleEnabled()&&t){var n=t.pstyle(e);return void 0!==n.pfValue?n.pfValue:n.value}},numericStyleUnits:function(e){var t=this[0];if(t.cy().styleEnabled())return t?t.pstyle(e).units:void 0},renderedStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=this[0];return n?t.style().getRenderedStyle(n,e):void 0},style:function(e,t){var n=this.cy();if(!n.styleEnabled())return this;var r=!1,i=n.style();if(C(e)){var a=e;i.applyBypass(this,a,r),this.emitAndNotify("style")}else if(_(e)){if(void 0===t){var o=this[0];return o?i.getStylePropertyValue(o,e):void 0}i.applyBypass(this,e,t,r),this.emitAndNotify("style")}else if(void 0===e){var s=this[0];return s?i.getRawStyle(s):void 0}return this},removeStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=!1,r=t.style(),i=this;if(void 0===e)for(var a=0;a0&&t.push(c[0]),t.push(s[0])}return this.spawn(t,!0).filter(e)}),"neighborhood"),closedNeighborhood:function(e){return this.neighborhood().add(this).filter(e)},openNeighborhood:function(e){return this.neighborhood(e)}}),yo.neighbourhood=yo.neighborhood,yo.closedNeighbourhood=yo.closedNeighborhood,yo.openNeighbourhood=yo.openNeighborhood,H(yo,{source:Qi((function(e){var t,n=this[0];return n&&(t=n._private.source||n.cy().collection()),t&&e?t.filter(e):t}),"source"),target:Qi((function(e){var t,n=this[0];return n&&(t=n._private.target||n.cy().collection()),t&&e?t.filter(e):t}),"target"),sources:wo({attr:"source"}),targets:wo({attr:"target"})}),H(yo,{edgesWith:Qi(Eo(),"edgesWith"),edgesTo:Qi(Eo({thisIsSrc:!0}),"edgesTo")}),H(yo,{connectedEdges:Qi((function(e){for(var t=[],n=0;n0);return a},component:function(){var e=this[0];return e.cy().mutableElements().components(e)[0]}}),yo.componentsOf=yo.components;var To=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(void 0!==e){var i=new it,a=!1;if(t){if(t.length>0&&C(t[0])&&!L(t[0])){a=!0;for(var o=[],s=new ot,l=0,u=t.length;l0&&void 0!==arguments[0])||arguments[0],r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this,a=i.cy(),o=a._private,s=[],l=[],u=0,c=i.length;u0){for(var B=e.length===i.length?i:new To(a,e),F=0;F0&&void 0!==arguments[0])||arguments[0],t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this,r=[],i={},a=n._private.cy;function o(e){var n=i[e.id()];t&&e.removed()||n||(i[e.id()]=!0,e.isNode()?(r.push(e),function(e){for(var t=e._private.edges,n=0;n0&&(e?_.emitAndNotify("remove"):t&&_.emit("remove"));for(var T=0;T=.001?function(t,r){for(var i=0;i<4;++i){var a=d(r,e,n);if(0===a)return r;r-=(h(r,e,n)-t)/a}return r}(t,o):0===l?o:function(t,r,i){var a,o,s=0;do{(a=h(o=r+(i-r)/2,e,n)-t)>0?i=o:r=o}while(Math.abs(a)>1e-7&&++s<10);return o}(t,r,r+i)}(a),t,r)};g.getControlPoints=function(){return[{x:e,y:t},{x:n,y:r}]};var f="generateBezier("+[e,t,n,r]+")";return g.toString=function(){return f},g}var Ao=function(){function e(e){return-e.tension*e.x-e.friction*e.v}function t(t,n,r){var i={x:t.x+r.dx*n,v:t.v+r.dv*n,tension:t.tension,friction:t.friction};return{dx:i.v,dv:e(i)}}function n(n,r){var i={dx:n.v,dv:e(n)},a=t(n,.5*r,i),o=t(n,.5*r,a),s=t(n,r,o),l=1/6*(i.dx+2*(a.dx+o.dx)+s.dx),u=1/6*(i.dv+2*(a.dv+o.dv)+s.dv);return n.x=n.x+l*r,n.v=n.v+u*r,n}return function e(t,r,i){var a,o,s,l={x:-1,v:0,tension:null,friction:null},u=[0],c=0,h=1e-4;for(t=parseFloat(t)||500,r=parseFloat(r)||20,i=i||null,l.tension=t,l.friction=r,o=(a=null!==i)?(c=e(t,r))/i*.016:.016;s=n(s||l,o),u.push(1+s.x),c+=16,Math.abs(s.x)>h&&Math.abs(s.v)>h;);return a?function(e){return u[e*(u.length-1)|0]}:c}}(),ko=function(e,t,n,r){var i=No(e,t,n,r);return function(e,t,n){return e+(t-e)*i(n)}},Lo={linear:function(e,t,n){return e+(t-e)*n},ease:ko(.25,.1,.25,1),"ease-in":ko(.42,0,1,1),"ease-out":ko(0,0,.58,1),"ease-in-out":ko(.42,0,.58,1),"ease-in-sine":ko(.47,0,.745,.715),"ease-out-sine":ko(.39,.575,.565,1),"ease-in-out-sine":ko(.445,.05,.55,.95),"ease-in-quad":ko(.55,.085,.68,.53),"ease-out-quad":ko(.25,.46,.45,.94),"ease-in-out-quad":ko(.455,.03,.515,.955),"ease-in-cubic":ko(.55,.055,.675,.19),"ease-out-cubic":ko(.215,.61,.355,1),"ease-in-out-cubic":ko(.645,.045,.355,1),"ease-in-quart":ko(.895,.03,.685,.22),"ease-out-quart":ko(.165,.84,.44,1),"ease-in-out-quart":ko(.77,0,.175,1),"ease-in-quint":ko(.755,.05,.855,.06),"ease-out-quint":ko(.23,1,.32,1),"ease-in-out-quint":ko(.86,0,.07,1),"ease-in-expo":ko(.95,.05,.795,.035),"ease-out-expo":ko(.19,1,.22,1),"ease-in-out-expo":ko(1,0,0,1),"ease-in-circ":ko(.6,.04,.98,.335),"ease-out-circ":ko(.075,.82,.165,1),"ease-in-out-circ":ko(.785,.135,.15,.86),spring:function(e,t,n){if(0===n)return Lo.linear;var r=Ao(e,t,n);return function(e,t,n){return e+(t-e)*r(n)}},"cubic-bezier":ko};function So(e,t,n,r,i){if(1===r)return n;if(t===n)return n;var a=i(t,n,r);return null==e||((e.roundValue||e.color)&&(a=Math.round(a)),void 0!==e.min&&(a=Math.max(a,e.min)),void 0!==e.max&&(a=Math.min(a,e.max))),a}function Mo(e,t){return null!=e.pfValue||null!=e.value?null==e.pfValue||null!=t&&"%"===t.type.units?e.value:e.pfValue:e}function Io(e,t,n,r,i){var a=null!=i?i.type:null;n<0?n=0:n>1&&(n=1);var o=Mo(e,i),s=Mo(t,i);if(N(o)&&N(s))return So(a,o,s,n,r);if(D(o)&&D(s)){for(var l=[],u=0;u0?("spring"===h&&d.push(o.duration),o.easingImpl=Lo[h].apply(null,d)):o.easingImpl=Lo[h]}var p,g=o.easingImpl;if(p=0===o.duration?1:(n-l)/o.duration,o.applying&&(p=o.progress),p<0?p=0:p>1&&(p=1),null==o.delay){var f=o.startPosition,v=o.position;if(v&&i&&!e.locked()){var y={};Po(f.x,v.x)&&(y.x=Io(f.x,v.x,p,g)),Po(f.y,v.y)&&(y.y=Io(f.y,v.y,p,g)),e.position(y)}var m=o.startPan,b=o.pan,x=a.pan,w=null!=b&&r;w&&(Po(m.x,b.x)&&(x.x=Io(m.x,b.x,p,g)),Po(m.y,b.y)&&(x.y=Io(m.y,b.y,p,g)),e.emit("pan"));var E=o.startZoom,T=o.zoom,D=null!=T&&r;D&&(Po(E,T)&&(a.zoom=Bt(a.minZoom,Io(E,T,p,g),a.maxZoom)),e.emit("zoom")),(w||D)&&e.emit("viewport");var C=o.style;if(C&&C.length>0&&i){for(var N=0;N=0;t--)(0,e[t])();e.splice(0,e.length)},c=a.length-1;c>=0;c--){var h=a[c],d=h._private;d.stopped?(a.splice(c,1),d.hooked=!1,d.playing=!1,d.started=!1,u(d.frames)):(d.playing||d.applying)&&(d.playing&&d.applying&&(d.applying=!1),d.started||Ro(0,h,e),Oo(t,h,e,n),d.applying&&(d.applying=!1),u(d.frames),null!=d.step&&d.step(e),h.completed()&&(a.splice(c,1),d.hooked=!1,d.playing=!1,d.started=!1,u(d.completes)),s=!0)}return n||0!==a.length||0!==o.length||r.push(t),s}for(var a=!1,o=0;o0?t.notify("draw",n):t.notify("draw")),n.unmerge(r),t.emit("step")}var Fo={animate:ki.animate(),animation:ki.animation(),animated:ki.animated(),clearQueue:ki.clearQueue(),delay:ki.delay(),delayAnimation:ki.delayAnimation(),stop:ki.stop(),addToAnimationPool:function(e){this.styleEnabled()&&this._private.aniEles.merge(e)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var e=this;if(e._private.animationsRunning=!0,e.styleEnabled()){var t=e.renderer();t&&t.beforeRender?t.beforeRender((function(t,n){Bo(n,e)}),t.beforeRenderPriorities.animations):function t(){e._private.animationsRunning&&Ce((function(n){Bo(n,e),t()}))}()}}},zo={qualifierCompare:function(e,t){return null==e||null==t?null==e&&null==t:e.sameText(t)},eventMatches:function(e,t,n){var r=t.qualifier;return null==r||e!==n.target&&L(n.target)&&r.matches(n.target)},addEventFields:function(e,t){t.cy=e,t.target=e},callbackContext:function(e,t,n){return null!=t.qualifier?n.target:e}},Go=function(e){return _(e)?new Hi(e):e},Yo={createEmitter:function(){var e=this._private;return e.emitter||(e.emitter=new Va(zo,this)),this},emitter:function(){return this._private.emitter},on:function(e,t,n){return this.emitter().on(e,Go(t),n),this},removeListener:function(e,t,n){return this.emitter().removeListener(e,Go(t),n),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(e,t,n){return this.emitter().one(e,Go(t),n),this},once:function(e,t,n){return this.emitter().one(e,Go(t),n),this},emit:function(e,t){return this.emitter().emit(e,t),this},emitAndNotify:function(e,t){return this.emit(e),this.notify(e,t),this}};ki.eventAliasesOn(Yo);var Vo={png:function(e){return e=e||{},this._private.renderer.png(e)},jpg:function(e){var t=this._private.renderer;return(e=e||{}).bg=e.bg||"#fff",t.jpg(e)}};Vo.jpeg=Vo.jpg;var Xo={layout:function(e){var t=this;if(null!=e)if(null!=e.name){var n,r=e.name,i=t.extension("layout",r);if(null!=i)return n=_(e.eles)?t.$(e.eles):null!=e.eles?e.eles:t.$(),new i(H({},e,{cy:t,eles:n}));qe("No such layout `"+r+"` found. Did you forget to import it and `cytoscape.use()` it?")}else qe("A `name` must be specified to make a layout");else qe("Layout options must be specified to make a layout")}};Xo.createLayout=Xo.makeLayout=Xo.layout;var Uo={notify:function(e,t){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var r=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();null!=t&&r.merge(t)}else if(n.notificationsEnabled){var i=this.renderer();!this.destroyed()&&i&&i.notify(e,t)}},notifications:function(e){var t=this._private;return void 0===e?t.notificationsEnabled:(t.notificationsEnabled=!!e,this)},noNotifications:function(e){this.notifications(!1),e(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var e=this._private;return null==e.batchCount&&(e.batchCount=0),0===e.batchCount&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},endBatch:function(){var e=this._private;if(0===e.batchCount)return this;if(e.batchCount--,0===e.batchCount){e.batchStyleEles.updateStyle();var t=this.renderer();Object.keys(e.batchNotifications).forEach((function(n){var r=e.batchNotifications[n];r.empty()?t.notify(n):t.notify(n,r)}))}return this},batch:function(e){return this.startBatch(),e(),this.endBatch(),this},batchData:function(e){var t=this;return this.batch((function(){for(var n=Object.keys(e),r=0;r0;)t.removeChild(t.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach((function(e){var t=e._private;t.rscratch={},t.rstyle={},t.animation.current=[],t.animation.queue=[]}))},onRender:function(e){return this.on("render",e)},offRender:function(e){return this.off("render",e)}};qo.invalidateDimensions=qo.resize;var Ho={collection:function(e,t){return _(e)?this.$(e):k(e)?e.collection():D(e)?(t||(t={}),new To(this,e,t.unique,t.removed)):new To(this)},nodes:function(e){var t=this.$((function(e){return e.isNode()}));return e?t.filter(e):t},edges:function(e){var t=this.$((function(e){return e.isEdge()}));return e?t.filter(e):t},$:function(e){var t=this._private.elements;return e?t.filter(e):t.spawnSelf()},mutableElements:function(){return this._private.elements}};Ho.elements=Ho.filter=Ho.$;var Wo={},$o="t";Wo.apply=function(e){for(var t=this,n=t._private.cy.collection(),r=0;r0;if(d||h&&p){var g=void 0;d&&p||d?g=u.properties:p&&(g=u.mappedProperties);for(var f=0;f1&&(v=1),s.color){var w=i.valueMin[0],E=i.valueMax[0],_=i.valueMin[1],T=i.valueMax[1],D=i.valueMin[2],C=i.valueMax[2],A=null==i.valueMin[3]?1:i.valueMin[3],k=null==i.valueMax[3]?1:i.valueMax[3],L=[Math.round(w+(E-w)*v),Math.round(_+(T-_)*v),Math.round(D+(C-D)*v),Math.round(A+(k-A)*v)];n={bypass:i.bypass,name:i.name,value:L,strValue:"rgb("+L[0]+", "+L[1]+", "+L[2]+")"}}else{if(!s.number)return!1;var S=i.valueMin+(i.valueMax-i.valueMin)*v;n=this.parse(i.name,S,i.bypass,d)}if(!n)return f(),!1;n.mapping=i,i=n;break;case o.data:for(var M=i.field.split("."),I=h.data,O=0;O0&&a>0){for(var s={},l=!1,u=0;u0?e.delayAnimation(o).play().promise().then(t):t()})).then((function(){return e.animation({style:s,duration:a,easing:e.pstyle("transition-timing-function").value,queue:!1}).play().promise()})).then((function(){n.removeBypasses(e,i),e.emitAndNotify("style"),r.transitioning=!1}))}else r.transitioning&&(this.removeBypasses(e,i),e.emitAndNotify("style"),r.transitioning=!1)},Wo.checkTrigger=function(e,t,n,r,i,a){var o=this.properties[t],s=i(o);null!=s&&s(n,r)&&a(o)},Wo.checkZOrderTrigger=function(e,t,n,r){var i=this;this.checkTrigger(e,t,n,r,(function(e){return e.triggersZOrder}),(function(){i._private.cy.notify("zorder",e)}))},Wo.checkBoundsTrigger=function(e,t,n,r){this.checkTrigger(e,t,n,r,(function(e){return e.triggersBounds}),(function(i){e.dirtyCompoundBoundsCache(),e.dirtyBoundingBoxCache(),!i.triggersBoundsOfParallelBeziers||"curve-style"!==t||"bezier"!==n&&"bezier"!==r||e.parallelEdges().forEach((function(e){e.isBundledBezier()&&e.dirtyBoundingBoxCache()})),!i.triggersBoundsOfConnectedEdges||"display"!==t||"none"!==n&&"none"!==r||e.connectedEdges().forEach((function(e){e.dirtyBoundingBoxCache()}))}))},Wo.checkTriggers=function(e,t,n,r){e.dirtyStyleCache(),this.checkZOrderTrigger(e,t,n,r),this.checkBoundsTrigger(e,t,n,r)};var Ko={applyBypass:function(e,t,n,r){var i=[];if("*"===t||"**"===t){if(void 0!==n)for(var a=0;at.length?a.substr(t.length):""}function s(){n=n.length>r.length?n.substr(r.length):""}for(a=a.replace(/[/][*](\s|.)+?[*][/]/g,"");!a.match(/^\s*$/);){var l=a.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!l){We("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+a);break}t=l[0];var u=l[1];if("core"!==u&&new Hi(u).invalid)We("Skipping parsing of block: Invalid selector found in string stylesheet: "+u),o();else{var c=l[2],h=!1;n=c;for(var d=[];!n.match(/^\s*$/);){var p=n.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!p){We("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+c),h=!0;break}r=p[0];var g=p[1],f=p[2];this.properties[g]?i.parse(g,f)?(d.push({name:g,val:f}),s()):(We("Skipping property: Invalid property definition in: "+r),s()):(We("Skipping property: Invalid property name in: "+r),s())}if(h){o();break}i.selector(u);for(var v=0;v=7&&"d"===t[0]&&(u=new RegExp(s.data.regex).exec(t))){if(n)return!1;var d=s.data;return{name:e,value:u,strValue:""+t,mapped:d,field:u[1],bypass:n}}if(t.length>=10&&"m"===t[0]&&(c=new RegExp(s.mapData.regex).exec(t))){if(n)return!1;if(h.multiple)return!1;var p=s.mapData;if(!h.color&&!h.number)return!1;var g=this.parse(e,c[4]);if(!g||g.mapped)return!1;var f=this.parse(e,c[5]);if(!f||f.mapped)return!1;if(g.pfValue===f.pfValue||g.strValue===f.strValue)return We("`"+e+": "+t+"` is not a valid mapper because the output range is zero; converting to `"+e+": "+g.strValue+"`"),this.parse(e,g.strValue);if(h.color){var v=g.value,y=f.value;if(!(v[0]!==y[0]||v[1]!==y[1]||v[2]!==y[2]||v[3]!==y[3]&&(null!=v[3]&&1!==v[3]||null!=y[3]&&1!==y[3])))return!1}return{name:e,value:c,strValue:""+t,mapped:p,field:c[1],fieldMin:parseFloat(c[2]),fieldMax:parseFloat(c[3]),valueMin:g.value,valueMax:f.value,bypass:n}}}if(h.multiple&&"multiple"!==r){var m;if(m=l?t.split(/\s+/):D(t)?t:[t],h.evenMultiple&&m.length%2!=0)return null;for(var b=[],x=[],w=[],E="",C=!1,A=0;A0?" ":"")+k.strValue}return h.validate&&!h.validate(b,x)?null:h.singleEnum&&C?1===b.length&&_(b[0])?{name:e,value:b[0],strValue:b[0],bypass:n}:null:{name:e,value:b,pfValue:w,strValue:E,bypass:n,units:x}}var L,S,M,I=function(){for(var r=0;rh.max||h.strictMax&&t===h.max))return null;var z={name:e,value:t,strValue:""+t+(O||""),units:O,bypass:n};return h.unitless||"px"!==O&&"em"!==O?z.pfValue=t:z.pfValue="px"!==O&&O?this.getEmSizeInPixels()*t:t,"ms"!==O&&"s"!==O||(z.pfValue="ms"===O?t:1e3*t),"deg"!==O&&"rad"!==O||(z.pfValue="rad"===O?t:(L=t,Math.PI*L/180)),"%"===O&&(z.pfValue=t/100),z}if(h.propList){var G=[],X=""+t;if("none"===X);else{for(var j=X.split(/\s*,\s*|\s+/),q=0;q255)return;t.push(Math.floor(a))}var o=r[1]||r[2]||r[3],s=r[1]&&r[2]&&r[3];if(o&&!s)return;var l=n[4];if(void 0!==l){if((l=parseFloat(l))<0||l>1)return;t.push(l)}}return t}(M)||function(e){var t,n,r,i,a,o,s,l;function u(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}var c=new RegExp("^"+U+"$").exec(e);if(c){if((n=parseInt(c[1]))<0?n=(360- -1*n%360)%360:n>360&&(n%=360),n/=360,(r=parseFloat(c[2]))<0||r>100)return;if(r/=100,(i=parseFloat(c[3]))<0||i>100)return;if(i/=100,void 0!==(a=c[4])&&((a=parseFloat(a))<0||a>1))return;if(0===r)o=s=l=Math.round(255*i);else{var h=i<.5?i*(1+r):i+r-i*r,d=2*i-h;o=Math.round(255*u(d,h,n+1/3)),s=Math.round(255*u(d,h,n)),l=Math.round(255*u(d,h,n-1/3))}t=[o,s,l,a]}return t}(M);return $?{name:e,value:$,pfValue:$,strValue:"rgb("+$[0]+","+$[1]+","+$[2]+")",bypass:n}:null}if(h.regex||h.regexes){if(h.enums){var K=I();if(K)return K}for(var Z=h.regexes?h.regexes:[h.regex],Q=0;Q0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0)return{zoom:o=(o=(o=Math.min((s-2*t)/n.w,(l-2*t)/n.h))>this._private.maxZoom?this._private.maxZoom:o)=n.minZoom&&(n.maxZoom=t),this},minZoom:function(e){return void 0===e?this._private.minZoom:this.zoomRange({min:e})},maxZoom:function(e){return void 0===e?this._private.maxZoom:this.zoomRange({max:e})},getZoomedViewport:function(e){var t,n,r=this._private,i=r.pan,a=r.zoom,o=!1;if(r.zoomingEnabled||(o=!0),N(e)?n=e:C(e)&&(n=e.level,null!=e.position?t=Ct(e.position,a,i):null!=e.renderedPosition&&(t=e.renderedPosition),null==t||r.panningEnabled||(o=!0)),n=(n=n>r.maxZoom?r.maxZoom:n)t.maxZoom||!t.zoomingEnabled?a=!0:(t.zoom=s,i.push("zoom"))}if(r&&(!a||!e.cancelOnFailedZoom)&&t.panningEnabled){var l=e.pan;N(l.x)&&(t.pan.x=l.x,o=!1),N(l.y)&&(t.pan.y=l.y,o=!1),o||i.push("pan")}return i.length>0&&(i.push("viewport"),this.emit(i.join(" ")),this.notify("viewport")),this},center:function(e){var t=this.getCenterPan(e);return t&&(this._private.pan=t,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(e,t){if(this._private.panningEnabled){if(_(e)){var n=e;e=this.mutableElements().filter(n)}else k(e)||(e=this.mutableElements());if(0!==e.length){var r=e.boundingBox(),i=this.width(),a=this.height();return{x:(i-(t=void 0===t?this._private.zoom:t)*(r.x1+r.x2))/2,y:(a-t*(r.y1+r.y2))/2}}}},reset:function(){return this._private.panningEnabled&&this._private.zoomingEnabled?(this.viewport({pan:{x:0,y:0},zoom:1}),this):this},invalidateSize:function(){this._private.sizeCache=null},size:function(){var e,t,n=this._private,r=n.container;return n.sizeCache=n.sizeCache||(r?(e=this.window().getComputedStyle(r),t=function(t){return parseFloat(e.getPropertyValue(t))},{width:r.clientWidth-t("padding-left")-t("padding-right"),height:r.clientHeight-t("padding-top")-t("padding-bottom")}):{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var e=this._private.pan,t=this._private.zoom,n=this.renderedExtent(),r={x1:(n.x1-e.x)/t,x2:(n.x2-e.x)/t,y1:(n.y1-e.y)/t,y2:(n.y2-e.y)/t};return r.w=r.x2-r.x1,r.h=r.y2-r.y1,r},renderedExtent:function(){var e=this.width(),t=this.height();return{x1:0,y1:0,x2:e,y2:t,w:e,h:t}},multiClickDebounceTime:function(e){return e?(this._private.multiClickDebounceTime=e,this):this._private.multiClickDebounceTime}};os.centre=os.center,os.autolockNodes=os.autolock,os.autoungrabifyNodes=os.autoungrabify;var ss={data:ki.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:ki.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:ki.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:ki.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};ss.attr=ss.data,ss.removeAttr=ss.removeData;var ls=function(e){var t=this,n=(e=H({},e)).container;n&&!A(n)&&A(n[0])&&(n=n[0]);var r=n?n._cyreg:null;(r=r||{})&&r.cy&&(r.cy.destroy(),r={});var i=r.readies=r.readies||[];n&&(n._cyreg=r),r.cy=t;var a=void 0!==v&&void 0!==n&&!e.headless,o=e;o.layout=H({name:a?"grid":"null"},o.layout),o.renderer=H({name:a?"canvas":"null"},o.renderer);var s=function(e,t,n){return void 0!==t?t:void 0!==n?n:e},l=this._private={container:n,ready:!1,options:o,elements:new To(this),listeners:[],aniEles:new To(this),data:o.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:s(!0,o.zoomingEnabled),userZoomingEnabled:s(!0,o.userZoomingEnabled),panningEnabled:s(!0,o.panningEnabled),userPanningEnabled:s(!0,o.userPanningEnabled),boxSelectionEnabled:s(!0,o.boxSelectionEnabled),autolock:s(!1,o.autolock,o.autolockNodes),autoungrabify:s(!1,o.autoungrabify,o.autoungrabifyNodes),autounselectify:s(!1,o.autounselectify),styleEnabled:void 0===o.styleEnabled?a:o.styleEnabled,zoom:N(o.zoom)?o.zoom:1,pan:{x:C(o.pan)&&N(o.pan.x)?o.pan.x:0,y:C(o.pan)&&N(o.pan.y)?o.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:s(250,o.multiClickDebounceTime)};this.createEmitter(),this.selectionType(o.selectionType),this.zoomRange({min:o.minZoom,max:o.maxZoom}),l.styleEnabled&&t.setStyle([]);var u=H({},o,o.renderer);t.initRenderer(u),function(e,t){if(e.some(P))return Nr.all(e).then(t);t(e)}([o.style,o.elements],(function(e){var n=e[0],a=e[1];l.styleEnabled&&t.style().append(n),function(e,n,r){t.notifications(!1);var i=t.mutableElements();i.length>0&&i.remove(),null!=e&&(C(e)||D(e))&&t.add(e),t.one("layoutready",(function(e){t.notifications(!0),t.emit(e),t.one("load",n),t.emitAndNotify("load")})).one("layoutstop",(function(){t.one("done",r),t.emit("done")}));var a=H({},t._private.options.layout);a.eles=t.elements(),t.layout(a).run()}(a,(function(){t.startAnimationLoop(),l.ready=!0,T(o.ready)&&t.on("ready",o.ready);for(var e=0;e0,u=Ft(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(k(n.roots))e=n.roots;else if(D(n.roots)){for(var c=[],h=0;h0;){var M=A.shift(),I=N(M,L);if(I)M.outgoers().filter((function(e){return e.isNode()&&i.has(e)})).forEach(S);else if(null===I){We("Detected double maximal shift for node `"+M.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}C();var O=0;if(n.avoidOverlap)for(var P=0;P0&&y[0].length<=3?l/2:0),h=2*Math.PI/y[r].length*i;return 0===r&&1===y[0].length&&(c=1),{x:W+c*Math.cos(h),y:$+c*Math.sin(h)}}return{x:W+(i+1-(a+1)/2)*o,y:(r+1)*s}})),this};var fs={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function vs(e){this.options=H({},fs,e)}vs.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,i=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,a=r.nodes().not(":parent");t.sort&&(a=a.sort(t.sort));for(var o,s=Ft(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l=s.x1+s.w/2,u=s.y1+s.h/2,c=(void 0===t.sweep?2*Math.PI-2*Math.PI/a.length:t.sweep)/Math.max(1,a.length-1),h=0,d=0;d1&&t.avoidOverlap){h*=1.75;var v=Math.cos(c)-Math.cos(0),y=Math.sin(c)-Math.sin(0),m=Math.sqrt(h*h/(v*v+y*y));o=Math.max(m,o)}return r.nodes().layoutPositions(this,t,(function(e,n){var r=t.startAngle+n*c*(i?1:-1),a=o*Math.cos(r),s=o*Math.sin(r);return{x:l+a,y:u+s}})),this};var ys,ms={fit:!0,padding:30,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(e){return e.degree()},levelWidth:function(e){return e.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function bs(e){this.options=H({},ms,e)}bs.prototype.run=function(){for(var e=this.options,t=e,n=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,r=e.cy,i=t.eles,a=i.nodes().not(":parent"),o=Ft(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),s=o.x1+o.w/2,l=o.y1+o.h/2,u=[],c=0,h=0;h0&&Math.abs(m[0].value-x.value)>=v&&(m=[],y.push(m)),m.push(x)}var w=c+t.minNodeSpacing;if(!t.avoidOverlap){var E=y.length>0&&y[0].length>1,_=(Math.min(o.w,o.h)/2-w)/(y.length+E?1:0);w=Math.min(w,_)}for(var T=0,D=0;D1&&t.avoidOverlap){var k=Math.cos(A)-Math.cos(0),L=Math.sin(A)-Math.sin(0),S=Math.sqrt(w*w/(k*k+L*L));T=Math.max(S,T)}C.r=T,T+=w}if(t.equidistant){for(var M=0,I=0,O=0;O=e.numIter||(As(r,e),r.temperature=r.temperature*e.coolingFactor,r.temperature=e.animationThreshold&&a(),Ce(t)):(Gs(r,e),s())}();else{for(;u;)u=o(l),l++;Gs(r,e),s()}return this},ws.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},ws.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var Es=function(e,t,n){for(var r=n.eles.edges(),i=n.eles.nodes(),a=Ft(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),o={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:i.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:r.size(),temperature:n.initialTemp,clientWidth:a.w,clientHeight:a.h,boundingBox:a},s=n.eles.components(),l={},u=0;u0)for(o.graphSet.push(w),u=0;ur.count?0:r.graph},Ts=function e(t,n,r,i){var a=i.graphSet[r];if(-10)var s=(u=r.nodeOverlap*o)*i/(f=Math.sqrt(i*i+a*a)),l=u*a/f;else{var u,c=Is(e,i,a),h=Is(t,-1*i,-1*a),d=h.x-c.x,p=h.y-c.y,g=d*d+p*p,f=Math.sqrt(g);s=(u=(e.nodeRepulsion+t.nodeRepulsion)/g)*d/f,l=u*p/f}e.isLocked||(e.offsetX-=s,e.offsetY-=l),t.isLocked||(t.offsetX+=s,t.offsetY+=l)}},Ms=function(e,t,n,r){if(n>0)var i=e.maxX-t.minX;else i=t.maxX-e.minX;if(r>0)var a=e.maxY-t.minY;else a=t.maxY-e.minY;return i>=0&&a>=0?Math.sqrt(i*i+a*a):0},Is=function(e,t,n){var r=e.positionX,i=e.positionY,a=e.height||1,o=e.width||1,s=n/t,l=a/o,u={};return 0===t&&0n?(u.x=r,u.y=i+a/2,u):0t&&-1*l<=s&&s<=l?(u.x=r-o/2,u.y=i-o*n/2/t,u):0=l)?(u.x=r+a*t/2/n,u.y=i+a/2,u):0>n&&(s<=-1*l||s>=l)?(u.x=r-a*t/2/n,u.y=i-a/2,u):u},Os=function(e,t){for(var n=0;n1){var g=t.gravity*h/p,f=t.gravity*d/p;c.offsetX+=g,c.offsetY+=f}}}}},Rs=function(e,t){var n=[],r=0,i=-1;for(n.push.apply(n,e.graphSet[0]),i+=e.graphSet[0].length;r<=i;){var a=n[r++],o=e.idToIndex[a],s=e.layoutNodes[o],l=s.children;if(0n)var i={x:n*e/r,y:n*t/r};else i={x:e,y:t};return i},zs=function e(t,n){var r=t.parentId;if(null!=r){var i=n.layoutNodes[n.idToIndex[r]],a=!1;return(null==i.maxX||t.maxX+i.padRight>i.maxX)&&(i.maxX=t.maxX+i.padRight,a=!0),(null==i.minX||t.minX-i.padLefti.maxY)&&(i.maxY=t.maxY+i.padBottom,a=!0),(null==i.minY||t.minY-i.padTopg&&(h+=p+t.componentSpacing,c=0,d=0,p=0)}}},Ys={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(e){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function Vs(e){this.options=H({},Ys,e)}Vs.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,i=r.nodes().not(":parent");t.sort&&(i=i.sort(t.sort));var a=Ft(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()});if(0===a.h||0===a.w)r.nodes().layoutPositions(this,t,(function(e){return{x:a.x1,y:a.y1}}));else{var o=i.size(),s=Math.sqrt(o*a.h/a.w),l=Math.round(s),u=Math.round(a.w/a.h*s),c=function(e){if(null==e)return Math.min(l,u);Math.min(l,u)==l?l=e:u=e},h=function(e){if(null==e)return Math.max(l,u);Math.max(l,u)==l?l=e:u=e},d=t.rows,p=null!=t.cols?t.cols:t.columns;if(null!=d&&null!=p)l=d,u=p;else if(null!=d&&null==p)l=d,u=Math.ceil(o/l);else if(null==d&&null!=p)u=p,l=Math.ceil(o/u);else if(u*l>o){var g=c(),f=h();(g-1)*f>=o?c(g-1):(f-1)*g>=o&&h(f-1)}else for(;u*l=o?h(y+1):c(v+1)}var m=a.w/u,b=a.h/l;if(t.condense&&(m=0,b=0),t.avoidOverlap)for(var x=0;x=u&&(S=0,L++)},I={},O=0;O(r=Zt(e,t,x[w],x[w+1],x[w+2],x[w+3])))return v(n,r),!0}else if("bezier"===a.edgeType||"multibezier"===a.edgeType||"self"===a.edgeType||"compound"===a.edgeType)for(x=a.allpts,w=0;w+5(r=Kt(e,t,x[w],x[w+1],x[w+2],x[w+3],x[w+4],x[w+5])))return v(n,r),!0;m=m||i.source,b=b||i.target;var E=o.getArrowWidth(l,c),_=[{name:"source",x:a.arrowStartX,y:a.arrowStartY,angle:a.srcArrowAngle},{name:"target",x:a.arrowEndX,y:a.arrowEndY,angle:a.tgtArrowAngle},{name:"mid-source",x:a.midX,y:a.midY,angle:a.midsrcArrowAngle},{name:"mid-target",x:a.midX,y:a.midY,angle:a.midtgtArrowAngle}];for(w=0;w<_.length;w++){var T=_[w],D=s.arrowShapes[n.pstyle(T.name+"-arrow-shape").value],C=n.pstyle("width").pfValue;if(D.roughCollide(e,t,E,T.angle,{x:T.x,y:T.y},C,d)&&D.collide(e,t,E,T.angle,{x:T.x,y:T.y},C,d))return v(n),!0}h&&u.length>0&&(y(m),y(b))}function b(e,t,n){return nt(e,t,n)}function x(n,r){var i,a=n._private,o=g;i=r?r+"-":"",n.boundingBox();var s=a.labelBounds[r||"main"],l=n.pstyle(i+"label").value;if("yes"===n.pstyle("text-events").strValue&&l){var u=b(a.rscratch,"labelX",r),c=b(a.rscratch,"labelY",r),h=b(a.rscratch,"labelAngle",r),d=n.pstyle(i+"text-margin-x").pfValue,p=n.pstyle(i+"text-margin-y").pfValue,f=s.x1-o-d,y=s.x2+o-d,m=s.y1-o-p,x=s.y2+o-p;if(h){var w=Math.cos(h),E=Math.sin(h),_=function(e,t){return{x:(e-=u)*w-(t-=c)*E+u,y:e*E+t*w+c}},T=_(f,m),D=_(f,x),C=_(y,m),N=_(y,x),A=[T.x+d,T.y+p,C.x+d,C.y+p,N.x+d,N.y+p,D.x+d,D.y+p];if(Qt(e,t,A))return v(n),!0}else if(jt(s,e,t))return v(n),!0}}n&&(l=l.interactive);for(var w=l.length-1;w>=0;w--){var E=l[w];E.isNode()?y(E)||x(E):m(E)||x(E)||x(E,"source")||x(E,"target")}return u},getAllInBox:function(e,t,n,r){for(var i,a,o=this.getCachedZSortedEles().interactive,s=[],l=Math.min(e,n),u=Math.max(e,n),c=Math.min(t,r),h=Math.max(t,r),d=Ft({x1:e=l,y1:t=c,x2:n=u,y2:r=h}),p=0;p4&&void 0!==arguments[4])||arguments[4];return 0===r||0===t.radius?{cx:t.x,cy:t.y,radius:0,startX:t.x,startY:t.y,stopX:t.x,stopY:t.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(function(e,t,n,r,i){var a,o;if(e!==ml?wl(t,e,bl):((o=bl).x=-1*(a=xl).x,o.y=-1*a.y,o.nx=-1*a.nx,o.ny=-1*a.ny,o.ang=a.ang>0?-(Math.PI-a.ang):Math.PI+a.ang),wl(t,n,xl),il=bl.nx*xl.ny-bl.ny*xl.nx,al=bl.nx*xl.nx-bl.ny*-xl.ny,ll=Math.asin(Math.max(-1,Math.min(1,il))),Math.abs(ll)<1e-6)return nl=t.x,rl=t.y,void(cl=dl=0);ol=1,sl=!1,al<0?ll<0?ll=Math.PI+ll:(ll=Math.PI-ll,ol=-1,sl=!0):ll>0&&(ol=-1,sl=!0),dl=void 0!==t.radius?t.radius:r,ul=ll/2,pl=Math.min(bl.len/2,xl.len/2),i?(hl=Math.abs(Math.cos(ul)*dl/Math.sin(ul)))>pl?(hl=pl,cl=Math.abs(hl*Math.sin(ul)/Math.cos(ul))):cl=dl:(hl=Math.min(pl,dl),cl=Math.abs(hl*Math.sin(ul)/Math.cos(ul))),vl=t.x+xl.nx*hl,yl=t.y+xl.ny*hl,nl=vl-xl.ny*cl*ol,rl=yl+xl.nx*cl*ol,gl=t.x+bl.nx*hl,fl=t.y+bl.ny*hl,ml=t}(e,t,n,r,i),{cx:nl,cy:rl,radius:cl,startX:gl,startY:fl,stopX:vl,stopY:yl,startAngle:bl.ang+Math.PI/2*ol,endAngle:xl.ang-Math.PI/2*ol,counterClockwise:sl})}var Tl={};function Dl(e){var t=[];if(null!=e){for(var n=0;n0?Math.max(e-t,0):Math.min(e+t,0)},N=C(T,E),A=C(D,_),k=!1;"auto"===v?f=Math.abs(N)>Math.abs(A)?i:r:v===l||v===s?(f=r,k=!0):v!==a&&v!==o||(f=i,k=!0);var L,S=f===r,M=S?A:N,I=S?D:T,O=St(I),P=!1;k&&(m||x)||!(v===s&&I<0||v===l&&I>0||v===a&&I>0||v===o&&I<0)||(M=(O*=-1)*Math.abs(M),P=!0);var R=function(e){return Math.abs(e)=Math.abs(M)},B=R(L=m?(b<0?1+b:b)*M:(b<0?M:0)+b*O),F=R(Math.abs(M)-Math.abs(L));if(!B&&!F||P)if(S){var z=u.y1+L+(g?h/2*O:0),G=u.x1,Y=u.x2;n.segpts=[G,z,Y,z]}else{var V=u.x1+L+(g?c/2*O:0),X=u.y1,U=u.y2;n.segpts=[V,X,V,U]}else if(S){var j=Math.abs(I)<=h/2,q=Math.abs(T)<=d/2;if(j){var H=(u.x1+u.x2)/2,W=u.y1,$=u.y2;n.segpts=[H,W,H,$]}else if(q){var K=(u.y1+u.y2)/2,Z=u.x1,Q=u.x2;n.segpts=[Z,K,Q,K]}else n.segpts=[u.x1,u.y2]}else{var J=Math.abs(I)<=c/2,ee=Math.abs(D)<=p/2;if(J){var te=(u.y1+u.y2)/2,ne=u.x1,re=u.x2;n.segpts=[ne,te,re,te]}else if(ee){var ie=(u.x1+u.x2)/2,ae=u.y1,oe=u.y2;n.segpts=[ie,ae,ie,oe]}else n.segpts=[u.x2,u.y1]}if(n.isRound){var se=e.pstyle("taxi-radius").value,le="arc-radius"===e.pstyle("radius-type").value[0];n.radii=new Array(n.segpts.length/2).fill(se),n.isArcRadius=new Array(n.segpts.length/2).fill(le)}},Tl.tryToCorrectInvalidPoints=function(e,t){var n=e._private.rscratch;if("bezier"===n.edgeType){var r=t.srcPos,i=t.tgtPos,a=t.srcW,o=t.srcH,s=t.tgtW,l=t.tgtH,u=t.srcShape,c=t.tgtShape,h=t.srcCornerRadius,d=t.tgtCornerRadius,p=t.srcRs,g=t.tgtRs,f=!N(n.startX)||!N(n.startY),v=!N(n.arrowStartX)||!N(n.arrowStartY),y=!N(n.endX)||!N(n.endY),m=!N(n.arrowEndX)||!N(n.arrowEndY),b=this.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.arrowShapeWidth*3,x=Mt({x:n.ctrlpts[0],y:n.ctrlpts[1]},{x:n.startX,y:n.startY}),w=xd.poolIndex()){var p=h;h=d,d=p}var g=s.srcPos=h.position(),f=s.tgtPos=d.position(),v=s.srcW=h.outerWidth(),y=s.srcH=h.outerHeight(),m=s.tgtW=d.outerWidth(),b=s.tgtH=d.outerHeight(),x=s.srcShape=n.nodeShapes[t.getNodeShape(h)],w=s.tgtShape=n.nodeShapes[t.getNodeShape(d)],E=s.srcCornerRadius="auto"===h.pstyle("corner-radius").value?"auto":h.pstyle("corner-radius").pfValue,_=s.tgtCornerRadius="auto"===d.pstyle("corner-radius").value?"auto":d.pstyle("corner-radius").pfValue,T=s.tgtRs=d._private.rscratch,D=s.srcRs=h._private.rscratch;s.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var C=0;C0){var q=u,H=It(q,At(t)),W=It(q,At(j)),$=H;W2&&It(q,{x:j[2],y:j[3]})<$&&(t=[j[2],j[3]])}}var K=ln(t,n,o.arrowShapes[h].spacing(e)+p),Z=ln(t,n,o.arrowShapes[h].gap(e)+p);if(m.endX=Z[0],m.endY=Z[1],m.arrowEndX=K[0],m.arrowEndY=K[1],"inside-to-node"===k)t=[u.x,u.y];else if(A.units)t=this.manualEndptToPx(s,A);else if("outside-to-line"===k)t=m.srcIntn;else if("outside-to-node"===k||"outside-to-node-or-label"===k?a=r:"outside-to-line"!==k&&"outside-to-line-or-label"!==k||(a=[c.x,c.y]),t=o.nodeShapes[this.getNodeShape(s)].intersectLine(u.x,u.y,s.outerWidth(),s.outerHeight(),a[0],a[1],0,L,f),"outside-to-node-or-label"===k||"outside-to-line-or-label"===k){var Q=s._private.rscratch,J=Q.labelWidth,ee=Q.labelHeight,te=Q.labelX,ne=Q.labelY,re=J/2,ie=ee/2,ae=s.pstyle("text-valign").value;"top"===ae?ne-=ie:"bottom"===ae&&(ne+=ie);var oe=s.pstyle("text-halign").value;"left"===oe?te-=re:"right"===oe&&(te+=re);var se=sn(a[0],a[1],[te-re,ne-ie,te+re,ne-ie,te+re,ne+ie,te-re,ne+ie],u.x,u.y);if(se.length>0){var le=c,ue=It(le,At(t)),ce=It(le,At(se)),he=ue;ce2&&It(le,{x:se[2],y:se[3]})=u||m){c={cp:f,segment:y};break}}if(c)break}var b=c.cp,x=c.segment,w=(u-d)/x.length,E=x.t1-x.t0,_=s?x.t0+E*w:x.t1-E*w;_=Bt(0,_,1),t=Rt(b.p0,b.p1,b.p2,_),i=function(e,t,n,r){var i=Bt(0,r-.001,1),a=Bt(0,r+.001,1),o=Rt(e,t,n,i),s=Rt(e,t,n,a);return Sl(o,s)}(b.p0,b.p1,b.p2,_);break;case"straight":case"segments":case"haystack":for(var T,D,C,N,A=0,k=r.allpts.length,L=0;L+3=u));L+=2);var S=(u-D)/T;S=Bt(0,S,1),t=function(e,t,n,r){var i=t.x-e.x,a=t.y-e.y,o=Mt(e,t),s=i/o,l=a/o;return n=null==n?0:n,r=null!=r?r:n*o,{x:e.x+s*r,y:e.y+l*r}}(C,N,S),i=Sl(C,N)}o("labelX",n,t.x),o("labelY",n,t.y),o("labelAutoAngle",n,i)}};u("source"),u("target"),this.applyLabelDimensions(e)}},kl.applyLabelDimensions=function(e){this.applyPrefixedLabelDimensions(e),e.isEdge()&&(this.applyPrefixedLabelDimensions(e,"source"),this.applyPrefixedLabelDimensions(e,"target"))},kl.applyPrefixedLabelDimensions=function(e,t){var n=e._private,r=this.getLabelText(e,t),i=this.calculateLabelDimensions(e,r),a=e.pstyle("line-height").pfValue,o=e.pstyle("text-wrap").strValue,s=nt(n.rscratch,"labelWrapCachedLines",t)||[],l="wrap"!==o?1:Math.max(s.length,1),u=i.height/l,c=u*a,h=i.width,d=i.height+(l-1)*(a-1)*u;rt(n.rstyle,"labelWidth",t,h),rt(n.rscratch,"labelWidth",t,h),rt(n.rstyle,"labelHeight",t,d),rt(n.rscratch,"labelHeight",t,d),rt(n.rscratch,"labelLineHeight",t,c)},kl.getLabelText=function(e,t){var n=e._private,r=t?t+"-":"",i=e.pstyle(r+"label").strValue,a=e.pstyle("text-transform").value,o=function(e,r){return r?(rt(n.rscratch,e,t,r),r):nt(n.rscratch,e,t)};if(!i)return"";"none"==a||("uppercase"==a?i=i.toUpperCase():"lowercase"==a&&(i=i.toLowerCase()));var s=e.pstyle("text-wrap").value;if("wrap"===s){var l=o("labelKey");if(null!=l&&o("labelWrapKey")===l)return o("labelWrapCachedText");for(var u=i.split("\n"),c=e.pstyle("text-max-width").pfValue,h="anywhere"===e.pstyle("text-overflow-wrap").value,d=[],p=/[\s\u200b]+|$/g,g=0;gc){var b,x="",w=0,E=f(v.matchAll(p));try{for(E.s();!(b=E.n()).done;){var _=b.value,T=_[0],D=v.substring(w,_.index);w=_.index+T.length;var C=0===x.length?D:x+D+T;this.calculateLabelDimensions(e,C).width<=c?x+=D+T:(x&&d.push(x),x=D+T)}}catch(e){E.e(e)}finally{E.f()}x.match(/^[\s\u200b]+$/)||d.push(x)}else d.push(v)}o("labelWrapCachedLines",d),i=o("labelWrapCachedText",d.join("\n")),o("labelWrapKey",l)}else if("ellipsis"===s){var N=e.pstyle("text-max-width").pfValue,A="",k=!1;if(this.calculateLabelDimensions(e,i).widthN);L++)A+=i[L],L===i.length-1&&(k=!0);return k||(A+="…"),A}return i},kl.getLabelJustification=function(e){var t=e.pstyle("text-justification").strValue,n=e.pstyle("text-halign").strValue;if("auto"!==t)return t;if(!e.isNode())return"center";switch(n){case"left":return"right";case"right":return"left";default:return"center"}},kl.calculateLabelDimensions=function(e,t){var n=this,r=n.cy.window().document,i=Pe(t,e._private.labelDimsKey),a=n.labelDimCache||(n.labelDimCache=[]),o=a[i];if(null!=o)return o;var s=e.pstyle("font-style").strValue,l=e.pstyle("font-size").pfValue,u=e.pstyle("font-family").strValue,c=e.pstyle("font-weight").strValue,h=this.labelCalcCanvas,d=this.labelCalcCanvasContext;if(!h){h=this.labelCalcCanvas=r.createElement("canvas"),d=this.labelCalcCanvasContext=h.getContext("2d");var p=h.style;p.position="absolute",p.left="-9999px",p.top="-9999px",p.zIndex="-1",p.visibility="hidden",p.pointerEvents="none"}d.font="".concat(s," ").concat(c," ").concat(l,"px ").concat(u);for(var g=0,f=0,v=t.split("\n"),y=0;y1&&void 0!==arguments[1])||arguments[1];if(t.merge(e),n)for(var r=0;r=e.desktopTapThreshold2}var C=i(t);v&&(e.hoverData.tapholdCancelled=!0),n=!0,r(f,["mousemove","vmousemove","tapdrag"],t,{x:c[0],y:c[1]});var A=function(){e.data.bgActivePosistion=void 0,e.hoverData.selecting||o.emit({originalEvent:t,type:"boxstart",position:{x:c[0],y:c[1]}}),g[4]=1,e.hoverData.selecting=!0,e.redrawHint("select",!0),e.redraw()};if(3===e.hoverData.which){if(v){var k={originalEvent:t,type:"cxtdrag",position:{x:c[0],y:c[1]}};m?m.emit(k):o.emit(k),e.hoverData.cxtDragged=!0,e.hoverData.cxtOver&&f===e.hoverData.cxtOver||(e.hoverData.cxtOver&&e.hoverData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:c[0],y:c[1]}}),e.hoverData.cxtOver=f,f&&f.emit({originalEvent:t,type:"cxtdragover",position:{x:c[0],y:c[1]}}))}}else if(e.hoverData.dragging){if(n=!0,o.panningEnabled()&&o.userPanningEnabled()){var L;if(e.hoverData.justStartedPan){var S=e.hoverData.mdownPos;L={x:(c[0]-S[0])*s,y:(c[1]-S[1])*s},e.hoverData.justStartedPan=!1}else L={x:b[0]*s,y:b[1]*s};o.panBy(L),o.emit("dragpan"),e.hoverData.dragged=!0}c=e.projectIntoViewport(t.clientX,t.clientY)}else if(1!=g[4]||null!=m&&!m.pannable()){if(m&&m.pannable()&&m.active()&&m.unactivate(),m&&m.grabbed()||f==y||(y&&r(y,["mouseout","tapdragout"],t,{x:c[0],y:c[1]}),f&&r(f,["mouseover","tapdragover"],t,{x:c[0],y:c[1]}),e.hoverData.last=f),m)if(v){if(o.boxSelectionEnabled()&&C)m&&m.grabbed()&&(h(x),m.emit("freeon"),x.emit("free"),e.dragData.didDrag&&(m.emit("dragfreeon"),x.emit("dragfree"))),A();else if(m&&m.grabbed()&&e.nodeIsDraggable(m)){var M=!e.dragData.didDrag;M&&e.redrawHint("eles",!0),e.dragData.didDrag=!0,e.hoverData.draggingEles||u(x,{inDragLayer:!0});var I={x:0,y:0};if(N(b[0])&&N(b[1])&&(I.x+=b[0],I.y+=b[1],M)){var O=e.hoverData.dragDelta;O&&N(O[0])&&N(O[1])&&(I.x+=O[0],I.y+=O[1])}e.hoverData.draggingEles=!0,x.silentShift(I).emit("position drag"),e.redrawHint("drag",!0),e.redraw()}}else!function(){var t=e.hoverData.dragDelta=e.hoverData.dragDelta||[];0===t.length?(t.push(b[0]),t.push(b[1])):(t[0]+=b[0],t[1]+=b[1])}();n=!0}else v&&(e.hoverData.dragging||!o.boxSelectionEnabled()||!C&&o.panningEnabled()&&o.userPanningEnabled()?!e.hoverData.selecting&&o.panningEnabled()&&o.userPanningEnabled()&&a(m,e.hoverData.downs)&&(e.hoverData.dragging=!0,e.hoverData.justStartedPan=!0,g[4]=0,e.data.bgActivePosistion=At(d),e.redrawHint("select",!0),e.redraw()):A(),m&&m.pannable()&&m.active()&&m.unactivate());return g[2]=c[0],g[3]=c[1],n?(t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault(),!1):void 0}}),!1),e.registerBinding(t,"mouseup",(function(t){if((1!==e.hoverData.which||1===t.which||!e.hoverData.capture)&&e.hoverData.capture){e.hoverData.capture=!1;var a=e.cy,o=e.projectIntoViewport(t.clientX,t.clientY),s=e.selection,l=e.findNearestElement(o[0],o[1],!0,!1),u=e.dragData.possibleDragElements,c=e.hoverData.down,d=i(t);if(e.data.bgActivePosistion&&(e.redrawHint("select",!0),e.redraw()),e.hoverData.tapholdCancelled=!0,e.data.bgActivePosistion=void 0,c&&c.unactivate(),3===e.hoverData.which){var p={originalEvent:t,type:"cxttapend",position:{x:o[0],y:o[1]}};if(c?c.emit(p):a.emit(p),!e.hoverData.cxtDragged){var g={originalEvent:t,type:"cxttap",position:{x:o[0],y:o[1]}};c?c.emit(g):a.emit(g)}e.hoverData.cxtDragged=!1,e.hoverData.which=null}else if(1===e.hoverData.which){if(r(l,["mouseup","tapend","vmouseup"],t,{x:o[0],y:o[1]}),e.dragData.didDrag||e.hoverData.dragged||e.hoverData.selecting||e.hoverData.isOverThresholdDrag||(r(c,["click","tap","vclick"],t,{x:o[0],y:o[1]}),b=!1,t.timeStamp-x<=a.multiClickDebounceTime()?(m&&clearTimeout(m),b=!0,x=null,r(c,["dblclick","dbltap","vdblclick"],t,{x:o[0],y:o[1]})):(m=setTimeout((function(){b||r(c,["oneclick","onetap","voneclick"],t,{x:o[0],y:o[1]})}),a.multiClickDebounceTime()),x=t.timeStamp)),null!=c||e.dragData.didDrag||e.hoverData.selecting||e.hoverData.dragged||i(t)||(a.$(n).unselect(["tapunselect"]),u.length>0&&e.redrawHint("eles",!0),e.dragData.possibleDragElements=u=a.collection()),l!=c||e.dragData.didDrag||e.hoverData.selecting||null!=l&&l._private.selectable&&(e.hoverData.dragging||("additive"===a.selectionType()||d?l.selected()?l.unselect(["tapunselect"]):l.select(["tapselect"]):d||(a.$(n).unmerge(l).unselect(["tapunselect"]),l.select(["tapselect"]))),e.redrawHint("eles",!0)),e.hoverData.selecting){var f=a.collection(e.getAllInBox(s[0],s[1],s[2],s[3]));e.redrawHint("select",!0),f.length>0&&e.redrawHint("eles",!0),a.emit({type:"boxend",originalEvent:t,position:{x:o[0],y:o[1]}});"additive"===a.selectionType()||d||a.$(n).unmerge(f).unselect(),f.emit("box").stdFilter((function(e){return e.selectable()&&!e.selected()})).select().emit("boxselect"),e.redraw()}if(e.hoverData.dragging&&(e.hoverData.dragging=!1,e.redrawHint("select",!0),e.redrawHint("eles",!0),e.redraw()),!s[4]){e.redrawHint("drag",!0),e.redrawHint("eles",!0);var v=c&&c.grabbed();h(u),v&&(c.emit("freeon"),u.emit("free"),e.dragData.didDrag&&(c.emit("dragfreeon"),u.emit("dragfree")))}}s[4]=0,e.hoverData.down=null,e.hoverData.cxtStarted=!1,e.hoverData.draggingEles=!1,e.hoverData.selecting=!1,e.hoverData.isOverThresholdDrag=!1,e.dragData.didDrag=!1,e.hoverData.dragged=!1,e.hoverData.dragDelta=[],e.hoverData.mdownPos=null,e.hoverData.mdownGPos=null,e.hoverData.which=null}}),!1);var E,_,T,D,C,A,k,L,S,M,I,O,P,R=function(t){if(!e.scrollingPage){var n=e.cy,r=n.zoom(),i=n.pan(),a=e.projectIntoViewport(t.clientX,t.clientY),o=[a[0]*r+i.x,a[1]*r+i.y];if(e.hoverData.draggingEles||e.hoverData.dragging||e.hoverData.cxtStarted||0!==e.selection[4])t.preventDefault();else if(n.panningEnabled()&&n.userPanningEnabled()&&n.zoomingEnabled()&&n.userZoomingEnabled()){var s;t.preventDefault(),e.data.wheelZooming=!0,clearTimeout(e.data.wheelTimeout),e.data.wheelTimeout=setTimeout((function(){e.data.wheelZooming=!1,e.redrawHint("eles",!0),e.redraw()}),150),s=null!=t.deltaY?t.deltaY/-250:null!=t.wheelDeltaY?t.wheelDeltaY/1e3:t.wheelDelta/1e3,s*=e.wheelSensitivity,1===t.deltaMode&&(s*=33);var l=n.zoom()*Math.pow(10,s);"gesturechange"===t.type&&(l=e.gestureStartZoom*t.scale),n.zoom({level:l,renderedPosition:{x:o[0],y:o[1]}}),n.emit("gesturechange"===t.type?"pinchzoom":"scrollzoom")}}};e.registerBinding(e.container,"wheel",R,!0),e.registerBinding(t,"scroll",(function(t){e.scrollingPage=!0,clearTimeout(e.scrollingPageTimeout),e.scrollingPageTimeout=setTimeout((function(){e.scrollingPage=!1}),250)}),!0),e.registerBinding(e.container,"gesturestart",(function(t){e.gestureStartZoom=e.cy.zoom(),e.hasTouchStarted||t.preventDefault()}),!0),e.registerBinding(e.container,"gesturechange",(function(t){e.hasTouchStarted||R(t)}),!0),e.registerBinding(e.container,"mouseout",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseout",position:{x:n[0],y:n[1]}})}),!1),e.registerBinding(e.container,"mouseover",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseover",position:{x:n[0],y:n[1]}})}),!1);var B,F,z,G,Y,V,X,U=function(e,t,n,r){return Math.sqrt((n-e)*(n-e)+(r-t)*(r-t))},j=function(e,t,n,r){return(n-e)*(n-e)+(r-t)*(r-t)};if(e.registerBinding(e.container,"touchstart",B=function(t){if(e.hasTouchStarted=!0,w(t)){p(),e.touchData.capture=!0,e.data.bgActivePosistion=void 0;var n=e.cy,i=e.touchData.now,a=e.touchData.earlier;if(t.touches[0]){var o=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);i[0]=o[0],i[1]=o[1]}if(t.touches[1]&&(o=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY),i[2]=o[0],i[3]=o[1]),t.touches[2]&&(o=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY),i[4]=o[0],i[5]=o[1]),t.touches[1]){e.touchData.singleTouchMoved=!0,h(e.dragData.touchDragEles);var l=e.findContainerClientCoords();S=l[0],M=l[1],I=l[2],O=l[3],E=t.touches[0].clientX-S,_=t.touches[0].clientY-M,T=t.touches[1].clientX-S,D=t.touches[1].clientY-M,P=0<=E&&E<=I&&0<=T&&T<=I&&0<=_&&_<=O&&0<=D&&D<=O;var d=n.pan(),g=n.zoom();if(C=U(E,_,T,D),A=j(E,_,T,D),L=[((k=[(E+T)/2,(_+D)/2])[0]-d.x)/g,(k[1]-d.y)/g],A<4e4&&!t.touches[2]){var f=e.findNearestElement(i[0],i[1],!0,!0),v=e.findNearestElement(i[2],i[3],!0,!0);return f&&f.isNode()?(f.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start=f):v&&v.isNode()?(v.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start=v):n.emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!0,e.touchData.cxtDragged=!1,e.data.bgActivePosistion=void 0,void e.redraw()}}if(t.touches[2])n.boxSelectionEnabled()&&t.preventDefault();else if(t.touches[1]);else if(t.touches[0]){var y=e.findNearestElements(i[0],i[1],!0,!0),m=y[0];if(null!=m&&(m.activate(),e.touchData.start=m,e.touchData.starts=y,e.nodeIsGrabbable(m))){var b=e.dragData.touchDragEles=n.collection(),x=null;e.redrawHint("eles",!0),e.redrawHint("drag",!0),m.selected()?(x=n.$((function(t){return t.selected()&&e.nodeIsGrabbable(t)})),u(x,{addToList:b})):c(m,{addToList:b}),s(m);var N=function(e){return{originalEvent:t,type:e,position:{x:i[0],y:i[1]}}};m.emit(N("grabon")),x?x.forEach((function(e){e.emit(N("grab"))})):m.emit(N("grab"))}r(m,["touchstart","tapstart","vmousedown"],t,{x:i[0],y:i[1]}),null==m&&(e.data.bgActivePosistion={x:o[0],y:o[1]},e.redrawHint("select",!0),e.redraw()),e.touchData.singleTouchMoved=!1,e.touchData.singleTouchStartTime=+new Date,clearTimeout(e.touchData.tapholdTimeout),e.touchData.tapholdTimeout=setTimeout((function(){!1!==e.touchData.singleTouchMoved||e.pinching||e.touchData.selecting||r(e.touchData.start,["taphold"],t,{x:i[0],y:i[1]})}),e.tapholdDuration)}if(t.touches.length>=1){for(var R=e.touchData.startPosition=[null,null,null,null,null,null],B=0;B=e.touchTapThreshold2}if(n&&e.touchData.cxt){t.preventDefault();var x=t.touches[0].clientX-S,k=t.touches[0].clientY-M,I=t.touches[1].clientX-S,O=t.touches[1].clientY-M,R=j(x,k,I,O);if(R/A>=2.25||R>=22500){e.touchData.cxt=!1,e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var B={originalEvent:t,type:"cxttapend",position:{x:s[0],y:s[1]}};e.touchData.start?(e.touchData.start.unactivate().emit(B),e.touchData.start=null):o.emit(B)}}if(n&&e.touchData.cxt){B={originalEvent:t,type:"cxtdrag",position:{x:s[0],y:s[1]}},e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.touchData.start?e.touchData.start.emit(B):o.emit(B),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxtDragged=!0;var F=e.findNearestElement(s[0],s[1],!0,!0);e.touchData.cxtOver&&F===e.touchData.cxtOver||(e.touchData.cxtOver&&e.touchData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:s[0],y:s[1]}}),e.touchData.cxtOver=F,F&&F.emit({originalEvent:t,type:"cxtdragover",position:{x:s[0],y:s[1]}}))}else if(n&&t.touches[2]&&o.boxSelectionEnabled())t.preventDefault(),e.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,e.touchData.selecting||o.emit({originalEvent:t,type:"boxstart",position:{x:s[0],y:s[1]}}),e.touchData.selecting=!0,e.touchData.didSelect=!0,i[4]=1,i&&0!==i.length&&void 0!==i[0]?(i[2]=(s[0]+s[2]+s[4])/3,i[3]=(s[1]+s[3]+s[5])/3):(i[0]=(s[0]+s[2]+s[4])/3,i[1]=(s[1]+s[3]+s[5])/3,i[2]=(s[0]+s[2]+s[4])/3+1,i[3]=(s[1]+s[3]+s[5])/3+1),e.redrawHint("select",!0),e.redraw();else if(n&&t.touches[1]&&!e.touchData.didSelect&&o.zoomingEnabled()&&o.panningEnabled()&&o.userZoomingEnabled()&&o.userPanningEnabled()){if(t.preventDefault(),e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),ee=e.dragData.touchDragEles){e.redrawHint("drag",!0);for(var z=0;z0&&!e.hoverData.draggingEles&&!e.swipePanning&&null!=e.data.bgActivePosistion&&(e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.redraw())}},!1),e.registerBinding(t,"touchcancel",z=function(t){var n=e.touchData.start;e.touchData.capture=!1,n&&n.unactivate()}),e.registerBinding(t,"touchend",G=function(t){var i=e.touchData.start;if(e.touchData.capture){0===t.touches.length&&(e.touchData.capture=!1),t.preventDefault();var a=e.selection;e.swipePanning=!1,e.hoverData.draggingEles=!1;var o,s=e.cy,l=s.zoom(),u=e.touchData.now,c=e.touchData.earlier;if(t.touches[0]){var d=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);u[0]=d[0],u[1]=d[1]}if(t.touches[1]&&(d=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY),u[2]=d[0],u[3]=d[1]),t.touches[2]&&(d=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY),u[4]=d[0],u[5]=d[1]),i&&i.unactivate(),e.touchData.cxt){if(o={originalEvent:t,type:"cxttapend",position:{x:u[0],y:u[1]}},i?i.emit(o):s.emit(o),!e.touchData.cxtDragged){var p={originalEvent:t,type:"cxttap",position:{x:u[0],y:u[1]}};i?i.emit(p):s.emit(p)}return e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!1,e.touchData.start=null,void e.redraw()}if(!t.touches[2]&&s.boxSelectionEnabled()&&e.touchData.selecting){e.touchData.selecting=!1;var g=s.collection(e.getAllInBox(a[0],a[1],a[2],a[3]));a[0]=void 0,a[1]=void 0,a[2]=void 0,a[3]=void 0,a[4]=0,e.redrawHint("select",!0),s.emit({type:"boxend",originalEvent:t,position:{x:u[0],y:u[1]}}),g.emit("box").stdFilter((function(e){return e.selectable()&&!e.selected()})).select().emit("boxselect"),g.nonempty()&&e.redrawHint("eles",!0),e.redraw()}if(null!=i&&i.unactivate(),t.touches[2])e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);else if(t.touches[1]);else if(t.touches[0]);else if(!t.touches[0]){e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var f=e.dragData.touchDragEles;if(null!=i){var v=i._private.grabbed;h(f),e.redrawHint("drag",!0),e.redrawHint("eles",!0),v&&(i.emit("freeon"),f.emit("free"),e.dragData.didDrag&&(i.emit("dragfreeon"),f.emit("dragfree"))),r(i,["touchend","tapend","vmouseup","tapdragout"],t,{x:u[0],y:u[1]}),i.unactivate(),e.touchData.start=null}else{var y=e.findNearestElement(u[0],u[1],!0,!0);r(y,["touchend","tapend","vmouseup","tapdragout"],t,{x:u[0],y:u[1]})}var m=e.touchData.startPosition[0]-u[0],b=m*m,x=e.touchData.startPosition[1]-u[1],w=(b+x*x)*l*l;e.touchData.singleTouchMoved||(i||s.$(":selected").unselect(["tapunselect"]),r(i,["tap","vclick"],t,{x:u[0],y:u[1]}),Y=!1,t.timeStamp-X<=s.multiClickDebounceTime()?(V&&clearTimeout(V),Y=!0,X=null,r(i,["dbltap","vdblclick"],t,{x:u[0],y:u[1]})):(V=setTimeout((function(){Y||r(i,["onetap","voneclick"],t,{x:u[0],y:u[1]})}),s.multiClickDebounceTime()),X=t.timeStamp)),null!=i&&!e.dragData.didDrag&&i._private.selectable&&w2){for(var p=[c[0],c[1]],g=Math.pow(p[0]-e,2)+Math.pow(p[1]-t,2),f=1;f0)return f[0]}return null},p=Object.keys(h),g=0;g0?u:Ht(i,a,e,t,n,r,o,s)},checkPoint:function(e,t,n,r,i,a,o,s){var l=2*(s="auto"===s?dn(r,i):s);if(Jt(e,t,this.points,a,o,r,i-l,[0,-1],n))return!0;if(Jt(e,t,this.points,a,o,r-l,i,[0,-1],n))return!0;var u=r/2+2*n,c=i/2+2*n;return!!Qt(e,t,[a-u,o-c,a-u,o,a+u,o,a+u,o-c])||!!nn(e,t,l,l,a+r/2-s,o+i/2-s,n)||!!nn(e,t,l,l,a-r/2+s,o+i/2-s,n)}}},registerNodeShapes:function(){var e=this.nodeShapes={},t=this;this.generateEllipse(),this.generatePolygon("triangle",un(3,0)),this.generateRoundPolygon("round-triangle",un(3,0)),this.generatePolygon("rectangle",un(4,0)),e.square=e.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();var n=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",n),this.generateRoundPolygon("round-diamond",n),this.generatePolygon("pentagon",un(5,0)),this.generateRoundPolygon("round-pentagon",un(5,0)),this.generatePolygon("hexagon",un(6,0)),this.generateRoundPolygon("round-hexagon",un(6,0)),this.generatePolygon("heptagon",un(7,0)),this.generateRoundPolygon("round-heptagon",un(7,0)),this.generatePolygon("octagon",un(8,0)),this.generateRoundPolygon("round-octagon",un(8,0));var r=new Array(20),i=hn(5,0),a=hn(5,Math.PI/5),o=.5*(3-Math.sqrt(5));o*=1.57;for(var s=0;s=e.deqFastCost*f)break}else if(i){if(p>=e.deqCost*l||p>=e.deqAvgCost*s)break}else if(g>=e.deqNoDrawCost*Xl)break;var v=e.deq(t,h,c);if(!(v.length>0))break;for(var y=0;y0&&(e.onDeqd(t,u),!i&&e.shouldRedraw(t,u,h,c)&&r())}),i(t))}}},jl=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Xe;l(this,e),this.idsByKey=new it,this.keyForId=new it,this.cachesByLvl=new it,this.lvls=[],this.getKey=t,this.doesEleInvalidateKey=n}return c(e,[{key:"getIdsFor",value:function(e){null==e&&qe("Can not get id list for null key");var t=this.idsByKey,n=this.idsByKey.get(e);return n||(n=new ot,t.set(e,n)),n}},{key:"addIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).add(t)}},{key:"deleteIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).delete(t)}},{key:"getNumberOfIdsForKey",value:function(e){return null==e?0:this.getIdsFor(e).size}},{key:"updateKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t),r=this.getKey(e);this.deleteIdForKey(n,t),this.addIdForKey(r,t),this.keyForId.set(t,r)}},{key:"deleteKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteIdForKey(n,t),this.keyForId.delete(t)}},{key:"keyHasChangedFor",value:function(e){var t=e.id();return this.keyForId.get(t)!==this.getKey(e)}},{key:"isInvalid",value:function(e){return this.keyHasChangedFor(e)||this.doesEleInvalidateKey(e)}},{key:"getCachesAt",value:function(e){var t=this.cachesByLvl,n=this.lvls,r=t.get(e);return r||(r=new it,t.set(e,r),n.push(e)),r}},{key:"getCache",value:function(e,t){return this.getCachesAt(t).get(e)}},{key:"get",value:function(e,t){var n=this.getKey(e),r=this.getCache(n,t);return null!=r&&this.updateKeyMappingFor(e),r}},{key:"getForCachedKey",value:function(e,t){var n=this.keyForId.get(e.id());return this.getCache(n,t)}},{key:"hasCache",value:function(e,t){return this.getCachesAt(t).has(e)}},{key:"has",value:function(e,t){var n=this.getKey(e);return this.hasCache(n,t)}},{key:"setCache",value:function(e,t,n){n.key=e,this.getCachesAt(t).set(e,n)}},{key:"set",value:function(e,t,n){var r=this.getKey(e);this.setCache(r,t,n),this.updateKeyMappingFor(e)}},{key:"deleteCache",value:function(e,t){this.getCachesAt(t).delete(e)}},{key:"delete",value:function(e,t){var n=this.getKey(e);this.deleteCache(n,t)}},{key:"invalidateKey",value:function(e){var t=this;this.lvls.forEach((function(n){return t.deleteCache(e,n)}))}},{key:"invalidate",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteKeyMappingFor(e);var r=this.doesEleInvalidateKey(e);return r&&this.invalidateKey(n),r||0===this.getNumberOfIdsForKey(n)}}]),e}(),ql={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},Hl=Je({getKey:null,doesEleInvalidateKey:Xe,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:Ve,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),Wl=function(e,t){var n=this;n.renderer=e,n.onDequeues=[];var r=Hl(t);H(n,r),n.lookup=new jl(r.getKey,r.doesEleInvalidateKey),n.setupDequeueing()},$l=Wl.prototype;$l.reasons=ql,$l.getTextureQueue=function(e){var t=this;return t.eleImgCaches=t.eleImgCaches||{},t.eleImgCaches[e]=t.eleImgCaches[e]||[]},$l.getRetiredTextureQueue=function(e){var t=this.eleImgCaches.retired=this.eleImgCaches.retired||{};return t[e]=t[e]||[]},$l.getElementQueue=function(){return this.eleCacheQueue=this.eleCacheQueue||new dt((function(e,t){return t.reqs-e.reqs}))},$l.getElementKeyToQueue=function(){return this.eleKeyToCacheQueue=this.eleKeyToCacheQueue||{}},$l.getElement=function(e,t,n,r,i){var a=this,o=this.renderer,s=o.cy.zoom(),l=this.lookup;if(!t||0===t.w||0===t.h||isNaN(t.w)||isNaN(t.h)||!e.visible()||e.removed())return null;if(!a.allowEdgeTxrCaching&&e.isEdge()||!a.allowParentTxrCaching&&e.isParent())return null;if(null==r&&(r=Math.ceil(Lt(s*n))),r<-4)r=-4;else if(s>=7.99||r>3)return null;var u=Math.pow(2,r),c=t.h*u,h=t.w*u,d=o.eleTextBiggerThanMin(e,u);if(!this.isVisible(e,d))return null;var p,g=l.get(e,r);if(g&&g.invalidated&&(g.invalidated=!1,g.texture.invalidatedWidth-=g.width),g)return g;if(p=c<=25?25:c<=50?50:50*Math.ceil(c/50),c>1024||h>1024)return null;var f=a.getTextureQueue(p),v=f[f.length-2],y=function(){return a.recycleTexture(p,h)||a.addTexture(p,h)};v||(v=f[f.length-1]),v||(v=y()),v.width-v.usedWidthr;N--)D=a.getElement(e,t,n,N,ql.downscale);C()}else{var A;if(!x&&!w&&!E)for(var k=r-1;k>=-4;k--){var L=l.get(e,k);if(L){A=L;break}}if(b(A))return a.queueElement(e,r),A;v.context.translate(v.usedWidth,0),v.context.scale(u,u),this.drawElement(v.context,e,t,d,!1),v.context.scale(1/u,1/u),v.context.translate(-v.usedWidth,0)}return g={x:v.usedWidth,texture:v,level:r,scale:u,width:h,height:c,scaledLabelShown:d},v.usedWidth+=Math.ceil(h+8),v.eleCaches.push(g),l.set(e,r,g),a.checkTextureFullness(v),g},$l.invalidateElements=function(e){for(var t=0;t=.2*e.width&&this.retireTexture(e)},$l.checkTextureFullness=function(e){var t=this.getTextureQueue(e.height);e.usedWidth/e.width>.8&&e.fullnessChecks>=10?et(t,e):e.fullnessChecks++},$l.retireTexture=function(e){var t=e.height,n=this.getTextureQueue(t),r=this.lookup;et(n,e),e.retired=!0;for(var i=e.eleCaches,a=0;a=t)return a.retired=!1,a.usedWidth=0,a.invalidatedWidth=0,a.fullnessChecks=0,tt(a.eleCaches),a.context.setTransform(1,0,0,1,0,0),a.context.clearRect(0,0,a.width,a.height),et(r,a),n.push(a),a}},$l.queueElement=function(e,t){var n=this.getElementQueue(),r=this.getElementKeyToQueue(),i=this.getKey(e),a=r[i];if(a)a.level=Math.max(a.level,t),a.eles.merge(e),a.reqs++,n.updateItem(a);else{var o={eles:e.spawn().merge(e),level:t,reqs:1,key:i};n.push(o),r[i]=o}},$l.dequeue=function(e){for(var t=this,n=t.getElementQueue(),r=t.getElementKeyToQueue(),i=[],a=t.lookup,o=0;o<1&&n.size()>0;o++){var s=n.pop(),l=s.key,u=s.eles[0],c=a.hasCache(u,s.level);if(r[l]=null,!c){i.push(s);var h=t.getBoundingBox(u);t.getElement(u,h,e,s.level,ql.dequeue)}}return i},$l.removeFromQueue=function(e){var t=this.getElementQueue(),n=this.getElementKeyToQueue(),r=this.getKey(e),i=n[r];null!=i&&(1===i.eles.length?(i.reqs=Ye,t.updateItem(i),t.pop(),n[r]=null):i.eles.unmerge(e))},$l.onDequeue=function(e){this.onDequeues.push(e)},$l.offDequeue=function(e){et(this.onDequeues,e)},$l.setupDequeueing=Ul({deqRedrawThreshold:100,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(e,t,n){return e.dequeue(t,n)},onDeqd:function(e,t){for(var n=0;n=3.99||n>2)return null;r.validateLayersElesOrdering(n,e);var o,s,l=r.layersByLevel,u=Math.pow(2,n),c=l[n]=l[n]||[];if(r.levelIsComplete(n,e))return c;!function(){var t=function(t){if(r.validateLayersElesOrdering(t,e),r.levelIsComplete(t,e))return s=l[t],!0},i=function(e){if(!s)for(var r=n+e;-4<=r&&r<=2&&!t(r);r+=e);};i(1),i(-1);for(var a=c.length-1;a>=0;a--){var o=c[a];o.invalid&&et(c,o)}}();var h=function(t){var i=(t=t||{}).after;if(function(){if(!o){o=Ft();for(var t=0;t16e6)return null;var a=r.makeLayer(o,n);if(null!=i){var s=c.indexOf(i)+1;c.splice(s,0,a)}else(void 0===t.insert||t.insert)&&c.unshift(a);return a};if(r.skipping&&!a)return null;for(var d=null,p=e.length/1,g=!a,f=0;f=p||!qt(d.bb,v.boundingBox()))&&!(d=h({insert:!0,after:d})))return null;s||g?r.queueLayer(d,v):r.drawEleInLayer(d,v,n,t),d.eles.push(v),m[n]=d}}return s||(g?null:c)},Zl.getEleLevelForLayerLevel=function(e,t){return e},Zl.drawEleInLayer=function(e,t,n,r){var i=this.renderer,a=e.context,o=t.boundingBox();0!==o.w&&0!==o.h&&t.visible()&&(n=this.getEleLevelForLayerLevel(n,r),i.setImgSmoothing(a,!1),i.drawCachedElement(a,t,null,null,n,!0),i.setImgSmoothing(a,!0))},Zl.levelIsComplete=function(e,t){var n=this.layersByLevel[e];if(!n||0===n.length)return!1;for(var r=0,i=0;i0)return!1;if(a.invalid)return!1;r+=a.eles.length}return r===t.length},Zl.validateLayersElesOrdering=function(e,t){var n=this.layersByLevel[e];if(n)for(var r=0;r0){e=!0;break}}return e},Zl.invalidateElements=function(e){var t=this;0!==e.length&&(t.lastInvalidationTime=Ne(),0!==e.length&&t.haveLayers()&&t.updateElementsInLayers(e,(function(e,n,r){t.invalidateLayer(e)})))},Zl.invalidateLayer=function(e){if(this.lastInvalidationTime=Ne(),!e.invalid){var t=e.level,n=e.eles,r=this.layersByLevel[t];et(r,e),e.elesQueue=[],e.invalid=!0,e.replacement&&(e.replacement.invalid=!0);for(var i=0;i3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],o=this,s=t._private.rscratch;if((!a||t.visible())&&!s.badLine&&null!=s.allpts&&!isNaN(s.allpts[0])){var l;n&&(l=n,e.translate(-l.x1,-l.y1));var u=a?t.pstyle("opacity").value:1,c=a?t.pstyle("line-opacity").value:1,h=t.pstyle("curve-style").value,d=t.pstyle("line-style").value,p=t.pstyle("width").pfValue,g=t.pstyle("line-cap").value,f=t.pstyle("line-outline-width").value,v=t.pstyle("line-outline-color").value,y=u*c,m=u*c,b=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y;"straight-triangle"===h?(o.eleStrokeStyle(e,t,n),o.drawEdgeTrianglePath(t,e,s.allpts)):(e.lineWidth=p,e.lineCap=g,o.eleStrokeStyle(e,t,n),o.drawEdgePath(t,e,s.allpts,d),e.lineCap="butt")},x=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:m;o.drawArrowheads(e,t,n)};if(e.lineJoin="round","yes"===t.pstyle("ghost").value){var w=t.pstyle("ghost-offset-x").pfValue,E=t.pstyle("ghost-offset-y").pfValue,_=t.pstyle("ghost-opacity").value,T=y*_;e.translate(w,E),b(T),x(T),e.translate(-w,-E)}else!function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y;e.lineWidth=p+f,e.lineCap=g,f>0?(o.colorStrokeStyle(e,v[0],v[1],v[2],n),"straight-triangle"===h?o.drawEdgeTrianglePath(t,e,s.allpts):(o.drawEdgePath(t,e,s.allpts,d),e.lineCap="butt")):e.lineCap="butt"}();i&&o.drawEdgeUnderlay(e,t),b(),x(),i&&o.drawEdgeOverlay(e,t),o.drawElementText(e,t,null,r),n&&e.translate(l.x1,l.y1)}}},fu=function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(t,n){if(n.visible()){var r=n.pstyle("".concat(e,"-opacity")).value;if(0!==r){var i=this,a=i.usePaths(),o=n._private.rscratch,s=2*n.pstyle("".concat(e,"-padding")).pfValue,l=n.pstyle("".concat(e,"-color")).value;t.lineWidth=s,"self"!==o.edgeType||a?t.lineCap="round":t.lineCap="butt",i.colorStrokeStyle(t,l[0],l[1],l[2],r),i.drawEdgePath(n,t,o.allpts,"solid")}}}};gu.drawEdgeOverlay=fu("overlay"),gu.drawEdgeUnderlay=fu("underlay"),gu.drawEdgePath=function(e,t,n,r){var i,a=e._private.rscratch,o=t,s=!1,l=this.usePaths(),u=e.pstyle("line-dash-pattern").pfValue,c=e.pstyle("line-dash-offset").pfValue;if(l){var h=n.join("$");a.pathCacheKey&&a.pathCacheKey===h?(i=t=a.pathCache,s=!0):(i=t=new Path2D,a.pathCacheKey=h,a.pathCache=i)}if(o.setLineDash)switch(r){case"dotted":o.setLineDash([1,1]);break;case"dashed":o.setLineDash(u),o.lineDashOffset=c;break;case"solid":o.setLineDash([])}if(!s&&!a.badLine)switch(t.beginPath&&t.beginPath(),t.moveTo(n[0],n[1]),a.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var d=2;d+35&&void 0!==arguments[5]?arguments[5]:5,o=arguments.length>6?arguments[6]:void 0;e.beginPath(),e.moveTo(t+a,n),e.lineTo(t+r-a,n),e.quadraticCurveTo(t+r,n,t+r,n+a),e.lineTo(t+r,n+i-a),e.quadraticCurveTo(t+r,n+i,t+r-a,n+i),e.lineTo(t+a,n+i),e.quadraticCurveTo(t,n+i,t,n+i-a),e.lineTo(t,n+a),e.quadraticCurveTo(t,n,t+a,n),e.closePath(),o?e.stroke():e.fill()}yu.eleTextBiggerThanMin=function(e,t){if(!t){var n=e.cy().zoom(),r=this.getPixelRatio(),i=Math.ceil(Lt(n*r));t=Math.pow(2,i)}return!(e.pstyle("font-size").pfValue*t5&&void 0!==arguments[5])||arguments[5],o=this;if(null==r){if(a&&!o.eleTextBiggerThanMin(t))return}else if(!1===r)return;if(t.isNode()){var s=t.pstyle("label");if(!s||!s.value)return;var l=o.getLabelJustification(t);e.textAlign=l,e.textBaseline="bottom"}else{var u=t.element()._private.rscratch.badLine,c=t.pstyle("label"),h=t.pstyle("source-label"),d=t.pstyle("target-label");if(u||(!c||!c.value)&&(!h||!h.value)&&(!d||!d.value))return;e.textAlign="center",e.textBaseline="bottom"}var p,g=!n;n&&(p=n,e.translate(-p.x1,-p.y1)),null==i?(o.drawText(e,t,null,g,a),t.isEdge()&&(o.drawText(e,t,"source",g,a),o.drawText(e,t,"target",g,a))):o.drawText(e,t,i,g,a),n&&e.translate(p.x1,p.y1)},yu.getFontCache=function(e){var t;this.fontCaches=this.fontCaches||[];for(var n=0;n2&&void 0!==arguments[2])||arguments[2],r=t.pstyle("font-style").strValue,i=t.pstyle("font-size").pfValue+"px",a=t.pstyle("font-family").strValue,o=t.pstyle("font-weight").strValue,s=n?t.effectiveOpacity()*t.pstyle("text-opacity").value:1,l=t.pstyle("text-outline-opacity").value*s,u=t.pstyle("color").value,c=t.pstyle("text-outline-color").value;e.font=r+" "+o+" "+i+" "+a,e.lineJoin="round",this.colorFillStyle(e,u[0],u[1],u[2],s),this.colorStrokeStyle(e,c[0],c[1],c[2],l)},yu.getTextAngle=function(e,t){var n=e._private.rscratch,r=t?t+"-":"",i=e.pstyle(r+"text-rotation"),a=nt(n,"labelAngle",t);return"autorotate"===i.strValue?e.isEdge()?a:0:"none"===i.strValue?0:i.pfValue},yu.drawText=function(e,t,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=t._private.rscratch,o=i?t.effectiveOpacity():1;if(!i||0!==o&&0!==t.pstyle("text-opacity").value){"main"===n&&(n=null);var s,l,u=nt(a,"labelX",n),c=nt(a,"labelY",n),h=this.getLabelText(t,n);if(null!=h&&""!==h&&!isNaN(u)&&!isNaN(c)){this.setupTextStyle(e,t,i);var d,p=n?n+"-":"",g=nt(a,"labelWidth",n),f=nt(a,"labelHeight",n),v=t.pstyle(p+"text-margin-x").pfValue,y=t.pstyle(p+"text-margin-y").pfValue,m=t.isEdge(),b=t.pstyle("text-halign").value,x=t.pstyle("text-valign").value;switch(m&&(b="center",x="center"),u+=v,c+=y,0!==(d=r?this.getTextAngle(t,n):0)&&(s=u,l=c,e.translate(s,l),e.rotate(d),u=0,c=0),x){case"top":break;case"center":c+=f/2;break;case"bottom":c+=f}var w=t.pstyle("text-background-opacity").value,E=t.pstyle("text-border-opacity").value,_=t.pstyle("text-border-width").pfValue,T=t.pstyle("text-background-padding").pfValue,D=0===t.pstyle("text-background-shape").strValue.indexOf("round");if(w>0||_>0&&E>0){var C=u-T;switch(b){case"left":C-=g;break;case"center":C-=g/2}var N=c-f-T,A=g+2*T,k=f+2*T;if(w>0){var L=e.fillStyle,S=t.pstyle("text-background-color").value;e.fillStyle="rgba("+S[0]+","+S[1]+","+S[2]+","+w*o+")",D?mu(e,C,N,A,k,2):e.fillRect(C,N,A,k),e.fillStyle=L}if(_>0&&E>0){var M=e.strokeStyle,I=e.lineWidth,O=t.pstyle("text-border-color").value,P=t.pstyle("text-border-style").value;if(e.strokeStyle="rgba("+O[0]+","+O[1]+","+O[2]+","+E*o+")",e.lineWidth=_,e.setLineDash)switch(P){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"double":e.lineWidth=_/4,e.setLineDash([]);break;case"solid":e.setLineDash([])}if(D?mu(e,C,N,A,k,2,"stroke"):e.strokeRect(C,N,A,k),"double"===P){var R=_/2;D?mu(e,C+R,N+R,A-2*R,k-2*R,2,"stroke"):e.strokeRect(C+R,N+R,A-2*R,k-2*R)}e.setLineDash&&e.setLineDash([]),e.lineWidth=I,e.strokeStyle=M}}var B=2*t.pstyle("text-outline-width").pfValue;if(B>0&&(e.lineWidth=B),"wrap"===t.pstyle("text-wrap").value){var F=nt(a,"labelWrapCachedLines",n),z=nt(a,"labelLineHeight",n),G=g/2,Y=this.getLabelJustification(t);switch("auto"===Y||("left"===b?"left"===Y?u+=-g:"center"===Y&&(u+=-G):"center"===b?"left"===Y?u+=-G:"right"===Y&&(u+=G):"right"===b&&("center"===Y?u+=G:"right"===Y&&(u+=g))),x){case"top":case"center":case"bottom":c-=(F.length-1)*z}for(var V=0;V0&&e.strokeText(F[V],u,c),e.fillText(F[V],u,c),c+=z}else B>0&&e.strokeText(h,u,c),e.fillText(h,u,c);0!==d&&(e.rotate(-d),e.translate(-s,-l))}}};var bu={drawNode:function(e,t,n){var r,i,a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],s=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],l=this,u=t._private,c=u.rscratch,h=t.position();if(N(h.x)&&N(h.y)&&(!s||t.visible())){var d,p,g=s?t.effectiveOpacity():1,f=l.usePaths(),v=!1,y=t.padding();r=t.width()+2*y,i=t.height()+2*y,n&&(p=n,e.translate(-p.x1,-p.y1));for(var m=t.pstyle("background-image").value,b=new Array(m.length),x=new Array(m.length),w=0,E=0;E0&&void 0!==arguments[0]?arguments[0]:A;l.eleFillStyle(e,t,n)},U=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R;l.colorStrokeStyle(e,k[0],k[1],k[2],t)},j=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:G;l.colorStrokeStyle(e,F[0],F[1],F[2],t)},q=function(e,t,n,r){var i,a=l.nodePathCache=l.nodePathCache||[],o=Re("polygon"===n?n+","+r.join(","):n,""+t,""+e,""+V),s=a[o],u=!1;return null!=s?(i=s,u=!0,c.pathCache=i):(i=new Path2D,a[o]=c.pathCache=i),{path:i,cacheHit:u}},H=t.pstyle("shape").strValue,W=t.pstyle("shape-polygon-points").pfValue;if(f){e.translate(h.x,h.y);var $=q(r,i,H,W);d=$.path,v=$.cacheHit}var K=function(){if(!v){var n=h;f&&(n={x:0,y:0}),l.nodeShapes[l.getNodeShape(t)].draw(d||e,n.x,n.y,r,i,V,c)}f?e.fill(d):e.fill()},Z=function(){for(var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=u.backgrounding,a=0,o=0;o0&&void 0!==arguments[0]&&arguments[0],a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:g;l.hasPie(t)&&(l.drawPie(e,t,a),n&&(f||l.nodeShapes[l.getNodeShape(t)].draw(e,h.x,h.y,r,i,V,c)))},J=function(){var t=(D>0?D:-D)*(arguments.length>0&&void 0!==arguments[0]?arguments[0]:g),n=D>0?0:255;0!==D&&(l.colorFillStyle(e,n,n,n,t),f?e.fill(d):e.fill())},ee=function(){if(C>0){if(e.lineWidth=C,e.lineCap=M,e.lineJoin=S,e.setLineDash)switch(L){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash(O),e.lineDashOffset=P;break;case"solid":case"double":e.setLineDash([])}if("center"!==I){if(e.save(),e.lineWidth*=2,"inside"===I)f?e.clip(d):e.clip();else{var t=new Path2D;t.rect(-r/2-C,-i/2-C,r+2*C,i+2*C),t.addPath(d),e.clip(t,"evenodd")}f?e.stroke(d):e.stroke(),e.restore()}else f?e.stroke(d):e.stroke();if("double"===L){e.lineWidth=C/3;var n=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",f?e.stroke(d):e.stroke(),e.globalCompositeOperation=n}e.setLineDash&&e.setLineDash([])}},te=function(){if(B>0){if(e.lineWidth=B,e.lineCap="butt",e.setLineDash)switch(z){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"solid":case"double":e.setLineDash([])}var n=h;f&&(n={x:0,y:0});var a=l.getNodeShape(t),o=C;"inside"===I&&(o=0),"outside"===I&&(o*=2);var s,u=(r+o+(B+Y))/r,c=(i+o+(B+Y))/i,d=r*u,p=i*c,g=l.nodeShapes[a].points;if(f&&(s=q(d,p,a,g).path),"ellipse"===a)l.drawEllipsePath(s||e,n.x,n.y,d,p);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(a)){var v=0,y=0,m=0;"round-diamond"===a?v=1.4*(o+Y+B):"round-heptagon"===a?(v=1.075*(o+Y+B),m=-(o/2+Y+B)/35):"round-hexagon"===a?v=1.12*(o+Y+B):"round-pentagon"===a?(v=1.13*(o+Y+B),m=-(o/2+Y+B)/15):"round-tag"===a?(v=1.12*(o+Y+B),y=.07*(o/2+B+Y)):"round-triangle"===a&&(v=(o+Y+B)*(Math.PI/2),m=-(o+Y/2+B)/Math.PI),0!==v&&(d=r*(u=(r+v)/r),["round-hexagon","round-tag"].includes(a)||(p=i*(c=(i+v)/i)));for(var b=d/2,x=p/2,w=(V="auto"===V?pn(d,p):V)+(o+B+Y)/2,E=new Array(g.length/2),_=new Array(g.length/2),T=0;T0){if(r=r||n.position(),null==i||null==a){var h=n.padding();i=n.width()+2*h,a=n.height()+2*h}this.colorFillStyle(t,l[0],l[1],l[2],s),this.nodeShapes[u].draw(t,r.x,r.y,i+2*o,a+2*o,c),t.fill()}}}};bu.drawNodeOverlay=xu("overlay"),bu.drawNodeUnderlay=xu("underlay"),bu.hasPie=function(e){return(e=e[0])._private.hasPie},bu.drawPie=function(e,t,n,r){t=t[0],r=r||t.position();var i=t.cy().style(),a=t.pstyle("pie-size"),o=r.x,s=r.y,l=t.width(),u=t.height(),c=Math.min(l,u)/2,h=0;this.usePaths()&&(o=0,s=0),"%"===a.units?c*=a.pfValue:void 0!==a.pfValue&&(c=a.pfValue/2);for(var d=1;d<=i.pieBackgroundN;d++){var p=t.pstyle("pie-"+d+"-background-size").value,g=t.pstyle("pie-"+d+"-background-color").value,f=t.pstyle("pie-"+d+"-background-opacity").value*n,v=p/100;v+h>1&&(v=1-h);var y=1.5*Math.PI+2*Math.PI*h,m=y+2*Math.PI*v;0===p||h>=1||h+v>1||(e.beginPath(),e.moveTo(o,s),e.arc(o,s,c,y,m),e.closePath(),this.colorFillStyle(e,g[0],g[1],g[2],f),e.fill(),h+=v)}};for(var wu={getPixelRatio:function(){var e=this.data.contexts[0];if(null!=this.forcedPixelRatio)return this.forcedPixelRatio;var t=this.cy.window(),n=e.backingStorePixelRatio||e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return(t.devicePixelRatio||1)/n},paintCache:function(e){for(var t,n=this.paintCaches=this.paintCaches||[],r=!0,i=0;io.minMbLowQualFrames&&(o.motionBlurPxRatio=o.mbPxRBlurry)),o.clearingMotionBlur&&(o.motionBlurPxRatio=1),o.textureDrawLastFrame&&!h&&(c[o.NODE]=!0,c[o.SELECT_BOX]=!0);var m=l.style(),b=l.zoom(),x=void 0!==i?i:b,w=l.pan(),E={x:w.x,y:w.y},_={zoom:b,pan:{x:w.x,y:w.y}},T=o.prevViewport;void 0===T||_.zoom!==T.zoom||_.pan.x!==T.pan.x||_.pan.y!==T.pan.y||f&&!g||(o.motionBlurPxRatio=1),a&&(E=a),x*=s,E.x*=s,E.y*=s;var D=o.getCachedZSortedEles();function C(e,t,n,r,i){var a=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",o.colorFillStyle(e,255,255,255,o.motionBlurTransparency),e.fillRect(t,n,r,i),e.globalCompositeOperation=a}function N(e,r){var s,l,c,h;o.clearingMotionBlur||e!==u.bufferContexts[o.MOTIONBLUR_BUFFER_NODE]&&e!==u.bufferContexts[o.MOTIONBLUR_BUFFER_DRAG]?(s=E,l=x,c=o.canvasWidth,h=o.canvasHeight):(s={x:w.x*p,y:w.y*p},l=b*p,c=o.canvasWidth*p,h=o.canvasHeight*p),e.setTransform(1,0,0,1,0,0),"motionBlur"===r?C(e,0,0,c,h):t||void 0!==r&&!r||e.clearRect(0,0,c,h),n||(e.translate(s.x,s.y),e.scale(l,l)),a&&e.translate(a.x,a.y),i&&e.scale(i,i)}if(h||(o.textureDrawLastFrame=!1),h){if(o.textureDrawLastFrame=!0,!o.textureCache){o.textureCache={},o.textureCache.bb=l.mutableElements().boundingBox(),o.textureCache.texture=o.data.bufferCanvases[o.TEXTURE_BUFFER];var A=o.data.bufferContexts[o.TEXTURE_BUFFER];A.setTransform(1,0,0,1,0,0),A.clearRect(0,0,o.canvasWidth*o.textureMult,o.canvasHeight*o.textureMult),o.render({forcedContext:A,drawOnlyNodeLayer:!0,forcedPxRatio:s*o.textureMult}),(_=o.textureCache.viewport={zoom:l.zoom(),pan:l.pan(),width:o.canvasWidth,height:o.canvasHeight}).mpan={x:(0-_.pan.x)/_.zoom,y:(0-_.pan.y)/_.zoom}}c[o.DRAG]=!1,c[o.NODE]=!1;var k=u.contexts[o.NODE],L=o.textureCache.texture;_=o.textureCache.viewport,k.setTransform(1,0,0,1,0,0),d?C(k,0,0,_.width,_.height):k.clearRect(0,0,_.width,_.height);var S=m.core("outside-texture-bg-color").value,M=m.core("outside-texture-bg-opacity").value;o.colorFillStyle(k,S[0],S[1],S[2],M),k.fillRect(0,0,_.width,_.height),b=l.zoom(),N(k,!1),k.clearRect(_.mpan.x,_.mpan.y,_.width/_.zoom/s,_.height/_.zoom/s),k.drawImage(L,_.mpan.x,_.mpan.y,_.width/_.zoom/s,_.height/_.zoom/s)}else o.textureOnViewport&&!t&&(o.textureCache=null);var I=l.extent(),O=o.pinching||o.hoverData.dragging||o.swipePanning||o.data.wheelZooming||o.hoverData.draggingEles||o.cy.animated(),P=o.hideEdgesOnViewport&&O,R=[];if(R[o.NODE]=!c[o.NODE]&&d&&!o.clearedForMotionBlur[o.NODE]||o.clearingMotionBlur,R[o.NODE]&&(o.clearedForMotionBlur[o.NODE]=!0),R[o.DRAG]=!c[o.DRAG]&&d&&!o.clearedForMotionBlur[o.DRAG]||o.clearingMotionBlur,R[o.DRAG]&&(o.clearedForMotionBlur[o.DRAG]=!0),c[o.NODE]||n||r||R[o.NODE]){var B=d&&!R[o.NODE]&&1!==p;N(k=t||(B?o.data.bufferContexts[o.MOTIONBLUR_BUFFER_NODE]:u.contexts[o.NODE]),d&&!B?"motionBlur":void 0),P?o.drawCachedNodes(k,D.nondrag,s,I):o.drawLayeredElements(k,D.nondrag,s,I),o.debug&&o.drawDebugPoints(k,D.nondrag),n||d||(c[o.NODE]=!1)}if(!r&&(c[o.DRAG]||n||R[o.DRAG])&&(B=d&&!R[o.DRAG]&&1!==p,N(k=t||(B?o.data.bufferContexts[o.MOTIONBLUR_BUFFER_DRAG]:u.contexts[o.DRAG]),d&&!B?"motionBlur":void 0),P?o.drawCachedNodes(k,D.drag,s,I):o.drawCachedElements(k,D.drag,s,I),o.debug&&o.drawDebugPoints(k,D.drag),n||d||(c[o.DRAG]=!1)),o.showFps||!r&&c[o.SELECT_BOX]&&!n){if(N(k=t||u.contexts[o.SELECT_BOX]),1==o.selection[4]&&(o.hoverData.selecting||o.touchData.selecting)){b=o.cy.zoom();var F=m.core("selection-box-border-width").value/b;k.lineWidth=F,k.fillStyle="rgba("+m.core("selection-box-color").value[0]+","+m.core("selection-box-color").value[1]+","+m.core("selection-box-color").value[2]+","+m.core("selection-box-opacity").value+")",k.fillRect(o.selection[0],o.selection[1],o.selection[2]-o.selection[0],o.selection[3]-o.selection[1]),F>0&&(k.strokeStyle="rgba("+m.core("selection-box-border-color").value[0]+","+m.core("selection-box-border-color").value[1]+","+m.core("selection-box-border-color").value[2]+","+m.core("selection-box-opacity").value+")",k.strokeRect(o.selection[0],o.selection[1],o.selection[2]-o.selection[0],o.selection[3]-o.selection[1]))}if(u.bgActivePosistion&&!o.hoverData.selecting){b=o.cy.zoom();var z=u.bgActivePosistion;k.fillStyle="rgba("+m.core("active-bg-color").value[0]+","+m.core("active-bg-color").value[1]+","+m.core("active-bg-color").value[2]+","+m.core("active-bg-opacity").value+")",k.beginPath(),k.arc(z.x,z.y,m.core("active-bg-size").pfValue/b,0,2*Math.PI),k.fill()}var G=o.lastRedrawTime;if(o.showFps&&G){G=Math.round(G);var Y=Math.round(1e3/G);k.setTransform(1,0,0,1,0,0),k.fillStyle="rgba(255, 0, 0, 0.75)",k.strokeStyle="rgba(255, 0, 0, 0.75)",k.lineWidth=1,k.fillText("1 frame = "+G+" ms = "+Y+" fps",0,20),k.strokeRect(0,30,250,20),k.fillRect(0,30,250*Math.min(Y/60,1),20)}n||(c[o.SELECT_BOX]=!1)}if(d&&1!==p){var V=u.contexts[o.NODE],X=o.data.bufferCanvases[o.MOTIONBLUR_BUFFER_NODE],U=u.contexts[o.DRAG],j=o.data.bufferCanvases[o.MOTIONBLUR_BUFFER_DRAG],q=function(e,t,n){e.setTransform(1,0,0,1,0,0),n||!y?e.clearRect(0,0,o.canvasWidth,o.canvasHeight):C(e,0,0,o.canvasWidth,o.canvasHeight);var r=p;e.drawImage(t,0,0,o.canvasWidth*r,o.canvasHeight*r,0,0,o.canvasWidth,o.canvasHeight)};(c[o.NODE]||R[o.NODE])&&(q(V,X,R[o.NODE]),c[o.NODE]=!1),(c[o.DRAG]||R[o.DRAG])&&(q(U,j,R[o.DRAG]),c[o.DRAG]=!1)}o.prevViewport=_,o.clearingMotionBlur&&(o.clearingMotionBlur=!1,o.motionBlurCleared=!0,o.motionBlur=!0),d&&(o.motionBlurTimeout=setTimeout((function(){o.motionBlurTimeout=null,o.clearedForMotionBlur[o.NODE]=!1,o.clearedForMotionBlur[o.DRAG]=!1,o.motionBlur=!1,o.clearingMotionBlur=!h,o.mbFrames=0,c[o.NODE]=!0,c[o.DRAG]=!0,o.redraw()}),100)),t||l.emit("render")}},Eu={drawPolygonPath:function(e,t,n,r,i,a){var o=r/2,s=i/2;e.beginPath&&e.beginPath(),e.moveTo(t+o*a[0],n+s*a[1]);for(var l=1;l0&&a>0){d.clearRect(0,0,i,a),d.globalCompositeOperation="source-over";var p=this.getCachedZSortedEles();if(e.full)d.translate(-n.x1*l,-n.y1*l),d.scale(l,l),this.drawElements(d,p),d.scale(1/l,1/l),d.translate(n.x1*l,n.y1*l);else{var g=t.pan(),f={x:g.x*l,y:g.y*l};l*=t.zoom(),d.translate(f.x,f.y),d.scale(l,l),this.drawElements(d,p),d.scale(1/l,1/l),d.translate(-f.x,-f.y)}e.bg&&(d.globalCompositeOperation="destination-over",d.fillStyle=e.bg,d.rect(0,0,i,a),d.fill())}return h},ku.png=function(e){return Su(e,this.bufferCanvasImage(e),"image/png")},ku.jpg=function(e){return Su(e,this.bufferCanvasImage(e),"image/jpeg")};var Mu=Ou,Iu=Ou.prototype;function Ou(e){var t=this,n=t.cy.window().document;t.data={canvases:new Array(Iu.CANVAS_LAYERS),contexts:new Array(Iu.CANVAS_LAYERS),canvasNeedsRedraw:new Array(Iu.CANVAS_LAYERS),bufferCanvases:new Array(Iu.BUFFER_COUNT),bufferContexts:new Array(Iu.CANVAS_LAYERS)};var r="-webkit-tap-highlight-color",i="rgba(0,0,0,0)";t.data.canvasContainer=n.createElement("div");var a=t.data.canvasContainer.style;t.data.canvasContainer.style[r]=i,a.position="relative",a.zIndex="0",a.overflow="hidden";var o=e.cy.container();o.appendChild(t.data.canvasContainer),o.style[r]=i;var s={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};y&&y.userAgent.match(/msie|trident|edge/i)&&(s["-ms-touch-action"]="none",s["touch-action"]="none");for(var l=0;l2&&N.push("'"+this.terminals_[T]+"'");k=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+N.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(u+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(k,{text:p.match,token:this.terminals_[b]||b,line:p.yylineno,loc:v,expected:N})}if(E[0]instanceof Array&&E.length>1)throw new Error("Parse Error: multiple actions possible at state: "+w+", token: "+b);switch(E[0]){case 1:n.push(b),i.push(p.yytext),a.push(p.yylloc),n.push(E[1]),b=null,x?(b=x,x=null):(c=p.yyleng,l=p.yytext,u=p.yylineno,v=p.yylloc,h>0&&h--);break;case 2:if(D=this.productions_[E[1]][1],A.$=i[i.length-D],A._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},y&&(A._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),void 0!==(_=this.performAction.apply(A,[l,c,u,g.yy,E[1],i,a].concat(d))))return _;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[E[1]][0]),i.push(A.$),a.push(A._$),C=s[n[n.length-2]][n[n.length-1]],n.push(C);break;case 3:return!0}}return!0}),"parse")},b=function(){var e={EOF:1,parseError:(0,o.K2)((function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)}),"parseError"),setInput:(0,o.K2)((function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,o.K2)((function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e}),"input"),unput:(0,o.K2)((function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,o.K2)((function(){return this._more=!0,this}),"more"),reject:(0,o.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,o.K2)((function(e){this.unput(this.match.slice(e))}),"less"),pastInput:(0,o.K2)((function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,o.K2)((function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,o.K2)((function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"}),"showPosition"),test_match:(0,o.K2)((function(e,t){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1}),"test_match"),next:(0,o.K2)((function(){if(this.done)return this.EOF;var e,t,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=n,r=a,this.options.backtrack_lexer){if(!1!==(e=this.test_match(n,i[a])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,i[r]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,o.K2)((function(){return this.next()||this.lex()}),"lex"),begin:(0,o.K2)((function(e){this.conditionStack.push(e)}),"begin"),popState:(0,o.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,o.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,o.K2)((function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"}),"topState"),pushState:(0,o.K2)((function(e){this.begin(e)}),"pushState"),stateStackSize:(0,o.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,o.K2)((function(e,t,n,r){switch(n){case 0:return e.getLogger().trace("Found comment",t.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:case 23:case 26:this.popState();break;case 5:e.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return e.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:e.getLogger().trace("end icon"),this.popState();break;case 10:return e.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return e.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return e.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return e.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:case 15:case 16:case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 24:e.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return e.getLogger().trace("description:",t.yytext),"NODE_DESCR";case 27:return this.popState(),e.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),e.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),e.getLogger().trace("node end ...",t.yytext),"NODE_DEND";case 30:case 33:case 34:return this.popState(),e.getLogger().trace("node end (("),"NODE_DEND";case 31:case 32:return this.popState(),e.getLogger().trace("node end (-"),"NODE_DEND";case 35:case 36:return e.getLogger().trace("Long description:",t.yytext),20}}),"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return e}();function x(){this.yy={}}return m.lexer=b,(0,o.K2)(x,"Parser"),x.prototype=m,m.Parser=x,new x}();Qu.parser=Qu;var Ju=Qu,ec=[],tc=0,nc={},rc=(0,o.K2)((()=>{ec=[],tc=0,nc={}}),"clear"),ic=(0,o.K2)((function(e){for(let t=ec.length-1;t>=0;t--)if(ec[t].levelec.length>0?ec[0]:null),"getMindmap"),oc=(0,o.K2)(((e,t,n,r)=>{o.Rm.info("addNode",e,t,n,r);const i=(0,o.D7)();let a=i.mindmap?.padding??o.UI.mindmap.padding;switch(r){case sc.ROUNDED_RECT:case sc.RECT:case sc.HEXAGON:a*=2}const s={id:tc++,nodeId:(0,o.jZ)(t,i),level:e,descr:(0,o.jZ)(n,i),type:r,children:[],width:i.mindmap?.maxNodeWidth??o.UI.mindmap.maxNodeWidth,padding:a},l=ic(e);if(l)l.children.push(s),ec.push(s);else{if(0!==ec.length)throw new Error('There can be only one root. No parent could be found for ("'+s.descr+'")');ec.push(s)}}),"addNode"),sc={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},lc={clear:rc,addNode:oc,getMindmap:ac,nodeType:sc,getType:(0,o.K2)(((e,t)=>{switch(o.Rm.debug("In get type",e,t),e){case"[":return sc.RECT;case"(":return")"===t?sc.ROUNDED_RECT:sc.CLOUD;case"((":return sc.CIRCLE;case")":return sc.CLOUD;case"))":return sc.BANG;case"{{":return sc.HEXAGON;default:return sc.DEFAULT}}),"getType"),setElementForId:(0,o.K2)(((e,t)=>{nc[e]=t}),"setElementForId"),decorateNode:(0,o.K2)((e=>{if(!e)return;const t=(0,o.D7)(),n=ec[ec.length-1];e.icon&&(n.icon=(0,o.jZ)(e.icon,t)),e.class&&(n.class=(0,o.jZ)(e.class,t))}),"decorateNode"),type2Str:(0,o.K2)((e=>{switch(e){case sc.DEFAULT:return"no-border";case sc.RECT:return"rect";case sc.ROUNDED_RECT:return"rounded-rect";case sc.CIRCLE:return"circle";case sc.CLOUD:return"cloud";case sc.BANG:return"bang";case sc.HEXAGON:return"hexgon";default:return"no-border"}}),"type2Str"),getLogger:(0,o.K2)((()=>o.Rm),"getLogger"),getElementById:(0,o.K2)((e=>nc[e]),"getElementById")},uc=(0,o.K2)((function(e,t,n,r){t.append("path").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("d",`M0 ${n.height-5} v${10-n.height} q0,-5 5,-5 h${n.width-10} q5,0 5,5 v${n.height-5} H0 Z`),t.append("line").attr("class","node-line-"+r).attr("x1",0).attr("y1",n.height).attr("x2",n.width).attr("y2",n.height)}),"defaultBkg"),cc=(0,o.K2)((function(e,t,n){t.append("rect").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("height",n.height).attr("width",n.width)}),"rectBkg"),hc=(0,o.K2)((function(e,t,n){const r=n.width,i=n.height,a=.15*r,o=.25*r,s=.35*r,l=.2*r;t.append("path").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("d",`M0 0 a${a},${a} 0 0,1 ${.25*r},${-1*r*.1}\n a${s},${s} 1 0,1 ${.4*r},${-1*r*.1}\n a${o},${o} 1 0,1 ${.35*r},${1*r*.2}\n\n a${a},${a} 1 0,1 ${.15*r},${1*i*.35}\n a${l},${l} 1 0,1 ${-1*r*.15},${1*i*.65}\n\n a${o},${a} 1 0,1 ${-1*r*.25},${.15*r}\n a${s},${s} 1 0,1 ${-1*r*.5},0\n a${a},${a} 1 0,1 ${-1*r*.25},${-1*r*.15}\n\n a${a},${a} 1 0,1 ${-1*r*.1},${-1*i*.35}\n a${l},${l} 1 0,1 ${.1*r},${-1*i*.65}\n\n H0 V0 Z`)}),"cloudBkg"),dc=(0,o.K2)((function(e,t,n){const r=n.width,i=n.height,a=.15*r;t.append("path").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("d",`M0 0 a${a},${a} 1 0,0 ${.25*r},${-1*i*.1}\n a${a},${a} 1 0,0 ${.25*r},0\n a${a},${a} 1 0,0 ${.25*r},0\n a${a},${a} 1 0,0 ${.25*r},${1*i*.1}\n\n a${a},${a} 1 0,0 ${.15*r},${1*i*.33}\n a${.8*a},${.8*a} 1 0,0 0,${1*i*.34}\n a${a},${a} 1 0,0 ${-1*r*.15},${1*i*.33}\n\n a${a},${a} 1 0,0 ${-1*r*.25},${.15*i}\n a${a},${a} 1 0,0 ${-1*r*.25},0\n a${a},${a} 1 0,0 ${-1*r*.25},0\n a${a},${a} 1 0,0 ${-1*r*.25},${-1*i*.15}\n\n a${a},${a} 1 0,0 ${-1*r*.1},${-1*i*.33}\n a${.8*a},${.8*a} 1 0,0 0,${-1*i*.34}\n a${a},${a} 1 0,0 ${.1*r},${-1*i*.33}\n\n H0 V0 Z`)}),"bangBkg"),pc=(0,o.K2)((function(e,t,n){t.append("circle").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("r",n.width/2)}),"circleBkg");function gc(e,t,n,r,i){return e.insert("polygon",":first-child").attr("points",r.map((function(e){return e.x+","+e.y})).join(" ")).attr("transform","translate("+(i.width-t)/2+", "+n+")")}(0,o.K2)(gc,"insertPolygonShape");var fc=(0,o.K2)((function(e,t,n){const r=n.height,i=r/4,a=n.width-n.padding+2*i;gc(t,a,r,[{x:i,y:0},{x:a-i,y:0},{x:a,y:-r/2},{x:a-i,y:-r},{x:i,y:-r},{x:0,y:-r/2}],n)}),"hexagonBkg"),vc=(0,o.K2)((function(e,t,n){t.append("rect").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("height",n.height).attr("rx",n.padding).attr("ry",n.padding).attr("width",n.width)}),"roundedRectBkg"),yc=(0,o.K2)((async function(e,t,n,a,o){const s=o.htmlLabels,l=a%11,u=t.append("g");n.section=l;let c="section-"+l;l<0&&(c+=" section-root"),u.attr("class",(n.class?n.class+" ":"")+"mindmap-node "+c);const h=u.append("g"),d=u.append("g"),p=n.descr.replace(/()/g,"\n");await(0,r.GZ)(d,p,{useHtmlLabels:s,width:n.width,classes:"mindmap-node-label"},o),s||d.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");const g=d.node().getBBox(),[f]=(0,i.I5)(o.fontSize);if(n.height=g.height+1.1*f*.5+n.padding,n.width=g.width+2*n.padding,n.icon)if(n.type===e.nodeType.CIRCLE)n.height+=50,n.width+=50,u.append("foreignObject").attr("height","50px").attr("width",n.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+l+" "+n.icon),d.attr("transform","translate("+n.width/2+", "+(n.height/2-1.5*n.padding)+")");else{n.width+=50;const e=n.height;n.height=Math.max(e,60);const t=Math.abs(n.height-e);u.append("foreignObject").attr("width","60px").attr("height",n.height).attr("style","text-align: center;margin-top:"+t/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+l+" "+n.icon),d.attr("transform","translate("+(25+n.width/2)+", "+(t/2+n.padding/2)+")")}else if(s){const e=(n.width-g.width)/2,t=(n.height-g.height)/2;d.attr("transform","translate("+e+", "+t+")")}else{const e=n.width/2,t=n.padding/2;d.attr("transform","translate("+e+", "+t+")")}switch(n.type){case e.nodeType.DEFAULT:uc(e,h,n,l);break;case e.nodeType.ROUNDED_RECT:vc(e,h,n,l);break;case e.nodeType.RECT:cc(e,h,n,l);break;case e.nodeType.CIRCLE:h.attr("transform","translate("+n.width/2+", "+ +n.height/2+")"),pc(e,h,n,l);break;case e.nodeType.CLOUD:hc(e,h,n,l);break;case e.nodeType.BANG:dc(e,h,n,l);break;case e.nodeType.HEXAGON:fc(e,h,n,l)}return e.setElementForId(n.id,u),n.height}),"drawNode"),mc=(0,o.K2)((function(e,t){const n=e.getElementById(t.id),r=t.x||0,i=t.y||0;n.attr("transform","translate("+r+","+i+")")}),"positionNode");async function bc(e,t,n,r,i){await yc(e,t,n,r,i),n.children&&await Promise.all(n.children.map(((n,a)=>bc(e,t,n,r<0?a:r,i))))}function xc(e,t){t.edges().map(((t,n)=>{const r=t.data();if(t[0]._private.bodyBounds){const i=t[0]._private.rscratch;o.Rm.trace("Edge: ",n,r),e.insert("path").attr("d",`M ${i.startX},${i.startY} L ${i.midX},${i.midY} L${i.endX},${i.endY} `).attr("class","edge section-edge-"+r.section+" edge-depth-"+r.depth)}}))}function wc(e,t,n,r){t.add({group:"nodes",data:{id:e.id.toString(),labelText:e.descr,height:e.height,width:e.width,level:r,nodeId:e.id,padding:e.padding,type:e.type},position:{x:e.x,y:e.y}}),e.children&&e.children.forEach((i=>{wc(i,t,n,r+1),t.add({group:"edges",data:{id:`${e.id}_${i.id}`,source:e.id,target:i.id,depth:r,section:i.section}})}))}function Ec(e,t){return new Promise((n=>{const r=(0,Wu.Ltv)("body").append("div").attr("id","cy").attr("style","display:none"),i=qu({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});r.remove(),wc(e,i,t,0),i.nodes().forEach((function(e){e.layoutDimensions=()=>{const t=e.data();return{w:t.width,h:t.height}}})),i.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),i.ready((e=>{o.Rm.info("Ready",e),n(i)}))}))}function _c(e,t){t.nodes().map(((t,n)=>{const r=t.data();r.x=t.position().x,r.y=t.position().y,mc(e,r);const i=e.getElementById(r.nodeId);o.Rm.info("Id:",n,"Position: (",t.position().x,", ",t.position().y,")",r),i.attr("transform",`translate(${t.position().x-r.width/2}, ${t.position().y-r.height/2})`),i.attr("attr",`apa-${n})`)}))}qu.use(Hu),(0,o.K2)(bc,"drawNodes"),(0,o.K2)(xc,"drawEdges"),(0,o.K2)(wc,"addNodes"),(0,o.K2)(Ec,"layoutMindmap"),(0,o.K2)(_c,"positionNodes");var Tc={draw:(0,o.K2)((async(e,t,n,r)=>{o.Rm.debug("Rendering mindmap diagram\n"+e);const i=r.db,s=i.getMindmap();if(!s)return;const l=(0,o.D7)();l.htmlLabels=!1;const u=(0,a.D)(t),c=u.append("g");c.attr("class","mindmap-edges");const h=u.append("g");h.attr("class","mindmap-nodes"),await bc(i,h,s,-1,l);const d=await Ec(s,l);xc(c,d),_c(i,d),(0,o.ot)(void 0,u,l.mindmap?.padding??o.UI.mindmap.padding,l.mindmap?.useMaxWidth??o.UI.mindmap.useMaxWidth)}),"draw")},Dc=(0,o.K2)((e=>{let t="";for(let t=0;t`\n .edge {\n stroke-width: 3;\n }\n ${Dc(e)}\n .section-root rect, .section-root path, .section-root circle, .section-root polygon {\n fill: ${e.git0};\n }\n .section-root text {\n fill: ${e.gitBranchLabel0};\n }\n .icon-container {\n height:100%;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n .edge {\n fill: none;\n }\n .mindmap-node-label {\n dy: 1em;\n alignment-baseline: middle;\n text-anchor: middle;\n dominant-baseline: middle;\n text-align: center;\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/998-31a2dbbe.chunk.min.js b/themes/hugo-geekdoc/static/js/998-31a2dbbe.chunk.min.js new file mode 100644 index 000000000..4011cef91 --- /dev/null +++ b/themes/hugo-geekdoc/static/js/998-31a2dbbe.chunk.min.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgeekdoc=self.webpackChunkgeekdoc||[]).push([[998],{4998:(t,e,a)=>{a.d(e,{diagram:()=>b});var r=a(1805),i=a(5522),n=a(32),d=a(4852),o=a(567),s=a(697),l=0,p=(0,n.K2)((function(t,e,a,r,o){const s=(0,n.K2)((function(t){switch(t){case o.db.relationType.AGGREGATION:return"aggregation";case o.db.relationType.EXTENSION:return"extension";case o.db.relationType.COMPOSITION:return"composition";case o.db.relationType.DEPENDENCY:return"dependency";case o.db.relationType.LOLLIPOP:return"lollipop"}}),"getRelationType");e.points=e.points.filter((t=>!Number.isNaN(t.y)));const p=e.points,g=(0,d.n8j)().x((function(t){return t.x})).y((function(t){return t.y})).curve(d.qrM),c=t.append("path").attr("d",g(p)).attr("id","edge"+l).attr("class","relation");let h,f,x="";r.arrowMarkerAbsolute&&(x=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,x=x.replace(/\(/g,"\\("),x=x.replace(/\)/g,"\\)")),1==a.relation.lineType&&c.attr("class","relation dashed-line"),10==a.relation.lineType&&c.attr("class","relation dotted-line"),"none"!==a.relation.type1&&c.attr("marker-start","url("+x+"#"+s(a.relation.type1)+"Start)"),"none"!==a.relation.type2&&c.attr("marker-end","url("+x+"#"+s(a.relation.type2)+"End)");const y=e.points.length;let u,m,w,b,k=i._K.calcLabelPosition(e.points);if(h=k.x,f=k.y,y%2!=0&&y>1){let t=i._K.calcCardinalityPosition("none"!==a.relation.type1,e.points,e.points[0]),r=i._K.calcCardinalityPosition("none"!==a.relation.type2,e.points,e.points[y-1]);n.Rm.debug("cardinality_1_point "+JSON.stringify(t)),n.Rm.debug("cardinality_2_point "+JSON.stringify(r)),u=t.x,m=t.y,w=r.x,b=r.y}if(void 0!==a.title){const e=t.append("g").attr("class","classLabel"),i=e.append("text").attr("class","label").attr("x",h).attr("y",f).attr("fill","red").attr("text-anchor","middle").text(a.title);window.label=i;const n=i.node().getBBox();e.insert("rect",":first-child").attr("class","box").attr("x",n.x-r.padding/2).attr("y",n.y-r.padding/2).attr("width",n.width+r.padding).attr("height",n.height+r.padding)}n.Rm.info("Rendering relation "+JSON.stringify(a)),void 0!==a.relationTitle1&&"none"!==a.relationTitle1&&t.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",u).attr("y",m).attr("fill","black").attr("font-size","6").text(a.relationTitle1),void 0!==a.relationTitle2&&"none"!==a.relationTitle2&&t.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",w).attr("y",b).attr("fill","black").attr("font-size","6").text(a.relationTitle2),l++}),"drawEdge"),g=(0,n.K2)((function(t,e,a,r){n.Rm.debug("Rendering class ",e,a);const i=e.id,d={id:i,label:e.id,width:0,height:0},o=t.append("g").attr("id",r.db.lookUpDomId(i)).attr("class","classGroup");let s;s=e.link?o.append("svg:a").attr("xlink:href",e.link).attr("target",e.linkTarget).append("text").attr("y",a.textHeight+a.padding).attr("x",0):o.append("text").attr("y",a.textHeight+a.padding).attr("x",0);let l=!0;e.annotations.forEach((function(t){const e=s.append("tspan").text("«"+t+"»");l||e.attr("dy",a.textHeight),l=!1}));let p=c(e);const g=s.append("tspan").text(p).attr("class","title");l||g.attr("dy",a.textHeight);const h=s.node().getBBox().height;let x,y,u;if(e.members.length>0){x=o.append("line").attr("x1",0).attr("y1",a.padding+h+a.dividerMargin/2).attr("y2",a.padding+h+a.dividerMargin/2);const t=o.append("text").attr("x",a.padding).attr("y",h+a.dividerMargin+a.textHeight).attr("fill","white").attr("class","classText");l=!0,e.members.forEach((function(e){f(t,e,l,a),l=!1})),y=t.node().getBBox()}if(e.methods.length>0){u=o.append("line").attr("x1",0).attr("y1",a.padding+h+a.dividerMargin+y.height).attr("y2",a.padding+h+a.dividerMargin+y.height);const t=o.append("text").attr("x",a.padding).attr("y",h+2*a.dividerMargin+y.height+a.textHeight).attr("fill","white").attr("class","classText");l=!0,e.methods.forEach((function(e){f(t,e,l,a),l=!1}))}const m=o.node().getBBox();var w=" ";e.cssClasses.length>0&&(w+=e.cssClasses.join(" "));const b=o.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",m.width+2*a.padding).attr("height",m.height+a.padding+.5*a.dividerMargin).attr("class",w).node().getBBox().width;return s.node().childNodes.forEach((function(t){t.setAttribute("x",(b-t.getBBox().width)/2)})),e.tooltip&&s.insert("title").text(e.tooltip),x&&x.attr("x2",b),u&&u.attr("x2",b),d.width=b,d.height=m.height+a.padding+.5*a.dividerMargin,d}),"drawClass"),c=(0,n.K2)((function(t){let e=t.id;return t.type&&(e+="<"+(0,n.QO)(t.type)+">"),e}),"getClassTitleString"),h=(0,n.K2)((function(t,e,a,r){n.Rm.debug("Rendering note ",e,a);const i=e.id,d={id:i,text:e.text,width:0,height:0},o=t.append("g").attr("id",i).attr("class","classGroup");let s=o.append("text").attr("y",a.textHeight+a.padding).attr("x",0);const l=JSON.parse(`"${e.text}"`).split("\n");l.forEach((function(t){n.Rm.debug(`Adding line: ${t}`),s.append("tspan").text(t).attr("class","title").attr("dy",a.textHeight)}));const p=o.node().getBBox(),g=o.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",p.width+2*a.padding).attr("height",p.height+l.length*a.textHeight+a.padding+.5*a.dividerMargin).node().getBBox().width;return s.node().childNodes.forEach((function(t){t.setAttribute("x",(g-t.getBBox().width)/2)})),d.width=g,d.height=p.height+l.length*a.textHeight+a.padding+.5*a.dividerMargin,d}),"drawNote"),f=(0,n.K2)((function(t,e,a,r){const{displayText:i,cssStyle:n}=e.getDisplayDetails(),d=t.append("tspan").attr("x",r.padding).text(i);""!==n&&d.attr("style",e.cssStyle),a||d.attr("dy",r.textHeight)}),"addTspan"),x={getClassTitleString:c,drawClass:g,drawEdge:p,drawNote:h},y={},u=(0,n.K2)((function(t){const e=Object.entries(y).find((e=>e[1].label===t));if(e)return e[0]}),"getGraphId"),m=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),t.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"insertMarkers"),w={draw:(0,n.K2)((function(t,e,a,r){const i=(0,n.D7)().class;y={},n.Rm.info("Rendering diagram "+t);const l=(0,n.D7)().securityLevel;let p;"sandbox"===l&&(p=(0,d.Ltv)("#i"+e));const g="sandbox"===l?(0,d.Ltv)(p.nodes()[0].contentDocument.body):(0,d.Ltv)("body"),c=g.select(`[id='${e}']`);m(c);const h=new s.T({multigraph:!0});h.setGraph({isMultiGraph:!0}),h.setDefaultEdgeLabel((function(){return{}}));const f=r.db.getClasses(),w=[...f.keys()];for(const t of w){const e=f.get(t),a=x.drawClass(c,e,i,r);y[a.id]=a,h.setNode(a.id,a),n.Rm.info("Org height: "+a.height)}r.db.getRelations().forEach((function(t){n.Rm.info("tjoho"+u(t.id1)+u(t.id2)+JSON.stringify(t)),h.setEdge(u(t.id1),u(t.id2),{relation:t},t.title||"DEFAULT")})),r.db.getNotes().forEach((function(t){n.Rm.debug(`Adding note: ${JSON.stringify(t)}`);const e=x.drawNote(c,t,i,r);y[e.id]=e,h.setNode(e.id,e),t.class&&f.has(t.class)&&h.setEdge(t.id,u(t.class),{relation:{id1:t.id,id2:t.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")})),(0,o.Zp)(h),h.nodes().forEach((function(t){void 0!==t&&void 0!==h.node(t)&&(n.Rm.debug("Node "+t+": "+JSON.stringify(h.node(t))),g.select("#"+(r.db.lookUpDomId(t)||t)).attr("transform","translate("+(h.node(t).x-h.node(t).width/2)+","+(h.node(t).y-h.node(t).height/2)+" )"))})),h.edges().forEach((function(t){void 0!==t&&void 0!==h.edge(t)&&(n.Rm.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(h.edge(t))),x.drawEdge(c,h.edge(t),h.edge(t).relation,i,r))}));const b=c.node().getBBox(),k=b.width+40,L=b.height+40;(0,n.a$)(c,L,k,i.useMaxWidth);const E=`${b.x-20} ${b.y-20} ${k} ${L}`;n.Rm.debug(`viewBox ${E}`),c.attr("viewBox",E)}),"draw")},b={parser:r._$,db:r.z2,renderer:w,styles:r.tM,init:(0,n.K2)((t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,r.z2.clear()}),"init")}}}]); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/mermaid-3292ee5a.bundle.min.js b/themes/hugo-geekdoc/static/js/mermaid-3292ee5a.bundle.min.js new file mode 100644 index 000000000..5761dd7ad --- /dev/null +++ b/themes/hugo-geekdoc/static/js/mermaid-3292ee5a.bundle.min.js @@ -0,0 +1,2 @@ +/*! For license information please see mermaid-3292ee5a.bundle.min.js.LICENSE.txt */ +(()=>{var t,e,r={9119:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BLANK_URL=e.relativeFirstCharacters=e.whitespaceEscapeCharsRegex=e.urlSchemeRegex=e.ctrlCharactersRegex=e.htmlCtrlEntityRegex=e.htmlEntitiesRegex=e.invalidProtocolRegex=void 0,e.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im,e.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g,e.htmlCtrlEntityRegex=/&(newline|tab);/gi,e.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,e.urlSchemeRegex=/^.+(:|:)/gim,e.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g,e.relativeFirstCharacters=[".","/"],e.BLANK_URL="about:blank"},6750:(t,e,r)=>{"use strict";e.J=void 0;var i=r(9119);function n(t){try{return decodeURIComponent(t)}catch(e){return t}}e.J=function(t){if(!t)return i.BLANK_URL;var e,r,o=n(t.trim());do{e=(o=n(o=(r=o,r.replace(i.ctrlCharactersRegex,"").replace(i.htmlEntitiesRegex,(function(t,e){return String.fromCharCode(e)}))).replace(i.htmlCtrlEntityRegex,"").replace(i.ctrlCharactersRegex,"").replace(i.whitespaceEscapeCharsRegex,"").trim())).match(i.ctrlCharactersRegex)||o.match(i.htmlEntitiesRegex)||o.match(i.htmlCtrlEntityRegex)||o.match(i.whitespaceEscapeCharsRegex)}while(e&&e.length>0);var a=o;if(!a)return i.BLANK_URL;if(function(t){return i.relativeFirstCharacters.indexOf(t[0])>-1}(a))return a;var s=a.trimStart(),l=s.match(i.urlSchemeRegex);if(!l)return a;var h=l[0].toLowerCase().trim();if(i.invalidProtocolRegex.test(h))return i.BLANK_URL;var c=s.replace(/\\/g,"/");if("mailto:"===h||h.includes("://"))return c;if("http:"===h||"https:"===h){if(!function(t){return URL.canParse(t)}(c))return i.BLANK_URL;var u=new URL(c);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return c}},4353:function(t){t.exports=function(){"use strict";var t=6e4,e=36e5,r="millisecond",i="second",n="minute",o="hour",a="day",s="week",l="month",h="quarter",c="year",u="date",d="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,f=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],r=t%100;return"["+t+(e[(r-20)%10]||e[r]||e[0])+"]"}},y=function(t,e,r){var i=String(t);return!i||i.length>=e?t:""+Array(e+1-i.length).join(r)+t},m={s:y,z:function(t){var e=-t.utcOffset(),r=Math.abs(e),i=Math.floor(r/60),n=r%60;return(e<=0?"+":"-")+y(i,2,"0")+":"+y(n,2,"0")},m:function t(e,r){if(e.date()1)return t(a[0])}else{var s=e.name;b[s]=e,n=s}return!i&&n&&(x=n),n||!i&&x},_=function(t,e){if(C(t))return t.clone();var r="object"==typeof e?e:{};return r.date=t,r.args=arguments,new S(r)},v=m;v.l=w,v.i=C,v.w=function(t,e){return _(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var S=function(){function g(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[k]=!0}var y=g.prototype;return y.parse=function(t){this.$d=function(t){var e=t.date,r=t.utc;if(null===e)return new Date(NaN);if(v.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var i=e.match(p);if(i){var n=i[2]-1||0,o=(i[7]||"0").substring(0,3);return r?new Date(Date.UTC(i[1],n,i[3]||1,i[4]||0,i[5]||0,i[6]||0,o)):new Date(i[1],n,i[3]||1,i[4]||0,i[5]||0,i[6]||0,o)}}return new Date(e)}(t),this.init()},y.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},y.$utils=function(){return v},y.isValid=function(){return!(this.$d.toString()===d)},y.isSame=function(t,e){var r=_(t);return this.startOf(e)<=r&&r<=this.endOf(e)},y.isAfter=function(t,e){return _(t)1?r-1:0),n=1;n2&&void 0!==arguments[2]?arguments[2]:p;e&&e(t,null);let o=i.length;for(;o--;){let e=i[o];if("string"==typeof e){const t=n(e);t!==e&&(r(i)||(i[o]=t),e=t)}t[e]=!0}return t}function S(t){for(let e=0;e/gm),q=a(/\${[\w\W]*}/gm),N=a(/^data-[\-\w.\u00B7-\uFFFF]/),j=a(/^aria-[\-\w]+$/),W=a(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),U=a(/^(?:\w+script|data):/i),H=a(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Y=a(/^html$/i),G=a(/^[a-z][.\w]*(-[.\w]+)+$/i);var V=Object.freeze({__proto__:null,MUSTACHE_EXPR:z,ERB_EXPR:K,TMPLIT_EXPR:q,DATA_ATTR:N,ARIA_ATTR:j,IS_ALLOWED_URI:W,IS_SCRIPT_OR_DATA:U,ATTR_WHITESPACE:H,DOCTYPE_NAME:Y,CUSTOM_ELEMENT:G});const Z=1,X=3,Q=7,J=8,tt=9,et=function(){return"undefined"==typeof window?null:window};return function e(){let r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:et();const i=t=>e(t);if(i.version="3.1.6",i.removed=[],!r||!r.document||r.document.nodeType!==tt)return i.isSupported=!1,i;let{document:n}=r;const a=n,l=a.currentScript,{DocumentFragment:h,HTMLTemplateElement:w,Node:_,Element:S,NodeFilter:z,NamedNodeMap:K=r.NamedNodeMap||r.MozNamedAttrMap,HTMLFormElement:q,DOMParser:N,trustedTypes:j}=r,U=S.prototype,H=A(U,"cloneNode"),G=A(U,"remove"),rt=A(U,"nextSibling"),it=A(U,"childNodes"),nt=A(U,"parentNode");if("function"==typeof w){const t=n.createElement("template");t.content&&t.content.ownerDocument&&(n=t.content.ownerDocument)}let ot,at="";const{implementation:st,createNodeIterator:lt,createDocumentFragment:ht,getElementsByTagName:ct}=n,{importNode:ut}=a;let dt={};i.isSupported="function"==typeof t&&"function"==typeof nt&&st&&void 0!==st.createHTMLDocument;const{MUSTACHE_EXPR:pt,ERB_EXPR:ft,TMPLIT_EXPR:gt,DATA_ATTR:yt,ARIA_ATTR:mt,IS_SCRIPT_OR_DATA:xt,ATTR_WHITESPACE:bt,CUSTOM_ELEMENT:kt}=V;let{IS_ALLOWED_URI:Ct}=V,wt=null;const _t=v({},[...M,...B,...L,...$,...D]);let vt=null;const St=v({},[...O,...I,...R,...P]);let Tt=Object.seal(s(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),At=null,Mt=null,Bt=!0,Lt=!0,Ft=!1,$t=!0,Et=!1,Dt=!0,Ot=!1,It=!1,Rt=!1,Pt=!1,zt=!1,Kt=!1,qt=!0,Nt=!1,jt=!0,Wt=!1,Ut={},Ht=null;const Yt=v({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Gt=null;const Vt=v({},["audio","video","img","source","image","track"]);let Zt=null;const Xt=v({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Qt="http://www.w3.org/1998/Math/MathML",Jt="http://www.w3.org/2000/svg",te="http://www.w3.org/1999/xhtml";let ee=te,re=!1,ie=null;const ne=v({},[Qt,Jt,te],f);let oe=null;const ae=["application/xhtml+xml","text/html"];let se=null,le=null;const he=n.createElement("form"),ce=function(t){return t instanceof RegExp||t instanceof Function},ue=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!le||le!==t){if(t&&"object"==typeof t||(t={}),t=T(t),oe=-1===ae.indexOf(t.PARSER_MEDIA_TYPE)?"text/html":t.PARSER_MEDIA_TYPE,se="application/xhtml+xml"===oe?f:p,wt=b(t,"ALLOWED_TAGS")?v({},t.ALLOWED_TAGS,se):_t,vt=b(t,"ALLOWED_ATTR")?v({},t.ALLOWED_ATTR,se):St,ie=b(t,"ALLOWED_NAMESPACES")?v({},t.ALLOWED_NAMESPACES,f):ne,Zt=b(t,"ADD_URI_SAFE_ATTR")?v(T(Xt),t.ADD_URI_SAFE_ATTR,se):Xt,Gt=b(t,"ADD_DATA_URI_TAGS")?v(T(Vt),t.ADD_DATA_URI_TAGS,se):Vt,Ht=b(t,"FORBID_CONTENTS")?v({},t.FORBID_CONTENTS,se):Yt,At=b(t,"FORBID_TAGS")?v({},t.FORBID_TAGS,se):{},Mt=b(t,"FORBID_ATTR")?v({},t.FORBID_ATTR,se):{},Ut=!!b(t,"USE_PROFILES")&&t.USE_PROFILES,Bt=!1!==t.ALLOW_ARIA_ATTR,Lt=!1!==t.ALLOW_DATA_ATTR,Ft=t.ALLOW_UNKNOWN_PROTOCOLS||!1,$t=!1!==t.ALLOW_SELF_CLOSE_IN_ATTR,Et=t.SAFE_FOR_TEMPLATES||!1,Dt=!1!==t.SAFE_FOR_XML,Ot=t.WHOLE_DOCUMENT||!1,Pt=t.RETURN_DOM||!1,zt=t.RETURN_DOM_FRAGMENT||!1,Kt=t.RETURN_TRUSTED_TYPE||!1,Rt=t.FORCE_BODY||!1,qt=!1!==t.SANITIZE_DOM,Nt=t.SANITIZE_NAMED_PROPS||!1,jt=!1!==t.KEEP_CONTENT,Wt=t.IN_PLACE||!1,Ct=t.ALLOWED_URI_REGEXP||W,ee=t.NAMESPACE||te,Tt=t.CUSTOM_ELEMENT_HANDLING||{},t.CUSTOM_ELEMENT_HANDLING&&ce(t.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Tt.tagNameCheck=t.CUSTOM_ELEMENT_HANDLING.tagNameCheck),t.CUSTOM_ELEMENT_HANDLING&&ce(t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Tt.attributeNameCheck=t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),t.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(Tt.allowCustomizedBuiltInElements=t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Et&&(Lt=!1),zt&&(Pt=!0),Ut&&(wt=v({},D),vt=[],!0===Ut.html&&(v(wt,M),v(vt,O)),!0===Ut.svg&&(v(wt,B),v(vt,I),v(vt,P)),!0===Ut.svgFilters&&(v(wt,L),v(vt,I),v(vt,P)),!0===Ut.mathMl&&(v(wt,$),v(vt,R),v(vt,P))),t.ADD_TAGS&&(wt===_t&&(wt=T(wt)),v(wt,t.ADD_TAGS,se)),t.ADD_ATTR&&(vt===St&&(vt=T(vt)),v(vt,t.ADD_ATTR,se)),t.ADD_URI_SAFE_ATTR&&v(Zt,t.ADD_URI_SAFE_ATTR,se),t.FORBID_CONTENTS&&(Ht===Yt&&(Ht=T(Ht)),v(Ht,t.FORBID_CONTENTS,se)),jt&&(wt["#text"]=!0),Ot&&v(wt,["html","head","body"]),wt.table&&(v(wt,["tbody"]),delete At.tbody),t.TRUSTED_TYPES_POLICY){if("function"!=typeof t.TRUSTED_TYPES_POLICY.createHTML)throw C('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof t.TRUSTED_TYPES_POLICY.createScriptURL)throw C('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');ot=t.TRUSTED_TYPES_POLICY,at=ot.createHTML("")}else void 0===ot&&(ot=function(t,e){if("object"!=typeof t||"function"!=typeof t.createPolicy)return null;let r=null;const i="data-tt-policy-suffix";e&&e.hasAttribute(i)&&(r=e.getAttribute(i));const n="dompurify"+(r?"#"+r:"");try{return t.createPolicy(n,{createHTML:t=>t,createScriptURL:t=>t})}catch(t){return console.warn("TrustedTypes policy "+n+" could not be created."),null}}(j,l)),null!==ot&&"string"==typeof at&&(at=ot.createHTML(""));o&&o(t),le=t}},de=v({},["mi","mo","mn","ms","mtext"]),pe=v({},["foreignobject","annotation-xml"]),fe=v({},["title","style","font","a","script"]),ge=v({},[...B,...L,...F]),ye=v({},[...$,...E]),me=function(t){d(i.removed,{element:t});try{nt(t).removeChild(t)}catch(e){G(t)}},xe=function(t,e){try{d(i.removed,{attribute:e.getAttributeNode(t),from:e})}catch(t){d(i.removed,{attribute:null,from:e})}if(e.removeAttribute(t),"is"===t&&!vt[t])if(Pt||zt)try{me(e)}catch(t){}else try{e.setAttribute(t,"")}catch(t){}},be=function(t){let e=null,r=null;if(Rt)t=""+t;else{const e=g(t,/^[\r\n\t ]+/);r=e&&e[0]}"application/xhtml+xml"===oe&&ee===te&&(t=''+t+"");const i=ot?ot.createHTML(t):t;if(ee===te)try{e=(new N).parseFromString(i,oe)}catch(t){}if(!e||!e.documentElement){e=st.createDocument(ee,"template",null);try{e.documentElement.innerHTML=re?at:i}catch(t){}}const o=e.body||e.documentElement;return t&&r&&o.insertBefore(n.createTextNode(r),o.childNodes[0]||null),ee===te?ct.call(e,Ot?"html":"body")[0]:Ot?e.documentElement:o},ke=function(t){return lt.call(t.ownerDocument||t,t,z.SHOW_ELEMENT|z.SHOW_COMMENT|z.SHOW_TEXT|z.SHOW_PROCESSING_INSTRUCTION|z.SHOW_CDATA_SECTION,null)},Ce=function(t){return t instanceof q&&("string"!=typeof t.nodeName||"string"!=typeof t.textContent||"function"!=typeof t.removeChild||!(t.attributes instanceof K)||"function"!=typeof t.removeAttribute||"function"!=typeof t.setAttribute||"string"!=typeof t.namespaceURI||"function"!=typeof t.insertBefore||"function"!=typeof t.hasChildNodes)},we=function(t){return"function"==typeof _&&t instanceof _},_e=function(t,e,r){dt[t]&&c(dt[t],(t=>{t.call(i,e,r,le)}))},ve=function(t){let e=null;if(_e("beforeSanitizeElements",t,null),Ce(t))return me(t),!0;const r=se(t.nodeName);if(_e("uponSanitizeElement",t,{tagName:r,allowedTags:wt}),t.hasChildNodes()&&!we(t.firstElementChild)&&k(/<[/\w]/g,t.innerHTML)&&k(/<[/\w]/g,t.textContent))return me(t),!0;if(t.nodeType===Q)return me(t),!0;if(Dt&&t.nodeType===J&&k(/<[/\w]/g,t.data))return me(t),!0;if(!wt[r]||At[r]){if(!At[r]&&Te(r)){if(Tt.tagNameCheck instanceof RegExp&&k(Tt.tagNameCheck,r))return!1;if(Tt.tagNameCheck instanceof Function&&Tt.tagNameCheck(r))return!1}if(jt&&!Ht[r]){const e=nt(t)||t.parentNode,r=it(t)||t.childNodes;if(r&&e)for(let i=r.length-1;i>=0;--i){const n=H(r[i],!0);n.__removalCount=(t.__removalCount||0)+1,e.insertBefore(n,rt(t))}}return me(t),!0}return t instanceof S&&!function(t){let e=nt(t);e&&e.tagName||(e={namespaceURI:ee,tagName:"template"});const r=p(t.tagName),i=p(e.tagName);return!!ie[t.namespaceURI]&&(t.namespaceURI===Jt?e.namespaceURI===te?"svg"===r:e.namespaceURI===Qt?"svg"===r&&("annotation-xml"===i||de[i]):Boolean(ge[r]):t.namespaceURI===Qt?e.namespaceURI===te?"math"===r:e.namespaceURI===Jt?"math"===r&&pe[i]:Boolean(ye[r]):t.namespaceURI===te?!(e.namespaceURI===Jt&&!pe[i])&&!(e.namespaceURI===Qt&&!de[i])&&!ye[r]&&(fe[r]||!ge[r]):!("application/xhtml+xml"!==oe||!ie[t.namespaceURI]))}(t)?(me(t),!0):"noscript"!==r&&"noembed"!==r&&"noframes"!==r||!k(/<\/no(script|embed|frames)/i,t.innerHTML)?(Et&&t.nodeType===X&&(e=t.textContent,c([pt,ft,gt],(t=>{e=y(e,t," ")})),t.textContent!==e&&(d(i.removed,{element:t.cloneNode()}),t.textContent=e)),_e("afterSanitizeElements",t,null),!1):(me(t),!0)},Se=function(t,e,r){if(qt&&("id"===e||"name"===e)&&(r in n||r in he))return!1;if(Lt&&!Mt[e]&&k(yt,e));else if(Bt&&k(mt,e));else if(!vt[e]||Mt[e]){if(!(Te(t)&&(Tt.tagNameCheck instanceof RegExp&&k(Tt.tagNameCheck,t)||Tt.tagNameCheck instanceof Function&&Tt.tagNameCheck(t))&&(Tt.attributeNameCheck instanceof RegExp&&k(Tt.attributeNameCheck,e)||Tt.attributeNameCheck instanceof Function&&Tt.attributeNameCheck(e))||"is"===e&&Tt.allowCustomizedBuiltInElements&&(Tt.tagNameCheck instanceof RegExp&&k(Tt.tagNameCheck,r)||Tt.tagNameCheck instanceof Function&&Tt.tagNameCheck(r))))return!1}else if(Zt[e]);else if(k(Ct,y(r,bt,"")));else if("src"!==e&&"xlink:href"!==e&&"href"!==e||"script"===t||0!==m(r,"data:")||!Gt[t])if(Ft&&!k(xt,y(r,bt,"")));else if(r)return!1;return!0},Te=function(t){return"annotation-xml"!==t&&g(t,kt)},Ae=function(t){_e("beforeSanitizeAttributes",t,null);const{attributes:e}=t;if(!e)return;const r={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:vt};let n=e.length;for(;n--;){const o=e[n],{name:a,namespaceURI:s,value:l}=o,h=se(a);let d="value"===a?l:x(l);if(r.attrName=h,r.attrValue=d,r.keepAttr=!0,r.forceKeepAttr=void 0,_e("uponSanitizeAttribute",t,r),d=r.attrValue,Dt&&k(/((--!?|])>)|<\/(style|title)/i,d)){xe(a,t);continue}if(r.forceKeepAttr)continue;if(xe(a,t),!r.keepAttr)continue;if(!$t&&k(/\/>/i,d)){xe(a,t);continue}Et&&c([pt,ft,gt],(t=>{d=y(d,t," ")}));const p=se(t.nodeName);if(Se(p,h,d)){if(!Nt||"id"!==h&&"name"!==h||(xe(a,t),d="user-content-"+d),ot&&"object"==typeof j&&"function"==typeof j.getAttributeType)if(s);else switch(j.getAttributeType(p,h)){case"TrustedHTML":d=ot.createHTML(d);break;case"TrustedScriptURL":d=ot.createScriptURL(d)}try{s?t.setAttributeNS(s,a,d):t.setAttribute(a,d),Ce(t)?me(t):u(i.removed)}catch(t){}}}_e("afterSanitizeAttributes",t,null)},Me=function t(e){let r=null;const i=ke(e);for(_e("beforeSanitizeShadowDOM",e,null);r=i.nextNode();)_e("uponSanitizeShadowNode",r,null),ve(r)||(r.content instanceof h&&t(r.content),Ae(r));_e("afterSanitizeShadowDOM",e,null)};return i.sanitize=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=null,n=null,o=null,s=null;if(re=!t,re&&(t="\x3c!--\x3e"),"string"!=typeof t&&!we(t)){if("function"!=typeof t.toString)throw C("toString is not a function");if("string"!=typeof(t=t.toString()))throw C("dirty is not a string, aborting")}if(!i.isSupported)return t;if(It||ue(e),i.removed=[],"string"==typeof t&&(Wt=!1),Wt){if(t.nodeName){const e=se(t.nodeName);if(!wt[e]||At[e])throw C("root node is forbidden and cannot be sanitized in-place")}}else if(t instanceof _)r=be("\x3c!----\x3e"),n=r.ownerDocument.importNode(t,!0),n.nodeType===Z&&"BODY"===n.nodeName||"HTML"===n.nodeName?r=n:r.appendChild(n);else{if(!Pt&&!Et&&!Ot&&-1===t.indexOf("<"))return ot&&Kt?ot.createHTML(t):t;if(r=be(t),!r)return Pt?null:Kt?at:""}r&&Rt&&me(r.firstChild);const l=ke(Wt?t:r);for(;o=l.nextNode();)ve(o)||(o.content instanceof h&&Me(o.content),Ae(o));if(Wt)return t;if(Pt){if(zt)for(s=ht.call(r.ownerDocument);r.firstChild;)s.appendChild(r.firstChild);else s=r;return(vt.shadowroot||vt.shadowrootmode)&&(s=ut.call(a,s,!0)),s}let u=Ot?r.outerHTML:r.innerHTML;return Ot&&wt["!doctype"]&&r.ownerDocument&&r.ownerDocument.doctype&&r.ownerDocument.doctype.name&&k(Y,r.ownerDocument.doctype.name)&&(u="\n"+u),Et&&c([pt,ft,gt],(t=>{u=y(u,t," ")})),ot&&Kt?ot.createHTML(u):u},i.setConfig=function(){ue(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),It=!0},i.clearConfig=function(){le=null,It=!1},i.isValidAttribute=function(t,e,r){le||ue({});const i=se(t),n=se(e);return Se(i,n,r)},i.addHook=function(t,e){"function"==typeof e&&(dt[t]=dt[t]||[],d(dt[t],e))},i.removeHook=function(t){if(dt[t])return u(dt[t])},i.removeHooks=function(t){dt[t]&&(dt[t]=[])},i.removeAllHooks=function(){dt={}},i}()}()},7148:function(t){!function(e,r){var i={version:"2.14.3",areas:{},apis:{},nsdelim:".",inherit:function(t,e){for(var r in t)e.hasOwnProperty(r)||Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e},stringify:function(t,e){return void 0===t||"function"==typeof t?t+"":JSON.stringify(t,e||i.replace)},parse:function(t,e){try{return JSON.parse(t,e||i.revive)}catch(e){return t}},fn:function(t,e){for(var r in i.storeAPI[t]=e,i.apis)i.apis[r][t]=e},get:function(t,e){return t.getItem(e)},set:function(t,e,r){t.setItem(e,r)},remove:function(t,e){t.removeItem(e)},key:function(t,e){return t.key(e)},length:function(t){return t.length},clear:function(t){t.clear()},Store:function(t,e,r){var n=i.inherit(i.storeAPI,(function(t,e,r){return 0===arguments.length?n.getAll():"function"==typeof e?n.transact(t,e,r):void 0!==e?n.set(t,e,r):"string"==typeof t||"number"==typeof t?n.get(t):"function"==typeof t?n.each(t):t?n.setAll(t,e):n.clear()}));n._id=t;try{var o="__store2_test";e.setItem(o,"ok"),n._area=e,e.removeItem(o)}catch(t){n._area=i.storage("fake")}return n._ns=r||"",i.areas[t]||(i.areas[t]=n._area),i.apis[n._ns+n._id]||(i.apis[n._ns+n._id]=n),n},storeAPI:{area:function(t,e){var r=this[t];return r&&r.area||(r=i.Store(t,e,this._ns),this[t]||(this[t]=r)),r},namespace:function(t,e,r){if(r=r||this._delim||i.nsdelim,!t)return this._ns?this._ns.substring(0,this._ns.length-r.length):"";var n=t,o=this[n];if(!(o&&o.namespace||((o=i.Store(this._id,this._area,this._ns+n+r))._delim=r,this[n]||(this[n]=o),e)))for(var a in i.areas)o.area(a,i.areas[a]);return o},isFake:function(t){return t?(this._real=this._area,this._area=i.storage("fake")):!1===t&&(this._area=this._real||this._area),"fake"===this._area.name},toString:function(){return"store"+(this._ns?"."+this.namespace():"")+"["+this._id+"]"},has:function(t){return this._area.has?this._area.has(this._in(t)):!!(this._in(t)in this._area)},size:function(){return this.keys().length},each:function(t,e){for(var r=0,n=i.length(this._area);ri.length(this._area)&&(n--,r--)}return e||this},keys:function(t){return this.each((function(t,e,r){r.push(t)}),t||[])},get:function(t,e){var r,n=i.get(this._area,this._in(t));return"function"==typeof e&&(r=e,e=null),null!==n?i.parse(n,r):null!=e?e:n},getAll:function(t){return this.each((function(t,e,r){r[t]=e}),t||{})},transact:function(t,e,r){var i=this.get(t,r),n=e(i);return this.set(t,void 0===n?i:n),this},set:function(t,e,r){var n,o=this.get(t);return null!=o&&!1===r?e:("function"==typeof r&&(n=r,r=void 0),i.set(this._area,this._in(t),i.stringify(e,n),r)||o)},setAll:function(t,e){var r,i;for(var n in t)i=t[n],this.set(n,i,e)!==i&&(r=!0);return r},add:function(t,e,r){var n=this.get(t);if(n instanceof Array)e=n.concat(e);else if(null!==n){var o=typeof n;if(o===typeof e&&"object"===o){for(var a in e)n[a]=e[a];e=n}else e=n+e}return i.set(this._area,this._in(t),i.stringify(e,r)),e},remove:function(t,e){var r=this.get(t,e);return i.remove(this._area,this._in(t)),r},clear:function(){return this._ns?this.each((function(t){i.remove(this._area,this._in(t))}),1):i.clear(this._area),this},clearAll:function(){var t=this._area;for(var e in i.areas)i.areas.hasOwnProperty(e)&&(this._area=i.areas[e],this.clear());return this._area=t,this},_in:function(t){return"string"!=typeof t&&(t=i.stringify(t)),this._ns?this._ns+t:t},_out:function(t){return this._ns?t&&0===t.indexOf(this._ns)?t.substring(this._ns.length):void 0:t}},storage:function(t){return i.inherit(i.storageAPI,{items:{},name:t})},storageAPI:{length:0,has:function(t){return this.items.hasOwnProperty(t)},key:function(t){var e=0;for(var r in this.items)if(this.has(r)&&t===e++)return r},setItem:function(t,e){this.has(t)||this.length++,this.items[t]=e},removeItem:function(t){this.has(t)&&(delete this.items[t],this.length--)},getItem:function(t){return this.has(t)?this.items[t]:null},clear:function(){for(var t in this.items)this.removeItem(t)}}},n=i.Store("local",function(){try{return localStorage}catch(t){}}());n.local=n,n._=i,n.area("session",function(){try{return sessionStorage}catch(t){}}()),n.area("page",i.storage("page")),"function"==typeof r&&void 0!==r.amd?r("store2",[],(function(){return n})):t.exports?t.exports=n:(e.store&&(i.conflict=e.store),e.store=n)}(this,this&&this.define)},513:(t,e,r)=>{"use strict";function i(t){for(var e=[],r=1;ri})},4852:(t,e,r)=>{"use strict";function i(t,e){let r;if(void 0===e)for(const e of t)null!=e&&(r=e)&&(r=e);else{let i=-1;for(let n of t)null!=(n=e(n,++i,t))&&(r=n)&&(r=n)}return r}function n(t,e){let r;if(void 0===e)for(const e of t)null!=e&&(r>e||void 0===r&&e>=e)&&(r=e);else{let i=-1;for(let n of t)null!=(n=e(n,++i,t))&&(r>n||void 0===r&&n>=n)&&(r=n)}return r}function o(t){return t}r.d(e,{JLW:()=>ja,l78:()=>x,tlR:()=>m,qrM:()=>rs,Yu4:()=>ns,IA3:()=>as,Wi0:()=>ls,PGM:()=>hs,OEq:()=>us,y8u:()=>fs,olC:()=>ys,IrU:()=>xs,oDi:()=>Cs,Q7f:()=>_s,cVp:()=>Ss,lUB:()=>Ha,Lx9:()=>As,nVG:()=>Os,uxU:()=>Is,Xf2:()=>zs,GZz:()=>qs,UPb:()=>js,dyv:()=>Ns,bEH:()=>ei,n8j:()=>Va,T9B:()=>i,jkA:()=>n,rLf:()=>Qa,WH:()=>li,m4Y:()=>Xi,UMr:()=>si,w7C:()=>fa,zt:()=>ga,Ltv:()=>ya,UAC:()=>fn,DCK:()=>Hn,TUC:()=>_n,Agd:()=>dn,t6C:()=>ln,wXd:()=>cn,ABi:()=>bn,Ui6:()=>En,rGn:()=>vn,ucG:()=>hn,YPH:()=>xn,Mol:()=>wn,PGu:()=>kn,GuW:()=>Cn});var a=1,s=2,l=3,h=4,c=1e-6;function u(t){return"translate("+t+",0)"}function d(t){return"translate(0,"+t+")"}function p(t){return e=>+t(e)}function f(t,e){return e=Math.max(0,t.bandwidth()-2*e)/2,t.round()&&(e=Math.round(e)),r=>+t(r)+e}function g(){return!this.__axis}function y(t,e){var r=[],i=null,n=null,y=6,m=6,x=3,b="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,k=t===a||t===h?-1:1,C=t===h||t===s?"x":"y",w=t===a||t===l?u:d;function _(u){var d=null==i?e.ticks?e.ticks.apply(e,r):e.domain():i,_=null==n?e.tickFormat?e.tickFormat.apply(e,r):o:n,v=Math.max(y,0)+x,S=e.range(),T=+S[0]+b,A=+S[S.length-1]+b,M=(e.bandwidth?f:p)(e.copy(),b),B=u.selection?u.selection():u,L=B.selectAll(".domain").data([null]),F=B.selectAll(".tick").data(d,e).order(),$=F.exit(),E=F.enter().append("g").attr("class","tick"),D=F.select("line"),O=F.select("text");L=L.merge(L.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),F=F.merge(E),D=D.merge(E.append("line").attr("stroke","currentColor").attr(C+"2",k*y)),O=O.merge(E.append("text").attr("fill","currentColor").attr(C,k*v).attr("dy",t===a?"0em":t===l?"0.71em":"0.32em")),u!==B&&(L=L.transition(u),F=F.transition(u),D=D.transition(u),O=O.transition(u),$=$.transition(u).attr("opacity",c).attr("transform",(function(t){return isFinite(t=M(t))?w(t+b):this.getAttribute("transform")})),E.attr("opacity",c).attr("transform",(function(t){var e=this.parentNode.__axis;return w((e&&isFinite(e=e(t))?e:M(t))+b)}))),$.remove(),L.attr("d",t===h||t===s?m?"M"+k*m+","+T+"H"+b+"V"+A+"H"+k*m:"M"+b+","+T+"V"+A:m?"M"+T+","+k*m+"V"+b+"H"+A+"V"+k*m:"M"+T+","+b+"H"+A),F.attr("opacity",1).attr("transform",(function(t){return w(M(t)+b)})),D.attr(C+"2",k*y),O.attr(C,k*v).text(_),B.filter(g).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===s?"start":t===h?"end":"middle"),B.each((function(){this.__axis=M}))}return _.scale=function(t){return arguments.length?(e=t,_):e},_.ticks=function(){return r=Array.from(arguments),_},_.tickArguments=function(t){return arguments.length?(r=null==t?[]:Array.from(t),_):r.slice()},_.tickValues=function(t){return arguments.length?(i=null==t?null:Array.from(t),_):i&&i.slice()},_.tickFormat=function(t){return arguments.length?(n=t,_):n},_.tickSize=function(t){return arguments.length?(y=m=+t,_):y},_.tickSizeInner=function(t){return arguments.length?(y=+t,_):y},_.tickSizeOuter=function(t){return arguments.length?(m=+t,_):m},_.tickPadding=function(t){return arguments.length?(x=+t,_):x},_.offset=function(t){return arguments.length?(b=+t,_):b},_}function m(t){return y(a,t)}function x(t){return y(l,t)}function b(){}function k(t){return null==t?b:function(){return this.querySelector(t)}}function C(){return[]}function w(t){return null==t?C:function(){return this.querySelectorAll(t)}}function _(t){return function(){return this.matches(t)}}function v(t){return function(e){return e.matches(t)}}var S=Array.prototype.find;function T(){return this.firstElementChild}var A=Array.prototype.filter;function M(){return Array.from(this.children)}function B(t){return new Array(t.length)}function L(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function F(t,e,r,i,n,o){for(var a,s=0,l=e.length,h=o.length;se?1:t>=e?0:NaN}L.prototype={constructor:L,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var I="http://www.w3.org/1999/xhtml";const R={svg:"http://www.w3.org/2000/svg",xhtml:I,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function P(t){var e=t+="",r=e.indexOf(":");return r>=0&&"xmlns"!==(e=t.slice(0,r))&&(t=t.slice(r+1)),R.hasOwnProperty(e)?{space:R[e],local:t}:t}function z(t){return function(){this.removeAttribute(t)}}function K(t){return function(){this.removeAttributeNS(t.space,t.local)}}function q(t,e){return function(){this.setAttribute(t,e)}}function N(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function j(t,e){return function(){var r=e.apply(this,arguments);null==r?this.removeAttribute(t):this.setAttribute(t,r)}}function W(t,e){return function(){var r=e.apply(this,arguments);null==r?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function U(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function H(t){return function(){this.style.removeProperty(t)}}function Y(t,e,r){return function(){this.style.setProperty(t,e,r)}}function G(t,e,r){return function(){var i=e.apply(this,arguments);null==i?this.style.removeProperty(t):this.style.setProperty(t,i,r)}}function V(t,e){return t.style.getPropertyValue(e)||U(t).getComputedStyle(t,null).getPropertyValue(e)}function Z(t){return function(){delete this[t]}}function X(t,e){return function(){this[t]=e}}function Q(t,e){return function(){var r=e.apply(this,arguments);null==r?delete this[t]:this[t]=r}}function J(t){return t.trim().split(/^|\s+/)}function tt(t){return t.classList||new et(t)}function et(t){this._node=t,this._names=J(t.getAttribute("class")||"")}function rt(t,e){for(var r=tt(t),i=-1,n=e.length;++i=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var At=[null];function Mt(t,e){this._groups=t,this._parents=e}function Bt(){return new Mt([[document.documentElement]],At)}Mt.prototype=Bt.prototype={constructor:Mt,select:function(t){"function"!=typeof t&&(t=k(t));for(var e=this._groups,r=e.length,i=new Array(r),n=0;n=C&&(C=k+1);!(b=m[C])&&++C=0;)(i=n[o])&&(a&&4^i.compareDocumentPosition(a)&&a.parentNode.insertBefore(i,a),a=i);return this},sort:function(t){function e(e,r){return e&&r?t(e.__data__,r.__data__):!e-!r}t||(t=O);for(var r=this._groups,i=r.length,n=new Array(i),o=0;o1?this.each((null==e?H:"function"==typeof e?G:Y)(t,e,null==r?"":r)):V(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?Z:"function"==typeof e?Q:X)(t,e)):this.node()[t]},classed:function(t,e){var r=J(t+"");if(arguments.length<2){for(var i=tt(this.node()),n=-1,o=r.length;++n=0&&(e=t.slice(r+1),t=t.slice(0,r)),{type:t,name:e}}))}(t+""),a=o.length;if(!(arguments.length<2)){for(s=e?_t:wt,i=0;i{}};function $t(){for(var t,e=0,r=arguments.length,i={};e=0&&(e=t.slice(r+1),t=t.slice(0,r)),t&&!i.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}}))),a=-1,s=o.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++a0)for(var r,i,n=new Array(r),o=0;o=0&&e._call.call(void 0,t),e=e._next;--zt}()}finally{zt=0,function(){for(var t,e,r=Rt,i=1/0;r;)r._call?(i>r._time&&(i=r._time),t=r,r=r._next):(e=r._next,r._next=null,r=t?t._next=e:Rt=e);Pt=t,te(i)}(),Wt=0}}function Jt(){var t=Ht.now(),e=t-jt;e>Nt&&(Ut-=e,jt=t)}function te(t){zt||(Kt&&(Kt=clearTimeout(Kt)),t-Wt>24?(t<1/0&&(Kt=setTimeout(Qt,t-Ht.now()-Ut)),qt&&(qt=clearInterval(qt))):(qt||(jt=Ht.now(),qt=setInterval(Jt,Nt)),zt=1,Yt(Qt)))}function ee(t,e,r){var i=new Zt;return e=null==e?0:+e,i.restart((r=>{i.stop(),t(r+e)}),e,r),i}Zt.prototype=Xt.prototype={constructor:Zt,restart:function(t,e,r){if("function"!=typeof t)throw new TypeError("callback is not a function");r=(null==r?Gt():+r)+(null==e?0:+e),this._next||Pt===this||(Pt?Pt._next=this:Rt=this,Pt=this),this._call=t,this._time=r,te()},stop:function(){this._call&&(this._call=null,this._time=1/0,te())}};var re=It("start","end","cancel","interrupt"),ie=[],ne=0,oe=3;function ae(t,e,r,i,n,o){var a=t.__transition;if(a){if(r in a)return}else t.__transition={};!function(t,e,r){var i,n=t.__transition;function o(l){var h,c,u,d;if(1!==r.state)return s();for(h in n)if((d=n[h]).name===r.name){if(d.state===oe)return ee(o);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",t,t.__data__,d.index,d.group),delete n[h]):+hne)throw new Error("too late; already scheduled");return r}function le(t,e){var r=he(t,e);if(r.state>oe)throw new Error("too late; already running");return r}function he(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function ce(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var ue,de=180/Math.PI,pe={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function fe(t,e,r,i,n,o){var a,s,l;return(a=Math.sqrt(t*t+e*e))&&(t/=a,e/=a),(l=t*r+e*i)&&(r-=t*l,i-=e*l),(s=Math.sqrt(r*r+i*i))&&(r/=s,i/=s,l/=s),t*i180?e+=360:e-t>180&&(t+=360),o.push({i:r.push(n(r)+"rotate(",null,i)-2,x:ce(t,e)})):e&&r.push(n(r)+"rotate("+e+i)}(o.rotate,a.rotate,s,l),function(t,e,r,o){t!==e?o.push({i:r.push(n(r)+"skewX(",null,i)-2,x:ce(t,e)}):e&&r.push(n(r)+"skewX("+e+i)}(o.skewX,a.skewX,s,l),function(t,e,r,i,o,a){if(t!==r||e!==i){var s=o.push(n(o)+"scale(",null,",",null,")");a.push({i:s-4,x:ce(t,r)},{i:s-2,x:ce(e,i)})}else 1===r&&1===i||o.push(n(o)+"scale("+r+","+i+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,s,l),o=a=null,function(t){for(var e,r=-1,i=l.length;++r>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?qe(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?qe(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=Le.exec(t))?new We(e[1],e[2],e[3],1):(e=Fe.exec(t))?new We(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=$e.exec(t))?qe(e[1],e[2],e[3],e[4]):(e=Ee.exec(t))?qe(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=De.exec(t))?Ze(e[1],e[2]/100,e[3]/100,1):(e=Oe.exec(t))?Ze(e[1],e[2]/100,e[3]/100,e[4]):Ie.hasOwnProperty(t)?Ke(Ie[t]):"transparent"===t?new We(NaN,NaN,NaN,0):null}function Ke(t){return new We(t>>16&255,t>>8&255,255&t,1)}function qe(t,e,r,i){return i<=0&&(t=e=r=NaN),new We(t,e,r,i)}function Ne(t){return t instanceof _e||(t=ze(t)),t?new We((t=t.rgb()).r,t.g,t.b,t.opacity):new We}function je(t,e,r,i){return 1===arguments.length?Ne(t):new We(t,e,r,null==i?1:i)}function We(t,e,r,i){this.r=+t,this.g=+e,this.b=+r,this.opacity=+i}function Ue(){return`#${Ve(this.r)}${Ve(this.g)}${Ve(this.b)}`}function He(){const t=Ye(this.opacity);return`${1===t?"rgb(":"rgba("}${Ge(this.r)}, ${Ge(this.g)}, ${Ge(this.b)}${1===t?")":`, ${t})`}`}function Ye(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Ge(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Ve(t){return((t=Ge(t))<16?"0":"")+t.toString(16)}function Ze(t,e,r,i){return i<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new Qe(t,e,r,i)}function Xe(t){if(t instanceof Qe)return new Qe(t.h,t.s,t.l,t.opacity);if(t instanceof _e||(t=ze(t)),!t)return new Qe;if(t instanceof Qe)return t;var e=(t=t.rgb()).r/255,r=t.g/255,i=t.b/255,n=Math.min(e,r,i),o=Math.max(e,r,i),a=NaN,s=o-n,l=(o+n)/2;return s?(a=e===o?(r-i)/s+6*(r0&&l<1?0:a,new Qe(a,s,l,t.opacity)}function Qe(t,e,r,i){this.h=+t,this.s=+e,this.l=+r,this.opacity=+i}function Je(t){return(t=(t||0)%360)<0?t+360:t}function tr(t){return Math.max(0,Math.min(1,t||0))}function er(t,e,r){return 255*(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)}function rr(t,e,r,i,n){var o=t*t,a=o*t;return((1-3*t+3*o-a)*e+(4-6*o+3*a)*r+(1+3*t+3*o-3*a)*i+a*n)/6}Ce(_e,ze,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Re,formatHex:Re,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return Xe(this).formatHsl()},formatRgb:Pe,toString:Pe}),Ce(We,je,we(_e,{brighter(t){return t=null==t?Se:Math.pow(Se,t),new We(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?ve:Math.pow(ve,t),new We(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new We(Ge(this.r),Ge(this.g),Ge(this.b),Ye(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Ue,formatHex:Ue,formatHex8:function(){return`#${Ve(this.r)}${Ve(this.g)}${Ve(this.b)}${Ve(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:He,toString:He})),Ce(Qe,(function(t,e,r,i){return 1===arguments.length?Xe(t):new Qe(t,e,r,null==i?1:i)}),we(_e,{brighter(t){return t=null==t?Se:Math.pow(Se,t),new Qe(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?ve:Math.pow(ve,t),new Qe(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,i=r+(r<.5?r:1-r)*e,n=2*r-i;return new We(er(t>=240?t-240:t+120,n,i),er(t,n,i),er(t<120?t+240:t-120,n,i),this.opacity)},clamp(){return new Qe(Je(this.h),tr(this.s),tr(this.l),Ye(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=Ye(this.opacity);return`${1===t?"hsl(":"hsla("}${Je(this.h)}, ${100*tr(this.s)}%, ${100*tr(this.l)}%${1===t?")":`, ${t})`}`}}));const ir=t=>()=>t;function nr(t,e){return function(r){return t+r*e}}function or(t,e){var r=e-t;return r?nr(t,r):ir(isNaN(t)?e:t)}const ar=function t(e){var r=function(t){return 1==(t=+t)?or:function(e,r){return r-e?function(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(i){return Math.pow(t+i*e,r)}}(e,r,t):ir(isNaN(e)?r:e)}}(e);function i(t,e){var i=r((t=je(t)).r,(e=je(e)).r),n=r(t.g,e.g),o=r(t.b,e.b),a=or(t.opacity,e.opacity);return function(e){return t.r=i(e),t.g=n(e),t.b=o(e),t.opacity=a(e),t+""}}return i.gamma=t,i}(1);function sr(t){return function(e){var r,i,n=e.length,o=new Array(n),a=new Array(n),s=new Array(n);for(r=0;r=1?(r=1,e-1):Math.floor(r*e),n=t[i],o=t[i+1],a=i>0?t[i-1]:2*n-o,s=io&&(n=e.slice(o,n),s[a]?s[a]+=n:s[++a]=n),(r=r[0])===(i=i[0])?s[a]?s[a]+=i:s[++a]=i:(s[++a]=null,l.push({i:a,x:ce(r,i)})),o=hr.lastIndex;return o=0&&(t=t.slice(0,e)),!t||"start"===t}))}(e)?se:le;return function(){var a=o(this,t),s=a.on;s!==i&&(n=(i=s).copy()).on(e,r),a.on=n}}(r,t,e))},attr:function(t,e){var r=P(t),i="transform"===r?me:ur;return this.attrTween(t,"function"==typeof e?(r.local?mr:yr)(r,i,ke(this,"attr."+t,e)):null==e?(r.local?pr:dr)(r):(r.local?gr:fr)(r,i,e))},attrTween:function(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;var i=P(t);return this.tween(r,(i.local?xr:br)(i,e))},style:function(t,e,r){var i="transform"==(t+="")?ye:ur;return null==e?this.styleTween(t,function(t,e){var r,i,n;return function(){var o=V(this,t),a=(this.style.removeProperty(t),V(this,t));return o===a?null:o===r&&a===i?n:n=e(r=o,i=a)}}(t,i)).on("end.style."+t,Sr(t)):"function"==typeof e?this.styleTween(t,function(t,e,r){var i,n,o;return function(){var a=V(this,t),s=r(this),l=s+"";return null==s&&(this.style.removeProperty(t),l=s=V(this,t)),a===l?null:a===i&&l===n?o:(n=l,o=e(i=a,s))}}(t,i,ke(this,"style."+t,e))).each(function(t,e){var r,i,n,o,a="style."+e,s="end."+a;return function(){var l=le(this,t),h=l.on,c=null==l.value[a]?o||(o=Sr(e)):void 0;h===r&&n===c||(i=(r=h).copy()).on(s,n=c),l.on=i}}(this._id,t)):this.styleTween(t,function(t,e,r){var i,n,o=r+"";return function(){var a=V(this,t);return a===o?null:a===i?n:n=e(i=a,r)}}(t,i,e),r).on("end.style."+t,null)},styleTween:function(t,e,r){var i="style."+(t+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(null==e)return this.tween(i,null);if("function"!=typeof e)throw new Error;return this.tween(i,function(t,e,r){var i,n;function o(){var o=e.apply(this,arguments);return o!==n&&(i=(n=o)&&function(t,e,r){return function(i){this.style.setProperty(t,e.call(this,i),r)}}(t,o,r)),i}return o._value=e,o}(t,e,null==r?"":r))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var e=t(this);this.textContent=null==e?"":e}}(ke(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},textTween:function(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw new Error;return this.tween(e,function(t){var e,r;function i(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&function(t){return function(e){this.textContent=t.call(this,e)}}(i)),e}return i._value=t,i}(t))},remove:function(){return this.on("end.remove",function(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}(this._id))},tween:function(t,e){var r=this._id;if(t+="",arguments.length<2){for(var i,n=he(this.node(),r).tween,o=0,a=n.length;o2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?"interrupt":"cancel",t,t.__data__,r.index,r.group),delete o[n]):a=!1;a&&delete t.__transition}}(this,t)}))},Lt.prototype.transition=function(t){var e,r;t instanceof Ar?(e=t._id,t=t._name):(e=Mr(),(r=Lr).time=Gt(),t=null==t?null:t+"");for(var i=this._groups,n=i.length,o=0;oWr?Math.pow(t,1/3):t/jr+qr}function Gr(t){return t>Nr?t*t*t:jr*(t-qr)}function Vr(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Zr(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Xr(t,e,r,i){return 1===arguments.length?function(t){if(t instanceof Qr)return new Qr(t.h,t.c,t.l,t.opacity);if(t instanceof Hr||(t=Ur(t)),0===t.a&&0===t.b)return new Qr(NaN,0180||r<-180?r-360*Math.round(r/360):r):ir(isNaN(t)?e:t)}));function ri(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}ti(or);class ii extends Map{constructor(t,e=oi){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),null!=t)for(const[e,r]of t)this.set(e,r)}get(t){return super.get(ni(this,t))}has(t){return super.has(ni(this,t))}set(t,e){return super.set(function({_intern:t,_key:e},r){const i=e(r);return t.has(i)?t.get(i):(t.set(i,r),r)}(this,t),e)}delete(t){return super.delete(function({_intern:t,_key:e},r){const i=e(r);return t.has(i)&&(r=t.get(i),t.delete(i)),r}(this,t))}}function ni({_intern:t,_key:e},r){const i=e(r);return t.has(i)?t.get(i):r}function oi(t){return null!==t&&"object"==typeof t?t.valueOf():t}Set;const ai=Symbol("implicit");function si(){var t=new ii,e=[],r=[],i=ai;function n(n){let o=t.get(n);if(void 0===o){if(i!==ai)return i;t.set(n,o=e.push(n)-1)}return r[o%r.length]}return n.domain=function(r){if(!arguments.length)return e.slice();e=[],t=new ii;for(const i of r)t.has(i)||t.set(i,e.push(i)-1);return n},n.range=function(t){return arguments.length?(r=Array.from(t),n):r.slice()},n.unknown=function(t){return arguments.length?(i=t,n):i},n.copy=function(){return si(e,r).unknown(i)},ri.apply(n,arguments),n}function li(){var t,e,r=si().unknown(void 0),i=r.domain,n=r.range,o=0,a=1,s=!1,l=0,h=0,c=.5;function u(){var r=i().length,u=a=hi?10:o>=ci?5:o>=ui?2:1;let s,l,h;return n<0?(h=Math.pow(10,-n)/a,s=Math.round(t*h),l=Math.round(e*h),s/he&&--l,h=-h):(h=Math.pow(10,n)*a,s=Math.round(t/h),l=Math.round(e/h),s*he&&--l),le?1:t>=e?0:NaN}function yi(t,e){return null==t||null==e?NaN:et?1:e>=t?0:NaN}function mi(t){let e,r,i;function n(t,i,n=0,o=t.length){if(n>>1;r(t[e],i)<0?n=e+1:o=e}while(ngi(t(e),r),i=(e,r)=>t(e)-r):(e=t===gi||t===yi?t:xi,r=t,i=t),{left:n,center:function(t,e,r=0,o=t.length){const a=n(t,e,r,o-1);return a>r&&i(t[a-1],e)>-i(t[a],e)?a-1:a},right:function(t,i,n=0,o=t.length){if(n>>1;r(t[e],i)<=0?n=e+1:o=e}while(ne&&(r=t,t=e,e=r),h=function(r){return Math.max(t,Math.min(e,r))}),i=l>2?Ei:$i,n=o=null,u}function u(e){return null==e||isNaN(e=+e)?r:(n||(n=i(a.map(t),s,l)))(t(h(e)))}return u.invert=function(r){return h(e((o||(o=i(s,a.map(t),ce)))(r)))},u.domain=function(t){return arguments.length?(a=Array.from(t,Mi),c()):a.slice()},u.range=function(t){return arguments.length?(s=Array.from(t),c()):s.slice()},u.rangeRound=function(t){return s=Array.from(t),l=Ai,c()},u.clamp=function(t){return arguments.length?(h=!!t||Li,c()):h!==Li},u.interpolate=function(t){return arguments.length?(l=t,c()):l},u.unknown=function(t){return arguments.length?(r=t,u):r},function(r,i){return t=r,e=i,c()}}()(Li,Li)}var Ii,Ri=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Pi(t){if(!(e=Ri.exec(t)))throw new Error("invalid format: "+t);var e;return new zi({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function zi(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function Ki(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,i=t.slice(0,r);return[i.length>1?i[0]+i.slice(2):i,+t.slice(r+1)]}function qi(t){return(t=Ki(Math.abs(t)))?t[1]:NaN}function Ni(t,e){var r=Ki(t,e);if(!r)return t+"";var i=r[0],n=r[1];return n<0?"0."+new Array(-n).join("0")+i:i.length>n+1?i.slice(0,n+1)+"."+i.slice(n+1):i+new Array(n-i.length+2).join("0")}Pi.prototype=zi.prototype,zi.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};const ji={"%":(t,e)=>(100*t).toFixed(e),b:t=>Math.round(t).toString(2),c:t=>t+"",d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:(t,e)=>t.toExponential(e),f:(t,e)=>t.toFixed(e),g:(t,e)=>t.toPrecision(e),o:t=>Math.round(t).toString(8),p:(t,e)=>Ni(100*t,e),r:Ni,s:function(t,e){var r=Ki(t,e);if(!r)return t+"";var i=r[0],n=r[1],o=n-(Ii=3*Math.max(-8,Math.min(8,Math.floor(n/3))))+1,a=i.length;return o===a?i:o>a?i+new Array(o-a+1).join("0"):o>0?i.slice(0,o)+"."+i.slice(o):"0."+new Array(1-o).join("0")+Ki(t,Math.max(0,e+o-1))[0]},X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function Wi(t){return t}var Ui,Hi,Yi,Gi=Array.prototype.map,Vi=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Zi(t){var e=t.domain;return t.ticks=function(t){var r=e();return function(t,e,r){if(!((r=+r)>0))return[];if((t=+t)==(e=+e))return[t];const i=e=n))return[];const s=o-n+1,l=new Array(s);if(i)if(a<0)for(let t=0;t0;){if((n=pi(l,h,r))===i)return o[a]=l,o[s]=h,e(o);if(n>0)l=Math.floor(l/n)*n,h=Math.ceil(h/n)*n;else{if(!(n<0))break;l=Math.ceil(l*n)/n,h=Math.floor(h*n)/n}i=n}return t},t}function Xi(){var t=Oi();return t.copy=function(){return Di(t,Xi())},ri.apply(t,arguments),Zi(t)}Ui=function(t){var e,r,i=void 0===t.grouping||void 0===t.thousands?Wi:(e=Gi.call(t.grouping,Number),r=t.thousands+"",function(t,i){for(var n=t.length,o=[],a=0,s=e[0],l=0;n>0&&s>0&&(l+s+1>i&&(s=Math.max(1,i-l)),o.push(t.substring(n-=s,n+s)),!((l+=s+1)>i));)s=e[a=(a+1)%e.length];return o.reverse().join(r)}),n=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",a=void 0===t.decimal?".":t.decimal+"",s=void 0===t.numerals?Wi:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(Gi.call(t.numerals,String)),l=void 0===t.percent?"%":t.percent+"",h=void 0===t.minus?"−":t.minus+"",c=void 0===t.nan?"NaN":t.nan+"";function u(t){var e=(t=Pi(t)).fill,r=t.align,u=t.sign,d=t.symbol,p=t.zero,f=t.width,g=t.comma,y=t.precision,m=t.trim,x=t.type;"n"===x?(g=!0,x="g"):ji[x]||(void 0===y&&(y=12),m=!0,x="g"),(p||"0"===e&&"="===r)&&(p=!0,e="0",r="=");var b="$"===d?n:"#"===d&&/[boxX]/.test(x)?"0"+x.toLowerCase():"",k="$"===d?o:/[%p]/.test(x)?l:"",C=ji[x],w=/[defgprs%]/.test(x);function _(t){var n,o,l,d=b,_=k;if("c"===x)_=C(t)+_,t="";else{var v=(t=+t)<0||1/t<0;if(t=isNaN(t)?c:C(Math.abs(t),y),m&&(t=function(t){t:for(var e,r=t.length,i=1,n=-1;i0&&(n=0)}return n>0?t.slice(0,n)+t.slice(e+1):t}(t)),v&&0==+t&&"+"!==u&&(v=!1),d=(v?"("===u?u:h:"-"===u||"("===u?"":u)+d,_=("s"===x?Vi[8+Ii/3]:"")+_+(v&&"("===u?")":""),w)for(n=-1,o=t.length;++n(l=t.charCodeAt(n))||l>57){_=(46===l?a+t.slice(n+1):t.slice(n))+_,t=t.slice(0,n);break}}g&&!p&&(t=i(t,1/0));var S=d.length+t.length+_.length,T=S>1)+d+t+_+T.slice(S);break;default:t=T+d+t+_}return s(t)}return y=void 0===y?6:/[gprs]/.test(x)?Math.max(1,Math.min(21,y)):Math.max(0,Math.min(20,y)),_.toString=function(){return t+""},_}return{format:u,formatPrefix:function(t,e){var r=u(((t=Pi(t)).type="f",t)),i=3*Math.max(-8,Math.min(8,Math.floor(qi(e)/3))),n=Math.pow(10,-i),o=Vi[8+i/3];return function(t){return r(n*t)+o}}}}({thousands:",",grouping:[3],currency:["$",""]}),Hi=Ui.format,Yi=Ui.formatPrefix;const Qi=1e3,Ji=6e4,tn=36e5,en=864e5,rn=6048e5,nn=31536e6,on=new Date,an=new Date;function sn(t,e,r,i){function n(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return n.floor=e=>(t(e=new Date(+e)),e),n.ceil=r=>(t(r=new Date(r-1)),e(r,1),t(r),r),n.round=t=>{const e=n(t),r=n.ceil(t);return t-e(e(t=new Date(+t),null==r?1:Math.floor(r)),t),n.range=(r,i,o)=>{const a=[];if(r=n.ceil(r),o=null==o?1:Math.floor(o),!(r0))return a;let s;do{a.push(s=new Date(+r)),e(r,o),t(r)}while(ssn((e=>{if(e>=e)for(;t(e),!r(e);)e.setTime(e-1)}),((t,i)=>{if(t>=t)if(i<0)for(;++i<=0;)for(;e(t,-1),!r(t););else for(;--i>=0;)for(;e(t,1),!r(t););})),r&&(n.count=(e,i)=>(on.setTime(+e),an.setTime(+i),t(on),t(an),Math.floor(r(on,an))),n.every=t=>(t=Math.floor(t),isFinite(t)&&t>0?t>1?n.filter(i?e=>i(e)%t==0:e=>n.count(0,e)%t==0):n:null)),n}const ln=sn((()=>{}),((t,e)=>{t.setTime(+t+e)}),((t,e)=>e-t));ln.every=t=>(t=Math.floor(t),isFinite(t)&&t>0?t>1?sn((e=>{e.setTime(Math.floor(e/t)*t)}),((e,r)=>{e.setTime(+e+r*t)}),((e,r)=>(r-e)/t)):ln:null),ln.range;const hn=sn((t=>{t.setTime(t-t.getMilliseconds())}),((t,e)=>{t.setTime(+t+e*Qi)}),((t,e)=>(e-t)/Qi),(t=>t.getUTCSeconds())),cn=(hn.range,sn((t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*Qi)}),((t,e)=>{t.setTime(+t+e*Ji)}),((t,e)=>(e-t)/Ji),(t=>t.getMinutes()))),un=(cn.range,sn((t=>{t.setUTCSeconds(0,0)}),((t,e)=>{t.setTime(+t+e*Ji)}),((t,e)=>(e-t)/Ji),(t=>t.getUTCMinutes()))),dn=(un.range,sn((t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*Qi-t.getMinutes()*Ji)}),((t,e)=>{t.setTime(+t+e*tn)}),((t,e)=>(e-t)/tn),(t=>t.getHours()))),pn=(dn.range,sn((t=>{t.setUTCMinutes(0,0,0)}),((t,e)=>{t.setTime(+t+e*tn)}),((t,e)=>(e-t)/tn),(t=>t.getUTCHours()))),fn=(pn.range,sn((t=>t.setHours(0,0,0,0)),((t,e)=>t.setDate(t.getDate()+e)),((t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Ji)/en),(t=>t.getDate()-1))),gn=(fn.range,sn((t=>{t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+e)}),((t,e)=>(e-t)/en),(t=>t.getUTCDate()-1))),yn=(gn.range,sn((t=>{t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+e)}),((t,e)=>(e-t)/en),(t=>Math.floor(t/en))));function mn(t){return sn((e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),((t,e)=>{t.setDate(t.getDate()+7*e)}),((t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Ji)/rn))}yn.range;const xn=mn(0),bn=mn(1),kn=mn(2),Cn=mn(3),wn=mn(4),_n=mn(5),vn=mn(6);function Sn(t){return sn((e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+7*e)}),((t,e)=>(e-t)/rn))}xn.range,bn.range,kn.range,Cn.range,wn.range,_n.range,vn.range;const Tn=Sn(0),An=Sn(1),Mn=Sn(2),Bn=Sn(3),Ln=Sn(4),Fn=Sn(5),$n=Sn(6),En=(Tn.range,An.range,Mn.range,Bn.range,Ln.range,Fn.range,$n.range,sn((t=>{t.setDate(1),t.setHours(0,0,0,0)}),((t,e)=>{t.setMonth(t.getMonth()+e)}),((t,e)=>e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())),(t=>t.getMonth()))),Dn=(En.range,sn((t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)}),((t,e)=>e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())),(t=>t.getUTCMonth()))),On=(Dn.range,sn((t=>{t.setMonth(0,1),t.setHours(0,0,0,0)}),((t,e)=>{t.setFullYear(t.getFullYear()+e)}),((t,e)=>e.getFullYear()-t.getFullYear()),(t=>t.getFullYear())));On.every=t=>isFinite(t=Math.floor(t))&&t>0?sn((e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),((e,r)=>{e.setFullYear(e.getFullYear()+r*t)})):null,On.range;const In=sn((t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)}),((t,e)=>e.getUTCFullYear()-t.getUTCFullYear()),(t=>t.getUTCFullYear()));function Rn(t,e,r,i,n,o){const a=[[hn,1,Qi],[hn,5,5e3],[hn,15,15e3],[hn,30,3e4],[o,1,Ji],[o,5,3e5],[o,15,9e5],[o,30,18e5],[n,1,tn],[n,3,108e5],[n,6,216e5],[n,12,432e5],[i,1,en],[i,2,1728e5],[r,1,rn],[e,1,2592e6],[e,3,7776e6],[t,1,nn]];function s(e,r,i){const n=Math.abs(r-e)/i,o=mi((([,,t])=>t)).right(a,n);if(o===a.length)return t.every(fi(e/nn,r/nn,i));if(0===o)return ln.every(Math.max(fi(e,r,i),1));const[s,l]=a[n/a[o-1][2]isFinite(t=Math.floor(t))&&t>0?sn((e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),((e,r)=>{e.setUTCFullYear(e.getUTCFullYear()+r*t)})):null,In.range;const[Pn,zn]=Rn(In,Dn,Tn,yn,pn,un),[Kn,qn]=Rn(On,En,xn,fn,dn,cn);function Nn(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function jn(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Wn(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}var Un,Hn,Yn={"-":"",_:" ",0:"0"},Gn=/^\s*\d+/,Vn=/^%/,Zn=/[\\^$*+?|[\]().{}]/g;function Xn(t,e,r){var i=t<0?"-":"",n=(i?-t:t)+"",o=n.length;return i+(o[t.toLowerCase(),e])))}function eo(t,e,r){var i=Gn.exec(e.slice(r,r+1));return i?(t.w=+i[0],r+i[0].length):-1}function ro(t,e,r){var i=Gn.exec(e.slice(r,r+1));return i?(t.u=+i[0],r+i[0].length):-1}function io(t,e,r){var i=Gn.exec(e.slice(r,r+2));return i?(t.U=+i[0],r+i[0].length):-1}function no(t,e,r){var i=Gn.exec(e.slice(r,r+2));return i?(t.V=+i[0],r+i[0].length):-1}function oo(t,e,r){var i=Gn.exec(e.slice(r,r+2));return i?(t.W=+i[0],r+i[0].length):-1}function ao(t,e,r){var i=Gn.exec(e.slice(r,r+4));return i?(t.y=+i[0],r+i[0].length):-1}function so(t,e,r){var i=Gn.exec(e.slice(r,r+2));return i?(t.y=+i[0]+(+i[0]>68?1900:2e3),r+i[0].length):-1}function lo(t,e,r){var i=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(r,r+6));return i?(t.Z=i[1]?0:-(i[2]+(i[3]||"00")),r+i[0].length):-1}function ho(t,e,r){var i=Gn.exec(e.slice(r,r+1));return i?(t.q=3*i[0]-3,r+i[0].length):-1}function co(t,e,r){var i=Gn.exec(e.slice(r,r+2));return i?(t.m=i[0]-1,r+i[0].length):-1}function uo(t,e,r){var i=Gn.exec(e.slice(r,r+2));return i?(t.d=+i[0],r+i[0].length):-1}function po(t,e,r){var i=Gn.exec(e.slice(r,r+3));return i?(t.m=0,t.d=+i[0],r+i[0].length):-1}function fo(t,e,r){var i=Gn.exec(e.slice(r,r+2));return i?(t.H=+i[0],r+i[0].length):-1}function go(t,e,r){var i=Gn.exec(e.slice(r,r+2));return i?(t.M=+i[0],r+i[0].length):-1}function yo(t,e,r){var i=Gn.exec(e.slice(r,r+2));return i?(t.S=+i[0],r+i[0].length):-1}function mo(t,e,r){var i=Gn.exec(e.slice(r,r+3));return i?(t.L=+i[0],r+i[0].length):-1}function xo(t,e,r){var i=Gn.exec(e.slice(r,r+6));return i?(t.L=Math.floor(i[0]/1e3),r+i[0].length):-1}function bo(t,e,r){var i=Vn.exec(e.slice(r,r+1));return i?r+i[0].length:-1}function ko(t,e,r){var i=Gn.exec(e.slice(r));return i?(t.Q=+i[0],r+i[0].length):-1}function Co(t,e,r){var i=Gn.exec(e.slice(r));return i?(t.s=+i[0],r+i[0].length):-1}function wo(t,e){return Xn(t.getDate(),e,2)}function _o(t,e){return Xn(t.getHours(),e,2)}function vo(t,e){return Xn(t.getHours()%12||12,e,2)}function So(t,e){return Xn(1+fn.count(On(t),t),e,3)}function To(t,e){return Xn(t.getMilliseconds(),e,3)}function Ao(t,e){return To(t,e)+"000"}function Mo(t,e){return Xn(t.getMonth()+1,e,2)}function Bo(t,e){return Xn(t.getMinutes(),e,2)}function Lo(t,e){return Xn(t.getSeconds(),e,2)}function Fo(t){var e=t.getDay();return 0===e?7:e}function $o(t,e){return Xn(xn.count(On(t)-1,t),e,2)}function Eo(t){var e=t.getDay();return e>=4||0===e?wn(t):wn.ceil(t)}function Do(t,e){return t=Eo(t),Xn(wn.count(On(t),t)+(4===On(t).getDay()),e,2)}function Oo(t){return t.getDay()}function Io(t,e){return Xn(bn.count(On(t)-1,t),e,2)}function Ro(t,e){return Xn(t.getFullYear()%100,e,2)}function Po(t,e){return Xn((t=Eo(t)).getFullYear()%100,e,2)}function zo(t,e){return Xn(t.getFullYear()%1e4,e,4)}function Ko(t,e){var r=t.getDay();return Xn((t=r>=4||0===r?wn(t):wn.ceil(t)).getFullYear()%1e4,e,4)}function qo(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+Xn(e/60|0,"0",2)+Xn(e%60,"0",2)}function No(t,e){return Xn(t.getUTCDate(),e,2)}function jo(t,e){return Xn(t.getUTCHours(),e,2)}function Wo(t,e){return Xn(t.getUTCHours()%12||12,e,2)}function Uo(t,e){return Xn(1+gn.count(In(t),t),e,3)}function Ho(t,e){return Xn(t.getUTCMilliseconds(),e,3)}function Yo(t,e){return Ho(t,e)+"000"}function Go(t,e){return Xn(t.getUTCMonth()+1,e,2)}function Vo(t,e){return Xn(t.getUTCMinutes(),e,2)}function Zo(t,e){return Xn(t.getUTCSeconds(),e,2)}function Xo(t){var e=t.getUTCDay();return 0===e?7:e}function Qo(t,e){return Xn(Tn.count(In(t)-1,t),e,2)}function Jo(t){var e=t.getUTCDay();return e>=4||0===e?Ln(t):Ln.ceil(t)}function ta(t,e){return t=Jo(t),Xn(Ln.count(In(t),t)+(4===In(t).getUTCDay()),e,2)}function ea(t){return t.getUTCDay()}function ra(t,e){return Xn(An.count(In(t)-1,t),e,2)}function ia(t,e){return Xn(t.getUTCFullYear()%100,e,2)}function na(t,e){return Xn((t=Jo(t)).getUTCFullYear()%100,e,2)}function oa(t,e){return Xn(t.getUTCFullYear()%1e4,e,4)}function aa(t,e){var r=t.getUTCDay();return Xn((t=r>=4||0===r?Ln(t):Ln.ceil(t)).getUTCFullYear()%1e4,e,4)}function sa(){return"+0000"}function la(){return"%"}function ha(t){return+t}function ca(t){return Math.floor(+t/1e3)}function ua(t){return new Date(t)}function da(t){return t instanceof Date?+t:+new Date(+t)}function pa(t,e,r,i,n,o,a,s,l,h){var c=Oi(),u=c.invert,d=c.domain,p=h(".%L"),f=h(":%S"),g=h("%I:%M"),y=h("%I %p"),m=h("%a %d"),x=h("%b %d"),b=h("%B"),k=h("%Y");function C(t){return(l(t)=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:ha,s:ca,S:Lo,u:Fo,U:$o,V:Do,w:Oo,W:Io,x:null,X:null,y:Ro,Y:zo,Z:qo,"%":la},k={a:function(t){return a[t.getUTCDay()]},A:function(t){return o[t.getUTCDay()]},b:function(t){return l[t.getUTCMonth()]},B:function(t){return s[t.getUTCMonth()]},c:null,d:No,e:No,f:Yo,g:na,G:aa,H:jo,I:Wo,j:Uo,L:Ho,m:Go,M:Vo,p:function(t){return n[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:ha,s:ca,S:Zo,u:Xo,U:Qo,V:ta,w:ea,W:ra,x:null,X:null,y:ia,Y:oa,Z:sa,"%":la},C={a:function(t,e,r){var i=p.exec(e.slice(r));return i?(t.w=f.get(i[0].toLowerCase()),r+i[0].length):-1},A:function(t,e,r){var i=u.exec(e.slice(r));return i?(t.w=d.get(i[0].toLowerCase()),r+i[0].length):-1},b:function(t,e,r){var i=m.exec(e.slice(r));return i?(t.m=x.get(i[0].toLowerCase()),r+i[0].length):-1},B:function(t,e,r){var i=g.exec(e.slice(r));return i?(t.m=y.get(i[0].toLowerCase()),r+i[0].length):-1},c:function(t,r,i){return v(t,e,r,i)},d:uo,e:uo,f:xo,g:so,G:ao,H:fo,I:fo,j:po,L:mo,m:co,M:go,p:function(t,e,r){var i=h.exec(e.slice(r));return i?(t.p=c.get(i[0].toLowerCase()),r+i[0].length):-1},q:ho,Q:ko,s:Co,S:yo,u:ro,U:io,V:no,w:eo,W:oo,x:function(t,e,i){return v(t,r,e,i)},X:function(t,e,r){return v(t,i,e,r)},y:so,Y:ao,Z:lo,"%":bo};function w(t,e){return function(r){var i,n,o,a=[],s=-1,l=0,h=t.length;for(r instanceof Date||(r=new Date(+r));++s53)return null;"w"in o||(o.w=1),"Z"in o?(n=(i=jn(Wn(o.y,0,1))).getUTCDay(),i=n>4||0===n?An.ceil(i):An(i),i=gn.offset(i,7*(o.V-1)),o.y=i.getUTCFullYear(),o.m=i.getUTCMonth(),o.d=i.getUTCDate()+(o.w+6)%7):(n=(i=Nn(Wn(o.y,0,1))).getDay(),i=n>4||0===n?bn.ceil(i):bn(i),i=fn.offset(i,7*(o.V-1)),o.y=i.getFullYear(),o.m=i.getMonth(),o.d=i.getDate()+(o.w+6)%7)}else("W"in o||"U"in o)&&("w"in o||(o.w="u"in o?o.u%7:"W"in o?1:0),n="Z"in o?jn(Wn(o.y,0,1)).getUTCDay():Nn(Wn(o.y,0,1)).getDay(),o.m=0,o.d="W"in o?(o.w+6)%7+7*o.W-(n+5)%7:o.w+7*o.U-(n+6)%7);return"Z"in o?(o.H+=o.Z/100|0,o.M+=o.Z%100,jn(o)):Nn(o)}}function v(t,e,r,i){for(var n,o,a=0,s=e.length,l=r.length;a=l)return-1;if(37===(n=e.charCodeAt(a++))){if(n=e.charAt(a++),!(o=C[n in Yn?e.charAt(a++):n])||(i=o(t,r,i))<0)return-1}else if(n!=r.charCodeAt(i++))return-1}return i}return b.x=w(r,b),b.X=w(i,b),b.c=w(e,b),k.x=w(r,k),k.X=w(i,k),k.c=w(e,k),{format:function(t){var e=w(t+="",b);return e.toString=function(){return t},e},parse:function(t){var e=_(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=w(t+="",k);return e.toString=function(){return t},e},utcParse:function(t){var e=_(t+="",!0);return e.toString=function(){return t},e}}}({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}),Hn=Un.format,Un.parse,Un.utcFormat,Un.utcParse;const ga=function(t){for(var e=new Array(10),r=0;r<10;)e[r]="#"+t.slice(6*r,6*++r);return e}("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");function ya(t){return"string"==typeof t?new Mt([[document.querySelector(t)]],[document.documentElement]):new Mt([[t]],At)}function ma(t){return function(){return t}}const xa=Math.abs,ba=Math.atan2,ka=Math.cos,Ca=Math.max,wa=Math.min,_a=Math.sin,va=Math.sqrt,Sa=1e-12,Ta=Math.PI,Aa=Ta/2,Ma=2*Ta;function Ba(t){return t>=1?Aa:t<=-1?-Aa:Math.asin(t)}const La=Math.PI,Fa=2*La,$a=1e-6,Ea=Fa-$a;function Da(t){this._+=t[0];for(let e=1,r=t.length;e=0))throw new Error(`invalid digits: ${t}`);if(e>15)return Da;const r=10**e;return function(t){this._+=t[0];for(let e=1,i=t.length;e$a)if(Math.abs(c*s-l*h)>$a&&n){let d=r-o,p=i-a,f=s*s+l*l,g=d*d+p*p,y=Math.sqrt(f),m=Math.sqrt(u),x=n*Math.tan((La-Math.acos((f+u-g)/(2*y*m)))/2),b=x/m,k=x/y;Math.abs(b-1)>$a&&this._append`L${t+b*h},${e+b*c}`,this._append`A${n},${n},0,0,${+(c*d>h*p)},${this._x1=t+k*s},${this._y1=e+k*l}`}else this._append`L${this._x1=t},${this._y1=e}`}arc(t,e,r,i,n,o){if(t=+t,e=+e,o=!!o,(r=+r)<0)throw new Error(`negative radius: ${r}`);let a=r*Math.cos(i),s=r*Math.sin(i),l=t+a,h=e+s,c=1^o,u=o?i-n:n-i;null===this._x1?this._append`M${l},${h}`:(Math.abs(this._x1-l)>$a||Math.abs(this._y1-h)>$a)&&this._append`L${l},${h}`,r&&(u<0&&(u=u%Fa+Fa),u>Ea?this._append`A${r},${r},0,1,${c},${t-a},${e-s}A${r},${r},0,1,${c},${this._x1=l},${this._y1=h}`:u>$a&&this._append`A${r},${r},0,${+(u>=La)},${c},${this._x1=t+r*Math.cos(n)},${this._y1=e+r*Math.sin(n)}`)}rect(t,e,r,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function Ia(t){let e=3;return t.digits=function(r){if(!arguments.length)return e;if(null==r)e=null;else{const t=Math.floor(r);if(!(t>=0))throw new RangeError(`invalid digits: ${r}`);e=t}return t},()=>new Oa(e)}function Ra(t){return t.innerRadius}function Pa(t){return t.outerRadius}function za(t){return t.startAngle}function Ka(t){return t.endAngle}function qa(t){return t&&t.padAngle}function Na(t,e,r,i,n,o,a){var s=t-r,l=e-i,h=(a?o:-o)/va(s*s+l*l),c=h*l,u=-h*s,d=t+c,p=e+u,f=r+c,g=i+u,y=(d+f)/2,m=(p+g)/2,x=f-d,b=g-p,k=x*x+b*b,C=n-o,w=d*g-f*p,_=(b<0?-1:1)*va(Ca(0,C*C*k-w*w)),v=(w*b-x*_)/k,S=(-w*x-b*_)/k,T=(w*b+x*_)/k,A=(-w*x+b*_)/k,M=v-y,B=S-m,L=T-y,F=A-m;return M*M+B*B>L*L+F*F&&(v=T,S=A),{cx:v,cy:S,x01:-c,y01:-u,x11:v*(n/C-1),y11:S*(n/C-1)}}function ja(){var t=Ra,e=Pa,r=ma(0),i=null,n=za,o=Ka,a=qa,s=null,l=Ia(h);function h(){var h,c,u,d=+t.apply(this,arguments),p=+e.apply(this,arguments),f=n.apply(this,arguments)-Aa,g=o.apply(this,arguments)-Aa,y=xa(g-f),m=g>f;if(s||(s=h=l()),pSa)if(y>Ma-Sa)s.moveTo(p*ka(f),p*_a(f)),s.arc(0,0,p,f,g,!m),d>Sa&&(s.moveTo(d*ka(g),d*_a(g)),s.arc(0,0,d,g,f,m));else{var x,b,k=f,C=g,w=f,_=g,v=y,S=y,T=a.apply(this,arguments)/2,A=T>Sa&&(i?+i.apply(this,arguments):va(d*d+p*p)),M=wa(xa(p-d)/2,+r.apply(this,arguments)),B=M,L=M;if(A>Sa){var F=Ba(A/d*_a(T)),$=Ba(A/p*_a(T));(v-=2*F)>Sa?(w+=F*=m?1:-1,_-=F):(v=0,w=_=(f+g)/2),(S-=2*$)>Sa?(k+=$*=m?1:-1,C-=$):(S=0,k=C=(f+g)/2)}var E=p*ka(k),D=p*_a(k),O=d*ka(_),I=d*_a(_);if(M>Sa){var R,P=p*ka(C),z=p*_a(C),K=d*ka(w),q=d*_a(w);if(y1?0:u<-1?Ta:Math.acos(u))/2),Y=va(R[0]*R[0]+R[1]*R[1]);B=wa(M,(d-Y)/(H-1)),L=wa(M,(p-Y)/(H+1))}else B=L=0}S>Sa?L>Sa?(x=Na(K,q,E,D,p,L,m),b=Na(P,z,O,I,p,L,m),s.moveTo(x.cx+x.x01,x.cy+x.y01),LSa&&v>Sa?B>Sa?(x=Na(O,I,P,z,d,-B,m),b=Na(E,D,K,q,d,-B,m),s.lineTo(x.cx+x.x01,x.cy+x.y01),Bt?1:e>=t?0:NaN}function Xa(t){return t}function Qa(){var t=Xa,e=Za,r=null,i=ma(0),n=ma(Ma),o=ma(0);function a(a){var s,l,h,c,u,d=(a=Wa(a)).length,p=0,f=new Array(d),g=new Array(d),y=+i.apply(this,arguments),m=Math.min(Ma,Math.max(-Ma,n.apply(this,arguments)-y)),x=Math.min(Math.abs(m)/d,o.apply(this,arguments)),b=x*(m<0?-1:1);for(s=0;s0&&(p+=u);for(null!=e?f.sort((function(t,r){return e(g[t],g[r])})):null!=r&&f.sort((function(t,e){return r(a[t],a[e])})),s=0,h=p?(m-d*b)/p:0;s0?u*h:0)+b,g[l]={data:a[l],index:s,value:u,startAngle:y,endAngle:c,padAngle:x};return g}return a.value=function(e){return arguments.length?(t="function"==typeof e?e:ma(+e),a):t},a.sortValues=function(t){return arguments.length?(e=t,r=null,a):e},a.sort=function(t){return arguments.length?(r=t,e=null,a):r},a.startAngle=function(t){return arguments.length?(i="function"==typeof t?t:ma(+t),a):i},a.endAngle=function(t){return arguments.length?(n="function"==typeof t?t:ma(+t),a):n},a.padAngle=function(t){return arguments.length?(o="function"==typeof t?t:ma(+t),a):o},a}function Ja(){}function ts(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function es(t){this._context=t}function rs(t){return new es(t)}function is(t){this._context=t}function ns(t){return new is(t)}function os(t){this._context=t}function as(t){return new os(t)}Oa.prototype,Array.prototype.slice,Ua.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}},es.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ts(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ts(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},is.prototype={areaStart:Ja,areaEnd:Ja,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:ts(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},os.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,i=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 3:this._point=4;default:ts(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};class ss{constructor(t,e){this._context=t,this._x=e}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,e,t,e):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+e)/2,t,this._y0,t,e)}this._x0=t,this._y0=e}}function ls(t){return new ss(t,!0)}function hs(t){return new ss(t,!1)}function cs(t,e){this._basis=new es(t),this._beta=e}cs.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var i,n=t[0],o=e[0],a=t[r]-n,s=e[r]-o,l=-1;++l<=r;)i=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(n+i*a),this._beta*e[l]+(1-this._beta)*(o+i*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};const us=function t(e){function r(t){return 1===e?new es(t):new cs(t,e)}return r.beta=function(e){return t(+e)},r}(.85);function ds(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function ps(t,e){this._context=t,this._k=(1-e)/6}ps.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:ds(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:ds(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const fs=function t(e){function r(t){return new ps(t,e)}return r.tension=function(e){return t(+e)},r}(0);function gs(t,e){this._context=t,this._k=(1-e)/6}gs.prototype={areaStart:Ja,areaEnd:Ja,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:ds(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const ys=function t(e){function r(t){return new gs(t,e)}return r.tension=function(e){return t(+e)},r}(0);function ms(t,e){this._context=t,this._k=(1-e)/6}ms.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ds(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const xs=function t(e){function r(t){return new ms(t,e)}return r.tension=function(e){return t(+e)},r}(0);function bs(t,e,r){var i=t._x1,n=t._y1,o=t._x2,a=t._y2;if(t._l01_a>Sa){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);i=(i*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,n=(n*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>Sa){var h=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,c=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*h+t._x1*t._l23_2a-e*t._l12_2a)/c,a=(a*h+t._y1*t._l23_2a-r*t._l12_2a)/c}t._context.bezierCurveTo(i,n,o,a,t._x2,t._y2)}function ks(t,e){this._context=t,this._alpha=e}ks.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:bs(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Cs=function t(e){function r(t){return e?new ks(t,e):new ps(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function ws(t,e){this._context=t,this._alpha=e}ws.prototype={areaStart:Ja,areaEnd:Ja,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:bs(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const _s=function t(e){function r(t){return e?new ws(t,e):new gs(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function vs(t,e){this._context=t,this._alpha=e}vs.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:bs(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Ss=function t(e){function r(t){return e?new vs(t,e):new ms(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Ts(t){this._context=t}function As(t){return new Ts(t)}function Ms(t){return t<0?-1:1}function Bs(t,e,r){var i=t._x1-t._x0,n=e-t._x1,o=(t._y1-t._y0)/(i||n<0&&-0),a=(r-t._y1)/(n||i<0&&-0),s=(o*n+a*i)/(i+n);return(Ms(o)+Ms(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(s))||0}function Ls(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function Fs(t,e,r){var i=t._x0,n=t._y0,o=t._x1,a=t._y1,s=(o-i)/3;t._context.bezierCurveTo(i+s,n+s*e,o-s,a-s*r,o,a)}function $s(t){this._context=t}function Es(t){this._context=new Ds(t)}function Ds(t){this._context=t}function Os(t){return new $s(t)}function Is(t){return new Es(t)}function Rs(t){this._context=t}function Ps(t){var e,r,i=t.length-1,n=new Array(i),o=new Array(i),a=new Array(i);for(n[0]=0,o[0]=2,a[0]=t[0]+2*t[1],e=1;e=0;--e)n[e]=(a[e]-n[e+1])/o[e];for(o[i-1]=(t[i]+n[i-1])/2,e=0;e=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}}this._x=t,this._y=e}},Ws.prototype={constructor:Ws,scale:function(t){return 1===t?this:new Ws(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new Ws(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},new Ws(1,0,0),Ws.prototype},7266:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(6309),n=r(3122);const o=class{constructor(){this.type=n.Z.ALL}get(){return this.type}set(t){if(this.type&&this.type!==t)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=t}reset(){this.type=n.Z.ALL}is(t){return this.type===t}},a=new class{constructor(t,e){this.color=e,this.changed=!1,this.data=t,this.type=new o}set(t,e){return this.color=e,this.changed=!1,this.data=t,this.type.type=n.Z.ALL,this}_ensureHSL(){const t=this.data,{h:e,s:r,l:n}=t;void 0===e&&(t.h=i.A.channel.rgb2hsl(t,"h")),void 0===r&&(t.s=i.A.channel.rgb2hsl(t,"s")),void 0===n&&(t.l=i.A.channel.rgb2hsl(t,"l"))}_ensureRGB(){const t=this.data,{r:e,g:r,b:n}=t;void 0===e&&(t.r=i.A.channel.hsl2rgb(t,"r")),void 0===r&&(t.g=i.A.channel.hsl2rgb(t,"g")),void 0===n&&(t.b=i.A.channel.hsl2rgb(t,"b"))}get r(){const t=this.data,e=t.r;return this.type.is(n.Z.HSL)||void 0===e?(this._ensureHSL(),i.A.channel.hsl2rgb(t,"r")):e}get g(){const t=this.data,e=t.g;return this.type.is(n.Z.HSL)||void 0===e?(this._ensureHSL(),i.A.channel.hsl2rgb(t,"g")):e}get b(){const t=this.data,e=t.b;return this.type.is(n.Z.HSL)||void 0===e?(this._ensureHSL(),i.A.channel.hsl2rgb(t,"b")):e}get h(){const t=this.data,e=t.h;return this.type.is(n.Z.RGB)||void 0===e?(this._ensureRGB(),i.A.channel.rgb2hsl(t,"h")):e}get s(){const t=this.data,e=t.s;return this.type.is(n.Z.RGB)||void 0===e?(this._ensureRGB(),i.A.channel.rgb2hsl(t,"s")):e}get l(){const t=this.data,e=t.l;return this.type.is(n.Z.RGB)||void 0===e?(this._ensureRGB(),i.A.channel.rgb2hsl(t,"l")):e}get a(){return this.data.a}set r(t){this.type.set(n.Z.RGB),this.changed=!0,this.data.r=t}set g(t){this.type.set(n.Z.RGB),this.changed=!0,this.data.g=t}set b(t){this.type.set(n.Z.RGB),this.changed=!0,this.data.b=t}set h(t){this.type.set(n.Z.HSL),this.changed=!0,this.data.h=t}set s(t){this.type.set(n.Z.HSL),this.changed=!0,this.data.s=t}set l(t){this.type.set(n.Z.HSL),this.changed=!0,this.data.l=t}set a(t){this.changed=!0,this.data.a=t}}({r:0,g:0,b:0,a:0},"transparent")},1931:(t,e,r)=>{"use strict";r.d(e,{A:()=>g});var i=r(7266),n=r(3122);const o={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:t=>{if(35!==t.charCodeAt(0))return;const e=t.match(o.re);if(!e)return;const r=e[1],n=parseInt(r,16),a=r.length,s=a%4==0,l=a>4,h=l?1:17,c=l?8:4,u=s?0:-1,d=l?255:15;return i.A.set({r:(n>>c*(u+3)&d)*h,g:(n>>c*(u+2)&d)*h,b:(n>>c*(u+1)&d)*h,a:s?(n&d)*h/255:1},t)},stringify:t=>{const{r:e,g:r,b:i,a:o}=t;return o<1?`#${n.Y[Math.round(e)]}${n.Y[Math.round(r)]}${n.Y[Math.round(i)]}${n.Y[Math.round(255*o)]}`:`#${n.Y[Math.round(e)]}${n.Y[Math.round(r)]}${n.Y[Math.round(i)]}`}},a=o;var s=r(6309);const l={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:t=>{const e=t.match(l.hueRe);if(e){const[,t,r]=e;switch(r){case"grad":return s.A.channel.clamp.h(.9*parseFloat(t));case"rad":return s.A.channel.clamp.h(180*parseFloat(t)/Math.PI);case"turn":return s.A.channel.clamp.h(360*parseFloat(t))}}return s.A.channel.clamp.h(parseFloat(t))},parse:t=>{const e=t.charCodeAt(0);if(104!==e&&72!==e)return;const r=t.match(l.re);if(!r)return;const[,n,o,a,h,c]=r;return i.A.set({h:l._hue2deg(n),s:s.A.channel.clamp.s(parseFloat(o)),l:s.A.channel.clamp.l(parseFloat(a)),a:h?s.A.channel.clamp.a(c?parseFloat(h)/100:parseFloat(h)):1},t)},stringify:t=>{const{h:e,s:r,l:i,a:n}=t;return n<1?`hsla(${s.A.lang.round(e)}, ${s.A.lang.round(r)}%, ${s.A.lang.round(i)}%, ${n})`:`hsl(${s.A.lang.round(e)}, ${s.A.lang.round(r)}%, ${s.A.lang.round(i)}%)`}},h=l,c={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:t=>{t=t.toLowerCase();const e=c.colors[t];if(e)return a.parse(e)},stringify:t=>{const e=a.stringify(t);for(const t in c.colors)if(c.colors[t]===e)return t}},u=c,d={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:t=>{const e=t.charCodeAt(0);if(114!==e&&82!==e)return;const r=t.match(d.re);if(!r)return;const[,n,o,a,l,h,c,u,p]=r;return i.A.set({r:s.A.channel.clamp.r(o?2.55*parseFloat(n):parseFloat(n)),g:s.A.channel.clamp.g(l?2.55*parseFloat(a):parseFloat(a)),b:s.A.channel.clamp.b(c?2.55*parseFloat(h):parseFloat(h)),a:u?s.A.channel.clamp.a(p?parseFloat(u)/100:parseFloat(u)):1},t)},stringify:t=>{const{r:e,g:r,b:i,a:n}=t;return n<1?`rgba(${s.A.lang.round(e)}, ${s.A.lang.round(r)}, ${s.A.lang.round(i)}, ${s.A.lang.round(n)})`:`rgb(${s.A.lang.round(e)}, ${s.A.lang.round(r)}, ${s.A.lang.round(i)})`}},p=d,f={format:{keyword:c,hex:a,rgb:d,rgba:d,hsl:l,hsla:l},parse:t=>{if("string"!=typeof t)return t;const e=a.parse(t)||p.parse(t)||h.parse(t)||u.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},stringify:t=>!t.changed&&t.color?t.color:t.type.is(n.Z.HSL)||void 0===t.data.r?h.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?p.stringify(t):a.stringify(t)},g=f},3122:(t,e,r)=>{"use strict";r.d(e,{Y:()=>n,Z:()=>o});var i=r(6309);const n={};for(let t=0;t<=255;t++)n[t]=i.A.unit.dec2hex(t);const o={ALL:0,RGB:1,HSL:2}},5635:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(6309),n=r(1931);const o=(t,e,r)=>{const o=n.A.parse(t),a=o[e],s=i.A.channel.clamp[e](a+r);return a!==s&&(o[e]=s),n.A.stringify(o)}},8232:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(6309),n=r(1931);const o=(t,e)=>{const r=n.A.parse(t);for(const t in e)r[t]=i.A.channel.clamp[t](e[t]);return n.A.stringify(r)}},5263:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(5635);const n=(t,e)=>(0,i.A)(t,"l",-e)},5097:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(6309),n=r(1931);const o=t=>(t=>{const{r:e,g:r,b:o}=n.A.parse(t),a=.2126*i.A.channel.toLinear(e)+.7152*i.A.channel.toLinear(r)+.0722*i.A.channel.toLinear(o);return i.A.lang.round(a)})(t)>=.5,a=t=>!o(t)},8041:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(5635);const n=(t,e)=>(0,i.A)(t,"l",e)},5582:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(6309),n=r(7266),o=r(1931),a=r(8232);const s=(t,e,r=0,s=1)=>{if("number"!=typeof t)return(0,a.A)(t,{a:e});const l=n.A.set({r:i.A.channel.clamp.r(t),g:i.A.channel.clamp.g(e),b:i.A.channel.clamp.b(r),a:i.A.channel.clamp.a(s)});return o.A.stringify(l)}},6309:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});const i={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:t=>t>=255?255:t<0?0:t,g:t=>t>=255?255:t<0?0:t,b:t=>t>=255?255:t<0?0:t,h:t=>t%360,s:t=>t>=100?100:t<0?0:t,l:t=>t>=100?100:t<0?0:t,a:t=>t>=1?1:t<0?0:t},toLinear:t=>{const e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},hue2rgb:(t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+6*(e-t)*r:r<.5?e:r<2/3?t+(e-t)*(2/3-r)*6:t),hsl2rgb:({h:t,s:e,l:r},n)=>{if(!e)return 2.55*r;t/=360,e/=100;const o=(r/=100)<.5?r*(1+e):r+e-r*e,a=2*r-o;switch(n){case"r":return 255*i.hue2rgb(a,o,t+1/3);case"g":return 255*i.hue2rgb(a,o,t);case"b":return 255*i.hue2rgb(a,o,t-1/3)}},rgb2hsl:({r:t,g:e,b:r},i)=>{t/=255,e/=255,r/=255;const n=Math.max(t,e,r),o=Math.min(t,e,r),a=(n+o)/2;if("l"===i)return 100*a;if(n===o)return 0;const s=n-o;if("s"===i)return 100*(a>.5?s/(2-n-o):s/(n+o));switch(n){case t:return 60*((e-r)/s+(ee>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),round:t=>Math.round(1e10*t)/1e10},unit:{dec2hex:t=>{const e=Math.round(t).toString(16);return e.length>1?e:`0${e}`}}}},9469:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(6984);const n=function(t,e){for(var r=t.length;r--;)if((0,i.A)(t[r][0],e))return r;return-1};var o=Array.prototype.splice;function a(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e-1},a.prototype.set=function(t,e){var r=this.__data__,i=n(r,t);return i<0?(++this.size,r.push([t,e])):r[i][1]=e,this};const s=a},8335:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(8562),n=r(1917);const o=(0,i.A)(n.A,"Map")},2050:(t,e,r)=>{"use strict";r.d(e,{A:()=>d});const i=(0,r(8562).A)(Object,"create");var n=Object.prototype.hasOwnProperty;var o=Object.prototype.hasOwnProperty;function a(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e{"use strict";r.d(e,{A:()=>o});var i=r(8562),n=r(1917);const o=(0,i.A)(n.A,"Set")},2080:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(9469);var n=r(8335),o=r(2050);function a(t){var e=this.__data__=new i.A(t);this.size=e.size}a.prototype.clear=function(){this.__data__=new i.A,this.size=0},a.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},a.prototype.get=function(t){return this.__data__.get(t)},a.prototype.has=function(t){return this.__data__.has(t)},a.prototype.set=function(t,e){var r=this.__data__;if(r instanceof i.A){var a=r.__data__;if(!n.A||a.length<199)return a.push([t,e]),this.size=++r.size,this;r=this.__data__=new o.A(a)}return r.set(t,e),this.size=r.size,this};const s=a},241:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=r(1917).A.Symbol},3988:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=r(1917).A.Uint8Array},2505:(t,e,r)=>{"use strict";r.d(e,{A:()=>h});var i=r(5175),n=r(2049),o=r(1200),a=r(5353),s=r(4749),l=Object.prototype.hasOwnProperty;const h=function(t,e){var r=(0,n.A)(t),h=!r&&(0,i.A)(t),c=!r&&!h&&(0,o.A)(t),u=!r&&!h&&!c&&(0,s.A)(t),d=r||h||c||u,p=d?function(t,e){for(var r=-1,i=Array(t);++r{"use strict";r.d(e,{A:()=>a});var i=r(2528),n=r(6984),o=Object.prototype.hasOwnProperty;const a=function(t,e,r){var a=t[e];o.call(t,e)&&(0,n.A)(a,r)&&(void 0!==r||e in t)||(0,i.A)(t,e,r)}},2528:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(4171);const n=function(t,e,r){"__proto__"==e&&i.A?(0,i.A)(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}},7132:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e,r){for(var i=-1,n=Object(t),o=r(t),a=o.length;a--;){var s=o[++i];if(!1===e(n[s],s,n))break}return t}},2383:(t,e,r)=>{"use strict";r.d(e,{A:()=>c});var i=r(241),n=Object.prototype,o=n.hasOwnProperty,a=n.toString,s=i.A?i.A.toStringTag:void 0;var l=Object.prototype.toString;var h=i.A?i.A.toStringTag:void 0;const c=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":h&&h in Object(t)?function(t){var e=o.call(t,s),r=t[s];try{t[s]=void 0;var i=!0}catch(t){}var n=a.call(t);return i&&(e?t[s]=r:delete t[s]),n}(t):function(t){return l.call(t)}(t)}},4453:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(7271);const n=(0,r(367).A)(Object.keys,Object);var o=Object.prototype.hasOwnProperty;const a=function(t){if(!(0,i.A)(t))return n(t);var e=[];for(var r in Object(t))o.call(t,r)&&"constructor"!=r&&e.push(r);return e}},4326:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(9008),n=r(5255),o=r(7424);const a=function(t,e){return(0,o.A)((0,n.A)(t,e,i.A),t+"")}},2789:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return function(e){return t(e)}}},565:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(3988);const n=function(t){var e=new t.constructor(t.byteLength);return new i.A(e).set(new i.A(t)),e}},154:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(1917),n="object"==typeof exports&&exports&&!exports.nodeType&&exports,o=n&&"object"==typeof module&&module&&!module.nodeType&&module,a=o&&o.exports===n?i.A.Buffer:void 0,s=a?a.allocUnsafe:void 0;const l=function(t,e){if(e)return t.slice();var r=t.length,i=s?s(r):new t.constructor(r);return t.copy(i),i}},1801:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(565);const n=function(t,e){var r=e?(0,i.A)(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}},9759:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e){var r=-1,i=t.length;for(e||(e=Array(i));++r{"use strict";r.d(e,{A:()=>o});var i=r(2851),n=r(2528);const o=function(t,e,r,o){var a=!r;r||(r={});for(var s=-1,l=e.length;++s{"use strict";r.d(e,{A:()=>o});var i=r(4326),n=r(6832);const o=function(t){return(0,i.A)((function(e,r){var i=-1,o=r.length,a=o>1?r[o-1]:void 0,s=o>2?r[2]:void 0;for(a=t.length>3&&"function"==typeof a?(o--,a):void 0,s&&(0,n.A)(r[0],r[1],s)&&(a=o<3?void 0:a,o=1),e=Object(e);++i{"use strict";r.d(e,{A:()=>n});var i=r(8562);const n=function(){try{var t=(0,i.A)(Object,"defineProperty");return t({},"",{}),t}catch(t){}}()},2136:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i="object"==typeof global&&global&&global.Object===Object&&global},8562:(t,e,r)=>{"use strict";r.d(e,{A:()=>y});var i=r(9610);const n=r(1917).A["__core-js_shared__"];var o,a=(o=/[^.]+$/.exec(n&&n.keys&&n.keys.IE_PROTO||""))?"Symbol(src)_1."+o:"";var s=r(3149),l=r(1121),h=/^\[object .+?Constructor\]$/,c=Function.prototype,u=Object.prototype,d=c.toString,p=u.hasOwnProperty,f=RegExp("^"+d.call(p).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const g=function(t){return!(!(0,s.A)(t)||(e=t,a&&a in e))&&((0,i.A)(t)?f:h).test((0,l.A)(t));var e},y=function(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return g(r)?r:void 0}},5647:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=(0,r(367).A)(Object.getPrototypeOf,Object)},9137:(t,e,r)=>{"use strict";r.d(e,{A:()=>_});var i=r(8562),n=r(1917);const o=(0,i.A)(n.A,"DataView");var a=r(8335);const s=(0,i.A)(n.A,"Promise");var l=r(9857);const h=(0,i.A)(n.A,"WeakMap");var c=r(2383),u=r(1121),d="[object Map]",p="[object Promise]",f="[object Set]",g="[object WeakMap]",y="[object DataView]",m=(0,u.A)(o),x=(0,u.A)(a.A),b=(0,u.A)(s),k=(0,u.A)(l.A),C=(0,u.A)(h),w=c.A;(o&&w(new o(new ArrayBuffer(1)))!=y||a.A&&w(new a.A)!=d||s&&w(s.resolve())!=p||l.A&&w(new l.A)!=f||h&&w(new h)!=g)&&(w=function(t){var e=(0,c.A)(t),r="[object Object]"==e?t.constructor:void 0,i=r?(0,u.A)(r):"";if(i)switch(i){case m:return y;case x:return d;case b:return p;case k:return f;case C:return g}return e});const _=w},407:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(3149),n=Object.create;const o=function(){function t(){}return function(e){if(!(0,i.A)(e))return{};if(n)return n(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();var a=r(5647),s=r(7271);const l=function(t){return"function"!=typeof t.constructor||(0,s.A)(t)?{}:o((0,a.A)(t))}},5353:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=/^(?:0|[1-9]\d*)$/;const n=function(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&i.test(t))&&t>-1&&t%1==0&&t{"use strict";r.d(e,{A:()=>s});var i=r(6984),n=r(8446),o=r(5353),a=r(3149);const s=function(t,e,r){if(!(0,a.A)(r))return!1;var s=typeof e;return!!("number"==s?(0,n.A)(r)&&(0,o.A)(e,r.length):"string"==s&&e in r)&&(0,i.A)(r[e],t)}},7271:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=Object.prototype;const n=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||i)}},4841:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(2136),n="object"==typeof exports&&exports&&!exports.nodeType&&exports,o=n&&"object"==typeof module&&module&&!module.nodeType&&module,a=o&&o.exports===n&&i.A.process;const s=function(){try{return o&&o.require&&o.require("util").types||a&&a.binding&&a.binding("util")}catch(t){}}()},367:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e){return function(r){return t(e(r))}}},5255:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=Math.max;const n=function(t,e,r){return e=i(void 0===e?t.length-1:e,0),function(){for(var n=arguments,o=-1,a=i(n.length-e,0),s=Array(a);++o{"use strict";r.d(e,{A:()=>o});var i=r(2136),n="object"==typeof self&&self&&self.Object===Object&&self;const o=i.A||n||Function("return this")()},7424:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(9142),n=r(4171),o=r(9008);const a=n.A?function(t,e){return(0,n.A)(t,"toString",{configurable:!0,enumerable:!1,value:(0,i.A)(e),writable:!0})}:o.A;var s=Date.now;const l=(h=a,c=0,u=0,function(){var t=s(),e=16-(t-u);if(u=t,e>0){if(++c>=800)return arguments[0]}else c=0;return h.apply(void 0,arguments)});var h,c,u},1121:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=Function.prototype.toString;const n=function(t){if(null!=t){try{return i.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},9142:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return function(){return t}}},6984:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e){return t===e||t!=t&&e!=e}},9008:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return t}},5175:(t,e,r)=>{"use strict";r.d(e,{A:()=>h});var i=r(2383),n=r(3098);const o=function(t){return(0,n.A)(t)&&"[object Arguments]"==(0,i.A)(t)};var a=Object.prototype,s=a.hasOwnProperty,l=a.propertyIsEnumerable;const h=o(function(){return arguments}())?o:function(t){return(0,n.A)(t)&&s.call(t,"callee")&&!l.call(t,"callee")}},2049:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=Array.isArray},8446:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(9610),n=r(5254);const o=function(t){return null!=t&&(0,n.A)(t.length)&&!(0,i.A)(t)}},3533:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(8446),n=r(3098);const o=function(t){return(0,n.A)(t)&&(0,i.A)(t)}},1200:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(1917);var n="object"==typeof exports&&exports&&!exports.nodeType&&exports,o=n&&"object"==typeof module&&module&&!module.nodeType&&module,a=o&&o.exports===n?i.A.Buffer:void 0;const s=(a?a.isBuffer:void 0)||function(){return!1}},6401:(t,e,r)=>{"use strict";r.d(e,{A:()=>d});var i=r(4453),n=r(9137),o=r(5175),a=r(2049),s=r(8446),l=r(1200),h=r(7271),c=r(4749),u=Object.prototype.hasOwnProperty;const d=function(t){if(null==t)return!0;if((0,s.A)(t)&&((0,a.A)(t)||"string"==typeof t||"function"==typeof t.splice||(0,l.A)(t)||(0,c.A)(t)||(0,o.A)(t)))return!t.length;var e=(0,n.A)(t);if("[object Map]"==e||"[object Set]"==e)return!t.size;if((0,h.A)(t))return!(0,i.A)(t).length;for(var r in t)if(u.call(t,r))return!1;return!0}},9610:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(2383),n=r(3149);const o=function(t){if(!(0,n.A)(t))return!1;var e=(0,i.A)(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},5254:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},3149:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},3098:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return null!=t&&"object"==typeof t}},4749:(t,e,r)=>{"use strict";r.d(e,{A:()=>c});var i=r(2383),n=r(5254),o=r(3098),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1;var s=r(2789),l=r(4841),h=l.A&&l.A.isTypedArray;const c=h?(0,s.A)(h):function(t){return(0,o.A)(t)&&(0,n.A)(t.length)&&!!a[(0,i.A)(t)]}},9999:(t,e,r)=>{"use strict";r.d(e,{A:()=>h});var i=r(2505),n=r(3149),o=r(7271);var a=Object.prototype.hasOwnProperty;const s=function(t){if(!(0,n.A)(t))return function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}(t);var e=(0,o.A)(t),r=[];for(var i in t)("constructor"!=i||!e&&a.call(t,i))&&r.push(i);return r};var l=r(8446);const h=function(t){return(0,l.A)(t)?(0,i.A)(t,!0):s(t)}},6632:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(2050);function n(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var r=function(){var i=arguments,n=e?e.apply(this,i):i[0],o=r.cache;if(o.has(n))return o.get(n);var a=t.apply(this,i);return r.cache=o.set(n,a)||o,a};return r.cache=new(n.Cache||i.A),r}n.Cache=i.A;const o=n},7222:(t,e,r)=>{"use strict";r.d(e,{A:()=>$});var i=r(2080),n=r(2528),o=r(6984);const a=function(t,e,r){(void 0!==r&&!(0,o.A)(t[e],r)||void 0===r&&!(e in t))&&(0,n.A)(t,e,r)};var s=r(7132),l=r(154),h=r(1801),c=r(9759),u=r(407),d=r(5175),p=r(2049),f=r(3533),g=r(1200),y=r(9610),m=r(3149),x=r(2383),b=r(5647),k=r(3098),C=Function.prototype,w=Object.prototype,_=C.toString,v=w.hasOwnProperty,S=_.call(Object);var T=r(4749);const A=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]};var M=r(2031),B=r(9999);const L=function(t,e,r,i,n,o,s){var C,w=A(t,r),L=A(e,r),F=s.get(L);if(F)a(t,r,F);else{var $=o?o(w,L,r+"",t,e,s):void 0,E=void 0===$;if(E){var D=(0,p.A)(L),O=!D&&(0,g.A)(L),I=!D&&!O&&(0,T.A)(L);$=L,D||O||I?(0,p.A)(w)?$=w:(0,f.A)(w)?$=(0,c.A)(w):O?(E=!1,$=(0,l.A)(L,!0)):I?(E=!1,$=(0,h.A)(L,!0)):$=[]:function(t){if(!(0,k.A)(t)||"[object Object]"!=(0,x.A)(t))return!1;var e=(0,b.A)(t);if(null===e)return!0;var r=v.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&_.call(r)==S}(L)||(0,d.A)(L)?($=w,(0,d.A)(w)?(C=w,$=(0,M.A)(C,(0,B.A)(C))):(0,m.A)(w)&&!(0,y.A)(w)||($=(0,u.A)(L))):E=!1}E&&(s.set(L,$),n($,L,i,o,s),s.delete(L)),a(t,r,$)}},F=function t(e,r,n,o,l){e!==r&&(0,s.A)(r,(function(s,h){if(l||(l=new i.A),(0,m.A)(s))L(e,r,h,n,t,o,l);else{var c=o?o(A(e,h),s,h+"",e,r,l):void 0;void 0===c&&(c=s),a(e,h,c)}}),B.A)},$=(0,r(3767).A)((function(t,e,r){F(t,e,r)}))},8568:(t,e,r)=>{"use strict";r.d(e,{WY:()=>S,pC:()=>_,Gc:()=>k});var i=r(32);const n=/^[a-z0-9]+(-[a-z0-9]+)*$/,o=(t,e)=>!!t&&!(""!==t.provider&&!t.provider.match(n)||!(e&&""===t.prefix||t.prefix.match(n))||!t.name.match(n)),a=Object.freeze({left:0,top:0,width:16,height:16}),s=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),l=Object.freeze({...a,...s}),h=Object.freeze({...l,body:"",hidden:!1});function c(t,e){const r=function(t,e){const r={};!t.hFlip!=!e.hFlip&&(r.hFlip=!0),!t.vFlip!=!e.vFlip&&(r.vFlip=!0);const i=((t.rotate||0)+(e.rotate||0))%4;return i&&(r.rotate=i),r}(t,e);for(const i in h)i in s?i in t&&!(i in r)&&(r[i]=s[i]):i in e?r[i]=e[i]:i in t&&(r[i]=t[i]);return r}function u(t,e,r){const i=t.icons,n=t.aliases||Object.create(null);let o={};function a(t){o=c(i[t]||n[t],o)}return a(e),r.forEach(a),c(t,o)}const d=Object.freeze({width:null,height:null}),p=Object.freeze({...d,...s}),f=/(-?[0-9.]*[0-9]+[0-9.]*)/g,g=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function y(t,e,r){if(1===e)return t;if(r=r||100,"number"==typeof t)return Math.ceil(t*e*r)/r;if("string"!=typeof t)return t;const i=t.split(f);if(null===i||!i.length)return t;const n=[];let o=i.shift(),a=g.test(o);for(;;){if(a){const t=parseFloat(o);isNaN(t)?n.push(o):n.push(Math.ceil(t*e*r)/r)}else n.push(o);if(o=i.shift(),void 0===o)return n.join("");a=!a}}const m=/\sid="(\S+)"/g,x="IconifyId"+Date.now().toString(16)+(16777216*Math.random()|0).toString(16);let b=0;var k={body:'?',height:80,width:80},C=new Map,w=new Map,_=(0,i.K2)((t=>{for(const e of t){if(!e.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(i.Rm.debug("Registering icon pack:",e.name),"loader"in e)w.set(e.name,e.loader);else{if(!("icons"in e))throw i.Rm.error("Invalid icon loader:",e),new Error('Invalid icon loader. Must have either "icons" or "loader" property.');C.set(e.name,e.icons)}}}),"registerIconPacks"),v=(0,i.K2)((async(t,e)=>{const r=((t,e,r,i="")=>{const n=t.split(":");if("@"===t.slice(0,1)){if(n.length<2||n.length>3)return null;i=n.shift().slice(1)}if(n.length>3||!n.length)return null;if(n.length>1){const t=n.pop(),r=n.pop(),a={provider:n.length>0?n[0]:i,prefix:r,name:t};return e&&!o(a)?null:a}const a=n[0],s=a.split("-");if(s.length>1){const t={provider:i,prefix:s.shift(),name:s.join("-")};return e&&!o(t)?null:t}if(r&&""===i){const t={provider:i,prefix:"",name:a};return e&&!o(t,r)?null:t}return null})(t,!0,void 0!==e);if(!r)throw new Error(`Invalid icon name: ${t}`);const n=r.prefix||e;if(!n)throw new Error(`Icon name must contain a prefix: ${t}`);let a=C.get(n);if(!a){const t=w.get(n);if(!t)throw new Error(`Icon set not found: ${r.prefix}`);try{a={...await t(),prefix:n},C.set(n,a)}catch(t){throw i.Rm.error(t),new Error(`Failed to load icon set: ${r.prefix}`)}}const s=function(t,e){if(t.icons[e])return u(t,e,[]);const r=function(t,e){const r=t.icons,i=t.aliases||Object.create(null),n=Object.create(null);return(e||Object.keys(r).concat(Object.keys(i))).forEach((function t(e){if(r[e])return n[e]=[];if(!(e in n)){n[e]=null;const r=i[e]&&i[e].parent,o=r&&t(r);o&&(n[e]=[r].concat(o))}return n[e]})),n}(t,[e])[e];return r?u(t,e,r):null}(a,r.name);if(!s)throw new Error(`Icon not found: ${t}`);return s}),"getRegisteredIconData"),S=(0,i.K2)((async(t,e)=>{let r;try{r=await v(t,e?.fallbackPrefix)}catch(t){i.Rm.error(t),r=k}const n=function(t,e){const r={...l,...t},i={...p,...e},n={left:r.left,top:r.top,width:r.width,height:r.height};let o=r.body;[r,i].forEach((t=>{const e=[],r=t.hFlip,i=t.vFlip;let a,s=t.rotate;switch(r?i?s+=2:(e.push("translate("+(n.width+n.left).toString()+" "+(0-n.top).toString()+")"),e.push("scale(-1 1)"),n.top=n.left=0):i&&(e.push("translate("+(0-n.left).toString()+" "+(n.height+n.top).toString()+")"),e.push("scale(1 -1)"),n.top=n.left=0),s<0&&(s-=4*Math.floor(s/4)),s%=4,s){case 1:a=n.height/2+n.top,e.unshift("rotate(90 "+a.toString()+" "+a.toString()+")");break;case 2:e.unshift("rotate(180 "+(n.width/2+n.left).toString()+" "+(n.height/2+n.top).toString()+")");break;case 3:a=n.width/2+n.left,e.unshift("rotate(-90 "+a.toString()+" "+a.toString()+")")}s%2==1&&(n.left!==n.top&&(a=n.left,n.left=n.top,n.top=a),n.width!==n.height&&(a=n.width,n.width=n.height,n.height=a)),e.length&&(o=function(t,e){const r=function(t,e="defs"){let r="";const i=t.indexOf("<"+e);for(;i>=0;){const n=t.indexOf(">",i),o=t.indexOf("",o);if(-1===a)break;r+=t.slice(n+1,o).trim(),t=t.slice(0,i).trim()+t.slice(a+1)}return{defs:r,content:t}}(t);return i=r.defs,n=e+r.content+"",i?""+i+""+n:n;var i,n}(o,''))}));const a=i.width,s=i.height,h=n.width,c=n.height;let u,d;null===a?(d=null===s?"1em":"auto"===s?c:s,u=y(d,h/c)):(u="auto"===a?h:a,d=null===s?y(u,c/h):"auto"===s?c:s);const f={},g=(t,e)=>{(t=>"unset"===t||"undefined"===t||"none"===t)(e)||(f[t]=e.toString())};g("width",u),g("height",d);const m=[n.left,n.top,h,c];return f.viewBox=m.join(" "),{attributes:f,viewBox:m,body:o}}(r,e);return function(t,e){let r=-1===t.indexOf("xlink:")?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const t in e)r+=" "+t+'="'+e[t]+'"';return'"+t+""}(function(t,e=x){const r=[];let i;for(;i=m.exec(t);)r.push(i[1]);if(!r.length)return t;const n="suffix"+(16777216*Math.random()|Date.now()).toString(16);return r.forEach((r=>{const i="function"==typeof e?e(r):e+(b++).toString(),o=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");t=t.replace(new RegExp('([#;"])('+o+')([")]|\\.[a-z])',"g"),"$1"+i+n+"$3")})),t=t.replace(new RegExp(n,"g"),"")}(n.body),n.attributes)}),"getIconSVG")},1132:(t,e,r)=>{"use strict";r.d(e,{r:()=>i});var i="11.3.0"},7750:(t,e,r)=>{"use strict";r.d(e,{O:()=>n,R:()=>l});var i=r(32),n=(0,i.K2)((({flowchart:t})=>{const e=t?.subGraphTitleMargin?.top??0,r=t?.subGraphTitleMargin?.bottom??0;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:e+r}}),"getSubGraphTitleMargins"),o={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:4};function a(t,e){if(void 0===t||void 0===e)return{angle:0,deltaX:0,deltaY:0};t=s(t),e=s(e);const[r,i]=[t.x,t.y],[n,o]=[e.x,e.y],a=n-r,l=o-i;return{angle:Math.atan(l/a),deltaX:a,deltaY:l}}(0,i.K2)(a,"calculateDeltaAndAngle");var s=(0,i.K2)((t=>Array.isArray(t)?{x:t[0],y:t[1]}:t),"pointTransformer"),l=(0,i.K2)((t=>({x:(0,i.K2)((function(e,r,i){let n=0;if(0===r&&Object.hasOwn(o,t.arrowTypeStart)){const{angle:e,deltaX:r}=a(i[0],i[1]);n=o[t.arrowTypeStart]*Math.cos(e)*(r>=0?1:-1)}else if(r===i.length-1&&Object.hasOwn(o,t.arrowTypeEnd)){const{angle:e,deltaX:r}=a(i[i.length-1],i[i.length-2]);n=o[t.arrowTypeEnd]*Math.cos(e)*(r>=0?1:-1)}return s(e).x+n}),"x"),y:(0,i.K2)((function(e,r,i){let n=0;if(0===r&&Object.hasOwn(o,t.arrowTypeStart)){const{angle:e,deltaY:r}=a(i[0],i[1]);n=o[t.arrowTypeStart]*Math.abs(Math.sin(e))*(r>=0?1:-1)}else if(r===i.length-1&&Object.hasOwn(o,t.arrowTypeEnd)){const{angle:e,deltaY:r}=a(i[i.length-1],i[i.length-2]);n=o[t.arrowTypeEnd]*Math.abs(Math.sin(e))*(r>=0?1:-1)}return s(e).y+n}),"y")})),"getLineFunctionsWithOffset")},1417:(t,e,r)=>{"use strict";r.d(e,{H:()=>zr,r:()=>Pr});var i=r(32);function n(t){return null==t}function o(t){return"object"==typeof t&&null!==t}function a(t){return Array.isArray(t)?t:n(t)?[]:[t]}function s(t,e){var r,i,n,o;if(e)for(r=0,i=(o=Object.keys(e)).length;rs&&(e=i-s+(o=" ... ").length),r-i>s&&(r=i+s-(a=" ...").length),{str:o+t.slice(e,r).replace(/\t/g,"→")+a,pos:i-e+o.length}}function g(t,e){return c.repeat(" ",e-t.length)+t}function y(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),"number"!=typeof e.indent&&(e.indent=1),"number"!=typeof e.linesBefore&&(e.linesBefore=3),"number"!=typeof e.linesAfter&&(e.linesAfter=2);for(var r,i=/\r?\n|\r|\0/g,n=[0],o=[],a=-1;r=i.exec(t.buffer);)o.push(r.index),n.push(r.index+r[0].length),t.position<=r.index&&a<0&&(a=n.length-2);a<0&&(a=n.length-1);var s,l,h="",u=Math.min(t.line+e.linesAfter,o.length).toString().length,d=e.maxLength-(e.indent+u+3);for(s=1;s<=e.linesBefore&&!(a-s<0);s++)l=f(t.buffer,n[a-s],o[a-s],t.position-(n[a]-n[a-s]),d),h=c.repeat(" ",e.indent)+g((t.line-s+1).toString(),u)+" | "+l.str+"\n"+h;for(l=f(t.buffer,n[a],o[a],t.position,d),h+=c.repeat(" ",e.indent)+g((t.line+1).toString(),u)+" | "+l.str+"\n",h+=c.repeat("-",e.indent+u+3+l.pos)+"^\n",s=1;s<=e.linesAfter&&!(a+s>=o.length);s++)l=f(t.buffer,n[a+s],o[a+s],t.position-(n[a]-n[a+s]),d),h+=c.repeat(" ",e.indent)+g((t.line+s+1).toString(),u)+" | "+l.str+"\n";return h.replace(/\n$/,"")}(0,i.K2)(f,"getLine"),(0,i.K2)(g,"padStart"),(0,i.K2)(y,"makeSnippet");var m=y,x=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],b=["scalar","sequence","mapping"];function k(t){var e={};return null!==t&&Object.keys(t).forEach((function(r){t[r].forEach((function(t){e[String(t)]=r}))})),e}function C(t,e){if(e=e||{},Object.keys(e).forEach((function(e){if(-1===x.indexOf(e))throw new p('Unknown option "'+e+'" is met in definition of "'+t+'" YAML type.')})),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=k(e.styleAliases||null),-1===b.indexOf(this.kind))throw new p('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}(0,i.K2)(k,"compileStyleAliases"),(0,i.K2)(C,"Type$1");var w=C;function _(t,e){var r=[];return t[e].forEach((function(t){var e=r.length;r.forEach((function(r,i){r.tag===t.tag&&r.kind===t.kind&&r.multi===t.multi&&(e=i)})),r[e]=t})),r}function v(){var t,e,r={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}};function n(t){t.multi?(r.multi[t.kind].push(t),r.multi.fallback.push(t)):r[t.kind][t.tag]=r.fallback[t.tag]=t}for((0,i.K2)(n,"collectType"),t=0,e=arguments.length;t=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)}),"binary"),octal:(0,i.K2)((function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)}),"octal"),decimal:(0,i.K2)((function(t){return t.toString(10)}),"decimal"),hexadecimal:(0,i.K2)((function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}),"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),N=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function j(t){return null!==t&&!(!N.test(t)||"_"===t[t.length-1])}function W(t){var e,r;return r="-"===(e=t.replace(/_/g,"").toLowerCase())[0]?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),".inf"===e?1===r?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===e?NaN:r*parseFloat(e,10)}(0,i.K2)(j,"resolveYamlFloat"),(0,i.K2)(W,"constructYamlFloat");var U=/^[-+]?[0-9]+e/;function H(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(c.isNegativeZero(t))return"-0.0";return r=t.toString(10),U.test(r)?r.replace("e",".e"):r}function Y(t){return"[object Number]"===Object.prototype.toString.call(t)&&(t%1!=0||c.isNegativeZero(t))}(0,i.K2)(H,"representYamlFloat"),(0,i.K2)(Y,"isFloat");var G=new w("tag:yaml.org,2002:float",{kind:"scalar",resolve:j,construct:W,predicate:Y,represent:H,defaultStyle:"lowercase"}),V=T.extend({implicit:[L,D,q,G]}),Z=V,X=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Q=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function J(t){return null!==t&&(null!==X.exec(t)||null!==Q.exec(t))}function tt(t){var e,r,i,n,o,a,s,l,h=0,c=null;if(null===(e=X.exec(t))&&(e=Q.exec(t)),null===e)throw new Error("Date resolve error");if(r=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(r,i,n));if(o=+e[4],a=+e[5],s=+e[6],e[7]){for(h=e[7].slice(0,3);h.length<3;)h+="0";h=+h}return e[9]&&(c=6e4*(60*+e[10]+ +(e[11]||0)),"-"===e[9]&&(c=-c)),l=new Date(Date.UTC(r,i,n,o,a,s,h)),c&&l.setTime(l.getTime()-c),l}function et(t){return t.toISOString()}(0,i.K2)(J,"resolveYamlTimestamp"),(0,i.K2)(tt,"constructYamlTimestamp"),(0,i.K2)(et,"representYamlTimestamp");var rt=new w("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:J,construct:tt,instanceOf:Date,represent:et});function it(t){return"<<"===t||null===t}(0,i.K2)(it,"resolveYamlMerge");var nt=new w("tag:yaml.org,2002:merge",{kind:"scalar",resolve:it}),ot="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r";function at(t){if(null===t)return!1;var e,r,i=0,n=t.length,o=ot;for(r=0;r64)){if(e<0)return!1;i+=6}return i%8==0}function st(t){var e,r,i=t.replace(/[\r\n=]/g,""),n=i.length,o=ot,a=0,s=[];for(e=0;e>16&255),s.push(a>>8&255),s.push(255&a)),a=a<<6|o.indexOf(i.charAt(e));return 0==(r=n%4*6)?(s.push(a>>16&255),s.push(a>>8&255),s.push(255&a)):18===r?(s.push(a>>10&255),s.push(a>>2&255)):12===r&&s.push(a>>4&255),new Uint8Array(s)}function lt(t){var e,r,i="",n=0,o=t.length,a=ot;for(e=0;e>18&63],i+=a[n>>12&63],i+=a[n>>6&63],i+=a[63&n]),n=(n<<8)+t[e];return 0==(r=o%3)?(i+=a[n>>18&63],i+=a[n>>12&63],i+=a[n>>6&63],i+=a[63&n]):2===r?(i+=a[n>>10&63],i+=a[n>>4&63],i+=a[n<<2&63],i+=a[64]):1===r&&(i+=a[n>>2&63],i+=a[n<<4&63],i+=a[64],i+=a[64]),i}function ht(t){return"[object Uint8Array]"===Object.prototype.toString.call(t)}(0,i.K2)(at,"resolveYamlBinary"),(0,i.K2)(st,"constructYamlBinary"),(0,i.K2)(lt,"representYamlBinary"),(0,i.K2)(ht,"isBinary");var ct=new w("tag:yaml.org,2002:binary",{kind:"scalar",resolve:at,construct:st,predicate:ht,represent:lt}),ut=Object.prototype.hasOwnProperty,dt=Object.prototype.toString;function pt(t){if(null===t)return!0;var e,r,i,n,o,a=[],s=t;for(e=0,r=s.length;e>10),56320+(t-65536&1023))}(0,i.K2)(Pt,"_class"),(0,i.K2)(zt,"is_EOL"),(0,i.K2)(Kt,"is_WHITE_SPACE"),(0,i.K2)(qt,"is_WS_OR_EOL"),(0,i.K2)(Nt,"is_FLOW_INDICATOR"),(0,i.K2)(jt,"fromHexCode"),(0,i.K2)(Wt,"escapedHexLen"),(0,i.K2)(Ut,"fromDecimalCode"),(0,i.K2)(Ht,"simpleEscapeSequence"),(0,i.K2)(Yt,"charFromCodepoint");var Gt,Vt=new Array(256),Zt=new Array(256);for(Gt=0;Gt<256;Gt++)Vt[Gt]=Ht(Gt)?1:0,Zt[Gt]=Ht(Gt);function Xt(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||vt,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Qt(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=m(r),new p(e,r)}function Jt(t,e){throw Qt(t,e)}function te(t,e){t.onWarning&&t.onWarning.call(null,Qt(t,e))}(0,i.K2)(Xt,"State$1"),(0,i.K2)(Qt,"generateError"),(0,i.K2)(Jt,"throwError"),(0,i.K2)(te,"throwWarning");var ee={YAML:(0,i.K2)((function(t,e,r){var i,n,o;null!==t.version&&Jt(t,"duplication of %YAML directive"),1!==r.length&&Jt(t,"YAML directive accepts exactly one argument"),null===(i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]))&&Jt(t,"ill-formed argument of the YAML directive"),n=parseInt(i[1],10),o=parseInt(i[2],10),1!==n&&Jt(t,"unacceptable YAML version of the document"),t.version=r[0],t.checkLineBreaks=o<2,1!==o&&2!==o&&te(t,"unsupported YAML version of the document")}),"handleYamlDirective"),TAG:(0,i.K2)((function(t,e,r){var i,n;2!==r.length&&Jt(t,"TAG directive accepts exactly two arguments"),i=r[0],n=r[1],It.test(i)||Jt(t,"ill-formed tag handle (first argument) of the TAG directive"),St.call(t.tagMap,i)&&Jt(t,'there is a previously declared suffix for "'+i+'" tag handle'),Rt.test(n)||Jt(t,"ill-formed tag prefix (second argument) of the TAG directive");try{n=decodeURIComponent(n)}catch(e){Jt(t,"tag prefix is malformed: "+n)}t.tagMap[i]=n}),"handleTagDirective")};function re(t,e,r,i){var n,o,a,s;if(e1&&(t.result+=c.repeat("\n",e-1))}function he(t,e,r){var i,n,o,a,s,l,h,c,u=t.kind,d=t.result;if(qt(c=t.input.charCodeAt(t.position))||Nt(c)||35===c||38===c||42===c||33===c||124===c||62===c||39===c||34===c||37===c||64===c||96===c)return!1;if((63===c||45===c)&&(qt(i=t.input.charCodeAt(t.position+1))||r&&Nt(i)))return!1;for(t.kind="scalar",t.result="",n=o=t.position,a=!1;0!==c;){if(58===c){if(qt(i=t.input.charCodeAt(t.position+1))||r&&Nt(i))break}else if(35===c){if(qt(t.input.charCodeAt(t.position-1)))break}else{if(t.position===t.lineStart&&se(t)||r&&Nt(c))break;if(zt(c)){if(s=t.line,l=t.lineStart,h=t.lineIndent,ae(t,!1,-1),t.lineIndent>=e){a=!0,c=t.input.charCodeAt(t.position);continue}t.position=o,t.line=s,t.lineStart=l,t.lineIndent=h;break}}a&&(re(t,n,o,!1),le(t,t.line-s),n=o=t.position,a=!1),Kt(c)||(o=t.position+1),c=t.input.charCodeAt(++t.position)}return re(t,n,o,!1),!!t.result||(t.kind=u,t.result=d,!1)}function ce(t,e){var r,i,n;if(39!==(r=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,i=n=t.position;0!==(r=t.input.charCodeAt(t.position));)if(39===r){if(re(t,i,t.position,!0),39!==(r=t.input.charCodeAt(++t.position)))return!0;i=t.position,t.position++,n=t.position}else zt(r)?(re(t,i,n,!0),le(t,ae(t,!1,e)),i=n=t.position):t.position===t.lineStart&&se(t)?Jt(t,"unexpected end of the document within a single quoted scalar"):(t.position++,n=t.position);Jt(t,"unexpected end of the stream within a single quoted scalar")}function ue(t,e){var r,i,n,o,a,s;if(34!==(s=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,r=i=t.position;0!==(s=t.input.charCodeAt(t.position));){if(34===s)return re(t,r,t.position,!0),t.position++,!0;if(92===s){if(re(t,r,t.position,!0),zt(s=t.input.charCodeAt(++t.position)))ae(t,!1,e);else if(s<256&&Vt[s])t.result+=Zt[s],t.position++;else if((a=Wt(s))>0){for(n=a,o=0;n>0;n--)(a=jt(s=t.input.charCodeAt(++t.position)))>=0?o=(o<<4)+a:Jt(t,"expected hexadecimal character");t.result+=Yt(o),t.position++}else Jt(t,"unknown escape sequence");r=i=t.position}else zt(s)?(re(t,r,i,!0),le(t,ae(t,!1,e)),r=i=t.position):t.position===t.lineStart&&se(t)?Jt(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}Jt(t,"unexpected end of the stream within a double quoted scalar")}function de(t,e){var r,i,n,o,a,s,l,h,c,u,d,p,f=!0,g=t.tag,y=t.anchor,m=Object.create(null);if(91===(p=t.input.charCodeAt(t.position)))a=93,h=!1,o=[];else{if(123!==p)return!1;a=125,h=!0,o={}}for(null!==t.anchor&&(t.anchorMap[t.anchor]=o),p=t.input.charCodeAt(++t.position);0!==p;){if(ae(t,!0,e),(p=t.input.charCodeAt(t.position))===a)return t.position++,t.tag=g,t.anchor=y,t.kind=h?"mapping":"sequence",t.result=o,!0;f?44===p&&Jt(t,"expected the node content, but found ','"):Jt(t,"missed comma between flow collection entries"),d=null,s=l=!1,63===p&&qt(t.input.charCodeAt(t.position+1))&&(s=l=!0,t.position++,ae(t,!0,e)),r=t.line,i=t.lineStart,n=t.position,be(t,e,Tt,!1,!0),u=t.tag,c=t.result,ae(t,!0,e),p=t.input.charCodeAt(t.position),!l&&t.line!==r||58!==p||(s=!0,p=t.input.charCodeAt(++t.position),ae(t,!0,e),be(t,e,Tt,!1,!0),d=t.result),h?ne(t,o,m,u,c,d,r,i,n):s?o.push(ne(t,null,m,u,c,d,r,i,n)):o.push(c),ae(t,!0,e),44===(p=t.input.charCodeAt(t.position))?(f=!0,p=t.input.charCodeAt(++t.position)):f=!1}Jt(t,"unexpected end of the stream within a flow collection")}function pe(t,e){var r,i,n,o,a=Lt,s=!1,l=!1,h=e,u=0,d=!1;if(124===(o=t.input.charCodeAt(t.position)))i=!1;else{if(62!==o)return!1;i=!0}for(t.kind="scalar",t.result="";0!==o;)if(43===(o=t.input.charCodeAt(++t.position))||45===o)Lt===a?a=43===o?$t:Ft:Jt(t,"repeat of a chomping mode identifier");else{if(!((n=Ut(o))>=0))break;0===n?Jt(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Jt(t,"repeat of an indentation width identifier"):(h=e+n-1,l=!0)}if(Kt(o)){do{o=t.input.charCodeAt(++t.position)}while(Kt(o));if(35===o)do{o=t.input.charCodeAt(++t.position)}while(!zt(o)&&0!==o)}for(;0!==o;){for(oe(t),t.lineIndent=0,o=t.input.charCodeAt(t.position);(!l||t.lineIndenth&&(h=t.lineIndent),zt(o))u++;else{if(t.lineIndente)&&0!==i)Jt(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(m&&(a=t.line,s=t.lineStart,l=t.position),be(t,e,Bt,!0,n)&&(m?g=t.result:y=t.result),m||(ne(t,d,p,f,g,y,a,s,l),f=g=y=null),ae(t,!0,-1),h=t.input.charCodeAt(t.position)),(t.line===o||t.lineIndent>e)&&0!==h)Jt(t,"bad indentation of a mapping entry");else if(t.lineIndente?f=1:t.lineIndent===e?f=0:t.lineIndente?f=1:t.lineIndent===e?f=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),l=0,h=t.implicitTypes.length;l"),null!==t.result&&u.kind!==t.kind&&Jt(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+u.kind+'", not "'+t.kind+'"'),u.resolve(t.result,t.tag)?(t.result=u.construct(t.result,t.tag),null!==t.anchor&&(t.anchorMap[t.anchor]=t.result)):Jt(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return null!==t.listener&&t.listener("close",t),null!==t.tag||null!==t.anchor||y}function ke(t){var e,r,i,n,o=t.position,a=!1;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);0!==(n=t.input.charCodeAt(t.position))&&(ae(t,!0,-1),n=t.input.charCodeAt(t.position),!(t.lineIndent>0||37!==n));){for(a=!0,n=t.input.charCodeAt(++t.position),e=t.position;0!==n&&!qt(n);)n=t.input.charCodeAt(++t.position);for(i=[],(r=t.input.slice(e,t.position)).length<1&&Jt(t,"directive name must not be less than one character in length");0!==n;){for(;Kt(n);)n=t.input.charCodeAt(++t.position);if(35===n){do{n=t.input.charCodeAt(++t.position)}while(0!==n&&!zt(n));break}if(zt(n))break;for(e=t.position;0!==n&&!qt(n);)n=t.input.charCodeAt(++t.position);i.push(t.input.slice(e,t.position))}0!==n&&oe(t),St.call(ee,r)?ee[r](t,r,i):te(t,'unknown document directive "'+r+'"')}ae(t,!0,-1),0===t.lineIndent&&45===t.input.charCodeAt(t.position)&&45===t.input.charCodeAt(t.position+1)&&45===t.input.charCodeAt(t.position+2)?(t.position+=3,ae(t,!0,-1)):a&&Jt(t,"directives end mark is expected"),be(t,t.lineIndent-1,Bt,!1,!0),ae(t,!0,-1),t.checkLineBreaks&&Dt.test(t.input.slice(o,t.position))&&te(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&se(t)?46===t.input.charCodeAt(t.position)&&(t.position+=3,ae(t,!0,-1)):t.position=55296&&i<=56319&&e+1=56320&&r<=57343?1024*(i-55296)+r-56320+65536:i}function yr(t){return/^\n* /.test(t)}(0,i.K2)(or,"State"),(0,i.K2)(ar,"indentString"),(0,i.K2)(sr,"generateNextLine"),(0,i.K2)(lr,"testImplicitResolving"),(0,i.K2)(hr,"isWhitespace"),(0,i.K2)(cr,"isPrintable"),(0,i.K2)(ur,"isNsCharOrWhitespace"),(0,i.K2)(dr,"isPlainSafe"),(0,i.K2)(pr,"isPlainSafeFirst"),(0,i.K2)(fr,"isPlainSafeLast"),(0,i.K2)(gr,"codePointAt"),(0,i.K2)(yr,"needIndentIndicator");var mr=1,xr=2,br=3,kr=4,Cr=5;function wr(t,e,r,i,n,o,a,s){var l,h=0,c=null,u=!1,d=!1,p=-1!==i,f=-1,g=pr(gr(t,0))&&fr(gr(t,t.length-1));if(e||a)for(l=0;l=65536?l+=2:l++){if(!cr(h=gr(t,l)))return Cr;g=g&&dr(h,c,s),c=h}else{for(l=0;l=65536?l+=2:l++){if((h=gr(t,l))===Be)u=!0,p&&(d=d||l-f-1>i&&" "!==t[f+1],f=l);else if(!cr(h))return Cr;g=g&&dr(h,c,s),c=h}d=d||p&&l-f-1>i&&" "!==t[f+1]}return u||d?r>9&&yr(t)?Cr:a?o===nr?Cr:xr:d?kr:br:!g||a||n(t)?o===nr?Cr:xr:mr}function _r(t,e,r,n,o){t.dump=function(){if(0===e.length)return t.quotingType===nr?'""':"''";if(!t.noCompatMode&&(-1!==Je.indexOf(e)||tr.test(e)))return t.quotingType===nr?'"'+e+'"':"'"+e+"'";var a=t.indent*Math.max(1,r),s=-1===t.lineWidth?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-a),l=n||t.flowLevel>-1&&r>=t.flowLevel;function h(e){return lr(t,e)}switch((0,i.K2)(h,"testAmbiguity"),wr(e,l,t.indent,s,h,t.quotingType,t.forceQuotes&&!n,o)){case mr:return e;case xr:return"'"+e.replace(/'/g,"''")+"'";case br:return"|"+vr(e,t.indent)+Sr(ar(e,a));case kr:return">"+vr(e,t.indent)+Sr(ar(Tr(e,s),a));case Cr:return'"'+Mr(e)+'"';default:throw new p("impossible error: invalid scalar style")}}()}function vr(t,e){var r=yr(t)?String(e):"",i="\n"===t[t.length-1];return r+(!i||"\n"!==t[t.length-2]&&"\n"!==t?i?"":"-":"+")+"\n"}function Sr(t){return"\n"===t[t.length-1]?t.slice(0,-1):t}function Tr(t,e){for(var r,i,n,o=/(\n+)([^\n]*)/g,a=(r=-1!==(r=t.indexOf("\n"))?r:t.length,o.lastIndex=r,Ar(t.slice(0,r),e)),s="\n"===t[0]||" "===t[0];n=o.exec(t);){var l=n[1],h=n[2];i=" "===h[0],a+=l+(s||i||""===h?"":"\n")+Ar(h,e),s=i}return a}function Ar(t,e){if(""===t||" "===t[0])return t;for(var r,i,n=/ [^ ]/g,o=0,a=0,s=0,l="";r=n.exec(t);)(s=r.index)-o>e&&(i=a>o?a:s,l+="\n"+t.slice(o,i),o=i+1),a=s;return l+="\n",t.length-o>e&&a>o?l+=t.slice(o,a)+"\n"+t.slice(a+1):l+=t.slice(o),l.slice(1)}function Mr(t){for(var e,r="",i=0,n=0;n=65536?n+=2:n++)i=gr(t,n),!(e=Qe[i])&&cr(i)?(r+=t[n],i>=65536&&(r+=t[n+1])):r+=e||rr(i);return r}function Br(t,e,r){var i,n,o,a="",s=t.tag;for(i=0,n=r.length;i1024&&(s+="? "),s+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),Dr(t,e,a,!1,!1)&&(l+=s+=t.dump));t.tag=h,t.dump="{"+l+"}"}function $r(t,e,r,i){var n,o,a,s,l,h,c="",u=t.tag,d=Object.keys(r);if(!0===t.sortKeys)d.sort();else if("function"==typeof t.sortKeys)d.sort(t.sortKeys);else if(t.sortKeys)throw new p("sortKeys must be a boolean or a function");for(n=0,o=d.length;n1024)&&(t.dump&&Be===t.dump.charCodeAt(0)?h+="?":h+="? "),h+=t.dump,l&&(h+=sr(t,e)),Dr(t,e+1,s,!0,l)&&(t.dump&&Be===t.dump.charCodeAt(0)?h+=":":h+=": ",c+=h+=t.dump));t.tag=u,t.dump=c||"{}"}function Er(t,e,r){var i,n,o,a,s,l;for(o=0,a=(n=r?t.explicitTypes:t.implicitTypes).length;o tag resolver accepts not "'+l+'" style');i=s.represent[l](e,l)}t.dump=i}return!0}return!1}function Dr(t,e,r,i,n,o,a){t.tag=null,t.dump=r,Er(t,r,!1)||Er(t,r,!0);var s,l=Se.call(t.dump),h=i;i&&(i=t.flowLevel<0||t.flowLevel>e);var c,u,d="[object Object]"===l||"[object Array]"===l;if(d&&(u=-1!==(c=t.duplicates.indexOf(r))),(null!==t.tag&&"?"!==t.tag||u||2!==t.indent&&e>0)&&(n=!1),u&&t.usedDuplicates[c])t.dump="*ref_"+c;else{if(d&&u&&!t.usedDuplicates[c]&&(t.usedDuplicates[c]=!0),"[object Object]"===l)i&&0!==Object.keys(t.dump).length?($r(t,e,t.dump,n),u&&(t.dump="&ref_"+c+t.dump)):(Fr(t,e,t.dump),u&&(t.dump="&ref_"+c+" "+t.dump));else if("[object Array]"===l)i&&0!==t.dump.length?(t.noArrayIndent&&!a&&e>0?Lr(t,e-1,t.dump,n):Lr(t,e,t.dump,n),u&&(t.dump="&ref_"+c+t.dump)):(Br(t,e,t.dump),u&&(t.dump="&ref_"+c+" "+t.dump));else{if("[object String]"!==l){if("[object Undefined]"===l)return!1;if(t.skipInvalid)return!1;throw new p("unacceptable kind of an object to dump "+l)}"?"!==t.tag&&_r(t,t.dump,e,o,h)}null!==t.tag&&"?"!==t.tag&&(s=encodeURI("!"===t.tag[0]?t.tag.slice(1):t.tag).replace(/!/g,"%21"),s="!"===t.tag[0]?"!"+s:"tag:yaml.org,2002:"===s.slice(0,18)?"!!"+s.slice(18):"!<"+s+">",t.dump=s+" "+t.dump)}return!0}function Or(t,e){var r,i,n=[],o=[];for(Ir(t,n,o),r=0,i=o.length;r{"use strict";r.d(e,{IU:()=>$t,gh:()=>Pt,nA:()=>Kr,U:()=>Ft,Jo:()=>Vt,jP:()=>Kt,on:()=>Pr,Zk:()=>Jt,g0:()=>Qt,T_:()=>Nt,U_:()=>qr,U7:()=>zr,lC:()=>te});var i=r(8568),n=r(7750),o=r(2382),a=r(5522),s=r(32),l=r(4852);function h(t,e,r){if(t&&t.length){const[i,n]=e,o=Math.PI/180*r,a=Math.cos(o),s=Math.sin(o);for(const e of t){const[t,r]=e;e[0]=(t-i)*a-(r-n)*s+i,e[1]=(t-i)*s+(r-n)*a+n}}}function c(t,e){return t[0]===e[0]&&t[1]===e[1]}function u(t,e,r,i=1){const n=r,o=Math.max(e,.1),a=t[0]&&t[0][0]&&"number"==typeof t[0][0]?[t]:t,s=[0,0];if(n)for(const t of a)h(t,s,n);const l=function(t,e,r){const i=[];for(const e of t){const t=[...e];c(t[0],t[t.length-1])||t.push([t[0][0],t[0][1]]),t.length>2&&i.push(t)}const n=[];e=Math.max(e,.1);const o=[];for(const t of i)for(let e=0;et.ymine.ymin?1:t.xe.x?1:t.ymax===e.ymax?0:(t.ymax-e.ymax)/Math.abs(t.ymax-e.ymax))),!o.length)return n;let a=[],s=o[0].ymin,l=0;for(;a.length||o.length;){if(o.length){let t=-1;for(let e=0;es);e++)t=e;o.splice(0,t+1).forEach((t=>{a.push({s,edge:t})}))}if(a=a.filter((t=>!(t.edge.ymax<=s))),a.sort(((t,e)=>t.edge.x===e.edge.x?0:(t.edge.x-e.edge.x)/Math.abs(t.edge.x-e.edge.x))),(1!==r||l%e==0)&&a.length>1)for(let t=0;t=a.length)break;const r=a[t].edge,i=a[e].edge;n.push([[Math.round(r.x),s],[Math.round(i.x),s]])}s+=r,a.forEach((t=>{t.edge.x=t.edge.x+r*t.edge.islope})),l++}return n}(a,o,i);if(n){for(const t of a)h(t,s,-n);!function(t,e,r){const i=[];t.forEach((t=>i.push(...t))),h(i,e,r)}(l,s,-n)}return l}function d(t,e){var r;const i=e.hachureAngle+90;let n=e.hachureGap;n<0&&(n=4*e.strokeWidth),n=Math.round(Math.max(n,.1));let o=1;return e.roughness>=1&&((null===(r=e.randomizer)||void 0===r?void 0:r.next())||Math.random())>.7&&(o=n),u(t,n,i,o||1)}class p{constructor(t){this.helper=t}fillPolygons(t,e){return this._fillPolygons(t,e)}_fillPolygons(t,e){const r=d(t,e);return{type:"fillSketch",ops:this.renderLines(r,e)}}renderLines(t,e){const r=[];for(const i of t)r.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],e));return r}}function f(t){const e=t[0],r=t[1];return Math.sqrt(Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2))}class g extends p{fillPolygons(t,e){let r=e.hachureGap;r<0&&(r=4*e.strokeWidth),r=Math.max(r,.1);const i=d(t,Object.assign({},e,{hachureGap:r})),n=Math.PI/180*e.hachureAngle,o=[],a=.5*r*Math.cos(n),s=.5*r*Math.sin(n);for(const[t,e]of i)f([t,e])&&o.push([[t[0]-a,t[1]+s],[...e]],[[t[0]+a,t[1]-s],[...e]]);return{type:"fillSketch",ops:this.renderLines(o,e)}}}class y extends p{fillPolygons(t,e){const r=this._fillPolygons(t,e),i=Object.assign({},e,{hachureAngle:e.hachureAngle+90}),n=this._fillPolygons(t,i);return r.ops=r.ops.concat(n.ops),r}}class m{constructor(t){this.helper=t}fillPolygons(t,e){const r=d(t,e=Object.assign({},e,{hachureAngle:0}));return this.dotsOnLines(r,e)}dotsOnLines(t,e){const r=[];let i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.max(i,.1);let n=e.fillWeight;n<0&&(n=e.strokeWidth/2);const o=i/4;for(const a of t){const t=f(a),s=t/i,l=Math.ceil(s)-1,h=t-l*i,c=(a[0][0]+a[1][0])/2-i/4,u=Math.min(a[0][1],a[1][1]);for(let t=0;t{const o=f(t),a=Math.floor(o/(r+i)),s=(o+i-a*(r+i))/2;let l=t[0],h=t[1];l[0]>h[0]&&(l=t[1],h=t[0]);const c=Math.atan((h[1]-l[1])/(h[0]-l[0]));for(let t=0;t{const n=f(t),o=Math.round(n/(2*e));let a=t[0],s=t[1];a[0]>s[0]&&(a=t[1],s=t[0]);const l=Math.atan((s[1]-a[1])/(s[0]-a[0]));for(let t=0;ti%2?t+r:t+e));o.push({key:"C",data:t}),e=t[4],r=t[5];break}case"Q":o.push({key:"Q",data:[...s]}),e=s[2],r=s[3];break;case"q":{const t=s.map(((t,i)=>i%2?t+r:t+e));o.push({key:"Q",data:t}),e=t[2],r=t[3];break}case"A":o.push({key:"A",data:[...s]}),e=s[5],r=s[6];break;case"a":e+=s[5],r+=s[6],o.push({key:"A",data:[s[0],s[1],s[2],s[3],s[4],e,r]});break;case"H":o.push({key:"H",data:[...s]}),e=s[0];break;case"h":e+=s[0],o.push({key:"H",data:[e]});break;case"V":o.push({key:"V",data:[...s]}),r=s[0];break;case"v":r+=s[0],o.push({key:"V",data:[r]});break;case"S":o.push({key:"S",data:[...s]}),e=s[2],r=s[3];break;case"s":{const t=s.map(((t,i)=>i%2?t+r:t+e));o.push({key:"S",data:t}),e=t[2],r=t[3];break}case"T":o.push({key:"T",data:[...s]}),e=s[0],r=s[1];break;case"t":e+=s[0],r+=s[1],o.push({key:"T",data:[e,r]});break;case"Z":case"z":o.push({key:"Z",data:[]}),e=i,r=n}return o}function B(t){const e=[];let r="",i=0,n=0,o=0,a=0,s=0,l=0;for(const{key:h,data:c}of t){switch(h){case"M":e.push({key:"M",data:[...c]}),[i,n]=c,[o,a]=c;break;case"C":e.push({key:"C",data:[...c]}),i=c[4],n=c[5],s=c[2],l=c[3];break;case"L":e.push({key:"L",data:[...c]}),[i,n]=c;break;case"H":i=c[0],e.push({key:"L",data:[i,n]});break;case"V":n=c[0],e.push({key:"L",data:[i,n]});break;case"S":{let t=0,o=0;"C"===r||"S"===r?(t=i+(i-s),o=n+(n-l)):(t=i,o=n),e.push({key:"C",data:[t,o,...c]}),s=c[0],l=c[1],i=c[2],n=c[3];break}case"T":{const[t,o]=c;let a=0,h=0;"Q"===r||"T"===r?(a=i+(i-s),h=n+(n-l)):(a=i,h=n);const u=i+2*(a-i)/3,d=n+2*(h-n)/3,p=t+2*(a-t)/3,f=o+2*(h-o)/3;e.push({key:"C",data:[u,d,p,f,t,o]}),s=a,l=h,i=t,n=o;break}case"Q":{const[t,r,o,a]=c,h=i+2*(t-i)/3,u=n+2*(r-n)/3,d=o+2*(t-o)/3,p=a+2*(r-a)/3;e.push({key:"C",data:[h,u,d,p,o,a]}),s=t,l=r,i=o,n=a;break}case"A":{const t=Math.abs(c[0]),r=Math.abs(c[1]),o=c[2],a=c[3],s=c[4],l=c[5],h=c[6];0===t||0===r?(e.push({key:"C",data:[i,n,l,h,l,h]}),i=l,n=h):i===l&&n===h||(F(i,n,l,h,t,r,o,a,s).forEach((function(t){e.push({key:"C",data:t})})),i=l,n=h);break}case"Z":e.push({key:"Z",data:[]}),i=o,n=a}r=h}return e}function L(t,e,r){return[t*Math.cos(r)-e*Math.sin(r),t*Math.sin(r)+e*Math.cos(r)]}function F(t,e,r,i,n,o,a,s,l,h){const c=(u=a,Math.PI*u/180);var u;let d=[],p=0,f=0,g=0,y=0;if(h)[p,f,g,y]=h;else{[t,e]=L(t,e,-c),[r,i]=L(r,i,-c);const a=(t-r)/2,h=(e-i)/2;let u=a*a/(n*n)+h*h/(o*o);u>1&&(u=Math.sqrt(u),n*=u,o*=u);const d=n*n,m=o*o,x=d*m-d*h*h-m*a*a,b=d*h*h+m*a*a,k=(s===l?-1:1)*Math.sqrt(Math.abs(x/b));g=k*n*h/o+(t+r)/2,y=k*-o*a/n+(e+i)/2,p=Math.asin(parseFloat(((e-y)/o).toFixed(9))),f=Math.asin(parseFloat(((i-y)/o).toFixed(9))),tf&&(p-=2*Math.PI),!l&&f>p&&(f-=2*Math.PI)}let m=f-p;if(Math.abs(m)>120*Math.PI/180){const t=f,e=r,s=i;f=l&&f>p?p+120*Math.PI/180*1:p+120*Math.PI/180*-1,d=F(r=g+n*Math.cos(f),i=y+o*Math.sin(f),e,s,n,o,a,0,l,[f,t,g,y])}m=f-p;const x=Math.cos(p),b=Math.sin(p),k=Math.cos(f),C=Math.sin(f),w=Math.tan(m/4),_=4/3*n*w,v=4/3*o*w,S=[t,e],T=[t+_*b,e-v*x],A=[r+_*C,i-v*k],M=[r,i];if(T[0]=2*S[0]-T[0],T[1]=2*S[1]-T[1],h)return[T,A,M].concat(d);{d=[T,A,M].concat(d);const t=[];for(let e=0;e2){const n=[];for(let e=0;e2*Math.PI&&(p=0,f=2*Math.PI);const g=2*Math.PI/l.curveStepCount,y=Math.min(g/2,(f-p)/2),m=X(y,h,c,u,d,p,f,1,l);if(!l.disableMultiStroke){const t=X(y,h,c,u,d,p,f,1.5,l);m.push(...t)}return a&&(s?m.push(...H(h,c,h+u*Math.cos(p),c+d*Math.sin(p),l),...H(h,c,h+u*Math.cos(f),c+d*Math.sin(f),l)):m.push({op:"lineTo",data:[h,c]},{op:"lineTo",data:[h+u*Math.cos(p),c+d*Math.sin(p)]})),{type:"path",ops:m}}function z(t,e){const r=B(M(A(t))),i=[];let n=[0,0],o=[0,0];for(const{key:t,data:a}of r)switch(t){case"M":o=[a[0],a[1]],n=[a[0],a[1]];break;case"L":i.push(...H(o[0],o[1],a[0],a[1],e)),o=[a[0],a[1]];break;case"C":{const[t,r,n,s,l,h]=a;i.push(...Q(t,r,n,s,l,h,o,e)),o=[l,h];break}case"Z":i.push(...H(o[0],o[1],n[0],n[1],e)),o=[n[0],n[1]]}return{type:"path",ops:i}}function K(t,e){const r=[];for(const i of t)if(i.length){const t=e.maxRandomnessOffset||0,n=i.length;if(n>2){r.push({op:"move",data:[i[0][0]+U(t,e),i[0][1]+U(t,e)]});for(let o=1;o500?.4:-.0016668*l+1.233334;let c=n.maxRandomnessOffset||0;c*c*100>s&&(c=l/10);const u=c/2,d=.2+.2*j(n);let p=n.bowing*n.maxRandomnessOffset*(i-e)/200,f=n.bowing*n.maxRandomnessOffset*(t-r)/200;p=U(p,n,h),f=U(f,n,h);const g=[],y=()=>U(u,n,h),m=()=>U(c,n,h),x=n.preserveVertices;return o&&(a?g.push({op:"move",data:[t+(x?0:y()),e+(x?0:y())]}):g.push({op:"move",data:[t+(x?0:U(c,n,h)),e+(x?0:U(c,n,h))]})),a?g.push({op:"bcurveTo",data:[p+t+(r-t)*d+y(),f+e+(i-e)*d+y(),p+t+2*(r-t)*d+y(),f+e+2*(i-e)*d+y(),r+(x?0:y()),i+(x?0:y())]}):g.push({op:"bcurveTo",data:[p+t+(r-t)*d+m(),f+e+(i-e)*d+m(),p+t+2*(r-t)*d+m(),f+e+2*(i-e)*d+m(),r+(x?0:m()),i+(x?0:m())]}),g}function G(t,e,r){if(!t.length)return[];const i=[];i.push([t[0][0]+U(e,r),t[0][1]+U(e,r)]),i.push([t[0][0]+U(e,r),t[0][1]+U(e,r)]);for(let n=1;n3){const o=[],a=1-r.curveTightness;n.push({op:"move",data:[t[1][0],t[1][1]]});for(let e=1;e+21&&n.push(r)):n.push(r),n.push(t[e+3])}else{const i=.5,o=t[e+0],a=t[e+1],s=t[e+2],l=t[e+3],h=it(o,a,i),c=it(a,s,i),u=it(s,l,i),d=it(h,c,i),p=it(c,u,i),f=it(d,p,i);nt([o,h,d,f],0,r,n),nt([f,p,u,l],0,r,n)}var o,a;return n}function ot(t,e){return at(t,0,t.length,e)}function at(t,e,r,i,n){const o=n||[],a=t[e],s=t[r-1];let l=0,h=1;for(let i=e+1;il&&(l=e,h=i)}return Math.sqrt(l)>i?(at(t,e,h+1,i,o),at(t,h,r,i,o)):(o.length||o.push(a),o.push(s)),o}function st(t,e=.15,r){const i=[],n=(t.length-1)/3;for(let r=0;r0?at(i,0,i.length,r):i}const lt="none";class ht{constructor(t){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=t||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2**31)}_o(t){return t?Object.assign({},this.defaultOptions,t):this.defaultOptions}_d(t,e,r){return{shape:t,sets:e||[],options:r||this.defaultOptions}}line(t,e,r,i,n){const o=this._o(n);return this._d("line",[E(t,e,r,i,o)],o)}rectangle(t,e,r,i,n){const o=this._o(n),a=[],s=function(t,e,r,i,n){return function(t,e){return D(t,!0,e)}([[t,e],[t+r,e],[t+r,e+i],[t,e+i]],n)}(t,e,r,i,o);if(o.fill){const n=[[t,e],[t+r,e],[t+r,e+i],[t,e+i]];"solid"===o.fillStyle?a.push(K([n],o)):a.push(q([n],o))}return o.stroke!==lt&&a.push(s),this._d("rectangle",a,o)}ellipse(t,e,r,i,n){const o=this._o(n),a=[],s=I(r,i,o),l=R(t,e,o,s);if(o.fill)if("solid"===o.fillStyle){const r=R(t,e,o,s).opset;r.type="fillPath",a.push(r)}else a.push(q([l.estimatedPoints],o));return o.stroke!==lt&&a.push(l.opset),this._d("ellipse",a,o)}circle(t,e,r,i){const n=this.ellipse(t,e,r,r,i);return n.shape="circle",n}linearPath(t,e){const r=this._o(e);return this._d("linearPath",[D(t,!1,r)],r)}arc(t,e,r,i,n,o,a=!1,s){const l=this._o(s),h=[],c=P(t,e,r,i,n,o,a,!0,l);if(a&&l.fill)if("solid"===l.fillStyle){const a=Object.assign({},l);a.disableMultiStroke=!0;const s=P(t,e,r,i,n,o,!0,!1,a);s.type="fillPath",h.push(s)}else h.push(function(t,e,r,i,n,o,a){const s=t,l=e;let h=Math.abs(r/2),c=Math.abs(i/2);h+=U(.01*h,a),c+=U(.01*c,a);let u=n,d=o;for(;u<0;)u+=2*Math.PI,d+=2*Math.PI;d-u>2*Math.PI&&(u=0,d=2*Math.PI);const p=(d-u)/a.curveStepCount,f=[];for(let t=u;t<=d;t+=p)f.push([s+h*Math.cos(t),l+c*Math.sin(t)]);return f.push([s+h*Math.cos(d),l+c*Math.sin(d)]),f.push([s,l]),q([f],a)}(t,e,r,i,n,o,l));return l.stroke!==lt&&h.push(c),this._d("arc",h,l)}curve(t,e){const r=this._o(e),i=[],n=O(t,r);if(r.fill&&r.fill!==lt)if("solid"===r.fillStyle){const e=O(t,Object.assign(Object.assign({},r),{disableMultiStroke:!0,roughness:r.roughness?r.roughness+r.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(e.ops)})}else{const e=[],n=t;if(n.length){const t="number"==typeof n[0][0]?[n]:n;for(const i of t)i.length<3?e.push(...i):3===i.length?e.push(...st(tt([i[0],i[0],i[1],i[2]]),10,(1+r.roughness)/2)):e.push(...st(tt(i),10,(1+r.roughness)/2))}e.length&&i.push(q([e],r))}return r.stroke!==lt&&i.push(n),this._d("curve",i,r)}polygon(t,e){const r=this._o(e),i=[],n=D(t,!0,r);return r.fill&&("solid"===r.fillStyle?i.push(K([t],r)):i.push(q([t],r))),r.stroke!==lt&&i.push(n),this._d("polygon",i,r)}path(t,e){const r=this._o(e),i=[];if(!t)return this._d("path",i,r);t=(t||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const n=r.fill&&"transparent"!==r.fill&&r.fill!==lt,o=r.stroke!==lt,a=!!(r.simplification&&r.simplification<1),s=function(t,e,r){const i=B(M(A(t))),n=[];let o=[],a=[0,0],s=[];const l=()=>{s.length>=4&&o.push(...st(s,1)),s=[]},h=()=>{l(),o.length&&(n.push(o),o=[])};for(const{key:t,data:e}of i)switch(t){case"M":h(),a=[e[0],e[1]],o.push(a);break;case"L":l(),o.push([e[0],e[1]]);break;case"C":if(!s.length){const t=o.length?o[o.length-1]:a;s.push([t[0],t[1]])}s.push([e[0],e[1]]),s.push([e[2],e[3]]),s.push([e[4],e[5]]);break;case"Z":l(),o.push([a[0],a[1]])}if(h(),!r)return n;const c=[];for(const t of n){const e=ot(t,r);e.length&&c.push(e)}return c}(t,0,a?4-4*(r.simplification||1):(1+r.roughness)/2),l=z(t,r);if(n)if("solid"===r.fillStyle)if(1===s.length){const e=z(t,Object.assign(Object.assign({},r),{disableMultiStroke:!0,roughness:r.roughness?r.roughness+r.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(e.ops)})}else i.push(K(s,r));else i.push(q(s,r));return o&&(a?s.forEach((t=>{i.push(D(t,!1,r))})):i.push(l)),this._d("path",i,r)}opsToPath(t,e){let r="";for(const i of t.ops){const t="number"==typeof e&&e>=0?i.data.map((t=>+t.toFixed(e))):i.data;switch(i.op){case"move":r+=`M${t[0]} ${t[1]} `;break;case"bcurveTo":r+=`C${t[0]} ${t[1]}, ${t[2]} ${t[3]}, ${t[4]} ${t[5]} `;break;case"lineTo":r+=`L${t[0]} ${t[1]} `}}return r.trim()}toPaths(t){const e=t.sets||[],r=t.options||this.defaultOptions,i=[];for(const t of e){let e=null;switch(t.type){case"path":e={d:this.opsToPath(t),stroke:r.stroke,strokeWidth:r.strokeWidth,fill:lt};break;case"fillPath":e={d:this.opsToPath(t),stroke:lt,strokeWidth:0,fill:r.fill||lt};break;case"fillSketch":e=this.fillSketch(t,r)}e&&i.push(e)}return i}fillSketch(t,e){let r=e.fillWeight;return r<0&&(r=e.strokeWidth/2),{d:this.opsToPath(t),stroke:e.fill||lt,strokeWidth:r,fill:lt}}_mergedShape(t){return t.filter(((t,e)=>0===e||"move"!==t.op))}}const ct="http://www.w3.org/2000/svg";class ut{constructor(t,e){this.svg=t,this.gen=new ht(e)}draw(t){const e=t.sets||[],r=t.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,n=i.createElementNS(ct,"g"),o=t.options.fixedDecimalPlaceDigits;for(const a of e){let e=null;switch(a.type){case"path":e=i.createElementNS(ct,"path"),e.setAttribute("d",this.opsToPath(a,o)),e.setAttribute("stroke",r.stroke),e.setAttribute("stroke-width",r.strokeWidth+""),e.setAttribute("fill","none"),r.strokeLineDash&&e.setAttribute("stroke-dasharray",r.strokeLineDash.join(" ").trim()),r.strokeLineDashOffset&&e.setAttribute("stroke-dashoffset",`${r.strokeLineDashOffset}`);break;case"fillPath":e=i.createElementNS(ct,"path"),e.setAttribute("d",this.opsToPath(a,o)),e.setAttribute("stroke","none"),e.setAttribute("stroke-width","0"),e.setAttribute("fill",r.fill||""),"curve"!==t.shape&&"polygon"!==t.shape||e.setAttribute("fill-rule","evenodd");break;case"fillSketch":e=this.fillSketch(i,a,r)}e&&n.appendChild(e)}return n}fillSketch(t,e,r){let i=r.fillWeight;i<0&&(i=r.strokeWidth/2);const n=t.createElementNS(ct,"path");return n.setAttribute("d",this.opsToPath(e,r.fixedDecimalPlaceDigits)),n.setAttribute("stroke",r.fill||""),n.setAttribute("stroke-width",i+""),n.setAttribute("fill","none"),r.fillLineDash&&n.setAttribute("stroke-dasharray",r.fillLineDash.join(" ").trim()),r.fillLineDashOffset&&n.setAttribute("stroke-dashoffset",`${r.fillLineDashOffset}`),n}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(t,e){return this.gen.opsToPath(t,e)}line(t,e,r,i,n){const o=this.gen.line(t,e,r,i,n);return this.draw(o)}rectangle(t,e,r,i,n){const o=this.gen.rectangle(t,e,r,i,n);return this.draw(o)}ellipse(t,e,r,i,n){const o=this.gen.ellipse(t,e,r,i,n);return this.draw(o)}circle(t,e,r,i){const n=this.gen.circle(t,e,r,i);return this.draw(n)}linearPath(t,e){const r=this.gen.linearPath(t,e);return this.draw(r)}polygon(t,e){const r=this.gen.polygon(t,e);return this.draw(r)}arc(t,e,r,i,n,o,a=!1,s){const l=this.gen.arc(t,e,r,i,n,o,a,s);return this.draw(l)}curve(t,e){const r=this.gen.curve(t,e);return this.draw(r)}path(t,e){const r=this.gen.path(t,e);return this.draw(r)}}var dt=(t,e)=>new ut(t,e),pt=(0,s.K2)(((t,e)=>{var r,i,n=t.x,o=t.y,a=e.x-n,s=e.y-o,l=t.width/2,h=t.height/2;return Math.abs(s)*l>Math.abs(a)*h?(s<0&&(h=-h),r=0===s?0:h*a/s,i=h):(a<0&&(l=-l),r=l,i=0===a?0:l*s/a),{x:n+r,y:o+i}}),"intersectRect"),ft=pt;function gt(t,e){e&&t.attr("style",e)}async function yt(t){const e=(0,l.Ltv)(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div");let i=t.label;t.label&&(0,s.Wi)(t.label)&&(i=await(0,s.VJ)(t.label.replace(s.Y2.lineBreakRegex,"\n"),(0,s.D7)()));const n=t.isNode?"nodeLabel":"edgeLabel";return r.html('"+i+""),gt(r,t.labelStyle),r.style("display","inline-block"),r.style("padding-right","1px"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}(0,s.K2)(gt,"applyStyle"),(0,s.K2)(yt,"addHtmlLabel");var mt=(0,s.K2)((async(t,e,r,i)=>{let n=t||"";if("object"==typeof n&&(n=n[0]),(0,s._3)((0,s.D7)().flowchart.htmlLabels)){n=n.replace(/\\n|\n/g,"
"),s.Rm.info("vertexText"+n);const t={isNode:i,label:(0,a.Sm)(n).replace(/fa[blrs]?:fa-[\w-]+/g,(t=>``)),labelStyle:e?e.replace("fill:","color:"):e};return await yt(t)}{const t=document.createElementNS("http://www.w3.org/2000/svg","text");t.setAttribute("style",e.replace("color:","fill:"));let i=[];i="string"==typeof n?n.split(/\\n|\n|/gi):Array.isArray(n)?n:[];for(const e of i){const i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),r?i.setAttribute("class","title-row"):i.setAttribute("class","row"),i.textContent=e.trim(),t.appendChild(i)}return t}}),"createLabel"),xt=mt,bt=(0,s.K2)(((t,e,r,i,n)=>["M",t+n,e,"H",t+r-n,"A",n,n,0,0,1,t+r,e+n,"V",e+i-n,"A",n,n,0,0,1,t+r-n,e+i,"H",t+n,"A",n,n,0,0,1,t,e+i-n,"V",e+n,"A",n,n,0,0,1,t+n,e,"Z"].join(" ")),"createRoundedRectPathD"),kt=(0,s.K2)((t=>{const{handDrawnSeed:e}=(0,s.D7)();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}}),"solidStateFill"),Ct=(0,s.K2)((t=>{const e=wt([...t.cssCompiledStyles||[],...t.cssStyles||[]]);return{stylesMap:e,stylesArray:[...e]}}),"compileStyles"),wt=(0,s.K2)((t=>{const e=new Map;return t.forEach((t=>{const[r,i]=t.split(":");e.set(r.trim(),i?.trim())})),e}),"styles2Map"),_t=(0,s.K2)((t=>{const{stylesArray:e}=Ct(t),r=[],i=[],n=[],o=[];return e.forEach((t=>{const e=t[0];"color"===e||"font-size"===e||"font-family"===e||"font-weight"===e||"font-style"===e||"text-decoration"===e||"text-align"===e||"text-transform"===e||"line-height"===e||"letter-spacing"===e||"word-spacing"===e||"text-shadow"===e||"text-overflow"===e||"white-space"===e||"word-wrap"===e||"word-break"===e||"overflow-wrap"===e||"hyphens"===e?r.push(t.join(":")+" !important"):(i.push(t.join(":")+" !important"),e.includes("stroke")&&n.push(t.join(":")+" !important"),"fill"===e&&o.push(t.join(":")+" !important"))})),{labelStyles:r.join(";"),nodeStyles:i.join(";"),stylesArray:e,borderStyles:n,backgroundStyles:o}}),"styles2String"),vt=(0,s.K2)(((t,e)=>{const{themeVariables:r,handDrawnSeed:i}=(0,s.D7)(),{nodeBorder:n,mainBkg:o}=r,{stylesMap:a}=Ct(t);return Object.assign({roughness:.7,fill:a.get("fill")||o,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:a.get("stroke")||n,seed:i,strokeWidth:a.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0]},e)}),"userNodeOverrides"),St=(0,s.K2)((async(t,e)=>{s.Rm.info("Creating subgraph rect for ",e.id,e);const r=(0,s.D7)(),{themeVariables:i,handDrawnSeed:a}=r,{clusterBkg:h,clusterBorder:c}=i,{labelStyles:u,nodeStyles:d,borderStyles:p,backgroundStyles:f}=_t(e),g=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),y=(0,s._3)(r.flowchart.htmlLabels),m=g.insert("g").attr("class","cluster-label "),x=await(0,o.GZ)(m,e.label,{style:e.labelStyle,useHtmlLabels:y,isNode:!0});let b=x.getBBox();if((0,s._3)(r.flowchart.htmlLabels)){const t=x.children[0],e=(0,l.Ltv)(x);b=t.getBoundingClientRect(),e.attr("width",b.width),e.attr("height",b.height)}const k=e.width<=b.width+e.padding?b.width+e.padding:e.width;e.width<=b.width+e.padding?e.diff=(k-e.width)/2-e.padding:e.diff=-e.padding;const C=e.height,w=e.x-k/2,_=e.y-C/2;let v;if(s.Rm.trace("Data ",e,JSON.stringify(e)),"handDrawn"===e.look){const t=dt(g),r=vt(e,{roughness:.7,fill:h,stroke:c,fillWeight:3,seed:a}),i=t.path(bt(w,_,k,C,0),r);v=g.insert((()=>(s.Rm.debug("Rough node insert CXC",i),i)),":first-child"),v.select("path:nth-child(2)").attr("style",p.join(";")),v.select("path").attr("style",f.join(";").replace("fill","stroke"))}else v=g.insert("rect",":first-child"),v.attr("style",d).attr("rx",e.rx).attr("ry",e.ry).attr("x",w).attr("y",_).attr("width",k).attr("height",C);const{subGraphTitleTopMargin:S}=(0,n.O)(r);if(m.attr("transform",`translate(${e.x-b.width/2}, ${e.y-e.height/2+S})`),u){const t=m.select("span");t&&t.attr("style",u)}const T=v.node().getBBox();return e.offsetX=0,e.width=T.width,e.height=T.height,e.offsetY=b.height-e.padding/2,e.intersect=function(t){return ft(e,t)},{cluster:g,labelBBox:b}}),"rect"),Tt=(0,s.K2)(((t,e)=>{const r=t.insert("g").attr("class","note-cluster").attr("id",e.id),i=r.insert("rect",":first-child"),n=0*e.padding,o=n/2;i.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-o).attr("y",e.y-e.height/2-o).attr("width",e.width+n).attr("height",e.height+n).attr("fill","none");const a=i.node().getBBox();return e.width=a.width,e.height=a.height,e.intersect=function(t){return ft(e,t)},{cluster:r,labelBBox:{width:0,height:0}}}),"noteGroup"),At=(0,s.K2)((async(t,e)=>{const r=(0,s.D7)(),{themeVariables:i,handDrawnSeed:n}=r,{altBackground:o,compositeBackground:a,compositeTitleBackground:h,nodeBorder:c}=i,u=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-id",e.id).attr("data-look",e.look),d=u.insert("g",":first-child"),p=u.insert("g").attr("class","cluster-label");let f=u.append("rect");const g=p.node().appendChild(await xt(e.label,e.labelStyle,void 0,!0));let y=g.getBBox();if((0,s._3)(r.flowchart.htmlLabels)){const t=g.children[0],e=(0,l.Ltv)(g);y=t.getBoundingClientRect(),e.attr("width",y.width),e.attr("height",y.height)}const m=0*e.padding,x=m/2,b=(e.width<=y.width+e.padding?y.width+e.padding:e.width)+m;e.width<=y.width+e.padding?e.diff=(b-e.width)/2-e.padding:e.diff=-e.padding;const k=e.height+m,C=e.height+m-y.height-6,w=e.x-b/2,_=e.y-k/2;e.width=b;const v=e.y-e.height/2-x+y.height+2;let S;if("handDrawn"===e.look){const t=e.cssClasses.includes("statediagram-cluster-alt"),r=dt(u),i=e.rx||e.ry?r.path(bt(w,_,b,k,10),{roughness:.7,fill:h,fillStyle:"solid",stroke:c,seed:n}):r.rectangle(w,_,b,k,{seed:n});S=u.insert((()=>i),":first-child");const s=r.rectangle(w,v,b,C,{fill:t?o:a,fillStyle:t?"hachure":"solid",stroke:c,seed:n});S=u.insert((()=>i),":first-child"),f=u.insert((()=>s))}else{S=d.insert("rect",":first-child");const t="outer";S.attr("class",t).attr("x",w).attr("y",_).attr("width",b).attr("height",k).attr("data-look",e.look),f.attr("class","inner").attr("x",w).attr("y",v).attr("width",b).attr("height",C)}p.attr("transform",`translate(${e.x-y.width/2}, ${_+1-((0,s._3)(r.flowchart.htmlLabels)?0:3)})`);const T=S.node().getBBox();return e.height=T.height,e.offsetX=0,e.offsetY=y.height-e.padding/2,e.labelBBox=y,e.intersect=function(t){return ft(e,t)},{cluster:u,labelBBox:y}}),"roundedWithTitle"),Mt=(0,s.K2)(((t,e)=>{const r=(0,s.D7)(),{themeVariables:i,handDrawnSeed:n}=r,{nodeBorder:o}=i,a=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-look",e.look),l=a.insert("g",":first-child"),h=0*e.padding,c=e.width+h;e.diff=-e.padding;const u=e.height+h,d=e.x-c/2,p=e.y-u/2;let f;if(e.width=c,"handDrawn"===e.look){const t=dt(a).rectangle(d,p,c,u,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:o,seed:n});f=a.insert((()=>t),":first-child")}else{f=l.insert("rect",":first-child");const t="divider";f.attr("class",t).attr("x",d).attr("y",p).attr("width",c).attr("height",u).attr("data-look",e.look)}const g=f.node().getBBox();return e.height=g.height,e.offsetX=0,e.offsetY=0,e.intersect=function(t){return ft(e,t)},{cluster:a,labelBBox:{}}}),"divider"),Bt={rect:St,squareRect:St,roundedWithTitle:At,noteGroup:Tt,divider:Mt},Lt=new Map,Ft=(0,s.K2)((async(t,e)=>{const r=e.shape||"rect",i=await Bt[r](t,e);return Lt.set(e.id,i),i}),"insertCluster"),$t=(0,s.K2)((()=>{Lt=new Map}),"clear"),Et=(0,s.K2)(((t,e,r,i,n)=>{e.arrowTypeStart&&Ot(t,"start",e.arrowTypeStart,r,i,n),e.arrowTypeEnd&&Ot(t,"end",e.arrowTypeEnd,r,i,n)}),"addEdgeMarkers"),Dt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},Ot=(0,s.K2)(((t,e,r,i,n,o)=>{const a=Dt[r];if(!a)return void s.Rm.warn(`Unknown arrow type: ${r}`);const l="start"===e?"Start":"End";t.attr(`marker-${e}`,`url(${i}#${n}_${o}-${a}${l})`)}),"addEdgeMarker"),It=new Map,Rt=new Map,Pt=(0,s.K2)((()=>{It.clear(),Rt.clear()}),"clear"),zt=(0,s.K2)((t=>t?t.reduce(((t,e)=>t+";"+e),""):""),"getLabelStyles"),Kt=(0,s.K2)((async(t,e)=>{let r=(0,s._3)((0,s.D7)().flowchart.htmlLabels);const i=await(0,o.GZ)(t,e.label,{style:zt(e.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1});s.Rm.info("abc82",e,e.labelType);const n=t.insert("g").attr("class","edgeLabel"),a=n.insert("g").attr("class","label");a.node().appendChild(i);let h,c=i.getBBox();if(r){const t=i.children[0],e=(0,l.Ltv)(i);c=t.getBoundingClientRect(),e.attr("width",c.width),e.attr("height",c.height)}if(a.attr("transform","translate("+-c.width/2+", "+-c.height/2+")"),It.set(e.id,n),e.width=c.width,e.height=c.height,e.startLabelLeft){const r=await xt(e.startLabelLeft,zt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");h=n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),Rt.get(e.id)||Rt.set(e.id,{}),Rt.get(e.id).startLeft=i,qt(h,e.startLabelLeft)}if(e.startLabelRight){const r=await xt(e.startLabelRight,zt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");h=i.node().appendChild(r),n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),Rt.get(e.id)||Rt.set(e.id,{}),Rt.get(e.id).startRight=i,qt(h,e.startLabelRight)}if(e.endLabelLeft){const r=await xt(e.endLabelLeft,zt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");h=n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),i.node().appendChild(r),Rt.get(e.id)||Rt.set(e.id,{}),Rt.get(e.id).endLeft=i,qt(h,e.endLabelLeft)}if(e.endLabelRight){const r=await xt(e.endLabelRight,zt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");h=n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),i.node().appendChild(r),Rt.get(e.id)||Rt.set(e.id,{}),Rt.get(e.id).endRight=i,qt(h,e.endLabelRight)}return i}),"insertEdgeLabel");function qt(t,e){(0,s.D7)().flowchart.htmlLabels&&t&&(t.style.width=9*e.length+"px",t.style.height="12px")}(0,s.K2)(qt,"setTerminalWidth");var Nt=(0,s.K2)(((t,e)=>{s.Rm.debug("Moving label abc88 ",t.id,t.label,It.get(t.id),e);let r=e.updatedPath?e.updatedPath:e.originalPath;const i=(0,s.D7)(),{subGraphTitleTotalMargin:o}=(0,n.O)(i);if(t.label){const i=It.get(t.id);let n=t.x,l=t.y;if(r){const i=a._K.calcLabelPosition(r);s.Rm.debug("Moving label "+t.label+" from (",n,",",l,") to (",i.x,",",i.y,") abc88"),e.updatedPath&&(n=i.x,l=i.y)}i.attr("transform",`translate(${n}, ${l+o/2})`)}if(t.startLabelLeft){const e=Rt.get(t.id).startLeft;let i=t.x,n=t.y;if(r){const e=a._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.startLabelRight){const e=Rt.get(t.id).startRight;let i=t.x,n=t.y;if(r){const e=a._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.endLabelLeft){const e=Rt.get(t.id).endLeft;let i=t.x,n=t.y;if(r){const e=a._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.endLabelRight){const e=Rt.get(t.id).endRight;let i=t.x,n=t.y;if(r){const e=a._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}}),"positionEdgeLabel"),jt=(0,s.K2)(((t,e)=>{const r=t.x,i=t.y,n=Math.abs(e.x-r),o=Math.abs(e.y-i),a=t.width/2,s=t.height/2;return n>=a||o>=s}),"outsideNode"),Wt=(0,s.K2)(((t,e,r)=>{s.Rm.debug(`intersection calc abc89:\n outsidePoint: ${JSON.stringify(e)}\n insidePoint : ${JSON.stringify(r)}\n node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);const i=t.x,n=t.y,o=Math.abs(i-r.x),a=t.width/2;let l=r.xMath.abs(i-e.x)*h){let t=r.y{s.Rm.warn("abc88 cutPathAtIntersect",t,e);let r=[],i=t[0],n=!1;return t.forEach((t=>{if(s.Rm.info("abc88 checking point",t,e),jt(e,t)||n)s.Rm.warn("abc88 outside",t,i),i=t,n||r.push(t);else{const o=Wt(e,i,t);s.Rm.debug("abc88 inside",t,i,o),s.Rm.debug("abc88 intersection",o,e);let a=!1;r.forEach((t=>{a=a||t.x===o.x&&t.y===o.y})),r.some((t=>t.x===o.x&&t.y===o.y))?s.Rm.warn("abc88 no intersect",o,r):r.push(o),n=!0}})),s.Rm.debug("returning points",r),r}),"cutPathAtIntersect");function Ht(t){const e=[],r=[];for(let i=1;i5&&Math.abs(o.y-n.y)>5||n.y===o.y&&o.x===a.x&&Math.abs(o.x-n.x)>5&&Math.abs(o.y-a.y)>5)&&(e.push(o),r.push(i))}return{cornerPoints:e,cornerPointPositions:r}}(0,s.K2)(Ht,"extractCornerPoints");var Yt=(0,s.K2)((function(t,e,r){const i=e.x-t.x,n=e.y-t.y,o=r/Math.sqrt(i*i+n*n);return{x:e.x-o*i,y:e.y-o*n}}),"findAdjacentPoint"),Gt=(0,s.K2)((function(t){const{cornerPointPositions:e}=Ht(t),r=[];for(let i=0;i10&&Math.abs(n.y-e.y)>=10){s.Rm.debug("Corner point fixing",Math.abs(n.x-e.x),Math.abs(n.y-e.y));const t=5;d=o.x===a.x?{x:h<0?a.x-t+u:a.x+t-u,y:c<0?a.y-u:a.y+u}:{x:h<0?a.x-u:a.x+u,y:c<0?a.y-t+u:a.y+t-u}}else s.Rm.debug("Corner point skipping fixing",Math.abs(n.x-e.x),Math.abs(n.y-e.y));r.push(d,l)}else r.push(t[i]);return r}),"fixCorners"),Vt=(0,s.K2)((function(t,e,r,i,o,a,h){const{handDrawnSeed:c}=(0,s.D7)();let u=e.points,d=!1;const p=o;var f=a;f.intersect&&p.intersect&&(u=u.slice(1,e.points.length-1),u.unshift(p.intersect(u[0])),s.Rm.debug("Last point APA12",e.start,"--\x3e",e.end,u[u.length-1],f,f.intersect(u[u.length-1])),u.push(f.intersect(u[u.length-1]))),e.toCluster&&(s.Rm.info("to cluster abc88",r.get(e.toCluster)),u=Ut(e.points,r.get(e.toCluster).node),d=!0),e.fromCluster&&(s.Rm.debug("from cluster abc88",r.get(e.fromCluster),JSON.stringify(u,null,2)),u=Ut(u.reverse(),r.get(e.fromCluster).node).reverse(),d=!0);let g=u.filter((t=>!Number.isNaN(t.y)));g=Gt(g);let y=g[g.length-1];if(g.length>1){y=g[g.length-1];const t=g[g.length-2],e=(y.x-t.x)/2,r=(y.y-t.y)/2,i={x:t.x+e,y:t.y+r};g.splice(-1,0,i)}let m=l.qrM;e.curve&&(m=e.curve);const{x,y:b}=(0,n.R)(e),k=(0,l.n8j)().x(x).y(b).curve(m);let C,w;switch(e.thickness){case"normal":default:C="edge-thickness-normal";break;case"thick":C="edge-thickness-thick";break;case"invisible":C="edge-thickness-invisible"}switch(e.pattern){case"solid":default:C+=" edge-pattern-solid";break;case"dotted":C+=" edge-pattern-dotted";break;case"dashed":C+=" edge-pattern-dashed"}let _=k(g);const v=Array.isArray(e.style)?e.style:[e.style];if("handDrawn"===e.look){const r=dt(t);Object.assign([],g);const i=r.path(_,{roughness:.3,seed:c});C+=" transition",w=(0,l.Ltv)(i).select("path").attr("id",e.id).attr("class"," "+C+(e.classes?" "+e.classes:"")).attr("style",v?v.reduce(((t,e)=>t+";"+e),""):"");let n=w.attr("d");w.attr("d",n),t.node().appendChild(w.node())}else w=t.append("path").attr("d",_).attr("id",e.id).attr("class"," "+C+(e.classes?" "+e.classes:"")).attr("style",v?v.reduce(((t,e)=>t+";"+e),""):"");let S="";((0,s.D7)().flowchart.arrowMarkerAbsolute||(0,s.D7)().state.arrowMarkerAbsolute)&&(S=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,S=S.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),s.Rm.info("arrowTypeStart",e.arrowTypeStart),s.Rm.info("arrowTypeEnd",e.arrowTypeEnd),Et(w,e,S,h,i);let T={};return d&&(T.updatedPath=u),T.originalPath=e.points,T}),"insertEdge"),Zt=(0,s.K2)(((t,e,r,i)=>{e.forEach((e=>{Xt[e](t,r,i)}))}),"insertMarkers"),Xt={extension:(0,s.K2)(((t,e,r)=>{s.Rm.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")}),"extension"),composition:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"composition"),aggregation:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"aggregation"),dependency:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"dependency"),lollipop:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)}),"lollipop"),point:(0,s.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"point"),circle:(0,s.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"circle"),cross:(0,s.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")}),"cross"),barb:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}),"barb")},Qt=Zt,Jt=(0,s.K2)((async(t,e,r)=>{let i;const n=e.useHtmlLabels||(0,s._3)((0,s.D7)().flowchart.htmlLabels);i=r||"node default";const h=t.insert("g").attr("class",i).attr("id",e.domId||e.id),c=h.insert("g").attr("class","label").attr("style",e.labelStyle);let u,d;u=void 0===e.label?"":"string"==typeof e.label?e.label:e.label[0],d=await(0,o.GZ)(c,(0,s.jZ)((0,a.Sm)(u),(0,s.D7)()),{useHtmlLabels:n,width:e.width||(0,s.D7)().flowchart.wrappingWidth,cssClasses:"markdown-node-label",style:e.labelStyle,addSvgBackground:!!e.icon||!!e.img});let p=d.getBBox();const f=e.padding/2;if((0,s._3)((0,s.D7)().flowchart.htmlLabels)){const t=d.children[0],e=(0,l.Ltv)(d),r=t.getElementsByTagName("img");if(r){const t=""===u.replace(/]*>/g,"").trim();await Promise.all([...r].map((e=>new Promise((r=>{function i(){if(e.style.display="flex",e.style.flexDirection="column",t){const t=(0,s.D7)().fontSize?(0,s.D7)().fontSize:window.getComputedStyle(document.body).fontSize,r=5,i=parseInt(t,10)*r+"px";e.style.minWidth=i,e.style.maxWidth=i}else e.style.width="100%";r(e)}(0,s.K2)(i,"setupImage"),setTimeout((()=>{e.complete&&i()})),e.addEventListener("error",i),e.addEventListener("load",i)})))))}p=t.getBoundingClientRect(),e.attr("width",p.width),e.attr("height",p.height)}return n?c.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):c.attr("transform","translate(0, "+-p.height/2+")"),e.centerLabel&&c.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),c.insert("rect",":first-child"),{shapeSvg:h,bbox:p,halfPadding:f,label:c}}),"labelHelper"),te=(0,s.K2)(((t,e)=>{const r=e.node().getBBox();t.width=r.width,t.height=r.height}),"updateNodeBounds"),ee=(0,s.K2)(((t,e)=>("handDrawn"===t.look?"rough-node":"node")+" "+t.cssClasses+" "+(e||"")),"getNodeClasses");function re(t){const e=t.map(((t,e)=>`${0===e?"M":"L"}${t.x},${t.y}`));return e.push("Z"),e.join(" ")}function ie(t,e,r,i,n,o){const a=[],s=r-t,l=i-e,h=s/o,c=2*Math.PI/h,u=e+l/2;for(let e=0;e<=50;e++){const r=t+e/50*s,i=u+n*Math.sin(c*(r-t));a.push({x:r,y:i})}return a}function ne(t,e,r,i,n,o){const a=[],s=n*Math.PI/180,l=(o*Math.PI/180-s)/(i-1);for(let n=0;n0}(0,s.K2)(ue,"intersectLine"),(0,s.K2)(de,"sameSign");var pe=ue;function fe(t,e,r){let i=t.x,n=t.y,o=[],a=Number.POSITIVE_INFINITY,s=Number.POSITIVE_INFINITY;"function"==typeof e.forEach?e.forEach((function(t){a=Math.min(a,t.x),s=Math.min(s,t.y)})):(a=Math.min(a,e.x),s=Math.min(s,e.y));let l=i-t.width/2-a,h=n-t.height/2-s;for(let i=0;i1&&o.sort((function(t,e){let i=t.x-r.x,n=t.y-r.y,o=Math.sqrt(i*i+n*n),a=e.x-r.x,s=e.y-r.y,l=Math.sqrt(a*a+s*s);return o{const{labelStyles:i,nodeStyles:n}=_t(e);e.labelStyle=i;const{shapeSvg:o,bbox:a}=await Jt(t,e,ee(e)),s=Math.max(a.width+2*r.labelPaddingX,e?.width||0),l=Math.max(a.height+2*r.labelPaddingY,e?.height||0),h=-s/2,c=-l/2;let u,{rx:d,ry:p}=e;const{cssStyles:f}=e;if(r?.rx&&r.ry&&(d=r.rx,p=r.ry),"handDrawn"===e.look){const t=dt(o),r=vt(e,{}),i=d||p?t.path(bt(h,c,s,l,d||0),r):t.rectangle(h,c,s,l,r);u=o.insert((()=>i),":first-child"),u.attr("class","basic label-container").attr("style",f)}else u=o.insert("rect",":first-child"),u.attr("class","basic label-container").attr("style",n).attr("rx",d).attr("ry",p).attr("x",h).attr("y",c).attr("width",s).attr("height",l);return te(e,u),e.intersect=function(t){return ge.rect(e,t)},o}),"drawRect"),me=(0,s.K2)((async(t,e)=>ye(t,e,{rx:5,ry:5,classes:"flowchart-node"})),"state"),xe=(0,s.K2)((async(t,e)=>ye(t,e,{rx:5,ry:5,classes:"",labelPaddingX:1*(e?.padding||0),labelPaddingY:1*(e?.padding||0)})),"roundedRect"),be=(0,s.K2)((async(t,e)=>ye(t,e,{rx:0,ry:0,classes:"",labelPaddingX:2*(e?.padding||0),labelPaddingY:1*(e?.padding||0)})),"squareRect"),ke=(0,s.K2)(((t,e,{config:{themeVariables:r}})=>{const{lineColor:i}=r,n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let o;if("handDrawn"===e.look){const t=dt(n).circle(0,0,14,kt(i));o=n.insert((()=>t))}else o=n.insert("circle",":first-child");return o.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),te(e,o),e.intersect=function(t){return ge.circle(e,7,t)},n}),"stateStart"),Ce=(0,s.K2)(((t,e,{config:{themeVariables:r}})=>{const{labelStyles:i,nodeStyles:n}=_t(e);e.labelStyle=i;const{cssStyles:o}=e,{lineColor:a,stateBorder:s,nodeBorder:l}=r,h=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),c=dt(h),u=vt(e,{});"handDrawn"!==e.look&&(u.roughness=0,u.fillStyle="solid");const d=c.circle(0,0,14,{...u,stroke:a,strokeWidth:2}),p=s??l,f=c.circle(0,0,5,{...u,fill:p,stroke:p,strokeWidth:2,fillStyle:"solid"}),g=h.insert((()=>d),":first-child");return g.insert((()=>f)),o&&g.selectAll("path").attr("style",o),n&&g.selectAll("path").attr("style",n),te(e,g),e.intersect=function(t){return ge.circle(e,7,t)},h}),"stateEnd"),we=(0,s.K2)(((t,e,{dir:r,config:{state:i,themeVariables:n}})=>{const{nodeStyles:o}=_t(e);e.label="";const a=t.insert("g").attr("class",ee(e)).attr("id",e.domId??e.id),{cssStyles:s}=e;let l=Math.max(70,e?.width??0),h=Math.max(10,e?.height??0);"LR"===r&&(l=Math.max(10,e?.width??0),h=Math.max(70,e?.height??0));const c=-1*l/2,u=-1*h/2,d=dt(a),p=vt(e,{stroke:n.lineColor,fill:n.lineColor});"handDrawn"!==e.look&&(p.roughness=0,p.fillStyle="solid");const f=d.rectangle(c,u,l,h,p),g=a.insert((()=>f),":first-child");s&&"handDrawn"!==e.look&&g.selectAll("path").attr("style",s),o&&"handDrawn"!==e.look&&g.selectAll("path").attr("style",o),te(e,g);const y=i?.padding??0;return e.width&&e.height&&(e.width+=y/2||0,e.height+=y/2||0),e.intersect=function(t){return ge.rect(e,t)},a}),"forkJoin"),_e=(0,s.K2)(((t,e)=>{const{nodeStyles:r}=_t(e);e.label="";const i=t.insert("g").attr("class",ee(e)).attr("id",e.domId??e.id),{cssStyles:n}=e,o=Math.max(28,e.width??0),a=[{x:0,y:o/2},{x:o/2,y:0},{x:0,y:-o/2},{x:-o/2,y:0}],s=dt(i),l=vt(e,{});"handDrawn"!==e.look&&(l.roughness=0,l.fillStyle="solid");const h=re(a),c=s.path(h,l),u=i.insert((()=>c),":first-child");return n&&"handDrawn"!==e.look&&u.selectAll("path").attr("style",n),r&&"handDrawn"!==e.look&&u.selectAll("path").attr("style",r),e.width=28,e.height=28,e.intersect=function(t){return ge.polygon(e,a,t)},i}),"choice"),ve=(0,s.K2)((async(t,e,{config:{themeVariables:r}})=>{const{labelStyles:i,nodeStyles:n}=_t(e);e.labelStyle=i;const{shapeSvg:o,bbox:a}=await Jt(t,e,ee(e)),s=Math.max(a.width+2*(e.padding??0),e?.width??0),l=Math.max(a.height+2*(e.padding??0),e?.height??0),h=-s/2,c=-l/2,{cssStyles:u}=e;e.useHtmlLabels||(e.centerLabel=!0);const d=dt(o),p=vt(e,{fill:r.noteBkgColor,stroke:r.noteBorderColor});"handDrawn"!==e.look&&(p.roughness=0,p.fillStyle="solid");const f=d.rectangle(h,c,s,l,p),g=o.insert((()=>f),":first-child");return g.attr("class","basic label-container"),u&&"handDrawn"!==e.look&&g.selectAll("path").attr("style",u),n&&"handDrawn"!==e.look&&g.selectAll("path").attr("style",n),te(e,g),e.intersect=function(t){return ge.rect(e,t)},o}),"note"),Se=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=o.height+e.padding,s=o.width+a/4+e.padding;let l;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=bt(-s/2,-a/2,s,a,a/2),o=t.path(i,r);l=n.insert((()=>o),":first-child"),l.attr("class","basic label-container").attr("style",h)}else l=n.insert("rect",":first-child"),l.attr("class","basic label-container").attr("style",i).attr("rx",a/2).attr("ry",a/2).attr("x",-s/2).attr("y",-a/2).attr("width",s).attr("height",a);return te(e,l),e.intersect=function(t){return ge.rect(e,t)},n}),"stadium"),Te=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);let n;e.labelStyle=r,n=e.cssClasses?"node "+e.cssClasses:"node default";const o=t.insert("g").attr("class",n).attr("id",e.domId||e.id),a=o.insert("g"),h=o.insert("g").attr("class","label").attr("style",i),c=e.description,u=e.label,d=h.node().appendChild(await xt(u,e.labelStyle,!0,!0));let p={width:0,height:0};if((0,s._3)((0,s.D7)()?.flowchart?.htmlLabels)){const t=d.children[0],e=(0,l.Ltv)(d);p=t.getBoundingClientRect(),e.attr("width",p.width),e.attr("height",p.height)}s.Rm.info("Text 2",c);const f=c||[],g=d.getBBox(),y=h.node().appendChild(await xt(f.join?f.join("
"):f,e.labelStyle,!0,!0)),m=y.children[0],x=(0,l.Ltv)(y);p=m.getBoundingClientRect(),x.attr("width",p.width),x.attr("height",p.height);const b=(e.padding||0)/2;(0,l.Ltv)(y).attr("transform","translate( "+(p.width>g.width?0:(g.width-p.width)/2)+", "+(g.height+b+5)+")"),(0,l.Ltv)(d).attr("transform","translate( "+(p.width(s.Rm.debug("Rough node insert CXC",i),n)),":first-child"),v=o.insert((()=>(s.Rm.debug("Rough node insert CXC",i),i)),":first-child")}else v=a.insert("rect",":first-child"),S=a.insert("line"),v.attr("class","outer title-state").attr("style",i).attr("x",-p.width/2-b).attr("y",-p.height/2-b).attr("width",p.width+(e.padding||0)).attr("height",p.height+(e.padding||0)),S.attr("class","divider").attr("x1",-p.width/2-b).attr("x2",p.width/2+b).attr("y1",-p.height/2-b+g.height+b).attr("y2",-p.height/2-b+g.height+b);return te(e,v),e.intersect=function(t){return ge.rect(e,t)},o}),"rectWithTitle");function Ae(t,e,r,i){return t.insert("polygon",":first-child").attr("points",i.map((function(t){return t.x+","+t.y})).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}(0,s.K2)(Ae,"insertPolygonShape");var Me=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=(e?.padding||0)/2,s=o.width+e.padding,l=o.height+e.padding,h=-o.width/2-a,c=-o.height/2-a,u=[{x:0,y:0},{x:s,y:0},{x:s,y:-l},{x:0,y:-l},{x:0,y:0},{x:-8,y:0},{x:s+8,y:0},{x:s+8,y:-l},{x:-8,y:-l},{x:-8,y:0}];if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=t.rectangle(h-8,c,s+16,l,r),o=t.line(h,c,h,c+l,r),a=t.line(h+s,c,h+s,c+l,r);n.insert((()=>o),":first-child"),n.insert((()=>a),":first-child");const u=n.insert((()=>i),":first-child"),{cssStyles:d}=e;u.attr("class","basic label-container").attr("style",d),te(e,u)}else{const t=Ae(n,s,l,u);i&&t.attr("style",i),te(e,t)}return e.intersect=function(t){return ge.polygon(e,u,t)},n}),"subroutine"),Be=(0,s.K2)(((t,e,r,i,n,o)=>[`M${t},${e+o}`,`a${n},${o} 0,0,0 ${r},0`,`a${n},${o} 0,0,0 ${-r},0`,`l0,${i}`,`a${n},${o} 0,0,0 ${r},0`,"l0,"+-i].join(" ")),"createCylinderPathD"),Le=(0,s.K2)(((t,e,r,i,n,o)=>[`M${t},${e+o}`,`M${t+r},${e+o}`,`a${n},${o} 0,0,0 ${-r},0`,`l0,${i}`,`a${n},${o} 0,0,0 ${r},0`,"l0,"+-i].join(" ")),"createOuterCylinderPathD"),Fe=(0,s.K2)(((t,e,r,i,n,o)=>[`M${t-r/2},${-i/2}`,`a${n},${o} 0,0,0 ${r},0`].join(" ")),"createInnerCylinderPathD"),$e=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=Math.max(o.width+e.padding,e.width??0),l=s/2,h=l/(2.5+s/50),c=Math.max(o.height+h+e.padding,e.height??0);let u;const{cssStyles:d}=e;if("handDrawn"===e.look){const t=dt(n),r=Le(0,0,s,c,l,h),i=Fe(0,h,s,c,l,h),o=t.path(r,vt(e,{})),a=t.path(i,vt(e,{fill:"none"}));u=n.insert((()=>a),":first-child"),u=n.insert((()=>o),":first-child"),u.attr("class","basic label-container"),d&&u.attr("style",d)}else{const t=Be(0,0,s,c,l,h);u=n.insert("path",":first-child").attr("d",t).attr("class","basic label-container").attr("style",d).attr("style",i)}return u.attr("label-offset-y",h),u.attr("transform",`translate(${-s/2}, ${-(c/2+h)})`),te(e,u),a.attr("transform",`translate(${-o.width/2-(o.x-(o.left??0))}, ${-o.height/2+(e.padding??0)/1.5-(o.y-(o.top??0))})`),e.intersect=function(t){const r=ge.rect(e,t),i=r.x-(e.x??0);if(0!=l&&(Math.abs(i)<(e.width??0)/2||Math.abs(i)==(e.width??0)/2&&Math.abs(r.y-(e.y??0))>(e.height??0)/2-h)){let n=h*h*(1-i*i/(l*l));n>0&&(n=Math.sqrt(n)),n=h-n,t.y-(e.y??0)>0&&(n=-n),r.y+=n}return r},n}),"cylinder"),Ee=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,halfPadding:a}=await Jt(t,e,ee(e)),l=o.width/2+a;let h;const{cssStyles:c}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=t.circle(0,0,2*l,r);h=n.insert((()=>i),":first-child"),h.attr("class","basic label-container").attr("style",c)}else h=n.insert("circle",":first-child").attr("class","basic label-container").attr("style",i).attr("r",l).attr("cx",0).attr("cy",0);return te(e,h),e.intersect=function(t){return s.Rm.info("Circle intersect",e,l,t),ge.circle(e,l,t)},n}),"circle"),De=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,halfPadding:a}=await Jt(t,e,ee(e)),l=o.width/2+a+5,h=o.width/2+a;let c;const{cssStyles:u}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{roughness:.2,strokeWidth:2.5}),i=vt(e,{roughness:.2,strokeWidth:1.5}),o=t.circle(0,0,2*l,r),a=t.circle(0,0,2*h,i);c=n.insert("g",":first-child"),c.attr("class",e.cssClasses).attr("style",u),c.node()?.appendChild(o),c.node()?.appendChild(a)}else{c=n.insert("g",":first-child");const t=c.insert("circle",":first-child"),e=c.insert("circle");c.attr("class","basic label-container").attr("style",i),t.attr("class","outer-circle").attr("style",i).attr("r",l).attr("cx",0).attr("cy",0),e.attr("class","inner-circle").attr("style",i).attr("r",h).attr("cx",0).attr("cy",0)}return te(e,c),e.intersect=function(t){return s.Rm.info("DoubleCircle intersect",e,l,t),ge.circle(e,l,t)},n}),"doublecircle"),Oe=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=-Math.max(o.width+(e.padding??0),e?.width??0)/2,l=-Math.max(o.height+(e.padding??0),e?.height??0)/2,h=l/2,c=[{x:s+h,y:l},{x:s,y:0},{x:s+h,y:-l},{x:-s,y:-l},{x:-s,y:l}],{cssStyles:u}=e,d=dt(n),p=vt(e,{});"handDrawn"!==e.look&&(p.roughness=0,p.fillStyle="solid");const f=re(c),g=d.path(f,p),y=n.insert((()=>g),":first-child");return y.attr("class","basic label-container"),u&&"handDrawn"!==e.look&&y.selectAll("path").attr("style",u),i&&"handDrawn"!==e.look&&y.selectAll("path").attr("style",i),y.attr("transform",`translate(${-h/2},0)`),a.attr("transform",`translate(${-h/2-o.width/2-(o.x-(o.left??0))}, ${-o.height/2-(o.y-(o.top??0))})`),te(e,y),e.intersect=function(t){return ge.polygon(e,c,t)},n}),"rect_left_inv_arrow"),Ie=(0,s.K2)(((t,e,r)=>[`M${t+r/2},${e}`,`L${t+r},${e-r/2}`,`L${t+r/2},${e-r}`,`L${t},${e-r/2}`,"Z"].join(" ")),"createDecisionBoxPathD"),Re=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=o.width+e.padding+(o.height+e.padding),l=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}];let h;const{cssStyles:c}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=Ie(0,0,a),o=t.path(i,r);h=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${a/2})`),c&&h.attr("style",c)}else h=Ae(n,a,a,l);return i&&h.attr("style",i),te(e,h),e.intersect=function(t){return s.Rm.debug("APA12 Intersect called SPLIT\npoint:",t,"\nnode:\n",e,"\nres:",ge.polygon(e,l,t)),ge.polygon(e,l,t)},n}),"question"),Pe=(0,s.K2)(((t,e,r,i,n)=>[`M${t+n},${e}`,`L${t+r-n},${e}`,`L${t+r},${e-i/2}`,`L${t+r-n},${e-i}`,`L${t+n},${e-i}`,`L${t},${e-i/2}`,"Z"].join(" ")),"createHexagonPathD"),ze=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=o.height+e.padding,s=a/4,l=o.width+2*s+e.padding,h=[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}];let c;const{cssStyles:u}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=Pe(0,0,l,a,s),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-l/2}, ${a/2})`),u&&c.attr("style",u)}else c=Ae(n,l,a,h);return i&&c.attr("style",i),e.width=l,e.height=a,te(e,c),e.intersect=function(t){return ge.polygon(e,h,t)},n}),"hexagon");async function Ke(t,e){const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=Math.max(o.width+e.padding,e?.width||0),s=Math.max(o.height+e.padding,e?.height||0),l=-a/2,h=-s/2,c=n.insert("rect",":first-child");return c.attr("class","text").attr("style",i).attr("rx",0).attr("ry",0).attr("x",l).attr("y",h).attr("width",a).attr("height",s),te(e,c),e.intersect=function(t){return ge.rect(e,t)},n}async function qe(t,e){const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=o.height+e.padding,s=o.width+e.padding+12,l=-a,h=[{x:12,y:l},{x:s,y:l},{x:s,y:0},{x:0,y:0},{x:0,y:l+12},{x:12,y:l}];let c;const{cssStyles:u}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=re(h),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-s/2}, ${a/2})`),u&&c.attr("style",u)}else c=Ae(n,s,a,h);return i&&c.attr("style",i),te(e,c),e.intersect=function(t){return ge.polygon(e,h,t)},n}(0,s.K2)(Ke,"text"),(0,s.K2)(qe,"card");var Ne=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=e?.padding??0,l=Math.max(o.width+2*(e.padding??0),e?.width??0),h=Math.max(o.height+2*(e.padding??0),e?.height??0),c=-o.width/2-s,u=-o.height/2-s,{cssStyles:d}=e,p=dt(n),f=vt(e,{});"handDrawn"!==e.look&&(f.roughness=0,f.fillStyle="solid");const g=[{x:c,y:u},{x:c+l+8,y:u},{x:c+l+8,y:u+h},{x:c-8,y:u+h},{x:c-8,y:u},{x:c,y:u},{x:c,y:u+h}],y=p.polygon(g.map((t=>[t.x,t.y])),f),m=n.insert((()=>y),":first-child");return m.attr("class","basic label-container").attr("style",d),i&&"handDrawn"!==e.look&&m.selectAll("path").attr("style",i),d&&"handDrawn"!==e.look&&m.selectAll("path").attr("style",i),a.attr("transform",`translate(${-l/2+4+(e.padding??0)-(o.x-(o.left??0))},${-h/2+(e.padding??0)-(o.y-(o.top??0))})`),te(e,m),e.intersect=function(t){return ge.rect(e,t)},n}),"shadedProcess"),je=(0,s.K2)(((t,e)=>{const{labelStyles:r}=_t(e);e.labelStyle=r;const i=ee(e);let n=i;i||(n="anchor");const o=t.insert("g").attr("class",n).attr("id",e.domId||e.id),{cssStyles:a}=e,l=dt(o),h=vt(e,{fill:"black",stroke:"none",fillStyle:"solid"});"handDrawn"!==e.look&&(h.roughness=0);const c=l.circle(0,0,2,h),u=o.insert((()=>c),":first-child");return u.attr("class","anchor").attr("style",a),te(e,u),e.intersect=function(t){return s.Rm.info("Circle intersect",e,1,t),ge.circle(e,1,t)},o}),"anchor"),We=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=Math.max(o.width+(e.padding??0),e?.width??0),s=Math.max(o.height+(e.padding??0),e?.height??0),l=[{x:-3*s/6,y:0},{x:a,y:0},{x:a+3*s/6,y:-s},{x:0,y:-s}];let h;const{cssStyles:c}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=re(l),o=t.path(i,r);h=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${s/2})`),c&&h.attr("style",c)}else h=Ae(n,a,s,l);return i&&h.attr("style",i),e.width=a,e.height=s,te(e,h),e.intersect=function(t){return ge.polygon(e,l,t)},n}),"lean_right"),Ue=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=Math.max(o.width+(e.padding??0),e?.width??0),s=Math.max(o.height+(e.padding??0),e?.height??0),l=[{x:0,y:0},{x:a+3*s/6,y:0},{x:a,y:-s},{x:-3*s/6,y:-s}];let h;const{cssStyles:c}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=re(l),o=t.path(i,r);h=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${s/2})`),c&&h.attr("style",c)}else h=Ae(n,a,s,l);return i&&h.attr("style",i),e.width=a,e.height=s,te(e,h),e.intersect=function(t){return ge.polygon(e,l,t)},n}),"lean_left"),He=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=o.width+e.padding,s=o.height+e.padding,l=[{x:-3*s/6,y:0},{x:a+3*s/6,y:0},{x:a,y:-s},{x:0,y:-s}];let h;const{cssStyles:c}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=re(l),o=t.path(i,r);h=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${s/2})`),c&&h.attr("style",c)}else h=Ae(n,a,s,l);return i&&h.attr("style",i),e.width=a,e.height=s,te(e,h),e.intersect=function(t){return ge.polygon(e,l,t)},n}),"trapezoid"),Ye=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=Math.max(o.width+2*(e.padding??0),e?.width??0),s=Math.max(o.height+2*(e.padding??0),e?.height??0),l=[{x:0,y:0},{x:a,y:0},{x:a+3*s/6,y:-s},{x:-3*s/6,y:-s}];let h;const{cssStyles:c}=e;if("handDrawn"===e.look){const t=dt(n),r=vt(e,{}),i=re(l),o=t.path(i,r);h=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${s/2})`),c&&h.attr("style",c)}else h=Ae(n,a,s,l);return i&&h.attr("style",i),e.width=a,e.height=s,te(e,h),e.intersect=function(t){return ge.polygon(e,l,t)},n}),"inv_trapezoid"),Ge=(0,s.K2)((async(t,e)=>{const{shapeSvg:r,bbox:i,label:n}=await Jt(t,e,"label"),o=r.insert("rect",":first-child");return o.attr("width",.1).attr("height",.1),r.attr("class","label edgeLabel"),n.attr("transform",`translate(${-i.width/2-(i.x-(i.left??0))}, ${-i.height/2-(i.y-(i.top??0))})`),te(e,o),e.intersect=function(t){return ge.rect(e,t)},r}),"labelRect"),Ve=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),l=(0,s._3)((0,s.D7)().flowchart?.htmlLabels),h=o.width+(e.padding??0),c=h+o.height,u=h+o.height,d=[{x:0,y:0},{x:u,y:0},{x:u/2,y:-c}],{cssStyles:p}=e,f=dt(n),g=vt(e,{});"handDrawn"!==e.look&&(g.roughness=0,g.fillStyle="solid");const y=re(d),m=f.path(y,g),x=n.insert((()=>m),":first-child").attr("transform",`translate(${-c/2}, ${c/2})`);return p&&"handDrawn"!==e.look&&x.selectChildren("path").attr("style",p),i&&"handDrawn"!==e.look&&x.selectChildren("path").attr("style",i),e.width=h,e.height=c,te(e,x),a.attr("transform",`translate(${-o.width/2-(o.x-(o.left??0))}, ${c/2-(o.height+(e.padding??0)/(l?2:1)-(o.y-(o.top??0)))})`),e.intersect=function(t){return s.Rm.info("Triangle intersect",e,d,t),ge.polygon(e,d,t)},n}),"triangle"),Ze=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=Math.max(80,o.width+2*(e.padding??0),e?.width??0),l=Math.max(50,o.height+2*(e.padding??0),e?.height??0),h=l/2,{cssStyles:c}=e,u=dt(n),d=vt(e,{});"handDrawn"!==e.look&&(d.roughness=0,d.fillStyle="solid");const p=[{x:-a/2,y:-l/2},{x:a/2-h,y:-l/2},...ne(-a/2+h,0,h,50,90,270),{x:a/2-h,y:l/2},{x:-a/2,y:l/2}],f=re(p),g=u.path(f,d),y=n.insert((()=>g),":first-child");return y.attr("class","basic label-container"),c&&"handDrawn"!==e.look&&y.selectChildren("path").attr("style",c),i&&"handDrawn"!==e.look&&y.selectChildren("path").attr("style",i),te(e,y),e.intersect=function(t){return s.Rm.info("Pill intersect",e,{radius:h,point:t}),ge.polygon(e,p,t)},n}),"halfRoundedRectangle"),Xe=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=Math.max(80,1.25*(o.width+2*(e.padding??0)),e?.width??0),s=Math.max(20,o.height+2*(e.padding??0),e?.height??0),l=s/2,{cssStyles:h}=e,c=dt(n),u=vt(e,{});"handDrawn"!==e.look&&(u.roughness=0,u.fillStyle="solid");const d=a-l,p=s/4,f=[{x:d,y:0},{x:p,y:0},{x:0,y:s/2},{x:p,y:s},{x:d,y:s},...ne(-d,-s/2,l,50,270,90)],g=re(f),y=c.path(g,u),m=n.insert((()=>y),":first-child");return m.attr("class","basic label-container"),h&&"handDrawn"!==e.look&&m.selectChildren("path").attr("style",h),i&&"handDrawn"!==e.look&&m.selectChildren("path").attr("style",i),m.attr("transform",`translate(${-a/2}, ${-s/2})`),te(e,m),e.intersect=function(t){return ge.polygon(e,f,t)},n}),"curvedTrapezoid"),Qe=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=Math.max(o.width+2*(e.padding??0),e?.width??0),l=Math.max(o.height+2*(e.padding??0),e?.height??0),h=-s/2,c=-l/2,{cssStyles:u}=e,d=dt(n),p=vt(e,{});"handDrawn"!==e.look&&(p.roughness=0,p.fillStyle="solid");const f=[{x:h,y:c},{x:h,y:c+l},{x:h+s,y:c+l},{x:h+s,y:c-l/2}],g=re(f),y=d.path(g,p),m=n.insert((()=>y),":first-child");return m.attr("class","basic label-container"),u&&"handDrawn"!==e.look&&m.selectChildren("path").attr("style",u),i&&"handDrawn"!==e.look&&m.selectChildren("path").attr("style",i),m.attr("transform",`translate(0, ${l/4})`),a.attr("transform",`translate(${-s/2+(e.padding??0)-(o.x-(o.left??0))}, ${-l/4+(e.padding??0)-(o.y-(o.top??0))})`),te(e,m),e.intersect=function(t){return ge.polygon(e,f,t)},n}),"slopedRect");function Je(t,e,r,i,n,o,a){const s=(t+r)/2,l=(e+i)/2,h=Math.atan2(i-e,r-t),c=(r-t)/2/n,u=(i-e)/2/o,d=Math.sqrt(c**2+u**2);if(d>1)throw new Error("The given radii are too small to create an arc between the points.");const p=Math.sqrt(1-d**2),f=s+p*o*Math.sin(h)*(a?-1:1),g=l-p*n*Math.cos(h)*(a?-1:1),y=Math.atan2((e-g)/o,(t-f)/n);let m=Math.atan2((i-g)/o,(r-f)/n)-y;a&&m<0&&(m+=2*Math.PI),!a&&m>0&&(m-=2*Math.PI);const x=[];for(let t=0;t<20;t++){const e=y+t/19*m,r=f+n*Math.cos(e),i=g+o*Math.sin(e);x.push({x:r,y:i})}return x}(0,s.K2)(Je,"generateArcPoints");var tr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=o.width+e.padding+20,s=o.height+e.padding,l=s/2,h=l/(2.5+s/50),{cssStyles:c}=e,u=[{x:a/2,y:-s/2},{x:-a/2,y:-s/2},...Je(-a/2,-s/2,-a/2,s/2,h,l,!1),{x:a/2,y:s/2},...Je(a/2,s/2,a/2,-s/2,h,l,!0)],d=dt(n),p=vt(e,{});"handDrawn"!==e.look&&(p.roughness=0,p.fillStyle="solid");const f=re(u),g=d.path(f,p),y=n.insert((()=>g),":first-child");return y.attr("class","basic label-container"),c&&"handDrawn"!==e.look&&y.selectAll("path").attr("style",c),i&&"handDrawn"!==e.look&&y.selectAll("path").attr("style",i),y.attr("transform",`translate(${h/2}, 0)`),te(e,y),e.intersect=function(t){return ge.polygon(e,u,t)},n}),"bowTieRect"),er=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=o.width+e.padding,l=o.height+e.padding,h=.2*l,c=-s/2,u=-l/2-h/2,{cssStyles:d}=e,p=dt(n),f=vt(e,{});"handDrawn"!==e.look&&(f.roughness=0,f.fillStyle="solid");const g=[{x:c,y:u+h},{x:-c,y:u+h},{x:-c,y:-u},{x:c,y:-u},{x:c,y:u},{x:-c,y:u},{x:-c,y:u+h}],y=p.polygon(g.map((t=>[t.x,t.y])),f),m=n.insert((()=>y),":first-child");return m.attr("class","basic label-container"),d&&"handDrawn"!==e.look&&m.selectAll("path").attr("style",d),i&&"handDrawn"!==e.look&&m.selectAll("path").attr("style",i),a.attr("transform",`translate(${c+(e.padding??0)/2-(o.x-(o.left??0))}, ${u+h+(e.padding??0)/2-(o.y-(o.top??0))})`),te(e,m),e.intersect=function(t){return ge.rect(e,t)},n}),"dividedRectangle");function rr(t){const e=Math.cos(Math.PI/4),r=Math.sin(Math.PI/4),i=2*t;return`M ${-i/2*e},${i/2*r} L ${i/2*e},${-i/2*r}\n M ${i/2*e},${i/2*r} L ${-i/2*e},${-i/2*r}`}(0,s.K2)(rr,"createLine");var ir=(0,s.K2)(((t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r,e.label="";const n=t.insert("g").attr("class",ee(e)).attr("id",e.domId??e.id),o=Math.max(30,e?.width??0),{cssStyles:a}=e,l=dt(n),h=vt(e,{});"handDrawn"!==e.look&&(h.roughness=0,h.fillStyle="solid");const c=l.circle(0,0,2*o,h),u=rr(o),d=l.path(u,h),p=n.insert((()=>c),":first-child");return p.insert((()=>d)),a&&"handDrawn"!==e.look&&p.selectAll("path").attr("style",a),i&&"handDrawn"!==e.look&&p.selectAll("path").attr("style",i),te(e,p),e.intersect=function(t){return s.Rm.info("crossedCircle intersect",e,{radius:o,point:t}),ge.circle(e,o,t)},n}),"crossedCircle"),nr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=Math.max(o.width+2*(e.padding??0),e?.width??0),s=Math.max(o.height+2*(e.padding??0),e?.height??0),l=a/s;let h=a,c=s;h>c*l?c=h/l:h=c*l,h=Math.max(h,100),c=Math.max(c,50);const u=Math.min(.2*c,c/4),d=c+2*u,{cssStyles:p}=e,f=dt(n),g=vt(e,{});"handDrawn"!==e.look&&(g.roughness=0,g.fillStyle="solid");const y=[{x:-h/2,y:d/2},...ie(-h/2,d/2,h/2,d/2,u,1),{x:h/2,y:-d/2},...ie(h/2,-d/2,-h/2,-d/2,u,-1)],m=re(y),x=f.path(m,g),b=n.insert((()=>x),":first-child");return b.attr("class","basic label-container"),p&&"handDrawn"!==e.look&&b.selectAll("path").attr("style",p),i&&"handDrawn"!==e.look&&b.selectAll("path").attr("style",i),te(e,b),e.intersect=function(t){return ge.polygon(e,y,t)},n}),"waveRectangle"),or=(0,s.K2)(((t,e,r,i,n,o)=>`M${t},${e}\n a${n},${o} 0,0,1 0,${-i}\n l${r},0\n a${n},${o} 0,0,1 0,${i}\n M${r},${-i}\n a${n},${o} 0,0,0 0,${i}\n l${-r},0`),"createCylinderPathD"),ar=(0,s.K2)(((t,e,r,i,n,o)=>[`M${t},${e}`,`M${t+r},${e}`,`a${n},${o} 0,0,0 0,${-i}`,`l${-r},0`,`a${n},${o} 0,0,0 0,${i}`,`l${r},0`].join(" ")),"createOuterCylinderPathD"),sr=(0,s.K2)(((t,e,r,i,n,o)=>[`M${t+r/2},${-i/2}`,`a${n},${o} 0,0,0 0,${i}`].join(" ")),"createInnerCylinderPathD"),lr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a,halfPadding:s}=await Jt(t,e,ee(e)),l="neo"===e.look?2*s:s,h=o.height+l,c=h/2,u=c/(2.5+h/50),d=o.width+u+l,{cssStyles:p}=e;let f;if("handDrawn"===e.look){const t=dt(n),r=ar(0,0,d,h,u,c),i=sr(0,0,d,h,u,c),o=t.path(r,vt(e,{})),a=t.path(i,vt(e,{fill:"none"}));f=n.insert((()=>a),":first-child"),f=n.insert((()=>o),":first-child"),f.attr("class","basic label-container"),p&&f.attr("style",p)}else{const t=or(0,0,d,h,u,c);f=n.insert("path",":first-child").attr("d",t).attr("class","basic label-container").attr("style",p).attr("style",i)}return f.attr("class","basic label-container"),p&&"handDrawn"!==e.look&&f.selectAll("path").attr("style",p),i&&"handDrawn"!==e.look&&f.selectAll("path").attr("style",i),f.attr("label-offset-x",u),f.attr("transform",`translate(${-d/2}, ${h/2} )`),a.attr("transform",`translate(${-o.width/2-u-(o.x-(o.left??0))}, ${-o.height/2-(o.y-(o.top??0))})`),te(e,f),e.intersect=function(t){const r=ge.rect(e,t),i=r.y-(e.y??0);if(0!=c&&(Math.abs(i)<(e.height??0)/2||Math.abs(i)==(e.height??0)/2&&Math.abs(r.x-(e.x??0))>(e.width??0)/2-u)){let n=u*u*(1-i*i/(c*c));0!=n&&(n=Math.sqrt(n)),n=u-n,t.x-(e.x??0)>0&&(n=-n),r.x+=n}return r},n}),"tiltedCylinder"),hr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=Math.max(60,o.width+2*(e.padding??0),e?.width??0),s=Math.max(20,o.height+2*(e.padding??0),e?.height??0),{cssStyles:l}=e,h=dt(n),c=vt(e,{});"handDrawn"!==e.look&&(c.roughness=0,c.fillStyle="solid");const u=[{x:-a/2*.8,y:-s/2},{x:a/2*.8,y:-s/2},{x:a/2,y:-s/2*.6},{x:a/2,y:s/2},{x:-a/2,y:s/2},{x:-a/2,y:-s/2*.6}],d=re(u),p=h.path(d,c),f=n.insert((()=>p),":first-child");return f.attr("class","basic label-container"),l&&"handDrawn"!==e.look&&f.selectChildren("path").attr("style",l),i&&"handDrawn"!==e.look&&f.selectChildren("path").attr("style",i),te(e,f),e.intersect=function(t){return ge.polygon(e,u,t)},n}),"trapezoidalPentagon"),cr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),l=o.width+(e.padding??0),h=l+o.height,c=l+o.height,u=[{x:0,y:-h},{x:c,y:-h},{x:c/2,y:0}],{cssStyles:d}=e,p=dt(n),f=vt(e,{});"handDrawn"!==e.look&&(f.roughness=0,f.fillStyle="solid");const g=re(u),y=p.path(g,f),m=n.insert((()=>y),":first-child").attr("transform",`translate(${-h/2}, ${h/2})`);return d&&"handDrawn"!==e.look&&m.selectChildren("path").attr("style",d),i&&"handDrawn"!==e.look&&m.selectChildren("path").attr("style",i),e.width=l,e.height=h,te(e,m),a.attr("transform",`translate(${-o.width/2-(o.x-(o.left??0))}, ${-h/2+(e.padding??0)/2+(o.y-(o.top??0))})`),e.intersect=function(t){return s.Rm.info("Triangle intersect",e,u,t),ge.polygon(e,u,t)},n}),"flippedTriangle"),ur=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.label="",e.labelStyle=r;const{shapeSvg:n}=await Jt(t,e,ee(e)),o=Math.max(30,e?.width??0),a=Math.max(30,e?.height??0),{cssStyles:l}=e,h=dt(n),c=vt(e,{});"handDrawn"!==e.look&&(c.roughness=0,c.fillStyle="solid");const u=[{x:0,y:0},{x:o,y:0},{x:0,y:a},{x:o,y:a}],d=re(u),p=h.path(d,c),f=n.insert((()=>p),":first-child");return f.attr("class","basic label-container"),l&&"handDrawn"!==e.look&&f.selectChildren("path").attr("style",l),i&&"handDrawn"!==e.look&&f.selectChildren("path").attr("style",i),f.attr("transform",`translate(${-o/2}, ${-a/2})`),te(e,f),e.intersect=function(t){return s.Rm.info("Pill intersect",e,{points:u}),ge.polygon(e,u,t)},n}),"hourglass"),dr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Jt(t,e,ee(e)),a=Math.max(o.width+2*(e.padding??0),e?.width??0),s=Math.max(o.height+2*(e.padding??0),e?.height??0),l=-a/2,h=-s/2,c=.2*s,u=.2*s,{cssStyles:d}=e,p=dt(n),f=vt(e,{}),g=[{x:l-c/2,y:h},{x:l+a+c/2,y:h},{x:l+a+c/2,y:h+s},{x:l-c/2,y:h+s}],y=[{x:l+a-c/2,y:h+s},{x:l+a+c/2,y:h+s},{x:l+a+c/2,y:h+s-u}];"handDrawn"!==e.look&&(f.roughness=0,f.fillStyle="solid");const m=re(g),x=p.path(m,f),b=re(y),k=p.path(b,{...f,fillStyle:"solid"}),C=n.insert((()=>k),":first-child");return C.insert((()=>x),":first-child"),C.attr("class","basic label-container"),d&&"handDrawn"!==e.look&&C.selectAll("path").attr("style",d),i&&"handDrawn"!==e.look&&C.selectAll("path").attr("style",i),te(e,C),e.intersect=function(t){return ge.polygon(e,g,t)},n}),"taggedRect"),pr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=Math.max(o.width+2*(e.padding??0),e?.width??0),l=Math.max(o.height+2*(e.padding??0),e?.height??0),h=-s/2,c=-l/2,{cssStyles:u}=e,d=dt(n),p=vt(e,{}),f=[{x:h-5,y:c+5},{x:h-5,y:c+l+5},{x:h+s-5,y:c+l+5},{x:h+s-5,y:c+l},{x:h+s,y:c+l},{x:h+s,y:c+l-5},{x:h+s+5,y:c+l-5},{x:h+s+5,y:c-5},{x:h+5,y:c-5},{x:h+5,y:c},{x:h,y:c},{x:h,y:c+5}],g=[{x:h,y:c+5},{x:h+s-5,y:c+5},{x:h+s-5,y:c+l},{x:h+s,y:c+l},{x:h+s,y:c},{x:h,y:c}];"handDrawn"!==e.look&&(p.roughness=0,p.fillStyle="solid");const y=re(f),m=d.path(y,p),x=re(g),b=d.path(x,{...p,fill:"none"}),k=n.insert((()=>b),":first-child");return k.insert((()=>m),":first-child"),k.attr("class","basic label-container"),u&&"handDrawn"!==e.look&&k.selectAll("path").attr("style",u),i&&"handDrawn"!==e.look&&k.selectAll("path").attr("style",i),a.attr("transform",`translate(${-o.width/2-5-(o.x-(o.left??0))}, ${-o.height/2+5-(o.y-(o.top??0))})`),te(e,k),e.intersect=function(t){return ge.polygon(e,f,t)},n}),"multiRect"),fr=(0,s.K2)(((t,e,r,i,n,o,a)=>[`M${t},${e+o}`,`a${n},${o} 0,0,0 ${r},0`,`a${n},${o} 0,0,0 ${-r},0`,`l0,${i}`,`a${n},${o} 0,0,0 ${r},0`,"l0,"+-i,`M${t},${e+o+a}`,`a${n},${o} 0,0,0 ${r},0`].join(" ")),"createCylinderPathD"),gr=(0,s.K2)(((t,e,r,i,n,o,a)=>[`M${t},${e+o}`,`M${t+r},${e+o}`,`a${n},${o} 0,0,0 ${-r},0`,`l0,${i}`,`a${n},${o} 0,0,0 ${r},0`,"l0,"+-i,`M${t},${e+o+a}`,`a${n},${o} 0,0,0 ${r},0`].join(" ")),"createOuterCylinderPathD"),yr=(0,s.K2)(((t,e,r,i,n,o)=>[`M${t-r/2},${-i/2}`,`a${n},${o} 0,0,0 ${r},0`].join(" ")),"createInnerCylinderPathD"),mr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=Math.max(o.width+(e.padding??0),e.width??0),l=s/2,h=l/(2.5+s/50),c=Math.max(o.height+h+(e.padding??0),e.height??0),u=.1*c;let d;const{cssStyles:p}=e;if("handDrawn"===e.look){const t=dt(n),r=gr(0,0,s,c,l,h,u),i=yr(0,h,s,c,l,h),o=vt(e,{}),a=t.path(r,o),f=t.path(i,o);n.insert((()=>f),":first-child").attr("class","line"),d=n.insert((()=>a),":first-child"),d.attr("class","basic label-container"),p&&d.attr("style",p)}else{const t=fr(0,0,s,c,l,h,u);d=n.insert("path",":first-child").attr("d",t).attr("class","basic label-container").attr("style",p).attr("style",i)}return d.attr("label-offset-y",h),d.attr("transform",`translate(${-s/2}, ${-(c/2+h)})`),te(e,d),a.attr("transform",`translate(${-o.width/2-(o.x-(o.left??0))}, ${-o.height/2+h-(o.y-(o.top??0))})`),e.intersect=function(t){const r=ge.rect(e,t),i=r.x-(e.x??0);if(0!=l&&(Math.abs(i)<(e.width??0)/2||Math.abs(i)==(e.width??0)/2&&Math.abs(r.y-(e.y??0))>(e.height??0)/2-h)){let n=h*h*(1-i*i/(l*l));n>0&&(n=Math.sqrt(n)),n=h-n,t.y-(e.y??0)>0&&(n=-n),r.y+=n}return r},n}),"linedCylinder"),xr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=Math.max(o.width+2*(e.padding??0),e?.width??0),l=Math.max(o.height+2*(e.padding??0),e?.height??0),h=l/8,c=l+h,{cssStyles:u}=e,d=70-s,p=d>0?d/2:0,f=dt(n),g=vt(e,{});"handDrawn"!==e.look&&(g.roughness=0,g.fillStyle="solid");const y=[{x:-s/2-p,y:c/2},...ie(-s/2-p,c/2,s/2+p,c/2,h,.8),{x:s/2+p,y:-c/2},{x:-s/2-p,y:-c/2}],m=re(y),x=f.path(m,g),b=n.insert((()=>x),":first-child");return b.attr("class","basic label-container"),u&&"handDrawn"!==e.look&&b.selectAll("path").attr("style",u),i&&"handDrawn"!==e.look&&b.selectAll("path").attr("style",i),b.attr("transform",`translate(0,${-h/2})`),a.attr("transform",`translate(${-s/2+(e.padding??0)-(o.x-(o.left??0))},${-l/2+(e.padding??0)-h-(o.y-(o.top??0))})`),te(e,b),e.intersect=function(t){return ge.polygon(e,y,t)},n}),"waveEdgedRectangle"),br=(0,s.K2)(((t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.label="",e.labelStyle=r;const n=t.insert("g").attr("class",ee(e)).attr("id",e.domId??e.id),{cssStyles:o}=e,a=Math.max(35,e?.width??0),l=Math.max(35,e?.height??0),h=[{x:a,y:0},{x:0,y:l+3.5},{x:a-14,y:l+3.5},{x:0,y:2*l},{x:a,y:l-3.5},{x:14,y:l-3.5}],c=dt(n),u=vt(e,{});"handDrawn"!==e.look&&(u.roughness=0,u.fillStyle="solid");const d=re(h),p=c.path(d,u),f=n.insert((()=>p),":first-child");return o&&"handDrawn"!==e.look&&f.selectAll("path").attr("style",o),i&&"handDrawn"!==e.look&&f.selectAll("path").attr("style",i),f.attr("transform",`translate(-${a/2},${-l})`),te(e,f),e.intersect=function(t){return s.Rm.info("lightningBolt intersect",e,t),ge.polygon(e,h,t)},n}),"lightningBolt"),kr=(0,s.K2)(((t,e,{config:{themeVariables:r}})=>{const{labelStyles:i,nodeStyles:n}=_t(e);e.label="",e.labelStyle=i;const o=t.insert("g").attr("class",ee(e)).attr("id",e.domId??e.id),{cssStyles:a}=e,l=dt(o),{nodeBorder:h}=r,c=vt(e,{fillStyle:"solid"});"handDrawn"!==e.look&&(c.roughness=0);const u=l.circle(0,0,14,c),d=o.insert((()=>u),":first-child");return d.selectAll("path").attr("style",`fill: ${h} !important;`),a&&a.length>0&&"handDrawn"!==e.look&&d.selectAll("path").attr("style",a),n&&"handDrawn"!==e.look&&d.selectAll("path").attr("style",n),te(e,d),e.intersect=function(t){return s.Rm.info("filledCircle intersect",e,{radius:7,point:t}),ge.circle(e,7,t)},o}),"filledCircle"),Cr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=Math.max(o.width+2*(e.padding??0),e?.width??0),l=Math.max(o.height+2*(e.padding??0),e?.height??0),h=l/4,c=l+h,u=-s/2,d=-c/2,{cssStyles:p}=e,f=ie(u-5,d+c+5,u+s-5,d+c+5,h,.8),g=f?.[f.length-1],y=[{x:u-5,y:d+5},{x:u-5,y:d+c+5},...f,{x:u+s-5,y:g.y-5},{x:u+s,y:g.y-5},{x:u+s,y:g.y-10},{x:u+s+5,y:g.y-10},{x:u+s+5,y:d-5},{x:u+5,y:d-5},{x:u+5,y:d},{x:u,y:d},{x:u,y:d+5}],m=[{x:u,y:d+5},{x:u+s-5,y:d+5},{x:u+s-5,y:g.y-5},{x:u+s,y:g.y-5},{x:u+s,y:d},{x:u,y:d}],x=dt(n),b=vt(e,{});"handDrawn"!==e.look&&(b.roughness=0,b.fillStyle="solid");const k=re(y),C=x.path(k,b),w=re(m),_=x.path(w,b),v=n.insert((()=>C),":first-child");return v.insert((()=>_)),v.attr("class","basic label-container"),p&&"handDrawn"!==e.look&&v.selectAll("path").attr("style",p),i&&"handDrawn"!==e.look&&v.selectAll("path").attr("style",i),v.attr("transform",`translate(0,${-h/2})`),a.attr("transform",`translate(${-o.width/2-5-(o.x-(o.left??0))}, ${-o.height/2+5-h/2-(o.y-(o.top??0))})`),te(e,v),e.intersect=function(t){return ge.polygon(e,y,t)},n}),"multiWaveEdgedRectangle"),wr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=Math.max(o.width+2*(e.padding??0),e?.width??0),l=Math.max(o.height+2*(e.padding??0),e?.height??0),h=-s/2,c=-l/2,{cssStyles:u}=e,d=dt(n),p=vt(e,{}),f=[{x:h-5,y:c-5},{x:h-5,y:c+l},{x:h+s,y:c+l},{x:h+s,y:c-5}],g=`M${h-5},${c-5} L${h+s},${c-5} L${h+s},${c+l} L${h-5},${c+l} L${h-5},${c-5}\n M${h-5},${c} L${h+s},${c}\n M${h},${c-5} L${h},${c+l}`;"handDrawn"!==e.look&&(p.roughness=0,p.fillStyle="solid");const y=d.path(g,p),m=n.insert((()=>y),":first-child");return m.attr("transform","translate(2.5, 2.5)"),m.attr("class","basic label-container"),u&&"handDrawn"!==e.look&&m.selectAll("path").attr("style",u),i&&"handDrawn"!==e.look&&m.selectAll("path").attr("style",i),a.attr("transform",`translate(${-o.width/2+2.5-(o.x-(o.left??0))}, ${-o.height/2+2.5-(o.y-(o.top??0))})`),te(e,m),e.intersect=function(t){return ge.polygon(e,f,t)},n}),"windowPane"),_r=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=Math.max(o.width+2*(e.padding??0),e?.width??0),l=Math.max(o.height+2*(e.padding??0),e?.height??0),h=l/4,c=l+h,{cssStyles:u}=e,d=dt(n),p=vt(e,{});"handDrawn"!==e.look&&(p.roughness=0,p.fillStyle="solid");const f=[{x:-s/2-s/2*.1,y:-c/2},{x:-s/2-s/2*.1,y:c/2},...ie(-s/2-s/2*.1,c/2,s/2+s/2*.1,c/2,h,.8),{x:s/2+s/2*.1,y:-c/2},{x:-s/2-s/2*.1,y:-c/2},{x:-s/2,y:-c/2},{x:-s/2,y:c/2*1.1},{x:-s/2,y:-c/2}],g=d.polygon(f.map((t=>[t.x,t.y])),p),y=n.insert((()=>g),":first-child");return y.attr("class","basic label-container"),u&&"handDrawn"!==e.look&&y.selectAll("path").attr("style",u),i&&"handDrawn"!==e.look&&y.selectAll("path").attr("style",i),y.attr("transform",`translate(0,${-h/2})`),a.attr("transform",`translate(${-s/2+(e.padding??0)+s/2*.1/2-(o.x-(o.left??0))},${-l/2+(e.padding??0)-h/2-(o.y-(o.top??0))})`),te(e,y),e.intersect=function(t){return ge.polygon(e,f,t)},n}),"linedWaveEdgedRect"),vr=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=Math.max(o.width+2*(e.padding??0),e?.width??0),l=Math.max(o.height+2*(e.padding??0),e?.height??0),h=l/4,c=.2*s,u=.2*l,d=l+h,{cssStyles:p}=e,f=dt(n),g=vt(e,{});"handDrawn"!==e.look&&(g.roughness=0,g.fillStyle="solid");const y=[{x:-s/2-s/2*.1,y:d/2},...ie(-s/2-s/2*.1,d/2,s/2+s/2*.1,d/2,h,.8),{x:s/2+s/2*.1,y:-d/2},{x:-s/2-s/2*.1,y:-d/2}],m=-s/2+s/2*.1,x=-d/2-.4*u,b=[{x:m+s-c,y:1.4*(x+l)},{x:m+s,y:x+l-u},{x:m+s,y:.9*(x+l)},...ie(m+s,1.3*(x+l),m+s-c,1.5*(x+l),.03*-l,.5)],k=re(y),C=f.path(k,g),w=re(b),_=f.path(w,{...g,fillStyle:"solid"}),v=n.insert((()=>_),":first-child");return v.insert((()=>C),":first-child"),v.attr("class","basic label-container"),p&&"handDrawn"!==e.look&&v.selectAll("path").attr("style",p),i&&"handDrawn"!==e.look&&v.selectAll("path").attr("style",i),v.attr("transform",`translate(0,${-h/2})`),a.attr("transform",`translate(${-s/2+(e.padding??0)-(o.x-(o.left??0))},${-l/2+(e.padding??0)-h/2-(o.y-(o.top??0))})`),te(e,v),e.intersect=function(t){return ge.polygon(e,y,t)},n}),"taggedWaveEdgedRectangle");function Sr(t,e,r,i=100,n=0,o=180){const a=[],s=n*Math.PI/180,l=(o*Math.PI/180-s)/(i-1);for(let n=0;n{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=o.width+(e.padding??0),l=o.height+(e.padding??0),h=Math.max(5,.1*l),{cssStyles:c}=e,u=[...Sr(s/2,-l/2,h,30,-90,0),{x:-s/2-h,y:h},...Sr(s/2+2*h,-h,h,20,-180,-270),...Sr(s/2+2*h,h,h,20,-90,-180),{x:-s/2-h,y:-l/2},...Sr(s/2,l/2,h,20,0,90)],d=[{x:s/2,y:-l/2-h},{x:-s/2,y:-l/2-h},...Sr(s/2,-l/2,h,20,-90,0),{x:-s/2-h,y:-h},...Sr(s/2+.1*s,-h,h,20,-180,-270),...Sr(s/2+.1*s,h,h,20,-90,-180),{x:-s/2-h,y:l/2},...Sr(s/2,l/2,h,20,0,90),{x:-s/2,y:l/2+h},{x:s/2,y:l/2+h}],p=dt(n),f=vt(e,{fill:"none"});"handDrawn"!==e.look&&(f.roughness=0,f.fillStyle="solid");const g=re(u).replace("Z",""),y=p.path(g,f),m=re(d),x=p.path(m,{...f}),b=n.insert("g",":first-child");return b.insert((()=>x),":first-child").attr("stroke-opacity",0),b.insert((()=>y),":first-child"),b.attr("class","text"),c&&"handDrawn"!==e.look&&b.selectAll("path").attr("style",c),i&&"handDrawn"!==e.look&&b.selectAll("path").attr("style",i),b.attr("transform",`translate(${h}, 0)`),a.attr("transform",`translate(${-s/2+h-(o.x-(o.left??0))},${-l/2+(e.padding??0)/2-(o.y-(o.top??0))})`),te(e,b),e.intersect=function(t){return ge.polygon(e,d,t)},n}),"curlyBraceLeft");function Ar(t,e,r,i=100,n=0,o=180){const a=[],s=n*Math.PI/180,l=(o*Math.PI/180-s)/(i-1);for(let n=0;n{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=o.width+(e.padding??0),l=o.height+(e.padding??0),h=Math.max(5,.1*l),{cssStyles:c}=e,u=[...Ar(s/2,-l/2,h,20,-90,0),{x:s/2+h,y:-h},...Ar(s/2+2*h,-h,h,20,-180,-270),...Ar(s/2+2*h,h,h,20,-90,-180),{x:s/2+h,y:l/2},...Ar(s/2,l/2,h,20,0,90)],d=[{x:-s/2,y:-l/2-h},{x:s/2,y:-l/2-h},...Ar(s/2,-l/2,h,20,-90,0),{x:s/2+h,y:-h},...Ar(s/2+2*h,-h,h,20,-180,-270),...Ar(s/2+2*h,h,h,20,-90,-180),{x:s/2+h,y:l/2},...Ar(s/2,l/2,h,20,0,90),{x:s/2,y:l/2+h},{x:-s/2,y:l/2+h}],p=dt(n),f=vt(e,{fill:"none"});"handDrawn"!==e.look&&(f.roughness=0,f.fillStyle="solid");const g=re(u).replace("Z",""),y=p.path(g,f),m=re(d),x=p.path(m,{...f}),b=n.insert("g",":first-child");return b.insert((()=>x),":first-child").attr("stroke-opacity",0),b.insert((()=>y),":first-child"),b.attr("class","text"),c&&"handDrawn"!==e.look&&b.selectAll("path").attr("style",c),i&&"handDrawn"!==e.look&&b.selectAll("path").attr("style",i),b.attr("transform",`translate(${-h}, 0)`),a.attr("transform",`translate(${-s/2+(e.padding??0)/2-(o.x-(o.left??0))},${-l/2+(e.padding??0)/2-(o.y-(o.top??0))})`),te(e,b),e.intersect=function(t){return ge.polygon(e,d,t)},n}),"curlyBraceRight");function Br(t,e,r,i=100,n=0,o=180){const a=[],s=n*Math.PI/180,l=(o*Math.PI/180-s)/(i-1);for(let n=0;n{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,label:a}=await Jt(t,e,ee(e)),s=o.width+(e.padding??0),l=o.height+(e.padding??0),h=Math.max(5,.1*l),{cssStyles:c}=e,u=[...Br(s/2,-l/2,h,30,-90,0),{x:-s/2-h,y:h},...Br(s/2+2*h,-h,h,20,-180,-270),...Br(s/2+2*h,h,h,20,-90,-180),{x:-s/2-h,y:-l/2},...Br(s/2,l/2,h,20,0,90)],d=[...Br(-s/2+h+h/2,-l/2,h,20,-90,-180),{x:s/2-h/2,y:h},...Br(-s/2-h/2,-h,h,20,0,90),...Br(-s/2-h/2,h,h,20,-90,0),{x:s/2-h/2,y:-h},...Br(-s/2+h+h/2,l/2,h,30,-180,-270)],p=[{x:s/2,y:-l/2-h},{x:-s/2,y:-l/2-h},...Br(s/2,-l/2,h,20,-90,0),{x:-s/2-h,y:-h},...Br(s/2+2*h,-h,h,20,-180,-270),...Br(s/2+2*h,h,h,20,-90,-180),{x:-s/2-h,y:l/2},...Br(s/2,l/2,h,20,0,90),{x:-s/2,y:l/2+h},{x:s/2-h-h/2,y:l/2+h},...Br(-s/2+h+h/2,-l/2,h,20,-90,-180),{x:s/2-h/2,y:h},...Br(-s/2-h/2,-h,h,20,0,90),...Br(-s/2-h/2,h,h,20,-90,0),{x:s/2-h/2,y:-h},...Br(-s/2+h+h/2,l/2,h,30,-180,-270)],f=dt(n),g=vt(e,{fill:"none"});"handDrawn"!==e.look&&(g.roughness=0,g.fillStyle="solid");const y=re(u).replace("Z",""),m=f.path(y,g),x=re(d).replace("Z",""),b=f.path(x,g),k=re(p),C=f.path(k,{...g}),w=n.insert("g",":first-child");return w.insert((()=>C),":first-child").attr("stroke-opacity",0),w.insert((()=>m),":first-child"),w.insert((()=>b),":first-child"),w.attr("class","text"),c&&"handDrawn"!==e.look&&w.selectAll("path").attr("style",c),i&&"handDrawn"!==e.look&&w.selectAll("path").attr("style",i),w.attr("transform",`translate(${h-h/4}, 0)`),a.attr("transform",`translate(${-s/2+(e.padding??0)/2-(o.x-(o.left??0))},${-l/2+(e.padding??0)/2-(o.y-(o.top??0))})`),te(e,w),e.intersect=function(t){return ge.polygon(e,p,t)},n}),"curlyBraces"),Fr=(0,s.K2)((async(t,e,{config:{themeVariables:r,flowchart:n}})=>{const{labelStyles:o}=_t(e);e.labelStyle=o;const a=e.assetHeight??48,l=e.assetWidth??48,h=Math.max(a,l),c=n?.wrappingWidth;e.width=Math.max(h,c??0);const{shapeSvg:u,bbox:d,halfPadding:p,label:f}=await Jt(t,e,"icon-shape default"),g="t"===e.pos,y=h+2*p,m=h+2*p,{nodeBorder:x,mainBkg:b}=r,{stylesMap:k}=Ct(e),C=-m/2,w=-y/2,_=e.label?8:0,v=dt(u),S=vt(e,{stroke:k.get("fill")||b});"handDrawn"!==e.look&&(S.roughness=0,S.fillStyle="solid");const T=v.rectangle(C,w,m,y,S),A=Math.max(m,d.width),M=y+d.height+_,B=v.rectangle(-A/2,-M/2,A,M,{...S,fill:"transparent",stroke:"none"}),L=u.insert((()=>T),":first-child"),F=u.insert((()=>B));if(e.icon){const t=u.append("g");t.html(`${await(0,i.WY)(e.icon,{height:h,width:h,fallbackPrefix:""})}`);const r=t.node().getBBox(),n=r.width,o=r.height,a=r.x,s=r.y;t.attr("transform",`translate(${-n/2-a},${g?d.height/2+_/2-o/2-s:-d.height/2-_/2-o/2-s})`),t.selectAll("path").attr("fill",k.get("stroke")??x)}return f.attr("transform",`translate(${-d.width/2-(d.x-(d.left??0))},${g?-M/2:M/2-d.height})`),L.attr("transform",`translate(0,${g?d.height/2+_/2:-d.height/2-_/2})`),te(e,F),e.intersect=function(t){if(s.Rm.info("iconSquare intersect",e,t),!e.label)return ge.rect(e,t);const r=e.x??0,i=e.y??0,n=e.height??0;let o=[];return o=g?[{x:r-d.width/2,y:i-n/2},{x:r+d.width/2,y:i-n/2},{x:r+d.width/2,y:i-n/2+d.height+_},{x:r+m/2,y:i-n/2+d.height+_},{x:r+m/2,y:i+n/2},{x:r-m/2,y:i+n/2},{x:r-m/2,y:i-n/2+d.height+_},{x:r-d.width/2,y:i-n/2+d.height+_}]:[{x:r-m/2,y:i-n/2},{x:r+m/2,y:i-n/2},{x:r+m/2,y:i-n/2+y},{x:r+d.width/2,y:i-n/2+y},{x:r+d.width/2/2,y:i+n/2},{x:r-d.width/2,y:i+n/2},{x:r-d.width/2,y:i-n/2+y},{x:r-m/2,y:i-n/2+y}],ge.polygon(e,o,t)},u}),"iconSquare"),$r=(0,s.K2)((async(t,e,{config:{themeVariables:r,flowchart:n}})=>{const{labelStyles:o}=_t(e);e.labelStyle=o;const a=e.assetHeight??48,l=e.assetWidth??48,h=Math.max(a,l),c=n?.wrappingWidth;e.width=Math.max(h,c??0);const{shapeSvg:u,bbox:d,label:p}=await Jt(t,e,"icon-shape default"),f=e.label?8:0,g="t"===e.pos,{nodeBorder:y,mainBkg:m}=r,{stylesMap:x}=Ct(e),b=dt(u),k=vt(e,{stroke:x.get("fill")||m});"handDrawn"!==e.look&&(k.roughness=0,k.fillStyle="solid");const C=u.append("g");e.icon&&C.html(`${await(0,i.WY)(e.icon,{height:h,width:h,fallbackPrefix:""})}`);const w=C.node().getBBox(),_=w.width,v=w.height,S=w.x,T=w.y,A=Math.max(_,v)*Math.SQRT2+40,M=b.circle(0,0,A,k),B=Math.max(A,d.width),L=A+d.height+f,F=b.rectangle(-B/2,-L/2,B,L,{...k,fill:"transparent",stroke:"none"}),$=u.insert((()=>M),":first-child"),E=u.insert((()=>F));return C.attr("transform",`translate(${-_/2-S},${g?d.height/2+f/2-v/2-T:-d.height/2-f/2-v/2-T})`),C.selectAll("path").attr("fill",x.get("stroke")||y),p.attr("transform",`translate(${-d.width/2-(d.x-(d.left??0))},${g?-L/2:L/2-d.height})`),$.attr("transform",`translate(0,${g?d.height/2+f/2:-d.height/2-f/2})`),te(e,E),e.intersect=function(t){return s.Rm.info("iconSquare intersect",e,t),ge.rect(e,t)},u}),"iconCircle"),Er=(0,s.K2)((async(t,e,{config:{themeVariables:r,flowchart:n}})=>{const{labelStyles:o}=_t(e);e.labelStyle=o;const a=e.assetHeight??48,l=e.assetWidth??48,h=Math.max(a,l),c=n?.wrappingWidth;e.width=Math.max(h,c??0);const{shapeSvg:u,bbox:d,label:p}=await Jt(t,e,"icon-shape default"),f="t"===e.pos,g=h,y=h,{nodeBorder:m}=r,{stylesMap:x}=Ct(e),b=-y/2,k=-g/2,C=e.label?8:0,w=dt(u),_=vt(e,{stroke:"none",fill:"none"});"handDrawn"!==e.look&&(_.roughness=0,_.fillStyle="solid");const v=w.rectangle(b,k,y,g,_),S=Math.max(y,d.width),T=g+d.height+C,A=w.rectangle(-S/2,-T/2,S,T,{..._,fill:"transparent",stroke:"none"}),M=u.insert((()=>v),":first-child"),B=u.insert((()=>A));if(e.icon){const t=u.append("g");t.html(`${await(0,i.WY)(e.icon,{height:h,width:h,fallbackPrefix:""})}`);const r=t.node().getBBox(),n=r.width,o=r.height,a=r.x,s=r.y;t.attr("transform",`translate(${-n/2-a},${f?d.height/2+C/2-o/2-s:-d.height/2-C/2-o/2-s})`),t.selectAll("path").attr("fill",x.get("stroke")||m)}return p.attr("transform",`translate(${-d.width/2-(d.x-(d.left??0))},${f?-T/2:T/2-d.height})`),M.attr("transform",`translate(0,${f?d.height/2+C/2:-d.height/2-C/2})`),te(e,B),e.intersect=function(t){if(s.Rm.info("iconSquare intersect",e,t),!e.label)return ge.rect(e,t);const r=e.x??0,i=e.y??0,n=e.height??0;let o=[];return o=f?[{x:r-d.width/2,y:i-n/2},{x:r+d.width/2,y:i-n/2},{x:r+d.width/2,y:i-n/2+d.height+C},{x:r+y/2,y:i-n/2+d.height+C},{x:r+y/2,y:i+n/2},{x:r-y/2,y:i+n/2},{x:r-y/2,y:i-n/2+d.height+C},{x:r-d.width/2,y:i-n/2+d.height+C}]:[{x:r-y/2,y:i-n/2},{x:r+y/2,y:i-n/2},{x:r+y/2,y:i-n/2+g},{x:r+d.width/2,y:i-n/2+g},{x:r+d.width/2/2,y:i+n/2},{x:r-d.width/2,y:i+n/2},{x:r-d.width/2,y:i-n/2+g},{x:r-y/2,y:i-n/2+g}],ge.polygon(e,o,t)},u}),"icon"),Dr=(0,s.K2)((async(t,e,{config:{flowchart:r}})=>{const i=new Image;i.src=e?.img??"",await i.decode();const n=Number(i.naturalWidth.toString().replace("px","")),o=Number(i.naturalHeight.toString().replace("px",""));e.imageAspectRatio=n/o;const{labelStyles:a}=_t(e);e.labelStyle=a;const l=r?.wrappingWidth;e.defaultWidth=r?.wrappingWidth;const h=Math.max(e.label?l??0:0,e?.assetWidth??n),c="on"===e.constraint&&e?.assetHeight?e.assetHeight*e.imageAspectRatio:h,u="on"===e.constraint?c/e.imageAspectRatio:e?.assetHeight??o;e.width=Math.max(c,l??0);const{shapeSvg:d,bbox:p,label:f}=await Jt(t,e,"image-shape default"),g="t"===e.pos,y=-c/2,m=-u/2,x=e.label?8:0,b=dt(d),k=vt(e,{});"handDrawn"!==e.look&&(k.roughness=0,k.fillStyle="solid");const C=b.rectangle(y,m,c,u,k),w=Math.max(c,p.width),_=u+p.height+x,v=b.rectangle(-w/2,-_/2,w,_,{...k,fill:"none",stroke:"none"}),S=d.insert((()=>C),":first-child"),T=d.insert((()=>v));if(e.img){const t=d.append("image");t.attr("href",e.img),t.attr("width",c),t.attr("height",u),t.attr("preserveAspectRatio","none"),t.attr("transform",`translate(${-c/2},${g?_/2-u:-_/2})`)}return f.attr("transform",`translate(${-p.width/2-(p.x-(p.left??0))},${g?-u/2-p.height/2-x/2:u/2-p.height/2+x/2})`),S.attr("transform",`translate(0,${g?p.height/2+x/2:-p.height/2-x/2})`),te(e,T),e.intersect=function(t){if(s.Rm.info("iconSquare intersect",e,t),!e.label)return ge.rect(e,t);const r=e.x??0,i=e.y??0,n=e.height??0;let o=[];return o=g?[{x:r-p.width/2,y:i-n/2},{x:r+p.width/2,y:i-n/2},{x:r+p.width/2,y:i-n/2+p.height+x},{x:r+c/2,y:i-n/2+p.height+x},{x:r+c/2,y:i+n/2},{x:r-c/2,y:i+n/2},{x:r-c/2,y:i-n/2+p.height+x},{x:r-p.width/2,y:i-n/2+p.height+x}]:[{x:r-c/2,y:i-n/2},{x:r+c/2,y:i-n/2},{x:r+c/2,y:i-n/2+u},{x:r+p.width/2,y:i-n/2+u},{x:r+p.width/2/2,y:i+n/2},{x:r-p.width/2,y:i+n/2},{x:r-p.width/2,y:i-n/2+u},{x:r-c/2,y:i-n/2+u}],ge.polygon(e,o,t)},d}),"imageSquare"),Or=(0,s.K2)((async(t,e,{config:{themeVariables:r,flowchart:n}})=>{const{labelStyles:o}=_t(e);e.labelStyle=o;const a=e.assetHeight??48,l=e.assetWidth??48,h=Math.max(a,l),c=n?.wrappingWidth;e.width=Math.max(h,c??0);const{shapeSvg:u,bbox:d,halfPadding:p,label:f}=await Jt(t,e,"icon-shape default"),g="t"===e.pos,y=h+2*p,m=h+2*p,{nodeBorder:x,mainBkg:b}=r,{stylesMap:k}=Ct(e),C=-m/2,w=-y/2,_=e.label?8:0,v=dt(u),S=vt(e,{stroke:k.get("fill")||b});"handDrawn"!==e.look&&(S.roughness=0,S.fillStyle="solid");const T=v.path(bt(C,w,m,y,5),S),A=Math.max(m,d.width),M=y+d.height+_,B=v.rectangle(-A/2,-M/2,A,M,{...S,fill:"transparent",stroke:"none"}),L=u.insert((()=>T),":first-child"),F=u.insert((()=>B));if(e.icon){const t=u.append("g");t.html(`${await(0,i.WY)(e.icon,{height:h,width:h,fallbackPrefix:""})}`);const r=t.node().getBBox(),n=r.width,o=r.height,a=r.x,s=r.y;t.attr("transform",`translate(${-n/2-a},${g?d.height/2+_/2-o/2-s:-d.height/2-_/2-o/2-s})`),t.selectAll("path").attr("fill",k.get("stroke")??x)}return f.attr("transform",`translate(${-d.width/2-(d.x-(d.left??0))},${g?-M/2:M/2-d.height})`),L.attr("transform",`translate(0,${g?d.height/2+_/2:-d.height/2-_/2})`),te(e,F),e.intersect=function(t){if(s.Rm.info("iconSquare intersect",e,t),!e.label)return ge.rect(e,t);const r=e.x??0,i=e.y??0,n=e.height??0;let o=[];return o=g?[{x:r-d.width/2,y:i-n/2},{x:r+d.width/2,y:i-n/2},{x:r+d.width/2,y:i-n/2+d.height+_},{x:r+m/2,y:i-n/2+d.height+_},{x:r+m/2,y:i+n/2},{x:r-m/2,y:i+n/2},{x:r-m/2,y:i-n/2+d.height+_},{x:r-d.width/2,y:i-n/2+d.height+_}]:[{x:r-m/2,y:i-n/2},{x:r+m/2,y:i-n/2},{x:r+m/2,y:i-n/2+y},{x:r+d.width/2,y:i-n/2+y},{x:r+d.width/2/2,y:i+n/2},{x:r-d.width/2,y:i+n/2},{x:r-d.width/2,y:i-n/2+y},{x:r-m/2,y:i-n/2+y}],ge.polygon(e,o,t)},u}),"iconRounded"),Ir={state:me,stateStart:ke,stateEnd:Ce,forkJoin:we,choice:_e,note:ve,rectWithTitle:Te,roundedRect:xe,squareRect:be,rectangle:be,rect:be,process:be,proc:be,rounded:xe,event:xe,stadium:Se,pill:Se,terminal:Se,subroutine:Me,"framed-rectangle":Me,"fr-rect":Me,subprocess:Me,subproc:Me,cylinder:$e,db:$e,cyl:$e,database:$e,question:Re,diam:Re,diamond:Re,decision:Re,hexagon:ze,hex:ze,prepare:ze,lean_right:We,"lean-r":We,"lean-right":We,"in-out":We,lean_left:Ue,"lean-l":Ue,"lean-left":Ue,"out-in":Ue,trapezoid:He,"trap-b":He,"trapezoid-bottom":He,priority:He,inv_trapezoid:Ye,"inv-trapezoid":Ye,"trapezoid-top":Ye,"trap-t":Ye,manual:Ye,doublecircle:De,"dbl-circ":De,"double-circle":De,circle:Ee,circ:Ee,rect_left_inv_arrow:Oe,odd:Oe,card:qe,"notched-rectangle":qe,"notch-rect":qe,"lined-rectangle":Ne,"lin-rect":Ne,"lin-proc":Ne,"lined-process":Ne,"shaded-process":Ne,"small-circle":ke,"sm-circ":ke,start:ke,stop:Ce,"framed-circle":Ce,"fr-circ":Ce,join:we,fork:we,comment:Tr,"brace-l":Tr,bolt:br,"com-link":br,"lightning-bolt":br,doc:xr,document:xr,delay:Ze,"half-rounded-rectangle":Ze,"horizontal-cylinder":lr,"h-cyl":lr,das:lr,"lined-cylinder":mr,"lin-cyl":mr,disk:mr,"curved-trapezoid":Xe,"curv-trap":Xe,display:Xe,"divided-rectangle":er,"div-rect":er,"div-proc":er,"divided-process":er,triangle:Ve,tri:Ve,extract:Ve,"window-pane":wr,"win-pane":wr,"internal-storage":wr,"f-circ":kr,junction:kr,"filled-circle":kr,"lin-doc":_r,"lined-document":_r,"notched-pentagon":hr,"notch-pent":hr,"loop-limit":hr,"flipped-triangle":cr,"flip-tri":cr,"manual-file":cr,"sloped-rectangle":Qe,"sl-rect":Qe,"manual-input":Qe,docs:Cr,documents:Cr,"st-doc":Cr,"stacked-document":Cr,processes:pr,procs:pr,"stacked-rectangle":pr,"st-rect":pr,flag:nr,"paper-tape":nr,"bow-tie-rectangle":tr,"bow-rect":tr,"stored-data":tr,"crossed-circle":ir,"cross-circ":ir,summary:ir,"tag-doc":vr,"tagged-document":vr,"tag-rect":dr,"tagged-rectangle":dr,"tag-proc":dr,"tagged-process":dr,hourglass:ur,collate:ur,text:Ke,anchor:je,brace:Tr,labelRect:Ge,"brace-r":Mr,braces:Lr,iconSquare:Fr,iconCircle:$r,icon:Er,iconRounded:Or,imageSquare:Dr},Rr=new Map,Pr=(0,s.K2)((async(t,e,r)=>{let i,n;if("rect"===e.shape&&(e.rx&&e.ry?e.shape="roundedRect":e.shape="squareRect"),!Ir[e.shape])throw new Error(`No such shape: ${e.shape}. Please check your syntax.`);if(e.link){let o;"sandbox"===r.config.securityLevel?o="_top":e.linkTarget&&(o=e.linkTarget||"_blank"),i=t.insert("svg:a").attr("xlink:href",e.link).attr("target",o),n=await Ir[e.shape](i,e,r)}else n=await Ir[e.shape](t,e,r),i=n;return e.tooltip&&n.attr("title",e.tooltip),Rr.set(e.id,i),e.haveCallback&&Rr.get(e.id).attr("class",Rr.get(e.id).attr("class")+" clickable"),i}),"insertNode"),zr=(0,s.K2)(((t,e)=>{Rr.set(e.id,t)}),"setNodeElem"),Kr=(0,s.K2)((()=>{Rr.clear()}),"clear"),qr=(0,s.K2)((t=>{const e=Rr.get(t.id);s.Rm.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");const r=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+r-t.width/2)+", "+(t.y-t.height/2-8)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),r}),"positionNode")},1661:(t,e,r)=>{"use strict";r.d(e,{D:()=>o});var i=r(32),n=r(4852),o=(0,i.K2)((t=>{const{securityLevel:e}=(0,i.D7)();let r=(0,n.Ltv)("body");if("sandbox"===e){const e=(0,n.Ltv)(`#i${t}`),i=e.node()?.contentDocument??document;r=(0,n.Ltv)(i.body)}return r.select(`#${t}`)}),"selectSvgElement")},32:(t,e,r)=>{"use strict";r.d(e,{C0:()=>v,VA:()=>y,K2:()=>g,xA:()=>ct,hH:()=>F,Dl:()=>zt,IU:()=>ee,Wt:()=>Zt,Y2:()=>qt,a$:()=>Wt,sb:()=>Q,ME:()=>de,UI:()=>V,Ch:()=>T,mW:()=>S,DB:()=>w,_3:()=>Bt,EJ:()=>C,m7:()=>oe,iN:()=>ie,zj:()=>lt,D7:()=>ce,Gs:()=>xe,J$:()=>B,ab:()=>se,Q2:()=>at,P$:()=>K,Wi:()=>Pt,H1:()=>yt,Rm:()=>x,QO:()=>$t,Js:()=>me,Xd:()=>A,VJ:()=>Kt,cL:()=>ut,$i:()=>Z,jZ:()=>wt,wZ:()=>nt,EI:()=>ne,SV:()=>re,Nk:()=>st,XV:()=>ue,ke:()=>ae,He:()=>b,UU:()=>it,ot:()=>Ut,mj:()=>fe,tM:()=>Vt,H$:()=>W,B6:()=>ot});var i=r(4353),n=r(1931),o=r(8232);const a=(t,e)=>{const r=n.A.parse(t),i={};for(const t in e)e[t]&&(i[t]=r[t]+e[t]);return(0,o.A)(t,i)};var s=r(5582);const l=(t,e=100)=>{const r=n.A.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,((t,e,r=50)=>{const{r:i,g:o,b:a,a:l}=n.A.parse(t),{r:h,g:c,b:u,a:d}=n.A.parse(e),p=r/100,f=2*p-1,g=l-d,y=((f*g==-1?f:(f+g)/(1+f*g))+1)/2,m=1-y,x=i*y+h*m,b=o*y+c*m,k=a*y+u*m,C=l*p+d*(1-p);return(0,s.A)(x,b,k,C)})(r,t,e)};var h,c=r(5263),u=r(8041),d=r(5097),p=r(2838),f=Object.defineProperty,g=(t,e)=>f(t,"name",{value:e,configurable:!0}),y=(t,e)=>{for(var r in e)f(t,r,{get:e[r],enumerable:!0})},m={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},x={trace:g(((...t)=>{}),"trace"),debug:g(((...t)=>{}),"debug"),info:g(((...t)=>{}),"info"),warn:g(((...t)=>{}),"warn"),error:g(((...t)=>{}),"error"),fatal:g(((...t)=>{}),"fatal")},b=g((function(t="fatal"){let e=m.fatal;"string"==typeof t?t.toLowerCase()in m&&(e=m[t]):"number"==typeof t&&(e=t),x.trace=()=>{},x.debug=()=>{},x.info=()=>{},x.warn=()=>{},x.error=()=>{},x.fatal=()=>{},e<=m.fatal&&(x.fatal=console.error?console.error.bind(console,k("FATAL"),"color: orange"):console.log.bind(console,"",k("FATAL"))),e<=m.error&&(x.error=console.error?console.error.bind(console,k("ERROR"),"color: orange"):console.log.bind(console,"",k("ERROR"))),e<=m.warn&&(x.warn=console.warn?console.warn.bind(console,k("WARN"),"color: orange"):console.log.bind(console,"",k("WARN"))),e<=m.info&&(x.info=console.info?console.info.bind(console,k("INFO"),"color: lightblue"):console.log.bind(console,"",k("INFO"))),e<=m.debug&&(x.debug=console.debug?console.debug.bind(console,k("DEBUG"),"color: lightgreen"):console.log.bind(console,"",k("DEBUG"))),e<=m.trace&&(x.trace=console.debug?console.debug.bind(console,k("TRACE"),"color: lightgreen"):console.log.bind(console,"",k("TRACE")))}),"setLogLevel"),k=g((t=>`%c${i().format("ss.SSS")} : ${t} : `),"format"),C=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,w=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,_=/\s*%%.*\n/gm,v=class extends Error{static{g(this,"UnknownDiagramError")}constructor(t){super(t),this.name="UnknownDiagramError"}},S={},T=g((function(t,e){t=t.replace(C,"").replace(w,"").replace(_,"\n");for(const[r,{detector:i}]of Object.entries(S))if(i(t,e))return r;throw new v(`No diagram type detected matching given configuration for text: ${t}`)}),"detectType"),A=g(((...t)=>{for(const{id:e,detector:r,loader:i}of t)M(e,r,i)}),"registerLazyLoadedDiagrams"),M=g(((t,e,r)=>{S[t]&&x.warn(`Detector with key ${t} already exists. Overwriting.`),S[t]={detector:e,loader:r},x.debug(`Detector with key ${t} added${r?" with loader":""}`)}),"addDetector"),B=g((t=>S[t].loader),"getDiagramLoader"),L=g(((t,e,{depth:r=2,clobber:i=!1}={})=>{const n={depth:r,clobber:i};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach((e=>L(t,e,n))),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach((e=>{t.includes(e)||t.push(e)})),t):void 0===t||r<=0?null!=t&&"object"==typeof t&&"object"==typeof e?Object.assign(t,e):e:(void 0!==e&&"object"==typeof t&&"object"==typeof e&&Object.keys(e).forEach((n=>{"object"!=typeof e[n]||void 0!==t[n]&&"object"!=typeof t[n]?(i||"object"!=typeof t[n]&&"object"!=typeof e[n])&&(t[n]=e[n]):(void 0===t[n]&&(t[n]=Array.isArray(e[n])?[]:{}),t[n]=L(t[n],e[n],{depth:r-1,clobber:i}))})),t)}),"assignWithDepth"),F=L,$="#ffffff",E="#f2f2f2",D=g(((t,e)=>a(t,e?{s:-40,l:10}:{s:-40,l:-10})),"mkBorder"),O=class{static{g(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||a(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||a(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||D(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||D(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||D(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||D(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||l(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||l(this.tertiaryColor),this.lineColor=this.lineColor||l(this.background),this.arrowheadColor=this.arrowheadColor||l(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?(0,c.A)(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||(0,c.A)(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||l(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||(0,u.A)(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||a(this.primaryColor,{h:30}),this.cScale4=this.cScale4||a(this.primaryColor,{h:60}),this.cScale5=this.cScale5||a(this.primaryColor,{h:90}),this.cScale6=this.cScale6||a(this.primaryColor,{h:120}),this.cScale7=this.cScale7||a(this.primaryColor,{h:150}),this.cScale8=this.cScale8||a(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||a(this.primaryColor,{h:270}),this.cScale10=this.cScale10||a(this.primaryColor,{h:300}),this.cScale11=this.cScale11||a(this.primaryColor,{h:330}),this.darkMode)for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},I=g((t=>{const e=new O;return e.calculate(t),e}),"getThemeVariables"),R=class{static{g(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=(0,u.A)(this.primaryColor,16),this.tertiaryColor=a(this.primaryColor,{h:-160}),this.primaryBorderColor=l(this.background),this.secondaryBorderColor=D(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=D(this.tertiaryColor,this.darkMode),this.primaryTextColor=l(this.primaryColor),this.secondaryTextColor=l(this.secondaryColor),this.tertiaryTextColor=l(this.tertiaryColor),this.lineColor=l(this.background),this.textColor=l(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=(0,u.A)(l("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=(0,s.A)(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=(0,c.A)("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=(0,c.A)(this.sectionBkgColor,10),this.taskBorderColor=(0,s.A)(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=(0,s.A)(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=(0,u.A)(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=(0,u.A)(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=(0,u.A)(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=a(this.primaryColor,{h:64}),this.fillType3=a(this.secondaryColor,{h:64}),this.fillType4=a(this.primaryColor,{h:-64}),this.fillType5=a(this.secondaryColor,{h:-64}),this.fillType6=a(this.primaryColor,{h:128}),this.fillType7=a(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||a(this.primaryColor,{h:30}),this.cScale4=this.cScale4||a(this.primaryColor,{h:60}),this.cScale5=this.cScale5||a(this.primaryColor,{h:90}),this.cScale6=this.cScale6||a(this.primaryColor,{h:120}),this.cScale7=this.cScale7||a(this.primaryColor,{h:150}),this.cScale8=this.cScale8||a(this.primaryColor,{h:210}),this.cScale9=this.cScale9||a(this.primaryColor,{h:270}),this.cScale10=this.cScale10||a(this.primaryColor,{h:300}),this.cScale11=this.cScale11||a(this.primaryColor,{h:330});for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},P=g((t=>{const e=new R;return e.calculate(t),e}),"getThemeVariables"),z=class{static{g(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=a(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=a(this.primaryColor,{h:-160}),this.primaryBorderColor=D(this.primaryColor,this.darkMode),this.secondaryBorderColor=D(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=D(this.tertiaryColor,this.darkMode),this.primaryTextColor=l(this.primaryColor),this.secondaryTextColor=l(this.secondaryColor),this.tertiaryTextColor=l(this.tertiaryColor),this.lineColor=l(this.background),this.textColor=l(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.sectionBkgColor=(0,s.A)(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||a(this.primaryColor,{h:30}),this.cScale4=this.cScale4||a(this.primaryColor,{h:60}),this.cScale5=this.cScale5||a(this.primaryColor,{h:90}),this.cScale6=this.cScale6||a(this.primaryColor,{h:120}),this.cScale7=this.cScale7||a(this.primaryColor,{h:150}),this.cScale8=this.cScale8||a(this.primaryColor,{h:210}),this.cScale9=this.cScale9||a(this.primaryColor,{h:270}),this.cScale10=this.cScale10||a(this.primaryColor,{h:300}),this.cScale11=this.cScale11||a(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||(0,c.A)(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||(0,c.A)(this.tertiaryColor,40);for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},K=g((t=>{const e=new z;return e.calculate(t),e}),"getThemeVariables"),q=class{static{g(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=(0,u.A)("#cde498",10),this.primaryBorderColor=D(this.primaryColor,this.darkMode),this.secondaryBorderColor=D(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=D(this.tertiaryColor,this.darkMode),this.primaryTextColor=l(this.primaryColor),this.secondaryTextColor=l(this.secondaryColor),this.tertiaryTextColor=l(this.primaryColor),this.lineColor=l(this.background),this.textColor=l(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=(0,c.A)(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||a(this.primaryColor,{h:30}),this.cScale4=this.cScale4||a(this.primaryColor,{h:60}),this.cScale5=this.cScale5||a(this.primaryColor,{h:90}),this.cScale6=this.cScale6||a(this.primaryColor,{h:120}),this.cScale7=this.cScale7||a(this.primaryColor,{h:150}),this.cScale8=this.cScale8||a(this.primaryColor,{h:210}),this.cScale9=this.cScale9||a(this.primaryColor,{h:270}),this.cScale10=this.cScale10||a(this.primaryColor,{h:300}),this.cScale11=this.cScale11||a(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||(0,c.A)(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||(0,c.A)(this.tertiaryColor,40);for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},N=g((t=>{const e=new q;return e.calculate(t),e}),"getThemeVariables"),j=class{static{g(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=(0,u.A)(this.contrast,55),this.background="#ffffff",this.tertiaryColor=a(this.primaryColor,{h:-160}),this.primaryBorderColor=D(this.primaryColor,this.darkMode),this.secondaryBorderColor=D(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=D(this.tertiaryColor,this.darkMode),this.primaryTextColor=l(this.primaryColor),this.secondaryTextColor=l(this.secondaryColor),this.tertiaryTextColor=l(this.tertiaryColor),this.lineColor=l(this.background),this.textColor=l(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=(0,u.A)(this.contrast,55),this.border2=this.contrast,this.actorBorder=(0,u.A)(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},W={base:{getThemeVariables:I},dark:{getThemeVariables:P},default:{getThemeVariables:K},forest:{getThemeVariables:N},neutral:{getThemeVariables:g((t=>{const e=new j;return e.calculate(t),e}),"getThemeVariables")}},U={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1},H={...U,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF"},themeCSS:void 0,themeVariables:W.default.getThemeVariables(),sequence:{...U.sequence,messageFont:g((function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}),"messageFont"),noteFont:g((function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}}),"noteFont"),actorFont:g((function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}}),"actorFont")},gantt:{...U.gantt,tickInterval:void 0,useWidth:void 0},c4:{...U.c4,useWidth:void 0,personFont:g((function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}}),"personFont"),external_personFont:g((function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}}),"external_personFont"),systemFont:g((function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}}),"systemFont"),external_systemFont:g((function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}}),"external_systemFont"),system_dbFont:g((function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}}),"system_dbFont"),external_system_dbFont:g((function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}}),"external_system_dbFont"),system_queueFont:g((function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}}),"system_queueFont"),external_system_queueFont:g((function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}}),"external_system_queueFont"),containerFont:g((function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}}),"containerFont"),external_containerFont:g((function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}}),"external_containerFont"),container_dbFont:g((function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}}),"container_dbFont"),external_container_dbFont:g((function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}}),"external_container_dbFont"),container_queueFont:g((function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}}),"container_queueFont"),external_container_queueFont:g((function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}}),"external_container_queueFont"),componentFont:g((function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}}),"componentFont"),external_componentFont:g((function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}}),"external_componentFont"),component_dbFont:g((function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}}),"component_dbFont"),external_component_dbFont:g((function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}}),"external_component_dbFont"),component_queueFont:g((function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}}),"component_queueFont"),external_component_queueFont:g((function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}}),"external_component_queueFont"),boundaryFont:g((function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}}),"boundaryFont"),messageFont:g((function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}),"messageFont")},pie:{...U.pie,useWidth:984},xyChart:{...U.xyChart,useWidth:void 0},requirement:{...U.requirement,useWidth:void 0},packet:{...U.packet}},Y=g(((t,e="")=>Object.keys(t).reduce(((r,i)=>Array.isArray(t[i])?r:"object"==typeof t[i]&&null!==t[i]?[...r,e+i,...Y(t[i],"")]:[...r,e+i]),[])),"keyify"),G=new Set(Y(H,"")),V=H,Z=g((t=>{if(x.debug("sanitizeDirective called with",t),"object"==typeof t&&null!=t)if(Array.isArray(t))t.forEach((t=>Z(t)));else{for(const e of Object.keys(t)){if(x.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!G.has(e)||null==t[e]){x.debug("sanitize deleting key: ",e),delete t[e];continue}if("object"==typeof t[e]){x.debug("sanitizing object",e),Z(t[e]);continue}const r=["themeCSS","fontFamily","altFontFamily"];for(const i of r)e.includes(i)&&(x.debug("sanitizing css option",e),t[e]=X(t[e]))}if(t.themeVariables)for(const e of Object.keys(t.themeVariables)){const r=t.themeVariables[e];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}x.debug("After sanitization",t)}}),"sanitizeDirective"),X=g((t=>{let e=0,r=0;for(const i of t){if(e{let r=F({},t),i={};for(const t of e)ht(t),i=F(i,t);if(r=F(r,i),i.theme&&i.theme in W){const t=F({},h),e=F(t.themeVariables||{},i.themeVariables);r.theme&&r.theme in W&&(r.themeVariables=W[r.theme].getThemeVariables(e))}return gt(et=r),et}),"updateCurrentConfig"),it=g((t=>(J=F({},Q),J=F(J,t),t.theme&&W[t.theme]&&(J.themeVariables=W[t.theme].getThemeVariables(t.themeVariables)),rt(J,tt),J)),"setSiteConfig"),nt=g((t=>{h=F({},t)}),"saveConfigFromInitialize"),ot=g((t=>(J=F(J,t),rt(J,tt),J)),"updateSiteConfig"),at=g((()=>F({},J)),"getSiteConfig"),st=g((t=>(gt(t),F(et,t),lt())),"setConfig"),lt=g((()=>F({},et)),"getConfig"),ht=g((t=>{t&&(["secure",...J.secure??[]].forEach((e=>{Object.hasOwn(t,e)&&(x.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])})),Object.keys(t).forEach((e=>{e.startsWith("__")&&delete t[e]})),Object.keys(t).forEach((e=>{"string"==typeof t[e]&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],"object"==typeof t[e]&&ht(t[e])})))}),"sanitize"),ct=g((t=>{Z(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables={...t.themeVariables,fontFamily:t.fontFamily}),tt.push(t),rt(J,tt)}),"addDirective"),ut=g(((t=J)=>{rt(t,tt=[])}),"reset"),dt={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},pt={},ft=g((t=>{pt[t]||(x.warn(dt[t]),pt[t]=!0)}),"issueWarning"),gt=g((t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&ft("LAZY_LOAD_DEPRECATED")}),"checkConfig"),yt=//gi,mt=g((t=>t?At(t).replace(/\\n/g,"#br#").split("#br#"):[""]),"getRows"),xt=(()=>{let t=!1;return()=>{t||(bt(),t=!0)}})();function bt(){const t="data-temp-href-target";p.addHook("beforeSanitizeAttributes",(e=>{"A"===e.tagName&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")})),p.addHook("afterSanitizeAttributes",(e=>{"A"===e.tagName&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),"_blank"===e.getAttribute("target")&&e.setAttribute("rel","noopener"))}))}g(bt,"setupDompurifyHooks");var kt=g((t=>(xt(),p.sanitize(t))),"removeScript"),Ct=g(((t,e)=>{if(!1!==e.flowchart?.htmlLabels){const r=e.securityLevel;"antiscript"===r||"strict"===r?t=kt(t):"loose"!==r&&(t=(t=(t=At(t)).replace(//g,">")).replace(/=/g,"="),t=Tt(t))}return t}),"sanitizeMore"),wt=g(((t,e)=>t?t=e.dompurifyConfig?p.sanitize(Ct(t,e),e.dompurifyConfig).toString():p.sanitize(Ct(t,e),{FORBID_TAGS:["style"]}).toString():t),"sanitizeText"),_t=g(((t,e)=>"string"==typeof t?wt(t,e):t.flat().map((t=>wt(t,e)))),"sanitizeTextOrArray"),vt=g((t=>yt.test(t)),"hasBreaks"),St=g((t=>t.split(yt)),"splitBreaks"),Tt=g((t=>t.replace(/#br#/g,"
")),"placeholderToBreak"),At=g((t=>t.replace(yt,"#br#")),"breakToPlaceholder"),Mt=g((t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=e.replaceAll(/\(/g,"\\("),e=e.replaceAll(/\)/g,"\\)")),e}),"getUrl"),Bt=g((t=>!1!==t&&!["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),Lt=g((function(...t){const e=t.filter((t=>!isNaN(t)));return Math.max(...e)}),"getMax"),Ft=g((function(...t){const e=t.filter((t=>!isNaN(t)));return Math.min(...e)}),"getMin"),$t=g((function(t){const e=t.split(/(,)/),r=[];for(let t=0;t0&&t+1Math.max(0,t.split(e).length-1)),"countOccurrence"),Dt=g(((t,e)=>{const r=Et(t,"~"),i=Et(e,"~");return 1===r&&1===i}),"shouldCombineSets"),Ot=g((t=>{const e=Et(t,"~");let r=!1;if(e<=1)return t;e%2!=0&&t.startsWith("~")&&(t=t.substring(1),r=!0);const i=[...t];let n=i.indexOf("~"),o=i.lastIndexOf("~");for(;-1!==n&&-1!==o&&n!==o;)i[n]="<",i[o]=">",n=i.indexOf("~"),o=i.lastIndexOf("~");return r&&i.unshift("~"),i.join("")}),"processSet"),It=g((()=>void 0!==window.MathMLElement),"isMathMLSupported"),Rt=/\$\$(.*)\$\$/g,Pt=g((t=>(t.match(Rt)?.length??0)>0),"hasKatex"),zt=g((async(t,e)=>{t=await Kt(t,e);const r=document.createElement("div");r.innerHTML=t,r.id="katex-temp",r.style.visibility="hidden",r.style.position="absolute",r.style.top="0";const i=document.querySelector("body");i?.insertAdjacentElement("beforeend",r);const n={width:r.clientWidth,height:r.clientHeight};return r.remove(),n}),"calculateMathMLDimensions"),Kt=g((async(t,e)=>{if(!Pt(t))return t;if(!(It()||e.legacyMathML||e.forceLegacyMathML))return t.replace(Rt,"MathML is unsupported in this environment.");const{default:i}=await r.e(130).then(r.bind(r,2130)),n=e.forceLegacyMathML||!It()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(yt).map((t=>Pt(t)?`

`:`
${t}
`)).join("").replace(Rt,((t,e)=>i.renderToString(e,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,"")))}),"renderKatex"),qt={getRows:mt,sanitizeText:wt,sanitizeTextOrArray:_t,hasBreaks:vt,splitBreaks:St,lineBreakRegex:yt,removeScript:kt,getUrl:Mt,evaluate:Bt,getMax:Lt,getMin:Ft},Nt=g((function(t,e){for(let r of e)t.attr(r[0],r[1])}),"d3Attrs"),jt=g((function(t,e,r){let i=new Map;return r?(i.set("width","100%"),i.set("style",`max-width: ${e}px;`)):(i.set("height",t),i.set("width",e)),i}),"calculateSvgSizeAttrs"),Wt=g((function(t,e,r,i){const n=jt(e,r,i);Nt(t,n)}),"configureSvgSize"),Ut=g((function(t,e,r,i){const n=e.node().getBBox(),o=n.width,a=n.height;x.info(`SVG bounds: ${o}x${a}`,n);let s=0,l=0;x.info(`Graph bounds: ${s}x${l}`,t),s=o+2*r,l=a+2*r,x.info(`Calculated bounds: ${s}x${l}`),Wt(e,l,s,i);const h=`${n.x-r} ${n.y-r} ${n.width+2*r} ${n.height+2*r}`;e.attr("viewBox",h)}),"setupGraphViewbox"),Ht={},Yt=g(((t,e,r)=>{let i="";return t in Ht&&Ht[t]?i=Ht[t](r):x.warn(`No theme found for ${t}`),` & {\n font-family: ${r.fontFamily};\n font-size: ${r.fontSize};\n fill: ${r.textColor}\n }\n\n /* Classes common for multiple diagrams */\n\n & .error-icon {\n fill: ${r.errorBkgColor};\n }\n & .error-text {\n fill: ${r.errorTextColor};\n stroke: ${r.errorTextColor};\n }\n\n & .edge-thickness-normal {\n stroke-width: 1px;\n }\n & .edge-thickness-thick {\n stroke-width: 3.5px\n }\n & .edge-pattern-solid {\n stroke-dasharray: 0;\n }\n & .edge-thickness-invisible {\n stroke-width: 0;\n fill: none;\n }\n & .edge-pattern-dashed{\n stroke-dasharray: 3;\n }\n .edge-pattern-dotted {\n stroke-dasharray: 2;\n }\n\n & .marker {\n fill: ${r.lineColor};\n stroke: ${r.lineColor};\n }\n & .marker.cross {\n stroke: ${r.lineColor};\n }\n\n & svg {\n font-family: ${r.fontFamily};\n font-size: ${r.fontSize};\n }\n & p {\n margin: 0\n }\n\n ${i}\n\n ${e}\n`}),"getStyles"),Gt=g(((t,e)=>{void 0!==e&&(Ht[t]=e)}),"addStylesForDiagram"),Vt=Yt,Zt={};y(Zt,{clear:()=>ee,getAccDescription:()=>oe,getAccTitle:()=>ie,getDiagramTitle:()=>se,setAccDescription:()=>ne,setAccTitle:()=>re,setDiagramTitle:()=>ae});var Xt="",Qt="",Jt="",te=g((t=>wt(t,lt())),"sanitizeText"),ee=g((()=>{Xt="",Jt="",Qt=""}),"clear"),re=g((t=>{Xt=te(t).replace(/^\s+/g,"")}),"setAccTitle"),ie=g((()=>Xt),"getAccTitle"),ne=g((t=>{Jt=te(t).replace(/\n\s+/g,"\n")}),"setAccDescription"),oe=g((()=>Jt),"getAccDescription"),ae=g((t=>{Qt=te(t)}),"setDiagramTitle"),se=g((()=>Qt),"getDiagramTitle"),le=x,he=b,ce=lt,ue=st,de=Q,pe=g((t=>wt(t,ce())),"sanitizeText"),fe=Ut,ge=g((()=>Zt),"getCommonDb"),ye={},me=g(((t,e,r)=>{ye[t]&&le.warn(`Diagram with id ${t} already registered. Overwriting.`),ye[t]=e,r&&M(t,r),Gt(t,e.styles),e.injectUtils?.(le,he,ce,pe,fe,ge(),(()=>{}))}),"registerDiagram"),xe=g((t=>{if(t in ye)return ye[t];throw new be(t)}),"getDiagram"),be=class extends Error{static{g(this,"DiagramNotFoundError")}constructor(t){super(`Diagram ${t} not found.`)}}},5522:(t,e,r)=>{"use strict";r.d(e,{$C:()=>A,$t:()=>j,C4:()=>U,I5:()=>N,Ib:()=>g,Sm:()=>H,Un:()=>O,_K:()=>W,bH:()=>$,dq:()=>K,pe:()=>l,rY:()=>Y,ru:()=>D,sM:()=>S,vU:()=>p,yT:()=>B});var i=r(32),n=r(6750),o=r(4852),a=r(6632),s=r(7222),l="​",h={curveBasis:o.qrM,curveBasisClosed:o.Yu4,curveBasisOpen:o.IA3,curveBumpX:o.Wi0,curveBumpY:o.PGM,curveBundle:o.OEq,curveCardinalClosed:o.olC,curveCardinalOpen:o.IrU,curveCardinal:o.y8u,curveCatmullRomClosed:o.Q7f,curveCatmullRomOpen:o.cVp,curveCatmullRom:o.oDi,curveLinear:o.lUB,curveLinearClosed:o.Lx9,curveMonotoneX:o.nVG,curveMonotoneY:o.uxU,curveNatural:o.Xf2,curveStep:o.GZz,curveStepAfter:o.UPb,curveStepBefore:o.dyv},c=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,u=(0,i.K2)((function(t,e){const r=d(t,/(?:init\b)|(?:initialize\b)/);let n={};if(Array.isArray(r)){const t=r.map((t=>t.args));(0,i.$i)(t),n=(0,i.hH)(n,[...t])}else n=r.args;if(!n)return;let o=(0,i.Ch)(t,e);const a="config";return void 0!==n[a]&&("flowchart-v2"===o&&(o="flowchart"),n[o]=n[a],delete n[a]),n}),"detectInit"),d=(0,i.K2)((function(t,e=null){try{const r=new RegExp(`[%]{2}(?![{]${c.source})(?=[}][%]{2}).*\n`,"ig");let n;t=t.trim().replace(r,"").replace(/'/gm,'"'),i.Rm.debug(`Detecting diagram directive${null!==e?" type:"+e:""} based on the text:${t}`);const o=[];for(;null!==(n=i.DB.exec(t));)if(n.index===i.DB.lastIndex&&i.DB.lastIndex++,n&&!e||e&&n[1]?.match(e)||e&&n[2]?.match(e)){const t=n[1]?n[1]:n[2],e=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;o.push({type:t,args:e})}return 0===o.length?{type:t,args:null}:1===o.length?o[0]:o}catch(r){return i.Rm.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}}),"detectDirective"),p=(0,i.K2)((function(t){return t.replace(i.DB,"")}),"removeDirectives"),f=(0,i.K2)((function(t,e){for(const[r,i]of e.entries())if(i.match(t))return r;return-1}),"isSubstringInArray");function g(t,e){if(!t)return e;const r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return h[r]??e}function y(t,e){const r=t.trim();if(r)return"loose"!==e.securityLevel?(0,n.J)(r):r}(0,i.K2)(g,"interpolateToCurve"),(0,i.K2)(y,"formatUrl");var m=(0,i.K2)(((t,...e)=>{const r=t.split("."),n=r.length-1,o=r[n];let a=window;for(let e=0;e{r+=x(t,e),e=t})),w(t,r/2)}function k(t){return 1===t.length?t[0]:b(t)}(0,i.K2)(x,"distance"),(0,i.K2)(b,"traverseEdge"),(0,i.K2)(k,"calcLabelPosition");var C=(0,i.K2)(((t,e=2)=>{const r=Math.pow(10,e);return Math.round(t*r)/r}),"roundNumber"),w=(0,i.K2)(((t,e)=>{let r,i=e;for(const e of t){if(r){const t=x(e,r);if(t=1)return{x:e.x,y:e.y};if(n>0&&n<1)return{x:C((1-n)*r.x+n*e.x,5),y:C((1-n)*r.y+n*e.y,5)}}}r=e}throw new Error("Could not find a suitable point for the given distance")}),"calculatePoint"),_=(0,i.K2)(((t,e,r)=>{i.Rm.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());const n=w(e,25),o=t?10:5,a=Math.atan2(e[0].y-n.y,e[0].x-n.x),s={x:0,y:0};return s.x=Math.sin(a)*o+(e[0].x+n.x)/2,s.y=-Math.cos(a)*o+(e[0].y+n.y)/2,s}),"calcCardinalityPosition");function v(t,e,r){const n=structuredClone(r);i.Rm.info("our points",n),"start_left"!==e&&"start_right"!==e&&n.reverse();const o=w(n,25+t),a=10+.5*t,s=Math.atan2(n[0].y-o.y,n[0].x-o.x),l={x:0,y:0};return"start_left"===e?(l.x=Math.sin(s+Math.PI)*a+(n[0].x+o.x)/2,l.y=-Math.cos(s+Math.PI)*a+(n[0].y+o.y)/2):"end_right"===e?(l.x=Math.sin(s-Math.PI)*a+(n[0].x+o.x)/2-5,l.y=-Math.cos(s-Math.PI)*a+(n[0].y+o.y)/2-5):"end_left"===e?(l.x=Math.sin(s)*a+(n[0].x+o.x)/2-5,l.y=-Math.cos(s)*a+(n[0].y+o.y)/2-5):(l.x=Math.sin(s)*a+(n[0].x+o.x)/2,l.y=-Math.cos(s)*a+(n[0].y+o.y)/2),l}function S(t){let e="",r="";for(const i of t)void 0!==i&&(i.startsWith("color:")||i.startsWith("text-align:")?r=r+i+";":e=e+i+";");return{style:e,labelStyle:r}}(0,i.K2)(v,"calcTerminalLabelPosition"),(0,i.K2)(S,"getStylesFromArray");var T=0,A=(0,i.K2)((()=>(T++,"id-"+Math.random().toString(36).substr(2,12)+"-"+T)),"generateId");function M(t){let e="";for(let r=0;rM(t.length)),"random"),L=(0,i.K2)((function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}}),"getTextObj"),F=(0,i.K2)((function(t,e){const r=e.text.replace(i.Y2.lineBreakRegex," "),[,n]=N(e.fontSize),o=t.append("text");o.attr("x",e.x),o.attr("y",e.y),o.style("text-anchor",e.anchor),o.style("font-family",e.fontFamily),o.style("font-size",n),o.style("font-weight",e.fontWeight),o.attr("fill",e.fill),void 0!==e.class&&o.attr("class",e.class);const a=o.append("tspan");return a.attr("x",e.x+2*e.textMargin),a.attr("fill",e.fill),a.text(r),o}),"drawSimpleText"),$=(0,a.A)(((t,e,r)=>{if(!t)return t;if(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),i.Y2.lineBreakRegex.test(t))return t;const n=t.split(" ").filter(Boolean),o=[];let a="";return n.forEach(((t,i)=>{const s=O(`${t} `,r),l=O(a,r);if(s>e){const{hyphenatedStrings:i,remainingWord:n}=E(t,e,"-",r);o.push(a,...i),a=n}else l+s>=e?(o.push(a),a=t):a=[a,t].filter(Boolean).join(" ");i+1===n.length&&o.push(a)})),o.filter((t=>""!==t)).join(r.joinWith)}),((t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`)),E=(0,a.A)(((t,e,r="-",i)=>{i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},i);const n=[...t],o=[];let a="";return n.forEach(((t,s)=>{const l=`${a}${t}`;if(O(l,i)>=e){const t=s+1,e=n.length===t,i=`${l}${r}`;o.push(e?l:i),a=""}else a=l})),{hyphenatedStrings:o,remainingWord:a}}),((t,e,r="-",i)=>`${t}${e}${r}${i.fontSize}${i.fontWeight}${i.fontFamily}`));function D(t,e){return R(t,e).height}function O(t,e){return R(t,e).width}(0,i.K2)(D,"calculateTextHeight"),(0,i.K2)(O,"calculateTextWidth");var I,R=(0,a.A)(((t,e)=>{const{fontSize:r=12,fontFamily:n="Arial",fontWeight:a=400}=e;if(!t)return{width:0,height:0};const[,s]=N(r),h=["sans-serif",n],c=t.split(i.Y2.lineBreakRegex),u=[],d=(0,o.Ltv)("body");if(!d.remove)return{width:0,height:0,lineHeight:0};const p=d.append("svg");for(const t of h){let e=0;const r={width:0,height:0,lineHeight:0};for(const i of c){const n=L();n.text=i||l;const o=F(p,n).style("font-size",s).style("font-weight",a).style("font-family",t),h=(o._groups||o)[0][0].getBBox();if(0===h.width&&0===h.height)throw new Error("svg element not in render tree");r.width=Math.round(Math.max(r.width,h.width)),e=Math.round(h.height),r.height+=e,r.lineHeight=Math.round(Math.max(r.lineHeight,e))}u.push(r)}return p.remove(),u[isNaN(u[1].height)||isNaN(u[1].width)||isNaN(u[1].lineHeight)||u[0].height>u[1].height&&u[0].width>u[1].width&&u[0].lineHeight>u[1].lineHeight?0:1]}),((t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`)),P=class{constructor(t=!1,e){this.count=0,this.count=e?e.length:0,this.next=t?()=>this.count++:()=>Date.now()}static{(0,i.K2)(this,"InitIDGenerator")}},z=(0,i.K2)((function(t){return I=I||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),I.innerHTML=t,unescape(I.textContent)}),"entityDecode");function K(t){return"str"in t}(0,i.K2)(K,"isDetailedError");var q=(0,i.K2)(((t,e,r,i)=>{if(!i)return;const n=t.node()?.getBBox();n&&t.append("text").text(i).attr("x",n.x+n.width/2).attr("y",-r).attr("class",e)}),"insertTitle"),N=(0,i.K2)((t=>{if("number"==typeof t)return[t,t+"px"];const e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]}),"parseFontSize");function j(t,e){return(0,s.A)({},t,e)}(0,i.K2)(j,"cleanAndMerge");var W={assignWithDepth:i.hH,wrapLabel:$,calculateTextHeight:D,calculateTextWidth:O,calculateTextDimensions:R,cleanAndMerge:j,detectInit:u,detectDirective:d,isSubstringInArray:f,interpolateToCurve:g,calcLabelPosition:k,calcCardinalityPosition:_,calcTerminalLabelPosition:v,formatUrl:y,getStylesFromArray:S,generateId:A,random:B,runFunc:m,entityDecode:z,insertTitle:q,parseFontSize:N,InitIDGenerator:P},U=(0,i.K2)((function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,(function(t){return t.substring(0,t.length-1)})),e=e.replace(/classDef.*:\S*#.*;/g,(function(t){return t.substring(0,t.length-1)})),e=e.replace(/#\w+;/g,(function(t){const e=t.substring(1,t.length-1);return/^\+?\d+$/.test(e)?"fl°°"+e+"¶ß":"fl°"+e+"¶ß"})),e}),"encodeEntities"),H=(0,i.K2)((function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")}),"decodeEntities"),Y=(0,i.K2)(((t,e,{counter:r=0,prefix:i,suffix:n})=>`${i?`${i}_`:""}${t}_${e}_${r}${n?`_${n}`:""}`),"getEdgeId")},5388:(t,e,r)=>{"use strict";r.d(e,{XX:()=>h,q7:()=>c,sO:()=>l});var i=r(3256),n=r(5522),o=r(32),a={common:o.Y2,getConfig:o.zj,insertCluster:i.U,insertEdge:i.Jo,insertEdgeLabel:i.jP,insertMarkers:i.g0,insertNode:i.on,interpolateToCurve:n.Ib,labelHelper:i.Zk,log:o.Rm,positionEdgeLabel:i.T_},s={},l=(0,o.K2)((t=>{for(const e of t)s[e.name]=e}),"registerLayoutLoaders");(0,o.K2)((()=>{l([{name:"dagre",loader:(0,o.K2)((async()=>await Promise.all([r.e(913),r.e(567),r.e(501)]).then(r.bind(r,501))),"loader")}])}),"registerDefaultLayoutLoaders")();var h=(0,o.K2)((async(t,e)=>{if(!(t.layoutAlgorithm in s))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);const r=s[t.layoutAlgorithm];return(await r.loader()).render(t,e,a,{algorithm:r.algorithm})}),"render"),c=(0,o.K2)(((t="",{fallback:e="dagre"}={})=>{if(t in s)return t;if(e in s)return o.Rm.warn(`Layout algorithm ${t} is not registered. Using ${e} as fallback.`),e;throw new Error(`Both layout algorithms ${t} and ${e} are not registered.`)}),"getRegisteredLayoutAlgorithm")},2382:(t,e,r)=>{"use strict";r.d(e,{W6:()=>Tt,GZ:()=>Lt,hE:()=>Bt});var i=r(5522),n=r(32),o=r(4852);let a={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};function s(t){a=t}const l=/[&<>"']/,h=new RegExp(l.source,"g"),c=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,u=new RegExp(c.source,"g"),d={"&":"&","<":"<",">":">",'"':""","'":"'"},p=t=>d[t];function f(t,e){if(e){if(l.test(t))return t.replace(h,p)}else if(c.test(t))return t.replace(u,p);return t}const g=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi,y=/(^|[^\[])\^/g;function m(t,e){let r="string"==typeof t?t:t.source;e=e||"";const i={replace:(t,e)=>{let n="string"==typeof e?e:e.source;return n=n.replace(y,"$1"),r=r.replace(t,n),i},getRegex:()=>new RegExp(r,e)};return i}function x(t){try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}const b={exec:()=>null};function k(t,e){const r=t.replace(/\|/g,((t,e,r)=>{let i=!1,n=e;for(;--n>=0&&"\\"===r[n];)i=!i;return i?"|":" |"})).split(/ \|/);let i=0;if(r[0].trim()||r.shift(),r.length>0&&!r[r.length-1].trim()&&r.pop(),e)if(r.length>e)r.splice(e);else for(;r.length0)return{type:"space",raw:e[0]}}code(t){const e=this.rules.block.code.exec(t);if(e){const t=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:C(t,"\n")}}}fences(t){const e=this.rules.block.fences.exec(t);if(e){const t=e[0],r=function(t,e){const r=t.match(/^(\s+)(?:```)/);if(null===r)return e;const i=r[1];return e.split("\n").map((t=>{const e=t.match(/^\s+/);if(null===e)return t;const[r]=e;return r.length>=i.length?t.slice(i.length):t})).join("\n")}(t,e[3]||"");return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:r}}}heading(t){const e=this.rules.block.heading.exec(t);if(e){let t=e[2].trim();if(/#$/.test(t)){const e=C(t,"#");this.options.pedantic?t=e.trim():e&&!/ $/.test(e)||(t=e.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(t){const e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:C(e[0],"\n")}}blockquote(t){const e=this.rules.block.blockquote.exec(t);if(e){let t=C(e[0],"\n").split("\n"),r="",i="";const n=[];for(;t.length>0;){let e=!1;const o=[];let a;for(a=0;a/.test(t[a]))o.push(t[a]),e=!0;else{if(e)break;o.push(t[a])}t=t.slice(a);const s=o.join("\n"),l=s.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,"\n $1").replace(/^ {0,3}>[ \t]?/gm,"");r=r?`${r}\n${s}`:s,i=i?`${i}\n${l}`:l;const h=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(l,n,!0),this.lexer.state.top=h,0===t.length)break;const c=n[n.length-1];if("code"===c?.type)break;if("blockquote"===c?.type){const e=c,o=e.raw+"\n"+t.join("\n"),a=this.blockquote(o);n[n.length-1]=a,r=r.substring(0,r.length-e.raw.length)+a.raw,i=i.substring(0,i.length-e.text.length)+a.text;break}if("list"!==c?.type);else{const e=c,o=e.raw+"\n"+t.join("\n"),a=this.list(o);n[n.length-1]=a,r=r.substring(0,r.length-c.raw.length)+a.raw,i=i.substring(0,i.length-e.raw.length)+a.raw,t=o.substring(n[n.length-1].raw.length).split("\n")}}return{type:"blockquote",raw:r,tokens:n,text:i}}}list(t){let e=this.rules.block.list.exec(t);if(e){let r=e[1].trim();const i=r.length>1,n={type:"list",raw:"",ordered:i,start:i?+r.slice(0,-1):"",loose:!1,items:[]};r=i?`\\d{1,9}\\${r.slice(-1)}`:`\\${r}`,this.options.pedantic&&(r=i?r:"[*+-]");const o=new RegExp(`^( {0,3}${r})((?:[\t ][^\\n]*)?(?:\\n|$))`);let a=!1;for(;t;){let r=!1,i="",s="";if(!(e=o.exec(t)))break;if(this.rules.block.hr.test(t))break;i=e[0],t=t.substring(i.length);let l=e[2].split("\n",1)[0].replace(/^\t+/,(t=>" ".repeat(3*t.length))),h=t.split("\n",1)[0],c=!l.trim(),u=0;if(this.options.pedantic?(u=2,s=l.trimStart()):c?u=e[1].length+1:(u=e[2].search(/[^ ]/),u=u>4?1:u,s=l.slice(u),u+=e[1].length),c&&/^ *$/.test(h)&&(i+=h+"\n",t=t.substring(h.length+1),r=!0),!r){const e=new RegExp(`^ {0,${Math.min(3,u-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),r=new RegExp(`^ {0,${Math.min(3,u-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),n=new RegExp(`^ {0,${Math.min(3,u-1)}}(?:\`\`\`|~~~)`),o=new RegExp(`^ {0,${Math.min(3,u-1)}}#`);for(;t;){const a=t.split("\n",1)[0];if(h=a,this.options.pedantic&&(h=h.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),n.test(h))break;if(o.test(h))break;if(e.test(h))break;if(r.test(t))break;if(h.search(/[^ ]/)>=u||!h.trim())s+="\n"+h.slice(u);else{if(c)break;if(l.search(/[^ ]/)>=4)break;if(n.test(l))break;if(o.test(l))break;if(r.test(l))break;s+="\n"+h}c||h.trim()||(c=!0),i+=a+"\n",t=t.substring(a.length+1),l=h.slice(u)}}n.loose||(a?n.loose=!0:/\n *\n *$/.test(i)&&(a=!0));let d,p=null;this.options.gfm&&(p=/^\[[ xX]\] /.exec(s),p&&(d="[ ] "!==p[0],s=s.replace(/^\[[ xX]\] +/,""))),n.items.push({type:"list_item",raw:i,task:!!p,checked:d,loose:!1,text:s,tokens:[]}),n.raw+=i}n.items[n.items.length-1].raw=n.items[n.items.length-1].raw.trimEnd(),n.items[n.items.length-1].text=n.items[n.items.length-1].text.trimEnd(),n.raw=n.raw.trimEnd();for(let t=0;t"space"===t.type)),r=e.length>0&&e.some((t=>/\n.*\n/.test(t.raw)));n.loose=r}if(n.loose)for(let t=0;t$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:r,title:i}}}table(t){const e=this.rules.block.table.exec(t);if(!e)return;if(!/[:|]/.test(e[2]))return;const r=k(e[1]),i=e[2].replace(/^\||\| *$/g,"").split("|"),n=e[3]&&e[3].trim()?e[3].replace(/\n[ \t]*$/,"").split("\n"):[],o={type:"table",raw:e[0],header:[],align:[],rows:[]};if(r.length===i.length){for(const t of i)/^ *-+: *$/.test(t)?o.align.push("right"):/^ *:-+: *$/.test(t)?o.align.push("center"):/^ *:-+ *$/.test(t)?o.align.push("left"):o.align.push(null);for(let t=0;t({text:t,tokens:this.lexer.inline(t),header:!1,align:o.align[e]}))));return o}}lheading(t){const e=this.rules.block.lheading.exec(t);if(e)return{type:"heading",raw:e[0],depth:"="===e[2].charAt(0)?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(t){const e=this.rules.block.paragraph.exec(t);if(e){const t="\n"===e[1].charAt(e[1].length-1)?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(t){const e=this.rules.block.text.exec(t);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(t){const e=this.rules.inline.escape.exec(t);if(e)return{type:"escape",raw:e[0],text:f(e[1])}}tag(t){const e=this.rules.inline.tag.exec(t);if(e)return!this.lexer.state.inLink&&/^
/i.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(t){const e=this.rules.inline.link.exec(t);if(e){const t=e[2].trim();if(!this.options.pedantic&&/^$/.test(t))return;const e=C(t.slice(0,-1),"\\");if((t.length-e.length)%2==0)return}else{const t=function(t,e){if(-1===t.indexOf(e[1]))return-1;let r=0;for(let i=0;i-1){const r=(0===e[0].indexOf("!")?5:4)+e[1].length+t;e[2]=e[2].substring(0,t),e[0]=e[0].substring(0,r).trim(),e[3]=""}}let r=e[2],i="";if(this.options.pedantic){const t=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);t&&(r=t[1],i=t[3])}else i=e[3]?e[3].slice(1,-1):"";return r=r.trim(),/^$/.test(t)?r.slice(1):r.slice(1,-1)),w(e,{href:r?r.replace(this.rules.inline.anyPunctuation,"$1"):r,title:i?i.replace(this.rules.inline.anyPunctuation,"$1"):i},e[0],this.lexer)}}reflink(t,e){let r;if((r=this.rules.inline.reflink.exec(t))||(r=this.rules.inline.nolink.exec(t))){const t=e[(r[2]||r[1]).replace(/\s+/g," ").toLowerCase()];if(!t){const t=r[0].charAt(0);return{type:"text",raw:t,text:t}}return w(r,t,r[0],this.lexer)}}emStrong(t,e,r=""){let i=this.rules.inline.emStrongLDelim.exec(t);if(i&&(!i[3]||!r.match(/[\p{L}\p{N}]/u))&&(!i[1]&&!i[2]||!r||this.rules.inline.punctuation.exec(r))){const r=[...i[0]].length-1;let n,o,a=r,s=0;const l="*"===i[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(l.lastIndex=0,e=e.slice(-1*t.length+r);null!=(i=l.exec(e));){if(n=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!n)continue;if(o=[...n].length,i[3]||i[4]){a+=o;continue}if((i[5]||i[6])&&r%3&&!((r+o)%3)){s+=o;continue}if(a-=o,a>0)continue;o=Math.min(o,o+a+s);const e=[...i[0]][0].length,l=t.slice(0,r+i.index+e+o);if(Math.min(r,o)%2){const t=l.slice(1,-1);return{type:"em",raw:l,text:t,tokens:this.lexer.inlineTokens(t)}}const h=l.slice(2,-2);return{type:"strong",raw:l,text:h,tokens:this.lexer.inlineTokens(h)}}}}codespan(t){const e=this.rules.inline.code.exec(t);if(e){let t=e[2].replace(/\n/g," ");const r=/[^ ]/.test(t),i=/^ /.test(t)&&/ $/.test(t);return r&&i&&(t=t.substring(1,t.length-1)),t=f(t,!0),{type:"codespan",raw:e[0],text:t}}}br(t){const e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}del(t){const e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(t){const e=this.rules.inline.autolink.exec(t);if(e){let t,r;return"@"===e[2]?(t=f(e[1]),r="mailto:"+t):(t=f(e[1]),r=t),{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}url(t){let e;if(e=this.rules.inline.url.exec(t)){let t,r;if("@"===e[2])t=f(e[0]),r="mailto:"+t;else{let i;do{i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??""}while(i!==e[0]);t=f(e[0]),r="www."===e[1]?"http://"+e[0]:e[0]}return{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(t){const e=this.rules.inline.text.exec(t);if(e){let t;return t=this.lexer.state.inRawBlock?e[0]:f(e[0]),{type:"text",raw:e[0],text:t}}}}const v=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,S=/(?:[*+-]|\d{1,9}[.)])/,T=m(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,S).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),A=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,M=/(?!\s*\])(?:\\.|[^\[\]\\])+/,B=m(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",M).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),L=m(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,S).getRegex(),F="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",$=/|$))/,E=m("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",$).replace("tag",F).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),D=m(A).replace("hr",v).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",F).getRegex(),O={blockquote:m(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",D).getRegex(),code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,def:B,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:v,html:E,lheading:T,list:L,newline:/^(?: *(?:\n|$))+/,paragraph:D,table:b,text:/^[^\n]+/},I=m("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",v).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",F).getRegex(),R={...O,table:I,paragraph:m(A).replace("hr",v).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",I).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",F).getRegex()},P={...O,html:m("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",$).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:b,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:m(A).replace("hr",v).replace("heading"," *#{1,6} *[^\n]").replace("lheading",T).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},z=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,K=/^( {2,}|\\)\n(?!\s*$)/,q="\\p{P}\\p{S}",N=m(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,q).getRegex(),j=m(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,q).getRegex(),W=m("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,q).getRegex(),U=m("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,q).getRegex(),H=m(/\\([punct])/,"gu").replace(/punct/g,q).getRegex(),Y=m(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),G=m($).replace("(?:--\x3e|$)","--\x3e").getRegex(),V=m("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",G).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Z=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,X=m(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Z).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Q=m(/^!?\[(label)\]\[(ref)\]/).replace("label",Z).replace("ref",M).getRegex(),J=m(/^!?\[(ref)\](?:\[\])?/).replace("ref",M).getRegex(),tt={_backpedal:b,anyPunctuation:H,autolink:Y,blockSkip:/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,br:K,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:b,emStrongLDelim:j,emStrongRDelimAst:W,emStrongRDelimUnd:U,escape:z,link:X,nolink:J,punctuation:N,reflink:Q,reflinkSearch:m("reflink|nolink(?!\\()","g").replace("reflink",Q).replace("nolink",J).getRegex(),tag:V,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\e+" ".repeat(r.length)));t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some((r=>!!(i=r.call({lexer:this},t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)))))if(i=this.tokenizer.space(t))t=t.substring(i.raw.length),1===i.raw.length&&e.length>0?e[e.length-1].raw+="\n":e.push(i);else if(i=this.tokenizer.code(t))t=t.substring(i.raw.length),n=e[e.length-1],!n||"paragraph"!==n.type&&"text"!==n.type?e.push(i):(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue[this.inlineQueue.length-1].src=n.text);else if(i=this.tokenizer.fences(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.heading(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.hr(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.blockquote(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.list(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.html(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.def(t))t=t.substring(i.raw.length),n=e[e.length-1],!n||"paragraph"!==n.type&&"text"!==n.type?this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title}):(n.raw+="\n"+i.raw,n.text+="\n"+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=n.text);else if(i=this.tokenizer.table(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.lheading(t))t=t.substring(i.raw.length),e.push(i);else{if(o=t,this.options.extensions&&this.options.extensions.startBlock){let e=1/0;const r=t.slice(1);let i;this.options.extensions.startBlock.forEach((t=>{i=t.call({lexer:this},r),"number"==typeof i&&i>=0&&(e=Math.min(e,i))})),e<1/0&&e>=0&&(o=t.substring(0,e+1))}if(this.state.top&&(i=this.tokenizer.paragraph(o)))n=e[e.length-1],r&&"paragraph"===n?.type?(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):e.push(i),r=o.length!==t.length,t=t.substring(i.raw.length);else if(i=this.tokenizer.text(t))t=t.substring(i.raw.length),n=e[e.length-1],n&&"text"===n.type?(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):e.push(i);else if(t){const e="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(e);break}throw new Error(e)}}return this.state.top=!0,e}inline(t,e=[]){return this.inlineQueue.push({src:t,tokens:e}),e}inlineTokens(t,e=[]){let r,i,n,o,a,s,l=t;if(this.tokens.links){const t=Object.keys(this.tokens.links);if(t.length>0)for(;null!=(o=this.tokenizer.rules.inline.reflinkSearch.exec(l));)t.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(l=l.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(o=this.tokenizer.rules.inline.blockSkip.exec(l));)l=l.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(o=this.tokenizer.rules.inline.anyPunctuation.exec(l));)l=l.slice(0,o.index)+"++"+l.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;t;)if(a||(s=""),a=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some((i=>!!(r=i.call({lexer:this},t,e))&&(t=t.substring(r.raw.length),e.push(r),!0)))))if(r=this.tokenizer.escape(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.tag(t))t=t.substring(r.raw.length),i=e[e.length-1],i&&"text"===r.type&&"text"===i.type?(i.raw+=r.raw,i.text+=r.text):e.push(r);else if(r=this.tokenizer.link(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.reflink(t,this.tokens.links))t=t.substring(r.raw.length),i=e[e.length-1],i&&"text"===r.type&&"text"===i.type?(i.raw+=r.raw,i.text+=r.text):e.push(r);else if(r=this.tokenizer.emStrong(t,l,s))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.codespan(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.br(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.del(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.autolink(t))t=t.substring(r.raw.length),e.push(r);else if(this.state.inLink||!(r=this.tokenizer.url(t))){if(n=t,this.options.extensions&&this.options.extensions.startInline){let e=1/0;const r=t.slice(1);let i;this.options.extensions.startInline.forEach((t=>{i=t.call({lexer:this},r),"number"==typeof i&&i>=0&&(e=Math.min(e,i))})),e<1/0&&e>=0&&(n=t.substring(0,e+1))}if(r=this.tokenizer.inlineText(n))t=t.substring(r.raw.length),"_"!==r.raw.slice(-1)&&(s=r.raw.slice(-1)),a=!0,i=e[e.length-1],i&&"text"===i.type?(i.raw+=r.raw,i.text+=r.text):e.push(r);else if(t){const e="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(e);break}throw new Error(e)}}else t=t.substring(r.raw.length),e.push(r);return e}}class st{options;parser;constructor(t){this.options=t||a}space(t){return""}code({text:t,lang:e,escaped:r}){const i=(e||"").match(/^\S*/)?.[0],n=t.replace(/\n$/,"")+"\n";return i?'
'+(r?n:f(n,!0))+"
\n":"
"+(r?n:f(n,!0))+"
\n"}blockquote({tokens:t}){return`
\n${this.parser.parse(t)}
\n`}html({text:t}){return t}heading({tokens:t,depth:e}){return`${this.parser.parseInline(t)}\n`}hr(t){return"
\n"}list(t){const e=t.ordered,r=t.start;let i="";for(let e=0;e\n"+i+"\n"}listitem(t){let e="";if(t.task){const r=this.checkbox({checked:!!t.checked});t.loose?t.tokens.length>0&&"paragraph"===t.tokens[0].type?(t.tokens[0].text=r+" "+t.tokens[0].text,t.tokens[0].tokens&&t.tokens[0].tokens.length>0&&"text"===t.tokens[0].tokens[0].type&&(t.tokens[0].tokens[0].text=r+" "+t.tokens[0].tokens[0].text)):t.tokens.unshift({type:"text",raw:r+" ",text:r+" "}):e+=r+" "}return e+=this.parser.parse(t.tokens,!!t.loose),`
  • ${e}
  • \n`}checkbox({checked:t}){return"'}paragraph({tokens:t}){return`

    ${this.parser.parseInline(t)}

    \n`}table(t){let e="",r="";for(let e=0;e${i}`),"\n\n"+e+"\n"+i+"
    \n"}tablerow({text:t}){return`\n${t}\n`}tablecell(t){const e=this.parser.parseInline(t.tokens),r=t.header?"th":"td";return(t.align?`<${r} align="${t.align}">`:`<${r}>`)+e+`\n`}strong({tokens:t}){return`${this.parser.parseInline(t)}`}em({tokens:t}){return`${this.parser.parseInline(t)}`}codespan({text:t}){return`${t}`}br(t){return"
    "}del({tokens:t}){return`${this.parser.parseInline(t)}`}link({href:t,title:e,tokens:r}){const i=this.parser.parseInline(r),n=x(t);if(null===n)return i;let o='
    ",o}image({href:t,title:e,text:r}){const i=x(t);if(null===i)return r;let n=`${r}{const n=t[i].flat(1/0);r=r.concat(this.walkTokens(n,e))})):t.tokens&&(r=r.concat(this.walkTokens(t.tokens,e)))}}return r}use(...t){const e=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach((t=>{const r={...t};if(r.async=this.defaults.async||r.async||!1,t.extensions&&(t.extensions.forEach((t=>{if(!t.name)throw new Error("extension name required");if("renderer"in t){const r=e.renderers[t.name];e.renderers[t.name]=r?function(...e){let i=t.renderer.apply(this,e);return!1===i&&(i=r.apply(this,e)),i}:t.renderer}if("tokenizer"in t){if(!t.level||"block"!==t.level&&"inline"!==t.level)throw new Error("extension level must be 'block' or 'inline'");const r=e[t.level];r?r.unshift(t.tokenizer):e[t.level]=[t.tokenizer],t.start&&("block"===t.level?e.startBlock?e.startBlock.push(t.start):e.startBlock=[t.start]:"inline"===t.level&&(e.startInline?e.startInline.push(t.start):e.startInline=[t.start]))}"childTokens"in t&&t.childTokens&&(e.childTokens[t.name]=t.childTokens)})),r.extensions=e),t.renderer){const e=this.defaults.renderer||new st(this.defaults);for(const r in t.renderer){if(!(r in e))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;const i=r;let n=t.renderer[i];t.useNewRenderer||(n=this.#e(n,i,e));const o=e[i];e[i]=(...t)=>{let r=n.apply(e,t);return!1===r&&(r=o.apply(e,t)),r||""}}r.renderer=e}if(t.tokenizer){const e=this.defaults.tokenizer||new _(this.defaults);for(const r in t.tokenizer){if(!(r in e))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;const i=r,n=t.tokenizer[i],o=e[i];e[i]=(...t)=>{let r=n.apply(e,t);return!1===r&&(r=o.apply(e,t)),r}}r.tokenizer=e}if(t.hooks){const e=this.defaults.hooks||new ct;for(const r in t.hooks){if(!(r in e))throw new Error(`hook '${r}' does not exist`);if("options"===r)continue;const i=r,n=t.hooks[i],o=e[i];ct.passThroughHooks.has(r)?e[i]=t=>{if(this.defaults.async)return Promise.resolve(n.call(e,t)).then((t=>o.call(e,t)));const r=n.call(e,t);return o.call(e,r)}:e[i]=(...t)=>{let r=n.apply(e,t);return!1===r&&(r=o.apply(e,t)),r}}r.hooks=e}if(t.walkTokens){const e=this.defaults.walkTokens,i=t.walkTokens;r.walkTokens=function(t){let r=[];return r.push(i.call(this,t)),e&&(r=r.concat(e.call(this,t))),r}}this.defaults={...this.defaults,...r}})),this}#e(t,e,r){switch(e){case"heading":return function(i){return i.type&&i.type===e?t.call(this,r.parser.parseInline(i.tokens),i.depth,function(t){return t.replace(g,((t,e)=>"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):""))}(r.parser.parseInline(i.tokens,r.parser.textRenderer))):t.apply(this,arguments)};case"code":return function(r){return r.type&&r.type===e?t.call(this,r.text,r.lang,!!r.escaped):t.apply(this,arguments)};case"table":return function(r){if(!r.type||r.type!==e)return t.apply(this,arguments);let i="",n="";for(let t=0;t0&&"paragraph"===e.tokens[0].type?(e.tokens[0].text=t+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&"text"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=t+" "+e.tokens[0].tokens[0].text)):e.tokens.unshift({type:"text",text:t+" "}):s+=t+" "}s+=this.parser.parse(e.tokens,o),a+=this.listitem({type:"list_item",raw:s,text:s,task:n,checked:!!i,loose:o,tokens:e.tokens})}return t.call(this,a,i,n)};case"html":return function(r){return r.type&&r.type===e?t.call(this,r.text,r.block):t.apply(this,arguments)};case"paragraph":case"strong":case"em":case"del":return function(r){return r.type&&r.type===e?t.call(this,this.parser.parseInline(r.tokens)):t.apply(this,arguments)};case"escape":case"codespan":case"text":return function(r){return r.type&&r.type===e?t.call(this,r.text):t.apply(this,arguments)};case"link":return function(r){return r.type&&r.type===e?t.call(this,r.href,r.title,this.parser.parseInline(r.tokens)):t.apply(this,arguments)};case"image":return function(r){return r.type&&r.type===e?t.call(this,r.href,r.title,r.text):t.apply(this,arguments)}}return t}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,e){return at.lex(t,e??this.defaults)}parser(t,e){return ht.parse(t,e??this.defaults)}#t(t,e){return(r,i)=>{const n={...i},o={...this.defaults,...n};!0===this.defaults.async&&!1===n.async&&(o.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),o.async=!0);const a=this.#r(!!o.silent,!!o.async);if(null==r)return a(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof r)return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(r)+", string expected"));if(o.hooks&&(o.hooks.options=o),o.async)return Promise.resolve(o.hooks?o.hooks.preprocess(r):r).then((e=>t(e,o))).then((t=>o.hooks?o.hooks.processAllTokens(t):t)).then((t=>o.walkTokens?Promise.all(this.walkTokens(t,o.walkTokens)).then((()=>t)):t)).then((t=>e(t,o))).then((t=>o.hooks?o.hooks.postprocess(t):t)).catch(a);try{o.hooks&&(r=o.hooks.preprocess(r));let i=t(r,o);o.hooks&&(i=o.hooks.processAllTokens(i)),o.walkTokens&&this.walkTokens(i,o.walkTokens);let n=e(i,o);return o.hooks&&(n=o.hooks.postprocess(n)),n}catch(t){return a(t)}}}#r(t,e){return r=>{if(r.message+="\nPlease report this to https://github.com/markedjs/marked.",t){const t="

    An error occurred:

    "+f(r.message+"",!0)+"
    ";return e?Promise.resolve(t):t}if(e)return Promise.reject(r);throw r}}};function dt(t,e){return ut.parse(t,e)}dt.options=dt.setOptions=function(t){return ut.setOptions(t),dt.defaults=ut.defaults,s(dt.defaults),dt},dt.getDefaults=function(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}},dt.defaults=a,dt.use=function(...t){return ut.use(...t),dt.defaults=ut.defaults,s(dt.defaults),dt},dt.walkTokens=function(t,e){return ut.walkTokens(t,e)},dt.parseInline=ut.parseInline,dt.Parser=ht,dt.parser=ht.parse,dt.Renderer=st,dt.TextRenderer=lt,dt.Lexer=at,dt.lexer=at.lex,dt.Tokenizer=_,dt.Hooks=ct,dt.parse=dt,dt.options,dt.setOptions,dt.use,dt.walkTokens,dt.parseInline,ht.parse,at.lex;var pt=r(513);function ft(t,{markdownAutoWrap:e}){const r=t.replace(//g,"\n").replace(/\n{2,}/g,"\n"),i=(0,pt.T)(r);return!1===e?i.replace(/ /g," "):i}function gt(t,e={}){const r=ft(t,e),i=dt.lexer(r),o=[[]];let a=0;function s(t,e="normal"){"text"===t.type?t.text.split("\n").forEach(((t,r)=>{0!==r&&(a++,o.push([])),t.split(" ").forEach((t=>{t&&o[a].push({content:t,type:e})}))})):"strong"===t.type||"em"===t.type?t.tokens.forEach((e=>{s(e,t.type)})):"html"===t.type&&o[a].push({content:t.text,type:"normal"})}return(0,n.K2)(s,"processNode"),i.forEach((t=>{"paragraph"===t.type?t.tokens?.forEach((t=>{s(t)})):"html"===t.type&&o[a].push({content:t.text,type:"normal"})})),o}function yt(t,{markdownAutoWrap:e}={}){const r=dt.lexer(t);function i(t){return"text"===t.type?!1===e?t.text.replace(/\n */g,"
    ").replace(/ /g," "):t.text.replace(/\n */g,"
    "):"strong"===t.type?`${t.tokens?.map(i).join("")}`:"em"===t.type?`${t.tokens?.map(i).join("")}`:"paragraph"===t.type?`

    ${t.tokens?.map(i).join("")}

    `:"space"===t.type?"":"html"===t.type?`${t.text}`:`Unsupported markdown: ${t.type}`}return(0,n.K2)(i,"output"),r.map(i).join("")}function mt(t){return Intl.Segmenter?[...(new Intl.Segmenter).segment(t)].map((t=>t.segment)):[...t]}function xt(t,e){return bt(t,[],mt(e.content),e.type)}function bt(t,e,r,i){if(0===r.length)return[{content:e.join(""),type:i},{content:"",type:i}];const[n,...o]=r,a=[...e,n];return t([{content:a.join(""),type:i}])?bt(t,a,o,i):(0===e.length&&n&&(e.push(n),r.shift()),[{content:e.join(""),type:i},{content:r.join(""),type:i}])}function kt(t,e){if(t.some((({content:t})=>t.includes("\n"))))throw new Error("splitLineToFitWidth does not support newlines in the line");return Ct(t,e)}function Ct(t,e,r=[],i=[]){if(0===t.length)return i.length>0&&r.push(i),r.length>0?r:[];let n="";" "===t[0].content&&(n=" ",t.shift());const o=t.shift()??{content:" ",type:"normal"},a=[...i];if(""!==n&&a.push({content:n,type:"normal"}),a.push(o),e(a))return Ct(t,e,r,a);if(i.length>0)r.push(i),t.unshift(o);else if(o.content){const[i,n]=xt(e,o);r.push([i]),n.content&&t.unshift(n)}return Ct(t,e,r)}function wt(t,e){e&&t.attr("style",e)}async function _t(t,e,r,i,o=!1){const a=t.append("foreignObject");a.attr("width",10*r+"px"),a.attr("height",10*r+"px");const s=a.append("xhtml:div");let l=e.label;e.label&&(0,n.Wi)(e.label)&&(l=await(0,n.VJ)(e.label.replace(n.Y2.lineBreakRegex,"\n"),(0,n.D7)()));const h=e.isNode?"nodeLabel":"edgeLabel",c=s.append("span");c.html(l),wt(c,e.labelStyle),c.attr("class",`${h} ${i}`),wt(s,e.labelStyle),s.style("display","table-cell"),s.style("white-space","nowrap"),s.style("line-height","1.5"),s.style("max-width",r+"px"),s.style("text-align","center"),s.attr("xmlns","http://www.w3.org/1999/xhtml"),o&&s.attr("class","labelBkg");let u=s.node().getBoundingClientRect();return u.width===r&&(s.style("display","table"),s.style("white-space","break-spaces"),s.style("width",r+"px"),u=s.node().getBoundingClientRect()),a.node()}function vt(t,e,r){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em")}function St(t,e,r){const i=t.append("text"),n=vt(i,1,e);Mt(n,r);const o=n.node().getComputedTextLength();return i.remove(),o}function Tt(t,e,r){const i=t.append("text"),n=vt(i,1,e);Mt(n,[{content:r,type:"normal"}]);const o=n.node()?.getBoundingClientRect();return o&&i.remove(),o}function At(t,e,r,i=!1){const o=e.append("g"),a=o.insert("rect").attr("class","background").attr("style","stroke: none"),s=o.append("text").attr("y","-10.1");let l=0;for(const e of r){const r=(0,n.K2)((e=>St(o,1.1,e)<=t),"checkWidth"),i=r(e)?[e]:kt(e,r);for(const t of i)Mt(vt(s,l,1.1),t),l++}if(i){const t=s.node().getBBox(),e=2;return a.attr("x",t.x-e).attr("y",t.y-e).attr("width",t.width+2*e).attr("height",t.height+2*e),o.node()}return s.node()}function Mt(t,e){t.text(""),e.forEach(((e,r)=>{const i=t.append("tspan").attr("font-style","em"===e.type?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight","strong"===e.type?"bold":"normal");0===r?i.text(e.content):i.text(" "+e.content)}))}function Bt(t){return t.replace(/fa[bklrs]?:fa-[\w-]+/g,(t=>``))}(0,n.K2)(ft,"preprocessMarkdown"),(0,n.K2)(gt,"markdownToLines"),(0,n.K2)(yt,"markdownToHTML"),(0,n.K2)(mt,"splitTextToChars"),(0,n.K2)(xt,"splitWordToFitWidth"),(0,n.K2)(bt,"splitWordToFitWidthRecursion"),(0,n.K2)(kt,"splitLineToFitWidth"),(0,n.K2)(Ct,"splitLineToFitWidthRecursion"),(0,n.K2)(wt,"applyStyle"),(0,n.K2)(_t,"addHtmlSpan"),(0,n.K2)(vt,"createTspan"),(0,n.K2)(St,"computeWidthOfText"),(0,n.K2)(Tt,"computeDimensionOfText"),(0,n.K2)(At,"createFormattedText"),(0,n.K2)(Mt,"updateTextContentAndStyles"),(0,n.K2)(Bt,"replaceIconSubstring");var Lt=(0,n.K2)((async(t,e="",{style:r="",isTitle:a=!1,classes:s="",useHtmlLabels:l=!0,isNode:h=!0,width:c=200,addSvgBackground:u=!1}={},d)=>{if(n.Rm.debug("XYZ createText",e,r,a,s,l,h,"addSvgBackground: ",u),l){const o=yt(e,d),a=Bt((0,i.Sm)(o)),l=e.replace(/\\\\/g,"\\"),p={isNode:h,label:(0,n.Wi)(e)?l:a,labelStyle:r.replace("fill:","color:")};return await _t(t,p,c,s,u)}{const i=At(c,t,gt(e.replace(//g,"
    ").replace("
    ","
    "),d),!!e&&u);if(h){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));const t=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");(0,o.Ltv)(i).attr("style",t)}else{const t=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");(0,o.Ltv)(i).select("rect").attr("style",t.replace(/background:/g,"fill:"));const e=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");(0,o.Ltv)(i).select("text").attr("style",e)}return i}}),"createText")}},i={};function n(t){var e=i[t];if(void 0!==e)return e.exports;var o=i[t]={exports:{}};return r[t].call(o.exports,o,o.exports,n),o.exports}n.m=r,n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.f={},n.e=t=>Promise.all(Object.keys(n.f).reduce(((e,r)=>(n.f[r](t,e),e)),[])),n.u=t=>"js/"+t+"-"+{3:"bc686a20",4:"934f5a40",70:"826e03f2",81:"3a33b512",130:"395cb664",165:"ccff0039",223:"a5ce106a",258:"c1edc5c0",265:"4e4c541c",317:"0413318d",334:"f60074e8",344:"91b41751",382:"2d69f8f9",387:"3546ecdc",452:"e65d6d68",501:"f9886899",564:"301f7508",567:"38dd778c",573:"ba5e956a",590:"754a9e66",604:"d2d497f5",663:"31678b4b",670:"2fb0c100",674:"17bd4f73",720:"970f726e",723:"47eb515a",731:"7b5d66f3",805:"68e3b42f",826:"2ac63153",862:"ff5166f8",890:"c9907c95",907:"a936ddbe",911:"59f72ec0",913:"4409c8d7",932:"3e97de09",998:"31a2dbbe"}[t]+".chunk.min.js",n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),t={},e="geekdoc:",n.l=(r,i,o,a)=>{if(t[r])t[r].push(i);else{var s,l;if(void 0!==o)for(var h=document.getElementsByTagName("script"),c=0;c{s.onerror=s.onload=null,clearTimeout(p);var n=t[r];if(delete t[r],s.parentNode&&s.parentNode.removeChild(s),n&&n.forEach((t=>t(i))),e)return e(i)},p=setTimeout(d.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=d.bind(null,s.onerror),s.onload=d.bind(null,s.onload),l&&document.head.appendChild(s)}},n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{var t;n.g.importScripts&&(t=n.g.location+"");var e=n.g.document;if(!t&&e&&(e.currentScript&&"SCRIPT"===e.currentScript.tagName.toUpperCase()&&(t=e.currentScript.src),!t)){var r=e.getElementsByTagName("script");if(r.length)for(var i=r.length-1;i>-1&&(!t||!/^http(s?):/.test(t));)t=r[i--].src}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),n.p=t+"../"})(),(()=>{var t={304:0};n.f.j=(e,r)=>{var i=n.o(t,e)?t[e]:void 0;if(0!==i)if(i)r.push(i[2]);else{var o=new Promise(((r,n)=>i=t[e]=[r,n]));r.push(i[2]=o);var a=n.p+n.u(e),s=new Error;n.l(a,(r=>{if(n.o(t,e)&&(0!==(i=t[e])&&(t[e]=void 0),i)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+e+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,i[1](s)}}),"chunk-"+e,e)}};var e=(e,r)=>{var i,o,[a,s,l]=r,h=0;if(a.some((e=>0!==t[e]))){for(i in s)n.o(s,i)&&(n.m[i]=s[i]);l&&l(n)}for(e&&e(r);h{"use strict";var t=n(7148);const e={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};var r,i=new Uint8Array(16);function o(){if(!r&&!(r="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return r(i)}for(var a=[],s=0;s<256;++s)a.push((s+256).toString(16).slice(1));const l=function(t,r,i){if(e.randomUUID&&!r&&!t)return e.randomUUID();var n=(t=t||{}).random||(t.rng||o)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,r){i=i||0;for(var s=0;s<16;++s)r[i+s]=n[s];return r}return function(t,e=0){return(a[t[e+0]]+a[t[e+1]]+a[t[e+2]]+a[t[e+3]]+"-"+a[t[e+4]]+a[t[e+5]]+"-"+a[t[e+6]]+a[t[e+7]]+"-"+a[t[e+8]]+a[t[e+9]]+"-"+a[t[e+10]]+a[t[e+11]]+a[t[e+12]]+a[t[e+13]]+a[t[e+14]]+a[t[e+15]]).toLowerCase()}(n)},h="auto";var c=n(1417),u=n(5388),d=(n(3256),n(8568)),p=(n(7750),n(2382),n(5522)),f=n(1132),g=n(1661),y=n(32),m=n(513),x=n(4852),b="comm",k="rule",C="decl",w=Math.abs,_=String.fromCharCode;function v(t){return t.trim()}function S(t,e,r){return t.replace(e,r)}function T(t,e,r){return t.indexOf(e,r)}function A(t,e){return 0|t.charCodeAt(e)}function M(t,e,r){return t.slice(e,r)}function B(t){return t.length}function L(t,e){return e.push(t),t}function F(t,e){for(var r="",i=0;i0?A(P,--I):0,D--,10===R&&(D=1,E--),R}function q(){return R=I2||U(R)>3?"":" "}function G(t,e){for(;--e&&q()&&!(R<48||R>102||R>57&&R<65||R>70&&R<97););return W(t,j()+(e<6&&32==N()&&32==q()))}function V(t){for(;q();)switch(R){case t:return I;case 34:case 39:34!==t&&39!==t&&V(R);break;case 40:41===t&&V(t);break;case 92:q()}return I}function Z(t,e){for(;q()&&t+R!==57&&(t+R!==84||47!==N()););return"/*"+W(e,I-1)+"*"+_(47===t?t:q())}function X(t){for(;!U(N());)q();return W(t,I)}function Q(t){return function(t){return P="",t}(J("",null,null,null,[""],t=function(t){return E=D=1,O=B(P=t),I=0,[]}(t),0,[0],t))}function J(t,e,r,i,n,o,a,s,l){for(var h=0,c=0,u=a,d=0,p=0,f=0,g=1,y=1,m=1,x=0,b="",k=n,C=o,v=i,F=b;y;)switch(f=x,x=q()){case 40:if(108!=f&&58==A(F,u-1)){-1!=T(F+=S(H(x),"&","&\f"),"&\f",w(h?s[h-1]:0))&&(m=-1);break}case 34:case 39:case 91:F+=H(x);break;case 9:case 10:case 13:case 32:F+=Y(f);break;case 92:F+=G(j()-1,7);continue;case 47:switch(N()){case 42:case 47:L(et(Z(q(),j()),e,r,l),l),5!=U(f||1)&&5!=U(N()||1)||!B(F)||" "===M(F,-1,void 0)||(F+=" ");break;default:F+="/"}break;case 123*g:s[h++]=B(F)*m;case 125*g:case 59:case 0:switch(x){case 0:case 125:y=0;case 59+c:-1==m&&(F=S(F,/\f/g,"")),p>0&&(B(F)-u||0===g&&47===f)&&L(p>32?rt(F+";",i,r,u-1,l):rt(S(F," ","")+";",i,r,u-2,l),l);break;case 59:F+=";";default:if(L(v=tt(F,e,r,h,c,n,s,b,k=[],C=[],u,o),o),123===x)if(0===c)J(F,e,v,v,k,o,u,s,C);else switch(99===d&&110===A(F,3)?100:d){case 100:case 108:case 109:case 115:J(t,v,v,i&&L(tt(t,v,v,0,0,n,s,b,n,k=[],u,C),C),n,C,u,s,i?k:C);break;default:J(F,v,v,v,[""],C,0,s,C)}}h=c=p=0,g=m=1,b=F="",u=a;break;case 58:u=1+B(F),p=f;default:if(g<1)if(123==x)--g;else if(125==x&&0==g++&&125==K())continue;switch(F+=_(x),x*g){case 38:m=c>0?1:(F+="\f",-1);break;case 44:s[h++]=(B(F)-1)*m,m=1;break;case 64:45===N()&&(F+=H(q())),d=N(),c=u=B(b=F+=X(j())),x++;break;case 45:45===f&&2==B(F)&&(g=0)}}return o}function tt(t,e,r,i,n,o,a,s,l,h,c,u){for(var d=n-1,p=0===n?o:[""],f=function(t){return t.length}(p),g=0,y=0,m=0;g0?p[x]+" "+b:S(b,/&\f/g,p[x])))&&(l[m++]=C);return z(t,e,r,0===n?k:s,l,h,c,u)}function et(t,e,r,i){return z(t,e,r,b,_(R),M(t,2,-2),0,i)}function rt(t,e,r,i,n){return z(t,e,r,C,M(t,0,i),M(t,i+1,-1),i,n)}var it=n(2838),nt=n(6401),ot={id:"c4",detector:(0,y.K2)((t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(826).then(n.bind(n,4826));return{id:"c4",diagram:t}}),"loader")},at="flowchart",st={id:at,detector:(0,y.K2)(((t,e)=>"dagre-wrapper"!==e?.flowchart?.defaultRenderer&&"elk"!==e?.flowchart?.defaultRenderer&&/^\s*graph/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(334).then(n.bind(n,9334));return{id:at,diagram:t}}),"loader")},lt="flowchart-v2",ht={id:lt,detector:(0,y.K2)(((t,e)=>"dagre-d3"!==e?.flowchart?.defaultRenderer&&("elk"===e?.flowchart?.defaultRenderer&&(e.layout="elk"),!(!/^\s*graph/.test(t)||"dagre-wrapper"!==e?.flowchart?.defaultRenderer)||/^\s*flowchart/.test(t))),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(334).then(n.bind(n,9334));return{id:lt,diagram:t}}),"loader")},ct={id:"er",detector:(0,y.K2)((t=>/^\s*erDiagram/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(663)]).then(n.bind(n,4663));return{id:"er",diagram:t}}),"loader")},ut="gitGraph",dt={id:ut,detector:(0,y.K2)((t=>/^\s*gitGraph/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(731),n.e(911)]).then(n.bind(n,4911));return{id:ut,diagram:t}}),"loader")},pt="gantt",ft={id:pt,detector:(0,y.K2)((t=>/^\s*gantt/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(564).then(n.bind(n,2564));return{id:pt,diagram:t}}),"loader")},gt="info",yt={id:gt,detector:(0,y.K2)((t=>/^\s*info/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(731),n.e(81)]).then(n.bind(n,3081));return{id:gt,diagram:t}}),"loader")},mt={id:"pie",detector:(0,y.K2)((t=>/^\s*pie/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(731),n.e(223)]).then(n.bind(n,3223));return{id:"pie",diagram:t}}),"loader")},xt="quadrantChart",bt={id:xt,detector:(0,y.K2)((t=>/^\s*quadrantChart/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(674).then(n.bind(n,7674));return{id:xt,diagram:t}}),"loader")},kt="xychart",Ct={id:kt,detector:(0,y.K2)((t=>/^\s*xychart-beta/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(344).then(n.bind(n,9344));return{id:kt,diagram:t}}),"loader")},wt="requirement",_t={id:wt,detector:(0,y.K2)((t=>/^\s*requirement(Diagram)?/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(573)]).then(n.bind(n,6573));return{id:wt,diagram:t}}),"loader")},vt="sequence",St={id:vt,detector:(0,y.K2)((t=>/^\s*sequenceDiagram/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(382).then(n.bind(n,1));return{id:vt,diagram:t}}),"loader")},Tt="class",At={id:Tt,detector:(0,y.K2)(((t,e)=>"dagre-wrapper"!==e?.class?.defaultRenderer&&/^\s*classDiagram/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(805),n.e(998)]).then(n.bind(n,4998));return{id:Tt,diagram:t}}),"loader")},Mt="classDiagram",Bt={id:Mt,detector:(0,y.K2)(((t,e)=>!(!/^\s*classDiagram/.test(t)||"dagre-wrapper"!==e?.class?.defaultRenderer)||/^\s*classDiagram-v2/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(670),n.e(805),n.e(265)]).then(n.bind(n,1265));return{id:Mt,diagram:t}}),"loader")},Lt="state",Ft={id:Lt,detector:(0,y.K2)(((t,e)=>"dagre-wrapper"!==e?.state?.defaultRenderer&&/^\s*stateDiagram/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(3),n.e(590)]).then(n.bind(n,4590));return{id:Lt,diagram:t}}),"loader")},$t="stateDiagram",Et={id:$t,detector:(0,y.K2)(((t,e)=>!!/^\s*stateDiagram-v2/.test(t)||!(!/^\s*stateDiagram/.test(t)||"dagre-wrapper"!==e?.state?.defaultRenderer)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(3),n.e(932)]).then(n.bind(n,1932));return{id:$t,diagram:t}}),"loader")},Dt="journey",Ot={id:Dt,detector:(0,y.K2)((t=>/^\s*journey/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(862).then(n.bind(n,1481));return{id:Dt,diagram:t}}),"loader")},It={draw:(0,y.K2)(((t,e,r)=>{y.Rm.debug("rendering svg for syntax error\n");const i=(0,g.D)(e),n=i.append("g");i.attr("viewBox","0 0 2412 512"),(0,y.a$)(i,100,512,!0),n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)}),"draw")},Rt=It,Pt={db:{},renderer:It,parser:{parse:(0,y.K2)((()=>{}),"parse")}},zt="flowchart-elk",Kt={id:zt,detector:(0,y.K2)(((t,e={})=>!!(/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&"elk"===e?.flowchart?.defaultRenderer)&&(e.layout="elk",!0)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(334).then(n.bind(n,9334));return{id:zt,diagram:t}}),"loader")},qt="timeline",Nt={id:qt,detector:(0,y.K2)((t=>/^\s*timeline/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(4).then(n.bind(n,3004));return{id:qt,diagram:t}}),"loader")},jt="mindmap",Wt={id:jt,detector:(0,y.K2)((t=>/^\s*mindmap/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(165),n.e(258)]).then(n.bind(n,7258));return{id:jt,diagram:t}}),"loader")},Ut="sankey",Ht={id:Ut,detector:(0,y.K2)((t=>/^\s*sankey-beta/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await n.e(317).then(n.bind(n,8317));return{id:Ut,diagram:t}}),"loader")},Yt="packet",Gt={id:Yt,detector:(0,y.K2)((t=>/^\s*packet-beta/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(731),n.e(907)]).then(n.bind(n,6907));return{id:Yt,diagram:t}}),"loader")},Vt="block",Zt={id:Vt,detector:(0,y.K2)((t=>/^\s*block-beta/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(670),n.e(70)]).then(n.bind(n,4070));return{id:Vt,diagram:t}}),"loader")},Xt="architecture",Qt={id:Xt,detector:(0,y.K2)((t=>/^\s*architecture/.test(t)),"detector"),loader:(0,y.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(731),n.e(165),n.e(604)]).then(n.bind(n,3604));return{id:Xt,diagram:t}}),"loader")},Jt=!1,te=(0,y.K2)((()=>{Jt||(Jt=!0,(0,y.Js)("error",Pt,(t=>"error"===t.toLowerCase().trim())),(0,y.Js)("---",{db:{clear:(0,y.K2)((()=>{}),"clear")},styles:{},renderer:{draw:(0,y.K2)((()=>{}),"draw")},parser:{parse:(0,y.K2)((()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}),"parse")},init:(0,y.K2)((()=>null),"init")},(t=>t.toLowerCase().trimStart().startsWith("---"))),(0,y.Xd)(ot,Bt,At,ct,ft,yt,mt,_t,St,Kt,ht,st,Wt,Nt,dt,Et,Ft,Ot,bt,Ht,Gt,Ct,Zt,Qt))}),"addDiagrams"),ee=(0,y.K2)((async()=>{y.Rm.debug("Loading registered diagrams");const t=(await Promise.allSettled(Object.entries(y.mW).map((async([t,{detector:e,loader:r}])=>{if(r)try{(0,y.Gs)(t)}catch{try{const{diagram:t,id:i}=await r();(0,y.Js)(i,t,e)}catch(e){throw y.Rm.error(`Failed to load external diagram with key ${t}. Removing from detectors.`),delete y.mW[t],e}}})))).filter((t=>"rejected"===t.status));if(t.length>0){y.Rm.error(`Failed to load ${t.length} external diagrams`);for(const e of t)y.Rm.error(e);throw new Error(`Failed to load ${t.length} external diagrams`)}}),"loadRegisteredDiagrams"),re="graphics-document document";function ie(t,e){t.attr("role",re),""!==e&&t.attr("aria-roledescription",e)}function ne(t,e,r,i){if(void 0!==t.insert){if(r){const e=`chart-desc-${i}`;t.attr("aria-describedby",e),t.insert("desc",":first-child").attr("id",e).text(r)}if(e){const r=`chart-title-${i}`;t.attr("aria-labelledby",r),t.insert("title",":first-child").attr("id",r).text(e)}}}(0,y.K2)(ie,"setA11yDiagramInfo"),(0,y.K2)(ne,"addSVGa11yTitleDescription");var oe=class t{constructor(t,e,r,i,n){this.type=t,this.text=e,this.db=r,this.parser=i,this.renderer=n}static{(0,y.K2)(this,"Diagram")}static async fromText(e,r={}){const i=(0,y.zj)(),n=(0,y.Ch)(e,i);e=(0,p.C4)(e)+"\n";try{(0,y.Gs)(n)}catch{const t=(0,y.J$)(n);if(!t)throw new y.C0(`Diagram ${n} not found.`);const{id:e,diagram:r}=await t();(0,y.Js)(e,r)}const{db:o,parser:a,renderer:s,init:l}=(0,y.Gs)(n);return a.parser&&(a.parser.yy=o),o.clear?.(),l?.(i),r.title&&o.setDiagramTitle?.(r.title),await a.parse(e),new t(n,e,o,a,s)}async render(t,e){await this.renderer.draw(this.text,t,e,this)}getParser(){return this.parser}getType(){return this.type}},ae=[],se=(0,y.K2)((()=>{ae.forEach((t=>{t()})),ae=[]}),"attachFunctions"),le=(0,y.K2)((t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart()),"cleanupComments");function he(t){const e=t.match(y.EJ);if(!e)return{text:t,metadata:{}};let r=(0,c.H)(e[1],{schema:c.r})??{};r="object"!=typeof r||Array.isArray(r)?{}:r;const i={};return r.displayMode&&(i.displayMode=r.displayMode.toString()),r.title&&(i.title=r.title.toString()),r.config&&(i.config=r.config),{text:t.slice(e[0].length),metadata:i}}(0,y.K2)(he,"extractFrontMatter");var ce=(0,y.K2)((t=>t.replace(/\r\n?/g,"\n").replace(/<(\w+)([^>]*)>/g,((t,e,r)=>"<"+e+r.replace(/="([^"]*)"/g,"='$1'")+">"))),"cleanupText"),ue=(0,y.K2)((t=>{const{text:e,metadata:r}=he(t),{displayMode:i,title:n,config:o={}}=r;return i&&(o.gantt||(o.gantt={}),o.gantt.displayMode=i),{title:n,config:o,text:e}}),"processFrontmatter"),de=(0,y.K2)((t=>{const e=p._K.detectInit(t)??{},r=p._K.detectDirective(t,"wrap");return Array.isArray(r)?e.wrap=r.some((({type:t})=>"wrap"===t)):"wrap"===r?.type&&(e.wrap=!0),{text:(0,p.vU)(t),directive:e}}),"processDirectives");function pe(t){const e=ce(t),r=ue(e),i=de(r.text),n=(0,p.$t)(r.config,i.directive);return{code:t=le(i.text),title:r.title,config:n}}function fe(t){const e=(new TextEncoder).encode(t),r=Array.from(e,(t=>String.fromCodePoint(t))).join("");return btoa(r)}(0,y.K2)(pe,"preprocessDiagram"),(0,y.K2)(fe,"toBase64");var ge=["foreignobject"],ye=["dominant-baseline"];function me(t){const e=pe(t);return(0,y.cL)(),(0,y.xA)(e.config??{}),e}async function xe(t,e){te();try{const{code:e,config:r}=me(t);return{diagramType:(await Be(e)).type,config:r}}catch(t){if(e?.suppressErrors)return!1;throw t}}(0,y.K2)(me,"processAndSetConfigs"),(0,y.K2)(xe,"parse");var be=(0,y.K2)(((t,e,r=[])=>`\n.${t} ${e} { ${r.join(" !important; ")} !important; }`),"cssImportantStyles"),ke=(0,y.K2)(((t,e=new Map)=>{let r="";if(void 0!==t.themeCSS&&(r+=`\n${t.themeCSS}`),void 0!==t.fontFamily&&(r+=`\n:root { --mermaid-font-family: ${t.fontFamily}}`),void 0!==t.altFontFamily&&(r+=`\n:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),e instanceof Map){const i=t.htmlLabels??t.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach((t=>{(0,nt.A)(t.styles)||i.forEach((e=>{r+=be(t.id,e,t.styles)})),(0,nt.A)(t.textStyles)||(r+=be(t.id,"tspan",(t?.textStyles||[]).map((t=>t.replace("color","fill")))))}))}return r}),"createCssStyles"),Ce=(0,y.K2)(((t,e,r,i)=>{const n=ke(t,r);return F(Q(`${i}{${(0,y.tM)(e,n,t.themeVariables)}}`),$)}),"createUserStyles"),we=(0,y.K2)(((t="",e,r)=>{let i=t;return r||e||(i=i.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),i=(0,p.Sm)(i),i=i.replace(/
    /g,"
    "),i}),"cleanUpSvgCode"),_e=(0,y.K2)(((t="",e)=>``),"putIntoIFrame"),ve=(0,y.K2)(((t,e,r,i,n)=>{const o=t.append("div");o.attr("id",r),i&&o.attr("style",i);const a=o.append("svg").attr("id",e).attr("width","100%").attr("xmlns","http://www.w3.org/2000/svg");return n&&a.attr("xmlns:xlink",n),a.append("g"),t}),"appendDivSvgG");function Se(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}(0,y.K2)(Se,"sandboxedIframe");var Te=(0,y.K2)(((t,e,r,i)=>{t.getElementById(e)?.remove(),t.getElementById(r)?.remove(),t.getElementById(i)?.remove()}),"removeExistingElements"),Ae=(0,y.K2)((async function(t,e,r){te();const i=me(e);e=i.code;const n=(0,y.zj)();y.Rm.debug(n),e.length>(n?.maxTextSize??5e4)&&(e="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa");const o="#"+t,a="i"+t,s="#"+a,l="d"+t,h="#"+l,c=(0,y.K2)((()=>{const t=d?s:h,e=(0,x.Ltv)(t).node();e&&"remove"in e&&e.remove()}),"removeTempElements");let u=(0,x.Ltv)("body");const d="sandbox"===n.securityLevel,p="loose"===n.securityLevel,g=n.fontFamily;if(void 0!==r){if(r&&(r.innerHTML=""),d){const t=Se((0,x.Ltv)(r),a);u=(0,x.Ltv)(t.nodes()[0].contentDocument.body),u.node().style.margin=0}else u=(0,x.Ltv)(r);ve(u,t,l,`font-family: ${g}`,"http://www.w3.org/1999/xlink")}else{if(Te(document,t,l,a),d){const t=Se((0,x.Ltv)("body"),a);u=(0,x.Ltv)(t.nodes()[0].contentDocument.body),u.node().style.margin=0}else u=(0,x.Ltv)("body");ve(u,t,l)}let m,b;try{m=await oe.fromText(e,{title:i.title})}catch(t){if(n.suppressErrorRendering)throw c(),t;m=await oe.fromText("error"),b=t}const k=u.select(h).node(),C=m.type,w=k.firstChild,_=w.firstChild,v=m.renderer.getClasses?.(e,m),S=Ce(n,C,v,o),T=document.createElement("style");T.innerHTML=S,w.insertBefore(T,_);try{await m.renderer.draw(e,t,f.r,m)}catch(r){throw n.suppressErrorRendering?c():Rt.draw(e,t,f.r),r}const A=u.select(`${h} svg`),M=m.db.getAccTitle?.(),B=m.db.getAccDescription?.();Le(C,A,M,B),u.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns","http://www.w3.org/1999/xhtml");let L=u.select(h).node().innerHTML;if(y.Rm.debug("config.arrowMarkerAbsolute",n.arrowMarkerAbsolute),L=we(L,d,(0,y._3)(n.arrowMarkerAbsolute)),d){const t=u.select(h+" svg").node();L=_e(L,t)}else p||(L=it.sanitize(L,{ADD_TAGS:ge,ADD_ATTR:ye}));if(se(),b)throw b;return c(),{diagramType:C,svg:L,bindFunctions:m.db.bindFunctions}}),"render");function Me(t={}){const e=(0,y.hH)({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),(0,y.wZ)(e),e?.theme&&e.theme in y.H$?e.themeVariables=y.H$[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=y.H$.default.getThemeVariables(e.themeVariables));const r="object"==typeof e?(0,y.UU)(e):(0,y.Q2)();(0,y.He)(r.logLevel),te()}(0,y.K2)(Me,"initialize");var Be=(0,y.K2)(((t,e={})=>{const{code:r}=pe(t);return oe.fromText(r,e)}),"getDiagramFromText");function Le(t,e,r,i){ie(e,t),ne(e,r,i,e.attr("id"))}(0,y.K2)(Le,"addA11yInfo");var Fe=Object.freeze({render:Ae,parse:xe,getDiagramFromText:Be,initialize:Me,getConfig:y.zj,setConfig:y.Nk,getSiteConfig:y.Q2,updateSiteConfig:y.B6,reset:(0,y.K2)((()=>{(0,y.cL)()}),"reset"),globalReset:(0,y.K2)((()=>{(0,y.cL)(y.sb)}),"globalReset"),defaultConfig:y.sb});(0,y.He)((0,y.zj)().logLevel),(0,y.cL)((0,y.zj)());var $e=(0,y.K2)(((t,e,r)=>{y.Rm.warn(t),(0,p.dq)(t)?(r&&r(t.str,t.hash),e.push({...t,message:t.str,error:t})):(r&&r(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))}),"handleError"),Ee=(0,y.K2)((async function(t={querySelector:".mermaid"}){try{await De(t)}catch(e){if((0,p.dq)(e)&&y.Rm.error(e.str),Ue.parseError&&Ue.parseError(e),!t.suppressErrors)throw y.Rm.error("Use the suppressErrors option to suppress these errors"),e}}),"run"),De=(0,y.K2)((async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){const i=Fe.getConfig();let n;if(y.Rm.debug((t?"":"No ")+"Callback function found"),r)n=r;else{if(!e)throw new Error("Nodes and querySelector are both undefined");n=document.querySelectorAll(e)}y.Rm.debug(`Found ${n.length} diagrams`),void 0!==i?.startOnLoad&&(y.Rm.debug("Start On Load: "+i?.startOnLoad),Fe.updateSiteConfig({startOnLoad:i?.startOnLoad}));const o=new p._K.InitIDGenerator(i.deterministicIds,i.deterministicIDSeed);let a;const s=[];for(const e of Array.from(n)){if(y.Rm.info("Rendering diagram: "+e.id),e.getAttribute("data-processed"))continue;e.setAttribute("data-processed","true");const r=`mermaid-${o.next()}`;a=e.innerHTML,a=(0,m.T)(p._K.entityDecode(a)).trim().replace(//gi,"
    ");const i=p._K.detectInit(a);i&&y.Rm.debug("Detected early reinit: ",i);try{const{svg:i,bindFunctions:n}=await We(r,a,e);e.innerHTML=i,t&&await t(r),n&&n(e)}catch(t){$e(t,s,Ue.parseError)}}if(s.length>0)throw s[0]}),"runThrowsErrors"),Oe=(0,y.K2)((function(t){Fe.initialize(t)}),"initialize"),Ie=(0,y.K2)((async function(t,e,r){y.Rm.warn("mermaid.init is deprecated. Please use run instead."),t&&Oe(t);const i={postRenderCallback:r,querySelector:".mermaid"};"string"==typeof e?i.querySelector=e:e&&(e instanceof HTMLElement?i.nodes=[e]:i.nodes=e),await Ee(i)}),"init"),Re=(0,y.K2)((async(t,{lazyLoad:e=!0}={})=>{te(),(0,y.Xd)(...t),!1===e&&await ee()}),"registerExternalDiagrams"),Pe=(0,y.K2)((function(){if(Ue.startOnLoad){const{startOnLoad:t}=Fe.getConfig();t&&Ue.run().catch((t=>y.Rm.error("Mermaid failed to initialize",t)))}}),"contentLoaded");"undefined"!=typeof document&&window.addEventListener("load",Pe,!1);var ze=(0,y.K2)((function(t){Ue.parseError=t}),"setParseErrorHandler"),Ke=[],qe=!1,Ne=(0,y.K2)((async()=>{if(!qe){for(qe=!0;Ke.length>0;){const t=Ke.shift();if(t)try{await t()}catch(t){y.Rm.error("Error executing queue",t)}}qe=!1}}),"executeQueue"),je=(0,y.K2)((async(t,e)=>new Promise(((r,i)=>{const n=(0,y.K2)((()=>new Promise(((n,o)=>{Fe.parse(t,e).then((t=>{n(t),r(t)}),(t=>{y.Rm.error("Error parsing",t),Ue.parseError?.(t),o(t),i(t)}))}))),"performCall");Ke.push(n),Ne().catch(i)}))),"parse"),We=(0,y.K2)(((t,e,r)=>new Promise(((i,n)=>{const o=(0,y.K2)((()=>new Promise(((o,a)=>{Fe.render(t,e,r).then((t=>{o(t),i(t)}),(t=>{y.Rm.error("Error parsing",t),Ue.parseError?.(t),a(t),n(t)}))}))),"performCall");Ke.push(o),Ne().catch(n)}))),"render"),Ue={startOnLoad:!0,mermaidAPI:Fe,parse:je,render:We,init:Ie,run:Ee,registerExternalDiagrams:Re,registerLayoutLoaders:u.sO,initialize:Oe,parseError:void 0,contentLoaded:Pe,setParseErrorHandler:ze,detectType:y.Ch,registerIconPacks:d.pC},He=Ue;document.addEventListener("DOMContentLoaded",(function(){let e=t.namespace("hugo-geekdoc").get("color-theme")||h,r=window.matchMedia("(prefers-color-scheme: dark)"),i=!1,n="default";("dark"===e||e===h&&r.matches)&&(i=!0,n="dark"),He.initialize({startOnLoad:!1,flowchart:{useMaxWidth:!0},theme:n,themeVariables:{darkMode:i}}),document.querySelectorAll(".mermaid").forEach((function(t){let e="graph-"+l();He.render(e,t.innerText).then((({svg:e,bindFunctions:r})=>{t.innerHTML=e,r?.(t)}))}))}))})()})(); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/js/mermaid-73641aad.bundle.min.js.LICENSE.txt b/themes/hugo-geekdoc/static/js/mermaid-3292ee5a.bundle.min.js.LICENSE.txt similarity index 58% rename from themes/hugo-geekdoc/static/js/mermaid-73641aad.bundle.min.js.LICENSE.txt rename to themes/hugo-geekdoc/static/js/mermaid-3292ee5a.bundle.min.js.LICENSE.txt index 9274d3bfe..04660fdba 100644 --- a/themes/hugo-geekdoc/static/js/mermaid-73641aad.bundle.min.js.LICENSE.txt +++ b/themes/hugo-geekdoc/static/js/mermaid-3292ee5a.bundle.min.js.LICENSE.txt @@ -1 +1,7 @@ /*! @license DOMPurify 3.1.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.6/LICENSE */ + +/*! Bundled license information: + +js-yaml/dist/js-yaml.mjs: + (*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT *) +*/ diff --git a/themes/hugo-geekdoc/static/js/mermaid-73641aad.bundle.min.js b/themes/hugo-geekdoc/static/js/mermaid-73641aad.bundle.min.js deleted file mode 100644 index c02428a3c..000000000 --- a/themes/hugo-geekdoc/static/js/mermaid-73641aad.bundle.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see mermaid-73641aad.bundle.min.js.LICENSE.txt */ -(()=>{var t,e,r={9119:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BLANK_URL=e.relativeFirstCharacters=e.whitespaceEscapeCharsRegex=e.urlSchemeRegex=e.ctrlCharactersRegex=e.htmlCtrlEntityRegex=e.htmlEntitiesRegex=e.invalidProtocolRegex=void 0,e.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im,e.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g,e.htmlCtrlEntityRegex=/&(newline|tab);/gi,e.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,e.urlSchemeRegex=/^.+(:|:)/gim,e.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g,e.relativeFirstCharacters=[".","/"],e.BLANK_URL="about:blank"},6750:(t,e,r)=>{"use strict";e.J=void 0;var i=r(9119);function n(t){try{return decodeURIComponent(t)}catch(e){return t}}e.J=function(t){if(!t)return i.BLANK_URL;var e,r,o=n(t.trim());do{e=(o=n(o=(r=o,r.replace(i.ctrlCharactersRegex,"").replace(i.htmlEntitiesRegex,(function(t,e){return String.fromCharCode(e)}))).replace(i.htmlCtrlEntityRegex,"").replace(i.ctrlCharactersRegex,"").replace(i.whitespaceEscapeCharsRegex,"").trim())).match(i.ctrlCharactersRegex)||o.match(i.htmlEntitiesRegex)||o.match(i.htmlCtrlEntityRegex)||o.match(i.whitespaceEscapeCharsRegex)}while(e&&e.length>0);var a=o;if(!a)return i.BLANK_URL;if(function(t){return i.relativeFirstCharacters.indexOf(t[0])>-1}(a))return a;var s=a.trimStart(),l=s.match(i.urlSchemeRegex);if(!l)return a;var c=l[0].toLowerCase().trim();if(i.invalidProtocolRegex.test(c))return i.BLANK_URL;var h=s.replace(/\\/g,"/");if("mailto:"===c||c.includes("://"))return h;if("http:"===c||"https:"===c){if(!function(t){return URL.canParse(t)}(h))return i.BLANK_URL;var u=new URL(h);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return h}},4353:function(t){t.exports=function(){"use strict";var t=6e4,e=36e5,r="millisecond",i="second",n="minute",o="hour",a="day",s="week",l="month",c="quarter",h="year",u="date",d="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,f=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],r=t%100;return"["+t+(e[(r-20)%10]||e[r]||e[0])+"]"}},y=function(t,e,r){var i=String(t);return!i||i.length>=e?t:""+Array(e+1-i.length).join(r)+t},m={s:y,z:function(t){var e=-t.utcOffset(),r=Math.abs(e),i=Math.floor(r/60),n=r%60;return(e<=0?"+":"-")+y(i,2,"0")+":"+y(n,2,"0")},m:function t(e,r){if(e.date()1)return t(a[0])}else{var s=e.name;b[s]=e,n=s}return!i&&n&&(x=n),n||!i&&x},w=function(t,e){if(k(t))return t.clone();var r="object"==typeof e?e:{};return r.date=t,r.args=arguments,new T(r)},v=m;v.l=_,v.i=k,v.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var T=function(){function g(t){this.$L=_(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[C]=!0}var y=g.prototype;return y.parse=function(t){this.$d=function(t){var e=t.date,r=t.utc;if(null===e)return new Date(NaN);if(v.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var i=e.match(p);if(i){var n=i[2]-1||0,o=(i[7]||"0").substring(0,3);return r?new Date(Date.UTC(i[1],n,i[3]||1,i[4]||0,i[5]||0,i[6]||0,o)):new Date(i[1],n,i[3]||1,i[4]||0,i[5]||0,i[6]||0,o)}}return new Date(e)}(t),this.init()},y.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},y.$utils=function(){return v},y.isValid=function(){return!(this.$d.toString()===d)},y.isSame=function(t,e){var r=w(t);return this.startOf(e)<=r&&r<=this.endOf(e)},y.isAfter=function(t,e){return w(t)1?r-1:0),n=1;n2&&void 0!==arguments[2]?arguments[2]:p;e&&e(t,null);let o=i.length;for(;o--;){let e=i[o];if("string"==typeof e){const t=n(e);t!==e&&(r(i)||(i[o]=t),e=t)}t[e]=!0}return t}function T(t){for(let e=0;e/gm),z=a(/\${[\w\W]*}/gm),K=a(/^data-[\-\w.\u00B7-\uFFFF]/),j=a(/^aria-[\-\w]+$/),W=a(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),U=a(/^(?:\w+script|data):/i),H=a(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Y=a(/^html$/i),V=a(/^[a-z][.\w]*(-[.\w]+)+$/i);var G=Object.freeze({__proto__:null,MUSTACHE_EXPR:N,ERB_EXPR:q,TMPLIT_EXPR:z,DATA_ATTR:K,ARIA_ATTR:j,IS_ALLOWED_URI:W,IS_SCRIPT_OR_DATA:U,ATTR_WHITESPACE:H,DOCTYPE_NAME:Y,CUSTOM_ELEMENT:V});const Z=1,X=3,Q=7,J=8,tt=9,et=function(){return"undefined"==typeof window?null:window};return function e(){let r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:et();const i=t=>e(t);if(i.version="3.1.6",i.removed=[],!r||!r.document||r.document.nodeType!==tt)return i.isSupported=!1,i;let{document:n}=r;const a=n,l=a.currentScript,{DocumentFragment:c,HTMLTemplateElement:_,Node:w,Element:T,NodeFilter:N,NamedNodeMap:q=r.NamedNodeMap||r.MozNamedAttrMap,HTMLFormElement:z,DOMParser:K,trustedTypes:j}=r,U=T.prototype,H=A(U,"cloneNode"),V=A(U,"remove"),rt=A(U,"nextSibling"),it=A(U,"childNodes"),nt=A(U,"parentNode");if("function"==typeof _){const t=n.createElement("template");t.content&&t.content.ownerDocument&&(n=t.content.ownerDocument)}let ot,at="";const{implementation:st,createNodeIterator:lt,createDocumentFragment:ct,getElementsByTagName:ht}=n,{importNode:ut}=a;let dt={};i.isSupported="function"==typeof t&&"function"==typeof nt&&st&&void 0!==st.createHTMLDocument;const{MUSTACHE_EXPR:pt,ERB_EXPR:ft,TMPLIT_EXPR:gt,DATA_ATTR:yt,ARIA_ATTR:mt,IS_SCRIPT_OR_DATA:xt,ATTR_WHITESPACE:bt,CUSTOM_ELEMENT:Ct}=G;let{IS_ALLOWED_URI:kt}=G,_t=null;const wt=v({},[...M,...B,...L,...E,...O]);let vt=null;const Tt=v({},[...D,...I,...R,...P]);let St=Object.seal(s(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),At=null,Mt=null,Bt=!0,Lt=!0,Ft=!1,Et=!0,$t=!1,Ot=!0,Dt=!1,It=!1,Rt=!1,Pt=!1,Nt=!1,qt=!1,zt=!0,Kt=!1,jt=!0,Wt=!1,Ut={},Ht=null;const Yt=v({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Vt=null;const Gt=v({},["audio","video","img","source","image","track"]);let Zt=null;const Xt=v({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Qt="http://www.w3.org/1998/Math/MathML",Jt="http://www.w3.org/2000/svg",te="http://www.w3.org/1999/xhtml";let ee=te,re=!1,ie=null;const ne=v({},[Qt,Jt,te],f);let oe=null;const ae=["application/xhtml+xml","text/html"];let se=null,le=null;const ce=n.createElement("form"),he=function(t){return t instanceof RegExp||t instanceof Function},ue=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!le||le!==t){if(t&&"object"==typeof t||(t={}),t=S(t),oe=-1===ae.indexOf(t.PARSER_MEDIA_TYPE)?"text/html":t.PARSER_MEDIA_TYPE,se="application/xhtml+xml"===oe?f:p,_t=b(t,"ALLOWED_TAGS")?v({},t.ALLOWED_TAGS,se):wt,vt=b(t,"ALLOWED_ATTR")?v({},t.ALLOWED_ATTR,se):Tt,ie=b(t,"ALLOWED_NAMESPACES")?v({},t.ALLOWED_NAMESPACES,f):ne,Zt=b(t,"ADD_URI_SAFE_ATTR")?v(S(Xt),t.ADD_URI_SAFE_ATTR,se):Xt,Vt=b(t,"ADD_DATA_URI_TAGS")?v(S(Gt),t.ADD_DATA_URI_TAGS,se):Gt,Ht=b(t,"FORBID_CONTENTS")?v({},t.FORBID_CONTENTS,se):Yt,At=b(t,"FORBID_TAGS")?v({},t.FORBID_TAGS,se):{},Mt=b(t,"FORBID_ATTR")?v({},t.FORBID_ATTR,se):{},Ut=!!b(t,"USE_PROFILES")&&t.USE_PROFILES,Bt=!1!==t.ALLOW_ARIA_ATTR,Lt=!1!==t.ALLOW_DATA_ATTR,Ft=t.ALLOW_UNKNOWN_PROTOCOLS||!1,Et=!1!==t.ALLOW_SELF_CLOSE_IN_ATTR,$t=t.SAFE_FOR_TEMPLATES||!1,Ot=!1!==t.SAFE_FOR_XML,Dt=t.WHOLE_DOCUMENT||!1,Pt=t.RETURN_DOM||!1,Nt=t.RETURN_DOM_FRAGMENT||!1,qt=t.RETURN_TRUSTED_TYPE||!1,Rt=t.FORCE_BODY||!1,zt=!1!==t.SANITIZE_DOM,Kt=t.SANITIZE_NAMED_PROPS||!1,jt=!1!==t.KEEP_CONTENT,Wt=t.IN_PLACE||!1,kt=t.ALLOWED_URI_REGEXP||W,ee=t.NAMESPACE||te,St=t.CUSTOM_ELEMENT_HANDLING||{},t.CUSTOM_ELEMENT_HANDLING&&he(t.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(St.tagNameCheck=t.CUSTOM_ELEMENT_HANDLING.tagNameCheck),t.CUSTOM_ELEMENT_HANDLING&&he(t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(St.attributeNameCheck=t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),t.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(St.allowCustomizedBuiltInElements=t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),$t&&(Lt=!1),Nt&&(Pt=!0),Ut&&(_t=v({},O),vt=[],!0===Ut.html&&(v(_t,M),v(vt,D)),!0===Ut.svg&&(v(_t,B),v(vt,I),v(vt,P)),!0===Ut.svgFilters&&(v(_t,L),v(vt,I),v(vt,P)),!0===Ut.mathMl&&(v(_t,E),v(vt,R),v(vt,P))),t.ADD_TAGS&&(_t===wt&&(_t=S(_t)),v(_t,t.ADD_TAGS,se)),t.ADD_ATTR&&(vt===Tt&&(vt=S(vt)),v(vt,t.ADD_ATTR,se)),t.ADD_URI_SAFE_ATTR&&v(Zt,t.ADD_URI_SAFE_ATTR,se),t.FORBID_CONTENTS&&(Ht===Yt&&(Ht=S(Ht)),v(Ht,t.FORBID_CONTENTS,se)),jt&&(_t["#text"]=!0),Dt&&v(_t,["html","head","body"]),_t.table&&(v(_t,["tbody"]),delete At.tbody),t.TRUSTED_TYPES_POLICY){if("function"!=typeof t.TRUSTED_TYPES_POLICY.createHTML)throw k('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof t.TRUSTED_TYPES_POLICY.createScriptURL)throw k('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');ot=t.TRUSTED_TYPES_POLICY,at=ot.createHTML("")}else void 0===ot&&(ot=function(t,e){if("object"!=typeof t||"function"!=typeof t.createPolicy)return null;let r=null;const i="data-tt-policy-suffix";e&&e.hasAttribute(i)&&(r=e.getAttribute(i));const n="dompurify"+(r?"#"+r:"");try{return t.createPolicy(n,{createHTML:t=>t,createScriptURL:t=>t})}catch(t){return console.warn("TrustedTypes policy "+n+" could not be created."),null}}(j,l)),null!==ot&&"string"==typeof at&&(at=ot.createHTML(""));o&&o(t),le=t}},de=v({},["mi","mo","mn","ms","mtext"]),pe=v({},["foreignobject","annotation-xml"]),fe=v({},["title","style","font","a","script"]),ge=v({},[...B,...L,...F]),ye=v({},[...E,...$]),me=function(t){d(i.removed,{element:t});try{nt(t).removeChild(t)}catch(e){V(t)}},xe=function(t,e){try{d(i.removed,{attribute:e.getAttributeNode(t),from:e})}catch(t){d(i.removed,{attribute:null,from:e})}if(e.removeAttribute(t),"is"===t&&!vt[t])if(Pt||Nt)try{me(e)}catch(t){}else try{e.setAttribute(t,"")}catch(t){}},be=function(t){let e=null,r=null;if(Rt)t=""+t;else{const e=g(t,/^[\r\n\t ]+/);r=e&&e[0]}"application/xhtml+xml"===oe&&ee===te&&(t=''+t+"");const i=ot?ot.createHTML(t):t;if(ee===te)try{e=(new K).parseFromString(i,oe)}catch(t){}if(!e||!e.documentElement){e=st.createDocument(ee,"template",null);try{e.documentElement.innerHTML=re?at:i}catch(t){}}const o=e.body||e.documentElement;return t&&r&&o.insertBefore(n.createTextNode(r),o.childNodes[0]||null),ee===te?ht.call(e,Dt?"html":"body")[0]:Dt?e.documentElement:o},Ce=function(t){return lt.call(t.ownerDocument||t,t,N.SHOW_ELEMENT|N.SHOW_COMMENT|N.SHOW_TEXT|N.SHOW_PROCESSING_INSTRUCTION|N.SHOW_CDATA_SECTION,null)},ke=function(t){return t instanceof z&&("string"!=typeof t.nodeName||"string"!=typeof t.textContent||"function"!=typeof t.removeChild||!(t.attributes instanceof q)||"function"!=typeof t.removeAttribute||"function"!=typeof t.setAttribute||"string"!=typeof t.namespaceURI||"function"!=typeof t.insertBefore||"function"!=typeof t.hasChildNodes)},_e=function(t){return"function"==typeof w&&t instanceof w},we=function(t,e,r){dt[t]&&h(dt[t],(t=>{t.call(i,e,r,le)}))},ve=function(t){let e=null;if(we("beforeSanitizeElements",t,null),ke(t))return me(t),!0;const r=se(t.nodeName);if(we("uponSanitizeElement",t,{tagName:r,allowedTags:_t}),t.hasChildNodes()&&!_e(t.firstElementChild)&&C(/<[/\w]/g,t.innerHTML)&&C(/<[/\w]/g,t.textContent))return me(t),!0;if(t.nodeType===Q)return me(t),!0;if(Ot&&t.nodeType===J&&C(/<[/\w]/g,t.data))return me(t),!0;if(!_t[r]||At[r]){if(!At[r]&&Se(r)){if(St.tagNameCheck instanceof RegExp&&C(St.tagNameCheck,r))return!1;if(St.tagNameCheck instanceof Function&&St.tagNameCheck(r))return!1}if(jt&&!Ht[r]){const e=nt(t)||t.parentNode,r=it(t)||t.childNodes;if(r&&e)for(let i=r.length-1;i>=0;--i){const n=H(r[i],!0);n.__removalCount=(t.__removalCount||0)+1,e.insertBefore(n,rt(t))}}return me(t),!0}return t instanceof T&&!function(t){let e=nt(t);e&&e.tagName||(e={namespaceURI:ee,tagName:"template"});const r=p(t.tagName),i=p(e.tagName);return!!ie[t.namespaceURI]&&(t.namespaceURI===Jt?e.namespaceURI===te?"svg"===r:e.namespaceURI===Qt?"svg"===r&&("annotation-xml"===i||de[i]):Boolean(ge[r]):t.namespaceURI===Qt?e.namespaceURI===te?"math"===r:e.namespaceURI===Jt?"math"===r&&pe[i]:Boolean(ye[r]):t.namespaceURI===te?!(e.namespaceURI===Jt&&!pe[i])&&!(e.namespaceURI===Qt&&!de[i])&&!ye[r]&&(fe[r]||!ge[r]):!("application/xhtml+xml"!==oe||!ie[t.namespaceURI]))}(t)?(me(t),!0):"noscript"!==r&&"noembed"!==r&&"noframes"!==r||!C(/<\/no(script|embed|frames)/i,t.innerHTML)?($t&&t.nodeType===X&&(e=t.textContent,h([pt,ft,gt],(t=>{e=y(e,t," ")})),t.textContent!==e&&(d(i.removed,{element:t.cloneNode()}),t.textContent=e)),we("afterSanitizeElements",t,null),!1):(me(t),!0)},Te=function(t,e,r){if(zt&&("id"===e||"name"===e)&&(r in n||r in ce))return!1;if(Lt&&!Mt[e]&&C(yt,e));else if(Bt&&C(mt,e));else if(!vt[e]||Mt[e]){if(!(Se(t)&&(St.tagNameCheck instanceof RegExp&&C(St.tagNameCheck,t)||St.tagNameCheck instanceof Function&&St.tagNameCheck(t))&&(St.attributeNameCheck instanceof RegExp&&C(St.attributeNameCheck,e)||St.attributeNameCheck instanceof Function&&St.attributeNameCheck(e))||"is"===e&&St.allowCustomizedBuiltInElements&&(St.tagNameCheck instanceof RegExp&&C(St.tagNameCheck,r)||St.tagNameCheck instanceof Function&&St.tagNameCheck(r))))return!1}else if(Zt[e]);else if(C(kt,y(r,bt,"")));else if("src"!==e&&"xlink:href"!==e&&"href"!==e||"script"===t||0!==m(r,"data:")||!Vt[t])if(Ft&&!C(xt,y(r,bt,"")));else if(r)return!1;return!0},Se=function(t){return"annotation-xml"!==t&&g(t,Ct)},Ae=function(t){we("beforeSanitizeAttributes",t,null);const{attributes:e}=t;if(!e)return;const r={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:vt};let n=e.length;for(;n--;){const o=e[n],{name:a,namespaceURI:s,value:l}=o,c=se(a);let d="value"===a?l:x(l);if(r.attrName=c,r.attrValue=d,r.keepAttr=!0,r.forceKeepAttr=void 0,we("uponSanitizeAttribute",t,r),d=r.attrValue,Ot&&C(/((--!?|])>)|<\/(style|title)/i,d)){xe(a,t);continue}if(r.forceKeepAttr)continue;if(xe(a,t),!r.keepAttr)continue;if(!Et&&C(/\/>/i,d)){xe(a,t);continue}$t&&h([pt,ft,gt],(t=>{d=y(d,t," ")}));const p=se(t.nodeName);if(Te(p,c,d)){if(!Kt||"id"!==c&&"name"!==c||(xe(a,t),d="user-content-"+d),ot&&"object"==typeof j&&"function"==typeof j.getAttributeType)if(s);else switch(j.getAttributeType(p,c)){case"TrustedHTML":d=ot.createHTML(d);break;case"TrustedScriptURL":d=ot.createScriptURL(d)}try{s?t.setAttributeNS(s,a,d):t.setAttribute(a,d),ke(t)?me(t):u(i.removed)}catch(t){}}}we("afterSanitizeAttributes",t,null)},Me=function t(e){let r=null;const i=Ce(e);for(we("beforeSanitizeShadowDOM",e,null);r=i.nextNode();)we("uponSanitizeShadowNode",r,null),ve(r)||(r.content instanceof c&&t(r.content),Ae(r));we("afterSanitizeShadowDOM",e,null)};return i.sanitize=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=null,n=null,o=null,s=null;if(re=!t,re&&(t="\x3c!--\x3e"),"string"!=typeof t&&!_e(t)){if("function"!=typeof t.toString)throw k("toString is not a function");if("string"!=typeof(t=t.toString()))throw k("dirty is not a string, aborting")}if(!i.isSupported)return t;if(It||ue(e),i.removed=[],"string"==typeof t&&(Wt=!1),Wt){if(t.nodeName){const e=se(t.nodeName);if(!_t[e]||At[e])throw k("root node is forbidden and cannot be sanitized in-place")}}else if(t instanceof w)r=be("\x3c!----\x3e"),n=r.ownerDocument.importNode(t,!0),n.nodeType===Z&&"BODY"===n.nodeName||"HTML"===n.nodeName?r=n:r.appendChild(n);else{if(!Pt&&!$t&&!Dt&&-1===t.indexOf("<"))return ot&&qt?ot.createHTML(t):t;if(r=be(t),!r)return Pt?null:qt?at:""}r&&Rt&&me(r.firstChild);const l=Ce(Wt?t:r);for(;o=l.nextNode();)ve(o)||(o.content instanceof c&&Me(o.content),Ae(o));if(Wt)return t;if(Pt){if(Nt)for(s=ct.call(r.ownerDocument);r.firstChild;)s.appendChild(r.firstChild);else s=r;return(vt.shadowroot||vt.shadowrootmode)&&(s=ut.call(a,s,!0)),s}let u=Dt?r.outerHTML:r.innerHTML;return Dt&&_t["!doctype"]&&r.ownerDocument&&r.ownerDocument.doctype&&r.ownerDocument.doctype.name&&C(Y,r.ownerDocument.doctype.name)&&(u="\n"+u),$t&&h([pt,ft,gt],(t=>{u=y(u,t," ")})),ot&&qt?ot.createHTML(u):u},i.setConfig=function(){ue(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),It=!0},i.clearConfig=function(){le=null,It=!1},i.isValidAttribute=function(t,e,r){le||ue({});const i=se(t),n=se(e);return Te(i,n,r)},i.addHook=function(t,e){"function"==typeof e&&(dt[t]=dt[t]||[],d(dt[t],e))},i.removeHook=function(t){if(dt[t])return u(dt[t])},i.removeHooks=function(t){dt[t]&&(dt[t]=[])},i.removeAllHooks=function(){dt={}},i}()}()},7148:function(t){!function(e,r){var i={version:"2.14.3",areas:{},apis:{},nsdelim:".",inherit:function(t,e){for(var r in t)e.hasOwnProperty(r)||Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));return e},stringify:function(t,e){return void 0===t||"function"==typeof t?t+"":JSON.stringify(t,e||i.replace)},parse:function(t,e){try{return JSON.parse(t,e||i.revive)}catch(e){return t}},fn:function(t,e){for(var r in i.storeAPI[t]=e,i.apis)i.apis[r][t]=e},get:function(t,e){return t.getItem(e)},set:function(t,e,r){t.setItem(e,r)},remove:function(t,e){t.removeItem(e)},key:function(t,e){return t.key(e)},length:function(t){return t.length},clear:function(t){t.clear()},Store:function(t,e,r){var n=i.inherit(i.storeAPI,(function(t,e,r){return 0===arguments.length?n.getAll():"function"==typeof e?n.transact(t,e,r):void 0!==e?n.set(t,e,r):"string"==typeof t||"number"==typeof t?n.get(t):"function"==typeof t?n.each(t):t?n.setAll(t,e):n.clear()}));n._id=t;try{var o="__store2_test";e.setItem(o,"ok"),n._area=e,e.removeItem(o)}catch(t){n._area=i.storage("fake")}return n._ns=r||"",i.areas[t]||(i.areas[t]=n._area),i.apis[n._ns+n._id]||(i.apis[n._ns+n._id]=n),n},storeAPI:{area:function(t,e){var r=this[t];return r&&r.area||(r=i.Store(t,e,this._ns),this[t]||(this[t]=r)),r},namespace:function(t,e,r){if(r=r||this._delim||i.nsdelim,!t)return this._ns?this._ns.substring(0,this._ns.length-r.length):"";var n=t,o=this[n];if(!(o&&o.namespace||((o=i.Store(this._id,this._area,this._ns+n+r))._delim=r,this[n]||(this[n]=o),e)))for(var a in i.areas)o.area(a,i.areas[a]);return o},isFake:function(t){return t?(this._real=this._area,this._area=i.storage("fake")):!1===t&&(this._area=this._real||this._area),"fake"===this._area.name},toString:function(){return"store"+(this._ns?"."+this.namespace():"")+"["+this._id+"]"},has:function(t){return this._area.has?this._area.has(this._in(t)):!!(this._in(t)in this._area)},size:function(){return this.keys().length},each:function(t,e){for(var r=0,n=i.length(this._area);ri.length(this._area)&&(n--,r--)}return e||this},keys:function(t){return this.each((function(t,e,r){r.push(t)}),t||[])},get:function(t,e){var r,n=i.get(this._area,this._in(t));return"function"==typeof e&&(r=e,e=null),null!==n?i.parse(n,r):null!=e?e:n},getAll:function(t){return this.each((function(t,e,r){r[t]=e}),t||{})},transact:function(t,e,r){var i=this.get(t,r),n=e(i);return this.set(t,void 0===n?i:n),this},set:function(t,e,r){var n,o=this.get(t);return null!=o&&!1===r?e:("function"==typeof r&&(n=r,r=void 0),i.set(this._area,this._in(t),i.stringify(e,n),r)||o)},setAll:function(t,e){var r,i;for(var n in t)i=t[n],this.set(n,i,e)!==i&&(r=!0);return r},add:function(t,e,r){var n=this.get(t);if(n instanceof Array)e=n.concat(e);else if(null!==n){var o=typeof n;if(o===typeof e&&"object"===o){for(var a in e)n[a]=e[a];e=n}else e=n+e}return i.set(this._area,this._in(t),i.stringify(e,r)),e},remove:function(t,e){var r=this.get(t,e);return i.remove(this._area,this._in(t)),r},clear:function(){return this._ns?this.each((function(t){i.remove(this._area,this._in(t))}),1):i.clear(this._area),this},clearAll:function(){var t=this._area;for(var e in i.areas)i.areas.hasOwnProperty(e)&&(this._area=i.areas[e],this.clear());return this._area=t,this},_in:function(t){return"string"!=typeof t&&(t=i.stringify(t)),this._ns?this._ns+t:t},_out:function(t){return this._ns?t&&0===t.indexOf(this._ns)?t.substring(this._ns.length):void 0:t}},storage:function(t){return i.inherit(i.storageAPI,{items:{},name:t})},storageAPI:{length:0,has:function(t){return this.items.hasOwnProperty(t)},key:function(t){var e=0;for(var r in this.items)if(this.has(r)&&t===e++)return r},setItem:function(t,e){this.has(t)||this.length++,this.items[t]=e},removeItem:function(t){this.has(t)&&(delete this.items[t],this.length--)},getItem:function(t){return this.has(t)?this.items[t]:null},clear:function(){for(var t in this.items)this.removeItem(t)}}},n=i.Store("local",function(){try{return localStorage}catch(t){}}());n.local=n,n._=i,n.area("session",function(){try{return sessionStorage}catch(t){}}()),n.area("page",i.storage("page")),"function"==typeof r&&void 0!==r.amd?r("store2",[],(function(){return n})):t.exports?t.exports=n:(e.store&&(i.conflict=e.store),e.store=n)}(this,this&&this.define)},513:(t,e,r)=>{"use strict";function i(t){for(var e=[],r=1;ri})},4852:(t,e,r)=>{"use strict";function i(t,e){let r;if(void 0===e)for(const e of t)null!=e&&(r=e)&&(r=e);else{let i=-1;for(let n of t)null!=(n=e(n,++i,t))&&(r=n)&&(r=n)}return r}function n(t,e){let r;if(void 0===e)for(const e of t)null!=e&&(r>e||void 0===r&&e>=e)&&(r=e);else{let i=-1;for(let n of t)null!=(n=e(n,++i,t))&&(r>n||void 0===r&&n>=n)&&(r=n)}return r}function o(t){return t}r.d(e,{JLW:()=>ja,l78:()=>x,tlR:()=>m,qrM:()=>rs,Yu4:()=>ns,IA3:()=>as,Wi0:()=>ls,PGM:()=>cs,OEq:()=>us,y8u:()=>fs,olC:()=>ys,IrU:()=>xs,oDi:()=>ks,Q7f:()=>ws,cVp:()=>Ts,lUB:()=>Ha,Lx9:()=>As,nVG:()=>Ds,uxU:()=>Is,Xf2:()=>Ns,GZz:()=>zs,UPb:()=>js,dyv:()=>Ks,bEH:()=>ei,n8j:()=>Ga,T9B:()=>i,jkA:()=>n,rLf:()=>Qa,WH:()=>li,m4Y:()=>Xi,UMr:()=>si,w7C:()=>fa,zt:()=>ga,Ltv:()=>ya,UAC:()=>fn,DCK:()=>Hn,TUC:()=>wn,Agd:()=>dn,t6C:()=>ln,wXd:()=>hn,ABi:()=>bn,Ui6:()=>$n,rGn:()=>vn,ucG:()=>cn,YPH:()=>xn,Mol:()=>_n,PGu:()=>Cn,GuW:()=>kn});var a=1,s=2,l=3,c=4,h=1e-6;function u(t){return"translate("+t+",0)"}function d(t){return"translate(0,"+t+")"}function p(t){return e=>+t(e)}function f(t,e){return e=Math.max(0,t.bandwidth()-2*e)/2,t.round()&&(e=Math.round(e)),r=>+t(r)+e}function g(){return!this.__axis}function y(t,e){var r=[],i=null,n=null,y=6,m=6,x=3,b="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,C=t===a||t===c?-1:1,k=t===c||t===s?"x":"y",_=t===a||t===l?u:d;function w(u){var d=null==i?e.ticks?e.ticks.apply(e,r):e.domain():i,w=null==n?e.tickFormat?e.tickFormat.apply(e,r):o:n,v=Math.max(y,0)+x,T=e.range(),S=+T[0]+b,A=+T[T.length-1]+b,M=(e.bandwidth?f:p)(e.copy(),b),B=u.selection?u.selection():u,L=B.selectAll(".domain").data([null]),F=B.selectAll(".tick").data(d,e).order(),E=F.exit(),$=F.enter().append("g").attr("class","tick"),O=F.select("line"),D=F.select("text");L=L.merge(L.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),F=F.merge($),O=O.merge($.append("line").attr("stroke","currentColor").attr(k+"2",C*y)),D=D.merge($.append("text").attr("fill","currentColor").attr(k,C*v).attr("dy",t===a?"0em":t===l?"0.71em":"0.32em")),u!==B&&(L=L.transition(u),F=F.transition(u),O=O.transition(u),D=D.transition(u),E=E.transition(u).attr("opacity",h).attr("transform",(function(t){return isFinite(t=M(t))?_(t+b):this.getAttribute("transform")})),$.attr("opacity",h).attr("transform",(function(t){var e=this.parentNode.__axis;return _((e&&isFinite(e=e(t))?e:M(t))+b)}))),E.remove(),L.attr("d",t===c||t===s?m?"M"+C*m+","+S+"H"+b+"V"+A+"H"+C*m:"M"+b+","+S+"V"+A:m?"M"+S+","+C*m+"V"+b+"H"+A+"V"+C*m:"M"+S+","+b+"H"+A),F.attr("opacity",1).attr("transform",(function(t){return _(M(t)+b)})),O.attr(k+"2",C*y),D.attr(k,C*v).text(w),B.filter(g).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===s?"start":t===c?"end":"middle"),B.each((function(){this.__axis=M}))}return w.scale=function(t){return arguments.length?(e=t,w):e},w.ticks=function(){return r=Array.from(arguments),w},w.tickArguments=function(t){return arguments.length?(r=null==t?[]:Array.from(t),w):r.slice()},w.tickValues=function(t){return arguments.length?(i=null==t?null:Array.from(t),w):i&&i.slice()},w.tickFormat=function(t){return arguments.length?(n=t,w):n},w.tickSize=function(t){return arguments.length?(y=m=+t,w):y},w.tickSizeInner=function(t){return arguments.length?(y=+t,w):y},w.tickSizeOuter=function(t){return arguments.length?(m=+t,w):m},w.tickPadding=function(t){return arguments.length?(x=+t,w):x},w.offset=function(t){return arguments.length?(b=+t,w):b},w}function m(t){return y(a,t)}function x(t){return y(l,t)}function b(){}function C(t){return null==t?b:function(){return this.querySelector(t)}}function k(){return[]}function _(t){return null==t?k:function(){return this.querySelectorAll(t)}}function w(t){return function(){return this.matches(t)}}function v(t){return function(e){return e.matches(t)}}var T=Array.prototype.find;function S(){return this.firstElementChild}var A=Array.prototype.filter;function M(){return Array.from(this.children)}function B(t){return new Array(t.length)}function L(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function F(t,e,r,i,n,o){for(var a,s=0,l=e.length,c=o.length;se?1:t>=e?0:NaN}L.prototype={constructor:L,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var I="http://www.w3.org/1999/xhtml";const R={svg:"http://www.w3.org/2000/svg",xhtml:I,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function P(t){var e=t+="",r=e.indexOf(":");return r>=0&&"xmlns"!==(e=t.slice(0,r))&&(t=t.slice(r+1)),R.hasOwnProperty(e)?{space:R[e],local:t}:t}function N(t){return function(){this.removeAttribute(t)}}function q(t){return function(){this.removeAttributeNS(t.space,t.local)}}function z(t,e){return function(){this.setAttribute(t,e)}}function K(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function j(t,e){return function(){var r=e.apply(this,arguments);null==r?this.removeAttribute(t):this.setAttribute(t,r)}}function W(t,e){return function(){var r=e.apply(this,arguments);null==r?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function U(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function H(t){return function(){this.style.removeProperty(t)}}function Y(t,e,r){return function(){this.style.setProperty(t,e,r)}}function V(t,e,r){return function(){var i=e.apply(this,arguments);null==i?this.style.removeProperty(t):this.style.setProperty(t,i,r)}}function G(t,e){return t.style.getPropertyValue(e)||U(t).getComputedStyle(t,null).getPropertyValue(e)}function Z(t){return function(){delete this[t]}}function X(t,e){return function(){this[t]=e}}function Q(t,e){return function(){var r=e.apply(this,arguments);null==r?delete this[t]:this[t]=r}}function J(t){return t.trim().split(/^|\s+/)}function tt(t){return t.classList||new et(t)}function et(t){this._node=t,this._names=J(t.getAttribute("class")||"")}function rt(t,e){for(var r=tt(t),i=-1,n=e.length;++i=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var At=[null];function Mt(t,e){this._groups=t,this._parents=e}function Bt(){return new Mt([[document.documentElement]],At)}Mt.prototype=Bt.prototype={constructor:Mt,select:function(t){"function"!=typeof t&&(t=C(t));for(var e=this._groups,r=e.length,i=new Array(r),n=0;n=k&&(k=C+1);!(b=m[k])&&++k=0;)(i=n[o])&&(a&&4^i.compareDocumentPosition(a)&&a.parentNode.insertBefore(i,a),a=i);return this},sort:function(t){function e(e,r){return e&&r?t(e.__data__,r.__data__):!e-!r}t||(t=D);for(var r=this._groups,i=r.length,n=new Array(i),o=0;o1?this.each((null==e?H:"function"==typeof e?V:Y)(t,e,null==r?"":r)):G(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?Z:"function"==typeof e?Q:X)(t,e)):this.node()[t]},classed:function(t,e){var r=J(t+"");if(arguments.length<2){for(var i=tt(this.node()),n=-1,o=r.length;++n=0&&(e=t.slice(r+1),t=t.slice(0,r)),{type:t,name:e}}))}(t+""),a=o.length;if(!(arguments.length<2)){for(s=e?wt:_t,i=0;i{}};function Et(){for(var t,e=0,r=arguments.length,i={};e=0&&(e=t.slice(r+1),t=t.slice(0,r)),t&&!i.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}}))),a=-1,s=o.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++a0)for(var r,i,n=new Array(r),o=0;o=0&&e._call.call(void 0,t),e=e._next;--Nt}()}finally{Nt=0,function(){for(var t,e,r=Rt,i=1/0;r;)r._call?(i>r._time&&(i=r._time),t=r,r=r._next):(e=r._next,r._next=null,r=t?t._next=e:Rt=e);Pt=t,te(i)}(),Wt=0}}function Jt(){var t=Ht.now(),e=t-jt;e>Kt&&(Ut-=e,jt=t)}function te(t){Nt||(qt&&(qt=clearTimeout(qt)),t-Wt>24?(t<1/0&&(qt=setTimeout(Qt,t-Ht.now()-Ut)),zt&&(zt=clearInterval(zt))):(zt||(jt=Ht.now(),zt=setInterval(Jt,Kt)),Nt=1,Yt(Qt)))}function ee(t,e,r){var i=new Zt;return e=null==e?0:+e,i.restart((r=>{i.stop(),t(r+e)}),e,r),i}Zt.prototype=Xt.prototype={constructor:Zt,restart:function(t,e,r){if("function"!=typeof t)throw new TypeError("callback is not a function");r=(null==r?Vt():+r)+(null==e?0:+e),this._next||Pt===this||(Pt?Pt._next=this:Rt=this,Pt=this),this._call=t,this._time=r,te()},stop:function(){this._call&&(this._call=null,this._time=1/0,te())}};var re=It("start","end","cancel","interrupt"),ie=[],ne=0,oe=3;function ae(t,e,r,i,n,o){var a=t.__transition;if(a){if(r in a)return}else t.__transition={};!function(t,e,r){var i,n=t.__transition;function o(l){var c,h,u,d;if(1!==r.state)return s();for(c in n)if((d=n[c]).name===r.name){if(d.state===oe)return ee(o);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",t,t.__data__,d.index,d.group),delete n[c]):+cne)throw new Error("too late; already scheduled");return r}function le(t,e){var r=ce(t,e);if(r.state>oe)throw new Error("too late; already running");return r}function ce(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function he(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var ue,de=180/Math.PI,pe={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function fe(t,e,r,i,n,o){var a,s,l;return(a=Math.sqrt(t*t+e*e))&&(t/=a,e/=a),(l=t*r+e*i)&&(r-=t*l,i-=e*l),(s=Math.sqrt(r*r+i*i))&&(r/=s,i/=s,l/=s),t*i180?e+=360:e-t>180&&(t+=360),o.push({i:r.push(n(r)+"rotate(",null,i)-2,x:he(t,e)})):e&&r.push(n(r)+"rotate("+e+i)}(o.rotate,a.rotate,s,l),function(t,e,r,o){t!==e?o.push({i:r.push(n(r)+"skewX(",null,i)-2,x:he(t,e)}):e&&r.push(n(r)+"skewX("+e+i)}(o.skewX,a.skewX,s,l),function(t,e,r,i,o,a){if(t!==r||e!==i){var s=o.push(n(o)+"scale(",null,",",null,")");a.push({i:s-4,x:he(t,r)},{i:s-2,x:he(e,i)})}else 1===r&&1===i||o.push(n(o)+"scale("+r+","+i+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,s,l),o=a=null,function(t){for(var e,r=-1,i=l.length;++r>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?ze(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?ze(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=Le.exec(t))?new We(e[1],e[2],e[3],1):(e=Fe.exec(t))?new We(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=Ee.exec(t))?ze(e[1],e[2],e[3],e[4]):(e=$e.exec(t))?ze(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=Oe.exec(t))?Ze(e[1],e[2]/100,e[3]/100,1):(e=De.exec(t))?Ze(e[1],e[2]/100,e[3]/100,e[4]):Ie.hasOwnProperty(t)?qe(Ie[t]):"transparent"===t?new We(NaN,NaN,NaN,0):null}function qe(t){return new We(t>>16&255,t>>8&255,255&t,1)}function ze(t,e,r,i){return i<=0&&(t=e=r=NaN),new We(t,e,r,i)}function Ke(t){return t instanceof we||(t=Ne(t)),t?new We((t=t.rgb()).r,t.g,t.b,t.opacity):new We}function je(t,e,r,i){return 1===arguments.length?Ke(t):new We(t,e,r,null==i?1:i)}function We(t,e,r,i){this.r=+t,this.g=+e,this.b=+r,this.opacity=+i}function Ue(){return`#${Ge(this.r)}${Ge(this.g)}${Ge(this.b)}`}function He(){const t=Ye(this.opacity);return`${1===t?"rgb(":"rgba("}${Ve(this.r)}, ${Ve(this.g)}, ${Ve(this.b)}${1===t?")":`, ${t})`}`}function Ye(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Ve(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Ge(t){return((t=Ve(t))<16?"0":"")+t.toString(16)}function Ze(t,e,r,i){return i<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new Qe(t,e,r,i)}function Xe(t){if(t instanceof Qe)return new Qe(t.h,t.s,t.l,t.opacity);if(t instanceof we||(t=Ne(t)),!t)return new Qe;if(t instanceof Qe)return t;var e=(t=t.rgb()).r/255,r=t.g/255,i=t.b/255,n=Math.min(e,r,i),o=Math.max(e,r,i),a=NaN,s=o-n,l=(o+n)/2;return s?(a=e===o?(r-i)/s+6*(r0&&l<1?0:a,new Qe(a,s,l,t.opacity)}function Qe(t,e,r,i){this.h=+t,this.s=+e,this.l=+r,this.opacity=+i}function Je(t){return(t=(t||0)%360)<0?t+360:t}function tr(t){return Math.max(0,Math.min(1,t||0))}function er(t,e,r){return 255*(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)}function rr(t,e,r,i,n){var o=t*t,a=o*t;return((1-3*t+3*o-a)*e+(4-6*o+3*a)*r+(1+3*t+3*o-3*a)*i+a*n)/6}ke(we,Ne,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Re,formatHex:Re,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return Xe(this).formatHsl()},formatRgb:Pe,toString:Pe}),ke(We,je,_e(we,{brighter(t){return t=null==t?Te:Math.pow(Te,t),new We(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?ve:Math.pow(ve,t),new We(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new We(Ve(this.r),Ve(this.g),Ve(this.b),Ye(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Ue,formatHex:Ue,formatHex8:function(){return`#${Ge(this.r)}${Ge(this.g)}${Ge(this.b)}${Ge(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:He,toString:He})),ke(Qe,(function(t,e,r,i){return 1===arguments.length?Xe(t):new Qe(t,e,r,null==i?1:i)}),_e(we,{brighter(t){return t=null==t?Te:Math.pow(Te,t),new Qe(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?ve:Math.pow(ve,t),new Qe(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,i=r+(r<.5?r:1-r)*e,n=2*r-i;return new We(er(t>=240?t-240:t+120,n,i),er(t,n,i),er(t<120?t+240:t-120,n,i),this.opacity)},clamp(){return new Qe(Je(this.h),tr(this.s),tr(this.l),Ye(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=Ye(this.opacity);return`${1===t?"hsl(":"hsla("}${Je(this.h)}, ${100*tr(this.s)}%, ${100*tr(this.l)}%${1===t?")":`, ${t})`}`}}));const ir=t=>()=>t;function nr(t,e){return function(r){return t+r*e}}function or(t,e){var r=e-t;return r?nr(t,r):ir(isNaN(t)?e:t)}const ar=function t(e){var r=function(t){return 1==(t=+t)?or:function(e,r){return r-e?function(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(i){return Math.pow(t+i*e,r)}}(e,r,t):ir(isNaN(e)?r:e)}}(e);function i(t,e){var i=r((t=je(t)).r,(e=je(e)).r),n=r(t.g,e.g),o=r(t.b,e.b),a=or(t.opacity,e.opacity);return function(e){return t.r=i(e),t.g=n(e),t.b=o(e),t.opacity=a(e),t+""}}return i.gamma=t,i}(1);function sr(t){return function(e){var r,i,n=e.length,o=new Array(n),a=new Array(n),s=new Array(n);for(r=0;r=1?(r=1,e-1):Math.floor(r*e),n=t[i],o=t[i+1],a=i>0?t[i-1]:2*n-o,s=io&&(n=e.slice(o,n),s[a]?s[a]+=n:s[++a]=n),(r=r[0])===(i=i[0])?s[a]?s[a]+=i:s[++a]=i:(s[++a]=null,l.push({i:a,x:he(r,i)})),o=cr.lastIndex;return o=0&&(t=t.slice(0,e)),!t||"start"===t}))}(e)?se:le;return function(){var a=o(this,t),s=a.on;s!==i&&(n=(i=s).copy()).on(e,r),a.on=n}}(r,t,e))},attr:function(t,e){var r=P(t),i="transform"===r?me:ur;return this.attrTween(t,"function"==typeof e?(r.local?mr:yr)(r,i,Ce(this,"attr."+t,e)):null==e?(r.local?pr:dr)(r):(r.local?gr:fr)(r,i,e))},attrTween:function(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;var i=P(t);return this.tween(r,(i.local?xr:br)(i,e))},style:function(t,e,r){var i="transform"==(t+="")?ye:ur;return null==e?this.styleTween(t,function(t,e){var r,i,n;return function(){var o=G(this,t),a=(this.style.removeProperty(t),G(this,t));return o===a?null:o===r&&a===i?n:n=e(r=o,i=a)}}(t,i)).on("end.style."+t,Tr(t)):"function"==typeof e?this.styleTween(t,function(t,e,r){var i,n,o;return function(){var a=G(this,t),s=r(this),l=s+"";return null==s&&(this.style.removeProperty(t),l=s=G(this,t)),a===l?null:a===i&&l===n?o:(n=l,o=e(i=a,s))}}(t,i,Ce(this,"style."+t,e))).each(function(t,e){var r,i,n,o,a="style."+e,s="end."+a;return function(){var l=le(this,t),c=l.on,h=null==l.value[a]?o||(o=Tr(e)):void 0;c===r&&n===h||(i=(r=c).copy()).on(s,n=h),l.on=i}}(this._id,t)):this.styleTween(t,function(t,e,r){var i,n,o=r+"";return function(){var a=G(this,t);return a===o?null:a===i?n:n=e(i=a,r)}}(t,i,e),r).on("end.style."+t,null)},styleTween:function(t,e,r){var i="style."+(t+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(null==e)return this.tween(i,null);if("function"!=typeof e)throw new Error;return this.tween(i,function(t,e,r){var i,n;function o(){var o=e.apply(this,arguments);return o!==n&&(i=(n=o)&&function(t,e,r){return function(i){this.style.setProperty(t,e.call(this,i),r)}}(t,o,r)),i}return o._value=e,o}(t,e,null==r?"":r))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var e=t(this);this.textContent=null==e?"":e}}(Ce(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},textTween:function(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw new Error;return this.tween(e,function(t){var e,r;function i(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&function(t){return function(e){this.textContent=t.call(this,e)}}(i)),e}return i._value=t,i}(t))},remove:function(){return this.on("end.remove",function(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}(this._id))},tween:function(t,e){var r=this._id;if(t+="",arguments.length<2){for(var i,n=ce(this.node(),r).tween,o=0,a=n.length;o2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?"interrupt":"cancel",t,t.__data__,r.index,r.group),delete o[n]):a=!1;a&&delete t.__transition}}(this,t)}))},Lt.prototype.transition=function(t){var e,r;t instanceof Ar?(e=t._id,t=t._name):(e=Mr(),(r=Lr).time=Vt(),t=null==t?null:t+"");for(var i=this._groups,n=i.length,o=0;oWr?Math.pow(t,1/3):t/jr+zr}function Vr(t){return t>Kr?t*t*t:jr*(t-zr)}function Gr(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Zr(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Xr(t,e,r,i){return 1===arguments.length?function(t){if(t instanceof Qr)return new Qr(t.h,t.c,t.l,t.opacity);if(t instanceof Hr||(t=Ur(t)),0===t.a&&0===t.b)return new Qr(NaN,0180||r<-180?r-360*Math.round(r/360):r):ir(isNaN(t)?e:t)}));function ri(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}ti(or);class ii extends Map{constructor(t,e=oi){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),null!=t)for(const[e,r]of t)this.set(e,r)}get(t){return super.get(ni(this,t))}has(t){return super.has(ni(this,t))}set(t,e){return super.set(function({_intern:t,_key:e},r){const i=e(r);return t.has(i)?t.get(i):(t.set(i,r),r)}(this,t),e)}delete(t){return super.delete(function({_intern:t,_key:e},r){const i=e(r);return t.has(i)&&(r=t.get(i),t.delete(i)),r}(this,t))}}function ni({_intern:t,_key:e},r){const i=e(r);return t.has(i)?t.get(i):r}function oi(t){return null!==t&&"object"==typeof t?t.valueOf():t}Set;const ai=Symbol("implicit");function si(){var t=new ii,e=[],r=[],i=ai;function n(n){let o=t.get(n);if(void 0===o){if(i!==ai)return i;t.set(n,o=e.push(n)-1)}return r[o%r.length]}return n.domain=function(r){if(!arguments.length)return e.slice();e=[],t=new ii;for(const i of r)t.has(i)||t.set(i,e.push(i)-1);return n},n.range=function(t){return arguments.length?(r=Array.from(t),n):r.slice()},n.unknown=function(t){return arguments.length?(i=t,n):i},n.copy=function(){return si(e,r).unknown(i)},ri.apply(n,arguments),n}function li(){var t,e,r=si().unknown(void 0),i=r.domain,n=r.range,o=0,a=1,s=!1,l=0,c=0,h=.5;function u(){var r=i().length,u=a=ci?10:o>=hi?5:o>=ui?2:1;let s,l,c;return n<0?(c=Math.pow(10,-n)/a,s=Math.round(t*c),l=Math.round(e*c),s/ce&&--l,c=-c):(c=Math.pow(10,n)*a,s=Math.round(t/c),l=Math.round(e/c),s*ce&&--l),le?1:t>=e?0:NaN}function yi(t,e){return null==t||null==e?NaN:et?1:e>=t?0:NaN}function mi(t){let e,r,i;function n(t,i,n=0,o=t.length){if(n>>1;r(t[e],i)<0?n=e+1:o=e}while(ngi(t(e),r),i=(e,r)=>t(e)-r):(e=t===gi||t===yi?t:xi,r=t,i=t),{left:n,center:function(t,e,r=0,o=t.length){const a=n(t,e,r,o-1);return a>r&&i(t[a-1],e)>-i(t[a],e)?a-1:a},right:function(t,i,n=0,o=t.length){if(n>>1;r(t[e],i)<=0?n=e+1:o=e}while(ne&&(r=t,t=e,e=r),c=function(r){return Math.max(t,Math.min(e,r))}),i=l>2?$i:Ei,n=o=null,u}function u(e){return null==e||isNaN(e=+e)?r:(n||(n=i(a.map(t),s,l)))(t(c(e)))}return u.invert=function(r){return c(e((o||(o=i(s,a.map(t),he)))(r)))},u.domain=function(t){return arguments.length?(a=Array.from(t,Mi),h()):a.slice()},u.range=function(t){return arguments.length?(s=Array.from(t),h()):s.slice()},u.rangeRound=function(t){return s=Array.from(t),l=Ai,h()},u.clamp=function(t){return arguments.length?(c=!!t||Li,h()):c!==Li},u.interpolate=function(t){return arguments.length?(l=t,h()):l},u.unknown=function(t){return arguments.length?(r=t,u):r},function(r,i){return t=r,e=i,h()}}()(Li,Li)}var Ii,Ri=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Pi(t){if(!(e=Ri.exec(t)))throw new Error("invalid format: "+t);var e;return new Ni({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function Ni(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function qi(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,i=t.slice(0,r);return[i.length>1?i[0]+i.slice(2):i,+t.slice(r+1)]}function zi(t){return(t=qi(Math.abs(t)))?t[1]:NaN}function Ki(t,e){var r=qi(t,e);if(!r)return t+"";var i=r[0],n=r[1];return n<0?"0."+new Array(-n).join("0")+i:i.length>n+1?i.slice(0,n+1)+"."+i.slice(n+1):i+new Array(n-i.length+2).join("0")}Pi.prototype=Ni.prototype,Ni.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};const ji={"%":(t,e)=>(100*t).toFixed(e),b:t=>Math.round(t).toString(2),c:t=>t+"",d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:(t,e)=>t.toExponential(e),f:(t,e)=>t.toFixed(e),g:(t,e)=>t.toPrecision(e),o:t=>Math.round(t).toString(8),p:(t,e)=>Ki(100*t,e),r:Ki,s:function(t,e){var r=qi(t,e);if(!r)return t+"";var i=r[0],n=r[1],o=n-(Ii=3*Math.max(-8,Math.min(8,Math.floor(n/3))))+1,a=i.length;return o===a?i:o>a?i+new Array(o-a+1).join("0"):o>0?i.slice(0,o)+"."+i.slice(o):"0."+new Array(1-o).join("0")+qi(t,Math.max(0,e+o-1))[0]},X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function Wi(t){return t}var Ui,Hi,Yi,Vi=Array.prototype.map,Gi=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Zi(t){var e=t.domain;return t.ticks=function(t){var r=e();return function(t,e,r){if(!((r=+r)>0))return[];if((t=+t)==(e=+e))return[t];const i=e=n))return[];const s=o-n+1,l=new Array(s);if(i)if(a<0)for(let t=0;t0;){if((n=pi(l,c,r))===i)return o[a]=l,o[s]=c,e(o);if(n>0)l=Math.floor(l/n)*n,c=Math.ceil(c/n)*n;else{if(!(n<0))break;l=Math.ceil(l*n)/n,c=Math.floor(c*n)/n}i=n}return t},t}function Xi(){var t=Di();return t.copy=function(){return Oi(t,Xi())},ri.apply(t,arguments),Zi(t)}Ui=function(t){var e,r,i=void 0===t.grouping||void 0===t.thousands?Wi:(e=Vi.call(t.grouping,Number),r=t.thousands+"",function(t,i){for(var n=t.length,o=[],a=0,s=e[0],l=0;n>0&&s>0&&(l+s+1>i&&(s=Math.max(1,i-l)),o.push(t.substring(n-=s,n+s)),!((l+=s+1)>i));)s=e[a=(a+1)%e.length];return o.reverse().join(r)}),n=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",a=void 0===t.decimal?".":t.decimal+"",s=void 0===t.numerals?Wi:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(Vi.call(t.numerals,String)),l=void 0===t.percent?"%":t.percent+"",c=void 0===t.minus?"−":t.minus+"",h=void 0===t.nan?"NaN":t.nan+"";function u(t){var e=(t=Pi(t)).fill,r=t.align,u=t.sign,d=t.symbol,p=t.zero,f=t.width,g=t.comma,y=t.precision,m=t.trim,x=t.type;"n"===x?(g=!0,x="g"):ji[x]||(void 0===y&&(y=12),m=!0,x="g"),(p||"0"===e&&"="===r)&&(p=!0,e="0",r="=");var b="$"===d?n:"#"===d&&/[boxX]/.test(x)?"0"+x.toLowerCase():"",C="$"===d?o:/[%p]/.test(x)?l:"",k=ji[x],_=/[defgprs%]/.test(x);function w(t){var n,o,l,d=b,w=C;if("c"===x)w=k(t)+w,t="";else{var v=(t=+t)<0||1/t<0;if(t=isNaN(t)?h:k(Math.abs(t),y),m&&(t=function(t){t:for(var e,r=t.length,i=1,n=-1;i0&&(n=0)}return n>0?t.slice(0,n)+t.slice(e+1):t}(t)),v&&0==+t&&"+"!==u&&(v=!1),d=(v?"("===u?u:c:"-"===u||"("===u?"":u)+d,w=("s"===x?Gi[8+Ii/3]:"")+w+(v&&"("===u?")":""),_)for(n=-1,o=t.length;++n(l=t.charCodeAt(n))||l>57){w=(46===l?a+t.slice(n+1):t.slice(n))+w,t=t.slice(0,n);break}}g&&!p&&(t=i(t,1/0));var T=d.length+t.length+w.length,S=T>1)+d+t+w+S.slice(T);break;default:t=S+d+t+w}return s(t)}return y=void 0===y?6:/[gprs]/.test(x)?Math.max(1,Math.min(21,y)):Math.max(0,Math.min(20,y)),w.toString=function(){return t+""},w}return{format:u,formatPrefix:function(t,e){var r=u(((t=Pi(t)).type="f",t)),i=3*Math.max(-8,Math.min(8,Math.floor(zi(e)/3))),n=Math.pow(10,-i),o=Gi[8+i/3];return function(t){return r(n*t)+o}}}}({thousands:",",grouping:[3],currency:["$",""]}),Hi=Ui.format,Yi=Ui.formatPrefix;const Qi=1e3,Ji=6e4,tn=36e5,en=864e5,rn=6048e5,nn=31536e6,on=new Date,an=new Date;function sn(t,e,r,i){function n(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return n.floor=e=>(t(e=new Date(+e)),e),n.ceil=r=>(t(r=new Date(r-1)),e(r,1),t(r),r),n.round=t=>{const e=n(t),r=n.ceil(t);return t-e(e(t=new Date(+t),null==r?1:Math.floor(r)),t),n.range=(r,i,o)=>{const a=[];if(r=n.ceil(r),o=null==o?1:Math.floor(o),!(r0))return a;let s;do{a.push(s=new Date(+r)),e(r,o),t(r)}while(ssn((e=>{if(e>=e)for(;t(e),!r(e);)e.setTime(e-1)}),((t,i)=>{if(t>=t)if(i<0)for(;++i<=0;)for(;e(t,-1),!r(t););else for(;--i>=0;)for(;e(t,1),!r(t););})),r&&(n.count=(e,i)=>(on.setTime(+e),an.setTime(+i),t(on),t(an),Math.floor(r(on,an))),n.every=t=>(t=Math.floor(t),isFinite(t)&&t>0?t>1?n.filter(i?e=>i(e)%t==0:e=>n.count(0,e)%t==0):n:null)),n}const ln=sn((()=>{}),((t,e)=>{t.setTime(+t+e)}),((t,e)=>e-t));ln.every=t=>(t=Math.floor(t),isFinite(t)&&t>0?t>1?sn((e=>{e.setTime(Math.floor(e/t)*t)}),((e,r)=>{e.setTime(+e+r*t)}),((e,r)=>(r-e)/t)):ln:null),ln.range;const cn=sn((t=>{t.setTime(t-t.getMilliseconds())}),((t,e)=>{t.setTime(+t+e*Qi)}),((t,e)=>(e-t)/Qi),(t=>t.getUTCSeconds())),hn=(cn.range,sn((t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*Qi)}),((t,e)=>{t.setTime(+t+e*Ji)}),((t,e)=>(e-t)/Ji),(t=>t.getMinutes()))),un=(hn.range,sn((t=>{t.setUTCSeconds(0,0)}),((t,e)=>{t.setTime(+t+e*Ji)}),((t,e)=>(e-t)/Ji),(t=>t.getUTCMinutes()))),dn=(un.range,sn((t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*Qi-t.getMinutes()*Ji)}),((t,e)=>{t.setTime(+t+e*tn)}),((t,e)=>(e-t)/tn),(t=>t.getHours()))),pn=(dn.range,sn((t=>{t.setUTCMinutes(0,0,0)}),((t,e)=>{t.setTime(+t+e*tn)}),((t,e)=>(e-t)/tn),(t=>t.getUTCHours()))),fn=(pn.range,sn((t=>t.setHours(0,0,0,0)),((t,e)=>t.setDate(t.getDate()+e)),((t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Ji)/en),(t=>t.getDate()-1))),gn=(fn.range,sn((t=>{t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+e)}),((t,e)=>(e-t)/en),(t=>t.getUTCDate()-1))),yn=(gn.range,sn((t=>{t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+e)}),((t,e)=>(e-t)/en),(t=>Math.floor(t/en))));function mn(t){return sn((e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),((t,e)=>{t.setDate(t.getDate()+7*e)}),((t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Ji)/rn))}yn.range;const xn=mn(0),bn=mn(1),Cn=mn(2),kn=mn(3),_n=mn(4),wn=mn(5),vn=mn(6);function Tn(t){return sn((e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+7*e)}),((t,e)=>(e-t)/rn))}xn.range,bn.range,Cn.range,kn.range,_n.range,wn.range,vn.range;const Sn=Tn(0),An=Tn(1),Mn=Tn(2),Bn=Tn(3),Ln=Tn(4),Fn=Tn(5),En=Tn(6),$n=(Sn.range,An.range,Mn.range,Bn.range,Ln.range,Fn.range,En.range,sn((t=>{t.setDate(1),t.setHours(0,0,0,0)}),((t,e)=>{t.setMonth(t.getMonth()+e)}),((t,e)=>e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())),(t=>t.getMonth()))),On=($n.range,sn((t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)}),((t,e)=>e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())),(t=>t.getUTCMonth()))),Dn=(On.range,sn((t=>{t.setMonth(0,1),t.setHours(0,0,0,0)}),((t,e)=>{t.setFullYear(t.getFullYear()+e)}),((t,e)=>e.getFullYear()-t.getFullYear()),(t=>t.getFullYear())));Dn.every=t=>isFinite(t=Math.floor(t))&&t>0?sn((e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),((e,r)=>{e.setFullYear(e.getFullYear()+r*t)})):null,Dn.range;const In=sn((t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)}),((t,e)=>e.getUTCFullYear()-t.getUTCFullYear()),(t=>t.getUTCFullYear()));function Rn(t,e,r,i,n,o){const a=[[cn,1,Qi],[cn,5,5e3],[cn,15,15e3],[cn,30,3e4],[o,1,Ji],[o,5,3e5],[o,15,9e5],[o,30,18e5],[n,1,tn],[n,3,108e5],[n,6,216e5],[n,12,432e5],[i,1,en],[i,2,1728e5],[r,1,rn],[e,1,2592e6],[e,3,7776e6],[t,1,nn]];function s(e,r,i){const n=Math.abs(r-e)/i,o=mi((([,,t])=>t)).right(a,n);if(o===a.length)return t.every(fi(e/nn,r/nn,i));if(0===o)return ln.every(Math.max(fi(e,r,i),1));const[s,l]=a[n/a[o-1][2]isFinite(t=Math.floor(t))&&t>0?sn((e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),((e,r)=>{e.setUTCFullYear(e.getUTCFullYear()+r*t)})):null,In.range;const[Pn,Nn]=Rn(In,On,Sn,yn,pn,un),[qn,zn]=Rn(Dn,$n,xn,fn,dn,hn);function Kn(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function jn(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Wn(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}var Un,Hn,Yn={"-":"",_:" ",0:"0"},Vn=/^\s*\d+/,Gn=/^%/,Zn=/[\\^$*+?|[\]().{}]/g;function Xn(t,e,r){var i=t<0?"-":"",n=(i?-t:t)+"",o=n.length;return i+(o[t.toLowerCase(),e])))}function eo(t,e,r){var i=Vn.exec(e.slice(r,r+1));return i?(t.w=+i[0],r+i[0].length):-1}function ro(t,e,r){var i=Vn.exec(e.slice(r,r+1));return i?(t.u=+i[0],r+i[0].length):-1}function io(t,e,r){var i=Vn.exec(e.slice(r,r+2));return i?(t.U=+i[0],r+i[0].length):-1}function no(t,e,r){var i=Vn.exec(e.slice(r,r+2));return i?(t.V=+i[0],r+i[0].length):-1}function oo(t,e,r){var i=Vn.exec(e.slice(r,r+2));return i?(t.W=+i[0],r+i[0].length):-1}function ao(t,e,r){var i=Vn.exec(e.slice(r,r+4));return i?(t.y=+i[0],r+i[0].length):-1}function so(t,e,r){var i=Vn.exec(e.slice(r,r+2));return i?(t.y=+i[0]+(+i[0]>68?1900:2e3),r+i[0].length):-1}function lo(t,e,r){var i=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(r,r+6));return i?(t.Z=i[1]?0:-(i[2]+(i[3]||"00")),r+i[0].length):-1}function co(t,e,r){var i=Vn.exec(e.slice(r,r+1));return i?(t.q=3*i[0]-3,r+i[0].length):-1}function ho(t,e,r){var i=Vn.exec(e.slice(r,r+2));return i?(t.m=i[0]-1,r+i[0].length):-1}function uo(t,e,r){var i=Vn.exec(e.slice(r,r+2));return i?(t.d=+i[0],r+i[0].length):-1}function po(t,e,r){var i=Vn.exec(e.slice(r,r+3));return i?(t.m=0,t.d=+i[0],r+i[0].length):-1}function fo(t,e,r){var i=Vn.exec(e.slice(r,r+2));return i?(t.H=+i[0],r+i[0].length):-1}function go(t,e,r){var i=Vn.exec(e.slice(r,r+2));return i?(t.M=+i[0],r+i[0].length):-1}function yo(t,e,r){var i=Vn.exec(e.slice(r,r+2));return i?(t.S=+i[0],r+i[0].length):-1}function mo(t,e,r){var i=Vn.exec(e.slice(r,r+3));return i?(t.L=+i[0],r+i[0].length):-1}function xo(t,e,r){var i=Vn.exec(e.slice(r,r+6));return i?(t.L=Math.floor(i[0]/1e3),r+i[0].length):-1}function bo(t,e,r){var i=Gn.exec(e.slice(r,r+1));return i?r+i[0].length:-1}function Co(t,e,r){var i=Vn.exec(e.slice(r));return i?(t.Q=+i[0],r+i[0].length):-1}function ko(t,e,r){var i=Vn.exec(e.slice(r));return i?(t.s=+i[0],r+i[0].length):-1}function _o(t,e){return Xn(t.getDate(),e,2)}function wo(t,e){return Xn(t.getHours(),e,2)}function vo(t,e){return Xn(t.getHours()%12||12,e,2)}function To(t,e){return Xn(1+fn.count(Dn(t),t),e,3)}function So(t,e){return Xn(t.getMilliseconds(),e,3)}function Ao(t,e){return So(t,e)+"000"}function Mo(t,e){return Xn(t.getMonth()+1,e,2)}function Bo(t,e){return Xn(t.getMinutes(),e,2)}function Lo(t,e){return Xn(t.getSeconds(),e,2)}function Fo(t){var e=t.getDay();return 0===e?7:e}function Eo(t,e){return Xn(xn.count(Dn(t)-1,t),e,2)}function $o(t){var e=t.getDay();return e>=4||0===e?_n(t):_n.ceil(t)}function Oo(t,e){return t=$o(t),Xn(_n.count(Dn(t),t)+(4===Dn(t).getDay()),e,2)}function Do(t){return t.getDay()}function Io(t,e){return Xn(bn.count(Dn(t)-1,t),e,2)}function Ro(t,e){return Xn(t.getFullYear()%100,e,2)}function Po(t,e){return Xn((t=$o(t)).getFullYear()%100,e,2)}function No(t,e){return Xn(t.getFullYear()%1e4,e,4)}function qo(t,e){var r=t.getDay();return Xn((t=r>=4||0===r?_n(t):_n.ceil(t)).getFullYear()%1e4,e,4)}function zo(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+Xn(e/60|0,"0",2)+Xn(e%60,"0",2)}function Ko(t,e){return Xn(t.getUTCDate(),e,2)}function jo(t,e){return Xn(t.getUTCHours(),e,2)}function Wo(t,e){return Xn(t.getUTCHours()%12||12,e,2)}function Uo(t,e){return Xn(1+gn.count(In(t),t),e,3)}function Ho(t,e){return Xn(t.getUTCMilliseconds(),e,3)}function Yo(t,e){return Ho(t,e)+"000"}function Vo(t,e){return Xn(t.getUTCMonth()+1,e,2)}function Go(t,e){return Xn(t.getUTCMinutes(),e,2)}function Zo(t,e){return Xn(t.getUTCSeconds(),e,2)}function Xo(t){var e=t.getUTCDay();return 0===e?7:e}function Qo(t,e){return Xn(Sn.count(In(t)-1,t),e,2)}function Jo(t){var e=t.getUTCDay();return e>=4||0===e?Ln(t):Ln.ceil(t)}function ta(t,e){return t=Jo(t),Xn(Ln.count(In(t),t)+(4===In(t).getUTCDay()),e,2)}function ea(t){return t.getUTCDay()}function ra(t,e){return Xn(An.count(In(t)-1,t),e,2)}function ia(t,e){return Xn(t.getUTCFullYear()%100,e,2)}function na(t,e){return Xn((t=Jo(t)).getUTCFullYear()%100,e,2)}function oa(t,e){return Xn(t.getUTCFullYear()%1e4,e,4)}function aa(t,e){var r=t.getUTCDay();return Xn((t=r>=4||0===r?Ln(t):Ln.ceil(t)).getUTCFullYear()%1e4,e,4)}function sa(){return"+0000"}function la(){return"%"}function ca(t){return+t}function ha(t){return Math.floor(+t/1e3)}function ua(t){return new Date(t)}function da(t){return t instanceof Date?+t:+new Date(+t)}function pa(t,e,r,i,n,o,a,s,l,c){var h=Di(),u=h.invert,d=h.domain,p=c(".%L"),f=c(":%S"),g=c("%I:%M"),y=c("%I %p"),m=c("%a %d"),x=c("%b %d"),b=c("%B"),C=c("%Y");function k(t){return(l(t)=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:ca,s:ha,S:Lo,u:Fo,U:Eo,V:Oo,w:Do,W:Io,x:null,X:null,y:Ro,Y:No,Z:zo,"%":la},C={a:function(t){return a[t.getUTCDay()]},A:function(t){return o[t.getUTCDay()]},b:function(t){return l[t.getUTCMonth()]},B:function(t){return s[t.getUTCMonth()]},c:null,d:Ko,e:Ko,f:Yo,g:na,G:aa,H:jo,I:Wo,j:Uo,L:Ho,m:Vo,M:Go,p:function(t){return n[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:ca,s:ha,S:Zo,u:Xo,U:Qo,V:ta,w:ea,W:ra,x:null,X:null,y:ia,Y:oa,Z:sa,"%":la},k={a:function(t,e,r){var i=p.exec(e.slice(r));return i?(t.w=f.get(i[0].toLowerCase()),r+i[0].length):-1},A:function(t,e,r){var i=u.exec(e.slice(r));return i?(t.w=d.get(i[0].toLowerCase()),r+i[0].length):-1},b:function(t,e,r){var i=m.exec(e.slice(r));return i?(t.m=x.get(i[0].toLowerCase()),r+i[0].length):-1},B:function(t,e,r){var i=g.exec(e.slice(r));return i?(t.m=y.get(i[0].toLowerCase()),r+i[0].length):-1},c:function(t,r,i){return v(t,e,r,i)},d:uo,e:uo,f:xo,g:so,G:ao,H:fo,I:fo,j:po,L:mo,m:ho,M:go,p:function(t,e,r){var i=c.exec(e.slice(r));return i?(t.p=h.get(i[0].toLowerCase()),r+i[0].length):-1},q:co,Q:Co,s:ko,S:yo,u:ro,U:io,V:no,w:eo,W:oo,x:function(t,e,i){return v(t,r,e,i)},X:function(t,e,r){return v(t,i,e,r)},y:so,Y:ao,Z:lo,"%":bo};function _(t,e){return function(r){var i,n,o,a=[],s=-1,l=0,c=t.length;for(r instanceof Date||(r=new Date(+r));++s53)return null;"w"in o||(o.w=1),"Z"in o?(n=(i=jn(Wn(o.y,0,1))).getUTCDay(),i=n>4||0===n?An.ceil(i):An(i),i=gn.offset(i,7*(o.V-1)),o.y=i.getUTCFullYear(),o.m=i.getUTCMonth(),o.d=i.getUTCDate()+(o.w+6)%7):(n=(i=Kn(Wn(o.y,0,1))).getDay(),i=n>4||0===n?bn.ceil(i):bn(i),i=fn.offset(i,7*(o.V-1)),o.y=i.getFullYear(),o.m=i.getMonth(),o.d=i.getDate()+(o.w+6)%7)}else("W"in o||"U"in o)&&("w"in o||(o.w="u"in o?o.u%7:"W"in o?1:0),n="Z"in o?jn(Wn(o.y,0,1)).getUTCDay():Kn(Wn(o.y,0,1)).getDay(),o.m=0,o.d="W"in o?(o.w+6)%7+7*o.W-(n+5)%7:o.w+7*o.U-(n+6)%7);return"Z"in o?(o.H+=o.Z/100|0,o.M+=o.Z%100,jn(o)):Kn(o)}}function v(t,e,r,i){for(var n,o,a=0,s=e.length,l=r.length;a=l)return-1;if(37===(n=e.charCodeAt(a++))){if(n=e.charAt(a++),!(o=k[n in Yn?e.charAt(a++):n])||(i=o(t,r,i))<0)return-1}else if(n!=r.charCodeAt(i++))return-1}return i}return b.x=_(r,b),b.X=_(i,b),b.c=_(e,b),C.x=_(r,C),C.X=_(i,C),C.c=_(e,C),{format:function(t){var e=_(t+="",b);return e.toString=function(){return t},e},parse:function(t){var e=w(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=_(t+="",C);return e.toString=function(){return t},e},utcParse:function(t){var e=w(t+="",!0);return e.toString=function(){return t},e}}}({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}),Hn=Un.format,Un.parse,Un.utcFormat,Un.utcParse;const ga=function(t){for(var e=new Array(10),r=0;r<10;)e[r]="#"+t.slice(6*r,6*++r);return e}("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");function ya(t){return"string"==typeof t?new Mt([[document.querySelector(t)]],[document.documentElement]):new Mt([[t]],At)}function ma(t){return function(){return t}}const xa=Math.abs,ba=Math.atan2,Ca=Math.cos,ka=Math.max,_a=Math.min,wa=Math.sin,va=Math.sqrt,Ta=1e-12,Sa=Math.PI,Aa=Sa/2,Ma=2*Sa;function Ba(t){return t>=1?Aa:t<=-1?-Aa:Math.asin(t)}const La=Math.PI,Fa=2*La,Ea=1e-6,$a=Fa-Ea;function Oa(t){this._+=t[0];for(let e=1,r=t.length;e=0))throw new Error(`invalid digits: ${t}`);if(e>15)return Oa;const r=10**e;return function(t){this._+=t[0];for(let e=1,i=t.length;eEa)if(Math.abs(h*s-l*c)>Ea&&n){let d=r-o,p=i-a,f=s*s+l*l,g=d*d+p*p,y=Math.sqrt(f),m=Math.sqrt(u),x=n*Math.tan((La-Math.acos((f+u-g)/(2*y*m)))/2),b=x/m,C=x/y;Math.abs(b-1)>Ea&&this._append`L${t+b*c},${e+b*h}`,this._append`A${n},${n},0,0,${+(h*d>c*p)},${this._x1=t+C*s},${this._y1=e+C*l}`}else this._append`L${this._x1=t},${this._y1=e}`}arc(t,e,r,i,n,o){if(t=+t,e=+e,o=!!o,(r=+r)<0)throw new Error(`negative radius: ${r}`);let a=r*Math.cos(i),s=r*Math.sin(i),l=t+a,c=e+s,h=1^o,u=o?i-n:n-i;null===this._x1?this._append`M${l},${c}`:(Math.abs(this._x1-l)>Ea||Math.abs(this._y1-c)>Ea)&&this._append`L${l},${c}`,r&&(u<0&&(u=u%Fa+Fa),u>$a?this._append`A${r},${r},0,1,${h},${t-a},${e-s}A${r},${r},0,1,${h},${this._x1=l},${this._y1=c}`:u>Ea&&this._append`A${r},${r},0,${+(u>=La)},${h},${this._x1=t+r*Math.cos(n)},${this._y1=e+r*Math.sin(n)}`)}rect(t,e,r,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function Ia(t){let e=3;return t.digits=function(r){if(!arguments.length)return e;if(null==r)e=null;else{const t=Math.floor(r);if(!(t>=0))throw new RangeError(`invalid digits: ${r}`);e=t}return t},()=>new Da(e)}function Ra(t){return t.innerRadius}function Pa(t){return t.outerRadius}function Na(t){return t.startAngle}function qa(t){return t.endAngle}function za(t){return t&&t.padAngle}function Ka(t,e,r,i,n,o,a){var s=t-r,l=e-i,c=(a?o:-o)/va(s*s+l*l),h=c*l,u=-c*s,d=t+h,p=e+u,f=r+h,g=i+u,y=(d+f)/2,m=(p+g)/2,x=f-d,b=g-p,C=x*x+b*b,k=n-o,_=d*g-f*p,w=(b<0?-1:1)*va(ka(0,k*k*C-_*_)),v=(_*b-x*w)/C,T=(-_*x-b*w)/C,S=(_*b+x*w)/C,A=(-_*x+b*w)/C,M=v-y,B=T-m,L=S-y,F=A-m;return M*M+B*B>L*L+F*F&&(v=S,T=A),{cx:v,cy:T,x01:-h,y01:-u,x11:v*(n/k-1),y11:T*(n/k-1)}}function ja(){var t=Ra,e=Pa,r=ma(0),i=null,n=Na,o=qa,a=za,s=null,l=Ia(c);function c(){var c,h,u,d=+t.apply(this,arguments),p=+e.apply(this,arguments),f=n.apply(this,arguments)-Aa,g=o.apply(this,arguments)-Aa,y=xa(g-f),m=g>f;if(s||(s=c=l()),pTa)if(y>Ma-Ta)s.moveTo(p*Ca(f),p*wa(f)),s.arc(0,0,p,f,g,!m),d>Ta&&(s.moveTo(d*Ca(g),d*wa(g)),s.arc(0,0,d,g,f,m));else{var x,b,C=f,k=g,_=f,w=g,v=y,T=y,S=a.apply(this,arguments)/2,A=S>Ta&&(i?+i.apply(this,arguments):va(d*d+p*p)),M=_a(xa(p-d)/2,+r.apply(this,arguments)),B=M,L=M;if(A>Ta){var F=Ba(A/d*wa(S)),E=Ba(A/p*wa(S));(v-=2*F)>Ta?(_+=F*=m?1:-1,w-=F):(v=0,_=w=(f+g)/2),(T-=2*E)>Ta?(C+=E*=m?1:-1,k-=E):(T=0,C=k=(f+g)/2)}var $=p*Ca(C),O=p*wa(C),D=d*Ca(w),I=d*wa(w);if(M>Ta){var R,P=p*Ca(k),N=p*wa(k),q=d*Ca(_),z=d*wa(_);if(y1?0:u<-1?Sa:Math.acos(u))/2),Y=va(R[0]*R[0]+R[1]*R[1]);B=_a(M,(d-Y)/(H-1)),L=_a(M,(p-Y)/(H+1))}else B=L=0}T>Ta?L>Ta?(x=Ka(q,z,$,O,p,L,m),b=Ka(P,N,D,I,p,L,m),s.moveTo(x.cx+x.x01,x.cy+x.y01),LTa&&v>Ta?B>Ta?(x=Ka(D,I,P,N,d,-B,m),b=Ka($,O,q,z,d,-B,m),s.lineTo(x.cx+x.x01,x.cy+x.y01),Bt?1:e>=t?0:NaN}function Xa(t){return t}function Qa(){var t=Xa,e=Za,r=null,i=ma(0),n=ma(Ma),o=ma(0);function a(a){var s,l,c,h,u,d=(a=Wa(a)).length,p=0,f=new Array(d),g=new Array(d),y=+i.apply(this,arguments),m=Math.min(Ma,Math.max(-Ma,n.apply(this,arguments)-y)),x=Math.min(Math.abs(m)/d,o.apply(this,arguments)),b=x*(m<0?-1:1);for(s=0;s0&&(p+=u);for(null!=e?f.sort((function(t,r){return e(g[t],g[r])})):null!=r&&f.sort((function(t,e){return r(a[t],a[e])})),s=0,c=p?(m-d*b)/p:0;s0?u*c:0)+b,g[l]={data:a[l],index:s,value:u,startAngle:y,endAngle:h,padAngle:x};return g}return a.value=function(e){return arguments.length?(t="function"==typeof e?e:ma(+e),a):t},a.sortValues=function(t){return arguments.length?(e=t,r=null,a):e},a.sort=function(t){return arguments.length?(r=t,e=null,a):r},a.startAngle=function(t){return arguments.length?(i="function"==typeof t?t:ma(+t),a):i},a.endAngle=function(t){return arguments.length?(n="function"==typeof t?t:ma(+t),a):n},a.padAngle=function(t){return arguments.length?(o="function"==typeof t?t:ma(+t),a):o},a}function Ja(){}function ts(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function es(t){this._context=t}function rs(t){return new es(t)}function is(t){this._context=t}function ns(t){return new is(t)}function os(t){this._context=t}function as(t){return new os(t)}Da.prototype,Array.prototype.slice,Ua.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}},es.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ts(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ts(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},is.prototype={areaStart:Ja,areaEnd:Ja,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:ts(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},os.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,i=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 3:this._point=4;default:ts(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};class ss{constructor(t,e){this._context=t,this._x=e}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,e,t,e):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+e)/2,t,this._y0,t,e)}this._x0=t,this._y0=e}}function ls(t){return new ss(t,!0)}function cs(t){return new ss(t,!1)}function hs(t,e){this._basis=new es(t),this._beta=e}hs.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var i,n=t[0],o=e[0],a=t[r]-n,s=e[r]-o,l=-1;++l<=r;)i=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(n+i*a),this._beta*e[l]+(1-this._beta)*(o+i*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};const us=function t(e){function r(t){return 1===e?new es(t):new hs(t,e)}return r.beta=function(e){return t(+e)},r}(.85);function ds(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function ps(t,e){this._context=t,this._k=(1-e)/6}ps.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:ds(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:ds(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const fs=function t(e){function r(t){return new ps(t,e)}return r.tension=function(e){return t(+e)},r}(0);function gs(t,e){this._context=t,this._k=(1-e)/6}gs.prototype={areaStart:Ja,areaEnd:Ja,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:ds(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const ys=function t(e){function r(t){return new gs(t,e)}return r.tension=function(e){return t(+e)},r}(0);function ms(t,e){this._context=t,this._k=(1-e)/6}ms.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ds(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const xs=function t(e){function r(t){return new ms(t,e)}return r.tension=function(e){return t(+e)},r}(0);function bs(t,e,r){var i=t._x1,n=t._y1,o=t._x2,a=t._y2;if(t._l01_a>Ta){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);i=(i*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,n=(n*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>Ta){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,h=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*c+t._x1*t._l23_2a-e*t._l12_2a)/h,a=(a*c+t._y1*t._l23_2a-r*t._l12_2a)/h}t._context.bezierCurveTo(i,n,o,a,t._x2,t._y2)}function Cs(t,e){this._context=t,this._alpha=e}Cs.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:bs(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const ks=function t(e){function r(t){return e?new Cs(t,e):new ps(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function _s(t,e){this._context=t,this._alpha=e}_s.prototype={areaStart:Ja,areaEnd:Ja,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:bs(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const ws=function t(e){function r(t){return e?new _s(t,e):new gs(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function vs(t,e){this._context=t,this._alpha=e}vs.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:bs(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Ts=function t(e){function r(t){return e?new vs(t,e):new ms(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Ss(t){this._context=t}function As(t){return new Ss(t)}function Ms(t){return t<0?-1:1}function Bs(t,e,r){var i=t._x1-t._x0,n=e-t._x1,o=(t._y1-t._y0)/(i||n<0&&-0),a=(r-t._y1)/(n||i<0&&-0),s=(o*n+a*i)/(i+n);return(Ms(o)+Ms(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(s))||0}function Ls(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function Fs(t,e,r){var i=t._x0,n=t._y0,o=t._x1,a=t._y1,s=(o-i)/3;t._context.bezierCurveTo(i+s,n+s*e,o-s,a-s*r,o,a)}function Es(t){this._context=t}function $s(t){this._context=new Os(t)}function Os(t){this._context=t}function Ds(t){return new Es(t)}function Is(t){return new $s(t)}function Rs(t){this._context=t}function Ps(t){var e,r,i=t.length-1,n=new Array(i),o=new Array(i),a=new Array(i);for(n[0]=0,o[0]=2,a[0]=t[0]+2*t[1],e=1;e=0;--e)n[e]=(a[e]-n[e+1])/o[e];for(o[i-1]=(t[i]+n[i-1])/2,e=0;e=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}}this._x=t,this._y=e}},Ws.prototype={constructor:Ws,scale:function(t){return 1===t?this:new Ws(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new Ws(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},new Ws(1,0,0),Ws.prototype},7266:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(6309),n=r(3122);const o=class{constructor(){this.type=n.Z.ALL}get(){return this.type}set(t){if(this.type&&this.type!==t)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=t}reset(){this.type=n.Z.ALL}is(t){return this.type===t}},a=new class{constructor(t,e){this.color=e,this.changed=!1,this.data=t,this.type=new o}set(t,e){return this.color=e,this.changed=!1,this.data=t,this.type.type=n.Z.ALL,this}_ensureHSL(){const t=this.data,{h:e,s:r,l:n}=t;void 0===e&&(t.h=i.A.channel.rgb2hsl(t,"h")),void 0===r&&(t.s=i.A.channel.rgb2hsl(t,"s")),void 0===n&&(t.l=i.A.channel.rgb2hsl(t,"l"))}_ensureRGB(){const t=this.data,{r:e,g:r,b:n}=t;void 0===e&&(t.r=i.A.channel.hsl2rgb(t,"r")),void 0===r&&(t.g=i.A.channel.hsl2rgb(t,"g")),void 0===n&&(t.b=i.A.channel.hsl2rgb(t,"b"))}get r(){const t=this.data,e=t.r;return this.type.is(n.Z.HSL)||void 0===e?(this._ensureHSL(),i.A.channel.hsl2rgb(t,"r")):e}get g(){const t=this.data,e=t.g;return this.type.is(n.Z.HSL)||void 0===e?(this._ensureHSL(),i.A.channel.hsl2rgb(t,"g")):e}get b(){const t=this.data,e=t.b;return this.type.is(n.Z.HSL)||void 0===e?(this._ensureHSL(),i.A.channel.hsl2rgb(t,"b")):e}get h(){const t=this.data,e=t.h;return this.type.is(n.Z.RGB)||void 0===e?(this._ensureRGB(),i.A.channel.rgb2hsl(t,"h")):e}get s(){const t=this.data,e=t.s;return this.type.is(n.Z.RGB)||void 0===e?(this._ensureRGB(),i.A.channel.rgb2hsl(t,"s")):e}get l(){const t=this.data,e=t.l;return this.type.is(n.Z.RGB)||void 0===e?(this._ensureRGB(),i.A.channel.rgb2hsl(t,"l")):e}get a(){return this.data.a}set r(t){this.type.set(n.Z.RGB),this.changed=!0,this.data.r=t}set g(t){this.type.set(n.Z.RGB),this.changed=!0,this.data.g=t}set b(t){this.type.set(n.Z.RGB),this.changed=!0,this.data.b=t}set h(t){this.type.set(n.Z.HSL),this.changed=!0,this.data.h=t}set s(t){this.type.set(n.Z.HSL),this.changed=!0,this.data.s=t}set l(t){this.type.set(n.Z.HSL),this.changed=!0,this.data.l=t}set a(t){this.changed=!0,this.data.a=t}}({r:0,g:0,b:0,a:0},"transparent")},1931:(t,e,r)=>{"use strict";r.d(e,{A:()=>g});var i=r(7266),n=r(3122);const o={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:t=>{if(35!==t.charCodeAt(0))return;const e=t.match(o.re);if(!e)return;const r=e[1],n=parseInt(r,16),a=r.length,s=a%4==0,l=a>4,c=l?1:17,h=l?8:4,u=s?0:-1,d=l?255:15;return i.A.set({r:(n>>h*(u+3)&d)*c,g:(n>>h*(u+2)&d)*c,b:(n>>h*(u+1)&d)*c,a:s?(n&d)*c/255:1},t)},stringify:t=>{const{r:e,g:r,b:i,a:o}=t;return o<1?`#${n.Y[Math.round(e)]}${n.Y[Math.round(r)]}${n.Y[Math.round(i)]}${n.Y[Math.round(255*o)]}`:`#${n.Y[Math.round(e)]}${n.Y[Math.round(r)]}${n.Y[Math.round(i)]}`}},a=o;var s=r(6309);const l={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:t=>{const e=t.match(l.hueRe);if(e){const[,t,r]=e;switch(r){case"grad":return s.A.channel.clamp.h(.9*parseFloat(t));case"rad":return s.A.channel.clamp.h(180*parseFloat(t)/Math.PI);case"turn":return s.A.channel.clamp.h(360*parseFloat(t))}}return s.A.channel.clamp.h(parseFloat(t))},parse:t=>{const e=t.charCodeAt(0);if(104!==e&&72!==e)return;const r=t.match(l.re);if(!r)return;const[,n,o,a,c,h]=r;return i.A.set({h:l._hue2deg(n),s:s.A.channel.clamp.s(parseFloat(o)),l:s.A.channel.clamp.l(parseFloat(a)),a:c?s.A.channel.clamp.a(h?parseFloat(c)/100:parseFloat(c)):1},t)},stringify:t=>{const{h:e,s:r,l:i,a:n}=t;return n<1?`hsla(${s.A.lang.round(e)}, ${s.A.lang.round(r)}%, ${s.A.lang.round(i)}%, ${n})`:`hsl(${s.A.lang.round(e)}, ${s.A.lang.round(r)}%, ${s.A.lang.round(i)}%)`}},c=l,h={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:t=>{t=t.toLowerCase();const e=h.colors[t];if(e)return a.parse(e)},stringify:t=>{const e=a.stringify(t);for(const t in h.colors)if(h.colors[t]===e)return t}},u=h,d={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:t=>{const e=t.charCodeAt(0);if(114!==e&&82!==e)return;const r=t.match(d.re);if(!r)return;const[,n,o,a,l,c,h,u,p]=r;return i.A.set({r:s.A.channel.clamp.r(o?2.55*parseFloat(n):parseFloat(n)),g:s.A.channel.clamp.g(l?2.55*parseFloat(a):parseFloat(a)),b:s.A.channel.clamp.b(h?2.55*parseFloat(c):parseFloat(c)),a:u?s.A.channel.clamp.a(p?parseFloat(u)/100:parseFloat(u)):1},t)},stringify:t=>{const{r:e,g:r,b:i,a:n}=t;return n<1?`rgba(${s.A.lang.round(e)}, ${s.A.lang.round(r)}, ${s.A.lang.round(i)}, ${s.A.lang.round(n)})`:`rgb(${s.A.lang.round(e)}, ${s.A.lang.round(r)}, ${s.A.lang.round(i)})`}},p=d,f={format:{keyword:h,hex:a,rgb:d,rgba:d,hsl:l,hsla:l},parse:t=>{if("string"!=typeof t)return t;const e=a.parse(t)||p.parse(t)||c.parse(t)||u.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},stringify:t=>!t.changed&&t.color?t.color:t.type.is(n.Z.HSL)||void 0===t.data.r?c.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?p.stringify(t):a.stringify(t)},g=f},3122:(t,e,r)=>{"use strict";r.d(e,{Y:()=>n,Z:()=>o});var i=r(6309);const n={};for(let t=0;t<=255;t++)n[t]=i.A.unit.dec2hex(t);const o={ALL:0,RGB:1,HSL:2}},5635:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(6309),n=r(1931);const o=(t,e,r)=>{const o=n.A.parse(t),a=o[e],s=i.A.channel.clamp[e](a+r);return a!==s&&(o[e]=s),n.A.stringify(o)}},8232:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(6309),n=r(1931);const o=(t,e)=>{const r=n.A.parse(t);for(const t in e)r[t]=i.A.channel.clamp[t](e[t]);return n.A.stringify(r)}},5263:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(5635);const n=(t,e)=>(0,i.A)(t,"l",-e)},5097:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(6309),n=r(1931);const o=t=>(t=>{const{r:e,g:r,b:o}=n.A.parse(t),a=.2126*i.A.channel.toLinear(e)+.7152*i.A.channel.toLinear(r)+.0722*i.A.channel.toLinear(o);return i.A.lang.round(a)})(t)>=.5,a=t=>!o(t)},8041:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(5635);const n=(t,e)=>(0,i.A)(t,"l",e)},5582:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(6309),n=r(7266),o=r(1931),a=r(8232);const s=(t,e,r=0,s=1)=>{if("number"!=typeof t)return(0,a.A)(t,{a:e});const l=n.A.set({r:i.A.channel.clamp.r(t),g:i.A.channel.clamp.g(e),b:i.A.channel.clamp.b(r),a:i.A.channel.clamp.a(s)});return o.A.stringify(l)}},6309:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});const i={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:t=>t>=255?255:t<0?0:t,g:t=>t>=255?255:t<0?0:t,b:t=>t>=255?255:t<0?0:t,h:t=>t%360,s:t=>t>=100?100:t<0?0:t,l:t=>t>=100?100:t<0?0:t,a:t=>t>=1?1:t<0?0:t},toLinear:t=>{const e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},hue2rgb:(t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+6*(e-t)*r:r<.5?e:r<2/3?t+(e-t)*(2/3-r)*6:t),hsl2rgb:({h:t,s:e,l:r},n)=>{if(!e)return 2.55*r;t/=360,e/=100;const o=(r/=100)<.5?r*(1+e):r+e-r*e,a=2*r-o;switch(n){case"r":return 255*i.hue2rgb(a,o,t+1/3);case"g":return 255*i.hue2rgb(a,o,t);case"b":return 255*i.hue2rgb(a,o,t-1/3)}},rgb2hsl:({r:t,g:e,b:r},i)=>{t/=255,e/=255,r/=255;const n=Math.max(t,e,r),o=Math.min(t,e,r),a=(n+o)/2;if("l"===i)return 100*a;if(n===o)return 0;const s=n-o;if("s"===i)return 100*(a>.5?s/(2-n-o):s/(n+o));switch(n){case t:return 60*((e-r)/s+(ee>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),round:t=>Math.round(1e10*t)/1e10},unit:{dec2hex:t=>{const e=Math.round(t).toString(16);return e.length>1?e:`0${e}`}}}},9469:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(6984);const n=function(t,e){for(var r=t.length;r--;)if((0,i.A)(t[r][0],e))return r;return-1};var o=Array.prototype.splice;function a(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e-1},a.prototype.set=function(t,e){var r=this.__data__,i=n(r,t);return i<0?(++this.size,r.push([t,e])):r[i][1]=e,this};const s=a},8335:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(8562),n=r(1917);const o=(0,i.A)(n.A,"Map")},2050:(t,e,r)=>{"use strict";r.d(e,{A:()=>d});const i=(0,r(8562).A)(Object,"create");var n=Object.prototype.hasOwnProperty;var o=Object.prototype.hasOwnProperty;function a(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e{"use strict";r.d(e,{A:()=>o});var i=r(8562),n=r(1917);const o=(0,i.A)(n.A,"Set")},2080:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(9469);var n=r(8335),o=r(2050);function a(t){var e=this.__data__=new i.A(t);this.size=e.size}a.prototype.clear=function(){this.__data__=new i.A,this.size=0},a.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},a.prototype.get=function(t){return this.__data__.get(t)},a.prototype.has=function(t){return this.__data__.has(t)},a.prototype.set=function(t,e){var r=this.__data__;if(r instanceof i.A){var a=r.__data__;if(!n.A||a.length<199)return a.push([t,e]),this.size=++r.size,this;r=this.__data__=new o.A(a)}return r.set(t,e),this.size=r.size,this};const s=a},241:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=r(1917).A.Symbol},3988:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=r(1917).A.Uint8Array},2505:(t,e,r)=>{"use strict";r.d(e,{A:()=>c});var i=r(5175),n=r(2049),o=r(1200),a=r(5353),s=r(4749),l=Object.prototype.hasOwnProperty;const c=function(t,e){var r=(0,n.A)(t),c=!r&&(0,i.A)(t),h=!r&&!c&&(0,o.A)(t),u=!r&&!c&&!h&&(0,s.A)(t),d=r||c||h||u,p=d?function(t,e){for(var r=-1,i=Array(t);++r{"use strict";r.d(e,{A:()=>a});var i=r(2528),n=r(6984),o=Object.prototype.hasOwnProperty;const a=function(t,e,r){var a=t[e];o.call(t,e)&&(0,n.A)(a,r)&&(void 0!==r||e in t)||(0,i.A)(t,e,r)}},2528:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(4171);const n=function(t,e,r){"__proto__"==e&&i.A?(0,i.A)(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}},7132:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e,r){for(var i=-1,n=Object(t),o=r(t),a=o.length;a--;){var s=o[++i];if(!1===e(n[s],s,n))break}return t}},2383:(t,e,r)=>{"use strict";r.d(e,{A:()=>h});var i=r(241),n=Object.prototype,o=n.hasOwnProperty,a=n.toString,s=i.A?i.A.toStringTag:void 0;var l=Object.prototype.toString;var c=i.A?i.A.toStringTag:void 0;const h=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":c&&c in Object(t)?function(t){var e=o.call(t,s),r=t[s];try{t[s]=void 0;var i=!0}catch(t){}var n=a.call(t);return i&&(e?t[s]=r:delete t[s]),n}(t):function(t){return l.call(t)}(t)}},4453:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(7271);const n=(0,r(367).A)(Object.keys,Object);var o=Object.prototype.hasOwnProperty;const a=function(t){if(!(0,i.A)(t))return n(t);var e=[];for(var r in Object(t))o.call(t,r)&&"constructor"!=r&&e.push(r);return e}},4326:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(9008),n=r(5255),o=r(7424);const a=function(t,e){return(0,o.A)((0,n.A)(t,e,i.A),t+"")}},2789:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return function(e){return t(e)}}},565:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(3988);const n=function(t){var e=new t.constructor(t.byteLength);return new i.A(e).set(new i.A(t)),e}},154:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(1917),n="object"==typeof exports&&exports&&!exports.nodeType&&exports,o=n&&"object"==typeof module&&module&&!module.nodeType&&module,a=o&&o.exports===n?i.A.Buffer:void 0,s=a?a.allocUnsafe:void 0;const l=function(t,e){if(e)return t.slice();var r=t.length,i=s?s(r):new t.constructor(r);return t.copy(i),i}},1801:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(565);const n=function(t,e){var r=e?(0,i.A)(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}},9759:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e){var r=-1,i=t.length;for(e||(e=Array(i));++r{"use strict";r.d(e,{A:()=>o});var i=r(2851),n=r(2528);const o=function(t,e,r,o){var a=!r;r||(r={});for(var s=-1,l=e.length;++s{"use strict";r.d(e,{A:()=>o});var i=r(4326),n=r(6832);const o=function(t){return(0,i.A)((function(e,r){var i=-1,o=r.length,a=o>1?r[o-1]:void 0,s=o>2?r[2]:void 0;for(a=t.length>3&&"function"==typeof a?(o--,a):void 0,s&&(0,n.A)(r[0],r[1],s)&&(a=o<3?void 0:a,o=1),e=Object(e);++i{"use strict";r.d(e,{A:()=>n});var i=r(8562);const n=function(){try{var t=(0,i.A)(Object,"defineProperty");return t({},"",{}),t}catch(t){}}()},2136:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i="object"==typeof global&&global&&global.Object===Object&&global},8562:(t,e,r)=>{"use strict";r.d(e,{A:()=>y});var i=r(9610);const n=r(1917).A["__core-js_shared__"];var o,a=(o=/[^.]+$/.exec(n&&n.keys&&n.keys.IE_PROTO||""))?"Symbol(src)_1."+o:"";var s=r(3149),l=r(1121),c=/^\[object .+?Constructor\]$/,h=Function.prototype,u=Object.prototype,d=h.toString,p=u.hasOwnProperty,f=RegExp("^"+d.call(p).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const g=function(t){return!(!(0,s.A)(t)||(e=t,a&&a in e))&&((0,i.A)(t)?f:c).test((0,l.A)(t));var e},y=function(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return g(r)?r:void 0}},5647:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=(0,r(367).A)(Object.getPrototypeOf,Object)},9137:(t,e,r)=>{"use strict";r.d(e,{A:()=>w});var i=r(8562),n=r(1917);const o=(0,i.A)(n.A,"DataView");var a=r(8335);const s=(0,i.A)(n.A,"Promise");var l=r(9857);const c=(0,i.A)(n.A,"WeakMap");var h=r(2383),u=r(1121),d="[object Map]",p="[object Promise]",f="[object Set]",g="[object WeakMap]",y="[object DataView]",m=(0,u.A)(o),x=(0,u.A)(a.A),b=(0,u.A)(s),C=(0,u.A)(l.A),k=(0,u.A)(c),_=h.A;(o&&_(new o(new ArrayBuffer(1)))!=y||a.A&&_(new a.A)!=d||s&&_(s.resolve())!=p||l.A&&_(new l.A)!=f||c&&_(new c)!=g)&&(_=function(t){var e=(0,h.A)(t),r="[object Object]"==e?t.constructor:void 0,i=r?(0,u.A)(r):"";if(i)switch(i){case m:return y;case x:return d;case b:return p;case C:return f;case k:return g}return e});const w=_},407:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(3149),n=Object.create;const o=function(){function t(){}return function(e){if(!(0,i.A)(e))return{};if(n)return n(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();var a=r(5647),s=r(7271);const l=function(t){return"function"!=typeof t.constructor||(0,s.A)(t)?{}:o((0,a.A)(t))}},5353:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=/^(?:0|[1-9]\d*)$/;const n=function(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&i.test(t))&&t>-1&&t%1==0&&t{"use strict";r.d(e,{A:()=>s});var i=r(6984),n=r(8446),o=r(5353),a=r(3149);const s=function(t,e,r){if(!(0,a.A)(r))return!1;var s=typeof e;return!!("number"==s?(0,n.A)(r)&&(0,o.A)(e,r.length):"string"==s&&e in r)&&(0,i.A)(r[e],t)}},7271:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=Object.prototype;const n=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||i)}},4841:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(2136),n="object"==typeof exports&&exports&&!exports.nodeType&&exports,o=n&&"object"==typeof module&&module&&!module.nodeType&&module,a=o&&o.exports===n&&i.A.process;const s=function(){try{return o&&o.require&&o.require("util").types||a&&a.binding&&a.binding("util")}catch(t){}}()},367:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e){return function(r){return t(e(r))}}},5255:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=Math.max;const n=function(t,e,r){return e=i(void 0===e?t.length-1:e,0),function(){for(var n=arguments,o=-1,a=i(n.length-e,0),s=Array(a);++o{"use strict";r.d(e,{A:()=>o});var i=r(2136),n="object"==typeof self&&self&&self.Object===Object&&self;const o=i.A||n||Function("return this")()},7424:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(9142),n=r(4171),o=r(9008);const a=n.A?function(t,e){return(0,n.A)(t,"toString",{configurable:!0,enumerable:!1,value:(0,i.A)(e),writable:!0})}:o.A;var s=Date.now;const l=(c=a,h=0,u=0,function(){var t=s(),e=16-(t-u);if(u=t,e>0){if(++h>=800)return arguments[0]}else h=0;return c.apply(void 0,arguments)});var c,h,u},1121:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=Function.prototype.toString;const n=function(t){if(null!=t){try{return i.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},9142:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return function(){return t}}},6984:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e){return t===e||t!=t&&e!=e}},9008:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return t}},5175:(t,e,r)=>{"use strict";r.d(e,{A:()=>c});var i=r(2383),n=r(3098);const o=function(t){return(0,n.A)(t)&&"[object Arguments]"==(0,i.A)(t)};var a=Object.prototype,s=a.hasOwnProperty,l=a.propertyIsEnumerable;const c=o(function(){return arguments}())?o:function(t){return(0,n.A)(t)&&s.call(t,"callee")&&!l.call(t,"callee")}},2049:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=Array.isArray},8446:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(9610),n=r(5254);const o=function(t){return null!=t&&(0,n.A)(t.length)&&!(0,i.A)(t)}},3533:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(8446),n=r(3098);const o=function(t){return(0,n.A)(t)&&(0,i.A)(t)}},1200:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(1917);var n="object"==typeof exports&&exports&&!exports.nodeType&&exports,o=n&&"object"==typeof module&&module&&!module.nodeType&&module,a=o&&o.exports===n?i.A.Buffer:void 0;const s=(a?a.isBuffer:void 0)||function(){return!1}},6401:(t,e,r)=>{"use strict";r.d(e,{A:()=>d});var i=r(4453),n=r(9137),o=r(5175),a=r(2049),s=r(8446),l=r(1200),c=r(7271),h=r(4749),u=Object.prototype.hasOwnProperty;const d=function(t){if(null==t)return!0;if((0,s.A)(t)&&((0,a.A)(t)||"string"==typeof t||"function"==typeof t.splice||(0,l.A)(t)||(0,h.A)(t)||(0,o.A)(t)))return!t.length;var e=(0,n.A)(t);if("[object Map]"==e||"[object Set]"==e)return!t.size;if((0,c.A)(t))return!(0,i.A)(t).length;for(var r in t)if(u.call(t,r))return!1;return!0}},9610:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(2383),n=r(3149);const o=function(t){if(!(0,n.A)(t))return!1;var e=(0,i.A)(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},5254:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},3149:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},3098:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return null!=t&&"object"==typeof t}},4749:(t,e,r)=>{"use strict";r.d(e,{A:()=>h});var i=r(2383),n=r(5254),o=r(3098),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1;var s=r(2789),l=r(4841),c=l.A&&l.A.isTypedArray;const h=c?(0,s.A)(c):function(t){return(0,o.A)(t)&&(0,n.A)(t.length)&&!!a[(0,i.A)(t)]}},9999:(t,e,r)=>{"use strict";r.d(e,{A:()=>c});var i=r(2505),n=r(3149),o=r(7271);var a=Object.prototype.hasOwnProperty;const s=function(t){if(!(0,n.A)(t))return function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}(t);var e=(0,o.A)(t),r=[];for(var i in t)("constructor"!=i||!e&&a.call(t,i))&&r.push(i);return r};var l=r(8446);const c=function(t){return(0,l.A)(t)?(0,i.A)(t,!0):s(t)}},6632:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(2050);function n(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var r=function(){var i=arguments,n=e?e.apply(this,i):i[0],o=r.cache;if(o.has(n))return o.get(n);var a=t.apply(this,i);return r.cache=o.set(n,a)||o,a};return r.cache=new(n.Cache||i.A),r}n.Cache=i.A;const o=n},7222:(t,e,r)=>{"use strict";r.d(e,{A:()=>E});var i=r(2080),n=r(2528),o=r(6984);const a=function(t,e,r){(void 0!==r&&!(0,o.A)(t[e],r)||void 0===r&&!(e in t))&&(0,n.A)(t,e,r)};var s=r(7132),l=r(154),c=r(1801),h=r(9759),u=r(407),d=r(5175),p=r(2049),f=r(3533),g=r(1200),y=r(9610),m=r(3149),x=r(2383),b=r(5647),C=r(3098),k=Function.prototype,_=Object.prototype,w=k.toString,v=_.hasOwnProperty,T=w.call(Object);var S=r(4749);const A=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]};var M=r(2031),B=r(9999);const L=function(t,e,r,i,n,o,s){var k,_=A(t,r),L=A(e,r),F=s.get(L);if(F)a(t,r,F);else{var E=o?o(_,L,r+"",t,e,s):void 0,$=void 0===E;if($){var O=(0,p.A)(L),D=!O&&(0,g.A)(L),I=!O&&!D&&(0,S.A)(L);E=L,O||D||I?(0,p.A)(_)?E=_:(0,f.A)(_)?E=(0,h.A)(_):D?($=!1,E=(0,l.A)(L,!0)):I?($=!1,E=(0,c.A)(L,!0)):E=[]:function(t){if(!(0,C.A)(t)||"[object Object]"!=(0,x.A)(t))return!1;var e=(0,b.A)(t);if(null===e)return!0;var r=v.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&w.call(r)==T}(L)||(0,d.A)(L)?(E=_,(0,d.A)(_)?(k=_,E=(0,M.A)(k,(0,B.A)(k))):(0,m.A)(_)&&!(0,y.A)(_)||(E=(0,u.A)(L))):$=!1}$&&(s.set(L,E),n(E,L,i,o,s),s.delete(L)),a(t,r,E)}},F=function t(e,r,n,o,l){e!==r&&(0,s.A)(r,(function(s,c){if(l||(l=new i.A),(0,m.A)(s))L(e,r,c,n,t,o,l);else{var h=o?o(A(e,c),s,c+"",e,r,l):void 0;void 0===h&&(h=s),a(e,c,h)}}),B.A)},E=(0,r(3767).A)((function(t,e,r){F(t,e,r)}))},9022:(t,e,r)=>{"use strict";r.d(e,{IU:()=>Ft,gh:()=>Rt,nA:()=>Ge,U:()=>Lt,Jo:()=>Vt,jP:()=>Nt,on:()=>Ye,Zk:()=>Qt,g0:()=>Xt,T_:()=>zt,U_:()=>Ze,U7:()=>Ve,lC:()=>Jt});var i=r(8496),n=r(8252),o=r(7323),a=r(798),s=r(4852);function l(t,e,r){if(t&&t.length){const[i,n]=e,o=Math.PI/180*r,a=Math.cos(o),s=Math.sin(o);for(const e of t){const[t,r]=e;e[0]=(t-i)*a-(r-n)*s+i,e[1]=(t-i)*s+(r-n)*a+n}}}function c(t,e){return t[0]===e[0]&&t[1]===e[1]}function h(t,e,r,i=1){const n=r,o=Math.max(e,.1),a=t[0]&&t[0][0]&&"number"==typeof t[0][0]?[t]:t,s=[0,0];if(n)for(const t of a)l(t,s,n);const h=function(t,e,r){const i=[];for(const e of t){const t=[...e];c(t[0],t[t.length-1])||t.push([t[0][0],t[0][1]]),t.length>2&&i.push(t)}const n=[];e=Math.max(e,.1);const o=[];for(const t of i)for(let e=0;et.ymine.ymin?1:t.xe.x?1:t.ymax===e.ymax?0:(t.ymax-e.ymax)/Math.abs(t.ymax-e.ymax))),!o.length)return n;let a=[],s=o[0].ymin,l=0;for(;a.length||o.length;){if(o.length){let t=-1;for(let e=0;es);e++)t=e;o.splice(0,t+1).forEach((t=>{a.push({s,edge:t})}))}if(a=a.filter((t=>!(t.edge.ymax<=s))),a.sort(((t,e)=>t.edge.x===e.edge.x?0:(t.edge.x-e.edge.x)/Math.abs(t.edge.x-e.edge.x))),(1!==r||l%e==0)&&a.length>1)for(let t=0;t=a.length)break;const r=a[t].edge,i=a[e].edge;n.push([[Math.round(r.x),s],[Math.round(i.x),s]])}s+=r,a.forEach((t=>{t.edge.x=t.edge.x+r*t.edge.islope})),l++}return n}(a,o,i);if(n){for(const t of a)l(t,s,-n);!function(t,e,r){const i=[];t.forEach((t=>i.push(...t))),l(i,e,r)}(h,s,-n)}return h}function u(t,e){var r;const i=e.hachureAngle+90;let n=e.hachureGap;n<0&&(n=4*e.strokeWidth),n=Math.round(Math.max(n,.1));let o=1;return e.roughness>=1&&((null===(r=e.randomizer)||void 0===r?void 0:r.next())||Math.random())>.7&&(o=n),h(t,n,i,o||1)}class d{constructor(t){this.helper=t}fillPolygons(t,e){return this._fillPolygons(t,e)}_fillPolygons(t,e){const r=u(t,e);return{type:"fillSketch",ops:this.renderLines(r,e)}}renderLines(t,e){const r=[];for(const i of t)r.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],e));return r}}function p(t){const e=t[0],r=t[1];return Math.sqrt(Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2))}class f extends d{fillPolygons(t,e){let r=e.hachureGap;r<0&&(r=4*e.strokeWidth),r=Math.max(r,.1);const i=u(t,Object.assign({},e,{hachureGap:r})),n=Math.PI/180*e.hachureAngle,o=[],a=.5*r*Math.cos(n),s=.5*r*Math.sin(n);for(const[t,e]of i)p([t,e])&&o.push([[t[0]-a,t[1]+s],[...e]],[[t[0]+a,t[1]-s],[...e]]);return{type:"fillSketch",ops:this.renderLines(o,e)}}}class g extends d{fillPolygons(t,e){const r=this._fillPolygons(t,e),i=Object.assign({},e,{hachureAngle:e.hachureAngle+90}),n=this._fillPolygons(t,i);return r.ops=r.ops.concat(n.ops),r}}class y{constructor(t){this.helper=t}fillPolygons(t,e){const r=u(t,e=Object.assign({},e,{hachureAngle:0}));return this.dotsOnLines(r,e)}dotsOnLines(t,e){const r=[];let i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.max(i,.1);let n=e.fillWeight;n<0&&(n=e.strokeWidth/2);const o=i/4;for(const a of t){const t=p(a),s=t/i,l=Math.ceil(s)-1,c=t-l*i,h=(a[0][0]+a[1][0])/2-i/4,u=Math.min(a[0][1],a[1][1]);for(let t=0;t{const o=p(t),a=Math.floor(o/(r+i)),s=(o+i-a*(r+i))/2;let l=t[0],c=t[1];l[0]>c[0]&&(l=t[1],c=t[0]);const h=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let t=0;t{const n=p(t),o=Math.round(n/(2*e));let a=t[0],s=t[1];a[0]>s[0]&&(a=t[1],s=t[0]);const l=Math.atan((s[1]-a[1])/(s[0]-a[0]));for(let t=0;ti%2?t+r:t+e));o.push({key:"C",data:t}),e=t[4],r=t[5];break}case"Q":o.push({key:"Q",data:[...s]}),e=s[2],r=s[3];break;case"q":{const t=s.map(((t,i)=>i%2?t+r:t+e));o.push({key:"Q",data:t}),e=t[2],r=t[3];break}case"A":o.push({key:"A",data:[...s]}),e=s[5],r=s[6];break;case"a":e+=s[5],r+=s[6],o.push({key:"A",data:[s[0],s[1],s[2],s[3],s[4],e,r]});break;case"H":o.push({key:"H",data:[...s]}),e=s[0];break;case"h":e+=s[0],o.push({key:"H",data:[e]});break;case"V":o.push({key:"V",data:[...s]}),r=s[0];break;case"v":r+=s[0],o.push({key:"V",data:[r]});break;case"S":o.push({key:"S",data:[...s]}),e=s[2],r=s[3];break;case"s":{const t=s.map(((t,i)=>i%2?t+r:t+e));o.push({key:"S",data:t}),e=t[2],r=t[3];break}case"T":o.push({key:"T",data:[...s]}),e=s[0],r=s[1];break;case"t":e+=s[0],r+=s[1],o.push({key:"T",data:[e,r]});break;case"Z":case"z":o.push({key:"Z",data:[]}),e=i,r=n}return o}function M(t){const e=[];let r="",i=0,n=0,o=0,a=0,s=0,l=0;for(const{key:c,data:h}of t){switch(c){case"M":e.push({key:"M",data:[...h]}),[i,n]=h,[o,a]=h;break;case"C":e.push({key:"C",data:[...h]}),i=h[4],n=h[5],s=h[2],l=h[3];break;case"L":e.push({key:"L",data:[...h]}),[i,n]=h;break;case"H":i=h[0],e.push({key:"L",data:[i,n]});break;case"V":n=h[0],e.push({key:"L",data:[i,n]});break;case"S":{let t=0,o=0;"C"===r||"S"===r?(t=i+(i-s),o=n+(n-l)):(t=i,o=n),e.push({key:"C",data:[t,o,...h]}),s=h[0],l=h[1],i=h[2],n=h[3];break}case"T":{const[t,o]=h;let a=0,c=0;"Q"===r||"T"===r?(a=i+(i-s),c=n+(n-l)):(a=i,c=n);const u=i+2*(a-i)/3,d=n+2*(c-n)/3,p=t+2*(a-t)/3,f=o+2*(c-o)/3;e.push({key:"C",data:[u,d,p,f,t,o]}),s=a,l=c,i=t,n=o;break}case"Q":{const[t,r,o,a]=h,c=i+2*(t-i)/3,u=n+2*(r-n)/3,d=o+2*(t-o)/3,p=a+2*(r-a)/3;e.push({key:"C",data:[c,u,d,p,o,a]}),s=t,l=r,i=o,n=a;break}case"A":{const t=Math.abs(h[0]),r=Math.abs(h[1]),o=h[2],a=h[3],s=h[4],l=h[5],c=h[6];0===t||0===r?(e.push({key:"C",data:[i,n,l,c,l,c]}),i=l,n=c):i===l&&n===c||(L(i,n,l,c,t,r,o,a,s).forEach((function(t){e.push({key:"C",data:t})})),i=l,n=c);break}case"Z":e.push({key:"Z",data:[]}),i=o,n=a}r=c}return e}function B(t,e,r){return[t*Math.cos(r)-e*Math.sin(r),t*Math.sin(r)+e*Math.cos(r)]}function L(t,e,r,i,n,o,a,s,l,c){const h=(u=a,Math.PI*u/180);var u;let d=[],p=0,f=0,g=0,y=0;if(c)[p,f,g,y]=c;else{[t,e]=B(t,e,-h),[r,i]=B(r,i,-h);const a=(t-r)/2,c=(e-i)/2;let u=a*a/(n*n)+c*c/(o*o);u>1&&(u=Math.sqrt(u),n*=u,o*=u);const d=n*n,m=o*o,x=d*m-d*c*c-m*a*a,b=d*c*c+m*a*a,C=(s===l?-1:1)*Math.sqrt(Math.abs(x/b));g=C*n*c/o+(t+r)/2,y=C*-o*a/n+(e+i)/2,p=Math.asin(parseFloat(((e-y)/o).toFixed(9))),f=Math.asin(parseFloat(((i-y)/o).toFixed(9))),tf&&(p-=2*Math.PI),!l&&f>p&&(f-=2*Math.PI)}let m=f-p;if(Math.abs(m)>120*Math.PI/180){const t=f,e=r,s=i;f=l&&f>p?p+120*Math.PI/180*1:p+120*Math.PI/180*-1,d=L(r=g+n*Math.cos(f),i=y+o*Math.sin(f),e,s,n,o,a,0,l,[f,t,g,y])}m=f-p;const x=Math.cos(p),b=Math.sin(p),C=Math.cos(f),k=Math.sin(f),_=Math.tan(m/4),w=4/3*n*_,v=4/3*o*_,T=[t,e],S=[t+w*b,e-v*x],A=[r+w*k,i-v*C],M=[r,i];if(S[0]=2*T[0]-S[0],S[1]=2*T[1]-S[1],c)return[S,A,M].concat(d);{d=[S,A,M].concat(d);const t=[];for(let e=0;e2){const n=[];for(let e=0;e2*Math.PI&&(p=0,f=2*Math.PI);const g=2*Math.PI/l.curveStepCount,y=Math.min(g/2,(f-p)/2),m=Z(y,c,h,u,d,p,f,1,l);if(!l.disableMultiStroke){const t=Z(y,c,h,u,d,p,f,1.5,l);m.push(...t)}return a&&(s?m.push(...U(c,h,c+u*Math.cos(p),h+d*Math.sin(p),l),...U(c,h,c+u*Math.cos(f),h+d*Math.sin(f),l)):m.push({op:"lineTo",data:[c,h]},{op:"lineTo",data:[c+u*Math.cos(p),h+d*Math.sin(p)]})),{type:"path",ops:m}}function P(t,e){const r=M(A(S(t))),i=[];let n=[0,0],o=[0,0];for(const{key:t,data:a}of r)switch(t){case"M":o=[a[0],a[1]],n=[a[0],a[1]];break;case"L":i.push(...U(o[0],o[1],a[0],a[1],e)),o=[a[0],a[1]];break;case"C":{const[t,r,n,s,l,c]=a;i.push(...X(t,r,n,s,l,c,o,e)),o=[l,c];break}case"Z":i.push(...U(o[0],o[1],n[0],n[1],e)),o=[n[0],n[1]]}return{type:"path",ops:i}}function N(t,e){const r=[];for(const i of t)if(i.length){const t=e.maxRandomnessOffset||0,n=i.length;if(n>2){r.push({op:"move",data:[i[0][0]+W(t,e),i[0][1]+W(t,e)]});for(let o=1;o500?.4:-.0016668*l+1.233334;let h=n.maxRandomnessOffset||0;h*h*100>s&&(h=l/10);const u=h/2,d=.2+.2*K(n);let p=n.bowing*n.maxRandomnessOffset*(i-e)/200,f=n.bowing*n.maxRandomnessOffset*(t-r)/200;p=W(p,n,c),f=W(f,n,c);const g=[],y=()=>W(u,n,c),m=()=>W(h,n,c),x=n.preserveVertices;return o&&(a?g.push({op:"move",data:[t+(x?0:y()),e+(x?0:y())]}):g.push({op:"move",data:[t+(x?0:W(h,n,c)),e+(x?0:W(h,n,c))]})),a?g.push({op:"bcurveTo",data:[p+t+(r-t)*d+y(),f+e+(i-e)*d+y(),p+t+2*(r-t)*d+y(),f+e+2*(i-e)*d+y(),r+(x?0:y()),i+(x?0:y())]}):g.push({op:"bcurveTo",data:[p+t+(r-t)*d+m(),f+e+(i-e)*d+m(),p+t+2*(r-t)*d+m(),f+e+2*(i-e)*d+m(),r+(x?0:m()),i+(x?0:m())]}),g}function Y(t,e,r){if(!t.length)return[];const i=[];i.push([t[0][0]+W(e,r),t[0][1]+W(e,r)]),i.push([t[0][0]+W(e,r),t[0][1]+W(e,r)]);for(let n=1;n3){const o=[],a=1-r.curveTightness;n.push({op:"move",data:[t[1][0],t[1][1]]});for(let e=1;e+21&&n.push(r)):n.push(r),n.push(t[e+3])}else{const i=.5,o=t[e+0],a=t[e+1],s=t[e+2],l=t[e+3],c=rt(o,a,i),h=rt(a,s,i),u=rt(s,l,i),d=rt(c,h,i),p=rt(h,u,i),f=rt(d,p,i);it([o,c,d,f],0,r,n),it([f,p,u,l],0,r,n)}var o,a;return n}function nt(t,e){return ot(t,0,t.length,e)}function ot(t,e,r,i,n){const o=n||[],a=t[e],s=t[r-1];let l=0,c=1;for(let i=e+1;il&&(l=e,c=i)}return Math.sqrt(l)>i?(ot(t,e,c+1,i,o),ot(t,c,r,i,o)):(o.length||o.push(a),o.push(s)),o}function at(t,e=.15,r){const i=[],n=(t.length-1)/3;for(let r=0;r0?ot(i,0,i.length,r):i}const st="none";class lt{constructor(t){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=t||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2**31)}_o(t){return t?Object.assign({},this.defaultOptions,t):this.defaultOptions}_d(t,e,r){return{shape:t,sets:e||[],options:r||this.defaultOptions}}line(t,e,r,i,n){const o=this._o(n);return this._d("line",[E(t,e,r,i,o)],o)}rectangle(t,e,r,i,n){const o=this._o(n),a=[],s=function(t,e,r,i,n){return function(t,e){return $(t,!0,e)}([[t,e],[t+r,e],[t+r,e+i],[t,e+i]],n)}(t,e,r,i,o);if(o.fill){const n=[[t,e],[t+r,e],[t+r,e+i],[t,e+i]];"solid"===o.fillStyle?a.push(N([n],o)):a.push(q([n],o))}return o.stroke!==st&&a.push(s),this._d("rectangle",a,o)}ellipse(t,e,r,i,n){const o=this._o(n),a=[],s=D(r,i,o),l=I(t,e,o,s);if(o.fill)if("solid"===o.fillStyle){const r=I(t,e,o,s).opset;r.type="fillPath",a.push(r)}else a.push(q([l.estimatedPoints],o));return o.stroke!==st&&a.push(l.opset),this._d("ellipse",a,o)}circle(t,e,r,i){const n=this.ellipse(t,e,r,r,i);return n.shape="circle",n}linearPath(t,e){const r=this._o(e);return this._d("linearPath",[$(t,!1,r)],r)}arc(t,e,r,i,n,o,a=!1,s){const l=this._o(s),c=[],h=R(t,e,r,i,n,o,a,!0,l);if(a&&l.fill)if("solid"===l.fillStyle){const a=Object.assign({},l);a.disableMultiStroke=!0;const s=R(t,e,r,i,n,o,!0,!1,a);s.type="fillPath",c.push(s)}else c.push(function(t,e,r,i,n,o,a){const s=t,l=e;let c=Math.abs(r/2),h=Math.abs(i/2);c+=W(.01*c,a),h+=W(.01*h,a);let u=n,d=o;for(;u<0;)u+=2*Math.PI,d+=2*Math.PI;d-u>2*Math.PI&&(u=0,d=2*Math.PI);const p=(d-u)/a.curveStepCount,f=[];for(let t=u;t<=d;t+=p)f.push([s+c*Math.cos(t),l+h*Math.sin(t)]);return f.push([s+c*Math.cos(d),l+h*Math.sin(d)]),f.push([s,l]),q([f],a)}(t,e,r,i,n,o,l));return l.stroke!==st&&c.push(h),this._d("arc",c,l)}curve(t,e){const r=this._o(e),i=[],n=O(t,r);if(r.fill&&r.fill!==st)if("solid"===r.fillStyle){const e=O(t,Object.assign(Object.assign({},r),{disableMultiStroke:!0,roughness:r.roughness?r.roughness+r.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(e.ops)})}else{const e=[],n=t;if(n.length){const t="number"==typeof n[0][0]?[n]:n;for(const i of t)i.length<3?e.push(...i):3===i.length?e.push(...at(J([i[0],i[0],i[1],i[2]]),10,(1+r.roughness)/2)):e.push(...at(J(i),10,(1+r.roughness)/2))}e.length&&i.push(q([e],r))}return r.stroke!==st&&i.push(n),this._d("curve",i,r)}polygon(t,e){const r=this._o(e),i=[],n=$(t,!0,r);return r.fill&&("solid"===r.fillStyle?i.push(N([t],r)):i.push(q([t],r))),r.stroke!==st&&i.push(n),this._d("polygon",i,r)}path(t,e){const r=this._o(e),i=[];if(!t)return this._d("path",i,r);t=(t||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const n=r.fill&&"transparent"!==r.fill&&r.fill!==st,o=r.stroke!==st,a=!!(r.simplification&&r.simplification<1),s=function(t,e,r){const i=M(A(S(t))),n=[];let o=[],a=[0,0],s=[];const l=()=>{s.length>=4&&o.push(...at(s,1)),s=[]},c=()=>{l(),o.length&&(n.push(o),o=[])};for(const{key:t,data:e}of i)switch(t){case"M":c(),a=[e[0],e[1]],o.push(a);break;case"L":l(),o.push([e[0],e[1]]);break;case"C":if(!s.length){const t=o.length?o[o.length-1]:a;s.push([t[0],t[1]])}s.push([e[0],e[1]]),s.push([e[2],e[3]]),s.push([e[4],e[5]]);break;case"Z":l(),o.push([a[0],a[1]])}if(c(),!r)return n;const h=[];for(const t of n){const e=nt(t,r);e.length&&h.push(e)}return h}(t,0,a?4-4*(r.simplification||1):(1+r.roughness)/2),l=P(t,r);if(n)if("solid"===r.fillStyle)if(1===s.length){const e=P(t,Object.assign(Object.assign({},r),{disableMultiStroke:!0,roughness:r.roughness?r.roughness+r.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(e.ops)})}else i.push(N(s,r));else i.push(q(s,r));return o&&(a?s.forEach((t=>{i.push($(t,!1,r))})):i.push(l)),this._d("path",i,r)}opsToPath(t,e){let r="";for(const i of t.ops){const t="number"==typeof e&&e>=0?i.data.map((t=>+t.toFixed(e))):i.data;switch(i.op){case"move":r+=`M${t[0]} ${t[1]} `;break;case"bcurveTo":r+=`C${t[0]} ${t[1]}, ${t[2]} ${t[3]}, ${t[4]} ${t[5]} `;break;case"lineTo":r+=`L${t[0]} ${t[1]} `}}return r.trim()}toPaths(t){const e=t.sets||[],r=t.options||this.defaultOptions,i=[];for(const t of e){let e=null;switch(t.type){case"path":e={d:this.opsToPath(t),stroke:r.stroke,strokeWidth:r.strokeWidth,fill:st};break;case"fillPath":e={d:this.opsToPath(t),stroke:st,strokeWidth:0,fill:r.fill||st};break;case"fillSketch":e=this.fillSketch(t,r)}e&&i.push(e)}return i}fillSketch(t,e){let r=e.fillWeight;return r<0&&(r=e.strokeWidth/2),{d:this.opsToPath(t),stroke:e.fill||st,strokeWidth:r,fill:st}}_mergedShape(t){return t.filter(((t,e)=>0===e||"move"!==t.op))}}const ct="http://www.w3.org/2000/svg";class ht{constructor(t,e){this.svg=t,this.gen=new lt(e)}draw(t){const e=t.sets||[],r=t.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,n=i.createElementNS(ct,"g"),o=t.options.fixedDecimalPlaceDigits;for(const a of e){let e=null;switch(a.type){case"path":e=i.createElementNS(ct,"path"),e.setAttribute("d",this.opsToPath(a,o)),e.setAttribute("stroke",r.stroke),e.setAttribute("stroke-width",r.strokeWidth+""),e.setAttribute("fill","none"),r.strokeLineDash&&e.setAttribute("stroke-dasharray",r.strokeLineDash.join(" ").trim()),r.strokeLineDashOffset&&e.setAttribute("stroke-dashoffset",`${r.strokeLineDashOffset}`);break;case"fillPath":e=i.createElementNS(ct,"path"),e.setAttribute("d",this.opsToPath(a,o)),e.setAttribute("stroke","none"),e.setAttribute("stroke-width","0"),e.setAttribute("fill",r.fill||""),"curve"!==t.shape&&"polygon"!==t.shape||e.setAttribute("fill-rule","evenodd");break;case"fillSketch":e=this.fillSketch(i,a,r)}e&&n.appendChild(e)}return n}fillSketch(t,e,r){let i=r.fillWeight;i<0&&(i=r.strokeWidth/2);const n=t.createElementNS(ct,"path");return n.setAttribute("d",this.opsToPath(e,r.fixedDecimalPlaceDigits)),n.setAttribute("stroke",r.fill||""),n.setAttribute("stroke-width",i+""),n.setAttribute("fill","none"),r.fillLineDash&&n.setAttribute("stroke-dasharray",r.fillLineDash.join(" ").trim()),r.fillLineDashOffset&&n.setAttribute("stroke-dashoffset",`${r.fillLineDashOffset}`),n}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(t,e){return this.gen.opsToPath(t,e)}line(t,e,r,i,n){const o=this.gen.line(t,e,r,i,n);return this.draw(o)}rectangle(t,e,r,i,n){const o=this.gen.rectangle(t,e,r,i,n);return this.draw(o)}ellipse(t,e,r,i,n){const o=this.gen.ellipse(t,e,r,i,n);return this.draw(o)}circle(t,e,r,i){const n=this.gen.circle(t,e,r,i);return this.draw(n)}linearPath(t,e){const r=this.gen.linearPath(t,e);return this.draw(r)}polygon(t,e){const r=this.gen.polygon(t,e);return this.draw(r)}arc(t,e,r,i,n,o,a=!1,s){const l=this.gen.arc(t,e,r,i,n,o,a,s);return this.draw(l)}curve(t,e){const r=this.gen.curve(t,e);return this.draw(r)}path(t,e){const r=this.gen.path(t,e);return this.draw(r)}}var ut=(t,e)=>new ht(t,e),dt=(0,a.K2)(((t,e)=>{var r,i,n=t.x,o=t.y,a=e.x-n,s=e.y-o,l=t.width/2,c=t.height/2;return Math.abs(s)*l>Math.abs(a)*c?(s<0&&(c=-c),r=0===s?0:c*a/s,i=c):(a<0&&(l=-l),r=l,i=0===a?0:l*s/a),{x:n+r,y:o+i}}),"intersectRect"),pt=dt;function ft(t,e){e&&t.attr("style",e)}async function gt(t){const e=(0,s.Ltv)(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div");let i=t.label;t.label&&(0,a.Wi)(t.label)&&(i=await(0,a.VJ)(t.label.replace(a.Y2.lineBreakRegex,"\n"),(0,a.D7)()));const n=t.isNode?"nodeLabel":"edgeLabel";return r.html('"+i+""),ft(r,t.labelStyle),r.style("display","inline-block"),r.style("padding-right","1px"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}(0,a.K2)(ft,"applyStyle"),(0,a.K2)(gt,"addHtmlLabel");var yt=(0,a.K2)((async(t,e,r,i)=>{let n=t||"";if("object"==typeof n&&(n=n[0]),(0,a._3)((0,a.D7)().flowchart.htmlLabels)){n=n.replace(/\\n|\n/g,"
    "),a.Rm.info("vertexText"+n);const t={isNode:i,label:(0,o.Sm)(n).replace(/fa[blrs]?:fa-[\w-]+/g,(t=>``)),labelStyle:e?e.replace("fill:","color:"):e};return await gt(t)}{const t=document.createElementNS("http://www.w3.org/2000/svg","text");t.setAttribute("style",e.replace("color:","fill:"));let i=[];i="string"==typeof n?n.split(/\\n|\n|/gi):Array.isArray(n)?n:[];for(const e of i){const i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),r?i.setAttribute("class","title-row"):i.setAttribute("class","row"),i.textContent=e.trim(),t.appendChild(i)}return t}}),"createLabel"),mt=yt,xt=(0,a.K2)(((t,e,r,i,n)=>["M",t+n,e,"H",t+r-n,"A",n,n,0,0,1,t+r,e+n,"V",e+i-n,"A",n,n,0,0,1,t+r-n,e+i,"H",t+n,"A",n,n,0,0,1,t,e+i-n,"V",e+n,"A",n,n,0,0,1,t+n,e,"Z"].join(" ")),"createRoundedRectPathD"),bt=(0,a.K2)((t=>{const{handDrawnSeed:e}=(0,a.D7)();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}}),"solidStateFill"),Ct=(0,a.K2)((t=>{const e=kt([...t.cssCompiledStyles||[],...t.cssStyles||[]]);return{stylesMap:e,stylesArray:[...e]}}),"compileStyles"),kt=(0,a.K2)((t=>{const e=new Map;return t.forEach((t=>{const[r,i]=t.split(":");e.set(r.trim(),i?.trim())})),e}),"styles2Map"),_t=(0,a.K2)((t=>{const{stylesArray:e}=Ct(t),r=[],i=[],n=[],o=[];return e.forEach((t=>{const e=t[0];"color"===e||"font-size"===e||"font-family"===e||"font-weight"===e||"font-style"===e||"text-decoration"===e||"text-align"===e||"text-transform"===e||"line-height"===e||"letter-spacing"===e||"word-spacing"===e||"text-shadow"===e||"text-overflow"===e||"white-space"===e||"word-wrap"===e||"word-break"===e||"overflow-wrap"===e||"hyphens"===e?r.push(t.join(":")+" !important"):(i.push(t.join(":")+" !important"),e.includes("stroke")&&n.push(t.join(":")+" !important"),"fill"===e&&o.push(t.join(":")+" !important"))})),{labelStyles:r.join(";"),nodeStyles:i.join(";"),stylesArray:e,borderStyles:n,backgroundStyles:o}}),"styles2String"),wt=(0,a.K2)(((t,e)=>{const{themeVariables:r,handDrawnSeed:i}=(0,a.D7)(),{nodeBorder:n,mainBkg:o}=r,{stylesMap:s}=Ct(t);return Object.assign({roughness:.7,fill:s.get("fill")||o,fillStyle:"hachure",fillWeight:4,stroke:s.get("stroke")||n,seed:i,strokeWidth:1.3},e)}),"userNodeOverrides"),vt=(0,a.K2)((async(t,e)=>{a.Rm.info("Creating subgraph rect for ",e.id,e);const r=(0,a.D7)(),{themeVariables:o,handDrawnSeed:l}=r,{clusterBkg:c,clusterBorder:h}=o,{labelStyles:u,nodeStyles:d,borderStyles:p,backgroundStyles:f}=_t(e),g=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),y=(0,a._3)(r.flowchart.htmlLabels),m=g.insert("g").attr("class","cluster-label "),x=await(0,n.GZ)(m,e.label,{style:e.labelStyle,useHtmlLabels:y,isNode:!0});let b=x.getBBox();if((0,a._3)(r.flowchart.htmlLabels)){const t=x.children[0],e=(0,s.Ltv)(x);b=t.getBoundingClientRect(),e.attr("width",b.width),e.attr("height",b.height)}const C=e.width<=b.width+e.padding?b.width+e.padding:e.width;e.width<=b.width+e.padding?e.diff=(C-e.width)/2-e.padding:e.diff=-e.padding;const k=e.height,_=e.x-C/2,w=e.y-k/2;let v;if(a.Rm.trace("Data ",e,JSON.stringify(e)),"handDrawn"===e.look){const t=ut(g),r=wt(e,{roughness:.7,fill:c,stroke:h,fillWeight:3,seed:l}),i=t.path(xt(_,w,C,k,0),r);v=g.insert((()=>(a.Rm.debug("Rough node insert CXC",i),i)),":first-child"),v.select("path:nth-child(2)").attr("style",p.join(";")),v.select("path").attr("style",f.join(";").replace("fill","stroke"))}else v=g.insert("rect",":first-child"),v.attr("style",d).attr("rx",e.rx).attr("ry",e.ry).attr("x",_).attr("y",w).attr("width",C).attr("height",k);const{subGraphTitleTopMargin:T}=(0,i.O)(r);if(m.attr("transform",`translate(${e.x-b.width/2}, ${e.y-e.height/2+T})`),u){const t=m.select("span");t&&t.attr("style",u)}const S=v.node().getBBox();return e.offsetX=0,e.width=S.width,e.height=S.height,e.offsetY=b.height-e.padding/2,e.intersect=function(t){return pt(e,t)},{cluster:g,labelBBox:b}}),"rect"),Tt=(0,a.K2)(((t,e)=>{const r=t.insert("g").attr("class","note-cluster").attr("id",e.id),i=r.insert("rect",":first-child"),n=0*e.padding,o=n/2;i.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-o).attr("y",e.y-e.height/2-o).attr("width",e.width+n).attr("height",e.height+n).attr("fill","none");const a=i.node().getBBox();return e.width=a.width,e.height=a.height,e.intersect=function(t){return pt(e,t)},{cluster:r,labelBBox:{width:0,height:0}}}),"noteGroup"),St=(0,a.K2)((async(t,e)=>{const r=(0,a.D7)(),{themeVariables:i,handDrawnSeed:n}=r,{altBackground:o,compositeBackground:l,compositeTitleBackground:c,nodeBorder:h}=i,u=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-id",e.id).attr("data-look",e.look),d=u.insert("g",":first-child"),p=u.insert("g").attr("class","cluster-label");let f=u.append("rect");const g=p.node().appendChild(await mt(e.label,e.labelStyle,void 0,!0));let y=g.getBBox();if((0,a._3)(r.flowchart.htmlLabels)){const t=g.children[0],e=(0,s.Ltv)(g);y=t.getBoundingClientRect(),e.attr("width",y.width),e.attr("height",y.height)}const m=0*e.padding,x=m/2,b=(e.width<=y.width+e.padding?y.width+e.padding:e.width)+m;e.width<=y.width+e.padding?e.diff=(b-e.width)/2-e.padding:e.diff=-e.padding;const C=e.height+m,k=e.height+m-y.height-6,_=e.x-b/2,w=e.y-C/2;e.width=b;const v=e.y-e.height/2-x+y.height+2;let T;if("handDrawn"===e.look){const t=e.cssClasses.includes("statediagram-cluster-alt"),r=ut(u),i=e.rx||e.ry?r.path(xt(_,w,b,C,10),{roughness:.7,fill:c,fillStyle:"solid",stroke:h,seed:n}):r.rectangle(_,w,b,C,{seed:n});T=u.insert((()=>i),":first-child");const a=r.rectangle(_,v,b,k,{fill:t?o:l,fillStyle:t?"hachure":"solid",stroke:h,seed:n});T=u.insert((()=>i),":first-child"),f=u.insert((()=>a))}else{T=d.insert("rect",":first-child");const t="outer";T.attr("class",t).attr("x",_).attr("y",w).attr("width",b).attr("height",C).attr("data-look",e.look),f.attr("class","inner").attr("x",_).attr("y",v).attr("width",b).attr("height",k)}p.attr("transform",`translate(${e.x-y.width/2}, ${w+1-((0,a._3)(r.flowchart.htmlLabels)?0:3)})`);const S=T.node().getBBox();return e.height=S.height,e.offsetX=0,e.offsetY=y.height-e.padding/2,e.labelBBox=y,e.intersect=function(t){return pt(e,t)},{cluster:u,labelBBox:y}}),"roundedWithTitle"),At=(0,a.K2)(((t,e)=>{const r=(0,a.D7)(),{themeVariables:i,handDrawnSeed:n}=r,{nodeBorder:o}=i,s=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-look",e.look),l=s.insert("g",":first-child"),c=0*e.padding,h=e.width+c;e.diff=-e.padding;const u=e.height+c,d=e.x-h/2,p=e.y-u/2;let f;if(e.width=h,"handDrawn"===e.look){const t=ut(s).rectangle(d,p,h,u,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:o,seed:n});f=s.insert((()=>t),":first-child")}else{f=l.insert("rect",":first-child");const t="divider";f.attr("class",t).attr("x",d).attr("y",p).attr("width",h).attr("height",u).attr("data-look",e.look)}const g=f.node().getBBox();return e.height=g.height,e.offsetX=0,e.offsetY=0,e.intersect=function(t){return pt(e,t)},{cluster:s,labelBBox:{}}}),"divider"),Mt={rect:vt,squareRect:vt,roundedWithTitle:St,noteGroup:Tt,divider:At},Bt=new Map,Lt=(0,a.K2)((async(t,e)=>{const r=e.shape||"rect",i=await Mt[r](t,e);return Bt.set(e.id,i),i}),"insertCluster"),Ft=(0,a.K2)((()=>{Bt=new Map}),"clear"),Et=(0,a.K2)(((t,e,r,i,n)=>{e.arrowTypeStart&&Ot(t,"start",e.arrowTypeStart,r,i,n),e.arrowTypeEnd&&Ot(t,"end",e.arrowTypeEnd,r,i,n)}),"addEdgeMarkers"),$t={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},Ot=(0,a.K2)(((t,e,r,i,n,o)=>{const s=$t[r];if(!s)return void a.Rm.warn(`Unknown arrow type: ${r}`);const l="start"===e?"Start":"End";t.attr(`marker-${e}`,`url(${i}#${n}_${o}-${s}${l})`)}),"addEdgeMarker"),Dt=new Map,It=new Map,Rt=(0,a.K2)((()=>{Dt.clear(),It.clear()}),"clear"),Pt=(0,a.K2)((t=>t?t.reduce(((t,e)=>t+";"+e),""):""),"getLabelStyles"),Nt=(0,a.K2)((async(t,e)=>{let r=(0,a._3)((0,a.D7)().flowchart.htmlLabels);const i=await(0,n.GZ)(t,e.label,{style:Pt(e.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1});a.Rm.info("abc82",e,e.labelType);const o=t.insert("g").attr("class","edgeLabel"),l=o.insert("g").attr("class","label");l.node().appendChild(i);let c,h=i.getBBox();if(r){const t=i.children[0],e=(0,s.Ltv)(i);h=t.getBoundingClientRect(),e.attr("width",h.width),e.attr("height",h.height)}if(l.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),Dt.set(e.id,o),e.width=h.width,e.height=h.height,e.startLabelLeft){const r=await mt(e.startLabelLeft,Pt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");c=n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),It.get(e.id)||It.set(e.id,{}),It.get(e.id).startLeft=i,qt(c,e.startLabelLeft)}if(e.startLabelRight){const r=await mt(e.startLabelRight,Pt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");c=i.node().appendChild(r),n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),It.get(e.id)||It.set(e.id,{}),It.get(e.id).startRight=i,qt(c,e.startLabelRight)}if(e.endLabelLeft){const r=await mt(e.endLabelLeft,Pt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");c=n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),i.node().appendChild(r),It.get(e.id)||It.set(e.id,{}),It.get(e.id).endLeft=i,qt(c,e.endLabelLeft)}if(e.endLabelRight){const r=await mt(e.endLabelRight,Pt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");c=n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),i.node().appendChild(r),It.get(e.id)||It.set(e.id,{}),It.get(e.id).endRight=i,qt(c,e.endLabelRight)}return i}),"insertEdgeLabel");function qt(t,e){(0,a.D7)().flowchart.htmlLabels&&t&&(t.style.width=9*e.length+"px",t.style.height="12px")}(0,a.K2)(qt,"setTerminalWidth");var zt=(0,a.K2)(((t,e)=>{a.Rm.debug("Moving label abc88 ",t.id,t.label,Dt.get(t.id),e);let r=e.updatedPath?e.updatedPath:e.originalPath;const n=(0,a.D7)(),{subGraphTitleTotalMargin:s}=(0,i.O)(n);if(t.label){const i=Dt.get(t.id);let n=t.x,l=t.y;if(r){const i=o._K.calcLabelPosition(r);a.Rm.debug("Moving label "+t.label+" from (",n,",",l,") to (",i.x,",",i.y,") abc88"),e.updatedPath&&(n=i.x,l=i.y)}i.attr("transform",`translate(${n}, ${l+s/2})`)}if(t.startLabelLeft){const e=It.get(t.id).startLeft;let i=t.x,n=t.y;if(r){const e=o._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.startLabelRight){const e=It.get(t.id).startRight;let i=t.x,n=t.y;if(r){const e=o._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.endLabelLeft){const e=It.get(t.id).endLeft;let i=t.x,n=t.y;if(r){const e=o._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.endLabelRight){const e=It.get(t.id).endRight;let i=t.x,n=t.y;if(r){const e=o._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}}),"positionEdgeLabel"),Kt=(0,a.K2)(((t,e)=>{const r=t.x,i=t.y,n=Math.abs(e.x-r),o=Math.abs(e.y-i),a=t.width/2,s=t.height/2;return n>=a||o>=s}),"outsideNode"),jt=(0,a.K2)(((t,e,r)=>{a.Rm.debug(`intersection calc abc89:\n outsidePoint: ${JSON.stringify(e)}\n insidePoint : ${JSON.stringify(r)}\n node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);const i=t.x,n=t.y,o=Math.abs(i-r.x),s=t.width/2;let l=r.xMath.abs(i-e.x)*c){let t=r.y{a.Rm.warn("abc88 cutPathAtIntersect",t,e);let r=[],i=t[0],n=!1;return t.forEach((t=>{if(a.Rm.info("abc88 checking point",t,e),Kt(e,t)||n)a.Rm.warn("abc88 outside",t,i),i=t,n||r.push(t);else{const o=jt(e,i,t);a.Rm.debug("abc88 inside",t,i,o),a.Rm.debug("abc88 intersection",o,e);let s=!1;r.forEach((t=>{s=s||t.x===o.x&&t.y===o.y})),r.some((t=>t.x===o.x&&t.y===o.y))?a.Rm.warn("abc88 no intersect",o,r):r.push(o),n=!0}})),a.Rm.debug("returning points",r),r}),"cutPathAtIntersect");function Ut(t){const e=[],r=[];for(let i=1;i5&&Math.abs(o.y-n.y)>5||n.y===o.y&&o.x===a.x&&Math.abs(o.x-n.x)>5&&Math.abs(o.y-a.y)>5)&&(e.push(o),r.push(i))}return{cornerPoints:e,cornerPointPositions:r}}(0,a.K2)(Ut,"extractCornerPoints");var Ht=(0,a.K2)((function(t,e,r){const i=e.x-t.x,n=e.y-t.y,o=r/Math.sqrt(i*i+n*n);return{x:e.x-o*i,y:e.y-o*n}}),"findAdjacentPoint"),Yt=(0,a.K2)((function(t){const{cornerPointPositions:e}=Ut(t),r=[];for(let i=0;i10&&Math.abs(n.y-e.y)>=10){a.Rm.debug("Corner point fixing",Math.abs(n.x-e.x),Math.abs(n.y-e.y));const t=5;d=o.x===s.x?{x:c<0?s.x-t+u:s.x+t-u,y:h<0?s.y-u:s.y+u}:{x:c<0?s.x-u:s.x+u,y:h<0?s.y-t+u:s.y+t-u}}else a.Rm.debug("Corner point skipping fixing",Math.abs(n.x-e.x),Math.abs(n.y-e.y));r.push(d,l)}else r.push(t[i]);return r}),"fixCorners"),Vt=(0,a.K2)((function(t,e,r,n,o,l,c){const{handDrawnSeed:h}=(0,a.D7)();let u=e.points,d=!1;const p=o;var f=l;f.intersect&&p.intersect&&(u=u.slice(1,e.points.length-1),u.unshift(p.intersect(u[0])),a.Rm.debug("Last point APA12",e.start,"--\x3e",e.end,u[u.length-1],f,f.intersect(u[u.length-1])),u.push(f.intersect(u[u.length-1]))),e.toCluster&&(a.Rm.info("to cluster abc88",r.get(e.toCluster)),u=Wt(e.points,r.get(e.toCluster).node),d=!0),e.fromCluster&&(a.Rm.debug("from cluster abc88",r.get(e.fromCluster),JSON.stringify(u,null,2)),u=Wt(u.reverse(),r.get(e.fromCluster).node).reverse(),d=!0);let g=u.filter((t=>!Number.isNaN(t.y)));g=Yt(g);let y=g[g.length-1];if(g.length>1){y=g[g.length-1];const t=g[g.length-2],e=(y.x-t.x)/2,r=(y.y-t.y)/2,i={x:t.x+e,y:t.y+r};g.splice(-1,0,i)}let m=s.qrM;e.curve&&(m=e.curve);const{x,y:b}=(0,i.R)(e),C=(0,s.n8j)().x(x).y(b).curve(m);let k,_;switch(e.thickness){case"normal":default:k="edge-thickness-normal";break;case"thick":k="edge-thickness-thick";break;case"invisible":k="edge-thickness-invisible"}switch(e.pattern){case"solid":default:k+=" edge-pattern-solid";break;case"dotted":k+=" edge-pattern-dotted";break;case"dashed":k+=" edge-pattern-dashed"}let w=C(g);const v=Array.isArray(e.style)?e.style:[e.style];if("handDrawn"===e.look){const r=ut(t);Object.assign([],g);const i=r.path(w,{roughness:.3,seed:h});k+=" transition",_=(0,s.Ltv)(i).select("path").attr("id",e.id).attr("class"," "+k+(e.classes?" "+e.classes:"")).attr("style",v?v.reduce(((t,e)=>t+";"+e),""):"");let n=_.attr("d");_.attr("d",n),t.node().appendChild(_.node())}else _=t.append("path").attr("d",w).attr("id",e.id).attr("class"," "+k+(e.classes?" "+e.classes:"")).attr("style",v?v.reduce(((t,e)=>t+";"+e),""):"");let T="";((0,a.D7)().flowchart.arrowMarkerAbsolute||(0,a.D7)().state.arrowMarkerAbsolute)&&(T=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,T=T.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),a.Rm.info("arrowTypeStart",e.arrowTypeStart),a.Rm.info("arrowTypeEnd",e.arrowTypeEnd),Et(_,e,T,c,n);let S={};return d&&(S.updatedPath=u),S.originalPath=e.points,S}),"insertEdge"),Gt=(0,a.K2)(((t,e,r,i)=>{e.forEach((e=>{Zt[e](t,r,i)}))}),"insertMarkers"),Zt={extension:(0,a.K2)(((t,e,r)=>{a.Rm.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")}),"extension"),composition:(0,a.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"composition"),aggregation:(0,a.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"aggregation"),dependency:(0,a.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"dependency"),lollipop:(0,a.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)}),"lollipop"),point:(0,a.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"point"),circle:(0,a.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"circle"),cross:(0,a.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")}),"cross"),barb:(0,a.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}),"barb")},Xt=Gt,Qt=(0,a.K2)((async(t,e,r)=>{let i;const l=e.useHtmlLabels||(0,a._3)((0,a.D7)().flowchart.htmlLabels);i=r||"node default";const c=t.insert("g").attr("class",i).attr("id",e.domId||e.id),h=c.insert("g").attr("class","label").attr("style",e.labelStyle);let u,d;u=void 0===e.label?"":"string"==typeof e.label?e.label:e.label[0],d=await(0,n.GZ)(h,(0,a.jZ)((0,o.Sm)(u),(0,a.D7)()),{useHtmlLabels:l,width:e.width||(0,a.D7)().flowchart.wrappingWidth,cssClasses:"markdown-node-label",style:e.labelStyle});let p=d.getBBox();const f=e.padding/2;if((0,a._3)((0,a.D7)().flowchart.htmlLabels)){const t=d.children[0],e=(0,s.Ltv)(d),r=t.getElementsByTagName("img");if(r){const t=""===u.replace(/]*>/g,"").trim();await Promise.all([...r].map((e=>new Promise((r=>{function i(){if(e.style.display="flex",e.style.flexDirection="column",t){const t=(0,a.D7)().fontSize?(0,a.D7)().fontSize:window.getComputedStyle(document.body).fontSize,r=5,i=parseInt(t,10)*r+"px";e.style.minWidth=i,e.style.maxWidth=i}else e.style.width="100%";r(e)}(0,a.K2)(i,"setupImage"),setTimeout((()=>{e.complete&&i()})),e.addEventListener("error",i),e.addEventListener("load",i)})))))}p=t.getBoundingClientRect(),e.attr("width",p.width),e.attr("height",p.height)}return l?h.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):h.attr("transform","translate(0, "+-p.height/2+")"),e.centerLabel&&h.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),h.insert("rect",":first-child"),{shapeSvg:c,bbox:p,halfPadding:f,label:h}}),"labelHelper"),Jt=(0,a.K2)(((t,e)=>{const r=e.node().getBBox();t.width=r.width,t.height=r.height}),"updateNodeBounds"),te=(0,a.K2)(((t,e)=>("handDrawn"===t.look?"rough-node":"node")+" "+t.cssClasses+" "+(e||"")),"getNodeClasses");function ee(t,e){return t.intersect(e)}(0,a.K2)(ee,"intersectNode");var re=ee;function ie(t,e,r,i){var n=t.x,o=t.y,a=n-i.x,s=o-i.y,l=Math.sqrt(e*e*s*s+r*r*a*a),c=Math.abs(e*r*a/l);i.x0}(0,a.K2)(se,"intersectLine"),(0,a.K2)(le,"sameSign");var ce=se;function he(t,e,r){let i=t.x,n=t.y,o=[],a=Number.POSITIVE_INFINITY,s=Number.POSITIVE_INFINITY;"function"==typeof e.forEach?e.forEach((function(t){a=Math.min(a,t.x),s=Math.min(s,t.y)})):(a=Math.min(a,e.x),s=Math.min(s,e.y));let l=i-t.width/2-a,c=n-t.height/2-s;for(let i=0;i1&&o.sort((function(t,e){let i=t.x-r.x,n=t.y-r.y,o=Math.sqrt(i*i+n*n),a=e.x-r.x,s=e.y-r.y,l=Math.sqrt(a*a+s*s);return o{const{labelStyles:i,nodeStyles:n}=_t(e);e.labelStyle=i;const{shapeSvg:o,bbox:a}=await Qt(t,e,te(e)),s=Math.max(a.width+2*r.labelPaddingX,e?.width||0),l=Math.max(a.height+2*r.labelPaddingY,e?.height||0),c=-s/2,h=-l/2;let u,{rx:d,ry:p}=e;const{cssStyles:f}=e;if(r?.rx&&r.ry&&(d=r.rx,p=r.ry),"handDrawn"===e.look){const t=ut(o),r=wt(e,{}),i=d||p?t.path(xt(c,h,s,l,d||0),r):t.rectangle(c,h,s,l,r);u=o.insert((()=>i),":first-child"),u.attr("class","basic label-container").attr("style",f)}else u=o.insert("rect",":first-child"),u.attr("class","basic label-container").attr("style",n).attr("rx",d).attr("data-id","abc").attr("data-et","node").attr("ry",p).attr("x",c).attr("y",h).attr("width",s).attr("height",l);return Jt(e,u),e.intersect=function(t){return ue.rect(e,t)},o}),"drawRect"),pe=(0,a.K2)((async(t,e)=>de(t,e,{rx:5,ry:5,classes:"flowchart-node"})),"state"),fe=(0,a.K2)((async(t,e)=>de(t,e,{rx:5,ry:5,classes:"",labelPaddingX:1*(e?.padding||0),labelPaddingY:1*(e?.padding||0)})),"roundedRect"),ge=(0,a.K2)((async(t,e)=>de(t,e,{rx:0,ry:0,classes:"",labelPaddingX:2*(e?.padding||0),labelPaddingY:1*(e?.padding||0)})),"squareRect"),ye=(0,a.K2)(((t,e)=>{const{themeVariables:r}=(0,a.D7)(),{lineColor:i}=r,n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let o;if("handDrawn"===e.look){const t=ut(n).circle(0,0,14,bt(i));o=n.insert((()=>t))}else o=n.insert("circle",":first-child");return o.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Jt(e,o),e.intersect=function(t){return ue.circle(e,7,t)},n}),"stateStart"),me=(0,a.K2)(((t,e)=>{const{themeVariables:r}=(0,a.D7)(),{lineColor:i}=r,n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let o,s;if("handDrawn"===e.look){const t=ut(n),e=t.circle(0,0,14,{...bt(i),roughness:.5}),r=t.circle(0,0,5,{...bt(i),fillStyle:"solid"});o=n.insert((()=>e)),s=n.insert((()=>r))}else s=n.insert("circle",":first-child"),o=n.insert("circle",":first-child"),o.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),s.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10);return Jt(e,o),e.intersect=function(t){return ue.circle(e,7,t)},n}),"stateEnd"),xe=(0,a.K2)(((t,e,r)=>{const{themeVariables:i}=(0,a.D7)(),{lineColor:n}=i,o=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let s=70,l=10;"LR"===r&&(s=10,l=70);const c=-1*s/2,h=-1*l/2;let u;if("handDrawn"===e.look){const t=ut(o).rectangle(c,h,s,l,bt(n));u=o.insert((()=>t))}else u=o.append("rect").attr("x",c).attr("y",h).attr("width",s).attr("height",l).attr("class","fork-join");Jt(e,u);let d=0,p=0,f=10;return e.height&&(d=e.height),e.width&&(p=e.width),e.padding&&(f=e.padding),e.height=d+f/2,e.width=p+f/2,e.intersect=function(t){return ue.rect(e,t)},o}),"forkJoin"),be=(0,a.K2)(((t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{themeVariables:n}=(0,a.D7)(),{lineColor:o}=n,s=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),l=[{x:0,y:14},{x:14,y:0},{x:0,y:-14},{x:-14,y:0}];let c;if("handDrawn"===e.look){const t=ut(s),e=l.map((function(t){return[t.x,t.y]})),r=t.polygon(e,bt(o));c=s.insert((()=>r))}else c=s.insert("polygon",":first-child").attr("points",l.map((function(t){return t.x+","+t.y})).join(" "));return c.attr("class","state-start").attr("r",7).attr("width",28).attr("height",28).attr("style",i),e.width=28,e.height=28,e.intersect=function(t){return ue.circle(e,14,t)},s}),"choice"),Ce=(0,a.K2)((async(t,e)=>{const{themeVariables:r,handDrawnSeed:i}=(0,a.D7)(),{noteBorderColor:n,noteBkgColor:o}=r;e.useHtmlLabels||(e.centerLabel=!0);const{shapeSvg:s,bbox:l}=await Qt(t,e,"node "+e.cssClasses);a.Rm.info("Classes = ",e.cssClasses);const{cssStyles:c}=e;let h;const u=l.width+e.padding,d=l.height+e.padding,p=-u/2,f=-d/2;if("handDrawn"===e.look){const t=ut(s).rectangle(p,f,u,d,{roughness:.7,fill:o,fillWeight:3,seed:i,stroke:n});h=s.insert((()=>t),":first-child"),h.attr("class","basic label-container").attr("style",c)}else h=s.insert("rect",":first-child"),h.attr("rx",e.rx).attr("ry",e.ry).attr("x",p).attr("y",f).attr("width",u).attr("height",d);return Jt(e,h),e.intersect=function(t){return ue.rect(e,t)},s}),"note"),ke=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=o.height+e.padding,s=o.width+a/4+e.padding;let l;const{cssStyles:c}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=xt(-s/2,-a/2,s,a,a/2),o=t.path(i,r);l=n.insert((()=>o),":first-child"),l.attr("class","basic label-container").attr("style",c)}else l=n.insert("rect",":first-child"),l.attr("class","basic label-container").attr("style",i).attr("rx",a/2).attr("ry",a/2).attr("x",-s/2).attr("y",-a/2).attr("width",s).attr("height",a);return Jt(e,l),e.intersect=function(t){return ue.rect(e,t)},n}),"stadium"),_e=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);let n;e.labelStyle=r,n=e.cssClasses?"node "+e.cssClasses:"node default";const o=t.insert("g").attr("class",n).attr("id",e.domId||e.id),l=o.insert("g"),c=o.insert("g").attr("class","label").attr("style",i),h=e.description,u=e.label,d=c.node().appendChild(await mt(u,e.labelStyle,!0,!0));let p={width:0,height:0};if((0,a._3)((0,a.D7)()?.flowchart?.htmlLabels)){const t=d.children[0],e=(0,s.Ltv)(d);p=t.getBoundingClientRect(),e.attr("width",p.width),e.attr("height",p.height)}a.Rm.info("Text 2",h);const f=h||[],g=d.getBBox(),y=c.node().appendChild(await mt(f.join?f.join("
    "):f,e.labelStyle,!0,!0)),m=y.children[0],x=(0,s.Ltv)(y);p=m.getBoundingClientRect(),x.attr("width",p.width),x.attr("height",p.height);const b=(e.padding||0)/2;(0,s.Ltv)(y).attr("transform","translate( "+(p.width>g.width?0:(g.width-p.width)/2)+", "+(g.height+b+5)+")"),(0,s.Ltv)(d).attr("transform","translate( "+(p.width(a.Rm.debug("Rough node insert CXC",i),n)),":first-child"),v=o.insert((()=>(a.Rm.debug("Rough node insert CXC",i),i)),":first-child")}else v=l.insert("rect",":first-child"),T=l.insert("line"),v.attr("class","outer title-state").attr("style",i).attr("x",-p.width/2-b).attr("y",-p.height/2-b).attr("width",p.width+(e.padding||0)).attr("height",p.height+(e.padding||0)),T.attr("class","divider").attr("x1",-p.width/2-b).attr("x2",p.width/2+b).attr("y1",-p.height/2-b+g.height+b).attr("y2",-p.height/2-b+g.height+b);return Jt(e,v),e.intersect=function(t){return ue.rect(e,t)},o}),"rectWithTitle");function we(t,e,r,i){return t.insert("polygon",":first-child").attr("points",i.map((function(t){return t.x+","+t.y})).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}(0,a.K2)(we,"insertPolygonShape");var ve=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=(e?.padding||0)/2,s=o.width+e.padding,l=o.height+e.padding,c=-o.width/2-a,h=-o.height/2-a,u=[{x:0,y:0},{x:s,y:0},{x:s,y:-l},{x:0,y:-l},{x:0,y:0},{x:-8,y:0},{x:s+8,y:0},{x:s+8,y:-l},{x:-8,y:-l},{x:-8,y:0}];if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=t.rectangle(c-8,h,s+16,l,r),o=t.line(c,h,c,h+l,r),a=t.line(c+s,h,c+s,h+l,r);n.insert((()=>o),":first-child"),n.insert((()=>a),":first-child");const u=n.insert((()=>i),":first-child"),{cssStyles:d}=e;u.attr("class","basic label-container").attr("style",d),Jt(e,u)}else{const t=we(n,s,l,u);i&&t.attr("style",i),Jt(e,t)}return e.intersect=function(t){return ue.polygon(e,u,t)},n}),"subroutine"),Te=(0,a.K2)(((t,e,r,i,n,o)=>[`M${t},${e+o}`,`a${n},${o} 0,0,0 ${r},0`,`a${n},${o} 0,0,0 ${-r},0`,`l0,${i}`,`a${n},${o} 0,0,0 ${r},0`,"l0,"+-i].join(" ")),"createCylinderPathD"),Se=(0,a.K2)(((t,e,r,i,n,o)=>[`M${t},${e+o}`,`M${t+r},${e+o}`,`a${n},${o} 0,0,0 ${-r},0`,`l0,${i}`,`a${n},${o} 0,0,0 ${r},0`,"l0,"+-i].join(" ")),"createOuterCylinderPathD"),Ae=(0,a.K2)(((t,e,r,i,n,o)=>[`M${t-r/2},${-i/2}`,`a${n},${o} 0,0,0 ${r},0`].join(" ")),"createInnerCylinderPathD"),Me=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=o.width+e.padding,s=a/2,l=s/(2.5+a/50),c=o.height+l+e.padding;let h;const{cssStyles:u}=e;if("handDrawn"===e.look){const t=ut(n),r=Se(0,0,a,c,s,l),i=Ae(0,l,a,c,s,l),o=t.path(r,wt(e,{})),d=t.path(i,wt(e,{fill:"none"}));h=n.insert((()=>d),":first-child"),h=n.insert((()=>o),":first-child"),h.attr("class","basic label-container"),u&&h.attr("style",u)}else{const t=Te(0,0,a,c,s,l);h=n.insert("path",":first-child").attr("d",t).attr("class","basic label-container").attr("style",u).attr("style",i)}return h.attr("label-offset-y",l),h.attr("transform",`translate(${-a/2}, ${-(c/2+l)})`),Jt(e,h),e.intersect=function(t){const r=ue.rect(e,t),i=r.x-(e.x??0);if(0!=s&&(Math.abs(i)<(e.width??0)/2||Math.abs(i)==(e.width??0)/2&&Math.abs(r.y-(e.y??0))>(e.height??0)/2-l)){let n=l*l*(1-i*i/(s*s));n>0&&(n=Math.sqrt(n)),n=l-n,t.y-(e.y??0)>0&&(n=-n),r.y+=n}return r},n}),"cylinder"),Be=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,halfPadding:s}=await Qt(t,e,te(e)),l=o.width/2+s;let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=t.circle(0,0,2*l,r);c=n.insert((()=>i),":first-child"),c.attr("class","basic label-container").attr("style",h)}else c=n.insert("circle",":first-child").attr("class","basic label-container").attr("style",i).attr("r",l).attr("cx",0).attr("cy",0);return Jt(e,c),e.intersect=function(t){return a.Rm.info("Circle intersect",e,l,t),ue.circle(e,l,t)},n}),"circle"),Le=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,halfPadding:s}=await Qt(t,e,te(e)),l=o.width/2+s+5,c=o.width/2+s;let h;const{cssStyles:u}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{roughness:.2,strokeWidth:2.5}),i=wt(e,{roughness:.2,strokeWidth:1.5}),o=t.circle(0,0,2*l,r),a=t.circle(0,0,2*c,i);h=n.insert("g",":first-child"),h.attr("class",e.cssClasses).attr("style",u),h.node()?.appendChild(o),h.node()?.appendChild(a)}else{h=n.insert("g",":first-child");const t=h.insert("circle",":first-child"),e=h.insert("circle");h.attr("class","basic label-container").attr("style",i),t.attr("class","outer-circle").attr("style",i).attr("r",l).attr("cx",0).attr("cy",0),e.attr("class","inner-circle").attr("style",i).attr("r",c).attr("cx",0).attr("cy",0)}return Jt(e,h),e.intersect=function(t){return a.Rm.info("DoubleCircle intersect",e,l,t),ue.circle(e,l,t)},n}),"doublecircle"),Fe=(0,a.K2)(((t,e,r,i)=>[`M${t-i/2},${e}`,`L${t+r},${e}`,`L${t+r},${e-i}`,`L${t-i/2},${e-i}`,`L${t},${e-i/2}`,"Z"].join(" ")),"createPolygonPathD"),Ee=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=o.width+e.padding,s=o.height+e.padding,l=[{x:-s/2,y:0},{x:a,y:0},{x:a,y:-s},{x:-s/2,y:-s},{x:0,y:-s/2}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=Fe(0,0,a,s),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${s/2})`),h&&c.attr("style",h)}else c=we(n,a,s,l);return i&&c.attr("style",i),e.width=a+s,e.height=s,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"rect_left_inv_arrow"),$e=(0,a.K2)(((t,e,r)=>[`M${t+r/2},${e}`,`L${t+r},${e-r/2}`,`L${t+r/2},${e-r}`,`L${t},${e-r/2}`,"Z"].join(" ")),"createDecisionBoxPathD"),Oe=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=o.width+e.padding+(o.height+e.padding),l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=$e(0,0,s),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-s/2}, ${s/2})`),h&&c.attr("style",h)}else c=we(n,s,s,l);return i&&c.attr("style",i),Jt(e,c),e.intersect=function(t){return a.Rm.debug("APA12 Intersect called SPLIT\npoint:",t,"\nnode:\n",e,"\nres:",ue.polygon(e,l,t)),ue.polygon(e,l,t)},n}),"question"),De=(0,a.K2)(((t,e,r,i,n)=>[`M${t+n},${e}`,`L${t+r-n},${e}`,`L${t+r},${e-i/2}`,`L${t+r-n},${e-i}`,`L${t+n},${e-i}`,`L${t},${e-i/2}`,"Z"].join(" ")),"createHexagonPathD"),Ie=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=o.height+e.padding,s=a/4,l=o.width+2*s+e.padding,c=[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}];let h;const{cssStyles:u}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=De(0,0,l,a,s),o=t.path(i,r);h=n.insert((()=>o),":first-child").attr("transform",`translate(${-l/2}, ${a/2})`),u&&h.attr("style",u)}else h=we(n,l,a,c);return i&&h.attr("style",i),e.width=l,e.height=a,Jt(e,h),e.intersect=function(t){return ue.polygon(e,c,t)},n}),"hexagon"),Re=(0,a.K2)(((t,e,r,i)=>[`M${t-2*i/6},${e}`,`L${t+r-i/6},${e}`,`L${t+r+2*i/6},${e-i}`,`L${t+i/6},${e-i}`,"Z"].join(" ")),"createLeanRightPathD"),Pe=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=o.width+e.padding,s=o.height+e.padding,l=[{x:-2*s/6,y:0},{x:a-s/6,y:0},{x:a+2*s/6,y:-s},{x:s/6,y:-s}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=Re(0,0,a,s),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${s/2})`),h&&c.attr("style",h)}else c=we(n,a,s,l);return i&&c.attr("style",i),e.width=a,e.height=s,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"lean_right"),Ne=(0,a.K2)(((t,e,r,i)=>[`M${t+2*i/6},${e}`,`L${t+r+i/6},${e}`,`L${t+r-2*i/6},${e-i}`,`L${t-i/6},${e-i}`,"Z"].join(" ")),"createLeanLeftPathD"),qe=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=o.width+e.padding,s=o.height+e.padding,l=[{x:2*s/6,y:0},{x:a+s/6,y:0},{x:a-2*s/6,y:-s},{x:-s/6,y:-s}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=Ne(0,0,a,s),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${s/2})`),h&&c.attr("style",h)}else c=we(n,a,s,l);return i&&c.attr("style",i),e.width=a,e.height=s,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"lean_left"),ze=(0,a.K2)(((t,e,r,i)=>[`M${t-2*i/6},${e}`,`L${t+r+2*i/6},${e}`,`L${t+r-i/6},${e-i}`,`L${t+i/6},${e-i}`,"Z"].join(" ")),"createTrapezoidPathD"),Ke=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=o.width+e.padding,s=o.height+e.padding,l=[{x:-2*s/6,y:0},{x:a+2*s/6,y:0},{x:a-s/6,y:-s},{x:s/6,y:-s}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=ze(0,0,a,s),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${s/2})`),h&&c.attr("style",h)}else c=we(n,a,s,l);return i&&c.attr("style",i),e.width=a,e.height=s,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"trapezoid"),je=(0,a.K2)(((t,e,r,i)=>[`M${t+i/6},${e}`,`L${t+r-i/6},${e}`,`L${t+r+2*i/6},${e-i}`,`L${t-2*i/6},${e-i}`,"Z"].join(" ")),"createInvertedTrapezoidPathD"),We=(0,a.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=o.width+e.padding,s=o.height+e.padding,l=[{x:s/6,y:0},{x:a-s/6,y:0},{x:a+2*s/6,y:-s},{x:-2*s/6,y:-s}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=je(0,0,a,s),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${s/2})`),h&&c.attr("style",h)}else c=we(n,a,s,l);return i&&c.attr("style",i),e.width=a,e.height=s,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"inv_trapezoid"),Ue={state:pe,stateStart:ye,stateEnd:me,fork:xe,join:xe,choice:be,note:Ce,roundedRect:fe,rectWithTitle:_e,squareRect:ge,stadium:ke,subroutine:ve,cylinder:Me,circle:Be,doublecircle:Le,odd:Ee,diamond:Oe,hexagon:Ie,lean_right:Pe,lean_left:qe,trapezoid:Ke,inv_trapezoid:We,labelRect:(0,a.K2)((async(t,e)=>{const{shapeSvg:r}=await Qt(t,e,"label"),i=r.insert("rect",":first-child");return i.attr("width",.1).attr("height",.1),r.attr("class","label edgeLabel"),Jt(e,i),e.intersect=function(t){return ue.rect(e,t)},r}),"labelRect")},He=new Map,Ye=(0,a.K2)((async(t,e,r)=>{let i,n;if("rect"===e.shape&&(e.rx&&e.ry?e.shape="roundedRect":e.shape="squareRect"),e.link){let o;"sandbox"===(0,a.D7)().securityLevel?o="_top":e.linkTarget&&(o=e.linkTarget||"_blank"),i=t.insert("svg:a").attr("xlink:href",e.link).attr("target",o),n=await Ue[e.shape](i,e,r)}else n=await Ue[e.shape](t,e,r),i=n;return e.tooltip&&n.attr("title",e.tooltip),He.set(e.id,i),e.haveCallback&&He.get(e.id).attr("class",He.get(e.id).attr("class")+" clickable"),i}),"insertNode"),Ve=(0,a.K2)(((t,e)=>{He.set(e.id,t)}),"setNodeElem"),Ge=(0,a.K2)((()=>{He.clear()}),"clear"),Ze=(0,a.K2)((t=>{const e=He.get(t.id);a.Rm.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");const r=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+r-t.width/2)+", "+(t.y-t.height/2-8)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),r}),"positionNode")},8852:(t,e,r)=>{"use strict";r.d(e,{D:()=>o});var i=r(798),n=r(4852),o=(0,i.K2)((t=>{const{securityLevel:e}=(0,i.D7)();let r=(0,n.Ltv)("body");if("sandbox"===e){const e=(0,n.Ltv)(`#i${t}`),i=e.node()?.contentDocument??document;r=(0,n.Ltv)(i.body)}return r.select(`#${t}`)}),"selectSvgElement")},798:(t,e,r)=>{"use strict";r.d(e,{C0:()=>v,VA:()=>y,K2:()=>g,xA:()=>ht,hH:()=>F,Dl:()=>Nt,IU:()=>ee,Wt:()=>Zt,Y2:()=>zt,a$:()=>Wt,sb:()=>Q,ME:()=>de,UI:()=>G,Ch:()=>S,mW:()=>T,DB:()=>_,_3:()=>Bt,EJ:()=>k,m7:()=>oe,iN:()=>ie,zj:()=>lt,D7:()=>he,Gs:()=>xe,J$:()=>B,ab:()=>se,Q2:()=>at,P$:()=>q,Wi:()=>Pt,H1:()=>yt,Rm:()=>x,QO:()=>Et,Js:()=>me,Xd:()=>A,VJ:()=>qt,cL:()=>ut,$i:()=>Z,jZ:()=>_t,wZ:()=>nt,EI:()=>ne,SV:()=>re,Nk:()=>st,XV:()=>ue,ke:()=>ae,He:()=>b,UU:()=>it,ot:()=>Ut,mj:()=>fe,tM:()=>Gt,H$:()=>W,B6:()=>ot});var i=r(4353),n=r(1931),o=r(8232);const a=(t,e)=>{const r=n.A.parse(t),i={};for(const t in e)e[t]&&(i[t]=r[t]+e[t]);return(0,o.A)(t,i)};var s=r(5582);const l=(t,e=100)=>{const r=n.A.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,((t,e,r=50)=>{const{r:i,g:o,b:a,a:l}=n.A.parse(t),{r:c,g:h,b:u,a:d}=n.A.parse(e),p=r/100,f=2*p-1,g=l-d,y=((f*g==-1?f:(f+g)/(1+f*g))+1)/2,m=1-y,x=i*y+c*m,b=o*y+h*m,C=a*y+u*m,k=l*p+d*(1-p);return(0,s.A)(x,b,C,k)})(r,t,e)};var c,h=r(5263),u=r(8041),d=r(5097),p=r(2838),f=Object.defineProperty,g=(t,e)=>f(t,"name",{value:e,configurable:!0}),y=(t,e)=>{for(var r in e)f(t,r,{get:e[r],enumerable:!0})},m={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},x={trace:g(((...t)=>{}),"trace"),debug:g(((...t)=>{}),"debug"),info:g(((...t)=>{}),"info"),warn:g(((...t)=>{}),"warn"),error:g(((...t)=>{}),"error"),fatal:g(((...t)=>{}),"fatal")},b=g((function(t="fatal"){let e=m.fatal;"string"==typeof t?t.toLowerCase()in m&&(e=m[t]):"number"==typeof t&&(e=t),x.trace=()=>{},x.debug=()=>{},x.info=()=>{},x.warn=()=>{},x.error=()=>{},x.fatal=()=>{},e<=m.fatal&&(x.fatal=console.error?console.error.bind(console,C("FATAL"),"color: orange"):console.log.bind(console,"",C("FATAL"))),e<=m.error&&(x.error=console.error?console.error.bind(console,C("ERROR"),"color: orange"):console.log.bind(console,"",C("ERROR"))),e<=m.warn&&(x.warn=console.warn?console.warn.bind(console,C("WARN"),"color: orange"):console.log.bind(console,"",C("WARN"))),e<=m.info&&(x.info=console.info?console.info.bind(console,C("INFO"),"color: lightblue"):console.log.bind(console,"",C("INFO"))),e<=m.debug&&(x.debug=console.debug?console.debug.bind(console,C("DEBUG"),"color: lightgreen"):console.log.bind(console,"",C("DEBUG"))),e<=m.trace&&(x.trace=console.debug?console.debug.bind(console,C("TRACE"),"color: lightgreen"):console.log.bind(console,"",C("TRACE")))}),"setLogLevel"),C=g((t=>`%c${i().format("ss.SSS")} : ${t} : `),"format"),k=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,_=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,w=/\s*%%.*\n/gm,v=class extends Error{static{g(this,"UnknownDiagramError")}constructor(t){super(t),this.name="UnknownDiagramError"}},T={},S=g((function(t,e){t=t.replace(k,"").replace(_,"").replace(w,"\n");for(const[r,{detector:i}]of Object.entries(T))if(i(t,e))return r;throw new v(`No diagram type detected matching given configuration for text: ${t}`)}),"detectType"),A=g(((...t)=>{for(const{id:e,detector:r,loader:i}of t)M(e,r,i)}),"registerLazyLoadedDiagrams"),M=g(((t,e,r)=>{T[t]&&x.warn(`Detector with key ${t} already exists. Overwriting.`),T[t]={detector:e,loader:r},x.debug(`Detector with key ${t} added${r?" with loader":""}`)}),"addDetector"),B=g((t=>T[t].loader),"getDiagramLoader"),L=g(((t,e,{depth:r=2,clobber:i=!1}={})=>{const n={depth:r,clobber:i};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach((e=>L(t,e,n))),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach((e=>{t.includes(e)||t.push(e)})),t):void 0===t||r<=0?null!=t&&"object"==typeof t&&"object"==typeof e?Object.assign(t,e):e:(void 0!==e&&"object"==typeof t&&"object"==typeof e&&Object.keys(e).forEach((n=>{"object"!=typeof e[n]||void 0!==t[n]&&"object"!=typeof t[n]?(i||"object"!=typeof t[n]&&"object"!=typeof e[n])&&(t[n]=e[n]):(void 0===t[n]&&(t[n]=Array.isArray(e[n])?[]:{}),t[n]=L(t[n],e[n],{depth:r-1,clobber:i}))})),t)}),"assignWithDepth"),F=L,E="#ffffff",$="#f2f2f2",O=g(((t,e)=>a(t,e?{s:-40,l:10}:{s:-40,l:-10})),"mkBorder"),D=class{static{g(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||a(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||a(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||O(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||O(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||O(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||O(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||l(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||l(this.tertiaryColor),this.lineColor=this.lineColor||l(this.background),this.arrowheadColor=this.arrowheadColor||l(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?(0,h.A)(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||(0,h.A)(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||l(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||(0,u.A)(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||a(this.primaryColor,{h:30}),this.cScale4=this.cScale4||a(this.primaryColor,{h:60}),this.cScale5=this.cScale5||a(this.primaryColor,{h:90}),this.cScale6=this.cScale6||a(this.primaryColor,{h:120}),this.cScale7=this.cScale7||a(this.primaryColor,{h:150}),this.cScale8=this.cScale8||a(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||a(this.primaryColor,{h:270}),this.cScale10=this.cScale10||a(this.primaryColor,{h:300}),this.cScale11=this.cScale11||a(this.primaryColor,{h:330}),this.darkMode)for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},I=g((t=>{const e=new D;return e.calculate(t),e}),"getThemeVariables"),R=class{static{g(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=(0,u.A)(this.primaryColor,16),this.tertiaryColor=a(this.primaryColor,{h:-160}),this.primaryBorderColor=l(this.background),this.secondaryBorderColor=O(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=O(this.tertiaryColor,this.darkMode),this.primaryTextColor=l(this.primaryColor),this.secondaryTextColor=l(this.secondaryColor),this.tertiaryTextColor=l(this.tertiaryColor),this.lineColor=l(this.background),this.textColor=l(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=(0,u.A)(l("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=(0,s.A)(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=(0,h.A)("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=(0,h.A)(this.sectionBkgColor,10),this.taskBorderColor=(0,s.A)(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=(0,s.A)(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=(0,u.A)(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=(0,u.A)(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=(0,u.A)(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=a(this.primaryColor,{h:64}),this.fillType3=a(this.secondaryColor,{h:64}),this.fillType4=a(this.primaryColor,{h:-64}),this.fillType5=a(this.secondaryColor,{h:-64}),this.fillType6=a(this.primaryColor,{h:128}),this.fillType7=a(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||a(this.primaryColor,{h:30}),this.cScale4=this.cScale4||a(this.primaryColor,{h:60}),this.cScale5=this.cScale5||a(this.primaryColor,{h:90}),this.cScale6=this.cScale6||a(this.primaryColor,{h:120}),this.cScale7=this.cScale7||a(this.primaryColor,{h:150}),this.cScale8=this.cScale8||a(this.primaryColor,{h:210}),this.cScale9=this.cScale9||a(this.primaryColor,{h:270}),this.cScale10=this.cScale10||a(this.primaryColor,{h:300}),this.cScale11=this.cScale11||a(this.primaryColor,{h:330});for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},P=g((t=>{const e=new R;return e.calculate(t),e}),"getThemeVariables"),N=class{static{g(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=a(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=a(this.primaryColor,{h:-160}),this.primaryBorderColor=O(this.primaryColor,this.darkMode),this.secondaryBorderColor=O(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=O(this.tertiaryColor,this.darkMode),this.primaryTextColor=l(this.primaryColor),this.secondaryTextColor=l(this.secondaryColor),this.tertiaryTextColor=l(this.tertiaryColor),this.lineColor=l(this.background),this.textColor=l(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.sectionBkgColor=(0,s.A)(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||a(this.primaryColor,{h:30}),this.cScale4=this.cScale4||a(this.primaryColor,{h:60}),this.cScale5=this.cScale5||a(this.primaryColor,{h:90}),this.cScale6=this.cScale6||a(this.primaryColor,{h:120}),this.cScale7=this.cScale7||a(this.primaryColor,{h:150}),this.cScale8=this.cScale8||a(this.primaryColor,{h:210}),this.cScale9=this.cScale9||a(this.primaryColor,{h:270}),this.cScale10=this.cScale10||a(this.primaryColor,{h:300}),this.cScale11=this.cScale11||a(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||(0,h.A)(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||(0,h.A)(this.tertiaryColor,40);for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},q=g((t=>{const e=new N;return e.calculate(t),e}),"getThemeVariables"),z=class{static{g(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=(0,u.A)("#cde498",10),this.primaryBorderColor=O(this.primaryColor,this.darkMode),this.secondaryBorderColor=O(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=O(this.tertiaryColor,this.darkMode),this.primaryTextColor=l(this.primaryColor),this.secondaryTextColor=l(this.secondaryColor),this.tertiaryTextColor=l(this.primaryColor),this.lineColor=l(this.background),this.textColor=l(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=(0,h.A)(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||a(this.primaryColor,{h:30}),this.cScale4=this.cScale4||a(this.primaryColor,{h:60}),this.cScale5=this.cScale5||a(this.primaryColor,{h:90}),this.cScale6=this.cScale6||a(this.primaryColor,{h:120}),this.cScale7=this.cScale7||a(this.primaryColor,{h:150}),this.cScale8=this.cScale8||a(this.primaryColor,{h:210}),this.cScale9=this.cScale9||a(this.primaryColor,{h:270}),this.cScale10=this.cScale10||a(this.primaryColor,{h:300}),this.cScale11=this.cScale11||a(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||(0,h.A)(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||(0,h.A)(this.tertiaryColor,40);for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},K=g((t=>{const e=new z;return e.calculate(t),e}),"getThemeVariables"),j=class{static{g(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=(0,u.A)(this.contrast,55),this.background="#ffffff",this.tertiaryColor=a(this.primaryColor,{h:-160}),this.primaryBorderColor=O(this.primaryColor,this.darkMode),this.secondaryBorderColor=O(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=O(this.tertiaryColor,this.darkMode),this.primaryTextColor=l(this.primaryColor),this.secondaryTextColor=l(this.secondaryColor),this.tertiaryTextColor=l(this.tertiaryColor),this.lineColor=l(this.background),this.textColor=l(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=(0,u.A)(this.contrast,55),this.border2=this.contrast,this.actorBorder=(0,u.A)(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},W={base:{getThemeVariables:I},dark:{getThemeVariables:P},default:{getThemeVariables:q},forest:{getThemeVariables:K},neutral:{getThemeVariables:g((t=>{const e=new j;return e.calculate(t),e}),"getThemeVariables")}},U={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1},H={...U,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"SIMPLE"},themeCSS:void 0,themeVariables:W.default.getThemeVariables(),sequence:{...U.sequence,messageFont:g((function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}),"messageFont"),noteFont:g((function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}}),"noteFont"),actorFont:g((function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}}),"actorFont")},gantt:{...U.gantt,tickInterval:void 0,useWidth:void 0},c4:{...U.c4,useWidth:void 0,personFont:g((function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}}),"personFont"),external_personFont:g((function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}}),"external_personFont"),systemFont:g((function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}}),"systemFont"),external_systemFont:g((function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}}),"external_systemFont"),system_dbFont:g((function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}}),"system_dbFont"),external_system_dbFont:g((function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}}),"external_system_dbFont"),system_queueFont:g((function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}}),"system_queueFont"),external_system_queueFont:g((function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}}),"external_system_queueFont"),containerFont:g((function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}}),"containerFont"),external_containerFont:g((function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}}),"external_containerFont"),container_dbFont:g((function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}}),"container_dbFont"),external_container_dbFont:g((function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}}),"external_container_dbFont"),container_queueFont:g((function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}}),"container_queueFont"),external_container_queueFont:g((function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}}),"external_container_queueFont"),componentFont:g((function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}}),"componentFont"),external_componentFont:g((function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}}),"external_componentFont"),component_dbFont:g((function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}}),"component_dbFont"),external_component_dbFont:g((function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}}),"external_component_dbFont"),component_queueFont:g((function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}}),"component_queueFont"),external_component_queueFont:g((function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}}),"external_component_queueFont"),boundaryFont:g((function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}}),"boundaryFont"),messageFont:g((function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}),"messageFont")},pie:{...U.pie,useWidth:984},xyChart:{...U.xyChart,useWidth:void 0},requirement:{...U.requirement,useWidth:void 0},packet:{...U.packet}},Y=g(((t,e="")=>Object.keys(t).reduce(((r,i)=>Array.isArray(t[i])?r:"object"==typeof t[i]&&null!==t[i]?[...r,e+i,...Y(t[i],"")]:[...r,e+i]),[])),"keyify"),V=new Set(Y(H,"")),G=H,Z=g((t=>{if(x.debug("sanitizeDirective called with",t),"object"==typeof t&&null!=t)if(Array.isArray(t))t.forEach((t=>Z(t)));else{for(const e of Object.keys(t)){if(x.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!V.has(e)||null==t[e]){x.debug("sanitize deleting key: ",e),delete t[e];continue}if("object"==typeof t[e]){x.debug("sanitizing object",e),Z(t[e]);continue}const r=["themeCSS","fontFamily","altFontFamily"];for(const i of r)e.includes(i)&&(x.debug("sanitizing css option",e),t[e]=X(t[e]))}if(t.themeVariables)for(const e of Object.keys(t.themeVariables)){const r=t.themeVariables[e];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}x.debug("After sanitization",t)}}),"sanitizeDirective"),X=g((t=>{let e=0,r=0;for(const i of t){if(e{let r=F({},t),i={};for(const t of e)ct(t),i=F(i,t);if(r=F(r,i),i.theme&&i.theme in W){const t=F({},c),e=F(t.themeVariables||{},i.themeVariables);r.theme&&r.theme in W&&(r.themeVariables=W[r.theme].getThemeVariables(e))}return gt(et=r),et}),"updateCurrentConfig"),it=g((t=>(J=F({},Q),J=F(J,t),t.theme&&W[t.theme]&&(J.themeVariables=W[t.theme].getThemeVariables(t.themeVariables)),rt(J,tt),J)),"setSiteConfig"),nt=g((t=>{c=F({},t)}),"saveConfigFromInitialize"),ot=g((t=>(J=F(J,t),rt(J,tt),J)),"updateSiteConfig"),at=g((()=>F({},J)),"getSiteConfig"),st=g((t=>(gt(t),F(et,t),lt())),"setConfig"),lt=g((()=>F({},et)),"getConfig"),ct=g((t=>{t&&(["secure",...J.secure??[]].forEach((e=>{Object.hasOwn(t,e)&&(x.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])})),Object.keys(t).forEach((e=>{e.startsWith("__")&&delete t[e]})),Object.keys(t).forEach((e=>{"string"==typeof t[e]&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],"object"==typeof t[e]&&ct(t[e])})))}),"sanitize"),ht=g((t=>{Z(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables={...t.themeVariables,fontFamily:t.fontFamily}),tt.push(t),rt(J,tt)}),"addDirective"),ut=g(((t=J)=>{rt(t,tt=[])}),"reset"),dt={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},pt={},ft=g((t=>{pt[t]||(x.warn(dt[t]),pt[t]=!0)}),"issueWarning"),gt=g((t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&ft("LAZY_LOAD_DEPRECATED")}),"checkConfig"),yt=//gi,mt=g((t=>t?At(t).replace(/\\n/g,"#br#").split("#br#"):[""]),"getRows"),xt=(()=>{let t=!1;return()=>{t||(bt(),t=!0)}})();function bt(){const t="data-temp-href-target";p.addHook("beforeSanitizeAttributes",(e=>{"A"===e.tagName&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")})),p.addHook("afterSanitizeAttributes",(e=>{"A"===e.tagName&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),"_blank"===e.getAttribute("target")&&e.setAttribute("rel","noopener"))}))}g(bt,"setupDompurifyHooks");var Ct=g((t=>(xt(),p.sanitize(t))),"removeScript"),kt=g(((t,e)=>{if(!1!==e.flowchart?.htmlLabels){const r=e.securityLevel;"antiscript"===r||"strict"===r?t=Ct(t):"loose"!==r&&(t=(t=(t=At(t)).replace(//g,">")).replace(/=/g,"="),t=St(t))}return t}),"sanitizeMore"),_t=g(((t,e)=>t?t=e.dompurifyConfig?p.sanitize(kt(t,e),e.dompurifyConfig).toString():p.sanitize(kt(t,e),{FORBID_TAGS:["style"]}).toString():t),"sanitizeText"),wt=g(((t,e)=>"string"==typeof t?_t(t,e):t.flat().map((t=>_t(t,e)))),"sanitizeTextOrArray"),vt=g((t=>yt.test(t)),"hasBreaks"),Tt=g((t=>t.split(yt)),"splitBreaks"),St=g((t=>t.replace(/#br#/g,"
    ")),"placeholderToBreak"),At=g((t=>t.replace(yt,"#br#")),"breakToPlaceholder"),Mt=g((t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=e.replaceAll(/\(/g,"\\("),e=e.replaceAll(/\)/g,"\\)")),e}),"getUrl"),Bt=g((t=>!1!==t&&!["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),Lt=g((function(...t){const e=t.filter((t=>!isNaN(t)));return Math.max(...e)}),"getMax"),Ft=g((function(...t){const e=t.filter((t=>!isNaN(t)));return Math.min(...e)}),"getMin"),Et=g((function(t){const e=t.split(/(,)/),r=[];for(let t=0;t0&&t+1Math.max(0,t.split(e).length-1)),"countOccurrence"),Ot=g(((t,e)=>{const r=$t(t,"~"),i=$t(e,"~");return 1===r&&1===i}),"shouldCombineSets"),Dt=g((t=>{const e=$t(t,"~");let r=!1;if(e<=1)return t;e%2!=0&&t.startsWith("~")&&(t=t.substring(1),r=!0);const i=[...t];let n=i.indexOf("~"),o=i.lastIndexOf("~");for(;-1!==n&&-1!==o&&n!==o;)i[n]="<",i[o]=">",n=i.indexOf("~"),o=i.lastIndexOf("~");return r&&i.unshift("~"),i.join("")}),"processSet"),It=g((()=>void 0!==window.MathMLElement),"isMathMLSupported"),Rt=/\$\$(.*)\$\$/g,Pt=g((t=>(t.match(Rt)?.length??0)>0),"hasKatex"),Nt=g((async(t,e)=>{t=await qt(t,e);const r=document.createElement("div");r.innerHTML=t,r.id="katex-temp",r.style.visibility="hidden",r.style.position="absolute",r.style.top="0";const i=document.querySelector("body");i?.insertAdjacentElement("beforeend",r);const n={width:r.clientWidth,height:r.clientHeight};return r.remove(),n}),"calculateMathMLDimensions"),qt=g((async(t,e)=>{if(!Pt(t))return t;if(!(It()||e.legacyMathML||e.forceLegacyMathML))return t.replace(Rt,"MathML is unsupported in this environment.");const{default:i}=await r.e(130).then(r.bind(r,2130)),n=e.forceLegacyMathML||!It()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(yt).map((t=>Pt(t)?`
    ${t}
    `:`
    ${t}
    `)).join("").replace(Rt,((t,e)=>i.renderToString(e,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,"")))}),"renderKatex"),zt={getRows:mt,sanitizeText:_t,sanitizeTextOrArray:wt,hasBreaks:vt,splitBreaks:Tt,lineBreakRegex:yt,removeScript:Ct,getUrl:Mt,evaluate:Bt,getMax:Lt,getMin:Ft},Kt=g((function(t,e){for(let r of e)t.attr(r[0],r[1])}),"d3Attrs"),jt=g((function(t,e,r){let i=new Map;return r?(i.set("width","100%"),i.set("style",`max-width: ${e}px;`)):(i.set("height",t),i.set("width",e)),i}),"calculateSvgSizeAttrs"),Wt=g((function(t,e,r,i){const n=jt(e,r,i);Kt(t,n)}),"configureSvgSize"),Ut=g((function(t,e,r,i){const n=e.node().getBBox(),o=n.width,a=n.height;x.info(`SVG bounds: ${o}x${a}`,n);let s=0,l=0;x.info(`Graph bounds: ${s}x${l}`,t),s=o+2*r,l=a+2*r,x.info(`Calculated bounds: ${s}x${l}`),Wt(e,l,s,i);const c=`${n.x-r} ${n.y-r} ${n.width+2*r} ${n.height+2*r}`;e.attr("viewBox",c)}),"setupGraphViewbox"),Ht={},Yt=g(((t,e,r)=>{let i="";return t in Ht&&Ht[t]?i=Ht[t](r):x.warn(`No theme found for ${t}`),` & {\n font-family: ${r.fontFamily};\n font-size: ${r.fontSize};\n fill: ${r.textColor}\n }\n\n /* Classes common for multiple diagrams */\n\n & .error-icon {\n fill: ${r.errorBkgColor};\n }\n & .error-text {\n fill: ${r.errorTextColor};\n stroke: ${r.errorTextColor};\n }\n\n & .edge-thickness-normal {\n stroke-width: 1px;\n }\n & .edge-thickness-thick {\n stroke-width: 3.5px\n }\n & .edge-pattern-solid {\n stroke-dasharray: 0;\n }\n & .edge-thickness-invisible {\n stroke-width: 0;\n fill: none;\n }\n & .edge-pattern-dashed{\n stroke-dasharray: 3;\n }\n .edge-pattern-dotted {\n stroke-dasharray: 2;\n }\n\n & .marker {\n fill: ${r.lineColor};\n stroke: ${r.lineColor};\n }\n & .marker.cross {\n stroke: ${r.lineColor};\n }\n\n & svg {\n font-family: ${r.fontFamily};\n font-size: ${r.fontSize};\n }\n & p {\n margin: 0\n }\n\n ${i}\n\n ${e}\n`}),"getStyles"),Vt=g(((t,e)=>{void 0!==e&&(Ht[t]=e)}),"addStylesForDiagram"),Gt=Yt,Zt={};y(Zt,{clear:()=>ee,getAccDescription:()=>oe,getAccTitle:()=>ie,getDiagramTitle:()=>se,setAccDescription:()=>ne,setAccTitle:()=>re,setDiagramTitle:()=>ae});var Xt="",Qt="",Jt="",te=g((t=>_t(t,lt())),"sanitizeText"),ee=g((()=>{Xt="",Jt="",Qt=""}),"clear"),re=g((t=>{Xt=te(t).replace(/^\s+/g,"")}),"setAccTitle"),ie=g((()=>Xt),"getAccTitle"),ne=g((t=>{Jt=te(t).replace(/\n\s+/g,"\n")}),"setAccDescription"),oe=g((()=>Jt),"getAccDescription"),ae=g((t=>{Qt=te(t)}),"setDiagramTitle"),se=g((()=>Qt),"getDiagramTitle"),le=x,ce=b,he=lt,ue=st,de=Q,pe=g((t=>_t(t,he())),"sanitizeText"),fe=Ut,ge=g((()=>Zt),"getCommonDb"),ye={},me=g(((t,e,r)=>{ye[t]&&le.warn(`Diagram with id ${t} already registered. Overwriting.`),ye[t]=e,r&&M(t,r),Vt(t,e.styles),e.injectUtils?.(le,ce,he,pe,fe,ge(),(()=>{}))}),"registerDiagram"),xe=g((t=>{if(t in ye)return ye[t];throw new be(t)}),"getDiagram"),be=class extends Error{static{g(this,"DiagramNotFoundError")}constructor(t){super(`Diagram ${t} not found.`)}}},8252:(t,e,r)=>{"use strict";r.d(e,{W6:()=>St,GZ:()=>Lt,hE:()=>Bt});var i=r(7323),n=r(798),o=r(4852);let a={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};function s(t){a=t}const l=/[&<>"']/,c=new RegExp(l.source,"g"),h=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,u=new RegExp(h.source,"g"),d={"&":"&","<":"<",">":">",'"':""","'":"'"},p=t=>d[t];function f(t,e){if(e){if(l.test(t))return t.replace(c,p)}else if(h.test(t))return t.replace(u,p);return t}const g=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi,y=/(^|[^\[])\^/g;function m(t,e){let r="string"==typeof t?t:t.source;e=e||"";const i={replace:(t,e)=>{let n="string"==typeof e?e:e.source;return n=n.replace(y,"$1"),r=r.replace(t,n),i},getRegex:()=>new RegExp(r,e)};return i}function x(t){try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}const b={exec:()=>null};function C(t,e){const r=t.replace(/\|/g,((t,e,r)=>{let i=!1,n=e;for(;--n>=0&&"\\"===r[n];)i=!i;return i?"|":" |"})).split(/ \|/);let i=0;if(r[0].trim()||r.shift(),r.length>0&&!r[r.length-1].trim()&&r.pop(),e)if(r.length>e)r.splice(e);else for(;r.length0)return{type:"space",raw:e[0]}}code(t){const e=this.rules.block.code.exec(t);if(e){const t=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:k(t,"\n")}}}fences(t){const e=this.rules.block.fences.exec(t);if(e){const t=e[0],r=function(t,e){const r=t.match(/^(\s+)(?:```)/);if(null===r)return e;const i=r[1];return e.split("\n").map((t=>{const e=t.match(/^\s+/);if(null===e)return t;const[r]=e;return r.length>=i.length?t.slice(i.length):t})).join("\n")}(t,e[3]||"");return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:r}}}heading(t){const e=this.rules.block.heading.exec(t);if(e){let t=e[2].trim();if(/#$/.test(t)){const e=k(t,"#");this.options.pedantic?t=e.trim():e&&!/ $/.test(e)||(t=e.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(t){const e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:k(e[0],"\n")}}blockquote(t){const e=this.rules.block.blockquote.exec(t);if(e){let t=k(e[0],"\n").split("\n"),r="",i="";const n=[];for(;t.length>0;){let e=!1;const o=[];let a;for(a=0;a/.test(t[a]))o.push(t[a]),e=!0;else{if(e)break;o.push(t[a])}t=t.slice(a);const s=o.join("\n"),l=s.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,"\n $1").replace(/^ {0,3}>[ \t]?/gm,"");r=r?`${r}\n${s}`:s,i=i?`${i}\n${l}`:l;const c=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(l,n,!0),this.lexer.state.top=c,0===t.length)break;const h=n[n.length-1];if("code"===h?.type)break;if("blockquote"===h?.type){const e=h,o=e.raw+"\n"+t.join("\n"),a=this.blockquote(o);n[n.length-1]=a,r=r.substring(0,r.length-e.raw.length)+a.raw,i=i.substring(0,i.length-e.text.length)+a.text;break}if("list"!==h?.type);else{const e=h,o=e.raw+"\n"+t.join("\n"),a=this.list(o);n[n.length-1]=a,r=r.substring(0,r.length-h.raw.length)+a.raw,i=i.substring(0,i.length-e.raw.length)+a.raw,t=o.substring(n[n.length-1].raw.length).split("\n")}}return{type:"blockquote",raw:r,tokens:n,text:i}}}list(t){let e=this.rules.block.list.exec(t);if(e){let r=e[1].trim();const i=r.length>1,n={type:"list",raw:"",ordered:i,start:i?+r.slice(0,-1):"",loose:!1,items:[]};r=i?`\\d{1,9}\\${r.slice(-1)}`:`\\${r}`,this.options.pedantic&&(r=i?r:"[*+-]");const o=new RegExp(`^( {0,3}${r})((?:[\t ][^\\n]*)?(?:\\n|$))`);let a=!1;for(;t;){let r=!1,i="",s="";if(!(e=o.exec(t)))break;if(this.rules.block.hr.test(t))break;i=e[0],t=t.substring(i.length);let l=e[2].split("\n",1)[0].replace(/^\t+/,(t=>" ".repeat(3*t.length))),c=t.split("\n",1)[0],h=!l.trim(),u=0;if(this.options.pedantic?(u=2,s=l.trimStart()):h?u=e[1].length+1:(u=e[2].search(/[^ ]/),u=u>4?1:u,s=l.slice(u),u+=e[1].length),h&&/^ *$/.test(c)&&(i+=c+"\n",t=t.substring(c.length+1),r=!0),!r){const e=new RegExp(`^ {0,${Math.min(3,u-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),r=new RegExp(`^ {0,${Math.min(3,u-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),n=new RegExp(`^ {0,${Math.min(3,u-1)}}(?:\`\`\`|~~~)`),o=new RegExp(`^ {0,${Math.min(3,u-1)}}#`);for(;t;){const a=t.split("\n",1)[0];if(c=a,this.options.pedantic&&(c=c.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),n.test(c))break;if(o.test(c))break;if(e.test(c))break;if(r.test(t))break;if(c.search(/[^ ]/)>=u||!c.trim())s+="\n"+c.slice(u);else{if(h)break;if(l.search(/[^ ]/)>=4)break;if(n.test(l))break;if(o.test(l))break;if(r.test(l))break;s+="\n"+c}h||c.trim()||(h=!0),i+=a+"\n",t=t.substring(a.length+1),l=c.slice(u)}}n.loose||(a?n.loose=!0:/\n *\n *$/.test(i)&&(a=!0));let d,p=null;this.options.gfm&&(p=/^\[[ xX]\] /.exec(s),p&&(d="[ ] "!==p[0],s=s.replace(/^\[[ xX]\] +/,""))),n.items.push({type:"list_item",raw:i,task:!!p,checked:d,loose:!1,text:s,tokens:[]}),n.raw+=i}n.items[n.items.length-1].raw=n.items[n.items.length-1].raw.trimEnd(),n.items[n.items.length-1].text=n.items[n.items.length-1].text.trimEnd(),n.raw=n.raw.trimEnd();for(let t=0;t"space"===t.type)),r=e.length>0&&e.some((t=>/\n.*\n/.test(t.raw)));n.loose=r}if(n.loose)for(let t=0;t$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:r,title:i}}}table(t){const e=this.rules.block.table.exec(t);if(!e)return;if(!/[:|]/.test(e[2]))return;const r=C(e[1]),i=e[2].replace(/^\||\| *$/g,"").split("|"),n=e[3]&&e[3].trim()?e[3].replace(/\n[ \t]*$/,"").split("\n"):[],o={type:"table",raw:e[0],header:[],align:[],rows:[]};if(r.length===i.length){for(const t of i)/^ *-+: *$/.test(t)?o.align.push("right"):/^ *:-+: *$/.test(t)?o.align.push("center"):/^ *:-+ *$/.test(t)?o.align.push("left"):o.align.push(null);for(let t=0;t({text:t,tokens:this.lexer.inline(t),header:!1,align:o.align[e]}))));return o}}lheading(t){const e=this.rules.block.lheading.exec(t);if(e)return{type:"heading",raw:e[0],depth:"="===e[2].charAt(0)?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(t){const e=this.rules.block.paragraph.exec(t);if(e){const t="\n"===e[1].charAt(e[1].length-1)?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(t){const e=this.rules.block.text.exec(t);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(t){const e=this.rules.inline.escape.exec(t);if(e)return{type:"escape",raw:e[0],text:f(e[1])}}tag(t){const e=this.rules.inline.tag.exec(t);if(e)return!this.lexer.state.inLink&&/^
    /i.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(t){const e=this.rules.inline.link.exec(t);if(e){const t=e[2].trim();if(!this.options.pedantic&&/^$/.test(t))return;const e=k(t.slice(0,-1),"\\");if((t.length-e.length)%2==0)return}else{const t=function(t,e){if(-1===t.indexOf(e[1]))return-1;let r=0;for(let i=0;i-1){const r=(0===e[0].indexOf("!")?5:4)+e[1].length+t;e[2]=e[2].substring(0,t),e[0]=e[0].substring(0,r).trim(),e[3]=""}}let r=e[2],i="";if(this.options.pedantic){const t=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);t&&(r=t[1],i=t[3])}else i=e[3]?e[3].slice(1,-1):"";return r=r.trim(),/^$/.test(t)?r.slice(1):r.slice(1,-1)),_(e,{href:r?r.replace(this.rules.inline.anyPunctuation,"$1"):r,title:i?i.replace(this.rules.inline.anyPunctuation,"$1"):i},e[0],this.lexer)}}reflink(t,e){let r;if((r=this.rules.inline.reflink.exec(t))||(r=this.rules.inline.nolink.exec(t))){const t=e[(r[2]||r[1]).replace(/\s+/g," ").toLowerCase()];if(!t){const t=r[0].charAt(0);return{type:"text",raw:t,text:t}}return _(r,t,r[0],this.lexer)}}emStrong(t,e,r=""){let i=this.rules.inline.emStrongLDelim.exec(t);if(i&&(!i[3]||!r.match(/[\p{L}\p{N}]/u))&&(!i[1]&&!i[2]||!r||this.rules.inline.punctuation.exec(r))){const r=[...i[0]].length-1;let n,o,a=r,s=0;const l="*"===i[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(l.lastIndex=0,e=e.slice(-1*t.length+r);null!=(i=l.exec(e));){if(n=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!n)continue;if(o=[...n].length,i[3]||i[4]){a+=o;continue}if((i[5]||i[6])&&r%3&&!((r+o)%3)){s+=o;continue}if(a-=o,a>0)continue;o=Math.min(o,o+a+s);const e=[...i[0]][0].length,l=t.slice(0,r+i.index+e+o);if(Math.min(r,o)%2){const t=l.slice(1,-1);return{type:"em",raw:l,text:t,tokens:this.lexer.inlineTokens(t)}}const c=l.slice(2,-2);return{type:"strong",raw:l,text:c,tokens:this.lexer.inlineTokens(c)}}}}codespan(t){const e=this.rules.inline.code.exec(t);if(e){let t=e[2].replace(/\n/g," ");const r=/[^ ]/.test(t),i=/^ /.test(t)&&/ $/.test(t);return r&&i&&(t=t.substring(1,t.length-1)),t=f(t,!0),{type:"codespan",raw:e[0],text:t}}}br(t){const e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}del(t){const e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(t){const e=this.rules.inline.autolink.exec(t);if(e){let t,r;return"@"===e[2]?(t=f(e[1]),r="mailto:"+t):(t=f(e[1]),r=t),{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}url(t){let e;if(e=this.rules.inline.url.exec(t)){let t,r;if("@"===e[2])t=f(e[0]),r="mailto:"+t;else{let i;do{i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??""}while(i!==e[0]);t=f(e[0]),r="www."===e[1]?"http://"+e[0]:e[0]}return{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(t){const e=this.rules.inline.text.exec(t);if(e){let t;return t=this.lexer.state.inRawBlock?e[0]:f(e[0]),{type:"text",raw:e[0],text:t}}}}const v=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,T=/(?:[*+-]|\d{1,9}[.)])/,S=m(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,T).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),A=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,M=/(?!\s*\])(?:\\.|[^\[\]\\])+/,B=m(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",M).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),L=m(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,T).getRegex(),F="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",E=/|$))/,$=m("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",E).replace("tag",F).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),O=m(A).replace("hr",v).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",F).getRegex(),D={blockquote:m(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",O).getRegex(),code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,def:B,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:v,html:$,lheading:S,list:L,newline:/^(?: *(?:\n|$))+/,paragraph:O,table:b,text:/^[^\n]+/},I=m("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",v).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",F).getRegex(),R={...D,table:I,paragraph:m(A).replace("hr",v).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",I).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",F).getRegex()},P={...D,html:m("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",E).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:b,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:m(A).replace("hr",v).replace("heading"," *#{1,6} *[^\n]").replace("lheading",S).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},N=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,q=/^( {2,}|\\)\n(?!\s*$)/,z="\\p{P}\\p{S}",K=m(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,z).getRegex(),j=m(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,z).getRegex(),W=m("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,z).getRegex(),U=m("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,z).getRegex(),H=m(/\\([punct])/,"gu").replace(/punct/g,z).getRegex(),Y=m(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),V=m(E).replace("(?:--\x3e|$)","--\x3e").getRegex(),G=m("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",V).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Z=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,X=m(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Z).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Q=m(/^!?\[(label)\]\[(ref)\]/).replace("label",Z).replace("ref",M).getRegex(),J=m(/^!?\[(ref)\](?:\[\])?/).replace("ref",M).getRegex(),tt={_backpedal:b,anyPunctuation:H,autolink:Y,blockSkip:/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,br:q,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:b,emStrongLDelim:j,emStrongRDelimAst:W,emStrongRDelimUnd:U,escape:N,link:X,nolink:J,punctuation:K,reflink:Q,reflinkSearch:m("reflink|nolink(?!\\()","g").replace("reflink",Q).replace("nolink",J).getRegex(),tag:G,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\e+" ".repeat(r.length)));t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some((r=>!!(i=r.call({lexer:this},t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)))))if(i=this.tokenizer.space(t))t=t.substring(i.raw.length),1===i.raw.length&&e.length>0?e[e.length-1].raw+="\n":e.push(i);else if(i=this.tokenizer.code(t))t=t.substring(i.raw.length),n=e[e.length-1],!n||"paragraph"!==n.type&&"text"!==n.type?e.push(i):(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue[this.inlineQueue.length-1].src=n.text);else if(i=this.tokenizer.fences(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.heading(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.hr(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.blockquote(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.list(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.html(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.def(t))t=t.substring(i.raw.length),n=e[e.length-1],!n||"paragraph"!==n.type&&"text"!==n.type?this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title}):(n.raw+="\n"+i.raw,n.text+="\n"+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=n.text);else if(i=this.tokenizer.table(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.lheading(t))t=t.substring(i.raw.length),e.push(i);else{if(o=t,this.options.extensions&&this.options.extensions.startBlock){let e=1/0;const r=t.slice(1);let i;this.options.extensions.startBlock.forEach((t=>{i=t.call({lexer:this},r),"number"==typeof i&&i>=0&&(e=Math.min(e,i))})),e<1/0&&e>=0&&(o=t.substring(0,e+1))}if(this.state.top&&(i=this.tokenizer.paragraph(o)))n=e[e.length-1],r&&"paragraph"===n?.type?(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):e.push(i),r=o.length!==t.length,t=t.substring(i.raw.length);else if(i=this.tokenizer.text(t))t=t.substring(i.raw.length),n=e[e.length-1],n&&"text"===n.type?(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):e.push(i);else if(t){const e="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(e);break}throw new Error(e)}}return this.state.top=!0,e}inline(t,e=[]){return this.inlineQueue.push({src:t,tokens:e}),e}inlineTokens(t,e=[]){let r,i,n,o,a,s,l=t;if(this.tokens.links){const t=Object.keys(this.tokens.links);if(t.length>0)for(;null!=(o=this.tokenizer.rules.inline.reflinkSearch.exec(l));)t.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(l=l.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(o=this.tokenizer.rules.inline.blockSkip.exec(l));)l=l.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(o=this.tokenizer.rules.inline.anyPunctuation.exec(l));)l=l.slice(0,o.index)+"++"+l.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;t;)if(a||(s=""),a=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some((i=>!!(r=i.call({lexer:this},t,e))&&(t=t.substring(r.raw.length),e.push(r),!0)))))if(r=this.tokenizer.escape(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.tag(t))t=t.substring(r.raw.length),i=e[e.length-1],i&&"text"===r.type&&"text"===i.type?(i.raw+=r.raw,i.text+=r.text):e.push(r);else if(r=this.tokenizer.link(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.reflink(t,this.tokens.links))t=t.substring(r.raw.length),i=e[e.length-1],i&&"text"===r.type&&"text"===i.type?(i.raw+=r.raw,i.text+=r.text):e.push(r);else if(r=this.tokenizer.emStrong(t,l,s))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.codespan(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.br(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.del(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.autolink(t))t=t.substring(r.raw.length),e.push(r);else if(this.state.inLink||!(r=this.tokenizer.url(t))){if(n=t,this.options.extensions&&this.options.extensions.startInline){let e=1/0;const r=t.slice(1);let i;this.options.extensions.startInline.forEach((t=>{i=t.call({lexer:this},r),"number"==typeof i&&i>=0&&(e=Math.min(e,i))})),e<1/0&&e>=0&&(n=t.substring(0,e+1))}if(r=this.tokenizer.inlineText(n))t=t.substring(r.raw.length),"_"!==r.raw.slice(-1)&&(s=r.raw.slice(-1)),a=!0,i=e[e.length-1],i&&"text"===i.type?(i.raw+=r.raw,i.text+=r.text):e.push(r);else if(t){const e="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(e);break}throw new Error(e)}}else t=t.substring(r.raw.length),e.push(r);return e}}class st{options;parser;constructor(t){this.options=t||a}space(t){return""}code({text:t,lang:e,escaped:r}){const i=(e||"").match(/^\S*/)?.[0],n=t.replace(/\n$/,"")+"\n";return i?'
    '+(r?n:f(n,!0))+"
    \n":"
    "+(r?n:f(n,!0))+"
    \n"}blockquote({tokens:t}){return`
    \n${this.parser.parse(t)}
    \n`}html({text:t}){return t}heading({tokens:t,depth:e}){return`${this.parser.parseInline(t)}\n`}hr(t){return"
    \n"}list(t){const e=t.ordered,r=t.start;let i="";for(let e=0;e\n"+i+"\n"}listitem(t){let e="";if(t.task){const r=this.checkbox({checked:!!t.checked});t.loose?t.tokens.length>0&&"paragraph"===t.tokens[0].type?(t.tokens[0].text=r+" "+t.tokens[0].text,t.tokens[0].tokens&&t.tokens[0].tokens.length>0&&"text"===t.tokens[0].tokens[0].type&&(t.tokens[0].tokens[0].text=r+" "+t.tokens[0].tokens[0].text)):t.tokens.unshift({type:"text",raw:r+" ",text:r+" "}):e+=r+" "}return e+=this.parser.parse(t.tokens,!!t.loose),`
  • ${e}
  • \n`}checkbox({checked:t}){return"'}paragraph({tokens:t}){return`

    ${this.parser.parseInline(t)}

    \n`}table(t){let e="",r="";for(let e=0;e${i}`),"\n\n"+e+"\n"+i+"
    \n"}tablerow({text:t}){return`\n${t}\n`}tablecell(t){const e=this.parser.parseInline(t.tokens),r=t.header?"th":"td";return(t.align?`<${r} align="${t.align}">`:`<${r}>`)+e+`\n`}strong({tokens:t}){return`${this.parser.parseInline(t)}`}em({tokens:t}){return`${this.parser.parseInline(t)}`}codespan({text:t}){return`${t}`}br(t){return"
    "}del({tokens:t}){return`${this.parser.parseInline(t)}`}link({href:t,title:e,tokens:r}){const i=this.parser.parseInline(r),n=x(t);if(null===n)return i;let o='
    ",o}image({href:t,title:e,text:r}){const i=x(t);if(null===i)return r;let n=`${r}{const n=t[i].flat(1/0);r=r.concat(this.walkTokens(n,e))})):t.tokens&&(r=r.concat(this.walkTokens(t.tokens,e)))}}return r}use(...t){const e=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach((t=>{const r={...t};if(r.async=this.defaults.async||r.async||!1,t.extensions&&(t.extensions.forEach((t=>{if(!t.name)throw new Error("extension name required");if("renderer"in t){const r=e.renderers[t.name];e.renderers[t.name]=r?function(...e){let i=t.renderer.apply(this,e);return!1===i&&(i=r.apply(this,e)),i}:t.renderer}if("tokenizer"in t){if(!t.level||"block"!==t.level&&"inline"!==t.level)throw new Error("extension level must be 'block' or 'inline'");const r=e[t.level];r?r.unshift(t.tokenizer):e[t.level]=[t.tokenizer],t.start&&("block"===t.level?e.startBlock?e.startBlock.push(t.start):e.startBlock=[t.start]:"inline"===t.level&&(e.startInline?e.startInline.push(t.start):e.startInline=[t.start]))}"childTokens"in t&&t.childTokens&&(e.childTokens[t.name]=t.childTokens)})),r.extensions=e),t.renderer){const e=this.defaults.renderer||new st(this.defaults);for(const r in t.renderer){if(!(r in e))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;const i=r;let n=t.renderer[i];t.useNewRenderer||(n=this.#e(n,i,e));const o=e[i];e[i]=(...t)=>{let r=n.apply(e,t);return!1===r&&(r=o.apply(e,t)),r||""}}r.renderer=e}if(t.tokenizer){const e=this.defaults.tokenizer||new w(this.defaults);for(const r in t.tokenizer){if(!(r in e))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;const i=r,n=t.tokenizer[i],o=e[i];e[i]=(...t)=>{let r=n.apply(e,t);return!1===r&&(r=o.apply(e,t)),r}}r.tokenizer=e}if(t.hooks){const e=this.defaults.hooks||new ht;for(const r in t.hooks){if(!(r in e))throw new Error(`hook '${r}' does not exist`);if("options"===r)continue;const i=r,n=t.hooks[i],o=e[i];ht.passThroughHooks.has(r)?e[i]=t=>{if(this.defaults.async)return Promise.resolve(n.call(e,t)).then((t=>o.call(e,t)));const r=n.call(e,t);return o.call(e,r)}:e[i]=(...t)=>{let r=n.apply(e,t);return!1===r&&(r=o.apply(e,t)),r}}r.hooks=e}if(t.walkTokens){const e=this.defaults.walkTokens,i=t.walkTokens;r.walkTokens=function(t){let r=[];return r.push(i.call(this,t)),e&&(r=r.concat(e.call(this,t))),r}}this.defaults={...this.defaults,...r}})),this}#e(t,e,r){switch(e){case"heading":return function(i){return i.type&&i.type===e?t.call(this,r.parser.parseInline(i.tokens),i.depth,function(t){return t.replace(g,((t,e)=>"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):""))}(r.parser.parseInline(i.tokens,r.parser.textRenderer))):t.apply(this,arguments)};case"code":return function(r){return r.type&&r.type===e?t.call(this,r.text,r.lang,!!r.escaped):t.apply(this,arguments)};case"table":return function(r){if(!r.type||r.type!==e)return t.apply(this,arguments);let i="",n="";for(let t=0;t0&&"paragraph"===e.tokens[0].type?(e.tokens[0].text=t+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&"text"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=t+" "+e.tokens[0].tokens[0].text)):e.tokens.unshift({type:"text",text:t+" "}):s+=t+" "}s+=this.parser.parse(e.tokens,o),a+=this.listitem({type:"list_item",raw:s,text:s,task:n,checked:!!i,loose:o,tokens:e.tokens})}return t.call(this,a,i,n)};case"html":return function(r){return r.type&&r.type===e?t.call(this,r.text,r.block):t.apply(this,arguments)};case"paragraph":case"strong":case"em":case"del":return function(r){return r.type&&r.type===e?t.call(this,this.parser.parseInline(r.tokens)):t.apply(this,arguments)};case"escape":case"codespan":case"text":return function(r){return r.type&&r.type===e?t.call(this,r.text):t.apply(this,arguments)};case"link":return function(r){return r.type&&r.type===e?t.call(this,r.href,r.title,this.parser.parseInline(r.tokens)):t.apply(this,arguments)};case"image":return function(r){return r.type&&r.type===e?t.call(this,r.href,r.title,r.text):t.apply(this,arguments)}}return t}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,e){return at.lex(t,e??this.defaults)}parser(t,e){return ct.parse(t,e??this.defaults)}#t(t,e){return(r,i)=>{const n={...i},o={...this.defaults,...n};!0===this.defaults.async&&!1===n.async&&(o.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),o.async=!0);const a=this.#r(!!o.silent,!!o.async);if(null==r)return a(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof r)return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(r)+", string expected"));if(o.hooks&&(o.hooks.options=o),o.async)return Promise.resolve(o.hooks?o.hooks.preprocess(r):r).then((e=>t(e,o))).then((t=>o.hooks?o.hooks.processAllTokens(t):t)).then((t=>o.walkTokens?Promise.all(this.walkTokens(t,o.walkTokens)).then((()=>t)):t)).then((t=>e(t,o))).then((t=>o.hooks?o.hooks.postprocess(t):t)).catch(a);try{o.hooks&&(r=o.hooks.preprocess(r));let i=t(r,o);o.hooks&&(i=o.hooks.processAllTokens(i)),o.walkTokens&&this.walkTokens(i,o.walkTokens);let n=e(i,o);return o.hooks&&(n=o.hooks.postprocess(n)),n}catch(t){return a(t)}}}#r(t,e){return r=>{if(r.message+="\nPlease report this to https://github.com/markedjs/marked.",t){const t="

    An error occurred:

    "+f(r.message+"",!0)+"
    ";return e?Promise.resolve(t):t}if(e)return Promise.reject(r);throw r}}};function dt(t,e){return ut.parse(t,e)}dt.options=dt.setOptions=function(t){return ut.setOptions(t),dt.defaults=ut.defaults,s(dt.defaults),dt},dt.getDefaults=function(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}},dt.defaults=a,dt.use=function(...t){return ut.use(...t),dt.defaults=ut.defaults,s(dt.defaults),dt},dt.walkTokens=function(t,e){return ut.walkTokens(t,e)},dt.parseInline=ut.parseInline,dt.Parser=ct,dt.parser=ct.parse,dt.Renderer=st,dt.TextRenderer=lt,dt.Lexer=at,dt.lexer=at.lex,dt.Tokenizer=w,dt.Hooks=ht,dt.parse=dt,dt.options,dt.setOptions,dt.use,dt.walkTokens,dt.parseInline,ct.parse,at.lex;var pt=r(513);function ft(t,{markdownAutoWrap:e}){const r=t.replace(//g,"\n").replace(/\n{2,}/g,"\n"),i=(0,pt.T)(r);return!1===e?i.replace(/ /g," "):i}function gt(t,e={}){const r=ft(t,e),i=dt.lexer(r),o=[[]];let a=0;function s(t,e="normal"){"text"===t.type?t.text.split("\n").forEach(((t,r)=>{0!==r&&(a++,o.push([])),t.split(" ").forEach((t=>{t&&o[a].push({content:t,type:e})}))})):"strong"===t.type||"em"===t.type?t.tokens.forEach((e=>{s(e,t.type)})):"html"===t.type&&o[a].push({content:t.text,type:"normal"})}return(0,n.K2)(s,"processNode"),i.forEach((t=>{"paragraph"===t.type?t.tokens?.forEach((t=>{s(t)})):"html"===t.type&&o[a].push({content:t.text,type:"normal"})})),o}function yt(t,{markdownAutoWrap:e}={}){const r=dt.lexer(t);function i(t){return"text"===t.type?!1===e?t.text.replace(/\n */g,"
    ").replace(/ /g," "):t.text.replace(/\n */g,"
    "):"strong"===t.type?`${t.tokens?.map(i).join("")}`:"em"===t.type?`${t.tokens?.map(i).join("")}`:"paragraph"===t.type?`

    ${t.tokens?.map(i).join("")}

    `:"space"===t.type?"":"html"===t.type?`${t.text}`:`Unsupported markdown: ${t.type}`}return(0,n.K2)(i,"output"),r.map(i).join("")}function mt(t){return Intl.Segmenter?[...(new Intl.Segmenter).segment(t)].map((t=>t.segment)):[...t]}function xt(t,e){return bt(t,[],mt(e.content),e.type)}function bt(t,e,r,i){if(0===r.length)return[{content:e.join(""),type:i},{content:"",type:i}];const[n,...o]=r,a=[...e,n];return t([{content:a.join(""),type:i}])?bt(t,a,o,i):(0===e.length&&n&&(e.push(n),r.shift()),[{content:e.join(""),type:i},{content:r.join(""),type:i}])}function Ct(t,e){if(t.some((({content:t})=>t.includes("\n"))))throw new Error("splitLineToFitWidth does not support newlines in the line");return kt(t,e)}function kt(t,e,r=[],i=[]){if(0===t.length)return i.length>0&&r.push(i),r.length>0?r:[];let n="";" "===t[0].content&&(n=" ",t.shift());const o=t.shift()??{content:" ",type:"normal"},a=[...i];if(""!==n&&a.push({content:n,type:"normal"}),a.push(o),e(a))return kt(t,e,r,a);if(i.length>0)r.push(i),t.unshift(o);else if(o.content){const[i,n]=xt(e,o);r.push([i]),n.content&&t.unshift(n)}return kt(t,e,r)}function _t(t,e){e&&t.attr("style",e)}async function wt(t,e,r,i,o=!1){const a=t.append("foreignObject"),s=a.append("xhtml:div");let l=e.label;e.label&&(0,n.Wi)(e.label)&&(l=await(0,n.VJ)(e.label.replace(n.Y2.lineBreakRegex,"\n"),(0,n.D7)()));const c=e.isNode?"nodeLabel":"edgeLabel",h=s.append("span");h.html(l),_t(h,e.labelStyle),h.attr("class",`${c} ${i}`),_t(s,e.labelStyle),s.style("display","table-cell"),s.style("white-space","nowrap"),s.style("line-height","1.5"),s.style("max-width",r+"px"),s.style("text-align","center"),s.attr("xmlns","http://www.w3.org/1999/xhtml"),o&&s.attr("class","labelBkg");let u=s.node().getBoundingClientRect();return u.width===r&&(s.style("display","table"),s.style("white-space","break-spaces"),s.style("width",r+"px"),u=s.node().getBoundingClientRect()),a.node()}function vt(t,e,r){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em")}function Tt(t,e,r){const i=t.append("text"),n=vt(i,1,e);Mt(n,r);const o=n.node().getComputedTextLength();return i.remove(),o}function St(t,e,r){const i=t.append("text"),n=vt(i,1,e);Mt(n,[{content:r,type:"normal"}]);const o=n.node()?.getBoundingClientRect();return o&&i.remove(),o}function At(t,e,r,i=!1){const o=e.append("g"),a=o.insert("rect").attr("class","background").attr("style","stroke: none"),s=o.append("text").attr("y","-10.1");let l=0;for(const e of r){const r=(0,n.K2)((e=>Tt(o,1.1,e)<=t),"checkWidth"),i=r(e)?[e]:Ct(e,r);for(const t of i)Mt(vt(s,l,1.1),t),l++}if(i){const t=s.node().getBBox(),e=2;return a.attr("x",-e).attr("y",-e).attr("width",t.width+2*e).attr("height",t.height+2*e),o.node()}return s.node()}function Mt(t,e){t.text(""),e.forEach(((e,r)=>{const i=t.append("tspan").attr("font-style","em"===e.type?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight","strong"===e.type?"bold":"normal");0===r?i.text(e.content):i.text(" "+e.content)}))}function Bt(t){return t.replace(/fa[bklrs]?:fa-[\w-]+/g,(t=>``))}(0,n.K2)(ft,"preprocessMarkdown"),(0,n.K2)(gt,"markdownToLines"),(0,n.K2)(yt,"markdownToHTML"),(0,n.K2)(mt,"splitTextToChars"),(0,n.K2)(xt,"splitWordToFitWidth"),(0,n.K2)(bt,"splitWordToFitWidthRecursion"),(0,n.K2)(Ct,"splitLineToFitWidth"),(0,n.K2)(kt,"splitLineToFitWidthRecursion"),(0,n.K2)(_t,"applyStyle"),(0,n.K2)(wt,"addHtmlSpan"),(0,n.K2)(vt,"createTspan"),(0,n.K2)(Tt,"computeWidthOfText"),(0,n.K2)(St,"computeDimensionOfText"),(0,n.K2)(At,"createFormattedText"),(0,n.K2)(Mt,"updateTextContentAndStyles"),(0,n.K2)(Bt,"replaceIconSubstring");var Lt=(0,n.K2)((async(t,e="",{style:r="",isTitle:a=!1,classes:s="",useHtmlLabels:l=!0,isNode:c=!0,width:h=200,addSvgBackground:u=!1}={},d)=>{if(n.Rm.info("XYZ createText",e,r,a,s,l,c,"addSvgBackground: ",u),l){const o=yt(e,d),a=Bt((0,i.Sm)(o)),l=e.replace(/\\\\/g,"\\"),p={isNode:c,label:(0,n.Wi)(e)?l:a,labelStyle:r.replace("fill:","color:")};return await wt(t,p,h,s,u)}{const i=At(h,t,gt(e.replace(//g,"
    ").replace("
    ","
    "),d),!!e&&u);if(c){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));const t=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");(0,o.Ltv)(i).attr("style",t)}else{const t=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");(0,o.Ltv)(i).select("rect").attr("style",t.replace(/background:/g,"fill:"));const e=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");(0,o.Ltv)(i).select("text").attr("style",e)}return i}}),"createText")},2602:(t,e,r)=>{"use strict";r.d(e,{XX:()=>c,q7:()=>h,sO:()=>l});var i=r(9022),n=r(7323),o=r(798),a={common:o.Y2,getConfig:o.zj,insertCluster:i.U,insertEdge:i.Jo,insertEdgeLabel:i.jP,insertMarkers:i.g0,insertNode:i.on,interpolateToCurve:n.Ib,labelHelper:i.Zk,log:o.Rm,positionEdgeLabel:i.T_},s={},l=(0,o.K2)((t=>{for(const e of t)s[e.name]=e}),"registerLayoutLoaders");(0,o.K2)((()=>{l([{name:"dagre",loader:(0,o.K2)((async()=>await Promise.all([r.e(913),r.e(567),r.e(51)]).then(r.bind(r,1051))),"loader")}])}),"registerDefaultLayoutLoaders")();var c=(0,o.K2)((async(t,e)=>{if(!(t.layoutAlgorithm in s))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);const r=s[t.layoutAlgorithm];return(await r.loader()).render(t,e,a,{algorithm:r.algorithm})}),"render"),h=(0,o.K2)(((t="",{fallback:e="dagre"}={})=>{if(t in s)return t;if(e in s)return o.Rm.warn(`Layout algorithm ${t} is not registered. Using ${e} as fallback.`),e;throw new Error(`Both layout algorithms ${t} and ${e} are not registered.`)}),"getRegisteredLayoutAlgorithm")},8496:(t,e,r)=>{"use strict";r.d(e,{O:()=>n,R:()=>l});var i=r(798),n=(0,i.K2)((({flowchart:t})=>{const e=t?.subGraphTitleMargin?.top??0,r=t?.subGraphTitleMargin?.bottom??0;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:e+r}}),"getSubGraphTitleMargins"),o={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:4};function a(t,e){if(void 0===t||void 0===e)return{angle:0,deltaX:0,deltaY:0};t=s(t),e=s(e);const[r,i]=[t.x,t.y],[n,o]=[e.x,e.y],a=n-r,l=o-i;return{angle:Math.atan(l/a),deltaX:a,deltaY:l}}(0,i.K2)(a,"calculateDeltaAndAngle");var s=(0,i.K2)((t=>Array.isArray(t)?{x:t[0],y:t[1]}:t),"pointTransformer"),l=(0,i.K2)((t=>({x:(0,i.K2)((function(e,r,i){let n=0;if(0===r&&Object.hasOwn(o,t.arrowTypeStart)){const{angle:e,deltaX:r}=a(i[0],i[1]);n=o[t.arrowTypeStart]*Math.cos(e)*(r>=0?1:-1)}else if(r===i.length-1&&Object.hasOwn(o,t.arrowTypeEnd)){const{angle:e,deltaX:r}=a(i[i.length-1],i[i.length-2]);n=o[t.arrowTypeEnd]*Math.cos(e)*(r>=0?1:-1)}return s(e).x+n}),"x"),y:(0,i.K2)((function(e,r,i){let n=0;if(0===r&&Object.hasOwn(o,t.arrowTypeStart)){const{angle:e,deltaY:r}=a(i[0],i[1]);n=o[t.arrowTypeStart]*Math.abs(Math.sin(e))*(r>=0?1:-1)}else if(r===i.length-1&&Object.hasOwn(o,t.arrowTypeEnd)){const{angle:e,deltaY:r}=a(i[i.length-1],i[i.length-2]);n=o[t.arrowTypeEnd]*Math.abs(Math.sin(e))*(r>=0?1:-1)}return s(e).y+n}),"y")})),"getLineFunctionsWithOffset")},7323:(t,e,r)=>{"use strict";r.d(e,{$C:()=>A,$t:()=>j,C4:()=>U,I5:()=>K,Ib:()=>g,Sm:()=>H,Un:()=>D,_K:()=>W,bH:()=>E,dq:()=>q,pe:()=>l,rY:()=>Y,ru:()=>O,sM:()=>T,vU:()=>p,yT:()=>B});var i=r(798),n=r(6750),o=r(4852),a=r(6632),s=r(7222),l="​",c={curveBasis:o.qrM,curveBasisClosed:o.Yu4,curveBasisOpen:o.IA3,curveBumpX:o.Wi0,curveBumpY:o.PGM,curveBundle:o.OEq,curveCardinalClosed:o.olC,curveCardinalOpen:o.IrU,curveCardinal:o.y8u,curveCatmullRomClosed:o.Q7f,curveCatmullRomOpen:o.cVp,curveCatmullRom:o.oDi,curveLinear:o.lUB,curveLinearClosed:o.Lx9,curveMonotoneX:o.nVG,curveMonotoneY:o.uxU,curveNatural:o.Xf2,curveStep:o.GZz,curveStepAfter:o.UPb,curveStepBefore:o.dyv},h=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,u=(0,i.K2)((function(t,e){const r=d(t,/(?:init\b)|(?:initialize\b)/);let n={};if(Array.isArray(r)){const t=r.map((t=>t.args));(0,i.$i)(t),n=(0,i.hH)(n,[...t])}else n=r.args;if(!n)return;let o=(0,i.Ch)(t,e);const a="config";return void 0!==n[a]&&("flowchart-v2"===o&&(o="flowchart"),n[o]=n[a],delete n[a]),n}),"detectInit"),d=(0,i.K2)((function(t,e=null){try{const r=new RegExp(`[%]{2}(?![{]${h.source})(?=[}][%]{2}).*\n`,"ig");let n;t=t.trim().replace(r,"").replace(/'/gm,'"'),i.Rm.debug(`Detecting diagram directive${null!==e?" type:"+e:""} based on the text:${t}`);const o=[];for(;null!==(n=i.DB.exec(t));)if(n.index===i.DB.lastIndex&&i.DB.lastIndex++,n&&!e||e&&n[1]?.match(e)||e&&n[2]?.match(e)){const t=n[1]?n[1]:n[2],e=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;o.push({type:t,args:e})}return 0===o.length?{type:t,args:null}:1===o.length?o[0]:o}catch(r){return i.Rm.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}}),"detectDirective"),p=(0,i.K2)((function(t){return t.replace(i.DB,"")}),"removeDirectives"),f=(0,i.K2)((function(t,e){for(const[r,i]of e.entries())if(i.match(t))return r;return-1}),"isSubstringInArray");function g(t,e){if(!t)return e;const r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return c[r]??e}function y(t,e){const r=t.trim();if(r)return"loose"!==e.securityLevel?(0,n.J)(r):r}(0,i.K2)(g,"interpolateToCurve"),(0,i.K2)(y,"formatUrl");var m=(0,i.K2)(((t,...e)=>{const r=t.split("."),n=r.length-1,o=r[n];let a=window;for(let e=0;e{r+=x(t,e),e=t})),_(t,r/2)}function C(t){return 1===t.length?t[0]:b(t)}(0,i.K2)(x,"distance"),(0,i.K2)(b,"traverseEdge"),(0,i.K2)(C,"calcLabelPosition");var k=(0,i.K2)(((t,e=2)=>{const r=Math.pow(10,e);return Math.round(t*r)/r}),"roundNumber"),_=(0,i.K2)(((t,e)=>{let r,i=e;for(const e of t){if(r){const t=x(e,r);if(t=1)return{x:e.x,y:e.y};if(n>0&&n<1)return{x:k((1-n)*r.x+n*e.x,5),y:k((1-n)*r.y+n*e.y,5)}}}r=e}throw new Error("Could not find a suitable point for the given distance")}),"calculatePoint"),w=(0,i.K2)(((t,e,r)=>{i.Rm.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());const n=_(e,25),o=t?10:5,a=Math.atan2(e[0].y-n.y,e[0].x-n.x),s={x:0,y:0};return s.x=Math.sin(a)*o+(e[0].x+n.x)/2,s.y=-Math.cos(a)*o+(e[0].y+n.y)/2,s}),"calcCardinalityPosition");function v(t,e,r){const n=structuredClone(r);i.Rm.info("our points",n),"start_left"!==e&&"start_right"!==e&&n.reverse();const o=_(n,25+t),a=10+.5*t,s=Math.atan2(n[0].y-o.y,n[0].x-o.x),l={x:0,y:0};return"start_left"===e?(l.x=Math.sin(s+Math.PI)*a+(n[0].x+o.x)/2,l.y=-Math.cos(s+Math.PI)*a+(n[0].y+o.y)/2):"end_right"===e?(l.x=Math.sin(s-Math.PI)*a+(n[0].x+o.x)/2-5,l.y=-Math.cos(s-Math.PI)*a+(n[0].y+o.y)/2-5):"end_left"===e?(l.x=Math.sin(s)*a+(n[0].x+o.x)/2-5,l.y=-Math.cos(s)*a+(n[0].y+o.y)/2-5):(l.x=Math.sin(s)*a+(n[0].x+o.x)/2,l.y=-Math.cos(s)*a+(n[0].y+o.y)/2),l}function T(t){let e="",r="";for(const i of t)void 0!==i&&(i.startsWith("color:")||i.startsWith("text-align:")?r=r+i+";":e=e+i+";");return{style:e,labelStyle:r}}(0,i.K2)(v,"calcTerminalLabelPosition"),(0,i.K2)(T,"getStylesFromArray");var S=0,A=(0,i.K2)((()=>(S++,"id-"+Math.random().toString(36).substr(2,12)+"-"+S)),"generateId");function M(t){let e="";for(let r=0;rM(t.length)),"random"),L=(0,i.K2)((function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}}),"getTextObj"),F=(0,i.K2)((function(t,e){const r=e.text.replace(i.Y2.lineBreakRegex," "),[,n]=K(e.fontSize),o=t.append("text");o.attr("x",e.x),o.attr("y",e.y),o.style("text-anchor",e.anchor),o.style("font-family",e.fontFamily),o.style("font-size",n),o.style("font-weight",e.fontWeight),o.attr("fill",e.fill),void 0!==e.class&&o.attr("class",e.class);const a=o.append("tspan");return a.attr("x",e.x+2*e.textMargin),a.attr("fill",e.fill),a.text(r),o}),"drawSimpleText"),E=(0,a.A)(((t,e,r)=>{if(!t)return t;if(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
    "},r),i.Y2.lineBreakRegex.test(t))return t;const n=t.split(" ").filter(Boolean),o=[];let a="";return n.forEach(((t,i)=>{const s=D(`${t} `,r),l=D(a,r);if(s>e){const{hyphenatedStrings:i,remainingWord:n}=$(t,e,"-",r);o.push(a,...i),a=n}else l+s>=e?(o.push(a),a=t):a=[a,t].filter(Boolean).join(" ");i+1===n.length&&o.push(a)})),o.filter((t=>""!==t)).join(r.joinWith)}),((t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`)),$=(0,a.A)(((t,e,r="-",i)=>{i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},i);const n=[...t],o=[];let a="";return n.forEach(((t,s)=>{const l=`${a}${t}`;if(D(l,i)>=e){const t=s+1,e=n.length===t,i=`${l}${r}`;o.push(e?l:i),a=""}else a=l})),{hyphenatedStrings:o,remainingWord:a}}),((t,e,r="-",i)=>`${t}${e}${r}${i.fontSize}${i.fontWeight}${i.fontFamily}`));function O(t,e){return R(t,e).height}function D(t,e){return R(t,e).width}(0,i.K2)(O,"calculateTextHeight"),(0,i.K2)(D,"calculateTextWidth");var I,R=(0,a.A)(((t,e)=>{const{fontSize:r=12,fontFamily:n="Arial",fontWeight:a=400}=e;if(!t)return{width:0,height:0};const[,s]=K(r),c=["sans-serif",n],h=t.split(i.Y2.lineBreakRegex),u=[],d=(0,o.Ltv)("body");if(!d.remove)return{width:0,height:0,lineHeight:0};const p=d.append("svg");for(const t of c){let e=0;const r={width:0,height:0,lineHeight:0};for(const i of h){const n=L();n.text=i||l;const o=F(p,n).style("font-size",s).style("font-weight",a).style("font-family",t),c=(o._groups||o)[0][0].getBBox();if(0===c.width&&0===c.height)throw new Error("svg element not in render tree");r.width=Math.round(Math.max(r.width,c.width)),e=Math.round(c.height),r.height+=e,r.lineHeight=Math.round(Math.max(r.lineHeight,e))}u.push(r)}return p.remove(),u[isNaN(u[1].height)||isNaN(u[1].width)||isNaN(u[1].lineHeight)||u[0].height>u[1].height&&u[0].width>u[1].width&&u[0].lineHeight>u[1].lineHeight?0:1]}),((t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`)),P=class{constructor(t=!1,e){this.count=0,this.count=e?e.length:0,this.next=t?()=>this.count++:()=>Date.now()}static{(0,i.K2)(this,"InitIDGenerator")}},N=(0,i.K2)((function(t){return I=I||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),I.innerHTML=t,unescape(I.textContent)}),"entityDecode");function q(t){return"str"in t}(0,i.K2)(q,"isDetailedError");var z=(0,i.K2)(((t,e,r,i)=>{if(!i)return;const n=t.node()?.getBBox();n&&t.append("text").text(i).attr("x",n.x+n.width/2).attr("y",-r).attr("class",e)}),"insertTitle"),K=(0,i.K2)((t=>{if("number"==typeof t)return[t,t+"px"];const e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]}),"parseFontSize");function j(t,e){return(0,s.A)({},t,e)}(0,i.K2)(j,"cleanAndMerge");var W={assignWithDepth:i.hH,wrapLabel:E,calculateTextHeight:O,calculateTextWidth:D,calculateTextDimensions:R,cleanAndMerge:j,detectInit:u,detectDirective:d,isSubstringInArray:f,interpolateToCurve:g,calcLabelPosition:C,calcCardinalityPosition:w,calcTerminalLabelPosition:v,formatUrl:y,getStylesFromArray:T,generateId:A,random:B,runFunc:m,entityDecode:N,insertTitle:z,parseFontSize:K,InitIDGenerator:P},U=(0,i.K2)((function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,(function(t){return t.substring(0,t.length-1)})),e=e.replace(/classDef.*:\S*#.*;/g,(function(t){return t.substring(0,t.length-1)})),e=e.replace(/#\w+;/g,(function(t){const e=t.substring(1,t.length-1);return/^\+?\d+$/.test(e)?"fl°°"+e+"¶ß":"fl°"+e+"¶ß"})),e}),"encodeEntities"),H=(0,i.K2)((function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")}),"decodeEntities"),Y=(0,i.K2)(((t,e,{counter:r=0,prefix:i,suffix:n})=>`${i?`${i}_`:""}${t}_${e}_${r}${n?`_${n}`:""}`),"getEdgeId")},261:(t,e,r)=>{"use strict";r.d(e,{r:()=>i});var i="11.0.2"}},i={};function n(t){var e=i[t];if(void 0!==e)return e.exports;var o=i[t]={exports:{}};return r[t].call(o.exports,o,o.exports,n),o.exports}n.m=r,n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.f={},n.e=t=>Promise.all(Object.keys(n.f).reduce(((e,r)=>(n.f[r](t,e),e)),[])),n.u=t=>"js/"+t+"-"+{42:"aadd500f",51:"a5b3e792",130:"395cb664",148:"5c9964c4",174:"c58623b5",205:"9a3f06a7",207:"76b424b6",221:"9d1089ca",257:"acdc3108",278:"82f9d9ad",300:"19c1a4f9",331:"bd053b7e",339:"ed783b3e",356:"34014d94",376:"769d6d21",444:"671f5f2b",533:"e75dcf61",557:"be45235e",567:"38dd778c",578:"d3d4963d",589:"841514a2",593:"bfe7ed66",650:"4e563e3b",654:"9045dc15",657:"d323ea06",731:"a0fa9714",756:"713e8876",760:"f618e0e3",799:"c3a32fe5",875:"2aebef6b",913:"4409c8d7",918:"70ec2bcb",959:"64fbcd17",991:"6e5a46d1"}[t]+".chunk.min.js",n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),t={},e="geekdoc:",n.l=(r,i,o,a)=>{if(t[r])t[r].push(i);else{var s,l;if(void 0!==o)for(var c=document.getElementsByTagName("script"),h=0;h{s.onerror=s.onload=null,clearTimeout(p);var n=t[r];if(delete t[r],s.parentNode&&s.parentNode.removeChild(s),n&&n.forEach((t=>t(i))),e)return e(i)},p=setTimeout(d.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=d.bind(null,s.onerror),s.onload=d.bind(null,s.onload),l&&document.head.appendChild(s)}},n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{var t;n.g.importScripts&&(t=n.g.location+"");var e=n.g.document;if(!t&&e&&(e.currentScript&&"SCRIPT"===e.currentScript.tagName.toUpperCase()&&(t=e.currentScript.src),!t)){var r=e.getElementsByTagName("script");if(r.length)for(var i=r.length-1;i>-1&&(!t||!/^http(s?):/.test(t));)t=r[i--].src}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),n.p=t+"../"})(),(()=>{var t={304:0};n.f.j=(e,r)=>{var i=n.o(t,e)?t[e]:void 0;if(0!==i)if(i)r.push(i[2]);else{var o=new Promise(((r,n)=>i=t[e]=[r,n]));r.push(i[2]=o);var a=n.p+n.u(e),s=new Error;n.l(a,(r=>{if(n.o(t,e)&&(0!==(i=t[e])&&(t[e]=void 0),i)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+e+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,i[1](s)}}),"chunk-"+e,e)}};var e=(e,r)=>{var i,o,[a,s,l]=r,c=0;if(a.some((e=>0!==t[e]))){for(i in s)n.o(s,i)&&(n.m[i]=s[i]);l&&l(n)}for(e&&e(r);c{"use strict";var t=n(7148);const e={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};var r,i=new Uint8Array(16);function o(){if(!r&&!(r="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return r(i)}for(var a=[],s=0;s<256;++s)a.push((s+256).toString(16).slice(1));const l=function(t,r,i){if(e.randomUUID&&!r&&!t)return e.randomUUID();var n=(t=t||{}).random||(t.rng||o)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,r){i=i||0;for(var s=0;s<16;++s)r[i+s]=n[s];return r}return function(t,e=0){return(a[t[e+0]]+a[t[e+1]]+a[t[e+2]]+a[t[e+3]]+"-"+a[t[e+4]]+a[t[e+5]]+"-"+a[t[e+6]]+a[t[e+7]]+"-"+a[t[e+8]]+a[t[e+9]]+"-"+a[t[e+10]]+a[t[e+11]]+a[t[e+12]]+a[t[e+13]]+a[t[e+14]]+a[t[e+15]]).toLowerCase()}(n)},c="auto";var h=n(2602),u=(n(9022),n(8496),n(8252),n(7323)),d=n(261),p=n(8852),f=n(798),g=n(513),y=n(4852),m="comm",x="rule",b="decl",C=Math.abs,k=String.fromCharCode;function _(t){return t.trim()}function w(t,e,r){return t.replace(e,r)}function v(t,e,r){return t.indexOf(e,r)}function T(t,e){return 0|t.charCodeAt(e)}function S(t,e,r){return t.slice(e,r)}function A(t){return t.length}function M(t,e){return e.push(t),t}function B(t,e){for(var r="",i=0;i0?T(I,--O):0,E--,10===D&&(E=1,F--),D}function N(){return D=O<$?T(I,O++):0,E++,10===D&&(E=1,F++),D}function q(){return T(I,O)}function z(){return O}function K(t,e){return S(I,t,e)}function j(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function W(t){return _(K(O-1,Y(91===t?t+2:40===t?t+1:t)))}function U(t){for(;(D=q())&&D<33;)N();return j(t)>2||j(D)>3?"":" "}function H(t,e){for(;--e&&N()&&!(D<48||D>102||D>57&&D<65||D>70&&D<97););return K(t,z()+(e<6&&32==q()&&32==N()))}function Y(t){for(;N();)switch(D){case t:return O;case 34:case 39:34!==t&&39!==t&&Y(D);break;case 40:41===t&&Y(t);break;case 92:N()}return O}function V(t,e){for(;N()&&t+D!==57&&(t+D!==84||47!==q()););return"/*"+K(e,O-1)+"*"+k(47===t?t:N())}function G(t){for(;!j(q());)N();return K(t,O)}function Z(t){return function(t){return I="",t}(X("",null,null,null,[""],t=function(t){return F=E=1,$=A(I=t),O=0,[]}(t),0,[0],t))}function X(t,e,r,i,n,o,a,s,l){for(var c=0,h=0,u=a,d=0,p=0,f=0,g=1,y=1,m=1,x=0,b="",_=n,S=o,B=i,L=b;y;)switch(f=x,x=N()){case 40:if(108!=f&&58==T(L,u-1)){-1!=v(L+=w(W(x),"&","&\f"),"&\f",C(c?s[c-1]:0))&&(m=-1);break}case 34:case 39:case 91:L+=W(x);break;case 9:case 10:case 13:case 32:L+=U(f);break;case 92:L+=H(z()-1,7);continue;case 47:switch(q()){case 42:case 47:M(J(V(N(),z()),e,r,l),l);break;default:L+="/"}break;case 123*g:s[c++]=A(L)*m;case 125*g:case 59:case 0:switch(x){case 0:case 125:y=0;case 59+h:-1==m&&(L=w(L,/\f/g,"")),p>0&&A(L)-u&&M(p>32?tt(L+";",i,r,u-1,l):tt(w(L," ","")+";",i,r,u-2,l),l);break;case 59:L+=";";default:if(M(B=Q(L,e,r,c,h,n,s,b,_=[],S=[],u,o),o),123===x)if(0===h)X(L,e,B,B,_,o,u,s,S);else switch(99===d&&110===T(L,3)?100:d){case 100:case 108:case 109:case 115:X(t,B,B,i&&M(Q(t,B,B,0,0,n,s,b,n,_=[],u,S),S),n,S,u,s,i?_:S);break;default:X(L,B,B,B,[""],S,0,s,S)}}c=h=p=0,g=m=1,b=L="",u=a;break;case 58:u=1+A(L),p=f;default:if(g<1)if(123==x)--g;else if(125==x&&0==g++&&125==P())continue;switch(L+=k(x),x*g){case 38:m=h>0?1:(L+="\f",-1);break;case 44:s[c++]=(A(L)-1)*m,m=1;break;case 64:45===q()&&(L+=W(N())),d=q(),h=u=A(b=L+=G(z())),x++;break;case 45:45===f&&2==A(L)&&(g=0)}}return o}function Q(t,e,r,i,n,o,a,s,l,c,h,u){for(var d=n-1,p=0===n?o:[""],f=function(t){return t.length}(p),g=0,y=0,m=0;g0?p[b]+" "+k:w(k,/&\f/g,p[b])))&&(l[m++]=v);return R(t,e,r,0===n?x:s,l,c,h,u)}function J(t,e,r,i){return R(t,e,r,m,k(D),S(t,2,-2),0,i)}function tt(t,e,r,i,n){return R(t,e,r,b,S(t,0,i),S(t,i+1,-1),i,n)}var et=n(2838),rt=n(6401),it={id:"c4",detector:(0,f.K2)((t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await n.e(918).then(n.bind(n,4918));return{id:"c4",diagram:t}}),"loader")},nt="flowchart",ot={id:nt,detector:(0,f.K2)(((t,e)=>"dagre-wrapper"!==e?.flowchart?.defaultRenderer&&"elk"!==e?.flowchart?.defaultRenderer&&/^\s*graph/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(578),n.e(376)]).then(n.bind(n,376));return{id:nt,diagram:t}}),"loader")},at="flowchart-v2",st={id:at,detector:(0,f.K2)(((t,e)=>"dagre-d3"!==e?.flowchart?.defaultRenderer&&"elk"!==e?.flowchart?.defaultRenderer&&(!(!/^\s*graph/.test(t)||"dagre-wrapper"!==e?.flowchart?.defaultRenderer)||/^\s*flowchart/.test(t))),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(578),n.e(376)]).then(n.bind(n,376));return{id:at,diagram:t}}),"loader")},lt={id:"er",detector:(0,f.K2)((t=>/^\s*erDiagram/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(875)]).then(n.bind(n,6875));return{id:"er",diagram:t}}),"loader")},ct="gitGraph",ht={id:ct,detector:(0,f.K2)((t=>/^\s*gitGraph/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(731),n.e(356)]).then(n.bind(n,356));return{id:ct,diagram:t}}),"loader")},ut="gantt",dt={id:ut,detector:(0,f.K2)((t=>/^\s*gantt/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await n.e(300).then(n.bind(n,9300));return{id:ut,diagram:t}}),"loader")},pt="info",ft={id:pt,detector:(0,f.K2)((t=>/^\s*info/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(731),n.e(331)]).then(n.bind(n,7331));return{id:pt,diagram:t}}),"loader")},gt={id:"pie",detector:(0,f.K2)((t=>/^\s*pie/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(731),n.e(444)]).then(n.bind(n,8444));return{id:"pie",diagram:t}}),"loader")},yt="quadrantChart",mt={id:yt,detector:(0,f.K2)((t=>/^\s*quadrantChart/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await n.e(593).then(n.bind(n,593));return{id:yt,diagram:t}}),"loader")},xt="xychart",bt={id:xt,detector:(0,f.K2)((t=>/^\s*xychart-beta/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await n.e(174).then(n.bind(n,7174));return{id:xt,diagram:t}}),"loader")},Ct="requirement",kt={id:Ct,detector:(0,f.K2)((t=>/^\s*requirement(Diagram)?/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(533)]).then(n.bind(n,5533));return{id:Ct,diagram:t}}),"loader")},_t="sequence",wt={id:_t,detector:(0,f.K2)((t=>/^\s*sequenceDiagram/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await n.e(589).then(n.bind(n,3589));return{id:_t,diagram:t}}),"loader")},vt="class",Tt={id:vt,detector:(0,f.K2)(((t,e)=>"dagre-wrapper"!==e?.class?.defaultRenderer&&/^\s*classDiagram/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(207),n.e(650)]).then(n.bind(n,1650));return{id:vt,diagram:t}}),"loader")},St="classDiagram",At={id:St,detector:(0,f.K2)(((t,e)=>!(!/^\s*classDiagram/.test(t)||"dagre-wrapper"!==e?.class?.defaultRenderer)||/^\s*classDiagram-v2/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(578),n.e(207),n.e(557),n.e(42)]).then(n.bind(n,5042));return{id:St,diagram:t}}),"loader")},Mt="state",Bt={id:Mt,detector:(0,f.K2)(((t,e)=>"dagre-wrapper"!==e?.state?.defaultRenderer&&/^\s*stateDiagram/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(567),n.e(578),n.e(148),n.e(657)]).then(n.bind(n,8657));return{id:Mt,diagram:t}}),"loader")},Lt="stateDiagram",Ft={id:Lt,detector:(0,f.K2)(((t,e)=>!!/^\s*stateDiagram-v2/.test(t)||!(!/^\s*stateDiagram/.test(t)||"dagre-wrapper"!==e?.state?.defaultRenderer)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(578),n.e(148),n.e(205)]).then(n.bind(n,7205));return{id:Lt,diagram:t}}),"loader")},Et="journey",$t={id:Et,detector:(0,f.K2)((t=>/^\s*journey/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await n.e(257).then(n.bind(n,4257));return{id:Et,diagram:t}}),"loader")},Ot={draw:(0,f.K2)(((t,e,r)=>{f.Rm.debug("rendering svg for syntax error\n");const i=(0,p.D)(e),n=i.append("g");i.attr("viewBox","0 0 2412 512"),(0,f.a$)(i,100,512,!0),n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)}),"draw")},Dt=Ot,It={db:{},renderer:Ot,parser:{parse:(0,f.K2)((()=>{}),"parse")}},Rt="flowchart-elk",Pt={id:Rt,detector:(0,f.K2)(((t,e={})=>!!(/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&"elk"===e?.flowchart?.defaultRenderer)&&(e.layout="elk",!0)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(578),n.e(376)]).then(n.bind(n,376));return{id:Rt,diagram:t}}),"loader")},Nt="timeline",qt={id:Nt,detector:(0,f.K2)((t=>/^\s*timeline/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await n.e(799).then(n.bind(n,799));return{id:Nt,diagram:t}}),"loader")},zt="mindmap",Kt={id:zt,detector:(0,f.K2)((t=>/^\s*mindmap/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await n.e(991).then(n.bind(n,6991));return{id:zt,diagram:t}}),"loader")},jt="sankey",Wt={id:jt,detector:(0,f.K2)((t=>/^\s*sankey-beta/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await n.e(339).then(n.bind(n,3339));return{id:jt,diagram:t}}),"loader")},Ut="packet",Ht={id:Ut,detector:(0,f.K2)((t=>/^\s*packet-beta/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(731),n.e(756)]).then(n.bind(n,1756));return{id:Ut,diagram:t}}),"loader")},Yt="block",Vt={id:Yt,detector:(0,f.K2)((t=>/^\s*block-beta/.test(t)),"detector"),loader:(0,f.K2)((async()=>{const{diagram:t}=await Promise.all([n.e(913),n.e(578),n.e(557),n.e(654)]).then(n.bind(n,2654));return{id:Yt,diagram:t}}),"loader")},Gt=!1,Zt=(0,f.K2)((()=>{Gt||(Gt=!0,(0,f.Js)("error",It,(t=>"error"===t.toLowerCase().trim())),(0,f.Js)("---",{db:{clear:(0,f.K2)((()=>{}),"clear")},styles:{},renderer:{draw:(0,f.K2)((()=>{}),"draw")},parser:{parse:(0,f.K2)((()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}),"parse")},init:(0,f.K2)((()=>null),"init")},(t=>t.toLowerCase().trimStart().startsWith("---"))),(0,f.Xd)(it,At,Tt,lt,dt,ft,gt,kt,wt,Pt,st,ot,Kt,qt,ht,Ft,Bt,$t,mt,Wt,Ht,bt,Vt))}),"addDiagrams"),Xt=(0,f.K2)((async()=>{f.Rm.debug("Loading registered diagrams");const t=(await Promise.allSettled(Object.entries(f.mW).map((async([t,{detector:e,loader:r}])=>{if(r)try{(0,f.Gs)(t)}catch{try{const{diagram:t,id:i}=await r();(0,f.Js)(i,t,e)}catch(e){throw f.Rm.error(`Failed to load external diagram with key ${t}. Removing from detectors.`),delete f.mW[t],e}}})))).filter((t=>"rejected"===t.status));if(t.length>0){f.Rm.error(`Failed to load ${t.length} external diagrams`);for(const e of t)f.Rm.error(e);throw new Error(`Failed to load ${t.length} external diagrams`)}}),"loadRegisteredDiagrams"),Qt=class t{constructor(t,e,r,i,n){this.type=t,this.text=e,this.db=r,this.parser=i,this.renderer=n}static{(0,f.K2)(this,"Diagram")}static async fromText(e,r={}){const i=(0,f.zj)(),n=(0,f.Ch)(e,i);e=(0,u.C4)(e)+"\n";try{(0,f.Gs)(n)}catch{const t=(0,f.J$)(n);if(!t)throw new f.C0(`Diagram ${n} not found.`);const{id:e,diagram:r}=await t();(0,f.Js)(e,r)}const{db:o,parser:a,renderer:s,init:l}=(0,f.Gs)(n);return a.parser&&(a.parser.yy=o),o.clear?.(),l?.(i),r.title&&o.setDiagramTitle?.(r.title),await a.parse(e),new t(n,e,o,a,s)}async render(t,e){await this.renderer.draw(this.text,t,e,this)}getParser(){return this.parser}getType(){return this.type}},Jt=[],te=(0,f.K2)((()=>{Jt.forEach((t=>{t()})),Jt=[]}),"attachFunctions"),ee="graphics-document document";function re(t,e){t.attr("role",ee),""!==e&&t.attr("aria-roledescription",e)}function ie(t,e,r,i){if(void 0!==t.insert){if(r){const e=`chart-desc-${i}`;t.attr("aria-describedby",e),t.insert("desc",":first-child").attr("id",e).text(r)}if(e){const r=`chart-title-${i}`;t.attr("aria-labelledby",r),t.insert("title",":first-child").attr("id",r).text(e)}}}(0,f.K2)(re,"setA11yDiagramInfo"),(0,f.K2)(ie,"addSVGa11yTitleDescription");var ne=(0,f.K2)((t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart()),"cleanupComments");function oe(t){return null==t}function ae(t){return"object"==typeof t&&null!==t}function se(t){return Array.isArray(t)?t:oe(t)?[]:[t]}function le(t,e){var r,i,n,o;if(e)for(r=0,i=(o=Object.keys(e)).length;rs&&(e=i-s+(o=" ... ").length),r-i>s&&(r=i+s-(a=" ...").length),{str:o+t.slice(e,r).replace(/\t/g,"→")+a,pos:i-e+o.length}}function ye(t,e){return ue.repeat(" ",e-t.length)+t}function me(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),"number"!=typeof e.indent&&(e.indent=1),"number"!=typeof e.linesBefore&&(e.linesBefore=3),"number"!=typeof e.linesAfter&&(e.linesAfter=2);for(var r,i=/\r?\n|\r|\0/g,n=[0],o=[],a=-1;r=i.exec(t.buffer);)o.push(r.index),n.push(r.index+r[0].length),t.position<=r.index&&a<0&&(a=n.length-2);a<0&&(a=n.length-1);var s,l,c="",h=Math.min(t.line+e.linesAfter,o.length).toString().length,u=e.maxLength-(e.indent+h+3);for(s=1;s<=e.linesBefore&&!(a-s<0);s++)l=ge(t.buffer,n[a-s],o[a-s],t.position-(n[a]-n[a-s]),u),c=ue.repeat(" ",e.indent)+ye((t.line-s+1).toString(),h)+" | "+l.str+"\n"+c;for(l=ge(t.buffer,n[a],o[a],t.position,u),c+=ue.repeat(" ",e.indent)+ye((t.line+1).toString(),h)+" | "+l.str+"\n",c+=ue.repeat("-",e.indent+h+3+l.pos)+"^\n",s=1;s<=e.linesAfter&&!(a+s>=o.length);s++)l=ge(t.buffer,n[a+s],o[a+s],t.position-(n[a]-n[a+s]),u),c+=ue.repeat(" ",e.indent)+ye((t.line+s+1).toString(),h)+" | "+l.str+"\n";return c.replace(/\n$/,"")}(0,f.K2)(ge,"getLine"),(0,f.K2)(ye,"padStart"),(0,f.K2)(me,"makeSnippet");var xe=me,be=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],Ce=["scalar","sequence","mapping"];function ke(t){var e={};return null!==t&&Object.keys(t).forEach((function(r){t[r].forEach((function(t){e[String(t)]=r}))})),e}function _e(t,e){if(e=e||{},Object.keys(e).forEach((function(e){if(-1===be.indexOf(e))throw new fe('Unknown option "'+e+'" is met in definition of "'+t+'" YAML type.')})),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=ke(e.styleAliases||null),-1===Ce.indexOf(this.kind))throw new fe('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}(0,f.K2)(ke,"compileStyleAliases"),(0,f.K2)(_e,"Type$1");var we=_e;function ve(t,e){var r=[];return t[e].forEach((function(t){var e=r.length;r.forEach((function(r,i){r.tag===t.tag&&r.kind===t.kind&&r.multi===t.multi&&(e=i)})),r[e]=t})),r}function Te(){var t,e,r={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}};function i(t){t.multi?(r.multi[t.kind].push(t),r.multi.fallback.push(t)):r[t.kind][t.tag]=r.fallback[t.tag]=t}for((0,f.K2)(i,"collectType"),t=0,e=arguments.length;t=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)}),"binary"),octal:(0,f.K2)((function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)}),"octal"),decimal:(0,f.K2)((function(t){return t.toString(10)}),"decimal"),hexadecimal:(0,f.K2)((function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}),"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),je=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function We(t){return null!==t&&!(!je.test(t)||"_"===t[t.length-1])}function Ue(t){var e,r;return r="-"===(e=t.replace(/_/g,"").toLowerCase())[0]?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),".inf"===e?1===r?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===e?NaN:r*parseFloat(e,10)}(0,f.K2)(We,"resolveYamlFloat"),(0,f.K2)(Ue,"constructYamlFloat");var He=/^[-+]?[0-9]+e/;function Ye(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(ue.isNegativeZero(t))return"-0.0";return r=t.toString(10),He.test(r)?r.replace("e",".e"):r}function Ve(t){return"[object Number]"===Object.prototype.toString.call(t)&&(t%1!=0||ue.isNegativeZero(t))}(0,f.K2)(Ye,"representYamlFloat"),(0,f.K2)(Ve,"isFloat");var Ge=new we("tag:yaml.org,2002:float",{kind:"scalar",resolve:We,construct:Ue,predicate:Ve,represent:Ye,defaultStyle:"lowercase"}),Ze=Ae.extend({implicit:[Fe,De,Ke,Ge]}),Xe=Ze,Qe=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Je=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function tr(t){return null!==t&&(null!==Qe.exec(t)||null!==Je.exec(t))}function er(t){var e,r,i,n,o,a,s,l,c=0,h=null;if(null===(e=Qe.exec(t))&&(e=Je.exec(t)),null===e)throw new Error("Date resolve error");if(r=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(r,i,n));if(o=+e[4],a=+e[5],s=+e[6],e[7]){for(c=e[7].slice(0,3);c.length<3;)c+="0";c=+c}return e[9]&&(h=6e4*(60*+e[10]+ +(e[11]||0)),"-"===e[9]&&(h=-h)),l=new Date(Date.UTC(r,i,n,o,a,s,c)),h&&l.setTime(l.getTime()-h),l}function rr(t){return t.toISOString()}(0,f.K2)(tr,"resolveYamlTimestamp"),(0,f.K2)(er,"constructYamlTimestamp"),(0,f.K2)(rr,"representYamlTimestamp");var ir=new we("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:tr,construct:er,instanceOf:Date,represent:rr});function nr(t){return"<<"===t||null===t}(0,f.K2)(nr,"resolveYamlMerge");var or=new we("tag:yaml.org,2002:merge",{kind:"scalar",resolve:nr}),ar="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r";function sr(t){if(null===t)return!1;var e,r,i=0,n=t.length,o=ar;for(r=0;r64)){if(e<0)return!1;i+=6}return i%8==0}function lr(t){var e,r,i=t.replace(/[\r\n=]/g,""),n=i.length,o=ar,a=0,s=[];for(e=0;e>16&255),s.push(a>>8&255),s.push(255&a)),a=a<<6|o.indexOf(i.charAt(e));return 0==(r=n%4*6)?(s.push(a>>16&255),s.push(a>>8&255),s.push(255&a)):18===r?(s.push(a>>10&255),s.push(a>>2&255)):12===r&&s.push(a>>4&255),new Uint8Array(s)}function cr(t){var e,r,i="",n=0,o=t.length,a=ar;for(e=0;e>18&63],i+=a[n>>12&63],i+=a[n>>6&63],i+=a[63&n]),n=(n<<8)+t[e];return 0==(r=o%3)?(i+=a[n>>18&63],i+=a[n>>12&63],i+=a[n>>6&63],i+=a[63&n]):2===r?(i+=a[n>>10&63],i+=a[n>>4&63],i+=a[n<<2&63],i+=a[64]):1===r&&(i+=a[n>>2&63],i+=a[n<<4&63],i+=a[64],i+=a[64]),i}function hr(t){return"[object Uint8Array]"===Object.prototype.toString.call(t)}(0,f.K2)(sr,"resolveYamlBinary"),(0,f.K2)(lr,"constructYamlBinary"),(0,f.K2)(cr,"representYamlBinary"),(0,f.K2)(hr,"isBinary");var ur=new we("tag:yaml.org,2002:binary",{kind:"scalar",resolve:sr,construct:lr,predicate:hr,represent:cr}),dr=Object.prototype.hasOwnProperty,pr=Object.prototype.toString;function fr(t){if(null===t)return!0;var e,r,i,n,o,a=[],s=t;for(e=0,r=s.length;e>10),56320+(t-65536&1023))}(0,f.K2)(Nr,"_class"),(0,f.K2)(qr,"is_EOL"),(0,f.K2)(zr,"is_WHITE_SPACE"),(0,f.K2)(Kr,"is_WS_OR_EOL"),(0,f.K2)(jr,"is_FLOW_INDICATOR"),(0,f.K2)(Wr,"fromHexCode"),(0,f.K2)(Ur,"escapedHexLen"),(0,f.K2)(Hr,"fromDecimalCode"),(0,f.K2)(Yr,"simpleEscapeSequence"),(0,f.K2)(Vr,"charFromCodepoint");var Gr,Zr=new Array(256),Xr=new Array(256);for(Gr=0;Gr<256;Gr++)Zr[Gr]=Yr(Gr)?1:0,Xr[Gr]=Yr(Gr);function Qr(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||Tr,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Jr(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=xe(r),new fe(e,r)}function ti(t,e){throw Jr(t,e)}function ei(t,e){t.onWarning&&t.onWarning.call(null,Jr(t,e))}(0,f.K2)(Qr,"State$1"),(0,f.K2)(Jr,"generateError"),(0,f.K2)(ti,"throwError"),(0,f.K2)(ei,"throwWarning");var ri={YAML:(0,f.K2)((function(t,e,r){var i,n,o;null!==t.version&&ti(t,"duplication of %YAML directive"),1!==r.length&&ti(t,"YAML directive accepts exactly one argument"),null===(i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]))&&ti(t,"ill-formed argument of the YAML directive"),n=parseInt(i[1],10),o=parseInt(i[2],10),1!==n&&ti(t,"unacceptable YAML version of the document"),t.version=r[0],t.checkLineBreaks=o<2,1!==o&&2!==o&&ei(t,"unsupported YAML version of the document")}),"handleYamlDirective"),TAG:(0,f.K2)((function(t,e,r){var i,n;2!==r.length&&ti(t,"TAG directive accepts exactly two arguments"),i=r[0],n=r[1],Rr.test(i)||ti(t,"ill-formed tag handle (first argument) of the TAG directive"),Sr.call(t.tagMap,i)&&ti(t,'there is a previously declared suffix for "'+i+'" tag handle'),Pr.test(n)||ti(t,"ill-formed tag prefix (second argument) of the TAG directive");try{n=decodeURIComponent(n)}catch(e){ti(t,"tag prefix is malformed: "+n)}t.tagMap[i]=n}),"handleTagDirective")};function ii(t,e,r,i){var n,o,a,s;if(e1&&(t.result+=ue.repeat("\n",e-1))}function hi(t,e,r){var i,n,o,a,s,l,c,h,u=t.kind,d=t.result;if(Kr(h=t.input.charCodeAt(t.position))||jr(h)||35===h||38===h||42===h||33===h||124===h||62===h||39===h||34===h||37===h||64===h||96===h)return!1;if((63===h||45===h)&&(Kr(i=t.input.charCodeAt(t.position+1))||r&&jr(i)))return!1;for(t.kind="scalar",t.result="",n=o=t.position,a=!1;0!==h;){if(58===h){if(Kr(i=t.input.charCodeAt(t.position+1))||r&&jr(i))break}else if(35===h){if(Kr(t.input.charCodeAt(t.position-1)))break}else{if(t.position===t.lineStart&&li(t)||r&&jr(h))break;if(qr(h)){if(s=t.line,l=t.lineStart,c=t.lineIndent,si(t,!1,-1),t.lineIndent>=e){a=!0,h=t.input.charCodeAt(t.position);continue}t.position=o,t.line=s,t.lineStart=l,t.lineIndent=c;break}}a&&(ii(t,n,o,!1),ci(t,t.line-s),n=o=t.position,a=!1),zr(h)||(o=t.position+1),h=t.input.charCodeAt(++t.position)}return ii(t,n,o,!1),!!t.result||(t.kind=u,t.result=d,!1)}function ui(t,e){var r,i,n;if(39!==(r=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,i=n=t.position;0!==(r=t.input.charCodeAt(t.position));)if(39===r){if(ii(t,i,t.position,!0),39!==(r=t.input.charCodeAt(++t.position)))return!0;i=t.position,t.position++,n=t.position}else qr(r)?(ii(t,i,n,!0),ci(t,si(t,!1,e)),i=n=t.position):t.position===t.lineStart&&li(t)?ti(t,"unexpected end of the document within a single quoted scalar"):(t.position++,n=t.position);ti(t,"unexpected end of the stream within a single quoted scalar")}function di(t,e){var r,i,n,o,a,s;if(34!==(s=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,r=i=t.position;0!==(s=t.input.charCodeAt(t.position));){if(34===s)return ii(t,r,t.position,!0),t.position++,!0;if(92===s){if(ii(t,r,t.position,!0),qr(s=t.input.charCodeAt(++t.position)))si(t,!1,e);else if(s<256&&Zr[s])t.result+=Xr[s],t.position++;else if((a=Ur(s))>0){for(n=a,o=0;n>0;n--)(a=Wr(s=t.input.charCodeAt(++t.position)))>=0?o=(o<<4)+a:ti(t,"expected hexadecimal character");t.result+=Vr(o),t.position++}else ti(t,"unknown escape sequence");r=i=t.position}else qr(s)?(ii(t,r,i,!0),ci(t,si(t,!1,e)),r=i=t.position):t.position===t.lineStart&&li(t)?ti(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}ti(t,"unexpected end of the stream within a double quoted scalar")}function pi(t,e){var r,i,n,o,a,s,l,c,h,u,d,p,f=!0,g=t.tag,y=t.anchor,m=Object.create(null);if(91===(p=t.input.charCodeAt(t.position)))a=93,c=!1,o=[];else{if(123!==p)return!1;a=125,c=!0,o={}}for(null!==t.anchor&&(t.anchorMap[t.anchor]=o),p=t.input.charCodeAt(++t.position);0!==p;){if(si(t,!0,e),(p=t.input.charCodeAt(t.position))===a)return t.position++,t.tag=g,t.anchor=y,t.kind=c?"mapping":"sequence",t.result=o,!0;f?44===p&&ti(t,"expected the node content, but found ','"):ti(t,"missed comma between flow collection entries"),d=null,s=l=!1,63===p&&Kr(t.input.charCodeAt(t.position+1))&&(s=l=!0,t.position++,si(t,!0,e)),r=t.line,i=t.lineStart,n=t.position,Ci(t,e,Ar,!1,!0),u=t.tag,h=t.result,si(t,!0,e),p=t.input.charCodeAt(t.position),!l&&t.line!==r||58!==p||(s=!0,p=t.input.charCodeAt(++t.position),si(t,!0,e),Ci(t,e,Ar,!1,!0),d=t.result),c?oi(t,o,m,u,h,d,r,i,n):s?o.push(oi(t,null,m,u,h,d,r,i,n)):o.push(h),si(t,!0,e),44===(p=t.input.charCodeAt(t.position))?(f=!0,p=t.input.charCodeAt(++t.position)):f=!1}ti(t,"unexpected end of the stream within a flow collection")}function fi(t,e){var r,i,n,o,a=Fr,s=!1,l=!1,c=e,h=0,u=!1;if(124===(o=t.input.charCodeAt(t.position)))i=!1;else{if(62!==o)return!1;i=!0}for(t.kind="scalar",t.result="";0!==o;)if(43===(o=t.input.charCodeAt(++t.position))||45===o)Fr===a?a=43===o?$r:Er:ti(t,"repeat of a chomping mode identifier");else{if(!((n=Hr(o))>=0))break;0===n?ti(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?ti(t,"repeat of an indentation width identifier"):(c=e+n-1,l=!0)}if(zr(o)){do{o=t.input.charCodeAt(++t.position)}while(zr(o));if(35===o)do{o=t.input.charCodeAt(++t.position)}while(!qr(o)&&0!==o)}for(;0!==o;){for(ai(t),t.lineIndent=0,o=t.input.charCodeAt(t.position);(!l||t.lineIndentc&&(c=t.lineIndent),qr(o))h++;else{if(t.lineIndente)&&0!==i)ti(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(m&&(a=t.line,s=t.lineStart,l=t.position),Ci(t,e,Lr,!0,n)&&(m?g=t.result:y=t.result),m||(oi(t,d,p,f,g,y,a,s,l),f=g=y=null),si(t,!0,-1),c=t.input.charCodeAt(t.position)),(t.line===o||t.lineIndent>e)&&0!==c)ti(t,"bad indentation of a mapping entry");else if(t.lineIndente?f=1:t.lineIndent===e?f=0:t.lineIndente?f=1:t.lineIndent===e?f=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),l=0,c=t.implicitTypes.length;l"),null!==t.result&&u.kind!==t.kind&&ti(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+u.kind+'", not "'+t.kind+'"'),u.resolve(t.result,t.tag)?(t.result=u.construct(t.result,t.tag),null!==t.anchor&&(t.anchorMap[t.anchor]=t.result)):ti(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return null!==t.listener&&t.listener("close",t),null!==t.tag||null!==t.anchor||y}function ki(t){var e,r,i,n,o=t.position,a=!1;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);0!==(n=t.input.charCodeAt(t.position))&&(si(t,!0,-1),n=t.input.charCodeAt(t.position),!(t.lineIndent>0||37!==n));){for(a=!0,n=t.input.charCodeAt(++t.position),e=t.position;0!==n&&!Kr(n);)n=t.input.charCodeAt(++t.position);for(i=[],(r=t.input.slice(e,t.position)).length<1&&ti(t,"directive name must not be less than one character in length");0!==n;){for(;zr(n);)n=t.input.charCodeAt(++t.position);if(35===n){do{n=t.input.charCodeAt(++t.position)}while(0!==n&&!qr(n));break}if(qr(n))break;for(e=t.position;0!==n&&!Kr(n);)n=t.input.charCodeAt(++t.position);i.push(t.input.slice(e,t.position))}0!==n&&ai(t),Sr.call(ri,r)?ri[r](t,r,i):ei(t,'unknown document directive "'+r+'"')}si(t,!0,-1),0===t.lineIndent&&45===t.input.charCodeAt(t.position)&&45===t.input.charCodeAt(t.position+1)&&45===t.input.charCodeAt(t.position+2)?(t.position+=3,si(t,!0,-1)):a&&ti(t,"directives end mark is expected"),Ci(t,t.lineIndent-1,Lr,!1,!0),si(t,!0,-1),t.checkLineBreaks&&Dr.test(t.input.slice(o,t.position))&&ei(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&li(t)?46===t.input.charCodeAt(t.position)&&(t.position+=3,si(t,!0,-1)):t.position=55296&&i<=56319&&e+1=56320&&r<=57343?1024*(i-55296)+r-56320+65536:i}function xn(t){return/^\n* /.test(t)}(0,f.K2)(sn,"State"),(0,f.K2)(ln,"indentString"),(0,f.K2)(cn,"generateNextLine"),(0,f.K2)(hn,"testImplicitResolving"),(0,f.K2)(un,"isWhitespace"),(0,f.K2)(dn,"isPrintable"),(0,f.K2)(pn,"isNsCharOrWhitespace"),(0,f.K2)(fn,"isPlainSafe"),(0,f.K2)(gn,"isPlainSafeFirst"),(0,f.K2)(yn,"isPlainSafeLast"),(0,f.K2)(mn,"codePointAt"),(0,f.K2)(xn,"needIndentIndicator");var bn=1,Cn=2,kn=3,_n=4,wn=5;function vn(t,e,r,i,n,o,a,s){var l,c=0,h=null,u=!1,d=!1,p=-1!==i,f=-1,g=gn(mn(t,0))&&yn(mn(t,t.length-1));if(e||a)for(l=0;l=65536?l+=2:l++){if(!dn(c=mn(t,l)))return wn;g=g&&fn(c,h,s),h=c}else{for(l=0;l=65536?l+=2:l++){if((c=mn(t,l))===Li)u=!0,p&&(d=d||l-f-1>i&&" "!==t[f+1],f=l);else if(!dn(c))return wn;g=g&&fn(c,h,s),h=c}d=d||p&&l-f-1>i&&" "!==t[f+1]}return u||d?r>9&&xn(t)?wn:a?o===an?wn:Cn:d?_n:kn:!g||a||n(t)?o===an?wn:Cn:bn}function Tn(t,e,r,i,n){t.dump=function(){if(0===e.length)return t.quotingType===an?'""':"''";if(!t.noCompatMode&&(-1!==tn.indexOf(e)||en.test(e)))return t.quotingType===an?'"'+e+'"':"'"+e+"'";var o=t.indent*Math.max(1,r),a=-1===t.lineWidth?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-o),s=i||t.flowLevel>-1&&r>=t.flowLevel;function l(e){return hn(t,e)}switch((0,f.K2)(l,"testAmbiguity"),vn(e,s,t.indent,a,l,t.quotingType,t.forceQuotes&&!i,n)){case bn:return e;case Cn:return"'"+e.replace(/'/g,"''")+"'";case kn:return"|"+Sn(e,t.indent)+An(ln(e,o));case _n:return">"+Sn(e,t.indent)+An(ln(Mn(e,a),o));case wn:return'"'+Ln(e)+'"';default:throw new fe("impossible error: invalid scalar style")}}()}function Sn(t,e){var r=xn(t)?String(e):"",i="\n"===t[t.length-1];return r+(!i||"\n"!==t[t.length-2]&&"\n"!==t?i?"":"-":"+")+"\n"}function An(t){return"\n"===t[t.length-1]?t.slice(0,-1):t}function Mn(t,e){for(var r,i,n,o=/(\n+)([^\n]*)/g,a=(r=-1!==(r=t.indexOf("\n"))?r:t.length,o.lastIndex=r,Bn(t.slice(0,r),e)),s="\n"===t[0]||" "===t[0];n=o.exec(t);){var l=n[1],c=n[2];i=" "===c[0],a+=l+(s||i||""===c?"":"\n")+Bn(c,e),s=i}return a}function Bn(t,e){if(""===t||" "===t[0])return t;for(var r,i,n=/ [^ ]/g,o=0,a=0,s=0,l="";r=n.exec(t);)(s=r.index)-o>e&&(i=a>o?a:s,l+="\n"+t.slice(o,i),o=i+1),a=s;return l+="\n",t.length-o>e&&a>o?l+=t.slice(o,a)+"\n"+t.slice(a+1):l+=t.slice(o),l.slice(1)}function Ln(t){for(var e,r="",i=0,n=0;n=65536?n+=2:n++)i=mn(t,n),!(e=Ji[i])&&dn(i)?(r+=t[n],i>=65536&&(r+=t[n+1])):r+=e||nn(i);return r}function Fn(t,e,r){var i,n,o,a="",s=t.tag;for(i=0,n=r.length;i1024&&(s+="? "),s+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),In(t,e,a,!1,!1)&&(l+=s+=t.dump));t.tag=c,t.dump="{"+l+"}"}function On(t,e,r,i){var n,o,a,s,l,c,h="",u=t.tag,d=Object.keys(r);if(!0===t.sortKeys)d.sort();else if("function"==typeof t.sortKeys)d.sort(t.sortKeys);else if(t.sortKeys)throw new fe("sortKeys must be a boolean or a function");for(n=0,o=d.length;n1024)&&(t.dump&&Li===t.dump.charCodeAt(0)?c+="?":c+="? "),c+=t.dump,l&&(c+=cn(t,e)),In(t,e+1,s,!0,l)&&(t.dump&&Li===t.dump.charCodeAt(0)?c+=":":c+=": ",h+=c+=t.dump));t.tag=u,t.dump=h||"{}"}function Dn(t,e,r){var i,n,o,a,s,l;for(o=0,a=(n=r?t.explicitTypes:t.implicitTypes).length;o tag resolver accepts not "'+l+'" style');i=s.represent[l](e,l)}t.dump=i}return!0}return!1}function In(t,e,r,i,n,o,a){t.tag=null,t.dump=r,Dn(t,r,!1)||Dn(t,r,!0);var s,l=Si.call(t.dump),c=i;i&&(i=t.flowLevel<0||t.flowLevel>e);var h,u,d="[object Object]"===l||"[object Array]"===l;if(d&&(u=-1!==(h=t.duplicates.indexOf(r))),(null!==t.tag&&"?"!==t.tag||u||2!==t.indent&&e>0)&&(n=!1),u&&t.usedDuplicates[h])t.dump="*ref_"+h;else{if(d&&u&&!t.usedDuplicates[h]&&(t.usedDuplicates[h]=!0),"[object Object]"===l)i&&0!==Object.keys(t.dump).length?(On(t,e,t.dump,n),u&&(t.dump="&ref_"+h+t.dump)):($n(t,e,t.dump),u&&(t.dump="&ref_"+h+" "+t.dump));else if("[object Array]"===l)i&&0!==t.dump.length?(t.noArrayIndent&&!a&&e>0?En(t,e-1,t.dump,n):En(t,e,t.dump,n),u&&(t.dump="&ref_"+h+t.dump)):(Fn(t,e,t.dump),u&&(t.dump="&ref_"+h+" "+t.dump));else{if("[object String]"!==l){if("[object Undefined]"===l)return!1;if(t.skipInvalid)return!1;throw new fe("unacceptable kind of an object to dump "+l)}"?"!==t.tag&&Tn(t,t.dump,e,o,c)}null!==t.tag&&"?"!==t.tag&&(s=encodeURI("!"===t.tag[0]?t.tag.slice(1):t.tag).replace(/!/g,"%21"),s="!"===t.tag[0]?"!"+s:"tag:yaml.org,2002:"===s.slice(0,18)?"!!"+s.slice(18):"!<"+s+">",t.dump=s+" "+t.dump)}return!0}function Rn(t,e){var r,i,n=[],o=[];for(Pn(t,n,o),r=0,i=o.length;rt.replace(/\r\n?/g,"\n").replace(/<(\w+)([^>]*)>/g,((t,e,r)=>"<"+e+r.replace(/="([^"]*)"/g,"='$1'")+">"))),"cleanupText"),Wn=(0,f.K2)((t=>{const{text:e,metadata:r}=Kn(t),{displayMode:i,title:n,config:o={}}=r;return i&&(o.gantt||(o.gantt={}),o.gantt.displayMode=i),{title:n,config:o,text:e}}),"processFrontmatter"),Un=(0,f.K2)((t=>{const e=u._K.detectInit(t)??{},r=u._K.detectDirective(t,"wrap");return Array.isArray(r)?e.wrap=r.some((({type:t})=>"wrap"===t)):"wrap"===r?.type&&(e.wrap=!0),{text:(0,u.vU)(t),directive:e}}),"processDirectives");function Hn(t){const e=jn(t),r=Wn(e),i=Un(r.text),n=(0,u.$t)(r.config,i.directive);return{code:t=ne(i.text),title:r.title,config:n}}function Yn(t){const e=(new TextEncoder).encode(t),r=Array.from(e,(t=>String.fromCodePoint(t))).join("");return btoa(r)}(0,f.K2)(Hn,"preprocessDiagram"),(0,f.K2)(Yn,"toBase64");var Vn=["foreignobject"],Gn=["dominant-baseline"];function Zn(t){const e=Hn(t);return(0,f.cL)(),(0,f.xA)(e.config??{}),e}async function Xn(t,e){Zt();try{const{code:e}=Zn(t);return{diagramType:(await lo(e)).type}}catch(t){if(e?.suppressErrors)return!1;throw t}}(0,f.K2)(Zn,"processAndSetConfigs"),(0,f.K2)(Xn,"parse");var Qn=(0,f.K2)(((t,e,r=[])=>`\n.${t} ${e} { ${r.join(" !important; ")} !important; }`),"cssImportantStyles"),Jn=(0,f.K2)(((t,e=new Map)=>{let r="";if(void 0!==t.themeCSS&&(r+=`\n${t.themeCSS}`),void 0!==t.fontFamily&&(r+=`\n:root { --mermaid-font-family: ${t.fontFamily}}`),void 0!==t.altFontFamily&&(r+=`\n:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),e instanceof Map){const i=t.htmlLabels??t.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach((t=>{(0,rt.A)(t.styles)||i.forEach((e=>{r+=Qn(t.id,e,t.styles)})),(0,rt.A)(t.textStyles)||(r+=Qn(t.id,"tspan",(t?.textStyles||[]).map((t=>t.replace("color","fill")))))}))}return r}),"createCssStyles"),to=(0,f.K2)(((t,e,r,i)=>{const n=Jn(t,r);return B(Z(`${i}{${(0,f.tM)(e,n,t.themeVariables)}}`),L)}),"createUserStyles"),eo=(0,f.K2)(((t="",e,r)=>{let i=t;return r||e||(i=i.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),i=(0,u.Sm)(i),i=i.replace(/
    /g,"
    "),i}),"cleanUpSvgCode"),ro=(0,f.K2)(((t="",e)=>``),"putIntoIFrame"),io=(0,f.K2)(((t,e,r,i,n)=>{const o=t.append("div");o.attr("id",r),i&&o.attr("style",i);const a=o.append("svg").attr("id",e).attr("width","100%").attr("xmlns","http://www.w3.org/2000/svg");return n&&a.attr("xmlns:xlink",n),a.append("g"),t}),"appendDivSvgG");function no(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}(0,f.K2)(no,"sandboxedIframe");var oo=(0,f.K2)(((t,e,r,i)=>{t.getElementById(e)?.remove(),t.getElementById(r)?.remove(),t.getElementById(i)?.remove()}),"removeExistingElements"),ao=(0,f.K2)((async function(t,e,r){Zt();const i=Zn(e);e=i.code;const n=(0,f.zj)();f.Rm.debug(n),e.length>(n?.maxTextSize??5e4)&&(e="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa");const o="#"+t,a="i"+t,s="#"+a,l="d"+t,c="#"+l,h=(0,f.K2)((()=>{const t=p?s:c,e=(0,y.Ltv)(t).node();e&&"remove"in e&&e.remove()}),"removeTempElements");let u=(0,y.Ltv)("body");const p="sandbox"===n.securityLevel,g="loose"===n.securityLevel,m=n.fontFamily;if(void 0!==r){if(r&&(r.innerHTML=""),p){const t=no((0,y.Ltv)(r),a);u=(0,y.Ltv)(t.nodes()[0].contentDocument.body),u.node().style.margin=0}else u=(0,y.Ltv)(r);io(u,t,l,`font-family: ${m}`,"http://www.w3.org/1999/xlink")}else{if(oo(document,t,l,a),p){const t=no((0,y.Ltv)("body"),a);u=(0,y.Ltv)(t.nodes()[0].contentDocument.body),u.node().style.margin=0}else u=(0,y.Ltv)("body");io(u,t,l)}let x,b;try{x=await Qt.fromText(e,{title:i.title})}catch(t){if(n.suppressErrorRendering)throw h(),t;x=await Qt.fromText("error"),b=t}const C=u.select(c).node(),k=x.type,_=C.firstChild,w=_.firstChild,v=x.renderer.getClasses?.(e,x),T=to(n,k,v,o),S=document.createElement("style");S.innerHTML=T,_.insertBefore(S,w);try{await x.renderer.draw(e,t,d.r,x)}catch(r){throw n.suppressErrorRendering?h():Dt.draw(e,t,d.r),r}const A=u.select(`${c} svg`),M=x.db.getAccTitle?.(),B=x.db.getAccDescription?.();co(k,A,M,B),u.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns","http://www.w3.org/1999/xhtml");let L=u.select(c).node().innerHTML;if(f.Rm.debug("config.arrowMarkerAbsolute",n.arrowMarkerAbsolute),L=eo(L,p,(0,f._3)(n.arrowMarkerAbsolute)),p){const t=u.select(c+" svg").node();L=ro(L,t)}else g||(L=et.sanitize(L,{ADD_TAGS:Vn,ADD_ATTR:Gn}));if(te(),b)throw b;return h(),{diagramType:k,svg:L,bindFunctions:x.db.bindFunctions}}),"render");function so(t={}){const e=(0,f.hH)({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),(0,f.wZ)(e),e?.theme&&e.theme in f.H$?e.themeVariables=f.H$[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=f.H$.default.getThemeVariables(e.themeVariables));const r="object"==typeof e?(0,f.UU)(e):(0,f.Q2)();(0,f.He)(r.logLevel),Zt()}(0,f.K2)(so,"initialize");var lo=(0,f.K2)(((t,e={})=>{const{code:r}=Hn(t);return Qt.fromText(r,e)}),"getDiagramFromText");function co(t,e,r,i){re(e,t),ie(e,r,i,e.attr("id"))}(0,f.K2)(co,"addA11yInfo");var ho=Object.freeze({render:ao,parse:Xn,getDiagramFromText:lo,initialize:so,getConfig:f.zj,setConfig:f.Nk,getSiteConfig:f.Q2,updateSiteConfig:f.B6,reset:(0,f.K2)((()=>{(0,f.cL)()}),"reset"),globalReset:(0,f.K2)((()=>{(0,f.cL)(f.sb)}),"globalReset"),defaultConfig:f.sb});(0,f.He)((0,f.zj)().logLevel),(0,f.cL)((0,f.zj)());var uo=(0,f.K2)(((t,e,r)=>{f.Rm.warn(t),(0,u.dq)(t)?(r&&r(t.str,t.hash),e.push({...t,message:t.str,error:t})):(r&&r(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))}),"handleError"),po=(0,f.K2)((async function(t={querySelector:".mermaid"}){try{await fo(t)}catch(e){if((0,u.dq)(e)&&f.Rm.error(e.str),To.parseError&&To.parseError(e),!t.suppressErrors)throw f.Rm.error("Use the suppressErrors option to suppress these errors"),e}}),"run"),fo=(0,f.K2)((async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){const i=ho.getConfig();let n;if(f.Rm.debug((t?"":"No ")+"Callback function found"),r)n=r;else{if(!e)throw new Error("Nodes and querySelector are both undefined");n=document.querySelectorAll(e)}f.Rm.debug(`Found ${n.length} diagrams`),void 0!==i?.startOnLoad&&(f.Rm.debug("Start On Load: "+i?.startOnLoad),ho.updateSiteConfig({startOnLoad:i?.startOnLoad}));const o=new u._K.InitIDGenerator(i.deterministicIds,i.deterministicIDSeed);let a;const s=[];for(const e of Array.from(n)){if(f.Rm.info("Rendering diagram: "+e.id),e.getAttribute("data-processed"))continue;e.setAttribute("data-processed","true");const r=`mermaid-${o.next()}`;a=e.innerHTML,a=(0,g.T)(u._K.entityDecode(a)).trim().replace(//gi,"
    ");const i=u._K.detectInit(a);i&&f.Rm.debug("Detected early reinit: ",i);try{const{svg:i,bindFunctions:n}=await vo(r,a,e);e.innerHTML=i,t&&await t(r),n&&n(e)}catch(t){uo(t,s,To.parseError)}}if(s.length>0)throw s[0]}),"runThrowsErrors"),go=(0,f.K2)((function(t){ho.initialize(t)}),"initialize"),yo=(0,f.K2)((async function(t,e,r){f.Rm.warn("mermaid.init is deprecated. Please use run instead."),t&&go(t);const i={postRenderCallback:r,querySelector:".mermaid"};"string"==typeof e?i.querySelector=e:e&&(e instanceof HTMLElement?i.nodes=[e]:i.nodes=e),await po(i)}),"init"),mo=(0,f.K2)((async(t,{lazyLoad:e=!0}={})=>{Zt(),(0,f.Xd)(...t),!1===e&&await Xt()}),"registerExternalDiagrams"),xo=(0,f.K2)((function(){if(To.startOnLoad){const{startOnLoad:t}=ho.getConfig();t&&To.run().catch((t=>f.Rm.error("Mermaid failed to initialize",t)))}}),"contentLoaded");"undefined"!=typeof document&&window.addEventListener("load",xo,!1);var bo=(0,f.K2)((function(t){To.parseError=t}),"setParseErrorHandler"),Co=[],ko=!1,_o=(0,f.K2)((async()=>{if(!ko){for(ko=!0;Co.length>0;){const t=Co.shift();if(t)try{await t()}catch(t){f.Rm.error("Error executing queue",t)}}ko=!1}}),"executeQueue"),wo=(0,f.K2)((async(t,e)=>new Promise(((r,i)=>{const n=(0,f.K2)((()=>new Promise(((n,o)=>{ho.parse(t,e).then((t=>{n(t),r(t)}),(t=>{f.Rm.error("Error parsing",t),To.parseError?.(t),o(t),i(t)}))}))),"performCall");Co.push(n),_o().catch(i)}))),"parse"),vo=(0,f.K2)(((t,e,r)=>new Promise(((i,n)=>{const o=(0,f.K2)((()=>new Promise(((o,a)=>{ho.render(t,e,r).then((t=>{o(t),i(t)}),(t=>{f.Rm.error("Error parsing",t),To.parseError?.(t),a(t),n(t)}))}))),"performCall");Co.push(o),_o().catch(n)}))),"render"),To={startOnLoad:!0,mermaidAPI:ho,parse:wo,render:vo,init:yo,run:po,registerExternalDiagrams:mo,registerLayoutLoaders:h.sO,initialize:go,parseError:void 0,contentLoaded:xo,setParseErrorHandler:bo,detectType:f.Ch},So=To;document.addEventListener("DOMContentLoaded",(function(){let e=t.namespace("hugo-geekdoc").get("color-theme")||c,r=window.matchMedia("(prefers-color-scheme: dark)"),i=!1,n="default";("dark"===e||e===c&&r.matches)&&(i=!0,n="dark"),So.initialize({startOnLoad:!1,flowchart:{useMaxWidth:!0},theme:n,themeVariables:{darkMode:i}}),document.querySelectorAll(".mermaid").forEach((function(t){let e="graph-"+l();So.render(e,t.innerText).then((({svg:e,bindFunctions:r})=>{t.innerHTML=e,r?.(t)}))}))}))})()})(); \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/main-287d5b5c.min.css b/themes/hugo-geekdoc/static/main-287d5b5c.min.css deleted file mode 100644 index 9553a1662..000000000 --- a/themes/hugo-geekdoc/static/main-287d5b5c.min.css +++ /dev/null @@ -1 +0,0 @@ -/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0;line-height:1.2em}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.flex{display:flex}.flex-auto{flex:1 1 auto}.flex-25{flex:1 1 25%}.flex-inline{display:inline-flex}.flex-even{flex:1 1}.flex-wrap{flex-wrap:wrap}.flex-grid{flex-direction:column;border:1px solid var(--accent-color);border-radius:.15rem;background:var(--accent-color-lite)}.flex-gap{flex-wrap:wrap;gap:1rem}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.align-center{align-items:center}.mx-auto{margin:0 auto}.text-center{text-align:center}.text-right{text-align:right}.no-wrap{white-space:nowrap}.hidden{display:none !important}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.table-wrap{overflow:auto;margin:1rem 0}.table-wrap>table{margin:0 !important}.badge-placeholder{display:inline-block;min-width:4rem}@font-face{font-family:"Liberation Sans";src:url("fonts/LiberationSans-Bold.woff2") format("woff2"),url("fonts/LiberationSans-Bold.woff") format("woff");font-weight:bold;font-style:normal;font-display:swap}@font-face{font-family:"Liberation Sans";src:url("fonts/LiberationSans-BoldItalic.woff2") format("woff2"),url("fonts/LiberationSans-BoldItalic.woff") format("woff");font-weight:bold;font-style:italic;font-display:swap}@font-face{font-family:"Liberation Sans";src:url("fonts/LiberationSans-Italic.woff2") format("woff2"),url("fonts/LiberationSans-Italic.woff") format("woff");font-weight:normal;font-style:italic;font-display:swap}@font-face{font-family:"Liberation Sans";src:url("fonts/LiberationSans.woff2") format("woff2"),url("fonts/LiberationSans.woff") format("woff");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:"Liberation Mono";src:url("fonts/LiberationMono.woff2") format("woff2"),url("fonts/LiberationMono.woff") format("woff");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:"Metropolis";src:url("fonts/Metropolis.woff2") format("woff2"),url("fonts/Metropolis.woff") format("woff");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:"GeekdocIcons";src:url("fonts/GeekdocIcons.woff2") format("woff2"),url("fonts/GeekdocIcons.woff") format("woff");font-weight:normal;font-style:normal;font-display:swap}body{font-family:"Liberation Sans",sans-serif}code,.gdoc-error__title{font-family:"Liberation Mono",monospace}.gdoc-header{font-family:"Metropolis",sans-serif}:root,:root[color-theme=light]{--code-max-height: none;--header-background: rgb(32, 83, 117);--header-font-color: rgb(255, 255, 255);--body-background: white;--body-font-color: rgb(52, 58, 64);--mark-color: rgb(255, 171, 0);--button-background: #22597d;--button-border-color: rgb(32, 83, 117);--link-color: rgb(10, 83, 154);--link-color-visited: rgb(119, 73, 191);--hint-link-color: rgb(10, 83, 154);--hint-link-color-visited: rgb(119, 73, 191);--accent-color-dark: rgb(206, 212, 218);--accent-color: rgb(233, 236, 239);--accent-color-lite: rgb(248, 249, 250);--control-icons: #b2bac1;--footer-background: rgb(17, 43, 60);--footer-font-color: rgb(255, 255, 255);--footer-link-color: rgb(246, 107, 14);--footer-link-color-visited: rgb(246, 107, 14)}:root .dark-mode-dim .gdoc-markdown img,:root[color-theme=light] .dark-mode-dim .gdoc-markdown img{filter:none}:root .gdoc-markdown .gdoc-hint,:root .gdoc-markdown .gdoc-props__tag,:root .gdoc-markdown .admonitionblock,:root[color-theme=light] .gdoc-markdown .gdoc-hint,:root[color-theme=light] .gdoc-markdown .gdoc-props__tag,:root[color-theme=light] .gdoc-markdown .admonitionblock{filter:none}:root .gdoc-markdown .gdoc-hint__title,:root .gdoc-markdown .admonitionblock table td:first-child,:root[color-theme=light] .gdoc-markdown .gdoc-hint__title,:root[color-theme=light] .gdoc-markdown .admonitionblock table td:first-child{background-color:rgba(134,142,150,.05)}:root .chroma,:root[color-theme=light] .chroma{color:var(--code-font-color)}:root .chroma .lntable td:nth-child(2) code .hl,:root[color-theme=light] .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root .highlight pre.chroma,:root[color-theme=light] .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root .chroma .lntable,:root[color-theme=light] .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root .chroma .lntable pre.chroma,:root[color-theme=light] .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root .chroma .lntable td:first-child code,:root[color-theme=light] .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root .chroma .lntable td:nth-child(2),:root[color-theme=light] .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root .chroma .x,:root[color-theme=light] .chroma .x{color:inherit}:root .chroma .err,:root[color-theme=light] .chroma .err{color:#a61717;background-color:#e3d2d2}:root .chroma .lntd,:root[color-theme=light] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root .chroma .hl,:root[color-theme=light] .chroma .hl{display:block;width:100%;background-color:#ffc}:root .chroma .lnt,:root[color-theme=light] .chroma .lnt{padding:0 .8em}:root .chroma .ln,:root[color-theme=light] .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em}:root .chroma .k,:root[color-theme=light] .chroma .k{color:#000;font-weight:bold}:root .chroma .kc,:root[color-theme=light] .chroma .kc{color:#000;font-weight:bold}:root .chroma .kd,:root[color-theme=light] .chroma .kd{color:#000;font-weight:bold}:root .chroma .kn,:root[color-theme=light] .chroma .kn{color:#000;font-weight:bold}:root .chroma .kp,:root[color-theme=light] .chroma .kp{color:#000;font-weight:bold}:root .chroma .kr,:root[color-theme=light] .chroma .kr{color:#000;font-weight:bold}:root .chroma .kt,:root[color-theme=light] .chroma .kt{color:#458;font-weight:bold}:root .chroma .n,:root[color-theme=light] .chroma .n{color:inherit}:root .chroma .na,:root[color-theme=light] .chroma .na{color:#006767}:root .chroma .nb,:root[color-theme=light] .chroma .nb{color:#556165}:root .chroma .bp,:root[color-theme=light] .chroma .bp{color:#676767}:root .chroma .nc,:root[color-theme=light] .chroma .nc{color:#458;font-weight:bold}:root .chroma .no,:root[color-theme=light] .chroma .no{color:#006767}:root .chroma .nd,:root[color-theme=light] .chroma .nd{color:#3c5d5d;font-weight:bold}:root .chroma .ni,:root[color-theme=light] .chroma .ni{color:purple}:root .chroma .ne,:root[color-theme=light] .chroma .ne{color:#900;font-weight:bold}:root .chroma .nf,:root[color-theme=light] .chroma .nf{color:#900;font-weight:bold}:root .chroma .fm,:root[color-theme=light] .chroma .fm{color:inherit}:root .chroma .nl,:root[color-theme=light] .chroma .nl{color:#900;font-weight:bold}:root .chroma .nn,:root[color-theme=light] .chroma .nn{color:#555}:root .chroma .nx,:root[color-theme=light] .chroma .nx{color:inherit}:root .chroma .py,:root[color-theme=light] .chroma .py{color:inherit}:root .chroma .nt,:root[color-theme=light] .chroma .nt{color:navy}:root .chroma .nv,:root[color-theme=light] .chroma .nv{color:#006767}:root .chroma .vc,:root[color-theme=light] .chroma .vc{color:#006767}:root .chroma .vg,:root[color-theme=light] .chroma .vg{color:#006767}:root .chroma .vi,:root[color-theme=light] .chroma .vi{color:#006767}:root .chroma .vm,:root[color-theme=light] .chroma .vm{color:inherit}:root .chroma .l,:root[color-theme=light] .chroma .l{color:inherit}:root .chroma .ld,:root[color-theme=light] .chroma .ld{color:inherit}:root .chroma .s,:root[color-theme=light] .chroma .s{color:#d14}:root .chroma .sa,:root[color-theme=light] .chroma .sa{color:#d14}:root .chroma .sb,:root[color-theme=light] .chroma .sb{color:#d14}:root .chroma .sc,:root[color-theme=light] .chroma .sc{color:#d14}:root .chroma .dl,:root[color-theme=light] .chroma .dl{color:#d14}:root .chroma .sd,:root[color-theme=light] .chroma .sd{color:#d14}:root .chroma .s2,:root[color-theme=light] .chroma .s2{color:#d14}:root .chroma .se,:root[color-theme=light] .chroma .se{color:#d14}:root .chroma .sh,:root[color-theme=light] .chroma .sh{color:#d14}:root .chroma .si,:root[color-theme=light] .chroma .si{color:#d14}:root .chroma .sx,:root[color-theme=light] .chroma .sx{color:#d14}:root .chroma .sr,:root[color-theme=light] .chroma .sr{color:#009926}:root .chroma .s1,:root[color-theme=light] .chroma .s1{color:#d14}:root .chroma .ss,:root[color-theme=light] .chroma .ss{color:#990073}:root .chroma .m,:root[color-theme=light] .chroma .m{color:#027e83}:root .chroma .mb,:root[color-theme=light] .chroma .mb{color:#027e83}:root .chroma .mf,:root[color-theme=light] .chroma .mf{color:#027e83}:root .chroma .mh,:root[color-theme=light] .chroma .mh{color:#027e83}:root .chroma .mi,:root[color-theme=light] .chroma .mi{color:#027e83}:root .chroma .il,:root[color-theme=light] .chroma .il{color:#027e83}:root .chroma .mo,:root[color-theme=light] .chroma .mo{color:#027e83}:root .chroma .o,:root[color-theme=light] .chroma .o{color:#000;font-weight:bold}:root .chroma .ow,:root[color-theme=light] .chroma .ow{color:#000;font-weight:bold}:root .chroma .p,:root[color-theme=light] .chroma .p{color:inherit}:root .chroma .c,:root[color-theme=light] .chroma .c{color:#676765;font-style:italic}:root .chroma .ch,:root[color-theme=light] .chroma .ch{color:#676765;font-style:italic}:root .chroma .cm,:root[color-theme=light] .chroma .cm{color:#676765;font-style:italic}:root .chroma .c1,:root[color-theme=light] .chroma .c1{color:#676765;font-style:italic}:root .chroma .cs,:root[color-theme=light] .chroma .cs{color:#676767;font-weight:bold;font-style:italic}:root .chroma .cp,:root[color-theme=light] .chroma .cp{color:#676767;font-weight:bold;font-style:italic}:root .chroma .cpf,:root[color-theme=light] .chroma .cpf{color:#676767;font-weight:bold;font-style:italic}:root .chroma .g,:root[color-theme=light] .chroma .g{color:inherit}:root .chroma .gd,:root[color-theme=light] .chroma .gd{color:#000;background-color:#fdd}:root .chroma .ge,:root[color-theme=light] .chroma .ge{color:#000;font-style:italic}:root .chroma .gr,:root[color-theme=light] .chroma .gr{color:#a00}:root .chroma .gh,:root[color-theme=light] .chroma .gh{color:#676767}:root .chroma .gi,:root[color-theme=light] .chroma .gi{color:#000;background-color:#dfd}:root .chroma .go,:root[color-theme=light] .chroma .go{color:#6f6f6f}:root .chroma .gp,:root[color-theme=light] .chroma .gp{color:#555}:root .chroma .gs,:root[color-theme=light] .chroma .gs{font-weight:bold}:root .chroma .gu,:root[color-theme=light] .chroma .gu{color:#5f5f5f}:root .chroma .gt,:root[color-theme=light] .chroma .gt{color:#a00}:root .chroma .gl,:root[color-theme=light] .chroma .gl{text-decoration:underline}:root .chroma .w,:root[color-theme=light] .chroma .w{color:#bbb}:root,:root[color-theme=light]{--code-background: rgb(248, 249, 250);--code-accent-color: #e6eaed;--code-accent-color-lite: #f2f4f6;--code-font-color: rgb(70, 70, 70);--code-copy-background: rgb(248, 249, 250);--code-copy-font-color: #6c6c6c;--code-copy-border-color: #797979;--code-copy-success-color: rgb(0, 200, 83)}@media(prefers-color-scheme: light){:root{--header-background: rgb(32, 83, 117);--header-font-color: rgb(255, 255, 255);--body-background: white;--body-font-color: rgb(52, 58, 64);--mark-color: rgb(255, 171, 0);--button-background: #22597d;--button-border-color: rgb(32, 83, 117);--link-color: rgb(10, 83, 154);--link-color-visited: rgb(119, 73, 191);--hint-link-color: rgb(10, 83, 154);--hint-link-color-visited: rgb(119, 73, 191);--accent-color-dark: rgb(206, 212, 218);--accent-color: rgb(233, 236, 239);--accent-color-lite: rgb(248, 249, 250);--control-icons: #b2bac1;--footer-background: rgb(17, 43, 60);--footer-font-color: rgb(255, 255, 255);--footer-link-color: rgb(246, 107, 14);--footer-link-color-visited: rgb(246, 107, 14)}:root .dark-mode-dim .gdoc-markdown img{filter:none}:root .gdoc-markdown .gdoc-hint,:root .gdoc-markdown .gdoc-props__tag,:root .gdoc-markdown .admonitionblock{filter:none}:root .gdoc-markdown .gdoc-hint__title,:root .gdoc-markdown .admonitionblock table td:first-child{background-color:rgba(134,142,150,.05)}:root .chroma{color:var(--code-font-color)}:root .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root .chroma .x{color:inherit}:root .chroma .err{color:#a61717;background-color:#e3d2d2}:root .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root .chroma .hl{display:block;width:100%;background-color:#ffc}:root .chroma .lnt{padding:0 .8em}:root .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em}:root .chroma .k{color:#000;font-weight:bold}:root .chroma .kc{color:#000;font-weight:bold}:root .chroma .kd{color:#000;font-weight:bold}:root .chroma .kn{color:#000;font-weight:bold}:root .chroma .kp{color:#000;font-weight:bold}:root .chroma .kr{color:#000;font-weight:bold}:root .chroma .kt{color:#458;font-weight:bold}:root .chroma .n{color:inherit}:root .chroma .na{color:#006767}:root .chroma .nb{color:#556165}:root .chroma .bp{color:#676767}:root .chroma .nc{color:#458;font-weight:bold}:root .chroma .no{color:#006767}:root .chroma .nd{color:#3c5d5d;font-weight:bold}:root .chroma .ni{color:purple}:root .chroma .ne{color:#900;font-weight:bold}:root .chroma .nf{color:#900;font-weight:bold}:root .chroma .fm{color:inherit}:root .chroma .nl{color:#900;font-weight:bold}:root .chroma .nn{color:#555}:root .chroma .nx{color:inherit}:root .chroma .py{color:inherit}:root .chroma .nt{color:navy}:root .chroma .nv{color:#006767}:root .chroma .vc{color:#006767}:root .chroma .vg{color:#006767}:root .chroma .vi{color:#006767}:root .chroma .vm{color:inherit}:root .chroma .l{color:inherit}:root .chroma .ld{color:inherit}:root .chroma .s{color:#d14}:root .chroma .sa{color:#d14}:root .chroma .sb{color:#d14}:root .chroma .sc{color:#d14}:root .chroma .dl{color:#d14}:root .chroma .sd{color:#d14}:root .chroma .s2{color:#d14}:root .chroma .se{color:#d14}:root .chroma .sh{color:#d14}:root .chroma .si{color:#d14}:root .chroma .sx{color:#d14}:root .chroma .sr{color:#009926}:root .chroma .s1{color:#d14}:root .chroma .ss{color:#990073}:root .chroma .m{color:#027e83}:root .chroma .mb{color:#027e83}:root .chroma .mf{color:#027e83}:root .chroma .mh{color:#027e83}:root .chroma .mi{color:#027e83}:root .chroma .il{color:#027e83}:root .chroma .mo{color:#027e83}:root .chroma .o{color:#000;font-weight:bold}:root .chroma .ow{color:#000;font-weight:bold}:root .chroma .p{color:inherit}:root .chroma .c{color:#676765;font-style:italic}:root .chroma .ch{color:#676765;font-style:italic}:root .chroma .cm{color:#676765;font-style:italic}:root .chroma .c1{color:#676765;font-style:italic}:root .chroma .cs{color:#676767;font-weight:bold;font-style:italic}:root .chroma .cp{color:#676767;font-weight:bold;font-style:italic}:root .chroma .cpf{color:#676767;font-weight:bold;font-style:italic}:root .chroma .g{color:inherit}:root .chroma .gd{color:#000;background-color:#fdd}:root .chroma .ge{color:#000;font-style:italic}:root .chroma .gr{color:#a00}:root .chroma .gh{color:#676767}:root .chroma .gi{color:#000;background-color:#dfd}:root .chroma .go{color:#6f6f6f}:root .chroma .gp{color:#555}:root .chroma .gs{font-weight:bold}:root .chroma .gu{color:#5f5f5f}:root .chroma .gt{color:#a00}:root .chroma .gl{text-decoration:underline}:root .chroma .w{color:#bbb}:root{--code-background: rgb(248, 249, 250);--code-accent-color: #e6eaed;--code-accent-color-lite: #f2f4f6;--code-font-color: rgb(70, 70, 70);--code-copy-background: rgb(248, 249, 250);--code-copy-font-color: #6c6c6c;--code-copy-border-color: #797979;--code-copy-success-color: rgb(0, 200, 83)}}:root[color-theme=dark]{--header-background: rgb(32, 83, 117);--header-font-color: rgb(255, 255, 255);--body-background: #29363e;--body-font-color: #c2cfd7;--mark-color: rgb(255, 171, 0);--button-background: #22597d;--button-border-color: rgb(32, 83, 117);--link-color: rgb(110, 168, 212);--link-color-visited: rgb(186, 142, 240);--hint-link-color: rgb(10, 83, 154);--hint-link-color-visited: rgb(119, 73, 191);--accent-color-dark: #192125;--accent-color: #212b32;--accent-color-lite: #253138;--control-icons: #b2bac1;--footer-background: rgb(17, 43, 60);--footer-font-color: rgb(255, 255, 255);--footer-link-color: rgb(246, 107, 14);--footer-link-color-visited: rgb(246, 107, 14)}:root[color-theme=dark] .dark-mode-dim .gdoc-markdown img{filter:brightness(0.75) grayscale(0.2)}:root[color-theme=dark] .gdoc-markdown .gdoc-hint,:root[color-theme=dark] .gdoc-markdown .gdoc-props__tag,:root[color-theme=dark] .gdoc-markdown .admonitionblock{filter:saturate(2.5) brightness(0.85)}:root[color-theme=dark] .gdoc-markdown .gdoc-hint a,:root[color-theme=dark] .gdoc-markdown .admonitionblock a{color:var(--hint-link-color)}:root[color-theme=dark] .gdoc-markdown .gdoc-hint a:visited,:root[color-theme=dark] .gdoc-markdown .admonitionblock a:visited{color:var(--hint-link-color-visited)}:root[color-theme=dark] .gdoc-markdown .gdoc-hint__title,:root[color-theme=dark] .gdoc-markdown .admonitionblock table td:first-child{background-color:rgba(134,142,150,.15)}:root[color-theme=dark] .chroma{color:var(--code-font-color)}:root[color-theme=dark] .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root[color-theme=dark] .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root[color-theme=dark] .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root[color-theme=dark] .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root[color-theme=dark] .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root[color-theme=dark] .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root[color-theme=dark] .chroma .x{color:inherit}:root[color-theme=dark] .chroma .err{color:inherit}:root[color-theme=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root[color-theme=dark] .chroma .hl{display:block;width:100%;background-color:#4f1605}:root[color-theme=dark] .chroma .lnt{padding:0 .8em}:root[color-theme=dark] .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em;color:#b3b3b3}:root[color-theme=dark] .chroma .k{color:#ff79c6}:root[color-theme=dark] .chroma .kc{color:#ff79c6}:root[color-theme=dark] .chroma .kd{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .kn{color:#ff79c6}:root[color-theme=dark] .chroma .kp{color:#ff79c6}:root[color-theme=dark] .chroma .kr{color:#ff79c6}:root[color-theme=dark] .chroma .kt{color:#8be9fd}:root[color-theme=dark] .chroma .n{color:inherit}:root[color-theme=dark] .chroma .na{color:#50fa7b}:root[color-theme=dark] .chroma .nb{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .bp{color:inherit}:root[color-theme=dark] .chroma .nc{color:#50fa7b}:root[color-theme=dark] .chroma .no{color:inherit}:root[color-theme=dark] .chroma .nd{color:inherit}:root[color-theme=dark] .chroma .ni{color:inherit}:root[color-theme=dark] .chroma .ne{color:inherit}:root[color-theme=dark] .chroma .nf{color:#50fa7b}:root[color-theme=dark] .chroma .fm{color:inherit}:root[color-theme=dark] .chroma .nl{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .nn{color:inherit}:root[color-theme=dark] .chroma .nx{color:inherit}:root[color-theme=dark] .chroma .py{color:inherit}:root[color-theme=dark] .chroma .nt{color:#ff79c6}:root[color-theme=dark] .chroma .nv{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .vc{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .vg{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .vi{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .vm{color:inherit}:root[color-theme=dark] .chroma .l{color:inherit}:root[color-theme=dark] .chroma .ld{color:inherit}:root[color-theme=dark] .chroma .s{color:#f1fa8c}:root[color-theme=dark] .chroma .sa{color:#f1fa8c}:root[color-theme=dark] .chroma .sb{color:#f1fa8c}:root[color-theme=dark] .chroma .sc{color:#f1fa8c}:root[color-theme=dark] .chroma .dl{color:#f1fa8c}:root[color-theme=dark] .chroma .sd{color:#f1fa8c}:root[color-theme=dark] .chroma .s2{color:#f1fa8c}:root[color-theme=dark] .chroma .se{color:#f1fa8c}:root[color-theme=dark] .chroma .sh{color:#f1fa8c}:root[color-theme=dark] .chroma .si{color:#f1fa8c}:root[color-theme=dark] .chroma .sx{color:#f1fa8c}:root[color-theme=dark] .chroma .sr{color:#f1fa8c}:root[color-theme=dark] .chroma .s1{color:#f1fa8c}:root[color-theme=dark] .chroma .ss{color:#f1fa8c}:root[color-theme=dark] .chroma .m{color:#bd93f9}:root[color-theme=dark] .chroma .mb{color:#bd93f9}:root[color-theme=dark] .chroma .mf{color:#bd93f9}:root[color-theme=dark] .chroma .mh{color:#bd93f9}:root[color-theme=dark] .chroma .mi{color:#bd93f9}:root[color-theme=dark] .chroma .il{color:#bd93f9}:root[color-theme=dark] .chroma .mo{color:#bd93f9}:root[color-theme=dark] .chroma .o{color:#ff79c6}:root[color-theme=dark] .chroma .ow{color:#ff79c6}:root[color-theme=dark] .chroma .p{color:inherit}:root[color-theme=dark] .chroma .c{color:#96a6d8}:root[color-theme=dark] .chroma .ch{color:#96a6d8}:root[color-theme=dark] .chroma .cm{color:#96a6d8}:root[color-theme=dark] .chroma .c1{color:#96a6d8}:root[color-theme=dark] .chroma .cs{color:#96a6d8}:root[color-theme=dark] .chroma .cp{color:#ff79c6}:root[color-theme=dark] .chroma .cpf{color:#ff79c6}:root[color-theme=dark] .chroma .g{color:inherit}:root[color-theme=dark] .chroma .gd{color:#d98f90}:root[color-theme=dark] .chroma .ge{text-decoration:underline}:root[color-theme=dark] .chroma .gr{color:inherit}:root[color-theme=dark] .chroma .gh{font-weight:bold;color:inherit}:root[color-theme=dark] .chroma .gi{font-weight:bold}:root[color-theme=dark] .chroma .go{color:#8f9ea8}:root[color-theme=dark] .chroma .gp{color:inherit}:root[color-theme=dark] .chroma .gs{color:inherit}:root[color-theme=dark] .chroma .gu{font-weight:bold}:root[color-theme=dark] .chroma .gt{color:inherit}:root[color-theme=dark] .chroma .gl{text-decoration:underline}:root[color-theme=dark] .chroma .w{color:inherit}:root[color-theme=dark]{--code-background: #232e35;--code-accent-color: #1b2329;--code-accent-color-lite: #1f292f;--code-font-color: rgb(185, 185, 185);--code-copy-background: #232e35;--code-copy-font-color: #939393;--code-copy-border-color: #868686;--code-copy-success-color: rgba(0, 200, 83, 0.45)}:root[code-theme=dark] .chroma{color:var(--code-font-color)}:root[code-theme=dark] .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root[code-theme=dark] .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root[code-theme=dark] .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root[code-theme=dark] .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root[code-theme=dark] .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root[code-theme=dark] .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root[code-theme=dark] .chroma .x{color:inherit}:root[code-theme=dark] .chroma .err{color:inherit}:root[code-theme=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root[code-theme=dark] .chroma .hl{display:block;width:100%;background-color:#4f1605}:root[code-theme=dark] .chroma .lnt{padding:0 .8em}:root[code-theme=dark] .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em;color:#b3b3b3}:root[code-theme=dark] .chroma .k{color:#ff79c6}:root[code-theme=dark] .chroma .kc{color:#ff79c6}:root[code-theme=dark] .chroma .kd{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .kn{color:#ff79c6}:root[code-theme=dark] .chroma .kp{color:#ff79c6}:root[code-theme=dark] .chroma .kr{color:#ff79c6}:root[code-theme=dark] .chroma .kt{color:#8be9fd}:root[code-theme=dark] .chroma .n{color:inherit}:root[code-theme=dark] .chroma .na{color:#50fa7b}:root[code-theme=dark] .chroma .nb{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .bp{color:inherit}:root[code-theme=dark] .chroma .nc{color:#50fa7b}:root[code-theme=dark] .chroma .no{color:inherit}:root[code-theme=dark] .chroma .nd{color:inherit}:root[code-theme=dark] .chroma .ni{color:inherit}:root[code-theme=dark] .chroma .ne{color:inherit}:root[code-theme=dark] .chroma .nf{color:#50fa7b}:root[code-theme=dark] .chroma .fm{color:inherit}:root[code-theme=dark] .chroma .nl{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .nn{color:inherit}:root[code-theme=dark] .chroma .nx{color:inherit}:root[code-theme=dark] .chroma .py{color:inherit}:root[code-theme=dark] .chroma .nt{color:#ff79c6}:root[code-theme=dark] .chroma .nv{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .vc{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .vg{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .vi{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .vm{color:inherit}:root[code-theme=dark] .chroma .l{color:inherit}:root[code-theme=dark] .chroma .ld{color:inherit}:root[code-theme=dark] .chroma .s{color:#f1fa8c}:root[code-theme=dark] .chroma .sa{color:#f1fa8c}:root[code-theme=dark] .chroma .sb{color:#f1fa8c}:root[code-theme=dark] .chroma .sc{color:#f1fa8c}:root[code-theme=dark] .chroma .dl{color:#f1fa8c}:root[code-theme=dark] .chroma .sd{color:#f1fa8c}:root[code-theme=dark] .chroma .s2{color:#f1fa8c}:root[code-theme=dark] .chroma .se{color:#f1fa8c}:root[code-theme=dark] .chroma .sh{color:#f1fa8c}:root[code-theme=dark] .chroma .si{color:#f1fa8c}:root[code-theme=dark] .chroma .sx{color:#f1fa8c}:root[code-theme=dark] .chroma .sr{color:#f1fa8c}:root[code-theme=dark] .chroma .s1{color:#f1fa8c}:root[code-theme=dark] .chroma .ss{color:#f1fa8c}:root[code-theme=dark] .chroma .m{color:#bd93f9}:root[code-theme=dark] .chroma .mb{color:#bd93f9}:root[code-theme=dark] .chroma .mf{color:#bd93f9}:root[code-theme=dark] .chroma .mh{color:#bd93f9}:root[code-theme=dark] .chroma .mi{color:#bd93f9}:root[code-theme=dark] .chroma .il{color:#bd93f9}:root[code-theme=dark] .chroma .mo{color:#bd93f9}:root[code-theme=dark] .chroma .o{color:#ff79c6}:root[code-theme=dark] .chroma .ow{color:#ff79c6}:root[code-theme=dark] .chroma .p{color:inherit}:root[code-theme=dark] .chroma .c{color:#96a6d8}:root[code-theme=dark] .chroma .ch{color:#96a6d8}:root[code-theme=dark] .chroma .cm{color:#96a6d8}:root[code-theme=dark] .chroma .c1{color:#96a6d8}:root[code-theme=dark] .chroma .cs{color:#96a6d8}:root[code-theme=dark] .chroma .cp{color:#ff79c6}:root[code-theme=dark] .chroma .cpf{color:#ff79c6}:root[code-theme=dark] .chroma .g{color:inherit}:root[code-theme=dark] .chroma .gd{color:#d98f90}:root[code-theme=dark] .chroma .ge{text-decoration:underline}:root[code-theme=dark] .chroma .gr{color:inherit}:root[code-theme=dark] .chroma .gh{font-weight:bold;color:inherit}:root[code-theme=dark] .chroma .gi{font-weight:bold}:root[code-theme=dark] .chroma .go{color:#8f9ea8}:root[code-theme=dark] .chroma .gp{color:inherit}:root[code-theme=dark] .chroma .gs{color:inherit}:root[code-theme=dark] .chroma .gu{font-weight:bold}:root[code-theme=dark] .chroma .gt{color:inherit}:root[code-theme=dark] .chroma .gl{text-decoration:underline}:root[code-theme=dark] .chroma .w{color:inherit}:root[code-theme=dark]{--code-background: #232e35;--code-accent-color: #1b2329;--code-accent-color-lite: #1f292f;--code-font-color: rgb(185, 185, 185);--code-copy-background: #232e35;--code-copy-font-color: #939393;--code-copy-border-color: #868686;--code-copy-success-color: rgba(0, 200, 83, 0.45)}@media(prefers-color-scheme: dark){:root{--header-background: rgb(32, 83, 117);--header-font-color: rgb(255, 255, 255);--body-background: #29363e;--body-font-color: #c2cfd7;--mark-color: rgb(255, 171, 0);--button-background: #22597d;--button-border-color: rgb(32, 83, 117);--link-color: rgb(110, 168, 212);--link-color-visited: rgb(186, 142, 240);--hint-link-color: rgb(10, 83, 154);--hint-link-color-visited: rgb(119, 73, 191);--accent-color-dark: #192125;--accent-color: #212b32;--accent-color-lite: #253138;--control-icons: #b2bac1;--footer-background: rgb(17, 43, 60);--footer-font-color: rgb(255, 255, 255);--footer-link-color: rgb(246, 107, 14);--footer-link-color-visited: rgb(246, 107, 14)}:root .dark-mode-dim .gdoc-markdown img{filter:brightness(0.75) grayscale(0.2)}:root .gdoc-markdown .gdoc-hint,:root .gdoc-markdown .gdoc-props__tag,:root .gdoc-markdown .admonitionblock{filter:saturate(2.5) brightness(0.85)}:root .gdoc-markdown .gdoc-hint a,:root .gdoc-markdown .admonitionblock a{color:var(--hint-link-color)}:root .gdoc-markdown .gdoc-hint a:visited,:root .gdoc-markdown .admonitionblock a:visited{color:var(--hint-link-color-visited)}:root .gdoc-markdown .gdoc-hint__title,:root .gdoc-markdown .admonitionblock table td:first-child{background-color:rgba(134,142,150,.15)}:root .chroma{color:var(--code-font-color)}:root .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root .chroma .x{color:inherit}:root .chroma .err{color:inherit}:root .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root .chroma .hl{display:block;width:100%;background-color:#4f1605}:root .chroma .lnt{padding:0 .8em}:root .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em;color:#b3b3b3}:root .chroma .k{color:#ff79c6}:root .chroma .kc{color:#ff79c6}:root .chroma .kd{color:#8be9fd;font-style:italic}:root .chroma .kn{color:#ff79c6}:root .chroma .kp{color:#ff79c6}:root .chroma .kr{color:#ff79c6}:root .chroma .kt{color:#8be9fd}:root .chroma .n{color:inherit}:root .chroma .na{color:#50fa7b}:root .chroma .nb{color:#8be9fd;font-style:italic}:root .chroma .bp{color:inherit}:root .chroma .nc{color:#50fa7b}:root .chroma .no{color:inherit}:root .chroma .nd{color:inherit}:root .chroma .ni{color:inherit}:root .chroma .ne{color:inherit}:root .chroma .nf{color:#50fa7b}:root .chroma .fm{color:inherit}:root .chroma .nl{color:#8be9fd;font-style:italic}:root .chroma .nn{color:inherit}:root .chroma .nx{color:inherit}:root .chroma .py{color:inherit}:root .chroma .nt{color:#ff79c6}:root .chroma .nv{color:#8be9fd;font-style:italic}:root .chroma .vc{color:#8be9fd;font-style:italic}:root .chroma .vg{color:#8be9fd;font-style:italic}:root .chroma .vi{color:#8be9fd;font-style:italic}:root .chroma .vm{color:inherit}:root .chroma .l{color:inherit}:root .chroma .ld{color:inherit}:root .chroma .s{color:#f1fa8c}:root .chroma .sa{color:#f1fa8c}:root .chroma .sb{color:#f1fa8c}:root .chroma .sc{color:#f1fa8c}:root .chroma .dl{color:#f1fa8c}:root .chroma .sd{color:#f1fa8c}:root .chroma .s2{color:#f1fa8c}:root .chroma .se{color:#f1fa8c}:root .chroma .sh{color:#f1fa8c}:root .chroma .si{color:#f1fa8c}:root .chroma .sx{color:#f1fa8c}:root .chroma .sr{color:#f1fa8c}:root .chroma .s1{color:#f1fa8c}:root .chroma .ss{color:#f1fa8c}:root .chroma .m{color:#bd93f9}:root .chroma .mb{color:#bd93f9}:root .chroma .mf{color:#bd93f9}:root .chroma .mh{color:#bd93f9}:root .chroma .mi{color:#bd93f9}:root .chroma .il{color:#bd93f9}:root .chroma .mo{color:#bd93f9}:root .chroma .o{color:#ff79c6}:root .chroma .ow{color:#ff79c6}:root .chroma .p{color:inherit}:root .chroma .c{color:#96a6d8}:root .chroma .ch{color:#96a6d8}:root .chroma .cm{color:#96a6d8}:root .chroma .c1{color:#96a6d8}:root .chroma .cs{color:#96a6d8}:root .chroma .cp{color:#ff79c6}:root .chroma .cpf{color:#ff79c6}:root .chroma .g{color:inherit}:root .chroma .gd{color:#d98f90}:root .chroma .ge{text-decoration:underline}:root .chroma .gr{color:inherit}:root .chroma .gh{font-weight:bold;color:inherit}:root .chroma .gi{font-weight:bold}:root .chroma .go{color:#8f9ea8}:root .chroma .gp{color:inherit}:root .chroma .gs{color:inherit}:root .chroma .gu{font-weight:bold}:root .chroma .gt{color:inherit}:root .chroma .gl{text-decoration:underline}:root .chroma .w{color:inherit}:root{--code-background: #232e35;--code-accent-color: #1b2329;--code-accent-color-lite: #1f292f;--code-font-color: rgb(185, 185, 185);--code-copy-background: #232e35;--code-copy-font-color: #939393;--code-copy-border-color: #868686;--code-copy-success-color: rgba(0, 200, 83, 0.45)}}html{font-size:16px;letter-spacing:.33px;scroll-behavior:smooth}html.color-toggle-hidden #gdoc-color-theme{display:none}html.color-toggle-light #gdoc-color-theme .gdoc_brightness_light{display:inline-block}html.color-toggle-light #gdoc-color-theme .gdoc_brightness_auto,html.color-toggle-light #gdoc-color-theme .gdoc_brightness_dark{display:none}html.color-toggle-dark #gdoc-color-theme .gdoc_brightness_dark{display:inline-block}html.color-toggle-dark #gdoc-color-theme .gdoc_brightness_auto,html.color-toggle-dark #gdoc-color-theme .gdoc_brightness_light{display:none}html.color-toggle-auto #gdoc-color-theme .gdoc_brightness_light{display:none}html.color-toggle-auto #gdoc-color-theme .gdoc_brightness_dark{display:none}html.color-toggle-auto #gdoc-color-theme .gdoc_brightness_auto{display:inline-block}html,body{min-width:20rem;overflow-x:hidden}body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}body *{box-sizing:inherit}h1,h2,h3,h4,h5,h6{font-weight:normal;display:flex;align-items:center}h4,h5,h6{font-size:1rem !important}a{text-decoration:none;color:var(--link-color)}a:hover{text-decoration:underline}a:visited{color:var(--link-color-visited)}i.gdoc-icon{font-family:"GeekdocIcons";font-style:normal}img{vertical-align:middle}#gdoc-color-theme{cursor:pointer}.fake-link:hover{background-image:linear-gradient(var(--link-color), var(--link-color));background-position:0 100%;background-size:100% 1px;background-repeat:no-repeat;text-decoration:none}.wrapper{display:flex;flex-direction:column;min-height:100vh;color:var(--body-font-color);background:var(--body-background);font-weight:normal}.container{width:100%;max-width:82rem;margin:0 auto;padding:1.25rem}svg.gdoc-icon{display:inline-block;width:1.25rem;height:1.25rem;vertical-align:middle;stroke-width:0;stroke:currentColor;fill:currentColor;position:relative}.gdoc-header{background:var(--header-background);color:var(--header-font-color);border-bottom:.3em solid var(--footer-background)}.gdoc-header__link,.gdoc-header__link:visited{color:var(--header-font-color)}.gdoc-header__link:hover{text-decoration:none}.gdoc-header svg.gdoc-icon{width:2rem;height:2rem}.gdoc-brand{font-size:2rem;line-height:2rem}.gdoc-brand__img{margin-right:1rem;width:2rem;height:2rem}.gdoc-menu-header__items{display:flex}.gdoc-menu-header__items>span{margin-left:.5rem}.gdoc-menu-header__control,.gdoc-menu-header__home{display:none}.gdoc-menu-header__control svg.gdoc-icon,.gdoc-menu-header__home svg.gdoc-icon{cursor:pointer}.gdoc-nav{flex:0 0 18rem}.gdoc-nav nav{width:18rem;padding:1rem 2rem 1rem 0}.gdoc-nav nav>ul>li>*{font-weight:normal}.gdoc-nav nav section{margin-top:2rem}.gdoc-nav__control{display:none;margin:0;padding:0}.gdoc-nav__control svg.gdoc-icon{cursor:pointer}.gdoc-nav__control svg.gdoc-icon.gdoc_menu{display:inline-block}.gdoc-nav__control svg.gdoc-icon.gdoc_arrow_back{display:none}.gdoc-nav__list{padding-left:1rem;margin:0;padding:0;list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.gdoc-nav__list ul{padding-left:1rem}.gdoc-nav__list li{margin:.75rem 0}.gdoc-nav__list svg.gdoc-icon{margin-right:.25rem}.gdoc-nav__toggle{display:none}.gdoc-nav__toggle~label{cursor:pointer}.gdoc-nav__toggle~label svg.gdoc-icon.toggle{width:1rem;height:1rem}.gdoc-nav__toggle:not(:checked)~ul,.gdoc-nav__toggle:not(:checked)~label svg.gdoc-icon.gdoc_keyboard_arrow_down{display:none}.gdoc-nav__toggle:not(:checked)~label svg.gdoc-icon.gdoc_keyboard_arrow_left{display:block}.gdoc-nav__toggle:checked~ul,.gdoc-nav__toggle:checked~label svg.gdoc-icon.gdoc_keyboard_arrow_down{display:block}.gdoc-nav__toggle:checked~label svg.gdoc-icon.gdoc_keyboard_arrow_left{display:none}.gdoc-nav--main>ul>li>span,.gdoc-nav--main>ul>li>span>a,.gdoc-nav--main>ul>li>label,.gdoc-nav--main>ul>li>label>a{font-weight:bold}.gdoc-nav__entry,.gdoc-language__entry{flex:1;color:var(--body-font-color)}.gdoc-nav__entry:hover,.gdoc-nav__entry.is-active,.gdoc-language__entry:hover,.gdoc-language__entry.is-active{text-decoration:underline;text-decoration-style:dashed !important}.gdoc-nav__entry:visited,.gdoc-language__entry:visited{color:var(--body-font-color)}.gdoc-search__list,.gdoc-language__list{background:var(--body-background);border-radius:.15rem;box-shadow:0 1px 3px 0 var(--accent-color-dark),0 1px 2px 0 var(--accent-color);position:absolute;margin:0;padding:.5rem .25rem !important;list-style:none;top:calc(100% + 0.5rem);z-index:2}.gdoc-page{min-width:18rem;flex-grow:1;padding:1rem 0}.gdoc-page h1,.gdoc-page h2,.gdoc-page h3,.gdoc-page h4,.gdoc-page h5,.gdoc-page h6{font-weight:600}.gdoc-page__header,.gdoc-page__footer{margin-bottom:1.5rem}.gdoc-page__header svg.gdoc-icon,.gdoc-page__footer svg.gdoc-icon{color:var(--control-icons)}.gdoc-page__header a,.gdoc-page__header a:visited,.gdoc-page__footer a,.gdoc-page__footer a:visited{color:var(--link-color)}.gdoc-page__header{background:var(--accent-color-lite);padding:.5rem 1rem;border-radius:.15rem}.gdoc-page__nav:hover{background-image:linear-gradient(var(--link-color), var(--link-color));background-position:0 100%;background-size:100% 1px;background-repeat:no-repeat}.gdoc-page__anchorwrap{gap:.5em}.gdoc-page__anchorwrap:hover .gdoc-page__anchor svg.gdoc-icon{color:var(--control-icons)}.gdoc-page__anchor svg.gdoc-icon{width:1.85em;height:1.85em;color:rgba(0,0,0,0)}.gdoc-page__anchor:focus svg.gdoc-icon{color:var(--control-icons)}.gdoc-page__footer{margin-top:2rem}.gdoc-page__footer a:hover{text-decoration:none}.gdoc-post{word-wrap:break-word;border-top:1px dashed #868e96;padding:2rem 0}.gdoc-post:first-of-type{padding-top:0}.gdoc-post__header h1{margin-top:0}.gdoc-post__header a,.gdoc-post__header a:visited{color:var(--body-font-color);text-decoration:none}.gdoc-post__header a:hover{background:none;text-decoration:underline;color:var(--body-font-color)}.gdoc-post:first-child{border-top:0}.gdoc-post:first-child h1{margin-top:0}.gdoc-post__readmore{margin:2rem 0}.gdoc-post__readmore a,.gdoc-post__readmore a:hover,.gdoc-post__readmore a:visited{color:var(--link-color);text-decoration:none !important}.gdoc-post__meta span svg.gdoc-icon{margin-left:-5px}.gdoc-post__meta>span{margin:.25rem 0}.gdoc-post__meta>span:not(:last-child){margin-right:.5rem}.gdoc-post__meta svg.gdoc-icon{font-size:1.25rem}.gdoc-post__meta .gdoc-button{margin:0 .125rem 0 0}.gdoc-post__meta--head{margin-bottom:2rem}.gdoc-post__codecontainer{position:relative}.gdoc-post__codecontainer:hover>.gdoc-post__codecopy{visibility:visible}.gdoc-post__codecopy{visibility:hidden;position:absolute;top:.5rem;right:.5rem;border:1.5px solid var(--code-copy-border-color);border-radius:.15rem;background:var(--code-copy-background);width:2rem;height:2rem}.gdoc-post__codecopy svg.gdoc-icon{top:0;width:1.25rem;height:1.25rem;color:var(--code-copy-font-color)}.gdoc-post__codecopy:hover{cursor:pointer}.gdoc-post__codecopy--success{border-color:var(--code-copy-success-color)}.gdoc-post__codecopy--success svg.gdoc-icon{color:var(--code-copy-success-color)}.gdoc-post__codecopy--out{transition:visibility 2s ease-out}.gdoc-footer{background:var(--footer-background);color:var(--footer-font-color)}.gdoc-footer .fake-link{text-decoration:none}.gdoc-footer .fake-link:hover{background-image:linear-gradient(var(--footer-link-color), var(--footer-link-color))}.gdoc-footer__item{line-height:2rem}.gdoc-footer__item--row{margin-right:1rem}.gdoc-footer__link{text-decoration:underline;color:var(--footer-link-color)}.gdoc-footer__link:visited{color:var(--footer-link-color-visited)}.gdoc-search{position:relative}.gdoc-search svg.gdoc-icon{position:absolute;left:.5rem;color:var(--control-icons);width:1.25rem;height:1.25rem}.gdoc-search::after{display:block;content:"";clear:both}.gdoc-search__input{width:100%;padding:.5rem;padding-left:2rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;border:1px solid rgba(0,0,0,0);border-radius:.15rem;background:var(--accent-color-lite);color:var(--body-font-color)}.gdoc-search__input:focus{outline:none !important;border:1px solid var(--accent-color)}.gdoc-search__list{visibility:hidden;left:0;width:100%}.gdoc-search__list ul{list-style:none;padding-left:0}.gdoc-search__list>li>span{font-weight:bold}.gdoc-search__list>li+li{margin-top:.25rem}.gdoc-search__list svg.gdoc-icon{margin-right:.25rem}.gdoc-search__section{display:flex;flex-direction:column;padding:.25rem !important}.gdoc-search__entry{display:flex;flex-direction:column;color:var(--body-font-color);padding:.25rem !important;border-radius:.15rem}.gdoc-search__entry:hover,.gdoc-search__entry.is-active{background:var(--accent-color-lite);text-decoration:none}.gdoc-search__entry:hover .gdoc-search__entry--title,.gdoc-search__entry.is-active .gdoc-search__entry--title{text-decoration-style:dashed !important;text-decoration:underline}.gdoc-search__entry:visited{color:var(--body-font-color)}.gdoc-search__entry--description{font-size:.875rem;font-style:italic}.gdoc-search:focus-within .gdoc-search__list.has-hits,.gdoc-search__list.has-hits:hover{visibility:visible}.gdoc-language__selector{position:relative;list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;margin:0;padding:0;width:100%}.gdoc-language__selector:focus .gdoc-language__list,.gdoc-language__selector:focus-within .gdoc-language__list,.gdoc-language__selector:active .gdoc-language__list{display:block}.gdoc-language__list{display:none;right:0;width:auto;white-space:nowrap}.gdoc-paging{padding:1rem 0}.gdoc-paging__item{flex:1 1 0}.gdoc-paging__item a:visited{color:var(--link-color)}.gdoc-paging__item a:hover,.gdoc-paging__item a:visited:hover{background:var(--link-color);color:#f8f9fa}.gdoc-paging__item--next{text-align:right}.gdoc-paging__item--prev{text-align:left}.gdoc-error{padding:6rem 1rem;margin:0 auto;max-width:45em}.gdoc-error svg.gdoc-icon{width:8rem;height:8rem;color:var(--body-font-color)}.gdoc-error__link,.gdoc-error__link:visited{text-decoration:underline;color:var(--link-color)}.gdoc-error__message{padding-left:4rem}.gdoc-error__line{padding:.5rem 0}.gdoc-error__title{font-size:4rem}.gdoc-error__code{font-weight:bolder}.gdoc-toc{margin:1rem 0}.gdoc-toc li{margin:.25rem 0}.gdoc-toc__level--1 ul ul,.gdoc-toc__level--2 ul ul ul,.gdoc-toc__level--3 ul ul ul ul,.gdoc-toc__level--4 ul ul ul ul ul,.gdoc-toc__level--5 ul ul ul ul ul ul,.gdoc-toc__level--6 ul ul ul ul ul ul ul{display:none}.gdoc-toc a,.gdoc-toc a:visited{text-decoration:none !important;color:var(--link-color)}.gdoc-nav nav,.gdoc-page,.markdown{transition:.2s ease-in-out;transition-property:transform,margin-left,opacity;will-change:transform,margin-left}.breadcrumb{display:inline;padding:0;margin:0}.breadcrumb li{display:inline}.gdoc-markdown{line-height:1.6rem}.gdoc-markdown h1,.gdoc-markdown h2,.gdoc-markdown h3,.gdoc-markdown h4,.gdoc-markdown h5,.gdoc-markdown h6{font-weight:600}.gdoc-markdown h1>code,.gdoc-markdown h2>code,.gdoc-markdown h3>code,.gdoc-markdown h4>code,.gdoc-markdown h5>code,.gdoc-markdown h6>code{border-top:3px solid var(--accent-color);font-size:.75rem !important}.gdoc-markdown h4>code,.gdoc-markdown h5>code,.gdoc-markdown h6>code{font-size:.875rem !important}.gdoc-markdown b,.gdoc-markdown optgroup,.gdoc-markdown strong{font-weight:bolder}.gdoc-markdown a,.gdoc-markdown__link{text-decoration:underline;border-bottom:1px solid rgba(0,0,0,0);line-height:normal}.gdoc-markdown a:hover,.gdoc-markdown__link:hover{text-decoration:underline}.gdoc-markdown__link--raw{text-decoration:none !important;color:#343a40 !important}.gdoc-markdown__link--raw:hover{text-decoration:none !important}.gdoc-markdown__link--raw:visited{color:#343a40 !important}.gdoc-markdown__link--code{text-decoration:none}.gdoc-markdown__link--code code{color:inherit !important}.gdoc-markdown__link--code:hover{background:none;color:var(--link-color) !important;text-decoration:underline}.gdoc-markdown__link--code:visited,.gdoc-markdown__link--code:visited:hover{color:var(--link-color-visited) !important}.gdoc-markdown__figure{padding:.25rem;margin:1rem 0;background-color:var(--accent-color);display:table;border-top-left-radius:.15rem;border-top-right-radius:.15rem}.gdoc-markdown__figure--round,.gdoc-markdown__figure--round img{border-radius:50% !important}.gdoc-markdown__figure figcaption{display:table-caption;caption-side:bottom;background-color:var(--accent-color);padding:0 .25rem .25rem;text-align:center;border-bottom-left-radius:.15rem;border-bottom-right-radius:.15rem}.gdoc-markdown__figure img{max-width:100%;height:auto}.gdoc-markdown img{max-width:100%;border-radius:.15rem}.gdoc-markdown blockquote{margin:1rem 0;padding:.5rem 1rem .5rem .75rem;border-left:3px solid var(--accent-color);border-radius:.15rem}.gdoc-markdown table:not(.lntable):not(.highlight){display:table;border-spacing:0;border-collapse:collapse;margin-top:1rem;margin-bottom:1rem;width:100%;text-align:left}.gdoc-markdown table:not(.lntable):not(.highlight) thead{border-bottom:3px solid var(--accent-color)}.gdoc-markdown table:not(.lntable):not(.highlight) tr th,.gdoc-markdown table:not(.lntable):not(.highlight) tr td{padding:.5rem 1rem}.gdoc-markdown table:not(.lntable):not(.highlight) tr{border-bottom:1.5px solid var(--accent-color)}.gdoc-markdown table:not(.lntable):not(.highlight) tr:nth-child(2n){background:var(--accent-color-lite)}.gdoc-markdown hr{height:1.5px;border:none;background:var(--accent-color)}.gdoc-markdown ul,.gdoc-markdown ol{padding-left:2rem}.gdoc-markdown dl dt{font-weight:bolder;margin-top:1rem}.gdoc-markdown dl dd{margin-left:2rem}.gdoc-markdown code{padding:.25rem .5rem}.gdoc-markdown pre,.gdoc-markdown code{background-color:var(--code-background);border-radius:.15rem;color:var(--code-font-color);font-size:.875rem;line-height:1rem}.gdoc-markdown pre code{display:block;padding:1rem;width:100%}.gdoc-markdown mark{background-color:var(--mark-color)}.gdoc-markdown__align{text-align:left}.gdoc-markdown__align--left h1,.gdoc-markdown__align--left h2,.gdoc-markdown__align--left h3,.gdoc-markdown__align--left h4,.gdoc-markdown__align--left h5,.gdoc-markdown__align--left h6{justify-content:flex-start}.gdoc-markdown__align--center{text-align:center}.gdoc-markdown__align--center h1,.gdoc-markdown__align--center h2,.gdoc-markdown__align--center h3,.gdoc-markdown__align--center h4,.gdoc-markdown__align--center h5,.gdoc-markdown__align--center h6{justify-content:center}.gdoc-markdown__align--right{text-align:right}.gdoc-markdown__align--right h1,.gdoc-markdown__align--right h2,.gdoc-markdown__align--right h3,.gdoc-markdown__align--right h4,.gdoc-markdown__align--right h5,.gdoc-markdown__align--right h6{justify-content:flex-end}.admonitionblock.info{border-left-color:#0091ea;background-color:#f3f9fd;color:#343a40}.admonitionblock.note{border-left-color:#0091ea;background-color:#f3f9fd;color:#343a40}.admonitionblock.ok{border-left-color:#00c853;background-color:#f2fdf6;color:#343a40}.admonitionblock.tip{border-left-color:#00c853;background-color:#f2fdf6;color:#343a40}.admonitionblock.important{border-left-color:#ffab00;background-color:#fdfaf4;color:#343a40}.admonitionblock.caution{border-left-color:#7300d3;background-color:#f8f2fd;color:#343a40}.admonitionblock.danger{border-left-color:#d50000;background-color:#fdf2f2;color:#343a40}.admonitionblock.warning{border-left-color:#d50000;background-color:#fdf2f2;color:#343a40}.admonitionblock{margin:1rem 0;padding:0;border-left:3px solid var(--accent-color);border-radius:.15rem}.admonitionblock table{margin:0 !important;padding:0 !important}.admonitionblock table tr{border:0 !important}.admonitionblock table td{display:block;padding:.25rem 1rem !important}.admonitionblock table td:first-child{background-color:rgba(134,142,150,.05);font-weight:bold}.admonitionblock table td:first-child.icon .title{display:flex;align-items:center}.admonitionblock table td:first-child.icon i.fa::after{content:attr(title);font-style:normal;padding-left:1.5rem}.admonitionblock table td:first-child.icon i.fa{color:#000;background-size:auto 90%;background-repeat:no-repeat;filter:invert(30%);margin-left:-5px}.admonitionblock table td:first-child.icon i.fa.icon-info{background-image:url(img/geekdoc-stack.svg#gdoc_info_outline)}.admonitionblock table td:first-child.icon i.fa.icon-note{background-image:url(img/geekdoc-stack.svg#gdoc_info_outline)}.admonitionblock table td:first-child.icon i.fa.icon-ok{background-image:url(img/geekdoc-stack.svg#gdoc_check_circle_outline)}.admonitionblock table td:first-child.icon i.fa.icon-tip{background-image:url(img/geekdoc-stack.svg#gdoc_check_circle_outline)}.admonitionblock table td:first-child.icon i.fa.icon-important{background-image:url(img/geekdoc-stack.svg#gdoc_error_outline)}.admonitionblock table td:first-child.icon i.fa.icon-caution{background-image:url(img/geekdoc-stack.svg#gdoc_dangerous)}.admonitionblock table td:first-child.icon i.fa.icon-danger{background-image:url(img/geekdoc-stack.svg#gdoc_fire)}.admonitionblock table td:first-child.icon i.fa.icon-warning{background-image:url(img/geekdoc-stack.svg#gdoc_fire)}.gdoc-expand{margin:1rem 0;border:1px solid var(--accent-color);border-radius:.15rem;overflow:hidden}.gdoc-expand__head{background:var(--accent-color-lite);padding:.5rem 1rem;cursor:pointer}.gdoc-expand__content{display:none;padding:0 1rem}.gdoc-expand__control:checked+.gdoc-expand__content{display:block}.gdoc-expand .gdoc-page__anchor{display:none}.gdoc-tabs{margin:1rem 0;border:1px solid var(--accent-color);border-radius:.15rem;overflow:hidden;display:flex;flex-wrap:wrap}.gdoc-tabs__label{display:inline-block;padding:.5rem 1rem;border-bottom:1px rgba(0,0,0,0);cursor:pointer}.gdoc-tabs__content{order:999;width:100%;border-top:1px solid var(--accent-color-lite);padding:0 1rem;display:none}.gdoc-tabs__control:checked+.gdoc-tabs__label{border-bottom:1.5px solid var(--link-color)}.gdoc-tabs__control:checked+.gdoc-tabs__label+.gdoc-tabs__content{display:block}.gdoc-tabs .gdoc-page__anchor{display:none}.gdoc-columns{margin:1rem 0}.gdoc-columns--regular>:first-child{flex:1}.gdoc-columns--small>:first-child{flex:.35;min-width:7rem}.gdoc-columns--large>:first-child{flex:1.65;min-width:33rem}.gdoc-columns__content{flex:1 1;min-width:13.2rem;padding:0}.gdoc-columns .gdoc-page__anchor{display:none}.gdoc-button{margin:1rem 0;display:inline-block;background:var(--accent-color-lite);border:1px solid var(--accent-color);border-radius:.15rem;cursor:pointer}.gdoc-button__link{display:inline-block;color:inherit !important;text-decoration:none !important}.gdoc-button:hover{background:var(--button-background);border-color:var(--button-border-color);color:#f8f9fa}.gdoc-button--regular{font-size:16px}.gdoc-button--regular .gdoc-button__link{padding:.25rem .5rem}.gdoc-button--large{font-size:1.25rem}.gdoc-button--large .gdoc-button__link{padding:.5rem 1rem}.gdoc-hint.info{border-left-color:#0091ea;background-color:#f3f9fd;color:#343a40;padding:0}.gdoc-hint.info code,.gdoc-hint.info pre{background-color:#dde5ea;color:#464646}.gdoc-hint.note{border-left-color:#0091ea;background-color:#f3f9fd;color:#343a40;padding:0}.gdoc-hint.note code,.gdoc-hint.note pre{background-color:#dde5ea;color:#464646}.gdoc-hint.ok{border-left-color:#00c853;background-color:#f2fdf6;color:#343a40;padding:0}.gdoc-hint.ok code,.gdoc-hint.ok pre{background-color:#d8e8df;color:#464646}.gdoc-hint.tip{border-left-color:#00c853;background-color:#f2fdf6;color:#343a40;padding:0}.gdoc-hint.tip code,.gdoc-hint.tip pre{background-color:#d8e8df;color:#464646}.gdoc-hint.important{border-left-color:#ffab00;background-color:#fdfaf4;color:#343a40;padding:0}.gdoc-hint.important code,.gdoc-hint.important pre{background-color:#ece8df;color:#464646}.gdoc-hint.caution{border-left-color:#7300d3;background-color:#f8f2fd;color:#343a40;padding:0}.gdoc-hint.caution code,.gdoc-hint.caution pre{background-color:#e2dae9;color:#464646}.gdoc-hint.danger{border-left-color:#d50000;background-color:#fdf2f2;color:#343a40;padding:0}.gdoc-hint.danger code,.gdoc-hint.danger pre{background-color:#e9dada;color:#464646}.gdoc-hint.warning{border-left-color:#d50000;background-color:#fdf2f2;color:#343a40;padding:0}.gdoc-hint.warning code,.gdoc-hint.warning pre{background-color:#e9dada;color:#464646}.gdoc-hint__title{padding:.25rem 1rem;background-color:rgba(134,142,150,.05);font-weight:bold;color:rgba(52,58,64,.85)}.gdoc-hint__title i.fa::after{content:attr(title);font-style:normal;padding-left:1.5rem}.gdoc-hint__title i.fa{color:#000;background-size:auto 90%;background-repeat:no-repeat;filter:invert(30%);margin-left:-5px}.gdoc-hint__title i.fa.info{background-image:url(img/geekdoc-stack.svg#gdoc_info_outline)}.gdoc-hint__title i.fa.note{background-image:url(img/geekdoc-stack.svg#gdoc_info_outline)}.gdoc-hint__title i.fa.ok{background-image:url(img/geekdoc-stack.svg#gdoc_check_circle_outline)}.gdoc-hint__title i.fa.tip{background-image:url(img/geekdoc-stack.svg#gdoc_check_circle_outline)}.gdoc-hint__title i.fa.important{background-image:url(img/geekdoc-stack.svg#gdoc_error_outline)}.gdoc-hint__title i.fa.caution{background-image:url(img/geekdoc-stack.svg#gdoc_dangerous)}.gdoc-hint__title i.fa.danger{background-image:url(img/geekdoc-stack.svg#gdoc_fire)}.gdoc-hint__title i.fa.warning{background-image:url(img/geekdoc-stack.svg#gdoc_fire)}.gdoc-hint__title .gdoc-icon{width:1.5rem;height:1.5rem;margin-left:-5px}.gdoc-hint__text{padding:.25rem 1rem}.gdoc-hint .gdoc-page__anchor{display:none}.gdoc-mermaid{font-family:"Liberation Sans",sans-serif}.gdoc-mermaid>svg{height:100%;padding:.5rem}.gdoc-props__title,.gdoc-props__default{padding:0;margin:0;font-family:"Liberation Mono",monospace}.gdoc-props__meta{gap:.5em;line-height:normal;margin-bottom:.25rem}.gdoc-props__meta:hover .gdoc-page__anchor svg.gdoc-icon{color:var(--control-icons)}.gdoc-props__tag.info{border-color:#e8f4fb;background-color:#f3f9fd}.gdoc-props__tag.note{border-color:#e8f4fb;background-color:#f3f9fd}.gdoc-props__tag.ok{border-color:#e5faee;background-color:#f2fdf6}.gdoc-props__tag.tip{border-color:#e5faee;background-color:#f2fdf6}.gdoc-props__tag.important{border-color:#fbf5e9;background-color:#fdfaf4}.gdoc-props__tag.caution{border-color:#f1e6fb;background-color:#f8f2fd}.gdoc-props__tag.danger{border-color:#fbe6e6;background-color:#fdf2f2}.gdoc-props__tag.warning{border-color:#fbe6e6;background-color:#fdf2f2}.gdoc-props__tag{font-size:.875rem;font-weight:normal;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:.15rem;padding:.125rem .25rem;color:#343a40}.gdoc-props__default{font-size:.875rem}.gdoc-progress{margin-bottom:1rem}.gdoc-progress__label{padding:.25rem 0}.gdoc-progress__label--name{font-weight:bold}.gdoc-progress__wrap{background-color:var(--accent-color-lite);border-radius:1em;box-shadow:inset 0 0 0 1px var(--accent-color)}.gdoc-progress__bar{height:1em;border-radius:1em;background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.125) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.125) 50%, rgba(255, 255, 255, 0.125) 75%, transparent 75%, transparent);background-size:2.5em 2.5em;background-color:#205375 !important} \ No newline at end of file diff --git a/themes/hugo-geekdoc/static/main-4434ec39.min.css b/themes/hugo-geekdoc/static/main-4434ec39.min.css new file mode 100644 index 000000000..47f6f38a6 --- /dev/null +++ b/themes/hugo-geekdoc/static/main-4434ec39.min.css @@ -0,0 +1 @@ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0;line-height:1.2em}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.flex{display:flex}.flex-auto{flex:1 1 auto}.flex-25{flex:1 1 25%}.flex-inline{display:inline-flex}.flex-even{flex:1 1}.flex-wrap{flex-wrap:wrap}.flex-grid{flex-direction:column;border:1px solid var(--accent-color);border-radius:.15rem;background:var(--accent-color-lite)}.flex-gap{flex-wrap:wrap;gap:1rem}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.align-center{align-items:center}.mx-auto{margin:0 auto}.text-center{text-align:center}.text-right{text-align:right}.no-wrap{white-space:nowrap}.hidden{display:none !important}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.table-wrap{overflow:auto;margin:1rem 0}.table-wrap>table{margin:0 !important}.badge-placeholder{display:inline-block;min-width:4rem}@font-face{font-family:"Liberation Sans";src:url("fonts/LiberationSans-Bold.woff2") format("woff2"),url("fonts/LiberationSans-Bold.woff") format("woff");font-weight:bold;font-style:normal;font-display:swap}@font-face{font-family:"Liberation Sans";src:url("fonts/LiberationSans-BoldItalic.woff2") format("woff2"),url("fonts/LiberationSans-BoldItalic.woff") format("woff");font-weight:bold;font-style:italic;font-display:swap}@font-face{font-family:"Liberation Sans";src:url("fonts/LiberationSans-Italic.woff2") format("woff2"),url("fonts/LiberationSans-Italic.woff") format("woff");font-weight:normal;font-style:italic;font-display:swap}@font-face{font-family:"Liberation Sans";src:url("fonts/LiberationSans.woff2") format("woff2"),url("fonts/LiberationSans.woff") format("woff");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:"Liberation Mono";src:url("fonts/LiberationMono.woff2") format("woff2"),url("fonts/LiberationMono.woff") format("woff");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:"Metropolis";src:url("fonts/Metropolis.woff2") format("woff2"),url("fonts/Metropolis.woff") format("woff");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:"GeekdocIcons";src:url("fonts/GeekdocIcons.woff2") format("woff2"),url("fonts/GeekdocIcons.woff") format("woff");font-weight:normal;font-style:normal;font-display:swap}body{font-family:var(--body-font-family)}code,.gdoc-error__title{font-family:var(--code-font-family)}.gdoc-header{font-family:var(--header-font-family)}:root{--code-max-height: none;--header-font-family: "Metropolis", sans-serif;--body-font-family: "Liberation Sans", sans-serif;--code-font-family: "Liberation Mono", monospace}:root,:root[color-theme=light]{--header-background: rgb(32, 83, 117);--header-font-color: rgb(255, 255, 255);--body-background: white;--body-font-color: rgb(52, 58, 64);--mark-color: rgb(255, 171, 0);--button-background: rgb(43.6295302013, 113.1640939597, 159.5204697987);--button-border-color: rgb(32, 83, 117);--link-color: rgb(10, 83, 154);--link-color-visited: rgb(119, 73, 191);--hint-link-color: rgb(10, 83, 154);--hint-link-color-visited: rgb(119, 73, 191);--accent-color-dark: rgb(206, 212, 218);--accent-color: rgb(233, 236, 239);--accent-color-lite: rgb(248, 249, 250);--control-icons: rgb(124.5724137931, 136.8, 149.0275862069);--footer-background: rgb(17, 43, 60);--footer-font-color: rgb(255, 255, 255);--footer-link-color: rgb(246, 107, 14);--footer-link-color-visited: rgb(246, 107, 14)}:root .dark-mode-dim .gdoc-markdown img,:root[color-theme=light] .dark-mode-dim .gdoc-markdown img{filter:none}:root .gdoc-markdown .gdoc-hint,:root .gdoc-markdown .gdoc-props__tag,:root .gdoc-markdown .admonitionblock,:root[color-theme=light] .gdoc-markdown .gdoc-hint,:root[color-theme=light] .gdoc-markdown .gdoc-props__tag,:root[color-theme=light] .gdoc-markdown .admonitionblock{filter:none}:root .gdoc-markdown .gdoc-hint__title,:root .gdoc-markdown .admonitionblock table td:first-child,:root[color-theme=light] .gdoc-markdown .gdoc-hint__title,:root[color-theme=light] .gdoc-markdown .admonitionblock table td:first-child{background-color:rgba(134,142,150,.05)}:root .chroma,:root[color-theme=light] .chroma{color:var(--code-font-color)}:root .chroma .lntable td:nth-child(2) code .hl,:root[color-theme=light] .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root .highlight pre.chroma,:root[color-theme=light] .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root .chroma .lntable,:root[color-theme=light] .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root .chroma .lntable pre.chroma,:root[color-theme=light] .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root .chroma .lntable td:first-child code,:root[color-theme=light] .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root .chroma .lntable td:nth-child(2),:root[color-theme=light] .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root .chroma .x,:root[color-theme=light] .chroma .x{color:inherit}:root .chroma .err,:root[color-theme=light] .chroma .err{color:#a61717;background-color:#e3d2d2}:root .chroma .lntd,:root[color-theme=light] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root .chroma .hl,:root[color-theme=light] .chroma .hl{display:block;width:100%;background-color:#ffc}:root .chroma .lnt,:root[color-theme=light] .chroma .lnt{padding:0 .8em}:root .chroma .ln,:root[color-theme=light] .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em}:root .chroma .k,:root[color-theme=light] .chroma .k{color:#000;font-weight:bold}:root .chroma .kc,:root[color-theme=light] .chroma .kc{color:#000;font-weight:bold}:root .chroma .kd,:root[color-theme=light] .chroma .kd{color:#000;font-weight:bold}:root .chroma .kn,:root[color-theme=light] .chroma .kn{color:#000;font-weight:bold}:root .chroma .kp,:root[color-theme=light] .chroma .kp{color:#000;font-weight:bold}:root .chroma .kr,:root[color-theme=light] .chroma .kr{color:#000;font-weight:bold}:root .chroma .kt,:root[color-theme=light] .chroma .kt{color:#458;font-weight:bold}:root .chroma .n,:root[color-theme=light] .chroma .n{color:inherit}:root .chroma .na,:root[color-theme=light] .chroma .na{color:#006767}:root .chroma .nb,:root[color-theme=light] .chroma .nb{color:#556165}:root .chroma .bp,:root[color-theme=light] .chroma .bp{color:#676767}:root .chroma .nc,:root[color-theme=light] .chroma .nc{color:#458;font-weight:bold}:root .chroma .no,:root[color-theme=light] .chroma .no{color:#006767}:root .chroma .nd,:root[color-theme=light] .chroma .nd{color:#3c5d5d;font-weight:bold}:root .chroma .ni,:root[color-theme=light] .chroma .ni{color:purple}:root .chroma .ne,:root[color-theme=light] .chroma .ne{color:#900;font-weight:bold}:root .chroma .nf,:root[color-theme=light] .chroma .nf{color:#900;font-weight:bold}:root .chroma .fm,:root[color-theme=light] .chroma .fm{color:inherit}:root .chroma .nl,:root[color-theme=light] .chroma .nl{color:#900;font-weight:bold}:root .chroma .nn,:root[color-theme=light] .chroma .nn{color:#555}:root .chroma .nx,:root[color-theme=light] .chroma .nx{color:inherit}:root .chroma .py,:root[color-theme=light] .chroma .py{color:inherit}:root .chroma .nt,:root[color-theme=light] .chroma .nt{color:navy}:root .chroma .nv,:root[color-theme=light] .chroma .nv{color:#006767}:root .chroma .vc,:root[color-theme=light] .chroma .vc{color:#006767}:root .chroma .vg,:root[color-theme=light] .chroma .vg{color:#006767}:root .chroma .vi,:root[color-theme=light] .chroma .vi{color:#006767}:root .chroma .vm,:root[color-theme=light] .chroma .vm{color:inherit}:root .chroma .l,:root[color-theme=light] .chroma .l{color:inherit}:root .chroma .ld,:root[color-theme=light] .chroma .ld{color:inherit}:root .chroma .s,:root[color-theme=light] .chroma .s{color:#d14}:root .chroma .sa,:root[color-theme=light] .chroma .sa{color:#d14}:root .chroma .sb,:root[color-theme=light] .chroma .sb{color:#d14}:root .chroma .sc,:root[color-theme=light] .chroma .sc{color:#d14}:root .chroma .dl,:root[color-theme=light] .chroma .dl{color:#d14}:root .chroma .sd,:root[color-theme=light] .chroma .sd{color:#d14}:root .chroma .s2,:root[color-theme=light] .chroma .s2{color:#d14}:root .chroma .se,:root[color-theme=light] .chroma .se{color:#d14}:root .chroma .sh,:root[color-theme=light] .chroma .sh{color:#d14}:root .chroma .si,:root[color-theme=light] .chroma .si{color:#d14}:root .chroma .sx,:root[color-theme=light] .chroma .sx{color:#d14}:root .chroma .sr,:root[color-theme=light] .chroma .sr{color:#009926}:root .chroma .s1,:root[color-theme=light] .chroma .s1{color:#d14}:root .chroma .ss,:root[color-theme=light] .chroma .ss{color:#990073}:root .chroma .m,:root[color-theme=light] .chroma .m{color:#027e83}:root .chroma .mb,:root[color-theme=light] .chroma .mb{color:#027e83}:root .chroma .mf,:root[color-theme=light] .chroma .mf{color:#027e83}:root .chroma .mh,:root[color-theme=light] .chroma .mh{color:#027e83}:root .chroma .mi,:root[color-theme=light] .chroma .mi{color:#027e83}:root .chroma .il,:root[color-theme=light] .chroma .il{color:#027e83}:root .chroma .mo,:root[color-theme=light] .chroma .mo{color:#027e83}:root .chroma .o,:root[color-theme=light] .chroma .o{color:#000;font-weight:bold}:root .chroma .ow,:root[color-theme=light] .chroma .ow{color:#000;font-weight:bold}:root .chroma .p,:root[color-theme=light] .chroma .p{color:inherit}:root .chroma .c,:root[color-theme=light] .chroma .c{color:#676765;font-style:italic}:root .chroma .ch,:root[color-theme=light] .chroma .ch{color:#676765;font-style:italic}:root .chroma .cm,:root[color-theme=light] .chroma .cm{color:#676765;font-style:italic}:root .chroma .c1,:root[color-theme=light] .chroma .c1{color:#676765;font-style:italic}:root .chroma .cs,:root[color-theme=light] .chroma .cs{color:#676767;font-weight:bold;font-style:italic}:root .chroma .cp,:root[color-theme=light] .chroma .cp{color:#676767;font-weight:bold;font-style:italic}:root .chroma .cpf,:root[color-theme=light] .chroma .cpf{color:#676767;font-weight:bold;font-style:italic}:root .chroma .g,:root[color-theme=light] .chroma .g{color:inherit}:root .chroma .gd,:root[color-theme=light] .chroma .gd{color:#000;background-color:#fdd}:root .chroma .ge,:root[color-theme=light] .chroma .ge{color:#000;font-style:italic}:root .chroma .gr,:root[color-theme=light] .chroma .gr{color:#a00}:root .chroma .gh,:root[color-theme=light] .chroma .gh{color:#676767}:root .chroma .gi,:root[color-theme=light] .chroma .gi{color:#000;background-color:#dfd}:root .chroma .go,:root[color-theme=light] .chroma .go{color:#6f6f6f}:root .chroma .gp,:root[color-theme=light] .chroma .gp{color:#555}:root .chroma .gs,:root[color-theme=light] .chroma .gs{font-weight:bold}:root .chroma .gu,:root[color-theme=light] .chroma .gu{color:#5f5f5f}:root .chroma .gt,:root[color-theme=light] .chroma .gt{color:#a00}:root .chroma .gl,:root[color-theme=light] .chroma .gl{text-decoration:underline}:root .chroma .w,:root[color-theme=light] .chroma .w{color:#bbb}:root,:root[color-theme=light]{--code-background: rgb(248, 249, 250);--code-accent-color: rgb(117.275, 136.95, 156.625);--code-accent-color-lite: rgb(204.425, 211.65, 218.875);--code-font-color: rgb(70, 70, 70);--code-copy-background: rgb(248, 249, 250);--code-copy-font-color: #6b6b6b;--code-copy-border-color: #909090;--code-copy-success-color: rgb(0, 200, 83)}@media(prefers-color-scheme: light){:root{--header-background: rgb(32, 83, 117);--header-font-color: rgb(255, 255, 255);--body-background: white;--body-font-color: rgb(52, 58, 64);--mark-color: rgb(255, 171, 0);--button-background: rgb(43.6295302013, 113.1640939597, 159.5204697987);--button-border-color: rgb(32, 83, 117);--link-color: rgb(10, 83, 154);--link-color-visited: rgb(119, 73, 191);--hint-link-color: rgb(10, 83, 154);--hint-link-color-visited: rgb(119, 73, 191);--accent-color-dark: rgb(206, 212, 218);--accent-color: rgb(233, 236, 239);--accent-color-lite: rgb(248, 249, 250);--control-icons: rgb(124.5724137931, 136.8, 149.0275862069);--footer-background: rgb(17, 43, 60);--footer-font-color: rgb(255, 255, 255);--footer-link-color: rgb(246, 107, 14);--footer-link-color-visited: rgb(246, 107, 14)}:root .dark-mode-dim .gdoc-markdown img{filter:none}:root .gdoc-markdown .gdoc-hint,:root .gdoc-markdown .gdoc-props__tag,:root .gdoc-markdown .admonitionblock{filter:none}:root .gdoc-markdown .gdoc-hint__title,:root .gdoc-markdown .admonitionblock table td:first-child{background-color:rgba(134,142,150,.05)}:root .chroma{color:var(--code-font-color)}:root .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root .chroma .x{color:inherit}:root .chroma .err{color:#a61717;background-color:#e3d2d2}:root .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root .chroma .hl{display:block;width:100%;background-color:#ffc}:root .chroma .lnt{padding:0 .8em}:root .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em}:root .chroma .k{color:#000;font-weight:bold}:root .chroma .kc{color:#000;font-weight:bold}:root .chroma .kd{color:#000;font-weight:bold}:root .chroma .kn{color:#000;font-weight:bold}:root .chroma .kp{color:#000;font-weight:bold}:root .chroma .kr{color:#000;font-weight:bold}:root .chroma .kt{color:#458;font-weight:bold}:root .chroma .n{color:inherit}:root .chroma .na{color:#006767}:root .chroma .nb{color:#556165}:root .chroma .bp{color:#676767}:root .chroma .nc{color:#458;font-weight:bold}:root .chroma .no{color:#006767}:root .chroma .nd{color:#3c5d5d;font-weight:bold}:root .chroma .ni{color:purple}:root .chroma .ne{color:#900;font-weight:bold}:root .chroma .nf{color:#900;font-weight:bold}:root .chroma .fm{color:inherit}:root .chroma .nl{color:#900;font-weight:bold}:root .chroma .nn{color:#555}:root .chroma .nx{color:inherit}:root .chroma .py{color:inherit}:root .chroma .nt{color:navy}:root .chroma .nv{color:#006767}:root .chroma .vc{color:#006767}:root .chroma .vg{color:#006767}:root .chroma .vi{color:#006767}:root .chroma .vm{color:inherit}:root .chroma .l{color:inherit}:root .chroma .ld{color:inherit}:root .chroma .s{color:#d14}:root .chroma .sa{color:#d14}:root .chroma .sb{color:#d14}:root .chroma .sc{color:#d14}:root .chroma .dl{color:#d14}:root .chroma .sd{color:#d14}:root .chroma .s2{color:#d14}:root .chroma .se{color:#d14}:root .chroma .sh{color:#d14}:root .chroma .si{color:#d14}:root .chroma .sx{color:#d14}:root .chroma .sr{color:#009926}:root .chroma .s1{color:#d14}:root .chroma .ss{color:#990073}:root .chroma .m{color:#027e83}:root .chroma .mb{color:#027e83}:root .chroma .mf{color:#027e83}:root .chroma .mh{color:#027e83}:root .chroma .mi{color:#027e83}:root .chroma .il{color:#027e83}:root .chroma .mo{color:#027e83}:root .chroma .o{color:#000;font-weight:bold}:root .chroma .ow{color:#000;font-weight:bold}:root .chroma .p{color:inherit}:root .chroma .c{color:#676765;font-style:italic}:root .chroma .ch{color:#676765;font-style:italic}:root .chroma .cm{color:#676765;font-style:italic}:root .chroma .c1{color:#676765;font-style:italic}:root .chroma .cs{color:#676767;font-weight:bold;font-style:italic}:root .chroma .cp{color:#676767;font-weight:bold;font-style:italic}:root .chroma .cpf{color:#676767;font-weight:bold;font-style:italic}:root .chroma .g{color:inherit}:root .chroma .gd{color:#000;background-color:#fdd}:root .chroma .ge{color:#000;font-style:italic}:root .chroma .gr{color:#a00}:root .chroma .gh{color:#676767}:root .chroma .gi{color:#000;background-color:#dfd}:root .chroma .go{color:#6f6f6f}:root .chroma .gp{color:#555}:root .chroma .gs{font-weight:bold}:root .chroma .gu{color:#5f5f5f}:root .chroma .gt{color:#a00}:root .chroma .gl{text-decoration:underline}:root .chroma .w{color:#bbb}:root{--code-background: rgb(248, 249, 250);--code-accent-color: rgb(117.275, 136.95, 156.625);--code-accent-color-lite: rgb(204.425, 211.65, 218.875);--code-font-color: rgb(70, 70, 70);--code-copy-background: rgb(248, 249, 250);--code-copy-font-color: #6b6b6b;--code-copy-border-color: #909090;--code-copy-success-color: rgb(0, 200, 83)}}:root[color-theme=dark]{--header-background: rgb(32, 83, 117);--header-font-color: rgb(255, 255, 255);--body-background: rgb(40.375, 53.375, 61.875);--body-font-color: rgb(180.9769254279, 196.5292481663, 206.6980745721);--mark-color: rgb(255, 171, 0);--button-background: rgb(43.6295302013, 113.1640939597, 159.5204697987);--button-border-color: rgb(32, 83, 117);--link-color: rgb(110, 168, 212);--link-color-visited: rgb(186, 142, 240);--hint-link-color: rgb(10, 83, 154);--hint-link-color-visited: rgb(119, 73, 191);--accent-color-dark: rgb(16.15, 21.35, 24.75);--accent-color: rgb(28.2625, 37.3625, 43.3125);--accent-color-lite: rgb(34.31875, 45.36875, 52.59375);--control-icons: rgb(124.5724137931, 136.8, 149.0275862069);--footer-background: rgb(17, 43, 60);--footer-font-color: rgb(255, 255, 255);--footer-link-color: rgb(246, 107, 14);--footer-link-color-visited: rgb(246, 107, 14)}:root[color-theme=dark] .dark-mode-dim .gdoc-markdown img{filter:brightness(0.75) grayscale(0.2)}:root[color-theme=dark] .gdoc-markdown .gdoc-hint,:root[color-theme=dark] .gdoc-markdown .gdoc-props__tag,:root[color-theme=dark] .gdoc-markdown .admonitionblock{filter:saturate(2.5) brightness(0.85)}:root[color-theme=dark] .gdoc-markdown .gdoc-hint a,:root[color-theme=dark] .gdoc-markdown .admonitionblock a{color:var(--hint-link-color)}:root[color-theme=dark] .gdoc-markdown .gdoc-hint a:visited,:root[color-theme=dark] .gdoc-markdown .admonitionblock a:visited{color:var(--hint-link-color-visited)}:root[color-theme=dark] .gdoc-markdown .gdoc-hint__title,:root[color-theme=dark] .gdoc-markdown .admonitionblock table td:first-child{background-color:rgba(134,142,150,.15)}:root[color-theme=dark] .chroma{color:var(--code-font-color)}:root[color-theme=dark] .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root[color-theme=dark] .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root[color-theme=dark] .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root[color-theme=dark] .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root[color-theme=dark] .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root[color-theme=dark] .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root[color-theme=dark] .chroma .x{color:inherit}:root[color-theme=dark] .chroma .err{color:inherit}:root[color-theme=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root[color-theme=dark] .chroma .hl{display:block;width:100%;background-color:#4f1605}:root[color-theme=dark] .chroma .lnt{padding:0 .8em}:root[color-theme=dark] .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em;color:#b3b3b3}:root[color-theme=dark] .chroma .k{color:#ff79c6}:root[color-theme=dark] .chroma .kc{color:#ff79c6}:root[color-theme=dark] .chroma .kd{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .kn{color:#ff79c6}:root[color-theme=dark] .chroma .kp{color:#ff79c6}:root[color-theme=dark] .chroma .kr{color:#ff79c6}:root[color-theme=dark] .chroma .kt{color:#8be9fd}:root[color-theme=dark] .chroma .n{color:inherit}:root[color-theme=dark] .chroma .na{color:#50fa7b}:root[color-theme=dark] .chroma .nb{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .bp{color:inherit}:root[color-theme=dark] .chroma .nc{color:#50fa7b}:root[color-theme=dark] .chroma .no{color:inherit}:root[color-theme=dark] .chroma .nd{color:inherit}:root[color-theme=dark] .chroma .ni{color:inherit}:root[color-theme=dark] .chroma .ne{color:inherit}:root[color-theme=dark] .chroma .nf{color:#50fa7b}:root[color-theme=dark] .chroma .fm{color:inherit}:root[color-theme=dark] .chroma .nl{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .nn{color:inherit}:root[color-theme=dark] .chroma .nx{color:inherit}:root[color-theme=dark] .chroma .py{color:inherit}:root[color-theme=dark] .chroma .nt{color:#ff79c6}:root[color-theme=dark] .chroma .nv{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .vc{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .vg{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .vi{color:#8be9fd;font-style:italic}:root[color-theme=dark] .chroma .vm{color:inherit}:root[color-theme=dark] .chroma .l{color:inherit}:root[color-theme=dark] .chroma .ld{color:inherit}:root[color-theme=dark] .chroma .s{color:#f1fa8c}:root[color-theme=dark] .chroma .sa{color:#f1fa8c}:root[color-theme=dark] .chroma .sb{color:#f1fa8c}:root[color-theme=dark] .chroma .sc{color:#f1fa8c}:root[color-theme=dark] .chroma .dl{color:#f1fa8c}:root[color-theme=dark] .chroma .sd{color:#f1fa8c}:root[color-theme=dark] .chroma .s2{color:#f1fa8c}:root[color-theme=dark] .chroma .se{color:#f1fa8c}:root[color-theme=dark] .chroma .sh{color:#f1fa8c}:root[color-theme=dark] .chroma .si{color:#f1fa8c}:root[color-theme=dark] .chroma .sx{color:#f1fa8c}:root[color-theme=dark] .chroma .sr{color:#f1fa8c}:root[color-theme=dark] .chroma .s1{color:#f1fa8c}:root[color-theme=dark] .chroma .ss{color:#f1fa8c}:root[color-theme=dark] .chroma .m{color:#bd93f9}:root[color-theme=dark] .chroma .mb{color:#bd93f9}:root[color-theme=dark] .chroma .mf{color:#bd93f9}:root[color-theme=dark] .chroma .mh{color:#bd93f9}:root[color-theme=dark] .chroma .mi{color:#bd93f9}:root[color-theme=dark] .chroma .il{color:#bd93f9}:root[color-theme=dark] .chroma .mo{color:#bd93f9}:root[color-theme=dark] .chroma .o{color:#ff79c6}:root[color-theme=dark] .chroma .ow{color:#ff79c6}:root[color-theme=dark] .chroma .p{color:inherit}:root[color-theme=dark] .chroma .c{color:#96a6d8}:root[color-theme=dark] .chroma .ch{color:#96a6d8}:root[color-theme=dark] .chroma .cm{color:#96a6d8}:root[color-theme=dark] .chroma .c1{color:#96a6d8}:root[color-theme=dark] .chroma .cs{color:#96a6d8}:root[color-theme=dark] .chroma .cp{color:#ff79c6}:root[color-theme=dark] .chroma .cpf{color:#ff79c6}:root[color-theme=dark] .chroma .g{color:inherit}:root[color-theme=dark] .chroma .gd{color:#d98f90}:root[color-theme=dark] .chroma .ge{text-decoration:underline}:root[color-theme=dark] .chroma .gr{color:inherit}:root[color-theme=dark] .chroma .gh{font-weight:bold;color:inherit}:root[color-theme=dark] .chroma .gi{font-weight:bold}:root[color-theme=dark] .chroma .go{color:#8f9ea8}:root[color-theme=dark] .chroma .gp{color:inherit}:root[color-theme=dark] .chroma .gs{color:inherit}:root[color-theme=dark] .chroma .gu{font-weight:bold}:root[color-theme=dark] .chroma .gt{color:inherit}:root[color-theme=dark] .chroma .gl{text-decoration:underline}:root[color-theme=dark] .chroma .w{color:inherit}:root[color-theme=dark]{--code-background: rgb(34.31875, 45.36875, 52.59375);--code-accent-color: rgb(24.023125, 31.758125, 36.815625);--code-accent-color-lite: rgb(29.1709375, 38.5634375, 44.7046875);--code-font-color: rgb(185, 185, 185);--code-copy-background: rgb(34.31875, 45.36875, 52.59375);--code-copy-font-color: rgb(157.25, 157.25, 157.25);--code-copy-border-color: #949494;--code-copy-success-color: rgba(0, 200, 83, 0.45)}:root[code-theme=dark] .chroma{color:var(--code-font-color)}:root[code-theme=dark] .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root[code-theme=dark] .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root[code-theme=dark] .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root[code-theme=dark] .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root[code-theme=dark] .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root[code-theme=dark] .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root[code-theme=dark] .chroma .x{color:inherit}:root[code-theme=dark] .chroma .err{color:inherit}:root[code-theme=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root[code-theme=dark] .chroma .hl{display:block;width:100%;background-color:#4f1605}:root[code-theme=dark] .chroma .lnt{padding:0 .8em}:root[code-theme=dark] .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em;color:#b3b3b3}:root[code-theme=dark] .chroma .k{color:#ff79c6}:root[code-theme=dark] .chroma .kc{color:#ff79c6}:root[code-theme=dark] .chroma .kd{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .kn{color:#ff79c6}:root[code-theme=dark] .chroma .kp{color:#ff79c6}:root[code-theme=dark] .chroma .kr{color:#ff79c6}:root[code-theme=dark] .chroma .kt{color:#8be9fd}:root[code-theme=dark] .chroma .n{color:inherit}:root[code-theme=dark] .chroma .na{color:#50fa7b}:root[code-theme=dark] .chroma .nb{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .bp{color:inherit}:root[code-theme=dark] .chroma .nc{color:#50fa7b}:root[code-theme=dark] .chroma .no{color:inherit}:root[code-theme=dark] .chroma .nd{color:inherit}:root[code-theme=dark] .chroma .ni{color:inherit}:root[code-theme=dark] .chroma .ne{color:inherit}:root[code-theme=dark] .chroma .nf{color:#50fa7b}:root[code-theme=dark] .chroma .fm{color:inherit}:root[code-theme=dark] .chroma .nl{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .nn{color:inherit}:root[code-theme=dark] .chroma .nx{color:inherit}:root[code-theme=dark] .chroma .py{color:inherit}:root[code-theme=dark] .chroma .nt{color:#ff79c6}:root[code-theme=dark] .chroma .nv{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .vc{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .vg{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .vi{color:#8be9fd;font-style:italic}:root[code-theme=dark] .chroma .vm{color:inherit}:root[code-theme=dark] .chroma .l{color:inherit}:root[code-theme=dark] .chroma .ld{color:inherit}:root[code-theme=dark] .chroma .s{color:#f1fa8c}:root[code-theme=dark] .chroma .sa{color:#f1fa8c}:root[code-theme=dark] .chroma .sb{color:#f1fa8c}:root[code-theme=dark] .chroma .sc{color:#f1fa8c}:root[code-theme=dark] .chroma .dl{color:#f1fa8c}:root[code-theme=dark] .chroma .sd{color:#f1fa8c}:root[code-theme=dark] .chroma .s2{color:#f1fa8c}:root[code-theme=dark] .chroma .se{color:#f1fa8c}:root[code-theme=dark] .chroma .sh{color:#f1fa8c}:root[code-theme=dark] .chroma .si{color:#f1fa8c}:root[code-theme=dark] .chroma .sx{color:#f1fa8c}:root[code-theme=dark] .chroma .sr{color:#f1fa8c}:root[code-theme=dark] .chroma .s1{color:#f1fa8c}:root[code-theme=dark] .chroma .ss{color:#f1fa8c}:root[code-theme=dark] .chroma .m{color:#bd93f9}:root[code-theme=dark] .chroma .mb{color:#bd93f9}:root[code-theme=dark] .chroma .mf{color:#bd93f9}:root[code-theme=dark] .chroma .mh{color:#bd93f9}:root[code-theme=dark] .chroma .mi{color:#bd93f9}:root[code-theme=dark] .chroma .il{color:#bd93f9}:root[code-theme=dark] .chroma .mo{color:#bd93f9}:root[code-theme=dark] .chroma .o{color:#ff79c6}:root[code-theme=dark] .chroma .ow{color:#ff79c6}:root[code-theme=dark] .chroma .p{color:inherit}:root[code-theme=dark] .chroma .c{color:#96a6d8}:root[code-theme=dark] .chroma .ch{color:#96a6d8}:root[code-theme=dark] .chroma .cm{color:#96a6d8}:root[code-theme=dark] .chroma .c1{color:#96a6d8}:root[code-theme=dark] .chroma .cs{color:#96a6d8}:root[code-theme=dark] .chroma .cp{color:#ff79c6}:root[code-theme=dark] .chroma .cpf{color:#ff79c6}:root[code-theme=dark] .chroma .g{color:inherit}:root[code-theme=dark] .chroma .gd{color:#d98f90}:root[code-theme=dark] .chroma .ge{text-decoration:underline}:root[code-theme=dark] .chroma .gr{color:inherit}:root[code-theme=dark] .chroma .gh{font-weight:bold;color:inherit}:root[code-theme=dark] .chroma .gi{font-weight:bold}:root[code-theme=dark] .chroma .go{color:#8f9ea8}:root[code-theme=dark] .chroma .gp{color:inherit}:root[code-theme=dark] .chroma .gs{color:inherit}:root[code-theme=dark] .chroma .gu{font-weight:bold}:root[code-theme=dark] .chroma .gt{color:inherit}:root[code-theme=dark] .chroma .gl{text-decoration:underline}:root[code-theme=dark] .chroma .w{color:inherit}:root[code-theme=dark]{--code-background: rgb(34.31875, 45.36875, 52.59375);--code-accent-color: rgb(24.023125, 31.758125, 36.815625);--code-accent-color-lite: rgb(29.1709375, 38.5634375, 44.7046875);--code-font-color: rgb(185, 185, 185);--code-copy-background: rgb(34.31875, 45.36875, 52.59375);--code-copy-font-color: rgb(157.25, 157.25, 157.25);--code-copy-border-color: #949494;--code-copy-success-color: rgba(0, 200, 83, 0.45)}@media(prefers-color-scheme: dark){:root{--header-background: rgb(32, 83, 117);--header-font-color: rgb(255, 255, 255);--body-background: rgb(40.375, 53.375, 61.875);--body-font-color: rgb(180.9769254279, 196.5292481663, 206.6980745721);--mark-color: rgb(255, 171, 0);--button-background: rgb(43.6295302013, 113.1640939597, 159.5204697987);--button-border-color: rgb(32, 83, 117);--link-color: rgb(110, 168, 212);--link-color-visited: rgb(186, 142, 240);--hint-link-color: rgb(10, 83, 154);--hint-link-color-visited: rgb(119, 73, 191);--accent-color-dark: rgb(16.15, 21.35, 24.75);--accent-color: rgb(28.2625, 37.3625, 43.3125);--accent-color-lite: rgb(34.31875, 45.36875, 52.59375);--control-icons: rgb(124.5724137931, 136.8, 149.0275862069);--footer-background: rgb(17, 43, 60);--footer-font-color: rgb(255, 255, 255);--footer-link-color: rgb(246, 107, 14);--footer-link-color-visited: rgb(246, 107, 14)}:root .dark-mode-dim .gdoc-markdown img{filter:brightness(0.75) grayscale(0.2)}:root .gdoc-markdown .gdoc-hint,:root .gdoc-markdown .gdoc-props__tag,:root .gdoc-markdown .admonitionblock{filter:saturate(2.5) brightness(0.85)}:root .gdoc-markdown .gdoc-hint a,:root .gdoc-markdown .admonitionblock a{color:var(--hint-link-color)}:root .gdoc-markdown .gdoc-hint a:visited,:root .gdoc-markdown .admonitionblock a:visited{color:var(--hint-link-color-visited)}:root .gdoc-markdown .gdoc-hint__title,:root .gdoc-markdown .admonitionblock table td:first-child{background-color:rgba(134,142,150,.15)}:root .chroma{color:var(--code-font-color)}:root .chroma .lntable td:nth-child(2) code .hl{width:auto;margin-left:-0.5em;padding:0 .5em}:root .highlight pre.chroma{width:100%;overflow:auto;max-height:var(--code-max-height)}:root .chroma .lntable{border:1px solid var(--code-accent-color);border-radius:.15rem;border-spacing:0;padding:0;margin:0;width:100%;display:block;max-height:var(--code-max-height);overflow:auto}:root .chroma .lntable pre.chroma{max-height:none;border-radius:0;margin:0}:root .chroma .lntable td:first-child code{background-color:var(--code-accent-color-lite);border-right:1px solid var(--code-accent-color);padding-left:0;padding-right:0;border-radius:0}:root .chroma .lntable td:nth-child(2){width:100%;margin-left:2rem}:root .chroma .x{color:inherit}:root .chroma .err{color:inherit}:root .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}:root .chroma .hl{display:block;width:100%;background-color:#4f1605}:root .chroma .lnt{padding:0 .8em}:root .chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em;color:#b3b3b3}:root .chroma .k{color:#ff79c6}:root .chroma .kc{color:#ff79c6}:root .chroma .kd{color:#8be9fd;font-style:italic}:root .chroma .kn{color:#ff79c6}:root .chroma .kp{color:#ff79c6}:root .chroma .kr{color:#ff79c6}:root .chroma .kt{color:#8be9fd}:root .chroma .n{color:inherit}:root .chroma .na{color:#50fa7b}:root .chroma .nb{color:#8be9fd;font-style:italic}:root .chroma .bp{color:inherit}:root .chroma .nc{color:#50fa7b}:root .chroma .no{color:inherit}:root .chroma .nd{color:inherit}:root .chroma .ni{color:inherit}:root .chroma .ne{color:inherit}:root .chroma .nf{color:#50fa7b}:root .chroma .fm{color:inherit}:root .chroma .nl{color:#8be9fd;font-style:italic}:root .chroma .nn{color:inherit}:root .chroma .nx{color:inherit}:root .chroma .py{color:inherit}:root .chroma .nt{color:#ff79c6}:root .chroma .nv{color:#8be9fd;font-style:italic}:root .chroma .vc{color:#8be9fd;font-style:italic}:root .chroma .vg{color:#8be9fd;font-style:italic}:root .chroma .vi{color:#8be9fd;font-style:italic}:root .chroma .vm{color:inherit}:root .chroma .l{color:inherit}:root .chroma .ld{color:inherit}:root .chroma .s{color:#f1fa8c}:root .chroma .sa{color:#f1fa8c}:root .chroma .sb{color:#f1fa8c}:root .chroma .sc{color:#f1fa8c}:root .chroma .dl{color:#f1fa8c}:root .chroma .sd{color:#f1fa8c}:root .chroma .s2{color:#f1fa8c}:root .chroma .se{color:#f1fa8c}:root .chroma .sh{color:#f1fa8c}:root .chroma .si{color:#f1fa8c}:root .chroma .sx{color:#f1fa8c}:root .chroma .sr{color:#f1fa8c}:root .chroma .s1{color:#f1fa8c}:root .chroma .ss{color:#f1fa8c}:root .chroma .m{color:#bd93f9}:root .chroma .mb{color:#bd93f9}:root .chroma .mf{color:#bd93f9}:root .chroma .mh{color:#bd93f9}:root .chroma .mi{color:#bd93f9}:root .chroma .il{color:#bd93f9}:root .chroma .mo{color:#bd93f9}:root .chroma .o{color:#ff79c6}:root .chroma .ow{color:#ff79c6}:root .chroma .p{color:inherit}:root .chroma .c{color:#96a6d8}:root .chroma .ch{color:#96a6d8}:root .chroma .cm{color:#96a6d8}:root .chroma .c1{color:#96a6d8}:root .chroma .cs{color:#96a6d8}:root .chroma .cp{color:#ff79c6}:root .chroma .cpf{color:#ff79c6}:root .chroma .g{color:inherit}:root .chroma .gd{color:#d98f90}:root .chroma .ge{text-decoration:underline}:root .chroma .gr{color:inherit}:root .chroma .gh{font-weight:bold;color:inherit}:root .chroma .gi{font-weight:bold}:root .chroma .go{color:#8f9ea8}:root .chroma .gp{color:inherit}:root .chroma .gs{color:inherit}:root .chroma .gu{font-weight:bold}:root .chroma .gt{color:inherit}:root .chroma .gl{text-decoration:underline}:root .chroma .w{color:inherit}:root{--code-background: rgb(34.31875, 45.36875, 52.59375);--code-accent-color: rgb(24.023125, 31.758125, 36.815625);--code-accent-color-lite: rgb(29.1709375, 38.5634375, 44.7046875);--code-font-color: rgb(185, 185, 185);--code-copy-background: rgb(34.31875, 45.36875, 52.59375);--code-copy-font-color: rgb(157.25, 157.25, 157.25);--code-copy-border-color: #949494;--code-copy-success-color: rgba(0, 200, 83, 0.45)}}html{font-size:16px;letter-spacing:.33px;scroll-behavior:smooth}html.color-toggle-hidden #gdoc-color-theme{display:none}html.color-toggle-light #gdoc-color-theme .gdoc_brightness_light{display:inline-block}html.color-toggle-light #gdoc-color-theme .gdoc_brightness_auto,html.color-toggle-light #gdoc-color-theme .gdoc_brightness_dark{display:none}html.color-toggle-dark #gdoc-color-theme .gdoc_brightness_dark{display:inline-block}html.color-toggle-dark #gdoc-color-theme .gdoc_brightness_auto,html.color-toggle-dark #gdoc-color-theme .gdoc_brightness_light{display:none}html.color-toggle-auto #gdoc-color-theme .gdoc_brightness_light{display:none}html.color-toggle-auto #gdoc-color-theme .gdoc_brightness_dark{display:none}html.color-toggle-auto #gdoc-color-theme .gdoc_brightness_auto{display:inline-block}html,body{min-width:20rem;overflow-x:hidden}body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}body *{box-sizing:inherit}h1,h2,h3,h4,h5,h6{font-weight:normal;display:flex;align-items:center}h4,h5,h6{font-size:1rem !important}a{text-decoration:none;color:var(--link-color)}a:hover{text-decoration:underline}a:visited{color:var(--link-color-visited)}i.gdoc-icon{font-family:"GeekdocIcons";font-style:normal}img{vertical-align:middle}#gdoc-color-theme{cursor:pointer}.fake-link:hover{background-image:linear-gradient(var(--link-color), var(--link-color));background-position:0 100%;background-size:100% 1px;background-repeat:no-repeat;text-decoration:none}.wrapper{display:flex;flex-direction:column;min-height:100vh;color:var(--body-font-color);background:var(--body-background);font-weight:normal}.container{width:100%;max-width:82rem;margin:0 auto;padding:1.25rem}svg.gdoc-icon{display:inline-block;width:1.25rem;height:1.25rem;vertical-align:middle;stroke-width:0;stroke:currentColor;fill:currentColor;position:relative}.gdoc-header{background:var(--header-background);color:var(--header-font-color);border-bottom:.3em solid var(--footer-background)}.gdoc-header__link,.gdoc-header__link:visited{color:var(--header-font-color)}.gdoc-header__link:hover{text-decoration:none}.gdoc-header svg.gdoc-icon{width:2rem;height:2rem}.gdoc-brand{font-size:2rem;line-height:2rem}.gdoc-brand__img{margin-right:1rem;width:2rem;height:2rem}.gdoc-menu-header__items{display:flex}.gdoc-menu-header__items>span{margin-left:.5rem}.gdoc-menu-header__control,.gdoc-menu-header__home{display:none}.gdoc-menu-header__control svg.gdoc-icon,.gdoc-menu-header__home svg.gdoc-icon{cursor:pointer}.gdoc-nav{flex:0 0 18rem}.gdoc-nav nav{width:18rem;padding:1rem 2rem 1rem 0}.gdoc-nav nav>ul>li>*{font-weight:normal}.gdoc-nav nav section{margin-top:2rem}.gdoc-nav__control{display:none;margin:0;padding:0}.gdoc-nav__control svg.gdoc-icon{cursor:pointer}.gdoc-nav__control svg.gdoc-icon.gdoc_menu{display:inline-block}.gdoc-nav__control svg.gdoc-icon.gdoc_arrow_back{display:none}.gdoc-nav__list{padding-left:1rem;margin:0;padding:0;list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.gdoc-nav__list ul{padding-left:1rem}.gdoc-nav__list li{margin:.75rem 0}.gdoc-nav__list svg.gdoc-icon{margin-right:.25rem}.gdoc-nav__toggle{display:none}.gdoc-nav__toggle~label{cursor:pointer}.gdoc-nav__toggle~label svg.gdoc-icon.toggle{width:1rem;height:1rem}.gdoc-nav__toggle:not(:checked)~ul,.gdoc-nav__toggle:not(:checked)~label svg.gdoc-icon.gdoc_keyboard_arrow_down{display:none}.gdoc-nav__toggle:not(:checked)~label svg.gdoc-icon.gdoc_keyboard_arrow_left{display:block}.gdoc-nav__toggle:checked~ul,.gdoc-nav__toggle:checked~label svg.gdoc-icon.gdoc_keyboard_arrow_down{display:block}.gdoc-nav__toggle:checked~label svg.gdoc-icon.gdoc_keyboard_arrow_left{display:none}.gdoc-nav--main>ul>li>span,.gdoc-nav--main>ul>li>span>a,.gdoc-nav--main>ul>li>label,.gdoc-nav--main>ul>li>label>a{font-weight:bold}.gdoc-nav__entry,.gdoc-language__entry{flex:1;color:var(--body-font-color)}.gdoc-nav__entry:hover,.gdoc-nav__entry.is-active,.gdoc-language__entry:hover,.gdoc-language__entry.is-active{text-decoration:underline;text-decoration-style:dashed !important}.gdoc-nav__entry:visited,.gdoc-language__entry:visited{color:var(--body-font-color)}.gdoc-search__list,.gdoc-language__list{background:var(--body-background);border-radius:.15rem;box-shadow:0 1px 3px 0 var(--accent-color-dark),0 1px 2px 0 var(--accent-color);position:absolute;margin:0;padding:.5rem .25rem !important;list-style:none;top:calc(100% + 0.5rem);z-index:2}.gdoc-page{min-width:18rem;flex-grow:1;padding:1rem 0}.gdoc-page h1,.gdoc-page h2,.gdoc-page h3,.gdoc-page h4,.gdoc-page h5,.gdoc-page h6{font-weight:600}.gdoc-page__header,.gdoc-page__footer{margin-bottom:1.5rem}.gdoc-page__header svg.gdoc-icon,.gdoc-page__footer svg.gdoc-icon{color:var(--control-icons)}.gdoc-page__header a,.gdoc-page__header a:visited,.gdoc-page__footer a,.gdoc-page__footer a:visited{color:var(--link-color)}.gdoc-page__header{background:var(--accent-color-lite);padding:.5rem 1rem;border-radius:.15rem}.gdoc-page__nav:hover{background-image:linear-gradient(var(--link-color), var(--link-color));background-position:0 100%;background-size:100% 1px;background-repeat:no-repeat}.gdoc-page__anchorwrap{gap:.5em}.gdoc-page__anchorwrap:hover .gdoc-page__anchor svg.gdoc-icon{color:var(--control-icons)}.gdoc-page__anchor svg.gdoc-icon{width:1.85em;height:1.85em;color:rgba(0,0,0,0)}.gdoc-page__anchor:focus svg.gdoc-icon{color:var(--control-icons)}.gdoc-page__footer{margin-top:2rem}.gdoc-page__footer a:hover{text-decoration:none}.gdoc-post{word-wrap:break-word;border-top:1px dashed #868e96;padding:2rem 0}.gdoc-post:first-of-type{padding-top:0}.gdoc-post__header h1{margin-top:0}.gdoc-post__header a,.gdoc-post__header a:visited{color:var(--body-font-color);text-decoration:none}.gdoc-post__header a:hover{background:none;text-decoration:underline;color:var(--body-font-color)}.gdoc-post:first-child{border-top:0}.gdoc-post:first-child h1{margin-top:0}.gdoc-post__readmore{margin:2rem 0}.gdoc-post__readmore a,.gdoc-post__readmore a:hover,.gdoc-post__readmore a:visited{color:var(--link-color);text-decoration:none !important}.gdoc-post__meta span svg.gdoc-icon{margin-left:-5px}.gdoc-post__meta>span{margin:.25rem 0}.gdoc-post__meta>span:not(:last-child){margin-right:.5rem}.gdoc-post__meta svg.gdoc-icon{font-size:1.25rem}.gdoc-post__meta .gdoc-button{margin:0 .125rem 0 0}.gdoc-post__meta--head{margin-bottom:2rem}.gdoc-post__codecontainer{position:relative}.gdoc-post__codecontainer:hover>.gdoc-post__codecopy{visibility:visible}.gdoc-post__codecopy{visibility:hidden;position:absolute;top:.5rem;right:.5rem;border:1.5px solid var(--code-copy-border-color);border-radius:.15rem;background:var(--code-copy-background);width:2rem;height:2rem}.gdoc-post__codecopy svg.gdoc-icon{top:0;width:1.25rem;height:1.25rem;color:var(--code-copy-font-color)}.gdoc-post__codecopy:hover{cursor:pointer}.gdoc-post__codecopy--success{border-color:var(--code-copy-success-color)}.gdoc-post__codecopy--success svg.gdoc-icon{color:var(--code-copy-success-color)}.gdoc-post__codecopy--out{transition:visibility 2s ease-out}.gdoc-footer{background:var(--footer-background);color:var(--footer-font-color)}.gdoc-footer .fake-link{text-decoration:none}.gdoc-footer .fake-link:hover{background-image:linear-gradient(var(--footer-link-color), var(--footer-link-color))}.gdoc-footer__item{line-height:2rem}.gdoc-footer__item--row{margin-right:1rem}.gdoc-footer__link{text-decoration:underline;color:var(--footer-link-color)}.gdoc-footer__link:visited{color:var(--footer-link-color-visited)}.gdoc-search{position:relative}.gdoc-search svg.gdoc-icon{position:absolute;left:.5rem;color:var(--control-icons);width:1.25rem;height:1.25rem}.gdoc-search::after{display:block;content:"";clear:both}.gdoc-search__input{width:100%;padding:.5rem;padding-left:2rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;border:1px solid rgba(0,0,0,0);border-radius:.15rem;background:var(--accent-color-lite);color:var(--body-font-color)}.gdoc-search__input:focus{outline:none !important;border:1px solid var(--accent-color)}.gdoc-search__list{visibility:hidden;left:0;width:100%}.gdoc-search__list ul{list-style:none;padding-left:0}.gdoc-search__list>li>span{font-weight:bold}.gdoc-search__list>li+li{margin-top:.25rem}.gdoc-search__list svg.gdoc-icon{margin-right:.25rem}.gdoc-search__section{display:flex;flex-direction:column;padding:.25rem !important}.gdoc-search__entry{display:flex;flex-direction:column;color:var(--body-font-color);padding:.25rem !important;border-radius:.15rem}.gdoc-search__entry:hover,.gdoc-search__entry.is-active{background:var(--accent-color-lite);text-decoration:none}.gdoc-search__entry:hover .gdoc-search__entry--title,.gdoc-search__entry.is-active .gdoc-search__entry--title{text-decoration-style:dashed !important;text-decoration:underline}.gdoc-search__entry:visited{color:var(--body-font-color)}.gdoc-search__entry--description{font-size:.875rem;font-style:italic}.gdoc-search:focus-within .gdoc-search__list.has-hits,.gdoc-search__list.has-hits:hover{visibility:visible}.gdoc-language__selector{position:relative;list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;margin:0;padding:0;width:100%}.gdoc-language__selector:focus .gdoc-language__list,.gdoc-language__selector:focus-within .gdoc-language__list,.gdoc-language__selector:active .gdoc-language__list{display:block}.gdoc-language__list{display:none;right:0;width:auto;white-space:nowrap}.gdoc-paging{padding:1rem 0}.gdoc-paging__item{flex:1 1 0}.gdoc-paging__item a:visited{color:var(--link-color)}.gdoc-paging__item a:hover,.gdoc-paging__item a:visited:hover{background:var(--link-color);color:#f8f9fa}.gdoc-paging__item--next{text-align:right}.gdoc-paging__item--prev{text-align:left}.gdoc-error{padding:6rem 1rem;margin:0 auto;max-width:45em}.gdoc-error svg.gdoc-icon{width:8rem;height:8rem;color:var(--body-font-color)}.gdoc-error__link,.gdoc-error__link:visited{text-decoration:underline;color:var(--link-color)}.gdoc-error__message{padding-left:4rem}.gdoc-error__line{padding:.5rem 0}.gdoc-error__title{font-size:4rem}.gdoc-error__code{font-weight:bolder}.gdoc-toc{margin:1rem 0}.gdoc-toc li{margin:.25rem 0}.gdoc-toc__level--1 ul ul,.gdoc-toc__level--2 ul ul ul,.gdoc-toc__level--3 ul ul ul ul,.gdoc-toc__level--4 ul ul ul ul ul,.gdoc-toc__level--5 ul ul ul ul ul ul,.gdoc-toc__level--6 ul ul ul ul ul ul ul{display:none}.gdoc-toc a,.gdoc-toc a:visited{text-decoration:none !important;color:var(--link-color)}.gdoc-nav nav,.gdoc-page,.markdown{transition:.2s ease-in-out;transition-property:transform,margin-left,opacity;will-change:transform,margin-left}.breadcrumb{display:inline;padding:0;margin:0}.breadcrumb li{display:inline}.gdoc-markdown{line-height:1.6rem}.gdoc-markdown h1,.gdoc-markdown h2,.gdoc-markdown h3,.gdoc-markdown h4,.gdoc-markdown h5,.gdoc-markdown h6{font-weight:600}.gdoc-markdown h1>code,.gdoc-markdown h2>code,.gdoc-markdown h3>code,.gdoc-markdown h4>code,.gdoc-markdown h5>code,.gdoc-markdown h6>code{border-top:3px solid var(--accent-color);font-size:.75rem !important}.gdoc-markdown h4>code,.gdoc-markdown h5>code,.gdoc-markdown h6>code{font-size:.875rem !important}.gdoc-markdown b,.gdoc-markdown optgroup,.gdoc-markdown strong{font-weight:bolder}.gdoc-markdown a,.gdoc-markdown__link{text-decoration:underline;border-bottom:1px solid rgba(0,0,0,0);line-height:normal}.gdoc-markdown a:hover,.gdoc-markdown__link:hover{text-decoration:underline}.gdoc-markdown__link--raw{text-decoration:none !important;color:#343a40 !important}.gdoc-markdown__link--raw:hover{text-decoration:none !important}.gdoc-markdown__link--raw:visited{color:#343a40 !important}.gdoc-markdown__link--code{text-decoration:none}.gdoc-markdown__link--code code{color:inherit !important}.gdoc-markdown__link--code:hover{background:none;color:var(--link-color) !important;text-decoration:underline}.gdoc-markdown__link--code:visited,.gdoc-markdown__link--code:visited:hover{color:var(--link-color-visited) !important}.gdoc-markdown__figure{padding:.25rem;margin:1rem 0;background-color:var(--accent-color);display:table;border-top-left-radius:.15rem;border-top-right-radius:.15rem}.gdoc-markdown__figure--round,.gdoc-markdown__figure--round img{border-radius:50% !important}.gdoc-markdown__figure figcaption{display:table-caption;caption-side:bottom;background-color:var(--accent-color);padding:0 .25rem .25rem;text-align:center;border-bottom-left-radius:.15rem;border-bottom-right-radius:.15rem}.gdoc-markdown__figure img{max-width:100%;height:auto}.gdoc-markdown img{max-width:100%;border-radius:.15rem}.gdoc-markdown blockquote{margin:1rem 0;padding:.5rem 1rem .5rem .75rem;border-left:3px solid var(--accent-color);border-radius:.15rem}.gdoc-markdown table:not(.lntable):not(.highlight){display:table;border-spacing:0;border-collapse:collapse;margin-top:1rem;margin-bottom:1rem;width:100%;text-align:left}.gdoc-markdown table:not(.lntable):not(.highlight) thead{border-bottom:3px solid var(--accent-color)}.gdoc-markdown table:not(.lntable):not(.highlight) tr th,.gdoc-markdown table:not(.lntable):not(.highlight) tr td{padding:.5rem 1rem}.gdoc-markdown table:not(.lntable):not(.highlight) tr{border-bottom:1.5px solid var(--accent-color)}.gdoc-markdown table:not(.lntable):not(.highlight) tr:nth-child(2n){background:var(--accent-color-lite)}.gdoc-markdown hr{height:1.5px;border:none;background:var(--accent-color)}.gdoc-markdown ul,.gdoc-markdown ol{padding-left:2rem}.gdoc-markdown dl dt{font-weight:bolder;margin-top:1rem}.gdoc-markdown dl dd{margin-left:2rem}.gdoc-markdown code{padding:.25rem .5rem}.gdoc-markdown pre,.gdoc-markdown code{background-color:var(--code-background);border-radius:.15rem;color:var(--code-font-color);font-size:.875rem;line-height:1rem}.gdoc-markdown pre code{display:block;padding:1rem;width:100%}.gdoc-markdown mark{background-color:var(--mark-color)}.gdoc-markdown__align{text-align:left}.gdoc-markdown__align--left h1,.gdoc-markdown__align--left h2,.gdoc-markdown__align--left h3,.gdoc-markdown__align--left h4,.gdoc-markdown__align--left h5,.gdoc-markdown__align--left h6{justify-content:flex-start}.gdoc-markdown__align--center{text-align:center}.gdoc-markdown__align--center h1,.gdoc-markdown__align--center h2,.gdoc-markdown__align--center h3,.gdoc-markdown__align--center h4,.gdoc-markdown__align--center h5,.gdoc-markdown__align--center h6{justify-content:center}.gdoc-markdown__align--right{text-align:right}.gdoc-markdown__align--right h1,.gdoc-markdown__align--right h2,.gdoc-markdown__align--right h3,.gdoc-markdown__align--right h4,.gdoc-markdown__align--right h5,.gdoc-markdown__align--right h6{justify-content:flex-end}.admonitionblock.info{border-left-color:#0091ea;background-color:rgb(243.27,249.2558974359,252.93);color:#343a40}.admonitionblock.note{border-left-color:#0091ea;background-color:rgb(243.27,249.2558974359,252.93);color:#343a40}.admonitionblock.ok{border-left-color:#00c853;background-color:hsl(144.9,70%,96.9607843137%);color:#343a40}.admonitionblock.tip{border-left-color:#00c853;background-color:hsl(144.9,70%,96.9607843137%);color:#343a40}.admonitionblock.important{border-left-color:#ffab00;background-color:hsl(40.2352941176,70%,97.5%);color:#343a40}.admonitionblock.caution{border-left-color:#7300d3;background-color:rgb(247.9961729858,242.2925,252.7575);color:#343a40}.admonitionblock.danger{border-left-color:#d50000;background-color:hsl(0,70%,97.0882352941%);color:#343a40}.admonitionblock.warning{border-left-color:#d50000;background-color:hsl(0,70%,97.0882352941%);color:#343a40}.admonitionblock{margin:1rem 0;padding:0;border-left:3px solid var(--accent-color);border-radius:.15rem}.admonitionblock table{margin:0 !important;padding:0 !important}.admonitionblock table tr{border:0 !important}.admonitionblock table td{display:block;padding:.25rem 1rem !important}.admonitionblock table td:first-child{background-color:rgba(134,142,150,.05);font-weight:bold}.admonitionblock table td:first-child.icon .title{display:flex;align-items:center}.admonitionblock table td:first-child.icon i.fa::after{content:attr(title);font-style:normal;padding-left:1.5rem}.admonitionblock table td:first-child.icon i.fa{color:#000;background-size:auto 90%;background-repeat:no-repeat;filter:invert(30%);margin-left:-5px}.admonitionblock table td:first-child.icon i.fa.icon-info{background-image:url(img/geekdoc-stack.svg#gdoc_info_outline)}.admonitionblock table td:first-child.icon i.fa.icon-note{background-image:url(img/geekdoc-stack.svg#gdoc_info_outline)}.admonitionblock table td:first-child.icon i.fa.icon-ok{background-image:url(img/geekdoc-stack.svg#gdoc_check_circle_outline)}.admonitionblock table td:first-child.icon i.fa.icon-tip{background-image:url(img/geekdoc-stack.svg#gdoc_check_circle_outline)}.admonitionblock table td:first-child.icon i.fa.icon-important{background-image:url(img/geekdoc-stack.svg#gdoc_error_outline)}.admonitionblock table td:first-child.icon i.fa.icon-caution{background-image:url(img/geekdoc-stack.svg#gdoc_dangerous)}.admonitionblock table td:first-child.icon i.fa.icon-danger{background-image:url(img/geekdoc-stack.svg#gdoc_fire)}.admonitionblock table td:first-child.icon i.fa.icon-warning{background-image:url(img/geekdoc-stack.svg#gdoc_fire)}.gdoc-expand{margin:1rem 0;border:1px solid var(--accent-color);border-radius:.15rem;overflow:hidden}.gdoc-expand__head{background:var(--accent-color-lite);padding:.5rem 1rem;cursor:pointer}.gdoc-expand__content{display:none;padding:0 1rem}.gdoc-expand__control:checked+.gdoc-expand__content{display:block}.gdoc-expand .gdoc-page__anchor{display:none}.gdoc-tabs{margin:1rem 0;border:1px solid var(--accent-color);border-radius:.15rem;overflow:hidden;display:flex;flex-wrap:wrap}.gdoc-tabs__label{display:inline-block;padding:.5rem 1rem;border-bottom:1px rgba(0,0,0,0);cursor:pointer}.gdoc-tabs__content{order:999;width:100%;border-top:1px solid var(--accent-color-lite);padding:0 1rem;display:none}.gdoc-tabs__control:checked+.gdoc-tabs__label{border-bottom:1.5px solid var(--link-color)}.gdoc-tabs__control:checked+.gdoc-tabs__label+.gdoc-tabs__content{display:block}.gdoc-tabs .gdoc-page__anchor{display:none}.gdoc-columns{margin:1rem 0}.gdoc-columns--regular>:first-child{flex:1}.gdoc-columns--small>:first-child{flex:.35;min-width:7rem}.gdoc-columns--large>:first-child{flex:1.65;min-width:33rem}.gdoc-columns__content{flex:1 1;min-width:13.2rem;padding:0}.gdoc-columns .gdoc-page__anchor{display:none}.gdoc-button{margin:1rem 0;display:inline-block;background:var(--accent-color-lite);border:1px solid var(--accent-color);border-radius:.15rem;cursor:pointer}.gdoc-button__link{display:inline-block;color:inherit !important;text-decoration:none !important}.gdoc-button:hover{background:var(--button-background);border-color:var(--button-border-color);color:#f8f9fa}.gdoc-button--regular{font-size:16px}.gdoc-button--regular .gdoc-button__link{padding:.25rem .5rem}.gdoc-button--large{font-size:1.25rem}.gdoc-button--large .gdoc-button__link{padding:.5rem 1rem}.gdoc-hint.info{border-left-color:#0091ea;background-color:rgb(243.27,249.2558974359,252.93);color:#343a40;padding:0}.gdoc-hint.info code,.gdoc-hint.info pre{background-color:rgb(220.5,229.0512820513,234.3);color:#464646}.gdoc-hint.note{border-left-color:#0091ea;background-color:rgb(243.27,249.2558974359,252.93);color:#343a40;padding:0}.gdoc-hint.note code,.gdoc-hint.note pre{background-color:rgb(220.5,229.0512820513,234.3);color:#464646}.gdoc-hint.ok{border-left-color:#00c853;background-color:hsl(144.9,70%,96.9607843137%);color:#343a40;padding:0}.gdoc-hint.ok code,.gdoc-hint.ok pre{background-color:rgb(216.25,231.75,222.6825);color:#464646}.gdoc-hint.tip{border-left-color:#00c853;background-color:hsl(144.9,70%,96.9607843137%);color:#343a40;padding:0}.gdoc-hint.tip code,.gdoc-hint.tip pre{background-color:rgb(216.25,231.75,222.6825);color:#464646}.gdoc-hint.important{border-left-color:#ffab00;background-color:hsl(40.2352941176,70%,97.5%);color:#343a40;padding:0}.gdoc-hint.important code,.gdoc-hint.important pre{background-color:hsl(40.2352941176,25%,90%);color:#464646}.gdoc-hint.caution{border-left-color:#7300d3;background-color:rgb(247.9961729858,242.2925,252.7575);color:#343a40;padding:0}.gdoc-hint.caution code,.gdoc-hint.caution pre{background-color:rgb(225.7731042654,217.625,232.575);color:#464646}.gdoc-hint.danger{border-left-color:#d50000;background-color:hsl(0,70%,97.0882352941%);color:#343a40;padding:0}.gdoc-hint.danger code,.gdoc-hint.danger pre{background-color:hsl(0,25%,88.3529411765%);color:#464646}.gdoc-hint.warning{border-left-color:#d50000;background-color:hsl(0,70%,97.0882352941%);color:#343a40;padding:0}.gdoc-hint.warning code,.gdoc-hint.warning pre{background-color:hsl(0,25%,88.3529411765%);color:#464646}.gdoc-hint__title{padding:.25rem 1rem;background-color:rgba(134,142,150,.05);font-weight:bold;color:rgba(52,58,64,.85)}.gdoc-hint__title i.fa::after{content:attr(title);font-style:normal;padding-left:1.5rem}.gdoc-hint__title i.fa{color:#000;background-size:auto 90%;background-repeat:no-repeat;filter:invert(30%);margin-left:-5px}.gdoc-hint__title i.fa.info{background-image:url(img/geekdoc-stack.svg#gdoc_info_outline)}.gdoc-hint__title i.fa.note{background-image:url(img/geekdoc-stack.svg#gdoc_info_outline)}.gdoc-hint__title i.fa.ok{background-image:url(img/geekdoc-stack.svg#gdoc_check_circle_outline)}.gdoc-hint__title i.fa.tip{background-image:url(img/geekdoc-stack.svg#gdoc_check_circle_outline)}.gdoc-hint__title i.fa.important{background-image:url(img/geekdoc-stack.svg#gdoc_error_outline)}.gdoc-hint__title i.fa.caution{background-image:url(img/geekdoc-stack.svg#gdoc_dangerous)}.gdoc-hint__title i.fa.danger{background-image:url(img/geekdoc-stack.svg#gdoc_fire)}.gdoc-hint__title i.fa.warning{background-image:url(img/geekdoc-stack.svg#gdoc_fire)}.gdoc-hint__title .gdoc-icon{width:1.5rem;height:1.5rem;margin-left:-5px}.gdoc-hint__text{padding:.25rem 1rem}.gdoc-hint .gdoc-page__anchor{display:none}.gdoc-mermaid{font-family:var(--body-font-family)}.gdoc-mermaid>svg{height:100%;padding:.5rem}.gdoc-props__title,.gdoc-props__default{padding:0;margin:0;font-family:var(--code-font-family)}.gdoc-props__meta{gap:.5em;line-height:normal;margin-bottom:.25rem}.gdoc-props__meta:hover .gdoc-page__anchor svg.gdoc-icon{color:var(--control-icons)}.gdoc-props__tag.info{border-color:rgb(231.54,243.5117948718,250.86);background-color:rgb(243.27,249.2558974359,252.93)}.gdoc-props__tag.note{border-color:rgb(231.54,243.5117948718,250.86);background-color:rgb(243.27,249.2558974359,252.93)}.gdoc-props__tag.ok{border-color:rgb(228.65,250.35,237.6555);background-color:hsl(144.9,70%,96.9607843137%)}.gdoc-props__tag.tip{border-color:rgb(228.65,250.35,237.6555);background-color:hsl(144.9,70%,96.9607843137%)}.gdoc-props__tag.important{border-color:hsl(40.2352941176,70%,95%);background-color:hsl(40.2352941176,70%,97.5%)}.gdoc-props__tag.caution{border-color:rgb(240.9923459716,229.585,250.515);background-color:rgb(247.9961729858,242.2925,252.7575)}.gdoc-props__tag.danger{border-color:hsl(0,70%,94.1764705882%);background-color:hsl(0,70%,97.0882352941%)}.gdoc-props__tag.warning{border-color:hsl(0,70%,94.1764705882%);background-color:hsl(0,70%,97.0882352941%)}.gdoc-props__tag{font-size:.875rem;font-weight:normal;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:.15rem;padding:.125rem .25rem;color:#343a40}.gdoc-props__default{font-size:.875rem}.gdoc-progress{margin-bottom:1rem}.gdoc-progress__label{padding:.25rem 0}.gdoc-progress__label--name{font-weight:bold}.gdoc-progress__wrap{background-color:var(--accent-color-lite);border-radius:1em;box-shadow:inset 0 0 0 1px var(--accent-color)}.gdoc-progress__bar{height:1em;border-radius:1em;background-image:linear-gradient(-45deg, rgba(255, 255, 255, 0.125) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.125) 50%, rgba(255, 255, 255, 0.125) 75%, transparent 75%, transparent);background-size:2.5em 2.5em;background-color:#205375 !important} \ No newline at end of file

    *8Q>_b)N|bk0fnpA2n*@goG;( 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 SH++!wwt9u#^5oy0kN+>Oshe>C literal 108728 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 SJf8&qTfJia57)k@?EOEU<0c3I diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1668x2224.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1668x2224.png index 34e222ef479614fcd0887dde080e5e505e911db4..5314bb44d74e5591c717656cb716ee6835563b70 100644 GIT binary patch literal 52584 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-icon-120x120.png b/themes/hugo-geekdoc/static/favicon/apple-touch-icon-120x120.png index 1ffcb212c9686126646c17cd2f655f545c1713d9..d83a0be1be59b17a94599e7ab1e71891470219e6 100644 GIT binary patch delta 1670 zcmai!e>~HPAIGh+kuii}qdPxx%g;_Wbd#KTkgrvmAHz16q}v*+-N>(xsiSm!RemP7 zP2X_M{D_q~wEXC>#K=etUsw8m+tyBKa@yDZeSdsk|2!Y>*B`GxUXRE7wQAI4RO$m4i)9M`X-96!;N9~emz9OvS>PUEVVs-B+5cJ0wrPtfevOl`H-O5yvK zUlrLt7tfA`w{Pp{_y%CMgS22Du^0tVD8`*59 zB0BPbyymB$d1EfOK>gW1NzWYb_yTA%_O|Q3vyovD;G2 zcHVUv&D>v2cRB?8ND>#1x@lS~H(n@24(*jGkob+k+@;H^WVtq}kR;wHbIKf_51VUk zi^*yuc`TMyi~68)LDOu^e$?m>lvHAYnw{=2NX7CJtv-RA>%$GG+?yvG(6>(9dXNT0 zEQNiOyIPj!>XfJ4xc9aYQrsstS+=T8`FW-=Y7+%3b4>i=urc@&{JV5%=$C^v_~o(d9hk&@G;x| z0PWe9LcOfBT??oy$w~&K{wk6Qss`9cT$?9{U@+5vt8OE_=Cq}TcHcH`6|>O<`uI{< zGNlwcZSeb5cItd@aa_9c3B&8cxEGTdBM4h4qy5?1fqIoHcf`4+Bfcqm^K!2VUC0wU zgbXolP1RHN$*4m)teD1h$yI~uj9!)5@QCsuU)|>+B|D6S86!2U5NI#p>A-q*S#DsR zaaT|q|2i;XDxrDmTGS=_OgW7tV8Ao7jwi z=!BgAPQ7o19g3G07y{+UqfT2`Jj)6x^MG#lKy~lc)dW* zu7ok|s^ahVm+DOW8=Vw3eB82xGoV%B{E1TVBmSp2ShwkPmR<{T*{*f9#;D*r|Mk{D zlW#tI@Q<9X#{|(&Y;+V|y->B1n?xxpM|O~J$Qpu~dwcQ#BX5^!|75D{^N85o1)G8& z4RO$3#^UmJd~8SStTyV@$A7_Tjd3EGTpc}{2|{KrPtcj3?i1$;U%OAt(i9;WBkpQ z&>R4S0a{)_u=bQ{q%D0{jTv5Y0xX%m&orDlrHkE9vBo0jbTAfuXDHlai8ugR$!25R z!Qk`pJD=J~+_h8u41plc>ea@4+6Muzh!EBcA&se9D=w!IWnBd87y8kX(E@I8=kE^< z1?Ss4w4-_>$j>q!+zO%38P0zQBr8Z8y34zyUa>f57bSjXzy{Mg{$b3S;TSN{0ti@sj`H4;w`}--9HbFBe%~Bg{88Mb6KOV)6Y!s0QH6%p2HS7%$;s3yoRmtvF9(-IBWC1orntNZztvRm+|~R|z~u^@ ztEevPIi9e%I@0pj5lilhOjvyS#uDZ8-5vFjGVh&)jAm6`mzY)b*C>@f*q8pFSAl7# zchAjbx-l2S*C-s-#TJiiqMoX}CqU z^zW?uplLssp=nqSWY~g$hZpa)86aHAwowg*CrPp0sCVuOmL>13((sD%%Xno?Z1S$t0iFoFCj;{x5%9~=W4+n#lo}S~z{|A2>1){xb#_r7}>+C4> LXhcwRASM5QcAOsJ delta 1741 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 F{{RfKa3cT! literal 2544 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-icon-167x167.png b/themes/hugo-geekdoc/static/favicon/apple-touch-icon-167x167.png index 589a79c3da1c5dea2fb054433b4de30bdccdc425..2b2b32829de165087f15c9ac37d00907671e2f95 100644 GIT binary patch literal 2881 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 D#@UgW literal 2993 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 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-icon-180x180.png b/themes/hugo-geekdoc/static/favicon/apple-touch-icon-180x180.png index f7eab5a29a0cbf019def3d01bdaf2d4adb695061..b3c03d13d9e4513004482efc6973be4bfaef33d1 100644 GIT binary patch literal 2714 zcmbtW`8OMg8cl3bYiHV88|hG$T7#4ld+n4~silLeHVsq4&{$JJjiO44v6ISFQQHtZ zRbz>&B?Oh&sPR1#KHDPwY0RVi~7RHA5!8xmwhXM8@V6y))hf5hM7voph zIVuupX|{~g!~vN%@FFtBB4Qp<6jhJlTR)}!%rO#qHr_#+*K~r{>+%~No+p19!Oaz& zOn|fV1rBS$eqT z#oDm@^AR^ASjR@vyO#RGtdNp;L%Jv*8#ad8r@BuOw!mPfXOUtYIPfqs0^=Un;Qzc~ z!mGNtrYsSh`a5`=E;s`JUjCYS=`#EgD}kAj!{ch-7!QslmDH|10L@=!IF3403V-NW zlhlj@;{yoO71K#xf3!&mgOO(Q0*u;#)ycY}_zP zb!ls28)px2R_MX_FSOfQz{X89f(9Co8TBnX3E*OQ4JbZ@JQ39npMxUgHwZh#)i(BG zrEu+b)z&7>Pz$(kza`FU!@QyE9*mu?v(d*7AWxS1l$1Tla{>(TQ%I$7{aoRILg6c? zm*7-&!j1&znqm6b*V2nFb%U!-67s!-9S(LAc}{zLAOewTIzLYx*5YTZ2G!mFRK%x+ z`T~)-^mGy+@mkq`S>2LZQP9tJldV`tn)7kCp32jN4%TN5)2^^)SI~e}zqoVxDUN$^ zSy3Tk0yk&5OV#)6;Tk4zv$n;$WXCa102%P#uSDKVOE=Qc0+4>Y7TmxP>0 zYqdv6Ir0*~@3-3dEc+W}A9bgt_ImX#^R4B zLb)mB_uVu*HM_C5LjBXZ4|mQ~}$HLiO!OXT0}k5U50E82h*fx{&89t`YBzIm(6nY1}KHQ-tNlGIu|H zWKY-c$jL0VcSWyxu>7+Iotu7WA5VpB-ql}&EH_s9;qqXfzJ!dhM!7}Rps7%y<(|@B zY}~dsv)?v|Cb&=Rx}lg67Vk^%NxCVIoY!CGw-qihrY^Fgo*^x+Dlp78A8$mbzI5J8 zYFw%LHOx>ynS795x-9}?GXCA|;WRO$72XV(&9Zc1nSoqRJDF>g7P&OS!0dOu@R@8B2MITi=IpFo~A*phP8T8kn3miZs@N7FdX@7 zX7PaN<}D?IShf3wpUe9do~<5i00VDjsP+-2WEUq)<7SVhG2Dzxu-P7KENms_P%zE( z)j7gV&#tsgV)SgThh;GZJwa-$;E}s!|3Pv^t^S^wC?|~gB8h~*!-vat%wUqhMD8QZyw-DC5G9!V zbGZ%~b|6HLOMf^}7sDA)^8)Pe~!887S6 z^V;HZcDF)AN{TxATU)cAn5>X}wTzue3?xRc%?56tQit_o3lR&c0lOWdJCjzH4Zy3P z|M5Y@F2CqRQCXAQv3m(#bHqDKYpMyXo?o=oC*VI)*JPT*q;$>D#$F16* zY0YHi6Wxq!-yjhOel1_RLj@li2 zske?6>?=s^dq*3PO#`@~AbWw54#((jta33I#V9Oj+}B-i%ki^jWxka>kVGlSuHE0v zT)FpbVll-MphSWiWb+fERrn|i9E`6C9Ha(-_HF^dM;Ryd;r}=t5_ax#?|0e+9`YP) z%U?8*hkj>MX^}4c`xW=R zX&_z`JMX0u%~PTAr1Jk;#+Tlhw+6i(k{t2ltPvsk&eQo=kw&kdt)t0_)KH4gBHfF@ z*kDG-NPl5AwUdY9?%ZTvF9Vg0k5k54JfUpDn{J2k`VbJJmx3Ez>a(f`37V9TRa@Py zBnp60xo%oy-C*d@yQQu8CU(cHskkLYyX9W<(X~F^WT=tJ+xKIte@F!m6h`gy=&^B) zbgZ!LU#I2%OFVEg_2?Hhd6j%D&UGm-hg|do`?kLIrl%lds_8hr+}So2sb}j6$)Cbz z+o~|lmVy?${qec!w&(a4so&DxFMXXEppj|f6y9P14wP}qzr{WzFsvHy(ftX2@@xVu MOl*wHjqXSN2Sh6`H2?qr delta 2869 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 BdP4vJ diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-icon-57x57.png b/themes/hugo-geekdoc/static/favicon/apple-touch-icon-57x57.png index d7971000758ce226f463dfcb929b6475cc92a47f..d7fd808b3dc0ff46ae0f91af5e518d8bcac3c932 100644 GIT binary patch delta 827 zcmV-B1H}B^2i6CWIRS`~I&*)BL=g!h5}amwb`CX#Wq4STfm@|A4BdZ>(?rI}v8Ymu zCX-1RWWR0@BjXjE!<^-5V+(ntVbO?(GDLRiw>am zc^X=VKLiib@~aD1^CR%DI>autIs~mPDg@K==0;kEI*`5@&H}CvRhN!nTH2gQix)s& zp%Ql=zV7J8n3I=S$S`RFmew}l{DPhckgic6)%h6d>@YU8A=6{mb&1qAwR)WLQ__{3 zZNppvt+i(nmJGJ`w~)dL9Zv$f~>MV&+N*q-rnOo(qLG`ya!KkS4@&q zpdw3ygCoBM0m90PZ5-OQ{C%nKNIsX44Fg+L>{+({a^N8S8H0azz!w^J+1zk6&x{5J zl8+Xo)mzZ=rO|C!w@AIgfETXjvXJ3Xi8wwvC4392L(uX`>#=T^NZs%#?oCK_IkPh7 zJXLkg0S^Rs$P?*Gk4s3HREA^YlkO{-(DBkmslIxzdy&M|2fJfayxI)B>FjY^0o8U# zP#}e{X>5~iYE#L5@XU4>25va0|+E$SD%m^Ofujrl8bfHYa~xV2pA-fKo9~+ z7fI3De9bP*ddcM&1k(RP9Fg9HOCXT=KS{Ob2?_)fCj(~PTS0+9>WqguuAmySY$xC@ z)2y`Zao3k)P6H>Vrujo^37^(E=3#XmZjU~0t4DS&%kzI88T>#Baqha7&fc%AI^|bX z{2)P~*93(XwNBrp`P*wGfr!j6sd73zmX^JL$pa!1L?rU{rg?pip2;MOEGBqoz+ITl zNzmN>2z3!=ugn{A(P+e2MTX!=X6@t+2>|$QU0NF6*Xk;*3HcQ!R*2^Ji^o6 zI>#{A+%7LF^YDFF?}mUN-jamiiA3lJ5Ro7vQAEOjB7zCNfTr zMU`4KnM}gWuKl_}jEq-s4s({LjV?GC7rbojkIw{Ub3TlMKyW^2p*! zEivHE=w#c_AdXZOl(HUXTa*lM+$-TU%#S%THqJQ^{6+3Kn8eG&urhx?i&X0^q{|bL zE;@kL=V@pe{t!G!%dak6&5yvp>JYoo>JYTHs1Qucn;U5v>OlHtI19KwR9!lPX=!sJ zEnWb9g-YCg_`0JTV@_UTA;Y8zSX$eF^9y<+K)ObOROe%)v%}cXhD?uL*CkTh)ar4{ zPf1sDwheOywAP+QSTcXuzGMFJ$|=;^r1TFNm3-c-wXLuJClTOUTtUqP?|er_#GUpE z+1~w`w=N1s=flDLoei~C%Y8@Y6qkDh?n_9;1-+g~3$n`gJhLmadV7!WNP}S!^Bz3G zT`@^cfr=~*4vzd51PCiDwsC0J^7o~_Bl%oHHVkZ0v1i%(%YlD`^k)p(0bgj?Wpl&P zJTn>?NIqJSR&PPemqxc`-6Hh{175hA%R+`nCF1zxl<+O64nfN&t;f1uB6Y)~xHloy z<;=>Q^HkL}2RsnmAy1?$JuV?(QW=hoPr9#ULdQ!NrTXfhrnARw z1ytJ|L4iP`C8>XxIrb0vD4r+~NQ_BGq`UQu4m`?C5J>+EaYT9(E`dPe|0LC#Cnyj|oD7(CZv_PcsWTqtxPofP zvYmjtOtaFq$6a5JISrhcn&uCwC45@vn1|JMxIOx~tsZ~bxh&6nWbgwi#JTHQI(xse z>Xctm@q+|`UK12n)H;2W=5Mc&1R^rOq{`{=SX%b}B@c*55L*)Ydegi5#SYy;J^R? N002ovPDHLkV1k&1jcEV? diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-icon-60x60.png b/themes/hugo-geekdoc/static/favicon/apple-touch-icon-60x60.png index c1d0a6abd9f2086d36b1d37c0c8fa814e312f2b5..242fb5a8ef6316f405dfde0e34fc1e577c9133fa 100644 GIT binary patch delta 888 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 DkaJk0 diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-icon-76x76.png b/themes/hugo-geekdoc/static/favicon/apple-touch-icon-76x76.png index a41a1caabc223c31f93174642cede12cd529e152..2006da2e0c692dc98c5b048107765cd30a75a4cf 100644 GIT binary patch delta 1216 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 MOl*wHjqXSN2Sh6`H2?qr delta 2869 zcmai$=|7YW7sqFeEzA%V#%PEvca}7R#@3+7S`vjUr5K^eAnP@nLfMiq_Dc%g6S|pH zWZ%2T7;BNTJjgcoC5G|v`~%NbXcR7aV4tLl*GPd1$o~0NlL0$t{j!P`G~1;li%iWswh`~l*lu?6Z|HY zLSFLudN8dkvPk)3Dh07`xJ8SNMOQw}O-(%joO5!J3dz?VEaE&_ZJRNRUBlH3&$4#` z3kF$Pv9X8yNGibF2CE)4#1PI8MnMut%={?QyE3Q=0$li$@`Ea6g71`QMB1OC$N)SCDQK z%+V7v+)O;_30{FXE#{g%u31*ofq9U&)I8EPsWAiCZdHZ>QQ>xEv=yaMGRZUGrvITl zF9XHMnu`?#sLl}q|B&^2xl2nvwIP;g&a@-L6}?XE&8U|Jn0gld(UiA3fv8$&KNqH} zA=6g(yr{Eta-dSn-*Q4{+G^5HZ-;T!ZDX{oXMR|`Spx^xsUzsigz351EetCnzM3)B z@2deY5A?#(g{(8SsFwlY2vs*;qp3}5B-*{L#RdnfV%-W`bU!-`+2#vva!MU9&W6_9 z6ElI=i3db>hx%W&CfO&Y-pgB(sjBD#)5{{PP^n_zDNdz01=e1;^4EbOm%Vm|gn+Cq ziz&9)I0!rL()2^adGYLcoIb_^^%4*RyR`E7rXW=Tol(Z)U^Zm8yBmPgx+tpx0xcRi zSm-4d8^V&C3W*c^R6(^srC`AR<764mL{(b1vgDT#>W@pB?YEhC$!zD8LR?nfUeK|k zJ08o~7c90)f`i=tRgy#ut)t;0k&S$72*~mL}DrLCh zj)7^wy;`*i>bMK`gU6y)u&5lU)7JV-rRNI=yK7*m#x}Ry&{@AG+yzB z+jNc2%P<;NNAPqT)(Fn5y!8uv>M|X6c@dBVmo4%?=imx$icDfEOECA-T2vB{;G4sa zu{ecTB}~Kv-k8%jbD4-`jub7>)a)eI?Wbt6%4gZM;;%;Bp3T0El$Kbo6#TNrvTQoNSH%S8(Mz953}FLj$u)TKKZ@E%%$G zw2l&80`uwI)buMST=)?C;|2gl=46nMWBL-@KGim+PeGZ}bW|UFbh3@8YrnnmO$6LU zVNPRKk5W#Fvvqz!v8O9kDNrP3P=O9f&>;IZ&g&A2v=nc8czDrkqk`_Sl}=Y6C=pQB zFfZWd;e0v_G4%P`ds0SV<2;T~HSD* z#Wu_<6VefxHhe;%>*zTMX6De)n}Yg2UB7xgODbc3M7lM)W^G=WnNhLcwD0w_Mzdxw zJ{+#6+=LK3O%gZkJx3UcUMmDO5hi2!hynyj=|C|VdX;fvwAsX{aD(!_?i(^-&eqM7 z*39G_^{;@NS_ME~g44v#MPza5OxSyF@X*AvQY<0T56UoX-l1()K@}PCIc`v!X@7s| zn zRSV*aB)Cn@_49#NTyT1L0TN16-fso?Y!yie0ou@T?*p}kPoKJD$NBMm+>Ytzg?4aK z;I2w$11NVac&gSd;DsD0mlo{dYUs``)*Gde_qUt?=d6(26K`#xur3WR_)q~76~Dop zhh~)pokDcGjS~nz*eLSQ$WU>1u{1t@lk>L&UsY1&LPe6h|g!`d*mf>qROLB z6cS(RHFWcQYYaWxc8;`wMFj~lrGjbt}`$h1W29?d~-|Sl~mNeK2ab8Tj;)Q?h zu=JggPYeoNuKdZ~0)#E>{bm=ZmiDi=|JS~@5XP%FJ3;GewcmfKaU?%LS#;r3(H{3% zhSuAYYjXoOIevC7HBLJf3Zgq}EWEvVy3kw0303up=lTB;(o%HD)&A@6|7=s!U9YNe z20uW2cQ){YQDvlb0d;{a$5hxBCH@^aHU`Sk z@5i&KX(oS5Pq!9&kj@Zoq;-4-;>v+2lD(&1y!G;w0?(mR-jQ0&ldj!O3;)+cQT8F@ z8R2eNA47ws?|S~=&?C-VB63;qvApnGUg|)dEaIvYv&7dooc)+D>g)3-nkSS?HbJD< zzR}*{<6FxeBiRnJ!H6}oXaoGAR=N89scn?`>XY>v|CG%uzy>xXfr1X#%{#@m$IhZk2!NV?MvW|%@Q)?Chz zTHHI{{}b!hpd}GS5$q6Y0oVqB?p9U3fQA6Qt?rPTq^-WzNO=x&I9caOFQ($52}9K7pL;O0 zJ}2W(U=T0%5%K`{kkJ3(-nIXOd(%ujKJ6PsE{0beDof(!QsFj=;pHm-!YhHpe&Xkc zVny6!MRe4#BF`r^>)Z1iF5nLkR50oQK~>5c_8`QtikCTvH6mm`%r01;FEw&|^j|4i BdP4vJ diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-icon.png b/themes/hugo-geekdoc/static/favicon/apple-touch-icon.png index f7eab5a29a0cbf019def3d01bdaf2d4adb695061..b3c03d13d9e4513004482efc6973be4bfaef33d1 100644 GIT binary patch literal 2714 zcmbtW`8OMg8cl3bYiHV88|hG$T7#4ld+n4~silLeHVsq4&{$JJjiO44v6ISFQQHtZ zRbz>&B?Oh&sPR1#KHDPwY0RVi~7RHA5!8xmwhXM8@V6y))hf5hM7voph zIVuupX|{~g!~vN%@FFtBB4Qp<6jhJlTR)}!%rO#qHr_#+*K~r{>+%~No+p19!Oaz& zOn|fV1rBS$eqT z#oDm@^AR^ASjR@vyO#RGtdNp;L%Jv*8#ad8r@BuOw!mPfXOUtYIPfqs0^=Un;Qzc~ z!mGNtrYsSh`a5`=E;s`JUjCYS=`#EgD}kAj!{ch-7!QslmDH|10L@=!IF3403V-NW zlhlj@;{yoO71K#xf3!&mgOO(Q0*u;#)ycY}_zP zb!ls28)px2R_MX_FSOfQz{X89f(9Co8TBnX3E*OQ4JbZ@JQ39npMxUgHwZh#)i(BG zrEu+b)z&7>Pz$(kza`FU!@QyE9*mu?v(d*7AWxS1l$1Tla{>(TQ%I$7{aoRILg6c? zm*7-&!j1&znqm6b*V2nFb%U!-67s!-9S(LAc}{zLAOewTIzLYx*5YTZ2G!mFRK%x+ z`T~)-^mGy+@mkq`S>2LZQP9tJldV`tn)7kCp32jN4%TN5)2^^)SI~e}zqoVxDUN$^ zSy3Tk0yk&5OV#)6;Tk4zv$n;$WXCa102%P#uSDKVOE=Qc0+4>Y7TmxP>0 zYqdv6Ir0*~@3-3dEc+W}A9bgt_ImX#^R4B zLb)mB_uVu*HM_C5LjBXZ4|mQ~}$HLiO!OXT0}k5U50E82h*fx{&89t`YBzIm(6nY1}KHQ-tNlGIu|H zWKY-c$jL0VcSWyxu>7+Iotu7WA5VpB-ql}&EH_s9;qqXfzJ!dhM!7}Rps7%y<(|@B zY}~dsv)?v|Cb&=Rx}lg67Vk^%NxCVIoY!CGw-qihrY^Fgo*^x+Dlp78A8$mbzI5J8 zYFw%LHOx>ynS795x-9}?GXCA|;WRO$72XV(&9Zc1nSoqRJDF>g7P&OS!0dOu@R@8B2MITi=IpFo~A*phP8T8kn3miZs@N7FdX@7 zX7PaN<}D?IShf3wpUe9do~<5i00VDjsP+-2WEUq)<7SVhG2Dzxu-P7KENms_P%zE( z)j7gV&#tsgV)SgThh;GZJwa-$;E}s!|3Pv^t^S^wC?|~gB8h~*!-vat%wUqhMD8QZyw-DC5G9!V zbGZ%~b|6HLOMf^}7sDA)^8)Pe~!887S6 z^V;HZcDF)AN{TxATU)cAn5>X}wTzue3?xRc%?56tQit_o3lR&c0lOWdJCjzH4Zy3P z|M5Y@F2CqRQCXAQv3m(#bHqDKYpMyXo?o=oC*VI)*JPT*q;$>D#$F16* zY0YHi6Wxq!-yjhOel1_RLj@li2 zske?6>?=s^dq*3PO#`@~AbWw54#((jta33I#V9Oj+}B-i%ki^jWxka>kVGlSuHE0v zT)FpbVll-MphSWiWb+fERrn|i9E`6C9Ha(-_HF^dM;Ryd;r}=t5_ax#?|0e+9`YP) z%U?8*hkj>MX^}4c`xW=R zX&_z`JMX0u%~PTAr1Jk;#+Tlhw+6i(k{t2ltPvsk&eQo=kw&kdt)t0_)KH4gBHfF@ z*kDG-NPl5AwUdY9?%ZTvF9Vg0k5k54JfUpDn{J2k`VbJJmx3Ez>a(f`37V9TRa@Py zBnp60xo%oy-C*d@yQQu8CU(cHskkLYyX9W<(X~F^WT=tJ+xKIte@F!m6h`gy=&^B) zbgZ!LU#I2%OFVEg_2?Hhd6j%D&UGm-hg|do`?kLIrl%lds_8hr+}So2sb}j6$)Cbz z+o~|lmVy?${qec!w&(a4so&DxFMXXEppj|f6y9P14wP}qzr{WzFsvHy(ftX2@@xVu MOl*wHjqXSN2Sh6`H2?qr delta 2869 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 BdP4vJ diff --git a/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1125x2436.png b/themes/hugo-geekdoc/static/favicon/apple-touch-startup-image-1125x2436.png index 4a410335203c8e8c79003ecd90e7224f91347b39..b0f14cd07f7747f3ce5a137c9c932a8845575c05 100644 GIT binary patch literal 34421 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 literal 77173 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 KHx|B6KmI?7}+BtSWsgz>}JL#kY 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 literal 82913 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