From 8cc6ec3da52f41f67702c095a80f34ac56ae37b3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2024 17:42:39 +0000 Subject: [PATCH] Deployed 961896f with MkDocs version: 1.6.1 --- .nojekyll | 0 404.html | 978 +++ CNAME | 1 + assets/_mkdocstrings.css | 119 + .../u/31309.fe356448.png | Bin 0 -> 8390 bytes .../fonts.googleapis.com/css.49ea35f2.css | 594 ++ .../v32/KFOjCnqEu92Fr1Mu51TjASc-CsTKlA.woff2 | Bin 0 -> 10656 bytes .../v32/KFOjCnqEu92Fr1Mu51TjASc0CsTKlA.woff2 | Bin 0 -> 13360 bytes .../v32/KFOjCnqEu92Fr1Mu51TjASc1CsTKlA.woff2 | Bin 0 -> 6144 bytes .../v32/KFOjCnqEu92Fr1Mu51TjASc2CsTKlA.woff2 | Bin 0 -> 1536 bytes .../v32/KFOjCnqEu92Fr1Mu51TjASc3CsTKlA.woff2 | Bin 0 -> 16756 bytes .../v32/KFOjCnqEu92Fr1Mu51TjASc5CsTKlA.woff2 | Bin 0 -> 7708 bytes .../v32/KFOjCnqEu92Fr1Mu51TjASc6CsQ.woff2 | Bin 0 -> 20216 bytes .../v32/KFOjCnqEu92Fr1Mu51TzBic-CsTKlA.woff2 | Bin 0 -> 10356 bytes .../v32/KFOjCnqEu92Fr1Mu51TzBic0CsTKlA.woff2 | Bin 0 -> 13104 bytes .../v32/KFOjCnqEu92Fr1Mu51TzBic1CsTKlA.woff2 | Bin 0 -> 6148 bytes .../v32/KFOjCnqEu92Fr1Mu51TzBic2CsTKlA.woff2 | Bin 0 -> 1468 bytes .../v32/KFOjCnqEu92Fr1Mu51TzBic3CsTKlA.woff2 | Bin 0 -> 16080 bytes .../v32/KFOjCnqEu92Fr1Mu51TzBic5CsTKlA.woff2 | Bin 0 -> 7464 bytes .../v32/KFOjCnqEu92Fr1Mu51TzBic6CsQ.woff2 | Bin 0 -> 19780 bytes .../v32/KFOkCnqEu92Fr1Mu51xEIzIFKw.woff2 | Bin 0 -> 1516 bytes .../v32/KFOkCnqEu92Fr1Mu51xFIzIFKw.woff2 | Bin 0 -> 16688 bytes .../v32/KFOkCnqEu92Fr1Mu51xGIzIFKw.woff2 | Bin 0 -> 13224 bytes .../v32/KFOkCnqEu92Fr1Mu51xHIzIFKw.woff2 | Bin 0 -> 6144 bytes .../roboto/v32/KFOkCnqEu92Fr1Mu51xIIzI.woff2 | Bin 0 -> 20144 bytes .../v32/KFOkCnqEu92Fr1Mu51xLIzIFKw.woff2 | Bin 0 -> 7724 bytes .../v32/KFOkCnqEu92Fr1Mu51xMIzIFKw.woff2 | Bin 0 -> 10492 bytes .../v32/KFOlCnqEu92Fr1MmSU5fABc4EsA.woff2 | Bin 0 -> 9684 bytes .../roboto/v32/KFOlCnqEu92Fr1MmSU5fBBc4.woff2 | Bin 0 -> 18492 bytes .../v32/KFOlCnqEu92Fr1MmSU5fBxc4EsA.woff2 | Bin 0 -> 7180 bytes .../v32/KFOlCnqEu92Fr1MmSU5fCBc4EsA.woff2 | Bin 0 -> 1500 bytes .../v32/KFOlCnqEu92Fr1MmSU5fCRc4EsA.woff2 | Bin 0 -> 15028 bytes .../v32/KFOlCnqEu92Fr1MmSU5fChc4EsA.woff2 | Bin 0 -> 12324 bytes .../v32/KFOlCnqEu92Fr1MmSU5fCxc4EsA.woff2 | Bin 0 -> 5688 bytes .../v32/KFOlCnqEu92Fr1MmWUlfABc4EsA.woff2 | Bin 0 -> 9780 bytes .../roboto/v32/KFOlCnqEu92Fr1MmWUlfBBc4.woff2 | Bin 0 -> 18596 bytes .../v32/KFOlCnqEu92Fr1MmWUlfBxc4EsA.woff2 | Bin 0 -> 6904 bytes .../v32/KFOlCnqEu92Fr1MmWUlfCBc4EsA.woff2 | Bin 0 -> 1456 bytes .../v32/KFOlCnqEu92Fr1MmWUlfCRc4EsA.woff2 | Bin 0 -> 14740 bytes .../v32/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2 | Bin 0 -> 12304 bytes .../v32/KFOlCnqEu92Fr1MmWUlfCxc4EsA.woff2 | Bin 0 -> 5708 bytes .../roboto/v32/KFOmCnqEu92Fr1Mu4WxKOzY.woff2 | Bin 0 -> 7096 bytes .../s/roboto/v32/KFOmCnqEu92Fr1Mu4mxK.woff2 | Bin 0 -> 18536 bytes .../roboto/v32/KFOmCnqEu92Fr1Mu5mxKOzY.woff2 | Bin 0 -> 9852 bytes .../roboto/v32/KFOmCnqEu92Fr1Mu72xKOzY.woff2 | Bin 0 -> 15336 bytes .../roboto/v32/KFOmCnqEu92Fr1Mu7GxKOzY.woff2 | Bin 0 -> 12456 bytes .../roboto/v32/KFOmCnqEu92Fr1Mu7WxKOzY.woff2 | Bin 0 -> 5796 bytes .../roboto/v32/KFOmCnqEu92Fr1Mu7mxKOzY.woff2 | Bin 0 -> 1496 bytes ...wgGEFl0_3vrtSM1J-gEPT5Ese6hmHSV0mf0h.woff2 | Bin 0 -> 24792 bytes ...wgGEFl0_3vrtSM1J-gEPT5Ese6hmHSZ0mf0h.woff2 | Bin 0 -> 16296 bytes ...wgGEFl0_3vrtSM1J-gEPT5Ese6hmHSd0mf0h.woff2 | Bin 0 -> 7528 bytes ...5mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2 | Bin 0 -> 22736 bytes ...wgGEFl0_3vrtSM1J-gEPT5Ese6hmHSt0mf0h.woff2 | Bin 0 -> 10096 bytes ...wgGEFl0_3vrtSM1J-gEPT5Ese6hmHSx0mf0h.woff2 | Bin 0 -> 13036 bytes ...euFoqFrlnAIe2Imhk1T8rbociImtElOUlYIw.woff2 | Bin 0 -> 7972 bytes ...euFoqFrlnAIe2Imhk1T8rbociImtEleUlYIw.woff2 | Bin 0 -> 17428 bytes ...euFoqFrlnAIe2Imhk1T8rbociImtEluUlYIw.woff2 | Bin 0 -> 26644 bytes ...q2oeuFoqFrlnAIe2Imhk1T8rbociImtEm-Ul.woff2 | Bin 0 -> 24652 bytes ...euFoqFrlnAIe2Imhk1T8rbociImtEmOUlYIw.woff2 | Bin 0 -> 10704 bytes ...euFoqFrlnAIe2Imhk1T8rbociImtEn-UlYIw.woff2 | Bin 0 -> 14288 bytes assets/external/giscus.app/client.js | 7 + .../unpkg.com/mermaid@11/dist/mermaid.min.js | 2314 ++++++ .../tablesort@5.3.0/dist/tablesort.min.js | 6 + assets/images/background.png | Bin 0 -> 38845 bytes assets/images/favicon.png | Bin 0 -> 1870 bytes assets/javascripts/bundle.b71cdcd1.min.js | 3 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.el.min.js | 1 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.he.min.js | 1 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.c7c1ca2c.min.js | 2 + assets/logo.png | Bin 0 -> 26928 bytes assets/stylesheets/main.6f50c755.min.css | 1 + assets/stylesheets/palette.ab4e12ef.min.css | 1 + blog/2024/01/31/hello-world/index.html | 600 ++ blog/index.html | 515 ++ changelog/index.html | 528 ++ changelog/index.pdf | Bin 0 -> 70274 bytes contact/images/session-account-id.jpg | Bin 0 -> 116096 bytes contact/index.html | 750 ++ cv/index.html | 768 ++ cv/index.pdf | Bin 0 -> 105054 bytes feed_json_created.json | 1 + feed_json_updated.json | 1 + feed_rss_created.xml | 1 + feed_rss_updated.xml | 1 + images/favicon.png | Bin 0 -> 26928 bytes imprint/index.html | 574 ++ index.html | 514 ++ index.pdf | Bin 0 -> 70786 bytes javascripts/tablesort.js | 6 + license/index.html | 545 ++ license/index.pdf | Bin 0 -> 81066 bytes objects.inv | Bin 0 -> 135 bytes projects/index.html | 528 ++ projects/index.pdf | Bin 0 -> 70193 bytes robots.txt | 2 + search/search_index.json | 1 + sitemap.xml | 43 + sitemap.xml.gz | Bin 0 -> 262 bytes techstack/index.html | 528 ++ techstack/index.pdf | Bin 0 -> 70213 bytes 132 files changed, 17133 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 CNAME create mode 100644 assets/_mkdocstrings.css create mode 100644 assets/external/avatars.githubusercontent.com/u/31309.fe356448.png create mode 100644 assets/external/fonts.googleapis.com/css.49ea35f2.css create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc-CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc0CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc1CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc2CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc3CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc5CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc6CsQ.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic-CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic0CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic1CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic2CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic3CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic5CsTKlA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic6CsQ.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xEIzIFKw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xFIzIFKw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xGIzIFKw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xHIzIFKw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xIIzI.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xLIzIFKw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xMIzIFKw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fABc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBBc4.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBxc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCBc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCRc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fChc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCxc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfABc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBBc4.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBxc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCBc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCRc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCxc4EsA.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4WxKOzY.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4mxK.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu5mxKOzY.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu72xKOzY.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7GxKOzY.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7WxKOzY.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7mxKOzY.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSV0mf0h.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSZ0mf0h.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSd0mf0h.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSt0mf0h.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSx0mf0h.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtElOUlYIw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEleUlYIw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEluUlYIw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEm-Ul.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEmOUlYIw.woff2 create mode 100644 assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEn-UlYIw.woff2 create mode 100644 assets/external/giscus.app/client.js create mode 100644 assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js create mode 100644 assets/external/unpkg.com/tablesort@5.3.0/dist/tablesort.min.js create mode 100644 assets/images/background.png create mode 100644 assets/images/favicon.png create mode 100644 assets/javascripts/bundle.b71cdcd1.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.el.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.he.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.c7c1ca2c.min.js create mode 100644 assets/logo.png create mode 100644 assets/stylesheets/main.6f50c755.min.css create mode 100644 assets/stylesheets/palette.ab4e12ef.min.css create mode 100644 blog/2024/01/31/hello-world/index.html create mode 100644 blog/index.html create mode 100644 changelog/index.html create mode 100644 changelog/index.pdf create mode 100644 contact/images/session-account-id.jpg create mode 100644 contact/index.html create mode 100644 cv/index.html create mode 100644 cv/index.pdf create mode 100644 feed_json_created.json create mode 100644 feed_json_updated.json create mode 100644 feed_rss_created.xml create mode 100644 feed_rss_updated.xml create mode 100644 images/favicon.png create mode 100644 imprint/index.html create mode 100644 index.html create mode 100644 index.pdf create mode 100644 javascripts/tablesort.js create mode 100644 license/index.html create mode 100644 license/index.pdf create mode 100644 objects.inv create mode 100644 projects/index.html create mode 100644 projects/index.pdf create mode 100644 robots.txt create mode 100644 search/search_index.json create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz create mode 100644 techstack/index.html create mode 100644 techstack/index.pdf diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..1113531 --- /dev/null +++ b/404.html @@ -0,0 +1,978 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Stephan Hadan + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ + + +
+ + + + +
+ + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + + + +
+
+
+ + + + +
+ + + + + + + +
+ +

404 - Not found

+ +
+
+ + + +
+ + + +
+ + + +
+
+
+
+ +
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..6a35ae9 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +stephan.hadan.de diff --git a/assets/_mkdocstrings.css b/assets/_mkdocstrings.css new file mode 100644 index 0000000..85449ec --- /dev/null +++ b/assets/_mkdocstrings.css @@ -0,0 +1,119 @@ + +/* Avoid breaking parameter names, etc. in table cells. */ +.doc-contents td code { + word-break: normal !important; +} + +/* No line break before first paragraph of descriptions. */ +.doc-md-description, +.doc-md-description>p:first-child { + display: inline; +} + +/* Max width for docstring sections tables. */ +.doc .md-typeset__table, +.doc .md-typeset__table table { + display: table !important; + width: 100%; +} + +.doc .md-typeset__table tr { + display: table-row; +} + +/* Defaults in Spacy table style. */ +.doc-param-default { + float: right; +} + +/* Backward-compatibility: docstring section titles in bold. */ +.doc-section-title { + font-weight: bold; +} + +/* Symbols in Navigation and ToC. */ +:root, +[data-md-color-scheme="default"] { + --doc-symbol-attribute-fg-color: #953800; + --doc-symbol-function-fg-color: #8250df; + --doc-symbol-method-fg-color: #8250df; + --doc-symbol-class-fg-color: #0550ae; + --doc-symbol-module-fg-color: #5cad0f; + + --doc-symbol-attribute-bg-color: #9538001a; + --doc-symbol-function-bg-color: #8250df1a; + --doc-symbol-method-bg-color: #8250df1a; + --doc-symbol-class-bg-color: #0550ae1a; + --doc-symbol-module-bg-color: #5cad0f1a; +} + +[data-md-color-scheme="slate"] { + --doc-symbol-attribute-fg-color: #ffa657; + --doc-symbol-function-fg-color: #d2a8ff; + --doc-symbol-method-fg-color: #d2a8ff; + --doc-symbol-class-fg-color: #79c0ff; + --doc-symbol-module-fg-color: #baff79; + + --doc-symbol-attribute-bg-color: #ffa6571a; + --doc-symbol-function-bg-color: #d2a8ff1a; + --doc-symbol-method-bg-color: #d2a8ff1a; + --doc-symbol-class-bg-color: #79c0ff1a; + --doc-symbol-module-bg-color: #baff791a; +} + +code.doc-symbol { + border-radius: .1rem; + font-size: .85em; + padding: 0 .3em; + font-weight: bold; +} + +code.doc-symbol-attribute { + color: var(--doc-symbol-attribute-fg-color); + background-color: var(--doc-symbol-attribute-bg-color); +} + +code.doc-symbol-attribute::after { + content: "attr"; +} + +code.doc-symbol-function { + color: var(--doc-symbol-function-fg-color); + background-color: var(--doc-symbol-function-bg-color); +} + +code.doc-symbol-function::after { + content: "func"; +} + +code.doc-symbol-method { + color: var(--doc-symbol-method-fg-color); + background-color: var(--doc-symbol-method-bg-color); +} + +code.doc-symbol-method::after { + content: "meth"; +} + +code.doc-symbol-class { + color: var(--doc-symbol-class-fg-color); + background-color: var(--doc-symbol-class-bg-color); +} + +code.doc-symbol-class::after { + content: "class"; +} + +code.doc-symbol-module { + color: var(--doc-symbol-module-fg-color); + background-color: var(--doc-symbol-module-bg-color); +} + +code.doc-symbol-module::after { + content: "mod"; +} + +.doc-signature .autorefs { + color: inherit; + border-bottom: 1px dotted currentcolor; +} diff --git a/assets/external/avatars.githubusercontent.com/u/31309.fe356448.png b/assets/external/avatars.githubusercontent.com/u/31309.fe356448.png new file mode 100644 index 0000000000000000000000000000000000000000..2b62a48f3d89633e69198f5c6cf5cee1b443f6b0 GIT binary patch literal 8390 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 Gr2qidA)JB$ literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc1CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc1CsTKlA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..317f651efe77aac3beaa1de48b60c15d5154f833 GIT binary patch literal 6144 zcmV+b82{&YPew8T0RR9102lxO5&!@I0626202iD90RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc3CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc3CsTKlA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e0934d94e95b8f6fa1d541448b9f646e05c877c5 GIT binary patch literal 16756 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 z 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

xNsgs2dmYC5`1PTpk@S_3cRaIRb_hK4 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 SYkI*7T8CziX@4%b5&!^*pZ631 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic0CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic0CsTKlA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..efbe79a294d2a5816017ca654b2c0071e9de9d5b GIT binary patch literal 13104 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 KuVs;F0RRAvJ12Dj literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic1CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic1CsTKlA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ea329ab8262310d36eed5cb3aab74c8548b0dd57 GIT binary patch literal 6148 zcmV+f82jgUPew8T0RR9102l-S5&!@I06H)L02iVF0RR9100000000000000000000 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 W6iz@`zsu3k2CI=u4f-W1L2ml5i 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 Wzk{-4rd()5mu{-TrML#n1pok0$Ovx$ literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic5CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic5CsTKlA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..1283c45d72b3fb4f4c96927ca56c33b35958c230 GIT binary patch literal 7464 zcmV+@9oOP_Pew8T0RR91039d*5&!@I06L@q0368x0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic6CsQ.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic6CsQ.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..851fedb92bd64b3ae2878f6f7a90841cff0d24a0 GIT binary patch literal 19780 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∾^te@a;W{kKTTH#0o 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,iiBZ4r}M?=1_X-76&vmPP-mBe z4Qx`GDoQz-p zrDv+Tq|wj3NPrpeAJqc8FGB9kk#zDakzLT>MQ_lJQM;t_Wn8d_p>D9;?}`=Udkvms zLn7stPckQ**u|x=#Pi?|qov4Lg6zqJTJ|23e(icAT8(-yGL^0C*f&)tZKYfw62VoR z2O<-7_}GN(L9FHraG80CBF*>X_g#-7uOT$?P*fxa3~jub-EAAPr57P8!&s1ls7*vF zO(vn8C#Y#;SrpEkkS`%j{arXftl0xywkQ=UD&mA|u3hvyB~t({*iF;excGoilZ5?GQc`FbMOp%sS}9B^~>|1^GJpV=>; zA?nEzYvu839O;m0K24)tPps2k3P~VG!(imry#l+@qnICSSM3Vzo zMM3vG@7sro`wNZ}@dDm}enY0s-{GEAS4xp1rx;0crVYJzg5FA9SbbF`JqapaS}$-0 zzLqceV|M6A3Rjv|i8WP>2~T2q$^V9`KUlUXs~gX~z!&O~`5uDMz`t|W?+&x;%UxV6 zt4MF4OwfUJK?MiYS2MEeVDn~w6<=0MEB721)ltx+wz0JOS>8bIfszU<%#cBr$sE2YTow*@!GDVSxh?kmo^P77N#;JPqvU)o zzK|*J*#1D6#cvV(S2N7tvR`23VXzb&1s4IKnb`oWUQ;Yd=89)o6<_4&o8K#t^<&oh zNOP%q)buRYc&cAvt&WrzuOHPf>QVKqI>~Zj4ueiU7#WZLWE0WaARs*_IOe!{P5O)aW;K{ozjbw>V4bYHO1w(?oVGE+6&MU(KEkjc_hNU+IV#Bd{2FxV`hT3qcGz@Kp zG2}rsWVlsOhPW{qYylavP#acs4QGfL%qa3n94Gk;QXhIZ@eL`$l)~=Ema5lDy*O2Y zRL~iHdk1zY)J^<`BnEklDKsb%kTM;h0)TD~LQrBQ6HY@V)x_JdsnH8%8dT$BSveuD%oNflzPU5bhi(cTNQw`G zGB;-L!eH(?gB+~sMp)08M3PRc8(})Xvv!F_yQ!n=5O)=w(>0sh_i>RM z2HIprFRChm2Kf6e-I*5G>dsw*&L4A(mJBs{3tI}~wuEW9%DXMAnb`WRM5ZwR{)3x9 z+}~t64z;)j$Y9u#dzW;^9*5peP;4LYrj@9z znnf#O-O}(|PVd`*(yWcoj0$XvZKKgsuh*FQdeS}M|GfnMe+T&QJK+Bp1pd1#|Hu(W+RpZEBjH(YDe!XNIz*@=nxmr63Q0Q1EnU*El0lBeqa-TI{#@Quyj2u{BD)~%scA8OG4YggSGZf-8WXgMPM)3NnjV*2lkL%Q1#-#Uik~1+)sAI z73bEE_LNHi`d^p7Br1s&vx5kLS-0R^@!A_!PSA_O)H08aIU+XKYJ)U=<;;470Vqol6=cS-nG?vgjv0vF5y5gnc^6SP7Tthgxygd%l_Fz zSZI|WTRdY37@q}3s(7cfl=B&T%5X{`Rov1Ga(Q;7RVI1+fdCejUJil7bm+0of7k4ZDvrO&OYw1YPISSTsdwT z{*?U2_&d=zc=wfji;w6x&mEp{$KHcGM^}<>@gw&u_l5h5`;I2Qle@Y6%p1WgBfT*&}6i literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xEIzIFKw.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xEIzIFKw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..8f20a2cc1b0b8dbd9f75174bdf248cbe800b50a8 GIT binary patch literal 1516 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 LrJ*q=4PyWR#vvox literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xGIzIFKw.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xGIzIFKw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e1f558cd3f7c412f3e42ea6533e2855ca8ae5830 GIT binary patch literal 13224 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xHIzIFKw.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xHIzIFKw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..688c713dc6860f28df2bedd0a642c868f17b94e7 GIT binary patch literal 6144 zcmV+b82{&YPew8T0RR9102lxO5&!@I05{M802iGA0RR9100000000000000000000 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 Si literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xIIzI.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xIIzI.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..9dc0be8362dd3302d12382547e46cb7ae2c8b6be GIT binary patch literal 20144 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xLIzIFKw.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xLIzIFKw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..3e5facb890d04bc7fcf288ba7cd1c9403369fb30 GIT binary patch literal 7724 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xMIzIFKw.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xMIzIFKw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..1125cc0127468d17764e277be8ed3ddb99969f4b GIT binary patch literal 10492 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 }h677(3&d+QGjo2Bjr`Ny}< zY%TL}wir6--6!oALyYI}RevGLyFk?gW|Ohdn4O$8Z?u2>tpZm(kN-H@(~~p#tq(aw z7rve_oU8`ik)<4yzY9^GB5>gerCwTil8c%lgjAj+5skQqcgTB@xcc6H zyvKd%XqpmKaknHo#?cdMaBEjpi3!Z}^Iov)1?ck(~s5`NO)+z4h)C$96WL+4o| zZv~ys1O}%Q&Z!rFe$;jG;OM!6%ZcEAH4N8xE3W4k4fh)NdBgI!lXL%uJO2ou5Im*; z_V!`l%xUcWqrLqPI#UB{>|jl;{+~P8Qw>WrV6TWdXYiddSmR33<-xjQ^yh2*OM^Ww zqAfXeqq*EyAHzcnm;2vS`nhvi$|Cf!yFMJ=W$1sf;PAl%xAn=NS|72{KA;+D=${FU z=+07(aHJh$&2od%5z3J9Q56q9P$C5BK%S6079YU0*0k3kDk;N8^=V=SEvMLEeH;iW?({YJ9O)`O#nL#9;D9INWhdY14CV8I& zEU*R16eo}q?ZdS}EC%r_9H-~TG9f{nLk5Z_Oq8F!nTiQ(X|Ah6 zHQ}-&Jr1au@Ev)_Z1qfp(nOw(s)-olZfPiQLUUt$EHws6RYHHbiTvesqrl!ICr=|2 zaVCoW0V8$#ZB(91NGpM9Itgzk0sq-zozpx8C}-M91rkk1KcvbSYkJOfKq@oUmb#ew y#I$^|WlGG%D4J09DyDNU;u(P2v`Y&JP`~Efq{7QN(+J<01|;10X7081B5gLAO(Va2OtcB zIvXcY73|ncxE+8LMfX68BG@<(Vm#+W5o{bl2>rHvd5imuJD@?rPUv@?EH2MKEtbc1mIY8>|mRJ4Z5exE$B^ZmxOY=v=9%Q zUUh`VKFQ_z|F`?+o2P1@s{200OkxZobVDQW(YeIChNrpxy9E^+ZP6l3KtPjRobgVs>-k;#zYW#s?VvQDF8WyL}b@m#W$B!xGAz)2?%u*q)E~KV#(Ya`Q7j0?(X}^B;UBrCx{f*FmiDW2c zc2>`uUDm!l!FJKX-xo88CRsF;K~$niNR&u}MyT{`9ejV8_P*qxE~J}SngF3PR(!b4 z?Dpw9I+xvYh~#YQlMsS$$?@MMx{@v)J`b1-e7o)EXb^+|aMhzI7X^~i4Iwz1Ald?Q z#)CLZPZ+QljvR$ESK-cGT;nN-$ii2s2$xB^0xU8SHhI6yDl{2F9e0AA8<4p?Dl7oV zTpi})4`gm2Mg##FD1g7En_YipSPIi^<_-H<&X3y#ZxWm85Y8o-j3y@qt=UJNoV{T6wtLPMVs?6* z69v@#gg$|MqxpAzP^Fpnb-iie_&3Vfyps8>^V>W#k*LND_hb=0c~f;-vc=?1Ca86%mz={aVOxY)1XO6up1bdqQ!_6Cq=4snIMXM z@jws+EC8@7fYpftSkta;6s~r;2uTQ104)-E002PP;-j|FI(1l!HqqcV@!-dW4AdqF zHvw+}Um=1UKr8a{24!U8-!_O=zt|f>wEj_L*V9}wI^D#2wwBMQHX9`Mgre?1wSo^H zNeI}vJL+rG0BaEY$E#+r?D?5j8G zGWF`fgoWUw)`SJ$L{HD2$_PYuZ)KegQ1_qeJ%UjA7PZ`kC#Qav7^KoABbX#EI5`{> z&AGW;6Xl}3oMH$!9yr8{+w8OOnS<;LYY(vwnfjTA*+yWgxx}F-br*x!Fk1f4B-n-1 zmt%xDHB2sSV{+%lf*~_d#>SoT!jcDv}3Xf-kcAa=NX$px`)jpfbIhfc_UMp)fJ6jETvF7 zxSh1e0klV(=AKwaItx@zX`OAhYCB{>2K6W;>--R%pHi?^oMCoL;B;ZyV8&!YmShEM z8|R4ZU=MO47dnq95QB4rI8ZV&*omT;O)5$>nVIhdC%Hg5O9rb_E%R^<8Y(rj&ImAf z!Gk~@L0cno<_WY&%d|)fwA_7}xoM;41}&P)GC^Y6N?$_SN*~xhg!⋘iv5Y-g@w} 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 WvBs=}zzEW=AzKWF*C#4aH~;{?1*U}n literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBBc4.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBBc4.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..72226f5df01b19b5db8e7fe8df16d93bd2a646d3 GIT binary patch literal 18492 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 ODwAE}GN`$r3kCvP?5KJG literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCBc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCBc4EsA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..a26ba157a533ab9ed979d512dfb4beaa890547d1 GIT binary patch literal 1500 zcmV<21ta=*Pew8T0RR9100rCt5&!@I016NQ00n*k0RR9100000000000000000000 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 KFPNT{g8~6O0t27` literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fChc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fChc4EsA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..14af54ae68c055ac99aae4c52872fb2a1a3338ee GIT binary patch literal 12324 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�TIFZa7msJCQ7lD6Q zfp4IY*T6sTqA;u?ybooHM>cn_ymTLEiifny6-RM?Lc0!ATlxZ*0>yb3_k1LJdW#!P zuroq=#@x#`;D(W}WPrVb&L~2_2J?}&2@oTUyG;ZU4_e$zj~U`<4?_+hvNjQ91mc`z z$oI&MSxI;icjF&uqzvUux<7gUk;&|=p)^l0YRDACKS`a!&Lnjf_c4^MhL0Pl1@Z>j z$Vw8TJsmw{CM!cWAxA24URFw8H;kVNP{ux|1kgRmIb^a!2xbEE3v&S(uAC3Za@G<6 zIfh<mIF1@Z7nl1-!5eM&&2oz1Xm(b?JIM09Uzb*@`)oto_}Gp*i&94w!G;ItWMo~EfXV1W2!*FX7)dN2 zq0{gy?VbdSCLARhEP!89_Ob{h5s#b|bB2uBaAZuK7A#E;XnfJo(WtW$fYR=ooRNf! z5P;?~OjSCLwo~*(teHH;0qL5I6wHS*EccAD4FAmrN2?o}k%4PTQ#7=k4@N3$?lM1E zL%-qRkVCZ{;=RIjw%G=?<(&LK26uZ-RCGaS3%abLD6n`6hJ<=5aET9~!kl}$>3~^bMo3}1aJ#X@Z=z!4DOQe}fbnIDtG7J(u-cB&_xlZZkGL~<@jXXYg^ z2}q+Sony<;n0%(4IY4r9B@>Av0TDsj=OZ-PfJrdF5t8dk=Uig)ndi)bc|o72fiY;1 K{Md0Q0ssJ$#ip15 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCxc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCxc4EsA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..a7026d4c3afd9c83ffe3acd3bc4dc11283dab930 GIT binary patch literal 5688 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfABc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfABc4EsA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..41637e58ca4a6076924871c469c506fa182efa19 GIT binary patch literal 9780 zcmV-4Cd=7(Pew8T0RR91046j55&!@I09yC}042}>0RR9100000000000000000000 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 KxLqU10{{SCezoZU literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCRc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCRc4EsA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..660850eed0f9b98671f9c00256697e81f9431993 GIT binary patch literal 14740 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 qg61z_0?k?8&OZ^-_sE%yl}3Ckfloi literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCxc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCxc4EsA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..c17545332e1f32ae3b1f321d94b51fc54756f906 GIT binary patch literal 5708 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4WxKOzY.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4WxKOzY.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..a7f32b6f05ab0e473a38ca47efaf58724dff8315 GIT binary patch literal 7096 zcmV;p8%N}KPew8T0RR9102{af5&!@I06Dk-02@~T0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4mxK.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4mxK.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..2d7b215136a471c9a1644966be6e5af672806eea GIT binary patch literal 18536 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�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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu5mxKOzY.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu5mxKOzY.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..a4962e9b425730ba136b544273ff2bf03c0503ea GIT binary patch literal 9852 zcmV-?CWF~`Pew8T0RR910496@5&!@I09srC045j!0RR9100000000000000000000 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 ip5Q3{p1bO#^| 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�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 G0002&1Enzl literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7GxKOzY.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7GxKOzY.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..20c87e676ea8cca21679bc8886fd9566172771de GIT binary patch literal 12456 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7WxKOzY.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7WxKOzY.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..cfd043dbaaefbe81712f30912f9403405061703d GIT binary patch literal 5796 zcmV;V7F+3ePew8T0RR9102ZVG5&!@I05~`R02V_40RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7mxKOzY.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7mxKOzY.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..47ce460fa9a827bd143a2cc1d70f6dd4b97352cf GIT binary patch literal 1496 zcmV;}1t1bO#^|f=L^k2vJm! zG68-Z0c>{d3teP$ehh!!R+zFi z-JPU2hiMtv&=% zoF#>G^mfu~?)EXT^#44%xYAf+PnzyRmrfXD`z+1P>BAPo{4DhHA0USWz_LS89mQb? zABjS9#>o$>WHQzW8;R`BAe^NUHzF)3jbtMQNT!1(r-dG4kAs(wv4FO-CDQ4kIzP2~ zoSY#@;vE6a3VVtBUB42^YNV-nntzi@nTPr4(7b z59jed?NA~bd7Y}>KJF3~Ly^xHX1dH0Z&7@&IhOvo9qFePuBDm#m=uoj{)JKSiP}pj z`Dx3gYwO=W+Q&7)OucTu? zKY$Z%c(~@@)6o3`{dGU3wq;7;q*k#MzDcI?Ydq)Gt=;QT+yA6}9BR$ZXuHSB4+E3Y0P{Ga%dcgsuHfaSoh{j~ScdZM zypF1!y;U|kWMy(gm+@FCZgEay8QRxcdXoKpt1l4nBG$_Ad7G+>>zh~*0QK9dIvv2P zXV)#BJhk%JZwCnIR7FaRc^V4>;^gT2r~_Ye``*8aR+RuBe^8TvZ&2cwU+&*Km9eY? zP>CQ=T=q{!b?`5%f030DBK)f4PUk6yfBJ#!T300m)?Uu1{~Q6Ka*yR`d;#=`;uL{^ z(gnCeTHy@)Y)8=Xq9f{gcro!Urp=L=VRGcwqVqkp0xnW7Ehe5Q-t?VF`AqT^D#akN zYL%c=DpQD2tq!9OC0c|aAz~#7v7954Q6g3WRz22oi5MjsRLWN?1*2A-GOTJu)J6wR z+;}0(c#a#N&G~o`mPw0RWlEH)XK{rS!mwB+*E0wasudy;0#wQ#A+e|G5cwvurXSUa zQG~<=noFRFxVG*rtu4Yq6_*A)MA|cs3_Z6_uNe?6IugRY$nmA-hPPu{xcj0>lEfhA z`O8U~6XU&f70FyTPOR#aye2!;(TWr^S7&+7C1qzxyoV*J=n&ThOG&FSFUr+s-0nLs z_AKcfZ0ApggUE9pgI7>)Xd2M literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSV0mf0h.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSV0mf0h.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..022274d4c4af877ac322df360cb0c1856d2931a1 GIT binary patch literal 24792 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∾9# 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..1d988a3f4c7e169088a83234773dd3eb346c2196 GIT binary patch literal 22736 zcmV({K+?Z=Pew8T0RR9109eof5&!@I0F*QU09a`N0RR9100000000000000000000 z0000SHa|#KK~gFPU_Vn-K~!WX8UTb=FG3Lr3W1wI`YH>9OaL(N9sxE2Bm;v?1Rw>5 zI0uAl3el^jU`!HS|}lX}_z|0%gKrq%%JpHP5cA&GK38q*Cqz!)Zh z3apH95}Rv5J)>?_K;Z-==Ek~#+>EWbiDH2v&s-r;1M>{N7l_j@J0t7T6f#TVno%yw z4J=Y4{ihNYcGi=>)4lDP>VMu}AEB{Na*wCW`l@=*t?3>FTpS?uO!k`x;gidQ76%9G zOp;Oe8=jwA4Zd{Ygqh6G8V9n8nH1lL{M66LJ>g)1d}kPJ&e5atm-?J zhkwTL-uLM&HM21(53X?kOH?Y%U|QT+W`o}R=d_d)nPm&`3%`IYG)OYV3hqo1AkRfS zwx>On7_+mOVMzX0r+rhBzPLw#Q*pg@v8t9QK(-wjp-AiThCHOx%2@^{hd|X8)!jo= zU0&6CuBv`El;6q_l)!k4c)H_Q;+; zV~`ZmEYSySL-dj*o&M_#O)J@fk2n$!Bdvx&2_AwSExxr~Q$)ZR-*Ah&4&*Z zxRv-7Q4~cQe{ZVR{tplyfN~&Ad$`V&Y>wd!=i0bfnsY^Sb4|5)*yaA+<%)|1BrX8* zxD1*B2x+(k!!2H1@YrKb83^Pc>vI2fqWdcmnyP>4 zFQ{K0Me?FW*aNnlxFcfI*mAv>y@R|05o7>o-3?q6JPaQ8hJ!W~BET^{K^wBm2=qsx z$YI3l;ZYO-J}JyRs?}*uBTcYP>0H()FDj^+B);k;W#!DeWVcX6(=rs{WfagOZD#;$ zu|8AlXnYICq1Ye|E0aHi5rc^GrWv^o2&lvhia`Lb!!`x`x*v|imM^ds`baGrWQ_C=XSFB2=LP9XNzjxUH+vZ4SC%PzHP8(m$Kuy}&Rc z21vRbvyDVFswLeNTv&txlpoLlPUL?J$)t0Ws<-NUt3Ur1kLKd%6cD%ySKvHsk+mno zA!OkP_ujwv-o5Acp4fYO@0rQ=?|YB@|C2jo@!wYWOJA5Q-#_7Jq+knx)Gy$83#smZ;F8QnzgXsM4-lj|a3=)RHBctJ4`BcrI%4 z&^)ItFbjn1q)WPFI*)_zG9dwx6w58O%nH5wi1k}-z)Gu(7&2^)L8CTUYn@HjtGCgl zG2F^4rc>QBd=@Q1%7`rChU*3h9; z>&mESz-6IGV{x6s5>(*4Q&@(EWne`ynMsu6FT;S(qt^oErvMBUFJ?Ocs2|Efa`z_% z4+3-`nsg~u)%>w>kU>I#3DY9O@oV8+5|@}#Q_WJMOA-h0q!0^ZwMq$C2&yp!P?B}P z@=2j4X15s27udgjvj`{xRk)Vg42}kc$VYK}XeQ(MdWFMU+dd|DYIw_WNZfZ={Qg>P z(pa;VGZq{PjM>$55w<85>$GN26xDH@yT7H>HzK!0lB@?0YNLG*)Kfw5L8fQSk-yW? zdK*RC=z}=1`q-Y04rUutp-kgD*M~neG7>ET#ZYW87Frl4qJe6@&I+E_Xaq&Qj-lYY zakSa2)nw5z8X5^!7wa@`8^dL^V8B!O7wBYjz%UNeHM?Z1>}-h;1WeXi5po+HqoFtI zD#-~-qem&XsDR8YYgYy#DX~Tcam>zfHfBlO!D9I4F2+|;7eH(Ua)z!_&V?5df}w>h z;|te>K$xO>e?AGsX9~{gFl-;*V*66(23qLteM )8x2wTy4sm|$UBVF7Wz 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 bGAR@Yh2TTsqnk*C_-*A}-af0}9g0mS;50#L literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSt0mf0h.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSt0mf0h.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..11e6a46a40c7afdee2981511cf98f78a62ef9f2f GIT binary patch literal 10096 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

-KfCKkVgUqz8QxqfO}8iQ0)j$QDq& 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtElOUlYIw.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtElOUlYIw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..1f1c97fecdbde2d7c29e8dd92b152e5b4f30f17c GIT binary patch literal 7972 zcmV+6|wVdDS*@_j}TRh(Z1|6h+AV`w3o_76G%NlvPCP7`&?OhBA40di0& zB(n>*Fi+BGrM5oa3+^hXxj*R~@DfG8&38q<0R>x`NGnR9`EAMwM3l?L;9CFJd856U z@FUIaXm^ApvsY_ncMtE*%<=<~Pn`~-P$~aH-u^~Lc>oYD3Ycz&=dbzxKXg#KaOlF_ z%6AvM4$Qvlq9$BZgIjYPvj(BICRPL6{?z$OG9>;?a|vMQxwjJ~zKreO>qJ|3m;i@` zImrhpR%G$xdH(mux6fPmYsPIF6lYBq@-$_!%Awe45)(s(8i;qT|KoqN_s-8lk2KLF zi~^9L}u7ZbpSAu&@EMy*4fB>lJ;wW)6Y)UWV` zE|RS}s!@b$gb|}}jjwes0RixE2mk=^>979bzi zlnhD~DRzrf=V9ipmgBPpC_o&PqW}&*Z(=u*-axK#K)3TFd%V7;xCB60Lyqf|hXBxX zkIe$mvHh@Pdm8|ZfR0oQSQQ}qodB8 zhVcP$fD8i#v9o;S4R`>$sb;cO0WfO@W-rMhCD*weE%!2u274V~Qo2Q!}j>P~&Qb8j~+xA1{xCZT=tSK5jWCzktU(9zIq2QbSnG zSm3Y(z9Wt$V@QV)UB;*w^w8*|Gr%mI3WM@da3-QHR)1q!PG#B>T z3{*iUP<#&@BmkSVelmdW9i!!xjW8c5WSbqLv9=y@h|xi|3}ImmbcQe(W8=ZV@ZW1a zxCq_1{~%jCbuqE-!-Byk;q1uCpdk&0BgfX3VaKpXBF)rEz;QkhPUt}r^UpUM{pkz4JD#{3}{9-D|2`YhDDmu)jeKJL%m zz%`vH7}^+6Dh;You_MZ)X|MbFA8374jkKH6tVQ;~y6&#o2D(kSQ(5*Jeh>VWjSagw z;vK11rJ5?z@ivGUczxF5X&Ccm+F~-+ir%|ye~%UEOi0yRbS0a%B@m-jj-7U2d_wmp zKx%UcGO(HGSR1k`Yu{wB6O->sX=qXwj(A^QjXl`AyQ-6RhgLlQZo-W4?l%Psa`xI7 z_7HMYzK4G}|0ZXBxz4@nk6v!}igCLgI&7#|QFsg*wb(=L zYIO7s@`h2r$rG8Ipt6914Z1SzUb2s`mmOx2oq;c#@^!fi_@H0=N|+O$>Yj`$ojDpykdku7JB%>Y9~a0Eo++i>c@ ztUq7s^H;>G&!&G*;ZdXP_R_C|HT^2w&|_L%x{^gTD3c8tMdq<39OrB`b7*8{>);Sl zyg_U!$`mq(8rDbyFwE?+oP@1e)|#|M>y~gGG`7TEg=iUtE75dQG%I=syts^FT}qDq zOxcCO;QGNT++gUlHYzrYRwjbQBN9u%*r28aU{Xrv(8y}2Fq-j3j(8Y` z>}n@gWE@+}VcKk_@|eXEB{0+yQOf8mLiCOEfM+eWkvbh+a=5=ZAm52>?# zvcFcmcje{-)!Z<+8o*y-2|~j;ZS97!>ZM+(H*OZP$FNXYW6;(AMAF~AV+O0UJ!3{j za!ite=S(eaUtsX9!?gYJ{^Y+bW|5 ztPHLuDoF|t&E(`tuSh5cs&c+|Jy~O>H21YXK=3zeY-ro1GO#C(D0^}(Ndvj5%!6M4 zO*mS?D2dASRLPbguKp1&!KQ^T;)!>Mrb1azcYstZ6~%Ru zQbEj}6Aw;nm#j{(I+Cc%zP0Zj_}fc41M*gfeaA#Pu43A4bO?czU^nN7U{2J0Oh^~l z#}ioSh3eLTVA{ZdaX=^`;tKFuNLs#C?V6Fv%|S>Ja&FPN-uX6SFjdO(Ze^F+d06Hx z7aNq9=?i_G&P%li)~Od0UH1UaqXvnWdR4puSi;ncMJ;;xh@U+_GnXrc3eybEU(2r4 zDQckffbI;Q`@K!&u~dpbw8F+!9-1>T!CrGT$^s+jZ#i~!kvt3z7U2^R-d@zCPWI)jUT?=~Fa#yub-)S9s8B z)S91X`oTi_!6+PJ&mKeW`N`=4E^lyhdIaQ|u(gz=jZ1%X118C9+#{hfcq~TdFY}AO zK+L6T$%z{ibvnl7D zUU;xf9tun0B%i{^#O+{6Hxp`%^9iKxsK=l7=)sg=ca1xj$5MHdV%LZ7pv;i$Royu& zF`<+?Qvpk`Fc=`pkDNR~`SLe?udR*X*fF7bvVM1nW%cP}3}L?Qt2=(GTlS})-C`g- zf!otv##M`qs(^Rcu3y)L*o2t*-}E<=vT@ObMgxVRJbdx-C$%mqkSEAr`q;Q?e3Nn2 zz3^9ifE3Q<6cxKBzWR;OU_|6R?cAsliBux%4=Du|AQ}c`vsFe7gm}VPMr>lF%PX2? zF6sHsvKT`mtWyR{&d**0s+(5zO{n_nL*)8B5ryfDjocY%iM-x@atgKg^Wr^AB&OYT>^MKJ-6#i_&fve_ zQeLqei3p&c_-+VKo7+T2A}hUPp&+Qzaz|rgrk%a*28@D@Q?p08eyc@3JJS*klSkcA zgz6q(NPV9DDgJ7PzGs9%HNQupoB(-_0VM{L#1?9N$s4b1MMJ?pw+9Fpl%*z+}OvXOsU& za{W22ZKh$qsnl@S&l4$ym4P?^aeiFv(H2%P@LAQd1tjfs6syh6Up;@`P2LI!Y!%Ne zg){av+kE8;ekyPleBuc_C#OFya6eCLdkZG-zj}e;iy@zw#^M-2l^G1gE}D)7rpO2D z08WnTNlEF}({~h?YLdt+h?!Ho^720(9(Eb?EQCP(;>9P_HU+BvVM|TR=6@AEmFeYy ztCZT8`FY=IoYv^9(O`d_ATZoC$*Oskm+*$p9*tIv0MYFiVfw zw%fOh1^8eBMRPK;tZW&MP!q^>m~Eyk;>V0 zaSV==Dscn6LWV+$i{GA_zIybJIc@X0iPvwWg`%Me2CD+JOGXXr6xfjhjt`yD#w6wab|Kd;KLjv zB%Vq#C!--X@F?!{flcFO@sR_K(o+Gj_pIfE;o#Q%1cfI6e0KaG0Ql~NAhW(>cci!t z@Xs-ms(v8NScnJsGX2KYN*Jy`i=GM&>B@tMe735l7CsvZi=$A*Dw*%%SNo}3JcVT0 z;9=rMK2>U!n`pY_8Q1Z=SGT$dowrZw7S>+1@kbfGR}?-{>Skm@)%CtgH>XHW=h2NT zKb5Qu=$4hGay`Mz@@K&E98%F{S*teW<^ye7Fa>DN(E85L6*xpIG9^r0&Zlava5D{$ z>+HNwx3UPmyHDlRJ~%(g`bLpstui>y*j>hcx*$*6ELEEvuj0PdS){ja=81c1>ms*> zfYx_34{3etZB3ZY6;Y{0ZlW1VGK2T(meo+_=#z%Lik%;2e3KAjG$eH=udtLLcjOa+ zn3GB2jGr|m1d(YQru`3XT_J2jrU$##hK+G?I6eI4?Dv(+g<+kV4oh1qRjDrA5p!}` zIOFF69zsLEY3rtXOWQ_w?!fJ~l^C&Y(G!EbNDp5-Py08=g_RI2a|0M}zj84E_+tq^ z`djQUh8_Hsr-G=IIODCK37oBSab6$Go8QSh^Uw0rb%rke9(W^f;!VFDcYt`_YH|iK zmTH!9rS9+WGxX#Di;Q^oYMc?#8Kl6Kk_1_?s zRb}Y0h;5wW9a#brp7^9CH>FveifqV^>`OzM(v{(y&DGq^cwXc~zUFU{+Um0CWl^@} zR9+=%KqH&j^yas`OS`(8TGjn+Xj3~o*c}zm*h}m!_7VG>eb0U={!N&PO-|~hPX=U# z?2uE~w*qhlqaqjp0K~r8FRCBR=S=bB69;-Li2LG>NNI3#r&?dGd--y`-D&smlw9d6 zlZd>r@@h6NkY65fvA?`NmWxd1wu?65oW9dD1OqU{wDMt7Q$Y%@WBRXU##qLixgbU> ztOq}IdoV5+ab-~H%*hsU-_H%4RITn1))JDaQ2`@6LFHSM++6D`c!n2TLjL8h-Jw|n z?~sivh0&d+#L?HIyW-ydYO`Mjw;b{CvWOLIizrqqsBq&U$H=l&nI9eM$XsNMPGvMD zVHhQ(sIy#ZAkw80+Bn%Wa!PFs!X4s9gDRd;C=~&|0{5~@A^Lm@db;>)ps!zpsa`WJ zU12G;kwnH-imof07$;+*sYjcSDO)y-KUGxD|GjM=zXy=Y0~arGK|IgNZn{3RVv z8$K@g+H-~t2V>C>kM~?`qZ3_}@k&Bm^h_@3bUw97j$>x|uqO1mmDXTJDie9P5^$aM zGf~9 zXCm)#U**5I@)4aJgF(OBX}3GwUVi{U$B=~IgTrG>q|tP-UgK&R&vC5SH}_rl@Et_= z(;9}B!Eh3yX!Dz!_m%59YB}29 z!PAQE59Y*=1vQL*fT(Gs0Q}j93UeMH<%vLm6frgf0Q8+D{umlMDI2Zf-SI-TJ13RS zZRUjtL2BT{Q&Zt3LmQz>t2E~upb*hLPlwzv2PLqzoq9^rxeb!v^-f?JmiaQ*{5To5 zb?^mW>b{_ma~*cG-#-pGXB+)E5>M0%!X4658+dT`VjC^QQTq1Y7QYI^qK!iuy!>*N zK1FMapBmGktg!}04_!O>tnPl8m6RBLOhTPyt8BE)K~5x+yc1 z7ECacE2@In(WmG<^=Qq9Jvlpo2__;H4%u}7^wK`8?BL)+vUD^ z_eRf*vNQm4SBi64JJ$F)t1 zqgJm`e_Q>eC@IFpw#ZpMuNo3ciCw628-Oz8zSdk=T1wI{@A4*BL8_S# z1}dyosMg9QUO=j*2y2*7yn}B8l-0^PE1DVO*3JJ0Nj&*4#PqL`Lf761;9D|iJQhsl z*BCFU=2|hvdJ^herkx?(tPh79tniY$DN(qg;nX2k>*tEYlX^^1^xhc22LG4H$ z1NcT6V!fQqTQhWWhPC?3m)7^lNfHI&&%p2*i+^{trMpkF0`~>&7L|!3O`VeMwkvHsGtGxe z0%?8XZP%7!goLm$XnsJ}uz9~AoXan}>^IxmFzOslqalAM58JZJUvmWm`!=>n+v53U zINGey7QjjMV^7iG;KmdBl~#bI)>3f9V6q!kdW^2CiokK1C?lkan`MSWgHQ*z$K#2F z?>eTbSE0yI9o3GJQ`1#uv&obTT2%`XBT=tyZhk2WtcxJ0?JFrfbyrtVF^_BmX&k@_RZX2knE&bfA)9aDC(reK}nF z8>OA%2Ly!URG1TD-@Mvc#1raR7J^1PE0N^CBM>eG4%0(x_bwVAZfOdHvLuQ({BPh| zrXv3PX@(ve9zDs?29WTfWM^!YYfu)1Qz4|X9&;gK4sh&N$niSCt+I!$KQ&R2PZAd! zrA$&Nrd=$g^d&Y5m_P&^5yr+j(mlszq);met0D7PZ=M0>6C9l{_Mo3EXO0s|P z)LU@=pu5W~*H94B3`0kvxS7sPP-u3kJ?YPio@C6NbV_F`)(}z|W95HD7mQ%2NKtjm z3TvDP6pSgw5PWGt&g2=DO^~eEX|;c}l2SCepsXLB5n{?j6+B>G*vW2k8c^_Swu7wl zcO1@%A^FNp9_dDmZy_BD4-n$0$bFzs#) zL0v_XAVNhmOw%+BJzOJ0!9i$0aC#E`&Dcziin7+ptj>Tk*iB^gwfEuV%kmpF5+$r^g4yl!~cQBw&mgXM=mwz zEBPVxRk%WUY0vb%uX@QhokDZ2nbsP8P0@;O7qlYOi_nJO_R%n1=gnh!ZA~!^;dSbB zvr6(e^vc>06!d{#itt|_!KjwMD^Fx1Y&r2V<)L}^YkQ>i&0hjHQbSf++OXbRW6-Xl zysJ0*!hfA&^e5`c_#4iJ(0>R$3OYlljfcL1PD1h1y5jkpAB4lU1wVcCH)Q{6;mUqN zaJ>$v=fH~bQ~#s-O_cdywhYD3_-r+Oq*AzQO)mbWIzFp5SZ5J^3Dz6nAj3hg!WCzh z@2_yV%_8Np5-?Q4Mro#1-)F`6*9rS;SFL_S-(S$z0Wjdm$0Q?(?6nK8;b7qAC+!8` zhj$*dlK+~X7}V$b0fzl$=m=}S0=>@9H;PW=01JIsj^i)G6U?O`kS^10D&=y;OSQ2g z=wW>Wjgso%GO(Rs3;cs)&g-$)RC@lK5dZ)GWAZ_q{Z%^2xR(66GLQX*=EUqmsOC>0 zw?iO)Zs}5IPm<7;X=D19p4$~IGkz6)D+Yogq=BA6Tj~22RE)+aYnXvhbr~4JMT6kx zu0gU0$)FgAZ_v!*KTHyy{Amcl=K2SM`$J5dh6;>x)o8HK8)JalP)!8ZjqQgqpYcFy z4wwW8%|Vk2)2#ap4#f&o{P_aKvSi3qiiMAh#~Dkw#A+AX*roV!X(<~A_J9wjfpHg=ssd;@C=>wMJ+sf2Usn>qq zk+W~qQAo9;W^dtQ2I`5W3YYJ^+LUkmQxcO36h_JpU%^2XbqQTS&ZTAZ%H*kky~ZbL zPwQCp*}2lVZ1alxR4qdpGb+VmHt8x1gdb2?iZEEuDl;|)|J@eYEZO37<3&PF!C$Co z@kD`2ny7-5VS9eNPk=)MOYg$(yXK^q-((L*091{h+5F*N8fU}6FbQ_L{O z0yZ4xV2Ksh*kFqt_BgFPM14C7OTtEXk5hws!}xnS-ELylsW~)`6&Br z6K%hAiuSu$)qE*`-BJ(9n%spu`A;y_mHtMN$6kK=2Si_B^C~MvDhX9sL=KQG$kF}7 zp&I|7oxS1%oml1C%F_(pI``9HMLbEVz19;iS6j1J*%XiY9kAULRdL*Qe07I()0RR9100000000000000000000 z0000SHa|#KK~gFPU_Vn-K~!KT8UTbMFG3Lr3jH|bR||t)05I1^0X7081A|@!AO(hQ z2aZ7u2OH3CHOlQ%1at?2T1hV{bz~seI1saqAKxe>r&B75|Noq%V+_aY0};#0{zFb& z5{Z@(Y8{!GnKi18^iyb>^F-i;+k~o`LJcQBSVCO-kYX3PAK&K+^AMS}&&9@aIz?Y? zZFvP-qBo{vDN%xlqsxSBvl7CGS&6W(5u#|{l$aS?z9UEViT=A*zfC5Us6-_yUI!8r z|9ANL)JutQ7iHax%0-p3+TL_)$qF{fY_ zw1fo;iiH7U=E_Z7q_gH+s9RfOfv#?I9iCeo>$_z-xhD$Ty@*h=#(Dv}8gd29qcrIsU@G|M$G@lb@3$pUYh(tCh3@1LOlEJonxIf9?Nw zI*mc~ zv`5+IU#FxJwuSfw>@OfoHp>Ygm1qK5*5;|p((U$kIwr_XZ&%+3eF9Qv(N*ou#g_!< z5ZrYS8^U`nOwYo@PA&2TGD$Ey=j^l{=~n$tg+BE$y~i28~%`>Va~#HM3{;F87hn(P$4N z0Pc|%G;=g~E5m|`j|f7b?6S+wL3m-v8DJ6wXW_Eh%Wv|Oy0lPQ_!5jnB5^kDTQc+_ zRGddTEY4$$!mnRCo%?T7`}nMk@VnNfm5O4}j6aKU;24DLQs9qe_B_yR-KbR25Icw4 z{N-h=TrrOcG00qBeVJ+yotx+g#u%$w9gnZv`4rV)?|u}ypHajt=Q)8!+GPm{0C=DV z6aWB#aepKUfPC#=UI=V&{nQ1(_WoX33~a%{q0P){MSwvXeWK}eE}@UHeY1xDQwv4_ z@NWA8(C+F~dK1mUaGuQu9yFZclwWyJUI8Gm=_D4Ob;bc!R=9rwsAt(L#5w>pg=3)t z1eL(BZ!cKQueNd`{Qrvuq2Aj2DvrDu?O0640Evnh}Nk1f&qY6?S?S#-Sr$)hF}#ccDxj?g=$rwbb61oLPTIBzaUDfO?y5e z+i%-u{gZ8`K0)1X?lK1~?CdUpPOJdvqXf08S9|pye-h&NJUBS8J!jjXf3$V{HljOy zx+k&XUz{tG%ZAT=I?tVR{aia2&$fThrg!WC0K5K9e(VU&3YYx{H?;N{+T8-sS+0QL zA`cG(shY#zw`Zy6uTG%3LM#xb!Gya)Efj8%2#c{T5vdVNGp=Qrn((c_v)n!R39KZv zT9j2{tRu0O$QsdFh+T47tX6T_c!<|drjt~M1nVX0BDX=3jTE{)z_C=S9?3RIu|fl!!cq0!yhXpC~;X8;IC`z;fZ)6QAq z11YQCUVI3EPXR9+kUa^2!~s|m2aUjyie1bR1pi&>NfN<7l9^V_(mTqm?tskt?#+G6 z|3sQCX0|25Q~!JZ^Ti*QMj2j^mAcVw7U$?h!9XPE`W*@JvO0W#4OK~Ul@+l562mln zo9z2OPhM#0Y_C5N7cTIK2AFuiHcdtTg$`J?Pi_3%=kSQgCn>XuW8Q`+0?2JbqVhA5 zrsBo##2A!EL>Nj;0(_btq>IhXp1-MJ)Fnv`4`%fHo0`;bG9hR9P3}xYd~@?ka~w!F z+^j(K)(=}mH!a;*bmlp_RDD-si?bW}Y-5tS`;o)}(^E%d2qy5>k+d}{7a zJ}(!_V#!jt!o=J*HjQ{7R}b7ZF}cE~UXZNVxNEv?saT0WT@pi1lPfUmdcselYMw9I ztANJdFG7SQO*-3x?Uj*t7%VTsP@u-0By)(j^l{7m58_%fYsm^yw?wrRw3E^*Ww2;m zMiiI0B~`Xu{(KGhPqy%5TTi8B?LyhOjSzf%K5)8LyGt#6WQU|_R_j2CIq$Y;?wj*l z#?RXhi}38p9gkGP-Vb}ArS{=P!K{H#f{4^-fsZp}-)$^x+z-%r_`n zDmK-15ihzBKeN{@E7pLh1J#0-%pzPf)fBXlSZ82_^E?Dw9>rM6sCNGX?D9b-vKOfh z^+9<%>0_`g(F-do4kjiQ6wzZq^+I7{aJEr3qSfv5bFA^i-%Q4iDvfEfh4GkKmrDVT zvqqx-RCi$}ADB@~?t)23za5SrH&iq}o+Ozyv{BbfUpHOi21PA|W}e>V4fcRS!(nX) zon3G1m_Bu+U6W3;t;oC2+0c!s+vSvCnKycvr6`Lw_P8M(g~sap5Xi*{PS+i~V22KU zawUT*N5EaPE}aBaXB2Af06i9XoDZ@EH}yo@^7rTP{>ok`p?Z!8Cv|GJW~NOh=E+{N zRF>Y{Tc6ClL8PT9l!CCHiAH*t$8T8k^RWhg-U^}7S2sTwFs?N+2U`xx)^@@n>qB0B z{3YZ1ip~>89M!z-dOlX>Xh9K%T6`)uh3S|`ndiIGeL}u)O zX?}^rOdE{YbYtDVE4G&?mA#)S6sWFeUmtOVUiBAa<%UY-(a;S-IXml;s6UgJXfS)U z4}iCX{#fZj3b1v`zDwtYlhDc|bC%J*f{3@z2qmkh(04jX5x`_@tzbPl0&jhx({+=Y zOi_7Al?!I(6{AqPRVLWNB8(=(Af6eInRo02h9(KEU}`Z0>6{`oC`ES5l}N)p89@P;P4L)`9SSN*WMm zLCv~IU^~4#JO~dUCKmX?Sws+$N3`x+U>lfS$A+~hdA!HdWnsKCxa}sgTLmgjStmqo zD2Z`$@m+-rYFUaRfYxMI_z5<%>%Gm-QRmu+Z=K4TKJ^5S3Q@Tz_ZzYClVRCd^=EEZ@OxhSr6ds%3PT9#tc5NO~t zjd}tvITO?)AXi_58IgP_X+0(U8E`6hS2yx?N7JG48?$_yk%Bs8OhT%+X!+TuzCz?# z&36HRy~2sjC+|FUd&`1(mc#lNsLG!^Oe*qFH!L0cFvD2&+qzE8TcR&seK-J<8=5T8 zKs#p7RusdMBd-EBi+3UCYNV;7aA@y3kF6>nPWiCea04SE;?Sq!!)lvyK&D3@`J zMzSft3IciReT>V-Z_3-0(YYa_RC0tOCnApS)O~q>2I)h#GP6Lez%dUt9;%X{4~0`9 za@(;9kO(EXotulL%x~L^Kzi7eE;yxNM;{UAQY1SyI*F?3<)0~x$xWIy^FHhfiP z(8>B`)+FQS4(h1qA*3a((w??MTB-%6Np^+D$)Rh}`?#^ljBL*yx8h(+qz_gfx~nLb zgwaI7DyZH2JZz4+Kx3S0pIOEtJLMR=%65|`7dFVgr$Q(FaneUSwkcGRRyK7H8`lv! zc&dIM0Bb*cGjcO+lBg%UiaXkaNYouWP%G-4Qzfnf5jRz%fl&d1fV3WCjXzGka)p@d>z^LN^Jl0e zCaK{o)^6$YlEJzF?30NrkR~|m_7Rop1!37YZCbKFa++ z4Hm=M=pq!K-UKHqRi%x~ont{00HGiI)J-vQw|7xCr=rJoIh0MhWCIZ9(@5SVk$)Ic zH>=TSbt5HHDZM!O*XwJjbAhSNzt6VDxTG*wWsiZZZ-T2))aR`1weFoz9& zP%_S+x5*9K2c-q}g^Ig)nNSL}!SC&Cc7vnPN#xyY8bjKR5E^$|3NTTe22YEnA&Iax zhChqJD0*BsP*}z;l>WNdU)jq>24E3l-77IoC=pY76i{Sf()L9T!u@r~+h2ypC42gd zy;#rsGhtsGDE^By8SZ zfAlbVTz6PD4O}*v zs40$5*v{X714UhQQGnapOxlj%!@A6b=20PyQ&Wq>3{u(s?kA66EU`!N=Q3m zZ2dyOg>s3-C)YC?K^}ygUipQ*r^%*5p$%6zFUgz3gl;DI92%wM^7%#usg&J~C-$w) zjmYV2*8bu59^FOJ@B)krz{2>!_!HKr@>t|@;g~M4&PZgE6|||kswXrZ)(X($x`Uc{ z(s~vB3%D%Z<>L%FtI&iUnK$#f#+eBM%4!Qjl~=D8S(m=gnd9i^s$q;mnY_N2_jWQf zKr(c|JIW`@JEPM$(_2>Hu{8H8%r5nm4n=+*`vArOUa^wg(T56hj6@=BBH>^_!=4!nP40r|tud?%_weB47zLFZg*Qt^o z;#$u&_lRESpt(lE8KRBsPZCW z=qpV4B6u$2us`3QzcUd{yU?fbIdlk{yTscU5=NFC9Vqbw3v6-uM)U4p_Q|i&7JBg| zf0sIR+@%JaZpsWQ=-5%}%7tW5Lo9=>DGpCQrz(K7uwf=UlogV&%Pa@QrR{X6CSO`x zuOcy{p$2z>AgqJcvbou{vs-}7*ZR?1|2pEYd0)%Q{-K#P4JCS4EQ)=C#F#nW{aNtzA=JYn(g0(R~nJ;mSAH=GDr)C;531ZL8gj z=FhVefC5$*VCvx&h;7UWJ}-edsf%`%vXN=>@&SG6HdH*RH%Ks-qlDrziKC;@91}us zF91b$P9{S0)eC-lMNgrZ2Fsx;*jO@O!WSo9G%F;S2+UTeV?&Zz7Z>})K^3qgavonC zopNj2QYVDKzxC3kg;6qCG%Q21d7Jy}`sSzA@0;aS@V)gHNdk%d+ z0MhVzBH=1`F~kIoHg5$E1FzAbT0Gl{~)XqV2`2P8b^2;B%vT!YIL8w-g| z7|W8dIKYQC;HNE`QVOw|@25~Gq*$COX(6s@0mrafXh%w94557+>P*N8yaKWQk$<(4 z;623&y#E@~#^*Qd3l_tr7F+F^RAzk~*uBI5BO@-ITyLO%Fw_z1~JRcWl-e#PczHMU=3YeXY zPel9*g;iG$qXI)%yO`JssN~KRrKJ<8(=qyA0eO9p_gURVy~-t2)oPx-zj{CLYQWNj z#=${syAg-w3y@v8a7u*4)7jr7I{_tsWq-#sp0wHkRumBf2|#r)b-2=<%?H(PBj*E3 zjd{Z+>3Pn0p%-<{`lTWWF09tNg?i{fc*<&EV6cN#Xx?%eH}Z65LT_%M$oDhTj({!Mn9GZ*}~+3xS znldf9_6vTkc|J19bcauEii$hjMI438*&>|O|w}d0_+leURzKH3dBbJ151c& zN>GlVA5{iwHn06+GvnCyC)wmQZ7JkYHDov|IkvhA_F4ja<&Zh?+H`$IcdLiZ?lyXU zVJ>CUfn+2~YO@<~9hynoO;b(J*(lTH0naI}<;J`%KuzFLj=cz?9d6fU-$=;iJ!)7` z_)X_pHj}nz!n9m2Uc-3kyuSH>%cT}=mW>?ko?B2~x+7R4Y&o!de)jRiDEBYxXOS*IiO8g-hPQ(#mLLK_3gozH?e2dN|ZWdAlx z6Y!ZpomoBv@*7*y8E?G6^O9M}DtOu!P)3SNPyaf>@(vy!b|I3TchTAJ^;(&j0tWy% zAa;)2LZa=&&zYI_-v0?n-AAQY5}YR*qKNe=|NkGp4iy8w5;da0o3|X}%#87@Kn07^ z0+rtnsUr4!z z{I>hNj2pgE+~i5o9ABDoM#B7AnH4u!bi$2fRb#X9Lcd)cnD6`eT0jFrY%*g2kH>Ym zxz+KM5F3;_eLUk+MCk4XAl%|8^?bctA(e(2nHU)@e+XG_2fTS+ysqRNH~_$nmj|(s zMDEhW3Fm-(`W!vGH{8D=vRbUPz=o4lFN1rF+-YXrskdxkdj<`f<=pBQ-=axKFu*j0 zPcGOEXGZGvaKi(upckcp;?NEjHX(Y4C-+v_fOnW=M_a{e!bb#`>@A{$91WgfC*Pa%Z3&W3y%0%7moJ6!Ek+jfdKes zDaoBPwugJT9NmcUktVy{8#wO#$~1=3Li=6?Q(_?Z=i(=q=gU-F;PwlAxo!6Vbv<^M z-eOM=C?>{)kqi-5E4sf|dxXQP#KAiW7#W^uKwLS803N)H z4-uVo1PHwI_tx8d^c!*)7-+BRSO-9e{Gk z9%q$~+HU=I4s|*)OpODqXZD0OBgJ1^5ZS!H1!Q#ia?~{1^O+evdL1xz%Jg=~avqz^ zr!8LOlMS5JVsB>X)Q2|!yaCJ;K>U(yet7ccQ8V-VH>L)AJUtKJm^y0ab!2jC2v9qS zCS=aCWgKf)cd_l|BlbeFF^N}K$FX&Fm)KptLKCZ8@IkZhIx9RhG~AALba^|QNx-9z z4IKo5>UUIAz1)=c%(Tzi6nH$7S9P`n!p%>m#IFXu5b$TdRpwXA>)i)TI1_wpjGNg0 zil~<8*re`_dwLBDEJScOA=hD<<^;k}%zN9}0j~blggb|Yhj?5g+LcKJ> zy1<41Efo5H0{#C+HtS3cixpP9WaaO%hL1)xl0-(OOC zswqA9kOtkG@aV%IJ{%>zE`RtilzX8se)upzdJaM#h7hUV6sJKj{Y$%+m3Z)g>MYNG zO`rf3rvEd!w~D|99z2@uJ01G8HeWJWJ|5(CM=a&i|;L8zS06|lDKSzjrBy=h81Qu9f0`s zSY+~!@?=2ZTOCo({h$Q)hWC~Oq`+t-D@%{V`*JE9Gti67wC}yEtAB-r&~s}XS>RzB zv6*Qg_BJ8F)XU5j@;O`Qv!YqiiVMjS2c&5ngpDlnPCg(dn~k(%9I)6MM`1BV5_9U*pw1s3@6z=4=X9&5k&(oeksfl6>XX; zLolhDxef#)_iF(u&NNdXZ3wN9L?NW1HYQV|w(>?X%9I=CC7D&+Zv;}kqwcjk@@YCE zoBx?d=!$KPBJ?88N%dliA&bgsG6XhsJEew6PX^MI`C>YN0ev{)UL-tm-i9==u?mn}jqw*^*a5KYEYJncE7xb0!tsm5D%?kTA}AXuOP8TOVj|%!wl@k(>`cm8 zU$}5{bQb4I5cn8?2w+15W_U8JZ1R=dD61xJh%YB0*1I59V=&euC-eylod30Q;I7Hr z00AUi-vaQ}7@X}U$B+F3IsggWkdO4r7Hs$IZlRbxbSMaYR#WszMdlM$2(s2=o?QP^ zOyWD)B-og4YM{lia#8kh4J)jjV15o2;4whrs*rD(U$E^H_Wb)=*?ql-HUlpv(Lfg^ zz3@zx8tDN-l7eMBb&@$4Pv_FFqP43J^< zRHU>Y**n<`c$|`?b?YD5o1_2#0L3z&dz$B(r*drveJilQ1#?$9(WQcw_u(wGo5Uu7 zu5z?pVa|yUMFDD@>{4qE7(YG(g@}l+shDfL)C*Fs8ZWEv;|ccp(j~>)=S#cpc8@w8 zRR=*arx&Um(eE*iHlBGQz!)4^Z{qEeMB~PRKk(p;-s*47+jAF=kPEo9W(P160Jh({ z>jRjg#ouD9>St%mSlvJCa%0&^P7ArQ{hQdj&L}l^8jNtMrbR>{-q&IojZk{kPf+#X zR9Y2KT6CPceGV#iKiE+)k7{o*L?~ohLMI7xQVHV&&VEqGdBP!3Uc+fHQf*n&!Yq22C|dChVO3c;m$7XgB0-g?G9kK zU(`50;?QWg+mWOcA{OUEQ%R`t`=MEG^AqY@NTDA$vB-j->`}&WD73~R6`sNlrF$VE zg4ojcy%HaWK2nm31iZ1|s()f#_^(O)eKX zsSMrj36`%IG77PROJa_G+-6ts=mgctSh8D4uR=7j7X{xt--nR*UGovy%rd9NkOJKD zW@a4oI+UJ6Auv}EM2C~hSac*~m}zFX_&=+ukl-(H)U-bXw`2Q+3Rw6TGy&|sF9H9N zzjFAi_vsTw$Ncf|R|y9g-4O6^ZU8a>~{4Vw^%iHjY{6 z%o`^b1kqu1a~)@@e1MrQFXqHl{QC8NjSIlWntI3T^nQG&pXP*xmCVYEX18!>_T~q7 zp$i_k;kOx*ZTcA&xhf5jxOMs$*vuOT6ae_2r}W2vnZRfI_CMQ%Se-7o?{z#Csd!ar ziCVQ=qk$l&M^m)LXxxtJ_(X-TRj=y_XOHLd+?0d)+$es7^L^6K3NE^eQwddE&+DfQ z?vk$Qk^XKOSh;Z>uL+u*DV)lgH%+r@+ULUDn7cDMFW1yQe>p2&+175uF58yv+6#MQ z@9yNj-1qi(2h{Lyo43=Oeh&RJ`#*Gk>HJYKrBxbjLwnH^&=b(p(eu&UI+dMSo$cxu z>JRF`@$uuOb8{iJuX9)jb~JV}b~bh~c6C>5m!j*^iPa}IpV)n3=)~lO$l9)6>=esb z?zZgTjFyLpA-BnZ2@9|YMOIo7C(0_B>nP*vN*=>2>@+%gHjl#;X=~y*(8Fm8u zANDKG8yAdY;e@z&Trw^bmxn9E)!`Q5mf>1(UASJ{Zk!Hx2sehifV+Xai<`u~VuA(; zzySdOfP8W-#P`;fU^CCp4;sN}vj-^g3;qWlCBd8H8b5W#N{V_ioy^;PDszH>1>sfX z(!KRhkWS4VT)L98Nxe~5Qg~jb6xy~0vl?enxWc61%7QdXvRYf`V-U6_G0bn$bU&*0 zI%!x=kLgWz9RAAnQA)G?CXww#6ky;Ts0BC96->A`^SWW#9x~2=t;q%|(<_cpX3%+e zWfRX3Pzw5#M-ccy7)EhYR87cuozd*>;($@I@tzBfDX`?BiPO6MQ)RpJ_B@TiQZ7i7 zwh_`y389pbxJm<1pf)npkc1#`-#bL~`ZapJK6ib^Dd(}b4yurQp8aVO(52re`n!62 z2Ii4N(bN6i7pvML1F_6Kg_VWhiOakZF13rwx;wU9e{=yCM}n4_qbH8{ z#^doz_H*s2wqx6F>DPXx3s;fjM97BqF1pAN*xA#{^U2b_@wSlz>J5ByQ7`b!o5rt` zrs-K#f7tEp_h@%t0eQA6k17p?1~ z69kQQZpriy`U;1A4IdzLwBadljsa%2CBn23OgP%}y+dPB);<;_QlJC5siK_!_D|Qg zUaBu*W_$Hkma7XEOc%$A8ov1zg~7!ar*QtmlV;EN=$_FuSNAa!!Fij z8>~)!@oKfxMA*8?u){cSnql|J5*iH3*%3mz)TMT0BjrLNi?K1bCurLctnG#O)#0<3 zC;3zIGhPROgkWWZ=Vl!&QUl(7oZrqmS83AU=QWs(&Ttxl22v z=u)+G`1&igOD&8p8I6z`wa58i=YH~k@hRi~QR^ig7xW@B@beGwRscZas2v)o7_3%f zo+W7zgmGFnHl{*ExCvIcZqTFwDw@HnaJyjD9x|D^xZO~gXcjAtK8N?`T-(trh07XH zL_*1apWALmR21=D2;;Pkr8}V-%q|4*(!1?4P?O>OP#c@;46wb!yURr71bCu9M*~BG zht>LJ;lXw9JSana{dhEgJ4}i(caoN4yS&#BM$k)2RD85S zN9!5)zh}z){jLQR3gu-p27!NcU!1RE+69)_IiYe%JwJrdP^FGxay?E6Vk`wyIxQ-? zuF#mQ`-8%a<_RrCtImmW#`=B61*zB}a4jduYA0(NDpXfIABq8~A+Q!%dVq--#e=t3oJmgD6iCcrZG_%oWp8R_SyHe6-) z1}9xo%zF<#OyJ1grn{Sceqh`4quP4Bqg^S5?&zWZGBqzSk6}aNS-mU3DLJKxV2HA}YHI6?b>iv$*bP36 z5}yX{55l}e&dNgg@VDCh{QBs;n9NqtVYe-owZ-gA{A*yy%*?dJ1tV2$oZUkhg;AVt zT`E%Hj_bSj=ilU_z1+87!;D!Hg%-6{Nu>-_f8Mk#8WK7H`AWggl@^7{oDovmMPmvb z!tIO>{Cc*>s9f3YTM&Z4_gvTUOpYKhl)9nbveZR!Mlp2Lw7dX>?=Y>2Eq;FhGJ`Fm za76RwM0nkB*z!S;%OX`agqJ=|qYWg}Gn*rr9ucE9L+S^rKZCJ9BxLKBlUB21jIE=D zUPl7(>_<#Vv8ueS(;z?QE(SD~rSK$YPzhY?_>iQ@q)NYXPz8#h$d7os#OXz!EWxsS zZgR@#xIq*QV@EPZ`&*Hy-a4hvSv3`)FTczcutza+4j&mbHRbud?IL-G>t-Bd05{^qL1* zy<7pLRt;fOgnOaz;;OTIxl_}6cF;K;eUUk8gh&nOYfBJATQI(%U`YK)4`whf6f4fo z8qIQ#5ZuBvHK8T%W;tB8S&iBB75CLyZ3}qm;E61W;q)V}>v^uB(i@P>IyfHb+N9Eh zS$t!Bl(xeud4DpFz(YDYWIH{K7~#h}_tw9}>9r%{tKO>>p&{Cd=J$9Wa%=0=^=H=M z`aCgBM=u1$8+iU5Y}kBUzEZ@7%&b?qKlMe!#U)*2(w_wnNvz-FOt0(DI)5#&1p#sh-S?~g@zSpGe;Qyte|>{6kV^p zwjD&oi#u0fh)FY#1a3Hp;(^IhS~0F(>1ax2l*#L9g#;gDQ&KT%UpiKr#>}49z&rNj z!%{yAi`uuu30JNk&M>0&?86hsc@EPS9 z=%BTRjJrV+I$bEot(LNg)LP`H&Yu3hzTR%I_0AsPkM9WWgOp_YO%Z-dP~-<_)eg#L zY{I<5w7>jLEjBBX@RPhG%M2z;r^Hft0)N02Nm0_HX|tyn$OXhnav>fJa1=vvx^u=( z+Cf|v1@ug&@9>W8l4V)zvOexYk1aHTByfb1b$_%qk!D!M3aVw_BxM*T4X>vvm1L61 z^I6&ivuK3z`VUg|e+bXY7n@&UR(qHyq36RmDGHU<{SGM&bF;hmgk6S4JEe66A}1pV ztc#JP99(ccY99bY(H@H)74%|V=ImrLZi`5%l66EwOBU(C7|vE0K`F9O8gh!* zpb~&%E-U7qhu>1|*|p{OR!8vcBd0pe!>5i0e!HY)&=v`o&x91=q<_$(!+F2N%HU`3 z+o~zT&Ie%#H9M{*?FwK46Uf5_{<)UhKgaB}~8equcRv8cB>u4Mcc}1GN!2a+? zd1gk@YYy7J_+khDF&uv>G9Pcg5&quV>!EKnAD(^;+$NumkNZ!`*Na{5Cb(iy7e|Xd zC$IkJfv3E1;BTb%?YO8-NZu-CB3yR3Ng8M0B_P5$RRKk&6@gGT7xzZo)IMVK>-DIu ze=62Rk}+nViU*1g6q#CYAS8bbjnUHo(=+o&PcJMHKm6)RFqY2evtc)#hToi4mPt@` zpIkJAt=8wqD~M$-bWnJcl_c7Y%Ly6wz(fHN;u`b>ISl#FvN+1X=2H7XeL_qolGG-d?EQD@>}+7O{e~J7=zB*37nT#&&~YKxui1E)S+~i$bMMWI z?APJj0Uc0}z>PCJXWqde8Q%C99RC2(sVxMFZ4CdKGaT1N`)KJ1 z5GJjYMCd;uA|+5fPARjy4@J#JB+ z3%exl)OWri$&ZA#t`L$_f`){WhAR2bDr9-QNy7#7o0Ar$#~ZtpeDo0j*>*9c=%KIanq)_SfC);Xu! zg%DG&t0}Nv=w^aYIiE_!5S^LIA}@;CxYBx9-(ZaII&o{8m*+gAVYfjfAF8x+Y|G-T zGB5X)B*Z$E$aGBSL_m8t3d?!yfQ7J-l!5l~V?Dt+0J2s^(F~{42ltWTBm$PLl^!hC zaiIq$Pg-{k+hIDs%Xjd{H2B~D68DEJd-Y)^(fE)ux_LE7Fr5s`3%$mWFt28o#AM~;e3hp*zt{4`7ymL!nNkFX)HW24Pm4TLyTW(0>M2$|dbI}x z#cdeD%WODECK(IK!$X%q^7=InR~Dz7+DTCo1w!rtXV4w*@a>a7x!(lzFBjnCLHg7` zu`yG&8%8LDXXxSYFfp!Hx)vb{Xg?$dza*yZV`96g+~$*gnTvZ7aRxDmK6Z(AyvD}S zMdu&U;Dh;l&%^g<4{NHX>9*%MHm60^)}7*HMHenv$GlX2`m^VoyV7Au{x$vI?~U%+gBKQtdY~ ze43?}l@9?fV8l3{8(cb`wH?YkvlV8p?HSyH9-(uQhfJ3hu3>b-xb3d~YtbXJ?wSZZ zcZR1gh^|Q~|0j<&zm^B{4jwt9DfL^mVONpX?+@iCo z8olp-`E#&NZc`3$OjZdxh~gU{E}&opTOs}uApeGg(X>*F5Y*cbAv-ma`i!tqJvLTheFh=?IQN5dk4qq8@+@g1^*=sC2+oK*T|-z2JI>0?SHm}Rv4Q{rb7?8; z4xy9_H`B-Aqwd4k5%>fnL1SpLHOc1UF3@C?$@bs}D11E!-=h^@OQx3;+7__Qb@Mzy z_fq*T*`zuXmiCO)Ngimbz|okkt*(H_uMelQB)W(&J4=;>Hiy=J#zCBjRNKDQIF`;# z03L(ggD*=TtfQ8wdDv$-#K3j!o9et1BeGP9)yIWvhi`|oMvyfWS*w2#LBpenzW)Uw z?T;d_-qIyUa~v6m0uoNr+IU4WNi$k3SF~QjdgW_g1oN|Ge6N28ZI+V=exg(5R9@ipVffkgKWB;)bP`4J>*ghUee;ZnHcTQG3K`ScZkJX-Fnvr(wC-+FAeTTRtFYdSJ^ zT!nN$`&c=p)YLEB$Zd->TwoT;bwi8L96uR34w?Jp!jjfl9fqe?yvTBM+LjG0xK5MTI)~nV|4Vm5V~)^ z^|s?L*~NZJKebl#Lo-xgquuycr+QA>Q3lV2+tlegFd<20l_vBuE ztPfEj(bE&U#JGvjT^s{*v)nFVJ%iAmunON?O&wcq$(q(#LiN@g9LAW%HGH+xqkRwV z!{6@K0*)~Dh7G(4{-)0&YKGZ2k61l`V9zo9bT}k3rB7Y6Il_h>0B8+lC55JEf$#q)z?dm$Aj9W_o zZ_q7dcSU+Fz%+FIj=`Yc?Jl?^qLAN5rwm)yYTLltO4`b?NW9U3UQXIWL(}o8xE!tO zztu|sArXs;A(6)?SP8vXK<1KndY=u+rf?7@XSFDbhH$V@;tji^kDGB79(IDVSM zfoB7yiB1_|Tj}tUdkda$t;)ykAlu6Jqnrv0F zS;=IwZ5)%Uc+|=msVl)*C#lZ$;`cnF6RoL6YU|kVJvku@c}M}WGuyqk`#l8NPn>Jj zN}Wtg`LFey1UHZADc_Y$C@f2GhG?v*>eG{YtQkES9e^`vrR+O zlEgE(nk&SRW{+k^7e?nK>S;4b9YOY}kO0mx<#BD+oaH8HhUEp}?WmfRm6vv-V$wAq zQrgD?x^(k6rM9-A%KG%GVJB-u8-gB;x6X1&9C5wM(5chX5W&@D+O{0Bfio^T@!fQL zuG@juqxIc&HEZTSce}M!q;$Em*+x-QrFLCXwT|85JPq?`RLi)t_p`FrPCI;vxg&UM zdel^8>vKwy8tJLb(=^MAsxdyp$kU&kb?@---o5*TRH>ZN?OoWQq!{Un1O2;qqPTm{ zz)-We|A2l3nfwJmvh#%1aR5ddi)0TOkGn{738gu+%hQ|whwh&ahfJ^ z*Uni3IpvO*)__6I+fi~E^3^rK4I)EaFUXg|j=$)5Ipp5fN@>TENS*aLUM0`q+{qfa z8#imLj~O|0w3nbZ7-vAuT!N5jpl+m)w(U@-ZLtWCpN59^18>*J*0Bb)A!BuZR_TCL z^L6mK!P1r@CeDQ=B@&1Wbb?V@t&kt(%S(|FE-f3{Vx(3^nGGGf&z!KuabRP>?G1U_ zAT2`7a5%YX{>djH^c|B&wf0&?3TG38BXAw9dcb9|?lkwY9j%Ob3RydB4X0l$V(vXC zD;6k@=DliOLcj^82g|bVKB-Ti{%z-x!T7?k8U^eP*_1j&C3AQvJSMy(Cnzc~Z7;y& zT*uN>g=1*E&$TT>l@(dy$JRB{tfU%#cY?B{1v}ZwO_b3zg)2w!bL}9Y+hhAlj#ona zl8*KtzFB2)Y^AuZBfEXx#k-J36TqGh`LrKc1)HGy*mYUtd5&e6AKd=}OOd1g(yW$a z!u-zKtU#}07PXUeeyU1zh284iy?8ZAP-ef8$!Y`V6)bIq~_?(Blu`PZKma{0Oq{lkMt z?>_&Ga_hq<#((_!0~t)-yE8sML7&{EQ>V^def0G4f5(pv(#ANr8Jx{mT~&F&eJ$G5SP+%+<@jpNdYuDRhAf<)Q&Bq)2|%Qj{0m( z5m#-zf@JzpQPm^tyQ!-hMg^kAER$7`ZCpf1ZW65e zayZn;pqcLcIRr{3PAP59dyEdCJA{>)J3XYn=OtHR7NzH*7mF!%0;PL}U<5w;d(4&w zw+OkISWP$2XJf2eM=df$*)&~%c?thV3pBkDgZHS_NNBVs;CPQt{vVVTLsH=iB?W@~ z#;0fMnEjb>Y(XNw@FPb(6*@ebc}_V4e?wqr$Mwl{r%!inn^7GfDQ5`oG3tTpSc}Hj z=K<;i75sfe+er)p48aNqSpW*iSp=v2%M#cYbC$uH_;3kqi6qkmS5usY05mk)#+6$r zDg~CXCfC@419{0dtXLqh1A7)c>`IM2Xu|Gd9~9UVoB$4cWuq2^B1Z{-;&sa9$)#0^ z%7+(k{-_cN)QU8!WErR=9z<)!&+~E07bQQaWy|v{RZz4m87dX7=Bi6prPRxZ@O&3? zyY5xS*Jh4SvF_+s$7Plu*hRUuR? zpR7cOB}&%MEXb)Sx{qSkmW*><<*K=Q|DwP2_X)i z7&2R+^RZ`&h+IJ>+EH@6RaGhSzIcZ|k^cnPPjR6fCHZO*CndF9Ra}*++)9>|U;vn} zM#<-3@QK_GFgA4xwsGRjg)296xbr~A;Mt{$&-&lH0D*#p2osKrPaukjSd3V4;z=cv zQ%IteDou;tz>va_AI2&}qsxr;Enr%7u8VBP$90+B@ShiEE| z&S0|G94?P95H{mMERo9Oiuz!c8fbdfmRz0QU^JO6R-4`7bU}BIUO2?DIyEglBeUG0>&LG@|0sqNBt(~~IbCUk7!Wm}ltm+Fi z^(*)WTd{)^<=9ietp)v5phWd#obN@<{ZcbO2Ngc!< zhn+J@goS-4Yo?y|Il9SLRxsMdm{}@E)UPnyWb-Zedql)TY~stWR2qJ+0$RcXNq~^+ zzJE1+UKmkLN<%I$I`>iZ^uo$B&E$FtL4_*SA=hjlGp(D}(b?NER#>IiV`?NcFEgW^ z&Cyn4+k8^eQ)bJ`oUp=Vmm_Y!el2G{<7lVttQt-(Sg6O4J8K_t?^1Ygl~*^#?_$iI zNw+Ib5e#^+CwJL|Qytc4#ET45(JqQF3V#8zLfwL@0|XE_fIzmYwL00Mr=EKBa!?~C zOlqphiMMgFrmw!}Y*JzVO1^^{&fTam1V5Ed6OD zh*3YVac<8yflHH=Ve)L*3wzV$uMARkTY6q_R)h!Y)~P$-^}X=J>xp;kwByl~TkBm@ ztg5Ms>g&R5K0_-Icn2Sh#kjfL^k}XHxlTJp%BWdZ7{dS%dU_r=x1;a~#{n-#5$HYX XMQ{4hxA|M=Cwa5=H!EjyH2?qr_e6{Z literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEluUlYIw.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEluUlYIw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..6f232c38a17ecea6607432d096a52b3c0ce4fb3a GIT binary patch literal 26644 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 literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEm-Ul.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEm-Ul.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..a3e5aef7c93b6334a03923067da54adb1e025619 GIT binary patch literal 24652 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 TS>*;jf81#>o`iG#8mbKdV$}U= literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEmOUlYIw.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEmOUlYIw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..f73f27d6e1a1f8ae9f9da42274083f7543d85513 GIT binary patch literal 10704 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 CEy7m- literal 0 HcmV?d00001 diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEn-UlYIw.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEn-UlYIw.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..135d06e00d05b590861cd226b3bbe781f4940952 GIT binary patch literal 14288 zcmV;>H!sL{Pew8T0RR9105{M85&!@I09+^l05@p>0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/assets/external/giscus.app/client.js b/assets/external/giscus.app/client.js new file mode 100644 index 0000000..732cff0 --- /dev/null +++ b/assets/external/giscus.app/client.js @@ -0,0 +1,7 @@ +(function(){function h(a){return'[giscus] An error occurred. Error message: "'.concat(a,'".')}function l(a,g){void 0===g&&(g=!1);g=g?"meta[property='og:".concat(a,"'],"):"";return(a=document.querySelector(g+"meta[name='".concat(a,"']")))?a.content:""}function p(){delete c.session;var a="".concat(k,"/widget?").concat(new URLSearchParams(c));e.src=a}var m=document.currentScript,k=(new URL(m.src)).origin,b=new URL(location.href),d=b.searchParams.get("giscus")||"",n=localStorage.getItem("giscus-session"); +b.searchParams.delete("giscus");b.hash="";var f=b.toString();if(d)localStorage.setItem("giscus-session",JSON.stringify(d)),history.replaceState(void 0,document.title,f);else if(n)try{d=JSON.parse(n)}catch(a){localStorage.removeItem("giscus-session"),console.warn("".concat(h(null===a||void 0===a?void 0:a.message)," Session has been cleared."))}b=m.dataset;var c={};c.origin=f;c.session=d;c.theme=b.theme;c.reactionsEnabled=b.reactionsEnabled||"1";c.emitMetadata=b.emitMetadata||"0";c.inputPosition=b.inputPosition|| +"bottom";c.repo=b.repo;c.repoId=b.repoId;c.category=b.category||"";c.categoryId=b.categoryId;c.strict=b.strict||"0";c.description=l("description",!0);c.backLink=l("giscus:backlink")||f;switch(b.mapping){case "url":c.term=f;break;case "title":c.term=document.title;break;case "og:title":c.term=l("title",!0);break;case "specific":c.term=b.term;break;case "number":c.number=b.term;break;default:c.term=2>location.pathname.length?"index":location.pathname.substring(1).replace(/\.\w+$/,"")}var q=(d=document.querySelector(".giscus"))&& +d.id;q&&(c.origin="".concat(f,"#").concat(q));f=b.lang?"/".concat(b.lang):"";f="".concat(k).concat(f,"/widget?").concat(new URLSearchParams(c));b="lazy"===b.loading?"lazy":void 0;var e=document.createElement("iframe");Object.entries({class:"giscus-frame giscus-frame--loading",title:"Comments",scrolling:"no",allow:"clipboard-write",src:f,loading:b}).forEach(function(a){var g=a[0];return(a=a[1])&&e.setAttribute(g,a)});e.style.opacity="0";e.addEventListener("load",function(){e.style.removeProperty("opacity"); +e.classList.remove("giscus-frame--loading")});b=document.getElementById("giscus-css")||document.createElement("link");b.id="giscus-css";b.rel="stylesheet";b.href="".concat(k,"/default.css");document.head.prepend(b);if(d){for(;d.firstChild;)d.firstChild.remove();d.appendChild(e)}else d=document.createElement("div"),d.setAttribute("class","giscus"),d.appendChild(e),m.insertAdjacentElement("afterend",d);window.addEventListener("message",function(a){a.origin===k&&(a=a.data,"object"===typeof a&&a.giscus&& +(a.giscus.resizeHeight&&(e.style.height="".concat(a.giscus.resizeHeight,"px")),a.giscus.signOut?(localStorage.removeItem("giscus-session"),console.log("[giscus] User has logged out. Session has been cleared."),p()):a.giscus.error&&(a=a.giscus.error,a.includes("Bad credentials")||a.includes("Invalid state value")||a.includes("State has expired")?null!==localStorage.getItem("giscus-session")?(localStorage.removeItem("giscus-session"),console.warn("".concat(h(a)," Session has been cleared.")),p()):n|| +console.error("".concat(h(a)," No session is stored initially. ").concat("Please consider reporting this error at https://github.com/giscus/giscus/issues/new.")):a.includes("Discussion not found")?console.warn("[giscus] ".concat(a,". A new discussion will be created if a comment/reaction is submitted.")):a.includes("API rate limit exceeded")?console.warn(h(a)):console.error("".concat(h(a)," ").concat("Please consider reporting this error at https://github.com/giscus/giscus/issues/new.")))))})})(); diff --git a/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js b/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js new file mode 100644 index 0000000..b01ad01 --- /dev/null +++ b/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js @@ -0,0 +1,2314 @@ +"use strict";var __esbuild_esm_mermaid=(()=>{var cxe=Object.create;var R1=Object.defineProperty;var uxe=Object.getOwnPropertyDescriptor;var hxe=Object.getOwnPropertyNames;var fxe=Object.getPrototypeOf,dxe=Object.prototype.hasOwnProperty;var o=(t,e)=>R1(t,"name",{value:e,configurable:!0});var M=(t,e)=>()=>(t&&(e=t(t=0)),e);var Ni=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),vr=(t,e)=>{for(var r in e)R1(t,r,{get:e[r],enumerable:!0})},Cb=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of hxe(e))!dxe.call(t,i)&&i!==r&&R1(t,i,{get:()=>e[i],enumerable:!(n=uxe(e,i))||n.enumerable});return t},Er=(t,e,r)=>(Cb(t,e,"default"),r&&Cb(r,e,"default")),ka=(t,e,r)=>(r=t!=null?cxe(fxe(t)):{},Cb(e||!t||!t.__esModule?R1(r,"default",{value:t,enumerable:!0}):r,t)),pxe=t=>Cb(R1({},"__esModule",{value:!0}),t);var Ab=Ni((wS,TS)=>{"use strict";(function(t,e){typeof wS=="object"&&typeof TS<"u"?TS.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(wS,function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",i="second",a="minute",s="hour",l="day",u="week",h="month",f="quarter",d="year",p="date",m="Invalid Date",g=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|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,v={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:o(function(k){var R=["th","st","nd","rd"],S=k%100;return"["+k+(R[(S-20)%10]||R[S]||R[0])+"]"},"ordinal")},x=o(function(k,R,S){var O=String(k);return!O||O.length>=R?k:""+Array(R+1-O.length).join(S)+k},"m"),b={s:x,z:o(function(k){var R=-k.utcOffset(),S=Math.abs(R),O=Math.floor(S/60),N=S%60;return(R<=0?"+":"-")+x(O,2,"0")+":"+x(N,2,"0")},"z"),m:o(function k(R,S){if(R.date()1)return k(F[0])}else{var B=R.name;_[B]=R,N=B}return!O&&N&&(w=N),N||!O&&w},"t"),C=o(function(k,R){if(E(k))return k.clone();var S=typeof R=="object"?R:{};return S.date=k,S.args=arguments,new I(S)},"O"),A=b;A.l=L,A.i=E,A.w=function(k,R){return C(k,{locale:R.$L,utc:R.$u,x:R.$x,$offset:R.$offset})};var I=function(){function k(S){this.$L=L(S.locale,null,!0),this.parse(S),this.$x=this.$x||S.x||{},this[T]=!0}o(k,"M");var R=k.prototype;return R.parse=function(S){this.$d=function(O){var N=O.date,P=O.utc;if(N===null)return new Date(NaN);if(A.u(N))return new Date;if(N instanceof Date)return new Date(N);if(typeof N=="string"&&!/Z$/i.test(N)){var F=N.match(g);if(F){var B=F[2]-1||0,$=(F[7]||"0").substring(0,3);return P?new Date(Date.UTC(F[1],B,F[3]||1,F[4]||0,F[5]||0,F[6]||0,$)):new Date(F[1],B,F[3]||1,F[4]||0,F[5]||0,F[6]||0,$)}}return new Date(N)}(S),this.init()},R.init=function(){var S=this.$d;this.$y=S.getFullYear(),this.$M=S.getMonth(),this.$D=S.getDate(),this.$W=S.getDay(),this.$H=S.getHours(),this.$m=S.getMinutes(),this.$s=S.getSeconds(),this.$ms=S.getMilliseconds()},R.$utils=function(){return A},R.isValid=function(){return this.$d.toString()!==m},R.isSame=function(S,O){var N=C(S);return this.startOf(O)<=N&&N<=this.endOf(O)},R.isAfter=function(S,O){return C(S){"use strict";EF=ka(Ab(),1),jc={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},Y={trace:o((...t)=>{},"trace"),debug:o((...t)=>{},"debug"),info:o((...t)=>{},"info"),warn:o((...t)=>{},"warn"),error:o((...t)=>{},"error"),fatal:o((...t)=>{},"fatal")},M1=o(function(t="fatal"){let e=jc.fatal;typeof t=="string"?t.toLowerCase()in jc&&(e=jc[t]):typeof t=="number"&&(e=t),Y.trace=()=>{},Y.debug=()=>{},Y.info=()=>{},Y.warn=()=>{},Y.error=()=>{},Y.fatal=()=>{},e<=jc.fatal&&(Y.fatal=console.error?console.error.bind(console,bo("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",bo("FATAL"))),e<=jc.error&&(Y.error=console.error?console.error.bind(console,bo("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",bo("ERROR"))),e<=jc.warn&&(Y.warn=console.warn?console.warn.bind(console,bo("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",bo("WARN"))),e<=jc.info&&(Y.info=console.info?console.info.bind(console,bo("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",bo("INFO"))),e<=jc.debug&&(Y.debug=console.debug?console.debug.bind(console,bo("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",bo("DEBUG"))),e<=jc.trace&&(Y.trace=console.debug?console.debug.bind(console,bo("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",bo("TRACE")))},"setLogLevel"),bo=o(t=>`%c${(0,EF.default)().format("ss.SSS")} : ${t} : `,"format")});var mxe,Z0,kS,SF,_b=M(()=>{"use strict";mxe=Object.freeze({left:0,top:0,width:16,height:16}),Z0=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),kS=Object.freeze({...mxe,...Z0}),SF=Object.freeze({...kS,body:"",hidden:!1})});var gxe,CF,AF=M(()=>{"use strict";_b();gxe=Object.freeze({width:null,height:null}),CF=Object.freeze({...gxe,...Z0})});var Lb,ES,Db,_F=M(()=>{"use strict";Lb=/^[a-z0-9]+(-[a-z0-9]+)*$/,ES=o((t,e,r,n="")=>{let i=t.split(":");if(t.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;n=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let l=i.pop(),u=i.pop(),h={provider:i.length>0?i[0]:n,prefix:u,name:l};return e&&!Db(h)?null:h}let a=i[0],s=a.split("-");if(s.length>1){let l={provider:n,prefix:s.shift(),name:s.join("-")};return e&&!Db(l)?null:l}if(r&&n===""){let l={provider:n,prefix:"",name:a};return e&&!Db(l,r)?null:l}return null},"stringToIcon"),Db=o((t,e)=>t?!!((t.provider===""||t.provider.match(Lb))&&(e&&t.prefix===""||t.prefix.match(Lb))&&t.name.match(Lb)):!1,"validateIconName")});function LF(t,e){let r={};!t.hFlip!=!e.hFlip&&(r.hFlip=!0),!t.vFlip!=!e.vFlip&&(r.vFlip=!0);let n=((t.rotate||0)+(e.rotate||0))%4;return n&&(r.rotate=n),r}var DF=M(()=>{"use strict";o(LF,"mergeIconTransformations")});function SS(t,e){let r=LF(t,e);for(let n in SF)n in Z0?n in t&&!(n in r)&&(r[n]=Z0[n]):n in e?r[n]=e[n]:n in t&&(r[n]=t[n]);return r}var NF=M(()=>{"use strict";_b();DF();o(SS,"mergeIconData")});function RF(t,e){let r=t.icons,n=t.aliases||Object.create(null),i=Object.create(null);function a(s){if(r[s])return i[s]=[];if(!(s in i)){i[s]=null;let l=n[s]&&n[s].parent,u=l&&a(l);u&&(i[s]=[l].concat(u))}return i[s]}return o(a,"resolve"),(e||Object.keys(r).concat(Object.keys(n))).forEach(a),i}var MF=M(()=>{"use strict";o(RF,"getIconsTree")});function IF(t,e,r){let n=t.icons,i=t.aliases||Object.create(null),a={};function s(l){a=SS(n[l]||i[l],a)}return o(s,"parse"),s(e),r.forEach(s),SS(t,a)}function CS(t,e){if(t.icons[e])return IF(t,e,[]);let r=RF(t,[e])[e];return r?IF(t,e,r):null}var OF=M(()=>{"use strict";NF();MF();o(IF,"internalGetIconData");o(CS,"getIconData")});function AS(t,e,r){if(e===1)return t;if(r=r||100,typeof t=="number")return Math.ceil(t*e*r)/r;if(typeof t!="string")return t;let n=t.split(yxe);if(n===null||!n.length)return t;let i=[],a=n.shift(),s=vxe.test(a);for(;;){if(s){let l=parseFloat(a);isNaN(l)?i.push(a):i.push(Math.ceil(l*e*r)/r)}else i.push(a);if(a=n.shift(),a===void 0)return i.join("");s=!s}}var yxe,vxe,PF=M(()=>{"use strict";yxe=/(-?[0-9.]*[0-9]+[0-9.]*)/g,vxe=/^-?[0-9.]*[0-9]+[0-9.]*$/g;o(AS,"calculateSize")});function xxe(t,e="defs"){let r="",n=t.indexOf("<"+e);for(;n>=0;){let i=t.indexOf(">",n),a=t.indexOf("",a);if(s===-1)break;r+=t.slice(i+1,a).trim(),t=t.slice(0,n).trim()+t.slice(s+1)}return{defs:r,content:t}}function bxe(t,e){return t?""+t+""+e:e}function BF(t,e,r){let n=xxe(t);return bxe(n.defs,e+n.content+r)}var FF=M(()=>{"use strict";o(xxe,"splitSVGDefs");o(bxe,"mergeDefsAndContent");o(BF,"wrapSVGContent")});function _S(t,e){let r={...kS,...t},n={...CF,...e},i={left:r.left,top:r.top,width:r.width,height:r.height},a=r.body;[r,n].forEach(y=>{let v=[],x=y.hFlip,b=y.vFlip,w=y.rotate;x?b?w+=2:(v.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),v.push("scale(-1 1)"),i.top=i.left=0):b&&(v.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),v.push("scale(1 -1)"),i.top=i.left=0);let _;switch(w<0&&(w-=Math.floor(w/4)*4),w=w%4,w){case 1:_=i.height/2+i.top,v.unshift("rotate(90 "+_.toString()+" "+_.toString()+")");break;case 2:v.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:_=i.width/2+i.left,v.unshift("rotate(-90 "+_.toString()+" "+_.toString()+")");break}w%2===1&&(i.left!==i.top&&(_=i.left,i.left=i.top,i.top=_),i.width!==i.height&&(_=i.width,i.width=i.height,i.height=_)),v.length&&(a=BF(a,'',""))});let s=n.width,l=n.height,u=i.width,h=i.height,f,d;s===null?(d=l===null?"1em":l==="auto"?h:l,f=AS(d,u/h)):(f=s==="auto"?u:s,d=l===null?AS(f,h/u):l==="auto"?h:l);let p={},m=o((y,v)=>{wxe(v)||(p[y]=v.toString())},"setAttr");m("width",f),m("height",d);let g=[i.left,i.top,u,h];return p.viewBox=g.join(" "),{attributes:p,viewBox:g,body:a}}var wxe,zF=M(()=>{"use strict";_b();AF();PF();FF();wxe=o(t=>t==="unset"||t==="undefined"||t==="none","isUnsetKeyword");o(_S,"iconToSVG")});function LS(t,e=kxe){let r=[],n;for(;n=Txe.exec(t);)r.push(n[1]);if(!r.length)return t;let i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return r.forEach(a=>{let s=typeof e=="function"?e(a):e+(Exe++).toString(),l=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");t=t.replace(new RegExp('([#;"])('+l+')([")]|\\.[a-z])',"g"),"$1"+s+i+"$3")}),t=t.replace(new RegExp(i,"g"),""),t}var Txe,kxe,Exe,GF=M(()=>{"use strict";Txe=/\sid="(\S+)"/g,kxe="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16),Exe=0;o(LS,"replaceIDs")});function DS(t,e){let r=t.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let n in e)r+=" "+n+'="'+e[n]+'"';return'"+t+""}var $F=M(()=>{"use strict";o(DS,"iconToHTML")});var UF=Ni((lst,VF)=>{"use strict";var J0=1e3,ep=J0*60,tp=ep*60,Ff=tp*24,Sxe=Ff*7,Cxe=Ff*365.25;VF.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return Axe(t);if(r==="number"&&isFinite(t))return e.long?Lxe(t):_xe(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function Axe(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*Cxe;case"weeks":case"week":case"w":return r*Sxe;case"days":case"day":case"d":return r*Ff;case"hours":case"hour":case"hrs":case"hr":case"h":return r*tp;case"minutes":case"minute":case"mins":case"min":case"m":return r*ep;case"seconds":case"second":case"secs":case"sec":case"s":return r*J0;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}o(Axe,"parse");function _xe(t){var e=Math.abs(t);return e>=Ff?Math.round(t/Ff)+"d":e>=tp?Math.round(t/tp)+"h":e>=ep?Math.round(t/ep)+"m":e>=J0?Math.round(t/J0)+"s":t+"ms"}o(_xe,"fmtShort");function Lxe(t){var e=Math.abs(t);return e>=Ff?Nb(t,e,Ff,"day"):e>=tp?Nb(t,e,tp,"hour"):e>=ep?Nb(t,e,ep,"minute"):e>=J0?Nb(t,e,J0,"second"):t+" ms"}o(Lxe,"fmtLong");function Nb(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}o(Nb,"plural")});var WF=Ni((ust,HF)=>{"use strict";function Dxe(t){r.debug=r,r.default=r,r.coerce=u,r.disable=a,r.enable=i,r.enabled=s,r.humanize=UF(),r.destroy=h,Object.keys(t).forEach(f=>{r[f]=t[f]}),r.names=[],r.skips=[],r.formatters={};function e(f){let d=0;for(let p=0;p{if(E==="%%")return"%";_++;let C=r.formatters[L];if(typeof C=="function"){let A=v[_];E=C.call(x,A),v.splice(_,1),_--}return E}),r.formatArgs.call(x,v),(x.log||r.log).apply(x,v)}return o(y,"debug"),y.namespace=f,y.useColors=r.useColors(),y.color=r.selectColor(f),y.extend=n,y.destroy=r.destroy,Object.defineProperty(y,"enabled",{enumerable:!0,configurable:!1,get:o(()=>p!==null?p:(m!==r.namespaces&&(m=r.namespaces,g=r.enabled(f)),g),"get"),set:o(v=>{p=v},"set")}),typeof r.init=="function"&&r.init(y),y}o(r,"createDebug");function n(f,d){let p=r(this.namespace+(typeof d>"u"?":":d)+f);return p.log=this.log,p}o(n,"extend");function i(f){r.save(f),r.namespaces=f,r.names=[],r.skips=[];let d,p=(typeof f=="string"?f:"").split(/[\s,]+/),m=p.length;for(d=0;d"-"+d)].join(",");return r.enable(""),f}o(a,"disable");function s(f){if(f[f.length-1]==="*")return!0;let d,p;for(d=0,p=r.skips.length;d{"use strict";Us.formatArgs=Rxe;Us.save=Mxe;Us.load=Ixe;Us.useColors=Nxe;Us.storage=Oxe();Us.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Us.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Nxe(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}o(Nxe,"useColors");function Rxe(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+Rb.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}o(Rxe,"formatArgs");Us.log=console.debug||console.log||(()=>{});function Mxe(t){try{t?Us.storage.setItem("debug",t):Us.storage.removeItem("debug")}catch{}}o(Mxe,"save");function Ixe(){let t;try{t=Us.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}o(Ixe,"load");function Oxe(){try{return localStorage}catch{}}o(Oxe,"localstorage");Rb.exports=WF()(Us);var{formatters:Pxe}=Rb.exports;Pxe.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var dst,qF=M(()=>{"use strict";_F();OF();zF();GF();$F();dst=ka(YF(),1)});var RS,NS,XF,Mb,Bxe,wo,Kc=M(()=>{"use strict";ht();qF();RS={body:'?',height:80,width:80},NS=new Map,XF=new Map,Mb=o(t=>{for(let e of t){if(!e.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(Y.debug("Registering icon pack:",e.name),"loader"in e)XF.set(e.name,e.loader);else if("icons"in e)NS.set(e.name,e.icons);else throw Y.error("Invalid icon loader:",e),new Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),Bxe=o(async(t,e)=>{let r=ES(t,!0,e!==void 0);if(!r)throw new Error(`Invalid icon name: ${t}`);let n=r.prefix||e;if(!n)throw new Error(`Icon name must contain a prefix: ${t}`);let i=NS.get(n);if(!i){let s=XF.get(n);if(!s)throw new Error(`Icon set not found: ${r.prefix}`);try{i={...await s(),prefix:n},NS.set(n,i)}catch(l){throw Y.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let a=CS(i,r.name);if(!a)throw new Error(`Icon not found: ${t}`);return a},"getRegisteredIconData"),wo=o(async(t,e)=>{let r;try{r=await Bxe(t,e?.fallbackPrefix)}catch(a){Y.error(a),r=RS}let n=_S(r,e);return DS(LS(n.body),n.attributes)},"getIconSVG")});function Ib(t){for(var e=[],r=1;r{"use strict";o(Ib,"dedent")});var Ob,zf,jF,Pb=M(()=>{"use strict";Ob=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,zf=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,jF=/\s*%%.*\n/gm});var rp,IS=M(()=>{"use strict";rp=class extends Error{static{o(this,"UnknownDiagramError")}constructor(e){super(e),this.name="UnknownDiagramError"}}});var Gf,np,Bb,OS,KF,$f=M(()=>{"use strict";ht();Pb();IS();Gf={},np=o(function(t,e){t=t.replace(Ob,"").replace(zf,"").replace(jF,` +`);for(let[r,{detector:n}]of Object.entries(Gf))if(n(t,e))return r;throw new rp(`No diagram type detected matching given configuration for text: ${t}`)},"detectType"),Bb=o((...t)=>{for(let{id:e,detector:r,loader:n}of t)OS(e,r,n)},"registerLazyLoadedDiagrams"),OS=o((t,e,r)=>{Gf[t]&&Y.warn(`Detector with key ${t} already exists. Overwriting.`),Gf[t]={detector:e,loader:r},Y.debug(`Detector with key ${t} added${r?" with loader":""}`)},"addDetector"),KF=o(t=>Gf[t].loader,"getDiagramLoader")});var I1,QF,PS=M(()=>{"use strict";I1=function(){var t=o(function(He,xe,X,fe){for(X=X||{},fe=He.length;fe--;X[He[fe]]=xe);return X},"o"),e=[1,24],r=[1,25],n=[1,26],i=[1,27],a=[1,28],s=[1,63],l=[1,64],u=[1,65],h=[1,66],f=[1,67],d=[1,68],p=[1,69],m=[1,29],g=[1,30],y=[1,31],v=[1,32],x=[1,33],b=[1,34],w=[1,35],_=[1,36],T=[1,37],E=[1,38],L=[1,39],C=[1,40],A=[1,41],I=[1,42],D=[1,43],k=[1,44],R=[1,45],S=[1,46],O=[1,47],N=[1,48],P=[1,50],F=[1,51],B=[1,52],$=[1,53],z=[1,54],W=[1,55],j=[1,56],K=[1,57],ie=[1,58],Q=[1,59],ee=[1,60],J=[14,42],H=[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=[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],Z=[1,82],ae=[1,83],ue=[1,84],ce=[1,85],te=[12,14,42],De=[12,14,33,42],oe=[12,14,33,42,76,77,79,80],ke=[12,33],Fe=[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],Be={trace:o(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:o(function(xe,X,fe,he,ge,ne,ye){var U=ne.length-1;switch(ge){case 3:he.setDirection("TB");break;case 4:he.setDirection("BT");break;case 5:he.setDirection("RL");break;case 6:he.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:he.setC4Type(ne[U-3]);break;case 19:he.setTitle(ne[U].substring(6)),this.$=ne[U].substring(6);break;case 20:he.setAccDescription(ne[U].substring(15)),this.$=ne[U].substring(15);break;case 21:this.$=ne[U].trim(),he.setTitle(this.$);break;case 22:case 23:this.$=ne[U].trim(),he.setAccDescription(this.$);break;case 28:ne[U].splice(2,0,"ENTERPRISE"),he.addPersonOrSystemBoundary(...ne[U]),this.$=ne[U];break;case 29:ne[U].splice(2,0,"SYSTEM"),he.addPersonOrSystemBoundary(...ne[U]),this.$=ne[U];break;case 30:he.addPersonOrSystemBoundary(...ne[U]),this.$=ne[U];break;case 31:ne[U].splice(2,0,"CONTAINER"),he.addContainerBoundary(...ne[U]),this.$=ne[U];break;case 32:he.addDeploymentNode("node",...ne[U]),this.$=ne[U];break;case 33:he.addDeploymentNode("nodeL",...ne[U]),this.$=ne[U];break;case 34:he.addDeploymentNode("nodeR",...ne[U]),this.$=ne[U];break;case 35:he.popBoundaryParseStack();break;case 39:he.addPersonOrSystem("person",...ne[U]),this.$=ne[U];break;case 40:he.addPersonOrSystem("external_person",...ne[U]),this.$=ne[U];break;case 41:he.addPersonOrSystem("system",...ne[U]),this.$=ne[U];break;case 42:he.addPersonOrSystem("system_db",...ne[U]),this.$=ne[U];break;case 43:he.addPersonOrSystem("system_queue",...ne[U]),this.$=ne[U];break;case 44:he.addPersonOrSystem("external_system",...ne[U]),this.$=ne[U];break;case 45:he.addPersonOrSystem("external_system_db",...ne[U]),this.$=ne[U];break;case 46:he.addPersonOrSystem("external_system_queue",...ne[U]),this.$=ne[U];break;case 47:he.addContainer("container",...ne[U]),this.$=ne[U];break;case 48:he.addContainer("container_db",...ne[U]),this.$=ne[U];break;case 49:he.addContainer("container_queue",...ne[U]),this.$=ne[U];break;case 50:he.addContainer("external_container",...ne[U]),this.$=ne[U];break;case 51:he.addContainer("external_container_db",...ne[U]),this.$=ne[U];break;case 52:he.addContainer("external_container_queue",...ne[U]),this.$=ne[U];break;case 53:he.addComponent("component",...ne[U]),this.$=ne[U];break;case 54:he.addComponent("component_db",...ne[U]),this.$=ne[U];break;case 55:he.addComponent("component_queue",...ne[U]),this.$=ne[U];break;case 56:he.addComponent("external_component",...ne[U]),this.$=ne[U];break;case 57:he.addComponent("external_component_db",...ne[U]),this.$=ne[U];break;case 58:he.addComponent("external_component_queue",...ne[U]),this.$=ne[U];break;case 60:he.addRel("rel",...ne[U]),this.$=ne[U];break;case 61:he.addRel("birel",...ne[U]),this.$=ne[U];break;case 62:he.addRel("rel_u",...ne[U]),this.$=ne[U];break;case 63:he.addRel("rel_d",...ne[U]),this.$=ne[U];break;case 64:he.addRel("rel_l",...ne[U]),this.$=ne[U];break;case 65:he.addRel("rel_r",...ne[U]),this.$=ne[U];break;case 66:he.addRel("rel_b",...ne[U]),this.$=ne[U];break;case 67:ne[U].splice(0,1),he.addRel("rel",...ne[U]),this.$=ne[U];break;case 68:he.updateElStyle("update_el_style",...ne[U]),this.$=ne[U];break;case 69:he.updateRelStyle("update_rel_style",...ne[U]),this.$=ne[U];break;case 70:he.updateLayoutConfig("update_layout_config",...ne[U]),this.$=ne[U];break;case 71:this.$=[ne[U]];break;case 72:ne[U].unshift(ne[U-1]),this.$=ne[U];break;case 73:case 75:this.$=ne[U].trim();break;case 74:let Te={};Te[ne[U-1].trim()]=ne[U].trim(),this.$=Te;break;case 76:this.$="";break}},"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:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:_,52:T,53:E,54:L,55:C,56:A,57:I,58:D,59:k,60:R,61:S,62:O,63:N,64:P,65:F,66:B,67:$,68:z,69:W,70:j,71:K,72:ie,73:Q,74:ee},{13:70,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:_,52:T,53:E,54:L,55:C,56:A,57:I,58:D,59:k,60:R,61:S,62:O,63:N,64:P,65:F,66:B,67:$,68:z,69:W,70:j,71:K,72:ie,73:Q,74:ee},{13:71,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:_,52:T,53:E,54:L,55:C,56:A,57:I,58:D,59:k,60:R,61:S,62:O,63:N,64:P,65:F,66:B,67:$,68:z,69:W,70:j,71:K,72:ie,73:Q,74:ee},{13:72,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:_,52:T,53:E,54:L,55:C,56:A,57:I,58:D,59:k,60:R,61:S,62:O,63:N,64:P,65:F,66:B,67:$,68:z,69:W,70:j,71:K,72:ie,73:Q,74:ee},{13:73,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:_,52:T,53:E,54:L,55:C,56:A,57:I,58:D,59:k,60:R,61:S,62:O,63:N,64:P,65:F,66:B,67:$,68:z,69:W,70:j,71:K,72:ie,73:Q,74:ee},{14:[1,74]},t(J,[2,13],{43:23,29:49,30:61,32:62,20:75,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:_,52:T,53:E,54:L,55:C,56:A,57:I,58:D,59:k,60:R,61:S,62:O,63:N,64:P,65:F,66:B,67:$,68:z,69:W,70:j,71:K,72:ie,73:Q,74:ee}),t(J,[2,14]),t(H,[2,16],{12:[1,76]}),t(J,[2,36],{12:[1,77]}),t(q,[2,19]),t(q,[2,20]),{25:[1,78]},{27:[1,79]},t(q,[2,23]),{35:80,75:81,76:Z,77:ae,79:ue,80:ce},{35:86,75:81,76:Z,77:ae,79:ue,80:ce},{35:87,75:81,76:Z,77:ae,79:ue,80:ce},{35:88,75:81,76:Z,77:ae,79:ue,80:ce},{35:89,75:81,76:Z,77:ae,79:ue,80:ce},{35:90,75:81,76:Z,77:ae,79:ue,80:ce},{35:91,75:81,76:Z,77:ae,79:ue,80:ce},{35:92,75:81,76:Z,77:ae,79:ue,80:ce},{35:93,75:81,76:Z,77:ae,79:ue,80:ce},{35:94,75:81,76:Z,77:ae,79:ue,80:ce},{35:95,75:81,76:Z,77:ae,79:ue,80:ce},{35:96,75:81,76:Z,77:ae,79:ue,80:ce},{35:97,75:81,76:Z,77:ae,79:ue,80:ce},{35:98,75:81,76:Z,77:ae,79:ue,80:ce},{35:99,75:81,76:Z,77:ae,79:ue,80:ce},{35:100,75:81,76:Z,77:ae,79:ue,80:ce},{35:101,75:81,76:Z,77:ae,79:ue,80:ce},{35:102,75:81,76:Z,77:ae,79:ue,80:ce},{35:103,75:81,76:Z,77:ae,79:ue,80:ce},{35:104,75:81,76:Z,77:ae,79:ue,80:ce},t(te,[2,59]),{35:105,75:81,76:Z,77:ae,79:ue,80:ce},{35:106,75:81,76:Z,77:ae,79:ue,80:ce},{35:107,75:81,76:Z,77:ae,79:ue,80:ce},{35:108,75:81,76:Z,77:ae,79:ue,80:ce},{35:109,75:81,76:Z,77:ae,79:ue,80:ce},{35:110,75:81,76:Z,77:ae,79:ue,80:ce},{35:111,75:81,76:Z,77:ae,79:ue,80:ce},{35:112,75:81,76:Z,77:ae,79:ue,80:ce},{35:113,75:81,76:Z,77:ae,79:ue,80:ce},{35:114,75:81,76:Z,77:ae,79:ue,80:ce},{35:115,75:81,76:Z,77:ae,79:ue,80:ce},{20:116,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:_,52:T,53:E,54:L,55:C,56:A,57:I,58:D,59:k,60:R,61:S,62:O,63:N,64:P,65:F,66:B,67:$,68:z,69:W,70:j,71:K,72:ie,73:Q,74:ee},{12:[1,118],33:[1,117]},{35:119,75:81,76:Z,77:ae,79:ue,80:ce},{35:120,75:81,76:Z,77:ae,79:ue,80:ce},{35:121,75:81,76:Z,77:ae,79:ue,80:ce},{35:122,75:81,76:Z,77:ae,79:ue,80:ce},{35:123,75:81,76:Z,77:ae,79:ue,80:ce},{35:124,75:81,76:Z,77:ae,79:ue,80:ce},{35:125,75:81,76:Z,77:ae,79:ue,80:ce},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},t(J,[2,15]),t(H,[2,17],{21:22,19:130,22:e,23:r,24:n,26:i,28:a}),t(J,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:e,23:r,24:n,26:i,28:a,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w,51:_,52:T,53:E,54:L,55:C,56:A,57:I,58:D,59:k,60:R,61:S,62:O,63:N,64:P,65:F,66:B,67:$,68:z,69:W,70:j,71:K,72:ie,73:Q,74:ee}),t(q,[2,21]),t(q,[2,22]),t(te,[2,39]),t(De,[2,71],{75:81,35:132,76:Z,77:ae,79:ue,80:ce}),t(oe,[2,73]),{78:[1,133]},t(oe,[2,75]),t(oe,[2,76]),t(te,[2,40]),t(te,[2,41]),t(te,[2,42]),t(te,[2,43]),t(te,[2,44]),t(te,[2,45]),t(te,[2,46]),t(te,[2,47]),t(te,[2,48]),t(te,[2,49]),t(te,[2,50]),t(te,[2,51]),t(te,[2,52]),t(te,[2,53]),t(te,[2,54]),t(te,[2,55]),t(te,[2,56]),t(te,[2,57]),t(te,[2,58]),t(te,[2,60]),t(te,[2,61]),t(te,[2,62]),t(te,[2,63]),t(te,[2,64]),t(te,[2,65]),t(te,[2,66]),t(te,[2,67]),t(te,[2,68]),t(te,[2,69]),t(te,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},t(ke,[2,28]),t(ke,[2,29]),t(ke,[2,30]),t(ke,[2,31]),t(ke,[2,32]),t(ke,[2,33]),t(ke,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},t(H,[2,18]),t(J,[2,38]),t(De,[2,72]),t(oe,[2,74]),t(te,[2,24]),t(te,[2,35]),t(Fe,[2,25]),t(Fe,[2,26],{12:[1,138]}),t(Fe,[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:o(function(xe,X){if(X.recoverable)this.trace(xe);else{var fe=new Error(xe);throw fe.hash=X,fe}},"parseError"),parse:o(function(xe){var X=this,fe=[0],he=[],ge=[null],ne=[],ye=this.table,U="",Te=0,se=0,Ee=0,Ae=2,Pe=1,Me=ne.slice.call(arguments,1),me=Object.create(this.lexer),We={yy:{}};for(var Re in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Re)&&(We.yy[Re]=this.yy[Re]);me.setInput(xe,We.yy),We.yy.lexer=me,We.yy.parser=this,typeof me.yylloc>"u"&&(me.yylloc={});var tt=me.yylloc;ne.push(tt);var gt=me.options&&me.options.ranges;typeof We.yy.parseError=="function"?this.parseError=We.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Et(zt){fe.length=fe.length-2*zt,ge.length=ge.length-zt,ne.length=ne.length-zt}o(Et,"popStack");function vt(){var zt;return zt=he.pop()||me.lex()||Pe,typeof zt!="number"&&(zt instanceof Array&&(he=zt,zt=he.pop()),zt=X.symbols_[zt]||zt),zt}o(vt,"lex");for(var Ye,Tt,$e,rt,ft,kt,er={},dt,Xe,ct,Lt;;){if($e=fe[fe.length-1],this.defaultActions[$e]?rt=this.defaultActions[$e]:((Ye===null||typeof Ye>"u")&&(Ye=vt()),rt=ye[$e]&&ye[$e][Ye]),typeof rt>"u"||!rt.length||!rt[0]){var Rt="";Lt=[];for(dt in ye[$e])this.terminals_[dt]&&dt>Ae&&Lt.push("'"+this.terminals_[dt]+"'");me.showPosition?Rt="Parse error on line "+(Te+1)+`: +`+me.showPosition()+` +Expecting `+Lt.join(", ")+", got '"+(this.terminals_[Ye]||Ye)+"'":Rt="Parse error on line "+(Te+1)+": Unexpected "+(Ye==Pe?"end of input":"'"+(this.terminals_[Ye]||Ye)+"'"),this.parseError(Rt,{text:me.match,token:this.terminals_[Ye]||Ye,line:me.yylineno,loc:tt,expected:Lt})}if(rt[0]instanceof Array&&rt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+$e+", token: "+Ye);switch(rt[0]){case 1:fe.push(Ye),ge.push(me.yytext),ne.push(me.yylloc),fe.push(rt[1]),Ye=null,Tt?(Ye=Tt,Tt=null):(se=me.yyleng,U=me.yytext,Te=me.yylineno,tt=me.yylloc,Ee>0&&Ee--);break;case 2:if(Xe=this.productions_[rt[1]][1],er.$=ge[ge.length-Xe],er._$={first_line:ne[ne.length-(Xe||1)].first_line,last_line:ne[ne.length-1].last_line,first_column:ne[ne.length-(Xe||1)].first_column,last_column:ne[ne.length-1].last_column},gt&&(er._$.range=[ne[ne.length-(Xe||1)].range[0],ne[ne.length-1].range[1]]),kt=this.performAction.apply(er,[U,se,Te,We.yy,rt[1],ge,ne].concat(Me)),typeof kt<"u")return kt;Xe&&(fe=fe.slice(0,-1*Xe*2),ge=ge.slice(0,-1*Xe),ne=ne.slice(0,-1*Xe)),fe.push(this.productions_[rt[1]][0]),ge.push(er.$),ne.push(er._$),ct=ye[fe[fe.length-2]][fe[fe.length-1]],fe.push(ct);break;case 3:return!0}}return!0},"parse")},Ve=function(){var He={EOF:1,parseError:o(function(X,fe){if(this.yy.parser)this.yy.parser.parseError(X,fe);else throw new Error(X)},"parseError"),setInput:o(function(xe,X){return this.yy=X||this.yy||{},this._input=xe,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:o(function(){var xe=this._input[0];this.yytext+=xe,this.yyleng++,this.offset++,this.match+=xe,this.matched+=xe;var X=xe.match(/(?:\r\n?|\n).*/g);return X?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),xe},"input"),unput:o(function(xe){var X=xe.length,fe=xe.split(/(?:\r\n?|\n)/g);this._input=xe+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-X),this.offset-=X;var he=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),fe.length-1&&(this.yylineno-=fe.length-1);var ge=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:fe?(fe.length===he.length?this.yylloc.first_column:0)+he[he.length-fe.length].length-fe[0].length:this.yylloc.first_column-X},this.options.ranges&&(this.yylloc.range=[ge[0],ge[0]+this.yyleng-X]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(xe){this.unput(this.match.slice(xe))},"less"),pastInput:o(function(){var xe=this.matched.substr(0,this.matched.length-this.match.length);return(xe.length>20?"...":"")+xe.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var xe=this.match;return xe.length<20&&(xe+=this._input.substr(0,20-xe.length)),(xe.substr(0,20)+(xe.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var xe=this.pastInput(),X=new Array(xe.length+1).join("-");return xe+this.upcomingInput()+` +`+X+"^"},"showPosition"),test_match:o(function(xe,X){var fe,he,ge;if(this.options.backtrack_lexer&&(ge={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&&(ge.yylloc.range=this.yylloc.range.slice(0))),he=xe[0].match(/(?:\r\n?|\n).*/g),he&&(this.yylineno+=he.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:he?he[he.length-1].length-he[he.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+xe[0].length},this.yytext+=xe[0],this.match+=xe[0],this.matches=xe,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(xe[0].length),this.matched+=xe[0],fe=this.performAction.call(this,this.yy,this,X,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),fe)return fe;if(this._backtrack){for(var ne in ge)this[ne]=ge[ne];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var xe,X,fe,he;this._more||(this.yytext="",this.match="");for(var ge=this._currentRules(),ne=0;neX[0].length)){if(X=fe,he=ne,this.options.backtrack_lexer){if(xe=this.test_match(fe,ge[ne]),xe!==!1)return xe;if(this._backtrack){X=!1;continue}else return!1}else if(!this.options.flex)break}return X?(xe=this.test_match(X,ge[he]),xe!==!1?xe:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var X=this.next();return X||this.lex()},"lex"),begin:o(function(X){this.conditionStack.push(X)},"begin"),popState:o(function(){var X=this.conditionStack.length-1;return X>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(X){return X=this.conditionStack.length-1-Math.abs(X||0),X>=0?this.conditionStack[X]:"INITIAL"},"topState"),pushState:o(function(X){this.begin(X)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(X,fe,he,ge){var ne=ge;switch(he){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;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),26;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;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;break;case 23:return this.begin("person"),44;break;case 24:return this.begin("system_ext_queue"),51;break;case 25:return this.begin("system_ext_db"),50;break;case 26:return this.begin("system_ext"),49;break;case 27:return this.begin("system_queue"),48;break;case 28:return this.begin("system_db"),47;break;case 29:return this.begin("system"),46;break;case 30:return this.begin("boundary"),37;break;case 31:return this.begin("enterprise_boundary"),34;break;case 32:return this.begin("system_boundary"),36;break;case 33:return this.begin("container_ext_queue"),57;break;case 34:return this.begin("container_ext_db"),56;break;case 35:return this.begin("container_ext"),55;break;case 36:return this.begin("container_queue"),54;break;case 37:return this.begin("container_db"),53;break;case 38:return this.begin("container"),52;break;case 39:return this.begin("container_boundary"),38;break;case 40:return this.begin("component_ext_queue"),63;break;case 41:return this.begin("component_ext_db"),62;break;case 42:return this.begin("component_ext"),61;break;case 43:return this.begin("component_queue"),60;break;case 44:return this.begin("component_db"),59;break;case 45:return this.begin("component"),58;break;case 46:return this.begin("node"),39;break;case 47:return this.begin("node"),39;break;case 48:return this.begin("node_l"),40;break;case 49:return this.begin("node_r"),41;break;case 50:return this.begin("rel"),64;break;case 51:return this.begin("birel"),65;break;case 52:return this.begin("rel_u"),66;break;case 53:return this.begin("rel_u"),66;break;case 54:return this.begin("rel_d"),67;break;case 55:return this.begin("rel_d"),67;break;case 56:return this.begin("rel_l"),68;break;case 57:return this.begin("rel_l"),68;break;case 58:return this.begin("rel_r"),69;break;case 59:return this.begin("rel_r"),69;break;case 60:return this.begin("rel_b"),70;break;case 61:return this.begin("rel_index"),71;break;case 62:return this.begin("update_el_style"),72;break;case 63:return this.begin("update_rel_style"),73;break;case 64:return this.begin("update_layout_config"),74;break;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";break;case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";break;case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";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}}};return He}();Be.lexer=Ve;function Ge(){this.yy={}}return o(Ge,"Parser"),Ge.prototype=Be,Be.Parser=Ge,new Ge}();I1.parser=I1;QF=I1});var BS,Gn,ip=M(()=>{"use strict";BS=o((t,e,{depth:r=2,clobber:n=!1}={})=>{let i={depth:r,clobber:n};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach(a=>BS(t,a,i)),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach(a=>{t.includes(a)||t.push(a)}),t):t===void 0||r<=0?t!=null&&typeof t=="object"&&typeof e=="object"?Object.assign(t,e):e:(e!==void 0&&typeof t=="object"&&typeof e=="object"&&Object.keys(e).forEach(a=>{typeof e[a]=="object"&&(t[a]===void 0||typeof t[a]=="object")?(t[a]===void 0&&(t[a]=Array.isArray(e[a])?[]:{}),t[a]=BS(t[a],e[a],{depth:r-1,clobber:n})):(n||typeof t[a]!="object"&&typeof e[a]!="object")&&(t[a]=e[a])}),t)},"assignWithDepth"),Gn=BS});var Fb,ZF,JF=M(()=>{"use strict";Fb={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:o(t=>t>=255?255:t<0?0:t,"r"),g:o(t=>t>=255?255:t<0?0:t,"g"),b:o(t=>t>=255?255:t<0?0:t,"b"),h:o(t=>t%360,"h"),s:o(t=>t>=100?100:t<0?0:t,"s"),l:o(t=>t>=100?100:t<0?0:t,"l"),a:o(t=>t>=1?1:t<0?0:t,"a")},toLinear:o(t=>{let e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},"toLinear"),hue2rgb:o((t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<.16666666666666666?t+(e-t)*6*r:r<.5?e:r<.6666666666666666?t+(e-t)*(.6666666666666666-r)*6:t),"hue2rgb"),hsl2rgb:o(({h:t,s:e,l:r},n)=>{if(!e)return r*2.55;t/=360,e/=100,r/=100;let i=r<.5?r*(1+e):r+e-r*e,a=2*r-i;switch(n){case"r":return Fb.hue2rgb(a,i,t+.3333333333333333)*255;case"g":return Fb.hue2rgb(a,i,t)*255;case"b":return Fb.hue2rgb(a,i,t-.3333333333333333)*255}},"hsl2rgb"),rgb2hsl:o(({r:t,g:e,b:r},n)=>{t/=255,e/=255,r/=255;let i=Math.max(t,e,r),a=Math.min(t,e,r),s=(i+a)/2;if(n==="l")return s*100;if(i===a)return 0;let l=i-a,u=s>.5?l/(2-i-a):l/(i+a);if(n==="s")return u*100;switch(i){case t:return((e-r)/l+(e{"use strict";Fxe={clamp:o((t,e,r)=>e>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),"clamp"),round:o(t=>Math.round(t*1e10)/1e10,"round")},ez=Fxe});var zxe,rz,nz=M(()=>{"use strict";zxe={dec2hex:o(t=>{let e=Math.round(t).toString(16);return e.length>1?e:`0${e}`},"dec2hex")},rz=zxe});var Gxe,Yt,jl=M(()=>{"use strict";JF();tz();nz();Gxe={channel:ZF,lang:ez,unit:rz},Yt=Gxe});var Qc,Ri,O1=M(()=>{"use strict";jl();Qc={};for(let t=0;t<=255;t++)Qc[t]=Yt.unit.dec2hex(t);Ri={ALL:0,RGB:1,HSL:2}});var FS,iz,az=M(()=>{"use strict";O1();FS=class{static{o(this,"Type")}constructor(){this.type=Ri.ALL}get(){return this.type}set(e){if(this.type&&this.type!==e)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=e}reset(){this.type=Ri.ALL}is(e){return this.type===e}},iz=FS});var zS,sz,oz=M(()=>{"use strict";jl();az();O1();zS=class{static{o(this,"Channels")}constructor(e,r){this.color=r,this.changed=!1,this.data=e,this.type=new iz}set(e,r){return this.color=r,this.changed=!1,this.data=e,this.type.type=Ri.ALL,this}_ensureHSL(){let e=this.data,{h:r,s:n,l:i}=e;r===void 0&&(e.h=Yt.channel.rgb2hsl(e,"h")),n===void 0&&(e.s=Yt.channel.rgb2hsl(e,"s")),i===void 0&&(e.l=Yt.channel.rgb2hsl(e,"l"))}_ensureRGB(){let e=this.data,{r,g:n,b:i}=e;r===void 0&&(e.r=Yt.channel.hsl2rgb(e,"r")),n===void 0&&(e.g=Yt.channel.hsl2rgb(e,"g")),i===void 0&&(e.b=Yt.channel.hsl2rgb(e,"b"))}get r(){let e=this.data,r=e.r;return!this.type.is(Ri.HSL)&&r!==void 0?r:(this._ensureHSL(),Yt.channel.hsl2rgb(e,"r"))}get g(){let e=this.data,r=e.g;return!this.type.is(Ri.HSL)&&r!==void 0?r:(this._ensureHSL(),Yt.channel.hsl2rgb(e,"g"))}get b(){let e=this.data,r=e.b;return!this.type.is(Ri.HSL)&&r!==void 0?r:(this._ensureHSL(),Yt.channel.hsl2rgb(e,"b"))}get h(){let e=this.data,r=e.h;return!this.type.is(Ri.RGB)&&r!==void 0?r:(this._ensureRGB(),Yt.channel.rgb2hsl(e,"h"))}get s(){let e=this.data,r=e.s;return!this.type.is(Ri.RGB)&&r!==void 0?r:(this._ensureRGB(),Yt.channel.rgb2hsl(e,"s"))}get l(){let e=this.data,r=e.l;return!this.type.is(Ri.RGB)&&r!==void 0?r:(this._ensureRGB(),Yt.channel.rgb2hsl(e,"l"))}get a(){return this.data.a}set r(e){this.type.set(Ri.RGB),this.changed=!0,this.data.r=e}set g(e){this.type.set(Ri.RGB),this.changed=!0,this.data.g=e}set b(e){this.type.set(Ri.RGB),this.changed=!0,this.data.b=e}set h(e){this.type.set(Ri.HSL),this.changed=!0,this.data.h=e}set s(e){this.type.set(Ri.HSL),this.changed=!0,this.data.s=e}set l(e){this.type.set(Ri.HSL),this.changed=!0,this.data.l=e}set a(e){this.changed=!0,this.data.a=e}},sz=zS});var $xe,th,P1=M(()=>{"use strict";oz();$xe=new sz({r:0,g:0,b:0,a:0},"transparent"),th=$xe});var lz,Vf,GS=M(()=>{"use strict";P1();O1();lz={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:o(t=>{if(t.charCodeAt(0)!==35)return;let e=t.match(lz.re);if(!e)return;let r=e[1],n=parseInt(r,16),i=r.length,a=i%4===0,s=i>4,l=s?1:17,u=s?8:4,h=a?0:-1,f=s?255:15;return th.set({r:(n>>u*(h+3)&f)*l,g:(n>>u*(h+2)&f)*l,b:(n>>u*(h+1)&f)*l,a:a?(n&f)*l/255:1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`#${Qc[Math.round(e)]}${Qc[Math.round(r)]}${Qc[Math.round(n)]}${Qc[Math.round(i*255)]}`:`#${Qc[Math.round(e)]}${Qc[Math.round(r)]}${Qc[Math.round(n)]}`},"stringify")},Vf=lz});var zb,B1,cz=M(()=>{"use strict";jl();P1();zb={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:o(t=>{let e=t.match(zb.hueRe);if(e){let[,r,n]=e;switch(n){case"grad":return Yt.channel.clamp.h(parseFloat(r)*.9);case"rad":return Yt.channel.clamp.h(parseFloat(r)*180/Math.PI);case"turn":return Yt.channel.clamp.h(parseFloat(r)*360)}}return Yt.channel.clamp.h(parseFloat(t))},"_hue2deg"),parse:o(t=>{let e=t.charCodeAt(0);if(e!==104&&e!==72)return;let r=t.match(zb.re);if(!r)return;let[,n,i,a,s,l]=r;return th.set({h:zb._hue2deg(n),s:Yt.channel.clamp.s(parseFloat(i)),l:Yt.channel.clamp.l(parseFloat(a)),a:s?Yt.channel.clamp.a(l?parseFloat(s)/100:parseFloat(s)):1},t)},"parse"),stringify:o(t=>{let{h:e,s:r,l:n,a:i}=t;return i<1?`hsla(${Yt.lang.round(e)}, ${Yt.lang.round(r)}%, ${Yt.lang.round(n)}%, ${i})`:`hsl(${Yt.lang.round(e)}, ${Yt.lang.round(r)}%, ${Yt.lang.round(n)}%)`},"stringify")},B1=zb});var Gb,$S,uz=M(()=>{"use strict";GS();Gb={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:o(t=>{t=t.toLowerCase();let e=Gb.colors[t];if(e)return Vf.parse(e)},"parse"),stringify:o(t=>{let e=Vf.stringify(t);for(let r in Gb.colors)if(Gb.colors[r]===e)return r},"stringify")},$S=Gb});var hz,F1,fz=M(()=>{"use strict";jl();P1();hz={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:o(t=>{let e=t.charCodeAt(0);if(e!==114&&e!==82)return;let r=t.match(hz.re);if(!r)return;let[,n,i,a,s,l,u,h,f]=r;return th.set({r:Yt.channel.clamp.r(i?parseFloat(n)*2.55:parseFloat(n)),g:Yt.channel.clamp.g(s?parseFloat(a)*2.55:parseFloat(a)),b:Yt.channel.clamp.b(u?parseFloat(l)*2.55:parseFloat(l)),a:h?Yt.channel.clamp.a(f?parseFloat(h)/100:parseFloat(h)):1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`rgba(${Yt.lang.round(e)}, ${Yt.lang.round(r)}, ${Yt.lang.round(n)}, ${Yt.lang.round(i)})`:`rgb(${Yt.lang.round(e)}, ${Yt.lang.round(r)}, ${Yt.lang.round(n)})`},"stringify")},F1=hz});var Vxe,Mi,Zc=M(()=>{"use strict";GS();cz();uz();fz();O1();Vxe={format:{keyword:$S,hex:Vf,rgb:F1,rgba:F1,hsl:B1,hsla:B1},parse:o(t=>{if(typeof t!="string")return t;let e=Vf.parse(t)||F1.parse(t)||B1.parse(t)||$S.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},"parse"),stringify:o(t=>!t.changed&&t.color?t.color:t.type.is(Ri.HSL)||t.data.r===void 0?B1.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?F1.stringify(t):Vf.stringify(t),"stringify")},Mi=Vxe});var Uxe,$b,VS=M(()=>{"use strict";jl();Zc();Uxe=o((t,e)=>{let r=Mi.parse(t);for(let n in e)r[n]=Yt.channel.clamp[n](e[n]);return Mi.stringify(r)},"change"),$b=Uxe});var Hxe,Hs,US=M(()=>{"use strict";jl();P1();Zc();VS();Hxe=o((t,e,r=0,n=1)=>{if(typeof t!="number")return $b(t,{a:e});let i=th.set({r:Yt.channel.clamp.r(t),g:Yt.channel.clamp.g(e),b:Yt.channel.clamp.b(r),a:Yt.channel.clamp.a(n)});return Mi.stringify(i)},"rgba"),Hs=Hxe});var Wxe,z1,dz=M(()=>{"use strict";jl();Zc();Wxe=o((t,e)=>Yt.lang.round(Mi.parse(t)[e]),"channel"),z1=Wxe});var Yxe,pz,mz=M(()=>{"use strict";jl();Zc();Yxe=o(t=>{let{r:e,g:r,b:n}=Mi.parse(t),i=.2126*Yt.channel.toLinear(e)+.7152*Yt.channel.toLinear(r)+.0722*Yt.channel.toLinear(n);return Yt.lang.round(i)},"luminance"),pz=Yxe});var qxe,gz,yz=M(()=>{"use strict";mz();qxe=o(t=>pz(t)>=.5,"isLight"),gz=qxe});var Xxe,aa,vz=M(()=>{"use strict";yz();Xxe=o(t=>!gz(t),"isDark"),aa=Xxe});var jxe,Vb,HS=M(()=>{"use strict";jl();Zc();jxe=o((t,e,r)=>{let n=Mi.parse(t),i=n[e],a=Yt.channel.clamp[e](i+r);return i!==a&&(n[e]=a),Mi.stringify(n)},"adjustChannel"),Vb=jxe});var Kxe,Dt,xz=M(()=>{"use strict";HS();Kxe=o((t,e)=>Vb(t,"l",e),"lighten"),Dt=Kxe});var Qxe,Bt,bz=M(()=>{"use strict";HS();Qxe=o((t,e)=>Vb(t,"l",-e),"darken"),Bt=Qxe});var Zxe,Ne,wz=M(()=>{"use strict";Zc();VS();Zxe=o((t,e)=>{let r=Mi.parse(t),n={};for(let i in e)e[i]&&(n[i]=r[i]+e[i]);return $b(t,n)},"adjust"),Ne=Zxe});var Jxe,Tz,kz=M(()=>{"use strict";Zc();US();Jxe=o((t,e,r=50)=>{let{r:n,g:i,b:a,a:s}=Mi.parse(t),{r:l,g:u,b:h,a:f}=Mi.parse(e),d=r/100,p=d*2-1,m=s-f,y=((p*m===-1?p:(p+m)/(1+p*m))+1)/2,v=1-y,x=n*y+l*v,b=i*y+u*v,w=a*y+h*v,_=s*d+f*(1-d);return Hs(x,b,w,_)},"mix"),Tz=Jxe});var ebe,pt,Ez=M(()=>{"use strict";Zc();kz();ebe=o((t,e=100)=>{let r=Mi.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,Tz(r,t,e)},"invert"),pt=ebe});var Sz=M(()=>{"use strict";US();dz();vz();xz();bz();wz();Ez()});var To=M(()=>{"use strict";Sz()});var rh,nh,G1=M(()=>{"use strict";rh="#ffffff",nh="#f2f2f2"});var wi,ap=M(()=>{"use strict";To();wi=o((t,e)=>e?Ne(t,{s:-40,l:10}):Ne(t,{s:-40,l:-10}),"mkBorder")});var WS,Az,_z=M(()=>{"use strict";To();G1();ap();WS=class{static{o(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||Ne(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Ne(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||wi(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||wi(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||wi(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||pt(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||pt(this.tertiaryColor),this.lineColor=this.lineColor||pt(this.background),this.arrowheadColor=this.arrowheadColor||pt(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?Bt(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||Bt(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||pt(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||Dt(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||Ne(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Ne(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Ne(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Ne(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Ne(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Ne(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||Ne(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Ne(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Ne(this.primaryColor,{h:330}),this.darkMode)for(let r=0;r{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},Az=o(t=>{let e=new WS;return e.calculate(t),e},"getThemeVariables")});var YS,Lz,Dz=M(()=>{"use strict";To();ap();YS=class{static{o(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Dt(this.primaryColor,16),this.tertiaryColor=Ne(this.primaryColor,{h:-160}),this.primaryBorderColor=pt(this.background),this.secondaryBorderColor=wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=wi(this.tertiaryColor,this.darkMode),this.primaryTextColor=pt(this.primaryColor),this.secondaryTextColor=pt(this.secondaryColor),this.tertiaryTextColor=pt(this.tertiaryColor),this.lineColor=pt(this.background),this.textColor=pt(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Dt(pt("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=Hs(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=Bt("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=Bt(this.sectionBkgColor,10),this.taskBorderColor=Hs(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=Hs(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=Dt(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=Dt(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=Dt(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=Ne(this.primaryColor,{h:64}),this.fillType3=Ne(this.secondaryColor,{h:64}),this.fillType4=Ne(this.primaryColor,{h:-64}),this.fillType5=Ne(this.secondaryColor,{h:-64}),this.fillType6=Ne(this.primaryColor,{h:128}),this.fillType7=Ne(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||Ne(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Ne(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Ne(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Ne(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Ne(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Ne(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Ne(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Ne(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Ne(this.primaryColor,{h:330});for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},Lz=o(t=>{let e=new YS;return e.calculate(t),e},"getThemeVariables")});var qS,sp,Ub=M(()=>{"use strict";To();ap();G1();qS=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=Ne(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=Ne(this.primaryColor,{h:-160}),this.primaryBorderColor=wi(this.primaryColor,this.darkMode),this.secondaryBorderColor=wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=wi(this.tertiaryColor,this.darkMode),this.primaryTextColor=pt(this.primaryColor),this.secondaryTextColor=pt(this.secondaryColor),this.tertiaryTextColor=pt(this.tertiaryColor),this.lineColor=pt(this.background),this.textColor=pt(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=Hs(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||Ne(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Ne(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Ne(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Ne(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Ne(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Ne(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Ne(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Ne(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Ne(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Bt(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Bt(this.tertiaryColor,40);for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},sp=o(t=>{let e=new qS;return e.calculate(t),e},"getThemeVariables")});var XS,Nz,Rz=M(()=>{"use strict";To();G1();ap();XS=class{static{o(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=Dt("#cde498",10),this.primaryBorderColor=wi(this.primaryColor,this.darkMode),this.secondaryBorderColor=wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=wi(this.tertiaryColor,this.darkMode),this.primaryTextColor=pt(this.primaryColor),this.secondaryTextColor=pt(this.secondaryColor),this.tertiaryTextColor=pt(this.primaryColor),this.lineColor=pt(this.background),this.textColor=pt(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=Bt(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||Ne(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Ne(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Ne(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Ne(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Ne(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Ne(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Ne(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Ne(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Ne(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Bt(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Bt(this.tertiaryColor,40);for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},Nz=o(t=>{let e=new XS;return e.calculate(t),e},"getThemeVariables")});var jS,Mz,Iz=M(()=>{"use strict";To();ap();G1();jS=class{static{o(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Dt(this.contrast,55),this.background="#ffffff",this.tertiaryColor=Ne(this.primaryColor,{h:-160}),this.primaryBorderColor=wi(this.primaryColor,this.darkMode),this.secondaryBorderColor=wi(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=wi(this.tertiaryColor,this.darkMode),this.primaryTextColor=pt(this.primaryColor),this.secondaryTextColor=pt(this.secondaryColor),this.tertiaryTextColor=pt(this.tertiaryColor),this.lineColor=pt(this.background),this.textColor=pt(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=Dt(this.contrast,55),this.border2=this.contrast,this.actorBorder=Dt(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 e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},Mz=o(t=>{let e=new jS;return e.calculate(t),e},"getThemeVariables")});var ko,Hb=M(()=>{"use strict";_z();Dz();Ub();Rz();Iz();ko={base:{getThemeVariables:Az},dark:{getThemeVariables:Lz},default:{getThemeVariables:sp},forest:{getThemeVariables:Nz},neutral:{getThemeVariables:Mz}}});var Jc,Oz=M(()=>{"use strict";Jc={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,hideEmptyMembersBox:!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},kanban:{useMaxWidth:!0,padding:8,sectionWidth:200,ticketBaseUrl:""},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}});var Pz,Bz,Fz,ur,hs=M(()=>{"use strict";Hb();Oz();Pz={...Jc,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF"},themeCSS:void 0,themeVariables:ko.default.getThemeVariables(),sequence:{...Jc.sequence,messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:o(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:o(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")},class:{hideEmptyMembersBox:!1},gantt:{...Jc.gantt,tickInterval:void 0,useWidth:void 0},c4:{...Jc.c4,useWidth:void 0,personFont:o(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),external_personFont:o(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:o(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:o(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:o(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:o(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:o(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:o(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:o(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:o(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:o(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:o(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:o(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:o(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:o(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:o(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:o(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:o(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:o(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:o(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:o(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")},pie:{...Jc.pie,useWidth:984},xyChart:{...Jc.xyChart,useWidth:void 0},requirement:{...Jc.requirement,useWidth:void 0},packet:{...Jc.packet}},Bz=o((t,e="")=>Object.keys(t).reduce((r,n)=>Array.isArray(t[n])?r:typeof t[n]=="object"&&t[n]!==null?[...r,e+n,...Bz(t[n],"")]:[...r,e+n],[]),"keyify"),Fz=new Set(Bz(Pz,"")),ur=Pz});var op,tbe,KS=M(()=>{"use strict";hs();ht();op=o(t=>{if(Y.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(e=>op(e));return}for(let e of Object.keys(t)){if(Y.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!Fz.has(e)||t[e]==null){Y.debug("sanitize deleting key: ",e),delete t[e];continue}if(typeof t[e]=="object"){Y.debug("sanitizing object",e),op(t[e]);continue}let r=["themeCSS","fontFamily","altFontFamily"];for(let n of r)e.includes(n)&&(Y.debug("sanitizing css option",e),t[e]=tbe(t[e]))}if(t.themeVariables)for(let e of Object.keys(t.themeVariables)){let r=t.themeVariables[e];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}Y.debug("After sanitization",t)}},"sanitizeDirective"),tbe=o(t=>{let e=0,r=0;for(let n of t){if(e{"use strict";ip();ht();Hb();hs();KS();ih=Object.freeze(ur),fs=Gn({},ih),lp=[],$1=Gn({},ih),Wb=o((t,e)=>{let r=Gn({},t),n={};for(let i of e)Uz(i),n=Gn(n,i);if(r=Gn(r,n),n.theme&&n.theme in ko){let i=Gn({},Gz),a=Gn(i.themeVariables||{},n.themeVariables);r.theme&&r.theme in ko&&(r.themeVariables=ko[r.theme].getThemeVariables(a))}return $1=r,Wz($1),$1},"updateCurrentConfig"),QS=o(t=>(fs=Gn({},ih),fs=Gn(fs,t),t.theme&&ko[t.theme]&&(fs.themeVariables=ko[t.theme].getThemeVariables(t.themeVariables)),Wb(fs,lp),fs),"setSiteConfig"),$z=o(t=>{Gz=Gn({},t)},"saveConfigFromInitialize"),Vz=o(t=>(fs=Gn(fs,t),Wb(fs,lp),fs),"updateSiteConfig"),ZS=o(()=>Gn({},fs),"getSiteConfig"),Yb=o(t=>(Wz(t),Gn($1,t),Sr()),"setConfig"),Sr=o(()=>Gn({},$1),"getConfig"),Uz=o(t=>{t&&(["secure",...fs.secure??[]].forEach(e=>{Object.hasOwn(t,e)&&(Y.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=>{typeof t[e]=="string"&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],typeof t[e]=="object"&&Uz(t[e])}))},"sanitize"),Hz=o(t=>{op(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables={...t.themeVariables,fontFamily:t.fontFamily}),lp.push(t),Wb(fs,lp)},"addDirective"),V1=o((t=fs)=>{lp=[],Wb(t,lp)},"reset"),rbe={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},zz={},nbe=o(t=>{zz[t]||(Y.warn(rbe[t]),zz[t]=!0)},"issueWarning"),Wz=o(t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&nbe("LAZY_LOAD_DEPRECATED")},"checkConfig")});function Ws(t){return function(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i2&&arguments[2]!==void 0?arguments[2]:jb;Yz&&Yz(t,null);let n=e.length;for(;n--;){let i=e[n];if(typeof i=="string"){let a=r(i);a!==i&&(ibe(e)||(e[n]=a),i=a)}t[i]=!0}return t}function ube(t){for(let e=0;e0&&arguments[0]!==void 0?arguments[0]:wbe(),e=o(yt=>iG(yt),"DOMPurify");if(e.version="3.2.1",e.removed=[],!t||!t.document||t.document.nodeType!==q1.document)return e.isSupported=!1,e;let{document:r}=t,n=r,i=n.currentScript,{DocumentFragment:a,HTMLTemplateElement:s,Node:l,Element:u,NodeFilter:h,NamedNodeMap:f=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:d,DOMParser:p,trustedTypes:m}=t,g=u.prototype,y=Y1(g,"cloneNode"),v=Y1(g,"remove"),x=Y1(g,"nextSibling"),b=Y1(g,"childNodes"),w=Y1(g,"parentNode");if(typeof s=="function"){let yt=r.createElement("template");yt.content&&yt.content.ownerDocument&&(r=yt.content.ownerDocument)}let _,T="",{implementation:E,createNodeIterator:L,createDocumentFragment:C,getElementsByTagName:A}=r,{importNode:I}=n,D={};e.isSupported=typeof eG=="function"&&typeof w=="function"&&E&&E.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:k,ERB_EXPR:R,TMPLIT_EXPR:S,DATA_ATTR:O,ARIA_ATTR:N,IS_SCRIPT_OR_DATA:P,ATTR_WHITESPACE:F,CUSTOM_ELEMENT:B}=Jz,{IS_ALLOWED_URI:$}=Jz,z=null,W=Ar({},[...jz,...eC,...tC,...rC,...Kz]),j=null,K=Ar({},[...Qz,...nC,...Zz,...Xb]),ie=Object.seal(tG(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}})),Q=null,ee=null,J=!0,H=!0,q=!1,Z=!0,ae=!1,ue=!0,ce=!1,te=!1,De=!1,oe=!1,ke=!1,Fe=!1,Be=!0,Ve=!1,Ge="user-content-",He=!0,xe=!1,X={},fe=null,he=Ar({},["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"]),ge=null,ne=Ar({},["audio","video","img","source","image","track"]),ye=null,U=Ar({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Te="http://www.w3.org/1998/Math/MathML",se="http://www.w3.org/2000/svg",Ee="http://www.w3.org/1999/xhtml",Ae=Ee,Pe=!1,Me=null,me=Ar({},[Te,se,Ee],JS),We=Ar({},["mi","mo","mn","ms","mtext"]),Re=Ar({},["annotation-xml"]),tt=Ar({},["title","style","font","a","script"]),gt=null,Et=["application/xhtml+xml","text/html"],vt="text/html",Ye=null,Tt=null,$e=r.createElement("form"),rt=o(function(Se){return Se instanceof RegExp||Se instanceof Function},"isRegexOrFunction"),ft=o(function(){let Se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Tt&&Tt===Se)){if((!Se||typeof Se!="object")&&(Se={}),Se=Uf(Se),gt=Et.indexOf(Se.PARSER_MEDIA_TYPE)===-1?vt:Se.PARSER_MEDIA_TYPE,Ye=gt==="application/xhtml+xml"?JS:jb,z=ul(Se,"ALLOWED_TAGS")?Ar({},Se.ALLOWED_TAGS,Ye):W,j=ul(Se,"ALLOWED_ATTR")?Ar({},Se.ALLOWED_ATTR,Ye):K,Me=ul(Se,"ALLOWED_NAMESPACES")?Ar({},Se.ALLOWED_NAMESPACES,JS):me,ye=ul(Se,"ADD_URI_SAFE_ATTR")?Ar(Uf(U),Se.ADD_URI_SAFE_ATTR,Ye):U,ge=ul(Se,"ADD_DATA_URI_TAGS")?Ar(Uf(ne),Se.ADD_DATA_URI_TAGS,Ye):ne,fe=ul(Se,"FORBID_CONTENTS")?Ar({},Se.FORBID_CONTENTS,Ye):he,Q=ul(Se,"FORBID_TAGS")?Ar({},Se.FORBID_TAGS,Ye):{},ee=ul(Se,"FORBID_ATTR")?Ar({},Se.FORBID_ATTR,Ye):{},X=ul(Se,"USE_PROFILES")?Se.USE_PROFILES:!1,J=Se.ALLOW_ARIA_ATTR!==!1,H=Se.ALLOW_DATA_ATTR!==!1,q=Se.ALLOW_UNKNOWN_PROTOCOLS||!1,Z=Se.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ae=Se.SAFE_FOR_TEMPLATES||!1,ue=Se.SAFE_FOR_XML!==!1,ce=Se.WHOLE_DOCUMENT||!1,oe=Se.RETURN_DOM||!1,ke=Se.RETURN_DOM_FRAGMENT||!1,Fe=Se.RETURN_TRUSTED_TYPE||!1,De=Se.FORCE_BODY||!1,Be=Se.SANITIZE_DOM!==!1,Ve=Se.SANITIZE_NAMED_PROPS||!1,He=Se.KEEP_CONTENT!==!1,xe=Se.IN_PLACE||!1,$=Se.ALLOWED_URI_REGEXP||rG,Ae=Se.NAMESPACE||Ee,We=Se.MATHML_TEXT_INTEGRATION_POINTS||We,Re=Se.HTML_INTEGRATION_POINTS||Re,ie=Se.CUSTOM_ELEMENT_HANDLING||{},Se.CUSTOM_ELEMENT_HANDLING&&rt(Se.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(ie.tagNameCheck=Se.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Se.CUSTOM_ELEMENT_HANDLING&&rt(Se.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(ie.attributeNameCheck=Se.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Se.CUSTOM_ELEMENT_HANDLING&&typeof Se.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(ie.allowCustomizedBuiltInElements=Se.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),ae&&(H=!1),ke&&(oe=!0),X&&(z=Ar({},Kz),j=[],X.html===!0&&(Ar(z,jz),Ar(j,Qz)),X.svg===!0&&(Ar(z,eC),Ar(j,nC),Ar(j,Xb)),X.svgFilters===!0&&(Ar(z,tC),Ar(j,nC),Ar(j,Xb)),X.mathMl===!0&&(Ar(z,rC),Ar(j,Zz),Ar(j,Xb))),Se.ADD_TAGS&&(z===W&&(z=Uf(z)),Ar(z,Se.ADD_TAGS,Ye)),Se.ADD_ATTR&&(j===K&&(j=Uf(j)),Ar(j,Se.ADD_ATTR,Ye)),Se.ADD_URI_SAFE_ATTR&&Ar(ye,Se.ADD_URI_SAFE_ATTR,Ye),Se.FORBID_CONTENTS&&(fe===he&&(fe=Uf(fe)),Ar(fe,Se.FORBID_CONTENTS,Ye)),He&&(z["#text"]=!0),ce&&Ar(z,["html","head","body"]),z.table&&(Ar(z,["tbody"]),delete Q.tbody),Se.TRUSTED_TYPES_POLICY){if(typeof Se.TRUSTED_TYPES_POLICY.createHTML!="function")throw W1('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Se.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw W1('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');_=Se.TRUSTED_TYPES_POLICY,T=_.createHTML("")}else _===void 0&&(_=Tbe(m,i)),_!==null&&typeof T=="string"&&(T=_.createHTML(""));Wa&&Wa(Se),Tt=Se}},"_parseConfig"),kt=Ar({},[...eC,...tC,...hbe]),er=Ar({},[...rC,...fbe]),dt=o(function(Se){let at=w(Se);(!at||!at.tagName)&&(at={namespaceURI:Ae,tagName:"template"});let At=jb(Se.tagName),pr=jb(at.tagName);return Me[Se.namespaceURI]?Se.namespaceURI===se?at.namespaceURI===Ee?At==="svg":at.namespaceURI===Te?At==="svg"&&(pr==="annotation-xml"||We[pr]):!!kt[At]:Se.namespaceURI===Te?at.namespaceURI===Ee?At==="math":at.namespaceURI===se?At==="math"&&Re[pr]:!!er[At]:Se.namespaceURI===Ee?at.namespaceURI===se&&!Re[pr]||at.namespaceURI===Te&&!We[pr]?!1:!er[At]&&(tt[At]||!kt[At]):!!(gt==="application/xhtml+xml"&&Me[Se.namespaceURI]):!1},"_checkValidNamespace"),Xe=o(function(Se){U1(e.removed,{element:Se});try{w(Se).removeChild(Se)}catch{v(Se)}},"_forceRemove"),ct=o(function(Se,at){try{U1(e.removed,{attribute:at.getAttributeNode(Se),from:at})}catch{U1(e.removed,{attribute:null,from:at})}if(at.removeAttribute(Se),Se==="is"&&!j[Se])if(oe||ke)try{Xe(at)}catch{}else try{at.setAttribute(Se,"")}catch{}},"_removeAttribute"),Lt=o(function(Se){let at=null,At=null;if(De)Se=""+Se;else{let On=Xz(Se,/^[\r\n\t ]+/);At=On&&On[0]}gt==="application/xhtml+xml"&&Ae===Ee&&(Se=''+Se+"");let pr=_?_.createHTML(Se):Se;if(Ae===Ee)try{at=new p().parseFromString(pr,gt)}catch{}if(!at||!at.documentElement){at=E.createDocument(Ae,"template",null);try{at.documentElement.innerHTML=Pe?T:pr}catch{}}let In=at.body||at.documentElement;return Se&&At&&In.insertBefore(r.createTextNode(At),In.childNodes[0]||null),Ae===Ee?A.call(at,ce?"html":"body")[0]:ce?at.documentElement:In},"_initDocument"),Rt=o(function(Se){return L.call(Se.ownerDocument||Se,Se,h.SHOW_ELEMENT|h.SHOW_COMMENT|h.SHOW_TEXT|h.SHOW_PROCESSING_INSTRUCTION|h.SHOW_CDATA_SECTION,null)},"_createNodeIterator"),zt=o(function(Se){return Se instanceof d&&(typeof Se.nodeName!="string"||typeof Se.textContent!="string"||typeof Se.removeChild!="function"||!(Se.attributes instanceof f)||typeof Se.removeAttribute!="function"||typeof Se.setAttribute!="function"||typeof Se.namespaceURI!="string"||typeof Se.insertBefore!="function"||typeof Se.hasChildNodes!="function")},"_isClobbered"),Xn=o(function(Se){return typeof l=="function"&&Se instanceof l},"_isNode");function or(yt,Se,at){D[yt]&&qb(D[yt],At=>{At.call(e,Se,at,Tt)})}o(or,"_executeHook");let hn=o(function(Se){let at=null;if(or("beforeSanitizeElements",Se,null),zt(Se))return Xe(Se),!0;let At=Ye(Se.nodeName);if(or("uponSanitizeElement",Se,{tagName:At,allowedTags:z}),Se.hasChildNodes()&&!Xn(Se.firstElementChild)&&Ha(/<[/\w]/g,Se.innerHTML)&&Ha(/<[/\w]/g,Se.textContent)||Se.nodeType===q1.progressingInstruction||ue&&Se.nodeType===q1.comment&&Ha(/<[/\w]/g,Se.data))return Xe(Se),!0;if(!z[At]||Q[At]){if(!Q[At]&&Ur(At)&&(ie.tagNameCheck instanceof RegExp&&Ha(ie.tagNameCheck,At)||ie.tagNameCheck instanceof Function&&ie.tagNameCheck(At)))return!1;if(He&&!fe[At]){let pr=w(Se)||Se.parentNode,In=b(Se)||Se.childNodes;if(In&&pr){let On=In.length;for(let Ir=On-1;Ir>=0;--Ir){let kn=y(In[Ir],!0);kn.__removalCount=(Se.__removalCount||0)+1,pr.insertBefore(kn,x(Se))}}}return Xe(Se),!0}return Se instanceof u&&!dt(Se)||(At==="noscript"||At==="noembed"||At==="noframes")&&Ha(/<\/no(script|embed|frames)/i,Se.innerHTML)?(Xe(Se),!0):(ae&&Se.nodeType===q1.text&&(at=Se.textContent,qb([k,R,S],pr=>{at=H1(at,pr," ")}),Se.textContent!==at&&(U1(e.removed,{element:Se.cloneNode()}),Se.textContent=at)),or("afterSanitizeElements",Se,null),!1)},"_sanitizeElements"),Tn=o(function(Se,at,At){if(Be&&(at==="id"||at==="name")&&(At in r||At in $e))return!1;if(!(H&&!ee[at]&&Ha(O,at))){if(!(J&&Ha(N,at))){if(!j[at]||ee[at]){if(!(Ur(Se)&&(ie.tagNameCheck instanceof RegExp&&Ha(ie.tagNameCheck,Se)||ie.tagNameCheck instanceof Function&&ie.tagNameCheck(Se))&&(ie.attributeNameCheck instanceof RegExp&&Ha(ie.attributeNameCheck,at)||ie.attributeNameCheck instanceof Function&&ie.attributeNameCheck(at))||at==="is"&&ie.allowCustomizedBuiltInElements&&(ie.tagNameCheck instanceof RegExp&&Ha(ie.tagNameCheck,At)||ie.tagNameCheck instanceof Function&&ie.tagNameCheck(At))))return!1}else if(!ye[at]){if(!Ha($,H1(At,F,""))){if(!((at==="src"||at==="xlink:href"||at==="href")&&Se!=="script"&&obe(At,"data:")===0&&ge[Se])){if(!(q&&!Ha(P,H1(At,F,"")))){if(At)return!1}}}}}}return!0},"_isValidAttribute"),Ur=o(function(Se){return Se!=="annotation-xml"&&Xz(Se,B)},"_isBasicCustomElement"),ri=o(function(Se){or("beforeSanitizeAttributes",Se,null);let{attributes:at}=Se;if(!at)return;let At={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:j,forceKeepAttr:void 0},pr=at.length;for(;pr--;){let In=at[pr],{name:On,namespaceURI:Ir,value:kn}=In,_t=Ye(On),St=On==="value"?kn:lbe(kn);if(At.attrName=_t,At.attrValue=St,At.keepAttr=!0,At.forceKeepAttr=void 0,or("uponSanitizeAttribute",Se,At),St=At.attrValue,Ve&&(_t==="id"||_t==="name")&&(ct(On,Se),St=Ge+St),ue&&Ha(/((--!?|])>)|<\/(style|title)/i,St)){ct(On,Se);continue}if(At.forceKeepAttr||(ct(On,Se),!At.keepAttr))continue;if(!Z&&Ha(/\/>/i,St)){ct(On,Se);continue}ae&&qb([k,R,S],Ue=>{St=H1(St,Ue," ")});let bt=Ye(Se.nodeName);if(Tn(bt,_t,St)){if(_&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!Ir)switch(m.getAttributeType(bt,_t)){case"TrustedHTML":{St=_.createHTML(St);break}case"TrustedScriptURL":{St=_.createScriptURL(St);break}}try{Ir?Se.setAttributeNS(Ir,On,St):Se.setAttribute(On,St),zt(Se)?Xe(Se):qz(e.removed)}catch{}}}or("afterSanitizeAttributes",Se,null)},"_sanitizeAttributes"),Mn=o(function yt(Se){let at=null,At=Rt(Se);for(or("beforeSanitizeShadowDOM",Se,null);at=At.nextNode();)or("uponSanitizeShadowNode",at,null),!hn(at)&&(at.content instanceof a&&yt(at.content),ri(at));or("afterSanitizeShadowDOM",Se,null)},"_sanitizeShadowDOM");return e.sanitize=function(yt){let Se=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},at=null,At=null,pr=null,In=null;if(Pe=!yt,Pe&&(yt=""),typeof yt!="string"&&!Xn(yt))if(typeof yt.toString=="function"){if(yt=yt.toString(),typeof yt!="string")throw W1("dirty is not a string, aborting")}else throw W1("toString is not a function");if(!e.isSupported)return yt;if(te||ft(Se),e.removed=[],typeof yt=="string"&&(xe=!1),xe){if(yt.nodeName){let kn=Ye(yt.nodeName);if(!z[kn]||Q[kn])throw W1("root node is forbidden and cannot be sanitized in-place")}}else if(yt instanceof l)at=Lt(""),At=at.ownerDocument.importNode(yt,!0),At.nodeType===q1.element&&At.nodeName==="BODY"||At.nodeName==="HTML"?at=At:at.appendChild(At);else{if(!oe&&!ae&&!ce&&yt.indexOf("<")===-1)return _&&Fe?_.createHTML(yt):yt;if(at=Lt(yt),!at)return oe?null:Fe?T:""}at&&De&&Xe(at.firstChild);let On=Rt(xe?yt:at);for(;pr=On.nextNode();)hn(pr)||(pr.content instanceof a&&Mn(pr.content),ri(pr));if(xe)return yt;if(oe){if(ke)for(In=C.call(at.ownerDocument);at.firstChild;)In.appendChild(at.firstChild);else In=at;return(j.shadowroot||j.shadowrootmode)&&(In=I.call(n,In,!0)),In}let Ir=ce?at.outerHTML:at.innerHTML;return ce&&z["!doctype"]&&at.ownerDocument&&at.ownerDocument.doctype&&at.ownerDocument.doctype.name&&Ha(nG,at.ownerDocument.doctype.name)&&(Ir=" +`+Ir),ae&&qb([k,R,S],kn=>{Ir=H1(Ir,kn," ")}),_&&Fe?_.createHTML(Ir):Ir},e.setConfig=function(){let yt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};ft(yt),te=!0},e.clearConfig=function(){Tt=null,te=!1},e.isValidAttribute=function(yt,Se,at){Tt||ft({});let At=Ye(yt),pr=Ye(Se);return Tn(At,pr,at)},e.addHook=function(yt,Se){typeof Se=="function"&&(D[yt]=D[yt]||[],U1(D[yt],Se))},e.removeHook=function(yt){if(D[yt])return qz(D[yt])},e.removeHooks=function(yt){D[yt]&&(D[yt]=[])},e.removeAllHooks=function(){D={}},e}var eG,Yz,ibe,abe,sbe,Wa,Eo,tG,iC,aC,qb,qz,U1,jb,JS,Xz,H1,obe,lbe,ul,Ha,W1,jz,eC,tC,hbe,rC,fbe,Kz,Qz,nC,Zz,Xb,dbe,pbe,mbe,gbe,ybe,rG,vbe,xbe,nG,bbe,Jz,q1,wbe,Tbe,ah,sC=M(()=>{"use strict";({entries:eG,setPrototypeOf:Yz,isFrozen:ibe,getPrototypeOf:abe,getOwnPropertyDescriptor:sbe}=Object),{freeze:Wa,seal:Eo,create:tG}=Object,{apply:iC,construct:aC}=typeof Reflect<"u"&&Reflect;Wa||(Wa=o(function(e){return e},"freeze"));Eo||(Eo=o(function(e){return e},"seal"));iC||(iC=o(function(e,r,n){return e.apply(r,n)},"apply"));aC||(aC=o(function(e,r){return new e(...r)},"construct"));qb=Ws(Array.prototype.forEach),qz=Ws(Array.prototype.pop),U1=Ws(Array.prototype.push),jb=Ws(String.prototype.toLowerCase),JS=Ws(String.prototype.toString),Xz=Ws(String.prototype.match),H1=Ws(String.prototype.replace),obe=Ws(String.prototype.indexOf),lbe=Ws(String.prototype.trim),ul=Ws(Object.prototype.hasOwnProperty),Ha=Ws(RegExp.prototype.test),W1=cbe(TypeError);o(Ws,"unapply");o(cbe,"unconstruct");o(Ar,"addToSet");o(ube,"cleanArray");o(Uf,"clone");o(Y1,"lookupGetter");jz=Wa(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),eC=Wa(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),tC=Wa(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),hbe=Wa(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),rC=Wa(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),fbe=Wa(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Kz=Wa(["#text"]),Qz=Wa(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),nC=Wa(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Zz=Wa(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Xb=Wa(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),dbe=Eo(/\{\{[\w\W]*|[\w\W]*\}\}/gm),pbe=Eo(/<%[\w\W]*|[\w\W]*%>/gm),mbe=Eo(/\${[\w\W]*}/gm),gbe=Eo(/^data-[\-\w.\u00B7-\uFFFF]/),ybe=Eo(/^aria-[\-\w]+$/),rG=Eo(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),vbe=Eo(/^(?:\w+script|data):/i),xbe=Eo(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),nG=Eo(/^html$/i),bbe=Eo(/^[a-z][.\w]*(-[.\w]+)+$/i),Jz=Object.freeze({__proto__:null,ARIA_ATTR:ybe,ATTR_WHITESPACE:xbe,CUSTOM_ELEMENT:bbe,DATA_ATTR:gbe,DOCTYPE_NAME:nG,ERB_EXPR:pbe,IS_ALLOWED_URI:rG,IS_SCRIPT_OR_DATA:vbe,MUSTACHE_EXPR:dbe,TMPLIT_EXPR:mbe}),q1={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},wbe=o(function(){return typeof window>"u"?null:window},"getGlobal"),Tbe=o(function(e,r){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,i="data-tt-policy-suffix";r&&r.hasAttribute(i)&&(n=r.getAttribute(i));let a="dompurify"+(n?"#"+n:"");try{return e.createPolicy(a,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+a+" could not be created."),null}},"_createTrustedTypesPolicy");o(iG,"createDOMPurify");ah=iG()});var N$={};vr(N$,{default:()=>g3e});function Lbe(t){return String(t).replace(_be,e=>Abe[e])}function Mbe(t){if(t.default)return t.default;var e=t.type,r=Array.isArray(e)?e[0]:e;if(typeof r!="string")return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}function Gbe(t){for(var e=0;e=i[0]&&t<=i[1])return r.name}return null}function BG(t){for(var e=0;e=l4[e]&&t<=l4[e+1])return!0;return!1}function Qbe(t,e){Zl[t]=e}function RC(t,e,r){if(!Zl[e])throw new Error("Font metrics not found for font: "+e+".");var n=t.charCodeAt(0),i=Zl[e][n];if(!i&&t[0]in sG&&(n=sG[t[0]].charCodeAt(0),i=Zl[e][n]),!i&&r==="text"&&BG(n)&&(i=Zl[e][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function Zbe(t){var e;if(t>=5?e=0:t>=3?e=1:e=2,!oC[e]){var r=oC[e]={cssEmPerMu:Kb.quad[e]/18};for(var n in Kb)Kb.hasOwnProperty(n)&&(r[n]=Kb[n][e])}return oC[e]}function cG(t){if(t instanceof ms)return t;throw new Error("Expected symbolNode but got "+String(t)+".")}function r4e(t){if(t instanceof qf)return t;throw new Error("Expected span but got "+String(t)+".")}function G(t,e,r,n,i,a){En[t][i]={font:e,group:r,replace:n},a&&n&&(En[t][n]=En[t][i])}function Ct(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs,argTypes:n.argTypes,allowedInArgument:!!n.allowedInArgument,allowedInText:!!n.allowedInText,allowedInMath:n.allowedInMath===void 0?!0:n.allowedInMath,numOptionalArgs:n.numOptionalArgs||0,infix:!!n.infix,primitive:!!n.primitive,handler:i},u=0;u0&&(a.push(n4(s,e)),s=[]),a.push(n[l]));s.length>0&&a.push(n4(s,e));var h;r?(h=n4(Ii(r,e,!0)),h.classes=["tag"],a.push(h)):i&&a.push(i);var f=iu(["katex-html"],a);if(f.setAttribute("aria-hidden","true"),h){var d=h.children[0];d.style.height=mt(f.height+f.depth),f.depth&&(d.style.verticalAlign=mt(-f.depth))}return f}function jG(t){return new Yf(t)}function pG(t,e,r,n,i){var a=gs(t,r),s;a.length===1&&a[0]instanceof ps&&Jt.contains(["mrow","mtable"],a[0].type)?s=a[0]:s=new st.MathNode("mrow",a);var l=new st.MathNode("annotation",[new st.TextNode(e)]);l.setAttribute("encoding","application/x-tex");var u=new st.MathNode("semantics",[s,l]),h=new st.MathNode("math",[u]);h.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&h.setAttribute("display","block");var f=i?"katex":"katex-mathml";return Ie.makeSpan([f],[h])}function yr(t,e){if(!t||t.type!==e)throw new Error("Expected node of type "+e+", but got "+(t?"node of type "+t.type:String(t)));return t}function PC(t){var e=x4(t);if(!e)throw new Error("Expected node of symbol group type, but got "+(t?"node of type "+t.type:String(t)));return e}function x4(t){return t&&(t.type==="atom"||i4e.hasOwnProperty(t.type))?t:null}function JG(t,e){var r=Ii(t.body,e,!0);return I4e([t.mclass],r,e)}function e$(t,e){var r,n=gs(t.body,e);return t.mclass==="minner"?r=new st.MathNode("mpadded",n):t.mclass==="mord"?t.isCharacterBox?(r=n[0],r.type="mi"):r=new st.MathNode("mi",n):(t.isCharacterBox?(r=n[0],r.type="mo"):r=new st.MathNode("mo",n),t.mclass==="mbin"?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):t.mclass==="mpunct"?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):t.mclass==="mopen"||t.mclass==="mclose"?(r.attributes.lspace="0em",r.attributes.rspace="0em"):t.mclass==="minner"&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}function B4e(t,e,r){var n=O4e[t];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[e[0]],[e[1]]);case"\\uparrow":case"\\downarrow":{var i=r.callFunction("\\\\cdleft",[e[0]],[]),a={type:"atom",text:n,mode:"math",family:"rel"},s=r.callFunction("\\Big",[a],[]),l=r.callFunction("\\\\cdright",[e[1]],[]),u={type:"ordgroup",mode:"math",body:[i,s,l]};return r.callFunction("\\\\cdparent",[u],[])}case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var h={type:"textord",text:"\\Vert",mode:"math"};return r.callFunction("\\Big",[h],[])}default:return{type:"textord",text:" ",mode:"math"}}}function F4e(t){var e=[];for(t.gullet.beginGroup(),t.gullet.macros.set("\\cr","\\\\\\relax"),t.gullet.beginGroup();;){e.push(t.parseExpression(!1,"\\\\")),t.gullet.endGroup(),t.gullet.beginGroup();var r=t.fetch().text;if(r==="&"||r==="\\\\")t.consume();else if(r==="\\end"){e[e.length-1].length===0&&e.pop();break}else throw new ut("Expected \\\\ or \\cr or \\end",t.nextToken)}for(var n=[],i=[n],a=0;a-1))if("<>AV".indexOf(h)>-1)for(var d=0;d<2;d++){for(var p=!0,m=u+1;mAV=|." after @',s[u]);var g=B4e(h,f,t),y={type:"styling",body:[g],mode:"math",style:"display"};n.push(y),l=mG()}a%2===0?n.push(l):n.shift(),n=[],i.push(n)}t.gullet.endGroup(),t.gullet.endGroup();var v=new Array(i[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25});return{type:"array",mode:"math",body:i,arraystretch:1,addJot:!0,rowGaps:[null],cols:v,colSeparationType:"CD",hLinesBeforeRow:new Array(i.length+1).fill([])}}function w4(t,e){var r=x4(t);if(r&&Jt.contains(Q4e,r.text))return r;throw r?new ut("Invalid delimiter '"+r.text+"' after '"+e.funcName+"'",t):new ut("Invalid delimiter type '"+t.type+"'",t)}function vG(t){if(!t.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}function ec(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i},u=0;u1||!f)&&y.pop(),x.length{"use strict";Ys=class t{static{o(this,"SourceLocation")}constructor(e,r,n){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=e,this.start=r,this.end=n}static range(e,r){return r?!e||!e.loc||!r.loc||e.loc.lexer!==r.loc.lexer?null:new t(e.loc.lexer,e.loc.start,r.loc.end):e&&e.loc}},Co=class t{static{o(this,"Token")}constructor(e,r){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=e,this.loc=r}range(e,r){return new t(r,Ys.range(this,e))}},ut=class t{static{o(this,"ParseError")}constructor(e,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n="KaTeX parse error: "+e,i,a,s=r&&r.loc;if(s&&s.start<=s.end){var l=s.lexer.input;i=s.start,a=s.end,i===l.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var u=l.slice(i,a).replace(/[^]/g,"$&\u0332"),h;i>15?h="\u2026"+l.slice(i-15,i):h=l.slice(0,i);var f;a+15":">","<":"<",'"':""","'":"'"},_be=/[&><"']/g;o(Lbe,"escape");PG=o(function t(e){return e.type==="ordgroup"||e.type==="color"?e.body.length===1?t(e.body[0]):e:e.type==="font"?t(e.body):e},"getBaseElem"),Dbe=o(function(e){var r=PG(e);return r.type==="mathord"||r.type==="textord"||r.type==="atom"},"isCharacterBox"),Nbe=o(function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e},"assert"),Rbe=o(function(e){var r=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(e);return r?r[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(r[1])?null:r[1].toLowerCase():"_relative"},"protocolFromUrl"),Jt={contains:kbe,deflt:Ebe,escape:Lbe,hyphenate:Cbe,getBaseElem:PG,isCharacterBox:Dbe,protocolFromUrl:Rbe},o4={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format "},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color ",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:o(t=>"#"+t,"cliProcessor")},macros:{type:"object",cli:"-m, --macro ",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:o((t,e)=>(e.push(t),e),"cliProcessor")},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:o(t=>Math.max(0,t),"processor"),cli:"--min-rule-thickness ",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:o(t=>Math.max(0,t),"processor"),cli:"-s, --max-size ",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:o(t=>Math.max(0,t),"processor"),cli:"-e, --max-expand ",cliProcessor:o(t=>t==="Infinity"?1/0:parseInt(t),"cliProcessor")},globalGroup:{type:"boolean",cli:!1}};o(Mbe,"getDefaultValue");Z1=class{static{o(this,"Settings")}constructor(e){this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,e=e||{};for(var r in o4)if(o4.hasOwnProperty(r)){var n=o4[r];this[r]=e[r]!==void 0?n.processor?n.processor(e[r]):e[r]:Mbe(n)}}reportNonstrict(e,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(e,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new ut("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+e+"]"),n);i==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]"))}}useStrictBehavior(e,r,n){var i=this.strict;if(typeof i=="function")try{i=i(e,r,n)}catch{i="error"}return!i||i==="ignore"?!1:i===!0||i==="error"?!0:i==="warn"?(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]")),!1)}isTrusted(e){if(e.url&&!e.protocol){var r=Jt.protocolFromUrl(e.url);if(r==null)return!1;e.protocol=r}var n=typeof this.trust=="function"?this.trust(e):this.trust;return!!n}},Kl=class{static{o(this,"Style")}constructor(e,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=e,this.size=r,this.cramped=n}sup(){return Ql[Ibe[this.id]]}sub(){return Ql[Obe[this.id]]}fracNum(){return Ql[Pbe[this.id]]}fracDen(){return Ql[Bbe[this.id]]}cramp(){return Ql[Fbe[this.id]]}text(){return Ql[zbe[this.id]]}isTight(){return this.size>=2}},NC=0,c4=1,hp=2,ru=3,J1=4,So=5,fp=6,Ya=7,Ql=[new Kl(NC,0,!1),new Kl(c4,0,!0),new Kl(hp,1,!1),new Kl(ru,1,!0),new Kl(J1,2,!1),new Kl(So,2,!0),new Kl(fp,3,!1),new Kl(Ya,3,!0)],Ibe=[J1,So,J1,So,fp,Ya,fp,Ya],Obe=[So,So,So,So,Ya,Ya,Ya,Ya],Pbe=[hp,ru,J1,So,fp,Ya,fp,Ya],Bbe=[ru,ru,So,So,Ya,Ya,Ya,Ya],Fbe=[c4,c4,ru,ru,So,So,Ya,Ya],zbe=[NC,c4,hp,ru,hp,ru,hp,ru],rr={DISPLAY:Ql[NC],TEXT:Ql[hp],SCRIPT:Ql[J1],SCRIPTSCRIPT:Ql[fp]},xC=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];o(Gbe,"scriptFromCodepoint");l4=[];xC.forEach(t=>t.blocks.forEach(e=>l4.push(...e)));o(BG,"supportedCodepoint");up=80,$be=o(function(e,r){return"M95,"+(622+e+r)+` +c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14 +c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54 +c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10 +s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429 +c69,-144,104.5,-217.7,106.5,-221 +l`+e/2.075+" -"+e+` +c5.3,-9.3,12,-14,20,-14 +H400000v`+(40+e)+`H845.2724 +s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7 +c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z +M`+(834+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtMain"),Vbe=o(function(e,r){return"M263,"+(601+e+r)+`c0.7,0,18,39.7,52,119 +c34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120 +c340,-704.7,510.7,-1060.3,512,-1067 +l`+e/2.084+" -"+e+` +c4.7,-7.3,11,-11,19,-11 +H40000v`+(40+e)+`H1012.3 +s-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232 +c-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1 +s-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26 +c-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z +M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize1"),Ube=o(function(e,r){return"M983 "+(10+e+r)+` +l`+e/3.13+" -"+e+` +c4,-6.7,10,-10,18,-10 H400000v`+(40+e)+` +H1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7 +s-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744 +c-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30 +c26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722 +c56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5 +c53.7,-170.3,84.5,-266.8,92.5,-289.5z +M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize2"),Hbe=o(function(e,r){return"M424,"+(2398+e+r)+` +c-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514 +c0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20 +s-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121 +s209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081 +l`+e/4.223+" -"+e+`c4,-6.7,10,-10,18,-10 H400000 +v`+(40+e)+`H1014.6 +s-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185 +c-2,6,-10,9,-24,9 +c-8,0,-12,-0.7,-12,-2z M`+(1001+e)+" "+r+` +h400000v`+(40+e)+"h-400000z"},"sqrtSize3"),Wbe=o(function(e,r){return"M473,"+(2713+e+r)+` +c339.3,-1799.3,509.3,-2700,510,-2702 l`+e/5.298+" -"+e+` +c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+e)+`H1017.7 +s-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9 +c-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200 +c0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26 +s76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104, +606zM`+(1001+e)+" "+r+"h400000v"+(40+e)+"H1017.7z"},"sqrtSize4"),Ybe=o(function(e){var r=e/2;return"M400000 "+e+" H0 L"+r+" 0 l65 45 L145 "+(e-80)+" H400000z"},"phasePath"),qbe=o(function(e,r,n){var i=n-54-r-e;return"M702 "+(e+r)+"H400000"+(40+e)+` +H742v`+i+`l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1 +h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170 +c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667 +219 661 l218 661zM702 `+r+"H400000v"+(40+e)+"H742z"},"sqrtTall"),Xbe=o(function(e,r,n){r=1e3*r;var i="";switch(e){case"sqrtMain":i=$be(r,up);break;case"sqrtSize1":i=Vbe(r,up);break;case"sqrtSize2":i=Ube(r,up);break;case"sqrtSize3":i=Hbe(r,up);break;case"sqrtSize4":i=Wbe(r,up);break;case"sqrtTall":i=qbe(r,up,n)}return i},"sqrtPath"),jbe=o(function(e,r){switch(e){case"\u239C":return"M291 0 H417 V"+r+" H291z M291 0 H417 V"+r+" H291z";case"\u2223":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z";case"\u2225":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z"+("M367 0 H410 V"+r+" H367z M367 0 H410 V"+r+" H367z");case"\u239F":return"M457 0 H583 V"+r+" H457z M457 0 H583 V"+r+" H457z";case"\u23A2":return"M319 0 H403 V"+r+" H319z M319 0 H403 V"+r+" H319z";case"\u23A5":return"M263 0 H347 V"+r+" H263z M263 0 H347 V"+r+" H263z";case"\u23AA":return"M384 0 H504 V"+r+" H384z M384 0 H504 V"+r+" H384z";case"\u23D0":return"M312 0 H355 V"+r+" H312z M312 0 H355 V"+r+" H312z";case"\u2016":return"M257 0 H300 V"+r+" H257z M257 0 H300 V"+r+" H257z"+("M478 0 H521 V"+r+" H478z M478 0 H521 V"+r+" H478z");default:return""}},"innerPath"),aG={doubleleftarrow:`M262 157 +l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3 + 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28 + 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5 +c2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5 + 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87 +-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7 +-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z +m8 0v40h399730v-40zm0 194v40h399730v-40z`,doublerightarrow:`M399738 392l +-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5 + 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88 +-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68 +-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18 +-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782 +c-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3 +-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z`,leftarrow:`M400000 241H110l3-3c68.7-52.7 113.7-120 + 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8 +-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247 +c-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208 + 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3 + 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202 + l-3-3h399890zM100 241v40h399900v-40z`,leftbrace:`M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117 +-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7 + 5-6 9-10 13-.7 1-7.3 1-20 1H6z`,leftbraceunder:`M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13 + 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688 + 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7 +-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`,leftgroup:`M400000 80 +H435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0 + 435 0h399565z`,leftgroupunder:`M400000 262 +H435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219 + 435 219h399565z`,leftharpoon:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3 +-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5 +-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7 +-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z`,leftharpoonplus:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5 + 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3 +-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7 +-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z +m0 0v40h400000v-40z`,leftharpoondown:`M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333 + 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5 + 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667 +-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z`,leftharpoondownplus:`M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12 + 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7 +-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0 +v40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z`,lefthook:`M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5 +-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3 +-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21 + 71.5 23h399859zM103 281v-40h399897v40z`,leftlinesegment:`M40 281 V428 H0 V94 H40 V241 H400000 v40z +M40 281 V428 H0 V94 H40 V241 H400000 v40z`,leftmapsto:`M40 281 V448H0V74H40V241H400000v40z +M40 281 V448H0V74H40V241H400000v40z`,leftToFrom:`M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23 +-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8 +c28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3 + 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z`,longequal:`M0 50 h400000 v40H0z m0 194h40000v40H0z +M0 50 h400000 v40H0z m0 194h40000v40H0z`,midbrace:`M200428 334 +c-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14 +-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7 + 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11 + 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z`,midbraceunder:`M199572 214 +c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14 + 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3 + 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0 +-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`,oiintSize1:`M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6 +-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z +m368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8 +60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z`,oiintSize2:`M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8 +-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z +m502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2 +c0 110 84 276 504 276s502.4-166 502.4-276z`,oiiintSize1:`M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6 +-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z +m525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0 +85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z`,oiiintSize2:`M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8 +-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z +m770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1 +c0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z`,rightarrow:`M0 241v40h399891c-47.3 35.3-84 78-110 128 +-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 + 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 + 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85 +-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5 +-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67 + 151.7 139 205zm0 0v40h399900v-40z`,rightbrace:`M400000 542l +-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5 +s-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1 +c124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z`,rightbraceunder:`M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3 + 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237 +-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`,rightgroup:`M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0 + 3-1 3-3v-38c-76-158-257-219-435-219H0z`,rightgroupunder:`M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18 + 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z`,rightharpoon:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3 +-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2 +-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 + 69.2 92 94.5zm0 0v40h399900v-40z`,rightharpoonplus:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11 +-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7 + 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z +m0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z`,rightharpoondown:`M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8 + 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5 +-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95 +-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z`,rightharpoondownplus:`M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8 + 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 + 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3 +-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z +m0-194v40h400000v-40zm0 0v40h400000v-40z`,righthook:`M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3 + 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0 +-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21 + 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z`,rightlinesegment:`M399960 241 V94 h40 V428 h-40 V281 H0 v-40z +M399960 241 V94 h40 V428 h-40 V281 H0 v-40z`,rightToFrom:`M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23 + 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32 +-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142 +-167z M100 147v40h399900v-40zM0 341v40h399900v-40z`,twoheadleftarrow:`M0 167c68 40 + 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69 +-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3 +-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19 +-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101 + 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z`,twoheadrightarrow:`M400000 167 +c-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3 + 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42 + 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333 +-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70 + 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z`,tilde1:`M200 55.538c-77 0-168 73.953-177 73.953-3 0-7 +-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0 + 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0 + 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128 +-68.267.847-113-73.952-191-73.952z`,tilde2:`M344 55.266c-142 0-300.638 81.316-311.5 86.418 +-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9 + 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114 +c1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751 + 181.476 676 181.476c-149 0-189-126.21-332-126.21z`,tilde3:`M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457 +-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0 + 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697 + 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696 + -338 0-409-156.573-744-156.573z`,tilde4:`M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345 +-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409 + 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9 + 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409 + -175.236-744-175.236z`,vec:`M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5 +3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11 +10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63 +-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1 +-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59 +H213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359 +c-16-25.333-24-45-24-59z`,widehat1:`M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22 +c-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z`,widehat2:`M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10 +-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat3:`M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10 +-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat4:`M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10 +-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widecheck1:`M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1, +-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z`,widecheck2:`M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10, +-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck3:`M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10, +-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck4:`M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10, +-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,baraboveleftarrow:`M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202 +c4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5 +c-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130 +s-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47 +121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6 +s2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11 +c0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z +M100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z`,rightarrowabovebar:`M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32 +-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0 +13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39 +-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5 +-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5 +-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67 +151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z`,baraboveshortleftharpoon:`M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11 +c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17 +c2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21 +c-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40 +c-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z +M0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z`,rightharpoonaboveshortbar:`M0,241 l0,40c399126,0,399993,0,399993,0 +c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199, +-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6 +c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z +M0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z`,shortbaraboveleftharpoon:`M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11 +c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9, +1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7, +-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z +M93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z`,shortrightharpoonabovebar:`M53,241l0,40c398570,0,399437,0,399437,0 +c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199, +-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6 +c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z +M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`},Kbe=o(function(e,r){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v1759 h347 v-84 +H403z M403 1759 V0 H319 V1759 v`+r+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v1759 H0 v84 H347z +M347 1759 V0 H263 V1759 v`+r+" v1759 h84z";case"vert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+" v585 h43z";case"doublevert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+` v585 h43z +M367 15 v585 v`+r+` v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+r+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+r+` v1715 h263 v84 H319z +MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+r+` v1799 H0 v-84 H319z +MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v602 h84z +M403 1759 V0 H319 V1759 v`+r+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v602 h84z +M347 1759 V0 h-84 V1759 v`+r+" v602 h84z";case"lparen":return`M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1 +c-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349, +-36,557 l0,`+(r+84)+`c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210, +949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9 +c0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5, +-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189 +l0,-`+(r+92)+`c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3, +-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z`;case"rparen":return`M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3, +63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5 +c11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,`+(r+9)+` +c-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664 +c-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11 +c0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17 +c242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558 +l0,-`+(r+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7, +-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z`;default:throw new Error("Unknown stretchy delimiter.")}},"tallDelim"),Yf=class{static{o(this,"DocumentFragment")}constructor(e){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=e,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(e){return Jt.contains(this.classes,e)}toNode(){for(var e=document.createDocumentFragment(),r=0;rr.toText(),"toText");return this.children.map(e).join("")}},Zl={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},Kb={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},sG={\u00C5:"A",\u00D0:"D",\u00DE:"o",\u00E5:"a",\u00F0:"d",\u00FE:"o",\u0410:"A",\u0411:"B",\u0412:"B",\u0413:"F",\u0414:"A",\u0415:"E",\u0416:"K",\u0417:"3",\u0418:"N",\u0419:"N",\u041A:"K",\u041B:"N",\u041C:"M",\u041D:"H",\u041E:"O",\u041F:"N",\u0420:"P",\u0421:"C",\u0422:"T",\u0423:"y",\u0424:"O",\u0425:"X",\u0426:"U",\u0427:"h",\u0428:"W",\u0429:"W",\u042A:"B",\u042B:"X",\u042C:"B",\u042D:"3",\u042E:"X",\u042F:"R",\u0430:"a",\u0431:"b",\u0432:"a",\u0433:"r",\u0434:"y",\u0435:"e",\u0436:"m",\u0437:"e",\u0438:"n",\u0439:"n",\u043A:"n",\u043B:"n",\u043C:"m",\u043D:"n",\u043E:"o",\u043F:"n",\u0440:"p",\u0441:"c",\u0442:"o",\u0443:"y",\u0444:"b",\u0445:"x",\u0446:"n",\u0447:"n",\u0448:"w",\u0449:"w",\u044A:"a",\u044B:"m",\u044C:"a",\u044D:"e",\u044E:"m",\u044F:"r"};o(Qbe,"setFontMetrics");o(RC,"getCharacterMetrics");oC={};o(Zbe,"getGlobalMetrics");Jbe=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],oG=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],lG=o(function(e,r){return r.size<2?e:Jbe[e-1][r.size-1]},"sizeAtStyle"),u4=class t{static{o(this,"Options")}constructor(e){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=e.style,this.color=e.color,this.size=e.size||t.BASESIZE,this.textSize=e.textSize||this.size,this.phantom=!!e.phantom,this.font=e.font||"",this.fontFamily=e.fontFamily||"",this.fontWeight=e.fontWeight||"",this.fontShape=e.fontShape||"",this.sizeMultiplier=oG[this.size-1],this.maxSize=e.maxSize,this.minRuleThickness=e.minRuleThickness,this._fontMetrics=void 0}extend(e){var r={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};for(var n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return new t(r)}havingStyle(e){return this.style===e?this:this.extend({style:e,size:lG(this.textSize,e)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(e){return this.size===e&&this.textSize===e?this:this.extend({style:this.style.text(),size:e,textSize:e,sizeMultiplier:oG[e-1]})}havingBaseStyle(e){e=e||this.style.text();var r=lG(t.BASESIZE,e);return this.size===r&&this.textSize===t.BASESIZE&&this.style===e?this:this.extend({style:e,size:r})}havingBaseSizing(){var e;switch(this.style.id){case 4:case 5:e=3;break;case 6:case 7:e=1;break;default:e=6}return this.extend({style:this.style.text(),size:e})}withColor(e){return this.extend({color:e})}withPhantom(){return this.extend({phantom:!0})}withFont(e){return this.extend({font:e})}withTextFontFamily(e){return this.extend({fontFamily:e,font:""})}withTextFontWeight(e){return this.extend({fontWeight:e,font:""})}withTextFontShape(e){return this.extend({fontShape:e,font:""})}sizingClasses(e){return e.size!==this.size?["sizing","reset-size"+e.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==t.BASESIZE?["sizing","reset-size"+this.size,"size"+t.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=Zbe(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}};u4.BASESIZE=6;bC={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:803/800,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:803/800},e4e={ex:!0,em:!0,mu:!0},FG=o(function(e){return typeof e!="string"&&(e=e.unit),e in bC||e in e4e||e==="ex"},"validUnit"),Qn=o(function(e,r){var n;if(e.unit in bC)n=bC[e.unit]/r.fontMetrics().ptPerEm/r.sizeMultiplier;else if(e.unit==="mu")n=r.fontMetrics().cssEmPerMu;else{var i;if(r.style.isTight()?i=r.havingStyle(r.style.text()):i=r,e.unit==="ex")n=i.fontMetrics().xHeight;else if(e.unit==="em")n=i.fontMetrics().quad;else throw new ut("Invalid unit: '"+e.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(e.number*n,r.maxSize)},"calculateSize"),mt=o(function(e){return+e.toFixed(4)+"em"},"makeEm"),lh=o(function(e){return e.filter(r=>r).join(" ")},"createClass"),zG=o(function(e,r,n){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=n||{},r){r.style.isTight()&&this.classes.push("mtight");var i=r.getColor();i&&(this.style.color=i)}},"initNode"),GG=o(function(e){var r=document.createElement(e);r.className=lh(this.classes);for(var n in this.style)this.style.hasOwnProperty(n)&&(r.style[n]=this.style[n]);for(var i in this.attributes)this.attributes.hasOwnProperty(i)&&r.setAttribute(i,this.attributes[i]);for(var a=0;a",r},"toMarkup"),qf=class{static{o(this,"Span")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,zG.call(this,e,n,i),this.children=r||[]}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return Jt.contains(this.classes,e)}toNode(){return GG.call(this,"span")}toMarkup(){return $G.call(this,"span")}},ey=class{static{o(this,"Anchor")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,zG.call(this,r,i),this.children=n||[],this.setAttribute("href",e)}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return Jt.contains(this.classes,e)}toNode(){return GG.call(this,"a")}toMarkup(){return $G.call(this,"a")}},wC=class{static{o(this,"Img")}constructor(e,r,n){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=r,this.src=e,this.classes=["mord"],this.style=n}hasClass(e){return Jt.contains(this.classes,e)}toNode(){var e=document.createElement("img");e.src=this.src,e.alt=this.alt,e.className="mord";for(var r in this.style)this.style.hasOwnProperty(r)&&(e.style[r]=this.style[r]);return e}toMarkup(){var e=''+Jt.escape(this.alt)+'0&&(r=document.createElement("span"),r.style.marginRight=mt(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=lh(this.classes));for(var n in this.style)this.style.hasOwnProperty(n)&&(r=r||document.createElement("span"),r.style[n]=this.style[n]);return r?(r.appendChild(e),r):e}toMarkup(){var e=!1,r="0&&(n+="margin-right:"+this.italic+"em;");for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=Jt.hyphenate(i)+":"+this.style[i]+";");n&&(e=!0,r+=' style="'+Jt.escape(n)+'"');var a=Jt.escape(this.text);return e?(r+=">",r+=a,r+="",r):a}},fl=class{static{o(this,"SvgNode")}constructor(e,r){this.children=void 0,this.attributes=void 0,this.children=e||[],this.attributes=r||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"svg");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);for(var i=0;i':''}},ty=class{static{o(this,"LineNode")}constructor(e){this.attributes=void 0,this.attributes=e||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"line");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);return r}toMarkup(){var e="","\\gt",!0);G(V,re,we,"\u2208","\\in",!0);G(V,re,we,"\uE020","\\@not");G(V,re,we,"\u2282","\\subset",!0);G(V,re,we,"\u2283","\\supset",!0);G(V,re,we,"\u2286","\\subseteq",!0);G(V,re,we,"\u2287","\\supseteq",!0);G(V,ve,we,"\u2288","\\nsubseteq",!0);G(V,ve,we,"\u2289","\\nsupseteq",!0);G(V,re,we,"\u22A8","\\models");G(V,re,we,"\u2190","\\leftarrow",!0);G(V,re,we,"\u2264","\\le");G(V,re,we,"\u2264","\\leq",!0);G(V,re,we,"<","\\lt",!0);G(V,re,we,"\u2192","\\rightarrow",!0);G(V,re,we,"\u2192","\\to");G(V,ve,we,"\u2271","\\ngeq",!0);G(V,ve,we,"\u2270","\\nleq",!0);G(V,re,su,"\xA0","\\ ");G(V,re,su,"\xA0","\\space");G(V,re,su,"\xA0","\\nobreakspace");G(it,re,su,"\xA0","\\ ");G(it,re,su,"\xA0"," ");G(it,re,su,"\xA0","\\space");G(it,re,su,"\xA0","\\nobreakspace");G(V,re,su,null,"\\nobreak");G(V,re,su,null,"\\allowbreak");G(V,re,y4,",",",");G(V,re,y4,";",";");G(V,ve,Nt,"\u22BC","\\barwedge",!0);G(V,ve,Nt,"\u22BB","\\veebar",!0);G(V,re,Nt,"\u2299","\\odot",!0);G(V,re,Nt,"\u2295","\\oplus",!0);G(V,re,Nt,"\u2297","\\otimes",!0);G(V,re,_e,"\u2202","\\partial",!0);G(V,re,Nt,"\u2298","\\oslash",!0);G(V,ve,Nt,"\u229A","\\circledcirc",!0);G(V,ve,Nt,"\u22A1","\\boxdot",!0);G(V,re,Nt,"\u25B3","\\bigtriangleup");G(V,re,Nt,"\u25BD","\\bigtriangledown");G(V,re,Nt,"\u2020","\\dagger");G(V,re,Nt,"\u22C4","\\diamond");G(V,re,Nt,"\u22C6","\\star");G(V,re,Nt,"\u25C3","\\triangleleft");G(V,re,Nt,"\u25B9","\\triangleright");G(V,re,qs,"{","\\{");G(it,re,_e,"{","\\{");G(it,re,_e,"{","\\textbraceleft");G(V,re,qa,"}","\\}");G(it,re,_e,"}","\\}");G(it,re,_e,"}","\\textbraceright");G(V,re,qs,"{","\\lbrace");G(V,re,qa,"}","\\rbrace");G(V,re,qs,"[","\\lbrack",!0);G(it,re,_e,"[","\\lbrack",!0);G(V,re,qa,"]","\\rbrack",!0);G(it,re,_e,"]","\\rbrack",!0);G(V,re,qs,"(","\\lparen",!0);G(V,re,qa,")","\\rparen",!0);G(it,re,_e,"<","\\textless",!0);G(it,re,_e,">","\\textgreater",!0);G(V,re,qs,"\u230A","\\lfloor",!0);G(V,re,qa,"\u230B","\\rfloor",!0);G(V,re,qs,"\u2308","\\lceil",!0);G(V,re,qa,"\u2309","\\rceil",!0);G(V,re,_e,"\\","\\backslash");G(V,re,_e,"\u2223","|");G(V,re,_e,"\u2223","\\vert");G(it,re,_e,"|","\\textbar",!0);G(V,re,_e,"\u2225","\\|");G(V,re,_e,"\u2225","\\Vert");G(it,re,_e,"\u2225","\\textbardbl");G(it,re,_e,"~","\\textasciitilde");G(it,re,_e,"\\","\\textbackslash");G(it,re,_e,"^","\\textasciicircum");G(V,re,we,"\u2191","\\uparrow",!0);G(V,re,we,"\u21D1","\\Uparrow",!0);G(V,re,we,"\u2193","\\downarrow",!0);G(V,re,we,"\u21D3","\\Downarrow",!0);G(V,re,we,"\u2195","\\updownarrow",!0);G(V,re,we,"\u21D5","\\Updownarrow",!0);G(V,re,Ti,"\u2210","\\coprod");G(V,re,Ti,"\u22C1","\\bigvee");G(V,re,Ti,"\u22C0","\\bigwedge");G(V,re,Ti,"\u2A04","\\biguplus");G(V,re,Ti,"\u22C2","\\bigcap");G(V,re,Ti,"\u22C3","\\bigcup");G(V,re,Ti,"\u222B","\\int");G(V,re,Ti,"\u222B","\\intop");G(V,re,Ti,"\u222C","\\iint");G(V,re,Ti,"\u222D","\\iiint");G(V,re,Ti,"\u220F","\\prod");G(V,re,Ti,"\u2211","\\sum");G(V,re,Ti,"\u2A02","\\bigotimes");G(V,re,Ti,"\u2A01","\\bigoplus");G(V,re,Ti,"\u2A00","\\bigodot");G(V,re,Ti,"\u222E","\\oint");G(V,re,Ti,"\u222F","\\oiint");G(V,re,Ti,"\u2230","\\oiiint");G(V,re,Ti,"\u2A06","\\bigsqcup");G(V,re,Ti,"\u222B","\\smallint");G(it,re,dp,"\u2026","\\textellipsis");G(V,re,dp,"\u2026","\\mathellipsis");G(it,re,dp,"\u2026","\\ldots",!0);G(V,re,dp,"\u2026","\\ldots",!0);G(V,re,dp,"\u22EF","\\@cdots",!0);G(V,re,dp,"\u22F1","\\ddots",!0);G(V,re,_e,"\u22EE","\\varvdots");G(V,re,$n,"\u02CA","\\acute");G(V,re,$n,"\u02CB","\\grave");G(V,re,$n,"\xA8","\\ddot");G(V,re,$n,"~","\\tilde");G(V,re,$n,"\u02C9","\\bar");G(V,re,$n,"\u02D8","\\breve");G(V,re,$n,"\u02C7","\\check");G(V,re,$n,"^","\\hat");G(V,re,$n,"\u20D7","\\vec");G(V,re,$n,"\u02D9","\\dot");G(V,re,$n,"\u02DA","\\mathring");G(V,re,tr,"\uE131","\\@imath");G(V,re,tr,"\uE237","\\@jmath");G(V,re,_e,"\u0131","\u0131");G(V,re,_e,"\u0237","\u0237");G(it,re,_e,"\u0131","\\i",!0);G(it,re,_e,"\u0237","\\j",!0);G(it,re,_e,"\xDF","\\ss",!0);G(it,re,_e,"\xE6","\\ae",!0);G(it,re,_e,"\u0153","\\oe",!0);G(it,re,_e,"\xF8","\\o",!0);G(it,re,_e,"\xC6","\\AE",!0);G(it,re,_e,"\u0152","\\OE",!0);G(it,re,_e,"\xD8","\\O",!0);G(it,re,$n,"\u02CA","\\'");G(it,re,$n,"\u02CB","\\`");G(it,re,$n,"\u02C6","\\^");G(it,re,$n,"\u02DC","\\~");G(it,re,$n,"\u02C9","\\=");G(it,re,$n,"\u02D8","\\u");G(it,re,$n,"\u02D9","\\.");G(it,re,$n,"\xB8","\\c");G(it,re,$n,"\u02DA","\\r");G(it,re,$n,"\u02C7","\\v");G(it,re,$n,"\xA8",'\\"');G(it,re,$n,"\u02DD","\\H");G(it,re,$n,"\u25EF","\\textcircled");VG={"--":!0,"---":!0,"``":!0,"''":!0};G(it,re,_e,"\u2013","--",!0);G(it,re,_e,"\u2013","\\textendash");G(it,re,_e,"\u2014","---",!0);G(it,re,_e,"\u2014","\\textemdash");G(it,re,_e,"\u2018","`",!0);G(it,re,_e,"\u2018","\\textquoteleft");G(it,re,_e,"\u2019","'",!0);G(it,re,_e,"\u2019","\\textquoteright");G(it,re,_e,"\u201C","``",!0);G(it,re,_e,"\u201C","\\textquotedblleft");G(it,re,_e,"\u201D","''",!0);G(it,re,_e,"\u201D","\\textquotedblright");G(V,re,_e,"\xB0","\\degree",!0);G(it,re,_e,"\xB0","\\degree");G(it,re,_e,"\xB0","\\textdegree",!0);G(V,re,_e,"\xA3","\\pounds");G(V,re,_e,"\xA3","\\mathsterling",!0);G(it,re,_e,"\xA3","\\pounds");G(it,re,_e,"\xA3","\\textsterling",!0);G(V,ve,_e,"\u2720","\\maltese");G(it,ve,_e,"\u2720","\\maltese");uG='0123456789/@."';for(Qb=0;Qb0)return hl(a,h,i,r,s.concat(f));if(u){var d,p;if(u==="boldsymbol"){var m=o4e(a,i,r,s,n);d=m.fontName,p=[m.fontClass]}else l?(d=WG[u].fontName,p=[u]):(d=r4(u,r.fontWeight,r.fontShape),p=[u,r.fontWeight,r.fontShape]);if(v4(a,d,i).metrics)return hl(a,d,i,r,s.concat(p));if(VG.hasOwnProperty(a)&&d.slice(0,10)==="Typewriter"){for(var g=[],y=0;y{if(lh(t.classes)!==lh(e.classes)||t.skew!==e.skew||t.maxFontSize!==e.maxFontSize)return!1;if(t.classes.length===1){var r=t.classes[0];if(r==="mbin"||r==="mord")return!1}for(var n in t.style)if(t.style.hasOwnProperty(n)&&t.style[n]!==e.style[n])return!1;for(var i in e.style)if(e.style.hasOwnProperty(i)&&t.style[i]!==e.style[i])return!1;return!0},"canCombine"),u4e=o(t=>{for(var e=0;er&&(r=s.height),s.depth>n&&(n=s.depth),s.maxFontSize>i&&(i=s.maxFontSize)}e.height=r,e.depth=n,e.maxFontSize=i},"sizeElementFromChildren"),ds=o(function(e,r,n,i){var a=new qf(e,r,n,i);return MC(a),a},"makeSpan"),UG=o((t,e,r,n)=>new qf(t,e,r,n),"makeSvgSpan"),h4e=o(function(e,r,n){var i=ds([e],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=mt(i.height),i.maxFontSize=1,i},"makeLineSpan"),f4e=o(function(e,r,n,i){var a=new ey(e,r,n,i);return MC(a),a},"makeAnchor"),HG=o(function(e){var r=new Yf(e);return MC(r),r},"makeFragment"),d4e=o(function(e,r){return e instanceof Yf?ds([],[e],r):e},"wrapFragment"),p4e=o(function(e){if(e.positionType==="individualShift"){for(var r=e.children,n=[r[0]],i=-r[0].shift-r[0].elem.depth,a=i,s=1;s{var r=ds(["mspace"],[],e),n=Qn(t,e);return r.style.marginRight=mt(n),r},"makeGlue"),r4=o(function(e,r,n){var i="";switch(e){case"amsrm":i="AMS";break;case"textrm":i="Main";break;case"textsf":i="SansSerif";break;case"texttt":i="Typewriter";break;default:i=e}var a;return r==="textbf"&&n==="textit"?a="BoldItalic":r==="textbf"?a="Bold":r==="textit"?a="Italic":a="Regular",i+"-"+a},"retrieveTextFontName"),WG={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},YG={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},y4e=o(function(e,r){var[n,i,a]=YG[e],s=new Jl(n),l=new fl([s],{width:mt(i),height:mt(a),style:"width:"+mt(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),u=UG(["overlay"],[l],r);return u.height=a,u.style.height=mt(a),u.style.width=mt(i),u},"staticSvg"),Ie={fontMap:WG,makeSymbol:hl,mathsym:s4e,makeSpan:ds,makeSvgSpan:UG,makeLineSpan:h4e,makeAnchor:f4e,makeFragment:HG,wrapFragment:d4e,makeVList:m4e,makeOrd:l4e,makeGlue:g4e,staticSvg:y4e,svgData:YG,tryCombineChars:u4e},Kn={number:3,unit:"mu"},Hf={number:4,unit:"mu"},tu={number:5,unit:"mu"},v4e={mord:{mop:Kn,mbin:Hf,mrel:tu,minner:Kn},mop:{mord:Kn,mop:Kn,mrel:tu,minner:Kn},mbin:{mord:Hf,mop:Hf,mopen:Hf,minner:Hf},mrel:{mord:tu,mop:tu,mopen:tu,minner:tu},mopen:{},mclose:{mop:Kn,mbin:Hf,mrel:tu,minner:Kn},mpunct:{mord:Kn,mop:Kn,mrel:tu,mopen:Kn,mclose:Kn,mpunct:Kn,minner:Kn},minner:{mord:Kn,mop:Kn,mbin:Hf,mrel:tu,mopen:Kn,mpunct:Kn,minner:Kn}},x4e={mord:{mop:Kn},mop:{mord:Kn,mop:Kn},mbin:{},mrel:{},mopen:{},mclose:{mop:Kn},mpunct:{},minner:{mop:Kn}},qG={},f4={},d4={};o(Ct,"defineFunction");o(Xf,"defineFunctionBuilders");p4=o(function(e){return e.type==="ordgroup"&&e.body.length===1?e.body[0]:e},"normalizeArgument"),di=o(function(e){return e.type==="ordgroup"?e.body:[e]},"ordargument"),iu=Ie.makeSpan,b4e=["leftmost","mbin","mopen","mrel","mop","mpunct"],w4e=["rightmost","mrel","mclose","mpunct"],T4e={display:rr.DISPLAY,text:rr.TEXT,script:rr.SCRIPT,scriptscript:rr.SCRIPTSCRIPT},k4e={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},Ii=o(function(e,r,n,i){i===void 0&&(i=[null,null]);for(var a=[],s=0;s{var v=y.classes[0],x=g.classes[0];v==="mbin"&&Jt.contains(w4e,x)?y.classes[0]="mord":x==="mbin"&&Jt.contains(b4e,v)&&(g.classes[0]="mord")},{node:d},p,m),dG(a,(g,y)=>{var v=kC(y),x=kC(g),b=v&&x?g.hasClass("mtight")?x4e[v][x]:v4e[v][x]:null;if(b)return Ie.makeGlue(b,h)},{node:d},p,m),a},"buildExpression"),dG=o(function t(e,r,n,i,a){i&&e.push(i);for(var s=0;sp=>{e.splice(d+1,0,p),s++})(s)}i&&e.pop()},"traverseNonSpaceNodes"),XG=o(function(e){return e instanceof Yf||e instanceof ey||e instanceof qf&&e.hasClass("enclosing")?e:null},"checkPartialGroup"),E4e=o(function t(e,r){var n=XG(e);if(n){var i=n.children;if(i.length){if(r==="right")return t(i[i.length-1],"right");if(r==="left")return t(i[0],"left")}}return e},"getOutermostNode"),kC=o(function(e,r){return e?(r&&(e=E4e(e,r)),k4e[e.classes[0]]||null):null},"getTypeOfDomTree"),ry=o(function(e,r){var n=["nulldelimiter"].concat(e.baseSizingClasses());return iu(r.concat(n))},"makeNullDelimiter"),Or=o(function(e,r,n){if(!e)return iu();if(f4[e.type]){var i=f4[e.type](e,r);if(n&&r.size!==n.size){i=iu(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new ut("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(n4,"buildHTMLUnbreakable");o(EC,"buildHTML");o(jG,"newDocumentFragment");ps=class{static{o(this,"MathNode")}constructor(e,r,n){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=e,this.attributes={},this.children=r||[],this.classes=n||[]}setAttribute(e,r){this.attributes[e]=r}getAttribute(e){return this.attributes[e]}toNode(){var e=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&e.setAttribute(r,this.attributes[r]);this.classes.length>0&&(e.className=lh(this.classes));for(var n=0;n0&&(e+=' class ="'+Jt.escape(lh(this.classes))+'"'),e+=">";for(var n=0;n",e}toText(){return this.children.map(e=>e.toText()).join("")}},Wf=class{static{o(this,"TextNode")}constructor(e){this.text=void 0,this.text=e}toNode(){return document.createTextNode(this.text)}toMarkup(){return Jt.escape(this.toText())}toText(){return this.text}},SC=class{static{o(this,"SpaceNode")}constructor(e){this.width=void 0,this.character=void 0,this.width=e,e>=.05555&&e<=.05556?this.character="\u200A":e>=.1666&&e<=.1667?this.character="\u2009":e>=.2222&&e<=.2223?this.character="\u2005":e>=.2777&&e<=.2778?this.character="\u2005\u200A":e>=-.05556&&e<=-.05555?this.character="\u200A\u2063":e>=-.1667&&e<=-.1666?this.character="\u2009\u2063":e>=-.2223&&e<=-.2222?this.character="\u205F\u2063":e>=-.2778&&e<=-.2777?this.character="\u2005\u2063":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var e=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return e.setAttribute("width",mt(this.width)),e}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}},st={MathNode:ps,TextNode:Wf,SpaceNode:SC,newDocumentFragment:jG},Ao=o(function(e,r,n){return En[r][e]&&En[r][e].replace&&e.charCodeAt(0)!==55349&&!(VG.hasOwnProperty(e)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(e=En[r][e].replace),new st.TextNode(e)},"makeText"),IC=o(function(e){return e.length===1?e[0]:new st.MathNode("mrow",e)},"makeRow"),OC=o(function(e,r){if(r.fontFamily==="texttt")return"monospace";if(r.fontFamily==="textsf")return r.fontShape==="textit"&&r.fontWeight==="textbf"?"sans-serif-bold-italic":r.fontShape==="textit"?"sans-serif-italic":r.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(r.fontShape==="textit"&&r.fontWeight==="textbf")return"bold-italic";if(r.fontShape==="textit")return"italic";if(r.fontWeight==="textbf")return"bold";var n=r.font;if(!n||n==="mathnormal")return null;var i=e.mode;if(n==="mathit")return"italic";if(n==="boldsymbol")return e.type==="textord"?"bold":"bold-italic";if(n==="mathbf")return"bold";if(n==="mathbb")return"double-struck";if(n==="mathfrak")return"fraktur";if(n==="mathscr"||n==="mathcal")return"script";if(n==="mathsf")return"sans-serif";if(n==="mathtt")return"monospace";var a=e.text;if(Jt.contains(["\\imath","\\jmath"],a))return null;En[i][a]&&En[i][a].replace&&(a=En[i][a].replace);var s=Ie.fontMap[n].fontName;return RC(a,s,i)?Ie.fontMap[n].variant:null},"getVariant"),gs=o(function(e,r,n){if(e.length===1){var i=mn(e[0],r);return n&&i instanceof ps&&i.type==="mo"&&(i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em")),[i]}for(var a=[],s,l=0;l0&&(d.text=d.text.slice(0,1)+"\u0338"+d.text.slice(1),a.pop())}}}a.push(u),s=u}return a},"buildExpression"),ch=o(function(e,r,n){return IC(gs(e,r,n))},"buildExpressionRow"),mn=o(function(e,r){if(!e)return new st.MathNode("mrow");if(d4[e.type]){var n=d4[e.type](e,r);return n}else throw new ut("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(pG,"buildMathML");KG=o(function(e){return new u4({style:e.displayMode?rr.DISPLAY:rr.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},"optionsFromSettings"),QG=o(function(e,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),e=Ie.makeSpan(n,[e])}return e},"displayWrap"),S4e=o(function(e,r,n){var i=KG(n),a;if(n.output==="mathml")return pG(e,r,i,n.displayMode,!0);if(n.output==="html"){var s=EC(e,i);a=Ie.makeSpan(["katex"],[s])}else{var l=pG(e,r,i,n.displayMode,!1),u=EC(e,i);a=Ie.makeSpan(["katex"],[l,u])}return QG(a,n)},"buildTree"),C4e=o(function(e,r,n){var i=KG(n),a=EC(e,i),s=Ie.makeSpan(["katex"],[a]);return QG(s,n)},"buildHTMLTree"),A4e={widehat:"^",widecheck:"\u02C7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23DF",overbrace:"\u23DE",overgroup:"\u23E0",undergroup:"\u23E1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21D2",xRightarrow:"\u21D2",overleftharpoon:"\u21BC",xleftharpoonup:"\u21BC",overrightharpoon:"\u21C0",xrightharpoonup:"\u21C0",xLeftarrow:"\u21D0",xLeftrightarrow:"\u21D4",xhookleftarrow:"\u21A9",xhookrightarrow:"\u21AA",xmapsto:"\u21A6",xrightharpoondown:"\u21C1",xleftharpoondown:"\u21BD",xrightleftharpoons:"\u21CC",xleftrightharpoons:"\u21CB",xtwoheadleftarrow:"\u219E",xtwoheadrightarrow:"\u21A0",xlongequal:"=",xtofrom:"\u21C4",xrightleftarrows:"\u21C4",xrightequilibrium:"\u21CC",xleftequilibrium:"\u21CB","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},_4e=o(function(e){var r=new st.MathNode("mo",[new st.TextNode(A4e[e.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},"mathMLnode"),L4e={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},D4e=o(function(e){return e.type==="ordgroup"?e.body.length:1},"groupLength"),N4e=o(function(e,r){function n(){var l=4e5,u=e.label.slice(1);if(Jt.contains(["widehat","widecheck","widetilde","utilde"],u)){var h=e,f=D4e(h.base),d,p,m;if(f>5)u==="widehat"||u==="widecheck"?(d=420,l=2364,m=.42,p=u+"4"):(d=312,l=2340,m=.34,p="tilde4");else{var g=[1,1,2,2,3,3][f];u==="widehat"||u==="widecheck"?(l=[0,1062,2364,2364,2364][g],d=[0,239,300,360,420][g],m=[0,.24,.3,.3,.36,.42][g],p=u+g):(l=[0,600,1033,2339,2340][g],d=[0,260,286,306,312][g],m=[0,.26,.286,.3,.306,.34][g],p="tilde"+g)}var y=new Jl(p),v=new fl([y],{width:"100%",height:mt(m),viewBox:"0 0 "+l+" "+d,preserveAspectRatio:"none"});return{span:Ie.makeSvgSpan([],[v],r),minWidth:0,height:m}}else{var x=[],b=L4e[u],[w,_,T]=b,E=T/1e3,L=w.length,C,A;if(L===1){var I=b[3];C=["hide-tail"],A=[I]}else if(L===2)C=["halfarrow-left","halfarrow-right"],A=["xMinYMin","xMaxYMin"];else if(L===3)C=["brace-left","brace-center","brace-right"],A=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support + `+L+" children.");for(var D=0;D0&&(i.style.minWidth=mt(a)),i},"svgSpan"),R4e=o(function(e,r,n,i,a){var s,l=e.height+e.depth+n+i;if(/fbox|color|angl/.test(r)){if(s=Ie.makeSpan(["stretchy",r],[],a),r==="fbox"){var u=a.color&&a.getColor();u&&(s.style.borderColor=u)}}else{var h=[];/^[bx]cancel$/.test(r)&&h.push(new ty({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(r)&&h.push(new ty({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var f=new fl(h,{width:"100%",height:mt(l)});s=Ie.makeSvgSpan([],[f],a)}return s.height=l,s.style.height=mt(l),s},"encloseSpan"),au={encloseSpan:R4e,mathMLnode:_4e,svgSpan:N4e};o(yr,"assertNodeType");o(PC,"assertSymbolNodeType");o(x4,"checkSymbolNodeType");BC=o((t,e)=>{var r,n,i;t&&t.type==="supsub"?(n=yr(t.base,"accent"),r=n.base,t.base=r,i=r4e(Or(t,e)),t.base=n):(n=yr(t,"accent"),r=n.base);var a=Or(r,e.havingCrampedStyle()),s=n.isShifty&&Jt.isCharacterBox(r),l=0;if(s){var u=Jt.getBaseElem(r),h=Or(u,e.havingCrampedStyle());l=cG(h).skew}var f=n.label==="\\c",d=f?a.height+a.depth:Math.min(a.height,e.fontMetrics().xHeight),p;if(n.isStretchy)p=au.svgSpan(n,e),p=Ie.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:p,wrapperClasses:["svg-align"],wrapperStyle:l>0?{width:"calc(100% - "+mt(2*l)+")",marginLeft:mt(2*l)}:void 0}]},e);else{var m,g;n.label==="\\vec"?(m=Ie.staticSvg("vec",e),g=Ie.svgData.vec[1]):(m=Ie.makeOrd({mode:n.mode,text:n.label},e,"textord"),m=cG(m),m.italic=0,g=m.width,f&&(d+=m.depth)),p=Ie.makeSpan(["accent-body"],[m]);var y=n.label==="\\textcircled";y&&(p.classes.push("accent-full"),d=a.height);var v=l;y||(v-=g/2),p.style.left=mt(v),n.label==="\\textcircled"&&(p.style.top=".2em"),p=Ie.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-d},{type:"elem",elem:p}]},e)}var x=Ie.makeSpan(["mord","accent"],[p],e);return i?(i.children[0]=x,i.height=Math.max(x.height,i.height),i.classes[0]="mord",i):x},"htmlBuilder$a"),ZG=o((t,e)=>{var r=t.isStretchy?au.mathMLnode(t.label):new st.MathNode("mo",[Ao(t.label,t.mode)]),n=new st.MathNode("mover",[mn(t.base,e),r]);return n.setAttribute("accent","true"),n},"mathmlBuilder$9"),M4e=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(t=>"\\"+t).join("|"));Ct({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:o((t,e)=>{var r=p4(e[0]),n=!M4e.test(t.funcName),i=!n||t.funcName==="\\widehat"||t.funcName==="\\widetilde"||t.funcName==="\\widecheck";return{type:"accent",mode:t.parser.mode,label:t.funcName,isStretchy:n,isShifty:i,base:r}},"handler"),htmlBuilder:BC,mathmlBuilder:ZG});Ct({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:o((t,e)=>{var r=e[0],n=t.parser.mode;return n==="math"&&(t.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+t.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:t.funcName,isStretchy:!1,isShifty:!0,base:r}},"handler"),htmlBuilder:BC,mathmlBuilder:ZG});Ct({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"accentUnder",mode:r.mode,label:n,base:i}},"handler"),htmlBuilder:o((t,e)=>{var r=Or(t.base,e),n=au.svgSpan(t,e),i=t.label==="\\utilde"?.12:0,a=Ie.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]},e);return Ie.makeSpan(["mord","accentunder"],[a],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=au.mathMLnode(t.label),n=new st.MathNode("munder",[mn(t.base,e),r]);return n.setAttribute("accentunder","true"),n},"mathmlBuilder")});i4=o(t=>{var e=new st.MathNode("mpadded",t?[t]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e},"paddedNode");Ct({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n,funcName:i}=t;return{type:"xArrow",mode:n.mode,label:i,body:e[0],below:r[0]}},htmlBuilder(t,e){var r=e.style,n=e.havingStyle(r.sup()),i=Ie.wrapFragment(Or(t.body,n,e),e),a=t.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(a+"-arrow-pad");var s;t.below&&(n=e.havingStyle(r.sub()),s=Ie.wrapFragment(Or(t.below,n,e),e),s.classes.push(a+"-arrow-pad"));var l=au.svgSpan(t,e),u=-e.fontMetrics().axisHeight+.5*l.height,h=-e.fontMetrics().axisHeight-.5*l.height-.111;(i.depth>.25||t.label==="\\xleftequilibrium")&&(h-=i.depth);var f;if(s){var d=-e.fontMetrics().axisHeight+s.height+.5*l.height+.111;f=Ie.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u},{type:"elem",elem:s,shift:d}]},e)}else f=Ie.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u}]},e);return f.children[0].children[0].children[1].classes.push("svg-align"),Ie.makeSpan(["mrel","x-arrow"],[f],e)},mathmlBuilder(t,e){var r=au.mathMLnode(t.label);r.setAttribute("minsize",t.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(t.body){var i=i4(mn(t.body,e));if(t.below){var a=i4(mn(t.below,e));n=new st.MathNode("munderover",[r,a,i])}else n=new st.MathNode("mover",[r,i])}else if(t.below){var s=i4(mn(t.below,e));n=new st.MathNode("munder",[r,s])}else n=i4(),n=new st.MathNode("mover",[r,n]);return n}});I4e=Ie.makeSpan;o(JG,"htmlBuilder$9");o(e$,"mathmlBuilder$8");Ct({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"mclass",mode:r.mode,mclass:"m"+n.slice(5),body:di(i),isCharacterBox:Jt.isCharacterBox(i)}},htmlBuilder:JG,mathmlBuilder:e$});b4=o(t=>{var e=t.type==="ordgroup"&&t.body.length?t.body[0]:t;return e.type==="atom"&&(e.family==="bin"||e.family==="rel")?"m"+e.family:"mord"},"binrelClass");Ct({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(t,e){var{parser:r}=t;return{type:"mclass",mode:r.mode,mclass:b4(e[0]),body:di(e[1]),isCharacterBox:Jt.isCharacterBox(e[1])}}});Ct({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(t,e){var{parser:r,funcName:n}=t,i=e[1],a=e[0],s;n!=="\\stackrel"?s=b4(i):s="mrel";var l={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:di(i)},u={type:"supsub",mode:a.mode,base:l,sup:n==="\\underset"?null:a,sub:n==="\\underset"?a:null};return{type:"mclass",mode:r.mode,mclass:s,body:[u],isCharacterBox:Jt.isCharacterBox(u)}},htmlBuilder:JG,mathmlBuilder:e$});Ct({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"pmb",mode:r.mode,mclass:b4(e[0]),body:di(e[0])}},htmlBuilder(t,e){var r=Ii(t.body,e,!0),n=Ie.makeSpan([t.mclass],r,e);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(t,e){var r=gs(t.body,e),n=new st.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});O4e={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},mG=o(()=>({type:"styling",body:[],mode:"math",style:"display"}),"newCell"),gG=o(t=>t.type==="textord"&&t.text==="@","isStartOfArrow"),P4e=o((t,e)=>(t.type==="mathord"||t.type==="atom")&&t.text===e,"isLabelEnd");o(B4e,"cdArrow");o(F4e,"parseCD");Ct({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:e[0]}},htmlBuilder(t,e){var r=e.havingStyle(e.style.sup()),n=Ie.wrapFragment(Or(t.label,r,e),e);return n.classes.push("cd-label-"+t.side),n.style.bottom=mt(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(t,e){var r=new st.MathNode("mrow",[mn(t.label,e)]);return r=new st.MathNode("mpadded",[r]),r.setAttribute("width","0"),t.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new st.MathNode("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}});Ct({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(t,e){var{parser:r}=t;return{type:"cdlabelparent",mode:r.mode,fragment:e[0]}},htmlBuilder(t,e){var r=Ie.wrapFragment(Or(t.fragment,e),e);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(t,e){return new st.MathNode("mrow",[mn(t.fragment,e)])}});Ct({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(t,e){for(var{parser:r}=t,n=yr(e[0],"ordgroup"),i=n.body,a="",s=0;s=1114111)throw new ut("\\@char with invalid code point "+a);return u<=65535?h=String.fromCharCode(u):(u-=65536,h=String.fromCharCode((u>>10)+55296,(u&1023)+56320)),{type:"textord",mode:r.mode,text:h}}});t$=o((t,e)=>{var r=Ii(t.body,e.withColor(t.color),!1);return Ie.makeFragment(r)},"htmlBuilder$8"),r$=o((t,e)=>{var r=gs(t.body,e.withColor(t.color)),n=new st.MathNode("mstyle",r);return n.setAttribute("mathcolor",t.color),n},"mathmlBuilder$7");Ct({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(t,e){var{parser:r}=t,n=yr(e[0],"color-token").color,i=e[1];return{type:"color",mode:r.mode,color:n,body:di(i)}},htmlBuilder:t$,mathmlBuilder:r$});Ct({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(t,e){var{parser:r,breakOnTokenText:n}=t,i=yr(e[0],"color-token").color;r.gullet.macros.set("\\current@color",i);var a=r.parseExpression(!0,n);return{type:"color",mode:r.mode,color:i,body:a}},htmlBuilder:t$,mathmlBuilder:r$});Ct({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(t,e,r){var{parser:n}=t,i=n.gullet.future().text==="["?n.parseSizeGroup(!0):null,a=!n.settings.displayMode||!n.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:n.mode,newLine:a,size:i&&yr(i,"size").value}},htmlBuilder(t,e){var r=Ie.makeSpan(["mspace"],[],e);return t.newLine&&(r.classes.push("newline"),t.size&&(r.style.marginTop=mt(Qn(t.size,e)))),r},mathmlBuilder(t,e){var r=new st.MathNode("mspace");return t.newLine&&(r.setAttribute("linebreak","newline"),t.size&&r.setAttribute("height",mt(Qn(t.size,e)))),r}});CC={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},n$=o(t=>{var e=t.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new ut("Expected a control sequence",t);return e},"checkControlSequence"),z4e=o(t=>{var e=t.gullet.popToken();return e.text==="="&&(e=t.gullet.popToken(),e.text===" "&&(e=t.gullet.popToken())),e},"getRHS"),i$=o((t,e,r,n)=>{var i=t.gullet.macros.get(r.text);i==null&&(r.noexpand=!0,i={tokens:[r],numArgs:0,unexpandable:!t.gullet.isExpandable(r.text)}),t.gullet.macros.set(e,i,n)},"letCommand");Ct({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e,funcName:r}=t;e.consumeSpaces();var n=e.fetch();if(CC[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=CC[n.text]),yr(e.parseFunction(),"internal");throw new ut("Invalid token after macro prefix",n)}});Ct({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=e.gullet.popToken(),i=n.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new ut("Expected a control sequence",n);for(var a=0,s,l=[[]];e.gullet.future().text!=="{";)if(n=e.gullet.popToken(),n.text==="#"){if(e.gullet.future().text==="{"){s=e.gullet.future(),l[a].push("{");break}if(n=e.gullet.popToken(),!/^[1-9]$/.test(n.text))throw new ut('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new ut('Argument number "'+n.text+'" out of order');a++,l.push([])}else{if(n.text==="EOF")throw new ut("Expected a macro definition");l[a].push(n.text)}var{tokens:u}=e.gullet.consumeArg();return s&&u.unshift(s),(r==="\\edef"||r==="\\xdef")&&(u=e.gullet.expandTokens(u),u.reverse()),e.gullet.macros.set(i,{tokens:u,numArgs:a,delimiters:l},r===CC[r]),{type:"internal",mode:e.mode}}});Ct({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=n$(e.gullet.popToken());e.gullet.consumeSpaces();var i=z4e(e);return i$(e,n,i,r==="\\\\globallet"),{type:"internal",mode:e.mode}}});Ct({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=n$(e.gullet.popToken()),i=e.gullet.popToken(),a=e.gullet.popToken();return i$(e,n,a,r==="\\\\globalfuture"),e.gullet.pushToken(a),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});K1=o(function(e,r,n){var i=En.math[e]&&En.math[e].replace,a=RC(i||e,r,n);if(!a)throw new Error("Unsupported symbol "+e+" and font size "+r+".");return a},"getMetrics"),FC=o(function(e,r,n,i){var a=n.havingBaseStyle(r),s=Ie.makeSpan(i.concat(a.sizingClasses(n)),[e],n),l=a.sizeMultiplier/n.sizeMultiplier;return s.height*=l,s.depth*=l,s.maxFontSize=a.sizeMultiplier,s},"styleWrap"),a$=o(function(e,r,n){var i=r.havingBaseStyle(n),a=(1-r.sizeMultiplier/i.sizeMultiplier)*r.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=mt(a),e.height-=a,e.depth+=a},"centerSpan"),G4e=o(function(e,r,n,i,a,s){var l=Ie.makeSymbol(e,"Main-Regular",a,i),u=FC(l,r,i,s);return n&&a$(u,i,r),u},"makeSmallDelim"),$4e=o(function(e,r,n,i){return Ie.makeSymbol(e,"Size"+r+"-Regular",n,i)},"mathrmSize"),s$=o(function(e,r,n,i,a,s){var l=$4e(e,r,a,i),u=FC(Ie.makeSpan(["delimsizing","size"+r],[l],i),rr.TEXT,i,s);return n&&a$(u,i,rr.TEXT),u},"makeLargeDelim"),uC=o(function(e,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=Ie.makeSpan(["delimsizinginner",i],[Ie.makeSpan([],[Ie.makeSymbol(e,r,n)])]);return{type:"elem",elem:a}},"makeGlyphSpan"),hC=o(function(e,r,n){var i=Zl["Size4-Regular"][e.charCodeAt(0)]?Zl["Size4-Regular"][e.charCodeAt(0)][4]:Zl["Size1-Regular"][e.charCodeAt(0)][4],a=new Jl("inner",jbe(e,Math.round(1e3*r))),s=new fl([a],{width:mt(i),height:mt(r),style:"width:"+mt(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),l=Ie.makeSvgSpan([],[s],n);return l.height=r,l.style.height=mt(r),l.style.width=mt(i),{type:"elem",elem:l}},"makeInner"),AC=.008,a4={type:"kern",size:-1*AC},V4e=["|","\\lvert","\\rvert","\\vert"],U4e=["\\|","\\lVert","\\rVert","\\Vert"],o$=o(function(e,r,n,i,a,s){var l,u,h,f,d="",p=0;l=h=f=e,u=null;var m="Size1-Regular";e==="\\uparrow"?h=f="\u23D0":e==="\\Uparrow"?h=f="\u2016":e==="\\downarrow"?l=h="\u23D0":e==="\\Downarrow"?l=h="\u2016":e==="\\updownarrow"?(l="\\uparrow",h="\u23D0",f="\\downarrow"):e==="\\Updownarrow"?(l="\\Uparrow",h="\u2016",f="\\Downarrow"):Jt.contains(V4e,e)?(h="\u2223",d="vert",p=333):Jt.contains(U4e,e)?(h="\u2225",d="doublevert",p=556):e==="["||e==="\\lbrack"?(l="\u23A1",h="\u23A2",f="\u23A3",m="Size4-Regular",d="lbrack",p=667):e==="]"||e==="\\rbrack"?(l="\u23A4",h="\u23A5",f="\u23A6",m="Size4-Regular",d="rbrack",p=667):e==="\\lfloor"||e==="\u230A"?(h=l="\u23A2",f="\u23A3",m="Size4-Regular",d="lfloor",p=667):e==="\\lceil"||e==="\u2308"?(l="\u23A1",h=f="\u23A2",m="Size4-Regular",d="lceil",p=667):e==="\\rfloor"||e==="\u230B"?(h=l="\u23A5",f="\u23A6",m="Size4-Regular",d="rfloor",p=667):e==="\\rceil"||e==="\u2309"?(l="\u23A4",h=f="\u23A5",m="Size4-Regular",d="rceil",p=667):e==="("||e==="\\lparen"?(l="\u239B",h="\u239C",f="\u239D",m="Size4-Regular",d="lparen",p=875):e===")"||e==="\\rparen"?(l="\u239E",h="\u239F",f="\u23A0",m="Size4-Regular",d="rparen",p=875):e==="\\{"||e==="\\lbrace"?(l="\u23A7",u="\u23A8",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\}"||e==="\\rbrace"?(l="\u23AB",u="\u23AC",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lgroup"||e==="\u27EE"?(l="\u23A7",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\rgroup"||e==="\u27EF"?(l="\u23AB",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lmoustache"||e==="\u23B0"?(l="\u23A7",f="\u23AD",h="\u23AA",m="Size4-Regular"):(e==="\\rmoustache"||e==="\u23B1")&&(l="\u23AB",f="\u23A9",h="\u23AA",m="Size4-Regular");var g=K1(l,m,a),y=g.height+g.depth,v=K1(h,m,a),x=v.height+v.depth,b=K1(f,m,a),w=b.height+b.depth,_=0,T=1;if(u!==null){var E=K1(u,m,a);_=E.height+E.depth,T=2}var L=y+w+_,C=Math.max(0,Math.ceil((r-L)/(T*x))),A=L+C*T*x,I=i.fontMetrics().axisHeight;n&&(I*=i.sizeMultiplier);var D=A/2-I,k=[];if(d.length>0){var R=A-y-w,S=Math.round(A*1e3),O=Kbe(d,Math.round(R*1e3)),N=new Jl(d,O),P=(p/1e3).toFixed(3)+"em",F=(S/1e3).toFixed(3)+"em",B=new fl([N],{width:P,height:F,viewBox:"0 0 "+p+" "+S}),$=Ie.makeSvgSpan([],[B],i);$.height=S/1e3,$.style.width=P,$.style.height=F,k.push({type:"elem",elem:$})}else{if(k.push(uC(f,m,a)),k.push(a4),u===null){var z=A-y-w+2*AC;k.push(hC(h,z,i))}else{var W=(A-y-w-_)/2+2*AC;k.push(hC(h,W,i)),k.push(a4),k.push(uC(u,m,a)),k.push(a4),k.push(hC(h,W,i))}k.push(a4),k.push(uC(l,m,a))}var j=i.havingBaseStyle(rr.TEXT),K=Ie.makeVList({positionType:"bottom",positionData:D,children:k},j);return FC(Ie.makeSpan(["delimsizing","mult"],[K],j),rr.TEXT,i,s)},"makeStackedDelim"),fC=80,dC=.08,pC=o(function(e,r,n,i,a){var s=Xbe(e,i,n),l=new Jl(e,s),u=new fl([l],{width:"400em",height:mt(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return Ie.makeSvgSpan(["hide-tail"],[u],a)},"sqrtSvg"),H4e=o(function(e,r){var n=r.havingBaseSizing(),i=h$("\\surd",e*n.sizeMultiplier,u$,n),a=n.sizeMultiplier,s=Math.max(0,r.minRuleThickness-r.fontMetrics().sqrtRuleThickness),l,u=0,h=0,f=0,d;return i.type==="small"?(f=1e3+1e3*s+fC,e<1?a=1:e<1.4&&(a=.7),u=(1+s+dC)/a,h=(1+s)/a,l=pC("sqrtMain",u,f,s,r),l.style.minWidth="0.853em",d=.833/a):i.type==="large"?(f=(1e3+fC)*Q1[i.size],h=(Q1[i.size]+s)/a,u=(Q1[i.size]+s+dC)/a,l=pC("sqrtSize"+i.size,u,f,s,r),l.style.minWidth="1.02em",d=1/a):(u=e+s+dC,h=e+s,f=Math.floor(1e3*e+s)+fC,l=pC("sqrtTall",u,f,s,r),l.style.minWidth="0.742em",d=1.056),l.height=h,l.style.height=mt(u),{span:l,advanceWidth:d,ruleWidth:(r.fontMetrics().sqrtRuleThickness+s)*a}},"makeSqrtImage"),l$=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","\\surd"],W4e=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1"],c$=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],Q1=[0,1.2,1.8,2.4,3],Y4e=o(function(e,r,n,i,a){if(e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle"),Jt.contains(l$,e)||Jt.contains(c$,e))return s$(e,r,!1,n,i,a);if(Jt.contains(W4e,e))return o$(e,Q1[r],!1,n,i,a);throw new ut("Illegal delimiter: '"+e+"'")},"makeSizedDelim"),q4e=[{type:"small",style:rr.SCRIPTSCRIPT},{type:"small",style:rr.SCRIPT},{type:"small",style:rr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],X4e=[{type:"small",style:rr.SCRIPTSCRIPT},{type:"small",style:rr.SCRIPT},{type:"small",style:rr.TEXT},{type:"stack"}],u$=[{type:"small",style:rr.SCRIPTSCRIPT},{type:"small",style:rr.SCRIPT},{type:"small",style:rr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],j4e=o(function(e){if(e.type==="small")return"Main-Regular";if(e.type==="large")return"Size"+e.size+"-Regular";if(e.type==="stack")return"Size4-Regular";throw new Error("Add support for delim type '"+e.type+"' here.")},"delimTypeToFont"),h$=o(function(e,r,n,i){for(var a=Math.min(2,3-i.style.size),s=a;sr)return n[s]}return n[n.length-1]},"traverseSequence"),f$=o(function(e,r,n,i,a,s){e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle");var l;Jt.contains(c$,e)?l=q4e:Jt.contains(l$,e)?l=u$:l=X4e;var u=h$(e,r,l,i);return u.type==="small"?G4e(e,u.style,n,i,a,s):u.type==="large"?s$(e,u.size,n,i,a,s):o$(e,r,n,i,a,s)},"makeCustomSizedDelim"),K4e=o(function(e,r,n,i,a,s){var l=i.fontMetrics().axisHeight*i.sizeMultiplier,u=901,h=5/i.fontMetrics().ptPerEm,f=Math.max(r-l,n+l),d=Math.max(f/500*u,2*f-h);return f$(e,d,!0,i,a,s)},"makeLeftRightDelim"),nu={sqrtImage:H4e,sizedDelim:Y4e,sizeToMaxHeight:Q1,customSizedDelim:f$,leftRightDelim:K4e},yG={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},Q4e=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27E8","\\rangle","\u27E9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];o(w4,"checkDelimiter");Ct({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:o((t,e)=>{var r=w4(e[0],t);return{type:"delimsizing",mode:t.parser.mode,size:yG[t.funcName].size,mclass:yG[t.funcName].mclass,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>t.delim==="."?Ie.makeSpan([t.mclass]):nu.sizedDelim(t.delim,t.size,e,t.mode,[t.mclass]),"htmlBuilder"),mathmlBuilder:o(t=>{var e=[];t.delim!=="."&&e.push(Ao(t.delim,t.mode));var r=new st.MathNode("mo",e);t.mclass==="mopen"||t.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=mt(nu.sizeToMaxHeight[t.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r},"mathmlBuilder")});o(vG,"assertParsed");Ct({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=t.parser.gullet.macros.get("\\current@color");if(r&&typeof r!="string")throw new ut("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:t.parser.mode,delim:w4(e[0],t).text,color:r}},"handler")});Ct({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=w4(e[0],t),n=t.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=yr(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:i,left:r.text,right:a.delim,rightColor:a.color}},"handler"),htmlBuilder:o((t,e)=>{vG(t);for(var r=Ii(t.body,e,!0,["mopen","mclose"]),n=0,i=0,a=!1,s=0;s{vG(t);var r=gs(t.body,e);if(t.left!=="."){var n=new st.MathNode("mo",[Ao(t.left,t.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(t.right!=="."){var i=new st.MathNode("mo",[Ao(t.right,t.mode)]);i.setAttribute("fence","true"),t.rightColor&&i.setAttribute("mathcolor",t.rightColor),r.push(i)}return IC(r)},"mathmlBuilder")});Ct({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=w4(e[0],t);if(!t.parser.leftrightDepth)throw new ut("\\middle without preceding \\left",r);return{type:"middle",mode:t.parser.mode,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>{var r;if(t.delim===".")r=ry(e,[]);else{r=nu.sizedDelim(t.delim,1,e,t.mode,[]);var n={delim:t.delim,options:e};r.isMiddle=n}return r},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=t.delim==="\\vert"||t.delim==="|"?Ao("|","text"):Ao(t.delim,t.mode),n=new st.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n},"mathmlBuilder")});zC=o((t,e)=>{var r=Ie.wrapFragment(Or(t.body,e),e),n=t.label.slice(1),i=e.sizeMultiplier,a,s=0,l=Jt.isCharacterBox(t.body);if(n==="sout")a=Ie.makeSpan(["stretchy","sout"]),a.height=e.fontMetrics().defaultRuleThickness/i,s=-.5*e.fontMetrics().xHeight;else if(n==="phase"){var u=Qn({number:.6,unit:"pt"},e),h=Qn({number:.35,unit:"ex"},e),f=e.havingBaseSizing();i=i/f.sizeMultiplier;var d=r.height+r.depth+u+h;r.style.paddingLeft=mt(d/2+u);var p=Math.floor(1e3*d*i),m=Ybe(p),g=new fl([new Jl("phase",m)],{width:"400em",height:mt(p/1e3),viewBox:"0 0 400000 "+p,preserveAspectRatio:"xMinYMin slice"});a=Ie.makeSvgSpan(["hide-tail"],[g],e),a.style.height=mt(d),s=r.depth+u+h}else{/cancel/.test(n)?l||r.classes.push("cancel-pad"):n==="angl"?r.classes.push("anglpad"):r.classes.push("boxpad");var y=0,v=0,x=0;/box/.test(n)?(x=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness),y=e.fontMetrics().fboxsep+(n==="colorbox"?0:x),v=y):n==="angl"?(x=Math.max(e.fontMetrics().defaultRuleThickness,e.minRuleThickness),y=4*x,v=Math.max(0,.25-r.depth)):(y=l?.2:0,v=y),a=au.encloseSpan(r,n,y,v,e),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=mt(x)):n==="angl"&&x!==.049&&(a.style.borderTopWidth=mt(x),a.style.borderRightWidth=mt(x)),s=r.depth+v,t.backgroundColor&&(a.style.backgroundColor=t.backgroundColor,t.borderColor&&(a.style.borderColor=t.borderColor))}var b;if(t.backgroundColor)b=Ie.makeVList({positionType:"individualShift",children:[{type:"elem",elem:a,shift:s},{type:"elem",elem:r,shift:0}]},e);else{var w=/cancel|phase/.test(n)?["svg-align"]:[];b=Ie.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:0},{type:"elem",elem:a,shift:s,wrapperClasses:w}]},e)}return/cancel/.test(n)&&(b.height=r.height,b.depth=r.depth),/cancel/.test(n)&&!l?Ie.makeSpan(["mord","cancel-lap"],[b],e):Ie.makeSpan(["mord"],[b],e)},"htmlBuilder$7"),GC=o((t,e)=>{var r=0,n=new st.MathNode(t.label.indexOf("colorbox")>-1?"mpadded":"menclose",[mn(t.body,e)]);switch(t.label){case"\\cancel":n.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":n.setAttribute("notation","downdiagonalstrike");break;case"\\phase":n.setAttribute("notation","phasorangle");break;case"\\sout":n.setAttribute("notation","horizontalstrike");break;case"\\fbox":n.setAttribute("notation","box");break;case"\\angl":n.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=e.fontMetrics().fboxsep*e.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),t.label==="\\fcolorbox"){var i=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness);n.setAttribute("style","border: "+i+"em solid "+String(t.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return t.backgroundColor&&n.setAttribute("mathbackground",t.backgroundColor),n},"mathmlBuilder$6");Ct({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=yr(e[0],"color-token").color,s=e[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:s}},htmlBuilder:zC,mathmlBuilder:GC});Ct({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=yr(e[0],"color-token").color,s=yr(e[1],"color-token").color,l=e[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:s,borderColor:a,body:l}},htmlBuilder:zC,mathmlBuilder:GC});Ct({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\fbox",body:e[0]}}});Ct({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"enclose",mode:r.mode,label:n,body:i}},htmlBuilder:zC,mathmlBuilder:GC});Ct({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\angl",body:e[0]}}});d$={};o(ec,"defineEnvironment");p$={};o(le,"defineMacro");o(xG,"getHLines");T4=o(t=>{var e=t.parser.settings;if(!e.displayMode)throw new ut("{"+t.envName+"} can be used only in display mode.")},"validateAmsEnvironmentContext");o($C,"getAutoTag");o(uh,"parseArray");o(VC,"dCellStyle");tc=o(function(e,r){var n,i,a=e.body.length,s=e.hLinesBeforeRow,l=0,u=new Array(a),h=[],f=Math.max(r.fontMetrics().arrayRuleWidth,r.minRuleThickness),d=1/r.fontMetrics().ptPerEm,p=5*d;if(e.colSeparationType&&e.colSeparationType==="small"){var m=r.havingStyle(rr.SCRIPT).sizeMultiplier;p=.2778*(m/r.sizeMultiplier)}var g=e.colSeparationType==="CD"?Qn({number:3,unit:"ex"},r):12*d,y=3*d,v=e.arraystretch*g,x=.7*v,b=.3*v,w=0;function _(ke){for(var Fe=0;Fe0&&(w+=.25),h.push({pos:w,isDashed:ke[Fe]})}for(o(_,"setHLinePos"),_(s[0]),n=0;n0&&(D+=b,Lke))for(n=0;n=l)){var ee=void 0;(i>0||e.hskipBeforeAndAfter)&&(ee=Jt.deflt(W.pregap,p),ee!==0&&(O=Ie.makeSpan(["arraycolsep"],[]),O.style.width=mt(ee),S.push(O)));var J=[];for(n=0;n0){for(var ae=Ie.makeLineSpan("hline",r,f),ue=Ie.makeLineSpan("hdashline",r,f),ce=[{type:"elem",elem:u,shift:0}];h.length>0;){var te=h.pop(),De=te.pos-k;te.isDashed?ce.push({type:"elem",elem:ue,shift:De}):ce.push({type:"elem",elem:ae,shift:De})}u=Ie.makeVList({positionType:"individualShift",children:ce},r)}if(P.length===0)return Ie.makeSpan(["mord"],[u],r);var oe=Ie.makeVList({positionType:"individualShift",children:P},r);return oe=Ie.makeSpan(["tag"],[oe],r),Ie.makeFragment([u,oe])},"htmlBuilder"),Z4e={c:"center ",l:"left ",r:"right "},rc=o(function(e,r){for(var n=[],i=new st.MathNode("mtd",[],["mtr-glue"]),a=new st.MathNode("mtd",[],["mml-eqn-num"]),s=0;s0){var g=e.cols,y="",v=!1,x=0,b=g.length;g[0].type==="separator"&&(p+="top ",x=1),g[g.length-1].type==="separator"&&(p+="bottom ",b-=1);for(var w=x;w0?"left ":"",p+=C[C.length-1].length>0?"right ":"";for(var A=1;A-1?"alignat":"align",a=e.envName==="split",s=uh(e.parser,{cols:n,addJot:!0,autoTag:a?void 0:$C(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:a?2:void 0,leqno:e.parser.settings.leqno},"display"),l,u=0,h={type:"ordgroup",mode:e.mode,body:[]};if(r[0]&&r[0].type==="ordgroup"){for(var f="",d=0;d0&&m&&(v=1),n[g]={type:"align",align:y,pregap:v,postgap:0}}return s.colSeparationType=m?"align":"alignat",s},"alignedHandler");ec({type:"array",names:["array","darray"],props:{numArgs:1},handler(t,e){var r=x4(e[0]),n=r?[e[0]]:yr(e[0],"ordgroup").body,i=n.map(function(s){var l=PC(s),u=l.text;if("lcr".indexOf(u)!==-1)return{type:"align",align:u};if(u==="|")return{type:"separator",separator:"|"};if(u===":")return{type:"separator",separator:":"};throw new ut("Unknown column alignment: "+u,s)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return uh(t.parser,a,VC(t.envName))},htmlBuilder:tc,mathmlBuilder:rc});ec({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(t){var e={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[t.envName.replace("*","")],r="c",n={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if(t.envName.charAt(t.envName.length-1)==="*"){var i=t.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,"lcr".indexOf(r)===-1)throw new ut("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=uh(t.parser,n,VC(t.envName)),s=Math.max(0,...a.body.map(l=>l.length));return a.cols=new Array(s).fill({type:"align",align:r}),e?{type:"leftright",mode:t.mode,body:[a],left:e[0],right:e[1],rightColor:void 0}:a},htmlBuilder:tc,mathmlBuilder:rc});ec({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(t){var e={arraystretch:.5},r=uh(t.parser,e,"script");return r.colSeparationType="small",r},htmlBuilder:tc,mathmlBuilder:rc});ec({type:"array",names:["subarray"],props:{numArgs:1},handler(t,e){var r=x4(e[0]),n=r?[e[0]]:yr(e[0],"ordgroup").body,i=n.map(function(s){var l=PC(s),u=l.text;if("lc".indexOf(u)!==-1)return{type:"align",align:u};throw new ut("Unknown column alignment: "+u,s)});if(i.length>1)throw new ut("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5};if(a=uh(t.parser,a,"script"),a.body.length>0&&a.body[0].length>1)throw new ut("{subarray} can contain only one column");return a},htmlBuilder:tc,mathmlBuilder:rc});ec({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(t){var e={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},r=uh(t.parser,e,VC(t.envName));return{type:"leftright",mode:t.mode,body:[r],left:t.envName.indexOf("r")>-1?".":"\\{",right:t.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:tc,mathmlBuilder:rc});ec({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:m$,htmlBuilder:tc,mathmlBuilder:rc});ec({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(t){Jt.contains(["gather","gather*"],t.envName)&&T4(t);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:$C(t.envName),emptySingleRow:!0,leqno:t.parser.settings.leqno};return uh(t.parser,e,"display")},htmlBuilder:tc,mathmlBuilder:rc});ec({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:m$,htmlBuilder:tc,mathmlBuilder:rc});ec({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(t){T4(t);var e={autoTag:$C(t.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:t.parser.settings.leqno};return uh(t.parser,e,"display")},htmlBuilder:tc,mathmlBuilder:rc});ec({type:"array",names:["CD"],props:{numArgs:0},handler(t){return T4(t),F4e(t.parser)},htmlBuilder:tc,mathmlBuilder:rc});le("\\nonumber","\\gdef\\@eqnsw{0}");le("\\notag","\\nonumber");Ct({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(t,e){throw new ut(t.funcName+" valid only within array environment")}});bG=d$;Ct({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];if(i.type!=="ordgroup")throw new ut("Invalid environment name",i);for(var a="",s=0;s{var r=t.font,n=e.withFont(r);return Or(t.body,n)},"htmlBuilder$5"),y$=o((t,e)=>{var r=t.font,n=e.withFont(r);return mn(t.body,n)},"mathmlBuilder$4"),wG={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};Ct({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=p4(e[0]),a=n;return a in wG&&(a=wG[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},"handler"),htmlBuilder:g$,mathmlBuilder:y$});Ct({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r}=t,n=e[0],i=Jt.isCharacterBox(n);return{type:"mclass",mode:r.mode,mclass:b4(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:i}},"handler")});Ct({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n,breakOnTokenText:i}=t,{mode:a}=r,s=r.parseExpression(!0,i),l="math"+n.slice(1);return{type:"font",mode:a,font:l,body:{type:"ordgroup",mode:r.mode,body:s}}},"handler"),htmlBuilder:g$,mathmlBuilder:y$});v$=o((t,e)=>{var r=e;return t==="display"?r=r.id>=rr.SCRIPT.id?r.text():rr.DISPLAY:t==="text"&&r.size===rr.DISPLAY.size?r=rr.TEXT:t==="script"?r=rr.SCRIPT:t==="scriptscript"&&(r=rr.SCRIPTSCRIPT),r},"adjustStyle"),UC=o((t,e)=>{var r=v$(t.size,e.style),n=r.fracNum(),i=r.fracDen(),a;a=e.havingStyle(n);var s=Or(t.numer,a,e);if(t.continued){var l=8.5/e.fontMetrics().ptPerEm,u=3.5/e.fontMetrics().ptPerEm;s.height=s.height0?g=3*p:g=7*p,y=e.fontMetrics().denom1):(d>0?(m=e.fontMetrics().num2,g=p):(m=e.fontMetrics().num3,g=3*p),y=e.fontMetrics().denom2);var v;if(f){var b=e.fontMetrics().axisHeight;m-s.depth-(b+.5*d){var r=new st.MathNode("mfrac",[mn(t.numer,e),mn(t.denom,e)]);if(!t.hasBarLine)r.setAttribute("linethickness","0px");else if(t.barSize){var n=Qn(t.barSize,e);r.setAttribute("linethickness",mt(n))}var i=v$(t.size,e.style);if(i.size!==e.style.size){r=new st.MathNode("mstyle",[r]);var a=i.size===rr.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",a),r.setAttribute("scriptlevel","0")}if(t.leftDelim!=null||t.rightDelim!=null){var s=[];if(t.leftDelim!=null){var l=new st.MathNode("mo",[new st.TextNode(t.leftDelim.replace("\\",""))]);l.setAttribute("fence","true"),s.push(l)}if(s.push(r),t.rightDelim!=null){var u=new st.MathNode("mo",[new st.TextNode(t.rightDelim.replace("\\",""))]);u.setAttribute("fence","true"),s.push(u)}return IC(s)}return r},"mathmlBuilder$3");Ct({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1],s,l=null,u=null,h="auto";switch(n){case"\\dfrac":case"\\frac":case"\\tfrac":s=!0;break;case"\\\\atopfrac":s=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":s=!1,l="(",u=")";break;case"\\\\bracefrac":s=!1,l="\\{",u="\\}";break;case"\\\\brackfrac":s=!1,l="[",u="]";break;default:throw new Error("Unrecognized genfrac command")}switch(n){case"\\dfrac":case"\\dbinom":h="display";break;case"\\tfrac":case"\\tbinom":h="text";break}return{type:"genfrac",mode:r.mode,continued:!1,numer:i,denom:a,hasBarLine:s,leftDelim:l,rightDelim:u,size:h,barSize:null}},"handler"),htmlBuilder:UC,mathmlBuilder:HC});Ct({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:i,denom:a,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}},"handler")});Ct({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(t){var{parser:e,funcName:r,token:n}=t,i;switch(r){case"\\over":i="\\frac";break;case"\\choose":i="\\binom";break;case"\\atop":i="\\\\atopfrac";break;case"\\brace":i="\\\\bracefrac";break;case"\\brack":i="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:e.mode,replaceWith:i,token:n}}});TG=["display","text","script","scriptscript"],kG=o(function(e){var r=null;return e.length>0&&(r=e,r=r==="."?null:r),r},"delimFromValue");Ct({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(t,e){var{parser:r}=t,n=e[4],i=e[5],a=p4(e[0]),s=a.type==="atom"&&a.family==="open"?kG(a.text):null,l=p4(e[1]),u=l.type==="atom"&&l.family==="close"?kG(l.text):null,h=yr(e[2],"size"),f,d=null;h.isBlank?f=!0:(d=h.value,f=d.number>0);var p="auto",m=e[3];if(m.type==="ordgroup"){if(m.body.length>0){var g=yr(m.body[0],"textord");p=TG[Number(g.text)]}}else m=yr(m,"textord"),p=TG[Number(m.text)];return{type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:f,barSize:d,leftDelim:s,rightDelim:u,size:p}},htmlBuilder:UC,mathmlBuilder:HC});Ct({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(t,e){var{parser:r,funcName:n,token:i}=t;return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:yr(e[0],"size").value,token:i}}});Ct({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=Nbe(yr(e[1],"infix").size),s=e[2],l=a.number>0;return{type:"genfrac",mode:r.mode,numer:i,denom:s,continued:!1,hasBarLine:l,barSize:a,leftDelim:null,rightDelim:null,size:"auto"}},"handler"),htmlBuilder:UC,mathmlBuilder:HC});x$=o((t,e)=>{var r=e.style,n,i;t.type==="supsub"?(n=t.sup?Or(t.sup,e.havingStyle(r.sup()),e):Or(t.sub,e.havingStyle(r.sub()),e),i=yr(t.base,"horizBrace")):i=yr(t,"horizBrace");var a=Or(i.base,e.havingBaseStyle(rr.DISPLAY)),s=au.svgSpan(i,e),l;if(i.isOver?(l=Ie.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:.1},{type:"elem",elem:s}]},e),l.children[0].children[0].children[1].classes.push("svg-align")):(l=Ie.makeVList({positionType:"bottom",positionData:a.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:a}]},e),l.children[0].children[0].children[0].classes.push("svg-align")),n){var u=Ie.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e);i.isOver?l=Ie.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:.2},{type:"elem",elem:n}]},e):l=Ie.makeVList({positionType:"bottom",positionData:u.depth+.2+n.height+n.depth,children:[{type:"elem",elem:n},{type:"kern",size:.2},{type:"elem",elem:u}]},e)}return Ie.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e)},"htmlBuilder$3"),J4e=o((t,e)=>{var r=au.mathMLnode(t.label);return new st.MathNode(t.isOver?"mover":"munder",[mn(t.base,e),r])},"mathmlBuilder$2");Ct({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:e[0]}},htmlBuilder:x$,mathmlBuilder:J4e});Ct({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[1],i=yr(e[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:di(n)}:r.formatUnsupportedCmd("\\href")},"handler"),htmlBuilder:o((t,e)=>{var r=Ii(t.body,e,!1);return Ie.makeAnchor(t.href,[],r,e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=ch(t.body,e);return r instanceof ps||(r=new ps("mrow",[r])),r.setAttribute("href",t.href),r},"mathmlBuilder")});Ct({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=yr(e[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var i=[],a=0;a{var{parser:r,funcName:n,token:i}=t,a=yr(e[0],"raw").string,s=e[1];r.settings.strict&&r.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var l,u={};switch(n){case"\\htmlClass":u.class=a,l={command:"\\htmlClass",class:a};break;case"\\htmlId":u.id=a,l={command:"\\htmlId",id:a};break;case"\\htmlStyle":u.style=a,l={command:"\\htmlStyle",style:a};break;case"\\htmlData":{for(var h=a.split(","),f=0;f{var r=Ii(t.body,e,!1),n=["enclosing"];t.attributes.class&&n.push(...t.attributes.class.trim().split(/\s+/));var i=Ie.makeSpan(n,r,e);for(var a in t.attributes)a!=="class"&&t.attributes.hasOwnProperty(a)&&i.setAttribute(a,t.attributes[a]);return i},"htmlBuilder"),mathmlBuilder:o((t,e)=>ch(t.body,e),"mathmlBuilder")});Ct({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"htmlmathml",mode:r.mode,html:di(e[0]),mathml:di(e[1])}},"handler"),htmlBuilder:o((t,e)=>{var r=Ii(t.html,e,!1);return Ie.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>ch(t.mathml,e),"mathmlBuilder")});mC=o(function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!r)throw new ut("Invalid size: '"+e+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!FG(n))throw new ut("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n},"sizeData");Ct({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:o((t,e,r)=>{var{parser:n}=t,i={number:0,unit:"em"},a={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(r[0])for(var u=yr(r[0],"raw").string,h=u.split(","),f=0;f{var r=Qn(t.height,e),n=0;t.totalheight.number>0&&(n=Qn(t.totalheight,e)-r);var i=0;t.width.number>0&&(i=Qn(t.width,e));var a={height:mt(r+n)};i>0&&(a.width=mt(i)),n>0&&(a.verticalAlign=mt(-n));var s=new wC(t.src,t.alt,a);return s.height=r,s.depth=n,s},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new st.MathNode("mglyph",[]);r.setAttribute("alt",t.alt);var n=Qn(t.height,e),i=0;if(t.totalheight.number>0&&(i=Qn(t.totalheight,e)-n,r.setAttribute("valign",mt(-i))),r.setAttribute("height",mt(n+i)),t.width.number>0){var a=Qn(t.width,e);r.setAttribute("width",mt(a))}return r.setAttribute("src",t.src),r},"mathmlBuilder")});Ct({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=yr(e[0],"size");if(r.settings.strict){var a=n[1]==="m",s=i.value.unit==="mu";a?(s||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" supports only mu units, "+("not "+i.value.unit+" units")),r.mode!=="math"&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" works only in math mode")):s&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:i.value}},htmlBuilder(t,e){return Ie.makeGlue(t.dimension,e)},mathmlBuilder(t,e){var r=Qn(t.dimension,e);return new st.SpaceNode(r)}});Ct({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:i}},"handler"),htmlBuilder:o((t,e)=>{var r;t.alignment==="clap"?(r=Ie.makeSpan([],[Or(t.body,e)]),r=Ie.makeSpan(["inner"],[r],e)):r=Ie.makeSpan(["inner"],[Or(t.body,e)]);var n=Ie.makeSpan(["fix"],[]),i=Ie.makeSpan([t.alignment],[r,n],e),a=Ie.makeSpan(["strut"]);return a.style.height=mt(i.height+i.depth),i.depth&&(a.style.verticalAlign=mt(-i.depth)),i.children.unshift(a),i=Ie.makeSpan(["thinbox"],[i],e),Ie.makeSpan(["mord","vbox"],[i],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new st.MathNode("mpadded",[mn(t.body,e)]);if(t.alignment!=="rlap"){var n=t.alignment==="llap"?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r},"mathmlBuilder")});Ct({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){var{funcName:r,parser:n}=t,i=n.mode;n.switchMode("math");var a=r==="\\("?"\\)":"$",s=n.parseExpression(!1,a);return n.expect(a),n.switchMode(i),{type:"styling",mode:n.mode,style:"text",body:s}}});Ct({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){throw new ut("Mismatched "+t.funcName)}});EG=o((t,e)=>{switch(e.style.size){case rr.DISPLAY.size:return t.display;case rr.TEXT.size:return t.text;case rr.SCRIPT.size:return t.script;case rr.SCRIPTSCRIPT.size:return t.scriptscript;default:return t.text}},"chooseMathStyle");Ct({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"mathchoice",mode:r.mode,display:di(e[0]),text:di(e[1]),script:di(e[2]),scriptscript:di(e[3])}},"handler"),htmlBuilder:o((t,e)=>{var r=EG(t,e),n=Ii(r,e,!1);return Ie.makeFragment(n)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=EG(t,e);return ch(r,e)},"mathmlBuilder")});b$=o((t,e,r,n,i,a,s)=>{t=Ie.makeSpan([],[t]);var l=r&&Jt.isCharacterBox(r),u,h;if(e){var f=Or(e,n.havingStyle(i.sup()),n);h={elem:f,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-f.depth)}}if(r){var d=Or(r,n.havingStyle(i.sub()),n);u={elem:d,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-d.height)}}var p;if(h&&u){var m=n.fontMetrics().bigOpSpacing5+u.elem.height+u.elem.depth+u.kern+t.depth+s;p=Ie.makeVList({positionType:"bottom",positionData:m,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:mt(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:mt(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(u){var g=t.height-s;p=Ie.makeVList({positionType:"top",positionData:g,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:mt(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t}]},n)}else if(h){var y=t.depth+s;p=Ie.makeVList({positionType:"bottom",positionData:y,children:[{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:mt(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else return t;var v=[p];if(u&&a!==0&&!l){var x=Ie.makeSpan(["mspace"],[],n);x.style.marginRight=mt(a),v.unshift(x)}return Ie.makeSpan(["mop","op-limits"],v,n)},"assembleSupSub"),w$=["\\smallint"],pp=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=yr(t.base,"op"),i=!0):a=yr(t,"op");var s=e.style,l=!1;s.size===rr.DISPLAY.size&&a.symbol&&!Jt.contains(w$,a.name)&&(l=!0);var u;if(a.symbol){var h=l?"Size2-Regular":"Size1-Regular",f="";if((a.name==="\\oiint"||a.name==="\\oiiint")&&(f=a.name.slice(1),a.name=f==="oiint"?"\\iint":"\\iiint"),u=Ie.makeSymbol(a.name,h,"math",e,["mop","op-symbol",l?"large-op":"small-op"]),f.length>0){var d=u.italic,p=Ie.staticSvg(f+"Size"+(l?"2":"1"),e);u=Ie.makeVList({positionType:"individualShift",children:[{type:"elem",elem:u,shift:0},{type:"elem",elem:p,shift:l?.08:0}]},e),a.name="\\"+f,u.classes.unshift("mop"),u.italic=d}}else if(a.body){var m=Ii(a.body,e,!0);m.length===1&&m[0]instanceof ms?(u=m[0],u.classes[0]="mop"):u=Ie.makeSpan(["mop"],m,e)}else{for(var g=[],y=1;y{var r;if(t.symbol)r=new ps("mo",[Ao(t.name,t.mode)]),Jt.contains(w$,t.name)&&r.setAttribute("largeop","false");else if(t.body)r=new ps("mo",gs(t.body,e));else{r=new ps("mi",[new Wf(t.name.slice(1))]);var n=new ps("mo",[Ao("\u2061","text")]);t.parentIsSupSub?r=new ps("mrow",[r,n]):r=jG([r,n])}return r},"mathmlBuilder$1"),e3e={"\u220F":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22C0":"\\bigwedge","\u22C1":"\\bigvee","\u22C2":"\\bigcap","\u22C3":"\\bigcup","\u2A00":"\\bigodot","\u2A01":"\\bigoplus","\u2A02":"\\bigotimes","\u2A04":"\\biguplus","\u2A06":"\\bigsqcup"};Ct({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","\u220F","\u2210","\u2211","\u22C0","\u22C1","\u22C2","\u22C3","\u2A00","\u2A01","\u2A02","\u2A04","\u2A06"],props:{numArgs:0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=n;return i.length===1&&(i=e3e[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},"handler"),htmlBuilder:pp,mathmlBuilder:ny});Ct({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:di(n)}},"handler"),htmlBuilder:pp,mathmlBuilder:ny});t3e={"\u222B":"\\int","\u222C":"\\iint","\u222D":"\\iiint","\u222E":"\\oint","\u222F":"\\oiint","\u2230":"\\oiiint"};Ct({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:pp,mathmlBuilder:ny});Ct({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:pp,mathmlBuilder:ny});Ct({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222B","\u222C","\u222D","\u222E","\u222F","\u2230"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t,n=r;return n.length===1&&(n=t3e[n]),{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:pp,mathmlBuilder:ny});T$=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=yr(t.base,"operatorname"),i=!0):a=yr(t,"operatorname");var s;if(a.body.length>0){for(var l=a.body.map(d=>{var p=d.text;return typeof p=="string"?{type:"textord",mode:d.mode,text:p}:d}),u=Ii(l,e.withFont("mathrm"),!0),h=0;h{for(var r=gs(t.body,e.withFont("mathrm")),n=!0,i=0;if.toText()).join("");r=[new st.TextNode(l)]}var u=new st.MathNode("mi",r);u.setAttribute("mathvariant","normal");var h=new st.MathNode("mo",[Ao("\u2061","text")]);return t.parentIsSupSub?new st.MathNode("mrow",[u,h]):st.newDocumentFragment([u,h])},"mathmlBuilder");Ct({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"operatorname",mode:r.mode,body:di(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},"handler"),htmlBuilder:T$,mathmlBuilder:r3e});le("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");Xf({type:"ordgroup",htmlBuilder(t,e){return t.semisimple?Ie.makeFragment(Ii(t.body,e,!1)):Ie.makeSpan(["mord"],Ii(t.body,e,!0),e)},mathmlBuilder(t,e){return ch(t.body,e,!0)}});Ct({type:"overline",names:["\\overline"],props:{numArgs:1},handler(t,e){var{parser:r}=t,n=e[0];return{type:"overline",mode:r.mode,body:n}},htmlBuilder(t,e){var r=Or(t.body,e.havingCrampedStyle()),n=Ie.makeLineSpan("overline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Ie.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]},e);return Ie.makeSpan(["mord","overline"],[a],e)},mathmlBuilder(t,e){var r=new st.MathNode("mo",[new st.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new st.MathNode("mover",[mn(t.body,e),r]);return n.setAttribute("accent","true"),n}});Ct({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"phantom",mode:r.mode,body:di(n)}},"handler"),htmlBuilder:o((t,e)=>{var r=Ii(t.body,e.withPhantom(),!1);return Ie.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=gs(t.body,e);return new st.MathNode("mphantom",r)},"mathmlBuilder")});Ct({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"hphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=Ie.makeSpan([],[Or(t.body,e.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n{var r=gs(di(t.body),e),n=new st.MathNode("mphantom",r),i=new st.MathNode("mpadded",[n]);return i.setAttribute("height","0px"),i.setAttribute("depth","0px"),i},"mathmlBuilder")});Ct({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"vphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=Ie.makeSpan(["inner"],[Or(t.body,e.withPhantom())]),n=Ie.makeSpan(["fix"],[]);return Ie.makeSpan(["mord","rlap"],[r,n],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=gs(di(t.body),e),n=new st.MathNode("mphantom",r),i=new st.MathNode("mpadded",[n]);return i.setAttribute("width","0px"),i},"mathmlBuilder")});Ct({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t,n=yr(e[0],"size").value,i=e[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(t,e){var r=Or(t.body,e),n=Qn(t.dy,e);return Ie.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){var r=new st.MathNode("mpadded",[mn(t.body,e)]),n=t.dy.number+t.dy.unit;return r.setAttribute("voffset",n),r}});Ct({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e}=t;return{type:"internal",mode:e.mode}}});Ct({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,argTypes:["size","size","size"]},handler(t,e,r){var{parser:n}=t,i=r[0],a=yr(e[0],"size"),s=yr(e[1],"size");return{type:"rule",mode:n.mode,shift:i&&yr(i,"size").value,width:a.value,height:s.value}},htmlBuilder(t,e){var r=Ie.makeSpan(["mord","rule"],[],e),n=Qn(t.width,e),i=Qn(t.height,e),a=t.shift?Qn(t.shift,e):0;return r.style.borderRightWidth=mt(n),r.style.borderTopWidth=mt(i),r.style.bottom=mt(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*e.sizeMultiplier,r},mathmlBuilder(t,e){var r=Qn(t.width,e),n=Qn(t.height,e),i=t.shift?Qn(t.shift,e):0,a=e.color&&e.getColor()||"black",s=new st.MathNode("mspace");s.setAttribute("mathbackground",a),s.setAttribute("width",mt(r)),s.setAttribute("height",mt(n));var l=new st.MathNode("mpadded",[s]);return i>=0?l.setAttribute("height",mt(i)):(l.setAttribute("height",mt(i)),l.setAttribute("depth",mt(-i))),l.setAttribute("voffset",mt(i)),l}});o(k$,"sizingGroup");SG=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],n3e=o((t,e)=>{var r=e.havingSize(t.size);return k$(t.body,r,e)},"htmlBuilder");Ct({type:"sizing",names:SG,props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!1,r);return{type:"sizing",mode:i.mode,size:SG.indexOf(n)+1,body:a}},"handler"),htmlBuilder:n3e,mathmlBuilder:o((t,e)=>{var r=e.havingSize(t.size),n=gs(t.body,r),i=new st.MathNode("mstyle",n);return i.setAttribute("mathsize",mt(r.sizeMultiplier)),i},"mathmlBuilder")});Ct({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:o((t,e,r)=>{var{parser:n}=t,i=!1,a=!1,s=r[0]&&yr(r[0],"ordgroup");if(s)for(var l="",u=0;u{var r=Ie.makeSpan([],[Or(t.body,e)]);if(!t.smashHeight&&!t.smashDepth)return r;if(t.smashHeight&&(r.height=0,r.children))for(var n=0;n{var r=new st.MathNode("mpadded",[mn(t.body,e)]);return t.smashHeight&&r.setAttribute("height","0px"),t.smashDepth&&r.setAttribute("depth","0px"),r},"mathmlBuilder")});Ct({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n}=t,i=r[0],a=e[0];return{type:"sqrt",mode:n.mode,body:a,index:i}},htmlBuilder(t,e){var r=Or(t.body,e.havingCrampedStyle());r.height===0&&(r.height=e.fontMetrics().xHeight),r=Ie.wrapFragment(r,e);var n=e.fontMetrics(),i=n.defaultRuleThickness,a=i;e.style.idr.height+r.depth+s&&(s=(s+d-r.height-r.depth)/2);var p=u.height-r.height-s-h;r.style.paddingLeft=mt(f);var m=Ie.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+p)},{type:"elem",elem:u},{type:"kern",size:h}]},e);if(t.index){var g=e.havingStyle(rr.SCRIPTSCRIPT),y=Or(t.index,g,e),v=.6*(m.height-m.depth),x=Ie.makeVList({positionType:"shift",positionData:-v,children:[{type:"elem",elem:y}]},e),b=Ie.makeSpan(["root"],[x]);return Ie.makeSpan(["mord","sqrt"],[b,m],e)}else return Ie.makeSpan(["mord","sqrt"],[m],e)},mathmlBuilder(t,e){var{body:r,index:n}=t;return n?new st.MathNode("mroot",[mn(r,e),mn(n,e)]):new st.MathNode("msqrt",[mn(r,e)])}});CG={display:rr.DISPLAY,text:rr.TEXT,script:rr.SCRIPT,scriptscript:rr.SCRIPTSCRIPT};Ct({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t,e){var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!0,r),s=n.slice(1,n.length-5);return{type:"styling",mode:i.mode,style:s,body:a}},htmlBuilder(t,e){var r=CG[t.style],n=e.havingStyle(r).withFont("");return k$(t.body,n,e)},mathmlBuilder(t,e){var r=CG[t.style],n=e.havingStyle(r),i=gs(t.body,n),a=new st.MathNode("mstyle",i),s={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},l=s[t.style];return a.setAttribute("scriptlevel",l[0]),a.setAttribute("displaystyle",l[1]),a}});i3e=o(function(e,r){var n=e.base;if(n)if(n.type==="op"){var i=n.limits&&(r.style.size===rr.DISPLAY.size||n.alwaysHandleSupSub);return i?pp:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===rr.DISPLAY.size||n.limits);return a?T$:null}else{if(n.type==="accent")return Jt.isCharacterBox(n.base)?BC:null;if(n.type==="horizBrace"){var s=!e.sub;return s===n.isOver?x$:null}else return null}else return null},"htmlBuilderDelegate");Xf({type:"supsub",htmlBuilder(t,e){var r=i3e(t,e);if(r)return r(t,e);var{base:n,sup:i,sub:a}=t,s=Or(n,e),l,u,h=e.fontMetrics(),f=0,d=0,p=n&&Jt.isCharacterBox(n);if(i){var m=e.havingStyle(e.style.sup());l=Or(i,m,e),p||(f=s.height-m.fontMetrics().supDrop*m.sizeMultiplier/e.sizeMultiplier)}if(a){var g=e.havingStyle(e.style.sub());u=Or(a,g,e),p||(d=s.depth+g.fontMetrics().subDrop*g.sizeMultiplier/e.sizeMultiplier)}var y;e.style===rr.DISPLAY?y=h.sup1:e.style.cramped?y=h.sup3:y=h.sup2;var v=e.sizeMultiplier,x=mt(.5/h.ptPerEm/v),b=null;if(u){var w=t.base&&t.base.type==="op"&&t.base.name&&(t.base.name==="\\oiint"||t.base.name==="\\oiiint");(s instanceof ms||w)&&(b=mt(-s.italic))}var _;if(l&&u){f=Math.max(f,y,l.depth+.25*h.xHeight),d=Math.max(d,h.sub2);var T=h.defaultRuleThickness,E=4*T;if(f-l.depth-(u.height-d)0&&(f+=L,d-=L)}var C=[{type:"elem",elem:u,shift:d,marginRight:x,marginLeft:b},{type:"elem",elem:l,shift:-f,marginRight:x}];_=Ie.makeVList({positionType:"individualShift",children:C},e)}else if(u){d=Math.max(d,h.sub1,u.height-.8*h.xHeight);var A=[{type:"elem",elem:u,marginLeft:b,marginRight:x}];_=Ie.makeVList({positionType:"shift",positionData:d,children:A},e)}else if(l)f=Math.max(f,y,l.depth+.25*h.xHeight),_=Ie.makeVList({positionType:"shift",positionData:-f,children:[{type:"elem",elem:l,marginRight:x}]},e);else throw new Error("supsub must have either sup or sub.");var I=kC(s,"right")||"mord";return Ie.makeSpan([I],[s,Ie.makeSpan(["msupsub"],[_])],e)},mathmlBuilder(t,e){var r=!1,n,i;t.base&&t.base.type==="horizBrace"&&(i=!!t.sup,i===t.base.isOver&&(r=!0,n=t.base.isOver)),t.base&&(t.base.type==="op"||t.base.type==="operatorname")&&(t.base.parentIsSupSub=!0);var a=[mn(t.base,e)];t.sub&&a.push(mn(t.sub,e)),t.sup&&a.push(mn(t.sup,e));var s;if(r)s=n?"mover":"munder";else if(t.sub)if(t.sup){var h=t.base;h&&h.type==="op"&&h.limits&&e.style===rr.DISPLAY||h&&h.type==="operatorname"&&h.alwaysHandleSupSub&&(e.style===rr.DISPLAY||h.limits)?s="munderover":s="msubsup"}else{var u=t.base;u&&u.type==="op"&&u.limits&&(e.style===rr.DISPLAY||u.alwaysHandleSupSub)||u&&u.type==="operatorname"&&u.alwaysHandleSupSub&&(u.limits||e.style===rr.DISPLAY)?s="munder":s="msub"}else{var l=t.base;l&&l.type==="op"&&l.limits&&(e.style===rr.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||e.style===rr.DISPLAY)?s="mover":s="msup"}return new st.MathNode(s,a)}});Xf({type:"atom",htmlBuilder(t,e){return Ie.mathsym(t.text,t.mode,e,["m"+t.family])},mathmlBuilder(t,e){var r=new st.MathNode("mo",[Ao(t.text,t.mode)]);if(t.family==="bin"){var n=OC(t,e);n==="bold-italic"&&r.setAttribute("mathvariant",n)}else t.family==="punct"?r.setAttribute("separator","true"):(t.family==="open"||t.family==="close")&&r.setAttribute("stretchy","false");return r}});E$={mi:"italic",mn:"normal",mtext:"normal"};Xf({type:"mathord",htmlBuilder(t,e){return Ie.makeOrd(t,e,"mathord")},mathmlBuilder(t,e){var r=new st.MathNode("mi",[Ao(t.text,t.mode,e)]),n=OC(t,e)||"italic";return n!==E$[r.type]&&r.setAttribute("mathvariant",n),r}});Xf({type:"textord",htmlBuilder(t,e){return Ie.makeOrd(t,e,"textord")},mathmlBuilder(t,e){var r=Ao(t.text,t.mode,e),n=OC(t,e)||"normal",i;return t.mode==="text"?i=new st.MathNode("mtext",[r]):/[0-9]/.test(t.text)?i=new st.MathNode("mn",[r]):t.text==="\\prime"?i=new st.MathNode("mo",[r]):i=new st.MathNode("mi",[r]),n!==E$[i.type]&&i.setAttribute("mathvariant",n),i}});gC={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},yC={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};Xf({type:"spacing",htmlBuilder(t,e){if(yC.hasOwnProperty(t.text)){var r=yC[t.text].className||"";if(t.mode==="text"){var n=Ie.makeOrd(t,e,"textord");return n.classes.push(r),n}else return Ie.makeSpan(["mspace",r],[Ie.mathsym(t.text,t.mode,e)],e)}else{if(gC.hasOwnProperty(t.text))return Ie.makeSpan(["mspace",gC[t.text]],[],e);throw new ut('Unknown type of space "'+t.text+'"')}},mathmlBuilder(t,e){var r;if(yC.hasOwnProperty(t.text))r=new st.MathNode("mtext",[new st.TextNode("\xA0")]);else{if(gC.hasOwnProperty(t.text))return new st.MathNode("mspace");throw new ut('Unknown type of space "'+t.text+'"')}return r}});AG=o(()=>{var t=new st.MathNode("mtd",[]);return t.setAttribute("width","50%"),t},"pad");Xf({type:"tag",mathmlBuilder(t,e){var r=new st.MathNode("mtable",[new st.MathNode("mtr",[AG(),new st.MathNode("mtd",[ch(t.body,e)]),AG(),new st.MathNode("mtd",[ch(t.tag,e)])])]);return r.setAttribute("width","100%"),r}});_G={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},LG={"\\textbf":"textbf","\\textmd":"textmd"},a3e={"\\textit":"textit","\\textup":"textup"},DG=o((t,e)=>{var r=t.font;if(r){if(_G[r])return e.withTextFontFamily(_G[r]);if(LG[r])return e.withTextFontWeight(LG[r]);if(r==="\\emph")return e.fontShape==="textit"?e.withTextFontShape("textup"):e.withTextFontShape("textit")}else return e;return e.withTextFontShape(a3e[r])},"optionsWithFont");Ct({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"text",mode:r.mode,body:di(i),font:n}},htmlBuilder(t,e){var r=DG(t,e),n=Ii(t.body,r,!0);return Ie.makeSpan(["mord","text"],n,r)},mathmlBuilder(t,e){var r=DG(t,e);return ch(t.body,r)}});Ct({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"underline",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=Or(t.body,e),n=Ie.makeLineSpan("underline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Ie.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:i},{type:"elem",elem:n},{type:"kern",size:3*i},{type:"elem",elem:r}]},e);return Ie.makeSpan(["mord","underline"],[a],e)},mathmlBuilder(t,e){var r=new st.MathNode("mo",[new st.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new st.MathNode("munder",[mn(t.body,e),r]);return n.setAttribute("accentunder","true"),n}});Ct({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"vcenter",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=Or(t.body,e),n=e.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return Ie.makeVList({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){return new st.MathNode("mpadded",[mn(t.body,e)],["vcenter"])}});Ct({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(t,e,r){throw new ut("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(t,e){for(var r=NG(t),n=[],i=e.havingStyle(e.style.text()),a=0;at.body.replace(/ /g,t.star?"\u2423":"\xA0"),"makeVerb"),oh=qG,S$=`[ \r + ]`,s3e="\\\\[a-zA-Z@]+",o3e="\\\\[^\uD800-\uDFFF]",l3e="("+s3e+")"+S$+"*",c3e=`\\\\( +|[ \r ]+ +?)[ \r ]*`,_C="[\u0300-\u036F]",u3e=new RegExp(_C+"+$"),h3e="("+S$+"+)|"+(c3e+"|")+"([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]"+(_C+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(_C+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+l3e)+("|"+o3e+")"),m4=class{static{o(this,"Lexer")}constructor(e,r){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=e,this.settings=r,this.tokenRegex=new RegExp(h3e,"g"),this.catcodes={"%":14,"~":13}}setCatcode(e,r){this.catcodes[e]=r}lex(){var e=this.input,r=this.tokenRegex.lastIndex;if(r===e.length)return new Co("EOF",new Ys(this,r,r));var n=this.tokenRegex.exec(e);if(n===null||n.index!==r)throw new ut("Unexpected character: '"+e[r]+"'",new Co(e[r],new Ys(this,r,r+1)));var i=n[6]||n[3]||(n[2]?"\\ ":" ");if(this.catcodes[i]===14){var a=e.indexOf(` +`,this.tokenRegex.lastIndex);return a===-1?(this.tokenRegex.lastIndex=e.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=a+1,this.lex()}return new Co(i,new Ys(this,r,this.tokenRegex.lastIndex))}},LC=class{static{o(this,"Namespace")}constructor(e,r){e===void 0&&(e={}),r===void 0&&(r={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=r,this.builtins=e,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new ut("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var e=this.undefStack.pop();for(var r in e)e.hasOwnProperty(r)&&(e[r]==null?delete this.current[r]:this.current[r]=e[r])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)}get(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]}set(e,r,n){if(n===void 0&&(n=!1),n){for(var i=0;i0&&(this.undefStack[this.undefStack.length-1][e]=r)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(e)&&(a[e]=this.current[e])}r==null?delete this.current[e]:this.current[e]=r}},f3e=p$;le("\\noexpand",function(t){var e=t.popToken();return t.isExpandable(e.text)&&(e.noexpand=!0,e.treatAsRelax=!0),{tokens:[e],numArgs:0}});le("\\expandafter",function(t){var e=t.popToken();return t.expandOnce(!0),{tokens:[e],numArgs:0}});le("\\@firstoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[0],numArgs:0}});le("\\@secondoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[1],numArgs:0}});le("\\@ifnextchar",function(t){var e=t.consumeArgs(3);t.consumeSpaces();var r=t.future();return e[0].length===1&&e[0][0].text===r.text?{tokens:e[1],numArgs:0}:{tokens:e[2],numArgs:0}});le("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");le("\\TextOrMath",function(t){var e=t.consumeArgs(2);return t.mode==="text"?{tokens:e[0],numArgs:0}:{tokens:e[1],numArgs:0}});RG={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};le("\\char",function(t){var e=t.popToken(),r,n="";if(e.text==="'")r=8,e=t.popToken();else if(e.text==='"')r=16,e=t.popToken();else if(e.text==="`")if(e=t.popToken(),e.text[0]==="\\")n=e.text.charCodeAt(1);else{if(e.text==="EOF")throw new ut("\\char` missing argument");n=e.text.charCodeAt(0)}else r=10;if(r){if(n=RG[e.text],n==null||n>=r)throw new ut("Invalid base-"+r+" digit "+e.text);for(var i;(i=RG[t.future().text])!=null&&i{var n=t.consumeArg().tokens;if(n.length!==1)throw new ut("\\newcommand's first argument must be a macro name");var i=n[0].text,a=t.isDefined(i);if(a&&!e)throw new ut("\\newcommand{"+i+"} attempting to redefine "+(i+"; use \\renewcommand"));if(!a&&!r)throw new ut("\\renewcommand{"+i+"} when command "+i+" does not yet exist; use \\newcommand");var s=0;if(n=t.consumeArg().tokens,n.length===1&&n[0].text==="["){for(var l="",u=t.expandNextToken();u.text!=="]"&&u.text!=="EOF";)l+=u.text,u=t.expandNextToken();if(!l.match(/^\s*[0-9]+\s*$/))throw new ut("Invalid number of arguments: "+l);s=parseInt(l),n=t.consumeArg().tokens}return t.macros.set(i,{tokens:n,numArgs:s}),""},"newcommand");le("\\newcommand",t=>WC(t,!1,!0));le("\\renewcommand",t=>WC(t,!0,!1));le("\\providecommand",t=>WC(t,!0,!0));le("\\message",t=>{var e=t.consumeArgs(1)[0];return console.log(e.reverse().map(r=>r.text).join("")),""});le("\\errmessage",t=>{var e=t.consumeArgs(1)[0];return console.error(e.reverse().map(r=>r.text).join("")),""});le("\\show",t=>{var e=t.popToken(),r=e.text;return console.log(e,t.macros.get(r),oh[r],En.math[r],En.text[r]),""});le("\\bgroup","{");le("\\egroup","}");le("~","\\nobreakspace");le("\\lq","`");le("\\rq","'");le("\\aa","\\r a");le("\\AA","\\r A");le("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xA9}");le("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");le("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xAE}");le("\u212C","\\mathscr{B}");le("\u2130","\\mathscr{E}");le("\u2131","\\mathscr{F}");le("\u210B","\\mathscr{H}");le("\u2110","\\mathscr{I}");le("\u2112","\\mathscr{L}");le("\u2133","\\mathscr{M}");le("\u211B","\\mathscr{R}");le("\u212D","\\mathfrak{C}");le("\u210C","\\mathfrak{H}");le("\u2128","\\mathfrak{Z}");le("\\Bbbk","\\Bbb{k}");le("\xB7","\\cdotp");le("\\llap","\\mathllap{\\textrm{#1}}");le("\\rlap","\\mathrlap{\\textrm{#1}}");le("\\clap","\\mathclap{\\textrm{#1}}");le("\\mathstrut","\\vphantom{(}");le("\\underbar","\\underline{\\text{#1}}");le("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}');le("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}");le("\\ne","\\neq");le("\u2260","\\neq");le("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}");le("\u2209","\\notin");le("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}");le("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}");le("\u225A","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}");le("\u225B","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225B}}");le("\u225D","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225D}}");le("\u225E","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225E}}");le("\u225F","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}");le("\u27C2","\\perp");le("\u203C","\\mathclose{!\\mkern-0.8mu!}");le("\u220C","\\notni");le("\u231C","\\ulcorner");le("\u231D","\\urcorner");le("\u231E","\\llcorner");le("\u231F","\\lrcorner");le("\xA9","\\copyright");le("\xAE","\\textregistered");le("\uFE0F","\\textregistered");le("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');le("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');le("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');le("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');le("\\vdots","\\mathord{\\varvdots\\rule{0pt}{15pt}}");le("\u22EE","\\vdots");le("\\varGamma","\\mathit{\\Gamma}");le("\\varDelta","\\mathit{\\Delta}");le("\\varTheta","\\mathit{\\Theta}");le("\\varLambda","\\mathit{\\Lambda}");le("\\varXi","\\mathit{\\Xi}");le("\\varPi","\\mathit{\\Pi}");le("\\varSigma","\\mathit{\\Sigma}");le("\\varUpsilon","\\mathit{\\Upsilon}");le("\\varPhi","\\mathit{\\Phi}");le("\\varPsi","\\mathit{\\Psi}");le("\\varOmega","\\mathit{\\Omega}");le("\\substack","\\begin{subarray}{c}#1\\end{subarray}");le("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");le("\\boxed","\\fbox{$\\displaystyle{#1}$}");le("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");le("\\implies","\\DOTSB\\;\\Longrightarrow\\;");le("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");MG={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"};le("\\dots",function(t){var e="\\dotso",r=t.expandAfterFuture().text;return r in MG?e=MG[r]:(r.slice(0,4)==="\\not"||r in En.math&&Jt.contains(["bin","rel"],En.math[r].group))&&(e="\\dotsb"),e});YC={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};le("\\dotso",function(t){var e=t.future().text;return e in YC?"\\ldots\\,":"\\ldots"});le("\\dotsc",function(t){var e=t.future().text;return e in YC&&e!==","?"\\ldots\\,":"\\ldots"});le("\\cdots",function(t){var e=t.future().text;return e in YC?"\\@cdots\\,":"\\@cdots"});le("\\dotsb","\\cdots");le("\\dotsm","\\cdots");le("\\dotsi","\\!\\cdots");le("\\dotsx","\\ldots\\,");le("\\DOTSI","\\relax");le("\\DOTSB","\\relax");le("\\DOTSX","\\relax");le("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");le("\\,","\\tmspace+{3mu}{.1667em}");le("\\thinspace","\\,");le("\\>","\\mskip{4mu}");le("\\:","\\tmspace+{4mu}{.2222em}");le("\\medspace","\\:");le("\\;","\\tmspace+{5mu}{.2777em}");le("\\thickspace","\\;");le("\\!","\\tmspace-{3mu}{.1667em}");le("\\negthinspace","\\!");le("\\negmedspace","\\tmspace-{4mu}{.2222em}");le("\\negthickspace","\\tmspace-{5mu}{.277em}");le("\\enspace","\\kern.5em ");le("\\enskip","\\hskip.5em\\relax");le("\\quad","\\hskip1em\\relax");le("\\qquad","\\hskip2em\\relax");le("\\tag","\\@ifstar\\tag@literal\\tag@paren");le("\\tag@paren","\\tag@literal{({#1})}");le("\\tag@literal",t=>{if(t.macros.get("\\df@tag"))throw new ut("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});le("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");le("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");le("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");le("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");le("\\newline","\\\\\\relax");le("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");C$=mt(Zl["Main-Regular"][84][1]-.7*Zl["Main-Regular"][65][1]);le("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+C$+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");le("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+C$+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");le("\\hspace","\\@ifstar\\@hspacer\\@hspace");le("\\@hspace","\\hskip #1\\relax");le("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");le("\\ordinarycolon",":");le("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");le("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');le("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');le("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');le("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');le("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');le("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');le("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');le("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');le("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');le("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');le("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');le("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');le("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');le("\u2237","\\dblcolon");le("\u2239","\\eqcolon");le("\u2254","\\coloneqq");le("\u2255","\\eqqcolon");le("\u2A74","\\Coloneqq");le("\\ratio","\\vcentcolon");le("\\coloncolon","\\dblcolon");le("\\colonequals","\\coloneqq");le("\\coloncolonequals","\\Coloneqq");le("\\equalscolon","\\eqqcolon");le("\\equalscoloncolon","\\Eqqcolon");le("\\colonminus","\\coloneq");le("\\coloncolonminus","\\Coloneq");le("\\minuscolon","\\eqcolon");le("\\minuscoloncolon","\\Eqcolon");le("\\coloncolonapprox","\\Colonapprox");le("\\coloncolonsim","\\Colonsim");le("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");le("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");le("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");le("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");le("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}");le("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");le("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");le("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");le("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");le("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");le("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");le("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");le("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");le("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}");le("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}");le("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}");le("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}");le("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}");le("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}");le("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}");le("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}");le("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}");le("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}");le("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228A}");le("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2ACB}");le("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228B}");le("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2ACC}");le("\\imath","\\html@mathml{\\@imath}{\u0131}");le("\\jmath","\\html@mathml{\\@jmath}{\u0237}");le("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27E6}}");le("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27E7}}");le("\u27E6","\\llbracket");le("\u27E7","\\rrbracket");le("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}");le("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}");le("\u2983","\\lBrace");le("\u2984","\\rBrace");le("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29B5}}");le("\u29B5","\\minuso");le("\\darr","\\downarrow");le("\\dArr","\\Downarrow");le("\\Darr","\\Downarrow");le("\\lang","\\langle");le("\\rang","\\rangle");le("\\uarr","\\uparrow");le("\\uArr","\\Uparrow");le("\\Uarr","\\Uparrow");le("\\N","\\mathbb{N}");le("\\R","\\mathbb{R}");le("\\Z","\\mathbb{Z}");le("\\alef","\\aleph");le("\\alefsym","\\aleph");le("\\Alpha","\\mathrm{A}");le("\\Beta","\\mathrm{B}");le("\\bull","\\bullet");le("\\Chi","\\mathrm{X}");le("\\clubs","\\clubsuit");le("\\cnums","\\mathbb{C}");le("\\Complex","\\mathbb{C}");le("\\Dagger","\\ddagger");le("\\diamonds","\\diamondsuit");le("\\empty","\\emptyset");le("\\Epsilon","\\mathrm{E}");le("\\Eta","\\mathrm{H}");le("\\exist","\\exists");le("\\harr","\\leftrightarrow");le("\\hArr","\\Leftrightarrow");le("\\Harr","\\Leftrightarrow");le("\\hearts","\\heartsuit");le("\\image","\\Im");le("\\infin","\\infty");le("\\Iota","\\mathrm{I}");le("\\isin","\\in");le("\\Kappa","\\mathrm{K}");le("\\larr","\\leftarrow");le("\\lArr","\\Leftarrow");le("\\Larr","\\Leftarrow");le("\\lrarr","\\leftrightarrow");le("\\lrArr","\\Leftrightarrow");le("\\Lrarr","\\Leftrightarrow");le("\\Mu","\\mathrm{M}");le("\\natnums","\\mathbb{N}");le("\\Nu","\\mathrm{N}");le("\\Omicron","\\mathrm{O}");le("\\plusmn","\\pm");le("\\rarr","\\rightarrow");le("\\rArr","\\Rightarrow");le("\\Rarr","\\Rightarrow");le("\\real","\\Re");le("\\reals","\\mathbb{R}");le("\\Reals","\\mathbb{R}");le("\\Rho","\\mathrm{P}");le("\\sdot","\\cdot");le("\\sect","\\S");le("\\spades","\\spadesuit");le("\\sub","\\subset");le("\\sube","\\subseteq");le("\\supe","\\supseteq");le("\\Tau","\\mathrm{T}");le("\\thetasym","\\vartheta");le("\\weierp","\\wp");le("\\Zeta","\\mathrm{Z}");le("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");le("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");le("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");le("\\bra","\\mathinner{\\langle{#1}|}");le("\\ket","\\mathinner{|{#1}\\rangle}");le("\\braket","\\mathinner{\\langle{#1}\\rangle}");le("\\Bra","\\left\\langle#1\\right|");le("\\Ket","\\left|#1\\right\\rangle");A$=o(t=>e=>{var r=e.consumeArg().tokens,n=e.consumeArg().tokens,i=e.consumeArg().tokens,a=e.consumeArg().tokens,s=e.macros.get("|"),l=e.macros.get("\\|");e.macros.beginGroup();var u=o(d=>p=>{t&&(p.macros.set("|",s),i.length&&p.macros.set("\\|",l));var m=d;if(!d&&i.length){var g=p.future();g.text==="|"&&(p.popToken(),m=!0)}return{tokens:m?i:n,numArgs:0}},"midMacro");e.macros.set("|",u(!1)),i.length&&e.macros.set("\\|",u(!0));var h=e.consumeArg().tokens,f=e.expandTokens([...a,...h,...r]);return e.macros.endGroup(),{tokens:f.reverse(),numArgs:0}},"braketHelper");le("\\bra@ket",A$(!1));le("\\bra@set",A$(!0));le("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");le("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");le("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");le("\\angln","{\\angl n}");le("\\blue","\\textcolor{##6495ed}{#1}");le("\\orange","\\textcolor{##ffa500}{#1}");le("\\pink","\\textcolor{##ff00af}{#1}");le("\\red","\\textcolor{##df0030}{#1}");le("\\green","\\textcolor{##28ae7b}{#1}");le("\\gray","\\textcolor{gray}{#1}");le("\\purple","\\textcolor{##9d38bd}{#1}");le("\\blueA","\\textcolor{##ccfaff}{#1}");le("\\blueB","\\textcolor{##80f6ff}{#1}");le("\\blueC","\\textcolor{##63d9ea}{#1}");le("\\blueD","\\textcolor{##11accd}{#1}");le("\\blueE","\\textcolor{##0c7f99}{#1}");le("\\tealA","\\textcolor{##94fff5}{#1}");le("\\tealB","\\textcolor{##26edd5}{#1}");le("\\tealC","\\textcolor{##01d1c1}{#1}");le("\\tealD","\\textcolor{##01a995}{#1}");le("\\tealE","\\textcolor{##208170}{#1}");le("\\greenA","\\textcolor{##b6ffb0}{#1}");le("\\greenB","\\textcolor{##8af281}{#1}");le("\\greenC","\\textcolor{##74cf70}{#1}");le("\\greenD","\\textcolor{##1fab54}{#1}");le("\\greenE","\\textcolor{##0d923f}{#1}");le("\\goldA","\\textcolor{##ffd0a9}{#1}");le("\\goldB","\\textcolor{##ffbb71}{#1}");le("\\goldC","\\textcolor{##ff9c39}{#1}");le("\\goldD","\\textcolor{##e07d10}{#1}");le("\\goldE","\\textcolor{##a75a05}{#1}");le("\\redA","\\textcolor{##fca9a9}{#1}");le("\\redB","\\textcolor{##ff8482}{#1}");le("\\redC","\\textcolor{##f9685d}{#1}");le("\\redD","\\textcolor{##e84d39}{#1}");le("\\redE","\\textcolor{##bc2612}{#1}");le("\\maroonA","\\textcolor{##ffbde0}{#1}");le("\\maroonB","\\textcolor{##ff92c6}{#1}");le("\\maroonC","\\textcolor{##ed5fa6}{#1}");le("\\maroonD","\\textcolor{##ca337c}{#1}");le("\\maroonE","\\textcolor{##9e034e}{#1}");le("\\purpleA","\\textcolor{##ddd7ff}{#1}");le("\\purpleB","\\textcolor{##c6b9fc}{#1}");le("\\purpleC","\\textcolor{##aa87ff}{#1}");le("\\purpleD","\\textcolor{##7854ab}{#1}");le("\\purpleE","\\textcolor{##543b78}{#1}");le("\\mintA","\\textcolor{##f5f9e8}{#1}");le("\\mintB","\\textcolor{##edf2df}{#1}");le("\\mintC","\\textcolor{##e0e5cc}{#1}");le("\\grayA","\\textcolor{##f6f7f7}{#1}");le("\\grayB","\\textcolor{##f0f1f2}{#1}");le("\\grayC","\\textcolor{##e3e5e6}{#1}");le("\\grayD","\\textcolor{##d6d8da}{#1}");le("\\grayE","\\textcolor{##babec2}{#1}");le("\\grayF","\\textcolor{##888d93}{#1}");le("\\grayG","\\textcolor{##626569}{#1}");le("\\grayH","\\textcolor{##3b3e40}{#1}");le("\\grayI","\\textcolor{##21242c}{#1}");le("\\kaBlue","\\textcolor{##314453}{#1}");le("\\kaGreen","\\textcolor{##71B307}{#1}");_$={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},DC=class{static{o(this,"MacroExpander")}constructor(e,r,n){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=r,this.expansionCount=0,this.feed(e),this.macros=new LC(f3e,r.macros),this.mode=n,this.stack=[]}feed(e){this.lexer=new m4(e,this.settings)}switchMode(e){this.mode=e}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return this.stack.length===0&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(e){this.stack.push(e)}pushTokens(e){this.stack.push(...e)}scanArgument(e){var r,n,i;if(e){if(this.consumeSpaces(),this.future().text!=="[")return null;r=this.popToken(),{tokens:i,end:n}=this.consumeArg(["]"])}else({tokens:i,start:r,end:n}=this.consumeArg());return this.pushToken(new Co("EOF",n.loc)),this.pushTokens(i),r.range(n,"")}consumeSpaces(){for(;;){var e=this.future();if(e.text===" ")this.stack.pop();else break}}consumeArg(e){var r=[],n=e&&e.length>0;n||this.consumeSpaces();var i=this.future(),a,s=0,l=0;do{if(a=this.popToken(),r.push(a),a.text==="{")++s;else if(a.text==="}"){if(--s,s===-1)throw new ut("Extra }",a)}else if(a.text==="EOF")throw new ut("Unexpected end of input in a macro argument, expected '"+(e&&n?e[l]:"}")+"'",a);if(e&&n)if((s===0||s===1&&e[l]==="{")&&a.text===e[l]){if(++l,l===e.length){r.splice(-l,l);break}}else l=0}while(s!==0||n);return i.text==="{"&&r[r.length-1].text==="}"&&(r.pop(),r.shift()),r.reverse(),{tokens:r,start:i,end:a}}consumeArgs(e,r){if(r){if(r.length!==e+1)throw new ut("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;ithis.settings.maxExpand)throw new ut("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(e){var r=this.popToken(),n=r.text,i=r.noexpand?null:this._getExpansion(n);if(i==null||e&&i.unexpandable){if(e&&i==null&&n[0]==="\\"&&!this.isDefined(n))throw new ut("Undefined control sequence: "+n);return this.pushToken(r),!1}this.countExpansion(1);var a=i.tokens,s=this.consumeArgs(i.numArgs,i.delimiters);if(i.numArgs){a=a.slice();for(var l=a.length-1;l>=0;--l){var u=a[l];if(u.text==="#"){if(l===0)throw new ut("Incomplete placeholder at end of macro body",u);if(u=a[--l],u.text==="#")a.splice(l+1,1);else if(/^[1-9]$/.test(u.text))a.splice(l,2,...s[+u.text-1]);else throw new ut("Not a valid argument number",u)}}}return this.pushTokens(a),a.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var e=this.stack.pop();return e.treatAsRelax&&(e.text="\\relax"),e}throw new Error}expandMacro(e){return this.macros.has(e)?this.expandTokens([new Co(e)]):void 0}expandTokens(e){var r=[],n=this.stack.length;for(this.pushTokens(e);this.stack.length>n;)if(this.expandOnce(!0)===!1){var i=this.stack.pop();i.treatAsRelax&&(i.noexpand=!1,i.treatAsRelax=!1),r.push(i)}return this.countExpansion(r.length),r}expandMacroAsText(e){var r=this.expandMacro(e);return r&&r.map(n=>n.text).join("")}_getExpansion(e){var r=this.macros.get(e);if(r==null)return r;if(e.length===1){var n=this.lexer.catcodes[e];if(n!=null&&n!==13)return}var i=typeof r=="function"?r(this):r;if(typeof i=="string"){var a=0;if(i.indexOf("#")!==-1)for(var s=i.replace(/##/g,"");s.indexOf("#"+(a+1))!==-1;)++a;for(var l=new m4(i,this.settings),u=[],h=l.lex();h.text!=="EOF";)u.push(h),h=l.lex();u.reverse();var f={tokens:u,numArgs:a};return f}return i}isDefined(e){return this.macros.has(e)||oh.hasOwnProperty(e)||En.math.hasOwnProperty(e)||En.text.hasOwnProperty(e)||_$.hasOwnProperty(e)}isExpandable(e){var r=this.macros.get(e);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:oh.hasOwnProperty(e)&&!oh[e].primitive}},IG=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,s4=Object.freeze({"\u208A":"+","\u208B":"-","\u208C":"=","\u208D":"(","\u208E":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1D62":"i","\u2C7C":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209A":"p","\u1D63":"r","\u209B":"s","\u209C":"t","\u1D64":"u","\u1D65":"v","\u2093":"x","\u1D66":"\u03B2","\u1D67":"\u03B3","\u1D68":"\u03C1","\u1D69":"\u03D5","\u1D6A":"\u03C7","\u207A":"+","\u207B":"-","\u207C":"=","\u207D":"(","\u207E":")","\u2070":"0","\xB9":"1","\xB2":"2","\xB3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1D2C":"A","\u1D2E":"B","\u1D30":"D","\u1D31":"E","\u1D33":"G","\u1D34":"H","\u1D35":"I","\u1D36":"J","\u1D37":"K","\u1D38":"L","\u1D39":"M","\u1D3A":"N","\u1D3C":"O","\u1D3E":"P","\u1D3F":"R","\u1D40":"T","\u1D41":"U","\u2C7D":"V","\u1D42":"W","\u1D43":"a","\u1D47":"b","\u1D9C":"c","\u1D48":"d","\u1D49":"e","\u1DA0":"f","\u1D4D":"g",\u02B0:"h","\u2071":"i",\u02B2:"j","\u1D4F":"k",\u02E1:"l","\u1D50":"m",\u207F:"n","\u1D52":"o","\u1D56":"p",\u02B3:"r",\u02E2:"s","\u1D57":"t","\u1D58":"u","\u1D5B":"v",\u02B7:"w",\u02E3:"x",\u02B8:"y","\u1DBB":"z","\u1D5D":"\u03B2","\u1D5E":"\u03B3","\u1D5F":"\u03B4","\u1D60":"\u03D5","\u1D61":"\u03C7","\u1DBF":"\u03B8"}),vC={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030C":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030A":{text:"\\r",math:"\\mathring"},"\u030B":{text:"\\H"},"\u0327":{text:"\\c"}},OG={\u00E1:"a\u0301",\u00E0:"a\u0300",\u00E4:"a\u0308",\u01DF:"a\u0308\u0304",\u00E3:"a\u0303",\u0101:"a\u0304",\u0103:"a\u0306",\u1EAF:"a\u0306\u0301",\u1EB1:"a\u0306\u0300",\u1EB5:"a\u0306\u0303",\u01CE:"a\u030C",\u00E2:"a\u0302",\u1EA5:"a\u0302\u0301",\u1EA7:"a\u0302\u0300",\u1EAB:"a\u0302\u0303",\u0227:"a\u0307",\u01E1:"a\u0307\u0304",\u00E5:"a\u030A",\u01FB:"a\u030A\u0301",\u1E03:"b\u0307",\u0107:"c\u0301",\u1E09:"c\u0327\u0301",\u010D:"c\u030C",\u0109:"c\u0302",\u010B:"c\u0307",\u00E7:"c\u0327",\u010F:"d\u030C",\u1E0B:"d\u0307",\u1E11:"d\u0327",\u00E9:"e\u0301",\u00E8:"e\u0300",\u00EB:"e\u0308",\u1EBD:"e\u0303",\u0113:"e\u0304",\u1E17:"e\u0304\u0301",\u1E15:"e\u0304\u0300",\u0115:"e\u0306",\u1E1D:"e\u0327\u0306",\u011B:"e\u030C",\u00EA:"e\u0302",\u1EBF:"e\u0302\u0301",\u1EC1:"e\u0302\u0300",\u1EC5:"e\u0302\u0303",\u0117:"e\u0307",\u0229:"e\u0327",\u1E1F:"f\u0307",\u01F5:"g\u0301",\u1E21:"g\u0304",\u011F:"g\u0306",\u01E7:"g\u030C",\u011D:"g\u0302",\u0121:"g\u0307",\u0123:"g\u0327",\u1E27:"h\u0308",\u021F:"h\u030C",\u0125:"h\u0302",\u1E23:"h\u0307",\u1E29:"h\u0327",\u00ED:"i\u0301",\u00EC:"i\u0300",\u00EF:"i\u0308",\u1E2F:"i\u0308\u0301",\u0129:"i\u0303",\u012B:"i\u0304",\u012D:"i\u0306",\u01D0:"i\u030C",\u00EE:"i\u0302",\u01F0:"j\u030C",\u0135:"j\u0302",\u1E31:"k\u0301",\u01E9:"k\u030C",\u0137:"k\u0327",\u013A:"l\u0301",\u013E:"l\u030C",\u013C:"l\u0327",\u1E3F:"m\u0301",\u1E41:"m\u0307",\u0144:"n\u0301",\u01F9:"n\u0300",\u00F1:"n\u0303",\u0148:"n\u030C",\u1E45:"n\u0307",\u0146:"n\u0327",\u00F3:"o\u0301",\u00F2:"o\u0300",\u00F6:"o\u0308",\u022B:"o\u0308\u0304",\u00F5:"o\u0303",\u1E4D:"o\u0303\u0301",\u1E4F:"o\u0303\u0308",\u022D:"o\u0303\u0304",\u014D:"o\u0304",\u1E53:"o\u0304\u0301",\u1E51:"o\u0304\u0300",\u014F:"o\u0306",\u01D2:"o\u030C",\u00F4:"o\u0302",\u1ED1:"o\u0302\u0301",\u1ED3:"o\u0302\u0300",\u1ED7:"o\u0302\u0303",\u022F:"o\u0307",\u0231:"o\u0307\u0304",\u0151:"o\u030B",\u1E55:"p\u0301",\u1E57:"p\u0307",\u0155:"r\u0301",\u0159:"r\u030C",\u1E59:"r\u0307",\u0157:"r\u0327",\u015B:"s\u0301",\u1E65:"s\u0301\u0307",\u0161:"s\u030C",\u1E67:"s\u030C\u0307",\u015D:"s\u0302",\u1E61:"s\u0307",\u015F:"s\u0327",\u1E97:"t\u0308",\u0165:"t\u030C",\u1E6B:"t\u0307",\u0163:"t\u0327",\u00FA:"u\u0301",\u00F9:"u\u0300",\u00FC:"u\u0308",\u01D8:"u\u0308\u0301",\u01DC:"u\u0308\u0300",\u01D6:"u\u0308\u0304",\u01DA:"u\u0308\u030C",\u0169:"u\u0303",\u1E79:"u\u0303\u0301",\u016B:"u\u0304",\u1E7B:"u\u0304\u0308",\u016D:"u\u0306",\u01D4:"u\u030C",\u00FB:"u\u0302",\u016F:"u\u030A",\u0171:"u\u030B",\u1E7D:"v\u0303",\u1E83:"w\u0301",\u1E81:"w\u0300",\u1E85:"w\u0308",\u0175:"w\u0302",\u1E87:"w\u0307",\u1E98:"w\u030A",\u1E8D:"x\u0308",\u1E8B:"x\u0307",\u00FD:"y\u0301",\u1EF3:"y\u0300",\u00FF:"y\u0308",\u1EF9:"y\u0303",\u0233:"y\u0304",\u0177:"y\u0302",\u1E8F:"y\u0307",\u1E99:"y\u030A",\u017A:"z\u0301",\u017E:"z\u030C",\u1E91:"z\u0302",\u017C:"z\u0307",\u00C1:"A\u0301",\u00C0:"A\u0300",\u00C4:"A\u0308",\u01DE:"A\u0308\u0304",\u00C3:"A\u0303",\u0100:"A\u0304",\u0102:"A\u0306",\u1EAE:"A\u0306\u0301",\u1EB0:"A\u0306\u0300",\u1EB4:"A\u0306\u0303",\u01CD:"A\u030C",\u00C2:"A\u0302",\u1EA4:"A\u0302\u0301",\u1EA6:"A\u0302\u0300",\u1EAA:"A\u0302\u0303",\u0226:"A\u0307",\u01E0:"A\u0307\u0304",\u00C5:"A\u030A",\u01FA:"A\u030A\u0301",\u1E02:"B\u0307",\u0106:"C\u0301",\u1E08:"C\u0327\u0301",\u010C:"C\u030C",\u0108:"C\u0302",\u010A:"C\u0307",\u00C7:"C\u0327",\u010E:"D\u030C",\u1E0A:"D\u0307",\u1E10:"D\u0327",\u00C9:"E\u0301",\u00C8:"E\u0300",\u00CB:"E\u0308",\u1EBC:"E\u0303",\u0112:"E\u0304",\u1E16:"E\u0304\u0301",\u1E14:"E\u0304\u0300",\u0114:"E\u0306",\u1E1C:"E\u0327\u0306",\u011A:"E\u030C",\u00CA:"E\u0302",\u1EBE:"E\u0302\u0301",\u1EC0:"E\u0302\u0300",\u1EC4:"E\u0302\u0303",\u0116:"E\u0307",\u0228:"E\u0327",\u1E1E:"F\u0307",\u01F4:"G\u0301",\u1E20:"G\u0304",\u011E:"G\u0306",\u01E6:"G\u030C",\u011C:"G\u0302",\u0120:"G\u0307",\u0122:"G\u0327",\u1E26:"H\u0308",\u021E:"H\u030C",\u0124:"H\u0302",\u1E22:"H\u0307",\u1E28:"H\u0327",\u00CD:"I\u0301",\u00CC:"I\u0300",\u00CF:"I\u0308",\u1E2E:"I\u0308\u0301",\u0128:"I\u0303",\u012A:"I\u0304",\u012C:"I\u0306",\u01CF:"I\u030C",\u00CE:"I\u0302",\u0130:"I\u0307",\u0134:"J\u0302",\u1E30:"K\u0301",\u01E8:"K\u030C",\u0136:"K\u0327",\u0139:"L\u0301",\u013D:"L\u030C",\u013B:"L\u0327",\u1E3E:"M\u0301",\u1E40:"M\u0307",\u0143:"N\u0301",\u01F8:"N\u0300",\u00D1:"N\u0303",\u0147:"N\u030C",\u1E44:"N\u0307",\u0145:"N\u0327",\u00D3:"O\u0301",\u00D2:"O\u0300",\u00D6:"O\u0308",\u022A:"O\u0308\u0304",\u00D5:"O\u0303",\u1E4C:"O\u0303\u0301",\u1E4E:"O\u0303\u0308",\u022C:"O\u0303\u0304",\u014C:"O\u0304",\u1E52:"O\u0304\u0301",\u1E50:"O\u0304\u0300",\u014E:"O\u0306",\u01D1:"O\u030C",\u00D4:"O\u0302",\u1ED0:"O\u0302\u0301",\u1ED2:"O\u0302\u0300",\u1ED6:"O\u0302\u0303",\u022E:"O\u0307",\u0230:"O\u0307\u0304",\u0150:"O\u030B",\u1E54:"P\u0301",\u1E56:"P\u0307",\u0154:"R\u0301",\u0158:"R\u030C",\u1E58:"R\u0307",\u0156:"R\u0327",\u015A:"S\u0301",\u1E64:"S\u0301\u0307",\u0160:"S\u030C",\u1E66:"S\u030C\u0307",\u015C:"S\u0302",\u1E60:"S\u0307",\u015E:"S\u0327",\u0164:"T\u030C",\u1E6A:"T\u0307",\u0162:"T\u0327",\u00DA:"U\u0301",\u00D9:"U\u0300",\u00DC:"U\u0308",\u01D7:"U\u0308\u0301",\u01DB:"U\u0308\u0300",\u01D5:"U\u0308\u0304",\u01D9:"U\u0308\u030C",\u0168:"U\u0303",\u1E78:"U\u0303\u0301",\u016A:"U\u0304",\u1E7A:"U\u0304\u0308",\u016C:"U\u0306",\u01D3:"U\u030C",\u00DB:"U\u0302",\u016E:"U\u030A",\u0170:"U\u030B",\u1E7C:"V\u0303",\u1E82:"W\u0301",\u1E80:"W\u0300",\u1E84:"W\u0308",\u0174:"W\u0302",\u1E86:"W\u0307",\u1E8C:"X\u0308",\u1E8A:"X\u0307",\u00DD:"Y\u0301",\u1EF2:"Y\u0300",\u0178:"Y\u0308",\u1EF8:"Y\u0303",\u0232:"Y\u0304",\u0176:"Y\u0302",\u1E8E:"Y\u0307",\u0179:"Z\u0301",\u017D:"Z\u030C",\u1E90:"Z\u0302",\u017B:"Z\u0307",\u03AC:"\u03B1\u0301",\u1F70:"\u03B1\u0300",\u1FB1:"\u03B1\u0304",\u1FB0:"\u03B1\u0306",\u03AD:"\u03B5\u0301",\u1F72:"\u03B5\u0300",\u03AE:"\u03B7\u0301",\u1F74:"\u03B7\u0300",\u03AF:"\u03B9\u0301",\u1F76:"\u03B9\u0300",\u03CA:"\u03B9\u0308",\u0390:"\u03B9\u0308\u0301",\u1FD2:"\u03B9\u0308\u0300",\u1FD1:"\u03B9\u0304",\u1FD0:"\u03B9\u0306",\u03CC:"\u03BF\u0301",\u1F78:"\u03BF\u0300",\u03CD:"\u03C5\u0301",\u1F7A:"\u03C5\u0300",\u03CB:"\u03C5\u0308",\u03B0:"\u03C5\u0308\u0301",\u1FE2:"\u03C5\u0308\u0300",\u1FE1:"\u03C5\u0304",\u1FE0:"\u03C5\u0306",\u03CE:"\u03C9\u0301",\u1F7C:"\u03C9\u0300",\u038E:"\u03A5\u0301",\u1FEA:"\u03A5\u0300",\u03AB:"\u03A5\u0308",\u1FE9:"\u03A5\u0304",\u1FE8:"\u03A5\u0306",\u038F:"\u03A9\u0301",\u1FFA:"\u03A9\u0300"},g4=class t{static{o(this,"Parser")}constructor(e,r){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new DC(e,r,this.mode),this.settings=r,this.leftrightDepth=0}expect(e,r){if(r===void 0&&(r=!0),this.fetch().text!==e)throw new ut("Expected '"+e+"', got '"+this.fetch().text+"'",this.fetch());r&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken==null&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(e){this.mode=e,this.gullet.switchMode(e)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var e=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}}subparse(e){var r=this.nextToken;this.consume(),this.gullet.pushToken(new Co("}")),this.gullet.pushTokens(e);var n=this.parseExpression(!1);return this.expect("}"),this.nextToken=r,n}parseExpression(e,r){for(var n=[];;){this.mode==="math"&&this.consumeSpaces();var i=this.fetch();if(t.endOfExpression.indexOf(i.text)!==-1||r&&i.text===r||e&&oh[i.text]&&oh[i.text].infix)break;var a=this.parseAtom(r);if(a){if(a.type==="internal")continue}else break;n.push(a)}return this.mode==="text"&&this.formLigatures(n),this.handleInfixNodes(n)}handleInfixNodes(e){for(var r=-1,n,i=0;i=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+r[0]+'" used in math mode',e);var l=En[this.mode][r].group,u=Ys.range(e),h;if(n4e.hasOwnProperty(l)){var f=l;h={type:"atom",mode:this.mode,family:f,loc:u,text:r}}else h={type:l,mode:this.mode,loc:u,text:r};s=h}else if(r.charCodeAt(0)>=128)this.settings.strict&&(BG(r.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+r[0]+'" used in math mode',e):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+r[0]+'"'+(" ("+r.charCodeAt(0)+")"),e)),s={type:"textord",mode:"text",loc:Ys.range(e),text:r};else return null;if(this.consume(),a)for(var d=0;d{e instanceof Element&&e.tagName==="A"&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")}),ah.addHook("afterSanitizeAttributes",e=>{e instanceof Element&&e.tagName==="A"&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener"))})}var jf,y3e,v3e,O$,M$,Tr,b3e,w3e,T3e,k3e,P$,E3e,xr,S3e,C3e,ou,jC,A3e,_3e,I$,KC,pi,Kf,hh,je,fr=M(()=>{"use strict";sC();jf=//gi,y3e=o(t=>t?P$(t).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),v3e=(()=>{let t=!1;return()=>{t||(x3e(),t=!0)}})();o(x3e,"setupDompurifyHooks");O$=o(t=>(v3e(),ah.sanitize(t)),"removeScript"),M$=o((t,e)=>{if(e.flowchart?.htmlLabels!==!1){let r=e.securityLevel;r==="antiscript"||r==="strict"?t=O$(t):r!=="loose"&&(t=P$(t),t=t.replace(//g,">"),t=t.replace(/=/g,"="),t=k3e(t))}return t},"sanitizeMore"),Tr=o((t,e)=>t&&(e.dompurifyConfig?t=ah.sanitize(M$(t,e),e.dompurifyConfig).toString():t=ah.sanitize(M$(t,e),{FORBID_TAGS:["style"]}).toString(),t),"sanitizeText"),b3e=o((t,e)=>typeof t=="string"?Tr(t,e):t.flat().map(r=>Tr(r,e)),"sanitizeTextOrArray"),w3e=o(t=>jf.test(t),"hasBreaks"),T3e=o(t=>t.split(jf),"splitBreaks"),k3e=o(t=>t.replace(/#br#/g,"
"),"placeholderToBreak"),P$=o(t=>t.replace(jf,"#br#"),"breakToPlaceholder"),E3e=o(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"),xr=o(t=>!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),S3e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.max(...e)},"getMax"),C3e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.min(...e)},"getMin"),ou=o(function(t){let e=t.split(/(,)/),r=[];for(let n=0;n0&&n+1Math.max(0,t.split(e).length-1),"countOccurrence"),A3e=o((t,e)=>{let r=jC(t,"~"),n=jC(e,"~");return r===1&&n===1},"shouldCombineSets"),_3e=o(t=>{let e=jC(t,"~"),r=!1;if(e<=1)return t;e%2!==0&&t.startsWith("~")&&(t=t.substring(1),r=!0);let n=[...t],i=n.indexOf("~"),a=n.lastIndexOf("~");for(;i!==-1&&a!==-1&&i!==a;)n[i]="<",n[a]=">",i=n.indexOf("~"),a=n.lastIndexOf("~");return r&&n.unshift("~"),n.join("")},"processSet"),I$=o(()=>window.MathMLElement!==void 0,"isMathMLSupported"),KC=/\$\$(.*)\$\$/g,pi=o(t=>(t.match(KC)?.length??0)>0,"hasKatex"),Kf=o(async(t,e)=>{t=await hh(t,e);let r=document.createElement("div");r.innerHTML=t,r.id="katex-temp",r.style.visibility="hidden",r.style.position="absolute",r.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",r);let i={width:r.clientWidth,height:r.clientHeight};return r.remove(),i},"calculateMathMLDimensions"),hh=o(async(t,e)=>{if(!pi(t))return t;if(!(I$()||e.legacyMathML||e.forceLegacyMathML))return t.replace(KC,"MathML is unsupported in this environment.");let{default:r}=await Promise.resolve().then(()=>(R$(),N$)),n=e.forceLegacyMathML||!I$()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(jf).map(i=>pi(i)?`

`:`
${i}
`).join("").replace(KC,(i,a)=>r.renderToString(a,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,""))},"renderKatex"),je={getRows:y3e,sanitizeText:Tr,sanitizeTextOrArray:b3e,hasBreaks:w3e,splitBreaks:T3e,lineBreakRegex:jf,removeScript:O$,getUrl:E3e,evaluate:xr,getMax:S3e,getMin:C3e}});var L3e,D3e,Zr,_o,ni=M(()=>{"use strict";ht();L3e=o(function(t,e){for(let r of e)t.attr(r[0],r[1])},"d3Attrs"),D3e=o(function(t,e,r){let n=new Map;return r?(n.set("width","100%"),n.set("style",`max-width: ${e}px;`)):(n.set("height",t),n.set("width",e)),n},"calculateSvgSizeAttrs"),Zr=o(function(t,e,r,n){let i=D3e(e,r,n);L3e(t,i)},"configureSvgSize"),_o=o(function(t,e,r,n){let i=e.node().getBBox(),a=i.width,s=i.height;Y.info(`SVG bounds: ${a}x${s}`,i);let l=0,u=0;Y.info(`Graph bounds: ${l}x${u}`,t),l=a+r*2,u=s+r*2,Y.info(`Calculated bounds: ${l}x${u}`),Zr(e,u,l,n);let h=`${i.x-r} ${i.y-r} ${i.width+2*r} ${i.height+2*r}`;e.attr("viewBox",h)},"setupGraphViewbox")});var k4,N3e,B$,F$,QC=M(()=>{"use strict";ht();k4={},N3e=o((t,e,r)=>{let n="";return t in k4&&k4[t]?n=k4[t](r):Y.warn(`No theme found for ${t}`),` & { + font-family: ${r.fontFamily}; + font-size: ${r.fontSize}; + fill: ${r.textColor} + } + + /* Classes common for multiple diagrams */ + + & .error-icon { + fill: ${r.errorBkgColor}; + } + & .error-text { + fill: ${r.errorTextColor}; + stroke: ${r.errorTextColor}; + } + + & .edge-thickness-normal { + stroke-width: 1px; + } + & .edge-thickness-thick { + stroke-width: 3.5px + } + & .edge-pattern-solid { + stroke-dasharray: 0; + } + & .edge-thickness-invisible { + stroke-width: 0; + fill: none; + } + & .edge-pattern-dashed{ + stroke-dasharray: 3; + } + .edge-pattern-dotted { + stroke-dasharray: 2; + } + + & .marker { + fill: ${r.lineColor}; + stroke: ${r.lineColor}; + } + & .marker.cross { + stroke: ${r.lineColor}; + } + + & svg { + font-family: ${r.fontFamily}; + font-size: ${r.fontSize}; + } + & p { + margin: 0 + } + + ${n} + + ${e} +`},"getStyles"),B$=o((t,e)=>{e!==void 0&&(k4[t]=e)},"addStylesForDiagram"),F$=N3e});var iy={};vr(iy,{clear:()=>_r,getAccDescription:()=>Fr,getAccTitle:()=>Pr,getDiagramTitle:()=>Jr,setAccDescription:()=>Br,setAccTitle:()=>Rr,setDiagramTitle:()=>ln});var ZC,JC,e7,t7,_r,Rr,Pr,Br,Fr,ln,Jr,ki=M(()=>{"use strict";fr();Ua();ZC="",JC="",e7="",t7=o(t=>Tr(t,Sr()),"sanitizeText"),_r=o(()=>{ZC="",e7="",JC=""},"clear"),Rr=o(t=>{ZC=t7(t).replace(/^\s+/g,"")},"setAccTitle"),Pr=o(()=>ZC,"getAccTitle"),Br=o(t=>{e7=t7(t).replace(/\n\s+/g,` +`)},"setAccDescription"),Fr=o(()=>e7,"getAccDescription"),ln=o(t=>{JC=t7(t)},"setDiagramTitle"),Jr=o(()=>JC,"getDiagramTitle")});var z$,R3e,de,n7,S4,i7,a7,M3e,E4,Qf,ay,r7,Vt=M(()=>{"use strict";$f();ht();Ua();fr();ni();QC();ki();z$=Y,R3e=M1,de=Sr,n7=Yb,S4=ih,i7=o(t=>Tr(t,de()),"sanitizeText"),a7=_o,M3e=o(()=>iy,"getCommonDb"),E4={},Qf=o((t,e,r)=>{E4[t]&&z$.warn(`Diagram with id ${t} already registered. Overwriting.`),E4[t]=e,r&&OS(t,r),B$(t,e.styles),e.injectUtils?.(z$,R3e,de,i7,a7,M3e(),()=>{})},"registerDiagram"),ay=o(t=>{if(t in E4)return E4[t];throw new r7(t)},"getDiagram"),r7=class extends Error{static{o(this,"DiagramNotFoundError")}constructor(e){super(`Diagram ${e} not found.`)}}});var pl,fh,Xa,dl,nc,sy,s7,o7,C4,A4,G$,I3e,O3e,P3e,B3e,F3e,z3e,G3e,$3e,V3e,U3e,H3e,W3e,Y3e,q3e,X3e,j3e,K3e,$$,Q3e,Z3e,V$,J3e,e5e,t5e,r5e,dh,n5e,i5e,a5e,s5e,o5e,oy,l7=M(()=>{"use strict";Vt();fr();ki();pl=[],fh=[""],Xa="global",dl="",nc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],sy=[],s7="",o7=!1,C4=4,A4=2,I3e=o(function(){return G$},"getC4Type"),O3e=o(function(t){G$=Tr(t,de())},"setC4Type"),P3e=o(function(t,e,r,n,i,a,s,l,u){if(t==null||e===void 0||e===null||r===void 0||r===null||n===void 0||n===null)return;let h={},f=sy.find(d=>d.from===e&&d.to===r);if(f?h=f:sy.push(h),h.type=t,h.from=e,h.to=r,h.label={text:n},i==null)h.techn={text:""};else if(typeof i=="object"){let[d,p]=Object.entries(i)[0];h[d]={text:p}}else h.techn={text:i};if(a==null)h.descr={text:""};else if(typeof a=="object"){let[d,p]=Object.entries(a)[0];h[d]={text:p}}else h.descr={text:a};if(typeof s=="object"){let[d,p]=Object.entries(s)[0];h[d]=p}else h.sprite=s;if(typeof l=="object"){let[d,p]=Object.entries(l)[0];h[d]=p}else h.tags=l;if(typeof u=="object"){let[d,p]=Object.entries(u)[0];h[d]=p}else h.link=u;h.wrap=dh()},"addRel"),B3e=o(function(t,e,r,n,i,a,s){if(e===null||r===null)return;let l={},u=pl.find(h=>h.alias===e);if(u&&e===u.alias?l=u:(l.alias=e,pl.push(l)),r==null?l.label={text:""}:l.label={text:r},n==null)l.descr={text:""};else if(typeof n=="object"){let[h,f]=Object.entries(n)[0];l[h]={text:f}}else l.descr={text:n};if(typeof i=="object"){let[h,f]=Object.entries(i)[0];l[h]=f}else l.sprite=i;if(typeof a=="object"){let[h,f]=Object.entries(a)[0];l[h]=f}else l.tags=a;if(typeof s=="object"){let[h,f]=Object.entries(s)[0];l[h]=f}else l.link=s;l.typeC4Shape={text:t},l.parentBoundary=Xa,l.wrap=dh()},"addPersonOrSystem"),F3e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=pl.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,pl.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=dh(),u.typeC4Shape={text:t},u.parentBoundary=Xa},"addContainer"),z3e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=pl.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,pl.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=dh(),u.typeC4Shape={text:t},u.parentBoundary=Xa},"addComponent"),G3e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=nc.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,nc.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"system"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=Xa,a.wrap=dh(),dl=Xa,Xa=t,fh.push(dl)},"addPersonOrSystemBoundary"),$3e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=nc.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,nc.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"container"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=Xa,a.wrap=dh(),dl=Xa,Xa=t,fh.push(dl)},"addContainerBoundary"),V3e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=nc.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,nc.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.type={text:"node"};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.type={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.nodeType=t,u.parentBoundary=Xa,u.wrap=dh(),dl=Xa,Xa=e,fh.push(dl)},"addDeploymentNode"),U3e=o(function(){Xa=dl,fh.pop(),dl=fh.pop(),fh.push(dl)},"popBoundaryParseStack"),H3e=o(function(t,e,r,n,i,a,s,l,u,h,f){let d=pl.find(p=>p.alias===e);if(!(d===void 0&&(d=nc.find(p=>p.alias===e),d===void 0))){if(r!=null)if(typeof r=="object"){let[p,m]=Object.entries(r)[0];d[p]=m}else d.bgColor=r;if(n!=null)if(typeof n=="object"){let[p,m]=Object.entries(n)[0];d[p]=m}else d.fontColor=n;if(i!=null)if(typeof i=="object"){let[p,m]=Object.entries(i)[0];d[p]=m}else d.borderColor=i;if(a!=null)if(typeof a=="object"){let[p,m]=Object.entries(a)[0];d[p]=m}else d.shadowing=a;if(s!=null)if(typeof s=="object"){let[p,m]=Object.entries(s)[0];d[p]=m}else d.shape=s;if(l!=null)if(typeof l=="object"){let[p,m]=Object.entries(l)[0];d[p]=m}else d.sprite=l;if(u!=null)if(typeof u=="object"){let[p,m]=Object.entries(u)[0];d[p]=m}else d.techn=u;if(h!=null)if(typeof h=="object"){let[p,m]=Object.entries(h)[0];d[p]=m}else d.legendText=h;if(f!=null)if(typeof f=="object"){let[p,m]=Object.entries(f)[0];d[p]=m}else d.legendSprite=f}},"updateElStyle"),W3e=o(function(t,e,r,n,i,a,s){let l=sy.find(u=>u.from===e&&u.to===r);if(l!==void 0){if(n!=null)if(typeof n=="object"){let[u,h]=Object.entries(n)[0];l[u]=h}else l.textColor=n;if(i!=null)if(typeof i=="object"){let[u,h]=Object.entries(i)[0];l[u]=h}else l.lineColor=i;if(a!=null)if(typeof a=="object"){let[u,h]=Object.entries(a)[0];l[u]=parseInt(h)}else l.offsetX=parseInt(a);if(s!=null)if(typeof s=="object"){let[u,h]=Object.entries(s)[0];l[u]=parseInt(h)}else l.offsetY=parseInt(s)}},"updateRelStyle"),Y3e=o(function(t,e,r){let n=C4,i=A4;if(typeof e=="object"){let a=Object.values(e)[0];n=parseInt(a)}else n=parseInt(e);if(typeof r=="object"){let a=Object.values(r)[0];i=parseInt(a)}else i=parseInt(r);n>=1&&(C4=n),i>=1&&(A4=i)},"updateLayoutConfig"),q3e=o(function(){return C4},"getC4ShapeInRow"),X3e=o(function(){return A4},"getC4BoundaryInRow"),j3e=o(function(){return Xa},"getCurrentBoundaryParse"),K3e=o(function(){return dl},"getParentBoundaryParse"),$$=o(function(t){return t==null?pl:pl.filter(e=>e.parentBoundary===t)},"getC4ShapeArray"),Q3e=o(function(t){return pl.find(e=>e.alias===t)},"getC4Shape"),Z3e=o(function(t){return Object.keys($$(t))},"getC4ShapeKeys"),V$=o(function(t){return t==null?nc:nc.filter(e=>e.parentBoundary===t)},"getBoundaries"),J3e=V$,e5e=o(function(){return sy},"getRels"),t5e=o(function(){return s7},"getTitle"),r5e=o(function(t){o7=t},"setWrap"),dh=o(function(){return o7},"autoWrap"),n5e=o(function(){pl=[],nc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],dl="",Xa="global",fh=[""],sy=[],fh=[""],s7="",o7=!1,C4=4,A4=2},"clear"),i5e={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},a5e={FILLED:0,OPEN:1},s5e={LEFTOF:0,RIGHTOF:1,OVER:2},o5e=o(function(t){s7=Tr(t,de())},"setTitle"),oy={addPersonOrSystem:B3e,addPersonOrSystemBoundary:G3e,addContainer:F3e,addContainerBoundary:$3e,addComponent:z3e,addDeploymentNode:V3e,popBoundaryParseStack:U3e,addRel:P3e,updateElStyle:H3e,updateRelStyle:W3e,updateLayoutConfig:Y3e,autoWrap:dh,setWrap:r5e,getC4ShapeArray:$$,getC4Shape:Q3e,getC4ShapeKeys:Z3e,getBoundaries:V$,getBoundarys:J3e,getCurrentBoundaryParse:j3e,getParentBoundaryParse:K3e,getRels:e5e,getTitle:t5e,getC4Type:I3e,getC4ShapeInRow:q3e,getC4BoundaryInRow:X3e,setAccTitle:Rr,getAccTitle:Pr,getAccDescription:Fr,setAccDescription:Br,getConfig:o(()=>de().c4,"getConfig"),clear:n5e,LINETYPE:i5e,ARROWTYPE:a5e,PLACEMENT:s5e,setTitle:o5e,setC4Type:O3e}});function Zf(t,e){return t==null||e==null?NaN:te?1:t>=e?0:NaN}var c7=M(()=>{"use strict";o(Zf,"ascending")});function u7(t,e){return t==null||e==null?NaN:et?1:e>=t?0:NaN}var U$=M(()=>{"use strict";o(u7,"descending")});function Jf(t){let e,r,n;t.length!==2?(e=Zf,r=o((l,u)=>Zf(t(l),u),"compare2"),n=o((l,u)=>t(l)-u,"delta")):(e=t===Zf||t===u7?t:l5e,r=t,n=t);function i(l,u,h=0,f=l.length){if(h>>1;r(l[d],u)<0?h=d+1:f=d}while(h>>1;r(l[d],u)<=0?h=d+1:f=d}while(hh&&n(l[d-1],u)>-n(l[d],u)?d-1:d}return o(s,"center"),{left:i,center:s,right:a}}function l5e(){return 0}var h7=M(()=>{"use strict";c7();U$();o(Jf,"bisector");o(l5e,"zero")});function f7(t){return t===null?NaN:+t}var H$=M(()=>{"use strict";o(f7,"number")});var W$,Y$,c5e,u5e,d7,q$=M(()=>{"use strict";c7();h7();H$();W$=Jf(Zf),Y$=W$.right,c5e=W$.left,u5e=Jf(f7).center,d7=Y$});function X$({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):r}function h5e({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):(t.set(n,r),r)}function f5e({_intern:t,_key:e},r){let n=e(r);return t.has(n)&&(r=t.get(n),t.delete(n)),r}function d5e(t){return t!==null&&typeof t=="object"?t.valueOf():t}var mp,j$=M(()=>{"use strict";mp=class extends Map{static{o(this,"InternMap")}constructor(e,r=d5e){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),e!=null)for(let[n,i]of e)this.set(n,i)}get(e){return super.get(X$(this,e))}has(e){return super.has(X$(this,e))}set(e,r){return super.set(h5e(this,e),r)}delete(e){return super.delete(f5e(this,e))}};o(X$,"intern_get");o(h5e,"intern_set");o(f5e,"intern_delete");o(d5e,"keyof")});function _4(t,e,r){let n=(e-t)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),s=a>=p5e?10:a>=m5e?5:a>=g5e?2:1,l,u,h;return i<0?(h=Math.pow(10,-i)/s,l=Math.round(t*h),u=Math.round(e*h),l/he&&--u,h=-h):(h=Math.pow(10,i)*s,l=Math.round(t/h),u=Math.round(e/h),l*he&&--u),u0))return[];if(t===e)return[t];let n=e=i))return[];let l=a-i+1,u=new Array(l);if(n)if(s<0)for(let h=0;h{"use strict";p5e=Math.sqrt(50),m5e=Math.sqrt(10),g5e=Math.sqrt(2);o(_4,"tickSpec");o(L4,"ticks");o(ly,"tickIncrement");o(gp,"tickStep")});function D4(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r=i)&&(r=i)}return r}var Q$=M(()=>{"use strict";o(D4,"max")});function N4(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var Z$=M(()=>{"use strict";o(N4,"min")});function R4(t,e,r){t=+t,e=+e,r=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((e-t)/r))|0,a=new Array(i);++n{"use strict";o(R4,"range")});var ph=M(()=>{"use strict";q$();h7();Q$();Z$();J$();K$();j$()});function p7(t){return t}var eV=M(()=>{"use strict";o(p7,"default")});function y5e(t){return"translate("+t+",0)"}function v5e(t){return"translate(0,"+t+")"}function x5e(t){return e=>+t(e)}function b5e(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),r=>+t(r)+e}function w5e(){return!this.__axis}function rV(t,e){var r=[],n=null,i=null,a=6,s=6,l=3,u=typeof window<"u"&&window.devicePixelRatio>1?0:.5,h=t===I4||t===M4?-1:1,f=t===M4||t===m7?"x":"y",d=t===I4||t===g7?y5e:v5e;function p(m){var g=n??(e.ticks?e.ticks.apply(e,r):e.domain()),y=i??(e.tickFormat?e.tickFormat.apply(e,r):p7),v=Math.max(a,0)+l,x=e.range(),b=+x[0]+u,w=+x[x.length-1]+u,_=(e.bandwidth?b5e:x5e)(e.copy(),u),T=m.selection?m.selection():m,E=T.selectAll(".domain").data([null]),L=T.selectAll(".tick").data(g,e).order(),C=L.exit(),A=L.enter().append("g").attr("class","tick"),I=L.select("line"),D=L.select("text");E=E.merge(E.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),L=L.merge(A),I=I.merge(A.append("line").attr("stroke","currentColor").attr(f+"2",h*a)),D=D.merge(A.append("text").attr("fill","currentColor").attr(f,h*v).attr("dy",t===I4?"0em":t===g7?"0.71em":"0.32em")),m!==T&&(E=E.transition(m),L=L.transition(m),I=I.transition(m),D=D.transition(m),C=C.transition(m).attr("opacity",tV).attr("transform",function(k){return isFinite(k=_(k))?d(k+u):this.getAttribute("transform")}),A.attr("opacity",tV).attr("transform",function(k){var R=this.parentNode.__axis;return d((R&&isFinite(R=R(k))?R:_(k))+u)})),C.remove(),E.attr("d",t===M4||t===m7?s?"M"+h*s+","+b+"H"+u+"V"+w+"H"+h*s:"M"+u+","+b+"V"+w:s?"M"+b+","+h*s+"V"+u+"H"+w+"V"+h*s:"M"+b+","+u+"H"+w),L.attr("opacity",1).attr("transform",function(k){return d(_(k)+u)}),I.attr(f+"2",h*a),D.attr(f,h*v).text(y),T.filter(w5e).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===m7?"start":t===M4?"end":"middle"),T.each(function(){this.__axis=_})}return o(p,"axis"),p.scale=function(m){return arguments.length?(e=m,p):e},p.ticks=function(){return r=Array.from(arguments),p},p.tickArguments=function(m){return arguments.length?(r=m==null?[]:Array.from(m),p):r.slice()},p.tickValues=function(m){return arguments.length?(n=m==null?null:Array.from(m),p):n&&n.slice()},p.tickFormat=function(m){return arguments.length?(i=m,p):i},p.tickSize=function(m){return arguments.length?(a=s=+m,p):a},p.tickSizeInner=function(m){return arguments.length?(a=+m,p):a},p.tickSizeOuter=function(m){return arguments.length?(s=+m,p):s},p.tickPadding=function(m){return arguments.length?(l=+m,p):l},p.offset=function(m){return arguments.length?(u=+m,p):u},p}function y7(t){return rV(I4,t)}function v7(t){return rV(g7,t)}var I4,m7,g7,M4,tV,nV=M(()=>{"use strict";eV();I4=1,m7=2,g7=3,M4=4,tV=1e-6;o(y5e,"translateX");o(v5e,"translateY");o(x5e,"number");o(b5e,"center");o(w5e,"entering");o(rV,"axis");o(y7,"axisTop");o(v7,"axisBottom")});var iV=M(()=>{"use strict";nV()});function sV(){for(var t=0,e=arguments.length,r={},n;t=0&&(n=r.slice(i+1),r=r.slice(0,i)),r&&!e.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:n}})}function E5e(t,e){for(var r=0,n=t.length,i;r{"use strict";T5e={value:o(()=>{},"value")};o(sV,"dispatch");o(O4,"Dispatch");o(k5e,"parseTypenames");O4.prototype=sV.prototype={constructor:O4,on:o(function(t,e){var r=this._,n=k5e(t+"",r),i,a=-1,s=n.length;if(arguments.length<2){for(;++a0)for(var r=new Array(i),n=0,i,a;n{"use strict";oV()});var P4,w7,T7=M(()=>{"use strict";P4="http://www.w3.org/1999/xhtml",w7={svg:"http://www.w3.org/2000/svg",xhtml:P4,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function ic(t){var e=t+="",r=e.indexOf(":");return r>=0&&(e=t.slice(0,r))!=="xmlns"&&(t=t.slice(r+1)),w7.hasOwnProperty(e)?{space:w7[e],local:t}:t}var B4=M(()=>{"use strict";T7();o(ic,"default")});function S5e(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===P4&&e.documentElement.namespaceURI===P4?e.createElement(t):e.createElementNS(r,t)}}function C5e(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function cy(t){var e=ic(t);return(e.local?C5e:S5e)(e)}var k7=M(()=>{"use strict";B4();T7();o(S5e,"creatorInherit");o(C5e,"creatorFixed");o(cy,"default")});function A5e(){}function mh(t){return t==null?A5e:function(){return this.querySelector(t)}}var F4=M(()=>{"use strict";o(A5e,"none");o(mh,"default")});function E7(t){typeof t!="function"&&(t=mh(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";ml();F4();o(E7,"default")});function S7(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}var cV=M(()=>{"use strict";o(S7,"array")});function _5e(){return[]}function yp(t){return t==null?_5e:function(){return this.querySelectorAll(t)}}var C7=M(()=>{"use strict";o(_5e,"empty");o(yp,"default")});function L5e(t){return function(){return S7(t.apply(this,arguments))}}function A7(t){typeof t=="function"?t=L5e(t):t=yp(t);for(var e=this._groups,r=e.length,n=[],i=[],a=0;a{"use strict";ml();cV();C7();o(L5e,"arrayAll");o(A7,"default")});function vp(t){return function(){return this.matches(t)}}function z4(t){return function(e){return e.matches(t)}}var uy=M(()=>{"use strict";o(vp,"default");o(z4,"childMatcher")});function N5e(t){return function(){return D5e.call(this.children,t)}}function R5e(){return this.firstElementChild}function _7(t){return this.select(t==null?R5e:N5e(typeof t=="function"?t:z4(t)))}var D5e,hV=M(()=>{"use strict";uy();D5e=Array.prototype.find;o(N5e,"childFind");o(R5e,"childFirst");o(_7,"default")});function I5e(){return Array.from(this.children)}function O5e(t){return function(){return M5e.call(this.children,t)}}function L7(t){return this.selectAll(t==null?I5e:O5e(typeof t=="function"?t:z4(t)))}var M5e,fV=M(()=>{"use strict";uy();M5e=Array.prototype.filter;o(I5e,"children");o(O5e,"childrenFilter");o(L7,"default")});function D7(t){typeof t!="function"&&(t=vp(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";ml();uy();o(D7,"default")});function hy(t){return new Array(t.length)}var N7=M(()=>{"use strict";o(hy,"default")});function R7(){return new ii(this._enter||this._groups.map(hy),this._parents)}function fy(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}var M7=M(()=>{"use strict";N7();ml();o(R7,"default");o(fy,"EnterNode");fy.prototype={constructor:fy,appendChild:o(function(t){return this._parent.insertBefore(t,this._next)},"appendChild"),insertBefore:o(function(t,e){return this._parent.insertBefore(t,e)},"insertBefore"),querySelector:o(function(t){return this._parent.querySelector(t)},"querySelector"),querySelectorAll:o(function(t){return this._parent.querySelectorAll(t)},"querySelectorAll")}});function I7(t){return function(){return t}}var pV=M(()=>{"use strict";o(I7,"default")});function P5e(t,e,r,n,i,a){for(var s=0,l,u=e.length,h=a.length;s=w&&(w=b+1);!(T=v[w])&&++w{"use strict";ml();M7();pV();o(P5e,"bindIndex");o(B5e,"bindKey");o(F5e,"datum");o(O7,"default");o(z5e,"arraylike")});function P7(){return new ii(this._exit||this._groups.map(hy),this._parents)}var gV=M(()=>{"use strict";N7();ml();o(P7,"default")});function B7(t,e,r){var n=this.enter(),i=this,a=this.exit();return typeof t=="function"?(n=t(n),n&&(n=n.selection())):n=n.append(t+""),e!=null&&(i=e(i),i&&(i=i.selection())),r==null?a.remove():r(a),n&&i?n.merge(i).order():i}var yV=M(()=>{"use strict";o(B7,"default")});function F7(t){for(var e=t.selection?t.selection():t,r=this._groups,n=e._groups,i=r.length,a=n.length,s=Math.min(i,a),l=new Array(i),u=0;u{"use strict";ml();o(F7,"default")});function z7(){for(var t=this._groups,e=-1,r=t.length;++e=0;)(s=n[i])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}var xV=M(()=>{"use strict";o(z7,"default")});function G7(t){t||(t=G5e);function e(d,p){return d&&p?t(d.__data__,p.__data__):!d-!p}o(e,"compareNode");for(var r=this._groups,n=r.length,i=new Array(n),a=0;ae?1:t>=e?0:NaN}var bV=M(()=>{"use strict";ml();o(G7,"default");o(G5e,"ascending")});function $7(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}var wV=M(()=>{"use strict";o($7,"default")});function V7(){return Array.from(this)}var TV=M(()=>{"use strict";o(V7,"default")});function U7(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(U7,"default")});function H7(){let t=0;for(let e of this)++t;return t}var EV=M(()=>{"use strict";o(H7,"default")});function W7(){return!this.node()}var SV=M(()=>{"use strict";o(W7,"default")});function Y7(t){for(var e=this._groups,r=0,n=e.length;r{"use strict";o(Y7,"default")});function $5e(t){return function(){this.removeAttribute(t)}}function V5e(t){return function(){this.removeAttributeNS(t.space,t.local)}}function U5e(t,e){return function(){this.setAttribute(t,e)}}function H5e(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function W5e(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttribute(t):this.setAttribute(t,r)}}function Y5e(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function q7(t,e){var r=ic(t);if(arguments.length<2){var n=this.node();return r.local?n.getAttributeNS(r.space,r.local):n.getAttribute(r)}return this.each((e==null?r.local?V5e:$5e:typeof e=="function"?r.local?Y5e:W5e:r.local?H5e:U5e)(r,e))}var AV=M(()=>{"use strict";B4();o($5e,"attrRemove");o(V5e,"attrRemoveNS");o(U5e,"attrConstant");o(H5e,"attrConstantNS");o(W5e,"attrFunction");o(Y5e,"attrFunctionNS");o(q7,"default")});function dy(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}var X7=M(()=>{"use strict";o(dy,"default")});function q5e(t){return function(){this.style.removeProperty(t)}}function X5e(t,e,r){return function(){this.style.setProperty(t,e,r)}}function j5e(t,e,r){return function(){var n=e.apply(this,arguments);n==null?this.style.removeProperty(t):this.style.setProperty(t,n,r)}}function j7(t,e,r){return arguments.length>1?this.each((e==null?q5e:typeof e=="function"?j5e:X5e)(t,e,r??"")):gh(this.node(),t)}function gh(t,e){return t.style.getPropertyValue(e)||dy(t).getComputedStyle(t,null).getPropertyValue(e)}var K7=M(()=>{"use strict";X7();o(q5e,"styleRemove");o(X5e,"styleConstant");o(j5e,"styleFunction");o(j7,"default");o(gh,"styleValue")});function K5e(t){return function(){delete this[t]}}function Q5e(t,e){return function(){this[t]=e}}function Z5e(t,e){return function(){var r=e.apply(this,arguments);r==null?delete this[t]:this[t]=r}}function Q7(t,e){return arguments.length>1?this.each((e==null?K5e:typeof e=="function"?Z5e:Q5e)(t,e)):this.node()[t]}var _V=M(()=>{"use strict";o(K5e,"propertyRemove");o(Q5e,"propertyConstant");o(Z5e,"propertyFunction");o(Q7,"default")});function LV(t){return t.trim().split(/^|\s+/)}function Z7(t){return t.classList||new DV(t)}function DV(t){this._node=t,this._names=LV(t.getAttribute("class")||"")}function NV(t,e){for(var r=Z7(t),n=-1,i=e.length;++n{"use strict";o(LV,"classArray");o(Z7,"classList");o(DV,"ClassList");DV.prototype={add:o(function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},"add"),remove:o(function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},"remove"),contains:o(function(t){return this._names.indexOf(t)>=0},"contains")};o(NV,"classedAdd");o(RV,"classedRemove");o(J5e,"classedTrue");o(ewe,"classedFalse");o(twe,"classedFunction");o(J7,"default")});function rwe(){this.textContent=""}function nwe(t){return function(){this.textContent=t}}function iwe(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function eA(t){return arguments.length?this.each(t==null?rwe:(typeof t=="function"?iwe:nwe)(t)):this.node().textContent}var IV=M(()=>{"use strict";o(rwe,"textRemove");o(nwe,"textConstant");o(iwe,"textFunction");o(eA,"default")});function awe(){this.innerHTML=""}function swe(t){return function(){this.innerHTML=t}}function owe(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function tA(t){return arguments.length?this.each(t==null?awe:(typeof t=="function"?owe:swe)(t)):this.node().innerHTML}var OV=M(()=>{"use strict";o(awe,"htmlRemove");o(swe,"htmlConstant");o(owe,"htmlFunction");o(tA,"default")});function lwe(){this.nextSibling&&this.parentNode.appendChild(this)}function rA(){return this.each(lwe)}var PV=M(()=>{"use strict";o(lwe,"raise");o(rA,"default")});function cwe(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function nA(){return this.each(cwe)}var BV=M(()=>{"use strict";o(cwe,"lower");o(nA,"default")});function iA(t){var e=typeof t=="function"?t:cy(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}var FV=M(()=>{"use strict";k7();o(iA,"default")});function uwe(){return null}function aA(t,e){var r=typeof t=="function"?t:cy(t),n=e==null?uwe:typeof e=="function"?e:mh(e);return this.select(function(){return this.insertBefore(r.apply(this,arguments),n.apply(this,arguments)||null)})}var zV=M(()=>{"use strict";k7();F4();o(uwe,"constantNull");o(aA,"default")});function hwe(){var t=this.parentNode;t&&t.removeChild(this)}function sA(){return this.each(hwe)}var GV=M(()=>{"use strict";o(hwe,"remove");o(sA,"default")});function fwe(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function dwe(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function oA(t){return this.select(t?dwe:fwe)}var $V=M(()=>{"use strict";o(fwe,"selection_cloneShallow");o(dwe,"selection_cloneDeep");o(oA,"default")});function lA(t){return arguments.length?this.property("__data__",t):this.node().__data__}var VV=M(()=>{"use strict";o(lA,"default")});function pwe(t){return function(e){t.call(this,e,this.__data__)}}function mwe(t){return t.trim().split(/^|\s+/).map(function(e){var r="",n=e.indexOf(".");return n>=0&&(r=e.slice(n+1),e=e.slice(0,n)),{type:e,name:r}})}function gwe(t){return function(){var e=this.__on;if(e){for(var r=0,n=-1,i=e.length,a;r{"use strict";o(pwe,"contextListener");o(mwe,"parseTypenames");o(gwe,"onRemove");o(ywe,"onAdd");o(cA,"default")});function HV(t,e,r){var n=dy(t),i=n.CustomEvent;typeof i=="function"?i=new i(e,r):(i=n.document.createEvent("Event"),r?(i.initEvent(e,r.bubbles,r.cancelable),i.detail=r.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}function vwe(t,e){return function(){return HV(this,t,e)}}function xwe(t,e){return function(){return HV(this,t,e.apply(this,arguments))}}function uA(t,e){return this.each((typeof e=="function"?xwe:vwe)(t,e))}var WV=M(()=>{"use strict";X7();o(HV,"dispatchEvent");o(vwe,"dispatchConstant");o(xwe,"dispatchFunction");o(uA,"default")});function*hA(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(hA,"default")});function ii(t,e){this._groups=t,this._parents=e}function qV(){return new ii([[document.documentElement]],fA)}function bwe(){return this}var fA,lu,ml=M(()=>{"use strict";lV();uV();hV();fV();dV();mV();M7();gV();yV();vV();xV();bV();wV();TV();kV();EV();SV();CV();AV();K7();_V();MV();IV();OV();PV();BV();FV();zV();GV();$V();VV();UV();WV();YV();fA=[null];o(ii,"Selection");o(qV,"selection");o(bwe,"selection_selection");ii.prototype=qV.prototype={constructor:ii,select:E7,selectAll:A7,selectChild:_7,selectChildren:L7,filter:D7,data:O7,enter:R7,exit:P7,join:B7,merge:F7,selection:bwe,order:z7,sort:G7,call:$7,nodes:V7,node:U7,size:H7,empty:W7,each:Y7,attr:q7,style:j7,property:Q7,classed:J7,text:eA,html:tA,raise:rA,lower:nA,append:iA,insert:aA,remove:sA,clone:oA,datum:lA,on:cA,dispatch:uA,[Symbol.iterator]:hA};lu=qV});function ze(t){return typeof t=="string"?new ii([[document.querySelector(t)]],[document.documentElement]):new ii([[t]],fA)}var XV=M(()=>{"use strict";ml();o(ze,"default")});var gl=M(()=>{"use strict";uy();B4();XV();ml();F4();C7();K7()});var jV=M(()=>{"use strict"});function yh(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function xp(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}var dA=M(()=>{"use strict";o(yh,"default");o(xp,"extend")});function vh(){}function QV(){return this.rgb().formatHex()}function _we(){return this.rgb().formatHex8()}function Lwe(){return iU(this).formatHsl()}function ZV(){return this.rgb().formatRgb()}function vl(t){var e,r;return t=(t+"").trim().toLowerCase(),(e=wwe.exec(t))?(r=e[1].length,e=parseInt(e[1],16),r===6?JV(e):r===3?new sa(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):r===8?G4(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):r===4?G4(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=Twe.exec(t))?new sa(e[1],e[2],e[3],1):(e=kwe.exec(t))?new sa(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=Ewe.exec(t))?G4(e[1],e[2],e[3],e[4]):(e=Swe.exec(t))?G4(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=Cwe.exec(t))?rU(e[1],e[2]/100,e[3]/100,1):(e=Awe.exec(t))?rU(e[1],e[2]/100,e[3]/100,e[4]):KV.hasOwnProperty(t)?JV(KV[t]):t==="transparent"?new sa(NaN,NaN,NaN,0):null}function JV(t){return new sa(t>>16&255,t>>8&255,t&255,1)}function G4(t,e,r,n){return n<=0&&(t=e=r=NaN),new sa(t,e,r,n)}function mA(t){return t instanceof vh||(t=vl(t)),t?(t=t.rgb(),new sa(t.r,t.g,t.b,t.opacity)):new sa}function wp(t,e,r,n){return arguments.length===1?mA(t):new sa(t,e,r,n??1)}function sa(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function eU(){return`#${ed(this.r)}${ed(this.g)}${ed(this.b)}`}function Dwe(){return`#${ed(this.r)}${ed(this.g)}${ed(this.b)}${ed((isNaN(this.opacity)?1:this.opacity)*255)}`}function tU(){let t=U4(this.opacity);return`${t===1?"rgb(":"rgba("}${td(this.r)}, ${td(this.g)}, ${td(this.b)}${t===1?")":`, ${t})`}`}function U4(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function td(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function ed(t){return t=td(t),(t<16?"0":"")+t.toString(16)}function rU(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new yl(t,e,r,n)}function iU(t){if(t instanceof yl)return new yl(t.h,t.s,t.l,t.opacity);if(t instanceof vh||(t=vl(t)),!t)return new yl;if(t instanceof yl)return t;t=t.rgb();var e=t.r/255,r=t.g/255,n=t.b/255,i=Math.min(e,r,n),a=Math.max(e,r,n),s=NaN,l=a-i,u=(a+i)/2;return l?(e===a?s=(r-n)/l+(r0&&u<1?0:s,new yl(s,l,u,t.opacity)}function aU(t,e,r,n){return arguments.length===1?iU(t):new yl(t,e,r,n??1)}function yl(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function nU(t){return t=(t||0)%360,t<0?t+360:t}function $4(t){return Math.max(0,Math.min(1,t||0))}function pA(t,e,r){return(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)*255}var py,V4,bp,my,ac,wwe,Twe,kwe,Ewe,Swe,Cwe,Awe,KV,gA=M(()=>{"use strict";dA();o(vh,"Color");py=.7,V4=1/py,bp="\\s*([+-]?\\d+)\\s*",my="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",ac="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",wwe=/^#([0-9a-f]{3,8})$/,Twe=new RegExp(`^rgb\\(${bp},${bp},${bp}\\)$`),kwe=new RegExp(`^rgb\\(${ac},${ac},${ac}\\)$`),Ewe=new RegExp(`^rgba\\(${bp},${bp},${bp},${my}\\)$`),Swe=new RegExp(`^rgba\\(${ac},${ac},${ac},${my}\\)$`),Cwe=new RegExp(`^hsl\\(${my},${ac},${ac}\\)$`),Awe=new RegExp(`^hsla\\(${my},${ac},${ac},${my}\\)$`),KV={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};yh(vh,vl,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:QV,formatHex:QV,formatHex8:_we,formatHsl:Lwe,formatRgb:ZV,toString:ZV});o(QV,"color_formatHex");o(_we,"color_formatHex8");o(Lwe,"color_formatHsl");o(ZV,"color_formatRgb");o(vl,"color");o(JV,"rgbn");o(G4,"rgba");o(mA,"rgbConvert");o(wp,"rgb");o(sa,"Rgb");yh(sa,wp,xp(vh,{brighter(t){return t=t==null?V4:Math.pow(V4,t),new sa(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?py:Math.pow(py,t),new sa(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new sa(td(this.r),td(this.g),td(this.b),U4(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:eU,formatHex:eU,formatHex8:Dwe,formatRgb:tU,toString:tU}));o(eU,"rgb_formatHex");o(Dwe,"rgb_formatHex8");o(tU,"rgb_formatRgb");o(U4,"clampa");o(td,"clampi");o(ed,"hex");o(rU,"hsla");o(iU,"hslConvert");o(aU,"hsl");o(yl,"Hsl");yh(yl,aU,xp(vh,{brighter(t){return t=t==null?V4:Math.pow(V4,t),new yl(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?py:Math.pow(py,t),new yl(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,i=2*r-n;return new sa(pA(t>=240?t-240:t+120,i,n),pA(t,i,n),pA(t<120?t+240:t-120,i,n),this.opacity)},clamp(){return new yl(nU(this.h),$4(this.s),$4(this.l),U4(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(){let t=U4(this.opacity);return`${t===1?"hsl(":"hsla("}${nU(this.h)}, ${$4(this.s)*100}%, ${$4(this.l)*100}%${t===1?")":`, ${t})`}`}}));o(nU,"clamph");o($4,"clampt");o(pA,"hsl2rgb")});var sU,oU,lU=M(()=>{"use strict";sU=Math.PI/180,oU=180/Math.PI});function pU(t){if(t instanceof sc)return new sc(t.l,t.a,t.b,t.opacity);if(t instanceof cu)return mU(t);t instanceof sa||(t=mA(t));var e=bA(t.r),r=bA(t.g),n=bA(t.b),i=yA((.2225045*e+.7168786*r+.0606169*n)/uU),a,s;return e===r&&r===n?a=s=i:(a=yA((.4360747*e+.3850649*r+.1430804*n)/cU),s=yA((.0139322*e+.0971045*r+.7141733*n)/hU)),new sc(116*i-16,500*(a-i),200*(i-s),t.opacity)}function wA(t,e,r,n){return arguments.length===1?pU(t):new sc(t,e,r,n??1)}function sc(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function yA(t){return t>Nwe?Math.pow(t,1/3):t/dU+fU}function vA(t){return t>Tp?t*t*t:dU*(t-fU)}function xA(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function bA(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Rwe(t){if(t instanceof cu)return new cu(t.h,t.c,t.l,t.opacity);if(t instanceof sc||(t=pU(t)),t.a===0&&t.b===0)return new cu(NaN,0{"use strict";dA();gA();lU();H4=18,cU=.96422,uU=1,hU=.82521,fU=4/29,Tp=6/29,dU=3*Tp*Tp,Nwe=Tp*Tp*Tp;o(pU,"labConvert");o(wA,"lab");o(sc,"Lab");yh(sc,wA,xp(vh,{brighter(t){return new sc(this.l+H4*(t??1),this.a,this.b,this.opacity)},darker(t){return new sc(this.l-H4*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,r=isNaN(this.b)?t:t-this.b/200;return e=cU*vA(e),t=uU*vA(t),r=hU*vA(r),new sa(xA(3.1338561*e-1.6168667*t-.4906146*r),xA(-.9787684*e+1.9161415*t+.033454*r),xA(.0719453*e-.2289914*t+1.4052427*r),this.opacity)}}));o(yA,"xyz2lab");o(vA,"lab2xyz");o(xA,"lrgb2rgb");o(bA,"rgb2lrgb");o(Rwe,"hclConvert");o(gy,"hcl");o(cu,"Hcl");o(mU,"hcl2lab");yh(cu,gy,xp(vh,{brighter(t){return new cu(this.h,this.c,this.l+H4*(t??1),this.opacity)},darker(t){return new cu(this.h,this.c,this.l-H4*(t??1),this.opacity)},rgb(){return mU(this).rgb()}}))});var kp=M(()=>{"use strict";gA();gU()});function TA(t,e,r,n,i){var a=t*t,s=a*t;return((1-3*t+3*a-s)*e+(4-6*a+3*s)*r+(1+3*t+3*a-3*s)*n+s*i)/6}function kA(t){var e=t.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,e-1):Math.floor(r*e),i=t[n],a=t[n+1],s=n>0?t[n-1]:2*i-a,l=n{"use strict";o(TA,"basis");o(kA,"default")});function SA(t){var e=t.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*e),i=t[(n+e-1)%e],a=t[n%e],s=t[(n+1)%e],l=t[(n+2)%e];return TA((r-n/e)*e,i,a,s,l)}}var yU=M(()=>{"use strict";EA();o(SA,"default")});var Ep,CA=M(()=>{"use strict";Ep=o(t=>()=>t,"default")});function vU(t,e){return function(r){return t+r*e}}function Mwe(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+n*e,r)}}function xU(t,e){var r=e-t;return r?vU(t,r>180||r<-180?r-360*Math.round(r/360):r):Ep(isNaN(t)?e:t)}function bU(t){return(t=+t)==1?uu:function(e,r){return r-e?Mwe(e,r,t):Ep(isNaN(e)?r:e)}}function uu(t,e){var r=e-t;return r?vU(t,r):Ep(isNaN(t)?e:t)}var AA=M(()=>{"use strict";CA();o(vU,"linear");o(Mwe,"exponential");o(xU,"hue");o(bU,"gamma");o(uu,"nogamma")});function wU(t){return function(e){var r=e.length,n=new Array(r),i=new Array(r),a=new Array(r),s,l;for(s=0;s{"use strict";kp();EA();yU();AA();rd=o(function t(e){var r=bU(e);function n(i,a){var s=r((i=wp(i)).r,(a=wp(a)).r),l=r(i.g,a.g),u=r(i.b,a.b),h=uu(i.opacity,a.opacity);return function(f){return i.r=s(f),i.g=l(f),i.b=u(f),i.opacity=h(f),i+""}}return o(n,"rgb"),n.gamma=t,n},"rgbGamma")(1);o(wU,"rgbSpline");Iwe=wU(kA),Owe=wU(SA)});function LA(t,e){e||(e=[]);var r=t?Math.min(e.length,t.length):0,n=e.slice(),i;return function(a){for(i=0;i{"use strict";o(LA,"default");o(TU,"isNumberArray")});function EU(t,e){var r=e?e.length:0,n=t?Math.min(r,t.length):0,i=new Array(n),a=new Array(r),s;for(s=0;s{"use strict";W4();o(EU,"genericArray")});function DA(t,e){var r=new Date;return t=+t,e=+e,function(n){return r.setTime(t*(1-n)+e*n),r}}var CU=M(()=>{"use strict";o(DA,"default")});function Ki(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var yy=M(()=>{"use strict";o(Ki,"default")});function NA(t,e){var r={},n={},i;(t===null||typeof t!="object")&&(t={}),(e===null||typeof e!="object")&&(e={});for(i in e)i in t?r[i]=xh(t[i],e[i]):n[i]=e[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var AU=M(()=>{"use strict";W4();o(NA,"default")});function Pwe(t){return function(){return t}}function Bwe(t){return function(e){return t(e)+""}}function Sp(t,e){var r=MA.lastIndex=RA.lastIndex=0,n,i,a,s=-1,l=[],u=[];for(t=t+"",e=e+"";(n=MA.exec(t))&&(i=RA.exec(e));)(a=i.index)>r&&(a=e.slice(r,a),l[s]?l[s]+=a:l[++s]=a),(n=n[0])===(i=i[0])?l[s]?l[s]+=i:l[++s]=i:(l[++s]=null,u.push({i:s,x:Ki(n,i)})),r=RA.lastIndex;return r{"use strict";yy();MA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,RA=new RegExp(MA.source,"g");o(Pwe,"zero");o(Bwe,"one");o(Sp,"default")});function xh(t,e){var r=typeof e,n;return e==null||r==="boolean"?Ep(e):(r==="number"?Ki:r==="string"?(n=vl(e))?(e=n,rd):Sp:e instanceof vl?rd:e instanceof Date?DA:TU(e)?LA:Array.isArray(e)?EU:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?NA:Ki)(t,e)}var W4=M(()=>{"use strict";kp();_A();SU();CU();yy();AU();IA();CA();kU();o(xh,"default")});function Y4(t,e){return t=+t,e=+e,function(r){return Math.round(t*(1-r)+e*r)}}var _U=M(()=>{"use strict";o(Y4,"default")});function X4(t,e,r,n,i,a){var s,l,u;return(s=Math.sqrt(t*t+e*e))&&(t/=s,e/=s),(u=t*r+e*n)&&(r-=t*u,n-=e*u),(l=Math.sqrt(r*r+n*n))&&(r/=l,n/=l,u/=l),t*n{"use strict";LU=180/Math.PI,q4={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};o(X4,"default")});function NU(t){let e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?q4:X4(e.a,e.b,e.c,e.d,e.e,e.f)}function RU(t){return t==null?q4:(j4||(j4=document.createElementNS("http://www.w3.org/2000/svg","g")),j4.setAttribute("transform",t),(t=j4.transform.baseVal.consolidate())?(t=t.matrix,X4(t.a,t.b,t.c,t.d,t.e,t.f)):q4)}var j4,MU=M(()=>{"use strict";DU();o(NU,"parseCss");o(RU,"parseSvg")});function IU(t,e,r,n){function i(h){return h.length?h.pop()+" ":""}o(i,"pop");function a(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push("translate(",null,e,null,r);g.push({i:y-4,x:Ki(h,d)},{i:y-2,x:Ki(f,p)})}else(d||p)&&m.push("translate("+d+e+p+r)}o(a,"translate");function s(h,f,d,p){h!==f?(h-f>180?f+=360:f-h>180&&(h+=360),p.push({i:d.push(i(d)+"rotate(",null,n)-2,x:Ki(h,f)})):f&&d.push(i(d)+"rotate("+f+n)}o(s,"rotate");function l(h,f,d,p){h!==f?p.push({i:d.push(i(d)+"skewX(",null,n)-2,x:Ki(h,f)}):f&&d.push(i(d)+"skewX("+f+n)}o(l,"skewX");function u(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push(i(m)+"scale(",null,",",null,")");g.push({i:y-4,x:Ki(h,d)},{i:y-2,x:Ki(f,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return o(u,"scale"),function(h,f){var d=[],p=[];return h=t(h),f=t(f),a(h.translateX,h.translateY,f.translateX,f.translateY,d,p),s(h.rotate,f.rotate,d,p),l(h.skewX,f.skewX,d,p),u(h.scaleX,h.scaleY,f.scaleX,f.scaleY,d,p),h=f=null,function(m){for(var g=-1,y=p.length,v;++g{"use strict";yy();MU();o(IU,"interpolateTransform");OA=IU(NU,"px, ","px)","deg)"),PA=IU(RU,", ",")",")")});function PU(t){return function(e,r){var n=t((e=gy(e)).h,(r=gy(r)).h),i=uu(e.c,r.c),a=uu(e.l,r.l),s=uu(e.opacity,r.opacity);return function(l){return e.h=n(l),e.c=i(l),e.l=a(l),e.opacity=s(l),e+""}}}var BA,Fwe,BU=M(()=>{"use strict";kp();AA();o(PU,"hcl");BA=PU(xU),Fwe=PU(uu)});var Cp=M(()=>{"use strict";W4();yy();_U();IA();OU();_A();BU()});function ky(){return nd||(GU(zwe),nd=wy.now()+Z4)}function zwe(){nd=0}function Ty(){this._call=this._time=this._next=null}function J4(t,e,r){var n=new Ty;return n.restart(t,e,r),n}function $U(){ky(),++Ap;for(var t=K4,e;t;)(e=nd-t._time)>=0&&t._call.call(void 0,e),t=t._next;--Ap}function FU(){nd=(Q4=wy.now())+Z4,Ap=xy=0;try{$U()}finally{Ap=0,$we(),nd=0}}function Gwe(){var t=wy.now(),e=t-Q4;e>zU&&(Z4-=e,Q4=t)}function $we(){for(var t,e=K4,r,n=1/0;e;)e._call?(n>e._time&&(n=e._time),t=e,e=e._next):(r=e._next,e._next=null,e=t?t._next=r:K4=r);by=t,FA(n)}function FA(t){if(!Ap){xy&&(xy=clearTimeout(xy));var e=t-nd;e>24?(t<1/0&&(xy=setTimeout(FU,t-wy.now()-Z4)),vy&&(vy=clearInterval(vy))):(vy||(Q4=wy.now(),vy=setInterval(Gwe,zU)),Ap=1,GU(FU))}}var Ap,xy,vy,zU,K4,by,Q4,nd,Z4,wy,GU,zA=M(()=>{"use strict";Ap=0,xy=0,vy=0,zU=1e3,Q4=0,nd=0,Z4=0,wy=typeof performance=="object"&&performance.now?performance:Date,GU=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};o(ky,"now");o(zwe,"clearNow");o(Ty,"Timer");Ty.prototype=J4.prototype={constructor:Ty,restart:o(function(t,e,r){if(typeof t!="function")throw new TypeError("callback is not a function");r=(r==null?ky():+r)+(e==null?0:+e),!this._next&&by!==this&&(by?by._next=this:K4=this,by=this),this._call=t,this._time=r,FA()},"restart"),stop:o(function(){this._call&&(this._call=null,this._time=1/0,FA())},"stop")};o(J4,"timer");o($U,"timerFlush");o(FU,"wake");o(Gwe,"poke");o($we,"nap");o(FA,"sleep")});function Ey(t,e,r){var n=new Ty;return e=e==null?0:+e,n.restart(i=>{n.stop(),t(i+e)},e,r),n}var VU=M(()=>{"use strict";zA();o(Ey,"default")});var e3=M(()=>{"use strict";zA();VU()});function hu(t,e,r,n,i,a){var s=t.__transition;if(!s)t.__transition={};else if(r in s)return;Hwe(t,r,{name:e,index:n,group:i,on:Vwe,tween:Uwe,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:WU})}function Cy(t,e){var r=Oi(t,e);if(r.state>WU)throw new Error("too late; already scheduled");return r}function oa(t,e){var r=Oi(t,e);if(r.state>t3)throw new Error("too late; already running");return r}function Oi(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function Hwe(t,e,r){var n=t.__transition,i;n[e]=r,r.timer=J4(a,0,r.time);function a(h){r.state=UU,r.timer.restart(s,r.delay,r.time),r.delay<=h&&s(h-r.delay)}o(a,"schedule");function s(h){var f,d,p,m;if(r.state!==UU)return u();for(f in n)if(m=n[f],m.name===r.name){if(m.state===t3)return Ey(s);m.state===HU?(m.state=Sy,m.timer.stop(),m.on.call("interrupt",t,t.__data__,m.index,m.group),delete n[f]):+f{"use strict";b7();e3();Vwe=x7("start","end","cancel","interrupt"),Uwe=[],WU=0,UU=1,r3=2,t3=3,HU=4,n3=5,Sy=6;o(hu,"default");o(Cy,"init");o(oa,"set");o(Oi,"get");o(Hwe,"create")});function Ay(t,e){var r=t.__transition,n,i,a=!0,s;if(r){e=e==null?null:e+"";for(s in r){if((n=r[s]).name!==e){a=!1;continue}i=n.state>r3&&n.state{"use strict";ys();o(Ay,"default")});function GA(t){return this.each(function(){Ay(this,t)})}var qU=M(()=>{"use strict";YU();o(GA,"default")});function Wwe(t,e){var r,n;return function(){var i=oa(this,t),a=i.tween;if(a!==r){n=r=a;for(var s=0,l=n.length;s{"use strict";ys();o(Wwe,"tweenRemove");o(Ywe,"tweenFunction");o($A,"default");o(_p,"tweenValue")});function Ly(t,e){var r;return(typeof e=="number"?Ki:e instanceof vl?rd:(r=vl(e))?(e=r,rd):Sp)(t,e)}var VA=M(()=>{"use strict";kp();Cp();o(Ly,"default")});function qwe(t){return function(){this.removeAttribute(t)}}function Xwe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function jwe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttribute(t);return s===i?null:s===n?a:a=e(n=s,r)}}function Kwe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttributeNS(t.space,t.local);return s===i?null:s===n?a:a=e(n=s,r)}}function Qwe(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttribute(t):(s=this.getAttribute(t),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function Zwe(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttributeNS(t.space,t.local):(s=this.getAttributeNS(t.space,t.local),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function UA(t,e){var r=ic(t),n=r==="transform"?PA:Ly;return this.attrTween(t,typeof e=="function"?(r.local?Zwe:Qwe)(r,n,_p(this,"attr."+t,e)):e==null?(r.local?Xwe:qwe)(r):(r.local?Kwe:jwe)(r,n,e))}var XU=M(()=>{"use strict";Cp();gl();_y();VA();o(qwe,"attrRemove");o(Xwe,"attrRemoveNS");o(jwe,"attrConstant");o(Kwe,"attrConstantNS");o(Qwe,"attrFunction");o(Zwe,"attrFunctionNS");o(UA,"default")});function Jwe(t,e){return function(r){this.setAttribute(t,e.call(this,r))}}function eTe(t,e){return function(r){this.setAttributeNS(t.space,t.local,e.call(this,r))}}function tTe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&eTe(t,a)),r}return o(i,"tween"),i._value=e,i}function rTe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&Jwe(t,a)),r}return o(i,"tween"),i._value=e,i}function HA(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!="function")throw new Error;var n=ic(t);return this.tween(r,(n.local?tTe:rTe)(n,e))}var jU=M(()=>{"use strict";gl();o(Jwe,"attrInterpolate");o(eTe,"attrInterpolateNS");o(tTe,"attrTweenNS");o(rTe,"attrTween");o(HA,"default")});function nTe(t,e){return function(){Cy(this,t).delay=+e.apply(this,arguments)}}function iTe(t,e){return e=+e,function(){Cy(this,t).delay=e}}function WA(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?nTe:iTe)(e,t)):Oi(this.node(),e).delay}var KU=M(()=>{"use strict";ys();o(nTe,"delayFunction");o(iTe,"delayConstant");o(WA,"default")});function aTe(t,e){return function(){oa(this,t).duration=+e.apply(this,arguments)}}function sTe(t,e){return e=+e,function(){oa(this,t).duration=e}}function YA(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?aTe:sTe)(e,t)):Oi(this.node(),e).duration}var QU=M(()=>{"use strict";ys();o(aTe,"durationFunction");o(sTe,"durationConstant");o(YA,"default")});function oTe(t,e){if(typeof e!="function")throw new Error;return function(){oa(this,t).ease=e}}function qA(t){var e=this._id;return arguments.length?this.each(oTe(e,t)):Oi(this.node(),e).ease}var ZU=M(()=>{"use strict";ys();o(oTe,"easeConstant");o(qA,"default")});function lTe(t,e){return function(){var r=e.apply(this,arguments);if(typeof r!="function")throw new Error;oa(this,t).ease=r}}function XA(t){if(typeof t!="function")throw new Error;return this.each(lTe(this._id,t))}var JU=M(()=>{"use strict";ys();o(lTe,"easeVarying");o(XA,"default")});function jA(t){typeof t!="function"&&(t=vp(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";gl();id();o(jA,"default")});function KA(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,r=t._groups,n=e.length,i=r.length,a=Math.min(n,i),s=new Array(n),l=0;l{"use strict";id();o(KA,"default")});function cTe(t){return(t+"").trim().split(/^|\s+/).every(function(e){var r=e.indexOf(".");return r>=0&&(e=e.slice(0,r)),!e||e==="start"})}function uTe(t,e,r){var n,i,a=cTe(e)?Cy:oa;return function(){var s=a(this,t),l=s.on;l!==n&&(i=(n=l).copy()).on(e,r),s.on=i}}function QA(t,e){var r=this._id;return arguments.length<2?Oi(this.node(),r).on.on(t):this.each(uTe(r,t,e))}var rH=M(()=>{"use strict";ys();o(cTe,"start");o(uTe,"onFunction");o(QA,"default")});function hTe(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}function ZA(){return this.on("end.remove",hTe(this._id))}var nH=M(()=>{"use strict";o(hTe,"removeFunction");o(ZA,"default")});function JA(t){var e=this._name,r=this._id;typeof t!="function"&&(t=mh(t));for(var n=this._groups,i=n.length,a=new Array(i),s=0;s{"use strict";gl();id();ys();o(JA,"default")});function e8(t){var e=this._name,r=this._id;typeof t!="function"&&(t=yp(t));for(var n=this._groups,i=n.length,a=[],s=[],l=0;l{"use strict";gl();id();ys();o(e8,"default")});function t8(){return new fTe(this._groups,this._parents)}var fTe,sH=M(()=>{"use strict";gl();fTe=lu.prototype.constructor;o(t8,"default")});function dTe(t,e){var r,n,i;return function(){var a=gh(this,t),s=(this.style.removeProperty(t),gh(this,t));return a===s?null:a===r&&s===n?i:i=e(r=a,n=s)}}function oH(t){return function(){this.style.removeProperty(t)}}function pTe(t,e,r){var n,i=r+"",a;return function(){var s=gh(this,t);return s===i?null:s===n?a:a=e(n=s,r)}}function mTe(t,e,r){var n,i,a;return function(){var s=gh(this,t),l=r(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(t),gh(this,t))),s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l))}}function gTe(t,e){var r,n,i,a="style."+e,s="end."+a,l;return function(){var u=oa(this,t),h=u.on,f=u.value[a]==null?l||(l=oH(e)):void 0;(h!==r||i!==f)&&(n=(r=h).copy()).on(s,i=f),u.on=n}}function r8(t,e,r){var n=(t+="")=="transform"?OA:Ly;return e==null?this.styleTween(t,dTe(t,n)).on("end.style."+t,oH(t)):typeof e=="function"?this.styleTween(t,mTe(t,n,_p(this,"style."+t,e))).each(gTe(this._id,t)):this.styleTween(t,pTe(t,n,e),r).on("end.style."+t,null)}var lH=M(()=>{"use strict";Cp();gl();ys();_y();VA();o(dTe,"styleNull");o(oH,"styleRemove");o(pTe,"styleConstant");o(mTe,"styleFunction");o(gTe,"styleMaybeRemove");o(r8,"default")});function yTe(t,e,r){return function(n){this.style.setProperty(t,e.call(this,n),r)}}function vTe(t,e,r){var n,i;function a(){var s=e.apply(this,arguments);return s!==i&&(n=(i=s)&&yTe(t,s,r)),n}return o(a,"tween"),a._value=e,a}function n8(t,e,r){var n="style."+(t+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,vTe(t,e,r??""))}var cH=M(()=>{"use strict";o(yTe,"styleInterpolate");o(vTe,"styleTween");o(n8,"default")});function xTe(t){return function(){this.textContent=t}}function bTe(t){return function(){var e=t(this);this.textContent=e??""}}function i8(t){return this.tween("text",typeof t=="function"?bTe(_p(this,"text",t)):xTe(t==null?"":t+""))}var uH=M(()=>{"use strict";_y();o(xTe,"textConstant");o(bTe,"textFunction");o(i8,"default")});function wTe(t){return function(e){this.textContent=t.call(this,e)}}function TTe(t){var e,r;function n(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&wTe(i)),e}return o(n,"tween"),n._value=t,n}function a8(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,TTe(t))}var hH=M(()=>{"use strict";o(wTe,"textInterpolate");o(TTe,"textTween");o(a8,"default")});function s8(){for(var t=this._name,e=this._id,r=i3(),n=this._groups,i=n.length,a=0;a{"use strict";id();ys();o(s8,"default")});function o8(){var t,e,r=this,n=r._id,i=r.size();return new Promise(function(a,s){var l={value:s},u={value:o(function(){--i===0&&a()},"value")};r.each(function(){var h=oa(this,n),f=h.on;f!==t&&(e=(t=f).copy(),e._.cancel.push(l),e._.interrupt.push(l),e._.end.push(u)),h.on=e}),i===0&&a()})}var dH=M(()=>{"use strict";ys();o(o8,"default")});function ja(t,e,r,n){this._groups=t,this._parents=e,this._name=r,this._id=n}function pH(t){return lu().transition(t)}function i3(){return++kTe}var kTe,fu,id=M(()=>{"use strict";gl();XU();jU();KU();QU();ZU();JU();eH();tH();rH();nH();iH();aH();sH();lH();cH();uH();hH();fH();_y();dH();kTe=0;o(ja,"Transition");o(pH,"transition");o(i3,"newId");fu=lu.prototype;ja.prototype=pH.prototype={constructor:ja,select:JA,selectAll:e8,selectChild:fu.selectChild,selectChildren:fu.selectChildren,filter:jA,merge:KA,selection:t8,transition:s8,call:fu.call,nodes:fu.nodes,node:fu.node,size:fu.size,empty:fu.empty,each:fu.each,on:QA,attr:UA,attrTween:HA,style:r8,styleTween:n8,text:i8,textTween:a8,remove:ZA,tween:$A,delay:WA,duration:YA,ease:qA,easeVarying:XA,end:o8,[Symbol.iterator]:fu[Symbol.iterator]}});function a3(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var mH=M(()=>{"use strict";o(a3,"cubicInOut")});var l8=M(()=>{"use strict";mH()});function STe(t,e){for(var r;!(r=t.__transition)||!(r=r[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return r}function c8(t){var e,r;t instanceof ja?(e=t._id,t=t._name):(e=i3(),(r=ETe).time=ky(),t=t==null?null:t+"");for(var n=this._groups,i=n.length,a=0;a{"use strict";id();ys();l8();e3();ETe={time:null,delay:0,duration:250,ease:a3};o(STe,"inherit");o(c8,"default")});var yH=M(()=>{"use strict";gl();qU();gH();lu.prototype.interrupt=GA;lu.prototype.transition=c8});var s3=M(()=>{"use strict";yH()});var vH=M(()=>{"use strict"});var xH=M(()=>{"use strict"});var bH=M(()=>{"use strict"});function wH(t){return[+t[0],+t[1]]}function CTe(t){return[wH(t[0]),wH(t[1])]}function u8(t){return{type:t}}var t1t,r1t,n1t,i1t,a1t,s1t,TH=M(()=>{"use strict";s3();vH();xH();bH();({abs:t1t,max:r1t,min:n1t}=Math);o(wH,"number1");o(CTe,"number2");i1t={name:"x",handles:["w","e"].map(u8),input:o(function(t,e){return t==null?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},"input"),output:o(function(t){return t&&[t[0][0],t[1][0]]},"output")},a1t={name:"y",handles:["n","s"].map(u8),input:o(function(t,e){return t==null?null:[[e[0][0],+t[0]],[e[1][0],+t[1]]]},"input"),output:o(function(t){return t&&[t[0][1],t[1][1]]},"output")},s1t={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(u8),input:o(function(t){return t==null?null:CTe(t)},"input"),output:o(function(t){return t},"output")};o(u8,"type")});var kH=M(()=>{"use strict";TH()});function EH(t){this._+=t[0];for(let e=1,r=t.length;e=0))throw new Error(`invalid digits: ${t}`);if(e>15)return EH;let r=10**e;return function(n){this._+=n[0];for(let i=1,a=n.length;i{"use strict";h8=Math.PI,f8=2*h8,ad=1e-6,ATe=f8-ad;o(EH,"append");o(_Te,"appendRound");sd=class{static{o(this,"Path")}constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=e==null?EH:_Te(e)}moveTo(e,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,r){this._append`L${this._x1=+e},${this._y1=+r}`}quadraticCurveTo(e,r,n,i){this._append`Q${+e},${+r},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(e,r,n,i,a,s){this._append`C${+e},${+r},${+n},${+i},${this._x1=+a},${this._y1=+s}`}arcTo(e,r,n,i,a){if(e=+e,r=+r,n=+n,i=+i,a=+a,a<0)throw new Error(`negative radius: ${a}`);let s=this._x1,l=this._y1,u=n-e,h=i-r,f=s-e,d=l-r,p=f*f+d*d;if(this._x1===null)this._append`M${this._x1=e},${this._y1=r}`;else if(p>ad)if(!(Math.abs(d*u-h*f)>ad)||!a)this._append`L${this._x1=e},${this._y1=r}`;else{let m=n-s,g=i-l,y=u*u+h*h,v=m*m+g*g,x=Math.sqrt(y),b=Math.sqrt(p),w=a*Math.tan((h8-Math.acos((y+p-v)/(2*x*b)))/2),_=w/b,T=w/x;Math.abs(_-1)>ad&&this._append`L${e+_*f},${r+_*d}`,this._append`A${a},${a},0,0,${+(d*m>f*g)},${this._x1=e+T*u},${this._y1=r+T*h}`}}arc(e,r,n,i,a,s){if(e=+e,r=+r,n=+n,s=!!s,n<0)throw new Error(`negative radius: ${n}`);let l=n*Math.cos(i),u=n*Math.sin(i),h=e+l,f=r+u,d=1^s,p=s?i-a:a-i;this._x1===null?this._append`M${h},${f}`:(Math.abs(this._x1-h)>ad||Math.abs(this._y1-f)>ad)&&this._append`L${h},${f}`,n&&(p<0&&(p=p%f8+f8),p>ATe?this._append`A${n},${n},0,1,${d},${e-l},${r-u}A${n},${n},0,1,${d},${this._x1=h},${this._y1=f}`:p>ad&&this._append`A${n},${n},0,${+(p>=h8)},${d},${this._x1=e+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(e,r,n,i){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}};o(SH,"path");SH.prototype=sd.prototype});var d8=M(()=>{"use strict";CH()});var AH=M(()=>{"use strict"});var _H=M(()=>{"use strict"});var LH=M(()=>{"use strict"});var DH=M(()=>{"use strict"});var NH=M(()=>{"use strict"});var RH=M(()=>{"use strict"});var MH=M(()=>{"use strict"});function p8(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function od(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,n=t.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+t.slice(r+1)]}var Dy=M(()=>{"use strict";o(p8,"default");o(od,"formatDecimalParts")});function xl(t){return t=od(Math.abs(t)),t?t[1]:NaN}var Ny=M(()=>{"use strict";Dy();o(xl,"default")});function m8(t,e){return function(r,n){for(var i=r.length,a=[],s=0,l=t[0],u=0;i>0&&l>0&&(u+l+1>n&&(l=Math.max(1,n-u)),a.push(r.substring(i-=l,i+l)),!((u+=l+1)>n));)l=t[s=(s+1)%t.length];return a.reverse().join(e)}}var IH=M(()=>{"use strict";o(m8,"default")});function g8(t){return function(e){return e.replace(/[0-9]/g,function(r){return t[+r]})}}var OH=M(()=>{"use strict";o(g8,"default")});function bh(t){if(!(e=LTe.exec(t)))throw new Error("invalid format: "+t);var e;return new o3({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 o3(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}var LTe,y8=M(()=>{"use strict";LTe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;o(bh,"formatSpecifier");bh.prototype=o3.prototype;o(o3,"FormatSpecifier");o3.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type}});function v8(t){e:for(var e=t.length,r=1,n=-1,i;r0&&(n=0);break}return n>0?t.slice(0,n)+t.slice(i+1):t}var PH=M(()=>{"use strict";o(v8,"default")});function b8(t,e){var r=od(t,e);if(!r)return t+"";var n=r[0],i=r[1],a=i-(x8=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,s=n.length;return a===s?n:a>s?n+new Array(a-s+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+od(t,Math.max(0,e+a-1))[0]}var x8,w8=M(()=>{"use strict";Dy();o(b8,"default")});function l3(t,e){var r=od(t,e);if(!r)return t+"";var n=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+n:n.length>i+1?n.slice(0,i+1)+"."+n.slice(i+1):n+new Array(i-n.length+2).join("0")}var BH=M(()=>{"use strict";Dy();o(l3,"default")});var T8,FH=M(()=>{"use strict";Dy();w8();BH();T8={"%":o((t,e)=>(t*100).toFixed(e),"%"),b:o(t=>Math.round(t).toString(2),"b"),c:o(t=>t+"","c"),d:p8,e:o((t,e)=>t.toExponential(e),"e"),f:o((t,e)=>t.toFixed(e),"f"),g:o((t,e)=>t.toPrecision(e),"g"),o:o(t=>Math.round(t).toString(8),"o"),p:o((t,e)=>l3(t*100,e),"p"),r:l3,s:b8,X:o(t=>Math.round(t).toString(16).toUpperCase(),"X"),x:o(t=>Math.round(t).toString(16),"x")}});function c3(t){return t}var zH=M(()=>{"use strict";o(c3,"default")});function k8(t){var e=t.grouping===void 0||t.thousands===void 0?c3:m8(GH.call(t.grouping,Number),t.thousands+""),r=t.currency===void 0?"":t.currency[0]+"",n=t.currency===void 0?"":t.currency[1]+"",i=t.decimal===void 0?".":t.decimal+"",a=t.numerals===void 0?c3:g8(GH.call(t.numerals,String)),s=t.percent===void 0?"%":t.percent+"",l=t.minus===void 0?"\u2212":t.minus+"",u=t.nan===void 0?"NaN":t.nan+"";function h(d){d=bh(d);var p=d.fill,m=d.align,g=d.sign,y=d.symbol,v=d.zero,x=d.width,b=d.comma,w=d.precision,_=d.trim,T=d.type;T==="n"?(b=!0,T="g"):T8[T]||(w===void 0&&(w=12),_=!0,T="g"),(v||p==="0"&&m==="=")&&(v=!0,p="0",m="=");var E=y==="$"?r:y==="#"&&/[boxX]/.test(T)?"0"+T.toLowerCase():"",L=y==="$"?n:/[%p]/.test(T)?s:"",C=T8[T],A=/[defgprs%]/.test(T);w=w===void 0?6:/[gprs]/.test(T)?Math.max(1,Math.min(21,w)):Math.max(0,Math.min(20,w));function I(D){var k=E,R=L,S,O,N;if(T==="c")R=C(D)+R,D="";else{D=+D;var P=D<0||1/D<0;if(D=isNaN(D)?u:C(Math.abs(D),w),_&&(D=v8(D)),P&&+D==0&&g!=="+"&&(P=!1),k=(P?g==="("?g:l:g==="-"||g==="("?"":g)+k,R=(T==="s"?$H[8+x8/3]:"")+R+(P&&g==="("?")":""),A){for(S=-1,O=D.length;++SN||N>57){R=(N===46?i+D.slice(S+1):D.slice(S))+R,D=D.slice(0,S);break}}}b&&!v&&(D=e(D,1/0));var F=k.length+D.length+R.length,B=F>1)+k+D+R+B.slice(F);break;default:D=B+k+D+R;break}return a(D)}return o(I,"format"),I.toString=function(){return d+""},I}o(h,"newFormat");function f(d,p){var m=h((d=bh(d),d.type="f",d)),g=Math.max(-8,Math.min(8,Math.floor(xl(p)/3)))*3,y=Math.pow(10,-g),v=$H[8+g/3];return function(x){return m(y*x)+v}}return o(f,"formatPrefix"),{format:h,formatPrefix:f}}var GH,$H,VH=M(()=>{"use strict";Ny();IH();OH();y8();PH();FH();w8();zH();GH=Array.prototype.map,$H=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];o(k8,"default")});function E8(t){return u3=k8(t),h3=u3.format,f3=u3.formatPrefix,u3}var u3,h3,f3,UH=M(()=>{"use strict";VH();E8({thousands:",",grouping:[3],currency:["$",""]});o(E8,"defaultLocale")});function d3(t){return Math.max(0,-xl(Math.abs(t)))}var HH=M(()=>{"use strict";Ny();o(d3,"default")});function p3(t,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(xl(e)/3)))*3-xl(Math.abs(t)))}var WH=M(()=>{"use strict";Ny();o(p3,"default")});function m3(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,xl(e)-xl(t))+1}var YH=M(()=>{"use strict";Ny();o(m3,"default")});var S8=M(()=>{"use strict";UH();y8();HH();WH();YH()});var qH=M(()=>{"use strict"});var XH=M(()=>{"use strict"});var jH=M(()=>{"use strict"});var KH=M(()=>{"use strict"});function wh(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t);break}return this}var Ry=M(()=>{"use strict";o(wh,"initRange")});function du(){var t=new mp,e=[],r=[],n=C8;function i(a){let s=t.get(a);if(s===void 0){if(n!==C8)return n;t.set(a,s=e.push(a)-1)}return r[s%r.length]}return o(i,"scale"),i.domain=function(a){if(!arguments.length)return e.slice();e=[],t=new mp;for(let s of a)t.has(s)||t.set(s,e.push(s)-1);return i},i.range=function(a){return arguments.length?(r=Array.from(a),i):r.slice()},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return du(e,r).unknown(n)},wh.apply(i,arguments),i}var C8,A8=M(()=>{"use strict";ph();Ry();C8=Symbol("implicit");o(du,"ordinal")});function Lp(){var t=du().unknown(void 0),e=t.domain,r=t.range,n=0,i=1,a,s,l=!1,u=0,h=0,f=.5;delete t.unknown;function d(){var p=e().length,m=i{"use strict";ph();Ry();A8();o(Lp,"band")});function _8(t){return function(){return t}}var ZH=M(()=>{"use strict";o(_8,"constants")});function L8(t){return+t}var JH=M(()=>{"use strict";o(L8,"number")});function Dp(t){return t}function D8(t,e){return(e-=t=+t)?function(r){return(r-t)/e}:_8(isNaN(e)?NaN:.5)}function DTe(t,e){var r;return t>e&&(r=t,t=e,e=r),function(n){return Math.max(t,Math.min(e,n))}}function NTe(t,e,r){var n=t[0],i=t[1],a=e[0],s=e[1];return i2?RTe:NTe,u=h=null,d}o(f,"rescale");function d(p){return p==null||isNaN(p=+p)?a:(u||(u=l(t.map(n),e,r)))(n(s(p)))}return o(d,"scale"),d.invert=function(p){return s(i((h||(h=l(e,t.map(n),Ki)))(p)))},d.domain=function(p){return arguments.length?(t=Array.from(p,L8),f()):t.slice()},d.range=function(p){return arguments.length?(e=Array.from(p),f()):e.slice()},d.rangeRound=function(p){return e=Array.from(p),r=Y4,f()},d.clamp=function(p){return arguments.length?(s=p?!0:Dp,f()):s!==Dp},d.interpolate=function(p){return arguments.length?(r=p,f()):r},d.unknown=function(p){return arguments.length?(a=p,d):a},function(p,m){return n=p,i=m,f()}}function My(){return MTe()(Dp,Dp)}var eW,N8=M(()=>{"use strict";ph();Cp();ZH();JH();eW=[0,1];o(Dp,"identity");o(D8,"normalize");o(DTe,"clamper");o(NTe,"bimap");o(RTe,"polymap");o(g3,"copy");o(MTe,"transformer");o(My,"continuous")});function R8(t,e,r,n){var i=gp(t,e,r),a;switch(n=bh(n??",f"),n.type){case"s":{var s=Math.max(Math.abs(t),Math.abs(e));return n.precision==null&&!isNaN(a=p3(i,s))&&(n.precision=a),f3(n,s)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=m3(i,Math.max(Math.abs(t),Math.abs(e))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=d3(i))&&(n.precision=a-(n.type==="%")*2);break}}return h3(n)}var tW=M(()=>{"use strict";ph();S8();o(R8,"tickFormat")});function ITe(t){var e=t.domain;return t.ticks=function(r){var n=e();return L4(n[0],n[n.length-1],r??10)},t.tickFormat=function(r,n){var i=e();return R8(i[0],i[i.length-1],r??10,n)},t.nice=function(r){r==null&&(r=10);var n=e(),i=0,a=n.length-1,s=n[i],l=n[a],u,h,f=10;for(l0;){if(h=ly(s,l,r),h===u)return n[i]=s,n[a]=l,e(n);if(h>0)s=Math.floor(s/h)*h,l=Math.ceil(l/h)*h;else if(h<0)s=Math.ceil(s*h)/h,l=Math.floor(l*h)/h;else break;u=h}return t},t}function bl(){var t=My();return t.copy=function(){return g3(t,bl())},wh.apply(t,arguments),ITe(t)}var rW=M(()=>{"use strict";ph();N8();Ry();tW();o(ITe,"linearish");o(bl,"linear")});function M8(t,e){t=t.slice();var r=0,n=t.length-1,i=t[r],a=t[n],s;return a{"use strict";o(M8,"nice")});function gn(t,e,r,n){function i(a){return t(a=arguments.length===0?new Date:new Date(+a)),a}return o(i,"interval"),i.floor=a=>(t(a=new Date(+a)),a),i.ceil=a=>(t(a=new Date(a-1)),e(a,1),t(a),a),i.round=a=>{let s=i(a),l=i.ceil(a);return a-s(e(a=new Date(+a),s==null?1:Math.floor(s)),a),i.range=(a,s,l)=>{let u=[];if(a=i.ceil(a),l=l==null?1:Math.floor(l),!(a0))return u;let h;do u.push(h=new Date(+a)),e(a,l),t(a);while(hgn(s=>{if(s>=s)for(;t(s),!a(s);)s.setTime(s-1)},(s,l)=>{if(s>=s)if(l<0)for(;++l<=0;)for(;e(s,-1),!a(s););else for(;--l>=0;)for(;e(s,1),!a(s););}),r&&(i.count=(a,s)=>(I8.setTime(+a),O8.setTime(+s),t(I8),t(O8),Math.floor(r(I8,O8))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(n?s=>n(s)%a===0:s=>i.count(0,s)%a===0):i)),i}var I8,O8,pu=M(()=>{"use strict";I8=new Date,O8=new Date;o(gn,"timeInterval")});var oc,iW,P8=M(()=>{"use strict";pu();oc=gn(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);oc.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?gn(e=>{e.setTime(Math.floor(e/t)*t)},(e,r)=>{e.setTime(+e+r*t)},(e,r)=>(r-e)/t):oc);iW=oc.range});var Xs,aW,B8=M(()=>{"use strict";pu();Xs=gn(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*1e3)},(t,e)=>(e-t)/1e3,t=>t.getUTCSeconds()),aW=Xs.range});var mu,OTe,y3,PTe,F8=M(()=>{"use strict";pu();mu=gn(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getMinutes()),OTe=mu.range,y3=gn(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getUTCMinutes()),PTe=y3.range});var gu,BTe,v3,FTe,z8=M(()=>{"use strict";pu();gu=gn(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3-t.getMinutes()*6e4)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getHours()),BTe=gu.range,v3=gn(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getUTCHours()),FTe=v3.range});var Lo,zTe,Oy,GTe,x3,$Te,G8=M(()=>{"use strict";pu();Lo=gn(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/864e5,t=>t.getDate()-1),zTe=Lo.range,Oy=gn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>t.getUTCDate()-1),GTe=Oy.range,x3=gn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>Math.floor(t/864e5)),$Te=x3.range});function ud(t){return gn(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,r)=>{e.setDate(e.getDate()+r*7)},(e,r)=>(r-e-(r.getTimezoneOffset()-e.getTimezoneOffset())*6e4)/6048e5)}function hd(t){return gn(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,r)=>{e.setUTCDate(e.getUTCDate()+r*7)},(e,r)=>(r-e)/6048e5)}var wl,Th,b3,w3,cc,T3,k3,oW,VTe,UTe,HTe,WTe,YTe,qTe,fd,Np,lW,cW,kh,uW,hW,fW,XTe,jTe,KTe,QTe,ZTe,JTe,$8=M(()=>{"use strict";pu();o(ud,"timeWeekday");wl=ud(0),Th=ud(1),b3=ud(2),w3=ud(3),cc=ud(4),T3=ud(5),k3=ud(6),oW=wl.range,VTe=Th.range,UTe=b3.range,HTe=w3.range,WTe=cc.range,YTe=T3.range,qTe=k3.range;o(hd,"utcWeekday");fd=hd(0),Np=hd(1),lW=hd(2),cW=hd(3),kh=hd(4),uW=hd(5),hW=hd(6),fW=fd.range,XTe=Np.range,jTe=lW.range,KTe=cW.range,QTe=kh.range,ZTe=uW.range,JTe=hW.range});var yu,eke,E3,tke,V8=M(()=>{"use strict";pu();yu=gn(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth()),eke=yu.range,E3=gn(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth()),tke=E3.range});var js,rke,Tl,nke,U8=M(()=>{"use strict";pu();js=gn(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());js.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:gn(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)});rke=js.range,Tl=gn(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());Tl.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:gn(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)});nke=Tl.range});function pW(t,e,r,n,i,a){let s=[[Xs,1,1e3],[Xs,5,5*1e3],[Xs,15,15*1e3],[Xs,30,30*1e3],[a,1,6e4],[a,5,5*6e4],[a,15,15*6e4],[a,30,30*6e4],[i,1,36e5],[i,3,3*36e5],[i,6,6*36e5],[i,12,12*36e5],[n,1,864e5],[n,2,2*864e5],[r,1,6048e5],[e,1,2592e6],[e,3,3*2592e6],[t,1,31536e6]];function l(h,f,d){let p=fv).right(s,p);if(m===s.length)return t.every(gp(h/31536e6,f/31536e6,d));if(m===0)return oc.every(Math.max(gp(h,f,d),1));let[g,y]=s[p/s[m-1][2]{"use strict";ph();P8();B8();F8();z8();G8();$8();V8();U8();o(pW,"ticker");[ake,ske]=pW(Tl,E3,fd,x3,v3,y3),[H8,W8]=pW(js,yu,wl,Lo,gu,mu)});var S3=M(()=>{"use strict";P8();B8();F8();z8();G8();$8();V8();U8();mW()});function Y8(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 q8(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 Py(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}function X8(t){var e=t.dateTime,r=t.date,n=t.time,i=t.periods,a=t.days,s=t.shortDays,l=t.months,u=t.shortMonths,h=By(i),f=Fy(i),d=By(a),p=Fy(a),m=By(s),g=Fy(s),y=By(l),v=Fy(l),x=By(u),b=Fy(u),w={a:P,A:F,b:B,B:$,c:null,d:wW,e:wW,f:Lke,g:zke,G:$ke,H:Cke,I:Ake,j:_ke,L:CW,m:Dke,M:Nke,p:z,q:W,Q:EW,s:SW,S:Rke,u:Mke,U:Ike,V:Oke,w:Pke,W:Bke,x:null,X:null,y:Fke,Y:Gke,Z:Vke,"%":kW},_={a:j,A:K,b:ie,B:Q,c:null,d:TW,e:TW,f:Yke,g:rEe,G:iEe,H:Uke,I:Hke,j:Wke,L:_W,m:qke,M:Xke,p:ee,q:J,Q:EW,s:SW,S:jke,u:Kke,U:Qke,V:Zke,w:Jke,W:eEe,x:null,X:null,y:tEe,Y:nEe,Z:aEe,"%":kW},T={a:I,A:D,b:k,B:R,c:S,d:xW,e:xW,f:Tke,g:vW,G:yW,H:bW,I:bW,j:vke,L:wke,m:yke,M:xke,p:A,q:gke,Q:Eke,s:Ske,S:bke,u:hke,U:fke,V:dke,w:uke,W:pke,x:O,X:N,y:vW,Y:yW,Z:mke,"%":kke};w.x=E(r,w),w.X=E(n,w),w.c=E(e,w),_.x=E(r,_),_.X=E(n,_),_.c=E(e,_);function E(H,q){return function(Z){var ae=[],ue=-1,ce=0,te=H.length,De,oe,ke;for(Z instanceof Date||(Z=new Date(+Z));++ue53)return null;"w"in ae||(ae.w=1),"Z"in ae?(ce=q8(Py(ae.y,0,1)),te=ce.getUTCDay(),ce=te>4||te===0?Np.ceil(ce):Np(ce),ce=Oy.offset(ce,(ae.V-1)*7),ae.y=ce.getUTCFullYear(),ae.m=ce.getUTCMonth(),ae.d=ce.getUTCDate()+(ae.w+6)%7):(ce=Y8(Py(ae.y,0,1)),te=ce.getDay(),ce=te>4||te===0?Th.ceil(ce):Th(ce),ce=Lo.offset(ce,(ae.V-1)*7),ae.y=ce.getFullYear(),ae.m=ce.getMonth(),ae.d=ce.getDate()+(ae.w+6)%7)}else("W"in ae||"U"in ae)&&("w"in ae||(ae.w="u"in ae?ae.u%7:"W"in ae?1:0),te="Z"in ae?q8(Py(ae.y,0,1)).getUTCDay():Y8(Py(ae.y,0,1)).getDay(),ae.m=0,ae.d="W"in ae?(ae.w+6)%7+ae.W*7-(te+5)%7:ae.w+ae.U*7-(te+6)%7);return"Z"in ae?(ae.H+=ae.Z/100|0,ae.M+=ae.Z%100,q8(ae)):Y8(ae)}}o(L,"newParse");function C(H,q,Z,ae){for(var ue=0,ce=q.length,te=Z.length,De,oe;ue=te)return-1;if(De=q.charCodeAt(ue++),De===37){if(De=q.charAt(ue++),oe=T[De in gW?q.charAt(ue++):De],!oe||(ae=oe(H,Z,ae))<0)return-1}else if(De!=Z.charCodeAt(ae++))return-1}return ae}o(C,"parseSpecifier");function A(H,q,Z){var ae=h.exec(q.slice(Z));return ae?(H.p=f.get(ae[0].toLowerCase()),Z+ae[0].length):-1}o(A,"parsePeriod");function I(H,q,Z){var ae=m.exec(q.slice(Z));return ae?(H.w=g.get(ae[0].toLowerCase()),Z+ae[0].length):-1}o(I,"parseShortWeekday");function D(H,q,Z){var ae=d.exec(q.slice(Z));return ae?(H.w=p.get(ae[0].toLowerCase()),Z+ae[0].length):-1}o(D,"parseWeekday");function k(H,q,Z){var ae=x.exec(q.slice(Z));return ae?(H.m=b.get(ae[0].toLowerCase()),Z+ae[0].length):-1}o(k,"parseShortMonth");function R(H,q,Z){var ae=y.exec(q.slice(Z));return ae?(H.m=v.get(ae[0].toLowerCase()),Z+ae[0].length):-1}o(R,"parseMonth");function S(H,q,Z){return C(H,e,q,Z)}o(S,"parseLocaleDateTime");function O(H,q,Z){return C(H,r,q,Z)}o(O,"parseLocaleDate");function N(H,q,Z){return C(H,n,q,Z)}o(N,"parseLocaleTime");function P(H){return s[H.getDay()]}o(P,"formatShortWeekday");function F(H){return a[H.getDay()]}o(F,"formatWeekday");function B(H){return u[H.getMonth()]}o(B,"formatShortMonth");function $(H){return l[H.getMonth()]}o($,"formatMonth");function z(H){return i[+(H.getHours()>=12)]}o(z,"formatPeriod");function W(H){return 1+~~(H.getMonth()/3)}o(W,"formatQuarter");function j(H){return s[H.getUTCDay()]}o(j,"formatUTCShortWeekday");function K(H){return a[H.getUTCDay()]}o(K,"formatUTCWeekday");function ie(H){return u[H.getUTCMonth()]}o(ie,"formatUTCShortMonth");function Q(H){return l[H.getUTCMonth()]}o(Q,"formatUTCMonth");function ee(H){return i[+(H.getUTCHours()>=12)]}o(ee,"formatUTCPeriod");function J(H){return 1+~~(H.getUTCMonth()/3)}return o(J,"formatUTCQuarter"),{format:o(function(H){var q=E(H+="",w);return q.toString=function(){return H},q},"format"),parse:o(function(H){var q=L(H+="",!1);return q.toString=function(){return H},q},"parse"),utcFormat:o(function(H){var q=E(H+="",_);return q.toString=function(){return H},q},"utcFormat"),utcParse:o(function(H){var q=L(H+="",!0);return q.toString=function(){return H},q},"utcParse")}}function Hr(t,e,r){var n=t<0?"-":"",i=(n?-t:t)+"",a=i.length;return n+(a[e.toLowerCase(),r]))}function uke(t,e,r){var n=Qi.exec(e.slice(r,r+1));return n?(t.w=+n[0],r+n[0].length):-1}function hke(t,e,r){var n=Qi.exec(e.slice(r,r+1));return n?(t.u=+n[0],r+n[0].length):-1}function fke(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.U=+n[0],r+n[0].length):-1}function dke(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.V=+n[0],r+n[0].length):-1}function pke(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.W=+n[0],r+n[0].length):-1}function yW(t,e,r){var n=Qi.exec(e.slice(r,r+4));return n?(t.y=+n[0],r+n[0].length):-1}function vW(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function mke(t,e,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(r,r+6));return n?(t.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function gke(t,e,r){var n=Qi.exec(e.slice(r,r+1));return n?(t.q=n[0]*3-3,r+n[0].length):-1}function yke(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function xW(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function vke(t,e,r){var n=Qi.exec(e.slice(r,r+3));return n?(t.m=0,t.d=+n[0],r+n[0].length):-1}function bW(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function xke(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function bke(t,e,r){var n=Qi.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function wke(t,e,r){var n=Qi.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function Tke(t,e,r){var n=Qi.exec(e.slice(r,r+6));return n?(t.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function kke(t,e,r){var n=oke.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function Eke(t,e,r){var n=Qi.exec(e.slice(r));return n?(t.Q=+n[0],r+n[0].length):-1}function Ske(t,e,r){var n=Qi.exec(e.slice(r));return n?(t.s=+n[0],r+n[0].length):-1}function wW(t,e){return Hr(t.getDate(),e,2)}function Cke(t,e){return Hr(t.getHours(),e,2)}function Ake(t,e){return Hr(t.getHours()%12||12,e,2)}function _ke(t,e){return Hr(1+Lo.count(js(t),t),e,3)}function CW(t,e){return Hr(t.getMilliseconds(),e,3)}function Lke(t,e){return CW(t,e)+"000"}function Dke(t,e){return Hr(t.getMonth()+1,e,2)}function Nke(t,e){return Hr(t.getMinutes(),e,2)}function Rke(t,e){return Hr(t.getSeconds(),e,2)}function Mke(t){var e=t.getDay();return e===0?7:e}function Ike(t,e){return Hr(wl.count(js(t)-1,t),e,2)}function AW(t){var e=t.getDay();return e>=4||e===0?cc(t):cc.ceil(t)}function Oke(t,e){return t=AW(t),Hr(cc.count(js(t),t)+(js(t).getDay()===4),e,2)}function Pke(t){return t.getDay()}function Bke(t,e){return Hr(Th.count(js(t)-1,t),e,2)}function Fke(t,e){return Hr(t.getFullYear()%100,e,2)}function zke(t,e){return t=AW(t),Hr(t.getFullYear()%100,e,2)}function Gke(t,e){return Hr(t.getFullYear()%1e4,e,4)}function $ke(t,e){var r=t.getDay();return t=r>=4||r===0?cc(t):cc.ceil(t),Hr(t.getFullYear()%1e4,e,4)}function Vke(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+Hr(e/60|0,"0",2)+Hr(e%60,"0",2)}function TW(t,e){return Hr(t.getUTCDate(),e,2)}function Uke(t,e){return Hr(t.getUTCHours(),e,2)}function Hke(t,e){return Hr(t.getUTCHours()%12||12,e,2)}function Wke(t,e){return Hr(1+Oy.count(Tl(t),t),e,3)}function _W(t,e){return Hr(t.getUTCMilliseconds(),e,3)}function Yke(t,e){return _W(t,e)+"000"}function qke(t,e){return Hr(t.getUTCMonth()+1,e,2)}function Xke(t,e){return Hr(t.getUTCMinutes(),e,2)}function jke(t,e){return Hr(t.getUTCSeconds(),e,2)}function Kke(t){var e=t.getUTCDay();return e===0?7:e}function Qke(t,e){return Hr(fd.count(Tl(t)-1,t),e,2)}function LW(t){var e=t.getUTCDay();return e>=4||e===0?kh(t):kh.ceil(t)}function Zke(t,e){return t=LW(t),Hr(kh.count(Tl(t),t)+(Tl(t).getUTCDay()===4),e,2)}function Jke(t){return t.getUTCDay()}function eEe(t,e){return Hr(Np.count(Tl(t)-1,t),e,2)}function tEe(t,e){return Hr(t.getUTCFullYear()%100,e,2)}function rEe(t,e){return t=LW(t),Hr(t.getUTCFullYear()%100,e,2)}function nEe(t,e){return Hr(t.getUTCFullYear()%1e4,e,4)}function iEe(t,e){var r=t.getUTCDay();return t=r>=4||r===0?kh(t):kh.ceil(t),Hr(t.getUTCFullYear()%1e4,e,4)}function aEe(){return"+0000"}function kW(){return"%"}function EW(t){return+t}function SW(t){return Math.floor(+t/1e3)}var gW,Qi,oke,lke,DW=M(()=>{"use strict";S3();o(Y8,"localDate");o(q8,"utcDate");o(Py,"newDate");o(X8,"formatLocale");gW={"-":"",_:" ",0:"0"},Qi=/^\s*\d+/,oke=/^%/,lke=/[\\^$*+?|[\]().{}]/g;o(Hr,"pad");o(cke,"requote");o(By,"formatRe");o(Fy,"formatLookup");o(uke,"parseWeekdayNumberSunday");o(hke,"parseWeekdayNumberMonday");o(fke,"parseWeekNumberSunday");o(dke,"parseWeekNumberISO");o(pke,"parseWeekNumberMonday");o(yW,"parseFullYear");o(vW,"parseYear");o(mke,"parseZone");o(gke,"parseQuarter");o(yke,"parseMonthNumber");o(xW,"parseDayOfMonth");o(vke,"parseDayOfYear");o(bW,"parseHour24");o(xke,"parseMinutes");o(bke,"parseSeconds");o(wke,"parseMilliseconds");o(Tke,"parseMicroseconds");o(kke,"parseLiteralPercent");o(Eke,"parseUnixTimestamp");o(Ske,"parseUnixTimestampSeconds");o(wW,"formatDayOfMonth");o(Cke,"formatHour24");o(Ake,"formatHour12");o(_ke,"formatDayOfYear");o(CW,"formatMilliseconds");o(Lke,"formatMicroseconds");o(Dke,"formatMonthNumber");o(Nke,"formatMinutes");o(Rke,"formatSeconds");o(Mke,"formatWeekdayNumberMonday");o(Ike,"formatWeekNumberSunday");o(AW,"dISO");o(Oke,"formatWeekNumberISO");o(Pke,"formatWeekdayNumberSunday");o(Bke,"formatWeekNumberMonday");o(Fke,"formatYear");o(zke,"formatYearISO");o(Gke,"formatFullYear");o($ke,"formatFullYearISO");o(Vke,"formatZone");o(TW,"formatUTCDayOfMonth");o(Uke,"formatUTCHour24");o(Hke,"formatUTCHour12");o(Wke,"formatUTCDayOfYear");o(_W,"formatUTCMilliseconds");o(Yke,"formatUTCMicroseconds");o(qke,"formatUTCMonthNumber");o(Xke,"formatUTCMinutes");o(jke,"formatUTCSeconds");o(Kke,"formatUTCWeekdayNumberMonday");o(Qke,"formatUTCWeekNumberSunday");o(LW,"UTCdISO");o(Zke,"formatUTCWeekNumberISO");o(Jke,"formatUTCWeekdayNumberSunday");o(eEe,"formatUTCWeekNumberMonday");o(tEe,"formatUTCYear");o(rEe,"formatUTCYearISO");o(nEe,"formatUTCFullYear");o(iEe,"formatUTCFullYearISO");o(aEe,"formatUTCZone");o(kW,"formatLiteralPercent");o(EW,"formatUnixTimestamp");o(SW,"formatUnixTimestampSeconds")});function j8(t){return Rp=X8(t),dd=Rp.format,NW=Rp.parse,RW=Rp.utcFormat,MW=Rp.utcParse,Rp}var Rp,dd,NW,RW,MW,IW=M(()=>{"use strict";DW();j8({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"]});o(j8,"defaultLocale")});var K8=M(()=>{"use strict";IW()});function sEe(t){return new Date(t)}function oEe(t){return t instanceof Date?+t:+new Date(+t)}function OW(t,e,r,n,i,a,s,l,u,h){var f=My(),d=f.invert,p=f.domain,m=h(".%L"),g=h(":%S"),y=h("%I:%M"),v=h("%I %p"),x=h("%a %d"),b=h("%b %d"),w=h("%B"),_=h("%Y");function T(E){return(u(E){"use strict";S3();K8();N8();Ry();nW();o(sEe,"date");o(oEe,"number");o(OW,"calendar");o(C3,"time")});var BW=M(()=>{"use strict";QH();rW();A8();PW()});function Q8(t){for(var e=t.length/6|0,r=new Array(e),n=0;n{"use strict";o(Q8,"default")});var Z8,zW=M(()=>{"use strict";FW();Z8=Q8("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var GW=M(()=>{"use strict";zW()});function Pn(t){return o(function(){return t},"constant")}var A3=M(()=>{"use strict";o(Pn,"default")});function VW(t){return t>1?0:t<-1?Mp:Math.acos(t)}function e_(t){return t>=1?zy:t<=-1?-zy:Math.asin(t)}var J8,la,Eh,$W,_3,kl,pd,Zi,Mp,zy,Ip,L3=M(()=>{"use strict";J8=Math.abs,la=Math.atan2,Eh=Math.cos,$W=Math.max,_3=Math.min,kl=Math.sin,pd=Math.sqrt,Zi=1e-12,Mp=Math.PI,zy=Mp/2,Ip=2*Mp;o(VW,"acos");o(e_,"asin")});function D3(t){let e=3;return t.digits=function(r){if(!arguments.length)return e;if(r==null)e=null;else{let n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);e=n}return t},()=>new sd(e)}var t_=M(()=>{"use strict";d8();o(D3,"withPath")});function lEe(t){return t.innerRadius}function cEe(t){return t.outerRadius}function uEe(t){return t.startAngle}function hEe(t){return t.endAngle}function fEe(t){return t&&t.padAngle}function dEe(t,e,r,n,i,a,s,l){var u=r-t,h=n-e,f=s-i,d=l-a,p=d*u-f*h;if(!(p*pS*S+O*O&&(C=I,A=D),{cx:C,cy:A,x01:-f,y01:-d,x11:C*(i/T-1),y11:A*(i/T-1)}}function El(){var t=lEe,e=cEe,r=Pn(0),n=null,i=uEe,a=hEe,s=fEe,l=null,u=D3(h);function h(){var f,d,p=+t.apply(this,arguments),m=+e.apply(this,arguments),g=i.apply(this,arguments)-zy,y=a.apply(this,arguments)-zy,v=J8(y-g),x=y>g;if(l||(l=f=u()),mZi))l.moveTo(0,0);else if(v>Ip-Zi)l.moveTo(m*Eh(g),m*kl(g)),l.arc(0,0,m,g,y,!x),p>Zi&&(l.moveTo(p*Eh(y),p*kl(y)),l.arc(0,0,p,y,g,x));else{var b=g,w=y,_=g,T=y,E=v,L=v,C=s.apply(this,arguments)/2,A=C>Zi&&(n?+n.apply(this,arguments):pd(p*p+m*m)),I=_3(J8(m-p)/2,+r.apply(this,arguments)),D=I,k=I,R,S;if(A>Zi){var O=e_(A/p*kl(C)),N=e_(A/m*kl(C));(E-=O*2)>Zi?(O*=x?1:-1,_+=O,T-=O):(E=0,_=T=(g+y)/2),(L-=N*2)>Zi?(N*=x?1:-1,b+=N,w-=N):(L=0,b=w=(g+y)/2)}var P=m*Eh(b),F=m*kl(b),B=p*Eh(T),$=p*kl(T);if(I>Zi){var z=m*Eh(w),W=m*kl(w),j=p*Eh(_),K=p*kl(_),ie;if(vZi?k>Zi?(R=N3(j,K,P,F,m,k,x),S=N3(z,W,B,$,m,k,x),l.moveTo(R.cx+R.x01,R.cy+R.y01),kZi)||!(E>Zi)?l.lineTo(B,$):D>Zi?(R=N3(B,$,z,W,p,-D,x),S=N3(P,F,j,K,p,-D,x),l.lineTo(R.cx+R.x01,R.cy+R.y01),D{"use strict";A3();L3();t_();o(lEe,"arcInnerRadius");o(cEe,"arcOuterRadius");o(uEe,"arcStartAngle");o(hEe,"arcEndAngle");o(fEe,"arcPadAngle");o(dEe,"intersect");o(N3,"cornerTangents");o(El,"default")});function Gy(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}var O2t,r_=M(()=>{"use strict";O2t=Array.prototype.slice;o(Gy,"default")});function HW(t){this._context=t}function Op(t){return new HW(t)}var n_=M(()=>{"use strict";o(HW,"Linear");HW.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(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);break}},"point")};o(Op,"default")});function WW(t){return t[0]}function YW(t){return t[1]}var qW=M(()=>{"use strict";o(WW,"x");o(YW,"y")});function Ka(t,e){var r=Pn(!0),n=null,i=Op,a=null,s=D3(l);t=typeof t=="function"?t:t===void 0?WW:Pn(t),e=typeof e=="function"?e:e===void 0?YW:Pn(e);function l(u){var h,f=(u=Gy(u)).length,d,p=!1,m;for(n==null&&(a=i(m=s())),h=0;h<=f;++h)!(h{"use strict";r_();A3();n_();t_();qW();o(Ka,"default")});function i_(t,e){return et?1:e>=t?0:NaN}var jW=M(()=>{"use strict";o(i_,"default")});function a_(t){return t}var KW=M(()=>{"use strict";o(a_,"default")});function R3(){var t=a_,e=i_,r=null,n=Pn(0),i=Pn(Ip),a=Pn(0);function s(l){var u,h=(l=Gy(l)).length,f,d,p=0,m=new Array(h),g=new Array(h),y=+n.apply(this,arguments),v=Math.min(Ip,Math.max(-Ip,i.apply(this,arguments)-y)),x,b=Math.min(Math.abs(v)/h,a.apply(this,arguments)),w=b*(v<0?-1:1),_;for(u=0;u0&&(p+=_);for(e!=null?m.sort(function(T,E){return e(g[T],g[E])}):r!=null&&m.sort(function(T,E){return r(l[T],l[E])}),u=0,d=p?(v-h*w)/p:0;u0?_*d:0)+w,g[f]={data:l[f],index:u,value:_,startAngle:y,endAngle:x,padAngle:b};return g}return o(s,"pie"),s.value=function(l){return arguments.length?(t=typeof l=="function"?l:Pn(+l),s):t},s.sortValues=function(l){return arguments.length?(e=l,r=null,s):e},s.sort=function(l){return arguments.length?(r=l,e=null,s):r},s.startAngle=function(l){return arguments.length?(n=typeof l=="function"?l:Pn(+l),s):n},s.endAngle=function(l){return arguments.length?(i=typeof l=="function"?l:Pn(+l),s):i},s.padAngle=function(l){return arguments.length?(a=typeof l=="function"?l:Pn(+l),s):a},s}var QW=M(()=>{"use strict";r_();A3();jW();KW();L3();o(R3,"default")});function s_(t){return new M3(t,!0)}function o_(t){return new M3(t,!1)}var M3,ZW=M(()=>{"use strict";M3=class{static{o(this,"Bump")}constructor(e,r){this._context=e,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(e,r){switch(e=+e,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,r,e,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,e,this._y0,e,r);break}}this._x0=e,this._y0=r}};o(s_,"bumpX");o(o_,"bumpY")});function Ks(){}var $y=M(()=>{"use strict";o(Ks,"default")});function Pp(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 Vy(t){this._context=t}function Do(t){return new Vy(t)}var Uy=M(()=>{"use strict";o(Pp,"point");o(Vy,"Basis");Vy.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 3:Pp(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(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:Pp(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(Do,"default")});function JW(t){this._context=t}function I3(t){return new JW(t)}var eY=M(()=>{"use strict";$y();Uy();o(JW,"BasisClosed");JW.prototype={areaStart:Ks,areaEnd:Ks,lineStart:o(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},"lineStart"),lineEnd:o(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);break}}},"lineEnd"),point:o(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:Pp(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(I3,"default")});function tY(t){this._context=t}function O3(t){return new tY(t)}var rY=M(()=>{"use strict";Uy();o(tY,"BasisOpen");tY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(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,n=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:Pp(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(O3,"default")});function nY(t,e){this._basis=new Vy(t),this._beta=e}var l_,iY=M(()=>{"use strict";Uy();o(nY,"Bundle");nY.prototype={lineStart:o(function(){this._x=[],this._y=[],this._basis.lineStart()},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var n=t[0],i=e[0],a=t[r]-n,s=e[r]-i,l=-1,u;++l<=r;)u=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(n+u*a),this._beta*e[l]+(1-this._beta)*(i+u*s));this._x=this._y=null,this._basis.lineEnd()},"lineEnd"),point:o(function(t,e){this._x.push(+t),this._y.push(+e)},"point")};l_=o(function t(e){function r(n){return e===1?new Vy(n):new nY(n,e)}return o(r,"bundle"),r.beta=function(n){return t(+n)},r},"custom")(.85)});function Bp(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 P3(t,e){this._context=t,this._k=(1-e)/6}var c_,Hy=M(()=>{"use strict";o(Bp,"point");o(P3,"Cardinal");P3.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Bp(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(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:Bp(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};c_=o(function t(e){function r(n){return new P3(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function B3(t,e){this._context=t,this._k=(1-e)/6}var u_,h_=M(()=>{"use strict";$y();Hy();o(B3,"CardinalClosed");B3.prototype={areaStart:Ks,areaEnd:Ks,lineStart:o(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},"lineStart"),lineEnd:o(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);break}}},"lineEnd"),point:o(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:Bp(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};u_=o(function t(e){function r(n){return new B3(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function F3(t,e){this._context=t,this._k=(1-e)/6}var f_,d_=M(()=>{"use strict";Hy();o(F3,"CardinalOpen");F3.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(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:Bp(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};f_=o(function t(e){function r(n){return new F3(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function Wy(t,e,r){var n=t._x1,i=t._y1,a=t._x2,s=t._y2;if(t._l01_a>Zi){var l=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,u=3*t._l01_a*(t._l01_a+t._l12_a);n=(n*l-t._x0*t._l12_2a+t._x2*t._l01_2a)/u,i=(i*l-t._y0*t._l12_2a+t._y2*t._l01_2a)/u}if(t._l23_a>Zi){var h=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,f=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*h+t._x1*t._l23_2a-e*t._l12_2a)/f,s=(s*h+t._y1*t._l23_2a-r*t._l12_2a)/f}t._context.bezierCurveTo(n,i,a,s,t._x2,t._y2)}function aY(t,e){this._context=t,this._alpha=e}var p_,z3=M(()=>{"use strict";L3();Hy();o(Wy,"point");o(aY,"CatmullRom");aY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(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},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,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:Wy(this,t,e);break}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},"point")};p_=o(function t(e){function r(n){return e?new aY(n,e):new P3(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function sY(t,e){this._context=t,this._alpha=e}var m_,oY=M(()=>{"use strict";h_();$y();z3();o(sY,"CatmullRomClosed");sY.prototype={areaStart:Ks,areaEnd:Ks,lineStart:o(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},"lineStart"),lineEnd:o(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);break}}},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,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:Wy(this,t,e);break}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},"point")};m_=o(function t(e){function r(n){return e?new sY(n,e):new B3(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function lY(t,e){this._context=t,this._alpha=e}var g_,cY=M(()=>{"use strict";d_();z3();o(lY,"CatmullRomOpen");lY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(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},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,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:Wy(this,t,e);break}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},"point")};g_=o(function t(e){function r(n){return e?new lY(n,e):new F3(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function uY(t){this._context=t}function G3(t){return new uY(t)}var hY=M(()=>{"use strict";$y();o(uY,"LinearClosed");uY.prototype={areaStart:Ks,areaEnd:Ks,lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){this._point&&this._context.closePath()},"lineEnd"),point:o(function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))},"point")};o(G3,"default")});function fY(t){return t<0?-1:1}function dY(t,e,r){var n=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(n||i<0&&-0),s=(r-t._y1)/(i||n<0&&-0),l=(a*i+s*n)/(n+i);return(fY(a)+fY(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(l))||0}function pY(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function y_(t,e,r){var n=t._x0,i=t._y0,a=t._x1,s=t._y1,l=(a-n)/3;t._context.bezierCurveTo(n+l,i+l*e,a-l,s-l*r,a,s)}function $3(t){this._context=t}function mY(t){this._context=new gY(t)}function gY(t){this._context=t}function v_(t){return new $3(t)}function x_(t){return new mY(t)}var yY=M(()=>{"use strict";o(fY,"sign");o(dY,"slope3");o(pY,"slope2");o(y_,"point");o($3,"MonotoneX");$3.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:y_(this,this._t0,pY(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){var r=NaN;if(t=+t,e=+e,!(t===this._x1&&e===this._y1)){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,y_(this,pY(this,r=dY(this,t,e)),r);break;default:y_(this,this._t0,r=dY(this,t,e));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=r}},"point")};o(mY,"MonotoneY");(mY.prototype=Object.create($3.prototype)).point=function(t,e){$3.prototype.point.call(this,e,t)};o(gY,"ReflectContext");gY.prototype={moveTo:o(function(t,e){this._context.moveTo(e,t)},"moveTo"),closePath:o(function(){this._context.closePath()},"closePath"),lineTo:o(function(t,e){this._context.lineTo(e,t)},"lineTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._context.bezierCurveTo(e,t,n,r,a,i)},"bezierCurveTo")};o(v_,"monotoneX");o(x_,"monotoneY")});function xY(t){this._context=t}function vY(t){var e,r=t.length-1,n,i=new Array(r),a=new Array(r),s=new Array(r);for(i[0]=0,a[0]=2,s[0]=t[0]+2*t[1],e=1;e=0;--e)i[e]=(s[e]-i[e+1])/a[e];for(a[r-1]=(t[r]+i[r-1])/2,e=0;e{"use strict";o(xY,"Natural");xY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=[],this._y=[]},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length;if(r)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),r===2)this._context.lineTo(t[1],e[1]);else for(var n=vY(t),i=vY(e),a=0,s=1;s{"use strict";o(U3,"Step");U3.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=this._y=NaN,this._point=0},"lineStart"),lineEnd:o(function(){0=0&&(this._t=1-this._t,this._line=1-this._line)},"lineEnd"),point:o(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)}break}}this._x=t,this._y=e},"point")};o(H3,"default");o(b_,"stepBefore");o(w_,"stepAfter")});var TY=M(()=>{"use strict";UW();XW();QW();eY();rY();Uy();ZW();iY();h_();d_();Hy();oY();cY();z3();hY();n_();yY();bY();wY()});var kY=M(()=>{"use strict"});var EY=M(()=>{"use strict"});function Sh(t,e,r){this.k=t,this.x=e,this.y=r}function k_(t){for(;!t.__zoom;)if(!(t=t.parentNode))return T_;return t.__zoom}var T_,E_=M(()=>{"use strict";o(Sh,"Transform");Sh.prototype={constructor:Sh,scale:o(function(t){return t===1?this:new Sh(this.k*t,this.x,this.y)},"scale"),translate:o(function(t,e){return t===0&e===0?this:new Sh(this.k,this.x+this.k*t,this.y+this.k*e)},"translate"),apply:o(function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},"apply"),applyX:o(function(t){return t*this.k+this.x},"applyX"),applyY:o(function(t){return t*this.k+this.y},"applyY"),invert:o(function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},"invert"),invertX:o(function(t){return(t-this.x)/this.k},"invertX"),invertY:o(function(t){return(t-this.y)/this.k},"invertY"),rescaleX:o(function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},"rescaleX"),rescaleY:o(function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},"rescaleY"),toString:o(function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"},"toString")};T_=new Sh(1,0,0);k_.prototype=Sh.prototype;o(k_,"transform")});var SY=M(()=>{"use strict"});var CY=M(()=>{"use strict";s3();kY();EY();E_();SY()});var AY=M(()=>{"use strict";CY();E_()});var mr=M(()=>{"use strict";ph();iV();kH();AH();kp();_H();LH();b7();jV();DH();l8();NH();MH();S8();qH();XH();Cp();d8();jH();RH();KH();BW();GW();gl();TY();S3();K8();e3();s3();AY()});var _Y=Ni(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.BLANK_URL=Ji.relativeFirstCharacters=Ji.whitespaceEscapeCharsRegex=Ji.urlSchemeRegex=Ji.ctrlCharactersRegex=Ji.htmlCtrlEntityRegex=Ji.htmlEntitiesRegex=Ji.invalidProtocolRegex=void 0;Ji.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;Ji.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;Ji.htmlCtrlEntityRegex=/&(newline|tab);/gi;Ji.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;Ji.urlSchemeRegex=/^.+(:|:)/gim;Ji.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;Ji.relativeFirstCharacters=[".","/"];Ji.BLANK_URL="about:blank"});var Fp=Ni(W3=>{"use strict";Object.defineProperty(W3,"__esModule",{value:!0});W3.sanitizeUrl=void 0;var Sa=_Y();function pEe(t){return Sa.relativeFirstCharacters.indexOf(t[0])>-1}o(pEe,"isRelativeUrlWithoutProtocol");function mEe(t){var e=t.replace(Sa.ctrlCharactersRegex,"");return e.replace(Sa.htmlEntitiesRegex,function(r,n){return String.fromCharCode(n)})}o(mEe,"decodeHtmlCharacters");function gEe(t){return URL.canParse(t)}o(gEe,"isValidUrl");function LY(t){try{return decodeURIComponent(t)}catch{return t}}o(LY,"decodeURI");function yEe(t){if(!t)return Sa.BLANK_URL;var e,r=LY(t.trim());do r=mEe(r).replace(Sa.htmlCtrlEntityRegex,"").replace(Sa.ctrlCharactersRegex,"").replace(Sa.whitespaceEscapeCharsRegex,"").trim(),r=LY(r),e=r.match(Sa.ctrlCharactersRegex)||r.match(Sa.htmlEntitiesRegex)||r.match(Sa.htmlCtrlEntityRegex)||r.match(Sa.whitespaceEscapeCharsRegex);while(e&&e.length>0);var n=r;if(!n)return Sa.BLANK_URL;if(pEe(n))return n;var i=n.trimStart(),a=i.match(Sa.urlSchemeRegex);if(!a)return n;var s=a[0].toLowerCase().trim();if(Sa.invalidProtocolRegex.test(s))return Sa.BLANK_URL;var l=i.replace(/\\/g,"/");if(s==="mailto:"||s.includes("://"))return l;if(s==="http:"||s==="https:"){if(!gEe(l))return Sa.BLANK_URL;var u=new URL(l);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return l}o(yEe,"sanitizeUrl");W3.sanitizeUrl=yEe});var S_,md,Y3,DY,NY,RY,Sl,Yy,qy=M(()=>{"use strict";S_=ka(Fp(),1);fr();md=o((t,e)=>{let r=t.append("rect");if(r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),e.name&&r.attr("name",e.name),e.rx&&r.attr("rx",e.rx),e.ry&&r.attr("ry",e.ry),e.attrs!==void 0)for(let n in e.attrs)r.attr(n,e.attrs[n]);return e.class&&r.attr("class",e.class),r},"drawRect"),Y3=o((t,e)=>{let r={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};md(t,r).lower()},"drawBackgroundRect"),DY=o((t,e)=>{let r=e.text.replace(jf," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),NY=o((t,e,r,n)=>{let i=t.append("image");i.attr("x",e),i.attr("y",r);let a=(0,S_.sanitizeUrl)(n);i.attr("xlink:href",a)},"drawImage"),RY=o((t,e,r,n)=>{let i=t.append("use");i.attr("x",e),i.attr("y",r);let a=(0,S_.sanitizeUrl)(n);i.attr("xlink:href",`#${a}`)},"drawEmbeddedImage"),Sl=o(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),Yy=o(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj")});var MY,C_,IY,vEe,xEe,bEe,wEe,TEe,kEe,EEe,SEe,CEe,AEe,_Ee,LEe,vu,Cl,OY=M(()=>{"use strict";fr();qy();MY=ka(Fp(),1),C_=o(function(t,e){return md(t,e)},"drawRect"),IY=o(function(t,e,r,n,i,a){let s=t.append("image");s.attr("width",e),s.attr("height",r),s.attr("x",n),s.attr("y",i);let l=a.startsWith("data:image/png;base64")?a:(0,MY.sanitizeUrl)(a);s.attr("xlink:href",l)},"drawImage"),vEe=o((t,e,r)=>{let n=t.append("g"),i=0;for(let a of e){let s=a.textColor?a.textColor:"#444444",l=a.lineColor?a.lineColor:"#444444",u=a.offsetX?parseInt(a.offsetX):0,h=a.offsetY?parseInt(a.offsetY):0,f="";if(i===0){let p=n.append("line");p.attr("x1",a.startPoint.x),p.attr("y1",a.startPoint.y),p.attr("x2",a.endPoint.x),p.attr("y2",a.endPoint.y),p.attr("stroke-width","1"),p.attr("stroke",l),p.style("fill","none"),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)"),i=-1}else{let p=n.append("path");p.attr("fill","none").attr("stroke-width","1").attr("stroke",l).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)")}let d=r.messageFont();vu(r)(a.label.text,n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+h,a.label.width,a.label.height,{fill:s},d),a.techn&&a.techn.text!==""&&(d=r.messageFont(),vu(r)("["+a.techn.text+"]",n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+r.messageFontSize+5+h,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:s,"font-style":"italic"},d))}},"drawRels"),xEe=o(function(t,e,r){let n=t.append("g"),i=e.bgColor?e.bgColor:"none",a=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 u={x:e.x,y:e.y,fill:i,stroke:a,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:l};C_(n,u);let h=r.boundaryFont();h.fontWeight="bold",h.fontSize=h.fontSize+2,h.fontColor=s,vu(r)(e.label.text,n,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},h),e.type&&e.type.text!==""&&(h=r.boundaryFont(),h.fontColor=s,vu(r)(e.type.text,n,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},h)),e.descr&&e.descr.text!==""&&(h=r.boundaryFont(),h.fontSize=h.fontSize-2,h.fontColor=s,vu(r)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},h))},"drawBoundary"),bEe=o(function(t,e,r){let n=e.bgColor?e.bgColor:r[e.typeC4Shape.text+"_bg_color"],i=e.borderColor?e.borderColor:r[e.typeC4Shape.text+"_border_color"],a=e.fontColor?e.fontColor:"#FFFFFF",s="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":s="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":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}let l=t.append("g");l.attr("class","person-man");let u=Sl();switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":u.x=e.x,u.y=e.y,u.fill=n,u.width=e.width,u.height=e.height,u.stroke=i,u.rx=2.5,u.ry=2.5,u.attrs={"stroke-width":.5},C_(l,u);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).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)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).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":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).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)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).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));break}let h=LEe(r,e.typeC4Shape.text);switch(l.append("text").attr("fill",a).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":IY(l,48,48,e.x+e.width/2-24,e.y+e.image.Y,s);break}let f=r[e.typeC4Shape.text+"Font"]();return f.fontWeight="bold",f.fontSize=f.fontSize+2,f.fontColor=a,vu(r)(e.label.text,l,e.x,e.y+e.label.Y,e.width,e.height,{fill:a},f),f=r[e.typeC4Shape.text+"Font"](),f.fontColor=a,e.techn&&e.techn?.text!==""?vu(r)(e.techn.text,l,e.x,e.y+e.techn.Y,e.width,e.height,{fill:a,"font-style":"italic"},f):e.type&&e.type.text!==""&&vu(r)(e.type.text,l,e.x,e.y+e.type.Y,e.width,e.height,{fill:a,"font-style":"italic"},f),e.descr&&e.descr.text!==""&&(f=r.personFont(),f.fontColor=a,vu(r)(e.descr.text,l,e.x,e.y+e.descr.Y,e.width,e.height,{fill:a},f)),e.height},"drawC4Shape"),wEe=o(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"),TEe=o(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"),kEe=o(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"),EEe=o(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"),SEe=o(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"),CEe=o(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"),AEe=o(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"),_Ee=o(function(t){let r=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);r.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"),r.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"),LEe=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"getC4ShapeFont"),vu=function(){function t(i,a,s,l,u,h,f){let d=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("text-anchor","middle").text(i);n(d,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d){let{fontSize:p,fontFamily:m,fontWeight:g}=d,y=i.split(je.lineBreakRegex);for(let v=0;v{"use strict";DEe=typeof global=="object"&&global&&global.Object===Object&&global,X3=DEe});var NEe,REe,ai,No=M(()=>{"use strict";A_();NEe=typeof self=="object"&&self&&self.Object===Object&&self,REe=X3||NEe||Function("return this")(),ai=REe});var MEe,ea,gd=M(()=>{"use strict";No();MEe=ai.Symbol,ea=MEe});function PEe(t){var e=IEe.call(t,Xy),r=t[Xy];try{t[Xy]=void 0;var n=!0}catch{}var i=OEe.call(t);return n&&(e?t[Xy]=r:delete t[Xy]),i}var PY,IEe,OEe,Xy,BY,FY=M(()=>{"use strict";gd();PY=Object.prototype,IEe=PY.hasOwnProperty,OEe=PY.toString,Xy=ea?ea.toStringTag:void 0;o(PEe,"getRawTag");BY=PEe});function zEe(t){return FEe.call(t)}var BEe,FEe,zY,GY=M(()=>{"use strict";BEe=Object.prototype,FEe=BEe.toString;o(zEe,"objectToString");zY=zEe});function VEe(t){return t==null?t===void 0?$Ee:GEe:$Y&&$Y in Object(t)?BY(t):zY(t)}var GEe,$Ee,$Y,ca,xu=M(()=>{"use strict";gd();FY();GY();GEe="[object Null]",$Ee="[object Undefined]",$Y=ea?ea.toStringTag:void 0;o(VEe,"baseGetTag");ca=VEe});function UEe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var yn,Qs=M(()=>{"use strict";o(UEe,"isObject");yn=UEe});function XEe(t){if(!yn(t))return!1;var e=ca(t);return e==WEe||e==YEe||e==HEe||e==qEe}var HEe,WEe,YEe,qEe,Ei,jy=M(()=>{"use strict";xu();Qs();HEe="[object AsyncFunction]",WEe="[object Function]",YEe="[object GeneratorFunction]",qEe="[object Proxy]";o(XEe,"isFunction");Ei=XEe});var jEe,j3,VY=M(()=>{"use strict";No();jEe=ai["__core-js_shared__"],j3=jEe});function KEe(t){return!!UY&&UY in t}var UY,HY,WY=M(()=>{"use strict";VY();UY=function(){var t=/[^.]+$/.exec(j3&&j3.keys&&j3.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();o(KEe,"isMasked");HY=KEe});function JEe(t){if(t!=null){try{return ZEe.call(t)}catch{}try{return t+""}catch{}}return""}var QEe,ZEe,bu,__=M(()=>{"use strict";QEe=Function.prototype,ZEe=QEe.toString;o(JEe,"toSource");bu=JEe});function o6e(t){if(!yn(t)||HY(t))return!1;var e=Ei(t)?s6e:t6e;return e.test(bu(t))}var e6e,t6e,r6e,n6e,i6e,a6e,s6e,YY,qY=M(()=>{"use strict";jy();WY();Qs();__();e6e=/[\\^$.*+?()[\]{}|]/g,t6e=/^\[object .+?Constructor\]$/,r6e=Function.prototype,n6e=Object.prototype,i6e=r6e.toString,a6e=n6e.hasOwnProperty,s6e=RegExp("^"+i6e.call(a6e).replace(e6e,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");o(o6e,"baseIsNative");YY=o6e});function l6e(t,e){return t?.[e]}var XY,jY=M(()=>{"use strict";o(l6e,"getValue");XY=l6e});function c6e(t,e){var r=XY(t,e);return YY(r)?r:void 0}var vs,Ch=M(()=>{"use strict";qY();jY();o(c6e,"getNative");vs=c6e});var u6e,wu,Ky=M(()=>{"use strict";Ch();u6e=vs(Object,"create"),wu=u6e});function h6e(){this.__data__=wu?wu(null):{},this.size=0}var KY,QY=M(()=>{"use strict";Ky();o(h6e,"hashClear");KY=h6e});function f6e(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var ZY,JY=M(()=>{"use strict";o(f6e,"hashDelete");ZY=f6e});function g6e(t){var e=this.__data__;if(wu){var r=e[t];return r===d6e?void 0:r}return m6e.call(e,t)?e[t]:void 0}var d6e,p6e,m6e,eq,tq=M(()=>{"use strict";Ky();d6e="__lodash_hash_undefined__",p6e=Object.prototype,m6e=p6e.hasOwnProperty;o(g6e,"hashGet");eq=g6e});function x6e(t){var e=this.__data__;return wu?e[t]!==void 0:v6e.call(e,t)}var y6e,v6e,rq,nq=M(()=>{"use strict";Ky();y6e=Object.prototype,v6e=y6e.hasOwnProperty;o(x6e,"hashHas");rq=x6e});function w6e(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=wu&&e===void 0?b6e:e,this}var b6e,iq,aq=M(()=>{"use strict";Ky();b6e="__lodash_hash_undefined__";o(w6e,"hashSet");iq=w6e});function zp(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";QY();JY();tq();nq();aq();o(zp,"Hash");zp.prototype.clear=KY;zp.prototype.delete=ZY;zp.prototype.get=eq;zp.prototype.has=rq;zp.prototype.set=iq;L_=zp});function T6e(){this.__data__=[],this.size=0}var oq,lq=M(()=>{"use strict";o(T6e,"listCacheClear");oq=T6e});function k6e(t,e){return t===e||t!==t&&e!==e}var Ro,yd=M(()=>{"use strict";o(k6e,"eq");Ro=k6e});function E6e(t,e){for(var r=t.length;r--;)if(Ro(t[r][0],e))return r;return-1}var Ah,Qy=M(()=>{"use strict";yd();o(E6e,"assocIndexOf");Ah=E6e});function A6e(t){var e=this.__data__,r=Ah(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():C6e.call(e,r,1),--this.size,!0}var S6e,C6e,cq,uq=M(()=>{"use strict";Qy();S6e=Array.prototype,C6e=S6e.splice;o(A6e,"listCacheDelete");cq=A6e});function _6e(t){var e=this.__data__,r=Ah(e,t);return r<0?void 0:e[r][1]}var hq,fq=M(()=>{"use strict";Qy();o(_6e,"listCacheGet");hq=_6e});function L6e(t){return Ah(this.__data__,t)>-1}var dq,pq=M(()=>{"use strict";Qy();o(L6e,"listCacheHas");dq=L6e});function D6e(t,e){var r=this.__data__,n=Ah(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var mq,gq=M(()=>{"use strict";Qy();o(D6e,"listCacheSet");mq=D6e});function Gp(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";lq();uq();fq();pq();gq();o(Gp,"ListCache");Gp.prototype.clear=oq;Gp.prototype.delete=cq;Gp.prototype.get=hq;Gp.prototype.has=dq;Gp.prototype.set=mq;_h=Gp});var N6e,Lh,K3=M(()=>{"use strict";Ch();No();N6e=vs(ai,"Map"),Lh=N6e});function R6e(){this.size=0,this.__data__={hash:new L_,map:new(Lh||_h),string:new L_}}var yq,vq=M(()=>{"use strict";sq();Zy();K3();o(R6e,"mapCacheClear");yq=R6e});function M6e(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var xq,bq=M(()=>{"use strict";o(M6e,"isKeyable");xq=M6e});function I6e(t,e){var r=t.__data__;return xq(e)?r[typeof e=="string"?"string":"hash"]:r.map}var Dh,Jy=M(()=>{"use strict";bq();o(I6e,"getMapData");Dh=I6e});function O6e(t){var e=Dh(this,t).delete(t);return this.size-=e?1:0,e}var wq,Tq=M(()=>{"use strict";Jy();o(O6e,"mapCacheDelete");wq=O6e});function P6e(t){return Dh(this,t).get(t)}var kq,Eq=M(()=>{"use strict";Jy();o(P6e,"mapCacheGet");kq=P6e});function B6e(t){return Dh(this,t).has(t)}var Sq,Cq=M(()=>{"use strict";Jy();o(B6e,"mapCacheHas");Sq=B6e});function F6e(t,e){var r=Dh(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}var Aq,_q=M(()=>{"use strict";Jy();o(F6e,"mapCacheSet");Aq=F6e});function $p(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";vq();Tq();Eq();Cq();_q();o($p,"MapCache");$p.prototype.clear=yq;$p.prototype.delete=wq;$p.prototype.get=kq;$p.prototype.has=Sq;$p.prototype.set=Aq;vd=$p});function D_(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(z6e);var r=o(function(){var n=arguments,i=e?e.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=t.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(D_.Cache||vd),r}var z6e,Vp,N_=M(()=>{"use strict";Q3();z6e="Expected a function";o(D_,"memoize");D_.Cache=vd;Vp=D_});function G6e(){this.__data__=new _h,this.size=0}var Lq,Dq=M(()=>{"use strict";Zy();o(G6e,"stackClear");Lq=G6e});function $6e(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var Nq,Rq=M(()=>{"use strict";o($6e,"stackDelete");Nq=$6e});function V6e(t){return this.__data__.get(t)}var Mq,Iq=M(()=>{"use strict";o(V6e,"stackGet");Mq=V6e});function U6e(t){return this.__data__.has(t)}var Oq,Pq=M(()=>{"use strict";o(U6e,"stackHas");Oq=U6e});function W6e(t,e){var r=this.__data__;if(r instanceof _h){var n=r.__data__;if(!Lh||n.length{"use strict";Zy();K3();Q3();H6e=200;o(W6e,"stackSet");Bq=W6e});function Up(t){var e=this.__data__=new _h(t);this.size=e.size}var uc,ev=M(()=>{"use strict";Zy();Dq();Rq();Iq();Pq();Fq();o(Up,"Stack");Up.prototype.clear=Lq;Up.prototype.delete=Nq;Up.prototype.get=Mq;Up.prototype.has=Oq;Up.prototype.set=Bq;uc=Up});var Y6e,Hp,R_=M(()=>{"use strict";Ch();Y6e=function(){try{var t=vs(Object,"defineProperty");return t({},"",{}),t}catch{}}(),Hp=Y6e});function q6e(t,e,r){e=="__proto__"&&Hp?Hp(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var hc,Wp=M(()=>{"use strict";R_();o(q6e,"baseAssignValue");hc=q6e});function X6e(t,e,r){(r!==void 0&&!Ro(t[e],r)||r===void 0&&!(e in t))&&hc(t,e,r)}var tv,M_=M(()=>{"use strict";Wp();yd();o(X6e,"assignMergeValue");tv=X6e});function j6e(t){return function(e,r,n){for(var i=-1,a=Object(e),s=n(e),l=s.length;l--;){var u=s[t?l:++i];if(r(a[u],u,a)===!1)break}return e}}var zq,Gq=M(()=>{"use strict";o(j6e,"createBaseFor");zq=j6e});var K6e,Yp,Z3=M(()=>{"use strict";Gq();K6e=zq(),Yp=K6e});function Z6e(t,e){if(e)return t.slice();var r=t.length,n=Uq?Uq(r):new t.constructor(r);return t.copy(n),n}var Hq,$q,Q6e,Vq,Uq,J3,I_=M(()=>{"use strict";No();Hq=typeof exports=="object"&&exports&&!exports.nodeType&&exports,$q=Hq&&typeof module=="object"&&module&&!module.nodeType&&module,Q6e=$q&&$q.exports===Hq,Vq=Q6e?ai.Buffer:void 0,Uq=Vq?Vq.allocUnsafe:void 0;o(Z6e,"cloneBuffer");J3=Z6e});var J6e,qp,O_=M(()=>{"use strict";No();J6e=ai.Uint8Array,qp=J6e});function eSe(t){var e=new t.constructor(t.byteLength);return new qp(e).set(new qp(t)),e}var Xp,e5=M(()=>{"use strict";O_();o(eSe,"cloneArrayBuffer");Xp=eSe});function tSe(t,e){var r=e?Xp(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var t5,P_=M(()=>{"use strict";e5();o(tSe,"cloneTypedArray");t5=tSe});function rSe(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r{"use strict";o(rSe,"copyArray");r5=rSe});var Wq,nSe,Yq,qq=M(()=>{"use strict";Qs();Wq=Object.create,nSe=function(){function t(){}return o(t,"object"),function(e){if(!yn(e))return{};if(Wq)return Wq(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}(),Yq=nSe});function iSe(t,e){return function(r){return t(e(r))}}var n5,F_=M(()=>{"use strict";o(iSe,"overArg");n5=iSe});var aSe,jp,i5=M(()=>{"use strict";F_();aSe=n5(Object.getPrototypeOf,Object),jp=aSe});function oSe(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||sSe;return t===r}var sSe,fc,Kp=M(()=>{"use strict";sSe=Object.prototype;o(oSe,"isPrototype");fc=oSe});function lSe(t){return typeof t.constructor=="function"&&!fc(t)?Yq(jp(t)):{}}var a5,z_=M(()=>{"use strict";qq();i5();Kp();o(lSe,"initCloneObject");a5=lSe});function cSe(t){return t!=null&&typeof t=="object"}var Zn,Mo=M(()=>{"use strict";o(cSe,"isObjectLike");Zn=cSe});function hSe(t){return Zn(t)&&ca(t)==uSe}var uSe,G_,Xq=M(()=>{"use strict";xu();Mo();uSe="[object Arguments]";o(hSe,"baseIsArguments");G_=hSe});var jq,fSe,dSe,pSe,Al,Qp=M(()=>{"use strict";Xq();Mo();jq=Object.prototype,fSe=jq.hasOwnProperty,dSe=jq.propertyIsEnumerable,pSe=G_(function(){return arguments}())?G_:function(t){return Zn(t)&&fSe.call(t,"callee")&&!dSe.call(t,"callee")},Al=pSe});var mSe,Mt,Vn=M(()=>{"use strict";mSe=Array.isArray,Mt=mSe});function ySe(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=gSe}var gSe,Zp,s5=M(()=>{"use strict";gSe=9007199254740991;o(ySe,"isLength");Zp=ySe});function vSe(t){return t!=null&&Zp(t.length)&&!Ei(t)}var si,Io=M(()=>{"use strict";jy();s5();o(vSe,"isArrayLike");si=vSe});function xSe(t){return Zn(t)&&si(t)}var xd,o5=M(()=>{"use strict";Io();Mo();o(xSe,"isArrayLikeObject");xd=xSe});function bSe(){return!1}var Kq,Qq=M(()=>{"use strict";o(bSe,"stubFalse");Kq=bSe});var eX,Zq,wSe,Jq,TSe,kSe,_l,Jp=M(()=>{"use strict";No();Qq();eX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Zq=eX&&typeof module=="object"&&module&&!module.nodeType&&module,wSe=Zq&&Zq.exports===eX,Jq=wSe?ai.Buffer:void 0,TSe=Jq?Jq.isBuffer:void 0,kSe=TSe||Kq,_l=kSe});function LSe(t){if(!Zn(t)||ca(t)!=ESe)return!1;var e=jp(t);if(e===null)return!0;var r=ASe.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&tX.call(r)==_Se}var ESe,SSe,CSe,tX,ASe,_Se,rX,nX=M(()=>{"use strict";xu();i5();Mo();ESe="[object Object]",SSe=Function.prototype,CSe=Object.prototype,tX=SSe.toString,ASe=CSe.hasOwnProperty,_Se=tX.call(Object);o(LSe,"isPlainObject");rX=LSe});function eCe(t){return Zn(t)&&Zp(t.length)&&!!Bn[ca(t)]}var DSe,NSe,RSe,MSe,ISe,OSe,PSe,BSe,FSe,zSe,GSe,$Se,VSe,USe,HSe,WSe,YSe,qSe,XSe,jSe,KSe,QSe,ZSe,JSe,Bn,iX,aX=M(()=>{"use strict";xu();s5();Mo();DSe="[object Arguments]",NSe="[object Array]",RSe="[object Boolean]",MSe="[object Date]",ISe="[object Error]",OSe="[object Function]",PSe="[object Map]",BSe="[object Number]",FSe="[object Object]",zSe="[object RegExp]",GSe="[object Set]",$Se="[object String]",VSe="[object WeakMap]",USe="[object ArrayBuffer]",HSe="[object DataView]",WSe="[object Float32Array]",YSe="[object Float64Array]",qSe="[object Int8Array]",XSe="[object Int16Array]",jSe="[object Int32Array]",KSe="[object Uint8Array]",QSe="[object Uint8ClampedArray]",ZSe="[object Uint16Array]",JSe="[object Uint32Array]",Bn={};Bn[WSe]=Bn[YSe]=Bn[qSe]=Bn[XSe]=Bn[jSe]=Bn[KSe]=Bn[QSe]=Bn[ZSe]=Bn[JSe]=!0;Bn[DSe]=Bn[NSe]=Bn[USe]=Bn[RSe]=Bn[HSe]=Bn[MSe]=Bn[ISe]=Bn[OSe]=Bn[PSe]=Bn[BSe]=Bn[FSe]=Bn[zSe]=Bn[GSe]=Bn[$Se]=Bn[VSe]=!1;o(eCe,"baseIsTypedArray");iX=eCe});function tCe(t){return function(e){return t(e)}}var Oo,bd=M(()=>{"use strict";o(tCe,"baseUnary");Oo=tCe});var sX,rv,rCe,$_,nCe,Po,nv=M(()=>{"use strict";A_();sX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,rv=sX&&typeof module=="object"&&module&&!module.nodeType&&module,rCe=rv&&rv.exports===sX,$_=rCe&&X3.process,nCe=function(){try{var t=rv&&rv.require&&rv.require("util").types;return t||$_&&$_.binding&&$_.binding("util")}catch{}}(),Po=nCe});var oX,iCe,Nh,iv=M(()=>{"use strict";aX();bd();nv();oX=Po&&Po.isTypedArray,iCe=oX?Oo(oX):iX,Nh=iCe});function aCe(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}var av,V_=M(()=>{"use strict";o(aCe,"safeGet");av=aCe});function lCe(t,e,r){var n=t[e];(!(oCe.call(t,e)&&Ro(n,r))||r===void 0&&!(e in t))&&hc(t,e,r)}var sCe,oCe,dc,em=M(()=>{"use strict";Wp();yd();sCe=Object.prototype,oCe=sCe.hasOwnProperty;o(lCe,"assignValue");dc=lCe});function cCe(t,e,r,n){var i=!r;r||(r={});for(var a=-1,s=e.length;++a{"use strict";em();Wp();o(cCe,"copyObject");Bo=cCe});function uCe(t,e){for(var r=-1,n=Array(t);++r{"use strict";o(uCe,"baseTimes");lX=uCe});function dCe(t,e){var r=typeof t;return e=e??hCe,!!e&&(r=="number"||r!="symbol"&&fCe.test(t))&&t>-1&&t%1==0&&t{"use strict";hCe=9007199254740991,fCe=/^(?:0|[1-9]\d*)$/;o(dCe,"isIndex");Rh=dCe});function gCe(t,e){var r=Mt(t),n=!r&&Al(t),i=!r&&!n&&_l(t),a=!r&&!n&&!i&&Nh(t),s=r||n||i||a,l=s?lX(t.length,String):[],u=l.length;for(var h in t)(e||mCe.call(t,h))&&!(s&&(h=="length"||i&&(h=="offset"||h=="parent")||a&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||Rh(h,u)))&&l.push(h);return l}var pCe,mCe,l5,U_=M(()=>{"use strict";cX();Qp();Vn();Jp();sv();iv();pCe=Object.prototype,mCe=pCe.hasOwnProperty;o(gCe,"arrayLikeKeys");l5=gCe});function yCe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}var uX,hX=M(()=>{"use strict";o(yCe,"nativeKeysIn");uX=yCe});function bCe(t){if(!yn(t))return uX(t);var e=fc(t),r=[];for(var n in t)n=="constructor"&&(e||!xCe.call(t,n))||r.push(n);return r}var vCe,xCe,fX,dX=M(()=>{"use strict";Qs();Kp();hX();vCe=Object.prototype,xCe=vCe.hasOwnProperty;o(bCe,"baseKeysIn");fX=bCe});function wCe(t){return si(t)?l5(t,!0):fX(t)}var xs,Mh=M(()=>{"use strict";U_();dX();Io();o(wCe,"keysIn");xs=wCe});function TCe(t){return Bo(t,xs(t))}var pX,mX=M(()=>{"use strict";wd();Mh();o(TCe,"toPlainObject");pX=TCe});function kCe(t,e,r,n,i,a,s){var l=av(t,r),u=av(e,r),h=s.get(u);if(h){tv(t,r,h);return}var f=a?a(l,u,r+"",t,e,s):void 0,d=f===void 0;if(d){var p=Mt(u),m=!p&&_l(u),g=!p&&!m&&Nh(u);f=u,p||m||g?Mt(l)?f=l:xd(l)?f=r5(l):m?(d=!1,f=J3(u,!0)):g?(d=!1,f=t5(u,!0)):f=[]:rX(u)||Al(u)?(f=l,Al(l)?f=pX(l):(!yn(l)||Ei(l))&&(f=a5(u))):d=!1}d&&(s.set(u,f),i(f,u,n,a,s),s.delete(u)),tv(t,r,f)}var gX,yX=M(()=>{"use strict";M_();I_();P_();B_();z_();Qp();Vn();o5();Jp();jy();Qs();nX();iv();V_();mX();o(kCe,"baseMergeDeep");gX=kCe});function vX(t,e,r,n,i){t!==e&&Yp(e,function(a,s){if(i||(i=new uc),yn(a))gX(t,e,s,r,vX,n,i);else{var l=n?n(av(t,s),a,s+"",t,e,i):void 0;l===void 0&&(l=a),tv(t,s,l)}},xs)}var xX,bX=M(()=>{"use strict";ev();M_();Z3();yX();Qs();Mh();V_();o(vX,"baseMerge");xX=vX});function ECe(t){return t}var ta,Tu=M(()=>{"use strict";o(ECe,"identity");ta=ECe});function SCe(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}var wX,TX=M(()=>{"use strict";o(SCe,"apply");wX=SCe});function CCe(t,e,r){return e=kX(e===void 0?t.length-1:e,0),function(){for(var n=arguments,i=-1,a=kX(n.length-e,0),s=Array(a);++i{"use strict";TX();kX=Math.max;o(CCe,"overRest");c5=CCe});function ACe(t){return function(){return t}}var bs,W_=M(()=>{"use strict";o(ACe,"constant");bs=ACe});var _Ce,EX,SX=M(()=>{"use strict";W_();R_();Tu();_Ce=Hp?function(t,e){return Hp(t,"toString",{configurable:!0,enumerable:!1,value:bs(e),writable:!0})}:ta,EX=_Ce});function RCe(t){var e=0,r=0;return function(){var n=NCe(),i=DCe-(n-r);if(r=n,i>0){if(++e>=LCe)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var LCe,DCe,NCe,CX,AX=M(()=>{"use strict";LCe=800,DCe=16,NCe=Date.now;o(RCe,"shortOut");CX=RCe});var MCe,u5,Y_=M(()=>{"use strict";SX();AX();MCe=CX(EX),u5=MCe});function ICe(t,e){return u5(c5(t,e,ta),t+"")}var pc,tm=M(()=>{"use strict";Tu();H_();Y_();o(ICe,"baseRest");pc=ICe});function OCe(t,e,r){if(!yn(r))return!1;var n=typeof e;return(n=="number"?si(r)&&Rh(e,r.length):n=="string"&&e in r)?Ro(r[e],t):!1}var Zs,Td=M(()=>{"use strict";yd();Io();sv();Qs();o(OCe,"isIterateeCall");Zs=OCe});function PCe(t){return pc(function(e,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=t.length>3&&typeof a=="function"?(i--,a):void 0,s&&Zs(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);++n{"use strict";tm();Td();o(PCe,"createAssigner");h5=PCe});var BCe,Ih,X_=M(()=>{"use strict";bX();q_();BCe=h5(function(t,e,r){xX(t,e,r)}),Ih=BCe});function Q_(t,e){if(!t)return e;let r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return FCe[r]??e}function VCe(t,e){let r=t.trim();if(r)return e.securityLevel!=="loose"?(0,DX.sanitizeUrl)(r):r}function MX(t,e){return!t||!e?0:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function HCe(t){let e,r=0;t.forEach(i=>{r+=MX(i,e),e=i});let n=r/2;return Z_(t,n)}function WCe(t){return t.length===1?t[0]:HCe(t)}function qCe(t,e,r){let n=structuredClone(r);Y.info("our points",n),e!=="start_left"&&e!=="start_right"&&n.reverse();let i=25+t,a=Z_(n,i),s=10+t*.5,l=Math.atan2(n[0].y-a.y,n[0].x-a.x),u={x:0,y:0};return e==="start_left"?(u.x=Math.sin(l+Math.PI)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l+Math.PI)*s+(n[0].y+a.y)/2):e==="end_right"?(u.x=Math.sin(l-Math.PI)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l-Math.PI)*s+(n[0].y+a.y)/2-5):e==="end_left"?(u.x=Math.sin(l)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2-5):(u.x=Math.sin(l)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2),u}function J_(t){let e="",r="";for(let n of t)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":e=e+n+";");return{style:e,labelStyle:r}}function XCe(t){let e="",r="0123456789abcdef",n=r.length;for(let i=0;i{"use strict";DX=ka(Fp(),1);mr();fr();KS();ht();$f();ip();N_();X_();Pb();K_="\u200B",FCe={curveBasis:Do,curveBasisClosed:I3,curveBasisOpen:O3,curveBumpX:s_,curveBumpY:o_,curveBundle:l_,curveCardinalClosed:u_,curveCardinalOpen:f_,curveCardinal:c_,curveCatmullRomClosed:m_,curveCatmullRomOpen:g_,curveCatmullRom:p_,curveLinear:Op,curveLinearClosed:G3,curveMonotoneX:v_,curveMonotoneY:x_,curveNatural:V3,curveStep:H3,curveStepAfter:w_,curveStepBefore:b_},zCe=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,GCe=o(function(t,e){let r=NX(t,/(?:init\b)|(?:initialize\b)/),n={};if(Array.isArray(r)){let s=r.map(l=>l.args);op(s),n=Gn(n,[...s])}else n=r.args;if(!n)return;let i=np(t,e),a="config";return n[a]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[a],delete n[a]),n},"detectInit"),NX=o(function(t,e=null){try{let r=new RegExp(`[%]{2}(?![{]${zCe.source})(?=[}][%]{2}).* +`,"ig");t=t.trim().replace(r,"").replace(/'/gm,'"'),Y.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let n,i=[];for(;(n=zf.exec(t))!==null;)if(n.index===zf.lastIndex&&zf.lastIndex++,n&&!e||e&&n[1]?.match(e)||e&&n[2]?.match(e)){let a=n[1]?n[1]:n[2],s=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:a,args:s})}return i.length===0?{type:t,args:null}:i.length===1?i[0]:i}catch(r){return Y.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}},"detectDirective"),RX=o(function(t){return t.replace(zf,"")},"removeDirectives"),$Ce=o(function(t,e){for(let[r,n]of e.entries())if(n.match(t))return r;return-1},"isSubstringInArray");o(Q_,"interpolateToCurve");o(VCe,"formatUrl");UCe=o((t,...e)=>{let r=t.split("."),n=r.length-1,i=r[n],a=window;for(let s=0;s{let r=Math.pow(10,e);return Math.round(t*r)/r},"roundNumber"),Z_=o((t,e)=>{let r,n=e;for(let i of t){if(r){let a=MX(i,r);if(a=1)return{x:i.x,y:i.y};if(s>0&&s<1)return{x:_X((1-s)*r.x+s*i.x,5),y:_X((1-s)*r.y+s*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),YCe=o((t,e,r)=>{Y.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());let i=Z_(e,25),a=t?10:5,s=Math.atan2(e[0].y-i.y,e[0].x-i.x),l={x:0,y:0};return l.x=Math.sin(s)*a+(e[0].x+i.x)/2,l.y=-Math.cos(s)*a+(e[0].y+i.y)/2,l},"calcCardinalityPosition");o(qCe,"calcTerminalLabelPosition");o(J_,"getStylesFromArray");LX=0,e9=o(()=>(LX++,"id-"+Math.random().toString(36).substr(2,12)+"-"+LX),"generateId");o(XCe,"makeRandomHex");t9=o(t=>XCe(t.length),"random"),jCe=o(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"),KCe=o(function(t,e){let r=e.text.replace(je.lineBreakRegex," "),[,n]=Fo(e.fontSize),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.style("font-family",e.fontFamily),i.style("font-size",n),i.style("font-weight",e.fontWeight),i.attr("fill",e.fill),e.class!==void 0&&i.attr("class",e.class);let a=i.append("tspan");return a.attr("x",e.x+e.textMargin*2),a.attr("fill",e.fill),a.text(r),i},"drawSimpleText"),r9=Vp((t,e,r)=>{if(!t||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),je.lineBreakRegex.test(t)))return t;let n=t.split(" ").filter(Boolean),i=[],a="";return n.forEach((s,l)=>{let u=Js(`${s} `,r),h=Js(a,r);if(u>e){let{hyphenatedStrings:p,remainingWord:m}=QCe(s,e,"-",r);i.push(a,...p),a=m}else h+u>=e?(i.push(a),a=s):a=[a,s].filter(Boolean).join(" ");l+1===n.length&&i.push(a)}),i.filter(s=>s!=="").join(r.joinWith)},(t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),QCe=Vp((t,e,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);let i=[...t],a=[],s="";return i.forEach((l,u)=>{let h=`${s}${l}`;if(Js(h,n)>=e){let d=u+1,p=i.length===d,m=`${h}${r}`;a.push(p?h:m),s=""}else s=h}),{hyphenatedStrings:a,remainingWord:s}},(t,e,r="-",n)=>`${t}${e}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);o(d5,"calculateTextHeight");o(Js,"calculateTextWidth");n9=Vp((t,e)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=e;if(!t)return{width:0,height:0};let[,a]=Fo(r),s=["sans-serif",n],l=t.split(je.lineBreakRegex),u=[],h=ze("body");if(!h.remove)return{width:0,height:0,lineHeight:0};let f=h.append("svg");for(let p of s){let m=0,g={width:0,height:0,lineHeight:0};for(let y of l){let v=jCe();v.text=y||K_;let x=KCe(f,v).style("font-size",a).style("font-weight",i).style("font-family",p),b=(x._groups||x)[0][0].getBBox();if(b.width===0&&b.height===0)throw new Error("svg element not in render tree");g.width=Math.round(Math.max(g.width,b.width)),m=Math.round(b.height),g.height+=m,g.lineHeight=Math.round(Math.max(g.lineHeight,m))}u.push(g)}f.remove();let d=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;return u[d]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`),j_=class{constructor(e=!1,r){this.count=0;this.count=r?r.length:0,this.next=e?()=>this.count++:()=>Date.now()}static{o(this,"InitIDGenerator")}},ZCe=o(function(t){return f5=f5||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),f5.innerHTML=t,unescape(f5.textContent)},"entityDecode");o(i9,"isDetailedError");JCe=o((t,e,r,n)=>{if(!n)return;let i=t.node()?.getBBox();i&&t.append("text").text(n).attr("text-anchor","middle").attr("x",i.x+i.width/2).attr("y",-r).attr("class",e)},"insertTitle"),Fo=o(t=>{if(typeof t=="number")return[t,t+"px"];let e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]},"parseFontSize");o(ws,"cleanAndMerge");Ut={assignWithDepth:Gn,wrapLabel:r9,calculateTextHeight:d5,calculateTextWidth:Js,calculateTextDimensions:n9,cleanAndMerge:ws,detectInit:GCe,detectDirective:NX,isSubstringInArray:$Ce,interpolateToCurve:Q_,calcLabelPosition:WCe,calcCardinalityPosition:YCe,calcTerminalLabelPosition:qCe,formatUrl:VCe,getStylesFromArray:J_,generateId:e9,random:t9,runFunc:UCe,entityDecode:ZCe,insertTitle:JCe,parseFontSize:Fo,InitIDGenerator:j_},IX=o(function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/#\w+;/g,function(r){let n=r.substring(1,r.length-1);return/^\+?\d+$/.test(n)?"\uFB02\xB0\xB0"+n+"\xB6\xDF":"\uFB02\xB0"+n+"\xB6\xDF"}),e},"encodeEntities"),Ca=o(function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),p5=o((t,e,{counter:r=0,prefix:n,suffix:i})=>`${n?`${n}_`:""}${t}_${e}_${r}${i?`_${i}`:""}`,"getEdgeId");o(Fn,"handleUndefinedAttr")});function Ll(t,e,r,n,i){if(!e[t].width)if(r)e[t].text=r9(e[t].text,i,n),e[t].textLines=e[t].text.split(je.lineBreakRegex).length,e[t].width=i,e[t].height=d5(e[t].text,n);else{let a=e[t].text.split(je.lineBreakRegex);e[t].textLines=a.length;let s=0;e[t].height=0,e[t].width=0;for(let l of a)e[t].width=Math.max(Js(l,n),e[t].width),s=d5(l,n),e[t].height=e[t].height+s}}function zX(t,e,r,n,i){let a=new v5(i);a.data.widthLimit=r.data.widthLimit/Math.min(a9,n.length);for(let[s,l]of n.entries()){let u=0;l.image={width:0,height:0,Y:0},l.sprite&&(l.image.width=48,l.image.height=48,l.image.Y=u,u=l.image.Y+l.image.height);let h=l.wrap&&Gt.wrap,f=m5(Gt);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Ll("label",l,h,f,a.data.widthLimit),l.label.Y=u+8,u=l.label.Y+l.label.height,l.type&&l.type.text!==""){l.type.text="["+l.type.text+"]";let g=m5(Gt);Ll("type",l,h,g,a.data.widthLimit),l.type.Y=u+5,u=l.type.Y+l.type.height}if(l.descr&&l.descr.text!==""){let g=m5(Gt);g.fontSize=g.fontSize-2,Ll("descr",l,h,g,a.data.widthLimit),l.descr.Y=u+20,u=l.descr.Y+l.descr.height}if(s==0||s%a9===0){let g=r.data.startx+Gt.diagramMarginX,y=r.data.stopy+Gt.diagramMarginY+u;a.setData(g,g,y,y)}else{let g=a.data.stopx!==a.data.startx?a.data.stopx+Gt.diagramMarginX:a.data.startx,y=a.data.starty;a.setData(g,g,y,y)}a.name=l.alias;let d=i.db.getC4ShapeArray(l.alias),p=i.db.getC4ShapeKeys(l.alias);p.length>0&&FX(a,t,d,p),e=l.alias;let m=i.db.getBoundarys(e);m.length>0&&zX(t,e,a,m,i),l.alias!=="global"&&BX(t,l,a),r.data.stopy=Math.max(a.data.stopy+Gt.c4ShapeMargin,r.data.stopy),r.data.stopx=Math.max(a.data.stopx+Gt.c4ShapeMargin,r.data.stopx),g5=Math.max(g5,r.data.stopx),y5=Math.max(y5,r.data.stopy)}}var g5,y5,PX,a9,Gt,v5,s9,ov,m5,e7e,BX,FX,Ts,OX,t7e,r7e,n7e,o9,GX=M(()=>{"use strict";mr();OY();ht();PS();fr();l7();Vt();ip();hr();ni();g5=0,y5=0,PX=4,a9=2;I1.yy=oy;Gt={},v5=class{static{o(this,"Bounds")}constructor(e){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,s9(e.db.getConfig())}setData(e,r,n,i){this.nextData.startx=this.data.startx=e,this.nextData.stopx=this.data.stopx=r,this.nextData.starty=this.data.starty=n,this.nextData.stopy=this.data.stopy=i}updateVal(e,r,n,i){e[r]===void 0?e[r]=n:e[r]=i(n,e[r])}insert(e){this.nextData.cnt=this.nextData.cnt+1;let r=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+e.margin:this.nextData.stopx+e.margin*2,n=r+e.width,i=this.nextData.starty+e.margin*2,a=i+e.height;(r>=this.data.widthLimit||n>=this.data.widthLimit||this.nextData.cnt>PX)&&(r=this.nextData.startx+e.margin+Gt.nextLinePaddingX,i=this.nextData.stopy+e.margin*2,this.nextData.stopx=n=r+e.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=a=i+e.height,this.nextData.cnt=1),e.x=r,e.y=i,this.updateVal(this.data,"startx",r,Math.min),this.updateVal(this.data,"starty",i,Math.min),this.updateVal(this.data,"stopx",n,Math.max),this.updateVal(this.data,"stopy",a,Math.max),this.updateVal(this.nextData,"startx",r,Math.min),this.updateVal(this.nextData,"starty",i,Math.min),this.updateVal(this.nextData,"stopx",n,Math.max),this.updateVal(this.nextData,"stopy",a,Math.max)}init(e){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},s9(e.db.getConfig())}bumpLastMargin(e){this.data.stopx+=e,this.data.stopy+=e}},s9=o(function(t){Gn(Gt,t),t.fontFamily&&(Gt.personFontFamily=Gt.systemFontFamily=Gt.messageFontFamily=t.fontFamily),t.fontSize&&(Gt.personFontSize=Gt.systemFontSize=Gt.messageFontSize=t.fontSize),t.fontWeight&&(Gt.personFontWeight=Gt.systemFontWeight=Gt.messageFontWeight=t.fontWeight)},"setConf"),ov=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"c4ShapeFont"),m5=o(t=>({fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight}),"boundaryFont"),e7e=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont");o(Ll,"calcC4ShapeTextWH");BX=o(function(t,e,r){e.x=r.data.startx,e.y=r.data.starty,e.width=r.data.stopx-r.data.startx,e.height=r.data.stopy-r.data.starty,e.label.y=Gt.c4ShapeMargin-35;let n=e.wrap&&Gt.wrap,i=m5(Gt);i.fontSize=i.fontSize+2,i.fontWeight="bold";let a=Js(e.label.text,i);Ll("label",e,n,i,a),Cl.drawBoundary(t,e,Gt)},"drawBoundary"),FX=o(function(t,e,r,n){let i=0;for(let a of n){i=0;let s=r[a],l=ov(Gt,s.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,s.typeC4Shape.width=Js("\xAB"+s.typeC4Shape.text+"\xBB",l),s.typeC4Shape.height=l.fontSize+2,s.typeC4Shape.Y=Gt.c4ShapePadding,i=s.typeC4Shape.Y+s.typeC4Shape.height-4,s.image={width:0,height:0,Y:0},s.typeC4Shape.text){case"person":case"external_person":s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height;break}s.sprite&&(s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height);let u=s.wrap&&Gt.wrap,h=Gt.width-Gt.c4ShapePadding*2,f=ov(Gt,s.typeC4Shape.text);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Ll("label",s,u,f,h),s.label.Y=i+8,i=s.label.Y+s.label.height,s.type&&s.type.text!==""){s.type.text="["+s.type.text+"]";let m=ov(Gt,s.typeC4Shape.text);Ll("type",s,u,m,h),s.type.Y=i+5,i=s.type.Y+s.type.height}else if(s.techn&&s.techn.text!==""){s.techn.text="["+s.techn.text+"]";let m=ov(Gt,s.techn.text);Ll("techn",s,u,m,h),s.techn.Y=i+5,i=s.techn.Y+s.techn.height}let d=i,p=s.label.width;if(s.descr&&s.descr.text!==""){let m=ov(Gt,s.typeC4Shape.text);Ll("descr",s,u,m,h),s.descr.Y=i+20,i=s.descr.Y+s.descr.height,p=Math.max(s.label.width,s.descr.width),d=i-s.descr.textLines*5}p=p+Gt.c4ShapePadding,s.width=Math.max(s.width||Gt.width,p,Gt.width),s.height=Math.max(s.height||Gt.height,d,Gt.height),s.margin=s.margin||Gt.c4ShapeMargin,t.insert(s),Cl.drawC4Shape(e,s,Gt)}t.bumpLastMargin(Gt.c4ShapeMargin)},"drawC4ShapeArray"),Ts=class{static{o(this,"Point")}constructor(e,r){this.x=e,this.y=r}},OX=o(function(t,e){let r=t.x,n=t.y,i=e.x,a=e.y,s=r+t.width/2,l=n+t.height/2,u=Math.abs(r-i),h=Math.abs(n-a),f=h/u,d=t.height/t.width,p=null;return n==a&&ri?p=new Ts(r,l):r==i&&na&&(p=new Ts(s,n)),r>i&&n=f?p=new Ts(r,l+f*t.width/2):p=new Ts(s-u/h*t.height/2,n+t.height):r=f?p=new Ts(r+t.width,l+f*t.width/2):p=new Ts(s+u/h*t.height/2,n+t.height):ra?d>=f?p=new Ts(r+t.width,l-f*t.width/2):p=new Ts(s+t.height/2*u/h,n):r>i&&n>a&&(d>=f?p=new Ts(r,l-t.width/2*f):p=new Ts(s-t.height/2*u/h,n)),p},"getIntersectPoint"),t7e=o(function(t,e){let r={x:0,y:0};r.x=e.x+e.width/2,r.y=e.y+e.height/2;let n=OX(t,r);r.x=t.x+t.width/2,r.y=t.y+t.height/2;let i=OX(e,r);return{startPoint:n,endPoint:i}},"getIntersectPoints"),r7e=o(function(t,e,r,n){let i=0;for(let a of e){i=i+1;let s=a.wrap&&Gt.wrap,l=e7e(Gt);n.db.getC4Type()==="C4Dynamic"&&(a.label.text=i+": "+a.label.text);let h=Js(a.label.text,l);Ll("label",a,s,l,h),a.techn&&a.techn.text!==""&&(h=Js(a.techn.text,l),Ll("techn",a,s,l,h)),a.descr&&a.descr.text!==""&&(h=Js(a.descr.text,l),Ll("descr",a,s,l,h));let f=r(a.from),d=r(a.to),p=t7e(f,d);a.startPoint=p.startPoint,a.endPoint=p.endPoint}Cl.drawRels(t,e,Gt)},"drawRels");o(zX,"drawInsideBoundary");n7e=o(function(t,e,r,n){Gt=de().c4;let i=de().securityLevel,a;i==="sandbox"&&(a=ze("#i"+e));let s=i==="sandbox"?ze(a.nodes()[0].contentDocument.body):ze("body"),l=n.db;n.db.setWrap(Gt.wrap),PX=l.getC4ShapeInRow(),a9=l.getC4BoundaryInRow(),Y.debug(`C:${JSON.stringify(Gt,null,2)}`);let u=i==="sandbox"?s.select(`[id="${e}"]`):ze(`[id="${e}"]`);Cl.insertComputerIcon(u),Cl.insertDatabaseIcon(u),Cl.insertClockIcon(u);let h=new v5(n);h.setData(Gt.diagramMarginX,Gt.diagramMarginX,Gt.diagramMarginY,Gt.diagramMarginY),h.data.widthLimit=screen.availWidth,g5=Gt.diagramMarginX,y5=Gt.diagramMarginY;let f=n.db.getTitle(),d=n.db.getBoundarys("");zX(u,"",h,d,n),Cl.insertArrowHead(u),Cl.insertArrowEnd(u),Cl.insertArrowCrossHead(u),Cl.insertArrowFilledHead(u),r7e(u,n.db.getRels(),n.db.getC4Shape,n),h.data.stopx=g5,h.data.stopy=y5;let p=h.data,g=p.stopy-p.starty+2*Gt.diagramMarginY,v=p.stopx-p.startx+2*Gt.diagramMarginX;f&&u.append("text").text(f).attr("x",(p.stopx-p.startx)/2-4*Gt.diagramMarginX).attr("y",p.starty+Gt.diagramMarginY),Zr(u,g,v,Gt.useMaxWidth);let x=f?60:0;u.attr("viewBox",p.startx-Gt.diagramMarginX+" -"+(Gt.diagramMarginY+x)+" "+v+" "+(g+x)),Y.debug("models:",p)},"draw"),o9={drawPersonOrSystemArray:FX,drawBoundary:BX,setConf:s9,draw:n7e}});var i7e,$X,VX=M(()=>{"use strict";i7e=o(t=>`.person { + stroke: ${t.personBorder}; + fill: ${t.personBkg}; + } +`,"getStyles"),$X=i7e});var UX={};vr(UX,{diagram:()=>a7e});var a7e,HX=M(()=>{"use strict";PS();l7();GX();VX();a7e={parser:QF,db:oy,renderer:o9,styles:$X,init:o(({c4:t,wrap:e})=>{o9.setConf(t),oy.setWrap(e)},"init")}});function u9(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function ZX(t){Ed=t}function eo(t,e){if(e){if(JX.test(t))return t.replace(c7e,qX)}else if(ej.test(t))return t.replace(u7e,qX);return t}function d7e(t){return t.replace(f7e,(e,r)=>(r=r.toLowerCase(),r==="colon"?":":r.charAt(0)==="#"?r.charAt(1)==="x"?String.fromCharCode(parseInt(r.substring(2),16)):String.fromCharCode(+r.substring(1)):""))}function fn(t,e){let r=typeof t=="string"?t:t.source;e=e||"";let n={replace:o((i,a)=>{let s=typeof a=="string"?a:a.source;return s=s.replace(p7e,"$1"),r=r.replace(i,s),n},"replace"),getRegex:o(()=>new RegExp(r,e),"getRegex")};return n}function XX(t){try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}function jX(t,e){let r=t.replace(/\|/g,(a,s,l)=>{let u=!1,h=s;for(;--h>=0&&l[h]==="\\";)u=!u;return u?"|":" |"}),n=r.split(/ \|/),i=0;if(n[0].trim()||n.shift(),n.length>0&&!n[n.length-1].trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length{let a=i.match(/^\s+/);if(a===null)return i;let[s]=a;return s.length>=n.length?i.slice(n.length):i}).join(` +`)}function en(t,e){return kd.parse(t,e)}var Ed,JX,c7e,ej,u7e,h7e,qX,f7e,p7e,uv,nm,y7e,v7e,x7e,fv,b7e,tj,rj,h9,w7e,f9,T7e,k7e,w5,d9,E7e,nj,S7e,p9,QX,C7e,A7e,ij,_7e,aj,L7e,dv,D7e,N7e,R7e,M7e,I7e,O7e,P7e,B7e,F7e,b5,z7e,sj,oj,G7e,m9,$7e,l9,V7e,x5,cv,ku,im,hv,Eu,rm,c9,kd,u6t,h6t,f6t,d6t,p6t,m6t,g6t,lj=M(()=>{"use strict";o(u9,"_getDefaults");Ed=u9();o(ZX,"changeDefaults");JX=/[&<>"']/,c7e=new RegExp(JX.source,"g"),ej=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,u7e=new RegExp(ej.source,"g"),h7e={"&":"&","<":"<",">":">",'"':""","'":"'"},qX=o(t=>h7e[t],"getEscapeReplacement");o(eo,"escape$1");f7e=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;o(d7e,"unescape");p7e=/(^|[^\[])\^/g;o(fn,"edit");o(XX,"cleanUrl");uv={exec:o(()=>null,"exec")};o(jX,"splitCells");o(lv,"rtrim");o(m7e,"findClosingBracket");o(KX,"outputLink");o(g7e,"indentCodeCompensation");nm=class{static{o(this,"_Tokenizer")}options;rules;lexer;constructor(e){this.options=e||Ed}space(e){let r=this.rules.block.newline.exec(e);if(r&&r[0].length>0)return{type:"space",raw:r[0]}}code(e){let r=this.rules.block.code.exec(e);if(r){let n=r[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:r[0],codeBlockStyle:"indented",text:this.options.pedantic?n:lv(n,` +`)}}}fences(e){let r=this.rules.block.fences.exec(e);if(r){let n=r[0],i=g7e(n,r[3]||"");return{type:"code",raw:n,lang:r[2]?r[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):r[2],text:i}}}heading(e){let r=this.rules.block.heading.exec(e);if(r){let n=r[2].trim();if(/#$/.test(n)){let i=lv(n,"#");(this.options.pedantic||!i||/ $/.test(i))&&(n=i.trim())}return{type:"heading",raw:r[0],depth:r[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){let r=this.rules.block.hr.exec(e);if(r)return{type:"hr",raw:lv(r[0],` +`)}}blockquote(e){let r=this.rules.block.blockquote.exec(e);if(r){let n=lv(r[0],` +`).split(` +`),i="",a="",s=[];for(;n.length>0;){let l=!1,u=[],h;for(h=0;h/.test(n[h]))u.push(n[h]),l=!0;else if(!l)u.push(n[h]);else break;n=n.slice(h);let f=u.join(` +`),d=f.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` + $1`).replace(/^ {0,3}>[ \t]?/gm,"");i=i?`${i} +${f}`:f,a=a?`${a} +${d}`:d;let p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(d,s,!0),this.lexer.state.top=p,n.length===0)break;let m=s[s.length-1];if(m?.type==="code")break;if(m?.type==="blockquote"){let g=m,y=g.raw+` +`+n.join(` +`),v=this.blockquote(y);s[s.length-1]=v,i=i.substring(0,i.length-g.raw.length)+v.raw,a=a.substring(0,a.length-g.text.length)+v.text;break}else if(m?.type==="list"){let g=m,y=g.raw+` +`+n.join(` +`),v=this.list(y);s[s.length-1]=v,i=i.substring(0,i.length-m.raw.length)+v.raw,a=a.substring(0,a.length-g.raw.length)+v.raw,n=y.substring(s[s.length-1].raw.length).split(` +`);continue}}return{type:"blockquote",raw:i,tokens:s,text:a}}}list(e){let r=this.rules.block.list.exec(e);if(r){let n=r[1].trim(),i=n.length>1,a={type:"list",raw:"",ordered:i,start:i?+n.slice(0,-1):"",loose:!1,items:[]};n=i?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=i?n:"[*+-]");let s=new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),l=!1;for(;e;){let u=!1,h="",f="";if(!(r=s.exec(e))||this.rules.block.hr.test(e))break;h=r[0],e=e.substring(h.length);let d=r[2].split(` +`,1)[0].replace(/^\t+/,x=>" ".repeat(3*x.length)),p=e.split(` +`,1)[0],m=!d.trim(),g=0;if(this.options.pedantic?(g=2,f=d.trimStart()):m?g=r[1].length+1:(g=r[2].search(/[^ ]/),g=g>4?1:g,f=d.slice(g),g+=r[1].length),m&&/^ *$/.test(p)&&(h+=p+` +`,e=e.substring(p.length+1),u=!0),!u){let x=new RegExp(`^ {0,${Math.min(3,g-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),b=new RegExp(`^ {0,${Math.min(3,g-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),w=new RegExp(`^ {0,${Math.min(3,g-1)}}(?:\`\`\`|~~~)`),_=new RegExp(`^ {0,${Math.min(3,g-1)}}#`);for(;e;){let T=e.split(` +`,1)[0];if(p=T,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),w.test(p)||_.test(p)||x.test(p)||b.test(e))break;if(p.search(/[^ ]/)>=g||!p.trim())f+=` +`+p.slice(g);else{if(m||d.search(/[^ ]/)>=4||w.test(d)||_.test(d)||b.test(d))break;f+=` +`+p}!m&&!p.trim()&&(m=!0),h+=T+` +`,e=e.substring(T.length+1),d=p.slice(g)}}a.loose||(l?a.loose=!0:/\n *\n *$/.test(h)&&(l=!0));let y=null,v;this.options.gfm&&(y=/^\[[ xX]\] /.exec(f),y&&(v=y[0]!=="[ ] ",f=f.replace(/^\[[ xX]\] +/,""))),a.items.push({type:"list_item",raw:h,task:!!y,checked:v,loose:!1,text:f,tokens:[]}),a.raw+=h}a.items[a.items.length-1].raw=a.items[a.items.length-1].raw.trimEnd(),a.items[a.items.length-1].text=a.items[a.items.length-1].text.trimEnd(),a.raw=a.raw.trimEnd();for(let u=0;ud.type==="space"),f=h.length>0&&h.some(d=>/\n.*\n/.test(d.raw));a.loose=f}if(a.loose)for(let u=0;u$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",a=r[3]?r[3].substring(1,r[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):r[3];return{type:"def",tag:n,raw:r[0],href:i,title:a}}}table(e){let r=this.rules.block.table.exec(e);if(!r||!/[:|]/.test(r[2]))return;let n=jX(r[1]),i=r[2].replace(/^\||\| *$/g,"").split("|"),a=r[3]&&r[3].trim()?r[3].replace(/\n[ \t]*$/,"").split(` +`):[],s={type:"table",raw:r[0],header:[],align:[],rows:[]};if(n.length===i.length){for(let l of i)/^ *-+: *$/.test(l)?s.align.push("right"):/^ *:-+: *$/.test(l)?s.align.push("center"):/^ *:-+ *$/.test(l)?s.align.push("left"):s.align.push(null);for(let l=0;l({text:u,tokens:this.lexer.inline(u),header:!1,align:s.align[h]})));return s}}lheading(e){let r=this.rules.block.lheading.exec(e);if(r)return{type:"heading",raw:r[0],depth:r[2].charAt(0)==="="?1:2,text:r[1],tokens:this.lexer.inline(r[1])}}paragraph(e){let r=this.rules.block.paragraph.exec(e);if(r){let n=r[1].charAt(r[1].length-1)===` +`?r[1].slice(0,-1):r[1];return{type:"paragraph",raw:r[0],text:n,tokens:this.lexer.inline(n)}}}text(e){let r=this.rules.block.text.exec(e);if(r)return{type:"text",raw:r[0],text:r[0],tokens:this.lexer.inline(r[0])}}escape(e){let r=this.rules.inline.escape.exec(e);if(r)return{type:"escape",raw:r[0],text:eo(r[1])}}tag(e){let r=this.rules.inline.tag.exec(e);if(r)return!this.lexer.state.inLink&&/^
/i.test(r[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(r[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(r[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:r[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:r[0]}}link(e){let r=this.rules.inline.link.exec(e);if(r){let n=r[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;let s=lv(n.slice(0,-1),"\\");if((n.length-s.length)%2===0)return}else{let s=m7e(r[2],"()");if(s>-1){let u=(r[0].indexOf("!")===0?5:4)+r[1].length+s;r[2]=r[2].substring(0,s),r[0]=r[0].substring(0,u).trim(),r[3]=""}}let i=r[2],a="";if(this.options.pedantic){let s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(i);s&&(i=s[1],a=s[3])}else a=r[3]?r[3].slice(1,-1):"";return i=i.trim(),/^$/.test(n)?i=i.slice(1):i=i.slice(1,-1)),KX(r,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:a&&a.replace(this.rules.inline.anyPunctuation,"$1")},r[0],this.lexer)}}reflink(e,r){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let i=(n[2]||n[1]).replace(/\s+/g," "),a=r[i.toLowerCase()];if(!a){let s=n[0].charAt(0);return{type:"text",raw:s,text:s}}return KX(n,a,n[0],this.lexer)}}emStrong(e,r,n=""){let i=this.rules.inline.emStrongLDelim.exec(e);if(!i||i[3]&&n.match(/[\p{L}\p{N}]/u))return;if(!(i[1]||i[2]||"")||!n||this.rules.inline.punctuation.exec(n)){let s=[...i[0]].length-1,l,u,h=s,f=0,d=i[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(d.lastIndex=0,r=r.slice(-1*e.length+s);(i=d.exec(r))!=null;){if(l=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!l)continue;if(u=[...l].length,i[3]||i[4]){h+=u;continue}else if((i[5]||i[6])&&s%3&&!((s+u)%3)){f+=u;continue}if(h-=u,h>0)continue;u=Math.min(u,u+h+f);let p=[...i[0]][0].length,m=e.slice(0,s+i.index+p+u);if(Math.min(s,u)%2){let y=m.slice(1,-1);return{type:"em",raw:m,text:y,tokens:this.lexer.inlineTokens(y)}}let g=m.slice(2,-2);return{type:"strong",raw:m,text:g,tokens:this.lexer.inlineTokens(g)}}}}codespan(e){let r=this.rules.inline.code.exec(e);if(r){let n=r[2].replace(/\n/g," "),i=/[^ ]/.test(n),a=/^ /.test(n)&&/ $/.test(n);return i&&a&&(n=n.substring(1,n.length-1)),n=eo(n,!0),{type:"codespan",raw:r[0],text:n}}}br(e){let r=this.rules.inline.br.exec(e);if(r)return{type:"br",raw:r[0]}}del(e){let r=this.rules.inline.del.exec(e);if(r)return{type:"del",raw:r[0],text:r[2],tokens:this.lexer.inlineTokens(r[2])}}autolink(e){let r=this.rules.inline.autolink.exec(e);if(r){let n,i;return r[2]==="@"?(n=eo(r[1]),i="mailto:"+n):(n=eo(r[1]),i=n),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}}}url(e){let r;if(r=this.rules.inline.url.exec(e)){let n,i;if(r[2]==="@")n=eo(r[0]),i="mailto:"+n;else{let a;do a=r[0],r[0]=this.rules.inline._backpedal.exec(r[0])?.[0]??"";while(a!==r[0]);n=eo(r[0]),r[1]==="www."?i="http://"+r[0]:i=r[0]}return{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}}}inlineText(e){let r=this.rules.inline.text.exec(e);if(r){let n;return this.lexer.state.inRawBlock?n=r[0]:n=eo(r[0]),{type:"text",raw:r[0],text:n}}}},y7e=/^(?: *(?:\n|$))+/,v7e=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,x7e=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,fv=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,b7e=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,tj=/(?:[*+-]|\d{1,9}[.)])/,rj=fn(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,tj).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(),h9=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,w7e=/^[^\n]+/,f9=/(?!\s*\])(?:\\.|[^\[\]\\])+/,T7e=fn(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",f9).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),k7e=fn(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,tj).getRegex(),w5="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",d9=/|$))/,E7e=fn("^ {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",d9).replace("tag",w5).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),nj=fn(h9).replace("hr",fv).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",w5).getRegex(),S7e=fn(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",nj).getRegex(),p9={blockquote:S7e,code:v7e,def:T7e,fences:x7e,heading:b7e,hr:fv,html:E7e,lheading:rj,list:k7e,newline:y7e,paragraph:nj,table:uv,text:w7e},QX=fn("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",fv).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",w5).getRegex(),C7e={...p9,table:QX,paragraph:fn(h9).replace("hr",fv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",QX).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",w5).getRegex()},A7e={...p9,html:fn(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",d9).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:uv,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:fn(h9).replace("hr",fv).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",rj).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},ij=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,_7e=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,aj=/^( {2,}|\\)\n(?!\s*$)/,L7e=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,R7e=fn(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,dv).getRegex(),M7e=fn("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,dv).getRegex(),I7e=fn("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,dv).getRegex(),O7e=fn(/\\([punct])/,"gu").replace(/punct/g,dv).getRegex(),P7e=fn(/^<(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(),B7e=fn(d9).replace("(?:-->|$)","-->").getRegex(),F7e=fn("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",B7e).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),b5=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,z7e=fn(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",b5).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),sj=fn(/^!?\[(label)\]\[(ref)\]/).replace("label",b5).replace("ref",f9).getRegex(),oj=fn(/^!?\[(ref)\](?:\[\])?/).replace("ref",f9).getRegex(),G7e=fn("reflink|nolink(?!\\()","g").replace("reflink",sj).replace("nolink",oj).getRegex(),m9={_backpedal:uv,anyPunctuation:O7e,autolink:P7e,blockSkip:N7e,br:aj,code:_7e,del:uv,emStrongLDelim:R7e,emStrongRDelimAst:M7e,emStrongRDelimUnd:I7e,escape:ij,link:z7e,nolink:oj,punctuation:D7e,reflink:sj,reflinkSearch:G7e,tag:F7e,text:L7e,url:uv},$7e={...m9,link:fn(/^!?\[(label)\]\((.*?)\)/).replace("label",b5).getRegex(),reflink:fn(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",b5).getRegex()},l9={...m9,escape:fn(ij).replace("])","~|])").getRegex(),url:fn(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\u+" ".repeat(h.length));let i,a,s;for(;e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(l=>(i=l.call({lexer:this},e,r))?(e=e.substring(i.raw.length),r.push(i),!0):!1))){if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length),i.raw.length===1&&r.length>0?r[r.length-1].raw+=` +`:r.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length),a=r[r.length-1],a&&(a.type==="paragraph"||a.type==="text")?(a.raw+=` +`+i.raw,a.text+=` +`+i.text,this.inlineQueue[this.inlineQueue.length-1].src=a.text):r.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.list(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.html(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.def(e)){e=e.substring(i.raw.length),a=r[r.length-1],a&&(a.type==="paragraph"||a.type==="text")?(a.raw+=` +`+i.raw,a.text+=` +`+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=a.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title});continue}if(i=this.tokenizer.table(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.lheading(e)){e=e.substring(i.raw.length),r.push(i);continue}if(s=e,this.options.extensions&&this.options.extensions.startBlock){let l=1/0,u=e.slice(1),h;this.options.extensions.startBlock.forEach(f=>{h=f.call({lexer:this},u),typeof h=="number"&&h>=0&&(l=Math.min(l,h))}),l<1/0&&l>=0&&(s=e.substring(0,l+1))}if(this.state.top&&(i=this.tokenizer.paragraph(s))){a=r[r.length-1],n&&a?.type==="paragraph"?(a.raw+=` +`+i.raw,a.text+=` +`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=a.text):r.push(i),n=s.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length),a=r[r.length-1],a&&a.type==="text"?(a.raw+=` +`+i.raw,a.text+=` +`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=a.text):r.push(i);continue}if(e){let l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return this.state.top=!0,r}inline(e,r=[]){return this.inlineQueue.push({src:e,tokens:r}),r}inlineTokens(e,r=[]){let n,i,a,s=e,l,u,h;if(this.tokens.links){let f=Object.keys(this.tokens.links);if(f.length>0)for(;(l=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)f.includes(l[0].slice(l[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,l.index)+"["+"a".repeat(l[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(l=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,l.index)+"["+"a".repeat(l[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(l=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,l.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(u||(h=""),u=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(f=>(n=f.call({lexer:this},e,r))?(e=e.substring(n.raw.length),r.push(n),!0):!1))){if(n=this.tokenizer.escape(e)){e=e.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.tag(e)){e=e.substring(n.raw.length),i=r[r.length-1],i&&n.type==="text"&&i.type==="text"?(i.raw+=n.raw,i.text+=n.text):r.push(n);continue}if(n=this.tokenizer.link(e)){e=e.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(n.raw.length),i=r[r.length-1],i&&n.type==="text"&&i.type==="text"?(i.raw+=n.raw,i.text+=n.text):r.push(n);continue}if(n=this.tokenizer.emStrong(e,s,h)){e=e.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.codespan(e)){e=e.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.br(e)){e=e.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.del(e)){e=e.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.autolink(e)){e=e.substring(n.raw.length),r.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(e))){e=e.substring(n.raw.length),r.push(n);continue}if(a=e,this.options.extensions&&this.options.extensions.startInline){let f=1/0,d=e.slice(1),p;this.options.extensions.startInline.forEach(m=>{p=m.call({lexer:this},d),typeof p=="number"&&p>=0&&(f=Math.min(f,p))}),f<1/0&&f>=0&&(a=e.substring(0,f+1))}if(n=this.tokenizer.inlineText(a)){e=e.substring(n.raw.length),n.raw.slice(-1)!=="_"&&(h=n.raw.slice(-1)),u=!0,i=r[r.length-1],i&&i.type==="text"?(i.raw+=n.raw,i.text+=n.text):r.push(n);continue}if(e){let f="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(f);break}else throw new Error(f)}}return r}},im=class{static{o(this,"_Renderer")}options;parser;constructor(e){this.options=e||Ed}space(e){return""}code({text:e,lang:r,escaped:n}){let i=(r||"").match(/^\S*/)?.[0],a=e.replace(/\n$/,"")+` +`;return i?'
'+(n?a:eo(a,!0))+`
+`:"
"+(n?a:eo(a,!0))+`
+`}blockquote({tokens:e}){return`
+${this.parser.parse(e)}
+`}html({text:e}){return e}heading({tokens:e,depth:r}){return`${this.parser.parseInline(e)} +`}hr(e){return`
+`}list(e){let r=e.ordered,n=e.start,i="";for(let l=0;l +`+i+" +`}listitem(e){let r="";if(e.task){let n=this.checkbox({checked:!!e.checked});e.loose?e.tokens.length>0&&e.tokens[0].type==="paragraph"?(e.tokens[0].text=n+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&e.tokens[0].tokens[0].type==="text"&&(e.tokens[0].tokens[0].text=n+" "+e.tokens[0].tokens[0].text)):e.tokens.unshift({type:"text",raw:n+" ",text:n+" "}):r+=n+" "}return r+=this.parser.parse(e.tokens,!!e.loose),`
  • ${r}
  • +`}checkbox({checked:e}){return"'}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

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

    An error occurred:

    "+eo(n.message+"",!0)+"
    ";return r?Promise.resolve(i):i}if(r)return Promise.reject(n);throw n}}},kd=new c9;o(en,"marked");en.options=en.setOptions=function(t){return kd.setOptions(t),en.defaults=kd.defaults,ZX(en.defaults),en};en.getDefaults=u9;en.defaults=Ed;en.use=function(...t){return kd.use(...t),en.defaults=kd.defaults,ZX(en.defaults),en};en.walkTokens=function(t,e){return kd.walkTokens(t,e)};en.parseInline=kd.parseInline;en.Parser=Eu;en.parser=Eu.parse;en.Renderer=im;en.TextRenderer=hv;en.Lexer=ku;en.lexer=ku.lex;en.Tokenizer=nm;en.Hooks=rm;en.parse=en;u6t=en.options,h6t=en.setOptions,f6t=en.use,d6t=en.walkTokens,p6t=en.parseInline,m6t=Eu.parse,g6t=ku.lex});function U7e(t,{markdownAutoWrap:e}){let n=t.replace(//g,` +`).replace(/\n{2,}/g,` +`),i=Ib(n);return e===!1?i.replace(/ /g," "):i}function cj(t,e={}){let r=U7e(t,e),n=en.lexer(r),i=[[]],a=0;function s(l,u="normal"){l.type==="text"?l.text.split(` +`).forEach((f,d)=>{d!==0&&(a++,i.push([])),f.split(" ").forEach(p=>{p=p.replace(/'/g,"'"),p&&i[a].push({content:p,type:u})})}):l.type==="strong"||l.type==="em"?l.tokens.forEach(h=>{s(h,l.type)}):l.type==="html"&&i[a].push({content:l.text,type:"normal"})}return o(s,"processNode"),n.forEach(l=>{l.type==="paragraph"?l.tokens?.forEach(u=>{s(u)}):l.type==="html"&&i[a].push({content:l.text,type:"normal"})}),i}function uj(t,{markdownAutoWrap:e}={}){let r=en.lexer(t);function n(i){return i.type==="text"?e===!1?i.text.replace(/\n */g,"
    ").replace(/ /g," "):i.text.replace(/\n */g,"
    "):i.type==="strong"?`${i.tokens?.map(n).join("")}`:i.type==="em"?`${i.tokens?.map(n).join("")}`:i.type==="paragraph"?`

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

    `:i.type==="space"?"":i.type==="html"?`${i.text}`:i.type==="escape"?i.text:`Unsupported markdown: ${i.type}`}return o(n,"output"),r.map(n).join("")}var hj=M(()=>{"use strict";lj();MS();o(U7e,"preprocessMarkdown");o(cj,"markdownToLines");o(uj,"markdownToHTML")});function H7e(t){return Intl.Segmenter?[...new Intl.Segmenter().segment(t)].map(e=>e.segment):[...t]}function W7e(t,e){let r=H7e(e.content);return fj(t,[],r,e.type)}function fj(t,e,r,n){if(r.length===0)return[{content:e.join(""),type:n},{content:"",type:n}];let[i,...a]=r,s=[...e,i];return t([{content:s.join(""),type:n}])?fj(t,s,a,n):(e.length===0&&i&&(e.push(i),r.shift()),[{content:e.join(""),type:n},{content:r.join(""),type:n}])}function dj(t,e){if(t.some(({content:r})=>r.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return g9(t,e)}function g9(t,e,r=[],n=[]){if(t.length===0)return n.length>0&&r.push(n),r.length>0?r:[];let i="";t[0].content===" "&&(i=" ",t.shift());let a=t.shift()??{content:" ",type:"normal"},s=[...n];if(i!==""&&s.push({content:i,type:"normal"}),s.push(a),e(s))return g9(t,e,r,s);if(n.length>0)r.push(n),t.unshift(a);else if(a.content){let[l,u]=W7e(e,a);r.push([l]),u.content&&t.unshift(u)}return g9(t,e,r)}var pj=M(()=>{"use strict";o(H7e,"splitTextToChars");o(W7e,"splitWordToFitWidth");o(fj,"splitWordToFitWidthRecursion");o(dj,"splitLineToFitWidth");o(g9,"splitLineToFitWidthRecursion")});function mj(t,e){e&&t.attr("style",e)}async function Y7e(t,e,r,n,i=!1){let a=t.append("foreignObject");a.attr("width",`${10*r}px`),a.attr("height",`${10*r}px`);let s=a.append("xhtml:div"),l=e.label;e.label&&pi(e.label)&&(l=await hh(e.label.replace(je.lineBreakRegex,` +`),de()));let u=e.isNode?"nodeLabel":"edgeLabel",h=s.append("span");h.html(l),mj(h,e.labelStyle),h.attr("class",`${u} ${n}`),mj(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"),i&&s.attr("class","labelBkg");let f=s.node().getBoundingClientRect();return f.width===r&&(s.style("display","table"),s.style("white-space","break-spaces"),s.style("width",r+"px"),f=s.node().getBoundingClientRect()),a.node()}function y9(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 q7e(t,e,r){let n=t.append("text"),i=y9(n,1,e);v9(i,r);let a=i.node().getComputedTextLength();return n.remove(),a}function gj(t,e,r){let n=t.append("text"),i=y9(n,1,e);v9(i,[{content:r,type:"normal"}]);let a=i.node()?.getBoundingClientRect();return a&&n.remove(),a}function X7e(t,e,r,n=!1){let a=e.append("g"),s=a.insert("rect").attr("class","background").attr("style","stroke: none"),l=a.append("text").attr("y","-10.1"),u=0;for(let h of r){let f=o(p=>q7e(a,1.1,p)<=t,"checkWidth"),d=f(h)?[h]:dj(h,f);for(let p of d){let m=y9(l,u,1.1);v9(m,p),u++}}if(n){let h=l.node().getBBox(),f=2;return s.attr("x",h.x-f).attr("y",h.y-f).attr("width",h.width+2*f).attr("height",h.height+2*f),a.node()}else return l.node()}function v9(t,e){t.text(""),e.forEach((r,n)=>{let i=t.append("tspan").attr("font-style",r.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",r.type==="strong"?"bold":"normal");n===0?i.text(r.content):i.text(" "+r.content)})}function x9(t){return t.replace(/fa[bklrs]?:fa-[\w-]+/g,e=>``)}var Si,Dl=M(()=>{"use strict";Vt();fr();mr();ht();hj();hr();pj();o(mj,"applyStyle");o(Y7e,"addHtmlSpan");o(y9,"createTspan");o(q7e,"computeWidthOfText");o(gj,"computeDimensionOfText");o(X7e,"createFormattedText");o(v9,"updateTextContentAndStyles");o(x9,"replaceIconSubstring");Si=o(async(t,e="",{style:r="",isTitle:n=!1,classes:i="",useHtmlLabels:a=!0,isNode:s=!0,width:l=200,addSvgBackground:u=!1}={},h)=>{if(Y.debug("XYZ createText",e,r,n,i,a,s,"addSvgBackground: ",u),a){let f=uj(e,h),d=x9(Ca(f)),p=e.replace(/\\\\/g,"\\"),m={isNode:s,label:pi(e)?p:d,labelStyle:r.replace("fill:","color:")};return await Y7e(t,m,l,i,u)}else{let f=e.replace(//g,"
    "),d=cj(f.replace("
    ","
    "),h),p=X7e(l,t,d,e?u:!1);if(s){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");ze(p).attr("style",m)}else{let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");ze(p).select("rect").attr("style",m.replace(/background:/g,"fill:"));let g=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");ze(p).select("text").attr("style",g)}return p}},"createText")});function Wt(t){let e=t.map((r,n)=>`${n===0?"M":"L"}${r.x},${r.y}`);return e.push("Z"),e.join(" ")}function zo(t,e,r,n,i,a){let s=[],u=r-t,h=n-e,f=u/a,d=2*Math.PI/f,p=e+h/2;for(let m=0;m<=50;m++){let g=m/50,y=t+g*u,v=p+i*Math.sin(d*(y-t));s.push({x:y,y:v})}return s}function k5(t,e,r,n,i,a){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d{"use strict";Dl();Vt();mr();hs();fr();hr();ot=o(async(t,e,r)=>{let n,i=e.useHtmlLabels||xr(de()?.htmlLabels);r?n=r:n="node default";let a=t.insert("g").attr("class",n).attr("id",e.domId||e.id),s=a.insert("g").attr("class","label").attr("style",Fn(e.labelStyle)),l;e.label===void 0?l="":l=typeof e.label=="string"?e.label:e.label[0];let u=await Si(s,Tr(Ca(l),de()),{useHtmlLabels:i,width:e.width||de().flowchart?.wrappingWidth,cssClasses:"markdown-node-label",style:e.labelStyle,addSvgBackground:!!e.icon||!!e.img}),h=u.getBBox(),f=(e?.padding??0)/2;if(i){let d=u.children[0],p=ze(u),m=d.getElementsByTagName("img");if(m){let g=l.replace(/]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(v=>{function x(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=de().fontSize?de().fontSize:window.getComputedStyle(document.body).fontSize,w=5,[_=ur.fontSize]=Fo(b),T=_*w+"px";y.style.minWidth=T,y.style.maxWidth=T}else y.style.width="100%";v(y)}o(x,"setupImage"),setTimeout(()=>{y.complete&&x()}),y.addEventListener("error",x),y.addEventListener("load",x)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}return i?s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"):s.attr("transform","translate(0, "+-h.height/2+")"),e.centerLabel&&s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),s.insert("rect",":first-child"),{shapeSvg:a,bbox:h,halfPadding:f,label:s}},"labelHelper"),T5=o(async(t,e,r)=>{let n=r.useHtmlLabels||xr(de()?.flowchart?.htmlLabels),i=t.insert("g").attr("class","label").attr("style",r.labelStyle||""),a=await Si(i,Tr(Ca(e),de()),{useHtmlLabels:n,width:r.width||de()?.flowchart?.wrappingWidth,style:r.labelStyle,addSvgBackground:!!r.icon||!!r.img}),s=a.getBBox(),l=r.padding/2;if(xr(de()?.flowchart?.htmlLabels)){let u=a.children[0],h=ze(a);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}return n?i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"):i.attr("transform","translate(0, "+-s.height/2+")"),r.centerLabel&&i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),i.insert("rect",":first-child"),{shapeSvg:t,bbox:s,halfPadding:l,label:i}},"insertLabel"),Qe=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds"),lt=o((t,e)=>(t.look==="handDrawn"?"rough-node":"node")+" "+t.cssClasses+" "+(e||""),"getNodeClasses");o(Wt,"createPathFromPoints");o(zo,"generateFullSineWavePoints");o(k5,"generateCirclePoints")});function j7e(t,e){return t.intersect(e)}var yj,vj=M(()=>{"use strict";o(j7e,"intersectNode");yj=j7e});function K7e(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x{"use strict";o(K7e,"intersectEllipse");E5=K7e});function Q7e(t,e,r){return E5(t,e,e,r)}var xj,bj=M(()=>{"use strict";b9();o(Q7e,"intersectCircle");xj=Q7e});function Z7e(t,e,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=e.y-t.y,s=t.x-e.x,u=e.x*t.y-t.x*e.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&wj(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*t.x+l*t.y+h,d=a*e.x+l*e.y+h,!(f!==0&&d!==0&&wj(f,d))&&(g=i*l-a*s,g!==0)))return y=Math.abs(g/2),v=s*h-l*u,x=v<0?(v-y)/g:(v+y)/g,v=a*u-i*h,b=v<0?(v-y)/g:(v+y)/g,{x,y:b}}function wj(t,e){return t*e>0}var Tj,kj=M(()=>{"use strict";o(Z7e,"intersectLine");o(wj,"sameSign");Tj=Z7e});function J7e(t,e,r){let n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(f){s=Math.min(s,f.x),l=Math.min(l,f.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));let u=n-t.width/2-s,h=i-t.height/2-l;for(let f=0;f1&&a.sort(function(f,d){let p=f.x-r.x,m=f.y-r.y,g=Math.sqrt(p*p+m*m),y=d.x-r.x,v=d.y-r.y,x=Math.sqrt(y*y+v*v);return g{"use strict";kj();o(J7e,"intersectPolygon");Ej=J7e});var eAe,Oh,w9=M(()=>{"use strict";eAe=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),Oh=eAe});var qe,qt=M(()=>{"use strict";vj();bj();b9();Sj();w9();qe={node:yj,circle:xj,ellipse:E5,polygon:Ej,rect:Oh}});var Cj,mc,tAe,et,Ze,Xt=M(()=>{"use strict";Vt();Cj=o(t=>{let{handDrawnSeed:e}=de();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}},"solidStateFill"),mc=o(t=>{let e=tAe([...t.cssCompiledStyles||[],...t.cssStyles||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),tAe=o(t=>{let e=new Map;return t.forEach(r=>{let[n,i]=r.split(":");e.set(n.trim(),i?.trim())}),e},"styles2Map"),et=o(t=>{let{stylesArray:e}=mc(t),r=[],n=[],i=[],a=[];return e.forEach(s=>{let l=s[0];l==="color"||l==="font-size"||l==="font-family"||l==="font-weight"||l==="font-style"||l==="text-decoration"||l==="text-align"||l==="text-transform"||l==="line-height"||l==="letter-spacing"||l==="word-spacing"||l==="text-shadow"||l==="text-overflow"||l==="white-space"||l==="word-wrap"||l==="word-break"||l==="overflow-wrap"||l==="hyphens"?r.push(s.join(":")+" !important"):(n.push(s.join(":")+" !important"),l.includes("stroke")&&i.push(s.join(":")+" !important"),l==="fill"&&a.push(s.join(":")+" !important"))}),{labelStyles:r.join(";"),nodeStyles:n.join(";"),stylesArray:e,borderStyles:i,backgroundStyles:a}},"styles2String"),Ze=o((t,e)=>{let{themeVariables:r,handDrawnSeed:n}=de(),{nodeBorder:i,mainBkg:a}=r,{stylesMap:s}=mc(t);return Object.assign({roughness:.7,fill:s.get("fill")||a,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:s.get("stroke")||i,seed:n,strokeWidth:s.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0]},e)},"userNodeOverrides")});function T9(t,e,r){if(t&&t.length){let[n,i]=e,a=Math.PI/180*r,s=Math.cos(a),l=Math.sin(a);for(let u of t){let[h,f]=u;u[0]=(h-n)*s-(f-i)*l+n,u[1]=(h-n)*l+(f-i)*s+i}}}function rAe(t,e){return t[0]===e[0]&&t[1]===e[1]}function nAe(t,e,r,n=1){let i=r,a=Math.max(e,.1),s=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,l=[0,0];if(i)for(let h of s)T9(h,l,i);let u=function(h,f,d){let p=[];for(let b of h){let w=[...b];rAe(w[0],w[w.length-1])||w.push([w[0][0],w[0][1]]),w.length>2&&p.push(w)}let m=[];f=Math.max(f,.1);let g=[];for(let b of p)for(let w=0;wb.yminw.ymin?1:b.xw.x?1:b.ymax===w.ymax?0:(b.ymax-w.ymax)/Math.abs(b.ymax-w.ymax)),!g.length)return m;let y=[],v=g[0].ymin,x=0;for(;y.length||g.length;){if(g.length){let b=-1;for(let w=0;wv);w++)b=w;g.splice(0,b+1).forEach(w=>{y.push({s:v,edge:w})})}if(y=y.filter(b=>!(b.edge.ymax<=v)),y.sort((b,w)=>b.edge.x===w.edge.x?0:(b.edge.x-w.edge.x)/Math.abs(b.edge.x-w.edge.x)),(d!==1||x%f==0)&&y.length>1)for(let b=0;b=y.length)break;let _=y[b].edge,T=y[w].edge;m.push([[Math.round(_.x),v],[Math.round(T.x),v]])}v+=d,y.forEach(b=>{b.edge.x=b.edge.x+d*b.edge.islope}),x++}return m}(s,a,n);if(i){for(let h of s)T9(h,l,-i);(function(h,f,d){let p=[];h.forEach(m=>p.push(...m)),T9(p,f,d)})(u,l,-i)}return u}function yv(t,e){var r;let n=e.hachureAngle+90,i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.round(Math.max(i,.1));let a=1;return e.roughness>=1&&(((r=e.randomizer)===null||r===void 0?void 0:r.next())||Math.random())>.7&&(a=i),nAe(t,i,n,a||1)}function M5(t){let e=t[0],r=t[1];return Math.sqrt(Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2))}function E9(t,e){return t.type===e}function F9(t){let e=[],r=function(s){let l=new Array;for(;s!=="";)if(s.match(/^([ \t\r\n,]+)/))s=s.substr(RegExp.$1.length);else if(s.match(/^([aAcChHlLmMqQsStTvVzZ])/))l[l.length]={type:iAe,text:RegExp.$1},s=s.substr(RegExp.$1.length);else{if(!s.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];l[l.length]={type:k9,text:`${parseFloat(RegExp.$1)}`},s=s.substr(RegExp.$1.length)}return l[l.length]={type:Aj,text:""},l}(t),n="BOD",i=0,a=r[i];for(;!E9(a,Aj);){let s=0,l=[];if(n==="BOD"){if(a.text!=="M"&&a.text!=="m")return F9("M0,0"+t);i++,s=S5[a.text],n=a.text}else E9(a,k9)?s=S5[n]:(i++,s=S5[a.text],n=a.text);if(!(i+sf%2?h+r:h+e);a.push({key:"C",data:u}),e=u[4],r=u[5];break}case"Q":a.push({key:"Q",data:[...l]}),e=l[2],r=l[3];break;case"q":{let u=l.map((h,f)=>f%2?h+r:h+e);a.push({key:"Q",data:u}),e=u[2],r=u[3];break}case"A":a.push({key:"A",data:[...l]}),e=l[5],r=l[6];break;case"a":e+=l[5],r+=l[6],a.push({key:"A",data:[l[0],l[1],l[2],l[3],l[4],e,r]});break;case"H":a.push({key:"H",data:[...l]}),e=l[0];break;case"h":e+=l[0],a.push({key:"H",data:[e]});break;case"V":a.push({key:"V",data:[...l]}),r=l[0];break;case"v":r+=l[0],a.push({key:"V",data:[r]});break;case"S":a.push({key:"S",data:[...l]}),e=l[2],r=l[3];break;case"s":{let u=l.map((h,f)=>f%2?h+r:h+e);a.push({key:"S",data:u}),e=u[2],r=u[3];break}case"T":a.push({key:"T",data:[...l]}),e=l[0],r=l[1];break;case"t":e+=l[0],r+=l[1],a.push({key:"T",data:[e,r]});break;case"Z":case"z":a.push({key:"Z",data:[]}),e=n,r=i}return a}function Pj(t){let e=[],r="",n=0,i=0,a=0,s=0,l=0,u=0;for(let{key:h,data:f}of t){switch(h){case"M":e.push({key:"M",data:[...f]}),[n,i]=f,[a,s]=f;break;case"C":e.push({key:"C",data:[...f]}),n=f[4],i=f[5],l=f[2],u=f[3];break;case"L":e.push({key:"L",data:[...f]}),[n,i]=f;break;case"H":n=f[0],e.push({key:"L",data:[n,i]});break;case"V":i=f[0],e.push({key:"L",data:[n,i]});break;case"S":{let d=0,p=0;r==="C"||r==="S"?(d=n+(n-l),p=i+(i-u)):(d=n,p=i),e.push({key:"C",data:[d,p,...f]}),l=f[0],u=f[1],n=f[2],i=f[3];break}case"T":{let[d,p]=f,m=0,g=0;r==="Q"||r==="T"?(m=n+(n-l),g=i+(i-u)):(m=n,g=i);let y=n+2*(m-n)/3,v=i+2*(g-i)/3,x=d+2*(m-d)/3,b=p+2*(g-p)/3;e.push({key:"C",data:[y,v,x,b,d,p]}),l=m,u=g,n=d,i=p;break}case"Q":{let[d,p,m,g]=f,y=n+2*(d-n)/3,v=i+2*(p-i)/3,x=m+2*(d-m)/3,b=g+2*(p-g)/3;e.push({key:"C",data:[y,v,x,b,m,g]}),l=d,u=p,n=m,i=g;break}case"A":{let d=Math.abs(f[0]),p=Math.abs(f[1]),m=f[2],g=f[3],y=f[4],v=f[5],x=f[6];d===0||p===0?(e.push({key:"C",data:[n,i,v,x,v,x]}),n=v,i=x):(n!==v||i!==x)&&(Bj(n,i,v,x,d,p,m,g,y).forEach(function(b){e.push({key:"C",data:b})}),n=v,i=x);break}case"Z":e.push({key:"Z",data:[]}),n=a,i=s}r=h}return e}function pv(t,e,r){return[t*Math.cos(r)-e*Math.sin(r),t*Math.sin(r)+e*Math.cos(r)]}function Bj(t,e,r,n,i,a,s,l,u,h){let f=(d=s,Math.PI*d/180);var d;let p=[],m=0,g=0,y=0,v=0;if(h)[m,g,y,v]=h;else{[t,e]=pv(t,e,-f),[r,n]=pv(r,n,-f);let R=(t-r)/2,S=(e-n)/2,O=R*R/(i*i)+S*S/(a*a);O>1&&(O=Math.sqrt(O),i*=O,a*=O);let N=i*i,P=a*a,F=N*P-N*S*S-P*R*R,B=N*S*S+P*R*R,$=(l===u?-1:1)*Math.sqrt(Math.abs(F/B));y=$*i*S/a+(t+r)/2,v=$*-a*R/i+(e+n)/2,m=Math.asin(parseFloat(((e-v)/a).toFixed(9))),g=Math.asin(parseFloat(((n-v)/a).toFixed(9))),tg&&(m-=2*Math.PI),!u&&g>m&&(g-=2*Math.PI)}let x=g-m;if(Math.abs(x)>120*Math.PI/180){let R=g,S=r,O=n;g=u&&g>m?m+120*Math.PI/180*1:m+120*Math.PI/180*-1,p=Bj(r=y+i*Math.cos(g),n=v+a*Math.sin(g),S,O,i,a,s,0,u,[g,R,y,v])}x=g-m;let b=Math.cos(m),w=Math.sin(m),_=Math.cos(g),T=Math.sin(g),E=Math.tan(x/4),L=4/3*i*E,C=4/3*a*E,A=[t,e],I=[t+L*w,e-C*b],D=[r+L*T,n-C*_],k=[r,n];if(I[0]=2*A[0]-I[0],I[1]=2*A[1]-I[1],h)return[I,D,k].concat(p);{p=[I,D,k].concat(p);let R=[];for(let S=0;S2){let i=[];for(let a=0;a2*Math.PI&&(m=0,g=2*Math.PI);let y=2*Math.PI/u.curveStepCount,v=Math.min(y/2,(g-m)/2),x=Mj(v,h,f,d,p,m,g,1,u);if(!u.disableMultiStroke){let b=Mj(v,h,f,d,p,m,g,1.5,u);x.push(...b)}return s&&(l?x.push(...Ph(h,f,h+d*Math.cos(m),f+p*Math.sin(m),u),...Ph(h,f,h+d*Math.cos(g),f+p*Math.sin(g),u)):x.push({op:"lineTo",data:[h,f]},{op:"lineTo",data:[h+d*Math.cos(m),f+p*Math.sin(m)]})),{type:"path",ops:x}}function Dj(t,e){let r=Pj(Oj(F9(t))),n=[],i=[0,0],a=[0,0];for(let{key:s,data:l}of r)switch(s){case"M":a=[l[0],l[1]],i=[l[0],l[1]];break;case"L":n.push(...Ph(a[0],a[1],l[0],l[1],e)),a=[l[0],l[1]];break;case"C":{let[u,h,f,d,p,m]=l;n.push(...oAe(u,h,f,d,p,m,a,e)),a=[p,m];break}case"Z":n.push(...Ph(a[0],a[1],i[0],i[1],e)),a=[i[0],i[1]]}return{type:"path",ops:n}}function S9(t,e){let r=[];for(let n of t)if(n.length){let i=e.maxRandomnessOffset||0,a=n.length;if(a>2){r.push({op:"move",data:[n[0][0]+nr(i,e),n[0][1]+nr(i,e)]});for(let s=1;s500?.4:-.0016668*u+1.233334;let f=i.maxRandomnessOffset||0;f*f*100>l&&(f=u/10);let d=f/2,p=.2+.2*Gj(i),m=i.bowing*i.maxRandomnessOffset*(n-e)/200,g=i.bowing*i.maxRandomnessOffset*(t-r)/200;m=nr(m,i,h),g=nr(g,i,h);let y=[],v=o(()=>nr(d,i,h),"M"),x=o(()=>nr(f,i,h),"k"),b=i.preserveVertices;return a&&(s?y.push({op:"move",data:[t+(b?0:v()),e+(b?0:v())]}):y.push({op:"move",data:[t+(b?0:nr(f,i,h)),e+(b?0:nr(f,i,h))]})),s?y.push({op:"bcurveTo",data:[m+t+(r-t)*p+v(),g+e+(n-e)*p+v(),m+t+2*(r-t)*p+v(),g+e+2*(n-e)*p+v(),r+(b?0:v()),n+(b?0:v())]}):y.push({op:"bcurveTo",data:[m+t+(r-t)*p+x(),g+e+(n-e)*p+x(),m+t+2*(r-t)*p+x(),g+e+2*(n-e)*p+x(),r+(b?0:x()),n+(b?0:x())]}),y}function C5(t,e,r){if(!t.length)return[];let n=[];n.push([t[0][0]+nr(e,r),t[0][1]+nr(e,r)]),n.push([t[0][0]+nr(e,r),t[0][1]+nr(e,r)]);for(let i=1;i3){let a=[],s=1-r.curveTightness;i.push({op:"move",data:[t[1][0],t[1][1]]});for(let l=1;l+21&&i.push(l)):i.push(l),i.push(t[e+3])}else{let u=t[e+0],h=t[e+1],f=t[e+2],d=t[e+3],p=Sd(u,h,.5),m=Sd(h,f,.5),g=Sd(f,d,.5),y=Sd(p,m,.5),v=Sd(m,g,.5),x=Sd(y,v,.5);O9([u,p,y,x],0,r,i),O9([x,v,g,d],0,r,i)}var a,s;return i}function cAe(t,e){return R5(t,0,t.length,e)}function R5(t,e,r,n,i){let a=i||[],s=t[e],l=t[r-1],u=0,h=1;for(let f=e+1;fu&&(u=d,h=f)}return Math.sqrt(u)>n?(R5(t,e,h+1,n,a),R5(t,h,r,n,a)):(a.length||a.push(s),a.push(l)),a}function C9(t,e=.15,r){let n=[],i=(t.length-1)/3;for(let a=0;a0?R5(n,0,n.length,r):n}var gv,A9,_9,L9,D9,N9,ks,R9,iAe,k9,Aj,S5,aAe,to,sm,P9,A5,B9,Ke,jt=M(()=>{"use strict";o(T9,"t");o(rAe,"e");o(nAe,"s");o(yv,"n");gv=class{static{o(this,"o")}constructor(e){this.helper=e}fillPolygons(e,r){return this._fillPolygons(e,r)}_fillPolygons(e,r){let n=yv(e,r);return{type:"fillSketch",ops:this.renderLines(n,r)}}renderLines(e,r){let n=[];for(let i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],r));return n}};o(M5,"a");A9=class extends gv{static{o(this,"h")}fillPolygons(e,r){let n=r.hachureGap;n<0&&(n=4*r.strokeWidth),n=Math.max(n,.1);let i=yv(e,Object.assign({},r,{hachureGap:n})),a=Math.PI/180*r.hachureAngle,s=[],l=.5*n*Math.cos(a),u=.5*n*Math.sin(a);for(let[h,f]of i)M5([h,f])&&s.push([[h[0]-l,h[1]+u],[...f]],[[h[0]+l,h[1]-u],[...f]]);return{type:"fillSketch",ops:this.renderLines(s,r)}}},_9=class extends gv{static{o(this,"r")}fillPolygons(e,r){let n=this._fillPolygons(e,r),i=Object.assign({},r,{hachureAngle:r.hachureAngle+90}),a=this._fillPolygons(e,i);return n.ops=n.ops.concat(a.ops),n}},L9=class{static{o(this,"i")}constructor(e){this.helper=e}fillPolygons(e,r){let n=yv(e,r=Object.assign({},r,{hachureAngle:0}));return this.dotsOnLines(n,r)}dotsOnLines(e,r){let n=[],i=r.hachureGap;i<0&&(i=4*r.strokeWidth),i=Math.max(i,.1);let a=r.fillWeight;a<0&&(a=r.strokeWidth/2);let s=i/4;for(let l of e){let u=M5(l),h=u/i,f=Math.ceil(h)-1,d=u-f*i,p=(l[0][0]+l[1][0])/2-i/4,m=Math.min(l[0][1],l[1][1]);for(let g=0;g{let l=M5(s),u=Math.floor(l/(n+i)),h=(l+i-u*(n+i))/2,f=s[0],d=s[1];f[0]>d[0]&&(f=s[1],d=s[0]);let p=Math.atan((d[1]-f[1])/(d[0]-f[0]));for(let m=0;m{let s=M5(a),l=Math.round(s/(2*r)),u=a[0],h=a[1];u[0]>h[0]&&(u=a[1],h=a[0]);let f=Math.atan((h[1]-u[1])/(h[0]-u[0]));for(let d=0;d2*Math.PI&&(L=0,C=2*Math.PI);let A=(C-L)/b.curveStepCount,I=[];for(let D=L;D<=C;D+=A)I.push([w+T*Math.cos(D),_+E*Math.sin(D)]);return I.push([w+T*Math.cos(C),_+E*Math.sin(C)]),I.push([w,_]),am([I],b)}(e,r,n,i,a,s,h));return h.stroke!==to&&f.push(d),this._d("arc",f,h)}curve(e,r){let n=this._o(r),i=[],a=_j(e,n);if(n.fill&&n.fill!==to)if(n.fillStyle==="solid"){let s=_j(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(s.ops)})}else{let s=[],l=e;if(l.length){let u=typeof l[0][0]=="number"?[l]:l;for(let h of u)h.length<3?s.push(...h):h.length===3?s.push(...C9(Ij([h[0],h[0],h[1],h[2]]),10,(1+n.roughness)/2)):s.push(...C9(Ij(h),10,(1+n.roughness)/2))}s.length&&i.push(am([s],n))}return n.stroke!==to&&i.push(a),this._d("curve",i,n)}polygon(e,r){let n=this._o(r),i=[],a=_5(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(S9([e],n)):i.push(am([e],n))),n.stroke!==to&&i.push(a),this._d("polygon",i,n)}path(e,r){let n=this._o(r),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let a=n.fill&&n.fill!=="transparent"&&n.fill!==to,s=n.stroke!==to,l=!!(n.simplification&&n.simplification<1),u=function(f,d,p){let m=Pj(Oj(F9(f))),g=[],y=[],v=[0,0],x=[],b=o(()=>{x.length>=4&&y.push(...C9(x,d)),x=[]},"i"),w=o(()=>{b(),y.length&&(g.push(y),y=[])},"c");for(let{key:T,data:E}of m)switch(T){case"M":w(),v=[E[0],E[1]],y.push(v);break;case"L":b(),y.push([E[0],E[1]]);break;case"C":if(!x.length){let L=y.length?y[y.length-1]:v;x.push([L[0],L[1]])}x.push([E[0],E[1]]),x.push([E[2],E[3]]),x.push([E[4],E[5]]);break;case"Z":b(),y.push([v[0],v[1]])}if(w(),!p)return g;let _=[];for(let T of g){let E=cAe(T,p);E.length&&_.push(E)}return _}(e,1,l?4-4*(n.simplification||1):(1+n.roughness)/2),h=Dj(e,n);if(a)if(n.fillStyle==="solid")if(u.length===1){let f=Dj(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else i.push(S9(u,n));else i.push(am(u,n));return s&&(l?u.forEach(f=>{i.push(_5(f,!1,n))}):i.push(h)),this._d("path",i,n)}opsToPath(e,r){let n="";for(let i of e.ops){let a=typeof r=="number"&&r>=0?i.data.map(s=>+s.toFixed(r)):i.data;switch(i.op){case"move":n+=`M${a[0]} ${a[1]} `;break;case"bcurveTo":n+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":n+=`L${a[0]} ${a[1]} `}}return n.trim()}toPaths(e){let r=e.sets||[],n=e.options||this.defaultOptions,i=[];for(let a of r){let s=null;switch(a.type){case"path":s={d:this.opsToPath(a),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:to};break;case"fillPath":s={d:this.opsToPath(a),stroke:to,strokeWidth:0,fill:n.fill||to};break;case"fillSketch":s=this.fillSketch(a,n)}s&&i.push(s)}return i}fillSketch(e,r){let n=r.fillWeight;return n<0&&(n=r.strokeWidth/2),{d:this.opsToPath(e),stroke:r.fill||to,strokeWidth:n,fill:to}}_mergedShape(e){return e.filter((r,n)=>n===0||r.op!=="move")}},P9=class{static{o(this,"st")}constructor(e,r){this.canvas=e,this.ctx=this.canvas.getContext("2d"),this.gen=new sm(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.ctx,a=e.options.fixedDecimalPlaceDigits;for(let s of r)switch(s.type){case"path":i.save(),i.strokeStyle=n.stroke==="none"?"transparent":n.stroke,i.lineWidth=n.strokeWidth,n.strokeLineDash&&i.setLineDash(n.strokeLineDash),n.strokeLineDashOffset&&(i.lineDashOffset=n.strokeLineDashOffset),this._drawToContext(i,s,a),i.restore();break;case"fillPath":{i.save(),i.fillStyle=n.fill||"";let l=e.shape==="curve"||e.shape==="polygon"||e.shape==="path"?"evenodd":"nonzero";this._drawToContext(i,s,a,l),i.restore();break}case"fillSketch":this.fillSketch(i,s,n)}}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2),e.save(),n.fillLineDash&&e.setLineDash(n.fillLineDash),n.fillLineDashOffset&&(e.lineDashOffset=n.fillLineDashOffset),e.strokeStyle=n.fill||"",e.lineWidth=i,this._drawToContext(e,r,n.fixedDecimalPlaceDigits),e.restore()}_drawToContext(e,r,n,i="nonzero"){e.beginPath();for(let a of r.ops){let s=typeof n=="number"&&n>=0?a.data.map(l=>+l.toFixed(n)):a.data;switch(a.op){case"move":e.moveTo(s[0],s[1]);break;case"bcurveTo":e.bezierCurveTo(s[0],s[1],s[2],s[3],s[4],s[5]);break;case"lineTo":e.lineTo(s[0],s[1])}}r.type==="fillPath"?e.fill(i):e.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s),s}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s),s}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s),s}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a),a}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n),n}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n),n}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h),h}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n),n}path(e,r){let n=this.gen.path(e,r);return this.draw(n),n}},A5="http://www.w3.org/2000/svg",B9=class{static{o(this,"ot")}constructor(e,r){this.svg=e,this.gen=new sm(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,a=i.createElementNS(A5,"g"),s=e.options.fixedDecimalPlaceDigits;for(let l of r){let u=null;switch(l.type){case"path":u=i.createElementNS(A5,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke",n.stroke),u.setAttribute("stroke-width",n.strokeWidth+""),u.setAttribute("fill","none"),n.strokeLineDash&&u.setAttribute("stroke-dasharray",n.strokeLineDash.join(" ").trim()),n.strokeLineDashOffset&&u.setAttribute("stroke-dashoffset",`${n.strokeLineDashOffset}`);break;case"fillPath":u=i.createElementNS(A5,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke","none"),u.setAttribute("stroke-width","0"),u.setAttribute("fill",n.fill||""),e.shape!=="curve"&&e.shape!=="polygon"||u.setAttribute("fill-rule","evenodd");break;case"fillSketch":u=this.fillSketch(i,l,n)}u&&a.appendChild(u)}return a}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2);let a=e.createElementNS(A5,"path");return a.setAttribute("d",this.opsToPath(r,n.fixedDecimalPlaceDigits)),a.setAttribute("stroke",n.fill||""),a.setAttribute("stroke-width",i+""),a.setAttribute("fill","none"),n.fillLineDash&&a.setAttribute("stroke-dasharray",n.fillLineDash.join(" ").trim()),n.fillLineDashOffset&&a.setAttribute("stroke-dashoffset",`${n.fillLineDashOffset}`),a}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(e,r){return this.gen.opsToPath(e,r)}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s)}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s)}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s)}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a)}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n)}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n)}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h)}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n)}path(e,r){let n=this.gen.path(e,r);return this.draw(n)}},Ke={canvas:o((t,e)=>new P9(t,e),"canvas"),svg:o((t,e)=>new B9(t,e),"svg"),generator:o(t=>new sm(t),"generator"),newSeed:o(()=>sm.newSeed(),"newSeed")}});function $j(t,e){let{labelStyles:r}=et(e);e.labelStyle=r;let n=lt(e),i=n;n||(i="anchor");let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=1,{cssStyles:l}=e,u=Ke.svg(a),h=Ze(e,{fill:"black",stroke:"none",fillStyle:"solid"});e.look!=="handDrawn"&&(h.roughness=0);let f=u.circle(0,0,s*2,h),d=a.insert(()=>f,":first-child");return d.attr("class","anchor").attr("style",Fn(l)),Qe(e,d),e.intersect=function(p){return Y.info("Circle intersect",e,s,p),qe.circle(e,s,p)},a}var Vj=M(()=>{"use strict";ht();Ft();qt();Xt();jt();hr();o($j,"anchor")});function Uj(t,e,r,n,i,a,s){let u=(t+r)/2,h=(e+n)/2,f=Math.atan2(n-e,r-t),d=(r-t)/2,p=(n-e)/2,m=d/i,g=p/a,y=Math.sqrt(m**2+g**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let v=Math.sqrt(1-y**2),x=u+v*a*Math.sin(f)*(s?-1:1),b=h-v*i*Math.cos(f)*(s?-1:1),w=Math.atan2((e-b)/a,(t-x)/i),T=Math.atan2((n-b)/a,(r-x)/i)-w;s&&T<0&&(T+=2*Math.PI),!s&&T>0&&(T-=2*Math.PI);let E=[];for(let L=0;L<20;L++){let C=L/19,A=w+C*T,I=x+i*Math.cos(A),D=b+a*Math.sin(A);E.push({x:I,y:D})}return E}async function Hj(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=a.width+e.padding+20,l=a.height+e.padding,u=l/2,h=u/(2.5+l/50),{cssStyles:f}=e,d=[{x:s/2,y:-l/2},{x:-s/2,y:-l/2},...Uj(-s/2,-l/2,-s/2,l/2,h,u,!1),{x:s/2,y:l/2},...Uj(s/2,l/2,s/2,-l/2,h,u,!0)],p=Ke.svg(i),m=Ze(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=Wt(d),y=p.path(g,m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(${h/2}, 0)`),Qe(e,v),e.intersect=function(x){return qe.polygon(e,d,x)},i}var Wj=M(()=>{"use strict";Ft();qt();Xt();jt();o(Uj,"generateArcPoints");o(Hj,"bowTieRect")});function Aa(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var Su=M(()=>{"use strict";o(Aa,"insertPolygonShape")});async function Yj(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=a.height+e.padding,l=12,u=a.width+e.padding+l,h=0,f=u,d=-s,p=0,m=[{x:h+l,y:d},{x:f,y:d},{x:f,y:p},{x:h,y:p},{x:h,y:d+l},{x:h+l,y:d}],g,{cssStyles:y}=e;if(e.look==="handDrawn"){let v=Ke.svg(i),x=Ze(e,{}),b=Wt(m),w=v.path(b,x);g=i.insert(()=>w,":first-child").attr("transform",`translate(${-u/2}, ${s/2})`),y&&g.attr("style",y)}else g=Aa(i,u,s,m);return n&&g.attr("style",n),Qe(e,g),e.intersect=function(v){return qe.polygon(e,m,v)},i}var qj=M(()=>{"use strict";Ft();qt();Xt();jt();Su();Ft();o(Yj,"card")});function Xj(t,e){let{nodeStyles:r}=et(e);e.label="";let n=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),{cssStyles:i}=e,a=Math.max(28,e.width??0),s=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}],l=Ke.svg(n),u=Ze(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=Wt(s),f=l.path(h,u),d=n.insert(()=>f,":first-child");return i&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",i),r&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",r),e.width=28,e.height=28,e.intersect=function(p){return qe.polygon(e,s,p)},n}var jj=M(()=>{"use strict";qt();jt();Xt();Ft();o(Xj,"choice")});async function Kj(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await ot(t,e,lt(e)),l=a.width/2+s,u,{cssStyles:h}=e;if(e.look==="handDrawn"){let f=Ke.svg(i),d=Ze(e,{}),p=f.circle(0,0,l*2,d);u=i.insert(()=>p,":first-child"),u.attr("class","basic label-container").attr("style",Fn(h))}else u=i.insert("circle",":first-child").attr("class","basic label-container").attr("style",n).attr("r",l).attr("cx",0).attr("cy",0);return Qe(e,u),e.intersect=function(f){return Y.info("Circle intersect",e,l,f),qe.circle(e,l,f)},i}var Qj=M(()=>{"use strict";ht();Ft();qt();Xt();jt();hr();o(Kj,"circle")});function uAe(t){let e=Math.cos(Math.PI/4),r=Math.sin(Math.PI/4),n=t*2,i={x:n/2*e,y:n/2*r},a={x:-(n/2)*e,y:n/2*r},s={x:-(n/2)*e,y:-(n/2)*r},l={x:n/2*e,y:-(n/2)*r};return`M ${a.x},${a.y} L ${l.x},${l.y} + M ${i.x},${i.y} L ${s.x},${s.y}`}function Zj(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r,e.label="";let i=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),a=Math.max(30,e?.width??0),{cssStyles:s}=e,l=Ke.svg(i),u=Ze(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=l.circle(0,0,a*2,u),f=uAe(a),d=l.path(f,u),p=i.insert(()=>h,":first-child");return p.insert(()=>d),s&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",s),n&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",n),Qe(e,p),e.intersect=function(m){return Y.info("crossedCircle intersect",e,{radius:a,point:m}),qe.circle(e,a,m)},i}var Jj=M(()=>{"use strict";ht();Ft();Xt();jt();qt();o(uAe,"createLine");o(Zj,"crossedCircle")});function Bh(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dw,":first-child").attr("stroke-opacity",0),_.insert(()=>x,":first-child"),_.attr("class","text"),f&&e.look!=="handDrawn"&&_.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&_.selectAll("path").attr("style",n),_.attr("transform",`translate(${h}, 0)`),s.attr("transform",`translate(${-l/2+h-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Qe(e,_),e.intersect=function(T){return qe.polygon(e,p,T)},i}var tK=M(()=>{"use strict";Ft();qt();Xt();jt();o(Bh,"generateCirclePoints");o(eK,"curlyBraceLeft")});function Fh(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dw,":first-child").attr("stroke-opacity",0),_.insert(()=>x,":first-child"),_.attr("class","text"),f&&e.look!=="handDrawn"&&_.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&_.selectAll("path").attr("style",n),_.attr("transform",`translate(${-h}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Qe(e,_),e.intersect=function(T){return qe.polygon(e,p,T)},i}var nK=M(()=>{"use strict";Ft();qt();Xt();jt();o(Fh,"generateCirclePoints");o(rK,"curlyBraceRight")});function _a(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;dL,":first-child").attr("stroke-opacity",0),C.insert(()=>b,":first-child"),C.insert(()=>T,":first-child"),C.attr("class","text"),f&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",n),C.attr("transform",`translate(${h-h/4}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Qe(e,C),e.intersect=function(A){return qe.polygon(e,m,A)},i}var aK=M(()=>{"use strict";Ft();qt();Xt();jt();o(_a,"generateCirclePoints");o(iK,"curlyBraces")});async function sK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=80,l=20,u=Math.max(s,(a.width+(e.padding??0)*2)*1.25,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=Ke.svg(i),m=Ze(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=u,y=h,v=g-f,x=y/4,b=[{x:v,y:0},{x,y:0},{x:0,y:y/2},{x,y},{x:v,y},...k5(-v,-y/2,f,50,270,90)],w=Wt(b),_=p.path(w,m),T=i.insert(()=>_,":first-child");return T.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",n),T.attr("transform",`translate(${-u/2}, ${-h/2})`),Qe(e,T),e.intersect=function(E){return qe.polygon(e,b,E)},i}var oK=M(()=>{"use strict";Ft();qt();Xt();jt();o(sK,"curvedTrapezoid")});async function lK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+e.padding,e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+e.padding,e.height??0),d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=Ke.svg(i),g=fAe(0,0,l,f,u,h),y=dAe(0,h,l,f,u,h),v=m.path(g,Ze(e,{})),x=m.path(y,Ze(e,{fill:"none"}));d=i.insert(()=>x,":first-child"),d=i.insert(()=>v,":first-child"),d.attr("class","basic label-container"),p&&d.attr("style",p)}else{let m=hAe(0,0,l,f,u,h);d=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container").attr("style",Fn(p)).attr("style",n)}return d.attr("label-offset-y",h),d.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Qe(e,d),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+(e.padding??0)/1.5-(a.y-(a.top??0))})`),e.intersect=function(m){let g=qe.rect(e,m),y=g.x-(e.x??0);if(u!=0&&(Math.abs(y)<(e.width??0)/2||Math.abs(y)==(e.width??0)/2&&Math.abs(g.y-(e.y??0))>(e.height??0)/2-h)){let v=h*h*(1-y*y/(u*u));v>0&&(v=Math.sqrt(v)),v=h-v,m.y-(e.y??0)>0&&(v=-v),g.y+=v}return g},i}var hAe,fAe,dAe,cK=M(()=>{"use strict";Ft();qt();Xt();jt();hr();hAe=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createCylinderPathD"),fAe=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createOuterCylinderPathD"),dAe=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(lK,"cylinder")});async function uK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=a.width+e.padding,u=a.height+e.padding,h=u*.2,f=-l/2,d=-u/2-h/2,{cssStyles:p}=e,m=Ke.svg(i),g=Ze(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d+h},{x:-f,y:d+h},{x:-f,y:-d},{x:f,y:-d},{x:f,y:d},{x:-f,y:d},{x:-f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${f+(e.padding??0)/2-(a.x-(a.left??0))}, ${d+h+(e.padding??0)/2-(a.y-(a.top??0))})`),Qe(e,x),e.intersect=function(b){return qe.rect(e,b)},i}var hK=M(()=>{"use strict";Ft();qt();Xt();jt();o(uK,"dividedRectangle")});async function fK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await ot(t,e,lt(e)),u=a.width/2+s+5,h=a.width/2+s,f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=Ke.svg(i),m=Ze(e,{roughness:.2,strokeWidth:2.5}),g=Ze(e,{roughness:.2,strokeWidth:1.5}),y=p.circle(0,0,u*2,m),v=p.circle(0,0,h*2,g);f=i.insert("g",":first-child"),f.attr("class",Fn(e.cssClasses)).attr("style",Fn(d)),f.node()?.appendChild(y),f.node()?.appendChild(v)}else{f=i.insert("g",":first-child");let p=f.insert("circle",":first-child"),m=f.insert("circle");f.attr("class","basic label-container").attr("style",n),p.attr("class","outer-circle").attr("style",n).attr("r",u).attr("cx",0).attr("cy",0),m.attr("class","inner-circle").attr("style",n).attr("r",h).attr("cx",0).attr("cy",0)}return Qe(e,f),e.intersect=function(p){return Y.info("DoubleCircle intersect",e,u,p),qe.circle(e,u,p)},i}var dK=M(()=>{"use strict";ht();Ft();qt();Xt();jt();hr();o(fK,"doublecircle")});function pK(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=et(e);e.label="",e.labelStyle=n;let a=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),s=7,{cssStyles:l}=e,u=Ke.svg(a),{nodeBorder:h}=r,f=Ze(e,{fillStyle:"solid"});e.look!=="handDrawn"&&(f.roughness=0);let d=u.circle(0,0,s*2,f),p=a.insert(()=>d,":first-child");return p.selectAll("path").attr("style",`fill: ${h} !important;`),l&&l.length>0&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",l),i&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",i),Qe(e,p),e.intersect=function(m){return Y.info("filledCircle intersect",e,{radius:s,point:m}),qe.circle(e,s,m)},a}var mK=M(()=>{"use strict";jt();ht();qt();Xt();Ft();o(pK,"filledCircle")});async function gK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=a.width+(e.padding??0),u=l+a.height,h=l+a.height,f=[{x:0,y:-u},{x:h,y:-u},{x:h/2,y:0}],{cssStyles:d}=e,p=Ke.svg(i),m=Ze(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=Wt(f),y=p.path(g,m),v=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`);return d&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),e.width=l,e.height=u,Qe(e,v),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${-u/2+(e.padding??0)/2+(a.y-(a.top??0))})`),e.intersect=function(x){return Y.info("Triangle intersect",e,f,x),qe.polygon(e,f,x)},i}var yK=M(()=>{"use strict";ht();Ft();qt();Xt();jt();Ft();o(gK,"flippedTriangle")});function vK(t,e,{dir:r,config:{state:n,themeVariables:i}}){let{nodeStyles:a}=et(e);e.label="";let s=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),{cssStyles:l}=e,u=Math.max(70,e?.width??0),h=Math.max(10,e?.height??0);r==="LR"&&(u=Math.max(10,e?.width??0),h=Math.max(70,e?.height??0));let f=-1*u/2,d=-1*h/2,p=Ke.svg(s),m=Ze(e,{stroke:i.lineColor,fill:i.lineColor});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=p.rectangle(f,d,u,h,m),y=s.insert(()=>g,":first-child");l&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",l),a&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",a),Qe(e,y);let v=n?.padding??0;return e.width&&e.height&&(e.width+=v/2||0,e.height+=v/2||0),e.intersect=function(x){return qe.rect(e,x)},s}var xK=M(()=>{"use strict";jt();qt();Xt();Ft();o(vK,"forkJoin")});async function bK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let i=80,a=50,{shapeSvg:s,bbox:l}=await ot(t,e,lt(e)),u=Math.max(i,l.width+(e.padding??0)*2,e?.width??0),h=Math.max(a,l.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=Ke.svg(s),m=Ze(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-u/2,y:-h/2},{x:u/2-f,y:-h/2},...k5(-u/2+f,0,f,50,90,270),{x:u/2-f,y:h/2},{x:-u/2,y:h/2}],y=Wt(g),v=p.path(y,m),x=s.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),Qe(e,x),e.intersect=function(b){return Y.info("Pill intersect",e,{radius:f,point:b}),qe.polygon(e,g,b)},s}var wK=M(()=>{"use strict";ht();Ft();qt();Xt();jt();o(bK,"halfRoundedRectangle")});async function TK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=4,l=a.height+e.padding,u=l/s,h=a.width+2*u+e.padding,f=[{x:u,y:0},{x:h-u,y:0},{x:h,y:-l/2},{x:h-u,y:-l},{x:u,y:-l},{x:0,y:-l/2}],d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=Ke.svg(i),g=Ze(e,{}),y=pAe(0,0,h,l,u),v=m.path(y,g);d=i.insert(()=>v,":first-child").attr("transform",`translate(${-h/2}, ${l/2})`),p&&d.attr("style",p)}else d=Aa(i,h,l,f);return n&&d.attr("style",n),e.width=h,e.height=l,Qe(e,d),e.intersect=function(m){return qe.polygon(e,f,m)},i}var pAe,kK=M(()=>{"use strict";Ft();qt();Xt();jt();Su();pAe=o((t,e,r,n,i)=>[`M${t+i},${e}`,`L${t+r-i},${e}`,`L${t+r},${e-n/2}`,`L${t+r-i},${e-n}`,`L${t+i},${e-n}`,`L${t},${e-n/2}`,"Z"].join(" "),"createHexagonPathD");o(TK,"hexagon")});async function EK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.label="",e.labelStyle=r;let{shapeSvg:i}=await ot(t,e,lt(e)),a=Math.max(30,e?.width??0),s=Math.max(30,e?.height??0),{cssStyles:l}=e,u=Ke.svg(i),h=Ze(e,{});e.look!=="handDrawn"&&(h.roughness=0,h.fillStyle="solid");let f=[{x:0,y:0},{x:a,y:0},{x:0,y:s},{x:a,y:s}],d=Wt(f),p=u.path(d,h),m=i.insert(()=>p,":first-child");return m.attr("class","basic label-container"),l&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",l),n&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",n),m.attr("transform",`translate(${-a/2}, ${-s/2})`),Qe(e,m),e.intersect=function(g){return Y.info("Pill intersect",e,{points:f}),qe.polygon(e,f,g)},i}var SK=M(()=>{"use strict";ht();Ft();qt();Xt();jt();o(EK,"hourglass")});async function CK(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=et(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await ot(t,e,"icon-shape default"),p=e.pos==="t",m=l,g=l,{nodeBorder:y}=r,{stylesMap:v}=mc(e),x=-g/2,b=-m/2,w=e.label?8:0,_=Ke.svg(h),T=Ze(e,{stroke:"none",fill:"none"});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let E=_.rectangle(x,b,g,m,T),L=Math.max(g,f.width),C=m+f.height+w,A=_.rectangle(-L/2,-C/2,L,C,{...T,fill:"transparent",stroke:"none"}),I=h.insert(()=>E,":first-child"),D=h.insert(()=>A);if(e.icon){let k=h.append("g");k.html(`${await wo(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let R=k.node().getBBox(),S=R.width,O=R.height,N=R.x,P=R.y;k.attr("transform",`translate(${-S/2-N},${p?f.height/2+w/2-O/2-P:-f.height/2-w/2-O/2-P})`),k.attr("style",`color: ${v.get("stroke")??y};`)}return d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${p?-C/2:C/2-f.height})`),I.attr("transform",`translate(0,${p?f.height/2+w/2:-f.height/2-w/2})`),Qe(e,D),e.intersect=function(k){if(Y.info("iconSquare intersect",e,k),!e.label)return qe.rect(e,k);let R=e.x??0,S=e.y??0,O=e.height??0,N=[];return p?N=[{x:R-f.width/2,y:S-O/2},{x:R+f.width/2,y:S-O/2},{x:R+f.width/2,y:S-O/2+f.height+w},{x:R+g/2,y:S-O/2+f.height+w},{x:R+g/2,y:S+O/2},{x:R-g/2,y:S+O/2},{x:R-g/2,y:S-O/2+f.height+w},{x:R-f.width/2,y:S-O/2+f.height+w}]:N=[{x:R-g/2,y:S-O/2},{x:R+g/2,y:S-O/2},{x:R+g/2,y:S-O/2+m},{x:R+f.width/2,y:S-O/2+m},{x:R+f.width/2/2,y:S+O/2},{x:R-f.width/2,y:S+O/2},{x:R-f.width/2,y:S-O/2+m},{x:R-g/2,y:S-O/2+m}],qe.polygon(e,N,k)},h}var AK=M(()=>{"use strict";jt();ht();Kc();qt();Xt();Ft();o(CK,"icon")});async function _K(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=et(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await ot(t,e,"icon-shape default"),p=20,m=e.label?8:0,g=e.pos==="t",{nodeBorder:y,mainBkg:v}=r,{stylesMap:x}=mc(e),b=Ke.svg(h),w=Ze(e,{});e.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let _=x.get("fill");w.stroke=_??v;let T=h.append("g");e.icon&&T.html(`${await wo(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let E=T.node().getBBox(),L=E.width,C=E.height,A=E.x,I=E.y,D=Math.max(L,C)*Math.SQRT2+p*2,k=b.circle(0,0,D,w),R=Math.max(D,f.width),S=D+f.height+m,O=b.rectangle(-R/2,-S/2,R,S,{...w,fill:"transparent",stroke:"none"}),N=h.insert(()=>k,":first-child"),P=h.insert(()=>O);return T.attr("transform",`translate(${-L/2-A},${g?f.height/2+m/2-C/2-I:-f.height/2-m/2-C/2-I})`),T.attr("style",`color: ${x.get("stroke")??y};`),d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${g?-S/2:S/2-f.height})`),N.attr("transform",`translate(0,${g?f.height/2+m/2:-f.height/2-m/2})`),Qe(e,P),e.intersect=function(F){return Y.info("iconSquare intersect",e,F),qe.rect(e,F)},h}var LK=M(()=>{"use strict";jt();ht();Kc();qt();Xt();Ft();o(_K,"iconCircle")});var La,zh=M(()=>{"use strict";La=o((t,e,r,n,i)=>["M",t+i,e,"H",t+r-i,"A",i,i,0,0,1,t+r,e+i,"V",e+n-i,"A",i,i,0,0,1,t+r-i,e+n,"H",t+i,"A",i,i,0,0,1,t,e+n-i,"V",e+i,"A",i,i,0,0,1,t+i,e,"Z"].join(" "),"createRoundedRectPathD")});async function DK(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=et(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await ot(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=mc(e),w=-y/2,_=-g/2,T=e.label?8:0,E=Ke.svg(h),L=Ze(e,{});e.look!=="handDrawn"&&(L.roughness=0,L.fillStyle="solid");let C=b.get("fill");L.stroke=C??x;let A=E.path(La(w,_,y,g,5),L),I=Math.max(y,f.width),D=g+f.height+T,k=E.rectangle(-I/2,-D/2,I,D,{...L,fill:"transparent",stroke:"none"}),R=h.insert(()=>A,":first-child").attr("class","icon-shape2"),S=h.insert(()=>k);if(e.icon){let O=h.append("g");O.html(`${await wo(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let N=O.node().getBBox(),P=N.width,F=N.height,B=N.x,$=N.y;O.attr("transform",`translate(${-P/2-B},${m?f.height/2+T/2-F/2-$:-f.height/2-T/2-F/2-$})`),O.attr("style",`color: ${b.get("stroke")??v};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-D/2:D/2-f.height})`),R.attr("transform",`translate(0,${m?f.height/2+T/2:-f.height/2-T/2})`),Qe(e,S),e.intersect=function(O){if(Y.info("iconSquare intersect",e,O),!e.label)return qe.rect(e,O);let N=e.x??0,P=e.y??0,F=e.height??0,B=[];return m?B=[{x:N-f.width/2,y:P-F/2},{x:N+f.width/2,y:P-F/2},{x:N+f.width/2,y:P-F/2+f.height+T},{x:N+y/2,y:P-F/2+f.height+T},{x:N+y/2,y:P+F/2},{x:N-y/2,y:P+F/2},{x:N-y/2,y:P-F/2+f.height+T},{x:N-f.width/2,y:P-F/2+f.height+T}]:B=[{x:N-y/2,y:P-F/2},{x:N+y/2,y:P-F/2},{x:N+y/2,y:P-F/2+g},{x:N+f.width/2,y:P-F/2+g},{x:N+f.width/2/2,y:P+F/2},{x:N-f.width/2,y:P+F/2},{x:N-f.width/2,y:P-F/2+g},{x:N-y/2,y:P-F/2+g}],qe.polygon(e,B,O)},h}var NK=M(()=>{"use strict";jt();ht();Kc();qt();Xt();zh();Ft();o(DK,"iconRounded")});async function RK(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=et(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await ot(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=mc(e),w=-y/2,_=-g/2,T=e.label?8:0,E=Ke.svg(h),L=Ze(e,{});e.look!=="handDrawn"&&(L.roughness=0,L.fillStyle="solid");let C=b.get("fill");L.stroke=C??x;let A=E.path(La(w,_,y,g,.1),L),I=Math.max(y,f.width),D=g+f.height+T,k=E.rectangle(-I/2,-D/2,I,D,{...L,fill:"transparent",stroke:"none"}),R=h.insert(()=>A,":first-child"),S=h.insert(()=>k);if(e.icon){let O=h.append("g");O.html(`${await wo(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let N=O.node().getBBox(),P=N.width,F=N.height,B=N.x,$=N.y;O.attr("transform",`translate(${-P/2-B},${m?f.height/2+T/2-F/2-$:-f.height/2-T/2-F/2-$})`),O.attr("style",`color: ${b.get("stroke")??v};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-D/2:D/2-f.height})`),R.attr("transform",`translate(0,${m?f.height/2+T/2:-f.height/2-T/2})`),Qe(e,S),e.intersect=function(O){if(Y.info("iconSquare intersect",e,O),!e.label)return qe.rect(e,O);let N=e.x??0,P=e.y??0,F=e.height??0,B=[];return m?B=[{x:N-f.width/2,y:P-F/2},{x:N+f.width/2,y:P-F/2},{x:N+f.width/2,y:P-F/2+f.height+T},{x:N+y/2,y:P-F/2+f.height+T},{x:N+y/2,y:P+F/2},{x:N-y/2,y:P+F/2},{x:N-y/2,y:P-F/2+f.height+T},{x:N-f.width/2,y:P-F/2+f.height+T}]:B=[{x:N-y/2,y:P-F/2},{x:N+y/2,y:P-F/2},{x:N+y/2,y:P-F/2+g},{x:N+f.width/2,y:P-F/2+g},{x:N+f.width/2/2,y:P+F/2},{x:N-f.width/2,y:P+F/2},{x:N-f.width/2,y:P-F/2+g},{x:N-y/2,y:P-F/2+g}],qe.polygon(e,B,O)},h}var MK=M(()=>{"use strict";jt();ht();Kc();qt();zh();Xt();Ft();o(RK,"iconSquare")});async function IK(t,e,{config:{flowchart:r}}){let n=new Image;n.src=e?.img??"",await n.decode();let i=Number(n.naturalWidth.toString().replace("px","")),a=Number(n.naturalHeight.toString().replace("px",""));e.imageAspectRatio=i/a;let{labelStyles:s}=et(e);e.labelStyle=s;let l=r?.wrappingWidth;e.defaultWidth=r?.wrappingWidth;let u=Math.max(e.label?l??0:0,e?.assetWidth??i),h=e.constraint==="on"&&e?.assetHeight?e.assetHeight*e.imageAspectRatio:u,f=e.constraint==="on"?h/e.imageAspectRatio:e?.assetHeight??a;e.width=Math.max(h,l??0);let{shapeSvg:d,bbox:p,label:m}=await ot(t,e,"image-shape default"),g=e.pos==="t",y=-h/2,v=-f/2,x=e.label?8:0,b=Ke.svg(d),w=Ze(e,{});e.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let _=b.rectangle(y,v,h,f,w),T=Math.max(h,p.width),E=f+p.height+x,L=b.rectangle(-T/2,-E/2,T,E,{...w,fill:"none",stroke:"none"}),C=d.insert(()=>_,":first-child"),A=d.insert(()=>L);if(e.img){let I=d.append("image");I.attr("href",e.img),I.attr("width",h),I.attr("height",f),I.attr("preserveAspectRatio","none"),I.attr("transform",`translate(${-h/2},${g?E/2-f:-E/2})`)}return m.attr("transform",`translate(${-p.width/2-(p.x-(p.left??0))},${g?-f/2-p.height/2-x/2:f/2-p.height/2+x/2})`),C.attr("transform",`translate(0,${g?p.height/2+x/2:-p.height/2-x/2})`),Qe(e,A),e.intersect=function(I){if(Y.info("iconSquare intersect",e,I),!e.label)return qe.rect(e,I);let D=e.x??0,k=e.y??0,R=e.height??0,S=[];return g?S=[{x:D-p.width/2,y:k-R/2},{x:D+p.width/2,y:k-R/2},{x:D+p.width/2,y:k-R/2+p.height+x},{x:D+h/2,y:k-R/2+p.height+x},{x:D+h/2,y:k+R/2},{x:D-h/2,y:k+R/2},{x:D-h/2,y:k-R/2+p.height+x},{x:D-p.width/2,y:k-R/2+p.height+x}]:S=[{x:D-h/2,y:k-R/2},{x:D+h/2,y:k-R/2},{x:D+h/2,y:k-R/2+f},{x:D+p.width/2,y:k-R/2+f},{x:D+p.width/2/2,y:k+R/2},{x:D-p.width/2,y:k+R/2},{x:D-p.width/2,y:k-R/2+f},{x:D-h/2,y:k-R/2+f}],qe.polygon(e,S,I)},d}var OK=M(()=>{"use strict";jt();ht();qt();Xt();Ft();o(IK,"imageSquare")});async function PK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=[{x:0,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:-3*l/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Ke.svg(i),p=Ze(e,{}),m=Wt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Aa(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Qe(e,h),e.intersect=function(d){return qe.polygon(e,u,d)},i}var BK=M(()=>{"use strict";Ft();qt();Xt();jt();Su();o(PK,"inv_trapezoid")});async function Cd(t,e,r){let{labelStyles:n,nodeStyles:i}=et(e);e.labelStyle=n;let{shapeSvg:a,bbox:s}=await ot(t,e,lt(e)),l=Math.max(s.width+r.labelPaddingX*2,e?.width||0),u=Math.max(s.height+r.labelPaddingY*2,e?.height||0),h=-l/2,f=-u/2,d,{rx:p,ry:m}=e,{cssStyles:g}=e;if(r?.rx&&r.ry&&(p=r.rx,m=r.ry),e.look==="handDrawn"){let y=Ke.svg(a),v=Ze(e,{}),x=p||m?y.path(La(h,f,l,u,p||0),v):y.rectangle(h,f,l,u,v);d=a.insert(()=>x,":first-child"),d.attr("class","basic label-container").attr("style",Fn(g))}else d=a.insert("rect",":first-child"),d.attr("class","basic label-container").attr("style",i).attr("rx",Fn(p)).attr("ry",Fn(m)).attr("x",h).attr("y",f).attr("width",l).attr("height",u);return Qe(e,d),e.intersect=function(y){return qe.rect(e,y)},a}var vv=M(()=>{"use strict";Ft();qt();zh();Xt();jt();hr();o(Cd,"drawRect")});async function FK(t,e){let{shapeSvg:r,bbox:n,label:i}=await ot(t,e,"label"),a=r.insert("rect",":first-child");return a.attr("width",.1).attr("height",.1),r.attr("class","label edgeLabel"),i.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),Qe(e,a),e.intersect=function(u){return qe.rect(e,u)},r}var zK=M(()=>{"use strict";vv();Ft();qt();o(FK,"labelRect")});async function GK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:0,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:-(3*l)/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Ke.svg(i),p=Ze(e,{}),m=Wt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Aa(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Qe(e,h),e.intersect=function(d){return qe.polygon(e,u,d)},i}var $K=M(()=>{"use strict";Ft();qt();Xt();jt();Su();o(GK,"lean_left")});async function VK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:-3*l/6,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Ke.svg(i),p=Ze(e,{}),m=Wt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Aa(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Qe(e,h),e.intersect=function(d){return qe.polygon(e,u,d)},i}var UK=M(()=>{"use strict";Ft();qt();Xt();jt();Su();o(VK,"lean_right")});function HK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.label="",e.labelStyle=r;let i=t.insert("g").attr("class",lt(e)).attr("id",e.domId??e.id),{cssStyles:a}=e,s=Math.max(35,e?.width??0),l=Math.max(35,e?.height??0),u=7,h=[{x:s,y:0},{x:0,y:l+u/2},{x:s-2*u,y:l+u/2},{x:0,y:2*l},{x:s,y:l-u/2},{x:2*u,y:l-u/2}],f=Ke.svg(i),d=Ze(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=Wt(h),m=f.path(p,d),g=i.insert(()=>m,":first-child");return a&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",a),n&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",n),g.attr("transform",`translate(-${s/2},${-l})`),Qe(e,g),e.intersect=function(y){return Y.info("lightningBolt intersect",e,y),qe.polygon(e,h,y)},i}var WK=M(()=>{"use strict";ht();Ft();Xt();jt();qt();Ft();o(HK,"lightningBolt")});async function YK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+(e.padding??0),e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+(e.padding??0),e.height??0),d=f*.1,p,{cssStyles:m}=e;if(e.look==="handDrawn"){let g=Ke.svg(i),y=gAe(0,0,l,f,u,h,d),v=yAe(0,h,l,f,u,h),x=Ze(e,{}),b=g.path(y,x),w=g.path(v,x);i.insert(()=>w,":first-child").attr("class","line"),p=i.insert(()=>b,":first-child"),p.attr("class","basic label-container"),m&&p.attr("style",m)}else{let g=mAe(0,0,l,f,u,h,d);p=i.insert("path",":first-child").attr("d",g).attr("class","basic label-container").attr("style",Fn(m)).attr("style",n)}return p.attr("label-offset-y",h),p.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Qe(e,p),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),e.intersect=function(g){let y=qe.rect(e,g),v=y.x-(e.x??0);if(u!=0&&(Math.abs(v)<(e.width??0)/2||Math.abs(v)==(e.width??0)/2&&Math.abs(y.y-(e.y??0))>(e.height??0)/2-h)){let x=h*h*(1-v*v/(u*u));x>0&&(x=Math.sqrt(x)),x=h-x,g.y-(e.y??0)>0&&(x=-x),y.y+=x}return y},i}var mAe,gAe,yAe,qK=M(()=>{"use strict";Ft();qt();Xt();jt();hr();mAe=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createCylinderPathD"),gAe=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createOuterCylinderPathD"),yAe=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(YK,"linedCylinder")});async function XK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,{cssStyles:d}=e,p=Ke.svg(i),m=Ze(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-l/2-l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:f/2},...zo(-l/2-l/2*.1,f/2,l/2+l/2*.1,f/2,h,.8),{x:l/2+l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:-f/2},{x:-l/2,y:-f/2},{x:-l/2,y:f/2*1.1},{x:-l/2,y:-f/2}],y=p.polygon(g.map(x=>[x.x,x.y]),m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)+l/2*.1/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),Qe(e,v),e.intersect=function(x){return qe.polygon(e,g,x)},i}var jK=M(()=>{"use strict";Ft();qt();jt();Xt();o(XK,"linedWaveEdgedRect")});async function KK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=Ke.svg(i),g=Ze(e,{}),y=[{x:f-h,y:d+h},{x:f-h,y:d+u+h},{x:f+l-h,y:d+u+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d+u-h},{x:f+l+h,y:d+u-h},{x:f+l+h,y:d-h},{x:f+h,y:d-h},{x:f+h,y:d},{x:f,y:d},{x:f,y:d+h}],v=[{x:f,y:d+h},{x:f+l-h,y:d+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d},{x:f,y:d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=Wt(y),b=m.path(x,g),w=Wt(v),_=m.path(w,{...g,fill:"none"}),T=i.insert(()=>_,":first-child");return T.insert(()=>b,":first-child"),T.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)-h-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),Qe(e,T),e.intersect=function(E){return qe.polygon(e,y,E)},i}var QK=M(()=>{"use strict";Ft();Xt();jt();qt();o(KK,"multiRect")});async function ZK(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,d=-l/2,p=-f/2,m=5,{cssStyles:g}=e,y=zo(d-m,p+f+m,d+l-m,p+f+m,h,.8),v=y?.[y.length-1],x=[{x:d-m,y:p+m},{x:d-m,y:p+f+m},...y,{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:v.y-2*m},{x:d+l+m,y:v.y-2*m},{x:d+l+m,y:p-m},{x:d+m,y:p-m},{x:d+m,y:p},{x:d,y:p},{x:d,y:p+m}],b=[{x:d,y:p+m},{x:d+l-m,y:p+m},{x:d+l-m,y:v.y-m},{x:d+l,y:v.y-m},{x:d+l,y:p},{x:d,y:p}],w=Ke.svg(i),_=Ze(e,{});e.look!=="handDrawn"&&(_.roughness=0,_.fillStyle="solid");let T=Wt(x),E=w.path(T,_),L=Wt(b),C=w.path(L,_),A=i.insert(()=>E,":first-child");return A.insert(()=>C),A.attr("class","basic label-container"),g&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",g),n&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",n),A.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-(a.width/2)-m-(a.x-(a.left??0))}, ${-(a.height/2)+m-h/2-(a.y-(a.top??0))})`),Qe(e,A),e.intersect=function(I){return qe.polygon(e,x,I)},i}var JK=M(()=>{"use strict";Ft();qt();jt();Xt();o(ZK,"multiWaveEdgedRectangle")});async function eQ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=et(e);e.labelStyle=n,e.useHtmlLabels||Sr().flowchart?.htmlLabels!==!1||(e.centerLabel=!0);let{shapeSvg:s,bbox:l}=await ot(t,e,lt(e)),u=Math.max(l.width+(e.padding??0)*2,e?.width??0),h=Math.max(l.height+(e.padding??0)*2,e?.height??0),f=-u/2,d=-h/2,{cssStyles:p}=e,m=Ke.svg(s),g=Ze(e,{fill:r.noteBkgColor,stroke:r.noteBorderColor});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=m.rectangle(f,d,u,h,g),v=s.insert(()=>y,":first-child");return v.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",p),i&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",i),Qe(e,v),e.intersect=function(x){return qe.rect(e,x)},s}var tQ=M(()=>{"use strict";jt();qt();Xt();Ft();Ua();o(eQ,"note")});async function rQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=a.width+e.padding,l=a.height+e.padding,u=s+l,h=[{x:u/2,y:0},{x:u,y:-u/2},{x:u/2,y:-u},{x:0,y:-u/2}],f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=Ke.svg(i),m=Ze(e,{}),g=vAe(0,0,u),y=p.path(g,m);f=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`),d&&f.attr("style",d)}else f=Aa(i,u,u,h);return n&&f.attr("style",n),Qe(e,f),e.intersect=function(p){return Y.debug(`APA12 Intersect called SPLIT +point:`,p,` +node: +`,e,` +res:`,qe.polygon(e,h,p)),qe.polygon(e,h,p)},i}var vAe,nQ=M(()=>{"use strict";ht();Ft();qt();Xt();jt();Su();vAe=o((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");o(rQ,"question")});async function iQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+(e.padding??0),e?.width??0),u=Math.max(a.height+(e.padding??0),e?.height??0),h=-l/2,f=-u/2,d=f/2,p=[{x:h+d,y:f},{x:h,y:0},{x:h+d,y:-f},{x:-h,y:-f},{x:-h,y:f}],{cssStyles:m}=e,g=Ke.svg(i),y=Ze(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=Wt(p),x=g.path(v,y),b=i.insert(()=>x,":first-child");return b.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),b.attr("transform",`translate(${-d/2},0)`),s.attr("transform",`translate(${-d/2-a.width/2-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Qe(e,b),e.intersect=function(w){return qe.polygon(e,p,w)},i}var aQ=M(()=>{"use strict";Ft();qt();Xt();jt();o(iQ,"rect_left_inv_arrow")});function xAe(t,e){e&&t.attr("style",e)}async function bAe(t){let e=ze(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),n=t.label;t.label&&pi(t.label)&&(n=await hh(t.label.replace(je.lineBreakRegex,` +`),de()));let i=t.isNode?"nodeLabel":"edgeLabel";return r.html('"+n+""),xAe(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()}var wAe,gc,I5=M(()=>{"use strict";mr();ht();Vt();fr();hr();o(xAe,"applyStyle");o(bAe,"addHtmlLabel");wAe=o(async(t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),xr(de().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),Y.info("vertexText"+i);let a={isNode:n,label:Ca(i).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:e&&e.replace("fill:","color:")};return await bAe(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",e.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|/gi):Array.isArray(i)?s=i:s=[];for(let l of s){let u=document.createElementNS("http://www.w3.org/2000/svg","tspan");u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),u.setAttribute("dy","1em"),u.setAttribute("x","0"),r?u.setAttribute("class","title-row"):u.setAttribute("class","row"),u.textContent=l.trim(),a.appendChild(u)}return a}},"createLabel"),gc=wAe});async function sQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let i;e.cssClasses?i="node "+e.cssClasses:i="node default";let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=a.insert("g"),l=a.insert("g").attr("class","label").attr("style",n),u=e.description,h=e.label,f=l.node().appendChild(await gc(h,e.labelStyle,!0,!0)),d={width:0,height:0};if(xr(de()?.flowchart?.htmlLabels)){let C=f.children[0],A=ze(f);d=C.getBoundingClientRect(),A.attr("width",d.width),A.attr("height",d.height)}Y.info("Text 2",u);let p=u||[],m=f.getBBox(),g=l.node().appendChild(await gc(p.join?p.join("
    "):p,e.labelStyle,!0,!0)),y=g.children[0],v=ze(g);d=y.getBoundingClientRect(),v.attr("width",d.width),v.attr("height",d.height);let x=(e.padding||0)/2;ze(g).attr("transform","translate( "+(d.width>m.width?0:(m.width-d.width)/2)+", "+(m.height+x+5)+")"),ze(f).attr("transform","translate( "+(d.width(Y.debug("Rough node insert CXC",I),D),":first-child"),E=a.insert(()=>(Y.debug("Rough node insert CXC",I),I),":first-child")}else E=s.insert("rect",":first-child"),L=s.insert("line"),E.attr("class","outer title-state").attr("style",n).attr("x",-d.width/2-x).attr("y",-d.height/2-x).attr("width",d.width+(e.padding||0)).attr("height",d.height+(e.padding||0)),L.attr("class","divider").attr("x1",-d.width/2-x).attr("x2",d.width/2+x).attr("y1",-d.height/2-x+m.height+x).attr("y2",-d.height/2-x+m.height+x);return Qe(e,E),e.intersect=function(C){return qe.rect(e,C)},a}var oQ=M(()=>{"use strict";mr();fr();Ft();I5();qt();Xt();jt();Vt();zh();ht();o(sQ,"rectWithTitle")});async function lQ(t,e){let r={rx:5,ry:5,classes:"",labelPaddingX:(e?.padding||0)*1,labelPaddingY:(e?.padding||0)*1};return Cd(t,e,r)}var cQ=M(()=>{"use strict";vv();o(lQ,"roundedRect")});async function uQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=e?.padding??0,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=-a.width/2-l,d=-a.height/2-l,{cssStyles:p}=e,m=Ke.svg(i),g=Ze(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d},{x:f+u+8,y:d},{x:f+u+8,y:d+h},{x:f-8,y:d+h},{x:f-8,y:d},{x:f,y:d},{x:f,y:d+h}],v=m.polygon(y.map(b=>[b.x,b.y]),g),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container").attr("style",Fn(p)),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),p&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${-u/2+4+(e.padding??0)-(a.x-(a.left??0))},${-h/2+(e.padding??0)-(a.y-(a.top??0))})`),Qe(e,x),e.intersect=function(b){return qe.rect(e,b)},i}var hQ=M(()=>{"use strict";Ft();qt();Xt();jt();hr();o(uQ,"shadedProcess")});async function fQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=-l/2,f=-u/2,{cssStyles:d}=e,p=Ke.svg(i),m=Ze(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:h,y:f},{x:h,y:f+u},{x:h+l,y:f+u},{x:h+l,y:f-u/2}],y=Wt(g),v=p.path(y,m),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),x.attr("transform",`translate(0, ${u/4})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))}, ${-u/4+(e.padding??0)-(a.y-(a.top??0))})`),Qe(e,x),e.intersect=function(b){return qe.polygon(e,g,b)},i}var dQ=M(()=>{"use strict";Ft();qt();Xt();jt();o(fQ,"slopedRect")});async function pQ(t,e){let r={rx:0,ry:0,classes:"",labelPaddingX:(e?.padding||0)*2,labelPaddingY:(e?.padding||0)*1};return Cd(t,e,r)}var mQ=M(()=>{"use strict";vv();o(pQ,"squareRect")});async function gQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=a.height+e.padding,l=a.width+s/4+e.padding,u,{cssStyles:h}=e;if(e.look==="handDrawn"){let f=Ke.svg(i),d=Ze(e,{}),p=La(-l/2,-s/2,l,s,s/2),m=f.path(p,d);u=i.insert(()=>m,":first-child"),u.attr("class","basic label-container").attr("style",Fn(h))}else u=i.insert("rect",":first-child"),u.attr("class","basic label-container").attr("style",n).attr("rx",s/2).attr("ry",s/2).attr("x",-l/2).attr("y",-s/2).attr("width",l).attr("height",s);return Qe(e,u),e.intersect=function(f){return qe.rect(e,f)},i}var yQ=M(()=>{"use strict";Ft();qt();Xt();jt();zh();hr();o(gQ,"stadium")});async function vQ(t,e){return Cd(t,e,{rx:5,ry:5,classes:"flowchart-node"})}var xQ=M(()=>{"use strict";vv();o(vQ,"state")});function bQ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=et(e);e.labelStyle=n;let{cssStyles:a}=e,{lineColor:s,stateBorder:l,nodeBorder:u}=r,h=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),f=Ke.svg(h),d=Ze(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=f.circle(0,0,14,{...d,stroke:s,strokeWidth:2}),m=l??u,g=f.circle(0,0,5,{...d,fill:m,stroke:m,strokeWidth:2,fillStyle:"solid"}),y=h.insert(()=>p,":first-child");return y.insert(()=>g),a&&y.selectAll("path").attr("style",a),i&&y.selectAll("path").attr("style",i),Qe(e,y),e.intersect=function(v){return qe.circle(e,7,v)},h}var wQ=M(()=>{"use strict";jt();qt();Xt();Ft();o(bQ,"stateEnd")});function TQ(t,e,{config:{themeVariables:r}}){let{lineColor:n}=r,i=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),a;if(e.look==="handDrawn"){let l=Ke.svg(i).circle(0,0,14,Cj(n));a=i.insert(()=>l),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14)}else a=i.insert("circle",":first-child"),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14);return Qe(e,a),e.intersect=function(s){return qe.circle(e,7,s)},i}var kQ=M(()=>{"use strict";jt();qt();Xt();Ft();o(TQ,"stateStart")});async function EQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=(e?.padding||0)/2,l=a.width+e.padding,u=a.height+e.padding,h=-a.width/2-s,f=-a.height/2-s,d=[{x:0,y:0},{x:l,y:0},{x:l,y:-u},{x:0,y:-u},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-u},{x:-8,y:-u},{x:-8,y:0}];if(e.look==="handDrawn"){let p=Ke.svg(i),m=Ze(e,{}),g=p.rectangle(h-8,f,l+16,u,m),y=p.line(h,f,h,f+u,m),v=p.line(h+l,f,h+l,f+u,m);i.insert(()=>y,":first-child"),i.insert(()=>v,":first-child");let x=i.insert(()=>g,":first-child"),{cssStyles:b}=e;x.attr("class","basic label-container").attr("style",Fn(b)),Qe(e,x)}else{let p=Aa(i,l,u,d);n&&p.attr("style",n),Qe(e,p)}return e.intersect=function(p){return qe.polygon(e,d,p)},i}var SQ=M(()=>{"use strict";Ft();qt();Xt();jt();Su();hr();o(EQ,"subroutine")});async function CQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=-s/2,h=-l/2,f=.2*l,d=.2*l,{cssStyles:p}=e,m=Ke.svg(i),g=Ze(e,{}),y=[{x:u-f/2,y:h},{x:u+s+f/2,y:h},{x:u+s+f/2,y:h+l},{x:u-f/2,y:h+l}],v=[{x:u+s-f/2,y:h+l},{x:u+s+f/2,y:h+l},{x:u+s+f/2,y:h+l-d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=Wt(y),b=m.path(x,g),w=Wt(v),_=m.path(w,{...g,fillStyle:"solid"}),T=i.insert(()=>_,":first-child");return T.insert(()=>b,":first-child"),T.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",n),Qe(e,T),e.intersect=function(E){return qe.polygon(e,y,E)},i}var AQ=M(()=>{"use strict";Ft();Xt();jt();qt();o(CQ,"taggedRect")});async function _Q(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=.2*l,d=.2*u,p=u+h,{cssStyles:m}=e,g=Ke.svg(i),y=Ze(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=[{x:-l/2-l/2*.1,y:p/2},...zo(-l/2-l/2*.1,p/2,l/2+l/2*.1,p/2,h,.8),{x:l/2+l/2*.1,y:-p/2},{x:-l/2-l/2*.1,y:-p/2}],x=-l/2+l/2*.1,b=-p/2-d*.4,w=[{x:x+l-f,y:(b+u)*1.4},{x:x+l,y:b+u-d},{x:x+l,y:(b+u)*.9},...zo(x+l,(b+u)*1.3,x+l-f,(b+u)*1.5,-u*.03,.5)],_=Wt(v),T=g.path(_,y),E=Wt(w),L=g.path(E,{...y,fillStyle:"solid"}),C=i.insert(()=>L,":first-child");return C.insert(()=>T,":first-child"),C.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&C.selectAll("path").attr("style",n),C.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),Qe(e,C),e.intersect=function(A){return qe.polygon(e,v,A)},i}var LQ=M(()=>{"use strict";Ft();qt();jt();Xt();o(_Q,"taggedWaveEdgedRectangle")});async function DQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=Math.max(a.width+e.padding,e?.width||0),l=Math.max(a.height+e.padding,e?.height||0),u=-s/2,h=-l/2,f=i.insert("rect",":first-child");return f.attr("class","text").attr("style",n).attr("rx",0).attr("ry",0).attr("x",u).attr("y",h).attr("width",s).attr("height",l),Qe(e,f),e.intersect=function(d){return qe.rect(e,d)},i}var NQ=M(()=>{"use strict";Ft();qt();Xt();o(DQ,"text")});async function RQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s,halfPadding:l}=await ot(t,e,lt(e)),u=e.look==="neo"?l*2:l,h=a.height+u,f=h/2,d=f/(2.5+h/50),p=a.width+d+u,{cssStyles:m}=e,g;if(e.look==="handDrawn"){let y=Ke.svg(i),v=kAe(0,0,p,h,d,f),x=EAe(0,0,p,h,d,f),b=y.path(v,Ze(e,{})),w=y.path(x,Ze(e,{fill:"none"}));g=i.insert(()=>w,":first-child"),g=i.insert(()=>b,":first-child"),g.attr("class","basic label-container"),m&&g.attr("style",m)}else{let y=TAe(0,0,p,h,d,f);g=i.insert("path",":first-child").attr("d",y).attr("class","basic label-container").attr("style",Fn(m)).attr("style",n),g.attr("class","basic label-container"),m&&g.selectAll("path").attr("style",m),n&&g.selectAll("path").attr("style",n)}return g.attr("label-offset-x",d),g.attr("transform",`translate(${-p/2}, ${h/2} )`),s.attr("transform",`translate(${-(a.width/2)-d-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Qe(e,g),e.intersect=function(y){let v=qe.rect(e,y),x=v.y-(e.y??0);if(f!=0&&(Math.abs(x)<(e.height??0)/2||Math.abs(x)==(e.height??0)/2&&Math.abs(v.x-(e.x??0))>(e.width??0)/2-d)){let b=d*d*(1-x*x/(f*f));b!=0&&(b=Math.sqrt(Math.abs(b))),b=d-b,y.x-(e.x??0)>0&&(b=-b),v.x+=b}return v},i}var TAe,kAe,EAe,MQ=M(()=>{"use strict";Ft();Xt();jt();qt();hr();TAe=o((t,e,r,n,i,a)=>`M${t},${e} + a${i},${a} 0,0,1 0,${-n} + l${r},0 + a${i},${a} 0,0,1 0,${n} + M${r},${-n} + a${i},${a} 0,0,0 0,${n} + l${-r},0`,"createCylinderPathD"),kAe=o((t,e,r,n,i,a)=>[`M${t},${e}`,`M${t+r},${e}`,`a${i},${a} 0,0,0 0,${-n}`,`l${-r},0`,`a${i},${a} 0,0,0 0,${n}`,`l${r},0`].join(" "),"createOuterCylinderPathD"),EAe=o((t,e,r,n,i,a)=>[`M${t+r/2},${-n/2}`,`a${i},${a} 0,0,0 0,${n}`].join(" "),"createInnerCylinderPathD");o(RQ,"tiltedCylinder")});async function IQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=a.width+e.padding,l=a.height+e.padding,u=[{x:-3*l/6,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=Ke.svg(i),p=Ze(e,{}),m=Wt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Aa(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Qe(e,h),e.intersect=function(d){return qe.polygon(e,u,d)},i}var OQ=M(()=>{"use strict";Ft();qt();Xt();jt();Su();o(IQ,"trapezoid")});async function PQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=60,l=20,u=Math.max(s,a.width+(e.padding??0)*2,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),{cssStyles:f}=e,d=Ke.svg(i),p=Ze(e,{});e.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let m=[{x:-u/2*.8,y:-h/2},{x:u/2*.8,y:-h/2},{x:u/2,y:-h/2*.6},{x:u/2,y:h/2},{x:-u/2,y:h/2},{x:-u/2,y:-h/2*.6}],g=Wt(m),y=d.path(g,p),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",f),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),Qe(e,v),e.intersect=function(x){return qe.polygon(e,m,x)},i}var BQ=M(()=>{"use strict";Ft();qt();Xt();jt();o(PQ,"trapezoidalPentagon")});async function FQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=xr(de().flowchart?.htmlLabels),u=a.width+(e.padding??0),h=u+a.height,f=u+a.height,d=[{x:0,y:0},{x:f,y:0},{x:f/2,y:-h}],{cssStyles:p}=e,m=Ke.svg(i),g=Ze(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=Wt(d),v=m.path(y,g),x=i.insert(()=>v,":first-child").attr("transform",`translate(${-h/2}, ${h/2})`);return p&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",p),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),e.width=u,e.height=h,Qe(e,x),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${h/2-(a.height+(e.padding??0)/(l?2:1)-(a.y-(a.top??0)))})`),e.intersect=function(b){return Y.info("Triangle intersect",e,d,b),qe.polygon(e,d,b)},i}var zQ=M(()=>{"use strict";ht();Ft();qt();Xt();jt();Ft();fr();Vt();o(FQ,"triangle")});async function GQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/8,f=u+h,{cssStyles:d}=e,m=70-l,g=m>0?m/2:0,y=Ke.svg(i),v=Ze(e,{});e.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let x=[{x:-l/2-g,y:f/2},...zo(-l/2-g,f/2,l/2+g,f/2,h,.8),{x:l/2+g,y:-f/2},{x:-l/2-g,y:-f/2}],b=Wt(x),w=y.path(b,v),_=i.insert(()=>w,":first-child");return _.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&_.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&_.selectAll("path").attr("style",n),_.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h-(a.y-(a.top??0))})`),Qe(e,_),e.intersect=function(T){return qe.polygon(e,x,T)},i}var $Q=M(()=>{"use strict";Ft();qt();jt();Xt();o(GQ,"waveEdgedRectangle")});async function VQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await ot(t,e,lt(e)),s=100,l=50,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=u/h,d=u,p=h;d>p*f?p=d/f:d=p*f,d=Math.max(d,s),p=Math.max(p,l);let m=Math.min(p*.2,p/4),g=p+m*2,{cssStyles:y}=e,v=Ke.svg(i),x=Ze(e,{});e.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let b=[{x:-d/2,y:g/2},...zo(-d/2,g/2,d/2,g/2,m,1),{x:d/2,y:-g/2},...zo(d/2,-g/2,-d/2,-g/2,m,-1)],w=Wt(b),_=v.path(w,x),T=i.insert(()=>_,":first-child");return T.attr("class","basic label-container"),y&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",y),n&&e.look!=="handDrawn"&&T.selectAll("path").attr("style",n),Qe(e,T),e.intersect=function(E){return qe.polygon(e,b,E)},i}var UQ=M(()=>{"use strict";Ft();qt();Xt();jt();o(VQ,"waveRectangle")});async function HQ(t,e){let{labelStyles:r,nodeStyles:n}=et(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await ot(t,e,lt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=Ke.svg(i),g=Ze(e,{}),y=[{x:f-h,y:d-h},{x:f-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d-h}],v=`M${f-h},${d-h} L${f+l},${d-h} L${f+l},${d+u} L${f-h},${d+u} L${f-h},${d-h} + M${f-h},${d} L${f+l},${d} + M${f},${d-h} L${f},${d+u}`;e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=m.path(v,g),b=i.insert(()=>x,":first-child");return b.attr("transform",`translate(${h/2}, ${h/2})`),b.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)+h/2-(a.x-(a.left??0))}, ${-(a.height/2)+h/2-(a.y-(a.top??0))})`),Qe(e,b),e.intersect=function(w){return qe.polygon(e,y,w)},i}var WQ=M(()=>{"use strict";Ft();Xt();jt();qt();o(HQ,"windowPane")});async function YQ(t,e,r,n,i=r.class.padding??12){let a=n?0:3,s=t.insert("g").attr("class",lt(e)).attr("id",e.domId||e.id),l=null,u=null,h=null,f=null,d=0,p=0,m=0;if(l=s.insert("g").attr("class","annotation-group text"),e.annotations.length>0){let b=e.annotations[0];await O5(l,{text:`\xAB${b}\xBB`},0),d=l.node().getBBox().height}u=s.insert("g").attr("class","label-group text"),await O5(u,e,0,["font-weight: bolder"]);let g=u.node().getBBox();p=g.height,h=s.insert("g").attr("class","members-group text");let y=0;for(let b of e.members){let w=await O5(h,b,y,[b.parseClassifier()]);y+=w+a}m=h.node().getBBox().height,m<=0&&(m=i/2),f=s.insert("g").attr("class","methods-group text");let v=0;for(let b of e.methods){let w=await O5(f,b,v,[b.parseClassifier()]);v+=w+a}let x=s.node().getBBox();if(l!==null){let b=l.node().getBBox();l.attr("transform",`translate(${-b.width/2})`)}return u.attr("transform",`translate(${-g.width/2}, ${d})`),x=s.node().getBBox(),h.attr("transform",`translate(0, ${d+p+i*2})`),x=s.node().getBBox(),f.attr("transform",`translate(0, ${d+p+(m?m+i*4:i*2)})`),x=s.node().getBBox(),{shapeSvg:s,bbox:x}}async function O5(t,e,r,n=[]){let i=t.insert("g").attr("class","label").attr("style",n.join("; ")),a=Sr(),s="useHtmlLabels"in e?e.useHtmlLabels:xr(a.htmlLabels)??!0,l="";"text"in e?l=e.text:l=e.label,!s&&l.startsWith("\\")&&(l=l.substring(1)),pi(l)&&(s=!0);let u=await Si(i,i7(Ca(l)),{width:Js(l,a)+50,classes:"markdown-node-label",useHtmlLabels:s},a),h,f=1;if(s){let d=u.children[0],p=ze(u);f=d.innerHTML.split("
    ").length,d.innerHTML.includes("")&&(f+=d.innerHTML.split("").length-1);let m=d.getElementsByTagName("img");if(m){let g=l.replace(/]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(v=>{function x(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=a.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,_=parseInt(b,10)*5+"px";y.style.minWidth=_,y.style.maxWidth=_}else y.style.width="100%";v(y)}o(x,"setupImage"),setTimeout(()=>{y.complete&&x()}),y.addEventListener("error",x),y.addEventListener("load",x)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}else{n.includes("font-weight: bolder")&&ze(u).selectAll("tspan").attr("font-weight",""),f=u.children.length;let d=u.children[0];(u.textContent===""||u.textContent.includes(">"))&&(d.textContent=l[0]+l.substring(1).replaceAll(">",">").replaceAll("<","<").trim(),l[1]===" "&&(d.textContent=d.textContent[0]+" "+d.textContent.substring(1))),d.textContent==="undefined"&&(d.textContent=""),h=u.getBBox()}return i.attr("transform","translate(0,"+(-h.height/(2*f)+r)+")"),h.height}var qQ=M(()=>{"use strict";mr();Ua();Ft();hr();Vt();Dl();fr();o(YQ,"textHelper");o(O5,"addText")});async function XQ(t,e){let r=de(),n=r.class.padding??12,i=n,a=e.useHtmlLabels??xr(r.htmlLabels)??!0,s=e;s.annotations=s.annotations??[],s.members=s.members??[],s.methods=s.methods??[];let{shapeSvg:l,bbox:u}=await YQ(t,e,r,a,i),{labelStyles:h,nodeStyles:f}=et(e);e.labelStyle=h,e.cssStyles=s.styles||"";let d=s.styles?.join(";")||f||"";e.cssStyles||(e.cssStyles=d.replaceAll("!important","").split(";"));let p=s.members.length===0&&s.methods.length===0&&!r.class?.hideEmptyMembersBox,m=Ke.svg(l),g=Ze(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=u.width,v=u.height;s.members.length===0&&s.methods.length===0?v+=i:s.members.length>0&&s.methods.length===0&&(v+=i*2);let x=-y/2,b=-v/2,w=m.rectangle(x-n,b-n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0),y+2*n,v+2*n+(p?n*2:s.members.length===0&&s.methods.length===0?-n:0),g),_=l.insert(()=>w,":first-child");_.attr("class","basic label-container");let T=_.node().getBBox();l.selectAll(".text").each((A,I,D)=>{let k=ze(D[I]),R=k.attr("transform"),S=0;if(R){let F=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(R);F&&(S=parseFloat(F[2]))}let O=S+b+n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0);a||(O-=4);let N=x;(k.attr("class").includes("label-group")||k.attr("class").includes("annotation-group"))&&(N=-k.node()?.getBBox().width/2||0,l.selectAll("text").each(function(P,F,B){window.getComputedStyle(B[F]).textAnchor==="middle"&&(N=0)})),k.attr("transform",`translate(${N}, ${O})`)});let E=l.select(".annotation-group").node().getBBox().height-(p?n/2:0)||0,L=l.select(".label-group").node().getBBox().height-(p?n/2:0)||0,C=l.select(".members-group").node().getBBox().height-(p?n/2:0)||0;if(s.members.length>0||s.methods.length>0||p){let A=m.line(T.x,E+L+b+n,T.x+T.width,E+L+b+n,g);l.insert(()=>A).attr("class","divider").attr("style",d)}if(p||s.members.length>0||s.methods.length>0){let A=m.line(T.x,E+L+C+b+i*2+n,T.x+T.width,E+L+C+b+n+i*2,g);l.insert(()=>A).attr("class","divider").attr("style",d)}if(s.look!=="handDrawn"&&l.selectAll("path").attr("style",d),_.select(":nth-child(2)").attr("style",d),l.selectAll(".divider").select("path").attr("style",d),e.labelStyle?l.selectAll("span").attr("style",e.labelStyle):l.selectAll("span").attr("style",d),!a){let A=RegExp(/color\s*:\s*([^;]*)/),I=A.exec(d);if(I){let D=I[0].replace("color","fill");l.selectAll("tspan").attr("style",D)}else if(h){let D=A.exec(h);if(D){let k=D[0].replace("color","fill");l.selectAll("tspan").attr("style",k)}}}return Qe(e,_),e.intersect=function(A){return qe.rect(e,A)},l}var jQ=M(()=>{"use strict";Ft();Vt();mr();jt();Xt();qt();qQ();fr();o(XQ,"classBox")});async function KQ(t,e,{config:r}){let{labelStyles:n,nodeStyles:i}=et(e);e.labelStyle=n||"";let a=10,s=e.width;e.width=(e.width??200)-10;let{shapeSvg:l,bbox:u,label:h}=await ot(t,e,lt(e)),f=e.padding||10,d="",p;"ticket"in e&&e.ticket&&r?.kanban?.ticketBaseUrl&&(d=r?.kanban?.ticketBaseUrl.replace("#TICKET#",e.ticket),p=l.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",d).attr("target","_blank"));let m={useHtmlLabels:e.useHtmlLabels,labelStyle:e.labelStyle||"",width:e.width,img:e.img,padding:e.padding||8,centerLabel:!1},g,y;p?{label:g,bbox:y}=await T5(p,"ticket"in e&&e.ticket||"",m):{label:g,bbox:y}=await T5(l,"ticket"in e&&e.ticket||"",m);let{label:v,bbox:x}=await T5(l,"assigned"in e&&e.assigned||"",m);e.width=s;let b=10,w=e?.width||0,_=Math.max(y.height,x.height)/2,T=Math.max(u.height+b*2,e?.height||0)+_,E=-w/2,L=-T/2;h.attr("transform","translate("+(f-w/2)+", "+(-_-u.height/2)+")"),g.attr("transform","translate("+(f-w/2)+", "+(-_+u.height/2)+")"),v.attr("transform","translate("+(f+w/2-x.width-2*a)+", "+(-_+u.height/2)+")");let C,{rx:A,ry:I}=e,{cssStyles:D}=e;if(e.look==="handDrawn"){let k=Ke.svg(l),R=Ze(e,{}),S=A||I?k.path(La(E,L,w,T,A||0),R):k.rectangle(E,L,w,T,R);C=l.insert(()=>S,":first-child"),C.attr("class","basic label-container").attr("style",D||null)}else{C=l.insert("rect",":first-child"),C.attr("class","basic label-container __APA__").attr("style",i).attr("rx",A??5).attr("ry",I??5).attr("x",E).attr("y",L).attr("width",w).attr("height",T);let k="priority"in e&&e.priority;if(k){let R=l.append("line"),S=E+2,O=L+Math.floor((A??0)/2),N=L+T-Math.floor((A??0)/2);R.attr("x1",S).attr("y1",O).attr("x2",S).attr("y2",N).attr("stroke-width","4").attr("stroke",SAe(k))}}return Qe(e,C),e.height=T,e.intersect=function(k){return qe.rect(e,k)},l}var SAe,QQ=M(()=>{"use strict";Ft();qt();zh();Xt();jt();SAe=o(t=>{switch(t){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");o(KQ,"kanbanItem")});function ZQ(t){return t in z9}var CAe,AAe,z9,G9=M(()=>{"use strict";Vj();Wj();qj();jj();Qj();Jj();tK();nK();aK();oK();cK();hK();dK();mK();yK();xK();wK();kK();SK();AK();LK();NK();MK();OK();BK();zK();$K();UK();WK();qK();jK();QK();JK();tQ();nQ();aQ();oQ();cQ();hQ();dQ();mQ();yQ();xQ();wQ();kQ();SQ();AQ();LQ();NQ();MQ();OQ();BQ();zQ();$Q();UQ();WQ();jQ();QQ();CAe=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:pQ},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:lQ},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:gQ},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:EQ},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:lK},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:Kj},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:rQ},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:TK},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:VK},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:GK},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:IQ},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:PK},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:fK},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:DQ},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:Yj},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:uQ},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:TQ},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:bQ},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:vK},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:EK},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:eK},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:rK},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:iK},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:HK},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:GQ},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:bK},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:RQ},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:YK},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:sK},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:uK},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:FQ},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:HQ},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:pK},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:PQ},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:gK},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:fQ},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:ZK},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:KK},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:Hj},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:Zj},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:_Q},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:CQ},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:VQ},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:iQ},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:XK}],AAe=o(()=>{let e=[...Object.entries({state:vQ,choice:Xj,note:eQ,rectWithTitle:sQ,labelRect:FK,iconSquare:RK,iconCircle:_K,icon:CK,iconRounded:DK,imageSquare:IK,anchor:$j,kanbanItem:KQ,classBox:XQ}),...CAe.flatMap(r=>[r.shortName,..."aliases"in r?r.aliases:[],..."internalAliases"in r?r.internalAliases:[]].map(i=>[i,r.handler]))];return Object.fromEntries(e)},"generateShapeMap"),z9=AAe();o(ZQ,"isValidShape")});function pZ(t){return typeof t>"u"||t===null}function _Ae(t){return typeof t=="object"&&t!==null}function LAe(t){return Array.isArray(t)?t:pZ(t)?[]:[t]}function DAe(t,e){var r,n,i,a;if(e)for(a=Object.keys(e),r=0,n=a.length;rl&&(a=" ... ",e=n-l+a.length),r-n>l&&(s=" ...",r=n+l-s.length),{str:a+t.slice(e,r).replace(/\t/g,"\u2192")+s,pos:n-e+a.length}}function V9(t,e){return Pi.repeat(" ",e-t.length)+t}function zAe(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],i=[],a,s=-1;a=r.exec(t.buffer);)i.push(a.index),n.push(a.index+a[0].length),t.position<=a.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);var l="",u,h,f=Math.min(t.line+e.linesAfter,i.length).toString().length,d=e.maxLength-(e.indent+f+3);for(u=1;u<=e.linesBefore&&!(s-u<0);u++)h=$9(t.buffer,n[s-u],i[s-u],t.position-(n[s]-n[s-u]),d),l=Pi.repeat(" ",e.indent)+V9((t.line-u+1).toString(),f)+" | "+h.str+` +`+l;for(h=$9(t.buffer,n[s],i[s],t.position,d),l+=Pi.repeat(" ",e.indent)+V9((t.line+1).toString(),f)+" | "+h.str+` +`,l+=Pi.repeat("-",e.indent+f+3+h.pos)+`^ +`,u=1;u<=e.linesAfter&&!(s+u>=i.length);u++)h=$9(t.buffer,n[s+u],i[s+u],t.position-(n[s]-n[s+u]),d),l+=Pi.repeat(" ",e.indent)+V9((t.line+u+1).toString(),f)+" | "+h.str+` +`;return l.replace(/\n$/,"")}function UAe(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}function HAe(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if($Ae.indexOf(r)===-1)throw new Es('Unknown option "'+r+'" 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(r){return r},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=UAe(e.styleAliases||null),VAe.indexOf(this.kind)===-1)throw new Es('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}function JQ(t,e){var r=[];return t[e].forEach(function(n){var i=r.length;r.forEach(function(a,s){a.tag===n.tag&&a.kind===n.kind&&a.multi===n.multi&&(i=s)}),r[i]=n}),r}function WAe(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,r;function n(i){i.multi?(t.multi[i.kind].push(i),t.multi.fallback.push(i)):t[i.kind][i.tag]=t.fallback[i.tag]=i}for(o(n,"collectType"),e=0,r=arguments.length;e=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:r*parseFloat(e,10)}function g8e(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(Pi.isNegativeZero(t))return"-0.0";return r=t.toString(10),m8e.test(r)?r.replace("e",".e"):r}function y8e(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||Pi.isNegativeZero(t))}function b8e(t){return t===null?!1:yZ.exec(t)!==null||vZ.exec(t)!==null}function w8e(t){var e,r,n,i,a,s,l,u=0,h=null,f,d,p;if(e=yZ.exec(t),e===null&&(e=vZ.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],n=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(r,n,i));if(a=+e[4],s=+e[5],l=+e[6],e[7]){for(u=e[7].slice(0,3);u.length<3;)u+="0";u=+u}return e[9]&&(f=+e[10],d=+(e[11]||0),h=(f*60+d)*6e4,e[9]==="-"&&(h=-h)),p=new Date(Date.UTC(r,n,i,a,s,l,u)),h&&p.setTime(p.getTime()-h),p}function T8e(t){return t.toISOString()}function E8e(t){return t==="<<"||t===null}function C8e(t){if(t===null)return!1;var e,r,n=0,i=t.length,a=j9;for(r=0;r64)){if(e<0)return!1;n+=6}return n%8===0}function A8e(t){var e,r,n=t.replace(/[\r\n=]/g,""),i=n.length,a=j9,s=0,l=[];for(e=0;e>16&255),l.push(s>>8&255),l.push(s&255)),s=s<<6|a.indexOf(n.charAt(e));return r=i%4*6,r===0?(l.push(s>>16&255),l.push(s>>8&255),l.push(s&255)):r===18?(l.push(s>>10&255),l.push(s>>2&255)):r===12&&l.push(s>>4&255),new Uint8Array(l)}function _8e(t){var e="",r=0,n,i,a=t.length,s=j9;for(n=0;n>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]),r=(r<<8)+t[n];return i=a%3,i===0?(e+=s[r>>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]):i===2?(e+=s[r>>10&63],e+=s[r>>4&63],e+=s[r<<2&63],e+=s[64]):i===1&&(e+=s[r>>2&63],e+=s[r<<4&63],e+=s[64],e+=s[64]),e}function L8e(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}function M8e(t){if(t===null)return!0;var e=[],r,n,i,a,s,l=t;for(r=0,n=l.length;r>10)+55296,(t-65536&1023)+56320)}function Z8e(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||xZ,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 CZ(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=GAe(r),new Es(e,r)}function Qt(t,e){throw CZ(t,e)}function F5(t,e){t.onWarning&&t.onWarning.call(null,CZ(t,e))}function Gh(t,e,r,n){var i,a,s,l;if(e1&&(t.result+=Pi.repeat(` +`,e-1))}function J8e(t,e,r){var n,i,a,s,l,u,h,f,d=t.kind,p=t.result,m;if(m=t.input.charCodeAt(t.position),Ss(m)||lm(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=t.input.charCodeAt(t.position+1),Ss(i)||r&&lm(i)))return!1;for(t.kind="scalar",t.result="",a=s=t.position,l=!1;m!==0;){if(m===58){if(i=t.input.charCodeAt(t.position+1),Ss(i)||r&&lm(i))break}else if(m===35){if(n=t.input.charCodeAt(t.position-1),Ss(n))break}else{if(t.position===t.lineStart&&$5(t)||r&&lm(m))break;if(yc(m))if(u=t.line,h=t.lineStart,f=t.lineIndent,Ci(t,!1,-1),t.lineIndent>=e){l=!0,m=t.input.charCodeAt(t.position);continue}else{t.position=s,t.line=u,t.lineStart=h,t.lineIndent=f;break}}l&&(Gh(t,a,s,!1),Q9(t,t.line-u),a=s=t.position,l=!1),_d(m)||(s=t.position+1),m=t.input.charCodeAt(++t.position)}return Gh(t,a,s,!1),t.result?!0:(t.kind=d,t.result=p,!1)}function e_e(t,e){var r,n,i;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,n=i=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(Gh(t,n,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)n=t.position,t.position++,i=t.position;else return!0;else yc(r)?(Gh(t,n,i,!0),Q9(t,Ci(t,!1,e)),n=i=t.position):t.position===t.lineStart&&$5(t)?Qt(t,"unexpected end of the document within a single quoted scalar"):(t.position++,i=t.position);Qt(t,"unexpected end of the stream within a single quoted scalar")}function t_e(t,e){var r,n,i,a,s,l;if(l=t.input.charCodeAt(t.position),l!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=n=t.position;(l=t.input.charCodeAt(t.position))!==0;){if(l===34)return Gh(t,r,t.position,!0),t.position++,!0;if(l===92){if(Gh(t,r,t.position,!0),l=t.input.charCodeAt(++t.position),yc(l))Ci(t,!1,e);else if(l<256&&EZ[l])t.result+=SZ[l],t.position++;else if((s=j8e(l))>0){for(i=s,a=0;i>0;i--)l=t.input.charCodeAt(++t.position),(s=X8e(l))>=0?a=(a<<4)+s:Qt(t,"expected hexadecimal character");t.result+=Q8e(a),t.position++}else Qt(t,"unknown escape sequence");r=n=t.position}else yc(l)?(Gh(t,r,n,!0),Q9(t,Ci(t,!1,e)),r=n=t.position):t.position===t.lineStart&&$5(t)?Qt(t,"unexpected end of the document within a double quoted scalar"):(t.position++,n=t.position)}Qt(t,"unexpected end of the stream within a double quoted scalar")}function r_e(t,e){var r=!0,n,i,a,s=t.tag,l,u=t.anchor,h,f,d,p,m,g=Object.create(null),y,v,x,b;if(b=t.input.charCodeAt(t.position),b===91)f=93,m=!1,l=[];else if(b===123)f=125,m=!0,l={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=l),b=t.input.charCodeAt(++t.position);b!==0;){if(Ci(t,!0,e),b=t.input.charCodeAt(t.position),b===f)return t.position++,t.tag=s,t.anchor=u,t.kind=m?"mapping":"sequence",t.result=l,!0;r?b===44&&Qt(t,"expected the node content, but found ','"):Qt(t,"missed comma between flow collection entries"),v=y=x=null,d=p=!1,b===63&&(h=t.input.charCodeAt(t.position+1),Ss(h)&&(d=p=!0,t.position++,Ci(t,!0,e))),n=t.line,i=t.lineStart,a=t.position,um(t,e,P5,!1,!0),v=t.tag,y=t.result,Ci(t,!0,e),b=t.input.charCodeAt(t.position),(p||t.line===n)&&b===58&&(d=!0,b=t.input.charCodeAt(++t.position),Ci(t,!0,e),um(t,e,P5,!1,!0),x=t.result),m?cm(t,l,g,v,y,x,n,i,a):d?l.push(cm(t,null,g,v,y,x,n,i,a)):l.push(y),Ci(t,!0,e),b=t.input.charCodeAt(t.position),b===44?(r=!0,b=t.input.charCodeAt(++t.position)):r=!1}Qt(t,"unexpected end of the stream within a flow collection")}function n_e(t,e){var r,n,i=U9,a=!1,s=!1,l=e,u=0,h=!1,f,d;if(d=t.input.charCodeAt(t.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(t.kind="scalar",t.result="";d!==0;)if(d=t.input.charCodeAt(++t.position),d===43||d===45)U9===i?i=d===43?eZ:H8e:Qt(t,"repeat of a chomping mode identifier");else if((f=K8e(d))>=0)f===0?Qt(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):s?Qt(t,"repeat of an indentation width identifier"):(l=e+f-1,s=!0);else break;if(_d(d)){do d=t.input.charCodeAt(++t.position);while(_d(d));if(d===35)do d=t.input.charCodeAt(++t.position);while(!yc(d)&&d!==0)}for(;d!==0;){for(K9(t),t.lineIndent=0,d=t.input.charCodeAt(t.position);(!s||t.lineIndentl&&(l=t.lineIndent),yc(d)){u++;continue}if(t.lineIndente)&&u!==0)Qt(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(v&&(s=t.line,l=t.lineStart,u=t.position),um(t,e,B5,!0,i)&&(v?g=t.result:y=t.result),v||(cm(t,d,p,m,g,y,s,l,u),m=g=y=null),Ci(t,!0,-1),b=t.input.charCodeAt(t.position)),(t.line===a||t.lineIndent>e)&&b!==0)Qt(t,"bad indentation of a mapping entry");else if(t.lineIndente?u=1:t.lineIndent===e?u=0:t.lineIndente?u=1:t.lineIndent===e?u=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),d=0,p=t.implicitTypes.length;d"),t.result!==null&&g.kind!==t.kind&&Qt(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+g.kind+'", not "'+t.kind+'"'),g.resolve(t.result,t.tag)?(t.result=g.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):Qt(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||f}function l_e(t){var e=t.position,r,n,i,a=!1,s;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(s=t.input.charCodeAt(t.position))!==0&&(Ci(t,!0,-1),s=t.input.charCodeAt(t.position),!(t.lineIndent>0||s!==37));){for(a=!0,s=t.input.charCodeAt(++t.position),r=t.position;s!==0&&!Ss(s);)s=t.input.charCodeAt(++t.position);for(n=t.input.slice(r,t.position),i=[],n.length<1&&Qt(t,"directive name must not be less than one character in length");s!==0;){for(;_d(s);)s=t.input.charCodeAt(++t.position);if(s===35){do s=t.input.charCodeAt(++t.position);while(s!==0&&!yc(s));break}if(yc(s))break;for(r=t.position;s!==0&&!Ss(s);)s=t.input.charCodeAt(++t.position);i.push(t.input.slice(r,t.position))}s!==0&&K9(t),$h.call(nZ,n)?nZ[n](t,n,i):F5(t,'unknown document directive "'+n+'"')}if(Ci(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,Ci(t,!0,-1)):a&&Qt(t,"directives end mark is expected"),um(t,t.lineIndent-1,B5,!1,!0),Ci(t,!0,-1),t.checkLineBreaks&&Y8e.test(t.input.slice(e,t.position))&&F5(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&$5(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,Ci(t,!0,-1));return}if(t.position"u"&&(r=e,e=null);var n=AZ(t,r);if(typeof e!="function")return n;for(var i=0,a=n.length;i=55296&&r<=56319&&e+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function PZ(t){var e=/^\n* /;return e.test(t)}function F_e(t,e,r,n,i,a,s,l){var u,h=0,f=null,d=!1,p=!1,m=n!==-1,g=-1,y=P_e(xv(t,0))&&B_e(xv(t,t.length-1));if(e||s)for(u=0;u=65536?u+=2:u++){if(h=xv(t,u),!kv(h))return om;y=y&&lZ(h,f,l),f=h}else{for(u=0;u=65536?u+=2:u++){if(h=xv(t,u),h===wv)d=!0,m&&(p=p||u-g-1>n&&t[g+1]!==" ",g=u);else if(!kv(h))return om;y=y&&lZ(h,f,l),f=h}p=p||m&&u-g-1>n&&t[g+1]!==" "}return!d&&!p?y&&!s&&!i(t)?BZ:a===Tv?om:q9:r>9&&PZ(t)?om:s?a===Tv?om:q9:p?zZ:FZ}function z_e(t,e,r,n,i){t.dump=function(){if(e.length===0)return t.quotingType===Tv?'""':"''";if(!t.noCompatMode&&(L_e.indexOf(e)!==-1||D_e.test(e)))return t.quotingType===Tv?'"'+e+'"':"'"+e+"'";var a=t.indent*Math.max(1,r),s=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-a),l=n||t.flowLevel>-1&&r>=t.flowLevel;function u(h){return O_e(t,h)}switch(o(u,"testAmbiguity"),F_e(e,l,t.indent,s,u,t.quotingType,t.forceQuotes&&!n,i)){case BZ:return e;case q9:return"'"+e.replace(/'/g,"''")+"'";case FZ:return"|"+cZ(e,t.indent)+uZ(sZ(e,a));case zZ:return">"+cZ(e,t.indent)+uZ(sZ(G_e(e,s),a));case om:return'"'+$_e(e)+'"';default:throw new Es("impossible error: invalid scalar style")}}()}function cZ(t,e){var r=PZ(t)?String(e):"",n=t[t.length-1]===` +`,i=n&&(t[t.length-2]===` +`||t===` +`),a=i?"+":n?"":"-";return r+a+` +`}function uZ(t){return t[t.length-1]===` +`?t.slice(0,-1):t}function G_e(t,e){for(var r=/(\n+)([^\n]*)/g,n=function(){var h=t.indexOf(` +`);return h=h!==-1?h:t.length,r.lastIndex=h,hZ(t.slice(0,h),e)}(),i=t[0]===` +`||t[0]===" ",a,s;s=r.exec(t);){var l=s[1],u=s[2];a=u[0]===" ",n+=l+(!i&&!a&&u!==""?` +`:"")+hZ(u,e),i=a}return n}function hZ(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,n,i=0,a,s=0,l=0,u="";n=r.exec(t);)l=n.index,l-i>e&&(a=s>i?s:l,u+=` +`+t.slice(i,a),i=a+1),s=l;return u+=` +`,t.length-i>e&&s>i?u+=t.slice(i,s)+` +`+t.slice(s+1):u+=t.slice(i),u.slice(1)}function $_e(t){for(var e="",r=0,n,i=0;i=65536?i+=2:i++)r=xv(t,i),n=Na[r],!n&&kv(r)?(e+=t[i],r>=65536&&(e+=t[i+1])):e+=n||R_e(r);return e}function V_e(t,e,r){var n="",i=t.tag,a,s,l;for(a=0,s=r.length;a"u"&&Cu(t,e,null,!1,!1))&&(n!==""&&(n+=","+(t.condenseFlow?"":" ")),n+=t.dump);t.tag=i,t.dump="["+n+"]"}function fZ(t,e,r,n){var i="",a=t.tag,s,l,u;for(s=0,l=r.length;s"u"&&Cu(t,e+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=Y9(t,e)),t.dump&&wv===t.dump.charCodeAt(0)?i+="-":i+="- ",i+=t.dump);t.tag=a,t.dump=i||"[]"}function U_e(t,e,r){var n="",i=t.tag,a=Object.keys(r),s,l,u,h,f;for(s=0,l=a.length;s1024&&(f+="? "),f+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),Cu(t,e,h,!1,!1)&&(f+=t.dump,n+=f));t.tag=i,t.dump="{"+n+"}"}function H_e(t,e,r,n){var i="",a=t.tag,s=Object.keys(r),l,u,h,f,d,p;if(t.sortKeys===!0)s.sort();else if(typeof t.sortKeys=="function")s.sort(t.sortKeys);else if(t.sortKeys)throw new Es("sortKeys must be a boolean or a function");for(l=0,u=s.length;l1024,d&&(t.dump&&wv===t.dump.charCodeAt(0)?p+="?":p+="? "),p+=t.dump,d&&(p+=Y9(t,e)),Cu(t,e+1,f,!0,d)&&(t.dump&&wv===t.dump.charCodeAt(0)?p+=":":p+=": ",p+=t.dump,i+=p));t.tag=a,t.dump=i||"{}"}function dZ(t,e,r){var n,i,a,s,l,u;for(i=r?t.explicitTypes:t.implicitTypes,a=0,s=i.length;a tag resolver accepts not "'+u+'" style');t.dump=n}return!0}return!1}function Cu(t,e,r,n,i,a,s){t.tag=null,t.dump=r,dZ(t,r,!1)||dZ(t,r,!0);var l=LZ.call(t.dump),u=n,h;n&&(n=t.flowLevel<0||t.flowLevel>e);var f=l==="[object Object]"||l==="[object Array]",d,p;if(f&&(d=t.duplicates.indexOf(r),p=d!==-1),(t.tag!==null&&t.tag!=="?"||p||t.indent!==2&&e>0)&&(i=!1),p&&t.usedDuplicates[d])t.dump="*ref_"+d;else{if(f&&p&&!t.usedDuplicates[d]&&(t.usedDuplicates[d]=!0),l==="[object Object]")n&&Object.keys(t.dump).length!==0?(H_e(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(U_e(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object Array]")n&&t.dump.length!==0?(t.noArrayIndent&&!s&&e>0?fZ(t,e-1,t.dump,i):fZ(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(V_e(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object String]")t.tag!=="?"&&z_e(t,t.dump,e,a,u);else{if(l==="[object Undefined]")return!1;if(t.skipInvalid)return!1;throw new Es("unacceptable kind of an object to dump "+l)}t.tag!==null&&t.tag!=="?"&&(h=encodeURI(t.tag[0]==="!"?t.tag.slice(1):t.tag).replace(/!/g,"%21"),t.tag[0]==="!"?h="!"+h:h.slice(0,18)==="tag:yaml.org,2002:"?h="!!"+h.slice(18):h="!<"+h+">",t.dump=h+" "+t.dump)}return!0}function W_e(t,e){var r=[],n=[],i,a;for(X9(t,r,n),i=0,a=n.length;i{"use strict";o(pZ,"isNothing");o(_Ae,"isObject");o(LAe,"toArray");o(DAe,"extend");o(NAe,"repeat");o(RAe,"isNegativeZero");MAe=pZ,IAe=_Ae,OAe=LAe,PAe=NAe,BAe=RAe,FAe=DAe,Pi={isNothing:MAe,isObject:IAe,toArray:OAe,repeat:PAe,isNegativeZero:BAe,extend:FAe};o(mZ,"formatError");o(bv,"YAMLException$1");bv.prototype=Object.create(Error.prototype);bv.prototype.constructor=bv;bv.prototype.toString=o(function(e){return this.name+": "+mZ(this,e)},"toString");Es=bv;o($9,"getLine");o(V9,"padStart");o(zAe,"makeSnippet");GAe=zAe,$Ae=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],VAe=["scalar","sequence","mapping"];o(UAe,"compileStyleAliases");o(HAe,"Type$1");Da=HAe;o(JQ,"compileList");o(WAe,"compileMap");o(H9,"Schema$1");H9.prototype.extend=o(function(e){var r=[],n=[];if(e instanceof Da)n.push(e);else if(Array.isArray(e))n=n.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(r=r.concat(e.implicit)),e.explicit&&(n=n.concat(e.explicit));else throw new Es("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(a){if(!(a instanceof Da))throw new Es("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new Es("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new Es("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(a){if(!(a instanceof Da))throw new Es("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(H9.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=JQ(i,"implicit"),i.compiledExplicit=JQ(i,"explicit"),i.compiledTypeMap=WAe(i.compiledImplicit,i.compiledExplicit),i},"extend");YAe=H9,qAe=new Da("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(t){return t!==null?t:""},"construct")}),XAe=new Da("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(t){return t!==null?t:[]},"construct")}),jAe=new Da("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(t){return t!==null?t:{}},"construct")}),KAe=new YAe({explicit:[qAe,XAe,jAe]});o(QAe,"resolveYamlNull");o(ZAe,"constructYamlNull");o(JAe,"isNull");e8e=new Da("tag:yaml.org,2002:null",{kind:"scalar",resolve:QAe,construct:ZAe,predicate:JAe,represent:{canonical:o(function(){return"~"},"canonical"),lowercase:o(function(){return"null"},"lowercase"),uppercase:o(function(){return"NULL"},"uppercase"),camelcase:o(function(){return"Null"},"camelcase"),empty:o(function(){return""},"empty")},defaultStyle:"lowercase"});o(t8e,"resolveYamlBoolean");o(r8e,"constructYamlBoolean");o(n8e,"isBoolean");i8e=new Da("tag:yaml.org,2002:bool",{kind:"scalar",resolve:t8e,construct:r8e,predicate:n8e,represent:{lowercase:o(function(t){return t?"true":"false"},"lowercase"),uppercase:o(function(t){return t?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(t){return t?"True":"False"},"camelcase")},defaultStyle:"lowercase"});o(a8e,"isHexCode");o(s8e,"isOctCode");o(o8e,"isDecCode");o(l8e,"resolveYamlInteger");o(c8e,"constructYamlInteger");o(u8e,"isInteger");h8e=new Da("tag:yaml.org,2002:int",{kind:"scalar",resolve:l8e,construct:c8e,predicate:u8e,represent:{binary:o(function(t){return t>=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},"binary"),octal:o(function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},"octal"),decimal:o(function(t){return t.toString(10)},"decimal"),hexadecimal:o(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"]}}),f8e=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");o(d8e,"resolveYamlFloat");o(p8e,"constructYamlFloat");m8e=/^[-+]?[0-9]+e/;o(g8e,"representYamlFloat");o(y8e,"isFloat");v8e=new Da("tag:yaml.org,2002:float",{kind:"scalar",resolve:d8e,construct:p8e,predicate:y8e,represent:g8e,defaultStyle:"lowercase"}),gZ=KAe.extend({implicit:[e8e,i8e,h8e,v8e]}),x8e=gZ,yZ=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),vZ=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]))?))?$");o(b8e,"resolveYamlTimestamp");o(w8e,"constructYamlTimestamp");o(T8e,"representYamlTimestamp");k8e=new Da("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:b8e,construct:w8e,instanceOf:Date,represent:T8e});o(E8e,"resolveYamlMerge");S8e=new Da("tag:yaml.org,2002:merge",{kind:"scalar",resolve:E8e}),j9=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;o(C8e,"resolveYamlBinary");o(A8e,"constructYamlBinary");o(_8e,"representYamlBinary");o(L8e,"isBinary");D8e=new Da("tag:yaml.org,2002:binary",{kind:"scalar",resolve:C8e,construct:A8e,predicate:L8e,represent:_8e}),N8e=Object.prototype.hasOwnProperty,R8e=Object.prototype.toString;o(M8e,"resolveYamlOmap");o(I8e,"constructYamlOmap");O8e=new Da("tag:yaml.org,2002:omap",{kind:"sequence",resolve:M8e,construct:I8e}),P8e=Object.prototype.toString;o(B8e,"resolveYamlPairs");o(F8e,"constructYamlPairs");z8e=new Da("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:B8e,construct:F8e}),G8e=Object.prototype.hasOwnProperty;o($8e,"resolveYamlSet");o(V8e,"constructYamlSet");U8e=new Da("tag:yaml.org,2002:set",{kind:"mapping",resolve:$8e,construct:V8e}),xZ=x8e.extend({implicit:[k8e,S8e],explicit:[D8e,O8e,z8e,U8e]}),$h=Object.prototype.hasOwnProperty,P5=1,bZ=2,wZ=3,B5=4,U9=1,H8e=2,eZ=3,W8e=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Y8e=/[\x85\u2028\u2029]/,q8e=/[,\[\]\{\}]/,TZ=/^(?:!|!!|![a-z\-]+!)$/i,kZ=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;o(tZ,"_class");o(yc,"is_EOL");o(_d,"is_WHITE_SPACE");o(Ss,"is_WS_OR_EOL");o(lm,"is_FLOW_INDICATOR");o(X8e,"fromHexCode");o(j8e,"escapedHexLen");o(K8e,"fromDecimalCode");o(rZ,"simpleEscapeSequence");o(Q8e,"charFromCodepoint");EZ=new Array(256),SZ=new Array(256);for(Ad=0;Ad<256;Ad++)EZ[Ad]=rZ(Ad)?1:0,SZ[Ad]=rZ(Ad);o(Z8e,"State$1");o(CZ,"generateError");o(Qt,"throwError");o(F5,"throwWarning");nZ={YAML:o(function(e,r,n){var i,a,s;e.version!==null&&Qt(e,"duplication of %YAML directive"),n.length!==1&&Qt(e,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&Qt(e,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),s=parseInt(i[2],10),a!==1&&Qt(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=s<2,s!==1&&s!==2&&F5(e,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(e,r,n){var i,a;n.length!==2&&Qt(e,"TAG directive accepts exactly two arguments"),i=n[0],a=n[1],TZ.test(i)||Qt(e,"ill-formed tag handle (first argument) of the TAG directive"),$h.call(e.tagMap,i)&&Qt(e,'there is a previously declared suffix for "'+i+'" tag handle'),kZ.test(a)||Qt(e,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Qt(e,"tag prefix is malformed: "+a)}e.tagMap[i]=a},"handleTagDirective")};o(Gh,"captureSegment");o(iZ,"mergeMappings");o(cm,"storeMappingPair");o(K9,"readLineBreak");o(Ci,"skipSeparationSpace");o($5,"testDocumentSeparator");o(Q9,"writeFoldedLines");o(J8e,"readPlainScalar");o(e_e,"readSingleQuotedScalar");o(t_e,"readDoubleQuotedScalar");o(r_e,"readFlowCollection");o(n_e,"readBlockScalar");o(aZ,"readBlockSequence");o(i_e,"readBlockMapping");o(a_e,"readTagProperty");o(s_e,"readAnchorProperty");o(o_e,"readAlias");o(um,"composeNode");o(l_e,"readDocument");o(AZ,"loadDocuments");o(c_e,"loadAll$1");o(u_e,"load$1");h_e=c_e,f_e=u_e,_Z={loadAll:h_e,load:f_e},LZ=Object.prototype.toString,DZ=Object.prototype.hasOwnProperty,Z9=65279,d_e=9,wv=10,p_e=13,m_e=32,g_e=33,y_e=34,W9=35,v_e=37,x_e=38,b_e=39,w_e=42,NZ=44,T_e=45,z5=58,k_e=61,E_e=62,S_e=63,C_e=64,RZ=91,MZ=93,A_e=96,IZ=123,__e=124,OZ=125,Na={};Na[0]="\\0";Na[7]="\\a";Na[8]="\\b";Na[9]="\\t";Na[10]="\\n";Na[11]="\\v";Na[12]="\\f";Na[13]="\\r";Na[27]="\\e";Na[34]='\\"';Na[92]="\\\\";Na[133]="\\N";Na[160]="\\_";Na[8232]="\\L";Na[8233]="\\P";L_e=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],D_e=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;o(N_e,"compileStyleMap");o(R_e,"encodeHex");M_e=1,Tv=2;o(I_e,"State");o(sZ,"indentString");o(Y9,"generateNextLine");o(O_e,"testImplicitResolving");o(G5,"isWhitespace");o(kv,"isPrintable");o(oZ,"isNsCharOrWhitespace");o(lZ,"isPlainSafe");o(P_e,"isPlainSafeFirst");o(B_e,"isPlainSafeLast");o(xv,"codePointAt");o(PZ,"needIndentIndicator");BZ=1,q9=2,FZ=3,zZ=4,om=5;o(F_e,"chooseScalarStyle");o(z_e,"writeScalar");o(cZ,"blockHeader");o(uZ,"dropEndingNewline");o(G_e,"foldString");o(hZ,"foldLine");o($_e,"escapeString");o(V_e,"writeFlowSequence");o(fZ,"writeBlockSequence");o(U_e,"writeFlowMapping");o(H_e,"writeBlockMapping");o(dZ,"detectType");o(Cu,"writeNode");o(W_e,"getDuplicateReferences");o(X9,"inspectNode");o(Y_e,"dump$1");q_e=Y_e,X_e={dump:q_e};o(J9,"renamed");hm=gZ,fm=_Z.load,uNt=_Z.loadAll,hNt=X_e.dump,fNt=J9("safeLoad","load"),dNt=J9("safeLoadAll","loadAll"),pNt=J9("safeDump","dump")});function rL(t){let e=[];for(let r of t){let n=Sv.get(r);n?.styles&&(e=[...e,...n.styles??[]].map(i=>i.trim())),n?.textStyles&&(e=[...e,...n.textStyles??[]].map(i=>i.trim()))}return e}var j_e,GZ,dm,Vh,Cs,Sv,Au,nL,iL,U5,tL,Go,H5,W5,Y5,q5,K_e,Q_e,Z_e,J_e,e9e,t9e,r9e,aL,n9e,i9e,a9e,$Z,s9e,o9e,sL,VZ,UZ,l9e,HZ,c9e,u9e,h9e,f9e,d9e,Ev,WZ,YZ,p9e,m9e,qZ,g9e,y9e,v9e,x9e,b9e,XZ,jZ,w9e,T9e,k9e,E9e,S9e,C9e,X5,oL=M(()=>{"use strict";mr();hr();Vt();fr();G9();ht();V5();ki();j_e="flowchart-",GZ=0,dm=de(),Vh=new Map,Cs=[],Sv=new Map,Au=[],nL=new Map,iL=new Map,U5=0,tL=!0,W5=[],Y5=o(t=>je.sanitizeText(t,dm),"sanitizeText"),q5=o(function(t){for(let e of Vh.values())if(e.id===t)return e.domId;return t},"lookUpDomId"),K_e=o(function(t,e,r,n,i,a,s={},l){if(!t||t.trim().length===0)return;let u,h=Vh.get(t);if(h===void 0&&(h={id:t,labelType:"text",domId:j_e+t+"-"+GZ,styles:[],classes:[]},Vh.set(t,h)),GZ++,e!==void 0?(dm=de(),u=Y5(e.text.trim()),h.labelType=e.type,u.startsWith('"')&&u.endsWith('"')&&(u=u.substring(1,u.length-1)),h.text=u):h.text===void 0&&(h.text=t),r!==void 0&&(h.type=r),n?.forEach(function(f){h.styles.push(f)}),i?.forEach(function(f){h.classes.push(f)}),a!==void 0&&(h.dir=a),h.props===void 0?h.props=s:s!==void 0&&Object.assign(h.props,s),l!==void 0){let f;l.includes(` +`)?f=l+` +`:f=`{ +`+l+` +}`;let d=fm(f,{schema:hm});if(d.shape){if(d.shape!==d.shape.toLowerCase()||d.shape.includes("_"))throw new Error(`No such shape: ${d.shape}. Shape names should be lowercase.`);if(!ZQ(d.shape))throw new Error(`No such shape: ${d.shape}.`);h.type=d?.shape}d?.label&&(h.text=d?.label),d?.icon&&(h.icon=d?.icon,!d.label?.trim()&&h.text===t&&(h.text="")),d?.form&&(h.form=d?.form),d?.pos&&(h.pos=d?.pos),d?.img&&(h.img=d?.img,!d.label?.trim()&&h.text===t&&(h.text="")),d?.constraint&&(h.constraint=d.constraint),d.w&&(h.assetWidth=Number(d.w)),d.h&&(h.assetHeight=Number(d.h))}},"addVertex"),Q_e=o(function(t,e,r){let a={start:t,end:e,type:void 0,text:"",labelType:"text"};Y.info("abc78 Got edge...",a);let s=r.text;if(s!==void 0&&(a.text=Y5(s.text.trim()),a.text.startsWith('"')&&a.text.endsWith('"')&&(a.text=a.text.substring(1,a.text.length-1)),a.labelType=s.type),r!==void 0&&(a.type=r.type,a.stroke=r.stroke,a.length=r.length>10?10:r.length),Cs.length<(dm.maxEdges??500))Y.info("Pushing edge..."),Cs.push(a);else throw new Error(`Edge limit exceeded. ${Cs.length} edges found, but the limit is ${dm.maxEdges}. + +Initialize mermaid with maxEdges set to a higher number to allow more edges. +You cannot set this config via configuration inside the diagram as it is a secure config. +You have to call mermaid.initialize.`)},"addSingleLink"),Z_e=o(function(t,e,r){Y.info("addLink",t,e,r);for(let n of t)for(let i of e)Q_e(n,i,r)},"addLink"),J_e=o(function(t,e){t.forEach(function(r){r==="default"?Cs.defaultInterpolate=e:Cs[r].interpolate=e})},"updateLinkInterpolate"),e9e=o(function(t,e){t.forEach(function(r){if(typeof r=="number"&&r>=Cs.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${Cs.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?Cs.defaultStyle=e:(Cs[r].style=e,(Cs[r]?.style?.length??0)>0&&!Cs[r]?.style?.some(n=>n?.startsWith("fill"))&&Cs[r]?.style?.push("fill:none"))})},"updateLink"),t9e=o(function(t,e){t.split(",").forEach(function(r){let n=Sv.get(r);n===void 0&&(n={id:r,styles:[],textStyles:[]},Sv.set(r,n)),e?.forEach(function(i){if(/color/.exec(i)){let a=i.replace("fill","bgFill");n.textStyles.push(a)}n.styles.push(i)})})},"addClass"),r9e=o(function(t){Go=t,/.*/.exec(Go)&&(Go="LR"),/.*v/.exec(Go)&&(Go="TB"),Go==="TD"&&(Go="TB")},"setDirection"),aL=o(function(t,e){for(let r of t.split(",")){let n=Vh.get(r);n&&n.classes.push(e);let i=nL.get(r);i&&i.classes.push(e)}},"setClass"),n9e=o(function(t,e){if(e!==void 0){e=Y5(e);for(let r of t.split(","))iL.set(H5==="gen-1"?q5(r):r,e)}},"setTooltip"),i9e=o(function(t,e,r){let n=q5(t);if(de().securityLevel!=="loose"||e===void 0)return;let i=[];if(typeof r=="string"){i=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let s=0;s")),i.classed("hover",!0)}).on("mouseout",function(){e.transition().duration(500).style("opacity",0),ze(this).classed("hover",!1)})},"setupToolTips");W5.push(HZ);c9e=o(function(t="gen-1"){Vh=new Map,Sv=new Map,Cs=[],W5=[HZ],Au=[],nL=new Map,U5=0,iL=new Map,tL=!0,H5=t,dm=de(),_r()},"clear"),u9e=o(t=>{H5=t||"gen-2"},"setGen"),h9e=o(function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},"defaultStyle"),f9e=o(function(t,e,r){let n=t.text.trim(),i=r.text;t===r&&/\s/.exec(r.text)&&(n=void 0);function a(h){let f={boolean:{},number:{},string:{}},d=[],p;return{nodeList:h.filter(function(g){let y=typeof g;return g.stmt&&g.stmt==="dir"?(p=g.value,!1):g.trim()===""?!1:y in f?f[y].hasOwnProperty(g)?!1:f[y][g]=!0:d.includes(g)?!1:d.push(g)}),dir:p}}o(a,"uniq");let{nodeList:s,dir:l}=a(e.flat());if(H5==="gen-1")for(let h=0;h2e3)return{result:!1,count:0};if(WZ[Ev]=e,Au[e].id===t)return{result:!0,count:0};let n=0,i=1;for(;n=0){let s=YZ(t,a);if(s.result)return{result:!0,count:i+s.count};i=i+s.count}n=n+1}return{result:!1,count:i}},"indexNodes2"),p9e=o(function(t){return WZ[t]},"getDepthFirstPos"),m9e=o(function(){Ev=-1,Au.length>0&&YZ("none",Au.length-1)},"indexNodes"),qZ=o(function(){return Au},"getSubGraphs"),g9e=o(()=>tL?(tL=!1,!0):!1,"firstGraph"),y9e=o(t=>{let e=t.trim(),r="arrow_open";switch(e[0]){case"<":r="arrow_point",e=e.slice(1);break;case"x":r="arrow_cross",e=e.slice(1);break;case"o":r="arrow_circle",e=e.slice(1);break}let n="normal";return e.includes("=")&&(n="thick"),e.includes(".")&&(n="dotted"),{type:r,stroke:n}},"destructStartLink"),v9e=o((t,e)=>{let r=e.length,n=0;for(let i=0;i{let e=t.trim(),r=e.slice(0,-1),n="arrow_open";switch(e.slice(-1)){case"x":n="arrow_cross",e.startsWith("x")&&(n="double_"+n,r=r.slice(1));break;case">":n="arrow_point",e.startsWith("<")&&(n="double_"+n,r=r.slice(1));break;case"o":n="arrow_circle",e.startsWith("o")&&(n="double_"+n,r=r.slice(1));break}let i="normal",a=r.length-1;r.startsWith("=")&&(i="thick"),r.startsWith("~")&&(i="invisible");let s=v9e(".",r);return s&&(i="dotted",a=s),{type:n,stroke:i,length:a}},"destructEndLink"),b9e=o((t,e)=>{let r=x9e(t),n;if(e){if(n=y9e(e),n.stroke!==r.stroke)return{type:"INVALID",stroke:"INVALID"};if(n.type==="arrow_open")n.type=r.type;else{if(n.type!==r.type)return{type:"INVALID",stroke:"INVALID"};n.type="double_"+n.type}return n.type==="double_arrow"&&(n.type="double_arrow_point"),n.length=r.length,n}return r},"destructLink"),XZ=o((t,e)=>{for(let r of t)if(r.nodes.includes(e))return!0;return!1},"exists"),jZ=o((t,e)=>{let r=[];return t.nodes.forEach((n,i)=>{XZ(e,n)||r.push(t.nodes[i])}),{nodes:r}},"makeUniq"),w9e={firstGraph:g9e},T9e=o(t=>{if(t.img)return"imageSquare";if(t.icon)return t.form==="circle"?"iconCircle":t.form==="square"?"iconSquare":t.form==="rounded"?"iconRounded":"icon";switch(t.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return t.type}},"getTypeFromVertex"),k9e=o((t,e)=>t.find(r=>r.id===e),"findNode"),E9e=o(t=>{let e="none",r="arrow_point";switch(t){case"arrow_point":case"arrow_circle":case"arrow_cross":r=t;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":e=t.replace("double_",""),r=e;break}return{arrowTypeStart:e,arrowTypeEnd:r}},"destructEdgeType"),S9e=o((t,e,r,n,i,a)=>{let s=r.get(t.id),l=n.get(t.id)??!1,u=k9e(e,t.id);if(u)u.cssStyles=t.styles,u.cssCompiledStyles=rL(t.classes),u.cssClasses=t.classes.join(" ");else{let h={id:t.id,label:t.text,labelStyle:"",parentId:s,padding:i.flowchart?.padding||8,cssStyles:t.styles,cssCompiledStyles:rL(["default","node",...t.classes]),cssClasses:"default "+t.classes.join(" "),dir:t.dir,domId:t.domId,look:a,link:t.link,linkTarget:t.linkTarget,tooltip:$Z(t.id),icon:t.icon,pos:t.pos,img:t.img,assetWidth:t.assetWidth,assetHeight:t.assetHeight,constraint:t.constraint};l?e.push({...h,isGroup:!0,shape:"rect"}):e.push({...h,isGroup:!1,shape:T9e(t)})}},"addNodeFromVertex");o(rL,"getCompiledStyles");C9e=o(()=>{let t=de(),e=[],r=[],n=qZ(),i=new Map,a=new Map;for(let u=n.length-1;u>=0;u--){let h=n[u];h.nodes.length>0&&a.set(h.id,!0);for(let f of h.nodes)i.set(f,h.id)}for(let u=n.length-1;u>=0;u--){let h=n[u];e.push({id:h.id,label:h.title,labelStyle:"",parentId:i.get(h.id),padding:8,cssCompiledStyles:rL(h.classes),cssClasses:h.classes.join(" "),shape:"rect",dir:h.dir,isGroup:!0,look:t.look})}VZ().forEach(u=>{S9e(u,e,i,a,t,t.look||"classic")});let l=UZ();return l.forEach((u,h)=>{let{arrowTypeStart:f,arrowTypeEnd:d}=E9e(u.type),p=[...l.defaultStyle??[]];u.style&&p.push(...u.style);let m={id:p5(u.start,u.end,{counter:h,prefix:"L"}),start:u.start,end:u.end,type:u.type??"normal",label:u.text,labelpos:"c",thickness:u.stroke,minlen:u.length,classes:u?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:u?.stroke==="invisible"?"none":f,arrowTypeEnd:u?.stroke==="invisible"?"none":d,arrowheadStyle:"fill: #333",labelStyle:p,style:p,pattern:u.stroke,look:t.look};r.push(m)}),{nodes:e,edges:r,other:{},config:t}},"getData"),X5={defaultConfig:o(()=>S4.flowchart,"defaultConfig"),setAccTitle:Rr,getAccTitle:Pr,getAccDescription:Fr,getData:C9e,setAccDescription:Br,addVertex:K_e,lookUpDomId:q5,addLink:Z_e,updateLinkInterpolate:J_e,updateLink:e9e,addClass:t9e,setDirection:r9e,setClass:aL,setTooltip:n9e,getTooltip:$Z,setClickEvent:s9e,setLink:a9e,bindFunctions:o9e,getDirection:sL,getVertices:VZ,getEdges:UZ,getClasses:l9e,clear:c9e,setGen:u9e,defaultStyle:h9e,addSubGraph:f9e,getDepthFirstPos:p9e,indexNodes:m9e,getSubGraphs:qZ,destructLink:b9e,lex:w9e,exists:XZ,makeUniq:jZ,setDiagramTitle:ln,getDiagramTitle:Jr}});var pm,j5=M(()=>{"use strict";mr();pm=o((t,e)=>{let r;return e==="sandbox"&&(r=ze("#i"+t)),(e==="sandbox"?ze(r.nodes()[0].contentDocument.body):ze("body")).select(`[id="${t}"]`)},"getDiagramElement")});var _u,Cv=M(()=>{"use strict";_u=o(({flowchart:t})=>{let e=t?.subGraphTitleMargin?.top??0,r=t?.subGraphTitleMargin?.bottom??0,n=e+r;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:n}},"getSubGraphTitleMargins")});var KZ,A9e,_9e,L9e,D9e,N9e,R9e,QZ,mm,ZZ,K5=M(()=>{"use strict";Vt();fr();ht();Cv();mr();jt();Dl();w9();I5();zh();Xt();KZ=o(async(t,e)=>{Y.info("Creating subgraph rect for ",e.id,e);let r=de(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=et(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=xr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await Si(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0}),y=g.getBBox();if(xr(r.flowchart.htmlLabels)){let L=g.children[0],C=ze(g);y=L.getBoundingClientRect(),C.attr("width",y.width),C.attr("height",y.height)}let v=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(v-e.width)/2-e.padding:e.diff=-e.padding;let x=e.height,b=e.x-v/2,w=e.y-x/2;Y.trace("Data ",e,JSON.stringify(e));let _;if(e.look==="handDrawn"){let L=Ke.svg(d),C=Ze(e,{roughness:.7,fill:a,stroke:s,fillWeight:3,seed:i}),A=L.path(La(b,w,v,x,0),C);_=d.insert(()=>(Y.debug("Rough node insert CXC",A),A),":first-child"),_.select("path:nth-child(2)").attr("style",h.join(";")),_.select("path").attr("style",f.join(";").replace("fill","stroke"))}else _=d.insert("rect",":first-child"),_.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",w).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:T}=_u(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+T})`),l){let L=m.select("span");L&&L.attr("style",l)}let E=_.node().getBBox();return e.offsetX=0,e.width=E.width,e.height=E.height,e.offsetY=y.height-e.padding/2,e.intersect=function(L){return Oh(e,L)},{cluster:d,labelBBox:y}},"rect"),A9e=o((t,e)=>{let r=t.insert("g").attr("class","note-cluster").attr("id",e.id),n=r.insert("rect",":first-child"),i=0*e.padding,a=i/2;n.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-a).attr("y",e.y-e.height/2-a).attr("width",e.width+i).attr("height",e.height+i).attr("fill","none");let s=n.node().getBBox();return e.width=s.width,e.height=s.height,e.intersect=function(l){return Oh(e,l)},{cluster:r,labelBBox:{width:0,height:0}}},"noteGroup"),_9e=o(async(t,e)=>{let r=de(),{themeVariables:n,handDrawnSeed:i}=r,{altBackground:a,compositeBackground:s,compositeTitleBackground:l,nodeBorder:u}=n,h=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-id",e.id).attr("data-look",e.look),f=h.insert("g",":first-child"),d=h.insert("g").attr("class","cluster-label"),p=h.append("rect"),m=d.node().appendChild(await gc(e.label,e.labelStyle,void 0,!0)),g=m.getBBox();if(xr(r.flowchart.htmlLabels)){let A=m.children[0],I=ze(m);g=A.getBoundingClientRect(),I.attr("width",g.width),I.attr("height",g.height)}let y=0*e.padding,v=y/2,x=(e.width<=g.width+e.padding?g.width+e.padding:e.width)+y;e.width<=g.width+e.padding?e.diff=(x-e.width)/2-e.padding:e.diff=-e.padding;let b=e.height+y,w=e.height+y-g.height-6,_=e.x-x/2,T=e.y-b/2;e.width=x;let E=e.y-e.height/2-v+g.height+2,L;if(e.look==="handDrawn"){let A=e.cssClasses.includes("statediagram-cluster-alt"),I=Ke.svg(h),D=e.rx||e.ry?I.path(La(_,T,x,b,10),{roughness:.7,fill:l,fillStyle:"solid",stroke:u,seed:i}):I.rectangle(_,T,x,b,{seed:i});L=h.insert(()=>D,":first-child");let k=I.rectangle(_,E,x,w,{fill:A?a:s,fillStyle:A?"hachure":"solid",stroke:u,seed:i});L=h.insert(()=>D,":first-child"),p=h.insert(()=>k)}else L=f.insert("rect",":first-child"),L.attr("class","outer").attr("x",_).attr("y",T).attr("width",x).attr("height",b).attr("data-look",e.look),p.attr("class","inner").attr("x",_).attr("y",E).attr("width",x).attr("height",w);d.attr("transform",`translate(${e.x-g.width/2}, ${T+1-(xr(r.flowchart.htmlLabels)?0:3)})`);let C=L.node().getBBox();return e.height=C.height,e.offsetX=0,e.offsetY=g.height-e.padding/2,e.labelBBox=g,e.intersect=function(A){return Oh(e,A)},{cluster:h,labelBBox:g}},"roundedWithTitle"),L9e=o(async(t,e)=>{Y.info("Creating subgraph rect for ",e.id,e);let r=de(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=et(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=xr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await Si(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0,width:e.width}),y=g.getBBox();if(xr(r.flowchart.htmlLabels)){let L=g.children[0],C=ze(g);y=L.getBoundingClientRect(),C.attr("width",y.width),C.attr("height",y.height)}let v=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(v-e.width)/2-e.padding:e.diff=-e.padding;let x=e.height,b=e.x-v/2,w=e.y-x/2;Y.trace("Data ",e,JSON.stringify(e));let _;if(e.look==="handDrawn"){let L=Ke.svg(d),C=Ze(e,{roughness:.7,fill:a,stroke:s,fillWeight:4,seed:i}),A=L.path(La(b,w,v,x,e.rx),C);_=d.insert(()=>(Y.debug("Rough node insert CXC",A),A),":first-child"),_.select("path:nth-child(2)").attr("style",h.join(";")),_.select("path").attr("style",f.join(";").replace("fill","stroke"))}else _=d.insert("rect",":first-child"),_.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",w).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:T}=_u(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+T})`),l){let L=m.select("span");L&&L.attr("style",l)}let E=_.node().getBBox();return e.offsetX=0,e.width=E.width,e.height=E.height,e.offsetY=y.height-e.padding/2,e.intersect=function(L){return Oh(e,L)},{cluster:d,labelBBox:y}},"kanbanSection"),D9e=o((t,e)=>{let r=de(),{themeVariables:n,handDrawnSeed:i}=r,{nodeBorder:a}=n,s=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-look",e.look),l=s.insert("g",":first-child"),u=0*e.padding,h=e.width+u;e.diff=-e.padding;let f=e.height+u,d=e.x-h/2,p=e.y-f/2;e.width=h;let m;if(e.look==="handDrawn"){let v=Ke.svg(s).rectangle(d,p,h,f,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:a,seed:i});m=s.insert(()=>v,":first-child")}else m=l.insert("rect",":first-child"),m.attr("class","divider").attr("x",d).attr("y",p).attr("width",h).attr("height",f).attr("data-look",e.look);let g=m.node().getBBox();return e.height=g.height,e.offsetX=0,e.offsetY=0,e.intersect=function(y){return Oh(e,y)},{cluster:s,labelBBox:{}}},"divider"),N9e=KZ,R9e={rect:KZ,squareRect:N9e,roundedWithTitle:_9e,noteGroup:A9e,divider:D9e,kanbanSection:L9e},QZ=new Map,mm=o(async(t,e)=>{let r=e.shape||"rect",n=await R9e[r](t,e);return QZ.set(e.id,n),n},"insertCluster"),ZZ=o(()=>{QZ=new Map},"clear")});function Q5(t,e){if(t===void 0||e===void 0)return{angle:0,deltaX:0,deltaY:0};t=Un(t),e=Un(e);let[r,n]=[t.x,t.y],[i,a]=[e.x,e.y],s=i-r,l=a-n;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}var $o,Un,Z5,lL=M(()=>{"use strict";$o={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:4};o(Q5,"calculateDeltaAndAngle");Un=o(t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,"pointTransformer"),Z5=o(t=>({x:o(function(e,r,n){let i=0,a=Un(n[0]).x=0?1:-1)}else if(r===n.length-1&&Object.hasOwn($o,t.arrowTypeEnd)){let{angle:m,deltaX:g}=Q5(n[n.length-1],n[n.length-2]);i=$o[t.arrowTypeEnd]*Math.cos(m)*(g>=0?1:-1)}let s=Math.abs(Un(e).x-Un(n[n.length-1]).x),l=Math.abs(Un(e).y-Un(n[n.length-1]).y),u=Math.abs(Un(e).x-Un(n[0]).x),h=Math.abs(Un(e).y-Un(n[0]).y),f=$o[t.arrowTypeStart],d=$o[t.arrowTypeEnd],p=1;if(s0&&l0&&h=0?1:-1)}else if(r===n.length-1&&Object.hasOwn($o,t.arrowTypeEnd)){let{angle:m,deltaY:g}=Q5(n[n.length-1],n[n.length-2]);i=$o[t.arrowTypeEnd]*Math.abs(Math.sin(m))*(g>=0?1:-1)}let s=Math.abs(Un(e).y-Un(n[n.length-1]).y),l=Math.abs(Un(e).x-Un(n[n.length-1]).x),u=Math.abs(Un(e).y-Un(n[0]).y),h=Math.abs(Un(e).x-Un(n[0]).x),f=$o[t.arrowTypeStart],d=$o[t.arrowTypeEnd],p=1;if(s0&&l0&&h{"use strict";ht();eJ=o((t,e,r,n,i)=>{e.arrowTypeStart&&JZ(t,"start",e.arrowTypeStart,r,n,i),e.arrowTypeEnd&&JZ(t,"end",e.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),M9e={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},JZ=o((t,e,r,n,i,a)=>{let s=M9e[r];if(!s){Y.warn(`Unknown arrow type: ${r}`);return}let l=e==="start"?"Start":"End";t.attr(`marker-${e}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function J5(t,e){de().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}function P9e(t){let e=[],r=[];for(let n=1;n5&&Math.abs(a.y-i.y)>5||i.y===a.y&&a.x===s.x&&Math.abs(a.x-i.x)>5&&Math.abs(a.y-s.y)>5)&&(e.push(a),r.push(n))}return{cornerPoints:e,cornerPointPositions:r}}var ew,ua,iJ,Av,tw,rw,I9e,O9e,rJ,nJ,B9e,nw,cL=M(()=>{"use strict";Vt();fr();ht();Dl();hr();lL();Cv();mr();jt();I5();tJ();ew=new Map,ua=new Map,iJ=o(()=>{ew.clear(),ua.clear()},"clear"),Av=o(t=>t?t.reduce((r,n)=>r+";"+n,""):"","getLabelStyles"),tw=o(async(t,e)=>{let r=xr(de().flowchart.htmlLabels),n=await Si(t,e.label,{style:Av(e.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1});Y.info("abc82",e,e.labelType);let i=t.insert("g").attr("class","edgeLabel"),a=i.insert("g").attr("class","label");a.node().appendChild(n);let s=n.getBBox();if(r){let u=n.children[0],h=ze(n);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}a.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),ew.set(e.id,i),e.width=s.width,e.height=s.height;let l;if(e.startLabelLeft){let u=await gc(e.startLabelLeft,Av(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),ua.get(e.id)||ua.set(e.id,{}),ua.get(e.id).startLeft=h,J5(l,e.startLabelLeft)}if(e.startLabelRight){let u=await gc(e.startLabelRight,Av(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=h.node().appendChild(u),f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),ua.get(e.id)||ua.set(e.id,{}),ua.get(e.id).startRight=h,J5(l,e.startLabelRight)}if(e.endLabelLeft){let u=await gc(e.endLabelLeft,Av(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),h.node().appendChild(u),ua.get(e.id)||ua.set(e.id,{}),ua.get(e.id).endLeft=h,J5(l,e.endLabelLeft)}if(e.endLabelRight){let u=await gc(e.endLabelRight,Av(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),h.node().appendChild(u),ua.get(e.id)||ua.set(e.id,{}),ua.get(e.id).endRight=h,J5(l,e.endLabelRight)}return n},"insertEdgeLabel");o(J5,"setTerminalWidth");rw=o((t,e)=>{Y.debug("Moving label abc88 ",t.id,t.label,ew.get(t.id),e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=de(),{subGraphTitleTotalMargin:i}=_u(n);if(t.label){let a=ew.get(t.id),s=t.x,l=t.y;if(r){let u=Ut.calcLabelPosition(r);Y.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=ua.get(t.id).startLeft,s=t.x,l=t.y;if(r){let u=Ut.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=ua.get(t.id).startRight,s=t.x,l=t.y;if(r){let u=Ut.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=ua.get(t.id).endLeft,s=t.x,l=t.y;if(r){let u=Ut.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=ua.get(t.id).endRight,s=t.x,l=t.y;if(r){let u=Ut.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),I9e=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),O9e=o((t,e,r)=>{Y.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(e)} + insidePoint : ${JSON.stringify(r)} + node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.xMath.abs(n-e.x)*u){let d=r.y{Y.warn("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(Y.info("abc88 checking point",a,e),!I9e(e,a)&&!i){let s=O9e(e,n,a);Y.debug("abc88 inside",a,n,s),Y.debug("abc88 intersection",s,e);let l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)?Y.warn("abc88 no intersect",s,r):r.push(s),i=!0}else Y.warn("abc88 outside",a,n),n=a,i||r.push(a)}),Y.debug("returning points",r),r},"cutPathAtIntersect");o(P9e,"extractCornerPoints");nJ=o(function(t,e,r){let n=e.x-t.x,i=e.y-t.y,a=Math.sqrt(n*n+i*i),s=r/a;return{x:e.x-s*n,y:e.y-s*i}},"findAdjacentPoint"),B9e=o(function(t){let{cornerPointPositions:e}=P9e(t),r=[];for(let n=0;n10&&Math.abs(a.y-i.y)>=10){Y.debug("Corner point fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));let m=5;s.x===l.x?p={x:h<0?l.x-m+d:l.x+m-d,y:f<0?l.y-d:l.y+d}:p={x:h<0?l.x-d:l.x+d,y:f<0?l.y-m+d:l.y+m-d}}else Y.debug("Corner point skipping fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));r.push(p,u)}else r.push(t[n]);return r},"fixCorners"),nw=o(function(t,e,r,n,i,a,s){let{handDrawnSeed:l}=de(),u=e.points,h=!1,f=i;var d=a;d.intersect&&f.intersect&&(u=u.slice(1,e.points.length-1),u.unshift(f.intersect(u[0])),Y.debug("Last point APA12",e.start,"-->",e.end,u[u.length-1],d,d.intersect(u[u.length-1])),u.push(d.intersect(u[u.length-1]))),e.toCluster&&(Y.info("to cluster abc88",r.get(e.toCluster)),u=rJ(e.points,r.get(e.toCluster).node),h=!0),e.fromCluster&&(Y.debug("from cluster abc88",r.get(e.fromCluster),JSON.stringify(u,null,2)),u=rJ(u.reverse(),r.get(e.fromCluster).node).reverse(),h=!0);let p=u.filter(L=>!Number.isNaN(L.y));p=B9e(p);let m=Do;e.curve&&(m=e.curve);let{x:g,y}=Z5(e),v=Ka().x(g).y(y).curve(m),x;switch(e.thickness){case"normal":x="edge-thickness-normal";break;case"thick":x="edge-thickness-thick";break;case"invisible":x="edge-thickness-invisible";break;default:x="edge-thickness-normal"}switch(e.pattern){case"solid":x+=" edge-pattern-solid";break;case"dotted":x+=" edge-pattern-dotted";break;case"dashed":x+=" edge-pattern-dashed";break;default:x+=" edge-pattern-solid"}let b,w=v(p),_=Array.isArray(e.style)?e.style:[e.style];if(e.look==="handDrawn"){let L=Ke.svg(t);Object.assign([],p);let C=L.path(w,{roughness:.3,seed:l});x+=" transition",b=ze(C).select("path").attr("id",e.id).attr("class"," "+x+(e.classes?" "+e.classes:"")).attr("style",_?_.reduce((I,D)=>I+";"+D,""):"");let A=b.attr("d");b.attr("d",A),t.node().appendChild(b.node())}else b=t.append("path").attr("d",w).attr("id",e.id).attr("class"," "+x+(e.classes?" "+e.classes:"")).attr("style",_?_.reduce((L,C)=>L+";"+C,""):"");let T="";(de().flowchart.arrowMarkerAbsolute||de().state.arrowMarkerAbsolute)&&(T=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,T=T.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),Y.info("arrowTypeStart",e.arrowTypeStart),Y.info("arrowTypeEnd",e.arrowTypeEnd),eJ(b,e,T,s,n);let E={};return h&&(E.updatedPath=u),E.originalPath=e.points,E},"insertEdge")});var F9e,z9e,G9e,$9e,V9e,U9e,H9e,W9e,Y9e,q9e,X9e,iw,uL=M(()=>{"use strict";ht();F9e=o((t,e,r,n)=>{e.forEach(i=>{X9e[i](t,r,n)})},"insertMarkers"),z9e=o((t,e,r)=>{Y.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"),G9e=o((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"),$9e=o((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"),V9e=o((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"),U9e=o((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"),H9e=o((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"),W9e=o((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"),Y9e=o((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"),q9e=o((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"),X9e={extension:z9e,composition:G9e,aggregation:$9e,dependency:V9e,lollipop:U9e,point:H9e,circle:W9e,cross:Y9e,barb:q9e},iw=F9e});async function gm(t,e,r){let n,i;e.shape==="rect"&&(e.rx&&e.ry?e.shape="roundedRect":e.shape="squareRect");let a=e.shape?z9[e.shape]:void 0;if(!a)throw new Error(`No such shape: ${e.shape}. Please check your syntax.`);if(e.link){let s;r.config.securityLevel==="sandbox"?s="_top":e.linkTarget&&(s=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",s??null),i=await a(n,e,r)}else i=await a(t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),aw.set(e.id,n),e.haveCallback&&n.attr("class",n.attr("class")+" clickable"),n}var aw,aJ,sJ,_v,sw=M(()=>{"use strict";ht();G9();aw=new Map;o(gm,"insertNode");aJ=o((t,e)=>{aw.set(e.id,t)},"setNodeElem"),sJ=o(()=>{aw.clear()},"clear"),_v=o(t=>{let e=aw.get(t.id);Y.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});var oJ,lJ=M(()=>{"use strict";Ua();fr();ht();K5();cL();uL();sw();Ft();hr();oJ={common:je,getConfig:Sr,insertCluster:mm,insertEdge:nw,insertEdgeLabel:tw,insertMarkers:iw,insertNode:gm,interpolateToCurve:Q_,labelHelper:ot,log:Y,positionEdgeLabel:rw}});function K9e(t){return typeof t=="symbol"||Zn(t)&&ca(t)==j9e}var j9e,ro,Ld=M(()=>{"use strict";xu();Mo();j9e="[object Symbol]";o(K9e,"isSymbol");ro=K9e});function Q9e(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r{"use strict";o(Q9e,"arrayMap");As=Q9e});function hJ(t){if(typeof t=="string")return t;if(Mt(t))return As(t,hJ)+"";if(ro(t))return uJ?uJ.call(t):"";var e=t+"";return e=="0"&&1/t==-Z9e?"-0":e}var Z9e,cJ,uJ,fJ,dJ=M(()=>{"use strict";gd();Dd();Vn();Ld();Z9e=1/0,cJ=ea?ea.prototype:void 0,uJ=cJ?cJ.toString:void 0;o(hJ,"baseToString");fJ=hJ});function eLe(t){for(var e=t.length;e--&&J9e.test(t.charAt(e)););return e}var J9e,pJ,mJ=M(()=>{"use strict";J9e=/\s/;o(eLe,"trimmedEndIndex");pJ=eLe});function rLe(t){return t&&t.slice(0,pJ(t)+1).replace(tLe,"")}var tLe,gJ,yJ=M(()=>{"use strict";mJ();tLe=/^\s+/;o(rLe,"baseTrim");gJ=rLe});function oLe(t){if(typeof t=="number")return t;if(ro(t))return vJ;if(yn(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=yn(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=gJ(t);var r=iLe.test(t);return r||aLe.test(t)?sLe(t.slice(2),r?2:8):nLe.test(t)?vJ:+t}var vJ,nLe,iLe,aLe,sLe,xJ,bJ=M(()=>{"use strict";yJ();Qs();Ld();vJ=NaN,nLe=/^[-+]0x[0-9a-f]+$/i,iLe=/^0b[01]+$/i,aLe=/^0o[0-7]+$/i,sLe=parseInt;o(oLe,"toNumber");xJ=oLe});function cLe(t){if(!t)return t===0?t:0;if(t=xJ(t),t===wJ||t===-wJ){var e=t<0?-1:1;return e*lLe}return t===t?t:0}var wJ,lLe,ym,hL=M(()=>{"use strict";bJ();wJ=1/0,lLe=17976931348623157e292;o(cLe,"toFinite");ym=cLe});function uLe(t){var e=ym(t),r=e%1;return e===e?r?e-r:e:0}var vc,vm=M(()=>{"use strict";hL();o(uLe,"toInteger");vc=uLe});var hLe,ow,TJ=M(()=>{"use strict";Ch();No();hLe=vs(ai,"WeakMap"),ow=hLe});function fLe(){}var Jn,fL=M(()=>{"use strict";o(fLe,"noop");Jn=fLe});function dLe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(dLe,"arrayEach");lw=dLe});function pLe(t,e,r,n){for(var i=t.length,a=r+(n?1:-1);n?a--:++a{"use strict";o(pLe,"baseFindIndex");cw=pLe});function mLe(t){return t!==t}var kJ,EJ=M(()=>{"use strict";o(mLe,"baseIsNaN");kJ=mLe});function gLe(t,e,r){for(var n=r-1,i=t.length;++n{"use strict";o(gLe,"strictIndexOf");SJ=gLe});function yLe(t,e,r){return e===e?SJ(t,e,r):cw(t,kJ,r)}var xm,uw=M(()=>{"use strict";pL();EJ();CJ();o(yLe,"baseIndexOf");xm=yLe});function vLe(t,e){var r=t==null?0:t.length;return!!r&&xm(t,e,0)>-1}var hw,mL=M(()=>{"use strict";uw();o(vLe,"arrayIncludes");hw=vLe});var xLe,AJ,_J=M(()=>{"use strict";F_();xLe=n5(Object.keys,Object),AJ=xLe});function TLe(t){if(!fc(t))return AJ(t);var e=[];for(var r in Object(t))wLe.call(t,r)&&r!="constructor"&&e.push(r);return e}var bLe,wLe,bm,fw=M(()=>{"use strict";Kp();_J();bLe=Object.prototype,wLe=bLe.hasOwnProperty;o(TLe,"baseKeys");bm=TLe});function kLe(t){return si(t)?l5(t):bm(t)}var zr,xc=M(()=>{"use strict";U_();fw();Io();o(kLe,"keys");zr=kLe});var ELe,SLe,CLe,ha,LJ=M(()=>{"use strict";em();wd();q_();Io();Kp();xc();ELe=Object.prototype,SLe=ELe.hasOwnProperty,CLe=h5(function(t,e){if(fc(e)||si(e)){Bo(e,zr(e),t);return}for(var r in e)SLe.call(e,r)&&dc(t,r,e[r])}),ha=CLe});function LLe(t,e){if(Mt(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||ro(t)?!0:_Le.test(t)||!ALe.test(t)||e!=null&&t in Object(e)}var ALe,_Le,wm,dw=M(()=>{"use strict";Vn();Ld();ALe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,_Le=/^\w*$/;o(LLe,"isKey");wm=LLe});function NLe(t){var e=Vp(t,function(n){return r.size===DLe&&r.clear(),n}),r=e.cache;return e}var DLe,DJ,NJ=M(()=>{"use strict";N_();DLe=500;o(NLe,"memoizeCapped");DJ=NLe});var RLe,MLe,ILe,RJ,MJ=M(()=>{"use strict";NJ();RLe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,MLe=/\\(\\)?/g,ILe=DJ(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(RLe,function(r,n,i,a){e.push(i?a.replace(MLe,"$1"):n||r)}),e}),RJ=ILe});function OLe(t){return t==null?"":fJ(t)}var pw,gL=M(()=>{"use strict";dJ();o(OLe,"toString");pw=OLe});function PLe(t,e){return Mt(t)?t:wm(t,e)?[t]:RJ(pw(t))}var Uh,Lv=M(()=>{"use strict";Vn();dw();MJ();gL();o(PLe,"castPath");Uh=PLe});function FLe(t){if(typeof t=="string"||ro(t))return t;var e=t+"";return e=="0"&&1/t==-BLe?"-0":e}var BLe,bc,Tm=M(()=>{"use strict";Ld();BLe=1/0;o(FLe,"toKey");bc=FLe});function zLe(t,e){e=Uh(e,t);for(var r=0,n=e.length;t!=null&&r{"use strict";Lv();Tm();o(zLe,"baseGet");Hh=zLe});function GLe(t,e,r){var n=t==null?void 0:Hh(t,e);return n===void 0?r:n}var IJ,OJ=M(()=>{"use strict";Dv();o(GLe,"get");IJ=GLe});function $Le(t,e){for(var r=-1,n=e.length,i=t.length;++r{"use strict";o($Le,"arrayPush");km=$Le});function VLe(t){return Mt(t)||Al(t)||!!(PJ&&t&&t[PJ])}var PJ,BJ,FJ=M(()=>{"use strict";gd();Qp();Vn();PJ=ea?ea.isConcatSpreadable:void 0;o(VLe,"isFlattenable");BJ=VLe});function zJ(t,e,r,n,i){var a=-1,s=t.length;for(r||(r=BJ),i||(i=[]);++a0&&r(l)?e>1?zJ(l,e-1,r,n,i):km(i,l):n||(i[i.length]=l)}return i}var wc,Em=M(()=>{"use strict";mw();FJ();o(zJ,"baseFlatten");wc=zJ});function ULe(t){var e=t==null?0:t.length;return e?wc(t,1):[]}var Wr,gw=M(()=>{"use strict";Em();o(ULe,"flatten");Wr=ULe});function HLe(t){return u5(c5(t,void 0,Wr),t+"")}var GJ,$J=M(()=>{"use strict";gw();H_();Y_();o(HLe,"flatRest");GJ=HLe});function WLe(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),r=r>i?i:r,r<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var a=Array(i);++n{"use strict";o(WLe,"baseSlice");yw=WLe});function eDe(t){return JLe.test(t)}var YLe,qLe,XLe,jLe,KLe,QLe,ZLe,JLe,VJ,UJ=M(()=>{"use strict";YLe="\\ud800-\\udfff",qLe="\\u0300-\\u036f",XLe="\\ufe20-\\ufe2f",jLe="\\u20d0-\\u20ff",KLe=qLe+XLe+jLe,QLe="\\ufe0e\\ufe0f",ZLe="\\u200d",JLe=RegExp("["+ZLe+YLe+KLe+QLe+"]");o(eDe,"hasUnicode");VJ=eDe});function tDe(t,e,r,n){var i=-1,a=t==null?0:t.length;for(n&&a&&(r=t[++i]);++i{"use strict";o(tDe,"arrayReduce");HJ=tDe});function rDe(t,e){return t&&Bo(e,zr(e),t)}var YJ,qJ=M(()=>{"use strict";wd();xc();o(rDe,"baseAssign");YJ=rDe});function nDe(t,e){return t&&Bo(e,xs(e),t)}var XJ,jJ=M(()=>{"use strict";wd();Mh();o(nDe,"baseAssignIn");XJ=nDe});function iDe(t,e){for(var r=-1,n=t==null?0:t.length,i=0,a=[];++r{"use strict";o(iDe,"arrayFilter");Sm=iDe});function aDe(){return[]}var xw,vL=M(()=>{"use strict";o(aDe,"stubArray");xw=aDe});var sDe,oDe,KJ,lDe,Cm,bw=M(()=>{"use strict";vw();vL();sDe=Object.prototype,oDe=sDe.propertyIsEnumerable,KJ=Object.getOwnPropertySymbols,lDe=KJ?function(t){return t==null?[]:(t=Object(t),Sm(KJ(t),function(e){return oDe.call(t,e)}))}:xw,Cm=lDe});function cDe(t,e){return Bo(t,Cm(t),e)}var QJ,ZJ=M(()=>{"use strict";wd();bw();o(cDe,"copySymbols");QJ=cDe});var uDe,hDe,ww,xL=M(()=>{"use strict";mw();i5();bw();vL();uDe=Object.getOwnPropertySymbols,hDe=uDe?function(t){for(var e=[];t;)km(e,Cm(t)),t=jp(t);return e}:xw,ww=hDe});function fDe(t,e){return Bo(t,ww(t),e)}var JJ,eee=M(()=>{"use strict";wd();xL();o(fDe,"copySymbolsIn");JJ=fDe});function dDe(t,e,r){var n=e(t);return Mt(t)?n:km(n,r(t))}var Tw,bL=M(()=>{"use strict";mw();Vn();o(dDe,"baseGetAllKeys");Tw=dDe});function pDe(t){return Tw(t,zr,Cm)}var Nv,wL=M(()=>{"use strict";bL();bw();xc();o(pDe,"getAllKeys");Nv=pDe});function mDe(t){return Tw(t,xs,ww)}var kw,TL=M(()=>{"use strict";bL();xL();Mh();o(mDe,"getAllKeysIn");kw=mDe});var gDe,Ew,tee=M(()=>{"use strict";Ch();No();gDe=vs(ai,"DataView"),Ew=gDe});var yDe,Sw,ree=M(()=>{"use strict";Ch();No();yDe=vs(ai,"Promise"),Sw=yDe});var vDe,Wh,kL=M(()=>{"use strict";Ch();No();vDe=vs(ai,"Set"),Wh=vDe});var nee,xDe,iee,aee,see,oee,bDe,wDe,TDe,kDe,EDe,Nd,no,Rd=M(()=>{"use strict";tee();K3();ree();kL();TJ();xu();__();nee="[object Map]",xDe="[object Object]",iee="[object Promise]",aee="[object Set]",see="[object WeakMap]",oee="[object DataView]",bDe=bu(Ew),wDe=bu(Lh),TDe=bu(Sw),kDe=bu(Wh),EDe=bu(ow),Nd=ca;(Ew&&Nd(new Ew(new ArrayBuffer(1)))!=oee||Lh&&Nd(new Lh)!=nee||Sw&&Nd(Sw.resolve())!=iee||Wh&&Nd(new Wh)!=aee||ow&&Nd(new ow)!=see)&&(Nd=o(function(t){var e=ca(t),r=e==xDe?t.constructor:void 0,n=r?bu(r):"";if(n)switch(n){case bDe:return oee;case wDe:return nee;case TDe:return iee;case kDe:return aee;case EDe:return see}return e},"getTag"));no=Nd});function ADe(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&CDe.call(t,"index")&&(r.index=t.index,r.input=t.input),r}var SDe,CDe,lee,cee=M(()=>{"use strict";SDe=Object.prototype,CDe=SDe.hasOwnProperty;o(ADe,"initCloneArray");lee=ADe});function _De(t,e){var r=e?Xp(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var uee,hee=M(()=>{"use strict";e5();o(_De,"cloneDataView");uee=_De});function DDe(t){var e=new t.constructor(t.source,LDe.exec(t));return e.lastIndex=t.lastIndex,e}var LDe,fee,dee=M(()=>{"use strict";LDe=/\w*$/;o(DDe,"cloneRegExp");fee=DDe});function NDe(t){return mee?Object(mee.call(t)):{}}var pee,mee,gee,yee=M(()=>{"use strict";gd();pee=ea?ea.prototype:void 0,mee=pee?pee.valueOf:void 0;o(NDe,"cloneSymbol");gee=NDe});function QDe(t,e,r){var n=t.constructor;switch(e){case GDe:return Xp(t);case RDe:case MDe:return new n(+t);case $De:return uee(t,r);case VDe:case UDe:case HDe:case WDe:case YDe:case qDe:case XDe:case jDe:case KDe:return t5(t,r);case IDe:return new n;case ODe:case FDe:return new n(t);case PDe:return fee(t);case BDe:return new n;case zDe:return gee(t)}}var RDe,MDe,IDe,ODe,PDe,BDe,FDe,zDe,GDe,$De,VDe,UDe,HDe,WDe,YDe,qDe,XDe,jDe,KDe,vee,xee=M(()=>{"use strict";e5();hee();dee();yee();P_();RDe="[object Boolean]",MDe="[object Date]",IDe="[object Map]",ODe="[object Number]",PDe="[object RegExp]",BDe="[object Set]",FDe="[object String]",zDe="[object Symbol]",GDe="[object ArrayBuffer]",$De="[object DataView]",VDe="[object Float32Array]",UDe="[object Float64Array]",HDe="[object Int8Array]",WDe="[object Int16Array]",YDe="[object Int32Array]",qDe="[object Uint8Array]",XDe="[object Uint8ClampedArray]",jDe="[object Uint16Array]",KDe="[object Uint32Array]";o(QDe,"initCloneByTag");vee=QDe});function JDe(t){return Zn(t)&&no(t)==ZDe}var ZDe,bee,wee=M(()=>{"use strict";Rd();Mo();ZDe="[object Map]";o(JDe,"baseIsMap");bee=JDe});var Tee,eNe,kee,Eee=M(()=>{"use strict";wee();bd();nv();Tee=Po&&Po.isMap,eNe=Tee?Oo(Tee):bee,kee=eNe});function rNe(t){return Zn(t)&&no(t)==tNe}var tNe,See,Cee=M(()=>{"use strict";Rd();Mo();tNe="[object Set]";o(rNe,"baseIsSet");See=rNe});var Aee,nNe,_ee,Lee=M(()=>{"use strict";Cee();bd();nv();Aee=Po&&Po.isSet,nNe=Aee?Oo(Aee):See,_ee=nNe});function Cw(t,e,r,n,i,a){var s,l=e&iNe,u=e&aNe,h=e&sNe;if(r&&(s=i?r(t,n,i,a):r(t)),s!==void 0)return s;if(!yn(t))return t;var f=Mt(t);if(f){if(s=lee(t),!l)return r5(t,s)}else{var d=no(t),p=d==Nee||d==hNe;if(_l(t))return J3(t,l);if(d==Ree||d==Dee||p&&!i){if(s=u||p?{}:a5(t),!l)return u?JJ(t,XJ(s,t)):QJ(t,YJ(s,t))}else{if(!Sn[d])return i?t:{};s=vee(t,d,l)}}a||(a=new uc);var m=a.get(t);if(m)return m;a.set(t,s),_ee(t)?t.forEach(function(v){s.add(Cw(v,e,r,v,t,a))}):kee(t)&&t.forEach(function(v,x){s.set(x,Cw(v,e,r,x,t,a))});var g=h?u?kw:Nv:u?xs:zr,y=f?void 0:g(t);return lw(y||t,function(v,x){y&&(x=v,v=t[x]),dc(s,x,Cw(v,e,r,x,t,a))}),s}var iNe,aNe,sNe,Dee,oNe,lNe,cNe,uNe,Nee,hNe,fNe,dNe,Ree,pNe,mNe,gNe,yNe,vNe,xNe,bNe,wNe,TNe,kNe,ENe,SNe,CNe,ANe,_Ne,LNe,Sn,Aw,EL=M(()=>{"use strict";ev();dL();em();qJ();jJ();I_();B_();ZJ();eee();wL();TL();Rd();cee();xee();z_();Vn();Jp();Eee();Qs();Lee();xc();Mh();iNe=1,aNe=2,sNe=4,Dee="[object Arguments]",oNe="[object Array]",lNe="[object Boolean]",cNe="[object Date]",uNe="[object Error]",Nee="[object Function]",hNe="[object GeneratorFunction]",fNe="[object Map]",dNe="[object Number]",Ree="[object Object]",pNe="[object RegExp]",mNe="[object Set]",gNe="[object String]",yNe="[object Symbol]",vNe="[object WeakMap]",xNe="[object ArrayBuffer]",bNe="[object DataView]",wNe="[object Float32Array]",TNe="[object Float64Array]",kNe="[object Int8Array]",ENe="[object Int16Array]",SNe="[object Int32Array]",CNe="[object Uint8Array]",ANe="[object Uint8ClampedArray]",_Ne="[object Uint16Array]",LNe="[object Uint32Array]",Sn={};Sn[Dee]=Sn[oNe]=Sn[xNe]=Sn[bNe]=Sn[lNe]=Sn[cNe]=Sn[wNe]=Sn[TNe]=Sn[kNe]=Sn[ENe]=Sn[SNe]=Sn[fNe]=Sn[dNe]=Sn[Ree]=Sn[pNe]=Sn[mNe]=Sn[gNe]=Sn[yNe]=Sn[CNe]=Sn[ANe]=Sn[_Ne]=Sn[LNe]=!0;Sn[uNe]=Sn[Nee]=Sn[vNe]=!1;o(Cw,"baseClone");Aw=Cw});function NNe(t){return Aw(t,DNe)}var DNe,rn,SL=M(()=>{"use strict";EL();DNe=4;o(NNe,"clone");rn=NNe});function INe(t){return Aw(t,RNe|MNe)}var RNe,MNe,CL,Mee=M(()=>{"use strict";EL();RNe=1,MNe=4;o(INe,"cloneDeep");CL=INe});function ONe(t){for(var e=-1,r=t==null?0:t.length,n=0,i=[];++e{"use strict";o(ONe,"compact");Tc=ONe});function BNe(t){return this.__data__.set(t,PNe),this}var PNe,Oee,Pee=M(()=>{"use strict";PNe="__lodash_hash_undefined__";o(BNe,"setCacheAdd");Oee=BNe});function FNe(t){return this.__data__.has(t)}var Bee,Fee=M(()=>{"use strict";o(FNe,"setCacheHas");Bee=FNe});function _w(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new vd;++e{"use strict";Q3();Pee();Fee();o(_w,"SetCache");_w.prototype.add=_w.prototype.push=Oee;_w.prototype.has=Bee;Am=_w});function zNe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(zNe,"arraySome");Dw=zNe});function GNe(t,e){return t.has(e)}var _m,Nw=M(()=>{"use strict";o(GNe,"cacheHas");_m=GNe});function UNe(t,e,r,n,i,a){var s=r&$Ne,l=t.length,u=e.length;if(l!=u&&!(s&&u>l))return!1;var h=a.get(t),f=a.get(e);if(h&&f)return h==e&&f==t;var d=-1,p=!0,m=r&VNe?new Am:void 0;for(a.set(t,e),a.set(e,t);++d{"use strict";Lw();AL();Nw();$Ne=1,VNe=2;o(UNe,"equalArrays");Rw=UNe});function HNe(t){var e=-1,r=Array(t.size);return t.forEach(function(n,i){r[++e]=[i,n]}),r}var zee,Gee=M(()=>{"use strict";o(HNe,"mapToArray");zee=HNe});function WNe(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}var Lm,Mw=M(()=>{"use strict";o(WNe,"setToArray");Lm=WNe});function aRe(t,e,r,n,i,a,s){switch(r){case iRe:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case nRe:return!(t.byteLength!=e.byteLength||!a(new qp(t),new qp(e)));case XNe:case jNe:case ZNe:return Ro(+t,+e);case KNe:return t.name==e.name&&t.message==e.message;case JNe:case tRe:return t==e+"";case QNe:var l=zee;case eRe:var u=n&YNe;if(l||(l=Lm),t.size!=e.size&&!u)return!1;var h=s.get(t);if(h)return h==e;n|=qNe,s.set(t,e);var f=Rw(l(t),l(e),n,i,a,s);return s.delete(t),f;case rRe:if(LL)return LL.call(t)==LL.call(e)}return!1}var YNe,qNe,XNe,jNe,KNe,QNe,ZNe,JNe,eRe,tRe,rRe,nRe,iRe,$ee,LL,Vee,Uee=M(()=>{"use strict";gd();O_();yd();_L();Gee();Mw();YNe=1,qNe=2,XNe="[object Boolean]",jNe="[object Date]",KNe="[object Error]",QNe="[object Map]",ZNe="[object Number]",JNe="[object RegExp]",eRe="[object Set]",tRe="[object String]",rRe="[object Symbol]",nRe="[object ArrayBuffer]",iRe="[object DataView]",$ee=ea?ea.prototype:void 0,LL=$ee?$ee.valueOf:void 0;o(aRe,"equalByTag");Vee=aRe});function cRe(t,e,r,n,i,a){var s=r&sRe,l=Nv(t),u=l.length,h=Nv(e),f=h.length;if(u!=f&&!s)return!1;for(var d=u;d--;){var p=l[d];if(!(s?p in e:lRe.call(e,p)))return!1}var m=a.get(t),g=a.get(e);if(m&&g)return m==e&&g==t;var y=!0;a.set(t,e),a.set(e,t);for(var v=s;++d{"use strict";wL();sRe=1,oRe=Object.prototype,lRe=oRe.hasOwnProperty;o(cRe,"equalObjects");Hee=cRe});function fRe(t,e,r,n,i,a){var s=Mt(t),l=Mt(e),u=s?qee:no(t),h=l?qee:no(e);u=u==Yee?Iw:u,h=h==Yee?Iw:h;var f=u==Iw,d=h==Iw,p=u==h;if(p&&_l(t)){if(!_l(e))return!1;s=!0,f=!1}if(p&&!f)return a||(a=new uc),s||Nh(t)?Rw(t,e,r,n,i,a):Vee(t,e,u,r,n,i,a);if(!(r&uRe)){var m=f&&Xee.call(t,"__wrapped__"),g=d&&Xee.call(e,"__wrapped__");if(m||g){var y=m?t.value():t,v=g?e.value():e;return a||(a=new uc),i(y,v,r,n,a)}}return p?(a||(a=new uc),Hee(t,e,r,n,i,a)):!1}var uRe,Yee,qee,Iw,hRe,Xee,jee,Kee=M(()=>{"use strict";ev();_L();Uee();Wee();Rd();Vn();Jp();iv();uRe=1,Yee="[object Arguments]",qee="[object Array]",Iw="[object Object]",hRe=Object.prototype,Xee=hRe.hasOwnProperty;o(fRe,"baseIsEqualDeep");jee=fRe});function Qee(t,e,r,n,i){return t===e?!0:t==null||e==null||!Zn(t)&&!Zn(e)?t!==t&&e!==e:jee(t,e,r,n,Qee,i)}var Ow,DL=M(()=>{"use strict";Kee();Mo();o(Qee,"baseIsEqual");Ow=Qee});function mRe(t,e,r,n){var i=r.length,a=i,s=!n;if(t==null)return!a;for(t=Object(t);i--;){var l=r[i];if(s&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++i{"use strict";ev();DL();dRe=1,pRe=2;o(mRe,"baseIsMatch");Zee=mRe});function gRe(t){return t===t&&!yn(t)}var Pw,NL=M(()=>{"use strict";Qs();o(gRe,"isStrictComparable");Pw=gRe});function yRe(t){for(var e=zr(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,Pw(i)]}return e}var ete,tte=M(()=>{"use strict";NL();xc();o(yRe,"getMatchData");ete=yRe});function vRe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}var Bw,RL=M(()=>{"use strict";o(vRe,"matchesStrictComparable");Bw=vRe});function xRe(t){var e=ete(t);return e.length==1&&e[0][2]?Bw(e[0][0],e[0][1]):function(r){return r===t||Zee(r,t,e)}}var rte,nte=M(()=>{"use strict";Jee();tte();RL();o(xRe,"baseMatches");rte=xRe});function bRe(t,e){return t!=null&&e in Object(t)}var ite,ate=M(()=>{"use strict";o(bRe,"baseHasIn");ite=bRe});function wRe(t,e,r){e=Uh(e,t);for(var n=-1,i=e.length,a=!1;++n{"use strict";Lv();Qp();Vn();sv();s5();Tm();o(wRe,"hasPath");Fw=wRe});function TRe(t,e){return t!=null&&Fw(t,e,ite)}var zw,IL=M(()=>{"use strict";ate();ML();o(TRe,"hasIn");zw=TRe});function SRe(t,e){return wm(t)&&Pw(e)?Bw(bc(t),e):function(r){var n=IJ(r,t);return n===void 0&&n===e?zw(r,t):Ow(e,n,kRe|ERe)}}var kRe,ERe,ste,ote=M(()=>{"use strict";DL();OJ();IL();dw();NL();RL();Tm();kRe=1,ERe=2;o(SRe,"baseMatchesProperty");ste=SRe});function CRe(t){return function(e){return e?.[t]}}var Gw,OL=M(()=>{"use strict";o(CRe,"baseProperty");Gw=CRe});function ARe(t){return function(e){return Hh(e,t)}}var lte,cte=M(()=>{"use strict";Dv();o(ARe,"basePropertyDeep");lte=ARe});function _Re(t){return wm(t)?Gw(bc(t)):lte(t)}var ute,hte=M(()=>{"use strict";OL();cte();dw();Tm();o(_Re,"property");ute=_Re});function LRe(t){return typeof t=="function"?t:t==null?ta:typeof t=="object"?Mt(t)?ste(t[0],t[1]):rte(t):ute(t)}var dn,Qa=M(()=>{"use strict";nte();ote();Tu();Vn();hte();o(LRe,"baseIteratee");dn=LRe});function DRe(t,e,r,n){for(var i=-1,a=t==null?0:t.length;++i{"use strict";o(DRe,"arrayAggregator");fte=DRe});function NRe(t,e){return t&&Yp(t,e,zr)}var Dm,$w=M(()=>{"use strict";Z3();xc();o(NRe,"baseForOwn");Dm=NRe});function RRe(t,e){return function(r,n){if(r==null)return r;if(!si(r))return t(r,n);for(var i=r.length,a=e?i:-1,s=Object(r);(e?a--:++a{"use strict";Io();o(RRe,"createBaseEach");pte=RRe});var MRe,_s,Yh=M(()=>{"use strict";$w();mte();MRe=pte(Dm),_s=MRe});function IRe(t,e,r,n){return _s(t,function(i,a,s){e(n,i,r(i),s)}),n}var gte,yte=M(()=>{"use strict";Yh();o(IRe,"baseAggregator");gte=IRe});function ORe(t,e){return function(r,n){var i=Mt(r)?fte:gte,a=e?e():{};return i(r,t,dn(n,2),a)}}var vte,xte=M(()=>{"use strict";dte();yte();Qa();Vn();o(ORe,"createAggregator");vte=ORe});var PRe,Vw,bte=M(()=>{"use strict";No();PRe=o(function(){return ai.Date.now()},"now"),Vw=PRe});var wte,BRe,FRe,qh,Tte=M(()=>{"use strict";tm();yd();Td();Mh();wte=Object.prototype,BRe=wte.hasOwnProperty,FRe=pc(function(t,e){t=Object(t);var r=-1,n=e.length,i=n>2?e[2]:void 0;for(i&&Zs(e[0],e[1],i)&&(n=1);++r{"use strict";o(zRe,"arrayIncludesWith");Uw=zRe});function $Re(t,e,r,n){var i=-1,a=hw,s=!0,l=t.length,u=[],h=e.length;if(!l)return u;r&&(e=As(e,Oo(r))),n?(a=Uw,s=!1):e.length>=GRe&&(a=_m,s=!1,e=new Am(e));e:for(;++i{"use strict";Lw();mL();PL();Dd();bd();Nw();GRe=200;o($Re,"baseDifference");kte=$Re});var VRe,Xh,Ste=M(()=>{"use strict";Ete();Em();tm();o5();VRe=pc(function(t,e){return xd(t)?kte(t,wc(e,1,xd,!0)):[]}),Xh=VRe});function URe(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}var fa,Cte=M(()=>{"use strict";o(URe,"last");fa=URe});function HRe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:vc(e),yw(t,e<0?0:e,n)):[]}var mi,Ate=M(()=>{"use strict";yL();vm();o(HRe,"drop");mi=HRe});function WRe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:vc(e),e=n-e,yw(t,0,e<0?0:e)):[]}var Lu,_te=M(()=>{"use strict";yL();vm();o(WRe,"dropRight");Lu=WRe});function YRe(t){return typeof t=="function"?t:ta}var Nm,Hw=M(()=>{"use strict";Tu();o(YRe,"castFunction");Nm=YRe});function qRe(t,e){var r=Mt(t)?lw:_s;return r(t,Nm(e))}var Ce,Ww=M(()=>{"use strict";dL();Yh();Hw();Vn();o(qRe,"forEach");Ce=qRe});var Lte=M(()=>{"use strict";Ww()});function XRe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(XRe,"arrayEvery");Dte=XRe});function jRe(t,e){var r=!0;return _s(t,function(n,i,a){return r=!!e(n,i,a),r}),r}var Rte,Mte=M(()=>{"use strict";Yh();o(jRe,"baseEvery");Rte=jRe});function KRe(t,e,r){var n=Mt(t)?Dte:Rte;return r&&Zs(t,e,r)&&(e=void 0),n(t,dn(e,3))}var Ra,Ite=M(()=>{"use strict";Nte();Mte();Qa();Vn();Td();o(KRe,"every");Ra=KRe});function QRe(t,e){var r=[];return _s(t,function(n,i,a){e(n,i,a)&&r.push(n)}),r}var Yw,BL=M(()=>{"use strict";Yh();o(QRe,"baseFilter");Yw=QRe});function ZRe(t,e){var r=Mt(t)?Sm:Yw;return r(t,dn(e,3))}var Yr,FL=M(()=>{"use strict";vw();BL();Qa();Vn();o(ZRe,"filter");Yr=ZRe});function JRe(t){return function(e,r,n){var i=Object(e);if(!si(e)){var a=dn(r,3);e=zr(e),r=o(function(l){return a(i[l],l,i)},"predicate")}var s=t(e,r,n);return s>-1?i[a?e[s]:s]:void 0}}var Ote,Pte=M(()=>{"use strict";Qa();Io();xc();o(JRe,"createFind");Ote=JRe});function tMe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:vc(r);return i<0&&(i=eMe(n+i,0)),cw(t,dn(e,3),i)}var eMe,Bte,Fte=M(()=>{"use strict";pL();Qa();vm();eMe=Math.max;o(tMe,"findIndex");Bte=tMe});var rMe,Za,zte=M(()=>{"use strict";Pte();Fte();rMe=Ote(Bte),Za=rMe});function nMe(t){return t&&t.length?t[0]:void 0}var ra,Gte=M(()=>{"use strict";o(nMe,"head");ra=nMe});var $te=M(()=>{"use strict";Gte()});function iMe(t,e){var r=-1,n=si(t)?Array(t.length):[];return _s(t,function(i,a,s){n[++r]=e(i,a,s)}),n}var qw,zL=M(()=>{"use strict";Yh();Io();o(iMe,"baseMap");qw=iMe});function aMe(t,e){var r=Mt(t)?As:qw;return r(t,dn(e,3))}var Je,Rm=M(()=>{"use strict";Dd();Qa();zL();Vn();o(aMe,"map");Je=aMe});function sMe(t,e){return wc(Je(t,e),1)}var da,GL=M(()=>{"use strict";Em();Rm();o(sMe,"flatMap");da=sMe});function oMe(t,e){return t==null?t:Yp(t,Nm(e),xs)}var $L,Vte=M(()=>{"use strict";Z3();Hw();Mh();o(oMe,"forIn");$L=oMe});function lMe(t,e){return t&&Dm(t,Nm(e))}var VL,Ute=M(()=>{"use strict";$w();Hw();o(lMe,"forOwn");VL=lMe});var cMe,uMe,hMe,UL,Hte=M(()=>{"use strict";Wp();xte();cMe=Object.prototype,uMe=cMe.hasOwnProperty,hMe=vte(function(t,e,r){uMe.call(t,r)?t[r].push(e):hc(t,r,[e])}),UL=hMe});function fMe(t,e){return t>e}var Wte,Yte=M(()=>{"use strict";o(fMe,"baseGt");Wte=fMe});function mMe(t,e){return t!=null&&pMe.call(t,e)}var dMe,pMe,qte,Xte=M(()=>{"use strict";dMe=Object.prototype,pMe=dMe.hasOwnProperty;o(mMe,"baseHas");qte=mMe});function gMe(t,e){return t!=null&&Fw(t,e,qte)}var It,jte=M(()=>{"use strict";Xte();ML();o(gMe,"has");It=gMe});function vMe(t){return typeof t=="string"||!Mt(t)&&Zn(t)&&ca(t)==yMe}var yMe,gi,Xw=M(()=>{"use strict";xu();Vn();Mo();yMe="[object String]";o(vMe,"isString");gi=vMe});function xMe(t,e){return As(e,function(r){return t[r]})}var Kte,Qte=M(()=>{"use strict";Dd();o(xMe,"baseValues");Kte=xMe});function bMe(t){return t==null?[]:Kte(t,zr(t))}var br,HL=M(()=>{"use strict";Qte();xc();o(bMe,"values");br=bMe});function TMe(t,e,r,n){t=si(t)?t:br(t),r=r&&!n?vc(r):0;var i=t.length;return r<0&&(r=wMe(i+r,0)),gi(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&xm(t,e,r)>-1}var wMe,Hn,Zte=M(()=>{"use strict";uw();Io();Xw();vm();HL();wMe=Math.max;o(TMe,"includes");Hn=TMe});function EMe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:vc(r);return i<0&&(i=kMe(n+i,0)),xm(t,e,i)}var kMe,jw,Jte=M(()=>{"use strict";uw();vm();kMe=Math.max;o(EMe,"indexOf");jw=EMe});function LMe(t){if(t==null)return!0;if(si(t)&&(Mt(t)||typeof t=="string"||typeof t.splice=="function"||_l(t)||Nh(t)||Al(t)))return!t.length;var e=no(t);if(e==SMe||e==CMe)return!t.size;if(fc(t))return!bm(t).length;for(var r in t)if(_Me.call(t,r))return!1;return!0}var SMe,CMe,AMe,_Me,cr,Kw=M(()=>{"use strict";fw();Rd();Qp();Vn();Io();Jp();Kp();iv();SMe="[object Map]",CMe="[object Set]",AMe=Object.prototype,_Me=AMe.hasOwnProperty;o(LMe,"isEmpty");cr=LMe});function NMe(t){return Zn(t)&&ca(t)==DMe}var DMe,ere,tre=M(()=>{"use strict";xu();Mo();DMe="[object RegExp]";o(NMe,"baseIsRegExp");ere=NMe});var rre,RMe,Vo,nre=M(()=>{"use strict";tre();bd();nv();rre=Po&&Po.isRegExp,RMe=rre?Oo(rre):ere,Vo=RMe});function MMe(t){return t===void 0}var dr,ire=M(()=>{"use strict";o(MMe,"isUndefined");dr=MMe});function IMe(t,e){return t{"use strict";o(IMe,"baseLt");Qw=IMe});function OMe(t,e){var r={};return e=dn(e,3),Dm(t,function(n,i,a){hc(r,i,e(n,i,a))}),r}var Md,are=M(()=>{"use strict";Wp();$w();Qa();o(OMe,"mapValues");Md=OMe});function PMe(t,e,r){for(var n=-1,i=t.length;++n{"use strict";Ld();o(PMe,"baseExtremum");Mm=PMe});function BMe(t){return t&&t.length?Mm(t,ta,Wte):void 0}var Ls,sre=M(()=>{"use strict";Zw();Yte();Tu();o(BMe,"max");Ls=BMe});function FMe(t){return t&&t.length?Mm(t,ta,Qw):void 0}var Nl,YL=M(()=>{"use strict";Zw();WL();Tu();o(FMe,"min");Nl=FMe});function zMe(t,e){return t&&t.length?Mm(t,dn(e,2),Qw):void 0}var Id,ore=M(()=>{"use strict";Zw();Qa();WL();o(zMe,"minBy");Id=zMe});function $Me(t){if(typeof t!="function")throw new TypeError(GMe);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}var GMe,lre,cre=M(()=>{"use strict";GMe="Expected a function";o($Me,"negate");lre=$Me});function VMe(t,e,r,n){if(!yn(t))return t;e=Uh(e,t);for(var i=-1,a=e.length,s=a-1,l=t;l!=null&&++i{"use strict";em();Lv();sv();Qs();Tm();o(VMe,"baseSet");ure=VMe});function UMe(t,e,r){for(var n=-1,i=e.length,a={};++n{"use strict";Dv();hre();Lv();o(UMe,"basePickBy");Jw=UMe});function HMe(t,e){if(t==null)return{};var r=As(kw(t),function(n){return[n]});return e=dn(e),Jw(t,r,function(n,i){return e(n,i[0])})}var Ds,fre=M(()=>{"use strict";Dd();Qa();qL();TL();o(HMe,"pickBy");Ds=HMe});function WMe(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}var dre,pre=M(()=>{"use strict";o(WMe,"baseSortBy");dre=WMe});function YMe(t,e){if(t!==e){var r=t!==void 0,n=t===null,i=t===t,a=ro(t),s=e!==void 0,l=e===null,u=e===e,h=ro(e);if(!l&&!h&&!a&&t>e||a&&s&&u&&!l&&!h||n&&s&&u||!r&&u||!i)return 1;if(!n&&!a&&!h&&t{"use strict";Ld();o(YMe,"compareAscending");mre=YMe});function qMe(t,e,r){for(var n=-1,i=t.criteria,a=e.criteria,s=i.length,l=r.length;++n=l)return u;var h=r[n];return u*(h=="desc"?-1:1)}}return t.index-e.index}var yre,vre=M(()=>{"use strict";gre();o(qMe,"compareMultiple");yre=qMe});function XMe(t,e,r){e.length?e=As(e,function(a){return Mt(a)?function(s){return Hh(s,a.length===1?a[0]:a)}:a}):e=[ta];var n=-1;e=As(e,Oo(dn));var i=qw(t,function(a,s,l){var u=As(e,function(h){return h(a)});return{criteria:u,index:++n,value:a}});return dre(i,function(a,s){return yre(a,s,r)})}var xre,bre=M(()=>{"use strict";Dd();Dv();Qa();zL();pre();bd();vre();Tu();Vn();o(XMe,"baseOrderBy");xre=XMe});var jMe,wre,Tre=M(()=>{"use strict";OL();jMe=Gw("length"),wre=jMe});function oIe(t){for(var e=kre.lastIndex=0;kre.test(t);)++e;return e}var Ere,KMe,QMe,ZMe,JMe,eIe,tIe,XL,jL,rIe,Sre,Cre,Are,nIe,_re,Lre,iIe,aIe,sIe,kre,Dre,Nre=M(()=>{"use strict";Ere="\\ud800-\\udfff",KMe="\\u0300-\\u036f",QMe="\\ufe20-\\ufe2f",ZMe="\\u20d0-\\u20ff",JMe=KMe+QMe+ZMe,eIe="\\ufe0e\\ufe0f",tIe="["+Ere+"]",XL="["+JMe+"]",jL="\\ud83c[\\udffb-\\udfff]",rIe="(?:"+XL+"|"+jL+")",Sre="[^"+Ere+"]",Cre="(?:\\ud83c[\\udde6-\\uddff]){2}",Are="[\\ud800-\\udbff][\\udc00-\\udfff]",nIe="\\u200d",_re=rIe+"?",Lre="["+eIe+"]?",iIe="(?:"+nIe+"(?:"+[Sre,Cre,Are].join("|")+")"+Lre+_re+")*",aIe=Lre+_re+iIe,sIe="(?:"+[Sre+XL+"?",XL,Cre,Are,tIe].join("|")+")",kre=RegExp(jL+"(?="+jL+")|"+sIe+aIe,"g");o(oIe,"unicodeSize");Dre=oIe});function lIe(t){return VJ(t)?Dre(t):wre(t)}var Rre,Mre=M(()=>{"use strict";Tre();UJ();Nre();o(lIe,"stringSize");Rre=lIe});function cIe(t,e){return Jw(t,e,function(r,n){return zw(t,n)})}var Ire,Ore=M(()=>{"use strict";qL();IL();o(cIe,"basePick");Ire=cIe});var uIe,Od,Pre=M(()=>{"use strict";Ore();$J();uIe=GJ(function(t,e){return t==null?{}:Ire(t,e)}),Od=uIe});function dIe(t,e,r,n){for(var i=-1,a=fIe(hIe((e-t)/(r||1)),0),s=Array(a);a--;)s[n?a:++i]=t,t+=r;return s}var hIe,fIe,Bre,Fre=M(()=>{"use strict";hIe=Math.ceil,fIe=Math.max;o(dIe,"baseRange");Bre=dIe});function pIe(t){return function(e,r,n){return n&&typeof n!="number"&&Zs(e,r,n)&&(r=n=void 0),e=ym(e),r===void 0?(r=e,e=0):r=ym(r),n=n===void 0?e{"use strict";Fre();Td();hL();o(pIe,"createRange");zre=pIe});var mIe,Uo,$re=M(()=>{"use strict";Gre();mIe=zre(),Uo=mIe});function gIe(t,e,r,n,i){return i(t,function(a,s,l){r=n?(n=!1,a):e(r,a,s,l)}),r}var Vre,Ure=M(()=>{"use strict";o(gIe,"baseReduce");Vre=gIe});function yIe(t,e,r){var n=Mt(t)?HJ:Vre,i=arguments.length<3;return n(t,dn(e,4),r,i,_s)}var qr,KL=M(()=>{"use strict";WJ();Yh();Qa();Ure();Vn();o(yIe,"reduce");qr=yIe});function vIe(t,e){var r=Mt(t)?Sm:Yw;return r(t,lre(dn(e,3)))}var jh,Hre=M(()=>{"use strict";vw();BL();Qa();Vn();cre();o(vIe,"reject");jh=vIe});function wIe(t){if(t==null)return 0;if(si(t))return gi(t)?Rre(t):t.length;var e=no(t);return e==xIe||e==bIe?t.size:bm(t).length}var xIe,bIe,QL,Wre=M(()=>{"use strict";fw();Rd();Io();Xw();Mre();xIe="[object Map]",bIe="[object Set]";o(wIe,"size");QL=wIe});function TIe(t,e){var r;return _s(t,function(n,i,a){return r=e(n,i,a),!r}),!!r}var Yre,qre=M(()=>{"use strict";Yh();o(TIe,"baseSome");Yre=TIe});function kIe(t,e,r){var n=Mt(t)?Dw:Yre;return r&&Zs(t,e,r)&&(e=void 0),n(t,dn(e,3))}var Rv,Xre=M(()=>{"use strict";AL();Qa();qre();Vn();Td();o(kIe,"some");Rv=kIe});var EIe,kc,jre=M(()=>{"use strict";Em();bre();tm();Td();EIe=pc(function(t,e){if(t==null)return[];var r=e.length;return r>1&&Zs(t,e[0],e[1])?e=[]:r>2&&Zs(e[0],e[1],e[2])&&(e=[e[0]]),xre(t,wc(e,1),[])}),kc=EIe});var SIe,CIe,Kre,Qre=M(()=>{"use strict";kL();fL();Mw();SIe=1/0,CIe=Wh&&1/Lm(new Wh([,-0]))[1]==SIe?function(t){return new Wh(t)}:Jn,Kre=CIe});function _Ie(t,e,r){var n=-1,i=hw,a=t.length,s=!0,l=[],u=l;if(r)s=!1,i=Uw;else if(a>=AIe){var h=e?null:Kre(t);if(h)return Lm(h);s=!1,i=_m,u=new Am}else u=e?[]:l;e:for(;++n{"use strict";Lw();mL();PL();Nw();Qre();Mw();AIe=200;o(_Ie,"baseUniq");Im=_Ie});var LIe,ZL,Zre=M(()=>{"use strict";Em();tm();eT();o5();LIe=pc(function(t){return Im(wc(t,1,xd,!0))}),ZL=LIe});function DIe(t){return t&&t.length?Im(t):[]}var Om,Jre=M(()=>{"use strict";eT();o(DIe,"uniq");Om=DIe});function NIe(t,e){return t&&t.length?Im(t,dn(e,2)):[]}var ene,tne=M(()=>{"use strict";Qa();eT();o(NIe,"uniqBy");ene=NIe});function MIe(t){var e=++RIe;return pw(t)+e}var RIe,Pd,rne=M(()=>{"use strict";gL();RIe=0;o(MIe,"uniqueId");Pd=MIe});function IIe(t,e,r){for(var n=-1,i=t.length,a=e.length,s={};++n{"use strict";o(IIe,"baseZipObject");nne=IIe});function OIe(t,e){return nne(t||[],e||[],dc)}var tT,ane=M(()=>{"use strict";em();ine();o(OIe,"zipObject");tT=OIe});var Ht=M(()=>{"use strict";LJ();SL();Mee();Iee();W_();Tte();Ste();Ate();_te();Lte();Ite();FL();zte();$te();GL();gw();Ww();Vte();Ute();Hte();jte();Tu();Zte();Jte();Vn();Kw();jy();Qs();nre();Xw();ire();xc();Cte();Rm();are();sre();X_();YL();ore();fL();bte();Pre();fre();$re();KL();Hre();Wre();Xre();jre();Zre();Jre();rne();HL();ane();});function one(t,e){t[e]?t[e]++:t[e]=1}function lne(t,e){--t[e]||delete t[e]}function Mv(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}return i+sne+a+sne+(dr(n)?PIe:n)}function BIe(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}var l={v:i,w:a};return n&&(l.name=n),l}function JL(t,e){return Mv(t,e.v,e.w,e.name)}var PIe,Bd,sne,Mr,rT=M(()=>{"use strict";Ht();PIe="\0",Bd="\0",sne="",Mr=class{static{o(this,"Graph")}constructor(e={}){this._isDirected=Object.prototype.hasOwnProperty.call(e,"directed")?e.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(e,"multigraph")?e.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=bs(void 0),this._defaultEdgeLabelFn=bs(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[Bd]={}),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 Ei(e)||(e=bs(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return zr(this._nodes)}sources(){var e=this;return Yr(this.nodes(),function(r){return cr(e._in[r])})}sinks(){var e=this;return Yr(this.nodes(),function(r){return cr(e._out[r])})}setNodes(e,r){var n=arguments,i=this;return Ce(e,function(a){n.length>1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return Object.prototype.hasOwnProperty.call(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=Bd,this._children[e]={},this._children[Bd][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 Object.prototype.hasOwnProperty.call(this._nodes,e)}removeNode(e){if(Object.prototype.hasOwnProperty.call(this._nodes,e)){var r=o(n=>this.removeEdge(this._edgeObjs[n]),"removeEdge");delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],Ce(this.children(e),n=>{this.setParent(n)}),delete this._children[e]),Ce(zr(this._in[e]),r),delete this._in[e],delete this._preds[e],Ce(zr(this._out[e]),r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(dr(r))r=Bd;else{r+="";for(var n=r;!dr(n);n=this.parent(n))if(n===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==Bd)return r}}children(e){if(dr(e)&&(e=Bd),this._isCompound){var r=this._children[e];if(r)return zr(r)}else{if(e===Bd)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return zr(r)}successors(e){var r=this._sucs[e];if(r)return zr(r)}neighbors(e){var r=this.predecessors(e);if(r)return ZL(r,this.successors(e))}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var n=this;Ce(this._nodes,function(s,l){e(l)&&r.setNode(l,s)}),Ce(this._edgeObjs,function(s){r.hasNode(s.v)&&r.hasNode(s.w)&&r.setEdge(s,n.edge(s))});var i={};function a(s){var l=n.parent(s);return l===void 0||r.hasNode(l)?(i[s]=l,l):l in i?i[l]:a(l)}return o(a,"findParent"),this._isCompound&&Ce(r.nodes(),function(s){r.setParent(s,a(s))}),r}setDefaultEdgeLabel(e){return Ei(e)||(e=bs(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return br(this._edgeObjs)}setPath(e,r){var n=this,i=arguments;return qr(e,function(a,s){return i.length>1?n.setEdge(a,s,r):n.setEdge(a,s),s}),this}setEdge(){var e,r,n,i,a=!1,s=arguments[0];typeof s=="object"&&s!==null&&"v"in s?(e=s.v,r=s.w,n=s.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=s,r=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,dr(n)||(n=""+n);var l=Mv(this._isDirected,e,r,n);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,l))return a&&(this._edgeLabels[l]=i),this;if(!dr(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[l]=a?i:this._defaultEdgeLabelFn(e,r,n);var u=BIe(this._isDirected,e,r,n);return e=u.v,r=u.w,Object.freeze(u),this._edgeObjs[l]=u,one(this._preds[r],e),one(this._sucs[e],r),this._in[r][l]=u,this._out[e][l]=u,this._edgeCount++,this}edge(e,r,n){var i=arguments.length===1?JL(this._isDirected,arguments[0]):Mv(this._isDirected,e,r,n);return this._edgeLabels[i]}hasEdge(e,r,n){var i=arguments.length===1?JL(this._isDirected,arguments[0]):Mv(this._isDirected,e,r,n);return Object.prototype.hasOwnProperty.call(this._edgeLabels,i)}removeEdge(e,r,n){var i=arguments.length===1?JL(this._isDirected,arguments[0]):Mv(this._isDirected,e,r,n),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],lne(this._preds[r],e),lne(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var n=this._in[e];if(n){var i=br(n);return r?Yr(i,function(a){return a.v===r}):i}}outEdges(e,r){var n=this._out[e];if(n){var i=br(n);return r?Yr(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var n=this.inEdges(e,r);if(n)return n.concat(this.outEdges(e,r))}};Mr.prototype._nodeCount=0;Mr.prototype._edgeCount=0;o(one,"incrementOrInitEntry");o(lne,"decrementOrRemoveEntry");o(Mv,"edgeArgsToId");o(BIe,"edgeArgsToObj");o(JL,"edgeObjToId")});var Ns=M(()=>{"use strict";rT()});function cne(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function FIe(t,e){if(t!=="_next"&&t!=="_prev")return e}var nT,une=M(()=>{"use strict";nT=class{static{o(this,"List")}constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return cne(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&cne(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,n=r._prev;n!==r;)e.push(JSON.stringify(n,FIe)),n=n._prev;return"["+e.join(", ")+"]"}};o(cne,"unlink");o(FIe,"filterOutLinks")});function hne(t,e){if(t.nodeCount()<=1)return[];var r=$Ie(t,e||zIe),n=GIe(r.graph,r.buckets,r.zeroIdx);return Wr(Je(n,function(i){return t.outEdges(i.v,i.w)}))}function GIe(t,e,r){for(var n=[],i=e[e.length-1],a=e[0],s;t.nodeCount();){for(;s=a.dequeue();)eD(t,e,r,s);for(;s=i.dequeue();)eD(t,e,r,s);if(t.nodeCount()){for(var l=e.length-2;l>0;--l)if(s=e[l].dequeue(),s){n=n.concat(eD(t,e,r,s,!0));break}}}return n}function eD(t,e,r,n,i){var a=i?[]:void 0;return Ce(t.inEdges(n.v),function(s){var l=t.edge(s),u=t.node(s.v);i&&a.push({v:s.v,w:s.w}),u.out-=l,tD(e,r,u)}),Ce(t.outEdges(n.v),function(s){var l=t.edge(s),u=s.w,h=t.node(u);h.in-=l,tD(e,r,h)}),t.removeNode(n.v),a}function $Ie(t,e){var r=new Mr,n=0,i=0;Ce(t.nodes(),function(l){r.setNode(l,{v:l,in:0,out:0})}),Ce(t.edges(),function(l){var u=r.edge(l.v,l.w)||0,h=e(l),f=u+h;r.setEdge(l.v,l.w,f),i=Math.max(i,r.node(l.v).out+=h),n=Math.max(n,r.node(l.w).in+=h)});var a=Uo(i+n+3).map(function(){return new nT}),s=n+1;return Ce(r.nodes(),function(l){tD(a,s,r.node(l))}),{graph:r,buckets:a,zeroIdx:s}}function tD(t,e,r){r.out?r.in?t[r.out-r.in+e].enqueue(r):t[t.length-1].enqueue(r):t[0].enqueue(r)}var zIe,fne=M(()=>{"use strict";Ht();Ns();une();zIe=bs(1);o(hne,"greedyFAS");o(GIe,"doGreedyFAS");o(eD,"removeNode");o($Ie,"buildState");o(tD,"assignBucket")});function dne(t){var e=t.graph().acyclicer==="greedy"?hne(t,r(t)):VIe(t);Ce(e,function(n){var i=t.edge(n);t.removeEdge(n),i.forwardName=n.name,i.reversed=!0,t.setEdge(n.w,n.v,i,Pd("rev"))});function r(n){return function(i){return n.edge(i).weight}}o(r,"weightFn")}function VIe(t){var e=[],r={},n={};function i(a){Object.prototype.hasOwnProperty.call(n,a)||(n[a]=!0,r[a]=!0,Ce(t.outEdges(a),function(s){Object.prototype.hasOwnProperty.call(r,s.w)?e.push(s):i(s.w)}),delete r[a])}return o(i,"dfs"),Ce(t.nodes(),i),e}function pne(t){Ce(t.edges(),function(e){var r=t.edge(e);if(r.reversed){t.removeEdge(e);var n=r.forwardName;delete r.reversed,delete r.forwardName,t.setEdge(e.w,e.v,r,n)}})}var rD=M(()=>{"use strict";Ht();fne();o(dne,"run");o(VIe,"dfsFAS");o(pne,"undo")});function Ec(t,e,r,n){var i;do i=Pd(n);while(t.hasNode(i));return r.dummy=e,t.setNode(i,r),i}function gne(t){var e=new Mr().setGraph(t.graph());return Ce(t.nodes(),function(r){e.setNode(r,t.node(r))}),Ce(t.edges(),function(r){var n=e.edge(r.v,r.w)||{weight:0,minlen:1},i=t.edge(r);e.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),e}function iT(t){var e=new Mr({multigraph:t.isMultigraph()}).setGraph(t.graph());return Ce(t.nodes(),function(r){t.children(r).length||e.setNode(r,t.node(r))}),Ce(t.edges(),function(r){e.setEdge(r,t.edge(r))}),e}function nD(t,e){var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=l*i/a,h=l):(i<0&&(s=-s),u=s,h=s*a/i),{x:r+u,y:n+h}}function Kh(t){var e=Je(Uo(aD(t)+1),function(){return[]});return Ce(t.nodes(),function(r){var n=t.node(r),i=n.rank;dr(i)||(e[i][n.order]=r)}),e}function yne(t){var e=Nl(Je(t.nodes(),function(r){return t.node(r).rank}));Ce(t.nodes(),function(r){var n=t.node(r);It(n,"rank")&&(n.rank-=e)})}function vne(t){var e=Nl(Je(t.nodes(),function(a){return t.node(a).rank})),r=[];Ce(t.nodes(),function(a){var s=t.node(a).rank-e;r[s]||(r[s]=[]),r[s].push(a)});var n=0,i=t.graph().nodeRankFactor;Ce(r,function(a,s){dr(a)&&s%i!==0?--n:n&&Ce(a,function(l){t.node(l).rank+=n})})}function iD(t,e,r,n){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),Ec(t,"border",i,e)}function aD(t){return Ls(Je(t.nodes(),function(e){var r=t.node(e).rank;if(!dr(r))return r}))}function xne(t,e){var r={lhs:[],rhs:[]};return Ce(t,function(n){e(n)?r.lhs.push(n):r.rhs.push(n)}),r}function bne(t,e){var r=Vw();try{return e()}finally{console.log(t+" time: "+(Vw()-r)+"ms")}}function wne(t,e){return e()}var Sc=M(()=>{"use strict";Ht();Ns();o(Ec,"addDummyNode");o(gne,"simplify");o(iT,"asNonCompoundGraph");o(nD,"intersectRect");o(Kh,"buildLayerMatrix");o(yne,"normalizeRanks");o(vne,"removeEmptyRanks");o(iD,"addBorderNode");o(aD,"maxRank");o(xne,"partition");o(bne,"time");o(wne,"notime")});function kne(t){function e(r){var n=t.children(r),i=t.node(r);if(n.length&&Ce(n,e),Object.prototype.hasOwnProperty.call(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,s=i.maxRank+1;a{"use strict";Ht();Sc();o(kne,"addBorderSegments");o(Tne,"addBorderNode")});function Cne(t){var e=t.graph().rankdir.toLowerCase();(e==="lr"||e==="rl")&&_ne(t)}function Ane(t){var e=t.graph().rankdir.toLowerCase();(e==="bt"||e==="rl")&&UIe(t),(e==="lr"||e==="rl")&&(HIe(t),_ne(t))}function _ne(t){Ce(t.nodes(),function(e){Sne(t.node(e))}),Ce(t.edges(),function(e){Sne(t.edge(e))})}function Sne(t){var e=t.width;t.width=t.height,t.height=e}function UIe(t){Ce(t.nodes(),function(e){sD(t.node(e))}),Ce(t.edges(),function(e){var r=t.edge(e);Ce(r.points,sD),Object.prototype.hasOwnProperty.call(r,"y")&&sD(r)})}function sD(t){t.y=-t.y}function HIe(t){Ce(t.nodes(),function(e){oD(t.node(e))}),Ce(t.edges(),function(e){var r=t.edge(e);Ce(r.points,oD),Object.prototype.hasOwnProperty.call(r,"x")&&oD(r)})}function oD(t){var e=t.x;t.x=t.y,t.y=e}var Lne=M(()=>{"use strict";Ht();o(Cne,"adjust");o(Ane,"undo");o(_ne,"swapWidthHeight");o(Sne,"swapWidthHeightOne");o(UIe,"reverseY");o(sD,"reverseYOne");o(HIe,"swapXY");o(oD,"swapXYOne")});function Dne(t){t.graph().dummyChains=[],Ce(t.edges(),function(e){YIe(t,e)})}function YIe(t,e){var r=e.v,n=t.node(r).rank,i=e.w,a=t.node(i).rank,s=e.name,l=t.edge(e),u=l.labelRank;if(a!==n+1){t.removeEdge(e);var h=void 0,f,d;for(d=0,++n;n{"use strict";Ht();Sc();o(Dne,"run");o(YIe,"normalizeEdge");o(Nne,"undo")});function Iv(t){var e={};function r(n){var i=t.node(n);if(Object.prototype.hasOwnProperty.call(e,n))return i.rank;e[n]=!0;var a=Nl(Je(t.outEdges(n),function(s){return r(s.w)-t.edge(s).minlen}));return(a===Number.POSITIVE_INFINITY||a===void 0||a===null)&&(a=0),i.rank=a}o(r,"dfs"),Ce(t.sources(),r)}function Fd(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}var aT=M(()=>{"use strict";Ht();o(Iv,"longestPath");o(Fd,"slack")});function sT(t){var e=new Mr({directed:!1}),r=t.nodes()[0],n=t.nodeCount();e.setNode(r,{});for(var i,a;qIe(e,t){"use strict";Ht();Ns();aT();o(sT,"feasibleTree");o(qIe,"tightTree");o(XIe,"findMinSlackEdge");o(jIe,"shiftRanks")});var Mne=M(()=>{"use strict"});var uD=M(()=>{"use strict"});var $Yt,hD=M(()=>{"use strict";Ht();uD();$Yt=bs(1)});var Ine=M(()=>{"use strict";hD()});var fD=M(()=>{"use strict"});var One=M(()=>{"use strict";fD()});var ZYt,Pne=M(()=>{"use strict";Ht();ZYt=bs(1)});function dD(t){var e={},r={},n=[];function i(a){if(Object.prototype.hasOwnProperty.call(r,a))throw new Ov;Object.prototype.hasOwnProperty.call(e,a)||(r[a]=!0,e[a]=!0,Ce(t.predecessors(a),i),delete r[a],n.push(a))}if(o(i,"visit"),Ce(t.sinks(),i),QL(e)!==t.nodeCount())throw new Ov;return n}function Ov(){}var pD=M(()=>{"use strict";Ht();dD.CycleException=Ov;o(dD,"topsort");o(Ov,"CycleException");Ov.prototype=new Error});var Bne=M(()=>{"use strict";pD()});function oT(t,e,r){Mt(e)||(e=[e]);var n=(t.isDirected()?t.successors:t.neighbors).bind(t),i=[],a={};return Ce(e,function(s){if(!t.hasNode(s))throw new Error("Graph does not have node: "+s);Fne(t,s,r==="post",a,n,i)}),i}function Fne(t,e,r,n,i,a){Object.prototype.hasOwnProperty.call(n,e)||(n[e]=!0,r||a.push(e),Ce(i(e),function(s){Fne(t,s,r,n,i,a)}),r&&a.push(e))}var mD=M(()=>{"use strict";Ht();o(oT,"dfs");o(Fne,"doDfs")});function gD(t,e){return oT(t,e,"post")}var zne=M(()=>{"use strict";mD();o(gD,"postorder")});function yD(t,e){return oT(t,e,"pre")}var Gne=M(()=>{"use strict";mD();o(yD,"preorder")});var $ne=M(()=>{"use strict";uD();rT()});var Vne=M(()=>{"use strict";Mne();hD();Ine();One();Pne();Bne();zne();Gne();$ne();fD();pD()});function Zh(t){t=gne(t),Iv(t);var e=sT(t);xD(e),vD(e,t);for(var r,n;r=Yne(e);)n=qne(e,t,r),Xne(e,t,r,n)}function vD(t,e){var r=gD(t,t.nodes());r=r.slice(0,r.length-1),Ce(r,function(n){eOe(t,e,n)})}function eOe(t,e,r){var n=t.node(r),i=n.parent;t.edge(r,i).cutvalue=Hne(t,e,r)}function Hne(t,e,r){var n=t.node(r),i=n.parent,a=!0,s=e.edge(r,i),l=0;return s||(a=!1,s=e.edge(i,r)),l=s.weight,Ce(e.nodeEdges(r),function(u){var h=u.v===r,f=h?u.w:u.v;if(f!==i){var d=h===a,p=e.edge(u).weight;if(l+=d?p:-p,rOe(t,r,f)){var m=t.edge(r,f).cutvalue;l+=d?-m:m}}}),l}function xD(t,e){arguments.length<2&&(e=t.nodes()[0]),Wne(t,{},1,e)}function Wne(t,e,r,n,i){var a=r,s=t.node(n);return e[n]=!0,Ce(t.neighbors(n),function(l){Object.prototype.hasOwnProperty.call(e,l)||(r=Wne(t,e,r,l,n))}),s.low=a,s.lim=r++,i?s.parent=i:delete s.parent,r}function Yne(t){return Za(t.edges(),function(e){return t.edge(e).cutvalue<0})}function qne(t,e,r){var n=r.v,i=r.w;e.hasEdge(n,i)||(n=r.w,i=r.v);var a=t.node(n),s=t.node(i),l=a,u=!1;a.lim>s.lim&&(l=s,u=!0);var h=Yr(e.edges(),function(f){return u===Une(t,t.node(f.v),l)&&u!==Une(t,t.node(f.w),l)});return Id(h,function(f){return Fd(e,f)})}function Xne(t,e,r,n){var i=r.v,a=r.w;t.removeEdge(i,a),t.setEdge(n.v,n.w,{}),xD(t),vD(t,e),tOe(t,e)}function tOe(t,e){var r=Za(t.nodes(),function(i){return!e.node(i).parent}),n=yD(t,r);n=n.slice(1),Ce(n,function(i){var a=t.node(i).parent,s=e.edge(i,a),l=!1;s||(s=e.edge(a,i),l=!0),e.node(i).rank=e.node(a).rank+(l?s.minlen:-s.minlen)})}function rOe(t,e,r){return t.hasEdge(e,r)}function Une(t,e,r){return r.low<=e.lim&&e.lim<=r.lim}var jne=M(()=>{"use strict";Ht();Vne();Sc();cD();aT();Zh.initLowLimValues=xD;Zh.initCutValues=vD;Zh.calcCutValue=Hne;Zh.leaveEdge=Yne;Zh.enterEdge=qne;Zh.exchangeEdges=Xne;o(Zh,"networkSimplex");o(vD,"initCutValues");o(eOe,"assignCutValue");o(Hne,"calcCutValue");o(xD,"initLowLimValues");o(Wne,"dfsAssignLowLim");o(Yne,"leaveEdge");o(qne,"enterEdge");o(Xne,"exchangeEdges");o(tOe,"updateRanks");o(rOe,"isTreeEdge");o(Une,"isDescendant")});function bD(t){switch(t.graph().ranker){case"network-simplex":Kne(t);break;case"tight-tree":iOe(t);break;case"longest-path":nOe(t);break;default:Kne(t)}}function iOe(t){Iv(t),sT(t)}function Kne(t){Zh(t)}var nOe,wD=M(()=>{"use strict";cD();jne();aT();o(bD,"rank");nOe=Iv;o(iOe,"tightTreeRanker");o(Kne,"networkSimplexRanker")});function Qne(t){var e=Ec(t,"root",{},"_root"),r=aOe(t),n=Ls(br(r))-1,i=2*n+1;t.graph().nestingRoot=e,Ce(t.edges(),function(s){t.edge(s).minlen*=i});var a=sOe(t)+1;Ce(t.children(),function(s){Zne(t,e,i,a,n,r,s)}),t.graph().nodeRankFactor=i}function Zne(t,e,r,n,i,a,s){var l=t.children(s);if(!l.length){s!==e&&t.setEdge(e,s,{weight:0,minlen:r});return}var u=iD(t,"_bt"),h=iD(t,"_bb"),f=t.node(s);t.setParent(u,s),f.borderTop=u,t.setParent(h,s),f.borderBottom=h,Ce(l,function(d){Zne(t,e,r,n,i,a,d);var p=t.node(d),m=p.borderTop?p.borderTop:d,g=p.borderBottom?p.borderBottom:d,y=p.borderTop?n:2*n,v=m!==g?1:i-a[s]+1;t.setEdge(u,m,{weight:y,minlen:v,nestingEdge:!0}),t.setEdge(g,h,{weight:y,minlen:v,nestingEdge:!0})}),t.parent(s)||t.setEdge(e,u,{weight:0,minlen:i+a[s]})}function aOe(t){var e={};function r(n,i){var a=t.children(n);a&&a.length&&Ce(a,function(s){r(s,i+1)}),e[n]=i}return o(r,"dfs"),Ce(t.children(),function(n){r(n,1)}),e}function sOe(t){return qr(t.edges(),function(e,r){return e+t.edge(r).weight},0)}function Jne(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,Ce(t.edges(),function(r){var n=t.edge(r);n.nestingEdge&&t.removeEdge(r)})}var eie=M(()=>{"use strict";Ht();Sc();o(Qne,"run");o(Zne,"dfs");o(aOe,"treeDepths");o(sOe,"sumWeights");o(Jne,"cleanup")});function tie(t,e,r){var n={},i;Ce(r,function(a){for(var s=t.parent(a),l,u;s;){if(l=t.parent(s),l?(u=n[l],n[l]=s):(u=i,i=s),u&&u!==s){e.setEdge(u,s);return}s=l}})}var rie=M(()=>{"use strict";Ht();o(tie,"addSubgraphConstraints")});function nie(t,e,r){var n=lOe(t),i=new Mr({compound:!0}).setGraph({root:n}).setDefaultNodeLabel(function(a){return t.node(a)});return Ce(t.nodes(),function(a){var s=t.node(a),l=t.parent(a);(s.rank===e||s.minRank<=e&&e<=s.maxRank)&&(i.setNode(a),i.setParent(a,l||n),Ce(t[r](a),function(u){var h=u.v===a?u.w:u.v,f=i.edge(h,a),d=dr(f)?0:f.weight;i.setEdge(h,a,{weight:t.edge(u).weight+d})}),Object.prototype.hasOwnProperty.call(s,"minRank")&&i.setNode(a,{borderLeft:s.borderLeft[e],borderRight:s.borderRight[e]}))}),i}function lOe(t){for(var e;t.hasNode(e=Pd("_root")););return e}var iie=M(()=>{"use strict";Ht();Ns();o(nie,"buildLayerGraph");o(lOe,"createRootNode")});function aie(t,e){for(var r=0,n=1;n0;)f%2&&(d+=l[f+1]),f=f-1>>1,l[f]+=h.weight;u+=h.weight*d})),u}var sie=M(()=>{"use strict";Ht();o(aie,"crossCount");o(cOe,"twoLayerCrossCount")});function oie(t){var e={},r=Yr(t.nodes(),function(l){return!t.children(l).length}),n=Ls(Je(r,function(l){return t.node(l).rank})),i=Je(Uo(n+1),function(){return[]});function a(l){if(!It(e,l)){e[l]=!0;var u=t.node(l);i[u.rank].push(l),Ce(t.successors(l),a)}}o(a,"dfs");var s=kc(r,function(l){return t.node(l).rank});return Ce(s,a),i}var lie=M(()=>{"use strict";Ht();o(oie,"initOrder")});function cie(t,e){return Je(e,function(r){var n=t.inEdges(r);if(n.length){var i=qr(n,function(a,s){var l=t.edge(s),u=t.node(s.v);return{sum:a.sum+l.weight*u.order,weight:a.weight+l.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}var uie=M(()=>{"use strict";Ht();o(cie,"barycenter")});function hie(t,e){var r={};Ce(t,function(i,a){var s=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};dr(i.barycenter)||(s.barycenter=i.barycenter,s.weight=i.weight)}),Ce(e.edges(),function(i){var a=r[i.v],s=r[i.w];!dr(a)&&!dr(s)&&(s.indegree++,a.out.push(r[i.w]))});var n=Yr(r,function(i){return!i.indegree});return uOe(n)}function uOe(t){var e=[];function r(a){return function(s){s.merged||(dr(s.barycenter)||dr(a.barycenter)||s.barycenter>=a.barycenter)&&hOe(a,s)}}o(r,"handleIn");function n(a){return function(s){s.in.push(a),--s.indegree===0&&t.push(s)}}for(o(n,"handleOut");t.length;){var i=t.pop();e.push(i),Ce(i.in.reverse(),r(i)),Ce(i.out,n(i))}return Je(Yr(e,function(a){return!a.merged}),function(a){return Od(a,["vs","i","barycenter","weight"])})}function hOe(t,e){var r=0,n=0;t.weight&&(r+=t.barycenter*t.weight,n+=t.weight),e.weight&&(r+=e.barycenter*e.weight,n+=e.weight),t.vs=e.vs.concat(t.vs),t.barycenter=r/n,t.weight=n,t.i=Math.min(e.i,t.i),e.merged=!0}var fie=M(()=>{"use strict";Ht();o(hie,"resolveConflicts");o(uOe,"doResolveConflicts");o(hOe,"mergeEntries")});function pie(t,e){var r=xne(t,function(f){return Object.prototype.hasOwnProperty.call(f,"barycenter")}),n=r.lhs,i=kc(r.rhs,function(f){return-f.i}),a=[],s=0,l=0,u=0;n.sort(fOe(!!e)),u=die(a,i,u),Ce(n,function(f){u+=f.vs.length,a.push(f.vs),s+=f.barycenter*f.weight,l+=f.weight,u=die(a,i,u)});var h={vs:Wr(a)};return l&&(h.barycenter=s/l,h.weight=l),h}function die(t,e,r){for(var n;e.length&&(n=fa(e)).i<=r;)e.pop(),t.push(n.vs),r++;return r}function fOe(t){return function(e,r){return e.barycenterr.barycenter?1:t?r.i-e.i:e.i-r.i}}var mie=M(()=>{"use strict";Ht();Sc();o(pie,"sort");o(die,"consumeUnsortable");o(fOe,"compareWithBias")});function TD(t,e,r,n){var i=t.children(e),a=t.node(e),s=a?a.borderLeft:void 0,l=a?a.borderRight:void 0,u={};s&&(i=Yr(i,function(g){return g!==s&&g!==l}));var h=cie(t,i);Ce(h,function(g){if(t.children(g.v).length){var y=TD(t,g.v,r,n);u[g.v]=y,Object.prototype.hasOwnProperty.call(y,"barycenter")&&pOe(g,y)}});var f=hie(h,r);dOe(f,u);var d=pie(f,n);if(s&&(d.vs=Wr([s,d.vs,l]),t.predecessors(s).length)){var p=t.node(t.predecessors(s)[0]),m=t.node(t.predecessors(l)[0]);Object.prototype.hasOwnProperty.call(d,"barycenter")||(d.barycenter=0,d.weight=0),d.barycenter=(d.barycenter*d.weight+p.order+m.order)/(d.weight+2),d.weight+=2}return d}function dOe(t,e){Ce(t,function(r){r.vs=Wr(r.vs.map(function(n){return e[n]?e[n].vs:n}))})}function pOe(t,e){dr(t.barycenter)?(t.barycenter=e.barycenter,t.weight=e.weight):(t.barycenter=(t.barycenter*t.weight+e.barycenter*e.weight)/(t.weight+e.weight),t.weight+=e.weight)}var gie=M(()=>{"use strict";Ht();uie();fie();mie();o(TD,"sortSubgraph");o(dOe,"expandSubgraphs");o(pOe,"mergeBarycenters")});function xie(t){var e=aD(t),r=yie(t,Uo(1,e+1),"inEdges"),n=yie(t,Uo(e-1,-1,-1),"outEdges"),i=oie(t);vie(t,i);for(var a=Number.POSITIVE_INFINITY,s,l=0,u=0;u<4;++l,++u){mOe(l%2?r:n,l%4>=2),i=Kh(t);var h=aie(t,i);h{"use strict";Ht();Ns();Sc();rie();iie();sie();lie();gie();o(xie,"order");o(yie,"buildLayerGraphs");o(mOe,"sweepLayerGraphs");o(vie,"assignOrder")});function wie(t){var e=yOe(t);Ce(t.graph().dummyChains,function(r){for(var n=t.node(r),i=n.edgeObj,a=gOe(t,e,i.v,i.w),s=a.path,l=a.lca,u=0,h=s[u],f=!0;r!==i.w;){if(n=t.node(r),f){for(;(h=s[u])!==l&&t.node(h).maxRanks||l>e[u].lim));for(h=u,u=n;(u=t.parent(u))!==h;)a.push(u);return{path:i.concat(a.reverse()),lca:h}}function yOe(t){var e={},r=0;function n(i){var a=r;Ce(t.children(i),n),e[i]={low:a,lim:r++}}return o(n,"dfs"),Ce(t.children(),n),e}var Tie=M(()=>{"use strict";Ht();o(wie,"parentDummyChains");o(gOe,"findPath");o(yOe,"postorder")});function vOe(t,e){var r={};function n(i,a){var s=0,l=0,u=i.length,h=fa(a);return Ce(a,function(f,d){var p=bOe(t,f),m=p?t.node(p).order:u;(p||f===h)&&(Ce(a.slice(l,d+1),function(g){Ce(t.predecessors(g),function(y){var v=t.node(y),x=v.order;(xh)&&kie(r,p,f)})})}o(n,"scan");function i(a,s){var l=-1,u,h=0;return Ce(s,function(f,d){if(t.node(f).dummy==="border"){var p=t.predecessors(f);p.length&&(u=t.node(p[0]).order,n(s,h,d,l,u),h=d,l=u)}n(s,h,s.length,u,a.length)}),s}return o(i,"visitLayer"),qr(e,i),r}function bOe(t,e){if(t.node(e).dummy)return Za(t.predecessors(e),function(r){return t.node(r).dummy})}function kie(t,e,r){if(e>r){var n=e;e=r,r=n}var i=t[e];i||(t[e]=i={}),i[r]=!0}function wOe(t,e,r){if(e>r){var n=e;e=r,r=n}return!!t[e]&&Object.prototype.hasOwnProperty.call(t[e],r)}function TOe(t,e,r,n){var i={},a={},s={};return Ce(e,function(l){Ce(l,function(u,h){i[u]=u,a[u]=u,s[u]=h})}),Ce(e,function(l){var u=-1;Ce(l,function(h){var f=n(h);if(f.length){f=kc(f,function(y){return s[y]});for(var d=(f.length-1)/2,p=Math.floor(d),m=Math.ceil(d);p<=m;++p){var g=f[p];a[h]===h&&u{"use strict";Ht();Ns();Sc();o(vOe,"findType1Conflicts");o(xOe,"findType2Conflicts");o(bOe,"findOtherInnerSegmentNode");o(kie,"addConflict");o(wOe,"hasConflict");o(TOe,"verticalAlignment");o(kOe,"horizontalCompaction");o(EOe,"buildBlockGraph");o(SOe,"findSmallestWidthAlignment");o(COe,"alignCoordinates");o(AOe,"balance");o(Eie,"positionX");o(_Oe,"sep");o(LOe,"width")});function Cie(t){t=iT(t),DOe(t),VL(Eie(t),function(e,r){t.node(r).x=e})}function DOe(t){var e=Kh(t),r=t.graph().ranksep,n=0;Ce(e,function(i){var a=Ls(Je(i,function(s){return t.node(s).height}));Ce(i,function(s){t.node(s).y=n+a/2}),n+=a+r})}var Aie=M(()=>{"use strict";Ht();Sc();Sie();o(Cie,"position");o(DOe,"positionY")});function Du(t,e){var r=e&&e.debugTiming?bne:wne;r("layout",()=>{var n=r(" buildLayoutGraph",()=>$Oe(t));r(" runLayout",()=>NOe(n,r)),r(" updateInputGraph",()=>ROe(t,n))})}function NOe(t,e){e(" makeSpaceForEdgeLabels",()=>VOe(t)),e(" removeSelfEdges",()=>QOe(t)),e(" acyclic",()=>dne(t)),e(" nestingGraph.run",()=>Qne(t)),e(" rank",()=>bD(iT(t))),e(" injectEdgeLabelProxies",()=>UOe(t)),e(" removeEmptyRanks",()=>vne(t)),e(" nestingGraph.cleanup",()=>Jne(t)),e(" normalizeRanks",()=>yne(t)),e(" assignRankMinMax",()=>HOe(t)),e(" removeEdgeLabelProxies",()=>WOe(t)),e(" normalize.run",()=>Dne(t)),e(" parentDummyChains",()=>wie(t)),e(" addBorderSegments",()=>kne(t)),e(" order",()=>xie(t)),e(" insertSelfEdges",()=>ZOe(t)),e(" adjustCoordinateSystem",()=>Cne(t)),e(" position",()=>Cie(t)),e(" positionSelfEdges",()=>JOe(t)),e(" removeBorderNodes",()=>KOe(t)),e(" normalize.undo",()=>Nne(t)),e(" fixupEdgeLabelCoords",()=>XOe(t)),e(" undoCoordinateSystem",()=>Ane(t)),e(" translateGraph",()=>YOe(t)),e(" assignNodeIntersects",()=>qOe(t)),e(" reversePoints",()=>jOe(t)),e(" acyclic.undo",()=>pne(t))}function ROe(t,e){Ce(t.nodes(),function(r){var n=t.node(r),i=e.node(r);n&&(n.x=i.x,n.y=i.y,e.children(r).length&&(n.width=i.width,n.height=i.height))}),Ce(t.edges(),function(r){var n=t.edge(r),i=e.edge(r);n.points=i.points,Object.prototype.hasOwnProperty.call(i,"x")&&(n.x=i.x,n.y=i.y)}),t.graph().width=e.graph().width,t.graph().height=e.graph().height}function $Oe(t){var e=new Mr({multigraph:!0,compound:!0}),r=ED(t.graph());return e.setGraph(Ih({},IOe,kD(r,MOe),Od(r,OOe))),Ce(t.nodes(),function(n){var i=ED(t.node(n));e.setNode(n,qh(kD(i,POe),BOe)),e.setParent(n,t.parent(n))}),Ce(t.edges(),function(n){var i=ED(t.edge(n));e.setEdge(n,Ih({},zOe,kD(i,FOe),Od(i,GOe)))}),e}function VOe(t){var e=t.graph();e.ranksep/=2,Ce(t.edges(),function(r){var n=t.edge(r);n.minlen*=2,n.labelpos.toLowerCase()!=="c"&&(e.rankdir==="TB"||e.rankdir==="BT"?n.width+=n.labeloffset:n.height+=n.labeloffset)})}function UOe(t){Ce(t.edges(),function(e){var r=t.edge(e);if(r.width&&r.height){var n=t.node(e.v),i=t.node(e.w),a={rank:(i.rank-n.rank)/2+n.rank,e};Ec(t,"edge-proxy",a,"_ep")}})}function HOe(t){var e=0;Ce(t.nodes(),function(r){var n=t.node(r);n.borderTop&&(n.minRank=t.node(n.borderTop).rank,n.maxRank=t.node(n.borderBottom).rank,e=Ls(e,n.maxRank))}),t.graph().maxRank=e}function WOe(t){Ce(t.nodes(),function(e){var r=t.node(e);r.dummy==="edge-proxy"&&(t.edge(r.e).labelRank=r.rank,t.removeNode(e))})}function YOe(t){var e=Number.POSITIVE_INFINITY,r=0,n=Number.POSITIVE_INFINITY,i=0,a=t.graph(),s=a.marginx||0,l=a.marginy||0;function u(h){var f=h.x,d=h.y,p=h.width,m=h.height;e=Math.min(e,f-p/2),r=Math.max(r,f+p/2),n=Math.min(n,d-m/2),i=Math.max(i,d+m/2)}o(u,"getExtremes"),Ce(t.nodes(),function(h){u(t.node(h))}),Ce(t.edges(),function(h){var f=t.edge(h);Object.prototype.hasOwnProperty.call(f,"x")&&u(f)}),e-=s,n-=l,Ce(t.nodes(),function(h){var f=t.node(h);f.x-=e,f.y-=n}),Ce(t.edges(),function(h){var f=t.edge(h);Ce(f.points,function(d){d.x-=e,d.y-=n}),Object.prototype.hasOwnProperty.call(f,"x")&&(f.x-=e),Object.prototype.hasOwnProperty.call(f,"y")&&(f.y-=n)}),a.width=r-e+s,a.height=i-n+l}function qOe(t){Ce(t.edges(),function(e){var r=t.edge(e),n=t.node(e.v),i=t.node(e.w),a,s;r.points?(a=r.points[0],s=r.points[r.points.length-1]):(r.points=[],a=i,s=n),r.points.unshift(nD(n,a)),r.points.push(nD(i,s))})}function XOe(t){Ce(t.edges(),function(e){var r=t.edge(e);if(Object.prototype.hasOwnProperty.call(r,"x"))switch((r.labelpos==="l"||r.labelpos==="r")&&(r.width-=r.labeloffset),r.labelpos){case"l":r.x-=r.width/2+r.labeloffset;break;case"r":r.x+=r.width/2+r.labeloffset;break}})}function jOe(t){Ce(t.edges(),function(e){var r=t.edge(e);r.reversed&&r.points.reverse()})}function KOe(t){Ce(t.nodes(),function(e){if(t.children(e).length){var r=t.node(e),n=t.node(r.borderTop),i=t.node(r.borderBottom),a=t.node(fa(r.borderLeft)),s=t.node(fa(r.borderRight));r.width=Math.abs(s.x-a.x),r.height=Math.abs(i.y-n.y),r.x=a.x+r.width/2,r.y=n.y+r.height/2}}),Ce(t.nodes(),function(e){t.node(e).dummy==="border"&&t.removeNode(e)})}function QOe(t){Ce(t.edges(),function(e){if(e.v===e.w){var r=t.node(e.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e,label:t.edge(e)}),t.removeEdge(e)}})}function ZOe(t){var e=Kh(t);Ce(e,function(r){var n=0;Ce(r,function(i,a){var s=t.node(i);s.order=a+n,Ce(s.selfEdges,function(l){Ec(t,"selfedge",{width:l.label.width,height:l.label.height,rank:s.rank,order:a+ ++n,e:l.e,label:l.label},"_se")}),delete s.selfEdges})})}function JOe(t){Ce(t.nodes(),function(e){var r=t.node(e);if(r.dummy==="selfedge"){var n=t.node(r.e.v),i=n.x+n.width/2,a=n.y,s=r.x-i,l=n.height/2;t.setEdge(r.e,r.label),t.removeNode(e),r.label.points=[{x:i+2*s/3,y:a-l},{x:i+5*s/6,y:a-l},{x:i+s,y:a},{x:i+5*s/6,y:a+l},{x:i+2*s/3,y:a+l}],r.label.x=r.x,r.label.y=r.y}})}function kD(t,e){return Md(Od(t,e),Number)}function ED(t){var e={};return Ce(t,function(r,n){e[n.toLowerCase()]=r}),e}var MOe,IOe,OOe,POe,BOe,FOe,zOe,GOe,_ie=M(()=>{"use strict";Ht();Ns();Ene();Lne();rD();lD();wD();eie();bie();Tie();Aie();Sc();o(Du,"layout");o(NOe,"runLayout");o(ROe,"updateInputGraph");MOe=["nodesep","edgesep","ranksep","marginx","marginy"],IOe={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},OOe=["acyclicer","ranker","rankdir","align"],POe=["width","height"],BOe={width:0,height:0},FOe=["minlen","weight","width","height","labeloffset"],zOe={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},GOe=["labelpos"];o($Oe,"buildLayoutGraph");o(VOe,"makeSpaceForEdgeLabels");o(UOe,"injectEdgeLabelProxies");o(HOe,"assignRankMinMax");o(WOe,"removeEdgeLabelProxies");o(YOe,"translateGraph");o(qOe,"assignNodeIntersects");o(XOe,"fixupEdgeLabelCoords");o(jOe,"reversePointsForReversedEdges");o(KOe,"removeBorderNodes");o(QOe,"removeSelfEdges");o(ZOe,"insertSelfEdges");o(JOe,"positionSelfEdges");o(kD,"selectNumberAttrs");o(ED,"canonicalize")});var Pv=M(()=>{"use strict";rD();_ie();lD();wD()});function Ho(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:ePe(t),edges:tPe(t)};return dr(t.graph())||(e.value=rn(t.graph())),e}function ePe(t){return Je(t.nodes(),function(e){var r=t.node(e),n=t.parent(e),i={v:e};return dr(r)||(i.value=r),dr(n)||(i.parent=n),i})}function tPe(t){return Je(t.edges(),function(e){var r=t.edge(e),n={v:e.v,w:e.w};return dr(e.name)||(n.name=e.name),dr(r)||(n.value=r),n})}var SD=M(()=>{"use strict";Ht();rT();o(Ho,"write");o(ePe,"writeNodes");o(tPe,"writeEdges")});var wr,zd,Nie,Rie,lT,rPe,Mie,Iie,nPe,Bm,Die,Oie,Pie,Bie,Fie,zie=M(()=>{"use strict";ht();Ns();SD();wr=new Map,zd=new Map,Nie=new Map,Rie=o(()=>{zd.clear(),Nie.clear(),wr.clear()},"clear"),lT=o((t,e)=>{let r=zd.get(e)||[];return Y.trace("In isDescendant",e," ",t," = ",r.includes(t)),r.includes(t)},"isDescendant"),rPe=o((t,e)=>{let r=zd.get(e)||[];return Y.info("Descendants of ",e," is ",r),Y.info("Edge is ",t),t.v===e||t.w===e?!1:r?r.includes(t.v)||lT(t.v,e)||lT(t.w,e)||r.includes(t.w):(Y.debug("Tilt, ",e,",not in descendants"),!1)},"edgeInCluster"),Mie=o((t,e,r,n)=>{Y.warn("Copying children of ",t,"root",n,"data",e.node(t),n);let i=e.children(t)||[];t!==n&&i.push(t),Y.warn("Copying (nodes) clusterId",t,"nodes",i),i.forEach(a=>{if(e.children(a).length>0)Mie(a,e,r,n);else{let s=e.node(a);Y.info("cp ",a," to ",n," with parent ",t),r.setNode(a,s),n!==e.parent(a)&&(Y.warn("Setting parent",a,e.parent(a)),r.setParent(a,e.parent(a))),t!==n&&a!==t?(Y.debug("Setting parent",a,t),r.setParent(a,t)):(Y.info("In copy ",t,"root",n,"data",e.node(t),n),Y.debug("Not Setting parent for node=",a,"cluster!==rootId",t!==n,"node!==clusterId",a!==t));let l=e.edges(a);Y.debug("Copying Edges",l),l.forEach(u=>{Y.info("Edge",u);let h=e.edge(u.v,u.w,u.name);Y.info("Edge data",h,n);try{rPe(u,n)?(Y.info("Copying as ",u.v,u.w,h,u.name),r.setEdge(u.v,u.w,h,u.name),Y.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):Y.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",n," clusterId:",t)}catch(f){Y.error(f)}})}Y.debug("Removing node",a),e.removeNode(a)})},"copy"),Iie=o((t,e)=>{let r=e.children(t),n=[...r];for(let i of r)Nie.set(i,t),n=[...n,...Iie(i,e)];return n},"extractDescendants"),nPe=o((t,e,r)=>{let n=t.edges().filter(u=>u.v===e||u.w===e),i=t.edges().filter(u=>u.v===r||u.w===r),a=n.map(u=>({v:u.v===e?r:u.v,w:u.w===e?e:u.w})),s=i.map(u=>({v:u.v,w:u.w}));return a.filter(u=>s.some(h=>u.v===h.v&&u.w===h.w))},"findCommonEdges"),Bm=o((t,e,r)=>{let n=e.children(t);if(Y.trace("Searching children of id ",t,n),n.length<1)return t;let i;for(let a of n){let s=Bm(a,e,r),l=nPe(e,r,s);if(s)if(l.length>0)i=s;else return s}return i},"findNonClusterChild"),Die=o(t=>!wr.has(t)||!wr.get(t).externalConnections?t:wr.has(t)?wr.get(t).id:t,"getAnchorId"),Oie=o((t,e)=>{if(!t||e>10){Y.debug("Opting out, no graph ");return}else Y.debug("Opting in, graph ");t.nodes().forEach(function(r){t.children(r).length>0&&(Y.warn("Cluster identified",r," Replacement id in edges: ",Bm(r,t,r)),zd.set(r,Iie(r,t)),wr.set(r,{id:Bm(r,t,r),clusterData:t.node(r)}))}),t.nodes().forEach(function(r){let n=t.children(r),i=t.edges();n.length>0?(Y.debug("Cluster identified",r,zd),i.forEach(a=>{let s=lT(a.v,r),l=lT(a.w,r);s^l&&(Y.warn("Edge: ",a," leaves cluster ",r),Y.warn("Descendants of XXX ",r,": ",zd.get(r)),wr.get(r).externalConnections=!0)})):Y.debug("Not a cluster ",r,zd)});for(let r of wr.keys()){let n=wr.get(r).id,i=t.parent(n);i!==r&&wr.has(i)&&!wr.get(i).externalConnections&&(wr.get(r).id=i)}t.edges().forEach(function(r){let n=t.edge(r);Y.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),Y.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(t.edge(r)));let i=r.v,a=r.w;if(Y.warn("Fix XXX",wr,"ids:",r.v,r.w,"Translating: ",wr.get(r.v)," --- ",wr.get(r.w)),wr.get(r.v)||wr.get(r.w)){if(Y.warn("Fixing and trying - removing XXX",r.v,r.w,r.name),i=Die(r.v),a=Die(r.w),t.removeEdge(r.v,r.w,r.name),i!==r.v){let s=t.parent(i);wr.get(s).externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){let s=t.parent(a);wr.get(s).externalConnections=!0,n.toCluster=r.w}Y.warn("Fix Replacing with XXX",i,a,r.name),t.setEdge(i,a,n,r.name)}}),Y.warn("Adjusted Graph",Ho(t)),Pie(t,0),Y.trace(wr)},"adjustClustersAndEdges"),Pie=o((t,e)=>{if(Y.warn("extractor - ",e,Ho(t),t.children("D")),e>10){Y.error("Bailing out");return}let r=t.nodes(),n=!1;for(let i of r){let a=t.children(i);n=n||a.length>0}if(!n){Y.debug("Done, no node has children",t.nodes());return}Y.debug("Nodes = ",r,e);for(let i of r)if(Y.debug("Extracting node",i,wr,wr.has(i)&&!wr.get(i).externalConnections,!t.parent(i),t.node(i),t.children("D")," Depth ",e),!wr.has(i))Y.debug("Not a cluster",i,e);else if(!wr.get(i).externalConnections&&t.children(i)&&t.children(i).length>0){Y.warn("Cluster without external connections, without a parent and with children",i,e);let s=t.graph().rankdir==="TB"?"LR":"TB";wr.get(i)?.clusterData?.dir&&(s=wr.get(i).clusterData.dir,Y.warn("Fixing dir",wr.get(i).clusterData.dir,s));let l=new Mr({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Y.warn("Old graph before copy",Ho(t)),Mie(i,t,l,i),t.setNode(i,{clusterNode:!0,id:i,clusterData:wr.get(i).clusterData,label:wr.get(i).label,graph:l}),Y.warn("New graph after copy node: (",i,")",Ho(l)),Y.debug("Old graph after copy",Ho(t))}else Y.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!wr.get(i).externalConnections," no parent: ",!t.parent(i)," children ",t.children(i)&&t.children(i).length>0,t.children("D"),e),Y.debug(wr);r=t.nodes(),Y.warn("New list of nodes",r);for(let i of r){let a=t.node(i);Y.warn(" Now next level",i,a),a?.clusterNode&&Pie(a.graph,e+1)}},"extractor"),Bie=o((t,e)=>{if(e.length===0)return[];let r=Object.assign([],e);return e.forEach(n=>{let i=t.children(n),a=Bie(t,i);r=[...r,...a]}),r},"sorter"),Fie=o(t=>Bie(t,t.children()),"sortNodesByHierarchy")});var $ie={};vr($ie,{render:()=>iPe});var Gie,iPe,Vie=M(()=>{"use strict";Pv();SD();Ns();uL();Ft();zie();sw();K5();cL();ht();Cv();Vt();Gie=o(async(t,e,r,n,i,a)=>{Y.warn("Graph in recursive render:XAX",Ho(e),i);let s=e.graph().rankdir;Y.trace("Dir in recursive render - dir:",s);let l=t.insert("g").attr("class","root");e.nodes()?Y.info("Recursive render XXX",e.nodes()):Y.info("No nodes found for",e),e.edges().length>0&&Y.info("Recursive edges",e.edge(e.edges()[0]));let u=l.insert("g").attr("class","clusters"),h=l.insert("g").attr("class","edgePaths"),f=l.insert("g").attr("class","edgeLabels"),d=l.insert("g").attr("class","nodes");await Promise.all(e.nodes().map(async function(y){let v=e.node(y);if(i!==void 0){let x=JSON.parse(JSON.stringify(i.clusterData));Y.trace(`Setting data for parent cluster XXX + Node.id = `,y,` + data=`,x.height,` +Parent cluster`,i.height),e.setNode(i.id,x),e.parent(y)||(Y.trace("Setting parent",y,i.id),e.setParent(y,i.id,x))}if(Y.info("(Insert) Node XXX"+y+": "+JSON.stringify(e.node(y))),v?.clusterNode){Y.info("Cluster identified XBX",y,v.width,e.node(y));let{ranksep:x,nodesep:b}=e.graph();v.graph.setGraph({...v.graph.graph(),ranksep:x+25,nodesep:b});let w=await Gie(d,v.graph,r,n,e.node(y),a),_=w.elem;Qe(v,_),v.diff=w.diff||0,Y.info("New compound node after recursive render XAX",y,"width",v.width,"height",v.height),aJ(_,v)}else e.children(y).length>0?(Y.trace("Cluster - the non recursive path XBX",y,v.id,v,v.width,"Graph:",e),Y.trace(Bm(v.id,e)),wr.set(v.id,{id:Bm(v.id,e),node:v})):(Y.trace("Node - the non recursive path XAX",y,d,e.node(y),s),await gm(d,e.node(y),{config:a,dir:s}))})),await o(async()=>{let y=e.edges().map(async function(v){let x=e.edge(v.v,v.w,v.name);Y.info("Edge "+v.v+" -> "+v.w+": "+JSON.stringify(v)),Y.info("Edge "+v.v+" -> "+v.w+": ",v," ",JSON.stringify(e.edge(v))),Y.info("Fix",wr,"ids:",v.v,v.w,"Translating: ",wr.get(v.v),wr.get(v.w)),await tw(f,x)});await Promise.all(y)},"processEdges")(),Y.info("Graph before layout:",JSON.stringify(Ho(e))),Y.info("############################################# XXX"),Y.info("### Layout ### XXX"),Y.info("############################################# XXX"),Du(e),Y.info("Graph after layout:",JSON.stringify(Ho(e)));let m=0,{subGraphTitleTotalMargin:g}=_u(a);return await Promise.all(Fie(e).map(async function(y){let v=e.node(y);if(Y.info("Position XBX => "+y+": ("+v.x,","+v.y,") width: ",v.width," height: ",v.height),v?.clusterNode)v.y+=g,Y.info("A tainted cluster node XBX1",y,v.id,v.width,v.height,v.x,v.y,e.parent(y)),wr.get(v.id).node=v,_v(v);else if(e.children(y).length>0){Y.info("A pure cluster node XBX1",y,v.id,v.x,v.y,v.width,v.height,e.parent(y)),v.height+=g,e.node(v.parentId);let x=v?.padding/2||0,b=v?.labelBBox?.height||0,w=b-x||0;Y.debug("OffsetY",w,"labelHeight",b,"halfPadding",x),await mm(u,v),wr.get(v.id).node=v}else{let x=e.node(v.parentId);v.y+=g/2,Y.info("A regular node XBX1 - using the padding",v.id,"parent",v.parentId,v.width,v.height,v.x,v.y,"offsetY",v.offsetY,"parent",x,x?.offsetY,v),_v(v)}})),e.edges().forEach(function(y){let v=e.edge(y);Y.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(v),v),v.points.forEach(_=>_.y+=g/2);let x=e.node(y.v);var b=e.node(y.w);let w=nw(h,v,wr,r,x,b,n);rw(v,w)}),e.nodes().forEach(function(y){let v=e.node(y);Y.info(y,v.type,v.diff),v.isGroup&&(m=v.diff)}),Y.warn("Returning from recursive render XAX",l,m),{elem:l,diff:m}},"recursiveRender"),iPe=o(async(t,e)=>{let r=new Mr({multigraph:!0,compound:!0}).setGraph({rankdir:t.direction,nodesep:t.config?.nodeSpacing||t.config?.flowchart?.nodeSpacing||t.nodeSpacing,ranksep:t.config?.rankSpacing||t.config?.flowchart?.rankSpacing||t.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),n=e.select("g");iw(n,t.markers,t.type,t.diagramId),sJ(),iJ(),ZZ(),Rie(),t.nodes.forEach(a=>{r.setNode(a.id,{...a}),a.parentId&&r.setParent(a.id,a.parentId)}),Y.debug("Edges:",t.edges),t.edges.forEach(a=>{if(a.start===a.end){let s=a.start,l=s+"---"+s+"---1",u=s+"---"+s+"---2",h=r.node(s);r.setNode(l,{domId:l,id:l,parentId:h.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),r.setParent(l,h.parentId),r.setNode(u,{domId:u,id:u,parentId:h.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),r.setParent(u,h.parentId);let f=structuredClone(a),d=structuredClone(a),p=structuredClone(a);f.label="",f.arrowTypeEnd="none",f.id=s+"-cyclic-special-1",d.arrowTypeEnd="none",d.id=s+"-cyclic-special-mid",p.label="",h.isGroup&&(f.fromCluster=s,p.toCluster=s),p.id=s+"-cyclic-special-2",r.setEdge(s,l,f,s+"-cyclic-special-0"),r.setEdge(l,u,d,s+"-cyclic-special-1"),r.setEdge(u,s,p,s+"-cyc{"use strict";lJ();ht();Bv={},CD=o(t=>{for(let e of t)Bv[e.name]=e},"registerLayoutLoaders"),aPe=o(()=>{CD([{name:"dagre",loader:o(async()=>await Promise.resolve().then(()=>(Vie(),$ie)),"loader")}])},"registerDefaultLayoutLoaders");aPe();Fm=o(async(t,e)=>{if(!(t.layoutAlgorithm in Bv))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);let r=Bv[t.layoutAlgorithm];return(await r.loader()).render(t,e,oJ,{algorithm:r.algorithm})},"render"),cT=o((t="",{fallback:e="dagre"}={})=>{if(t in Bv)return t;if(e in Bv)return Y.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")});var zm,sPe,oPe,uT=M(()=>{"use strict";ni();ht();zm=o((t,e,r,n)=>{t.attr("class",r);let{width:i,height:a,x:s,y:l}=sPe(t,e);Zr(t,a,i,n);let u=oPe(s,l,i,a,e);t.attr("viewBox",u),Y.debug(`viewBox configured: ${u} with padding: ${e}`)},"setupViewPortForSVG"),sPe=o((t,e)=>{let r=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:r.width+e*2,height:r.height+e*2,x:r.x,y:r.y}},"calculateDimensionsWithPadding"),oPe=o((t,e,r,n,i)=>`${t-i} ${e-i} ${r} ${n}`,"createViewBox")});var lPe,cPe,Uie,Hie=M(()=>{"use strict";mr();Vt();ht();j5();Fv();uT();hr();oL();lPe=o(function(t,e){return e.db.getClasses()},"getClasses"),cPe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing state diagram (v2)",e);let{securityLevel:i,flowchart:a,layout:s}=de(),l;i==="sandbox"&&(l=ze("#i"+e));let u=i==="sandbox"?l.nodes()[0].contentDocument:document;Y.debug("Before getData: ");let h=n.db.getData();Y.debug("Data: ",h);let f=pm(e,i),d=sL();h.type=n.type,h.layoutAlgorithm=cT(s),h.layoutAlgorithm==="dagre"&&s==="elk"&&Y.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."),h.direction=d,h.nodeSpacing=a?.nodeSpacing||50,h.rankSpacing=a?.rankSpacing||50,h.markers=["point","circle","cross"],h.diagramId=e,Y.debug("REF1:",h),await Fm(h,f);let p=h.config.flowchart?.diagramPadding??8;Ut.insertTitle(f,"flowchartTitleText",a?.titleTopMargin||0,n.db.getDiagramTitle()),zm(f,p,"flowchart",a?.useMaxWidth||!1);for(let m of h.nodes){let g=ze(`#${e} [id="${m.id}"]`);if(!g||!m.link)continue;let y=u.createElementNS("http://www.w3.org/2000/svg","a");y.setAttributeNS("http://www.w3.org/2000/svg","class",m.cssClasses),y.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),i==="sandbox"?y.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):m.linkTarget&&y.setAttributeNS("http://www.w3.org/2000/svg","target",m.linkTarget);let v=g.insert(function(){return y},":first-child"),x=g.select(".label-container");x&&v.append(function(){return x.node()});let b=g.select(".label");b&&v.append(function(){return b.node()})}},"draw"),Uie={getClasses:lPe,draw:cPe}});var AD,Wie,Yie=M(()=>{"use strict";AD=function(){var t=o(function(kn,_t,St,bt){for(St=St||{},bt=kn.length;bt--;St[kn[bt]]=_t);return St},"o"),e=[1,4],r=[1,3],n=[1,5],i=[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],a=[2,2],s=[1,13],l=[1,14],u=[1,15],h=[1,16],f=[1,23],d=[1,25],p=[1,26],m=[1,27],g=[1,49],y=[1,48],v=[1,29],x=[1,30],b=[1,31],w=[1,32],_=[1,33],T=[1,44],E=[1,46],L=[1,42],C=[1,47],A=[1,43],I=[1,50],D=[1,45],k=[1,51],R=[1,52],S=[1,34],O=[1,35],N=[1,36],P=[1,37],F=[1,57],B=[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],$=[1,61],z=[1,60],W=[1,62],j=[8,9,11,75,77],K=[1,77],ie=[1,90],Q=[1,95],ee=[1,94],J=[1,91],H=[1,87],q=[1,93],Z=[1,89],ae=[1,96],ue=[1,92],ce=[1,97],te=[1,88],De=[8,9,10,11,40,75,77],oe=[8,9,10,11,40,46,75,77],ke=[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],Fe=[8,9,11,44,60,75,77,88,101,104,105,108,110,113,114,115],Be=[44,60,88,101,104,105,108,110,113,114,115],Ve=[1,123],Ge=[1,122],He=[1,130],xe=[1,144],X=[1,145],fe=[1,146],he=[1,147],ge=[1,132],ne=[1,134],ye=[1,138],U=[1,139],Te=[1,140],se=[1,141],Ee=[1,142],Ae=[1,143],Pe=[1,148],Me=[1,149],me=[1,128],We=[1,129],Re=[1,136],tt=[1,131],gt=[1,135],Et=[1,133],vt=[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],Ye=[1,151],Tt=[1,153],$e=[8,9,11],rt=[8,9,10,11,14,44,60,88,104,105,108,110,113,114,115],ft=[1,173],kt=[1,169],er=[1,170],dt=[1,174],Xe=[1,171],ct=[1,172],Lt=[77,115,118],Rt=[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],zt=[10,105],Xn=[31,49,51,53,55,57,62,64,66,67,69,71,115,116,117],or=[1,242],hn=[1,240],Tn=[1,244],Ur=[1,238],ri=[1,239],Mn=[1,241],yt=[1,243],Se=[1,245],at=[1,263],At=[8,9,11,105],pr=[8,9,10,11,60,83,104,105,108,109,110,111],In={trace:o(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:o(function(_t,St,bt,Ue,Kt,pe,bi){var be=pe.length-1;switch(Kt){case 2:this.$=[];break;case 3:(!Array.isArray(pe[be])||pe[be].length>0)&&pe[be-1].push(pe[be]),this.$=pe[be-1];break;case 4:case 181:this.$=pe[be];break;case 11:Ue.setDirection("TB"),this.$="TB";break;case 12:Ue.setDirection(pe[be-1]),this.$=pe[be-1];break;case 27:this.$=pe[be-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=Ue.addSubGraph(pe[be-6],pe[be-1],pe[be-4]);break;case 34:this.$=Ue.addSubGraph(pe[be-3],pe[be-1],pe[be-3]);break;case 35:this.$=Ue.addSubGraph(void 0,pe[be-1],void 0);break;case 37:this.$=pe[be].trim(),Ue.setAccTitle(this.$);break;case 38:case 39:this.$=pe[be].trim(),Ue.setAccDescription(this.$);break;case 43:this.$=pe[be-1]+pe[be];break;case 44:this.$=pe[be];break;case 45:Ue.addVertex(pe[be-1][0],void 0,void 0,void 0,void 0,void 0,void 0,pe[be]),Ue.addLink(pe[be-3].stmt,pe[be-1],pe[be-2]),this.$={stmt:pe[be-1],nodes:pe[be-1].concat(pe[be-3].nodes)};break;case 46:Ue.addLink(pe[be-2].stmt,pe[be],pe[be-1]),this.$={stmt:pe[be],nodes:pe[be].concat(pe[be-2].nodes)};break;case 47:Ue.addLink(pe[be-3].stmt,pe[be-1],pe[be-2]),this.$={stmt:pe[be-1],nodes:pe[be-1].concat(pe[be-3].nodes)};break;case 48:this.$={stmt:pe[be-1],nodes:pe[be-1]};break;case 49:Ue.addVertex(pe[be-1][0],void 0,void 0,void 0,void 0,void 0,void 0,pe[be]),this.$={stmt:pe[be-1],nodes:pe[be-1],shapeData:pe[be]};break;case 50:this.$={stmt:pe[be],nodes:pe[be]};break;case 51:this.$=[pe[be]];break;case 52:Ue.addVertex(pe[be-5][0],void 0,void 0,void 0,void 0,void 0,void 0,pe[be-4]),this.$=pe[be-5].concat(pe[be]);break;case 53:this.$=pe[be-4].concat(pe[be]);break;case 54:this.$=pe[be];break;case 55:this.$=pe[be-2],Ue.setClass(pe[be-2],pe[be]);break;case 56:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"square");break;case 57:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"doublecircle");break;case 58:this.$=pe[be-5],Ue.addVertex(pe[be-5],pe[be-2],"circle");break;case 59:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"ellipse");break;case 60:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"stadium");break;case 61:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"subroutine");break;case 62:this.$=pe[be-7],Ue.addVertex(pe[be-7],pe[be-1],"rect",void 0,void 0,void 0,Object.fromEntries([[pe[be-5],pe[be-3]]]));break;case 63:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"cylinder");break;case 64:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"round");break;case 65:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"diamond");break;case 66:this.$=pe[be-5],Ue.addVertex(pe[be-5],pe[be-2],"hexagon");break;case 67:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"odd");break;case 68:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"trapezoid");break;case 69:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"inv_trapezoid");break;case 70:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"lean_right");break;case 71:this.$=pe[be-3],Ue.addVertex(pe[be-3],pe[be-1],"lean_left");break;case 72:this.$=pe[be],Ue.addVertex(pe[be]);break;case 73:pe[be-1].text=pe[be],this.$=pe[be-1];break;case 74:case 75:pe[be-2].text=pe[be-1],this.$=pe[be-2];break;case 76:this.$=pe[be];break;case 77:var vo=Ue.destructLink(pe[be],pe[be-2]);this.$={type:vo.type,stroke:vo.stroke,length:vo.length,text:pe[be-1]};break;case 78:this.$={text:pe[be],type:"text"};break;case 79:this.$={text:pe[be-1].text+""+pe[be],type:pe[be-1].type};break;case 80:this.$={text:pe[be],type:"string"};break;case 81:this.$={text:pe[be],type:"markdown"};break;case 82:var vo=Ue.destructLink(pe[be]);this.$={type:vo.type,stroke:vo.stroke,length:vo.length};break;case 83:this.$=pe[be-1];break;case 84:this.$={text:pe[be],type:"text"};break;case 85:this.$={text:pe[be-1].text+""+pe[be],type:pe[be-1].type};break;case 86:this.$={text:pe[be],type:"string"};break;case 87:case 102:this.$={text:pe[be],type:"markdown"};break;case 99:this.$={text:pe[be],type:"text"};break;case 100:this.$={text:pe[be-1].text+""+pe[be],type:pe[be-1].type};break;case 101:this.$={text:pe[be],type:"text"};break;case 103:this.$=pe[be-4],Ue.addClass(pe[be-2],pe[be]);break;case 104:this.$=pe[be-4],Ue.setClass(pe[be-2],pe[be]);break;case 105:case 113:this.$=pe[be-1],Ue.setClickEvent(pe[be-1],pe[be]);break;case 106:case 114:this.$=pe[be-3],Ue.setClickEvent(pe[be-3],pe[be-2]),Ue.setTooltip(pe[be-3],pe[be]);break;case 107:this.$=pe[be-2],Ue.setClickEvent(pe[be-2],pe[be-1],pe[be]);break;case 108:this.$=pe[be-4],Ue.setClickEvent(pe[be-4],pe[be-3],pe[be-2]),Ue.setTooltip(pe[be-4],pe[be]);break;case 109:this.$=pe[be-2],Ue.setLink(pe[be-2],pe[be]);break;case 110:this.$=pe[be-4],Ue.setLink(pe[be-4],pe[be-2]),Ue.setTooltip(pe[be-4],pe[be]);break;case 111:this.$=pe[be-4],Ue.setLink(pe[be-4],pe[be-2],pe[be]);break;case 112:this.$=pe[be-6],Ue.setLink(pe[be-6],pe[be-4],pe[be]),Ue.setTooltip(pe[be-6],pe[be-2]);break;case 115:this.$=pe[be-1],Ue.setLink(pe[be-1],pe[be]);break;case 116:this.$=pe[be-3],Ue.setLink(pe[be-3],pe[be-2]),Ue.setTooltip(pe[be-3],pe[be]);break;case 117:this.$=pe[be-3],Ue.setLink(pe[be-3],pe[be-2],pe[be]);break;case 118:this.$=pe[be-5],Ue.setLink(pe[be-5],pe[be-4],pe[be]),Ue.setTooltip(pe[be-5],pe[be-2]);break;case 119:this.$=pe[be-4],Ue.addVertex(pe[be-2],void 0,void 0,pe[be]);break;case 120:this.$=pe[be-4],Ue.updateLink([pe[be-2]],pe[be]);break;case 121:this.$=pe[be-4],Ue.updateLink(pe[be-2],pe[be]);break;case 122:this.$=pe[be-8],Ue.updateLinkInterpolate([pe[be-6]],pe[be-2]),Ue.updateLink([pe[be-6]],pe[be]);break;case 123:this.$=pe[be-8],Ue.updateLinkInterpolate(pe[be-6],pe[be-2]),Ue.updateLink(pe[be-6],pe[be]);break;case 124:this.$=pe[be-6],Ue.updateLinkInterpolate([pe[be-4]],pe[be]);break;case 125:this.$=pe[be-6],Ue.updateLinkInterpolate(pe[be-4],pe[be]);break;case 126:case 128:this.$=[pe[be]];break;case 127:case 129:pe[be-2].push(pe[be]),this.$=pe[be-2];break;case 131:this.$=pe[be-1]+pe[be];break;case 179:this.$=pe[be];break;case 180:this.$=pe[be-1]+""+pe[be];break;case 182:this.$=pe[be-1]+""+pe[be];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"};break}},"anonymous"),table:[{3:1,4:2,9:e,10:r,12:n},{1:[3]},t(i,a,{5:6}),{4:7,9:e,10:r,12:n},{4:8,9:e,10:r,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,83:v,84:x,85:b,86:w,87:_,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R,120:S,121:O,122:N,123:P},t(i,[2,9]),t(i,[2,10]),t(i,[2,11]),{8:[1,54],9:[1,55],10:F,15:53,18:56},t(B,[2,3]),t(B,[2,4]),t(B,[2,5]),t(B,[2,6]),t(B,[2,7]),t(B,[2,8]),{8:$,9:z,11:W,21:58,41:59,72:63,75:[1,64],77:[1,65]},{8:$,9:z,11:W,21:66},{8:$,9:z,11:W,21:67},{8:$,9:z,11:W,21:68},{8:$,9:z,11:W,21:69},{8:$,9:z,11:W,21:70},{8:$,9:z,10:[1,71],11:W,21:72},t(B,[2,36]),{35:[1,73]},{37:[1,74]},t(B,[2,39]),t(j,[2,50],{18:75,39:76,10:F,40:K}),{10:[1,78]},{10:[1,79]},{10:[1,80]},{10:[1,81]},{14:ie,44:Q,60:ee,79:[1,85],88:J,94:[1,82],96:[1,83],100:84,104:H,105:q,108:Z,110:ae,113:ue,114:ce,115:te,119:86},t(B,[2,183]),t(B,[2,184]),t(B,[2,185]),t(B,[2,186]),t(De,[2,51]),t(De,[2,54],{46:[1,98]}),t(oe,[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:y,63:[1,106],65:[1,107],67:[1,108],68:[1,109],70:[1,110],88:T,101:E,104:L,105:C,108:A,110:I,113:D,114:k,115:R}),t(ke,[2,179]),t(ke,[2,140]),t(ke,[2,141]),t(ke,[2,142]),t(ke,[2,143]),t(ke,[2,144]),t(ke,[2,145]),t(ke,[2,146]),t(ke,[2,147]),t(ke,[2,148]),t(ke,[2,149]),t(ke,[2,150]),t(i,[2,12]),t(i,[2,18]),t(i,[2,19]),{9:[1,112]},t(Fe,[2,26],{18:113,10:F}),t(B,[2,27]),{42:114,43:38,44:g,45:39,47:40,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R},t(B,[2,40]),t(B,[2,41]),t(B,[2,42]),t(Be,[2,76],{73:115,62:[1,117],74:[1,116]}),{76:118,78:119,79:[1,120],80:[1,121],115:Ve,118:Ge},t([44,60,62,74,88,101,104,105,108,110,113,114,115],[2,82]),t(B,[2,28]),t(B,[2,29]),t(B,[2,30]),t(B,[2,31]),t(B,[2,32]),{10:He,12:xe,14:X,27:fe,28:124,32:he,44:ge,60:ne,75:ye,79:[1,126],80:[1,127],82:137,83:U,84:Te,85:se,86:Ee,87:Ae,88:Pe,89:Me,90:125,104:me,108:We,110:Re,113:tt,114:gt,115:Et},t(vt,a,{5:150}),t(B,[2,37]),t(B,[2,38]),t(j,[2,48],{44:Ye}),t(j,[2,49],{18:152,10:F,40:Tt}),t(De,[2,44]),{44:g,47:154,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R},{101:[1,155],102:156,104:[1,157]},{44:g,47:158,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R},{44:g,47:159,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R},t($e,[2,105],{10:[1,160],95:[1,161]}),{79:[1,162]},t($e,[2,113],{119:164,10:[1,163],14:ie,44:Q,60:ee,88:J,104:H,105:q,108:Z,110:ae,113:ue,114:ce,115:te}),t($e,[2,115],{10:[1,165]}),t(rt,[2,181]),t(rt,[2,168]),t(rt,[2,169]),t(rt,[2,170]),t(rt,[2,171]),t(rt,[2,172]),t(rt,[2,173]),t(rt,[2,174]),t(rt,[2,175]),t(rt,[2,176]),t(rt,[2,177]),t(rt,[2,178]),{44:g,47:166,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R},{30:167,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{30:175,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{30:177,50:[1,176],67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{30:178,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{30:179,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{30:180,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{108:[1,181]},{30:182,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{30:183,65:[1,184],67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{30:185,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{30:186,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{30:187,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},t(ke,[2,180]),t(i,[2,20]),t(Fe,[2,25]),t(j,[2,46],{39:188,18:189,10:F,40:K}),t(Be,[2,73],{10:[1,190]}),{10:[1,191]},{30:192,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{77:[1,193],78:194,115:Ve,118:Ge},t(Lt,[2,78]),t(Lt,[2,80]),t(Lt,[2,81]),t(Lt,[2,166]),t(Lt,[2,167]),{8:$,9:z,10:He,11:W,12:xe,14:X,21:196,27:fe,29:[1,195],32:he,44:ge,60:ne,75:ye,82:137,83:U,84:Te,85:se,86:Ee,87:Ae,88:Pe,89:Me,90:197,104:me,108:We,110:Re,113:tt,114:gt,115:Et},t(Rt,[2,99]),t(Rt,[2,101]),t(Rt,[2,102]),t(Rt,[2,155]),t(Rt,[2,156]),t(Rt,[2,157]),t(Rt,[2,158]),t(Rt,[2,159]),t(Rt,[2,160]),t(Rt,[2,161]),t(Rt,[2,162]),t(Rt,[2,163]),t(Rt,[2,164]),t(Rt,[2,165]),t(Rt,[2,88]),t(Rt,[2,89]),t(Rt,[2,90]),t(Rt,[2,91]),t(Rt,[2,92]),t(Rt,[2,93]),t(Rt,[2,94]),t(Rt,[2,95]),t(Rt,[2,96]),t(Rt,[2,97]),t(Rt,[2,98]),{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,198],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,83:v,84:x,85:b,86:w,87:_,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R,120:S,121:O,122:N,123:P},{10:F,18:199},{44:[1,200]},t(De,[2,43]),{10:[1,201],44:g,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:111,113:D,114:k,115:R},{10:[1,202]},{10:[1,203],105:[1,204]},t(zt,[2,126]),{10:[1,205],44:g,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:111,113:D,114:k,115:R},{10:[1,206],44:g,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:111,113:D,114:k,115:R},{79:[1,207]},t($e,[2,107],{10:[1,208]}),t($e,[2,109],{10:[1,209]}),{79:[1,210]},t(rt,[2,182]),{79:[1,211],97:[1,212]},t(De,[2,55],{112:111,44:g,60:y,88:T,101:E,104:L,105:C,108:A,110:I,113:D,114:k,115:R}),{31:[1,213],67:ft,81:214,115:dt,116:Xe,117:ct},t(Xn,[2,84]),t(Xn,[2,86]),t(Xn,[2,87]),t(Xn,[2,151]),t(Xn,[2,152]),t(Xn,[2,153]),t(Xn,[2,154]),{49:[1,215],67:ft,81:214,115:dt,116:Xe,117:ct},{30:216,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{51:[1,217],67:ft,81:214,115:dt,116:Xe,117:ct},{53:[1,218],67:ft,81:214,115:dt,116:Xe,117:ct},{55:[1,219],67:ft,81:214,115:dt,116:Xe,117:ct},{57:[1,220],67:ft,81:214,115:dt,116:Xe,117:ct},{60:[1,221]},{64:[1,222],67:ft,81:214,115:dt,116:Xe,117:ct},{66:[1,223],67:ft,81:214,115:dt,116:Xe,117:ct},{30:224,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},{31:[1,225],67:ft,81:214,115:dt,116:Xe,117:ct},{67:ft,69:[1,226],71:[1,227],81:214,115:dt,116:Xe,117:ct},{67:ft,69:[1,229],71:[1,228],81:214,115:dt,116:Xe,117:ct},t(j,[2,45],{18:152,10:F,40:Tt}),t(j,[2,47],{44:Ye}),t(Be,[2,75]),t(Be,[2,74]),{62:[1,230],67:ft,81:214,115:dt,116:Xe,117:ct},t(Be,[2,77]),t(Lt,[2,79]),{30:231,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},t(vt,a,{5:232}),t(Rt,[2,100]),t(B,[2,35]),{43:233,44:g,45:39,47:40,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R},{10:F,18:234},{10:or,60:hn,83:Tn,91:235,104:Ur,106:236,107:237,108:ri,109:Mn,110:yt,111:Se},{10:or,60:hn,83:Tn,91:246,103:[1,247],104:Ur,106:236,107:237,108:ri,109:Mn,110:yt,111:Se},{10:or,60:hn,83:Tn,91:248,103:[1,249],104:Ur,106:236,107:237,108:ri,109:Mn,110:yt,111:Se},{104:[1,250]},{10:or,60:hn,83:Tn,91:251,104:Ur,106:236,107:237,108:ri,109:Mn,110:yt,111:Se},{44:g,47:252,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R},t($e,[2,106]),{79:[1,253]},{79:[1,254],97:[1,255]},t($e,[2,114]),t($e,[2,116],{10:[1,256]}),t($e,[2,117]),t(oe,[2,56]),t(Xn,[2,85]),t(oe,[2,57]),{51:[1,257],67:ft,81:214,115:dt,116:Xe,117:ct},t(oe,[2,64]),t(oe,[2,59]),t(oe,[2,60]),t(oe,[2,61]),{108:[1,258]},t(oe,[2,63]),t(oe,[2,65]),{66:[1,259],67:ft,81:214,115:dt,116:Xe,117:ct},t(oe,[2,67]),t(oe,[2,68]),t(oe,[2,70]),t(oe,[2,69]),t(oe,[2,71]),t([10,44,60,88,101,104,105,108,110,113,114,115],[2,83]),{31:[1,260],67:ft,81:214,115:dt,116:Xe,117:ct},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,261],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,83:v,84:x,85:b,86:w,87:_,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R,120:S,121:O,122:N,123:P},t(De,[2,53]),{43:262,44:g,45:39,47:40,60:y,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R},t($e,[2,119],{105:at}),t(At,[2,128],{107:264,10:or,60:hn,83:Tn,104:Ur,108:ri,109:Mn,110:yt,111:Se}),t(pr,[2,130]),t(pr,[2,132]),t(pr,[2,133]),t(pr,[2,134]),t(pr,[2,135]),t(pr,[2,136]),t(pr,[2,137]),t(pr,[2,138]),t(pr,[2,139]),t($e,[2,120],{105:at}),{10:[1,265]},t($e,[2,121],{105:at}),{10:[1,266]},t(zt,[2,127]),t($e,[2,103],{105:at}),t($e,[2,104],{112:111,44:g,60:y,88:T,101:E,104:L,105:C,108:A,110:I,113:D,114:k,115:R}),t($e,[2,108]),t($e,[2,110],{10:[1,267]}),t($e,[2,111]),{97:[1,268]},{51:[1,269]},{62:[1,270]},{66:[1,271]},{8:$,9:z,11:W,21:272},t(B,[2,34]),t(De,[2,52]),{10:or,60:hn,83:Tn,104:Ur,106:273,107:237,108:ri,109:Mn,110:yt,111:Se},t(pr,[2,131]),{14:ie,44:Q,60:ee,88:J,100:274,104:H,105:q,108:Z,110:ae,113:ue,114:ce,115:te,119:86},{14:ie,44:Q,60:ee,88:J,100:275,104:H,105:q,108:Z,110:ae,113:ue,114:ce,115:te,119:86},{97:[1,276]},t($e,[2,118]),t(oe,[2,58]),{30:277,67:ft,79:kt,80:er,81:168,115:dt,116:Xe,117:ct},t(oe,[2,66]),t(vt,a,{5:278}),t(At,[2,129],{107:264,10:or,60:hn,83:Tn,104:Ur,108:ri,109:Mn,110:yt,111:Se}),t($e,[2,124],{119:164,10:[1,279],14:ie,44:Q,60:ee,88:J,104:H,105:q,108:Z,110:ae,113:ue,114:ce,115:te}),t($e,[2,125],{119:164,10:[1,280],14:ie,44:Q,60:ee,88:J,104:H,105:q,108:Z,110:ae,113:ue,114:ce,115:te}),t($e,[2,112]),{31:[1,281],67:ft,81:214,115:dt,116:Xe,117:ct},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,282],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,83:v,84:x,85:b,86:w,87:_,88:T,101:E,104:L,105:C,108:A,110:I,112:41,113:D,114:k,115:R,120:S,121:O,122:N,123:P},{10:or,60:hn,83:Tn,91:283,104:Ur,106:236,107:237,108:ri,109:Mn,110:yt,111:Se},{10:or,60:hn,83:Tn,91:284,104:Ur,106:236,107:237,108:ri,109:Mn,110:yt,111:Se},t(oe,[2,62]),t(B,[2,33]),t($e,[2,122],{105:at}),t($e,[2,123],{105:at})],defaultActions:{},parseError:o(function(_t,St){if(St.recoverable)this.trace(_t);else{var bt=new Error(_t);throw bt.hash=St,bt}},"parseError"),parse:o(function(_t){var St=this,bt=[0],Ue=[],Kt=[null],pe=[],bi=this.table,be="",vo=0,bF=0,wF=0,axe=2,TF=1,sxe=pe.slice.call(arguments,1),ji=Object.create(this.lexer),Pf={yy:{}};for(var gS in this.yy)Object.prototype.hasOwnProperty.call(this.yy,gS)&&(Pf.yy[gS]=this.yy[gS]);ji.setInput(_t,Pf.yy),Pf.yy.lexer=ji,Pf.yy.parser=this,typeof ji.yylloc>"u"&&(ji.yylloc={});var yS=ji.yylloc;pe.push(yS);var oxe=ji.options&&ji.options.ranges;typeof Pf.yy.parseError=="function"?this.parseError=Pf.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Sat(Vs){bt.length=bt.length-2*Vs,Kt.length=Kt.length-Vs,pe.length=pe.length-Vs}o(Sat,"popStack");function lxe(){var Vs;return Vs=Ue.pop()||ji.lex()||TF,typeof Vs!="number"&&(Vs instanceof Array&&(Ue=Vs,Vs=Ue.pop()),Vs=St.symbols_[Vs]||Vs),Vs}o(lxe,"lex");for(var Va,vS,Bf,xo,Cat,xS,Q0={},Eb,Xc,kF,Sb;;){if(Bf=bt[bt.length-1],this.defaultActions[Bf]?xo=this.defaultActions[Bf]:((Va===null||typeof Va>"u")&&(Va=lxe()),xo=bi[Bf]&&bi[Bf][Va]),typeof xo>"u"||!xo.length||!xo[0]){var bS="";Sb=[];for(Eb in bi[Bf])this.terminals_[Eb]&&Eb>axe&&Sb.push("'"+this.terminals_[Eb]+"'");ji.showPosition?bS="Parse error on line "+(vo+1)+`: +`+ji.showPosition()+` +Expecting `+Sb.join(", ")+", got '"+(this.terminals_[Va]||Va)+"'":bS="Parse error on line "+(vo+1)+": Unexpected "+(Va==TF?"end of input":"'"+(this.terminals_[Va]||Va)+"'"),this.parseError(bS,{text:ji.match,token:this.terminals_[Va]||Va,line:ji.yylineno,loc:yS,expected:Sb})}if(xo[0]instanceof Array&&xo.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Bf+", token: "+Va);switch(xo[0]){case 1:bt.push(Va),Kt.push(ji.yytext),pe.push(ji.yylloc),bt.push(xo[1]),Va=null,vS?(Va=vS,vS=null):(bF=ji.yyleng,be=ji.yytext,vo=ji.yylineno,yS=ji.yylloc,wF>0&&wF--);break;case 2:if(Xc=this.productions_[xo[1]][1],Q0.$=Kt[Kt.length-Xc],Q0._$={first_line:pe[pe.length-(Xc||1)].first_line,last_line:pe[pe.length-1].last_line,first_column:pe[pe.length-(Xc||1)].first_column,last_column:pe[pe.length-1].last_column},oxe&&(Q0._$.range=[pe[pe.length-(Xc||1)].range[0],pe[pe.length-1].range[1]]),xS=this.performAction.apply(Q0,[be,bF,vo,Pf.yy,xo[1],Kt,pe].concat(sxe)),typeof xS<"u")return xS;Xc&&(bt=bt.slice(0,-1*Xc*2),Kt=Kt.slice(0,-1*Xc),pe=pe.slice(0,-1*Xc)),bt.push(this.productions_[xo[1]][0]),Kt.push(Q0.$),pe.push(Q0._$),kF=bi[bt[bt.length-2]][bt[bt.length-1]],bt.push(kF);break;case 3:return!0}}return!0},"parse")},On=function(){var kn={EOF:1,parseError:o(function(St,bt){if(this.yy.parser)this.yy.parser.parseError(St,bt);else throw new Error(St)},"parseError"),setInput:o(function(_t,St){return this.yy=St||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:o(function(){var _t=this._input[0];this.yytext+=_t,this.yyleng++,this.offset++,this.match+=_t,this.matched+=_t;var St=_t.match(/(?:\r\n?|\n).*/g);return St?(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:o(function(_t){var St=_t.length,bt=_t.split(/(?:\r\n?|\n)/g);this._input=_t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-St),this.offset-=St;var Ue=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),bt.length-1&&(this.yylineno-=bt.length-1);var Kt=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:bt?(bt.length===Ue.length?this.yylloc.first_column:0)+Ue[Ue.length-bt.length].length-bt[0].length:this.yylloc.first_column-St},this.options.ranges&&(this.yylloc.range=[Kt[0],Kt[0]+this.yyleng-St]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(_t){this.unput(this.match.slice(_t))},"less"),pastInput:o(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:o(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:o(function(){var _t=this.pastInput(),St=new Array(_t.length+1).join("-");return _t+this.upcomingInput()+` +`+St+"^"},"showPosition"),test_match:o(function(_t,St){var bt,Ue,Kt;if(this.options.backtrack_lexer&&(Kt={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&&(Kt.yylloc.range=this.yylloc.range.slice(0))),Ue=_t[0].match(/(?:\r\n?|\n).*/g),Ue&&(this.yylineno+=Ue.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ue?Ue[Ue.length-1].length-Ue[Ue.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],bt=this.performAction.call(this,this.yy,this,St,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),bt)return bt;if(this._backtrack){for(var pe in Kt)this[pe]=Kt[pe];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var _t,St,bt,Ue;this._more||(this.yytext="",this.match="");for(var Kt=this._currentRules(),pe=0;peSt[0].length)){if(St=bt,Ue=pe,this.options.backtrack_lexer){if(_t=this.test_match(bt,Kt[pe]),_t!==!1)return _t;if(this._backtrack){St=!1;continue}else return!1}else if(!this.options.flex)break}return St?(_t=this.test_match(St,Kt[Ue]),_t!==!1?_t:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var St=this.next();return St||this.lex()},"lex"),begin:o(function(St){this.conditionStack.push(St)},"begin"),popState:o(function(){var St=this.conditionStack.length-1;return St>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(St){return St=this.conditionStack.length-1-Math.abs(St||0),St>=0?this.conditionStack[St]:"INITIAL"},"topState"),pushState:o(function(St){this.begin(St)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(St,bt,Ue,Kt){var pe=Kt;switch(Ue){case 0:return this.begin("acc_title"),34;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),36;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),bt.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let bi=/\n\s*/g;return bt.yytext=bt.yytext.replace(bi,"
    "),40;break;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 94;case 17:this.popState();break;case 18:return 95;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;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 33:this.popState();break;case 34:return 87;case 35:return St.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return St.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return St.lex.firstGraph()&&this.begin("dir"),12;break;case 38:return 27;case 39:return 32;case 40:return 97;case 41:return 97;case 42:return 97;case 43:return 97;case 44:return this.popState(),13;break;case 45:return this.popState(),14;break;case 46:return this.popState(),14;break;case 47:return this.popState(),14;break;case 48:return this.popState(),14;break;case 49:return this.popState(),14;break;case 50:return this.popState(),14;break;case 51:return this.popState(),14;break;case 52:return this.popState(),14;break;case 53:return this.popState(),14;break;case 54:return this.popState(),14;break;case 55:return 120;case 56:return 121;case 57:return 122;case 58:return 123;case 59:return 104;case 60:return 110;case 61:return 46;case 62:return 60;case 63:return 44;case 64:return 8;case 65:return 105;case 66:return 114;case 67:return this.popState(),77;break;case 68:return this.pushState("edgeText"),75;break;case 69:return 118;case 70:return this.popState(),77;break;case 71:return this.pushState("thickEdgeText"),75;break;case 72:return 118;case 73:return this.popState(),77;break;case 74:return this.pushState("dottedEdgeText"),75;break;case 75:return 118;case 76:return 77;case 77:return this.popState(),53;break;case 78:return"TEXT";case 79:return this.pushState("ellipseText"),52;break;case 80:return this.popState(),55;break;case 81:return this.pushState("text"),54;break;case 82:return this.popState(),57;break;case 83:return this.pushState("text"),56;break;case 84:return 58;case 85:return this.pushState("text"),67;break;case 86:return this.popState(),64;break;case 87:return this.pushState("text"),63;break;case 88:return this.popState(),49;break;case 89:return this.pushState("text"),48;break;case 90:return this.popState(),69;break;case 91:return this.popState(),71;break;case 92:return 116;case 93:return this.pushState("trapText"),68;break;case 94:return this.pushState("trapText"),70;break;case 95:return 117;case 96:return 67;case 97:return 89;case 98:return"SEP";case 99:return 88;case 100:return 114;case 101:return 110;case 102:return 44;case 103:return 108;case 104:return 113;case 105:return 115;case 106:return this.popState(),62;break;case 107:return this.pushState("text"),62;break;case 108:return this.popState(),51;break;case 109:return this.pushState("text"),50;break;case 110:return this.popState(),31;break;case 111:return this.pushState("text"),29;break;case 112:return this.popState(),66;break;case 113:return this.pushState("text"),65;break;case 114:return"TEXT";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}}};return kn}();In.lexer=On;function Ir(){this.yy={}}return o(Ir,"Parser"),Ir.prototype=In,In.Parser=Ir,new Ir}();AD.parser=AD;Wie=AD});var uPe,hPe,qie,Xie=M(()=>{"use strict";To();uPe=o((t,e)=>{let r=z1,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Hs(n,i,a,e)},"fade"),hPe=o(t=>`.label { + font-family: ${t.fontFamily}; + color: ${t.nodeTextColor||t.textColor}; + } + .cluster-label text { + fill: ${t.titleColor}; + } + .cluster-label span { + color: ${t.titleColor}; + } + .cluster-label span p { + background-color: transparent; + } + + .label text,span { + fill: ${t.nodeTextColor||t.textColor}; + color: ${t.nodeTextColor||t.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + .rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label { + text-anchor: middle; + } + // .flowchart-label .text-outer-tspan { + // text-anchor: middle; + // } + // .flowchart-label .text-inner-tspan { + // text-anchor: start; + // } + + .node .katex path { + fill: #000; + stroke: #000; + stroke-width: 1px; + } + + .rough-node .label,.node .label, .image-shape .label, .icon-shape .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + + .root .anchor path { + fill: ${t.lineColor} !important; + stroke-width: 0; + stroke: ${t.lineColor}; + } + + .arrowheadPath { + fill: ${t.arrowheadColor}; + } + + .edgePath .path { + stroke: ${t.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${t.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${t.edgeLabelBackground}; + p { + background-color: ${t.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${t.edgeLabelBackground}; + fill: ${t.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${uPe(t.edgeLabelBackground,.5)}; + // background-color: + } + + .cluster rect { + fill: ${t.clusterBkg}; + stroke: ${t.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${t.titleColor}; + } + + .cluster span { + color: ${t.titleColor}; + } + /* .cluster div { + color: ${t.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${t.fontFamily}; + font-size: 12px; + background: ${t.tertiaryColor}; + border: 1px solid ${t.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; + } + + rect.text { + fill: none; + stroke-width: 0; + } + + .icon-shape, .image-shape { + background-color: ${t.edgeLabelBackground}; + p { + background-color: ${t.edgeLabelBackground}; + padding: 2px; + } + rect { + opacity: 0.5; + background-color: ${t.edgeLabelBackground}; + fill: ${t.edgeLabelBackground}; + } + text-align: center; + } +`,"getStyles"),qie=hPe});var hT={};vr(hT,{diagram:()=>fPe});var fPe,fT=M(()=>{"use strict";Vt();oL();Hie();Yie();Xie();fPe={parser:Wie,db:X5,renderer:Uie,styles:qie,init:o(t=>{t.flowchart||(t.flowchart={}),t.layout&&n7({layout:t.layout}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,n7({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}}),X5.clear(),X5.setGen("gen-2")},"init")}});var _D,Jie,eae=M(()=>{"use strict";_D=function(){var t=o(function(C,A,I,D){for(I=I||{},D=C.length;D--;I[C[D]]=A);return I},"o"),e=[6,8,10,20,22,24,26,27,28],r=[1,10],n=[1,11],i=[1,12],a=[1,13],s=[1,14],l=[1,15],u=[1,21],h=[1,22],f=[1,23],d=[1,24],p=[1,25],m=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],g=[1,34],y=[27,28,46,47],v=[41,42,43,44,45],x=[17,34],b=[1,54],w=[1,53],_=[17,34,36,38],T={trace:o(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:o(function(A,I,D,k,R,S,O){var N=S.length-1;switch(R){case 1:break;case 2:this.$=[];break;case 3:S[N-1].push(S[N]),this.$=S[N-1];break;case 4:case 5:this.$=S[N];break;case 6:case 7:this.$=[];break;case 8:k.addEntity(S[N-4]),k.addEntity(S[N-2]),k.addRelationship(S[N-4],S[N],S[N-2],S[N-3]);break;case 9:k.addEntity(S[N-3]),k.addAttributes(S[N-3],S[N-1]);break;case 10:k.addEntity(S[N-2]);break;case 11:k.addEntity(S[N]);break;case 12:k.addEntity(S[N-6],S[N-4]),k.addAttributes(S[N-6],S[N-1]);break;case 13:k.addEntity(S[N-5],S[N-3]);break;case 14:k.addEntity(S[N-3],S[N-1]);break;case 15:case 16:this.$=S[N].trim(),k.setAccTitle(this.$);break;case 17:case 18:this.$=S[N].trim(),k.setAccDescription(this.$);break;case 19:case 43:this.$=S[N];break;case 20:case 41:case 42:this.$=S[N].replace(/"/g,"");break;case 21:case 29:this.$=[S[N]];break;case 22:S[N].push(S[N-1]),this.$=S[N];break;case 23:this.$={attributeType:S[N-1],attributeName:S[N]};break;case 24:this.$={attributeType:S[N-2],attributeName:S[N-1],attributeKeyTypeList:S[N]};break;case 25:this.$={attributeType:S[N-2],attributeName:S[N-1],attributeComment:S[N]};break;case 26:this.$={attributeType:S[N-3],attributeName:S[N-2],attributeKeyTypeList:S[N-1],attributeComment:S[N]};break;case 27:case 28:case 31:this.$=S[N];break;case 30:S[N-2].push(S[N]),this.$=S[N-2];break;case 32:this.$=S[N].replace(/"/g,"");break;case 33:this.$={cardA:S[N],relType:S[N-1],cardB:S[N-2]};break;case 34:this.$=k.Cardinality.ZERO_OR_ONE;break;case 35:this.$=k.Cardinality.ZERO_OR_MORE;break;case 36:this.$=k.Cardinality.ONE_OR_MORE;break;case 37:this.$=k.Cardinality.ONLY_ONE;break;case 38:this.$=k.Cardinality.MD_PARENT;break;case 39:this.$=k.Identification.NON_IDENTIFYING;break;case 40:this.$=k.Identification.IDENTIFYING;break}},"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:n,24:i,26:a,27:s,28:l},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:16,11:9,20:r,22:n,24:i,26:a,27:s,28:l},t(e,[2,5]),t(e,[2,6]),t(e,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:u,42:h,43:f,44:d,45:p}),{21:[1,26]},{23:[1,27]},{25:[1,28]},t(e,[2,18]),t(m,[2,19]),t(m,[2,20]),t(e,[2,4]),{11:29,27:s,28:l},{16:30,17:[1,31],29:32,30:33,34:g},{11:35,27:s,28:l},{40:36,46:[1,37],47:[1,38]},t(y,[2,34]),t(y,[2,35]),t(y,[2,36]),t(y,[2,37]),t(y,[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:g},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:u,42:h,43:f,44:d,45:p},t(v,[2,39]),t(v,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},t(e,[2,9]),{17:[2,22]},t(x,[2,23],{32:50,33:51,35:52,37:b,38:w}),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(x,[2,24],{33:56,36:[1,57],38:w}),t(x,[2,25]),t(_,[2,29]),t(x,[2,32]),t(_,[2,31]),{16:58,17:[1,59],29:32,30:33,34:g},t(x,[2,26]),{35:60,37:b},{17:[1,61]},t(e,[2,13]),t(_,[2,30]),t(e,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:o(function(A,I){if(I.recoverable)this.trace(A);else{var D=new Error(A);throw D.hash=I,D}},"parseError"),parse:o(function(A){var I=this,D=[0],k=[],R=[null],S=[],O=this.table,N="",P=0,F=0,B=0,$=2,z=1,W=S.slice.call(arguments,1),j=Object.create(this.lexer),K={yy:{}};for(var ie in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ie)&&(K.yy[ie]=this.yy[ie]);j.setInput(A,K.yy),K.yy.lexer=j,K.yy.parser=this,typeof j.yylloc>"u"&&(j.yylloc={});var Q=j.yylloc;S.push(Q);var ee=j.options&&j.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function J(Ge){D.length=D.length-2*Ge,R.length=R.length-Ge,S.length=S.length-Ge}o(J,"popStack");function H(){var Ge;return Ge=k.pop()||j.lex()||z,typeof Ge!="number"&&(Ge instanceof Array&&(k=Ge,Ge=k.pop()),Ge=I.symbols_[Ge]||Ge),Ge}o(H,"lex");for(var q,Z,ae,ue,ce,te,De={},oe,ke,Fe,Be;;){if(ae=D[D.length-1],this.defaultActions[ae]?ue=this.defaultActions[ae]:((q===null||typeof q>"u")&&(q=H()),ue=O[ae]&&O[ae][q]),typeof ue>"u"||!ue.length||!ue[0]){var Ve="";Be=[];for(oe in O[ae])this.terminals_[oe]&&oe>$&&Be.push("'"+this.terminals_[oe]+"'");j.showPosition?Ve="Parse error on line "+(P+1)+`: +`+j.showPosition()+` +Expecting `+Be.join(", ")+", got '"+(this.terminals_[q]||q)+"'":Ve="Parse error on line "+(P+1)+": Unexpected "+(q==z?"end of input":"'"+(this.terminals_[q]||q)+"'"),this.parseError(Ve,{text:j.match,token:this.terminals_[q]||q,line:j.yylineno,loc:Q,expected:Be})}if(ue[0]instanceof Array&&ue.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ae+", token: "+q);switch(ue[0]){case 1:D.push(q),R.push(j.yytext),S.push(j.yylloc),D.push(ue[1]),q=null,Z?(q=Z,Z=null):(F=j.yyleng,N=j.yytext,P=j.yylineno,Q=j.yylloc,B>0&&B--);break;case 2:if(ke=this.productions_[ue[1]][1],De.$=R[R.length-ke],De._$={first_line:S[S.length-(ke||1)].first_line,last_line:S[S.length-1].last_line,first_column:S[S.length-(ke||1)].first_column,last_column:S[S.length-1].last_column},ee&&(De._$.range=[S[S.length-(ke||1)].range[0],S[S.length-1].range[1]]),te=this.performAction.apply(De,[N,F,P,K.yy,ue[1],R,S].concat(W)),typeof te<"u")return te;ke&&(D=D.slice(0,-1*ke*2),R=R.slice(0,-1*ke),S=S.slice(0,-1*ke)),D.push(this.productions_[ue[1]][0]),R.push(De.$),S.push(De._$),Fe=O[D[D.length-2]][D[D.length-1]],D.push(Fe);break;case 3:return!0}}return!0},"parse")},E=function(){var C={EOF:1,parseError:o(function(I,D){if(this.yy.parser)this.yy.parser.parseError(I,D);else throw new Error(I)},"parseError"),setInput:o(function(A,I){return this.yy=I||this.yy||{},this._input=A,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:o(function(){var A=this._input[0];this.yytext+=A,this.yyleng++,this.offset++,this.match+=A,this.matched+=A;var I=A.match(/(?:\r\n?|\n).*/g);return I?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),A},"input"),unput:o(function(A){var I=A.length,D=A.split(/(?:\r\n?|\n)/g);this._input=A+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-I),this.offset-=I;var k=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),D.length-1&&(this.yylineno-=D.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:D?(D.length===k.length?this.yylloc.first_column:0)+k[k.length-D.length].length-D[0].length:this.yylloc.first_column-I},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-I]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(A){this.unput(this.match.slice(A))},"less"),pastInput:o(function(){var A=this.matched.substr(0,this.matched.length-this.match.length);return(A.length>20?"...":"")+A.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var A=this.match;return A.length<20&&(A+=this._input.substr(0,20-A.length)),(A.substr(0,20)+(A.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var A=this.pastInput(),I=new Array(A.length+1).join("-");return A+this.upcomingInput()+` +`+I+"^"},"showPosition"),test_match:o(function(A,I){var D,k,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))),k=A[0].match(/(?:\r\n?|\n).*/g),k&&(this.yylineno+=k.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:k?k[k.length-1].length-k[k.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+A[0].length},this.yytext+=A[0],this.match+=A[0],this.matches=A,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(A[0].length),this.matched+=A[0],D=this.performAction.call(this,this.yy,this,I,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),D)return D;if(this._backtrack){for(var S in R)this[S]=R[S];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var A,I,D,k;this._more||(this.yytext="",this.match="");for(var R=this._currentRules(),S=0;SI[0].length)){if(I=D,k=S,this.options.backtrack_lexer){if(A=this.test_match(D,R[S]),A!==!1)return A;if(this._backtrack){I=!1;continue}else return!1}else if(!this.options.flex)break}return I?(A=this.test_match(I,R[k]),A!==!1?A:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var I=this.next();return I||this.lex()},"lex"),begin:o(function(I){this.conditionStack.push(I)},"begin"),popState:o(function(){var I=this.conditionStack.length-1;return I>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(I){return I=this.conditionStack.length-1-Math.abs(I||0),I>=0?this.conditionStack[I]:"INITIAL"},"topState"),pushState:o(function(I){this.begin(I)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(I,D,k,R){var S=R;switch(k){case 0:return this.begin("acc_title"),22;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),24;break;case 3:return this.popState(),"acc_descr_value";break;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:break;case 9:return 8;case 10:return 28;case 11:return 48;case 12:return 4;case 13:return this.begin("block"),15;break;case 14:return 36;case 15:break;case 16:return 37;case 17:return 34;case 18:return 34;case 19:return 38;case 20:break;case 21:return this.popState(),17;break;case 22:return D.yytext[0];case 23:return 18;case 24:return 19;case 25:return 41;case 26:return 43;case 27:return 43;case 28:return 43;case 29:return 41;case 30:return 41;case 31:return 42;case 32:return 42;case 33:return 42;case 34:return 42;case 35:return 42;case 36:return 43;case 37:return 42;case 38:return 43;case 39:return 44;case 40:return 44;case 41:return 44;case 42:return 44;case 43:return 41;case 44:return 42;case 45:return 43;case 46:return 45;case 47:return 46;case 48:return 47;case 49:return 47;case 50:return 46;case 51:return 46;case 52:return 46;case 53:return 27;case 54:return D.yytext[0];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}}};return C}();T.lexer=E;function L(){this.yy={}}return o(L,"Parser"),L.prototype=T,T.Parser=L,new L}();_D.parser=_D;Jie=_D});var Gd,LD,xPe,bPe,tae,wPe,TPe,kPe,EPe,SPe,rae,nae=M(()=>{"use strict";ht();Vt();ki();Gd=new Map,LD=[],xPe={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"},bPe={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},tae=o(function(t,e=void 0){return Gd.has(t)?!Gd.get(t).alias&&e&&(Gd.get(t).alias=e,Y.info(`Add alias '${e}' to entity '${t}'`)):(Gd.set(t,{attributes:[],alias:e}),Y.info("Added new entity :",t)),Gd.get(t)},"addEntity"),wPe=o(()=>Gd,"getEntities"),TPe=o(function(t,e){let r=tae(t),n;for(n=e.length-1;n>=0;n--)r.attributes.push(e[n]),Y.debug("Added attribute ",e[n].attributeName)},"addAttributes"),kPe=o(function(t,e,r,n){let i={entityA:t,roleA:e,entityB:r,relSpec:n};LD.push(i),Y.debug("Added new relationship :",i)},"addRelationship"),EPe=o(()=>LD,"getRelationships"),SPe=o(function(){Gd=new Map,LD=[],_r()},"clear"),rae={Cardinality:xPe,Identification:bPe,getConfig:o(()=>de().er,"getConfig"),addEntity:tae,addAttributes:TPe,getEntities:wPe,addRelationship:kPe,getRelationships:EPe,clear:SPe,setAccTitle:Rr,getAccTitle:Pr,setAccDescription:Br,getAccDescription:Fr,setDiagramTitle:ln,getDiagramTitle:Jr}});var Rl,CPe,Wo,iae=M(()=>{"use strict";Rl={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"},CPe=o(function(t,e){let r;t.append("defs").append("marker").attr("id",Rl.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",Rl.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",Rl.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",Rl.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",Rl.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",Rl.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",Rl.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",Rl.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",Rl.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",Rl.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"),Wo={ERMarkers:Rl,insertMarkers:CPe}});var aae,sae=M(()=>{"use strict";aae=/^(?:[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});function APe(t){return typeof t=="string"&&aae.test(t)}var oae,lae=M(()=>{"use strict";sae();o(APe,"validate");oae=APe});function cae(t,e=0){return pa[t[e+0]]+pa[t[e+1]]+pa[t[e+2]]+pa[t[e+3]]+"-"+pa[t[e+4]]+pa[t[e+5]]+"-"+pa[t[e+6]]+pa[t[e+7]]+"-"+pa[t[e+8]]+pa[t[e+9]]+"-"+pa[t[e+10]]+pa[t[e+11]]+pa[t[e+12]]+pa[t[e+13]]+pa[t[e+14]]+pa[t[e+15]]}var pa,uae=M(()=>{"use strict";pa=[];for(let t=0;t<256;++t)pa.push((t+256).toString(16).slice(1));o(cae,"unsafeStringify")});function _Pe(t){if(!oae(t))throw TypeError("Invalid UUID");let e,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]=e&255,r[4]=(e=parseInt(t.slice(9,13),16))>>>8,r[5]=e&255,r[6]=(e=parseInt(t.slice(14,18),16))>>>8,r[7]=e&255,r[8]=(e=parseInt(t.slice(19,23),16))>>>8,r[9]=e&255,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]=e&255,r}var hae,fae=M(()=>{"use strict";lae();o(_Pe,"parse");hae=_Pe});function LPe(t){t=unescape(encodeURIComponent(t));let e=[];for(let r=0;r{"use strict";uae();fae();o(LPe,"stringToBytes");DPe="6ba7b810-9dad-11d1-80b4-00c04fd430c8",NPe="6ba7b811-9dad-11d1-80b4-00c04fd430c8";o(DD,"v35")});function RPe(t,e,r,n){switch(t){case 0:return e&r^~e&n;case 1:return e^r^n;case 2:return e&r^e&n^r&n;case 3:return e^r^n}}function ND(t,e){return t<>>32-e}function MPe(t){let e=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof t=="string"){let s=unescape(encodeURIComponent(t));t=[];for(let l=0;l>>0;p=d,d=f,f=ND(h,30)>>>0,h=u,u=y}r[0]=r[0]+u>>>0,r[1]=r[1]+h>>>0,r[2]=r[2]+f>>>0,r[3]=r[3]+d>>>0,r[4]=r[4]+p>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,r[0]&255,r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,r[1]&255,r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,r[2]&255,r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,r[3]&255,r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,r[4]&255]}var pae,mae=M(()=>{"use strict";o(RPe,"f");o(ND,"ROTL");o(MPe,"sha1");pae=MPe});var IPe,RD,gae=M(()=>{"use strict";dae();mae();IPe=DD("v5",80,pae),RD=IPe});var yae=M(()=>{"use strict";gae()});function HPe(t="",e=""){let r=t.replace(OPe,"");return`${xae(e)}${xae(r)}${RD(t,UPe)}`}function xae(t=""){return t.length>0?`${t}-`:""}var OPe,Bi,zv,PPe,BPe,FPe,zPe,bae,GPe,vae,$Pe,VPe,UPe,wae,Tae=M(()=>{"use strict";Ns();mr();Pv();Vt();ht();hr();iae();ni();fr();yae();OPe=/[^\dA-Za-z](\W)*/g,Bi={},zv=new Map,PPe=o(function(t){let e=Object.keys(t);for(let r of e)Bi[r]=t[r]},"setConf"),BPe=o((t,e,r)=>{let n=Bi.entityPadding/3,i=Bi.entityPadding/3,a=Bi.fontSize*.85,s=e.node().getBBox(),l=[],u=!1,h=!1,f=0,d=0,p=0,m=0,g=s.height+n*2,y=1;r.forEach(w=>{w.attributeKeyTypeList!==void 0&&w.attributeKeyTypeList.length>0&&(u=!0),w.attributeComment!==void 0&&(h=!0)}),r.forEach(w=>{let _=`${e.node().id}-attr-${y}`,T=0,E=ou(w.attributeType),L=t.append("text").classed("er entityLabel",!0).attr("id",`${_}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",de().fontFamily).style("font-size",a+"px").text(E),C=t.append("text").classed("er entityLabel",!0).attr("id",`${_}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",de().fontFamily).style("font-size",a+"px").text(w.attributeName),A={};A.tn=L,A.nn=C;let I=L.node().getBBox(),D=C.node().getBBox();if(f=Math.max(f,I.width),d=Math.max(d,D.width),T=Math.max(I.height,D.height),u){let k=w.attributeKeyTypeList!==void 0?w.attributeKeyTypeList.join(","):"",R=t.append("text").classed("er entityLabel",!0).attr("id",`${_}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",de().fontFamily).style("font-size",a+"px").text(k);A.kn=R;let S=R.node().getBBox();p=Math.max(p,S.width),T=Math.max(T,S.height)}if(h){let k=t.append("text").classed("er entityLabel",!0).attr("id",`${_}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",de().fontFamily).style("font-size",a+"px").text(w.attributeComment||"");A.cn=k;let R=k.node().getBBox();m=Math.max(m,R.width),T=Math.max(T,R.height)}A.height=T,l.push(A),g+=T+n*2,y+=1});let v=4;u&&(v+=2),h&&(v+=2);let x=f+d+p+m,b={width:Math.max(Bi.minEntityWidth,Math.max(s.width+Bi.entityPadding*2,x+i*v)),height:r.length>0?g:Math.max(Bi.minEntityHeight,s.height+Bi.entityPadding*2)};if(r.length>0){let w=Math.max(0,(b.width-x-i*v)/(v/2));e.attr("transform","translate("+b.width/2+","+(n+s.height/2)+")");let _=s.height+n*2,T="attributeBoxOdd";l.forEach(E=>{let L=_+n+E.height/2;E.tn.attr("transform","translate("+i+","+L+")");let C=t.insert("rect","#"+E.tn.node().id).classed(`er ${T}`,!0).attr("x",0).attr("y",_).attr("width",f+i*2+w).attr("height",E.height+n*2),A=parseFloat(C.attr("x"))+parseFloat(C.attr("width"));E.nn.attr("transform","translate("+(A+i)+","+L+")");let I=t.insert("rect","#"+E.nn.node().id).classed(`er ${T}`,!0).attr("x",A).attr("y",_).attr("width",d+i*2+w).attr("height",E.height+n*2),D=parseFloat(I.attr("x"))+parseFloat(I.attr("width"));if(u){E.kn.attr("transform","translate("+(D+i)+","+L+")");let k=t.insert("rect","#"+E.kn.node().id).classed(`er ${T}`,!0).attr("x",D).attr("y",_).attr("width",p+i*2+w).attr("height",E.height+n*2);D=parseFloat(k.attr("x"))+parseFloat(k.attr("width"))}h&&(E.cn.attr("transform","translate("+(D+i)+","+L+")"),t.insert("rect","#"+E.cn.node().id).classed(`er ${T}`,"true").attr("x",D).attr("y",_).attr("width",m+i*2+w).attr("height",E.height+n*2)),_+=E.height+n*2,T=T==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else b.height=Math.max(Bi.minEntityHeight,g),e.attr("transform","translate("+b.width/2+","+b.height/2+")");return b},"drawAttributes"),FPe=o(function(t,e,r){let n=[...e.keys()],i;return n.forEach(function(a){let s=HPe(a,"entity");zv.set(a,s);let l=t.append("g").attr("id",s);i=i===void 0?s:i;let u="text-"+s,h=l.append("text").classed("er entityLabel",!0).attr("id",u).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",de().fontFamily).style("font-size",Bi.fontSize+"px").text(e.get(a).alias??a),{width:f,height:d}=BPe(l,h,e.get(a).attributes),m=l.insert("rect","#"+u).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",f).attr("height",d).node().getBBox();r.setNode(s,{width:m.width,height:m.height,shape:"rect",id:s})}),i},"drawEntities"),zPe=o(function(t,e){e.nodes().forEach(function(r){r!==void 0&&e.node(r)!==void 0&&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"),bae=o(function(t){return(t.entityA+t.roleA+t.entityB).replace(/\s/g,"")},"getEdgeName"),GPe=o(function(t,e){return t.forEach(function(r){e.setEdge(zv.get(r.entityA),zv.get(r.entityB),{relationship:r},bae(r))}),t},"addRelationships"),vae=0,$Pe=o(function(t,e,r,n,i){vae++;let a=r.edge(zv.get(e.entityA),zv.get(e.entityB),bae(e)),s=Ka().x(function(y){return y.x}).y(function(y){return y.y}).curve(Do),l=t.insert("path","#"+n).classed("er relationshipLine",!0).attr("d",s(a.points)).style("stroke",Bi.stroke).style("fill","none");e.relSpec.relType===i.db.Identification.NON_IDENTIFYING&&l.attr("stroke-dasharray","8,8");let u="";switch(Bi.arrowMarkerAbsolute&&(u=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,u=u.replace(/\(/g,"\\("),u=u.replace(/\)/g,"\\)")),e.relSpec.cardA){case i.db.Cardinality.ZERO_OR_ONE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ZERO_OR_ONE_END+")");break;case i.db.Cardinality.ZERO_OR_MORE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ZERO_OR_MORE_END+")");break;case i.db.Cardinality.ONE_OR_MORE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ONE_OR_MORE_END+")");break;case i.db.Cardinality.ONLY_ONE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ONLY_ONE_END+")");break;case i.db.Cardinality.MD_PARENT:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.MD_PARENT_END+")");break}switch(e.relSpec.cardB){case i.db.Cardinality.ZERO_OR_ONE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ZERO_OR_ONE_START+")");break;case i.db.Cardinality.ZERO_OR_MORE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ZERO_OR_MORE_START+")");break;case i.db.Cardinality.ONE_OR_MORE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ONE_OR_MORE_START+")");break;case i.db.Cardinality.ONLY_ONE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ONLY_ONE_START+")");break;case i.db.Cardinality.MD_PARENT:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.MD_PARENT_START+")");break}let h=l.node().getTotalLength(),f=l.node().getPointAtLength(h*.5),d="rel"+vae,p=e.roleA.split(/
    /g),m=t.append("text").classed("er relationshipLabel",!0).attr("id",d).attr("x",f.x).attr("y",f.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",de().fontFamily).style("font-size",Bi.fontSize+"px");if(p.length==1)m.text(e.roleA);else{let y=-(p.length-1)*.5;p.forEach((v,x)=>{m.append("tspan").attr("x",f.x).attr("dy",`${x===0?y:1}em`).text(v)})}let g=m.node().getBBox();t.insert("rect","#"+d).classed("er relationshipLabelBox",!0).attr("x",f.x-g.width/2).attr("y",f.y-g.height/2).attr("width",g.width).attr("height",g.height)},"drawRelationshipFromLayout"),VPe=o(function(t,e,r,n){Bi=de().er,Y.info("Drawing ER diagram");let i=de().securityLevel,a;i==="sandbox"&&(a=ze("#i"+e));let l=(i==="sandbox"?ze(a.nodes()[0].contentDocument.body):ze("body")).select(`[id='${e}']`);Wo.insertMarkers(l,Bi);let u;u=new Mr({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:Bi.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let h=FPe(l,n.db.getEntities(),u),f=GPe(n.db.getRelationships(),u);Du(u),zPe(l,u),f.forEach(function(y){$Pe(l,y,u,h,n)});let d=Bi.diagramPadding;Ut.insertTitle(l,"entityTitleText",Bi.titleTopMargin,n.db.getDiagramTitle());let p=l.node().getBBox(),m=p.width+d*2,g=p.height+d*2;Zr(l,g,m,Bi.useMaxWidth),l.attr("viewBox",`${p.x-d} ${p.y-d} ${m} ${g}`)},"draw"),UPe="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";o(HPe,"generateId");o(xae,"strWithHyphen");wae={setConf:PPe,draw:VPe}});var WPe,kae,Eae=M(()=>{"use strict";WPe=o(t=>` + .entityBox { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + } + + .attributeBoxOdd { + fill: ${t.attributeBackgroundColorOdd}; + stroke: ${t.nodeBorder}; + } + + .attributeBoxEven { + fill: ${t.attributeBackgroundColorEven}; + stroke: ${t.nodeBorder}; + } + + .relationshipLabelBox { + fill: ${t.tertiaryColor}; + opacity: 0.7; + background-color: ${t.tertiaryColor}; + rect { + opacity: 0.5; + } + } + + .relationshipLine { + stroke: ${t.lineColor}; + } + + .entityTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; + } + #MD_PARENT_START { + fill: #f5f5f5 !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; + } + #MD_PARENT_END { + fill: #f5f5f5 !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; + } + +`,"getStyles"),kae=WPe});var Sae={};vr(Sae,{diagram:()=>YPe});var YPe,Cae=M(()=>{"use strict";eae();nae();Tae();Eae();YPe={parser:Jie,db:rae,renderer:wae,styles:kae}});function ei(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function ma(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"}function MD(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function Vd(t){return typeof t=="object"&&t!==null&&ei(t.container)&&ma(t.reference)&&typeof t.message=="string"}function io(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function Jh(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function Gv(t){return io(t)&&typeof t.fullText=="string"}var $d,Yo=M(()=>{"use strict";o(ei,"isAstNode");o(ma,"isReference");o(MD,"isAstNodeDescription");o(Vd,"isLinkingError");$d=class{static{o(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,r){return ei(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});let i=n[r];if(i!==void 0)return i;{let a=this.computeIsSubtype(e,r);return n[r]=a,a}}getAllSubTypes(e){let r=this.allSubtypes[e];if(r)return r;{let n=this.getAllTypes(),i=[];for(let a of n)this.isSubtype(a,e)&&i.push(a);return this.allSubtypes[e]=i,i}}};o(io,"isCompositeCstNode");o(Jh,"isLeafCstNode");o(Gv,"isRootCstNode")});function KPe(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function dT(t){return!!t&&typeof t[Symbol.iterator]=="function"}function tn(...t){if(t.length===1){let e=t[0];if(e instanceof ao)return e;if(dT(e))return new ao(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new ao(()=>({index:0}),r=>r.index1?new ao(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){let r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex{"use strict";ao=class t{static{o(this,"StreamImpl")}constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){let e=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){let n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){let r=e[Symbol.iterator]();return new t(()=>({first:this.startFn(),firstDone:!1}),n=>{let i;if(!n.firstDone){do if(i=this.nextFn(n.first),!i.done)return i;while(!i.done);n.firstDone=!0}do if(i=r.next(),!i.done)return i;while(!i.done);return Ja})}join(e=","){let r=this.iterator(),n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=e),n+=KPe(i.value)),a=!0;while(!i.done);return n}indexOf(e,r=0){let n=this.iterator(),i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===e)return i;a=n.next(),i++}return-1}every(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new t(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?Ja:{done:!1,value:e(i)}})}filter(e){return new t(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return Ja})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){let n=this.iterator(),i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=e(i,a.value),a=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){let i=e.next();if(i.done)return n;let a=this.recursiveReduce(e,r,n);return a===void 0?i.value:r(a,i.value)}find(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new t(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}let{done:n,value:i}=this.nextFn(r.this);if(!n){let a=e(i);if(dT(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return Ja})}flat(e){if(e===void 0&&(e=1),e<=0)return this;let r=e>1?this.flat(e-1):this;return new t(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}let{done:i,value:a}=r.nextFn(n.this);if(!i)if(dT(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return Ja})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new t(()=>{let r=this.startFn();for(let n=0;n({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?Ja:this.nextFn(r.state)))}distinct(e){let r=new Set;return this.filter(n=>{let i=e?e(n):n;return r.has(i)?!1:(r.add(i),!0)})}exclude(e,r){let n=new Set;for(let i of e){let a=r?r(i):i;n.add(a)}return this.filter(i=>{let a=r?r(i):i;return!n.has(a)})}};o(KPe,"toString");o(dT,"isIterable");$v=new ao(()=>{},()=>Ja),Ja=Object.freeze({done:!0,value:void 0});o(tn,"stream");Cc=class extends ao{static{o(this,"TreeStreamImpl")}constructor(e,r,n){super(()=>({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return Ja})}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),prune:o(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}};(function(t){function e(a){return a.reduce((s,l)=>s+l,0)}o(e,"sum"),t.sum=e;function r(a){return a.reduce((s,l)=>s*l,0)}o(r,"product"),t.product=r;function n(a){return a.reduce((s,l)=>Math.min(s,l))}o(n,"min"),t.min=n;function i(a){return a.reduce((s,l)=>Math.max(s,l))}o(i,"max"),t.max=i})(Gm||(Gm={}))});var mT={};vr(mT,{DefaultNameRegexp:()=>pT,RangeComparison:()=>Nu,compareRange:()=>Dae,findCommentNode:()=>BD,findDeclarationNodeAtOffset:()=>ZPe,findLeafNodeAtOffset:()=>FD,findLeafNodeBeforeOffset:()=>Nae,flattenCst:()=>QPe,getInteriorNodes:()=>tBe,getNextNode:()=>JPe,getPreviousNode:()=>Mae,getStartlineNode:()=>eBe,inRange:()=>PD,isChildNode:()=>OD,isCommentNode:()=>ID,streamCst:()=>Ud,toDocumentSegment:()=>Hd,tokenToRange:()=>$m});function Ud(t){return new Cc(t,e=>io(e)?e.content:[],{includeRoot:!0})}function QPe(t){return Ud(t).filter(Jh)}function OD(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function $m(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Hd(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}function Dae(t,e){if(t.end.linee.end.line||t.start.line===e.end.line&&t.start.character>e.end.character)return Nu.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.lineNu.After}function ZPe(t,e,r=pT){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return FD(t,e)}}function BD(t,e){if(t){let r=Mae(t,!0);if(r&&ID(r,e))return r;if(Gv(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let a=t.content[i];if(ID(a,e))return a}}}}function ID(t,e){return Jh(t)&&e.includes(t.tokenType.name)}function FD(t,e){if(Jh(t))return t;if(io(t)){let r=Rae(t,e,!1);if(r)return FD(r,e)}}function Nae(t,e){if(Jh(t))return t;if(io(t)){let r=Rae(t,e,!0);if(r)return Nae(r,e)}}function Rae(t,e,r){let n=0,i=t.content.length-1,a;for(;n<=i;){let s=Math.floor((n+i)/2),l=t.content[s];if(l.offset<=e&&l.end>e)return l;l.end<=e?(a=r?l:void 0,n=s+1):i=s-1}return a}function Mae(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t);for(;n>0;){n--;let i=r.content[n];if(e||!i.hidden)return i}t=r}}function JPe(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;n{"use strict";Yo();Rs();o(Ud,"streamCst");o(QPe,"flattenCst");o(OD,"isChildNode");o($m,"tokenToRange");o(Hd,"toDocumentSegment");(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside"})(Nu||(Nu={}));o(Dae,"compareRange");o(PD,"inRange");pT=/^[\w\p{L}]$/u;o(ZPe,"findDeclarationNodeAtOffset");o(BD,"findCommentNode");o(ID,"isCommentNode");o(FD,"findLeafNodeAtOffset");o(Nae,"findLeafNodeBeforeOffset");o(Rae,"binarySearch");o(Mae,"getPreviousNode");o(JPe,"getNextNode");o(eBe,"getStartlineNode");o(tBe,"getInteriorNodes");o(rBe,"getCommonParent");o(Lae,"getParentChain")});function ef(t){throw new Error("Error! The input value was not handled.")}var Wd,gT=M(()=>{"use strict";Wd=class extends Error{static{o(this,"ErrorWithLocation")}constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};o(ef,"assertUnreachable")});var Yv={};vr(Yv,{AbstractElement:()=>GD,AbstractRule:()=>Vv,AbstractType:()=>Uv,Action:()=>pN,Alternatives:()=>mN,ArrayLiteral:()=>$D,ArrayType:()=>VD,Assignment:()=>gN,BooleanLiteral:()=>HD,CharacterRange:()=>yN,Condition:()=>yT,Conjunction:()=>YD,CrossReference:()=>xN,Disjunction:()=>XD,EndOfFile:()=>bN,Grammar:()=>KD,GrammarImport:()=>Oae,Group:()=>TN,InferredType:()=>QD,Interface:()=>ZD,Keyword:()=>kN,LangiumGrammarAstReflection:()=>Vm,LangiumGrammarTerminals:()=>nBe,NamedArgument:()=>Pae,NegatedToken:()=>EN,Negation:()=>JD,NumberLiteral:()=>tN,Parameter:()=>rN,ParameterReference:()=>nN,ParserRule:()=>aN,ReferenceType:()=>sN,RegexToken:()=>CN,ReturnType:()=>Bae,RuleCall:()=>_N,SimpleType:()=>cN,StringLiteral:()=>uN,TerminalAlternatives:()=>LN,TerminalGroup:()=>NN,TerminalRule:()=>xT,TerminalRuleCall:()=>MN,Type:()=>hN,TypeAttribute:()=>Fae,TypeDefinition:()=>zD,UnionType:()=>fN,UnorderedGroup:()=>IN,UntilToken:()=>ON,ValueLiteral:()=>vT,Wildcard:()=>BN,isAbstractElement:()=>Hv,isAbstractRule:()=>iBe,isAbstractType:()=>aBe,isAction:()=>Ru,isAlternatives:()=>kT,isArrayLiteral:()=>uBe,isArrayType:()=>UD,isAssignment:()=>Il,isBooleanLiteral:()=>WD,isCharacterRange:()=>vN,isCondition:()=>sBe,isConjunction:()=>qD,isCrossReference:()=>Yd,isDisjunction:()=>jD,isEndOfFile:()=>wN,isFeatureName:()=>oBe,isGrammar:()=>hBe,isGrammarImport:()=>fBe,isGroup:()=>tf,isInferredType:()=>bT,isInterface:()=>wT,isKeyword:()=>Xo,isNamedArgument:()=>dBe,isNegatedToken:()=>SN,isNegation:()=>eN,isNumberLiteral:()=>pBe,isParameter:()=>mBe,isParameterReference:()=>iN,isParserRule:()=>Ma,isPrimitiveType:()=>Iae,isReferenceType:()=>oN,isRegexToken:()=>AN,isReturnType:()=>lN,isRuleCall:()=>Ol,isSimpleType:()=>TT,isStringLiteral:()=>gBe,isTerminalAlternatives:()=>DN,isTerminalGroup:()=>RN,isTerminalRule:()=>qo,isTerminalRuleCall:()=>ET,isType:()=>Wv,isTypeAttribute:()=>yBe,isTypeDefinition:()=>lBe,isUnionType:()=>dN,isUnorderedGroup:()=>ST,isUntilToken:()=>PN,isValueLiteral:()=>cBe,isWildcard:()=>FN,reflection:()=>lr});function iBe(t){return lr.isInstance(t,Vv)}function aBe(t){return lr.isInstance(t,Uv)}function sBe(t){return lr.isInstance(t,yT)}function oBe(t){return Iae(t)||t==="current"||t==="entry"||t==="extends"||t==="false"||t==="fragment"||t==="grammar"||t==="hidden"||t==="import"||t==="interface"||t==="returns"||t==="terminal"||t==="true"||t==="type"||t==="infer"||t==="infers"||t==="with"||typeof t=="string"&&/\^?[_a-zA-Z][\w_]*/.test(t)}function Iae(t){return t==="string"||t==="number"||t==="boolean"||t==="Date"||t==="bigint"}function lBe(t){return lr.isInstance(t,zD)}function cBe(t){return lr.isInstance(t,vT)}function Hv(t){return lr.isInstance(t,GD)}function uBe(t){return lr.isInstance(t,$D)}function UD(t){return lr.isInstance(t,VD)}function WD(t){return lr.isInstance(t,HD)}function qD(t){return lr.isInstance(t,YD)}function jD(t){return lr.isInstance(t,XD)}function hBe(t){return lr.isInstance(t,KD)}function fBe(t){return lr.isInstance(t,Oae)}function bT(t){return lr.isInstance(t,QD)}function wT(t){return lr.isInstance(t,ZD)}function dBe(t){return lr.isInstance(t,Pae)}function eN(t){return lr.isInstance(t,JD)}function pBe(t){return lr.isInstance(t,tN)}function mBe(t){return lr.isInstance(t,rN)}function iN(t){return lr.isInstance(t,nN)}function Ma(t){return lr.isInstance(t,aN)}function oN(t){return lr.isInstance(t,sN)}function lN(t){return lr.isInstance(t,Bae)}function TT(t){return lr.isInstance(t,cN)}function gBe(t){return lr.isInstance(t,uN)}function qo(t){return lr.isInstance(t,xT)}function Wv(t){return lr.isInstance(t,hN)}function yBe(t){return lr.isInstance(t,Fae)}function dN(t){return lr.isInstance(t,fN)}function Ru(t){return lr.isInstance(t,pN)}function kT(t){return lr.isInstance(t,mN)}function Il(t){return lr.isInstance(t,gN)}function vN(t){return lr.isInstance(t,yN)}function Yd(t){return lr.isInstance(t,xN)}function wN(t){return lr.isInstance(t,bN)}function tf(t){return lr.isInstance(t,TN)}function Xo(t){return lr.isInstance(t,kN)}function SN(t){return lr.isInstance(t,EN)}function AN(t){return lr.isInstance(t,CN)}function Ol(t){return lr.isInstance(t,_N)}function DN(t){return lr.isInstance(t,LN)}function RN(t){return lr.isInstance(t,NN)}function ET(t){return lr.isInstance(t,MN)}function ST(t){return lr.isInstance(t,IN)}function PN(t){return lr.isInstance(t,ON)}function FN(t){return lr.isInstance(t,BN)}var nBe,Vv,Uv,yT,zD,vT,GD,$D,VD,HD,YD,XD,KD,Oae,QD,ZD,Pae,JD,tN,rN,nN,aN,sN,Bae,cN,uN,xT,hN,Fae,fN,pN,mN,gN,yN,xN,bN,TN,kN,EN,CN,_N,LN,NN,MN,IN,ON,BN,Vm,lr,Ac=M(()=>{"use strict";Yo();nBe={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},Vv="AbstractRule";o(iBe,"isAbstractRule");Uv="AbstractType";o(aBe,"isAbstractType");yT="Condition";o(sBe,"isCondition");o(oBe,"isFeatureName");o(Iae,"isPrimitiveType");zD="TypeDefinition";o(lBe,"isTypeDefinition");vT="ValueLiteral";o(cBe,"isValueLiteral");GD="AbstractElement";o(Hv,"isAbstractElement");$D="ArrayLiteral";o(uBe,"isArrayLiteral");VD="ArrayType";o(UD,"isArrayType");HD="BooleanLiteral";o(WD,"isBooleanLiteral");YD="Conjunction";o(qD,"isConjunction");XD="Disjunction";o(jD,"isDisjunction");KD="Grammar";o(hBe,"isGrammar");Oae="GrammarImport";o(fBe,"isGrammarImport");QD="InferredType";o(bT,"isInferredType");ZD="Interface";o(wT,"isInterface");Pae="NamedArgument";o(dBe,"isNamedArgument");JD="Negation";o(eN,"isNegation");tN="NumberLiteral";o(pBe,"isNumberLiteral");rN="Parameter";o(mBe,"isParameter");nN="ParameterReference";o(iN,"isParameterReference");aN="ParserRule";o(Ma,"isParserRule");sN="ReferenceType";o(oN,"isReferenceType");Bae="ReturnType";o(lN,"isReturnType");cN="SimpleType";o(TT,"isSimpleType");uN="StringLiteral";o(gBe,"isStringLiteral");xT="TerminalRule";o(qo,"isTerminalRule");hN="Type";o(Wv,"isType");Fae="TypeAttribute";o(yBe,"isTypeAttribute");fN="UnionType";o(dN,"isUnionType");pN="Action";o(Ru,"isAction");mN="Alternatives";o(kT,"isAlternatives");gN="Assignment";o(Il,"isAssignment");yN="CharacterRange";o(vN,"isCharacterRange");xN="CrossReference";o(Yd,"isCrossReference");bN="EndOfFile";o(wN,"isEndOfFile");TN="Group";o(tf,"isGroup");kN="Keyword";o(Xo,"isKeyword");EN="NegatedToken";o(SN,"isNegatedToken");CN="RegexToken";o(AN,"isRegexToken");_N="RuleCall";o(Ol,"isRuleCall");LN="TerminalAlternatives";o(DN,"isTerminalAlternatives");NN="TerminalGroup";o(RN,"isTerminalGroup");MN="TerminalRuleCall";o(ET,"isTerminalRuleCall");IN="UnorderedGroup";o(ST,"isUnorderedGroup");ON="UntilToken";o(PN,"isUntilToken");BN="Wildcard";o(FN,"isWildcard");Vm=class extends $d{static{o(this,"LangiumGrammarAstReflection")}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,r){switch(e){case pN:case mN:case gN:case yN:case xN:case bN:case TN:case kN:case EN:case CN:case _N:case LN:case NN:case MN:case IN:case ON:case BN:return this.isSubtype(GD,r);case $D:case tN:case uN:return this.isSubtype(vT,r);case VD:case sN:case cN:case fN:return this.isSubtype(zD,r);case HD:return this.isSubtype(yT,r)||this.isSubtype(vT,r);case YD:case XD:case JD:case nN:return this.isSubtype(yT,r);case QD:case ZD:case hN:return this.isSubtype(Uv,r);case aN:return this.isSubtype(Vv,r)||this.isSubtype(Uv,r);case xT:return this.isSubtype(Vv,r);default:return!1}}getReferenceType(e){let r=`${e.container.$type}:${e.property}`;switch(r){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return Uv;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return Vv;case"Grammar:usedGrammars":return KD;case"NamedArgument:parameter":case"ParameterReference:parameter":return rN;case"TerminalRuleCall:rule":return xT;default:throw new Error(`${r} 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:[]}}}},lr=new Vm});var AT={};vr(AT,{assignMandatoryProperties:()=>$N,copyAstNode:()=>GN,findLocalReferences:()=>xBe,findRootNode:()=>zae,getContainerOfType:()=>qd,getDocument:()=>Fi,hasContainerOfType:()=>vBe,linkContentToContainer:()=>CT,streamAllContents:()=>_c,streamAst:()=>jo,streamContents:()=>qv,streamReferences:()=>Um});function CT(t){for(let[e,r]of Object.entries(t))e.startsWith("$")||(Array.isArray(r)?r.forEach((n,i)=>{ei(n)&&(n.$container=t,n.$containerProperty=e,n.$containerIndex=i)}):ei(r)&&(r.$container=t,r.$containerProperty=e))}function qd(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function vBe(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}function Fi(t){let r=zae(t).$document;if(!r)throw new Error("AST node has no document.");return r}function zae(t){for(;t.$container;)t=t.$container;return t}function qv(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e?.range;return new ao(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndexqv(r,e))}function jo(t,e){if(t){if(e?.range&&!zN(t,e.range))return new Cc(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new Cc(t,r=>qv(r,e),{includeRoot:!0})}function zN(t,e){var r;if(!e)return!0;let n=(r=t.$cstNode)===null||r===void 0?void 0:r.range;return n?PD(n,e):!1}function Um(t){return new ao(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex{Um(n).forEach(i=>{i.reference.ref===t&&r.push(i.reference)})}),tn(r)}function $N(t,e){let r=t.getTypeMetaData(e.$type),n=e;for(let i of r.properties)i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=Gae(i.defaultValue))}function Gae(t){return Array.isArray(t)?[...t.map(Gae)]:t}function GN(t,e){let r={$type:t.$type};for(let[n,i]of Object.entries(t))if(!n.startsWith("$"))if(ei(i))r[n]=GN(i,e);else if(ma(i))r[n]=e(r,n,i.$refNode,i.$refText);else if(Array.isArray(i)){let a=[];for(let s of i)ei(s)?a.push(GN(s,e)):ma(s)?a.push(e(r,n,s.$refNode,s.$refText)):a.push(s);r[n]=a}else r[n]=i;return CT(r),r}var es=M(()=>{"use strict";Yo();Rs();Ml();o(CT,"linkContentToContainer");o(qd,"getContainerOfType");o(vBe,"hasContainerOfType");o(Fi,"getDocument");o(zae,"findRootNode");o(qv,"streamContents");o(_c,"streamAllContents");o(jo,"streamAst");o(zN,"isAstNodeInRange");o(Um,"streamReferences");o(xBe,"findLocalReferences");o($N,"assignMandatoryProperties");o(Gae,"copyDefaultValue");o(GN,"copyAstNode")});function ar(t){return t.charCodeAt(0)}function _T(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function Hm(t,e){if(t[e]===!0)throw"duplicate flag "+e;let r=t[e];t[e]=!0}function Xd(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function Xv(){throw Error("Internal Error - Should never get here!")}function VN(t){return t.type==="Character"}var UN=M(()=>{"use strict";o(ar,"cc");o(_T,"insertToSet");o(Hm,"addFlag");o(Xd,"ASSERT_EXISTS");o(Xv,"ASSERT_NEVER_REACH_HERE");o(VN,"isCharacter")});var jv,Kv,HN,$ae=M(()=>{"use strict";UN();jv=[];for(let t=ar("0");t<=ar("9");t++)jv.push(t);Kv=[ar("_")].concat(jv);for(let t=ar("a");t<=ar("z");t++)Kv.push(t);for(let t=ar("A");t<=ar("Z");t++)Kv.push(t);HN=[ar(" "),ar("\f"),ar(` +`),ar("\r"),ar(" "),ar("\v"),ar(" "),ar("\xA0"),ar("\u1680"),ar("\u2000"),ar("\u2001"),ar("\u2002"),ar("\u2003"),ar("\u2004"),ar("\u2005"),ar("\u2006"),ar("\u2007"),ar("\u2008"),ar("\u2009"),ar("\u200A"),ar("\u2028"),ar("\u2029"),ar("\u202F"),ar("\u205F"),ar("\u3000"),ar("\uFEFF")]});var bBe,LT,wBe,jd,Vae=M(()=>{"use strict";UN();$ae();bBe=/[0-9a-fA-F]/,LT=/[0-9]/,wBe=/[1-9]/,jd=class{static{o(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":Hm(n,"global");break;case"i":Hm(n,"ignoreCase");break;case"m":Hm(n,"multiLine");break;case"u":Hm(n,"unicode");break;case"y":Hm(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){let e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break}Xd(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return Xv()}quantifier(e=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),r={atLeast:i,atMost:a}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;Xd(r);break}if(!(e===!0&&r===void 0)&&Xd(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e,r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),Xd(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):Xv()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[ar(` +`),ar("\r"),ar("\u2028"),ar("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=jv;break;case"D":e=jv,r=!0;break;case"s":e=HN;break;case"S":e=HN,r=!0;break;case"w":e=Kv;break;case"W":e=Kv,r=!0;break}return Xd(e)?{type:"Set",value:e,complement:r}:Xv()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=ar("\f");break;case"n":e=ar(` +`);break;case"r":e=ar("\r");break;case"t":e=ar(" ");break;case"v":e=ar("\v");break}return Xd(e)?{type:"Character",value:e}:Xv()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:ar("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let e=this.popChar();return{type:"Character",value:ar(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case` +`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let e=this.popChar();return{type:"Character",value:ar(e)}}}characterClass(){let e=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(VN(n)&&this.isRangeDash()){this.consumeChar("-");let a=this.classAtom(),s=a.type==="Character";if(VN(a)){if(a.value=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}});var Lc,Uae=M(()=>{"use strict";Lc=class{static{o(this,"BaseRegExpVisitor")}visitChildren(e){for(let r in e){let n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},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);break}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){}}});var Qv=M(()=>{"use strict";Vae();Uae()});var NT={};vr(NT,{NEWLINE_REGEXP:()=>YN,escapeRegExp:()=>Qd,getCaseInsensitivePattern:()=>XN,getTerminalParts:()=>TBe,isMultilineComment:()=>qN,isWhitespace:()=>DT,partialMatches:()=>jN,partialRegExp:()=>Wae});function TBe(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;let e=Hae.pattern(t),r=[];for(let n of e.value.value)Kd.reset(t),Kd.visit(n),r.push({start:Kd.startRegexp,end:Kd.endRegex});return r}catch{return[]}}function qN(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),Kd.reset(t),Kd.visit(Hae.pattern(t)),Kd.multiline}catch{return!1}}function DT(t){return(typeof t=="string"?new RegExp(t):t).test(" ")}function Qd(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function XN(t){return Array.prototype.map.call(t,e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:Qd(e)).join("")}function jN(t,e){let r=Wae(t),n=e.match(r);return!!n&&n[0].length>0}function Wae(t){typeof t=="string"&&(t=new RegExp(t));let e=t,r=t.source,n=0;function i(){let a="",s;function l(h){a+=r.substr(n,h),n+=h}o(l,"appendRaw");function u(h){a+="(?:"+r.substr(n,h)+"|$)",n+=h}for(o(u,"appendOptional");n",n)-n+1);break;default:u(2);break}break;case"[":s=/\[(?:\\.|.)*?\]/g,s.lastIndex=n,s=s.exec(r)||[],u(s[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":l(1);break;case"{":s=/\{\d+,?\d*\}/g,s.lastIndex=n,s=s.exec(r),s?l(s[0].length):u(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":a+="(?:",n+=3,a+=i()+"|$)";break;case"=":a+="(?=",n+=3,a+=i()+")";break;case"!":s=n,n+=3,i(),a+=r.substr(s,n-s);break;case"<":switch(r[n+3]){case"=":case"!":s=n,n+=4,i(),a+=r.substr(s,n-s);break;default:l(r.indexOf(">",n)-n+1),a+=i()+"|$)";break}break}else l(1),a+=i()+"|$)";break;case")":return++n,a;default:u(1);break}return a}return o(i,"process"),new RegExp(i(),t.flags)}var YN,Hae,WN,Kd,Wm=M(()=>{"use strict";Qv();YN=/\r?\n/gm,Hae=new jd,WN=class extends Lc{static{o(this,"TerminalRegExpVisitor")}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){let r=String.fromCharCode(e.value);if(!this.multiline&&r===` +`&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=Qd(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){let r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!` +`.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},Kd=new WN;o(TBe,"getTerminalParts");o(qN,"isMultilineComment");o(DT,"isWhitespace");o(Qd,"escapeRegExp");o(XN,"getCaseInsensitivePattern");o(jN,"partialMatches");o(Wae,"partialRegExp")});var MT={};vr(MT,{findAssignment:()=>iR,findNameAssignment:()=>RT,findNodeForKeyword:()=>rR,findNodeForProperty:()=>Jv,findNodesForKeyword:()=>kBe,findNodesForKeywordInternal:()=>nR,findNodesForProperty:()=>eR,getActionAtElement:()=>Kae,getActionType:()=>Zae,getAllReachableRules:()=>Zv,getCrossReferenceTerminal:()=>ZN,getEntryRule:()=>Yae,getExplicitRuleType:()=>aR,getHiddenRules:()=>qae,getRuleType:()=>sR,getTypeName:()=>Zd,isArrayCardinality:()=>SBe,isArrayOperator:()=>CBe,isCommentTerminal:()=>JN,isDataType:()=>ABe,isDataTypeRule:()=>e2,isOptionalCardinality:()=>EBe,terminalRegex:()=>Ym});function Yae(t){return t.rules.find(e=>Ma(e)&&e.entry)}function qae(t){return t.rules.filter(e=>qo(e)&&e.hidden)}function Zv(t,e){let r=new Set,n=Yae(t);if(!n)return new Set(t.rules);let i=[n].concat(qae(t));for(let s of i)Xae(s,r,e);let a=new Set;for(let s of t.rules)(r.has(s.name)||qo(s)&&s.hidden)&&a.add(s);return a}function Xae(t,e,r){e.add(t.name),_c(t).forEach(n=>{if(Ol(n)||r&&ET(n)){let i=n.rule.ref;i&&!e.has(i.name)&&Xae(i,e,r)}})}function ZN(t){if(t.terminal)return t.terminal;if(t.type.ref){let e=RT(t.type.ref);return e?.terminal}}function JN(t){return t.hidden&&!Ym(t).test(" ")}function eR(t,e){return!t||!e?[]:tR(t,e,t.astNode,!0)}function Jv(t,e,r){if(!t||!e)return;let n=tR(t,e,t.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function tR(t,e,r,n){if(!n){let i=qd(t.grammarSource,Il);if(i&&i.feature===e)return[t]}return io(t)&&t.astNode===r?t.content.flatMap(i=>tR(i,e,r,!1)):[]}function kBe(t,e){return t?nR(t,e,t?.astNode):[]}function rR(t,e,r){if(!t)return;let n=nR(t,e,t?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function nR(t,e,r){if(t.astNode!==r)return[];if(Xo(t.grammarSource)&&t.grammarSource.value===e)return[t];let n=Ud(t).iterator(),i,a=[];do if(i=n.next(),!i.done){let s=i.value;s.astNode===r?Xo(s.grammarSource)&&s.grammarSource.value===e&&a.push(s):n.prune()}while(!i.done);return a}function iR(t){var e;let r=t.astNode;for(;r===((e=t.container)===null||e===void 0?void 0:e.astNode);){let n=qd(t.grammarSource,Il);if(n)return n;t=t.container}}function RT(t){let e=t;return bT(e)&&(Ru(e.$container)?e=e.$container.$container:Ma(e.$container)?e=e.$container:ef(e.$container)),jae(t,e,new Map)}function jae(t,e,r){var n;function i(a,s){let l;return qd(a,Il)||(l=jae(s,s,r)),r.set(t,l),l}if(o(i,"go"),r.has(t))return r.get(t);r.set(t,void 0);for(let a of _c(e)){if(Il(a)&&a.feature.toLowerCase()==="name")return r.set(t,a),a;if(Ol(a)&&Ma(a.rule.ref))return i(a,a.rule.ref);if(TT(a)&&(!((n=a.typeRef)===null||n===void 0)&&n.ref))return i(a,a.typeRef.ref)}}function Kae(t){let e=t.$container;if(tf(e)){let r=e.elements,n=r.indexOf(t);for(let i=n-1;i>=0;i--){let a=r[i];if(Ru(a))return a;{let s=_c(r[i]).find(Ru);if(s)return s}}}if(Hv(e))return Kae(e)}function EBe(t,e){return t==="?"||t==="*"||tf(e)&&!!e.guardCondition}function SBe(t){return t==="*"||t==="+"}function CBe(t){return t==="+="}function e2(t){return Qae(t,new Set)}function Qae(t,e){if(e.has(t))return!0;e.add(t);for(let r of _c(t))if(Ol(r)){if(!r.rule.ref||Ma(r.rule.ref)&&!Qae(r.rule.ref,e))return!1}else{if(Il(r))return!1;if(Ru(r))return!1}return!!t.definition}function ABe(t){return QN(t.type,new Set)}function QN(t,e){if(e.has(t))return!0;if(e.add(t),UD(t))return!1;if(oN(t))return!1;if(dN(t))return t.types.every(r=>QN(r,e));if(TT(t)){if(t.primitiveType!==void 0)return!0;if(t.stringType!==void 0)return!0;if(t.typeRef!==void 0){let r=t.typeRef.ref;return Wv(r)?QN(r.type,e):!1}else return!1}else return!1}function aR(t){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){let e=t.returnType.ref;if(e){if(Ma(e))return e.name;if(wT(e)||Wv(e))return e.name}}}function Zd(t){var e;if(Ma(t))return e2(t)?t.name:(e=aR(t))!==null&&e!==void 0?e:t.name;if(wT(t)||Wv(t)||lN(t))return t.name;if(Ru(t)){let r=Zae(t);if(r)return r}else if(bT(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function Zae(t){var e;if(t.inferredType)return t.inferredType.name;if(!((e=t.type)===null||e===void 0)&&e.ref)return Zd(t.type.ref)}function sR(t){var e,r,n;return qo(t)?(r=(e=t.type)===null||e===void 0?void 0:e.name)!==null&&r!==void 0?r:"string":e2(t)?t.name:(n=aR(t))!==null&&n!==void 0?n:t.name}function Ym(t){let e={s:!1,i:!1,u:!1},r=qm(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}function qm(t,e){if(DN(t))return _Be(t);if(RN(t))return LBe(t);if(vN(t))return RBe(t);if(ET(t)){let r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return Mu(qm(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead})}else{if(SN(t))return NBe(t);if(PN(t))return DBe(t);if(AN(t)){let r=t.regex.lastIndexOf("/"),n=t.regex.substring(1,r),i=t.regex.substring(r+1);return e&&(e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u")),Mu(n,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}else{if(FN(t))return Mu(oR,{cardinality:t.cardinality,lookahead:t.lookahead});throw new Error(`Invalid terminal element: ${t?.$type}`)}}}function _Be(t){return Mu(t.elements.map(e=>qm(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead})}function LBe(t){return Mu(t.elements.map(e=>qm(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead})}function DBe(t){return Mu(`${oR}*?${qm(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead})}function NBe(t){return Mu(`(?!${qm(t.terminal)})${oR}*?`,{cardinality:t.cardinality,lookahead:t.lookahead})}function RBe(t){return t.right?Mu(`[${KN(t.left)}-${KN(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1}):Mu(KN(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}function KN(t){return Qd(t.value)}function Mu(t,e){var r;return(e.wrap!==!1||e.lookahead)&&(t=`(${(r=e.lookahead)!==null&&r!==void 0?r:""}${t})`),e.cardinality?`${t}${e.cardinality}`:t}var oR,Pl=M(()=>{"use strict";gT();Ac();Yo();es();Ml();Wm();o(Yae,"getEntryRule");o(qae,"getHiddenRules");o(Zv,"getAllReachableRules");o(Xae,"ruleDfs");o(ZN,"getCrossReferenceTerminal");o(JN,"isCommentTerminal");o(eR,"findNodesForProperty");o(Jv,"findNodeForProperty");o(tR,"findNodesForPropertyInternal");o(kBe,"findNodesForKeyword");o(rR,"findNodeForKeyword");o(nR,"findNodesForKeywordInternal");o(iR,"findAssignment");o(RT,"findNameAssignment");o(jae,"findNameAssignmentInternal");o(Kae,"getActionAtElement");o(EBe,"isOptionalCardinality");o(SBe,"isArrayCardinality");o(CBe,"isArrayOperator");o(e2,"isDataTypeRule");o(Qae,"isDataTypeRuleInternal");o(ABe,"isDataType");o(QN,"isDataTypeInternal");o(aR,"getExplicitRuleType");o(Zd,"getTypeName");o(Zae,"getActionType");o(sR,"getRuleType");o(Ym,"terminalRegex");oR=/[\s\S]/.source;o(qm,"abstractElementToRegex");o(_Be,"terminalAlternativesToRegex");o(LBe,"terminalGroupToRegex");o(DBe,"untilTokenToRegex");o(NBe,"negateTokenToRegex");o(RBe,"characterRangeToRegex");o(KN,"keywordToRegex");o(Mu,"withCardinality")});function lR(t){let e=[],r=t.Grammar;for(let n of r.rules)qo(n)&&JN(n)&&qN(Ym(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:pT}}var cR=M(()=>{"use strict";Ml();Pl();Wm();Ac();o(lR,"createGrammarConfig")});var uR=M(()=>{"use strict"});function Xm(t){console&&console.error&&console.error(`Error: ${t}`)}function t2(t){console&&console.warn&&console.warn(`Warning: ${t}`)}var Jae=M(()=>{"use strict";o(Xm,"PRINT_ERROR");o(t2,"PRINT_WARNING")});function r2(t){let e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}var ese=M(()=>{"use strict";o(r2,"timer")});function n2(t){function e(){}o(e,"FakeConstructor"),e.prototype=t;let r=new e;function n(){return typeof r.bar}return o(n,"fakeAccess"),n(),n(),t;(0,eval)(t)}var tse=M(()=>{"use strict";o(n2,"toFastProperties")});var jm=M(()=>{"use strict";Jae();ese();tse()});function MBe(t){return IBe(t)?t.LABEL:t.name}function IBe(t){return gi(t.LABEL)&&t.LABEL!==""}function IT(t){return Je(t,Km)}function Km(t){function e(r){return Je(r,Km)}if(o(e,"convertDefinition"),t instanceof nn){let r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return gi(t.label)&&(r.label=t.label),r}else{if(t instanceof Cn)return{type:"Alternative",definition:e(t.definition)};if(t instanceof an)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof An)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof _n)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:Km(new kr({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof vn)return{type:"RepetitionWithSeparator",idx:t.idx,separator:Km(new kr({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Lr)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof xn)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof kr){let r={type:"Terminal",name:t.terminalType.name,label:MBe(t.terminalType),idx:t.idx};gi(t.label)&&(r.terminalLabel=t.label);let n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=Vo(n)?n.source:n),r}else{if(t instanceof ts)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}var so,nn,ts,Cn,an,An,_n,Lr,vn,xn,kr,OT=M(()=>{"use strict";Ht();o(MBe,"tokenLabel");o(IBe,"hasTokenLabel");so=class{static{o(this,"AbstractProduction")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),Ce(this.definition,r=>{r.accept(e)})}},nn=class extends so{static{o(this,"NonTerminal")}constructor(e){super([]),this.idx=1,ha(this,Ds(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},ts=class extends so{static{o(this,"Rule")}constructor(e){super(e.definition),this.orgText="",ha(this,Ds(e,r=>r!==void 0))}},Cn=class extends so{static{o(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,ha(this,Ds(e,r=>r!==void 0))}},an=class extends so{static{o(this,"Option")}constructor(e){super(e.definition),this.idx=1,ha(this,Ds(e,r=>r!==void 0))}},An=class extends so{static{o(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,ha(this,Ds(e,r=>r!==void 0))}},_n=class extends so{static{o(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,ha(this,Ds(e,r=>r!==void 0))}},Lr=class extends so{static{o(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,ha(this,Ds(e,r=>r!==void 0))}},vn=class extends so{static{o(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,ha(this,Ds(e,r=>r!==void 0))}},xn=class extends so{static{o(this,"Alternation")}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,ha(this,Ds(e,r=>r!==void 0))}},kr=class{static{o(this,"Terminal")}constructor(e){this.idx=1,ha(this,Ds(e,r=>r!==void 0))}accept(e){e.visit(this)}};o(IT,"serializeGrammar");o(Km,"serializeProduction")});var rs,rse=M(()=>{"use strict";OT();rs=class{static{o(this,"GAstVisitor")}visit(e){let r=e;switch(r.constructor){case nn:return this.visitNonTerminal(r);case Cn:return this.visitAlternative(r);case an:return this.visitOption(r);case An:return this.visitRepetitionMandatory(r);case _n:return this.visitRepetitionMandatoryWithSeparator(r);case vn:return this.visitRepetitionWithSeparator(r);case Lr:return this.visitRepetition(r);case xn:return this.visitAlternation(r);case kr:return this.visitTerminal(r);case ts:return this.visitRule(r);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){}}});function hR(t){return t instanceof Cn||t instanceof an||t instanceof Lr||t instanceof An||t instanceof _n||t instanceof vn||t instanceof kr||t instanceof ts}function Jd(t,e=[]){return t instanceof an||t instanceof Lr||t instanceof vn?!0:t instanceof xn?Rv(t.definition,n=>Jd(n,e)):t instanceof nn&&Hn(e,t)?!1:t instanceof so?(t instanceof nn&&e.push(t),Ra(t.definition,n=>Jd(n,e))):!1}function fR(t){return t instanceof xn}function Ms(t){if(t instanceof nn)return"SUBRULE";if(t instanceof an)return"OPTION";if(t instanceof xn)return"OR";if(t instanceof An)return"AT_LEAST_ONE";if(t instanceof _n)return"AT_LEAST_ONE_SEP";if(t instanceof vn)return"MANY_SEP";if(t instanceof Lr)return"MANY";if(t instanceof kr)return"CONSUME";throw Error("non exhaustive match")}var nse=M(()=>{"use strict";Ht();OT();o(hR,"isSequenceProd");o(Jd,"isOptionalProd");o(fR,"isBranchingProd");o(Ms,"getProductionDslName")});var ns=M(()=>{"use strict";OT();rse();nse()});function ise(t,e,r){return[new an({definition:[new kr({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}var Iu,PT=M(()=>{"use strict";Ht();ns();Iu=class{static{o(this,"RestWalker")}walk(e,r=[]){Ce(e.definition,(n,i)=>{let a=mi(e.definition,i+1);if(n instanceof nn)this.walkProdRef(n,a,r);else if(n instanceof kr)this.walkTerminal(n,a,r);else if(n instanceof Cn)this.walkFlat(n,a,r);else if(n instanceof an)this.walkOption(n,a,r);else if(n instanceof An)this.walkAtLeastOne(n,a,r);else if(n instanceof _n)this.walkAtLeastOneSep(n,a,r);else if(n instanceof vn)this.walkManySep(n,a,r);else if(n instanceof Lr)this.walkMany(n,a,r);else if(n instanceof xn)this.walkOr(n,a,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){let i=r.concat(n);this.walk(e,i)}walkOption(e,r,n){let i=r.concat(n);this.walk(e,i)}walkAtLeastOne(e,r,n){let i=[new an({definition:e.definition})].concat(r,n);this.walk(e,i)}walkAtLeastOneSep(e,r,n){let i=ise(e,r,n);this.walk(e,i)}walkMany(e,r,n){let i=[new an({definition:e.definition})].concat(r,n);this.walk(e,i)}walkManySep(e,r,n){let i=ise(e,r,n);this.walk(e,i)}walkOr(e,r,n){let i=r.concat(n);Ce(e.definition,a=>{let s=new Cn({definition:[a]});this.walk(s,i)})}};o(ise,"restForRepetitionWithSeparator")});function e0(t){if(t instanceof nn)return e0(t.referencedRule);if(t instanceof kr)return BBe(t);if(hR(t))return OBe(t);if(fR(t))return PBe(t);throw Error("non exhaustive match")}function OBe(t){let e=[],r=t.definition,n=0,i=r.length>n,a,s=!0;for(;i&&s;)a=r[n],s=Jd(a),e=e.concat(e0(a)),n=n+1,i=r.length>n;return Om(e)}function PBe(t){let e=Je(t.definition,r=>e0(r));return Om(Wr(e))}function BBe(t){return[t.terminalType]}var dR=M(()=>{"use strict";Ht();ns();o(e0,"first");o(OBe,"firstForSequence");o(PBe,"firstForBranching");o(BBe,"firstForTerminal")});var BT,pR=M(()=>{"use strict";BT="_~IN~_"});function ase(t){let e={};return Ce(t,r=>{let n=new mR(r).startWalking();ha(e,n)}),e}function FBe(t,e){return t.name+e+BT}var mR,sse=M(()=>{"use strict";PT();dR();Ht();pR();ns();mR=class extends Iu{static{o(this,"ResyncFollowsWalker")}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){let i=FBe(e.referencedRule,e.idx)+this.topProd.name,a=r.concat(n),s=new Cn({definition:a}),l=e0(s);this.follows[i]=l}};o(ase,"computeAllProdsFollows");o(FBe,"buildBetweenProdsFollowPrefix")});function Qm(t){let e=t.toString();if(FT.hasOwnProperty(e))return FT[e];{let r=zBe.pattern(e);return FT[e]=r,r}}function ose(){FT={}}var FT,zBe,zT=M(()=>{"use strict";Qv();FT={},zBe=new jd;o(Qm,"getRegExpAst");o(ose,"clearRegExpParserCache")});function use(t,e=!1){try{let r=Qm(t);return gR(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===cse)e&&t2(`${i2} Unable to optimize: < ${t.toString()} > + Complement Sets cannot be automatically optimized. + This will disable the lexer's first char optimizations. + See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";e&&(n=` + This will disable the lexer's first char optimizations. + See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),Xm(`${i2} + Failed parsing: < ${t.toString()} > + Using the @chevrotain/regexp-to-ast library + Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function gR(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i{if(typeof u=="number")GT(u,e,r);else{let h=u;if(r===!0)for(let f=h.from;f<=h.to;f++)GT(f,e,r);else{for(let f=h.from;f<=h.to&&f=Zm){let f=h.from>=Zm?h.from:Zm,d=h.to,p=Dc(f),m=Dc(d);for(let g=p;g<=m;g++)e[g]=g}}}});break;case"Group":gR(s.value,e,r);break;default:throw Error("Non Exhaustive Match")}let l=s.quantifier!==void 0&&s.quantifier.atLeast===0;if(s.type==="Group"&&yR(s)===!1||s.type!=="Group"&&l===!1)break}break;default:throw Error("non exhaustive match!")}return br(e)}function GT(t,e,r){let n=Dc(t);e[n]=n,r===!0&&GBe(t,e)}function GBe(t,e){let r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){let i=Dc(n.charCodeAt(0));e[i]=i}else{let i=r.toLowerCase();if(i!==r){let a=Dc(i.charCodeAt(0));e[a]=a}}}function lse(t,e){return Za(t.value,r=>{if(typeof r=="number")return Hn(e,r);{let n=r;return Za(e,i=>n.from<=i&&i<=n.to)!==void 0}})}function yR(t){let e=t.quantifier;return e&&e.atLeast===0?!0:t.value?Mt(t.value)?Ra(t.value,yR):yR(t.value):!1}function $T(t,e){if(e instanceof RegExp){let r=Qm(e),n=new vR(t);return n.visit(r),n.found}else return Za(e,r=>Hn(t,r.charCodeAt(0)))!==void 0}var cse,i2,vR,hse=M(()=>{"use strict";Qv();Ht();jm();zT();xR();cse="Complement Sets are not supported for first char optimization",i2=`Unable to use "first char" lexer optimizations: +`;o(use,"getOptimizedStartCodesIndices");o(gR,"firstCharOptimizedIndices");o(GT,"addOptimizedIdxToResult");o(GBe,"handleIgnoreCase");o(lse,"findCode");o(yR,"isWholeOptional");vR=class extends Lc{static{o(this,"CharCodeFinder")}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return}super.visitChildren(e)}}visitCharacter(e){Hn(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?lse(e,this.targetCharCodes)===void 0&&(this.found=!0):lse(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};o($T,"canMatchCharCode")});function pse(t,e){e=qh(e,{useSticky:wR,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` +`],tracer:o((b,w)=>w(),"tracer")});let r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{iFe()});let n;r("Reject Lexer.NA",()=>{n=jh(t,b=>b[t0]===oi.NA)});let i=!1,a;r("Transform Patterns",()=>{i=!1,a=Je(n,b=>{let w=b[t0];if(Vo(w)){let _=w.source;return _.length===1&&_!=="^"&&_!=="$"&&_!=="."&&!w.ignoreCase?_:_.length===2&&_[0]==="\\"&&!Hn(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],_[1])?_[1]:e.useSticky?dse(w):fse(w)}else{if(Ei(w))return i=!0,{exec:w};if(typeof w=="object")return i=!0,w;if(typeof w=="string"){if(w.length===1)return w;{let _=w.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),T=new RegExp(_);return e.useSticky?dse(T):fse(T)}}else throw Error("non exhaustive match")}})});let s,l,u,h,f;r("misc mapping",()=>{s=Je(n,b=>b.tokenTypeIdx),l=Je(n,b=>{let w=b.GROUP;if(w!==oi.SKIPPED){if(gi(w))return w;if(dr(w))return!1;throw Error("non exhaustive match")}}),u=Je(n,b=>{let w=b.LONGER_ALT;if(w)return Mt(w)?Je(w,T=>jw(n,T)):[jw(n,w)]}),h=Je(n,b=>b.PUSH_MODE),f=Je(n,b=>It(b,"POP_MODE"))});let d;r("Line Terminator Handling",()=>{let b=Tse(e.lineTerminatorCharacters);d=Je(n,w=>!1),e.positionTracking!=="onlyOffset"&&(d=Je(n,w=>It(w,"LINE_BREAKS")?!!w.LINE_BREAKS:wse(w,b)===!1&&$T(b,w.PATTERN)))});let p,m,g,y;r("Misc Mapping #2",()=>{p=Je(n,xse),m=Je(a,rFe),g=qr(n,(b,w)=>{let _=w.GROUP;return gi(_)&&_!==oi.SKIPPED&&(b[_]=[]),b},{}),y=Je(a,(b,w)=>({pattern:a[w],longerAlt:u[w],canLineTerminator:d[w],isCustom:p[w],short:m[w],group:l[w],push:h[w],pop:f[w],tokenTypeIdx:s[w],tokenType:n[w]}))});let v=!0,x=[];return e.safeMode||r("First Char Optimization",()=>{x=qr(n,(b,w,_)=>{if(typeof w.PATTERN=="string"){let T=w.PATTERN.charCodeAt(0),E=Dc(T);bR(b,E,y[_])}else if(Mt(w.START_CHARS_HINT)){let T;Ce(w.START_CHARS_HINT,E=>{let L=typeof E=="string"?E.charCodeAt(0):E,C=Dc(L);T!==C&&(T=C,bR(b,C,y[_]))})}else if(Vo(w.PATTERN))if(w.PATTERN.unicode)v=!1,e.ensureOptimizations&&Xm(`${i2} Unable to analyze < ${w.PATTERN.toString()} > pattern. + The regexp unicode flag is not currently supported by the regexp-to-ast library. + This will disable the lexer's first char optimizations. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let T=use(w.PATTERN,e.ensureOptimizations);cr(T)&&(v=!1),Ce(T,E=>{bR(b,E,y[_])})}else e.ensureOptimizations&&Xm(`${i2} TokenType: <${w.name}> is using a custom token pattern without providing parameter. + This will disable the lexer's first char optimizations. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),v=!1;return b},[])}),{emptyGroups:g,patternIdxToConfig:y,charCodeToPatternIdxToConfig:x,hasCustom:i,canBeOptimized:v}}function mse(t,e){let r=[],n=VBe(t);r=r.concat(n.errors);let i=UBe(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat($Be(a)),r=r.concat(QBe(a)),r=r.concat(ZBe(a,e)),r=r.concat(JBe(a)),r}function $Be(t){let e=[],r=Yr(t,n=>Vo(n[t0]));return e=e.concat(WBe(r)),e=e.concat(XBe(r)),e=e.concat(jBe(r)),e=e.concat(KBe(r)),e=e.concat(YBe(r)),e}function VBe(t){let e=Yr(t,i=>!It(i,t0)),r=Je(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:Wn.MISSING_PATTERN,tokenTypes:[i]})),n=Xh(t,e);return{errors:r,valid:n}}function UBe(t){let e=Yr(t,i=>{let a=i[t0];return!Vo(a)&&!Ei(a)&&!It(a,"exec")&&!gi(a)}),r=Je(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Wn.INVALID_PATTERN,tokenTypes:[i]})),n=Xh(t,e);return{errors:r,valid:n}}function WBe(t){class e extends Lc{static{o(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(a){this.found=!0}}let r=Yr(t,i=>{let a=i.PATTERN;try{let s=Qm(a),l=new e;return l.visit(s),l.found}catch{return HBe.test(a.source)}});return Je(r,i=>({message:`Unexpected RegExp Anchor Error: + Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$' + See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Wn.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function YBe(t){let e=Yr(t,n=>n.PATTERN.test(""));return Je(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:Wn.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}function XBe(t){class e extends Lc{static{o(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(a){this.found=!0}}let r=Yr(t,i=>{let a=i.PATTERN;try{let s=Qm(a),l=new e;return l.visit(s),l.found}catch{return qBe.test(a.source)}});return Je(r,i=>({message:`Unexpected RegExp Anchor Error: + Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^' + See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Wn.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function jBe(t){let e=Yr(t,n=>{let i=n[t0];return i instanceof RegExp&&(i.multiline||i.global)});return Je(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Wn.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function KBe(t){let e=[],r=Je(t,a=>qr(t,(s,l)=>(a.PATTERN.source===l.PATTERN.source&&!Hn(e,l)&&l.PATTERN!==oi.NA&&(e.push(l),s.push(l)),s),[]));r=Tc(r);let n=Yr(r,a=>a.length>1);return Je(n,a=>{let s=Je(a,u=>u.name);return{message:`The same RegExp pattern ->${ra(a).PATTERN}<-has been used in all of the following Token Types: ${s.join(", ")} <-`,type:Wn.DUPLICATE_PATTERNS_FOUND,tokenTypes:a}})}function QBe(t){let e=Yr(t,n=>{if(!It(n,"GROUP"))return!1;let i=n.GROUP;return i!==oi.SKIPPED&&i!==oi.NA&&!gi(i)});return Je(e,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Wn.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}function ZBe(t,e){let r=Yr(t,i=>i.PUSH_MODE!==void 0&&!Hn(e,i.PUSH_MODE));return Je(r,i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:Wn.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function JBe(t){let e=[],r=qr(t,(n,i,a)=>{let s=i.PATTERN;return s===oi.NA||(gi(s)?n.push({str:s,idx:a,tokenType:i}):Vo(s)&&tFe(s)&&n.push({str:s.source,idx:a,tokenType:i})),n},[]);return Ce(t,(n,i)=>{Ce(r,({str:a,idx:s,tokenType:l})=>{if(i${l.name}<- can never be matched. +Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition. +See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:u,type:Wn.UNREACHABLE_PATTERN,tokenTypes:[n,l]})}})}),e}function eFe(t,e){if(Vo(e)){let r=e.exec(t);return r!==null&&r.index===0}else{if(Ei(e))return e(t,0,[],{});if(It(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function tFe(t){return Za([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>t.source.indexOf(r)!==-1)===void 0}function fse(t){let e=t.ignoreCase?"i":"";return new RegExp(`^(?:${t.source})`,e)}function dse(t){let e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}function gse(t,e,r){let n=[];return It(t,Jm)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Jm+`> property in its definition +`,type:Wn.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),It(t,VT)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+VT+`> property in its definition +`,type:Wn.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),It(t,VT)&&It(t,Jm)&&!It(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${Jm}: <${t.defaultMode}>which does not exist +`,type:Wn.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),It(t,VT)&&Ce(t.modes,(i,a)=>{Ce(i,(s,l)=>{if(dr(s))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${a}> at index: <${l}> +`,type:Wn.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(It(s,"LONGER_ALT")){let u=Mt(s.LONGER_ALT)?s.LONGER_ALT:[s.LONGER_ALT];Ce(u,h=>{!dr(h)&&!Hn(i,h)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${h.name}> on token <${s.name}> outside of mode <${a}> +`,type:Wn.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function yse(t,e,r){let n=[],i=!1,a=Tc(Wr(br(t.modes))),s=jh(a,u=>u[t0]===oi.NA),l=Tse(r);return e&&Ce(s,u=>{let h=wse(u,l);if(h!==!1){let d={message:nFe(u,h),type:h.issue,tokenType:u};n.push(d)}else It(u,"LINE_BREAKS")?u.LINE_BREAKS===!0&&(i=!0):$T(l,u.PATTERN)&&(i=!0)}),e&&!i&&n.push({message:`Warning: No LINE_BREAKS Found. + This Lexer has been defined to track line and column information, + But none of the Token Types can be identified as matching a line terminator. + See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS + for details.`,type:Wn.NO_LINE_BREAKS_FLAGS}),n}function vse(t){let e={},r=zr(t);return Ce(r,n=>{let i=t[n];if(Mt(i))e[n]=[];else throw Error("non exhaustive match")}),e}function xse(t){let e=t.PATTERN;if(Vo(e))return!1;if(Ei(e))return!0;if(It(e,"exec"))return!0;if(gi(e))return!1;throw Error("non exhaustive match")}function rFe(t){return gi(t)&&t.length===1?t.charCodeAt(0):!1}function wse(t,e){if(It(t,"LINE_BREAKS"))return!1;if(Vo(t.PATTERN)){try{$T(e,t.PATTERN)}catch(r){return{issue:Wn.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(gi(t.PATTERN))return!1;if(xse(t))return{issue:Wn.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function nFe(t,e){if(e.issue===Wn.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern. + The problem is in the <${t.name}> Token Type + Root cause: ${e.errMsg}. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===Wn.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. + The problem is in the <${t.name}> Token Type + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function Tse(t){return Je(t,r=>gi(r)?r.charCodeAt(0):r)}function bR(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}function Dc(t){return t255?255+~~(t/255):t}}var t0,Jm,VT,wR,HBe,qBe,bse,Zm,UT,xR=M(()=>{"use strict";Qv();a2();Ht();jm();hse();zT();t0="PATTERN",Jm="defaultMode",VT="modes",wR=typeof new RegExp("(?:)").sticky=="boolean";o(pse,"analyzeTokenTypes");o(mse,"validatePatterns");o($Be,"validateRegExpPattern");o(VBe,"findMissingPatterns");o(UBe,"findInvalidPatterns");HBe=/[^\\][$]/;o(WBe,"findEndOfInputAnchor");o(YBe,"findEmptyMatchRegExps");qBe=/[^\\[][\^]|^\^/;o(XBe,"findStartOfInputAnchor");o(jBe,"findUnsupportedFlags");o(KBe,"findDuplicatePatterns");o(QBe,"findInvalidGroupType");o(ZBe,"findModesThatDoNotExist");o(JBe,"findUnreachablePatterns");o(eFe,"testTokenType");o(tFe,"noMetaChar");o(fse,"addStartOfInput");o(dse,"addStickyFlag");o(gse,"performRuntimeChecks");o(yse,"performWarningRuntimeChecks");o(vse,"cloneEmptyGroups");o(xse,"isCustomPattern");o(rFe,"isShortPattern");bse={test:o(function(t){let e=t.length;for(let r=this.lastIndex;r{r.isParent=r.categoryMatches.length>0})}function aFe(t){let e=rn(t),r=t,n=!0;for(;n;){r=Tc(Wr(Je(r,a=>a.CATEGORIES)));let i=Xh(r,e);e=e.concat(i),cr(i)?n=!1:r=i}return e}function sFe(t){Ce(t,e=>{TR(e)||(Sse[kse]=e,e.tokenTypeIdx=kse++),Ese(e)&&!Mt(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Ese(e)||(e.CATEGORIES=[]),cFe(e)||(e.categoryMatches=[]),uFe(e)||(e.categoryMatchesMap={})})}function oFe(t){Ce(t,e=>{e.categoryMatches=[],Ce(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push(Sse[n].tokenTypeIdx)})})}function lFe(t){Ce(t,e=>{Cse([],e)})}function Cse(t,e){Ce(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),Ce(e.CATEGORIES,r=>{let n=t.concat(e);Hn(n,r)||Cse(n,r)})}function TR(t){return It(t,"tokenTypeIdx")}function Ese(t){return It(t,"CATEGORIES")}function cFe(t){return It(t,"categoryMatches")}function uFe(t){return It(t,"categoryMatchesMap")}function Ase(t){return It(t,"tokenTypeIdx")}var kse,Sse,r0=M(()=>{"use strict";Ht();o(Ou,"tokenStructuredMatcher");o(eg,"tokenStructuredMatcherNoCategories");kse=1,Sse={};o(Pu,"augmentTokenTypes");o(aFe,"expandCategories");o(sFe,"assignTokenDefaultProps");o(oFe,"assignCategoriesTokensProp");o(lFe,"assignCategoriesMapProp");o(Cse,"singleAssignCategoriesToksMap");o(TR,"hasShortKeyProperty");o(Ese,"hasCategoriesProperty");o(cFe,"hasExtendingTokensTypesProperty");o(uFe,"hasExtendingTokensTypesMapProperty");o(Ase,"isTokenType")});var kR,ER=M(()=>{"use strict";kR={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,i){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}}});var Wn,s2,oi,a2=M(()=>{"use strict";xR();Ht();jm();r0();ER();zT();(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(Wn||(Wn={}));s2={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` +`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:kR,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(s2);oi=class{static{o(this,"Lexer")}constructor(e,r=s2){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=(i,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let s=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${i}>`);let{time:l,value:u}=r2(a),h=l>10?console.warn:console.log;return this.traceInitIndent time: ${l}ms`),this.traceInitIndent--,u}else return a()},typeof r=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object. +a boolean 2nd argument is no longer supported`);this.config=ha({},s2,r);let n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let i,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===s2.lineTerminatorsPattern)this.config.lineTerminatorsPattern=bse;else if(this.config.lineTerminatorCharacters===s2.lineTerminatorCharacters)throw Error(`Error: Missing property on the Lexer config. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.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),Mt(e)?i={modes:{defaultMode:rn(e)},defaultMode:Jm}:(a=!1,i=rn(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(gse(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(yse(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},Ce(i.modes,(l,u)=>{i.modes[u]=jh(l,h=>dr(h))});let s=zr(i.modes);if(Ce(i.modes,(l,u)=>{this.TRACE_INIT(`Mode: <${u}> processing`,()=>{if(this.modes.push(u),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(mse(l,s))}),cr(this.lexerDefinitionErrors)){Pu(l);let h;this.TRACE_INIT("analyzeTokenTypes",()=>{h=pse(l,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[u]=h.patternIdxToConfig,this.charCodeToPatternIdxToConfig[u]=h.charCodeToPatternIdxToConfig,this.emptyGroups=ha({},this.emptyGroups,h.emptyGroups),this.hasCustom=h.hasCustom||this.hasCustom,this.canModeBeOptimized[u]=h.canBeOptimized}})}),this.defaultMode=i.defaultMode,!cr(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let u=Je(this.lexerDefinitionErrors,h=>h.message).join(`----------------------- +`);throw new Error(`Errors detected in definition of Lexer: +`+u)}Ce(this.lexerDefinitionWarning,l=>{t2(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(wR?(this.chopInput=ta,this.match=this.matchWithTest):(this.updateLastIndex=Jn,this.match=this.matchWithExec),a&&(this.handleModes=Jn),this.trackStartLines===!1&&(this.computeNewColumn=ta),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=Jn),/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))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let l=qr(this.canModeBeOptimized,(u,h,f)=>(h===!1&&u.push(f),u),[]);if(r.ensureOptimizations&&!cr(l))throw Error(`Lexer Modes: < ${l.join(", ")} > cannot be optimized. + Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode. + Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{ose()}),this.TRACE_INIT("toFastProperties",()=>{n2(this)})})}tokenize(e,r=this.defaultMode){if(!cr(this.lexerDefinitionErrors)){let i=Je(this.lexerDefinitionErrors,a=>a.message).join(`----------------------- +`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: +`+i)}return this.tokenizeInternal(e,r)}tokenizeInternal(e,r){let n,i,a,s,l,u,h,f,d,p,m,g,y,v,x,b,w=e,_=w.length,T=0,E=0,L=this.hasCustom?0:Math.floor(e.length/10),C=new Array(L),A=[],I=this.trackStartLines?1:void 0,D=this.trackStartLines?1:void 0,k=vse(this.emptyGroups),R=this.trackStartLines,S=this.config.lineTerminatorsPattern,O=0,N=[],P=[],F=[],B=[];Object.freeze(B);let $;function z(){return N}o(z,"getPossiblePatternsSlow");function W(ee){let J=Dc(ee),H=P[J];return H===void 0?B:H}o(W,"getPossiblePatternsOptimized");let j=o(ee=>{if(F.length===1&&ee.tokenType.PUSH_MODE===void 0){let J=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(ee);A.push({offset:ee.startOffset,line:ee.startLine,column:ee.startColumn,length:ee.image.length,message:J})}else{F.pop();let J=fa(F);N=this.patternIdxToConfig[J],P=this.charCodeToPatternIdxToConfig[J],O=N.length;let H=this.canModeBeOptimized[J]&&this.config.safeMode===!1;P&&H?$=W:$=z}},"pop_mode");function K(ee){F.push(ee),P=this.charCodeToPatternIdxToConfig[ee],N=this.patternIdxToConfig[ee],O=N.length,O=N.length;let J=this.canModeBeOptimized[ee]&&this.config.safeMode===!1;P&&J?$=W:$=z}o(K,"push_mode"),K.call(this,r);let ie,Q=this.config.recoveryEnabled;for(;T<_;){u=null;let ee=w.charCodeAt(T),J=$(ee),H=J.length;for(n=0;nu.length){u=s,h=f,ie=ue;break}}}break}}if(u!==null){if(d=u.length,p=ie.group,p!==void 0&&(m=ie.tokenTypeIdx,g=this.createTokenInstance(u,T,m,ie.tokenType,I,D,d),this.handlePayload(g,h),p===!1?E=this.addToken(C,E,g):k[p].push(g)),e=this.chopInput(e,d),T=T+d,D=this.computeNewColumn(D,d),R===!0&&ie.canLineTerminator===!0){let q=0,Z,ae;S.lastIndex=0;do Z=S.test(u),Z===!0&&(ae=S.lastIndex-1,q++);while(Z===!0);q!==0&&(I=I+q,D=d-ae,this.updateTokenEndLineColumnLocation(g,p,ae,q,I,D,d))}this.handleModes(ie,j,K,g)}else{let q=T,Z=I,ae=D,ue=Q===!1;for(;ue===!1&&T<_;)for(e=this.chopInput(e,1),T++,i=0;i{"use strict";Ht();a2();r0();o(Bu,"tokenLabel");o(SR,"hasTokenLabel");hFe="parent",_se="categories",Lse="label",Dse="group",Nse="push_mode",Rse="pop_mode",Mse="longer_alt",Ise="line_breaks",Ose="start_chars_hint";o(HT,"createToken");o(fFe,"createTokenInternal");oo=HT({name:"EOF",pattern:oi.NA});Pu([oo]);o(n0,"createTokenInstance");o(o2,"tokenMatcher")});var Fu,Pse,Bl,tg=M(()=>{"use strict";i0();Ht();ns();Fu={buildMismatchTokenMessage({expected:t,actual:e,previous:r,ruleName:n}){return`Expecting ${SR(t)?`--> ${Bu(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",l=` +but found: '`+ra(e).image+"'";if(n)return a+n+l;{let u=qr(t,(p,m)=>p.concat(m),[]),h=Je(u,p=>`[${Je(p,m=>Bu(m)).join(", ")}]`),d=`one of these possible Token sequences: +${Je(h,(p,m)=>` ${m+1}. ${p}`).join(` +`)}`;return a+d+l}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:r,ruleName:n}){let i="Expecting: ",s=` +but found: '`+ra(e).image+"'";if(r)return i+r+s;{let u=`expecting at least one iteration which starts with one of these possible Token sequences:: + <${Je(t,h=>`[${Je(h,f=>Bu(f)).join(",")}]`).join(" ,")}>`;return i+u+s}}};Object.freeze(Fu);Pse={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- +inside top level rule: ->`+t.name+"<-"}},Bl={buildDuplicateFoundError(t,e){function r(f){return f instanceof kr?f.terminalType.name:f instanceof nn?f.nonTerminalName:""}o(r,"getExtraProductionArgument");let n=t.name,i=ra(e),a=i.idx,s=Ms(i),l=r(i),u=a>0,h=`->${s}${u?a:""}<- ${l?`with argument: ->${l}<-`:""} + appears more than once (${e.length} times) in the top level rule: ->${n}<-. + For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES + `;return h=h.replace(/[ \t]+/g," "),h=h.replace(/\s\s+/g,` +`),h},buildNamespaceConflictError(t){return`Namespace conflict found in grammar. +The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>. +To resolve this make sure each Terminal and Non-Terminal names are unique +This is easy to accomplish by using the convention that Terminal names start with an uppercase letter +and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){let e=Je(t.prefixPath,i=>Bu(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix +in inside <${t.topLevelRule.name}> Rule, +<${e}> may appears as a prefix path in all these alternatives. +See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX +For Further details.`},buildAlternationAmbiguityError(t){let e=Je(t.prefixPath,i=>Bu(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in inside <${t.topLevelRule.name}> Rule, +<${e}> may appears as a prefix path in all these alternatives. +`;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES +For Further details.`,n},buildEmptyRepetitionError(t){let e=Ms(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens. +This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in inside <${t.topLevelRule.name}> Rule. +Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives: + inside <${t.topLevelRule.name}> Rule. + has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){let e=t.topLevelRule.name,r=Je(t.leftRecursionPath,a=>a.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar. +rule: <${e}> can be invoked from itself (directly or indirectly) +without consuming any Tokens. The grammar path that causes this is: + ${n} + To fix this refactor your grammar to remove the left recursion. +see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof ts?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}}});function Bse(t,e){let r=new CR(t,e);return r.resolveRefs(),r.errors}var CR,Fse=M(()=>{"use strict";Is();Ht();ns();o(Bse,"resolveGrammar");CR=class extends rs{static{o(this,"GastRefResolverVisitor")}constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){Ce(br(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:zi.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}});function XT(t,e,r=[]){r=rn(r);let n=[],i=0;function a(l){return l.concat(mi(t,i+1))}o(a,"remainingPathWith");function s(l){let u=XT(a(l),e,r);return n.concat(u)}for(o(s,"getAlternativesForProd");r.length{cr(u.definition)===!1&&(n=s(u.definition))}),n;if(l instanceof kr)r.push(l.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:mi(t,i)}),n}function jT(t,e,r,n){let i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE",l=!1,u=e.length,h=u-n-1,f=[],d=[];for(d.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!cr(d);){let p=d.pop();if(p===s){l&&fa(d).idx<=h&&d.pop();continue}let m=p.def,g=p.idx,y=p.ruleStack,v=p.occurrenceStack;if(cr(m))continue;let x=m[0];if(x===i){let b={idx:g,def:mi(m),ruleStack:Lu(y),occurrenceStack:Lu(v)};d.push(b)}else if(x instanceof kr)if(g=0;b--){let w=x.definition[b],_={idx:g,def:w.definition.concat(mi(m)),ruleStack:y,occurrenceStack:v};d.push(_),d.push(s)}else if(x instanceof Cn)d.push({idx:g,def:x.definition.concat(mi(m)),ruleStack:y,occurrenceStack:v});else if(x instanceof ts)d.push(dFe(x,g,y,v));else throw Error("non exhaustive match")}return f}function dFe(t,e,r,n){let i=rn(r);i.push(t.name);let a=rn(n);return a.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:a}}var AR,WT,rg,YT,l2,qT,c2,u2=M(()=>{"use strict";Ht();dR();PT();ns();AR=class extends Iu{static{o(this,"AbstractNextPossibleTokensWalker")}constructor(e,r){super(),this.topProd=e,this.path=r,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=rn(this.path.ruleStack).reverse(),this.occurrenceStack=rn(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){cr(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},WT=class extends AR{static{o(this,"NextAfterTokenWalker")}constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),a=new Cn({definition:i});this.possibleTokTypes=e0(a),this.found=!0}}},rg=class extends Iu{static{o(this,"AbstractNextTerminalAfterProductionWalker")}constructor(e,r){super(),this.topRule=e,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},YT=class extends rg{static{o(this,"NextTerminalAfterManyWalker")}walkMany(e,r,n){if(e.idx===this.occurrence){let i=ra(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof kr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}},l2=class extends rg{static{o(this,"NextTerminalAfterManySepWalker")}walkManySep(e,r,n){if(e.idx===this.occurrence){let i=ra(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof kr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}},qT=class extends rg{static{o(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){let i=ra(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof kr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}},c2=class extends rg{static{o(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){let i=ra(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof kr&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}};o(XT,"possiblePathsFrom");o(jT,"nextPossibleTokensAfter");o(dFe,"expandTopLevelRule")});function h2(t){if(t instanceof an||t==="Option")return Yn.OPTION;if(t instanceof Lr||t==="Repetition")return Yn.REPETITION;if(t instanceof An||t==="RepetitionMandatory")return Yn.REPETITION_MANDATORY;if(t instanceof _n||t==="RepetitionMandatoryWithSeparator")return Yn.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof vn||t==="RepetitionWithSeparator")return Yn.REPETITION_WITH_SEPARATOR;if(t instanceof xn||t==="Alternation")return Yn.ALTERNATION;throw Error("non exhaustive match")}function QT(t){let{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,a=h2(n);return a===Yn.ALTERNATION?ng(e,r,i):ig(e,r,a,i)}function Gse(t,e,r,n,i,a){let s=ng(t,e,r),l=Yse(s)?eg:Ou;return a(s,n,l,i)}function $se(t,e,r,n,i,a){let s=ig(t,e,i,r),l=Yse(s)?eg:Ou;return a(s[0],l,n)}function Vse(t,e,r,n){let i=t.length,a=Ra(t,s=>Ra(s,l=>l.length===1));if(e)return function(s){let l=Je(s,u=>u.GATE);for(let u=0;uWr(u)),l=qr(s,(u,h,f)=>(Ce(h,d=>{It(u,d.tokenTypeIdx)||(u[d.tokenTypeIdx]=f),Ce(d.categoryMatches,p=>{It(u,p)||(u[p]=f)})}),u),{});return function(){let u=this.LA(1);return l[u.tokenTypeIdx]}}else return function(){for(let s=0;sa.length===1),i=t.length;if(n&&!r){let a=Wr(t);if(a.length===1&&cr(a[0].categoryMatches)){let l=a[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===l}}else{let s=qr(a,(l,u,h)=>(l[u.tokenTypeIdx]=!0,Ce(u.categoryMatches,f=>{l[f]=!0}),l),[]);return function(){let l=this.LA(1);return s[l.tokenTypeIdx]===!0}}}else return function(){e:for(let a=0;aXT([s],1)),n=zse(r.length),i=Je(r,s=>{let l={};return Ce(s,u=>{let h=_R(u.partialPath);Ce(h,f=>{l[f]=!0})}),l}),a=r;for(let s=1;s<=e;s++){let l=a;a=zse(l.length);for(let u=0;u{let x=_R(v.partialPath);Ce(x,b=>{i[u][b]=!0})})}}}}return n}function ng(t,e,r,n){let i=new KT(t,Yn.ALTERNATION,n);return e.accept(i),Hse(i.result,r)}function ig(t,e,r,n){let i=new KT(t,r);e.accept(i);let a=i.result,l=new LR(e,t,r).startWalking(),u=new Cn({definition:a}),h=new Cn({definition:l});return Hse([u,h],n)}function ZT(t,e){e:for(let r=0;r{let i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function Yse(t){return Ra(t,e=>Ra(e,r=>Ra(r,n=>cr(n.categoryMatches))))}var Yn,LR,KT,ag=M(()=>{"use strict";Ht();u2();PT();r0();ns();(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(Yn||(Yn={}));o(h2,"getProdType");o(QT,"getLookaheadPaths");o(Gse,"buildLookaheadFuncForOr");o($se,"buildLookaheadFuncForOptionalProd");o(Vse,"buildAlternativesLookAheadFunc");o(Use,"buildSingleAlternativeLookaheadFunction");LR=class extends Iu{static{o(this,"RestDefinitionFinderWalker")}constructor(e,r,n){super(),this.topProd=e,this.targetOccurrence=r,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,r,n,i){return e.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(i),!0):!1}walkOption(e,r,n){this.checkIsTarget(e,Yn.OPTION,r,n)||super.walkOption(e,r,n)}walkAtLeastOne(e,r,n){this.checkIsTarget(e,Yn.REPETITION_MANDATORY,r,n)||super.walkOption(e,r,n)}walkAtLeastOneSep(e,r,n){this.checkIsTarget(e,Yn.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}walkMany(e,r,n){this.checkIsTarget(e,Yn.REPETITION,r,n)||super.walkOption(e,r,n)}walkManySep(e,r,n){this.checkIsTarget(e,Yn.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}},KT=class extends rs{static{o(this,"InsideDefinitionFinderVisitor")}constructor(e,r,n){super(),this.targetOccurrence=e,this.targetProdType=r,this.targetRef=n,this.result=[]}checkIsTarget(e,r){e.idx===this.targetOccurrence&&this.targetProdType===r&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,Yn.OPTION)}visitRepetition(e){this.checkIsTarget(e,Yn.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,Yn.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,Yn.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,Yn.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,Yn.ALTERNATION)}};o(zse,"initializeArrayOfArrays");o(_R,"pathToHashKeys");o(pFe,"isUniquePrefixHash");o(Hse,"lookAheadSequenceFromAlternatives");o(ng,"getLookaheadPathsForOr");o(ig,"getLookaheadPathsForOptionalProd");o(ZT,"containsPath");o(Wse,"isStrictPrefixOfPath");o(Yse,"areTokenCategoriesNotUsed")});function qse(t){let e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return Je(e,r=>Object.assign({type:zi.CUSTOM_LOOKAHEAD_VALIDATION},r))}function Xse(t,e,r,n){let i=da(t,u=>mFe(u,r)),a=wFe(t,e,r),s=da(t,u=>vFe(u,r)),l=da(t,u=>yFe(u,t,n,r));return i.concat(a,s,l)}function mFe(t,e){let r=new DR;t.accept(r);let n=r.allProductions,i=UL(n,gFe),a=Ds(i,l=>l.length>1);return Je(br(a),l=>{let u=ra(l),h=e.buildDuplicateFoundError(t,l),f=Ms(u),d={message:h,type:zi.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:f,occurrence:u.idx},p=jse(u);return p&&(d.parameter=p),d})}function gFe(t){return`${Ms(t)}_#_${t.idx}_#_${jse(t)}`}function jse(t){return t instanceof kr?t.terminalType.name:t instanceof nn?t.nonTerminalName:""}function yFe(t,e,r,n){let i=[];if(qr(e,(s,l)=>l.name===t.name?s+1:s,0)>1){let s=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});i.push({message:s,type:zi.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function Kse(t,e,r){let n=[],i;return Hn(e,t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:zi.INVALID_RULE_OVERRIDE,ruleName:t})),n}function RR(t,e,r,n=[]){let i=[],a=JT(e.definition);if(cr(a))return[];{let s=t.name;Hn(a,t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:zi.LEFT_RECURSION,ruleName:s});let u=Xh(a,n.concat([t])),h=da(u,f=>{let d=rn(n);return d.push(f),RR(t,f,r,d)});return i.concat(h)}}function JT(t){let e=[];if(cr(t))return e;let r=ra(t);if(r instanceof nn)e.push(r.referencedRule);else if(r instanceof Cn||r instanceof an||r instanceof An||r instanceof _n||r instanceof vn||r instanceof Lr)e=e.concat(JT(r.definition));else if(r instanceof xn)e=Wr(Je(r.definition,a=>JT(a.definition)));else if(!(r instanceof kr))throw Error("non exhaustive match");let n=Jd(r),i=t.length>1;if(n&&i){let a=mi(t);return e.concat(JT(a))}else return e}function Qse(t,e){let r=new f2;t.accept(r);let n=r.alternations;return da(n,a=>{let s=Lu(a.definition);return da(s,(l,u)=>{let h=jT([l],[],Ou,1);return cr(h)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:a,emptyChoiceIdx:u}),type:zi.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:a.idx,alternative:u+1}]:[]})})}function Zse(t,e,r){let n=new f2;t.accept(n);let i=n.alternations;return i=jh(i,s=>s.ignoreAmbiguities===!0),da(i,s=>{let l=s.idx,u=s.maxLookahead||e,h=ng(l,t,u,s),f=xFe(h,s,t,r),d=bFe(h,s,t,r);return f.concat(d)})}function vFe(t,e){let r=new f2;t.accept(r);let n=r.alternations;return da(n,a=>a.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:a}),type:zi.TOO_MANY_ALTS,ruleName:t.name,occurrence:a.idx}]:[])}function Jse(t,e,r){let n=[];return Ce(t,i=>{let a=new NR;i.accept(a);let s=a.allProductions;Ce(s,l=>{let u=h2(l),h=l.maxLookahead||e,f=l.idx,p=ig(f,i,u,h)[0];if(cr(Wr(p))){let m=r.buildEmptyRepetitionError({topLevelRule:i,repetition:l});n.push({message:m,type:zi.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function xFe(t,e,r,n){let i=[],a=qr(t,(l,u,h)=>(e.definition[h].ignoreAmbiguities===!0||Ce(u,f=>{let d=[h];Ce(t,(p,m)=>{h!==m&&ZT(p,f)&&e.definition[m].ignoreAmbiguities!==!0&&d.push(m)}),d.length>1&&!ZT(i,f)&&(i.push(f),l.push({alts:d,path:f}))}),l),[]);return Je(a,l=>{let u=Je(l.alts,f=>f+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:u,prefixPath:l.path}),type:zi.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:l.alts}})}function bFe(t,e,r,n){let i=qr(t,(s,l,u)=>{let h=Je(l,f=>({idx:u,path:f}));return s.concat(h)},[]);return Tc(da(i,s=>{if(e.definition[s.idx].ignoreAmbiguities===!0)return[];let u=s.idx,h=s.path,f=Yr(i,p=>e.definition[p.idx].ignoreAmbiguities!==!0&&p.idx{let m=[p.idx+1,u+1],g=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:m,prefixPath:p.path}),type:zi.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:g,alternatives:m}})}))}function wFe(t,e,r){let n=[],i=Je(e,a=>a.name);return Ce(t,a=>{let s=a.name;if(Hn(i,s)){let l=r.buildNamespaceConflictError(a);n.push({message:l,type:zi.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:s})}}),n}var DR,f2,NR,d2=M(()=>{"use strict";Ht();Is();ns();ag();u2();r0();o(qse,"validateLookahead");o(Xse,"validateGrammar");o(mFe,"validateDuplicateProductions");o(gFe,"identifyProductionForDuplicates");o(jse,"getExtraProductionArgument");DR=class extends rs{static{o(this,"OccurrenceValidationCollector")}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)}};o(yFe,"validateRuleDoesNotAlreadyExist");o(Kse,"validateRuleIsOverridden");o(RR,"validateNoLeftRecursion");o(JT,"getFirstNoneTerminal");f2=class extends rs{static{o(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};o(Qse,"validateEmptyOrAlternative");o(Zse,"validateAmbiguousAlternationAlternatives");NR=class extends rs{static{o(this,"RepetitionCollector")}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)}};o(vFe,"validateTooManyAlts");o(Jse,"validateSomeNonEmptyLookaheadPath");o(xFe,"checkAlternativesAmbiguities");o(bFe,"checkPrefixAlternativesAmbiguities");o(wFe,"checkTerminalAndNoneTerminalsNameSpace")});function eoe(t){let e=qh(t,{errMsgProvider:Pse}),r={};return Ce(t.rules,n=>{r[n.name]=n}),Bse(r,e.errMsgProvider)}function toe(t){return t=qh(t,{errMsgProvider:Bl}),Xse(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}var roe=M(()=>{"use strict";Ht();Fse();d2();tg();o(eoe,"resolveGrammar");o(toe,"validateGrammar")});function rf(t){return Hn(ooe,t.name)}var noe,ioe,aoe,soe,ooe,sg,a0,p2,m2,g2,og=M(()=>{"use strict";Ht();noe="MismatchedTokenException",ioe="NoViableAltException",aoe="EarlyExitException",soe="NotAllInputParsedException",ooe=[noe,ioe,aoe,soe];Object.freeze(ooe);o(rf,"isRecognitionException");sg=class extends Error{static{o(this,"RecognitionException")}constructor(e,r){super(e),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},a0=class extends sg{static{o(this,"MismatchedTokenException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=noe}},p2=class extends sg{static{o(this,"NoViableAltException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=ioe}},m2=class extends sg{static{o(this,"NotAllInputParsedException")}constructor(e,r){super(e,r),this.name=soe}},g2=class extends sg{static{o(this,"EarlyExitException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=aoe}}});function TFe(t,e,r,n,i,a,s){let l=this.getKeyForAutomaticLookahead(n,i),u=this.firstAfterRepMap[l];if(u===void 0){let p=this.getCurrRuleFullName(),m=this.getGAstProductions()[p];u=new a(m,i).startWalking(),this.firstAfterRepMap[l]=u}let h=u.token,f=u.occurrence,d=u.isEndOfRule;this.RULE_STACK.length===1&&d&&h===void 0&&(h=oo,f=1),!(h===void 0||f===void 0)&&this.shouldInRepetitionRecoveryBeTried(h,f,s)&&this.tryInRepetitionRecovery(t,e,r,h)}var MR,OR,IR,ek,PR=M(()=>{"use strict";i0();Ht();og();pR();Is();MR={},OR="InRuleRecoveryException",IR=class extends Error{static{o(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=OR}},ek=class{static{o(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=It(e,"recoveryEnabled")?e.recoveryEnabled:is.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=TFe)}getTokenToInsert(e){let r=n0(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,i){let a=this.findReSyncTokenType(),s=this.exportLexerState(),l=[],u=!1,h=this.LA(1),f=this.LA(1),d=o(()=>{let p=this.LA(0),m=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:h,previous:p,ruleName:this.getCurrRuleFullName()}),g=new a0(m,h,this.LA(0));g.resyncedTokens=Lu(l),this.SAVE_ERROR(g)},"generateErrorMessage");for(;!u;)if(this.tokenMatcher(f,i)){d();return}else if(n.call(this)){d(),e.apply(this,r);return}else this.tokenMatcher(f,a)?u=!0:(f=this.SKIP_TOKEN(),this.addToResyncTokens(f,l));this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getFollowsForInRuleRecovery(e,r){let n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new IR("sad sad panda")}canPerformInRuleRecovery(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,r){if(!this.canTokenTypeBeInsertedInRecovery(e)||cr(r))return!1;let n=this.LA(1);return Za(r,a=>this.tokenMatcher(n,a))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return Hn(n,e)}findReSyncTokenType(){let e=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=Za(e,a=>o2(r,a));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return MR;let e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return Je(e,(n,i)=>i===0?MR:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){let e=Je(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return Wr(e)}getFollowSetFromFollowKey(e){if(e===MR)return[oo];let r=e.ruleName+e.idxInCallingRule+BT+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,oo)||r.push(e),r}reSyncTo(e){let r=[],n=this.LA(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return Lu(r)}attemptInRepetitionRecovery(e,r,n,i,a,s,l){}getCurrentGrammarPath(e,r){let n=this.getHumanReadableRuleStack(),i=rn(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){return Je(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}};o(TFe,"attemptInRepetitionRecovery")});function tk(t,e,r){return r|e|t}var rk=M(()=>{"use strict";o(tk,"getKeyForAutomaticLookahead")});var zu,BR=M(()=>{"use strict";Ht();tg();Is();d2();ag();zu=class{static{o(this,"LLkLookaheadStrategy")}constructor(e){var r;this.maxLookahead=(r=e?.maxLookahead)!==null&&r!==void 0?r:is.maxLookahead}validate(e){let r=this.validateNoLeftRecursion(e.rules);if(cr(r)){let n=this.validateEmptyOrAlternatives(e.rules),i=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),a=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...r,...n,...i,...a]}return r}validateNoLeftRecursion(e){return da(e,r=>RR(r,r,Bl))}validateEmptyOrAlternatives(e){return da(e,r=>Qse(r,Bl))}validateAmbiguousAlternationAlternatives(e,r){return da(e,n=>Zse(n,r,Bl))}validateSomeNonEmptyLookaheadPath(e,r){return Jse(e,r,Bl)}buildLookaheadForAlternation(e){return Gse(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,Vse)}buildLookaheadForOptional(e){return $se(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,h2(e.prodType),Use)}}});function kFe(t){nk.reset(),t.accept(nk);let e=nk.dslMethods;return nk.reset(),e}var ik,FR,nk,loe=M(()=>{"use strict";Ht();Is();rk();ns();BR();ik=class{static{o(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=It(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:is.dynamicTokensEnabled,this.maxLookahead=It(e,"maxLookahead")?e.maxLookahead:is.maxLookahead,this.lookaheadStrategy=It(e,"lookaheadStrategy")?e.lookaheadStrategy:new zu({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){Ce(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:a,repetitionMandatory:s,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:u}=kFe(r);Ce(n,h=>{let f=h.idx===0?"":h.idx;this.TRACE_INIT(`${Ms(h)}${f}`,()=>{let d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:h.idx,rule:r,maxLookahead:h.maxLookahead||this.maxLookahead,hasPredicates:h.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=tk(this.fullRuleNameToShort[r.name],256,h.idx);this.setLaFuncCache(p,d)})}),Ce(i,h=>{this.computeLookaheadFunc(r,h.idx,768,"Repetition",h.maxLookahead,Ms(h))}),Ce(a,h=>{this.computeLookaheadFunc(r,h.idx,512,"Option",h.maxLookahead,Ms(h))}),Ce(s,h=>{this.computeLookaheadFunc(r,h.idx,1024,"RepetitionMandatory",h.maxLookahead,Ms(h))}),Ce(l,h=>{this.computeLookaheadFunc(r,h.idx,1536,"RepetitionMandatoryWithSeparator",h.maxLookahead,Ms(h))}),Ce(u,h=>{this.computeLookaheadFunc(r,h.idx,1280,"RepetitionWithSeparator",h.maxLookahead,Ms(h))})})})}computeLookaheadFunc(e,r,n,i,a,s){this.TRACE_INIT(`${s}${r===0?"":r}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:a||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),u=tk(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(u,l)})}getKeyForAutomaticLookahead(e,r){let n=this.getLastExplicitRuleShortName();return tk(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},FR=class extends rs{static{o(this,"DslMethodsCollectorVisitor")}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)}},nk=new FR;o(kFe,"collectMethods")});function $R(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset{"use strict";o($R,"setNodeLocationOnlyOffset");o(VR,"setNodeLocationFull");o(coe,"addTerminalToCst");o(uoe,"addNoneTerminalToCst")});function UR(t,e){Object.defineProperty(t,EFe,{enumerable:!1,configurable:!0,writable:!1,value:e})}var EFe,foe=M(()=>{"use strict";EFe="name";o(UR,"defineNameProp")});function SFe(t,e){let r=zr(t),n=r.length;for(let i=0;is.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>: + ${a.join(` + +`).replace(/\n/g,` + `)}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}function poe(t,e,r){let n=o(function(){},"derivedConstructor");UR(n,t+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return Ce(e,a=>{i[a]=SFe}),n.prototype=i,n.prototype.constructor=n,n}function CFe(t,e){return AFe(t,e)}function AFe(t,e){let r=Yr(e,i=>Ei(t[i])===!1),n=Je(r,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:HR.MISSING_METHOD,methodName:i}));return Tc(n)}var HR,moe=M(()=>{"use strict";Ht();foe();o(SFe,"defaultVisit");o(doe,"createBaseSemanticVisitorConstructor");o(poe,"createBaseVisitorConstructorWithDefaults");(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(HR||(HR={}));o(CFe,"validateVisitor");o(AFe,"validateMissingCstMethods")});var lk,goe=M(()=>{"use strict";hoe();Ht();moe();Is();lk=class{static{o(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=It(e,"nodeLocationTracking")?e.nodeLocationTracking:is.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=Jn,this.cstFinallyStateUpdate=Jn,this.cstPostTerminal=Jn,this.cstPostNonTerminal=Jn,this.cstPostRule=Jn;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=VR,this.setNodeLocationFromNode=VR,this.cstPostRule=Jn,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=Jn,this.setNodeLocationFromNode=Jn,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=$R,this.setNodeLocationFromNode=$R,this.cstPostRule=Jn,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=Jn,this.setNodeLocationFromNode=Jn,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=Jn,this.setNodeLocationFromNode=Jn,this.cstPostRule=Jn,this.setInitialNodeLocation=Jn;else throw Error(`Invalid config option: "${e.nodeLocationTracking}"`)}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){let r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];coe(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];uoe(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(dr(this.baseCstVisitorConstructor)){let e=doe(this.className,zr(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(dr(this.baseCstVisitorWithDefaultsConstructor)){let e=poe(this.className,zr(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){let e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}}});var ck,yoe=M(()=>{"use strict";Is();ck=class{static{o(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)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)):lg}LA(e){let r=this.currIdx+e;return r<0||this.tokVectorLength<=r?lg:this.tokVector[r]}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()}}});var uk,voe=M(()=>{"use strict";Ht();og();Is();tg();d2();ns();uk=class{static{o(this,"RecognizerApi")}ACTION(e){return e.call(this)}consume(e,r,n){return this.consumeInternal(r,e,n)}subrule(e,r,n){return this.subruleInternal(r,e,n)}option(e,r){return this.optionInternal(r,e)}or(e,r){return this.orInternal(r,e)}many(e,r){return this.manyInternal(e,r)}atLeastOne(e,r){return this.atLeastOneInternal(e,r)}CONSUME(e,r){return this.consumeInternal(e,0,r)}CONSUME1(e,r){return this.consumeInternal(e,1,r)}CONSUME2(e,r){return this.consumeInternal(e,2,r)}CONSUME3(e,r){return this.consumeInternal(e,3,r)}CONSUME4(e,r){return this.consumeInternal(e,4,r)}CONSUME5(e,r){return this.consumeInternal(e,5,r)}CONSUME6(e,r){return this.consumeInternal(e,6,r)}CONSUME7(e,r){return this.consumeInternal(e,7,r)}CONSUME8(e,r){return this.consumeInternal(e,8,r)}CONSUME9(e,r){return this.consumeInternal(e,9,r)}SUBRULE(e,r){return this.subruleInternal(e,0,r)}SUBRULE1(e,r){return this.subruleInternal(e,1,r)}SUBRULE2(e,r){return this.subruleInternal(e,2,r)}SUBRULE3(e,r){return this.subruleInternal(e,3,r)}SUBRULE4(e,r){return this.subruleInternal(e,4,r)}SUBRULE5(e,r){return this.subruleInternal(e,5,r)}SUBRULE6(e,r){return this.subruleInternal(e,6,r)}SUBRULE7(e,r){return this.subruleInternal(e,7,r)}SUBRULE8(e,r){return this.subruleInternal(e,8,r)}SUBRULE9(e,r){return this.subruleInternal(e,9,r)}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,r,n=cg){if(Hn(this.definedRulesNames,e)){let s={message:Bl.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:zi.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);let i=this.defineRule(e,r,n);return this[e]=i,i}OVERRIDE_RULE(e,r,n=cg){let i=Kse(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let a=this.defineRule(e,r,n);return this[e]=a,a}BACKTRACK(e,r){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return e.apply(this,r),!0}catch(i){if(rf(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return IT(br(this.gastProductionsCache))}}});var hk,xoe=M(()=>{"use strict";Ht();rk();og();ag();u2();Is();PR();i0();r0();hk=class{static{o(this,"RecognizerEngine")}initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=eg,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},It(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a property. + See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0 + For Further details.`);if(Mt(e)){if(cr(e))throw Error(`A Token Vocabulary cannot be empty. + Note that the first argument for the parser constructor + is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument. + See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0 + For Further details.`)}if(Mt(e))this.tokensMap=qr(e,(a,s)=>(a[s.name]=s,a),{});else if(It(e,"modes")&&Ra(Wr(br(e.modes)),Ase)){let a=Wr(br(e.modes)),s=Om(a);this.tokensMap=qr(s,(l,u)=>(l[u.name]=u,l),{})}else if(yn(e))this.tokensMap=rn(e);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=oo;let n=It(e,"modes")?Wr(br(e.modes)):br(e),i=Ra(n,a=>cr(a.categoryMatches));this.tokenMatcher=i?eg:Ou,Pu(br(this.tokensMap))}defineRule(e,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called' +Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let i=It(n,"resyncEnabled")?n.resyncEnabled:cg.resyncEnabled,a=It(n,"recoveryValueFunc")?n.recoveryValueFunc:cg.recoveryValueFunc,s=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[s]=e,this.fullRuleNameToShort[e]=s;let l;return this.outputCst===!0?l=o(function(...f){try{this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f);let d=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(d),d}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):l=o(function(...f){try{return this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f)}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(l,{ruleName:e,originalGrammarAction:r})}invokeRuleCatch(e,r,n){let i=this.RULE_STACK.length===1,a=r&&!this.isBackTracking()&&this.recoveryEnabled;if(rf(e)){let s=e;if(a){let l=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(l))if(s.resyncedTokens=this.reSyncTo(l),this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];return u.recoveredNode=!0,u}else return n(e);else{if(this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];u.recoveredNode=!0,s.partialCstResult=u}throw s}}else{if(i)return this.moveToTerminatedState(),n(e);throw s}}else throw e}optionInternal(e,r){let n=this.getKeyForAutomaticLookahead(512,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof e!="function"){a=e.DEF;let s=e.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=e;if(i.call(this)===!0)return a.call(this)}atLeastOneInternal(e,r){let n=this.getKeyForAutomaticLookahead(1024,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let s=r.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=r;if(i.call(this)===!0){let s=this.doSingleRepetition(a);for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a)}else throw this.raiseEarlyExitException(e,Yn.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,1024,e,qT)}atLeastOneSepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1536,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,c2],l,1536,e,c2)}else throw this.raiseEarlyExitException(e,Yn.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){let n=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let l=r.GATE;if(l!==void 0){let u=i;i=o(()=>l.call(this)&&u.call(this),"lookaheadFunction")}}else a=r;let s=!0;for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],i,768,e,YT,s)}manySepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1280,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,l2],l,1280,e,l2)}}repetitionSepSecondInternal(e,r,n,i,a){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,i,a],n,1536,e,a)}doSingleRepetition(e){let r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){let n=this.getKeyForAutomaticLookahead(256,r),i=Mt(e)?e:e.DEF,s=this.getLaFuncFromCache(n).call(this,i);if(s!==void 0)return i[s].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new m2(r,e))}}subruleInternal(e,r,n){let i;try{let a=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=e.apply(this,a),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),i}catch(a){throw this.subruleInternalError(a,n,e.ruleName)}}subruleInternalError(e,r,n){throw rf(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,r,n){let i;try{let a=this.LA(1);this.tokenMatcher(a,e)===!0?(this.consumeToken(),i=a):this.consumeInternalError(e,a,n)}catch(a){i=this.consumeInternalRecovery(e,r,a)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,i),i}consumeInternalError(e,r,n){let i,a=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:a,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new a0(i,r,a))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,i)}catch(a){throw a.name===OR?n:a}}else throw n}saveRecogState(){let e=this.errors,r=rn(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),oo)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}});var fk,boe=M(()=>{"use strict";og();Ht();ag();Is();fk=class{static{o(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=It(e,"errorMessageProvider")?e.errorMessageProvider:is.errorMessageProvider}SAVE_ERROR(e){if(rf(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:rn(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return rn(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,r,n){let i=this.getCurrRuleFullName(),a=this.getGAstProductions()[i],l=ig(e,a,r,this.maxLookahead)[0],u=[];for(let f=1;f<=this.maxLookahead;f++)u.push(this.LA(f));let h=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:l,actual:u,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new g2(h,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],a=ng(e,i,this.maxLookahead),s=[];for(let h=1;h<=this.maxLookahead;h++)s.push(this.LA(h));let l=this.LA(0),u=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:a,actual:s,previous:l,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new p2(u,this.LA(1),l))}}});var dk,woe=M(()=>{"use strict";u2();Ht();dk=class{static{o(this,"ContentAssist")}initContentAssist(){}computeContentAssist(e,r){let n=this.gastProductionsCache[e];if(dr(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return jT([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let r=ra(e.ruleStack),i=this.getGAstProductions()[r];return new WT(i,e).startWalking()}}});function v2(t,e,r,n=!1){mk(r);let i=fa(this.recordingProdStack),a=Ei(e)?e:e.DEF,s=new t({definition:[],idx:r});return n&&(s.separator=e.SEP),It(e,"MAX_LOOKAHEAD")&&(s.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),gk}function DFe(t,e){mk(e);let r=fa(this.recordingProdStack),n=Mt(t)===!1,i=n===!1?t:t.DEF,a=new xn({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});It(t,"MAX_LOOKAHEAD")&&(a.maxLookahead=t.MAX_LOOKAHEAD);let s=Rv(i,l=>Ei(l.GATE));return a.hasPredicates=s,r.definition.push(a),Ce(i,l=>{let u=new Cn({definition:[]});a.definition.push(u),It(l,"IGNORE_AMBIGUITIES")?u.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:It(l,"GATE")&&(u.ignoreAmbiguities=!0),this.recordingProdStack.push(u),l.ALT.call(this),this.recordingProdStack.pop()}),gk}function Eoe(t){return t===0?"":`${t}`}function mk(t){if(t<0||t>koe){let e=new Error(`Invalid DSL Method idx value: <${t}> + Idx value must be a none negative value smaller than ${koe+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}var gk,Toe,koe,Soe,Coe,LFe,pk,Aoe=M(()=>{"use strict";Ht();ns();a2();r0();i0();Is();rk();gk={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(gk);Toe=!0,koe=Math.pow(2,8)-1,Soe=HT({name:"RECORDING_PHASE_TOKEN",pattern:oi.NA});Pu([Soe]);Coe=n0(Soe,`This IToken indicates the Parser is in Recording Phase + See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(Coe);LFe={name:`This CSTNode indicates the Parser is in Recording Phase + See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},pk=class{static{o(this,"GastRecorder")}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++){let r=e>0?e:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,e,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,e,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},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",()=>{let e=this;for(let r=0;r<10;r++){let n=r>0?r:"";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,r){return()=>!0}LA_RECORD(e){return lg}topLevelRuleRecord(e,r){try{let n=new ts({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+` + This error was thrown during the "grammar recording phase" For more info see: + https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(e,r){return v2.call(this,an,e,r)}atLeastOneInternalRecord(e,r){v2.call(this,An,r,e)}atLeastOneSepFirstInternalRecord(e,r){v2.call(this,_n,r,e,Toe)}manyInternalRecord(e,r){v2.call(this,Lr,r,e)}manySepFirstInternalRecord(e,r){v2.call(this,vn,r,e,Toe)}orInternalRecord(e,r){return DFe.call(this,e,r)}subruleInternalRecord(e,r,n){if(mk(r),!e||It(e,"ruleName")===!1){let l=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let i=fa(this.recordingProdStack),a=e.ruleName,s=new nn({idx:r,nonTerminalName:a,label:n?.LABEL,referencedRule:void 0});return i.definition.push(s),this.outputCst?LFe:gk}consumeInternalRecord(e,r,n){if(mk(r),!TR(e)){let s=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw s.KNOWN_RECORDER_ERROR=!0,s}let i=fa(this.recordingProdStack),a=new kr({idx:r,terminalType:e,label:n?.LABEL});return i.definition.push(a),Coe}};o(v2,"recordProd");o(DFe,"recordOrProd");o(Eoe,"getIdxSuffix");o(mk,"assertMethodIdxIsValid")});var yk,_oe=M(()=>{"use strict";Ht();jm();Is();yk=class{static{o(this,"PerformanceTracer")}initPerformanceTracer(e){if(It(e,"traceInitPerf")){let r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=is.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${e}>`);let{time:i,value:a}=r2(r),s=i>10?console.warn:console.log;return this.traceInitIndent time: ${i}ms`),this.traceInitIndent--,a}else return r()}}});function Loe(t,e){e.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let a=Object.getOwnPropertyDescriptor(n,i);a&&(a.get||a.set)?Object.defineProperty(t.prototype,i,a):t.prototype[i]=r.prototype[i]})})}var Doe=M(()=>{"use strict";o(Loe,"applyMixins")});function vk(t=void 0){return function(){return t}}var lg,is,cg,zi,x2,b2,Is=M(()=>{"use strict";Ht();jm();sse();i0();tg();roe();PR();loe();goe();yoe();voe();xoe();boe();woe();Aoe();_oe();Doe();d2();lg=n0(oo,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(lg);is=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Fu,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),cg=Object.freeze({recoveryValueFunc:o(()=>{},"recoveryValueFunc"),resyncEnabled:!0});(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(zi||(zi={}));o(vk,"EMPTY_ALT");x2=class t{static{o(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{n2(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Ce(this.definedRulesNames,i=>{let s=this[i].originalGrammarAction,l;this.TRACE_INIT(`${i} Rule`,()=>{l=this.topLevelRuleRecord(i,s)}),this.gastProductionsCache[i]=l})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=eoe({rules:br(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(cr(n)&&this.skipValidations===!1){let i=toe({rules:br(this.gastProductionsCache),tokenTypes:br(this.tokensMap),errMsgProvider:Bl,grammarName:r}),a=qse({lookaheadStrategy:this.lookaheadStrategy,rules:br(this.gastProductionsCache),tokenTypes:br(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(i,a)}}),cr(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let i=ase(br(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,a;(a=(i=this.lookaheadStrategy).initialize)===null||a===void 0||a.call(i,{rules:br(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(br(this.gastProductionsCache))})),!t.DEFER_DEFINITION_ERRORS_HANDLING&&!cr(this.definitionErrors))throw e=Je(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected: + ${e.join(` +------------------------------- +`)}`)})}constructor(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(e,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),It(r,"ignoredIssues"))throw new Error(`The IParserConfig property has been deprecated. + Please use the flag on the relevant DSL method instead. + See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES + For further details.`);this.skipValidations=It(r,"skipValidations")?r.skipValidations:is.skipValidations}};x2.DEFER_DEFINITION_ERRORS_HANDLING=!1;Loe(x2,[ek,ik,lk,ck,hk,uk,fk,dk,pk,yk]);b2=class extends x2{static{o(this,"EmbeddedActionsParser")}constructor(e,r=is){let n=rn(r);n.outputCst=!1,super(e,n)}}});var Noe=M(()=>{"use strict";ns()});var Roe=M(()=>{"use strict"});var Moe=M(()=>{"use strict";Noe();Roe()});var Ioe=M(()=>{"use strict";uR()});var s0=M(()=>{"use strict";uR();Is();a2();i0();ag();BR();tg();og();ER();ns();ns();Moe();Ioe()});function o0(t,e,r){return`${t.name}_${e}_${r}`}function Foe(t){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};BFe(e,t);let r=t.length;for(let n=0;nzoe(t,e,s));return dg(t,e,n,r,...i)}function UFe(t,e,r){let n=na(t,e,r,{type:nf});af(t,n);let i=dg(t,e,n,r,l0(t,e,r));return HFe(t,e,r,i)}function l0(t,e,r){let n=Yr(Je(r.definition,i=>zoe(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:YFe(t,n)}function Goe(t,e,r,n,i){let a=n.left,s=n.right,l=na(t,e,r,{type:PFe});af(t,l);let u=na(t,e,r,{type:Boe});return a.loopback=l,u.loopback=l,t.decisionMap[o0(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=l,Ai(s,l),i===void 0?(Ai(l,a),Ai(l,u)):(Ai(l,u),Ai(l,i.left),Ai(i.right,a)),{left:a,right:u}}function $oe(t,e,r,n,i){let a=n.left,s=n.right,l=na(t,e,r,{type:OFe});af(t,l);let u=na(t,e,r,{type:Boe}),h=na(t,e,r,{type:IFe});return l.loopback=h,u.loopback=h,Ai(l,a),Ai(l,u),Ai(s,h),i!==void 0?(Ai(h,u),Ai(h,i.left),Ai(i.right,a)):Ai(h,l),t.decisionMap[o0(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=l,{left:l,right:u}}function HFe(t,e,r,n){let i=n.left,a=n.right;return Ai(i,a),t.decisionMap[o0(e,"Option",r.idx)]=i,n}function af(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function dg(t,e,r,n,...i){let a=na(t,e,n,{type:MFe,start:r});r.end=a;for(let l of i)l!==void 0?(Ai(r,l.left),Ai(l.right,a)):Ai(r,a);let s={left:r,right:a};return t.decisionMap[o0(e,WFe(n),n.idx)]=r,s}function WFe(t){if(t instanceof xn)return"Alternation";if(t instanceof an)return"Option";if(t instanceof Lr)return"Repetition";if(t instanceof vn)return"RepetitionWithSeparator";if(t instanceof An)return"RepetitionMandatory";if(t instanceof _n)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function YFe(t,e){let r=e.length;for(let a=0;a{"use strict";Rm();FL();s0();o(o0,"buildATNKey");nf=1,RFe=2,Ooe=4,Poe=5,fg=7,MFe=8,IFe=9,OFe=10,PFe=11,Boe=12,w2=class{static{o(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},ug=class extends w2{static{o(this,"AtomTransition")}constructor(e,r){super(e),this.tokenType=r}},T2=class extends w2{static{o(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},hg=class extends w2{static{o(this,"RuleTransition")}constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}};o(Foe,"createATN");o(BFe,"createRuleStartAndStopATNStates");o(zoe,"atom");o(FFe,"repetition");o(zFe,"repetitionSep");o(GFe,"repetitionMandatory");o($Fe,"repetitionMandatorySep");o(VFe,"alternation");o(UFe,"option");o(l0,"block");o(Goe,"plus");o($oe,"star");o(HFe,"optional");o(af,"defineDecisionState");o(dg,"makeAlts");o(WFe,"getProdType");o(YFe,"makeBlock");o(YR,"tokenRef");o(qFe,"ruleRef");o(XFe,"buildRuleHandle");o(Ai,"epsilon");o(na,"newState");o(qR,"addTransition");o(jFe,"removeState")});function XR(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}var k2,pg,Uoe=M(()=>{"use strict";Rm();k2={},pg=class{static{o(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let r=XR(e);r in this.map||(this.map[r]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return Je(this.configs,e=>e.alt)}get key(){let e="";for(let r in this.map)e+=r+":";return e}};o(XR,"getATNConfigKey")});function KFe(t,e){let r={};return n=>{let i=n.toString(),a=r[i];return a!==void 0||(a={atnStartState:t,decision:e,states:{}},r[i]=a),a}}function Woe(t,e=!0){let r=new Set;for(let n of t){let i=new Set;for(let a of n){if(a===void 0){if(e)break;return!1}let s=[a.tokenTypeIdx].concat(a.categoryMatches);for(let l of s)if(r.has(l)){if(!i.has(l))return!1}else r.add(l),i.add(l)}}return!0}function QFe(t){let e=t.decisionStates.length,r=Array(e);for(let n=0;nBu(i)).join(", "),r=t.production.idx===0?"":t.production.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${rze(t.production)}${r}> inside <${t.topLevelRule.name}> Rule, +<${e}> may appears as a prefix path in all these alternatives. +`;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES +For Further details.`,n}function rze(t){if(t instanceof nn)return"SUBRULE";if(t instanceof an)return"OPTION";if(t instanceof xn)return"OR";if(t instanceof An)return"AT_LEAST_ONE";if(t instanceof _n)return"AT_LEAST_ONE_SEP";if(t instanceof vn)return"MANY_SEP";if(t instanceof Lr)return"MANY";if(t instanceof kr)return"CONSUME";throw Error("non exhaustive match")}function nze(t,e,r){let n=da(e.configs.elements,a=>a.state.transitions),i=ene(n.filter(a=>a instanceof ug).map(a=>a.tokenType),a=>a.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}function ize(t,e){return t.edges[e.tokenTypeIdx]}function aze(t,e,r){let n=new pg,i=[];for(let s of t.elements){if(r.is(s.alt)===!1)continue;if(s.state.type===fg){i.push(s);continue}let l=s.state.transitions.length;for(let u=0;u0&&!uze(a))for(let s of i)a.add(s);return a}function sze(t,e){if(t instanceof ug&&o2(e,t.tokenType))return t.target}function oze(t,e){let r;for(let n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function qoe(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function Yoe(t,e,r,n){return n=Xoe(t,n),e.edges[r.tokenTypeIdx]=n,n}function Xoe(t,e){if(e===k2)return e;let r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}function lze(t){let e=new pg,r=t.transitions.length;for(let n=0;n0){let i=[...t.stack],s={state:i.pop(),alt:t.alt,stack:i};bk(s,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);let n=r.transitions.length;for(let i=0;i1)return!0;return!1}function mze(t){for(let e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}var xk,Hoe,E2,joe=M(()=>{"use strict";s0();Voe();Uoe();YL();GL();tne();Rm();gw();Ww();Kw();KL();o(KFe,"createDFACache");xk=class{static{o(this,"PredicateSet")}constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="",r=this.predicates.length;for(let n=0;nconsole.log(n)}initialize(e){this.atn=Foe(e.rules),this.dfas=QFe(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:a}=e,s=this.dfas,l=this.logging,u=o0(n,"Alternation",r),f=this.atn.decisionMap[u].decision,d=Je(QT({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),p=>Je(p,m=>m[0]));if(Woe(d,!1)&&!a){let p=qr(d,(m,g,y)=>(Ce(g,v=>{v&&(m[v.tokenTypeIdx]=y,Ce(v.categoryMatches,x=>{m[x]=y}))}),m),{});return i?function(m){var g;let y=this.LA(1),v=p[y.tokenTypeIdx];if(m!==void 0&&v!==void 0){let x=(g=m[v])===null||g===void 0?void 0:g.GATE;if(x!==void 0&&x.call(this)===!1)return}return v}:function(){let m=this.LA(1);return p[m.tokenTypeIdx]}}else return i?function(p){let m=new xk,g=p===void 0?0:p.length;for(let v=0;vJe(p,m=>m[0]));if(Woe(d)&&d[0][0]&&!a){let p=d[0],m=Wr(p);if(m.length===1&&cr(m[0].categoryMatches)){let y=m[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===y}}else{let g=qr(m,(y,v)=>(v!==void 0&&(y[v.tokenTypeIdx]=!0,Ce(v.categoryMatches,x=>{y[x]=!0})),y),{});return function(){let y=this.LA(1);return g[y.tokenTypeIdx]===!0}}}return function(){let p=jR.call(this,s,f,Hoe,l);return typeof p=="object"?!1:p===0}}};o(Woe,"isLL1Sequence");o(QFe,"initATNSimulator");o(jR,"adaptivePredict");o(ZFe,"performLookahead");o(JFe,"computeLookaheadTarget");o(eze,"reportLookaheadAmbiguity");o(tze,"buildAmbiguityError");o(rze,"getProductionDslName");o(nze,"buildAdaptivePredictError");o(ize,"getExistingTargetState");o(aze,"computeReachSet");o(sze,"getReachableTarget");o(oze,"getUniqueAlt");o(qoe,"newDFAState");o(Yoe,"addDFAEdge");o(Xoe,"addDFAState");o(lze,"computeStartState");o(bk,"closure");o(cze,"getEpsilonTarget");o(uze,"hasConfigInRuleStopState");o(hze,"allConfigsInRuleStopStates");o(fze,"hasConflictTerminatingPrediction");o(dze,"getConflictingAltSets");o(pze,"hasConflictingAltSet");o(mze,"hasStateAssociatedWithOneAlt")});var Koe=M(()=>{"use strict";joe()});var Qoe,KR,Zoe,wk,Xr,Dr,Tk,Joe,QR,ele,tle,rle,nle,ZR,ile,ale,sle,kk,mg,gg,JR,yg,ole,eM,tM,rM,nM,iM,lle,cle,aM,ule,sM,S2,hle,fle,dle,ple,mle,gle,yle,vle,Ek,xle,ble,wle,Tle,kle,Ele,Sle,Cle,Ale,_le,Lle,Sk,Dle,Nle,Rle,Mle,Ile,Ole,Ple,Ble,Fle,zle,Gle,$le,Vle,oM,lM,Ule,Hle,Wle,Yle,qle,Xle,jle,Kle,Qle,cM,Oe,uM=M(()=>{"use strict";(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(Qoe||(Qoe={}));(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(KR||(KR={}));(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(Zoe||(Zoe={}));(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(wk||(wk={}));(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=wk.MAX_VALUE),i===Number.MAX_VALUE&&(i=wk.MAX_VALUE),{line:n,character:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Oe.uinteger(i.line)&&Oe.uinteger(i.character)}o(r,"is"),t.is=r})(Xr||(Xr={}));(function(t){function e(n,i,a,s){if(Oe.uinteger(n)&&Oe.uinteger(i)&&Oe.uinteger(a)&&Oe.uinteger(s))return{start:Xr.create(n,i),end:Xr.create(a,s)};if(Xr.is(n)&&Xr.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${a}, ${s}]`)}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Xr.is(i.start)&&Xr.is(i.end)}o(r,"is"),t.is=r})(Dr||(Dr={}));(function(t){function e(n,i){return{uri:n,range:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Dr.is(i.range)&&(Oe.string(i.uri)||Oe.undefined(i.uri))}o(r,"is"),t.is=r})(Tk||(Tk={}));(function(t){function e(n,i,a,s){return{targetUri:n,targetRange:i,targetSelectionRange:a,originSelectionRange:s}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Dr.is(i.targetRange)&&Oe.string(i.targetUri)&&Dr.is(i.targetSelectionRange)&&(Dr.is(i.originSelectionRange)||Oe.undefined(i.originSelectionRange))}o(r,"is"),t.is=r})(Joe||(Joe={}));(function(t){function e(n,i,a,s){return{red:n,green:i,blue:a,alpha:s}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Oe.numberRange(i.red,0,1)&&Oe.numberRange(i.green,0,1)&&Oe.numberRange(i.blue,0,1)&&Oe.numberRange(i.alpha,0,1)}o(r,"is"),t.is=r})(QR||(QR={}));(function(t){function e(n,i){return{range:n,color:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Dr.is(i.range)&&QR.is(i.color)}o(r,"is"),t.is=r})(ele||(ele={}));(function(t){function e(n,i,a){return{label:n,textEdit:i,additionalTextEdits:a}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Oe.string(i.label)&&(Oe.undefined(i.textEdit)||gg.is(i))&&(Oe.undefined(i.additionalTextEdits)||Oe.typedArray(i.additionalTextEdits,gg.is))}o(r,"is"),t.is=r})(tle||(tle={}));(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(rle||(rle={}));(function(t){function e(n,i,a,s,l,u){let h={startLine:n,endLine:i};return Oe.defined(a)&&(h.startCharacter=a),Oe.defined(s)&&(h.endCharacter=s),Oe.defined(l)&&(h.kind=l),Oe.defined(u)&&(h.collapsedText=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Oe.uinteger(i.startLine)&&Oe.uinteger(i.startLine)&&(Oe.undefined(i.startCharacter)||Oe.uinteger(i.startCharacter))&&(Oe.undefined(i.endCharacter)||Oe.uinteger(i.endCharacter))&&(Oe.undefined(i.kind)||Oe.string(i.kind))}o(r,"is"),t.is=r})(nle||(nle={}));(function(t){function e(n,i){return{location:n,message:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Tk.is(i.location)&&Oe.string(i.message)}o(r,"is"),t.is=r})(ZR||(ZR={}));(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(ile||(ile={}));(function(t){t.Unnecessary=1,t.Deprecated=2})(ale||(ale={}));(function(t){function e(r){let n=r;return Oe.objectLiteral(n)&&Oe.string(n.href)}o(e,"is"),t.is=e})(sle||(sle={}));(function(t){function e(n,i,a,s,l,u){let h={range:n,message:i};return Oe.defined(a)&&(h.severity=a),Oe.defined(s)&&(h.code=s),Oe.defined(l)&&(h.source=l),Oe.defined(u)&&(h.relatedInformation=u),h}o(e,"create"),t.create=e;function r(n){var i;let a=n;return Oe.defined(a)&&Dr.is(a.range)&&Oe.string(a.message)&&(Oe.number(a.severity)||Oe.undefined(a.severity))&&(Oe.integer(a.code)||Oe.string(a.code)||Oe.undefined(a.code))&&(Oe.undefined(a.codeDescription)||Oe.string((i=a.codeDescription)===null||i===void 0?void 0:i.href))&&(Oe.string(a.source)||Oe.undefined(a.source))&&(Oe.undefined(a.relatedInformation)||Oe.typedArray(a.relatedInformation,ZR.is))}o(r,"is"),t.is=r})(kk||(kk={}));(function(t){function e(n,i,...a){let s={title:n,command:i};return Oe.defined(a)&&a.length>0&&(s.arguments=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Oe.string(i.title)&&Oe.string(i.command)}o(r,"is"),t.is=r})(mg||(mg={}));(function(t){function e(a,s){return{range:a,newText:s}}o(e,"replace"),t.replace=e;function r(a,s){return{range:{start:a,end:a},newText:s}}o(r,"insert"),t.insert=r;function n(a){return{range:a,newText:""}}o(n,"del"),t.del=n;function i(a){let s=a;return Oe.objectLiteral(s)&&Oe.string(s.newText)&&Dr.is(s.range)}o(i,"is"),t.is=i})(gg||(gg={}));(function(t){function e(n,i,a){let s={label:n};return i!==void 0&&(s.needsConfirmation=i),a!==void 0&&(s.description=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Oe.string(i.label)&&(Oe.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(Oe.string(i.description)||i.description===void 0)}o(r,"is"),t.is=r})(JR||(JR={}));(function(t){function e(r){let n=r;return Oe.string(n)}o(e,"is"),t.is=e})(yg||(yg={}));(function(t){function e(a,s,l){return{range:a,newText:s,annotationId:l}}o(e,"replace"),t.replace=e;function r(a,s,l){return{range:{start:a,end:a},newText:s,annotationId:l}}o(r,"insert"),t.insert=r;function n(a,s){return{range:a,newText:"",annotationId:s}}o(n,"del"),t.del=n;function i(a){let s=a;return gg.is(s)&&(JR.is(s.annotationId)||yg.is(s.annotationId))}o(i,"is"),t.is=i})(ole||(ole={}));(function(t){function e(n,i){return{textDocument:n,edits:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&aM.is(i.textDocument)&&Array.isArray(i.edits)}o(r,"is"),t.is=r})(eM||(eM={}));(function(t){function e(n,i,a){let s={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&Oe.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||Oe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Oe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||yg.is(i.annotationId))}o(r,"is"),t.is=r})(tM||(tM={}));(function(t){function e(n,i,a,s){let l={kind:"rename",oldUri:n,newUri:i};return a!==void 0&&(a.overwrite!==void 0||a.ignoreIfExists!==void 0)&&(l.options=a),s!==void 0&&(l.annotationId=s),l}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&Oe.string(i.oldUri)&&Oe.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||Oe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Oe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||yg.is(i.annotationId))}o(r,"is"),t.is=r})(rM||(rM={}));(function(t){function e(n,i,a){let s={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&Oe.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||Oe.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||Oe.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||yg.is(i.annotationId))}o(r,"is"),t.is=r})(nM||(nM={}));(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>Oe.string(i.kind)?tM.is(i)||rM.is(i)||nM.is(i):eM.is(i)))}o(e,"is"),t.is=e})(iM||(iM={}));(function(t){function e(n){return{uri:n}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Oe.string(i.uri)}o(r,"is"),t.is=r})(lle||(lle={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Oe.string(i.uri)&&Oe.integer(i.version)}o(r,"is"),t.is=r})(cle||(cle={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Oe.string(i.uri)&&(i.version===null||Oe.integer(i.version))}o(r,"is"),t.is=r})(aM||(aM={}));(function(t){function e(n,i,a,s){return{uri:n,languageId:i,version:a,text:s}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Oe.string(i.uri)&&Oe.string(i.languageId)&&Oe.integer(i.version)&&Oe.string(i.text)}o(r,"is"),t.is=r})(ule||(ule={}));(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){let n=r;return n===t.PlainText||n===t.Markdown}o(e,"is"),t.is=e})(sM||(sM={}));(function(t){function e(r){let n=r;return Oe.objectLiteral(r)&&sM.is(n.kind)&&Oe.string(n.value)}o(e,"is"),t.is=e})(S2||(S2={}));(function(t){t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25})(hle||(hle={}));(function(t){t.PlainText=1,t.Snippet=2})(fle||(fle={}));(function(t){t.Deprecated=1})(dle||(dle={}));(function(t){function e(n,i,a){return{newText:n,insert:i,replace:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i&&Oe.string(i.newText)&&Dr.is(i.insert)&&Dr.is(i.replace)}o(r,"is"),t.is=r})(ple||(ple={}));(function(t){t.asIs=1,t.adjustIndentation=2})(mle||(mle={}));(function(t){function e(r){let n=r;return n&&(Oe.string(n.detail)||n.detail===void 0)&&(Oe.string(n.description)||n.description===void 0)}o(e,"is"),t.is=e})(gle||(gle={}));(function(t){function e(r){return{label:r}}o(e,"create"),t.create=e})(yle||(yle={}));(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}o(e,"create"),t.create=e})(vle||(vle={}));(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}o(e,"fromPlainText"),t.fromPlainText=e;function r(n){let i=n;return Oe.string(i)||Oe.objectLiteral(i)&&Oe.string(i.language)&&Oe.string(i.value)}o(r,"is"),t.is=r})(Ek||(Ek={}));(function(t){function e(r){let n=r;return!!n&&Oe.objectLiteral(n)&&(S2.is(n.contents)||Ek.is(n.contents)||Oe.typedArray(n.contents,Ek.is))&&(r.range===void 0||Dr.is(r.range))}o(e,"is"),t.is=e})(xle||(xle={}));(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}o(e,"create"),t.create=e})(ble||(ble={}));(function(t){function e(r,n,...i){let a={label:r};return Oe.defined(n)&&(a.documentation=n),Oe.defined(i)?a.parameters=i:a.parameters=[],a}o(e,"create"),t.create=e})(wle||(wle={}));(function(t){t.Text=1,t.Read=2,t.Write=3})(Tle||(Tle={}));(function(t){function e(r,n){let i={range:r};return Oe.number(n)&&(i.kind=n),i}o(e,"create"),t.create=e})(kle||(kle={}));(function(t){t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26})(Ele||(Ele={}));(function(t){t.Deprecated=1})(Sle||(Sle={}));(function(t){function e(r,n,i,a,s){let l={name:r,kind:n,location:{uri:a,range:i}};return s&&(l.containerName=s),l}o(e,"create"),t.create=e})(Cle||(Cle={}));(function(t){function e(r,n,i,a){return a!==void 0?{name:r,kind:n,location:{uri:i,range:a}}:{name:r,kind:n,location:{uri:i}}}o(e,"create"),t.create=e})(Ale||(Ale={}));(function(t){function e(n,i,a,s,l,u){let h={name:n,detail:i,kind:a,range:s,selectionRange:l};return u!==void 0&&(h.children=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return i&&Oe.string(i.name)&&Oe.number(i.kind)&&Dr.is(i.range)&&Dr.is(i.selectionRange)&&(i.detail===void 0||Oe.string(i.detail))&&(i.deprecated===void 0||Oe.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}o(r,"is"),t.is=r})(_le||(_le={}));(function(t){t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll"})(Lle||(Lle={}));(function(t){t.Invoked=1,t.Automatic=2})(Sk||(Sk={}));(function(t){function e(n,i,a){let s={diagnostics:n};return i!=null&&(s.only=i),a!=null&&(s.triggerKind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Oe.typedArray(i.diagnostics,kk.is)&&(i.only===void 0||Oe.typedArray(i.only,Oe.string))&&(i.triggerKind===void 0||i.triggerKind===Sk.Invoked||i.triggerKind===Sk.Automatic)}o(r,"is"),t.is=r})(Dle||(Dle={}));(function(t){function e(n,i,a){let s={title:n},l=!0;return typeof i=="string"?(l=!1,s.kind=i):mg.is(i)?s.command=i:s.edit=i,l&&a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&Oe.string(i.title)&&(i.diagnostics===void 0||Oe.typedArray(i.diagnostics,kk.is))&&(i.kind===void 0||Oe.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||mg.is(i.command))&&(i.isPreferred===void 0||Oe.boolean(i.isPreferred))&&(i.edit===void 0||iM.is(i.edit))}o(r,"is"),t.is=r})(Nle||(Nle={}));(function(t){function e(n,i){let a={range:n};return Oe.defined(i)&&(a.data=i),a}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Dr.is(i.range)&&(Oe.undefined(i.command)||mg.is(i.command))}o(r,"is"),t.is=r})(Rle||(Rle={}));(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Oe.uinteger(i.tabSize)&&Oe.boolean(i.insertSpaces)}o(r,"is"),t.is=r})(Mle||(Mle={}));(function(t){function e(n,i,a){return{range:n,target:i,data:a}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Dr.is(i.range)&&(Oe.undefined(i.target)||Oe.string(i.target))}o(r,"is"),t.is=r})(Ile||(Ile={}));(function(t){function e(n,i){return{range:n,parent:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Dr.is(i.range)&&(i.parent===void 0||t.is(i.parent))}o(r,"is"),t.is=r})(Ole||(Ole={}));(function(t){t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator"})(Ple||(Ple={}));(function(t){t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary"})(Ble||(Ble={}));(function(t){function e(r){let n=r;return Oe.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}o(e,"is"),t.is=e})(Fle||(Fle={}));(function(t){function e(n,i){return{range:n,text:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Dr.is(i.range)&&Oe.string(i.text)}o(r,"is"),t.is=r})(zle||(zle={}));(function(t){function e(n,i,a){return{range:n,variableName:i,caseSensitiveLookup:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Dr.is(i.range)&&Oe.boolean(i.caseSensitiveLookup)&&(Oe.string(i.variableName)||i.variableName===void 0)}o(r,"is"),t.is=r})(Gle||(Gle={}));(function(t){function e(n,i){return{range:n,expression:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Dr.is(i.range)&&(Oe.string(i.expression)||i.expression===void 0)}o(r,"is"),t.is=r})($le||($le={}));(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.defined(i)&&Dr.is(n.stoppedLocation)}o(r,"is"),t.is=r})(Vle||(Vle={}));(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}o(e,"is"),t.is=e})(oM||(oM={}));(function(t){function e(n){return{value:n}}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&(i.tooltip===void 0||Oe.string(i.tooltip)||S2.is(i.tooltip))&&(i.location===void 0||Tk.is(i.location))&&(i.command===void 0||mg.is(i.command))}o(r,"is"),t.is=r})(lM||(lM={}));(function(t){function e(n,i,a){let s={position:n,label:i};return a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return Oe.objectLiteral(i)&&Xr.is(i.position)&&(Oe.string(i.label)||Oe.typedArray(i.label,lM.is))&&(i.kind===void 0||oM.is(i.kind))&&i.textEdits===void 0||Oe.typedArray(i.textEdits,gg.is)&&(i.tooltip===void 0||Oe.string(i.tooltip)||S2.is(i.tooltip))&&(i.paddingLeft===void 0||Oe.boolean(i.paddingLeft))&&(i.paddingRight===void 0||Oe.boolean(i.paddingRight))}o(r,"is"),t.is=r})(Ule||(Ule={}));(function(t){function e(r){return{kind:"snippet",value:r}}o(e,"createSnippet"),t.createSnippet=e})(Hle||(Hle={}));(function(t){function e(r,n,i,a){return{insertText:r,filterText:n,range:i,command:a}}o(e,"create"),t.create=e})(Wle||(Wle={}));(function(t){function e(r){return{items:r}}o(e,"create"),t.create=e})(Yle||(Yle={}));(function(t){t.Invoked=0,t.Automatic=1})(qle||(qle={}));(function(t){function e(r,n){return{range:r,text:n}}o(e,"create"),t.create=e})(Xle||(Xle={}));(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}o(e,"create"),t.create=e})(jle||(jle={}));(function(t){function e(r){let n=r;return Oe.objectLiteral(n)&&KR.is(n.uri)&&Oe.string(n.name)}o(e,"is"),t.is=e})(Kle||(Kle={}));(function(t){function e(a,s,l,u){return new cM(a,s,l,u)}o(e,"create"),t.create=e;function r(a){let s=a;return!!(Oe.defined(s)&&Oe.string(s.uri)&&(Oe.undefined(s.languageId)||Oe.string(s.languageId))&&Oe.uinteger(s.lineCount)&&Oe.func(s.getText)&&Oe.func(s.positionAt)&&Oe.func(s.offsetAt))}o(r,"is"),t.is=r;function n(a,s){let l=a.getText(),u=i(s,(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),h=l.length;for(let f=u.length-1;f>=0;f--){let d=u[f],p=a.offsetAt(d.range.start),m=a.offsetAt(d.range.end);if(m<=h)l=l.substring(0,p)+d.newText+l.substring(m,l.length);else throw new Error("Overlapping edit");h=p}return l}o(n,"applyEdits"),t.applyEdits=n;function i(a,s){if(a.length<=1)return a;let l=a.length/2|0,u=a.slice(0,l),h=a.slice(l);i(u,s),i(h,s);let f=0,d=0,p=0;for(;f0&&e.push(r.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return Xr.create(0,e);for(;ne?i=s:n=s+1}let a=n-1;return Xr.create(a,e-r[a])}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1"u"}o(n,"undefined"),t.undefined=n;function i(m){return m===!0||m===!1}o(i,"boolean"),t.boolean=i;function a(m){return e.call(m)==="[object String]"}o(a,"string"),t.string=a;function s(m){return e.call(m)==="[object Number]"}o(s,"number"),t.number=s;function l(m,g,y){return e.call(m)==="[object Number]"&&g<=m&&m<=y}o(l,"numberRange"),t.numberRange=l;function u(m){return e.call(m)==="[object Number]"&&-2147483648<=m&&m<=2147483647}o(u,"integer"),t.integer=u;function h(m){return e.call(m)==="[object Number]"&&0<=m&&m<=2147483647}o(h,"uinteger"),t.uinteger=h;function f(m){return e.call(m)==="[object Function]"}o(f,"func"),t.func=f;function d(m){return m!==null&&typeof m=="object"}o(d,"objectLiteral"),t.objectLiteral=d;function p(m,g){return Array.isArray(m)&&m.every(g)}o(p,"typedArray"),t.typedArray=p})(Oe||(Oe={}))});var C2,A2,c0,u0,hM,vg,Ck=M(()=>{"use strict";uM();Yo();Ml();C2=class{static{o(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]}buildRootNode(e){return this.rootNode=new vg(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let r=new u0;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){let n=new c0(e.startOffset,e.image.length,$m(e),e.tokenType,!1);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){let r=e.container;if(r){let n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}construct(e){let r=this.current;typeof e.$type=="string"&&(this.current.astNode=e),e.$cstNode=r;let n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}addHiddenTokens(e){for(let r of e){let n=new c0(r.startOffset,r.image.length,$m(r),r.tokenType,!0);n.root=this.rootNode,this.addHiddenToken(this.rootNode,n)}}addHiddenToken(e,r){let{offset:n,end:i}=r;for(let a=0;al&&i=0;e--){let r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}},hM=class t extends Array{static{o(this,"CstNodeContainer")}constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,t.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(let r of e)r.container=this.parent}},vg=class extends u0{static{o(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}}});function fM(t){return t.$type===Ak}var Ak,Zle,Jle,_2,L2,_k,xg,D2,gze,dM,N2=M(()=>{"use strict";s0();Koe();Ac();Pl();es();Ck();Ak=Symbol("Datatype");o(fM,"isDataTypeNode");Zle="\u200B",Jle=o(t=>t.endsWith(Zle)?t:t+Zle,"withRuleSuffix"),_2=class{static{o(this,"AbstractLangiumParser")}constructor(e){this._unorderedGroups=new Map,this.lexer=e.parser.Lexer;let r=this.lexer.definition;this.wrapper=new dM(r,Object.assign(Object.assign({},e.parser.ParserConfig),{errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,r){this.wrapper.wrapOr(e,r)}optional(e,r){this.wrapper.wrapOption(e,r)}many(e,r){this.wrapper.wrapMany(e,r)}atLeastOne(e,r){this.wrapper.wrapAtLeastOne(e,r)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},L2=class extends _2{static{o(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new C2,this.stack=[],this.assignmentMap=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,r){let n=e.fragment?void 0:e2(e)?Ak:Zd(e),i=this.wrapper.DEFINE_RULE(Jle(e.name),this.startImplementation(n,r).bind(this));return e.entry&&(this.mainRule=i),i}parse(e){this.nodeBuilder.buildRootNode(e);let r=this.lexer.tokenize(e);this.wrapper.input=r.tokens;let n=this.mainRule.call(this.wrapper,{});return this.nodeBuilder.addHiddenTokens(r.hidden),this.unorderedGroups.clear(),{value:n,lexerErrors:r.errors,parserErrors:this.wrapper.errors}}startImplementation(e,r){return n=>{if(!this.isRecording()){let a={$type:e};this.stack.push(a),e===Ak&&(a.value="")}let i;try{i=r(n)}catch{i=void 0}return!this.isRecording()&&i===void 0&&(i=this.construct()),i}}consume(e,r,n){let i=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(i)){let a=this.nodeBuilder.buildLeafNode(i,n),{assignment:s,isCrossRef:l}=this.getAssignment(n),u=this.current;if(s){let h=Xo(n)?i.image:this.converter.convert(i.image,a);this.assign(s.operator,s.feature,h,a,l)}else if(fM(u)){let h=i.image;Xo(n)||(h=this.converter.convert(h,a).toString()),u.value+=h}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,i){let a;this.isRecording()||(a=this.nodeBuilder.buildCompositeNode(n));let s=this.wrapper.wrapSubrule(e,r,i);!this.isRecording()&&a&&a.length>0&&this.performSubruleAssignment(s,n,a)}performSubruleAssignment(e,r,n){let{assignment:i,isCrossRef:a}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,e,n,a);else if(!i){let s=this.current;if(fM(s))s.value+=e.toString();else if(typeof e=="object"&&e){let l=e.$type,u=this.assignWithoutOverride(e,s);l&&(u.$type=l);let h=u;this.stack.pop(),this.stack.push(h)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(!n.$cstNode&&r.feature&&r.operator){n=this.construct(!1);let a=n.$cstNode.feature;this.nodeBuilder.buildCompositeNode(a)}let i={$type:e};this.stack.pop(),this.stack.push(i),r.feature&&r.operator&&this.assign(r.operator,r.feature,n,n.$cstNode,!1)}}construct(e=!0){if(this.isRecording())return;let r=this.current;return CT(r),this.nodeBuilder.construct(r),e&&this.stack.pop(),fM(r)?this.converter.convert(r.value,r.$cstNode):($N(this.astReflection,r),r)}getAssignment(e){if(!this.assignmentMap.has(e)){let r=qd(e,Il);this.assignmentMap.set(e,{assignment:r,isCrossRef:r?Yd(r.terminal):!1})}return this.assignmentMap.get(e)}assign(e,r,n,i,a){let s=this.current,l;switch(a&&typeof n=="string"?l=this.linker.buildReference(s,r,i,n):l=n,e){case"=":{s[r]=l;break}case"?=":{s[r]=!0;break}case"+=":Array.isArray(s[r])||(s[r]=[]),s[r].push(l)}}assignWithoutOverride(e,r){for(let[n,i]of Object.entries(r)){let a=e[n];a===void 0?e[n]=i:Array.isArray(a)&&Array.isArray(i)&&(i.push(...a),e[n]=i)}return e}get definitionErrors(){return this.wrapper.definitionErrors}},_k=class{static{o(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return Fu.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return Fu.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return Fu.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return Fu.buildEarlyExitMessage(e)}},xg=class extends _k{static{o(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:e,actual:r}){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 \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},D2=class extends _2{static{o(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let r=this.lexer.tokenize(e);return this.tokens=r.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,r){let n=this.wrapper.DEFINE_RULE(Jle(e.name),this.startImplementation(r).bind(this));return e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{let n=this.keepStackSize();try{e(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,i){this.before(n),this.wrapper.wrapSubrule(e,r,i),this.after(n)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},gze={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new xg},dM=class extends b2{static{o(this,"ChevrotainWrapper")}constructor(e,r){let n=r&&"maxLookahead"in r;super(e,Object.assign(Object.assign(Object.assign({},gze),{lookaheadStrategy:n?new zu({maxLookahead:r.maxLookahead}):new E2}),r))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,r){return this.RULE(e,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,r){return this.consume(e,r)}wrapSubrule(e,r,n){return this.subrule(e,r,{ARGS:[n]})}wrapOr(e,r){this.or(e,r)}wrapOption(e,r){this.option(e,r)}wrapMany(e,r){this.many(e,r)}wrapAtLeastOne(e,r){this.atLeastOne(e,r)}}});function Dk(t,e,r){return yze({parser:e,tokens:r,rules:new Map,ruleNames:new Map},t),e}function yze(t,e){let r=Zv(e,!1),n=tn(e.rules).filter(Ma).filter(i=>r.has(i));for(let i of n){let a=Object.assign(Object.assign({},t),{consume:1,optional:1,subrule:1,many:1,or:1});a.rules.set(i.name,t.parser.rule(i,h0(a,i.definition)))}}function h0(t,e,r=!1){let n;if(Xo(e))n=Eze(t,e);else if(Ru(e))n=vze(t,e);else if(Il(e))n=h0(t,e.terminal);else if(Yd(e))n=ece(t,e);else if(Ol(e))n=xze(t,e);else if(kT(e))n=wze(t,e);else if(ST(e))n=Tze(t,e);else if(tf(e))n=kze(t,e);else if(wN(e)){let i=t.consume++;n=o(()=>t.parser.consume(i,oo,e),"method")}else throw new Wd(e.$cstNode,`Unexpected element type: ${e.$type}`);return tce(t,r?void 0:Lk(e),n,e.cardinality)}function vze(t,e){let r=Zd(e);return()=>t.parser.action(r,e)}function xze(t,e){let r=e.rule.ref;if(Ma(r)){let n=t.subrule++,i=e.arguments.length>0?bze(r,e.arguments):()=>({});return a=>t.parser.subrule(n,rce(t,r),e,i(a))}else if(qo(r)){let n=t.consume++,i=pM(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)ef(r);else throw new Wd(e.$cstNode,`Undefined rule type: ${e.$type}`)}function bze(t,e){let r=e.map(n=>Gu(n.value));return n=>{let i={};for(let a=0;ae(n)||r(n)}else if(qD(t)){let e=Gu(t.left),r=Gu(t.right);return n=>e(n)&&r(n)}else if(eN(t)){let e=Gu(t.value);return r=>!e(r)}else if(iN(t)){let e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(WD(t)){let e=!!t.true;return()=>e}ef(t)}function wze(t,e){if(e.elements.length===1)return h0(t,e.elements[0]);{let r=[];for(let i of e.elements){let a={ALT:h0(t,i,!0)},s=Lk(i);s&&(a.GATE=Gu(s)),r.push(a)}let n=t.or++;return i=>t.parser.alternatives(n,r.map(a=>{let s={ALT:o(()=>a.ALT(i),"ALT")},l=a.GATE;return l&&(s.GATE=()=>l(i)),s}))}}function Tze(t,e){if(e.elements.length===1)return h0(t,e.elements[0]);let r=[];for(let l of e.elements){let u={ALT:h0(t,l,!0)},h=Lk(l);h&&(u.GATE=Gu(h)),r.push(u)}let n=t.or++,i=o((l,u)=>{let h=u.getRuleStack().join("-");return`uGroup_${l}_${h}`},"idFunc"),a=o(l=>t.parser.alternatives(n,r.map((u,h)=>{let f={ALT:o(()=>!0,"ALT")},d=t.parser;f.ALT=()=>{if(u.ALT(l),!d.isRecording()){let m=i(n,d);d.unorderedGroups.get(m)||d.unorderedGroups.set(m,[]);let g=d.unorderedGroups.get(m);typeof g?.[h]>"u"&&(g[h]=!0)}};let p=u.GATE;return p?f.GATE=()=>p(l):f.GATE=()=>{let m=d.unorderedGroups.get(i(n,d));return!m?.[h]},f})),"alternatives"),s=tce(t,Lk(e),a,"*");return l=>{s(l),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}function kze(t,e){let r=e.elements.map(n=>h0(t,n));return n=>r.forEach(i=>i(n))}function Lk(t){if(tf(t))return t.guardCondition}function ece(t,e,r=e.terminal){if(r)if(Ol(r)&&Ma(r.rule.ref)){let n=t.subrule++;return i=>t.parser.subrule(n,rce(t,r.rule.ref),e,i)}else if(Ol(r)&&qo(r.rule.ref)){let n=t.consume++,i=pM(t,r.rule.ref.name);return()=>t.parser.consume(n,i,e)}else if(Xo(r)){let n=t.consume++,i=pM(t,r.value);return()=>t.parser.consume(n,i,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);let n=RT(e.type.ref),i=n?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+Zd(e.type.ref));return ece(t,e,i)}}function Eze(t,e){let r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}function tce(t,e,r,n){let i=e&&Gu(e);if(!n)if(i){let a=t.or++;return s=>t.parser.alternatives(a,[{ALT:o(()=>r(s),"ALT"),GATE:o(()=>i(s),"GATE")},{ALT:vk(),GATE:o(()=>!i(s),"GATE")}])}else return r;if(n==="*"){let a=t.many++;return s=>t.parser.many(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else if(n==="+"){let a=t.many++;if(i){let s=t.or++;return l=>t.parser.alternatives(s,[{ALT:o(()=>t.parser.atLeastOne(a,{DEF:o(()=>r(l),"DEF")}),"ALT"),GATE:o(()=>i(l),"GATE")},{ALT:vk(),GATE:o(()=>!i(l),"GATE")}])}else return s=>t.parser.atLeastOne(a,{DEF:o(()=>r(s),"DEF")})}else if(n==="?"){let a=t.optional++;return s=>t.parser.optional(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else ef(n)}function rce(t,e){let r=Sze(t,e),n=t.rules.get(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function Sze(t,e){if(Ma(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!Ma(n);)(tf(n)||kT(n)||ST(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,t.ruleNames.set(e,i),i}}function pM(t,e){let r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}var mM=M(()=>{"use strict";s0();Ac();gT();Rs();Pl();o(Dk,"createParser");o(yze,"buildRules");o(h0,"buildElement");o(vze,"buildAction");o(xze,"buildRuleCall");o(bze,"buildRuleCallPredicate");o(Gu,"buildPredicate");o(wze,"buildAlternatives");o(Tze,"buildUnorderedGroup");o(kze,"buildGroup");o(Lk,"getGuardCondition");o(ece,"buildCrossReference");o(Eze,"buildKeyword");o(tce,"wrap");o(rce,"getRule");o(Sze,"getRuleName");o(pM,"getToken")});function gM(t){let e=t.Grammar,r=t.parser.Lexer,n=new D2(t);return Dk(e,n,r.definition),n.finalize(),n}var yM=M(()=>{"use strict";N2();mM();o(gM,"createCompletionParser")});function vM(t){let e=nce(t);return e.finalize(),e}function nce(t){let e=t.Grammar,r=t.parser.Lexer,n=new L2(t);return Dk(e,n,r.definition)}var xM=M(()=>{"use strict";N2();mM();o(vM,"createLangiumParser");o(nce,"prepareLangiumParser")});var f0,bM=M(()=>{"use strict";s0();Ac();es();Pl();Wm();Rs();f0=class{static{o(this,"DefaultTokenBuilder")}buildTokens(e,r){let n=tn(Zv(e,!1)),i=this.buildTerminalTokens(n),a=this.buildKeywordTokens(n,i,r);return i.forEach(s=>{let l=s.PATTERN;typeof l=="object"&&l&&"test"in l&&DT(l)?a.unshift(s):a.push(s)}),a}buildTerminalTokens(e){return e.filter(qo).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){let r=Ym(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n,LINE_BREAKS:!0};return e.hidden&&(i.GROUP=DT(r)?oi.SKIPPED:"hidden"),i}requiresCustomPattern(e){return e.flags.includes("u")?!0:!!(e.source.includes("?<=")||e.source.includes("?(r.lastIndex=i,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(Ma).flatMap(i=>_c(i).filter(Xo)).distinct(i=>i.value).toArray().sort((i,a)=>a.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!n?.caseInsensitive))}buildKeywordToken(e,r,n){return{name:e.value,PATTERN:this.buildKeywordPattern(e,n),LONGER_ALT:this.findLongerAlt(e,r)}}buildKeywordPattern(e,r){return r?new RegExp(XN(e.value)):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{let a=i?.PATTERN;return a?.source&&jN("^"+a.source+"$",e.value)&&n.push(i),n},[])}}});var d0,Nc,wM=M(()=>{"use strict";Ac();Pl();d0=class{static{o(this,"DefaultValueConverter")}convert(e,r){let n=r.grammarSource;if(Yd(n)&&(n=ZN(n)),Ol(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,r)}return e}runConverter(e,r,n){var i;switch(e.name.toUpperCase()){case"INT":return Nc.convertInt(r);case"STRING":return Nc.convertString(r);case"ID":return Nc.convertID(r)}switch((i=sR(e))===null||i===void 0?void 0:i.toLowerCase()){case"number":return Nc.convertNumber(r);case"boolean":return Nc.convertBoolean(r);case"bigint":return Nc.convertBigint(r);case"date":return Nc.convertDate(r);default:return r}}};(function(t){function e(h){let f="";for(let d=1;d{"use strict";Object.defineProperty(EM,"__esModule",{value:!0});var TM;function kM(){if(TM===void 0)throw new Error("No runtime abstraction layer installed");return TM}o(kM,"RAL");(function(t){function e(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");TM=r}o(e,"install"),t.install=e})(kM||(kM={}));EM.default=kM});var sce=Ni(Ia=>{"use strict";Object.defineProperty(Ia,"__esModule",{value:!0});Ia.stringArray=Ia.array=Ia.func=Ia.error=Ia.number=Ia.string=Ia.boolean=void 0;function Cze(t){return t===!0||t===!1}o(Cze,"boolean");Ia.boolean=Cze;function ice(t){return typeof t=="string"||t instanceof String}o(ice,"string");Ia.string=ice;function Aze(t){return typeof t=="number"||t instanceof Number}o(Aze,"number");Ia.number=Aze;function _ze(t){return t instanceof Error}o(_ze,"error");Ia.error=_ze;function Lze(t){return typeof t=="function"}o(Lze,"func");Ia.func=Lze;function ace(t){return Array.isArray(t)}o(ace,"array");Ia.array=ace;function Dze(t){return ace(t)&&t.every(e=>ice(e))}o(Dze,"stringArray");Ia.stringArray=Dze});var AM=Ni(bg=>{"use strict";Object.defineProperty(bg,"__esModule",{value:!0});bg.Emitter=bg.Event=void 0;var Nze=SM(),oce;(function(t){let e={dispose(){}};t.None=function(){return e}})(oce||(bg.Event=oce={}));var CM=class{static{o(this,"CallbackList")}add(e,r=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(r),Array.isArray(n)&&n.push({dispose:o(()=>this.remove(e,r),"dispose")})}remove(e,r=null){if(!this._callbacks)return;let n=!1;for(let i=0,a=this._callbacks.length;i{this._callbacks||(this._callbacks=new CM),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,r);let i={dispose:o(()=>{this._callbacks&&(this._callbacks.remove(e,r),i.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(n)&&n.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};bg.Emitter=Nk;Nk._noop=function(){}});var lce=Ni(wg=>{"use strict";Object.defineProperty(wg,"__esModule",{value:!0});wg.CancellationTokenSource=wg.CancellationToken=void 0;var Rze=SM(),Mze=sce(),_M=AM(),Rk;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:_M.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:_M.Event.None});function e(r){let n=r;return n&&(n===t.None||n===t.Cancelled||Mze.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}o(e,"is"),t.is=e})(Rk||(wg.CancellationToken=Rk={}));var Ize=Object.freeze(function(t,e){let r=(0,Rze.default)().timer.setTimeout(t.bind(e),0);return{dispose(){r.dispose()}}}),Mk=class{static{o(this,"MutableToken")}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?Ize:(this._emitter||(this._emitter=new _M.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},LM=class{static{o(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new Mk),this._token}cancel(){this._token?this._token.cancel():this._token=Rk.Cancelled}dispose(){this._token?this._token instanceof Mk&&this._token.dispose():this._token=Rk.None}};wg.CancellationTokenSource=LM});var Cr={};var Ko=M(()=>{"use strict";Er(Cr,ka(lce(),1))});function NM(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}function uce(){return DM=Date.now(),new Cr.CancellationTokenSource}function hce(t){cce=t}function sf(t){return t===Rc}async function Gi(t){if(t===Cr.CancellationToken.None)return;let e=Date.now();if(e-DM>=cce&&(DM=e,await NM()),t.isCancellationRequested)throw Rc}var DM,cce,Rc,as,Qo=M(()=>{"use strict";Ko();o(NM,"delayNextTick");DM=0,cce=10;o(uce,"startCancelableOperation");o(hce,"setInterruptionPeriod");Rc=Symbol("OperationCancelled");o(sf,"isOperationCancelled");o(Gi,"interruptAndCheck");as=class{static{o(this,"Deferred")}constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}}});function RM(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);RM(n,e),RM(i,e);let a=0,s=0,l=0;for(;ar.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function Oze(t){let e=pce(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var Ik,Tg,mce=M(()=>{"use strict";Ik=class t{static{o(this,"FullTextDocument")}constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(t.isIncremental(n)){let i=pce(n.range),a=this.offsetAt(i.start),s=this.offsetAt(i.end);this._content=this._content.substring(0,a)+n.text+this._content.substring(s,this._content.length);let l=Math.max(i.start.line,0),u=Math.max(i.end.line,0),h=this._lineOffsets,f=fce(n.text,!1,a);if(u-l===f.length)for(let p=0,m=f.length;pe?i=s:n=s+1}let a=n-1;return e=this.ensureBeforeEOL(e,r[a]),{line:a,character:e-r[a]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line];if(e.character<=0)return n;let i=e.line+1r&&dce(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}};(function(t){function e(i,a,s,l){return new Ik(i,a,s,l)}o(e,"create"),t.create=e;function r(i,a,s){if(i instanceof Ik)return i.update(a,s),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}o(r,"update"),t.update=r;function n(i,a){let s=i.getText(),l=RM(a.map(Oze),(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),u=0,h=[];for(let f of l){let d=i.offsetAt(f.range.start);if(du&&h.push(s.substring(u,d)),f.newText.length&&h.push(f.newText),u=i.offsetAt(f.range.end)}return h.push(s.substr(u)),h.join("")}o(n,"applyEdits"),t.applyEdits=n})(Tg||(Tg={}));o(RM,"mergeSort");o(fce,"computeLineOffsets");o(dce,"isEOL");o(pce,"getWellformedRange");o(Oze,"getWellformedEdit")});var gce,Os,kg,MM=M(()=>{"use strict";(()=>{"use strict";var t={470:i=>{function a(u){if(typeof u!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(u))}o(a,"e");function s(u,h){for(var f,d="",p=0,m=-1,g=0,y=0;y<=u.length;++y){if(y2){var v=d.lastIndexOf("/");if(v!==d.length-1){v===-1?(d="",p=0):p=(d=d.slice(0,v)).length-1-d.lastIndexOf("/"),m=y,g=0;continue}}else if(d.length===2||d.length===1){d="",p=0,m=y,g=0;continue}}h&&(d.length>0?d+="/..":d="..",p=2)}else d.length>0?d+="/"+u.slice(m+1,y):d=u.slice(m+1,y),p=y-m-1;m=y,g=0}else f===46&&g!==-1?++g:g=-1}return d}o(s,"r");var l={resolve:o(function(){for(var u,h="",f=!1,d=arguments.length-1;d>=-1&&!f;d--){var p;d>=0?p=arguments[d]:(u===void 0&&(u=process.cwd()),p=u),a(p),p.length!==0&&(h=p+"/"+h,f=p.charCodeAt(0)===47)}return h=s(h,!f),f?h.length>0?"/"+h:"/":h.length>0?h:"."},"resolve"),normalize:o(function(u){if(a(u),u.length===0)return".";var h=u.charCodeAt(0)===47,f=u.charCodeAt(u.length-1)===47;return(u=s(u,!h)).length!==0||h||(u="."),u.length>0&&f&&(u+="/"),h?"/"+u:u},"normalize"),isAbsolute:o(function(u){return a(u),u.length>0&&u.charCodeAt(0)===47},"isAbsolute"),join:o(function(){if(arguments.length===0)return".";for(var u,h=0;h0&&(u===void 0?u=f:u+="/"+f)}return u===void 0?".":l.normalize(u)},"join"),relative:o(function(u,h){if(a(u),a(h),u===h||(u=l.resolve(u))===(h=l.resolve(h)))return"";for(var f=1;fy){if(h.charCodeAt(m+x)===47)return h.slice(m+x+1);if(x===0)return h.slice(m+x)}else p>y&&(u.charCodeAt(f+x)===47?v=x:x===0&&(v=0));break}var b=u.charCodeAt(f+x);if(b!==h.charCodeAt(m+x))break;b===47&&(v=x)}var w="";for(x=f+v+1;x<=d;++x)x!==d&&u.charCodeAt(x)!==47||(w.length===0?w+="..":w+="/..");return w.length>0?w+h.slice(m+v):(m+=v,h.charCodeAt(m)===47&&++m,h.slice(m))},"relative"),_makeLong:o(function(u){return u},"_makeLong"),dirname:o(function(u){if(a(u),u.length===0)return".";for(var h=u.charCodeAt(0),f=h===47,d=-1,p=!0,m=u.length-1;m>=1;--m)if((h=u.charCodeAt(m))===47){if(!p){d=m;break}}else p=!1;return d===-1?f?"/":".":f&&d===1?"//":u.slice(0,d)},"dirname"),basename:o(function(u,h){if(h!==void 0&&typeof h!="string")throw new TypeError('"ext" argument must be a string');a(u);var f,d=0,p=-1,m=!0;if(h!==void 0&&h.length>0&&h.length<=u.length){if(h.length===u.length&&h===u)return"";var g=h.length-1,y=-1;for(f=u.length-1;f>=0;--f){var v=u.charCodeAt(f);if(v===47){if(!m){d=f+1;break}}else y===-1&&(m=!1,y=f+1),g>=0&&(v===h.charCodeAt(g)?--g==-1&&(p=f):(g=-1,p=y))}return d===p?p=y:p===-1&&(p=u.length),u.slice(d,p)}for(f=u.length-1;f>=0;--f)if(u.charCodeAt(f)===47){if(!m){d=f+1;break}}else p===-1&&(m=!1,p=f+1);return p===-1?"":u.slice(d,p)},"basename"),extname:o(function(u){a(u);for(var h=-1,f=0,d=-1,p=!0,m=0,g=u.length-1;g>=0;--g){var y=u.charCodeAt(g);if(y!==47)d===-1&&(p=!1,d=g+1),y===46?h===-1?h=g:m!==1&&(m=1):h!==-1&&(m=-1);else if(!p){f=g+1;break}}return h===-1||d===-1||m===0||m===1&&h===d-1&&h===f+1?"":u.slice(h,d)},"extname"),format:o(function(u){if(u===null||typeof u!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof u);return function(h,f){var d=f.dir||f.root,p=f.base||(f.name||"")+(f.ext||"");return d?d===f.root?d+p:d+"/"+p:p}(0,u)},"format"),parse:o(function(u){a(u);var h={root:"",dir:"",base:"",ext:"",name:""};if(u.length===0)return h;var f,d=u.charCodeAt(0),p=d===47;p?(h.root="/",f=1):f=0;for(var m=-1,g=0,y=-1,v=!0,x=u.length-1,b=0;x>=f;--x)if((d=u.charCodeAt(x))!==47)y===-1&&(v=!1,y=x+1),d===46?m===-1?m=x:b!==1&&(b=1):m!==-1&&(b=-1);else if(!v){g=x+1;break}return m===-1||y===-1||b===0||b===1&&m===y-1&&m===g+1?y!==-1&&(h.base=h.name=g===0&&p?u.slice(1,y):u.slice(g,y)):(g===0&&p?(h.name=u.slice(1,m),h.base=u.slice(1,y)):(h.name=u.slice(g,m),h.base=u.slice(g,y)),h.ext=u.slice(m,y)),g>0?h.dir=u.slice(0,g-1):p&&(h.dir="/"),h},"parse"),sep:"/",delimiter:":",win32:null,posix:null};l.posix=l,i.exports=l}},e={};function r(i){var a=e[i];if(a!==void 0)return a.exports;var s=e[i]={exports:{}};return t[i](s,s.exports,r),s.exports}o(r,"r"),r.d=(i,a)=>{for(var s in a)r.o(a,s)&&!r.o(i,s)&&Object.defineProperty(i,s,{enumerable:!0,get:a[s]})},r.o=(i,a)=>Object.prototype.hasOwnProperty.call(i,a),r.r=i=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var n={};(()=>{let i;r.r(n),r.d(n,{URI:o(()=>p,"URI"),Utils:o(()=>I,"Utils")}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let a=/^\w[\w\d+.-]*$/,s=/^\//,l=/^\/\//;function u(D,k){if(!D.scheme&&k)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${D.authority}", path: "${D.path}", query: "${D.query}", fragment: "${D.fragment}"}`);if(D.scheme&&!a.test(D.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(D.path){if(D.authority){if(!s.test(D.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(l.test(D.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}o(u,"s");let h="",f="/",d=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class p{static{o(this,"f")}static isUri(k){return k instanceof p||!!k&&typeof k.authority=="string"&&typeof k.fragment=="string"&&typeof k.path=="string"&&typeof k.query=="string"&&typeof k.scheme=="string"&&typeof k.fsPath=="string"&&typeof k.with=="function"&&typeof k.toString=="function"}scheme;authority;path;query;fragment;constructor(k,R,S,O,N,P=!1){typeof k=="object"?(this.scheme=k.scheme||h,this.authority=k.authority||h,this.path=k.path||h,this.query=k.query||h,this.fragment=k.fragment||h):(this.scheme=function(F,B){return F||B?F:"file"}(k,P),this.authority=R||h,this.path=function(F,B){switch(F){case"https":case"http":case"file":B?B[0]!==f&&(B=f+B):B=f}return B}(this.scheme,S||h),this.query=O||h,this.fragment=N||h,u(this,P))}get fsPath(){return b(this,!1)}with(k){if(!k)return this;let{scheme:R,authority:S,path:O,query:N,fragment:P}=k;return R===void 0?R=this.scheme:R===null&&(R=h),S===void 0?S=this.authority:S===null&&(S=h),O===void 0?O=this.path:O===null&&(O=h),N===void 0?N=this.query:N===null&&(N=h),P===void 0?P=this.fragment:P===null&&(P=h),R===this.scheme&&S===this.authority&&O===this.path&&N===this.query&&P===this.fragment?this:new g(R,S,O,N,P)}static parse(k,R=!1){let S=d.exec(k);return S?new g(S[2]||h,E(S[4]||h),E(S[5]||h),E(S[7]||h),E(S[9]||h),R):new g(h,h,h,h,h)}static file(k){let R=h;if(i&&(k=k.replace(/\\/g,f)),k[0]===f&&k[1]===f){let S=k.indexOf(f,2);S===-1?(R=k.substring(2),k=f):(R=k.substring(2,S),k=k.substring(S)||f)}return new g("file",R,k,h,h)}static from(k){let R=new g(k.scheme,k.authority,k.path,k.query,k.fragment);return u(R,!0),R}toString(k=!1){return w(this,k)}toJSON(){return this}static revive(k){if(k){if(k instanceof p)return k;{let R=new g(k);return R._formatted=k.external,R._fsPath=k._sep===m?k.fsPath:null,R}}return k}}let m=i?1:void 0;class g extends p{static{o(this,"l")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=b(this,!1)),this._fsPath}toString(k=!1){return k?w(this,!0):(this._formatted||(this._formatted=w(this,!1)),this._formatted)}toJSON(){let k={$mid:1};return this._fsPath&&(k.fsPath=this._fsPath,k._sep=m),this._formatted&&(k.external=this._formatted),this.path&&(k.path=this.path),this.scheme&&(k.scheme=this.scheme),this.authority&&(k.authority=this.authority),this.query&&(k.query=this.query),this.fragment&&(k.fragment=this.fragment),k}}let y={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 v(D,k,R){let S,O=-1;for(let N=0;N=97&&P<=122||P>=65&&P<=90||P>=48&&P<=57||P===45||P===46||P===95||P===126||k&&P===47||R&&P===91||R&&P===93||R&&P===58)O!==-1&&(S+=encodeURIComponent(D.substring(O,N)),O=-1),S!==void 0&&(S+=D.charAt(N));else{S===void 0&&(S=D.substr(0,N));let F=y[P];F!==void 0?(O!==-1&&(S+=encodeURIComponent(D.substring(O,N)),O=-1),S+=F):O===-1&&(O=N)}}return O!==-1&&(S+=encodeURIComponent(D.substring(O))),S!==void 0?S:D}o(v,"d");function x(D){let k;for(let R=0;R1&&D.scheme==="file"?`//${D.authority}${D.path}`:D.path.charCodeAt(0)===47&&(D.path.charCodeAt(1)>=65&&D.path.charCodeAt(1)<=90||D.path.charCodeAt(1)>=97&&D.path.charCodeAt(1)<=122)&&D.path.charCodeAt(2)===58?k?D.path.substr(1):D.path[1].toLowerCase()+D.path.substr(2):D.path,i&&(R=R.replace(/\//g,"\\")),R}o(b,"m");function w(D,k){let R=k?x:v,S="",{scheme:O,authority:N,path:P,query:F,fragment:B}=D;if(O&&(S+=O,S+=":"),(N||O==="file")&&(S+=f,S+=f),N){let $=N.indexOf("@");if($!==-1){let z=N.substr(0,$);N=N.substr($+1),$=z.lastIndexOf(":"),$===-1?S+=R(z,!1,!1):(S+=R(z.substr(0,$),!1,!1),S+=":",S+=R(z.substr($+1),!1,!0)),S+="@"}N=N.toLowerCase(),$=N.lastIndexOf(":"),$===-1?S+=R(N,!1,!0):(S+=R(N.substr(0,$),!1,!0),S+=N.substr($))}if(P){if(P.length>=3&&P.charCodeAt(0)===47&&P.charCodeAt(2)===58){let $=P.charCodeAt(1);$>=65&&$<=90&&(P=`/${String.fromCharCode($+32)}:${P.substr(3)}`)}else if(P.length>=2&&P.charCodeAt(1)===58){let $=P.charCodeAt(0);$>=65&&$<=90&&(P=`${String.fromCharCode($+32)}:${P.substr(2)}`)}S+=R(P,!0,!1)}return F&&(S+="?",S+=R(F,!1,!1)),B&&(S+="#",S+=k?B:v(B,!1,!1)),S}o(w,"y");function _(D){try{return decodeURIComponent(D)}catch{return D.length>3?D.substr(0,3)+_(D.substr(3)):D}}o(_,"v");let T=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function E(D){return D.match(T)?D.replace(T,k=>_(k)):D}o(E,"C");var L=r(470);let C=L.posix||L,A="/";var I;(function(D){D.joinPath=function(k,...R){return k.with({path:C.join(k.path,...R)})},D.resolvePath=function(k,...R){let S=k.path,O=!1;S[0]!==A&&(S=A+S,O=!0);let N=C.resolve(S,...R);return O&&N[0]===A&&!k.authority&&(N=N.substring(1)),k.with({path:N})},D.dirname=function(k){if(k.path.length===0||k.path===A)return k;let R=C.dirname(k.path);return R.length===1&&R.charCodeAt(0)===46&&(R=""),k.with({path:R})},D.basename=function(k){return C.basename(k.path)},D.extname=function(k){return C.extname(k.path)}})(I||(I={}))})(),gce=n})();({URI:Os,Utils:kg}=gce)});var ss,Mc=M(()=>{"use strict";MM();(function(t){t.basename=kg.basename,t.dirname=kg.dirname,t.extname=kg.extname,t.joinPath=kg.joinPath,t.resolvePath=kg.resolvePath;function e(n,i){return n?.toString()===i?.toString()}o(e,"equals"),t.equals=e;function r(n,i){let a=typeof n=="string"?n:n.path,s=typeof i=="string"?i:i.path,l=a.split("/").filter(p=>p.length>0),u=s.split("/").filter(p=>p.length>0),h=0;for(;h{"use strict";mce();Eg();Ko();Rs();Mc();(function(t){t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated"})(bn||(bn={}));R2=class{static{o(this,"DefaultLangiumDocumentFactory")}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,r=Cr.CancellationToken.None){let n=await this.fileSystemProvider.readFile(e);return this.createAsync(e,n,r)}fromTextDocument(e,r,n){return r=r??Os.parse(e.uri),n?this.createAsync(r,e,n):this.create(r,e)}fromString(e,r,n){return n?this.createAsync(r,e,n):this.create(r,e)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r){if(typeof r=="string"){let n=this.parse(e,r);return this.createLangiumDocument(n,e,void 0,r)}else if("$model"in r){let n={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(n,e)}else{let n=this.parse(e,r.getText());return this.createLangiumDocument(n,e,r)}}async createAsync(e,r,n){if(typeof r=="string"){let i=await this.parseAsync(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else{let i=await this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}createLangiumDocument(e,r,n,i){let a;if(n)a={parseResult:e,uri:r,state:bn.Parsed,references:[],textDocument:n};else{let s=this.createTextDocumentGetter(r,i);a={parseResult:e,uri:r,state:bn.Parsed,references:[],get textDocument(){return s()}}}return e.value.$document=a,a}async update(e,r){var n,i;let a=(n=e.parseResult.value.$cstNode)===null||n===void 0?void 0:n.root.fullText,s=(i=this.textDocuments)===null||i===void 0?void 0:i.get(e.uri.toString()),l=s?s.getText():await this.fileSystemProvider.readFile(e.uri);if(s)Object.defineProperty(e,"textDocument",{value:s});else{let u=this.createTextDocumentGetter(e.uri,l);Object.defineProperty(e,"textDocument",{get:u})}return a!==l&&(e.parseResult=await this.parseAsync(e.uri,l,r),e.parseResult.value.$document=e),e.state=bn.Parsed,e}parse(e,r){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){let n=this.serviceRegistry,i;return()=>i??(i=Tg.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},M2=class{static{o(this,"DefaultLangiumDocuments")}constructor(e){this.documentMap=new Map,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory}get all(){return tn(this.documentMap.values())}addDocument(e){let r=e.uri.toString();if(this.documentMap.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentMap.set(r,e)}getDocument(e){let r=e.toString();return this.documentMap.get(r)}async getOrCreateDocument(e,r){let n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,r),this.addDocument(n),n)}createDocument(e,r,n){if(n)return this.langiumDocumentFactory.fromString(r,e,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(i),i}}hasDocument(e){return this.documentMap.has(e.toString())}invalidateDocument(e){let r=e.toString(),n=this.documentMap.get(r);return n&&(n.state=bn.Changed,n.precomputedScopes=void 0,n.references=[],n.diagnostics=void 0),n}deleteDocument(e){let r=e.toString(),n=this.documentMap.get(r);return n&&(n.state=bn.Changed,this.documentMap.delete(r)),n}}});var I2,IM=M(()=>{"use strict";Ko();Yo();es();Qo();Eg();I2=class{static{o(this,"DefaultLinker")}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,r=Cr.CancellationToken.None){for(let n of jo(e.parseResult.value))await Gi(r),Um(n).forEach(i=>this.doLink(i,e))}doLink(e,r){let n=e.reference;if(n._ref===void 0)try{let i=this.getCandidate(e);if(Vd(i))n._ref=i;else if(n._nodeDescription=i,this.langiumDocuments().hasDocument(i.documentUri)){let a=this.loadAstNode(i);n._ref=a??this.createLinkingError(e,i)}}catch(i){n._ref=Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${n.$refText}': ${i}`})}r.references.push(n)}unlink(e){for(let r of e.references)delete r._ref,delete r._nodeDescription;e.references=[]}getCandidate(e){let n=this.scopeProvider.getScope(e).getElement(e.reference.$refText);return n??this.createLinkingError(e)}buildReference(e,r,n,i){let a=this,s={$refNode:n,$refText:i,get ref(){var l;if(ei(this._ref))return this._ref;if(MD(this._nodeDescription)){let u=a.loadAstNode(this._nodeDescription);this._ref=u??a.createLinkingError({reference:s,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){let u=a.getLinkedNode({reference:s,container:e,property:r});if(u.error&&Fi(e).state{"use strict";Pl();o(yce,"isNamed");O2=class{static{o(this,"DefaultNameProvider")}getName(e){if(yce(e))return e.name}getNameNode(e){return Jv(e.$cstNode,"name")}}});var P2,PM=M(()=>{"use strict";Pl();Yo();es();Ml();Rs();Mc();P2=class{static{o(this,"DefaultReferences")}constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator}findDeclaration(e){if(e){let r=iR(e),n=e.astNode;if(r&&n){let i=n[r.feature];if(ma(i))return i.ref;if(Array.isArray(i)){for(let a of i)if(ma(a)&&a.$refNode&&a.$refNode.offset<=e.offset&&a.$refNode.end>=e.end)return a.ref}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===e||OD(e,i)))return n}}}findDeclarationNode(e){let r=this.findDeclaration(e);if(r?.$cstNode){let n=this.nameProvider.getNameNode(r);return n??r.$cstNode}}findReferences(e,r){let n=[];if(r.includeDeclaration){let a=this.getReferenceToSelf(e);a&&n.push(a)}let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(i=i.filter(a=>ss.equals(a.sourceUri,r.documentUri))),n.push(...i),tn(n)}getReferenceToSelf(e){let r=this.nameProvider.getNameNode(e);if(r){let n=Fi(e),i=this.nodeLocator.getAstNodePath(e);return{sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:Hd(r),local:!0}}}}});var Ic,p0,Sg=M(()=>{"use strict";Rs();Ic=class{static{o(this,"MultiMap")}constructor(e){if(this.map=new Map,e)for(let[r,n]of e)this.add(r,n)}get size(){return Gm.sum(tn(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{let n=this.map.get(e);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(e):n.splice(i,1),!0}return!1}}get(e){var r;return(r=this.map.get(e))!==null&&r!==void 0?r:[]}has(e,r){if(r===void 0)return this.map.has(e);{let n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(i=>e(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return tn(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return tn(this.map.keys())}values(){return tn(this.map.values()).flat()}entriesGroupedByKey(){return tn(this.map.entries())}},p0=class{static{o(this,"BiMap")}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}}});var B2,BM=M(()=>{"use strict";Ko();es();Sg();Qo();B2=class{static{o(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,r=Cr.CancellationToken.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,r)}async computeExportsForNode(e,r,n=qv,i=Cr.CancellationToken.None){let a=[];this.exportNode(e,a,r);for(let s of n(e))await Gi(i),this.exportNode(s,a,r);return a}exportNode(e,r,n){let i=this.nameProvider.getName(e);i&&r.push(this.descriptions.createDescription(e,i,n))}async computeLocalScopes(e,r=Cr.CancellationToken.None){let n=e.parseResult.value,i=new Ic;for(let a of _c(n))await Gi(r),this.processNode(a,e,i);return i}processNode(e,r,n){let i=e.$container;if(i){let a=this.nameProvider.getName(e);a&&n.add(i,this.descriptions.createDescription(e,a,r))}}}});var Cg,F2,Pze,FM=M(()=>{"use strict";Rs();Cg=class{static{o(this,"StreamScope")}constructor(e,r,n){var i;this.elements=e,this.outerScope=r,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let r=this.caseInsensitive?this.elements.find(n=>n.name.toLowerCase()===e.toLowerCase()):this.elements.find(n=>n.name===e);if(r)return r;if(this.outerScope)return this.outerScope.getElement(e)}},F2=class{static{o(this,"MapScope")}constructor(e,r,n){var i;this.elements=new Map,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1;for(let a of e){let s=this.caseInsensitive?a.name.toLowerCase():a.name;this.elements.set(s,a)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getAllElements(){let e=tn(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},Pze={getElement(){},getAllElements(){return $v}}});var Ag,z2,m0,Ok,_g,Pk=M(()=>{"use strict";Ag=class{static{o(this,"DisposableCache")}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")}},z2=class extends Ag{static{o(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){let n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},m0=class extends Ag{static{o(this,"ContextCache")}constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();let i=this.cacheForContext(e);if(i.has(r))return i.get(r);if(n){let a=n();return i.set(r,a),a}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){let r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){let r=this.converter(e),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},Ok=class extends m0{static{o(this,"DocumentCache")}constructor(e){super(r=>r.toString()),this.onDispose(e.workspace.DocumentBuilder.onUpdate((r,n)=>{let i=r.concat(n);for(let a of i)this.clear(a)}))}},_g=class extends z2{static{o(this,"WorkspaceCache")}constructor(e){super(),this.onDispose(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}});var G2,zM=M(()=>{"use strict";FM();es();Rs();Pk();G2=class{static{o(this,"DefaultScopeProvider")}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 _g(e.shared)}getScope(e){let r=[],n=this.reflection.getReferenceType(e),i=Fi(e.container).precomputedScopes;if(i){let s=e.container;do{let l=i.get(s);l.length>0&&r.push(tn(l).filter(u=>this.reflection.isSubtype(u.type,n))),s=s.$container}while(s)}let a=this.getGlobalScope(n,e);for(let s=r.length-1;s>=0;s--)a=this.createScope(r[s],a);return a}createScope(e,r,n){return new Cg(tn(e),r,n)}createScopeForNodes(e,r,n){let i=tn(e).map(a=>{let s=this.nameProvider.getName(a);if(s)return this.descriptions.createDescription(a,s)}).nonNullable();return new Cg(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new F2(this.indexManager.allElements(e)))}}});function GM(t){return typeof t.$comment=="string"}function vce(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}var $2,Bk=M(()=>{"use strict";MM();Yo();es();Pl();o(GM,"isAstNodeWithComment");o(vce,"isIntermediateReference");$2=class{static{o(this,"DefaultJsonSerializer")}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,r={}){let n=r?.replacer,i=o((s,l)=>this.replacer(s,l,r),"defaultReplacer"),a=n?(s,l)=>n(s,l,i):i;try{return this.currentDocument=Fi(e),JSON.stringify(e,a,r?.space)}finally{this.currentDocument=void 0}}deserialize(e,r={}){let n=JSON.parse(e);return this.linkNode(n,n,r),n}replacer(e,r,{refText:n,sourceText:i,textRegions:a,comments:s,uriConverter:l}){var u,h,f,d;if(!this.ignoreProperties.has(e))if(ma(r)){let p=r.ref,m=n?r.$refText:void 0;if(p){let g=Fi(p),y="";this.currentDocument&&this.currentDocument!==g&&(l?y=l(g.uri,r):y=g.uri.toString());let v=this.astNodeLocator.getAstNodePath(p);return{$ref:`${y}#${v}`,$refText:m}}else return{$error:(h=(u=r.error)===null||u===void 0?void 0:u.message)!==null&&h!==void 0?h:"Could not resolve reference",$refText:m}}else if(ei(r)){let p;if(a&&(p=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},r)),(!e||r.$document)&&p?.$textRegion&&(p.$textRegion.documentURI=(f=this.currentDocument)===null||f===void 0?void 0:f.uri.toString())),i&&!e&&(p??(p=Object.assign({},r)),p.$sourceText=(d=r.$cstNode)===null||d===void 0?void 0:d.text),s){p??(p=Object.assign({},r));let m=this.commentProvider.getComment(r);m&&(p.$comment=m.replace(/\r/g,""))}return p??r}else return r}addAstNodeRegionWithAssignmentsTo(e){let r=o(n=>({offset:n.offset,end:n.end,length:n.length,range:n.range}),"createDocumentSegment");if(e.$cstNode){let n=e.$textRegion=r(e.$cstNode),i=n.assignments={};return Object.keys(e).filter(a=>!a.startsWith("$")).forEach(a=>{let s=eR(e.$cstNode,a).map(r);s.length!==0&&(i[a]=s)}),e}}linkNode(e,r,n,i,a,s){for(let[u,h]of Object.entries(e))if(Array.isArray(h))for(let f=0;f{"use strict";Mc();V2=class{static{o(this,"DefaultServiceRegistry")}register(e){if(!this.singleton&&!this.map){this.singleton=e;return}if(!this.map&&(this.map={},this.singleton)){for(let r of this.singleton.LanguageMetaData.fileExtensions)this.map[r]=this.singleton;this.singleton=void 0}for(let r of e.LanguageMetaData.fileExtensions)this.map[r]!==void 0&&this.map[r]!==e&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${e.LanguageMetaData.languageId}'.`),this.map[r]=e}getServices(e){if(this.singleton!==void 0)return this.singleton;if(this.map===void 0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");let r=ss.extname(e),n=this.map[r];if(!n)throw new Error(`The service registry contains no services for the extension '${r}'.`);return n}get all(){return this.singleton!==void 0?[this.singleton]:this.map!==void 0?Object.values(this.map):[]}}});function Fk(t){return{code:t}}var Lg,U2,H2=M(()=>{"use strict";Sg();Qo();Rs();o(Fk,"diagnosticData");(function(t){t.all=["fast","slow","built-in"]})(Lg||(Lg={}));U2=class{static{o(this,"ValidationRegistry")}constructor(e){this.entries=new Ic,this.reflection=e.shared.AstReflection}register(e,r=this,n="fast"){if(n==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[i,a]of Object.entries(e)){let s=a;if(Array.isArray(s))for(let l of s){let u={check:this.wrapValidationException(l,r),category:n};this.addEntry(i,u)}else if(typeof s=="function"){let l={check:this.wrapValidationException(s,r),category:n};this.addEntry(i,l)}}}wrapValidationException(e,r){return async(n,i,a)=>{try{await e.call(r,n,i,a)}catch(s){if(sf(s))throw s;console.error("An error occurred during validation:",s);let l=s instanceof Error?s.message:String(s);s instanceof Error&&s.stack&&console.error(s.stack),i("error","An error occurred during validation: "+l,{node:n})}}}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=tn(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}}});function xce(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=Jv(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=rR(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}function zk(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}var W2,$u,VM=M(()=>{"use strict";Ko();Pl();es();Ml();Qo();H2();W2=class{static{o(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,r={},n=Cr.CancellationToken.None){let i=e.parseResult,a=[];if(await Gi(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(i,a,r),r.stopAfterLexingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===$u.LexingError})||(this.processParsingErrors(i,a,r),r.stopAfterParsingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===$u.ParsingError}))||(this.processLinkingErrors(e,a,r),r.stopAfterLinkingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===$u.LinkingError}))))return a;try{a.push(...await this.validateAst(i.value,r,n))}catch(s){if(sf(s))throw s;console.error("An error occurred during validation:",s)}return await Gi(n),a}processLexingErrors(e,r,n){for(let i of e.lexerErrors){let a={severity:zk("error"),range:{start:{line:i.line-1,character:i.column-1},end:{line:i.line-1,character:i.column+i.length-1}},message:i.message,data:Fk($u.LexingError),source:this.getSource()};r.push(a)}}processParsingErrors(e,r,n){for(let i of e.parserErrors){let a;if(isNaN(i.token.startOffset)){if("previousToken"in i){let s=i.previousToken;if(isNaN(s.startOffset)){let l={line:0,character:0};a={start:l,end:l}}else{let l={line:s.endLine-1,character:s.endColumn};a={start:l,end:l}}}}else a=$m(i.token);if(a){let s={severity:zk("error"),range:a,message:i.message,data:Fk($u.ParsingError),source:this.getSource()};r.push(s)}}}processLinkingErrors(e,r,n){for(let i of e.references){let a=i.error;if(a){let s={node:a.container,property:a.property,index:a.index,data:{code:$u.LinkingError,containerType:a.container.$type,property:a.property,refText:a.reference.$refText}};r.push(this.toDiagnostic("error",a.message,s))}}}async validateAst(e,r,n=Cr.CancellationToken.None){let i=[],a=o((s,l,u)=>{i.push(this.toDiagnostic(s,l,u))},"acceptor");return await Promise.all(jo(e).map(async s=>{await Gi(n);let l=this.validationRegistry.getChecks(s.$type,r.categories);for(let u of l)await u(s,a,n)})),i}toDiagnostic(e,r,n){return{message:r,range:xce(n),severity:zk(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};o(xce,"getDiagnosticRange");o(zk,"toDiagnosticSeverity");(function(t){t.LexingError="lexing-error",t.ParsingError="parsing-error",t.LinkingError="linking-error"})($u||($u={}))});var Y2,q2,UM=M(()=>{"use strict";Ko();Yo();es();Ml();Qo();Mc();Y2=class{static{o(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n=Fi(e)){r??(r=this.nameProvider.getName(e));let i=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${i} has no name.`);let a,s=o(()=>{var l;return a??(a=Hd((l=this.nameProvider.getNameNode(e))!==null&&l!==void 0?l:e.$cstNode))},"nameSegmentGetter");return{node:e,name:r,get nameSegment(){return s()},selectionSegment:Hd(e.$cstNode),type:e.$type,documentUri:n.uri,path:i}}},q2=class{static{o(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,r=Cr.CancellationToken.None){let n=[],i=e.parseResult.value;for(let a of jo(i))await Gi(r),Um(a).filter(s=>!Vd(s)).forEach(s=>{let l=this.createDescription(s);l&&n.push(l)});return n}createDescription(e){let r=e.reference.$nodeDescription,n=e.reference.$refNode;if(!r||!n)return;let i=Fi(e.container).uri;return{sourceUri:i,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:r.documentUri,targetPath:r.path,segment:Hd(n),local:ss.equals(r.documentUri,i)}}}});var X2,HM=M(()=>{"use strict";X2=class{static{o(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((i,a)=>{if(!i||a.length===0)return i;let s=a.indexOf(this.indexSeparator);if(s>0){let l=a.substring(0,s),u=parseInt(a.substring(s+1)),h=i[l];return h?.[u]}return i[a]},e)}}});var j2,WM=M(()=>{"use strict";Qo();j2=class{static{o(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new as,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var r,n;this.workspaceConfig=(n=(r=e.capabilities.workspace)===null||r===void 0?void 0:r.configuration)!==null&&n!==void 0?n:!1}async initialized(e){if(this.workspaceConfig){if(e.register){let r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=await e.fetchConfiguration(r);r.forEach((i,a)=>{this.updateSectionConfiguration(i.section,n[a])})}}this._ready.resolve()}updateConfiguration(e){e.settings&&Object.keys(e.settings).forEach(r=>{this.updateSectionConfiguration(r,e.settings[r])})}updateSectionConfiguration(e,r){this.settings[e]=r}async getConfiguration(e,r){await this.ready;let n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]}toSectionName(e){return`${e}`}}});var g0,YM=M(()=>{"use strict";(function(t){function e(r){return{dispose:o(async()=>await r(),"dispose")}}o(e,"create"),t.create=e})(g0||(g0={}))});var K2,qM=M(()=>{"use strict";Ko();YM();Sg();Qo();Rs();H2();Eg();K2=class{static{o(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Ic,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=bn.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.indexManager=e.workspace.IndexManager,this.serviceRegistry=e.ServiceRegistry}async build(e,r={},n=Cr.CancellationToken.None){var i,a;for(let s of e){let l=s.uri.toString();if(s.state===bn.Validated){if(typeof r.validation=="boolean"&&r.validation)s.state=bn.IndexedReferences,s.diagnostics=void 0,this.buildState.delete(l);else if(typeof r.validation=="object"){let u=this.buildState.get(l),h=(i=u?.result)===null||i===void 0?void 0:i.validationChecks;if(h){let d=((a=r.validation.categories)!==null&&a!==void 0?a:Lg.all).filter(p=>!h.includes(p));d.length>0&&(this.buildState.set(l,{completed:!1,options:{validation:Object.assign(Object.assign({},r.validation),{categories:d})},result:u.result}),s.state=bn.IndexedReferences)}}}else this.buildState.delete(l)}this.currentState=bn.Changed,await this.emitUpdate(e.map(s=>s.uri),[]),await this.buildDocuments(e,r,n)}async update(e,r,n=Cr.CancellationToken.None){this.currentState=bn.Changed;for(let s of r)this.langiumDocuments.deleteDocument(s),this.buildState.delete(s.toString()),this.indexManager.remove(s);for(let s of e){if(!this.langiumDocuments.invalidateDocument(s)){let u=this.langiumDocumentFactory.fromModel({$type:"INVALID"},s);u.state=bn.Changed,this.langiumDocuments.addDocument(u)}this.buildState.delete(s.toString())}let i=tn(e).concat(r).map(s=>s.toString()).toSet();this.langiumDocuments.all.filter(s=>!i.has(s.uri.toString())&&this.shouldRelink(s,i)).forEach(s=>{this.serviceRegistry.getServices(s.uri).references.Linker.unlink(s),s.state=Math.min(s.state,bn.ComputedScopes),s.diagnostics=void 0}),await this.emitUpdate(e,r),await Gi(n);let a=this.langiumDocuments.all.filter(s=>{var l;return s.staten(e,r)))}shouldRelink(e,r){return e.references.some(n=>n.error!==void 0)?!0:this.indexManager.isAffected(e,r)}onUpdate(e){return this.updateListeners.push(e),g0.create(()=>{let r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}async buildDocuments(e,r,n){this.prepareBuild(e,r),await this.runCancelable(e,bn.Parsed,n,a=>this.langiumDocumentFactory.update(a,n)),await this.runCancelable(e,bn.IndexedContent,n,a=>this.indexManager.updateContent(a,n)),await this.runCancelable(e,bn.ComputedScopes,n,async a=>{let s=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.precomputedScopes=await s.computeLocalScopes(a,n)}),await this.runCancelable(e,bn.Linked,n,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,n)),await this.runCancelable(e,bn.IndexedReferences,n,a=>this.indexManager.updateReferences(a,n));let i=e.filter(a=>this.shouldValidate(a));await this.runCancelable(i,bn.Validated,n,a=>this.validate(a,n));for(let a of e){let s=this.buildState.get(a.uri.toString());s&&(s.completed=!0)}}prepareBuild(e,r){for(let n of e){let i=n.uri.toString(),a=this.buildState.get(i);(!a||a.completed)&&this.buildState.set(i,{completed:!1,options:r,result:a?.result})}}async runCancelable(e,r,n,i){let a=e.filter(s=>s.state{this.buildPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let i;if(r&&"path"in r?i=r:n=r,n??(n=Cr.CancellationToken.None),i){let a=this.langiumDocuments.getDocument(i);if(a&&a.state>e)return Promise.resolve(i)}return this.currentState>=e?Promise.resolve(void 0):n.isCancellationRequested?Promise.reject(Rc):new Promise((a,s)=>{let l=this.onBuildPhase(e,()=>{if(l.dispose(),u.dispose(),i){let h=this.langiumDocuments.getDocument(i);a(h?.uri)}else a(void 0)}),u=n.onCancellationRequested(()=>{l.dispose(),u.dispose(),s(Rc)})})}async notifyBuildPhase(e,r,n){if(e.length===0)return;let i=this.buildPhaseListeners.get(r);for(let a of i)await Gi(n),await a(e,n)}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,r){var n,i;let a=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,s=this.getBuildOptions(e).validation,l=typeof s=="object"?s:void 0,u=await a.validateDocument(e,l,r);e.diagnostics?e.diagnostics.push(...u):e.diagnostics=u;let h=this.buildState.get(e.uri.toString());if(h){(n=h.result)!==null&&n!==void 0||(h.result={});let f=(i=l?.categories)!==null&&i!==void 0?i:Lg.all;h.result.validationChecks?h.result.validationChecks.push(...f):h.result.validationChecks=[...f]}}getBuildOptions(e){var r,n;return(n=(r=this.buildState.get(e.uri.toString()))===null||r===void 0?void 0:r.options)!==null&&n!==void 0?n:{}}}});var Q2,XM=M(()=>{"use strict";es();Pk();Ko();Rs();Mc();Q2=class{static{o(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new m0,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){let n=Fi(e).uri,i=[];return this.referenceIndex.forEach(a=>{a.forEach(s=>{ss.equals(s.targetUri,n)&&s.targetPath===r&&i.push(s)})}),tn(i)}allElements(e,r){let n=tn(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,r){var n;return r?this.symbolByTypeIndex.get(e,r,()=>{var a;return((a=this.symbolIndex.get(e))!==null&&a!==void 0?a:[]).filter(l=>this.astReflection.isSubtype(l.type,r))}):(n=this.symbolIndex.get(e))!==null&&n!==void 0?n:[]}remove(e){let r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r),this.referenceIndex.delete(r)}async updateContent(e,r=Cr.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.computeExports(e,r),a=e.uri.toString();this.symbolIndex.set(a,i),this.symbolByTypeIndex.clear(a)}async updateReferences(e,r=Cr.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),i)}isAffected(e,r){let n=this.referenceIndex.get(e.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}}});var Z2,jM=M(()=>{"use strict";Ko();Qo();Mc();Z2=class{static{o(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new as,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 r;this.folders=(r=e.workspaceFolders)!==null&&r!==void 0?r:void 0}initialized(e){return this.mutex.write(r=>{var n;return this.initializeWorkspace((n=this.folders)!==null&&n!==void 0?n:[],r)})}async initializeWorkspace(e,r=Cr.CancellationToken.None){let n=await this.performStartup(e);await Gi(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(e){let r=this.serviceRegistry.all.flatMap(a=>a.LanguageMetaData.fileExtensions),n=[],i=o(a=>{n.push(a),this.langiumDocuments.hasDocument(a.uri)||this.langiumDocuments.addDocument(a)},"collector");return await this.loadAdditionalDocuments(e,i),await Promise.all(e.map(a=>[a,this.getRootFolder(a)]).map(async a=>this.traverseFolder(...a,r,i))),this._ready.resolve(),n}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return Os.parse(e.uri)}async traverseFolder(e,r,n,i){let a=await this.fileSystemProvider.readDirectory(r);await Promise.all(a.map(async s=>{if(this.includeEntry(e,s,n)){if(s.isDirectory)await this.traverseFolder(e,s.uri,n,i);else if(s.isFile){let l=await this.langiumDocuments.getOrCreateDocument(s.uri);i(l)}}}))}includeEntry(e,r,n){let i=ss.basename(r.uri);if(i.startsWith("."))return!1;if(r.isDirectory)return i!=="node_modules"&&i!=="out";if(r.isFile){let a=ss.extname(r.uri);return n.includes(a)}return!1}}});function bce(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function QM(t){return t&&"modes"in t&&"defaultMode"in t}function KM(t){return!bce(t)&&!QM(t)}var J2,ZM=M(()=>{"use strict";s0();J2=class{static{o(this,"DefaultLexer")}constructor(e){let r=e.parser.TokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=KM(r)?Object.values(r):r;this.chevrotainLexer=new oi(n,{positionTracking:"full"})}get definition(){return this.tokenTypes}tokenize(e){var r;let n=this.chevrotainLexer.tokenize(e);return{tokens:n.tokens,errors:n.errors,hidden:(r=n.groups.hidden)!==null&&r!==void 0?r:[]}}toTokenTypeDictionary(e){if(KM(e))return e;let r=QM(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}};o(bce,"isTokenTypeArray");o(QM,"isIMultiModeLexerDefinition");o(KM,"isTokenTypeDictionary")});function tI(t,e,r){let n,i;typeof t=="string"?(i=e,n=r):(i=t.range.start,n=e),i||(i=Xr.create(0,0));let a=kce(t),s=nI(n),l=Fze({lines:a,position:i,options:s});return Uze({index:0,tokens:l,position:i})}function rI(t,e){let r=nI(e),n=kce(t);if(n.length===0)return!1;let i=n[0],a=n[n.length-1],s=r.start,l=r.end;return!!s?.exec(i)&&!!l?.exec(a)}function kce(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(YN)}function Fze(t){var e,r,n;let i=[],a=t.position.line,s=t.position.character;for(let l=0;l=f.length){if(i.length>0){let m=Xr.create(a,s);i.push({type:"break",content:"",range:Dr.create(m,m)})}}else{wce.lastIndex=d;let m=wce.exec(f);if(m){let g=m[0],y=m[1],v=Xr.create(a,s+d),x=Xr.create(a,s+d+g.length);i.push({type:"tag",content:y,range:Dr.create(v,x)}),d+=g.length,d=eI(f,d)}if(d0&&i[i.length-1].type==="break"?i.slice(0,-1):i}function zze(t,e,r,n){let i=[];if(t.length===0){let a=Xr.create(r,n),s=Xr.create(r,n+e.length);i.push({type:"text",content:e,range:Dr.create(a,s)})}else{let a=0;for(let l of t){let u=l.index,h=e.substring(a,u);h.length>0&&i.push({type:"text",content:e.substring(a,u),range:Dr.create(Xr.create(r,a+n),Xr.create(r,u+n))});let f=h.length+1,d=l[1];if(i.push({type:"inline-tag",content:d,range:Dr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+d.length+n))}),f+=d.length,l.length===4){f+=l[2].length;let p=l[3];i.push({type:"text",content:p,range:Dr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+p.length+n))})}else i.push({type:"text",content:"",range:Dr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+n))});a=u+l[0].length}let s=e.substring(a);s.length>0&&i.push({type:"text",content:s,range:Dr.create(Xr.create(r,a+n),Xr.create(r,a+n+s.length))})}return i}function eI(t,e){let r=t.substring(e).match(Gze);return r?e+r.index:t.length}function Vze(t){let e=t.match($ze);if(e&&typeof e.index=="number")return e.index}function Uze(t){var e,r,n,i;let a=Xr.create(t.position.line,t.position.character);if(t.tokens.length===0)return new Gk([],Dr.create(a,a));let s=[];for(;t.index0){let u=eI(e,a);s=e.substring(u),e=e.substring(0,a)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(s=`\`${s}\``),(i=(n=r.renderLink)===null||n===void 0?void 0:n.call(r,e,s))!==null&&i!==void 0?i:Xze(e,s)}}function Xze(t,e){try{return Os.parse(t,!0),`[${e}](${t})`}catch{return t}}function Tce(t){return t.endsWith(` +`)?` +`:` + +`}var wce,Bze,Gze,$ze,Gk,ex,tx,$k,iI=M(()=>{"use strict";uM();Wm();Mc();o(tI,"parseJSDoc");o(rI,"isJSDoc");o(kce,"getLines");wce=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,Bze=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;o(Fze,"tokenize");o(zze,"buildInlineTokens");Gze=/\S/,$ze=/\s*$/;o(eI,"skipWhitespace");o(Vze,"lastCharacter");o(Uze,"parseJSDocComment");o(Hze,"parseJSDocElement");o(Wze,"appendEmptyLine");o(Ece,"parseJSDocText");o(Yze,"parseJSDocInline");o(Sce,"parseJSDocTag");o(Cce,"parseJSDocLine");o(nI,"normalizeOptions");o(JM,"normalizeOption");Gk=class{static{o(this,"JSDocCommentImpl")}constructor(e,r){this.elements=e,this.range=r}getTag(e){return this.getAllTags().find(r=>r.name===e)}getTags(e){return this.getAllTags().filter(r=>r.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let r of this.elements)if(e.length===0)e=r.toString();else{let n=r.toString();e+=Tce(e)+n}return e.trim()}toMarkdown(e){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{let i=n.toMarkdown(e);r+=Tce(r)+i}return r.trim()}},ex=class{static{o(this,"JSDocTagImpl")}constructor(e,r,n,i){this.name=e,this.content=r,this.inline=n,this.range=i}toString(){let e=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e} +${r}`),this.inline?`{${e}}`:e}toMarkdown(e){var r,n;return(n=(r=e?.renderTag)===null||r===void 0?void 0:r.call(e,this))!==null&&n!==void 0?n:this.toMarkdownDefault(e)}toMarkdownDefault(e){let r=this.content.toMarkdown(e);if(this.inline){let a=qze(this.name,r,e??{});if(typeof a=="string")return a}let n="";e?.tag==="italic"||e?.tag===void 0?n="*":e?.tag==="bold"?n="**":e?.tag==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} \u2014 ${r}`:this.content.inlines.length>1&&(i=`${i} +${r}`),this.inline?`{${i}}`:i}};o(qze,"renderInlineTag");o(Xze,"renderLinkDefault");tx=class{static{o(this,"JSDocTextImpl")}constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;rn.range.start.line&&(e+=` +`)}return e}toMarkdown(e){let r="";for(let n=0;ni.range.start.line&&(r+=` +`)}return r}},$k=class{static{o(this,"JSDocLineImpl")}constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};o(Tce,"fillNewlines")});var rx,aI=M(()=>{"use strict";es();iI();rx=class{static{o(this,"JSDocDocumentationProvider")}constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let r=this.commentProvider.getComment(e);if(r&&rI(r))return tI(r).toMarkdown({renderLink:o((i,a)=>this.documentationLinkRenderer(e,i,a),"renderLink"),renderTag:o(i=>this.documentationTagRenderer(e,i),"renderTag")})}documentationLinkRenderer(e,r,n){var i;let a=(i=this.findNameInPrecomputedScopes(e,r))!==null&&i!==void 0?i:this.findNameInGlobalScope(e,r);if(a&&a.nameSegment){let s=a.nameSegment.range.start.line+1,l=a.nameSegment.range.start.character+1,u=a.documentUri.with({fragment:`L${s},${l}`});return`[${n}](${u.toString()})`}else return}documentationTagRenderer(e,r){}findNameInPrecomputedScopes(e,r){let i=Fi(e).precomputedScopes;if(!i)return;let a=e;do{let l=i.get(a).find(u=>u.name===r);if(l)return l;a=a.$container}while(a)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(i=>i.name===r)}}});var nx,sI=M(()=>{"use strict";Bk();Ml();nx=class{static{o(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var r;return GM(e)?e.$comment:(r=BD(e.$cstNode,this.grammarConfig().multilineCommentRules))===null||r===void 0?void 0:r.text}}});var li={};var oI=M(()=>{"use strict";Er(li,ka(AM(),1))});var ix,lI,cI,uI=M(()=>{"use strict";Qo();oI();ix=class{static{o(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e){return Promise.resolve(this.syncParser.parse(e))}},lI=class{static{o(this,"AbstractThreadedAsyncParser")}constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length{if(this.queue.length>0){let r=this.queue.shift();r&&(e.lock(),r.resolve(e))}}),this.workerPool.push(e)}}async parse(e,r){let n=await this.acquireParserWorker(r),i=new as,a,s=r.onCancellationRequested(()=>{a=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(l=>{let u=this.hydrator.hydrate(l);i.resolve(u)}).catch(l=>{i.reject(l)}).finally(()=>{s.dispose(),clearTimeout(a)}),i.promise}terminateWorker(e){e.terminate();let r=this.workerPool.indexOf(e);r>=0&&this.workerPool.splice(r,1)}async acquireParserWorker(e){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new as;return e.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(Rc)}),this.queue.push(r),r.promise}},cI=class{static{o(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,i){this.onReadyEmitter=new li.Emitter,this.deferred=new as,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=i,r(a=>{let s=a;this.deferred.resolve(s),this.unlock()}),n(a=>{this.deferred.reject(a),this.unlock()})}terminate(){this.deferred.reject(Rc),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new as,this.sendMessage(e),this.deferred.promise}}});var ax,hI=M(()=>{"use strict";Ko();Qo();ax=class{static{o(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new Cr.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let r=new Cr.CancellationTokenSource;return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n){let i=new as,a={action:r,deferred:i,cancellationToken:n??Cr.CancellationToken.None};return e.push(a),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(e.map(async({action:r,deferred:n,cancellationToken:i})=>{try{let a=await Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){sf(a)?n.resolve(void 0):n.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}});var sx,fI=M(()=>{"use strict";Ck();Ac();Yo();es();Sg();Ml();sx=class{static{o(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new p0,this.tokenTypeIdMap=new p0,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors.map(r=>Object.assign({},r)),parserErrors:e.parserErrors.map(r=>Object.assign({},r)),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}createDehyrationContext(e){let r=new Map,n=new Map;for(let i of jo(e))r.set(i,{});if(e.$cstNode)for(let i of Ud(e.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)ei(l)?s.push(this.dehydrateAstNode(l,r)):ma(l)?s.push(this.dehydrateReference(l,r)):s.push(l)}else ei(a)?n[i]=this.dehydrateAstNode(a,r):ma(a)?n[i]=this.dehydrateReference(a,r):a!==void 0&&(n[i]=a);return n}dehydrateReference(e,r){let n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){let n=r.cstNodes.get(e);return Gv(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),io(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):Jh(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){let r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){let r=new Map,n=new Map;for(let a of jo(e))r.set(a,{});let i;if(e.$cstNode)for(let a of Ud(e.$cstNode)){let s;"fullText"in a?(s=new vg(a.fullText),i=s):"content"in a?s=new u0:"tokenType"in a&&(s=this.hydrateCstLeafNode(a)),s&&(n.set(a,s),s.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)ei(l)?s.push(this.setParent(this.hydrateAstNode(l,r),n)):ma(l)?s.push(this.hydrateReference(l,n,i,r)):s.push(l)}else ei(a)?n[i]=this.setParent(this.hydrateAstNode(a,r),n):ma(a)?n[i]=this.hydrateReference(a,n,i,r):a!==void 0&&(n[i]=a);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){let i=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=r.astNodes.get(e.astNode),io(i))for(let a of e.content){let s=this.hydrateCstNode(a,r,n++);i.content.push(s)}return i}hydrateCstLeafNode(e){let r=this.getTokenType(e.tokenType),n=e.offset,i=e.length,a=e.startLine,s=e.startColumn,l=e.endLine,u=e.endColumn,h=e.hidden;return new c0(n,i,{start:{line:a,character:s},end:{line:l,character:u}},r,h)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap();let r=this.grammarElementIdMap.getKey(e);if(r)return r;throw new Error("Invalid grammar element id: "+e)}createGrammarElementIdMap(){let e=0;for(let r of jo(this.grammar))Hv(r)&&this.grammarElementIdMap.set(r,e++)}}});function lo(t){return{documentation:{CommentProvider:o(e=>new nx(e),"CommentProvider"),DocumentationProvider:o(e=>new rx(e),"DocumentationProvider")},parser:{AsyncParser:o(e=>new ix(e),"AsyncParser"),GrammarConfig:o(e=>lR(e),"GrammarConfig"),LangiumParser:o(e=>vM(e),"LangiumParser"),CompletionParser:o(e=>gM(e),"CompletionParser"),ValueConverter:o(()=>new d0,"ValueConverter"),TokenBuilder:o(()=>new f0,"TokenBuilder"),Lexer:o(e=>new J2(e),"Lexer"),ParserErrorMessageProvider:o(()=>new xg,"ParserErrorMessageProvider")},workspace:{AstNodeLocator:o(()=>new X2,"AstNodeLocator"),AstNodeDescriptionProvider:o(e=>new Y2(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:o(e=>new q2(e),"ReferenceDescriptionProvider")},references:{Linker:o(e=>new I2(e),"Linker"),NameProvider:o(()=>new O2,"NameProvider"),ScopeProvider:o(e=>new G2(e),"ScopeProvider"),ScopeComputation:o(e=>new B2(e),"ScopeComputation"),References:o(e=>new P2(e),"References")},serializer:{Hydrator:o(e=>new sx(e),"Hydrator"),JsonSerializer:o(e=>new $2(e),"JsonSerializer")},validation:{DocumentValidator:o(e=>new W2(e),"DocumentValidator"),ValidationRegistry:o(e=>new U2(e),"ValidationRegistry")},shared:o(()=>t.shared,"shared")}}function co(t){return{ServiceRegistry:o(()=>new V2,"ServiceRegistry"),workspace:{LangiumDocuments:o(e=>new M2(e),"LangiumDocuments"),LangiumDocumentFactory:o(e=>new R2(e),"LangiumDocumentFactory"),DocumentBuilder:o(e=>new K2(e),"DocumentBuilder"),IndexManager:o(e=>new Q2(e),"IndexManager"),WorkspaceManager:o(e=>new Z2(e),"WorkspaceManager"),FileSystemProvider:o(e=>t.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:o(()=>new ax,"WorkspaceLock"),ConfigurationProvider:o(e=>new j2(e),"ConfigurationProvider")}}}var dI=M(()=>{"use strict";cR();yM();xM();bM();wM();IM();OM();PM();BM();zM();Bk();$M();VM();H2();UM();HM();WM();qM();Eg();XM();jM();ZM();aI();sI();N2();uI();hI();fI();o(lo,"createDefaultCoreModule");o(co,"createDefaultSharedCoreModule")});function $i(t,e,r,n,i,a,s,l,u){let h=[t,e,r,n,i,a,s,l,u].reduce(Vk,{});return Dce(h)}function Lce(t){if(t&&t[mI])for(let e of Object.values(t))Lce(e);return t}function Dce(t,e){let r=new Proxy({},{deleteProperty:o(()=>!1,"deleteProperty"),get:o((n,i)=>_ce(n,i,t,e||r),"get"),getOwnPropertyDescriptor:o((n,i)=>(_ce(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:o((n,i)=>i in t,"has"),ownKeys:o(()=>[...Reflect.ownKeys(t),mI],"ownKeys")});return r[mI]=!0,r}function _ce(t,e,r,n){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:t[e]});if(t[e]===Ace)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. See https://langium.org/docs/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){let i=r[e];t[e]=Ace;try{t[e]=typeof i=="function"?i(n):Dce(i,n)}catch(a){throw t[e]=a instanceof Error?a:void 0,a}return t[e]}else return}function Vk(t,e){if(e){for(let[r,n]of Object.entries(e))if(n!==void 0){let i=t[r];i!==null&&n!==null&&typeof i=="object"&&typeof n=="object"?t[r]=Vk(i,n):t[r]=n}}return t}var pI,mI,Ace,gI=M(()=>{"use strict";(function(t){t.merge=(e,r)=>Vk(Vk({},e),r)})(pI||(pI={}));o($i,"inject");mI=Symbol("isProxy");o(Lce,"eagerLoad");o(Dce,"_inject");Ace=Symbol();o(_ce,"_resolve");o(Vk,"_merge")});var Nce=M(()=>{"use strict"});var Rce=M(()=>{"use strict";sI();aI();iI()});var Mce=M(()=>{"use strict"});var Ice=M(()=>{"use strict";cR();Mce()});var Oce=M(()=>{"use strict"});var Pce=M(()=>{"use strict";uI();yM();Ck();xM();N2();ZM();Oce();bM();wM()});var Bce=M(()=>{"use strict";IM();OM();PM();FM();BM();zM()});var Fce=M(()=>{"use strict";fI();Bk()});var Uk,uo,yI=M(()=>{"use strict";Uk=class{static{o(this,"EmptyFileSystemProvider")}readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}},uo={fileSystemProvider:o(()=>new Uk,"fileSystemProvider")}});function Qze(){let t=$i(co(uo),Kze),e=$i(lo({shared:t}),jze);return t.ServiceRegistry.register(e),e}function of(t){var e;let r=Qze(),n=r.serializer.JsonSerializer.deserialize(t);return r.shared.workspace.LangiumDocumentFactory.fromModel(n,Os.parse(`memory://${(e=n.name)!==null&&e!==void 0?e:"grammar"}.langium`)),n}var jze,Kze,zce=M(()=>{"use strict";dI();gI();Ac();yI();Mc();jze={Grammar:o(()=>{},"Grammar"),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},Kze={AstReflection:o(()=>new Vm,"AstReflection")};o(Qze,"createMinimalGrammarServices");o(of,"loadGrammarFromJson")});var Gr={};vr(Gr,{AstUtils:()=>AT,BiMap:()=>p0,Cancellation:()=>Cr,ContextCache:()=>m0,CstUtils:()=>mT,DONE_RESULT:()=>Ja,Deferred:()=>as,Disposable:()=>g0,DisposableCache:()=>Ag,DocumentCache:()=>Ok,EMPTY_STREAM:()=>$v,ErrorWithLocation:()=>Wd,GrammarUtils:()=>MT,MultiMap:()=>Ic,OperationCancelled:()=>Rc,Reduction:()=>Gm,RegExpUtils:()=>NT,SimpleCache:()=>z2,StreamImpl:()=>ao,TreeStreamImpl:()=>Cc,URI:()=>Os,UriUtils:()=>ss,WorkspaceCache:()=>_g,assertUnreachable:()=>ef,delayNextTick:()=>NM,interruptAndCheck:()=>Gi,isOperationCancelled:()=>sf,loadGrammarFromJson:()=>of,setInterruptionPeriod:()=>hce,startCancelableOperation:()=>uce,stream:()=>tn});var Gce=M(()=>{"use strict";Pk();oI();Er(Gr,li);Sg();YM();gT();zce();Qo();Rs();Mc();es();Ko();Ml();Pl();Wm()});var $ce=M(()=>{"use strict";VM();H2()});var Vce=M(()=>{"use strict";UM();HM();WM();qM();Eg();yI();XM();hI();jM()});var ga={};vr(ga,{AbstractAstReflection:()=>$d,AbstractCstNode:()=>A2,AbstractLangiumParser:()=>_2,AbstractParserErrorMessageProvider:()=>_k,AbstractThreadedAsyncParser:()=>lI,AstUtils:()=>AT,BiMap:()=>p0,Cancellation:()=>Cr,CompositeCstNodeImpl:()=>u0,ContextCache:()=>m0,CstNodeBuilder:()=>C2,CstUtils:()=>mT,DONE_RESULT:()=>Ja,DatatypeSymbol:()=>Ak,DefaultAstNodeDescriptionProvider:()=>Y2,DefaultAstNodeLocator:()=>X2,DefaultAsyncParser:()=>ix,DefaultCommentProvider:()=>nx,DefaultConfigurationProvider:()=>j2,DefaultDocumentBuilder:()=>K2,DefaultDocumentValidator:()=>W2,DefaultHydrator:()=>sx,DefaultIndexManager:()=>Q2,DefaultJsonSerializer:()=>$2,DefaultLangiumDocumentFactory:()=>R2,DefaultLangiumDocuments:()=>M2,DefaultLexer:()=>J2,DefaultLinker:()=>I2,DefaultNameProvider:()=>O2,DefaultReferenceDescriptionProvider:()=>q2,DefaultReferences:()=>P2,DefaultScopeComputation:()=>B2,DefaultScopeProvider:()=>G2,DefaultServiceRegistry:()=>V2,DefaultTokenBuilder:()=>f0,DefaultValueConverter:()=>d0,DefaultWorkspaceLock:()=>ax,DefaultWorkspaceManager:()=>Z2,Deferred:()=>as,Disposable:()=>g0,DisposableCache:()=>Ag,DocumentCache:()=>Ok,DocumentState:()=>bn,DocumentValidator:()=>$u,EMPTY_SCOPE:()=>Pze,EMPTY_STREAM:()=>$v,EmptyFileSystem:()=>uo,EmptyFileSystemProvider:()=>Uk,ErrorWithLocation:()=>Wd,GrammarAST:()=>Yv,GrammarUtils:()=>MT,JSDocDocumentationProvider:()=>rx,LangiumCompletionParser:()=>D2,LangiumParser:()=>L2,LangiumParserErrorMessageProvider:()=>xg,LeafCstNodeImpl:()=>c0,MapScope:()=>F2,Module:()=>pI,MultiMap:()=>Ic,OperationCancelled:()=>Rc,ParserWorker:()=>cI,Reduction:()=>Gm,RegExpUtils:()=>NT,RootCstNodeImpl:()=>vg,SimpleCache:()=>z2,StreamImpl:()=>ao,StreamScope:()=>Cg,TextDocument:()=>Tg,TreeStreamImpl:()=>Cc,URI:()=>Os,UriUtils:()=>ss,ValidationCategory:()=>Lg,ValidationRegistry:()=>U2,ValueConverter:()=>Nc,WorkspaceCache:()=>_g,assertUnreachable:()=>ef,createCompletionParser:()=>gM,createDefaultCoreModule:()=>lo,createDefaultSharedCoreModule:()=>co,createGrammarConfig:()=>lR,createLangiumParser:()=>vM,delayNextTick:()=>NM,diagnosticData:()=>Fk,eagerLoad:()=>Lce,getDiagnosticRange:()=>xce,inject:()=>$i,interruptAndCheck:()=>Gi,isAstNode:()=>ei,isAstNodeDescription:()=>MD,isAstNodeWithComment:()=>GM,isCompositeCstNode:()=>io,isIMultiModeLexerDefinition:()=>QM,isJSDoc:()=>rI,isLeafCstNode:()=>Jh,isLinkingError:()=>Vd,isNamed:()=>yce,isOperationCancelled:()=>sf,isReference:()=>ma,isRootCstNode:()=>Gv,isTokenTypeArray:()=>bce,isTokenTypeDictionary:()=>KM,loadGrammarFromJson:()=>of,parseJSDoc:()=>tI,prepareLangiumParser:()=>nce,setInterruptionPeriod:()=>hce,startCancelableOperation:()=>uce,stream:()=>tn,toDiagnosticSeverity:()=>zk});var Oc=M(()=>{"use strict";dI();gI();$M();Nce();Yo();Rce();Ice();Pce();Bce();Fce();Gce();Er(ga,Gr);$ce();Vce();Ac()});function Kce(t){return Fl.isInstance(t,jce)}function Qce(t){return Fl.isInstance(t,vI)}function Zce(t){return Fl.isInstance(t,xI)}function Jce(t){return Fl.isInstance(t,tGe)}function eue(t){return Fl.isInstance(t,bI)}function rue(t){return Fl.isInstance(t,tue)}function nue(t){return Fl.isInstance(t,wI)}function aue(t){return Fl.isInstance(t,iue)}function oue(t){return Fl.isInstance(t,sue)}function cue(t){return Fl.isInstance(t,lue)}function hue(t){return Fl.isInstance(t,uue)}var Zze,Ot,Xce,jce,vI,Jze,eGe,xI,tGe,bI,tue,wI,iue,sue,lue,uue,rGe,fue,Fl,Uce,nGe,Hce,iGe,Wce,aGe,Yce,sGe,qce,oGe,lGe,cGe,uGe,hGe,fGe,zl,TI,kI,EI,SI,CI,dGe,pGe,mGe,gGe,Dg,y0,Zo,yGe,Jo=M(()=>{"use strict";Oc();Oc();Oc();Oc();Zze=Object.defineProperty,Ot=o((t,e)=>Zze(t,"name",{value:e,configurable:!0}),"__name"),Xce="Statement",jce="Architecture";o(Kce,"isArchitecture");Ot(Kce,"isArchitecture");vI="Branch";o(Qce,"isBranch");Ot(Qce,"isBranch");Jze="Checkout",eGe="CherryPicking",xI="Commit";o(Zce,"isCommit");Ot(Zce,"isCommit");tGe="Common";o(Jce,"isCommon");Ot(Jce,"isCommon");bI="GitGraph";o(eue,"isGitGraph");Ot(eue,"isGitGraph");tue="Info";o(rue,"isInfo");Ot(rue,"isInfo");wI="Merge";o(nue,"isMerge");Ot(nue,"isMerge");iue="Packet";o(aue,"isPacket");Ot(aue,"isPacket");sue="PacketBlock";o(oue,"isPacketBlock");Ot(oue,"isPacketBlock");lue="Pie";o(cue,"isPie");Ot(cue,"isPie");uue="PieSection";o(hue,"isPieSection");Ot(hue,"isPieSection");rGe="Direction",fue=class extends $d{static{o(this,"MermaidAstReflection")}static{Ot(this,"MermaidAstReflection")}getAllTypes(){return["Architecture","Branch","Checkout","CherryPicking","Commit","Common","Direction","Edge","GitGraph","Group","Info","Junction","Merge","Packet","PacketBlock","Pie","PieSection","Service","Statement"]}computeIsSubtype(t,e){switch(t){case vI:case Jze:case eGe:case xI:case wI:return this.isSubtype(Xce,e);case rGe:return this.isSubtype(bI,e);default:return!1}}getReferenceType(t){let e=`${t.container.$type}:${t.property}`;switch(e){default:throw new Error(`${e} is not a valid reference id.`)}}getTypeMetaData(t){switch(t){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:t,properties:[]}}}},Fl=new fue,nGe=Ot(()=>Uce??(Uce=of('{"$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"),iGe=Ot(()=>Hce??(Hce=of(`{"$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"),aGe=Ot(()=>Wce??(Wce=of('{"$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"),sGe=Ot(()=>Yce??(Yce=of('{"$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"),oGe=Ot(()=>qce??(qce=of(`{"$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"),lGe={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},cGe={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},uGe={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},hGe={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},fGe={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},zl={AstReflection:Ot(()=>new fue,"AstReflection")},TI={Grammar:Ot(()=>nGe(),"Grammar"),LanguageMetaData:Ot(()=>lGe,"LanguageMetaData"),parser:{}},kI={Grammar:Ot(()=>iGe(),"Grammar"),LanguageMetaData:Ot(()=>cGe,"LanguageMetaData"),parser:{}},EI={Grammar:Ot(()=>aGe(),"Grammar"),LanguageMetaData:Ot(()=>uGe,"LanguageMetaData"),parser:{}},SI={Grammar:Ot(()=>sGe(),"Grammar"),LanguageMetaData:Ot(()=>hGe,"LanguageMetaData"),parser:{}},CI={Grammar:Ot(()=>oGe(),"Grammar"),LanguageMetaData:Ot(()=>fGe,"LanguageMetaData"),parser:{}},dGe=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,pGe=/accTitle[\t ]*:([^\n\r]*)/,mGe=/title([\t ][^\n\r]*|)/,gGe={ACC_DESCR:dGe,ACC_TITLE:pGe,TITLE:mGe},Dg=class extends d0{static{o(this,"AbstractMermaidValueConverter")}static{Ot(this,"AbstractMermaidValueConverter")}runConverter(t,e,r){let n=this.runCommonConverter(t,e,r);return n===void 0&&(n=this.runCustomConverter(t,e,r)),n===void 0?super.runConverter(t,e,r):n}runCommonConverter(t,e,r){let n=gGe[t.name];if(n===void 0)return;let i=n.exec(e);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,` +`)}}},y0=class extends Dg{static{o(this,"CommonValueConverter")}static{Ot(this,"CommonValueConverter")}runCustomConverter(t,e,r){}},Zo=class extends f0{static{o(this,"AbstractMermaidTokenBuilder")}static{Ot(this,"AbstractMermaidTokenBuilder")}constructor(t){super(),this.keywords=new Set(t)}buildKeywordTokens(t,e,r){let n=super.buildKeywordTokens(t,e,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},yGe=class extends Zo{static{o(this,"CommonTokenBuilder")}static{Ot(this,"CommonTokenBuilder")}}});function Wk(t=uo){let e=$i(co(t),zl),r=$i(lo({shared:e}),CI,Hk);return e.ServiceRegistry.register(r),{shared:e,GitGraph:r}}var vGe,Hk,AI=M(()=>{"use strict";Jo();Oc();vGe=class extends Zo{static{o(this,"GitGraphTokenBuilder")}static{Ot(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},Hk={parser:{TokenBuilder:Ot(()=>new vGe,"TokenBuilder"),ValueConverter:Ot(()=>new y0,"ValueConverter")}};o(Wk,"createGitGraphServices");Ot(Wk,"createGitGraphServices")});function qk(t=uo){let e=$i(co(t),zl),r=$i(lo({shared:e}),TI,Yk);return e.ServiceRegistry.register(r),{shared:e,Info:r}}var xGe,Yk,_I=M(()=>{"use strict";Jo();Oc();xGe=class extends Zo{static{o(this,"InfoTokenBuilder")}static{Ot(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},Yk={parser:{TokenBuilder:Ot(()=>new xGe,"TokenBuilder"),ValueConverter:Ot(()=>new y0,"ValueConverter")}};o(qk,"createInfoServices");Ot(qk,"createInfoServices")});function jk(t=uo){let e=$i(co(t),zl),r=$i(lo({shared:e}),kI,Xk);return e.ServiceRegistry.register(r),{shared:e,Packet:r}}var bGe,Xk,LI=M(()=>{"use strict";Jo();Oc();bGe=class extends Zo{static{o(this,"PacketTokenBuilder")}static{Ot(this,"PacketTokenBuilder")}constructor(){super(["packet-beta"])}},Xk={parser:{TokenBuilder:Ot(()=>new bGe,"TokenBuilder"),ValueConverter:Ot(()=>new y0,"ValueConverter")}};o(jk,"createPacketServices");Ot(jk,"createPacketServices")});function Qk(t=uo){let e=$i(co(t),zl),r=$i(lo({shared:e}),EI,Kk);return e.ServiceRegistry.register(r),{shared:e,Pie:r}}var wGe,TGe,Kk,DI=M(()=>{"use strict";Jo();Oc();wGe=class extends Zo{static{o(this,"PieTokenBuilder")}static{Ot(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},TGe=class extends Dg{static{o(this,"PieValueConverter")}static{Ot(this,"PieValueConverter")}runCustomConverter(t,e,r){if(t.name==="PIE_SECTION_LABEL")return e.replace(/"/g,"").trim()}},Kk={parser:{TokenBuilder:Ot(()=>new wGe,"TokenBuilder"),ValueConverter:Ot(()=>new TGe,"ValueConverter")}};o(Qk,"createPieServices");Ot(Qk,"createPieServices")});function Jk(t=uo){let e=$i(co(t),zl),r=$i(lo({shared:e}),SI,Zk);return e.ServiceRegistry.register(r),{shared:e,Architecture:r}}var kGe,EGe,Zk,NI=M(()=>{"use strict";Jo();Oc();kGe=class extends Zo{static{o(this,"ArchitectureTokenBuilder")}static{Ot(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},EGe=class extends Dg{static{o(this,"ArchitectureValueConverter")}static{Ot(this,"ArchitectureValueConverter")}runCustomConverter(t,e,r){if(t.name==="ARCH_ICON")return e.replace(/[()]/g,"").trim();if(t.name==="ARCH_TEXT_ICON")return e.replace(/["()]/g,"");if(t.name==="ARCH_TITLE")return e.replace(/[[\]]/g,"").trim()}},Zk={parser:{TokenBuilder:Ot(()=>new kGe,"TokenBuilder"),ValueConverter:Ot(()=>new EGe,"ValueConverter")}};o(Jk,"createArchitectureServices");Ot(Jk,"createArchitectureServices")});var due={};vr(due,{InfoModule:()=>Yk,createInfoServices:()=>qk});var pue=M(()=>{"use strict";_I();Jo()});var mue={};vr(mue,{PacketModule:()=>Xk,createPacketServices:()=>jk});var gue=M(()=>{"use strict";LI();Jo()});var yue={};vr(yue,{PieModule:()=>Kk,createPieServices:()=>Qk});var vue=M(()=>{"use strict";DI();Jo()});var xue={};vr(xue,{ArchitectureModule:()=>Zk,createArchitectureServices:()=>Jk});var bue=M(()=>{"use strict";NI();Jo()});var wue={};vr(wue,{GitGraphModule:()=>Hk,createGitGraphServices:()=>Wk});var Tue=M(()=>{"use strict";AI();Jo()});async function Gl(t,e){let r=SGe[t];if(!r)throw new Error(`Unknown diagram type: ${t}`);v0[t]||await r();let i=v0[t].parse(e);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new CGe(i);return i.value}var v0,SGe,CGe,Ng=M(()=>{"use strict";AI();_I();LI();DI();NI();Jo();v0={},SGe={info:Ot(async()=>{let{createInfoServices:t}=await Promise.resolve().then(()=>(pue(),due)),e=t().Info.parser.LangiumParser;v0.info=e},"info"),packet:Ot(async()=>{let{createPacketServices:t}=await Promise.resolve().then(()=>(gue(),mue)),e=t().Packet.parser.LangiumParser;v0.packet=e},"packet"),pie:Ot(async()=>{let{createPieServices:t}=await Promise.resolve().then(()=>(vue(),yue)),e=t().Pie.parser.LangiumParser;v0.pie=e},"pie"),architecture:Ot(async()=>{let{createArchitectureServices:t}=await Promise.resolve().then(()=>(bue(),xue)),e=t().Architecture.parser.LangiumParser;v0.architecture=e},"architecture"),gitGraph:Ot(async()=>{let{createGitGraphServices:t}=await Promise.resolve().then(()=>(Tue(),wue)),e=t().GitGraph.parser.LangiumParser;v0.gitGraph=e},"gitGraph")};o(Gl,"parse");Ot(Gl,"parse");CGe=class extends Error{static{o(this,"MermaidParseError")}constructor(t){let e=t.lexerErrors.map(n=>n.message).join(` +`),r=t.parserErrors.map(n=>n.message).join(` +`);super(`Parsing failed: ${e} ${r}`),this.result=t}static{Ot(this,"MermaidParseError")}}});function lf(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}var ox=M(()=>{"use strict";o(lf,"populateCommonDb")});var jr,eE=M(()=>{"use strict";jr={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4}});var cf,tE=M(()=>{"use strict";cf=class{constructor(e){this.init=e;this.records=this.init()}static{o(this,"ImperativeState")}reset(){this.records=this.init()}}});function RI(){return t9({length:7})}function _Ge(t,e){let r=Object.create(null);return t.reduce((n,i)=>{let a=e(i);return r[a]||(r[a]=!0,n.push(i)),n},[])}function kue(t,e,r){let n=t.indexOf(e);n===-1?t.push(r):t.splice(n,1,r)}function Sue(t){let e=t.reduce((i,a)=>i.seq>a.seq?i:a,t[0]),r="";t.forEach(function(i){i===e?r+=" *":r+=" |"});let n=[r,e.id,e.seq];for(let i in wt.records.branches)wt.records.branches.get(i)===e.id&&n.push(i);if(Y.debug(n.join(" ")),e.parents&&e.parents.length==2&&e.parents[0]&&e.parents[1]){let i=wt.records.commits.get(e.parents[0]);kue(t,e,i),e.parents[1]&&t.push(wt.records.commits.get(e.parents[1]))}else{if(e.parents.length==0)return;if(e.parents[0]){let i=wt.records.commits.get(e.parents[0]);kue(t,e,i)}}t=_Ge(t,i=>i.id),Sue(t)}var AGe,x0,wt,LGe,DGe,NGe,RGe,MGe,IGe,OGe,Eue,PGe,BGe,FGe,zGe,GGe,Cue,$Ge,VGe,UGe,rE,MI=M(()=>{"use strict";ht();hr();Ua();fr();ki();eE();tE();hs();AGe=ur.gitGraph,x0=o(()=>ws({...AGe,...Sr().gitGraph}),"getConfig"),wt=new cf(()=>{let t=x0(),e=t.mainBranchName,r=t.mainBranchOrder;return{mainBranchName:e,commits:new Map,head:null,branchConfig:new Map([[e,{name:e,order:r}]]),branches:new Map([[e,null]]),currBranch:e,direction:"LR",seq:0,options:{}}});o(RI,"getID");o(_Ge,"uniqBy");LGe=o(function(t){wt.records.direction=t},"setDirection"),DGe=o(function(t){Y.debug("options str",t),t=t?.trim(),t=t||"{}";try{wt.records.options=JSON.parse(t)}catch(e){Y.error("error while parsing gitGraph options",e.message)}},"setOptions"),NGe=o(function(){return wt.records.options},"getOptions"),RGe=o(function(t){let e=t.msg,r=t.id,n=t.type,i=t.tags;Y.info("commit",e,r,n,i),Y.debug("Entering commit:",e,r,n,i);let a=x0();r=je.sanitizeText(r,a),e=je.sanitizeText(e,a),i=i?.map(l=>je.sanitizeText(l,a));let s={id:r||wt.records.seq+"-"+RI(),message:e,seq:wt.records.seq++,type:n??jr.NORMAL,tags:i??[],parents:wt.records.head==null?[]:[wt.records.head.id],branch:wt.records.currBranch};wt.records.head=s,Y.info("main branch",a.mainBranchName),wt.records.commits.set(s.id,s),wt.records.branches.set(wt.records.currBranch,s.id),Y.debug("in pushCommit "+s.id)},"commit"),MGe=o(function(t){let e=t.name,r=t.order;if(e=je.sanitizeText(e,x0()),wt.records.branches.has(e))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 ${e}")`);wt.records.branches.set(e,wt.records.head!=null?wt.records.head.id:null),wt.records.branchConfig.set(e,{name:e,order:r}),Eue(e),Y.debug("in createBranch")},"branch"),IGe=o(t=>{let e=t.branch,r=t.id,n=t.type,i=t.tags,a=x0();e=je.sanitizeText(e,a),r&&(r=je.sanitizeText(r,a));let s=wt.records.branches.get(wt.records.currBranch),l=wt.records.branches.get(e),u=s?wt.records.commits.get(s):void 0,h=l?wt.records.commits.get(l):void 0;if(u&&h&&u.branch===e)throw new Error(`Cannot merge branch '${e}' into itself.`);if(wt.records.currBranch===e){let p=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(u===void 0||!u){let p=new Error(`Incorrect usage of "merge". Current branch (${wt.records.currBranch})has no commits`);throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},p}if(!wt.records.branches.has(e)){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") does not exist");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:[`branch ${e}`]},p}if(h===void 0||!h){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") has no commits");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:['"commit"']},p}if(u===h){let p=new Error('Incorrect usage of "merge". Both branches have same head');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(r&&wt.records.commits.has(r)){let p=new Error('Incorrect usage of "merge". Commit with id:'+r+" already exists, use different custom Id");throw p.hash={text:`merge ${e} ${r} ${n} ${i?.join(" ")}`,token:`merge ${e} ${r} ${n} ${i?.join(" ")}`,expected:[`merge ${e} ${r}_UNIQUE ${n} ${i?.join(" ")}`]},p}let f=l||"",d={id:r||`${wt.records.seq}-${RI()}`,message:`merged branch ${e} into ${wt.records.currBranch}`,seq:wt.records.seq++,parents:wt.records.head==null?[]:[wt.records.head.id,f],branch:wt.records.currBranch,type:jr.MERGE,customType:n,customId:!!r,tags:i??[]};wt.records.head=d,wt.records.commits.set(d.id,d),wt.records.branches.set(wt.records.currBranch,d.id),Y.debug(wt.records.branches),Y.debug("in mergeBranch")},"merge"),OGe=o(function(t){let e=t.id,r=t.targetId,n=t.tags,i=t.parent;Y.debug("Entering cherryPick:",e,r,n);let a=x0();if(e=je.sanitizeText(e,a),r=je.sanitizeText(r,a),n=n?.map(u=>je.sanitizeText(u,a)),i=je.sanitizeText(i,a),!e||!wt.records.commits.has(e)){let u=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw u.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},u}let s=wt.records.commits.get(e);if(s===void 0||!s)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(i&&!(Array.isArray(s.parents)&&s.parents.includes(i)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let l=s.branch;if(s.type===jr.MERGE&&!i)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!r||!wt.records.commits.has(r)){if(l===wt.records.currBranch){let d=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let u=wt.records.branches.get(wt.records.currBranch);if(u===void 0||!u){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${wt.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let h=wt.records.commits.get(u);if(h===void 0||!h){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${wt.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let f={id:wt.records.seq+"-"+RI(),message:`cherry-picked ${s?.message} into ${wt.records.currBranch}`,seq:wt.records.seq++,parents:wt.records.head==null?[]:[wt.records.head.id,s.id],branch:wt.records.currBranch,type:jr.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===jr.MERGE?`|parent:${i}`:""}`]};wt.records.head=f,wt.records.commits.set(f.id,f),wt.records.branches.set(wt.records.currBranch,f.id),Y.debug(wt.records.branches),Y.debug("in cherryPick")}},"cherryPick"),Eue=o(function(t){if(t=je.sanitizeText(t,x0()),wt.records.branches.has(t)){wt.records.currBranch=t;let e=wt.records.branches.get(wt.records.currBranch);e===void 0||!e?wt.records.head=null:wt.records.head=wt.records.commits.get(e)??null}else{let e=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${t}")`);throw e.hash={text:`checkout ${t}`,token:`checkout ${t}`,expected:[`branch ${t}`]},e}},"checkout");o(kue,"upsert");o(Sue,"prettyPrintCommitHistory");PGe=o(function(){Y.debug(wt.records.commits);let t=Cue()[0];Sue([t])},"prettyPrint"),BGe=o(function(){wt.reset(),_r()},"clear"),FGe=o(function(){return[...wt.records.branchConfig.values()].map((e,r)=>e.order!==null&&e.order!==void 0?e:{...e,order:parseFloat(`0.${r}`)}).sort((e,r)=>(e.order??0)-(r.order??0)).map(({name:e})=>({name:e}))},"getBranchesAsObjArray"),zGe=o(function(){return wt.records.branches},"getBranches"),GGe=o(function(){return wt.records.commits},"getCommits"),Cue=o(function(){let t=[...wt.records.commits.values()];return t.forEach(function(e){Y.debug(e.id)}),t.sort((e,r)=>e.seq-r.seq),t},"getCommitsArray"),$Ge=o(function(){return wt.records.currBranch},"getCurrentBranch"),VGe=o(function(){return wt.records.direction},"getDirection"),UGe=o(function(){return wt.records.head},"getHead"),rE={commitType:jr,getConfig:x0,setDirection:LGe,setOptions:DGe,getOptions:NGe,commit:RGe,branch:MGe,merge:IGe,cherryPick:OGe,checkout:Eue,prettyPrint:PGe,clear:BGe,getBranchesAsObjArray:FGe,getBranches:zGe,getCommits:GGe,getCommitsArray:Cue,getCurrentBranch:$Ge,getDirection:VGe,getHead:UGe,setAccTitle:Rr,getAccTitle:Pr,getAccDescription:Fr,setAccDescription:Br,setDiagramTitle:ln,getDiagramTitle:Jr}});var HGe,WGe,YGe,qGe,XGe,jGe,KGe,Aue,_ue=M(()=>{"use strict";Ng();ht();ox();MI();eE();HGe=o((t,e)=>{lf(t,e),t.dir&&e.setDirection(t.dir);for(let r of t.statements)WGe(r,e)},"populate"),WGe=o((t,e)=>{let n={Commit:o(i=>e.commit(YGe(i)),"Commit"),Branch:o(i=>e.branch(qGe(i)),"Branch"),Merge:o(i=>e.merge(XGe(i)),"Merge"),Checkout:o(i=>e.checkout(jGe(i)),"Checkout"),CherryPicking:o(i=>e.cherryPick(KGe(i)),"CherryPicking")}[t.$type];n?n(t):Y.error(`Unknown statement type: ${t.$type}`)},"parseStatement"),YGe=o(t=>({id:t.id,msg:t.message??"",type:t.type!==void 0?jr[t.type]:jr.NORMAL,tags:t.tags??void 0}),"parseCommit"),qGe=o(t=>({name:t.name,order:t.order??0}),"parseBranch"),XGe=o(t=>({branch:t.branch,id:t.id??"",type:t.type!==void 0?jr[t.type]:void 0,tags:t.tags??void 0}),"parseMerge"),jGe=o(t=>t.branch,"parseCheckout"),KGe=o(t=>({id:t.id,targetId:"",tags:t.tags?.length===0?void 0:t.tags,parent:t.parent}),"parseCherryPicking"),Aue={parse:o(async t=>{let e=await Gl("gitGraph",t);Y.debug(e),HGe(e,rE)},"parse")}});var QGe,el,hf,ff,Pc,Vu,b0,Ps,Bs,nE,lx,iE,uf,Nr,ZGe,Due,Nue,JGe,e$e,t$e,r$e,n$e,i$e,a$e,s$e,o$e,l$e,c$e,u$e,Lue,h$e,cx,f$e,d$e,p$e,m$e,g$e,Rue,Mue=M(()=>{"use strict";mr();Vt();ht();hr();eE();QGe=de(),el=QGe?.gitGraph,hf=10,ff=40,Pc=4,Vu=2,b0=8,Ps=new Map,Bs=new Map,nE=30,lx=new Map,iE=[],uf=0,Nr="LR",ZGe=o(()=>{Ps.clear(),Bs.clear(),lx.clear(),uf=0,iE=[],Nr="LR"},"clear"),Due=o(t=>{let e=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof t=="string"?t.split(/\\n|\n|/gi):t).forEach(n=>{let 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"),i.setAttribute("class","row"),i.textContent=n.trim(),e.appendChild(i)}),e},"drawText"),Nue=o(t=>{let e,r,n;return Nr==="BT"?(r=o((i,a)=>i<=a,"comparisonFunc"),n=1/0):(r=o((i,a)=>i>=a,"comparisonFunc"),n=0),t.forEach(i=>{let a=Nr==="TB"||Nr=="BT"?Bs.get(i)?.y:Bs.get(i)?.x;a!==void 0&&r(a,n)&&(e=i,n=a)}),e},"findClosestParent"),JGe=o(t=>{let e="",r=1/0;return t.forEach(n=>{let i=Bs.get(n).y;i<=r&&(e=n,r=i)}),e||void 0},"findClosestParentBT"),e$e=o((t,e,r)=>{let n=r,i=r,a=[];t.forEach(s=>{let l=e.get(s);if(!l)throw new Error(`Commit not found for key ${s}`);l.parents.length?(n=r$e(l),i=Math.max(n,i)):a.push(l),n$e(l,n)}),n=i,a.forEach(s=>{i$e(s,n,r)}),t.forEach(s=>{let l=e.get(s);if(l?.parents.length){let u=JGe(l.parents);n=Bs.get(u).y-ff,n<=i&&(i=n);let h=Ps.get(l.branch).pos,f=n-hf;Bs.set(l.id,{x:h,y:f})}})},"setParallelBTPos"),t$e=o(t=>{let e=Nue(t.parents.filter(n=>n!==null));if(!e)throw new Error(`Closest parent not found for commit ${t.id}`);let r=Bs.get(e)?.y;if(r===void 0)throw new Error(`Closest parent position not found for commit ${t.id}`);return r},"findClosestParentPos"),r$e=o(t=>t$e(t)+ff,"calculateCommitPosition"),n$e=o((t,e)=>{let r=Ps.get(t.branch);if(!r)throw new Error(`Branch not found for commit ${t.id}`);let n=r.pos,i=e+hf;return Bs.set(t.id,{x:n,y:i}),{x:n,y:i}},"setCommitPosition"),i$e=o((t,e,r)=>{let n=Ps.get(t.branch);if(!n)throw new Error(`Branch not found for commit ${t.id}`);let i=e+r,a=n.pos;Bs.set(t.id,{x:a,y:i})},"setRootPosition"),a$e=o((t,e,r,n,i,a)=>{if(a===jr.HIGHLIGHT)t.append("rect").attr("x",r.x-10).attr("y",r.y-10).attr("width",20).attr("height",20).attr("class",`commit ${e.id} commit-highlight${i%b0} ${n}-outer`),t.append("rect").attr("x",r.x-6).attr("y",r.y-6).attr("width",12).attr("height",12).attr("class",`commit ${e.id} commit${i%b0} ${n}-inner`);else if(a===jr.CHERRY_PICK)t.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",10).attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x-3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x+3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x+3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x-3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`);else{let s=t.append("circle");if(s.attr("cx",r.x),s.attr("cy",r.y),s.attr("r",e.type===jr.MERGE?9:10),s.attr("class",`commit ${e.id} commit${i%b0}`),a===jr.MERGE){let l=t.append("circle");l.attr("cx",r.x),l.attr("cy",r.y),l.attr("r",6),l.attr("class",`commit ${n} ${e.id} commit${i%b0}`)}a===jr.REVERSE&&t.append("path").attr("d",`M ${r.x-5},${r.y-5}L${r.x+5},${r.y+5}M${r.x-5},${r.y+5}L${r.x+5},${r.y-5}`).attr("class",`commit ${n} ${e.id} commit${i%b0}`)}},"drawCommitBullet"),s$e=o((t,e,r,n)=>{if(e.type!==jr.CHERRY_PICK&&(e.customId&&e.type===jr.MERGE||e.type!==jr.MERGE)&&el?.showCommitLabel){let i=t.append("g"),a=i.insert("rect").attr("class","commit-label-bkg"),s=i.append("text").attr("x",n).attr("y",r.y+25).attr("class","commit-label").text(e.id),l=s.node()?.getBBox();if(l&&(a.attr("x",r.posWithOffset-l.width/2-Vu).attr("y",r.y+13.5).attr("width",l.width+2*Vu).attr("height",l.height+2*Vu),Nr==="TB"||Nr==="BT"?(a.attr("x",r.x-(l.width+4*Pc+5)).attr("y",r.y-12),s.attr("x",r.x-(l.width+4*Pc)).attr("y",r.y+l.height-12)):s.attr("x",r.posWithOffset-l.width/2),el.rotateCommitLabel))if(Nr==="TB"||Nr==="BT")s.attr("transform","rotate(-45, "+r.x+", "+r.y+")"),a.attr("transform","rotate(-45, "+r.x+", "+r.y+")");else{let u=-7.5-(l.width+10)/25*9.5,h=10+l.width/25*8.5;i.attr("transform","translate("+u+", "+h+") rotate(-45, "+n+", "+r.y+")")}}},"drawCommitLabel"),o$e=o((t,e,r,n)=>{if(e.tags.length>0){let i=0,a=0,s=0,l=[];for(let u of e.tags.reverse()){let h=t.insert("polygon"),f=t.append("circle"),d=t.append("text").attr("y",r.y-16-i).attr("class","tag-label").text(u),p=d.node()?.getBBox();if(!p)throw new Error("Tag bbox not found");a=Math.max(a,p.width),s=Math.max(s,p.height),d.attr("x",r.posWithOffset-p.width/2),l.push({tag:d,hole:f,rect:h,yOffset:i}),i+=20}for(let{tag:u,hole:h,rect:f,yOffset:d}of l){let p=s/2,m=r.y-19.2-d;if(f.attr("class","tag-label-bkg").attr("points",` + ${n-a/2-Pc/2},${m+Vu} + ${n-a/2-Pc/2},${m-Vu} + ${r.posWithOffset-a/2-Pc},${m-p-Vu} + ${r.posWithOffset+a/2+Pc},${m-p-Vu} + ${r.posWithOffset+a/2+Pc},${m+p+Vu} + ${r.posWithOffset-a/2-Pc},${m+p+Vu}`),h.attr("cy",m).attr("cx",n-a/2+Pc/2).attr("r",1.5).attr("class","tag-hole"),Nr==="TB"||Nr==="BT"){let g=n+d;f.attr("class","tag-label-bkg").attr("points",` + ${r.x},${g+2} + ${r.x},${g-2} + ${r.x+hf},${g-p-2} + ${r.x+hf+a+4},${g-p-2} + ${r.x+hf+a+4},${g+p+2} + ${r.x+hf},${g+p+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),h.attr("cx",r.x+Pc/2).attr("cy",g).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),u.attr("x",r.x+5).attr("y",g+3).attr("transform","translate(14,14) rotate(45, "+r.x+","+n+")")}}}},"drawCommitTags"),l$e=o(t=>{switch(t.customType??t.type){case jr.NORMAL:return"commit-normal";case jr.REVERSE:return"commit-reverse";case jr.HIGHLIGHT:return"commit-highlight";case jr.MERGE:return"commit-merge";case jr.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),c$e=o((t,e,r,n)=>{let i={x:0,y:0};if(t.parents.length>0){let a=Nue(t.parents);if(a){let s=n.get(a)??i;return e==="TB"?s.y+ff:e==="BT"?(n.get(t.id)??i).y-ff:s.x+ff}}else return e==="TB"?nE:e==="BT"?(n.get(t.id)??i).y-ff:0;return 0},"calculatePosition"),u$e=o((t,e,r)=>{let n=Nr==="BT"&&r?e:e+hf,i=Nr==="TB"||Nr==="BT"?n:Ps.get(t.branch)?.pos,a=Nr==="TB"||Nr==="BT"?Ps.get(t.branch)?.pos:n;if(a===void 0||i===void 0)throw new Error(`Position were undefined for commit ${t.id}`);return{x:a,y:i,posWithOffset:n}},"getCommitPosition"),Lue=o((t,e,r)=>{if(!el)throw new Error("GitGraph config not found");let n=t.append("g").attr("class","commit-bullets"),i=t.append("g").attr("class","commit-labels"),a=Nr==="TB"||Nr==="BT"?nE:0,s=[...e.keys()],l=el?.parallelCommits??!1,u=o((f,d)=>{let p=e.get(f)?.seq,m=e.get(d)?.seq;return p!==void 0&&m!==void 0?p-m:0},"sortKeys"),h=s.sort(u);Nr==="BT"&&(l&&e$e(h,e,a),h=h.reverse()),h.forEach(f=>{let d=e.get(f);if(!d)throw new Error(`Commit not found for key ${f}`);l&&(a=c$e(d,Nr,a,Bs));let p=u$e(d,a,l);if(r){let m=l$e(d),g=d.customType??d.type,y=Ps.get(d.branch)?.index??0;a$e(n,d,p,m,y,g),s$e(i,d,p,a),o$e(i,d,p,a)}Nr==="TB"||Nr==="BT"?Bs.set(d.id,{x:p.x,y:p.posWithOffset}):Bs.set(d.id,{x:p.posWithOffset,y:p.y}),a=Nr==="BT"&&l?a+ff:a+ff+hf,a>uf&&(uf=a)})},"drawCommits"),h$e=o((t,e,r,n,i)=>{let s=(Nr==="TB"||Nr==="BT"?r.xh.branch===s,"isOnBranchToGetCurve"),u=o(h=>h.seq>t.seq&&h.sequ(h)&&l(h))},"shouldRerouteArrow"),cx=o((t,e,r=0)=>{let n=t+Math.abs(t-e)/2;if(r>5)return n;if(iE.every(s=>Math.abs(s-n)>=10))return iE.push(n),n;let a=Math.abs(t-e);return cx(t,e-a/5,r+1)},"findLane"),f$e=o((t,e,r,n)=>{let i=Bs.get(e.id),a=Bs.get(r.id);if(i===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${e.id} and ${r.id}`);let s=h$e(e,r,i,a,n),l="",u="",h=0,f=0,d=Ps.get(r.branch)?.index;r.type===jr.MERGE&&e.id!==r.parents[0]&&(d=Ps.get(e.branch)?.index);let p;if(s){l="A 10 10, 0, 0, 0,",u="A 10 10, 0, 0, 1,",h=10,f=10;let m=i.ya.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===jr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y-h} ${u} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x+h} ${i.y} ${l} ${a.x} ${i.y+f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):Nr==="BT"?(i.xa.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===jr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${l} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):(i.ya.y&&(r.type===jr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${u} ${i.x+f} ${a.y} L ${a.x} ${a.y}`),i.y===a.y&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`));if(p===void 0)throw new Error("Line definition not found");t.append("path").attr("d",p).attr("class","arrow arrow"+d%b0)},"drawArrow"),d$e=o((t,e)=>{let r=t.append("g").attr("class","commit-arrows");[...e.keys()].forEach(n=>{let i=e.get(n);i.parents&&i.parents.length>0&&i.parents.forEach(a=>{f$e(r,e.get(a),i,e)})})},"drawArrows"),p$e=o((t,e)=>{let r=t.append("g");e.forEach((n,i)=>{let a=i%b0,s=Ps.get(n.name)?.pos;if(s===void 0)throw new Error(`Position not found for branch ${n.name}`);let l=r.append("line");l.attr("x1",0),l.attr("y1",s),l.attr("x2",uf),l.attr("y2",s),l.attr("class","branch branch"+a),Nr==="TB"?(l.attr("y1",nE),l.attr("x1",s),l.attr("y2",uf),l.attr("x2",s)):Nr==="BT"&&(l.attr("y1",uf),l.attr("x1",s),l.attr("y2",nE),l.attr("x2",s)),iE.push(s);let u=n.name,h=Due(u),f=r.insert("rect"),p=r.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+a);p.node().appendChild(h);let m=h.getBBox();f.attr("class","branchLabelBkg label"+a).attr("rx",4).attr("ry",4).attr("x",-m.width-4-(el?.rotateCommitLabel===!0?30:0)).attr("y",-m.height/2+8).attr("width",m.width+18).attr("height",m.height+4),p.attr("transform","translate("+(-m.width-14-(el?.rotateCommitLabel===!0?30:0))+", "+(s-m.height/2-1)+")"),Nr==="TB"?(f.attr("x",s-m.width/2-10).attr("y",0),p.attr("transform","translate("+(s-m.width/2-5)+", 0)")):Nr==="BT"?(f.attr("x",s-m.width/2-10).attr("y",uf),p.attr("transform","translate("+(s-m.width/2-5)+", "+uf+")")):f.attr("transform","translate(-19, "+(s-m.height/2)+")")})},"drawBranches"),m$e=o(function(t,e,r,n,i){return Ps.set(t,{pos:e,index:r}),e+=50+(i?40:0)+(Nr==="TB"||Nr==="BT"?n.width/2:0),e},"setBranchPosition"),g$e=o(function(t,e,r,n){if(ZGe(),Y.debug("in gitgraph renderer",t+` +`,"id:",e,r),!el)throw new Error("GitGraph config not found");let i=el.rotateCommitLabel??!1,a=n.db;lx=a.getCommits();let s=a.getBranchesAsObjArray();Nr=a.getDirection();let l=ze(`[id="${e}"]`),u=0;s.forEach((h,f)=>{let d=Due(h.name),p=l.append("g"),m=p.insert("g").attr("class","branchLabel"),g=m.insert("g").attr("class","label branch-label");g.node()?.appendChild(d);let y=d.getBBox();u=m$e(h.name,u,f,y,i),g.remove(),m.remove(),p.remove()}),Lue(l,lx,!1),el.showBranches&&p$e(l,s),d$e(l,lx),Lue(l,lx,!0),Ut.insertTitle(l,"gitTitleText",el.titleTopMargin??0,a.getDiagramTitle()),a7(void 0,l,el.diagramPadding,el.useMaxWidth)},"draw"),Rue={draw:g$e}});var y$e,Iue,Oue=M(()=>{"use strict";y$e=o(t=>` + .commit-id, + .commit-msg, + .branch-label { + fill: lightgrey; + color: lightgrey; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + ${[0,1,2,3,4,5,6,7].map(e=>` + .branch-label${e} { fill: ${t["gitBranchLabel"+e]}; } + .commit${e} { stroke: ${t["git"+e]}; fill: ${t["git"+e]}; } + .commit-highlight${e} { stroke: ${t["gitInv"+e]}; fill: ${t["gitInv"+e]}; } + .label${e} { fill: ${t["git"+e]}; } + .arrow${e} { stroke: ${t["git"+e]}; } + `).join(` +`)} + + .branch { + stroke-width: 1; + stroke: ${t.lineColor}; + stroke-dasharray: 2; + } + .commit-label { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelColor};} + .commit-label-bkg { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelBackground}; opacity: 0.5; } + .tag-label { font-size: ${t.tagLabelFontSize}; fill: ${t.tagLabelColor};} + .tag-label-bkg { fill: ${t.tagLabelBackground}; stroke: ${t.tagLabelBorder}; } + .tag-hole { fill: ${t.textColor}; } + + .commit-merge { + stroke: ${t.primaryColor}; + fill: ${t.primaryColor}; + } + .commit-reverse { + stroke: ${t.primaryColor}; + fill: ${t.primaryColor}; + stroke-width: 3; + } + .commit-highlight-outer { + } + .commit-highlight-inner { + stroke: ${t.primaryColor}; + fill: ${t.primaryColor}; + } + + .arrow { stroke-width: 8; stroke-linecap: round; fill: none} + .gitTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; + } +`,"getStyles"),Iue=y$e});var Pue={};vr(Pue,{diagram:()=>v$e});var v$e,Bue=M(()=>{"use strict";_ue();MI();Mue();Oue();v$e={parser:Aue,db:rE,renderer:Rue,styles:Iue}});var II,Gue,$ue=M(()=>{"use strict";II=function(){var t=o(function(R,S,O,N){for(O=O||{},N=R.length;N--;O[R[N]]=S);return O},"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],r=[1,26],n=[1,27],i=[1,28],a=[1,29],s=[1,30],l=[1,31],u=[1,32],h=[1,33],f=[1,34],d=[1,9],p=[1,10],m=[1,11],g=[1,12],y=[1,13],v=[1,14],x=[1,15],b=[1,16],w=[1,19],_=[1,20],T=[1,21],E=[1,22],L=[1,23],C=[1,25],A=[1,35],I={trace:o(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:o(function(S,O,N,P,F,B,$){var z=B.length-1;switch(F){case 1:return B[z-1];case 2:this.$=[];break;case 3:B[z-1].push(B[z]),this.$=B[z-1];break;case 4:case 5:this.$=B[z];break;case 6:case 7:this.$=[];break;case 8:P.setWeekday("monday");break;case 9:P.setWeekday("tuesday");break;case 10:P.setWeekday("wednesday");break;case 11:P.setWeekday("thursday");break;case 12:P.setWeekday("friday");break;case 13:P.setWeekday("saturday");break;case 14:P.setWeekday("sunday");break;case 15:P.setWeekend("friday");break;case 16:P.setWeekend("saturday");break;case 17:P.setDateFormat(B[z].substr(11)),this.$=B[z].substr(11);break;case 18:P.enableInclusiveEndDates(),this.$=B[z].substr(18);break;case 19:P.TopAxis(),this.$=B[z].substr(8);break;case 20:P.setAxisFormat(B[z].substr(11)),this.$=B[z].substr(11);break;case 21:P.setTickInterval(B[z].substr(13)),this.$=B[z].substr(13);break;case 22:P.setExcludes(B[z].substr(9)),this.$=B[z].substr(9);break;case 23:P.setIncludes(B[z].substr(9)),this.$=B[z].substr(9);break;case 24:P.setTodayMarker(B[z].substr(12)),this.$=B[z].substr(12);break;case 27:P.setDiagramTitle(B[z].substr(6)),this.$=B[z].substr(6);break;case 28:this.$=B[z].trim(),P.setAccTitle(this.$);break;case 29:case 30:this.$=B[z].trim(),P.setAccDescription(this.$);break;case 31:P.addSection(B[z].substr(8)),this.$=B[z].substr(8);break;case 33:P.addTask(B[z-1],B[z]),this.$="task";break;case 34:this.$=B[z-1],P.setClickEvent(B[z-1],B[z],null);break;case 35:this.$=B[z-2],P.setClickEvent(B[z-2],B[z-1],B[z]);break;case 36:this.$=B[z-2],P.setClickEvent(B[z-2],B[z-1],null),P.setLink(B[z-2],B[z]);break;case 37:this.$=B[z-3],P.setClickEvent(B[z-3],B[z-2],B[z-1]),P.setLink(B[z-3],B[z]);break;case 38:this.$=B[z-2],P.setClickEvent(B[z-2],B[z],null),P.setLink(B[z-2],B[z-1]);break;case 39:this.$=B[z-3],P.setClickEvent(B[z-3],B[z-1],B[z]),P.setLink(B[z-3],B[z-2]);break;case 40:this.$=B[z-1],P.setLink(B[z-1],B[z]);break;case 41:case 47:this.$=B[z-1]+" "+B[z];break;case 42:case 43:case 45:this.$=B[z-2]+" "+B[z-1]+" "+B[z];break;case 44:case 46:this.$=B[z-3]+" "+B[z-2]+" "+B[z-1]+" "+B[z];break}},"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:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:w,31:_,33:T,35:E,36:L,37:24,38:C,40:A},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:v,28:x,29:b,30:w,31:_,33:T,35:E,36:L,37:24,38:C,40:A},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:o(function(S,O){if(O.recoverable)this.trace(S);else{var N=new Error(S);throw N.hash=O,N}},"parseError"),parse:o(function(S){var O=this,N=[0],P=[],F=[null],B=[],$=this.table,z="",W=0,j=0,K=0,ie=2,Q=1,ee=B.slice.call(arguments,1),J=Object.create(this.lexer),H={yy:{}};for(var q in this.yy)Object.prototype.hasOwnProperty.call(this.yy,q)&&(H.yy[q]=this.yy[q]);J.setInput(S,H.yy),H.yy.lexer=J,H.yy.parser=this,typeof J.yylloc>"u"&&(J.yylloc={});var Z=J.yylloc;B.push(Z);var ae=J.options&&J.options.ranges;typeof H.yy.parseError=="function"?this.parseError=H.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ue(he){N.length=N.length-2*he,F.length=F.length-he,B.length=B.length-he}o(ue,"popStack");function ce(){var he;return he=P.pop()||J.lex()||Q,typeof he!="number"&&(he instanceof Array&&(P=he,he=P.pop()),he=O.symbols_[he]||he),he}o(ce,"lex");for(var te,De,oe,ke,Fe,Be,Ve={},Ge,He,xe,X;;){if(oe=N[N.length-1],this.defaultActions[oe]?ke=this.defaultActions[oe]:((te===null||typeof te>"u")&&(te=ce()),ke=$[oe]&&$[oe][te]),typeof ke>"u"||!ke.length||!ke[0]){var fe="";X=[];for(Ge in $[oe])this.terminals_[Ge]&&Ge>ie&&X.push("'"+this.terminals_[Ge]+"'");J.showPosition?fe="Parse error on line "+(W+1)+`: +`+J.showPosition()+` +Expecting `+X.join(", ")+", got '"+(this.terminals_[te]||te)+"'":fe="Parse error on line "+(W+1)+": Unexpected "+(te==Q?"end of input":"'"+(this.terminals_[te]||te)+"'"),this.parseError(fe,{text:J.match,token:this.terminals_[te]||te,line:J.yylineno,loc:Z,expected:X})}if(ke[0]instanceof Array&&ke.length>1)throw new Error("Parse Error: multiple actions possible at state: "+oe+", token: "+te);switch(ke[0]){case 1:N.push(te),F.push(J.yytext),B.push(J.yylloc),N.push(ke[1]),te=null,De?(te=De,De=null):(j=J.yyleng,z=J.yytext,W=J.yylineno,Z=J.yylloc,K>0&&K--);break;case 2:if(He=this.productions_[ke[1]][1],Ve.$=F[F.length-He],Ve._$={first_line:B[B.length-(He||1)].first_line,last_line:B[B.length-1].last_line,first_column:B[B.length-(He||1)].first_column,last_column:B[B.length-1].last_column},ae&&(Ve._$.range=[B[B.length-(He||1)].range[0],B[B.length-1].range[1]]),Be=this.performAction.apply(Ve,[z,j,W,H.yy,ke[1],F,B].concat(ee)),typeof Be<"u")return Be;He&&(N=N.slice(0,-1*He*2),F=F.slice(0,-1*He),B=B.slice(0,-1*He)),N.push(this.productions_[ke[1]][0]),F.push(Ve.$),B.push(Ve._$),xe=$[N[N.length-2]][N[N.length-1]],N.push(xe);break;case 3:return!0}}return!0},"parse")},D=function(){var R={EOF:1,parseError:o(function(O,N){if(this.yy.parser)this.yy.parser.parseError(O,N);else throw new Error(O)},"parseError"),setInput:o(function(S,O){return this.yy=O||this.yy||{},this._input=S,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:o(function(){var S=this._input[0];this.yytext+=S,this.yyleng++,this.offset++,this.match+=S,this.matched+=S;var O=S.match(/(?:\r\n?|\n).*/g);return O?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),S},"input"),unput:o(function(S){var O=S.length,N=S.split(/(?:\r\n?|\n)/g);this._input=S+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-O),this.offset-=O;var P=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 F=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===P.length?this.yylloc.first_column:0)+P[P.length-N.length].length-N[0].length:this.yylloc.first_column-O},this.options.ranges&&(this.yylloc.range=[F[0],F[0]+this.yyleng-O]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(S){this.unput(this.match.slice(S))},"less"),pastInput:o(function(){var S=this.matched.substr(0,this.matched.length-this.match.length);return(S.length>20?"...":"")+S.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var S=this.match;return S.length<20&&(S+=this._input.substr(0,20-S.length)),(S.substr(0,20)+(S.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var S=this.pastInput(),O=new Array(S.length+1).join("-");return S+this.upcomingInput()+` +`+O+"^"},"showPosition"),test_match:o(function(S,O){var N,P,F;if(this.options.backtrack_lexer&&(F={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&&(F.yylloc.range=this.yylloc.range.slice(0))),P=S[0].match(/(?:\r\n?|\n).*/g),P&&(this.yylineno+=P.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:P?P[P.length-1].length-P[P.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+S[0].length},this.yytext+=S[0],this.match+=S[0],this.matches=S,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(S[0].length),this.matched+=S[0],N=this.performAction.call(this,this.yy,this,O,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),N)return N;if(this._backtrack){for(var B in F)this[B]=F[B];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var S,O,N,P;this._more||(this.yytext="",this.match="");for(var F=this._currentRules(),B=0;BO[0].length)){if(O=N,P=B,this.options.backtrack_lexer){if(S=this.test_match(N,F[B]),S!==!1)return S;if(this._backtrack){O=!1;continue}else return!1}else if(!this.options.flex)break}return O?(S=this.test_match(O,F[P]),S!==!1?S:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var O=this.next();return O||this.lex()},"lex"),begin:o(function(O){this.conditionStack.push(O)},"begin"),popState:o(function(){var O=this.conditionStack.length-1;return O>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(O){return O=this.conditionStack.length-1-Math.abs(O||0),O>=0?this.conditionStack[O]:"INITIAL"},"topState"),pushState:o(function(O){this.begin(O)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(O,N,P,F){var B=F;switch(P){case 0:return this.begin("open_directive"),"open_directive";break;case 1:return this.begin("acc_title"),31;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),33;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();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}}};return R}();I.lexer=D;function k(){this.yy={}}return o(k,"Parser"),k.prototype=I,I.Parser=k,new k}();II.parser=II;Gue=II});var Vue=Ni((OI,PI)=>{"use strict";(function(t,e){typeof OI=="object"&&typeof PI<"u"?PI.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_isoWeek=e()})(OI,function(){"use strict";var t="day";return function(e,r,n){var i=o(function(l){return l.add(4-l.isoWeekday(),t)},"a"),a=r.prototype;a.isoWeekYear=function(){return i(this).year()},a.isoWeek=function(l){if(!this.$utils().u(l))return this.add(7*(l-this.isoWeek()),t);var u,h,f,d,p=i(this),m=(u=this.isoWeekYear(),h=this.$u,f=(h?n.utc:n)().year(u).startOf("year"),d=4-f.isoWeekday(),f.isoWeekday()>4&&(d+=7),f.add(d,t));return p.diff(m,"week")+1},a.isoWeekday=function(l){return this.$utils().u(l)?this.day()||7:this.day(this.day()%7?l:l-7)};var s=a.startOf;a.startOf=function(l,u){var h=this.$utils(),f=!!h.u(u)||u;return h.p(l)==="isoweek"?f?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):s.bind(this)(l,u)}}})});var Uue=Ni((BI,FI)=>{"use strict";(function(t,e){typeof BI=="object"&&typeof FI<"u"?FI.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_customParseFormat=e()})(BI,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,r=/\d/,n=/\d\d/,i=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,s={},l=o(function(g){return(g=+g)+(g>68?1900:2e3)},"a"),u=o(function(g){return function(y){this[g]=+y}},"f"),h=[/[+-]\d\d:?(\d\d)?|Z/,function(g){(this.zone||(this.zone={})).offset=function(y){if(!y||y==="Z")return 0;var v=y.match(/([+-]|\d\d)/g),x=60*v[1]+(+v[2]||0);return x===0?0:v[0]==="+"?-x:x}(g)}],f=o(function(g){var y=s[g];return y&&(y.indexOf?y:y.s.concat(y.f))},"u"),d=o(function(g,y){var v,x=s.meridiem;if(x){for(var b=1;b<=24;b+=1)if(g.indexOf(x(b,0,y))>-1){v=b>12;break}}else v=g===(y?"pm":"PM");return v},"d"),p={A:[a,function(g){this.afternoon=d(g,!1)}],a:[a,function(g){this.afternoon=d(g,!0)}],Q:[r,function(g){this.month=3*(g-1)+1}],S:[r,function(g){this.milliseconds=100*+g}],SS:[n,function(g){this.milliseconds=10*+g}],SSS:[/\d{3}/,function(g){this.milliseconds=+g}],s:[i,u("seconds")],ss:[i,u("seconds")],m:[i,u("minutes")],mm:[i,u("minutes")],H:[i,u("hours")],h:[i,u("hours")],HH:[i,u("hours")],hh:[i,u("hours")],D:[i,u("day")],DD:[n,u("day")],Do:[a,function(g){var y=s.ordinal,v=g.match(/\d+/);if(this.day=v[0],y)for(var x=1;x<=31;x+=1)y(x).replace(/\[|\]/g,"")===g&&(this.day=x)}],w:[i,u("week")],ww:[n,u("week")],M:[i,u("month")],MM:[n,u("month")],MMM:[a,function(g){var y=f("months"),v=(f("monthsShort")||y.map(function(x){return x.slice(0,3)})).indexOf(g)+1;if(v<1)throw new Error;this.month=v%12||v}],MMMM:[a,function(g){var y=f("months").indexOf(g)+1;if(y<1)throw new Error;this.month=y%12||y}],Y:[/[+-]?\d+/,u("year")],YY:[n,function(g){this.year=l(g)}],YYYY:[/\d{4}/,u("year")],Z:h,ZZ:h};function m(g){var y,v;y=g,v=s&&s.formats;for(var x=(g=y.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(C,A,I){var D=I&&I.toUpperCase();return A||v[I]||t[I]||v[D].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(k,R,S){return R||S.slice(1)})})).match(e),b=x.length,w=0;w-1)return new Date((N==="X"?1e3:1)*O);var B=m(N)(O),$=B.year,z=B.month,W=B.day,j=B.hours,K=B.minutes,ie=B.seconds,Q=B.milliseconds,ee=B.zone,J=B.week,H=new Date,q=W||($||z?1:H.getDate()),Z=$||H.getFullYear(),ae=0;$&&!z||(ae=z>0?z-1:H.getMonth());var ue,ce=j||0,te=K||0,De=ie||0,oe=Q||0;return ee?new Date(Date.UTC(Z,ae,q,ce,te,De,oe+60*ee.offset*1e3)):P?new Date(Date.UTC(Z,ae,q,ce,te,De,oe)):(ue=new Date(Z,ae,q,ce,te,De,oe),J&&(ue=F(ue).week(J).toDate()),ue)}catch{return new Date("")}}(_,L,T,v),this.init(),D&&D!==!0&&(this.$L=this.locale(D).$L),I&&_!=this.format(L)&&(this.$d=new Date("")),s={}}else if(L instanceof Array)for(var k=L.length,R=1;R<=k;R+=1){E[1]=L[R-1];var S=v.apply(this,E);if(S.isValid()){this.$d=S.$d,this.$L=S.$L,this.init();break}R===k&&(this.$d=new Date(""))}else b.call(this,w)}}})});var Hue=Ni((zI,GI)=>{"use strict";(function(t,e){typeof zI=="object"&&typeof GI<"u"?GI.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_advancedFormat=e()})(zI,function(){"use strict";return function(t,e){var r=e.prototype,n=r.format;r.format=function(i){var a=this,s=this.$locale();if(!this.isValid())return n.bind(this)(i);var l=this.$utils(),u=(i||"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(h){switch(h){case"Q":return Math.ceil((a.$M+1)/3);case"Do":return s.ordinal(a.$D);case"gggg":return a.weekYear();case"GGGG":return a.isoWeekYear();case"wo":return s.ordinal(a.week(),"W");case"w":case"ww":return l.s(a.week(),h==="w"?1:2,"0");case"W":case"WW":return l.s(a.isoWeek(),h==="W"?1:2,"0");case"k":case"kk":return l.s(String(a.$H===0?24:a.$H),h==="k"?1:2,"0");case"X":return Math.floor(a.$d.getTime()/1e3);case"x":return a.$d.getTime();case"z":return"["+a.offsetName()+"]";case"zzz":return"["+a.offsetName("long")+"]";default:return h}});return n.bind(this)(u)}}})});function she(t,e,r){let n=!0;for(;n;)n=!1,r.forEach(function(i){let a="^\\s*"+i+"\\s*$",s=new RegExp(a);t[0].match(s)&&(e[i]=!0,t.shift(1),n=!0)})}var que,ho,Xue,jue,Kue,Wue,Bc,HI,WI,YI,ux,hx,qI,XI,oE,Mg,jI,Que,KI,fx,QI,ZI,lE,$I,T$e,k$e,E$e,S$e,C$e,A$e,_$e,L$e,D$e,N$e,R$e,M$e,I$e,O$e,P$e,B$e,F$e,z$e,G$e,$$e,V$e,U$e,H$e,Zue,W$e,Y$e,q$e,Jue,X$e,VI,ehe,the,aE,Rg,j$e,K$e,UI,sE,Vi,rhe,Q$e,w0,Z$e,Yue,J$e,nhe,eVe,ihe,tVe,rVe,ahe,ohe=M(()=>{"use strict";que=ka(Fp(),1),ho=ka(Ab(),1),Xue=ka(Vue(),1),jue=ka(Uue(),1),Kue=ka(Hue(),1);ht();Vt();hr();ki();ho.default.extend(Xue.default);ho.default.extend(jue.default);ho.default.extend(Kue.default);Wue={friday:5,saturday:6},Bc="",HI="",YI="",ux=[],hx=[],qI=new Map,XI=[],oE=[],Mg="",jI="",Que=["active","done","crit","milestone"],KI=[],fx=!1,QI=!1,ZI="sunday",lE="saturday",$I=0,T$e=o(function(){XI=[],oE=[],Mg="",KI=[],aE=0,UI=void 0,sE=void 0,Vi=[],Bc="",HI="",jI="",WI=void 0,YI="",ux=[],hx=[],fx=!1,QI=!1,$I=0,qI=new Map,_r(),ZI="sunday",lE="saturday"},"clear"),k$e=o(function(t){HI=t},"setAxisFormat"),E$e=o(function(){return HI},"getAxisFormat"),S$e=o(function(t){WI=t},"setTickInterval"),C$e=o(function(){return WI},"getTickInterval"),A$e=o(function(t){YI=t},"setTodayMarker"),_$e=o(function(){return YI},"getTodayMarker"),L$e=o(function(t){Bc=t},"setDateFormat"),D$e=o(function(){fx=!0},"enableInclusiveEndDates"),N$e=o(function(){return fx},"endDatesAreInclusive"),R$e=o(function(){QI=!0},"enableTopAxis"),M$e=o(function(){return QI},"topAxisEnabled"),I$e=o(function(t){jI=t},"setDisplayMode"),O$e=o(function(){return jI},"getDisplayMode"),P$e=o(function(){return Bc},"getDateFormat"),B$e=o(function(t){ux=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),F$e=o(function(){return ux},"getIncludes"),z$e=o(function(t){hx=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),G$e=o(function(){return hx},"getExcludes"),$$e=o(function(){return qI},"getLinks"),V$e=o(function(t){Mg=t,XI.push(t)},"addSection"),U$e=o(function(){return XI},"getSections"),H$e=o(function(){let t=Yue(),e=10,r=0;for(;!t&&r[\d\w- ]+)/.exec(r);if(i!==null){let s=null;for(let u of i.groups.ids.split(" ")){let h=w0(u);h!==void 0&&(!s||h.endTime>s.endTime)&&(s=h)}if(s)return s.endTime;let l=new Date;return l.setHours(0,0,0,0),l}let a=(0,ho.default)(r,e.trim(),!0);if(a.isValid())return a.toDate();{Y.debug("Invalid date:"+r),Y.debug("With date format:"+e.trim());let s=new Date(r);if(s===void 0||isNaN(s.getTime())||s.getFullYear()<-1e4||s.getFullYear()>1e4)throw new Error("Invalid date:"+r);return s}},"getStartDate"),ehe=o(function(t){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return e!==null?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]},"parseDuration"),the=o(function(t,e,r,n=!1){r=r.trim();let a=/^until\s+(?[\d\w- ]+)/.exec(r);if(a!==null){let f=null;for(let p of a.groups.ids.split(" ")){let m=w0(p);m!==void 0&&(!f||m.startTime{window.open(r,"_self")}),qI.set(n,r))}),nhe(t,"clickable")},"setLink"),nhe=o(function(t,e){t.split(",").forEach(function(r){let n=w0(r);n!==void 0&&n.classes.push(e)})},"setClass"),eVe=o(function(t,e,r){if(de().securityLevel!=="loose"||e===void 0)return;let n=[];if(typeof r=="string"){n=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let a=0;a{Ut.runFunc(e,...n)})},"setClickFun"),ihe=o(function(t,e){KI.push(function(){let r=document.querySelector(`[id="${t}"]`);r!==null&&r.addEventListener("click",function(){e()})},function(){let r=document.querySelector(`[id="${t}-text"]`);r!==null&&r.addEventListener("click",function(){e()})})},"pushFun"),tVe=o(function(t,e,r){t.split(",").forEach(function(n){eVe(n,e,r)}),nhe(t,"clickable")},"setClickEvent"),rVe=o(function(t){KI.forEach(function(e){e(t)})},"bindFunctions"),ahe={getConfig:o(()=>de().gantt,"getConfig"),clear:T$e,setDateFormat:L$e,getDateFormat:P$e,enableInclusiveEndDates:D$e,endDatesAreInclusive:N$e,enableTopAxis:R$e,topAxisEnabled:M$e,setAxisFormat:k$e,getAxisFormat:E$e,setTickInterval:S$e,getTickInterval:C$e,setTodayMarker:A$e,getTodayMarker:_$e,setAccTitle:Rr,getAccTitle:Pr,setDiagramTitle:ln,getDiagramTitle:Jr,setDisplayMode:I$e,getDisplayMode:O$e,setAccDescription:Br,getAccDescription:Fr,addSection:V$e,getSections:U$e,getTasks:H$e,addTask:Q$e,findTaskById:w0,addTaskOrg:Z$e,setIncludes:B$e,getIncludes:F$e,setExcludes:z$e,getExcludes:G$e,setClickEvent:tVe,setLink:J$e,getLinks:$$e,bindFunctions:rVe,parseDuration:ehe,isInvalidDate:Zue,setWeekday:W$e,getWeekday:Y$e,setWeekend:q$e};o(she,"getTaskTags")});var cE,nVe,lhe,iVe,Uu,aVe,che,uhe=M(()=>{"use strict";cE=ka(Ab(),1);ht();mr();fr();Vt();ni();nVe=o(function(){Y.debug("Something is calling, setConf, remove the call")},"setConf"),lhe={monday:Th,tuesday:b3,wednesday:w3,thursday:cc,friday:T3,saturday:k3,sunday:wl},iVe=o((t,e)=>{let r=[...t].map(()=>-1/0),n=[...t].sort((a,s)=>a.startTime-s.startTime||a.order-s.order),i=0;for(let a of n)for(let s=0;s=r[s]){r[s]=a.endTime,a.order=s+e,s>i&&(i=s);break}return i},"getMaxIntersections"),aVe=o(function(t,e,r,n){let i=de().gantt,a=de().securityLevel,s;a==="sandbox"&&(s=ze("#i"+e));let l=a==="sandbox"?ze(s.nodes()[0].contentDocument.body):ze("body"),u=a==="sandbox"?s.nodes()[0].contentDocument:document,h=u.getElementById(e);Uu=h.parentElement.offsetWidth,Uu===void 0&&(Uu=1200),i.useWidth!==void 0&&(Uu=i.useWidth);let f=n.db.getTasks(),d=[];for(let C of f)d.push(C.type);d=L(d);let p={},m=2*i.topPadding;if(n.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let C={};for(let I of f)C[I.section]===void 0?C[I.section]=[I]:C[I.section].push(I);let A=0;for(let I of Object.keys(C)){let D=iVe(C[I],A)+1;A+=D,m+=D*(i.barHeight+i.barGap),p[I]=D}}else{m+=f.length*(i.barHeight+i.barGap);for(let C of d)p[C]=f.filter(A=>A.type===C).length}h.setAttribute("viewBox","0 0 "+Uu+" "+m);let g=l.select(`[id="${e}"]`),y=C3().domain([N4(f,function(C){return C.startTime}),D4(f,function(C){return C.endTime})]).rangeRound([0,Uu-i.leftPadding-i.rightPadding]);function v(C,A){let I=C.startTime,D=A.startTime,k=0;return I>D?k=1:I$.order))].map($=>C.find(z=>z.order===$));g.append("g").selectAll("rect").data(N).enter().append("rect").attr("x",0).attr("y",function($,z){return z=$.order,z*A+I-2}).attr("width",function(){return S-i.rightPadding/2}).attr("height",A).attr("class",function($){for(let[z,W]of d.entries())if($.type===W)return"section section"+z%i.numberSectionStyles;return"section section0"});let P=g.append("g").selectAll("rect").data(C).enter(),F=n.db.getLinks();if(P.append("rect").attr("id",function($){return $.id}).attr("rx",3).attr("ry",3).attr("x",function($){return $.milestone?y($.startTime)+D+.5*(y($.endTime)-y($.startTime))-.5*k:y($.startTime)+D}).attr("y",function($,z){return z=$.order,z*A+I}).attr("width",function($){return $.milestone?k:y($.renderEndTime||$.endTime)-y($.startTime)}).attr("height",k).attr("transform-origin",function($,z){return z=$.order,(y($.startTime)+D+.5*(y($.endTime)-y($.startTime))).toString()+"px "+(z*A+I+.5*k).toString()+"px"}).attr("class",function($){let z="task",W="";$.classes.length>0&&(W=$.classes.join(" "));let j=0;for(let[ie,Q]of d.entries())$.type===Q&&(j=ie%i.numberSectionStyles);let K="";return $.active?$.crit?K+=" activeCrit":K=" active":$.done?$.crit?K=" doneCrit":K=" done":$.crit&&(K+=" crit"),K.length===0&&(K=" task"),$.milestone&&(K=" milestone "+K),K+=j,K+=" "+W,z+K}),P.append("text").attr("id",function($){return $.id+"-text"}).text(function($){return $.task}).attr("font-size",i.fontSize).attr("x",function($){let z=y($.startTime),W=y($.renderEndTime||$.endTime);$.milestone&&(z+=.5*(y($.endTime)-y($.startTime))-.5*k),$.milestone&&(W=z+k);let j=this.getBBox().width;return j>W-z?W+j+1.5*i.leftPadding>S?z+D-5:W+D+5:(W-z)/2+z+D}).attr("y",function($,z){return z=$.order,z*A+i.barHeight/2+(i.fontSize/2-2)+I}).attr("text-height",k).attr("class",function($){let z=y($.startTime),W=y($.endTime);$.milestone&&(W=z+k);let j=this.getBBox().width,K="";$.classes.length>0&&(K=$.classes.join(" "));let ie=0;for(let[ee,J]of d.entries())$.type===J&&(ie=ee%i.numberSectionStyles);let Q="";return $.active&&($.crit?Q="activeCritText"+ie:Q="activeText"+ie),$.done?$.crit?Q=Q+" doneCritText"+ie:Q=Q+" doneText"+ie:$.crit&&(Q=Q+" critText"+ie),$.milestone&&(Q+=" milestoneText"),j>W-z?W+j+1.5*i.leftPadding>S?K+" taskTextOutsideLeft taskTextOutside"+ie+" "+Q:K+" taskTextOutsideRight taskTextOutside"+ie+" "+Q+" width-"+j:K+" taskText taskText"+ie+" "+Q+" width-"+j}),de().securityLevel==="sandbox"){let $;$=ze("#i"+e);let z=$.nodes()[0].contentDocument;P.filter(function(W){return F.has(W.id)}).each(function(W){var j=z.querySelector("#"+W.id),K=z.querySelector("#"+W.id+"-text");let ie=j.parentNode;var Q=z.createElement("a");Q.setAttribute("xlink:href",F.get(W.id)),Q.setAttribute("target","_top"),ie.appendChild(Q),Q.appendChild(j),Q.appendChild(K)})}}o(b,"drawRects");function w(C,A,I,D,k,R,S,O){if(S.length===0&&O.length===0)return;let N,P;for(let{startTime:j,endTime:K}of R)(N===void 0||jP)&&(P=K);if(!N||!P)return;if((0,cE.default)(P).diff((0,cE.default)(N),"year")>5){Y.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}let F=n.db.getDateFormat(),B=[],$=null,z=(0,cE.default)(N);for(;z.valueOf()<=P;)n.db.isInvalidDate(z,F,S,O)?$?$.end=z:$={start:z,end:z}:$&&(B.push($),$=null),z=z.add(1,"d");g.append("g").selectAll("rect").data(B).enter().append("rect").attr("id",function(j){return"exclude-"+j.start.format("YYYY-MM-DD")}).attr("x",function(j){return y(j.start)+I}).attr("y",i.gridLineStartPadding).attr("width",function(j){let K=j.end.add(1,"day");return y(K)-y(j.start)}).attr("height",k-A-i.gridLineStartPadding).attr("transform-origin",function(j,K){return(y(j.start)+I+.5*(y(j.end)-y(j.start))).toString()+"px "+(K*C+.5*k).toString()+"px"}).attr("class","exclude-range")}o(w,"drawExcludeDays");function _(C,A,I,D){let k=v7(y).tickSize(-D+A+i.gridLineStartPadding).tickFormat(dd(n.db.getAxisFormat()||i.axisFormat||"%Y-%m-%d")),S=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(n.db.getTickInterval()||i.tickInterval);if(S!==null){let O=S[1],N=S[2],P=n.db.getWeekday()||i.weekday;switch(N){case"millisecond":k.ticks(oc.every(O));break;case"second":k.ticks(Xs.every(O));break;case"minute":k.ticks(mu.every(O));break;case"hour":k.ticks(gu.every(O));break;case"day":k.ticks(Lo.every(O));break;case"week":k.ticks(lhe[P].every(O));break;case"month":k.ticks(yu.every(O));break}}if(g.append("g").attr("class","grid").attr("transform","translate("+C+", "+(D-50)+")").call(k).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),n.db.topAxisEnabled()||i.topAxis){let O=y7(y).tickSize(-D+A+i.gridLineStartPadding).tickFormat(dd(n.db.getAxisFormat()||i.axisFormat||"%Y-%m-%d"));if(S!==null){let N=S[1],P=S[2],F=n.db.getWeekday()||i.weekday;switch(P){case"millisecond":O.ticks(oc.every(N));break;case"second":O.ticks(Xs.every(N));break;case"minute":O.ticks(mu.every(N));break;case"hour":O.ticks(gu.every(N));break;case"day":O.ticks(Lo.every(N));break;case"week":O.ticks(lhe[F].every(N));break;case"month":O.ticks(yu.every(N));break}}g.append("g").attr("class","grid").attr("transform","translate("+C+", "+A+")").call(O).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}o(_,"makeGrid");function T(C,A){let I=0,D=Object.keys(p).map(k=>[k,p[k]]);g.append("g").selectAll("text").data(D).enter().append(function(k){let R=k[0].split(je.lineBreakRegex),S=-(R.length-1)/2,O=u.createElementNS("http://www.w3.org/2000/svg","text");O.setAttribute("dy",S+"em");for(let[N,P]of R.entries()){let F=u.createElementNS("http://www.w3.org/2000/svg","tspan");F.setAttribute("alignment-baseline","central"),F.setAttribute("x","10"),N>0&&F.setAttribute("dy","1em"),F.textContent=P,O.appendChild(F)}return O}).attr("x",10).attr("y",function(k,R){if(R>0)for(let S=0;S{"use strict";sVe=o(t=>` + .mermaid-main-font { + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .exclude-range { + fill: ${t.excludeBkgColor}; + } + + .section { + stroke: none; + opacity: 0.2; + } + + .section0 { + fill: ${t.sectionBkgColor}; + } + + .section2 { + fill: ${t.sectionBkgColor2}; + } + + .section1, + .section3 { + fill: ${t.altSectionBkgColor}; + opacity: 0.2; + } + + .sectionTitle0 { + fill: ${t.titleColor}; + } + + .sectionTitle1 { + fill: ${t.titleColor}; + } + + .sectionTitle2 { + fill: ${t.titleColor}; + } + + .sectionTitle3 { + fill: ${t.titleColor}; + } + + .sectionTitle { + text-anchor: start; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + + /* Grid and axis */ + + .grid .tick { + stroke: ${t.gridColor}; + opacity: 0.8; + shape-rendering: crispEdges; + } + + .grid .tick text { + font-family: ${t.fontFamily}; + fill: ${t.textColor}; + } + + .grid path { + stroke-width: 0; + } + + + /* Today line */ + + .today { + fill: none; + stroke: ${t.todayLineColor}; + stroke-width: 2px; + } + + + /* Task styling */ + + /* Default task */ + + .task { + stroke-width: 2; + } + + .taskText { + text-anchor: middle; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .taskTextOutsideRight { + fill: ${t.taskTextDarkColor}; + text-anchor: start; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .taskTextOutsideLeft { + fill: ${t.taskTextDarkColor}; + text-anchor: end; + } + + + /* Special case clickable */ + + .task.clickable { + cursor: pointer; + } + + .taskText.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideLeft.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideRight.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + + /* Specific task settings for the sections*/ + + .taskText0, + .taskText1, + .taskText2, + .taskText3 { + fill: ${t.taskTextColor}; + } + + .task0, + .task1, + .task2, + .task3 { + fill: ${t.taskBkgColor}; + stroke: ${t.taskBorderColor}; + } + + .taskTextOutside0, + .taskTextOutside2 + { + fill: ${t.taskTextOutsideColor}; + } + + .taskTextOutside1, + .taskTextOutside3 { + fill: ${t.taskTextOutsideColor}; + } + + + /* Active task */ + + .active0, + .active1, + .active2, + .active3 { + fill: ${t.activeTaskBkgColor}; + stroke: ${t.activeTaskBorderColor}; + } + + .activeText0, + .activeText1, + .activeText2, + .activeText3 { + fill: ${t.taskTextDarkColor} !important; + } + + + /* Completed task */ + + .done0, + .done1, + .done2, + .done3 { + stroke: ${t.doneTaskBorderColor}; + fill: ${t.doneTaskBkgColor}; + stroke-width: 2; + } + + .doneText0, + .doneText1, + .doneText2, + .doneText3 { + fill: ${t.taskTextDarkColor} !important; + } + + + /* Tasks on the critical line */ + + .crit0, + .crit1, + .crit2, + .crit3 { + stroke: ${t.critBorderColor}; + fill: ${t.critBkgColor}; + stroke-width: 2; + } + + .activeCrit0, + .activeCrit1, + .activeCrit2, + .activeCrit3 { + stroke: ${t.critBorderColor}; + fill: ${t.activeTaskBkgColor}; + stroke-width: 2; + } + + .doneCrit0, + .doneCrit1, + .doneCrit2, + .doneCrit3 { + stroke: ${t.critBorderColor}; + fill: ${t.doneTaskBkgColor}; + stroke-width: 2; + cursor: pointer; + shape-rendering: crispEdges; + } + + .milestone { + transform: rotate(45deg) scale(0.8,0.8); + } + + .milestoneText { + font-style: italic; + } + .doneCritText0, + .doneCritText1, + .doneCritText2, + .doneCritText3 { + fill: ${t.taskTextDarkColor} !important; + } + + .activeCritText0, + .activeCritText1, + .activeCritText2, + .activeCritText3 { + fill: ${t.taskTextDarkColor} !important; + } + + .titleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.titleColor||t.textColor}; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } +`,"getStyles"),hhe=sVe});var dhe={};vr(dhe,{diagram:()=>oVe});var oVe,phe=M(()=>{"use strict";$ue();ohe();uhe();fhe();oVe={parser:Gue,db:ahe,renderer:che,styles:hhe}});var yhe,vhe=M(()=>{"use strict";Ng();ht();yhe={parse:o(async t=>{let e=await Gl("info",t);Y.debug(e)},"parse")}});var dx,JI=M(()=>{dx="11.4.1"});var fVe,dVe,xhe,bhe=M(()=>{"use strict";JI();fVe={version:dx},dVe=o(()=>fVe.version,"getVersion"),xhe={getVersion:dVe}});var Oa,Hu=M(()=>{"use strict";mr();Vt();Oa=o(t=>{let{securityLevel:e}=de(),r=ze("body");if(e==="sandbox"){let a=ze(`#i${t}`).node()?.contentDocument??document;r=ze(a.body)}return r.select(`#${t}`)},"selectSvgElement")});var pVe,whe,The=M(()=>{"use strict";ht();Hu();ni();pVe=o((t,e,r)=>{Y.debug(`rendering info diagram +`+t);let n=Oa(e);Zr(n,100,400,!0),n.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${r}`)},"draw"),whe={draw:pVe}});var khe={};vr(khe,{diagram:()=>mVe});var mVe,Ehe=M(()=>{"use strict";vhe();bhe();The();mVe={parser:yhe,db:xhe,renderer:whe}});var Ahe,eO,uE,tO,vVe,xVe,bVe,wVe,TVe,kVe,EVe,hE,rO=M(()=>{"use strict";ht();ki();hs();Ahe=ur.pie,eO={sections:new Map,showData:!1,config:Ahe},uE=eO.sections,tO=eO.showData,vVe=structuredClone(Ahe),xVe=o(()=>structuredClone(vVe),"getConfig"),bVe=o(()=>{uE=new Map,tO=eO.showData,_r()},"clear"),wVe=o(({label:t,value:e})=>{uE.has(t)||(uE.set(t,e),Y.debug(`added new section: ${t}, with value: ${e}`))},"addSection"),TVe=o(()=>uE,"getSections"),kVe=o(t=>{tO=t},"setShowData"),EVe=o(()=>tO,"getShowData"),hE={getConfig:xVe,clear:bVe,setDiagramTitle:ln,getDiagramTitle:Jr,setAccTitle:Rr,getAccTitle:Pr,setAccDescription:Br,getAccDescription:Fr,addSection:wVe,getSections:TVe,setShowData:kVe,getShowData:EVe}});var SVe,_he,Lhe=M(()=>{"use strict";Ng();ht();ox();rO();SVe=o((t,e)=>{lf(t,e),e.setShowData(t.showData),t.sections.map(e.addSection)},"populateDb"),_he={parse:o(async t=>{let e=await Gl("pie",t);Y.debug(e),SVe(e,hE)},"parse")}});var CVe,Dhe,Nhe=M(()=>{"use strict";CVe=o(t=>` + .pieCircle{ + stroke: ${t.pieStrokeColor}; + stroke-width : ${t.pieStrokeWidth}; + opacity : ${t.pieOpacity}; + } + .pieOuterCircle{ + stroke: ${t.pieOuterStrokeColor}; + stroke-width: ${t.pieOuterStrokeWidth}; + fill: none; + } + .pieTitleText { + text-anchor: middle; + font-size: ${t.pieTitleTextSize}; + fill: ${t.pieTitleTextColor}; + font-family: ${t.fontFamily}; + } + .slice { + font-family: ${t.fontFamily}; + fill: ${t.pieSectionTextColor}; + font-size:${t.pieSectionTextSize}; + // fill: white; + } + .legend text { + fill: ${t.pieLegendTextColor}; + font-family: ${t.fontFamily}; + font-size: ${t.pieLegendTextSize}; + } +`,"getStyles"),Dhe=CVe});var AVe,_Ve,Rhe,Mhe=M(()=>{"use strict";mr();Vt();ht();Hu();ni();hr();AVe=o(t=>{let e=[...t.entries()].map(n=>({label:n[0],value:n[1]})).sort((n,i)=>i.value-n.value);return R3().value(n=>n.value)(e)},"createPieArcs"),_Ve=o((t,e,r,n)=>{Y.debug(`rendering pie chart +`+t);let i=n.db,a=de(),s=ws(i.getConfig(),a.pie),l=40,u=18,h=4,f=450,d=f,p=Oa(e),m=p.append("g");m.attr("transform","translate("+d/2+","+f/2+")");let{themeVariables:g}=a,[y]=Fo(g.pieOuterStrokeWidth);y??=2;let v=s.textPosition,x=Math.min(d,f)/2-l,b=El().innerRadius(0).outerRadius(x),w=El().innerRadius(x*v).outerRadius(x*v);m.append("circle").attr("cx",0).attr("cy",0).attr("r",x+y/2).attr("class","pieOuterCircle");let _=i.getSections(),T=AVe(_),E=[g.pie1,g.pie2,g.pie3,g.pie4,g.pie5,g.pie6,g.pie7,g.pie8,g.pie9,g.pie10,g.pie11,g.pie12],L=du(E);m.selectAll("mySlices").data(T).enter().append("path").attr("d",b).attr("fill",k=>L(k.data.label)).attr("class","pieCircle");let C=0;_.forEach(k=>{C+=k}),m.selectAll("mySlices").data(T).enter().append("text").text(k=>(k.data.value/C*100).toFixed(0)+"%").attr("transform",k=>"translate("+w.centroid(k)+")").style("text-anchor","middle").attr("class","slice"),m.append("text").text(i.getDiagramTitle()).attr("x",0).attr("y",-(f-50)/2).attr("class","pieTitleText");let A=m.selectAll(".legend").data(L.domain()).enter().append("g").attr("class","legend").attr("transform",(k,R)=>{let S=u+h,O=S*L.domain().length/2,N=12*u,P=R*S-O;return"translate("+N+","+P+")"});A.append("rect").attr("width",u).attr("height",u).style("fill",L).style("stroke",L),A.data(T).append("text").attr("x",u+h).attr("y",u-h).text(k=>{let{label:R,value:S}=k.data;return i.getShowData()?`${R} [${S}]`:R});let I=Math.max(...A.selectAll("text").nodes().map(k=>k?.getBoundingClientRect().width??0)),D=d+l+u+h+I;p.attr("viewBox",`0 0 ${D} ${f}`),Zr(p,f,D,s.useMaxWidth)},"draw"),Rhe={draw:_Ve}});var Ihe={};vr(Ihe,{diagram:()=>LVe});var LVe,Ohe=M(()=>{"use strict";Lhe();rO();Nhe();Mhe();LVe={parser:_he,db:hE,renderer:Rhe,styles:Dhe}});var nO,Fhe,zhe=M(()=>{"use strict";nO=function(){var t=o(function(Te,se,Ee,Ae){for(Ee=Ee||{},Ae=Te.length;Ae--;Ee[Te[Ae]]=se);return Ee},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[1,7],s=[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],u=[55,56,57],h=[2,36],f=[1,37],d=[1,36],p=[1,38],m=[1,35],g=[1,43],y=[1,41],v=[1,14],x=[1,23],b=[1,18],w=[1,19],_=[1,20],T=[1,21],E=[1,22],L=[1,24],C=[1,25],A=[1,26],I=[1,27],D=[1,28],k=[1,29],R=[1,32],S=[1,33],O=[1,34],N=[1,39],P=[1,40],F=[1,42],B=[1,44],$=[1,62],z=[1,61],W=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],j=[1,65],K=[1,66],ie=[1,67],Q=[1,68],ee=[1,69],J=[1,70],H=[1,71],q=[1,72],Z=[1,73],ae=[1,74],ue=[1,75],ce=[1,76],te=[4,5,6,7,8,9,10,11,12,13,14,15,18],De=[1,90],oe=[1,91],ke=[1,92],Fe=[1,99],Be=[1,93],Ve=[1,96],Ge=[1,94],He=[1,95],xe=[1,97],X=[1,98],fe=[1,102],he=[10,55,56,57],ge=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],ne={trace:o(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:o(function(se,Ee,Ae,Pe,Me,me,We){var Re=me.length-1;switch(Me){case 23:this.$=me[Re];break;case 24:this.$=me[Re-1]+""+me[Re];break;case 26:this.$=me[Re-1]+me[Re];break;case 27:this.$=[me[Re].trim()];break;case 28:me[Re-2].push(me[Re].trim()),this.$=me[Re-2];break;case 29:this.$=me[Re-4],Pe.addClass(me[Re-2],me[Re]);break;case 37:this.$=[];break;case 42:this.$=me[Re].trim(),Pe.setDiagramTitle(this.$);break;case 43:this.$=me[Re].trim(),Pe.setAccTitle(this.$);break;case 44:case 45:this.$=me[Re].trim(),Pe.setAccDescription(this.$);break;case 46:Pe.addSection(me[Re].substr(8)),this.$=me[Re].substr(8);break;case 47:Pe.addPoint(me[Re-3],"",me[Re-1],me[Re],[]);break;case 48:Pe.addPoint(me[Re-4],me[Re-3],me[Re-1],me[Re],[]);break;case 49:Pe.addPoint(me[Re-4],"",me[Re-2],me[Re-1],me[Re]);break;case 50:Pe.addPoint(me[Re-5],me[Re-4],me[Re-2],me[Re-1],me[Re]);break;case 51:Pe.setXAxisLeftText(me[Re-2]),Pe.setXAxisRightText(me[Re]);break;case 52:me[Re-1].text+=" \u27F6 ",Pe.setXAxisLeftText(me[Re-1]);break;case 53:Pe.setXAxisLeftText(me[Re]);break;case 54:Pe.setYAxisBottomText(me[Re-2]),Pe.setYAxisTopText(me[Re]);break;case 55:me[Re-1].text+=" \u27F6 ",Pe.setYAxisBottomText(me[Re-1]);break;case 56:Pe.setYAxisBottomText(me[Re]);break;case 57:Pe.setQuadrant1Text(me[Re]);break;case 58:Pe.setQuadrant2Text(me[Re]);break;case 59:Pe.setQuadrant3Text(me[Re]);break;case 60:Pe.setQuadrant4Text(me[Re]);break;case 64:this.$={text:me[Re],type:"text"};break;case 65:this.$={text:me[Re-1].text+""+me[Re],type:me[Re-1].type};break;case 66:this.$={text:me[Re],type:"text"};break;case 67:this.$={text:me[Re],type:"markdown"};break;case 68:this.$=me[Re];break;case 69:this.$=me[Re-1]+""+me[Re];break}},"anonymous"),table:[{18:e,26:1,27:2,28:r,55:n,56:i,57:a},{1:[3]},{18:e,26:8,27:2,28:r,55:n,56:i,57:a},{18:e,26:9,27:2,28:r,55:n,56:i,57:a},t(s,[2,33],{29:10}),t(l,[2,61]),t(l,[2,62]),t(l,[2,63]),{1:[2,30]},{1:[2,31]},t(u,h,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:w,39:_,41:T,42:E,48:L,50:C,51:A,52:I,53:D,54:k,60:R,61:S,63:O,64:N,65:P,66:F,67:B}),t(s,[2,34]),{27:45,55:n,56:i,57:a},t(u,[2,37]),t(u,h,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:f,5:d,10:p,12:m,13:g,14:y,18:v,25:x,35:b,37:w,39:_,41:T,42:E,48:L,50:C,51:A,52:I,53:D,54:k,60:R,61:S,63:O,64:N,65:P,66:F,67:B}),t(u,[2,39]),t(u,[2,40]),t(u,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},t(u,[2,45]),t(u,[2,46]),{18:[1,50]},{4:f,5:d,10:p,12:m,13:g,14:y,43:51,58:31,60:R,61:S,63:O,64:N,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:52,58:31,60:R,61:S,63:O,64:N,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:53,58:31,60:R,61:S,63:O,64:N,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:54,58:31,60:R,61:S,63:O,64:N,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:55,58:31,60:R,61:S,63:O,64:N,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:56,58:31,60:R,61:S,63:O,64:N,65:P,66:F,67:B},{4:f,5:d,8:$,10:p,12:m,13:g,14:y,18:z,44:[1,57],47:[1,58],58:60,59:59,63:O,64:N,65:P,66:F,67:B},t(W,[2,64]),t(W,[2,66]),t(W,[2,67]),t(W,[2,70]),t(W,[2,71]),t(W,[2,72]),t(W,[2,73]),t(W,[2,74]),t(W,[2,75]),t(W,[2,76]),t(W,[2,77]),t(W,[2,78]),t(W,[2,79]),t(W,[2,80]),t(s,[2,35]),t(u,[2,38]),t(u,[2,42]),t(u,[2,43]),t(u,[2,44]),{3:64,4:j,5:K,6:ie,7:Q,8:ee,9:J,10:H,11:q,12:Z,13:ae,14:ue,15:ce,21:63},t(u,[2,53],{59:59,58:60,4:f,5:d,8:$,10:p,12:m,13:g,14:y,18:z,49:[1,77],63:O,64:N,65:P,66:F,67:B}),t(u,[2,56],{59:59,58:60,4:f,5:d,8:$,10:p,12:m,13:g,14:y,18:z,49:[1,78],63:O,64:N,65:P,66:F,67:B}),t(u,[2,57],{59:59,58:60,4:f,5:d,8:$,10:p,12:m,13:g,14:y,18:z,63:O,64:N,65:P,66:F,67:B}),t(u,[2,58],{59:59,58:60,4:f,5:d,8:$,10:p,12:m,13:g,14:y,18:z,63:O,64:N,65:P,66:F,67:B}),t(u,[2,59],{59:59,58:60,4:f,5:d,8:$,10:p,12:m,13:g,14:y,18:z,63:O,64:N,65:P,66:F,67:B}),t(u,[2,60],{59:59,58:60,4:f,5:d,8:$,10:p,12:m,13:g,14:y,18:z,63:O,64:N,65:P,66:F,67:B}),{45:[1,79]},{44:[1,80]},t(W,[2,65]),t(W,[2,81]),t(W,[2,82]),t(W,[2,83]),{3:82,4:j,5:K,6:ie,7:Q,8:ee,9:J,10:H,11:q,12:Z,13:ae,14:ue,15:ce,18:[1,81]},t(te,[2,23]),t(te,[2,1]),t(te,[2,2]),t(te,[2,3]),t(te,[2,4]),t(te,[2,5]),t(te,[2,6]),t(te,[2,7]),t(te,[2,8]),t(te,[2,9]),t(te,[2,10]),t(te,[2,11]),t(te,[2,12]),t(u,[2,52],{58:31,43:83,4:f,5:d,10:p,12:m,13:g,14:y,60:R,61:S,63:O,64:N,65:P,66:F,67:B}),t(u,[2,55],{58:31,43:84,4:f,5:d,10:p,12:m,13:g,14:y,60:R,61:S,63:O,64:N,65:P,66:F,67:B}),{46:[1,85]},{45:[1,86]},{4:De,5:oe,6:ke,8:Fe,11:Be,13:Ve,16:89,17:Ge,18:He,19:xe,20:X,22:88,23:87},t(te,[2,24]),t(u,[2,51],{59:59,58:60,4:f,5:d,8:$,10:p,12:m,13:g,14:y,18:z,63:O,64:N,65:P,66:F,67:B}),t(u,[2,54],{59:59,58:60,4:f,5:d,8:$,10:p,12:m,13:g,14:y,18:z,63:O,64:N,65:P,66:F,67:B}),t(u,[2,47],{22:88,16:89,23:100,4:De,5:oe,6:ke,8:Fe,11:Be,13:Ve,17:Ge,18:He,19:xe,20:X}),{46:[1,101]},t(u,[2,29],{10:fe}),t(he,[2,27],{16:103,4:De,5:oe,6:ke,8:Fe,11:Be,13:Ve,17:Ge,18:He,19:xe,20:X}),t(ge,[2,25]),t(ge,[2,13]),t(ge,[2,14]),t(ge,[2,15]),t(ge,[2,16]),t(ge,[2,17]),t(ge,[2,18]),t(ge,[2,19]),t(ge,[2,20]),t(ge,[2,21]),t(ge,[2,22]),t(u,[2,49],{10:fe}),t(u,[2,48],{22:88,16:89,23:104,4:De,5:oe,6:ke,8:Fe,11:Be,13:Ve,17:Ge,18:He,19:xe,20:X}),{4:De,5:oe,6:ke,8:Fe,11:Be,13:Ve,16:89,17:Ge,18:He,19:xe,20:X,22:105},t(ge,[2,26]),t(u,[2,50],{10:fe}),t(he,[2,28],{16:103,4:De,5:oe,6:ke,8:Fe,11:Be,13:Ve,17:Ge,18:He,19:xe,20:X})],defaultActions:{8:[2,30],9:[2,31]},parseError:o(function(se,Ee){if(Ee.recoverable)this.trace(se);else{var Ae=new Error(se);throw Ae.hash=Ee,Ae}},"parseError"),parse:o(function(se){var Ee=this,Ae=[0],Pe=[],Me=[null],me=[],We=this.table,Re="",tt=0,gt=0,Et=0,vt=2,Ye=1,Tt=me.slice.call(arguments,1),$e=Object.create(this.lexer),rt={yy:{}};for(var ft in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ft)&&(rt.yy[ft]=this.yy[ft]);$e.setInput(se,rt.yy),rt.yy.lexer=$e,rt.yy.parser=this,typeof $e.yylloc>"u"&&($e.yylloc={});var kt=$e.yylloc;me.push(kt);var er=$e.options&&$e.options.ranges;typeof rt.yy.parseError=="function"?this.parseError=rt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function dt(Se){Ae.length=Ae.length-2*Se,Me.length=Me.length-Se,me.length=me.length-Se}o(dt,"popStack");function Xe(){var Se;return Se=Pe.pop()||$e.lex()||Ye,typeof Se!="number"&&(Se instanceof Array&&(Pe=Se,Se=Pe.pop()),Se=Ee.symbols_[Se]||Se),Se}o(Xe,"lex");for(var ct,Lt,Rt,zt,Xn,or,hn={},Tn,Ur,ri,Mn;;){if(Rt=Ae[Ae.length-1],this.defaultActions[Rt]?zt=this.defaultActions[Rt]:((ct===null||typeof ct>"u")&&(ct=Xe()),zt=We[Rt]&&We[Rt][ct]),typeof zt>"u"||!zt.length||!zt[0]){var yt="";Mn=[];for(Tn in We[Rt])this.terminals_[Tn]&&Tn>vt&&Mn.push("'"+this.terminals_[Tn]+"'");$e.showPosition?yt="Parse error on line "+(tt+1)+`: +`+$e.showPosition()+` +Expecting `+Mn.join(", ")+", got '"+(this.terminals_[ct]||ct)+"'":yt="Parse error on line "+(tt+1)+": Unexpected "+(ct==Ye?"end of input":"'"+(this.terminals_[ct]||ct)+"'"),this.parseError(yt,{text:$e.match,token:this.terminals_[ct]||ct,line:$e.yylineno,loc:kt,expected:Mn})}if(zt[0]instanceof Array&&zt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Rt+", token: "+ct);switch(zt[0]){case 1:Ae.push(ct),Me.push($e.yytext),me.push($e.yylloc),Ae.push(zt[1]),ct=null,Lt?(ct=Lt,Lt=null):(gt=$e.yyleng,Re=$e.yytext,tt=$e.yylineno,kt=$e.yylloc,Et>0&&Et--);break;case 2:if(Ur=this.productions_[zt[1]][1],hn.$=Me[Me.length-Ur],hn._$={first_line:me[me.length-(Ur||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(Ur||1)].first_column,last_column:me[me.length-1].last_column},er&&(hn._$.range=[me[me.length-(Ur||1)].range[0],me[me.length-1].range[1]]),or=this.performAction.apply(hn,[Re,gt,tt,rt.yy,zt[1],Me,me].concat(Tt)),typeof or<"u")return or;Ur&&(Ae=Ae.slice(0,-1*Ur*2),Me=Me.slice(0,-1*Ur),me=me.slice(0,-1*Ur)),Ae.push(this.productions_[zt[1]][0]),Me.push(hn.$),me.push(hn._$),ri=We[Ae[Ae.length-2]][Ae[Ae.length-1]],Ae.push(ri);break;case 3:return!0}}return!0},"parse")},ye=function(){var Te={EOF:1,parseError:o(function(Ee,Ae){if(this.yy.parser)this.yy.parser.parseError(Ee,Ae);else throw new Error(Ee)},"parseError"),setInput:o(function(se,Ee){return this.yy=Ee||this.yy||{},this._input=se,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:o(function(){var se=this._input[0];this.yytext+=se,this.yyleng++,this.offset++,this.match+=se,this.matched+=se;var Ee=se.match(/(?:\r\n?|\n).*/g);return Ee?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),se},"input"),unput:o(function(se){var Ee=se.length,Ae=se.split(/(?:\r\n?|\n)/g);this._input=se+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ee),this.offset-=Ee;var Pe=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),Ae.length-1&&(this.yylineno-=Ae.length-1);var Me=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:Ae?(Ae.length===Pe.length?this.yylloc.first_column:0)+Pe[Pe.length-Ae.length].length-Ae[0].length:this.yylloc.first_column-Ee},this.options.ranges&&(this.yylloc.range=[Me[0],Me[0]+this.yyleng-Ee]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(se){this.unput(this.match.slice(se))},"less"),pastInput:o(function(){var se=this.matched.substr(0,this.matched.length-this.match.length);return(se.length>20?"...":"")+se.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var se=this.match;return se.length<20&&(se+=this._input.substr(0,20-se.length)),(se.substr(0,20)+(se.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var se=this.pastInput(),Ee=new Array(se.length+1).join("-");return se+this.upcomingInput()+` +`+Ee+"^"},"showPosition"),test_match:o(function(se,Ee){var Ae,Pe,Me;if(this.options.backtrack_lexer&&(Me={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&&(Me.yylloc.range=this.yylloc.range.slice(0))),Pe=se[0].match(/(?:\r\n?|\n).*/g),Pe&&(this.yylineno+=Pe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Pe?Pe[Pe.length-1].length-Pe[Pe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+se[0].length},this.yytext+=se[0],this.match+=se[0],this.matches=se,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(se[0].length),this.matched+=se[0],Ae=this.performAction.call(this,this.yy,this,Ee,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ae)return Ae;if(this._backtrack){for(var me in Me)this[me]=Me[me];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var se,Ee,Ae,Pe;this._more||(this.yytext="",this.match="");for(var Me=this._currentRules(),me=0;meEe[0].length)){if(Ee=Ae,Pe=me,this.options.backtrack_lexer){if(se=this.test_match(Ae,Me[me]),se!==!1)return se;if(this._backtrack){Ee=!1;continue}else return!1}else if(!this.options.flex)break}return Ee?(se=this.test_match(Ee,Me[Pe]),se!==!1?se:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Ee=this.next();return Ee||this.lex()},"lex"),begin:o(function(Ee){this.conditionStack.push(Ee)},"begin"),popState:o(function(){var Ee=this.conditionStack.length-1;return Ee>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(Ee){return Ee=this.conditionStack.length-1-Math.abs(Ee||0),Ee>=0?this.conditionStack[Ee]:"INITIAL"},"topState"),pushState:o(function(Ee){this.begin(Ee)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(Ee,Ae,Pe,Me){var me=Me;switch(Pe){case 0:break;case 1:break;case 2:return 55;case 3:break;case 4:return this.begin("title"),35;break;case 5:return this.popState(),"title_value";break;case 6:return this.begin("acc_title"),37;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),39;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11: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 23:this.popState();break;case 24:this.begin("string");break;case 25:this.popState();break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;break;case 29:return this.begin("point_start"),44;break;case 30:return this.begin("point_x"),45;break;case 31:this.popState();break;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;break;case 34:return 28;case 35:return 4;case 36:return 11;case 37:return 64;case 38:return 10;case 39:return 65;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}}};return Te}();ne.lexer=ye;function U(){this.yy={}}return o(U,"Parser"),U.prototype=ne,ne.Parser=U,new U}();nO.parser=nO;Fhe=nO});var os,fE,Ghe=M(()=>{"use strict";mr();hs();ht();Ub();os=sp(),fE=class{constructor(){this.classes=new Map;this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{o(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:ur.quadrantChart?.chartWidth||500,chartWidth:ur.quadrantChart?.chartHeight||500,titlePadding:ur.quadrantChart?.titlePadding||10,titleFontSize:ur.quadrantChart?.titleFontSize||20,quadrantPadding:ur.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:ur.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:ur.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:ur.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:ur.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:ur.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:ur.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:ur.quadrantChart?.pointTextPadding||5,pointLabelFontSize:ur.quadrantChart?.pointLabelFontSize||12,pointRadius:ur.quadrantChart?.pointRadius||5,xAxisPosition:ur.quadrantChart?.xAxisPosition||"top",yAxisPosition:ur.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:ur.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:ur.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:os.quadrant1Fill,quadrant2Fill:os.quadrant2Fill,quadrant3Fill:os.quadrant3Fill,quadrant4Fill:os.quadrant4Fill,quadrant1TextFill:os.quadrant1TextFill,quadrant2TextFill:os.quadrant2TextFill,quadrant3TextFill:os.quadrant3TextFill,quadrant4TextFill:os.quadrant4TextFill,quadrantPointFill:os.quadrantPointFill,quadrantPointTextFill:os.quadrantPointTextFill,quadrantXAxisTextFill:os.quadrantXAxisTextFill,quadrantYAxisTextFill:os.quadrantYAxisTextFill,quadrantTitleFill:os.quadrantTitleFill,quadrantInternalBorderStrokeFill:os.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:os.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,Y.info("clear called")}setData(e){this.data={...this.data,...e}}addPoints(e){this.data.points=[...e,...this.data.points]}addClass(e,r){this.classes.set(e,r)}setConfig(e){Y.trace("setConfig called with: ",e),this.config={...this.config,...e}}setThemeConfig(e){Y.trace("setThemeConfig called with: ",e),this.themeConfig={...this.themeConfig,...e}}calculateSpace(e,r,n,i){let a=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,s={top:e==="top"&&r?a:0,bottom:e==="bottom"&&r?a:0},l=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,u={left:this.config.yAxisPosition==="left"&&n?l:0,right:this.config.yAxisPosition==="right"&&n?l:0},h=this.config.titleFontSize+this.config.titlePadding*2,f={top:i?h:0},d=this.config.quadrantPadding+u.left,p=this.config.quadrantPadding+s.top+f.top,m=this.config.chartWidth-this.config.quadrantPadding*2-u.left-u.right,g=this.config.chartHeight-this.config.quadrantPadding*2-s.top-s.bottom-f.top,y=m/2,v=g/2;return{xAxisSpace:s,yAxisSpace:u,titleSpace:f,quadrantSpace:{quadrantLeft:d,quadrantTop:p,quadrantWidth:m,quadrantHalfWidth:y,quadrantHeight:g,quadrantHalfHeight:v}}}getAxisLabels(e,r,n,i){let{quadrantSpace:a,titleSpace:s}=i,{quadrantHalfHeight:l,quadrantHeight:u,quadrantLeft:h,quadrantHalfWidth:f,quadrantTop:d,quadrantWidth:p}=a,m=!!this.data.xAxisRightText,g=!!this.data.yAxisTopText,y=[];return this.data.xAxisLeftText&&r&&y.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&r&&y.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+f+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&n&&y.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+u-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&n&&y.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+l-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),y}getQuadrants(e){let{quadrantSpace:r}=e,{quadrantHalfHeight:n,quadrantLeft:i,quadrantHalfWidth:a,quadrantTop:s}=r,l=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i+a,y:s,width:a,height:n,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:i,y:s,width:a,height:n,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:i,y:s+n,width:a,height:n,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:i+a,y:s+n,width:a,height:n,fill:this.themeConfig.quadrant4Fill}];for(let u of l)u.text.x=u.x+u.width/2,this.data.points.length===0?(u.text.y=u.y+u.height/2,u.text.horizontalPos="middle"):(u.text.y=u.y+this.config.quadrantTextTopPadding,u.text.horizontalPos="top");return l}getQuadrantPoints(e){let{quadrantSpace:r}=e,{quadrantHeight:n,quadrantLeft:i,quadrantTop:a,quadrantWidth:s}=r,l=bl().domain([0,1]).range([i,s+i]),u=bl().domain([0,1]).range([n+a,a]);return this.data.points.map(f=>{let d=this.classes.get(f.className);return d&&(f={...d,...f}),{x:l(f.x),y:u(f.y),fill:f.color??this.themeConfig.quadrantPointFill,radius:f.radius??this.config.pointRadius,text:{text:f.text,fill:this.themeConfig.quadrantPointTextFill,x:l(f.x),y:u(f.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:f.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:f.strokeWidth??"0px"}})}getBorders(e){let r=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:n}=e,{quadrantHalfHeight:i,quadrantHeight:a,quadrantLeft:s,quadrantHalfWidth:l,quadrantTop:u,quadrantWidth:h}=n;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u,x2:s+h+r,y2:u},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s+h,y1:u+r,x2:s+h,y2:u+a-r},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u+a,x2:s+h+r,y2:u+a},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s,y1:u+r,x2:s,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+l,y1:u+r,x2:s+l,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+r,y1:u+i,x2:s+h-r,y2:u+i}]}getTitle(e){if(e)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(){let e=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),r=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),n=this.config.showTitle&&!!this.data.titleText,i=this.data.points.length>0?"bottom":this.config.xAxisPosition,a=this.calculateSpace(i,e,r,n);return{points:this.getQuadrantPoints(a),quadrants:this.getQuadrants(a),axisLabels:this.getAxisLabels(i,e,r,a),borderLines:this.getBorders(a),title:this.getTitle(n)}}}});function iO(t){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(t)}function $he(t){return!/^\d+$/.test(t)}function Vhe(t){return!/^\d+px$/.test(t)}var T0,Uhe=M(()=>{"use strict";T0=class extends Error{static{o(this,"InvalidStyleError")}constructor(e,r,n){super(`value for ${e} ${r} is invalid, please use a valid ${n}`),this.name="InvalidStyleError"}};o(iO,"validateHexCode");o($he,"validateNumber");o(Vhe,"validateSizeInPixels")});function Wu(t){return Tr(t.trim(),RVe)}function MVe(t){ya.setData({quadrant1Text:Wu(t.text)})}function IVe(t){ya.setData({quadrant2Text:Wu(t.text)})}function OVe(t){ya.setData({quadrant3Text:Wu(t.text)})}function PVe(t){ya.setData({quadrant4Text:Wu(t.text)})}function BVe(t){ya.setData({xAxisLeftText:Wu(t.text)})}function FVe(t){ya.setData({xAxisRightText:Wu(t.text)})}function zVe(t){ya.setData({yAxisTopText:Wu(t.text)})}function GVe(t){ya.setData({yAxisBottomText:Wu(t.text)})}function aO(t){let e={};for(let r of t){let[n,i]=r.trim().split(/\s*:\s*/);if(n==="radius"){if($he(i))throw new T0(n,i,"number");e.radius=parseInt(i)}else if(n==="color"){if(iO(i))throw new T0(n,i,"hex code");e.color=i}else if(n==="stroke-color"){if(iO(i))throw new T0(n,i,"hex code");e.strokeColor=i}else if(n==="stroke-width"){if(Vhe(i))throw new T0(n,i,"number of pixels (eg. 10px)");e.strokeWidth=i}else throw new Error(`style named ${n} is not supported.`)}return e}function $Ve(t,e,r,n,i){let a=aO(i);ya.addPoints([{x:r,y:n,text:Wu(t.text),className:e,...a}])}function VVe(t,e){ya.addClass(t,aO(e))}function UVe(t){ya.setConfig({chartWidth:t})}function HVe(t){ya.setConfig({chartHeight:t})}function WVe(){let t=de(),{themeVariables:e,quadrantChart:r}=t;return r&&ya.setConfig(r),ya.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}),ya.setData({titleText:Jr()}),ya.build()}var RVe,ya,YVe,Hhe,Whe=M(()=>{"use strict";Vt();fr();ki();Ghe();Uhe();RVe=de();o(Wu,"textSanitizer");ya=new fE;o(MVe,"setQuadrant1Text");o(IVe,"setQuadrant2Text");o(OVe,"setQuadrant3Text");o(PVe,"setQuadrant4Text");o(BVe,"setXAxisLeftText");o(FVe,"setXAxisRightText");o(zVe,"setYAxisTopText");o(GVe,"setYAxisBottomText");o(aO,"parseStyles");o($Ve,"addPoint");o(VVe,"addClass");o(UVe,"setWidth");o(HVe,"setHeight");o(WVe,"getQuadrantData");YVe=o(function(){ya.clear(),_r()},"clear"),Hhe={setWidth:UVe,setHeight:HVe,setQuadrant1Text:MVe,setQuadrant2Text:IVe,setQuadrant3Text:OVe,setQuadrant4Text:PVe,setXAxisLeftText:BVe,setXAxisRightText:FVe,setYAxisTopText:zVe,setYAxisBottomText:GVe,parseStyles:aO,addPoint:$Ve,addClass:VVe,getQuadrantData:WVe,clear:YVe,setAccTitle:Rr,getAccTitle:Pr,setDiagramTitle:ln,getDiagramTitle:Jr,getAccDescription:Fr,setAccDescription:Br}});var qVe,Yhe,qhe=M(()=>{"use strict";mr();Vt();ht();ni();qVe=o((t,e,r,n)=>{function i(C){return C==="top"?"hanging":"middle"}o(i,"getDominantBaseLine");function a(C){return C==="left"?"start":"middle"}o(a,"getTextAnchor");function s(C){return`translate(${C.x}, ${C.y}) rotate(${C.rotation||0})`}o(s,"getTransformation");let l=de();Y.debug(`Rendering quadrant chart +`+t);let u=l.securityLevel,h;u==="sandbox"&&(h=ze("#i"+e));let d=(u==="sandbox"?ze(h.nodes()[0].contentDocument.body):ze("body")).select(`[id="${e}"]`),p=d.append("g").attr("class","main"),m=l.quadrantChart?.chartWidth??500,g=l.quadrantChart?.chartHeight??500;Zr(d,g,m,l.quadrantChart?.useMaxWidth??!0),d.attr("viewBox","0 0 "+m+" "+g),n.db.setHeight(g),n.db.setWidth(m);let y=n.db.getQuadrantData(),v=p.append("g").attr("class","quadrants"),x=p.append("g").attr("class","border"),b=p.append("g").attr("class","data-points"),w=p.append("g").attr("class","labels"),_=p.append("g").attr("class","title");y.title&&_.append("text").attr("x",0).attr("y",0).attr("fill",y.title.fill).attr("font-size",y.title.fontSize).attr("dominant-baseline",i(y.title.horizontalPos)).attr("text-anchor",a(y.title.verticalPos)).attr("transform",s(y.title)).text(y.title.text),y.borderLines&&x.selectAll("line").data(y.borderLines).enter().append("line").attr("x1",C=>C.x1).attr("y1",C=>C.y1).attr("x2",C=>C.x2).attr("y2",C=>C.y2).style("stroke",C=>C.strokeFill).style("stroke-width",C=>C.strokeWidth);let T=v.selectAll("g.quadrant").data(y.quadrants).enter().append("g").attr("class","quadrant");T.append("rect").attr("x",C=>C.x).attr("y",C=>C.y).attr("width",C=>C.width).attr("height",C=>C.height).attr("fill",C=>C.fill),T.append("text").attr("x",0).attr("y",0).attr("fill",C=>C.text.fill).attr("font-size",C=>C.text.fontSize).attr("dominant-baseline",C=>i(C.text.horizontalPos)).attr("text-anchor",C=>a(C.text.verticalPos)).attr("transform",C=>s(C.text)).text(C=>C.text.text),w.selectAll("g.label").data(y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(C=>C.text).attr("fill",C=>C.fill).attr("font-size",C=>C.fontSize).attr("dominant-baseline",C=>i(C.horizontalPos)).attr("text-anchor",C=>a(C.verticalPos)).attr("transform",C=>s(C));let L=b.selectAll("g.data-point").data(y.points).enter().append("g").attr("class","data-point");L.append("circle").attr("cx",C=>C.x).attr("cy",C=>C.y).attr("r",C=>C.radius).attr("fill",C=>C.fill).attr("stroke",C=>C.strokeColor).attr("stroke-width",C=>C.strokeWidth),L.append("text").attr("x",0).attr("y",0).text(C=>C.text.text).attr("fill",C=>C.text.fill).attr("font-size",C=>C.text.fontSize).attr("dominant-baseline",C=>i(C.text.horizontalPos)).attr("text-anchor",C=>a(C.text.verticalPos)).attr("transform",C=>s(C.text))},"draw"),Yhe={draw:qVe}});var Xhe={};vr(Xhe,{diagram:()=>XVe});var XVe,jhe=M(()=>{"use strict";zhe();Whe();qhe();XVe={parser:Fhe,db:Hhe,renderer:Yhe,styles:o(()=>"","styles")}});var sO,Zhe,Jhe=M(()=>{"use strict";sO=function(){var t=o(function(O,N,P,F){for(P=P||{},F=O.length;F--;P[O[F]]=N);return P},"o"),e=[1,10,12,14,16,18,19,21,23],r=[2,6],n=[1,3],i=[1,5],a=[1,6],s=[1,7],l=[1,5,10,12,14,16,18,19,21,23,34,35,36],u=[1,25],h=[1,26],f=[1,28],d=[1,29],p=[1,30],m=[1,31],g=[1,32],y=[1,33],v=[1,34],x=[1,35],b=[1,36],w=[1,37],_=[1,43],T=[1,42],E=[1,47],L=[1,50],C=[1,10,12,14,16,18,19,21,23,34,35,36],A=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],I=[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],k={trace:o(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:o(function(N,P,F,B,$,z,W){var j=z.length-1;switch($){case 5:B.setOrientation(z[j]);break;case 9:B.setDiagramTitle(z[j].text.trim());break;case 12:B.setLineData({text:"",type:"text"},z[j]);break;case 13:B.setLineData(z[j-1],z[j]);break;case 14:B.setBarData({text:"",type:"text"},z[j]);break;case 15:B.setBarData(z[j-1],z[j]);break;case 16:this.$=z[j].trim(),B.setAccTitle(this.$);break;case 17:case 18:this.$=z[j].trim(),B.setAccDescription(this.$);break;case 19:this.$=z[j-1];break;case 20:this.$=[Number(z[j-2]),...z[j]];break;case 21:this.$=[Number(z[j])];break;case 22:B.setXAxisTitle(z[j]);break;case 23:B.setXAxisTitle(z[j-1]);break;case 24:B.setXAxisTitle({type:"text",text:""});break;case 25:B.setXAxisBand(z[j]);break;case 26:B.setXAxisRangeData(Number(z[j-2]),Number(z[j]));break;case 27:this.$=z[j-1];break;case 28:this.$=[z[j-2],...z[j]];break;case 29:this.$=[z[j]];break;case 30:B.setYAxisTitle(z[j]);break;case 31:B.setYAxisTitle(z[j-1]);break;case 32:B.setYAxisTitle({type:"text",text:""});break;case 33:B.setYAxisRangeData(Number(z[j-2]),Number(z[j]));break;case 37:this.$={text:z[j],type:"text"};break;case 38:this.$={text:z[j],type:"text"};break;case 39:this.$={text:z[j],type:"markdown"};break;case 40:this.$=z[j];break;case 41:this.$=z[j-1]+""+z[j];break}},"anonymous"),table:[t(e,r,{3:1,4:2,7:4,5:n,34:i,35:a,36:s}),{1:[3]},t(e,r,{4:2,7:4,3:8,5:n,34:i,35:a,36:s}),t(e,r,{4:2,7:4,6:9,3:10,5:n,8:[1,11],34:i,35:a,36:s}),{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(l,[2,34]),t(l,[2,35]),t(l,[2,36]),{1:[2,1]},t(e,r,{4:2,7:4,3:21,5:n,34:i,35:a,36:s}),{1:[2,3]},t(l,[2,5]),t(e,[2,7],{4:22,34:i,35:a,36:s}),{11:23,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:39,13:38,24:_,27:T,29:40,30:41,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:45,15:44,27:E,33:46,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:49,17:48,24:L,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{11:52,17:51,24:L,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},{20:[1,53]},{22:[1,54]},t(C,[2,18]),{1:[2,2]},t(C,[2,8]),t(C,[2,9]),t(A,[2,37],{40:55,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w}),t(A,[2,38]),t(A,[2,39]),t(I,[2,40]),t(I,[2,42]),t(I,[2,43]),t(I,[2,44]),t(I,[2,45]),t(I,[2,46]),t(I,[2,47]),t(I,[2,48]),t(I,[2,49]),t(I,[2,50]),t(I,[2,51]),t(C,[2,10]),t(C,[2,22],{30:41,29:56,24:_,27:T}),t(C,[2,24]),t(C,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},t(C,[2,11]),t(C,[2,30],{33:60,27:E}),t(C,[2,32]),{31:[1,61]},t(C,[2,12]),{17:62,24:L},{25:63,27:D},t(C,[2,14]),{17:65,24:L},t(C,[2,16]),t(C,[2,17]),t(I,[2,41]),t(C,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(C,[2,31]),{27:[1,69]},t(C,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(C,[2,15]),t(C,[2,26]),t(C,[2,27]),{11:59,32:72,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w},t(C,[2,33]),t(C,[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:o(function(N,P){if(P.recoverable)this.trace(N);else{var F=new Error(N);throw F.hash=P,F}},"parseError"),parse:o(function(N){var P=this,F=[0],B=[],$=[null],z=[],W=this.table,j="",K=0,ie=0,Q=0,ee=2,J=1,H=z.slice.call(arguments,1),q=Object.create(this.lexer),Z={yy:{}};for(var ae in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ae)&&(Z.yy[ae]=this.yy[ae]);q.setInput(N,Z.yy),Z.yy.lexer=q,Z.yy.parser=this,typeof q.yylloc>"u"&&(q.yylloc={});var ue=q.yylloc;z.push(ue);var ce=q.options&&q.options.ranges;typeof Z.yy.parseError=="function"?this.parseError=Z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function te(ne){F.length=F.length-2*ne,$.length=$.length-ne,z.length=z.length-ne}o(te,"popStack");function De(){var ne;return ne=B.pop()||q.lex()||J,typeof ne!="number"&&(ne instanceof Array&&(B=ne,ne=B.pop()),ne=P.symbols_[ne]||ne),ne}o(De,"lex");for(var oe,ke,Fe,Be,Ve,Ge,He={},xe,X,fe,he;;){if(Fe=F[F.length-1],this.defaultActions[Fe]?Be=this.defaultActions[Fe]:((oe===null||typeof oe>"u")&&(oe=De()),Be=W[Fe]&&W[Fe][oe]),typeof Be>"u"||!Be.length||!Be[0]){var ge="";he=[];for(xe in W[Fe])this.terminals_[xe]&&xe>ee&&he.push("'"+this.terminals_[xe]+"'");q.showPosition?ge="Parse error on line "+(K+1)+`: +`+q.showPosition()+` +Expecting `+he.join(", ")+", got '"+(this.terminals_[oe]||oe)+"'":ge="Parse error on line "+(K+1)+": Unexpected "+(oe==J?"end of input":"'"+(this.terminals_[oe]||oe)+"'"),this.parseError(ge,{text:q.match,token:this.terminals_[oe]||oe,line:q.yylineno,loc:ue,expected:he})}if(Be[0]instanceof Array&&Be.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Fe+", token: "+oe);switch(Be[0]){case 1:F.push(oe),$.push(q.yytext),z.push(q.yylloc),F.push(Be[1]),oe=null,ke?(oe=ke,ke=null):(ie=q.yyleng,j=q.yytext,K=q.yylineno,ue=q.yylloc,Q>0&&Q--);break;case 2:if(X=this.productions_[Be[1]][1],He.$=$[$.length-X],He._$={first_line:z[z.length-(X||1)].first_line,last_line:z[z.length-1].last_line,first_column:z[z.length-(X||1)].first_column,last_column:z[z.length-1].last_column},ce&&(He._$.range=[z[z.length-(X||1)].range[0],z[z.length-1].range[1]]),Ge=this.performAction.apply(He,[j,ie,K,Z.yy,Be[1],$,z].concat(H)),typeof Ge<"u")return Ge;X&&(F=F.slice(0,-1*X*2),$=$.slice(0,-1*X),z=z.slice(0,-1*X)),F.push(this.productions_[Be[1]][0]),$.push(He.$),z.push(He._$),fe=W[F[F.length-2]][F[F.length-1]],F.push(fe);break;case 3:return!0}}return!0},"parse")},R=function(){var O={EOF:1,parseError:o(function(P,F){if(this.yy.parser)this.yy.parser.parseError(P,F);else throw new Error(P)},"parseError"),setInput:o(function(N,P){return this.yy=P||this.yy||{},this._input=N,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:o(function(){var N=this._input[0];this.yytext+=N,this.yyleng++,this.offset++,this.match+=N,this.matched+=N;var P=N.match(/(?:\r\n?|\n).*/g);return P?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),N},"input"),unput:o(function(N){var P=N.length,F=N.split(/(?:\r\n?|\n)/g);this._input=N+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-P),this.offset-=P;var B=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),F.length-1&&(this.yylineno-=F.length-1);var $=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:F?(F.length===B.length?this.yylloc.first_column:0)+B[B.length-F.length].length-F[0].length:this.yylloc.first_column-P},this.options.ranges&&(this.yylloc.range=[$[0],$[0]+this.yyleng-P]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(N){this.unput(this.match.slice(N))},"less"),pastInput:o(function(){var N=this.matched.substr(0,this.matched.length-this.match.length);return(N.length>20?"...":"")+N.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var N=this.match;return N.length<20&&(N+=this._input.substr(0,20-N.length)),(N.substr(0,20)+(N.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var N=this.pastInput(),P=new Array(N.length+1).join("-");return N+this.upcomingInput()+` +`+P+"^"},"showPosition"),test_match:o(function(N,P){var F,B,$;if(this.options.backtrack_lexer&&($={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&&($.yylloc.range=this.yylloc.range.slice(0))),B=N[0].match(/(?:\r\n?|\n).*/g),B&&(this.yylineno+=B.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:B?B[B.length-1].length-B[B.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+N[0].length},this.yytext+=N[0],this.match+=N[0],this.matches=N,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(N[0].length),this.matched+=N[0],F=this.performAction.call(this,this.yy,this,P,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),F)return F;if(this._backtrack){for(var z in $)this[z]=$[z];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var N,P,F,B;this._more||(this.yytext="",this.match="");for(var $=this._currentRules(),z=0;z<$.length;z++)if(F=this._input.match(this.rules[$[z]]),F&&(!P||F[0].length>P[0].length)){if(P=F,B=z,this.options.backtrack_lexer){if(N=this.test_match(F,$[z]),N!==!1)return N;if(this._backtrack){P=!1;continue}else return!1}else if(!this.options.flex)break}return P?(N=this.test_match(P,$[B]),N!==!1?N:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var P=this.next();return P||this.lex()},"lex"),begin:o(function(P){this.conditionStack.push(P)},"begin"),popState:o(function(){var P=this.conditionStack.length-1;return P>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(P){return P=this.conditionStack.length-1-Math.abs(P||0),P>=0?this.conditionStack[P]:"INITIAL"},"topState"),pushState:o(function(P){this.begin(P)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(P,F,B,$){var z=$;switch(B){case 0:break;case 1:break;case 2:return this.popState(),34;break;case 3:return this.popState(),34;break;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.pushState("acc_descr"),21;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.pushState("acc_descr_multiline");break;case 12: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";break;case 17:return this.pushState("axis_data"),"Y_AXIS";break;case 18:return this.pushState("axis_band_data"),24;break;case 19:return 31;case 20:return this.pushState("data"),16;break;case 21:return this.pushState("data"),18;break;case 22:return this.pushState("data_inner"),24;break;case 23:return 27;case 24:return this.popState(),26;break;case 25:this.popState();break;case 26:this.pushState("string");break;case 27:this.popState();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 43:break;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}}};return O}();k.lexer=R;function S(){this.yy={}}return o(S,"Parser"),S.prototype=k,k.Parser=S,new S}();sO.parser=sO;Zhe=sO});function oO(t){return t.type==="bar"}function dE(t){return t.type==="band"}function Ig(t){return t.type==="linear"}var pE=M(()=>{"use strict";o(oO,"isBarPlot");o(dE,"isBandAxisData");o(Ig,"isLinearAxisData")});var Og,lO=M(()=>{"use strict";Dl();Og=class{constructor(e){this.parentGroup=e}static{o(this,"TextDimensionCalculatorWithFont")}getMaxDimension(e,r){if(!this.parentGroup)return{width:e.reduce((a,s)=>Math.max(s.length,a),0)*r,height:r};let n={width:0,height:0},i=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",r);for(let a of e){let s=gj(i,1,a),l=s?s.width:a.length*r,u=s?s.height:r;n.width=Math.max(n.width,l),n.height=Math.max(n.height,u)}return i.remove(),n}}});var Pg,cO=M(()=>{"use strict";Pg=class{constructor(e,r,n,i){this.axisConfig=e;this.title=r;this.textDimensionCalculator=n;this.axisThemeConfig=i;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{o(this,"BaseAxis")}setRange(e){this.range=e,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=e[1]-e[0]:this.boundingRect.width=e[1]-e[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(e){this.axisPosition=e,this.setRange(this.range)}getTickDistance(){let e=this.getRange();return Math.abs(e[0]-e[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(e=>e.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){.7*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(.7*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(e){let r=e.height;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.width;this.outerPadding=Math.min(n.width/2,i);let a=n.height+this.axisConfig.labelPadding*2;this.labelTextHeight=n.height,a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width,this.boundingRect.height=e.height-r}calculateSpaceIfDrawnVertical(e){let r=e.width;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.height;this.outerPadding=Math.min(n.height/2,i);let a=n.width+this.axisConfig.labelPadding*2;a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width-r,this.boundingRect.height=e.height}calculateSpace(e){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(e):this.calculateSpaceIfDrawnHorizontally(e),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}getDrawableElementsForLeftAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${r},${this.boundingRect.y} L ${r},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(r=>({text:r.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(r),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){let r=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${r},${this.getScaleValue(n)} L ${r-this.axisConfig.tickLength},${this.getScaleValue(n)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.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"}]}),e}getDrawableElementsForBottomAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),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){let r=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r} L ${this.getScaleValue(n)},${r+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.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"}]}),e}getDrawableElementsForTopAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let r=this.boundingRect.y;e.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(n)},${r+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.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"}]}),e}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}}});var mE,efe=M(()=>{"use strict";mr();ht();cO();mE=class extends Pg{static{o(this,"BandAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.categories=n,this.scale=Lp().domain(this.categories).range(this.getRange())}setRange(e){super.setRange(e)}recalculateScale(){this.scale=Lp().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),Y.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(e){return this.scale(e)??this.getRange()[0]}}});var gE,tfe=M(()=>{"use strict";mr();cO();gE=class extends Pg{static{o(this,"LinearAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.domain=n,this.scale=bl().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let e=[...this.domain];this.axisPosition==="left"&&e.reverse(),this.scale=bl().domain(e).range(this.getRange())}getScaleValue(e){return this.scale(e)}}});function uO(t,e,r,n){let i=new Og(n);return dE(t)?new mE(e,r,t.categories,t.title,i):new gE(e,r,[t.min,t.max],t.title,i)}var rfe=M(()=>{"use strict";pE();lO();efe();tfe();o(uO,"getAxis")});function nfe(t,e,r,n){let i=new Og(n);return new hO(i,t,e,r)}var hO,ife=M(()=>{"use strict";lO();hO=class{constructor(e,r,n,i){this.textDimensionCalculator=e;this.chartConfig=r;this.chartData=n;this.chartThemeConfig=i;this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{o(this,"ChartTitle")}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){let r=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(r.width,e.width),i=r.height+2*this.chartConfig.titlePadding;return r.width<=n&&r.height<=i&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=n,this.boundingRect.height=i,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let e=[];return this.showChartTitle&&e.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}]}),e}};o(nfe,"getChartTitleComponent")});var yE,afe=M(()=>{"use strict";mr();yE=class{constructor(e,r,n,i,a){this.plotData=e;this.xAxis=r;this.yAxis=n;this.orientation=i;this.plotIndex=a}static{o(this,"LinePlot")}getDrawableElement(){let e=this.plotData.data.map(n=>[this.xAxis.getScaleValue(n[0]),this.yAxis.getScaleValue(n[1])]),r;return this.orientation==="horizontal"?r=Ka().y(n=>n[0]).x(n=>n[1])(e):r=Ka().x(n=>n[0]).y(n=>n[1])(e),r?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:r,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}});var vE,sfe=M(()=>{"use strict";vE=class{constructor(e,r,n,i,a,s){this.barData=e;this.boundingRect=r;this.xAxis=n;this.yAxis=i;this.orientation=a;this.plotIndex=s}static{o(this,"BarPlot")}getDrawableElement(){let e=this.barData.data.map(a=>[this.xAxis.getScaleValue(a[0]),this.yAxis.getScaleValue(a[1])]),n=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-.05),i=n/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:this.boundingRect.x,y:a[0]-i,height:n,width:a[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:a[0]-i,y:a[1],width:n,height:this.boundingRect.y+this.boundingRect.height-a[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}}});function ofe(t,e,r){return new fO(t,e,r)}var fO,lfe=M(()=>{"use strict";afe();sfe();fO=class{constructor(e,r,n){this.chartConfig=e;this.chartData=r;this.chartThemeConfig=n;this.boundingRect={x:0,y:0,width:0,height:0}}static{o(this,"BasePlot")}setAxes(e,r){this.xAxis=e,this.yAxis=r}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){return this.boundingRect.width=e.width,this.boundingRect.height=e.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let e=[];for(let[r,n]of this.chartData.plots.entries())switch(n.type){case"line":{let i=new yE(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break;case"bar":{let i=new vE(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break}return e}};o(ofe,"getPlotComponent")});var xE,cfe=M(()=>{"use strict";rfe();ife();lfe();pE();xE=class{constructor(e,r,n,i){this.chartConfig=e;this.chartData=r;this.componentStore={title:nfe(e,r,n,i),plot:ofe(e,r,n),xAxis:uO(r.xAxis,e.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},i),yAxis:uO(r.yAxis,e.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},i)}}static{o(this,"Orchestrator")}calculateVerticalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),s=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),l=this.componentStore.plot.calculateSpace({width:a,height:s});e-=l.width,r-=l.height,l=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),i=l.height,r-=l.height,this.componentStore.xAxis.setAxisPosition("bottom"),l=this.componentStore.xAxis.calculateSpace({width:e,height:r}),r-=l.height,this.componentStore.yAxis.setAxisPosition("left"),l=this.componentStore.yAxis.calculateSpace({width:e,height:r}),n=l.width,e-=l.width,e>0&&(a+=e,e=0),r>0&&(s+=r,r=0),this.componentStore.plot.calculateSpace({width:a,height:s}),this.componentStore.plot.setBoundingBoxXY({x:n,y:i}),this.componentStore.xAxis.setRange([n,n+a]),this.componentStore.xAxis.setBoundingBoxXY({x:n,y:i+s}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some(u=>oO(u))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=0,s=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),l=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),u=this.componentStore.plot.calculateSpace({width:s,height:l});e-=u.width,r-=u.height,u=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),n=u.height,r-=u.height,this.componentStore.xAxis.setAxisPosition("left"),u=this.componentStore.xAxis.calculateSpace({width:e,height:r}),e-=u.width,i=u.width,this.componentStore.yAxis.setAxisPosition("top"),u=this.componentStore.yAxis.calculateSpace({width:e,height:r}),r-=u.height,a=n+u.height,e>0&&(s+=e,e=0),r>0&&(l+=r,r=0),this.componentStore.plot.calculateSpace({width:s,height:l}),this.componentStore.plot.setBoundingBoxXY({x:i,y:a}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:i,y:n}),this.componentStore.xAxis.setRange([a,a+l]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:a}),this.chartData.plots.some(h=>oO(h))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let e=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let r of Object.values(this.componentStore))e.push(...r.getDrawableElements());return e}}});var bE,ufe=M(()=>{"use strict";cfe();bE=class{static{o(this,"XYChartBuilder")}static build(e,r,n,i){return new xE(e,r,n,i).getDrawableElement()}}});function ffe(){let t=sp(),e=Sr();return ws(t.xyChart,e.themeVariables.xyChart)}function dfe(){let t=Sr();return ws(ur.xyChart,t.xyChart)}function pfe(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function mO(t){let e=Sr();return Tr(t.trim(),e)}function ZVe(t){hfe=t}function JVe(t){t==="horizontal"?mx.chartOrientation="horizontal":mx.chartOrientation="vertical"}function eUe(t){un.xAxis.title=mO(t.text)}function mfe(t,e){un.xAxis={type:"linear",title:un.xAxis.title,min:t,max:e},wE=!0}function tUe(t){un.xAxis={type:"band",title:un.xAxis.title,categories:t.map(e=>mO(e.text))},wE=!0}function rUe(t){un.yAxis.title=mO(t.text)}function nUe(t,e){un.yAxis={type:"linear",title:un.yAxis.title,min:t,max:e},pO=!0}function iUe(t){let e=Math.min(...t),r=Math.max(...t),n=Ig(un.yAxis)?un.yAxis.min:1/0,i=Ig(un.yAxis)?un.yAxis.max:-1/0;un.yAxis={type:"linear",title:un.yAxis.title,min:Math.min(n,e),max:Math.max(i,r)}}function gfe(t){let e=[];if(t.length===0)return e;if(!wE){let r=Ig(un.xAxis)?un.xAxis.min:1/0,n=Ig(un.xAxis)?un.xAxis.max:-1/0;mfe(Math.min(r,1),Math.max(n,t.length))}if(pO||iUe(t),dE(un.xAxis)&&(e=un.xAxis.categories.map((r,n)=>[r,t[n]])),Ig(un.xAxis)){let r=un.xAxis.min,n=un.xAxis.max,i=(n-r)/(t.length-1),a=[];for(let s=r;s<=n;s+=i)a.push(`${s}`);e=a.map((s,l)=>[s,t[l]])}return e}function yfe(t){return dO[t===0?0:t%dO.length]}function aUe(t,e){let r=gfe(e);un.plots.push({type:"line",strokeFill:yfe(px),strokeWidth:2,data:r}),px++}function sUe(t,e){let r=gfe(e);un.plots.push({type:"bar",fill:yfe(px),data:r}),px++}function oUe(){if(un.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return un.title=Jr(),bE.build(mx,un,gx,hfe)}function lUe(){return gx}function cUe(){return mx}var px,hfe,mx,gx,un,dO,wE,pO,uUe,vfe,xfe=M(()=>{"use strict";Ua();hs();Ub();hr();fr();ki();ufe();pE();px=0,mx=dfe(),gx=ffe(),un=pfe(),dO=gx.plotColorPalette.split(",").map(t=>t.trim()),wE=!1,pO=!1;o(ffe,"getChartDefaultThemeConfig");o(dfe,"getChartDefaultConfig");o(pfe,"getChartDefaultData");o(mO,"textSanitizer");o(ZVe,"setTmpSVGG");o(JVe,"setOrientation");o(eUe,"setXAxisTitle");o(mfe,"setXAxisRangeData");o(tUe,"setXAxisBand");o(rUe,"setYAxisTitle");o(nUe,"setYAxisRangeData");o(iUe,"setYAxisRangeFromPlotData");o(gfe,"transformDataWithoutCategory");o(yfe,"getPlotColorFromPalette");o(aUe,"setLineData");o(sUe,"setBarData");o(oUe,"getDrawableElem");o(lUe,"getChartThemeConfig");o(cUe,"getChartConfig");uUe=o(function(){_r(),px=0,mx=dfe(),un=pfe(),gx=ffe(),dO=gx.plotColorPalette.split(",").map(t=>t.trim()),wE=!1,pO=!1},"clear"),vfe={getDrawableElem:oUe,clear:uUe,setAccTitle:Rr,getAccTitle:Pr,setDiagramTitle:ln,getDiagramTitle:Jr,getAccDescription:Fr,setAccDescription:Br,setOrientation:JVe,setXAxisTitle:eUe,setXAxisRangeData:mfe,setXAxisBand:tUe,setYAxisTitle:rUe,setYAxisRangeData:nUe,setLineData:aUe,setBarData:sUe,setTmpSVGG:ZVe,getChartThemeConfig:lUe,getChartConfig:cUe}});var hUe,bfe,wfe=M(()=>{"use strict";ht();Hu();ni();hUe=o((t,e,r,n)=>{let i=n.db,a=i.getChartThemeConfig(),s=i.getChartConfig();function l(v){return v==="top"?"text-before-edge":"middle"}o(l,"getDominantBaseLine");function u(v){return v==="left"?"start":v==="right"?"end":"middle"}o(u,"getTextAnchor");function h(v){return`translate(${v.x}, ${v.y}) rotate(${v.rotation||0})`}o(h,"getTextTransformation"),Y.debug(`Rendering xychart chart +`+t);let f=Oa(e),d=f.append("g").attr("class","main"),p=d.append("rect").attr("width",s.width).attr("height",s.height).attr("class","background");Zr(f,s.height,s.width,!0),f.attr("viewBox",`0 0 ${s.width} ${s.height}`),p.attr("fill",a.backgroundColor),i.setTmpSVGG(f.append("g").attr("class","mermaid-tmp-group"));let m=i.getDrawableElem(),g={};function y(v){let x=d,b="";for(let[w]of v.entries()){let _=d;w>0&&g[b]&&(_=g[b]),b+=v[w],x=g[b],x||(x=g[b]=_.append("g").attr("class",v[w]))}return x}o(y,"getGroup");for(let v of m){if(v.data.length===0)continue;let x=y(v.groupTexts);switch(v.type){case"rect":x.selectAll("rect").data(v.data).enter().append("rect").attr("x",b=>b.x).attr("y",b=>b.y).attr("width",b=>b.width).attr("height",b=>b.height).attr("fill",b=>b.fill).attr("stroke",b=>b.strokeFill).attr("stroke-width",b=>b.strokeWidth);break;case"text":x.selectAll("text").data(v.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",b=>b.fill).attr("font-size",b=>b.fontSize).attr("dominant-baseline",b=>l(b.verticalPos)).attr("text-anchor",b=>u(b.horizontalPos)).attr("transform",b=>h(b)).text(b=>b.text);break;case"path":x.selectAll("path").data(v.data).enter().append("path").attr("d",b=>b.path).attr("fill",b=>b.fill?b.fill:"none").attr("stroke",b=>b.strokeFill).attr("stroke-width",b=>b.strokeWidth);break}}},"draw"),bfe={draw:hUe}});var Tfe={};vr(Tfe,{diagram:()=>fUe});var fUe,kfe=M(()=>{"use strict";Jhe();xfe();wfe();fUe={parser:Zhe,db:vfe,renderer:bfe}});var gO,Cfe,Afe=M(()=>{"use strict";gO=function(){var t=o(function(ie,Q,ee,J){for(ee=ee||{},J=ie.length;J--;ee[ie[J]]=Q);return ee},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[5,6,8,9,11,13,31,32,33,34,35,36,44,62,63],s=[1,18],l=[2,7],u=[1,22],h=[1,23],f=[1,24],d=[1,25],p=[1,26],m=[1,27],g=[1,20],y=[1,28],v=[1,29],x=[62,63],b=[5,8,9,11,13,31,32,33,34,35,36,44,51,53,62,63],w=[1,47],_=[1,48],T=[1,49],E=[1,50],L=[1,51],C=[1,52],A=[1,53],I=[53,54],D=[1,64],k=[1,60],R=[1,61],S=[1,62],O=[1,63],N=[1,65],P=[1,69],F=[1,70],B=[1,67],$=[1,68],z=[5,8,9,11,13,31,32,33,34,35,36,44,62,63],W={trace:o(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:o(function(Q,ee,J,H,q,Z,ae){var ue=Z.length-1;switch(q){case 4:this.$=Z[ue].trim(),H.setAccTitle(this.$);break;case 5:case 6:this.$=Z[ue].trim(),H.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:H.addRequirement(Z[ue-3],Z[ue-4]);break;case 14:H.setNewReqId(Z[ue-2]);break;case 15:H.setNewReqText(Z[ue-2]);break;case 16:H.setNewReqRisk(Z[ue-2]);break;case 17:H.setNewReqVerifyMethod(Z[ue-2]);break;case 20:this.$=H.RequirementType.REQUIREMENT;break;case 21:this.$=H.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 22:this.$=H.RequirementType.INTERFACE_REQUIREMENT;break;case 23:this.$=H.RequirementType.PERFORMANCE_REQUIREMENT;break;case 24:this.$=H.RequirementType.PHYSICAL_REQUIREMENT;break;case 25:this.$=H.RequirementType.DESIGN_CONSTRAINT;break;case 26:this.$=H.RiskLevel.LOW_RISK;break;case 27:this.$=H.RiskLevel.MED_RISK;break;case 28:this.$=H.RiskLevel.HIGH_RISK;break;case 29:this.$=H.VerifyType.VERIFY_ANALYSIS;break;case 30:this.$=H.VerifyType.VERIFY_DEMONSTRATION;break;case 31:this.$=H.VerifyType.VERIFY_INSPECTION;break;case 32:this.$=H.VerifyType.VERIFY_TEST;break;case 33:H.addElement(Z[ue-3]);break;case 34:H.setNewElementType(Z[ue-2]);break;case 35:H.setNewElementDocRef(Z[ue-2]);break;case 38:H.addRelationship(Z[ue-2],Z[ue],Z[ue-4]);break;case 39:H.addRelationship(Z[ue-2],Z[ue-4],Z[ue]);break;case 40:this.$=H.Relationships.CONTAINS;break;case 41:this.$=H.Relationships.COPIES;break;case 42:this.$=H.Relationships.DERIVES;break;case 43:this.$=H.Relationships.SATISFIES;break;case 44:this.$=H.Relationships.VERIFIES;break;case 45:this.$=H.Relationships.REFINES;break;case 46:this.$=H.Relationships.TRACES;break}},"anonymous"),table:[{3:1,4:2,6:e,9:r,11:n,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:e,9:r,11:n,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},t(a,[2,6]),{3:12,4:2,6:e,9:r,11:n,13:i},{1:[2,2]},{4:17,5:s,7:13,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},t(a,[2,4]),t(a,[2,5]),{1:[2,1]},{8:[1,30]},{4:17,5:s,7:31,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{4:17,5:s,7:32,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{4:17,5:s,7:33,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{4:17,5:s,7:34,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{4:17,5:s,7:35,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:19,23:21,31:u,32:h,33:f,34:d,35:p,36:m,44:g,62:y,63:v},{18:36,62:[1,37],63:[1,38]},{45:39,62:[1,40],63:[1,41]},{51:[1,42],53:[1,43]},t(x,[2,20]),t(x,[2,21]),t(x,[2,22]),t(x,[2,23]),t(x,[2,24]),t(x,[2,25]),t(b,[2,49]),t(b,[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:w,56:_,57:T,58:E,59:L,60:C,61:A},{52:54,55:w,56:_,57:T,58:E,59:L,60:C,61:A},{5:[1,55]},{5:[1,56]},{53:[1,57]},t(I,[2,40]),t(I,[2,41]),t(I,[2,42]),t(I,[2,43]),t(I,[2,44]),t(I,[2,45]),t(I,[2,46]),{54:[1,58]},{5:D,20:59,21:k,24:R,26:S,28:O,30:N},{5:P,30:F,46:66,47:B,49:$},{23:71,62:y,63:v},{23:72,62:y,63:v},t(z,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:D,20:77,21:k,24:R,26:S,28:O,30:N},t(z,[2,19]),t(z,[2,33]),{22:[1,78]},{22:[1,79]},{5:P,30:F,46:80,47:B,49:$},t(z,[2,37]),t(z,[2,38]),t(z,[2,39]),{23:81,62:y,63:v},{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]},t(z,[2,18]),{48:94,62:[1,95],63:[1,96]},{50:97,62:[1,98],63:[1,99]},t(z,[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:D,20:106,21:k,24:R,26:S,28:O,30:N},{5:D,20:107,21:k,24:R,26:S,28:O,30:N},{5:D,20:108,21:k,24:R,26:S,28:O,30:N},{5:D,20:109,21:k,24:R,26:S,28:O,30:N},{5:P,30:F,46:110,47:B,49:$},{5:P,30:F,46:111,47:B,49:$},t(z,[2,14]),t(z,[2,15]),t(z,[2,16]),t(z,[2,17]),t(z,[2,34]),t(z,[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:o(function(Q,ee){if(ee.recoverable)this.trace(Q);else{var J=new Error(Q);throw J.hash=ee,J}},"parseError"),parse:o(function(Q){var ee=this,J=[0],H=[],q=[null],Z=[],ae=this.table,ue="",ce=0,te=0,De=0,oe=2,ke=1,Fe=Z.slice.call(arguments,1),Be=Object.create(this.lexer),Ve={yy:{}};for(var Ge in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ge)&&(Ve.yy[Ge]=this.yy[Ge]);Be.setInput(Q,Ve.yy),Ve.yy.lexer=Be,Ve.yy.parser=this,typeof Be.yylloc>"u"&&(Be.yylloc={});var He=Be.yylloc;Z.push(He);var xe=Be.options&&Be.options.ranges;typeof Ve.yy.parseError=="function"?this.parseError=Ve.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function X(We){J.length=J.length-2*We,q.length=q.length-We,Z.length=Z.length-We}o(X,"popStack");function fe(){var We;return We=H.pop()||Be.lex()||ke,typeof We!="number"&&(We instanceof Array&&(H=We,We=H.pop()),We=ee.symbols_[We]||We),We}o(fe,"lex");for(var he,ge,ne,ye,U,Te,se={},Ee,Ae,Pe,Me;;){if(ne=J[J.length-1],this.defaultActions[ne]?ye=this.defaultActions[ne]:((he===null||typeof he>"u")&&(he=fe()),ye=ae[ne]&&ae[ne][he]),typeof ye>"u"||!ye.length||!ye[0]){var me="";Me=[];for(Ee in ae[ne])this.terminals_[Ee]&&Ee>oe&&Me.push("'"+this.terminals_[Ee]+"'");Be.showPosition?me="Parse error on line "+(ce+1)+`: +`+Be.showPosition()+` +Expecting `+Me.join(", ")+", got '"+(this.terminals_[he]||he)+"'":me="Parse error on line "+(ce+1)+": Unexpected "+(he==ke?"end of input":"'"+(this.terminals_[he]||he)+"'"),this.parseError(me,{text:Be.match,token:this.terminals_[he]||he,line:Be.yylineno,loc:He,expected:Me})}if(ye[0]instanceof Array&&ye.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ne+", token: "+he);switch(ye[0]){case 1:J.push(he),q.push(Be.yytext),Z.push(Be.yylloc),J.push(ye[1]),he=null,ge?(he=ge,ge=null):(te=Be.yyleng,ue=Be.yytext,ce=Be.yylineno,He=Be.yylloc,De>0&&De--);break;case 2:if(Ae=this.productions_[ye[1]][1],se.$=q[q.length-Ae],se._$={first_line:Z[Z.length-(Ae||1)].first_line,last_line:Z[Z.length-1].last_line,first_column:Z[Z.length-(Ae||1)].first_column,last_column:Z[Z.length-1].last_column},xe&&(se._$.range=[Z[Z.length-(Ae||1)].range[0],Z[Z.length-1].range[1]]),Te=this.performAction.apply(se,[ue,te,ce,Ve.yy,ye[1],q,Z].concat(Fe)),typeof Te<"u")return Te;Ae&&(J=J.slice(0,-1*Ae*2),q=q.slice(0,-1*Ae),Z=Z.slice(0,-1*Ae)),J.push(this.productions_[ye[1]][0]),q.push(se.$),Z.push(se._$),Pe=ae[J[J.length-2]][J[J.length-1]],J.push(Pe);break;case 3:return!0}}return!0},"parse")},j=function(){var ie={EOF:1,parseError:o(function(ee,J){if(this.yy.parser)this.yy.parser.parseError(ee,J);else throw new Error(ee)},"parseError"),setInput:o(function(Q,ee){return this.yy=ee||this.yy||{},this._input=Q,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:o(function(){var Q=this._input[0];this.yytext+=Q,this.yyleng++,this.offset++,this.match+=Q,this.matched+=Q;var ee=Q.match(/(?:\r\n?|\n).*/g);return ee?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Q},"input"),unput:o(function(Q){var ee=Q.length,J=Q.split(/(?:\r\n?|\n)/g);this._input=Q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ee),this.offset-=ee;var H=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),J.length-1&&(this.yylineno-=J.length-1);var q=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:J?(J.length===H.length?this.yylloc.first_column:0)+H[H.length-J.length].length-J[0].length:this.yylloc.first_column-ee},this.options.ranges&&(this.yylloc.range=[q[0],q[0]+this.yyleng-ee]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(Q){this.unput(this.match.slice(Q))},"less"),pastInput:o(function(){var Q=this.matched.substr(0,this.matched.length-this.match.length);return(Q.length>20?"...":"")+Q.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var Q=this.match;return Q.length<20&&(Q+=this._input.substr(0,20-Q.length)),(Q.substr(0,20)+(Q.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var Q=this.pastInput(),ee=new Array(Q.length+1).join("-");return Q+this.upcomingInput()+` +`+ee+"^"},"showPosition"),test_match:o(function(Q,ee){var J,H,q;if(this.options.backtrack_lexer&&(q={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&&(q.yylloc.range=this.yylloc.range.slice(0))),H=Q[0].match(/(?:\r\n?|\n).*/g),H&&(this.yylineno+=H.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:H?H[H.length-1].length-H[H.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Q[0].length},this.yytext+=Q[0],this.match+=Q[0],this.matches=Q,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(Q[0].length),this.matched+=Q[0],J=this.performAction.call(this,this.yy,this,ee,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),J)return J;if(this._backtrack){for(var Z in q)this[Z]=q[Z];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Q,ee,J,H;this._more||(this.yytext="",this.match="");for(var q=this._currentRules(),Z=0;Zee[0].length)){if(ee=J,H=Z,this.options.backtrack_lexer){if(Q=this.test_match(J,q[Z]),Q!==!1)return Q;if(this._backtrack){ee=!1;continue}else return!1}else if(!this.options.flex)break}return ee?(Q=this.test_match(ee,q[H]),Q!==!1?Q:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var ee=this.next();return ee||this.lex()},"lex"),begin:o(function(ee){this.conditionStack.push(ee)},"begin"),popState:o(function(){var ee=this.conditionStack.length-1;return ee>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(ee){return ee=this.conditionStack.length-1-Math.abs(ee||0),ee>=0?this.conditionStack[ee]:"INITIAL"},"topState"),pushState:o(function(ee){this.begin(ee)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(ee,J,H,q){var Z=q;switch(H){case 0:return"title";case 1:return this.begin("acc_title"),9;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),11;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 5;case 9:break;case 10:break;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 48:this.popState();break;case 49:return"qString";case 50:return J.yytext=J.yytext.trim(),62;break}},"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}}};return ie}();W.lexer=j;function K(){this.yy={}}return o(K,"Parser"),K.prototype=W,W.Parser=K,new K}();gO.parser=gO;Cfe=gO});var yO,Fs,yx,df,vx,gUe,yUe,vUe,xUe,bUe,wUe,TUe,kUe,EUe,SUe,CUe,AUe,_Ue,LUe,DUe,NUe,RUe,_fe,Lfe=M(()=>{"use strict";Vt();ht();ki();yO=[],Fs={},yx=new Map,df={},vx=new Map,gUe={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},yUe={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},vUe={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},xUe={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},bUe=o((t,e)=>(yx.has(t)||yx.set(t,{name:t,type:e,id:Fs.id,text:Fs.text,risk:Fs.risk,verifyMethod:Fs.verifyMethod}),Fs={},yx.get(t)),"addRequirement"),wUe=o(()=>yx,"getRequirements"),TUe=o(t=>{Fs!==void 0&&(Fs.id=t)},"setNewReqId"),kUe=o(t=>{Fs!==void 0&&(Fs.text=t)},"setNewReqText"),EUe=o(t=>{Fs!==void 0&&(Fs.risk=t)},"setNewReqRisk"),SUe=o(t=>{Fs!==void 0&&(Fs.verifyMethod=t)},"setNewReqVerifyMethod"),CUe=o(t=>(vx.has(t)||(vx.set(t,{name:t,type:df.type,docRef:df.docRef}),Y.info("Added new requirement: ",t)),df={},vx.get(t)),"addElement"),AUe=o(()=>vx,"getElements"),_Ue=o(t=>{df!==void 0&&(df.type=t)},"setNewElementType"),LUe=o(t=>{df!==void 0&&(df.docRef=t)},"setNewElementDocRef"),DUe=o((t,e,r)=>{yO.push({type:t,src:e,dst:r})},"addRelationship"),NUe=o(()=>yO,"getRelationships"),RUe=o(()=>{yO=[],Fs={},yx=new Map,df={},vx=new Map,_r()},"clear"),_fe={RequirementType:gUe,RiskLevel:yUe,VerifyType:vUe,Relationships:xUe,getConfig:o(()=>de().req,"getConfig"),addRequirement:bUe,getRequirements:wUe,setNewReqId:TUe,setNewReqText:kUe,setNewReqRisk:EUe,setNewReqVerifyMethod:SUe,setAccTitle:Rr,getAccTitle:Pr,setAccDescription:Br,getAccDescription:Fr,addElement:CUe,getElements:AUe,setNewElementType:_Ue,setNewElementDocRef:LUe,addRelationship:DUe,getRelationships:NUe,clear:RUe}});var MUe,Dfe,Nfe=M(()=>{"use strict";MUe=o(t=>` + + marker { + fill: ${t.relationColor}; + stroke: ${t.relationColor}; + } + + marker.cross { + stroke: ${t.lineColor}; + } + + svg { + font-family: ${t.fontFamily}; + font-size: ${t.fontSize}; + } + + .reqBox { + fill: ${t.requirementBackground}; + fill-opacity: 1.0; + stroke: ${t.requirementBorderColor}; + stroke-width: ${t.requirementBorderSize}; + } + + .reqTitle, .reqLabel{ + fill: ${t.requirementTextColor}; + } + .reqLabelBox { + fill: ${t.relationLabelBackground}; + fill-opacity: 1.0; + } + + .req-title-line { + stroke: ${t.requirementBorderColor}; + stroke-width: ${t.requirementBorderSize}; + } + .relationshipLine { + stroke: ${t.relationColor}; + stroke-width: 1; + } + .relationshipLabel { + fill: ${t.relationLabelColor}; + } + +`,"getStyles"),Dfe=MUe});var vO,IUe,xO,Rfe=M(()=>{"use strict";vO={CONTAINS:"contains",ARROW:"arrow"},IUe=o((t,e)=>{let r=t.append("defs").append("marker").attr("id",vO.CONTAINS+"_line_ending").attr("refX",0).attr("refY",e.line_height/2).attr("markerWidth",e.line_height).attr("markerHeight",e.line_height).attr("orient","auto").append("g");r.append("circle").attr("cx",e.line_height/2).attr("cy",e.line_height/2).attr("r",e.line_height/2).attr("fill","none"),r.append("line").attr("x1",0).attr("x2",e.line_height).attr("y1",e.line_height/2).attr("y2",e.line_height/2).attr("stroke-width",1),r.append("line").attr("y1",0).attr("y2",e.line_height).attr("x1",e.line_height/2).attr("x2",e.line_height/2).attr("stroke-width",1),t.append("defs").append("marker").attr("id",vO.ARROW+"_line_ending").attr("refX",e.line_height).attr("refY",.5*e.line_height).attr("markerWidth",e.line_height).attr("markerHeight",e.line_height).attr("orient","auto").append("path").attr("d",`M0,0 + L${e.line_height},${e.line_height/2} + M${e.line_height},${e.line_height/2} + L0,${e.line_height}`).attr("stroke-width",1)},"insertLineEndings"),xO={ReqMarkers:vO,insertLineEndings:IUe}});var ci,Mfe,Ife,Ofe,Pfe,OUe,PUe,BUe,FUe,zUe,GUe,Bg,$Ue,Bfe,Ffe=M(()=>{"use strict";mr();Pv();Ns();Vt();ht();ni();fr();Rfe();ci={},Mfe=0,Ife=o((t,e)=>t.insert("rect","#"+e).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",ci.rect_min_width+"px").attr("height",ci.rect_min_height+"px"),"newRectNode"),Ofe=o((t,e,r)=>{let n=ci.rect_min_width/2,i=t.append("text").attr("class","req reqLabel reqTitle").attr("id",e).attr("x",n).attr("y",ci.rect_padding).attr("dominant-baseline","hanging"),a=0;r.forEach(h=>{a==0?i.append("tspan").attr("text-anchor","middle").attr("x",ci.rect_min_width/2).attr("dy",0).text(h):i.append("tspan").attr("text-anchor","middle").attr("x",ci.rect_min_width/2).attr("dy",ci.line_height*.75).text(h),a++});let s=1.5*ci.rect_padding,l=a*ci.line_height*.75,u=s+l;return t.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",ci.rect_min_width).attr("y1",u).attr("y2",u),{titleNode:i,y:u}},"newTitleNode"),Pfe=o((t,e,r,n)=>{let i=t.append("text").attr("class","req reqLabel").attr("id",e).attr("x",ci.rect_padding).attr("y",n).attr("dominant-baseline","hanging"),a=0,s=30,l=[];return r.forEach(u=>{let h=u.length;for(;h>s&&a<3;){let f=u.substring(0,s);u=u.substring(s,u.length),h=u.length,l[l.length]=f,a++}if(a==3){let f=l[l.length-1];l[l.length-1]=f.substring(0,f.length-4)+"..."}else l[l.length]=u;a=0}),l.forEach(u=>{i.append("tspan").attr("x",ci.rect_padding).attr("dy",ci.line_height).text(u)}),i},"newBodyNode"),OUe=o((t,e,r,n)=>{let i=e.node().getTotalLength(),a=e.node().getPointAtLength(i*.5),s="rel"+Mfe;Mfe++;let u=t.append("text").attr("class","req relationshipLabel").attr("id",s).attr("x",a.x).attr("y",a.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(n).node().getBBox();t.insert("rect","#"+s).attr("class","req reqLabelBox").attr("x",a.x-u.width/2).attr("y",a.y-u.height/2).attr("width",u.width).attr("height",u.height).attr("fill","white").attr("fill-opacity","85%")},"addEdgeLabel"),PUe=o(function(t,e,r,n,i){let a=r.edge(Bg(e.src),Bg(e.dst)),s=Ka().x(function(u){return u.x}).y(function(u){return u.y}),l=t.insert("path","#"+n).attr("class","er relationshipLine").attr("d",s(a.points)).attr("fill","none");e.type==i.db.Relationships.CONTAINS?l.attr("marker-start","url("+je.getUrl(ci.arrowMarkerAbsolute)+"#"+e.type+"_line_ending)"):(l.attr("stroke-dasharray","10,7"),l.attr("marker-end","url("+je.getUrl(ci.arrowMarkerAbsolute)+"#"+xO.ReqMarkers.ARROW+"_line_ending)")),OUe(t,l,ci,`<<${e.type}>>`)},"drawRelationshipFromLayout"),BUe=o((t,e,r)=>{t.forEach((n,i)=>{i=Bg(i),Y.info("Added new requirement: ",i);let a=r.append("g").attr("id",i),s="req-"+i,l=Ife(a,s),u=[],h=Ofe(a,i+"_title",[`<<${n.type}>>`,`${n.name}`]);u.push(h.titleNode);let f=Pfe(a,i+"_body",[`Id: ${n.id}`,`Text: ${n.text}`,`Risk: ${n.risk}`,`Verification: ${n.verifyMethod}`],h.y);u.push(f);let d=l.node().getBBox();e.setNode(i,{width:d.width,height:d.height,shape:"rect",id:i})})},"drawReqs"),FUe=o((t,e,r)=>{t.forEach((n,i)=>{let a=Bg(i),s=r.append("g").attr("id",a),l="element-"+a,u=Ife(s,l),h=[],f=Ofe(s,l+"_title",["<>",`${i}`]);h.push(f.titleNode);let d=Pfe(s,l+"_body",[`Type: ${n.type||"Not Specified"}`,`Doc Ref: ${n.docRef||"None"}`],f.y);h.push(d);let p=u.node().getBBox();e.setNode(a,{width:p.width,height:p.height,shape:"rect",id:a})})},"drawElements"),zUe=o((t,e)=>(t.forEach(function(r){let n=Bg(r.src),i=Bg(r.dst);e.setEdge(n,i,{relationship:r})}),t),"addRelationships"),GUe=o(function(t,e){e.nodes().forEach(function(r){r!==void 0&&e.node(r)!==void 0&&(t.select("#"+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"),Bg=o(t=>t.replace(/\s/g,"").replace(/\./g,"_"),"elementString"),$Ue=o((t,e,r,n)=>{ci=de().requirement;let i=ci.securityLevel,a;i==="sandbox"&&(a=ze("#i"+e));let l=(i==="sandbox"?ze(a.nodes()[0].contentDocument.body):ze("body")).select(`[id='${e}']`);xO.insertLineEndings(l,ci);let u=new Mr({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:ci.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}}),h=n.db.getRequirements(),f=n.db.getElements(),d=n.db.getRelationships();BUe(h,u,l),FUe(f,u,l),zUe(d,u),Du(u),GUe(l,u),d.forEach(function(v){PUe(l,v,u,e,n)});let p=ci.rect_padding,m=l.node().getBBox(),g=m.width+p*2,y=m.height+p*2;Zr(l,y,g,ci.useMaxWidth),l.attr("viewBox",`${m.x-p} ${m.y-p} ${g} ${y}`)},"draw"),Bfe={draw:$Ue}});var zfe={};vr(zfe,{diagram:()=>VUe});var VUe,Gfe=M(()=>{"use strict";Afe();Lfe();Nfe();Ffe();VUe={parser:Cfe,db:_fe,renderer:Bfe,styles:Dfe}});var bO,Ufe,Hfe=M(()=>{"use strict";bO=function(){var t=o(function(H,q,Z,ae){for(Z=Z||{},ae=H.length;ae--;Z[H[ae]]=q);return Z},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,13],u=[1,14],h=[1,16],f=[1,17],d=[1,18],p=[1,24],m=[1,25],g=[1,26],y=[1,27],v=[1,28],x=[1,29],b=[1,30],w=[1,31],_=[1,32],T=[1,33],E=[1,34],L=[1,35],C=[1,36],A=[1,37],I=[1,38],D=[1,39],k=[1,41],R=[1,42],S=[1,43],O=[1,44],N=[1,45],P=[1,46],F=[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],B=[4,5,16,50,52,53],$=[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],z=[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],W=[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],j=[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],K=[68,69,70],ie=[1,122],Q={trace:o(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:o(function(q,Z,ae,ue,ce,te,De){var oe=te.length-1;switch(ce){case 3:return ue.apply(te[oe]),te[oe];break;case 4:case 9:this.$=[];break;case 5:case 10:te[oe-1].push(te[oe]),this.$=te[oe-1];break;case 6:case 7:case 11:case 12:this.$=te[oe];break;case 8:case 13:this.$=[];break;case 15:te[oe].type="createParticipant",this.$=te[oe];break;case 16:te[oe-1].unshift({type:"boxStart",boxData:ue.parseBoxData(te[oe-2])}),te[oe-1].push({type:"boxEnd",boxText:te[oe-2]}),this.$=te[oe-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(te[oe-2]),sequenceIndexStep:Number(te[oe-1]),sequenceVisible:!0,signalType:ue.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(te[oe-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:ue.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:ue.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:ue.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:ue.LINETYPE.ACTIVE_START,actor:te[oe-1].actor};break;case 23:this.$={type:"activeEnd",signalType:ue.LINETYPE.ACTIVE_END,actor:te[oe-1].actor};break;case 29:ue.setDiagramTitle(te[oe].substring(6)),this.$=te[oe].substring(6);break;case 30:ue.setDiagramTitle(te[oe].substring(7)),this.$=te[oe].substring(7);break;case 31:this.$=te[oe].trim(),ue.setAccTitle(this.$);break;case 32:case 33:this.$=te[oe].trim(),ue.setAccDescription(this.$);break;case 34:te[oe-1].unshift({type:"loopStart",loopText:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.LOOP_START}),te[oe-1].push({type:"loopEnd",loopText:te[oe-2],signalType:ue.LINETYPE.LOOP_END}),this.$=te[oe-1];break;case 35:te[oe-1].unshift({type:"rectStart",color:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.RECT_START}),te[oe-1].push({type:"rectEnd",color:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.RECT_END}),this.$=te[oe-1];break;case 36:te[oe-1].unshift({type:"optStart",optText:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.OPT_START}),te[oe-1].push({type:"optEnd",optText:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.OPT_END}),this.$=te[oe-1];break;case 37:te[oe-1].unshift({type:"altStart",altText:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.ALT_START}),te[oe-1].push({type:"altEnd",signalType:ue.LINETYPE.ALT_END}),this.$=te[oe-1];break;case 38:te[oe-1].unshift({type:"parStart",parText:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.PAR_START}),te[oe-1].push({type:"parEnd",signalType:ue.LINETYPE.PAR_END}),this.$=te[oe-1];break;case 39:te[oe-1].unshift({type:"parStart",parText:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.PAR_OVER_START}),te[oe-1].push({type:"parEnd",signalType:ue.LINETYPE.PAR_END}),this.$=te[oe-1];break;case 40:te[oe-1].unshift({type:"criticalStart",criticalText:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.CRITICAL_START}),te[oe-1].push({type:"criticalEnd",signalType:ue.LINETYPE.CRITICAL_END}),this.$=te[oe-1];break;case 41:te[oe-1].unshift({type:"breakStart",breakText:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.BREAK_START}),te[oe-1].push({type:"breakEnd",optText:ue.parseMessage(te[oe-2]),signalType:ue.LINETYPE.BREAK_END}),this.$=te[oe-1];break;case 43:this.$=te[oe-3].concat([{type:"option",optionText:ue.parseMessage(te[oe-1]),signalType:ue.LINETYPE.CRITICAL_OPTION},te[oe]]);break;case 45:this.$=te[oe-3].concat([{type:"and",parText:ue.parseMessage(te[oe-1]),signalType:ue.LINETYPE.PAR_AND},te[oe]]);break;case 47:this.$=te[oe-3].concat([{type:"else",altText:ue.parseMessage(te[oe-1]),signalType:ue.LINETYPE.ALT_ELSE},te[oe]]);break;case 48:te[oe-3].draw="participant",te[oe-3].type="addParticipant",te[oe-3].description=ue.parseMessage(te[oe-1]),this.$=te[oe-3];break;case 49:te[oe-1].draw="participant",te[oe-1].type="addParticipant",this.$=te[oe-1];break;case 50:te[oe-3].draw="actor",te[oe-3].type="addParticipant",te[oe-3].description=ue.parseMessage(te[oe-1]),this.$=te[oe-3];break;case 51:te[oe-1].draw="actor",te[oe-1].type="addParticipant",this.$=te[oe-1];break;case 52:te[oe-1].type="destroyParticipant",this.$=te[oe-1];break;case 53:this.$=[te[oe-1],{type:"addNote",placement:te[oe-2],actor:te[oe-1].actor,text:te[oe]}];break;case 54:te[oe-2]=[].concat(te[oe-1],te[oe-1]).slice(0,2),te[oe-2][0]=te[oe-2][0].actor,te[oe-2][1]=te[oe-2][1].actor,this.$=[te[oe-1],{type:"addNote",placement:ue.PLACEMENT.OVER,actor:te[oe-2].slice(0,2),text:te[oe]}];break;case 55:this.$=[te[oe-1],{type:"addLinks",actor:te[oe-1].actor,text:te[oe]}];break;case 56:this.$=[te[oe-1],{type:"addALink",actor:te[oe-1].actor,text:te[oe]}];break;case 57:this.$=[te[oe-1],{type:"addProperties",actor:te[oe-1].actor,text:te[oe]}];break;case 58:this.$=[te[oe-1],{type:"addDetails",actor:te[oe-1].actor,text:te[oe]}];break;case 61:this.$=[te[oe-2],te[oe]];break;case 62:this.$=te[oe];break;case 63:this.$=ue.PLACEMENT.LEFTOF;break;case 64:this.$=ue.PLACEMENT.RIGHTOF;break;case 65:this.$=[te[oe-4],te[oe-1],{type:"addMessage",from:te[oe-4].actor,to:te[oe-1].actor,signalType:te[oe-3],msg:te[oe],activate:!0},{type:"activeStart",signalType:ue.LINETYPE.ACTIVE_START,actor:te[oe-1].actor}];break;case 66:this.$=[te[oe-4],te[oe-1],{type:"addMessage",from:te[oe-4].actor,to:te[oe-1].actor,signalType:te[oe-3],msg:te[oe]},{type:"activeEnd",signalType:ue.LINETYPE.ACTIVE_END,actor:te[oe-4].actor}];break;case 67:this.$=[te[oe-3],te[oe-1],{type:"addMessage",from:te[oe-3].actor,to:te[oe-1].actor,signalType:te[oe-2],msg:te[oe]}];break;case 68:this.$={type:"addParticipant",actor:te[oe]};break;case 69:this.$=ue.LINETYPE.SOLID_OPEN;break;case 70:this.$=ue.LINETYPE.DOTTED_OPEN;break;case 71:this.$=ue.LINETYPE.SOLID;break;case 72:this.$=ue.LINETYPE.BIDIRECTIONAL_SOLID;break;case 73:this.$=ue.LINETYPE.DOTTED;break;case 74:this.$=ue.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 75:this.$=ue.LINETYPE.SOLID_CROSS;break;case 76:this.$=ue.LINETYPE.DOTTED_CROSS;break;case 77:this.$=ue.LINETYPE.SOLID_POINT;break;case 78:this.$=ue.LINETYPE.DOTTED_POINT;break;case 79:this.$=ue.parseMessage(te[oe].trim().substring(1));break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},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],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:_,41:T,43:E,44:L,46:C,50:A,52:I,53:D,54:k,59:R,60:S,61:O,62:N,70:P},t(F,[2,5]),{9:47,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:_,41:T,43:E,44:L,46:C,50:A,52:I,53:D,54:k,59:R,60:S,61:O,62:N,70:P},t(F,[2,7]),t(F,[2,8]),t(F,[2,14]),{12:48,50:A,52:I,53:D},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:P},{22:55,70:P},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},t(F,[2,29]),t(F,[2,30]),{32:[1,61]},{34:[1,62]},t(F,[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:P},{22:72,70:P},{22:73,70:P},{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:P},{22:90,70:P},{22:91,70:P},{22:92,70:P},t([5,51,64,71,72,73,74,75,76,77,78,79,80,81],[2,68]),t(F,[2,6]),t(F,[2,15]),t(B,[2,9],{10:93}),t(F,[2,17]),{5:[1,95],19:[1,94]},{5:[1,96]},t(F,[2,21]),{5:[1,97]},{5:[1,98]},t(F,[2,24]),t(F,[2,25]),t(F,[2,26]),t(F,[2,27]),t(F,[2,28]),t(F,[2,31]),t(F,[2,32]),t($,i,{7:99}),t($,i,{7:100}),t($,i,{7:101}),t(z,i,{40:102,7:103}),t(W,i,{42:104,7:105}),t(W,i,{7:105,42:106}),t(j,i,{45:107,7:108}),t($,i,{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:P},t(K,[2,69]),t(K,[2,70]),t(K,[2,71]),t(K,[2,72]),t(K,[2,73]),t(K,[2,74]),t(K,[2,75]),t(K,[2,76]),t(K,[2,77]),t(K,[2,78]),{22:118,70:P},{22:120,58:119,70:P},{70:[2,63]},{70:[2,64]},{56:121,81:ie},{56:123,81:ie},{56:124,81:ie},{56:125,81:ie},{4:[1,128],5:[1,130],11:127,12:129,16:[1,126],50:A,52:I,53:D},{5:[1,131]},t(F,[2,19]),t(F,[2,20]),t(F,[2,22]),t(F,[2,23]),{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,132],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:_,41:T,43:E,44:L,46:C,50:A,52:I,53:D,54:k,59:R,60:S,61:O,62:N,70:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,133],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:_,41:T,43:E,44:L,46:C,50:A,52:I,53:D,54:k,59:R,60:S,61:O,62:N,70:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,134],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:_,41:T,43:E,44:L,46:C,50:A,52:I,53:D,54:k,59:R,60:S,61:O,62:N,70:P},{16:[1,135]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,46],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:_,41:T,43:E,44:L,46:C,49:[1,136],50:A,52:I,53:D,54:k,59:R,60:S,61:O,62:N,70:P},{16:[1,137]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,44],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:_,41:T,43:E,44:L,46:C,48:[1,138],50:A,52:I,53:D,54:k,59:R,60:S,61:O,62:N,70:P},{16:[1,139]},{16:[1,140]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,42],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:_,41:T,43:E,44:L,46:C,47:[1,141],50:A,52:I,53:D,54:k,59:R,60:S,61:O,62:N,70:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,142],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:v,36:x,37:b,38:w,39:_,41:T,43:E,44:L,46:C,50:A,52:I,53:D,54:k,59:R,60:S,61:O,62:N,70:P},{15:[1,143]},t(F,[2,49]),{15:[1,144]},t(F,[2,51]),t(F,[2,52]),{22:145,70:P},{22:146,70:P},{56:147,81:ie},{56:148,81:ie},{56:149,81:ie},{64:[1,150],81:[2,62]},{5:[2,55]},{5:[2,79]},{5:[2,56]},{5:[2,57]},{5:[2,58]},t(F,[2,16]),t(B,[2,10]),{12:151,50:A,52:I,53:D},t(B,[2,12]),t(B,[2,13]),t(F,[2,18]),t(F,[2,34]),t(F,[2,35]),t(F,[2,36]),t(F,[2,37]),{15:[1,152]},t(F,[2,38]),{15:[1,153]},t(F,[2,39]),t(F,[2,40]),{15:[1,154]},t(F,[2,41]),{5:[1,155]},{5:[1,156]},{56:157,81:ie},{56:158,81:ie},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:159,70:P},t(B,[2,11]),t(z,i,{7:103,40:160}),t(W,i,{7:105,42:161}),t(j,i,{7:108,45:162}),t(F,[2,48]),t(F,[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:o(function(q,Z){if(Z.recoverable)this.trace(q);else{var ae=new Error(q);throw ae.hash=Z,ae}},"parseError"),parse:o(function(q){var Z=this,ae=[0],ue=[],ce=[null],te=[],De=this.table,oe="",ke=0,Fe=0,Be=0,Ve=2,Ge=1,He=te.slice.call(arguments,1),xe=Object.create(this.lexer),X={yy:{}};for(var fe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,fe)&&(X.yy[fe]=this.yy[fe]);xe.setInput(q,X.yy),X.yy.lexer=xe,X.yy.parser=this,typeof xe.yylloc>"u"&&(xe.yylloc={});var he=xe.yylloc;te.push(he);var ge=xe.options&&xe.options.ranges;typeof X.yy.parseError=="function"?this.parseError=X.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ne(Et){ae.length=ae.length-2*Et,ce.length=ce.length-Et,te.length=te.length-Et}o(ne,"popStack");function ye(){var Et;return Et=ue.pop()||xe.lex()||Ge,typeof Et!="number"&&(Et instanceof Array&&(ue=Et,Et=ue.pop()),Et=Z.symbols_[Et]||Et),Et}o(ye,"lex");for(var U,Te,se,Ee,Ae,Pe,Me={},me,We,Re,tt;;){if(se=ae[ae.length-1],this.defaultActions[se]?Ee=this.defaultActions[se]:((U===null||typeof U>"u")&&(U=ye()),Ee=De[se]&&De[se][U]),typeof Ee>"u"||!Ee.length||!Ee[0]){var gt="";tt=[];for(me in De[se])this.terminals_[me]&&me>Ve&&tt.push("'"+this.terminals_[me]+"'");xe.showPosition?gt="Parse error on line "+(ke+1)+`: +`+xe.showPosition()+` +Expecting `+tt.join(", ")+", got '"+(this.terminals_[U]||U)+"'":gt="Parse error on line "+(ke+1)+": Unexpected "+(U==Ge?"end of input":"'"+(this.terminals_[U]||U)+"'"),this.parseError(gt,{text:xe.match,token:this.terminals_[U]||U,line:xe.yylineno,loc:he,expected:tt})}if(Ee[0]instanceof Array&&Ee.length>1)throw new Error("Parse Error: multiple actions possible at state: "+se+", token: "+U);switch(Ee[0]){case 1:ae.push(U),ce.push(xe.yytext),te.push(xe.yylloc),ae.push(Ee[1]),U=null,Te?(U=Te,Te=null):(Fe=xe.yyleng,oe=xe.yytext,ke=xe.yylineno,he=xe.yylloc,Be>0&&Be--);break;case 2:if(We=this.productions_[Ee[1]][1],Me.$=ce[ce.length-We],Me._$={first_line:te[te.length-(We||1)].first_line,last_line:te[te.length-1].last_line,first_column:te[te.length-(We||1)].first_column,last_column:te[te.length-1].last_column},ge&&(Me._$.range=[te[te.length-(We||1)].range[0],te[te.length-1].range[1]]),Pe=this.performAction.apply(Me,[oe,Fe,ke,X.yy,Ee[1],ce,te].concat(He)),typeof Pe<"u")return Pe;We&&(ae=ae.slice(0,-1*We*2),ce=ce.slice(0,-1*We),te=te.slice(0,-1*We)),ae.push(this.productions_[Ee[1]][0]),ce.push(Me.$),te.push(Me._$),Re=De[ae[ae.length-2]][ae[ae.length-1]],ae.push(Re);break;case 3:return!0}}return!0},"parse")},ee=function(){var H={EOF:1,parseError:o(function(Z,ae){if(this.yy.parser)this.yy.parser.parseError(Z,ae);else throw new Error(Z)},"parseError"),setInput:o(function(q,Z){return this.yy=Z||this.yy||{},this._input=q,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:o(function(){var q=this._input[0];this.yytext+=q,this.yyleng++,this.offset++,this.match+=q,this.matched+=q;var Z=q.match(/(?:\r\n?|\n).*/g);return Z?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),q},"input"),unput:o(function(q){var Z=q.length,ae=q.split(/(?:\r\n?|\n)/g);this._input=q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Z),this.offset-=Z;var ue=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),ae.length-1&&(this.yylineno-=ae.length-1);var ce=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:ae?(ae.length===ue.length?this.yylloc.first_column:0)+ue[ue.length-ae.length].length-ae[0].length:this.yylloc.first_column-Z},this.options.ranges&&(this.yylloc.range=[ce[0],ce[0]+this.yyleng-Z]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(q){this.unput(this.match.slice(q))},"less"),pastInput:o(function(){var q=this.matched.substr(0,this.matched.length-this.match.length);return(q.length>20?"...":"")+q.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var q=this.match;return q.length<20&&(q+=this._input.substr(0,20-q.length)),(q.substr(0,20)+(q.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var q=this.pastInput(),Z=new Array(q.length+1).join("-");return q+this.upcomingInput()+` +`+Z+"^"},"showPosition"),test_match:o(function(q,Z){var ae,ue,ce;if(this.options.backtrack_lexer&&(ce={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&&(ce.yylloc.range=this.yylloc.range.slice(0))),ue=q[0].match(/(?:\r\n?|\n).*/g),ue&&(this.yylineno+=ue.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ue?ue[ue.length-1].length-ue[ue.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+q[0].length},this.yytext+=q[0],this.match+=q[0],this.matches=q,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(q[0].length),this.matched+=q[0],ae=this.performAction.call(this,this.yy,this,Z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ae)return ae;if(this._backtrack){for(var te in ce)this[te]=ce[te];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var q,Z,ae,ue;this._more||(this.yytext="",this.match="");for(var ce=this._currentRules(),te=0;teZ[0].length)){if(Z=ae,ue=te,this.options.backtrack_lexer){if(q=this.test_match(ae,ce[te]),q!==!1)return q;if(this._backtrack){Z=!1;continue}else return!1}else if(!this.options.flex)break}return Z?(q=this.test_match(Z,ce[ue]),q!==!1?q:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Z=this.next();return Z||this.lex()},"lex"),begin:o(function(Z){this.conditionStack.push(Z)},"begin"),popState:o(function(){var Z=this.conditionStack.length-1;return Z>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(Z){return Z=this.conditionStack.length-1-Math.abs(Z||0),Z>=0?this.conditionStack[Z]:"INITIAL"},"topState"),pushState:o(function(Z){this.begin(Z)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(Z,ae,ue,ce){var te=ce;switch(ue){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;break;case 8:return this.begin("ID"),50;break;case 9:return this.begin("ID"),52;break;case 10:return 13;case 11:return this.begin("ID"),53;break;case 12:return ae.yytext=ae.yytext.trim(),this.begin("ALIAS"),70;break;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;break;case 14:return this.popState(),this.popState(),5;break;case 15:return this.begin("LINE"),36;break;case 16:return this.begin("LINE"),37;break;case 17:return this.begin("LINE"),38;break;case 18:return this.begin("LINE"),39;break;case 19:return this.begin("LINE"),49;break;case 20:return this.begin("LINE"),41;break;case 21:return this.begin("LINE"),43;break;case 22:return this.begin("LINE"),48;break;case 23:return this.begin("LINE"),44;break;case 24:return this.begin("LINE"),47;break;case 25:return this.begin("LINE"),46;break;case 26:return this.popState(),15;break;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;break;case 37:return this.begin("ID"),23;break;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;break;case 41:return this.popState(),"acc_title_value";break;case 42:return this.begin("acc_descr"),33;break;case 43:return this.popState(),"acc_descr_value";break;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 51:return 5;case 52:return ae.yytext=ae.yytext.trim(),70;break;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 66:return 5;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}}};return H}();Q.lexer=ee;function J(){this.yy={}}return o(J,"Parser"),J.prototype=Q,Q.Parser=J,new J}();bO.parser=bO;Ufe=bO});function TO(t,e){if(t.links==null)t.links=e;else for(let r in e)t.links[r]=e[r]}function jfe(t,e){if(t.properties==null)t.properties=e;else for(let r in e)t.properties[r]=e[r]}function dHe(){$t.records.currentBox=void 0}var $t,YUe,wO,qUe,XUe,yi,jUe,KUe,QUe,ZUe,JUe,eHe,tHe,bx,rHe,nHe,iHe,aHe,sHe,Wfe,k0,oHe,lHe,cHe,xx,uHe,hHe,Yfe,qfe,fHe,Xfe,Kfe,pHe,Qfe,kO,Zfe=M(()=>{"use strict";Vt();ht();tE();fr();ki();$t=new cf(()=>({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})),YUe=o(function(t){$t.records.boxes.push({name:t.text,wrap:t.wrap??k0(),fill:t.color,actorKeys:[]}),$t.records.currentBox=$t.records.boxes.slice(-1)[0]},"addBox"),wO=o(function(t,e,r,n){let i=$t.records.currentBox,a=$t.records.actors.get(t);if(a){if($t.records.currentBox&&a.box&&$t.records.currentBox!==a.box)throw new Error(`A same participant should only be defined in one Box: ${a.name} can't be in '${a.box.name}' and in '${$t.records.currentBox.name}' at the same time.`);if(i=a.box?a.box:$t.records.currentBox,a.box=i,a&&e===a.name&&r==null)return}if(r?.text==null&&(r={text:e,type:n}),(n==null||r.text==null)&&(r={text:e,type:n}),$t.records.actors.set(t,{box:i,name:e,description:r.text,wrap:r.wrap??k0(),prevActor:$t.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:n??"participant"}),$t.records.prevActor){let s=$t.records.actors.get($t.records.prevActor);s&&(s.nextActor=t)}$t.records.currentBox&&$t.records.currentBox.actorKeys.push(t),$t.records.prevActor=t},"addActor"),qUe=o(t=>{let e,r=0;if(!t)return 0;for(e=0;e<$t.records.messages.length;e++)$t.records.messages[e].type===xx.ACTIVE_START&&$t.records.messages[e].from===t&&r++,$t.records.messages[e].type===xx.ACTIVE_END&&$t.records.messages[e].from===t&&r--;return r},"activationCount"),XUe=o(function(t,e,r,n){$t.records.messages.push({from:t,to:e,message:r.text,wrap:r.wrap??k0(),answer:n})},"addMessage"),yi=o(function(t,e,r,n,i=!1){if(n===xx.ACTIVE_END&&qUe(t??"")<1){let s=new Error("Trying to inactivate an inactive participant ("+t+")");throw s.hash={text:"->>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},s}return $t.records.messages.push({from:t,to:e,message:r?.text??"",wrap:r?.wrap??k0(),type:n,activate:i}),!0},"addSignal"),jUe=o(function(){return $t.records.boxes.length>0},"hasAtLeastOneBox"),KUe=o(function(){return $t.records.boxes.some(t=>t.name)},"hasAtLeastOneBoxWithTitle"),QUe=o(function(){return $t.records.messages},"getMessages"),ZUe=o(function(){return $t.records.boxes},"getBoxes"),JUe=o(function(){return $t.records.actors},"getActors"),eHe=o(function(){return $t.records.createdActors},"getCreatedActors"),tHe=o(function(){return $t.records.destroyedActors},"getDestroyedActors"),bx=o(function(t){return $t.records.actors.get(t)},"getActor"),rHe=o(function(){return[...$t.records.actors.keys()]},"getActorKeys"),nHe=o(function(){$t.records.sequenceNumbersEnabled=!0},"enableSequenceNumbers"),iHe=o(function(){$t.records.sequenceNumbersEnabled=!1},"disableSequenceNumbers"),aHe=o(()=>$t.records.sequenceNumbersEnabled,"showSequenceNumbers"),sHe=o(function(t){$t.records.wrapEnabled=t},"setWrap"),Wfe=o(t=>{if(t===void 0)return{};t=t.trim();let e=/^:?wrap:/.exec(t)!==null?!0:/^:?nowrap:/.exec(t)!==null?!1:void 0;return{cleanedText:(e===void 0?t:t.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:e}},"extractWrap"),k0=o(()=>$t.records.wrapEnabled!==void 0?$t.records.wrapEnabled:de().sequence?.wrap??!1,"autoWrap"),oHe=o(function(){$t.reset(),_r()},"clear"),lHe=o(function(t){let e=t.trim(),{wrap:r,cleanedText:n}=Wfe(e),i={text:n,wrap:r};return Y.debug(`parseMessage: ${JSON.stringify(i)}`),i},"parseMessage"),cHe=o(function(t){let e=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(t),r=e?.[1]?e[1].trim():"transparent",n=e?.[2]?e[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",r)||(r="transparent",n=t.trim());else{let s=new Option().style;s.color=r,s.color!==r&&(r="transparent",n=t.trim())}let{wrap:i,cleanedText:a}=Wfe(n);return{text:a?Tr(a,de()):void 0,color:r,wrap:i}},"parseBoxData"),xx={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},uHe={FILLED:0,OPEN:1},hHe={LEFTOF:0,RIGHTOF:1,OVER:2},Yfe=o(function(t,e,r){let n={actor:t,placement:e,message:r.text,wrap:r.wrap??k0()},i=[].concat(t,t);$t.records.notes.push(n),$t.records.messages.push({from:i[0],to:i[1],message:r.text,wrap:r.wrap??k0(),type:xx.NOTE,placement:e})},"addNote"),qfe=o(function(t,e){let r=bx(t);try{let n=Tr(e.text,de());n=n.replace(/&/g,"&"),n=n.replace(/=/g,"=");let i=JSON.parse(n);TO(r,i)}catch(n){Y.error("error while parsing actor link text",n)}},"addLinks"),fHe=o(function(t,e){let r=bx(t);try{let n={},i=Tr(e.text,de()),a=i.indexOf("@");i=i.replace(/&/g,"&"),i=i.replace(/=/g,"=");let s=i.slice(0,a-1).trim(),l=i.slice(a+1).trim();n[s]=l,TO(r,n)}catch(n){Y.error("error while parsing actor link text",n)}},"addALink");o(TO,"insertLinks");Xfe=o(function(t,e){let r=bx(t);try{let n=Tr(e.text,de()),i=JSON.parse(n);jfe(r,i)}catch(n){Y.error("error while parsing actor properties text",n)}},"addProperties");o(jfe,"insertProperties");o(dHe,"boxEnd");Kfe=o(function(t,e){let r=bx(t),n=document.getElementById(e.text);try{let i=n.innerHTML,a=JSON.parse(i);a.properties&&jfe(r,a.properties),a.links&&TO(r,a.links)}catch(i){Y.error("error while parsing actor details text",i)}},"addDetails"),pHe=o(function(t,e){if(t?.properties!==void 0)return t.properties[e]},"getActorProperty"),Qfe=o(function(t){if(Array.isArray(t))t.forEach(function(e){Qfe(e)});else switch(t.type){case"sequenceIndex":$t.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":wO(t.actor,t.actor,t.description,t.draw);break;case"createParticipant":if($t.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");$t.records.lastCreated=t.actor,wO(t.actor,t.actor,t.description,t.draw),$t.records.createdActors.set(t.actor,$t.records.messages.length);break;case"destroyParticipant":$t.records.lastDestroyed=t.actor,$t.records.destroyedActors.set(t.actor,$t.records.messages.length);break;case"activeStart":yi(t.actor,void 0,void 0,t.signalType);break;case"activeEnd":yi(t.actor,void 0,void 0,t.signalType);break;case"addNote":Yfe(t.actor,t.placement,t.text);break;case"addLinks":qfe(t.actor,t.text);break;case"addALink":fHe(t.actor,t.text);break;case"addProperties":Xfe(t.actor,t.text);break;case"addDetails":Kfe(t.actor,t.text);break;case"addMessage":if($t.records.lastCreated){if(t.to!==$t.records.lastCreated)throw new Error("The created participant "+$t.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");$t.records.lastCreated=void 0}else if($t.records.lastDestroyed){if(t.to!==$t.records.lastDestroyed&&t.from!==$t.records.lastDestroyed)throw new Error("The destroyed participant "+$t.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");$t.records.lastDestroyed=void 0}yi(t.from,t.to,t.msg,t.signalType,t.activate);break;case"boxStart":YUe(t.boxData);break;case"boxEnd":dHe();break;case"loopStart":yi(void 0,void 0,t.loopText,t.signalType);break;case"loopEnd":yi(void 0,void 0,void 0,t.signalType);break;case"rectStart":yi(void 0,void 0,t.color,t.signalType);break;case"rectEnd":yi(void 0,void 0,void 0,t.signalType);break;case"optStart":yi(void 0,void 0,t.optText,t.signalType);break;case"optEnd":yi(void 0,void 0,void 0,t.signalType);break;case"altStart":yi(void 0,void 0,t.altText,t.signalType);break;case"else":yi(void 0,void 0,t.altText,t.signalType);break;case"altEnd":yi(void 0,void 0,void 0,t.signalType);break;case"setAccTitle":Rr(t.text);break;case"parStart":yi(void 0,void 0,t.parText,t.signalType);break;case"and":yi(void 0,void 0,t.parText,t.signalType);break;case"parEnd":yi(void 0,void 0,void 0,t.signalType);break;case"criticalStart":yi(void 0,void 0,t.criticalText,t.signalType);break;case"option":yi(void 0,void 0,t.optionText,t.signalType);break;case"criticalEnd":yi(void 0,void 0,void 0,t.signalType);break;case"breakStart":yi(void 0,void 0,t.breakText,t.signalType);break;case"breakEnd":yi(void 0,void 0,void 0,t.signalType);break}},"apply"),kO={addActor:wO,addMessage:XUe,addSignal:yi,addLinks:qfe,addDetails:Kfe,addProperties:Xfe,autoWrap:k0,setWrap:sHe,enableSequenceNumbers:nHe,disableSequenceNumbers:iHe,showSequenceNumbers:aHe,getMessages:QUe,getActors:JUe,getCreatedActors:eHe,getDestroyedActors:tHe,getActor:bx,getActorKeys:rHe,getActorProperty:pHe,getAccTitle:Pr,getBoxes:ZUe,getDiagramTitle:Jr,setDiagramTitle:ln,getConfig:o(()=>de().sequence,"getConfig"),clear:oHe,parseMessage:lHe,parseBoxData:cHe,LINETYPE:xx,ARROWTYPE:uHe,PLACEMENT:hHe,addNote:Yfe,setAccTitle:Rr,apply:Qfe,setAccDescription:Br,getAccDescription:Fr,hasAtLeastOneBox:jUe,hasAtLeastOneBoxWithTitle:KUe}});var mHe,Jfe,ede=M(()=>{"use strict";mHe=o(t=>`.actor { + stroke: ${t.actorBorder}; + fill: ${t.actorBkg}; + } + + text.actor > tspan { + fill: ${t.actorTextColor}; + stroke: none; + } + + .actor-line { + stroke: ${t.actorLineColor}; + } + + .messageLine0 { + stroke-width: 1.5; + stroke-dasharray: none; + stroke: ${t.signalColor}; + } + + .messageLine1 { + stroke-width: 1.5; + stroke-dasharray: 2, 2; + stroke: ${t.signalColor}; + } + + #arrowhead path { + fill: ${t.signalColor}; + stroke: ${t.signalColor}; + } + + .sequenceNumber { + fill: ${t.sequenceNumberColor}; + } + + #sequencenumber { + fill: ${t.signalColor}; + } + + #crosshead path { + fill: ${t.signalColor}; + stroke: ${t.signalColor}; + } + + .messageText { + fill: ${t.signalTextColor}; + stroke: none; + } + + .labelBox { + stroke: ${t.labelBoxBorderColor}; + fill: ${t.labelBoxBkgColor}; + } + + .labelText, .labelText > tspan { + fill: ${t.labelTextColor}; + stroke: none; + } + + .loopText, .loopText > tspan { + fill: ${t.loopTextColor}; + stroke: none; + } + + .loopLine { + stroke-width: 2px; + stroke-dasharray: 2, 2; + stroke: ${t.labelBoxBorderColor}; + fill: ${t.labelBoxBorderColor}; + } + + .note { + //stroke: #decc93; + stroke: ${t.noteBorderColor}; + fill: ${t.noteBkgColor}; + } + + .noteText, .noteText > tspan { + fill: ${t.noteTextColor}; + stroke: none; + } + + .activation0 { + fill: ${t.activationBkgColor}; + stroke: ${t.activationBorderColor}; + } + + .activation1 { + fill: ${t.activationBkgColor}; + stroke: ${t.activationBorderColor}; + } + + .activation2 { + fill: ${t.activationBkgColor}; + stroke: ${t.activationBorderColor}; + } + + .actorPopupMenu { + position: absolute; + } + + .actorPopupMenuPanel { + position: absolute; + fill: ${t.actorBkg}; + box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); + filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4)); +} + .actor-man line { + stroke: ${t.actorBorder}; + fill: ${t.actorBkg}; + } + .actor-man circle, line { + stroke: ${t.actorBorder}; + fill: ${t.actorBkg}; + stroke-width: 2px; + } +`,"getStyles"),Jfe=mHe});var EO,pf,rde,nde,gHe,tde,SO,yHe,vHe,wx,E0,ide,Fc,CO,xHe,bHe,wHe,THe,kHe,EHe,SHe,ade,CHe,AHe,_He,LHe,DHe,NHe,RHe,sde,MHe,AO,IHe,ui,ode=M(()=>{"use strict";fr();qy();hr();EO=ka(Fp(),1);Ua();pf=18*2,rde="actor-top",nde="actor-bottom",gHe="actor-box",tde="actor-man",SO=o(function(t,e){return md(t,e)},"drawRect"),yHe=o(function(t,e,r,n,i){if(e.links===void 0||e.links===null||Object.keys(e.links).length===0)return{height:0,width:0};let a=e.links,s=e.actorCnt,l=e.rectData;var u="none";i&&(u="block !important");let h=t.append("g");h.attr("id","actor"+s+"_popup"),h.attr("class","actorPopupMenu"),h.attr("display",u);var f="";l.class!==void 0&&(f=" "+l.class);let d=l.width>r?l.width:r,p=h.append("rect");if(p.attr("class","actorPopupMenuPanel"+f),p.attr("x",l.x),p.attr("y",l.height),p.attr("fill",l.fill),p.attr("stroke",l.stroke),p.attr("width",d),p.attr("height",l.height),p.attr("rx",l.rx),p.attr("ry",l.ry),a!=null){var m=20;for(let v in a){var g=h.append("a"),y=(0,EO.sanitizeUrl)(a[v]);g.attr("xlink:href",y),g.attr("target","_blank"),IHe(n)(v,g,l.x+10,l.height+m,d,20,{class:"actor"},n),m+=30}}return p.attr("height",m),{height:l.height+m,width:d}},"drawPopup"),vHe=o(function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),wx=o(async function(t,e,r=null){let n=t.append("foreignObject"),i=await hh(e.text,Sr()),s=n.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(n.attr("height",Math.round(s.height)).attr("width",Math.round(s.width)),e.class==="noteText"){let l=t.node().firstChild;l.setAttribute("height",s.height+2*e.textMargin);let u=l.getBBox();n.attr("x",Math.round(u.x+u.width/2-s.width/2)).attr("y",Math.round(u.y+u.height/2-s.height/2))}else if(r){let{startx:l,stopx:u,starty:h}=r;if(l>u){let f=l;l=u,u=f}n.attr("x",Math.round(l+Math.abs(l-u)/2-s.width/2)),e.class==="loopText"?n.attr("y",Math.round(h)):n.attr("y",Math.round(h-s.height))}return[n]},"drawKatex"),E0=o(function(t,e){let r=0,n=0,i=e.text.split(je.lineBreakRegex),[a,s]=Fo(e.fontSize),l=[],u=0,h=o(()=>e.y,"yfunc");if(e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0)switch(e.valign){case"top":case"start":h=o(()=>Math.round(e.y+e.textMargin),"yfunc");break;case"middle":case"center":h=o(()=>Math.round(e.y+(r+n+e.textMargin)/2),"yfunc");break;case"bottom":case"end":h=o(()=>Math.round(e.y+(r+n+2*e.textMargin)-e.textMargin),"yfunc");break}if(e.anchor!==void 0&&e.textMargin!==void 0&&e.width!==void 0)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";break}for(let[f,d]of i.entries()){e.textMargin!==void 0&&e.textMargin===0&&a!==void 0&&(u=f*a);let p=t.append("text");p.attr("x",e.x),p.attr("y",h()),e.anchor!==void 0&&p.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline),e.fontFamily!==void 0&&p.style("font-family",e.fontFamily),s!==void 0&&p.style("font-size",s),e.fontWeight!==void 0&&p.style("font-weight",e.fontWeight),e.fill!==void 0&&p.attr("fill",e.fill),e.class!==void 0&&p.attr("class",e.class),e.dy!==void 0?p.attr("dy",e.dy):u!==0&&p.attr("dy",u);let m=d||K_;if(e.tspan){let g=p.append("tspan");g.attr("x",e.x),e.fill!==void 0&&g.attr("fill",e.fill),g.text(m)}else p.text(m);e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0&&(n+=(p._groups||p)[0][0].getBBox().height,r=n),l.push(p)}return l},"drawText"),ide=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");return n.attr("points",r(e.x,e.y,e.width,e.height,7)),n.attr("class","labelBox"),e.y=e.y+e.height/2,E0(t,e),n},"drawLabel"),Fc=-1,CO=o((t,e,r,n)=>{t.select&&r.forEach(i=>{let a=e.get(i),s=t.select("#actor"+a.actorCnt);!n.mirrorActors&&a.stopy?s.attr("y2",a.stopy+a.height/2):n.mirrorActors&&s.attr("y2",a.stopy)})},"fixLifeLineHeights"),xHe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower();var u=l;n||(Fc++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",vHe(`actor${Fc}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Fc).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Fc,e.links!=null&&u.attr("id","root-"+Fc));let h=Sl();var f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${nde}`:f+=` ${rde}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.rx=3,h.ry=3,h.name=e.name;let d=SO(u,h);if(e.rectData=h,e.properties?.icon){let m=e.properties.icon.trim();m.charAt(0)==="@"?RY(u,h.x+h.width-20,h.y+10,m.substr(1)):NY(u,h.x+h.width-20,h.y+10,m)}AO(r,pi(e.description))(e.description,u,h.x,h.y,h.width,h.height,{class:`actor ${gHe}`},r);let p=e.height;if(d.node){let m=d.node().getBBox();e.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),bHe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+80,l=t.append("g").lower();n||(Fc++,l.append("line").attr("id","actor"+Fc).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Fc);let u=t.append("g"),h=tde;n?h+=` ${nde}`:h+=` ${rde}`,u.attr("class",h),u.attr("name",e.name);let f=Sl();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor",f.rx=3,f.ry=3,u.append("line").attr("id","actor-man-torso"+Fc).attr("x1",a).attr("y1",i+25).attr("x2",a).attr("y2",i+45),u.append("line").attr("id","actor-man-arms"+Fc).attr("x1",a-pf/2).attr("y1",i+33).attr("x2",a+pf/2).attr("y2",i+33),u.append("line").attr("x1",a-pf/2).attr("y1",i+60).attr("x2",a).attr("y2",i+45),u.append("line").attr("x1",a).attr("y1",i+45).attr("x2",a+pf/2-2).attr("y2",i+60);let d=u.append("circle");d.attr("cx",e.x+e.width/2),d.attr("cy",i+10),d.attr("r",15),d.attr("width",e.width),d.attr("height",e.height);let p=u.node().getBBox();return e.height=p.height,AO(r,pi(e.description))(e.description,u,f.x,f.y+35,f.width,f.height,{class:`actor ${tde}`},r),e.height},"drawActorTypeActor"),wHe=o(async function(t,e,r,n){switch(e.type){case"actor":return await bHe(t,e,r,n);case"participant":return await xHe(t,e,r,n)}},"drawActor"),THe=o(function(t,e,r){let i=t.append("g");ade(i,e),e.name&&AO(r)(e.name,i,e.x,e.y+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},r),i.lower()},"drawBox"),kHe=o(function(t){return t.append("g")},"anchorElement"),EHe=o(function(t,e,r,n,i){let a=Sl(),s=e.anchored;a.x=e.startx,a.y=e.starty,a.class="activation"+i%3,a.width=e.stopx-e.startx,a.height=r-e.starty,SO(s,a)},"drawActivation"),SHe=o(async function(t,e,r,n){let{boxMargin:i,boxTextMargin:a,labelBoxHeight:s,labelBoxWidth:l,messageFontFamily:u,messageFontSize:h,messageFontWeight:f}=n,d=t.append("g"),p=o(function(y,v,x,b){return d.append("line").attr("x1",y).attr("y1",v).attr("x2",x).attr("y2",b).attr("class","loopLine")},"drawLoopLine");p(e.startx,e.starty,e.stopx,e.starty),p(e.stopx,e.starty,e.stopx,e.stopy),p(e.startx,e.stopy,e.stopx,e.stopy),p(e.startx,e.starty,e.startx,e.stopy),e.sections!==void 0&&e.sections.forEach(function(y){p(e.startx,y.y,e.stopx,y.y).style("stroke-dasharray","3, 3")});let m=Yy();m.text=r,m.x=e.startx,m.y=e.starty,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.anchor="middle",m.valign="middle",m.tspan=!1,m.width=l||50,m.height=s||20,m.textMargin=a,m.class="labelText",ide(d,m),m=sde(),m.text=e.title,m.x=e.startx+l/2+(e.stopx-e.startx)/2,m.y=e.starty+i+a,m.anchor="middle",m.valign="middle",m.textMargin=a,m.class="loopText",m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=!0;let g=pi(m.text)?await wx(d,m,e):E0(d,m);if(e.sectionTitles!==void 0){for(let[y,v]of Object.entries(e.sectionTitles))if(v.message){m.text=v.message,m.x=e.startx+(e.stopx-e.startx)/2,m.y=e.sections[y].y+i+a,m.class="loopText",m.anchor="middle",m.valign="middle",m.tspan=!1,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=e.wrap,pi(m.text)?(e.starty=e.sections[y].y,await wx(d,m,e)):E0(d,m);let x=Math.round(g.map(b=>(b._groups||b)[0][0].getBBox().height).reduce((b,w)=>b+w));e.sections[y].height+=x-(i+a)}}return e.height=Math.round(e.stopy-e.starty),d},"drawLoop"),ade=o(function(t,e){Y3(t,e)},"drawBackgroundRect"),CHe=o(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"),AHe=o(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"),_He=o(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"),LHe=o(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"),DHe=o(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"),NHe=o(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"),RHe=o(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"),sde=o(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"),MHe=o(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),AO=function(){function t(a,s,l,u,h,f,d){let p=s.append("text").attr("x",l+h/2).attr("y",u+f/2+5).style("text-anchor","middle").text(a);i(p,d)}o(t,"byText");function e(a,s,l,u,h,f,d,p){let{actorFontSize:m,actorFontFamily:g,actorFontWeight:y}=p,[v,x]=Fo(m),b=a.split(je.lineBreakRegex);for(let w=0;w{let s=S0(Le),l=a.actorKeys.reduce((f,d)=>f+=t.get(d).width+(t.get(d).margin||0),0);l-=2*Le.boxTextMargin,a.wrap&&(a.name=Ut.wrapLabel(a.name,l-2*Le.wrapPadding,s));let u=Ut.calculateTextDimensions(a.name,s);i=je.getMax(u.height,i);let h=je.getMax(l,u.width+2*Le.wrapPadding);if(a.margin=Le.boxTextMargin,la.textMaxHeight=i),je.getMax(n,Le.height)}var Le,nt,OHe,S0,Fg,_O,BHe,FHe,LO,cde,ude,TE,lde,GHe,VHe,HHe,WHe,YHe,hde,fde=M(()=>{"use strict";mr();ode();ht();fr();qy();Vt();ip();hr();ni();Le={},nt={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:o(function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map(t=>t.height||0))+(this.loops.length===0?0:this.loops.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.messages.length===0?0:this.messages.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.notes.length===0?0:this.notes.map(t=>t.height||0).reduce((t,e)=>t+e))},"getHeight"),clear:o(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:o(function(t){this.boxes.push(t)},"addBox"),addActor:o(function(t){this.actors.push(t)},"addActor"),addLoop:o(function(t){this.loops.push(t)},"addLoop"),addMessage:o(function(t){this.messages.push(t)},"addMessage"),addNote:o(function(t){this.notes.push(t)},"addNote"),lastActor:o(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:o(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:o(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:o(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:o(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,ude(de())},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=this,a=0;function s(l){return o(function(h){a++;let f=i.sequenceItems.length-a+1;i.updateVal(h,"starty",e-f*Le.boxMargin,Math.min),i.updateVal(h,"stopy",n+f*Le.boxMargin,Math.max),i.updateVal(nt.data,"startx",t-f*Le.boxMargin,Math.min),i.updateVal(nt.data,"stopx",r+f*Le.boxMargin,Math.max),l!=="activation"&&(i.updateVal(h,"startx",t-f*Le.boxMargin,Math.min),i.updateVal(h,"stopx",r+f*Le.boxMargin,Math.max),i.updateVal(nt.data,"starty",e-f*Le.boxMargin,Math.min),i.updateVal(nt.data,"stopy",n+f*Le.boxMargin,Math.max))},"updateItemBounds")}o(s,"updateFn"),this.sequenceItems.forEach(s()),this.activations.forEach(s("activation"))},"updateBounds"),insert:o(function(t,e,r,n){let i=je.getMin(t,r),a=je.getMax(t,r),s=je.getMin(e,n),l=je.getMax(e,n);this.updateVal(nt.data,"startx",i,Math.min),this.updateVal(nt.data,"starty",s,Math.min),this.updateVal(nt.data,"stopx",a,Math.max),this.updateVal(nt.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),newActivation:o(function(t,e,r){let n=r.get(t.from),i=TE(t.from).length||0,a=n.x+n.width/2+(i-1)*Le.activationWidth/2;this.activations.push({startx:a,starty:this.verticalPos+2,stopx:a+Le.activationWidth,stopy:void 0,actor:t.from,anchored:ui.anchorElement(e)})},"newActivation"),endActivation:o(function(t){let e=this.activations.map(function(r){return r.actor}).lastIndexOf(t.from);return this.activations.splice(e,1)[0]},"endActivation"),createLoop:o(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:o(function(t={message:void 0,wrap:!1,width:void 0},e){this.sequenceItems.push(this.createLoop(t,e))},"newLoop"),endLoop:o(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:o(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:o(function(t){let e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:nt.getVerticalPos(),height:0}),e.sectionTitles.push(t),this.sequenceItems.push(e)},"addSectionToLoop"),saveVerticalPos:o(function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},"saveVerticalPos"),resetVerticalPos:o(function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},"resetVerticalPos"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=je.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return{bounds:this.data,models:this.models}},"getBounds")},OHe=o(async function(t,e){nt.bumpVerticalPos(Le.boxMargin),e.height=Le.boxMargin,e.starty=nt.getVerticalPos();let r=Sl();r.x=e.startx,r.y=e.starty,r.width=e.width||Le.width,r.class="note";let n=t.append("g"),i=ui.drawRect(n,r),a=Yy();a.x=e.startx,a.y=e.starty,a.width=r.width,a.dy="1em",a.text=e.message,a.class="noteText",a.fontFamily=Le.noteFontFamily,a.fontSize=Le.noteFontSize,a.fontWeight=Le.noteFontWeight,a.anchor=Le.noteAlign,a.textMargin=Le.noteMargin,a.valign="center";let s=pi(a.text)?await wx(n,a):E0(n,a),l=Math.round(s.map(u=>(u._groups||u)[0][0].getBBox().height).reduce((u,h)=>u+h));i.attr("height",l+2*Le.noteMargin),e.height+=l+2*Le.noteMargin,nt.bumpVerticalPos(l+2*Le.noteMargin),e.stopy=e.starty+l+2*Le.noteMargin,e.stopx=e.startx+r.width,nt.insert(e.startx,e.starty,e.stopx,e.stopy),nt.models.addNote(e)},"drawNote"),S0=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont"),Fg=o(t=>({fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight}),"noteFont"),_O=o(t=>({fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight}),"actorFont");o(PHe,"boundMessage");BHe=o(async function(t,e,r,n){let{startx:i,stopx:a,starty:s,message:l,type:u,sequenceIndex:h,sequenceVisible:f}=e,d=Ut.calculateTextDimensions(l,S0(Le)),p=Yy();p.x=i,p.y=s+10,p.width=a-i,p.class="messageText",p.dy="1em",p.text=l,p.fontFamily=Le.messageFontFamily,p.fontSize=Le.messageFontSize,p.fontWeight=Le.messageFontWeight,p.anchor=Le.messageAlign,p.valign="center",p.textMargin=Le.wrapPadding,p.tspan=!1,pi(p.text)?await wx(t,p,{startx:i,stopx:a,starty:r}):E0(t,p);let m=d.width,g;i===a?Le.rightAngles?g=t.append("path").attr("d",`M ${i},${r} H ${i+je.getMax(Le.width/2,m/2)} V ${r+25} H ${i}`):g=t.append("path").attr("d","M "+i+","+r+" C "+(i+60)+","+(r-10)+" "+(i+60)+","+(r+30)+" "+i+","+(r+20)):(g=t.append("line"),g.attr("x1",i),g.attr("y1",r),g.attr("x2",a),g.attr("y2",r)),u===n.db.LINETYPE.DOTTED||u===n.db.LINETYPE.DOTTED_CROSS||u===n.db.LINETYPE.DOTTED_POINT||u===n.db.LINETYPE.DOTTED_OPEN||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED?(g.style("stroke-dasharray","3, 3"),g.attr("class","messageLine1")):g.attr("class","messageLine0");let y="";Le.arrowMarkerAbsolute&&(y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,y=y.replace(/\(/g,"\\("),y=y.replace(/\)/g,"\\)")),g.attr("stroke-width",2),g.attr("stroke","none"),g.style("fill","none"),(u===n.db.LINETYPE.SOLID||u===n.db.LINETYPE.DOTTED)&&g.attr("marker-end","url("+y+"#arrowhead)"),(u===n.db.LINETYPE.BIDIRECTIONAL_SOLID||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(g.attr("marker-start","url("+y+"#arrowhead)"),g.attr("marker-end","url("+y+"#arrowhead)")),(u===n.db.LINETYPE.SOLID_POINT||u===n.db.LINETYPE.DOTTED_POINT)&&g.attr("marker-end","url("+y+"#filled-head)"),(u===n.db.LINETYPE.SOLID_CROSS||u===n.db.LINETYPE.DOTTED_CROSS)&&g.attr("marker-end","url("+y+"#crosshead)"),(f||Le.showSequenceNumbers)&&(g.attr("marker-start","url("+y+"#sequencenumber)"),t.append("text").attr("x",i).attr("y",r+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(h))},"drawMessage"),FHe=o(function(t,e,r,n,i,a,s){let l=0,u=0,h,f=0;for(let d of n){let p=e.get(d),m=p.box;h&&h!=m&&(s||nt.models.addBox(h),u+=Le.boxMargin+h.margin),m&&m!=h&&(s||(m.x=l+u,m.y=i),u+=m.margin),p.width=p.width||Le.width,p.height=je.getMax(p.height||Le.height,Le.height),p.margin=p.margin||Le.actorMargin,f=je.getMax(f,p.height),r.get(p.name)&&(u+=p.width/2),p.x=l+u,p.starty=nt.getVerticalPos(),nt.insert(p.x,i,p.x+p.width,p.height),l+=p.width+u,p.box&&(p.box.width=l+m.margin-p.box.x),u=p.margin,h=p.box,nt.models.addActor(p)}h&&!s&&nt.models.addBox(h),nt.bumpVerticalPos(f)},"addActorRenderingData"),LO=o(async function(t,e,r,n){if(n){let i=0;nt.bumpVerticalPos(Le.boxMargin*2);for(let a of r){let s=e.get(a);s.stopy||(s.stopy=nt.getVerticalPos());let l=await ui.drawActor(t,s,Le,!0);i=je.getMax(i,l)}nt.bumpVerticalPos(i+Le.boxMargin)}else for(let i of r){let a=e.get(i);await ui.drawActor(t,a,Le,!1)}},"drawActors"),cde=o(function(t,e,r,n){let i=0,a=0;for(let s of r){let l=e.get(s),u=VHe(l),h=ui.drawPopup(t,l,u,Le,Le.forceMenus,n);h.height>i&&(i=h.height),h.width+l.x>a&&(a=h.width+l.x)}return{maxHeight:i,maxWidth:a}},"drawActorsPopup"),ude=o(function(t){Gn(Le,t),t.fontFamily&&(Le.actorFontFamily=Le.noteFontFamily=Le.messageFontFamily=t.fontFamily),t.fontSize&&(Le.actorFontSize=Le.noteFontSize=Le.messageFontSize=t.fontSize),t.fontWeight&&(Le.actorFontWeight=Le.noteFontWeight=Le.messageFontWeight=t.fontWeight)},"setConf"),TE=o(function(t){return nt.activations.filter(function(e){return e.actor===t})},"actorActivations"),lde=o(function(t,e){let r=e.get(t),n=TE(t),i=n.reduce(function(s,l){return je.getMin(s,l.startx)},r.x+r.width/2-1),a=n.reduce(function(s,l){return je.getMax(s,l.stopx)},r.x+r.width/2+1);return[i,a]},"activationBounds");o(zc,"adjustLoopHeightForWrap");o(zHe,"adjustCreatedDestroyedData");GHe=o(async function(t,e,r,n){let{securityLevel:i,sequence:a}=de();Le=a;let s;i==="sandbox"&&(s=ze("#i"+e));let l=i==="sandbox"?ze(s.nodes()[0].contentDocument.body):ze("body"),u=i==="sandbox"?s.nodes()[0].contentDocument:document;nt.init(),Y.debug(n.db);let h=i==="sandbox"?l.select(`[id="${e}"]`):ze(`[id="${e}"]`),f=n.db.getActors(),d=n.db.getCreatedActors(),p=n.db.getDestroyedActors(),m=n.db.getBoxes(),g=n.db.getActorKeys(),y=n.db.getMessages(),v=n.db.getDiagramTitle(),x=n.db.hasAtLeastOneBox(),b=n.db.hasAtLeastOneBoxWithTitle(),w=await $He(f,y,n);if(Le.height=await UHe(f,w,m),ui.insertComputerIcon(h),ui.insertDatabaseIcon(h),ui.insertClockIcon(h),x&&(nt.bumpVerticalPos(Le.boxMargin),b&&nt.bumpVerticalPos(m[0].textMaxHeight)),Le.hideUnusedParticipants===!0){let F=new Set;y.forEach(B=>{F.add(B.from),F.add(B.to)}),g=g.filter(B=>F.has(B))}FHe(h,f,d,g,0,y,!1);let _=await YHe(y,f,w,n);ui.insertArrowHead(h),ui.insertArrowCrossHead(h),ui.insertArrowFilledHead(h),ui.insertSequenceNumber(h);function T(F,B){let $=nt.endActivation(F);$.starty+18>B&&($.starty=B-6,B+=12),ui.drawActivation(h,$,B,Le,TE(F.from).length),nt.insert($.startx,B-10,$.stopx,B)}o(T,"activeEnd");let E=1,L=1,C=[],A=[],I=0;for(let F of y){let B,$,z;switch(F.type){case n.db.LINETYPE.NOTE:nt.resetVerticalPos(),$=F.noteModel,await OHe(h,$);break;case n.db.LINETYPE.ACTIVE_START:nt.newActivation(F,h,f);break;case n.db.LINETYPE.ACTIVE_END:T(F,nt.getVerticalPos());break;case n.db.LINETYPE.LOOP_START:zc(_,F,Le.boxMargin,Le.boxMargin+Le.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.LOOP_END:B=nt.endLoop(),await ui.drawLoop(h,B,"loop",Le),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;case n.db.LINETYPE.RECT_START:zc(_,F,Le.boxMargin,Le.boxMargin,W=>nt.newLoop(void 0,W.message));break;case n.db.LINETYPE.RECT_END:B=nt.endLoop(),A.push(B),nt.models.addLoop(B),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos());break;case n.db.LINETYPE.OPT_START:zc(_,F,Le.boxMargin,Le.boxMargin+Le.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.OPT_END:B=nt.endLoop(),await ui.drawLoop(h,B,"opt",Le),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;case n.db.LINETYPE.ALT_START:zc(_,F,Le.boxMargin,Le.boxMargin+Le.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.ALT_ELSE:zc(_,F,Le.boxMargin+Le.boxTextMargin,Le.boxMargin,W=>nt.addSectionToLoop(W));break;case n.db.LINETYPE.ALT_END:B=nt.endLoop(),await ui.drawLoop(h,B,"alt",Le),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:zc(_,F,Le.boxMargin,Le.boxMargin+Le.boxTextMargin,W=>nt.newLoop(W)),nt.saveVerticalPos();break;case n.db.LINETYPE.PAR_AND:zc(_,F,Le.boxMargin+Le.boxTextMargin,Le.boxMargin,W=>nt.addSectionToLoop(W));break;case n.db.LINETYPE.PAR_END:B=nt.endLoop(),await ui.drawLoop(h,B,"par",Le),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;case n.db.LINETYPE.AUTONUMBER:E=F.message.start||E,L=F.message.step||L,F.message.visible?n.db.enableSequenceNumbers():n.db.disableSequenceNumbers();break;case n.db.LINETYPE.CRITICAL_START:zc(_,F,Le.boxMargin,Le.boxMargin+Le.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.CRITICAL_OPTION:zc(_,F,Le.boxMargin+Le.boxTextMargin,Le.boxMargin,W=>nt.addSectionToLoop(W));break;case n.db.LINETYPE.CRITICAL_END:B=nt.endLoop(),await ui.drawLoop(h,B,"critical",Le),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;case n.db.LINETYPE.BREAK_START:zc(_,F,Le.boxMargin,Le.boxMargin+Le.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.BREAK_END:B=nt.endLoop(),await ui.drawLoop(h,B,"break",Le),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;default:try{z=F.msgModel,z.starty=nt.getVerticalPos(),z.sequenceIndex=E,z.sequenceVisible=n.db.showSequenceNumbers();let W=await PHe(h,z);zHe(F,z,W,I,f,d,p),C.push({messageModel:z,lineStartY:W}),nt.models.addMessage(z)}catch(W){Y.error("error while drawing message",W)}}[n.db.LINETYPE.SOLID_OPEN,n.db.LINETYPE.DOTTED_OPEN,n.db.LINETYPE.SOLID,n.db.LINETYPE.DOTTED,n.db.LINETYPE.SOLID_CROSS,n.db.LINETYPE.DOTTED_CROSS,n.db.LINETYPE.SOLID_POINT,n.db.LINETYPE.DOTTED_POINT,n.db.LINETYPE.BIDIRECTIONAL_SOLID,n.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(F.type)&&(E=E+L),I++}Y.debug("createdActors",d),Y.debug("destroyedActors",p),await LO(h,f,g,!1);for(let F of C)await BHe(h,F.messageModel,F.lineStartY,n);Le.mirrorActors&&await LO(h,f,g,!0),A.forEach(F=>ui.drawBackgroundRect(h,F)),CO(h,f,g,Le);for(let F of nt.models.boxes)F.height=nt.getVerticalPos()-F.y,nt.insert(F.x,F.y,F.x+F.width,F.height),F.startx=F.x,F.starty=F.y,F.stopx=F.startx+F.width,F.stopy=F.starty+F.height,F.stroke="rgb(0,0,0, 0.5)",ui.drawBox(h,F,Le);x&&nt.bumpVerticalPos(Le.boxMargin);let D=cde(h,f,g,u),{bounds:k}=nt.getBounds();k.startx===void 0&&(k.startx=0),k.starty===void 0&&(k.starty=0),k.stopx===void 0&&(k.stopx=0),k.stopy===void 0&&(k.stopy=0);let R=k.stopy-k.starty;R2,d=o(y=>l?-y:y,"adjustValue");t.from===t.to?h=u:(t.activate&&!f&&(h+=d(Le.activationWidth/2-1)),[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN].includes(t.type)||(h+=d(3)),[r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type)&&(u-=d(3)));let p=[n,i,a,s],m=Math.abs(u-h);t.wrap&&t.message&&(t.message=Ut.wrapLabel(t.message,je.getMax(m+2*Le.wrapPadding,Le.width),S0(Le)));let g=Ut.calculateTextDimensions(t.message,S0(Le));return{width:je.getMax(t.wrap?0:g.width+2*Le.wrapPadding,m+2*Le.wrapPadding,Le.width),height:0,startx:u,stopx:h,starty:0,stopy:0,message:t.message,type:t.type,wrap:t.wrap,fromBounds:Math.min.apply(null,p),toBounds:Math.max.apply(null,p)}},"buildMessageModel"),YHe=o(async function(t,e,r,n){let i={},a=[],s,l,u;for(let h of t){switch(h.id=Ut.random({length:10}),h.type){case n.db.LINETYPE.LOOP_START:case n.db.LINETYPE.ALT_START:case n.db.LINETYPE.OPT_START:case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:case n.db.LINETYPE.CRITICAL_START:case n.db.LINETYPE.BREAK_START:a.push({id:h.id,msg:h.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case n.db.LINETYPE.ALT_ELSE:case n.db.LINETYPE.PAR_AND:case n.db.LINETYPE.CRITICAL_OPTION:h.message&&(s=a.pop(),i[s.id]=s,i[h.id]=s,a.push(s));break;case n.db.LINETYPE.LOOP_END:case n.db.LINETYPE.ALT_END:case n.db.LINETYPE.OPT_END:case n.db.LINETYPE.PAR_END:case n.db.LINETYPE.CRITICAL_END:case n.db.LINETYPE.BREAK_END:s=a.pop(),i[s.id]=s;break;case n.db.LINETYPE.ACTIVE_START:{let d=e.get(h.from?h.from:h.to.actor),p=TE(h.from?h.from:h.to.actor).length,m=d.x+d.width/2+(p-1)*Le.activationWidth/2,g={startx:m,stopx:m+Le.activationWidth,actor:h.from,enabled:!0};nt.activations.push(g)}break;case n.db.LINETYPE.ACTIVE_END:{let d=nt.activations.map(p=>p.actor).lastIndexOf(h.from);nt.activations.splice(d,1).splice(0,1)}break}h.placement!==void 0?(l=await HHe(h,e,n),h.noteModel=l,a.forEach(d=>{s=d,s.from=je.getMin(s.from,l.startx),s.to=je.getMax(s.to,l.startx+l.width),s.width=je.getMax(s.width,Math.abs(s.from-s.to))-Le.labelBoxWidth})):(u=WHe(h,e,n),h.msgModel=u,u.startx&&u.stopx&&a.length>0&&a.forEach(d=>{if(s=d,u.startx===u.stopx){let p=e.get(h.from),m=e.get(h.to);s.from=je.getMin(p.x-u.width/2,p.x-p.width/2,s.from),s.to=je.getMax(m.x+u.width/2,m.x+p.width/2,s.to),s.width=je.getMax(s.width,Math.abs(s.to-s.from))-Le.labelBoxWidth}else s.from=je.getMin(u.startx,s.from),s.to=je.getMax(u.stopx,s.to),s.width=je.getMax(s.width,u.width)-Le.labelBoxWidth}))}return nt.activations=[],Y.debug("Loop type widths:",i),i},"calculateLoopBounds"),hde={bounds:nt,drawActors:LO,drawActorsPopup:cde,setConf:ude,draw:GHe}});var dde={};vr(dde,{diagram:()=>qHe});var qHe,pde=M(()=>{"use strict";Hfe();Zfe();ede();fde();qHe={parser:Ufe,db:kO,renderer:hde,styles:Jfe,init:o(({wrap:t})=>{kO.setWrap(t)},"init")}});var DO,kE,NO=M(()=>{"use strict";DO=function(){var t=o(function(X,fe,he,ge){for(he=he||{},ge=X.length;ge--;he[X[ge]]=fe);return he},"o"),e=[1,18],r=[1,19],n=[1,20],i=[1,41],a=[1,42],s=[1,26],l=[1,24],u=[1,25],h=[1,32],f=[1,33],d=[1,34],p=[1,45],m=[1,35],g=[1,36],y=[1,37],v=[1,38],x=[1,27],b=[1,28],w=[1,29],_=[1,30],T=[1,31],E=[1,44],L=[1,46],C=[1,43],A=[1,47],I=[1,9],D=[1,8,9],k=[1,58],R=[1,59],S=[1,60],O=[1,61],N=[1,62],P=[1,63],F=[1,64],B=[1,8,9,41],$=[1,76],z=[1,8,9,12,13,22,39,41,44,66,67,68,69,70,71,72,77,79],W=[1,8,9,12,13,17,20,22,39,41,44,48,58,66,67,68,69,70,71,72,77,79,84,99,101,102],j=[13,58,84,99,101,102],K=[13,58,71,72,84,99,101,102],ie=[13,58,66,67,68,69,70,84,99,101,102],Q=[1,98],ee=[1,115],J=[1,107],H=[1,113],q=[1,108],Z=[1,109],ae=[1,110],ue=[1,111],ce=[1,112],te=[1,114],De=[22,58,59,80,84,85,86,87,88,89],oe=[1,8,9,39,41,44],ke=[1,8,9,22],Fe=[1,143],Be=[1,8,9,59],Ve=[1,8,9,22,58,59,80,84,85,86,87,88,89],Ge={trace:o(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,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,CLASS:46,ANNOTATION_START:47,ANNOTATION_END:48,MEMBER:49,SEPARATOR:50,relation:51,NOTE_FOR:52,noteText:53,NOTE:54,CLASSDEF:55,classList:56,stylesOpt:57,ALPHA:58,COMMA:59,direction_tb:60,direction_bt:61,direction_rl:62,direction_lr:63,relationType:64,lineType:65,AGGREGATION:66,EXTENSION:67,COMPOSITION:68,DEPENDENCY:69,LOLLIPOP:70,LINE:71,DOTTED_LINE:72,CALLBACK:73,LINK:74,LINK_TARGET:75,CLICK:76,CALLBACK_NAME:77,CALLBACK_ARGS:78,HREF:79,STYLE:80,CSSCLASS:81,style:82,styleComponent:83,NUM:84,COLON:85,UNIT:86,SPACE:87,BRKT:88,PCT:89,commentToken:90,textToken:91,graphCodeTokens:92,textNoTagsToken:93,TAGSTART:94,TAGEND:95,"==":96,"--":97,DEFAULT:98,MINUS:99,keywords:100,UNICODE_TEXT:101,BQUOTE_STR:102,$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",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"CLASS",47:"ANNOTATION_START",48:"ANNOTATION_END",49:"MEMBER",50:"SEPARATOR",52:"NOTE_FOR",54:"NOTE",55:"CLASSDEF",58:"ALPHA",59:"COMMA",60:"direction_tb",61:"direction_bt",62:"direction_rl",63:"direction_lr",66:"AGGREGATION",67:"EXTENSION",68:"COMPOSITION",69:"DEPENDENCY",70:"LOLLIPOP",71:"LINE",72:"DOTTED_LINE",73:"CALLBACK",74:"LINK",75:"LINK_TARGET",76:"CLICK",77:"CALLBACK_NAME",78:"CALLBACK_ARGS",79:"HREF",80:"STYLE",81:"CSSCLASS",84:"NUM",85:"COLON",86:"UNIT",87:"SPACE",88:"BRKT",89:"PCT",92:"graphCodeTokens",94:"TAGSTART",95:"TAGEND",96:"==",97:"--",98:"DEFAULT",99:"MINUS",100:"keywords",101:"UNICODE_TEXT",102:"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,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,6],[43,2],[43,3],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[56,1],[56,3],[32,1],[32,1],[32,1],[32,1],[51,3],[51,2],[51,2],[51,1],[64,1],[64,1],[64,1],[64,1],[64,1],[65,1],[65,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],[57,1],[57,3],[82,1],[82,2],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[90,1],[90,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[93,1],[93,1],[93,1],[93,1],[16,1],[16,1],[16,1],[16,1],[19,1],[53,1]],performAction:o(function(fe,he,ge,ne,ye,U,Te){var se=U.length-1;switch(ye){case 8:this.$=U[se-1];break;case 9:case 12:case 14:this.$=U[se];break;case 10:case 13:this.$=U[se-2]+"."+U[se];break;case 11:case 15:this.$=U[se-1]+U[se];break;case 16:case 17:this.$=U[se-1]+"~"+U[se]+"~";break;case 18:ne.addRelation(U[se]);break;case 19:U[se-1].title=ne.cleanupLabel(U[se]),ne.addRelation(U[se-1]);break;case 30:this.$=U[se].trim(),ne.setAccTitle(this.$);break;case 31:case 32:this.$=U[se].trim(),ne.setAccDescription(this.$);break;case 33:ne.addClassesToNamespace(U[se-3],U[se-1]);break;case 34:ne.addClassesToNamespace(U[se-4],U[se-1]);break;case 35:this.$=U[se],ne.addNamespace(U[se]);break;case 36:this.$=[U[se]];break;case 37:this.$=[U[se-1]];break;case 38:U[se].unshift(U[se-2]),this.$=U[se];break;case 40:ne.setCssClass(U[se-2],U[se]);break;case 41:ne.addMembers(U[se-3],U[se-1]);break;case 42:ne.setCssClass(U[se-5],U[se-3]),ne.addMembers(U[se-5],U[se-1]);break;case 43:this.$=U[se],ne.addClass(U[se]);break;case 44:this.$=U[se-1],ne.addClass(U[se-1]),ne.setClassLabel(U[se-1],U[se]);break;case 45:ne.addAnnotation(U[se],U[se-2]);break;case 46:case 59:this.$=[U[se]];break;case 47:U[se].push(U[se-1]),this.$=U[se];break;case 48:break;case 49:ne.addMember(U[se-1],ne.cleanupLabel(U[se]));break;case 50:break;case 51:break;case 52:this.$={id1:U[se-2],id2:U[se],relation:U[se-1],relationTitle1:"none",relationTitle2:"none"};break;case 53:this.$={id1:U[se-3],id2:U[se],relation:U[se-1],relationTitle1:U[se-2],relationTitle2:"none"};break;case 54:this.$={id1:U[se-3],id2:U[se],relation:U[se-2],relationTitle1:"none",relationTitle2:U[se-1]};break;case 55:this.$={id1:U[se-4],id2:U[se],relation:U[se-2],relationTitle1:U[se-3],relationTitle2:U[se-1]};break;case 56:ne.addNote(U[se],U[se-1]);break;case 57:ne.addNote(U[se]);break;case 58:this.$=U[se-2],ne.defineClass(U[se-1],U[se]);break;case 60:this.$=U[se-2].concat([U[se]]);break;case 61:ne.setDirection("TB");break;case 62:ne.setDirection("BT");break;case 63:ne.setDirection("RL");break;case 64:ne.setDirection("LR");break;case 65:this.$={type1:U[se-2],type2:U[se],lineType:U[se-1]};break;case 66:this.$={type1:"none",type2:U[se],lineType:U[se-1]};break;case 67:this.$={type1:U[se-1],type2:"none",lineType:U[se]};break;case 68:this.$={type1:"none",type2:"none",lineType:U[se]};break;case 69:this.$=ne.relationType.AGGREGATION;break;case 70:this.$=ne.relationType.EXTENSION;break;case 71:this.$=ne.relationType.COMPOSITION;break;case 72:this.$=ne.relationType.DEPENDENCY;break;case 73:this.$=ne.relationType.LOLLIPOP;break;case 74:this.$=ne.lineType.LINE;break;case 75:this.$=ne.lineType.DOTTED_LINE;break;case 76:case 82:this.$=U[se-2],ne.setClickEvent(U[se-1],U[se]);break;case 77:case 83:this.$=U[se-3],ne.setClickEvent(U[se-2],U[se-1]),ne.setTooltip(U[se-2],U[se]);break;case 78:this.$=U[se-2],ne.setLink(U[se-1],U[se]);break;case 79:this.$=U[se-3],ne.setLink(U[se-2],U[se-1],U[se]);break;case 80:this.$=U[se-3],ne.setLink(U[se-2],U[se-1]),ne.setTooltip(U[se-2],U[se]);break;case 81:this.$=U[se-4],ne.setLink(U[se-3],U[se-2],U[se]),ne.setTooltip(U[se-3],U[se-1]);break;case 84:this.$=U[se-3],ne.setClickEvent(U[se-2],U[se-1],U[se]);break;case 85:this.$=U[se-4],ne.setClickEvent(U[se-3],U[se-2],U[se-1]),ne.setTooltip(U[se-3],U[se]);break;case 86:this.$=U[se-3],ne.setLink(U[se-2],U[se]);break;case 87:this.$=U[se-4],ne.setLink(U[se-3],U[se-1],U[se]);break;case 88:this.$=U[se-4],ne.setLink(U[se-3],U[se-1]),ne.setTooltip(U[se-3],U[se]);break;case 89:this.$=U[se-5],ne.setLink(U[se-4],U[se-2],U[se]),ne.setTooltip(U[se-4],U[se-1]);break;case 90:this.$=U[se-2],ne.setCssStyle(U[se-1],U[se]);break;case 91:ne.setCssClass(U[se-1],U[se]);break;case 92:this.$=[U[se]];break;case 93:U[se-2].push(U[se]),this.$=U[se-2];break;case 95:this.$=U[se-1]+U[se];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,18:21,19:40,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,47:s,49:l,50:u,52:h,54:f,55:d,58:p,60:m,61:g,62:y,63:v,73:x,74:b,76:w,80:_,81:T,84:E,99:L,101:C,102:A},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(I,[2,5],{8:[1,48]}),{8:[1,49]},t(D,[2,18],{22:[1,50]}),t(D,[2,20]),t(D,[2,21]),t(D,[2,22]),t(D,[2,23]),t(D,[2,24]),t(D,[2,25]),t(D,[2,26]),t(D,[2,27]),t(D,[2,28]),t(D,[2,29]),{34:[1,51]},{36:[1,52]},t(D,[2,32]),t(D,[2,48],{51:53,64:56,65:57,13:[1,54],22:[1,55],66:k,67:R,68:S,69:O,70:N,71:P,72:F}),{39:[1,65]},t(B,[2,39],{39:[1,67],44:[1,66]}),t(D,[2,50]),t(D,[2,51]),{16:68,58:p,84:E,99:L,101:C},{16:39,18:69,19:40,58:p,84:E,99:L,101:C,102:A},{16:39,18:70,19:40,58:p,84:E,99:L,101:C,102:A},{16:39,18:71,19:40,58:p,84:E,99:L,101:C,102:A},{58:[1,72]},{13:[1,73]},{16:39,18:74,19:40,58:p,84:E,99:L,101:C,102:A},{13:$,53:75},{56:77,58:[1,78]},t(D,[2,61]),t(D,[2,62]),t(D,[2,63]),t(D,[2,64]),t(z,[2,12],{16:39,19:40,18:80,17:[1,79],20:[1,81],58:p,84:E,99:L,101:C,102:A}),t(z,[2,14],{20:[1,82]}),{15:83,16:84,58:p,84:E,99:L,101:C},{16:39,18:85,19:40,58:p,84:E,99:L,101:C,102:A},t(W,[2,118]),t(W,[2,119]),t(W,[2,120]),t(W,[2,121]),t([1,8,9,12,13,20,22,39,41,44,66,67,68,69,70,71,72,77,79],[2,122]),t(I,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,18:21,38:22,43:23,16:39,19:40,5:86,33:e,35:r,37:n,42:i,46:a,47:s,49:l,50:u,52:h,54:f,55:d,58:p,60:m,61:g,62:y,63:v,73:x,74:b,76:w,80:_,81:T,84:E,99:L,101:C,102:A}),{5:87,10:5,16:39,18:21,19:40,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,47:s,49:l,50:u,52:h,54:f,55:d,58:p,60:m,61:g,62:y,63:v,73:x,74:b,76:w,80:_,81:T,84:E,99:L,101:C,102:A},t(D,[2,19]),t(D,[2,30]),t(D,[2,31]),{13:[1,89],16:39,18:88,19:40,58:p,84:E,99:L,101:C,102:A},{51:90,64:56,65:57,66:k,67:R,68:S,69:O,70:N,71:P,72:F},t(D,[2,49]),{65:91,71:P,72:F},t(j,[2,68],{64:92,66:k,67:R,68:S,69:O,70:N}),t(K,[2,69]),t(K,[2,70]),t(K,[2,71]),t(K,[2,72]),t(K,[2,73]),t(ie,[2,74]),t(ie,[2,75]),{8:[1,94],24:95,40:93,43:23,46:a},{16:96,58:p,84:E,99:L,101:C},{45:97,49:Q},{48:[1,99]},{13:[1,100]},{13:[1,101]},{77:[1,102],79:[1,103]},{22:ee,57:104,58:J,80:H,82:105,83:106,84:q,85:Z,86:ae,87:ue,88:ce,89:te},{58:[1,116]},{13:$,53:117},t(D,[2,57]),t(D,[2,123]),{22:ee,57:118,58:J,59:[1,119],80:H,82:105,83:106,84:q,85:Z,86:ae,87:ue,88:ce,89:te},t(De,[2,59]),{16:39,18:120,19:40,58:p,84:E,99:L,101:C,102:A},t(z,[2,15]),t(z,[2,16]),t(z,[2,17]),{39:[2,35]},{15:122,16:84,17:[1,121],39:[2,9],58:p,84:E,99:L,101:C},t(oe,[2,43],{11:123,12:[1,124]}),t(I,[2,7]),{9:[1,125]},t(ke,[2,52]),{16:39,18:126,19:40,58:p,84:E,99:L,101:C,102:A},{13:[1,128],16:39,18:127,19:40,58:p,84:E,99:L,101:C,102:A},t(j,[2,67],{64:129,66:k,67:R,68:S,69:O,70:N}),t(j,[2,66]),{41:[1,130]},{24:95,40:131,43:23,46:a},{8:[1,132],41:[2,36]},t(B,[2,40],{39:[1,133]}),{41:[1,134]},{41:[2,46],45:135,49:Q},{16:39,18:136,19:40,58:p,84:E,99:L,101:C,102:A},t(D,[2,76],{13:[1,137]}),t(D,[2,78],{13:[1,139],75:[1,138]}),t(D,[2,82],{13:[1,140],78:[1,141]}),{13:[1,142]},t(D,[2,90],{59:Fe}),t(Be,[2,92],{83:144,22:ee,58:J,80:H,84:q,85:Z,86:ae,87:ue,88:ce,89:te}),t(Ve,[2,94]),t(Ve,[2,96]),t(Ve,[2,97]),t(Ve,[2,98]),t(Ve,[2,99]),t(Ve,[2,100]),t(Ve,[2,101]),t(Ve,[2,102]),t(Ve,[2,103]),t(Ve,[2,104]),t(D,[2,91]),t(D,[2,56]),t(D,[2,58],{59:Fe}),{58:[1,145]},t(z,[2,13]),{15:146,16:84,58:p,84:E,99:L,101:C},{39:[2,11]},t(oe,[2,44]),{13:[1,147]},{1:[2,4]},t(ke,[2,54]),t(ke,[2,53]),{16:39,18:148,19:40,58:p,84:E,99:L,101:C,102:A},t(j,[2,65]),t(D,[2,33]),{41:[1,149]},{24:95,40:150,41:[2,37],43:23,46:a},{45:151,49:Q},t(B,[2,41]),{41:[2,47]},t(D,[2,45]),t(D,[2,77]),t(D,[2,79]),t(D,[2,80],{75:[1,152]}),t(D,[2,83]),t(D,[2,84],{13:[1,153]}),t(D,[2,86],{13:[1,155],75:[1,154]}),{22:ee,58:J,80:H,82:156,83:106,84:q,85:Z,86:ae,87:ue,88:ce,89:te},t(Ve,[2,95]),t(De,[2,60]),{39:[2,10]},{14:[1,157]},t(ke,[2,55]),t(D,[2,34]),{41:[2,38]},{41:[1,158]},t(D,[2,81]),t(D,[2,85]),t(D,[2,87]),t(D,[2,88],{75:[1,159]}),t(Be,[2,93],{83:144,22:ee,58:J,80:H,84:q,85:Z,86:ae,87:ue,88:ce,89:te}),t(oe,[2,8]),t(B,[2,42]),t(D,[2,89])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],83:[2,35],122:[2,11],125:[2,4],135:[2,47],146:[2,10],150:[2,38]},parseError:o(function(fe,he){if(he.recoverable)this.trace(fe);else{var ge=new Error(fe);throw ge.hash=he,ge}},"parseError"),parse:o(function(fe){var he=this,ge=[0],ne=[],ye=[null],U=[],Te=this.table,se="",Ee=0,Ae=0,Pe=0,Me=2,me=1,We=U.slice.call(arguments,1),Re=Object.create(this.lexer),tt={yy:{}};for(var gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,gt)&&(tt.yy[gt]=this.yy[gt]);Re.setInput(fe,tt.yy),tt.yy.lexer=Re,tt.yy.parser=this,typeof Re.yylloc>"u"&&(Re.yylloc={});var Et=Re.yylloc;U.push(Et);var vt=Re.options&&Re.options.ranges;typeof tt.yy.parseError=="function"?this.parseError=tt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ye(or){ge.length=ge.length-2*or,ye.length=ye.length-or,U.length=U.length-or}o(Ye,"popStack");function Tt(){var or;return or=ne.pop()||Re.lex()||me,typeof or!="number"&&(or instanceof Array&&(ne=or,or=ne.pop()),or=he.symbols_[or]||or),or}o(Tt,"lex");for(var $e,rt,ft,kt,er,dt,Xe={},ct,Lt,Rt,zt;;){if(ft=ge[ge.length-1],this.defaultActions[ft]?kt=this.defaultActions[ft]:(($e===null||typeof $e>"u")&&($e=Tt()),kt=Te[ft]&&Te[ft][$e]),typeof kt>"u"||!kt.length||!kt[0]){var Xn="";zt=[];for(ct in Te[ft])this.terminals_[ct]&&ct>Me&&zt.push("'"+this.terminals_[ct]+"'");Re.showPosition?Xn="Parse error on line "+(Ee+1)+`: +`+Re.showPosition()+` +Expecting `+zt.join(", ")+", got '"+(this.terminals_[$e]||$e)+"'":Xn="Parse error on line "+(Ee+1)+": Unexpected "+($e==me?"end of input":"'"+(this.terminals_[$e]||$e)+"'"),this.parseError(Xn,{text:Re.match,token:this.terminals_[$e]||$e,line:Re.yylineno,loc:Et,expected:zt})}if(kt[0]instanceof Array&&kt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ft+", token: "+$e);switch(kt[0]){case 1:ge.push($e),ye.push(Re.yytext),U.push(Re.yylloc),ge.push(kt[1]),$e=null,rt?($e=rt,rt=null):(Ae=Re.yyleng,se=Re.yytext,Ee=Re.yylineno,Et=Re.yylloc,Pe>0&&Pe--);break;case 2:if(Lt=this.productions_[kt[1]][1],Xe.$=ye[ye.length-Lt],Xe._$={first_line:U[U.length-(Lt||1)].first_line,last_line:U[U.length-1].last_line,first_column:U[U.length-(Lt||1)].first_column,last_column:U[U.length-1].last_column},vt&&(Xe._$.range=[U[U.length-(Lt||1)].range[0],U[U.length-1].range[1]]),dt=this.performAction.apply(Xe,[se,Ae,Ee,tt.yy,kt[1],ye,U].concat(We)),typeof dt<"u")return dt;Lt&&(ge=ge.slice(0,-1*Lt*2),ye=ye.slice(0,-1*Lt),U=U.slice(0,-1*Lt)),ge.push(this.productions_[kt[1]][0]),ye.push(Xe.$),U.push(Xe._$),Rt=Te[ge[ge.length-2]][ge[ge.length-1]],ge.push(Rt);break;case 3:return!0}}return!0},"parse")},He=function(){var X={EOF:1,parseError:o(function(he,ge){if(this.yy.parser)this.yy.parser.parseError(he,ge);else throw new Error(he)},"parseError"),setInput:o(function(fe,he){return this.yy=he||this.yy||{},this._input=fe,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:o(function(){var fe=this._input[0];this.yytext+=fe,this.yyleng++,this.offset++,this.match+=fe,this.matched+=fe;var he=fe.match(/(?:\r\n?|\n).*/g);return he?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),fe},"input"),unput:o(function(fe){var he=fe.length,ge=fe.split(/(?:\r\n?|\n)/g);this._input=fe+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-he),this.offset-=he;var ne=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),ge.length-1&&(this.yylineno-=ge.length-1);var ye=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:ge?(ge.length===ne.length?this.yylloc.first_column:0)+ne[ne.length-ge.length].length-ge[0].length:this.yylloc.first_column-he},this.options.ranges&&(this.yylloc.range=[ye[0],ye[0]+this.yyleng-he]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(fe){this.unput(this.match.slice(fe))},"less"),pastInput:o(function(){var fe=this.matched.substr(0,this.matched.length-this.match.length);return(fe.length>20?"...":"")+fe.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var fe=this.match;return fe.length<20&&(fe+=this._input.substr(0,20-fe.length)),(fe.substr(0,20)+(fe.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var fe=this.pastInput(),he=new Array(fe.length+1).join("-");return fe+this.upcomingInput()+` +`+he+"^"},"showPosition"),test_match:o(function(fe,he){var ge,ne,ye;if(this.options.backtrack_lexer&&(ye={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&&(ye.yylloc.range=this.yylloc.range.slice(0))),ne=fe[0].match(/(?:\r\n?|\n).*/g),ne&&(this.yylineno+=ne.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ne?ne[ne.length-1].length-ne[ne.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+fe[0].length},this.yytext+=fe[0],this.match+=fe[0],this.matches=fe,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(fe[0].length),this.matched+=fe[0],ge=this.performAction.call(this,this.yy,this,he,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ge)return ge;if(this._backtrack){for(var U in ye)this[U]=ye[U];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var fe,he,ge,ne;this._more||(this.yytext="",this.match="");for(var ye=this._currentRules(),U=0;Uhe[0].length)){if(he=ge,ne=U,this.options.backtrack_lexer){if(fe=this.test_match(ge,ye[U]),fe!==!1)return fe;if(this._backtrack){he=!1;continue}else return!1}else if(!this.options.flex)break}return he?(fe=this.test_match(he,ye[ne]),fe!==!1?fe:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var he=this.next();return he||this.lex()},"lex"),begin:o(function(he){this.conditionStack.push(he)},"begin"),popState:o(function(){var he=this.conditionStack.length-1;return he>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(he){return he=this.conditionStack.length-1-Math.abs(he||0),he>=0?this.conditionStack[he]:"INITIAL"},"topState"),pushState:o(function(he){this.begin(he)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(he,ge,ne,ye){var U=ye;switch(ne){case 0:return 60;case 1:return 61;case 2:return 62;case 3:return 63;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 77;case 22:this.popState();break;case 23:return 78;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 80;case 28:return 55;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:return this.popState(),41;break;case 34:return"EOF_IN_STRUCT";case 35:return 8;case 36:break;case 37:return"EDGE_STATE";case 38:return this.begin("class"),46;break;case 39:return this.popState(),8;break;case 40:break;case 41:return this.popState(),this.popState(),41;break;case 42:return this.begin("class-body"),39;break;case 43:return this.popState(),41;break;case 44:return"EOF_IN_STRUCT";case 45:return"EDGE_STATE";case 46:return"OPEN_IN_STRUCT";case 47:break;case 48:return"MEMBER";case 49:return 81;case 50:return 73;case 51:return 74;case 52:return 76;case 53:return 52;case 54:return 54;case 55:return 47;case 56:return 48;case 57:return 79;case 58:this.popState();break;case 59:return"GENERICTYPE";case 60:this.begin("generic");break;case 61:this.popState();break;case 62:return"BQUOTE_STR";case 63:this.begin("bqstring");break;case 64:return 75;case 65:return 75;case 66:return 75;case 67:return 75;case 68:return 67;case 69:return 67;case 70:return 69;case 71:return 69;case 72:return 68;case 73:return 66;case 74:return 70;case 75:return 71;case 76:return 72;case 77:return 22;case 78:return 44;case 79:return 99;case 80:return 17;case 81:return"PLUS";case 82:return 85;case 83:return 59;case 84:return 88;case 85:return 88;case 86:return 89;case 87:return"EQUALS";case 88:return"EQUALS";case 89:return 58;case 90:return 12;case 91:return 14;case 92:return"PUNCTUATION";case 93:return 84;case 94:return 101;case 95:return 87;case 96:return 87;case 97: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)/,/^(?:classDef\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,33,34,35,36,37,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},namespace:{rules:[26,29,30,31,32,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},"class-body":{rules:[26,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},class:{rules:[26,39,40,41,42,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr:{rules:[9,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_title:{rules:[7,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_args:{rules:[22,23,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_name:{rules:[19,20,21,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},href:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},struct:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},generic:{rules:[26,49,50,51,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},bqstring:{rules:[26,49,50,51,52,53,54,55,56,57,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},string:{rules:[24,25,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,38,49,50,51,52,53,54,55,56,57,60,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,97],inclusive:!0}}};return X}();Ge.lexer=He;function xe(){this.yy={}}return o(xe,"Parser"),xe.prototype=Ge,Ge.Parser=xe,new xe}();DO.parser=DO;kE=DO});var yde,Tx,vde=M(()=>{"use strict";Vt();fr();yde=["#","+","~","-",""],Tx=class{static{o(this,"ClassMember")}constructor(e,r){this.memberType=r,this.visibility="",this.classifier="",this.text="";let n=Tr(e,de());this.parseMember(n)}getDisplayDetails(){let e=this.visibility+ou(this.id);this.memberType==="method"&&(e+=`(${ou(this.parameters.trim())})`,this.returnType&&(e+=" : "+ou(this.returnType))),e=e.trim();let r=this.parseClassifier();return{displayText:e,cssStyle:r}}parseMember(e){let r="";if(this.memberType==="method"){let a=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(e);if(a){let s=a[1]?a[1].trim():"";if(yde.includes(s)&&(this.visibility=s),this.id=a[2],this.parameters=a[3]?a[3].trim():"",r=a[4]?a[4].trim():"",this.returnType=a[5]?a[5].trim():"",r===""){let l=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(l)&&(r=l,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{let i=e.length,a=e.substring(0,1),s=e.substring(i-1);yde.includes(a)&&(this.visibility=a),/[$*]/.exec(s)&&(r=s),this.id=e.substring(this.visibility===""?0:1,r===""?i:i-1)}this.classifier=r,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let n=`${this.visibility?"\\"+this.visibility:""}${ou(this.id)}${this.memberType==="method"?`(${ou(this.parameters)})${this.returnType?" : "+ou(this.returnType):""}`:""}`;this.text=n.replaceAll("<","<").replaceAll(">",">"),this.text.startsWith("\\<")&&(this.text=this.text.replace("\\<","~"))}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}});function Tde(t){let e;switch(t){case 0:e="aggregation";break;case 1:e="extension";break;case 2:e="composition";break;case 3:e="dependency";break;case 4:e="lollipop";break;default:e="none"}return e}var EE,SE,Ln,xde,kx,Gg,bde,$l,RO,Ex,C0,A0,QHe,zg,wde,kde,ZHe,JHe,eWe,tWe,rWe,nWe,iWe,Ede,aWe,sWe,oWe,MO,lWe,cWe,uWe,hWe,fWe,dWe,pWe,mWe,mf,Sde,IO,Cde,gWe,yWe,vWe,xWe,bWe,wWe,TWe,$g,OO=M(()=>{"use strict";mr();ht();Vt();fr();hr();ki();vde();EE="classId-",SE=[],Ln=new Map,xde=new Map,kx=[],Gg=[],bde=0,$l=new Map,RO=0,Ex=[],C0=o(t=>je.sanitizeText(t,de()),"sanitizeText"),A0=o(function(t){let e=je.sanitizeText(t,de()),r="",n=e;if(e.indexOf("~")>0){let i=e.split("~");n=C0(i[0]),r=C0(i[1])}return{className:n,type:r}},"splitClassNameAndType"),QHe=o(function(t,e){let r=je.sanitizeText(t,de());e&&(e=C0(e));let{className:n}=A0(r);Ln.get(n).label=e,Ln.get(n).text=`${e}${Ln.get(n).type?`<${Ln.get(n).type}>`:""}`},"setClassLabel"),zg=o(function(t){let e=je.sanitizeText(t,de()),{className:r,type:n}=A0(e);if(Ln.has(r))return;let i=je.sanitizeText(r,de());Ln.set(i,{id:i,type:n,label:i,text:`${i}${n?`<${n}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:EE+i+"-"+bde}),bde++},"addClass"),wde=o(function(t,e){let r={id:`interface${Gg.length}`,label:t,classId:e};Gg.push(r)},"addInterface"),kde=o(function(t){let e=je.sanitizeText(t,de());if(Ln.has(e))return Ln.get(e).domId;throw new Error("Class not found: "+e)},"lookUpDomId"),ZHe=o(function(){SE=[],Ln=new Map,kx=[],Gg=[],Ex=[],Ex.push(Sde),$l=new Map,RO=0,IO="TB",_r()},"clear"),JHe=o(function(t){return Ln.get(t)},"getClass"),eWe=o(function(){return Ln},"getClasses"),tWe=o(function(){return SE},"getRelations"),rWe=o(function(){return kx},"getNotes"),nWe=o(function(t){Y.debug("Adding relation: "+JSON.stringify(t));let e=[mf.LOLLIPOP,mf.AGGREGATION,mf.COMPOSITION,mf.DEPENDENCY,mf.EXTENSION];t.relation.type1===mf.LOLLIPOP&&!e.includes(t.relation.type2)?(zg(t.id2),wde(t.id1,t.id2),t.id1=`interface${Gg.length-1}`):t.relation.type2===mf.LOLLIPOP&&!e.includes(t.relation.type1)?(zg(t.id1),wde(t.id2,t.id1),t.id2=`interface${Gg.length-1}`):(zg(t.id1),zg(t.id2)),t.id1=A0(t.id1).className,t.id2=A0(t.id2).className,t.relationTitle1=je.sanitizeText(t.relationTitle1.trim(),de()),t.relationTitle2=je.sanitizeText(t.relationTitle2.trim(),de()),SE.push(t)},"addRelation"),iWe=o(function(t,e){let r=A0(t).className;Ln.get(r).annotations.push(e)},"addAnnotation"),Ede=o(function(t,e){zg(t);let r=A0(t).className,n=Ln.get(r);if(typeof e=="string"){let i=e.trim();i.startsWith("<<")&&i.endsWith(">>")?n.annotations.push(C0(i.substring(2,i.length-2))):i.indexOf(")")>0?n.methods.push(new Tx(i,"method")):i&&n.members.push(new Tx(i,"attribute"))}},"addMember"),aWe=o(function(t,e){Array.isArray(e)&&(e.reverse(),e.forEach(r=>Ede(t,r)))},"addMembers"),sWe=o(function(t,e){let r={id:`note${kx.length}`,class:e,text:t};kx.push(r)},"addNote"),oWe=o(function(t){return t.startsWith(":")&&(t=t.substring(1)),C0(t.trim())},"cleanupLabel"),MO=o(function(t,e){t.split(",").forEach(function(r){let n=r;/\d/.exec(r[0])&&(n=EE+n);let i=Ln.get(n);i&&(i.cssClasses+=" "+e)})},"setCssClass"),lWe=o(function(t,e){for(let r of t){let n=xde.get(r);n===void 0&&(n={id:r,styles:[],textStyles:[]},xde.set(r,n)),e&&e.forEach(function(i){if(/color/.exec(i)){let a=i.replace("fill","bgFill");n.textStyles.push(a)}n.styles.push(i)}),Ln.forEach(i=>{i.cssClasses.includes(r)&&i.styles.push(...e.flatMap(a=>a.split(",")))})}},"defineClass"),cWe=o(function(t,e){t.split(",").forEach(function(r){e!==void 0&&(Ln.get(r).tooltip=C0(e))})},"setTooltip"),uWe=o(function(t,e){return e&&$l.has(e)?$l.get(e).classes.get(t).tooltip:Ln.get(t).tooltip},"getTooltip"),hWe=o(function(t,e,r){let n=de();t.split(",").forEach(function(i){let a=i;/\d/.exec(i[0])&&(a=EE+a);let s=Ln.get(a);s&&(s.link=Ut.formatUrl(e,n),n.securityLevel==="sandbox"?s.linkTarget="_top":typeof r=="string"?s.linkTarget=C0(r):s.linkTarget="_blank")}),MO(t,"clickable")},"setLink"),fWe=o(function(t,e,r){t.split(",").forEach(function(n){dWe(n,e,r),Ln.get(n).haveCallback=!0}),MO(t,"clickable")},"setClickEvent"),dWe=o(function(t,e,r){let n=je.sanitizeText(t,de());if(de().securityLevel!=="loose"||e===void 0)return;let a=n;if(Ln.has(a)){let s=kde(a),l=[];if(typeof r=="string"){l=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let u=0;u")),i.classed("hover",!0)}).on("mouseout",function(){e.transition().duration(500).style("opacity",0),ze(this).classed("hover",!1)})},"setupToolTips");Ex.push(Sde);IO="TB",Cde=o(()=>IO,"getDirection"),gWe=o(t=>{IO=t},"setDirection"),yWe=o(function(t){$l.has(t)||($l.set(t,{id:t,classes:new Map,children:{},domId:EE+t+"-"+RO}),RO++)},"addNamespace"),vWe=o(function(t){return $l.get(t)},"getNamespace"),xWe=o(function(){return $l},"getNamespaces"),bWe=o(function(t,e){if($l.has(t))for(let r of e){let{className:n}=A0(r);Ln.get(n).parent=t,$l.get(t).classes.set(n,Ln.get(n))}},"addClassesToNamespace"),wWe=o(function(t,e){let r=Ln.get(t);if(!(!e||!r))for(let n of e)n.includes(",")?r.styles.push(...n.split(",")):r.styles.push(n)},"setCssStyle");o(Tde,"getArrowMarker");TWe=o(()=>{let t=[],e=[],r=de();for(let i of $l.keys()){let a=$l.get(i);if(a){let s={id:a.id,label:a.id,isGroup:!0,padding:r.class.padding??16,shape:"rect",cssStyles:["fill: none","stroke: black"],look:r.look};t.push(s)}}for(let i of Ln.keys()){let a=Ln.get(i);if(a){let s=a;s.parentId=a.parent,s.look=r.look,t.push(s)}}let n=0;for(let i of kx){n++;let a={id:i.id,label:i.text,isGroup:!1,shape:"note",padding:r.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${r.themeVariables.noteBkgColor}`,`stroke: ${r.themeVariables.noteBorderColor}`],look:r.look};t.push(a);let s=Ln.get(i.class)?.id??"";if(s){let l={id:`edgeNote${n}`,start:i.id,end:s,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:r.look};e.push(l)}}for(let i of Gg){let a={id:i.id,label:i.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:r.look};t.push(a)}n=0;for(let i of SE){n++;let a={id:p5(i.id1,i.id2,{prefix:"id",counter:n}),start:i.id1,end:i.id2,type:"normal",label:i.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:Tde(i.relation.type1),arrowTypeEnd:Tde(i.relation.type2),startLabelRight:i.relationTitle1==="none"?"":i.relationTitle1,endLabelLeft:i.relationTitle2==="none"?"":i.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:i.style||"",pattern:i.relation.lineType==1?"dashed":"solid",look:r.look};e.push(a)}return{nodes:t,edges:e,other:{},config:r,direction:Cde()}},"getData"),$g={setAccTitle:Rr,getAccTitle:Pr,getAccDescription:Fr,setAccDescription:Br,getConfig:o(()=>de().class,"getConfig"),addClass:zg,bindFunctions:pWe,clear:ZHe,getClass:JHe,getClasses:eWe,getNotes:rWe,addAnnotation:iWe,addNote:sWe,getRelations:tWe,addRelation:nWe,getDirection:Cde,setDirection:gWe,addMember:Ede,addMembers:aWe,cleanupLabel:oWe,lineType:mWe,relationType:mf,setClickEvent:fWe,setCssClass:MO,defineClass:lWe,setLink:hWe,getTooltip:uWe,setTooltip:cWe,lookUpDomId:kde,setDiagramTitle:ln,getDiagramTitle:Jr,setClassLabel:QHe,addNamespace:yWe,addClassesToNamespace:bWe,getNamespace:vWe,getNamespaces:xWe,setCssStyle:wWe,getData:TWe}});var kWe,CE,PO=M(()=>{"use strict";kWe=o(t=>`g.classGroup text { + fill: ${t.nodeBorder||t.classText}; + stroke: none; + font-family: ${t.fontFamily}; + font-size: 10px; + + .title { + font-weight: bolder; + } + +} + +.nodeLabel, .edgeLabel { + color: ${t.classText}; +} +.edgeLabel .label rect { + fill: ${t.mainBkg}; +} +.label text { + fill: ${t.classText}; +} + +.labelBkg { + background: ${t.mainBkg}; +} +.edgeLabel .label span { + background: ${t.mainBkg}; +} + +.classTitle { + font-weight: bolder; +} +.node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + + +.divider { + stroke: ${t.nodeBorder}; + stroke-width: 1; +} + +g.clickable { + cursor: pointer; +} + +g.classGroup rect { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; +} + +g.classGroup line { + stroke: ${t.nodeBorder}; + stroke-width: 1; +} + +.classLabel .box { + stroke: none; + stroke-width: 0; + fill: ${t.mainBkg}; + opacity: 0.5; +} + +.classLabel .label { + fill: ${t.nodeBorder}; + font-size: 10px; +} + +.relation { + stroke: ${t.lineColor}; + stroke-width: 1; + fill: none; +} + +.dashed-line{ + stroke-dasharray: 3; +} + +.dotted-line{ + stroke-dasharray: 1 2; +} + +#compositionStart, .composition { + fill: ${t.lineColor} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#compositionEnd, .composition { + fill: ${t.lineColor} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${t.lineColor} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${t.lineColor} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#extensionStart, .extension { + fill: transparent !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#extensionEnd, .extension { + fill: transparent !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#aggregationStart, .aggregation { + fill: transparent !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#aggregationEnd, .aggregation { + fill: transparent !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#lollipopStart, .lollipop { + fill: ${t.mainBkg} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +#lollipopEnd, .lollipop { + fill: ${t.mainBkg} !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; +} + +.edgeTerminals { + font-size: 11px; + line-height: initial; +} + +.classTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; +} +`,"getStyles"),CE=kWe});var EWe,SWe,CWe,AE,BO=M(()=>{"use strict";Vt();ht();j5();Fv();uT();hr();EWe=o((t,e="TB")=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),SWe=o(function(t,e){return e.db.getClasses()},"getClasses"),CWe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing class diagram (v3)",e);let{securityLevel:i,state:a,layout:s}=de(),l=n.db.getData(),u=pm(e,i);l.type=n.type,l.layoutAlgorithm=cT(s),l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["aggregation","extension","composition","dependency","lollipop"],l.diagramId=e,await Fm(l,u);let h=8;Ut.insertTitle(u,"classDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),zm(u,h,"classDiagram",a?.useMaxWidth??!0)},"draw"),AE={getClasses:SWe,draw:CWe,getDir:EWe}});var Ade={};vr(Ade,{diagram:()=>AWe});var AWe,_de=M(()=>{"use strict";NO();OO();PO();BO();AWe={parser:kE,db:$g,renderer:AE,styles:CE,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,$g.clear()},"init")}});var Nde={};vr(Nde,{diagram:()=>NWe});var NWe,Rde=M(()=>{"use strict";NO();OO();PO();BO();NWe={parser:kE,db:$g,renderer:AE,styles:CE,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,$g.clear()},"init")}});var FO,_E,zO=M(()=>{"use strict";FO=function(){var t=o(function(F,B,$,z){for($=$||{},z=F.length;z--;$[F[z]]=B);return $},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,16],u=[1,17],h=[1,18],f=[1,19],d=[1,32],p=[1,20],m=[1,21],g=[1,22],y=[1,23],v=[1,24],x=[1,26],b=[1,27],w=[1,28],_=[1,29],T=[1,30],E=[1,31],L=[1,34],C=[1,35],A=[1,36],I=[1,37],D=[1,33],k=[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],R=[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],S=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],O={trace:o(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,"-->":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:"-->",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:o(function(B,$,z,W,j,K,ie){var Q=K.length-1;switch(j){case 3:return W.setRootDoc(K[Q]),K[Q];break;case 4:this.$=[];break;case 5:K[Q]!="nl"&&(K[Q-1].push(K[Q]),this.$=K[Q-1]);break;case 6:case 7:this.$=K[Q];break;case 8:this.$="nl";break;case 12:this.$=K[Q];break;case 13:let q=K[Q-1];q.description=W.trimColon(K[Q]),this.$=q;break;case 14:this.$={stmt:"relation",state1:K[Q-2],state2:K[Q]};break;case 15:let Z=W.trimColon(K[Q]);this.$={stmt:"relation",state1:K[Q-3],state2:K[Q-1],description:Z};break;case 19:this.$={stmt:"state",id:K[Q-3],type:"default",description:"",doc:K[Q-1]};break;case 20:var ee=K[Q],J=K[Q-2].trim();if(K[Q].match(":")){var H=K[Q].split(":");ee=H[0],J=[J,H[1]]}this.$={stmt:"state",id:ee,type:"default",description:J};break;case 21:this.$={stmt:"state",id:K[Q-3],type:"default",description:K[Q-5],doc:K[Q-1]};break;case 22:this.$={stmt:"state",id:K[Q],type:"fork"};break;case 23:this.$={stmt:"state",id:K[Q],type:"join"};break;case 24:this.$={stmt:"state",id:K[Q],type:"choice"};break;case 25:this.$={stmt:"state",id:W.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:K[Q-1].trim(),note:{position:K[Q-2].trim(),text:K[Q].trim()}};break;case 29:this.$=K[Q].trim(),W.setAccTitle(this.$);break;case 30:case 31:this.$=K[Q].trim(),W.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:K[Q-1].trim(),classes:K[Q].trim()};break;case 34:this.$={stmt:"style",id:K[Q-1].trim(),styleClass:K[Q].trim()};break;case 35:this.$={stmt:"applyClass",id:K[Q-1].trim(),styleClass:K[Q].trim()};break;case 36:W.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 37:W.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 38:W.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 39:W.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 42:case 43:this.$={stmt:"state",id:K[Q].trim(),type:"default",description:""};break;case 44:this.$={stmt:"state",id:K[Q-2].trim(),classes:[K[Q].trim()],type:"default",description:""};break;case 45:this.$={stmt:"state",id:K[Q-2].trim(),classes:[K[Q].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},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],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:_,42:T,45:E,48:L,49:C,50:A,51:I,54:D},t(k,[2,5]),{9:38,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:_,42:T,45:E,48:L,49:C,50:A,51:I,54:D},t(k,[2,7]),t(k,[2,8]),t(k,[2,9]),t(k,[2,10]),t(k,[2,11]),t(k,[2,12],{14:[1,39],15:[1,40]}),t(k,[2,16]),{18:[1,41]},t(k,[2,18],{20:[1,42]}),{23:[1,43]},t(k,[2,22]),t(k,[2,23]),t(k,[2,24]),t(k,[2,25]),{30:44,31:[1,45],56:[1,46],57:[1,47]},t(k,[2,28]),{34:[1,48]},{36:[1,49]},t(k,[2,31]),{39:[1,50],41:[1,51]},{43:[1,52]},{46:[1,53]},t(R,[2,42],{55:[1,54]}),t(R,[2,43],{55:[1,55]}),t(k,[2,36]),t(k,[2,37]),t(k,[2,38]),t(k,[2,39]),t(k,[2,6]),t(k,[2,13]),{13:56,24:d,54:D},t(k,[2,17]),t(S,i,{7:57}),{24:[1,58]},{24:[1,59]},{23:[1,60]},{24:[2,46]},{24:[2,47]},t(k,[2,29]),t(k,[2,30]),{40:[1,61]},{40:[1,62]},{44:[1,63]},{47:[1,64]},{24:[1,65]},{24:[1,66]},t(k,[2,14],{14:[1,67]}),{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,68],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:_,42:T,45:E,48:L,49:C,50:A,51:I,54:D},t(k,[2,20],{20:[1,69]}),{31:[1,70]},{24:[1,71]},t(k,[2,32]),t(k,[2,33]),t(k,[2,34]),t(k,[2,35]),t(R,[2,44]),t(R,[2,45]),t(k,[2,15]),t(k,[2,19]),t(S,i,{7:72}),t(k,[2,26]),t(k,[2,27]),{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,73],22:f,24:d,25:p,26:m,27:g,28:y,29:v,32:25,33:x,35:b,37:w,38:_,42:T,45:E,48:L,49:C,50:A,51:I,54:D},t(k,[2,21])],defaultActions:{5:[2,1],6:[2,2],46:[2,46],47:[2,47]},parseError:o(function(B,$){if($.recoverable)this.trace(B);else{var z=new Error(B);throw z.hash=$,z}},"parseError"),parse:o(function(B){var $=this,z=[0],W=[],j=[null],K=[],ie=this.table,Q="",ee=0,J=0,H=0,q=2,Z=1,ae=K.slice.call(arguments,1),ue=Object.create(this.lexer),ce={yy:{}};for(var te in this.yy)Object.prototype.hasOwnProperty.call(this.yy,te)&&(ce.yy[te]=this.yy[te]);ue.setInput(B,ce.yy),ce.yy.lexer=ue,ce.yy.parser=this,typeof ue.yylloc>"u"&&(ue.yylloc={});var De=ue.yylloc;K.push(De);var oe=ue.options&&ue.options.ranges;typeof ce.yy.parseError=="function"?this.parseError=ce.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ke(Te){z.length=z.length-2*Te,j.length=j.length-Te,K.length=K.length-Te}o(ke,"popStack");function Fe(){var Te;return Te=W.pop()||ue.lex()||Z,typeof Te!="number"&&(Te instanceof Array&&(W=Te,Te=W.pop()),Te=$.symbols_[Te]||Te),Te}o(Fe,"lex");for(var Be,Ve,Ge,He,xe,X,fe={},he,ge,ne,ye;;){if(Ge=z[z.length-1],this.defaultActions[Ge]?He=this.defaultActions[Ge]:((Be===null||typeof Be>"u")&&(Be=Fe()),He=ie[Ge]&&ie[Ge][Be]),typeof He>"u"||!He.length||!He[0]){var U="";ye=[];for(he in ie[Ge])this.terminals_[he]&&he>q&&ye.push("'"+this.terminals_[he]+"'");ue.showPosition?U="Parse error on line "+(ee+1)+`: +`+ue.showPosition()+` +Expecting `+ye.join(", ")+", got '"+(this.terminals_[Be]||Be)+"'":U="Parse error on line "+(ee+1)+": Unexpected "+(Be==Z?"end of input":"'"+(this.terminals_[Be]||Be)+"'"),this.parseError(U,{text:ue.match,token:this.terminals_[Be]||Be,line:ue.yylineno,loc:De,expected:ye})}if(He[0]instanceof Array&&He.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ge+", token: "+Be);switch(He[0]){case 1:z.push(Be),j.push(ue.yytext),K.push(ue.yylloc),z.push(He[1]),Be=null,Ve?(Be=Ve,Ve=null):(J=ue.yyleng,Q=ue.yytext,ee=ue.yylineno,De=ue.yylloc,H>0&&H--);break;case 2:if(ge=this.productions_[He[1]][1],fe.$=j[j.length-ge],fe._$={first_line:K[K.length-(ge||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-(ge||1)].first_column,last_column:K[K.length-1].last_column},oe&&(fe._$.range=[K[K.length-(ge||1)].range[0],K[K.length-1].range[1]]),X=this.performAction.apply(fe,[Q,J,ee,ce.yy,He[1],j,K].concat(ae)),typeof X<"u")return X;ge&&(z=z.slice(0,-1*ge*2),j=j.slice(0,-1*ge),K=K.slice(0,-1*ge)),z.push(this.productions_[He[1]][0]),j.push(fe.$),K.push(fe._$),ne=ie[z[z.length-2]][z[z.length-1]],z.push(ne);break;case 3:return!0}}return!0},"parse")},N=function(){var F={EOF:1,parseError:o(function($,z){if(this.yy.parser)this.yy.parser.parseError($,z);else throw new Error($)},"parseError"),setInput:o(function(B,$){return this.yy=$||this.yy||{},this._input=B,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:o(function(){var B=this._input[0];this.yytext+=B,this.yyleng++,this.offset++,this.match+=B,this.matched+=B;var $=B.match(/(?:\r\n?|\n).*/g);return $?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),B},"input"),unput:o(function(B){var $=B.length,z=B.split(/(?:\r\n?|\n)/g);this._input=B+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-$),this.offset-=$;var W=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),z.length-1&&(this.yylineno-=z.length-1);var j=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:z?(z.length===W.length?this.yylloc.first_column:0)+W[W.length-z.length].length-z[0].length:this.yylloc.first_column-$},this.options.ranges&&(this.yylloc.range=[j[0],j[0]+this.yyleng-$]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(B){this.unput(this.match.slice(B))},"less"),pastInput:o(function(){var B=this.matched.substr(0,this.matched.length-this.match.length);return(B.length>20?"...":"")+B.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var B=this.match;return B.length<20&&(B+=this._input.substr(0,20-B.length)),(B.substr(0,20)+(B.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var B=this.pastInput(),$=new Array(B.length+1).join("-");return B+this.upcomingInput()+` +`+$+"^"},"showPosition"),test_match:o(function(B,$){var z,W,j;if(this.options.backtrack_lexer&&(j={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&&(j.yylloc.range=this.yylloc.range.slice(0))),W=B[0].match(/(?:\r\n?|\n).*/g),W&&(this.yylineno+=W.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:W?W[W.length-1].length-W[W.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+B[0].length},this.yytext+=B[0],this.match+=B[0],this.matches=B,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(B[0].length),this.matched+=B[0],z=this.performAction.call(this,this.yy,this,$,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),z)return z;if(this._backtrack){for(var K in j)this[K]=j[K];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var B,$,z,W;this._more||(this.yytext="",this.match="");for(var j=this._currentRules(),K=0;K$[0].length)){if($=z,W=K,this.options.backtrack_lexer){if(B=this.test_match(z,j[K]),B!==!1)return B;if(this._backtrack){$=!1;continue}else return!1}else if(!this.options.flex)break}return $?(B=this.test_match($,j[W]),B!==!1?B:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var $=this.next();return $||this.lex()},"lex"),begin:o(function($){this.conditionStack.push($)},"begin"),popState:o(function(){var $=this.conditionStack.length-1;return $>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function($){return $=this.conditionStack.length-1-Math.abs($||0),$>=0?this.conditionStack[$]:"INITIAL"},"topState"),pushState:o(function($){this.begin($)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function($,z,W,j){var K=j;switch(W){case 0:return 41;case 1:return 48;case 2:return 49;case 3:return 50;case 4:return 51;case 5:break;case 6:break;case 7:return 5;case 8:break;case 9:break;case 10:break;case 11:break;case 12:return this.pushState("SCALE"),17;break;case 13:return 18;case 14:this.popState();break;case 15:return this.begin("acc_title"),33;break;case 16:return this.popState(),"acc_title_value";break;case 17:return this.begin("acc_descr"),35;break;case 18:return this.popState(),"acc_descr_value";break;case 19:this.begin("acc_descr_multiline");break;case 20:this.popState();break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),38;break;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 24:return this.popState(),this.pushState("CLASSDEFID"),39;break;case 25:return this.popState(),40;break;case 26:return this.pushState("CLASS"),45;break;case 27:return this.popState(),this.pushState("CLASS_STYLE"),46;break;case 28:return this.popState(),47;break;case 29:return this.pushState("STYLE"),42;break;case 30:return this.popState(),this.pushState("STYLEDEF_STYLES"),43;break;case 31:return this.popState(),44;break;case 32:return this.pushState("SCALE"),17;break;case 33:return 18;case 34:this.popState();break;case 35:this.pushState("STATE");break;case 36:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),25;break;case 37:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),26;break;case 38:return this.popState(),z.yytext=z.yytext.slice(0,-10).trim(),27;break;case 39:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),25;break;case 40:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),26;break;case 41:return this.popState(),z.yytext=z.yytext.slice(0,-10).trim(),27;break;case 42:return 48;case 43:return 49;case 44:return 50;case 45:return 51;case 46:this.pushState("STATE_STRING");break;case 47:return this.pushState("STATE_ID"),"AS";break;case 48:return this.popState(),"ID";break;case 49:this.popState();break;case 50:return"STATE_DESCR";case 51:return 19;case 52:this.popState();break;case 53:return this.popState(),this.pushState("struct"),20;break;case 54:break;case 55:return this.popState(),21;break;case 56:break;case 57:return this.begin("NOTE"),29;break;case 58:return this.popState(),this.pushState("NOTE_ID"),56;break;case 59:return this.popState(),this.pushState("NOTE_ID"),57;break;case 60:this.popState(),this.pushState("FLOATING_NOTE");break;case 61:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 62:break;case 63:return"NOTE_TEXT";case 64:return this.popState(),"ID";break;case 65:return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 66:return this.popState(),z.yytext=z.yytext.substr(2).trim(),31;break;case 67:return this.popState(),z.yytext=z.yytext.slice(0,-8).trim(),31;break;case 68:return 6;case 69:return 6;case 70:return 16;case 71:return 54;case 72:return 24;case 73:return z.yytext=z.yytext.trim(),14;break;case 74:return 15;case 75:return 28;case 76:return 55;case 77:return 5;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}}};return F}();O.lexer=N;function P(){this.yy={}}return o(P,"Parser"),P.prototype=O,O.Parser=P,new P}();FO.parser=FO;_E=FO});var Ode,LE,Vg,Sx,Pde,Bde,Fde,_0,DE,GO,$O,VO,UO,HO,NE,RE,zde,Gde,WO,YO,$de,Vde,Ug,OWe,Ude,qO,PWe,BWe,Hde,Wde,FWe,Yde,zWe,qde,XO,jO,Xde,ME,jde,KO,IE=M(()=>{"use strict";Ode="LR",LE="TB",Vg="state",Sx="relation",Pde="classDef",Bde="style",Fde="applyClass",_0="default",DE="divider",GO="fill:none",$O="fill: #333",VO="c",UO="text",HO="normal",NE="rect",RE="rectWithTitle",zde="stateStart",Gde="stateEnd",WO="divider",YO="roundedWithTitle",$de="note",Vde="noteGroup",Ug="statediagram",OWe="state",Ude=`${Ug}-${OWe}`,qO="transition",PWe="note",BWe="note-edge",Hde=`${qO} ${BWe}`,Wde=`${Ug}-${PWe}`,FWe="cluster",Yde=`${Ug}-${FWe}`,zWe="cluster-alt",qde=`${Ug}-${zWe}`,XO="parent",jO="note",Xde="state",ME="----",jde=`${ME}${jO}`,KO=`${ME}${XO}`});function QO(t="",e=0,r="",n=ME){let i=r!==null&&r.length>0?`${n}${r}`:"";return`${Xde}-${t}${i}-${e}`}function OE(t,e,r){if(!e.id||e.id===""||e.id==="")return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach(i=>{if(r.get(i)){let a=r.get(i);e.cssCompiledStyles=[...e.cssCompiledStyles,...a.styles]}}));let n=t.find(i=>i.id===e.id);n?Object.assign(n,e):t.push(e)}function $We(t){return t?.classes?.join(" ")??""}function VWe(t){return t?.styles??[]}var PE,gf,GWe,Kde,Hg,Qde,Zde=M(()=>{"use strict";Vt();ht();fr();IE();PE=new Map,gf=0;o(QO,"stateDomId");GWe=o((t,e,r,n,i,a,s,l)=>{Y.trace("items",e),e.forEach(u=>{switch(u.stmt){case Vg:Hg(t,u,r,n,i,a,s,l);break;case _0:Hg(t,u,r,n,i,a,s,l);break;case Sx:{Hg(t,u.state1,r,n,i,a,s,l),Hg(t,u.state2,r,n,i,a,s,l);let h={id:"edge"+gf,start:u.state1.id,end:u.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:GO,labelStyle:"",label:je.sanitizeText(u.description,de()),arrowheadStyle:$O,labelpos:VO,labelType:UO,thickness:HO,classes:qO,look:s};i.push(h),gf++}break}})},"setupDoc"),Kde=o((t,e=LE)=>{let r=e;if(t.doc)for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir");o(OE,"insertOrUpdateNode");o($We,"getClassesFromDbInfo");o(VWe,"getStylesFromDbInfo");Hg=o((t,e,r,n,i,a,s,l)=>{let u=e.id,h=r.get(u),f=$We(h),d=VWe(h);if(Y.info("dataFetcher parsedItem",e,h,d),u!=="root"){let p=NE;e.start===!0?p=zde:e.start===!1&&(p=Gde),e.type!==_0&&(p=e.type),PE.get(u)||PE.set(u,{id:u,shape:p,description:je.sanitizeText(u,de()),cssClasses:`${f} ${Ude}`,cssStyles:d});let m=PE.get(u);e.description&&(Array.isArray(m.description)?(m.shape=RE,m.description.push(e.description)):m.description?.length>0?(m.shape=RE,m.description===u?m.description=[e.description]:m.description=[m.description,e.description]):(m.shape=NE,m.description=e.description),m.description=je.sanitizeTextOrArray(m.description,de())),m.description?.length===1&&m.shape===RE&&(m.type==="group"?m.shape=YO:m.shape=NE),!m.type&&e.doc&&(Y.info("Setting cluster for XCX",u,Kde(e)),m.type="group",m.isGroup=!0,m.dir=Kde(e),m.shape=e.type===DE?WO:YO,m.cssClasses=`${m.cssClasses} ${Yde} ${a?qde:""}`);let g={labelStyle:"",shape:m.shape,label:m.description,cssClasses:m.cssClasses,cssCompiledStyles:[],cssStyles:m.cssStyles,id:u,dir:m.dir,domId:QO(u,gf),type:m.type,isGroup:m.type==="group",padding:8,rx:10,ry:10,look:s};if(g.shape===WO&&(g.label=""),t&&t.id!=="root"&&(Y.trace("Setting node ",u," to be child of its parent ",t.id),g.parentId=t.id),g.centerLabel=!0,e.note){let y={labelStyle:"",shape:$de,label:e.note.text,cssClasses:Wde,cssStyles:[],cssCompilesStyles:[],id:u+jde+"-"+gf,domId:QO(u,gf,jO),type:m.type,isGroup:m.type==="group",padding:de().flowchart.padding,look:s,position:e.note.position},v=u+KO,x={labelStyle:"",shape:Vde,label:e.note.text,cssClasses:m.cssClasses,cssStyles:[],id:u+KO,domId:QO(u,gf,XO),type:"group",isGroup:!0,padding:16,look:s,position:e.note.position};gf++,x.id=v,y.parentId=v,OE(n,x,l),OE(n,y,l),OE(n,g,l);let b=u,w=y.id;e.note.position==="left of"&&(b=y.id,w=u),i.push({id:b+"-"+w,start:b,end:w,arrowhead:"none",arrowTypeEnd:"",style:GO,labelStyle:"",classes:Hde,arrowheadStyle:$O,labelpos:VO,labelType:UO,thickness:HO,look:s})}else OE(n,g,l)}e.doc&&(Y.trace("Adding nodes children "),GWe(e,e.doc,r,n,i,!a,s,l))},"dataFetcher"),Qde=o(()=>{PE.clear(),gf=0},"reset")});var ZO,UWe,HWe,Jde,JO=M(()=>{"use strict";Vt();ht();j5();Fv();uT();hr();IE();ZO=o((t,e=LE)=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),UWe=o(function(t,e){return e.db.extract(e.db.getRootDocV2()),e.db.getClasses()},"getClasses"),HWe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing state diagram (v2)",e);let{securityLevel:i,state:a,layout:s}=de();n.db.extract(n.db.getRootDocV2());let l=n.db.getData(),u=pm(e,i);l.type=n.type,l.layoutAlgorithm=s,l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["barb"],l.diagramId=e,await Fm(l,u);let h=8;Ut.insertTitle(u,"statediagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),zm(u,h,Ug,a?.useMaxWidth??!0)},"draw"),Jde={getClasses:UWe,draw:HWe,getDir:ZO}});function s0e(){return new Map}function eP(t=""){let e=t;return t===nP&&(Cx++,e=`${n0e}${Cx}`),e}function tP(t="",e=_0){return t===nP?n0e:e}function eYe(t=""){let e=t;return t===i0e&&(Cx++,e=`${a0e}${Cx}`),e}function tYe(t="",e=_0){return t===i0e?a0e:e}function rYe(t,e,r){let n=eP(t.id.trim()),i=tP(t.id.trim(),t.type),a=eP(e.id.trim()),s=tP(e.id.trim(),e.type);yf(n,i,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),yf(a,s,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),zs.relations.push({id1:n,id2:a,relationTitle:je.sanitizeText(r,de())})}var nP,n0e,i0e,a0e,e0e,t0e,WWe,YWe,zE,iP,o0e,GE,Wg,l0e,$E,zs,Cx,r0e,qWe,XWe,BE,jWe,KWe,FE,aP,QWe,yf,c0e,L0,u0e,ZWe,JWe,h0e,rP,nYe,iYe,f0e,aYe,sP,sYe,oYe,lYe,cYe,uYe,hYe,tl,VE=M(()=>{"use strict";ht();hr();fr();Vt();ki();Zde();JO();IE();nP="[*]",n0e="start",i0e=nP,a0e="end",e0e="color",t0e="fill",WWe="bgFill",YWe=",";o(s0e,"newClassesList");zE=[],iP=[],o0e=Ode,GE=[],Wg=s0e(),l0e=o(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),$E={root:l0e()},zs=$E.root,Cx=0,r0e=0,qWe={LINE:0,DOTTED_LINE:1},XWe={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},BE=o(t=>JSON.parse(JSON.stringify(t)),"clone"),jWe=o(t=>{Y.info("Setting root doc",t),GE=t},"setRootDoc"),KWe=o(()=>GE,"getRootDoc"),FE=o((t,e,r)=>{if(e.stmt===Sx)FE(t,e.state1,!0),FE(t,e.state2,!1);else if(e.stmt===Vg&&(e.id==="[*]"?(e.id=r?t.id+"_start":t.id+"_end",e.start=r):e.id=e.id.trim()),e.doc){let n=[],i=[],a;for(a=0;a0&&i.length>0){let s={stmt:Vg,id:e9(),type:"divider",doc:BE(i)};n.push(BE(s)),e.doc=n}e.doc.forEach(s=>FE(e,s,!0))}},"docTranslator"),aP=o(()=>(FE({id:"root"},{id:"root",doc:GE},!0),{id:"root",doc:GE}),"getRootDocV2"),QWe=o(t=>{let e;t.doc?e=t.doc:e=t,Y.info(e),c0e(!0),Y.info("Extract initial document:",e),e.forEach(a=>{switch(Y.warn("Statement",a.stmt),a.stmt){case Vg:yf(a.id.trim(),a.type,a.doc,a.description,a.note,a.classes,a.styles,a.textStyles);break;case Sx:h0e(a.state1,a.state2,a.description);break;case Pde:f0e(a.id.trim(),a.classes);break;case Bde:{let s=a.id.trim().split(","),l=a.styleClass.split(",");s.forEach(u=>{let h=L0(u);if(h===void 0){let f=u.trim();yf(f),h=L0(f)}h.styles=l.map(f=>f.replace(/;/g,"")?.trim())})}break;case Fde:sP(a.id.trim(),a.styleClass);break}});let r=u0e(),i=de().look;Qde(),Hg(void 0,aP(),r,zE,iP,!0,i,Wg),zE.forEach(a=>{if(Array.isArray(a.label)){if(a.description=a.label.slice(1),a.isGroup&&a.description.length>0)throw new Error("Group nodes can only have label. Remove the additional description for node ["+a.id+"]");a.label=a.label[0]}})},"extract"),yf=o(function(t,e=_0,r=null,n=null,i=null,a=null,s=null,l=null){let u=t?.trim();if(zs.states.has(u)?(zs.states.get(u).doc||(zs.states.get(u).doc=r),zs.states.get(u).type||(zs.states.get(u).type=e)):(Y.info("Adding state ",u,n),zs.states.set(u,{id:u,descriptions:[],type:e,doc:r,note:i,classes:[],styles:[],textStyles:[]})),n&&(Y.info("Setting state description",u,n),typeof n=="string"&&rP(u,n.trim()),typeof n=="object"&&n.forEach(h=>rP(u,h.trim()))),i){let h=zs.states.get(u);h.note=i,h.note.text=je.sanitizeText(h.note.text,de())}a&&(Y.info("Setting state classes",u,a),(typeof a=="string"?[a]:a).forEach(f=>sP(u,f.trim()))),s&&(Y.info("Setting state styles",u,s),(typeof s=="string"?[s]:s).forEach(f=>sYe(u,f.trim()))),l&&(Y.info("Setting state styles",u,s),(typeof l=="string"?[l]:l).forEach(f=>oYe(u,f.trim())))},"addState"),c0e=o(function(t){zE=[],iP=[],$E={root:l0e()},zs=$E.root,Cx=0,Wg=s0e(),t||_r()},"clear"),L0=o(function(t){return zs.states.get(t)},"getState"),u0e=o(function(){return zs.states},"getStates"),ZWe=o(function(){Y.info("Documents = ",$E)},"logDocuments"),JWe=o(function(){return zs.relations},"getRelations");o(eP,"startIdIfNeeded");o(tP,"startTypeIfNeeded");o(eYe,"endIdIfNeeded");o(tYe,"endTypeIfNeeded");o(rYe,"addRelationObjs");h0e=o(function(t,e,r){if(typeof t=="object")rYe(t,e,r);else{let n=eP(t.trim()),i=tP(t),a=eYe(e.trim()),s=tYe(e);yf(n,i),yf(a,s),zs.relations.push({id1:n,id2:a,title:je.sanitizeText(r,de())})}},"addRelation"),rP=o(function(t,e){let r=zs.states.get(t),n=e.startsWith(":")?e.replace(":","").trim():e;r.descriptions.push(je.sanitizeText(n,de()))},"addDescription"),nYe=o(function(t){return t.substring(0,1)===":"?t.substr(2).trim():t.trim()},"cleanupLabel"),iYe=o(()=>(r0e++,"divider-id-"+r0e),"getDividerId"),f0e=o(function(t,e=""){Wg.has(t)||Wg.set(t,{id:t,styles:[],textStyles:[]});let r=Wg.get(t);e?.split(YWe).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(e0e).exec(n)){let s=i.replace(t0e,WWe).replace(e0e,t0e);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),aYe=o(function(){return Wg},"getClasses"),sP=o(function(t,e){t.split(",").forEach(function(r){let n=L0(r);if(n===void 0){let i=r.trim();yf(i),n=L0(i)}n.classes.push(e)})},"setCssClass"),sYe=o(function(t,e){let r=L0(t);r!==void 0&&r.styles.push(e)},"setStyle"),oYe=o(function(t,e){let r=L0(t);r!==void 0&&r.textStyles.push(e)},"setTextStyle"),lYe=o(()=>o0e,"getDirection"),cYe=o(t=>{o0e=t},"setDirection"),uYe=o(t=>t&&t[0]===":"?t.substr(1).trim():t.trim(),"trimColon"),hYe=o(()=>{let t=de();return{nodes:zE,edges:iP,other:{},config:t,direction:ZO(aP())}},"getData"),tl={getConfig:o(()=>de().state,"getConfig"),getData:hYe,addState:yf,clear:c0e,getState:L0,getStates:u0e,getRelations:JWe,getClasses:aYe,getDirection:lYe,addRelation:h0e,getDividerId:iYe,setDirection:cYe,cleanupLabel:nYe,lineType:qWe,relationType:XWe,logDocuments:ZWe,getRootDoc:KWe,setRootDoc:jWe,getRootDocV2:aP,extract:QWe,trimColon:uYe,getAccTitle:Pr,setAccTitle:Rr,getAccDescription:Fr,setAccDescription:Br,addStyleClass:f0e,setCssClass:sP,addDescription:rP,setDiagramTitle:ln,getDiagramTitle:Jr}});var fYe,UE,oP=M(()=>{"use strict";fYe=o(t=>` +defs #statediagram-barbEnd { + fill: ${t.transitionColor}; + stroke: ${t.transitionColor}; + } +g.stateGroup text { + fill: ${t.nodeBorder}; + stroke: none; + font-size: 10px; +} +g.stateGroup text { + fill: ${t.textColor}; + stroke: none; + font-size: 10px; + +} +g.stateGroup .state-title { + font-weight: bolder; + fill: ${t.stateLabelColor}; +} + +g.stateGroup rect { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; +} + +g.stateGroup line { + stroke: ${t.lineColor}; + stroke-width: 1; +} + +.transition { + stroke: ${t.transitionColor}; + stroke-width: 1; + fill: none; +} + +.stateGroup .composit { + fill: ${t.background}; + border-bottom: 1px +} + +.stateGroup .alt-composit { + fill: #e0e0e0; + border-bottom: 1px +} + +.state-note { + stroke: ${t.noteBorderColor}; + fill: ${t.noteBkgColor}; + + text { + fill: ${t.noteTextColor}; + stroke: none; + font-size: 10px; + } +} + +.stateLabel .box { + stroke: none; + stroke-width: 0; + fill: ${t.mainBkg}; + opacity: 0.5; +} + +.edgeLabel .label rect { + fill: ${t.labelBackgroundColor}; + opacity: 0.5; +} +.edgeLabel { + background-color: ${t.edgeLabelBackground}; + p { + background-color: ${t.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${t.edgeLabelBackground}; + fill: ${t.edgeLabelBackground}; + } + text-align: center; +} +.edgeLabel .label text { + fill: ${t.transitionLabelColor||t.tertiaryTextColor}; +} +.label div .edgeLabel { + color: ${t.transitionLabelColor||t.tertiaryTextColor}; +} + +.stateLabel text { + fill: ${t.stateLabelColor}; + font-size: 10px; + font-weight: bold; +} + +.node circle.state-start { + fill: ${t.specialStateColor}; + stroke: ${t.specialStateColor}; +} + +.node .fork-join { + fill: ${t.specialStateColor}; + stroke: ${t.specialStateColor}; +} + +.node circle.state-end { + fill: ${t.innerEndBackground}; + stroke: ${t.background}; + stroke-width: 1.5 +} +.end-state-inner { + fill: ${t.compositeBackground||t.background}; + // stroke: ${t.background}; + stroke-width: 1.5 +} + +.node rect { + fill: ${t.stateBkg||t.mainBkg}; + stroke: ${t.stateBorder||t.nodeBorder}; + stroke-width: 1px; +} +.node polygon { + fill: ${t.mainBkg}; + stroke: ${t.stateBorder||t.nodeBorder};; + stroke-width: 1px; +} +#statediagram-barbEnd { + fill: ${t.lineColor}; +} + +.statediagram-cluster rect { + fill: ${t.compositeTitleBackground}; + stroke: ${t.stateBorder||t.nodeBorder}; + stroke-width: 1px; +} + +.cluster-label, .nodeLabel { + color: ${t.stateLabelColor}; + // line-height: 1; +} + +.statediagram-cluster rect.outer { + rx: 5px; + ry: 5px; +} +.statediagram-state .divider { + stroke: ${t.stateBorder||t.nodeBorder}; +} + +.statediagram-state .title-state { + rx: 5px; + ry: 5px; +} +.statediagram-cluster.statediagram-cluster .inner { + fill: ${t.compositeBackground||t.background}; +} +.statediagram-cluster.statediagram-cluster-alt .inner { + fill: ${t.altBackground?t.altBackground:"#efefef"}; +} + +.statediagram-cluster .inner { + rx:0; + ry:0; +} + +.statediagram-state rect.basic { + rx: 5px; + ry: 5px; +} +.statediagram-state rect.divider { + stroke-dasharray: 10,10; + fill: ${t.altBackground?t.altBackground:"#efefef"}; +} + +.note-edge { + stroke-dasharray: 5; +} + +.statediagram-note rect { + fill: ${t.noteBkgColor}; + stroke: ${t.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} +.statediagram-note rect { + fill: ${t.noteBkgColor}; + stroke: ${t.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} + +.statediagram-note text { + fill: ${t.noteTextColor}; +} + +.statediagram-note .nodeLabel { + color: ${t.noteTextColor}; +} +.statediagram .edgeLabel { + color: red; // ${t.noteTextColor}; +} + +#dependencyStart, #dependencyEnd { + fill: ${t.lineColor}; + stroke: ${t.lineColor}; + stroke-width: 1; +} + +.statediagramTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; +} +`,"getStyles"),UE=fYe});var lP,dYe,pYe,d0e,mYe,p0e,m0e=M(()=>{"use strict";lP={},dYe=o((t,e)=>{lP[t]=e},"set"),pYe=o(t=>lP[t],"get"),d0e=o(()=>Object.keys(lP),"keys"),mYe=o(()=>d0e().length,"size"),p0e={get:pYe,set:dYe,keys:d0e,size:mYe}});var gYe,yYe,vYe,xYe,y0e,bYe,wYe,TYe,kYe,cP,g0e,v0e,x0e=M(()=>{"use strict";mr();m0e();VE();hr();fr();Vt();ht();gYe=o(t=>t.append("circle").attr("class","start-state").attr("r",de().state.sizeUnit).attr("cx",de().state.padding+de().state.sizeUnit).attr("cy",de().state.padding+de().state.sizeUnit),"drawStartState"),yYe=o(t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",de().state.textHeight).attr("class","divider").attr("x2",de().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),vYe=o((t,e)=>{let r=t.append("text").attr("x",2*de().state.padding).attr("y",de().state.textHeight+2*de().state.padding).attr("font-size",de().state.fontSize).attr("class","state-title").text(e.id),n=r.node().getBBox();return t.insert("rect",":first-child").attr("x",de().state.padding).attr("y",de().state.padding).attr("width",n.width+2*de().state.padding).attr("height",n.height+2*de().state.padding).attr("rx",de().state.radius),r},"drawSimpleState"),xYe=o((t,e)=>{let r=o(function(p,m,g){let y=p.append("tspan").attr("x",2*de().state.padding).text(m);g||y.attr("dy",de().state.textHeight)},"addTspan"),i=t.append("text").attr("x",2*de().state.padding).attr("y",de().state.textHeight+1.3*de().state.padding).attr("font-size",de().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),a=i.height,s=t.append("text").attr("x",de().state.padding).attr("y",a+de().state.padding*.4+de().state.dividerMargin+de().state.textHeight).attr("class","state-description"),l=!0,u=!0;e.descriptions.forEach(function(p){l||(r(s,p,u),u=!1),l=!1});let h=t.append("line").attr("x1",de().state.padding).attr("y1",de().state.padding+a+de().state.dividerMargin/2).attr("y2",de().state.padding+a+de().state.dividerMargin/2).attr("class","descr-divider"),f=s.node().getBBox(),d=Math.max(f.width,i.width);return h.attr("x2",d+3*de().state.padding),t.insert("rect",":first-child").attr("x",de().state.padding).attr("y",de().state.padding).attr("width",d+2*de().state.padding).attr("height",f.height+a+2*de().state.padding).attr("rx",de().state.radius),t},"drawDescrState"),y0e=o((t,e,r)=>{let n=de().state.padding,i=2*de().state.padding,a=t.node().getBBox(),s=a.width,l=a.x,u=t.append("text").attr("x",0).attr("y",de().state.titleShift).attr("font-size",de().state.fontSize).attr("class","state-title").text(e.id),f=u.node().getBBox().width+i,d=Math.max(f,s);d===s&&(d=d+i);let p,m=t.node().getBBox();e.doc,p=l-n,f>s&&(p=(s-d)/2+n),Math.abs(l-m.x)s&&(p=l-(f-s)/2);let g=1-de().state.textHeight;return t.insert("rect",":first-child").attr("x",p).attr("y",g).attr("class",r?"alt-composit":"composit").attr("width",d).attr("height",m.height+de().state.textHeight+de().state.titleShift+1).attr("rx","0"),u.attr("x",p+n),f<=s&&u.attr("x",l+(d-i)/2-f/2+n),t.insert("rect",":first-child").attr("x",p).attr("y",de().state.titleShift-de().state.textHeight-de().state.padding).attr("width",d).attr("height",de().state.textHeight*3).attr("rx",de().state.radius),t.insert("rect",":first-child").attr("x",p).attr("y",de().state.titleShift-de().state.textHeight-de().state.padding).attr("width",d).attr("height",m.height+3+2*de().state.textHeight).attr("rx",de().state.radius),t},"addTitleAndBox"),bYe=o(t=>(t.append("circle").attr("class","end-state-outer").attr("r",de().state.sizeUnit+de().state.miniPadding).attr("cx",de().state.padding+de().state.sizeUnit+de().state.miniPadding).attr("cy",de().state.padding+de().state.sizeUnit+de().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",de().state.sizeUnit).attr("cx",de().state.padding+de().state.sizeUnit+2).attr("cy",de().state.padding+de().state.sizeUnit+2)),"drawEndState"),wYe=o((t,e)=>{let r=de().state.forkWidth,n=de().state.forkHeight;if(e.parentId){let i=r;r=n,n=i}return t.append("rect").style("stroke","black").style("fill","black").attr("width",r).attr("height",n).attr("x",de().state.padding).attr("y",de().state.padding)},"drawForkJoinState"),TYe=o((t,e,r,n)=>{let i=0,a=n.append("text");a.style("text-anchor","start"),a.attr("class","noteText");let s=t.replace(/\r\n/g,"
    ");s=s.replace(/\n/g,"
    ");let l=s.split(je.lineBreakRegex),u=1.25*de().state.noteMargin;for(let h of l){let f=h.trim();if(f.length>0){let d=a.append("tspan");if(d.text(f),u===0){let p=d.node().getBBox();u+=p.height}i+=u,d.attr("x",e+de().state.noteMargin),d.attr("y",r+i+1.25*de().state.noteMargin)}}return{textWidth:a.node().getBBox().width,textHeight:i}},"_drawLongText"),kYe=o((t,e)=>{e.attr("class","state-note");let r=e.append("rect").attr("x",0).attr("y",de().state.padding),n=e.append("g"),{textWidth:i,textHeight:a}=TYe(t,0,0,n);return r.attr("height",a+2*de().state.noteMargin),r.attr("width",i+de().state.noteMargin*2),r},"drawNote"),cP=o(function(t,e){let r=e.id,n={id:r,label:e.id,width:0,height:0},i=t.append("g").attr("id",r).attr("class","stateGroup");e.type==="start"&&gYe(i),e.type==="end"&&bYe(i),(e.type==="fork"||e.type==="join")&&wYe(i,e),e.type==="note"&&kYe(e.note.text,i),e.type==="divider"&&yYe(i),e.type==="default"&&e.descriptions.length===0&&vYe(i,e),e.type==="default"&&e.descriptions.length>0&&xYe(i,e);let a=i.node().getBBox();return n.width=a.width+2*de().state.padding,n.height=a.height+2*de().state.padding,p0e.set(r,n),n},"drawState"),g0e=0,v0e=o(function(t,e,r){let n=o(function(u){switch(u){case tl.relationType.AGGREGATION:return"aggregation";case tl.relationType.EXTENSION:return"extension";case tl.relationType.COMPOSITION:return"composition";case tl.relationType.DEPENDENCY:return"dependency"}},"getRelationType");e.points=e.points.filter(u=>!Number.isNaN(u.y));let i=e.points,a=Ka().x(function(u){return u.x}).y(function(u){return u.y}).curve(Do),s=t.append("path").attr("d",a(i)).attr("id","edge"+g0e).attr("class","transition"),l="";if(de().state.arrowMarkerAbsolute&&(l=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,l=l.replace(/\(/g,"\\("),l=l.replace(/\)/g,"\\)")),s.attr("marker-end","url("+l+"#"+n(tl.relationType.DEPENDENCY)+"End)"),r.title!==void 0){let u=t.append("g").attr("class","stateLabel"),{x:h,y:f}=Ut.calcLabelPosition(e.points),d=je.getRows(r.title),p=0,m=[],g=0,y=0;for(let b=0;b<=d.length;b++){let w=u.append("text").attr("text-anchor","middle").text(d[b]).attr("x",h).attr("y",f+p),_=w.node().getBBox();g=Math.max(g,_.width),y=Math.min(y,_.x),Y.info(_.x,h,f+p),p===0&&(p=w.node().getBBox().height,Y.info("Title height",p,f)),m.push(w)}let v=p*d.length;if(d.length>1){let b=(d.length-1)*p*.5;m.forEach((w,_)=>w.attr("y",f+_*p-b)),v=p*d.length}let x=u.node().getBBox();u.insert("rect",":first-child").attr("class","box").attr("x",h-g/2-de().state.padding/2).attr("y",f-v/2-de().state.padding/2-3.5).attr("width",g+de().state.padding).attr("height",v+de().state.padding),Y.info(x)}g0e++},"drawEdge")});var fo,uP,EYe,SYe,CYe,AYe,b0e,w0e,T0e=M(()=>{"use strict";mr();Pv();Ns();ht();fr();x0e();Vt();ni();uP={},EYe=o(function(){},"setConf"),SYe=o(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"),CYe=o(function(t,e,r,n){fo=de().state;let i=de().securityLevel,a;i==="sandbox"&&(a=ze("#i"+e));let s=i==="sandbox"?ze(a.nodes()[0].contentDocument.body):ze("body"),l=i==="sandbox"?a.nodes()[0].contentDocument:document;Y.debug("Rendering diagram "+t);let u=s.select(`[id='${e}']`);SYe(u);let h=n.db.getRootDoc();b0e(h,u,void 0,!1,s,l,n);let f=fo.padding,d=u.node().getBBox(),p=d.width+f*2,m=d.height+f*2,g=p*1.75;Zr(u,m,g,fo.useMaxWidth),u.attr("viewBox",`${d.x-fo.padding} ${d.y-fo.padding} `+p+" "+m)},"draw"),AYe=o(t=>t?t.length*fo.fontSizeFactor:1,"getLabelWidth"),b0e=o((t,e,r,n,i,a,s)=>{let l=new Mr({compound:!0,multigraph:!0}),u,h=!0;for(u=0;u{let T=_.parentElement,E=0,L=0;T&&(T.parentElement&&(E=T.parentElement.getBBox().width),L=parseInt(T.getAttribute("data-x-shift"),10),Number.isNaN(L)&&(L=0)),_.setAttribute("x1",0-L+8),_.setAttribute("x2",E-L-8)})):Y.debug("No Node "+b+": "+JSON.stringify(l.node(b)))});let v=y.getBBox();l.edges().forEach(function(b){b!==void 0&&l.edge(b)!==void 0&&(Y.debug("Edge "+b.v+" -> "+b.w+": "+JSON.stringify(l.edge(b))),v0e(e,l.edge(b),l.edge(b).relation))}),v=y.getBBox();let x={id:r||"root",label:r||"root",width:0,height:0};return x.width=v.width+2*fo.padding,x.height=v.height+2*fo.padding,Y.debug("Doc rendered",x,l),x},"renderDoc"),w0e={setConf:EYe,draw:CYe}});var k0e={};vr(k0e,{diagram:()=>_Ye});var _Ye,E0e=M(()=>{"use strict";zO();VE();oP();T0e();_Ye={parser:_E,db:tl,renderer:w0e,styles:UE,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,tl.clear()},"init")}});var A0e={};vr(A0e,{diagram:()=>RYe});var RYe,_0e=M(()=>{"use strict";zO();VE();oP();JO();RYe={parser:_E,db:tl,renderer:Jde,styles:UE,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,tl.clear()},"init")}});var hP,N0e,R0e=M(()=>{"use strict";hP=function(){var t=o(function(d,p,m,g){for(m=m||{},g=d.length;g--;m[d[g]]=p);return m},"o"),e=[6,8,10,11,12,14,16,17,18],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,14],u={trace:o(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:o(function(p,m,g,y,v,x,b){var w=x.length-1;switch(v){case 1:return x[w-1];case 2:this.$=[];break;case 3:x[w-1].push(x[w]),this.$=x[w-1];break;case 4:case 5:this.$=x[w];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(x[w].substr(6)),this.$=x[w].substr(6);break;case 9:this.$=x[w].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=x[w].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(x[w].substr(8)),this.$=x[w].substr(8);break;case 13:y.addTask(x[w-1],x[w]),this.$="task";break}},"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:r,12:n,14:i,16:a,17:s,18:l},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:r,12:n,14:i,16:a,17:s,18:l},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:o(function(p,m){if(m.recoverable)this.trace(p);else{var g=new Error(p);throw g.hash=m,g}},"parseError"),parse:o(function(p){var m=this,g=[0],y=[],v=[null],x=[],b=this.table,w="",_=0,T=0,E=0,L=2,C=1,A=x.slice.call(arguments,1),I=Object.create(this.lexer),D={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(D.yy[k]=this.yy[k]);I.setInput(p,D.yy),D.yy.lexer=I,D.yy.parser=this,typeof I.yylloc>"u"&&(I.yylloc={});var R=I.yylloc;x.push(R);var S=I.options&&I.options.ranges;typeof D.yy.parseError=="function"?this.parseError=D.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function O(H){g.length=g.length-2*H,v.length=v.length-H,x.length=x.length-H}o(O,"popStack");function N(){var H;return H=y.pop()||I.lex()||C,typeof H!="number"&&(H instanceof Array&&(y=H,H=y.pop()),H=m.symbols_[H]||H),H}o(N,"lex");for(var P,F,B,$,z,W,j={},K,ie,Q,ee;;){if(B=g[g.length-1],this.defaultActions[B]?$=this.defaultActions[B]:((P===null||typeof P>"u")&&(P=N()),$=b[B]&&b[B][P]),typeof $>"u"||!$.length||!$[0]){var J="";ee=[];for(K in b[B])this.terminals_[K]&&K>L&&ee.push("'"+this.terminals_[K]+"'");I.showPosition?J="Parse error on line "+(_+1)+`: +`+I.showPosition()+` +Expecting `+ee.join(", ")+", got '"+(this.terminals_[P]||P)+"'":J="Parse error on line "+(_+1)+": Unexpected "+(P==C?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(J,{text:I.match,token:this.terminals_[P]||P,line:I.yylineno,loc:R,expected:ee})}if($[0]instanceof Array&&$.length>1)throw new Error("Parse Error: multiple actions possible at state: "+B+", token: "+P);switch($[0]){case 1:g.push(P),v.push(I.yytext),x.push(I.yylloc),g.push($[1]),P=null,F?(P=F,F=null):(T=I.yyleng,w=I.yytext,_=I.yylineno,R=I.yylloc,E>0&&E--);break;case 2:if(ie=this.productions_[$[1]][1],j.$=v[v.length-ie],j._$={first_line:x[x.length-(ie||1)].first_line,last_line:x[x.length-1].last_line,first_column:x[x.length-(ie||1)].first_column,last_column:x[x.length-1].last_column},S&&(j._$.range=[x[x.length-(ie||1)].range[0],x[x.length-1].range[1]]),W=this.performAction.apply(j,[w,T,_,D.yy,$[1],v,x].concat(A)),typeof W<"u")return W;ie&&(g=g.slice(0,-1*ie*2),v=v.slice(0,-1*ie),x=x.slice(0,-1*ie)),g.push(this.productions_[$[1]][0]),v.push(j.$),x.push(j._$),Q=b[g[g.length-2]][g[g.length-1]],g.push(Q);break;case 3:return!0}}return!0},"parse")},h=function(){var d={EOF:1,parseError:o(function(m,g){if(this.yy.parser)this.yy.parser.parseError(m,g);else throw new Error(m)},"parseError"),setInput:o(function(p,m){return this.yy=m||this.yy||{},this._input=p,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:o(function(){var p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var m=p.match(/(?:\r\n?|\n).*/g);return m?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),p},"input"),unput:o(function(p){var m=p.length,g=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var y=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),g.length-1&&(this.yylineno-=g.length-1);var v=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:g?(g.length===y.length?this.yylloc.first_column:0)+y[y.length-g.length].length-g[0].length:this.yylloc.first_column-m},this.options.ranges&&(this.yylloc.range=[v[0],v[0]+this.yyleng-m]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(p){this.unput(this.match.slice(p))},"less"),pastInput:o(function(){var p=this.matched.substr(0,this.matched.length-this.match.length);return(p.length>20?"...":"")+p.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var p=this.match;return p.length<20&&(p+=this._input.substr(0,20-p.length)),(p.substr(0,20)+(p.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var p=this.pastInput(),m=new Array(p.length+1).join("-");return p+this.upcomingInput()+` +`+m+"^"},"showPosition"),test_match:o(function(p,m){var g,y,v;if(this.options.backtrack_lexer&&(v={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&&(v.yylloc.range=this.yylloc.range.slice(0))),y=p[0].match(/(?:\r\n?|\n).*/g),y&&(this.yylineno+=y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:y?y[y.length-1].length-y[y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+p[0].length},this.yytext+=p[0],this.match+=p[0],this.matches=p,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(p[0].length),this.matched+=p[0],g=this.performAction.call(this,this.yy,this,m,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),g)return g;if(this._backtrack){for(var x in v)this[x]=v[x];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var p,m,g,y;this._more||(this.yytext="",this.match="");for(var v=this._currentRules(),x=0;xm[0].length)){if(m=g,y=x,this.options.backtrack_lexer){if(p=this.test_match(g,v[x]),p!==!1)return p;if(this._backtrack){m=!1;continue}else return!1}else if(!this.options.flex)break}return m?(p=this.test_match(m,v[y]),p!==!1?p:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var m=this.next();return m||this.lex()},"lex"),begin:o(function(m){this.conditionStack.push(m)},"begin"),popState:o(function(){var m=this.conditionStack.length-1;return m>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(m){return m=this.conditionStack.length-1-Math.abs(m||0),m>=0?this.conditionStack[m]:"INITIAL"},"topState"),pushState:o(function(m){this.begin(m)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(m,g,y,v){var x=v;switch(y){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;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}}};return d}();u.lexer=h;function f(){this.yy={}}return o(f,"Parser"),f.prototype=u,u.Parser=f,new f}();hP.parser=hP;N0e=hP});var Yg,fP,Ax,_x,PYe,BYe,FYe,zYe,GYe,$Ye,VYe,M0e,UYe,dP,I0e=M(()=>{"use strict";Vt();ki();Yg="",fP=[],Ax=[],_x=[],PYe=o(function(){fP.length=0,Ax.length=0,Yg="",_x.length=0,_r()},"clear"),BYe=o(function(t){Yg=t,fP.push(t)},"addSection"),FYe=o(function(){return fP},"getSections"),zYe=o(function(){let t=M0e(),e=100,r=0;for(;!t&&r{r.people&&t.push(...r.people)}),[...new Set(t)].sort()},"updateActors"),$Ye=o(function(t,e){let r=e.substr(1).split(":"),n=0,i=[];r.length===1?(n=Number(r[0]),i=[]):(n=Number(r[0]),i=r[1].split(","));let a=i.map(l=>l.trim()),s={section:Yg,type:Yg,people:a,task:t,score:n};_x.push(s)},"addTask"),VYe=o(function(t){let e={section:Yg,type:Yg,description:t,task:t,classes:[]};Ax.push(e)},"addTaskOrg"),M0e=o(function(){let t=o(function(r){return _x[r].processed},"compileTask"),e=!0;for(let[r,n]of _x.entries())t(r),e=e&&n.processed;return e},"compileTasks"),UYe=o(function(){return GYe()},"getActors"),dP={getConfig:o(()=>de().journey,"getConfig"),clear:PYe,setDiagramTitle:ln,getDiagramTitle:Jr,setAccTitle:Rr,getAccTitle:Pr,setAccDescription:Br,getAccDescription:Fr,addSection:BYe,getSections:FYe,getTasks:zYe,addTask:$Ye,addTaskOrg:VYe,getActors:UYe}});var HYe,O0e,P0e=M(()=>{"use strict";HYe=o(t=>`.label { + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + color: ${t.textColor}; + } + .mouth { + stroke: #666; + } + + line { + stroke: ${t.textColor} + } + + .legend { + fill: ${t.textColor}; + } + + .label text { + fill: #333; + } + .label { + color: ${t.textColor} + } + + .face { + ${t.faceColor?`fill: ${t.faceColor}`:"fill: #FFF8DC"}; + stroke: #999; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${t.arrowheadColor}; + } + + .edgePath .path { + stroke: ${t.lineColor}; + stroke-width: 1.5px; + } + + .flowchart-link { + stroke: ${t.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${t.edgeLabelBackground}; + rect { + opacity: 0.5; + } + text-align: center; + } + + .cluster rect { + } + + .cluster text { + fill: ${t.titleColor}; + } + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + font-size: 12px; + background: ${t.tertiaryColor}; + border: 1px solid ${t.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .task-type-0, .section-type-0 { + ${t.fillType0?`fill: ${t.fillType0}`:""}; + } + .task-type-1, .section-type-1 { + ${t.fillType0?`fill: ${t.fillType1}`:""}; + } + .task-type-2, .section-type-2 { + ${t.fillType0?`fill: ${t.fillType2}`:""}; + } + .task-type-3, .section-type-3 { + ${t.fillType0?`fill: ${t.fillType3}`:""}; + } + .task-type-4, .section-type-4 { + ${t.fillType0?`fill: ${t.fillType4}`:""}; + } + .task-type-5, .section-type-5 { + ${t.fillType0?`fill: ${t.fillType5}`:""}; + } + .task-type-6, .section-type-6 { + ${t.fillType0?`fill: ${t.fillType6}`:""}; + } + .task-type-7, .section-type-7 { + ${t.fillType0?`fill: ${t.fillType7}`:""}; + } + + .actor-0 { + ${t.actor0?`fill: ${t.actor0}`:""}; + } + .actor-1 { + ${t.actor1?`fill: ${t.actor1}`:""}; + } + .actor-2 { + ${t.actor2?`fill: ${t.actor2}`:""}; + } + .actor-3 { + ${t.actor3?`fill: ${t.actor3}`:""}; + } + .actor-4 { + ${t.actor4?`fill: ${t.actor4}`:""}; + } + .actor-5 { + ${t.actor5?`fill: ${t.actor5}`:""}; + } +`,"getStyles"),O0e=HYe});var pP,WYe,F0e,z0e,YYe,qYe,B0e,XYe,jYe,G0e,KYe,qg,$0e=M(()=>{"use strict";mr();qy();pP=o(function(t,e){return md(t,e)},"drawRect"),WYe=o(function(t,e){let 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");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=El().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=El().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.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 o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),F0e=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),z0e=o(function(t,e){return DY(t,e)},"drawText"),YYe=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,z0e(t,e)},"drawLabel"),qYe=o(function(t,e,r){let n=t.append("g"),i=Sl();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width*e.taskCount+r.diagramMarginX*(e.taskCount-1),i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,pP(n,i),G0e(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),B0e=-1,XYe=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");B0e++;let a=300+5*30;i.append("line").attr("id","task"+B0e).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),WYe(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=Sl();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,pP(i,s);let l=e.x+14;e.people.forEach(u=>{let h=e.actors[u].color,f={cx:l,cy:e.y,r:7,fill:h,stroke:"#000",title:u,pos:e.actors[u].position};F0e(i,f),l+=10}),G0e(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),jYe=o(function(t,e){Y3(t,e)},"drawBackgroundRect"),G0e=function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{let i=Yu[n].color,a={cx:20,cy:r,r:7,fill:i,stroke:"#000",pos:Yu[n].position};qg.drawCircle(t,a);let s={x:40,y:r+7,fill:"#666",text:n,textMargin:e.boxTextMargin|5};qg.drawText(t,s),r+=20})}var QYe,Yu,HE,D0,JYe,rl,mP,V0e,eqe,gP,U0e=M(()=>{"use strict";mr();$0e();Vt();ni();QYe=o(function(t){Object.keys(t).forEach(function(r){HE[r]=t[r]})},"setConf"),Yu={};o(ZYe,"drawActorLegend");HE=de().journey,D0=HE.leftMargin,JYe=o(function(t,e,r,n){let i=de().journey,a=de().securityLevel,s;a==="sandbox"&&(s=ze("#i"+e));let l=a==="sandbox"?ze(s.nodes()[0].contentDocument.body):ze("body");rl.init();let u=l.select("#"+e);qg.initGraphics(u);let h=n.db.getTasks(),f=n.db.getDiagramTitle(),d=n.db.getActors();for(let x in Yu)delete Yu[x];let p=0;d.forEach(x=>{Yu[x]={color:i.actorColours[p%i.actorColours.length],position:p},p++}),ZYe(u),rl.insert(0,0,D0,Object.keys(Yu).length*50),eqe(u,h,0);let m=rl.getBounds();f&&u.append("text").text(f).attr("x",D0).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);let g=m.stopy-m.starty+2*i.diagramMarginY,y=D0+m.stopx+2*i.diagramMarginX;Zr(u,g,y,i.useMaxWidth),u.append("line").attr("x1",D0).attr("y1",i.height*4).attr("x2",y-D0-4).attr("y2",i.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");let v=f?70:0;u.attr("viewBox",`${m.startx} -25 ${y} ${g+v}`),u.attr("preserveAspectRatio","xMinYMin meet"),u.attr("height",g+v+25)},"draw"),rl={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:o(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=de().journey,a=this,s=0;function l(u){return o(function(f){s++;let d=a.sequenceItems.length-s+1;a.updateVal(f,"starty",e-d*i.boxMargin,Math.min),a.updateVal(f,"stopy",n+d*i.boxMargin,Math.max),a.updateVal(rl.data,"startx",t-d*i.boxMargin,Math.min),a.updateVal(rl.data,"stopx",r+d*i.boxMargin,Math.max),u!=="activation"&&(a.updateVal(f,"startx",t-d*i.boxMargin,Math.min),a.updateVal(f,"stopx",r+d*i.boxMargin,Math.max),a.updateVal(rl.data,"starty",e-d*i.boxMargin,Math.min),a.updateVal(rl.data,"stopy",n+d*i.boxMargin,Math.max))},"updateItemBounds")}o(l,"updateFn"),this.sequenceItems.forEach(l())},"updateBounds"),insert:o(function(t,e,r,n){let i=Math.min(t,r),a=Math.max(t,r),s=Math.min(e,n),l=Math.max(e,n);this.updateVal(rl.data,"startx",i,Math.min),this.updateVal(rl.data,"starty",s,Math.min),this.updateVal(rl.data,"stopx",a,Math.max),this.updateVal(rl.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return this.data},"getBounds")},mP=HE.sectionFills,V0e=HE.sectionColours,eqe=o(function(t,e,r){let n=de().journey,i="",a=n.height*2+n.diagramMarginY,s=r+a,l=0,u="#CCC",h="black",f=0;for(let[d,p]of e.entries()){if(i!==p.section){u=mP[l%mP.length],f=l%mP.length,h=V0e[l%V0e.length];let g=0,y=p.section;for(let x=d;x(Yu[y]&&(g[y]=Yu[y]),g),{});p.x=d*n.taskMargin+d*n.width+D0,p.y=s,p.width=n.diagramMarginX,p.height=n.diagramMarginY,p.colour=h,p.fill=u,p.num=f,p.actors=m,qg.drawTask(t,p,n),rl.insert(p.x,p.y,p.x+p.width+n.taskMargin,300+5*30)}},"drawTasks"),gP={setConf:QYe,draw:JYe}});var H0e={};vr(H0e,{diagram:()=>tqe});var tqe,W0e=M(()=>{"use strict";R0e();I0e();P0e();U0e();tqe={parser:N0e,db:dP,renderer:gP,styles:O0e,init:o(t=>{gP.setConf(t.journey),dP.clear()},"init")}});var vP,Z0e,J0e=M(()=>{"use strict";vP=function(){var t=o(function(p,m,g,y){for(g=g||{},y=p.length;y--;g[p[y]]=m);return g},"o"),e=[6,8,10,11,12,14,16,17,20,21],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,16],u=[1,17],h={trace:o(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:o(function(m,g,y,v,x,b,w){var _=b.length-1;switch(x){case 1:return b[_-1];case 2:this.$=[];break;case 3:b[_-1].push(b[_]),this.$=b[_-1];break;case 4:case 5:this.$=b[_];break;case 6:case 7:this.$=[];break;case 8:v.getCommonDb().setDiagramTitle(b[_].substr(6)),this.$=b[_].substr(6);break;case 9:this.$=b[_].trim(),v.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=b[_].trim(),v.getCommonDb().setAccDescription(this.$);break;case 12:v.addSection(b[_].substr(8)),this.$=b[_].substr(8);break;case 15:v.addTask(b[_],0,""),this.$=b[_];break;case 16:v.addEvent(b[_].substr(2)),this.$=b[_];break}},"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:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:18,11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},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:o(function(m,g){if(g.recoverable)this.trace(m);else{var y=new Error(m);throw y.hash=g,y}},"parseError"),parse:o(function(m){var g=this,y=[0],v=[],x=[null],b=[],w=this.table,_="",T=0,E=0,L=0,C=2,A=1,I=b.slice.call(arguments,1),D=Object.create(this.lexer),k={yy:{}};for(var R in this.yy)Object.prototype.hasOwnProperty.call(this.yy,R)&&(k.yy[R]=this.yy[R]);D.setInput(m,k.yy),k.yy.lexer=D,k.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var S=D.yylloc;b.push(S);var O=D.options&&D.options.ranges;typeof k.yy.parseError=="function"?this.parseError=k.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function N(q){y.length=y.length-2*q,x.length=x.length-q,b.length=b.length-q}o(N,"popStack");function P(){var q;return q=v.pop()||D.lex()||A,typeof q!="number"&&(q instanceof Array&&(v=q,q=v.pop()),q=g.symbols_[q]||q),q}o(P,"lex");for(var F,B,$,z,W,j,K={},ie,Q,ee,J;;){if($=y[y.length-1],this.defaultActions[$]?z=this.defaultActions[$]:((F===null||typeof F>"u")&&(F=P()),z=w[$]&&w[$][F]),typeof z>"u"||!z.length||!z[0]){var H="";J=[];for(ie in w[$])this.terminals_[ie]&&ie>C&&J.push("'"+this.terminals_[ie]+"'");D.showPosition?H="Parse error on line "+(T+1)+`: +`+D.showPosition()+` +Expecting `+J.join(", ")+", got '"+(this.terminals_[F]||F)+"'":H="Parse error on line "+(T+1)+": Unexpected "+(F==A?"end of input":"'"+(this.terminals_[F]||F)+"'"),this.parseError(H,{text:D.match,token:this.terminals_[F]||F,line:D.yylineno,loc:S,expected:J})}if(z[0]instanceof Array&&z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+$+", token: "+F);switch(z[0]){case 1:y.push(F),x.push(D.yytext),b.push(D.yylloc),y.push(z[1]),F=null,B?(F=B,B=null):(E=D.yyleng,_=D.yytext,T=D.yylineno,S=D.yylloc,L>0&&L--);break;case 2:if(Q=this.productions_[z[1]][1],K.$=x[x.length-Q],K._$={first_line:b[b.length-(Q||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(Q||1)].first_column,last_column:b[b.length-1].last_column},O&&(K._$.range=[b[b.length-(Q||1)].range[0],b[b.length-1].range[1]]),j=this.performAction.apply(K,[_,E,T,k.yy,z[1],x,b].concat(I)),typeof j<"u")return j;Q&&(y=y.slice(0,-1*Q*2),x=x.slice(0,-1*Q),b=b.slice(0,-1*Q)),y.push(this.productions_[z[1]][0]),x.push(K.$),b.push(K._$),ee=w[y[y.length-2]][y[y.length-1]],y.push(ee);break;case 3:return!0}}return!0},"parse")},f=function(){var p={EOF:1,parseError:o(function(g,y){if(this.yy.parser)this.yy.parser.parseError(g,y);else throw new Error(g)},"parseError"),setInput:o(function(m,g){return this.yy=g||this.yy||{},this._input=m,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:o(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var g=m.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},"input"),unput:o(function(m){var g=m.length,y=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;var v=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),y.length-1&&(this.yylineno-=y.length-1);var x=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:y?(y.length===v.length?this.yylloc.first_column:0)+v[v.length-y.length].length-y[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[x[0],x[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(m){this.unput(this.match.slice(m))},"less"),pastInput:o(function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var m=this.pastInput(),g=new Array(m.length+1).join("-");return m+this.upcomingInput()+` +`+g+"^"},"showPosition"),test_match:o(function(m,g){var y,v,x;if(this.options.backtrack_lexer&&(x={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&&(x.yylloc.range=this.yylloc.range.slice(0))),v=m[0].match(/(?:\r\n?|\n).*/g),v&&(this.yylineno+=v.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:v?v[v.length-1].length-v[v.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+m[0].length},this.yytext+=m[0],this.match+=m[0],this.matches=m,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(m[0].length),this.matched+=m[0],y=this.performAction.call(this,this.yy,this,g,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),y)return y;if(this._backtrack){for(var b in x)this[b]=x[b];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var m,g,y,v;this._more||(this.yytext="",this.match="");for(var x=this._currentRules(),b=0;bg[0].length)){if(g=y,v=b,this.options.backtrack_lexer){if(m=this.test_match(y,x[b]),m!==!1)return m;if(this._backtrack){g=!1;continue}else return!1}else if(!this.options.flex)break}return g?(m=this.test_match(g,x[v]),m!==!1?m:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var g=this.next();return g||this.lex()},"lex"),begin:o(function(g){this.conditionStack.push(g)},"begin"),popState:o(function(){var g=this.conditionStack.length-1;return g>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(g){return g=this.conditionStack.length-1-Math.abs(g||0),g>=0?this.conditionStack[g]:"INITIAL"},"topState"),pushState:o(function(g){this.begin(g)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(g,y,v,x){var b=x;switch(v){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;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}}};return p}();h.lexer=f;function d(){this.yy={}}return o(d,"Parser"),d.prototype=h,h.Parser=d,new d}();vP.parser=vP;Z0e=vP});var bP={};vr(bP,{addEvent:()=>lpe,addSection:()=>ipe,addTask:()=>ope,addTaskOrg:()=>cpe,clear:()=>npe,default:()=>uqe,getCommonDb:()=>rpe,getSections:()=>ape,getTasks:()=>spe});var Xg,tpe,xP,WE,jg,rpe,npe,ipe,ape,spe,ope,lpe,cpe,epe,uqe,upe=M(()=>{"use strict";ki();Xg="",tpe=0,xP=[],WE=[],jg=[],rpe=o(()=>iy,"getCommonDb"),npe=o(function(){xP.length=0,WE.length=0,Xg="",jg.length=0,_r()},"clear"),ipe=o(function(t){Xg=t,xP.push(t)},"addSection"),ape=o(function(){return xP},"getSections"),spe=o(function(){let t=epe(),e=100,r=0;for(;!t&&rr.id===tpe-1).events.push(t)},"addEvent"),cpe=o(function(t){let e={section:Xg,type:Xg,description:t,task:t,classes:[]};WE.push(e)},"addTaskOrg"),epe=o(function(){let t=o(function(r){return jg[r].processed},"compileTask"),e=!0;for(let[r,n]of jg.entries())t(r),e=e&&n.processed;return e},"compileTasks"),uqe={clear:npe,getCommonDb:rpe,addSection:ipe,getSections:ape,getTasks:spe,addTask:ope,addTaskOrg:cpe,addEvent:lpe}});function ppe(t,e){t.each(function(){var r=ze(this),n=r.text().split(/(\s+|
    )/).reverse(),i,a=[],s=1.1,l=r.attr("y"),u=parseFloat(r.attr("dy")),h=r.text(null).append("tspan").attr("x",0).attr("y",l).attr("dy",u+"em");for(let f=0;fe||i==="
    ")&&(a.pop(),h.text(a.join(" ").trim()),i==="
    "?a=[""]:a=[i],h=r.append("tspan").attr("x",0).attr("y",l).attr("dy",s+"em").text(i))})}var hqe,YE,fqe,dqe,fpe,pqe,mqe,hpe,gqe,yqe,vqe,wP,dpe,xqe,bqe,wqe,Tqe,vf,mpe=M(()=>{"use strict";mr();hqe=12,YE=o(function(t,e){let r=t.append("rect");return r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),r.attr("rx",e.rx),r.attr("ry",e.ry),e.class!==void 0&&r.attr("class",e.class),r},"drawRect"),fqe=o(function(t,e){let 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");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=El().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=El().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.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 o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),dqe=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),fpe=o(function(t,e){let r=e.text.replace(//gi," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class!==void 0&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),pqe=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,fpe(t,e)},"drawLabel"),mqe=o(function(t,e,r){let n=t.append("g"),i=wP();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width,i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,YE(n,i),dpe(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),hpe=-1,gqe=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");hpe++;let a=300+5*30;i.append("line").attr("id","task"+hpe).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),fqe(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=wP();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,YE(i,s),dpe(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),yqe=o(function(t,e){YE(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),vqe=o(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),wP=o(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),dpe=function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(//gi);for(let v=0;v{"use strict";mr();mpe();ht();Vt();ni();kqe=o(function(t,e,r,n){let i=de(),a=i.leftMargin??50;Y.debug("timeline",n.db);let s=i.securityLevel,l;s==="sandbox"&&(l=ze("#i"+e));let h=(s==="sandbox"?ze(l.nodes()[0].contentDocument.body):ze("body")).select("#"+e);h.append("g");let f=n.db.getTasks(),d=n.db.getCommonDb().getDiagramTitle();Y.debug("task",f),vf.initGraphics(h);let p=n.db.getSections();Y.debug("sections",p);let m=0,g=0,y=0,v=0,x=50+a,b=50;v=50;let w=0,_=!0;p.forEach(function(A){let I={number:w,descr:A,section:w,width:150,padding:20,maxHeight:m},D=vf.getVirtualNodeHeight(h,I,i);Y.debug("sectionHeight before draw",D),m=Math.max(m,D+20)});let T=0,E=0;Y.debug("tasks.length",f.length);for(let[A,I]of f.entries()){let D={number:A,descr:I,section:I.section,width:150,padding:20,maxHeight:g},k=vf.getVirtualNodeHeight(h,D,i);Y.debug("taskHeight before draw",k),g=Math.max(g,k+20),T=Math.max(T,I.events.length);let R=0;for(let S of I.events){let O={descr:S,section:I.section,number:I.section,width:150,padding:20,maxHeight:50};R+=vf.getVirtualNodeHeight(h,O,i)}E=Math.max(E,R)}Y.debug("maxSectionHeight before draw",m),Y.debug("maxTaskHeight before draw",g),p&&p.length>0?p.forEach(A=>{let I=f.filter(S=>S.section===A),D={number:w,descr:A,section:w,width:200*Math.max(I.length,1)-50,padding:20,maxHeight:m};Y.debug("sectionNode",D);let k=h.append("g"),R=vf.drawNode(k,D,w,i);Y.debug("sectionNode output",R),k.attr("transform",`translate(${x}, ${v})`),b+=m+50,I.length>0&&gpe(h,I,w,x,b,g,i,T,E,m,!1),x+=200*Math.max(I.length,1),b=v,w++}):(_=!1,gpe(h,f,w,x,b,g,i,T,E,m,!0));let L=h.node().getBBox();Y.debug("bounds",L),d&&h.append("text").text(d).attr("x",L.width/2-a).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),y=_?m+g+150:g+100,h.append("g").attr("class","lineWrapper").append("line").attr("x1",a).attr("y1",y).attr("x2",L.width+3*a).attr("y2",y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),_o(void 0,h,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),gpe=o(function(t,e,r,n,i,a,s,l,u,h,f){for(let d of e){let p={descr:d.task,section:r,number:r,width:150,padding:20,maxHeight:a};Y.debug("taskNode",p);let m=t.append("g").attr("class","taskWrapper"),y=vf.drawNode(m,p,r,s).height;if(Y.debug("taskHeight after draw",y),m.attr("transform",`translate(${n}, ${i})`),a=Math.max(a,y),d.events){let v=t.append("g").attr("class","lineWrapper"),x=a;i+=100,x=x+Eqe(t,d.events,r,n,i,s),i-=100,v.append("line").attr("x1",n+190/2).attr("y1",i+a).attr("x2",n+190/2).attr("y2",i+a+(f?a:h)+u+120).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}n=n+200,f&&!s.timeline?.disableMulticolor&&r++}i=i-10},"drawTasks"),Eqe=o(function(t,e,r,n,i,a){let s=0,l=i;i=i+100;for(let u of e){let h={descr:u,section:r,number:r,width:150,padding:20,maxHeight:50};Y.debug("eventNode",h);let f=t.append("g").attr("class","eventWrapper"),p=vf.drawNode(f,h,r,a).height;s=s+p,f.attr("transform",`translate(${n}, ${i})`),i=i+10+p}return i=l,s},"drawEvents"),ype={setConf:o(()=>{},"setConf"),draw:kqe}});var Sqe,Cqe,xpe,bpe=M(()=>{"use strict";To();Sqe=o(t=>{let e="";for(let r=0;r` + .edge { + stroke-width: 3; + } + ${Sqe(t)} + .section-root rect, .section-root path, .section-root circle { + fill: ${t.git0}; + } + .section-root text { + fill: ${t.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .eventWrapper { + filter: brightness(120%); + } +`,"getStyles"),xpe=Cqe});var wpe={};vr(wpe,{diagram:()=>Aqe});var Aqe,Tpe=M(()=>{"use strict";J0e();upe();vpe();bpe();Aqe={db:bP,renderer:ype,parser:Z0e,styles:xpe}});var TP,Spe,Cpe=M(()=>{"use strict";TP=function(){var t=o(function(_,T,E,L){for(E=E||{},L=_.length;L--;E[_[L]]=T);return E},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,6,13,15,16,19,22],g=[1,33],y=[1,34],v=[1,6,7,11,13,15,16,19,22],x={trace:o(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:o(function(T,E,L,C,A,I,D){var k=I.length-1;switch(A){case 6:case 7:return C;case 8:C.getLogger().trace("Stop NL ");break;case 9:C.getLogger().trace("Stop EOF ");break;case 11:C.getLogger().trace("Stop NL2 ");break;case 12:C.getLogger().trace("Stop EOF2 ");break;case 15:C.getLogger().info("Node: ",I[k].id),C.addNode(I[k-1].length,I[k].id,I[k].descr,I[k].type);break;case 16:C.getLogger().trace("Icon: ",I[k]),C.decorateNode({icon:I[k]});break;case 17:case 21:C.decorateNode({class:I[k]});break;case 18:C.getLogger().trace("SPACELIST");break;case 19:C.getLogger().trace("Node: ",I[k].id),C.addNode(0,I[k].id,I[k].descr,I[k].type);break;case 20:C.decorateNode({icon:I[k]});break;case 25:C.getLogger().trace("node found ..",I[k-2]),this.$={id:I[k-1],descr:I[k-1],type:C.getType(I[k-2],I[k])};break;case 26:this.$={id:I[k],descr:I[k],type:C.nodeType.DEFAULT};break;case 27:C.getLogger().trace("node found ..",I[k-3]),this.$={id:I[k-3],descr:I[k-1],type:C.getType(I[k-2],I[k])};break}},"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:r,7:[1,10],9:9,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:r,9:22,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:h,7:f,10:23,11:d},t(p,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:s,22:l}),t(p,[2,18]),t(p,[2,19]),t(p,[2,20]),t(p,[2,21]),t(p,[2,23]),t(p,[2,24]),t(p,[2,26],{19:[1,30]}),{20:[1,31]},{6:h,7:f,10:32,11:d},{1:[2,7],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(m,[2,14],{7:g,11:y}),t(v,[2,8]),t(v,[2,9]),t(v,[2,10]),t(p,[2,15]),t(p,[2,16]),t(p,[2,17]),{20:[1,35]},{21:[1,36]},t(m,[2,13],{7:g,11:y}),t(v,[2,11]),t(v,[2,12]),{21:[1,37]},t(p,[2,25]),t(p,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(T,E){if(E.recoverable)this.trace(T);else{var L=new Error(T);throw L.hash=E,L}},"parseError"),parse:o(function(T){var E=this,L=[0],C=[],A=[null],I=[],D=this.table,k="",R=0,S=0,O=0,N=2,P=1,F=I.slice.call(arguments,1),B=Object.create(this.lexer),$={yy:{}};for(var z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,z)&&($.yy[z]=this.yy[z]);B.setInput(T,$.yy),$.yy.lexer=B,$.yy.parser=this,typeof B.yylloc>"u"&&(B.yylloc={});var W=B.yylloc;I.push(W);var j=B.options&&B.options.ranges;typeof $.yy.parseError=="function"?this.parseError=$.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function K(ke){L.length=L.length-2*ke,A.length=A.length-ke,I.length=I.length-ke}o(K,"popStack");function ie(){var ke;return ke=C.pop()||B.lex()||P,typeof ke!="number"&&(ke instanceof Array&&(C=ke,ke=C.pop()),ke=E.symbols_[ke]||ke),ke}o(ie,"lex");for(var Q,ee,J,H,q,Z,ae={},ue,ce,te,De;;){if(J=L[L.length-1],this.defaultActions[J]?H=this.defaultActions[J]:((Q===null||typeof Q>"u")&&(Q=ie()),H=D[J]&&D[J][Q]),typeof H>"u"||!H.length||!H[0]){var oe="";De=[];for(ue in D[J])this.terminals_[ue]&&ue>N&&De.push("'"+this.terminals_[ue]+"'");B.showPosition?oe="Parse error on line "+(R+1)+`: +`+B.showPosition()+` +Expecting `+De.join(", ")+", got '"+(this.terminals_[Q]||Q)+"'":oe="Parse error on line "+(R+1)+": Unexpected "+(Q==P?"end of input":"'"+(this.terminals_[Q]||Q)+"'"),this.parseError(oe,{text:B.match,token:this.terminals_[Q]||Q,line:B.yylineno,loc:W,expected:De})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+Q);switch(H[0]){case 1:L.push(Q),A.push(B.yytext),I.push(B.yylloc),L.push(H[1]),Q=null,ee?(Q=ee,ee=null):(S=B.yyleng,k=B.yytext,R=B.yylineno,W=B.yylloc,O>0&&O--);break;case 2:if(ce=this.productions_[H[1]][1],ae.$=A[A.length-ce],ae._$={first_line:I[I.length-(ce||1)].first_line,last_line:I[I.length-1].last_line,first_column:I[I.length-(ce||1)].first_column,last_column:I[I.length-1].last_column},j&&(ae._$.range=[I[I.length-(ce||1)].range[0],I[I.length-1].range[1]]),Z=this.performAction.apply(ae,[k,S,R,$.yy,H[1],A,I].concat(F)),typeof Z<"u")return Z;ce&&(L=L.slice(0,-1*ce*2),A=A.slice(0,-1*ce),I=I.slice(0,-1*ce)),L.push(this.productions_[H[1]][0]),A.push(ae.$),I.push(ae._$),te=D[L[L.length-2]][L[L.length-1]],L.push(te);break;case 3:return!0}}return!0},"parse")},b=function(){var _={EOF:1,parseError:o(function(E,L){if(this.yy.parser)this.yy.parser.parseError(E,L);else throw new Error(E)},"parseError"),setInput:o(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:o(function(){var T=this._input[0];this.yytext+=T,this.yyleng++,this.offset++,this.match+=T,this.matched+=T;var E=T.match(/(?:\r\n?|\n).*/g);return E?(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:o(function(T){var E=T.length,L=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 C=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),L.length-1&&(this.yylineno-=L.length-1);var A=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:L?(L.length===C.length?this.yylloc.first_column:0)+C[C.length-L.length].length-L[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[A[0],A[0]+this.yyleng-E]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(T){this.unput(this.match.slice(T))},"less"),pastInput:o(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:o(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:o(function(){var T=this.pastInput(),E=new Array(T.length+1).join("-");return T+this.upcomingInput()+` +`+E+"^"},"showPosition"),test_match:o(function(T,E){var L,C,A;if(this.options.backtrack_lexer&&(A={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&&(A.yylloc.range=this.yylloc.range.slice(0))),C=T[0].match(/(?:\r\n?|\n).*/g),C&&(this.yylineno+=C.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:C?C[C.length-1].length-C[C.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],L=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),L)return L;if(this._backtrack){for(var I in A)this[I]=A[I];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var T,E,L,C;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),I=0;IE[0].length)){if(E=L,C=I,this.options.backtrack_lexer){if(T=this.test_match(L,A[I]),T!==!1)return T;if(this._backtrack){E=!1;continue}else return!1}else if(!this.options.flex)break}return E?(T=this.test_match(E,A[C]),T!==!1?T:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var E=this.next();return E||this.lex()},"lex"),begin:o(function(E){this.conditionStack.push(E)},"begin"),popState:o(function(){var E=this.conditionStack.length-1;return E>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(E){return E=this.conditionStack.length-1-Math.abs(E||0),E>=0?this.conditionStack[E]:"INITIAL"},"topState"),pushState:o(function(E){this.begin(E)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(E,L,C,A){var I=A;switch(C){case 0:return E.getLogger().trace("Found comment",L.yytext),6;break;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;break;case 4:this.popState();break;case 5:E.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return E.getLogger().trace("SPACELINE"),6;break;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;break;case 11:return E.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return E.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return E.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;break;case 14:return this.begin("NODE"),19;break;case 15:return this.begin("NODE"),19;break;case 16:return this.begin("NODE"),19;break;case 17:return this.begin("NODE"),19;break;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:E.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return E.getLogger().trace("description:",L.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),E.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),E.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),E.getLogger().trace("node end ...",L.yytext),"NODE_DEND";break;case 30:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),E.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),E.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return E.getLogger().trace("Long description:",L.yytext),20;break;case 36:return E.getLogger().trace("Long description:",L.yytext),20;break}},"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 _}();x.lexer=b;function w(){this.yy={}}return o(w,"Parser"),w.prototype=x,x.Parser=w,new w}();TP.parser=TP;Spe=TP});var Vl,Ape,kP,Nqe,Rqe,Mqe,Iqe,Ui,Oqe,Pqe,Bqe,Fqe,zqe,Gqe,$qe,_pe,Lpe=M(()=>{"use strict";Vt();fr();ht();hs();Vl=[],Ape=0,kP={},Nqe=o(()=>{Vl=[],Ape=0,kP={}},"clear"),Rqe=o(function(t){for(let e=Vl.length-1;e>=0;e--)if(Vl[e].levelVl.length>0?Vl[0]:null,"getMindmap"),Iqe=o((t,e,r,n)=>{Y.info("addNode",t,e,r,n);let i=de(),a=i.mindmap?.padding??ur.mindmap.padding;switch(n){case Ui.ROUNDED_RECT:case Ui.RECT:case Ui.HEXAGON:a*=2}let s={id:Ape++,nodeId:Tr(e,i),level:t,descr:Tr(r,i),type:n,children:[],width:i.mindmap?.maxNodeWidth??ur.mindmap.maxNodeWidth,padding:a},l=Rqe(t);if(l)l.children.push(s),Vl.push(s);else if(Vl.length===0)Vl.push(s);else throw new Error('There can be only one root. No parent could be found for ("'+s.descr+'")')},"addNode"),Ui={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},Oqe=o((t,e)=>{switch(Y.debug("In get type",t,e),t){case"[":return Ui.RECT;case"(":return e===")"?Ui.ROUNDED_RECT:Ui.CLOUD;case"((":return Ui.CIRCLE;case")":return Ui.CLOUD;case"))":return Ui.BANG;case"{{":return Ui.HEXAGON;default:return Ui.DEFAULT}},"getType"),Pqe=o((t,e)=>{kP[t]=e},"setElementForId"),Bqe=o(t=>{if(!t)return;let e=de(),r=Vl[Vl.length-1];t.icon&&(r.icon=Tr(t.icon,e)),t.class&&(r.class=Tr(t.class,e))},"decorateNode"),Fqe=o(t=>{switch(t){case Ui.DEFAULT:return"no-border";case Ui.RECT:return"rect";case Ui.ROUNDED_RECT:return"rounded-rect";case Ui.CIRCLE:return"circle";case Ui.CLOUD:return"cloud";case Ui.BANG:return"bang";case Ui.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),zqe=o(()=>Y,"getLogger"),Gqe=o(t=>kP[t],"getElementById"),$qe={clear:Nqe,addNode:Iqe,getMindmap:Mqe,nodeType:Ui,getType:Oqe,setElementForId:Pqe,decorateNode:Bqe,type2Str:Fqe,getLogger:zqe,getElementById:Gqe},_pe=$qe});function Yi(t){"@babel/helpers - typeof";return Yi=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Yi(t)}function JP(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function Dpe(t,e){for(var r=0;rt.length)&&(e=t.length);for(var r=0,n=new Array(e);r=t.length?{done:!0}:{done:!1,value:t[n++]}},"n"),e:o(function(u){throw u},"e"),f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,s=!1,l;return{s:o(function(){r=r.call(t)},"s"),n:o(function(){var u=r.next();return a=u.done,u},"n"),e:o(function(u){s=!0,l=u},"e"),f:o(function(){try{!a&&r.return!=null&&r.return()}finally{if(s)throw l}},"f")}}function pXe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}function mXe(t,e){return e={exports:{}},t(e,e.exports),e.exports}function TXe(t){for(var e=t.length;e--&&wXe.test(t.charAt(e)););return e}function SXe(t){return t&&t.slice(0,kXe(t)+1).replace(EXe,"")}function DXe(t){var e=_Xe.call(t,Lx),r=t[Lx];try{t[Lx]=void 0;var n=!0}catch{}var i=LXe.call(t);return n&&(e?t[Lx]=r:delete t[Lx]),i}function IXe(t){return MXe.call(t)}function FXe(t){return t==null?t===void 0?BXe:PXe:Ipe&&Ipe in Object(t)?NXe(t):OXe(t)}function zXe(t){return t!=null&&typeof t=="object"}function VXe(t){return typeof t=="symbol"||GXe(t)&&tge(t)==$Xe}function qXe(t){if(typeof t=="number")return t;if(eb(t))return Ope;if(F0(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=F0(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=CXe(t);var r=HXe.test(t);return r||WXe.test(t)?YXe(t.slice(2),r?2:8):UXe.test(t)?Ope:+t}function QXe(t,e,r){var n,i,a,s,l,u,h=0,f=!1,d=!1,p=!0;if(typeof t!="function")throw new TypeError(XXe);e=Ppe(e)||0,F0(r)&&(f=!!r.leading,d="maxWait"in r,a=d?jXe(Ppe(r.maxWait)||0,e):a,p="trailing"in r?!!r.trailing:p);function m(E){var L=n,C=i;return n=i=void 0,h=E,s=t.apply(C,L),s}o(m,"invokeFunc");function g(E){return h=E,l=setTimeout(x,e),f?m(E):s}o(g,"leadingEdge");function y(E){var L=E-u,C=E-h,A=e-L;return d?KXe(A,a-C):A}o(y,"remainingWait");function v(E){var L=E-u,C=E-h;return u===void 0||L>=e||L<0||d&&C>=a}o(v,"shouldInvoke");function x(){var E=EP();if(v(E))return b(E);l=setTimeout(x,y(E))}o(x,"timerExpired");function b(E){return l=void 0,p&&n?m(E):(n=i=void 0,s)}o(b,"trailingEdge");function w(){l!==void 0&&clearTimeout(l),h=0,n=u=i=l=void 0}o(w,"cancel");function _(){return l===void 0?s:b(EP())}o(_,"flush");function T(){var E=EP(),L=v(E);if(n=arguments,i=this,u=E,L){if(l===void 0)return g(u);if(d)return clearTimeout(l),l=setTimeout(x,e),m(u)}return l===void 0&&(l=setTimeout(x,e)),s}return o(T,"debounced"),T.cancel=w,T.flush=_,T}function D6(t,e,r,n,i,a){var s;return ti(t)?s=t:s=u1[t]||u1.euclidean,e===0&&ti(t)?s(i,a):s(e,r,n,i,a)}function UKe(t,e){if(N6(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||eb(t)?!0:VKe.test(t)||!$Ke.test(t)||e!=null&&t in Object(e)}function jKe(t){if(!F0(t))return!1;var e=tge(t);return e==YKe||e==qKe||e==WKe||e==XKe}function ZKe(t){return!!rme&&rme in t}function rQe(t){if(t!=null){try{return tQe.call(t)}catch{}try{return t+""}catch{}}return""}function hQe(t){if(!F0(t)||JKe(t))return!1;var e=KKe(t)?uQe:aQe;return e.test(nQe(t))}function dQe(t,e){return t?.[e]}function mQe(t,e){var r=pQe(t,e);return fQe(r)?r:void 0}function yQe(){this.__data__=qx?qx(null):{},this.size=0}function xQe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}function EQe(t){var e=this.__data__;if(qx){var r=e[t];return r===wQe?void 0:r}return kQe.call(e,t)?e[t]:void 0}function _Qe(t){var e=this.__data__;return qx?e[t]!==void 0:AQe.call(e,t)}function NQe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=qx&&e===void 0?DQe:e,this}function p1(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1}function WQe(t,e){var r=this.__data__,n=R6(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}function m1(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1&&t%1==0&&t0;){var f=i.shift();e(f),a.add(f.id()),l&&n(i,a,f)}return t}function Ige(t,e,r){if(r.isParent())for(var n=r._private.children,i=0;i0&&arguments[0]!==void 0?arguments[0]:LJe,e=arguments.length>1?arguments[1]:void 0,r=0;r0?k=S:D=S;while(Math.abs(R)>s&&++O=a?b(I,O):N===0?O:_(I,D,D+h)}o(T,"getTForX");var E=!1;function L(){E=!0,(t!==e||r!==n)&&w()}o(L,"precompute");var C=o(function(D){return E||L(),t===e&&r===n?D:D===0?0:D===1?1:v(T(D),e,n)},"f");C.getControlPoints=function(){return[{x:t,y:e},{x:r,y:n}]};var A="generateBezier("+[t,e,r,n]+")";return C.toString=function(){return A},C}function wme(t,e,r,n,i){if(n===1||e===r)return r;var a=i(e,r,n);return t==null||((t.roundValue||t.color)&&(a=Math.round(a)),t.min!==void 0&&(a=Math.max(a,t.min)),t.max!==void 0&&(a=Math.min(a,t.max))),a}function Tme(t,e){return t.pfValue!=null||t.value!=null?t.pfValue!=null&&(e==null||e.type.units!=="%")?t.pfValue:t.value:t}function Zg(t,e,r,n,i){var a=i!=null?i.type:null;r<0?r=0:r>1&&(r=1);var s=Tme(t,i),l=Tme(e,i);if(xt(s)&&xt(l))return wme(a,s,l,r,n);if(wn(s)&&wn(l)){for(var u=[],h=0;h0?(m==="spring"&&g.push(s.duration),s.easingImpl=c6[m].apply(null,g)):s.easingImpl=c6[m]}var y=s.easingImpl,v;if(s.duration===0?v=1:v=(r-u)/s.duration,s.applying&&(v=s.progress),v<0?v=0:v>1&&(v=1),s.delay==null){var x=s.startPosition,b=s.position;if(b&&i&&!t.locked()){var w={};Mx(x.x,b.x)&&(w.x=Zg(x.x,b.x,v,y)),Mx(x.y,b.y)&&(w.y=Zg(x.y,b.y,v,y)),t.position(w)}var _=s.startPan,T=s.pan,E=a.pan,L=T!=null&&n;L&&(Mx(_.x,T.x)&&(E.x=Zg(_.x,T.x,v,y)),Mx(_.y,T.y)&&(E.y=Zg(_.y,T.y,v,y)),t.emit("pan"));var C=s.startZoom,A=s.zoom,I=A!=null&&n;I&&(Mx(C,A)&&(a.zoom=Wx(a.minZoom,Zg(C,A,v,y),a.maxZoom)),t.emit("zoom")),(L||I)&&t.emit("viewport");var D=s.style;if(D&&D.length>0&&i){for(var k=0;k=0;L--){var C=E[L];C()}E.splice(0,E.length)},"callbacks"),b=m.length-1;b>=0;b--){var w=m[b],_=w._private;if(_.stopped){m.splice(b,1),_.hooked=!1,_.playing=!1,_.started=!1,x(_.frames);continue}!_.playing&&!_.applying||(_.playing&&_.applying&&(_.applying=!1),_.started||UJe(f,w,t),VJe(f,w,t,d),_.applying&&(_.applying=!1),x(_.frames),_.step!=null&&_.step(t),w.completed()&&(m.splice(b,1),_.hooked=!1,_.playing=!1,_.started=!1,x(_.completes)),y=!0)}return!d&&m.length===0&&g.length===0&&n.push(f),y}o(i,"stepOne");for(var a=!1,s=0;s0?e.notify("draw",r):e.notify("draw")),r.unmerge(n),e.emit("step")}function Qge(t){this.options=ir({},QJe,ZJe,t)}function Zge(t){this.options=ir({},JJe,t)}function Jge(t){this.options=ir({},eet,t)}function G6(t){this.options=ir({},tet,t),this.options.layout=this;var e=this.options.eles.nodes(),r=this.options.eles.edges(),n=r.filter(function(i){var a=i.source().data("id"),s=i.target().data("id"),l=e.some(function(h){return h.data("id")===a}),u=e.some(function(h){return h.data("id")===s});return!l||!u});this.options.eles=this.options.eles.not(n)}function t1e(t){this.options=ir({},xet,t)}function vB(t){this.options=ir({},bet,t)}function r1e(t){this.options=ir({},wet,t)}function n1e(t){this.options=ir({},Tet,t)}function i1e(t){this.options=t,this.notifications=0}function o1e(t,e){e.radius===0?t.lineTo(e.cx,e.cy):t.arc(e.cx,e.cy,e.radius,e.startAngle,e.endAngle,e.counterClockwise)}function bB(t,e,r,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;return n===0||e.radius===0?{cx:e.x,cy:e.y,radius:0,startX:e.x,startY:e.y,stopX:e.x,stopY:e.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(Cet(t,e,r,n,i),{cx:WP,cy:YP,radius:O0,startX:a1e,startY:s1e,stopX:qP,stopY:XP,startAngle:$c.ang+Math.PI/2*P0,endAngle:nl.ang-Math.PI/2*P0,counterClockwise:f6})}function l1e(t){var e=[];if(t!=null){for(var r=0;r5&&arguments[5]!==void 0?arguments[5]:5,s=arguments.length>6?arguments[6]:void 0;t.beginPath(),t.moveTo(e+a,r),t.lineTo(e+n-a,r),t.quadraticCurveTo(e+n,r,e+n,r+a),t.lineTo(e+n,r+i-a),t.quadraticCurveTo(e+n,r+i,e+n-a,r+i),t.lineTo(e+a,r+i),t.quadraticCurveTo(e,r+i,e,r+i-a),t.lineTo(e,r+a),t.quadraticCurveTo(e,r,e+a,r),t.closePath(),s?t.stroke():t.fill()}function ptt(t,e){for(var r=atob(t),n=new ArrayBuffer(r.length),i=new Uint8Array(n),a=0;a{"use strict";o(Yi,"_typeof");o(JP,"_classCallCheck");o(Dpe,"_defineProperties");o(eB,"_createClass");o(Hme,"_defineProperty$1");o(Ul,"_slicedToArray");o(Vqe,"_arrayWithHoles");o(Uqe,"_iterableToArrayLimit");o(Wme,"_unsupportedIterableToArray");o(Npe,"_arrayLikeToArray");o(Hqe,"_nonIterableRest");o(Yme,"_createForOfIteratorHelper");Hi=typeof window>"u"?null:window,Rpe=Hi?Hi.navigator:null;Hi&&Hi.document;Wqe=Yi(""),qme=Yi({}),Yqe=Yi(function(){}),qqe=typeof HTMLElement>"u"?"undefined":Yi(HTMLElement),Zx=o(function(e){return e&&e.instanceString&&ti(e.instanceString)?e.instanceString():null},"instanceStr"),Zt=o(function(e){return e!=null&&Yi(e)==Wqe},"string"),ti=o(function(e){return e!=null&&Yi(e)===Yqe},"fn"),wn=o(function(e){return!po(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},"array"),Vr=o(function(e){return e!=null&&Yi(e)===qme&&!wn(e)&&e.constructor===Object},"plainObject"),Xqe=o(function(e){return e!=null&&Yi(e)===qme},"object"),xt=o(function(e){return e!=null&&Yi(e)===Yi(1)&&!isNaN(e)},"number"),jqe=o(function(e){return xt(e)&&Math.floor(e)===e},"integer"),p6=o(function(e){if(qqe!=="undefined")return e!=null&&e instanceof HTMLElement},"htmlElement"),po=o(function(e){return Jx(e)||Xme(e)},"elementOrCollection"),Jx=o(function(e){return Zx(e)==="collection"&&e._private.single},"element"),Xme=o(function(e){return Zx(e)==="collection"&&!e._private.single},"collection"),tB=o(function(e){return Zx(e)==="core"},"core"),jme=o(function(e){return Zx(e)==="stylesheet"},"stylesheet"),Kqe=o(function(e){return Zx(e)==="event"},"event"),Sf=o(function(e){return e==null?!0:!!(e===""||e.match(/^\s+$/))},"emptyString"),Qqe=o(function(e){return typeof HTMLElement>"u"?!1:e instanceof HTMLElement},"domElement"),Zqe=o(function(e){return Vr(e)&&xt(e.x1)&&xt(e.x2)&&xt(e.y1)&&xt(e.y2)},"boundingBox"),Jqe=o(function(e){return Xqe(e)&&ti(e.then)},"promise"),eXe=o(function(){return Rpe&&Rpe.userAgent.match(/msie|trident|edge/i)},"ms"),$x=o(function(e,r){r||(r=o(function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var a=[],s=0;sr?1:0},"ascending"),oXe=o(function(e,r){return-1*Qme(e,r)},"descending"),ir=Object.assign!=null?Object.assign.bind(Object):function(t){for(var e=arguments,r=1;r1&&(v-=1),v<1/6?g+(y-g)*6*v:v<1/2?y:v<2/3?g+(y-g)*(2/3-v)*6:g}o(f,"hue2rgb");var d=new RegExp("^"+nXe+"$").exec(e);if(d){if(n=parseInt(d[1]),n<0?n=(360- -1*n%360)%360:n>360&&(n=n%360),n/=360,i=parseFloat(d[2]),i<0||i>100||(i=i/100,a=parseFloat(d[3]),a<0||a>100)||(a=a/100,s=d[4],s!==void 0&&(s=parseFloat(s),s<0||s>1)))return;if(i===0)l=u=h=Math.round(a*255);else{var p=a<.5?a*(1+i):a+i-a*i,m=2*a-p;l=Math.round(255*f(m,p,n+1/3)),u=Math.round(255*f(m,p,n)),h=Math.round(255*f(m,p,n-1/3))}r=[l,u,h,s]}return r},"hsl2tuple"),uXe=o(function(e){var r,n=new RegExp("^"+tXe+"$").exec(e);if(n){r=[];for(var i=[],a=1;a<=3;a++){var s=n[a];if(s[s.length-1]==="%"&&(i[a]=!0),s=parseFloat(s),i[a]&&(s=s/100*255),s<0||s>255)return;r.push(Math.floor(s))}var l=i[1]||i[2]||i[3],u=i[1]&&i[2]&&i[3];if(l&&!u)return;var h=n[4];if(h!==void 0){if(h=parseFloat(h),h<0||h>1)return;r.push(h)}}return r},"rgb2tuple"),hXe=o(function(e){return dXe[e.toLowerCase()]},"colorname2tuple"),fXe=o(function(e){return(wn(e)?e:null)||hXe(e)||lXe(e)||uXe(e)||cXe(e)},"color2tuple"),dXe={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Zme=o(function(e){for(var r=e.map,n=e.keys,i=n.length,a=0;a1&&arguments[1]!==void 0?arguments[1]:t1,n=r,i;i=e.next(),!i.done;)n=n*nge+i.value|0;return n},"hashIterableInts"),Vx=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:t1;return r*nge+e|0},"hashInt"),Ux=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ox;return(r<<5)+r+e|0},"hashIntAlt"),JXe=o(function(e,r){return e*2097152+r},"combineHashes"),xf=o(function(e){return e[0]*2097152+e[1]},"combineHashesArray"),qE=o(function(e,r){return[Vx(e[0],r[0]),Ux(e[1],r[1])]},"hashArrays"),eje=o(function(e,r){var n={value:0,done:!1},i=0,a=e.length,s={next:o(function(){return i=0&&!(e[i]===r&&(e.splice(i,1),n));i--);},"removeFromArray"),aB=o(function(e){e.splice(0,e.length)},"clearArray"),oje=o(function(e,r){for(var n=0;n"u"?"undefined":Yi(Set))!==cje?Set:uje,_6=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||r===void 0||!tB(e)){hi("An element must have a core reference and parameters set");return}var i=r.group;if(i==null&&(r.data&&r.data.source!=null&&r.data.target!=null?i="edges":i="nodes"),i!=="nodes"&&i!=="edges"){hi("An element must be of type `nodes` or `edges`; you specified `"+i+"`");return}this.length=1,this[0]=this;var a=this._private={cy:e,single:!0,data:r.data||{},position:r.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:i,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!r.selected,selectable:r.selectable===void 0?!0:!!r.selectable,locked:!!r.locked,grabbed:!1,grabbable:r.grabbable===void 0?!0:!!r.grabbable,pannable:r.pannable===void 0?i==="edges":!!r.pannable,active:!1,classes:new f1,animation:{current:[],queue:[]},rscratch:{},scratch:r.scratch||{},edges:[],children:[],parent:r.parent&&r.parent.isNode()?r.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(a.position.x==null&&(a.position.x=0),a.position.y==null&&(a.position.y=0),r.renderedPosition){var s=r.renderedPosition,l=e.pan(),u=e.zoom();a.position={x:(s.x-l.x)/u,y:(s.y-l.y)/u}}var h=[];wn(r.classes)?h=r.classes:Zt(r.classes)&&(h=r.classes.split(/\s+/));for(var f=0,d=h.length;fb?1:0},"defaultCmp"),f=o(function(x,b,w,_,T){var E;if(w==null&&(w=0),T==null&&(T=n),w<0)throw new Error("lo must be non-negative");for(_==null&&(_=x.length);w<_;)E=i((w+_)/2),T(b,x[E])<0?_=E:w=E+1;return[].splice.apply(x,[w,w-w].concat(b)),b},"insort"),l=o(function(x,b,w){return w==null&&(w=n),x.push(b),y(x,0,x.length-1,w)},"heappush"),s=o(function(x,b){var w,_;return b==null&&(b=n),w=x.pop(),x.length?(_=x[0],x[0]=w,v(x,0,b)):_=w,_},"heappop"),h=o(function(x,b,w){var _;return w==null&&(w=n),_=x[0],x[0]=b,v(x,0,w),_},"heapreplace"),u=o(function(x,b,w){var _;return w==null&&(w=n),x.length&&w(x[0],b)<0&&(_=[x[0],b],b=_[0],x[0]=_[1],v(x,0,w)),b},"heappushpop"),a=o(function(x,b){var w,_,T,E,L,C;for(b==null&&(b=n),E=function(){C=[];for(var A=0,I=i(x.length/2);0<=I?AI;0<=I?A++:A--)C.push(A);return C}.apply(this).reverse(),L=[],_=0,T=E.length;_D;0<=D?++C:--C)k.push(s(x,w));return k},"nsmallest"),y=o(function(x,b,w,_){var T,E,L;for(_==null&&(_=n),T=x[w];w>b;){if(L=w-1>>1,E=x[L],_(T,E)<0){x[w]=E,w=L;continue}break}return x[w]=T},"_siftdown"),v=o(function(x,b,w){var _,T,E,L,C;for(w==null&&(w=n),T=x.length,C=b,E=x[b],_=2*b+1;_0;){var E=b.pop(),L=v(E),C=E.id();if(p[C]=L,L!==1/0)for(var A=E.neighborhood().intersect(g),I=0;I0)for(F.unshift(P);d[$];){var z=d[$];F.unshift(z.edge),F.unshift(z.node),B=z.node,$=B.id()}return l.spawn(F)},"pathTo")}},"dijkstra")},pje={kruskal:o(function(e){e=e||function(w){return 1};for(var r=this.byGroup(),n=r.nodes,i=r.edges,a=n.length,s=new Array(a),l=n,u=o(function(_){for(var T=0;T0;){if(T(),L++,_===f){for(var C=[],A=a,I=f,D=x[I];C.unshift(A),D!=null&&C.unshift(D),A=v[I],A!=null;)I=A.id(),D=x[I];return{found:!0,distance:d[_],path:this.spawn(C),steps:L}}m[_]=!0;for(var k=w._private.edges,R=0;RD&&(g[I]=D,b[I]=A,w[I]=T),!a){var k=A*f+C;!a&&g[k]>D&&(g[k]=D,b[k]=C,w[k]=T)}}}for(var R=0;R1&&arguments[1]!==void 0?arguments[1]:s,Be=w(ke),Ve=[],Ge=Be;;){if(Ge==null)return r.spawn();var He=b(Ge),xe=He.edge,X=He.pred;if(Ve.unshift(Ge[0]),Ge.same(Fe)&&Ve.length>0)break;xe!=null&&Ve.unshift(xe),Ge=X}return u.spawn(Ve)},"pathTo"),E=0;E=0;f--){var d=h[f],p=d[1],m=d[2];(r[p]===l&&r[m]===u||r[p]===u&&r[m]===l)&&h.splice(f,1)}for(var g=0;gi;){var a=Math.floor(Math.random()*r.length);r=Tje(a,e,r),n--}return r},"contractUntil"),kje={kargerStein:o(function(){var e=this,r=this.byGroup(),n=r.nodes,i=r.edges;i.unmergeBy(function(F){return F.isLoop()});var a=n.length,s=i.length,l=Math.ceil(Math.pow(Math.log(a)/Math.LN2,2)),u=Math.floor(a/wje);if(a<2){hi("At least 2 nodes are required for Karger-Stein algorithm");return}for(var h=[],f=0;f1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=-1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=0,a=0,s=r;s1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;i?e=e.slice(r,n):(n0&&e.splice(0,r));for(var l=0,u=e.length-1;u>=0;u--){var h=e[u];s?isFinite(h)||(e[u]=-1/0,l++):e.splice(u,1)}a&&e.sort(function(p,m){return p-m});var f=e.length,d=Math.floor(f/2);return f%2!==0?e[d+1+l]:(e[d-1+l]+e[d+l])/2},"median"),Lje=o(function(e){return Math.PI*e/180},"deg2rad"),XE=o(function(e,r){return Math.atan2(r,e)-Math.PI/2},"getAngleFromDisp"),sB=Math.log2||function(t){return Math.log(t)/Math.log(2)},hge=o(function(e){return e>0?1:e<0?-1:0},"signum"),G0=o(function(e,r){return Math.sqrt(M0(e,r))},"dist"),M0=o(function(e,r){var n=r.x-e.x,i=r.y-e.y;return n*n+i*i},"sqdist"),Dje=o(function(e){for(var r=e.length,n=0,i=0;i=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(e.w!=null&&e.h!=null&&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}}},"makeBoundingBox"),Rje=o(function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},"copyBoundingBox"),Mje=o(function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},"clearBoundingBox"),Ije=o(function(e,r,n){return{x1:e.x1+r,x2:e.x2+r,y1:e.y1+n,y2:e.y2+n,w:e.w,h:e.h}},"shiftBoundingBox"),fge=o(function(e,r){e.x1=Math.min(e.x1,r.x1),e.x2=Math.max(e.x2,r.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r.y1),e.y2=Math.max(e.y2,r.y2),e.h=e.y2-e.y1},"updateBoundingBox"),Oje=o(function(e,r,n){e.x1=Math.min(e.x1,r),e.x2=Math.max(e.x2,r),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},"expandBoundingBoxByPoint"),a6=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=r,e.x2+=r,e.y1-=r,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBox"),s6=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],n,i,a,s;if(r.length===1)n=i=a=s=r[0];else if(r.length===2)n=a=r[0],s=i=r[1];else if(r.length===4){var l=Ul(r,4);n=l[0],i=l[1],a=l[2],s=l[3]}return e.x1-=s,e.x2+=i,e.y1-=n,e.y2+=a,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBoxSides"),Gpe=o(function(e,r){e.x1=r.x1,e.y1=r.y1,e.x2=r.x2,e.y2=r.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},"assignBoundingBox"),oB=o(function(e,r){return!(e.x1>r.x2||r.x1>e.x2||e.x2r.y2||r.y1>e.y2)},"boundingBoxesIntersect"),c1=o(function(e,r,n){return e.x1<=r&&r<=e.x2&&e.y1<=n&&n<=e.y2},"inBoundingBox"),Pje=o(function(e,r){return c1(e,r.x,r.y)},"pointInBoundingBox"),dge=o(function(e,r){return c1(e,r.x1,r.y1)&&c1(e,r.x2,r.y2)},"boundingBoxInBoundingBox"),pge=o(function(e,r,n,i,a,s,l){var u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",h=u==="auto"?$0(a,s):u,f=a/2,d=s/2;h=Math.min(h,f,d);var p=h!==f,m=h!==d,g;if(p){var y=n-f+h-l,v=i-d-l,x=n+f-h+l,b=v;if(g=Tf(e,r,n,i,y,v,x,b,!1),g.length>0)return g}if(m){var w=n+f+l,_=i-d+h-l,T=w,E=i+d-h+l;if(g=Tf(e,r,n,i,w,_,T,E,!1),g.length>0)return g}if(p){var L=n-f+h-l,C=i+d+l,A=n+f-h+l,I=C;if(g=Tf(e,r,n,i,L,C,A,I,!1),g.length>0)return g}if(m){var D=n-f-l,k=i-d+h-l,R=D,S=i+d-h+l;if(g=Tf(e,r,n,i,D,k,R,S,!1),g.length>0)return g}var O;{var N=n-f+h,P=i-d+h;if(O=Px(e,r,n,i,N,P,h+l),O.length>0&&O[0]<=N&&O[1]<=P)return[O[0],O[1]]}{var F=n+f-h,B=i-d+h;if(O=Px(e,r,n,i,F,B,h+l),O.length>0&&O[0]>=F&&O[1]<=B)return[O[0],O[1]]}{var $=n+f-h,z=i+d-h;if(O=Px(e,r,n,i,$,z,h+l),O.length>0&&O[0]>=$&&O[1]>=z)return[O[0],O[1]]}{var W=n-f+h,j=i+d-h;if(O=Px(e,r,n,i,W,j,h+l),O.length>0&&O[0]<=W&&O[1]>=j)return[O[0],O[1]]}return[]},"roundRectangleIntersectLine"),Bje=o(function(e,r,n,i,a,s,l){var u=l,h=Math.min(n,a),f=Math.max(n,a),d=Math.min(i,s),p=Math.max(i,s);return h-u<=e&&e<=f+u&&d-u<=r&&r<=p+u},"inLineVicinity"),Fje=o(function(e,r,n,i,a,s,l,u,h){var f={x1:Math.min(n,l,a)-h,x2:Math.max(n,l,a)+h,y1:Math.min(i,u,s)-h,y2:Math.max(i,u,s)+h};return!(ef.x2||rf.y2)},"inBezierVicinity"),zje=o(function(e,r,n,i){n-=i;var a=r*r-4*e*n;if(a<0)return[];var s=Math.sqrt(a),l=2*e,u=(-r+s)/l,h=(-r-s)/l;return[u,h]},"solveQuadratic"),Gje=o(function(e,r,n,i,a){var s=1e-5;e===0&&(e=s),r/=e,n/=e,i/=e;var l,u,h,f,d,p,m,g;if(u=(3*n-r*r)/9,h=-(27*i)+r*(9*n-2*(r*r)),h/=54,l=u*u*u+h*h,a[1]=0,m=r/3,l>0){d=h+Math.sqrt(l),d=d<0?-Math.pow(-d,1/3):Math.pow(d,1/3),p=h-Math.sqrt(l),p=p<0?-Math.pow(-p,1/3):Math.pow(p,1/3),a[0]=-m+d+p,m+=(d+p)/2,a[4]=a[2]=-m,m=Math.sqrt(3)*(-p+d)/2,a[3]=m,a[5]=-m;return}if(a[5]=a[3]=0,l===0){g=h<0?-Math.pow(-h,1/3):Math.pow(h,1/3),a[0]=-m+2*g,a[4]=a[2]=-(g+m);return}u=-u,f=u*u*u,f=Math.acos(h/Math.sqrt(f)),g=2*Math.sqrt(u),a[0]=-m+g*Math.cos(f/3),a[2]=-m+g*Math.cos((f+2*Math.PI)/3),a[4]=-m+g*Math.cos((f+4*Math.PI)/3)},"solveCubic"),$je=o(function(e,r,n,i,a,s,l,u){var h=1*n*n-4*n*a+2*n*l+4*a*a-4*a*l+l*l+i*i-4*i*s+2*i*u+4*s*s-4*s*u+u*u,f=1*9*n*a-3*n*n-3*n*l-6*a*a+3*a*l+9*i*s-3*i*i-3*i*u-6*s*s+3*s*u,d=1*3*n*n-6*n*a+n*l-n*e+2*a*a+2*a*e-l*e+3*i*i-6*i*s+i*u-i*r+2*s*s+2*s*r-u*r,p=1*n*a-n*n+n*e-a*e+i*s-i*i+i*r-s*r,m=[];Gje(h,f,d,p,m);for(var g=1e-7,y=[],v=0;v<6;v+=2)Math.abs(m[v+1])=0&&m[v]<=1&&y.push(m[v]);y.push(1),y.push(0);for(var x=-1,b,w,_,T=0;T=0?_h?(e-a)*(e-a)+(r-s)*(r-s):f-p},"sqdistToFiniteLine"),Gs=o(function(e,r,n){for(var i,a,s,l,u,h=0,f=0;f=e&&e>=s||i<=e&&e<=s)u=(e-i)/(s-i)*(l-a)+a,u>r&&h++;else continue;return h%2!==0},"pointInsidePolygonPoints"),ju=o(function(e,r,n,i,a,s,l,u,h){var f=new Array(n.length),d;u[0]!=null?(d=Math.atan(u[1]/u[0]),u[0]<0?d=d+Math.PI/2:d=-d-Math.PI/2):d=u;for(var p=Math.cos(-d),m=Math.sin(-d),g=0;g0){var v=v6(f,-h);y=y6(v)}else y=f;return Gs(e,r,y)},"pointInsidePolygon"),Uje=o(function(e,r,n,i,a,s,l,u){for(var h=new Array(n.length*2),f=0;f=0&&v<=1&&b.push(v),x>=0&&x<=1&&b.push(x),b.length===0)return[];var w=b[0]*u[0]+e,_=b[0]*u[1]+r;if(b.length>1){if(b[0]==b[1])return[w,_];var T=b[1]*u[0]+e,E=b[1]*u[1]+r;return[w,_,T,E]}else return[w,_]},"intersectLineCircle"),AP=o(function(e,r,n){return r<=e&&e<=n||n<=e&&e<=r?e:e<=r&&r<=n||n<=r&&r<=e?r:n},"midOfThree"),Tf=o(function(e,r,n,i,a,s,l,u,h){var f=e-a,d=n-e,p=l-a,m=r-s,g=i-r,y=u-s,v=p*m-y*f,x=d*m-g*f,b=y*d-p*g;if(b!==0){var w=v/b,_=x/b,T=.001,E=0-T,L=1+T;return E<=w&&w<=L&&E<=_&&_<=L?[e+w*d,r+w*g]:h?[e+w*d,r+w*g]:[]}else return v===0||x===0?AP(e,n,l)===l?[l,u]:AP(e,n,a)===a?[a,s]:AP(a,l,n)===n?[n,i]:[]:[]},"finiteLinesIntersect"),Yx=o(function(e,r,n,i,a,s,l,u){var h=[],f,d=new Array(n.length),p=!0;s==null&&(p=!1);var m;if(p){for(var g=0;g0){var y=v6(d,-u);m=y6(y)}else m=d}else m=n;for(var v,x,b,w,_=0;_2){for(var g=[f[0],f[1]],y=Math.pow(g[0]-e,2)+Math.pow(g[1]-r,2),v=1;vf&&(f=_)},"set"),get:o(function(w){return h[w]},"get")},p=0;p0?N=O.edgesTo(S)[0]:N=S.edgesTo(O)[0];var P=i(N);S=S.id(),C[S]>C[k]+P&&(C[S]=C[k]+P,A.nodes.indexOf(S)<0?A.push(S):A.updateItem(S),L[S]=0,E[S]=[]),C[S]==C[k]+P&&(L[S]=L[S]+L[k],E[S].push(k))}else for(var F=0;F0;){for(var W=T.pop(),j=0;j0&&l.push(n[u]);l.length!==0&&a.push(i.collection(l))}return a},"assign"),aKe=o(function(e,r){for(var n=0;n5&&arguments[5]!==void 0?arguments[5]:lKe,l=i,u,h,f=0;f=2?Dx(e,r,n,0,Wpe,cKe):Dx(e,r,n,0,Hpe)},"euclidean"),squaredEuclidean:o(function(e,r,n){return Dx(e,r,n,0,Wpe)},"squaredEuclidean"),manhattan:o(function(e,r,n){return Dx(e,r,n,0,Hpe)},"manhattan"),max:o(function(e,r,n){return Dx(e,r,n,-1/0,uKe)},"max")};u1["squared-euclidean"]=u1.squaredEuclidean;u1.squaredeuclidean=u1.squaredEuclidean;o(D6,"clusteringDistance");hKe=wa({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),cB=o(function(e){return hKe(e)},"setOptions"),x6=o(function(e,r,n,i,a){var s=a!=="kMedoids",l=s?function(d){return n[d]}:function(d){return i[d](n)},u=o(function(p){return i[p](r)},"getQ"),h=n,f=r;return D6(e,i.length,l,u,h,f)},"getDist"),_P=o(function(e,r,n){for(var i=n.length,a=new Array(i),s=new Array(i),l=new Array(r),u=null,h=0;hn)return!1}return!0},"haveMatricesConverged"),pKe=o(function(e,r,n){for(var i=0;il&&(l=r[h][f],u=f);a[u].push(e[h])}for(var d=0;d=a.threshold||a.mode==="dendrogram"&&e.length===1)return!1;var g=r[s],y=r[i[s]],v;a.mode==="dendrogram"?v={left:g,right:y,key:g.key}:v={value:g.value.concat(y.value),key:g.key},e[g.index]=v,e.splice(y.index,1),r[g.key]=v;for(var x=0;xn[y.key][b.key]&&(u=n[y.key][b.key])):a.linkage==="max"?(u=n[g.key][b.key],n[g.key][b.key]0&&i.push(a);return i},"findExemplars"),Qpe=o(function(e,r,n){for(var i=[],a=0;al&&(s=h,l=r[a*e+h])}s>0&&i.push(s)}for(var f=0;fh&&(u=f,h=d)}n[a]=s[u]}return i=Qpe(e,r,n),i},"assign"),Zpe=o(function(e){for(var r=this.cy(),n=this.nodes(),i=_Ke(e),a={},s=0;s=D?(k=D,D=S,R=O):S>k&&(k=S);for(var N=0;N0?1:0;L[A%i.minIterations*l+W]=j,z+=j}if(z>0&&(A>=i.minIterations-1||A==i.maxIterations-1)){for(var K=0,ie=0;ie1||E>1)&&(l=!0),d[w]=[],b.outgoers().forEach(function(C){C.isEdge()&&d[w].push(C.id())})}else p[w]=[void 0,b.target().id()]}):s.forEach(function(b){var w=b.id();if(b.isNode()){var _=b.degree(!0);_%2&&(u?h?l=!0:h=w:u=w),d[w]=[],b.connectedEdges().forEach(function(T){return d[w].push(T.id())})}else p[w]=[b.source().id(),b.target().id()]});var m={found:!1,trail:void 0};if(l)return m;if(h&&u)if(a){if(f&&h!=f)return m;f=h}else{if(f&&h!=f&&u!=f)return m;f||(f=h)}else f||(f=s[0].id());var g=o(function(w){for(var _=w,T=[w],E,L,C;d[_].length;)E=d[_].shift(),L=p[E][0],C=p[E][1],_!=C?(d[C]=d[C].filter(function(A){return A!=E}),_=C):!a&&_!=L&&(d[L]=d[L].filter(function(A){return A!=E}),_=L),T.unshift(E),T.unshift(_);return T},"walk"),y=[],v=[];for(v=g(f);v.length!=1;)d[v[0]].length==0?(y.unshift(s.getElementById(v.shift())),y.unshift(s.getElementById(v.shift()))):v=g(v.shift()).concat(v);y.unshift(s.getElementById(v.shift()));for(var x in d)if(d[x].length)return m;return m.found=!0,m.trail=this.spawn(y,!0),m},"hierholzer")},QE=o(function(){var e=this,r={},n=0,i=0,a=[],s=[],l={},u=o(function(p,m){for(var g=s.length-1,y=[],v=e.spawn();s[g].x!=p||s[g].y!=m;)y.push(s.pop().edge),g--;y.push(s.pop().edge),y.forEach(function(x){var b=x.connectedNodes().intersection(e);v.merge(x),b.forEach(function(w){var _=w.id(),T=w.connectedEdges().intersection(e);v.merge(w),r[_].cutVertex?v.merge(T.filter(function(E){return E.isLoop()})):v.merge(T)})}),a.push(v)},"buildComponent"),h=o(function d(p,m,g){p===g&&(i+=1),r[m]={id:n,low:n++,cutVertex:!1};var y=e.getElementById(m).connectedEdges().intersection(e);if(y.size()===0)a.push(e.spawn(e.getElementById(m)));else{var v,x,b,w;y.forEach(function(_){v=_.source().id(),x=_.target().id(),b=v===m?x:v,b!==g&&(w=_.id(),l[w]||(l[w]=!0,s.push({x:m,y:b,edge:_})),b in r?r[m].low=Math.min(r[m].low,r[b].id):(d(p,b,m),r[m].low=Math.min(r[m].low,r[b].low),r[m].id<=r[b].low&&(r[m].cutVertex=!0,u(m,b))))})}},"biconnectedSearch");e.forEach(function(d){if(d.isNode()){var p=d.id();p in r||(i=0,h(p,p),r[p].cutVertex=i>1)}});var f=Object.keys(r).filter(function(d){return r[d].cutVertex}).map(function(d){return e.getElementById(d)});return{cut:e.spawn(f),components:a}},"hopcroftTarjanBiconnected"),PKe={hopcroftTarjanBiconnected:QE,htbc:QE,htb:QE,hopcroftTarjanBiconnectedComponents:QE},ZE=o(function(){var e=this,r={},n=0,i=[],a=[],s=e.spawn(e),l=o(function u(h){a.push(h),r[h]={index:n,low:n++,explored:!1};var f=e.getElementById(h).connectedEdges().intersection(e);if(f.forEach(function(y){var v=y.target().id();v!==h&&(v in r||u(v),r[v].explored||(r[h].low=Math.min(r[h].low,r[v].low)))}),r[h].index===r[h].low){for(var d=e.spawn();;){var p=a.pop();if(d.merge(e.getElementById(p)),r[p].low=r[h].index,r[p].explored=!0,p===h)break}var m=d.edgesWith(d),g=d.merge(m);i.push(g),s=s.difference(g)}},"stronglyConnectedSearch");return e.forEach(function(u){if(u.isNode()){var h=u.id();h in r||l(h)}}),{cut:s,components:i}},"tarjanStronglyConnected"),BKe={tarjanStronglyConnected:ZE,tsc:ZE,tscc:ZE,tarjanStronglyConnectedComponents:ZE},wge={};[Hx,dje,pje,gje,vje,bje,kje,Xje,a1,s1,zP,oKe,bKe,CKe,MKe,OKe,PKe,BKe].forEach(function(t){ir(wge,t)});Tge=0,kge=1,Ege=2,Ku=o(function t(e){if(!(this instanceof t))return new t(e);this.id="Thenable/1.0.7",this.state=Tge,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof e=="function"&&e.call(this,this.fulfill.bind(this),this.reject.bind(this))},"api");Ku.prototype={fulfill:o(function(e){return Jpe(this,kge,"fulfillValue",e)},"fulfill"),reject:o(function(e){return Jpe(this,Ege,"rejectReason",e)},"reject"),then:o(function(e,r){var n=this,i=new Ku;return n.onFulfilled.push(tme(e,i,"fulfill")),n.onRejected.push(tme(r,i,"reject")),Sge(n),i.proxy},"then")};Jpe=o(function(e,r,n,i){return e.state===Tge&&(e.state=r,e[n]=i,Sge(e)),e},"deliver"),Sge=o(function(e){e.state===kge?eme(e,"onFulfilled",e.fulfillValue):e.state===Ege&&eme(e,"onRejected",e.rejectReason)},"execute"),eme=o(function(e,r,n){if(e[r].length!==0){var i=e[r];e[r]=[];var a=o(function(){for(var l=0;l0},"animatedImpl")},"animated"),clearQueue:o(function(){return o(function(){var r=this,n=r.length!==void 0,i=n?r:[r],a=this._private.cy||this;if(!a.styleEnabled())return this;for(var s=0;s0&&this.spawn(i).updateStyle().emit("class"),r},"classes"),addClass:o(function(e){return this.toggleClass(e,!0)},"addClass"),hasClass:o(function(e){var r=this[0];return r!=null&&r._private.classes.has(e)},"hasClass"),toggleClass:o(function(e,r){wn(e)||(e=e.match(/\S+/g)||[]);for(var n=this,i=r===void 0,a=[],s=0,l=n.length;s0&&this.spawn(a).updateStyle().emit("class"),n},"toggleClass"),removeClass:o(function(e){return this.toggleClass(e,!1)},"removeClass"),flashClass:o(function(e,r){var n=this;if(r==null)r=250;else if(r===0)return n;return n.addClass(e),setTimeout(function(){n.removeClass(e)},r),n},"flashClass")};o6.className=o6.classNames=o6.classes;$r={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Wi,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};$r.variable="(?:[\\w-.]|(?:\\\\"+$r.metaChar+"))+";$r.className="(?:[\\w-]|(?:\\\\"+$r.metaChar+"))+";$r.value=$r.string+"|"+$r.number;$r.id=$r.variable;(function(){var t,e,r;for(t=$r.comparatorOp.split("|"),r=0;r=0)&&e!=="="&&($r.comparatorOp+="|\\!"+e)})();pn=o(function(){return{checks:[]}},"newQuery"),Pt={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},$P=[{selector:":selected",matches:o(function(e){return e.selected()},"matches")},{selector:":unselected",matches:o(function(e){return!e.selected()},"matches")},{selector:":selectable",matches:o(function(e){return e.selectable()},"matches")},{selector:":unselectable",matches:o(function(e){return!e.selectable()},"matches")},{selector:":locked",matches:o(function(e){return e.locked()},"matches")},{selector:":unlocked",matches:o(function(e){return!e.locked()},"matches")},{selector:":visible",matches:o(function(e){return e.visible()},"matches")},{selector:":hidden",matches:o(function(e){return!e.visible()},"matches")},{selector:":transparent",matches:o(function(e){return e.transparent()},"matches")},{selector:":grabbed",matches:o(function(e){return e.grabbed()},"matches")},{selector:":free",matches:o(function(e){return!e.grabbed()},"matches")},{selector:":removed",matches:o(function(e){return e.removed()},"matches")},{selector:":inside",matches:o(function(e){return!e.removed()},"matches")},{selector:":grabbable",matches:o(function(e){return e.grabbable()},"matches")},{selector:":ungrabbable",matches:o(function(e){return!e.grabbable()},"matches")},{selector:":animated",matches:o(function(e){return e.animated()},"matches")},{selector:":unanimated",matches:o(function(e){return!e.animated()},"matches")},{selector:":parent",matches:o(function(e){return e.isParent()},"matches")},{selector:":childless",matches:o(function(e){return e.isChildless()},"matches")},{selector:":child",matches:o(function(e){return e.isChild()},"matches")},{selector:":orphan",matches:o(function(e){return e.isOrphan()},"matches")},{selector:":nonorphan",matches:o(function(e){return e.isChild()},"matches")},{selector:":compound",matches:o(function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()},"matches")},{selector:":loop",matches:o(function(e){return e.isLoop()},"matches")},{selector:":simple",matches:o(function(e){return e.isSimple()},"matches")},{selector:":active",matches:o(function(e){return e.active()},"matches")},{selector:":inactive",matches:o(function(e){return!e.active()},"matches")},{selector:":backgrounding",matches:o(function(e){return e.backgrounding()},"matches")},{selector:":nonbackgrounding",matches:o(function(e){return!e.backgrounding()},"matches")}].sort(function(t,e){return oXe(t.selector,e.selector)}),KZe=function(){for(var t={},e,r=0;r<$P.length;r++)e=$P[r],t[e.selector]=e.matches;return t}(),QZe=o(function(e,r){return KZe[e](r)},"stateSelectorMatches"),ZZe="("+$P.map(function(t){return t.selector}).join("|")+")",Kg=o(function(e){return e.replace(new RegExp("\\\\("+$r.metaChar+")","g"),function(r,n){return n})},"cleanMetaChars"),bf=o(function(e,r,n){e[e.length-1]=n},"replaceLastQuery"),VP=[{name:"group",query:!0,regex:"("+$r.group+")",populate:o(function(e,r,n){var i=Ul(n,1),a=i[0];r.checks.push({type:Pt.GROUP,value:a==="*"?a:a+"s"})},"populate")},{name:"state",query:!0,regex:ZZe,populate:o(function(e,r,n){var i=Ul(n,1),a=i[0];r.checks.push({type:Pt.STATE,value:a})},"populate")},{name:"id",query:!0,regex:"\\#("+$r.id+")",populate:o(function(e,r,n){var i=Ul(n,1),a=i[0];r.checks.push({type:Pt.ID,value:Kg(a)})},"populate")},{name:"className",query:!0,regex:"\\.("+$r.className+")",populate:o(function(e,r,n){var i=Ul(n,1),a=i[0];r.checks.push({type:Pt.CLASS,value:Kg(a)})},"populate")},{name:"dataExists",query:!0,regex:"\\[\\s*("+$r.variable+")\\s*\\]",populate:o(function(e,r,n){var i=Ul(n,1),a=i[0];r.checks.push({type:Pt.DATA_EXIST,field:Kg(a)})},"populate")},{name:"dataCompare",query:!0,regex:"\\[\\s*("+$r.variable+")\\s*("+$r.comparatorOp+")\\s*("+$r.value+")\\s*\\]",populate:o(function(e,r,n){var i=Ul(n,3),a=i[0],s=i[1],l=i[2],u=new RegExp("^"+$r.string+"$").exec(l)!=null;u?l=l.substring(1,l.length-1):l=parseFloat(l),r.checks.push({type:Pt.DATA_COMPARE,field:Kg(a),operator:s,value:l})},"populate")},{name:"dataBool",query:!0,regex:"\\[\\s*("+$r.boolOp+")\\s*("+$r.variable+")\\s*\\]",populate:o(function(e,r,n){var i=Ul(n,2),a=i[0],s=i[1];r.checks.push({type:Pt.DATA_BOOL,field:Kg(s),operator:a})},"populate")},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+$r.meta+")\\s*("+$r.comparatorOp+")\\s*("+$r.number+")\\s*\\]\\]",populate:o(function(e,r,n){var i=Ul(n,3),a=i[0],s=i[1],l=i[2];r.checks.push({type:Pt.META_COMPARE,field:Kg(a),operator:s,value:parseFloat(l)})},"populate")},{name:"nextQuery",separator:!0,regex:$r.separator,populate:o(function(e,r){var n=e.currentSubject,i=e.edgeCount,a=e.compoundCount,s=e[e.length-1];n!=null&&(s.subject=n,e.currentSubject=null),s.edgeCount=i,s.compoundCount=a,e.edgeCount=0,e.compoundCount=0;var l=e[e.length++]=pn();return l},"populate")},{name:"directedEdge",separator:!0,regex:$r.directedEdge,populate:o(function(e,r){if(e.currentSubject==null){var n=pn(),i=r,a=pn();return n.checks.push({type:Pt.DIRECTED_EDGE,source:i,target:a}),bf(e,r,n),e.edgeCount++,a}else{var s=pn(),l=r,u=pn();return s.checks.push({type:Pt.NODE_SOURCE,source:l,target:u}),bf(e,r,s),e.edgeCount++,u}},"populate")},{name:"undirectedEdge",separator:!0,regex:$r.undirectedEdge,populate:o(function(e,r){if(e.currentSubject==null){var n=pn(),i=r,a=pn();return n.checks.push({type:Pt.UNDIRECTED_EDGE,nodes:[i,a]}),bf(e,r,n),e.edgeCount++,a}else{var s=pn(),l=r,u=pn();return s.checks.push({type:Pt.NODE_NEIGHBOR,node:l,neighbor:u}),bf(e,r,s),u}},"populate")},{name:"child",separator:!0,regex:$r.child,populate:o(function(e,r){if(e.currentSubject==null){var n=pn(),i=pn(),a=e[e.length-1];return n.checks.push({type:Pt.CHILD,parent:a,child:i}),bf(e,r,n),e.compoundCount++,i}else if(e.currentSubject===r){var s=pn(),l=e[e.length-1],u=pn(),h=pn(),f=pn(),d=pn();return s.checks.push({type:Pt.COMPOUND_SPLIT,left:l,right:u,subject:h}),h.checks=r.checks,r.checks=[{type:Pt.TRUE}],d.checks.push({type:Pt.TRUE}),u.checks.push({type:Pt.PARENT,parent:d,child:f}),bf(e,l,s),e.currentSubject=h,e.compoundCount++,f}else{var p=pn(),m=pn(),g=[{type:Pt.PARENT,parent:p,child:m}];return p.checks=r.checks,r.checks=g,e.compoundCount++,m}},"populate")},{name:"descendant",separator:!0,regex:$r.descendant,populate:o(function(e,r){if(e.currentSubject==null){var n=pn(),i=pn(),a=e[e.length-1];return n.checks.push({type:Pt.DESCENDANT,ancestor:a,descendant:i}),bf(e,r,n),e.compoundCount++,i}else if(e.currentSubject===r){var s=pn(),l=e[e.length-1],u=pn(),h=pn(),f=pn(),d=pn();return s.checks.push({type:Pt.COMPOUND_SPLIT,left:l,right:u,subject:h}),h.checks=r.checks,r.checks=[{type:Pt.TRUE}],d.checks.push({type:Pt.TRUE}),u.checks.push({type:Pt.ANCESTOR,ancestor:d,descendant:f}),bf(e,l,s),e.currentSubject=h,e.compoundCount++,f}else{var p=pn(),m=pn(),g=[{type:Pt.ANCESTOR,ancestor:p,descendant:m}];return p.checks=r.checks,r.checks=g,e.compoundCount++,m}},"populate")},{name:"subject",modifier:!0,regex:$r.subject,populate:o(function(e,r){if(e.currentSubject!=null&&e.currentSubject!==r)return on("Redefinition of subject in selector `"+e.toString()+"`"),!1;e.currentSubject=r;var n=e[e.length-1],i=n.checks[0],a=i==null?null:i.type;a===Pt.DIRECTED_EDGE?i.type=Pt.NODE_TARGET:a===Pt.UNDIRECTED_EDGE&&(i.type=Pt.NODE_NEIGHBOR,i.node=i.nodes[1],i.neighbor=i.nodes[0],i.nodes=null)},"populate")}];VP.forEach(function(t){return t.regexObj=new RegExp("^"+t.regex)});JZe=o(function(e){for(var r,n,i,a=0;a0&&f.edgeCount>0)return on("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(f.edgeCount>1)return on("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;f.edgeCount===1&&on("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},"parse"),rJe=o(function(){if(this.toStringCache!=null)return this.toStringCache;for(var e=o(function(f){return f??""},"clean"),r=o(function(f){return Zt(f)?'"'+f+'"':e(f)},"cleanVal"),n=o(function(f){return" "+f+" "},"space"),i=o(function(f,d){var p=f.type,m=f.value;switch(p){case Pt.GROUP:{var g=e(m);return g.substring(0,g.length-1)}case Pt.DATA_COMPARE:{var y=f.field,v=f.operator;return"["+y+n(e(v))+r(m)+"]"}case Pt.DATA_BOOL:{var x=f.operator,b=f.field;return"["+e(x)+b+"]"}case Pt.DATA_EXIST:{var w=f.field;return"["+w+"]"}case Pt.META_COMPARE:{var _=f.operator,T=f.field;return"[["+T+n(e(_))+r(m)+"]]"}case Pt.STATE:return m;case Pt.ID:return"#"+m;case Pt.CLASS:return"."+m;case Pt.PARENT:case Pt.CHILD:return a(f.parent,d)+n(">")+a(f.child,d);case Pt.ANCESTOR:case Pt.DESCENDANT:return a(f.ancestor,d)+" "+a(f.descendant,d);case Pt.COMPOUND_SPLIT:{var E=a(f.left,d),L=a(f.subject,d),C=a(f.right,d);return E+(E.length>0?" ":"")+L+C}case Pt.TRUE:return""}},"checkToString"),a=o(function(f,d){return f.checks.reduce(function(p,m,g){return p+(d===f&&g===0?"$":"")+i(m,d)},"")},"queryToString"),s="",l=0;l1&&l=0&&(r=r.replace("!",""),d=!0),r.indexOf("@")>=0&&(r=r.replace("@",""),f=!0),(a||l||f)&&(u=!a&&!s?"":""+e,h=""+n),f&&(e=u=u.toLowerCase(),n=h=h.toLowerCase()),r){case"*=":i=u.indexOf(h)>=0;break;case"$=":i=u.indexOf(h,u.length-h.length)>=0;break;case"^=":i=u.indexOf(h)===0;break;case"=":i=e===n;break;case">":p=!0,i=e>n;break;case">=":p=!0,i=e>=n;break;case"<":p=!0,i=e1&&arguments[1]!==void 0?arguments[1]:!0;return pB(this,t,e,Ige)};o(Oge,"addParent");h1.forEachUp=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return pB(this,t,e,Oge)};o(uJe,"addParentAndChildren");h1.forEachUpAndDown=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return pB(this,t,e,uJe)};h1.ancestors=h1.parents;Xx=Pge={data:sn.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:sn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:sn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:sn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:sn.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:sn.removeData({field:"rscratch",triggerEvent:!1}),id:o(function(){var e=this[0];if(e)return e._private.data.id},"id")};Xx.attr=Xx.data;Xx.removeAttr=Xx.removeData;hJe=Pge,I6={};o(DP,"defineDegreeFunction");ir(I6,{degree:DP(function(t,e){return e.source().same(e.target())?2:1}),indegree:DP(function(t,e){return e.target().same(t)?1:0}),outdegree:DP(function(t,e){return e.source().same(t)?1:0})});o(Qg,"defineDegreeBoundsFunction");ir(I6,{minDegree:Qg("degree",function(t,e){return te}),minIndegree:Qg("indegree",function(t,e){return te}),minOutdegree:Qg("outdegree",function(t,e){return te})});ir(I6,{totalDegree:o(function(e){for(var r=0,n=this.nodes(),i=0;i0,p=d;d&&(f=f[0]);var m=p?f.position():{x:0,y:0};r!==void 0?h.position(e,r+m[e]):a!==void 0&&h.position({x:a.x+m.x,y:a.y+m.y})}else{var g=n.position(),y=l?n.parent():null,v=y&&y.length>0,x=v;v&&(y=y[0]);var b=x?y.position():{x:0,y:0};return a={x:g.x-b.x,y:g.y-b.y},e===void 0?a:a[e]}else if(!s)return;return this},"relativePosition")};Yl.modelPosition=Yl.point=Yl.position;Yl.modelPositions=Yl.points=Yl.positions;Yl.renderedPoint=Yl.renderedPosition;Yl.relativePoint=Yl.relativePosition;fJe=Bge;o1=Df={};Df.renderedBoundingBox=function(t){var e=this.boundingBox(t),r=this.cy(),n=r.zoom(),i=r.pan(),a=e.x1*n+i.x,s=e.x2*n+i.x,l=e.y1*n+i.y,u=e.y2*n+i.y;return{x1:a,x2:s,y1:l,y2:u,w:s-a,h:u-l}};Df.dirtyCompoundBoundsCache=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();return!e.styleEnabled()||!e.hasCompoundNodes()?this:(this.forEachUp(function(r){if(r.isParent()){var n=r._private;n.compoundBoundsClean=!1,n.bbCache=null,t||r.emitAndNotify("bounds")}}),this)};Df.updateCompoundBounds=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;if(!t&&e.batching())return this;function r(s){if(!s.isParent())return;var l=s._private,u=s.children(),h=s.pstyle("compound-sizing-wrt-labels").value==="include",f={width:{val:s.pstyle("min-width").pfValue,left:s.pstyle("min-width-bias-left"),right:s.pstyle("min-width-bias-right")},height:{val:s.pstyle("min-height").pfValue,top:s.pstyle("min-height-bias-top"),bottom:s.pstyle("min-height-bias-bottom")}},d=u.boundingBox({includeLabels:h,includeOverlays:!1,useCache:!1}),p=l.position;(d.w===0||d.h===0)&&(d={w:s.pstyle("width").pfValue,h:s.pstyle("height").pfValue},d.x1=p.x-d.w/2,d.x2=p.x+d.w/2,d.y1=p.y-d.h/2,d.y2=p.y+d.h/2);function m(A,I,D){var k=0,R=0,S=I+D;return A>0&&S>0&&(k=I/S*A,R=D/S*A),{biasDiff:k,biasComplementDiff:R}}o(m,"computeBiasValues");function g(A,I,D,k){if(D.units==="%")switch(k){case"width":return A>0?D.pfValue*A:0;case"height":return I>0?D.pfValue*I:0;case"average":return A>0&&I>0?D.pfValue*(A+I)/2:0;case"min":return A>0&&I>0?A>I?D.pfValue*I:D.pfValue*A:0;case"max":return A>0&&I>0?A>I?D.pfValue*A:D.pfValue*I:0;default:return 0}else return D.units==="px"?D.pfValue:0}o(g,"computePaddingValues");var y=f.width.left.value;f.width.left.units==="px"&&f.width.val>0&&(y=y*100/f.width.val);var v=f.width.right.value;f.width.right.units==="px"&&f.width.val>0&&(v=v*100/f.width.val);var x=f.height.top.value;f.height.top.units==="px"&&f.height.val>0&&(x=x*100/f.height.val);var b=f.height.bottom.value;f.height.bottom.units==="px"&&f.height.val>0&&(b=b*100/f.height.val);var w=m(f.width.val-d.w,y,v),_=w.biasDiff,T=w.biasComplementDiff,E=m(f.height.val-d.h,x,b),L=E.biasDiff,C=E.biasComplementDiff;l.autoPadding=g(d.w,d.h,s.pstyle("padding"),s.pstyle("padding-relative-to").value),l.autoWidth=Math.max(d.w,f.width.val),p.x=(-_+d.x1+d.x2+T)/2,l.autoHeight=Math.max(d.h,f.height.val),p.y=(-L+d.y1+d.y2+C)/2}o(r,"update");for(var n=0;ne.x2?i:e.x2,e.y1=ne.y2?a:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},"updateBounds"),I0=o(function(e,r){return r==null?e:Hl(e,r.x1,r.y1,r.x2,r.y2)},"updateBoundsFromBox"),Nx=o(function(e,r,n){return Wl(e,r,n)},"prefixedProperty"),JE=o(function(e,r,n){if(!r.cy().headless()){var i=r._private,a=i.rstyle,s=a.arrowWidth/2,l=r.pstyle(n+"-arrow-shape").value,u,h;if(l!=="none"){n==="source"?(u=a.srcX,h=a.srcY):n==="target"?(u=a.tgtX,h=a.tgtY):(u=a.midX,h=a.midY);var f=i.arrowBounds=i.arrowBounds||{},d=f[n]=f[n]||{};d.x1=u-s,d.y1=h-s,d.x2=u+s,d.y2=h+s,d.w=d.x2-d.x1,d.h=d.y2-d.y1,a6(d,1),Hl(e,d.x1,d.y1,d.x2,d.y2)}}},"updateBoundsFromArrow"),NP=o(function(e,r,n){if(!r.cy().headless()){var i;n?i=n+"-":i="";var a=r._private,s=a.rstyle,l=r.pstyle(i+"label").strValue;if(l){var u=r.pstyle("text-halign"),h=r.pstyle("text-valign"),f=Nx(s,"labelWidth",n),d=Nx(s,"labelHeight",n),p=Nx(s,"labelX",n),m=Nx(s,"labelY",n),g=r.pstyle(i+"text-margin-x").pfValue,y=r.pstyle(i+"text-margin-y").pfValue,v=r.isEdge(),x=r.pstyle(i+"text-rotation"),b=r.pstyle("text-outline-width").pfValue,w=r.pstyle("text-border-width").pfValue,_=w/2,T=r.pstyle("text-background-padding").pfValue,E=2,L=d,C=f,A=C/2,I=L/2,D,k,R,S;if(v)D=p-A,k=p+A,R=m-I,S=m+I;else{switch(u.value){case"left":D=p-C,k=p;break;case"center":D=p-A,k=p+A;break;case"right":D=p,k=p+C;break}switch(h.value){case"top":R=m-L,S=m;break;case"center":R=m-I,S=m+I;break;case"bottom":R=m,S=m+L;break}}D+=g-Math.max(b,_)-T-E,k+=g+Math.max(b,_)+T+E,R+=y-Math.max(b,_)-T-E,S+=y+Math.max(b,_)+T+E;var O=n||"main",N=a.labelBounds,P=N[O]=N[O]||{};P.x1=D,P.y1=R,P.x2=k,P.y2=S,P.w=k-D,P.h=S-R;var F=v&&x.strValue==="autorotate",B=x.pfValue!=null&&x.pfValue!==0;if(F||B){var $=F?Nx(a.rstyle,"labelAngle",n):x.pfValue,z=Math.cos($),W=Math.sin($),j=(D+k)/2,K=(R+S)/2;if(!v){switch(u.value){case"left":j=k;break;case"right":j=D;break}switch(h.value){case"top":K=S;break;case"bottom":K=R;break}}var ie=o(function(ue,ce){return ue=ue-j,ce=ce-K,{x:ue*z-ce*W+j,y:ue*W+ce*z+K}},"rotate"),Q=ie(D,R),ee=ie(D,S),J=ie(k,R),H=ie(k,S);D=Math.min(Q.x,ee.x,J.x,H.x),k=Math.max(Q.x,ee.x,J.x,H.x),R=Math.min(Q.y,ee.y,J.y,H.y),S=Math.max(Q.y,ee.y,J.y,H.y)}var q=O+"Rot",Z=N[q]=N[q]||{};Z.x1=D,Z.y1=R,Z.x2=k,Z.y2=S,Z.w=k-D,Z.h=S-R,Hl(e,D,R,k,S),Hl(a.labelBounds.all,D,R,k,S)}return e}},"updateBoundsFromLabel"),dJe=o(function(e,r){if(!r.cy().headless()){var n=r.pstyle("outline-opacity").value,i=r.pstyle("outline-width").value;if(n>0&&i>0){var a=r.pstyle("outline-offset").value,s=r.pstyle("shape").value,l=i+a,u=(e.w+l*2)/e.w,h=(e.h+l*2)/e.h,f=0,d=0;["diamond","pentagon","round-triangle"].includes(s)?(u=(e.w+l*2.4)/e.w,d=-l/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(s)?u=(e.w+l*2.4)/e.w:s==="star"?(u=(e.w+l*2.8)/e.w,h=(e.h+l*2.6)/e.h,d=-l/3.8):s==="triangle"?(u=(e.w+l*2.8)/e.w,h=(e.h+l*2.4)/e.h,d=-l/1.4):s==="vee"&&(u=(e.w+l*4.4)/e.w,h=(e.h+l*3.8)/e.h,d=-l*.5);var p=e.h*h-e.h,m=e.w*u-e.w;if(s6(e,[Math.ceil(p/2),Math.ceil(m/2)]),f!=0||d!==0){var g=Ije(e,f,d);fge(e,g)}}}},"updateBoundsFromOutline"),pJe=o(function(e,r){var n=e._private.cy,i=n.styleEnabled(),a=n.headless(),s=$s(),l=e._private,u=e.isNode(),h=e.isEdge(),f,d,p,m,g,y,v=l.rstyle,x=u&&i?e.pstyle("bounds-expansion").pfValue:[0],b=o(function(De){return De.pstyle("display").value!=="none"},"isDisplayed"),w=!i||b(e)&&(!h||b(e.source())&&b(e.target()));if(w){var _=0,T=0;i&&r.includeOverlays&&(_=e.pstyle("overlay-opacity").value,_!==0&&(T=e.pstyle("overlay-padding").value));var E=0,L=0;i&&r.includeUnderlays&&(E=e.pstyle("underlay-opacity").value,E!==0&&(L=e.pstyle("underlay-padding").value));var C=Math.max(T,L),A=0,I=0;if(i&&(A=e.pstyle("width").pfValue,I=A/2),u&&r.includeNodes){var D=e.position();g=D.x,y=D.y;var k=e.outerWidth(),R=k/2,S=e.outerHeight(),O=S/2;f=g-R,d=g+R,p=y-O,m=y+O,Hl(s,f,p,d,m),i&&r.includeOutlines&&dJe(s,e)}else if(h&&r.includeEdges)if(i&&!a){var N=e.pstyle("curve-style").strValue;if(f=Math.min(v.srcX,v.midX,v.tgtX),d=Math.max(v.srcX,v.midX,v.tgtX),p=Math.min(v.srcY,v.midY,v.tgtY),m=Math.max(v.srcY,v.midY,v.tgtY),f-=I,d+=I,p-=I,m+=I,Hl(s,f,p,d,m),N==="haystack"){var P=v.haystackPts;if(P&&P.length===2){if(f=P[0].x,p=P[0].y,d=P[1].x,m=P[1].y,f>d){var F=f;f=d,d=F}if(p>m){var B=p;p=m,m=B}Hl(s,f-I,p-I,d+I,m+I)}}else if(N==="bezier"||N==="unbundled-bezier"||N.endsWith("segments")||N.endsWith("taxi")){var $;switch(N){case"bezier":case"unbundled-bezier":$=v.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":$=v.linePts;break}if($!=null)for(var z=0;z<$.length;z++){var W=$[z];f=W.x-I,d=W.x+I,p=W.y-I,m=W.y+I,Hl(s,f,p,d,m)}}}else{var j=e.source(),K=j.position(),ie=e.target(),Q=ie.position();if(f=K.x,d=Q.x,p=K.y,m=Q.y,f>d){var ee=f;f=d,d=ee}if(p>m){var J=p;p=m,m=J}f-=I,d+=I,p-=I,m+=I,Hl(s,f,p,d,m)}if(i&&r.includeEdges&&h&&(JE(s,e,"mid-source"),JE(s,e,"mid-target"),JE(s,e,"source"),JE(s,e,"target")),i){var H=e.pstyle("ghost").value==="yes";if(H){var q=e.pstyle("ghost-offset-x").pfValue,Z=e.pstyle("ghost-offset-y").pfValue;Hl(s,s.x1+q,s.y1+Z,s.x2+q,s.y2+Z)}}var ae=l.bodyBounds=l.bodyBounds||{};Gpe(ae,s),s6(ae,x),a6(ae,1),i&&(f=s.x1,d=s.x2,p=s.y1,m=s.y2,Hl(s,f-C,p-C,d+C,m+C));var ue=l.overlayBounds=l.overlayBounds||{};Gpe(ue,s),s6(ue,x),a6(ue,1);var ce=l.labelBounds=l.labelBounds||{};ce.all!=null?Mje(ce.all):ce.all=$s(),i&&r.includeLabels&&(r.includeMainLabels&&NP(s,e,null),h&&(r.includeSourceLabels&&NP(s,e,"source"),r.includeTargetLabels&&NP(s,e,"target")))}return s.x1=il(s.x1),s.y1=il(s.y1),s.x2=il(s.x2),s.y2=il(s.y2),s.w=il(s.x2-s.x1),s.h=il(s.y2-s.y1),s.w>0&&s.h>0&&w&&(s6(s,x),a6(s,1)),s},"boundingBoxImpl"),zge=o(function(e){var r=0,n=o(function(s){return(s?1:0)<=0;l--)s(l);return this};Lf.removeAllListeners=function(){return this.removeListener("*")};Lf.emit=Lf.trigger=function(t,e,r){var n=this.listeners,i=n.length;return this.emitting++,wn(e)||(e=[e]),DJe(this,function(a,s){r!=null&&(n=[{event:s.event,type:s.type,namespace:s.namespace,callback:r}],i=n.length);for(var l=o(function(f){var d=n[f];if(d.type===s.type&&(!d.namespace||d.namespace===s.namespace||d.namespace===_Je)&&a.eventMatches(a.context,d,s)){var p=[s];e!=null&&oje(p,e),a.beforeEmit(a.context,d,s),d.conf&&d.conf.one&&(a.listeners=a.listeners.filter(function(y){return y!==d}));var m=a.callbackContext(a.context,d,s),g=d.callback.apply(m,p);a.afterEmit(a.context,d,s),g===!1&&(s.stopPropagation(),s.preventDefault())}},"_loop2"),u=0;u1&&!s){var l=this.length-1,u=this[l],h=u._private.data.id;this[l]=void 0,this[e]=u,a.set(h,{ele:u,index:e})}return this.length--,this},"unmergeAt"),unmergeOne:o(function(e){e=e[0];var r=this._private,n=e._private.data.id,i=r.map,a=i.get(n);if(!a)return this;var s=a.index;return this.unmergeAt(s),this},"unmergeOne"),unmerge:o(function(e){var r=this._private.cy;if(!e)return this;if(e&&Zt(e)){var n=e;e=r.mutableElements().filter(n)}for(var i=0;i=0;r--){var n=this[r];e(n)&&this.unmergeAt(r)}return this},"unmergeBy"),map:o(function(e,r){for(var n=[],i=this,a=0;an&&(n=u,i=l)}return{value:n,ele:i}},"max"),min:o(function(e,r){for(var n=1/0,i,a=this,s=0;s=0&&a"u"?"undefined":Yi(Symbol))!=e&&Yi(Symbol.iterator)!=e;r&&(b6[Symbol.iterator]=function(){var n=this,i={value:void 0,done:!1},a=0,s=this.length;return Hme({next:o(function(){return a1&&arguments[1]!==void 0?arguments[1]:!0,n=this[0],i=n.cy();if(i.styleEnabled()&&n){this.cleanStyle();var a=n._private.style[e];return a??(r?i.style().getDefaultProperty(e):null)}},"parsedStyle"),numericStyle:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r){var n=r.pstyle(e);return n.pfValue!==void 0?n.pfValue:n.value}},"numericStyle"),numericStyleUnits:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r)return r.pstyle(e).units},"numericStyleUnits"),renderedStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=this[0];if(n)return r.style().getRenderedStyle(n,e)},"renderedStyle"),style:o(function(e,r){var n=this.cy();if(!n.styleEnabled())return this;var i=!1,a=n.style();if(Vr(e)){var s=e;a.applyBypass(this,s,i),this.emitAndNotify("style")}else if(Zt(e))if(r===void 0){var l=this[0];return l?a.getStylePropertyValue(l,e):void 0}else a.applyBypass(this,e,r,i),this.emitAndNotify("style");else if(e===void 0){var u=this[0];return u?a.getRawStyle(u):void 0}return this},"style"),removeStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=!1,i=r.style(),a=this;if(e===void 0)for(var s=0;s0&&e.push(f[0]),e.push(l[0])}return this.spawn(e,!0).filter(t)},"neighborhood"),closedNeighborhood:o(function(e){return this.neighborhood().add(this).filter(e)},"closedNeighborhood"),openNeighborhood:o(function(e){return this.neighborhood(e)},"openNeighborhood")});Ba.neighbourhood=Ba.neighborhood;Ba.closedNeighbourhood=Ba.closedNeighborhood;Ba.openNeighbourhood=Ba.openNeighborhood;ir(Ba,{source:al(o(function(e){var r=this[0],n;return r&&(n=r._private.source||r.cy().collection()),n&&e?n.filter(e):n},"sourceImpl"),"source"),target:al(o(function(e){var r=this[0],n;return r&&(n=r._private.target||r.cy().collection()),n&&e?n.filter(e):n},"targetImpl"),"target"),sources:vme({attr:"source"}),targets:vme({attr:"target"})});o(vme,"defineSourceFunction");ir(Ba,{edgesWith:al(xme(),"edgesWith"),edgesTo:al(xme({thisIsSrc:!0}),"edgesTo")});o(xme,"defineEdgesWithFunction");ir(Ba,{connectedEdges:al(function(t){for(var e=[],r=this,n=0;n0);return s},"components"),component:o(function(){var e=this[0];return e.cy().mutableElements().components(e)[0]},"component")});Ba.componentsOf=Ba.components;ba=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e===void 0){hi("A collection must have a reference to the core");return}var a=new Uc,s=!1;if(!r)r=[];else if(r.length>0&&Vr(r[0])&&!Jx(r[0])){s=!0;for(var l=[],u=new f1,h=0,f=r.length;h0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=r.cy(),i=n._private,a=[],s=[],l,u=0,h=r.length;u0){for(var B=l.length===r.length?r:new ba(n,l),$=0;$0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=[],i={},a=r._private.cy;function s(S){for(var O=S._private.edges,N=0;N0&&(t?D.emitAndNotify("remove"):e&&D.emit("remove"));for(var k=0;kf&&Math.abs(g.v)>f;);return p?function(y){return u[y*(u.length-1)|0]}:h},"springRK4Factory")}(),Dn=o(function(e,r,n,i){var a=GJe(e,r,n,i);return function(s,l,u){return s+(l-s)*a(u)}},"cubicBezier"),c6={linear:o(function(e,r,n){return e+(r-e)*n},"linear"),ease:Dn(.25,.1,.25,1),"ease-in":Dn(.42,0,1,1),"ease-out":Dn(0,0,.58,1),"ease-in-out":Dn(.42,0,.58,1),"ease-in-sine":Dn(.47,0,.745,.715),"ease-out-sine":Dn(.39,.575,.565,1),"ease-in-out-sine":Dn(.445,.05,.55,.95),"ease-in-quad":Dn(.55,.085,.68,.53),"ease-out-quad":Dn(.25,.46,.45,.94),"ease-in-out-quad":Dn(.455,.03,.515,.955),"ease-in-cubic":Dn(.55,.055,.675,.19),"ease-out-cubic":Dn(.215,.61,.355,1),"ease-in-out-cubic":Dn(.645,.045,.355,1),"ease-in-quart":Dn(.895,.03,.685,.22),"ease-out-quart":Dn(.165,.84,.44,1),"ease-in-out-quart":Dn(.77,0,.175,1),"ease-in-quint":Dn(.755,.05,.855,.06),"ease-out-quint":Dn(.23,1,.32,1),"ease-in-out-quint":Dn(.86,0,.07,1),"ease-in-expo":Dn(.95,.05,.795,.035),"ease-out-expo":Dn(.19,1,.22,1),"ease-in-out-expo":Dn(1,0,0,1),"ease-in-circ":Dn(.6,.04,.98,.335),"ease-out-circ":Dn(.075,.82,.165,1),"ease-in-out-circ":Dn(.785,.135,.15,.86),spring:o(function(e,r,n){if(n===0)return c6.linear;var i=$Je(e,r,n);return function(a,s,l){return a+(s-a)*i(l)}},"spring"),"cubic-bezier":Dn};o(wme,"getEasedValue");o(Tme,"getValue");o(Zg,"ease");o(VJe,"step$1");o(Mx,"valid");o(UJe,"startAnimation");o(kme,"stepAll");HJe={animate:sn.animate(),animation:sn.animation(),animated:sn.animated(),clearQueue:sn.clearQueue(),delay:sn.delay(),delayAnimation:sn.delayAnimation(),stop:sn.stop(),addToAnimationPool:o(function(e){var r=this;r.styleEnabled()&&r._private.aniEles.merge(e)},"addToAnimationPool"),stopAnimationLoop:o(function(){this._private.animationsRunning=!1},"stopAnimationLoop"),startAnimationLoop:o(function(){var e=this;if(e._private.animationsRunning=!0,!e.styleEnabled())return;function r(){e._private.animationsRunning&&m6(o(function(a){kme(a,e),r()},"animationStep"))}o(r,"headlessStep");var n=e.renderer();n&&n.beforeRender?n.beforeRender(o(function(a,s){kme(s,e)},"rendererAnimationStep"),n.beforeRenderPriorities.animations):r()},"startAnimationLoop")},WJe={qualifierCompare:o(function(e,r){return e==null||r==null?e==null&&r==null:e.sameText(r)},"qualifierCompare"),eventMatches:o(function(e,r,n){var i=r.qualifier;return i!=null?e!==n.target&&Jx(n.target)&&i.matches(n.target):!0},"eventMatches"),addEventFields:o(function(e,r){r.cy=e,r.target=e},"addEventFields"),callbackContext:o(function(e,r,n){return r.qualifier!=null?n.target:e},"callbackContext")},r6=o(function(e){return Zt(e)?new Af(e):e},"argSelector"),Kge={createEmitter:o(function(){var e=this._private;return e.emitter||(e.emitter=new O6(WJe,this)),this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(e,r,n){return this.emitter().on(e,r6(r),n),this},"on"),removeListener:o(function(e,r,n){return this.emitter().removeListener(e,r6(r),n),this},"removeListener"),removeAllListeners:o(function(){return this.emitter().removeAllListeners(),this},"removeAllListeners"),one:o(function(e,r,n){return this.emitter().one(e,r6(r),n),this},"one"),once:o(function(e,r,n){return this.emitter().one(e,r6(r),n),this},"once"),emit:o(function(e,r){return this.emitter().emit(e,r),this},"emit"),emitAndNotify:o(function(e,r){return this.emit(e),this.notify(e,r),this},"emitAndNotify")};sn.eventAliasesOn(Kge);UP={png:o(function(e){var r=this._private.renderer;return e=e||{},r.png(e)},"png"),jpg:o(function(e){var r=this._private.renderer;return e=e||{},e.bg=e.bg||"#fff",r.jpg(e)},"jpg")};UP.jpeg=UP.jpg;u6={layout:o(function(e){var r=this;if(e==null){hi("Layout options must be specified to make a layout");return}if(e.name==null){hi("A `name` must be specified to make a layout");return}var n=e.name,i=r.extension("layout",n);if(i==null){hi("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var a;Zt(e.eles)?a=r.$(e.eles):a=e.eles!=null?e.eles:r.$();var s=new i(ir({},e,{cy:r,eles:a}));return s},"layout")};u6.createLayout=u6.makeLayout=u6.layout;YJe={notify:o(function(e,r){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var i=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();r!=null&&i.merge(r);return}if(n.notificationsEnabled){var a=this.renderer();this.destroyed()||!a||a.notify(e,r)}},"notify"),notifications:o(function(e){var r=this._private;return e===void 0?r.notificationsEnabled:(r.notificationsEnabled=!!e,this)},"notifications"),noNotifications:o(function(e){this.notifications(!1),e(),this.notifications(!0)},"noNotifications"),batching:o(function(){return this._private.batchCount>0},"batching"),startBatch:o(function(){var e=this._private;return e.batchCount==null&&(e.batchCount=0),e.batchCount===0&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},"startBatch"),endBatch:o(function(){var e=this._private;if(e.batchCount===0)return this;if(e.batchCount--,e.batchCount===0){e.batchStyleEles.updateStyle();var r=this.renderer();Object.keys(e.batchNotifications).forEach(function(n){var i=e.batchNotifications[n];i.empty()?r.notify(n):r.notify(n,i)})}return this},"endBatch"),batch:o(function(e){return this.startBatch(),e(),this.endBatch(),this},"batch"),batchData:o(function(e){var r=this;return this.batch(function(){for(var n=Object.keys(e),i=0;i0;)r.removeChild(r.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach(function(n){var i=n._private;i.rscratch={},i.rstyle={},i.animation.current=[],i.animation.queue=[]})},"destroyRenderer"),onRender:o(function(e){return this.on("render",e)},"onRender"),offRender:o(function(e){return this.off("render",e)},"offRender")};HP.invalidateDimensions=HP.resize;h6={collection:o(function(e,r){return Zt(e)?this.$(e):po(e)?e.collection():wn(e)?(r||(r={}),new ba(this,e,r.unique,r.removed)):new ba(this)},"collection"),nodes:o(function(e){var r=this.$(function(n){return n.isNode()});return e?r.filter(e):r},"nodes"),edges:o(function(e){var r=this.$(function(n){return n.isEdge()});return e?r.filter(e):r},"edges"),$:o(function(e){var r=this._private.elements;return e?r.filter(e):r.spawnSelf()},"$"),mutableElements:o(function(){return this._private.elements},"mutableElements")};h6.elements=h6.filter=h6.$;za={},zx="t",XJe="f";za.apply=function(t){for(var e=this,r=e._private,n=r.cy,i=n.collection(),a=0;a0;if(p||d&&m){var g=void 0;p&&m||p?g=h.properties:m&&(g=h.mappedProperties);for(var y=0;y1&&(_=1),l.color){var E=n.valueMin[0],L=n.valueMax[0],C=n.valueMin[1],A=n.valueMax[1],I=n.valueMin[2],D=n.valueMax[2],k=n.valueMin[3]==null?1:n.valueMin[3],R=n.valueMax[3]==null?1:n.valueMax[3],S=[Math.round(E+(L-E)*_),Math.round(C+(A-C)*_),Math.round(I+(D-I)*_),Math.round(k+(R-k)*_)];a={bypass:n.bypass,name:n.name,value:S,strValue:"rgb("+S[0]+", "+S[1]+", "+S[2]+")"}}else if(l.number){var O=n.valueMin+(n.valueMax-n.valueMin)*_;a=this.parse(n.name,O,n.bypass,p)}else return!1;if(!a)return y(),!1;a.mapping=n,n=a;break}case s.data:{for(var N=n.field.split("."),P=d.data,F=0;F0&&a>0){for(var l={},u=!1,h=0;h0?t.delayAnimation(s).play().promise().then(w):w()}).then(function(){return t.animation({style:l,duration:a,easing:t.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){r.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1})}else n.transitioning&&(this.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1)};za.checkTrigger=function(t,e,r,n,i,a){var s=this.properties[e],l=i(s);l!=null&&l(r,n)&&a(s)};za.checkZOrderTrigger=function(t,e,r,n){var i=this;this.checkTrigger(t,e,r,n,function(a){return a.triggersZOrder},function(){i._private.cy.notify("zorder",t)})};za.checkBoundsTrigger=function(t,e,r,n){this.checkTrigger(t,e,r,n,function(i){return i.triggersBounds},function(i){t.dirtyCompoundBoundsCache(),t.dirtyBoundingBoxCache(),i.triggersBoundsOfParallelBeziers&&e==="curve-style"&&(r==="bezier"||n==="bezier")&&t.parallelEdges().forEach(function(a){a.isBundledBezier()&&a.dirtyBoundingBoxCache()}),i.triggersBoundsOfConnectedEdges&&e==="display"&&(r==="none"||n==="none")&&t.connectedEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})};za.checkTriggers=function(t,e,r,n){t.dirtyStyleCache(),this.checkZOrderTrigger(t,e,r,n),this.checkBoundsTrigger(t,e,r,n)};nb={};nb.applyBypass=function(t,e,r,n){var i=this,a=[],s=!0;if(e==="*"||e==="**"){if(r!==void 0)for(var l=0;li.length?n=n.substr(i.length):n=""}o(l,"removeSelAndBlockFromRemaining");function u(){a.length>s.length?a=a.substr(s.length):a=""}for(o(u,"removePropAndValFromRem");;){var h=n.match(/^\s*$/);if(h)break;var f=n.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!f){on("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+n);break}i=f[0];var d=f[1];if(d!=="core"){var p=new Af(d);if(p.invalid){on("Skipping parsing of block: Invalid selector found in string stylesheet: "+d),l();continue}}var m=f[2],g=!1;a=m;for(var y=[];;){var v=a.match(/^\s*$/);if(v)break;var x=a.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!x){on("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+m),g=!0;break}s=x[0];var b=x[1],w=x[2],_=e.properties[b];if(!_){on("Skipping property: Invalid property name in: "+s),u();continue}var T=r.parse(b,w);if(!T){on("Skipping property: Invalid property definition in: "+s),u();continue}y.push({name:b,val:w}),u()}if(g){l();break}r.selector(d);for(var E=0;E=7&&e[0]==="d"&&(f=new RegExp(l.data.regex).exec(e))){if(r)return!1;var p=l.data;return{name:t,value:f,strValue:""+e,mapped:p,field:f[1],bypass:r}}else if(e.length>=10&&e[0]==="m"&&(d=new RegExp(l.mapData.regex).exec(e))){if(r||h.multiple)return!1;var m=l.mapData;if(!(h.color||h.number))return!1;var g=this.parse(t,d[4]);if(!g||g.mapped)return!1;var y=this.parse(t,d[5]);if(!y||y.mapped)return!1;if(g.pfValue===y.pfValue||g.strValue===y.strValue)return on("`"+t+": "+e+"` is not a valid mapper because the output range is zero; converting to `"+t+": "+g.strValue+"`"),this.parse(t,g.strValue);if(h.color){var v=g.value,x=y.value,b=v[0]===x[0]&&v[1]===x[1]&&v[2]===x[2]&&(v[3]===x[3]||(v[3]==null||v[3]===1)&&(x[3]==null||x[3]===1));if(b)return!1}return{name:t,value:d,strValue:""+e,mapped:m,field:d[1],fieldMin:parseFloat(d[2]),fieldMax:parseFloat(d[3]),valueMin:g.value,valueMax:y.value,bypass:r}}}if(h.multiple&&n!=="multiple"){var w;if(u?w=e.split(/\s+/):wn(e)?w=e:w=[e],h.evenMultiple&&w.length%2!==0)return null;for(var _=[],T=[],E=[],L="",C=!1,A=0;A0?" ":"")+I.strValue}return h.validate&&!h.validate(_,T)?null:h.singleEnum&&C?_.length===1&&Zt(_[0])?{name:t,value:_[0],strValue:_[0],bypass:r}:null:{name:t,value:_,pfValue:E,strValue:L,bypass:r,units:T}}var D=o(function(){for(var H=0;Hh.max||h.strictMax&&e===h.max))return null;var N={name:t,value:e,strValue:""+e+(k||""),units:k,bypass:r};return h.unitless||k!=="px"&&k!=="em"?N.pfValue=e:N.pfValue=k==="px"||!k?e:this.getEmSizeInPixels()*e,(k==="ms"||k==="s")&&(N.pfValue=k==="ms"?e:1e3*e),(k==="deg"||k==="rad")&&(N.pfValue=k==="rad"?e:Lje(e)),k==="%"&&(N.pfValue=e/100),N}else if(h.propList){var P=[],F=""+e;if(F!=="none"){for(var B=F.split(/\s*,\s*|\s+/),$=0;$0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0){u=Math.min((s-2*r)/n.w,(l-2*r)/n.h),u=u>this._private.maxZoom?this._private.maxZoom:u,u=u=n.minZoom&&(n.maxZoom=r),this},"zoomRange"),minZoom:o(function(e){return e===void 0?this._private.minZoom:this.zoomRange({min:e})},"minZoom"),maxZoom:o(function(e){return e===void 0?this._private.maxZoom:this.zoomRange({max:e})},"maxZoom"),getZoomedViewport:o(function(e){var r=this._private,n=r.pan,i=r.zoom,a,s,l=!1;if(r.zoomingEnabled||(l=!0),xt(e)?s=e:Vr(e)&&(s=e.level,e.position!=null?a=L6(e.position,i,n):e.renderedPosition!=null&&(a=e.renderedPosition),a!=null&&!r.panningEnabled&&(l=!0)),s=s>r.maxZoom?r.maxZoom:s,s=sr.maxZoom||!r.zoomingEnabled?s=!0:(r.zoom=u,a.push("zoom"))}if(i&&(!s||!e.cancelOnFailedZoom)&&r.panningEnabled){var h=e.pan;xt(h.x)&&(r.pan.x=h.x,l=!1),xt(h.y)&&(r.pan.y=h.y,l=!1),l||a.push("pan")}return a.length>0&&(a.push("viewport"),this.emit(a.join(" ")),this.notify("viewport")),this},"viewport"),center:o(function(e){var r=this.getCenterPan(e);return r&&(this._private.pan=r,this.emit("pan viewport"),this.notify("viewport")),this},"center"),getCenterPan:o(function(e,r){if(this._private.panningEnabled){if(Zt(e)){var n=e;e=this.mutableElements().filter(n)}else po(e)||(e=this.mutableElements());if(e.length!==0){var i=e.boundingBox(),a=this.width(),s=this.height();r=r===void 0?this._private.zoom:r;var l={x:(a-r*(i.x1+i.x2))/2,y:(s-r*(i.y1+i.y2))/2};return l}}},"getCenterPan"),reset:o(function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},"reset"),invalidateSize:o(function(){this._private.sizeCache=null},"invalidateSize"),size:o(function(){var e=this._private,r=e.container,n=this;return e.sizeCache=e.sizeCache||(r?function(){var i=n.window().getComputedStyle(r),a=o(function(l){return parseFloat(i.getPropertyValue(l))},"val");return{width:r.clientWidth-a("padding-left")-a("padding-right"),height:r.clientHeight-a("padding-top")-a("padding-bottom")}}():{width:1,height:1})},"size"),width:o(function(){return this.size().width},"width"),height:o(function(){return this.size().height},"height"),extent:o(function(){var e=this._private.pan,r=this._private.zoom,n=this.renderedExtent(),i={x1:(n.x1-e.x)/r,x2:(n.x2-e.x)/r,y1:(n.y1-e.y)/r,y2:(n.y2-e.y)/r};return i.w=i.x2-i.x1,i.h=i.y2-i.y1,i},"extent"),renderedExtent:o(function(){var e=this.width(),r=this.height();return{x1:0,y1:0,x2:e,y2:r,w:e,h:r}},"renderedExtent"),multiClickDebounceTime:o(function(e){if(e)this._private.multiClickDebounceTime=e;else return this._private.multiClickDebounceTime;return this},"multiClickDebounceTime")};U0.centre=U0.center;U0.autolockNodes=U0.autolock;U0.autoungrabifyNodes=U0.autoungrabify;Kx={data:sn.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:sn.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:sn.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:sn.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Kx.attr=Kx.data;Kx.removeAttr=Kx.removeData;Qx=o(function(e){var r=this;e=ir({},e);var n=e.container;n&&!p6(n)&&p6(n[0])&&(n=n[0]);var i=n?n._cyreg:null;i=i||{},i&&i.cy&&(i.cy.destroy(),i={});var a=i.readies=i.readies||[];n&&(n._cyreg=i),i.cy=r;var s=Hi!==void 0&&n!==void 0&&!e.headless,l=e;l.layout=ir({name:s?"grid":"null"},l.layout),l.renderer=ir({name:s?"canvas":"null"},l.renderer);var u=o(function(g,y,v){return y!==void 0?y:v!==void 0?v:g},"defVal"),h=this._private={container:n,ready:!1,options:l,elements:new ba(this),listeners:[],aniEles:new ba(this),data:l.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:u(!0,l.zoomingEnabled),userZoomingEnabled:u(!0,l.userZoomingEnabled),panningEnabled:u(!0,l.panningEnabled),userPanningEnabled:u(!0,l.userPanningEnabled),boxSelectionEnabled:u(!0,l.boxSelectionEnabled),autolock:u(!1,l.autolock,l.autolockNodes),autoungrabify:u(!1,l.autoungrabify,l.autoungrabifyNodes),autounselectify:u(!1,l.autounselectify),styleEnabled:l.styleEnabled===void 0?s:l.styleEnabled,zoom:xt(l.zoom)?l.zoom:1,pan:{x:Vr(l.pan)&&xt(l.pan.x)?l.pan.x:0,y:Vr(l.pan)&&xt(l.pan.y)?l.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:u(250,l.multiClickDebounceTime)};this.createEmitter(),this.selectionType(l.selectionType),this.zoomRange({min:l.minZoom,max:l.maxZoom});var f=o(function(g,y){var v=g.some(Jqe);if(v)return d1.all(g).then(y);y(g)},"loadExtData");h.styleEnabled&&r.setStyle([]);var d=ir({},l,l.renderer);r.initRenderer(d);var p=o(function(g,y,v){r.notifications(!1);var x=r.mutableElements();x.length>0&&x.remove(),g!=null&&(Vr(g)||wn(g))&&r.add(g),r.one("layoutready",function(w){r.notifications(!0),r.emit(w),r.one("load",y),r.emitAndNotify("load")}).one("layoutstop",function(){r.one("done",v),r.emit("done")});var b=ir({},r._private.options.layout);b.eles=r.elements(),r.layout(b).run()},"setElesAndLayout");f([l.style,l.elements],function(m){var g=m[0],y=m[1];h.styleEnabled&&r.style().append(g),p(y,function(){r.startAnimationLoop(),h.ready=!0,ti(l.ready)&&r.on("ready",l.ready);for(var v=0;v0,u=$s(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),h;if(po(e.roots))h=e.roots;else if(wn(e.roots)){for(var f=[],d=0;d0;){var O=S(),N=I(O,k);if(N)O.outgoers().filter(function(ce){return ce.isNode()&&n.has(ce)}).forEach(R);else if(N===null){on("Detected double maximal shift for node `"+O.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}A();var P=0;if(e.avoidOverlap)for(var F=0;F0&&x[0].length<=3?Ge/2:0),X=2*Math.PI/x[oe].length*ke;return oe===0&&x[0].length===1&&(xe=1),{x:Z.x+xe*Math.cos(X),y:Z.y+xe*Math.sin(X)}}else{var He={x:Z.x+(ke+1-(Fe+1)/2)*Be,y:(oe+1)*Ve};return He}},"getPosition");return n.nodes().layoutPositions(this,e,ue),this};JJe={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(Zge,"CircleLayout");Zge.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,a=n.nodes().not(":parent");e.sort&&(a=a.sort(e.sort));for(var s=$s(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=e.sweep===void 0?2*Math.PI-2*Math.PI/a.length:e.sweep,h=u/Math.max(1,a.length-1),f,d=0,p=0;p1&&e.avoidOverlap){d*=1.75;var x=Math.cos(h)-Math.cos(0),b=Math.sin(h)-Math.sin(0),w=Math.sqrt(d*d/(x*x+b*b));f=Math.max(w,f)}var _=o(function(E,L){var C=e.startAngle+L*h*(i?1:-1),A=f*Math.cos(C),I=f*Math.sin(C),D={x:l.x+A,y:l.y+I};return D},"getPos");return n.nodes().layoutPositions(this,e,_),this};eet={fit:!0,padding:30,startAngle:3/2*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:o(function(e){return e.degree()},"concentric"),levelWidth:o(function(e){return e.maxDegree()/4},"levelWidth"),animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(Jge,"ConcentricLayout");Jge.prototype.run=function(){for(var t=this.options,e=t,r=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,n=t.cy,i=e.eles,a=i.nodes().not(":parent"),s=$s(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=[],h=0,f=0;f0){var T=Math.abs(b[0].value-_.value);T>=v&&(b=[],x.push(b))}b.push(_)}var E=h+e.minNodeSpacing;if(!e.avoidOverlap){var L=x.length>0&&x[0].length>1,C=Math.min(s.w,s.h)/2-E,A=C/(x.length+L?1:0);E=Math.min(E,A)}for(var I=0,D=0;D1&&e.avoidOverlap){var O=Math.cos(S)-Math.cos(0),N=Math.sin(S)-Math.sin(0),P=Math.sqrt(E*E/(O*O+N*N));I=Math.max(P,I)}k.r=I,I+=E}if(e.equidistant){for(var F=0,B=0,$=0;$=t.numIter||(cet(n,t),n.temperature=n.temperature*t.coolingFactor,n.temperature=t.animationThreshold&&a(),m6(d)}},"frame");f()}else{for(;h;)h=s(u),u++;Cme(n,t),l()}return this};G6.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this};G6.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};ret=o(function(e,r,n){for(var i=n.eles.edges(),a=n.eles.nodes(),s=$s(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),l={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:a.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:i.size(),temperature:n.initialTemp,clientWidth:s.w,clientHeight:s.h,boundingBox:s},u=n.eles.components(),h={},f=0;f0){l.graphSet.push(C);for(var f=0;fi.count?0:i.graph},"findLCA"),iet=o(function t(e,r,n,i){var a=i.graphSet[n];if(-10)var d=i.nodeOverlap*f,p=Math.sqrt(l*l+u*u),m=d*l/p,g=d*u/p;else var y=T6(e,l,u),v=T6(r,-1*l,-1*u),x=v.x-y.x,b=v.y-y.y,w=x*x+b*b,p=Math.sqrt(w),d=(e.nodeRepulsion+r.nodeRepulsion)/w,m=d*x/p,g=d*b/p;e.isLocked||(e.offsetX-=m,e.offsetY-=g),r.isLocked||(r.offsetX+=m,r.offsetY+=g)}},"nodeRepulsion"),fet=o(function(e,r,n,i){if(n>0)var a=e.maxX-r.minX;else var a=r.maxX-e.minX;if(i>0)var s=e.maxY-r.minY;else var s=r.maxY-e.minY;return a>=0&&s>=0?Math.sqrt(a*a+s*s):0},"nodesOverlap"),T6=o(function(e,r,n){var i=e.positionX,a=e.positionY,s=e.height||1,l=e.width||1,u=n/r,h=s/l,f={};return r===0&&0n?(f.x=i,f.y=a+s/2,f):0r&&-1*h<=u&&u<=h?(f.x=i-l/2,f.y=a-l*n/2/r,f):0=h)?(f.x=i+s*r/2/n,f.y=a+s/2,f):(0>n&&(u<=-1*h||u>=h)&&(f.x=i-s*r/2/n,f.y=a-s/2),f)},"findClippingPoint"),det=o(function(e,r){for(var n=0;nn){var v=r.gravity*m/y,x=r.gravity*g/y;p.offsetX+=v,p.offsetY+=x}}}}},"calculateGravityForces"),met=o(function(e,r){var n=[],i=0,a=-1;for(n.push.apply(n,e.graphSet[0]),a+=e.graphSet[0].length;i<=a;){var s=n[i++],l=e.idToIndex[s],u=e.layoutNodes[l],h=u.children;if(0n)var a={x:n*e/i,y:n*r/i};else var a={x:e,y:r};return a},"limitForce"),vet=o(function t(e,r){var n=e.parentId;if(n!=null){var i=r.layoutNodes[r.idToIndex[n]],a=!1;if((i.maxX==null||e.maxX+i.padRight>i.maxX)&&(i.maxX=e.maxX+i.padRight,a=!0),(i.minX==null||e.minX-i.padLefti.maxY)&&(i.maxY=e.maxY+i.padBottom,a=!0),(i.minY==null||e.minY-i.padTopx&&(g+=v+r.componentSpacing,m=0,y=0,v=0)}}},"separateComponents"),xet={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:o(function(e){},"position"),sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(t1e,"GridLayout");t1e.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=n.nodes().not(":parent");e.sort&&(i=i.sort(e.sort));var a=$s(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(a.h===0||a.w===0)n.nodes().layoutPositions(this,e,function(j){return{x:a.x1,y:a.y1}});else{var s=i.size(),l=Math.sqrt(s*a.h/a.w),u=Math.round(l),h=Math.round(a.w/a.h*l),f=o(function(K){if(K==null)return Math.min(u,h);var ie=Math.min(u,h);ie==u?u=K:h=K},"small"),d=o(function(K){if(K==null)return Math.max(u,h);var ie=Math.max(u,h);ie==u?u=K:h=K},"large"),p=e.rows,m=e.cols!=null?e.cols:e.columns;if(p!=null&&m!=null)u=p,h=m;else if(p!=null&&m==null)u=p,h=Math.ceil(s/u);else if(p==null&&m!=null)h=m,u=Math.ceil(s/h);else if(h*u>s){var g=f(),y=d();(g-1)*y>=s?f(g-1):(y-1)*g>=s&&d(y-1)}else for(;h*u=s?d(x+1):f(v+1)}var b=a.w/h,w=a.h/u;if(e.condense&&(b=0,w=0),e.avoidOverlap)for(var _=0;_=h&&(O=0,S++)},"moveToNextCell"),P={},F=0;F(O=Vje(t,e,N[P],N[P+1],N[P+2],N[P+3])))return v(L,O),!0}else if(A.edgeType==="bezier"||A.edgeType==="multibezier"||A.edgeType==="self"||A.edgeType==="compound"){for(var N=A.allpts,P=0;P+5(O=$je(t,e,N[P],N[P+1],N[P+2],N[P+3],N[P+4],N[P+5])))return v(L,O),!0}for(var F=F||C.source,B=B||C.target,$=i.getArrowWidth(I,D),z=[{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}],P=0;P0&&(x(F),x(B))}o(b,"checkEdge");function w(L,C,A){return Wl(L,C,A)}o(w,"preprop");function _(L,C){var A=L._private,I=p,D;C?D=C+"-":D="",L.boundingBox();var k=A.labelBounds[C||"main"],R=L.pstyle(D+"label").value,S=L.pstyle("text-events").strValue==="yes";if(!(!S||!R)){var O=w(A.rscratch,"labelX",C),N=w(A.rscratch,"labelY",C),P=w(A.rscratch,"labelAngle",C),F=L.pstyle(D+"text-margin-x").pfValue,B=L.pstyle(D+"text-margin-y").pfValue,$=k.x1-I-F,z=k.x2+I-F,W=k.y1-I-B,j=k.y2+I-B;if(P){var K=Math.cos(P),ie=Math.sin(P),Q=o(function(ue,ce){return ue=ue-O,ce=ce-N,{x:ue*K-ce*ie+O,y:ue*ie+ce*K+N}},"rotate"),ee=Q($,W),J=Q($,j),H=Q(z,W),q=Q(z,j),Z=[ee.x+F,ee.y+B,H.x+F,H.y+B,q.x+F,q.y+B,J.x+F,J.y+B];if(Gs(t,e,Z))return v(L),!0}else if(c1(k,t,e))return v(L),!0}}o(_,"checkLabel");for(var T=s.length-1;T>=0;T--){var E=s[T];E.isNode()?x(E)||_(E):b(E)||_(E)||_(E,"source")||_(E,"target")}return l};W0.getAllInBox=function(t,e,r,n){var i=this.getCachedZSortedEles().interactive,a=[],s=Math.min(t,r),l=Math.max(t,r),u=Math.min(e,n),h=Math.max(e,n);t=s,r=l,e=u,n=h;for(var f=$s({x1:t,y1:e,x2:r,y2:n}),d=0;d0?-(Math.PI-e.ang):Math.PI+e.ang},"invertVec"),Cet=o(function(e,r,n,i,a){if(e!==Nme?Rme(r,e,$c):Eet(nl,$c),Rme(r,n,nl),Lme=$c.nx*nl.ny-$c.ny*nl.nx,Dme=$c.nx*nl.nx-$c.ny*-nl.ny,qu=Math.asin(Math.max(-1,Math.min(1,Lme))),Math.abs(qu)<1e-6){WP=r.x,YP=r.y,O0=e1=0;return}P0=1,f6=!1,Dme<0?qu<0?qu=Math.PI+qu:(qu=Math.PI-qu,P0=-1,f6=!0):qu>0&&(P0=-1,f6=!0),r.radius!==void 0?e1=r.radius:e1=i,N0=qu/2,n6=Math.min($c.len/2,nl.len/2),a?(Gc=Math.abs(Math.cos(N0)*e1/Math.sin(N0)),Gc>n6?(Gc=n6,O0=Math.abs(Gc*Math.sin(N0)/Math.cos(N0))):O0=e1):(Gc=Math.min(n6,e1),O0=Math.abs(Gc*Math.sin(N0)/Math.cos(N0))),qP=r.x+nl.nx*Gc,XP=r.y+nl.ny*Gc,WP=qP-nl.ny*O0*P0,YP=XP+nl.nx*O0*P0,a1e=r.x+$c.nx*Gc,s1e=r.y+$c.ny*Gc,Nme=r},"calcCornerArc");o(o1e,"drawPreparedRoundCorner");o(bB,"getRoundCorner");Ga={};Ga.findMidptPtsEtc=function(t,e){var r=e.posPts,n=e.intersectionPts,i=e.vectorNormInverse,a,s=t.pstyle("source-endpoint"),l=t.pstyle("target-endpoint"),u=s.units!=null&&l.units!=null,h=o(function(T,E,L,C){var A=C-E,I=L-T,D=Math.sqrt(I*I+A*A);return{x:-A/D,y:I/D}},"recalcVectorNormInverse"),f=t.pstyle("edge-distances").value;switch(f){case"node-position":a=r;break;case"intersection":a=n;break;case"endpoints":{if(u){var d=this.manualEndptToPx(t.source()[0],s),p=Ul(d,2),m=p[0],g=p[1],y=this.manualEndptToPx(t.target()[0],l),v=Ul(y,2),x=v[0],b=v[1],w={x1:m,y1:g,x2:x,y2:b};i=h(m,g,x,b),a=w}else on("Edge ".concat(t.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),a=n;break}}return{midptPts:a,vectorNormInverse:i}};Ga.findHaystackPoints=function(t){for(var e=0;e0?Math.max(se-Ee,0):Math.min(se+Ee,0)},"subDWH"),R=k(I,C),S=k(D,A),O=!1;b===h?x=Math.abs(R)>Math.abs(S)?i:n:b===u||b===l?(x=n,O=!0):(b===a||b===s)&&(x=i,O=!0);var N=x===n,P=N?S:R,F=N?D:I,B=hge(F),$=!1;!(O&&(_||E))&&(b===l&&F<0||b===u&&F>0||b===a&&F>0||b===s&&F<0)&&(B*=-1,P=B*Math.abs(P),$=!0);var z;if(_){var W=T<0?1+T:T;z=W*P}else{var j=T<0?P:0;z=j+T*B}var K=o(function(se){return Math.abs(se)=Math.abs(P)},"getIsTooClose"),ie=K(z),Q=K(Math.abs(P)-Math.abs(z)),ee=ie||Q;if(ee&&!$)if(N){var J=Math.abs(F)<=p/2,H=Math.abs(I)<=m/2;if(J){var q=(f.x1+f.x2)/2,Z=f.y1,ae=f.y2;r.segpts=[q,Z,q,ae]}else if(H){var ue=(f.y1+f.y2)/2,ce=f.x1,te=f.x2;r.segpts=[ce,ue,te,ue]}else r.segpts=[f.x1,f.y2]}else{var De=Math.abs(F)<=d/2,oe=Math.abs(D)<=g/2;if(De){var ke=(f.y1+f.y2)/2,Fe=f.x1,Be=f.x2;r.segpts=[Fe,ke,Be,ke]}else if(oe){var Ve=(f.x1+f.x2)/2,Ge=f.y1,He=f.y2;r.segpts=[Ve,Ge,Ve,He]}else r.segpts=[f.x2,f.y1]}else if(N){var xe=f.y1+z+(v?p/2*B:0),X=f.x1,fe=f.x2;r.segpts=[X,xe,fe,xe]}else{var he=f.x1+z+(v?d/2*B:0),ge=f.y1,ne=f.y2;r.segpts=[he,ge,he,ne]}if(r.isRound){var ye=t.pstyle("taxi-radius").value,U=t.pstyle("radius-type").value[0]==="arc-radius";r.radii=new Array(r.segpts.length/2).fill(ye),r.isArcRadius=new Array(r.segpts.length/2).fill(U)}};Ga.tryToCorrectInvalidPoints=function(t,e){var r=t._private.rscratch;if(r.edgeType==="bezier"){var n=e.srcPos,i=e.tgtPos,a=e.srcW,s=e.srcH,l=e.tgtW,u=e.tgtH,h=e.srcShape,f=e.tgtShape,d=e.srcCornerRadius,p=e.tgtCornerRadius,m=e.srcRs,g=e.tgtRs,y=!xt(r.startX)||!xt(r.startY),v=!xt(r.arrowStartX)||!xt(r.arrowStartY),x=!xt(r.endX)||!xt(r.endY),b=!xt(r.arrowEndX)||!xt(r.arrowEndY),w=3,_=this.getArrowWidth(t.pstyle("width").pfValue,t.pstyle("arrow-scale").value)*this.arrowShapeWidth,T=w*_,E=G0({x:r.ctrlpts[0],y:r.ctrlpts[1]},{x:r.startX,y:r.startY}),L=ES.poolIndex()){var O=R;R=S,S=O}var N=A.srcPos=R.position(),P=A.tgtPos=S.position(),F=A.srcW=R.outerWidth(),B=A.srcH=R.outerHeight(),$=A.tgtW=S.outerWidth(),z=A.tgtH=S.outerHeight(),W=A.srcShape=r.nodeShapes[e.getNodeShape(R)],j=A.tgtShape=r.nodeShapes[e.getNodeShape(S)],K=A.srcCornerRadius=R.pstyle("corner-radius").value==="auto"?"auto":R.pstyle("corner-radius").pfValue,ie=A.tgtCornerRadius=S.pstyle("corner-radius").value==="auto"?"auto":S.pstyle("corner-radius").pfValue,Q=A.tgtRs=S._private.rscratch,ee=A.srcRs=R._private.rscratch;A.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var J=0;J0){var ae=a,ue=M0(ae,r1(r)),ce=M0(ae,r1(Z)),te=ue;if(ce2){var De=M0(ae,{x:Z[2],y:Z[3]});De0){var ne=s,ye=M0(ne,r1(r)),U=M0(ne,r1(ge)),Te=ye;if(U2){var se=M0(ne,{x:ge[2],y:ge[3]});se=g||L){v={cp:_,segment:E};break}}if(v)break}var C=v.cp,A=v.segment,I=(g-x)/A.length,D=A.t1-A.t0,k=m?A.t0+D*I:A.t1-D*I;k=Wx(0,k,1),e=i1(C.p0,C.p1,C.p2,k),p=_et(C.p0,C.p1,C.p2,k);break}case"straight":case"segments":case"haystack":{for(var R=0,S,O,N,P,F=n.allpts.length,B=0;B+3=g));B+=2);var $=g-O,z=$/S;z=Wx(0,z,1),e=Nje(N,P,z),p=u1e(N,P);break}}s("labelX",d,e.x),s("labelY",d,e.y),s("labelAutoAngle",d,p)}},"calculateEndProjection");h("source"),h("target"),this.applyLabelDimensions(t)}};Wc.applyLabelDimensions=function(t){this.applyPrefixedLabelDimensions(t),t.isEdge()&&(this.applyPrefixedLabelDimensions(t,"source"),this.applyPrefixedLabelDimensions(t,"target"))};Wc.applyPrefixedLabelDimensions=function(t,e){var r=t._private,n=this.getLabelText(t,e),i=this.calculateLabelDimensions(t,n),a=t.pstyle("line-height").pfValue,s=t.pstyle("text-wrap").strValue,l=Wl(r.rscratch,"labelWrapCachedLines",e)||[],u=s!=="wrap"?1:Math.max(l.length,1),h=i.height/u,f=h*a,d=i.width,p=i.height+(u-1)*(a-1)*h;wf(r.rstyle,"labelWidth",e,d),wf(r.rscratch,"labelWidth",e,d),wf(r.rstyle,"labelHeight",e,p),wf(r.rscratch,"labelHeight",e,p),wf(r.rscratch,"labelLineHeight",e,f)};Wc.getLabelText=function(t,e){var r=t._private,n=e?e+"-":"",i=t.pstyle(n+"label").strValue,a=t.pstyle("text-transform").value,s=o(function(j,K){return K?(wf(r.rscratch,j,e,K),K):Wl(r.rscratch,j,e)},"rscratch");if(!i)return"";a=="none"||(a=="uppercase"?i=i.toUpperCase():a=="lowercase"&&(i=i.toLowerCase()));var l=t.pstyle("text-wrap").value;if(l==="wrap"){var u=s("labelKey");if(u!=null&&s("labelWrapKey")===u)return s("labelWrapCachedText");for(var h="\u200B",f=i.split(` +`),d=t.pstyle("text-max-width").pfValue,p=t.pstyle("text-overflow-wrap").value,m=p==="anywhere",g=[],y=/[\s\u200b]+|$/g,v=0;vd){var T=x.matchAll(y),E="",L=0,C=Yme(T),A;try{for(C.s();!(A=C.n()).done;){var I=A.value,D=I[0],k=x.substring(L,I.index);L=I.index+D.length;var R=E.length===0?k:E+k+D,S=this.calculateLabelDimensions(t,R),O=S.width;O<=d?E+=k+D:(E&&g.push(E),E=k+D)}}catch(W){C.e(W)}finally{C.f()}E.match(/^[\s\u200b]+$/)||g.push(E)}else g.push(x)}s("labelWrapCachedLines",g),i=s("labelWrapCachedText",g.join(` +`)),s("labelWrapKey",u)}else if(l==="ellipsis"){var N=t.pstyle("text-max-width").pfValue,P="",F="\u2026",B=!1;if(this.calculateLabelDimensions(t,i).widthN)break;P+=i[$],$===i.length-1&&(B=!0)}return B||(P+=F),P}return i};Wc.getLabelJustification=function(t){var e=t.pstyle("text-justification").strValue,r=t.pstyle("text-halign").strValue;if(e==="auto")if(t.isNode())switch(r){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return e};Wc.calculateLabelDimensions=function(t,e){var r=this,n=r.cy.window(),i=n.document,a=z0(e,t._private.labelDimsKey),s=r.labelDimCache||(r.labelDimCache=[]),l=s[a];if(l!=null)return l;var u=0,h=t.pstyle("font-style").strValue,f=t.pstyle("font-size").pfValue,d=t.pstyle("font-family").strValue,p=t.pstyle("font-weight").strValue,m=this.labelCalcCanvas,g=this.labelCalcCanvasContext;if(!m){m=this.labelCalcCanvas=i.createElement("canvas"),g=this.labelCalcCanvasContext=m.getContext("2d");var y=m.style;y.position="absolute",y.left="-9999px",y.top="-9999px",y.zIndex="-1",y.visibility="hidden",y.pointerEvents="none"}g.font="".concat(h," ").concat(p," ").concat(f,"px ").concat(d);for(var v=0,x=0,b=e.split(` +`),w=0;w1&&arguments[1]!==void 0?arguments[1]:!0;if(e.merge(s),l)for(var u=0;u=t.desktopTapThreshold2}var Tt=i(X);Re&&(t.hoverData.tapholdCancelled=!0);var $e=o(function(){var zt=t.hoverData.dragDelta=t.hoverData.dragDelta||[];zt.length===0?(zt.push(me[0]),zt.push(me[1])):(zt[0]+=me[0],zt[1]+=me[1])},"updateDragDelta");he=!0,n(Ae,["mousemove","vmousemove","tapdrag"],X,{x:U[0],y:U[1]});var rt=o(function(){t.data.bgActivePosistion=void 0,t.hoverData.selecting||ge.emit({originalEvent:X,type:"boxstart",position:{x:U[0],y:U[1]}}),Ee[4]=1,t.hoverData.selecting=!0,t.redrawHint("select",!0),t.redraw()},"goIntoBoxMode");if(t.hoverData.which===3){if(Re){var ft={originalEvent:X,type:"cxtdrag",position:{x:U[0],y:U[1]}};Me?Me.emit(ft):ge.emit(ft),t.hoverData.cxtDragged=!0,(!t.hoverData.cxtOver||Ae!==t.hoverData.cxtOver)&&(t.hoverData.cxtOver&&t.hoverData.cxtOver.emit({originalEvent:X,type:"cxtdragout",position:{x:U[0],y:U[1]}}),t.hoverData.cxtOver=Ae,Ae&&Ae.emit({originalEvent:X,type:"cxtdragover",position:{x:U[0],y:U[1]}}))}}else if(t.hoverData.dragging){if(he=!0,ge.panningEnabled()&&ge.userPanningEnabled()){var kt;if(t.hoverData.justStartedPan){var er=t.hoverData.mdownPos;kt={x:(U[0]-er[0])*ne,y:(U[1]-er[1])*ne},t.hoverData.justStartedPan=!1}else kt={x:me[0]*ne,y:me[1]*ne};ge.panBy(kt),ge.emit("dragpan"),t.hoverData.dragged=!0}U=t.projectIntoViewport(X.clientX,X.clientY)}else if(Ee[4]==1&&(Me==null||Me.pannable())){if(Re){if(!t.hoverData.dragging&&ge.boxSelectionEnabled()&&(Tt||!ge.panningEnabled()||!ge.userPanningEnabled()))rt();else if(!t.hoverData.selecting&&ge.panningEnabled()&&ge.userPanningEnabled()){var dt=a(Me,t.hoverData.downs);dt&&(t.hoverData.dragging=!0,t.hoverData.justStartedPan=!0,Ee[4]=0,t.data.bgActivePosistion=r1(Te),t.redrawHint("select",!0),t.redraw())}Me&&Me.pannable()&&Me.active()&&Me.unactivate()}}else{if(Me&&Me.pannable()&&Me.active()&&Me.unactivate(),(!Me||!Me.grabbed())&&Ae!=Pe&&(Pe&&n(Pe,["mouseout","tapdragout"],X,{x:U[0],y:U[1]}),Ae&&n(Ae,["mouseover","tapdragover"],X,{x:U[0],y:U[1]}),t.hoverData.last=Ae),Me)if(Re){if(ge.boxSelectionEnabled()&&Tt)Me&&Me.grabbed()&&(v(We),Me.emit("freeon"),We.emit("free"),t.dragData.didDrag&&(Me.emit("dragfreeon"),We.emit("dragfree"))),rt();else if(Me&&Me.grabbed()&&t.nodeIsDraggable(Me)){var Xe=!t.dragData.didDrag;Xe&&t.redrawHint("eles",!0),t.dragData.didDrag=!0,t.hoverData.draggingEles||g(We,{inDragLayer:!0});var ct={x:0,y:0};if(xt(me[0])&&xt(me[1])&&(ct.x+=me[0],ct.y+=me[1],Xe)){var Lt=t.hoverData.dragDelta;Lt&&xt(Lt[0])&&xt(Lt[1])&&(ct.x+=Lt[0],ct.y+=Lt[1])}t.hoverData.draggingEles=!0,We.silentShift(ct).emit("position drag"),t.redrawHint("drag",!0),t.redraw()}}else $e();he=!0}if(Ee[2]=U[0],Ee[3]=U[1],he)return X.stopPropagation&&X.stopPropagation(),X.preventDefault&&X.preventDefault(),!1}},"mousemoveHandler"),!1);var I,D,k;t.registerBinding(e,"mouseup",o(function(X){if(!(t.hoverData.which===1&&X.which!==1&&t.hoverData.capture)){var fe=t.hoverData.capture;if(fe){t.hoverData.capture=!1;var he=t.cy,ge=t.projectIntoViewport(X.clientX,X.clientY),ne=t.selection,ye=t.findNearestElement(ge[0],ge[1],!0,!1),U=t.dragData.possibleDragElements,Te=t.hoverData.down,se=i(X);if(t.data.bgActivePosistion&&(t.redrawHint("select",!0),t.redraw()),t.hoverData.tapholdCancelled=!0,t.data.bgActivePosistion=void 0,Te&&Te.unactivate(),t.hoverData.which===3){var Ee={originalEvent:X,type:"cxttapend",position:{x:ge[0],y:ge[1]}};if(Te?Te.emit(Ee):he.emit(Ee),!t.hoverData.cxtDragged){var Ae={originalEvent:X,type:"cxttap",position:{x:ge[0],y:ge[1]}};Te?Te.emit(Ae):he.emit(Ae)}t.hoverData.cxtDragged=!1,t.hoverData.which=null}else if(t.hoverData.which===1){if(n(ye,["mouseup","tapend","vmouseup"],X,{x:ge[0],y:ge[1]}),!t.dragData.didDrag&&!t.hoverData.dragged&&!t.hoverData.selecting&&!t.hoverData.isOverThresholdDrag&&(n(Te,["click","tap","vclick"],X,{x:ge[0],y:ge[1]}),D=!1,X.timeStamp-k<=he.multiClickDebounceTime()?(I&&clearTimeout(I),D=!0,k=null,n(Te,["dblclick","dbltap","vdblclick"],X,{x:ge[0],y:ge[1]})):(I=setTimeout(function(){D||n(Te,["oneclick","onetap","voneclick"],X,{x:ge[0],y:ge[1]})},he.multiClickDebounceTime()),k=X.timeStamp)),Te==null&&!t.dragData.didDrag&&!t.hoverData.selecting&&!t.hoverData.dragged&&!i(X)&&(he.$(r).unselect(["tapunselect"]),U.length>0&&t.redrawHint("eles",!0),t.dragData.possibleDragElements=U=he.collection()),ye==Te&&!t.dragData.didDrag&&!t.hoverData.selecting&&ye!=null&&ye._private.selectable&&(t.hoverData.dragging||(he.selectionType()==="additive"||se?ye.selected()?ye.unselect(["tapunselect"]):ye.select(["tapselect"]):se||(he.$(r).unmerge(ye).unselect(["tapunselect"]),ye.select(["tapselect"]))),t.redrawHint("eles",!0)),t.hoverData.selecting){var Pe=he.collection(t.getAllInBox(ne[0],ne[1],ne[2],ne[3]));t.redrawHint("select",!0),Pe.length>0&&t.redrawHint("eles",!0),he.emit({type:"boxend",originalEvent:X,position:{x:ge[0],y:ge[1]}});var Me=o(function(Re){return Re.selectable()&&!Re.selected()},"eleWouldBeSelected");he.selectionType()==="additive"||se||he.$(r).unmerge(Pe).unselect(),Pe.emit("box").stdFilter(Me).select().emit("boxselect"),t.redraw()}if(t.hoverData.dragging&&(t.hoverData.dragging=!1,t.redrawHint("select",!0),t.redrawHint("eles",!0),t.redraw()),!ne[4]){t.redrawHint("drag",!0),t.redrawHint("eles",!0);var me=Te&&Te.grabbed();v(U),me&&(Te.emit("freeon"),U.emit("free"),t.dragData.didDrag&&(Te.emit("dragfreeon"),U.emit("dragfree")))}}ne[4]=0,t.hoverData.down=null,t.hoverData.cxtStarted=!1,t.hoverData.draggingEles=!1,t.hoverData.selecting=!1,t.hoverData.isOverThresholdDrag=!1,t.dragData.didDrag=!1,t.hoverData.dragged=!1,t.hoverData.dragDelta=[],t.hoverData.mdownPos=null,t.hoverData.mdownGPos=null,t.hoverData.which=null}}},"mouseupHandler"),!1);var R=o(function(X){if(!t.scrollingPage){var fe=t.cy,he=fe.zoom(),ge=fe.pan(),ne=t.projectIntoViewport(X.clientX,X.clientY),ye=[ne[0]*he+ge.x,ne[1]*he+ge.y];if(t.hoverData.draggingEles||t.hoverData.dragging||t.hoverData.cxtStarted||C()){X.preventDefault();return}if(fe.panningEnabled()&&fe.userPanningEnabled()&&fe.zoomingEnabled()&&fe.userZoomingEnabled()){X.preventDefault(),t.data.wheelZooming=!0,clearTimeout(t.data.wheelTimeout),t.data.wheelTimeout=setTimeout(function(){t.data.wheelZooming=!1,t.redrawHint("eles",!0),t.redraw()},150);var U;X.deltaY!=null?U=X.deltaY/-250:X.wheelDeltaY!=null?U=X.wheelDeltaY/1e3:U=X.wheelDelta/1e3,U=U*t.wheelSensitivity;var Te=X.deltaMode===1;Te&&(U*=33);var se=fe.zoom()*Math.pow(10,U);X.type==="gesturechange"&&(se=t.gestureStartZoom*X.scale),fe.zoom({level:se,renderedPosition:{x:ye[0],y:ye[1]}}),fe.emit(X.type==="gesturechange"?"pinchzoom":"scrollzoom")}}},"wheelHandler");t.registerBinding(t.container,"wheel",R,!0),t.registerBinding(e,"scroll",o(function(X){t.scrollingPage=!0,clearTimeout(t.scrollingPageTimeout),t.scrollingPageTimeout=setTimeout(function(){t.scrollingPage=!1},250)},"scrollHandler"),!0),t.registerBinding(t.container,"gesturestart",o(function(X){t.gestureStartZoom=t.cy.zoom(),t.hasTouchStarted||X.preventDefault()},"gestureStartHandler"),!0),t.registerBinding(t.container,"gesturechange",function(xe){t.hasTouchStarted||R(xe)},!0),t.registerBinding(t.container,"mouseout",o(function(X){var fe=t.projectIntoViewport(X.clientX,X.clientY);t.cy.emit({originalEvent:X,type:"mouseout",position:{x:fe[0],y:fe[1]}})},"mouseOutHandler"),!1),t.registerBinding(t.container,"mouseover",o(function(X){var fe=t.projectIntoViewport(X.clientX,X.clientY);t.cy.emit({originalEvent:X,type:"mouseover",position:{x:fe[0],y:fe[1]}})},"mouseOverHandler"),!1);var S,O,N,P,F,B,$,z,W,j,K,ie,Q,ee=o(function(X,fe,he,ge){return Math.sqrt((he-X)*(he-X)+(ge-fe)*(ge-fe))},"distance"),J=o(function(X,fe,he,ge){return(he-X)*(he-X)+(ge-fe)*(ge-fe)},"distanceSq"),H;t.registerBinding(t.container,"touchstart",H=o(function(X){if(t.hasTouchStarted=!0,!!A(X)){b(),t.touchData.capture=!0,t.data.bgActivePosistion=void 0;var fe=t.cy,he=t.touchData.now,ge=t.touchData.earlier;if(X.touches[0]){var ne=t.projectIntoViewport(X.touches[0].clientX,X.touches[0].clientY);he[0]=ne[0],he[1]=ne[1]}if(X.touches[1]){var ne=t.projectIntoViewport(X.touches[1].clientX,X.touches[1].clientY);he[2]=ne[0],he[3]=ne[1]}if(X.touches[2]){var ne=t.projectIntoViewport(X.touches[2].clientX,X.touches[2].clientY);he[4]=ne[0],he[5]=ne[1]}if(X.touches[1]){t.touchData.singleTouchMoved=!0,v(t.dragData.touchDragEles);var ye=t.findContainerClientCoords();W=ye[0],j=ye[1],K=ye[2],ie=ye[3],S=X.touches[0].clientX-W,O=X.touches[0].clientY-j,N=X.touches[1].clientX-W,P=X.touches[1].clientY-j,Q=0<=S&&S<=K&&0<=N&&N<=K&&0<=O&&O<=ie&&0<=P&&P<=ie;var U=fe.pan(),Te=fe.zoom();F=ee(S,O,N,P),B=J(S,O,N,P),$=[(S+N)/2,(O+P)/2],z=[($[0]-U.x)/Te,($[1]-U.y)/Te];var se=200,Ee=se*se;if(B=1){for(var gt=t.touchData.startPosition=[null,null,null,null,null,null],Et=0;Et=t.touchTapThreshold2}if(fe&&t.touchData.cxt){X.preventDefault();var gt=X.touches[0].clientX-W,Et=X.touches[0].clientY-j,vt=X.touches[1].clientX-W,Ye=X.touches[1].clientY-j,Tt=J(gt,Et,vt,Ye),$e=Tt/B,rt=150,ft=rt*rt,kt=1.5,er=kt*kt;if($e>=er||Tt>=ft){t.touchData.cxt=!1,t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var dt={originalEvent:X,type:"cxttapend",position:{x:ne[0],y:ne[1]}};t.touchData.start?(t.touchData.start.unactivate().emit(dt),t.touchData.start=null):ge.emit(dt)}}if(fe&&t.touchData.cxt){var dt={originalEvent:X,type:"cxtdrag",position:{x:ne[0],y:ne[1]}};t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.touchData.start?t.touchData.start.emit(dt):ge.emit(dt),t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxtDragged=!0;var Xe=t.findNearestElement(ne[0],ne[1],!0,!0);(!t.touchData.cxtOver||Xe!==t.touchData.cxtOver)&&(t.touchData.cxtOver&&t.touchData.cxtOver.emit({originalEvent:X,type:"cxtdragout",position:{x:ne[0],y:ne[1]}}),t.touchData.cxtOver=Xe,Xe&&Xe.emit({originalEvent:X,type:"cxtdragover",position:{x:ne[0],y:ne[1]}}))}else if(fe&&X.touches[2]&&ge.boxSelectionEnabled())X.preventDefault(),t.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,t.touchData.selecting||ge.emit({originalEvent:X,type:"boxstart",position:{x:ne[0],y:ne[1]}}),t.touchData.selecting=!0,t.touchData.didSelect=!0,he[4]=1,!he||he.length===0||he[0]===void 0?(he[0]=(ne[0]+ne[2]+ne[4])/3,he[1]=(ne[1]+ne[3]+ne[5])/3,he[2]=(ne[0]+ne[2]+ne[4])/3+1,he[3]=(ne[1]+ne[3]+ne[5])/3+1):(he[2]=(ne[0]+ne[2]+ne[4])/3,he[3]=(ne[1]+ne[3]+ne[5])/3),t.redrawHint("select",!0),t.redraw();else if(fe&&X.touches[1]&&!t.touchData.didSelect&&ge.zoomingEnabled()&&ge.panningEnabled()&&ge.userZoomingEnabled()&&ge.userPanningEnabled()){X.preventDefault(),t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var ct=t.dragData.touchDragEles;if(ct){t.redrawHint("drag",!0);for(var Lt=0;Lt0&&!t.hoverData.draggingEles&&!t.swipePanning&&t.data.bgActivePosistion!=null&&(t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.redraw())}},"touchmoveHandler"),!1);var Z;t.registerBinding(e,"touchcancel",Z=o(function(X){var fe=t.touchData.start;t.touchData.capture=!1,fe&&fe.unactivate()},"touchcancelHandler"));var ae,ue,ce,te;if(t.registerBinding(e,"touchend",ae=o(function(X){var fe=t.touchData.start,he=t.touchData.capture;if(he)X.touches.length===0&&(t.touchData.capture=!1),X.preventDefault();else return;var ge=t.selection;t.swipePanning=!1,t.hoverData.draggingEles=!1;var ne=t.cy,ye=ne.zoom(),U=t.touchData.now,Te=t.touchData.earlier;if(X.touches[0]){var se=t.projectIntoViewport(X.touches[0].clientX,X.touches[0].clientY);U[0]=se[0],U[1]=se[1]}if(X.touches[1]){var se=t.projectIntoViewport(X.touches[1].clientX,X.touches[1].clientY);U[2]=se[0],U[3]=se[1]}if(X.touches[2]){var se=t.projectIntoViewport(X.touches[2].clientX,X.touches[2].clientY);U[4]=se[0],U[5]=se[1]}fe&&fe.unactivate();var Ee;if(t.touchData.cxt){if(Ee={originalEvent:X,type:"cxttapend",position:{x:U[0],y:U[1]}},fe?fe.emit(Ee):ne.emit(Ee),!t.touchData.cxtDragged){var Ae={originalEvent:X,type:"cxttap",position:{x:U[0],y:U[1]}};fe?fe.emit(Ae):ne.emit(Ae)}t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxt=!1,t.touchData.start=null,t.redraw();return}if(!X.touches[2]&&ne.boxSelectionEnabled()&&t.touchData.selecting){t.touchData.selecting=!1;var Pe=ne.collection(t.getAllInBox(ge[0],ge[1],ge[2],ge[3]));ge[0]=void 0,ge[1]=void 0,ge[2]=void 0,ge[3]=void 0,ge[4]=0,t.redrawHint("select",!0),ne.emit({type:"boxend",originalEvent:X,position:{x:U[0],y:U[1]}});var Me=o(function(ft){return ft.selectable()&&!ft.selected()},"eleWouldBeSelected");Pe.emit("box").stdFilter(Me).select().emit("boxselect"),Pe.nonempty()&&t.redrawHint("eles",!0),t.redraw()}if(fe?.unactivate(),X.touches[2])t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);else if(!X.touches[1]){if(!X.touches[0]){if(!X.touches[0]){t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var me=t.dragData.touchDragEles;if(fe!=null){var We=fe._private.grabbed;v(me),t.redrawHint("drag",!0),t.redrawHint("eles",!0),We&&(fe.emit("freeon"),me.emit("free"),t.dragData.didDrag&&(fe.emit("dragfreeon"),me.emit("dragfree"))),n(fe,["touchend","tapend","vmouseup","tapdragout"],X,{x:U[0],y:U[1]}),fe.unactivate(),t.touchData.start=null}else{var Re=t.findNearestElement(U[0],U[1],!0,!0);n(Re,["touchend","tapend","vmouseup","tapdragout"],X,{x:U[0],y:U[1]})}var tt=t.touchData.startPosition[0]-U[0],gt=tt*tt,Et=t.touchData.startPosition[1]-U[1],vt=Et*Et,Ye=gt+vt,Tt=Ye*ye*ye;t.touchData.singleTouchMoved||(fe||ne.$(":selected").unselect(["tapunselect"]),n(fe,["tap","vclick"],X,{x:U[0],y:U[1]}),ue=!1,X.timeStamp-te<=ne.multiClickDebounceTime()?(ce&&clearTimeout(ce),ue=!0,te=null,n(fe,["dbltap","vdblclick"],X,{x:U[0],y:U[1]})):(ce=setTimeout(function(){ue||n(fe,["onetap","voneclick"],X,{x:U[0],y:U[1]})},ne.multiClickDebounceTime()),te=X.timeStamp)),fe!=null&&!t.dragData.didDrag&&fe._private.selectable&&Tt"u"){var De=[],oe=o(function(X){return{clientX:X.clientX,clientY:X.clientY,force:1,identifier:X.pointerId,pageX:X.pageX,pageY:X.pageY,radiusX:X.width/2,radiusY:X.height/2,screenX:X.screenX,screenY:X.screenY,target:X.target}},"makeTouch"),ke=o(function(X){return{event:X,touch:oe(X)}},"makePointer"),Fe=o(function(X){De.push(ke(X))},"addPointer"),Be=o(function(X){for(var fe=0;fe0)return W[0]}return null},"getCurveT"),g=Object.keys(p),y=0;y0?m:pge(a,s,e,r,n,i,l,u)},"intersectLine"),checkPoint:o(function(e,r,n,i,a,s,l,u){u=u==="auto"?$0(i,a):u;var h=2*u;if(ju(e,r,this.points,s,l,i,a-h,[0,-1],n)||ju(e,r,this.points,s,l,i-h,a,[0,-1],n))return!0;var f=i/2+2*n,d=a/2+2*n,p=[s-f,l-d,s-f,l,s+f,l,s+f,l-d];return!!(Gs(e,r,p)||B0(e,r,h,h,s+i/2-u,l+a/2-u,n)||B0(e,r,h,h,s-i/2+u,l+a/2-u,n))},"checkPoint")}};Qu.registerNodeShapes=function(){var t=this.nodeShapes={},e=this;this.generateEllipse(),this.generatePolygon("triangle",ls(3,0)),this.generateRoundPolygon("round-triangle",ls(3,0)),this.generatePolygon("rectangle",ls(4,0)),t.square=t.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var r=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",r),this.generateRoundPolygon("round-diamond",r)}this.generatePolygon("pentagon",ls(5,0)),this.generateRoundPolygon("round-pentagon",ls(5,0)),this.generatePolygon("hexagon",ls(6,0)),this.generateRoundPolygon("round-hexagon",ls(6,0)),this.generatePolygon("heptagon",ls(7,0)),this.generateRoundPolygon("round-heptagon",ls(7,0)),this.generatePolygon("octagon",ls(8,0)),this.generateRoundPolygon("round-octagon",ls(8,0));var n=new Array(20);{var i=BP(5,0),a=BP(5,Math.PI/5),s=.5*(3-Math.sqrt(5));s*=1.57;for(var l=0;l=e.deqFastCost*_)break}else if(h){if(b>=e.deqCost*m||b>=e.deqAvgCost*p)break}else if(w>=e.deqNoDrawCost*IP)break;var T=e.deq(n,v,y);if(T.length>0)for(var E=0;E0&&(e.onDeqd(n,g),!h&&e.shouldRedraw(n,g,v,y)&&a())},"dequeue"),l=e.priority||iB;i.beforeRender(s,l(n))}},"setupDequeueingImpl")},"setupDequeueing")},Det=function(){function t(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:g6;JP(this,t),this.idsByKey=new Uc,this.keyForId=new Uc,this.cachesByLvl=new Uc,this.lvls=[],this.getKey=e,this.doesEleInvalidateKey=r}return o(t,"ElementTextureCacheLookup"),eB(t,[{key:"getIdsFor",value:o(function(r){r==null&&hi("Can not get id list for null key");var n=this.idsByKey,i=this.idsByKey.get(r);return i||(i=new f1,n.set(r,i)),i},"getIdsFor")},{key:"addIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).add(n)},"addIdForKey")},{key:"deleteIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).delete(n)},"deleteIdForKey")},{key:"getNumberOfIdsForKey",value:o(function(r){return r==null?0:this.getIdsFor(r).size},"getNumberOfIdsForKey")},{key:"updateKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);this.deleteIdForKey(i,n),this.addIdForKey(a,n),this.keyForId.set(n,a)},"updateKeyMappingFor")},{key:"deleteKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteIdForKey(i,n),this.keyForId.delete(n)},"deleteKeyMappingFor")},{key:"keyHasChangedFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);return i!==a},"keyHasChangedFor")},{key:"isInvalid",value:o(function(r){return this.keyHasChangedFor(r)||this.doesEleInvalidateKey(r)},"isInvalid")},{key:"getCachesAt",value:o(function(r){var n=this.cachesByLvl,i=this.lvls,a=n.get(r);return a||(a=new Uc,n.set(r,a),i.push(r)),a},"getCachesAt")},{key:"getCache",value:o(function(r,n){return this.getCachesAt(n).get(r)},"getCache")},{key:"get",value:o(function(r,n){var i=this.getKey(r),a=this.getCache(i,n);return a!=null&&this.updateKeyMappingFor(r),a},"get")},{key:"getForCachedKey",value:o(function(r,n){var i=this.keyForId.get(r.id()),a=this.getCache(i,n);return a},"getForCachedKey")},{key:"hasCache",value:o(function(r,n){return this.getCachesAt(n).has(r)},"hasCache")},{key:"has",value:o(function(r,n){var i=this.getKey(r);return this.hasCache(i,n)},"has")},{key:"setCache",value:o(function(r,n,i){i.key=r,this.getCachesAt(n).set(r,i)},"setCache")},{key:"set",value:o(function(r,n,i){var a=this.getKey(r);this.setCache(a,n,i),this.updateKeyMappingFor(r)},"set")},{key:"deleteCache",value:o(function(r,n){this.getCachesAt(n).delete(r)},"deleteCache")},{key:"delete",value:o(function(r,n){var i=this.getKey(r);this.deleteCache(i,n)},"_delete")},{key:"invalidateKey",value:o(function(r){var n=this;this.lvls.forEach(function(i){return n.deleteCache(r,i)})},"invalidateKey")},{key:"invalidate",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteKeyMappingFor(r);var a=this.doesEleInvalidateKey(r);return a&&this.invalidateKey(i),a||this.getNumberOfIdsForKey(i)===0},"invalidate")}]),t}(),Pme=25,i6=50,d6=-4,jP=3,Net=7.99,Ret=8,Met=1024,Iet=1024,Oet=1024,Pet=.2,Bet=.8,Fet=10,zet=.15,Get=.1,$et=.9,Vet=.9,Uet=100,Het=1,n1={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},Wet=wa({getKey:null,doesEleInvalidateKey:g6,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:sge,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),Fx=o(function(e,r){var n=this;n.renderer=e,n.onDequeues=[];var i=Wet(r);ir(n,i),n.lookup=new Det(i.getKey,i.doesEleInvalidateKey),n.setupDequeueing()},"ElementTextureCache"),qi=Fx.prototype;qi.reasons=n1;qi.getTextureQueue=function(t){var e=this;return e.eleImgCaches=e.eleImgCaches||{},e.eleImgCaches[t]=e.eleImgCaches[t]||[]};qi.getRetiredTextureQueue=function(t){var e=this,r=e.eleImgCaches.retired=e.eleImgCaches.retired||{},n=r[t]=r[t]||[];return n};qi.getElementQueue=function(){var t=this,e=t.eleCacheQueue=t.eleCacheQueue||new tb(function(r,n){return n.reqs-r.reqs});return e};qi.getElementKeyToQueue=function(){var t=this,e=t.eleKeyToCacheQueue=t.eleKeyToCacheQueue||{};return e};qi.getElement=function(t,e,r,n,i){var a=this,s=this.renderer,l=s.cy.zoom(),u=this.lookup;if(!e||e.w===0||e.h===0||isNaN(e.w)||isNaN(e.h)||!t.visible()||t.removed()||!a.allowEdgeTxrCaching&&t.isEdge()||!a.allowParentTxrCaching&&t.isParent())return null;if(n==null&&(n=Math.ceil(sB(l*r))),n=Net||n>jP)return null;var h=Math.pow(2,n),f=e.h*h,d=e.w*h,p=s.eleTextBiggerThanMin(t,h);if(!this.isVisible(t,p))return null;var m=u.get(t,n);if(m&&m.invalidated&&(m.invalidated=!1,m.texture.invalidatedWidth-=m.width),m)return m;var g;if(f<=Pme?g=Pme:f<=i6?g=i6:g=Math.ceil(f/i6)*i6,f>Oet||d>Iet)return null;var y=a.getTextureQueue(g),v=y[y.length-2],x=o(function(){return a.recycleTexture(g,d)||a.addTexture(g,d)},"addNewTxr");v||(v=y[y.length-1]),v||(v=x()),v.width-v.usedWidthn;D--)A=a.getElement(t,e,r,D,n1.downscale);I()}else return a.queueElement(t,E.level-1),E;else{var k;if(!w&&!_&&!T)for(var R=n-1;R>=d6;R--){var S=u.get(t,R);if(S){k=S;break}}if(b(k))return a.queueElement(t,n),k;v.context.translate(v.usedWidth,0),v.context.scale(h,h),this.drawElement(v.context,t,e,p,!1),v.context.scale(1/h,1/h),v.context.translate(-v.usedWidth,0)}return m={x:v.usedWidth,texture:v,level:n,scale:h,width:d,height:f,scaledLabelShown:p},v.usedWidth+=Math.ceil(d+Ret),v.eleCaches.push(m),u.set(t,n,m),a.checkTextureFullness(v),m};qi.invalidateElements=function(t){for(var e=0;e=Pet*t.width&&this.retireTexture(t)};qi.checkTextureFullness=function(t){var e=this,r=e.getTextureQueue(t.height);t.usedWidth/t.width>Bet&&t.fullnessChecks>=Fet?Cf(r,t):t.fullnessChecks++};qi.retireTexture=function(t){var e=this,r=t.height,n=e.getTextureQueue(r),i=this.lookup;Cf(n,t),t.retired=!0;for(var a=t.eleCaches,s=0;s=e)return s.retired=!1,s.usedWidth=0,s.invalidatedWidth=0,s.fullnessChecks=0,aB(s.eleCaches),s.context.setTransform(1,0,0,1,0,0),s.context.clearRect(0,0,s.width,s.height),Cf(i,s),n.push(s),s}};qi.queueElement=function(t,e){var r=this,n=r.getElementQueue(),i=r.getElementKeyToQueue(),a=this.getKey(t),s=i[a];if(s)s.level=Math.max(s.level,e),s.eles.merge(t),s.reqs++,n.updateItem(s);else{var l={eles:t.spawn().merge(t),level:e,reqs:1,key:a};n.push(l),i[a]=l}};qi.dequeue=function(t){for(var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=[],a=e.lookup,s=0;s0;s++){var l=r.pop(),u=l.key,h=l.eles[0],f=a.hasCache(h,l.level);if(n[u]=null,f)continue;i.push(l);var d=e.getBoundingBox(h);e.getElement(h,d,t,l.level,n1.dequeue)}return i};qi.removeFromQueue=function(t){var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=this.getKey(t),a=n[i];a!=null&&(a.eles.length===1?(a.reqs=nB,r.updateItem(a),r.pop(),n[i]=null):a.eles.unmerge(t))};qi.onDequeue=function(t){this.onDequeues.push(t)};qi.offDequeue=function(t){Cf(this.onDequeues,t)};qi.setupDequeueing=m1e.setupDequeueing({deqRedrawThreshold:Uet,deqCost:zet,deqAvgCost:Get,deqNoDrawCost:$et,deqFastCost:Vet,deq:o(function(e,r,n){return e.dequeue(r,n)},"deq"),onDeqd:o(function(e,r){for(var n=0;n=qet||r>E6)return null}n.validateLayersElesOrdering(r,t);var u=n.layersByLevel,h=Math.pow(2,r),f=u[r]=u[r]||[],d,p=n.levelIsComplete(r,t),m,g=o(function(){var I=o(function(O){if(n.validateLayersElesOrdering(O,t),n.levelIsComplete(O,t))return m=u[O],!0},"canUseAsTmpLvl"),D=o(function(O){if(!m)for(var N=r+O;Gx<=N&&N<=E6&&!I(N);N+=O);},"checkLvls");D(1),D(-1);for(var k=f.length-1;k>=0;k--){var R=f[k];R.invalid&&Cf(f,R)}},"checkTempLevels");if(!p)g();else return f;var y=o(function(){if(!d){d=$s();for(var I=0;Ittt)return null;var R=n.makeLayer(d,r);if(D!=null){var S=f.indexOf(D)+1;f.splice(S,0,R)}else(I.insert===void 0||I.insert)&&f.unshift(R);return R},"makeLayer");if(n.skipping&&!l)return null;for(var x=null,b=t.length/Yet,w=!l,_=0;_=b||!dge(x.bb,T.boundingBox()))&&(x=v({insert:!0,after:x}),!x))return null;m||w?n.queueLayer(x,T):n.drawEleInLayer(x,T,r,e),x.eles.push(T),L[r]=x}return m||(w?null:f)};Ta.getEleLevelForLayerLevel=function(t,e){return t};Ta.drawEleInLayer=function(t,e,r,n){var i=this,a=this.renderer,s=t.context,l=e.boundingBox();l.w===0||l.h===0||!e.visible()||(r=i.getEleLevelForLayerLevel(r,n),a.setImgSmoothing(s,!1),a.drawCachedElement(s,e,null,null,r,rtt),a.setImgSmoothing(s,!0))};Ta.levelIsComplete=function(t,e){var r=this,n=r.layersByLevel[t];if(!n||n.length===0)return!1;for(var i=0,a=0;a0||s.invalid)return!1;i+=s.eles.length}return i===e.length};Ta.validateLayersElesOrdering=function(t,e){var r=this.layersByLevel[t];if(r)for(var n=0;n0){e=!0;break}}return e};Ta.invalidateElements=function(t){var e=this;t.length!==0&&(e.lastInvalidationTime=Xu(),!(t.length===0||!e.haveLayers())&&e.updateElementsInLayers(t,o(function(n,i,a){e.invalidateLayer(n)},"invalAssocLayers")))};Ta.invalidateLayer=function(t){if(this.lastInvalidationTime=Xu(),!t.invalid){var e=t.level,r=t.eles,n=this.layersByLevel[e];Cf(n,t),t.elesQueue=[],t.invalid=!0,t.replacement&&(t.replacement.invalid=!0);for(var i=0;i3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l=e._private.rscratch;if(!(a&&!e.visible())&&!(l.badLine||l.allpts==null||isNaN(l.allpts[0]))){var u;r&&(u=r,t.translate(-u.x1,-u.y1));var h=a?e.pstyle("opacity").value:1,f=a?e.pstyle("line-opacity").value:1,d=e.pstyle("curve-style").value,p=e.pstyle("line-style").value,m=e.pstyle("width").pfValue,g=e.pstyle("line-cap").value,y=e.pstyle("line-outline-width").value,v=e.pstyle("line-outline-color").value,x=h*f,b=h*f,w=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;d==="straight-triangle"?(s.eleStrokeStyle(t,e,O),s.drawEdgeTrianglePath(e,t,l.allpts)):(t.lineWidth=m,t.lineCap=g,s.eleStrokeStyle(t,e,O),s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLine"),_=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;if(t.lineWidth=m+y,t.lineCap=g,y>0)s.colorStrokeStyle(t,v[0],v[1],v[2],O);else{t.lineCap="butt";return}d==="straight-triangle"?s.drawEdgeTrianglePath(e,t,l.allpts):(s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLineOutline"),T=o(function(){i&&s.drawEdgeOverlay(t,e)},"drawOverlay"),E=o(function(){i&&s.drawEdgeUnderlay(t,e)},"drawUnderlay"),L=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b;s.drawArrowheads(t,e,O)},"drawArrows"),C=o(function(){s.drawElementText(t,e,null,n)},"drawText");t.lineJoin="round";var A=e.pstyle("ghost").value==="yes";if(A){var I=e.pstyle("ghost-offset-x").pfValue,D=e.pstyle("ghost-offset-y").pfValue,k=e.pstyle("ghost-opacity").value,R=x*k;t.translate(I,D),w(R),L(R),t.translate(-I,-D)}else _();E(),w(),L(),T(),C(),r&&t.translate(u.x1,u.y1)}};v1e=o(function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(r,n){if(n.visible()){var i=n.pstyle("".concat(e,"-opacity")).value;if(i!==0){var a=this,s=a.usePaths(),l=n._private.rscratch,u=n.pstyle("".concat(e,"-padding")).pfValue,h=2*u,f=n.pstyle("".concat(e,"-color")).value;r.lineWidth=h,l.edgeType==="self"&&!s?r.lineCap="butt":r.lineCap="round",a.colorStrokeStyle(r,f[0],f[1],f[2],i),a.drawEdgePath(n,r,l.allpts,"solid")}}}},"drawEdgeOverlayUnderlay");Zu.drawEdgeOverlay=v1e("overlay");Zu.drawEdgeUnderlay=v1e("underlay");Zu.drawEdgePath=function(t,e,r,n){var i=t._private.rscratch,a=e,s,l=!1,u=this.usePaths(),h=t.pstyle("line-dash-pattern").pfValue,f=t.pstyle("line-dash-offset").pfValue;if(u){var d=r.join("$"),p=i.pathCacheKey&&i.pathCacheKey===d;p?(s=e=i.pathCache,l=!0):(s=e=new Path2D,i.pathCacheKey=d,i.pathCache=s)}if(a.setLineDash)switch(n){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(h),a.lineDashOffset=f;break;case"solid":a.setLineDash([]);break}if(!l&&!i.badLine)switch(e.beginPath&&e.beginPath(),e.moveTo(r[0],r[1]),i.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var m=2;m+35&&arguments[5]!==void 0?arguments[5]:!0,s=this;if(n==null){if(a&&!s.eleTextBiggerThanMin(e))return}else if(n===!1)return;if(e.isNode()){var l=e.pstyle("label");if(!l||!l.value)return;var u=s.getLabelJustification(e);t.textAlign=u,t.textBaseline="bottom"}else{var h=e.element()._private.rscratch.badLine,f=e.pstyle("label"),d=e.pstyle("source-label"),p=e.pstyle("target-label");if(h||(!f||!f.value)&&(!d||!d.value)&&(!p||!p.value))return;t.textAlign="center",t.textBaseline="bottom"}var m=!r,g;r&&(g=r,t.translate(-g.x1,-g.y1)),i==null?(s.drawText(t,e,null,m,a),e.isEdge()&&(s.drawText(t,e,"source",m,a),s.drawText(t,e,"target",m,a))):s.drawText(t,e,i,m,a),r&&t.translate(g.x1,g.y1)};Y0.getFontCache=function(t){var e;this.fontCaches=this.fontCaches||[];for(var r=0;r2&&arguments[2]!==void 0?arguments[2]:!0,n=e.pstyle("font-style").strValue,i=e.pstyle("font-size").pfValue+"px",a=e.pstyle("font-family").strValue,s=e.pstyle("font-weight").strValue,l=r?e.effectiveOpacity()*e.pstyle("text-opacity").value:1,u=e.pstyle("text-outline-opacity").value*l,h=e.pstyle("color").value,f=e.pstyle("text-outline-color").value;t.font=n+" "+s+" "+i+" "+a,t.lineJoin="round",this.colorFillStyle(t,h[0],h[1],h[2],l),this.colorStrokeStyle(t,f[0],f[1],f[2],u)};o(PP,"roundRect");Y0.getTextAngle=function(t,e){var r,n=t._private,i=n.rscratch,a=e?e+"-":"",s=t.pstyle(a+"text-rotation"),l=Wl(i,"labelAngle",e);return s.strValue==="autorotate"?r=t.isEdge()?l:0:s.strValue==="none"?r=0:r=s.pfValue,r};Y0.drawText=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=e._private,s=a.rscratch,l=i?e.effectiveOpacity():1;if(!(i&&(l===0||e.pstyle("text-opacity").value===0))){r==="main"&&(r=null);var u=Wl(s,"labelX",r),h=Wl(s,"labelY",r),f,d,p=this.getLabelText(e,r);if(p!=null&&p!==""&&!isNaN(u)&&!isNaN(h)){this.setupTextStyle(t,e,i);var m=r?r+"-":"",g=Wl(s,"labelWidth",r),y=Wl(s,"labelHeight",r),v=e.pstyle(m+"text-margin-x").pfValue,x=e.pstyle(m+"text-margin-y").pfValue,b=e.isEdge(),w=e.pstyle("text-halign").value,_=e.pstyle("text-valign").value;b&&(w="center",_="center"),u+=v,h+=x;var T;switch(n?T=this.getTextAngle(e,r):T=0,T!==0&&(f=u,d=h,t.translate(f,d),t.rotate(T),u=0,h=0),_){case"top":break;case"center":h+=y/2;break;case"bottom":h+=y;break}var E=e.pstyle("text-background-opacity").value,L=e.pstyle("text-border-opacity").value,C=e.pstyle("text-border-width").pfValue,A=e.pstyle("text-background-padding").pfValue,I=e.pstyle("text-background-shape").strValue,D=I.indexOf("round")===0,k=2;if(E>0||C>0&&L>0){var R=u-A;switch(w){case"left":R-=g;break;case"center":R-=g/2;break}var S=h-y-A,O=g+2*A,N=y+2*A;if(E>0){var P=t.fillStyle,F=e.pstyle("text-background-color").value;t.fillStyle="rgba("+F[0]+","+F[1]+","+F[2]+","+E*l+")",D?PP(t,R,S,O,N,k):t.fillRect(R,S,O,N),t.fillStyle=P}if(C>0&&L>0){var B=t.strokeStyle,$=t.lineWidth,z=e.pstyle("text-border-color").value,W=e.pstyle("text-border-style").value;if(t.strokeStyle="rgba("+z[0]+","+z[1]+","+z[2]+","+L*l+")",t.lineWidth=C,t.setLineDash)switch(W){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"double":t.lineWidth=C/4,t.setLineDash([]);break;case"solid":t.setLineDash([]);break}if(D?PP(t,R,S,O,N,k,"stroke"):t.strokeRect(R,S,O,N),W==="double"){var j=C/2;D?PP(t,R+j,S+j,O-j*2,N-j*2,k,"stroke"):t.strokeRect(R+j,S+j,O-j*2,N-j*2)}t.setLineDash&&t.setLineDash([]),t.lineWidth=$,t.strokeStyle=B}}var K=2*e.pstyle("text-outline-width").pfValue;if(K>0&&(t.lineWidth=K),e.pstyle("text-wrap").value==="wrap"){var ie=Wl(s,"labelWrapCachedLines",r),Q=Wl(s,"labelLineHeight",r),ee=g/2,J=this.getLabelJustification(e);switch(J==="auto"||(w==="left"?J==="left"?u+=-g:J==="center"&&(u+=-ee):w==="center"?J==="left"?u+=-ee:J==="right"&&(u+=ee):w==="right"&&(J==="center"?u+=ee:J==="right"&&(u+=g))),_){case"top":h-=(ie.length-1)*Q;break;case"center":case"bottom":h-=(ie.length-1)*Q;break}for(var H=0;H0&&t.strokeText(ie[H],u,h),t.fillText(ie[H],u,h),h+=Q}else K>0&&t.strokeText(p,u,h),t.fillText(p,u,h);T!==0&&(t.rotate(-T),t.translate(-f,-d))}}};w1={};w1.drawNode=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l,u,h=e._private,f=h.rscratch,d=e.position();if(!(!xt(d.x)||!xt(d.y))&&!(a&&!e.visible())){var p=a?e.effectiveOpacity():1,m=s.usePaths(),g,y=!1,v=e.padding();l=e.width()+2*v,u=e.height()+2*v;var x;r&&(x=r,t.translate(-x.x1,-x.y1));for(var b=e.pstyle("background-image"),w=b.value,_=new Array(w.length),T=new Array(w.length),E=0,L=0;L0&&arguments[0]!==void 0?arguments[0]:R;s.eleFillStyle(t,e,ye)},"setupShapeColor"),H=o(function(){var ye=arguments.length>0&&arguments[0]!==void 0?arguments[0]:z;s.colorStrokeStyle(t,S[0],S[1],S[2],ye)},"setupBorderColor"),q=o(function(){var ye=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ie;s.colorStrokeStyle(t,j[0],j[1],j[2],ye)},"setupOutlineColor"),Z=o(function(ye,U,Te,se){var Ee=s.nodePathCache=s.nodePathCache||[],Ae=age(Te==="polygon"?Te+","+se.join(","):Te,""+U,""+ye,""+ee),Pe=Ee[Ae],Me,me=!1;return Pe!=null?(Me=Pe,me=!0,f.pathCache=Me):(Me=new Path2D,Ee[Ae]=f.pathCache=Me),{path:Me,cacheHit:me}},"getPath"),ae=e.pstyle("shape").strValue,ue=e.pstyle("shape-polygon-points").pfValue;if(m){t.translate(d.x,d.y);var ce=Z(l,u,ae,ue);g=ce.path,y=ce.cacheHit}var te=o(function(){if(!y){var ye=d;m&&(ye={x:0,y:0}),s.nodeShapes[s.getNodeShape(e)].draw(g||t,ye.x,ye.y,l,u,ee,f)}m?t.fill(g):t.fill()},"drawShape"),De=o(function(){for(var ye=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,U=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,Te=h.backgrounding,se=0,Ee=0;Ee0&&arguments[0]!==void 0?arguments[0]:!1,U=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p;s.hasPie(e)&&(s.drawPie(t,e,U),ye&&(m||s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,ee,f)))},"drawPie"),ke=o(function(){var ye=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,U=(D>0?D:-D)*ye,Te=D>0?0:255;D!==0&&(s.colorFillStyle(t,Te,Te,Te,U),m?t.fill(g):t.fill())},"darken"),Fe=o(function(){if(k>0){if(t.lineWidth=k,t.lineCap=P,t.lineJoin=N,t.setLineDash)switch(O){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash(B),t.lineDashOffset=$;break;case"solid":case"double":t.setLineDash([]);break}if(F!=="center"){if(t.save(),t.lineWidth*=2,F==="inside")m?t.clip(g):t.clip();else{var ye=new Path2D;ye.rect(-l/2-k,-u/2-k,l+2*k,u+2*k),ye.addPath(g),t.clip(ye,"evenodd")}m?t.stroke(g):t.stroke(),t.restore()}else m?t.stroke(g):t.stroke();if(O==="double"){t.lineWidth=k/3;var U=t.globalCompositeOperation;t.globalCompositeOperation="destination-out",m?t.stroke(g):t.stroke(),t.globalCompositeOperation=U}t.setLineDash&&t.setLineDash([])}},"drawBorder"),Be=o(function(){if(W>0){if(t.lineWidth=W,t.lineCap="butt",t.setLineDash)switch(K){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"solid":case"double":t.setLineDash([]);break}var ye=d;m&&(ye={x:0,y:0});var U=s.getNodeShape(e),Te=k;F==="inside"&&(Te=0),F==="outside"&&(Te*=2);var se=(l+Te+(W+Q))/l,Ee=(u+Te+(W+Q))/u,Ae=l*se,Pe=u*Ee,Me=s.nodeShapes[U].points,me;if(m){var We=Z(Ae,Pe,U,Me);me=We.path}if(U==="ellipse")s.drawEllipsePath(me||t,ye.x,ye.y,Ae,Pe);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(U)){var Re=0,tt=0,gt=0;U==="round-diamond"?Re=(Te+Q+W)*1.4:U==="round-heptagon"?(Re=(Te+Q+W)*1.075,gt=-(Te/2+Q+W)/35):U==="round-hexagon"?Re=(Te+Q+W)*1.12:U==="round-pentagon"?(Re=(Te+Q+W)*1.13,gt=-(Te/2+Q+W)/15):U==="round-tag"?(Re=(Te+Q+W)*1.12,tt=(Te/2+W+Q)*.07):U==="round-triangle"&&(Re=(Te+Q+W)*(Math.PI/2),gt=-(Te+Q/2+W)/Math.PI),Re!==0&&(se=(l+Re)/l,Ae=l*se,["round-hexagon","round-tag"].includes(U)||(Ee=(u+Re)/u,Pe=u*Ee)),ee=ee==="auto"?gge(Ae,Pe):ee;for(var Et=Ae/2,vt=Pe/2,Ye=ee+(Te+W+Q)/2,Tt=new Array(Me.length/2),$e=new Array(Me.length/2),rt=0;rt0){if(i=i||n.position(),a==null||s==null){var m=n.padding();a=n.width()+2*m,s=n.height()+2*m}l.colorFillStyle(r,f[0],f[1],f[2],h),l.nodeShapes[d].draw(r,i.x,i.y,a+u*2,s+u*2,p),r.fill()}}}},"drawNodeOverlayUnderlay");w1.drawNodeOverlay=x1e("overlay");w1.drawNodeUnderlay=x1e("underlay");w1.hasPie=function(t){return t=t[0],t._private.hasPie};w1.drawPie=function(t,e,r,n){e=e[0],n=n||e.position();var i=e.cy().style(),a=e.pstyle("pie-size"),s=n.x,l=n.y,u=e.width(),h=e.height(),f=Math.min(u,h)/2,d=0,p=this.usePaths();p&&(s=0,l=0),a.units==="%"?f=f*a.pfValue:a.pfValue!==void 0&&(f=a.pfValue/2);for(var m=1;m<=i.pieBackgroundN;m++){var g=e.pstyle("pie-"+m+"-background-size").value,y=e.pstyle("pie-"+m+"-background-color").value,v=e.pstyle("pie-"+m+"-background-opacity").value*r,x=g/100;x+d>1&&(x=1-d);var b=1.5*Math.PI+2*Math.PI*d,w=2*Math.PI*x,_=b+w;g===0||d>=1||d+x>1||(t.beginPath(),t.moveTo(s,l),t.arc(s,l,f,b,_),t.closePath(),this.colorFillStyle(t,y[0],y[1],y[2],v),t.fill(),d+=x)}};mo={},dtt=100;mo.getPixelRatio=function(){var t=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var e=this.cy.window(),r=t.backingStorePixelRatio||t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return(e.devicePixelRatio||1)/r};mo.paintCache=function(t){for(var e=this.paintCaches=this.paintCaches||[],r=!0,n,i=0;is.minMbLowQualFrames&&(s.motionBlurPxRatio=s.mbPxRBlurry)),s.clearingMotionBlur&&(s.motionBlurPxRatio=1),s.textureDrawLastFrame&&!d&&(f[s.NODE]=!0,f[s.SELECT_BOX]=!0);var b=u.style(),w=u.zoom(),_=i!==void 0?i:w,T=u.pan(),E={x:T.x,y:T.y},L={zoom:w,pan:{x:T.x,y:T.y}},C=s.prevViewport,A=C===void 0||L.zoom!==C.zoom||L.pan.x!==C.pan.x||L.pan.y!==C.pan.y;!A&&!(y&&!g)&&(s.motionBlurPxRatio=1),a&&(E=a),_*=l,E.x*=l,E.y*=l;var I=s.getCachedZSortedEles();function D(ce,te,De,oe,ke){var Fe=ce.globalCompositeOperation;ce.globalCompositeOperation="destination-out",s.colorFillStyle(ce,255,255,255,s.motionBlurTransparency),ce.fillRect(te,De,oe,ke),ce.globalCompositeOperation=Fe}o(D,"mbclear");function k(ce,te){var De,oe,ke,Fe;!s.clearingMotionBlur&&(ce===h.bufferContexts[s.MOTIONBLUR_BUFFER_NODE]||ce===h.bufferContexts[s.MOTIONBLUR_BUFFER_DRAG])?(De={x:T.x*m,y:T.y*m},oe=w*m,ke=s.canvasWidth*m,Fe=s.canvasHeight*m):(De=E,oe=_,ke=s.canvasWidth,Fe=s.canvasHeight),ce.setTransform(1,0,0,1,0,0),te==="motionBlur"?D(ce,0,0,ke,Fe):!e&&(te===void 0||te)&&ce.clearRect(0,0,ke,Fe),r||(ce.translate(De.x,De.y),ce.scale(oe,oe)),a&&ce.translate(a.x,a.y),i&&ce.scale(i,i)}if(o(k,"setContextTransform"),d||(s.textureDrawLastFrame=!1),d){if(s.textureDrawLastFrame=!0,!s.textureCache){s.textureCache={},s.textureCache.bb=u.mutableElements().boundingBox(),s.textureCache.texture=s.data.bufferCanvases[s.TEXTURE_BUFFER];var R=s.data.bufferContexts[s.TEXTURE_BUFFER];R.setTransform(1,0,0,1,0,0),R.clearRect(0,0,s.canvasWidth*s.textureMult,s.canvasHeight*s.textureMult),s.render({forcedContext:R,drawOnlyNodeLayer:!0,forcedPxRatio:l*s.textureMult});var L=s.textureCache.viewport={zoom:u.zoom(),pan:u.pan(),width:s.canvasWidth,height:s.canvasHeight};L.mpan={x:(0-L.pan.x)/L.zoom,y:(0-L.pan.y)/L.zoom}}f[s.DRAG]=!1,f[s.NODE]=!1;var S=h.contexts[s.NODE],O=s.textureCache.texture,L=s.textureCache.viewport;S.setTransform(1,0,0,1,0,0),p?D(S,0,0,L.width,L.height):S.clearRect(0,0,L.width,L.height);var N=b.core("outside-texture-bg-color").value,P=b.core("outside-texture-bg-opacity").value;s.colorFillStyle(S,N[0],N[1],N[2],P),S.fillRect(0,0,L.width,L.height);var w=u.zoom();k(S,!1),S.clearRect(L.mpan.x,L.mpan.y,L.width/L.zoom/l,L.height/L.zoom/l),S.drawImage(O,L.mpan.x,L.mpan.y,L.width/L.zoom/l,L.height/L.zoom/l)}else s.textureOnViewport&&!e&&(s.textureCache=null);var F=u.extent(),B=s.pinching||s.hoverData.dragging||s.swipePanning||s.data.wheelZooming||s.hoverData.draggingEles||s.cy.animated(),$=s.hideEdgesOnViewport&&B,z=[];if(z[s.NODE]=!f[s.NODE]&&p&&!s.clearedForMotionBlur[s.NODE]||s.clearingMotionBlur,z[s.NODE]&&(s.clearedForMotionBlur[s.NODE]=!0),z[s.DRAG]=!f[s.DRAG]&&p&&!s.clearedForMotionBlur[s.DRAG]||s.clearingMotionBlur,z[s.DRAG]&&(s.clearedForMotionBlur[s.DRAG]=!0),f[s.NODE]||r||n||z[s.NODE]){var W=p&&!z[s.NODE]&&m!==1,S=e||(W?s.data.bufferContexts[s.MOTIONBLUR_BUFFER_NODE]:h.contexts[s.NODE]),j=p&&!W?"motionBlur":void 0;k(S,j),$?s.drawCachedNodes(S,I.nondrag,l,F):s.drawLayeredElements(S,I.nondrag,l,F),s.debug&&s.drawDebugPoints(S,I.nondrag),!r&&!p&&(f[s.NODE]=!1)}if(!n&&(f[s.DRAG]||r||z[s.DRAG])){var W=p&&!z[s.DRAG]&&m!==1,S=e||(W?s.data.bufferContexts[s.MOTIONBLUR_BUFFER_DRAG]:h.contexts[s.DRAG]);k(S,p&&!W?"motionBlur":void 0),$?s.drawCachedNodes(S,I.drag,l,F):s.drawCachedElements(S,I.drag,l,F),s.debug&&s.drawDebugPoints(S,I.drag),!r&&!p&&(f[s.DRAG]=!1)}if(s.showFps||!n&&f[s.SELECT_BOX]&&!r){var S=e||h.contexts[s.SELECT_BOX];if(k(S),s.selection[4]==1&&(s.hoverData.selecting||s.touchData.selecting)){var w=s.cy.zoom(),K=b.core("selection-box-border-width").value/w;S.lineWidth=K,S.fillStyle="rgba("+b.core("selection-box-color").value[0]+","+b.core("selection-box-color").value[1]+","+b.core("selection-box-color").value[2]+","+b.core("selection-box-opacity").value+")",S.fillRect(s.selection[0],s.selection[1],s.selection[2]-s.selection[0],s.selection[3]-s.selection[1]),K>0&&(S.strokeStyle="rgba("+b.core("selection-box-border-color").value[0]+","+b.core("selection-box-border-color").value[1]+","+b.core("selection-box-border-color").value[2]+","+b.core("selection-box-opacity").value+")",S.strokeRect(s.selection[0],s.selection[1],s.selection[2]-s.selection[0],s.selection[3]-s.selection[1]))}if(h.bgActivePosistion&&!s.hoverData.selecting){var w=s.cy.zoom(),ie=h.bgActivePosistion;S.fillStyle="rgba("+b.core("active-bg-color").value[0]+","+b.core("active-bg-color").value[1]+","+b.core("active-bg-color").value[2]+","+b.core("active-bg-opacity").value+")",S.beginPath(),S.arc(ie.x,ie.y,b.core("active-bg-size").pfValue/w,0,2*Math.PI),S.fill()}var Q=s.lastRedrawTime;if(s.showFps&&Q){Q=Math.round(Q);var ee=Math.round(1e3/Q);S.setTransform(1,0,0,1,0,0),S.fillStyle="rgba(255, 0, 0, 0.75)",S.strokeStyle="rgba(255, 0, 0, 0.75)",S.lineWidth=1,S.fillText("1 frame = "+Q+" ms = "+ee+" fps",0,20);var J=60;S.strokeRect(0,30,250,20),S.fillRect(0,30,250*Math.min(ee/J,1),20)}r||(f[s.SELECT_BOX]=!1)}if(p&&m!==1){var H=h.contexts[s.NODE],q=s.data.bufferCanvases[s.MOTIONBLUR_BUFFER_NODE],Z=h.contexts[s.DRAG],ae=s.data.bufferCanvases[s.MOTIONBLUR_BUFFER_DRAG],ue=o(function(te,De,oe){te.setTransform(1,0,0,1,0,0),oe||!x?te.clearRect(0,0,s.canvasWidth,s.canvasHeight):D(te,0,0,s.canvasWidth,s.canvasHeight);var ke=m;te.drawImage(De,0,0,s.canvasWidth*ke,s.canvasHeight*ke,0,0,s.canvasWidth,s.canvasHeight)},"drawMotionBlur");(f[s.NODE]||z[s.NODE])&&(ue(H,q,z[s.NODE]),f[s.NODE]=!1),(f[s.DRAG]||z[s.DRAG])&&(ue(Z,ae,z[s.DRAG]),f[s.DRAG]=!1)}s.prevViewport=L,s.clearingMotionBlur&&(s.clearingMotionBlur=!1,s.motionBlurCleared=!0,s.motionBlur=!0),p&&(s.motionBlurTimeout=setTimeout(function(){s.motionBlurTimeout=null,s.clearedForMotionBlur[s.NODE]=!1,s.clearedForMotionBlur[s.DRAG]=!1,s.motionBlur=!1,s.clearingMotionBlur=!d,s.mbFrames=0,f[s.NODE]=!0,f[s.DRAG]=!0,s.redraw()},dtt)),e||u.emit("render")};Nf={};Nf.drawPolygonPath=function(t,e,r,n,i,a){var s=n/2,l=i/2;t.beginPath&&t.beginPath(),t.moveTo(e+s*a[0],r+l*a[1]);for(var u=1;u0&&s>0){m.clearRect(0,0,a,s),m.globalCompositeOperation="source-over";var g=this.getCachedZSortedEles();if(t.full)m.translate(-n.x1*h,-n.y1*h),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(n.x1*h,n.y1*h);else{var y=e.pan(),v={x:y.x*h,y:y.y*h};h*=e.zoom(),m.translate(v.x,v.y),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(-v.x,-v.y)}t.bg&&(m.globalCompositeOperation="destination-over",m.fillStyle=t.bg,m.rect(0,0,a,s),m.fill())}return p};o(ptt,"b64ToBlob");o(Ume,"b64UriToB64");o(w1e,"output");sb.png=function(t){return w1e(t,this.bufferCanvasImage(t),"image/png")};sb.jpg=function(t){return w1e(t,this.bufferCanvasImage(t),"image/jpeg")};T1e={};T1e.nodeShapeImpl=function(t,e,r,n,i,a,s,l){switch(t){case"ellipse":return this.drawEllipsePath(e,r,n,i,a);case"polygon":return this.drawPolygonPath(e,r,n,i,a,s);case"round-polygon":return this.drawRoundPolygonPath(e,r,n,i,a,s,l);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(e,r,n,i,a,l);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(e,r,n,i,a,s,l);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(e,r,n,i,a,l);case"barrel":return this.drawBarrelPath(e,r,n,i,a)}};mtt=k1e,Kr=k1e.prototype;Kr.CANVAS_LAYERS=3;Kr.SELECT_BOX=0;Kr.DRAG=1;Kr.NODE=2;Kr.BUFFER_COUNT=3;Kr.TEXTURE_BUFFER=0;Kr.MOTIONBLUR_BUFFER_NODE=1;Kr.MOTIONBLUR_BUFFER_DRAG=2;o(k1e,"CanvasRenderer");Kr.redrawHint=function(t,e){var r=this;switch(t){case"eles":r.data.canvasNeedsRedraw[Kr.NODE]=e;break;case"drag":r.data.canvasNeedsRedraw[Kr.DRAG]=e;break;case"select":r.data.canvasNeedsRedraw[Kr.SELECT_BOX]=e;break}};gtt=typeof Path2D<"u";Kr.path2dEnabled=function(t){if(t===void 0)return this.pathsEnabled;this.pathsEnabled=!!t};Kr.usePaths=function(){return gtt&&this.pathsEnabled};Kr.setImgSmoothing=function(t,e){t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled=e:(t.webkitImageSmoothingEnabled=e,t.mozImageSmoothingEnabled=e,t.msImageSmoothingEnabled=e)};Kr.getImgSmoothing=function(t){return t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled:t.webkitImageSmoothingEnabled||t.mozImageSmoothingEnabled||t.msImageSmoothingEnabled};Kr.makeOffscreenCanvas=function(t,e){var r;if((typeof OffscreenCanvas>"u"?"undefined":Yi(OffscreenCanvas))!=="undefined")r=new OffscreenCanvas(t,e);else{var n=this.cy.window(),i=n.document;r=i.createElement("canvas"),r.width=t,r.height=e}return r};[y1e,Yc,Zu,TB,Y0,w1,mo,Nf,sb,T1e].forEach(function(t){ir(Kr,t)});ytt=[{name:"null",impl:i1e},{name:"base",impl:p1e},{name:"canvas",impl:mtt}],vtt=[{type:"layout",extensions:ket},{type:"renderer",extensions:ytt}],E1e={},S1e={};o(C1e,"setExtension");o(A1e,"getExtension");o(xtt,"setModule");o(btt,"getModule");ZP=o(function(){if(arguments.length===2)return A1e.apply(null,arguments);if(arguments.length===3)return C1e.apply(null,arguments);if(arguments.length===4)return btt.apply(null,arguments);if(arguments.length===5)return xtt.apply(null,arguments);hi("Invalid extension access syntax")},"extension");Qx.prototype.extension=ZP;vtt.forEach(function(t){t.extensions.forEach(function(e){C1e(t.type,e.name,e.impl)})});_1e=o(function t(){if(!(this instanceof t))return new t;this.length=0},"Stylesheet"),H0=_1e.prototype;H0.instanceString=function(){return"stylesheet"};H0.selector=function(t){var e=this.length++;return this[e]={selector:t,properties:[]},this};H0.css=function(t,e){var r=this.length-1;if(Zt(t))this[r].properties.push({name:t,value:e});else if(Vr(t))for(var n=t,i=Object.keys(n),a=0;a{"use strict";o(function(e,r){typeof ob=="object"&&typeof EB=="object"?EB.exports=r():typeof define=="function"&&define.amd?define([],r):typeof ob=="object"?ob.layoutBase=r():e.layoutBase=r()},"webpackUniversalModuleDefinition")(ob,function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=26)}([function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),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,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];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(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[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))},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=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)},t.exports=s},function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(4);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp&&(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)),this.labelHeight>m&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-m)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-m),this.setHeight(this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h},function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(6),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,w=0;w-1&&E>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(T,1),x.target!=x.source&&x.target.edges.splice(E,1);var _=x.source.owner.getEdges().indexOf(x);if(_==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(_,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,w=this.getNodes(),_=w.length,T=0;T<_;T++){var E=w[T];v=E.getTop(),x=E.getLeft(),g>v&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(w[0].getParent().paddingLeft!=null?b=w[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,w,_,T,E,L,C=this.nodes,A=C.length,I=0;Iw&&(y=w),v<_&&(v=_),x>T&&(x=T),bw&&(y=w),v<_&&(v=_),x>T&&(x=T),b=this.nodes.length){var A=0;v.forEach(function(I){I.owner==g&&A++}),A==this.nodes.length&&(this.isConnected=!0)}},t.exports=p},function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(5),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=C,!1;if(hf)return l[0]=p,l[1]=h,l[2]=E,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,k=!0):(l[0]=g,l[1]=m,k=!0):S===N&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=x,l[1]=v,k=!0)),-O===N?f>u?(l[2]=L,l[3]=C,R=!0):(l[2]=E,l[3]=T,R=!0):O===N&&(f>u?(l[2]=_,l[3]=T,R=!0):(l[2]=A,l[3]=C,R=!0)),k&&R)return!1;if(u>f?h>d?(P=this.getCardinalDirection(S,N,4),F=this.getCardinalDirection(O,N,2)):(P=this.getCardinalDirection(-S,N,3),F=this.getCardinalDirection(-O,N,1)):h>d?(P=this.getCardinalDirection(-S,N,1),F=this.getCardinalDirection(-O,N,3)):(P=this.getCardinalDirection(S,N,2),F=this.getCardinalDirection(O,N,4)),!k)switch(P){case 1:$=m,B=u+-w/N,l[0]=B,l[1]=$;break;case 2:B=x,$=h+b*N,l[0]=B,l[1]=$;break;case 3:$=v,B=u+w/N,l[0]=B,l[1]=$;break;case 4:B=y,$=h+-b*N,l[0]=B,l[1]=$;break}if(!R)switch(F){case 1:W=T,z=f+-D/N,l[2]=z,l[3]=W;break;case 2:z=A,W=d+I*N,l[2]=z,l[3]=W;break;case 3:W=C,z=f+D/N,l[2]=z,l[3]=W;break;case 4:z=L,W=d+-I*N,l[2]=z,l[3]=W;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,w=void 0,_=void 0,T=void 0,E=void 0,L=void 0,C=void 0,A=void 0;return w=p-f,T=h-d,L=d*f-h*p,_=v-g,E=m-y,C=y*g-m*v,A=w*E-_*T,A===0?null:(x=(T*C-E*L)/A,b=(_*L-w*C)/A,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n},function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n},function(t,e,r){"use strict";var n=function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i},function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(w.push(T[0]);w.length>0&&g;){var E=w[0];w.splice(0,1),b.add(E);for(var L=E.getEdges(),x=0;x-1&&T.splice(D,1)}b=new Set,_=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(C,1);var A=_.getNeighborsList();A.forEach(function(k){if(y.indexOf(k)<0){var R=v.get(k),S=R-1;S==1&&E.push(k),v.set(k,S)}})}y=y.concat(E),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p},function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n},function(t,e,r){"use strict";var n=r(4);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i},function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mw||b>w)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(w=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>w||b>w)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||w>=x[0].length)){for(var _=0;_h},"_defaultCompareFunction")}]),l}();t.exports=s},function(t,e,r){"use strict";var n=function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o(function(e,r){typeof lb=="object"&&typeof CB=="object"?CB.exports=r(SB()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof lb=="object"?lb.coseBase=r(SB()):e.coseBase=r(e.layoutBase)},"webpackUniversalModuleDefinition")(lb,function(t){return function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=7)}([function(e,r){e.exports=t},function(e,r,n){"use strict";var i=n(0).FDLayoutConstants;function a(){}o(a,"CoSEConstants");for(var s in i)a[s]=i[s];a.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,a.DEFAULT_RADIAL_SEPARATION=i.DEFAULT_EDGE_LENGTH,a.DEFAULT_COMPONENT_SEPERATION=60,a.TILE=!0,a.TILING_PADDING_VERTICAL=10,a.TILING_PADDING_HORIZONTAL=10,a.TREE_REDUCTION_ON_INCREMENTAL=!1,e.exports=a},function(e,r,n){"use strict";var i=n(0).FDLayoutEdge;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEEdge"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a},function(e,r,n){"use strict";var i=n(0).LGraph;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEGraph"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a},function(e,r,n){"use strict";var i=n(0).LGraphManager;function a(l){i.call(this,l)}o(a,"CoSEGraphManager"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a},function(e,r,n){"use strict";var i=n(0).FDLayoutNode,a=n(0).IMath;function s(u,h,f,d){i.call(this,u,h,f,d)}o(s,"CoSENode"),s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.move=function(){var u=this.graphManager.getLayout();this.displacementX=u.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=u.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementX=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementX)),Math.abs(this.displacementY)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementY=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),u.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},s.prototype.propogateDisplacementToChildren=function(u,h){for(var f=this.getChild().getNodes(),d,p=0;p0)this.positionNodesRadially(T);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),L=this.nodesWithGravity.filter(function(C){return E.has(C)});this.graphManager.setAllNodesToApplyGravitation(L),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},w.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%f.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(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(A){return T.has(A)});this.graphManager.setAllNodesToApplyGravitation(E),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=f.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=f.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var L=!this.isTreeGrowing&&!this.isGrowthFinished,C=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(L,C),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},w.prototype.getPositionsData=function(){for(var T=this.graphManager.getAllNodes(),E={},L=0;L1){var k;for(k=0;kC&&(C=Math.floor(D.y)),I=Math.floor(D.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new m(d.WORLD_CENTER_X-D.x/2,d.WORLD_CENTER_Y-D.y/2))},w.radialLayout=function(T,E,L){var C=Math.max(this.maxDiagonalInTree(T),h.DEFAULT_RADIAL_SEPARATION);w.branchRadialLayout(E,null,0,359,0,C);var A=x.calculateBounds(T),I=new b;I.setDeviceOrgX(A.getMinX()),I.setDeviceOrgY(A.getMinY()),I.setWorldOrgX(L.x),I.setWorldOrgY(L.y);for(var D=0;D1;){var j=W[0];W.splice(0,1);var K=P.indexOf(j);K>=0&&P.splice(K,1),$--,F--}E!=null?z=(P.indexOf(W[0])+1)%$:z=0;for(var ie=Math.abs(C-L)/F,Q=z;B!=F;Q=++Q%$){var ee=P[Q].getOtherEnd(T);if(ee!=E){var J=(L+B*ie)%360,H=(J+ie)%360;w.branchRadialLayout(ee,T,J,H,A+I,I),B++}}},w.maxDiagonalInTree=function(T){for(var E=y.MIN_VALUE,L=0;LE&&(E=A)}return E},w.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},w.prototype.groupZeroDegreeMembers=function(){var T=this,E={};this.memberGroups={},this.idToDummyNode={};for(var L=[],C=this.graphManager.getAllNodes(),A=0;A"u"&&(E[k]=[]),E[k]=E[k].concat(I)}Object.keys(E).forEach(function(R){if(E[R].length>1){var S="DummyCompound_"+R;T.memberGroups[S]=E[R];var O=E[R][0].getParent(),N=new l(T.graphManager);N.id=S,N.paddingLeft=O.paddingLeft||0,N.paddingRight=O.paddingRight||0,N.paddingBottom=O.paddingBottom||0,N.paddingTop=O.paddingTop||0,T.idToDummyNode[S]=N;var P=T.getGraphManager().add(T.newGraph(),N),F=O.getChild();F.add(N);for(var B=0;B=0;T--){var E=this.compoundOrder[T],L=E.id,C=E.paddingLeft,A=E.paddingTop;this.adjustLocations(this.tiledMemberPack[L],E.rect.x,E.rect.y,C,A)}},w.prototype.repopulateZeroDegreeMembers=function(){var T=this,E=this.tiledZeroDegreePack;Object.keys(E).forEach(function(L){var C=T.idToDummyNode[L],A=C.paddingLeft,I=C.paddingTop;T.adjustLocations(E[L],C.rect.x,C.rect.y,A,I)})},w.prototype.getToBeTiled=function(T){var E=T.id;if(this.toBeTiled[E]!=null)return this.toBeTiled[E];var L=T.getChild();if(L==null)return this.toBeTiled[E]=!1,!1;for(var C=L.getNodes(),A=0;A0)return this.toBeTiled[E]=!1,!1;if(I.getChild()==null){this.toBeTiled[I.id]=!1;continue}if(!this.getToBeTiled(I))return this.toBeTiled[E]=!1,!1}return this.toBeTiled[E]=!0,!0},w.prototype.getNodeDegree=function(T){for(var E=T.id,L=T.getEdges(),C=0,A=0;AR&&(R=O.rect.height)}L+=R+T.verticalPadding}},w.prototype.tileCompoundMembers=function(T,E){var L=this;this.tiledMemberPack=[],Object.keys(T).forEach(function(C){var A=E[C];L.tiledMemberPack[C]=L.tileNodes(T[C],A.paddingLeft+A.paddingRight),A.rect.width=L.tiledMemberPack[C].width,A.rect.height=L.tiledMemberPack[C].height})},w.prototype.tileNodes=function(T,E){var L=h.TILING_PADDING_VERTICAL,C=h.TILING_PADDING_HORIZONTAL,A={rows:[],rowWidth:[],rowHeight:[],width:0,height:E,verticalPadding:L,horizontalPadding:C};T.sort(function(k,R){return k.rect.width*k.rect.height>R.rect.width*R.rect.height?-1:k.rect.width*k.rect.height0&&(D+=T.horizontalPadding),T.rowWidth[L]=D,T.width0&&(k+=T.verticalPadding);var R=0;k>T.rowHeight[L]&&(R=T.rowHeight[L],T.rowHeight[L]=k,R=T.rowHeight[L]-R),T.height+=R,T.rows[L].push(E)},w.prototype.getShortestRowIndex=function(T){for(var E=-1,L=Number.MAX_VALUE,C=0;CL&&(E=C,L=T.rowWidth[C]);return E},w.prototype.canAddHorizontal=function(T,E,L){var C=this.getShortestRowIndex(T);if(C<0)return!0;var A=T.rowWidth[C];if(A+T.horizontalPadding+E<=T.width)return!0;var I=0;T.rowHeight[C]0&&(I=L+T.verticalPadding-T.rowHeight[C]);var D;T.width-A>=E+T.horizontalPadding?D=(T.height+I)/(A+E+T.horizontalPadding):D=(T.height+I)/T.width,I=L+T.verticalPadding;var k;return T.widthI&&E!=L){C.splice(-1,1),T.rows[L].push(A),T.rowWidth[E]=T.rowWidth[E]-I,T.rowWidth[L]=T.rowWidth[L]+I,T.width=T.rowWidth[instance.getLongestRowIndex(T)];for(var D=Number.MIN_VALUE,k=0;kD&&(D=C[k].height);E>0&&(D+=T.verticalPadding);var R=T.rowHeight[E]+T.rowHeight[L];T.rowHeight[E]=D,T.rowHeight[L]0)for(var F=A;F<=I;F++)P[0]+=this.grid[F][D-1].length+this.grid[F][D].length-1;if(I0)for(var F=D;F<=k;F++)P[3]+=this.grid[A-1][F].length+this.grid[A][F].length-1;for(var B=y.MAX_VALUE,$,z,W=0;W{"use strict";o(function(e,r){typeof cb=="object"&&typeof _B=="object"?_B.exports=r(AB()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof cb=="object"?cb.cytoscapeCoseBilkent=r(AB()):e.cytoscapeCoseBilkent=r(e.coseBase)},"webpackUniversalModuleDefinition")(cb,function(t){return function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=1)}([function(e,r){e.exports=t},function(e,r,n){"use strict";var i=n(0).layoutBase.LayoutConstants,a=n(0).layoutBase.FDLayoutConstants,s=n(0).CoSEConstants,l=n(0).CoSELayout,u=n(0).CoSENode,h=n(0).layoutBase.PointD,f=n(0).layoutBase.DimensionD,d={ready:o(function(){},"ready"),stop:o(function(){},"stop"),quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:.45,nestingFactor:.1,gravity:.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:.5};function p(v,x){var b={};for(var w in v)b[w]=v[w];for(var w in x)b[w]=x[w];return b}o(p,"extend");function m(v){this.options=p(d,v),g(this.options)}o(m,"_CoSELayout");var g=o(function(x){x.nodeRepulsion!=null&&(s.DEFAULT_REPULSION_STRENGTH=a.DEFAULT_REPULSION_STRENGTH=x.nodeRepulsion),x.idealEdgeLength!=null&&(s.DEFAULT_EDGE_LENGTH=a.DEFAULT_EDGE_LENGTH=x.idealEdgeLength),x.edgeElasticity!=null&&(s.DEFAULT_SPRING_STRENGTH=a.DEFAULT_SPRING_STRENGTH=x.edgeElasticity),x.nestingFactor!=null&&(s.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=x.nestingFactor),x.gravity!=null&&(s.DEFAULT_GRAVITY_STRENGTH=a.DEFAULT_GRAVITY_STRENGTH=x.gravity),x.numIter!=null&&(s.MAX_ITERATIONS=a.MAX_ITERATIONS=x.numIter),x.gravityRange!=null&&(s.DEFAULT_GRAVITY_RANGE_FACTOR=a.DEFAULT_GRAVITY_RANGE_FACTOR=x.gravityRange),x.gravityCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_STRENGTH=a.DEFAULT_COMPOUND_GRAVITY_STRENGTH=x.gravityCompound),x.gravityRangeCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=x.gravityRangeCompound),x.initialEnergyOnIncremental!=null&&(s.DEFAULT_COOLING_FACTOR_INCREMENTAL=a.DEFAULT_COOLING_FACTOR_INCREMENTAL=x.initialEnergyOnIncremental),x.quality=="draft"?i.QUALITY=0:x.quality=="proof"?i.QUALITY=2:i.QUALITY=1,s.NODE_DIMENSIONS_INCLUDE_LABELS=a.NODE_DIMENSIONS_INCLUDE_LABELS=i.NODE_DIMENSIONS_INCLUDE_LABELS=x.nodeDimensionsIncludeLabels,s.DEFAULT_INCREMENTAL=a.DEFAULT_INCREMENTAL=i.DEFAULT_INCREMENTAL=!x.randomize,s.ANIMATE=a.ANIMATE=i.ANIMATE=x.animate,s.TILE=x.tile,s.TILING_PADDING_VERTICAL=typeof x.tilingPaddingVertical=="function"?x.tilingPaddingVertical.call():x.tilingPaddingVertical,s.TILING_PADDING_HORIZONTAL=typeof x.tilingPaddingHorizontal=="function"?x.tilingPaddingHorizontal.call():x.tilingPaddingHorizontal},"getUserOptions");m.prototype.run=function(){var v,x,b=this.options,w=this.idToLNode={},_=this.layout=new l,T=this;T.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var E=_.newGraphManager();this.gm=E;var L=this.options.eles.nodes(),C=this.options.eles.edges();this.root=E.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(L),_);for(var A=0;A0){var k;k=b.getGraphManager().add(b.newGraph(),L),this.processChildrenList(k,E,b)}}},m.prototype.stop=function(){return this.stopped=!0,this};var y=o(function(x){x("layout","cose-bilkent",m)},"register");typeof cytoscape<"u"&&y(cytoscape),e.exports=y}])})});function _tt(t,e,r,n,i){return t.insert("polygon",":first-child").attr("points",n.map(function(a){return a.x+","+a.y}).join(" ")).attr("transform","translate("+(i.width-e)/2+", "+r+")")}var Ttt,ktt,Ett,Stt,Ctt,Att,Ltt,Dtt,D1e,N1e,R1e=M(()=>{"use strict";Dl();hr();Ttt=12,ktt=o(function(t,e,r,n){e.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("d",`M0 ${r.height-5} v${-r.height+2*5} q0,-5 5,-5 h${r.width-2*5} q5,0 5,5 v${r.height-5} H0 Z`),e.append("line").attr("class","node-line-"+n).attr("x1",0).attr("y1",r.height).attr("x2",r.width).attr("y2",r.height)},"defaultBkg"),Ett=o(function(t,e,r){e.append("rect").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("height",r.height).attr("width",r.width)},"rectBkg"),Stt=o(function(t,e,r){let n=r.width,i=r.height,a=.15*n,s=.25*n,l=.35*n,u=.2*n;e.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("d",`M0 0 a${a},${a} 0 0,1 ${n*.25},${-1*n*.1} + a${l},${l} 1 0,1 ${n*.4},${-1*n*.1} + a${s},${s} 1 0,1 ${n*.35},${1*n*.2} + + a${a},${a} 1 0,1 ${n*.15},${1*i*.35} + a${u},${u} 1 0,1 ${-1*n*.15},${1*i*.65} + + a${s},${a} 1 0,1 ${-1*n*.25},${n*.15} + a${l},${l} 1 0,1 ${-1*n*.5},0 + a${a},${a} 1 0,1 ${-1*n*.25},${-1*n*.15} + + a${a},${a} 1 0,1 ${-1*n*.1},${-1*i*.35} + a${u},${u} 1 0,1 ${n*.1},${-1*i*.65} + + H0 V0 Z`)},"cloudBkg"),Ctt=o(function(t,e,r){let n=r.width,i=r.height,a=.15*n;e.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("d",`M0 0 a${a},${a} 1 0,0 ${n*.25},${-1*i*.1} + a${a},${a} 1 0,0 ${n*.25},0 + a${a},${a} 1 0,0 ${n*.25},0 + a${a},${a} 1 0,0 ${n*.25},${1*i*.1} + + a${a},${a} 1 0,0 ${n*.15},${1*i*.33} + a${a*.8},${a*.8} 1 0,0 0,${1*i*.34} + a${a},${a} 1 0,0 ${-1*n*.15},${1*i*.33} + + a${a},${a} 1 0,0 ${-1*n*.25},${i*.15} + a${a},${a} 1 0,0 ${-1*n*.25},0 + a${a},${a} 1 0,0 ${-1*n*.25},0 + a${a},${a} 1 0,0 ${-1*n*.25},${-1*i*.15} + + a${a},${a} 1 0,0 ${-1*n*.1},${-1*i*.33} + a${a*.8},${a*.8} 1 0,0 0,${-1*i*.34} + a${a},${a} 1 0,0 ${n*.1},${-1*i*.33} + + H0 V0 Z`)},"bangBkg"),Att=o(function(t,e,r){e.append("circle").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("r",r.width/2)},"circleBkg");o(_tt,"insertPolygonShape");Ltt=o(function(t,e,r){let n=r.height,a=n/4,s=r.width-r.padding+2*a,l=[{x:a,y:0},{x:s-a,y:0},{x:s,y:-n/2},{x:s-a,y:-n},{x:a,y:-n},{x:0,y:-n/2}];_tt(e,s,n,l,r)},"hexagonBkg"),Dtt=o(function(t,e,r){e.append("rect").attr("id","node-"+r.id).attr("class","node-bkg node-"+t.type2Str(r.type)).attr("height",r.height).attr("rx",r.padding).attr("ry",r.padding).attr("width",r.width)},"roundedRectBkg"),D1e=o(async function(t,e,r,n,i){let a=i.htmlLabels,s=n%(Ttt-1),l=e.append("g");r.section=s;let u="section-"+s;s<0&&(u+=" section-root"),l.attr("class",(r.class?r.class+" ":"")+"mindmap-node "+u);let h=l.append("g"),f=l.append("g"),d=r.descr.replace(/()/g,` +`);await Si(f,d,{useHtmlLabels:a,width:r.width,classes:"mindmap-node-label"},i),a||f.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");let p=f.node().getBBox(),[m]=Fo(i.fontSize);if(r.height=p.height+m*1.1*.5+r.padding,r.width=p.width+2*r.padding,r.icon)if(r.type===t.nodeType.CIRCLE)r.height+=50,r.width+=50,l.append("foreignObject").attr("height","50px").attr("width",r.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+s+" "+r.icon),f.attr("transform","translate("+r.width/2+", "+(r.height/2-1.5*r.padding)+")");else{r.width+=50;let g=r.height;r.height=Math.max(g,60);let y=Math.abs(r.height-g);l.append("foreignObject").attr("width","60px").attr("height",r.height).attr("style","text-align: center;margin-top:"+y/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+s+" "+r.icon),f.attr("transform","translate("+(25+r.width/2)+", "+(y/2+r.padding/2)+")")}else if(a){let g=(r.width-p.width)/2,y=(r.height-p.height)/2;f.attr("transform","translate("+g+", "+y+")")}else{let g=r.width/2,y=r.padding/2;f.attr("transform","translate("+g+", "+y+")")}switch(r.type){case t.nodeType.DEFAULT:ktt(t,h,r,s);break;case t.nodeType.ROUNDED_RECT:Dtt(t,h,r,s);break;case t.nodeType.RECT:Ett(t,h,r,s);break;case t.nodeType.CIRCLE:h.attr("transform","translate("+r.width/2+", "+ +r.height/2+")"),Att(t,h,r,s);break;case t.nodeType.CLOUD:Stt(t,h,r,s);break;case t.nodeType.BANG:Ctt(t,h,r,s);break;case t.nodeType.HEXAGON:Ltt(t,h,r,s);break}return t.setElementForId(r.id,l),r.height},"drawNode"),N1e=o(function(t,e){let r=t.getElementById(e.id),n=e.x||0,i=e.y||0;r.attr("transform","translate("+n+","+i+")")},"positionNode")});async function I1e(t,e,r,n,i){await D1e(t,e,r,n,i),r.children&&await Promise.all(r.children.map((a,s)=>I1e(t,e,a,n<0?s:n,i)))}function Ntt(t,e){e.edges().map((r,n)=>{let i=r.data();if(r[0]._private.bodyBounds){let a=r[0]._private.rscratch;Y.trace("Edge: ",n,i),t.insert("path").attr("d",`M ${a.startX},${a.startY} L ${a.midX},${a.midY} L${a.endX},${a.endY} `).attr("class","edge section-edge-"+i.section+" edge-depth-"+i.depth)}})}function O1e(t,e,r,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(i=>{O1e(i,e,r,n+1),e.add({group:"edges",data:{id:`${t.id}_${i.id}`,source:t.id,target:i.id,depth:n,section:i.section}})})}function Rtt(t,e){return new Promise(r=>{let n=ze("body").append("div").attr("id","cy").attr("style","display:none"),i=sl({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});n.remove(),O1e(t,i,e,0),i.nodes().forEach(function(a){a.layoutDimensions=()=>{let s=a.data();return{w:s.width,h:s.height}}}),i.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),i.ready(a=>{Y.info("Ready",a),r(i)})})}function Mtt(t,e){e.nodes().map((r,n)=>{let i=r.data();i.x=r.position().x,i.y=r.position().y,N1e(t,i);let a=t.getElementById(i.nodeId);Y.info("Id:",n,"Position: (",r.position().x,", ",r.position().y,")",i),a.attr("transform",`translate(${r.position().x-i.width/2}, ${r.position().y-i.height/2})`),a.attr("attr",`apa-${n})`)})}var M1e,Itt,P1e,B1e=M(()=>{"use strict";kB();M1e=ka(L1e(),1);mr();Vt();ht();Hu();ni();R1e();hs();sl.use(M1e.default);o(I1e,"drawNodes");o(Ntt,"drawEdges");o(O1e,"addNodes");o(Rtt,"layoutMindmap");o(Mtt,"positionNodes");Itt=o(async(t,e,r,n)=>{Y.debug(`Rendering mindmap diagram +`+t);let i=n.db,a=i.getMindmap();if(!a)return;let s=de();s.htmlLabels=!1;let l=Oa(e),u=l.append("g");u.attr("class","mindmap-edges");let h=l.append("g");h.attr("class","mindmap-nodes"),await I1e(i,h,a,-1,s);let f=await Rtt(a,s);Ntt(u,f),Mtt(i,f),_o(void 0,l,s.mindmap?.padding??ur.mindmap.padding,s.mindmap?.useMaxWidth??ur.mindmap.useMaxWidth)},"draw"),P1e={draw:Itt}});var Ott,Ptt,F1e,z1e=M(()=>{"use strict";To();Ott=o(t=>{let e="";for(let r=0;r` + .edge { + stroke-width: 3; + } + ${Ott(t)} + .section-root rect, .section-root path, .section-root circle, .section-root polygon { + fill: ${t.git0}; + } + .section-root text { + fill: ${t.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .mindmap-node-label { + dy: 1em; + alignment-baseline: middle; + text-anchor: middle; + dominant-baseline: middle; + text-align: center; + } +`,"getStyles"),F1e=Ptt});var G1e={};vr(G1e,{diagram:()=>Btt});var Btt,$1e=M(()=>{"use strict";Cpe();Lpe();B1e();z1e();Btt={db:_pe,renderer:P1e,parser:Spe,styles:F1e}});var LB,H1e,W1e=M(()=>{"use strict";LB=function(){var t=o(function(L,C,A,I){for(A=A||{},I=L.length;I--;A[L[I]]=C);return A},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,31],g=[6,7,11,24],y=[1,6,13,16,17,20,23],v=[1,35],x=[1,36],b=[1,6,7,11,13,16,17,20,23],w=[1,38],_={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},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,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:o(function(C,A,I,D,k,R,S){var O=R.length-1;switch(k){case 6:case 7:return D;case 8:D.getLogger().trace("Stop NL ");break;case 9:D.getLogger().trace("Stop EOF ");break;case 11:D.getLogger().trace("Stop NL2 ");break;case 12:D.getLogger().trace("Stop EOF2 ");break;case 15:D.getLogger().info("Node: ",R[O-1].id),D.addNode(R[O-2].length,R[O-1].id,R[O-1].descr,R[O-1].type,R[O]);break;case 16:D.getLogger().info("Node: ",R[O].id),D.addNode(R[O-1].length,R[O].id,R[O].descr,R[O].type);break;case 17:D.getLogger().trace("Icon: ",R[O]),D.decorateNode({icon:R[O]});break;case 18:case 23:D.decorateNode({class:R[O]});break;case 19:D.getLogger().trace("SPACELIST");break;case 20:D.getLogger().trace("Node: ",R[O-1].id),D.addNode(0,R[O-1].id,R[O-1].descr,R[O-1].type,R[O]);break;case 21:D.getLogger().trace("Node: ",R[O].id),D.addNode(0,R[O].id,R[O].descr,R[O].type);break;case 22:D.decorateNode({icon:R[O]});break;case 27:D.getLogger().trace("node found ..",R[O-2]),this.$={id:R[O-1],descr:R[O-1],type:D.getType(R[O-2],R[O])};break;case 28:this.$={id:R[O],descr:R[O],type:0};break;case 29:D.getLogger().trace("node found ..",R[O-3]),this.$={id:R[O-3],descr:R[O-1],type:D.getType(R[O-2],R[O])};break;case 30:this.$=R[O-1]+R[O];break;case 31:this.$=R[O];break}},"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:r,7:[1,10],9:9,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:r,9:22,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:h,7:f,10:23,11:d},t(p,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:s,23:l}),t(p,[2,19]),t(p,[2,21],{15:30,24:m}),t(p,[2,22]),t(p,[2,23]),t(g,[2,25]),t(g,[2,26]),t(g,[2,28],{20:[1,32]}),{21:[1,33]},{6:h,7:f,10:34,11:d},{1:[2,7],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(y,[2,14],{7:v,11:x}),t(b,[2,8]),t(b,[2,9]),t(b,[2,10]),t(p,[2,16],{15:37,24:m}),t(p,[2,17]),t(p,[2,18]),t(p,[2,20],{24:w}),t(g,[2,31]),{21:[1,39]},{22:[1,40]},t(y,[2,13],{7:v,11:x}),t(b,[2,11]),t(b,[2,12]),t(p,[2,15],{24:w}),t(g,[2,30]),{22:[1,41]},t(g,[2,27]),t(g,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(C,A){if(A.recoverable)this.trace(C);else{var I=new Error(C);throw I.hash=A,I}},"parseError"),parse:o(function(C){var A=this,I=[0],D=[],k=[null],R=[],S=this.table,O="",N=0,P=0,F=0,B=2,$=1,z=R.slice.call(arguments,1),W=Object.create(this.lexer),j={yy:{}};for(var K in this.yy)Object.prototype.hasOwnProperty.call(this.yy,K)&&(j.yy[K]=this.yy[K]);W.setInput(C,j.yy),j.yy.lexer=W,j.yy.parser=this,typeof W.yylloc>"u"&&(W.yylloc={});var ie=W.yylloc;R.push(ie);var Q=W.options&&W.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ee(Ve){I.length=I.length-2*Ve,k.length=k.length-Ve,R.length=R.length-Ve}o(ee,"popStack");function J(){var Ve;return Ve=D.pop()||W.lex()||$,typeof Ve!="number"&&(Ve instanceof Array&&(D=Ve,Ve=D.pop()),Ve=A.symbols_[Ve]||Ve),Ve}o(J,"lex");for(var H,q,Z,ae,ue,ce,te={},De,oe,ke,Fe;;){if(Z=I[I.length-1],this.defaultActions[Z]?ae=this.defaultActions[Z]:((H===null||typeof H>"u")&&(H=J()),ae=S[Z]&&S[Z][H]),typeof ae>"u"||!ae.length||!ae[0]){var Be="";Fe=[];for(De in S[Z])this.terminals_[De]&&De>B&&Fe.push("'"+this.terminals_[De]+"'");W.showPosition?Be="Parse error on line "+(N+1)+`: +`+W.showPosition()+` +Expecting `+Fe.join(", ")+", got '"+(this.terminals_[H]||H)+"'":Be="Parse error on line "+(N+1)+": Unexpected "+(H==$?"end of input":"'"+(this.terminals_[H]||H)+"'"),this.parseError(Be,{text:W.match,token:this.terminals_[H]||H,line:W.yylineno,loc:ie,expected:Fe})}if(ae[0]instanceof Array&&ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Z+", token: "+H);switch(ae[0]){case 1:I.push(H),k.push(W.yytext),R.push(W.yylloc),I.push(ae[1]),H=null,q?(H=q,q=null):(P=W.yyleng,O=W.yytext,N=W.yylineno,ie=W.yylloc,F>0&&F--);break;case 2:if(oe=this.productions_[ae[1]][1],te.$=k[k.length-oe],te._$={first_line:R[R.length-(oe||1)].first_line,last_line:R[R.length-1].last_line,first_column:R[R.length-(oe||1)].first_column,last_column:R[R.length-1].last_column},Q&&(te._$.range=[R[R.length-(oe||1)].range[0],R[R.length-1].range[1]]),ce=this.performAction.apply(te,[O,P,N,j.yy,ae[1],k,R].concat(z)),typeof ce<"u")return ce;oe&&(I=I.slice(0,-1*oe*2),k=k.slice(0,-1*oe),R=R.slice(0,-1*oe)),I.push(this.productions_[ae[1]][0]),k.push(te.$),R.push(te._$),ke=S[I[I.length-2]][I[I.length-1]],I.push(ke);break;case 3:return!0}}return!0},"parse")},T=function(){var L={EOF:1,parseError:o(function(A,I){if(this.yy.parser)this.yy.parser.parseError(A,I);else throw new Error(A)},"parseError"),setInput:o(function(C,A){return this.yy=A||this.yy||{},this._input=C,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:o(function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var A=C.match(/(?:\r\n?|\n).*/g);return A?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),C},"input"),unput:o(function(C){var A=C.length,I=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-A),this.offset-=A;var D=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 k=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===D.length?this.yylloc.first_column:0)+D[D.length-I.length].length-I[0].length:this.yylloc.first_column-A},this.options.ranges&&(this.yylloc.range=[k[0],k[0]+this.yyleng-A]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(C){this.unput(this.match.slice(C))},"less"),pastInput:o(function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var C=this.match;return C.length<20&&(C+=this._input.substr(0,20-C.length)),(C.substr(0,20)+(C.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var C=this.pastInput(),A=new Array(C.length+1).join("-");return C+this.upcomingInput()+` +`+A+"^"},"showPosition"),test_match:o(function(C,A){var I,D,k;if(this.options.backtrack_lexer&&(k={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&&(k.yylloc.range=this.yylloc.range.slice(0))),D=C[0].match(/(?:\r\n?|\n).*/g),D&&(this.yylineno+=D.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:D?D[D.length-1].length-D[D.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+C[0].length},this.yytext+=C[0],this.match+=C[0],this.matches=C,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(C[0].length),this.matched+=C[0],I=this.performAction.call(this,this.yy,this,A,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),I)return I;if(this._backtrack){for(var R in k)this[R]=k[R];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var C,A,I,D;this._more||(this.yytext="",this.match="");for(var k=this._currentRules(),R=0;RA[0].length)){if(A=I,D=R,this.options.backtrack_lexer){if(C=this.test_match(I,k[R]),C!==!1)return C;if(this._backtrack){A=!1;continue}else return!1}else if(!this.options.flex)break}return A?(C=this.test_match(A,k[D]),C!==!1?C:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var A=this.next();return A||this.lex()},"lex"),begin:o(function(A){this.conditionStack.push(A)},"begin"),popState:o(function(){var A=this.conditionStack.length-1;return A>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(A){return A=this.conditionStack.length-1-Math.abs(A||0),A>=0?this.conditionStack[A]:"INITIAL"},"topState"),pushState:o(function(A){this.begin(A)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(A,I,D,k){var R=k;switch(D){case 0:return this.pushState("shapeData"),I.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let S=/\n\s*/g;return I.yytext=I.yytext.replace(S,"
    "),24;break;case 4:return 24;case 5:this.popState();break;case 6:return A.getLogger().trace("Found comment",I.yytext),6;break;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;break;case 10:this.popState();break;case 11:A.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return A.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:A.getLogger().trace("end icon"),this.popState();break;case 16:return A.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return A.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return A.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return A.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;break;case 20:return this.begin("NODE"),20;break;case 21:return this.begin("NODE"),20;break;case 22:return this.begin("NODE"),20;break;case 23:return this.begin("NODE"),20;break;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 29:this.popState();break;case 30:A.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return A.getLogger().trace("description:",I.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),A.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),A.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),A.getLogger().trace("node end ...",I.yytext),"NODE_DEND";break;case 36:return this.popState(),A.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),A.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),A.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),A.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),A.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return A.getLogger().trace("Long description:",I.yytext),21;break;case 42:return A.getLogger().trace("Long description:",I.yytext),21;break}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\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:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}};return L}();_.lexer=T;function E(){this.yy={}}return o(E,"Parser"),E.prototype=_,_.Parser=E,new E}();LB.parser=LB;H1e=LB});var ol,NB,DB,RB,$tt,Vtt,Y1e,Utt,Htt,Xi,Wtt,Ytt,qtt,Xtt,jtt,Ktt,Qtt,q1e,X1e=M(()=>{"use strict";Vt();fr();ht();hs();V5();ol=[],NB=[],DB=0,RB={},$tt=o(()=>{ol=[],NB=[],DB=0,RB={}},"clear"),Vtt=o(t=>{if(ol.length===0)return null;let e=ol[0].level,r=null;for(let n=ol.length-1;n>=0;n--)if(ol[n].level===e&&!r&&(r=ol[n]),ol[n].levell.parentId===i.id);for(let l of s){let u={id:l.id,parentId:i.id,label:Tr(l.label??"",n),isGroup:!1,ticket:l?.ticket,priority:l?.priority,assigned:l?.assigned,icon:l?.icon,shape:"kanbanItem",level:l.level,rx:5,ry:5,cssStyles:["text-align: left"]};e.push(u)}}return{nodes:e,edges:t,other:{},config:de()}},"getData"),Htt=o((t,e,r,n,i)=>{let a=de(),s=a.mindmap?.padding??ur.mindmap.padding;switch(n){case Xi.ROUNDED_RECT:case Xi.RECT:case Xi.HEXAGON:s*=2}let l={id:Tr(e,a)||"kbn"+DB++,level:t,label:Tr(r,a),width:a.mindmap?.maxNodeWidth??ur.mindmap.maxNodeWidth,padding:s,isGroup:!1};if(i!==void 0){let h;i.includes(` +`)?h=i+` +`:h=`{ +`+i+` +}`;let f=fm(h,{schema:hm});if(f.shape&&(f.shape!==f.shape.toLowerCase()||f.shape.includes("_")))throw new Error(`No such shape: ${f.shape}. Shape names should be lowercase.`);f?.shape&&f.shape==="kanbanItem"&&(l.shape=f?.shape),f?.label&&(l.label=f?.label),f?.icon&&(l.icon=f?.icon.toString()),f?.assigned&&(l.assigned=f?.assigned.toString()),f?.ticket&&(l.ticket=f?.ticket.toString()),f?.priority&&(l.priority=f?.priority)}let u=Vtt(t);u?l.parentId=u.id||"kbn"+DB++:NB.push(l),ol.push(l)},"addNode"),Xi={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},Wtt=o((t,e)=>{switch(Y.debug("In get type",t,e),t){case"[":return Xi.RECT;case"(":return e===")"?Xi.ROUNDED_RECT:Xi.CLOUD;case"((":return Xi.CIRCLE;case")":return Xi.CLOUD;case"))":return Xi.BANG;case"{{":return Xi.HEXAGON;default:return Xi.DEFAULT}},"getType"),Ytt=o((t,e)=>{RB[t]=e},"setElementForId"),qtt=o(t=>{if(!t)return;let e=de(),r=ol[ol.length-1];t.icon&&(r.icon=Tr(t.icon,e)),t.class&&(r.cssClasses=Tr(t.class,e))},"decorateNode"),Xtt=o(t=>{switch(t){case Xi.DEFAULT:return"no-border";case Xi.RECT:return"rect";case Xi.ROUNDED_RECT:return"rounded-rect";case Xi.CIRCLE:return"circle";case Xi.CLOUD:return"cloud";case Xi.BANG:return"bang";case Xi.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),jtt=o(()=>Y,"getLogger"),Ktt=o(t=>RB[t],"getElementById"),Qtt={clear:$tt,addNode:Htt,getSections:Y1e,getData:Utt,nodeType:Xi,getType:Wtt,setElementForId:Ytt,decorateNode:qtt,type2Str:Xtt,getLogger:jtt,getElementById:Ktt},q1e=Qtt});var Ztt,j1e,K1e=M(()=>{"use strict";Vt();ht();Hu();ni();hs();K5();sw();Ztt=o(async(t,e,r,n)=>{Y.debug(`Rendering kanban diagram +`+t);let a=n.db.getData(),s=de();s.htmlLabels=!1;let l=Oa(e),u=l.append("g");u.attr("class","sections");let h=l.append("g");h.attr("class","items");let f=a.nodes.filter(v=>v.isGroup),d=0,p=10,m=[],g=25;for(let v of f){let x=s?.kanban?.sectionWidth||200;d=d+1,v.x=x*d+(d-1)*p/2,v.width=x,v.y=0,v.height=x*3,v.rx=5,v.ry=5,v.cssClasses=v.cssClasses+" section-"+d;let b=await mm(u,v);g=Math.max(g,b?.labelBBox?.height),m.push(b)}let y=0;for(let v of f){let x=m[y];y=y+1;let b=s?.kanban?.sectionWidth||200,w=-b*3/2+g,_=w,T=a.nodes.filter(C=>C.parentId===v.id);for(let C of T){if(C.isGroup)throw new Error("Groups within groups are not allowed in Kanban diagrams");C.x=v.x,C.width=b-1.5*p;let I=(await gm(h,C,{config:s})).node().getBBox();C.y=_+I.height/2,await _v(C),_=C.y+I.height/2+p/2}let E=x.cluster.select("rect"),L=Math.max(_-w+3*p,50)+(g-25);E.attr("height",L)}_o(void 0,l,s.mindmap?.padding??ur.kanban.padding,s.mindmap?.useMaxWidth??ur.kanban.useMaxWidth)},"draw"),j1e={draw:Ztt}});var Jtt,ert,Q1e,Z1e=M(()=>{"use strict";To();Jtt=o(t=>{let e="";for(let n=0;nt.darkMode?Bt(n,i):Dt(n,i),"adjuster");for(let n=0;n` + .edge { + stroke-width: 3; + } + ${Jtt(t)} + .section-root rect, .section-root path, .section-root circle, .section-root polygon { + fill: ${t.git0}; + } + .section-root text { + fill: ${t.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .cluster-label, .label { + color: ${t.textColor}; + fill: ${t.textColor}; + } + .kanban-label { + dy: 1em; + alignment-baseline: middle; + text-anchor: middle; + dominant-baseline: middle; + text-align: center; + } +`,"getStyles"),Q1e=ert});var J1e={};vr(J1e,{diagram:()=>trt});var trt,eye=M(()=>{"use strict";W1e();X1e();K1e();Z1e();trt={db:q1e,renderer:j1e,parser:H1e,styles:Q1e}});var MB,ub,nye=M(()=>{"use strict";MB=function(){var t=o(function(l,u,h,f){for(h=h||{},f=l.length;f--;h[l[f]]=u);return h},"o"),e=[1,9],r=[1,10],n=[1,5,10,12],i={trace:o(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:o(function(u,h,f,d,p,m,g){var y=m.length-1;switch(p){case 7:let v=d.findOrCreateNode(m[y-4].trim().replaceAll('""','"')),x=d.findOrCreateNode(m[y-2].trim().replaceAll('""','"')),b=parseFloat(m[y].trim());d.addLink(v,x,b);break;case 8:case 9:case 11:this.$=m[y];break;case 10:this.$=m[y-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:e,20:r},{1:[2,6],7:11,10:[1,12]},t(r,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(n,[2,8]),t(n,[2,9]),{19:[1,16]},t(n,[2,11]),{1:[2,1]},{1:[2,5]},t(r,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:e,20:r},{15:18,16:7,17:8,18:e,20:r},{18:[1,19]},t(r,[2,3]),{12:[1,20]},t(n,[2,10]),{15:21,16:7,17:8,18:e,20:r},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:o(function(u,h){if(h.recoverable)this.trace(u);else{var f=new Error(u);throw f.hash=h,f}},"parseError"),parse:o(function(u){var h=this,f=[0],d=[],p=[null],m=[],g=this.table,y="",v=0,x=0,b=0,w=2,_=1,T=m.slice.call(arguments,1),E=Object.create(this.lexer),L={yy:{}};for(var C in this.yy)Object.prototype.hasOwnProperty.call(this.yy,C)&&(L.yy[C]=this.yy[C]);E.setInput(u,L.yy),L.yy.lexer=E,L.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var A=E.yylloc;m.push(A);var I=E.options&&E.options.ranges;typeof L.yy.parseError=="function"?this.parseError=L.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function D(ie){f.length=f.length-2*ie,p.length=p.length-ie,m.length=m.length-ie}o(D,"popStack");function k(){var ie;return ie=d.pop()||E.lex()||_,typeof ie!="number"&&(ie instanceof Array&&(d=ie,ie=d.pop()),ie=h.symbols_[ie]||ie),ie}o(k,"lex");for(var R,S,O,N,P,F,B={},$,z,W,j;;){if(O=f[f.length-1],this.defaultActions[O]?N=this.defaultActions[O]:((R===null||typeof R>"u")&&(R=k()),N=g[O]&&g[O][R]),typeof N>"u"||!N.length||!N[0]){var K="";j=[];for($ in g[O])this.terminals_[$]&&$>w&&j.push("'"+this.terminals_[$]+"'");E.showPosition?K="Parse error on line "+(v+1)+`: +`+E.showPosition()+` +Expecting `+j.join(", ")+", got '"+(this.terminals_[R]||R)+"'":K="Parse error on line "+(v+1)+": Unexpected "+(R==_?"end of input":"'"+(this.terminals_[R]||R)+"'"),this.parseError(K,{text:E.match,token:this.terminals_[R]||R,line:E.yylineno,loc:A,expected:j})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+R);switch(N[0]){case 1:f.push(R),p.push(E.yytext),m.push(E.yylloc),f.push(N[1]),R=null,S?(R=S,S=null):(x=E.yyleng,y=E.yytext,v=E.yylineno,A=E.yylloc,b>0&&b--);break;case 2:if(z=this.productions_[N[1]][1],B.$=p[p.length-z],B._$={first_line:m[m.length-(z||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-(z||1)].first_column,last_column:m[m.length-1].last_column},I&&(B._$.range=[m[m.length-(z||1)].range[0],m[m.length-1].range[1]]),F=this.performAction.apply(B,[y,x,v,L.yy,N[1],p,m].concat(T)),typeof F<"u")return F;z&&(f=f.slice(0,-1*z*2),p=p.slice(0,-1*z),m=m.slice(0,-1*z)),f.push(this.productions_[N[1]][0]),p.push(B.$),m.push(B._$),W=g[f[f.length-2]][f[f.length-1]],f.push(W);break;case 3:return!0}}return!0},"parse")},a=function(){var l={EOF:1,parseError:o(function(h,f){if(this.yy.parser)this.yy.parser.parseError(h,f);else throw new Error(h)},"parseError"),setInput:o(function(u,h){return this.yy=h||this.yy||{},this._input=u,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:o(function(){var u=this._input[0];this.yytext+=u,this.yyleng++,this.offset++,this.match+=u,this.matched+=u;var h=u.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),u},"input"),unput:o(function(u){var h=u.length,f=u.split(/(?:\r\n?|\n)/g);this._input=u+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var d=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),f.length-1&&(this.yylineno-=f.length-1);var p=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:f?(f.length===d.length?this.yylloc.first_column:0)+d[d.length-f.length].length-f[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(u){this.unput(this.match.slice(u))},"less"),pastInput:o(function(){var u=this.matched.substr(0,this.matched.length-this.match.length);return(u.length>20?"...":"")+u.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var u=this.match;return u.length<20&&(u+=this._input.substr(0,20-u.length)),(u.substr(0,20)+(u.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var u=this.pastInput(),h=new Array(u.length+1).join("-");return u+this.upcomingInput()+` +`+h+"^"},"showPosition"),test_match:o(function(u,h){var f,d,p;if(this.options.backtrack_lexer&&(p={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&&(p.yylloc.range=this.yylloc.range.slice(0))),d=u[0].match(/(?:\r\n?|\n).*/g),d&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+u[0].length},this.yytext+=u[0],this.match+=u[0],this.matches=u,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(u[0].length),this.matched+=u[0],f=this.performAction.call(this,this.yy,this,h,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),f)return f;if(this._backtrack){for(var m in p)this[m]=p[m];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var u,h,f,d;this._more||(this.yytext="",this.match="");for(var p=this._currentRules(),m=0;mh[0].length)){if(h=f,d=m,this.options.backtrack_lexer){if(u=this.test_match(f,p[m]),u!==!1)return u;if(this._backtrack){h=!1;continue}else return!1}else if(!this.options.flex)break}return h?(u=this.test_match(h,p[d]),u!==!1?u:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var h=this.next();return h||this.lex()},"lex"),begin:o(function(h){this.conditionStack.push(h)},"begin"),popState:o(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:o(function(h){this.begin(h)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(h,f,d,p){var m=p;switch(d){case 0:return this.pushState("csv"),4;break;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;break;case 5:return 20;case 6:return this.popState("escaped_text"),18;break;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}}};return l}();i.lexer=a;function s(){this.yy={}}return o(s,"Parser"),s.prototype=i,i.Parser=s,new s}();MB.parser=MB;ub=MB});var H6,W6,U6,art,IB,srt,OB,ort,lrt,crt,urt,iye,aye=M(()=>{"use strict";Vt();fr();ki();H6=[],W6=[],U6=new Map,art=o(()=>{H6=[],W6=[],U6=new Map,_r()},"clear"),IB=class{constructor(e,r,n=0){this.source=e;this.target=r;this.value=n}static{o(this,"SankeyLink")}},srt=o((t,e,r)=>{H6.push(new IB(t,e,r))},"addLink"),OB=class{constructor(e){this.ID=e}static{o(this,"SankeyNode")}},ort=o(t=>{t=je.sanitizeText(t,de());let e=U6.get(t);return e===void 0&&(e=new OB(t),U6.set(t,e),W6.push(e)),e},"findOrCreateNode"),lrt=o(()=>W6,"getNodes"),crt=o(()=>H6,"getLinks"),urt=o(()=>({nodes:W6.map(t=>({id:t.ID})),links:H6.map(t=>({source:t.source.ID,target:t.target.ID,value:t.value}))}),"getGraph"),iye={nodesMap:U6,getConfig:o(()=>de().sankey,"getConfig"),getNodes:lrt,getLinks:crt,getGraph:urt,addLink:srt,findOrCreateNode:ort,getAccTitle:Pr,setAccTitle:Rr,getAccDescription:Fr,setAccDescription:Br,getDiagramTitle:Jr,setDiagramTitle:ln,clear:art}});function hb(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r=i)&&(r=i)}return r}var sye=M(()=>{"use strict";o(hb,"max")});function T1(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var oye=M(()=>{"use strict";o(T1,"min")});function k1(t,e){let r=0;if(e===void 0)for(let n of t)(n=+n)&&(r+=n);else{let n=-1;for(let i of t)(i=+e(i,++n,t))&&(r+=i)}return r}var lye=M(()=>{"use strict";o(k1,"sum")});var PB=M(()=>{"use strict";sye();oye();lye()});function hrt(t){return t.target.depth}function BB(t){return t.depth}function FB(t,e){return e-1-t.height}function fb(t,e){return t.sourceLinks.length?t.depth:e-1}function zB(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?T1(t.sourceLinks,hrt)-1:0}var GB=M(()=>{"use strict";PB();o(hrt,"targetDepth");o(BB,"left");o(FB,"right");o(fb,"justify");o(zB,"center")});function E1(t){return function(){return t}}var cye=M(()=>{"use strict";o(E1,"constant")});function uye(t,e){return Y6(t.source,e.source)||t.index-e.index}function hye(t,e){return Y6(t.target,e.target)||t.index-e.index}function Y6(t,e){return t.y0-e.y0}function $B(t){return t.value}function frt(t){return t.index}function drt(t){return t.nodes}function prt(t){return t.links}function fye(t,e){let r=t.get(e);if(!r)throw new Error("missing: "+e);return r}function dye({nodes:t}){for(let e of t){let r=e.y0,n=r;for(let i of e.sourceLinks)i.y0=r+i.width/2,r+=i.width;for(let i of e.targetLinks)i.y1=n+i.width/2,n+=i.width}}function q6(){let t=0,e=0,r=1,n=1,i=24,a=8,s,l=frt,u=fb,h,f,d=drt,p=prt,m=6;function g(){let O={nodes:d.apply(null,arguments),links:p.apply(null,arguments)};return y(O),v(O),x(O),b(O),T(O),dye(O),O}o(g,"sankey"),g.update=function(O){return dye(O),O},g.nodeId=function(O){return arguments.length?(l=typeof O=="function"?O:E1(O),g):l},g.nodeAlign=function(O){return arguments.length?(u=typeof O=="function"?O:E1(O),g):u},g.nodeSort=function(O){return arguments.length?(h=O,g):h},g.nodeWidth=function(O){return arguments.length?(i=+O,g):i},g.nodePadding=function(O){return arguments.length?(a=s=+O,g):a},g.nodes=function(O){return arguments.length?(d=typeof O=="function"?O:E1(O),g):d},g.links=function(O){return arguments.length?(p=typeof O=="function"?O:E1(O),g):p},g.linkSort=function(O){return arguments.length?(f=O,g):f},g.size=function(O){return arguments.length?(t=e=0,r=+O[0],n=+O[1],g):[r-t,n-e]},g.extent=function(O){return arguments.length?(t=+O[0][0],r=+O[1][0],e=+O[0][1],n=+O[1][1],g):[[t,e],[r,n]]},g.iterations=function(O){return arguments.length?(m=+O,g):m};function y({nodes:O,links:N}){for(let[F,B]of O.entries())B.index=F,B.sourceLinks=[],B.targetLinks=[];let P=new Map(O.map((F,B)=>[l(F,B,O),F]));for(let[F,B]of N.entries()){B.index=F;let{source:$,target:z}=B;typeof $!="object"&&($=B.source=fye(P,$)),typeof z!="object"&&(z=B.target=fye(P,z)),$.sourceLinks.push(B),z.targetLinks.push(B)}if(f!=null)for(let{sourceLinks:F,targetLinks:B}of O)F.sort(f),B.sort(f)}o(y,"computeNodeLinks");function v({nodes:O}){for(let N of O)N.value=N.fixedValue===void 0?Math.max(k1(N.sourceLinks,$B),k1(N.targetLinks,$B)):N.fixedValue}o(v,"computeNodeValues");function x({nodes:O}){let N=O.length,P=new Set(O),F=new Set,B=0;for(;P.size;){for(let $ of P){$.depth=B;for(let{target:z}of $.sourceLinks)F.add(z)}if(++B>N)throw new Error("circular link");P=F,F=new Set}}o(x,"computeNodeDepths");function b({nodes:O}){let N=O.length,P=new Set(O),F=new Set,B=0;for(;P.size;){for(let $ of P){$.height=B;for(let{source:z}of $.targetLinks)F.add(z)}if(++B>N)throw new Error("circular link");P=F,F=new Set}}o(b,"computeNodeHeights");function w({nodes:O}){let N=hb(O,B=>B.depth)+1,P=(r-t-i)/(N-1),F=new Array(N);for(let B of O){let $=Math.max(0,Math.min(N-1,Math.floor(u.call(null,B,N))));B.layer=$,B.x0=t+$*P,B.x1=B.x0+i,F[$]?F[$].push(B):F[$]=[B]}if(h)for(let B of F)B.sort(h);return F}o(w,"computeNodeLayers");function _(O){let N=T1(O,P=>(n-e-(P.length-1)*s)/k1(P,$B));for(let P of O){let F=e;for(let B of P){B.y0=F,B.y1=F+B.value*N,F=B.y1+s;for(let $ of B.sourceLinks)$.width=$.value*N}F=(n-F+s)/(P.length+1);for(let B=0;BP.length)-1)),_(N);for(let P=0;P0))continue;let K=(W/j-z.y0)*N;z.y0+=K,z.y1+=K,D(z)}h===void 0&&$.sort(Y6),C($,P)}}o(E,"relaxLeftToRight");function L(O,N,P){for(let F=O.length,B=F-2;B>=0;--B){let $=O[B];for(let z of $){let W=0,j=0;for(let{target:ie,value:Q}of z.sourceLinks){let ee=Q*(ie.layer-z.layer);W+=S(z,ie)*ee,j+=ee}if(!(j>0))continue;let K=(W/j-z.y0)*N;z.y0+=K,z.y1+=K,D(z)}h===void 0&&$.sort(Y6),C($,P)}}o(L,"relaxRightToLeft");function C(O,N){let P=O.length>>1,F=O[P];I(O,F.y0-s,P-1,N),A(O,F.y1+s,P+1,N),I(O,n,O.length-1,N),A(O,e,0,N)}o(C,"resolveCollisions");function A(O,N,P,F){for(;P1e-6&&(B.y0+=$,B.y1+=$),N=B.y1+s}}o(A,"resolveCollisionsTopToBottom");function I(O,N,P,F){for(;P>=0;--P){let B=O[P],$=(B.y1-N)*F;$>1e-6&&(B.y0-=$,B.y1-=$),N=B.y0-s}}o(I,"resolveCollisionsBottomToTop");function D({sourceLinks:O,targetLinks:N}){if(f===void 0){for(let{source:{sourceLinks:P}}of N)P.sort(hye);for(let{target:{targetLinks:P}}of O)P.sort(uye)}}o(D,"reorderNodeLinks");function k(O){if(f===void 0)for(let{sourceLinks:N,targetLinks:P}of O)N.sort(hye),P.sort(uye)}o(k,"reorderLinks");function R(O,N){let P=O.y0-(O.sourceLinks.length-1)*s/2;for(let{target:F,width:B}of O.sourceLinks){if(F===N)break;P+=B+s}for(let{source:F,width:B}of N.targetLinks){if(F===O)break;P-=B}return P}o(R,"targetTop");function S(O,N){let P=N.y0-(N.targetLinks.length-1)*s/2;for(let{source:F,width:B}of N.targetLinks){if(F===O)break;P+=B+s}for(let{target:F,width:B}of O.sourceLinks){if(F===N)break;P-=B}return P}return o(S,"sourceTop"),g}var pye=M(()=>{"use strict";PB();GB();cye();o(uye,"ascendingSourceBreadth");o(hye,"ascendingTargetBreadth");o(Y6,"ascendingBreadth");o($B,"value");o(frt,"defaultId");o(drt,"defaultNodes");o(prt,"defaultLinks");o(fye,"find");o(dye,"computeLinkBreadths");o(q6,"Sankey")});function HB(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function mye(){return new HB}var VB,UB,q0,mrt,WB,gye=M(()=>{"use strict";VB=Math.PI,UB=2*VB,q0=1e-6,mrt=UB-q0;o(HB,"Path");o(mye,"path");HB.prototype=mye.prototype={constructor:HB,moveTo:o(function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},"moveTo"),closePath:o(function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},"closePath"),lineTo:o(function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},"lineTo"),quadraticCurveTo:o(function(t,e,r,n){this._+="Q"+ +t+","+ +e+","+(this._x1=+r)+","+(this._y1=+n)},"quadraticCurveTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._+="C"+ +t+","+ +e+","+ +r+","+ +n+","+(this._x1=+i)+","+(this._y1=+a)},"bezierCurveTo"),arcTo:o(function(t,e,r,n,i){t=+t,e=+e,r=+r,n=+n,i=+i;var a=this._x1,s=this._y1,l=r-t,u=n-e,h=a-t,f=s-e,d=h*h+f*f;if(i<0)throw new Error("negative radius: "+i);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(d>q0)if(!(Math.abs(f*l-u*h)>q0)||!i)this._+="L"+(this._x1=t)+","+(this._y1=e);else{var p=r-a,m=n-s,g=l*l+u*u,y=p*p+m*m,v=Math.sqrt(g),x=Math.sqrt(d),b=i*Math.tan((VB-Math.acos((g+d-y)/(2*v*x)))/2),w=b/x,_=b/v;Math.abs(w-1)>q0&&(this._+="L"+(t+w*h)+","+(e+w*f)),this._+="A"+i+","+i+",0,0,"+ +(f*p>h*m)+","+(this._x1=t+_*l)+","+(this._y1=e+_*u)}},"arcTo"),arc:o(function(t,e,r,n,i,a){t=+t,e=+e,r=+r,a=!!a;var s=r*Math.cos(n),l=r*Math.sin(n),u=t+s,h=e+l,f=1^a,d=a?n-i:i-n;if(r<0)throw new Error("negative radius: "+r);this._x1===null?this._+="M"+u+","+h:(Math.abs(this._x1-u)>q0||Math.abs(this._y1-h)>q0)&&(this._+="L"+u+","+h),r&&(d<0&&(d=d%UB+UB),d>mrt?this._+="A"+r+","+r+",0,1,"+f+","+(t-s)+","+(e-l)+"A"+r+","+r+",0,1,"+f+","+(this._x1=u)+","+(this._y1=h):d>q0&&(this._+="A"+r+","+r+",0,"+ +(d>=VB)+","+f+","+(this._x1=t+r*Math.cos(i))+","+(this._y1=e+r*Math.sin(i))))},"arc"),rect:o(function(t,e,r,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},"rect"),toString:o(function(){return this._},"toString")};WB=mye});var yye=M(()=>{"use strict";gye()});function X6(t){return o(function(){return t},"constant")}var vye=M(()=>{"use strict";o(X6,"default")});function xye(t){return t[0]}function bye(t){return t[1]}var wye=M(()=>{"use strict";o(xye,"x");o(bye,"y")});var Tye,kye=M(()=>{"use strict";Tye=Array.prototype.slice});function grt(t){return t.source}function yrt(t){return t.target}function vrt(t){var e=grt,r=yrt,n=xye,i=bye,a=null;function s(){var l,u=Tye.call(arguments),h=e.apply(this,u),f=r.apply(this,u);if(a||(a=l=WB()),t(a,+n.apply(this,(u[0]=h,u)),+i.apply(this,u),+n.apply(this,(u[0]=f,u)),+i.apply(this,u)),l)return a=null,l+""||null}return o(s,"link"),s.source=function(l){return arguments.length?(e=l,s):e},s.target=function(l){return arguments.length?(r=l,s):r},s.x=function(l){return arguments.length?(n=typeof l=="function"?l:X6(+l),s):n},s.y=function(l){return arguments.length?(i=typeof l=="function"?l:X6(+l),s):i},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function xrt(t,e,r,n,i){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,i,n,i)}function YB(){return vrt(xrt)}var Eye=M(()=>{"use strict";yye();kye();vye();wye();o(grt,"linkSource");o(yrt,"linkTarget");o(vrt,"link");o(xrt,"curveHorizontal");o(YB,"linkHorizontal")});var Sye=M(()=>{"use strict";Eye()});function brt(t){return[t.source.x1,t.y0]}function wrt(t){return[t.target.x0,t.y1]}function j6(){return YB().source(brt).target(wrt)}var Cye=M(()=>{"use strict";Sye();o(brt,"horizontalSource");o(wrt,"horizontalTarget");o(j6,"default")});var Aye=M(()=>{"use strict";pye();GB();Cye()});var db,_ye=M(()=>{"use strict";db=class t{static{o(this,"Uid")}static{this.count=0}static next(e){return new t(e+ ++t.count)}constructor(e){this.id=e,this.href=`#${e}`}toString(){return"url("+this.href+")"}}});var Trt,krt,Lye,Dye=M(()=>{"use strict";Vt();mr();Aye();ni();_ye();Trt={left:BB,right:FB,center:zB,justify:fb},krt=o(function(t,e,r,n){let{securityLevel:i,sankey:a}=de(),s=S4.sankey,l;i==="sandbox"&&(l=ze("#i"+e));let u=i==="sandbox"?ze(l.nodes()[0].contentDocument.body):ze("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):ze(`[id="${e}"]`),f=a?.width??s.width,d=a?.height??s.width,p=a?.useMaxWidth??s.useMaxWidth,m=a?.nodeAlignment??s.nodeAlignment,g=a?.prefix??s.prefix,y=a?.suffix??s.suffix,v=a?.showValues??s.showValues,x=n.db.getGraph(),b=Trt[m];q6().nodeId(I=>I.id).nodeWidth(10).nodePadding(10+(v?15:0)).nodeAlign(b).extent([[0,0],[f,d]])(x);let T=du(Z8);h.append("g").attr("class","nodes").selectAll(".node").data(x.nodes).join("g").attr("class","node").attr("id",I=>(I.uid=db.next("node-")).id).attr("transform",function(I){return"translate("+I.x0+","+I.y0+")"}).attr("x",I=>I.x0).attr("y",I=>I.y0).append("rect").attr("height",I=>I.y1-I.y0).attr("width",I=>I.x1-I.x0).attr("fill",I=>T(I.id));let E=o(({id:I,value:D})=>v?`${I} +${g}${Math.round(D*100)/100}${y}`:I,"getText");h.append("g").attr("class","node-labels").attr("font-family","sans-serif").attr("font-size",14).selectAll("text").data(x.nodes).join("text").attr("x",I=>I.x0(I.y1+I.y0)/2).attr("dy",`${v?"0":"0.35"}em`).attr("text-anchor",I=>I.x0(D.uid=db.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",D=>D.source.x1).attr("x2",D=>D.target.x0);I.append("stop").attr("offset","0%").attr("stop-color",D=>T(D.source.id)),I.append("stop").attr("offset","100%").attr("stop-color",D=>T(D.target.id))}let A;switch(C){case"gradient":A=o(I=>I.uid,"coloring");break;case"source":A=o(I=>T(I.source.id),"coloring");break;case"target":A=o(I=>T(I.target.id),"coloring");break;default:A=C}L.append("path").attr("d",j6()).attr("stroke",A).attr("stroke-width",I=>Math.max(1,I.width)),_o(void 0,h,0,p)},"draw"),Lye={draw:krt}});var Nye,Rye=M(()=>{"use strict";Nye=o(t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` +`).trim(),"prepareTextForParsing")});var Mye={};vr(Mye,{diagram:()=>Srt});var Ert,Srt,Iye=M(()=>{"use strict";nye();aye();Dye();Rye();Ert=ub.parse.bind(ub);ub.parse=t=>Ert(Nye(t));Srt={parser:ub,db:iye,renderer:Lye}});var Bye,qB,Lrt,Drt,Nrt,Rrt,Mrt,Rf,XB=M(()=>{"use strict";Ua();hs();hr();ki();Bye={packet:[]},qB=structuredClone(Bye),Lrt=ur.packet,Drt=o(()=>{let t=ws({...Lrt,...Sr().packet});return t.showBits&&(t.paddingY+=10),t},"getConfig"),Nrt=o(()=>qB.packet,"getPacket"),Rrt=o(t=>{t.length>0&&qB.packet.push(t)},"pushWord"),Mrt=o(()=>{_r(),qB=structuredClone(Bye)},"clear"),Rf={pushWord:Rrt,getPacket:Nrt,getConfig:Drt,clear:Mrt,setAccTitle:Rr,getAccTitle:Pr,setDiagramTitle:ln,getDiagramTitle:Jr,getAccDescription:Fr,setAccDescription:Br}});var Irt,Ort,Prt,Fye,zye=M(()=>{"use strict";Ng();ht();ox();XB();Irt=1e4,Ort=o(t=>{lf(t,Rf);let e=-1,r=[],n=1,{bitsPerRow:i}=Rf.getConfig();for(let{start:a,end:s,label:l}of t.blocks){if(s&&s{if(t.end===void 0&&(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*r?[t,void 0]:[{start:t.start,end:e*r-1,label:t.label},{start:e*r,end:t.end,label:t.label}]},"getNextFittingBlock"),Fye={parse:o(async t=>{let e=await Gl("packet",t);Y.debug(e),Ort(e)},"parse")}});var Brt,Frt,Gye,$ye=M(()=>{"use strict";Hu();ni();Brt=o((t,e,r,n)=>{let i=n.db,a=i.getConfig(),{rowHeight:s,paddingY:l,bitWidth:u,bitsPerRow:h}=a,f=i.getPacket(),d=i.getDiagramTitle(),p=s+l,m=p*(f.length+1)-(d?0:s),g=u*h+2,y=Oa(e);y.attr("viewbox",`0 0 ${g} ${m}`),Zr(y,m,g,a.useMaxWidth);for(let[v,x]of f.entries())Frt(y,x,v,a);y.append("text").text(d).attr("x",g/2).attr("y",m-p/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),Frt=o((t,e,r,{rowHeight:n,paddingX:i,paddingY:a,bitWidth:s,bitsPerRow:l,showBits:u})=>{let h=t.append("g"),f=r*(n+a)+a;for(let d of e){let p=d.start%l*s+1,m=(d.end-d.start+1)*s-i;if(h.append("rect").attr("x",p).attr("y",f).attr("width",m).attr("height",n).attr("class","packetBlock"),h.append("text").attr("x",p+m/2).attr("y",f+n/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(d.label),!u)continue;let g=d.end===d.start,y=f-2;h.append("text").attr("x",p+(g?m/2:0)).attr("y",y).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",g?"middle":"start").text(d.start),g||h.append("text").attr("x",p+m).attr("y",y).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(d.end)}},"drawWord"),Gye={draw:Brt}});var zrt,Vye,Uye=M(()=>{"use strict";hr();zrt={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},Vye=o(({packet:t}={})=>{let e=ws(zrt,t);return` + .packetByte { + font-size: ${e.byteFontSize}; + } + .packetByte.start { + fill: ${e.startByteColor}; + } + .packetByte.end { + fill: ${e.endByteColor}; + } + .packetLabel { + fill: ${e.labelColor}; + font-size: ${e.labelFontSize}; + } + .packetTitle { + fill: ${e.titleColor}; + font-size: ${e.titleFontSize}; + } + .packetBlock { + stroke: ${e.blockStrokeColor}; + stroke-width: ${e.blockStrokeWidth}; + fill: ${e.blockFillColor}; + } + `},"styles")});var Hye={};vr(Hye,{diagram:()=>Grt});var Grt,Wye=M(()=>{"use strict";XB();zye();$ye();Uye();Grt={parser:Fye,db:Rf,renderer:Gye,styles:Vye}});var jB,Xye,jye=M(()=>{"use strict";jB=function(){var t=o(function(w,_,T,E){for(T=T||{},E=w.length;E--;T[w[E]]=_);return T},"o"),e=[1,7],r=[1,13],n=[1,14],i=[1,15],a=[1,19],s=[1,16],l=[1,17],u=[1,18],h=[8,30],f=[8,21,28,29,30,31,32,40,44,47],d=[1,23],p=[1,24],m=[8,15,16,21,28,29,30,31,32,40,44,47],g=[8,15,16,21,27,28,29,30,31,32,40,44,47],y=[1,49],v={trace:o(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:o(function(_,T,E,L,C,A,I){var D=A.length-1;switch(C){case 4:L.getLogger().debug("Rule: separator (NL) ");break;case 5:L.getLogger().debug("Rule: separator (Space) ");break;case 6:L.getLogger().debug("Rule: separator (EOF) ");break;case 7:L.getLogger().debug("Rule: hierarchy: ",A[D-1]),L.setHierarchy(A[D-1]);break;case 8:L.getLogger().debug("Stop NL ");break;case 9:L.getLogger().debug("Stop EOF ");break;case 10:L.getLogger().debug("Stop NL2 ");break;case 11:L.getLogger().debug("Stop EOF2 ");break;case 12:L.getLogger().debug("Rule: statement: ",A[D]),typeof A[D].length=="number"?this.$=A[D]:this.$=[A[D]];break;case 13:L.getLogger().debug("Rule: statement #2: ",A[D-1]),this.$=[A[D-1]].concat(A[D]);break;case 14:L.getLogger().debug("Rule: link: ",A[D],_),this.$={edgeTypeStr:A[D],label:""};break;case 15:L.getLogger().debug("Rule: LABEL link: ",A[D-3],A[D-1],A[D]),this.$={edgeTypeStr:A[D],label:A[D-1]};break;case 18:let k=parseInt(A[D]),R=L.generateId();this.$={id:R,type:"space",label:"",width:k,children:[]};break;case 23:L.getLogger().debug("Rule: (nodeStatement link node) ",A[D-2],A[D-1],A[D]," typestr: ",A[D-1].edgeTypeStr);let S=L.edgeStrToEdgeData(A[D-1].edgeTypeStr);this.$=[{id:A[D-2].id,label:A[D-2].label,type:A[D-2].type,directions:A[D-2].directions},{id:A[D-2].id+"-"+A[D].id,start:A[D-2].id,end:A[D].id,label:A[D-1].label,type:"edge",directions:A[D].directions,arrowTypeEnd:S,arrowTypeStart:"arrow_open"},{id:A[D].id,label:A[D].label,type:L.typeStr2Type(A[D].typeStr),directions:A[D].directions}];break;case 24:L.getLogger().debug("Rule: nodeStatement (abc88 node size) ",A[D-1],A[D]),this.$={id:A[D-1].id,label:A[D-1].label,type:L.typeStr2Type(A[D-1].typeStr),directions:A[D-1].directions,widthInColumns:parseInt(A[D],10)};break;case 25:L.getLogger().debug("Rule: nodeStatement (node) ",A[D]),this.$={id:A[D].id,label:A[D].label,type:L.typeStr2Type(A[D].typeStr),directions:A[D].directions,widthInColumns:1};break;case 26:L.getLogger().debug("APA123",this?this:"na"),L.getLogger().debug("COLUMNS: ",A[D]),this.$={type:"column-setting",columns:A[D]==="auto"?-1:parseInt(A[D])};break;case 27:L.getLogger().debug("Rule: id-block statement : ",A[D-2],A[D-1]);let O=L.generateId();this.$={...A[D-2],type:"composite",children:A[D-1]};break;case 28:L.getLogger().debug("Rule: blockStatement : ",A[D-2],A[D-1],A[D]);let N=L.generateId();this.$={id:N,type:"composite",label:"",children:A[D-1]};break;case 29:L.getLogger().debug("Rule: node (NODE_ID separator): ",A[D]),this.$={id:A[D]};break;case 30:L.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",A[D-1],A[D]),this.$={id:A[D-1],label:A[D].label,typeStr:A[D].typeStr,directions:A[D].directions};break;case 31:L.getLogger().debug("Rule: dirList: ",A[D]),this.$=[A[D]];break;case 32:L.getLogger().debug("Rule: dirList: ",A[D-1],A[D]),this.$=[A[D-1]].concat(A[D]);break;case 33:L.getLogger().debug("Rule: nodeShapeNLabel: ",A[D-2],A[D-1],A[D]),this.$={typeStr:A[D-2]+A[D],label:A[D-1]};break;case 34:L.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",A[D-3],A[D-2]," #3:",A[D-1],A[D]),this.$={typeStr:A[D-3]+A[D],label:A[D-2],directions:A[D-1]};break;case 35:case 36:this.$={type:"classDef",id:A[D-1].trim(),css:A[D].trim()};break;case 37:this.$={type:"applyClass",id:A[D-1].trim(),styleClass:A[D].trim()};break;case 38:this.$={type:"applyStyles",id:A[D-1].trim(),stylesStr:A[D].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:e,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{8:[1,20]},t(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:e,28:r,29:n,31:i,32:a,40:s,44:l,47:u}),t(f,[2,16],{14:22,15:d,16:p}),t(f,[2,17]),t(f,[2,18]),t(f,[2,19]),t(f,[2,20]),t(f,[2,21]),t(f,[2,22]),t(m,[2,25],{27:[1,25]}),t(f,[2,26]),{19:26,26:12,32:a},{11:27,13:4,19:5,20:6,21:e,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},t(g,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},t(h,[2,13]),{26:35,32:a},{32:[2,14]},{17:[1,36]},t(m,[2,24]),{11:37,13:4,14:22,15:d,16:p,19:5,20:6,21:e,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},t(g,[2,30]),{18:[1,43]},{18:[1,44]},t(m,[2,23]),{18:[1,45]},{30:[1,46]},t(f,[2,28]),t(f,[2,35]),t(f,[2,36]),t(f,[2,37]),t(f,[2,38]),{37:[1,47]},{34:48,35:y},{15:[1,50]},t(f,[2,27]),t(g,[2,33]),{39:[1,51]},{34:52,35:y,39:[2,31]},{32:[2,15]},t(g,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:o(function(_,T){if(T.recoverable)this.trace(_);else{var E=new Error(_);throw E.hash=T,E}},"parseError"),parse:o(function(_){var T=this,E=[0],L=[],C=[null],A=[],I=this.table,D="",k=0,R=0,S=0,O=2,N=1,P=A.slice.call(arguments,1),F=Object.create(this.lexer),B={yy:{}};for(var $ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,$)&&(B.yy[$]=this.yy[$]);F.setInput(_,B.yy),B.yy.lexer=F,B.yy.parser=this,typeof F.yylloc>"u"&&(F.yylloc={});var z=F.yylloc;A.push(z);var W=F.options&&F.options.ranges;typeof B.yy.parseError=="function"?this.parseError=B.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function j(oe){E.length=E.length-2*oe,C.length=C.length-oe,A.length=A.length-oe}o(j,"popStack");function K(){var oe;return oe=L.pop()||F.lex()||N,typeof oe!="number"&&(oe instanceof Array&&(L=oe,oe=L.pop()),oe=T.symbols_[oe]||oe),oe}o(K,"lex");for(var ie,Q,ee,J,H,q,Z={},ae,ue,ce,te;;){if(ee=E[E.length-1],this.defaultActions[ee]?J=this.defaultActions[ee]:((ie===null||typeof ie>"u")&&(ie=K()),J=I[ee]&&I[ee][ie]),typeof J>"u"||!J.length||!J[0]){var De="";te=[];for(ae in I[ee])this.terminals_[ae]&&ae>O&&te.push("'"+this.terminals_[ae]+"'");F.showPosition?De="Parse error on line "+(k+1)+`: +`+F.showPosition()+` +Expecting `+te.join(", ")+", got '"+(this.terminals_[ie]||ie)+"'":De="Parse error on line "+(k+1)+": Unexpected "+(ie==N?"end of input":"'"+(this.terminals_[ie]||ie)+"'"),this.parseError(De,{text:F.match,token:this.terminals_[ie]||ie,line:F.yylineno,loc:z,expected:te})}if(J[0]instanceof Array&&J.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ee+", token: "+ie);switch(J[0]){case 1:E.push(ie),C.push(F.yytext),A.push(F.yylloc),E.push(J[1]),ie=null,Q?(ie=Q,Q=null):(R=F.yyleng,D=F.yytext,k=F.yylineno,z=F.yylloc,S>0&&S--);break;case 2:if(ue=this.productions_[J[1]][1],Z.$=C[C.length-ue],Z._$={first_line:A[A.length-(ue||1)].first_line,last_line:A[A.length-1].last_line,first_column:A[A.length-(ue||1)].first_column,last_column:A[A.length-1].last_column},W&&(Z._$.range=[A[A.length-(ue||1)].range[0],A[A.length-1].range[1]]),q=this.performAction.apply(Z,[D,R,k,B.yy,J[1],C,A].concat(P)),typeof q<"u")return q;ue&&(E=E.slice(0,-1*ue*2),C=C.slice(0,-1*ue),A=A.slice(0,-1*ue)),E.push(this.productions_[J[1]][0]),C.push(Z.$),A.push(Z._$),ce=I[E[E.length-2]][E[E.length-1]],E.push(ce);break;case 3:return!0}}return!0},"parse")},x=function(){var w={EOF:1,parseError:o(function(T,E){if(this.yy.parser)this.yy.parser.parseError(T,E);else throw new Error(T)},"parseError"),setInput:o(function(_,T){return this.yy=T||this.yy||{},this._input=_,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:o(function(){var _=this._input[0];this.yytext+=_,this.yyleng++,this.offset++,this.match+=_,this.matched+=_;var T=_.match(/(?:\r\n?|\n).*/g);return T?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),_},"input"),unput:o(function(_){var T=_.length,E=_.split(/(?:\r\n?|\n)/g);this._input=_+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-T),this.offset-=T;var L=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 C=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===L.length?this.yylloc.first_column:0)+L[L.length-E.length].length-E[0].length:this.yylloc.first_column-T},this.options.ranges&&(this.yylloc.range=[C[0],C[0]+this.yyleng-T]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(_){this.unput(this.match.slice(_))},"less"),pastInput:o(function(){var _=this.matched.substr(0,this.matched.length-this.match.length);return(_.length>20?"...":"")+_.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var _=this.match;return _.length<20&&(_+=this._input.substr(0,20-_.length)),(_.substr(0,20)+(_.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var _=this.pastInput(),T=new Array(_.length+1).join("-");return _+this.upcomingInput()+` +`+T+"^"},"showPosition"),test_match:o(function(_,T){var E,L,C;if(this.options.backtrack_lexer&&(C={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&&(C.yylloc.range=this.yylloc.range.slice(0))),L=_[0].match(/(?:\r\n?|\n).*/g),L&&(this.yylineno+=L.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:L?L[L.length-1].length-L[L.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+_[0].length},this.yytext+=_[0],this.match+=_[0],this.matches=_,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(_[0].length),this.matched+=_[0],E=this.performAction.call(this,this.yy,this,T,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),E)return E;if(this._backtrack){for(var A in C)this[A]=C[A];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var _,T,E,L;this._more||(this.yytext="",this.match="");for(var C=this._currentRules(),A=0;AT[0].length)){if(T=E,L=A,this.options.backtrack_lexer){if(_=this.test_match(E,C[A]),_!==!1)return _;if(this._backtrack){T=!1;continue}else return!1}else if(!this.options.flex)break}return T?(_=this.test_match(T,C[L]),_!==!1?_:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var T=this.next();return T||this.lex()},"lex"),begin:o(function(T){this.conditionStack.push(T)},"begin"),popState:o(function(){var T=this.conditionStack.length-1;return T>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(T){return T=this.conditionStack.length-1-Math.abs(T||0),T>=0?this.conditionStack[T]:"INITIAL"},"topState"),pushState:o(function(T){this.begin(T)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(T,E,L,C){var A=C;switch(L){case 0:return 10;case 1:return T.getLogger().debug("Found space-block"),31;break;case 2:return T.getLogger().debug("Found nl-block"),31;break;case 3:return T.getLogger().debug("Found space-block"),29;break;case 4:T.getLogger().debug(".",E.yytext);break;case 5:T.getLogger().debug("_",E.yytext);break;case 6:return 5;case 7:return E.yytext=-1,28;break;case 8:return E.yytext=E.yytext.replace(/columns\s+/,""),T.getLogger().debug("COLUMNS (LEX)",E.yytext),28;break;case 9:this.pushState("md_string");break;case 10:return"MD_STR";case 11:this.popState();break;case 12:this.pushState("string");break;case 13:T.getLogger().debug("LEX: POPPING STR:",E.yytext),this.popState();break;case 14:return T.getLogger().debug("LEX: STR end:",E.yytext),"STR";break;case 15:return E.yytext=E.yytext.replace(/space\:/,""),T.getLogger().debug("SPACE NUM (LEX)",E.yytext),21;break;case 16:return E.yytext="1",T.getLogger().debug("COLUMNS (LEX)",E.yytext),21;break;case 17:return 43;case 18:return"LINKSTYLE";case 19:return"INTERPOLATE";case 20:return this.pushState("CLASSDEF"),40;break;case 21:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 22:return this.popState(),this.pushState("CLASSDEFID"),41;break;case 23:return this.popState(),42;break;case 24:return this.pushState("CLASS"),44;break;case 25:return this.popState(),this.pushState("CLASS_STYLE"),45;break;case 26:return this.popState(),46;break;case 27:return this.pushState("STYLE_STMNT"),47;break;case 28:return this.popState(),this.pushState("STYLE_DEFINITION"),48;break;case 29:return this.popState(),49;break;case 30:return this.pushState("acc_title"),"acc_title";break;case 31:return this.popState(),"acc_title_value";break;case 32:return this.pushState("acc_descr"),"acc_descr";break;case 33:return this.popState(),"acc_descr_value";break;case 34:this.pushState("acc_descr_multiline");break;case 35:this.popState();break;case 36:return"acc_descr_multiline_value";case 37:return 30;case 38:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 40:return this.popState(),T.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 41:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 43:return this.popState(),T.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 44:return this.popState(),T.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 45:return this.popState(),T.getLogger().debug("Lex: (("),"NODE_DEND";break;case 46:return this.popState(),T.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 47:return this.popState(),T.getLogger().debug("Lex: ("),"NODE_DEND";break;case 48:return this.popState(),T.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 49:return this.popState(),T.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),T.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 51:return this.popState(),T.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 52:return this.popState(),T.getLogger().debug("Lex: )"),"NODE_DEND";break;case 53:return this.popState(),T.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 54:return this.popState(),T.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 55:return T.getLogger().debug("Lexa: -)"),this.pushState("NODE"),36;break;case 56:return T.getLogger().debug("Lexa: (-"),this.pushState("NODE"),36;break;case 57:return T.getLogger().debug("Lexa: ))"),this.pushState("NODE"),36;break;case 58:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 59:return T.getLogger().debug("Lex: ((("),this.pushState("NODE"),36;break;case 60:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 61:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 62:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 63:return T.getLogger().debug("Lexc: >"),this.pushState("NODE"),36;break;case 64:return T.getLogger().debug("Lexa: (["),this.pushState("NODE"),36;break;case 65:return T.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;break;case 66:return this.pushState("NODE"),36;break;case 67:return this.pushState("NODE"),36;break;case 68:return this.pushState("NODE"),36;break;case 69:return this.pushState("NODE"),36;break;case 70:return this.pushState("NODE"),36;break;case 71:return this.pushState("NODE"),36;break;case 72:return this.pushState("NODE"),36;break;case 73:return T.getLogger().debug("Lexa: ["),this.pushState("NODE"),36;break;case 74:return this.pushState("BLOCK_ARROW"),T.getLogger().debug("LEX ARR START"),38;break;case 75:return T.getLogger().debug("Lex: NODE_ID",E.yytext),32;break;case 76:return T.getLogger().debug("Lex: EOF",E.yytext),8;break;case 77:this.pushState("md_string");break;case 78:this.pushState("md_string");break;case 79:return"NODE_DESCR";case 80:this.popState();break;case 81:T.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 82:T.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 83:return T.getLogger().debug("LEX: NODE_DESCR:",E.yytext),"NODE_DESCR";break;case 84:T.getLogger().debug("LEX POPPING"),this.popState();break;case 85:T.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 86:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (right): dir:",E.yytext),"DIR";break;case 87:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (left):",E.yytext),"DIR";break;case 88:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (x):",E.yytext),"DIR";break;case 89:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (y):",E.yytext),"DIR";break;case 90:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (up):",E.yytext),"DIR";break;case 91:return E.yytext=E.yytext.replace(/^,\s*/,""),T.getLogger().debug("Lex (down):",E.yytext),"DIR";break;case 92:return E.yytext="]>",T.getLogger().debug("Lex (ARROW_DIR end):",E.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 93:return T.getLogger().debug("Lex: LINK","#"+E.yytext+"#"),15;break;case 94:return T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 95:return T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 96:return T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 97:return T.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 98:return T.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 99:return T.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 100:this.pushState("md_string");break;case 101:return T.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 102:return this.popState(),T.getLogger().debug("Lex: LINK","#"+E.yytext+"#"),15;break;case 103:return this.popState(),T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 104:return this.popState(),T.getLogger().debug("Lex: LINK",E.yytext),15;break;case 105:return T.getLogger().debug("Lex: COLON",E.yytext),E.yytext=E.yytext.slice(1),27;break}},"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}}};return w}();v.lexer=x;function b(){this.yy={}}return o(b,"Parser"),b.prototype=v,v.Parser=b,new b}();jB.parser=jB;Xye=jB});function Krt(t){switch(Y.debug("typeStr2Type",t),t){case"[]":return"square";case"()":return Y.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 Qrt(t){switch(Y.debug("typeStr2Type",t),t){case"==":return"thick";default:return"normal"}}function Zrt(t){switch(t.trim()){case"--x":return"arrow_cross";case"--o":return"arrow_circle";default:return"arrow_point"}}var ql,QB,KB,Kye,Qye,Urt,Jye,Hrt,K6,Wrt,Yrt,qrt,Xrt,eve,ZB,pb,jrt,Zye,Jrt,ent,tnt,rnt,nnt,int,ant,snt,ont,lnt,cnt,tve,rve=M(()=>{"use strict";SL();Ua();Vt();ht();fr();ki();ql=new Map,QB=[],KB=new Map,Kye="color",Qye="fill",Urt="bgFill",Jye=",",Hrt=de(),K6=new Map,Wrt=o(t=>je.sanitizeText(t,Hrt),"sanitizeText"),Yrt=o(function(t,e=""){let r=K6.get(t);r||(r={id:t,styles:[],textStyles:[]},K6.set(t,r)),e?.split(Jye).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(Kye).exec(n)){let s=i.replace(Qye,Urt).replace(Kye,Qye);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),qrt=o(function(t,e=""){let r=ql.get(t);e!=null&&(r.styles=e.split(Jye))},"addStyle2Node"),Xrt=o(function(t,e){t.split(",").forEach(function(r){let n=ql.get(r);if(n===void 0){let i=r.trim();n={id:i,type:"na",children:[]},ql.set(i,n)}n.classes||(n.classes=[]),n.classes.push(e)})},"setCssClass"),eve=o((t,e)=>{let r=t.flat(),n=[];for(let i of r){if(i.label&&(i.label=Wrt(i.label)),i.type==="classDef"){Yrt(i.id,i.css);continue}if(i.type==="applyClass"){Xrt(i.id,i?.styleClass??"");continue}if(i.type==="applyStyles"){i?.stylesStr&&qrt(i.id,i?.stylesStr);continue}if(i.type==="column-setting")e.columns=i.columns??-1;else if(i.type==="edge"){let a=(KB.get(i.id)??0)+1;KB.set(i.id,a),i.id=a+"-"+i.id,QB.push(i)}else{i.label||(i.type==="composite"?i.label="":i.label=i.id);let a=ql.get(i.id);if(a===void 0?ql.set(i.id,i):(i.type!=="na"&&(a.type=i.type),i.label!==i.id&&(a.label=i.label)),i.children&&eve(i.children,i),i.type==="space"){let s=i.width??1;for(let l=0;l{Y.debug("Clear called"),_r(),pb={id:"root",type:"composite",children:[],columns:-1},ql=new Map([["root",pb]]),ZB=[],K6=new Map,QB=[],KB=new Map},"clear");o(Krt,"typeStr2Type");o(Qrt,"edgeTypeStr2Type");o(Zrt,"edgeStrToEdgeData");Zye=0,Jrt=o(()=>(Zye++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Zye),"generateId"),ent=o(t=>{pb.children=t,eve(t,pb),ZB=pb.children},"setHierarchy"),tnt=o(t=>{let e=ql.get(t);return e?e.columns?e.columns:e.children?e.children.length:-1:-1},"getColumns"),rnt=o(()=>[...ql.values()],"getBlocksFlat"),nnt=o(()=>ZB||[],"getBlocks"),int=o(()=>QB,"getEdges"),ant=o(t=>ql.get(t),"getBlock"),snt=o(t=>{ql.set(t.id,t)},"setBlock"),ont=o(()=>console,"getLogger"),lnt=o(function(){return K6},"getClasses"),cnt={getConfig:o(()=>Sr().block,"getConfig"),typeStr2Type:Krt,edgeTypeStr2Type:Qrt,edgeStrToEdgeData:Zrt,getLogger:ont,getBlocksFlat:rnt,getBlocks:nnt,getEdges:int,setHierarchy:ent,getBlock:ant,setBlock:snt,getColumns:tnt,getClasses:lnt,clear:jrt,generateId:Jrt},tve=cnt});var Q6,unt,nve,ive=M(()=>{"use strict";To();Q6=o((t,e)=>{let r=z1,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Hs(n,i,a,e)},"fade"),unt=o(t=>`.label { + font-family: ${t.fontFamily}; + color: ${t.nodeTextColor||t.textColor}; + } + .cluster-label text { + fill: ${t.titleColor}; + } + .cluster-label span,p { + color: ${t.titleColor}; + } + + + + .label text,span,p { + fill: ${t.nodeTextColor||t.textColor}; + color: ${t.nodeTextColor||t.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + .flowchart-label text { + text-anchor: middle; + } + // .flowchart-label .text-outer-tspan { + // text-anchor: middle; + // } + // .flowchart-label .text-inner-tspan { + // text-anchor: start; + // } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${t.arrowheadColor}; + } + + .edgePath .path { + stroke: ${t.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${t.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${t.edgeLabelBackground}; + rect { + opacity: 0.5; + background-color: ${t.edgeLabelBackground}; + fill: ${t.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${Q6(t.edgeLabelBackground,.5)}; + // background-color: + } + + .node .cluster { + // fill: ${Q6(t.mainBkg,.5)}; + fill: ${Q6(t.clusterBkg,.5)}; + stroke: ${Q6(t.clusterBorder,.2)}; + box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px; + stroke-width: 1px; + } + + .cluster text { + fill: ${t.titleColor}; + } + + .cluster span,p { + color: ${t.titleColor}; + } + /* .cluster div { + color: ${t.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${t.fontFamily}; + font-size: 12px; + background: ${t.tertiaryColor}; + border: 1px solid ${t.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; + } +`,"getStyles"),nve=unt});var hnt,fnt,dnt,pnt,mnt,gnt,ynt,vnt,xnt,bnt,wnt,ave,sve=M(()=>{"use strict";ht();hnt=o((t,e,r,n)=>{e.forEach(i=>{wnt[i](t,r,n)})},"insertMarkers"),fnt=o((t,e,r)=>{Y.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"),dnt=o((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"),pnt=o((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"),mnt=o((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"),gnt=o((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"),ynt=o((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"),vnt=o((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"),xnt=o((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"),bnt=o((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"),wnt={extension:fnt,composition:dnt,aggregation:pnt,dependency:mnt,lollipop:gnt,point:ynt,circle:vnt,cross:xnt,barb:bnt},ave=hnt});function Tnt(t,e){if(t===0||!Number.isInteger(t))throw new Error("Columns must be an integer !== 0.");if(e<0||!Number.isInteger(e))throw new Error("Position must be a non-negative integer."+e);if(t<0)return{px:e,py:0};if(t===1)return{px:0,py:e};let r=e%t,n=Math.floor(e/t);return{px:r,py:n}}function JB(t,e,r=0,n=0){Y.debug("setBlockSizes abc95 (start)",t.id,t?.size?.x,"block width =",t?.size,"sieblingWidth",r),t?.size?.width||(t.size={width:r,height:n,x:0,y:0});let i=0,a=0;if(t.children?.length>0){for(let m of t.children)JB(m,e);let s=knt(t);i=s.width,a=s.height,Y.debug("setBlockSizes abc95 maxWidth of",t.id,":s children is ",i,a);for(let m of t.children)m.size&&(Y.debug(`abc95 Setting size of children of ${t.id} id=${m.id} ${i} ${a} ${JSON.stringify(m.size)}`),m.size.width=i*(m.widthInColumns??1)+xi*((m.widthInColumns??1)-1),m.size.height=a,m.size.x=0,m.size.y=0,Y.debug(`abc95 updating size of ${t.id} children child:${m.id} maxWidth:${i} maxHeight:${a}`));for(let m of t.children)JB(m,e,i,a);let l=t.columns??-1,u=0;for(let m of t.children)u+=m.widthInColumns??1;let h=t.children.length;l>0&&l0?Math.min(t.children.length,l):t.children.length;if(m>0){let g=(d-m*xi-xi)/m;Y.debug("abc95 (growing to fit) width",t.id,d,t.size?.width,g);for(let y of t.children)y.size&&(y.size.width=g)}}t.size={width:d,height:p,x:0,y:0}}Y.debug("setBlockSizes abc94 (done)",t.id,t?.size?.x,t?.size?.width,t?.size?.y,t?.size?.height)}function ove(t,e){Y.debug(`abc85 layout blocks (=>layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`);let r=t.columns??-1;if(Y.debug("layoutBlocks columns abc95",t.id,"=>",r,t),t.children&&t.children.length>0){let n=t?.children[0]?.size?.width??0,i=t.children.length*n+(t.children.length-1)*xi;Y.debug("widthOfChildren 88",i,"posX");let a=0;Y.debug("abc91 block?.size?.x",t.id,t?.size?.x);let s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-xi,l=0;for(let u of t.children){let h=t;if(!u.size)continue;let{width:f,height:d}=u.size,{px:p,py:m}=Tnt(r,a);if(m!=l&&(l=m,s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-xi,Y.debug("New row in layout for block",t.id," and child ",u.id,l)),Y.debug(`abc89 layout blocks (child) id: ${u.id} Pos: ${a} (px, py) ${p},${m} (${h?.size?.x},${h?.size?.y}) parent: ${h.id} width: ${f}${xi}`),h.size){let g=f/2;u.size.x=s+xi+g,Y.debug(`abc91 layout blocks (calc) px, pyid:${u.id} startingPos=X${s} new startingPosX${u.size.x} ${g} padding=${xi} width=${f} halfWidth=${g} => x:${u.size.x} y:${u.size.y} ${u.widthInColumns} (width * (child?.w || 1)) / 2 ${f*(u?.widthInColumns??1)/2}`),s=u.size.x+g,u.size.y=h.size.y-h.size.height/2+m*(d+xi)+d/2+xi,Y.debug(`abc88 layout blocks (calc) px, pyid:${u.id}startingPosX${s}${xi}${g}=>x:${u.size.x}y:${u.size.y}${u.widthInColumns}(width * (child?.w || 1)) / 2${f*(u?.widthInColumns??1)/2}`)}u.children&&ove(u,e),a+=u?.widthInColumns??1,Y.debug("abc88 columnsPos",u,a)}}Y.debug(`layout blocks (<==layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`)}function lve(t,{minX:e,minY:r,maxX:n,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(t.size&&t.id!=="root"){let{x:a,y:s,width:l,height:u}=t.size;a-l/2n&&(n=a+l/2),s+u/2>i&&(i=s+u/2)}if(t.children)for(let a of t.children)({minX:e,minY:r,maxX:n,maxY:i}=lve(a,{minX:e,minY:r,maxX:n,maxY:i}));return{minX:e,minY:r,maxX:n,maxY:i}}function cve(t){let e=t.getBlock("root");if(!e)return;JB(e,t,0,0),ove(e,t),Y.debug("getBlocks",JSON.stringify(e,null,2));let{minX:r,minY:n,maxX:i,maxY:a}=lve(e),s=a-n,l=i-r;return{x:r,y:n,width:l,height:s}}var xi,knt,uve=M(()=>{"use strict";ht();Vt();xi=de()?.block?.padding??8;o(Tnt,"calculateBlockPosition");knt=o(t=>{let e=0,r=0;for(let n of t.children){let{width:i,height:a,x:s,y:l}=n.size??{width:0,height:0,x:0,y:0};Y.debug("getMaxChildSize abc95 child:",n.id,"width:",i,"height:",a,"x:",s,"y:",l,n.type),n.type!=="space"&&(i>e&&(e=i/(t.widthInColumns??1)),a>r&&(r=a))}return{width:e,height:r}},"getMaxChildSize");o(JB,"setBlockSizes");o(ove,"layoutBlocks");o(lve,"findBounds");o(cve,"layout")});function hve(t,e){e&&t.attr("style",e)}function Ent(t){let e=ze(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),n=t.label,i=t.isNode?"nodeLabel":"edgeLabel",a=r.append("span");return a.html(n),hve(a,t.labelStyle),a.attr("class",i),hve(r,t.labelStyle),r.style("display","inline-block"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}var Snt,cs,Z6=M(()=>{"use strict";mr();ht();Vt();fr();hr();Dl();o(hve,"applyStyle");o(Ent,"addHtmlLabel");Snt=o((t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),xr(de().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),Y.debug("vertexText"+i);let a={isNode:n,label:x9(Ca(i)),labelStyle:e.replace("fill:","color:")};return Ent(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",e.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|/gi):Array.isArray(i)?s=i:s=[];for(let l of s){let u=document.createElementNS("http://www.w3.org/2000/svg","tspan");u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),u.setAttribute("dy","1em"),u.setAttribute("x","0"),r?u.setAttribute("class","title-row"):u.setAttribute("class","row"),u.textContent=l.trim(),a.appendChild(u)}return a}},"createLabel"),cs=Snt});var dve,Cnt,fve,pve=M(()=>{"use strict";ht();dve=o((t,e,r,n,i)=>{e.arrowTypeStart&&fve(t,"start",e.arrowTypeStart,r,n,i),e.arrowTypeEnd&&fve(t,"end",e.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),Cnt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},fve=o((t,e,r,n,i,a)=>{let s=Cnt[r];if(!s){Y.warn(`Unknown arrow type: ${r}`);return}let l=e==="start"?"Start":"End";t.attr(`marker-${e}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function J6(t,e){de().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}var eF,$a,gve,yve,Ant,_nt,mve,vve,xve=M(()=>{"use strict";ht();Z6();Dl();mr();Vt();hr();fr();lL();Cv();pve();eF={},$a={},gve=o((t,e)=>{let r=de(),n=xr(r.flowchart.htmlLabels),i=e.labelType==="markdown"?Si(t,e.label,{style:e.labelStyle,useHtmlLabels:n,addSvgBackground:!0},r):cs(e.label,e.labelStyle),a=t.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label");s.node().appendChild(i);let l=i.getBBox();if(n){let h=i.children[0],f=ze(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),eF[e.id]=a,e.width=l.width,e.height=l.height;let u;if(e.startLabelLeft){let h=cs(e.startLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),$a[e.id]||($a[e.id]={}),$a[e.id].startLeft=f,J6(u,e.startLabelLeft)}if(e.startLabelRight){let h=cs(e.startLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=f.node().appendChild(h),d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),$a[e.id]||($a[e.id]={}),$a[e.id].startRight=f,J6(u,e.startLabelRight)}if(e.endLabelLeft){let h=cs(e.endLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),$a[e.id]||($a[e.id]={}),$a[e.id].endLeft=f,J6(u,e.endLabelLeft)}if(e.endLabelRight){let h=cs(e.endLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),$a[e.id]||($a[e.id]={}),$a[e.id].endRight=f,J6(u,e.endLabelRight)}return i},"insertEdgeLabel");o(J6,"setTerminalWidth");yve=o((t,e)=>{Y.debug("Moving label abc88 ",t.id,t.label,eF[t.id],e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=de(),{subGraphTitleTotalMargin:i}=_u(n);if(t.label){let a=eF[t.id],s=t.x,l=t.y;if(r){let u=Ut.calcLabelPosition(r);Y.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=$a[t.id].startLeft,s=t.x,l=t.y;if(r){let u=Ut.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=$a[t.id].startRight,s=t.x,l=t.y;if(r){let u=Ut.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=$a[t.id].endLeft,s=t.x,l=t.y;if(r){let u=Ut.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=$a[t.id].endRight,s=t.x,l=t.y;if(r){let u=Ut.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),Ant=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),_nt=o((t,e,r)=>{Y.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(e)} + insidePoint : ${JSON.stringify(r)} + node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.xMath.abs(n-e.x)*u){let d=r.y{Y.debug("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(!Ant(e,a)&&!i){let s=_nt(e,n,a),l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)||r.push(s),i=!0}else n=a,i||r.push(a)}),r},"cutPathAtIntersect"),vve=o(function(t,e,r,n,i,a,s){let l=r.points;Y.debug("abc88 InsertEdge: edge=",r,"e=",e);let u=!1,h=a.node(e.v);var f=a.node(e.w);f?.intersect&&h?.intersect&&(l=l.slice(1,r.points.length-1),l.unshift(h.intersect(l[0])),l.push(f.intersect(l[l.length-1]))),r.toCluster&&(Y.debug("to cluster abc88",n[r.toCluster]),l=mve(r.points,n[r.toCluster].node),u=!0),r.fromCluster&&(Y.debug("from cluster abc88",n[r.fromCluster]),l=mve(l.reverse(),n[r.fromCluster].node).reverse(),u=!0);let d=l.filter(_=>!Number.isNaN(_.y)),p=Do;r.curve&&(i==="graph"||i==="flowchart")&&(p=r.curve);let{x:m,y:g}=Z5(r),y=Ka().x(m).y(g).curve(p),v;switch(r.thickness){case"normal":v="edge-thickness-normal";break;case"thick":v="edge-thickness-thick";break;case"invisible":v="edge-thickness-thick";break;default:v=""}switch(r.pattern){case"solid":v+=" edge-pattern-solid";break;case"dotted":v+=" edge-pattern-dotted";break;case"dashed":v+=" edge-pattern-dashed";break}let x=t.append("path").attr("d",y(d)).attr("id",r.id).attr("class"," "+v+(r.classes?" "+r.classes:"")).attr("style",r.style),b="";(de().flowchart.arrowMarkerAbsolute||de().state.arrowMarkerAbsolute)&&(b=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,b=b.replace(/\(/g,"\\("),b=b.replace(/\)/g,"\\)")),dve(x,r,b,s,i);let w={};return u&&(w.updatedPath=l),w.originalPath=r.points,w},"insertEdge")});var Lnt,bve,wve=M(()=>{"use strict";Lnt=o(t=>{let e=new Set;for(let 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);break}return e},"expandAndDeduplicateDirections"),bve=o((t,e,r)=>{let n=Lnt(t),i=2,a=e.height+2*r.padding,s=a/i,l=e.width+2*s+r.padding,u=r.padding/2;return n.has("right")&&n.has("left")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:s,y:0},{x:l/2,y:2*u},{x:l-s,y:0},{x:l,y:0},{x:l,y:-a/3},{x:l+2*u,y:-a/2},{x:l,y:-2*a/3},{x:l,y:-a},{x:l-s,y:-a},{x:l/2,y:-a-2*u},{x:s,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*u,y:-a/2},{x:0,y:-a/3}]:n.has("right")&&n.has("left")&&n.has("up")?[{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}]:n.has("right")&&n.has("left")&&n.has("down")?[{x:0,y:0},{x:s,y:-a},{x:l-s,y:-a},{x:l,y:0}]:n.has("right")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:l,y:-s},{x:l,y:-a+s},{x:0,y:-a}]:n.has("left")&&n.has("up")&&n.has("down")?[{x:l,y:0},{x:0,y:-s},{x:0,y:-a+s},{x:l,y:-a}]:n.has("right")&&n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")&&n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:n.has("right")&&n.has("up")?[{x:0,y:0},{x:l,y:-s},{x:0,y:-a}]:n.has("right")&&n.has("down")?[{x:0,y:0},{x:l,y:0},{x:0,y:-a}]:n.has("left")&&n.has("up")?[{x:l,y:0},{x:0,y:-s},{x:l,y:-a}]:n.has("left")&&n.has("down")?[{x:l,y:0},{x:0,y:0},{x:l,y:-a}]:n.has("right")?[{x:s,y:-u},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a+u}]:n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")?[{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u}]:n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:[{x:0,y:0}]},"getArrowPoints")});function Dnt(t,e){return t.intersect(e)}var Tve,kve=M(()=>{"use strict";o(Dnt,"intersectNode");Tve=Dnt});function Nnt(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x{"use strict";o(Nnt,"intersectEllipse");eS=Nnt});function Rnt(t,e,r){return eS(t,e,e,r)}var Eve,Sve=M(()=>{"use strict";tF();o(Rnt,"intersectCircle");Eve=Rnt});function Mnt(t,e,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=e.y-t.y,s=t.x-e.x,u=e.x*t.y-t.x*e.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&Cve(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*t.x+l*t.y+h,d=a*e.x+l*e.y+h,!(f!==0&&d!==0&&Cve(f,d))&&(g=i*l-a*s,g!==0)))return y=Math.abs(g/2),v=s*h-l*u,x=v<0?(v-y)/g:(v+y)/g,v=a*u-i*h,b=v<0?(v-y)/g:(v+y)/g,{x,y:b}}function Cve(t,e){return t*e>0}var Ave,_ve=M(()=>{"use strict";o(Mnt,"intersectLine");o(Cve,"sameSign");Ave=Mnt});function Int(t,e,r){var n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(g){s=Math.min(s,g.x),l=Math.min(l,g.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));for(var u=n-t.width/2-s,h=i-t.height/2-l,f=0;f1&&a.sort(function(g,y){var v=g.x-r.x,x=g.y-r.y,b=Math.sqrt(v*v+x*x),w=y.x-r.x,_=y.y-r.y,T=Math.sqrt(w*w+_*_);return b{"use strict";_ve();Lve=Int;o(Int,"intersectPolygon")});var Ont,Nve,Rve=M(()=>{"use strict";Ont=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),Nve=Ont});var Rn,rF=M(()=>{"use strict";kve();Sve();tF();Dve();Rve();Rn={node:Tve,circle:Eve,ellipse:eS,polygon:Lve,rect:Nve}});function Xl(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var _i,qn,nF=M(()=>{"use strict";Z6();Dl();Vt();mr();fr();hr();_i=o(async(t,e,r,n)=>{let i=de(),a,s=e.useHtmlLabels||xr(i.flowchart.htmlLabels);r?a=r:a="node default";let l=t.insert("g").attr("class",a).attr("id",e.domId||e.id),u=l.insert("g").attr("class","label").attr("style",e.labelStyle),h;e.labelText===void 0?h="":h=typeof e.labelText=="string"?e.labelText:e.labelText[0];let f=u.node(),d;e.labelType==="markdown"?d=Si(u,Tr(Ca(h),i),{useHtmlLabels:s,width:e.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):d=f.appendChild(cs(Tr(Ca(h),i),e.labelStyle,!1,n));let p=d.getBBox(),m=e.padding/2;if(xr(i.flowchart.htmlLabels)){let g=d.children[0],y=ze(d),v=g.getElementsByTagName("img");if(v){let x=h.replace(/]*>/g,"").trim()==="";await Promise.all([...v].map(b=>new Promise(w=>{function _(){if(b.style.display="flex",b.style.flexDirection="column",x){let T=i.fontSize?i.fontSize:window.getComputedStyle(document.body).fontSize,L=parseInt(T,10)*5+"px";b.style.minWidth=L,b.style.maxWidth=L}else b.style.width="100%";w(b)}o(_,"setupImage"),setTimeout(()=>{b.complete&&_()}),b.addEventListener("error",_),b.addEventListener("load",_)})))}p=g.getBoundingClientRect(),y.attr("width",p.width),y.attr("height",p.height)}return s?u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):u.attr("transform","translate(0, "+-p.height/2+")"),e.centerLabel&&u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),u.insert("rect",":first-child"),{shapeSvg:l,bbox:p,halfPadding:m,label:u}},"labelHelper"),qn=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds");o(Xl,"insertPolygonShape")});var Pnt,Mve,Ive=M(()=>{"use strict";nF();ht();Vt();rF();Pnt=o(async(t,e)=>{e.useHtmlLabels||de().flowchart.htmlLabels||(e.centerLabel=!0);let{shapeSvg:n,bbox:i,halfPadding:a}=await _i(t,e,"node "+e.classes,!0);Y.info("Classes = ",e.classes);let s=n.insert("rect",":first-child");return s.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",i.width+e.padding).attr("height",i.height+e.padding),qn(e,s),e.intersect=function(l){return Rn.rect(e,l)},n},"note"),Mve=Pnt});function iF(t,e,r,n){let i=[],a=o(l=>{i.push(l,0)},"addBorder"),s=o(l=>{i.push(0,l)},"skipBorder");e.includes("t")?(Y.debug("add top border"),a(r)):s(r),e.includes("r")?(Y.debug("add right border"),a(n)):s(n),e.includes("b")?(Y.debug("add bottom border"),a(r)):s(r),e.includes("l")?(Y.debug("add left border"),a(n)):s(n),t.attr("stroke-dasharray",i.join(" "))}var Ove,go,Pve,Bnt,Fnt,znt,Gnt,$nt,Vnt,Unt,Hnt,Wnt,Ynt,qnt,Xnt,jnt,Knt,Qnt,Znt,Jnt,eit,tit,Bve,rit,nit,Fve,tS,aF,zve,Gve=M(()=>{"use strict";mr();Vt();fr();ht();wve();Z6();rF();Ive();nF();Ove=o(t=>t?" "+t:"","formatClass"),go=o((t,e)=>`${e||"node default"}${Ove(t.classes)} ${Ove(t.class)}`,"getClassesFromNode"),Pve=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=i+a,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];Y.info("Question main (Circle)");let u=Xl(r,s,s,l);return u.attr("style",e.style),qn(e,u),e.intersect=function(h){return Y.warn("Intersect called"),Rn.polygon(e,l,h)},r},"question"),Bnt=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=28,i=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return r.insert("polygon",":first-child").attr("points",i.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(s){return Rn.circle(e,14,s)},r},"choice"),Fnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=4,a=n.height+e.padding,s=a/i,l=n.width+2*s+e.padding,u=[{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}],h=Xl(r,l,a,u);return h.attr("style",e.style),qn(e,h),e.intersect=function(f){return Rn.polygon(e,u,f)},r},"hexagon"),znt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,void 0,!0),i=2,a=n.height+2*e.padding,s=a/i,l=n.width+2*s+e.padding,u=bve(e.directions,n,e),h=Xl(r,l,a,u);return h.attr("style",e.style),qn(e,h),e.intersect=function(f){return Rn.polygon(e,u,f)},r},"block_arrow"),Gnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-a/2,y:0},{x:i,y:0},{x:i,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];return Xl(r,i,a,s).attr("style",e.style),e.width=i+a,e.height=a,e.intersect=function(u){return Rn.polygon(e,s,u)},r},"rect_left_inv_arrow"),$nt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:a/6,y:-a}],l=Xl(r,i,a,s);return l.attr("style",e.style),qn(e,l),e.intersect=function(u){return Rn.polygon(e,s,u)},r},"lean_right"),Vnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:2*a/6,y:0},{x:i+a/6,y:0},{x:i-2*a/6,y:-a},{x:-a/6,y:-a}],l=Xl(r,i,a,s);return l.attr("style",e.style),qn(e,l),e.intersect=function(u){return Rn.polygon(e,s,u)},r},"lean_left"),Unt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i+2*a/6,y:0},{x:i-a/6,y:-a},{x:a/6,y:-a}],l=Xl(r,i,a,s);return l.attr("style",e.style),qn(e,l),e.intersect=function(u){return Rn.polygon(e,s,u)},r},"trapezoid"),Hnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:-2*a/6,y:-a}],l=Xl(r,i,a,s);return l.attr("style",e.style),qn(e,l),e.intersect=function(u){return Rn.polygon(e,s,u)},r},"inv_trapezoid"),Wnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i+a/2,y:0},{x:i,y:-a/2},{x:i+a/2,y:-a},{x:0,y:-a}],l=Xl(r,i,a,s);return l.attr("style",e.style),qn(e,l),e.intersect=function(u){return Rn.polygon(e,s,u)},r},"rect_right_inv_arrow"),Ynt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=n.width+e.padding,a=i/2,s=a/(2.5+i/50),l=n.height+s+e.padding,u="M 0,"+s+" a "+a+","+s+" 0,0,0 "+i+" 0 a "+a+","+s+" 0,0,0 "+-i+" 0 l 0,"+l+" a "+a+","+s+" 0,0,0 "+i+" 0 l 0,"+-l,h=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",e.style).attr("d",u).attr("transform","translate("+-i/2+","+-(l/2+s)+")");return qn(e,h),e.intersect=function(f){let d=Rn.rect(e,f),p=d.x-e.x;if(a!=0&&(Math.abs(p)e.height/2-s)){let m=s*s*(1-p*p/(a*a));m!=0&&(m=Math.sqrt(m)),m=s-m,f.y-e.y>0&&(m=-m),d.y+=m}return d},r},"cylinder"),qnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await _i(t,e,"node "+e.classes+" "+e.class,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(iF(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{Y.warn(`Unknown node property ${d}`)})}return qn(e,a),e.intersect=function(f){return Rn.rect(e,f)},r},"rect"),Xnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await _i(t,e,"node "+e.classes,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(iF(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{Y.warn(`Unknown node property ${d}`)})}return qn(e,a),e.intersect=function(f){return Rn.rect(e,f)},r},"composite"),jnt=o(async(t,e)=>{let{shapeSvg:r}=await _i(t,e,"label",!0);Y.trace("Classes = ",e.class);let n=r.insert("rect",":first-child"),i=0,a=0;if(n.attr("width",i).attr("height",a),r.attr("class","label edgeLabel"),e.props){let s=new Set(Object.keys(e.props));e.props.borders&&(iF(n,e.props.borders,i,a),s.delete("borders")),s.forEach(l=>{Y.warn(`Unknown node property ${l}`)})}return qn(e,n),e.intersect=function(s){return Rn.rect(e,s)},r},"labelRect");o(iF,"applyNodePropertyBorders");Knt=o((t,e)=>{let r;e.classes?r="node "+e.classes:r="node default";let n=t.insert("g").attr("class",r).attr("id",e.domId||e.id),i=n.insert("rect",":first-child"),a=n.insert("line"),s=n.insert("g").attr("class","label"),l=e.labelText.flat?e.labelText.flat():e.labelText,u="";typeof l=="object"?u=l[0]:u=l,Y.info("Label text abc79",u,l,typeof l=="object");let h=s.node().appendChild(cs(u,e.labelStyle,!0,!0)),f={width:0,height:0};if(xr(de().flowchart.htmlLabels)){let y=h.children[0],v=ze(h);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}Y.info("Text 2",l);let d=l.slice(1,l.length),p=h.getBBox(),m=s.node().appendChild(cs(d.join?d.join("
    "):d,e.labelStyle,!0,!0));if(xr(de().flowchart.htmlLabels)){let y=m.children[0],v=ze(m);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}let g=e.padding/2;return ze(m).attr("transform","translate( "+(f.width>p.width?0:(p.width-f.width)/2)+", "+(p.height+g+5)+")"),ze(h).attr("transform","translate( "+(f.width{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=n.height+e.padding,a=n.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",-a/2).attr("y",-i/2).attr("width",a).attr("height",i);return qn(e,s),e.intersect=function(l){return Rn.rect(e,l)},r},"stadium"),Znt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await _i(t,e,go(e,void 0),!0),a=r.insert("circle",":first-child");return a.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),Y.info("Circle main"),qn(e,a),e.intersect=function(s){return Y.info("Circle intersect",e,n.width/2+i,s),Rn.circle(e,n.width/2+i,s)},r},"circle"),Jnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await _i(t,e,go(e,void 0),!0),a=5,s=r.insert("g",":first-child"),l=s.insert("circle"),u=s.insert("circle");return s.attr("class",e.class),l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i+a).attr("width",n.width+e.padding+a*2).attr("height",n.height+e.padding+a*2),u.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),Y.info("DoubleCircle main"),qn(e,l),e.intersect=function(h){return Y.info("DoubleCircle intersect",e,n.width/2+i+a,h),Rn.circle(e,n.width/2+i+a,h)},r},"doublecircle"),eit=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await _i(t,e,go(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i,y:0},{x:i,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],l=Xl(r,i,a,s);return l.attr("style",e.style),qn(e,l),e.intersect=function(u){return Rn.polygon(e,s,u)},r},"subroutine"),tit=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),qn(e,n),e.intersect=function(i){return Rn.circle(e,7,i)},r},"start"),Bve=o((t,e,r)=>{let n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),i=70,a=10;r==="LR"&&(i=10,a=70);let s=n.append("rect").attr("x",-1*i/2).attr("y",-1*a/2).attr("width",i).attr("height",a).attr("class","fork-join");return qn(e,s),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(l){return Rn.rect(e,l)},n},"forkJoin"),rit=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=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),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),qn(e,i),e.intersect=function(a){return Rn.circle(e,7,a)},r},"end"),nit=o((t,e)=>{let r=e.padding/2,n=4,i=8,a;e.classes?a="node "+e.classes:a="node default";let s=t.insert("g").attr("class",a).attr("id",e.domId||e.id),l=s.insert("rect",":first-child"),u=s.insert("line"),h=s.insert("line"),f=0,d=n,p=s.insert("g").attr("class","label"),m=0,g=e.classData.annotations?.[0],y=e.classData.annotations[0]?"\xAB"+e.classData.annotations[0]+"\xBB":"",v=p.node().appendChild(cs(y,e.labelStyle,!0,!0)),x=v.getBBox();if(xr(de().flowchart.htmlLabels)){let C=v.children[0],A=ze(v);x=C.getBoundingClientRect(),A.attr("width",x.width),A.attr("height",x.height)}e.classData.annotations[0]&&(d+=x.height+n,f+=x.width);let b=e.classData.label;e.classData.type!==void 0&&e.classData.type!==""&&(de().flowchart.htmlLabels?b+="<"+e.classData.type+">":b+="<"+e.classData.type+">");let w=p.node().appendChild(cs(b,e.labelStyle,!0,!0));ze(w).attr("class","classTitle");let _=w.getBBox();if(xr(de().flowchart.htmlLabels)){let C=w.children[0],A=ze(w);_=C.getBoundingClientRect(),A.attr("width",_.width),A.attr("height",_.height)}d+=_.height+n,_.width>f&&(f=_.width);let T=[];e.classData.members.forEach(C=>{let A=C.getDisplayDetails(),I=A.displayText;de().flowchart.htmlLabels&&(I=I.replace(//g,">"));let D=p.node().appendChild(cs(I,A.cssStyle?A.cssStyle:e.labelStyle,!0,!0)),k=D.getBBox();if(xr(de().flowchart.htmlLabels)){let R=D.children[0],S=ze(D);k=R.getBoundingClientRect(),S.attr("width",k.width),S.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,T.push(D)}),d+=i;let E=[];if(e.classData.methods.forEach(C=>{let A=C.getDisplayDetails(),I=A.displayText;de().flowchart.htmlLabels&&(I=I.replace(//g,">"));let D=p.node().appendChild(cs(I,A.cssStyle?A.cssStyle:e.labelStyle,!0,!0)),k=D.getBBox();if(xr(de().flowchart.htmlLabels)){let R=D.children[0],S=ze(D);k=R.getBoundingClientRect(),S.attr("width",k.width),S.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,E.push(D)}),d+=i,g){let C=(f-x.width)/2;ze(v).attr("transform","translate( "+(-1*f/2+C)+", "+-1*d/2+")"),m=x.height+n}let L=(f-_.width)/2;return ze(w).attr("transform","translate( "+(-1*f/2+L)+", "+(-1*d/2+m)+")"),m+=_.height+n,u.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,T.forEach(C=>{ze(C).attr("transform","translate( "+-f/2+", "+(-1*d/2+m+i/2)+")");let A=C?.getBBox();m+=(A?.height??0)+n}),m+=i,h.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,E.forEach(C=>{ze(C).attr("transform","translate( "+-f/2+", "+(-1*d/2+m)+")");let A=C?.getBBox();m+=(A?.height??0)+n}),l.attr("style",e.style).attr("class","outer title-state").attr("x",-f/2-r).attr("y",-(d/2)-r).attr("width",f+e.padding).attr("height",d+e.padding),qn(e,l),e.intersect=function(C){return Rn.rect(e,C)},s},"class_box"),Fve={rhombus:Pve,composite:Xnt,question:Pve,rect:qnt,labelRect:jnt,rectWithTitle:Knt,choice:Bnt,circle:Znt,doublecircle:Jnt,stadium:Qnt,hexagon:Fnt,block_arrow:znt,rect_left_inv_arrow:Gnt,lean_right:$nt,lean_left:Vnt,trapezoid:Unt,inv_trapezoid:Hnt,rect_right_inv_arrow:Wnt,cylinder:Ynt,start:tit,end:rit,note:Mve,subroutine:eit,fork:Bve,join:Bve,class_box:nit},tS={},aF=o(async(t,e,r)=>{let n,i;if(e.link){let a;de().securityLevel==="sandbox"?a="_top":e.linkTarget&&(a=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",a),i=await Fve[e.shape](n,e,r)}else i=await Fve[e.shape](t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),tS[e.id]=n,e.haveCallback&&tS[e.id].attr("class",tS[e.id].attr("class")+" clickable"),n},"insertNode"),zve=o(t=>{let e=tS[t.id];Y.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});function $ve(t,e,r=!1){let n=t,i="default";(n?.classes?.length||0)>0&&(i=(n?.classes??[]).join(" ")),i=i+" flowchart-label";let a=0,s="",l;switch(n.type){case"round":a=5,s="rect";break;case"composite":a=0,s="composite",l=0;break;case"square":s="rect";break;case"diamond":s="question";break;case"hexagon":s="hexagon";break;case"block_arrow":s="block_arrow";break;case"odd":s="rect_left_inv_arrow";break;case"lean_right":s="lean_right";break;case"lean_left":s="lean_left";break;case"trapezoid":s="trapezoid";break;case"inv_trapezoid":s="inv_trapezoid";break;case"rect_left_inv_arrow":s="rect_left_inv_arrow";break;case"circle":s="circle";break;case"ellipse":s="ellipse";break;case"stadium":s="stadium";break;case"subroutine":s="subroutine";break;case"cylinder":s="cylinder";break;case"group":s="rect";break;case"doublecircle":s="doublecircle";break;default:s="rect"}let u=J_(n?.styles??[]),h=n.label,f=n.size??{width:0,height:0,x:0,y:0};return{labelStyle:u.labelStyle,shape:s,labelText:h,rx:a,ry:a,class:i,style:u.style,id:n.id,directions:n.directions,width:f.width,height:f.height,x:f.x,y:f.y,positioned:r,intersect:void 0,type:n.type,padding:l??Sr()?.block?.padding??0}}async function iit(t,e,r){let n=$ve(e,r,!1);if(n.type==="group")return;let i=Sr(),a=await aF(t,n,{config:i}),s=a.node().getBBox(),l=r.getBlock(n.id);l.size={width:s.width,height:s.height,x:0,y:0,node:a},r.setBlock(l),a.remove()}async function ait(t,e,r){let n=$ve(e,r,!0);if(r.getBlock(n.id).type!=="space"){let a=Sr();await aF(t,n,{config:a}),e.intersect=n?.intersect,zve(n)}}async function sF(t,e,r,n){for(let i of e)await n(t,i,r),i.children&&await sF(t,i.children,r,n)}async function Vve(t,e,r){await sF(t,e,r,iit)}async function Uve(t,e,r){await sF(t,e,r,ait)}async function Hve(t,e,r,n,i){let a=new Mr({multigraph:!0,compound:!0});a.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let s of r)s.size&&a.setNode(s.id,{width:s.size.width,height:s.size.height,intersect:s.intersect});for(let s of e)if(s.start&&s.end){let l=n.getBlock(s.start),u=n.getBlock(s.end);if(l?.size&&u?.size){let h=l.size,f=u.size,d=[{x:h.x,y:h.y},{x:h.x+(f.x-h.x)/2,y:h.y+(f.y-h.y)/2},{x:f.x,y:f.y}];vve(t,{v:s.start,w:s.end,name:s.id},{...s,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",a,i),s.label&&(await gve(t,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),yve({...s,x:d[1].x,y:d[1].y},{originalPath:d}))}}}var Wve=M(()=>{"use strict";Ns();Ua();xve();Gve();hr();o($ve,"getNodeFromBlock");o(iit,"calculateBlockSize");o(ait,"insertBlockPositioned");o(sF,"performOperations");o(Vve,"calculateBlockSizes");o(Uve,"insertBlocks");o(Hve,"insertEdges")});var sit,oit,Yve,qve=M(()=>{"use strict";mr();Ua();sve();ht();ni();uve();Wve();sit=o(function(t,e){return e.db.getClasses()},"getClasses"),oit=o(async function(t,e,r,n){let{securityLevel:i,block:a}=Sr(),s=n.db,l;i==="sandbox"&&(l=ze("#i"+e));let u=i==="sandbox"?ze(l.nodes()[0].contentDocument.body):ze("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):ze(`[id="${e}"]`);ave(h,["point","circle","cross"],n.type,e);let d=s.getBlocks(),p=s.getBlocksFlat(),m=s.getEdges(),g=h.insert("g").attr("class","block");await Vve(g,d,s);let y=cve(s);if(await Uve(g,d,s),await Hve(g,m,p,s,e),y){let v=y,x=Math.max(1,Math.round(.125*(v.width/v.height))),b=v.height+x+10,w=v.width+10,{useMaxWidth:_}=a;Zr(h,b,w,!!_),Y.debug("Here Bounds",y,v),h.attr("viewBox",`${v.x-5} ${v.y-5} ${v.width+10} ${v.height+10}`)}},"draw"),Yve={draw:oit,getClasses:sit}});var Xve={};vr(Xve,{diagram:()=>lit});var lit,jve=M(()=>{"use strict";jye();rve();ive();qve();lit={parser:Xye,db:tve,renderer:Yve,styles:nve}});var oF,lF,mb,Zve,cF,us,qc,rS,Jve,fit,gb,e2e,t2e,r2e,n2e,nS,Mf,iS=M(()=>{"use strict";oF={L:"left",R:"right",T:"top",B:"bottom"},lF={L:o(t=>`${t},${t/2} 0,${t} 0,0`,"L"),R:o(t=>`0,${t/2} ${t},0 ${t},${t}`,"R"),T:o(t=>`0,0 ${t},0 ${t/2},${t}`,"T"),B:o(t=>`${t/2},0 ${t},${t} 0,${t}`,"B")},mb={L:o((t,e)=>t-e+2,"L"),R:o((t,e)=>t-2,"R"),T:o((t,e)=>t-e+2,"T"),B:o((t,e)=>t-2,"B")},Zve=o(function(t){return us(t)?t==="L"?"R":"L":t==="T"?"B":"T"},"getOppositeArchitectureDirection"),cF=o(function(t){let e=t;return e==="L"||e==="R"||e==="T"||e==="B"},"isArchitectureDirection"),us=o(function(t){let e=t;return e==="L"||e==="R"},"isArchitectureDirectionX"),qc=o(function(t){let e=t;return e==="T"||e==="B"},"isArchitectureDirectionY"),rS=o(function(t,e){let r=us(t)&&qc(e),n=qc(t)&&us(e);return r||n},"isArchitectureDirectionXY"),Jve=o(function(t){let e=t[0],r=t[1],n=us(e)&&qc(r),i=qc(e)&&us(r);return n||i},"isArchitecturePairXY"),fit=o(function(t){return t!=="LL"&&t!=="RR"&&t!=="TT"&&t!=="BB"},"isValidArchitectureDirectionPair"),gb=o(function(t,e){let r=`${t}${e}`;return fit(r)?r:void 0},"getArchitectureDirectionPair"),e2e=o(function([t,e],r){let n=r[0],i=r[1];return us(n)?qc(i)?[t+(n==="L"?-1:1),e+(i==="T"?1:-1)]:[t+(n==="L"?-1:1),e]:us(i)?[t+(i==="L"?1:-1),e+(n==="T"?1:-1)]:[t,e+(n==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),t2e=o(function(t){return t==="LT"||t==="TL"?[1,1]:t==="BL"||t==="LB"?[1,-1]:t==="BR"||t==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),r2e=o(function(t){return t.type==="service"},"isArchitectureService"),n2e=o(function(t){return t.type==="junction"},"isArchitectureJunction"),nS=o(t=>t.data(),"edgeData"),Mf=o(t=>t.data(),"nodeData")});function Li(t){let e=de().architecture;return e?.[t]?e[t]:i2e[t]}var i2e,gr,dit,pit,mit,git,yit,vit,xit,bit,wit,Tit,kit,Eit,Sit,Cit,X0,yb=M(()=>{"use strict";hs();Vt();tE();ki();iS();i2e=ur.architecture,gr=new cf(()=>({nodes:{},groups:{},edges:[],registeredIds:{},config:i2e,dataStructures:void 0,elements:{}})),dit=o(()=>{gr.reset(),_r()},"clear"),pit=o(function({id:t,icon:e,in:r,title:n,iconText:i}){if(gr.records.registeredIds[t]!==void 0)throw new Error(`The service id [${t}] is already in use by another ${gr.records.registeredIds[t]}`);if(r!==void 0){if(t===r)throw new Error(`The service [${t}] cannot be placed within itself`);if(gr.records.registeredIds[r]===void 0)throw new Error(`The service [${t}]'s parent does not exist. Please make sure the parent is created before this service`);if(gr.records.registeredIds[r]==="node")throw new Error(`The service [${t}]'s parent is not a group`)}gr.records.registeredIds[t]="node",gr.records.nodes[t]={id:t,type:"service",icon:e,iconText:i,title:n,edges:[],in:r}},"addService"),mit=o(()=>Object.values(gr.records.nodes).filter(r2e),"getServices"),git=o(function({id:t,in:e}){gr.records.registeredIds[t]="node",gr.records.nodes[t]={id:t,type:"junction",edges:[],in:e}},"addJunction"),yit=o(()=>Object.values(gr.records.nodes).filter(n2e),"getJunctions"),vit=o(()=>Object.values(gr.records.nodes),"getNodes"),xit=o(t=>gr.records.nodes[t],"getNode"),bit=o(function({id:t,icon:e,in:r,title:n}){if(gr.records.registeredIds[t]!==void 0)throw new Error(`The group id [${t}] is already in use by another ${gr.records.registeredIds[t]}`);if(r!==void 0){if(t===r)throw new Error(`The group [${t}] cannot be placed within itself`);if(gr.records.registeredIds[r]===void 0)throw new Error(`The group [${t}]'s parent does not exist. Please make sure the parent is created before this group`);if(gr.records.registeredIds[r]==="node")throw new Error(`The group [${t}]'s parent is not a group`)}gr.records.registeredIds[t]="group",gr.records.groups[t]={id:t,icon:e,title:n,in:r}},"addGroup"),wit=o(()=>Object.values(gr.records.groups),"getGroups"),Tit=o(function({lhsId:t,rhsId:e,lhsDir:r,rhsDir:n,lhsInto:i,rhsInto:a,lhsGroup:s,rhsGroup:l,title:u}){if(!cF(r))throw new Error(`Invalid direction given for left hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${r}`);if(!cF(n))throw new Error(`Invalid direction given for right hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${n}`);if(gr.records.nodes[t]===void 0&&gr.records.groups[t]===void 0)throw new Error(`The left-hand id [${t}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(gr.records.nodes[e]===void 0&&gr.records.groups[t]===void 0)throw new Error(`The right-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);let h=gr.records.nodes[t].in,f=gr.records.nodes[e].in;if(s&&h&&f&&h==f)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(l&&h&&f&&h==f)throw new Error(`The right-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let d={lhsId:t,lhsDir:r,lhsInto:i,lhsGroup:s,rhsId:e,rhsDir:n,rhsInto:a,rhsGroup:l,title:u};gr.records.edges.push(d),gr.records.nodes[t]&&gr.records.nodes[e]&&(gr.records.nodes[t].edges.push(gr.records.edges[gr.records.edges.length-1]),gr.records.nodes[e].edges.push(gr.records.edges[gr.records.edges.length-1]))},"addEdge"),kit=o(()=>gr.records.edges,"getEdges"),Eit=o(()=>{if(gr.records.dataStructures===void 0){let t=Object.entries(gr.records.nodes).reduce((s,[l,u])=>(s[l]=u.edges.reduce((h,f)=>{if(f.lhsId===l){let d=gb(f.lhsDir,f.rhsDir);d&&(h[d]=f.rhsId)}else{let d=gb(f.rhsDir,f.lhsDir);d&&(h[d]=f.lhsId)}return h},{}),s),{}),e=Object.keys(t)[0],r={[e]:1},n=Object.keys(t).reduce((s,l)=>l===e?s:{...s,[l]:1},{}),i=o(s=>{let l={[s]:[0,0]},u=[s];for(;u.length>0;){let h=u.shift();if(h){r[h]=1,delete n[h];let f=t[h],[d,p]=l[h];Object.entries(f).forEach(([m,g])=>{r[g]||(l[g]=e2e([d,p],m),u.push(g))})}}return l},"BFS"),a=[i(e)];for(;Object.keys(n).length>0;)a.push(i(Object.keys(n)[0]));gr.records.dataStructures={adjList:t,spatialMaps:a}}return gr.records.dataStructures},"getDataStructures"),Sit=o((t,e)=>{gr.records.elements[t]=e},"setElementForId"),Cit=o(t=>gr.records.elements[t],"getElementById"),X0={clear:dit,setDiagramTitle:ln,getDiagramTitle:Jr,setAccTitle:Rr,getAccTitle:Pr,setAccDescription:Br,getAccDescription:Fr,addService:pit,getServices:mit,addJunction:git,getJunctions:yit,getNodes:vit,getNode:xit,addGroup:bit,getGroups:wit,addEdge:Tit,getEdges:kit,setElementForId:Sit,getElementById:Cit,getDataStructures:Eit};o(Li,"getConfigField")});var Ait,a2e,s2e=M(()=>{"use strict";Ng();ht();ox();yb();Ait=o((t,e)=>{lf(t,e),t.groups.map(e.addGroup),t.services.map(r=>e.addService({...r,type:"service"})),t.junctions.map(r=>e.addJunction({...r,type:"junction"})),t.edges.map(e.addEdge)},"populateDb"),a2e={parse:o(async t=>{let e=await Gl("architecture",t);Y.debug(e),Ait(e,X0)},"parse")}});var _it,o2e,l2e=M(()=>{"use strict";_it=o(t=>` + .edge { + stroke-width: ${t.archEdgeWidth}; + stroke: ${t.archEdgeColor}; + fill: none; + } + + .arrow { + fill: ${t.archEdgeArrowColor}; + } + + .node-bkg { + fill: none; + stroke: ${t.archGroupBorderColor}; + stroke-width: ${t.archGroupBorderWidth}; + stroke-dasharray: 8; + } + .node-icon-text { + display: flex; + align-items: center; + } + + .node-icon-text > div { + color: #fff; + margin: 1px; + height: fit-content; + text-align: center; + overflow: hidden; + display: -webkit-box; + -webkit-box-orient: vertical; + } +`,"getStyles"),o2e=_it});var hF=Ni((vb,uF)=>{"use strict";o(function(e,r){typeof vb=="object"&&typeof uF=="object"?uF.exports=r():typeof define=="function"&&define.amd?define([],r):typeof vb=="object"?vb.layoutBase=r():e.layoutBase=r()},"webpackUniversalModuleDefinition")(vb,function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=28)}([function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),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,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];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(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[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))},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=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)},t.exports=s},function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(5);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;yp?(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(p+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(m+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>m?(this.rect.y-=(this.labelHeight-m)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(m+this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h},function(t,e,r){"use strict";var n=r(0);function i(){}o(i,"FDLayoutConstants");for(var a in n)i[a]=n[a];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,i.COOLING_ADAPTATION_FACTOR=.33,i.ADAPTATION_LOWER_NODE_LIMIT=1e3,i.ADAPTATION_UPPER_NODE_LIMIT=5e3,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,t.exports=i},function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(7),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,v){n.call(this,v),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,v){if(y==null&&v==null){var x=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(x)>-1)throw"Node already in graph!";return x.owner=this,this.getNodes().push(x),x}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(v)>-1))throw"Source or target not in graph!";if(!(y.owner==v.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=v.owner?null:(b.source=y,b.target=v,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),v!=y&&v.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var v=y.edges.slice(),x,b=v.length,w=0;w-1&&E>-1))throw"Source and/or target doesn't know this edge!";x.source.edges.splice(T,1),x.target!=x.source&&x.target.edges.splice(E,1);var _=x.source.owner.getEdges().indexOf(x);if(_==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(_,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,w=this.getNodes(),_=w.length,T=0;T<_;T++){var E=w[T];v=E.getTop(),x=E.getLeft(),g>v&&(g=v),y>x&&(y=x)}return g==i.MAX_VALUE?null:(w[0].getParent().paddingLeft!=null?b=w[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,v=-i.MAX_VALUE,x=i.MAX_VALUE,b=-i.MAX_VALUE,w,_,T,E,L,C=this.nodes,A=C.length,I=0;Iw&&(y=w),v<_&&(v=_),x>T&&(x=T),bw&&(y=w),v<_&&(v=_),x>T&&(x=T),b=this.nodes.length){var A=0;v.forEach(function(I){I.owner==g&&A++}),A==this.nodes.length&&(this.isConnected=!0)}},t.exports=p},function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(6),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]d)return l[0]=u,l[1]=m,l[2]=f,l[3]=C,!1;if(hf)return l[0]=p,l[1]=h,l[2]=E,l[3]=d,!1;if(uf?(l[0]=y,l[1]=v,k=!0):(l[0]=g,l[1]=m,k=!0):S===N&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=x,l[1]=v,k=!0)),-O===N?f>u?(l[2]=L,l[3]=C,R=!0):(l[2]=E,l[3]=T,R=!0):O===N&&(f>u?(l[2]=_,l[3]=T,R=!0):(l[2]=A,l[3]=C,R=!0)),k&&R)return!1;if(u>f?h>d?(P=this.getCardinalDirection(S,N,4),F=this.getCardinalDirection(O,N,2)):(P=this.getCardinalDirection(-S,N,3),F=this.getCardinalDirection(-O,N,1)):h>d?(P=this.getCardinalDirection(-S,N,1),F=this.getCardinalDirection(-O,N,3)):(P=this.getCardinalDirection(S,N,2),F=this.getCardinalDirection(O,N,4)),!k)switch(P){case 1:$=m,B=u+-w/N,l[0]=B,l[1]=$;break;case 2:B=x,$=h+b*N,l[0]=B,l[1]=$;break;case 3:$=v,B=u+w/N,l[0]=B,l[1]=$;break;case 4:B=y,$=h+-b*N,l[0]=B,l[1]=$;break}if(!R)switch(F){case 1:W=T,z=f+-D/N,l[2]=z,l[3]=W;break;case 2:z=A,W=d+I*N,l[2]=z,l[3]=W;break;case 3:W=C,z=f+D/N,l[2]=z,l[3]=W;break;case 4:z=L,W=d+-I*N,l[2]=z,l[3]=W;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,v=u.y,x=void 0,b=void 0,w=void 0,_=void 0,T=void 0,E=void 0,L=void 0,C=void 0,A=void 0;return w=p-f,T=h-d,L=d*f-h*p,_=v-g,E=m-y,C=y*g-m*v,A=w*E-_*T,A===0?null:(x=(T*C-E*L)/A,b=(_*L-w*C)/A,new n(x,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l=0){var v=(-m+Math.sqrt(m*m-4*p*g))/(2*p),x=(-m-Math.sqrt(m*m-4*p*g))/(2*p),b=null;return v>=0&&v<=1?[v]:x>=0&&x<=1?[x]:b}else return null},i.HALF_PI=.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,t.exports=i},function(t,e,r){"use strict";function n(){}o(n,"IMath"),n.sign=function(i){return i>0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n},function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n},function(t,e,r){"use strict";var n=function(){function h(f,d){for(var p=0;p"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i},function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g0&&g;){for(w.push(T[0]);w.length>0&&g;){var E=w[0];w.splice(0,1),b.add(E);for(var L=E.getEdges(),x=0;x-1&&T.splice(D,1)}b=new Set,_=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,v=this.graphManager.calcLowestCommonAncestor(m.source,m.target),x=0;x0){for(var v=this.edgeToDummyNodes.get(y),x=0;x=0&&g.splice(C,1);var A=_.getNeighborsList();A.forEach(function(k){if(y.indexOf(k)<0){var R=v.get(k),S=R-1;S==1&&E.push(k),v.set(k,S)}})}y=y.concat(E),(g.length==1||g.length==2)&&(x=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p},function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n},function(t,e,r){"use strict";var n=r(5);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i},function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);pa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,v,x=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;mw||b>w)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*v)):(w=p.getEstimatedSize()*this.compoundGravityRangeFactor,(x>w||b>w)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*v*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement=x.length||w>=x[0].length)){for(var _=0;_h},"_defaultCompareFunction")}]),l}();t.exports=s},function(t,e,r){"use strict";function n(){}o(n,"SVD"),n.svd=function(i){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=i.length,this.n=i[0].length;var a=Math.min(this.m,this.n);this.s=function(dt){for(var Xe=[];dt-- >0;)Xe.push(0);return Xe}(Math.min(this.m+1,this.n)),this.U=function(dt){var Xe=o(function ct(Lt){if(Lt.length==0)return 0;for(var Rt=[],zt=0;zt0;)Xe.push(0);return Xe}(this.n),l=function(dt){for(var Xe=[];dt-- >0;)Xe.push(0);return Xe}(this.m),u=!0,h=!0,f=Math.min(this.m-1,this.n),d=Math.max(0,Math.min(this.n-2,this.m)),p=0;p=0;N--)if(this.s[N]!==0){for(var P=N+1;P=0;K--){if(function(dt,Xe){return dt&&Xe}(K0;){var ce=void 0,te=void 0;for(ce=R-2;ce>=-1&&ce!==-1;ce--)if(Math.abs(s[ce])<=ue+ae*(Math.abs(this.s[ce])+Math.abs(this.s[ce+1]))){s[ce]=0;break}if(ce===R-2)te=4;else{var De=void 0;for(De=R-1;De>=ce&&De!==ce;De--){var oe=(De!==R?Math.abs(s[De]):0)+(De!==ce+1?Math.abs(s[De-1]):0);if(Math.abs(this.s[De])<=ue+ae*oe){this.s[De]=0;break}}De===ce?te=3:De===R-1?te=1:(te=2,ce=De)}switch(ce++,te){case 1:{var ke=s[R-2];s[R-2]=0;for(var Fe=R-2;Fe>=ce;Fe--){var Be=n.hypot(this.s[Fe],ke),Ve=this.s[Fe]/Be,Ge=ke/Be;if(this.s[Fe]=Be,Fe!==ce&&(ke=-Ge*s[Fe-1],s[Fe-1]=Ve*s[Fe-1]),h)for(var He=0;He=this.s[ce+1]);){var rt=this.s[ce];if(this.s[ce]=this.s[ce+1],this.s[ce+1]=rt,h&&ceMath.abs(a)?(s=a/i,s=Math.abs(i)*Math.sqrt(1+s*s)):a!=0?(s=i/a,s=Math.abs(a)*Math.sqrt(1+s*s)):s=0,s},t.exports=n},function(t,e,r){"use strict";var n=function(){function s(l,u){for(var h=0;h2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l{"use strict";o(function(e,r){typeof xb=="object"&&typeof fF=="object"?fF.exports=r(hF()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof xb=="object"?xb.coseBase=r(hF()):e.coseBase=r(e.layoutBase)},"webpackUniversalModuleDefinition")(xb,function(t){return(()=>{"use strict";var e={45:(a,s,l)=>{var u={};u.layoutBase=l(551),u.CoSEConstants=l(806),u.CoSEEdge=l(767),u.CoSEGraph=l(880),u.CoSEGraphManager=l(578),u.CoSELayout=l(765),u.CoSENode=l(991),u.ConstraintHandler=l(902),a.exports=u},806:(a,s,l)=>{var u=l(551).FDLayoutConstants;function h(){}o(h,"CoSEConstants");for(var f in u)h[f]=u[f];h.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,h.DEFAULT_RADIAL_SEPARATION=u.DEFAULT_EDGE_LENGTH,h.DEFAULT_COMPONENT_SEPERATION=60,h.TILE=!0,h.TILING_PADDING_VERTICAL=10,h.TILING_PADDING_HORIZONTAL=10,h.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,h.ENFORCE_CONSTRAINTS=!0,h.APPLY_LAYOUT=!0,h.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,h.TREE_REDUCTION_ON_INCREMENTAL=!0,h.PURE_INCREMENTAL=h.DEFAULT_INCREMENTAL,a.exports=h},767:(a,s,l)=>{var u=l(551).FDLayoutEdge;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEEdge"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},880:(a,s,l)=>{var u=l(551).LGraph;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEGraph"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},578:(a,s,l)=>{var u=l(551).LGraphManager;function h(d){u.call(this,d)}o(h,"CoSEGraphManager"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},765:(a,s,l)=>{var u=l(551).FDLayout,h=l(578),f=l(880),d=l(991),p=l(767),m=l(806),g=l(902),y=l(551).FDLayoutConstants,v=l(551).LayoutConstants,x=l(551).Point,b=l(551).PointD,w=l(551).DimensionD,_=l(551).Layout,T=l(551).Integer,E=l(551).IGeometry,L=l(551).LGraph,C=l(551).Transform,A=l(551).LinkedList;function I(){u.call(this),this.toBeTiled={},this.constraints={}}o(I,"CoSELayout"),I.prototype=Object.create(u.prototype);for(var D in u)I[D]=u[D];I.prototype.newGraphManager=function(){var k=new h(this);return this.graphManager=k,k},I.prototype.newGraph=function(k){return new f(null,this.graphManager,k)},I.prototype.newNode=function(k){return new d(this.graphManager,k)},I.prototype.newEdge=function(k){return new p(null,null,k)},I.prototype.initParameters=function(){u.prototype.initParameters.call(this,arguments),this.isSubLayout||(m.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=m.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=m.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=y.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=y.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=y.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},I.prototype.initSpringEmbedder=function(){u.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/y.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},I.prototype.layout=function(){var k=v.DEFAULT_CREATE_BENDS_AS_NEEDED;return k&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},I.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){if(m.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var R=new Set(this.getAllNodes()),S=this.nodesWithGravity.filter(function(P){return R.has(P)});this.graphManager.setAllNodesToApplyGravitation(S)}}else{var k=this.getFlatForest();if(k.length>0)this.positionNodesRadially(k);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var R=new Set(this.getAllNodes()),S=this.nodesWithGravity.filter(function(O){return R.has(O)});this.graphManager.setAllNodesToApplyGravitation(S),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(g.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),m.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},I.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%y.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(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 k=new Set(this.getAllNodes()),R=this.nodesWithGravity.filter(function(N){return k.has(N)});this.graphManager.setAllNodesToApplyGravitation(R),this.graphManager.updateBounds(),this.updateGrid(),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=y.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()),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var S=!this.isTreeGrowing&&!this.isGrowthFinished,O=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(S,O),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},I.prototype.getPositionsData=function(){for(var k=this.graphManager.getAllNodes(),R={},S=0;S0&&this.updateDisplacements();for(var S=0;S0&&(O.fixedNodeWeight=P)}}if(this.constraints.relativePlacementConstraint){var F=new Map,B=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(ee){k.fixedNodesOnHorizontal.add(ee),k.fixedNodesOnVertical.add(ee)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var $=this.constraints.alignmentConstraint.vertical,S=0;S<$.length;S++)this.dummyToNodeForVerticalAlignment.set("dummy"+S,[]),$[S].forEach(function(J){F.set(J,"dummy"+S),k.dummyToNodeForVerticalAlignment.get("dummy"+S).push(J),k.fixedNodeSet.has(J)&&k.fixedNodesOnHorizontal.add("dummy"+S)});if(this.constraints.alignmentConstraint.horizontal)for(var z=this.constraints.alignmentConstraint.horizontal,S=0;S=2*ee.length/3;q--)J=Math.floor(Math.random()*(q+1)),H=ee[q],ee[q]=ee[J],ee[J]=H;return ee},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(ee){if(ee.left){var J=F.has(ee.left)?F.get(ee.left):ee.left,H=F.has(ee.right)?F.get(ee.right):ee.right;k.nodesInRelativeHorizontal.includes(J)||(k.nodesInRelativeHorizontal.push(J),k.nodeToRelativeConstraintMapHorizontal.set(J,[]),k.dummyToNodeForVerticalAlignment.has(J)?k.nodeToTempPositionMapHorizontal.set(J,k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(J)[0]).getCenterX()):k.nodeToTempPositionMapHorizontal.set(J,k.idToNodeMap.get(J).getCenterX())),k.nodesInRelativeHorizontal.includes(H)||(k.nodesInRelativeHorizontal.push(H),k.nodeToRelativeConstraintMapHorizontal.set(H,[]),k.dummyToNodeForVerticalAlignment.has(H)?k.nodeToTempPositionMapHorizontal.set(H,k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(H)[0]).getCenterX()):k.nodeToTempPositionMapHorizontal.set(H,k.idToNodeMap.get(H).getCenterX())),k.nodeToRelativeConstraintMapHorizontal.get(J).push({right:H,gap:ee.gap}),k.nodeToRelativeConstraintMapHorizontal.get(H).push({left:J,gap:ee.gap})}else{var q=B.has(ee.top)?B.get(ee.top):ee.top,Z=B.has(ee.bottom)?B.get(ee.bottom):ee.bottom;k.nodesInRelativeVertical.includes(q)||(k.nodesInRelativeVertical.push(q),k.nodeToRelativeConstraintMapVertical.set(q,[]),k.dummyToNodeForHorizontalAlignment.has(q)?k.nodeToTempPositionMapVertical.set(q,k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(q)[0]).getCenterY()):k.nodeToTempPositionMapVertical.set(q,k.idToNodeMap.get(q).getCenterY())),k.nodesInRelativeVertical.includes(Z)||(k.nodesInRelativeVertical.push(Z),k.nodeToRelativeConstraintMapVertical.set(Z,[]),k.dummyToNodeForHorizontalAlignment.has(Z)?k.nodeToTempPositionMapVertical.set(Z,k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(Z)[0]).getCenterY()):k.nodeToTempPositionMapVertical.set(Z,k.idToNodeMap.get(Z).getCenterY())),k.nodeToRelativeConstraintMapVertical.get(q).push({bottom:Z,gap:ee.gap}),k.nodeToRelativeConstraintMapVertical.get(Z).push({top:q,gap:ee.gap})}});else{var W=new Map,j=new Map;this.constraints.relativePlacementConstraint.forEach(function(ee){if(ee.left){var J=F.has(ee.left)?F.get(ee.left):ee.left,H=F.has(ee.right)?F.get(ee.right):ee.right;W.has(J)?W.get(J).push(H):W.set(J,[H]),W.has(H)?W.get(H).push(J):W.set(H,[J])}else{var q=B.has(ee.top)?B.get(ee.top):ee.top,Z=B.has(ee.bottom)?B.get(ee.bottom):ee.bottom;j.has(q)?j.get(q).push(Z):j.set(q,[Z]),j.has(Z)?j.get(Z).push(q):j.set(Z,[q])}});var K=o(function(J,H){var q=[],Z=[],ae=new A,ue=new Set,ce=0;return J.forEach(function(te,De){if(!ue.has(De)){q[ce]=[],Z[ce]=!1;var oe=De;for(ae.push(oe),ue.add(oe),q[ce].push(oe);ae.length!=0;){oe=ae.shift(),H.has(oe)&&(Z[ce]=!0);var ke=J.get(oe);ke.forEach(function(Fe){ue.has(Fe)||(ae.push(Fe),ue.add(Fe),q[ce].push(Fe))})}ce++}}),{components:q,isFixed:Z}},"constructComponents"),ie=K(W,k.fixedNodesOnHorizontal);this.componentsOnHorizontal=ie.components,this.fixedComponentsOnHorizontal=ie.isFixed;var Q=K(j,k.fixedNodesOnVertical);this.componentsOnVertical=Q.components,this.fixedComponentsOnVertical=Q.isFixed}}},I.prototype.updateDisplacements=function(){var k=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(Q){var ee=k.idToNodeMap.get(Q.nodeId);ee.displacementX=0,ee.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var R=this.constraints.alignmentConstraint.vertical,S=0;S1){var B;for(B=0;BO&&(O=Math.floor(F.y)),P=Math.floor(F.x+m.DEFAULT_COMPONENT_SEPERATION)}this.transform(new b(v.WORLD_CENTER_X-F.x/2,v.WORLD_CENTER_Y-F.y/2))},I.radialLayout=function(k,R,S){var O=Math.max(this.maxDiagonalInTree(k),m.DEFAULT_RADIAL_SEPARATION);I.branchRadialLayout(R,null,0,359,0,O);var N=L.calculateBounds(k),P=new C;P.setDeviceOrgX(N.getMinX()),P.setDeviceOrgY(N.getMinY()),P.setWorldOrgX(S.x),P.setWorldOrgY(S.y);for(var F=0;F1;){var q=H[0];H.splice(0,1);var Z=K.indexOf(q);Z>=0&&K.splice(Z,1),ee--,ie--}R!=null?J=(K.indexOf(H[0])+1)%ee:J=0;for(var ae=Math.abs(O-S)/ie,ue=J;Q!=ie;ue=++ue%ee){var ce=K[ue].getOtherEnd(k);if(ce!=R){var te=(S+Q*ae)%360,De=(te+ae)%360;I.branchRadialLayout(ce,k,te,De,N+P,P),Q++}}},I.maxDiagonalInTree=function(k){for(var R=T.MIN_VALUE,S=0;SR&&(R=N)}return R},I.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},I.prototype.groupZeroDegreeMembers=function(){var k=this,R={};this.memberGroups={},this.idToDummyNode={};for(var S=[],O=this.graphManager.getAllNodes(),N=0;N"u"&&(R[B]=[]),R[B]=R[B].concat(P)}Object.keys(R).forEach(function($){if(R[$].length>1){var z="DummyCompound_"+$;k.memberGroups[z]=R[$];var W=R[$][0].getParent(),j=new d(k.graphManager);j.id=z,j.paddingLeft=W.paddingLeft||0,j.paddingRight=W.paddingRight||0,j.paddingBottom=W.paddingBottom||0,j.paddingTop=W.paddingTop||0,k.idToDummyNode[z]=j;var K=k.getGraphManager().add(k.newGraph(),j),ie=W.getChild();ie.add(j);for(var Q=0;QN?(O.rect.x-=(O.labelWidth-N)/2,O.setWidth(O.labelWidth),O.labelMarginLeft=(O.labelWidth-N)/2):O.labelPosHorizontal=="right"&&O.setWidth(N+O.labelWidth)),O.labelHeight&&(O.labelPosVertical=="top"?(O.rect.y-=O.labelHeight,O.setHeight(P+O.labelHeight),O.labelMarginTop=O.labelHeight):O.labelPosVertical=="center"&&O.labelHeight>P?(O.rect.y-=(O.labelHeight-P)/2,O.setHeight(O.labelHeight),O.labelMarginTop=(O.labelHeight-P)/2):O.labelPosVertical=="bottom"&&O.setHeight(P+O.labelHeight))}})},I.prototype.repopulateCompounds=function(){for(var k=this.compoundOrder.length-1;k>=0;k--){var R=this.compoundOrder[k],S=R.id,O=R.paddingLeft,N=R.paddingTop,P=R.labelMarginLeft,F=R.labelMarginTop;this.adjustLocations(this.tiledMemberPack[S],R.rect.x,R.rect.y,O,N,P,F)}},I.prototype.repopulateZeroDegreeMembers=function(){var k=this,R=this.tiledZeroDegreePack;Object.keys(R).forEach(function(S){var O=k.idToDummyNode[S],N=O.paddingLeft,P=O.paddingTop,F=O.labelMarginLeft,B=O.labelMarginTop;k.adjustLocations(R[S],O.rect.x,O.rect.y,N,P,F,B)})},I.prototype.getToBeTiled=function(k){var R=k.id;if(this.toBeTiled[R]!=null)return this.toBeTiled[R];var S=k.getChild();if(S==null)return this.toBeTiled[R]=!1,!1;for(var O=S.getNodes(),N=0;N0)return this.toBeTiled[R]=!1,!1;if(P.getChild()==null){this.toBeTiled[P.id]=!1;continue}if(!this.getToBeTiled(P))return this.toBeTiled[R]=!1,!1}return this.toBeTiled[R]=!0,!0},I.prototype.getNodeDegree=function(k){for(var R=k.id,S=k.getEdges(),O=0,N=0;NW&&(W=K.rect.height)}S+=W+k.verticalPadding}},I.prototype.tileCompoundMembers=function(k,R){var S=this;this.tiledMemberPack=[],Object.keys(k).forEach(function(O){var N=R[O];if(S.tiledMemberPack[O]=S.tileNodes(k[O],N.paddingLeft+N.paddingRight),N.rect.width=S.tiledMemberPack[O].width,N.rect.height=S.tiledMemberPack[O].height,N.setCenter(S.tiledMemberPack[O].centerX,S.tiledMemberPack[O].centerY),N.labelMarginLeft=0,N.labelMarginTop=0,m.NODE_DIMENSIONS_INCLUDE_LABELS){var P=N.rect.width,F=N.rect.height;N.labelWidth&&(N.labelPosHorizontal=="left"?(N.rect.x-=N.labelWidth,N.setWidth(P+N.labelWidth),N.labelMarginLeft=N.labelWidth):N.labelPosHorizontal=="center"&&N.labelWidth>P?(N.rect.x-=(N.labelWidth-P)/2,N.setWidth(N.labelWidth),N.labelMarginLeft=(N.labelWidth-P)/2):N.labelPosHorizontal=="right"&&N.setWidth(P+N.labelWidth)),N.labelHeight&&(N.labelPosVertical=="top"?(N.rect.y-=N.labelHeight,N.setHeight(F+N.labelHeight),N.labelMarginTop=N.labelHeight):N.labelPosVertical=="center"&&N.labelHeight>F?(N.rect.y-=(N.labelHeight-F)/2,N.setHeight(N.labelHeight),N.labelMarginTop=(N.labelHeight-F)/2):N.labelPosVertical=="bottom"&&N.setHeight(F+N.labelHeight))}})},I.prototype.tileNodes=function(k,R){var S=this.tileNodesByFavoringDim(k,R,!0),O=this.tileNodesByFavoringDim(k,R,!1),N=this.getOrgRatio(S),P=this.getOrgRatio(O),F;return PB&&(B=Q.getWidth())});var $=P/N,z=F/N,W=Math.pow(S-O,2)+4*($+O)*(z+S)*N,j=(O-S+Math.sqrt(W))/(2*($+O)),K;R?(K=Math.ceil(j),K==j&&K++):K=Math.floor(j);var ie=K*($+O)-O;return B>ie&&(ie=B),ie+=O*2,ie},I.prototype.tileNodesByFavoringDim=function(k,R,S){var O=m.TILING_PADDING_VERTICAL,N=m.TILING_PADDING_HORIZONTAL,P=m.TILING_COMPARE_BY,F={rows:[],rowWidth:[],rowHeight:[],width:0,height:R,verticalPadding:O,horizontalPadding:N,centerX:0,centerY:0};P&&(F.idealRowWidth=this.calcIdealRowWidth(k,S));var B=o(function(ee){return ee.rect.width*ee.rect.height},"getNodeArea"),$=o(function(ee,J){return B(J)-B(ee)},"areaCompareFcn");k.sort(function(Q,ee){var J=$;return F.idealRowWidth?(J=P,J(Q.id,ee.id)):J(Q,ee)});for(var z=0,W=0,j=0;j0&&(F+=k.horizontalPadding),k.rowWidth[S]=F,k.width0&&(B+=k.verticalPadding);var $=0;B>k.rowHeight[S]&&($=k.rowHeight[S],k.rowHeight[S]=B,$=k.rowHeight[S]-$),k.height+=$,k.rows[S].push(R)},I.prototype.getShortestRowIndex=function(k){for(var R=-1,S=Number.MAX_VALUE,O=0;OS&&(R=O,S=k.rowWidth[O]);return R},I.prototype.canAddHorizontal=function(k,R,S){if(k.idealRowWidth){var O=k.rows.length-1,N=k.rowWidth[O];return N+R+k.horizontalPadding<=k.idealRowWidth}var P=this.getShortestRowIndex(k);if(P<0)return!0;var F=k.rowWidth[P];if(F+k.horizontalPadding+R<=k.width)return!0;var B=0;k.rowHeight[P]0&&(B=S+k.verticalPadding-k.rowHeight[P]);var $;k.width-F>=R+k.horizontalPadding?$=(k.height+B)/(F+R+k.horizontalPadding):$=(k.height+B)/k.width,B=S+k.verticalPadding;var z;return k.widthP&&R!=S){O.splice(-1,1),k.rows[S].push(N),k.rowWidth[R]=k.rowWidth[R]-P,k.rowWidth[S]=k.rowWidth[S]+P,k.width=k.rowWidth[instance.getLongestRowIndex(k)];for(var F=Number.MIN_VALUE,B=0;BF&&(F=O[B].height);R>0&&(F+=k.verticalPadding);var $=k.rowHeight[R]+k.rowHeight[S];k.rowHeight[R]=F,k.rowHeight[S]0)for(var ie=N;ie<=P;ie++)K[0]+=this.grid[ie][F-1].length+this.grid[ie][F].length-1;if(P0)for(var ie=F;ie<=B;ie++)K[3]+=this.grid[N-1][ie].length+this.grid[N][ie].length-1;for(var Q=T.MAX_VALUE,ee,J,H=0;H{var u=l(551).FDLayoutNode,h=l(551).IMath;function f(p,m,g,y){u.call(this,p,m,g,y)}o(f,"CoSENode"),f.prototype=Object.create(u.prototype);for(var d in u)f[d]=u[d];f.prototype.calculateDisplacement=function(){var p=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementX=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementX)),Math.abs(this.displacementY)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementY=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},f.prototype.propogateDisplacementToChildren=function(p,m){for(var g=this.getChild().getNodes(),y,v=0;v{function u(g){if(Array.isArray(g)){for(var y=0,v=Array(g.length);y0){var Tt=0;Ye.forEach(function(rt){Te=="horizontal"?(me.set(rt,x.has(rt)?b[x.get(rt)]:Ee.get(rt)),Tt+=me.get(rt)):(me.set(rt,x.has(rt)?w[x.get(rt)]:Ee.get(rt)),Tt+=me.get(rt))}),Tt=Tt/Ye.length,vt.forEach(function(rt){se.has(rt)||me.set(rt,Tt)})}else{var $e=0;vt.forEach(function(rt){Te=="horizontal"?$e+=x.has(rt)?b[x.get(rt)]:Ee.get(rt):$e+=x.has(rt)?w[x.get(rt)]:Ee.get(rt)}),$e=$e/vt.length,vt.forEach(function(rt){me.set(rt,$e)})}});for(var tt=o(function(){var Ye=Re.shift(),Tt=U.get(Ye);Tt.forEach(function($e){if(me.get($e.id)rt&&(rt=Rt),zt<$e&&($e=zt),zt>ft&&(ft=zt)}}catch(yt){er=!0,dt=yt}finally{try{!kt&&Xe.return&&Xe.return()}finally{if(er)throw dt}}var Xn=(Tt+rt)/2-($e+ft)/2,or=!0,hn=!1,Tn=void 0;try{for(var Ur=vt[Symbol.iterator](),ri;!(or=(ri=Ur.next()).done);or=!0){var Mn=ri.value;me.set(Mn,me.get(Mn)+Xn)}}catch(yt){hn=!0,Tn=yt}finally{try{!or&&Ur.return&&Ur.return()}finally{if(hn)throw Tn}}})}return me},"findAppropriatePositionForRelativePlacement"),D=o(function(U){var Te=0,se=0,Ee=0,Ae=0;if(U.forEach(function(We){We.left?b[x.get(We.left)]-b[x.get(We.right)]>=0?Te++:se++:w[x.get(We.top)]-w[x.get(We.bottom)]>=0?Ee++:Ae++}),Te>se&&Ee>Ae)for(var Pe=0;Pese)for(var Me=0;MeAe)for(var me=0;me1)y.fixedNodeConstraint.forEach(function(ye,U){O[U]=[ye.position.x,ye.position.y],N[U]=[b[x.get(ye.nodeId)],w[x.get(ye.nodeId)]]}),P=!0;else if(y.alignmentConstraint)(function(){var ye=0;if(y.alignmentConstraint.vertical){for(var U=y.alignmentConstraint.vertical,Te=o(function(me){var We=new Set;U[me].forEach(function(gt){We.add(gt)});var Re=new Set([].concat(u(We)).filter(function(gt){return B.has(gt)})),tt=void 0;Re.size>0?tt=b[x.get(Re.values().next().value)]:tt=A(We).x,U[me].forEach(function(gt){O[ye]=[tt,w[x.get(gt)]],N[ye]=[b[x.get(gt)],w[x.get(gt)]],ye++})},"_loop2"),se=0;se0?tt=b[x.get(Re.values().next().value)]:tt=A(We).y,Ee[me].forEach(function(gt){O[ye]=[b[x.get(gt)],tt],N[ye]=[b[x.get(gt)],w[x.get(gt)]],ye++})},"_loop3"),Pe=0;Pej&&(j=W[ie].length,K=ie);if(j0){var Ve={x:0,y:0};y.fixedNodeConstraint.forEach(function(ye,U){var Te={x:b[x.get(ye.nodeId)],y:w[x.get(ye.nodeId)]},se=ye.position,Ee=C(se,Te);Ve.x+=Ee.x,Ve.y+=Ee.y}),Ve.x/=y.fixedNodeConstraint.length,Ve.y/=y.fixedNodeConstraint.length,b.forEach(function(ye,U){b[U]+=Ve.x}),w.forEach(function(ye,U){w[U]+=Ve.y}),y.fixedNodeConstraint.forEach(function(ye){b[x.get(ye.nodeId)]=ye.position.x,w[x.get(ye.nodeId)]=ye.position.y})}if(y.alignmentConstraint){if(y.alignmentConstraint.vertical)for(var Ge=y.alignmentConstraint.vertical,He=o(function(U){var Te=new Set;Ge[U].forEach(function(Ae){Te.add(Ae)});var se=new Set([].concat(u(Te)).filter(function(Ae){return B.has(Ae)})),Ee=void 0;se.size>0?Ee=b[x.get(se.values().next().value)]:Ee=A(Te).x,Te.forEach(function(Ae){B.has(Ae)||(b[x.get(Ae)]=Ee)})},"_loop4"),xe=0;xe0?Ee=w[x.get(se.values().next().value)]:Ee=A(Te).y,Te.forEach(function(Ae){B.has(Ae)||(w[x.get(Ae)]=Ee)})},"_loop5"),he=0;he{a.exports=t}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(45);return i})()})});var c2e=Ni((bb,pF)=>{"use strict";o(function(e,r){typeof bb=="object"&&typeof pF=="object"?pF.exports=r(dF()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof bb=="object"?bb.cytoscapeFcose=r(dF()):e.cytoscapeFcose=r(e.coseBase)},"webpackUniversalModuleDefinition")(bb,function(t){return(()=>{"use strict";var e={658:a=>{a.exports=Object.assign!=null?Object.assign.bind(Object):function(s){for(var l=arguments.length,u=Array(l>1?l-1:0),h=1;h{var u=function(){function d(p,m){var g=[],y=!0,v=!1,x=void 0;try{for(var b=p[Symbol.iterator](),w;!(y=(w=b.next()).done)&&(g.push(w.value),!(m&&g.length===m));y=!0);}catch(_){v=!0,x=_}finally{try{!y&&b.return&&b.return()}finally{if(v)throw x}}return g}return o(d,"sliceIterator"),function(p,m){if(Array.isArray(p))return p;if(Symbol.iterator in Object(p))return d(p,m);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),h=l(140).layoutBase.LinkedList,f={};f.getTopMostNodes=function(d){for(var p={},m=0;m0&&P.merge(z)});for(var F=0;F1){w=x[0],_=w.connectedEdges().length,x.forEach(function(N){N.connectedEdges().length<_&&(_=N.connectedEdges().length,w=N)}),L.push(w.id());var O=d.collection();O.merge(x[0]),x.forEach(function(N){O.merge(N)}),x=[],m=m.difference(O),E++}},"_loop");do A();while(!T);return g&&L.length>0&&g.set("dummy"+(g.size+1),L),C},f.relocateComponent=function(d,p,m){if(!m.fixedNodeConstraint){var g=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY,v=Number.POSITIVE_INFINITY,x=Number.NEGATIVE_INFINITY;if(m.quality=="draft"){var b=!0,w=!1,_=void 0;try{for(var T=p.nodeIndexes[Symbol.iterator](),E;!(b=(E=T.next()).done);b=!0){var L=E.value,C=u(L,2),A=C[0],I=C[1],D=m.cy.getElementById(A);if(D){var k=D.boundingBox(),R=p.xCoords[I]-k.w/2,S=p.xCoords[I]+k.w/2,O=p.yCoords[I]-k.h/2,N=p.yCoords[I]+k.h/2;Ry&&(y=S),Ox&&(x=N)}}}catch(z){w=!0,_=z}finally{try{!b&&T.return&&T.return()}finally{if(w)throw _}}var P=d.x-(y+g)/2,F=d.y-(x+v)/2;p.xCoords=p.xCoords.map(function(z){return z+P}),p.yCoords=p.yCoords.map(function(z){return z+F})}else{Object.keys(p).forEach(function(z){var W=p[z],j=W.getRect().x,K=W.getRect().x+W.getRect().width,ie=W.getRect().y,Q=W.getRect().y+W.getRect().height;jy&&(y=K),iex&&(x=Q)});var B=d.x-(y+g)/2,$=d.y-(x+v)/2;Object.keys(p).forEach(function(z){var W=p[z];W.setCenter(W.getCenterX()+B,W.getCenterY()+$)})}}},f.calcBoundingBox=function(d,p,m,g){for(var y=Number.MAX_SAFE_INTEGER,v=Number.MIN_SAFE_INTEGER,x=Number.MAX_SAFE_INTEGER,b=Number.MIN_SAFE_INTEGER,w=void 0,_=void 0,T=void 0,E=void 0,L=d.descendants().not(":parent"),C=L.length,A=0;Aw&&(y=w),v<_&&(v=_),x>T&&(x=T),b{var u=l(548),h=l(140).CoSELayout,f=l(140).CoSENode,d=l(140).layoutBase.PointD,p=l(140).layoutBase.DimensionD,m=l(140).layoutBase.LayoutConstants,g=l(140).layoutBase.FDLayoutConstants,y=l(140).CoSEConstants,v=o(function(b,w){var _=b.cy,T=b.eles,E=T.nodes(),L=T.edges(),C=void 0,A=void 0,I=void 0,D={};b.randomize&&(C=w.nodeIndexes,A=w.xCoords,I=w.yCoords);var k=o(function(z){return typeof z=="function"},"isFn"),R=o(function(z,W){return k(z)?z(W):z},"optFn"),S=u.calcParentsWithoutChildren(_,T),O=o(function $(z,W,j,K){for(var ie=W.length,Q=0;Q0){var ae=void 0;ae=j.getGraphManager().add(j.newGraph(),H),$(ae,J,j,K)}}},"processChildrenList"),N=o(function(z,W,j){for(var K=0,ie=0,Q=0;Q0?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=K/ie:k(b.idealEdgeLength)?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=50:y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=b.idealEdgeLength,y.MIN_REPULSION_DIST=g.MIN_REPULSION_DIST=g.DEFAULT_EDGE_LENGTH/10,y.DEFAULT_RADIAL_SEPARATION=g.DEFAULT_EDGE_LENGTH)},"processEdges"),P=o(function(z,W){W.fixedNodeConstraint&&(z.constraints.fixedNodeConstraint=W.fixedNodeConstraint),W.alignmentConstraint&&(z.constraints.alignmentConstraint=W.alignmentConstraint),W.relativePlacementConstraint&&(z.constraints.relativePlacementConstraint=W.relativePlacementConstraint)},"processConstraints");b.nestingFactor!=null&&(y.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=g.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=b.nestingFactor),b.gravity!=null&&(y.DEFAULT_GRAVITY_STRENGTH=g.DEFAULT_GRAVITY_STRENGTH=b.gravity),b.numIter!=null&&(y.MAX_ITERATIONS=g.MAX_ITERATIONS=b.numIter),b.gravityRange!=null&&(y.DEFAULT_GRAVITY_RANGE_FACTOR=g.DEFAULT_GRAVITY_RANGE_FACTOR=b.gravityRange),b.gravityCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_STRENGTH=g.DEFAULT_COMPOUND_GRAVITY_STRENGTH=b.gravityCompound),b.gravityRangeCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=g.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=b.gravityRangeCompound),b.initialEnergyOnIncremental!=null&&(y.DEFAULT_COOLING_FACTOR_INCREMENTAL=g.DEFAULT_COOLING_FACTOR_INCREMENTAL=b.initialEnergyOnIncremental),b.tilingCompareBy!=null&&(y.TILING_COMPARE_BY=b.tilingCompareBy),b.quality=="proof"?m.QUALITY=2:m.QUALITY=0,y.NODE_DIMENSIONS_INCLUDE_LABELS=g.NODE_DIMENSIONS_INCLUDE_LABELS=m.NODE_DIMENSIONS_INCLUDE_LABELS=b.nodeDimensionsIncludeLabels,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!b.randomize,y.ANIMATE=g.ANIMATE=m.ANIMATE=b.animate,y.TILE=b.tile,y.TILING_PADDING_VERTICAL=typeof b.tilingPaddingVertical=="function"?b.tilingPaddingVertical.call():b.tilingPaddingVertical,y.TILING_PADDING_HORIZONTAL=typeof b.tilingPaddingHorizontal=="function"?b.tilingPaddingHorizontal.call():b.tilingPaddingHorizontal,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!0,y.PURE_INCREMENTAL=!b.randomize,m.DEFAULT_UNIFORM_LEAF_NODE_SIZES=b.uniformNodeDimensions,b.step=="transformed"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!1),b.step=="enforced"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!1),b.step=="cose"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!0),b.step=="all"&&(b.randomize?y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!0),b.fixedNodeConstraint||b.alignmentConstraint||b.relativePlacementConstraint?y.TREE_REDUCTION_ON_INCREMENTAL=!1:y.TREE_REDUCTION_ON_INCREMENTAL=!0;var F=new h,B=F.newGraphManager();return O(B.addRoot(),u.getTopMostNodes(E),F,b),N(F,B,L),P(F,b),F.runLayout(),D},"coseLayout");a.exports={coseLayout:v}},212:(a,s,l)=>{var u=function(){function b(w,_){for(var T=0;T<_.length;T++){var E=_[T];E.enumerable=E.enumerable||!1,E.configurable=!0,"value"in E&&(E.writable=!0),Object.defineProperty(w,E.key,E)}}return o(b,"defineProperties"),function(w,_,T){return _&&b(w.prototype,_),T&&b(w,T),w}}();function h(b,w){if(!(b instanceof w))throw new TypeError("Cannot call a class as a function")}o(h,"_classCallCheck");var f=l(658),d=l(548),p=l(657),m=p.spectralLayout,g=l(816),y=g.coseLayout,v=Object.freeze({quality:"default",randomize:!0,animate:!0,animationDuration:1e3,animationEasing:void 0,fit:!0,padding:30,nodeDimensionsIncludeLabels:!1,uniformNodeDimensions:!1,packComponents:!0,step:"all",samplingType:!0,sampleSize:25,nodeSeparation:75,piTol:1e-7,nodeRepulsion:o(function(w){return 4500},"nodeRepulsion"),idealEdgeLength:o(function(w){return 50},"idealEdgeLength"),edgeElasticity:o(function(w){return .45},"edgeElasticity"),nestingFactor:.1,gravity:.25,numIter:2500,tile:!0,tilingCompareBy:void 0,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:.3,fixedNodeConstraint:void 0,alignmentConstraint:void 0,relativePlacementConstraint:void 0,ready:o(function(){},"ready"),stop:o(function(){},"stop")}),x=function(){function b(w){h(this,b),this.options=f({},v,w)}return o(b,"Layout"),u(b,[{key:"run",value:o(function(){var _=this,T=this.options,E=T.cy,L=T.eles,C=[],A=void 0,I=void 0,D=[],k=void 0,R=[];T.fixedNodeConstraint&&(!Array.isArray(T.fixedNodeConstraint)||T.fixedNodeConstraint.length==0)&&(T.fixedNodeConstraint=void 0),T.alignmentConstraint&&(T.alignmentConstraint.vertical&&(!Array.isArray(T.alignmentConstraint.vertical)||T.alignmentConstraint.vertical.length==0)&&(T.alignmentConstraint.vertical=void 0),T.alignmentConstraint.horizontal&&(!Array.isArray(T.alignmentConstraint.horizontal)||T.alignmentConstraint.horizontal.length==0)&&(T.alignmentConstraint.horizontal=void 0)),T.relativePlacementConstraint&&(!Array.isArray(T.relativePlacementConstraint)||T.relativePlacementConstraint.length==0)&&(T.relativePlacementConstraint=void 0);var S=T.fixedNodeConstraint||T.alignmentConstraint||T.relativePlacementConstraint;S&&(T.tile=!1,T.packComponents=!1);var O=void 0,N=!1;if(E.layoutUtilities&&T.packComponents&&(O=E.layoutUtilities("get"),O||(O=E.layoutUtilities()),N=!0),L.nodes().length>0)if(N){var B=d.getTopMostNodes(T.eles.nodes());if(k=d.connectComponents(E,T.eles,B),k.forEach(function(oe){var ke=oe.boundingBox();R.push({x:ke.x1+ke.w/2,y:ke.y1+ke.h/2})}),T.randomize&&k.forEach(function(oe){T.eles=oe,C.push(m(T))}),T.quality=="default"||T.quality=="proof"){var $=E.collection();if(T.tile){var z=new Map,W=[],j=[],K=0,ie={nodeIndexes:z,xCoords:W,yCoords:j},Q=[];if(k.forEach(function(oe,ke){oe.edges().length==0&&(oe.nodes().forEach(function(Fe,Be){$.merge(oe.nodes()[Be]),Fe.isParent()||(ie.nodeIndexes.set(oe.nodes()[Be].id(),K++),ie.xCoords.push(oe.nodes()[0].position().x),ie.yCoords.push(oe.nodes()[0].position().y))}),Q.push(ke))}),$.length>1){var ee=$.boundingBox();R.push({x:ee.x1+ee.w/2,y:ee.y1+ee.h/2}),k.push($),C.push(ie);for(var J=Q.length-1;J>=0;J--)k.splice(Q[J],1),C.splice(Q[J],1),R.splice(Q[J],1)}}k.forEach(function(oe,ke){T.eles=oe,D.push(y(T,C[ke])),d.relocateComponent(R[ke],D[ke],T)})}else k.forEach(function(oe,ke){d.relocateComponent(R[ke],C[ke],T)});var H=new Set;if(k.length>1){var q=[],Z=L.filter(function(oe){return oe.css("display")=="none"});k.forEach(function(oe,ke){var Fe=void 0;if(T.quality=="draft"&&(Fe=C[ke].nodeIndexes),oe.nodes().not(Z).length>0){var Be={};Be.edges=[],Be.nodes=[];var Ve=void 0;oe.nodes().not(Z).forEach(function(Ge){if(T.quality=="draft")if(!Ge.isParent())Ve=Fe.get(Ge.id()),Be.nodes.push({x:C[ke].xCoords[Ve]-Ge.boundingbox().w/2,y:C[ke].yCoords[Ve]-Ge.boundingbox().h/2,width:Ge.boundingbox().w,height:Ge.boundingbox().h});else{var He=d.calcBoundingBox(Ge,C[ke].xCoords,C[ke].yCoords,Fe);Be.nodes.push({x:He.topLeftX,y:He.topLeftY,width:He.width,height:He.height})}else D[ke][Ge.id()]&&Be.nodes.push({x:D[ke][Ge.id()].getLeft(),y:D[ke][Ge.id()].getTop(),width:D[ke][Ge.id()].getWidth(),height:D[ke][Ge.id()].getHeight()})}),oe.edges().forEach(function(Ge){var He=Ge.source(),xe=Ge.target();if(He.css("display")!="none"&&xe.css("display")!="none")if(T.quality=="draft"){var X=Fe.get(He.id()),fe=Fe.get(xe.id()),he=[],ge=[];if(He.isParent()){var ne=d.calcBoundingBox(He,C[ke].xCoords,C[ke].yCoords,Fe);he.push(ne.topLeftX+ne.width/2),he.push(ne.topLeftY+ne.height/2)}else he.push(C[ke].xCoords[X]),he.push(C[ke].yCoords[X]);if(xe.isParent()){var ye=d.calcBoundingBox(xe,C[ke].xCoords,C[ke].yCoords,Fe);ge.push(ye.topLeftX+ye.width/2),ge.push(ye.topLeftY+ye.height/2)}else ge.push(C[ke].xCoords[fe]),ge.push(C[ke].yCoords[fe]);Be.edges.push({startX:he[0],startY:he[1],endX:ge[0],endY:ge[1]})}else D[ke][He.id()]&&D[ke][xe.id()]&&Be.edges.push({startX:D[ke][He.id()].getCenterX(),startY:D[ke][He.id()].getCenterY(),endX:D[ke][xe.id()].getCenterX(),endY:D[ke][xe.id()].getCenterY()})}),Be.nodes.length>0&&(q.push(Be),H.add(ke))}});var ae=O.packComponents(q,T.randomize).shifts;if(T.quality=="draft")C.forEach(function(oe,ke){var Fe=oe.xCoords.map(function(Ve){return Ve+ae[ke].dx}),Be=oe.yCoords.map(function(Ve){return Ve+ae[ke].dy});oe.xCoords=Fe,oe.yCoords=Be});else{var ue=0;H.forEach(function(oe){Object.keys(D[oe]).forEach(function(ke){var Fe=D[oe][ke];Fe.setCenter(Fe.getCenterX()+ae[ue].dx,Fe.getCenterY()+ae[ue].dy)}),ue++})}}}else{var P=T.eles.boundingBox();if(R.push({x:P.x1+P.w/2,y:P.y1+P.h/2}),T.randomize){var F=m(T);C.push(F)}T.quality=="default"||T.quality=="proof"?(D.push(y(T,C[0])),d.relocateComponent(R[0],D[0],T)):d.relocateComponent(R[0],C[0],T)}var ce=o(function(ke,Fe){if(T.quality=="default"||T.quality=="proof"){typeof ke=="number"&&(ke=Fe);var Be=void 0,Ve=void 0,Ge=ke.data("id");return D.forEach(function(xe){Ge in xe&&(Be={x:xe[Ge].getRect().getCenterX(),y:xe[Ge].getRect().getCenterY()},Ve=xe[Ge])}),T.nodeDimensionsIncludeLabels&&(Ve.labelWidth&&(Ve.labelPosHorizontal=="left"?Be.x+=Ve.labelWidth/2:Ve.labelPosHorizontal=="right"&&(Be.x-=Ve.labelWidth/2)),Ve.labelHeight&&(Ve.labelPosVertical=="top"?Be.y+=Ve.labelHeight/2:Ve.labelPosVertical=="bottom"&&(Be.y-=Ve.labelHeight/2))),Be==null&&(Be={x:ke.position("x"),y:ke.position("y")}),{x:Be.x,y:Be.y}}else{var He=void 0;return C.forEach(function(xe){var X=xe.nodeIndexes.get(ke.id());X!=null&&(He={x:xe.xCoords[X],y:xe.yCoords[X]})}),He==null&&(He={x:ke.position("x"),y:ke.position("y")}),{x:He.x,y:He.y}}},"getPositions");if(T.quality=="default"||T.quality=="proof"||T.randomize){var te=d.calcParentsWithoutChildren(E,L),De=L.filter(function(oe){return oe.css("display")=="none"});T.eles=L.not(De),L.nodes().not(":parent").not(De).layoutPositions(_,T,ce),te.length>0&&te.forEach(function(oe){oe.position(ce(oe))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")},"run")}]),b}();a.exports=x},657:(a,s,l)=>{var u=l(548),h=l(140).layoutBase.Matrix,f=l(140).layoutBase.SVD,d=o(function(m){var g=m.cy,y=m.eles,v=y.nodes(),x=y.nodes(":parent"),b=new Map,w=new Map,_=new Map,T=[],E=[],L=[],C=[],A=[],I=[],D=[],k=[],R=void 0,S=void 0,O=1e8,N=1e-9,P=m.piTol,F=m.samplingType,B=m.nodeSeparation,$=void 0,z=o(function(){for(var Te=0,se=0,Ee=!1;se<$;){Te=Math.floor(Math.random()*S),Ee=!1;for(var Ae=0;Ae=Pe;){me=Ae[Pe++];for(var vt=T[me],Ye=0;Yett&&(tt=A[$e],gt=$e)}return gt},"BFS"),j=o(function(Te){var se=void 0;if(Te){se=Math.floor(Math.random()*S),R=se;for(var Ae=0;Ae=1)break;tt=Re}for(var vt=0;vt=1)break;tt=Re}for(var Tt=0;Tt0&&(se.isParent()?T[Te].push(_.get(se.id())):T[Te].push(se.id()))})});var te=o(function(Te){var se=w.get(Te),Ee=void 0;b.get(Te).forEach(function(Ae){g.getElementById(Ae).isParent()?Ee=_.get(Ae):Ee=Ae,T[se].push(Ee),T[w.get(Ee)].push(Te)})},"_loop"),De=!0,oe=!1,ke=void 0;try{for(var Fe=b.keys()[Symbol.iterator](),Be;!(De=(Be=Fe.next()).done);De=!0){var Ve=Be.value;te(Ve)}}catch(U){oe=!0,ke=U}finally{try{!De&&Fe.return&&Fe.return()}finally{if(oe)throw ke}}S=w.size;var Ge=void 0;if(S>2){$=S{var u=l(212),h=o(function(d){d&&d("layout","fcose",u)},"register");typeof cytoscape<"u"&&h(cytoscape),a.exports=h},140:a=>{a.exports=t}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(579);return i})()})});var S1,j0,mF=M(()=>{"use strict";Kc();S1=o(t=>`${t}`,"wrapIcon"),j0={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:S1('')},server:{body:S1('')},disk:{body:S1('')},internet:{body:S1('')},cloud:{body:S1('')},unknown:RS,blank:{body:S1("")}}}});var u2e,h2e,f2e,d2e,p2e=M(()=>{"use strict";Kc();Vt();Dl();yb();mF();iS();u2e=o(async function(t,e){let r=Li("padding"),n=Li("iconSize"),i=n/2,a=n/6,s=a/2;await Promise.all(e.edges().map(async l=>{let{source:u,sourceDir:h,sourceArrow:f,sourceGroup:d,target:p,targetDir:m,targetArrow:g,targetGroup:y,label:v}=nS(l),{x,y:b}=l[0].sourceEndpoint(),{x:w,y:_}=l[0].midpoint(),{x:T,y:E}=l[0].targetEndpoint(),L=r+4;if(d&&(us(h)?x+=h==="L"?-L:L:b+=h==="T"?-L:L+18),y&&(us(m)?T+=m==="L"?-L:L:E+=m==="T"?-L:L+18),!d&&X0.getNode(u)?.type==="junction"&&(us(h)?x+=h==="L"?i:-i:b+=h==="T"?i:-i),!y&&X0.getNode(p)?.type==="junction"&&(us(m)?T+=m==="L"?i:-i:E+=m==="T"?i:-i),l[0]._private.rscratch){let C=t.insert("g");if(C.insert("path").attr("d",`M ${x},${b} L ${w},${_} L${T},${E} `).attr("class","edge"),f){let A=us(h)?mb[h](x,a):x-s,I=qc(h)?mb[h](b,a):b-s;C.insert("polygon").attr("points",lF[h](a)).attr("transform",`translate(${A},${I})`).attr("class","arrow")}if(g){let A=us(m)?mb[m](T,a):T-s,I=qc(m)?mb[m](E,a):E-s;C.insert("polygon").attr("points",lF[m](a)).attr("transform",`translate(${A},${I})`).attr("class","arrow")}if(v){let A=rS(h,m)?"XY":us(h)?"X":"Y",I=0;A==="X"?I=Math.abs(x-T):A==="Y"?I=Math.abs(b-E)/1.5:I=Math.abs(x-T)/2;let D=C.append("g");if(await Si(D,v,{useHtmlLabels:!1,width:I,classes:"architecture-service-label"},de()),D.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),A==="X")D.attr("transform","translate("+w+", "+_+")");else if(A==="Y")D.attr("transform","translate("+w+", "+_+") rotate(-90)");else if(A==="XY"){let k=gb(h,m);if(k&&Jve(k)){let R=D.node().getBoundingClientRect(),[S,O]=t2e(k);D.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*S*O*45})`);let N=D.node().getBoundingClientRect();D.attr("transform",` + translate(${w}, ${_-R.height/2}) + translate(${S*N.width/2}, ${O*N.height/2}) + rotate(${-1*S*O*45}, 0, ${R.height/2}) + `)}}}}}))},"drawEdges"),h2e=o(async function(t,e){let n=Li("padding")*.75,i=Li("fontSize"),s=Li("iconSize")/2;await Promise.all(e.nodes().map(async l=>{let u=Mf(l);if(u.type==="group"){let{h,w:f,x1:d,y1:p}=l.boundingBox();t.append("rect").attr("x",d+s).attr("y",p+s).attr("width",f).attr("height",h).attr("class","node-bkg");let m=t.append("g"),g=d,y=p;if(u.icon){let v=m.append("g");v.html(`${await wo(u.icon,{height:n,width:n,fallbackPrefix:j0.prefix})}`),v.attr("transform","translate("+(g+s+1)+", "+(y+s+1)+")"),g+=n,y+=i/2-1-2}if(u.label){let v=m.append("g");await Si(v,u.label,{useHtmlLabels:!1,width:f,classes:"architecture-service-label"},de()),v.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),v.attr("transform","translate("+(g+s+4)+", "+(y+s+2)+")")}}}))},"drawGroups"),f2e=o(async function(t,e,r){for(let n of r){let i=e.append("g"),a=Li("iconSize");if(n.title){let h=i.append("g");await Si(h,n.title,{useHtmlLabels:!1,width:a*1.5,classes:"architecture-service-label"},de()),h.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),h.attr("transform","translate("+a/2+", "+a+")")}let s=i.append("g");if(n.icon)s.html(`${await wo(n.icon,{height:a,width:a,fallbackPrefix:j0.prefix})}`);else if(n.iconText){s.html(`${await wo("blank",{height:a,width:a,fallbackPrefix:j0.prefix})}`);let d=s.append("g").append("foreignObject").attr("width",a).attr("height",a).append("div").attr("class","node-icon-text").attr("style",`height: ${a}px;`).append("div").html(n.iconText),p=parseInt(window.getComputedStyle(d.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;d.attr("style",`-webkit-line-clamp: ${Math.floor((a-2)/p)};`)}else s.append("path").attr("class","node-bkg").attr("id","node-"+n.id).attr("d",`M0 ${a} v${-a} q0,-5 5,-5 h${a} q5,0 5,5 v${a} H0 Z`);i.attr("class","architecture-service");let{width:l,height:u}=i._groups[0][0].getBBox();n.width=l,n.height=u,t.setElementForId(n.id,i)}return 0},"drawServices"),d2e=o(function(t,e,r){r.forEach(n=>{let i=e.append("g"),a=Li("iconSize");i.append("g").append("rect").attr("id","node-"+n.id).attr("fill-opacity","0").attr("width",a).attr("height",a),i.attr("class","architecture-junction");let{width:l,height:u}=i._groups[0][0].getBBox();i.width=l,i.height=u,t.setElementForId(n.id,i)})},"drawJunctions")});function Lit(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"service",id:r.id,icon:r.icon,label:r.title,parent:r.in,width:Li("iconSize"),height:Li("iconSize")},classes:"node-service"})})}function Dit(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"junction",id:r.id,parent:r.in,width:Li("iconSize"),height:Li("iconSize")},classes:"node-junction"})})}function Nit(t,e){e.nodes().map(r=>{let n=Mf(r);if(n.type==="group")return;n.x=r.position().x,n.y=r.position().y,t.getElementById(n.id).attr("transform","translate("+(n.x||0)+","+(n.y||0)+")")})}function Rit(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"group",id:r.id,icon:r.icon,label:r.title,parent:r.in},classes:"node-group"})})}function Mit(t,e){t.forEach(r=>{let{lhsId:n,rhsId:i,lhsInto:a,lhsGroup:s,rhsInto:l,lhsDir:u,rhsDir:h,rhsGroup:f,title:d}=r,p=rS(r.lhsDir,r.rhsDir)?"segments":"straight",m={id:`${n}-${i}`,label:d,source:n,sourceDir:u,sourceArrow:a,sourceGroup:s,sourceEndpoint:u==="L"?"0 50%":u==="R"?"100% 50%":u==="T"?"50% 0":"50% 100%",target:i,targetDir:h,targetArrow:l,targetGroup:f,targetEndpoint:h==="L"?"0 50%":h==="R"?"100% 50%":h==="T"?"50% 0":"50% 100%"};e.add({group:"edges",data:m,classes:p})})}function Iit(t){let e=t.map(i=>{let a={},s={};return Object.entries(i).forEach(([l,[u,h]])=>{a[h]||(a[h]=[]),s[u]||(s[u]=[]),a[h].push(l),s[u].push(l)}),{horiz:Object.values(a).filter(l=>l.length>1),vert:Object.values(s).filter(l=>l.length>1)}}),[r,n]=e.reduce(([i,a],{horiz:s,vert:l})=>[[...i,...s],[...a,...l]],[[],[]]);return{horizontal:r,vertical:n}}function Oit(t){let e=[],r=o(i=>`${i[0]},${i[1]}`,"posToStr"),n=o(i=>i.split(",").map(a=>parseInt(a)),"strToPos");return t.forEach(i=>{let a=Object.fromEntries(Object.entries(i).map(([h,f])=>[r(f),h])),s=[r([0,0])],l={},u={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;s.length>0;){let h=s.shift();if(h){l[h]=1;let f=a[h];if(f){let d=n(h);Object.entries(u).forEach(([p,m])=>{let g=r([d[0]+m[0],d[1]+m[1]]),y=a[g];y&&!l[g]&&(s.push(g),e.push({[oF[p]]:y,[oF[Zve(p)]]:f,gap:1.5*Li("iconSize")}))})}}}}),e}function Pit(t,e,r,n,{spatialMaps:i}){return new Promise(a=>{let s=ze("body").append("div").attr("id","cy").attr("style","display:none"),l=sl({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":`${Li("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:`${Li("padding")}px`}}]});s.remove(),Rit(r,l),Lit(t,l),Dit(e,l),Mit(n,l);let u=Iit(i),h=Oit(i),f=l.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(d){let[p,m]=d.connectedNodes(),{parent:g}=Mf(p),{parent:y}=Mf(m);return g===y?1.5*Li("iconSize"):.5*Li("iconSize")},edgeElasticity(d){let[p,m]=d.connectedNodes(),{parent:g}=Mf(p),{parent:y}=Mf(m);return g===y?.45:.001},alignmentConstraint:u,relativePlacementConstraint:h});f.one("layoutstop",()=>{function d(p,m,g,y){let v,x,{x:b,y:w}=p,{x:_,y:T}=m;x=(y-w+(b-g)*(w-T)/(b-_))/Math.sqrt(1+Math.pow((w-T)/(b-_),2)),v=Math.sqrt(Math.pow(y-w,2)+Math.pow(g-b,2)-Math.pow(x,2));let E=Math.sqrt(Math.pow(_-b,2)+Math.pow(T-w,2));v=v/E;let L=(_-b)*(y-w)-(T-w)*(g-b);switch(!0){case L>=0:L=1;break;case L<0:L=-1;break}let C=(_-b)*(g-b)+(T-w)*(y-w);switch(!0){case C>=0:C=1;break;case C<0:C=-1;break}return x=Math.abs(x)*L,v=v*C,{distances:x,weights:v}}o(d,"getSegmentWeights"),l.startBatch();for(let p of Object.values(l.edges()))if(p.data?.()){let{x:m,y:g}=p.source().position(),{x:y,y:v}=p.target().position();if(m!==y&&g!==v){let x=p.sourceEndpoint(),b=p.targetEndpoint(),{sourceDir:w}=nS(p),[_,T]=qc(w)?[x.x,b.y]:[b.x,x.y],{weights:E,distances:L}=d(x,b,_,T);p.style("segment-distances",L),p.style("segment-weights",E)}}l.endBatch(),f.run()}),f.run(),l.ready(d=>{Y.info("Ready",d),a(l)})})}var m2e,Bit,g2e,y2e=M(()=>{"use strict";Kc();kB();m2e=ka(c2e(),1);mr();ht();Hu();ni();yb();mF();iS();p2e();Mb([{name:j0.prefix,icons:j0}]);sl.use(m2e.default);o(Lit,"addServices");o(Dit,"addJunctions");o(Nit,"positionNodes");o(Rit,"addGroups");o(Mit,"addEdges");o(Iit,"getAlignments");o(Oit,"getRelativeConstraints");o(Pit,"layoutArchitecture");Bit=o(async(t,e,r,n)=>{let i=n.db,a=i.getServices(),s=i.getJunctions(),l=i.getGroups(),u=i.getEdges(),h=i.getDataStructures(),f=Oa(e),d=f.append("g");d.attr("class","architecture-edges");let p=f.append("g");p.attr("class","architecture-services");let m=f.append("g");m.attr("class","architecture-groups"),await f2e(i,p,a),d2e(i,p,s);let g=await Pit(a,s,l,u,h);await u2e(d,g),await h2e(m,g),Nit(i,g),_o(void 0,f,Li("padding"),Li("useMaxWidth"))},"draw"),g2e={draw:Bit}});var v2e={};vr(v2e,{diagram:()=>Fit});var Fit,x2e=M(()=>{"use strict";s2e();yb();l2e();y2e();Fit={parser:a2e,db:X0,renderer:g2e,styles:o2e}});var Eat={};vr(Eat,{default:()=>kat});Kc();MS();$f();var WX="c4",s7e=o(t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),"detector"),o7e=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(HX(),UX));return{id:WX,diagram:t}},"loader"),l7e={id:WX,detector:s7e,loader:o7e},YX=l7e;var jie="flowchart",dPe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-wrapper"||e?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(t),"detector"),pPe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(fT(),hT));return{id:jie,diagram:t}},"loader"),mPe={id:jie,detector:dPe,loader:pPe},Kie=mPe;var Qie="flowchart-v2",gPe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-d3"?!1:(e?.flowchart?.defaultRenderer==="elk"&&(e.layout="elk"),/^\s*graph/.test(t)&&e?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)),"detector"),yPe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(fT(),hT));return{id:Qie,diagram:t}},"loader"),vPe={id:Qie,detector:gPe,loader:yPe},Zie=vPe;var Aae="er",qPe=o(t=>/^\s*erDiagram/.test(t),"detector"),XPe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Cae(),Sae));return{id:Aae,diagram:t}},"loader"),jPe={id:Aae,detector:qPe,loader:XPe},_ae=jPe;var Fue="gitGraph",x$e=o(t=>/^\s*gitGraph/.test(t),"detector"),b$e=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Bue(),Pue));return{id:Fue,diagram:t}},"loader"),w$e={id:Fue,detector:x$e,loader:b$e},zue=w$e;var mhe="gantt",lVe=o(t=>/^\s*gantt/.test(t),"detector"),cVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(phe(),dhe));return{id:mhe,diagram:t}},"loader"),uVe={id:mhe,detector:lVe,loader:cVe},ghe=uVe;var She="info",gVe=o(t=>/^\s*info/.test(t),"detector"),yVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Ehe(),khe));return{id:She,diagram:t}},"loader"),Che={id:She,detector:gVe,loader:yVe};var Phe="pie",DVe=o(t=>/^\s*pie/.test(t),"detector"),NVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Ohe(),Ihe));return{id:Phe,diagram:t}},"loader"),Bhe={id:Phe,detector:DVe,loader:NVe};var Khe="quadrantChart",jVe=o(t=>/^\s*quadrantChart/.test(t),"detector"),KVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(jhe(),Xhe));return{id:Khe,diagram:t}},"loader"),QVe={id:Khe,detector:jVe,loader:KVe},Qhe=QVe;var Efe="xychart",dUe=o(t=>/^\s*xychart-beta/.test(t),"detector"),pUe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(kfe(),Tfe));return{id:Efe,diagram:t}},"loader"),mUe={id:Efe,detector:dUe,loader:pUe},Sfe=mUe;var $fe="requirement",UUe=o(t=>/^\s*requirement(Diagram)?/.test(t),"detector"),HUe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Gfe(),zfe));return{id:$fe,diagram:t}},"loader"),WUe={id:$fe,detector:UUe,loader:HUe},Vfe=WUe;var mde="sequence",XHe=o(t=>/^\s*sequenceDiagram/.test(t),"detector"),jHe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(pde(),dde));return{id:mde,diagram:t}},"loader"),KHe={id:mde,detector:XHe,loader:jHe},gde=KHe;var Lde="class",_We=o((t,e)=>e?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t),"detector"),LWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(_de(),Ade));return{id:Lde,diagram:t}},"loader"),DWe={id:Lde,detector:_We,loader:LWe},Dde=DWe;var Mde="classDiagram",RWe=o((t,e)=>/^\s*classDiagram/.test(t)&&e?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t),"detector"),MWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Rde(),Nde));return{id:Mde,diagram:t}},"loader"),IWe={id:Mde,detector:RWe,loader:MWe},Ide=IWe;var S0e="state",LYe=o((t,e)=>e?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t),"detector"),DYe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(E0e(),k0e));return{id:S0e,diagram:t}},"loader"),NYe={id:S0e,detector:LYe,loader:DYe},C0e=NYe;var L0e="stateDiagram",MYe=o((t,e)=>!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&e?.state?.defaultRenderer==="dagre-wrapper"),"detector"),IYe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(_0e(),A0e));return{id:L0e,diagram:t}},"loader"),OYe={id:L0e,detector:MYe,loader:IYe},D0e=OYe;var Y0e="journey",rqe=o(t=>/^\s*journey/.test(t),"detector"),nqe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(W0e(),H0e));return{id:Y0e,diagram:t}},"loader"),iqe={id:Y0e,detector:rqe,loader:nqe},q0e=iqe;ht();Hu();ni();var aqe=o((t,e,r)=>{Y.debug(`rendering svg for syntax error +`);let n=Oa(e),i=n.append("g");n.attr("viewBox","0 0 2412 512"),Zr(n,100,512,!0),i.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"),i.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"),i.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"),i.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"),i.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"),i.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"),i.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"),i.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"),yP={draw:aqe},X0e=yP;var sqe={db:{},renderer:yP,parser:{parse:o(()=>{},"parse")}},j0e=sqe;var K0e="flowchart-elk",oqe=o((t,e={})=>/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&e?.flowchart?.defaultRenderer==="elk"?(e.layout="elk",!0):!1,"detector"),lqe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(fT(),hT));return{id:K0e,diagram:t}},"loader"),cqe={id:K0e,detector:oqe,loader:lqe},Q0e=cqe;var kpe="timeline",_qe=o(t=>/^\s*timeline/.test(t),"detector"),Lqe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Tpe(),wpe));return{id:kpe,diagram:t}},"loader"),Dqe={id:kpe,detector:_qe,loader:Lqe},Epe=Dqe;var V1e="mindmap",Ftt=o(t=>/^\s*mindmap/.test(t),"detector"),ztt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>($1e(),G1e));return{id:V1e,diagram:t}},"loader"),Gtt={id:V1e,detector:Ftt,loader:ztt},U1e=Gtt;var tye="kanban",rrt=o(t=>/^\s*kanban/.test(t),"detector"),nrt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(eye(),J1e));return{id:tye,diagram:t}},"loader"),irt={id:tye,detector:rrt,loader:nrt},rye=irt;var Oye="sankey",Crt=o(t=>/^\s*sankey-beta/.test(t),"detector"),Art=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Iye(),Mye));return{id:Oye,diagram:t}},"loader"),_rt={id:Oye,detector:Crt,loader:Art},Pye=_rt;var Yye="packet",$rt=o(t=>/^\s*packet-beta/.test(t),"detector"),Vrt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Wye(),Hye));return{id:Yye,diagram:t}},"loader"),qye={id:Yye,detector:$rt,loader:Vrt};var Kve="block",cit=o(t=>/^\s*block-beta/.test(t),"detector"),uit=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(jve(),Xve));return{id:Kve,diagram:t}},"loader"),hit={id:Kve,detector:cit,loader:uit},Qve=hit;var b2e="architecture",zit=o(t=>/^\s*architecture/.test(t),"detector"),Git=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(x2e(),v2e));return{id:b2e,diagram:t}},"loader"),$it={id:b2e,detector:zit,loader:Git},w2e=$it;$f();Vt();var T2e=!1,C1=o(()=>{T2e||(T2e=!0,Qf("error",j0e,t=>t.toLowerCase().trim()==="error"),Qf("---",{db:{clear:o(()=>{},"clear")},styles:{},renderer:{draw:o(()=>{},"draw")},parser:{parse:o(()=>{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:o(()=>null,"init")},t=>t.toLowerCase().trimStart().startsWith("---")),Bb(YX,rye,Ide,Dde,_ae,ghe,Che,Bhe,Vfe,gde,Q0e,Zie,Kie,U1e,Epe,zue,D0e,C0e,q0e,Qhe,Pye,qye,Sfe,Qve,w2e))},"addDiagrams");ht();$f();Vt();var k2e=o(async()=>{Y.debug("Loading registered diagrams");let e=(await Promise.allSettled(Object.entries(Gf).map(async([r,{detector:n,loader:i}])=>{if(i)try{ay(r)}catch{try{let{diagram:a,id:s}=await i();Qf(s,a,n)}catch(a){throw Y.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete Gf[r],a}}}))).filter(r=>r.status==="rejected");if(e.length>0){Y.error(`Failed to load ${e.length} external diagrams`);for(let r of e)Y.error(r);throw new Error(`Failed to load ${e.length} external diagrams`)}},"loadRegisteredDiagrams");ht();mr();var aS="comm",sS="rule",oS="decl";var E2e="@import";var S2e="@keyframes";var C2e="@layer";var gF=Math.abs,wb=String.fromCharCode;function lS(t){return t.trim()}o(lS,"trim");function Tb(t,e,r){return t.replace(e,r)}o(Tb,"replace");function A2e(t,e,r){return t.indexOf(e,r)}o(A2e,"indexof");function K0(t,e){return t.charCodeAt(e)|0}o(K0,"charat");function If(t,e,r){return t.slice(e,r)}o(If,"substr");function yo(t){return t.length}o(yo,"strlen");function _2e(t){return t.length}o(_2e,"sizeof");function A1(t,e){return e.push(t),t}o(A1,"append");var cS=1,_1=1,L2e=0,ll=0,Di=0,D1="";function uS(t,e,r,n,i,a,s,l){return{value:t,root:e,parent:r,type:n,props:i,children:a,line:cS,column:_1,length:s,return:"",siblings:l}}o(uS,"node");function D2e(){return Di}o(D2e,"char");function N2e(){return Di=ll>0?K0(D1,--ll):0,_1--,Di===10&&(_1=1,cS--),Di}o(N2e,"prev");function cl(){return Di=ll2||L1(Di)>3?"":" "}o(I2e,"whitespace");function O2e(t,e){for(;--e&&cl()&&!(Di<48||Di>102||Di>57&&Di<65||Di>70&&Di<97););return hS(t,kb()+(e<6&&Ju()==32&&cl()==32))}o(O2e,"escaping");function yF(t){for(;cl();)switch(Di){case t:return ll;case 34:case 39:t!==34&&t!==39&&yF(Di);break;case 40:t===41&&yF(t);break;case 92:cl();break}return ll}o(yF,"delimiter");function P2e(t,e){for(;cl()&&t+Di!==57;)if(t+Di===84&&Ju()===47)break;return"/*"+hS(e,ll-1)+"*"+wb(t===47?t:cl())}o(P2e,"commenter");function B2e(t){for(;!L1(Ju());)cl();return hS(t,ll)}o(B2e,"identifier");function G2e(t){return M2e(dS("",null,null,null,[""],t=R2e(t),0,[0],t))}o(G2e,"compile");function dS(t,e,r,n,i,a,s,l,u){for(var h=0,f=0,d=s,p=0,m=0,g=0,y=1,v=1,x=1,b=0,w="",_=i,T=a,E=n,L=w;v;)switch(g=b,b=cl()){case 40:if(g!=108&&K0(L,d-1)==58){A2e(L+=Tb(fS(b),"&","&\f"),"&\f",gF(h?l[h-1]:0))!=-1&&(x=-1);break}case 34:case 39:case 91:L+=fS(b);break;case 9:case 10:case 13:case 32:L+=I2e(g);break;case 92:L+=O2e(kb()-1,7);continue;case 47:switch(Ju()){case 42:case 47:A1(Vit(P2e(cl(),kb()),e,r,u),u),(L1(g||1)==5||L1(Ju()||1)==5)&&yo(L)&&If(L,-1,void 0)!==" "&&(L+=" ");break;default:L+="/"}break;case 123*y:l[h++]=yo(L)*x;case 125*y:case 59:case 0:switch(b){case 0:case 125:v=0;case 59+f:x==-1&&(L=Tb(L,/\f/g,"")),m>0&&(yo(L)-d||y===0&&g===47)&&A1(m>32?z2e(L+";",n,r,d-1,u):z2e(Tb(L," ","")+";",n,r,d-2,u),u);break;case 59:L+=";";default:if(A1(E=F2e(L,e,r,h,f,i,l,w,_=[],T=[],d,a),a),b===123)if(f===0)dS(L,e,E,E,_,a,d,l,T);else switch(p===99&&K0(L,3)===110?100:p){case 100:case 108:case 109:case 115:dS(t,E,E,n&&A1(F2e(t,E,E,0,0,i,l,w,i,_=[],d,T),T),i,T,d,l,n?_:T);break;default:dS(L,E,E,E,[""],T,0,l,T)}}h=f=m=0,y=x=1,w=L="",d=s;break;case 58:d=1+yo(L),m=g;default:if(y<1){if(b==123)--y;else if(b==125&&y++==0&&N2e()==125)continue}switch(L+=wb(b),b*y){case 38:x=f>0?1:(L+="\f",-1);break;case 44:l[h++]=(yo(L)-1)*x,x=1;break;case 64:Ju()===45&&(L+=fS(cl())),p=Ju(),f=d=yo(w=L+=B2e(kb())),b++;break;case 45:g===45&&yo(L)==2&&(y=0)}}return a}o(dS,"parse");function F2e(t,e,r,n,i,a,s,l,u,h,f,d){for(var p=i-1,m=i===0?a:[""],g=_2e(m),y=0,v=0,x=0;y0?m[b]+" "+w:Tb(w,/&\f/g,m[b])))&&(u[x++]=_);return uS(t,e,r,i===0?sS:l,u,h,f,d)}o(F2e,"ruleset");function Vit(t,e,r,n){return uS(t,e,r,aS,wb(D2e()),If(t,2,-2),0,n)}o(Vit,"comment");function z2e(t,e,r,n,i){return uS(t,e,r,oS,If(t,0,n),If(t,n+1,-1),n,i)}o(z2e,"declaration");function pS(t,e){for(var r="",n=0;n{H2e.forEach(t=>{t()}),H2e=[]},"attachFunctions");ht();var Y2e=o(t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");Pb();V5();function q2e(t){let e=t.match(Ob);if(!e)return{text:t,metadata:{}};let r=fm(e[1],{schema:hm})??{};r=typeof r=="object"&&!Array.isArray(r)?r:{};let n={};return r.displayMode&&(n.displayMode=r.displayMode.toString()),r.title&&(n.title=r.title.toString()),r.config&&(n.config=r.config),{text:t.slice(e[0].length),metadata:n}}o(q2e,"extractFrontMatter");hr();var Hit=o(t=>t.replace(/\r\n?/g,` +`).replace(/<(\w+)([^>]*)>/g,(e,r,n)=>"<"+r+n.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),Wit=o(t=>{let{text:e,metadata:r}=q2e(t),{displayMode:n,title:i,config:a={}}=r;return n&&(a.gantt||(a.gantt={}),a.gantt.displayMode=n),{title:i,config:a,text:e}},"processFrontmatter"),Yit=o(t=>{let e=Ut.detectInit(t)??{},r=Ut.detectDirective(t,"wrap");return Array.isArray(r)?e.wrap=r.some(({type:n})=>n==="wrap"):r?.type==="wrap"&&(e.wrap=!0),{text:RX(t),directive:e}},"processDirectives");function vF(t){let e=Hit(t),r=Wit(e),n=Yit(r.text),i=ws(r.config,n.directive);return t=Y2e(n.text),{code:t,title:r.title,config:i}}o(vF,"preprocessDiagram");QC();Hb();hr();function X2e(t){let e=new TextEncoder().encode(t),r=Array.from(e,n=>String.fromCodePoint(n)).join("");return btoa(r)}o(X2e,"toBase64");var qit=5e4,Xit="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",jit="sandbox",Kit="loose",Qit="http://www.w3.org/2000/svg",Zit="http://www.w3.org/1999/xlink",Jit="http://www.w3.org/1999/xhtml",eat="100%",tat="100%",rat="border:0;margin:0;",nat="margin:0",iat="allow-top-navigation-by-user-activation allow-popups",aat='The "iframe" tag is not supported by your browser.',sat=["foreignobject"],oat=["dominant-baseline"];function Z2e(t){let e=vF(t);return V1(),Hz(e.config??{}),e}o(Z2e,"processAndSetConfigs");async function lat(t,e){C1();try{let{code:r,config:n}=Z2e(t);return{diagramType:(await J2e(r)).type,config:n}}catch(r){if(e?.suppressErrors)return!1;throw r}}o(lat,"parse");var j2e=o((t,e,r=[])=>` +.${t} ${e} { ${r.join(" !important; ")} !important; }`,"cssImportantStyles"),cat=o((t,e=new Map)=>{let r="";if(t.themeCSS!==void 0&&(r+=` +${t.themeCSS}`),t.fontFamily!==void 0&&(r+=` +:root { --mermaid-font-family: ${t.fontFamily}}`),t.altFontFamily!==void 0&&(r+=` +:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),e instanceof Map){let s=t.htmlLabels??t.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach(l=>{cr(l.styles)||s.forEach(u=>{r+=j2e(l.id,u,l.styles)}),cr(l.textStyles)||(r+=j2e(l.id,"tspan",(l?.textStyles||[]).map(u=>u.replace("color","fill"))))})}return r},"createCssStyles"),uat=o((t,e,r,n)=>{let i=cat(t,r),a=F$(e,i,t.themeVariables);return pS(G2e(`${n}{${a}}`),$2e)},"createUserStyles"),hat=o((t="",e,r)=>{let n=t;return!r&&!e&&(n=n.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),n=Ca(n),n=n.replace(/
    /g,"
    "),n},"cleanUpSvgCode"),fat=o((t="",e)=>{let r=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":tat,n=X2e(`${t}`);return``},"putIntoIFrame"),K2e=o((t,e,r,n,i)=>{let a=t.append("div");a.attr("id",r),n&&a.attr("style",n);let s=a.append("svg").attr("id",e).attr("width","100%").attr("xmlns",Qit);return i&&s.attr("xmlns:xlink",i),s.append("g"),t},"appendDivSvgG");function Q2e(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}o(Q2e,"sandboxedIframe");var dat=o((t,e,r,n)=>{t.getElementById(e)?.remove(),t.getElementById(r)?.remove(),t.getElementById(n)?.remove()},"removeExistingElements"),pat=o(async function(t,e,r){C1();let n=Z2e(e);e=n.code;let i=Sr();Y.debug(i),e.length>(i?.maxTextSize??qit)&&(e=Xit);let a="#"+t,s="i"+t,l="#"+s,u="d"+t,h="#"+u,f=o(()=>{let R=ze(p?l:h).node();R&&"remove"in R&&R.remove()},"removeTempElements"),d=ze("body"),p=i.securityLevel===jit,m=i.securityLevel===Kit,g=i.fontFamily;if(r!==void 0){if(r&&(r.innerHTML=""),p){let k=Q2e(ze(r),s);d=ze(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=ze(r);K2e(d,t,u,`font-family: ${g}`,Zit)}else{if(dat(document,t,u,s),p){let k=Q2e(ze("body"),s);d=ze(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=ze("body");K2e(d,t,u)}let y,v;try{y=await N1.fromText(e,{title:n.title})}catch(k){if(i.suppressErrorRendering)throw f(),k;y=await N1.fromText("error"),v=k}let x=d.select(h).node(),b=y.type,w=x.firstChild,_=w.firstChild,T=y.renderer.getClasses?.(e,y),E=uat(i,b,T,a),L=document.createElement("style");L.innerHTML=E,w.insertBefore(L,_);try{await y.renderer.draw(e,t,dx,y)}catch(k){throw i.suppressErrorRendering?f():X0e.draw(e,t,dx),k}let C=d.select(`${h} svg`),A=y.db.getAccTitle?.(),I=y.db.getAccDescription?.();gat(b,C,A,I),d.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",Jit);let D=d.select(h).node().innerHTML;if(Y.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),D=hat(D,p,xr(i.arrowMarkerAbsolute)),p){let k=d.select(h+" svg").node();D=fat(D,k)}else m||(D=ah.sanitize(D,{ADD_TAGS:sat,ADD_ATTR:oat,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(W2e(),v)throw v;return f(),{diagramType:b,svg:D,bindFunctions:y.db.bindFunctions}},"render");function mat(t={}){let e=Gn({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),$z(e),e?.theme&&e.theme in ko?e.themeVariables=ko[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=ko.default.getThemeVariables(e.themeVariables));let r=typeof e=="object"?QS(e):ZS();M1(r.logLevel),C1()}o(mat,"initialize");var J2e=o((t,e={})=>{let{code:r}=vF(t);return N1.fromText(r,e)},"getDiagramFromText");function gat(t,e,r,n){V2e(e,t),U2e(e,r,n,e.attr("id"))}o(gat,"addA11yInfo");var Of=Object.freeze({render:pat,parse:lat,getDiagramFromText:J2e,initialize:mat,getConfig:Sr,setConfig:Yb,getSiteConfig:ZS,updateSiteConfig:Vz,reset:o(()=>{V1()},"reset"),globalReset:o(()=>{V1(ih)},"globalReset"),defaultConfig:ih});M1(Sr().logLevel);V1(Sr());Fv();hr();var yat=o((t,e,r)=>{Y.warn(t),i9(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"),exe=o(async function(t={querySelector:".mermaid"}){try{await vat(t)}catch(e){if(i9(e)&&Y.error(e.str),eh.parseError&&eh.parseError(e),!t.suppressErrors)throw Y.error("Use the suppressErrors option to suppress these errors"),e}},"run"),vat=o(async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){let n=Of.getConfig();Y.debug(`${t?"":"No "}Callback function found`);let i;if(r)i=r;else if(e)i=document.querySelectorAll(e);else throw new Error("Nodes and querySelector are both undefined");Y.debug(`Found ${i.length} diagrams`),n?.startOnLoad!==void 0&&(Y.debug("Start On Load: "+n?.startOnLoad),Of.updateSiteConfig({startOnLoad:n?.startOnLoad}));let a=new Ut.InitIDGenerator(n.deterministicIds,n.deterministicIDSeed),s,l=[];for(let u of Array.from(i)){Y.info("Rendering diagram: "+u.id);if(u.getAttribute("data-processed"))continue;u.setAttribute("data-processed","true");let h=`mermaid-${a.next()}`;s=u.innerHTML,s=Ib(Ut.entityDecode(s)).trim().replace(//gi,"
    ");let f=Ut.detectInit(s);f&&Y.debug("Detected early reinit: ",f);try{let{svg:d,bindFunctions:p}=await ixe(h,s,u);u.innerHTML=d,t&&await t(h),p&&p(u)}catch(d){yat(d,l,eh.parseError)}}if(l.length>0)throw l[0]},"runThrowsErrors"),txe=o(function(t){Of.initialize(t)},"initialize"),xat=o(async function(t,e,r){Y.warn("mermaid.init is deprecated. Please use run instead."),t&&txe(t);let n={postRenderCallback:r,querySelector:".mermaid"};typeof e=="string"?n.querySelector=e:e&&(e instanceof HTMLElement?n.nodes=[e]:n.nodes=e),await exe(n)},"init"),bat=o(async(t,{lazyLoad:e=!0}={})=>{C1(),Bb(...t),e===!1&&await k2e()},"registerExternalDiagrams"),rxe=o(function(){if(eh.startOnLoad){let{startOnLoad:t}=Of.getConfig();t&&eh.run().catch(e=>Y.error("Mermaid failed to initialize",e))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",rxe,!1)}var wat=o(function(t){eh.parseError=t},"setParseErrorHandler"),mS=[],xF=!1,nxe=o(async()=>{if(!xF){for(xF=!0;mS.length>0;){let t=mS.shift();if(t)try{await t()}catch(e){Y.error("Error executing queue",e)}}xF=!1}},"executeQueue"),Tat=o(async(t,e)=>new Promise((r,n)=>{let i=o(()=>new Promise((a,s)=>{Of.parse(t,e).then(l=>{a(l),r(l)},l=>{Y.error("Error parsing",l),eh.parseError?.(l),s(l),n(l)})}),"performCall");mS.push(i),nxe().catch(n)}),"parse"),ixe=o((t,e,r)=>new Promise((n,i)=>{let a=o(()=>new Promise((s,l)=>{Of.render(t,e,r).then(u=>{s(u),n(u)},u=>{Y.error("Error parsing",u),eh.parseError?.(u),l(u),i(u)})}),"performCall");mS.push(a),nxe().catch(i)}),"render"),eh={startOnLoad:!0,mermaidAPI:Of,parse:Tat,render:ixe,init:xat,run:exe,registerExternalDiagrams:bat,registerLayoutLoaders:CD,initialize:txe,parseError:void 0,contentLoaded:rxe,setParseErrorHandler:wat,detectType:np,registerIconPacks:Mb},kat=eh;return pxe(Eat);})(); +/*! Check if previously processed */ +/*! + * Wait for document loaded before starting the execution + */ +/*! Bundled license information: + +dompurify/dist/purify.es.mjs: + (*! @license DOMPurify 3.2.1 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.2.1/LICENSE *) + +js-yaml/dist/js-yaml.mjs: + (*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT *) + +lodash-es/lodash.js: + (** + * @license + * Lodash (Custom Build) + * Build: `lodash modularize exports="es" -o ./` + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + *) + +cytoscape/dist/cytoscape.esm.mjs: + (*! + Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable + Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) + Licensed under The MIT License (http://opensource.org/licenses/MIT) + *) + (*! + Event object based on jQuery events, MIT license + + https://jquery.org/license/ + https://tldrlegal.com/license/mit-license + https://github.com/jquery/jquery/blob/master/src/event.js + *) + (*! Bezier curve function generator. Copyright Gaetan Renaudeau. MIT License: http://en.wikipedia.org/wiki/MIT_License *) + (*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License *) +*/ +globalThis.mermaid = globalThis.__esbuild_esm_mermaid.default; diff --git a/assets/external/unpkg.com/tablesort@5.3.0/dist/tablesort.min.js b/assets/external/unpkg.com/tablesort@5.3.0/dist/tablesort.min.js new file mode 100644 index 0000000..65a83b1 --- /dev/null +++ b/assets/external/unpkg.com/tablesort@5.3.0/dist/tablesort.min.js @@ -0,0 +1,6 @@ +/*! + * tablesort v5.2.1 (2021-10-30) + * http://tristen.ca/tablesort/demo/ + * Copyright (c) 2021 ; Licensed MIT +*/ +!function(){function a(b,c){if(!(this instanceof a))return new a(b,c);if(!b||"TABLE"!==b.tagName)throw new Error("Element must be a table");this.init(b,c||{})}var b=[],c=function(a){var b;return window.CustomEvent&&"function"==typeof window.CustomEvent?b=new CustomEvent(a):(b=document.createEvent("CustomEvent"),b.initCustomEvent(a,!1,!1,void 0)),b},d=function(a,b){return a.getAttribute(b.sortAttribute||"data-sort")||a.textContent||a.innerText||""},e=function(a,b){return a=a.trim().toLowerCase(),b=b.trim().toLowerCase(),a===b?0:a0)if(a.tHead&&a.tHead.rows.length>0){for(e=0;e0&&n.push(m),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⪼2^i)LD+iE!kE`vgXjAd3>CCWf}%kK(?km2n(u~ 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 IM6N<$f(jP3KmY&$ literal 0 HcmV?d00001 diff --git a/assets/javascripts/bundle.b71cdcd1.min.js b/assets/javascripts/bundle.b71cdcd1.min.js new file mode 100644 index 0000000..aa168ca --- /dev/null +++ b/assets/javascripts/bundle.b71cdcd1.min.js @@ -0,0 +1,3 @@ +"use strict";(()=>{var Zi=Object.create;var _r=Object.defineProperty;var ea=Object.getOwnPropertyDescriptor;var ta=Object.getOwnPropertyNames,Gt=Object.getOwnPropertySymbols,ra=Object.getPrototypeOf,Ar=Object.prototype.hasOwnProperty,bo=Object.prototype.propertyIsEnumerable;var ho=(e,t,r)=>t in e?_r(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,R=(e,t)=>{for(var r in t||(t={}))Ar.call(t,r)&&ho(e,r,t[r]);if(Gt)for(var r of Gt(t))bo.call(t,r)&&ho(e,r,t[r]);return e};var vo=(e,t)=>{var r={};for(var o in e)Ar.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(e!=null&&Gt)for(var o of Gt(e))t.indexOf(o)<0&&bo.call(e,o)&&(r[o]=e[o]);return r};var Cr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var oa=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of ta(t))!Ar.call(e,n)&&n!==r&&_r(e,n,{get:()=>t[n],enumerable:!(o=ea(t,n))||o.enumerable});return e};var Rt=(e,t,r)=>(r=e!=null?Zi(ra(e)):{},oa(t||!e||!e.__esModule?_r(r,"default",{value:e,enumerable:!0}):r,e));var go=(e,t,r)=>new Promise((o,n)=>{var i=c=>{try{a(r.next(c))}catch(p){n(p)}},s=c=>{try{a(r.throw(c))}catch(p){n(p)}},a=c=>c.done?o(c.value):Promise.resolve(c.value).then(i,s);a((r=r.apply(e,t)).next())});var xo=Cr((kr,yo)=>{(function(e,t){typeof kr=="object"&&typeof yo!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(kr,function(){"use strict";function e(r){var o=!0,n=!1,i=null,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function a(k){return!!(k&&k!==document&&k.nodeName!=="HTML"&&k.nodeName!=="BODY"&&"classList"in k&&"contains"in k.classList)}function c(k){var ut=k.type,je=k.tagName;return!!(je==="INPUT"&&s[ut]&&!k.readOnly||je==="TEXTAREA"&&!k.readOnly||k.isContentEditable)}function p(k){k.classList.contains("focus-visible")||(k.classList.add("focus-visible"),k.setAttribute("data-focus-visible-added",""))}function l(k){k.hasAttribute("data-focus-visible-added")&&(k.classList.remove("focus-visible"),k.removeAttribute("data-focus-visible-added"))}function f(k){k.metaKey||k.altKey||k.ctrlKey||(a(r.activeElement)&&p(r.activeElement),o=!0)}function u(k){o=!1}function d(k){a(k.target)&&(o||c(k.target))&&p(k.target)}function v(k){a(k.target)&&(k.target.classList.contains("focus-visible")||k.target.hasAttribute("data-focus-visible-added"))&&(n=!0,window.clearTimeout(i),i=window.setTimeout(function(){n=!1},100),l(k.target))}function S(k){document.visibilityState==="hidden"&&(n&&(o=!0),X())}function X(){document.addEventListener("mousemove",ee),document.addEventListener("mousedown",ee),document.addEventListener("mouseup",ee),document.addEventListener("pointermove",ee),document.addEventListener("pointerdown",ee),document.addEventListener("pointerup",ee),document.addEventListener("touchmove",ee),document.addEventListener("touchstart",ee),document.addEventListener("touchend",ee)}function re(){document.removeEventListener("mousemove",ee),document.removeEventListener("mousedown",ee),document.removeEventListener("mouseup",ee),document.removeEventListener("pointermove",ee),document.removeEventListener("pointerdown",ee),document.removeEventListener("pointerup",ee),document.removeEventListener("touchmove",ee),document.removeEventListener("touchstart",ee),document.removeEventListener("touchend",ee)}function ee(k){k.target.nodeName&&k.target.nodeName.toLowerCase()==="html"||(o=!1,re())}document.addEventListener("keydown",f,!0),document.addEventListener("mousedown",u,!0),document.addEventListener("pointerdown",u,!0),document.addEventListener("touchstart",u,!0),document.addEventListener("visibilitychange",S,!0),X(),r.addEventListener("focus",d,!0),r.addEventListener("blur",v,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var ro=Cr((Uy,Pn)=>{"use strict";var qa=/["'&<>]/;Pn.exports=Ka;function Ka(e){var t=""+e,r=qa.exec(t);if(!r)return t;var o,n="",i=0,s=0;for(i=r.index;i{(function(t,r){typeof zt=="object"&&typeof io=="object"?io.exports=r():typeof define=="function"&&define.amd?define([],r):typeof zt=="object"?zt.ClipboardJS=r():t.ClipboardJS=r()})(zt,function(){return function(){var e={686:function(o,n,i){"use strict";i.d(n,{default:function(){return Xi}});var s=i(279),a=i.n(s),c=i(370),p=i.n(c),l=i(817),f=i.n(l);function u(q){try{return document.execCommand(q)}catch(C){return!1}}var d=function(C){var _=f()(C);return u("cut"),_},v=d;function S(q){var C=document.documentElement.getAttribute("dir")==="rtl",_=document.createElement("textarea");_.style.fontSize="12pt",_.style.border="0",_.style.padding="0",_.style.margin="0",_.style.position="absolute",_.style[C?"right":"left"]="-9999px";var W=window.pageYOffset||document.documentElement.scrollTop;return _.style.top="".concat(W,"px"),_.setAttribute("readonly",""),_.value=q,_}var X=function(C,_){var W=S(C);_.container.appendChild(W);var N=f()(W);return u("copy"),W.remove(),N},re=function(C){var _=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},W="";return typeof C=="string"?W=X(C,_):C instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(C==null?void 0:C.type)?W=X(C.value,_):(W=f()(C),u("copy")),W},ee=re;function k(q){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?k=function(_){return typeof _}:k=function(_){return _&&typeof Symbol=="function"&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _},k(q)}var ut=function(){var C=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},_=C.action,W=_===void 0?"copy":_,N=C.container,G=C.target,De=C.text;if(W!=="copy"&&W!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(G!==void 0)if(G&&k(G)==="object"&&G.nodeType===1){if(W==="copy"&&G.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(W==="cut"&&(G.hasAttribute("readonly")||G.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(De)return ee(De,{container:N});if(G)return W==="cut"?v(G):ee(G,{container:N})},je=ut;function P(q){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?P=function(_){return typeof _}:P=function(_){return _&&typeof Symbol=="function"&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _},P(q)}function se(q,C){if(!(q instanceof C))throw new TypeError("Cannot call a class as a function")}function ce(q,C){for(var _=0;_0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof N.action=="function"?N.action:this.defaultAction,this.target=typeof N.target=="function"?N.target:this.defaultTarget,this.text=typeof N.text=="function"?N.text:this.defaultText,this.container=P(N.container)==="object"?N.container:document.body}},{key:"listenClick",value:function(N){var G=this;this.listener=p()(N,"click",function(De){return G.onClick(De)})}},{key:"onClick",value:function(N){var G=N.delegateTarget||N.currentTarget,De=this.action(G)||"copy",Bt=je({action:De,container:this.container,target:this.target(G),text:this.text(G)});this.emit(Bt?"success":"error",{action:De,text:Bt,trigger:G,clearSelection:function(){G&&G.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(N){return Mr("action",N)}},{key:"defaultTarget",value:function(N){var G=Mr("target",N);if(G)return document.querySelector(G)}},{key:"defaultText",value:function(N){return Mr("text",N)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(N){var G=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return ee(N,G)}},{key:"cut",value:function(N){return v(N)}},{key:"isSupported",value:function(){var N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],G=typeof N=="string"?[N]:N,De=!!document.queryCommandSupported;return G.forEach(function(Bt){De=De&&!!document.queryCommandSupported(Bt)}),De}}]),_}(a()),Xi=Ji},828:function(o){var n=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function s(a,c){for(;a&&a.nodeType!==n;){if(typeof a.matches=="function"&&a.matches(c))return a;a=a.parentNode}}o.exports=s},438:function(o,n,i){var s=i(828);function a(l,f,u,d,v){var S=p.apply(this,arguments);return l.addEventListener(u,S,v),{destroy:function(){l.removeEventListener(u,S,v)}}}function c(l,f,u,d,v){return typeof l.addEventListener=="function"?a.apply(null,arguments):typeof u=="function"?a.bind(null,document).apply(null,arguments):(typeof l=="string"&&(l=document.querySelectorAll(l)),Array.prototype.map.call(l,function(S){return a(S,f,u,d,v)}))}function p(l,f,u,d){return function(v){v.delegateTarget=s(v.target,f),v.delegateTarget&&d.call(l,v)}}o.exports=c},879:function(o,n){n.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},n.nodeList=function(i){var s=Object.prototype.toString.call(i);return i!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in i&&(i.length===0||n.node(i[0]))},n.string=function(i){return typeof i=="string"||i instanceof String},n.fn=function(i){var s=Object.prototype.toString.call(i);return s==="[object Function]"}},370:function(o,n,i){var s=i(879),a=i(438);function c(u,d,v){if(!u&&!d&&!v)throw new Error("Missing required arguments");if(!s.string(d))throw new TypeError("Second argument must be a String");if(!s.fn(v))throw new TypeError("Third argument must be a Function");if(s.node(u))return p(u,d,v);if(s.nodeList(u))return l(u,d,v);if(s.string(u))return f(u,d,v);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function p(u,d,v){return u.addEventListener(d,v),{destroy:function(){u.removeEventListener(d,v)}}}function l(u,d,v){return Array.prototype.forEach.call(u,function(S){S.addEventListener(d,v)}),{destroy:function(){Array.prototype.forEach.call(u,function(S){S.removeEventListener(d,v)})}}}function f(u,d,v){return a(document.body,u,d,v)}o.exports=c},817:function(o){function n(i){var s;if(i.nodeName==="SELECT")i.focus(),s=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var a=i.hasAttribute("readonly");a||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),a||i.removeAttribute("readonly"),s=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var c=window.getSelection(),p=document.createRange();p.selectNodeContents(i),c.removeAllRanges(),c.addRange(p),s=c.toString()}return s}o.exports=n},279:function(o){function n(){}n.prototype={on:function(i,s,a){var c=this.e||(this.e={});return(c[i]||(c[i]=[])).push({fn:s,ctx:a}),this},once:function(i,s,a){var c=this;function p(){c.off(i,p),s.apply(a,arguments)}return p._=s,this.on(i,p,a)},emit:function(i){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[i]||[]).slice(),c=0,p=a.length;for(c;c0&&i[i.length-1])&&(p[0]===6||p[0]===2)){r=0;continue}if(p[0]===3&&(!i||p[1]>i[0]&&p[1]=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function K(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var o=r.call(e),n,i=[],s;try{for(;(t===void 0||t-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(a){s={error:a}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(s)throw s.error}}return i}function B(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,i;o1||c(d,S)})},v&&(n[d]=v(n[d])))}function c(d,v){try{p(o[d](v))}catch(S){u(i[0][3],S)}}function p(d){d.value instanceof dt?Promise.resolve(d.value.v).then(l,f):u(i[0][2],d)}function l(d){c("next",d)}function f(d){c("throw",d)}function u(d,v){d(v),i.shift(),i.length&&c(i[0][0],i[0][1])}}function To(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Oe=="function"?Oe(e):e[Symbol.iterator](),r={},o("next"),o("throw"),o("return"),r[Symbol.asyncIterator]=function(){return this},r);function o(i){r[i]=e[i]&&function(s){return new Promise(function(a,c){s=e[i](s),n(a,c,s.done,s.value)})}}function n(i,s,a,c){Promise.resolve(c).then(function(p){i({value:p,done:a})},s)}}function I(e){return typeof e=="function"}function yt(e){var t=function(o){Error.call(o),o.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var Xt=yt(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(o,n){return n+1+") "+o.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function Ze(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var qe=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,o,n,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Oe(s),c=a.next();!c.done;c=a.next()){var p=c.value;p.remove(this)}}catch(S){t={error:S}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var l=this.initialTeardown;if(I(l))try{l()}catch(S){i=S instanceof Xt?S.errors:[S]}var f=this._finalizers;if(f){this._finalizers=null;try{for(var u=Oe(f),d=u.next();!d.done;d=u.next()){var v=d.value;try{So(v)}catch(S){i=i!=null?i:[],S instanceof Xt?i=B(B([],K(i)),K(S.errors)):i.push(S)}}}catch(S){o={error:S}}finally{try{d&&!d.done&&(n=u.return)&&n.call(u)}finally{if(o)throw o.error}}}if(i)throw new Xt(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)So(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Ze(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Ze(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var $r=qe.EMPTY;function Zt(e){return e instanceof qe||e&&"closed"in e&&I(e.remove)&&I(e.add)&&I(e.unsubscribe)}function So(e){I(e)?e():e.unsubscribe()}var We={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var xt={setTimeout:function(e,t){for(var r=[],o=2;o0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var o=this,n=this,i=n.hasError,s=n.isStopped,a=n.observers;return i||s?$r:(this.currentObservers=null,a.push(r),new qe(function(){o.currentObservers=null,Ze(a,r)}))},t.prototype._checkFinalizedStatuses=function(r){var o=this,n=o.hasError,i=o.thrownError,s=o.isStopped;n?r.error(i):s&&r.complete()},t.prototype.asObservable=function(){var r=new F;return r.source=this,r},t.create=function(r,o){return new Ho(r,o)},t}(F);var Ho=function(e){ie(t,e);function t(r,o){var n=e.call(this)||this;return n.destination=r,n.source=o,n}return t.prototype.next=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.next)===null||n===void 0||n.call(o,r)},t.prototype.error=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.error)===null||n===void 0||n.call(o,r)},t.prototype.complete=function(){var r,o;(o=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||o===void 0||o.call(r)},t.prototype._subscribe=function(r){var o,n;return(n=(o=this.source)===null||o===void 0?void 0:o.subscribe(r))!==null&&n!==void 0?n:$r},t}(T);var jr=function(e){ie(t,e);function t(r){var o=e.call(this)||this;return o._value=r,o}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var o=e.prototype._subscribe.call(this,r);return!o.closed&&r.next(this._value),o},t.prototype.getValue=function(){var r=this,o=r.hasError,n=r.thrownError,i=r._value;if(o)throw n;return this._throwIfClosed(),i},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(T);var It={now:function(){return(It.delegate||Date).now()},delegate:void 0};var Ft=function(e){ie(t,e);function t(r,o,n){r===void 0&&(r=1/0),o===void 0&&(o=1/0),n===void 0&&(n=It);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=o,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=o===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,o),i}return t.prototype.next=function(r){var o=this,n=o.isStopped,i=o._buffer,s=o._infiniteTimeWindow,a=o._timestampProvider,c=o._windowTime;n||(i.push(r),!s&&i.push(a.now()+c)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var o=this._innerSubscribe(r),n=this,i=n._infiniteTimeWindow,s=n._buffer,a=s.slice(),c=0;c0?e.prototype.schedule.call(this,r,o):(this.delay=o,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,o){return o>0||this.closed?e.prototype.execute.call(this,r,o):this._execute(r,o)},t.prototype.requestAsyncId=function(r,o,n){return n===void 0&&(n=0),n!=null&&n>0||n==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,o,n):(r.flush(this),0)},t}(St);var Po=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(Ot);var Wr=new Po(Ro);var Io=function(e){ie(t,e);function t(r,o){var n=e.call(this,r,o)||this;return n.scheduler=r,n.work=o,n}return t.prototype.requestAsyncId=function(r,o,n){return n===void 0&&(n=0),n!==null&&n>0?e.prototype.requestAsyncId.call(this,r,o,n):(r.actions.push(this),r._scheduled||(r._scheduled=Tt.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,o,n){var i;if(n===void 0&&(n=0),n!=null?n>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,o,n);var s=r.actions;o!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==o&&(Tt.cancelAnimationFrame(o),r._scheduled=void 0)},t}(St);var Fo=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var o=this._scheduled;this._scheduled=void 0;var n=this.actions,i;r=r||n.shift();do if(i=r.execute(r.state,r.delay))break;while((r=n[0])&&r.id===o&&n.shift());if(this._active=!1,i){for(;(r=n[0])&&r.id===o&&n.shift();)r.unsubscribe();throw i}},t}(Ot);var ye=new Fo(Io);var y=new F(function(e){return e.complete()});function rr(e){return e&&I(e.schedule)}function Vr(e){return e[e.length-1]}function pt(e){return I(Vr(e))?e.pop():void 0}function Fe(e){return rr(Vr(e))?e.pop():void 0}function or(e,t){return typeof Vr(e)=="number"?e.pop():t}var Lt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function nr(e){return I(e==null?void 0:e.then)}function ir(e){return I(e[wt])}function ar(e){return Symbol.asyncIterator&&I(e==null?void 0:e[Symbol.asyncIterator])}function sr(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function fa(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var cr=fa();function pr(e){return I(e==null?void 0:e[cr])}function lr(e){return wo(this,arguments,function(){var r,o,n,i;return Jt(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,dt(r.read())];case 3:return o=s.sent(),n=o.value,i=o.done,i?[4,dt(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,dt(n)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function mr(e){return I(e==null?void 0:e.getReader)}function U(e){if(e instanceof F)return e;if(e!=null){if(ir(e))return ua(e);if(Lt(e))return da(e);if(nr(e))return ha(e);if(ar(e))return jo(e);if(pr(e))return ba(e);if(mr(e))return va(e)}throw sr(e)}function ua(e){return new F(function(t){var r=e[wt]();if(I(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function da(e){return new F(function(t){for(var r=0;r=2;return function(o){return o.pipe(e?g(function(n,i){return e(n,i,o)}):be,Ee(1),r?Qe(t):tn(function(){return new ur}))}}function Yr(e){return e<=0?function(){return y}:E(function(t,r){var o=[];t.subscribe(w(r,function(n){o.push(n),e=2,!0))}function le(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new T}:t,o=e.resetOnError,n=o===void 0?!0:o,i=e.resetOnComplete,s=i===void 0?!0:i,a=e.resetOnRefCountZero,c=a===void 0?!0:a;return function(p){var l,f,u,d=0,v=!1,S=!1,X=function(){f==null||f.unsubscribe(),f=void 0},re=function(){X(),l=u=void 0,v=S=!1},ee=function(){var k=l;re(),k==null||k.unsubscribe()};return E(function(k,ut){d++,!S&&!v&&X();var je=u=u!=null?u:r();ut.add(function(){d--,d===0&&!S&&!v&&(f=Br(ee,c))}),je.subscribe(ut),!l&&d>0&&(l=new bt({next:function(P){return je.next(P)},error:function(P){S=!0,X(),f=Br(re,n,P),je.error(P)},complete:function(){v=!0,X(),f=Br(re,s),je.complete()}}),U(k).subscribe(l))})(p)}}function Br(e,t){for(var r=[],o=2;oe.next(document)),e}function M(e,t=document){return Array.from(t.querySelectorAll(e))}function j(e,t=document){let r=ue(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function ue(e,t=document){return t.querySelector(e)||void 0}function Ne(){var e,t,r,o;return(o=(r=(t=(e=document.activeElement)==null?void 0:e.shadowRoot)==null?void 0:t.activeElement)!=null?r:document.activeElement)!=null?o:void 0}var Pa=L(h(document.body,"focusin"),h(document.body,"focusout")).pipe(Ae(1),Q(void 0),m(()=>Ne()||document.body),Z(1));function Ye(e){return Pa.pipe(m(t=>e.contains(t)),Y())}function it(e,t){return H(()=>L(h(e,"mouseenter").pipe(m(()=>!0)),h(e,"mouseleave").pipe(m(()=>!1))).pipe(t?Ut(r=>He(+!r*t)):be,Q(e.matches(":hover"))))}function sn(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)sn(e,r)}function x(e,t,...r){let o=document.createElement(e);if(t)for(let n of Object.keys(t))typeof t[n]!="undefined"&&(typeof t[n]!="boolean"?o.setAttribute(n,t[n]):o.setAttribute(n,""));for(let n of r)sn(o,n);return o}function br(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function At(e){let t=x("script",{src:e});return H(()=>(document.head.appendChild(t),L(h(t,"load"),h(t,"error").pipe(b(()=>Nr(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(m(()=>{}),A(()=>document.head.removeChild(t)),Ee(1))))}var cn=new T,Ia=H(()=>typeof ResizeObserver=="undefined"?At("https://unpkg.com/resize-observer-polyfill"):$(void 0)).pipe(m(()=>new ResizeObserver(e=>e.forEach(t=>cn.next(t)))),b(e=>L(tt,$(e)).pipe(A(()=>e.disconnect()))),Z(1));function de(e){return{width:e.offsetWidth,height:e.offsetHeight}}function Le(e){let t=e;for(;t.clientWidth===0&&t.parentElement;)t=t.parentElement;return Ia.pipe(O(r=>r.observe(t)),b(r=>cn.pipe(g(o=>o.target===t),A(()=>r.unobserve(t)))),m(()=>de(e)),Q(de(e)))}function Ct(e){return{width:e.scrollWidth,height:e.scrollHeight}}function vr(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}function pn(e){let t=[],r=e.parentElement;for(;r;)(e.clientWidth>r.clientWidth||e.clientHeight>r.clientHeight)&&t.push(r),r=(e=r).parentElement;return t.length===0&&t.push(document.documentElement),t}function Be(e){return{x:e.offsetLeft,y:e.offsetTop}}function ln(e){let t=e.getBoundingClientRect();return{x:t.x+window.scrollX,y:t.y+window.scrollY}}function mn(e){return L(h(window,"load"),h(window,"resize")).pipe($e(0,ye),m(()=>Be(e)),Q(Be(e)))}function gr(e){return{x:e.scrollLeft,y:e.scrollTop}}function Ge(e){return L(h(e,"scroll"),h(window,"scroll"),h(window,"resize")).pipe($e(0,ye),m(()=>gr(e)),Q(gr(e)))}var fn=new T,Fa=H(()=>$(new IntersectionObserver(e=>{for(let t of e)fn.next(t)},{threshold:0}))).pipe(b(e=>L(tt,$(e)).pipe(A(()=>e.disconnect()))),Z(1));function mt(e){return Fa.pipe(O(t=>t.observe(e)),b(t=>fn.pipe(g(({target:r})=>r===e),A(()=>t.unobserve(e)),m(({isIntersecting:r})=>r))))}function un(e,t=16){return Ge(e).pipe(m(({y:r})=>{let o=de(e),n=Ct(e);return r>=n.height-o.height-t}),Y())}var yr={drawer:j("[data-md-toggle=drawer]"),search:j("[data-md-toggle=search]")};function dn(e){return yr[e].checked}function at(e,t){yr[e].checked!==t&&yr[e].click()}function Je(e){let t=yr[e];return h(t,"change").pipe(m(()=>t.checked),Q(t.checked))}function ja(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function Ua(){return L(h(window,"compositionstart").pipe(m(()=>!0)),h(window,"compositionend").pipe(m(()=>!1))).pipe(Q(!1))}function hn(){let e=h(window,"keydown").pipe(g(t=>!(t.metaKey||t.ctrlKey)),m(t=>({mode:dn("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),g(({mode:t,type:r})=>{if(t==="global"){let o=Ne();if(typeof o!="undefined")return!ja(o,r)}return!0}),le());return Ua().pipe(b(t=>t?y:e))}function we(){return new URL(location.href)}function st(e,t=!1){if(V("navigation.instant")&&!t){let r=x("a",{href:e.href});document.body.appendChild(r),r.click(),r.remove()}else location.href=e.href}function bn(){return new T}function vn(){return location.hash.slice(1)}function gn(e){let t=x("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function Zr(e){return L(h(window,"hashchange"),e).pipe(m(vn),Q(vn()),g(t=>t.length>0),Z(1))}function yn(e){return Zr(e).pipe(m(t=>ue(`[id="${t}"]`)),g(t=>typeof t!="undefined"))}function Wt(e){let t=matchMedia(e);return dr(r=>t.addListener(()=>r(t.matches))).pipe(Q(t.matches))}function xn(){let e=matchMedia("print");return L(h(window,"beforeprint").pipe(m(()=>!0)),h(window,"afterprint").pipe(m(()=>!1))).pipe(Q(e.matches))}function eo(e,t){return e.pipe(b(r=>r?t():y))}function to(e,t){return new F(r=>{let o=new XMLHttpRequest;return o.open("GET",`${e}`),o.responseType="blob",o.addEventListener("load",()=>{o.status>=200&&o.status<300?(r.next(o.response),r.complete()):r.error(new Error(o.statusText))}),o.addEventListener("error",()=>{r.error(new Error("Network error"))}),o.addEventListener("abort",()=>{r.complete()}),typeof(t==null?void 0:t.progress$)!="undefined"&&(o.addEventListener("progress",n=>{var i;if(n.lengthComputable)t.progress$.next(n.loaded/n.total*100);else{let s=(i=o.getResponseHeader("Content-Length"))!=null?i:0;t.progress$.next(n.loaded/+s*100)}}),t.progress$.next(5)),o.send(),()=>o.abort()})}function ze(e,t){return to(e,t).pipe(b(r=>r.text()),m(r=>JSON.parse(r)),Z(1))}function xr(e,t){let r=new DOMParser;return to(e,t).pipe(b(o=>o.text()),m(o=>r.parseFromString(o,"text/html")),Z(1))}function En(e,t){let r=new DOMParser;return to(e,t).pipe(b(o=>o.text()),m(o=>r.parseFromString(o,"text/xml")),Z(1))}function wn(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function Tn(){return L(h(window,"scroll",{passive:!0}),h(window,"resize",{passive:!0})).pipe(m(wn),Q(wn()))}function Sn(){return{width:innerWidth,height:innerHeight}}function On(){return h(window,"resize",{passive:!0}).pipe(m(Sn),Q(Sn()))}function Ln(){return z([Tn(),On()]).pipe(m(([e,t])=>({offset:e,size:t})),Z(1))}function Er(e,{viewport$:t,header$:r}){let o=t.pipe(ne("size")),n=z([o,r]).pipe(m(()=>Be(e)));return z([r,t,n]).pipe(m(([{height:i},{offset:s,size:a},{x:c,y:p}])=>({offset:{x:s.x-c,y:s.y-p+i},size:a})))}function Da(e){return h(e,"message",t=>t.data)}function Wa(e){let t=new T;return t.subscribe(r=>e.postMessage(r)),t}function Mn(e,t=new Worker(e)){let r=Da(t),o=Wa(t),n=new T;n.subscribe(o);let i=o.pipe(oe(),ae(!0));return n.pipe(oe(),Ve(r.pipe(D(i))),le())}var Va=j("#__config"),kt=JSON.parse(Va.textContent);kt.base=`${new URL(kt.base,we())}`;function Te(){return kt}function V(e){return kt.features.includes(e)}function Me(e,t){return typeof t!="undefined"?kt.translations[e].replace("#",t.toString()):kt.translations[e]}function Ce(e,t=document){return j(`[data-md-component=${e}]`,t)}function me(e,t=document){return M(`[data-md-component=${e}]`,t)}function Na(e){let t=j(".md-typeset > :first-child",e);return h(t,"click",{once:!0}).pipe(m(()=>j(".md-typeset",e)),m(r=>({hash:__md_hash(r.innerHTML)})))}function _n(e){if(!V("announce.dismiss")||!e.childElementCount)return y;if(!e.hidden){let t=j(".md-typeset",e);__md_hash(t.innerHTML)===__md_get("__announce")&&(e.hidden=!0)}return H(()=>{let t=new T;return t.subscribe(({hash:r})=>{e.hidden=!0,__md_set("__announce",r)}),Na(e).pipe(O(r=>t.next(r)),A(()=>t.complete()),m(r=>R({ref:e},r)))})}function za(e,{target$:t}){return t.pipe(m(r=>({hidden:r!==e})))}function An(e,t){let r=new T;return r.subscribe(({hidden:o})=>{e.hidden=o}),za(e,t).pipe(O(o=>r.next(o)),A(()=>r.complete()),m(o=>R({ref:e},o)))}function Vt(e,t){return t==="inline"?x("div",{class:"md-tooltip md-tooltip--inline",id:e,role:"tooltip"},x("div",{class:"md-tooltip__inner md-typeset"})):x("div",{class:"md-tooltip",id:e,role:"tooltip"},x("div",{class:"md-tooltip__inner md-typeset"}))}function wr(...e){return x("div",{class:"md-tooltip2",role:"dialog"},x("div",{class:"md-tooltip2__inner md-typeset"},e))}function Cn(...e){return x("div",{class:"md-tooltip2",role:"tooltip"},x("div",{class:"md-tooltip2__inner md-typeset"},e))}function kn(e,t){if(t=t?`${t}_annotation_${e}`:void 0,t){let r=t?`#${t}`:void 0;return x("aside",{class:"md-annotation",tabIndex:0},Vt(t),x("a",{href:r,class:"md-annotation__index",tabIndex:-1},x("span",{"data-md-annotation-id":e})))}else return x("aside",{class:"md-annotation",tabIndex:0},Vt(t),x("span",{class:"md-annotation__index",tabIndex:-1},x("span",{"data-md-annotation-id":e})))}function Hn(e){return x("button",{class:"md-code__button",title:Me("clipboard.copy"),"data-clipboard-target":`#${e} > code`,"data-md-type":"copy"})}function $n(){return x("button",{class:"md-code__button",title:"Toggle line selection","data-md-type":"select"})}function Rn(){return x("nav",{class:"md-code__nav"})}var In=Rt(ro());function oo(e,t){let r=t&2,o=t&1,n=Object.keys(e.terms).filter(c=>!e.terms[c]).reduce((c,p)=>[...c,x("del",null,(0,In.default)(p))," "],[]).slice(0,-1),i=Te(),s=new URL(e.location,i.base);V("search.highlight")&&s.searchParams.set("h",Object.entries(e.terms).filter(([,c])=>c).reduce((c,[p])=>`${c} ${p}`.trim(),""));let{tags:a}=Te();return x("a",{href:`${s}`,class:"md-search-result__link",tabIndex:-1},x("article",{class:"md-search-result__article md-typeset","data-md-score":e.score.toFixed(2)},r>0&&x("div",{class:"md-search-result__icon md-icon"}),r>0&&x("h1",null,e.title),r<=0&&x("h2",null,e.title),o>0&&e.text.length>0&&e.text,e.tags&&x("nav",{class:"md-tags"},e.tags.map(c=>{let p=a?c in a?`md-tag-icon md-tag--${a[c]}`:"md-tag-icon":"";return x("span",{class:`md-tag ${p}`},c)})),o>0&&n.length>0&&x("p",{class:"md-search-result__terms"},Me("search.result.term.missing"),": ",...n)))}function Fn(e){let t=e[0].score,r=[...e],o=Te(),n=r.findIndex(l=>!`${new URL(l.location,o.base)}`.includes("#")),[i]=r.splice(n,1),s=r.findIndex(l=>l.scoreoo(l,1)),...c.length?[x("details",{class:"md-search-result__more"},x("summary",{tabIndex:-1},x("div",null,c.length>0&&c.length===1?Me("search.result.more.one"):Me("search.result.more.other",c.length))),...c.map(l=>oo(l,1)))]:[]];return x("li",{class:"md-search-result__item"},p)}function jn(e){return x("ul",{class:"md-source__facts"},Object.entries(e).map(([t,r])=>x("li",{class:`md-source__fact md-source__fact--${t}`},typeof r=="number"?br(r):r)))}function no(e){let t=`tabbed-control tabbed-control--${e}`;return x("div",{class:t,hidden:!0},x("button",{class:"tabbed-button",tabIndex:-1,"aria-hidden":"true"}))}function Un(e){return x("div",{class:"md-typeset__scrollwrap"},x("div",{class:"md-typeset__table"},e))}function Qa(e){var o;let t=Te(),r=new URL(`../${e.version}/`,t.base);return x("li",{class:"md-version__item"},x("a",{href:`${r}`,class:"md-version__link"},e.title,((o=t.version)==null?void 0:o.alias)&&e.aliases.length>0&&x("span",{class:"md-version__alias"},e.aliases[0])))}function Dn(e,t){var o;let r=Te();return e=e.filter(n=>{var i;return!((i=n.properties)!=null&&i.hidden)}),x("div",{class:"md-version"},x("button",{class:"md-version__current","aria-label":Me("select.version")},t.title,((o=r.version)==null?void 0:o.alias)&&t.aliases.length>0&&x("span",{class:"md-version__alias"},t.aliases[0])),x("ul",{class:"md-version__list"},e.map(Qa)))}var Ya=0;function Ba(e,t=250){let r=z([Ye(e),it(e,t)]).pipe(m(([n,i])=>n||i),Y()),o=H(()=>pn(e)).pipe(J(Ge),gt(1),Re(r),m(()=>ln(e)));return r.pipe(Pe(n=>n),b(()=>z([r,o])),m(([n,i])=>({active:n,offset:i})),le())}function Nt(e,t,r=250){let{content$:o,viewport$:n}=t,i=`__tooltip2_${Ya++}`;return H(()=>{let s=new T,a=new jr(!1);s.pipe(oe(),ae(!1)).subscribe(a);let c=a.pipe(Ut(l=>He(+!l*250,Wr)),Y(),b(l=>l?o:y),O(l=>l.id=i),le());z([s.pipe(m(({active:l})=>l)),c.pipe(b(l=>it(l,250)),Q(!1))]).pipe(m(l=>l.some(f=>f))).subscribe(a);let p=a.pipe(g(l=>l),te(c,n),m(([l,f,{size:u}])=>{let d=e.getBoundingClientRect(),v=d.width/2;if(f.role==="tooltip")return{x:v,y:8+d.height};if(d.y>=u.height/2){let{height:S}=de(f);return{x:v,y:-16-S}}else return{x:v,y:16+d.height}}));return z([c,s,p]).subscribe(([l,{offset:f},u])=>{l.style.setProperty("--md-tooltip-host-x",`${f.x}px`),l.style.setProperty("--md-tooltip-host-y",`${f.y}px`),l.style.setProperty("--md-tooltip-x",`${u.x}px`),l.style.setProperty("--md-tooltip-y",`${u.y}px`),l.classList.toggle("md-tooltip2--top",u.y<0),l.classList.toggle("md-tooltip2--bottom",u.y>=0)}),a.pipe(g(l=>l),te(c,(l,f)=>f),g(l=>l.role==="tooltip")).subscribe(l=>{let f=de(j(":scope > *",l));l.style.setProperty("--md-tooltip-width",`${f.width}px`),l.style.setProperty("--md-tooltip-tail","0px")}),a.pipe(Y(),xe(ye),te(c)).subscribe(([l,f])=>{f.classList.toggle("md-tooltip2--active",l)}),z([a.pipe(g(l=>l)),c]).subscribe(([l,f])=>{f.role==="dialog"?(e.setAttribute("aria-controls",i),e.setAttribute("aria-haspopup","dialog")):e.setAttribute("aria-describedby",i)}),a.pipe(g(l=>!l)).subscribe(()=>{e.removeAttribute("aria-controls"),e.removeAttribute("aria-describedby"),e.removeAttribute("aria-haspopup")}),Ba(e,r).pipe(O(l=>s.next(l)),A(()=>s.complete()),m(l=>R({ref:e},l)))})}function Xe(e,{viewport$:t},r=document.body){return Nt(e,{content$:new F(o=>{let n=e.title,i=Cn(n);return o.next(i),e.removeAttribute("title"),r.append(i),()=>{i.remove(),e.setAttribute("title",n)}}),viewport$:t},0)}function Ga(e,t){let r=H(()=>z([mn(e),Ge(t)])).pipe(m(([{x:o,y:n},i])=>{let{width:s,height:a}=de(e);return{x:o-i.x+s/2,y:n-i.y+a/2}}));return Ye(e).pipe(b(o=>r.pipe(m(n=>({active:o,offset:n})),Ee(+!o||1/0))))}function Wn(e,t,{target$:r}){let[o,n]=Array.from(e.children);return H(()=>{let i=new T,s=i.pipe(oe(),ae(!0));return i.subscribe({next({offset:a}){e.style.setProperty("--md-tooltip-x",`${a.x}px`),e.style.setProperty("--md-tooltip-y",`${a.y}px`)},complete(){e.style.removeProperty("--md-tooltip-x"),e.style.removeProperty("--md-tooltip-y")}}),mt(e).pipe(D(s)).subscribe(a=>{e.toggleAttribute("data-md-visible",a)}),L(i.pipe(g(({active:a})=>a)),i.pipe(Ae(250),g(({active:a})=>!a))).subscribe({next({active:a}){a?e.prepend(o):o.remove()},complete(){e.prepend(o)}}),i.pipe($e(16,ye)).subscribe(({active:a})=>{o.classList.toggle("md-tooltip--active",a)}),i.pipe(gt(125,ye),g(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:a})=>a)).subscribe({next(a){a?e.style.setProperty("--md-tooltip-0",`${-a}px`):e.style.removeProperty("--md-tooltip-0")},complete(){e.style.removeProperty("--md-tooltip-0")}}),h(n,"click").pipe(D(s),g(a=>!(a.metaKey||a.ctrlKey))).subscribe(a=>{a.stopPropagation(),a.preventDefault()}),h(n,"mousedown").pipe(D(s),te(i)).subscribe(([a,{active:c}])=>{var p;if(a.button!==0||a.metaKey||a.ctrlKey)a.preventDefault();else if(c){a.preventDefault();let l=e.parentElement.closest(".md-annotation");l instanceof HTMLElement?l.focus():(p=Ne())==null||p.blur()}}),r.pipe(D(s),g(a=>a===o),nt(125)).subscribe(()=>e.focus()),Ga(e,t).pipe(O(a=>i.next(a)),A(()=>i.complete()),m(a=>R({ref:e},a)))})}function Ja(e){let t=Te();if(e.tagName!=="CODE")return[e];let r=[".c",".c1",".cm"];if(typeof t.annotate!="undefined"){let o=e.closest("[class|=language]");if(o)for(let n of Array.from(o.classList)){if(!n.startsWith("language-"))continue;let[,i]=n.split("-");i in t.annotate&&r.push(...t.annotate[i])}}return M(r.join(", "),e)}function Xa(e){let t=[];for(let r of Ja(e)){let o=[],n=document.createNodeIterator(r,NodeFilter.SHOW_TEXT);for(let i=n.nextNode();i;i=n.nextNode())o.push(i);for(let i of o){let s;for(;s=/(\(\d+\))(!)?/.exec(i.textContent);){let[,a,c]=s;if(typeof c=="undefined"){let p=i.splitText(s.index);i=p.splitText(a.length),t.push(p)}else{i.textContent=a,t.push(i);break}}}}return t}function Vn(e,t){t.append(...Array.from(e.childNodes))}function Tr(e,t,{target$:r,print$:o}){let n=t.closest("[id]"),i=n==null?void 0:n.id,s=new Map;for(let a of Xa(t)){let[,c]=a.textContent.match(/\((\d+)\)/);ue(`:scope > li:nth-child(${c})`,e)&&(s.set(c,kn(c,i)),a.replaceWith(s.get(c)))}return s.size===0?y:H(()=>{let a=new T,c=a.pipe(oe(),ae(!0)),p=[];for(let[l,f]of s)p.push([j(".md-typeset",f),j(`:scope > li:nth-child(${l})`,e)]);return o.pipe(D(c)).subscribe(l=>{e.hidden=!l,e.classList.toggle("md-annotation-list",l);for(let[f,u]of p)l?Vn(f,u):Vn(u,f)}),L(...[...s].map(([,l])=>Wn(l,t,{target$:r}))).pipe(A(()=>a.complete()),le())})}function Nn(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return Nn(t)}}function zn(e,t){return H(()=>{let r=Nn(e);return typeof r!="undefined"?Tr(r,e,t):y})}var Kn=Rt(ao());var Za=0,qn=L(h(window,"keydown").pipe(m(()=>!0)),L(h(window,"keyup"),h(window,"contextmenu")).pipe(m(()=>!1))).pipe(Q(!1),Z(1));function Qn(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return Qn(t)}}function es(e){return Le(e).pipe(m(({width:t})=>({scrollable:Ct(e).width>t})),ne("scrollable"))}function Yn(e,t){let{matches:r}=matchMedia("(hover)"),o=H(()=>{let n=new T,i=n.pipe(Yr(1));n.subscribe(({scrollable:d})=>{d&&r?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")});let s=[],a=e.closest("pre"),c=a.closest("[id]"),p=c?c.id:Za++;a.id=`__code_${p}`;let l=[],f=e.closest(".highlight");if(f instanceof HTMLElement){let d=Qn(f);if(typeof d!="undefined"&&(f.classList.contains("annotate")||V("content.code.annotate"))){let v=Tr(d,e,t);l.push(Le(f).pipe(D(i),m(({width:S,height:X})=>S&&X),Y(),b(S=>S?v:y)))}}let u=M(":scope > span[id]",e);if(u.length&&(e.classList.add("md-code__content"),e.closest(".select")||V("content.code.select")&&!e.closest(".no-select"))){let d=+u[0].id.split("-").pop(),v=$n();s.push(v),V("content.tooltips")&&l.push(Xe(v,{viewport$}));let S=h(v,"click").pipe(Dt(P=>!P,!1),O(()=>v.blur()),le());S.subscribe(P=>{v.classList.toggle("md-code__button--active",P)});let X=fe(u).pipe(J(P=>it(P).pipe(m(se=>[P,se]))));S.pipe(b(P=>P?X:y)).subscribe(([P,se])=>{let ce=ue(".hll.select",P);if(ce&&!se)ce.replaceWith(...Array.from(ce.childNodes));else if(!ce&&se){let he=document.createElement("span");he.className="hll select",he.append(...Array.from(P.childNodes).slice(1)),P.append(he)}});let re=fe(u).pipe(J(P=>h(P,"mousedown").pipe(O(se=>se.preventDefault()),m(()=>P)))),ee=S.pipe(b(P=>P?re:y),te(qn),m(([P,se])=>{var he;let ce=u.indexOf(P)+d;if(se===!1)return[ce,ce];{let Se=M(".hll",e).map(Ue=>u.indexOf(Ue.parentElement)+d);return(he=window.getSelection())==null||he.removeAllRanges(),[Math.min(ce,...Se),Math.max(ce,...Se)]}})),k=Zr(y).pipe(g(P=>P.startsWith(`__codelineno-${p}-`)));k.subscribe(P=>{let[,,se]=P.split("-"),ce=se.split(":").map(Se=>+Se-d+1);ce.length===1&&ce.push(ce[0]);for(let Se of M(".hll:not(.select)",e))Se.replaceWith(...Array.from(Se.childNodes));let he=u.slice(ce[0]-1,ce[1]);for(let Se of he){let Ue=document.createElement("span");Ue.className="hll",Ue.append(...Array.from(Se.childNodes).slice(1)),Se.append(Ue)}}),k.pipe(Ee(1),xe(pe)).subscribe(P=>{if(P.includes(":")){let se=document.getElementById(P.split(":")[0]);se&&setTimeout(()=>{let ce=se,he=-64;for(;ce!==document.body;)he+=ce.offsetTop,ce=ce.offsetParent;window.scrollTo({top:he})},1)}});let je=fe(M('a[href^="#__codelineno"]',f)).pipe(J(P=>h(P,"click").pipe(O(se=>se.preventDefault()),m(()=>P)))).pipe(D(i),te(qn),m(([P,se])=>{let he=+j(`[id="${P.hash.slice(1)}"]`).parentElement.id.split("-").pop();if(se===!1)return[he,he];{let Se=M(".hll",e).map(Ue=>+Ue.parentElement.id.split("-").pop());return[Math.min(he,...Se),Math.max(he,...Se)]}}));L(ee,je).subscribe(P=>{let se=`#__codelineno-${p}-`;P[0]===P[1]?se+=P[0]:se+=`${P[0]}:${P[1]}`,history.replaceState({},"",se),window.dispatchEvent(new HashChangeEvent("hashchange",{newURL:window.location.origin+window.location.pathname+se,oldURL:window.location.href}))})}if(Kn.default.isSupported()&&(e.closest(".copy")||V("content.code.copy")&&!e.closest(".no-copy"))){let d=Hn(a.id);s.push(d),V("content.tooltips")&&l.push(Xe(d,{viewport$}))}if(s.length){let d=Rn();d.append(...s),a.insertBefore(d,e)}return es(e).pipe(O(d=>n.next(d)),A(()=>n.complete()),m(d=>R({ref:e},d)),Ve(L(...l).pipe(D(i))))});return V("content.lazy")?mt(e).pipe(g(n=>n),Ee(1),b(()=>o)):o}function ts(e,{target$:t,print$:r}){let o=!0;return L(t.pipe(m(n=>n.closest("details:not([open])")),g(n=>e===n),m(()=>({action:"open",reveal:!0}))),r.pipe(g(n=>n||!o),O(()=>o=e.open),m(n=>({action:n?"open":"close"}))))}function Bn(e,t){return H(()=>{let r=new T;return r.subscribe(({action:o,reveal:n})=>{e.toggleAttribute("open",o==="open"),n&&e.scrollIntoView()}),ts(e,t).pipe(O(o=>r.next(o)),A(()=>r.complete()),m(o=>R({ref:e},o)))})}var Gn=0;function rs(e){let t=document.createElement("h3");t.innerHTML=e.innerHTML;let r=[t],o=e.nextElementSibling;for(;o&&!(o instanceof HTMLHeadingElement);)r.push(o),o=o.nextElementSibling;return r}function os(e,t){for(let r of M("[href], [src]",e))for(let o of["href","src"]){let n=r.getAttribute(o);if(n&&!/^(?:[a-z]+:)?\/\//i.test(n)){r[o]=new URL(r.getAttribute(o),t).toString();break}}for(let r of M("[name^=__], [for]",e))for(let o of["id","for","name"]){let n=r.getAttribute(o);n&&r.setAttribute(o,`${n}$preview_${Gn}`)}return Gn++,$(e)}function Jn(e,t){let{sitemap$:r}=t;if(!(e instanceof HTMLAnchorElement))return y;if(!(V("navigation.instant.preview")||e.hasAttribute("data-preview")))return y;let o=z([Ye(e),it(e)]).pipe(m(([i,s])=>i||s),Y(),g(i=>i));return rt([r,o]).pipe(b(([i])=>{let s=new URL(e.href);return s.search=s.hash="",i.has(`${s}`)?$(s):y}),b(i=>xr(i).pipe(b(s=>os(s,i)))),b(i=>{let s=e.hash?`article [id="${e.hash.slice(1)}"]`:"article h1",a=ue(s,i);return typeof a=="undefined"?y:$(rs(a))})).pipe(b(i=>{let s=new F(a=>{let c=wr(...i);return a.next(c),document.body.append(c),()=>c.remove()});return Nt(e,R({content$:s},t))}))}var Xn=".node circle,.node ellipse,.node path,.node polygon,.node rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}marker{fill:var(--md-mermaid-edge-color)!important}.edgeLabel .label rect{fill:#0000}.flowchartTitleText{fill:var(--md-mermaid-label-fg-color)}.label{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.label foreignObject{line-height:normal;overflow:visible}.label div .edgeLabel{color:var(--md-mermaid-label-fg-color)}.edgeLabel,.edgeLabel p,.label div .edgeLabel{background-color:var(--md-mermaid-label-bg-color)}.edgeLabel,.edgeLabel p{fill:var(--md-mermaid-label-bg-color);color:var(--md-mermaid-edge-color)}.edgePath .path,.flowchart-link{stroke:var(--md-mermaid-edge-color);stroke-width:.05rem}.edgePath .arrowheadPath{fill:var(--md-mermaid-edge-color);stroke:none}.cluster rect{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}.cluster span{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}g #flowchart-circleEnd,g #flowchart-circleStart,g #flowchart-crossEnd,g #flowchart-crossStart,g #flowchart-pointEnd,g #flowchart-pointStart{stroke:none}.classDiagramTitleText{fill:var(--md-mermaid-label-fg-color)}g.classGroup line,g.classGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.classGroup text{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.classLabel .box{fill:var(--md-mermaid-label-bg-color);background-color:var(--md-mermaid-label-bg-color);opacity:1}.classLabel .label{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.node .divider{stroke:var(--md-mermaid-node-fg-color)}.relation{stroke:var(--md-mermaid-edge-color)}.cardinality{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.cardinality text{fill:inherit!important}defs #classDiagram-compositionEnd,defs #classDiagram-compositionStart,defs #classDiagram-dependencyEnd,defs #classDiagram-dependencyStart,defs #classDiagram-extensionEnd,defs #classDiagram-extensionStart{fill:var(--md-mermaid-edge-color)!important;stroke:var(--md-mermaid-edge-color)!important}defs #classDiagram-aggregationEnd,defs #classDiagram-aggregationStart{fill:var(--md-mermaid-label-bg-color)!important;stroke:var(--md-mermaid-edge-color)!important}.statediagramTitleText{fill:var(--md-mermaid-label-fg-color)}g.stateGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.stateGroup .state-title{fill:var(--md-mermaid-label-fg-color)!important;font-family:var(--md-mermaid-font-family)}g.stateGroup .composit{fill:var(--md-mermaid-label-bg-color)}.nodeLabel,.nodeLabel p{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}a .nodeLabel{text-decoration:underline}.node circle.state-end,.node circle.state-start,.start-state{fill:var(--md-mermaid-edge-color);stroke:none}.end-state-inner,.end-state-outer{fill:var(--md-mermaid-edge-color)}.end-state-inner,.node circle.state-end{stroke:var(--md-mermaid-label-bg-color)}.transition{stroke:var(--md-mermaid-edge-color)}[id^=state-fork] rect,[id^=state-join] rect{fill:var(--md-mermaid-edge-color)!important;stroke:none!important}.statediagram-cluster.statediagram-cluster .inner{fill:var(--md-default-bg-color)}.statediagram-cluster rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.statediagram-state rect.divider{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}defs #statediagram-barbEnd{stroke:var(--md-mermaid-edge-color)}.entityTitleText{fill:var(--md-mermaid-label-fg-color)}.attributeBoxEven,.attributeBoxOdd{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityBox{fill:var(--md-mermaid-label-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityLabel{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.relationshipLabelBox{fill:var(--md-mermaid-label-bg-color);fill-opacity:1;background-color:var(--md-mermaid-label-bg-color);opacity:1}.relationshipLabel{fill:var(--md-mermaid-label-fg-color)}.relationshipLine{stroke:var(--md-mermaid-edge-color)}defs #ONE_OR_MORE_END *,defs #ONE_OR_MORE_START *,defs #ONLY_ONE_END *,defs #ONLY_ONE_START *,defs #ZERO_OR_MORE_END *,defs #ZERO_OR_MORE_START *,defs #ZERO_OR_ONE_END *,defs #ZERO_OR_ONE_START *{stroke:var(--md-mermaid-edge-color)!important}defs #ZERO_OR_MORE_END circle,defs #ZERO_OR_MORE_START circle{fill:var(--md-mermaid-label-bg-color)}text:not([class]):last-child{fill:var(--md-mermaid-label-fg-color)}.actor{fill:var(--md-mermaid-sequence-actor-bg-color);stroke:var(--md-mermaid-sequence-actor-border-color)}text.actor>tspan{fill:var(--md-mermaid-sequence-actor-fg-color);font-family:var(--md-mermaid-font-family)}line{stroke:var(--md-mermaid-sequence-actor-line-color)}.actor-man circle,.actor-man line{fill:var(--md-mermaid-sequence-actorman-bg-color);stroke:var(--md-mermaid-sequence-actorman-line-color)}.messageLine0,.messageLine1{stroke:var(--md-mermaid-sequence-message-line-color)}.note{fill:var(--md-mermaid-sequence-note-bg-color);stroke:var(--md-mermaid-sequence-note-border-color)}.loopText,.loopText>tspan,.messageText,.noteText>tspan{stroke:none;font-family:var(--md-mermaid-font-family)!important}.messageText{fill:var(--md-mermaid-sequence-message-fg-color)}.loopText,.loopText>tspan{fill:var(--md-mermaid-sequence-loop-fg-color)}.noteText>tspan{fill:var(--md-mermaid-sequence-note-fg-color)}#arrowhead path{fill:var(--md-mermaid-sequence-message-line-color);stroke:none}.loopLine{fill:var(--md-mermaid-sequence-loop-bg-color);stroke:var(--md-mermaid-sequence-loop-border-color)}.labelBox{fill:var(--md-mermaid-sequence-label-bg-color);stroke:none}.labelText,.labelText>span{fill:var(--md-mermaid-sequence-label-fg-color);font-family:var(--md-mermaid-font-family)}.sequenceNumber{fill:var(--md-mermaid-sequence-number-fg-color)}rect.rect{fill:var(--md-mermaid-sequence-box-bg-color);stroke:none}rect.rect+text.text{fill:var(--md-mermaid-sequence-box-fg-color)}defs #sequencenumber{fill:var(--md-mermaid-sequence-number-bg-color)!important}";var so,is=0;function as(){return typeof mermaid=="undefined"||mermaid instanceof Element?At("https://stephan.hadan.de/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js"):$(void 0)}function Zn(e){return e.classList.remove("mermaid"),so||(so=as().pipe(O(()=>mermaid.initialize({startOnLoad:!1,themeCSS:Xn,sequence:{actorFontSize:"16px",messageFontSize:"16px",noteFontSize:"16px"}})),m(()=>{}),Z(1))),so.subscribe(()=>go(this,null,function*(){e.classList.add("mermaid");let t=`__mermaid_${is++}`,r=x("div",{class:"mermaid"}),o=e.textContent,{svg:n,fn:i}=yield mermaid.render(t,o),s=r.attachShadow({mode:"closed"});s.innerHTML=n,e.replaceWith(r),i==null||i(s)})),so.pipe(m(()=>({ref:e})))}var ei=x("table");function ti(e){return e.replaceWith(ei),ei.replaceWith(Un(e)),$({ref:e})}function ss(e){let t=e.find(r=>r.checked)||e[0];return L(...e.map(r=>h(r,"change").pipe(m(()=>j(`label[for="${r.id}"]`))))).pipe(Q(j(`label[for="${t.id}"]`)),m(r=>({active:r})))}function ri(e,{viewport$:t,target$:r}){let o=j(".tabbed-labels",e),n=M(":scope > input",e),i=no("prev");e.append(i);let s=no("next");return e.append(s),H(()=>{let a=new T,c=a.pipe(oe(),ae(!0));z([a,Le(e),mt(e)]).pipe(D(c),$e(1,ye)).subscribe({next([{active:p},l]){let f=Be(p),{width:u}=de(p);e.style.setProperty("--md-indicator-x",`${f.x}px`),e.style.setProperty("--md-indicator-width",`${u}px`);let d=gr(o);(f.xd.x+l.width)&&o.scrollTo({left:Math.max(0,f.x-16),behavior:"smooth"})},complete(){e.style.removeProperty("--md-indicator-x"),e.style.removeProperty("--md-indicator-width")}}),z([Ge(o),Le(o)]).pipe(D(c)).subscribe(([p,l])=>{let f=Ct(o);i.hidden=p.x<16,s.hidden=p.x>f.width-l.width-16}),L(h(i,"click").pipe(m(()=>-1)),h(s,"click").pipe(m(()=>1))).pipe(D(c)).subscribe(p=>{let{width:l}=de(o);o.scrollBy({left:l*p,behavior:"smooth"})}),r.pipe(D(c),g(p=>n.includes(p))).subscribe(p=>p.click()),o.classList.add("tabbed-labels--linked");for(let p of n){let l=j(`label[for="${p.id}"]`);l.replaceChildren(x("a",{href:`#${l.htmlFor}`,tabIndex:-1},...Array.from(l.childNodes))),h(l.firstElementChild,"click").pipe(D(c),g(f=>!(f.metaKey||f.ctrlKey)),O(f=>{f.preventDefault(),f.stopPropagation()})).subscribe(()=>{history.replaceState({},"",`#${l.htmlFor}`),l.click()})}return V("content.tabs.link")&&a.pipe(Ie(1),te(t)).subscribe(([{active:p},{offset:l}])=>{let f=p.innerText.trim();if(p.hasAttribute("data-md-switching"))p.removeAttribute("data-md-switching");else{let u=e.offsetTop-l.y;for(let v of M("[data-tabs]"))for(let S of M(":scope > input",v)){let X=j(`label[for="${S.id}"]`);if(X!==p&&X.innerText.trim()===f){X.setAttribute("data-md-switching",""),S.click();break}}window.scrollTo({top:e.offsetTop-u});let d=__md_get("__tabs")||[];__md_set("__tabs",[...new Set([f,...d])])}}),a.pipe(D(c)).subscribe(()=>{for(let p of M("audio, video",e))p.pause()}),ss(n).pipe(O(p=>a.next(p)),A(()=>a.complete()),m(p=>R({ref:e},p)))}).pipe(et(pe))}function oi(e,t){let{viewport$:r,target$:o,print$:n}=t;return L(...M(".annotate:not(.highlight)",e).map(i=>zn(i,{target$:o,print$:n})),...M("pre:not(.mermaid) > code",e).map(i=>Yn(i,{target$:o,print$:n})),...M("a:not([title])",e).map(i=>Jn(i,t)),...M("pre.mermaid",e).map(i=>Zn(i)),...M("table:not([class])",e).map(i=>ti(i)),...M("details",e).map(i=>Bn(i,{target$:o,print$:n})),...M("[data-tabs]",e).map(i=>ri(i,{viewport$:r,target$:o})),...M("[title]",e).filter(()=>V("content.tooltips")).map(i=>Xe(i,{viewport$:r})),...M(".footnote-ref",e).filter(()=>V("content.footnote.tooltips")).map(i=>Nt(i,{content$:new F(s=>{let a=new URL(i.href).hash.slice(1),c=Array.from(document.getElementById(a).cloneNode(!0).children),p=wr(...c);return s.next(p),document.body.append(p),()=>p.remove()}),viewport$:r})))}function cs(e,{alert$:t}){return t.pipe(b(r=>L($(!0),$(!1).pipe(nt(2e3))).pipe(m(o=>({message:r,active:o})))))}function ni(e,t){let r=j(".md-typeset",e);return H(()=>{let o=new T;return o.subscribe(({message:n,active:i})=>{e.classList.toggle("md-dialog--active",i),r.textContent=n}),cs(e,t).pipe(O(n=>o.next(n)),A(()=>o.complete()),m(n=>R({ref:e},n)))})}var ps=0;function ls(e,t){document.body.append(e);let{width:r}=de(e);e.style.setProperty("--md-tooltip-width",`${r}px`),e.remove();let o=vr(t),n=typeof o!="undefined"?Ge(o):$({x:0,y:0}),i=L(Ye(t),it(t)).pipe(Y());return z([i,n]).pipe(m(([s,a])=>{let{x:c,y:p}=Be(t),l=de(t),f=t.closest("table");return f&&t.parentElement&&(c+=f.offsetLeft+t.parentElement.offsetLeft,p+=f.offsetTop+t.parentElement.offsetTop),{active:s,offset:{x:c-a.x+l.width/2-r/2,y:p-a.y+l.height+8}}}))}function ii(e){let t=e.title;if(!t.length)return y;let r=`__tooltip_${ps++}`,o=Vt(r,"inline"),n=j(".md-typeset",o);return n.innerHTML=t,H(()=>{let i=new T;return i.subscribe({next({offset:s}){o.style.setProperty("--md-tooltip-x",`${s.x}px`),o.style.setProperty("--md-tooltip-y",`${s.y}px`)},complete(){o.style.removeProperty("--md-tooltip-x"),o.style.removeProperty("--md-tooltip-y")}}),L(i.pipe(g(({active:s})=>s)),i.pipe(Ae(250),g(({active:s})=>!s))).subscribe({next({active:s}){s?(e.insertAdjacentElement("afterend",o),e.setAttribute("aria-describedby",r),e.removeAttribute("title")):(o.remove(),e.removeAttribute("aria-describedby"),e.setAttribute("title",t))},complete(){o.remove(),e.removeAttribute("aria-describedby"),e.setAttribute("title",t)}}),i.pipe($e(16,ye)).subscribe(({active:s})=>{o.classList.toggle("md-tooltip--active",s)}),i.pipe(gt(125,ye),g(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:s})=>s)).subscribe({next(s){s?o.style.setProperty("--md-tooltip-0",`${-s}px`):o.style.removeProperty("--md-tooltip-0")},complete(){o.style.removeProperty("--md-tooltip-0")}}),ls(o,e).pipe(O(s=>i.next(s)),A(()=>i.complete()),m(s=>R({ref:e},s)))}).pipe(et(pe))}function ms({viewport$:e}){if(!V("header.autohide"))return $(!1);let t=e.pipe(m(({offset:{y:n}})=>n),ot(2,1),m(([n,i])=>[nMath.abs(i-n.y)>100),m(([,[n]])=>n),Y()),o=Je("search");return z([e,o]).pipe(m(([{offset:n},i])=>n.y>400&&!i),Y(),b(n=>n?r:$(!1)),Q(!1))}function ai(e,t){return H(()=>z([Le(e),ms(t)])).pipe(m(([{height:r},o])=>({height:r,hidden:o})),Y((r,o)=>r.height===o.height&&r.hidden===o.hidden),Z(1))}function si(e,{header$:t,main$:r}){return H(()=>{let o=new T,n=o.pipe(oe(),ae(!0));o.pipe(ne("active"),Re(t)).subscribe(([{active:s},{hidden:a}])=>{e.classList.toggle("md-header--shadow",s&&!a),e.hidden=a});let i=fe(M("[title]",e)).pipe(g(()=>V("content.tooltips")),J(s=>ii(s)));return r.subscribe(o),t.pipe(D(n),m(s=>R({ref:e},s)),Ve(i.pipe(D(n))))})}function fs(e,{viewport$:t,header$:r}){return Er(e,{viewport$:t,header$:r}).pipe(m(({offset:{y:o}})=>{let{height:n}=de(e);return{active:o>=n}}),ne("active"))}function ci(e,t){return H(()=>{let r=new T;r.subscribe({next({active:n}){e.classList.toggle("md-header__title--active",n)},complete(){e.classList.remove("md-header__title--active")}});let o=ue(".md-content h1");return typeof o=="undefined"?y:fs(o,t).pipe(O(n=>r.next(n)),A(()=>r.complete()),m(n=>R({ref:e},n)))})}function pi(e,{viewport$:t,header$:r}){let o=r.pipe(m(({height:i})=>i),Y()),n=o.pipe(b(()=>Le(e).pipe(m(({height:i})=>({top:e.offsetTop,bottom:e.offsetTop+i})),ne("bottom"))));return z([o,n,t]).pipe(m(([i,{top:s,bottom:a},{offset:{y:c},size:{height:p}}])=>(p=Math.max(0,p-Math.max(0,s-c,i)-Math.max(0,p+c-a)),{offset:s-i,height:p,active:s-i<=c})),Y((i,s)=>i.offset===s.offset&&i.height===s.height&&i.active===s.active))}function us(e){let t=__md_get("__palette")||{index:e.findIndex(o=>matchMedia(o.getAttribute("data-md-color-media")).matches)},r=Math.max(0,Math.min(t.index,e.length-1));return $(...e).pipe(J(o=>h(o,"change").pipe(m(()=>o))),Q(e[r]),m(o=>({index:e.indexOf(o),color:{media:o.getAttribute("data-md-color-media"),scheme:o.getAttribute("data-md-color-scheme"),primary:o.getAttribute("data-md-color-primary"),accent:o.getAttribute("data-md-color-accent")}})),Z(1))}function li(e){let t=M("input",e),r=x("meta",{name:"theme-color"});document.head.appendChild(r);let o=x("meta",{name:"color-scheme"});document.head.appendChild(o);let n=Wt("(prefers-color-scheme: light)");return H(()=>{let i=new T;return i.subscribe(s=>{if(document.body.setAttribute("data-md-color-switching",""),s.color.media==="(prefers-color-scheme)"){let a=matchMedia("(prefers-color-scheme: light)"),c=document.querySelector(a.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");s.color.scheme=c.getAttribute("data-md-color-scheme"),s.color.primary=c.getAttribute("data-md-color-primary"),s.color.accent=c.getAttribute("data-md-color-accent")}for(let[a,c]of Object.entries(s.color))document.body.setAttribute(`data-md-color-${a}`,c);for(let a=0;as.key==="Enter"),te(i,(s,a)=>a)).subscribe(({index:s})=>{s=(s+1)%t.length,t[s].click(),t[s].focus()}),i.pipe(m(()=>{let s=Ce("header"),a=window.getComputedStyle(s);return o.content=a.colorScheme,a.backgroundColor.match(/\d+/g).map(c=>(+c).toString(16).padStart(2,"0")).join("")})).subscribe(s=>r.content=`#${s}`),i.pipe(xe(pe)).subscribe(()=>{document.body.removeAttribute("data-md-color-switching")}),us(t).pipe(D(n.pipe(Ie(1))),vt(),O(s=>i.next(s)),A(()=>i.complete()),m(s=>R({ref:e},s)))})}function mi(e,{progress$:t}){return H(()=>{let r=new T;return r.subscribe(({value:o})=>{e.style.setProperty("--md-progress-value",`${o}`)}),t.pipe(O(o=>r.next({value:o})),A(()=>r.complete()),m(o=>({ref:e,value:o})))})}function fi(e,t){return e.protocol=t.protocol,e.hostname=t.hostname,e}function ds(e,t){let r=new Map;for(let o of M("url",e)){let n=j("loc",o),i=[fi(new URL(n.textContent),t)];r.set(`${i[0]}`,i);for(let s of M("[rel=alternate]",o)){let a=s.getAttribute("href");a!=null&&i.push(fi(new URL(a),t))}}return r}function Ht(e){return En(new URL("sitemap.xml",e)).pipe(m(t=>ds(t,new URL(e))),ve(()=>$(new Map)),le())}function ui({document$:e}){let t=new Map;e.pipe(b(()=>M("link[rel=alternate]")),m(r=>new URL(r.href)),g(r=>!t.has(r.toString())),J(r=>Ht(r).pipe(m(o=>[r,o]),ve(()=>y)))).subscribe(([r,o])=>{t.set(r.toString().replace(/\/$/,""),o)}),h(document.body,"click").pipe(g(r=>!r.metaKey&&!r.ctrlKey),b(r=>{if(r.target instanceof Element){let o=r.target.closest("a");if(o&&!o.target){let n=[...t].find(([f])=>o.href.startsWith(`${f}/`));if(typeof n=="undefined")return y;let[i,s]=n,a=we();if(a.href.startsWith(i))return y;let c=Te(),p=a.href.replace(c.base,"");p=`${i}/${p}`;let l=s.has(p.split("#")[0])?new URL(p,c.base):new URL(i);return r.preventDefault(),$(l)}}return y})).subscribe(r=>st(r,!0))}var co=Rt(ao());function hs(e){e.setAttribute("data-md-copying","");let t=e.closest("[data-copy]"),r=t?t.getAttribute("data-copy"):e.innerText;return e.removeAttribute("data-md-copying"),r.trimEnd()}function di({alert$:e}){co.default.isSupported()&&new F(t=>{new co.default("[data-clipboard-target], [data-clipboard-text]",{text:r=>r.getAttribute("data-clipboard-text")||hs(j(r.getAttribute("data-clipboard-target")))}).on("success",r=>t.next(r))}).pipe(O(t=>{t.trigger.focus()}),m(()=>Me("clipboard.copied"))).subscribe(e)}function hi(e,t){if(!(e.target instanceof Element))return y;let r=e.target.closest("a");if(r===null)return y;if(r.target||e.metaKey||e.ctrlKey)return y;let o=new URL(r.href);return o.search=o.hash="",t.has(`${o}`)?(e.preventDefault(),$(r)):y}function bi(e){let t=new Map;for(let r of M(":scope > *",e.head))t.set(r.outerHTML,r);return t}function vi(e){for(let t of M("[href], [src]",e))for(let r of["href","src"]){let o=t.getAttribute(r);if(o&&!/^(?:[a-z]+:)?\/\//i.test(o)){t[r]=t[r];break}}return $(e)}function bs(e){for(let o of["[data-md-component=announce]","[data-md-component=container]","[data-md-component=header-topic]","[data-md-component=outdated]","[data-md-component=logo]","[data-md-component=skip]",...V("navigation.tabs.sticky")?["[data-md-component=tabs]"]:[]]){let n=ue(o),i=ue(o,e);typeof n!="undefined"&&typeof i!="undefined"&&n.replaceWith(i)}let t=bi(document);for(let[o,n]of bi(e))t.has(o)?t.delete(o):document.head.appendChild(n);for(let o of t.values()){let n=o.getAttribute("name");n!=="theme-color"&&n!=="color-scheme"&&o.remove()}let r=Ce("container");return Ke(M("script",r)).pipe(b(o=>{let n=e.createElement("script");if(o.src){for(let i of o.getAttributeNames())n.setAttribute(i,o.getAttribute(i));return o.replaceWith(n),new F(i=>{n.onload=()=>i.complete()})}else return n.textContent=o.textContent,o.replaceWith(n),y}),oe(),ae(document))}function gi({sitemap$:e,location$:t,viewport$:r,progress$:o}){if(location.protocol==="file:")return y;$(document).subscribe(vi);let n=h(document.body,"click").pipe(Re(e),b(([a,c])=>hi(a,c)),m(({href:a})=>new URL(a)),le()),i=h(window,"popstate").pipe(m(we),le());n.pipe(te(r)).subscribe(([a,{offset:c}])=>{history.replaceState(c,""),history.pushState(null,"",a)}),L(n,i).subscribe(t);let s=t.pipe(ne("pathname"),b(a=>xr(a,{progress$:o}).pipe(ve(()=>(st(a,!0),y)))),b(vi),b(bs),le());return L(s.pipe(te(t,(a,c)=>c)),s.pipe(b(()=>t),ne("pathname"),b(()=>t),ne("hash")),t.pipe(Y((a,c)=>a.pathname===c.pathname&&a.hash===c.hash),b(()=>n),O(()=>history.back()))).subscribe(a=>{var c,p;history.state!==null||!a.hash?window.scrollTo(0,(p=(c=history.state)==null?void 0:c.y)!=null?p:0):(history.scrollRestoration="auto",gn(a.hash),history.scrollRestoration="manual")}),t.subscribe(()=>{history.scrollRestoration="manual"}),h(window,"beforeunload").subscribe(()=>{history.scrollRestoration="auto"}),r.pipe(ne("offset"),Ae(100)).subscribe(({offset:a})=>{history.replaceState(a,"")}),V("navigation.instant.prefetch")&&L(h(document.body,"mousemove"),h(document.body,"focusin")).pipe(Re(e),b(([a,c])=>hi(a,c)),Ae(25),Qr(({href:a})=>a),hr(a=>{let c=document.createElement("link");return c.rel="prefetch",c.href=a.toString(),document.head.appendChild(c),h(c,"load").pipe(m(()=>c),Ee(1))})).subscribe(a=>a.remove()),s}var yi=Rt(ro());function xi(e){let t=e.separator.split("|").map(n=>n.replace(/(\(\?[!=<][^)]+\))/g,"").length===0?"\uFFFD":n).join("|"),r=new RegExp(t,"img"),o=(n,i,s)=>`${i}${s}`;return n=>{n=n.replace(/[\s*+\-:~^]+/g," ").trim();let i=new RegExp(`(^|${e.separator}|)(${n.replace(/[|\\{}()[\]^$+*?.-]/g,"\\$&").replace(r,"|")})`,"img");return s=>(0,yi.default)(s).replace(i,o).replace(/<\/mark>(\s+)]*>/img,"$1")}}function qt(e){return e.type===1}function Sr(e){return e.type===3}function Ei(e,t){let r=Mn(e);return L($(location.protocol!=="file:"),Je("search")).pipe(Pe(o=>o),b(()=>t)).subscribe(({config:o,docs:n})=>r.next({type:0,data:{config:o,docs:n,options:{suggest:V("search.suggest")}}})),r}function wi(e){var l;let{selectedVersionSitemap:t,selectedVersionBaseURL:r,currentLocation:o,currentBaseURL:n}=e,i=(l=po(n))==null?void 0:l.pathname;if(i===void 0)return;let s=ys(o.pathname,i);if(s===void 0)return;let a=Es(t.keys());if(!t.has(a))return;let c=po(s,a);if(!c||!t.has(c.href))return;let p=po(s,r);if(p)return p.hash=o.hash,p.search=o.search,p}function po(e,t){try{return new URL(e,t)}catch(r){return}}function ys(e,t){if(e.startsWith(t))return e.slice(t.length)}function xs(e,t){let r=Math.min(e.length,t.length),o;for(o=0;oy)),o=r.pipe(m(n=>{let[,i]=t.base.match(/([^/]+)\/?$/);return n.find(({version:s,aliases:a})=>s===i||a.includes(i))||n[0]}));r.pipe(m(n=>new Map(n.map(i=>[`${new URL(`../${i.version}/`,t.base)}`,i]))),b(n=>h(document.body,"click").pipe(g(i=>!i.metaKey&&!i.ctrlKey),te(o),b(([i,s])=>{if(i.target instanceof Element){let a=i.target.closest("a");if(a&&!a.target&&n.has(a.href)){let c=a.href;return!i.target.closest(".md-version")&&n.get(c)===s?y:(i.preventDefault(),$(new URL(c)))}}return y}),b(i=>Ht(i).pipe(m(s=>{var a;return(a=wi({selectedVersionSitemap:s,selectedVersionBaseURL:i,currentLocation:we(),currentBaseURL:t.base}))!=null?a:i})))))).subscribe(n=>st(n,!0)),z([r,o]).subscribe(([n,i])=>{j(".md-header__topic").appendChild(Dn(n,i))}),e.pipe(b(()=>o)).subscribe(n=>{var s;let i=__md_get("__outdated",sessionStorage);if(i===null){i=!0;let a=((s=t.version)==null?void 0:s.default)||"latest";Array.isArray(a)||(a=[a]);e:for(let c of a)for(let p of n.aliases.concat(n.version))if(new RegExp(c,"i").test(p)){i=!1;break e}__md_set("__outdated",i,sessionStorage)}if(i)for(let a of me("outdated"))a.hidden=!1})}function ws(e,{worker$:t}){let{searchParams:r}=we();r.has("q")&&(at("search",!0),e.value=r.get("q"),e.focus(),Je("search").pipe(Pe(i=>!i)).subscribe(()=>{let i=we();i.searchParams.delete("q"),history.replaceState({},"",`${i}`)}));let o=Ye(e),n=L(t.pipe(Pe(qt)),h(e,"keyup"),o).pipe(m(()=>e.value),Y());return z([n,o]).pipe(m(([i,s])=>({value:i,focus:s})),Z(1))}function Si(e,{worker$:t}){let r=new T,o=r.pipe(oe(),ae(!0));z([t.pipe(Pe(qt)),r],(i,s)=>s).pipe(ne("value")).subscribe(({value:i})=>t.next({type:2,data:i})),r.pipe(ne("focus")).subscribe(({focus:i})=>{i&&at("search",i)}),h(e.form,"reset").pipe(D(o)).subscribe(()=>e.focus());let n=j("header [for=__search]");return h(n,"click").subscribe(()=>e.focus()),ws(e,{worker$:t}).pipe(O(i=>r.next(i)),A(()=>r.complete()),m(i=>R({ref:e},i)),Z(1))}function Oi(e,{worker$:t,query$:r}){let o=new T,n=un(e.parentElement).pipe(g(Boolean)),i=e.parentElement,s=j(":scope > :first-child",e),a=j(":scope > :last-child",e);Je("search").subscribe(l=>a.setAttribute("role",l?"list":"presentation")),o.pipe(te(r),Gr(t.pipe(Pe(qt)))).subscribe(([{items:l},{value:f}])=>{switch(l.length){case 0:s.textContent=f.length?Me("search.result.none"):Me("search.result.placeholder");break;case 1:s.textContent=Me("search.result.one");break;default:let u=br(l.length);s.textContent=Me("search.result.other",u)}});let c=o.pipe(O(()=>a.innerHTML=""),b(({items:l})=>L($(...l.slice(0,10)),$(...l.slice(10)).pipe(ot(4),Xr(n),b(([f])=>f)))),m(Fn),le());return c.subscribe(l=>a.appendChild(l)),c.pipe(J(l=>{let f=ue("details",l);return typeof f=="undefined"?y:h(f,"toggle").pipe(D(o),m(()=>f))})).subscribe(l=>{l.open===!1&&l.offsetTop<=i.scrollTop&&i.scrollTo({top:l.offsetTop})}),t.pipe(g(Sr),m(({data:l})=>l)).pipe(O(l=>o.next(l)),A(()=>o.complete()),m(l=>R({ref:e},l)))}function Ts(e,{query$:t}){return t.pipe(m(({value:r})=>{let o=we();return o.hash="",r=r.replace(/\s+/g,"+").replace(/&/g,"%26").replace(/=/g,"%3D"),o.search=`q=${r}`,{url:o}}))}function Li(e,t){let r=new T,o=r.pipe(oe(),ae(!0));return r.subscribe(({url:n})=>{e.setAttribute("data-clipboard-text",e.href),e.href=`${n}`}),h(e,"click").pipe(D(o)).subscribe(n=>n.preventDefault()),Ts(e,t).pipe(O(n=>r.next(n)),A(()=>r.complete()),m(n=>R({ref:e},n)))}function Mi(e,{worker$:t,keyboard$:r}){let o=new T,n=Ce("search-query"),i=L(h(n,"keydown"),h(n,"focus")).pipe(xe(pe),m(()=>n.value),Y());return o.pipe(Re(i),m(([{suggest:a},c])=>{let p=c.split(/([\s-]+)/);if(a!=null&&a.length&&p[p.length-1]){let l=a[a.length-1];l.startsWith(p[p.length-1])&&(p[p.length-1]=l)}else p.length=0;return p})).subscribe(a=>e.innerHTML=a.join("").replace(/\s/g," ")),r.pipe(g(({mode:a})=>a==="search")).subscribe(a=>{switch(a.type){case"ArrowRight":e.innerText.length&&n.selectionStart===n.value.length&&(n.value=e.innerText);break}}),t.pipe(g(Sr),m(({data:a})=>a)).pipe(O(a=>o.next(a)),A(()=>o.complete()),m(()=>({ref:e})))}function _i(e,{index$:t,keyboard$:r}){let o=Te();try{let n=Ei(o.search,t),i=Ce("search-query",e),s=Ce("search-result",e);h(e,"click").pipe(g(({target:c})=>c instanceof Element&&!!c.closest("a"))).subscribe(()=>at("search",!1)),r.pipe(g(({mode:c})=>c==="search")).subscribe(c=>{let p=Ne();switch(c.type){case"Enter":if(p===i){let l=new Map;for(let f of M(":first-child [href]",s)){let u=f.firstElementChild;l.set(f,parseFloat(u.getAttribute("data-md-score")))}if(l.size){let[[f]]=[...l].sort(([,u],[,d])=>d-u);f.click()}c.claim()}break;case"Escape":case"Tab":at("search",!1),i.blur();break;case"ArrowUp":case"ArrowDown":if(typeof p=="undefined")i.focus();else{let l=[i,...M(":not(details) > [href], summary, details[open] [href]",s)],f=Math.max(0,(Math.max(0,l.indexOf(p))+l.length+(c.type==="ArrowUp"?-1:1))%l.length);l[f].focus()}c.claim();break;default:i!==Ne()&&i.focus()}}),r.pipe(g(({mode:c})=>c==="global")).subscribe(c=>{switch(c.type){case"f":case"s":case"/":i.focus(),i.select(),c.claim();break}});let a=Si(i,{worker$:n});return L(a,Oi(s,{worker$:n,query$:a})).pipe(Ve(...me("search-share",e).map(c=>Li(c,{query$:a})),...me("search-suggest",e).map(c=>Mi(c,{worker$:n,keyboard$:r}))))}catch(n){return e.hidden=!0,tt}}function Ai(e,{index$:t,location$:r}){return z([t,r.pipe(Q(we()),g(o=>!!o.searchParams.get("h")))]).pipe(m(([o,n])=>xi(o.config)(n.searchParams.get("h"))),m(o=>{var s;let n=new Map,i=document.createNodeIterator(e,NodeFilter.SHOW_TEXT);for(let a=i.nextNode();a;a=i.nextNode())if((s=a.parentElement)!=null&&s.offsetHeight){let c=a.textContent,p=o(c);p.length>c.length&&n.set(a,p)}for(let[a,c]of n){let{childNodes:p}=x("span",null,c);a.replaceWith(...Array.from(p))}return{ref:e,nodes:n}}))}function Ss(e,{viewport$:t,main$:r}){let o=e.closest(".md-grid"),n=o.offsetTop-o.parentElement.offsetTop;return z([r,t]).pipe(m(([{offset:i,height:s},{offset:{y:a}}])=>(s=s+Math.min(n,Math.max(0,a-i))-n,{height:s,locked:a>=i+n})),Y((i,s)=>i.height===s.height&&i.locked===s.locked))}function lo(e,o){var n=o,{header$:t}=n,r=vo(n,["header$"]);let i=j(".md-sidebar__scrollwrap",e),{y:s}=Be(i);return H(()=>{let a=new T,c=a.pipe(oe(),ae(!0)),p=a.pipe($e(0,ye));return p.pipe(te(t)).subscribe({next([{height:l},{height:f}]){i.style.height=`${l-2*s}px`,e.style.top=`${f}px`},complete(){i.style.height="",e.style.top=""}}),p.pipe(Pe()).subscribe(()=>{for(let l of M(".md-nav__link--active[href]",e)){if(!l.clientHeight)continue;let f=l.closest(".md-sidebar__scrollwrap");if(typeof f!="undefined"){let u=l.offsetTop-f.offsetTop,{height:d}=de(f);f.scrollTo({top:u-d/2})}}}),fe(M("label[tabindex]",e)).pipe(J(l=>h(l,"click").pipe(xe(pe),m(()=>l),D(c)))).subscribe(l=>{let f=j(`[id="${l.htmlFor}"]`);j(`[aria-labelledby="${l.id}"]`).setAttribute("aria-expanded",`${f.checked}`)}),V("content.tooltips")&&fe(M("abbr[title]",e)).pipe(J(l=>Xe(l,{viewport$})),D(c)).subscribe(),Ss(e,r).pipe(O(l=>a.next(l)),A(()=>a.complete()),m(l=>R({ref:e},l)))})}function Ci(e,t){if(typeof t!="undefined"){let r=`https://api.github.com/repos/${e}/${t}`;return rt(ze(`${r}/releases/latest`).pipe(ve(()=>y),m(o=>({version:o.tag_name})),Qe({})),ze(r).pipe(ve(()=>y),m(o=>({stars:o.stargazers_count,forks:o.forks_count})),Qe({}))).pipe(m(([o,n])=>R(R({},o),n)))}else{let r=`https://api.github.com/users/${e}`;return ze(r).pipe(m(o=>({repositories:o.public_repos})),Qe({}))}}function ki(e,t){let r=`https://${e}/api/v4/projects/${encodeURIComponent(t)}`;return rt(ze(`${r}/releases/permalink/latest`).pipe(ve(()=>y),m(({tag_name:o})=>({version:o})),Qe({})),ze(r).pipe(ve(()=>y),m(({star_count:o,forks_count:n})=>({stars:o,forks:n})),Qe({}))).pipe(m(([o,n])=>R(R({},o),n)))}function Hi(e){let t=e.match(/^.+github\.com\/([^/]+)\/?([^/]+)?/i);if(t){let[,r,o]=t;return Ci(r,o)}if(t=e.match(/^.+?([^/]*gitlab[^/]+)\/(.+?)\/?$/i),t){let[,r,o]=t;return ki(r,o)}return y}var Os;function Ls(e){return Os||(Os=H(()=>{let t=__md_get("__source",sessionStorage);if(t)return $(t);if(me("consent").length){let o=__md_get("__consent");if(!(o&&o.github))return y}return Hi(e.href).pipe(O(o=>__md_set("__source",o,sessionStorage)))}).pipe(ve(()=>y),g(t=>Object.keys(t).length>0),m(t=>({facts:t})),Z(1)))}function $i(e){let t=j(":scope > :last-child",e);return H(()=>{let r=new T;return r.subscribe(({facts:o})=>{t.appendChild(jn(o)),t.classList.add("md-source__repository--active")}),Ls(e).pipe(O(o=>r.next(o)),A(()=>r.complete()),m(o=>R({ref:e},o)))})}function Ms(e,{viewport$:t,header$:r}){return Le(document.body).pipe(b(()=>Er(e,{header$:r,viewport$:t})),m(({offset:{y:o}})=>({hidden:o>=10})),ne("hidden"))}function Ri(e,t){return H(()=>{let r=new T;return r.subscribe({next({hidden:o}){e.hidden=o},complete(){e.hidden=!1}}),(V("navigation.tabs.sticky")?$({hidden:!1}):Ms(e,t)).pipe(O(o=>r.next(o)),A(()=>r.complete()),m(o=>R({ref:e},o)))})}function _s(e,{viewport$:t,header$:r}){let o=new Map,n=M(".md-nav__link",e);for(let a of n){let c=decodeURIComponent(a.hash.substring(1)),p=ue(`[id="${c}"]`);typeof p!="undefined"&&o.set(a,p)}let i=r.pipe(ne("height"),m(({height:a})=>{let c=Ce("main"),p=j(":scope > :first-child",c);return a+.8*(p.offsetTop-c.offsetTop)}),le());return Le(document.body).pipe(ne("height"),b(a=>H(()=>{let c=[];return $([...o].reduce((p,[l,f])=>{for(;c.length&&o.get(c[c.length-1]).tagName>=f.tagName;)c.pop();let u=f.offsetTop;for(;!u&&f.parentElement;)f=f.parentElement,u=f.offsetTop;let d=f.offsetParent;for(;d;d=d.offsetParent)u+=d.offsetTop;return p.set([...c=[...c,l]].reverse(),u)},new Map))}).pipe(m(c=>new Map([...c].sort(([,p],[,l])=>p-l))),Re(i),b(([c,p])=>t.pipe(Dt(([l,f],{offset:{y:u},size:d})=>{let v=u+d.height>=Math.floor(a.height);for(;f.length;){let[,S]=f[0];if(S-p=u&&!v)f=[l.pop(),...f];else break}return[l,f]},[[],[...c]]),Y((l,f)=>l[0]===f[0]&&l[1]===f[1])))))).pipe(m(([a,c])=>({prev:a.map(([p])=>p),next:c.map(([p])=>p)})),Q({prev:[],next:[]}),ot(2,1),m(([a,c])=>a.prev.length{let i=new T,s=i.pipe(oe(),ae(!0));if(i.subscribe(({prev:a,next:c})=>{for(let[p]of c)p.classList.remove("md-nav__link--passed"),p.classList.remove("md-nav__link--active");for(let[p,[l]]of a.entries())l.classList.add("md-nav__link--passed"),l.classList.toggle("md-nav__link--active",p===a.length-1)}),V("toc.follow")){let a=L(t.pipe(Ae(1),m(()=>{})),t.pipe(Ae(250),m(()=>"smooth")));i.pipe(g(({prev:c})=>c.length>0),Re(o.pipe(xe(pe))),te(a)).subscribe(([[{prev:c}],p])=>{let[l]=c[c.length-1];if(l.offsetHeight){let f=vr(l);if(typeof f!="undefined"){let u=l.offsetTop-f.offsetTop,{height:d}=de(f);f.scrollTo({top:u-d/2,behavior:p})}}})}return V("navigation.tracking")&&t.pipe(D(s),ne("offset"),Ae(250),Ie(1),D(n.pipe(Ie(1))),vt({delay:250}),te(i)).subscribe(([,{prev:a}])=>{let c=we(),p=a[a.length-1];if(p&&p.length){let[l]=p,{hash:f}=new URL(l.href);c.hash!==f&&(c.hash=f,history.replaceState({},"",`${c}`))}else c.hash="",history.replaceState({},"",`${c}`)}),_s(e,{viewport$:t,header$:r}).pipe(O(a=>i.next(a)),A(()=>i.complete()),m(a=>R({ref:e},a)))})}function As(e,{viewport$:t,main$:r,target$:o}){let n=t.pipe(m(({offset:{y:s}})=>s),ot(2,1),m(([s,a])=>s>a&&a>0),Y()),i=r.pipe(m(({active:s})=>s));return z([i,n]).pipe(m(([s,a])=>!(s&&a)),Y(),D(o.pipe(Ie(1))),ae(!0),vt({delay:250}),m(s=>({hidden:s})))}function Ii(e,{viewport$:t,header$:r,main$:o,target$:n}){let i=new T,s=i.pipe(oe(),ae(!0));return i.subscribe({next({hidden:a}){e.hidden=a,a?(e.setAttribute("tabindex","-1"),e.blur()):e.removeAttribute("tabindex")},complete(){e.style.top="",e.hidden=!0,e.removeAttribute("tabindex")}}),r.pipe(D(s),ne("height")).subscribe(({height:a})=>{e.style.top=`${a+16}px`}),h(e,"click").subscribe(a=>{a.preventDefault(),window.scrollTo({top:0})}),As(e,{viewport$:t,main$:o,target$:n}).pipe(O(a=>i.next(a)),A(()=>i.complete()),m(a=>R({ref:e},a)))}function Fi({document$:e,viewport$:t}){e.pipe(b(()=>M(".md-ellipsis")),J(r=>mt(r).pipe(D(e.pipe(Ie(1))),g(o=>o),m(()=>r),Ee(1))),g(r=>r.offsetWidth{let o=r.innerText,n=r.closest("a")||r;return n.title=o,V("content.tooltips")?Xe(n,{viewport$:t}).pipe(D(e.pipe(Ie(1))),A(()=>n.removeAttribute("title"))):y})).subscribe(),V("content.tooltips")&&e.pipe(b(()=>M(".md-status")),J(r=>Xe(r,{viewport$:t}))).subscribe()}function ji({document$:e,tablet$:t}){e.pipe(b(()=>M(".md-toggle--indeterminate")),O(r=>{r.indeterminate=!0,r.checked=!1}),J(r=>h(r,"change").pipe(Jr(()=>r.classList.contains("md-toggle--indeterminate")),m(()=>r))),te(t)).subscribe(([r,o])=>{r.classList.remove("md-toggle--indeterminate"),o&&(r.checked=!1)})}function Cs(){return/(iPad|iPhone|iPod)/.test(navigator.userAgent)}function Ui({document$:e}){e.pipe(b(()=>M("[data-md-scrollfix]")),O(t=>t.removeAttribute("data-md-scrollfix")),g(Cs),J(t=>h(t,"touchstart").pipe(m(()=>t)))).subscribe(t=>{let r=t.scrollTop;r===0?t.scrollTop=1:r+t.offsetHeight===t.scrollHeight&&(t.scrollTop=r-1)})}function Di({viewport$:e,tablet$:t}){z([Je("search"),t]).pipe(m(([r,o])=>r&&!o),b(r=>$(r).pipe(nt(r?400:100))),te(e)).subscribe(([r,{offset:{y:o}}])=>{if(r)document.body.setAttribute("data-md-scrolllock",""),document.body.style.top=`-${o}px`;else{let n=-1*parseInt(document.body.style.top,10);document.body.removeAttribute("data-md-scrolllock"),document.body.style.top="",n&&window.scrollTo(0,n)}})}Object.entries||(Object.entries=function(e){let t=[];for(let r of Object.keys(e))t.push([r,e[r]]);return t});Object.values||(Object.values=function(e){let t=[];for(let r of Object.keys(e))t.push(e[r]);return t});typeof Element!="undefined"&&(Element.prototype.scrollTo||(Element.prototype.scrollTo=function(e,t){typeof e=="object"?(this.scrollLeft=e.left,this.scrollTop=e.top):(this.scrollLeft=e,this.scrollTop=t)}),Element.prototype.replaceWith||(Element.prototype.replaceWith=function(...e){let t=this.parentNode;if(t){e.length===0&&t.removeChild(this);for(let r=e.length-1;r>=0;r--){let o=e[r];typeof o=="string"?o=document.createTextNode(o):o.parentNode&&o.parentNode.removeChild(o),r?t.insertBefore(this.previousSibling,o):t.replaceChild(o,this)}}}));function ks(){return location.protocol==="file:"?At(`${new URL("search/search_index.js",Or.base)}`).pipe(m(()=>__index),Z(1)):ze(new URL("search/search_index.json",Or.base))}document.documentElement.classList.remove("no-js");document.documentElement.classList.add("js");var ct=an(),Qt=bn(),$t=yn(Qt),mo=hn(),ke=Ln(),Lr=Wt("(min-width: 960px)"),Vi=Wt("(min-width: 1220px)"),Ni=xn(),Or=Te(),zi=document.forms.namedItem("search")?ks():tt,fo=new T;di({alert$:fo});ui({document$:ct});var uo=new T,qi=Ht(Or.base);V("navigation.instant")&&gi({sitemap$:qi,location$:Qt,viewport$:ke,progress$:uo}).subscribe(ct);var Wi;((Wi=Or.version)==null?void 0:Wi.provider)==="mike"&&Ti({document$:ct});L(Qt,$t).pipe(nt(125)).subscribe(()=>{at("drawer",!1),at("search",!1)});mo.pipe(g(({mode:e})=>e==="global")).subscribe(e=>{switch(e.type){case"p":case",":let t=ue("link[rel=prev]");typeof t!="undefined"&&st(t);break;case"n":case".":let r=ue("link[rel=next]");typeof r!="undefined"&&st(r);break;case"Enter":let o=Ne();o instanceof HTMLLabelElement&&o.click()}});Fi({viewport$:ke,document$:ct});ji({document$:ct,tablet$:Lr});Ui({document$:ct});Di({viewport$:ke,tablet$:Lr});var ft=ai(Ce("header"),{viewport$:ke}),Kt=ct.pipe(m(()=>Ce("main")),b(e=>pi(e,{viewport$:ke,header$:ft})),Z(1)),Hs=L(...me("consent").map(e=>An(e,{target$:$t})),...me("dialog").map(e=>ni(e,{alert$:fo})),...me("palette").map(e=>li(e)),...me("progress").map(e=>mi(e,{progress$:uo})),...me("search").map(e=>_i(e,{index$:zi,keyboard$:mo})),...me("source").map(e=>$i(e))),$s=H(()=>L(...me("announce").map(e=>_n(e)),...me("content").map(e=>oi(e,{sitemap$:qi,viewport$:ke,target$:$t,print$:Ni})),...me("content").map(e=>V("search.highlight")?Ai(e,{index$:zi,location$:Qt}):y),...me("header").map(e=>si(e,{viewport$:ke,header$:ft,main$:Kt})),...me("header-title").map(e=>ci(e,{viewport$:ke,header$:ft})),...me("sidebar").map(e=>e.getAttribute("data-md-type")==="navigation"?eo(Vi,()=>lo(e,{viewport$:ke,header$:ft,main$:Kt})):eo(Lr,()=>lo(e,{viewport$:ke,header$:ft,main$:Kt}))),...me("tabs").map(e=>Ri(e,{viewport$:ke,header$:ft})),...me("toc").map(e=>Pi(e,{viewport$:ke,header$:ft,main$:Kt,target$:$t})),...me("top").map(e=>Ii(e,{viewport$:ke,header$:ft,main$:Kt,target$:$t})))),Ki=ct.pipe(b(()=>$s),Ve(Hs),Z(1));Ki.subscribe();window.document$=ct;window.location$=Qt;window.target$=$t;window.keyboard$=mo;window.viewport$=ke;window.tablet$=Lr;window.screen$=Vi;window.print$=Ni;window.alert$=fo;window.progress$=uo;window.component$=Ki;})(); diff --git a/assets/javascripts/lunr/min/lunr.ar.min.js b/assets/javascripts/lunr/min/lunr.ar.min.js new file mode 100644 index 0000000..9b06c26 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.ar.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ar=function(){this.pipeline.reset(),this.pipeline.add(e.ar.trimmer,e.ar.stopWordFilter,e.ar.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ar.stemmer))},e.ar.wordCharacters="ء-ٛٱـ",e.ar.trimmer=e.trimmerSupport.generateTrimmer(e.ar.wordCharacters),e.Pipeline.registerFunction(e.ar.trimmer,"trimmer-ar"),e.ar.stemmer=function(){var e=this;return e.result=!1,e.preRemoved=!1,e.sufRemoved=!1,e.pre={pre1:"ف ك ب و س ل ن ا ي ت",pre2:"ال لل",pre3:"بال وال فال تال كال ولل",pre4:"فبال كبال وبال وكال"},e.suf={suf1:"ه ك ت ن ا ي",suf2:"نك نه ها وك يا اه ون ين تن تم نا وا ان كم كن ني نن ما هم هن تك ته ات يه",suf3:"تين كهم نيه نهم ونه وها يهم ونا ونك وني وهم تكم تنا تها تني تهم كما كها ناه نكم هنا تان يها",suf4:"كموه ناها ونني ونهم تكما تموه تكاه كماه ناكم ناهم نيها وننا"},e.patterns=JSON.parse('{"pt43":[{"pt":[{"c":"ا","l":1}]},{"pt":[{"c":"ا,ت,ن,ي","l":0}],"mPt":[{"c":"ف","l":0,"m":1},{"c":"ع","l":1,"m":2},{"c":"ل","l":2,"m":3}]},{"pt":[{"c":"و","l":2}],"mPt":[{"c":"ف","l":0,"m":0},{"c":"ع","l":1,"m":1},{"c":"ل","l":2,"m":3}]},{"pt":[{"c":"ا","l":2}]},{"pt":[{"c":"ي","l":2}],"mPt":[{"c":"ف","l":0,"m":0},{"c":"ع","l":1,"m":1},{"c":"ا","l":2},{"c":"ل","l":3,"m":3}]},{"pt":[{"c":"م","l":0}]}],"pt53":[{"pt":[{"c":"ت","l":0},{"c":"ا","l":2}]},{"pt":[{"c":"ا,ن,ت,ي","l":0},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ت","l":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"ا","l":0},{"c":"ا","l":2}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ع","l":2,"m":3},{"c":"ل","l":3,"m":4},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"ا","l":0},{"c":"ا","l":3}],"mPt":[{"c":"ف","l":0,"m":1},{"c":"ع","l":1,"m":2},{"c":"ل","l":2,"m":4}]},{"pt":[{"c":"ا","l":3},{"c":"ن","l":4}]},{"pt":[{"c":"ت","l":0},{"c":"ي","l":3}]},{"pt":[{"c":"م","l":0},{"c":"و","l":3}]},{"pt":[{"c":"ا","l":1},{"c":"و","l":3}]},{"pt":[{"c":"و","l":1},{"c":"ا","l":2}]},{"pt":[{"c":"م","l":0},{"c":"ا","l":3}]},{"pt":[{"c":"م","l":0},{"c":"ي","l":3}]},{"pt":[{"c":"ا","l":2},{"c":"ن","l":3}]},{"pt":[{"c":"م","l":0},{"c":"ن","l":1}],"mPt":[{"c":"ا","l":0},{"c":"ن","l":1},{"c":"ف","l":2,"m":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"م","l":0},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ت","l":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"م","l":0},{"c":"ا","l":2}]},{"pt":[{"c":"م","l":1},{"c":"ا","l":3}]},{"pt":[{"c":"ي,ت,ا,ن","l":0},{"c":"ت","l":1}],"mPt":[{"c":"ف","l":0,"m":2},{"c":"ع","l":1,"m":3},{"c":"ا","l":2},{"c":"ل","l":3,"m":4}]},{"pt":[{"c":"ت,ي,ا,ن","l":0},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ت","l":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"ا","l":2},{"c":"ي","l":3}]},{"pt":[{"c":"ا,ي,ت,ن","l":0},{"c":"ن","l":1}],"mPt":[{"c":"ا","l":0},{"c":"ن","l":1},{"c":"ف","l":2,"m":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"ا","l":3},{"c":"ء","l":4}]}],"pt63":[{"pt":[{"c":"ا","l":0},{"c":"ت","l":2},{"c":"ا","l":4}]},{"pt":[{"c":"ا,ت,ن,ي","l":0},{"c":"س","l":1},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"س","l":1},{"c":"ت","l":2},{"c":"ف","l":3,"m":3},{"c":"ع","l":4,"m":4},{"c":"ا","l":5},{"c":"ل","l":6,"m":5}]},{"pt":[{"c":"ا,ن,ت,ي","l":0},{"c":"و","l":3}]},{"pt":[{"c":"م","l":0},{"c":"س","l":1},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"س","l":1},{"c":"ت","l":2},{"c":"ف","l":3,"m":3},{"c":"ع","l":4,"m":4},{"c":"ا","l":5},{"c":"ل","l":6,"m":5}]},{"pt":[{"c":"ي","l":1},{"c":"ي","l":3},{"c":"ا","l":4},{"c":"ء","l":5}]},{"pt":[{"c":"ا","l":0},{"c":"ن","l":1},{"c":"ا","l":4}]}],"pt54":[{"pt":[{"c":"ت","l":0}]},{"pt":[{"c":"ا,ي,ت,ن","l":0}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ع","l":2,"m":2},{"c":"ل","l":3,"m":3},{"c":"ر","l":4,"m":4},{"c":"ا","l":5},{"c":"ر","l":6,"m":4}]},{"pt":[{"c":"م","l":0}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ع","l":2,"m":2},{"c":"ل","l":3,"m":3},{"c":"ر","l":4,"m":4},{"c":"ا","l":5},{"c":"ر","l":6,"m":4}]},{"pt":[{"c":"ا","l":2}]},{"pt":[{"c":"ا","l":0},{"c":"ن","l":2}]}],"pt64":[{"pt":[{"c":"ا","l":0},{"c":"ا","l":4}]},{"pt":[{"c":"م","l":0},{"c":"ت","l":1}]}],"pt73":[{"pt":[{"c":"ا","l":0},{"c":"س","l":1},{"c":"ت","l":2},{"c":"ا","l":5}]}],"pt75":[{"pt":[{"c":"ا","l":0},{"c":"ا","l":5}]}]}'),e.execArray=["cleanWord","removeDiacritics","cleanAlef","removeStopWords","normalizeHamzaAndAlef","removeStartWaw","removePre432","removeEndTaa","wordCheck"],e.stem=function(){var r=0;for(e.result=!1,e.preRemoved=!1,e.sufRemoved=!1;r=0)return!0},e.normalizeHamzaAndAlef=function(){return e.word=e.word.replace("ؤ","ء"),e.word=e.word.replace("ئ","ء"),e.word=e.word.replace(/([\u0627])\1+/gi,"ا"),!1},e.removeEndTaa=function(){return!(e.word.length>2)||(e.word=e.word.replace(/[\u0627]$/,""),e.word=e.word.replace("ة",""),!1)},e.removeStartWaw=function(){return e.word.length>3&&"و"==e.word[0]&&"و"==e.word[1]&&(e.word=e.word.slice(1)),!1},e.removePre432=function(){var r=e.word;if(e.word.length>=7){var t=new RegExp("^("+e.pre.pre4.split(" ").join("|")+")");e.word=e.word.replace(t,"")}if(e.word==r&&e.word.length>=6){var c=new RegExp("^("+e.pre.pre3.split(" ").join("|")+")");e.word=e.word.replace(c,"")}if(e.word==r&&e.word.length>=5){var l=new RegExp("^("+e.pre.pre2.split(" ").join("|")+")");e.word=e.word.replace(l,"")}return r!=e.word&&(e.preRemoved=!0),!1},e.patternCheck=function(r){for(var t=0;t3){var t=new RegExp("^("+e.pre.pre1.split(" ").join("|")+")");e.word=e.word.replace(t,"")}return r!=e.word&&(e.preRemoved=!0),!1},e.removeSuf1=function(){var r=e.word;if(0==e.sufRemoved&&e.word.length>3){var t=new RegExp("("+e.suf.suf1.split(" ").join("|")+")$");e.word=e.word.replace(t,"")}return r!=e.word&&(e.sufRemoved=!0),!1},e.removeSuf432=function(){var r=e.word;if(e.word.length>=6){var t=new RegExp("("+e.suf.suf4.split(" ").join("|")+")$");e.word=e.word.replace(t,"")}if(e.word==r&&e.word.length>=5){var c=new RegExp("("+e.suf.suf3.split(" ").join("|")+")$");e.word=e.word.replace(c,"")}if(e.word==r&&e.word.length>=4){var l=new RegExp("("+e.suf.suf2.split(" ").join("|")+")$");e.word=e.word.replace(l,"")}return r!=e.word&&(e.sufRemoved=!0),!1},e.wordCheck=function(){for(var r=(e.word,[e.removeSuf432,e.removeSuf1,e.removePre1]),t=0,c=!1;e.word.length>=7&&!e.result&&t=f.limit)return;f.cursor++}for(;!f.out_grouping(w,97,248);){if(f.cursor>=f.limit)return;f.cursor++}d=f.cursor,d=d&&(r=f.limit_backward,f.limit_backward=d,f.ket=f.cursor,e=f.find_among_b(c,32),f.limit_backward=r,e))switch(f.bra=f.cursor,e){case 1:f.slice_del();break;case 2:f.in_grouping_b(p,97,229)&&f.slice_del()}}function t(){var e,r=f.limit-f.cursor;f.cursor>=d&&(e=f.limit_backward,f.limit_backward=d,f.ket=f.cursor,f.find_among_b(l,4)?(f.bra=f.cursor,f.limit_backward=e,f.cursor=f.limit-r,f.cursor>f.limit_backward&&(f.cursor--,f.bra=f.cursor,f.slice_del())):f.limit_backward=e)}function s(){var e,r,i,n=f.limit-f.cursor;if(f.ket=f.cursor,f.eq_s_b(2,"st")&&(f.bra=f.cursor,f.eq_s_b(2,"ig")&&f.slice_del()),f.cursor=f.limit-n,f.cursor>=d&&(r=f.limit_backward,f.limit_backward=d,f.ket=f.cursor,e=f.find_among_b(m,5),f.limit_backward=r,e))switch(f.bra=f.cursor,e){case 1:f.slice_del(),i=f.limit-f.cursor,t(),f.cursor=f.limit-i;break;case 2:f.slice_from("løs")}}function o(){var e;f.cursor>=d&&(e=f.limit_backward,f.limit_backward=d,f.ket=f.cursor,f.out_grouping_b(w,97,248)?(f.bra=f.cursor,u=f.slice_to(u),f.limit_backward=e,f.eq_v_b(u)&&f.slice_del()):f.limit_backward=e)}var a,d,u,c=[new r("hed",-1,1),new r("ethed",0,1),new r("ered",-1,1),new r("e",-1,1),new r("erede",3,1),new r("ende",3,1),new r("erende",5,1),new r("ene",3,1),new r("erne",3,1),new r("ere",3,1),new r("en",-1,1),new r("heden",10,1),new r("eren",10,1),new r("er",-1,1),new r("heder",13,1),new r("erer",13,1),new r("s",-1,2),new r("heds",16,1),new r("es",16,1),new r("endes",18,1),new r("erendes",19,1),new r("enes",18,1),new r("ernes",18,1),new r("eres",18,1),new r("ens",16,1),new r("hedens",24,1),new r("erens",24,1),new r("ers",16,1),new r("ets",16,1),new r("erets",28,1),new r("et",-1,1),new r("eret",30,1)],l=[new r("gd",-1,-1),new r("dt",-1,-1),new r("gt",-1,-1),new r("kt",-1,-1)],m=[new r("ig",-1,1),new r("lig",0,1),new r("elig",1,1),new r("els",-1,1),new r("løst",-1,2)],w=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,48,0,128],p=[239,254,42,3,0,0,0,0,0,0,0,0,0,0,0,0,16],f=new i;this.setCurrent=function(e){f.setCurrent(e)},this.getCurrent=function(){return f.getCurrent()},this.stem=function(){var r=f.cursor;return e(),f.limit_backward=r,f.cursor=f.limit,n(),f.cursor=f.limit,t(),f.cursor=f.limit,s(),f.cursor=f.limit,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.da.stemmer,"stemmer-da"),e.da.stopWordFilter=e.generateStopWordFilter("ad af alle alt anden at blev blive bliver da de dem den denne der deres det dette dig din disse dog du efter eller en end er et for fra ham han hans har havde have hende hendes her hos hun hvad hvis hvor i ikke ind jeg jer jo kunne man mange med meget men mig min mine mit mod ned noget nogle nu når og også om op os over på selv sig sin sine sit skal skulle som sådan thi til ud under var vi vil ville vor være været".split(" ")),e.Pipeline.registerFunction(e.da.stopWordFilter,"stopWordFilter-da")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.de.min.js b/assets/javascripts/lunr/min/lunr.de.min.js new file mode 100644 index 0000000..f3b5c10 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.de.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `German` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.de=function(){this.pipeline.reset(),this.pipeline.add(e.de.trimmer,e.de.stopWordFilter,e.de.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.de.stemmer))},e.de.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.de.trimmer=e.trimmerSupport.generateTrimmer(e.de.wordCharacters),e.Pipeline.registerFunction(e.de.trimmer,"trimmer-de"),e.de.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,i=new function(){function e(e,r,n){return!(!v.eq_s(1,e)||(v.ket=v.cursor,!v.in_grouping(p,97,252)))&&(v.slice_from(r),v.cursor=n,!0)}function i(){for(var r,n,i,s,t=v.cursor;;)if(r=v.cursor,v.bra=r,v.eq_s(1,"ß"))v.ket=v.cursor,v.slice_from("ss");else{if(r>=v.limit)break;v.cursor=r+1}for(v.cursor=t;;)for(n=v.cursor;;){if(i=v.cursor,v.in_grouping(p,97,252)){if(s=v.cursor,v.bra=s,e("u","U",i))break;if(v.cursor=s,e("y","Y",i))break}if(i>=v.limit)return void(v.cursor=n);v.cursor=i+1}}function s(){for(;!v.in_grouping(p,97,252);){if(v.cursor>=v.limit)return!0;v.cursor++}for(;!v.out_grouping(p,97,252);){if(v.cursor>=v.limit)return!0;v.cursor++}return!1}function t(){m=v.limit,l=m;var e=v.cursor+3;0<=e&&e<=v.limit&&(d=e,s()||(m=v.cursor,m=v.limit)return;v.cursor++}}}function c(){return m<=v.cursor}function u(){return l<=v.cursor}function a(){var e,r,n,i,s=v.limit-v.cursor;if(v.ket=v.cursor,(e=v.find_among_b(w,7))&&(v.bra=v.cursor,c()))switch(e){case 1:v.slice_del();break;case 2:v.slice_del(),v.ket=v.cursor,v.eq_s_b(1,"s")&&(v.bra=v.cursor,v.eq_s_b(3,"nis")&&v.slice_del());break;case 3:v.in_grouping_b(g,98,116)&&v.slice_del()}if(v.cursor=v.limit-s,v.ket=v.cursor,(e=v.find_among_b(f,4))&&(v.bra=v.cursor,c()))switch(e){case 1:v.slice_del();break;case 2:if(v.in_grouping_b(k,98,116)){var t=v.cursor-3;v.limit_backward<=t&&t<=v.limit&&(v.cursor=t,v.slice_del())}}if(v.cursor=v.limit-s,v.ket=v.cursor,(e=v.find_among_b(_,8))&&(v.bra=v.cursor,u()))switch(e){case 1:v.slice_del(),v.ket=v.cursor,v.eq_s_b(2,"ig")&&(v.bra=v.cursor,r=v.limit-v.cursor,v.eq_s_b(1,"e")||(v.cursor=v.limit-r,u()&&v.slice_del()));break;case 2:n=v.limit-v.cursor,v.eq_s_b(1,"e")||(v.cursor=v.limit-n,v.slice_del());break;case 3:if(v.slice_del(),v.ket=v.cursor,i=v.limit-v.cursor,!v.eq_s_b(2,"er")&&(v.cursor=v.limit-i,!v.eq_s_b(2,"en")))break;v.bra=v.cursor,c()&&v.slice_del();break;case 4:v.slice_del(),v.ket=v.cursor,e=v.find_among_b(b,2),e&&(v.bra=v.cursor,u()&&1==e&&v.slice_del())}}var d,l,m,h=[new r("",-1,6),new r("U",0,2),new r("Y",0,1),new r("ä",0,3),new r("ö",0,4),new r("ü",0,5)],w=[new r("e",-1,2),new r("em",-1,1),new r("en",-1,2),new r("ern",-1,1),new r("er",-1,1),new r("s",-1,3),new r("es",5,2)],f=[new r("en",-1,1),new r("er",-1,1),new r("st",-1,2),new r("est",2,1)],b=[new r("ig",-1,1),new r("lich",-1,1)],_=[new r("end",-1,1),new r("ig",-1,2),new r("ung",-1,1),new r("lich",-1,3),new r("isch",-1,2),new r("ik",-1,2),new r("heit",-1,3),new r("keit",-1,4)],p=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32,8],g=[117,30,5],k=[117,30,4],v=new n;this.setCurrent=function(e){v.setCurrent(e)},this.getCurrent=function(){return v.getCurrent()},this.stem=function(){var e=v.cursor;return i(),v.cursor=e,t(),v.limit_backward=e,v.cursor=v.limit,a(),v.cursor=v.limit_backward,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.de.stemmer,"stemmer-de"),e.de.stopWordFilter=e.generateStopWordFilter("aber alle allem allen aller alles als also am an ander andere anderem anderen anderer anderes anderm andern anderr anders auch auf aus bei bin bis bist da damit dann das dasselbe dazu daß dein deine deinem deinen deiner deines dem demselben den denn denselben der derer derselbe derselben des desselben dessen dich die dies diese dieselbe dieselben diesem diesen dieser dieses dir doch dort du durch ein eine einem einen einer eines einig einige einigem einigen einiger einiges einmal er es etwas euch euer eure eurem euren eurer eures für gegen gewesen hab habe haben hat hatte hatten hier hin hinter ich ihm ihn ihnen ihr ihre ihrem ihren ihrer ihres im in indem ins ist jede jedem jeden jeder jedes jene jenem jenen jener jenes jetzt kann kein keine keinem keinen keiner keines können könnte machen man manche manchem manchen mancher manches mein meine meinem meinen meiner meines mich mir mit muss musste nach nicht nichts noch nun nur ob oder ohne sehr sein seine seinem seinen seiner seines selbst sich sie sind so solche solchem solchen solcher solches soll sollte sondern sonst um und uns unse unsem unsen unser unses unter viel vom von vor war waren warst was weg weil weiter welche welchem welchen welcher welches wenn werde werden wie wieder will wir wird wirst wo wollen wollte während würde würden zu zum zur zwar zwischen über".split(" ")),e.Pipeline.registerFunction(e.de.stopWordFilter,"stopWordFilter-de")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.du.min.js b/assets/javascripts/lunr/min/lunr.du.min.js new file mode 100644 index 0000000..49a0f3f --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.du.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Dutch` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");console.warn('[Lunr Languages] Please use the "nl" instead of the "du". The "nl" code is the standard code for Dutch language, and "du" will be removed in the next major versions.'),e.du=function(){this.pipeline.reset(),this.pipeline.add(e.du.trimmer,e.du.stopWordFilter,e.du.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.du.stemmer))},e.du.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.du.trimmer=e.trimmerSupport.generateTrimmer(e.du.wordCharacters),e.Pipeline.registerFunction(e.du.trimmer,"trimmer-du"),e.du.stemmer=function(){var r=e.stemmerSupport.Among,i=e.stemmerSupport.SnowballProgram,n=new function(){function e(){for(var e,r,i,o=C.cursor;;){if(C.bra=C.cursor,e=C.find_among(b,11))switch(C.ket=C.cursor,e){case 1:C.slice_from("a");continue;case 2:C.slice_from("e");continue;case 3:C.slice_from("i");continue;case 4:C.slice_from("o");continue;case 5:C.slice_from("u");continue;case 6:if(C.cursor>=C.limit)break;C.cursor++;continue}break}for(C.cursor=o,C.bra=o,C.eq_s(1,"y")?(C.ket=C.cursor,C.slice_from("Y")):C.cursor=o;;)if(r=C.cursor,C.in_grouping(q,97,232)){if(i=C.cursor,C.bra=i,C.eq_s(1,"i"))C.ket=C.cursor,C.in_grouping(q,97,232)&&(C.slice_from("I"),C.cursor=r);else if(C.cursor=i,C.eq_s(1,"y"))C.ket=C.cursor,C.slice_from("Y"),C.cursor=r;else if(n(r))break}else if(n(r))break}function n(e){return C.cursor=e,e>=C.limit||(C.cursor++,!1)}function o(){_=C.limit,f=_,t()||(_=C.cursor,_<3&&(_=3),t()||(f=C.cursor))}function t(){for(;!C.in_grouping(q,97,232);){if(C.cursor>=C.limit)return!0;C.cursor++}for(;!C.out_grouping(q,97,232);){if(C.cursor>=C.limit)return!0;C.cursor++}return!1}function s(){for(var e;;)if(C.bra=C.cursor,e=C.find_among(p,3))switch(C.ket=C.cursor,e){case 1:C.slice_from("y");break;case 2:C.slice_from("i");break;case 3:if(C.cursor>=C.limit)return;C.cursor++}}function u(){return _<=C.cursor}function c(){return f<=C.cursor}function a(){var e=C.limit-C.cursor;C.find_among_b(g,3)&&(C.cursor=C.limit-e,C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,C.slice_del()))}function l(){var e;w=!1,C.ket=C.cursor,C.eq_s_b(1,"e")&&(C.bra=C.cursor,u()&&(e=C.limit-C.cursor,C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-e,C.slice_del(),w=!0,a())))}function m(){var e;u()&&(e=C.limit-C.cursor,C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-e,C.eq_s_b(3,"gem")||(C.cursor=C.limit-e,C.slice_del(),a())))}function d(){var e,r,i,n,o,t,s=C.limit-C.cursor;if(C.ket=C.cursor,e=C.find_among_b(h,5))switch(C.bra=C.cursor,e){case 1:u()&&C.slice_from("heid");break;case 2:m();break;case 3:u()&&C.out_grouping_b(z,97,232)&&C.slice_del()}if(C.cursor=C.limit-s,l(),C.cursor=C.limit-s,C.ket=C.cursor,C.eq_s_b(4,"heid")&&(C.bra=C.cursor,c()&&(r=C.limit-C.cursor,C.eq_s_b(1,"c")||(C.cursor=C.limit-r,C.slice_del(),C.ket=C.cursor,C.eq_s_b(2,"en")&&(C.bra=C.cursor,m())))),C.cursor=C.limit-s,C.ket=C.cursor,e=C.find_among_b(k,6))switch(C.bra=C.cursor,e){case 1:if(c()){if(C.slice_del(),i=C.limit-C.cursor,C.ket=C.cursor,C.eq_s_b(2,"ig")&&(C.bra=C.cursor,c()&&(n=C.limit-C.cursor,!C.eq_s_b(1,"e")))){C.cursor=C.limit-n,C.slice_del();break}C.cursor=C.limit-i,a()}break;case 2:c()&&(o=C.limit-C.cursor,C.eq_s_b(1,"e")||(C.cursor=C.limit-o,C.slice_del()));break;case 3:c()&&(C.slice_del(),l());break;case 4:c()&&C.slice_del();break;case 5:c()&&w&&C.slice_del()}C.cursor=C.limit-s,C.out_grouping_b(j,73,232)&&(t=C.limit-C.cursor,C.find_among_b(v,4)&&C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-t,C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,C.slice_del())))}var f,_,w,b=[new r("",-1,6),new r("á",0,1),new r("ä",0,1),new r("é",0,2),new r("ë",0,2),new r("í",0,3),new r("ï",0,3),new r("ó",0,4),new r("ö",0,4),new r("ú",0,5),new r("ü",0,5)],p=[new r("",-1,3),new r("I",0,2),new r("Y",0,1)],g=[new r("dd",-1,-1),new r("kk",-1,-1),new r("tt",-1,-1)],h=[new r("ene",-1,2),new r("se",-1,3),new r("en",-1,2),new r("heden",2,1),new r("s",-1,3)],k=[new r("end",-1,1),new r("ig",-1,2),new r("ing",-1,1),new r("lijk",-1,3),new r("baar",-1,4),new r("bar",-1,5)],v=[new r("aa",-1,-1),new r("ee",-1,-1),new r("oo",-1,-1),new r("uu",-1,-1)],q=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],j=[1,0,0,17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],z=[17,67,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],C=new i;this.setCurrent=function(e){C.setCurrent(e)},this.getCurrent=function(){return C.getCurrent()},this.stem=function(){var r=C.cursor;return e(),C.cursor=r,o(),C.limit_backward=r,C.cursor=C.limit,d(),C.cursor=C.limit_backward,s(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.du.stemmer,"stemmer-du"),e.du.stopWordFilter=e.generateStopWordFilter(" aan al alles als altijd andere ben bij daar dan dat de der deze die dit doch doen door dus een eens en er ge geen geweest haar had heb hebben heeft hem het hier hij hoe hun iemand iets ik in is ja je kan kon kunnen maar me meer men met mij mijn moet na naar niet niets nog nu of om omdat onder ons ook op over reeds te tegen toch toen tot u uit uw van veel voor want waren was wat werd wezen wie wil worden wordt zal ze zelf zich zij zijn zo zonder zou".split(" ")),e.Pipeline.registerFunction(e.du.stopWordFilter,"stopWordFilter-du")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.el.min.js b/assets/javascripts/lunr/min/lunr.el.min.js new file mode 100644 index 0000000..ace017b --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.el.min.js @@ -0,0 +1 @@ +!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():t()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.el=function(){this.pipeline.reset(),void 0===this.searchPipeline&&this.pipeline.add(e.el.trimmer,e.el.normilizer),this.pipeline.add(e.el.stopWordFilter,e.el.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.el.stemmer))},e.el.wordCharacters="A-Za-zΑαΒβΓγΔδΕεΖζΗηΘθΙιΚκΛλΜμΝνΞξΟοΠπΡρΣσςΤτΥυΦφΧχΨψΩωΆάΈέΉήΊίΌόΎύΏώΪΐΫΰΐΰ",e.el.trimmer=e.trimmerSupport.generateTrimmer(e.el.wordCharacters),e.Pipeline.registerFunction(e.el.trimmer,"trimmer-el"),e.el.stemmer=function(){function e(e){return s.test(e)}function t(e){return/[ΑΕΗΙΟΥΩ]$/.test(e)}function r(e){return/[ΑΕΗΙΟΩ]$/.test(e)}function n(n){var s=n;if(n.length<3)return s;if(!e(n))return s;if(i.indexOf(n)>=0)return s;var u=new RegExp("(.*)("+Object.keys(l).join("|")+")$"),o=u.exec(s);return null!==o&&(s=o[1]+l[o[2]]),null!==(o=/^(.+?)(ΑΔΕΣ|ΑΔΩΝ)$/.exec(s))&&(s=o[1],/(ΟΚ|ΜΑΜ|ΜΑΝ|ΜΠΑΜΠ|ΠΑΤΕΡ|ΓΙΑΓΙ|ΝΤΑΝΤ|ΚΥΡ|ΘΕΙ|ΠΕΘΕΡ|ΜΟΥΣΑΜ|ΚΑΠΛΑΜ|ΠΑΡ|ΨΑΡ|ΤΖΟΥΡ|ΤΑΜΠΟΥΡ|ΓΑΛΑΤ|ΦΑΦΛΑΤ)$/.test(o[1])||(s+="ΑΔ")),null!==(o=/^(.+?)(ΕΔΕΣ|ΕΔΩΝ)$/.exec(s))&&(s=o[1],/(ΟΠ|ΙΠ|ΕΜΠ|ΥΠ|ΓΗΠ|ΔΑΠ|ΚΡΑΣΠ|ΜΙΛ)$/.test(o[1])&&(s+="ΕΔ")),null!==(o=/^(.+?)(ΟΥΔΕΣ|ΟΥΔΩΝ)$/.exec(s))&&(s=o[1],/(ΑΡΚ|ΚΑΛΙΑΚ|ΠΕΤΑΛ|ΛΙΧ|ΠΛΕΞ|ΣΚ|Σ|ΦΛ|ΦΡ|ΒΕΛ|ΛΟΥΛ|ΧΝ|ΣΠ|ΤΡΑΓ|ΦΕ)$/.test(o[1])&&(s+="ΟΥΔ")),null!==(o=/^(.+?)(ΕΩΣ|ΕΩΝ|ΕΑΣ|ΕΑ)$/.exec(s))&&(s=o[1],/^(Θ|Δ|ΕΛ|ΓΑΛ|Ν|Π|ΙΔ|ΠΑΡ|ΣΤΕΡ|ΟΡΦ|ΑΝΔΡ|ΑΝΤΡ)$/.test(o[1])&&(s+="Ε")),null!==(o=/^(.+?)(ΕΙΟ|ΕΙΟΣ|ΕΙΟΙ|ΕΙΑ|ΕΙΑΣ|ΕΙΕΣ|ΕΙΟΥ|ΕΙΟΥΣ|ΕΙΩΝ)$/.exec(s))&&o[1].length>4&&(s=o[1]),null!==(o=/^(.+?)(ΙΟΥΣ|ΙΑΣ|ΙΕΣ|ΙΟΣ|ΙΟΥ|ΙΟΙ|ΙΩΝ|ΙΟΝ|ΙΑ|ΙΟ)$/.exec(s))&&(s=o[1],(t(s)||s.length<2||/^(ΑΓ|ΑΓΓΕΛ|ΑΓΡ|ΑΕΡ|ΑΘΛ|ΑΚΟΥΣ|ΑΞ|ΑΣ|Β|ΒΙΒΛ|ΒΥΤ|Γ|ΓΙΑΓ|ΓΩΝ|Δ|ΔΑΝ|ΔΗΛ|ΔΗΜ|ΔΟΚΙΜ|ΕΛ|ΖΑΧΑΡ|ΗΛ|ΗΠ|ΙΔ|ΙΣΚ|ΙΣΤ|ΙΟΝ|ΙΩΝ|ΚΙΜΩΛ|ΚΟΛΟΝ|ΚΟΡ|ΚΤΗΡ|ΚΥΡ|ΛΑΓ|ΛΟΓ|ΜΑΓ|ΜΠΑΝ|ΜΠΡ|ΝΑΥΤ|ΝΟΤ|ΟΠΑΛ|ΟΞ|ΟΡ|ΟΣ|ΠΑΝΑΓ|ΠΑΤΡ|ΠΗΛ|ΠΗΝ|ΠΛΑΙΣ|ΠΟΝΤ|ΡΑΔ|ΡΟΔ|ΣΚ|ΣΚΟΡΠ|ΣΟΥΝ|ΣΠΑΝ|ΣΤΑΔ|ΣΥΡ|ΤΗΛ|ΤΙΜ|ΤΟΚ|ΤΟΠ|ΤΡΟΧ|ΦΙΛ|ΦΩΤ|Χ|ΧΙΛ|ΧΡΩΜ|ΧΩΡ)$/.test(o[1]))&&(s+="Ι"),/^(ΠΑΛ)$/.test(o[1])&&(s+="ΑΙ")),null!==(o=/^(.+?)(ΙΚΟΣ|ΙΚΟΝ|ΙΚΕΙΣ|ΙΚΟΙ|ΙΚΕΣ|ΙΚΟΥΣ|ΙΚΗ|ΙΚΗΣ|ΙΚΟ|ΙΚΑ|ΙΚΟΥ|ΙΚΩΝ|ΙΚΩΣ)$/.exec(s))&&(s=o[1],(t(s)||/^(ΑΔ|ΑΛ|ΑΜΑΝ|ΑΜΕΡ|ΑΜΜΟΧΑΛ|ΑΝΗΘ|ΑΝΤΙΔ|ΑΠΛ|ΑΤΤ|ΑΦΡ|ΒΑΣ|ΒΡΩΜ|ΓΕΝ|ΓΕΡ|Δ|ΔΙΚΑΝ|ΔΥΤ|ΕΙΔ|ΕΝΔ|ΕΞΩΔ|ΗΘ|ΘΕΤ|ΚΑΛΛΙΝ|ΚΑΛΠ|ΚΑΤΑΔ|ΚΟΥΖΙΝ|ΚΡ|ΚΩΔ|ΛΟΓ|Μ|ΜΕΡ|ΜΟΝΑΔ|ΜΟΥΛ|ΜΟΥΣ|ΜΠΑΓΙΑΤ|ΜΠΑΝ|ΜΠΟΛ|ΜΠΟΣ|ΜΥΣΤ|Ν|ΝΙΤ|ΞΙΚ|ΟΠΤ|ΠΑΝ|ΠΕΤΣ|ΠΙΚΑΝΤ|ΠΙΤΣ|ΠΛΑΣΤ|ΠΛΙΑΤΣ|ΠΟΝΤ|ΠΟΣΤΕΛΝ|ΠΡΩΤΟΔ|ΣΕΡΤ|ΣΗΜΑΝΤ|ΣΤΑΤ|ΣΥΝΑΔ|ΣΥΝΟΜΗΛ|ΤΕΛ|ΤΕΧΝ|ΤΡΟΠ|ΤΣΑΜ|ΥΠΟΔ|Φ|ΦΙΛΟΝ|ΦΥΛΟΔ|ΦΥΣ|ΧΑΣ)$/.test(o[1])||/(ΦΟΙΝ)$/.test(o[1]))&&(s+="ΙΚ")),"ΑΓΑΜΕ"===s&&(s="ΑΓΑΜ"),null!==(o=/^(.+?)(ΑΓΑΜΕ|ΗΣΑΜΕ|ΟΥΣΑΜΕ|ΗΚΑΜΕ|ΗΘΗΚΑΜΕ)$/.exec(s))&&(s=o[1]),null!==(o=/^(.+?)(ΑΜΕ)$/.exec(s))&&(s=o[1],/^(ΑΝΑΠ|ΑΠΟΘ|ΑΠΟΚ|ΑΠΟΣΤ|ΒΟΥΒ|ΞΕΘ|ΟΥΛ|ΠΕΘ|ΠΙΚΡ|ΠΟΤ|ΣΙΧ|Χ)$/.test(o[1])&&(s+="ΑΜ")),null!==(o=/^(.+?)(ΑΓΑΝΕ|ΗΣΑΝΕ|ΟΥΣΑΝΕ|ΙΟΝΤΑΝΕ|ΙΟΤΑΝΕ|ΙΟΥΝΤΑΝΕ|ΟΝΤΑΝΕ|ΟΤΑΝΕ|ΟΥΝΤΑΝΕ|ΗΚΑΝΕ|ΗΘΗΚΑΝΕ)$/.exec(s))&&(s=o[1],/^(ΤΡ|ΤΣ)$/.test(o[1])&&(s+="ΑΓΑΝ")),null!==(o=/^(.+?)(ΑΝΕ)$/.exec(s))&&(s=o[1],(r(s)||/^(ΒΕΤΕΡ|ΒΟΥΛΚ|ΒΡΑΧΜ|Γ|ΔΡΑΔΟΥΜ|Θ|ΚΑΛΠΟΥΖ|ΚΑΣΤΕΛ|ΚΟΡΜΟΡ|ΛΑΟΠΛ|ΜΩΑΜΕΘ|Μ|ΜΟΥΣΟΥΛΜΑΝ|ΟΥΛ|Π|ΠΕΛΕΚ|ΠΛ|ΠΟΛΙΣ|ΠΟΡΤΟΛ|ΣΑΡΑΚΑΤΣ|ΣΟΥΛΤ|ΤΣΑΡΛΑΤ|ΟΡΦ|ΤΣΙΓΓ|ΤΣΟΠ|ΦΩΤΟΣΤΕΦ|Χ|ΨΥΧΟΠΛ|ΑΓ|ΟΡΦ|ΓΑΛ|ΓΕΡ|ΔΕΚ|ΔΙΠΛ|ΑΜΕΡΙΚΑΝ|ΟΥΡ|ΠΙΘ|ΠΟΥΡΙΤ|Σ|ΖΩΝΤ|ΙΚ|ΚΑΣΤ|ΚΟΠ|ΛΙΧ|ΛΟΥΘΗΡ|ΜΑΙΝΤ|ΜΕΛ|ΣΙΓ|ΣΠ|ΣΤΕΓ|ΤΡΑΓ|ΤΣΑΓ|Φ|ΕΡ|ΑΔΑΠ|ΑΘΙΓΓ|ΑΜΗΧ|ΑΝΙΚ|ΑΝΟΡΓ|ΑΠΗΓ|ΑΠΙΘ|ΑΤΣΙΓΓ|ΒΑΣ|ΒΑΣΚ|ΒΑΘΥΓΑΛ|ΒΙΟΜΗΧ|ΒΡΑΧΥΚ|ΔΙΑΤ|ΔΙΑΦ|ΕΝΟΡΓ|ΘΥΣ|ΚΑΠΝΟΒΙΟΜΗΧ|ΚΑΤΑΓΑΛ|ΚΛΙΒ|ΚΟΙΛΑΡΦ|ΛΙΒ|ΜΕΓΛΟΒΙΟΜΗΧ|ΜΙΚΡΟΒΙΟΜΗΧ|ΝΤΑΒ|ΞΗΡΟΚΛΙΒ|ΟΛΙΓΟΔΑΜ|ΟΛΟΓΑΛ|ΠΕΝΤΑΡΦ|ΠΕΡΗΦ|ΠΕΡΙΤΡ|ΠΛΑΤ|ΠΟΛΥΔΑΠ|ΠΟΛΥΜΗΧ|ΣΤΕΦ|ΤΑΒ|ΤΕΤ|ΥΠΕΡΗΦ|ΥΠΟΚΟΠ|ΧΑΜΗΛΟΔΑΠ|ΨΗΛΟΤΑΒ)$/.test(o[1]))&&(s+="ΑΝ")),null!==(o=/^(.+?)(ΗΣΕΤΕ)$/.exec(s))&&(s=o[1]),null!==(o=/^(.+?)(ΕΤΕ)$/.exec(s))&&(s=o[1],(r(s)||/(ΟΔ|ΑΙΡ|ΦΟΡ|ΤΑΘ|ΔΙΑΘ|ΣΧ|ΕΝΔ|ΕΥΡ|ΤΙΘ|ΥΠΕΡΘ|ΡΑΘ|ΕΝΘ|ΡΟΘ|ΣΘ|ΠΥΡ|ΑΙΝ|ΣΥΝΔ|ΣΥΝ|ΣΥΝΘ|ΧΩΡ|ΠΟΝ|ΒΡ|ΚΑΘ|ΕΥΘ|ΕΚΘ|ΝΕΤ|ΡΟΝ|ΑΡΚ|ΒΑΡ|ΒΟΛ|ΩΦΕΛ)$/.test(o[1])||/^(ΑΒΑΡ|ΒΕΝ|ΕΝΑΡ|ΑΒΡ|ΑΔ|ΑΘ|ΑΝ|ΑΠΛ|ΒΑΡΟΝ|ΝΤΡ|ΣΚ|ΚΟΠ|ΜΠΟΡ|ΝΙΦ|ΠΑΓ|ΠΑΡΑΚΑΛ|ΣΕΡΠ|ΣΚΕΛ|ΣΥΡΦ|ΤΟΚ|Υ|Δ|ΕΜ|ΘΑΡΡ|Θ)$/.test(o[1]))&&(s+="ΕΤ")),null!==(o=/^(.+?)(ΟΝΤΑΣ|ΩΝΤΑΣ)$/.exec(s))&&(s=o[1],/^ΑΡΧ$/.test(o[1])&&(s+="ΟΝΤ"),/ΚΡΕ$/.test(o[1])&&(s+="ΩΝΤ")),null!==(o=/^(.+?)(ΟΜΑΣΤΕ|ΙΟΜΑΣΤΕ)$/.exec(s))&&(s=o[1],/^ΟΝ$/.test(o[1])&&(s+="ΟΜΑΣΤ")),null!==(o=/^(.+?)(ΙΕΣΤΕ)$/.exec(s))&&(s=o[1],/^(Π|ΑΠ|ΣΥΜΠ|ΑΣΥΜΠ|ΑΚΑΤΑΠ|ΑΜΕΤΑΜΦ)$/.test(o[1])&&(s+="ΙΕΣΤ")),null!==(o=/^(.+?)(ΕΣΤΕ)$/.exec(s))&&(s=o[1],/^(ΑΛ|ΑΡ|ΕΚΤΕΛ|Ζ|Μ|Ξ|ΠΑΡΑΚΑΛ|ΠΡΟ|ΝΙΣ)$/.test(o[1])&&(s+="ΕΣΤ")),null!==(o=/^(.+?)(ΗΘΗΚΑ|ΗΘΗΚΕΣ|ΗΘΗΚΕ)$/.exec(s))&&(s=o[1]),null!==(o=/^(.+?)(ΗΚΑ|ΗΚΕΣ|ΗΚΕ)$/.exec(s))&&(s=o[1],(/(ΣΚΩΛ|ΣΚΟΥΛ|ΝΑΡΘ|ΣΦ|ΟΘ|ΠΙΘ)$/.test(o[1])||/^(ΔΙΑΘ|Θ|ΠΑΡΑΚΑΤΑΘ|ΠΡΟΣΘ|ΣΥΝΘ)$/.test(o[1]))&&(s+="ΗΚ")),null!==(o=/^(.+?)(ΟΥΣΑ|ΟΥΣΕΣ|ΟΥΣΕ)$/.exec(s))&&(s=o[1],(t(s)||/^(ΦΑΡΜΑΚ|ΧΑΔ|ΑΓΚ|ΑΝΑΡΡ|ΒΡΟΜ|ΕΚΛΙΠ|ΛΑΜΠΙΔ|ΛΕΧ|Μ|ΠΑΤ|Ρ|Λ|ΜΕΔ|ΜΕΣΑΖ|ΥΠΟΤΕΙΝ|ΑΜ|ΑΙΘ|ΑΝΗΚ|ΔΕΣΠΟΖ|ΕΝΔΙΑΦΕΡ)$/.test(o[1])||/(ΠΟΔΑΡ|ΒΛΕΠ|ΠΑΝΤΑΧ|ΦΡΥΔ|ΜΑΝΤΙΛ|ΜΑΛΛ|ΚΥΜΑΤ|ΛΑΧ|ΛΗΓ|ΦΑΓ|ΟΜ|ΠΡΩΤ)$/.test(o[1]))&&(s+="ΟΥΣ")),null!==(o=/^(.+?)(ΑΓΑ|ΑΓΕΣ|ΑΓΕ)$/.exec(s))&&(s=o[1],(/^(ΑΒΑΣΤ|ΠΟΛΥΦ|ΑΔΗΦ|ΠΑΜΦ|Ρ|ΑΣΠ|ΑΦ|ΑΜΑΛ|ΑΜΑΛΛΙ|ΑΝΥΣΤ|ΑΠΕΡ|ΑΣΠΑΡ|ΑΧΑΡ|ΔΕΡΒΕΝ|ΔΡΟΣΟΠ|ΞΕΦ|ΝΕΟΠ|ΝΟΜΟΤ|ΟΛΟΠ|ΟΜΟΤ|ΠΡΟΣΤ|ΠΡΟΣΩΠΟΠ|ΣΥΜΠ|ΣΥΝΤ|Τ|ΥΠΟΤ|ΧΑΡ|ΑΕΙΠ|ΑΙΜΟΣΤ|ΑΝΥΠ|ΑΠΟΤ|ΑΡΤΙΠ|ΔΙΑΤ|ΕΝ|ΕΠΙΤ|ΚΡΟΚΑΛΟΠ|ΣΙΔΗΡΟΠ|Λ|ΝΑΥ|ΟΥΛΑΜ|ΟΥΡ|Π|ΤΡ|Μ)$/.test(o[1])||/(ΟΦ|ΠΕΛ|ΧΟΡΤ|ΛΛ|ΣΦ|ΡΠ|ΦΡ|ΠΡ|ΛΟΧ|ΣΜΗΝ)$/.test(o[1])&&!/^(ΨΟΦ|ΝΑΥΛΟΧ)$/.test(o[1])||/(ΚΟΛΛ)$/.test(o[1]))&&(s+="ΑΓ")),null!==(o=/^(.+?)(ΗΣΕ|ΗΣΟΥ|ΗΣΑ)$/.exec(s))&&(s=o[1],/^(Ν|ΧΕΡΣΟΝ|ΔΩΔΕΚΑΝ|ΕΡΗΜΟΝ|ΜΕΓΑΛΟΝ|ΕΠΤΑΝ|Ι)$/.test(o[1])&&(s+="ΗΣ")),null!==(o=/^(.+?)(ΗΣΤΕ)$/.exec(s))&&(s=o[1],/^(ΑΣΒ|ΣΒ|ΑΧΡ|ΧΡ|ΑΠΛ|ΑΕΙΜΝ|ΔΥΣΧΡ|ΕΥΧΡ|ΚΟΙΝΟΧΡ|ΠΑΛΙΜΨ)$/.test(o[1])&&(s+="ΗΣΤ")),null!==(o=/^(.+?)(ΟΥΝΕ|ΗΣΟΥΝΕ|ΗΘΟΥΝΕ)$/.exec(s))&&(s=o[1],/^(Ν|Ρ|ΣΠΙ|ΣΤΡΑΒΟΜΟΥΤΣ|ΚΑΚΟΜΟΥΤΣ|ΕΞΩΝ)$/.test(o[1])&&(s+="ΟΥΝ")),null!==(o=/^(.+?)(ΟΥΜΕ|ΗΣΟΥΜΕ|ΗΘΟΥΜΕ)$/.exec(s))&&(s=o[1],/^(ΠΑΡΑΣΟΥΣ|Φ|Χ|ΩΡΙΟΠΛ|ΑΖ|ΑΛΛΟΣΟΥΣ|ΑΣΟΥΣ)$/.test(o[1])&&(s+="ΟΥΜ")),null!=(o=/^(.+?)(ΜΑΤΟΙ|ΜΑΤΟΥΣ|ΜΑΤΟ|ΜΑΤΑ|ΜΑΤΩΣ|ΜΑΤΩΝ|ΜΑΤΟΣ|ΜΑΤΕΣ|ΜΑΤΗ|ΜΑΤΗΣ|ΜΑΤΟΥ)$/.exec(s))&&(s=o[1]+"Μ",/^(ΓΡΑΜ)$/.test(o[1])?s+="Α":/^(ΓΕ|ΣΤΑ)$/.test(o[1])&&(s+="ΑΤ")),null!==(o=/^(.+?)(ΟΥΑ)$/.exec(s))&&(s=o[1]+"ΟΥ"),n.length===s.length&&null!==(o=/^(.+?)(Α|ΑΓΑΤΕ|ΑΓΑΝ|ΑΕΙ|ΑΜΑΙ|ΑΝ|ΑΣ|ΑΣΑΙ|ΑΤΑΙ|ΑΩ|Ε|ΕΙ|ΕΙΣ|ΕΙΤΕ|ΕΣΑΙ|ΕΣ|ΕΤΑΙ|Ι|ΙΕΜΑΙ|ΙΕΜΑΣΤΕ|ΙΕΤΑΙ|ΙΕΣΑΙ|ΙΕΣΑΣΤΕ|ΙΟΜΑΣΤΑΝ|ΙΟΜΟΥΝ|ΙΟΜΟΥΝΑ|ΙΟΝΤΑΝ|ΙΟΝΤΟΥΣΑΝ|ΙΟΣΑΣΤΑΝ|ΙΟΣΑΣΤΕ|ΙΟΣΟΥΝ|ΙΟΣΟΥΝΑ|ΙΟΤΑΝ|ΙΟΥΜΑ|ΙΟΥΜΑΣΤΕ|ΙΟΥΝΤΑΙ|ΙΟΥΝΤΑΝ|Η|ΗΔΕΣ|ΗΔΩΝ|ΗΘΕΙ|ΗΘΕΙΣ|ΗΘΕΙΤΕ|ΗΘΗΚΑΤΕ|ΗΘΗΚΑΝ|ΗΘΟΥΝ|ΗΘΩ|ΗΚΑΤΕ|ΗΚΑΝ|ΗΣ|ΗΣΑΝ|ΗΣΑΤΕ|ΗΣΕΙ|ΗΣΕΣ|ΗΣΟΥΝ|ΗΣΩ|Ο|ΟΙ|ΟΜΑΙ|ΟΜΑΣΤΑΝ|ΟΜΟΥΝ|ΟΜΟΥΝΑ|ΟΝΤΑΙ|ΟΝΤΑΝ|ΟΝΤΟΥΣΑΝ|ΟΣ|ΟΣΑΣΤΑΝ|ΟΣΑΣΤΕ|ΟΣΟΥΝ|ΟΣΟΥΝΑ|ΟΤΑΝ|ΟΥ|ΟΥΜΑΙ|ΟΥΜΑΣΤΕ|ΟΥΝ|ΟΥΝΤΑΙ|ΟΥΝΤΑΝ|ΟΥΣ|ΟΥΣΑΝ|ΟΥΣΑΤΕ|Υ||ΥΑ|ΥΣ|Ω|ΩΝ|ΟΙΣ)$/.exec(s))&&(s=o[1]),null!=(o=/^(.+?)(ΕΣΤΕΡ|ΕΣΤΑΤ|ΟΤΕΡ|ΟΤΑΤ|ΥΤΕΡ|ΥΤΑΤ|ΩΤΕΡ|ΩΤΑΤ)$/.exec(s))&&(/^(ΕΞ|ΕΣ|ΑΝ|ΚΑΤ|Κ|ΠΡ)$/.test(o[1])||(s=o[1]),/^(ΚΑ|Μ|ΕΛΕ|ΛΕ|ΔΕ)$/.test(o[1])&&(s+="ΥΤ")),s}var l={"ΦΑΓΙΑ":"ΦΑ","ΦΑΓΙΟΥ":"ΦΑ","ΦΑΓΙΩΝ":"ΦΑ","ΣΚΑΓΙΑ":"ΣΚΑ","ΣΚΑΓΙΟΥ":"ΣΚΑ","ΣΚΑΓΙΩΝ":"ΣΚΑ","ΣΟΓΙΟΥ":"ΣΟ","ΣΟΓΙΑ":"ΣΟ","ΣΟΓΙΩΝ":"ΣΟ","ΤΑΤΟΓΙΑ":"ΤΑΤΟ","ΤΑΤΟΓΙΟΥ":"ΤΑΤΟ","ΤΑΤΟΓΙΩΝ":"ΤΑΤΟ","ΚΡΕΑΣ":"ΚΡΕ","ΚΡΕΑΤΟΣ":"ΚΡΕ","ΚΡΕΑΤΑ":"ΚΡΕ","ΚΡΕΑΤΩΝ":"ΚΡΕ","ΠΕΡΑΣ":"ΠΕΡ","ΠΕΡΑΤΟΣ":"ΠΕΡ","ΠΕΡΑΤΑ":"ΠΕΡ","ΠΕΡΑΤΩΝ":"ΠΕΡ","ΤΕΡΑΣ":"ΤΕΡ","ΤΕΡΑΤΟΣ":"ΤΕΡ","ΤΕΡΑΤΑ":"ΤΕΡ","ΤΕΡΑΤΩΝ":"ΤΕΡ","ΦΩΣ":"ΦΩ","ΦΩΤΟΣ":"ΦΩ","ΦΩΤΑ":"ΦΩ","ΦΩΤΩΝ":"ΦΩ","ΚΑΘΕΣΤΩΣ":"ΚΑΘΕΣΤ","ΚΑΘΕΣΤΩΤΟΣ":"ΚΑΘΕΣΤ","ΚΑΘΕΣΤΩΤΑ":"ΚΑΘΕΣΤ","ΚΑΘΕΣΤΩΤΩΝ":"ΚΑΘΕΣΤ","ΓΕΓΟΝΟΣ":"ΓΕΓΟΝ","ΓΕΓΟΝΟΤΟΣ":"ΓΕΓΟΝ","ΓΕΓΟΝΟΤΑ":"ΓΕΓΟΝ","ΓΕΓΟΝΟΤΩΝ":"ΓΕΓΟΝ","ΕΥΑ":"ΕΥ"},i=["ΑΚΡΙΒΩΣ","ΑΛΑ","ΑΛΛΑ","ΑΛΛΙΩΣ","ΑΛΛΟΤΕ","ΑΜΑ","ΑΝΩ","ΑΝΑ","ΑΝΑΜΕΣΑ","ΑΝΑΜΕΤΑΞΥ","ΑΝΕΥ","ΑΝΤΙ","ΑΝΤΙΠΕΡΑ","ΑΝΤΙΟ","ΑΞΑΦΝΑ","ΑΠΟ","ΑΠΟΨΕ","ΑΡΑ","ΑΡΑΓΕ","ΑΥΡΙΟ","ΑΦΟΙ","ΑΦΟΥ","ΑΦΟΤΟΥ","ΒΡΕ","ΓΕΙΑ","ΓΙΑ","ΓΙΑΤΙ","ΓΡΑΜΜΑ","ΔΕΗ","ΔΕΝ","ΔΗΛΑΔΗ","ΔΙΧΩΣ","ΔΥΟ","ΕΑΝ","ΕΓΩ","ΕΔΩ","ΕΔΑ","ΕΙΘΕ","ΕΙΜΑΙ","ΕΙΜΑΣΤΕ","ΕΙΣΑΙ","ΕΙΣΑΣΤΕ","ΕΙΝΑΙ","ΕΙΣΤΕ","ΕΙΤΕ","ΕΚΕΙ","ΕΚΟ","ΕΛΑ","ΕΜΑΣ","ΕΜΕΙΣ","ΕΝΤΕΛΩΣ","ΕΝΤΟΣ","ΕΝΤΩΜΕΤΑΞΥ","ΕΝΩ","ΕΞΙ","ΕΞΙΣΟΥ","ΕΞΗΣ","ΕΞΩ","ΕΟΚ","ΕΠΑΝΩ","ΕΠΕΙΔΗ","ΕΠΕΙΤΑ","ΕΠΙ","ΕΠΙΣΗΣ","ΕΠΟΜΕΝΩΣ","ΕΠΤΑ","ΕΣΑΣ","ΕΣΕΙΣ","ΕΣΤΩ","ΕΣΥ","ΕΣΩ","ΕΤΣΙ","ΕΥΓΕ","ΕΦΕ","ΕΦΕΞΗΣ","ΕΧΤΕΣ","ΕΩΣ","ΗΔΗ","ΗΜΙ","ΗΠΑ","ΗΤΟΙ","ΘΕΣ","ΙΔΙΩΣ","ΙΔΗ","ΙΚΑ","ΙΣΩΣ","ΚΑΘΕ","ΚΑΘΕΤΙ","ΚΑΘΟΛΟΥ","ΚΑΘΩΣ","ΚΑΙ","ΚΑΝ","ΚΑΠΟΤΕ","ΚΑΠΟΥ","ΚΑΤΑ","ΚΑΤΙ","ΚΑΤΟΠΙΝ","ΚΑΤΩ","ΚΕΙ","ΚΙΧ","ΚΚΕ","ΚΟΛΑΝ","ΚΥΡΙΩΣ","ΚΩΣ","ΜΑΚΑΡΙ","ΜΑΛΙΣΤΑ","ΜΑΛΛΟΝ","ΜΑΙ","ΜΑΟ","ΜΑΟΥΣ","ΜΑΣ","ΜΕΘΑΥΡΙΟ","ΜΕΣ","ΜΕΣΑ","ΜΕΤΑ","ΜΕΤΑΞΥ","ΜΕΧΡΙ","ΜΗΔΕ","ΜΗΝ","ΜΗΠΩΣ","ΜΗΤΕ","ΜΙΑ","ΜΙΑΣ","ΜΙΣ","ΜΜΕ","ΜΟΛΟΝΟΤΙ","ΜΟΥ","ΜΠΑ","ΜΠΑΣ","ΜΠΟΥΦΑΝ","ΜΠΡΟΣ","ΝΑΙ","ΝΕΣ","ΝΤΑ","ΝΤΕ","ΞΑΝΑ","ΟΗΕ","ΟΚΤΩ","ΟΜΩΣ","ΟΝΕ","ΟΠΑ","ΟΠΟΥ","ΟΠΩΣ","ΟΣΟ","ΟΤΑΝ","ΟΤΕ","ΟΤΙ","ΟΥΤΕ","ΟΧΙ","ΠΑΛΙ","ΠΑΝ","ΠΑΝΟ","ΠΑΝΤΟΤΕ","ΠΑΝΤΟΥ","ΠΑΝΤΩΣ","ΠΑΝΩ","ΠΑΡΑ","ΠΕΡΑ","ΠΕΡΙ","ΠΕΡΙΠΟΥ","ΠΙΑ","ΠΙΟ","ΠΙΣΩ","ΠΛΑΙ","ΠΛΕΟΝ","ΠΛΗΝ","ΠΟΤΕ","ΠΟΥ","ΠΡΟ","ΠΡΟΣ","ΠΡΟΧΤΕΣ","ΠΡΟΧΘΕΣ","ΡΟΔΙ","ΠΩΣ","ΣΑΙ","ΣΑΣ","ΣΑΝ","ΣΕΙΣ","ΣΙΑ","ΣΚΙ","ΣΟΙ","ΣΟΥ","ΣΡΙ","ΣΥΝ","ΣΥΝΑΜΑ","ΣΧΕΔΟΝ","ΤΑΔΕ","ΤΑΞΙ","ΤΑΧΑ","ΤΕΙ","ΤΗΝ","ΤΗΣ","ΤΙΠΟΤΑ","ΤΙΠΟΤΕ","ΤΙΣ","ΤΟΝ","ΤΟΤΕ","ΤΟΥ","ΤΟΥΣ","ΤΣΑ","ΤΣΕ","ΤΣΙ","ΤΣΟΥ","ΤΩΝ","ΥΠΟ","ΥΠΟΨΗ","ΥΠΟΨΙΝ","ΥΣΤΕΡΑ","ΦΕΤΟΣ","ΦΙΣ","ΦΠΑ","ΧΑΦ","ΧΘΕΣ","ΧΤΕΣ","ΧΩΡΙΣ","ΩΣ","ΩΣΑΝ","ΩΣΟΤΟΥ","ΩΣΠΟΥ","ΩΣΤΕ","ΩΣΤΟΣΟ"],s=new RegExp("^[ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ]+$");return function(e){return"function"==typeof e.update?e.update(function(e){return n(e.toUpperCase()).toLowerCase()}):n(e.toUpperCase()).toLowerCase()}}(),e.Pipeline.registerFunction(e.el.stemmer,"stemmer-el"),e.el.stopWordFilter=e.generateStopWordFilter("αλλα αν αντι απο αυτα αυτεσ αυτη αυτο αυτοι αυτοσ αυτουσ αυτων για δε δεν εαν ειμαι ειμαστε ειναι εισαι ειστε εκεινα εκεινεσ εκεινη εκεινο εκεινοι εκεινοσ εκεινουσ εκεινων ενω επι η θα ισωσ κ και κατα κι μα με μετα μη μην να ο οι ομωσ οπωσ οσο οτι παρα ποια ποιεσ ποιο ποιοι ποιοσ ποιουσ ποιων που προσ πωσ σε στη στην στο στον τα την τησ το τον τοτε του των ωσ".split(" ")),e.Pipeline.registerFunction(e.el.stopWordFilter,"stopWordFilter-el"),e.el.normilizer=function(){var e={"Ά":"Α","ά":"α","Έ":"Ε","έ":"ε","Ή":"Η","ή":"η","Ί":"Ι","ί":"ι","Ό":"Ο","ο":"ο","Ύ":"Υ","ύ":"υ","Ώ":"Ω","ώ":"ω","Ϊ":"Ι","ϊ":"ι","Ϋ":"Υ","ϋ":"υ","ΐ":"ι","ΰ":"υ"};return function(t){if("function"==typeof t.update)return t.update(function(t){for(var r="",n=0;n=A.limit)return!0;A.cursor++}return!1}return!0}function n(){if(A.in_grouping(x,97,252)){var s=A.cursor;if(e()){if(A.cursor=s,!A.in_grouping(x,97,252))return!0;for(;!A.out_grouping(x,97,252);){if(A.cursor>=A.limit)return!0;A.cursor++}}return!1}return!0}function i(){var s,r=A.cursor;if(n()){if(A.cursor=r,!A.out_grouping(x,97,252))return;if(s=A.cursor,e()){if(A.cursor=s,!A.in_grouping(x,97,252)||A.cursor>=A.limit)return;A.cursor++}}g=A.cursor}function a(){for(;!A.in_grouping(x,97,252);){if(A.cursor>=A.limit)return!1;A.cursor++}for(;!A.out_grouping(x,97,252);){if(A.cursor>=A.limit)return!1;A.cursor++}return!0}function t(){var e=A.cursor;g=A.limit,p=g,v=g,i(),A.cursor=e,a()&&(p=A.cursor,a()&&(v=A.cursor))}function o(){for(var e;;){if(A.bra=A.cursor,e=A.find_among(k,6))switch(A.ket=A.cursor,e){case 1:A.slice_from("a");continue;case 2:A.slice_from("e");continue;case 3:A.slice_from("i");continue;case 4:A.slice_from("o");continue;case 5:A.slice_from("u");continue;case 6:if(A.cursor>=A.limit)break;A.cursor++;continue}break}}function u(){return g<=A.cursor}function w(){return p<=A.cursor}function c(){return v<=A.cursor}function m(){var e;if(A.ket=A.cursor,A.find_among_b(y,13)&&(A.bra=A.cursor,(e=A.find_among_b(q,11))&&u()))switch(e){case 1:A.bra=A.cursor,A.slice_from("iendo");break;case 2:A.bra=A.cursor,A.slice_from("ando");break;case 3:A.bra=A.cursor,A.slice_from("ar");break;case 4:A.bra=A.cursor,A.slice_from("er");break;case 5:A.bra=A.cursor,A.slice_from("ir");break;case 6:A.slice_del();break;case 7:A.eq_s_b(1,"u")&&A.slice_del()}}function l(e,s){if(!c())return!0;A.slice_del(),A.ket=A.cursor;var r=A.find_among_b(e,s);return r&&(A.bra=A.cursor,1==r&&c()&&A.slice_del()),!1}function d(e){return!c()||(A.slice_del(),A.ket=A.cursor,A.eq_s_b(2,e)&&(A.bra=A.cursor,c()&&A.slice_del()),!1)}function b(){var e;if(A.ket=A.cursor,e=A.find_among_b(S,46)){switch(A.bra=A.cursor,e){case 1:if(!c())return!1;A.slice_del();break;case 2:if(d("ic"))return!1;break;case 3:if(!c())return!1;A.slice_from("log");break;case 4:if(!c())return!1;A.slice_from("u");break;case 5:if(!c())return!1;A.slice_from("ente");break;case 6:if(!w())return!1;A.slice_del(),A.ket=A.cursor,e=A.find_among_b(C,4),e&&(A.bra=A.cursor,c()&&(A.slice_del(),1==e&&(A.ket=A.cursor,A.eq_s_b(2,"at")&&(A.bra=A.cursor,c()&&A.slice_del()))));break;case 7:if(l(P,3))return!1;break;case 8:if(l(F,3))return!1;break;case 9:if(d("at"))return!1}return!0}return!1}function f(){var e,s;if(A.cursor>=g&&(s=A.limit_backward,A.limit_backward=g,A.ket=A.cursor,e=A.find_among_b(W,12),A.limit_backward=s,e)){if(A.bra=A.cursor,1==e){if(!A.eq_s_b(1,"u"))return!1;A.slice_del()}return!0}return!1}function _(){var e,s,r,n;if(A.cursor>=g&&(s=A.limit_backward,A.limit_backward=g,A.ket=A.cursor,e=A.find_among_b(L,96),A.limit_backward=s,e))switch(A.bra=A.cursor,e){case 1:r=A.limit-A.cursor,A.eq_s_b(1,"u")?(n=A.limit-A.cursor,A.eq_s_b(1,"g")?A.cursor=A.limit-n:A.cursor=A.limit-r):A.cursor=A.limit-r,A.bra=A.cursor;case 2:A.slice_del()}}function h(){var e,s;if(A.ket=A.cursor,e=A.find_among_b(z,8))switch(A.bra=A.cursor,e){case 1:u()&&A.slice_del();break;case 2:u()&&(A.slice_del(),A.ket=A.cursor,A.eq_s_b(1,"u")&&(A.bra=A.cursor,s=A.limit-A.cursor,A.eq_s_b(1,"g")&&(A.cursor=A.limit-s,u()&&A.slice_del())))}}var v,p,g,k=[new s("",-1,6),new s("á",0,1),new s("é",0,2),new s("í",0,3),new s("ó",0,4),new s("ú",0,5)],y=[new s("la",-1,-1),new s("sela",0,-1),new s("le",-1,-1),new s("me",-1,-1),new s("se",-1,-1),new s("lo",-1,-1),new s("selo",5,-1),new s("las",-1,-1),new s("selas",7,-1),new s("les",-1,-1),new s("los",-1,-1),new s("selos",10,-1),new s("nos",-1,-1)],q=[new s("ando",-1,6),new s("iendo",-1,6),new s("yendo",-1,7),new s("ándo",-1,2),new s("iéndo",-1,1),new s("ar",-1,6),new s("er",-1,6),new s("ir",-1,6),new s("ár",-1,3),new s("ér",-1,4),new s("ír",-1,5)],C=[new s("ic",-1,-1),new s("ad",-1,-1),new s("os",-1,-1),new s("iv",-1,1)],P=[new s("able",-1,1),new s("ible",-1,1),new s("ante",-1,1)],F=[new s("ic",-1,1),new s("abil",-1,1),new s("iv",-1,1)],S=[new s("ica",-1,1),new s("ancia",-1,2),new s("encia",-1,5),new s("adora",-1,2),new s("osa",-1,1),new s("ista",-1,1),new s("iva",-1,9),new s("anza",-1,1),new s("logía",-1,3),new s("idad",-1,8),new s("able",-1,1),new s("ible",-1,1),new s("ante",-1,2),new s("mente",-1,7),new s("amente",13,6),new s("ación",-1,2),new s("ución",-1,4),new s("ico",-1,1),new s("ismo",-1,1),new s("oso",-1,1),new s("amiento",-1,1),new s("imiento",-1,1),new s("ivo",-1,9),new s("ador",-1,2),new s("icas",-1,1),new s("ancias",-1,2),new s("encias",-1,5),new s("adoras",-1,2),new s("osas",-1,1),new s("istas",-1,1),new s("ivas",-1,9),new s("anzas",-1,1),new s("logías",-1,3),new s("idades",-1,8),new s("ables",-1,1),new s("ibles",-1,1),new s("aciones",-1,2),new s("uciones",-1,4),new s("adores",-1,2),new s("antes",-1,2),new s("icos",-1,1),new s("ismos",-1,1),new s("osos",-1,1),new s("amientos",-1,1),new s("imientos",-1,1),new s("ivos",-1,9)],W=[new s("ya",-1,1),new s("ye",-1,1),new s("yan",-1,1),new s("yen",-1,1),new s("yeron",-1,1),new s("yendo",-1,1),new s("yo",-1,1),new s("yas",-1,1),new s("yes",-1,1),new s("yais",-1,1),new s("yamos",-1,1),new s("yó",-1,1)],L=[new s("aba",-1,2),new s("ada",-1,2),new s("ida",-1,2),new s("ara",-1,2),new s("iera",-1,2),new s("ía",-1,2),new s("aría",5,2),new s("ería",5,2),new s("iría",5,2),new s("ad",-1,2),new s("ed",-1,2),new s("id",-1,2),new s("ase",-1,2),new s("iese",-1,2),new s("aste",-1,2),new s("iste",-1,2),new s("an",-1,2),new s("aban",16,2),new s("aran",16,2),new s("ieran",16,2),new s("ían",16,2),new s("arían",20,2),new s("erían",20,2),new s("irían",20,2),new s("en",-1,1),new s("asen",24,2),new s("iesen",24,2),new s("aron",-1,2),new s("ieron",-1,2),new s("arán",-1,2),new s("erán",-1,2),new s("irán",-1,2),new s("ado",-1,2),new s("ido",-1,2),new s("ando",-1,2),new s("iendo",-1,2),new s("ar",-1,2),new s("er",-1,2),new s("ir",-1,2),new s("as",-1,2),new s("abas",39,2),new s("adas",39,2),new s("idas",39,2),new s("aras",39,2),new s("ieras",39,2),new s("ías",39,2),new s("arías",45,2),new s("erías",45,2),new s("irías",45,2),new s("es",-1,1),new s("ases",49,2),new s("ieses",49,2),new s("abais",-1,2),new s("arais",-1,2),new s("ierais",-1,2),new s("íais",-1,2),new s("aríais",55,2),new s("eríais",55,2),new s("iríais",55,2),new s("aseis",-1,2),new s("ieseis",-1,2),new s("asteis",-1,2),new s("isteis",-1,2),new s("áis",-1,2),new s("éis",-1,1),new s("aréis",64,2),new s("eréis",64,2),new s("iréis",64,2),new s("ados",-1,2),new s("idos",-1,2),new s("amos",-1,2),new s("ábamos",70,2),new s("áramos",70,2),new s("iéramos",70,2),new s("íamos",70,2),new s("aríamos",74,2),new s("eríamos",74,2),new s("iríamos",74,2),new s("emos",-1,1),new s("aremos",78,2),new s("eremos",78,2),new s("iremos",78,2),new s("ásemos",78,2),new s("iésemos",78,2),new s("imos",-1,2),new s("arás",-1,2),new s("erás",-1,2),new s("irás",-1,2),new s("ís",-1,2),new s("ará",-1,2),new s("erá",-1,2),new s("irá",-1,2),new s("aré",-1,2),new s("eré",-1,2),new s("iré",-1,2),new s("ió",-1,2)],z=[new s("a",-1,1),new s("e",-1,2),new s("o",-1,1),new s("os",-1,1),new s("á",-1,1),new s("é",-1,2),new s("í",-1,1),new s("ó",-1,1)],x=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,4,10],A=new r;this.setCurrent=function(e){A.setCurrent(e)},this.getCurrent=function(){return A.getCurrent()},this.stem=function(){var e=A.cursor;return t(),A.limit_backward=e,A.cursor=A.limit,m(),A.cursor=A.limit,b()||(A.cursor=A.limit,f()||(A.cursor=A.limit,_())),A.cursor=A.limit,h(),A.cursor=A.limit_backward,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.es.stemmer,"stemmer-es"),e.es.stopWordFilter=e.generateStopWordFilter("a al algo algunas algunos ante antes como con contra cual cuando de del desde donde durante e el ella ellas ellos en entre era erais eran eras eres es esa esas ese eso esos esta estaba estabais estaban estabas estad estada estadas estado estados estamos estando estar estaremos estará estarán estarás estaré estaréis estaría estaríais estaríamos estarían estarías estas este estemos esto estos estoy estuve estuviera estuvierais estuvieran estuvieras estuvieron estuviese estuvieseis estuviesen estuvieses estuvimos estuviste estuvisteis estuviéramos estuviésemos estuvo está estábamos estáis están estás esté estéis estén estés fue fuera fuerais fueran fueras fueron fuese fueseis fuesen fueses fui fuimos fuiste fuisteis fuéramos fuésemos ha habida habidas habido habidos habiendo habremos habrá habrán habrás habré habréis habría habríais habríamos habrían habrías habéis había habíais habíamos habían habías han has hasta hay haya hayamos hayan hayas hayáis he hemos hube hubiera hubierais hubieran hubieras hubieron hubiese hubieseis hubiesen hubieses hubimos hubiste hubisteis hubiéramos hubiésemos hubo la las le les lo los me mi mis mucho muchos muy más mí mía mías mío míos nada ni no nos nosotras nosotros nuestra nuestras nuestro nuestros o os otra otras otro otros para pero poco por porque que quien quienes qué se sea seamos sean seas seremos será serán serás seré seréis sería seríais seríamos serían serías seáis sido siendo sin sobre sois somos son soy su sus suya suyas suyo suyos sí también tanto te tendremos tendrá tendrán tendrás tendré tendréis tendría tendríais tendríamos tendrían tendrías tened tenemos tenga tengamos tengan tengas tengo tengáis tenida tenidas tenido tenidos teniendo tenéis tenía teníais teníamos tenían tenías ti tiene tienen tienes todo todos tu tus tuve tuviera tuvierais tuvieran tuvieras tuvieron tuviese tuvieseis tuviesen tuvieses tuvimos tuviste tuvisteis tuviéramos tuviésemos tuvo tuya tuyas tuyo tuyos tú un una uno unos vosotras vosotros vuestra vuestras vuestro vuestros y ya yo él éramos".split(" ")),e.Pipeline.registerFunction(e.es.stopWordFilter,"stopWordFilter-es")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.fi.min.js b/assets/javascripts/lunr/min/lunr.fi.min.js new file mode 100644 index 0000000..29f5dfc --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.fi.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Finnish` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(i,e){"function"==typeof define&&define.amd?define(e):"object"==typeof exports?module.exports=e():e()(i.lunr)}(this,function(){return function(i){if(void 0===i)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===i.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");i.fi=function(){this.pipeline.reset(),this.pipeline.add(i.fi.trimmer,i.fi.stopWordFilter,i.fi.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(i.fi.stemmer))},i.fi.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",i.fi.trimmer=i.trimmerSupport.generateTrimmer(i.fi.wordCharacters),i.Pipeline.registerFunction(i.fi.trimmer,"trimmer-fi"),i.fi.stemmer=function(){var e=i.stemmerSupport.Among,r=i.stemmerSupport.SnowballProgram,n=new function(){function i(){f=A.limit,d=f,n()||(f=A.cursor,n()||(d=A.cursor))}function n(){for(var i;;){if(i=A.cursor,A.in_grouping(W,97,246))break;if(A.cursor=i,i>=A.limit)return!0;A.cursor++}for(A.cursor=i;!A.out_grouping(W,97,246);){if(A.cursor>=A.limit)return!0;A.cursor++}return!1}function t(){return d<=A.cursor}function s(){var i,e;if(A.cursor>=f)if(e=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,i=A.find_among_b(h,10)){switch(A.bra=A.cursor,A.limit_backward=e,i){case 1:if(!A.in_grouping_b(x,97,246))return;break;case 2:if(!t())return}A.slice_del()}else A.limit_backward=e}function o(){var i,e,r;if(A.cursor>=f)if(e=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,i=A.find_among_b(v,9))switch(A.bra=A.cursor,A.limit_backward=e,i){case 1:r=A.limit-A.cursor,A.eq_s_b(1,"k")||(A.cursor=A.limit-r,A.slice_del());break;case 2:A.slice_del(),A.ket=A.cursor,A.eq_s_b(3,"kse")&&(A.bra=A.cursor,A.slice_from("ksi"));break;case 3:A.slice_del();break;case 4:A.find_among_b(p,6)&&A.slice_del();break;case 5:A.find_among_b(g,6)&&A.slice_del();break;case 6:A.find_among_b(j,2)&&A.slice_del()}else A.limit_backward=e}function l(){return A.find_among_b(q,7)}function a(){return A.eq_s_b(1,"i")&&A.in_grouping_b(L,97,246)}function u(){var i,e,r;if(A.cursor>=f)if(e=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,i=A.find_among_b(C,30)){switch(A.bra=A.cursor,A.limit_backward=e,i){case 1:if(!A.eq_s_b(1,"a"))return;break;case 2:case 9:if(!A.eq_s_b(1,"e"))return;break;case 3:if(!A.eq_s_b(1,"i"))return;break;case 4:if(!A.eq_s_b(1,"o"))return;break;case 5:if(!A.eq_s_b(1,"ä"))return;break;case 6:if(!A.eq_s_b(1,"ö"))return;break;case 7:if(r=A.limit-A.cursor,!l()&&(A.cursor=A.limit-r,!A.eq_s_b(2,"ie"))){A.cursor=A.limit-r;break}if(A.cursor=A.limit-r,A.cursor<=A.limit_backward){A.cursor=A.limit-r;break}A.cursor--,A.bra=A.cursor;break;case 8:if(!A.in_grouping_b(W,97,246)||!A.out_grouping_b(W,97,246))return}A.slice_del(),k=!0}else A.limit_backward=e}function c(){var i,e,r;if(A.cursor>=d)if(e=A.limit_backward,A.limit_backward=d,A.ket=A.cursor,i=A.find_among_b(P,14)){if(A.bra=A.cursor,A.limit_backward=e,1==i){if(r=A.limit-A.cursor,A.eq_s_b(2,"po"))return;A.cursor=A.limit-r}A.slice_del()}else A.limit_backward=e}function m(){var i;A.cursor>=f&&(i=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,A.find_among_b(F,2)?(A.bra=A.cursor,A.limit_backward=i,A.slice_del()):A.limit_backward=i)}function w(){var i,e,r,n,t,s;if(A.cursor>=f){if(e=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,A.eq_s_b(1,"t")&&(A.bra=A.cursor,r=A.limit-A.cursor,A.in_grouping_b(W,97,246)&&(A.cursor=A.limit-r,A.slice_del(),A.limit_backward=e,n=A.limit-A.cursor,A.cursor>=d&&(A.cursor=d,t=A.limit_backward,A.limit_backward=A.cursor,A.cursor=A.limit-n,A.ket=A.cursor,i=A.find_among_b(S,2))))){if(A.bra=A.cursor,A.limit_backward=t,1==i){if(s=A.limit-A.cursor,A.eq_s_b(2,"po"))return;A.cursor=A.limit-s}return void A.slice_del()}A.limit_backward=e}}function _(){var i,e,r,n;if(A.cursor>=f){for(i=A.limit_backward,A.limit_backward=f,e=A.limit-A.cursor,l()&&(A.cursor=A.limit-e,A.ket=A.cursor,A.cursor>A.limit_backward&&(A.cursor--,A.bra=A.cursor,A.slice_del())),A.cursor=A.limit-e,A.ket=A.cursor,A.in_grouping_b(y,97,228)&&(A.bra=A.cursor,A.out_grouping_b(W,97,246)&&A.slice_del()),A.cursor=A.limit-e,A.ket=A.cursor,A.eq_s_b(1,"j")&&(A.bra=A.cursor,r=A.limit-A.cursor,A.eq_s_b(1,"o")?A.slice_del():(A.cursor=A.limit-r,A.eq_s_b(1,"u")&&A.slice_del())),A.cursor=A.limit-e,A.ket=A.cursor,A.eq_s_b(1,"o")&&(A.bra=A.cursor,A.eq_s_b(1,"j")&&A.slice_del()),A.cursor=A.limit-e,A.limit_backward=i;;){if(n=A.limit-A.cursor,A.out_grouping_b(W,97,246)){A.cursor=A.limit-n;break}if(A.cursor=A.limit-n,A.cursor<=A.limit_backward)return;A.cursor--}A.ket=A.cursor,A.cursor>A.limit_backward&&(A.cursor--,A.bra=A.cursor,b=A.slice_to(),A.eq_v_b(b)&&A.slice_del())}}var k,b,d,f,h=[new e("pa",-1,1),new e("sti",-1,2),new e("kaan",-1,1),new e("han",-1,1),new e("kin",-1,1),new e("hän",-1,1),new e("kään",-1,1),new e("ko",-1,1),new e("pä",-1,1),new e("kö",-1,1)],p=[new e("lla",-1,-1),new e("na",-1,-1),new e("ssa",-1,-1),new e("ta",-1,-1),new e("lta",3,-1),new e("sta",3,-1)],g=[new e("llä",-1,-1),new e("nä",-1,-1),new e("ssä",-1,-1),new e("tä",-1,-1),new e("ltä",3,-1),new e("stä",3,-1)],j=[new e("lle",-1,-1),new e("ine",-1,-1)],v=[new e("nsa",-1,3),new e("mme",-1,3),new e("nne",-1,3),new e("ni",-1,2),new e("si",-1,1),new e("an",-1,4),new e("en",-1,6),new e("än",-1,5),new e("nsä",-1,3)],q=[new e("aa",-1,-1),new e("ee",-1,-1),new e("ii",-1,-1),new e("oo",-1,-1),new e("uu",-1,-1),new e("ää",-1,-1),new e("öö",-1,-1)],C=[new e("a",-1,8),new e("lla",0,-1),new e("na",0,-1),new e("ssa",0,-1),new e("ta",0,-1),new e("lta",4,-1),new e("sta",4,-1),new e("tta",4,9),new e("lle",-1,-1),new e("ine",-1,-1),new e("ksi",-1,-1),new e("n",-1,7),new e("han",11,1),new e("den",11,-1,a),new e("seen",11,-1,l),new e("hen",11,2),new e("tten",11,-1,a),new e("hin",11,3),new e("siin",11,-1,a),new e("hon",11,4),new e("hän",11,5),new e("hön",11,6),new e("ä",-1,8),new e("llä",22,-1),new e("nä",22,-1),new e("ssä",22,-1),new e("tä",22,-1),new e("ltä",26,-1),new e("stä",26,-1),new e("ttä",26,9)],P=[new e("eja",-1,-1),new e("mma",-1,1),new e("imma",1,-1),new e("mpa",-1,1),new e("impa",3,-1),new e("mmi",-1,1),new e("immi",5,-1),new e("mpi",-1,1),new e("impi",7,-1),new e("ejä",-1,-1),new e("mmä",-1,1),new e("immä",10,-1),new e("mpä",-1,1),new e("impä",12,-1)],F=[new e("i",-1,-1),new e("j",-1,-1)],S=[new e("mma",-1,1),new e("imma",0,-1)],y=[17,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8],W=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],L=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],x=[17,97,24,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],A=new r;this.setCurrent=function(i){A.setCurrent(i)},this.getCurrent=function(){return A.getCurrent()},this.stem=function(){var e=A.cursor;return i(),k=!1,A.limit_backward=e,A.cursor=A.limit,s(),A.cursor=A.limit,o(),A.cursor=A.limit,u(),A.cursor=A.limit,c(),A.cursor=A.limit,k?(m(),A.cursor=A.limit):(A.cursor=A.limit,w(),A.cursor=A.limit),_(),!0}};return function(i){return"function"==typeof i.update?i.update(function(i){return n.setCurrent(i),n.stem(),n.getCurrent()}):(n.setCurrent(i),n.stem(),n.getCurrent())}}(),i.Pipeline.registerFunction(i.fi.stemmer,"stemmer-fi"),i.fi.stopWordFilter=i.generateStopWordFilter("ei eivät emme en et ette että he heidän heidät heihin heille heillä heiltä heissä heistä heitä hän häneen hänelle hänellä häneltä hänen hänessä hänestä hänet häntä itse ja johon joiden joihin joiksi joilla joille joilta joina joissa joista joita joka joksi jolla jolle jolta jona jonka jos jossa josta jota jotka kanssa keiden keihin keiksi keille keillä keiltä keinä keissä keistä keitä keneen keneksi kenelle kenellä keneltä kenen kenenä kenessä kenestä kenet ketkä ketkä ketä koska kuin kuka kun me meidän meidät meihin meille meillä meiltä meissä meistä meitä mihin miksi mikä mille millä miltä minkä minkä minua minulla minulle minulta minun minussa minusta minut minuun minä minä missä mistä mitkä mitä mukaan mutta ne niiden niihin niiksi niille niillä niiltä niin niin niinä niissä niistä niitä noiden noihin noiksi noilla noille noilta noin noina noissa noista noita nuo nyt näiden näihin näiksi näille näillä näiltä näinä näissä näistä näitä nämä ole olemme olen olet olette oli olimme olin olisi olisimme olisin olisit olisitte olisivat olit olitte olivat olla olleet ollut on ovat poikki se sekä sen siihen siinä siitä siksi sille sillä sillä siltä sinua sinulla sinulle sinulta sinun sinussa sinusta sinut sinuun sinä sinä sitä tai te teidän teidät teihin teille teillä teiltä teissä teistä teitä tuo tuohon tuoksi tuolla tuolle tuolta tuon tuona tuossa tuosta tuota tähän täksi tälle tällä tältä tämä tämän tänä tässä tästä tätä vaan vai vaikka yli".split(" ")),i.Pipeline.registerFunction(i.fi.stopWordFilter,"stopWordFilter-fi")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.fr.min.js b/assets/javascripts/lunr/min/lunr.fr.min.js new file mode 100644 index 0000000..68cd009 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.fr.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `French` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.fr=function(){this.pipeline.reset(),this.pipeline.add(e.fr.trimmer,e.fr.stopWordFilter,e.fr.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.fr.stemmer))},e.fr.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.fr.trimmer=e.trimmerSupport.generateTrimmer(e.fr.wordCharacters),e.Pipeline.registerFunction(e.fr.trimmer,"trimmer-fr"),e.fr.stemmer=function(){var r=e.stemmerSupport.Among,s=e.stemmerSupport.SnowballProgram,i=new function(){function e(e,r,s){return!(!W.eq_s(1,e)||(W.ket=W.cursor,!W.in_grouping(F,97,251)))&&(W.slice_from(r),W.cursor=s,!0)}function i(e,r,s){return!!W.eq_s(1,e)&&(W.ket=W.cursor,W.slice_from(r),W.cursor=s,!0)}function n(){for(var r,s;;){if(r=W.cursor,W.in_grouping(F,97,251)){if(W.bra=W.cursor,s=W.cursor,e("u","U",r))continue;if(W.cursor=s,e("i","I",r))continue;if(W.cursor=s,i("y","Y",r))continue}if(W.cursor=r,W.bra=r,!e("y","Y",r)){if(W.cursor=r,W.eq_s(1,"q")&&(W.bra=W.cursor,i("u","U",r)))continue;if(W.cursor=r,r>=W.limit)return;W.cursor++}}}function t(){for(;!W.in_grouping(F,97,251);){if(W.cursor>=W.limit)return!0;W.cursor++}for(;!W.out_grouping(F,97,251);){if(W.cursor>=W.limit)return!0;W.cursor++}return!1}function u(){var e=W.cursor;if(q=W.limit,g=q,p=q,W.in_grouping(F,97,251)&&W.in_grouping(F,97,251)&&W.cursor=W.limit){W.cursor=q;break}W.cursor++}while(!W.in_grouping(F,97,251))}q=W.cursor,W.cursor=e,t()||(g=W.cursor,t()||(p=W.cursor))}function o(){for(var e,r;;){if(r=W.cursor,W.bra=r,!(e=W.find_among(h,4)))break;switch(W.ket=W.cursor,e){case 1:W.slice_from("i");break;case 2:W.slice_from("u");break;case 3:W.slice_from("y");break;case 4:if(W.cursor>=W.limit)return;W.cursor++}}}function c(){return q<=W.cursor}function a(){return g<=W.cursor}function l(){return p<=W.cursor}function w(){var e,r;if(W.ket=W.cursor,e=W.find_among_b(C,43)){switch(W.bra=W.cursor,e){case 1:if(!l())return!1;W.slice_del();break;case 2:if(!l())return!1;W.slice_del(),W.ket=W.cursor,W.eq_s_b(2,"ic")&&(W.bra=W.cursor,l()?W.slice_del():W.slice_from("iqU"));break;case 3:if(!l())return!1;W.slice_from("log");break;case 4:if(!l())return!1;W.slice_from("u");break;case 5:if(!l())return!1;W.slice_from("ent");break;case 6:if(!c())return!1;if(W.slice_del(),W.ket=W.cursor,e=W.find_among_b(z,6))switch(W.bra=W.cursor,e){case 1:l()&&(W.slice_del(),W.ket=W.cursor,W.eq_s_b(2,"at")&&(W.bra=W.cursor,l()&&W.slice_del()));break;case 2:l()?W.slice_del():a()&&W.slice_from("eux");break;case 3:l()&&W.slice_del();break;case 4:c()&&W.slice_from("i")}break;case 7:if(!l())return!1;if(W.slice_del(),W.ket=W.cursor,e=W.find_among_b(y,3))switch(W.bra=W.cursor,e){case 1:l()?W.slice_del():W.slice_from("abl");break;case 2:l()?W.slice_del():W.slice_from("iqU");break;case 3:l()&&W.slice_del()}break;case 8:if(!l())return!1;if(W.slice_del(),W.ket=W.cursor,W.eq_s_b(2,"at")&&(W.bra=W.cursor,l()&&(W.slice_del(),W.ket=W.cursor,W.eq_s_b(2,"ic")))){W.bra=W.cursor,l()?W.slice_del():W.slice_from("iqU");break}break;case 9:W.slice_from("eau");break;case 10:if(!a())return!1;W.slice_from("al");break;case 11:if(l())W.slice_del();else{if(!a())return!1;W.slice_from("eux")}break;case 12:if(!a()||!W.out_grouping_b(F,97,251))return!1;W.slice_del();break;case 13:return c()&&W.slice_from("ant"),!1;case 14:return c()&&W.slice_from("ent"),!1;case 15:return r=W.limit-W.cursor,W.in_grouping_b(F,97,251)&&c()&&(W.cursor=W.limit-r,W.slice_del()),!1}return!0}return!1}function f(){var e,r;if(W.cursor=q){if(s=W.limit_backward,W.limit_backward=q,W.ket=W.cursor,e=W.find_among_b(P,7))switch(W.bra=W.cursor,e){case 1:if(l()){if(i=W.limit-W.cursor,!W.eq_s_b(1,"s")&&(W.cursor=W.limit-i,!W.eq_s_b(1,"t")))break;W.slice_del()}break;case 2:W.slice_from("i");break;case 3:W.slice_del();break;case 4:W.eq_s_b(2,"gu")&&W.slice_del()}W.limit_backward=s}}function b(){var e=W.limit-W.cursor;W.find_among_b(U,5)&&(W.cursor=W.limit-e,W.ket=W.cursor,W.cursor>W.limit_backward&&(W.cursor--,W.bra=W.cursor,W.slice_del()))}function d(){for(var e,r=1;W.out_grouping_b(F,97,251);)r--;if(r<=0){if(W.ket=W.cursor,e=W.limit-W.cursor,!W.eq_s_b(1,"é")&&(W.cursor=W.limit-e,!W.eq_s_b(1,"è")))return;W.bra=W.cursor,W.slice_from("e")}}function k(){if(!w()&&(W.cursor=W.limit,!f()&&(W.cursor=W.limit,!m())))return W.cursor=W.limit,void _();W.cursor=W.limit,W.ket=W.cursor,W.eq_s_b(1,"Y")?(W.bra=W.cursor,W.slice_from("i")):(W.cursor=W.limit,W.eq_s_b(1,"ç")&&(W.bra=W.cursor,W.slice_from("c")))}var p,g,q,v=[new r("col",-1,-1),new r("par",-1,-1),new r("tap",-1,-1)],h=[new r("",-1,4),new r("I",0,1),new r("U",0,2),new r("Y",0,3)],z=[new r("iqU",-1,3),new r("abl",-1,3),new r("Ièr",-1,4),new r("ièr",-1,4),new r("eus",-1,2),new r("iv",-1,1)],y=[new r("ic",-1,2),new r("abil",-1,1),new r("iv",-1,3)],C=[new r("iqUe",-1,1),new r("atrice",-1,2),new r("ance",-1,1),new r("ence",-1,5),new r("logie",-1,3),new r("able",-1,1),new r("isme",-1,1),new r("euse",-1,11),new r("iste",-1,1),new r("ive",-1,8),new r("if",-1,8),new r("usion",-1,4),new r("ation",-1,2),new r("ution",-1,4),new r("ateur",-1,2),new r("iqUes",-1,1),new r("atrices",-1,2),new r("ances",-1,1),new r("ences",-1,5),new r("logies",-1,3),new r("ables",-1,1),new r("ismes",-1,1),new r("euses",-1,11),new r("istes",-1,1),new r("ives",-1,8),new r("ifs",-1,8),new r("usions",-1,4),new r("ations",-1,2),new r("utions",-1,4),new r("ateurs",-1,2),new r("ments",-1,15),new r("ements",30,6),new r("issements",31,12),new r("ités",-1,7),new r("ment",-1,15),new r("ement",34,6),new r("issement",35,12),new r("amment",34,13),new r("emment",34,14),new r("aux",-1,10),new r("eaux",39,9),new r("eux",-1,1),new r("ité",-1,7)],x=[new r("ira",-1,1),new r("ie",-1,1),new r("isse",-1,1),new r("issante",-1,1),new r("i",-1,1),new r("irai",4,1),new r("ir",-1,1),new r("iras",-1,1),new r("ies",-1,1),new r("îmes",-1,1),new r("isses",-1,1),new r("issantes",-1,1),new r("îtes",-1,1),new r("is",-1,1),new r("irais",13,1),new r("issais",13,1),new r("irions",-1,1),new r("issions",-1,1),new r("irons",-1,1),new r("issons",-1,1),new r("issants",-1,1),new r("it",-1,1),new r("irait",21,1),new r("issait",21,1),new r("issant",-1,1),new r("iraIent",-1,1),new r("issaIent",-1,1),new r("irent",-1,1),new r("issent",-1,1),new r("iront",-1,1),new r("ît",-1,1),new r("iriez",-1,1),new r("issiez",-1,1),new r("irez",-1,1),new r("issez",-1,1)],I=[new r("a",-1,3),new r("era",0,2),new r("asse",-1,3),new r("ante",-1,3),new r("ée",-1,2),new r("ai",-1,3),new r("erai",5,2),new r("er",-1,2),new r("as",-1,3),new r("eras",8,2),new r("âmes",-1,3),new r("asses",-1,3),new r("antes",-1,3),new r("âtes",-1,3),new r("ées",-1,2),new r("ais",-1,3),new r("erais",15,2),new r("ions",-1,1),new r("erions",17,2),new r("assions",17,3),new r("erons",-1,2),new r("ants",-1,3),new r("és",-1,2),new r("ait",-1,3),new r("erait",23,2),new r("ant",-1,3),new r("aIent",-1,3),new r("eraIent",26,2),new r("èrent",-1,2),new r("assent",-1,3),new r("eront",-1,2),new r("ât",-1,3),new r("ez",-1,2),new r("iez",32,2),new r("eriez",33,2),new r("assiez",33,3),new r("erez",32,2),new r("é",-1,2)],P=[new r("e",-1,3),new r("Ière",0,2),new r("ière",0,2),new r("ion",-1,1),new r("Ier",-1,2),new r("ier",-1,2),new r("ë",-1,4)],U=[new r("ell",-1,-1),new r("eill",-1,-1),new r("enn",-1,-1),new r("onn",-1,-1),new r("ett",-1,-1)],F=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,128,130,103,8,5],S=[1,65,20,0,0,0,0,0,0,0,0,0,0,0,0,0,128],W=new s;this.setCurrent=function(e){W.setCurrent(e)},this.getCurrent=function(){return W.getCurrent()},this.stem=function(){var e=W.cursor;return n(),W.cursor=e,u(),W.limit_backward=e,W.cursor=W.limit,k(),W.cursor=W.limit,b(),W.cursor=W.limit,d(),W.cursor=W.limit_backward,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.fr.stemmer,"stemmer-fr"),e.fr.stopWordFilter=e.generateStopWordFilter("ai aie aient aies ait as au aura aurai auraient aurais aurait auras aurez auriez aurions aurons auront aux avaient avais avait avec avez aviez avions avons ayant ayez ayons c ce ceci celà ces cet cette d dans de des du elle en es est et eu eue eues eurent eus eusse eussent eusses eussiez eussions eut eux eûmes eût eûtes furent fus fusse fussent fusses fussiez fussions fut fûmes fût fûtes ici il ils j je l la le les leur leurs lui m ma mais me mes moi mon même n ne nos notre nous on ont ou par pas pour qu que quel quelle quelles quels qui s sa sans se sera serai seraient serais serait seras serez seriez serions serons seront ses soi soient sois soit sommes son sont soyez soyons suis sur t ta te tes toi ton tu un une vos votre vous y à étaient étais était étant étiez étions été étée étées étés êtes".split(" ")),e.Pipeline.registerFunction(e.fr.stopWordFilter,"stopWordFilter-fr")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.he.min.js b/assets/javascripts/lunr/min/lunr.he.min.js new file mode 100644 index 0000000..b863d3e --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.he.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.he=function(){this.pipeline.reset(),this.pipeline.add(e.he.trimmer,e.he.stopWordFilter,e.he.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.he.stemmer))},e.he.wordCharacters="֑-״א-תa-zA-Za-zA-Z0-90-9",e.he.trimmer=e.trimmerSupport.generateTrimmer(e.he.wordCharacters),e.Pipeline.registerFunction(e.he.trimmer,"trimmer-he"),e.he.stemmer=function(){var e=this;return e.result=!1,e.preRemoved=!1,e.sufRemoved=!1,e.pre={pre1:"ה ו י ת",pre2:"ב כ ל מ ש כש",pre3:"הב הכ הל המ הש בש לכ",pre4:"וב וכ ול ומ וש",pre5:"מה שה כל",pre6:"מב מכ מל ממ מש",pre7:"בה בו בי בת כה כו כי כת לה לו לי לת",pre8:"ובה ובו ובי ובת וכה וכו וכי וכת ולה ולו ולי ולת"},e.suf={suf1:"ך כ ם ן נ",suf2:"ים ות וך וכ ום ון ונ הם הן יכ יך ינ ים",suf3:"תי תך תכ תם תן תנ",suf4:"ותי ותך ותכ ותם ותן ותנ",suf5:"נו כם כן הם הן",suf6:"ונו וכם וכן והם והן",suf7:"תכם תכן תנו תהם תהן",suf8:"הוא היא הם הן אני אתה את אנו אתם אתן",suf9:"ני נו כי כו כם כן תי תך תכ תם תן",suf10:"י ך כ ם ן נ ת"},e.patterns=JSON.parse('{"hebrewPatterns": [{"pt1": [{"c": "ה", "l": 0}]}, {"pt2": [{"c": "ו", "l": 0}]}, {"pt3": [{"c": "י", "l": 0}]}, {"pt4": [{"c": "ת", "l": 0}]}, {"pt5": [{"c": "מ", "l": 0}]}, {"pt6": [{"c": "ל", "l": 0}]}, {"pt7": [{"c": "ב", "l": 0}]}, {"pt8": [{"c": "כ", "l": 0}]}, {"pt9": [{"c": "ש", "l": 0}]}, {"pt10": [{"c": "כש", "l": 0}]}, {"pt11": [{"c": "בה", "l": 0}]}, {"pt12": [{"c": "וב", "l": 0}]}, {"pt13": [{"c": "וכ", "l": 0}]}, {"pt14": [{"c": "ול", "l": 0}]}, {"pt15": [{"c": "ומ", "l": 0}]}, {"pt16": [{"c": "וש", "l": 0}]}, {"pt17": [{"c": "הב", "l": 0}]}, {"pt18": [{"c": "הכ", "l": 0}]}, {"pt19": [{"c": "הל", "l": 0}]}, {"pt20": [{"c": "המ", "l": 0}]}, {"pt21": [{"c": "הש", "l": 0}]}, {"pt22": [{"c": "מה", "l": 0}]}, {"pt23": [{"c": "שה", "l": 0}]}, {"pt24": [{"c": "כל", "l": 0}]}]}'),e.execArray=["cleanWord","removeDiacritics","removeStopWords","normalizeHebrewCharacters"],e.stem=function(){var r=0;for(e.result=!1,e.preRemoved=!1,e.sufRemoved=!1;r=0)return!0},e.normalizeHebrewCharacters=function(){return e.word=e.word.replace("ך","כ"),e.word=e.word.replace("ם","מ"),e.word=e.word.replace("ן","נ"),e.word=e.word.replace("ף","פ"),e.word=e.word.replace("ץ","צ"),!1},function(r){return"function"==typeof r.update?r.update(function(r){return e.setCurrent(r),e.stem(),e.getCurrent()}):(e.setCurrent(r),e.stem(),e.getCurrent())}}(),e.Pipeline.registerFunction(e.he.stemmer,"stemmer-he"),e.he.stopWordFilter=e.generateStopWordFilter("אבל או אולי אותו אותי אותך אותם אותן אותנו אז אחר אחרות אחרי אחריכן אחרים אחרת אי איזה איך אין איפה אל אלה אלו אם אנחנו אני אף אפשר את אתה אתכם אתכן אתם אתן באיזה באיזו בגלל בין בלבד בעבור בעזרת בכל בכן בלי במידה במקום שבו ברוב בשביל בשעה ש בתוך גם דרך הוא היא היה היי היכן היתה היתי הם הן הנה הסיבה שבגללה הרי ואילו ואת זאת זה זות יהיה יוכל יוכלו יותר מדי יכול יכולה יכולות יכולים יכל יכלה יכלו יש כאן כאשר כולם כולן כזה כי כיצד כך כל כלל כמו כן כפי כש לא לאו לאיזותך לאן לבין לה להיות להם להן לו לזה לזות לי לך לכם לכן למה למעלה למעלה מ למטה למטה מ למעט למקום שבו למרות לנו לעבר לעיכן לפיכך לפני מאד מאחורי מאיזו סיבה מאין מאיפה מבלי מבעד מדוע מה מהיכן מול מחוץ מי מידע מכאן מכל מכן מלבד מן מנין מסוגל מעט מעטים מעל מצד מקום בו מתחת מתי נגד נגר נו עד עז על עלי עליו עליה עליהם עליך עלינו עם עצמה עצמהם עצמהן עצמו עצמי עצמם עצמן עצמנו פה רק שוב של שלה שלהם שלהן שלו שלי שלך שלכה שלכם שלכן שלנו שם תהיה תחת".split(" ")),e.Pipeline.registerFunction(e.he.stopWordFilter,"stopWordFilter-he")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.hi.min.js b/assets/javascripts/lunr/min/lunr.hi.min.js new file mode 100644 index 0000000..7dbc414 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.hi.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.hi=function(){this.pipeline.reset(),this.pipeline.add(e.hi.trimmer,e.hi.stopWordFilter,e.hi.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.hi.stemmer))},e.hi.wordCharacters="ऀ-ःऄ-एऐ-टठ-यर-िी-ॏॐ-य़ॠ-९॰-ॿa-zA-Za-zA-Z0-90-9",e.hi.trimmer=e.trimmerSupport.generateTrimmer(e.hi.wordCharacters),e.Pipeline.registerFunction(e.hi.trimmer,"trimmer-hi"),e.hi.stopWordFilter=e.generateStopWordFilter("अत अपना अपनी अपने अभी अंदर आदि आप इत्यादि इन इनका इन्हीं इन्हें इन्हों इस इसका इसकी इसके इसमें इसी इसे उन उनका उनकी उनके उनको उन्हीं उन्हें उन्हों उस उसके उसी उसे एक एवं एस ऐसे और कई कर करता करते करना करने करें कहते कहा का काफ़ी कि कितना किन्हें किन्हों किया किर किस किसी किसे की कुछ कुल के को कोई कौन कौनसा गया घर जब जहाँ जा जितना जिन जिन्हें जिन्हों जिस जिसे जीधर जैसा जैसे जो तक तब तरह तिन तिन्हें तिन्हों तिस तिसे तो था थी थे दबारा दिया दुसरा दूसरे दो द्वारा न नके नहीं ना निहायत नीचे ने पर पहले पूरा पे फिर बनी बही बहुत बाद बाला बिलकुल भी भीतर मगर मानो मे में यदि यह यहाँ यही या यिह ये रखें रहा रहे ऱ्वासा लिए लिये लेकिन व वग़ैरह वर्ग वह वहाँ वहीं वाले वुह वे वो सकता सकते सबसे सभी साथ साबुत साभ सारा से सो संग ही हुआ हुई हुए है हैं हो होता होती होते होना होने".split(" ")),e.hi.stemmer=function(){return function(e){return"function"==typeof e.update?e.update(function(e){return e}):e}}();var r=e.wordcut;r.init(),e.hi.tokenizer=function(i){if(!arguments.length||null==i||void 0==i)return[];if(Array.isArray(i))return i.map(function(r){return isLunr2?new e.Token(r.toLowerCase()):r.toLowerCase()});var t=i.toString().toLowerCase().replace(/^\s+/,"");return r.cut(t).split("|")},e.Pipeline.registerFunction(e.hi.stemmer,"stemmer-hi"),e.Pipeline.registerFunction(e.hi.stopWordFilter,"stopWordFilter-hi")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.hu.min.js b/assets/javascripts/lunr/min/lunr.hu.min.js new file mode 100644 index 0000000..ed9d909 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.hu.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Hungarian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,n){"function"==typeof define&&define.amd?define(n):"object"==typeof exports?module.exports=n():n()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.hu=function(){this.pipeline.reset(),this.pipeline.add(e.hu.trimmer,e.hu.stopWordFilter,e.hu.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.hu.stemmer))},e.hu.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.hu.trimmer=e.trimmerSupport.generateTrimmer(e.hu.wordCharacters),e.Pipeline.registerFunction(e.hu.trimmer,"trimmer-hu"),e.hu.stemmer=function(){var n=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,i=new function(){function e(){var e,n=L.cursor;if(d=L.limit,L.in_grouping(W,97,252))for(;;){if(e=L.cursor,L.out_grouping(W,97,252))return L.cursor=e,L.find_among(g,8)||(L.cursor=e,e=L.limit)return void(d=e);L.cursor++}if(L.cursor=n,L.out_grouping(W,97,252)){for(;!L.in_grouping(W,97,252);){if(L.cursor>=L.limit)return;L.cursor++}d=L.cursor}}function i(){return d<=L.cursor}function a(){var e;if(L.ket=L.cursor,(e=L.find_among_b(h,2))&&(L.bra=L.cursor,i()))switch(e){case 1:L.slice_from("a");break;case 2:L.slice_from("e")}}function t(){var e=L.limit-L.cursor;return!!L.find_among_b(p,23)&&(L.cursor=L.limit-e,!0)}function s(){if(L.cursor>L.limit_backward){L.cursor--,L.ket=L.cursor;var e=L.cursor-1;L.limit_backward<=e&&e<=L.limit&&(L.cursor=e,L.bra=e,L.slice_del())}}function c(){var e;if(L.ket=L.cursor,(e=L.find_among_b(_,2))&&(L.bra=L.cursor,i())){if((1==e||2==e)&&!t())return;L.slice_del(),s()}}function o(){L.ket=L.cursor,L.find_among_b(v,44)&&(L.bra=L.cursor,i()&&(L.slice_del(),a()))}function w(){var e;if(L.ket=L.cursor,(e=L.find_among_b(z,3))&&(L.bra=L.cursor,i()))switch(e){case 1:L.slice_from("e");break;case 2:case 3:L.slice_from("a")}}function l(){var e;if(L.ket=L.cursor,(e=L.find_among_b(y,6))&&(L.bra=L.cursor,i()))switch(e){case 1:case 2:L.slice_del();break;case 3:L.slice_from("a");break;case 4:L.slice_from("e")}}function u(){var e;if(L.ket=L.cursor,(e=L.find_among_b(j,2))&&(L.bra=L.cursor,i())){if((1==e||2==e)&&!t())return;L.slice_del(),s()}}function m(){var e;if(L.ket=L.cursor,(e=L.find_among_b(C,7))&&(L.bra=L.cursor,i()))switch(e){case 1:L.slice_from("a");break;case 2:L.slice_from("e");break;case 3:case 4:case 5:case 6:case 7:L.slice_del()}}function k(){var e;if(L.ket=L.cursor,(e=L.find_among_b(P,12))&&(L.bra=L.cursor,i()))switch(e){case 1:case 4:case 7:case 9:L.slice_del();break;case 2:case 5:case 8:L.slice_from("e");break;case 3:case 6:L.slice_from("a")}}function f(){var e;if(L.ket=L.cursor,(e=L.find_among_b(F,31))&&(L.bra=L.cursor,i()))switch(e){case 1:case 4:case 7:case 8:case 9:case 12:case 13:case 16:case 17:case 18:L.slice_del();break;case 2:case 5:case 10:case 14:case 19:L.slice_from("a");break;case 3:case 6:case 11:case 15:case 20:L.slice_from("e")}}function b(){var e;if(L.ket=L.cursor,(e=L.find_among_b(S,42))&&(L.bra=L.cursor,i()))switch(e){case 1:case 4:case 5:case 6:case 9:case 10:case 11:case 14:case 15:case 16:case 17:case 20:case 21:case 24:case 25:case 26:case 29:L.slice_del();break;case 2:case 7:case 12:case 18:case 22:case 27:L.slice_from("a");break;case 3:case 8:case 13:case 19:case 23:case 28:L.slice_from("e")}}var d,g=[new n("cs",-1,-1),new n("dzs",-1,-1),new n("gy",-1,-1),new n("ly",-1,-1),new n("ny",-1,-1),new n("sz",-1,-1),new n("ty",-1,-1),new n("zs",-1,-1)],h=[new n("á",-1,1),new n("é",-1,2)],p=[new n("bb",-1,-1),new n("cc",-1,-1),new n("dd",-1,-1),new n("ff",-1,-1),new n("gg",-1,-1),new n("jj",-1,-1),new n("kk",-1,-1),new n("ll",-1,-1),new n("mm",-1,-1),new n("nn",-1,-1),new n("pp",-1,-1),new n("rr",-1,-1),new n("ccs",-1,-1),new n("ss",-1,-1),new n("zzs",-1,-1),new n("tt",-1,-1),new n("vv",-1,-1),new n("ggy",-1,-1),new n("lly",-1,-1),new n("nny",-1,-1),new n("tty",-1,-1),new n("ssz",-1,-1),new n("zz",-1,-1)],_=[new n("al",-1,1),new n("el",-1,2)],v=[new n("ba",-1,-1),new n("ra",-1,-1),new n("be",-1,-1),new n("re",-1,-1),new n("ig",-1,-1),new n("nak",-1,-1),new n("nek",-1,-1),new n("val",-1,-1),new n("vel",-1,-1),new n("ul",-1,-1),new n("nál",-1,-1),new n("nél",-1,-1),new n("ból",-1,-1),new n("ról",-1,-1),new n("tól",-1,-1),new n("bõl",-1,-1),new n("rõl",-1,-1),new n("tõl",-1,-1),new n("ül",-1,-1),new n("n",-1,-1),new n("an",19,-1),new n("ban",20,-1),new n("en",19,-1),new n("ben",22,-1),new n("képpen",22,-1),new n("on",19,-1),new n("ön",19,-1),new n("képp",-1,-1),new n("kor",-1,-1),new n("t",-1,-1),new n("at",29,-1),new n("et",29,-1),new n("ként",29,-1),new n("anként",32,-1),new n("enként",32,-1),new n("onként",32,-1),new n("ot",29,-1),new n("ért",29,-1),new n("öt",29,-1),new n("hez",-1,-1),new n("hoz",-1,-1),new n("höz",-1,-1),new n("vá",-1,-1),new n("vé",-1,-1)],z=[new n("án",-1,2),new n("én",-1,1),new n("ánként",-1,3)],y=[new n("stul",-1,2),new n("astul",0,1),new n("ástul",0,3),new n("stül",-1,2),new n("estül",3,1),new n("éstül",3,4)],j=[new n("á",-1,1),new n("é",-1,2)],C=[new n("k",-1,7),new n("ak",0,4),new n("ek",0,6),new n("ok",0,5),new n("ák",0,1),new n("ék",0,2),new n("ök",0,3)],P=[new n("éi",-1,7),new n("áéi",0,6),new n("ééi",0,5),new n("é",-1,9),new n("ké",3,4),new n("aké",4,1),new n("eké",4,1),new n("oké",4,1),new n("áké",4,3),new n("éké",4,2),new n("öké",4,1),new n("éé",3,8)],F=[new n("a",-1,18),new n("ja",0,17),new n("d",-1,16),new n("ad",2,13),new n("ed",2,13),new n("od",2,13),new n("ád",2,14),new n("éd",2,15),new n("öd",2,13),new n("e",-1,18),new n("je",9,17),new n("nk",-1,4),new n("unk",11,1),new n("ánk",11,2),new n("énk",11,3),new n("ünk",11,1),new n("uk",-1,8),new n("juk",16,7),new n("ájuk",17,5),new n("ük",-1,8),new n("jük",19,7),new n("éjük",20,6),new n("m",-1,12),new n("am",22,9),new n("em",22,9),new n("om",22,9),new n("ám",22,10),new n("ém",22,11),new n("o",-1,18),new n("á",-1,19),new n("é",-1,20)],S=[new n("id",-1,10),new n("aid",0,9),new n("jaid",1,6),new n("eid",0,9),new n("jeid",3,6),new n("áid",0,7),new n("éid",0,8),new n("i",-1,15),new n("ai",7,14),new n("jai",8,11),new n("ei",7,14),new n("jei",10,11),new n("ái",7,12),new n("éi",7,13),new n("itek",-1,24),new n("eitek",14,21),new n("jeitek",15,20),new n("éitek",14,23),new n("ik",-1,29),new n("aik",18,26),new n("jaik",19,25),new n("eik",18,26),new n("jeik",21,25),new n("áik",18,27),new n("éik",18,28),new n("ink",-1,20),new n("aink",25,17),new n("jaink",26,16),new n("eink",25,17),new n("jeink",28,16),new n("áink",25,18),new n("éink",25,19),new n("aitok",-1,21),new n("jaitok",32,20),new n("áitok",-1,22),new n("im",-1,5),new n("aim",35,4),new n("jaim",36,1),new n("eim",35,4),new n("jeim",38,1),new n("áim",35,2),new n("éim",35,3)],W=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,52,14],L=new r;this.setCurrent=function(e){L.setCurrent(e)},this.getCurrent=function(){return L.getCurrent()},this.stem=function(){var n=L.cursor;return e(),L.limit_backward=n,L.cursor=L.limit,c(),L.cursor=L.limit,o(),L.cursor=L.limit,w(),L.cursor=L.limit,l(),L.cursor=L.limit,u(),L.cursor=L.limit,k(),L.cursor=L.limit,f(),L.cursor=L.limit,b(),L.cursor=L.limit,m(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.hu.stemmer,"stemmer-hu"),e.hu.stopWordFilter=e.generateStopWordFilter("a abban ahhoz ahogy ahol aki akik akkor alatt amely amelyek amelyekben amelyeket amelyet amelynek ami amikor amit amolyan amíg annak arra arról az azok azon azonban azt aztán azután azzal azért be belül benne bár cikk cikkek cikkeket csak de e ebben eddig egy egyes egyetlen egyik egyre egyéb egész ehhez ekkor el ellen elsõ elég elõ elõször elõtt emilyen ennek erre ez ezek ezen ezt ezzel ezért fel felé hanem hiszen hogy hogyan igen ill ill. illetve ilyen ilyenkor ismét ison itt jobban jó jól kell kellett keressünk keresztül ki kívül között közül legalább legyen lehet lehetett lenne lenni lesz lett maga magát majd majd meg mellett mely melyek mert mi mikor milyen minden mindenki mindent mindig mint mintha mit mivel miért most már más másik még míg nagy nagyobb nagyon ne nekem neki nem nincs néha néhány nélkül olyan ott pedig persze rá s saját sem semmi sok sokat sokkal szemben szerint szinte számára talán tehát teljes tovább továbbá több ugyanis utolsó után utána vagy vagyis vagyok valaki valami valamint való van vannak vele vissza viszont volna volt voltak voltam voltunk által általában át én éppen és így õ õk õket össze úgy új újabb újra".split(" ")),e.Pipeline.registerFunction(e.hu.stopWordFilter,"stopWordFilter-hu")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.hy.min.js b/assets/javascripts/lunr/min/lunr.hy.min.js new file mode 100644 index 0000000..b37f792 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.hy.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.hy=function(){this.pipeline.reset(),this.pipeline.add(e.hy.trimmer,e.hy.stopWordFilter)},e.hy.wordCharacters="[A-Za-z԰-֏ff-ﭏ]",e.hy.trimmer=e.trimmerSupport.generateTrimmer(e.hy.wordCharacters),e.Pipeline.registerFunction(e.hy.trimmer,"trimmer-hy"),e.hy.stopWordFilter=e.generateStopWordFilter("դու և եք էիր էիք հետո նաև նրանք որը վրա է որ պիտի են այս մեջ ն իր ու ի այդ որոնք այն կամ էր մի ես համար այլ իսկ էին ենք հետ ին թ էինք մենք նրա նա դուք եմ էի ըստ որպես ում".split(" ")),e.Pipeline.registerFunction(e.hy.stopWordFilter,"stopWordFilter-hy"),e.hy.stemmer=function(){return function(e){return"function"==typeof e.update?e.update(function(e){return e}):e}}(),e.Pipeline.registerFunction(e.hy.stemmer,"stemmer-hy")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.it.min.js b/assets/javascripts/lunr/min/lunr.it.min.js new file mode 100644 index 0000000..344b6a3 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.it.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Italian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.it=function(){this.pipeline.reset(),this.pipeline.add(e.it.trimmer,e.it.stopWordFilter,e.it.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.it.stemmer))},e.it.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.it.trimmer=e.trimmerSupport.generateTrimmer(e.it.wordCharacters),e.Pipeline.registerFunction(e.it.trimmer,"trimmer-it"),e.it.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,i=new function(){function e(e,r,n){return!(!x.eq_s(1,e)||(x.ket=x.cursor,!x.in_grouping(L,97,249)))&&(x.slice_from(r),x.cursor=n,!0)}function i(){for(var r,n,i,o,t=x.cursor;;){if(x.bra=x.cursor,r=x.find_among(h,7))switch(x.ket=x.cursor,r){case 1:x.slice_from("à");continue;case 2:x.slice_from("è");continue;case 3:x.slice_from("ì");continue;case 4:x.slice_from("ò");continue;case 5:x.slice_from("ù");continue;case 6:x.slice_from("qU");continue;case 7:if(x.cursor>=x.limit)break;x.cursor++;continue}break}for(x.cursor=t;;)for(n=x.cursor;;){if(i=x.cursor,x.in_grouping(L,97,249)){if(x.bra=x.cursor,o=x.cursor,e("u","U",i))break;if(x.cursor=o,e("i","I",i))break}if(x.cursor=i,x.cursor>=x.limit)return void(x.cursor=n);x.cursor++}}function o(e){if(x.cursor=e,!x.in_grouping(L,97,249))return!1;for(;!x.out_grouping(L,97,249);){if(x.cursor>=x.limit)return!1;x.cursor++}return!0}function t(){if(x.in_grouping(L,97,249)){var e=x.cursor;if(x.out_grouping(L,97,249)){for(;!x.in_grouping(L,97,249);){if(x.cursor>=x.limit)return o(e);x.cursor++}return!0}return o(e)}return!1}function s(){var e,r=x.cursor;if(!t()){if(x.cursor=r,!x.out_grouping(L,97,249))return;if(e=x.cursor,x.out_grouping(L,97,249)){for(;!x.in_grouping(L,97,249);){if(x.cursor>=x.limit)return x.cursor=e,void(x.in_grouping(L,97,249)&&x.cursor=x.limit)return;x.cursor++}k=x.cursor}function a(){for(;!x.in_grouping(L,97,249);){if(x.cursor>=x.limit)return!1;x.cursor++}for(;!x.out_grouping(L,97,249);){if(x.cursor>=x.limit)return!1;x.cursor++}return!0}function u(){var e=x.cursor;k=x.limit,p=k,g=k,s(),x.cursor=e,a()&&(p=x.cursor,a()&&(g=x.cursor))}function c(){for(var e;;){if(x.bra=x.cursor,!(e=x.find_among(q,3)))break;switch(x.ket=x.cursor,e){case 1:x.slice_from("i");break;case 2:x.slice_from("u");break;case 3:if(x.cursor>=x.limit)return;x.cursor++}}}function w(){return k<=x.cursor}function l(){return p<=x.cursor}function m(){return g<=x.cursor}function f(){var e;if(x.ket=x.cursor,x.find_among_b(C,37)&&(x.bra=x.cursor,(e=x.find_among_b(z,5))&&w()))switch(e){case 1:x.slice_del();break;case 2:x.slice_from("e")}}function v(){var e;if(x.ket=x.cursor,!(e=x.find_among_b(S,51)))return!1;switch(x.bra=x.cursor,e){case 1:if(!m())return!1;x.slice_del();break;case 2:if(!m())return!1;x.slice_del(),x.ket=x.cursor,x.eq_s_b(2,"ic")&&(x.bra=x.cursor,m()&&x.slice_del());break;case 3:if(!m())return!1;x.slice_from("log");break;case 4:if(!m())return!1;x.slice_from("u");break;case 5:if(!m())return!1;x.slice_from("ente");break;case 6:if(!w())return!1;x.slice_del();break;case 7:if(!l())return!1;x.slice_del(),x.ket=x.cursor,e=x.find_among_b(P,4),e&&(x.bra=x.cursor,m()&&(x.slice_del(),1==e&&(x.ket=x.cursor,x.eq_s_b(2,"at")&&(x.bra=x.cursor,m()&&x.slice_del()))));break;case 8:if(!m())return!1;x.slice_del(),x.ket=x.cursor,e=x.find_among_b(F,3),e&&(x.bra=x.cursor,1==e&&m()&&x.slice_del());break;case 9:if(!m())return!1;x.slice_del(),x.ket=x.cursor,x.eq_s_b(2,"at")&&(x.bra=x.cursor,m()&&(x.slice_del(),x.ket=x.cursor,x.eq_s_b(2,"ic")&&(x.bra=x.cursor,m()&&x.slice_del())))}return!0}function b(){var e,r;x.cursor>=k&&(r=x.limit_backward,x.limit_backward=k,x.ket=x.cursor,e=x.find_among_b(W,87),e&&(x.bra=x.cursor,1==e&&x.slice_del()),x.limit_backward=r)}function d(){var e=x.limit-x.cursor;if(x.ket=x.cursor,x.in_grouping_b(y,97,242)&&(x.bra=x.cursor,w()&&(x.slice_del(),x.ket=x.cursor,x.eq_s_b(1,"i")&&(x.bra=x.cursor,w()))))return void x.slice_del();x.cursor=x.limit-e}function _(){d(),x.ket=x.cursor,x.eq_s_b(1,"h")&&(x.bra=x.cursor,x.in_grouping_b(U,99,103)&&w()&&x.slice_del())}var g,p,k,h=[new r("",-1,7),new r("qu",0,6),new r("á",0,1),new r("é",0,2),new r("í",0,3),new r("ó",0,4),new r("ú",0,5)],q=[new r("",-1,3),new r("I",0,1),new r("U",0,2)],C=[new r("la",-1,-1),new r("cela",0,-1),new r("gliela",0,-1),new r("mela",0,-1),new r("tela",0,-1),new r("vela",0,-1),new r("le",-1,-1),new r("cele",6,-1),new r("gliele",6,-1),new r("mele",6,-1),new r("tele",6,-1),new r("vele",6,-1),new r("ne",-1,-1),new r("cene",12,-1),new r("gliene",12,-1),new r("mene",12,-1),new r("sene",12,-1),new r("tene",12,-1),new r("vene",12,-1),new r("ci",-1,-1),new r("li",-1,-1),new r("celi",20,-1),new r("glieli",20,-1),new r("meli",20,-1),new r("teli",20,-1),new r("veli",20,-1),new r("gli",20,-1),new r("mi",-1,-1),new r("si",-1,-1),new r("ti",-1,-1),new r("vi",-1,-1),new r("lo",-1,-1),new r("celo",31,-1),new r("glielo",31,-1),new r("melo",31,-1),new r("telo",31,-1),new r("velo",31,-1)],z=[new r("ando",-1,1),new r("endo",-1,1),new r("ar",-1,2),new r("er",-1,2),new r("ir",-1,2)],P=[new r("ic",-1,-1),new r("abil",-1,-1),new r("os",-1,-1),new r("iv",-1,1)],F=[new r("ic",-1,1),new r("abil",-1,1),new r("iv",-1,1)],S=[new r("ica",-1,1),new r("logia",-1,3),new r("osa",-1,1),new r("ista",-1,1),new r("iva",-1,9),new r("anza",-1,1),new r("enza",-1,5),new r("ice",-1,1),new r("atrice",7,1),new r("iche",-1,1),new r("logie",-1,3),new r("abile",-1,1),new r("ibile",-1,1),new r("usione",-1,4),new r("azione",-1,2),new r("uzione",-1,4),new r("atore",-1,2),new r("ose",-1,1),new r("ante",-1,1),new r("mente",-1,1),new r("amente",19,7),new r("iste",-1,1),new r("ive",-1,9),new r("anze",-1,1),new r("enze",-1,5),new r("ici",-1,1),new r("atrici",25,1),new r("ichi",-1,1),new r("abili",-1,1),new r("ibili",-1,1),new r("ismi",-1,1),new r("usioni",-1,4),new r("azioni",-1,2),new r("uzioni",-1,4),new r("atori",-1,2),new r("osi",-1,1),new r("anti",-1,1),new r("amenti",-1,6),new r("imenti",-1,6),new r("isti",-1,1),new r("ivi",-1,9),new r("ico",-1,1),new r("ismo",-1,1),new r("oso",-1,1),new r("amento",-1,6),new r("imento",-1,6),new r("ivo",-1,9),new r("ità",-1,8),new r("istà",-1,1),new r("istè",-1,1),new r("istì",-1,1)],W=[new r("isca",-1,1),new r("enda",-1,1),new r("ata",-1,1),new r("ita",-1,1),new r("uta",-1,1),new r("ava",-1,1),new r("eva",-1,1),new r("iva",-1,1),new r("erebbe",-1,1),new r("irebbe",-1,1),new r("isce",-1,1),new r("ende",-1,1),new r("are",-1,1),new r("ere",-1,1),new r("ire",-1,1),new r("asse",-1,1),new r("ate",-1,1),new r("avate",16,1),new r("evate",16,1),new r("ivate",16,1),new r("ete",-1,1),new r("erete",20,1),new r("irete",20,1),new r("ite",-1,1),new r("ereste",-1,1),new r("ireste",-1,1),new r("ute",-1,1),new r("erai",-1,1),new r("irai",-1,1),new r("isci",-1,1),new r("endi",-1,1),new r("erei",-1,1),new r("irei",-1,1),new r("assi",-1,1),new r("ati",-1,1),new r("iti",-1,1),new r("eresti",-1,1),new r("iresti",-1,1),new r("uti",-1,1),new r("avi",-1,1),new r("evi",-1,1),new r("ivi",-1,1),new r("isco",-1,1),new r("ando",-1,1),new r("endo",-1,1),new r("Yamo",-1,1),new r("iamo",-1,1),new r("avamo",-1,1),new r("evamo",-1,1),new r("ivamo",-1,1),new r("eremo",-1,1),new r("iremo",-1,1),new r("assimo",-1,1),new r("ammo",-1,1),new r("emmo",-1,1),new r("eremmo",54,1),new r("iremmo",54,1),new r("immo",-1,1),new r("ano",-1,1),new r("iscano",58,1),new r("avano",58,1),new r("evano",58,1),new r("ivano",58,1),new r("eranno",-1,1),new r("iranno",-1,1),new r("ono",-1,1),new r("iscono",65,1),new r("arono",65,1),new r("erono",65,1),new r("irono",65,1),new r("erebbero",-1,1),new r("irebbero",-1,1),new r("assero",-1,1),new r("essero",-1,1),new r("issero",-1,1),new r("ato",-1,1),new r("ito",-1,1),new r("uto",-1,1),new r("avo",-1,1),new r("evo",-1,1),new r("ivo",-1,1),new r("ar",-1,1),new r("ir",-1,1),new r("erà",-1,1),new r("irà",-1,1),new r("erò",-1,1),new r("irò",-1,1)],L=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2,1],y=[17,65,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2],U=[17],x=new n;this.setCurrent=function(e){x.setCurrent(e)},this.getCurrent=function(){return x.getCurrent()},this.stem=function(){var e=x.cursor;return i(),x.cursor=e,u(),x.limit_backward=e,x.cursor=x.limit,f(),x.cursor=x.limit,v()||(x.cursor=x.limit,b()),x.cursor=x.limit,_(),x.cursor=x.limit_backward,c(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.it.stemmer,"stemmer-it"),e.it.stopWordFilter=e.generateStopWordFilter("a abbia abbiamo abbiano abbiate ad agl agli ai al all alla alle allo anche avemmo avendo avesse avessero avessi avessimo aveste avesti avete aveva avevamo avevano avevate avevi avevo avrai avranno avrebbe avrebbero avrei avremmo avremo avreste avresti avrete avrà avrò avuta avute avuti avuto c che chi ci coi col come con contro cui da dagl dagli dai dal dall dalla dalle dallo degl degli dei del dell della delle dello di dov dove e ebbe ebbero ebbi ed era erano eravamo eravate eri ero essendo faccia facciamo facciano facciate faccio facemmo facendo facesse facessero facessi facessimo faceste facesti faceva facevamo facevano facevate facevi facevo fai fanno farai faranno farebbe farebbero farei faremmo faremo fareste faresti farete farà farò fece fecero feci fosse fossero fossi fossimo foste fosti fu fui fummo furono gli ha hai hanno ho i il in io l la le lei li lo loro lui ma mi mia mie miei mio ne negl negli nei nel nell nella nelle nello noi non nostra nostre nostri nostro o per perché più quale quanta quante quanti quanto quella quelle quelli quello questa queste questi questo sarai saranno sarebbe sarebbero sarei saremmo saremo sareste saresti sarete sarà sarò se sei si sia siamo siano siate siete sono sta stai stando stanno starai staranno starebbe starebbero starei staremmo staremo stareste staresti starete starà starò stava stavamo stavano stavate stavi stavo stemmo stesse stessero stessi stessimo steste stesti stette stettero stetti stia stiamo stiano stiate sto su sua sue sugl sugli sui sul sull sulla sulle sullo suo suoi ti tra tu tua tue tuo tuoi tutti tutto un una uno vi voi vostra vostre vostri vostro è".split(" ")),e.Pipeline.registerFunction(e.it.stopWordFilter,"stopWordFilter-it")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.ja.min.js b/assets/javascripts/lunr/min/lunr.ja.min.js new file mode 100644 index 0000000..5f254eb --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.ja.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");var r="2"==e.version[0];e.ja=function(){this.pipeline.reset(),this.pipeline.add(e.ja.trimmer,e.ja.stopWordFilter,e.ja.stemmer),r?this.tokenizer=e.ja.tokenizer:(e.tokenizer&&(e.tokenizer=e.ja.tokenizer),this.tokenizerFn&&(this.tokenizerFn=e.ja.tokenizer))};var t=new e.TinySegmenter;e.ja.tokenizer=function(i){var n,o,s,p,a,u,m,l,c,f;if(!arguments.length||null==i||void 0==i)return[];if(Array.isArray(i))return i.map(function(t){return r?new e.Token(t.toLowerCase()):t.toLowerCase()});for(o=i.toString().toLowerCase().replace(/^\s+/,""),n=o.length-1;n>=0;n--)if(/\S/.test(o.charAt(n))){o=o.substring(0,n+1);break}for(a=[],s=o.length,c=0,l=0;c<=s;c++)if(u=o.charAt(c),m=c-l,u.match(/\s/)||c==s){if(m>0)for(p=t.segment(o.slice(l,c)).filter(function(e){return!!e}),f=l,n=0;n=C.limit)break;C.cursor++;continue}break}for(C.cursor=o,C.bra=o,C.eq_s(1,"y")?(C.ket=C.cursor,C.slice_from("Y")):C.cursor=o;;)if(e=C.cursor,C.in_grouping(q,97,232)){if(i=C.cursor,C.bra=i,C.eq_s(1,"i"))C.ket=C.cursor,C.in_grouping(q,97,232)&&(C.slice_from("I"),C.cursor=e);else if(C.cursor=i,C.eq_s(1,"y"))C.ket=C.cursor,C.slice_from("Y"),C.cursor=e;else if(n(e))break}else if(n(e))break}function n(r){return C.cursor=r,r>=C.limit||(C.cursor++,!1)}function o(){_=C.limit,d=_,t()||(_=C.cursor,_<3&&(_=3),t()||(d=C.cursor))}function t(){for(;!C.in_grouping(q,97,232);){if(C.cursor>=C.limit)return!0;C.cursor++}for(;!C.out_grouping(q,97,232);){if(C.cursor>=C.limit)return!0;C.cursor++}return!1}function s(){for(var r;;)if(C.bra=C.cursor,r=C.find_among(p,3))switch(C.ket=C.cursor,r){case 1:C.slice_from("y");break;case 2:C.slice_from("i");break;case 3:if(C.cursor>=C.limit)return;C.cursor++}}function u(){return _<=C.cursor}function c(){return d<=C.cursor}function a(){var r=C.limit-C.cursor;C.find_among_b(g,3)&&(C.cursor=C.limit-r,C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,C.slice_del()))}function l(){var r;w=!1,C.ket=C.cursor,C.eq_s_b(1,"e")&&(C.bra=C.cursor,u()&&(r=C.limit-C.cursor,C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-r,C.slice_del(),w=!0,a())))}function m(){var r;u()&&(r=C.limit-C.cursor,C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-r,C.eq_s_b(3,"gem")||(C.cursor=C.limit-r,C.slice_del(),a())))}function f(){var r,e,i,n,o,t,s=C.limit-C.cursor;if(C.ket=C.cursor,r=C.find_among_b(h,5))switch(C.bra=C.cursor,r){case 1:u()&&C.slice_from("heid");break;case 2:m();break;case 3:u()&&C.out_grouping_b(j,97,232)&&C.slice_del()}if(C.cursor=C.limit-s,l(),C.cursor=C.limit-s,C.ket=C.cursor,C.eq_s_b(4,"heid")&&(C.bra=C.cursor,c()&&(e=C.limit-C.cursor,C.eq_s_b(1,"c")||(C.cursor=C.limit-e,C.slice_del(),C.ket=C.cursor,C.eq_s_b(2,"en")&&(C.bra=C.cursor,m())))),C.cursor=C.limit-s,C.ket=C.cursor,r=C.find_among_b(k,6))switch(C.bra=C.cursor,r){case 1:if(c()){if(C.slice_del(),i=C.limit-C.cursor,C.ket=C.cursor,C.eq_s_b(2,"ig")&&(C.bra=C.cursor,c()&&(n=C.limit-C.cursor,!C.eq_s_b(1,"e")))){C.cursor=C.limit-n,C.slice_del();break}C.cursor=C.limit-i,a()}break;case 2:c()&&(o=C.limit-C.cursor,C.eq_s_b(1,"e")||(C.cursor=C.limit-o,C.slice_del()));break;case 3:c()&&(C.slice_del(),l());break;case 4:c()&&C.slice_del();break;case 5:c()&&w&&C.slice_del()}C.cursor=C.limit-s,C.out_grouping_b(z,73,232)&&(t=C.limit-C.cursor,C.find_among_b(v,4)&&C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-t,C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,C.slice_del())))}var d,_,w,b=[new e("",-1,6),new e("á",0,1),new e("ä",0,1),new e("é",0,2),new e("ë",0,2),new e("í",0,3),new e("ï",0,3),new e("ó",0,4),new e("ö",0,4),new e("ú",0,5),new e("ü",0,5)],p=[new e("",-1,3),new e("I",0,2),new e("Y",0,1)],g=[new e("dd",-1,-1),new e("kk",-1,-1),new e("tt",-1,-1)],h=[new e("ene",-1,2),new e("se",-1,3),new e("en",-1,2),new e("heden",2,1),new e("s",-1,3)],k=[new e("end",-1,1),new e("ig",-1,2),new e("ing",-1,1),new e("lijk",-1,3),new e("baar",-1,4),new e("bar",-1,5)],v=[new e("aa",-1,-1),new e("ee",-1,-1),new e("oo",-1,-1),new e("uu",-1,-1)],q=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],z=[1,0,0,17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],j=[17,67,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],C=new i;this.setCurrent=function(r){C.setCurrent(r)},this.getCurrent=function(){return C.getCurrent()},this.stem=function(){var e=C.cursor;return r(),C.cursor=e,o(),C.limit_backward=e,C.cursor=C.limit,f(),C.cursor=C.limit_backward,s(),!0}};return function(r){return"function"==typeof r.update?r.update(function(r){return n.setCurrent(r),n.stem(),n.getCurrent()}):(n.setCurrent(r),n.stem(),n.getCurrent())}}(),r.Pipeline.registerFunction(r.nl.stemmer,"stemmer-nl"),r.nl.stopWordFilter=r.generateStopWordFilter(" aan al alles als altijd andere ben bij daar dan dat de der deze die dit doch doen door dus een eens en er ge geen geweest haar had heb hebben heeft hem het hier hij hoe hun iemand iets ik in is ja je kan kon kunnen maar me meer men met mij mijn moet na naar niet niets nog nu of om omdat onder ons ook op over reeds te tegen toch toen tot u uit uw van veel voor want waren was wat werd wezen wie wil worden wordt zal ze zelf zich zij zijn zo zonder zou".split(" ")),r.Pipeline.registerFunction(r.nl.stopWordFilter,"stopWordFilter-nl")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.no.min.js b/assets/javascripts/lunr/min/lunr.no.min.js new file mode 100644 index 0000000..92bc7e4 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.no.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Norwegian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.no=function(){this.pipeline.reset(),this.pipeline.add(e.no.trimmer,e.no.stopWordFilter,e.no.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.no.stemmer))},e.no.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.no.trimmer=e.trimmerSupport.generateTrimmer(e.no.wordCharacters),e.Pipeline.registerFunction(e.no.trimmer,"trimmer-no"),e.no.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,i=new function(){function e(){var e,r=w.cursor+3;if(a=w.limit,0<=r||r<=w.limit){for(s=r;;){if(e=w.cursor,w.in_grouping(d,97,248)){w.cursor=e;break}if(e>=w.limit)return;w.cursor=e+1}for(;!w.out_grouping(d,97,248);){if(w.cursor>=w.limit)return;w.cursor++}a=w.cursor,a=a&&(r=w.limit_backward,w.limit_backward=a,w.ket=w.cursor,e=w.find_among_b(m,29),w.limit_backward=r,e))switch(w.bra=w.cursor,e){case 1:w.slice_del();break;case 2:n=w.limit-w.cursor,w.in_grouping_b(c,98,122)?w.slice_del():(w.cursor=w.limit-n,w.eq_s_b(1,"k")&&w.out_grouping_b(d,97,248)&&w.slice_del());break;case 3:w.slice_from("er")}}function t(){var e,r=w.limit-w.cursor;w.cursor>=a&&(e=w.limit_backward,w.limit_backward=a,w.ket=w.cursor,w.find_among_b(u,2)?(w.bra=w.cursor,w.limit_backward=e,w.cursor=w.limit-r,w.cursor>w.limit_backward&&(w.cursor--,w.bra=w.cursor,w.slice_del())):w.limit_backward=e)}function o(){var e,r;w.cursor>=a&&(r=w.limit_backward,w.limit_backward=a,w.ket=w.cursor,e=w.find_among_b(l,11),e?(w.bra=w.cursor,w.limit_backward=r,1==e&&w.slice_del()):w.limit_backward=r)}var s,a,m=[new r("a",-1,1),new r("e",-1,1),new r("ede",1,1),new r("ande",1,1),new r("ende",1,1),new r("ane",1,1),new r("ene",1,1),new r("hetene",6,1),new r("erte",1,3),new r("en",-1,1),new r("heten",9,1),new r("ar",-1,1),new r("er",-1,1),new r("heter",12,1),new r("s",-1,2),new r("as",14,1),new r("es",14,1),new r("edes",16,1),new r("endes",16,1),new r("enes",16,1),new r("hetenes",19,1),new r("ens",14,1),new r("hetens",21,1),new r("ers",14,1),new r("ets",14,1),new r("et",-1,1),new r("het",25,1),new r("ert",-1,3),new r("ast",-1,1)],u=[new r("dt",-1,-1),new r("vt",-1,-1)],l=[new r("leg",-1,1),new r("eleg",0,1),new r("ig",-1,1),new r("eig",2,1),new r("lig",2,1),new r("elig",4,1),new r("els",-1,1),new r("lov",-1,1),new r("elov",7,1),new r("slov",7,1),new r("hetslov",9,1)],d=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,48,0,128],c=[119,125,149,1],w=new n;this.setCurrent=function(e){w.setCurrent(e)},this.getCurrent=function(){return w.getCurrent()},this.stem=function(){var r=w.cursor;return e(),w.limit_backward=r,w.cursor=w.limit,i(),w.cursor=w.limit,t(),w.cursor=w.limit,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.no.stemmer,"stemmer-no"),e.no.stopWordFilter=e.generateStopWordFilter("alle at av bare begge ble blei bli blir blitt både båe da de deg dei deim deira deires dem den denne der dere deres det dette di din disse ditt du dykk dykkar då eg ein eit eitt eller elles en enn er et ett etter for fordi fra før ha hadde han hans har hennar henne hennes her hjå ho hoe honom hoss hossen hun hva hvem hver hvilke hvilken hvis hvor hvordan hvorfor i ikke ikkje ikkje ingen ingi inkje inn inni ja jeg kan kom korleis korso kun kunne kva kvar kvarhelst kven kvi kvifor man mange me med medan meg meget mellom men mi min mine mitt mot mykje ned no noe noen noka noko nokon nokor nokre nå når og også om opp oss over på samme seg selv si si sia sidan siden sin sine sitt sjøl skal skulle slik so som som somme somt så sånn til um upp ut uten var vart varte ved vere verte vi vil ville vore vors vort vår være være vært å".split(" ")),e.Pipeline.registerFunction(e.no.stopWordFilter,"stopWordFilter-no")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.pt.min.js b/assets/javascripts/lunr/min/lunr.pt.min.js new file mode 100644 index 0000000..6c16996 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.pt.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Portuguese` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.pt=function(){this.pipeline.reset(),this.pipeline.add(e.pt.trimmer,e.pt.stopWordFilter,e.pt.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.pt.stemmer))},e.pt.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.pt.trimmer=e.trimmerSupport.generateTrimmer(e.pt.wordCharacters),e.Pipeline.registerFunction(e.pt.trimmer,"trimmer-pt"),e.pt.stemmer=function(){var r=e.stemmerSupport.Among,s=e.stemmerSupport.SnowballProgram,n=new function(){function e(){for(var e;;){if(z.bra=z.cursor,e=z.find_among(k,3))switch(z.ket=z.cursor,e){case 1:z.slice_from("a~");continue;case 2:z.slice_from("o~");continue;case 3:if(z.cursor>=z.limit)break;z.cursor++;continue}break}}function n(){if(z.out_grouping(y,97,250)){for(;!z.in_grouping(y,97,250);){if(z.cursor>=z.limit)return!0;z.cursor++}return!1}return!0}function i(){if(z.in_grouping(y,97,250))for(;!z.out_grouping(y,97,250);){if(z.cursor>=z.limit)return!1;z.cursor++}return g=z.cursor,!0}function o(){var e,r,s=z.cursor;if(z.in_grouping(y,97,250))if(e=z.cursor,n()){if(z.cursor=e,i())return}else g=z.cursor;if(z.cursor=s,z.out_grouping(y,97,250)){if(r=z.cursor,n()){if(z.cursor=r,!z.in_grouping(y,97,250)||z.cursor>=z.limit)return;z.cursor++}g=z.cursor}}function t(){for(;!z.in_grouping(y,97,250);){if(z.cursor>=z.limit)return!1;z.cursor++}for(;!z.out_grouping(y,97,250);){if(z.cursor>=z.limit)return!1;z.cursor++}return!0}function a(){var e=z.cursor;g=z.limit,b=g,h=g,o(),z.cursor=e,t()&&(b=z.cursor,t()&&(h=z.cursor))}function u(){for(var e;;){if(z.bra=z.cursor,e=z.find_among(q,3))switch(z.ket=z.cursor,e){case 1:z.slice_from("ã");continue;case 2:z.slice_from("õ");continue;case 3:if(z.cursor>=z.limit)break;z.cursor++;continue}break}}function w(){return g<=z.cursor}function m(){return b<=z.cursor}function c(){return h<=z.cursor}function l(){var e;if(z.ket=z.cursor,!(e=z.find_among_b(F,45)))return!1;switch(z.bra=z.cursor,e){case 1:if(!c())return!1;z.slice_del();break;case 2:if(!c())return!1;z.slice_from("log");break;case 3:if(!c())return!1;z.slice_from("u");break;case 4:if(!c())return!1;z.slice_from("ente");break;case 5:if(!m())return!1;z.slice_del(),z.ket=z.cursor,e=z.find_among_b(j,4),e&&(z.bra=z.cursor,c()&&(z.slice_del(),1==e&&(z.ket=z.cursor,z.eq_s_b(2,"at")&&(z.bra=z.cursor,c()&&z.slice_del()))));break;case 6:if(!c())return!1;z.slice_del(),z.ket=z.cursor,e=z.find_among_b(C,3),e&&(z.bra=z.cursor,1==e&&c()&&z.slice_del());break;case 7:if(!c())return!1;z.slice_del(),z.ket=z.cursor,e=z.find_among_b(P,3),e&&(z.bra=z.cursor,1==e&&c()&&z.slice_del());break;case 8:if(!c())return!1;z.slice_del(),z.ket=z.cursor,z.eq_s_b(2,"at")&&(z.bra=z.cursor,c()&&z.slice_del());break;case 9:if(!w()||!z.eq_s_b(1,"e"))return!1;z.slice_from("ir")}return!0}function f(){var e,r;if(z.cursor>=g){if(r=z.limit_backward,z.limit_backward=g,z.ket=z.cursor,e=z.find_among_b(S,120))return z.bra=z.cursor,1==e&&z.slice_del(),z.limit_backward=r,!0;z.limit_backward=r}return!1}function d(){var e;z.ket=z.cursor,(e=z.find_among_b(W,7))&&(z.bra=z.cursor,1==e&&w()&&z.slice_del())}function v(e,r){if(z.eq_s_b(1,e)){z.bra=z.cursor;var s=z.limit-z.cursor;if(z.eq_s_b(1,r))return z.cursor=z.limit-s,w()&&z.slice_del(),!1}return!0}function p(){var e;if(z.ket=z.cursor,e=z.find_among_b(L,4))switch(z.bra=z.cursor,e){case 1:w()&&(z.slice_del(),z.ket=z.cursor,z.limit-z.cursor,v("u","g")&&v("i","c"));break;case 2:z.slice_from("c")}}function _(){if(!l()&&(z.cursor=z.limit,!f()))return z.cursor=z.limit,void d();z.cursor=z.limit,z.ket=z.cursor,z.eq_s_b(1,"i")&&(z.bra=z.cursor,z.eq_s_b(1,"c")&&(z.cursor=z.limit,w()&&z.slice_del()))}var h,b,g,k=[new r("",-1,3),new r("ã",0,1),new r("õ",0,2)],q=[new r("",-1,3),new r("a~",0,1),new r("o~",0,2)],j=[new r("ic",-1,-1),new r("ad",-1,-1),new r("os",-1,-1),new r("iv",-1,1)],C=[new r("ante",-1,1),new r("avel",-1,1),new r("ível",-1,1)],P=[new r("ic",-1,1),new r("abil",-1,1),new r("iv",-1,1)],F=[new r("ica",-1,1),new r("ância",-1,1),new r("ência",-1,4),new r("ira",-1,9),new r("adora",-1,1),new r("osa",-1,1),new r("ista",-1,1),new r("iva",-1,8),new r("eza",-1,1),new r("logía",-1,2),new r("idade",-1,7),new r("ante",-1,1),new r("mente",-1,6),new r("amente",12,5),new r("ável",-1,1),new r("ível",-1,1),new r("ución",-1,3),new r("ico",-1,1),new r("ismo",-1,1),new r("oso",-1,1),new r("amento",-1,1),new r("imento",-1,1),new r("ivo",-1,8),new r("aça~o",-1,1),new r("ador",-1,1),new r("icas",-1,1),new r("ências",-1,4),new r("iras",-1,9),new r("adoras",-1,1),new r("osas",-1,1),new r("istas",-1,1),new r("ivas",-1,8),new r("ezas",-1,1),new r("logías",-1,2),new r("idades",-1,7),new r("uciones",-1,3),new r("adores",-1,1),new r("antes",-1,1),new r("aço~es",-1,1),new r("icos",-1,1),new r("ismos",-1,1),new r("osos",-1,1),new r("amentos",-1,1),new r("imentos",-1,1),new r("ivos",-1,8)],S=[new r("ada",-1,1),new r("ida",-1,1),new r("ia",-1,1),new r("aria",2,1),new r("eria",2,1),new r("iria",2,1),new r("ara",-1,1),new r("era",-1,1),new r("ira",-1,1),new r("ava",-1,1),new r("asse",-1,1),new r("esse",-1,1),new r("isse",-1,1),new r("aste",-1,1),new r("este",-1,1),new r("iste",-1,1),new r("ei",-1,1),new r("arei",16,1),new r("erei",16,1),new r("irei",16,1),new r("am",-1,1),new r("iam",20,1),new r("ariam",21,1),new r("eriam",21,1),new r("iriam",21,1),new r("aram",20,1),new r("eram",20,1),new r("iram",20,1),new r("avam",20,1),new r("em",-1,1),new r("arem",29,1),new r("erem",29,1),new r("irem",29,1),new r("assem",29,1),new r("essem",29,1),new r("issem",29,1),new r("ado",-1,1),new r("ido",-1,1),new r("ando",-1,1),new r("endo",-1,1),new r("indo",-1,1),new r("ara~o",-1,1),new r("era~o",-1,1),new r("ira~o",-1,1),new r("ar",-1,1),new r("er",-1,1),new r("ir",-1,1),new r("as",-1,1),new r("adas",47,1),new r("idas",47,1),new r("ias",47,1),new r("arias",50,1),new r("erias",50,1),new r("irias",50,1),new r("aras",47,1),new r("eras",47,1),new r("iras",47,1),new r("avas",47,1),new r("es",-1,1),new r("ardes",58,1),new r("erdes",58,1),new r("irdes",58,1),new r("ares",58,1),new r("eres",58,1),new r("ires",58,1),new r("asses",58,1),new r("esses",58,1),new r("isses",58,1),new r("astes",58,1),new r("estes",58,1),new r("istes",58,1),new r("is",-1,1),new r("ais",71,1),new r("eis",71,1),new r("areis",73,1),new r("ereis",73,1),new r("ireis",73,1),new r("áreis",73,1),new r("éreis",73,1),new r("íreis",73,1),new r("ásseis",73,1),new r("ésseis",73,1),new r("ísseis",73,1),new r("áveis",73,1),new r("íeis",73,1),new r("aríeis",84,1),new r("eríeis",84,1),new r("iríeis",84,1),new r("ados",-1,1),new r("idos",-1,1),new r("amos",-1,1),new r("áramos",90,1),new r("éramos",90,1),new r("íramos",90,1),new r("ávamos",90,1),new r("íamos",90,1),new r("aríamos",95,1),new r("eríamos",95,1),new r("iríamos",95,1),new r("emos",-1,1),new r("aremos",99,1),new r("eremos",99,1),new r("iremos",99,1),new r("ássemos",99,1),new r("êssemos",99,1),new r("íssemos",99,1),new r("imos",-1,1),new r("armos",-1,1),new r("ermos",-1,1),new r("irmos",-1,1),new r("ámos",-1,1),new r("arás",-1,1),new r("erás",-1,1),new r("irás",-1,1),new r("eu",-1,1),new r("iu",-1,1),new r("ou",-1,1),new r("ará",-1,1),new r("erá",-1,1),new r("irá",-1,1)],W=[new r("a",-1,1),new r("i",-1,1),new r("o",-1,1),new r("os",-1,1),new r("á",-1,1),new r("í",-1,1),new r("ó",-1,1)],L=[new r("e",-1,1),new r("ç",-1,2),new r("é",-1,1),new r("ê",-1,1)],y=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,3,19,12,2],z=new s;this.setCurrent=function(e){z.setCurrent(e)},this.getCurrent=function(){return z.getCurrent()},this.stem=function(){var r=z.cursor;return e(),z.cursor=r,a(),z.limit_backward=r,z.cursor=z.limit,_(),z.cursor=z.limit,p(),z.cursor=z.limit_backward,u(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.pt.stemmer,"stemmer-pt"),e.pt.stopWordFilter=e.generateStopWordFilter("a ao aos aquela aquelas aquele aqueles aquilo as até com como da das de dela delas dele deles depois do dos e ela elas ele eles em entre era eram essa essas esse esses esta estamos estas estava estavam este esteja estejam estejamos estes esteve estive estivemos estiver estivera estiveram estiverem estivermos estivesse estivessem estivéramos estivéssemos estou está estávamos estão eu foi fomos for fora foram forem formos fosse fossem fui fôramos fôssemos haja hajam hajamos havemos hei houve houvemos houver houvera houveram houverei houverem houveremos houveria houveriam houvermos houverá houverão houveríamos houvesse houvessem houvéramos houvéssemos há hão isso isto já lhe lhes mais mas me mesmo meu meus minha minhas muito na nas nem no nos nossa nossas nosso nossos num numa não nós o os ou para pela pelas pelo pelos por qual quando que quem se seja sejam sejamos sem serei seremos seria seriam será serão seríamos seu seus somos sou sua suas são só também te tem temos tenha tenham tenhamos tenho terei teremos teria teriam terá terão teríamos teu teus teve tinha tinham tive tivemos tiver tivera tiveram tiverem tivermos tivesse tivessem tivéramos tivéssemos tu tua tuas tém tínhamos um uma você vocês vos à às éramos".split(" ")),e.Pipeline.registerFunction(e.pt.stopWordFilter,"stopWordFilter-pt")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.ro.min.js b/assets/javascripts/lunr/min/lunr.ro.min.js new file mode 100644 index 0000000..7277140 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.ro.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Romanian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,i){"function"==typeof define&&define.amd?define(i):"object"==typeof exports?module.exports=i():i()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ro=function(){this.pipeline.reset(),this.pipeline.add(e.ro.trimmer,e.ro.stopWordFilter,e.ro.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ro.stemmer))},e.ro.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.ro.trimmer=e.trimmerSupport.generateTrimmer(e.ro.wordCharacters),e.Pipeline.registerFunction(e.ro.trimmer,"trimmer-ro"),e.ro.stemmer=function(){var i=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,n=new function(){function e(e,i){L.eq_s(1,e)&&(L.ket=L.cursor,L.in_grouping(W,97,259)&&L.slice_from(i))}function n(){for(var i,r;;){if(i=L.cursor,L.in_grouping(W,97,259)&&(r=L.cursor,L.bra=r,e("u","U"),L.cursor=r,e("i","I")),L.cursor=i,L.cursor>=L.limit)break;L.cursor++}}function t(){if(L.out_grouping(W,97,259)){for(;!L.in_grouping(W,97,259);){if(L.cursor>=L.limit)return!0;L.cursor++}return!1}return!0}function a(){if(L.in_grouping(W,97,259))for(;!L.out_grouping(W,97,259);){if(L.cursor>=L.limit)return!0;L.cursor++}return!1}function o(){var e,i,r=L.cursor;if(L.in_grouping(W,97,259)){if(e=L.cursor,!t())return void(h=L.cursor);if(L.cursor=e,!a())return void(h=L.cursor)}L.cursor=r,L.out_grouping(W,97,259)&&(i=L.cursor,t()&&(L.cursor=i,L.in_grouping(W,97,259)&&L.cursor=L.limit)return!1;L.cursor++}for(;!L.out_grouping(W,97,259);){if(L.cursor>=L.limit)return!1;L.cursor++}return!0}function c(){var e=L.cursor;h=L.limit,k=h,g=h,o(),L.cursor=e,u()&&(k=L.cursor,u()&&(g=L.cursor))}function s(){for(var e;;){if(L.bra=L.cursor,e=L.find_among(z,3))switch(L.ket=L.cursor,e){case 1:L.slice_from("i");continue;case 2:L.slice_from("u");continue;case 3:if(L.cursor>=L.limit)break;L.cursor++;continue}break}}function w(){return h<=L.cursor}function m(){return k<=L.cursor}function l(){return g<=L.cursor}function f(){var e,i;if(L.ket=L.cursor,(e=L.find_among_b(C,16))&&(L.bra=L.cursor,m()))switch(e){case 1:L.slice_del();break;case 2:L.slice_from("a");break;case 3:L.slice_from("e");break;case 4:L.slice_from("i");break;case 5:i=L.limit-L.cursor,L.eq_s_b(2,"ab")||(L.cursor=L.limit-i,L.slice_from("i"));break;case 6:L.slice_from("at");break;case 7:L.slice_from("aţi")}}function p(){var e,i=L.limit-L.cursor;if(L.ket=L.cursor,(e=L.find_among_b(P,46))&&(L.bra=L.cursor,m())){switch(e){case 1:L.slice_from("abil");break;case 2:L.slice_from("ibil");break;case 3:L.slice_from("iv");break;case 4:L.slice_from("ic");break;case 5:L.slice_from("at");break;case 6:L.slice_from("it")}return _=!0,L.cursor=L.limit-i,!0}return!1}function d(){var e,i;for(_=!1;;)if(i=L.limit-L.cursor,!p()){L.cursor=L.limit-i;break}if(L.ket=L.cursor,(e=L.find_among_b(F,62))&&(L.bra=L.cursor,l())){switch(e){case 1:L.slice_del();break;case 2:L.eq_s_b(1,"ţ")&&(L.bra=L.cursor,L.slice_from("t"));break;case 3:L.slice_from("ist")}_=!0}}function b(){var e,i,r;if(L.cursor>=h){if(i=L.limit_backward,L.limit_backward=h,L.ket=L.cursor,e=L.find_among_b(q,94))switch(L.bra=L.cursor,e){case 1:if(r=L.limit-L.cursor,!L.out_grouping_b(W,97,259)&&(L.cursor=L.limit-r,!L.eq_s_b(1,"u")))break;case 2:L.slice_del()}L.limit_backward=i}}function v(){var e;L.ket=L.cursor,(e=L.find_among_b(S,5))&&(L.bra=L.cursor,w()&&1==e&&L.slice_del())}var _,g,k,h,z=[new i("",-1,3),new i("I",0,1),new i("U",0,2)],C=[new i("ea",-1,3),new i("aţia",-1,7),new i("aua",-1,2),new i("iua",-1,4),new i("aţie",-1,7),new i("ele",-1,3),new i("ile",-1,5),new i("iile",6,4),new i("iei",-1,4),new i("atei",-1,6),new i("ii",-1,4),new i("ului",-1,1),new i("ul",-1,1),new i("elor",-1,3),new i("ilor",-1,4),new i("iilor",14,4)],P=[new i("icala",-1,4),new i("iciva",-1,4),new i("ativa",-1,5),new i("itiva",-1,6),new i("icale",-1,4),new i("aţiune",-1,5),new i("iţiune",-1,6),new i("atoare",-1,5),new i("itoare",-1,6),new i("ătoare",-1,5),new i("icitate",-1,4),new i("abilitate",-1,1),new i("ibilitate",-1,2),new i("ivitate",-1,3),new i("icive",-1,4),new i("ative",-1,5),new i("itive",-1,6),new i("icali",-1,4),new i("atori",-1,5),new i("icatori",18,4),new i("itori",-1,6),new i("ători",-1,5),new i("icitati",-1,4),new i("abilitati",-1,1),new i("ivitati",-1,3),new i("icivi",-1,4),new i("ativi",-1,5),new i("itivi",-1,6),new i("icităi",-1,4),new i("abilităi",-1,1),new i("ivităi",-1,3),new i("icităţi",-1,4),new i("abilităţi",-1,1),new i("ivităţi",-1,3),new i("ical",-1,4),new i("ator",-1,5),new i("icator",35,4),new i("itor",-1,6),new i("ător",-1,5),new i("iciv",-1,4),new i("ativ",-1,5),new i("itiv",-1,6),new i("icală",-1,4),new i("icivă",-1,4),new i("ativă",-1,5),new i("itivă",-1,6)],F=[new i("ica",-1,1),new i("abila",-1,1),new i("ibila",-1,1),new i("oasa",-1,1),new i("ata",-1,1),new i("ita",-1,1),new i("anta",-1,1),new i("ista",-1,3),new i("uta",-1,1),new i("iva",-1,1),new i("ic",-1,1),new i("ice",-1,1),new i("abile",-1,1),new i("ibile",-1,1),new i("isme",-1,3),new i("iune",-1,2),new i("oase",-1,1),new i("ate",-1,1),new i("itate",17,1),new i("ite",-1,1),new i("ante",-1,1),new i("iste",-1,3),new i("ute",-1,1),new i("ive",-1,1),new i("ici",-1,1),new i("abili",-1,1),new i("ibili",-1,1),new i("iuni",-1,2),new i("atori",-1,1),new i("osi",-1,1),new i("ati",-1,1),new i("itati",30,1),new i("iti",-1,1),new i("anti",-1,1),new i("isti",-1,3),new i("uti",-1,1),new i("işti",-1,3),new i("ivi",-1,1),new i("ităi",-1,1),new i("oşi",-1,1),new i("ităţi",-1,1),new i("abil",-1,1),new i("ibil",-1,1),new i("ism",-1,3),new i("ator",-1,1),new i("os",-1,1),new i("at",-1,1),new i("it",-1,1),new i("ant",-1,1),new i("ist",-1,3),new i("ut",-1,1),new i("iv",-1,1),new i("ică",-1,1),new i("abilă",-1,1),new i("ibilă",-1,1),new i("oasă",-1,1),new i("ată",-1,1),new i("ită",-1,1),new i("antă",-1,1),new i("istă",-1,3),new i("ută",-1,1),new i("ivă",-1,1)],q=[new i("ea",-1,1),new i("ia",-1,1),new i("esc",-1,1),new i("ăsc",-1,1),new i("ind",-1,1),new i("ând",-1,1),new i("are",-1,1),new i("ere",-1,1),new i("ire",-1,1),new i("âre",-1,1),new i("se",-1,2),new i("ase",10,1),new i("sese",10,2),new i("ise",10,1),new i("use",10,1),new i("âse",10,1),new i("eşte",-1,1),new i("ăşte",-1,1),new i("eze",-1,1),new i("ai",-1,1),new i("eai",19,1),new i("iai",19,1),new i("sei",-1,2),new i("eşti",-1,1),new i("ăşti",-1,1),new i("ui",-1,1),new i("ezi",-1,1),new i("âi",-1,1),new i("aşi",-1,1),new i("seşi",-1,2),new i("aseşi",29,1),new i("seseşi",29,2),new i("iseşi",29,1),new i("useşi",29,1),new i("âseşi",29,1),new i("işi",-1,1),new i("uşi",-1,1),new i("âşi",-1,1),new i("aţi",-1,2),new i("eaţi",38,1),new i("iaţi",38,1),new i("eţi",-1,2),new i("iţi",-1,2),new i("âţi",-1,2),new i("arăţi",-1,1),new i("serăţi",-1,2),new i("aserăţi",45,1),new i("seserăţi",45,2),new i("iserăţi",45,1),new i("userăţi",45,1),new i("âserăţi",45,1),new i("irăţi",-1,1),new i("urăţi",-1,1),new i("ârăţi",-1,1),new i("am",-1,1),new i("eam",54,1),new i("iam",54,1),new i("em",-1,2),new i("asem",57,1),new i("sesem",57,2),new i("isem",57,1),new i("usem",57,1),new i("âsem",57,1),new i("im",-1,2),new i("âm",-1,2),new i("ăm",-1,2),new i("arăm",65,1),new i("serăm",65,2),new i("aserăm",67,1),new i("seserăm",67,2),new i("iserăm",67,1),new i("userăm",67,1),new i("âserăm",67,1),new i("irăm",65,1),new i("urăm",65,1),new i("ârăm",65,1),new i("au",-1,1),new i("eau",76,1),new i("iau",76,1),new i("indu",-1,1),new i("ându",-1,1),new i("ez",-1,1),new i("ească",-1,1),new i("ară",-1,1),new i("seră",-1,2),new i("aseră",84,1),new i("seseră",84,2),new i("iseră",84,1),new i("useră",84,1),new i("âseră",84,1),new i("iră",-1,1),new i("ură",-1,1),new i("âră",-1,1),new i("ează",-1,1)],S=[new i("a",-1,1),new i("e",-1,1),new i("ie",1,1),new i("i",-1,1),new i("ă",-1,1)],W=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,2,32,0,0,4],L=new r;this.setCurrent=function(e){L.setCurrent(e)},this.getCurrent=function(){return L.getCurrent()},this.stem=function(){var e=L.cursor;return n(),L.cursor=e,c(),L.limit_backward=e,L.cursor=L.limit,f(),L.cursor=L.limit,d(),L.cursor=L.limit,_||(L.cursor=L.limit,b(),L.cursor=L.limit),v(),L.cursor=L.limit_backward,s(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.ro.stemmer,"stemmer-ro"),e.ro.stopWordFilter=e.generateStopWordFilter("acea aceasta această aceea acei aceia acel acela acele acelea acest acesta aceste acestea aceşti aceştia acolo acord acum ai aia aibă aici al ale alea altceva altcineva am ar are asemenea asta astea astăzi asupra au avea avem aveţi azi aş aşadar aţi bine bucur bună ca care caut ce cel ceva chiar cinci cine cineva contra cu cum cumva curând curînd când cât câte câtva câţi cînd cît cîte cîtva cîţi că căci cărei căror cărui către da dacă dar datorită dată dau de deci deja deoarece departe deşi din dinaintea dintr- dintre doi doilea două drept după dă ea ei el ele eram este eu eşti face fata fi fie fiecare fii fim fiu fiţi frumos fără graţie halbă iar ieri la le li lor lui lângă lîngă mai mea mei mele mereu meu mi mie mine mult multă mulţi mulţumesc mâine mîine mă ne nevoie nici nicăieri nimeni nimeri nimic nişte noastre noastră noi noroc nostru nouă noştri nu opt ori oricare orice oricine oricum oricând oricât oricînd oricît oriunde patra patru patrulea pe pentru peste pic poate pot prea prima primul prin puţin puţina puţină până pînă rog sa sale sau se spate spre sub sunt suntem sunteţi sută sînt sîntem sînteţi să săi său ta tale te timp tine toate toată tot totuşi toţi trei treia treilea tu tăi tău un una unde undeva unei uneia unele uneori unii unor unora unu unui unuia unul vi voastre voastră voi vostru vouă voştri vreme vreo vreun vă zece zero zi zice îi îl îmi împotriva în înainte înaintea încotro încât încît între întrucât întrucît îţi ăla ălea ăsta ăstea ăştia şapte şase şi ştiu ţi ţie".split(" ")),e.Pipeline.registerFunction(e.ro.stopWordFilter,"stopWordFilter-ro")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.ru.min.js b/assets/javascripts/lunr/min/lunr.ru.min.js new file mode 100644 index 0000000..186cc48 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.ru.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Russian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,n){"function"==typeof define&&define.amd?define(n):"object"==typeof exports?module.exports=n():n()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ru=function(){this.pipeline.reset(),this.pipeline.add(e.ru.trimmer,e.ru.stopWordFilter,e.ru.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ru.stemmer))},e.ru.wordCharacters="Ѐ-҄҇-ԯᴫᵸⷠ-ⷿꙀ-ꚟ︮︯",e.ru.trimmer=e.trimmerSupport.generateTrimmer(e.ru.wordCharacters),e.Pipeline.registerFunction(e.ru.trimmer,"trimmer-ru"),e.ru.stemmer=function(){var n=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,t=new function(){function e(){for(;!W.in_grouping(S,1072,1103);){if(W.cursor>=W.limit)return!1;W.cursor++}return!0}function t(){for(;!W.out_grouping(S,1072,1103);){if(W.cursor>=W.limit)return!1;W.cursor++}return!0}function w(){b=W.limit,_=b,e()&&(b=W.cursor,t()&&e()&&t()&&(_=W.cursor))}function i(){return _<=W.cursor}function u(e,n){var r,t;if(W.ket=W.cursor,r=W.find_among_b(e,n)){switch(W.bra=W.cursor,r){case 1:if(t=W.limit-W.cursor,!W.eq_s_b(1,"а")&&(W.cursor=W.limit-t,!W.eq_s_b(1,"я")))return!1;case 2:W.slice_del()}return!0}return!1}function o(){return u(h,9)}function s(e,n){var r;return W.ket=W.cursor,!!(r=W.find_among_b(e,n))&&(W.bra=W.cursor,1==r&&W.slice_del(),!0)}function c(){return s(g,26)}function m(){return!!c()&&(u(C,8),!0)}function f(){return s(k,2)}function l(){return u(P,46)}function a(){s(v,36)}function p(){var e;W.ket=W.cursor,(e=W.find_among_b(F,2))&&(W.bra=W.cursor,i()&&1==e&&W.slice_del())}function d(){var e;if(W.ket=W.cursor,e=W.find_among_b(q,4))switch(W.bra=W.cursor,e){case 1:if(W.slice_del(),W.ket=W.cursor,!W.eq_s_b(1,"н"))break;W.bra=W.cursor;case 2:if(!W.eq_s_b(1,"н"))break;case 3:W.slice_del()}}var _,b,h=[new n("в",-1,1),new n("ив",0,2),new n("ыв",0,2),new n("вши",-1,1),new n("ивши",3,2),new n("ывши",3,2),new n("вшись",-1,1),new n("ившись",6,2),new n("ывшись",6,2)],g=[new n("ее",-1,1),new n("ие",-1,1),new n("ое",-1,1),new n("ые",-1,1),new n("ими",-1,1),new n("ыми",-1,1),new n("ей",-1,1),new n("ий",-1,1),new n("ой",-1,1),new n("ый",-1,1),new n("ем",-1,1),new n("им",-1,1),new n("ом",-1,1),new n("ым",-1,1),new n("его",-1,1),new n("ого",-1,1),new n("ему",-1,1),new n("ому",-1,1),new n("их",-1,1),new n("ых",-1,1),new n("ею",-1,1),new n("ою",-1,1),new n("ую",-1,1),new n("юю",-1,1),new n("ая",-1,1),new n("яя",-1,1)],C=[new n("ем",-1,1),new n("нн",-1,1),new n("вш",-1,1),new n("ивш",2,2),new n("ывш",2,2),new n("щ",-1,1),new n("ющ",5,1),new n("ующ",6,2)],k=[new n("сь",-1,1),new n("ся",-1,1)],P=[new n("ла",-1,1),new n("ила",0,2),new n("ыла",0,2),new n("на",-1,1),new n("ена",3,2),new n("ете",-1,1),new n("ите",-1,2),new n("йте",-1,1),new n("ейте",7,2),new n("уйте",7,2),new n("ли",-1,1),new n("или",10,2),new n("ыли",10,2),new n("й",-1,1),new n("ей",13,2),new n("уй",13,2),new n("л",-1,1),new n("ил",16,2),new n("ыл",16,2),new n("ем",-1,1),new n("им",-1,2),new n("ым",-1,2),new n("н",-1,1),new n("ен",22,2),new n("ло",-1,1),new n("ило",24,2),new n("ыло",24,2),new n("но",-1,1),new n("ено",27,2),new n("нно",27,1),new n("ет",-1,1),new n("ует",30,2),new n("ит",-1,2),new n("ыт",-1,2),new n("ют",-1,1),new n("уют",34,2),new n("ят",-1,2),new n("ны",-1,1),new n("ены",37,2),new n("ть",-1,1),new n("ить",39,2),new n("ыть",39,2),new n("ешь",-1,1),new n("ишь",-1,2),new n("ю",-1,2),new n("ую",44,2)],v=[new n("а",-1,1),new n("ев",-1,1),new n("ов",-1,1),new n("е",-1,1),new n("ие",3,1),new n("ье",3,1),new n("и",-1,1),new n("еи",6,1),new n("ии",6,1),new n("ами",6,1),new n("ями",6,1),new n("иями",10,1),new n("й",-1,1),new n("ей",12,1),new n("ией",13,1),new n("ий",12,1),new n("ой",12,1),new n("ам",-1,1),new n("ем",-1,1),new n("ием",18,1),new n("ом",-1,1),new n("ям",-1,1),new n("иям",21,1),new n("о",-1,1),new n("у",-1,1),new n("ах",-1,1),new n("ях",-1,1),new n("иях",26,1),new n("ы",-1,1),new n("ь",-1,1),new n("ю",-1,1),new n("ию",30,1),new n("ью",30,1),new n("я",-1,1),new n("ия",33,1),new n("ья",33,1)],F=[new n("ост",-1,1),new n("ость",-1,1)],q=[new n("ейше",-1,1),new n("н",-1,2),new n("ейш",-1,1),new n("ь",-1,3)],S=[33,65,8,232],W=new r;this.setCurrent=function(e){W.setCurrent(e)},this.getCurrent=function(){return W.getCurrent()},this.stem=function(){return w(),W.cursor=W.limit,!(W.cursor=i&&(e-=i,t[e>>3]&1<<(7&e)))return this.cursor++,!0}return!1},in_grouping_b:function(t,i,s){if(this.cursor>this.limit_backward){var e=r.charCodeAt(this.cursor-1);if(e<=s&&e>=i&&(e-=i,t[e>>3]&1<<(7&e)))return this.cursor--,!0}return!1},out_grouping:function(t,i,s){if(this.cursors||e>3]&1<<(7&e)))return this.cursor++,!0}return!1},out_grouping_b:function(t,i,s){if(this.cursor>this.limit_backward){var e=r.charCodeAt(this.cursor-1);if(e>s||e>3]&1<<(7&e)))return this.cursor--,!0}return!1},eq_s:function(t,i){if(this.limit-this.cursor>1),f=0,l=o0||e==s||c)break;c=!0}}for(;;){var _=t[s];if(o>=_.s_size){if(this.cursor=n+_.s_size,!_.method)return _.result;var b=_.method();if(this.cursor=n+_.s_size,b)return _.result}if((s=_.substring_i)<0)return 0}},find_among_b:function(t,i){for(var s=0,e=i,n=this.cursor,u=this.limit_backward,o=0,h=0,c=!1;;){for(var a=s+(e-s>>1),f=0,l=o=0;m--){if(n-l==u){f=-1;break}if(f=r.charCodeAt(n-1-l)-_.s[m])break;l++}if(f<0?(e=a,h=l):(s=a,o=l),e-s<=1){if(s>0||e==s||c)break;c=!0}}for(;;){var _=t[s];if(o>=_.s_size){if(this.cursor=n-_.s_size,!_.method)return _.result;var b=_.method();if(this.cursor=n-_.s_size,b)return _.result}if((s=_.substring_i)<0)return 0}},replace_s:function(t,i,s){var e=s.length-(i-t),n=r.substring(0,t),u=r.substring(i);return r=n+s+u,this.limit+=e,this.cursor>=i?this.cursor+=e:this.cursor>t&&(this.cursor=t),e},slice_check:function(){if(this.bra<0||this.bra>this.ket||this.ket>this.limit||this.limit>r.length)throw"faulty slice operation"},slice_from:function(r){this.slice_check(),this.replace_s(this.bra,this.ket,r)},slice_del:function(){this.slice_from("")},insert:function(r,t,i){var s=this.replace_s(r,t,i);r<=this.bra&&(this.bra+=s),r<=this.ket&&(this.ket+=s)},slice_to:function(){return this.slice_check(),r.substring(this.bra,this.ket)},eq_v_b:function(r){return this.eq_s_b(r.length,r)}}}},r.trimmerSupport={generateTrimmer:function(r){var t=new RegExp("^[^"+r+"]+"),i=new RegExp("[^"+r+"]+$");return function(r){return"function"==typeof r.update?r.update(function(r){return r.replace(t,"").replace(i,"")}):r.replace(t,"").replace(i,"")}}}}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.sv.min.js b/assets/javascripts/lunr/min/lunr.sv.min.js new file mode 100644 index 0000000..3e5eb64 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.sv.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Swedish` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.sv=function(){this.pipeline.reset(),this.pipeline.add(e.sv.trimmer,e.sv.stopWordFilter,e.sv.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.sv.stemmer))},e.sv.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.sv.trimmer=e.trimmerSupport.generateTrimmer(e.sv.wordCharacters),e.Pipeline.registerFunction(e.sv.trimmer,"trimmer-sv"),e.sv.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,t=new function(){function e(){var e,r=w.cursor+3;if(o=w.limit,0<=r||r<=w.limit){for(a=r;;){if(e=w.cursor,w.in_grouping(l,97,246)){w.cursor=e;break}if(w.cursor=e,w.cursor>=w.limit)return;w.cursor++}for(;!w.out_grouping(l,97,246);){if(w.cursor>=w.limit)return;w.cursor++}o=w.cursor,o=o&&(w.limit_backward=o,w.cursor=w.limit,w.ket=w.cursor,e=w.find_among_b(u,37),w.limit_backward=r,e))switch(w.bra=w.cursor,e){case 1:w.slice_del();break;case 2:w.in_grouping_b(d,98,121)&&w.slice_del()}}function i(){var e=w.limit_backward;w.cursor>=o&&(w.limit_backward=o,w.cursor=w.limit,w.find_among_b(c,7)&&(w.cursor=w.limit,w.ket=w.cursor,w.cursor>w.limit_backward&&(w.bra=--w.cursor,w.slice_del())),w.limit_backward=e)}function s(){var e,r;if(w.cursor>=o){if(r=w.limit_backward,w.limit_backward=o,w.cursor=w.limit,w.ket=w.cursor,e=w.find_among_b(m,5))switch(w.bra=w.cursor,e){case 1:w.slice_del();break;case 2:w.slice_from("lös");break;case 3:w.slice_from("full")}w.limit_backward=r}}var a,o,u=[new r("a",-1,1),new r("arna",0,1),new r("erna",0,1),new r("heterna",2,1),new r("orna",0,1),new r("ad",-1,1),new r("e",-1,1),new r("ade",6,1),new r("ande",6,1),new r("arne",6,1),new r("are",6,1),new r("aste",6,1),new r("en",-1,1),new r("anden",12,1),new r("aren",12,1),new r("heten",12,1),new r("ern",-1,1),new r("ar",-1,1),new r("er",-1,1),new r("heter",18,1),new r("or",-1,1),new r("s",-1,2),new r("as",21,1),new r("arnas",22,1),new r("ernas",22,1),new r("ornas",22,1),new r("es",21,1),new r("ades",26,1),new r("andes",26,1),new r("ens",21,1),new r("arens",29,1),new r("hetens",29,1),new r("erns",21,1),new r("at",-1,1),new r("andet",-1,1),new r("het",-1,1),new r("ast",-1,1)],c=[new r("dd",-1,-1),new r("gd",-1,-1),new r("nn",-1,-1),new r("dt",-1,-1),new r("gt",-1,-1),new r("kt",-1,-1),new r("tt",-1,-1)],m=[new r("ig",-1,1),new r("lig",0,1),new r("els",-1,1),new r("fullt",-1,3),new r("löst",-1,2)],l=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,24,0,32],d=[119,127,149],w=new n;this.setCurrent=function(e){w.setCurrent(e)},this.getCurrent=function(){return w.getCurrent()},this.stem=function(){var r=w.cursor;return e(),w.limit_backward=r,w.cursor=w.limit,t(),w.cursor=w.limit,i(),w.cursor=w.limit,s(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return t.setCurrent(e),t.stem(),t.getCurrent()}):(t.setCurrent(e),t.stem(),t.getCurrent())}}(),e.Pipeline.registerFunction(e.sv.stemmer,"stemmer-sv"),e.sv.stopWordFilter=e.generateStopWordFilter("alla allt att av blev bli blir blivit de dem den denna deras dess dessa det detta dig din dina ditt du där då efter ej eller en er era ert ett från för ha hade han hans har henne hennes hon honom hur här i icke ingen inom inte jag ju kan kunde man med mellan men mig min mina mitt mot mycket ni nu när någon något några och om oss på samma sedan sig sin sina sitta själv skulle som så sådan sådana sådant till under upp ut utan vad var vara varför varit varje vars vart vem vi vid vilka vilkas vilken vilket vår våra vårt än är åt över".split(" ")),e.Pipeline.registerFunction(e.sv.stopWordFilter,"stopWordFilter-sv")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.ta.min.js b/assets/javascripts/lunr/min/lunr.ta.min.js new file mode 100644 index 0000000..a644bed --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.ta.min.js @@ -0,0 +1 @@ +!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():t()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ta=function(){this.pipeline.reset(),this.pipeline.add(e.ta.trimmer,e.ta.stopWordFilter,e.ta.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ta.stemmer))},e.ta.wordCharacters="஀-உஊ-ஏஐ-ஙச-ட஠-னப-யர-ஹ஺-ிீ-௉ொ-௏ௐ-௙௚-௟௠-௩௪-௯௰-௹௺-௿a-zA-Za-zA-Z0-90-9",e.ta.trimmer=e.trimmerSupport.generateTrimmer(e.ta.wordCharacters),e.Pipeline.registerFunction(e.ta.trimmer,"trimmer-ta"),e.ta.stopWordFilter=e.generateStopWordFilter("அங்கு அங்கே அது அதை அந்த அவர் அவர்கள் அவள் அவன் அவை ஆக ஆகவே ஆகையால் ஆதலால் ஆதலினால் ஆனாலும் ஆனால் இங்கு இங்கே இது இதை இந்த இப்படி இவர் இவர்கள் இவள் இவன் இவை இவ்வளவு உனக்கு உனது உன் உன்னால் எங்கு எங்கே எது எதை எந்த எப்படி எவர் எவர்கள் எவள் எவன் எவை எவ்வளவு எனக்கு எனது எனவே என் என்ன என்னால் ஏது ஏன் தனது தன்னால் தானே தான் நாங்கள் நாம் நான் நீ நீங்கள்".split(" ")),e.ta.stemmer=function(){return function(e){return"function"==typeof e.update?e.update(function(e){return e}):e}}();var t=e.wordcut;t.init(),e.ta.tokenizer=function(r){if(!arguments.length||null==r||void 0==r)return[];if(Array.isArray(r))return r.map(function(t){return isLunr2?new e.Token(t.toLowerCase()):t.toLowerCase()});var i=r.toString().toLowerCase().replace(/^\s+/,"");return t.cut(i).split("|")},e.Pipeline.registerFunction(e.ta.stemmer,"stemmer-ta"),e.Pipeline.registerFunction(e.ta.stopWordFilter,"stopWordFilter-ta")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.te.min.js b/assets/javascripts/lunr/min/lunr.te.min.js new file mode 100644 index 0000000..9fa7a93 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.te.min.js @@ -0,0 +1 @@ +!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():t()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.te=function(){this.pipeline.reset(),this.pipeline.add(e.te.trimmer,e.te.stopWordFilter,e.te.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.te.stemmer))},e.te.wordCharacters="ఀ-ఄఅ-ఔక-హా-ౌౕ-ౖౘ-ౚౠ-ౡౢ-ౣ౦-౯౸-౿఼ఽ్ౝ౷౤౥",e.te.trimmer=e.trimmerSupport.generateTrimmer(e.te.wordCharacters),e.Pipeline.registerFunction(e.te.trimmer,"trimmer-te"),e.te.stopWordFilter=e.generateStopWordFilter("అందరూ అందుబాటులో అడగండి అడగడం అడ్డంగా అనుగుణంగా అనుమతించు అనుమతిస్తుంది అయితే ఇప్పటికే ఉన్నారు ఎక్కడైనా ఎప్పుడు ఎవరైనా ఎవరో ఏ ఏదైనా ఏమైనప్పటికి ఒక ఒకరు కనిపిస్తాయి కాదు కూడా గా గురించి చుట్టూ చేయగలిగింది తగిన తర్వాత దాదాపు దూరంగా నిజంగా పై ప్రకారం ప్రక్కన మధ్య మరియు మరొక మళ్ళీ మాత్రమే మెచ్చుకో వద్ద వెంట వేరుగా వ్యతిరేకంగా సంబంధం".split(" ")),e.te.stemmer=function(){return function(e){return"function"==typeof e.update?e.update(function(e){return e}):e}}();var t=e.wordcut;t.init(),e.te.tokenizer=function(r){if(!arguments.length||null==r||void 0==r)return[];if(Array.isArray(r))return r.map(function(t){return isLunr2?new e.Token(t.toLowerCase()):t.toLowerCase()});var i=r.toString().toLowerCase().replace(/^\s+/,"");return t.cut(i).split("|")},e.Pipeline.registerFunction(e.te.stemmer,"stemmer-te"),e.Pipeline.registerFunction(e.te.stopWordFilter,"stopWordFilter-te")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.th.min.js b/assets/javascripts/lunr/min/lunr.th.min.js new file mode 100644 index 0000000..dee3aac --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.th.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");var r="2"==e.version[0];e.th=function(){this.pipeline.reset(),this.pipeline.add(e.th.trimmer),r?this.tokenizer=e.th.tokenizer:(e.tokenizer&&(e.tokenizer=e.th.tokenizer),this.tokenizerFn&&(this.tokenizerFn=e.th.tokenizer))},e.th.wordCharacters="[฀-๿]",e.th.trimmer=e.trimmerSupport.generateTrimmer(e.th.wordCharacters),e.Pipeline.registerFunction(e.th.trimmer,"trimmer-th");var t=e.wordcut;t.init(),e.th.tokenizer=function(i){if(!arguments.length||null==i||void 0==i)return[];if(Array.isArray(i))return i.map(function(t){return r?new e.Token(t):t});var n=i.toString().replace(/^\s+/,"");return t.cut(n).split("|")}}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.tr.min.js b/assets/javascripts/lunr/min/lunr.tr.min.js new file mode 100644 index 0000000..563f6ec --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.tr.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Turkish` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(r,i){"function"==typeof define&&define.amd?define(i):"object"==typeof exports?module.exports=i():i()(r.lunr)}(this,function(){return function(r){if(void 0===r)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===r.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");r.tr=function(){this.pipeline.reset(),this.pipeline.add(r.tr.trimmer,r.tr.stopWordFilter,r.tr.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(r.tr.stemmer))},r.tr.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",r.tr.trimmer=r.trimmerSupport.generateTrimmer(r.tr.wordCharacters),r.Pipeline.registerFunction(r.tr.trimmer,"trimmer-tr"),r.tr.stemmer=function(){var i=r.stemmerSupport.Among,e=r.stemmerSupport.SnowballProgram,n=new function(){function r(r,i,e){for(;;){var n=Dr.limit-Dr.cursor;if(Dr.in_grouping_b(r,i,e)){Dr.cursor=Dr.limit-n;break}if(Dr.cursor=Dr.limit-n,Dr.cursor<=Dr.limit_backward)return!1;Dr.cursor--}return!0}function n(){var i,e;i=Dr.limit-Dr.cursor,r(Wr,97,305);for(var n=0;nDr.limit_backward&&(Dr.cursor--,e=Dr.limit-Dr.cursor,i()))?(Dr.cursor=Dr.limit-e,!0):(Dr.cursor=Dr.limit-n,r()?(Dr.cursor=Dr.limit-n,!1):(Dr.cursor=Dr.limit-n,!(Dr.cursor<=Dr.limit_backward)&&(Dr.cursor--,!!i()&&(Dr.cursor=Dr.limit-n,!0))))}function u(r){return t(r,function(){return Dr.in_grouping_b(Wr,97,305)})}function o(){return u(function(){return Dr.eq_s_b(1,"n")})}function s(){return u(function(){return Dr.eq_s_b(1,"s")})}function c(){return u(function(){return Dr.eq_s_b(1,"y")})}function l(){return t(function(){return Dr.in_grouping_b(Lr,105,305)},function(){return Dr.out_grouping_b(Wr,97,305)})}function a(){return Dr.find_among_b(ur,10)&&l()}function m(){return n()&&Dr.in_grouping_b(Lr,105,305)&&s()}function d(){return Dr.find_among_b(or,2)}function f(){return n()&&Dr.in_grouping_b(Lr,105,305)&&c()}function b(){return n()&&Dr.find_among_b(sr,4)}function w(){return n()&&Dr.find_among_b(cr,4)&&o()}function _(){return n()&&Dr.find_among_b(lr,2)&&c()}function k(){return n()&&Dr.find_among_b(ar,2)}function p(){return n()&&Dr.find_among_b(mr,4)}function g(){return n()&&Dr.find_among_b(dr,2)}function y(){return n()&&Dr.find_among_b(fr,4)}function z(){return n()&&Dr.find_among_b(br,2)}function v(){return n()&&Dr.find_among_b(wr,2)&&c()}function h(){return Dr.eq_s_b(2,"ki")}function q(){return n()&&Dr.find_among_b(_r,2)&&o()}function C(){return n()&&Dr.find_among_b(kr,4)&&c()}function P(){return n()&&Dr.find_among_b(pr,4)}function F(){return n()&&Dr.find_among_b(gr,4)&&c()}function S(){return Dr.find_among_b(yr,4)}function W(){return n()&&Dr.find_among_b(zr,2)}function L(){return n()&&Dr.find_among_b(vr,4)}function x(){return n()&&Dr.find_among_b(hr,8)}function A(){return Dr.find_among_b(qr,2)}function E(){return n()&&Dr.find_among_b(Cr,32)&&c()}function j(){return Dr.find_among_b(Pr,8)&&c()}function T(){return n()&&Dr.find_among_b(Fr,4)&&c()}function Z(){return Dr.eq_s_b(3,"ken")&&c()}function B(){var r=Dr.limit-Dr.cursor;return!(T()||(Dr.cursor=Dr.limit-r,E()||(Dr.cursor=Dr.limit-r,j()||(Dr.cursor=Dr.limit-r,Z()))))}function D(){if(A()){var r=Dr.limit-Dr.cursor;if(S()||(Dr.cursor=Dr.limit-r,W()||(Dr.cursor=Dr.limit-r,C()||(Dr.cursor=Dr.limit-r,P()||(Dr.cursor=Dr.limit-r,F()||(Dr.cursor=Dr.limit-r))))),T())return!1}return!0}function G(){if(W()){Dr.bra=Dr.cursor,Dr.slice_del();var r=Dr.limit-Dr.cursor;return Dr.ket=Dr.cursor,x()||(Dr.cursor=Dr.limit-r,E()||(Dr.cursor=Dr.limit-r,j()||(Dr.cursor=Dr.limit-r,T()||(Dr.cursor=Dr.limit-r)))),nr=!1,!1}return!0}function H(){if(!L())return!0;var r=Dr.limit-Dr.cursor;return!E()&&(Dr.cursor=Dr.limit-r,!j())}function I(){var r,i=Dr.limit-Dr.cursor;return!(S()||(Dr.cursor=Dr.limit-i,F()||(Dr.cursor=Dr.limit-i,P()||(Dr.cursor=Dr.limit-i,C()))))||(Dr.bra=Dr.cursor,Dr.slice_del(),r=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,T()||(Dr.cursor=Dr.limit-r),!1)}function J(){var r,i=Dr.limit-Dr.cursor;if(Dr.ket=Dr.cursor,nr=!0,B()&&(Dr.cursor=Dr.limit-i,D()&&(Dr.cursor=Dr.limit-i,G()&&(Dr.cursor=Dr.limit-i,H()&&(Dr.cursor=Dr.limit-i,I()))))){if(Dr.cursor=Dr.limit-i,!x())return;Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,r=Dr.limit-Dr.cursor,S()||(Dr.cursor=Dr.limit-r,W()||(Dr.cursor=Dr.limit-r,C()||(Dr.cursor=Dr.limit-r,P()||(Dr.cursor=Dr.limit-r,F()||(Dr.cursor=Dr.limit-r))))),T()||(Dr.cursor=Dr.limit-r)}Dr.bra=Dr.cursor,Dr.slice_del()}function K(){var r,i,e,n;if(Dr.ket=Dr.cursor,h()){if(r=Dr.limit-Dr.cursor,p())return Dr.bra=Dr.cursor,Dr.slice_del(),i=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,W()?(Dr.bra=Dr.cursor,Dr.slice_del(),K()):(Dr.cursor=Dr.limit-i,a()&&(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K()))),!0;if(Dr.cursor=Dr.limit-r,w()){if(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,e=Dr.limit-Dr.cursor,d())Dr.bra=Dr.cursor,Dr.slice_del();else{if(Dr.cursor=Dr.limit-e,Dr.ket=Dr.cursor,!a()&&(Dr.cursor=Dr.limit-e,!m()&&(Dr.cursor=Dr.limit-e,!K())))return!0;Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K())}return!0}if(Dr.cursor=Dr.limit-r,g()){if(n=Dr.limit-Dr.cursor,d())Dr.bra=Dr.cursor,Dr.slice_del();else if(Dr.cursor=Dr.limit-n,m())Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K());else if(Dr.cursor=Dr.limit-n,!K())return!1;return!0}}return!1}function M(r){if(Dr.ket=Dr.cursor,!g()&&(Dr.cursor=Dr.limit-r,!k()))return!1;var i=Dr.limit-Dr.cursor;if(d())Dr.bra=Dr.cursor,Dr.slice_del();else if(Dr.cursor=Dr.limit-i,m())Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K());else if(Dr.cursor=Dr.limit-i,!K())return!1;return!0}function N(r){if(Dr.ket=Dr.cursor,!z()&&(Dr.cursor=Dr.limit-r,!b()))return!1;var i=Dr.limit-Dr.cursor;return!(!m()&&(Dr.cursor=Dr.limit-i,!d()))&&(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K()),!0)}function O(){var r,i=Dr.limit-Dr.cursor;return Dr.ket=Dr.cursor,!(!w()&&(Dr.cursor=Dr.limit-i,!v()))&&(Dr.bra=Dr.cursor,Dr.slice_del(),r=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,!(!W()||(Dr.bra=Dr.cursor,Dr.slice_del(),!K()))||(Dr.cursor=Dr.limit-r,Dr.ket=Dr.cursor,!(a()||(Dr.cursor=Dr.limit-r,m()||(Dr.cursor=Dr.limit-r,K())))||(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K()),!0)))}function Q(){var r,i,e=Dr.limit-Dr.cursor;if(Dr.ket=Dr.cursor,!p()&&(Dr.cursor=Dr.limit-e,!f()&&(Dr.cursor=Dr.limit-e,!_())))return!1;if(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,r=Dr.limit-Dr.cursor,a())Dr.bra=Dr.cursor,Dr.slice_del(),i=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,W()||(Dr.cursor=Dr.limit-i);else if(Dr.cursor=Dr.limit-r,!W())return!0;return Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,K(),!0}function R(){var r,i,e=Dr.limit-Dr.cursor;if(Dr.ket=Dr.cursor,W())return Dr.bra=Dr.cursor,Dr.slice_del(),void K();if(Dr.cursor=Dr.limit-e,Dr.ket=Dr.cursor,q())if(Dr.bra=Dr.cursor,Dr.slice_del(),r=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,d())Dr.bra=Dr.cursor,Dr.slice_del();else{if(Dr.cursor=Dr.limit-r,Dr.ket=Dr.cursor,!a()&&(Dr.cursor=Dr.limit-r,!m())){if(Dr.cursor=Dr.limit-r,Dr.ket=Dr.cursor,!W())return;if(Dr.bra=Dr.cursor,Dr.slice_del(),!K())return}Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K())}else if(Dr.cursor=Dr.limit-e,!M(e)&&(Dr.cursor=Dr.limit-e,!N(e))){if(Dr.cursor=Dr.limit-e,Dr.ket=Dr.cursor,y())return Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,i=Dr.limit-Dr.cursor,void(a()?(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K())):(Dr.cursor=Dr.limit-i,W()?(Dr.bra=Dr.cursor,Dr.slice_del(),K()):(Dr.cursor=Dr.limit-i,K())));if(Dr.cursor=Dr.limit-e,!O()){if(Dr.cursor=Dr.limit-e,d())return Dr.bra=Dr.cursor,void Dr.slice_del();Dr.cursor=Dr.limit-e,K()||(Dr.cursor=Dr.limit-e,Q()||(Dr.cursor=Dr.limit-e,Dr.ket=Dr.cursor,(a()||(Dr.cursor=Dr.limit-e,m()))&&(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K()))))}}}function U(){var r;if(Dr.ket=Dr.cursor,r=Dr.find_among_b(Sr,4))switch(Dr.bra=Dr.cursor,r){case 1:Dr.slice_from("p");break;case 2:Dr.slice_from("ç");break;case 3:Dr.slice_from("t");break;case 4:Dr.slice_from("k")}}function V(){for(;;){var r=Dr.limit-Dr.cursor;if(Dr.in_grouping_b(Wr,97,305)){Dr.cursor=Dr.limit-r;break}if(Dr.cursor=Dr.limit-r,Dr.cursor<=Dr.limit_backward)return!1;Dr.cursor--}return!0}function X(r,i,e){if(Dr.cursor=Dr.limit-r,V()){var n=Dr.limit-Dr.cursor;if(!Dr.eq_s_b(1,i)&&(Dr.cursor=Dr.limit-n,!Dr.eq_s_b(1,e)))return!0;Dr.cursor=Dr.limit-r;var t=Dr.cursor;return Dr.insert(Dr.cursor,Dr.cursor,e),Dr.cursor=t,!1}return!0}function Y(){var r=Dr.limit-Dr.cursor;(Dr.eq_s_b(1,"d")||(Dr.cursor=Dr.limit-r,Dr.eq_s_b(1,"g")))&&X(r,"a","ı")&&X(r,"e","i")&&X(r,"o","u")&&X(r,"ö","ü")}function $(){for(var r,i=Dr.cursor,e=2;;){for(r=Dr.cursor;!Dr.in_grouping(Wr,97,305);){if(Dr.cursor>=Dr.limit)return Dr.cursor=r,!(e>0)&&(Dr.cursor=i,!0);Dr.cursor++}e--}}function rr(r,i,e){for(;!Dr.eq_s(i,e);){if(Dr.cursor>=Dr.limit)return!0;Dr.cursor++}return(tr=i)!=Dr.limit||(Dr.cursor=r,!1)}function ir(){var r=Dr.cursor;return!rr(r,2,"ad")||(Dr.cursor=r,!rr(r,5,"soyad"))}function er(){var r=Dr.cursor;return!ir()&&(Dr.limit_backward=r,Dr.cursor=Dr.limit,Y(),Dr.cursor=Dr.limit,U(),!0)}var nr,tr,ur=[new i("m",-1,-1),new i("n",-1,-1),new i("miz",-1,-1),new i("niz",-1,-1),new i("muz",-1,-1),new i("nuz",-1,-1),new i("müz",-1,-1),new i("nüz",-1,-1),new i("mız",-1,-1),new i("nız",-1,-1)],or=[new i("leri",-1,-1),new i("ları",-1,-1)],sr=[new i("ni",-1,-1),new i("nu",-1,-1),new i("nü",-1,-1),new i("nı",-1,-1)],cr=[new i("in",-1,-1),new i("un",-1,-1),new i("ün",-1,-1),new i("ın",-1,-1)],lr=[new i("a",-1,-1),new i("e",-1,-1)],ar=[new i("na",-1,-1),new i("ne",-1,-1)],mr=[new i("da",-1,-1),new i("ta",-1,-1),new i("de",-1,-1),new i("te",-1,-1)],dr=[new i("nda",-1,-1),new i("nde",-1,-1)],fr=[new i("dan",-1,-1),new i("tan",-1,-1),new i("den",-1,-1),new i("ten",-1,-1)],br=[new i("ndan",-1,-1),new i("nden",-1,-1)],wr=[new i("la",-1,-1),new i("le",-1,-1)],_r=[new i("ca",-1,-1),new i("ce",-1,-1)],kr=[new i("im",-1,-1),new i("um",-1,-1),new i("üm",-1,-1),new i("ım",-1,-1)],pr=[new i("sin",-1,-1),new i("sun",-1,-1),new i("sün",-1,-1),new i("sın",-1,-1)],gr=[new i("iz",-1,-1),new i("uz",-1,-1),new i("üz",-1,-1),new i("ız",-1,-1)],yr=[new i("siniz",-1,-1),new i("sunuz",-1,-1),new i("sünüz",-1,-1),new i("sınız",-1,-1)],zr=[new i("lar",-1,-1),new i("ler",-1,-1)],vr=[new i("niz",-1,-1),new i("nuz",-1,-1),new i("nüz",-1,-1),new i("nız",-1,-1)],hr=[new i("dir",-1,-1),new i("tir",-1,-1),new i("dur",-1,-1),new i("tur",-1,-1),new i("dür",-1,-1),new i("tür",-1,-1),new i("dır",-1,-1),new i("tır",-1,-1)],qr=[new i("casına",-1,-1),new i("cesine",-1,-1)],Cr=[new i("di",-1,-1),new i("ti",-1,-1),new i("dik",-1,-1),new i("tik",-1,-1),new i("duk",-1,-1),new i("tuk",-1,-1),new i("dük",-1,-1),new i("tük",-1,-1),new i("dık",-1,-1),new i("tık",-1,-1),new i("dim",-1,-1),new i("tim",-1,-1),new i("dum",-1,-1),new i("tum",-1,-1),new i("düm",-1,-1),new i("tüm",-1,-1),new i("dım",-1,-1),new i("tım",-1,-1),new i("din",-1,-1),new i("tin",-1,-1),new i("dun",-1,-1),new i("tun",-1,-1),new i("dün",-1,-1),new i("tün",-1,-1),new i("dın",-1,-1),new i("tın",-1,-1),new i("du",-1,-1),new i("tu",-1,-1),new i("dü",-1,-1),new i("tü",-1,-1),new i("dı",-1,-1),new i("tı",-1,-1)],Pr=[new i("sa",-1,-1),new i("se",-1,-1),new i("sak",-1,-1),new i("sek",-1,-1),new i("sam",-1,-1),new i("sem",-1,-1),new i("san",-1,-1),new i("sen",-1,-1)],Fr=[new i("miş",-1,-1),new i("muş",-1,-1),new i("müş",-1,-1),new i("mış",-1,-1)],Sr=[new i("b",-1,1),new i("c",-1,2),new i("d",-1,3),new i("ğ",-1,4)],Wr=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,8,0,0,0,0,0,0,1],Lr=[1,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,1],xr=[1,64,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],Ar=[17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,130],Er=[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],jr=[17],Tr=[65],Zr=[65],Br=[["a",xr,97,305],["e",Ar,101,252],["ı",Er,97,305],["i",jr,101,105],["o",Tr,111,117],["ö",Zr,246,252],["u",Tr,111,117]],Dr=new e;this.setCurrent=function(r){Dr.setCurrent(r)},this.getCurrent=function(){return Dr.getCurrent()},this.stem=function(){return!!($()&&(Dr.limit_backward=Dr.cursor,Dr.cursor=Dr.limit,J(),Dr.cursor=Dr.limit,nr&&(R(),Dr.cursor=Dr.limit_backward,er())))}};return function(r){return"function"==typeof r.update?r.update(function(r){return n.setCurrent(r),n.stem(),n.getCurrent()}):(n.setCurrent(r),n.stem(),n.getCurrent())}}(),r.Pipeline.registerFunction(r.tr.stemmer,"stemmer-tr"),r.tr.stopWordFilter=r.generateStopWordFilter("acaba altmış altı ama ancak arada aslında ayrıca bana bazı belki ben benden beni benim beri beş bile bin bir biri birkaç birkez birçok birşey birşeyi biz bizden bize bizi bizim bu buna bunda bundan bunlar bunları bunların bunu bunun burada böyle böylece da daha dahi de defa değil diye diğer doksan dokuz dolayı dolayısıyla dört edecek eden ederek edilecek ediliyor edilmesi ediyor elli en etmesi etti ettiği ettiğini eğer gibi göre halen hangi hatta hem henüz hep hepsi her herhangi herkesin hiç hiçbir iki ile ilgili ise itibaren itibariyle için işte kadar karşın katrilyon kendi kendilerine kendini kendisi kendisine kendisini kez ki kim kimden kime kimi kimse kırk milyar milyon mu mü mı nasıl ne neden nedenle nerde nerede nereye niye niçin o olan olarak oldu olduklarını olduğu olduğunu olmadı olmadığı olmak olması olmayan olmaz olsa olsun olup olur olursa oluyor on ona ondan onlar onlardan onları onların onu onun otuz oysa pek rağmen sadece sanki sekiz seksen sen senden seni senin siz sizden sizi sizin tarafından trilyon tüm var vardı ve veya ya yani yapacak yapmak yaptı yaptıkları yaptığı yaptığını yapılan yapılması yapıyor yedi yerine yetmiş yine yirmi yoksa yüz zaten çok çünkü öyle üzere üç şey şeyden şeyi şeyler şu şuna şunda şundan şunları şunu şöyle".split(" ")),r.Pipeline.registerFunction(r.tr.stopWordFilter,"stopWordFilter-tr")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.vi.min.js b/assets/javascripts/lunr/min/lunr.vi.min.js new file mode 100644 index 0000000..22aed28 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.vi.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.vi=function(){this.pipeline.reset(),this.pipeline.add(e.vi.stopWordFilter,e.vi.trimmer)},e.vi.wordCharacters="[A-Za-ẓ̀͐́͑̉̃̓ÂâÊêÔôĂ-ăĐ-đƠ-ơƯ-ư]",e.vi.trimmer=e.trimmerSupport.generateTrimmer(e.vi.wordCharacters),e.Pipeline.registerFunction(e.vi.trimmer,"trimmer-vi"),e.vi.stopWordFilter=e.generateStopWordFilter("là cái nhưng mà".split(" "))}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/min/lunr.zh.min.js b/assets/javascripts/lunr/min/lunr.zh.min.js new file mode 100644 index 0000000..fda66e9 --- /dev/null +++ b/assets/javascripts/lunr/min/lunr.zh.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r(require("@node-rs/jieba")):r()(e.lunr)}(this,function(e){return function(r,t){if(void 0===r)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===r.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");var i="2"==r.version[0];r.zh=function(){this.pipeline.reset(),this.pipeline.add(r.zh.trimmer,r.zh.stopWordFilter,r.zh.stemmer),i?this.tokenizer=r.zh.tokenizer:(r.tokenizer&&(r.tokenizer=r.zh.tokenizer),this.tokenizerFn&&(this.tokenizerFn=r.zh.tokenizer))},r.zh.tokenizer=function(n){if(!arguments.length||null==n||void 0==n)return[];if(Array.isArray(n))return n.map(function(e){return i?new r.Token(e.toLowerCase()):e.toLowerCase()});t&&e.load(t);var o=n.toString().trim().toLowerCase(),s=[];e.cut(o,!0).forEach(function(e){s=s.concat(e.split(" "))}),s=s.filter(function(e){return!!e});var u=0;return s.map(function(e,t){if(i){var n=o.indexOf(e,u),s={};return s.position=[n,e.length],s.index=t,u=n,new r.Token(e,s)}return e})},r.zh.wordCharacters="\\w一-龥",r.zh.trimmer=r.trimmerSupport.generateTrimmer(r.zh.wordCharacters),r.Pipeline.registerFunction(r.zh.trimmer,"trimmer-zh"),r.zh.stemmer=function(){return function(e){return e}}(),r.Pipeline.registerFunction(r.zh.stemmer,"stemmer-zh"),r.zh.stopWordFilter=r.generateStopWordFilter("的 一 不 在 人 有 是 为 為 以 于 於 上 他 而 后 後 之 来 來 及 了 因 下 可 到 由 这 這 与 與 也 此 但 并 並 个 個 其 已 无 無 小 我 们 們 起 最 再 今 去 好 只 又 或 很 亦 某 把 那 你 乃 它 吧 被 比 别 趁 当 當 从 從 得 打 凡 儿 兒 尔 爾 该 該 各 给 給 跟 和 何 还 還 即 几 幾 既 看 据 據 距 靠 啦 另 么 麽 每 嘛 拿 哪 您 凭 憑 且 却 卻 让 讓 仍 啥 如 若 使 谁 誰 虽 雖 随 隨 同 所 她 哇 嗡 往 些 向 沿 哟 喲 用 咱 则 則 怎 曾 至 致 着 著 诸 諸 自".split(" ")),r.Pipeline.registerFunction(r.zh.stopWordFilter,"stopWordFilter-zh")}}); \ No newline at end of file diff --git a/assets/javascripts/lunr/tinyseg.js b/assets/javascripts/lunr/tinyseg.js new file mode 100644 index 0000000..167fa6d --- /dev/null +++ b/assets/javascripts/lunr/tinyseg.js @@ -0,0 +1,206 @@ +/** + * export the module via AMD, CommonJS or as a browser global + * Export code from https://github.com/umdjs/umd/blob/master/returnExports.js + */ +;(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define(factory) + } else if (typeof exports === 'object') { + /** + * Node. Does not work with strict CommonJS, but + * only CommonJS-like environments that support module.exports, + * like Node. + */ + module.exports = factory() + } else { + // Browser globals (root is window) + factory()(root.lunr); + } +}(this, function () { + /** + * Just return a value to define the module export. + * This example returns an object, but the module + * can return a function as the exported value. + */ + + return function(lunr) { + // TinySegmenter 0.1 -- Super compact Japanese tokenizer in Javascript + // (c) 2008 Taku Kudo + // TinySegmenter is freely distributable under the terms of a new BSD licence. + // For details, see http://chasen.org/~taku/software/TinySegmenter/LICENCE.txt + + function TinySegmenter() { + var patterns = { + "[一二三四五六七八九十百千万億兆]":"M", + "[一-龠々〆ヵヶ]":"H", + "[ぁ-ん]":"I", + "[ァ-ヴーア-ン゙ー]":"K", + "[a-zA-Za-zA-Z]":"A", + "[0-90-9]":"N" + } + this.chartype_ = []; + for (var i in patterns) { + var regexp = new RegExp(i); + this.chartype_.push([regexp, patterns[i]]); + } + + this.BIAS__ = -332 + this.BC1__ = {"HH":6,"II":2461,"KH":406,"OH":-1378}; + this.BC2__ = {"AA":-3267,"AI":2744,"AN":-878,"HH":-4070,"HM":-1711,"HN":4012,"HO":3761,"IA":1327,"IH":-1184,"II":-1332,"IK":1721,"IO":5492,"KI":3831,"KK":-8741,"MH":-3132,"MK":3334,"OO":-2920}; + this.BC3__ = {"HH":996,"HI":626,"HK":-721,"HN":-1307,"HO":-836,"IH":-301,"KK":2762,"MK":1079,"MM":4034,"OA":-1652,"OH":266}; + this.BP1__ = {"BB":295,"OB":304,"OO":-125,"UB":352}; + this.BP2__ = {"BO":60,"OO":-1762}; + this.BQ1__ = {"BHH":1150,"BHM":1521,"BII":-1158,"BIM":886,"BMH":1208,"BNH":449,"BOH":-91,"BOO":-2597,"OHI":451,"OIH":-296,"OKA":1851,"OKH":-1020,"OKK":904,"OOO":2965}; + this.BQ2__ = {"BHH":118,"BHI":-1159,"BHM":466,"BIH":-919,"BKK":-1720,"BKO":864,"OHH":-1139,"OHM":-181,"OIH":153,"UHI":-1146}; + this.BQ3__ = {"BHH":-792,"BHI":2664,"BII":-299,"BKI":419,"BMH":937,"BMM":8335,"BNN":998,"BOH":775,"OHH":2174,"OHM":439,"OII":280,"OKH":1798,"OKI":-793,"OKO":-2242,"OMH":-2402,"OOO":11699}; + this.BQ4__ = {"BHH":-3895,"BIH":3761,"BII":-4654,"BIK":1348,"BKK":-1806,"BMI":-3385,"BOO":-12396,"OAH":926,"OHH":266,"OHK":-2036,"ONN":-973}; + this.BW1__ = {",と":660,",同":727,"B1あ":1404,"B1同":542,"、と":660,"、同":727,"」と":1682,"あっ":1505,"いう":1743,"いっ":-2055,"いる":672,"うし":-4817,"うん":665,"から":3472,"がら":600,"こう":-790,"こと":2083,"こん":-1262,"さら":-4143,"さん":4573,"した":2641,"して":1104,"すで":-3399,"そこ":1977,"それ":-871,"たち":1122,"ため":601,"った":3463,"つい":-802,"てい":805,"てき":1249,"でき":1127,"です":3445,"では":844,"とい":-4915,"とみ":1922,"どこ":3887,"ない":5713,"なっ":3015,"など":7379,"なん":-1113,"にし":2468,"には":1498,"にも":1671,"に対":-912,"の一":-501,"の中":741,"ませ":2448,"まで":1711,"まま":2600,"まる":-2155,"やむ":-1947,"よっ":-2565,"れた":2369,"れで":-913,"をし":1860,"を見":731,"亡く":-1886,"京都":2558,"取り":-2784,"大き":-2604,"大阪":1497,"平方":-2314,"引き":-1336,"日本":-195,"本当":-2423,"毎日":-2113,"目指":-724,"B1あ":1404,"B1同":542,"」と":1682}; + this.BW2__ = {"..":-11822,"11":-669,"――":-5730,"−−":-13175,"いう":-1609,"うか":2490,"かし":-1350,"かも":-602,"から":-7194,"かれ":4612,"がい":853,"がら":-3198,"きた":1941,"くな":-1597,"こと":-8392,"この":-4193,"させ":4533,"され":13168,"さん":-3977,"しい":-1819,"しか":-545,"した":5078,"して":972,"しな":939,"その":-3744,"たい":-1253,"たた":-662,"ただ":-3857,"たち":-786,"たと":1224,"たは":-939,"った":4589,"って":1647,"っと":-2094,"てい":6144,"てき":3640,"てく":2551,"ては":-3110,"ても":-3065,"でい":2666,"でき":-1528,"でし":-3828,"です":-4761,"でも":-4203,"とい":1890,"とこ":-1746,"とと":-2279,"との":720,"とみ":5168,"とも":-3941,"ない":-2488,"なが":-1313,"など":-6509,"なの":2614,"なん":3099,"にお":-1615,"にし":2748,"にな":2454,"によ":-7236,"に対":-14943,"に従":-4688,"に関":-11388,"のか":2093,"ので":-7059,"のに":-6041,"のの":-6125,"はい":1073,"はが":-1033,"はず":-2532,"ばれ":1813,"まし":-1316,"まで":-6621,"まれ":5409,"めて":-3153,"もい":2230,"もの":-10713,"らか":-944,"らし":-1611,"らに":-1897,"りし":651,"りま":1620,"れた":4270,"れて":849,"れば":4114,"ろう":6067,"われ":7901,"を通":-11877,"んだ":728,"んな":-4115,"一人":602,"一方":-1375,"一日":970,"一部":-1051,"上が":-4479,"会社":-1116,"出て":2163,"分の":-7758,"同党":970,"同日":-913,"大阪":-2471,"委員":-1250,"少な":-1050,"年度":-8669,"年間":-1626,"府県":-2363,"手権":-1982,"新聞":-4066,"日新":-722,"日本":-7068,"日米":3372,"曜日":-601,"朝鮮":-2355,"本人":-2697,"東京":-1543,"然と":-1384,"社会":-1276,"立て":-990,"第に":-1612,"米国":-4268,"11":-669}; + this.BW3__ = {"あた":-2194,"あり":719,"ある":3846,"い.":-1185,"い。":-1185,"いい":5308,"いえ":2079,"いく":3029,"いた":2056,"いっ":1883,"いる":5600,"いわ":1527,"うち":1117,"うと":4798,"えと":1454,"か.":2857,"か。":2857,"かけ":-743,"かっ":-4098,"かに":-669,"から":6520,"かり":-2670,"が,":1816,"が、":1816,"がき":-4855,"がけ":-1127,"がっ":-913,"がら":-4977,"がり":-2064,"きた":1645,"けど":1374,"こと":7397,"この":1542,"ころ":-2757,"さい":-714,"さを":976,"し,":1557,"し、":1557,"しい":-3714,"した":3562,"して":1449,"しな":2608,"しま":1200,"す.":-1310,"す。":-1310,"する":6521,"ず,":3426,"ず、":3426,"ずに":841,"そう":428,"た.":8875,"た。":8875,"たい":-594,"たの":812,"たり":-1183,"たる":-853,"だ.":4098,"だ。":4098,"だっ":1004,"った":-4748,"って":300,"てい":6240,"てお":855,"ても":302,"です":1437,"でに":-1482,"では":2295,"とう":-1387,"とし":2266,"との":541,"とも":-3543,"どう":4664,"ない":1796,"なく":-903,"など":2135,"に,":-1021,"に、":-1021,"にし":1771,"にな":1906,"には":2644,"の,":-724,"の、":-724,"の子":-1000,"は,":1337,"は、":1337,"べき":2181,"まし":1113,"ます":6943,"まっ":-1549,"まで":6154,"まれ":-793,"らし":1479,"られ":6820,"るる":3818,"れ,":854,"れ、":854,"れた":1850,"れて":1375,"れば":-3246,"れる":1091,"われ":-605,"んだ":606,"んで":798,"カ月":990,"会議":860,"入り":1232,"大会":2217,"始め":1681,"市":965,"新聞":-5055,"日,":974,"日、":974,"社会":2024,"カ月":990}; + this.TC1__ = {"AAA":1093,"HHH":1029,"HHM":580,"HII":998,"HOH":-390,"HOM":-331,"IHI":1169,"IOH":-142,"IOI":-1015,"IOM":467,"MMH":187,"OOI":-1832}; + this.TC2__ = {"HHO":2088,"HII":-1023,"HMM":-1154,"IHI":-1965,"KKH":703,"OII":-2649}; + this.TC3__ = {"AAA":-294,"HHH":346,"HHI":-341,"HII":-1088,"HIK":731,"HOH":-1486,"IHH":128,"IHI":-3041,"IHO":-1935,"IIH":-825,"IIM":-1035,"IOI":-542,"KHH":-1216,"KKA":491,"KKH":-1217,"KOK":-1009,"MHH":-2694,"MHM":-457,"MHO":123,"MMH":-471,"NNH":-1689,"NNO":662,"OHO":-3393}; + this.TC4__ = {"HHH":-203,"HHI":1344,"HHK":365,"HHM":-122,"HHN":182,"HHO":669,"HIH":804,"HII":679,"HOH":446,"IHH":695,"IHO":-2324,"IIH":321,"III":1497,"IIO":656,"IOO":54,"KAK":4845,"KKA":3386,"KKK":3065,"MHH":-405,"MHI":201,"MMH":-241,"MMM":661,"MOM":841}; + this.TQ1__ = {"BHHH":-227,"BHHI":316,"BHIH":-132,"BIHH":60,"BIII":1595,"BNHH":-744,"BOHH":225,"BOOO":-908,"OAKK":482,"OHHH":281,"OHIH":249,"OIHI":200,"OIIH":-68}; + this.TQ2__ = {"BIHH":-1401,"BIII":-1033,"BKAK":-543,"BOOO":-5591}; + this.TQ3__ = {"BHHH":478,"BHHM":-1073,"BHIH":222,"BHII":-504,"BIIH":-116,"BIII":-105,"BMHI":-863,"BMHM":-464,"BOMH":620,"OHHH":346,"OHHI":1729,"OHII":997,"OHMH":481,"OIHH":623,"OIIH":1344,"OKAK":2792,"OKHH":587,"OKKA":679,"OOHH":110,"OOII":-685}; + this.TQ4__ = {"BHHH":-721,"BHHM":-3604,"BHII":-966,"BIIH":-607,"BIII":-2181,"OAAA":-2763,"OAKK":180,"OHHH":-294,"OHHI":2446,"OHHO":480,"OHIH":-1573,"OIHH":1935,"OIHI":-493,"OIIH":626,"OIII":-4007,"OKAK":-8156}; + this.TW1__ = {"につい":-4681,"東京都":2026}; + this.TW2__ = {"ある程":-2049,"いった":-1256,"ころが":-2434,"しょう":3873,"その後":-4430,"だって":-1049,"ていた":1833,"として":-4657,"ともに":-4517,"もので":1882,"一気に":-792,"初めて":-1512,"同時に":-8097,"大きな":-1255,"対して":-2721,"社会党":-3216}; + this.TW3__ = {"いただ":-1734,"してい":1314,"として":-4314,"につい":-5483,"にとっ":-5989,"に当た":-6247,"ので,":-727,"ので、":-727,"のもの":-600,"れから":-3752,"十二月":-2287}; + this.TW4__ = {"いう.":8576,"いう。":8576,"からな":-2348,"してい":2958,"たが,":1516,"たが、":1516,"ている":1538,"という":1349,"ました":5543,"ません":1097,"ようと":-4258,"よると":5865}; + this.UC1__ = {"A":484,"K":93,"M":645,"O":-505}; + this.UC2__ = {"A":819,"H":1059,"I":409,"M":3987,"N":5775,"O":646}; + this.UC3__ = {"A":-1370,"I":2311}; + this.UC4__ = {"A":-2643,"H":1809,"I":-1032,"K":-3450,"M":3565,"N":3876,"O":6646}; + this.UC5__ = {"H":313,"I":-1238,"K":-799,"M":539,"O":-831}; + this.UC6__ = {"H":-506,"I":-253,"K":87,"M":247,"O":-387}; + this.UP1__ = {"O":-214}; + this.UP2__ = {"B":69,"O":935}; + this.UP3__ = {"B":189}; + this.UQ1__ = {"BH":21,"BI":-12,"BK":-99,"BN":142,"BO":-56,"OH":-95,"OI":477,"OK":410,"OO":-2422}; + this.UQ2__ = {"BH":216,"BI":113,"OK":1759}; + this.UQ3__ = {"BA":-479,"BH":42,"BI":1913,"BK":-7198,"BM":3160,"BN":6427,"BO":14761,"OI":-827,"ON":-3212}; + this.UW1__ = {",":156,"、":156,"「":-463,"あ":-941,"う":-127,"が":-553,"き":121,"こ":505,"で":-201,"と":-547,"ど":-123,"に":-789,"の":-185,"は":-847,"も":-466,"や":-470,"よ":182,"ら":-292,"り":208,"れ":169,"を":-446,"ん":-137,"・":-135,"主":-402,"京":-268,"区":-912,"午":871,"国":-460,"大":561,"委":729,"市":-411,"日":-141,"理":361,"生":-408,"県":-386,"都":-718,"「":-463,"・":-135}; + this.UW2__ = {",":-829,"、":-829,"〇":892,"「":-645,"」":3145,"あ":-538,"い":505,"う":134,"お":-502,"か":1454,"が":-856,"く":-412,"こ":1141,"さ":878,"ざ":540,"し":1529,"す":-675,"せ":300,"そ":-1011,"た":188,"だ":1837,"つ":-949,"て":-291,"で":-268,"と":-981,"ど":1273,"な":1063,"に":-1764,"の":130,"は":-409,"ひ":-1273,"べ":1261,"ま":600,"も":-1263,"や":-402,"よ":1639,"り":-579,"る":-694,"れ":571,"を":-2516,"ん":2095,"ア":-587,"カ":306,"キ":568,"ッ":831,"三":-758,"不":-2150,"世":-302,"中":-968,"主":-861,"事":492,"人":-123,"会":978,"保":362,"入":548,"初":-3025,"副":-1566,"北":-3414,"区":-422,"大":-1769,"天":-865,"太":-483,"子":-1519,"学":760,"実":1023,"小":-2009,"市":-813,"年":-1060,"強":1067,"手":-1519,"揺":-1033,"政":1522,"文":-1355,"新":-1682,"日":-1815,"明":-1462,"最":-630,"朝":-1843,"本":-1650,"東":-931,"果":-665,"次":-2378,"民":-180,"気":-1740,"理":752,"発":529,"目":-1584,"相":-242,"県":-1165,"立":-763,"第":810,"米":509,"自":-1353,"行":838,"西":-744,"見":-3874,"調":1010,"議":1198,"込":3041,"開":1758,"間":-1257,"「":-645,"」":3145,"ッ":831,"ア":-587,"カ":306,"キ":568}; + this.UW3__ = {",":4889,"1":-800,"−":-1723,"、":4889,"々":-2311,"〇":5827,"」":2670,"〓":-3573,"あ":-2696,"い":1006,"う":2342,"え":1983,"お":-4864,"か":-1163,"が":3271,"く":1004,"け":388,"げ":401,"こ":-3552,"ご":-3116,"さ":-1058,"し":-395,"す":584,"せ":3685,"そ":-5228,"た":842,"ち":-521,"っ":-1444,"つ":-1081,"て":6167,"で":2318,"と":1691,"ど":-899,"な":-2788,"に":2745,"の":4056,"は":4555,"ひ":-2171,"ふ":-1798,"へ":1199,"ほ":-5516,"ま":-4384,"み":-120,"め":1205,"も":2323,"や":-788,"よ":-202,"ら":727,"り":649,"る":5905,"れ":2773,"わ":-1207,"を":6620,"ん":-518,"ア":551,"グ":1319,"ス":874,"ッ":-1350,"ト":521,"ム":1109,"ル":1591,"ロ":2201,"ン":278,"・":-3794,"一":-1619,"下":-1759,"世":-2087,"両":3815,"中":653,"主":-758,"予":-1193,"二":974,"人":2742,"今":792,"他":1889,"以":-1368,"低":811,"何":4265,"作":-361,"保":-2439,"元":4858,"党":3593,"全":1574,"公":-3030,"六":755,"共":-1880,"円":5807,"再":3095,"分":457,"初":2475,"別":1129,"前":2286,"副":4437,"力":365,"動":-949,"務":-1872,"化":1327,"北":-1038,"区":4646,"千":-2309,"午":-783,"協":-1006,"口":483,"右":1233,"各":3588,"合":-241,"同":3906,"和":-837,"員":4513,"国":642,"型":1389,"場":1219,"外":-241,"妻":2016,"学":-1356,"安":-423,"実":-1008,"家":1078,"小":-513,"少":-3102,"州":1155,"市":3197,"平":-1804,"年":2416,"広":-1030,"府":1605,"度":1452,"建":-2352,"当":-3885,"得":1905,"思":-1291,"性":1822,"戸":-488,"指":-3973,"政":-2013,"教":-1479,"数":3222,"文":-1489,"新":1764,"日":2099,"旧":5792,"昨":-661,"時":-1248,"曜":-951,"最":-937,"月":4125,"期":360,"李":3094,"村":364,"東":-805,"核":5156,"森":2438,"業":484,"氏":2613,"民":-1694,"決":-1073,"法":1868,"海":-495,"無":979,"物":461,"特":-3850,"生":-273,"用":914,"町":1215,"的":7313,"直":-1835,"省":792,"県":6293,"知":-1528,"私":4231,"税":401,"立":-960,"第":1201,"米":7767,"系":3066,"約":3663,"級":1384,"統":-4229,"総":1163,"線":1255,"者":6457,"能":725,"自":-2869,"英":785,"見":1044,"調":-562,"財":-733,"費":1777,"車":1835,"軍":1375,"込":-1504,"通":-1136,"選":-681,"郎":1026,"郡":4404,"部":1200,"金":2163,"長":421,"開":-1432,"間":1302,"関":-1282,"雨":2009,"電":-1045,"非":2066,"駅":1620,"1":-800,"」":2670,"・":-3794,"ッ":-1350,"ア":551,"グ":1319,"ス":874,"ト":521,"ム":1109,"ル":1591,"ロ":2201,"ン":278}; + this.UW4__ = {",":3930,".":3508,"―":-4841,"、":3930,"。":3508,"〇":4999,"「":1895,"」":3798,"〓":-5156,"あ":4752,"い":-3435,"う":-640,"え":-2514,"お":2405,"か":530,"が":6006,"き":-4482,"ぎ":-3821,"く":-3788,"け":-4376,"げ":-4734,"こ":2255,"ご":1979,"さ":2864,"し":-843,"じ":-2506,"す":-731,"ず":1251,"せ":181,"そ":4091,"た":5034,"だ":5408,"ち":-3654,"っ":-5882,"つ":-1659,"て":3994,"で":7410,"と":4547,"な":5433,"に":6499,"ぬ":1853,"ね":1413,"の":7396,"は":8578,"ば":1940,"ひ":4249,"び":-4134,"ふ":1345,"へ":6665,"べ":-744,"ほ":1464,"ま":1051,"み":-2082,"む":-882,"め":-5046,"も":4169,"ゃ":-2666,"や":2795,"ょ":-1544,"よ":3351,"ら":-2922,"り":-9726,"る":-14896,"れ":-2613,"ろ":-4570,"わ":-1783,"を":13150,"ん":-2352,"カ":2145,"コ":1789,"セ":1287,"ッ":-724,"ト":-403,"メ":-1635,"ラ":-881,"リ":-541,"ル":-856,"ン":-3637,"・":-4371,"ー":-11870,"一":-2069,"中":2210,"予":782,"事":-190,"井":-1768,"人":1036,"以":544,"会":950,"体":-1286,"作":530,"側":4292,"先":601,"党":-2006,"共":-1212,"内":584,"円":788,"初":1347,"前":1623,"副":3879,"力":-302,"動":-740,"務":-2715,"化":776,"区":4517,"協":1013,"参":1555,"合":-1834,"和":-681,"員":-910,"器":-851,"回":1500,"国":-619,"園":-1200,"地":866,"場":-1410,"塁":-2094,"士":-1413,"多":1067,"大":571,"子":-4802,"学":-1397,"定":-1057,"寺":-809,"小":1910,"屋":-1328,"山":-1500,"島":-2056,"川":-2667,"市":2771,"年":374,"庁":-4556,"後":456,"性":553,"感":916,"所":-1566,"支":856,"改":787,"政":2182,"教":704,"文":522,"方":-856,"日":1798,"時":1829,"最":845,"月":-9066,"木":-485,"来":-442,"校":-360,"業":-1043,"氏":5388,"民":-2716,"気":-910,"沢":-939,"済":-543,"物":-735,"率":672,"球":-1267,"生":-1286,"産":-1101,"田":-2900,"町":1826,"的":2586,"目":922,"省":-3485,"県":2997,"空":-867,"立":-2112,"第":788,"米":2937,"系":786,"約":2171,"経":1146,"統":-1169,"総":940,"線":-994,"署":749,"者":2145,"能":-730,"般":-852,"行":-792,"規":792,"警":-1184,"議":-244,"谷":-1000,"賞":730,"車":-1481,"軍":1158,"輪":-1433,"込":-3370,"近":929,"道":-1291,"選":2596,"郎":-4866,"都":1192,"野":-1100,"銀":-2213,"長":357,"間":-2344,"院":-2297,"際":-2604,"電":-878,"領":-1659,"題":-792,"館":-1984,"首":1749,"高":2120,"「":1895,"」":3798,"・":-4371,"ッ":-724,"ー":-11870,"カ":2145,"コ":1789,"セ":1287,"ト":-403,"メ":-1635,"ラ":-881,"リ":-541,"ル":-856,"ン":-3637}; + this.UW5__ = {",":465,".":-299,"1":-514,"E2":-32768,"]":-2762,"、":465,"。":-299,"「":363,"あ":1655,"い":331,"う":-503,"え":1199,"お":527,"か":647,"が":-421,"き":1624,"ぎ":1971,"く":312,"げ":-983,"さ":-1537,"し":-1371,"す":-852,"だ":-1186,"ち":1093,"っ":52,"つ":921,"て":-18,"で":-850,"と":-127,"ど":1682,"な":-787,"に":-1224,"の":-635,"は":-578,"べ":1001,"み":502,"め":865,"ゃ":3350,"ょ":854,"り":-208,"る":429,"れ":504,"わ":419,"を":-1264,"ん":327,"イ":241,"ル":451,"ン":-343,"中":-871,"京":722,"会":-1153,"党":-654,"務":3519,"区":-901,"告":848,"員":2104,"大":-1296,"学":-548,"定":1785,"嵐":-1304,"市":-2991,"席":921,"年":1763,"思":872,"所":-814,"挙":1618,"新":-1682,"日":218,"月":-4353,"査":932,"格":1356,"機":-1508,"氏":-1347,"田":240,"町":-3912,"的":-3149,"相":1319,"省":-1052,"県":-4003,"研":-997,"社":-278,"空":-813,"統":1955,"者":-2233,"表":663,"語":-1073,"議":1219,"選":-1018,"郎":-368,"長":786,"間":1191,"題":2368,"館":-689,"1":-514,"E2":-32768,"「":363,"イ":241,"ル":451,"ン":-343}; + this.UW6__ = {",":227,".":808,"1":-270,"E1":306,"、":227,"。":808,"あ":-307,"う":189,"か":241,"が":-73,"く":-121,"こ":-200,"じ":1782,"す":383,"た":-428,"っ":573,"て":-1014,"で":101,"と":-105,"な":-253,"に":-149,"の":-417,"は":-236,"も":-206,"り":187,"る":-135,"を":195,"ル":-673,"ン":-496,"一":-277,"中":201,"件":-800,"会":624,"前":302,"区":1792,"員":-1212,"委":798,"学":-960,"市":887,"広":-695,"後":535,"業":-697,"相":753,"社":-507,"福":974,"空":-822,"者":1811,"連":463,"郎":1082,"1":-270,"E1":306,"ル":-673,"ン":-496}; + + return this; + } + TinySegmenter.prototype.ctype_ = function(str) { + for (var i in this.chartype_) { + if (str.match(this.chartype_[i][0])) { + return this.chartype_[i][1]; + } + } + return "O"; + } + + TinySegmenter.prototype.ts_ = function(v) { + if (v) { return v; } + return 0; + } + + TinySegmenter.prototype.segment = function(input) { + if (input == null || input == undefined || input == "") { + return []; + } + var result = []; + var seg = ["B3","B2","B1"]; + var ctype = ["O","O","O"]; + var o = input.split(""); + for (i = 0; i < o.length; ++i) { + seg.push(o[i]); + ctype.push(this.ctype_(o[i])) + } + seg.push("E1"); + seg.push("E2"); + seg.push("E3"); + ctype.push("O"); + ctype.push("O"); + ctype.push("O"); + var word = seg[3]; + var p1 = "U"; + var p2 = "U"; + var p3 = "U"; + for (var i = 4; i < seg.length - 3; ++i) { + var score = this.BIAS__; + var w1 = seg[i-3]; + var w2 = seg[i-2]; + var w3 = seg[i-1]; + var w4 = seg[i]; + var w5 = seg[i+1]; + var w6 = seg[i+2]; + var c1 = ctype[i-3]; + var c2 = ctype[i-2]; + var c3 = ctype[i-1]; + var c4 = ctype[i]; + var c5 = ctype[i+1]; + var c6 = ctype[i+2]; + score += this.ts_(this.UP1__[p1]); + score += this.ts_(this.UP2__[p2]); + score += this.ts_(this.UP3__[p3]); + score += this.ts_(this.BP1__[p1 + p2]); + score += this.ts_(this.BP2__[p2 + p3]); + score += this.ts_(this.UW1__[w1]); + score += this.ts_(this.UW2__[w2]); + score += this.ts_(this.UW3__[w3]); + score += this.ts_(this.UW4__[w4]); + score += this.ts_(this.UW5__[w5]); + score += this.ts_(this.UW6__[w6]); + score += this.ts_(this.BW1__[w2 + w3]); + score += this.ts_(this.BW2__[w3 + w4]); + score += this.ts_(this.BW3__[w4 + w5]); + score += this.ts_(this.TW1__[w1 + w2 + w3]); + score += this.ts_(this.TW2__[w2 + w3 + w4]); + score += this.ts_(this.TW3__[w3 + w4 + w5]); + score += this.ts_(this.TW4__[w4 + w5 + w6]); + score += this.ts_(this.UC1__[c1]); + score += this.ts_(this.UC2__[c2]); + score += this.ts_(this.UC3__[c3]); + score += this.ts_(this.UC4__[c4]); + score += this.ts_(this.UC5__[c5]); + score += this.ts_(this.UC6__[c6]); + score += this.ts_(this.BC1__[c2 + c3]); + score += this.ts_(this.BC2__[c3 + c4]); + score += this.ts_(this.BC3__[c4 + c5]); + score += this.ts_(this.TC1__[c1 + c2 + c3]); + score += this.ts_(this.TC2__[c2 + c3 + c4]); + score += this.ts_(this.TC3__[c3 + c4 + c5]); + score += this.ts_(this.TC4__[c4 + c5 + c6]); + // score += this.ts_(this.TC5__[c4 + c5 + c6]); + score += this.ts_(this.UQ1__[p1 + c1]); + score += this.ts_(this.UQ2__[p2 + c2]); + score += this.ts_(this.UQ3__[p3 + c3]); + score += this.ts_(this.BQ1__[p2 + c2 + c3]); + score += this.ts_(this.BQ2__[p2 + c3 + c4]); + score += this.ts_(this.BQ3__[p3 + c2 + c3]); + score += this.ts_(this.BQ4__[p3 + c3 + c4]); + score += this.ts_(this.TQ1__[p2 + c1 + c2 + c3]); + score += this.ts_(this.TQ2__[p2 + c2 + c3 + c4]); + score += this.ts_(this.TQ3__[p3 + c1 + c2 + c3]); + score += this.ts_(this.TQ4__[p3 + c2 + c3 + c4]); + var p = "O"; + if (score > 0) { + result.push(word); + word = ""; + p = "B"; + } + p1 = p2; + p2 = p3; + p3 = p; + word += seg[i]; + } + result.push(word); + + return result; + } + + lunr.TinySegmenter = TinySegmenter; + }; + +})); \ No newline at end of file diff --git a/assets/javascripts/lunr/wordcut.js b/assets/javascripts/lunr/wordcut.js new file mode 100644 index 0000000..0d898c9 --- /dev/null +++ b/assets/javascripts/lunr/wordcut.js @@ -0,0 +1,6708 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}(g.lunr || (g.lunr = {})).wordcut = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o 1; + }) + this.addWords(words, false) + } + if(finalize){ + this.finalizeDict(); + } + }, + + dictSeek: function (l, r, ch, strOffset, pos) { + var ans = null; + while (l <= r) { + var m = Math.floor((l + r) / 2), + dict_item = this.dict[m], + len = dict_item.length; + if (len <= strOffset) { + l = m + 1; + } else { + var ch_ = dict_item[strOffset]; + if (ch_ < ch) { + l = m + 1; + } else if (ch_ > ch) { + r = m - 1; + } else { + ans = m; + if (pos == LEFT) { + r = m - 1; + } else { + l = m + 1; + } + } + } + } + return ans; + }, + + isFinal: function (acceptor) { + return this.dict[acceptor.l].length == acceptor.strOffset; + }, + + createAcceptor: function () { + return { + l: 0, + r: this.dict.length - 1, + strOffset: 0, + isFinal: false, + dict: this, + transit: function (ch) { + return this.dict.transit(this, ch); + }, + isError: false, + tag: "DICT", + w: 1, + type: "DICT" + }; + }, + + transit: function (acceptor, ch) { + var l = this.dictSeek(acceptor.l, + acceptor.r, + ch, + acceptor.strOffset, + LEFT); + if (l !== null) { + var r = this.dictSeek(l, + acceptor.r, + ch, + acceptor.strOffset, + RIGHT); + acceptor.l = l; + acceptor.r = r; + acceptor.strOffset++; + acceptor.isFinal = this.isFinal(acceptor); + } else { + acceptor.isError = true; + } + return acceptor; + }, + + sortuniq: function(a){ + return a.sort().filter(function(item, pos, arr){ + return !pos || item != arr[pos - 1]; + }) + }, + + flatten: function(a){ + //[[1,2],[3]] -> [1,2,3] + return [].concat.apply([], a); + } +}; +module.exports = WordcutDict; + +}).call(this,"/dist/tmp") +},{"glob":16,"path":22}],3:[function(require,module,exports){ +var WordRule = { + createAcceptor: function(tag) { + if (tag["WORD_RULE"]) + return null; + + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + var lch = ch.toLowerCase(); + if (lch >= "a" && lch <= "z") { + this.isFinal = true; + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "WORD_RULE", + type: "WORD_RULE", + w: 1}; + } +}; + +var NumberRule = { + createAcceptor: function(tag) { + if (tag["NUMBER_RULE"]) + return null; + + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + if (ch >= "0" && ch <= "9") { + this.isFinal = true; + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "NUMBER_RULE", + type: "NUMBER_RULE", + w: 1}; + } +}; + +var SpaceRule = { + tag: "SPACE_RULE", + createAcceptor: function(tag) { + + if (tag["SPACE_RULE"]) + return null; + + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + if (ch == " " || ch == "\t" || ch == "\r" || ch == "\n" || + ch == "\u00A0" || ch=="\u2003"//nbsp and emsp + ) { + this.isFinal = true; + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: SpaceRule.tag, + w: 1, + type: "SPACE_RULE"}; + } +} + +var SingleSymbolRule = { + tag: "SINSYM", + createAcceptor: function(tag) { + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + if (this.strOffset == 0 && ch.match(/^[\@\(\)\/\,\-\."`]$/)) { + this.isFinal = true; + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "SINSYM", + w: 1, + type: "SINSYM"}; + } +} + + +var LatinRules = [WordRule, SpaceRule, SingleSymbolRule, NumberRule]; + +module.exports = LatinRules; + +},{}],4:[function(require,module,exports){ +var _ = require("underscore") + , WordcutCore = require("./wordcut_core"); +var PathInfoBuilder = { + + /* + buildByPartAcceptors: function(path, acceptors, i) { + var + var genInfos = partAcceptors.reduce(function(genInfos, acceptor) { + + }, []); + + return genInfos; + } + */ + + buildByAcceptors: function(path, finalAcceptors, i) { + var self = this; + var infos = finalAcceptors.map(function(acceptor) { + var p = i - acceptor.strOffset + 1 + , _info = path[p]; + + var info = {p: p, + mw: _info.mw + (acceptor.mw === undefined ? 0 : acceptor.mw), + w: acceptor.w + _info.w, + unk: (acceptor.unk ? acceptor.unk : 0) + _info.unk, + type: acceptor.type}; + + if (acceptor.type == "PART") { + for(var j = p + 1; j <= i; j++) { + path[j].merge = p; + } + info.merge = p; + } + + return info; + }); + return infos.filter(function(info) { return info; }); + }, + + fallback: function(path, leftBoundary, text, i) { + var _info = path[leftBoundary]; + if (text[i].match(/[\u0E48-\u0E4E]/)) { + if (leftBoundary != 0) + leftBoundary = path[leftBoundary].p; + return {p: leftBoundary, + mw: 0, + w: 1 + _info.w, + unk: 1 + _info.unk, + type: "UNK"}; +/* } else if(leftBoundary > 0 && path[leftBoundary].type !== "UNK") { + leftBoundary = path[leftBoundary].p; + return {p: leftBoundary, + w: 1 + _info.w, + unk: 1 + _info.unk, + type: "UNK"}; */ + } else { + return {p: leftBoundary, + mw: _info.mw, + w: 1 + _info.w, + unk: 1 + _info.unk, + type: "UNK"}; + } + }, + + build: function(path, finalAcceptors, i, leftBoundary, text) { + var basicPathInfos = this.buildByAcceptors(path, finalAcceptors, i); + if (basicPathInfos.length > 0) { + return basicPathInfos; + } else { + return [this.fallback(path, leftBoundary, text, i)]; + } + } +}; + +module.exports = function() { + return _.clone(PathInfoBuilder); +} + +},{"./wordcut_core":8,"underscore":25}],5:[function(require,module,exports){ +var _ = require("underscore"); + + +var PathSelector = { + selectPath: function(paths) { + var path = paths.reduce(function(selectedPath, path) { + if (selectedPath == null) { + return path; + } else { + if (path.unk < selectedPath.unk) + return path; + if (path.unk == selectedPath.unk) { + if (path.mw < selectedPath.mw) + return path + if (path.mw == selectedPath.mw) { + if (path.w < selectedPath.w) + return path; + } + } + return selectedPath; + } + }, null); + return path; + }, + + createPath: function() { + return [{p:null, w:0, unk:0, type: "INIT", mw:0}]; + } +}; + +module.exports = function() { + return _.clone(PathSelector); +}; + +},{"underscore":25}],6:[function(require,module,exports){ +function isMatch(pat, offset, ch) { + if (pat.length <= offset) + return false; + var _ch = pat[offset]; + return _ch == ch || + (_ch.match(/[กข]/) && ch.match(/[ก-ฮ]/)) || + (_ch.match(/[มบ]/) && ch.match(/[ก-ฮ]/)) || + (_ch.match(/\u0E49/) && ch.match(/[\u0E48-\u0E4B]/)); +} + +var Rule0 = { + pat: "เหก็ม", + createAcceptor: function(tag) { + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + if (isMatch(Rule0.pat, this.strOffset,ch)) { + this.isFinal = (this.strOffset + 1 == Rule0.pat.length); + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "THAI_RULE", + type: "THAI_RULE", + w: 1}; + } +}; + +var PartRule = { + createAcceptor: function(tag) { + return {strOffset: 0, + patterns: [ + "แก", "เก", "ก้", "กก์", "กา", "กี", "กิ", "กืก" + ], + isFinal: false, + transit: function(ch) { + var offset = this.strOffset; + this.patterns = this.patterns.filter(function(pat) { + return isMatch(pat, offset, ch); + }); + + if (this.patterns.length > 0) { + var len = 1 + offset; + this.isFinal = this.patterns.some(function(pat) { + return pat.length == len; + }); + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "PART", + type: "PART", + unk: 1, + w: 1}; + } +}; + +var ThaiRules = [Rule0, PartRule]; + +module.exports = ThaiRules; + +},{}],7:[function(require,module,exports){ +var sys = require("sys") + , WordcutDict = require("./dict") + , WordcutCore = require("./wordcut_core") + , PathInfoBuilder = require("./path_info_builder") + , PathSelector = require("./path_selector") + , Acceptors = require("./acceptors") + , latinRules = require("./latin_rules") + , thaiRules = require("./thai_rules") + , _ = require("underscore"); + + +var Wordcut = Object.create(WordcutCore); +Wordcut.defaultPathInfoBuilder = PathInfoBuilder; +Wordcut.defaultPathSelector = PathSelector; +Wordcut.defaultAcceptors = Acceptors; +Wordcut.defaultLatinRules = latinRules; +Wordcut.defaultThaiRules = thaiRules; +Wordcut.defaultDict = WordcutDict; + + +Wordcut.initNoDict = function(dict_path) { + var self = this; + self.pathInfoBuilder = new self.defaultPathInfoBuilder; + self.pathSelector = new self.defaultPathSelector; + self.acceptors = new self.defaultAcceptors; + self.defaultLatinRules.forEach(function(rule) { + self.acceptors.creators.push(rule); + }); + self.defaultThaiRules.forEach(function(rule) { + self.acceptors.creators.push(rule); + }); +}; + +Wordcut.init = function(dict_path, withDefault, additionalWords) { + withDefault = withDefault || false; + this.initNoDict(); + var dict = _.clone(this.defaultDict); + dict.init(dict_path, withDefault, additionalWords); + this.acceptors.creators.push(dict); +}; + +module.exports = Wordcut; + +},{"./acceptors":1,"./dict":2,"./latin_rules":3,"./path_info_builder":4,"./path_selector":5,"./thai_rules":6,"./wordcut_core":8,"sys":28,"underscore":25}],8:[function(require,module,exports){ +var WordcutCore = { + + buildPath: function(text) { + var self = this + , path = self.pathSelector.createPath() + , leftBoundary = 0; + self.acceptors.reset(); + for (var i = 0; i < text.length; i++) { + var ch = text[i]; + self.acceptors.transit(ch); + + var possiblePathInfos = self + .pathInfoBuilder + .build(path, + self.acceptors.getFinalAcceptors(), + i, + leftBoundary, + text); + var selectedPath = self.pathSelector.selectPath(possiblePathInfos) + + path.push(selectedPath); + if (selectedPath.type !== "UNK") { + leftBoundary = i; + } + } + return path; + }, + + pathToRanges: function(path) { + var e = path.length - 1 + , ranges = []; + + while (e > 0) { + var info = path[e] + , s = info.p; + + if (info.merge !== undefined && ranges.length > 0) { + var r = ranges[ranges.length - 1]; + r.s = info.merge; + s = r.s; + } else { + ranges.push({s:s, e:e}); + } + e = s; + } + return ranges.reverse(); + }, + + rangesToText: function(text, ranges, delimiter) { + return ranges.map(function(r) { + return text.substring(r.s, r.e); + }).join(delimiter); + }, + + cut: function(text, delimiter) { + var path = this.buildPath(text) + , ranges = this.pathToRanges(path); + return this + .rangesToText(text, ranges, + (delimiter === undefined ? "|" : delimiter)); + }, + + cutIntoRanges: function(text, noText) { + var path = this.buildPath(text) + , ranges = this.pathToRanges(path); + + if (!noText) { + ranges.forEach(function(r) { + r.text = text.substring(r.s, r.e); + }); + } + return ranges; + }, + + cutIntoArray: function(text) { + var path = this.buildPath(text) + , ranges = this.pathToRanges(path); + + return ranges.map(function(r) { + return text.substring(r.s, r.e) + }); + } +}; + +module.exports = WordcutCore; + +},{}],9:[function(require,module,exports){ +// http://wiki.commonjs.org/wiki/Unit_Testing/1.0 +// +// THIS IS NOT TESTED NOR LIKELY TO WORK OUTSIDE V8! +// +// Originally from narwhal.js (http://narwhaljs.org) +// Copyright (c) 2009 Thomas Robinson <280north.com> +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the 'Software'), to +// deal in the Software without restriction, including without limitation the +// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +// sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +// when used in node, this will actually load the util module we depend on +// versus loading the builtin util module as happens otherwise +// this is a bug in node module loading as far as I am concerned +var util = require('util/'); + +var pSlice = Array.prototype.slice; +var hasOwn = Object.prototype.hasOwnProperty; + +// 1. The assert module provides functions that throw +// AssertionError's when particular conditions are not met. The +// assert module must conform to the following interface. + +var assert = module.exports = ok; + +// 2. The AssertionError is defined in assert. +// new assert.AssertionError({ message: message, +// actual: actual, +// expected: expected }) + +assert.AssertionError = function AssertionError(options) { + this.name = 'AssertionError'; + this.actual = options.actual; + this.expected = options.expected; + this.operator = options.operator; + if (options.message) { + this.message = options.message; + this.generatedMessage = false; + } else { + this.message = getMessage(this); + this.generatedMessage = true; + } + var stackStartFunction = options.stackStartFunction || fail; + + if (Error.captureStackTrace) { + Error.captureStackTrace(this, stackStartFunction); + } + else { + // non v8 browsers so we can have a stacktrace + var err = new Error(); + if (err.stack) { + var out = err.stack; + + // try to strip useless frames + var fn_name = stackStartFunction.name; + var idx = out.indexOf('\n' + fn_name); + if (idx >= 0) { + // once we have located the function frame + // we need to strip out everything before it (and its line) + var next_line = out.indexOf('\n', idx + 1); + out = out.substring(next_line + 1); + } + + this.stack = out; + } + } +}; + +// assert.AssertionError instanceof Error +util.inherits(assert.AssertionError, Error); + +function replacer(key, value) { + if (util.isUndefined(value)) { + return '' + value; + } + if (util.isNumber(value) && !isFinite(value)) { + return value.toString(); + } + if (util.isFunction(value) || util.isRegExp(value)) { + return value.toString(); + } + return value; +} + +function truncate(s, n) { + if (util.isString(s)) { + return s.length < n ? s : s.slice(0, n); + } else { + return s; + } +} + +function getMessage(self) { + return truncate(JSON.stringify(self.actual, replacer), 128) + ' ' + + self.operator + ' ' + + truncate(JSON.stringify(self.expected, replacer), 128); +} + +// At present only the three keys mentioned above are used and +// understood by the spec. Implementations or sub modules can pass +// other keys to the AssertionError's constructor - they will be +// ignored. + +// 3. All of the following functions must throw an AssertionError +// when a corresponding condition is not met, with a message that +// may be undefined if not provided. All assertion methods provide +// both the actual and expected values to the assertion error for +// display purposes. + +function fail(actual, expected, message, operator, stackStartFunction) { + throw new assert.AssertionError({ + message: message, + actual: actual, + expected: expected, + operator: operator, + stackStartFunction: stackStartFunction + }); +} + +// EXTENSION! allows for well behaved errors defined elsewhere. +assert.fail = fail; + +// 4. Pure assertion tests whether a value is truthy, as determined +// by !!guard. +// assert.ok(guard, message_opt); +// This statement is equivalent to assert.equal(true, !!guard, +// message_opt);. To test strictly for the value true, use +// assert.strictEqual(true, guard, message_opt);. + +function ok(value, message) { + if (!value) fail(value, true, message, '==', assert.ok); +} +assert.ok = ok; + +// 5. The equality assertion tests shallow, coercive equality with +// ==. +// assert.equal(actual, expected, message_opt); + +assert.equal = function equal(actual, expected, message) { + if (actual != expected) fail(actual, expected, message, '==', assert.equal); +}; + +// 6. The non-equality assertion tests for whether two objects are not equal +// with != assert.notEqual(actual, expected, message_opt); + +assert.notEqual = function notEqual(actual, expected, message) { + if (actual == expected) { + fail(actual, expected, message, '!=', assert.notEqual); + } +}; + +// 7. The equivalence assertion tests a deep equality relation. +// assert.deepEqual(actual, expected, message_opt); + +assert.deepEqual = function deepEqual(actual, expected, message) { + if (!_deepEqual(actual, expected)) { + fail(actual, expected, message, 'deepEqual', assert.deepEqual); + } +}; + +function _deepEqual(actual, expected) { + // 7.1. All identical values are equivalent, as determined by ===. + if (actual === expected) { + return true; + + } else if (util.isBuffer(actual) && util.isBuffer(expected)) { + if (actual.length != expected.length) return false; + + for (var i = 0; i < actual.length; i++) { + if (actual[i] !== expected[i]) return false; + } + + return true; + + // 7.2. If the expected value is a Date object, the actual value is + // equivalent if it is also a Date object that refers to the same time. + } else if (util.isDate(actual) && util.isDate(expected)) { + return actual.getTime() === expected.getTime(); + + // 7.3 If the expected value is a RegExp object, the actual value is + // equivalent if it is also a RegExp object with the same source and + // properties (`global`, `multiline`, `lastIndex`, `ignoreCase`). + } else if (util.isRegExp(actual) && util.isRegExp(expected)) { + return actual.source === expected.source && + actual.global === expected.global && + actual.multiline === expected.multiline && + actual.lastIndex === expected.lastIndex && + actual.ignoreCase === expected.ignoreCase; + + // 7.4. Other pairs that do not both pass typeof value == 'object', + // equivalence is determined by ==. + } else if (!util.isObject(actual) && !util.isObject(expected)) { + return actual == expected; + + // 7.5 For all other Object pairs, including Array objects, equivalence is + // determined by having the same number of owned properties (as verified + // with Object.prototype.hasOwnProperty.call), the same set of keys + // (although not necessarily the same order), equivalent values for every + // corresponding key, and an identical 'prototype' property. Note: this + // accounts for both named and indexed properties on Arrays. + } else { + return objEquiv(actual, expected); + } +} + +function isArguments(object) { + return Object.prototype.toString.call(object) == '[object Arguments]'; +} + +function objEquiv(a, b) { + if (util.isNullOrUndefined(a) || util.isNullOrUndefined(b)) + return false; + // an identical 'prototype' property. + if (a.prototype !== b.prototype) return false; + // if one is a primitive, the other must be same + if (util.isPrimitive(a) || util.isPrimitive(b)) { + return a === b; + } + var aIsArgs = isArguments(a), + bIsArgs = isArguments(b); + if ((aIsArgs && !bIsArgs) || (!aIsArgs && bIsArgs)) + return false; + if (aIsArgs) { + a = pSlice.call(a); + b = pSlice.call(b); + return _deepEqual(a, b); + } + var ka = objectKeys(a), + kb = objectKeys(b), + key, i; + // having the same number of owned properties (keys incorporates + // hasOwnProperty) + if (ka.length != kb.length) + return false; + //the same set of keys (although not necessarily the same order), + ka.sort(); + kb.sort(); + //~~~cheap key test + for (i = ka.length - 1; i >= 0; i--) { + if (ka[i] != kb[i]) + return false; + } + //equivalent values for every corresponding key, and + //~~~possibly expensive deep test + for (i = ka.length - 1; i >= 0; i--) { + key = ka[i]; + if (!_deepEqual(a[key], b[key])) return false; + } + return true; +} + +// 8. The non-equivalence assertion tests for any deep inequality. +// assert.notDeepEqual(actual, expected, message_opt); + +assert.notDeepEqual = function notDeepEqual(actual, expected, message) { + if (_deepEqual(actual, expected)) { + fail(actual, expected, message, 'notDeepEqual', assert.notDeepEqual); + } +}; + +// 9. The strict equality assertion tests strict equality, as determined by ===. +// assert.strictEqual(actual, expected, message_opt); + +assert.strictEqual = function strictEqual(actual, expected, message) { + if (actual !== expected) { + fail(actual, expected, message, '===', assert.strictEqual); + } +}; + +// 10. The strict non-equality assertion tests for strict inequality, as +// determined by !==. assert.notStrictEqual(actual, expected, message_opt); + +assert.notStrictEqual = function notStrictEqual(actual, expected, message) { + if (actual === expected) { + fail(actual, expected, message, '!==', assert.notStrictEqual); + } +}; + +function expectedException(actual, expected) { + if (!actual || !expected) { + return false; + } + + if (Object.prototype.toString.call(expected) == '[object RegExp]') { + return expected.test(actual); + } else if (actual instanceof expected) { + return true; + } else if (expected.call({}, actual) === true) { + return true; + } + + return false; +} + +function _throws(shouldThrow, block, expected, message) { + var actual; + + if (util.isString(expected)) { + message = expected; + expected = null; + } + + try { + block(); + } catch (e) { + actual = e; + } + + message = (expected && expected.name ? ' (' + expected.name + ').' : '.') + + (message ? ' ' + message : '.'); + + if (shouldThrow && !actual) { + fail(actual, expected, 'Missing expected exception' + message); + } + + if (!shouldThrow && expectedException(actual, expected)) { + fail(actual, expected, 'Got unwanted exception' + message); + } + + if ((shouldThrow && actual && expected && + !expectedException(actual, expected)) || (!shouldThrow && actual)) { + throw actual; + } +} + +// 11. Expected to throw an error: +// assert.throws(block, Error_opt, message_opt); + +assert.throws = function(block, /*optional*/error, /*optional*/message) { + _throws.apply(this, [true].concat(pSlice.call(arguments))); +}; + +// EXTENSION! This is annoying to write outside this module. +assert.doesNotThrow = function(block, /*optional*/message) { + _throws.apply(this, [false].concat(pSlice.call(arguments))); +}; + +assert.ifError = function(err) { if (err) {throw err;}}; + +var objectKeys = Object.keys || function (obj) { + var keys = []; + for (var key in obj) { + if (hasOwn.call(obj, key)) keys.push(key); + } + return keys; +}; + +},{"util/":28}],10:[function(require,module,exports){ +'use strict'; +module.exports = balanced; +function balanced(a, b, str) { + if (a instanceof RegExp) a = maybeMatch(a, str); + if (b instanceof RegExp) b = maybeMatch(b, str); + + var r = range(a, b, str); + + return r && { + start: r[0], + end: r[1], + pre: str.slice(0, r[0]), + body: str.slice(r[0] + a.length, r[1]), + post: str.slice(r[1] + b.length) + }; +} + +function maybeMatch(reg, str) { + var m = str.match(reg); + return m ? m[0] : null; +} + +balanced.range = range; +function range(a, b, str) { + var begs, beg, left, right, result; + var ai = str.indexOf(a); + var bi = str.indexOf(b, ai + 1); + var i = ai; + + if (ai >= 0 && bi > 0) { + begs = []; + left = str.length; + + while (i >= 0 && !result) { + if (i == ai) { + begs.push(i); + ai = str.indexOf(a, i + 1); + } else if (begs.length == 1) { + result = [ begs.pop(), bi ]; + } else { + beg = begs.pop(); + if (beg < left) { + left = beg; + right = bi; + } + + bi = str.indexOf(b, i + 1); + } + + i = ai < bi && ai >= 0 ? ai : bi; + } + + if (begs.length) { + result = [ left, right ]; + } + } + + return result; +} + +},{}],11:[function(require,module,exports){ +var concatMap = require('concat-map'); +var balanced = require('balanced-match'); + +module.exports = expandTop; + +var escSlash = '\0SLASH'+Math.random()+'\0'; +var escOpen = '\0OPEN'+Math.random()+'\0'; +var escClose = '\0CLOSE'+Math.random()+'\0'; +var escComma = '\0COMMA'+Math.random()+'\0'; +var escPeriod = '\0PERIOD'+Math.random()+'\0'; + +function numeric(str) { + return parseInt(str, 10) == str + ? parseInt(str, 10) + : str.charCodeAt(0); +} + +function escapeBraces(str) { + return str.split('\\\\').join(escSlash) + .split('\\{').join(escOpen) + .split('\\}').join(escClose) + .split('\\,').join(escComma) + .split('\\.').join(escPeriod); +} + +function unescapeBraces(str) { + return str.split(escSlash).join('\\') + .split(escOpen).join('{') + .split(escClose).join('}') + .split(escComma).join(',') + .split(escPeriod).join('.'); +} + + +// Basically just str.split(","), but handling cases +// where we have nested braced sections, which should be +// treated as individual members, like {a,{b,c},d} +function parseCommaParts(str) { + if (!str) + return ['']; + + var parts = []; + var m = balanced('{', '}', str); + + if (!m) + return str.split(','); + + var pre = m.pre; + var body = m.body; + var post = m.post; + var p = pre.split(','); + + p[p.length-1] += '{' + body + '}'; + var postParts = parseCommaParts(post); + if (post.length) { + p[p.length-1] += postParts.shift(); + p.push.apply(p, postParts); + } + + parts.push.apply(parts, p); + + return parts; +} + +function expandTop(str) { + if (!str) + return []; + + // I don't know why Bash 4.3 does this, but it does. + // Anything starting with {} will have the first two bytes preserved + // but *only* at the top level, so {},a}b will not expand to anything, + // but a{},b}c will be expanded to [a}c,abc]. + // One could argue that this is a bug in Bash, but since the goal of + // this module is to match Bash's rules, we escape a leading {} + if (str.substr(0, 2) === '{}') { + str = '\\{\\}' + str.substr(2); + } + + return expand(escapeBraces(str), true).map(unescapeBraces); +} + +function identity(e) { + return e; +} + +function embrace(str) { + return '{' + str + '}'; +} +function isPadded(el) { + return /^-?0\d/.test(el); +} + +function lte(i, y) { + return i <= y; +} +function gte(i, y) { + return i >= y; +} + +function expand(str, isTop) { + var expansions = []; + + var m = balanced('{', '}', str); + if (!m || /\$$/.test(m.pre)) return [str]; + + var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + var isSequence = isNumericSequence || isAlphaSequence; + var isOptions = m.body.indexOf(',') >= 0; + if (!isSequence && !isOptions) { + // {a},b} + if (m.post.match(/,.*\}/)) { + str = m.pre + '{' + m.body + escClose + m.post; + return expand(str); + } + return [str]; + } + + var n; + if (isSequence) { + n = m.body.split(/\.\./); + } else { + n = parseCommaParts(m.body); + if (n.length === 1) { + // x{{a,b}}y ==> x{a}y x{b}y + n = expand(n[0], false).map(embrace); + if (n.length === 1) { + var post = m.post.length + ? expand(m.post, false) + : ['']; + return post.map(function(p) { + return m.pre + n[0] + p; + }); + } + } + } + + // at this point, n is the parts, and we know it's not a comma set + // with a single entry. + + // no need to expand pre, since it is guaranteed to be free of brace-sets + var pre = m.pre; + var post = m.post.length + ? expand(m.post, false) + : ['']; + + var N; + + if (isSequence) { + var x = numeric(n[0]); + var y = numeric(n[1]); + var width = Math.max(n[0].length, n[1].length) + var incr = n.length == 3 + ? Math.abs(numeric(n[2])) + : 1; + var test = lte; + var reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + var pad = n.some(isPadded); + + N = []; + + for (var i = x; test(i, y); i += incr) { + var c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === '\\') + c = ''; + } else { + c = String(i); + if (pad) { + var need = width - c.length; + if (need > 0) { + var z = new Array(need + 1).join('0'); + if (i < 0) + c = '-' + z + c.slice(1); + else + c = z + c; + } + } + } + N.push(c); + } + } else { + N = concatMap(n, function(el) { return expand(el, false) }); + } + + for (var j = 0; j < N.length; j++) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + N[j] + post[k]; + if (!isTop || isSequence || expansion) + expansions.push(expansion); + } + } + + return expansions; +} + + +},{"balanced-match":10,"concat-map":13}],12:[function(require,module,exports){ + +},{}],13:[function(require,module,exports){ +module.exports = function (xs, fn) { + var res = []; + for (var i = 0; i < xs.length; i++) { + var x = fn(xs[i], i); + if (isArray(x)) res.push.apply(res, x); + else res.push(x); + } + return res; +}; + +var isArray = Array.isArray || function (xs) { + return Object.prototype.toString.call(xs) === '[object Array]'; +}; + +},{}],14:[function(require,module,exports){ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +function EventEmitter() { + this._events = this._events || {}; + this._maxListeners = this._maxListeners || undefined; +} +module.exports = EventEmitter; + +// Backwards-compat with node 0.10.x +EventEmitter.EventEmitter = EventEmitter; + +EventEmitter.prototype._events = undefined; +EventEmitter.prototype._maxListeners = undefined; + +// By default EventEmitters will print a warning if more than 10 listeners are +// added to it. This is a useful default which helps finding memory leaks. +EventEmitter.defaultMaxListeners = 10; + +// Obviously not all Emitters should be limited to 10. This function allows +// that to be increased. Set to zero for unlimited. +EventEmitter.prototype.setMaxListeners = function(n) { + if (!isNumber(n) || n < 0 || isNaN(n)) + throw TypeError('n must be a positive number'); + this._maxListeners = n; + return this; +}; + +EventEmitter.prototype.emit = function(type) { + var er, handler, len, args, i, listeners; + + if (!this._events) + this._events = {}; + + // If there is no 'error' event listener then throw. + if (type === 'error') { + if (!this._events.error || + (isObject(this._events.error) && !this._events.error.length)) { + er = arguments[1]; + if (er instanceof Error) { + throw er; // Unhandled 'error' event + } + throw TypeError('Uncaught, unspecified "error" event.'); + } + } + + handler = this._events[type]; + + if (isUndefined(handler)) + return false; + + if (isFunction(handler)) { + switch (arguments.length) { + // fast cases + case 1: + handler.call(this); + break; + case 2: + handler.call(this, arguments[1]); + break; + case 3: + handler.call(this, arguments[1], arguments[2]); + break; + // slower + default: + len = arguments.length; + args = new Array(len - 1); + for (i = 1; i < len; i++) + args[i - 1] = arguments[i]; + handler.apply(this, args); + } + } else if (isObject(handler)) { + len = arguments.length; + args = new Array(len - 1); + for (i = 1; i < len; i++) + args[i - 1] = arguments[i]; + + listeners = handler.slice(); + len = listeners.length; + for (i = 0; i < len; i++) + listeners[i].apply(this, args); + } + + return true; +}; + +EventEmitter.prototype.addListener = function(type, listener) { + var m; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events) + this._events = {}; + + // To avoid recursion in the case that type === "newListener"! Before + // adding it to the listeners, first emit "newListener". + if (this._events.newListener) + this.emit('newListener', type, + isFunction(listener.listener) ? + listener.listener : listener); + + if (!this._events[type]) + // Optimize the case of one listener. Don't need the extra array object. + this._events[type] = listener; + else if (isObject(this._events[type])) + // If we've already got an array, just append. + this._events[type].push(listener); + else + // Adding the second element, need to change to array. + this._events[type] = [this._events[type], listener]; + + // Check for listener leak + if (isObject(this._events[type]) && !this._events[type].warned) { + var m; + if (!isUndefined(this._maxListeners)) { + m = this._maxListeners; + } else { + m = EventEmitter.defaultMaxListeners; + } + + if (m && m > 0 && this._events[type].length > m) { + this._events[type].warned = true; + console.error('(node) warning: possible EventEmitter memory ' + + 'leak detected. %d listeners added. ' + + 'Use emitter.setMaxListeners() to increase limit.', + this._events[type].length); + if (typeof console.trace === 'function') { + // not supported in IE 10 + console.trace(); + } + } + } + + return this; +}; + +EventEmitter.prototype.on = EventEmitter.prototype.addListener; + +EventEmitter.prototype.once = function(type, listener) { + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + var fired = false; + + function g() { + this.removeListener(type, g); + + if (!fired) { + fired = true; + listener.apply(this, arguments); + } + } + + g.listener = listener; + this.on(type, g); + + return this; +}; + +// emits a 'removeListener' event iff the listener was removed +EventEmitter.prototype.removeListener = function(type, listener) { + var list, position, length, i; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events || !this._events[type]) + return this; + + list = this._events[type]; + length = list.length; + position = -1; + + if (list === listener || + (isFunction(list.listener) && list.listener === listener)) { + delete this._events[type]; + if (this._events.removeListener) + this.emit('removeListener', type, listener); + + } else if (isObject(list)) { + for (i = length; i-- > 0;) { + if (list[i] === listener || + (list[i].listener && list[i].listener === listener)) { + position = i; + break; + } + } + + if (position < 0) + return this; + + if (list.length === 1) { + list.length = 0; + delete this._events[type]; + } else { + list.splice(position, 1); + } + + if (this._events.removeListener) + this.emit('removeListener', type, listener); + } + + return this; +}; + +EventEmitter.prototype.removeAllListeners = function(type) { + var key, listeners; + + if (!this._events) + return this; + + // not listening for removeListener, no need to emit + if (!this._events.removeListener) { + if (arguments.length === 0) + this._events = {}; + else if (this._events[type]) + delete this._events[type]; + return this; + } + + // emit removeListener for all listeners on all events + if (arguments.length === 0) { + for (key in this._events) { + if (key === 'removeListener') continue; + this.removeAllListeners(key); + } + this.removeAllListeners('removeListener'); + this._events = {}; + return this; + } + + listeners = this._events[type]; + + if (isFunction(listeners)) { + this.removeListener(type, listeners); + } else { + // LIFO order + while (listeners.length) + this.removeListener(type, listeners[listeners.length - 1]); + } + delete this._events[type]; + + return this; +}; + +EventEmitter.prototype.listeners = function(type) { + var ret; + if (!this._events || !this._events[type]) + ret = []; + else if (isFunction(this._events[type])) + ret = [this._events[type]]; + else + ret = this._events[type].slice(); + return ret; +}; + +EventEmitter.listenerCount = function(emitter, type) { + var ret; + if (!emitter._events || !emitter._events[type]) + ret = 0; + else if (isFunction(emitter._events[type])) + ret = 1; + else + ret = emitter._events[type].length; + return ret; +}; + +function isFunction(arg) { + return typeof arg === 'function'; +} + +function isNumber(arg) { + return typeof arg === 'number'; +} + +function isObject(arg) { + return typeof arg === 'object' && arg !== null; +} + +function isUndefined(arg) { + return arg === void 0; +} + +},{}],15:[function(require,module,exports){ +(function (process){ +exports.alphasort = alphasort +exports.alphasorti = alphasorti +exports.setopts = setopts +exports.ownProp = ownProp +exports.makeAbs = makeAbs +exports.finish = finish +exports.mark = mark +exports.isIgnored = isIgnored +exports.childrenIgnored = childrenIgnored + +function ownProp (obj, field) { + return Object.prototype.hasOwnProperty.call(obj, field) +} + +var path = require("path") +var minimatch = require("minimatch") +var isAbsolute = require("path-is-absolute") +var Minimatch = minimatch.Minimatch + +function alphasorti (a, b) { + return a.toLowerCase().localeCompare(b.toLowerCase()) +} + +function alphasort (a, b) { + return a.localeCompare(b) +} + +function setupIgnores (self, options) { + self.ignore = options.ignore || [] + + if (!Array.isArray(self.ignore)) + self.ignore = [self.ignore] + + if (self.ignore.length) { + self.ignore = self.ignore.map(ignoreMap) + } +} + +function ignoreMap (pattern) { + var gmatcher = null + if (pattern.slice(-3) === '/**') { + var gpattern = pattern.replace(/(\/\*\*)+$/, '') + gmatcher = new Minimatch(gpattern) + } + + return { + matcher: new Minimatch(pattern), + gmatcher: gmatcher + } +} + +function setopts (self, pattern, options) { + if (!options) + options = {} + + // base-matching: just use globstar for that. + if (options.matchBase && -1 === pattern.indexOf("/")) { + if (options.noglobstar) { + throw new Error("base matching requires globstar") + } + pattern = "**/" + pattern + } + + self.silent = !!options.silent + self.pattern = pattern + self.strict = options.strict !== false + self.realpath = !!options.realpath + self.realpathCache = options.realpathCache || Object.create(null) + self.follow = !!options.follow + self.dot = !!options.dot + self.mark = !!options.mark + self.nodir = !!options.nodir + if (self.nodir) + self.mark = true + self.sync = !!options.sync + self.nounique = !!options.nounique + self.nonull = !!options.nonull + self.nosort = !!options.nosort + self.nocase = !!options.nocase + self.stat = !!options.stat + self.noprocess = !!options.noprocess + + self.maxLength = options.maxLength || Infinity + self.cache = options.cache || Object.create(null) + self.statCache = options.statCache || Object.create(null) + self.symlinks = options.symlinks || Object.create(null) + + setupIgnores(self, options) + + self.changedCwd = false + var cwd = process.cwd() + if (!ownProp(options, "cwd")) + self.cwd = cwd + else { + self.cwd = options.cwd + self.changedCwd = path.resolve(options.cwd) !== cwd + } + + self.root = options.root || path.resolve(self.cwd, "/") + self.root = path.resolve(self.root) + if (process.platform === "win32") + self.root = self.root.replace(/\\/g, "/") + + self.nomount = !!options.nomount + + // disable comments and negation unless the user explicitly + // passes in false as the option. + options.nonegate = options.nonegate === false ? false : true + options.nocomment = options.nocomment === false ? false : true + deprecationWarning(options) + + self.minimatch = new Minimatch(pattern, options) + self.options = self.minimatch.options +} + +// TODO(isaacs): remove entirely in v6 +// exported to reset in tests +exports.deprecationWarned +function deprecationWarning(options) { + if (!options.nonegate || !options.nocomment) { + if (process.noDeprecation !== true && !exports.deprecationWarned) { + var msg = 'glob WARNING: comments and negation will be disabled in v6' + if (process.throwDeprecation) + throw new Error(msg) + else if (process.traceDeprecation) + console.trace(msg) + else + console.error(msg) + + exports.deprecationWarned = true + } + } +} + +function finish (self) { + var nou = self.nounique + var all = nou ? [] : Object.create(null) + + for (var i = 0, l = self.matches.length; i < l; i ++) { + var matches = self.matches[i] + if (!matches || Object.keys(matches).length === 0) { + if (self.nonull) { + // do like the shell, and spit out the literal glob + var literal = self.minimatch.globSet[i] + if (nou) + all.push(literal) + else + all[literal] = true + } + } else { + // had matches + var m = Object.keys(matches) + if (nou) + all.push.apply(all, m) + else + m.forEach(function (m) { + all[m] = true + }) + } + } + + if (!nou) + all = Object.keys(all) + + if (!self.nosort) + all = all.sort(self.nocase ? alphasorti : alphasort) + + // at *some* point we statted all of these + if (self.mark) { + for (var i = 0; i < all.length; i++) { + all[i] = self._mark(all[i]) + } + if (self.nodir) { + all = all.filter(function (e) { + return !(/\/$/.test(e)) + }) + } + } + + if (self.ignore.length) + all = all.filter(function(m) { + return !isIgnored(self, m) + }) + + self.found = all +} + +function mark (self, p) { + var abs = makeAbs(self, p) + var c = self.cache[abs] + var m = p + if (c) { + var isDir = c === 'DIR' || Array.isArray(c) + var slash = p.slice(-1) === '/' + + if (isDir && !slash) + m += '/' + else if (!isDir && slash) + m = m.slice(0, -1) + + if (m !== p) { + var mabs = makeAbs(self, m) + self.statCache[mabs] = self.statCache[abs] + self.cache[mabs] = self.cache[abs] + } + } + + return m +} + +// lotta situps... +function makeAbs (self, f) { + var abs = f + if (f.charAt(0) === '/') { + abs = path.join(self.root, f) + } else if (isAbsolute(f) || f === '') { + abs = f + } else if (self.changedCwd) { + abs = path.resolve(self.cwd, f) + } else { + abs = path.resolve(f) + } + return abs +} + + +// Return true, if pattern ends with globstar '**', for the accompanying parent directory. +// Ex:- If node_modules/** is the pattern, add 'node_modules' to ignore list along with it's contents +function isIgnored (self, path) { + if (!self.ignore.length) + return false + + return self.ignore.some(function(item) { + return item.matcher.match(path) || !!(item.gmatcher && item.gmatcher.match(path)) + }) +} + +function childrenIgnored (self, path) { + if (!self.ignore.length) + return false + + return self.ignore.some(function(item) { + return !!(item.gmatcher && item.gmatcher.match(path)) + }) +} + +}).call(this,require('_process')) +},{"_process":24,"minimatch":20,"path":22,"path-is-absolute":23}],16:[function(require,module,exports){ +(function (process){ +// Approach: +// +// 1. Get the minimatch set +// 2. For each pattern in the set, PROCESS(pattern, false) +// 3. Store matches per-set, then uniq them +// +// PROCESS(pattern, inGlobStar) +// Get the first [n] items from pattern that are all strings +// Join these together. This is PREFIX. +// If there is no more remaining, then stat(PREFIX) and +// add to matches if it succeeds. END. +// +// If inGlobStar and PREFIX is symlink and points to dir +// set ENTRIES = [] +// else readdir(PREFIX) as ENTRIES +// If fail, END +// +// with ENTRIES +// If pattern[n] is GLOBSTAR +// // handle the case where the globstar match is empty +// // by pruning it out, and testing the resulting pattern +// PROCESS(pattern[0..n] + pattern[n+1 .. $], false) +// // handle other cases. +// for ENTRY in ENTRIES (not dotfiles) +// // attach globstar + tail onto the entry +// // Mark that this entry is a globstar match +// PROCESS(pattern[0..n] + ENTRY + pattern[n .. $], true) +// +// else // not globstar +// for ENTRY in ENTRIES (not dotfiles, unless pattern[n] is dot) +// Test ENTRY against pattern[n] +// If fails, continue +// If passes, PROCESS(pattern[0..n] + item + pattern[n+1 .. $]) +// +// Caveat: +// Cache all stats and readdirs results to minimize syscall. Since all +// we ever care about is existence and directory-ness, we can just keep +// `true` for files, and [children,...] for directories, or `false` for +// things that don't exist. + +module.exports = glob + +var fs = require('fs') +var minimatch = require('minimatch') +var Minimatch = minimatch.Minimatch +var inherits = require('inherits') +var EE = require('events').EventEmitter +var path = require('path') +var assert = require('assert') +var isAbsolute = require('path-is-absolute') +var globSync = require('./sync.js') +var common = require('./common.js') +var alphasort = common.alphasort +var alphasorti = common.alphasorti +var setopts = common.setopts +var ownProp = common.ownProp +var inflight = require('inflight') +var util = require('util') +var childrenIgnored = common.childrenIgnored +var isIgnored = common.isIgnored + +var once = require('once') + +function glob (pattern, options, cb) { + if (typeof options === 'function') cb = options, options = {} + if (!options) options = {} + + if (options.sync) { + if (cb) + throw new TypeError('callback provided to sync glob') + return globSync(pattern, options) + } + + return new Glob(pattern, options, cb) +} + +glob.sync = globSync +var GlobSync = glob.GlobSync = globSync.GlobSync + +// old api surface +glob.glob = glob + +glob.hasMagic = function (pattern, options_) { + var options = util._extend({}, options_) + options.noprocess = true + + var g = new Glob(pattern, options) + var set = g.minimatch.set + if (set.length > 1) + return true + + for (var j = 0; j < set[0].length; j++) { + if (typeof set[0][j] !== 'string') + return true + } + + return false +} + +glob.Glob = Glob +inherits(Glob, EE) +function Glob (pattern, options, cb) { + if (typeof options === 'function') { + cb = options + options = null + } + + if (options && options.sync) { + if (cb) + throw new TypeError('callback provided to sync glob') + return new GlobSync(pattern, options) + } + + if (!(this instanceof Glob)) + return new Glob(pattern, options, cb) + + setopts(this, pattern, options) + this._didRealPath = false + + // process each pattern in the minimatch set + var n = this.minimatch.set.length + + // The matches are stored as {: true,...} so that + // duplicates are automagically pruned. + // Later, we do an Object.keys() on these. + // Keep them as a list so we can fill in when nonull is set. + this.matches = new Array(n) + + if (typeof cb === 'function') { + cb = once(cb) + this.on('error', cb) + this.on('end', function (matches) { + cb(null, matches) + }) + } + + var self = this + var n = this.minimatch.set.length + this._processing = 0 + this.matches = new Array(n) + + this._emitQueue = [] + this._processQueue = [] + this.paused = false + + if (this.noprocess) + return this + + if (n === 0) + return done() + + for (var i = 0; i < n; i ++) { + this._process(this.minimatch.set[i], i, false, done) + } + + function done () { + --self._processing + if (self._processing <= 0) + self._finish() + } +} + +Glob.prototype._finish = function () { + assert(this instanceof Glob) + if (this.aborted) + return + + if (this.realpath && !this._didRealpath) + return this._realpath() + + common.finish(this) + this.emit('end', this.found) +} + +Glob.prototype._realpath = function () { + if (this._didRealpath) + return + + this._didRealpath = true + + var n = this.matches.length + if (n === 0) + return this._finish() + + var self = this + for (var i = 0; i < this.matches.length; i++) + this._realpathSet(i, next) + + function next () { + if (--n === 0) + self._finish() + } +} + +Glob.prototype._realpathSet = function (index, cb) { + var matchset = this.matches[index] + if (!matchset) + return cb() + + var found = Object.keys(matchset) + var self = this + var n = found.length + + if (n === 0) + return cb() + + var set = this.matches[index] = Object.create(null) + found.forEach(function (p, i) { + // If there's a problem with the stat, then it means that + // one or more of the links in the realpath couldn't be + // resolved. just return the abs value in that case. + p = self._makeAbs(p) + fs.realpath(p, self.realpathCache, function (er, real) { + if (!er) + set[real] = true + else if (er.syscall === 'stat') + set[p] = true + else + self.emit('error', er) // srsly wtf right here + + if (--n === 0) { + self.matches[index] = set + cb() + } + }) + }) +} + +Glob.prototype._mark = function (p) { + return common.mark(this, p) +} + +Glob.prototype._makeAbs = function (f) { + return common.makeAbs(this, f) +} + +Glob.prototype.abort = function () { + this.aborted = true + this.emit('abort') +} + +Glob.prototype.pause = function () { + if (!this.paused) { + this.paused = true + this.emit('pause') + } +} + +Glob.prototype.resume = function () { + if (this.paused) { + this.emit('resume') + this.paused = false + if (this._emitQueue.length) { + var eq = this._emitQueue.slice(0) + this._emitQueue.length = 0 + for (var i = 0; i < eq.length; i ++) { + var e = eq[i] + this._emitMatch(e[0], e[1]) + } + } + if (this._processQueue.length) { + var pq = this._processQueue.slice(0) + this._processQueue.length = 0 + for (var i = 0; i < pq.length; i ++) { + var p = pq[i] + this._processing-- + this._process(p[0], p[1], p[2], p[3]) + } + } + } +} + +Glob.prototype._process = function (pattern, index, inGlobStar, cb) { + assert(this instanceof Glob) + assert(typeof cb === 'function') + + if (this.aborted) + return + + this._processing++ + if (this.paused) { + this._processQueue.push([pattern, index, inGlobStar, cb]) + return + } + + //console.error('PROCESS %d', this._processing, pattern) + + // Get the first [n] parts of pattern that are all strings. + var n = 0 + while (typeof pattern[n] === 'string') { + n ++ + } + // now n is the index of the first one that is *not* a string. + + // see if there's anything else + var prefix + switch (n) { + // if not, then this is rather simple + case pattern.length: + this._processSimple(pattern.join('/'), index, cb) + return + + case 0: + // pattern *starts* with some non-trivial item. + // going to readdir(cwd), but not include the prefix in matches. + prefix = null + break + + default: + // pattern has some string bits in the front. + // whatever it starts with, whether that's 'absolute' like /foo/bar, + // or 'relative' like '../baz' + prefix = pattern.slice(0, n).join('/') + break + } + + var remain = pattern.slice(n) + + // get the list of entries. + var read + if (prefix === null) + read = '.' + else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { + if (!prefix || !isAbsolute(prefix)) + prefix = '/' + prefix + read = prefix + } else + read = prefix + + var abs = this._makeAbs(read) + + //if ignored, skip _processing + if (childrenIgnored(this, read)) + return cb() + + var isGlobStar = remain[0] === minimatch.GLOBSTAR + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb) + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb) +} + +Glob.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar, cb) { + var self = this + this._readdir(abs, inGlobStar, function (er, entries) { + return self._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb) + }) +} + +Glob.prototype._processReaddir2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) { + + // if the abs isn't a dir, then nothing can match! + if (!entries) + return cb() + + // It will only match dot entries if it starts with a dot, or if + // dot is set. Stuff like @(.foo|.bar) isn't allowed. + var pn = remain[0] + var negate = !!this.minimatch.negate + var rawGlob = pn._glob + var dotOk = this.dot || rawGlob.charAt(0) === '.' + + var matchedEntries = [] + for (var i = 0; i < entries.length; i++) { + var e = entries[i] + if (e.charAt(0) !== '.' || dotOk) { + var m + if (negate && !prefix) { + m = !e.match(pn) + } else { + m = e.match(pn) + } + if (m) + matchedEntries.push(e) + } + } + + //console.error('prd2', prefix, entries, remain[0]._glob, matchedEntries) + + var len = matchedEntries.length + // If there are no matched entries, then nothing matches. + if (len === 0) + return cb() + + // if this is the last remaining pattern bit, then no need for + // an additional stat *unless* the user has specified mark or + // stat explicitly. We know they exist, since readdir returned + // them. + + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + if (prefix) { + if (prefix !== '/') + e = prefix + '/' + e + else + e = prefix + e + } + + if (e.charAt(0) === '/' && !this.nomount) { + e = path.join(this.root, e) + } + this._emitMatch(index, e) + } + // This was the last one, and no stats were needed + return cb() + } + + // now test all matched entries as stand-ins for that part + // of the pattern. + remain.shift() + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + var newPattern + if (prefix) { + if (prefix !== '/') + e = prefix + '/' + e + else + e = prefix + e + } + this._process([e].concat(remain), index, inGlobStar, cb) + } + cb() +} + +Glob.prototype._emitMatch = function (index, e) { + if (this.aborted) + return + + if (this.matches[index][e]) + return + + if (isIgnored(this, e)) + return + + if (this.paused) { + this._emitQueue.push([index, e]) + return + } + + var abs = this._makeAbs(e) + + if (this.nodir) { + var c = this.cache[abs] + if (c === 'DIR' || Array.isArray(c)) + return + } + + if (this.mark) + e = this._mark(e) + + this.matches[index][e] = true + + var st = this.statCache[abs] + if (st) + this.emit('stat', e, st) + + this.emit('match', e) +} + +Glob.prototype._readdirInGlobStar = function (abs, cb) { + if (this.aborted) + return + + // follow all symlinked directories forever + // just proceed as if this is a non-globstar situation + if (this.follow) + return this._readdir(abs, false, cb) + + var lstatkey = 'lstat\0' + abs + var self = this + var lstatcb = inflight(lstatkey, lstatcb_) + + if (lstatcb) + fs.lstat(abs, lstatcb) + + function lstatcb_ (er, lstat) { + if (er) + return cb() + + var isSym = lstat.isSymbolicLink() + self.symlinks[abs] = isSym + + // If it's not a symlink or a dir, then it's definitely a regular file. + // don't bother doing a readdir in that case. + if (!isSym && !lstat.isDirectory()) { + self.cache[abs] = 'FILE' + cb() + } else + self._readdir(abs, false, cb) + } +} + +Glob.prototype._readdir = function (abs, inGlobStar, cb) { + if (this.aborted) + return + + cb = inflight('readdir\0'+abs+'\0'+inGlobStar, cb) + if (!cb) + return + + //console.error('RD %j %j', +inGlobStar, abs) + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs, cb) + + if (ownProp(this.cache, abs)) { + var c = this.cache[abs] + if (!c || c === 'FILE') + return cb() + + if (Array.isArray(c)) + return cb(null, c) + } + + var self = this + fs.readdir(abs, readdirCb(this, abs, cb)) +} + +function readdirCb (self, abs, cb) { + return function (er, entries) { + if (er) + self._readdirError(abs, er, cb) + else + self._readdirEntries(abs, entries, cb) + } +} + +Glob.prototype._readdirEntries = function (abs, entries, cb) { + if (this.aborted) + return + + // if we haven't asked to stat everything, then just + // assume that everything in there exists, so we can avoid + // having to stat it a second time. + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i ++) { + var e = entries[i] + if (abs === '/') + e = abs + e + else + e = abs + '/' + e + this.cache[e] = true + } + } + + this.cache[abs] = entries + return cb(null, entries) +} + +Glob.prototype._readdirError = function (f, er, cb) { + if (this.aborted) + return + + // handle errors, and cache the information + switch (er.code) { + case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205 + case 'ENOTDIR': // totally normal. means it *does* exist. + this.cache[this._makeAbs(f)] = 'FILE' + break + + case 'ENOENT': // not terribly unusual + case 'ELOOP': + case 'ENAMETOOLONG': + case 'UNKNOWN': + this.cache[this._makeAbs(f)] = false + break + + default: // some unusual error. Treat as failure. + this.cache[this._makeAbs(f)] = false + if (this.strict) { + this.emit('error', er) + // If the error is handled, then we abort + // if not, we threw out of here + this.abort() + } + if (!this.silent) + console.error('glob error', er) + break + } + + return cb() +} + +Glob.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar, cb) { + var self = this + this._readdir(abs, inGlobStar, function (er, entries) { + self._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb) + }) +} + + +Glob.prototype._processGlobStar2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) { + //console.error('pgs2', prefix, remain[0], entries) + + // no entries means not a dir, so it can never have matches + // foo.txt/** doesn't match foo.txt + if (!entries) + return cb() + + // test without the globstar, and with every child both below + // and replacing the globstar. + var remainWithoutGlobStar = remain.slice(1) + var gspref = prefix ? [ prefix ] : [] + var noGlobStar = gspref.concat(remainWithoutGlobStar) + + // the noGlobStar pattern exits the inGlobStar state + this._process(noGlobStar, index, false, cb) + + var isSym = this.symlinks[abs] + var len = entries.length + + // If it's a symlink, and we're in a globstar, then stop + if (isSym && inGlobStar) + return cb() + + for (var i = 0; i < len; i++) { + var e = entries[i] + if (e.charAt(0) === '.' && !this.dot) + continue + + // these two cases enter the inGlobStar state + var instead = gspref.concat(entries[i], remainWithoutGlobStar) + this._process(instead, index, true, cb) + + var below = gspref.concat(entries[i], remain) + this._process(below, index, true, cb) + } + + cb() +} + +Glob.prototype._processSimple = function (prefix, index, cb) { + // XXX review this. Shouldn't it be doing the mounting etc + // before doing stat? kinda weird? + var self = this + this._stat(prefix, function (er, exists) { + self._processSimple2(prefix, index, er, exists, cb) + }) +} +Glob.prototype._processSimple2 = function (prefix, index, er, exists, cb) { + + //console.error('ps2', prefix, exists) + + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + // If it doesn't exist, then just mark the lack of results + if (!exists) + return cb() + + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix) + if (prefix.charAt(0) === '/') { + prefix = path.join(this.root, prefix) + } else { + prefix = path.resolve(this.root, prefix) + if (trail) + prefix += '/' + } + } + + if (process.platform === 'win32') + prefix = prefix.replace(/\\/g, '/') + + // Mark this as a match + this._emitMatch(index, prefix) + cb() +} + +// Returns either 'DIR', 'FILE', or false +Glob.prototype._stat = function (f, cb) { + var abs = this._makeAbs(f) + var needDir = f.slice(-1) === '/' + + if (f.length > this.maxLength) + return cb() + + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs] + + if (Array.isArray(c)) + c = 'DIR' + + // It exists, but maybe not how we need it + if (!needDir || c === 'DIR') + return cb(null, c) + + if (needDir && c === 'FILE') + return cb() + + // otherwise we have to stat, because maybe c=true + // if we know it exists, but not what it is. + } + + var exists + var stat = this.statCache[abs] + if (stat !== undefined) { + if (stat === false) + return cb(null, stat) + else { + var type = stat.isDirectory() ? 'DIR' : 'FILE' + if (needDir && type === 'FILE') + return cb() + else + return cb(null, type, stat) + } + } + + var self = this + var statcb = inflight('stat\0' + abs, lstatcb_) + if (statcb) + fs.lstat(abs, statcb) + + function lstatcb_ (er, lstat) { + if (lstat && lstat.isSymbolicLink()) { + // If it's a symlink, then treat it as the target, unless + // the target does not exist, then treat it as a file. + return fs.stat(abs, function (er, stat) { + if (er) + self._stat2(f, abs, null, lstat, cb) + else + self._stat2(f, abs, er, stat, cb) + }) + } else { + self._stat2(f, abs, er, lstat, cb) + } + } +} + +Glob.prototype._stat2 = function (f, abs, er, stat, cb) { + if (er) { + this.statCache[abs] = false + return cb() + } + + var needDir = f.slice(-1) === '/' + this.statCache[abs] = stat + + if (abs.slice(-1) === '/' && !stat.isDirectory()) + return cb(null, false, stat) + + var c = stat.isDirectory() ? 'DIR' : 'FILE' + this.cache[abs] = this.cache[abs] || c + + if (needDir && c !== 'DIR') + return cb() + + return cb(null, c, stat) +} + +}).call(this,require('_process')) +},{"./common.js":15,"./sync.js":17,"_process":24,"assert":9,"events":14,"fs":12,"inflight":18,"inherits":19,"minimatch":20,"once":21,"path":22,"path-is-absolute":23,"util":28}],17:[function(require,module,exports){ +(function (process){ +module.exports = globSync +globSync.GlobSync = GlobSync + +var fs = require('fs') +var minimatch = require('minimatch') +var Minimatch = minimatch.Minimatch +var Glob = require('./glob.js').Glob +var util = require('util') +var path = require('path') +var assert = require('assert') +var isAbsolute = require('path-is-absolute') +var common = require('./common.js') +var alphasort = common.alphasort +var alphasorti = common.alphasorti +var setopts = common.setopts +var ownProp = common.ownProp +var childrenIgnored = common.childrenIgnored + +function globSync (pattern, options) { + if (typeof options === 'function' || arguments.length === 3) + throw new TypeError('callback provided to sync glob\n'+ + 'See: https://github.com/isaacs/node-glob/issues/167') + + return new GlobSync(pattern, options).found +} + +function GlobSync (pattern, options) { + if (!pattern) + throw new Error('must provide pattern') + + if (typeof options === 'function' || arguments.length === 3) + throw new TypeError('callback provided to sync glob\n'+ + 'See: https://github.com/isaacs/node-glob/issues/167') + + if (!(this instanceof GlobSync)) + return new GlobSync(pattern, options) + + setopts(this, pattern, options) + + if (this.noprocess) + return this + + var n = this.minimatch.set.length + this.matches = new Array(n) + for (var i = 0; i < n; i ++) { + this._process(this.minimatch.set[i], i, false) + } + this._finish() +} + +GlobSync.prototype._finish = function () { + assert(this instanceof GlobSync) + if (this.realpath) { + var self = this + this.matches.forEach(function (matchset, index) { + var set = self.matches[index] = Object.create(null) + for (var p in matchset) { + try { + p = self._makeAbs(p) + var real = fs.realpathSync(p, self.realpathCache) + set[real] = true + } catch (er) { + if (er.syscall === 'stat') + set[self._makeAbs(p)] = true + else + throw er + } + } + }) + } + common.finish(this) +} + + +GlobSync.prototype._process = function (pattern, index, inGlobStar) { + assert(this instanceof GlobSync) + + // Get the first [n] parts of pattern that are all strings. + var n = 0 + while (typeof pattern[n] === 'string') { + n ++ + } + // now n is the index of the first one that is *not* a string. + + // See if there's anything else + var prefix + switch (n) { + // if not, then this is rather simple + case pattern.length: + this._processSimple(pattern.join('/'), index) + return + + case 0: + // pattern *starts* with some non-trivial item. + // going to readdir(cwd), but not include the prefix in matches. + prefix = null + break + + default: + // pattern has some string bits in the front. + // whatever it starts with, whether that's 'absolute' like /foo/bar, + // or 'relative' like '../baz' + prefix = pattern.slice(0, n).join('/') + break + } + + var remain = pattern.slice(n) + + // get the list of entries. + var read + if (prefix === null) + read = '.' + else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { + if (!prefix || !isAbsolute(prefix)) + prefix = '/' + prefix + read = prefix + } else + read = prefix + + var abs = this._makeAbs(read) + + //if ignored, skip processing + if (childrenIgnored(this, read)) + return + + var isGlobStar = remain[0] === minimatch.GLOBSTAR + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar) + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar) +} + + +GlobSync.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar) + + // if the abs isn't a dir, then nothing can match! + if (!entries) + return + + // It will only match dot entries if it starts with a dot, or if + // dot is set. Stuff like @(.foo|.bar) isn't allowed. + var pn = remain[0] + var negate = !!this.minimatch.negate + var rawGlob = pn._glob + var dotOk = this.dot || rawGlob.charAt(0) === '.' + + var matchedEntries = [] + for (var i = 0; i < entries.length; i++) { + var e = entries[i] + if (e.charAt(0) !== '.' || dotOk) { + var m + if (negate && !prefix) { + m = !e.match(pn) + } else { + m = e.match(pn) + } + if (m) + matchedEntries.push(e) + } + } + + var len = matchedEntries.length + // If there are no matched entries, then nothing matches. + if (len === 0) + return + + // if this is the last remaining pattern bit, then no need for + // an additional stat *unless* the user has specified mark or + // stat explicitly. We know they exist, since readdir returned + // them. + + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + if (prefix) { + if (prefix.slice(-1) !== '/') + e = prefix + '/' + e + else + e = prefix + e + } + + if (e.charAt(0) === '/' && !this.nomount) { + e = path.join(this.root, e) + } + this.matches[index][e] = true + } + // This was the last one, and no stats were needed + return + } + + // now test all matched entries as stand-ins for that part + // of the pattern. + remain.shift() + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + var newPattern + if (prefix) + newPattern = [prefix, e] + else + newPattern = [e] + this._process(newPattern.concat(remain), index, inGlobStar) + } +} + + +GlobSync.prototype._emitMatch = function (index, e) { + var abs = this._makeAbs(e) + if (this.mark) + e = this._mark(e) + + if (this.matches[index][e]) + return + + if (this.nodir) { + var c = this.cache[this._makeAbs(e)] + if (c === 'DIR' || Array.isArray(c)) + return + } + + this.matches[index][e] = true + if (this.stat) + this._stat(e) +} + + +GlobSync.prototype._readdirInGlobStar = function (abs) { + // follow all symlinked directories forever + // just proceed as if this is a non-globstar situation + if (this.follow) + return this._readdir(abs, false) + + var entries + var lstat + var stat + try { + lstat = fs.lstatSync(abs) + } catch (er) { + // lstat failed, doesn't exist + return null + } + + var isSym = lstat.isSymbolicLink() + this.symlinks[abs] = isSym + + // If it's not a symlink or a dir, then it's definitely a regular file. + // don't bother doing a readdir in that case. + if (!isSym && !lstat.isDirectory()) + this.cache[abs] = 'FILE' + else + entries = this._readdir(abs, false) + + return entries +} + +GlobSync.prototype._readdir = function (abs, inGlobStar) { + var entries + + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs) + + if (ownProp(this.cache, abs)) { + var c = this.cache[abs] + if (!c || c === 'FILE') + return null + + if (Array.isArray(c)) + return c + } + + try { + return this._readdirEntries(abs, fs.readdirSync(abs)) + } catch (er) { + this._readdirError(abs, er) + return null + } +} + +GlobSync.prototype._readdirEntries = function (abs, entries) { + // if we haven't asked to stat everything, then just + // assume that everything in there exists, so we can avoid + // having to stat it a second time. + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i ++) { + var e = entries[i] + if (abs === '/') + e = abs + e + else + e = abs + '/' + e + this.cache[e] = true + } + } + + this.cache[abs] = entries + + // mark and cache dir-ness + return entries +} + +GlobSync.prototype._readdirError = function (f, er) { + // handle errors, and cache the information + switch (er.code) { + case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205 + case 'ENOTDIR': // totally normal. means it *does* exist. + this.cache[this._makeAbs(f)] = 'FILE' + break + + case 'ENOENT': // not terribly unusual + case 'ELOOP': + case 'ENAMETOOLONG': + case 'UNKNOWN': + this.cache[this._makeAbs(f)] = false + break + + default: // some unusual error. Treat as failure. + this.cache[this._makeAbs(f)] = false + if (this.strict) + throw er + if (!this.silent) + console.error('glob error', er) + break + } +} + +GlobSync.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar) { + + var entries = this._readdir(abs, inGlobStar) + + // no entries means not a dir, so it can never have matches + // foo.txt/** doesn't match foo.txt + if (!entries) + return + + // test without the globstar, and with every child both below + // and replacing the globstar. + var remainWithoutGlobStar = remain.slice(1) + var gspref = prefix ? [ prefix ] : [] + var noGlobStar = gspref.concat(remainWithoutGlobStar) + + // the noGlobStar pattern exits the inGlobStar state + this._process(noGlobStar, index, false) + + var len = entries.length + var isSym = this.symlinks[abs] + + // If it's a symlink, and we're in a globstar, then stop + if (isSym && inGlobStar) + return + + for (var i = 0; i < len; i++) { + var e = entries[i] + if (e.charAt(0) === '.' && !this.dot) + continue + + // these two cases enter the inGlobStar state + var instead = gspref.concat(entries[i], remainWithoutGlobStar) + this._process(instead, index, true) + + var below = gspref.concat(entries[i], remain) + this._process(below, index, true) + } +} + +GlobSync.prototype._processSimple = function (prefix, index) { + // XXX review this. Shouldn't it be doing the mounting etc + // before doing stat? kinda weird? + var exists = this._stat(prefix) + + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + // If it doesn't exist, then just mark the lack of results + if (!exists) + return + + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix) + if (prefix.charAt(0) === '/') { + prefix = path.join(this.root, prefix) + } else { + prefix = path.resolve(this.root, prefix) + if (trail) + prefix += '/' + } + } + + if (process.platform === 'win32') + prefix = prefix.replace(/\\/g, '/') + + // Mark this as a match + this.matches[index][prefix] = true +} + +// Returns either 'DIR', 'FILE', or false +GlobSync.prototype._stat = function (f) { + var abs = this._makeAbs(f) + var needDir = f.slice(-1) === '/' + + if (f.length > this.maxLength) + return false + + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs] + + if (Array.isArray(c)) + c = 'DIR' + + // It exists, but maybe not how we need it + if (!needDir || c === 'DIR') + return c + + if (needDir && c === 'FILE') + return false + + // otherwise we have to stat, because maybe c=true + // if we know it exists, but not what it is. + } + + var exists + var stat = this.statCache[abs] + if (!stat) { + var lstat + try { + lstat = fs.lstatSync(abs) + } catch (er) { + return false + } + + if (lstat.isSymbolicLink()) { + try { + stat = fs.statSync(abs) + } catch (er) { + stat = lstat + } + } else { + stat = lstat + } + } + + this.statCache[abs] = stat + + var c = stat.isDirectory() ? 'DIR' : 'FILE' + this.cache[abs] = this.cache[abs] || c + + if (needDir && c !== 'DIR') + return false + + return c +} + +GlobSync.prototype._mark = function (p) { + return common.mark(this, p) +} + +GlobSync.prototype._makeAbs = function (f) { + return common.makeAbs(this, f) +} + +}).call(this,require('_process')) +},{"./common.js":15,"./glob.js":16,"_process":24,"assert":9,"fs":12,"minimatch":20,"path":22,"path-is-absolute":23,"util":28}],18:[function(require,module,exports){ +(function (process){ +var wrappy = require('wrappy') +var reqs = Object.create(null) +var once = require('once') + +module.exports = wrappy(inflight) + +function inflight (key, cb) { + if (reqs[key]) { + reqs[key].push(cb) + return null + } else { + reqs[key] = [cb] + return makeres(key) + } +} + +function makeres (key) { + return once(function RES () { + var cbs = reqs[key] + var len = cbs.length + var args = slice(arguments) + + // XXX It's somewhat ambiguous whether a new callback added in this + // pass should be queued for later execution if something in the + // list of callbacks throws, or if it should just be discarded. + // However, it's such an edge case that it hardly matters, and either + // choice is likely as surprising as the other. + // As it happens, we do go ahead and schedule it for later execution. + try { + for (var i = 0; i < len; i++) { + cbs[i].apply(null, args) + } + } finally { + if (cbs.length > len) { + // added more in the interim. + // de-zalgo, just in case, but don't call again. + cbs.splice(0, len) + process.nextTick(function () { + RES.apply(null, args) + }) + } else { + delete reqs[key] + } + } + }) +} + +function slice (args) { + var length = args.length + var array = [] + + for (var i = 0; i < length; i++) array[i] = args[i] + return array +} + +}).call(this,require('_process')) +},{"_process":24,"once":21,"wrappy":29}],19:[function(require,module,exports){ +if (typeof Object.create === 'function') { + // implementation from standard node.js 'util' module + module.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); + }; +} else { + // old school shim for old browsers + module.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor + var TempCtor = function () {} + TempCtor.prototype = superCtor.prototype + ctor.prototype = new TempCtor() + ctor.prototype.constructor = ctor + } +} + +},{}],20:[function(require,module,exports){ +module.exports = minimatch +minimatch.Minimatch = Minimatch + +var path = { sep: '/' } +try { + path = require('path') +} catch (er) {} + +var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {} +var expand = require('brace-expansion') + +var plTypes = { + '!': { open: '(?:(?!(?:', close: '))[^/]*?)'}, + '?': { open: '(?:', close: ')?' }, + '+': { open: '(?:', close: ')+' }, + '*': { open: '(?:', close: ')*' }, + '@': { open: '(?:', close: ')' } +} + +// any single thing other than / +// don't need to escape / when using new RegExp() +var qmark = '[^/]' + +// * => any number of characters +var star = qmark + '*?' + +// ** when dots are allowed. Anything goes, except .. and . +// not (^ or / followed by one or two dots followed by $ or /), +// followed by anything, any number of times. +var twoStarDot = '(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?' + +// not a ^ or / followed by a dot, +// followed by anything, any number of times. +var twoStarNoDot = '(?:(?!(?:\\\/|^)\\.).)*?' + +// characters that need to be escaped in RegExp. +var reSpecials = charSet('().*{}+?[]^$\\!') + +// "abc" -> { a:true, b:true, c:true } +function charSet (s) { + return s.split('').reduce(function (set, c) { + set[c] = true + return set + }, {}) +} + +// normalizes slashes. +var slashSplit = /\/+/ + +minimatch.filter = filter +function filter (pattern, options) { + options = options || {} + return function (p, i, list) { + return minimatch(p, pattern, options) + } +} + +function ext (a, b) { + a = a || {} + b = b || {} + var t = {} + Object.keys(b).forEach(function (k) { + t[k] = b[k] + }) + Object.keys(a).forEach(function (k) { + t[k] = a[k] + }) + return t +} + +minimatch.defaults = function (def) { + if (!def || !Object.keys(def).length) return minimatch + + var orig = minimatch + + var m = function minimatch (p, pattern, options) { + return orig.minimatch(p, pattern, ext(def, options)) + } + + m.Minimatch = function Minimatch (pattern, options) { + return new orig.Minimatch(pattern, ext(def, options)) + } + + return m +} + +Minimatch.defaults = function (def) { + if (!def || !Object.keys(def).length) return Minimatch + return minimatch.defaults(def).Minimatch +} + +function minimatch (p, pattern, options) { + if (typeof pattern !== 'string') { + throw new TypeError('glob pattern string required') + } + + if (!options) options = {} + + // shortcut: comments match nothing. + if (!options.nocomment && pattern.charAt(0) === '#') { + return false + } + + // "" only matches "" + if (pattern.trim() === '') return p === '' + + return new Minimatch(pattern, options).match(p) +} + +function Minimatch (pattern, options) { + if (!(this instanceof Minimatch)) { + return new Minimatch(pattern, options) + } + + if (typeof pattern !== 'string') { + throw new TypeError('glob pattern string required') + } + + if (!options) options = {} + pattern = pattern.trim() + + // windows support: need to use /, not \ + if (path.sep !== '/') { + pattern = pattern.split(path.sep).join('/') + } + + this.options = options + this.set = [] + this.pattern = pattern + this.regexp = null + this.negate = false + this.comment = false + this.empty = false + + // make the set of regexps etc. + this.make() +} + +Minimatch.prototype.debug = function () {} + +Minimatch.prototype.make = make +function make () { + // don't do it more than once. + if (this._made) return + + var pattern = this.pattern + var options = this.options + + // empty patterns and comments match nothing. + if (!options.nocomment && pattern.charAt(0) === '#') { + this.comment = true + return + } + if (!pattern) { + this.empty = true + return + } + + // step 1: figure out negation, etc. + this.parseNegate() + + // step 2: expand braces + var set = this.globSet = this.braceExpand() + + if (options.debug) this.debug = console.error + + this.debug(this.pattern, set) + + // step 3: now we have a set, so turn each one into a series of path-portion + // matching patterns. + // These will be regexps, except in the case of "**", which is + // set to the GLOBSTAR object for globstar behavior, + // and will not contain any / characters + set = this.globParts = set.map(function (s) { + return s.split(slashSplit) + }) + + this.debug(this.pattern, set) + + // glob --> regexps + set = set.map(function (s, si, set) { + return s.map(this.parse, this) + }, this) + + this.debug(this.pattern, set) + + // filter out everything that didn't compile properly. + set = set.filter(function (s) { + return s.indexOf(false) === -1 + }) + + this.debug(this.pattern, set) + + this.set = set +} + +Minimatch.prototype.parseNegate = parseNegate +function parseNegate () { + var pattern = this.pattern + var negate = false + var options = this.options + var negateOffset = 0 + + if (options.nonegate) return + + for (var i = 0, l = pattern.length + ; i < l && pattern.charAt(i) === '!' + ; i++) { + negate = !negate + negateOffset++ + } + + if (negateOffset) this.pattern = pattern.substr(negateOffset) + this.negate = negate +} + +// Brace expansion: +// a{b,c}d -> abd acd +// a{b,}c -> abc ac +// a{0..3}d -> a0d a1d a2d a3d +// a{b,c{d,e}f}g -> abg acdfg acefg +// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg +// +// Invalid sets are not expanded. +// a{2..}b -> a{2..}b +// a{b}c -> a{b}c +minimatch.braceExpand = function (pattern, options) { + return braceExpand(pattern, options) +} + +Minimatch.prototype.braceExpand = braceExpand + +function braceExpand (pattern, options) { + if (!options) { + if (this instanceof Minimatch) { + options = this.options + } else { + options = {} + } + } + + pattern = typeof pattern === 'undefined' + ? this.pattern : pattern + + if (typeof pattern === 'undefined') { + throw new TypeError('undefined pattern') + } + + if (options.nobrace || + !pattern.match(/\{.*\}/)) { + // shortcut. no need to expand. + return [pattern] + } + + return expand(pattern) +} + +// parse a component of the expanded set. +// At this point, no pattern may contain "/" in it +// so we're going to return a 2d array, where each entry is the full +// pattern, split on '/', and then turned into a regular expression. +// A regexp is made at the end which joins each array with an +// escaped /, and another full one which joins each regexp with |. +// +// Following the lead of Bash 4.1, note that "**" only has special meaning +// when it is the *only* thing in a path portion. Otherwise, any series +// of * is equivalent to a single *. Globstar behavior is enabled by +// default, and can be disabled by setting options.noglobstar. +Minimatch.prototype.parse = parse +var SUBPARSE = {} +function parse (pattern, isSub) { + if (pattern.length > 1024 * 64) { + throw new TypeError('pattern is too long') + } + + var options = this.options + + // shortcuts + if (!options.noglobstar && pattern === '**') return GLOBSTAR + if (pattern === '') return '' + + var re = '' + var hasMagic = !!options.nocase + var escaping = false + // ? => one single character + var patternListStack = [] + var negativeLists = [] + var stateChar + var inClass = false + var reClassStart = -1 + var classStart = -1 + // . and .. never match anything that doesn't start with ., + // even when options.dot is set. + var patternStart = pattern.charAt(0) === '.' ? '' // anything + // not (start or / followed by . or .. followed by / or end) + : options.dot ? '(?!(?:^|\\\/)\\.{1,2}(?:$|\\\/))' + : '(?!\\.)' + var self = this + + function clearStateChar () { + if (stateChar) { + // we had some state-tracking character + // that wasn't consumed by this pass. + switch (stateChar) { + case '*': + re += star + hasMagic = true + break + case '?': + re += qmark + hasMagic = true + break + default: + re += '\\' + stateChar + break + } + self.debug('clearStateChar %j %j', stateChar, re) + stateChar = false + } + } + + for (var i = 0, len = pattern.length, c + ; (i < len) && (c = pattern.charAt(i)) + ; i++) { + this.debug('%s\t%s %s %j', pattern, i, re, c) + + // skip over any that are escaped. + if (escaping && reSpecials[c]) { + re += '\\' + c + escaping = false + continue + } + + switch (c) { + case '/': + // completely not allowed, even escaped. + // Should already be path-split by now. + return false + + case '\\': + clearStateChar() + escaping = true + continue + + // the various stateChar values + // for the "extglob" stuff. + case '?': + case '*': + case '+': + case '@': + case '!': + this.debug('%s\t%s %s %j <-- stateChar', pattern, i, re, c) + + // all of those are literals inside a class, except that + // the glob [!a] means [^a] in regexp + if (inClass) { + this.debug(' in class') + if (c === '!' && i === classStart + 1) c = '^' + re += c + continue + } + + // if we already have a stateChar, then it means + // that there was something like ** or +? in there. + // Handle the stateChar, then proceed with this one. + self.debug('call clearStateChar %j', stateChar) + clearStateChar() + stateChar = c + // if extglob is disabled, then +(asdf|foo) isn't a thing. + // just clear the statechar *now*, rather than even diving into + // the patternList stuff. + if (options.noext) clearStateChar() + continue + + case '(': + if (inClass) { + re += '(' + continue + } + + if (!stateChar) { + re += '\\(' + continue + } + + patternListStack.push({ + type: stateChar, + start: i - 1, + reStart: re.length, + open: plTypes[stateChar].open, + close: plTypes[stateChar].close + }) + // negation is (?:(?!js)[^/]*) + re += stateChar === '!' ? '(?:(?!(?:' : '(?:' + this.debug('plType %j %j', stateChar, re) + stateChar = false + continue + + case ')': + if (inClass || !patternListStack.length) { + re += '\\)' + continue + } + + clearStateChar() + hasMagic = true + var pl = patternListStack.pop() + // negation is (?:(?!js)[^/]*) + // The others are (?:) + re += pl.close + if (pl.type === '!') { + negativeLists.push(pl) + } + pl.reEnd = re.length + continue + + case '|': + if (inClass || !patternListStack.length || escaping) { + re += '\\|' + escaping = false + continue + } + + clearStateChar() + re += '|' + continue + + // these are mostly the same in regexp and glob + case '[': + // swallow any state-tracking char before the [ + clearStateChar() + + if (inClass) { + re += '\\' + c + continue + } + + inClass = true + classStart = i + reClassStart = re.length + re += c + continue + + case ']': + // a right bracket shall lose its special + // meaning and represent itself in + // a bracket expression if it occurs + // first in the list. -- POSIX.2 2.8.3.2 + if (i === classStart + 1 || !inClass) { + re += '\\' + c + escaping = false + continue + } + + // handle the case where we left a class open. + // "[z-a]" is valid, equivalent to "\[z-a\]" + if (inClass) { + // split where the last [ was, make sure we don't have + // an invalid re. if so, re-walk the contents of the + // would-be class to re-translate any characters that + // were passed through as-is + // TODO: It would probably be faster to determine this + // without a try/catch and a new RegExp, but it's tricky + // to do safely. For now, this is safe and works. + var cs = pattern.substring(classStart + 1, i) + try { + RegExp('[' + cs + ']') + } catch (er) { + // not a valid class! + var sp = this.parse(cs, SUBPARSE) + re = re.substr(0, reClassStart) + '\\[' + sp[0] + '\\]' + hasMagic = hasMagic || sp[1] + inClass = false + continue + } + } + + // finish up the class. + hasMagic = true + inClass = false + re += c + continue + + default: + // swallow any state char that wasn't consumed + clearStateChar() + + if (escaping) { + // no need + escaping = false + } else if (reSpecials[c] + && !(c === '^' && inClass)) { + re += '\\' + } + + re += c + + } // switch + } // for + + // handle the case where we left a class open. + // "[abc" is valid, equivalent to "\[abc" + if (inClass) { + // split where the last [ was, and escape it + // this is a huge pita. We now have to re-walk + // the contents of the would-be class to re-translate + // any characters that were passed through as-is + cs = pattern.substr(classStart + 1) + sp = this.parse(cs, SUBPARSE) + re = re.substr(0, reClassStart) + '\\[' + sp[0] + hasMagic = hasMagic || sp[1] + } + + // handle the case where we had a +( thing at the *end* + // of the pattern. + // each pattern list stack adds 3 chars, and we need to go through + // and escape any | chars that were passed through as-is for the regexp. + // Go through and escape them, taking care not to double-escape any + // | chars that were already escaped. + for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { + var tail = re.slice(pl.reStart + pl.open.length) + this.debug('setting tail', re, pl) + // maybe some even number of \, then maybe 1 \, followed by a | + tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, function (_, $1, $2) { + if (!$2) { + // the | isn't already escaped, so escape it. + $2 = '\\' + } + + // need to escape all those slashes *again*, without escaping the + // one that we need for escaping the | character. As it works out, + // escaping an even number of slashes can be done by simply repeating + // it exactly after itself. That's why this trick works. + // + // I am sorry that you have to see this. + return $1 + $1 + $2 + '|' + }) + + this.debug('tail=%j\n %s', tail, tail, pl, re) + var t = pl.type === '*' ? star + : pl.type === '?' ? qmark + : '\\' + pl.type + + hasMagic = true + re = re.slice(0, pl.reStart) + t + '\\(' + tail + } + + // handle trailing things that only matter at the very end. + clearStateChar() + if (escaping) { + // trailing \\ + re += '\\\\' + } + + // only need to apply the nodot start if the re starts with + // something that could conceivably capture a dot + var addPatternStart = false + switch (re.charAt(0)) { + case '.': + case '[': + case '(': addPatternStart = true + } + + // Hack to work around lack of negative lookbehind in JS + // A pattern like: *.!(x).!(y|z) needs to ensure that a name + // like 'a.xyz.yz' doesn't match. So, the first negative + // lookahead, has to look ALL the way ahead, to the end of + // the pattern. + for (var n = negativeLists.length - 1; n > -1; n--) { + var nl = negativeLists[n] + + var nlBefore = re.slice(0, nl.reStart) + var nlFirst = re.slice(nl.reStart, nl.reEnd - 8) + var nlLast = re.slice(nl.reEnd - 8, nl.reEnd) + var nlAfter = re.slice(nl.reEnd) + + nlLast += nlAfter + + // Handle nested stuff like *(*.js|!(*.json)), where open parens + // mean that we should *not* include the ) in the bit that is considered + // "after" the negated section. + var openParensBefore = nlBefore.split('(').length - 1 + var cleanAfter = nlAfter + for (i = 0; i < openParensBefore; i++) { + cleanAfter = cleanAfter.replace(/\)[+*?]?/, '') + } + nlAfter = cleanAfter + + var dollar = '' + if (nlAfter === '' && isSub !== SUBPARSE) { + dollar = '$' + } + var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast + re = newRe + } + + // if the re is not "" at this point, then we need to make sure + // it doesn't match against an empty path part. + // Otherwise a/* will match a/, which it should not. + if (re !== '' && hasMagic) { + re = '(?=.)' + re + } + + if (addPatternStart) { + re = patternStart + re + } + + // parsing just a piece of a larger pattern. + if (isSub === SUBPARSE) { + return [re, hasMagic] + } + + // skip the regexp for non-magical patterns + // unescape anything in it, though, so that it'll be + // an exact match against a file etc. + if (!hasMagic) { + return globUnescape(pattern) + } + + var flags = options.nocase ? 'i' : '' + try { + var regExp = new RegExp('^' + re + '$', flags) + } catch (er) { + // If it was an invalid regular expression, then it can't match + // anything. This trick looks for a character after the end of + // the string, which is of course impossible, except in multi-line + // mode, but it's not a /m regex. + return new RegExp('$.') + } + + regExp._glob = pattern + regExp._src = re + + return regExp +} + +minimatch.makeRe = function (pattern, options) { + return new Minimatch(pattern, options || {}).makeRe() +} + +Minimatch.prototype.makeRe = makeRe +function makeRe () { + if (this.regexp || this.regexp === false) return this.regexp + + // at this point, this.set is a 2d array of partial + // pattern strings, or "**". + // + // It's better to use .match(). This function shouldn't + // be used, really, but it's pretty convenient sometimes, + // when you just want to work with a regex. + var set = this.set + + if (!set.length) { + this.regexp = false + return this.regexp + } + var options = this.options + + var twoStar = options.noglobstar ? star + : options.dot ? twoStarDot + : twoStarNoDot + var flags = options.nocase ? 'i' : '' + + var re = set.map(function (pattern) { + return pattern.map(function (p) { + return (p === GLOBSTAR) ? twoStar + : (typeof p === 'string') ? regExpEscape(p) + : p._src + }).join('\\\/') + }).join('|') + + // must match entire pattern + // ending in a * or ** will make it less strict. + re = '^(?:' + re + ')$' + + // can match anything, as long as it's not this. + if (this.negate) re = '^(?!' + re + ').*$' + + try { + this.regexp = new RegExp(re, flags) + } catch (ex) { + this.regexp = false + } + return this.regexp +} + +minimatch.match = function (list, pattern, options) { + options = options || {} + var mm = new Minimatch(pattern, options) + list = list.filter(function (f) { + return mm.match(f) + }) + if (mm.options.nonull && !list.length) { + list.push(pattern) + } + return list +} + +Minimatch.prototype.match = match +function match (f, partial) { + this.debug('match', f, this.pattern) + // short-circuit in the case of busted things. + // comments, etc. + if (this.comment) return false + if (this.empty) return f === '' + + if (f === '/' && partial) return true + + var options = this.options + + // windows: need to use /, not \ + if (path.sep !== '/') { + f = f.split(path.sep).join('/') + } + + // treat the test path as a set of pathparts. + f = f.split(slashSplit) + this.debug(this.pattern, 'split', f) + + // just ONE of the pattern sets in this.set needs to match + // in order for it to be valid. If negating, then just one + // match means that we have failed. + // Either way, return on the first hit. + + var set = this.set + this.debug(this.pattern, 'set', set) + + // Find the basename of the path by looking for the last non-empty segment + var filename + var i + for (i = f.length - 1; i >= 0; i--) { + filename = f[i] + if (filename) break + } + + for (i = 0; i < set.length; i++) { + var pattern = set[i] + var file = f + if (options.matchBase && pattern.length === 1) { + file = [filename] + } + var hit = this.matchOne(file, pattern, partial) + if (hit) { + if (options.flipNegate) return true + return !this.negate + } + } + + // didn't get any hits. this is success if it's a negative + // pattern, failure otherwise. + if (options.flipNegate) return false + return this.negate +} + +// set partial to true to test if, for example, +// "/a/b" matches the start of "/*/b/*/d" +// Partial means, if you run out of file before you run +// out of pattern, then that's fine, as long as all +// the parts match. +Minimatch.prototype.matchOne = function (file, pattern, partial) { + var options = this.options + + this.debug('matchOne', + { 'this': this, file: file, pattern: pattern }) + + this.debug('matchOne', file.length, pattern.length) + + for (var fi = 0, + pi = 0, + fl = file.length, + pl = pattern.length + ; (fi < fl) && (pi < pl) + ; fi++, pi++) { + this.debug('matchOne loop') + var p = pattern[pi] + var f = file[fi] + + this.debug(pattern, p, f) + + // should be impossible. + // some invalid regexp stuff in the set. + if (p === false) return false + + if (p === GLOBSTAR) { + this.debug('GLOBSTAR', [pattern, p, f]) + + // "**" + // a/**/b/**/c would match the following: + // a/b/x/y/z/c + // a/x/y/z/b/c + // a/b/x/b/x/c + // a/b/c + // To do this, take the rest of the pattern after + // the **, and see if it would match the file remainder. + // If so, return success. + // If not, the ** "swallows" a segment, and try again. + // This is recursively awful. + // + // a/**/b/**/c matching a/b/x/y/z/c + // - a matches a + // - doublestar + // - matchOne(b/x/y/z/c, b/**/c) + // - b matches b + // - doublestar + // - matchOne(x/y/z/c, c) -> no + // - matchOne(y/z/c, c) -> no + // - matchOne(z/c, c) -> no + // - matchOne(c, c) yes, hit + var fr = fi + var pr = pi + 1 + if (pr === pl) { + this.debug('** at the end') + // a ** at the end will just swallow the rest. + // We have found a match. + // however, it will not swallow /.x, unless + // options.dot is set. + // . and .. are *never* matched by **, for explosively + // exponential reasons. + for (; fi < fl; fi++) { + if (file[fi] === '.' || file[fi] === '..' || + (!options.dot && file[fi].charAt(0) === '.')) return false + } + return true + } + + // ok, let's see if we can swallow whatever we can. + while (fr < fl) { + var swallowee = file[fr] + + this.debug('\nglobstar while', file, fr, pattern, pr, swallowee) + + // XXX remove this slice. Just pass the start index. + if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { + this.debug('globstar found match!', fr, fl, swallowee) + // found a match. + return true + } else { + // can't swallow "." or ".." ever. + // can only swallow ".foo" when explicitly asked. + if (swallowee === '.' || swallowee === '..' || + (!options.dot && swallowee.charAt(0) === '.')) { + this.debug('dot detected!', file, fr, pattern, pr) + break + } + + // ** swallows a segment, and continue. + this.debug('globstar swallow a segment, and continue') + fr++ + } + } + + // no match was found. + // However, in partial mode, we can't say this is necessarily over. + // If there's more *pattern* left, then + if (partial) { + // ran out of file + this.debug('\n>>> no match, partial?', file, fr, pattern, pr) + if (fr === fl) return true + } + return false + } + + // something other than ** + // non-magic patterns just have to match exactly + // patterns with magic have been turned into regexps. + var hit + if (typeof p === 'string') { + if (options.nocase) { + hit = f.toLowerCase() === p.toLowerCase() + } else { + hit = f === p + } + this.debug('string match', p, f, hit) + } else { + hit = f.match(p) + this.debug('pattern match', p, f, hit) + } + + if (!hit) return false + } + + // Note: ending in / means that we'll get a final "" + // at the end of the pattern. This can only match a + // corresponding "" at the end of the file. + // If the file ends in /, then it can only match a + // a pattern that ends in /, unless the pattern just + // doesn't have any more for it. But, a/b/ should *not* + // match "a/b/*", even though "" matches against the + // [^/]*? pattern, except in partial mode, where it might + // simply not be reached yet. + // However, a/b/ should still satisfy a/* + + // now either we fell off the end of the pattern, or we're done. + if (fi === fl && pi === pl) { + // ran out of pattern and filename at the same time. + // an exact hit! + return true + } else if (fi === fl) { + // ran out of file, but still had pattern left. + // this is ok if we're doing the match as part of + // a glob fs traversal. + return partial + } else if (pi === pl) { + // ran out of pattern, still have file left. + // this is only acceptable if we're on the very last + // empty segment of a file with a trailing slash. + // a/* should match a/b/ + var emptyFileEnd = (fi === fl - 1) && (file[fi] === '') + return emptyFileEnd + } + + // should be unreachable. + throw new Error('wtf?') +} + +// replace stuff like \* with * +function globUnescape (s) { + return s.replace(/\\(.)/g, '$1') +} + +function regExpEscape (s) { + return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&') +} + +},{"brace-expansion":11,"path":22}],21:[function(require,module,exports){ +var wrappy = require('wrappy') +module.exports = wrappy(once) +module.exports.strict = wrappy(onceStrict) + +once.proto = once(function () { + Object.defineProperty(Function.prototype, 'once', { + value: function () { + return once(this) + }, + configurable: true + }) + + Object.defineProperty(Function.prototype, 'onceStrict', { + value: function () { + return onceStrict(this) + }, + configurable: true + }) +}) + +function once (fn) { + var f = function () { + if (f.called) return f.value + f.called = true + return f.value = fn.apply(this, arguments) + } + f.called = false + return f +} + +function onceStrict (fn) { + var f = function () { + if (f.called) + throw new Error(f.onceError) + f.called = true + return f.value = fn.apply(this, arguments) + } + var name = fn.name || 'Function wrapped with `once`' + f.onceError = name + " shouldn't be called more than once" + f.called = false + return f +} + +},{"wrappy":29}],22:[function(require,module,exports){ +(function (process){ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +// resolves . and .. elements in a path array with directory names there +// must be no slashes, empty elements, or device names (c:\) in the array +// (so also no leading and trailing slashes - it does not distinguish +// relative and absolute paths) +function normalizeArray(parts, allowAboveRoot) { + // if the path tries to go above the root, `up` ends up > 0 + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === '.') { + parts.splice(i, 1); + } else if (last === '..') { + parts.splice(i, 1); + up++; + } else if (up) { + parts.splice(i, 1); + up--; + } + } + + // if the path is allowed to go above the root, restore leading ..s + if (allowAboveRoot) { + for (; up--; up) { + parts.unshift('..'); + } + } + + return parts; +} + +// Split a filename into [root, dir, basename, ext], unix version +// 'root' is just a slash, or nothing. +var splitPathRe = + /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; +var splitPath = function(filename) { + return splitPathRe.exec(filename).slice(1); +}; + +// path.resolve([from ...], to) +// posix version +exports.resolve = function() { + var resolvedPath = '', + resolvedAbsolute = false; + + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = (i >= 0) ? arguments[i] : process.cwd(); + + // Skip empty and invalid entries + if (typeof path !== 'string') { + throw new TypeError('Arguments to path.resolve must be strings'); + } else if (!path) { + continue; + } + + resolvedPath = path + '/' + resolvedPath; + resolvedAbsolute = path.charAt(0) === '/'; + } + + // At this point the path should be resolved to a full absolute path, but + // handle relative paths to be safe (might happen when process.cwd() fails) + + // Normalize the path + resolvedPath = normalizeArray(filter(resolvedPath.split('/'), function(p) { + return !!p; + }), !resolvedAbsolute).join('/'); + + return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.'; +}; + +// path.normalize(path) +// posix version +exports.normalize = function(path) { + var isAbsolute = exports.isAbsolute(path), + trailingSlash = substr(path, -1) === '/'; + + // Normalize the path + path = normalizeArray(filter(path.split('/'), function(p) { + return !!p; + }), !isAbsolute).join('/'); + + if (!path && !isAbsolute) { + path = '.'; + } + if (path && trailingSlash) { + path += '/'; + } + + return (isAbsolute ? '/' : '') + path; +}; + +// posix version +exports.isAbsolute = function(path) { + return path.charAt(0) === '/'; +}; + +// posix version +exports.join = function() { + var paths = Array.prototype.slice.call(arguments, 0); + return exports.normalize(filter(paths, function(p, index) { + if (typeof p !== 'string') { + throw new TypeError('Arguments to path.join must be strings'); + } + return p; + }).join('/')); +}; + + +// path.relative(from, to) +// posix version +exports.relative = function(from, to) { + from = exports.resolve(from).substr(1); + to = exports.resolve(to).substr(1); + + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== '') break; + } + + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== '') break; + } + + if (start > end) return []; + return arr.slice(start, end - start + 1); + } + + var fromParts = trim(from.split('/')); + var toParts = trim(to.split('/')); + + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break; + } + } + + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push('..'); + } + + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + + return outputParts.join('/'); +}; + +exports.sep = '/'; +exports.delimiter = ':'; + +exports.dirname = function(path) { + var result = splitPath(path), + root = result[0], + dir = result[1]; + + if (!root && !dir) { + // No dirname whatsoever + return '.'; + } + + if (dir) { + // It has a dirname, strip trailing slash + dir = dir.substr(0, dir.length - 1); + } + + return root + dir; +}; + + +exports.basename = function(path, ext) { + var f = splitPath(path)[2]; + // TODO: make this comparison case-insensitive on windows? + if (ext && f.substr(-1 * ext.length) === ext) { + f = f.substr(0, f.length - ext.length); + } + return f; +}; + + +exports.extname = function(path) { + return splitPath(path)[3]; +}; + +function filter (xs, f) { + if (xs.filter) return xs.filter(f); + var res = []; + for (var i = 0; i < xs.length; i++) { + if (f(xs[i], i, xs)) res.push(xs[i]); + } + return res; +} + +// String.prototype.substr - negative index don't work in IE8 +var substr = 'ab'.substr(-1) === 'b' + ? function (str, start, len) { return str.substr(start, len) } + : function (str, start, len) { + if (start < 0) start = str.length + start; + return str.substr(start, len); + } +; + +}).call(this,require('_process')) +},{"_process":24}],23:[function(require,module,exports){ +(function (process){ +'use strict'; + +function posix(path) { + return path.charAt(0) === '/'; +} + +function win32(path) { + // https://github.com/nodejs/node/blob/b3fcc245fb25539909ef1d5eaa01dbf92e168633/lib/path.js#L56 + var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; + var result = splitDeviceRe.exec(path); + var device = result[1] || ''; + var isUnc = Boolean(device && device.charAt(1) !== ':'); + + // UNC paths are always absolute + return Boolean(result[2] || isUnc); +} + +module.exports = process.platform === 'win32' ? win32 : posix; +module.exports.posix = posix; +module.exports.win32 = win32; + +}).call(this,require('_process')) +},{"_process":24}],24:[function(require,module,exports){ +// shim for using process in browser +var process = module.exports = {}; + +// cached from whatever global is present so that test runners that stub it +// don't break things. But we need to wrap it in a try catch in case it is +// wrapped in strict mode code which doesn't define any globals. It's inside a +// function because try/catches deoptimize in certain engines. + +var cachedSetTimeout; +var cachedClearTimeout; + +function defaultSetTimout() { + throw new Error('setTimeout has not been defined'); +} +function defaultClearTimeout () { + throw new Error('clearTimeout has not been defined'); +} +(function () { + try { + if (typeof setTimeout === 'function') { + cachedSetTimeout = setTimeout; + } else { + cachedSetTimeout = defaultSetTimout; + } + } catch (e) { + cachedSetTimeout = defaultSetTimout; + } + try { + if (typeof clearTimeout === 'function') { + cachedClearTimeout = clearTimeout; + } else { + cachedClearTimeout = defaultClearTimeout; + } + } catch (e) { + cachedClearTimeout = defaultClearTimeout; + } +} ()) +function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + //normal enviroments in sane situations + return setTimeout(fun, 0); + } + // if setTimeout wasn't available but was latter defined + if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { + cachedSetTimeout = setTimeout; + return setTimeout(fun, 0); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedSetTimeout(fun, 0); + } catch(e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedSetTimeout.call(null, fun, 0); + } catch(e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error + return cachedSetTimeout.call(this, fun, 0); + } + } + + +} +function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + //normal enviroments in sane situations + return clearTimeout(marker); + } + // if clearTimeout wasn't available but was latter defined + if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { + cachedClearTimeout = clearTimeout; + return clearTimeout(marker); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedClearTimeout(marker); + } catch (e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedClearTimeout.call(null, marker); + } catch (e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. + // Some versions of I.E. have different rules for clearTimeout vs setTimeout + return cachedClearTimeout.call(this, marker); + } + } + + + +} +var queue = []; +var draining = false; +var currentQueue; +var queueIndex = -1; + +function cleanUpNextTick() { + if (!draining || !currentQueue) { + return; + } + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); + } +} + +function drainQueue() { + if (draining) { + return; + } + var timeout = runTimeout(cleanUpNextTick); + draining = true; + + var len = queue.length; + while(len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); + } + } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + runClearTimeout(timeout); +} + +process.nextTick = function (fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } +}; + +// v8 likes predictible objects +function Item(fun, array) { + this.fun = fun; + this.array = array; +} +Item.prototype.run = function () { + this.fun.apply(null, this.array); +}; +process.title = 'browser'; +process.browser = true; +process.env = {}; +process.argv = []; +process.version = ''; // empty string to avoid regexp issues +process.versions = {}; + +function noop() {} + +process.on = noop; +process.addListener = noop; +process.once = noop; +process.off = noop; +process.removeListener = noop; +process.removeAllListeners = noop; +process.emit = noop; +process.prependListener = noop; +process.prependOnceListener = noop; + +process.listeners = function (name) { return [] } + +process.binding = function (name) { + throw new Error('process.binding is not supported'); +}; + +process.cwd = function () { return '/' }; +process.chdir = function (dir) { + throw new Error('process.chdir is not supported'); +}; +process.umask = function() { return 0; }; + +},{}],25:[function(require,module,exports){ +// Underscore.js 1.8.3 +// http://underscorejs.org +// (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +// Underscore may be freely distributed under the MIT license. + +(function() { + + // Baseline setup + // -------------- + + // Establish the root object, `window` in the browser, or `exports` on the server. + var root = this; + + // Save the previous value of the `_` variable. + var previousUnderscore = root._; + + // Save bytes in the minified (but not gzipped) version: + var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype; + + // Create quick reference variables for speed access to core prototypes. + var + push = ArrayProto.push, + slice = ArrayProto.slice, + toString = ObjProto.toString, + hasOwnProperty = ObjProto.hasOwnProperty; + + // All **ECMAScript 5** native function implementations that we hope to use + // are declared here. + var + nativeIsArray = Array.isArray, + nativeKeys = Object.keys, + nativeBind = FuncProto.bind, + nativeCreate = Object.create; + + // Naked function reference for surrogate-prototype-swapping. + var Ctor = function(){}; + + // Create a safe reference to the Underscore object for use below. + var _ = function(obj) { + if (obj instanceof _) return obj; + if (!(this instanceof _)) return new _(obj); + this._wrapped = obj; + }; + + // Export the Underscore object for **Node.js**, with + // backwards-compatibility for the old `require()` API. If we're in + // the browser, add `_` as a global object. + if (typeof exports !== 'undefined') { + if (typeof module !== 'undefined' && module.exports) { + exports = module.exports = _; + } + exports._ = _; + } else { + root._ = _; + } + + // Current version. + _.VERSION = '1.8.3'; + + // Internal function that returns an efficient (for current engines) version + // of the passed-in callback, to be repeatedly applied in other Underscore + // functions. + var optimizeCb = function(func, context, argCount) { + if (context === void 0) return func; + switch (argCount == null ? 3 : argCount) { + case 1: return function(value) { + return func.call(context, value); + }; + case 2: return function(value, other) { + return func.call(context, value, other); + }; + case 3: return function(value, index, collection) { + return func.call(context, value, index, collection); + }; + case 4: return function(accumulator, value, index, collection) { + return func.call(context, accumulator, value, index, collection); + }; + } + return function() { + return func.apply(context, arguments); + }; + }; + + // A mostly-internal function to generate callbacks that can be applied + // to each element in a collection, returning the desired result — either + // identity, an arbitrary callback, a property matcher, or a property accessor. + var cb = function(value, context, argCount) { + if (value == null) return _.identity; + if (_.isFunction(value)) return optimizeCb(value, context, argCount); + if (_.isObject(value)) return _.matcher(value); + return _.property(value); + }; + _.iteratee = function(value, context) { + return cb(value, context, Infinity); + }; + + // An internal function for creating assigner functions. + var createAssigner = function(keysFunc, undefinedOnly) { + return function(obj) { + var length = arguments.length; + if (length < 2 || obj == null) return obj; + for (var index = 1; index < length; index++) { + var source = arguments[index], + keys = keysFunc(source), + l = keys.length; + for (var i = 0; i < l; i++) { + var key = keys[i]; + if (!undefinedOnly || obj[key] === void 0) obj[key] = source[key]; + } + } + return obj; + }; + }; + + // An internal function for creating a new object that inherits from another. + var baseCreate = function(prototype) { + if (!_.isObject(prototype)) return {}; + if (nativeCreate) return nativeCreate(prototype); + Ctor.prototype = prototype; + var result = new Ctor; + Ctor.prototype = null; + return result; + }; + + var property = function(key) { + return function(obj) { + return obj == null ? void 0 : obj[key]; + }; + }; + + // Helper for collection methods to determine whether a collection + // should be iterated as an array or as an object + // Related: http://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength + // Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094 + var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1; + var getLength = property('length'); + var isArrayLike = function(collection) { + var length = getLength(collection); + return typeof length == 'number' && length >= 0 && length <= MAX_ARRAY_INDEX; + }; + + // Collection Functions + // -------------------- + + // The cornerstone, an `each` implementation, aka `forEach`. + // Handles raw objects in addition to array-likes. Treats all + // sparse array-likes as if they were dense. + _.each = _.forEach = function(obj, iteratee, context) { + iteratee = optimizeCb(iteratee, context); + var i, length; + if (isArrayLike(obj)) { + for (i = 0, length = obj.length; i < length; i++) { + iteratee(obj[i], i, obj); + } + } else { + var keys = _.keys(obj); + for (i = 0, length = keys.length; i < length; i++) { + iteratee(obj[keys[i]], keys[i], obj); + } + } + return obj; + }; + + // Return the results of applying the iteratee to each element. + _.map = _.collect = function(obj, iteratee, context) { + iteratee = cb(iteratee, context); + var keys = !isArrayLike(obj) && _.keys(obj), + length = (keys || obj).length, + results = Array(length); + for (var index = 0; index < length; index++) { + var currentKey = keys ? keys[index] : index; + results[index] = iteratee(obj[currentKey], currentKey, obj); + } + return results; + }; + + // Create a reducing function iterating left or right. + function createReduce(dir) { + // Optimized iterator function as using arguments.length + // in the main function will deoptimize the, see #1991. + function iterator(obj, iteratee, memo, keys, index, length) { + for (; index >= 0 && index < length; index += dir) { + var currentKey = keys ? keys[index] : index; + memo = iteratee(memo, obj[currentKey], currentKey, obj); + } + return memo; + } + + return function(obj, iteratee, memo, context) { + iteratee = optimizeCb(iteratee, context, 4); + var keys = !isArrayLike(obj) && _.keys(obj), + length = (keys || obj).length, + index = dir > 0 ? 0 : length - 1; + // Determine the initial value if none is provided. + if (arguments.length < 3) { + memo = obj[keys ? keys[index] : index]; + index += dir; + } + return iterator(obj, iteratee, memo, keys, index, length); + }; + } + + // **Reduce** builds up a single result from a list of values, aka `inject`, + // or `foldl`. + _.reduce = _.foldl = _.inject = createReduce(1); + + // The right-associative version of reduce, also known as `foldr`. + _.reduceRight = _.foldr = createReduce(-1); + + // Return the first value which passes a truth test. Aliased as `detect`. + _.find = _.detect = function(obj, predicate, context) { + var key; + if (isArrayLike(obj)) { + key = _.findIndex(obj, predicate, context); + } else { + key = _.findKey(obj, predicate, context); + } + if (key !== void 0 && key !== -1) return obj[key]; + }; + + // Return all the elements that pass a truth test. + // Aliased as `select`. + _.filter = _.select = function(obj, predicate, context) { + var results = []; + predicate = cb(predicate, context); + _.each(obj, function(value, index, list) { + if (predicate(value, index, list)) results.push(value); + }); + return results; + }; + + // Return all the elements for which a truth test fails. + _.reject = function(obj, predicate, context) { + return _.filter(obj, _.negate(cb(predicate)), context); + }; + + // Determine whether all of the elements match a truth test. + // Aliased as `all`. + _.every = _.all = function(obj, predicate, context) { + predicate = cb(predicate, context); + var keys = !isArrayLike(obj) && _.keys(obj), + length = (keys || obj).length; + for (var index = 0; index < length; index++) { + var currentKey = keys ? keys[index] : index; + if (!predicate(obj[currentKey], currentKey, obj)) return false; + } + return true; + }; + + // Determine if at least one element in the object matches a truth test. + // Aliased as `any`. + _.some = _.any = function(obj, predicate, context) { + predicate = cb(predicate, context); + var keys = !isArrayLike(obj) && _.keys(obj), + length = (keys || obj).length; + for (var index = 0; index < length; index++) { + var currentKey = keys ? keys[index] : index; + if (predicate(obj[currentKey], currentKey, obj)) return true; + } + return false; + }; + + // Determine if the array or object contains a given item (using `===`). + // Aliased as `includes` and `include`. + _.contains = _.includes = _.include = function(obj, item, fromIndex, guard) { + if (!isArrayLike(obj)) obj = _.values(obj); + if (typeof fromIndex != 'number' || guard) fromIndex = 0; + return _.indexOf(obj, item, fromIndex) >= 0; + }; + + // Invoke a method (with arguments) on every item in a collection. + _.invoke = function(obj, method) { + var args = slice.call(arguments, 2); + var isFunc = _.isFunction(method); + return _.map(obj, function(value) { + var func = isFunc ? method : value[method]; + return func == null ? func : func.apply(value, args); + }); + }; + + // Convenience version of a common use case of `map`: fetching a property. + _.pluck = function(obj, key) { + return _.map(obj, _.property(key)); + }; + + // Convenience version of a common use case of `filter`: selecting only objects + // containing specific `key:value` pairs. + _.where = function(obj, attrs) { + return _.filter(obj, _.matcher(attrs)); + }; + + // Convenience version of a common use case of `find`: getting the first object + // containing specific `key:value` pairs. + _.findWhere = function(obj, attrs) { + return _.find(obj, _.matcher(attrs)); + }; + + // Return the maximum element (or element-based computation). + _.max = function(obj, iteratee, context) { + var result = -Infinity, lastComputed = -Infinity, + value, computed; + if (iteratee == null && obj != null) { + obj = isArrayLike(obj) ? obj : _.values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value > result) { + result = value; + } + } + } else { + iteratee = cb(iteratee, context); + _.each(obj, function(value, index, list) { + computed = iteratee(value, index, list); + if (computed > lastComputed || computed === -Infinity && result === -Infinity) { + result = value; + lastComputed = computed; + } + }); + } + return result; + }; + + // Return the minimum element (or element-based computation). + _.min = function(obj, iteratee, context) { + var result = Infinity, lastComputed = Infinity, + value, computed; + if (iteratee == null && obj != null) { + obj = isArrayLike(obj) ? obj : _.values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value < result) { + result = value; + } + } + } else { + iteratee = cb(iteratee, context); + _.each(obj, function(value, index, list) { + computed = iteratee(value, index, list); + if (computed < lastComputed || computed === Infinity && result === Infinity) { + result = value; + lastComputed = computed; + } + }); + } + return result; + }; + + // Shuffle a collection, using the modern version of the + // [Fisher-Yates shuffle](http://en.wikipedia.org/wiki/Fisher–Yates_shuffle). + _.shuffle = function(obj) { + var set = isArrayLike(obj) ? obj : _.values(obj); + var length = set.length; + var shuffled = Array(length); + for (var index = 0, rand; index < length; index++) { + rand = _.random(0, index); + if (rand !== index) shuffled[index] = shuffled[rand]; + shuffled[rand] = set[index]; + } + return shuffled; + }; + + // Sample **n** random values from a collection. + // If **n** is not specified, returns a single random element. + // The internal `guard` argument allows it to work with `map`. + _.sample = function(obj, n, guard) { + if (n == null || guard) { + if (!isArrayLike(obj)) obj = _.values(obj); + return obj[_.random(obj.length - 1)]; + } + return _.shuffle(obj).slice(0, Math.max(0, n)); + }; + + // Sort the object's values by a criterion produced by an iteratee. + _.sortBy = function(obj, iteratee, context) { + iteratee = cb(iteratee, context); + return _.pluck(_.map(obj, function(value, index, list) { + return { + value: value, + index: index, + criteria: iteratee(value, index, list) + }; + }).sort(function(left, right) { + var a = left.criteria; + var b = right.criteria; + if (a !== b) { + if (a > b || a === void 0) return 1; + if (a < b || b === void 0) return -1; + } + return left.index - right.index; + }), 'value'); + }; + + // An internal function used for aggregate "group by" operations. + var group = function(behavior) { + return function(obj, iteratee, context) { + var result = {}; + iteratee = cb(iteratee, context); + _.each(obj, function(value, index) { + var key = iteratee(value, index, obj); + behavior(result, value, key); + }); + return result; + }; + }; + + // Groups the object's values by a criterion. Pass either a string attribute + // to group by, or a function that returns the criterion. + _.groupBy = group(function(result, value, key) { + if (_.has(result, key)) result[key].push(value); else result[key] = [value]; + }); + + // Indexes the object's values by a criterion, similar to `groupBy`, but for + // when you know that your index values will be unique. + _.indexBy = group(function(result, value, key) { + result[key] = value; + }); + + // Counts instances of an object that group by a certain criterion. Pass + // either a string attribute to count by, or a function that returns the + // criterion. + _.countBy = group(function(result, value, key) { + if (_.has(result, key)) result[key]++; else result[key] = 1; + }); + + // Safely create a real, live array from anything iterable. + _.toArray = function(obj) { + if (!obj) return []; + if (_.isArray(obj)) return slice.call(obj); + if (isArrayLike(obj)) return _.map(obj, _.identity); + return _.values(obj); + }; + + // Return the number of elements in an object. + _.size = function(obj) { + if (obj == null) return 0; + return isArrayLike(obj) ? obj.length : _.keys(obj).length; + }; + + // Split a collection into two arrays: one whose elements all satisfy the given + // predicate, and one whose elements all do not satisfy the predicate. + _.partition = function(obj, predicate, context) { + predicate = cb(predicate, context); + var pass = [], fail = []; + _.each(obj, function(value, key, obj) { + (predicate(value, key, obj) ? pass : fail).push(value); + }); + return [pass, fail]; + }; + + // Array Functions + // --------------- + + // Get the first element of an array. Passing **n** will return the first N + // values in the array. Aliased as `head` and `take`. The **guard** check + // allows it to work with `_.map`. + _.first = _.head = _.take = function(array, n, guard) { + if (array == null) return void 0; + if (n == null || guard) return array[0]; + return _.initial(array, array.length - n); + }; + + // Returns everything but the last entry of the array. Especially useful on + // the arguments object. Passing **n** will return all the values in + // the array, excluding the last N. + _.initial = function(array, n, guard) { + return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n))); + }; + + // Get the last element of an array. Passing **n** will return the last N + // values in the array. + _.last = function(array, n, guard) { + if (array == null) return void 0; + if (n == null || guard) return array[array.length - 1]; + return _.rest(array, Math.max(0, array.length - n)); + }; + + // Returns everything but the first entry of the array. Aliased as `tail` and `drop`. + // Especially useful on the arguments object. Passing an **n** will return + // the rest N values in the array. + _.rest = _.tail = _.drop = function(array, n, guard) { + return slice.call(array, n == null || guard ? 1 : n); + }; + + // Trim out all falsy values from an array. + _.compact = function(array) { + return _.filter(array, _.identity); + }; + + // Internal implementation of a recursive `flatten` function. + var flatten = function(input, shallow, strict, startIndex) { + var output = [], idx = 0; + for (var i = startIndex || 0, length = getLength(input); i < length; i++) { + var value = input[i]; + if (isArrayLike(value) && (_.isArray(value) || _.isArguments(value))) { + //flatten current level of array or arguments object + if (!shallow) value = flatten(value, shallow, strict); + var j = 0, len = value.length; + output.length += len; + while (j < len) { + output[idx++] = value[j++]; + } + } else if (!strict) { + output[idx++] = value; + } + } + return output; + }; + + // Flatten out an array, either recursively (by default), or just one level. + _.flatten = function(array, shallow) { + return flatten(array, shallow, false); + }; + + // Return a version of the array that does not contain the specified value(s). + _.without = function(array) { + return _.difference(array, slice.call(arguments, 1)); + }; + + // Produce a duplicate-free version of the array. If the array has already + // been sorted, you have the option of using a faster algorithm. + // Aliased as `unique`. + _.uniq = _.unique = function(array, isSorted, iteratee, context) { + if (!_.isBoolean(isSorted)) { + context = iteratee; + iteratee = isSorted; + isSorted = false; + } + if (iteratee != null) iteratee = cb(iteratee, context); + var result = []; + var seen = []; + for (var i = 0, length = getLength(array); i < length; i++) { + var value = array[i], + computed = iteratee ? iteratee(value, i, array) : value; + if (isSorted) { + if (!i || seen !== computed) result.push(value); + seen = computed; + } else if (iteratee) { + if (!_.contains(seen, computed)) { + seen.push(computed); + result.push(value); + } + } else if (!_.contains(result, value)) { + result.push(value); + } + } + return result; + }; + + // Produce an array that contains the union: each distinct element from all of + // the passed-in arrays. + _.union = function() { + return _.uniq(flatten(arguments, true, true)); + }; + + // Produce an array that contains every item shared between all the + // passed-in arrays. + _.intersection = function(array) { + var result = []; + var argsLength = arguments.length; + for (var i = 0, length = getLength(array); i < length; i++) { + var item = array[i]; + if (_.contains(result, item)) continue; + for (var j = 1; j < argsLength; j++) { + if (!_.contains(arguments[j], item)) break; + } + if (j === argsLength) result.push(item); + } + return result; + }; + + // Take the difference between one array and a number of other arrays. + // Only the elements present in just the first array will remain. + _.difference = function(array) { + var rest = flatten(arguments, true, true, 1); + return _.filter(array, function(value){ + return !_.contains(rest, value); + }); + }; + + // Zip together multiple lists into a single array -- elements that share + // an index go together. + _.zip = function() { + return _.unzip(arguments); + }; + + // Complement of _.zip. Unzip accepts an array of arrays and groups + // each array's elements on shared indices + _.unzip = function(array) { + var length = array && _.max(array, getLength).length || 0; + var result = Array(length); + + for (var index = 0; index < length; index++) { + result[index] = _.pluck(array, index); + } + return result; + }; + + // Converts lists into objects. Pass either a single array of `[key, value]` + // pairs, or two parallel arrays of the same length -- one of keys, and one of + // the corresponding values. + _.object = function(list, values) { + var result = {}; + for (var i = 0, length = getLength(list); i < length; i++) { + if (values) { + result[list[i]] = values[i]; + } else { + result[list[i][0]] = list[i][1]; + } + } + return result; + }; + + // Generator function to create the findIndex and findLastIndex functions + function createPredicateIndexFinder(dir) { + return function(array, predicate, context) { + predicate = cb(predicate, context); + var length = getLength(array); + var index = dir > 0 ? 0 : length - 1; + for (; index >= 0 && index < length; index += dir) { + if (predicate(array[index], index, array)) return index; + } + return -1; + }; + } + + // Returns the first index on an array-like that passes a predicate test + _.findIndex = createPredicateIndexFinder(1); + _.findLastIndex = createPredicateIndexFinder(-1); + + // Use a comparator function to figure out the smallest index at which + // an object should be inserted so as to maintain order. Uses binary search. + _.sortedIndex = function(array, obj, iteratee, context) { + iteratee = cb(iteratee, context, 1); + var value = iteratee(obj); + var low = 0, high = getLength(array); + while (low < high) { + var mid = Math.floor((low + high) / 2); + if (iteratee(array[mid]) < value) low = mid + 1; else high = mid; + } + return low; + }; + + // Generator function to create the indexOf and lastIndexOf functions + function createIndexFinder(dir, predicateFind, sortedIndex) { + return function(array, item, idx) { + var i = 0, length = getLength(array); + if (typeof idx == 'number') { + if (dir > 0) { + i = idx >= 0 ? idx : Math.max(idx + length, i); + } else { + length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1; + } + } else if (sortedIndex && idx && length) { + idx = sortedIndex(array, item); + return array[idx] === item ? idx : -1; + } + if (item !== item) { + idx = predicateFind(slice.call(array, i, length), _.isNaN); + return idx >= 0 ? idx + i : -1; + } + for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) { + if (array[idx] === item) return idx; + } + return -1; + }; + } + + // Return the position of the first occurrence of an item in an array, + // or -1 if the item is not included in the array. + // If the array is large and already in sort order, pass `true` + // for **isSorted** to use binary search. + _.indexOf = createIndexFinder(1, _.findIndex, _.sortedIndex); + _.lastIndexOf = createIndexFinder(-1, _.findLastIndex); + + // Generate an integer Array containing an arithmetic progression. A port of + // the native Python `range()` function. See + // [the Python documentation](http://docs.python.org/library/functions.html#range). + _.range = function(start, stop, step) { + if (stop == null) { + stop = start || 0; + start = 0; + } + step = step || 1; + + var length = Math.max(Math.ceil((stop - start) / step), 0); + var range = Array(length); + + for (var idx = 0; idx < length; idx++, start += step) { + range[idx] = start; + } + + return range; + }; + + // Function (ahem) Functions + // ------------------ + + // Determines whether to execute a function as a constructor + // or a normal function with the provided arguments + var executeBound = function(sourceFunc, boundFunc, context, callingContext, args) { + if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args); + var self = baseCreate(sourceFunc.prototype); + var result = sourceFunc.apply(self, args); + if (_.isObject(result)) return result; + return self; + }; + + // Create a function bound to a given object (assigning `this`, and arguments, + // optionally). Delegates to **ECMAScript 5**'s native `Function.bind` if + // available. + _.bind = function(func, context) { + if (nativeBind && func.bind === nativeBind) return nativeBind.apply(func, slice.call(arguments, 1)); + if (!_.isFunction(func)) throw new TypeError('Bind must be called on a function'); + var args = slice.call(arguments, 2); + var bound = function() { + return executeBound(func, bound, context, this, args.concat(slice.call(arguments))); + }; + return bound; + }; + + // Partially apply a function by creating a version that has had some of its + // arguments pre-filled, without changing its dynamic `this` context. _ acts + // as a placeholder, allowing any combination of arguments to be pre-filled. + _.partial = function(func) { + var boundArgs = slice.call(arguments, 1); + var bound = function() { + var position = 0, length = boundArgs.length; + var args = Array(length); + for (var i = 0; i < length; i++) { + args[i] = boundArgs[i] === _ ? arguments[position++] : boundArgs[i]; + } + while (position < arguments.length) args.push(arguments[position++]); + return executeBound(func, bound, this, this, args); + }; + return bound; + }; + + // Bind a number of an object's methods to that object. Remaining arguments + // are the method names to be bound. Useful for ensuring that all callbacks + // defined on an object belong to it. + _.bindAll = function(obj) { + var i, length = arguments.length, key; + if (length <= 1) throw new Error('bindAll must be passed function names'); + for (i = 1; i < length; i++) { + key = arguments[i]; + obj[key] = _.bind(obj[key], obj); + } + return obj; + }; + + // Memoize an expensive function by storing its results. + _.memoize = function(func, hasher) { + var memoize = function(key) { + var cache = memoize.cache; + var address = '' + (hasher ? hasher.apply(this, arguments) : key); + if (!_.has(cache, address)) cache[address] = func.apply(this, arguments); + return cache[address]; + }; + memoize.cache = {}; + return memoize; + }; + + // Delays a function for the given number of milliseconds, and then calls + // it with the arguments supplied. + _.delay = function(func, wait) { + var args = slice.call(arguments, 2); + return setTimeout(function(){ + return func.apply(null, args); + }, wait); + }; + + // Defers a function, scheduling it to run after the current call stack has + // cleared. + _.defer = _.partial(_.delay, _, 1); + + // Returns a function, that, when invoked, will only be triggered at most once + // during a given window of time. Normally, the throttled function will run + // as much as it can, without ever going more than once per `wait` duration; + // but if you'd like to disable the execution on the leading edge, pass + // `{leading: false}`. To disable execution on the trailing edge, ditto. + _.throttle = function(func, wait, options) { + var context, args, result; + var timeout = null; + var previous = 0; + if (!options) options = {}; + var later = function() { + previous = options.leading === false ? 0 : _.now(); + timeout = null; + result = func.apply(context, args); + if (!timeout) context = args = null; + }; + return function() { + var now = _.now(); + if (!previous && options.leading === false) previous = now; + var remaining = wait - (now - previous); + context = this; + args = arguments; + if (remaining <= 0 || remaining > wait) { + if (timeout) { + clearTimeout(timeout); + timeout = null; + } + previous = now; + result = func.apply(context, args); + if (!timeout) context = args = null; + } else if (!timeout && options.trailing !== false) { + timeout = setTimeout(later, remaining); + } + return result; + }; + }; + + // Returns a function, that, as long as it continues to be invoked, will not + // be triggered. The function will be called after it stops being called for + // N milliseconds. If `immediate` is passed, trigger the function on the + // leading edge, instead of the trailing. + _.debounce = function(func, wait, immediate) { + var timeout, args, context, timestamp, result; + + var later = function() { + var last = _.now() - timestamp; + + if (last < wait && last >= 0) { + timeout = setTimeout(later, wait - last); + } else { + timeout = null; + if (!immediate) { + result = func.apply(context, args); + if (!timeout) context = args = null; + } + } + }; + + return function() { + context = this; + args = arguments; + timestamp = _.now(); + var callNow = immediate && !timeout; + if (!timeout) timeout = setTimeout(later, wait); + if (callNow) { + result = func.apply(context, args); + context = args = null; + } + + return result; + }; + }; + + // Returns the first function passed as an argument to the second, + // allowing you to adjust arguments, run code before and after, and + // conditionally execute the original function. + _.wrap = function(func, wrapper) { + return _.partial(wrapper, func); + }; + + // Returns a negated version of the passed-in predicate. + _.negate = function(predicate) { + return function() { + return !predicate.apply(this, arguments); + }; + }; + + // Returns a function that is the composition of a list of functions, each + // consuming the return value of the function that follows. + _.compose = function() { + var args = arguments; + var start = args.length - 1; + return function() { + var i = start; + var result = args[start].apply(this, arguments); + while (i--) result = args[i].call(this, result); + return result; + }; + }; + + // Returns a function that will only be executed on and after the Nth call. + _.after = function(times, func) { + return function() { + if (--times < 1) { + return func.apply(this, arguments); + } + }; + }; + + // Returns a function that will only be executed up to (but not including) the Nth call. + _.before = function(times, func) { + var memo; + return function() { + if (--times > 0) { + memo = func.apply(this, arguments); + } + if (times <= 1) func = null; + return memo; + }; + }; + + // Returns a function that will be executed at most one time, no matter how + // often you call it. Useful for lazy initialization. + _.once = _.partial(_.before, 2); + + // Object Functions + // ---------------- + + // Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed. + var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString'); + var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString', + 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString']; + + function collectNonEnumProps(obj, keys) { + var nonEnumIdx = nonEnumerableProps.length; + var constructor = obj.constructor; + var proto = (_.isFunction(constructor) && constructor.prototype) || ObjProto; + + // Constructor is a special case. + var prop = 'constructor'; + if (_.has(obj, prop) && !_.contains(keys, prop)) keys.push(prop); + + while (nonEnumIdx--) { + prop = nonEnumerableProps[nonEnumIdx]; + if (prop in obj && obj[prop] !== proto[prop] && !_.contains(keys, prop)) { + keys.push(prop); + } + } + } + + // Retrieve the names of an object's own properties. + // Delegates to **ECMAScript 5**'s native `Object.keys` + _.keys = function(obj) { + if (!_.isObject(obj)) return []; + if (nativeKeys) return nativeKeys(obj); + var keys = []; + for (var key in obj) if (_.has(obj, key)) keys.push(key); + // Ahem, IE < 9. + if (hasEnumBug) collectNonEnumProps(obj, keys); + return keys; + }; + + // Retrieve all the property names of an object. + _.allKeys = function(obj) { + if (!_.isObject(obj)) return []; + var keys = []; + for (var key in obj) keys.push(key); + // Ahem, IE < 9. + if (hasEnumBug) collectNonEnumProps(obj, keys); + return keys; + }; + + // Retrieve the values of an object's properties. + _.values = function(obj) { + var keys = _.keys(obj); + var length = keys.length; + var values = Array(length); + for (var i = 0; i < length; i++) { + values[i] = obj[keys[i]]; + } + return values; + }; + + // Returns the results of applying the iteratee to each element of the object + // In contrast to _.map it returns an object + _.mapObject = function(obj, iteratee, context) { + iteratee = cb(iteratee, context); + var keys = _.keys(obj), + length = keys.length, + results = {}, + currentKey; + for (var index = 0; index < length; index++) { + currentKey = keys[index]; + results[currentKey] = iteratee(obj[currentKey], currentKey, obj); + } + return results; + }; + + // Convert an object into a list of `[key, value]` pairs. + _.pairs = function(obj) { + var keys = _.keys(obj); + var length = keys.length; + var pairs = Array(length); + for (var i = 0; i < length; i++) { + pairs[i] = [keys[i], obj[keys[i]]]; + } + return pairs; + }; + + // Invert the keys and values of an object. The values must be serializable. + _.invert = function(obj) { + var result = {}; + var keys = _.keys(obj); + for (var i = 0, length = keys.length; i < length; i++) { + result[obj[keys[i]]] = keys[i]; + } + return result; + }; + + // Return a sorted list of the function names available on the object. + // Aliased as `methods` + _.functions = _.methods = function(obj) { + var names = []; + for (var key in obj) { + if (_.isFunction(obj[key])) names.push(key); + } + return names.sort(); + }; + + // Extend a given object with all the properties in passed-in object(s). + _.extend = createAssigner(_.allKeys); + + // Assigns a given object with all the own properties in the passed-in object(s) + // (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign) + _.extendOwn = _.assign = createAssigner(_.keys); + + // Returns the first key on an object that passes a predicate test + _.findKey = function(obj, predicate, context) { + predicate = cb(predicate, context); + var keys = _.keys(obj), key; + for (var i = 0, length = keys.length; i < length; i++) { + key = keys[i]; + if (predicate(obj[key], key, obj)) return key; + } + }; + + // Return a copy of the object only containing the whitelisted properties. + _.pick = function(object, oiteratee, context) { + var result = {}, obj = object, iteratee, keys; + if (obj == null) return result; + if (_.isFunction(oiteratee)) { + keys = _.allKeys(obj); + iteratee = optimizeCb(oiteratee, context); + } else { + keys = flatten(arguments, false, false, 1); + iteratee = function(value, key, obj) { return key in obj; }; + obj = Object(obj); + } + for (var i = 0, length = keys.length; i < length; i++) { + var key = keys[i]; + var value = obj[key]; + if (iteratee(value, key, obj)) result[key] = value; + } + return result; + }; + + // Return a copy of the object without the blacklisted properties. + _.omit = function(obj, iteratee, context) { + if (_.isFunction(iteratee)) { + iteratee = _.negate(iteratee); + } else { + var keys = _.map(flatten(arguments, false, false, 1), String); + iteratee = function(value, key) { + return !_.contains(keys, key); + }; + } + return _.pick(obj, iteratee, context); + }; + + // Fill in a given object with default properties. + _.defaults = createAssigner(_.allKeys, true); + + // Creates an object that inherits from the given prototype object. + // If additional properties are provided then they will be added to the + // created object. + _.create = function(prototype, props) { + var result = baseCreate(prototype); + if (props) _.extendOwn(result, props); + return result; + }; + + // Create a (shallow-cloned) duplicate of an object. + _.clone = function(obj) { + if (!_.isObject(obj)) return obj; + return _.isArray(obj) ? obj.slice() : _.extend({}, obj); + }; + + // Invokes interceptor with the obj, and then returns obj. + // The primary purpose of this method is to "tap into" a method chain, in + // order to perform operations on intermediate results within the chain. + _.tap = function(obj, interceptor) { + interceptor(obj); + return obj; + }; + + // Returns whether an object has a given set of `key:value` pairs. + _.isMatch = function(object, attrs) { + var keys = _.keys(attrs), length = keys.length; + if (object == null) return !length; + var obj = Object(object); + for (var i = 0; i < length; i++) { + var key = keys[i]; + if (attrs[key] !== obj[key] || !(key in obj)) return false; + } + return true; + }; + + + // Internal recursive comparison function for `isEqual`. + var eq = function(a, b, aStack, bStack) { + // Identical objects are equal. `0 === -0`, but they aren't identical. + // See the [Harmony `egal` proposal](http://wiki.ecmascript.org/doku.php?id=harmony:egal). + if (a === b) return a !== 0 || 1 / a === 1 / b; + // A strict comparison is necessary because `null == undefined`. + if (a == null || b == null) return a === b; + // Unwrap any wrapped objects. + if (a instanceof _) a = a._wrapped; + if (b instanceof _) b = b._wrapped; + // Compare `[[Class]]` names. + var className = toString.call(a); + if (className !== toString.call(b)) return false; + switch (className) { + // Strings, numbers, regular expressions, dates, and booleans are compared by value. + case '[object RegExp]': + // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i') + case '[object String]': + // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is + // equivalent to `new String("5")`. + return '' + a === '' + b; + case '[object Number]': + // `NaN`s are equivalent, but non-reflexive. + // Object(NaN) is equivalent to NaN + if (+a !== +a) return +b !== +b; + // An `egal` comparison is performed for other numeric values. + return +a === 0 ? 1 / +a === 1 / b : +a === +b; + case '[object Date]': + case '[object Boolean]': + // Coerce dates and booleans to numeric primitive values. Dates are compared by their + // millisecond representations. Note that invalid dates with millisecond representations + // of `NaN` are not equivalent. + return +a === +b; + } + + var areArrays = className === '[object Array]'; + if (!areArrays) { + if (typeof a != 'object' || typeof b != 'object') return false; + + // Objects with different constructors are not equivalent, but `Object`s or `Array`s + // from different frames are. + var aCtor = a.constructor, bCtor = b.constructor; + if (aCtor !== bCtor && !(_.isFunction(aCtor) && aCtor instanceof aCtor && + _.isFunction(bCtor) && bCtor instanceof bCtor) + && ('constructor' in a && 'constructor' in b)) { + return false; + } + } + // Assume equality for cyclic structures. The algorithm for detecting cyclic + // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`. + + // Initializing stack of traversed objects. + // It's done here since we only need them for objects and arrays comparison. + aStack = aStack || []; + bStack = bStack || []; + var length = aStack.length; + while (length--) { + // Linear search. Performance is inversely proportional to the number of + // unique nested structures. + if (aStack[length] === a) return bStack[length] === b; + } + + // Add the first object to the stack of traversed objects. + aStack.push(a); + bStack.push(b); + + // Recursively compare objects and arrays. + if (areArrays) { + // Compare array lengths to determine if a deep comparison is necessary. + length = a.length; + if (length !== b.length) return false; + // Deep compare the contents, ignoring non-numeric properties. + while (length--) { + if (!eq(a[length], b[length], aStack, bStack)) return false; + } + } else { + // Deep compare objects. + var keys = _.keys(a), key; + length = keys.length; + // Ensure that both objects contain the same number of properties before comparing deep equality. + if (_.keys(b).length !== length) return false; + while (length--) { + // Deep compare each member + key = keys[length]; + if (!(_.has(b, key) && eq(a[key], b[key], aStack, bStack))) return false; + } + } + // Remove the first object from the stack of traversed objects. + aStack.pop(); + bStack.pop(); + return true; + }; + + // Perform a deep comparison to check if two objects are equal. + _.isEqual = function(a, b) { + return eq(a, b); + }; + + // Is a given array, string, or object empty? + // An "empty" object has no enumerable own-properties. + _.isEmpty = function(obj) { + if (obj == null) return true; + if (isArrayLike(obj) && (_.isArray(obj) || _.isString(obj) || _.isArguments(obj))) return obj.length === 0; + return _.keys(obj).length === 0; + }; + + // Is a given value a DOM element? + _.isElement = function(obj) { + return !!(obj && obj.nodeType === 1); + }; + + // Is a given value an array? + // Delegates to ECMA5's native Array.isArray + _.isArray = nativeIsArray || function(obj) { + return toString.call(obj) === '[object Array]'; + }; + + // Is a given variable an object? + _.isObject = function(obj) { + var type = typeof obj; + return type === 'function' || type === 'object' && !!obj; + }; + + // Add some isType methods: isArguments, isFunction, isString, isNumber, isDate, isRegExp, isError. + _.each(['Arguments', 'Function', 'String', 'Number', 'Date', 'RegExp', 'Error'], function(name) { + _['is' + name] = function(obj) { + return toString.call(obj) === '[object ' + name + ']'; + }; + }); + + // Define a fallback version of the method in browsers (ahem, IE < 9), where + // there isn't any inspectable "Arguments" type. + if (!_.isArguments(arguments)) { + _.isArguments = function(obj) { + return _.has(obj, 'callee'); + }; + } + + // Optimize `isFunction` if appropriate. Work around some typeof bugs in old v8, + // IE 11 (#1621), and in Safari 8 (#1929). + if (typeof /./ != 'function' && typeof Int8Array != 'object') { + _.isFunction = function(obj) { + return typeof obj == 'function' || false; + }; + } + + // Is a given object a finite number? + _.isFinite = function(obj) { + return isFinite(obj) && !isNaN(parseFloat(obj)); + }; + + // Is the given value `NaN`? (NaN is the only number which does not equal itself). + _.isNaN = function(obj) { + return _.isNumber(obj) && obj !== +obj; + }; + + // Is a given value a boolean? + _.isBoolean = function(obj) { + return obj === true || obj === false || toString.call(obj) === '[object Boolean]'; + }; + + // Is a given value equal to null? + _.isNull = function(obj) { + return obj === null; + }; + + // Is a given variable undefined? + _.isUndefined = function(obj) { + return obj === void 0; + }; + + // Shortcut function for checking if an object has a given property directly + // on itself (in other words, not on a prototype). + _.has = function(obj, key) { + return obj != null && hasOwnProperty.call(obj, key); + }; + + // Utility Functions + // ----------------- + + // Run Underscore.js in *noConflict* mode, returning the `_` variable to its + // previous owner. Returns a reference to the Underscore object. + _.noConflict = function() { + root._ = previousUnderscore; + return this; + }; + + // Keep the identity function around for default iteratees. + _.identity = function(value) { + return value; + }; + + // Predicate-generating functions. Often useful outside of Underscore. + _.constant = function(value) { + return function() { + return value; + }; + }; + + _.noop = function(){}; + + _.property = property; + + // Generates a function for a given object that returns a given property. + _.propertyOf = function(obj) { + return obj == null ? function(){} : function(key) { + return obj[key]; + }; + }; + + // Returns a predicate for checking whether an object has a given set of + // `key:value` pairs. + _.matcher = _.matches = function(attrs) { + attrs = _.extendOwn({}, attrs); + return function(obj) { + return _.isMatch(obj, attrs); + }; + }; + + // Run a function **n** times. + _.times = function(n, iteratee, context) { + var accum = Array(Math.max(0, n)); + iteratee = optimizeCb(iteratee, context, 1); + for (var i = 0; i < n; i++) accum[i] = iteratee(i); + return accum; + }; + + // Return a random integer between min and max (inclusive). + _.random = function(min, max) { + if (max == null) { + max = min; + min = 0; + } + return min + Math.floor(Math.random() * (max - min + 1)); + }; + + // A (possibly faster) way to get the current timestamp as an integer. + _.now = Date.now || function() { + return new Date().getTime(); + }; + + // List of HTML entities for escaping. + var escapeMap = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''', + '`': '`' + }; + var unescapeMap = _.invert(escapeMap); + + // Functions for escaping and unescaping strings to/from HTML interpolation. + var createEscaper = function(map) { + var escaper = function(match) { + return map[match]; + }; + // Regexes for identifying a key that needs to be escaped + var source = '(?:' + _.keys(map).join('|') + ')'; + var testRegexp = RegExp(source); + var replaceRegexp = RegExp(source, 'g'); + return function(string) { + string = string == null ? '' : '' + string; + return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string; + }; + }; + _.escape = createEscaper(escapeMap); + _.unescape = createEscaper(unescapeMap); + + // If the value of the named `property` is a function then invoke it with the + // `object` as context; otherwise, return it. + _.result = function(object, property, fallback) { + var value = object == null ? void 0 : object[property]; + if (value === void 0) { + value = fallback; + } + return _.isFunction(value) ? value.call(object) : value; + }; + + // Generate a unique integer id (unique within the entire client session). + // Useful for temporary DOM ids. + var idCounter = 0; + _.uniqueId = function(prefix) { + var id = ++idCounter + ''; + return prefix ? prefix + id : id; + }; + + // By default, Underscore uses ERB-style template delimiters, change the + // following template settings to use alternative delimiters. + _.templateSettings = { + evaluate : /<%([\s\S]+?)%>/g, + interpolate : /<%=([\s\S]+?)%>/g, + escape : /<%-([\s\S]+?)%>/g + }; + + // When customizing `templateSettings`, if you don't want to define an + // interpolation, evaluation or escaping regex, we need one that is + // guaranteed not to match. + var noMatch = /(.)^/; + + // Certain characters need to be escaped so that they can be put into a + // string literal. + var escapes = { + "'": "'", + '\\': '\\', + '\r': 'r', + '\n': 'n', + '\u2028': 'u2028', + '\u2029': 'u2029' + }; + + var escaper = /\\|'|\r|\n|\u2028|\u2029/g; + + var escapeChar = function(match) { + return '\\' + escapes[match]; + }; + + // JavaScript micro-templating, similar to John Resig's implementation. + // Underscore templating handles arbitrary delimiters, preserves whitespace, + // and correctly escapes quotes within interpolated code. + // NB: `oldSettings` only exists for backwards compatibility. + _.template = function(text, settings, oldSettings) { + if (!settings && oldSettings) settings = oldSettings; + settings = _.defaults({}, settings, _.templateSettings); + + // Combine delimiters into one regular expression via alternation. + var matcher = RegExp([ + (settings.escape || noMatch).source, + (settings.interpolate || noMatch).source, + (settings.evaluate || noMatch).source + ].join('|') + '|$', 'g'); + + // Compile the template source, escaping string literals appropriately. + var index = 0; + var source = "__p+='"; + text.replace(matcher, function(match, escape, interpolate, evaluate, offset) { + source += text.slice(index, offset).replace(escaper, escapeChar); + index = offset + match.length; + + if (escape) { + source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'"; + } else if (interpolate) { + source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'"; + } else if (evaluate) { + source += "';\n" + evaluate + "\n__p+='"; + } + + // Adobe VMs need the match returned to produce the correct offest. + return match; + }); + source += "';\n"; + + // If a variable is not specified, place data values in local scope. + if (!settings.variable) source = 'with(obj||{}){\n' + source + '}\n'; + + source = "var __t,__p='',__j=Array.prototype.join," + + "print=function(){__p+=__j.call(arguments,'');};\n" + + source + 'return __p;\n'; + + try { + var render = new Function(settings.variable || 'obj', '_', source); + } catch (e) { + e.source = source; + throw e; + } + + var template = function(data) { + return render.call(this, data, _); + }; + + // Provide the compiled source as a convenience for precompilation. + var argument = settings.variable || 'obj'; + template.source = 'function(' + argument + '){\n' + source + '}'; + + return template; + }; + + // Add a "chain" function. Start chaining a wrapped Underscore object. + _.chain = function(obj) { + var instance = _(obj); + instance._chain = true; + return instance; + }; + + // OOP + // --------------- + // If Underscore is called as a function, it returns a wrapped object that + // can be used OO-style. This wrapper holds altered versions of all the + // underscore functions. Wrapped objects may be chained. + + // Helper function to continue chaining intermediate results. + var result = function(instance, obj) { + return instance._chain ? _(obj).chain() : obj; + }; + + // Add your own custom functions to the Underscore object. + _.mixin = function(obj) { + _.each(_.functions(obj), function(name) { + var func = _[name] = obj[name]; + _.prototype[name] = function() { + var args = [this._wrapped]; + push.apply(args, arguments); + return result(this, func.apply(_, args)); + }; + }); + }; + + // Add all of the Underscore functions to the wrapper object. + _.mixin(_); + + // Add all mutator Array functions to the wrapper. + _.each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) { + var method = ArrayProto[name]; + _.prototype[name] = function() { + var obj = this._wrapped; + method.apply(obj, arguments); + if ((name === 'shift' || name === 'splice') && obj.length === 0) delete obj[0]; + return result(this, obj); + }; + }); + + // Add all accessor Array functions to the wrapper. + _.each(['concat', 'join', 'slice'], function(name) { + var method = ArrayProto[name]; + _.prototype[name] = function() { + return result(this, method.apply(this._wrapped, arguments)); + }; + }); + + // Extracts the result from a wrapped and chained object. + _.prototype.value = function() { + return this._wrapped; + }; + + // Provide unwrapping proxy for some methods used in engine operations + // such as arithmetic and JSON stringification. + _.prototype.valueOf = _.prototype.toJSON = _.prototype.value; + + _.prototype.toString = function() { + return '' + this._wrapped; + }; + + // AMD registration happens at the end for compatibility with AMD loaders + // that may not enforce next-turn semantics on modules. Even though general + // practice for AMD registration is to be anonymous, underscore registers + // as a named module because, like jQuery, it is a base library that is + // popular enough to be bundled in a third party lib, but not be part of + // an AMD load request. Those cases could generate an error when an + // anonymous define() is called outside of a loader request. + if (typeof define === 'function' && define.amd) { + define('underscore', [], function() { + return _; + }); + } +}.call(this)); + +},{}],26:[function(require,module,exports){ +arguments[4][19][0].apply(exports,arguments) +},{"dup":19}],27:[function(require,module,exports){ +module.exports = function isBuffer(arg) { + return arg && typeof arg === 'object' + && typeof arg.copy === 'function' + && typeof arg.fill === 'function' + && typeof arg.readUInt8 === 'function'; +} +},{}],28:[function(require,module,exports){ +(function (process,global){ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +var formatRegExp = /%[sdj%]/g; +exports.format = function(f) { + if (!isString(f)) { + var objects = []; + for (var i = 0; i < arguments.length; i++) { + objects.push(inspect(arguments[i])); + } + return objects.join(' '); + } + + var i = 1; + var args = arguments; + var len = args.length; + var str = String(f).replace(formatRegExp, function(x) { + if (x === '%%') return '%'; + if (i >= len) return x; + switch (x) { + case '%s': return String(args[i++]); + case '%d': return Number(args[i++]); + case '%j': + try { + return JSON.stringify(args[i++]); + } catch (_) { + return '[Circular]'; + } + default: + return x; + } + }); + for (var x = args[i]; i < len; x = args[++i]) { + if (isNull(x) || !isObject(x)) { + str += ' ' + x; + } else { + str += ' ' + inspect(x); + } + } + return str; +}; + + +// Mark that a method should not be used. +// Returns a modified function which warns once by default. +// If --no-deprecation is set, then it is a no-op. +exports.deprecate = function(fn, msg) { + // Allow for deprecating things in the process of starting up. + if (isUndefined(global.process)) { + return function() { + return exports.deprecate(fn, msg).apply(this, arguments); + }; + } + + if (process.noDeprecation === true) { + return fn; + } + + var warned = false; + function deprecated() { + if (!warned) { + if (process.throwDeprecation) { + throw new Error(msg); + } else if (process.traceDeprecation) { + console.trace(msg); + } else { + console.error(msg); + } + warned = true; + } + return fn.apply(this, arguments); + } + + return deprecated; +}; + + +var debugs = {}; +var debugEnviron; +exports.debuglog = function(set) { + if (isUndefined(debugEnviron)) + debugEnviron = process.env.NODE_DEBUG || ''; + set = set.toUpperCase(); + if (!debugs[set]) { + if (new RegExp('\\b' + set + '\\b', 'i').test(debugEnviron)) { + var pid = process.pid; + debugs[set] = function() { + var msg = exports.format.apply(exports, arguments); + console.error('%s %d: %s', set, pid, msg); + }; + } else { + debugs[set] = function() {}; + } + } + return debugs[set]; +}; + + +/** + * Echos the value of a value. Trys to print the value out + * in the best way possible given the different types. + * + * @param {Object} obj The object to print out. + * @param {Object} opts Optional options object that alters the output. + */ +/* legacy: obj, showHidden, depth, colors*/ +function inspect(obj, opts) { + // default options + var ctx = { + seen: [], + stylize: stylizeNoColor + }; + // legacy... + if (arguments.length >= 3) ctx.depth = arguments[2]; + if (arguments.length >= 4) ctx.colors = arguments[3]; + if (isBoolean(opts)) { + // legacy... + ctx.showHidden = opts; + } else if (opts) { + // got an "options" object + exports._extend(ctx, opts); + } + // set default options + if (isUndefined(ctx.showHidden)) ctx.showHidden = false; + if (isUndefined(ctx.depth)) ctx.depth = 2; + if (isUndefined(ctx.colors)) ctx.colors = false; + if (isUndefined(ctx.customInspect)) ctx.customInspect = true; + if (ctx.colors) ctx.stylize = stylizeWithColor; + return formatValue(ctx, obj, ctx.depth); +} +exports.inspect = inspect; + + +// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics +inspect.colors = { + 'bold' : [1, 22], + 'italic' : [3, 23], + 'underline' : [4, 24], + 'inverse' : [7, 27], + 'white' : [37, 39], + 'grey' : [90, 39], + 'black' : [30, 39], + 'blue' : [34, 39], + 'cyan' : [36, 39], + 'green' : [32, 39], + 'magenta' : [35, 39], + 'red' : [31, 39], + 'yellow' : [33, 39] +}; + +// Don't use 'blue' not visible on cmd.exe +inspect.styles = { + 'special': 'cyan', + 'number': 'yellow', + 'boolean': 'yellow', + 'undefined': 'grey', + 'null': 'bold', + 'string': 'green', + 'date': 'magenta', + // "name": intentionally not styling + 'regexp': 'red' +}; + + +function stylizeWithColor(str, styleType) { + var style = inspect.styles[styleType]; + + if (style) { + return '\u001b[' + inspect.colors[style][0] + 'm' + str + + '\u001b[' + inspect.colors[style][1] + 'm'; + } else { + return str; + } +} + + +function stylizeNoColor(str, styleType) { + return str; +} + + +function arrayToHash(array) { + var hash = {}; + + array.forEach(function(val, idx) { + hash[val] = true; + }); + + return hash; +} + + +function formatValue(ctx, value, recurseTimes) { + // Provide a hook for user-specified inspect functions. + // Check that value is an object with an inspect function on it + if (ctx.customInspect && + value && + isFunction(value.inspect) && + // Filter out the util module, it's inspect function is special + value.inspect !== exports.inspect && + // Also filter out any prototype objects using the circular check. + !(value.constructor && value.constructor.prototype === value)) { + var ret = value.inspect(recurseTimes, ctx); + if (!isString(ret)) { + ret = formatValue(ctx, ret, recurseTimes); + } + return ret; + } + + // Primitive types cannot have properties + var primitive = formatPrimitive(ctx, value); + if (primitive) { + return primitive; + } + + // Look up the keys of the object. + var keys = Object.keys(value); + var visibleKeys = arrayToHash(keys); + + if (ctx.showHidden) { + keys = Object.getOwnPropertyNames(value); + } + + // IE doesn't make error fields non-enumerable + // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx + if (isError(value) + && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) { + return formatError(value); + } + + // Some type of object without properties can be shortcutted. + if (keys.length === 0) { + if (isFunction(value)) { + var name = value.name ? ': ' + value.name : ''; + return ctx.stylize('[Function' + name + ']', 'special'); + } + if (isRegExp(value)) { + return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp'); + } + if (isDate(value)) { + return ctx.stylize(Date.prototype.toString.call(value), 'date'); + } + if (isError(value)) { + return formatError(value); + } + } + + var base = '', array = false, braces = ['{', '}']; + + // Make Array say that they are Array + if (isArray(value)) { + array = true; + braces = ['[', ']']; + } + + // Make functions say that they are functions + if (isFunction(value)) { + var n = value.name ? ': ' + value.name : ''; + base = ' [Function' + n + ']'; + } + + // Make RegExps say that they are RegExps + if (isRegExp(value)) { + base = ' ' + RegExp.prototype.toString.call(value); + } + + // Make dates with properties first say the date + if (isDate(value)) { + base = ' ' + Date.prototype.toUTCString.call(value); + } + + // Make error with message first say the error + if (isError(value)) { + base = ' ' + formatError(value); + } + + if (keys.length === 0 && (!array || value.length == 0)) { + return braces[0] + base + braces[1]; + } + + if (recurseTimes < 0) { + if (isRegExp(value)) { + return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp'); + } else { + return ctx.stylize('[Object]', 'special'); + } + } + + ctx.seen.push(value); + + var output; + if (array) { + output = formatArray(ctx, value, recurseTimes, visibleKeys, keys); + } else { + output = keys.map(function(key) { + return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array); + }); + } + + ctx.seen.pop(); + + return reduceToSingleString(output, base, braces); +} + + +function formatPrimitive(ctx, value) { + if (isUndefined(value)) + return ctx.stylize('undefined', 'undefined'); + if (isString(value)) { + var simple = '\'' + JSON.stringify(value).replace(/^"|"$/g, '') + .replace(/'/g, "\\'") + .replace(/\\"/g, '"') + '\''; + return ctx.stylize(simple, 'string'); + } + if (isNumber(value)) + return ctx.stylize('' + value, 'number'); + if (isBoolean(value)) + return ctx.stylize('' + value, 'boolean'); + // For some reason typeof null is "object", so special case here. + if (isNull(value)) + return ctx.stylize('null', 'null'); +} + + +function formatError(value) { + return '[' + Error.prototype.toString.call(value) + ']'; +} + + +function formatArray(ctx, value, recurseTimes, visibleKeys, keys) { + var output = []; + for (var i = 0, l = value.length; i < l; ++i) { + if (hasOwnProperty(value, String(i))) { + output.push(formatProperty(ctx, value, recurseTimes, visibleKeys, + String(i), true)); + } else { + output.push(''); + } + } + keys.forEach(function(key) { + if (!key.match(/^\d+$/)) { + output.push(formatProperty(ctx, value, recurseTimes, visibleKeys, + key, true)); + } + }); + return output; +} + + +function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) { + var name, str, desc; + desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] }; + if (desc.get) { + if (desc.set) { + str = ctx.stylize('[Getter/Setter]', 'special'); + } else { + str = ctx.stylize('[Getter]', 'special'); + } + } else { + if (desc.set) { + str = ctx.stylize('[Setter]', 'special'); + } + } + if (!hasOwnProperty(visibleKeys, key)) { + name = '[' + key + ']'; + } + if (!str) { + if (ctx.seen.indexOf(desc.value) < 0) { + if (isNull(recurseTimes)) { + str = formatValue(ctx, desc.value, null); + } else { + str = formatValue(ctx, desc.value, recurseTimes - 1); + } + if (str.indexOf('\n') > -1) { + if (array) { + str = str.split('\n').map(function(line) { + return ' ' + line; + }).join('\n').substr(2); + } else { + str = '\n' + str.split('\n').map(function(line) { + return ' ' + line; + }).join('\n'); + } + } + } else { + str = ctx.stylize('[Circular]', 'special'); + } + } + if (isUndefined(name)) { + if (array && key.match(/^\d+$/)) { + return str; + } + name = JSON.stringify('' + key); + if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) { + name = name.substr(1, name.length - 2); + name = ctx.stylize(name, 'name'); + } else { + name = name.replace(/'/g, "\\'") + .replace(/\\"/g, '"') + .replace(/(^"|"$)/g, "'"); + name = ctx.stylize(name, 'string'); + } + } + + return name + ': ' + str; +} + + +function reduceToSingleString(output, base, braces) { + var numLinesEst = 0; + var length = output.reduce(function(prev, cur) { + numLinesEst++; + if (cur.indexOf('\n') >= 0) numLinesEst++; + return prev + cur.replace(/\u001b\[\d\d?m/g, '').length + 1; + }, 0); + + if (length > 60) { + return braces[0] + + (base === '' ? '' : base + '\n ') + + ' ' + + output.join(',\n ') + + ' ' + + braces[1]; + } + + return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1]; +} + + +// NOTE: These type checking functions intentionally don't use `instanceof` +// because it is fragile and can be easily faked with `Object.create()`. +function isArray(ar) { + return Array.isArray(ar); +} +exports.isArray = isArray; + +function isBoolean(arg) { + return typeof arg === 'boolean'; +} +exports.isBoolean = isBoolean; + +function isNull(arg) { + return arg === null; +} +exports.isNull = isNull; + +function isNullOrUndefined(arg) { + return arg == null; +} +exports.isNullOrUndefined = isNullOrUndefined; + +function isNumber(arg) { + return typeof arg === 'number'; +} +exports.isNumber = isNumber; + +function isString(arg) { + return typeof arg === 'string'; +} +exports.isString = isString; + +function isSymbol(arg) { + return typeof arg === 'symbol'; +} +exports.isSymbol = isSymbol; + +function isUndefined(arg) { + return arg === void 0; +} +exports.isUndefined = isUndefined; + +function isRegExp(re) { + return isObject(re) && objectToString(re) === '[object RegExp]'; +} +exports.isRegExp = isRegExp; + +function isObject(arg) { + return typeof arg === 'object' && arg !== null; +} +exports.isObject = isObject; + +function isDate(d) { + return isObject(d) && objectToString(d) === '[object Date]'; +} +exports.isDate = isDate; + +function isError(e) { + return isObject(e) && + (objectToString(e) === '[object Error]' || e instanceof Error); +} +exports.isError = isError; + +function isFunction(arg) { + return typeof arg === 'function'; +} +exports.isFunction = isFunction; + +function isPrimitive(arg) { + return arg === null || + typeof arg === 'boolean' || + typeof arg === 'number' || + typeof arg === 'string' || + typeof arg === 'symbol' || // ES6 symbol + typeof arg === 'undefined'; +} +exports.isPrimitive = isPrimitive; + +exports.isBuffer = require('./support/isBuffer'); + +function objectToString(o) { + return Object.prototype.toString.call(o); +} + + +function pad(n) { + return n < 10 ? '0' + n.toString(10) : n.toString(10); +} + + +var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', + 'Oct', 'Nov', 'Dec']; + +// 26 Feb 16:19:34 +function timestamp() { + var d = new Date(); + var time = [pad(d.getHours()), + pad(d.getMinutes()), + pad(d.getSeconds())].join(':'); + return [d.getDate(), months[d.getMonth()], time].join(' '); +} + + +// log is just a thin wrapper to console.log that prepends a timestamp +exports.log = function() { + console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments)); +}; + + +/** + * Inherit the prototype methods from one constructor into another. + * + * The Function.prototype.inherits from lang.js rewritten as a standalone + * function (not on Function.prototype). NOTE: If this file is to be loaded + * during bootstrapping this function needs to be rewritten using some native + * functions as prototype setup using normal JavaScript does not work as + * expected during bootstrapping (see mirror.js in r114903). + * + * @param {function} ctor Constructor function which needs to inherit the + * prototype. + * @param {function} superCtor Constructor function to inherit prototype from. + */ +exports.inherits = require('inherits'); + +exports._extend = function(origin, add) { + // Don't do anything if add isn't an object + if (!add || !isObject(add)) return origin; + + var keys = Object.keys(add); + var i = keys.length; + while (i--) { + origin[keys[i]] = add[keys[i]]; + } + return origin; +}; + +function hasOwnProperty(obj, prop) { + return Object.prototype.hasOwnProperty.call(obj, prop); +} + +}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{"./support/isBuffer":27,"_process":24,"inherits":26}],29:[function(require,module,exports){ +// Returns a wrapper function that returns a wrapped callback +// The wrapper function should do some stuff, and return a +// presumably different callback function. +// This makes sure that own properties are retained, so that +// decorations and such are not lost along the way. +module.exports = wrappy +function wrappy (fn, cb) { + if (fn && cb) return wrappy(fn)(cb) + + if (typeof fn !== 'function') + throw new TypeError('need wrapper function') + + Object.keys(fn).forEach(function (k) { + wrapper[k] = fn[k] + }) + + return wrapper + + function wrapper() { + var args = new Array(arguments.length) + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i] + } + var ret = fn.apply(this, args) + var cb = args[args.length-1] + if (typeof ret === 'function' && ret !== cb) { + Object.keys(cb).forEach(function (k) { + ret[k] = cb[k] + }) + } + return ret + } +} + +},{}]},{},[7])(7) +}); \ No newline at end of file diff --git a/assets/javascripts/workers/search.c7c1ca2c.min.js b/assets/javascripts/workers/search.c7c1ca2c.min.js new file mode 100644 index 0000000..2d6f767 --- /dev/null +++ b/assets/javascripts/workers/search.c7c1ca2c.min.js @@ -0,0 +1,2 @@ +"use strict";(()=>{var xe=Object.create;var G=Object.defineProperty,ve=Object.defineProperties,Se=Object.getOwnPropertyDescriptor,Te=Object.getOwnPropertyDescriptors,Qe=Object.getOwnPropertyNames,J=Object.getOwnPropertySymbols,Ee=Object.getPrototypeOf,Z=Object.prototype.hasOwnProperty,be=Object.prototype.propertyIsEnumerable;var K=Math.pow,X=(t,e,r)=>e in t?G(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,_=(t,e)=>{for(var r in e||(e={}))Z.call(e,r)&&X(t,r,e[r]);if(J)for(var r of J(e))be.call(e,r)&&X(t,r,e[r]);return t},B=(t,e)=>ve(t,Te(e));var Le=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var we=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Qe(e))!Z.call(t,i)&&i!==r&&G(t,i,{get:()=>e[i],enumerable:!(n=Se(e,i))||n.enumerable});return t};var Pe=(t,e,r)=>(r=t!=null?xe(Ee(t)):{},we(e||!t||!t.__esModule?G(r,"default",{value:t,enumerable:!0}):r,t));var W=(t,e,r)=>new Promise((n,i)=>{var s=u=>{try{a(r.next(u))}catch(c){i(c)}},o=u=>{try{a(r.throw(u))}catch(c){i(c)}},a=u=>u.done?n(u.value):Promise.resolve(u.value).then(s,o);a((r=r.apply(t,e)).next())});var re=Le((ee,te)=>{(function(){var t=function(e){var r=new t.Builder;return r.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),r.searchPipeline.add(t.stemmer),e.call(r,r),r.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(r){e.console&&console.warn&&console.warn(r)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var r=Object.create(null),n=Object.keys(e),i=0;i0){var f=t.utils.clone(r)||{};f.position=[a,c],f.index=s.length,s.push(new t.Token(n.slice(a,o),f))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,r){r in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+r),e.label=r,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var r=e.label&&e.label in this.registeredFunctions;r||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. +`,e)},t.Pipeline.load=function(e){var r=new t.Pipeline;return e.forEach(function(n){var i=t.Pipeline.registeredFunctions[n];if(i)r.add(i);else throw new Error("Cannot load unregistered function: "+n)}),r},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(r){t.Pipeline.warnIfFunctionNotRegistered(r),this._stack.push(r)},this)},t.Pipeline.prototype.after=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");n=n+1,this._stack.splice(n,0,r)},t.Pipeline.prototype.before=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");this._stack.splice(n,0,r)},t.Pipeline.prototype.remove=function(e){var r=this._stack.indexOf(e);r!=-1&&this._stack.splice(r,1)},t.Pipeline.prototype.run=function(e){for(var r=this._stack.length,n=0;n1&&(oe&&(n=s),o!=e);)i=n-r,s=r+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ou?f+=2:a==u&&(r+=n[c+1]*i[f+1],c+=2,f+=2);return r},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),r=1,n=0;r0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}if(s.str.length==0&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var c=s.node.edges["*"];else{var c=new t.TokenSet;s.node.edges["*"]=c}s.str.length==1&&(c.final=!0),i.push({node:c,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var f=s.str.charAt(0),g=s.str.charAt(1),l;g in s.node.edges?l=s.node.edges[g]:(l=new t.TokenSet,s.node.edges[g]=l),s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:f+s.str.slice(2)})}}}return n},t.TokenSet.fromString=function(e){for(var r=new t.TokenSet,n=r,i=0,s=e.length;i=e;r--){var n=this.uncheckedNodes[r],i=n.child.toString();i in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[i]:(n.child._str=i,this.minimizedNodes[i]=n.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(r){var n=new t.QueryParser(e,r);n.parse()})},t.Index.prototype.query=function(e){for(var r=new t.Query(this.fields),n=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,r){var n=e[this._ref],i=Object.keys(this._fields);this._documents[n]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,r;do e=this.next(),r=e.charCodeAt(0);while(r>47&&r<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var r=e.next();if(r==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(r.charCodeAt(0)==92){e.escapeCharacter();continue}if(r==":")return t.QueryLexer.lexField;if(r=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(r=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(r=="+"&&e.width()===1||r=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(r.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,r){this.lexer=new t.QueryLexer(e),this.query=r,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var r=e.peekLexeme();if(r!=null)switch(r.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(n+=" with value '"+r.str+"'"),new t.QueryParseError(n,r.start,r.end)}},t.QueryParser.parsePresence=function(e){var r=e.consumeLexeme();if(r!=null){switch(r.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+r.str+"'";throw new t.QueryParseError(n,r.start,r.end)}var i=e.peekLexeme();if(i==null){var n="expecting term or field, found nothing";throw new t.QueryParseError(n,r.start,r.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(n,i.start,i.end)}}},t.QueryParser.parseField=function(e){var r=e.consumeLexeme();if(r!=null){if(e.query.allFields.indexOf(r.str)==-1){var n=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+r.str+"', possible fields: "+n;throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.fields=[r.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,r.start,r.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var r=e.consumeLexeme();if(r!=null){e.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(n==null){e.nextClause();return}switch(n.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+n.type+"'";throw new t.QueryParseError(i,n.start,n.end)}}},t.QueryParser.parseEditDistance=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="edit distance must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.editDistance=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="boost must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.boost=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,r){typeof define=="function"&&define.amd?define(r):typeof ee=="object"?te.exports=r():e.lunr=r()}(this,function(){return t})})()});var Y=Pe(re());function ne(t,e=document){let r=ke(t,e);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${t}" to be present`);return r}function ke(t,e=document){return e.querySelector(t)||void 0}Object.entries||(Object.entries=function(t){let e=[];for(let r of Object.keys(t))e.push([r,t[r]]);return e});Object.values||(Object.values=function(t){let e=[];for(let r of Object.keys(t))e.push(t[r]);return e});typeof Element!="undefined"&&(Element.prototype.scrollTo||(Element.prototype.scrollTo=function(t,e){typeof t=="object"?(this.scrollLeft=t.left,this.scrollTop=t.top):(this.scrollLeft=t,this.scrollTop=e)}),Element.prototype.replaceWith||(Element.prototype.replaceWith=function(...t){let e=this.parentNode;if(e){t.length===0&&e.removeChild(this);for(let r=t.length-1;r>=0;r--){let n=t[r];typeof n=="string"?n=document.createTextNode(n):n.parentNode&&n.parentNode.removeChild(n),r?e.insertBefore(this.previousSibling,n):e.replaceChild(n,this)}}}));function ie(t){let e=new Map;for(let r of t){let[n]=r.location.split("#"),i=e.get(n);typeof i=="undefined"?e.set(n,r):(e.set(r.location,r),r.parent=i)}return e}function H(t,e,r){var s;e=new RegExp(e,"g");let n,i=0;do{n=e.exec(t);let o=(s=n==null?void 0:n.index)!=null?s:t.length;if(in?e(r,1,n,n=i):t.charAt(i)===">"&&(t.charAt(n+1)==="/"?--s===0&&e(r++,2,n,i+1):t.charAt(i-1)!=="/"&&s++===0&&e(r,0,n,i+1),n=i+1);i>n&&e(r,1,n,i)}function oe(t,e,r,n=!1){return q([t],e,r,n).pop()}function q(t,e,r,n=!1){let i=[0];for(let s=1;s>>2&1023,c=a[0]>>>12;i.push(+(u>c)+i[i.length-1])}return t.map((s,o)=>{let a=0,u=new Map;for(let f of r.sort((g,l)=>g-l)){let g=f&1048575,l=f>>>20;if(i[l]!==o)continue;let m=u.get(l);typeof m=="undefined"&&u.set(l,m=[]),m.push(g)}if(u.size===0)return s;let c=[];for(let[f,g]of u){let l=e[f],m=l[0]>>>12,x=l[l.length-1]>>>12,v=l[l.length-1]>>>2&1023;n&&m>a&&c.push(s.slice(a,m));let d=s.slice(m,x+v);for(let y of g.sort((b,E)=>E-b)){let b=(l[y]>>>12)-m,E=(l[y]>>>2&1023)+b;d=[d.slice(0,b),"",d.slice(b,E),"",d.slice(E)].join("")}if(a=x+v,c.push(d)===2)break}return n&&a{var f;switch(i[f=o+=s]||(i[f]=[]),a){case 0:case 2:i[o].push(u<<12|c-u<<2|a);break;case 1:let g=r[n].slice(u,c);H(g,lunr.tokenizer.separator,(l,m)=>{if(typeof lunr.segmenter!="undefined"){let x=g.slice(l,m);if(/^[MHIK]$/.test(lunr.segmenter.ctype_(x))){let v=lunr.segmenter.segment(x);for(let d=0,y=0;dr){return t.trim().split(/"([^"]+)"/g).map((r,n)=>n&1?r.replace(/^\b|^(?![^\x00-\x7F]|$)|\s+/g," +"):r).join("").replace(/"|(?:^|\s+)[*+\-:^~]+(?=\s+|$)/g,"").split(/\s+/g).reduce((r,n)=>{let i=e(n);return[...r,...Array.isArray(i)?i:[i]]},[]).map(r=>/([~^]$)/.test(r)?`${r}1`:r).map(r=>/(^[+-]|[~^]\d+$)/.test(r)?r:`${r}*`).join(" ")}function ce(t){return ue(t,e=>{let r=[],n=new lunr.QueryLexer(e);n.run();for(let{type:i,str:s,start:o,end:a}of n.lexemes)switch(i){case"FIELD":["title","text","tags"].includes(s)||(e=[e.slice(0,a)," ",e.slice(a+1)].join(""));break;case"TERM":H(s,lunr.tokenizer.separator,(...u)=>{r.push([e.slice(0,o),s.slice(...u),e.slice(a)].join(""))})}return r})}function le(t){let e=new lunr.Query(["title","text","tags"]);new lunr.QueryParser(t,e).parse();for(let n of e.clauses)n.usePipeline=!0,n.term.startsWith("*")&&(n.wildcard=lunr.Query.wildcard.LEADING,n.term=n.term.slice(1)),n.term.endsWith("*")&&(n.wildcard=lunr.Query.wildcard.TRAILING,n.term=n.term.slice(0,-1));return e.clauses}function he(t,e){var i;let r=new Set(t),n={};for(let s=0;s0;){let o=i[--s];for(let u=1;un[o]-u&&(r.add(t.slice(o,o+u)),i[s++]=o+u);let a=o+n[o];n[a]&&ar=>{if(typeof r[e]=="undefined")return;let n=[r.location,e].join(":");return t.set(n,lunr.tokenizer.table=[]),r[e]}}function Re(t,e){let[r,n]=[new Set(t),new Set(e)];return[...new Set([...r].filter(i=>!n.has(i)))]}var U=class{constructor({config:e,docs:r,options:n}){let i=Oe(this.table=new Map);this.map=ie(r),this.options=n,this.index=lunr(function(){this.metadataWhitelist=["position"],this.b(0),e.lang.length===1&&e.lang[0]!=="en"?this.use(lunr[e.lang[0]]):e.lang.length>1&&this.use(lunr.multiLanguage(...e.lang)),this.tokenizer=ae,lunr.tokenizer.separator=new RegExp(e.separator),lunr.segmenter="TinySegmenter"in lunr?new lunr.TinySegmenter:void 0;let s=Re(["trimmer","stopWordFilter","stemmer"],e.pipeline);for(let o of e.lang.map(a=>a==="en"?lunr:lunr[a]))for(let a of s)this.pipeline.remove(o[a]),this.searchPipeline.remove(o[a]);this.ref("location");for(let[o,a]of Object.entries(e.fields))this.field(o,B(_({},a),{extractor:i(o)}));for(let o of r)this.add(o,{boost:o.boost})})}search(e){if(e=e.replace(new RegExp("\\p{sc=Han}+","gu"),s=>[...fe(s,this.index.invertedIndex)].join("* ")),e=ce(e),!e)return{items:[]};let r=le(e).filter(s=>s.presence!==lunr.Query.presence.PROHIBITED),n=this.index.search(e).reduce((s,{ref:o,score:a,matchData:u})=>{let c=this.map.get(o);if(typeof c!="undefined"){c=_({},c),c.tags&&(c.tags=[...c.tags]);let f=he(r,Object.keys(u.metadata));for(let l of this.index.fields){if(typeof c[l]=="undefined")continue;let m=[];for(let d of Object.values(u.metadata))typeof d[l]!="undefined"&&m.push(...d[l].position);if(!m.length)continue;let x=this.table.get([c.location,l].join(":")),v=Array.isArray(c[l])?q:oe;c[l]=v(c[l],x,m,l!=="text")}let g=+!c.parent+Object.values(f).filter(l=>l).length/Object.keys(f).length;s.push(B(_({},c),{score:a*(1+K(g,2)),terms:f}))}return s},[]).sort((s,o)=>o.score-s.score).reduce((s,o)=>{let a=this.map.get(o.location);if(typeof a!="undefined"){let u=a.parent?a.parent.location:a.location;s.set(u,[...s.get(u)||[],o])}return s},new Map);for(let[s,o]of n)if(!o.find(a=>a.location===s)){let a=this.map.get(s);o.push(B(_({},a),{score:0,terms:{}}))}let i;if(this.options.suggest){let s=this.index.query(o=>{for(let a of r)o.term(a.term,{fields:["title"],presence:lunr.Query.presence.REQUIRED,wildcard:lunr.Query.wildcard.TRAILING})});i=s.length?Object.keys(s[0].matchData.metadata):[]}return _({items:[...n.values()]},typeof i!="undefined"&&{suggest:i})}};var de;function Ie(t){return W(this,null,function*(){let e="../lunr";if(typeof parent!="undefined"&&"IFrameWorker"in parent){let n=ne("script[src]"),[i]=n.src.split("/worker");e=e.replace("..",i)}let r=[];for(let n of t.lang){switch(n){case"ja":r.push(`${e}/tinyseg.js`);break;case"hi":case"th":r.push(`${e}/wordcut.js`);break}n!=="en"&&r.push(`${e}/min/lunr.${n}.min.js`)}t.lang.length>1&&r.push(`${e}/min/lunr.multi.min.js`),r.length&&(yield importScripts(`${e}/min/lunr.stemmer.support.min.js`,...r))})}function Fe(t){return W(this,null,function*(){switch(t.type){case 0:return yield Ie(t.data.config),de=new U(t.data),{type:1};case 2:let e=t.data;try{return{type:3,data:de.search(e)}}catch(r){return console.warn(`Invalid query: ${e} \u2013 see https://bit.ly/2s3ChXG`),console.warn(r),{type:3,data:{items:[]}}}default:throw new TypeError("Invalid message type")}})}self.lunr=Y.default;Y.default.utils.warn=console.warn;addEventListener("message",t=>W(void 0,null,function*(){postMessage(yield Fe(t.data))}));})(); diff --git a/assets/logo.png b/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..5e3a83bafe9a5aa78a0f331c979ecd727120b809 GIT binary patch literal 26928 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 DT-_>F literal 0 HcmV?d00001 diff --git a/assets/stylesheets/main.6f50c755.min.css b/assets/stylesheets/main.6f50c755.min.css new file mode 100644 index 0000000..dfb991f --- /dev/null +++ b/assets/stylesheets/main.6f50c755.min.css @@ -0,0 +1 @@ +@charset "UTF-8";html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;box-sizing:border-box}*,:after,:before{box-sizing:inherit}@media (prefers-reduced-motion){*,:after,:before{transition:none!important}}body{margin:0}a,button,input,label{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}hr{border:0;box-sizing:initial;display:block;height:.05rem;overflow:visible;padding:0}small{font-size:80%}sub,sup{line-height:1em}img{border-style:none}table{border-collapse:initial;border-spacing:0}td,th{font-weight:400;vertical-align:top}button{background:#0000;border:0;font-family:inherit;font-size:inherit;margin:0;padding:0}input{border:0;outline:none}:root{--md-primary-fg-color:#4051b5;--md-primary-fg-color--light:#5d6cc0;--md-primary-fg-color--dark:#303fa1;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3;--md-accent-fg-color:#526cfe;--md-accent-fg-color--transparent:#526cfe1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-scheme=default]{color-scheme:light}[data-md-color-scheme=default] img[src$="#gh-dark-mode-only"],[data-md-color-scheme=default] img[src$="#only-dark"]{display:none}:root,[data-md-color-scheme=default]{--md-hue:225deg;--md-default-fg-color:#000000de;--md-default-fg-color--light:#0000008a;--md-default-fg-color--lighter:#00000052;--md-default-fg-color--lightest:#00000012;--md-default-bg-color:#fff;--md-default-bg-color--light:#ffffffb3;--md-default-bg-color--lighter:#ffffff4d;--md-default-bg-color--lightest:#ffffff1f;--md-code-fg-color:#36464e;--md-code-bg-color:#f5f5f5;--md-code-bg-color--light:#f5f5f5b3;--md-code-bg-color--lighter:#f5f5f54d;--md-code-hl-color:#4287ff;--md-code-hl-color--light:#4287ff1a;--md-code-hl-number-color:#d52a2a;--md-code-hl-special-color:#db1457;--md-code-hl-function-color:#a846b9;--md-code-hl-constant-color:#6e59d9;--md-code-hl-keyword-color:#3f6ec6;--md-code-hl-string-color:#1c7d4d;--md-code-hl-name-color:var(--md-code-fg-color);--md-code-hl-operator-color:var(--md-default-fg-color--light);--md-code-hl-punctuation-color:var(--md-default-fg-color--light);--md-code-hl-comment-color:var(--md-default-fg-color--light);--md-code-hl-generic-color:var(--md-default-fg-color--light);--md-code-hl-variable-color:var(--md-default-fg-color--light);--md-typeset-color:var(--md-default-fg-color);--md-typeset-a-color:var(--md-primary-fg-color);--md-typeset-del-color:#f5503d26;--md-typeset-ins-color:#0bd57026;--md-typeset-kbd-color:#fafafa;--md-typeset-kbd-accent-color:#fff;--md-typeset-kbd-border-color:#b8b8b8;--md-typeset-mark-color:#ffff0080;--md-typeset-table-color:#0000001f;--md-typeset-table-color--light:rgba(0,0,0,.035);--md-admonition-fg-color:var(--md-default-fg-color);--md-admonition-bg-color:var(--md-default-bg-color);--md-warning-fg-color:#000000de;--md-warning-bg-color:#ff9;--md-footer-fg-color:#fff;--md-footer-fg-color--light:#ffffffb3;--md-footer-fg-color--lighter:#ffffff73;--md-footer-bg-color:#000000de;--md-footer-bg-color--dark:#00000052;--md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a;--md-shadow-z2:0 0.2rem 0.5rem #0000001a,0 0 0.05rem #00000040;--md-shadow-z3:0 0.2rem 0.5rem #0003,0 0 0.05rem #00000059}.md-icon svg{fill:currentcolor;display:block;height:1.2rem;width:1.2rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--md-text-font-family:var(--md-text-font,_),-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;--md-code-font-family:var(--md-code-font,_),SFMono-Regular,Consolas,Menlo,monospace}aside,body,input{font-feature-settings:"kern","liga";color:var(--md-typeset-color);font-family:var(--md-text-font-family)}code,kbd,pre{font-feature-settings:"kern";font-family:var(--md-code-font-family)}:root{--md-typeset-table-sort-icon:url('data:image/svg+xml;charset=utf-8,');--md-typeset-table-sort-icon--asc:url('data:image/svg+xml;charset=utf-8,');--md-typeset-table-sort-icon--desc:url('data:image/svg+xml;charset=utf-8,')}.md-typeset{-webkit-print-color-adjust:exact;color-adjust:exact;font-size:.8rem;line-height:1.6}@media print{.md-typeset{font-size:.68rem}}.md-typeset blockquote,.md-typeset dl,.md-typeset figure,.md-typeset ol,.md-typeset pre,.md-typeset ul{margin-bottom:1em;margin-top:1em}.md-typeset h1{color:var(--md-default-fg-color--light);font-size:2em;line-height:1.3;margin:0 0 1.25em}.md-typeset h1,.md-typeset h2{font-weight:300;letter-spacing:-.01em}.md-typeset h2{font-size:1.5625em;line-height:1.4;margin:1.6em 0 .64em}.md-typeset h3{font-size:1.25em;font-weight:400;letter-spacing:-.01em;line-height:1.5;margin:1.6em 0 .8em}.md-typeset h2+h3{margin-top:.8em}.md-typeset h4{font-weight:700;letter-spacing:-.01em;margin:1em 0}.md-typeset h5,.md-typeset h6{color:var(--md-default-fg-color--light);font-size:.8em;font-weight:700;letter-spacing:-.01em;margin:1.25em 0}.md-typeset h5{text-transform:uppercase}.md-typeset h5 code{text-transform:none}.md-typeset hr{border-bottom:.05rem solid var(--md-default-fg-color--lightest);display:flow-root;margin:1.5em 0}.md-typeset a{color:var(--md-typeset-a-color);word-break:break-word}.md-typeset a,.md-typeset a:before{transition:color 125ms}.md-typeset a:focus,.md-typeset a:hover{color:var(--md-accent-fg-color)}.md-typeset a:focus code,.md-typeset a:hover code{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-typeset a code{color:var(--md-typeset-a-color)}.md-typeset a.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-typeset code,.md-typeset kbd,.md-typeset pre{color:var(--md-code-fg-color);direction:ltr;font-variant-ligatures:none;transition:background-color 125ms}@media print{.md-typeset code,.md-typeset kbd,.md-typeset pre{white-space:pre-wrap}}.md-typeset code{background-color:var(--md-code-bg-color);border-radius:.1rem;-webkit-box-decoration-break:clone;box-decoration-break:clone;font-size:.85em;padding:0 .2941176471em;transition:color 125ms,background-color 125ms;word-break:break-word}.md-typeset code:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}.md-typeset pre{display:flow-root;line-height:1.4;position:relative}.md-typeset pre>code{-webkit-box-decoration-break:slice;box-decoration-break:slice;box-shadow:none;display:block;margin:0;outline-color:var(--md-accent-fg-color);overflow:auto;padding:.7720588235em 1.1764705882em;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin;touch-action:auto;word-break:normal}.md-typeset pre>code:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-typeset pre>code::-webkit-scrollbar{height:.2rem;width:.2rem}.md-typeset pre>code::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-typeset pre>code::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}.md-typeset kbd{background-color:var(--md-typeset-kbd-color);border-radius:.1rem;box-shadow:0 .1rem 0 .05rem var(--md-typeset-kbd-border-color),0 .1rem 0 var(--md-typeset-kbd-border-color),0 -.1rem .2rem var(--md-typeset-kbd-accent-color) inset;color:var(--md-default-fg-color);display:inline-block;font-size:.75em;padding:0 .6666666667em;vertical-align:text-top;word-break:break-word}.md-typeset mark{background-color:var(--md-typeset-mark-color);-webkit-box-decoration-break:clone;box-decoration-break:clone;color:inherit;word-break:break-word}.md-typeset abbr{cursor:help;text-decoration:none}.md-typeset [data-preview],.md-typeset abbr{border-bottom:.05rem dotted var(--md-default-fg-color--light)}.md-typeset small{opacity:.75}[dir=ltr] .md-typeset sub,[dir=ltr] .md-typeset sup{margin-left:.078125em}[dir=rtl] .md-typeset sub,[dir=rtl] .md-typeset sup{margin-right:.078125em}[dir=ltr] .md-typeset blockquote{padding-left:.6rem}[dir=rtl] .md-typeset blockquote{padding-right:.6rem}[dir=ltr] .md-typeset blockquote{border-left:.2rem solid var(--md-default-fg-color--lighter)}[dir=rtl] .md-typeset blockquote{border-right:.2rem solid var(--md-default-fg-color--lighter)}.md-typeset blockquote{color:var(--md-default-fg-color--light);margin-left:0;margin-right:0}.md-typeset ul{list-style-type:disc}.md-typeset ul[type]{list-style-type:revert-layer}[dir=ltr] .md-typeset ol,[dir=ltr] .md-typeset ul{margin-left:.625em}[dir=rtl] .md-typeset ol,[dir=rtl] .md-typeset ul{margin-right:.625em}.md-typeset ol,.md-typeset ul{padding:0}.md-typeset ol:not([hidden]),.md-typeset ul:not([hidden]){display:flow-root}.md-typeset ol ol,.md-typeset ul ol{list-style-type:lower-alpha}.md-typeset ol ol ol,.md-typeset ul ol ol{list-style-type:lower-roman}.md-typeset ol ol ol ol,.md-typeset ul ol ol ol{list-style-type:upper-alpha}.md-typeset ol ol ol ol ol,.md-typeset ul ol ol ol ol{list-style-type:upper-roman}.md-typeset ol[type],.md-typeset ul[type]{list-style-type:revert-layer}[dir=ltr] .md-typeset ol li,[dir=ltr] .md-typeset ul li{margin-left:1.25em}[dir=rtl] .md-typeset ol li,[dir=rtl] .md-typeset ul li{margin-right:1.25em}.md-typeset ol li,.md-typeset ul li{margin-bottom:.5em}.md-typeset ol li blockquote,.md-typeset ol li p,.md-typeset ul li blockquote,.md-typeset ul li p{margin:.5em 0}.md-typeset ol li:last-child,.md-typeset ul li:last-child{margin-bottom:0}[dir=ltr] .md-typeset ol li ol,[dir=ltr] .md-typeset ol li ul,[dir=ltr] .md-typeset ul li ol,[dir=ltr] .md-typeset ul li ul{margin-left:.625em}[dir=rtl] .md-typeset ol li ol,[dir=rtl] .md-typeset ol li ul,[dir=rtl] .md-typeset ul li ol,[dir=rtl] .md-typeset ul li ul{margin-right:.625em}.md-typeset ol li ol,.md-typeset ol li ul,.md-typeset ul li ol,.md-typeset ul li ul{margin-bottom:.5em;margin-top:.5em}[dir=ltr] .md-typeset dd{margin-left:1.875em}[dir=rtl] .md-typeset dd{margin-right:1.875em}.md-typeset dd{margin-bottom:1.5em;margin-top:1em}.md-typeset img,.md-typeset svg,.md-typeset video{height:auto;max-width:100%}.md-typeset img[align=left]{margin:1em 1em 1em 0}.md-typeset img[align=right]{margin:1em 0 1em 1em}.md-typeset img[align]:only-child{margin-top:0}.md-typeset figure{display:flow-root;margin:1em auto;max-width:100%;text-align:center;width:-moz-fit-content;width:fit-content}.md-typeset figure img{display:block;margin:0 auto}.md-typeset figcaption{font-style:italic;margin:1em auto;max-width:24rem}.md-typeset iframe{max-width:100%}.md-typeset table:not([class]){background-color:var(--md-default-bg-color);border:.05rem solid var(--md-typeset-table-color);border-radius:.1rem;display:inline-block;font-size:.64rem;max-width:100%;overflow:auto;touch-action:auto}@media print{.md-typeset table:not([class]){display:table}}.md-typeset table:not([class])+*{margin-top:1.5em}.md-typeset table:not([class]) td>:first-child,.md-typeset table:not([class]) th>:first-child{margin-top:0}.md-typeset table:not([class]) td>:last-child,.md-typeset table:not([class]) th>:last-child{margin-bottom:0}.md-typeset table:not([class]) td:not([align]),.md-typeset table:not([class]) th:not([align]){text-align:left}[dir=rtl] .md-typeset table:not([class]) td:not([align]),[dir=rtl] .md-typeset table:not([class]) th:not([align]){text-align:right}.md-typeset table:not([class]) th{font-weight:700;min-width:5rem;padding:.9375em 1.25em;vertical-align:top}.md-typeset table:not([class]) td{border-top:.05rem solid var(--md-typeset-table-color);padding:.9375em 1.25em;vertical-align:top}.md-typeset table:not([class]) tbody tr{transition:background-color 125ms}.md-typeset table:not([class]) tbody tr:hover{background-color:var(--md-typeset-table-color--light);box-shadow:0 .05rem 0 var(--md-default-bg-color) inset}.md-typeset table:not([class]) a{word-break:normal}.md-typeset table th[role=columnheader]{cursor:pointer}[dir=ltr] .md-typeset table th[role=columnheader]:after{margin-left:.5em}[dir=rtl] .md-typeset table th[role=columnheader]:after{margin-right:.5em}.md-typeset table th[role=columnheader]:after{content:"";display:inline-block;height:1.2em;-webkit-mask-image:var(--md-typeset-table-sort-icon);mask-image:var(--md-typeset-table-sort-icon);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color 125ms;vertical-align:text-bottom;width:1.2em}.md-typeset table th[role=columnheader]:hover:after{background-color:var(--md-default-fg-color--lighter)}.md-typeset table th[role=columnheader][aria-sort=ascending]:after{background-color:var(--md-default-fg-color--light);-webkit-mask-image:var(--md-typeset-table-sort-icon--asc);mask-image:var(--md-typeset-table-sort-icon--asc)}.md-typeset table th[role=columnheader][aria-sort=descending]:after{background-color:var(--md-default-fg-color--light);-webkit-mask-image:var(--md-typeset-table-sort-icon--desc);mask-image:var(--md-typeset-table-sort-icon--desc)}.md-typeset__scrollwrap{margin:1em -.8rem;overflow-x:auto;touch-action:auto}.md-typeset__table{display:inline-block;margin-bottom:.5em;padding:0 .8rem}@media print{.md-typeset__table{display:block}}html .md-typeset__table table{display:table;margin:0;overflow:hidden;width:100%}@media screen and (max-width:44.984375em){.md-content__inner>pre{margin:1em -.8rem}.md-content__inner>pre code{border-radius:0}}.md-typeset .md-author{border-radius:100%;display:block;flex-shrink:0;height:1.6rem;overflow:hidden;position:relative;transition:color 125ms,transform 125ms;width:1.6rem}.md-typeset .md-author img{display:block}.md-typeset .md-author--more{background:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--lighter);font-size:.6rem;font-weight:700;line-height:1.6rem;text-align:center}.md-typeset .md-author--long{height:2.4rem;width:2.4rem}.md-typeset a.md-author{transform:scale(1)}.md-typeset a.md-author img{border-radius:100%;filter:grayscale(100%) opacity(75%);transition:filter 125ms}.md-typeset a.md-author:focus,.md-typeset a.md-author:hover{transform:scale(1.1);z-index:1}.md-typeset a.md-author:focus img,.md-typeset a.md-author:hover img{filter:grayscale(0)}.md-banner{background-color:var(--md-footer-bg-color);color:var(--md-footer-fg-color);overflow:auto}@media print{.md-banner{display:none}}.md-banner--warning{background-color:var(--md-warning-bg-color);color:var(--md-warning-fg-color)}.md-banner__inner{font-size:.7rem;margin:.6rem auto;padding:0 .8rem}[dir=ltr] .md-banner__button{float:right}[dir=rtl] .md-banner__button{float:left}.md-banner__button{color:inherit;cursor:pointer;transition:opacity .25s}.no-js .md-banner__button{display:none}.md-banner__button:hover{opacity:.7}html{font-size:125%;height:100%;overflow-x:hidden}@media screen and (min-width:100em){html{font-size:137.5%}}@media screen and (min-width:125em){html{font-size:150%}}body{background-color:var(--md-default-bg-color);display:flex;flex-direction:column;font-size:.5rem;min-height:100%;position:relative;width:100%}@media print{body{display:block}}@media screen and (max-width:59.984375em){body[data-md-scrolllock]{position:fixed}}.md-grid{margin-left:auto;margin-right:auto;max-width:61rem}.md-container{display:flex;flex-direction:column;flex-grow:1}@media print{.md-container{display:block}}.md-main{flex-grow:1}.md-main__inner{display:flex;height:100%;margin-top:1.5rem}.md-ellipsis{overflow:hidden;text-overflow:ellipsis}.md-toggle{display:none}.md-option{height:0;opacity:0;position:absolute;width:0}.md-option:checked+label:not([hidden]){display:block}.md-option.focus-visible+label{outline-color:var(--md-accent-fg-color);outline-style:auto}.md-skip{background-color:var(--md-default-fg-color);border-radius:.1rem;color:var(--md-default-bg-color);font-size:.64rem;margin:.5rem;opacity:0;outline-color:var(--md-accent-fg-color);padding:.3rem .5rem;position:fixed;transform:translateY(.4rem);z-index:-1}.md-skip:focus{opacity:1;transform:translateY(0);transition:transform .25s cubic-bezier(.4,0,.2,1),opacity 175ms 75ms;z-index:10}@page{margin:25mm}:root{--md-clipboard-icon:url('data:image/svg+xml;charset=utf-8,')}.md-clipboard{border-radius:.1rem;color:var(--md-default-fg-color--lightest);cursor:pointer;height:1.5em;outline-color:var(--md-accent-fg-color);outline-offset:.1rem;transition:color .25s;width:1.5em;z-index:1}@media print{.md-clipboard{display:none}}.md-clipboard:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}:hover>.md-clipboard{color:var(--md-default-fg-color--light)}.md-clipboard:focus,.md-clipboard:hover{color:var(--md-accent-fg-color)}.md-clipboard:after{background-color:currentcolor;content:"";display:block;height:1.125em;margin:0 auto;-webkit-mask-image:var(--md-clipboard-icon);mask-image:var(--md-clipboard-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:1.125em}.md-clipboard--inline{cursor:pointer}.md-clipboard--inline code{transition:color .25s,background-color .25s}.md-clipboard--inline:focus code,.md-clipboard--inline:hover code{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}:root{--md-code-select-icon:url('data:image/svg+xml;charset=utf-8,');--md-code-copy-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .md-code__content{display:grid}.md-code__nav{background-color:var(--md-code-bg-color--lighter);border-radius:.1rem;display:flex;gap:.2rem;padding:.2rem;position:absolute;right:.25em;top:.25em;transition:background-color .25s;z-index:1}:hover>.md-code__nav{background-color:var(--md-code-bg-color--light)}.md-code__button{color:var(--md-default-fg-color--lightest);cursor:pointer;display:block;height:1.5em;outline-color:var(--md-accent-fg-color);outline-offset:.1rem;transition:color .25s;width:1.5em}:hover>*>.md-code__button{color:var(--md-default-fg-color--light)}.md-code__button.focus-visible,.md-code__button:hover{color:var(--md-accent-fg-color)}.md-code__button--active{color:var(--md-default-fg-color)!important}.md-code__button:after{background-color:currentcolor;content:"";display:block;height:1.125em;margin:0 auto;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:1.125em}.md-code__button[data-md-type=select]:after{-webkit-mask-image:var(--md-code-select-icon);mask-image:var(--md-code-select-icon)}.md-code__button[data-md-type=copy]:after{-webkit-mask-image:var(--md-code-copy-icon);mask-image:var(--md-code-copy-icon)}@keyframes consent{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes overlay{0%{opacity:0}to{opacity:1}}.md-consent__overlay{animation:overlay .25s both;-webkit-backdrop-filter:blur(.1rem);backdrop-filter:blur(.1rem);background-color:#0000008a;height:100%;opacity:1;position:fixed;top:0;width:100%;z-index:5}.md-consent__inner{animation:consent .5s cubic-bezier(.1,.7,.1,1) both;background-color:var(--md-default-bg-color);border:0;border-radius:.1rem;bottom:0;box-shadow:0 0 .2rem #0000001a,0 .2rem .4rem #0003;max-height:100%;overflow:auto;padding:0;position:fixed;width:100%;z-index:5}.md-consent__form{padding:.8rem}.md-consent__settings{display:none;margin:1em 0}input:checked+.md-consent__settings{display:block}.md-consent__controls{margin-bottom:.8rem}.md-typeset .md-consent__controls .md-button{display:inline}@media screen and (max-width:44.984375em){.md-typeset .md-consent__controls .md-button{display:block;margin-top:.4rem;text-align:center;width:100%}}.md-consent label{cursor:pointer}.md-content{flex-grow:1;min-width:0}.md-content__inner{margin:0 .8rem 1.2rem;padding-top:.6rem}@media screen and (min-width:76.25em){[dir=ltr] .md-sidebar--primary:not([hidden])~.md-content>.md-content__inner{margin-left:1.2rem}[dir=ltr] .md-sidebar--secondary:not([hidden])~.md-content>.md-content__inner,[dir=rtl] .md-sidebar--primary:not([hidden])~.md-content>.md-content__inner{margin-right:1.2rem}[dir=rtl] .md-sidebar--secondary:not([hidden])~.md-content>.md-content__inner{margin-left:1.2rem}}.md-content__inner:before{content:"";display:block;height:.4rem}.md-content__inner>:last-child{margin-bottom:0}[dir=ltr] .md-content__button{float:right}[dir=rtl] .md-content__button{float:left}[dir=ltr] .md-content__button{margin-left:.4rem}[dir=rtl] .md-content__button{margin-right:.4rem}.md-content__button{margin:.4rem 0;padding:0}@media print{.md-content__button{display:none}}.md-typeset .md-content__button{color:var(--md-default-fg-color--lighter)}.md-content__button svg{display:inline;vertical-align:top}[dir=rtl] .md-content__button svg{transform:scaleX(-1)}[dir=ltr] .md-dialog{right:.8rem}[dir=rtl] .md-dialog{left:.8rem}.md-dialog{background-color:var(--md-default-fg-color);border-radius:.1rem;bottom:.8rem;box-shadow:var(--md-shadow-z3);min-width:11.1rem;opacity:0;padding:.4rem .6rem;pointer-events:none;position:fixed;transform:translateY(100%);transition:transform 0ms .4s,opacity .4s;z-index:4}@media print{.md-dialog{display:none}}.md-dialog--active{opacity:1;pointer-events:auto;transform:translateY(0);transition:transform .4s cubic-bezier(.075,.85,.175,1),opacity .4s}.md-dialog__inner{color:var(--md-default-bg-color);font-size:.7rem}.md-feedback{margin:2em 0 1em;text-align:center}.md-feedback fieldset{border:none;margin:0;padding:0}.md-feedback__title{font-weight:700;margin:1em auto}.md-feedback__inner{position:relative}.md-feedback__list{display:flex;flex-wrap:wrap;place-content:baseline center;position:relative}.md-feedback__list:hover .md-icon:not(:disabled){color:var(--md-default-fg-color--lighter)}:disabled .md-feedback__list{min-height:1.8rem}.md-feedback__icon{color:var(--md-default-fg-color--light);cursor:pointer;flex-shrink:0;margin:0 .1rem;transition:color 125ms}.md-feedback__icon:not(:disabled).md-icon:hover{color:var(--md-accent-fg-color)}.md-feedback__icon:disabled{color:var(--md-default-fg-color--lightest);pointer-events:none}.md-feedback__note{opacity:0;position:relative;transform:translateY(.4rem);transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s}.md-feedback__note>*{margin:0 auto;max-width:16rem}:disabled .md-feedback__note{opacity:1;transform:translateY(0)}@media print{.md-feedback{display:none}}.md-footer{background-color:var(--md-footer-bg-color);color:var(--md-footer-fg-color)}@media print{.md-footer{display:none}}.md-footer__inner{justify-content:space-between;overflow:auto;padding:.2rem}.md-footer__inner:not([hidden]){display:flex}.md-footer__link{align-items:end;display:flex;flex-grow:0.01;margin-bottom:.4rem;margin-top:1rem;max-width:100%;outline-color:var(--md-accent-fg-color);overflow:hidden;transition:opacity .25s}.md-footer__link:focus,.md-footer__link:hover{opacity:.7}[dir=rtl] .md-footer__link svg{transform:scaleX(-1)}@media screen and (max-width:44.984375em){.md-footer__link--prev{flex-shrink:0}.md-footer__link--prev .md-footer__title{display:none}}[dir=ltr] .md-footer__link--next{margin-left:auto}[dir=rtl] .md-footer__link--next{margin-right:auto}.md-footer__link--next{text-align:right}[dir=rtl] .md-footer__link--next{text-align:left}.md-footer__title{flex-grow:1;font-size:.9rem;margin-bottom:.7rem;max-width:calc(100% - 2.4rem);padding:0 1rem;white-space:nowrap}.md-footer__button{margin:.2rem;padding:.4rem}.md-footer__direction{font-size:.64rem;opacity:.7}.md-footer-meta{background-color:var(--md-footer-bg-color--dark)}.md-footer-meta__inner{display:flex;flex-wrap:wrap;justify-content:space-between;padding:.2rem}html .md-footer-meta.md-typeset a{color:var(--md-footer-fg-color--light)}html .md-footer-meta.md-typeset a:focus,html .md-footer-meta.md-typeset a:hover{color:var(--md-footer-fg-color)}.md-copyright{color:var(--md-footer-fg-color--lighter);font-size:.64rem;margin:auto .6rem;padding:.4rem 0;width:100%}@media screen and (min-width:45em){.md-copyright{width:auto}}.md-copyright__highlight{color:var(--md-footer-fg-color--light)}.md-social{display:inline-flex;gap:.2rem;margin:0 .4rem;padding:.2rem 0 .6rem}@media screen and (min-width:45em){.md-social{padding:.6rem 0}}.md-social__link{display:inline-block;height:1.6rem;text-align:center;width:1.6rem}.md-social__link:before{line-height:1.9}.md-social__link svg{fill:currentcolor;max-height:.8rem;vertical-align:-25%}.md-typeset .md-button{border:.1rem solid;border-radius:.1rem;color:var(--md-primary-fg-color);cursor:pointer;display:inline-block;font-weight:700;padding:.625em 2em;transition:color 125ms,background-color 125ms,border-color 125ms}.md-typeset .md-button--primary{background-color:var(--md-primary-fg-color);border-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color)}.md-typeset .md-button:focus,.md-typeset .md-button:hover{background-color:var(--md-accent-fg-color);border-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}[dir=ltr] .md-typeset .md-input{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .md-input,[dir=rtl] .md-typeset .md-input{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .md-input{border-top-left-radius:.1rem}.md-typeset .md-input{border-bottom:.1rem solid var(--md-default-fg-color--lighter);box-shadow:var(--md-shadow-z1);font-size:.8rem;height:1.8rem;padding:0 .6rem;transition:border .25s,box-shadow .25s}.md-typeset .md-input:focus,.md-typeset .md-input:hover{border-bottom-color:var(--md-accent-fg-color);box-shadow:var(--md-shadow-z2)}.md-typeset .md-input--stretch{width:100%}.md-header{background-color:var(--md-primary-fg-color);box-shadow:0 0 .2rem #0000,0 .2rem .4rem #0000;color:var(--md-primary-bg-color);display:block;left:0;position:sticky;right:0;top:0;z-index:4}@media print{.md-header{display:none}}.md-header[hidden]{transform:translateY(-100%);transition:transform .25s cubic-bezier(.8,0,.6,1),box-shadow .25s}.md-header--shadow{box-shadow:0 0 .2rem #0000001a,0 .2rem .4rem #0003;transition:transform .25s cubic-bezier(.1,.7,.1,1),box-shadow .25s}.md-header__inner{align-items:center;display:flex;padding:0 .2rem}.md-header__button{color:currentcolor;cursor:pointer;margin:.2rem;outline-color:var(--md-accent-fg-color);padding:.4rem;position:relative;transition:opacity .25s;vertical-align:middle;z-index:1}.md-header__button:hover{opacity:.7}.md-header__button:not([hidden]){display:inline-block}.md-header__button:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}.md-header__button.md-logo{margin:.2rem;padding:.4rem}@media screen and (max-width:76.234375em){.md-header__button.md-logo{display:none}}.md-header__button.md-logo img,.md-header__button.md-logo svg{fill:currentcolor;display:block;height:1.2rem;width:auto}@media screen and (min-width:60em){.md-header__button[for=__search]{display:none}}.no-js .md-header__button[for=__search]{display:none}[dir=rtl] .md-header__button[for=__search] svg{transform:scaleX(-1)}@media screen and (min-width:76.25em){.md-header__button[for=__drawer]{display:none}}.md-header__topic{display:flex;max-width:100%;position:absolute;transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s;white-space:nowrap}.md-header__topic+.md-header__topic{opacity:0;pointer-events:none;transform:translateX(1.25rem);transition:transform .4s cubic-bezier(1,.7,.1,.1),opacity .15s;z-index:-1}[dir=rtl] .md-header__topic+.md-header__topic{transform:translateX(-1.25rem)}.md-header__topic:first-child{font-weight:700}[dir=ltr] .md-header__title{margin-left:1rem;margin-right:.4rem}[dir=rtl] .md-header__title{margin-left:.4rem;margin-right:1rem}.md-header__title{flex-grow:1;font-size:.9rem;height:2.4rem;line-height:2.4rem}.md-header__title--active .md-header__topic{opacity:0;pointer-events:none;transform:translateX(-1.25rem);transition:transform .4s cubic-bezier(1,.7,.1,.1),opacity .15s;z-index:-1}[dir=rtl] .md-header__title--active .md-header__topic{transform:translateX(1.25rem)}.md-header__title--active .md-header__topic+.md-header__topic{opacity:1;pointer-events:auto;transform:translateX(0);transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s;z-index:0}.md-header__title>.md-header__ellipsis{height:100%;position:relative;width:100%}.md-header__option{display:flex;flex-shrink:0;max-width:100%;transition:max-width 0ms .25s,opacity .25s .25s;white-space:nowrap}[data-md-toggle=search]:checked~.md-header .md-header__option{max-width:0;opacity:0;transition:max-width 0ms,opacity 0ms}.md-header__option>input{bottom:0}.md-header__source{display:none}@media screen and (min-width:60em){[dir=ltr] .md-header__source{margin-left:1rem}[dir=rtl] .md-header__source{margin-right:1rem}.md-header__source{display:block;max-width:11.7rem;width:11.7rem}}@media screen and (min-width:76.25em){[dir=ltr] .md-header__source{margin-left:1.4rem}[dir=rtl] .md-header__source{margin-right:1.4rem}}.md-meta{color:var(--md-default-fg-color--light);font-size:.7rem;line-height:1.3}.md-meta__list{display:inline-flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}.md-meta__item:not(:last-child):after{content:"·";margin-left:.2rem;margin-right:.2rem}.md-meta__link{color:var(--md-typeset-a-color)}.md-meta__link:focus,.md-meta__link:hover{color:var(--md-accent-fg-color)}.md-draft{background-color:#ff1744;border-radius:.125em;color:#fff;display:inline-block;font-weight:700;padding-left:.5714285714em;padding-right:.5714285714em}:root{--md-nav-icon--prev:url('data:image/svg+xml;charset=utf-8,');--md-nav-icon--next:url('data:image/svg+xml;charset=utf-8,');--md-toc-icon:url('data:image/svg+xml;charset=utf-8,')}.md-nav{font-size:.7rem;line-height:1.3}.md-nav__title{color:var(--md-default-fg-color--light);display:block;font-weight:700;overflow:hidden;padding:0 .6rem;text-overflow:ellipsis}.md-nav__title .md-nav__button{display:none}.md-nav__title .md-nav__button img{height:100%;width:auto}.md-nav__title .md-nav__button.md-logo img,.md-nav__title .md-nav__button.md-logo svg{fill:currentcolor;display:block;height:2.4rem;max-width:100%;object-fit:contain;width:auto}.md-nav__list{list-style:none;margin:0;padding:0}.md-nav__link{align-items:flex-start;display:flex;gap:.4rem;margin-top:.625em;scroll-snap-align:start;transition:color 125ms}.md-nav__link--passed,.md-nav__link--passed code{color:var(--md-default-fg-color--light)}.md-nav__item .md-nav__link--active,.md-nav__item .md-nav__link--active code{color:var(--md-typeset-a-color)}.md-nav__link .md-ellipsis{position:relative}.md-nav__link .md-ellipsis code{word-break:normal}[dir=ltr] .md-nav__link .md-icon:last-child{margin-left:auto}[dir=rtl] .md-nav__link .md-icon:last-child{margin-right:auto}.md-nav__link .md-typeset{font-size:.7rem;line-height:1.3}.md-nav__link svg{fill:currentcolor;flex-shrink:0;height:1.3em;position:relative}.md-nav__link[for]:focus,.md-nav__link[for]:hover,.md-nav__link[href]:focus,.md-nav__link[href]:hover{color:var(--md-accent-fg-color);cursor:pointer}.md-nav__link[for]:focus code,.md-nav__link[for]:hover code,.md-nav__link[href]:focus code,.md-nav__link[href]:hover code{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-nav__link.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-nav--primary .md-nav__link[for=__toc]{display:none}.md-nav--primary .md-nav__link[for=__toc] .md-icon:after{background-color:currentcolor;display:block;height:100%;-webkit-mask-image:var(--md-toc-icon);mask-image:var(--md-toc-icon);width:100%}.md-nav--primary .md-nav__link[for=__toc]~.md-nav{display:none}.md-nav__container>.md-nav__link{margin-top:0}.md-nav__container>.md-nav__link:first-child{flex-grow:1;min-width:0}.md-nav__icon{flex-shrink:0}.md-nav__source{display:none}@media screen and (max-width:76.234375em){.md-nav--primary,.md-nav--primary .md-nav{background-color:var(--md-default-bg-color);display:flex;flex-direction:column;height:100%;left:0;position:absolute;right:0;top:0;z-index:1}.md-nav--primary .md-nav__item,.md-nav--primary .md-nav__title{font-size:.8rem;line-height:1.5}.md-nav--primary .md-nav__title{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light);cursor:pointer;height:5.6rem;line-height:2.4rem;padding:3rem .8rem .2rem;position:relative;white-space:nowrap}[dir=ltr] .md-nav--primary .md-nav__title .md-nav__icon{left:.4rem}[dir=rtl] .md-nav--primary .md-nav__title .md-nav__icon{right:.4rem}.md-nav--primary .md-nav__title .md-nav__icon{display:block;height:1.2rem;margin:.2rem;position:absolute;top:.4rem;width:1.2rem}.md-nav--primary .md-nav__title .md-nav__icon:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-nav-icon--prev);mask-image:var(--md-nav-icon--prev);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.md-nav--primary .md-nav__title~.md-nav__list{background-color:var(--md-default-bg-color);box-shadow:0 .05rem 0 var(--md-default-fg-color--lightest) inset;overflow-y:auto;scroll-snap-type:y mandatory;touch-action:pan-y}.md-nav--primary .md-nav__title~.md-nav__list>:first-child{border-top:0}.md-nav--primary .md-nav__title[for=__drawer]{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);font-weight:700}.md-nav--primary .md-nav__title .md-logo{display:block;left:.2rem;margin:.2rem;padding:.4rem;position:absolute;right:.2rem;top:.2rem}.md-nav--primary .md-nav__list{flex:1}.md-nav--primary .md-nav__item{border-top:.05rem solid var(--md-default-fg-color--lightest)}.md-nav--primary .md-nav__item--active>.md-nav__link{color:var(--md-typeset-a-color)}.md-nav--primary .md-nav__item--active>.md-nav__link:focus,.md-nav--primary .md-nav__item--active>.md-nav__link:hover{color:var(--md-accent-fg-color)}.md-nav--primary .md-nav__link{margin-top:0;padding:.6rem .8rem}.md-nav--primary .md-nav__link svg{margin-top:.1em}.md-nav--primary .md-nav__link>.md-nav__link{padding:0}[dir=ltr] .md-nav--primary .md-nav__link .md-nav__icon{margin-right:-.2rem}[dir=rtl] .md-nav--primary .md-nav__link .md-nav__icon{margin-left:-.2rem}.md-nav--primary .md-nav__link .md-nav__icon{font-size:1.2rem;height:1.2rem;width:1.2rem}.md-nav--primary .md-nav__link .md-nav__icon:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-nav-icon--next);mask-image:var(--md-nav-icon--next);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}[dir=rtl] .md-nav--primary .md-nav__icon:after{transform:scale(-1)}.md-nav--primary .md-nav--secondary .md-nav{background-color:initial;position:static}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav__link{padding-left:1.4rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav__link{padding-right:1.4rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link{padding-left:2rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link{padding-right:2rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link{padding-left:2.6rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link{padding-right:2.6rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link{padding-left:3.2rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link{padding-right:3.2rem}.md-nav--secondary{background-color:initial}.md-nav__toggle~.md-nav{display:flex;opacity:0;transform:translateX(100%);transition:transform .25s cubic-bezier(.8,0,.6,1),opacity 125ms 50ms}[dir=rtl] .md-nav__toggle~.md-nav{transform:translateX(-100%)}.md-nav__toggle:checked~.md-nav{opacity:1;transform:translateX(0);transition:transform .25s cubic-bezier(.4,0,.2,1),opacity 125ms 125ms}.md-nav__toggle:checked~.md-nav>.md-nav__list{-webkit-backface-visibility:hidden;backface-visibility:hidden}}@media screen and (max-width:59.984375em){.md-nav--primary .md-nav__link[for=__toc]{display:flex}.md-nav--primary .md-nav__link[for=__toc] .md-icon:after{content:""}.md-nav--primary .md-nav__link[for=__toc]+.md-nav__link{display:none}.md-nav--primary .md-nav__link[for=__toc]~.md-nav{display:flex}.md-nav__source{background-color:var(--md-primary-fg-color--dark);color:var(--md-primary-bg-color);display:block;padding:0 .2rem}}@media screen and (min-width:60em) and (max-width:76.234375em){.md-nav--integrated .md-nav__link[for=__toc]{display:flex}.md-nav--integrated .md-nav__link[for=__toc] .md-icon:after{content:""}.md-nav--integrated .md-nav__link[for=__toc]+.md-nav__link{display:none}.md-nav--integrated .md-nav__link[for=__toc]~.md-nav{display:flex}}@media screen and (min-width:60em){.md-nav{margin-bottom:-.4rem}.md-nav--secondary .md-nav__title{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);position:sticky;top:0;z-index:1}.md-nav--secondary .md-nav__title[for=__toc]{scroll-snap-align:start}.md-nav--secondary .md-nav__title .md-nav__icon{display:none}[dir=ltr] .md-nav--secondary .md-nav__list{padding-left:.6rem}[dir=rtl] .md-nav--secondary .md-nav__list{padding-right:.6rem}.md-nav--secondary .md-nav__list{padding-bottom:.4rem}[dir=ltr] .md-nav--secondary .md-nav__item>.md-nav__link{margin-right:.4rem}[dir=rtl] .md-nav--secondary .md-nav__item>.md-nav__link{margin-left:.4rem}}@media screen and (min-width:76.25em){.md-nav{margin-bottom:-.4rem;transition:max-height .25s cubic-bezier(.86,0,.07,1)}.md-nav--primary .md-nav__title{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);position:sticky;top:0;z-index:1}.md-nav--primary .md-nav__title[for=__drawer]{scroll-snap-align:start}.md-nav--primary .md-nav__title .md-nav__icon{display:none}[dir=ltr] .md-nav--primary .md-nav__list{padding-left:.6rem}[dir=rtl] .md-nav--primary .md-nav__list{padding-right:.6rem}.md-nav--primary .md-nav__list{padding-bottom:.4rem}[dir=ltr] .md-nav--primary .md-nav__item>.md-nav__link{margin-right:.4rem}[dir=rtl] .md-nav--primary .md-nav__item>.md-nav__link{margin-left:.4rem}.md-nav__toggle~.md-nav{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .25s cubic-bezier(.86,0,.07,1),opacity .25s,visibility 0ms .25s;visibility:collapse}.md-nav__toggle~.md-nav>.md-nav__list{overflow:hidden}.md-nav__toggle.md-toggle--indeterminate~.md-nav,.md-nav__toggle:checked~.md-nav{grid-template-rows:1fr;opacity:1;transition:grid-template-rows .25s cubic-bezier(.86,0,.07,1),opacity .15s .1s,visibility 0ms;visibility:visible}.md-nav__toggle.md-toggle--indeterminate~.md-nav{transition:none}.md-nav__item--nested>.md-nav>.md-nav__title{display:none}.md-nav__item--section{display:block;margin:1.25em 0}.md-nav__item--section:last-child{margin-bottom:0}.md-nav__item--section>.md-nav__link{font-weight:700}.md-nav__item--section>.md-nav__link[for]{color:var(--md-default-fg-color--light)}.md-nav__item--section>.md-nav__link:not(.md-nav__container){pointer-events:none}.md-nav__item--section>.md-nav__link .md-icon,.md-nav__item--section>.md-nav__link>[for]{display:none}[dir=ltr] .md-nav__item--section>.md-nav{margin-left:-.6rem}[dir=rtl] .md-nav__item--section>.md-nav{margin-right:-.6rem}.md-nav__item--section>.md-nav{display:block;opacity:1;visibility:visible}.md-nav__item--section>.md-nav>.md-nav__list>.md-nav__item{padding:0}.md-nav__icon{border-radius:100%;height:.9rem;transition:background-color .25s;width:.9rem}.md-nav__icon:hover{background-color:var(--md-accent-fg-color--transparent)}.md-nav__icon:after{background-color:currentcolor;border-radius:100%;content:"";display:inline-block;height:100%;-webkit-mask-image:var(--md-nav-icon--next);mask-image:var(--md-nav-icon--next);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:transform .25s;vertical-align:-.1rem;width:100%}[dir=rtl] .md-nav__icon:after{transform:rotate(180deg)}.md-nav__item--nested .md-nav__toggle:checked~.md-nav__link .md-nav__icon:after,.md-nav__item--nested .md-toggle--indeterminate~.md-nav__link .md-nav__icon:after{transform:rotate(90deg)}.md-nav--lifted>.md-nav__list>.md-nav__item,.md-nav--lifted>.md-nav__title{display:none}.md-nav--lifted>.md-nav__list>.md-nav__item--active{display:block}.md-nav--lifted>.md-nav__list>.md-nav__item--active>.md-nav__link{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);margin-top:0;position:sticky;top:0;z-index:1}.md-nav--lifted>.md-nav__list>.md-nav__item--active>.md-nav__link:not(.md-nav__container){pointer-events:none}.md-nav--lifted>.md-nav__list>.md-nav__item--active.md-nav__item--section{margin:0}[dir=ltr] .md-nav--lifted>.md-nav__list>.md-nav__item>.md-nav:not(.md-nav--secondary){margin-left:-.6rem}[dir=rtl] .md-nav--lifted>.md-nav__list>.md-nav__item>.md-nav:not(.md-nav--secondary){margin-right:-.6rem}.md-nav--lifted>.md-nav__list>.md-nav__item>[for]{color:var(--md-default-fg-color--light)}.md-nav--lifted .md-nav[data-md-level="1"]{grid-template-rows:1fr;opacity:1;visibility:visible}[dir=ltr] .md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{border-left:.05rem solid var(--md-primary-fg-color)}[dir=rtl] .md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{border-right:.05rem solid var(--md-primary-fg-color)}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{display:block;margin-bottom:1.25em;opacity:1;visibility:visible}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary>.md-nav__list{overflow:visible;padding-bottom:0}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary>.md-nav__title{display:none}}.md-pagination{font-size:.8rem;font-weight:700;gap:.4rem}.md-pagination,.md-pagination>*{align-items:center;display:flex;justify-content:center}.md-pagination>*{border-radius:.2rem;height:1.8rem;min-width:1.8rem;text-align:center}.md-pagination__current{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light)}.md-pagination__link{transition:color 125ms,background-color 125ms}.md-pagination__link:focus,.md-pagination__link:hover{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-pagination__link:focus svg,.md-pagination__link:hover svg{color:var(--md-accent-fg-color)}.md-pagination__link.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-pagination__link svg{fill:currentcolor;color:var(--md-default-fg-color--lighter);display:block;max-height:100%;width:1.2rem}:root{--md-path-icon:url('data:image/svg+xml;charset=utf-8,')}.md-path{font-size:.7rem;margin:0 .8rem;overflow:auto;padding-top:1.2rem}.md-path:not([hidden]){display:block}@media screen and (min-width:76.25em){.md-path{margin:0 1.2rem}}.md-path__list{align-items:center;display:flex;gap:.2rem;list-style:none;margin:0;padding:0}.md-path__item:not(:first-child){display:inline-flex;gap:.2rem;white-space:nowrap}.md-path__item:not(:first-child):before{background-color:var(--md-default-fg-color--lighter);content:"";display:inline;height:.8rem;-webkit-mask-image:var(--md-path-icon);mask-image:var(--md-path-icon);width:.8rem}.md-path__link{align-items:center;color:var(--md-default-fg-color--light);display:flex}.md-path__link:focus,.md-path__link:hover{color:var(--md-accent-fg-color)}:root{--md-post-pin-icon:url('data:image/svg+xml;charset=utf-8,')}.md-post__back{border-bottom:.05rem solid var(--md-default-fg-color--lightest);margin-bottom:1.2rem;padding-bottom:1.2rem}@media screen and (max-width:76.234375em){.md-post__back{display:none}}[dir=rtl] .md-post__back svg{transform:scaleX(-1)}.md-post__authors{display:flex;flex-direction:column;gap:.6rem;margin:0 .6rem 1.2rem}.md-post .md-post__meta a{transition:color 125ms}.md-post .md-post__meta a:focus,.md-post .md-post__meta a:hover{color:var(--md-accent-fg-color)}.md-post__title{color:var(--md-default-fg-color--light);font-weight:700}.md-post--excerpt{margin-bottom:3.2rem}.md-post--excerpt .md-post__header{align-items:center;display:flex;gap:.6rem;min-height:1.6rem}.md-post--excerpt .md-post__authors{align-items:center;display:inline-flex;flex-direction:row;gap:.2rem;margin:0;min-height:2.4rem}[dir=ltr] .md-post--excerpt .md-post__meta .md-meta__list{margin-right:.4rem}[dir=rtl] .md-post--excerpt .md-post__meta .md-meta__list{margin-left:.4rem}.md-post--excerpt .md-post__content>:first-child{--md-scroll-margin:6rem;margin-top:0}.md-post>.md-nav--secondary{margin:1em 0}.md-pin{background:var(--md-default-fg-color--lightest);border-radius:1rem;margin-top:-.05rem;padding:.2rem}.md-pin:after{background-color:currentcolor;content:"";display:block;height:.6rem;margin:0 auto;-webkit-mask-image:var(--md-post-pin-icon);mask-image:var(--md-post-pin-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.6rem}.md-profile{align-items:center;display:flex;font-size:.7rem;gap:.6rem;line-height:1.4;width:100%}.md-profile__description{flex-grow:1}.md-content--post{display:flex}@media screen and (max-width:76.234375em){.md-content--post{flex-flow:column-reverse}}.md-content--post>.md-content__inner{min-width:0}@media screen and (min-width:76.25em){[dir=ltr] .md-content--post>.md-content__inner{margin-left:1.2rem}[dir=rtl] .md-content--post>.md-content__inner{margin-right:1.2rem}}@media screen and (max-width:76.234375em){.md-sidebar.md-sidebar--post{padding:0;position:static;width:100%}.md-sidebar.md-sidebar--post .md-sidebar__scrollwrap{overflow:visible}.md-sidebar.md-sidebar--post .md-sidebar__inner{padding:0}.md-sidebar.md-sidebar--post .md-post__meta{margin-left:.6rem;margin-right:.6rem}.md-sidebar.md-sidebar--post .md-nav__item{border:none;display:inline}.md-sidebar.md-sidebar--post .md-nav__list{display:inline-flex;flex-wrap:wrap;gap:.6rem;padding-bottom:.6rem;padding-top:.6rem}.md-sidebar.md-sidebar--post .md-nav__link{padding:0}.md-sidebar.md-sidebar--post .md-nav{height:auto;margin-bottom:0;position:static}}:root{--md-progress-value:0;--md-progress-delay:400ms}.md-progress{background:var(--md-primary-bg-color);height:.075rem;opacity:min(clamp(0,var(--md-progress-value),1),clamp(0,100 - var(--md-progress-value),1));position:fixed;top:0;transform:scaleX(calc(var(--md-progress-value)*1%));transform-origin:left;transition:transform .5s cubic-bezier(.19,1,.22,1),opacity .25s var(--md-progress-delay);width:100%;z-index:4}:root{--md-search-result-icon:url('data:image/svg+xml;charset=utf-8,')}.md-search{position:relative}@media screen and (min-width:60em){.md-search{padding:.2rem 0}}.no-js .md-search{display:none}.md-search__overlay{opacity:0;z-index:1}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__overlay{left:-2.2rem}[dir=rtl] .md-search__overlay{right:-2.2rem}.md-search__overlay{background-color:var(--md-default-bg-color);border-radius:1rem;height:2rem;overflow:hidden;pointer-events:none;position:absolute;top:-1rem;transform-origin:center;transition:transform .3s .1s,opacity .2s .2s;width:2rem}[data-md-toggle=search]:checked~.md-header .md-search__overlay{opacity:1;transition:transform .4s,opacity .1s}}@media screen and (min-width:60em){[dir=ltr] .md-search__overlay{left:0}[dir=rtl] .md-search__overlay{right:0}.md-search__overlay{background-color:#0000008a;cursor:pointer;height:0;position:fixed;top:0;transition:width 0ms .25s,height 0ms .25s,opacity .25s;width:0}[data-md-toggle=search]:checked~.md-header .md-search__overlay{height:200vh;opacity:1;transition:width 0ms,height 0ms,opacity .25s;width:100%}}@media screen and (max-width:29.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(45)}}@media screen and (min-width:30em) and (max-width:44.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(60)}}@media screen and (min-width:45em) and (max-width:59.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(75)}}.md-search__inner{-webkit-backface-visibility:hidden;backface-visibility:hidden}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__inner{left:0}[dir=rtl] .md-search__inner{right:0}.md-search__inner{height:0;opacity:0;overflow:hidden;position:fixed;top:0;transform:translateX(5%);transition:width 0ms .3s,height 0ms .3s,transform .15s cubic-bezier(.4,0,.2,1) .15s,opacity .15s .15s;width:0;z-index:2}[dir=rtl] .md-search__inner{transform:translateX(-5%)}[data-md-toggle=search]:checked~.md-header .md-search__inner{height:100%;opacity:1;transform:translateX(0);transition:width 0ms 0ms,height 0ms 0ms,transform .15s cubic-bezier(.1,.7,.1,1) .15s,opacity .15s .15s;width:100%}}@media screen and (min-width:60em){[dir=ltr] .md-search__inner{float:right}[dir=rtl] .md-search__inner{float:left}.md-search__inner{padding:.1rem 0;position:relative;transition:width .25s cubic-bezier(.1,.7,.1,1);width:11.7rem}}@media screen and (min-width:60em) and (max-width:76.234375em){[data-md-toggle=search]:checked~.md-header .md-search__inner{width:23.4rem}}@media screen and (min-width:76.25em){[data-md-toggle=search]:checked~.md-header .md-search__inner{width:34.4rem}}.md-search__form{background-color:var(--md-default-bg-color);box-shadow:0 0 .6rem #0000;height:2.4rem;position:relative;transition:color .25s,background-color .25s;z-index:2}@media screen and (min-width:60em){.md-search__form{background-color:#00000042;border-radius:.1rem;height:1.8rem}.md-search__form:hover{background-color:#ffffff1f}}[data-md-toggle=search]:checked~.md-header .md-search__form{background-color:var(--md-default-bg-color);border-radius:.1rem .1rem 0 0;box-shadow:0 0 .6rem #00000012;color:var(--md-default-fg-color)}[dir=ltr] .md-search__input{padding-left:3.6rem;padding-right:2.2rem}[dir=rtl] .md-search__input{padding-left:2.2rem;padding-right:3.6rem}.md-search__input{background:#0000;font-size:.9rem;height:100%;position:relative;text-overflow:ellipsis;width:100%;z-index:2}.md-search__input::placeholder{transition:color .25s}.md-search__input::placeholder,.md-search__input~.md-search__icon{color:var(--md-default-fg-color--light)}.md-search__input::-ms-clear{display:none}@media screen and (max-width:59.984375em){.md-search__input{font-size:.9rem;height:2.4rem;width:100%}}@media screen and (min-width:60em){[dir=ltr] .md-search__input{padding-left:2.2rem}[dir=rtl] .md-search__input{padding-right:2.2rem}.md-search__input{color:inherit;font-size:.8rem}.md-search__input::placeholder{color:var(--md-primary-bg-color--light)}.md-search__input+.md-search__icon{color:var(--md-primary-bg-color)}[data-md-toggle=search]:checked~.md-header .md-search__input{text-overflow:clip}[data-md-toggle=search]:checked~.md-header .md-search__input+.md-search__icon{color:var(--md-default-fg-color--light)}[data-md-toggle=search]:checked~.md-header .md-search__input::placeholder{color:#0000}}.md-search__icon{cursor:pointer;display:inline-block;height:1.2rem;transition:color .25s,opacity .25s;width:1.2rem}.md-search__icon:hover{opacity:.7}[dir=ltr] .md-search__icon[for=__search]{left:.5rem}[dir=rtl] .md-search__icon[for=__search]{right:.5rem}.md-search__icon[for=__search]{position:absolute;top:.3rem;z-index:2}[dir=rtl] .md-search__icon[for=__search] svg{transform:scaleX(-1)}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__icon[for=__search]{left:.8rem}[dir=rtl] .md-search__icon[for=__search]{right:.8rem}.md-search__icon[for=__search]{top:.6rem}.md-search__icon[for=__search] svg:first-child{display:none}}@media screen and (min-width:60em){.md-search__icon[for=__search]{pointer-events:none}.md-search__icon[for=__search] svg:last-child{display:none}}[dir=ltr] .md-search__options{right:.5rem}[dir=rtl] .md-search__options{left:.5rem}.md-search__options{pointer-events:none;position:absolute;top:.3rem;z-index:2}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__options{right:.8rem}[dir=rtl] .md-search__options{left:.8rem}.md-search__options{top:.6rem}}[dir=ltr] .md-search__options>.md-icon{margin-left:.2rem}[dir=rtl] .md-search__options>.md-icon{margin-right:.2rem}.md-search__options>.md-icon{color:var(--md-default-fg-color--light);opacity:0;transform:scale(.75);transition:transform .15s cubic-bezier(.1,.7,.1,1),opacity .15s}.md-search__options>.md-icon:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}[data-md-toggle=search]:checked~.md-header .md-search__input:valid~.md-search__options>.md-icon{opacity:1;pointer-events:auto;transform:scale(1)}[data-md-toggle=search]:checked~.md-header .md-search__input:valid~.md-search__options>.md-icon:hover{opacity:.7}[dir=ltr] .md-search__suggest{padding-left:3.6rem;padding-right:2.2rem}[dir=rtl] .md-search__suggest{padding-left:2.2rem;padding-right:3.6rem}.md-search__suggest{align-items:center;color:var(--md-default-fg-color--lighter);display:flex;font-size:.9rem;height:100%;opacity:0;position:absolute;top:0;transition:opacity 50ms;white-space:nowrap;width:100%}@media screen and (min-width:60em){[dir=ltr] .md-search__suggest{padding-left:2.2rem}[dir=rtl] .md-search__suggest{padding-right:2.2rem}.md-search__suggest{font-size:.8rem}}[data-md-toggle=search]:checked~.md-header .md-search__suggest{opacity:1;transition:opacity .3s .1s}[dir=ltr] .md-search__output{border-bottom-left-radius:.1rem}[dir=ltr] .md-search__output,[dir=rtl] .md-search__output{border-bottom-right-radius:.1rem}[dir=rtl] .md-search__output{border-bottom-left-radius:.1rem}.md-search__output{overflow:hidden;position:absolute;width:100%;z-index:1}@media screen and (max-width:59.984375em){.md-search__output{bottom:0;top:2.4rem}}@media screen and (min-width:60em){.md-search__output{opacity:0;top:1.9rem;transition:opacity .4s}[data-md-toggle=search]:checked~.md-header .md-search__output{box-shadow:var(--md-shadow-z3);opacity:1}}.md-search__scrollwrap{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:var(--md-default-bg-color);height:100%;overflow-y:auto;touch-action:pan-y}@media (-webkit-max-device-pixel-ratio:1),(max-resolution:1dppx){.md-search__scrollwrap{transform:translateZ(0)}}@media screen and (min-width:60em) and (max-width:76.234375em){.md-search__scrollwrap{width:23.4rem}}@media screen and (min-width:76.25em){.md-search__scrollwrap{width:34.4rem}}@media screen and (min-width:60em){.md-search__scrollwrap{max-height:0;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin}[data-md-toggle=search]:checked~.md-header .md-search__scrollwrap{max-height:75vh}.md-search__scrollwrap:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-search__scrollwrap::-webkit-scrollbar{height:.2rem;width:.2rem}.md-search__scrollwrap::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-search__scrollwrap::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}}.md-search-result{color:var(--md-default-fg-color);word-break:break-word}.md-search-result__meta{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light);font-size:.64rem;line-height:1.8rem;padding:0 .8rem;scroll-snap-align:start}@media screen and (min-width:60em){[dir=ltr] .md-search-result__meta{padding-left:2.2rem}[dir=rtl] .md-search-result__meta{padding-right:2.2rem}}.md-search-result__list{list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.md-search-result__item{box-shadow:0 -.05rem var(--md-default-fg-color--lightest)}.md-search-result__item:first-child{box-shadow:none}.md-search-result__link{display:block;outline:none;scroll-snap-align:start;transition:background-color .25s}.md-search-result__link:focus,.md-search-result__link:hover{background-color:var(--md-accent-fg-color--transparent)}.md-search-result__link:last-child p:last-child{margin-bottom:.6rem}.md-search-result__more>summary{cursor:pointer;display:block;outline:none;position:sticky;scroll-snap-align:start;top:0;z-index:1}.md-search-result__more>summary::marker{display:none}.md-search-result__more>summary::-webkit-details-marker{display:none}.md-search-result__more>summary>div{color:var(--md-typeset-a-color);font-size:.64rem;padding:.75em .8rem;transition:color .25s,background-color .25s}@media screen and (min-width:60em){[dir=ltr] .md-search-result__more>summary>div{padding-left:2.2rem}[dir=rtl] .md-search-result__more>summary>div{padding-right:2.2rem}}.md-search-result__more>summary:focus>div,.md-search-result__more>summary:hover>div{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-search-result__more[open]>summary{background-color:var(--md-default-bg-color)}.md-search-result__article{overflow:hidden;padding:0 .8rem;position:relative}@media screen and (min-width:60em){[dir=ltr] .md-search-result__article{padding-left:2.2rem}[dir=rtl] .md-search-result__article{padding-right:2.2rem}}[dir=ltr] .md-search-result__icon{left:0}[dir=rtl] .md-search-result__icon{right:0}.md-search-result__icon{color:var(--md-default-fg-color--light);height:1.2rem;margin:.5rem;position:absolute;width:1.2rem}@media screen and (max-width:59.984375em){.md-search-result__icon{display:none}}.md-search-result__icon:after{background-color:currentcolor;content:"";display:inline-block;height:100%;-webkit-mask-image:var(--md-search-result-icon);mask-image:var(--md-search-result-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}[dir=rtl] .md-search-result__icon:after{transform:scaleX(-1)}.md-search-result .md-typeset{color:var(--md-default-fg-color--light);font-size:.64rem;line-height:1.6}.md-search-result .md-typeset h1{color:var(--md-default-fg-color);font-size:.8rem;font-weight:400;line-height:1.4;margin:.55rem 0}.md-search-result .md-typeset h1 mark{text-decoration:none}.md-search-result .md-typeset h2{color:var(--md-default-fg-color);font-size:.64rem;font-weight:700;line-height:1.6;margin:.5em 0}.md-search-result .md-typeset h2 mark{text-decoration:none}.md-search-result__terms{color:var(--md-default-fg-color);display:block;font-size:.64rem;font-style:italic;margin:.5em 0}.md-search-result mark{background-color:initial;color:var(--md-accent-fg-color);text-decoration:underline}.md-select{position:relative;z-index:1}.md-select__inner{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);left:50%;margin-top:.2rem;max-height:0;opacity:0;position:absolute;top:calc(100% - .2rem);transform:translate3d(-50%,.3rem,0);transition:transform .25s 375ms,opacity .25s .25s,max-height 0ms .5s}.md-select:focus-within .md-select__inner,.md-select:hover .md-select__inner{max-height:10rem;opacity:1;transform:translate3d(-50%,0,0);transition:transform .25s cubic-bezier(.1,.7,.1,1),opacity .25s,max-height 0ms}.md-select__inner:after{border-bottom:.2rem solid #0000;border-bottom-color:var(--md-default-bg-color);border-left:.2rem solid #0000;border-right:.2rem solid #0000;border-top:0;content:"";height:0;left:50%;margin-left:-.2rem;margin-top:-.2rem;position:absolute;top:0;width:0}.md-select__list{border-radius:.1rem;font-size:.8rem;list-style-type:none;margin:0;max-height:inherit;overflow:auto;padding:0}.md-select__item{line-height:1.8rem}[dir=ltr] .md-select__link{padding-left:.6rem;padding-right:1.2rem}[dir=rtl] .md-select__link{padding-left:1.2rem;padding-right:.6rem}.md-select__link{cursor:pointer;display:block;outline:none;scroll-snap-align:start;transition:background-color .25s,color .25s;width:100%}.md-select__link:focus,.md-select__link:hover{color:var(--md-accent-fg-color)}.md-select__link:focus{background-color:var(--md-default-fg-color--lightest)}.md-sidebar{align-self:flex-start;flex-shrink:0;padding:1.2rem 0;position:sticky;top:2.4rem;width:12.1rem}@media print{.md-sidebar{display:none}}@media screen and (max-width:76.234375em){[dir=ltr] .md-sidebar--primary{left:-12.1rem}[dir=rtl] .md-sidebar--primary{right:-12.1rem}.md-sidebar--primary{background-color:var(--md-default-bg-color);display:block;height:100%;position:fixed;top:0;transform:translateX(0);transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;width:12.1rem;z-index:5}[data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary{box-shadow:var(--md-shadow-z3);transform:translateX(12.1rem)}[dir=rtl] [data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary{transform:translateX(-12.1rem)}.md-sidebar--primary .md-sidebar__scrollwrap{bottom:0;left:0;margin:0;overflow:hidden;position:absolute;right:0;scroll-snap-type:none;top:0}}@media screen and (min-width:76.25em){.md-sidebar{height:0}.no-js .md-sidebar{height:auto}.md-header--lifted~.md-container .md-sidebar{top:4.8rem}}.md-sidebar--secondary{display:none;order:2}@media screen and (min-width:60em){.md-sidebar--secondary{height:0}.no-js .md-sidebar--secondary{height:auto}.md-sidebar--secondary:not([hidden]){display:block}.md-sidebar--secondary .md-sidebar__scrollwrap{touch-action:pan-y}}.md-sidebar__scrollwrap{scrollbar-gutter:stable;-webkit-backface-visibility:hidden;backface-visibility:hidden;margin:0 .2rem;overflow-y:auto;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin}.md-sidebar__scrollwrap::-webkit-scrollbar{height:.2rem;width:.2rem}.md-sidebar__scrollwrap:focus-within,.md-sidebar__scrollwrap:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-sidebar__scrollwrap:focus-within::-webkit-scrollbar-thumb,.md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-sidebar__scrollwrap:focus-within::-webkit-scrollbar-thumb:hover,.md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}@supports selector(::-webkit-scrollbar){.md-sidebar__scrollwrap{scrollbar-gutter:auto}[dir=ltr] .md-sidebar__inner{padding-right:calc(100% - 11.5rem)}[dir=rtl] .md-sidebar__inner{padding-left:calc(100% - 11.5rem)}}@media screen and (max-width:76.234375em){.md-overlay{background-color:#0000008a;height:0;opacity:0;position:fixed;top:0;transition:width 0ms .25s,height 0ms .25s,opacity .25s;width:0;z-index:5}[data-md-toggle=drawer]:checked~.md-overlay{height:100%;opacity:1;transition:width 0ms,height 0ms,opacity .25s;width:100%}}@keyframes facts{0%{height:0}to{height:.65rem}}@keyframes fact{0%{opacity:0;transform:translateY(100%)}50%{opacity:0}to{opacity:1;transform:translateY(0)}}:root{--md-source-forks-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-repositories-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-stars-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-version-icon:url('data:image/svg+xml;charset=utf-8,')}.md-source{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:block;font-size:.65rem;line-height:1.2;outline-color:var(--md-accent-fg-color);transition:opacity .25s;white-space:nowrap}.md-source:hover{opacity:.7}.md-source__icon{display:inline-block;height:2.4rem;vertical-align:middle;width:2rem}[dir=ltr] .md-source__icon svg{margin-left:.6rem}[dir=rtl] .md-source__icon svg{margin-right:.6rem}.md-source__icon svg{margin-top:.6rem}[dir=ltr] .md-source__icon+.md-source__repository{padding-left:2rem}[dir=rtl] .md-source__icon+.md-source__repository{padding-right:2rem}[dir=ltr] .md-source__icon+.md-source__repository{margin-left:-2rem}[dir=rtl] .md-source__icon+.md-source__repository{margin-right:-2rem}[dir=ltr] .md-source__repository{margin-left:.6rem}[dir=rtl] .md-source__repository{margin-right:.6rem}.md-source__repository{display:inline-block;max-width:calc(100% - 1.2rem);overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.md-source__facts{display:flex;font-size:.55rem;gap:.4rem;list-style-type:none;margin:.1rem 0 0;opacity:.75;overflow:hidden;padding:0;width:100%}.md-source__repository--active .md-source__facts{animation:facts .25s ease-in}.md-source__fact{overflow:hidden;text-overflow:ellipsis}.md-source__repository--active .md-source__fact{animation:fact .4s ease-out}[dir=ltr] .md-source__fact:before{margin-right:.1rem}[dir=rtl] .md-source__fact:before{margin-left:.1rem}.md-source__fact:before{background-color:currentcolor;content:"";display:inline-block;height:.6rem;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;vertical-align:text-top;width:.6rem}.md-source__fact:nth-child(1n+2){flex-shrink:0}.md-source__fact--version:before{-webkit-mask-image:var(--md-source-version-icon);mask-image:var(--md-source-version-icon)}.md-source__fact--stars:before{-webkit-mask-image:var(--md-source-stars-icon);mask-image:var(--md-source-stars-icon)}.md-source__fact--forks:before{-webkit-mask-image:var(--md-source-forks-icon);mask-image:var(--md-source-forks-icon)}.md-source__fact--repositories:before{-webkit-mask-image:var(--md-source-repositories-icon);mask-image:var(--md-source-repositories-icon)}.md-source-file{margin:1em 0}[dir=ltr] .md-source-file__fact{margin-right:.6rem}[dir=rtl] .md-source-file__fact{margin-left:.6rem}.md-source-file__fact{align-items:center;color:var(--md-default-fg-color--light);display:inline-flex;font-size:.68rem;gap:.3rem}.md-source-file__fact .md-icon{flex-shrink:0;margin-bottom:.05rem}[dir=ltr] .md-source-file__fact .md-author{float:left}[dir=rtl] .md-source-file__fact .md-author{float:right}.md-source-file__fact .md-author{margin-right:.2rem}.md-source-file__fact svg{width:.9rem}:root{--md-status:url('data:image/svg+xml;charset=utf-8,');--md-status--new:url('data:image/svg+xml;charset=utf-8,');--md-status--deprecated:url('data:image/svg+xml;charset=utf-8,');--md-status--encrypted:url('data:image/svg+xml;charset=utf-8,')}.md-status:after{background-color:var(--md-default-fg-color--light);content:"";display:inline-block;height:1.125em;-webkit-mask-image:var(--md-status);mask-image:var(--md-status);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;vertical-align:text-bottom;width:1.125em}.md-status:hover:after{background-color:currentcolor}.md-status--new:after{-webkit-mask-image:var(--md-status--new);mask-image:var(--md-status--new)}.md-status--deprecated:after{-webkit-mask-image:var(--md-status--deprecated);mask-image:var(--md-status--deprecated)}.md-status--encrypted:after{-webkit-mask-image:var(--md-status--encrypted);mask-image:var(--md-status--encrypted)}.md-tabs{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);display:block;line-height:1.3;overflow:auto;width:100%;z-index:3}@media print{.md-tabs{display:none}}@media screen and (max-width:76.234375em){.md-tabs{display:none}}.md-tabs[hidden]{pointer-events:none}[dir=ltr] .md-tabs__list{margin-left:.2rem}[dir=rtl] .md-tabs__list{margin-right:.2rem}.md-tabs__list{contain:content;display:flex;list-style:none;margin:0;overflow:auto;padding:0;scrollbar-width:none;white-space:nowrap}.md-tabs__list::-webkit-scrollbar{display:none}.md-tabs__item{height:2.4rem;padding-left:.6rem;padding-right:.6rem}.md-tabs__item--active .md-tabs__link{color:inherit;opacity:1}.md-tabs__link{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:flex;font-size:.7rem;margin-top:.8rem;opacity:.7;outline-color:var(--md-accent-fg-color);outline-offset:.2rem;transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .25s}.md-tabs__link:focus,.md-tabs__link:hover{color:inherit;opacity:1}[dir=ltr] .md-tabs__link svg{margin-right:.4rem}[dir=rtl] .md-tabs__link svg{margin-left:.4rem}.md-tabs__link svg{fill:currentcolor;height:1.3em}.md-tabs__item:nth-child(2) .md-tabs__link{transition-delay:20ms}.md-tabs__item:nth-child(3) .md-tabs__link{transition-delay:40ms}.md-tabs__item:nth-child(4) .md-tabs__link{transition-delay:60ms}.md-tabs__item:nth-child(5) .md-tabs__link{transition-delay:80ms}.md-tabs__item:nth-child(6) .md-tabs__link{transition-delay:.1s}.md-tabs__item:nth-child(7) .md-tabs__link{transition-delay:.12s}.md-tabs__item:nth-child(8) .md-tabs__link{transition-delay:.14s}.md-tabs__item:nth-child(9) .md-tabs__link{transition-delay:.16s}.md-tabs__item:nth-child(10) .md-tabs__link{transition-delay:.18s}.md-tabs__item:nth-child(11) .md-tabs__link{transition-delay:.2s}.md-tabs__item:nth-child(12) .md-tabs__link{transition-delay:.22s}.md-tabs__item:nth-child(13) .md-tabs__link{transition-delay:.24s}.md-tabs__item:nth-child(14) .md-tabs__link{transition-delay:.26s}.md-tabs__item:nth-child(15) .md-tabs__link{transition-delay:.28s}.md-tabs__item:nth-child(16) .md-tabs__link{transition-delay:.3s}.md-tabs[hidden] .md-tabs__link{opacity:0;transform:translateY(50%);transition:transform 0ms .1s,opacity .1s}:root{--md-tag-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .md-tags:not([hidden]){display:inline-flex;flex-wrap:wrap;gap:.5em;margin-bottom:.75em;margin-top:-.125em}.md-typeset .md-tag{align-items:center;background:var(--md-default-fg-color--lightest);border-radius:2.4rem;display:inline-flex;font-size:.64rem;font-size:min(.8em,.64rem);font-weight:700;gap:.5em;letter-spacing:normal;line-height:1.6;padding:.3125em .78125em}.md-typeset .md-tag[href]{-webkit-tap-highlight-color:transparent;color:inherit;outline:none;transition:color 125ms,background-color 125ms}.md-typeset .md-tag[href]:focus,.md-typeset .md-tag[href]:hover{background-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}[id]>.md-typeset .md-tag{vertical-align:text-top}.md-typeset .md-tag-shadow{opacity:.5}.md-typeset .md-tag-icon:before{background-color:var(--md-default-fg-color--lighter);content:"";display:inline-block;height:1.2em;-webkit-mask-image:var(--md-tag-icon);mask-image:var(--md-tag-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color 125ms;vertical-align:text-bottom;width:1.2em}.md-typeset .md-tag-icon[href]:focus:before,.md-typeset .md-tag-icon[href]:hover:before{background-color:var(--md-accent-bg-color)}@keyframes pulse{0%{transform:scale(.95)}75%{transform:scale(1)}to{transform:scale(.95)}}:root{--md-annotation-bg-icon:url('data:image/svg+xml;charset=utf-8,');--md-annotation-icon:url('data:image/svg+xml;charset=utf-8,')}.md-tooltip{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);font-family:var(--md-text-font-family);left:clamp(var(--md-tooltip-0,0rem) + .8rem,var(--md-tooltip-x),100vw + var(--md-tooltip-0,0rem) + .8rem - var(--md-tooltip-width) - 2 * .8rem);max-width:calc(100vw - 1.6rem);opacity:0;position:absolute;top:var(--md-tooltip-y);transform:translateY(-.4rem);transition:transform 0ms .25s,opacity .25s,z-index .25s;width:var(--md-tooltip-width);z-index:0}.md-tooltip--active{opacity:1;transform:translateY(0);transition:transform .25s cubic-bezier(.1,.7,.1,1),opacity .25s,z-index 0ms;z-index:2}.md-tooltip--inline{font-weight:700;-webkit-user-select:none;user-select:none;width:auto}.md-tooltip--inline:not(.md-tooltip--active){transform:translateY(.2rem) scale(.9)}.md-tooltip--inline .md-tooltip__inner{font-size:.5rem;padding:.2rem .4rem}[hidden]+.md-tooltip--inline{display:none}.focus-visible>.md-tooltip,.md-tooltip:target{outline:var(--md-accent-fg-color) auto}.md-tooltip__inner{font-size:.64rem;padding:.8rem}.md-tooltip__inner.md-typeset>:first-child{margin-top:0}.md-tooltip__inner.md-typeset>:last-child{margin-bottom:0}.md-annotation{font-style:normal;font-weight:400;outline:none;text-align:initial;vertical-align:text-bottom;white-space:normal}[dir=rtl] .md-annotation{direction:rtl}code .md-annotation{font-family:var(--md-code-font-family);font-size:inherit}.md-annotation:not([hidden]){display:inline-block;line-height:1.25}.md-annotation__index{border-radius:.01px;cursor:pointer;display:inline-block;margin-left:.4ch;margin-right:.4ch;outline:none;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;vertical-align:text-top;z-index:0}.md-annotation .md-annotation__index{transition:z-index .25s}@media screen{.md-annotation__index{width:2.2ch}[data-md-visible]>.md-annotation__index{animation:pulse 2s infinite}.md-annotation__index:before{background:var(--md-default-bg-color);-webkit-mask-image:var(--md-annotation-bg-icon);mask-image:var(--md-annotation-bg-icon)}.md-annotation__index:after,.md-annotation__index:before{content:"";height:2.2ch;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:-.1ch;width:2.2ch;z-index:-1}.md-annotation__index:after{background-color:var(--md-default-fg-color--lighter);-webkit-mask-image:var(--md-annotation-icon);mask-image:var(--md-annotation-icon);transform:scale(1.0001);transition:background-color .25s,transform .25s}.md-tooltip--active+.md-annotation__index:after{transform:rotate(45deg)}.md-tooltip--active+.md-annotation__index:after,:hover>.md-annotation__index:after{background-color:var(--md-accent-fg-color)}}.md-tooltip--active+.md-annotation__index{animation-play-state:paused;transition-duration:0ms;z-index:2}.md-annotation__index [data-md-annotation-id]{display:inline-block}@media print{.md-annotation__index [data-md-annotation-id]{background:var(--md-default-fg-color--lighter);border-radius:2ch;color:var(--md-default-bg-color);font-weight:700;padding:0 .6ch;white-space:nowrap}.md-annotation__index [data-md-annotation-id]:after{content:attr(data-md-annotation-id)}}.md-typeset .md-annotation-list{counter-reset:xxx;list-style:none}.md-typeset .md-annotation-list li{position:relative}[dir=ltr] .md-typeset .md-annotation-list li:before{left:-2.125em}[dir=rtl] .md-typeset .md-annotation-list li:before{right:-2.125em}.md-typeset .md-annotation-list li:before{background:var(--md-default-fg-color--lighter);border-radius:2ch;color:var(--md-default-bg-color);content:counter(xxx);counter-increment:xxx;font-size:.8875em;font-weight:700;height:2ch;line-height:1.25;min-width:2ch;padding:0 .6ch;position:absolute;text-align:center;top:.25em}:root{--md-tooltip-width:20rem;--md-tooltip-tail:0.3rem}.md-tooltip2{-webkit-backface-visibility:hidden;backface-visibility:hidden;color:var(--md-default-fg-color);font-family:var(--md-text-font-family);opacity:0;pointer-events:none;position:absolute;top:calc(var(--md-tooltip-host-y) + var(--md-tooltip-y));transform:translateY(-.4rem);transform-origin:calc(var(--md-tooltip-host-x) + var(--md-tooltip-x)) 0;transition:transform 0ms .25s,opacity .25s,z-index .25s;width:100%;z-index:0}.md-tooltip2:before{border-left:var(--md-tooltip-tail) solid #0000;border-right:var(--md-tooltip-tail) solid #0000;content:"";display:block;left:clamp(1.5 * .8rem,var(--md-tooltip-host-x) + var(--md-tooltip-x) - var(--md-tooltip-tail),100vw - 2 * var(--md-tooltip-tail) - 1.5 * .8rem);position:absolute;z-index:1}.md-tooltip2--top:before{border-top:var(--md-tooltip-tail) solid var(--md-default-bg-color);bottom:calc(var(--md-tooltip-tail)*-1 + .025rem);filter:drop-shadow(0 1px 0 hsla(0,0%,0%,.05))}.md-tooltip2--bottom:before{border-bottom:var(--md-tooltip-tail) solid var(--md-default-bg-color);filter:drop-shadow(0 -1px 0 hsla(0,0%,0%,.05));top:calc(var(--md-tooltip-tail)*-1 + .025rem)}.md-tooltip2--active{opacity:1;transform:translateY(0);transition:transform .4s cubic-bezier(0,1,.5,1),opacity .25s,z-index 0ms;z-index:2}.md-tooltip2__inner{scrollbar-gutter:stable;background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);left:clamp(.8rem,var(--md-tooltip-host-x) - .8rem,100vw - var(--md-tooltip-width) - .8rem);max-height:40vh;max-width:calc(100vw - 1.6rem);position:relative;scrollbar-width:thin}.md-tooltip2__inner::-webkit-scrollbar{height:.2rem;width:.2rem}.md-tooltip2__inner::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-tooltip2__inner::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}[role=dialog]>.md-tooltip2__inner{font-size:.64rem;overflow:auto;padding:0 .8rem;pointer-events:auto;width:var(--md-tooltip-width)}[role=dialog]>.md-tooltip2__inner:after,[role=dialog]>.md-tooltip2__inner:before{content:"";display:block;height:.8rem;position:sticky;width:100%;z-index:10}[role=dialog]>.md-tooltip2__inner:before{background:linear-gradient(var(--md-default-bg-color),#0000 75%);top:0}[role=dialog]>.md-tooltip2__inner:after{background:linear-gradient(#0000,var(--md-default-bg-color) 75%);bottom:0}[role=tooltip]>.md-tooltip2__inner{font-size:.5rem;font-weight:700;left:clamp(.8rem,var(--md-tooltip-host-x) + var(--md-tooltip-x) - var(--md-tooltip-width)/2,100vw - var(--md-tooltip-width) - .8rem);max-width:min(100vw - 2 * .8rem,400px);padding:.2rem .4rem;-webkit-user-select:none;user-select:none;width:-moz-fit-content;width:fit-content}.md-tooltip2__inner.md-typeset>:first-child{margin-top:0}.md-tooltip2__inner.md-typeset>:last-child{margin-bottom:0}[dir=ltr] .md-top{margin-left:50%}[dir=rtl] .md-top{margin-right:50%}.md-top{background-color:var(--md-default-bg-color);border-radius:1.6rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color--light);cursor:pointer;display:block;font-size:.7rem;outline:none;padding:.4rem .8rem;position:fixed;top:3.2rem;transform:translate(-50%);transition:color 125ms,background-color 125ms,transform 125ms cubic-bezier(.4,0,.2,1),opacity 125ms;z-index:2}@media print{.md-top{display:none}}[dir=rtl] .md-top{transform:translate(50%)}.md-top[hidden]{opacity:0;pointer-events:none;transform:translate(-50%,.2rem);transition-duration:0ms}[dir=rtl] .md-top[hidden]{transform:translate(50%,.2rem)}.md-top:focus,.md-top:hover{background-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}.md-top svg{display:inline-block;vertical-align:-.5em}@keyframes hoverfix{0%{pointer-events:none}}:root{--md-version-icon:url('data:image/svg+xml;charset=utf-8,')}.md-version{flex-shrink:0;font-size:.8rem;height:2.4rem}[dir=ltr] .md-version__current{margin-left:1.4rem;margin-right:.4rem}[dir=rtl] .md-version__current{margin-left:.4rem;margin-right:1.4rem}.md-version__current{color:inherit;cursor:pointer;outline:none;position:relative;top:.05rem}[dir=ltr] .md-version__current:after{margin-left:.4rem}[dir=rtl] .md-version__current:after{margin-right:.4rem}.md-version__current:after{background-color:currentcolor;content:"";display:inline-block;height:.6rem;-webkit-mask-image:var(--md-version-icon);mask-image:var(--md-version-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.4rem}.md-version__alias{margin-left:.3rem;opacity:.7}.md-version__list{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);list-style-type:none;margin:.2rem .8rem;max-height:0;opacity:0;overflow:auto;padding:0;position:absolute;scroll-snap-type:y mandatory;top:.15rem;transition:max-height 0ms .5s,opacity .25s .25s;z-index:3}.md-version:focus-within .md-version__list,.md-version:hover .md-version__list{max-height:10rem;opacity:1;transition:max-height 0ms,opacity .25s}@media (hover:none),(pointer:coarse){.md-version:hover .md-version__list{animation:hoverfix .25s forwards}.md-version:focus-within .md-version__list{animation:none}}.md-version__item{line-height:1.8rem}[dir=ltr] .md-version__link{padding-left:.6rem;padding-right:1.2rem}[dir=rtl] .md-version__link{padding-left:1.2rem;padding-right:.6rem}.md-version__link{cursor:pointer;display:block;outline:none;scroll-snap-align:start;transition:color .25s,background-color .25s;white-space:nowrap;width:100%}.md-version__link:focus,.md-version__link:hover{color:var(--md-accent-fg-color)}.md-version__link:focus{background-color:var(--md-default-fg-color--lightest)}:root{--md-admonition-icon--note:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--abstract:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--info:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--tip:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--success:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--question:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--warning:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--failure:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--danger:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--bug:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--example:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--quote:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .admonition,.md-typeset details{background-color:var(--md-admonition-bg-color);border:.075rem solid #448aff;border-radius:.2rem;box-shadow:var(--md-shadow-z1);color:var(--md-admonition-fg-color);display:flow-root;font-size:.64rem;margin:1.5625em 0;padding:0 .6rem;page-break-inside:avoid;transition:box-shadow 125ms}@media print{.md-typeset .admonition,.md-typeset details{box-shadow:none}}.md-typeset .admonition:focus-within,.md-typeset details:focus-within{box-shadow:0 0 0 .2rem #448aff1a}.md-typeset .admonition>*,.md-typeset details>*{box-sizing:border-box}.md-typeset .admonition .admonition,.md-typeset .admonition details,.md-typeset details .admonition,.md-typeset details details{margin-bottom:1em;margin-top:1em}.md-typeset .admonition .md-typeset__scrollwrap,.md-typeset details .md-typeset__scrollwrap{margin:1em -.6rem}.md-typeset .admonition .md-typeset__table,.md-typeset details .md-typeset__table{padding:0 .6rem}.md-typeset .admonition>.tabbed-set:only-child,.md-typeset details>.tabbed-set:only-child{margin-top:0}html .md-typeset .admonition>:last-child,html .md-typeset details>:last-child{margin-bottom:.6rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{padding-left:2rem;padding-right:.6rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{padding-left:.6rem;padding-right:2rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{border-left-width:.2rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-right-width:.2rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary,[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-top-left-radius:.1rem}.md-typeset .admonition-title,.md-typeset summary{background-color:#448aff1a;border:none;font-weight:700;margin:0 -.6rem;padding-bottom:.4rem;padding-top:.4rem;position:relative}html .md-typeset .admonition-title:last-child,html .md-typeset summary:last-child{margin-bottom:0}[dir=ltr] .md-typeset .admonition-title:before,[dir=ltr] .md-typeset summary:before{left:.6rem}[dir=rtl] .md-typeset .admonition-title:before,[dir=rtl] .md-typeset summary:before{right:.6rem}.md-typeset .admonition-title:before,.md-typeset summary:before{background-color:#448aff;content:"";height:1rem;-webkit-mask-image:var(--md-admonition-icon--note);mask-image:var(--md-admonition-icon--note);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.625em;width:1rem}.md-typeset .admonition-title code,.md-typeset summary code{box-shadow:0 0 0 .05rem var(--md-default-fg-color--lightest)}.md-typeset .admonition.note,.md-typeset details.note{border-color:#448aff}.md-typeset .admonition.note:focus-within,.md-typeset details.note:focus-within{box-shadow:0 0 0 .2rem #448aff1a}.md-typeset .note>.admonition-title,.md-typeset .note>summary{background-color:#448aff1a}.md-typeset .note>.admonition-title:before,.md-typeset .note>summary:before{background-color:#448aff;-webkit-mask-image:var(--md-admonition-icon--note);mask-image:var(--md-admonition-icon--note)}.md-typeset .note>.admonition-title:after,.md-typeset .note>summary:after{color:#448aff}.md-typeset .admonition.abstract,.md-typeset details.abstract{border-color:#00b0ff}.md-typeset .admonition.abstract:focus-within,.md-typeset details.abstract:focus-within{box-shadow:0 0 0 .2rem #00b0ff1a}.md-typeset .abstract>.admonition-title,.md-typeset .abstract>summary{background-color:#00b0ff1a}.md-typeset .abstract>.admonition-title:before,.md-typeset .abstract>summary:before{background-color:#00b0ff;-webkit-mask-image:var(--md-admonition-icon--abstract);mask-image:var(--md-admonition-icon--abstract)}.md-typeset .abstract>.admonition-title:after,.md-typeset .abstract>summary:after{color:#00b0ff}.md-typeset .admonition.info,.md-typeset details.info{border-color:#00b8d4}.md-typeset .admonition.info:focus-within,.md-typeset details.info:focus-within{box-shadow:0 0 0 .2rem #00b8d41a}.md-typeset .info>.admonition-title,.md-typeset .info>summary{background-color:#00b8d41a}.md-typeset .info>.admonition-title:before,.md-typeset .info>summary:before{background-color:#00b8d4;-webkit-mask-image:var(--md-admonition-icon--info);mask-image:var(--md-admonition-icon--info)}.md-typeset .info>.admonition-title:after,.md-typeset .info>summary:after{color:#00b8d4}.md-typeset .admonition.tip,.md-typeset details.tip{border-color:#00bfa5}.md-typeset .admonition.tip:focus-within,.md-typeset details.tip:focus-within{box-shadow:0 0 0 .2rem #00bfa51a}.md-typeset .tip>.admonition-title,.md-typeset .tip>summary{background-color:#00bfa51a}.md-typeset .tip>.admonition-title:before,.md-typeset .tip>summary:before{background-color:#00bfa5;-webkit-mask-image:var(--md-admonition-icon--tip);mask-image:var(--md-admonition-icon--tip)}.md-typeset .tip>.admonition-title:after,.md-typeset .tip>summary:after{color:#00bfa5}.md-typeset .admonition.success,.md-typeset details.success{border-color:#00c853}.md-typeset .admonition.success:focus-within,.md-typeset details.success:focus-within{box-shadow:0 0 0 .2rem #00c8531a}.md-typeset .success>.admonition-title,.md-typeset .success>summary{background-color:#00c8531a}.md-typeset .success>.admonition-title:before,.md-typeset .success>summary:before{background-color:#00c853;-webkit-mask-image:var(--md-admonition-icon--success);mask-image:var(--md-admonition-icon--success)}.md-typeset .success>.admonition-title:after,.md-typeset .success>summary:after{color:#00c853}.md-typeset .admonition.question,.md-typeset details.question{border-color:#64dd17}.md-typeset .admonition.question:focus-within,.md-typeset details.question:focus-within{box-shadow:0 0 0 .2rem #64dd171a}.md-typeset .question>.admonition-title,.md-typeset .question>summary{background-color:#64dd171a}.md-typeset .question>.admonition-title:before,.md-typeset .question>summary:before{background-color:#64dd17;-webkit-mask-image:var(--md-admonition-icon--question);mask-image:var(--md-admonition-icon--question)}.md-typeset .question>.admonition-title:after,.md-typeset .question>summary:after{color:#64dd17}.md-typeset .admonition.warning,.md-typeset details.warning{border-color:#ff9100}.md-typeset .admonition.warning:focus-within,.md-typeset details.warning:focus-within{box-shadow:0 0 0 .2rem #ff91001a}.md-typeset .warning>.admonition-title,.md-typeset .warning>summary{background-color:#ff91001a}.md-typeset .warning>.admonition-title:before,.md-typeset .warning>summary:before{background-color:#ff9100;-webkit-mask-image:var(--md-admonition-icon--warning);mask-image:var(--md-admonition-icon--warning)}.md-typeset .warning>.admonition-title:after,.md-typeset .warning>summary:after{color:#ff9100}.md-typeset .admonition.failure,.md-typeset details.failure{border-color:#ff5252}.md-typeset .admonition.failure:focus-within,.md-typeset details.failure:focus-within{box-shadow:0 0 0 .2rem #ff52521a}.md-typeset .failure>.admonition-title,.md-typeset .failure>summary{background-color:#ff52521a}.md-typeset .failure>.admonition-title:before,.md-typeset .failure>summary:before{background-color:#ff5252;-webkit-mask-image:var(--md-admonition-icon--failure);mask-image:var(--md-admonition-icon--failure)}.md-typeset .failure>.admonition-title:after,.md-typeset .failure>summary:after{color:#ff5252}.md-typeset .admonition.danger,.md-typeset details.danger{border-color:#ff1744}.md-typeset .admonition.danger:focus-within,.md-typeset details.danger:focus-within{box-shadow:0 0 0 .2rem #ff17441a}.md-typeset .danger>.admonition-title,.md-typeset .danger>summary{background-color:#ff17441a}.md-typeset .danger>.admonition-title:before,.md-typeset .danger>summary:before{background-color:#ff1744;-webkit-mask-image:var(--md-admonition-icon--danger);mask-image:var(--md-admonition-icon--danger)}.md-typeset .danger>.admonition-title:after,.md-typeset .danger>summary:after{color:#ff1744}.md-typeset .admonition.bug,.md-typeset details.bug{border-color:#f50057}.md-typeset .admonition.bug:focus-within,.md-typeset details.bug:focus-within{box-shadow:0 0 0 .2rem #f500571a}.md-typeset .bug>.admonition-title,.md-typeset .bug>summary{background-color:#f500571a}.md-typeset .bug>.admonition-title:before,.md-typeset .bug>summary:before{background-color:#f50057;-webkit-mask-image:var(--md-admonition-icon--bug);mask-image:var(--md-admonition-icon--bug)}.md-typeset .bug>.admonition-title:after,.md-typeset .bug>summary:after{color:#f50057}.md-typeset .admonition.example,.md-typeset details.example{border-color:#7c4dff}.md-typeset .admonition.example:focus-within,.md-typeset details.example:focus-within{box-shadow:0 0 0 .2rem #7c4dff1a}.md-typeset .example>.admonition-title,.md-typeset .example>summary{background-color:#7c4dff1a}.md-typeset .example>.admonition-title:before,.md-typeset .example>summary:before{background-color:#7c4dff;-webkit-mask-image:var(--md-admonition-icon--example);mask-image:var(--md-admonition-icon--example)}.md-typeset .example>.admonition-title:after,.md-typeset .example>summary:after{color:#7c4dff}.md-typeset .admonition.quote,.md-typeset details.quote{border-color:#9e9e9e}.md-typeset .admonition.quote:focus-within,.md-typeset details.quote:focus-within{box-shadow:0 0 0 .2rem #9e9e9e1a}.md-typeset .quote>.admonition-title,.md-typeset .quote>summary{background-color:#9e9e9e1a}.md-typeset .quote>.admonition-title:before,.md-typeset .quote>summary:before{background-color:#9e9e9e;-webkit-mask-image:var(--md-admonition-icon--quote);mask-image:var(--md-admonition-icon--quote)}.md-typeset .quote>.admonition-title:after,.md-typeset .quote>summary:after{color:#9e9e9e}:root{--md-footnotes-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .footnote{color:var(--md-default-fg-color--light);font-size:.64rem}[dir=ltr] .md-typeset .footnote>ol{margin-left:0}[dir=rtl] .md-typeset .footnote>ol{margin-right:0}.md-typeset .footnote>ol>li{transition:color 125ms}.md-typeset .footnote>ol>li:target{color:var(--md-default-fg-color)}.md-typeset .footnote>ol>li:focus-within .footnote-backref{opacity:1;transform:translateX(0);transition:none}.md-typeset .footnote>ol>li:hover .footnote-backref,.md-typeset .footnote>ol>li:target .footnote-backref{opacity:1;transform:translateX(0)}.md-typeset .footnote>ol>li>:first-child{margin-top:0}.md-typeset .footnote-ref{font-size:.75em;font-weight:700}html .md-typeset .footnote-ref{outline-offset:.1rem}.md-typeset [id^="fnref:"]:target>.footnote-ref{outline:auto}.md-typeset .footnote-backref{color:var(--md-typeset-a-color);display:inline-block;font-size:0;opacity:0;transform:translateX(.25rem);transition:color .25s,transform .25s .25s,opacity 125ms .25s;vertical-align:text-bottom}@media print{.md-typeset .footnote-backref{color:var(--md-typeset-a-color);opacity:1;transform:translateX(0)}}[dir=rtl] .md-typeset .footnote-backref{transform:translateX(-.25rem)}.md-typeset .footnote-backref:hover{color:var(--md-accent-fg-color)}.md-typeset .footnote-backref:before{background-color:currentcolor;content:"";display:inline-block;height:.8rem;-webkit-mask-image:var(--md-footnotes-icon);mask-image:var(--md-footnotes-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.8rem}[dir=rtl] .md-typeset .footnote-backref:before svg{transform:scaleX(-1)}[dir=ltr] .md-typeset .headerlink{margin-left:.5rem}[dir=rtl] .md-typeset .headerlink{margin-right:.5rem}.md-typeset .headerlink{color:var(--md-default-fg-color--lighter);display:inline-block;opacity:0;transition:color .25s,opacity 125ms}@media print{.md-typeset .headerlink{display:none}}.md-typeset .headerlink:focus,.md-typeset :hover>.headerlink,.md-typeset :target>.headerlink{opacity:1;transition:color .25s,opacity 125ms}.md-typeset .headerlink:focus,.md-typeset .headerlink:hover,.md-typeset :target>.headerlink{color:var(--md-accent-fg-color)}.md-typeset :target{--md-scroll-margin:3.6rem;--md-scroll-offset:0rem;scroll-margin-top:calc(var(--md-scroll-margin) - var(--md-scroll-offset))}@media screen and (min-width:76.25em){.md-header--lifted~.md-container .md-typeset :target{--md-scroll-margin:6rem}}.md-typeset h1:target,.md-typeset h2:target,.md-typeset h3:target{--md-scroll-offset:0.2rem}.md-typeset h4:target{--md-scroll-offset:0.15rem}.md-typeset div.arithmatex{overflow:auto}@media screen and (max-width:44.984375em){.md-typeset div.arithmatex{margin:0 -.8rem}.md-typeset div.arithmatex>*{width:min-content}}.md-typeset div.arithmatex>*{margin-left:auto!important;margin-right:auto!important;padding:0 .8rem;touch-action:auto}.md-typeset div.arithmatex>* mjx-container{margin:0!important}.md-typeset div.arithmatex mjx-assistive-mml{height:0}.md-typeset del.critic{background-color:var(--md-typeset-del-color)}.md-typeset del.critic,.md-typeset ins.critic{-webkit-box-decoration-break:clone;box-decoration-break:clone}.md-typeset ins.critic{background-color:var(--md-typeset-ins-color)}.md-typeset .critic.comment{-webkit-box-decoration-break:clone;box-decoration-break:clone;color:var(--md-code-hl-comment-color)}.md-typeset .critic.comment:before{content:"/* "}.md-typeset .critic.comment:after{content:" */"}.md-typeset .critic.block{box-shadow:none;display:block;margin:1em 0;overflow:auto;padding-left:.8rem;padding-right:.8rem}.md-typeset .critic.block>:first-child{margin-top:.5em}.md-typeset .critic.block>:last-child{margin-bottom:.5em}:root{--md-details-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset details{display:flow-root;overflow:visible;padding-top:0}.md-typeset details[open]>summary:after{transform:rotate(90deg)}.md-typeset details:not([open]){box-shadow:none;padding-bottom:0}.md-typeset details:not([open])>summary{border-radius:.1rem}[dir=ltr] .md-typeset summary{padding-right:1.8rem}[dir=rtl] .md-typeset summary{padding-left:1.8rem}[dir=ltr] .md-typeset summary{border-top-left-radius:.1rem}[dir=ltr] .md-typeset summary,[dir=rtl] .md-typeset summary{border-top-right-radius:.1rem}[dir=rtl] .md-typeset summary{border-top-left-radius:.1rem}.md-typeset summary{cursor:pointer;display:block;min-height:1rem;overflow:hidden}.md-typeset summary.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-typeset summary:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}[dir=ltr] .md-typeset summary:after{right:.4rem}[dir=rtl] .md-typeset summary:after{left:.4rem}.md-typeset summary:after{background-color:currentcolor;content:"";height:1rem;-webkit-mask-image:var(--md-details-icon);mask-image:var(--md-details-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.625em;transform:rotate(0deg);transition:transform .25s;width:1rem}[dir=rtl] .md-typeset summary:after{transform:rotate(180deg)}.md-typeset summary::marker{display:none}.md-typeset summary::-webkit-details-marker{display:none}.md-typeset .emojione,.md-typeset .gemoji,.md-typeset .twemoji{--md-icon-size:1.125em;display:inline-flex;height:var(--md-icon-size);vertical-align:text-top}.md-typeset .emojione svg,.md-typeset .gemoji svg,.md-typeset .twemoji svg{fill:currentcolor;max-height:100%;width:var(--md-icon-size)}.md-typeset .lg,.md-typeset .xl,.md-typeset .xxl,.md-typeset .xxxl{vertical-align:text-bottom}.md-typeset .middle{vertical-align:middle}.md-typeset .lg{--md-icon-size:1.5em}.md-typeset .xl{--md-icon-size:2.25em}.md-typeset .xxl{--md-icon-size:3em}.md-typeset .xxxl{--md-icon-size:4em}.highlight .o,.highlight .ow{color:var(--md-code-hl-operator-color)}.highlight .p{color:var(--md-code-hl-punctuation-color)}.highlight .cpf,.highlight .l,.highlight .s,.highlight .s1,.highlight .s2,.highlight .sb,.highlight .sc,.highlight .si,.highlight .ss{color:var(--md-code-hl-string-color)}.highlight .cp,.highlight .se,.highlight .sh,.highlight .sr,.highlight .sx{color:var(--md-code-hl-special-color)}.highlight .il,.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo{color:var(--md-code-hl-number-color)}.highlight .k,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt{color:var(--md-code-hl-keyword-color)}.highlight .kc,.highlight .n{color:var(--md-code-hl-name-color)}.highlight .bp,.highlight .nb,.highlight .no{color:var(--md-code-hl-constant-color)}.highlight .nc,.highlight .ne,.highlight .nf,.highlight .nn{color:var(--md-code-hl-function-color)}.highlight .nd,.highlight .ni,.highlight .nl,.highlight .nt{color:var(--md-code-hl-keyword-color)}.highlight .c,.highlight .c1,.highlight .ch,.highlight .cm,.highlight .cs,.highlight .sd{color:var(--md-code-hl-comment-color)}.highlight .na,.highlight .nv,.highlight .vc,.highlight .vg,.highlight .vi{color:var(--md-code-hl-variable-color)}.highlight .ge,.highlight .gh,.highlight .go,.highlight .gp,.highlight .gr,.highlight .gs,.highlight .gt,.highlight .gu{color:var(--md-code-hl-generic-color)}.highlight .gd,.highlight .gi{border-radius:.1rem;margin:0 -.125em;padding:0 .125em}.highlight .gd{background-color:var(--md-typeset-del-color)}.highlight .gi{background-color:var(--md-typeset-ins-color)}.highlight .hll{background-color:var(--md-code-hl-color--light);box-shadow:2px 0 0 0 var(--md-code-hl-color) inset;display:block;margin:0 -1.1764705882em;padding:0 1.1764705882em}.highlight span.filename{background-color:var(--md-code-bg-color);border-bottom:.05rem solid var(--md-default-fg-color--lightest);border-top-left-radius:.1rem;border-top-right-radius:.1rem;display:flow-root;font-size:.85em;font-weight:700;margin-top:1em;padding:.6617647059em 1.1764705882em;position:relative}.highlight span.filename+pre{margin-top:0}.highlight span.filename+pre>code{border-top-left-radius:0;border-top-right-radius:0}.highlight [data-linenos]:before{background-color:var(--md-code-bg-color);box-shadow:-.05rem 0 var(--md-default-fg-color--lightest) inset;color:var(--md-default-fg-color--light);content:attr(data-linenos);float:left;left:-1.1764705882em;margin-left:-1.1764705882em;margin-right:1.1764705882em;padding-left:1.1764705882em;position:sticky;-webkit-user-select:none;user-select:none;z-index:3}.highlight code a[id]{position:absolute;visibility:hidden}.highlight code[data-md-copying]{display:initial}.highlight code[data-md-copying] .hll{display:contents}.highlight code[data-md-copying] .md-annotation{display:none}.highlighttable{display:flow-root}.highlighttable tbody,.highlighttable td{display:block;padding:0}.highlighttable tr{display:flex}.highlighttable pre{margin:0}.highlighttable th.filename{flex-grow:1;padding:0;text-align:left}.highlighttable th.filename span.filename{margin-top:0}.highlighttable .linenos{background-color:var(--md-code-bg-color);border-bottom-left-radius:.1rem;border-top-left-radius:.1rem;font-size:.85em;padding:.7720588235em 0 .7720588235em 1.1764705882em;-webkit-user-select:none;user-select:none}.highlighttable .linenodiv{box-shadow:-.05rem 0 var(--md-default-fg-color--lightest) inset}.highlighttable .linenodiv pre{color:var(--md-default-fg-color--light);text-align:right}.highlighttable .linenodiv span[class]{padding-right:.5882352941em}.highlighttable .code{flex:1;min-width:0}.linenodiv a{color:inherit}.md-typeset .highlighttable{direction:ltr;margin:1em 0}.md-typeset .highlighttable>tbody>tr>.code>div>pre>code{border-bottom-left-radius:0;border-top-left-radius:0}.md-typeset .highlight+.result{border:.05rem solid var(--md-code-bg-color);border-bottom-left-radius:.1rem;border-bottom-right-radius:.1rem;border-top-width:.1rem;margin-top:-1.125em;overflow:visible;padding:0 1em}.md-typeset .highlight+.result:after{clear:both;content:"";display:block}@media screen and (max-width:44.984375em){.md-content__inner>.highlight{margin:1em -.8rem}.md-content__inner>.highlight>.filename,.md-content__inner>.highlight>.highlighttable>tbody>tr>.code>div>pre>code,.md-content__inner>.highlight>.highlighttable>tbody>tr>.filename span.filename,.md-content__inner>.highlight>.highlighttable>tbody>tr>.linenos,.md-content__inner>.highlight>pre>code{border-radius:0}.md-content__inner>.highlight+.result{border-left-width:0;border-radius:0;border-right-width:0;margin-left:-.8rem;margin-right:-.8rem}}.md-typeset .keys kbd:after,.md-typeset .keys kbd:before{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;color:inherit;margin:0;position:relative}.md-typeset .keys span{color:var(--md-default-fg-color--light);padding:0 .2em}.md-typeset .keys .key-alt:before,.md-typeset .keys .key-left-alt:before,.md-typeset .keys .key-right-alt:before{content:"⎇";padding-right:.4em}.md-typeset .keys .key-command:before,.md-typeset .keys .key-left-command:before,.md-typeset .keys .key-right-command:before{content:"⌘";padding-right:.4em}.md-typeset .keys .key-control:before,.md-typeset .keys .key-left-control:before,.md-typeset .keys .key-right-control:before{content:"⌃";padding-right:.4em}.md-typeset .keys .key-left-meta:before,.md-typeset .keys .key-meta:before,.md-typeset .keys .key-right-meta:before{content:"◆";padding-right:.4em}.md-typeset .keys .key-left-option:before,.md-typeset .keys .key-option:before,.md-typeset .keys .key-right-option:before{content:"⌥";padding-right:.4em}.md-typeset .keys .key-left-shift:before,.md-typeset .keys .key-right-shift:before,.md-typeset .keys .key-shift:before{content:"⇧";padding-right:.4em}.md-typeset .keys .key-left-super:before,.md-typeset .keys .key-right-super:before,.md-typeset .keys .key-super:before{content:"❖";padding-right:.4em}.md-typeset .keys .key-left-windows:before,.md-typeset .keys .key-right-windows:before,.md-typeset .keys .key-windows:before{content:"⊞";padding-right:.4em}.md-typeset .keys .key-arrow-down:before{content:"↓";padding-right:.4em}.md-typeset .keys .key-arrow-left:before{content:"←";padding-right:.4em}.md-typeset .keys .key-arrow-right:before{content:"→";padding-right:.4em}.md-typeset .keys .key-arrow-up:before{content:"↑";padding-right:.4em}.md-typeset .keys .key-backspace:before{content:"⌫";padding-right:.4em}.md-typeset .keys .key-backtab:before{content:"⇤";padding-right:.4em}.md-typeset .keys .key-caps-lock:before{content:"⇪";padding-right:.4em}.md-typeset .keys .key-clear:before{content:"⌧";padding-right:.4em}.md-typeset .keys .key-context-menu:before{content:"☰";padding-right:.4em}.md-typeset .keys .key-delete:before{content:"⌦";padding-right:.4em}.md-typeset .keys .key-eject:before{content:"⏏";padding-right:.4em}.md-typeset .keys .key-end:before{content:"⤓";padding-right:.4em}.md-typeset .keys .key-escape:before{content:"⎋";padding-right:.4em}.md-typeset .keys .key-home:before{content:"⤒";padding-right:.4em}.md-typeset .keys .key-insert:before{content:"⎀";padding-right:.4em}.md-typeset .keys .key-page-down:before{content:"⇟";padding-right:.4em}.md-typeset .keys .key-page-up:before{content:"⇞";padding-right:.4em}.md-typeset .keys .key-print-screen:before{content:"⎙";padding-right:.4em}.md-typeset .keys .key-tab:after{content:"⇥";padding-left:.4em}.md-typeset .keys .key-num-enter:after{content:"⌤";padding-left:.4em}.md-typeset .keys .key-enter:after{content:"⏎";padding-left:.4em}:root{--md-tabbed-icon--prev:url('data:image/svg+xml;charset=utf-8,');--md-tabbed-icon--next:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .tabbed-set{border-radius:.1rem;display:flex;flex-flow:column wrap;margin:1em 0;position:relative}.md-typeset .tabbed-set>input{height:0;opacity:0;position:absolute;width:0}.md-typeset .tabbed-set>input:target{--md-scroll-offset:0.625em}.md-typeset .tabbed-set>input.focus-visible~.tabbed-labels:before{background-color:var(--md-accent-fg-color)}.md-typeset .tabbed-labels{-ms-overflow-style:none;box-shadow:0 -.05rem var(--md-default-fg-color--lightest) inset;display:flex;max-width:100%;overflow:auto;scrollbar-width:none}@media print{.md-typeset .tabbed-labels{display:contents}}@media screen{.js .md-typeset .tabbed-labels{position:relative}.js .md-typeset .tabbed-labels:before{background:var(--md-default-fg-color);bottom:0;content:"";display:block;height:2px;left:0;position:absolute;transform:translateX(var(--md-indicator-x));transition:width 225ms,background-color .25s,transform .25s;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--md-indicator-width)}}.md-typeset .tabbed-labels::-webkit-scrollbar{display:none}.md-typeset .tabbed-labels>label{border-bottom:.1rem solid #0000;border-radius:.1rem .1rem 0 0;color:var(--md-default-fg-color--light);cursor:pointer;flex-shrink:0;font-size:.64rem;font-weight:700;padding:.78125em 1.25em .625em;scroll-margin-inline-start:1rem;transition:background-color .25s,color .25s;white-space:nowrap;width:auto}@media print{.md-typeset .tabbed-labels>label:first-child{order:1}.md-typeset .tabbed-labels>label:nth-child(2){order:2}.md-typeset .tabbed-labels>label:nth-child(3){order:3}.md-typeset .tabbed-labels>label:nth-child(4){order:4}.md-typeset .tabbed-labels>label:nth-child(5){order:5}.md-typeset .tabbed-labels>label:nth-child(6){order:6}.md-typeset .tabbed-labels>label:nth-child(7){order:7}.md-typeset .tabbed-labels>label:nth-child(8){order:8}.md-typeset .tabbed-labels>label:nth-child(9){order:9}.md-typeset .tabbed-labels>label:nth-child(10){order:10}.md-typeset .tabbed-labels>label:nth-child(11){order:11}.md-typeset .tabbed-labels>label:nth-child(12){order:12}.md-typeset .tabbed-labels>label:nth-child(13){order:13}.md-typeset .tabbed-labels>label:nth-child(14){order:14}.md-typeset .tabbed-labels>label:nth-child(15){order:15}.md-typeset .tabbed-labels>label:nth-child(16){order:16}.md-typeset .tabbed-labels>label:nth-child(17){order:17}.md-typeset .tabbed-labels>label:nth-child(18){order:18}.md-typeset .tabbed-labels>label:nth-child(19){order:19}.md-typeset .tabbed-labels>label:nth-child(20){order:20}}.md-typeset .tabbed-labels>label:hover{color:var(--md-default-fg-color)}.md-typeset .tabbed-labels>label>[href]:first-child{color:inherit}.md-typeset .tabbed-labels--linked>label{padding:0}.md-typeset .tabbed-labels--linked>label>a{display:block;padding:.78125em 1.25em .625em}.md-typeset .tabbed-content{width:100%}@media print{.md-typeset .tabbed-content{display:contents}}.md-typeset .tabbed-block{display:none}@media print{.md-typeset .tabbed-block{display:block}.md-typeset .tabbed-block:first-child{order:1}.md-typeset .tabbed-block:nth-child(2){order:2}.md-typeset .tabbed-block:nth-child(3){order:3}.md-typeset .tabbed-block:nth-child(4){order:4}.md-typeset .tabbed-block:nth-child(5){order:5}.md-typeset .tabbed-block:nth-child(6){order:6}.md-typeset .tabbed-block:nth-child(7){order:7}.md-typeset .tabbed-block:nth-child(8){order:8}.md-typeset .tabbed-block:nth-child(9){order:9}.md-typeset .tabbed-block:nth-child(10){order:10}.md-typeset .tabbed-block:nth-child(11){order:11}.md-typeset .tabbed-block:nth-child(12){order:12}.md-typeset .tabbed-block:nth-child(13){order:13}.md-typeset .tabbed-block:nth-child(14){order:14}.md-typeset .tabbed-block:nth-child(15){order:15}.md-typeset .tabbed-block:nth-child(16){order:16}.md-typeset .tabbed-block:nth-child(17){order:17}.md-typeset .tabbed-block:nth-child(18){order:18}.md-typeset .tabbed-block:nth-child(19){order:19}.md-typeset .tabbed-block:nth-child(20){order:20}}.md-typeset .tabbed-block>.highlight:first-child>pre,.md-typeset .tabbed-block>pre:first-child{margin:0}.md-typeset .tabbed-block>.highlight:first-child>pre>code,.md-typeset .tabbed-block>pre:first-child>code{border-top-left-radius:0;border-top-right-radius:0}.md-typeset .tabbed-block>.highlight:first-child>.filename{border-top-left-radius:0;border-top-right-radius:0;margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable{margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.filename span.filename,.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.linenos{border-top-left-radius:0;border-top-right-radius:0;margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.code>div>pre>code{border-top-left-radius:0;border-top-right-radius:0}.md-typeset .tabbed-block>.highlight:first-child+.result{margin-top:-.125em}.md-typeset .tabbed-block>.tabbed-set{margin:0}.md-typeset .tabbed-button{align-self:center;border-radius:100%;color:var(--md-default-fg-color--light);cursor:pointer;display:block;height:.9rem;margin-top:.1rem;pointer-events:auto;transition:background-color .25s;width:.9rem}.md-typeset .tabbed-button:hover{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-typeset .tabbed-button:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-tabbed-icon--prev);mask-image:var(--md-tabbed-icon--prev);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color .25s,transform .25s;width:100%}.md-typeset .tabbed-control{background:linear-gradient(to right,var(--md-default-bg-color) 60%,#0000);display:flex;height:1.9rem;justify-content:start;pointer-events:none;position:absolute;transition:opacity 125ms;width:1.2rem}[dir=rtl] .md-typeset .tabbed-control{transform:rotate(180deg)}.md-typeset .tabbed-control[hidden]{opacity:0}.md-typeset .tabbed-control--next{background:linear-gradient(to left,var(--md-default-bg-color) 60%,#0000);justify-content:end;right:0}.md-typeset .tabbed-control--next .tabbed-button:after{-webkit-mask-image:var(--md-tabbed-icon--next);mask-image:var(--md-tabbed-icon--next)}@media screen and (max-width:44.984375em){[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels{padding-left:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels{padding-right:.8rem}.md-content__inner>.tabbed-set .tabbed-labels{margin:0 -.8rem;max-width:100vw;scroll-padding-inline-start:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels:after{padding-right:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels:after{padding-left:.8rem}.md-content__inner>.tabbed-set .tabbed-labels:after{content:""}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{padding-left:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{padding-right:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{margin-left:-.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{margin-right:-.8rem}.md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{width:2rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{padding-right:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{padding-left:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{margin-right:-.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{margin-left:-.8rem}.md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{width:2rem}}@media screen{.md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9){color:var(--md-default-fg-color)}.md-typeset .no-js .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.md-typeset .no-js .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.md-typeset .no-js .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.md-typeset .no-js .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.md-typeset .no-js .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.md-typeset .no-js .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.md-typeset .no-js .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.md-typeset .no-js .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.md-typeset .no-js .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.md-typeset .no-js .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.md-typeset .no-js .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.md-typeset .no-js .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.md-typeset .no-js .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.md-typeset .no-js .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.md-typeset .no-js .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.md-typeset .no-js .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.md-typeset .no-js .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.md-typeset .no-js .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.md-typeset .no-js .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.md-typeset .no-js .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9),.md-typeset [role=dialog] .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.md-typeset [role=dialog] .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.md-typeset [role=dialog] .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.md-typeset [role=dialog] .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.md-typeset [role=dialog] .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.md-typeset [role=dialog] .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.md-typeset [role=dialog] .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.md-typeset [role=dialog] .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.md-typeset [role=dialog] .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.md-typeset [role=dialog] .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.md-typeset [role=dialog] .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.md-typeset [role=dialog] .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.md-typeset [role=dialog] .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.md-typeset [role=dialog] .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.md-typeset [role=dialog] .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.md-typeset [role=dialog] .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.md-typeset [role=dialog] .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.md-typeset [role=dialog] .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.md-typeset [role=dialog] .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.md-typeset [role=dialog] .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9),.no-js .md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.no-js .md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.no-js .md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.no-js .md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.no-js .md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.no-js .md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.no-js .md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.no-js .md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.no-js .md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.no-js .md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.no-js .md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.no-js .md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.no-js .md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.no-js .md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.no-js .md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.no-js .md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.no-js .md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.no-js .md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.no-js .md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.no-js .md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9),[role=dialog] .md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,[role=dialog] .md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),[role=dialog] .md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),[role=dialog] .md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),[role=dialog] .md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),[role=dialog] .md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),[role=dialog] .md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),[role=dialog] .md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),[role=dialog] .md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),[role=dialog] .md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),[role=dialog] .md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),[role=dialog] .md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),[role=dialog] .md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),[role=dialog] .md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),[role=dialog] .md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),[role=dialog] .md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),[role=dialog] .md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),[role=dialog] .md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),[role=dialog] .md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),[role=dialog] .md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9){border-color:var(--md-default-fg-color)}}.md-typeset .tabbed-set>input:first-child.focus-visible~.tabbed-labels>:first-child,.md-typeset .tabbed-set>input:nth-child(10).focus-visible~.tabbed-labels>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11).focus-visible~.tabbed-labels>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12).focus-visible~.tabbed-labels>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13).focus-visible~.tabbed-labels>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14).focus-visible~.tabbed-labels>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15).focus-visible~.tabbed-labels>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16).focus-visible~.tabbed-labels>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17).focus-visible~.tabbed-labels>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18).focus-visible~.tabbed-labels>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19).focus-visible~.tabbed-labels>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2).focus-visible~.tabbed-labels>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20).focus-visible~.tabbed-labels>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3).focus-visible~.tabbed-labels>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4).focus-visible~.tabbed-labels>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5).focus-visible~.tabbed-labels>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6).focus-visible~.tabbed-labels>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7).focus-visible~.tabbed-labels>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8).focus-visible~.tabbed-labels>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9).focus-visible~.tabbed-labels>:nth-child(9){color:var(--md-accent-fg-color)}.md-typeset .tabbed-set>input:first-child:checked~.tabbed-content>:first-child,.md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-content>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-content>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-content>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-content>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-content>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-content>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-content>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-content>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-content>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-content>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-content>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-content>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-content>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-content>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-content>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-content>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-content>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-content>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-content>:nth-child(9){display:block}:root{--md-tasklist-icon:url('data:image/svg+xml;charset=utf-8,');--md-tasklist-icon--checked:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .task-list-item{list-style-type:none;position:relative}[dir=ltr] .md-typeset .task-list-item [type=checkbox]{left:-2em}[dir=rtl] .md-typeset .task-list-item [type=checkbox]{right:-2em}.md-typeset .task-list-item [type=checkbox]{position:absolute;top:.45em}.md-typeset .task-list-control [type=checkbox]{opacity:0;z-index:-1}[dir=ltr] .md-typeset .task-list-indicator:before{left:-1.5em}[dir=rtl] .md-typeset .task-list-indicator:before{right:-1.5em}.md-typeset .task-list-indicator:before{background-color:var(--md-default-fg-color--lightest);content:"";height:1.25em;-webkit-mask-image:var(--md-tasklist-icon);mask-image:var(--md-tasklist-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.15em;width:1.25em}.md-typeset [type=checkbox]:checked+.task-list-indicator:before{background-color:#00e676;-webkit-mask-image:var(--md-tasklist-icon--checked);mask-image:var(--md-tasklist-icon--checked)}@media print{.giscus,[id=__comments]{display:none}}:root>*{--md-mermaid-font-family:var(--md-text-font-family),sans-serif;--md-mermaid-edge-color:var(--md-code-fg-color);--md-mermaid-node-bg-color:var(--md-accent-fg-color--transparent);--md-mermaid-node-fg-color:var(--md-accent-fg-color);--md-mermaid-label-bg-color:var(--md-default-bg-color);--md-mermaid-label-fg-color:var(--md-code-fg-color);--md-mermaid-sequence-actor-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-actor-fg-color:var(--md-mermaid-label-fg-color);--md-mermaid-sequence-actor-border-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-actor-line-color:var(--md-default-fg-color--lighter);--md-mermaid-sequence-actorman-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-actorman-line-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-box-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-box-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-label-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-label-fg-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-loop-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-loop-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-loop-border-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-message-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-message-line-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-note-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-note-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-note-border-color:var(--md-mermaid-label-fg-color);--md-mermaid-sequence-number-bg-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-number-fg-color:var(--md-accent-bg-color)}.mermaid{line-height:normal;margin:1em 0}.md-typeset .grid{grid-gap:.4rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));margin:1em 0}.md-typeset .grid.cards>ol,.md-typeset .grid.cards>ul{display:contents}.md-typeset .grid.cards>ol>li,.md-typeset .grid.cards>ul>li,.md-typeset .grid>.card{border:.05rem solid var(--md-default-fg-color--lightest);border-radius:.1rem;display:block;margin:0;padding:.8rem;transition:border .25s,box-shadow .25s}.md-typeset .grid.cards>ol>li:focus-within,.md-typeset .grid.cards>ol>li:hover,.md-typeset .grid.cards>ul>li:focus-within,.md-typeset .grid.cards>ul>li:hover,.md-typeset .grid>.card:focus-within,.md-typeset .grid>.card:hover{border-color:#0000;box-shadow:var(--md-shadow-z2)}.md-typeset .grid.cards>ol>li>hr,.md-typeset .grid.cards>ul>li>hr,.md-typeset .grid>.card>hr{margin-bottom:1em;margin-top:1em}.md-typeset .grid.cards>ol>li>:first-child,.md-typeset .grid.cards>ul>li>:first-child,.md-typeset .grid>.card>:first-child{margin-top:0}.md-typeset .grid.cards>ol>li>:last-child,.md-typeset .grid.cards>ul>li>:last-child,.md-typeset .grid>.card>:last-child{margin-bottom:0}.md-typeset .grid>*,.md-typeset .grid>.admonition,.md-typeset .grid>.highlight>*,.md-typeset .grid>.highlighttable,.md-typeset .grid>.md-typeset details,.md-typeset .grid>details,.md-typeset .grid>pre{margin-bottom:0;margin-top:0}.md-typeset .grid>.highlight>pre:only-child,.md-typeset .grid>.highlight>pre>code,.md-typeset .grid>.highlighttable,.md-typeset .grid>.highlighttable>tbody,.md-typeset .grid>.highlighttable>tbody>tr,.md-typeset .grid>.highlighttable>tbody>tr>.code,.md-typeset .grid>.highlighttable>tbody>tr>.code>.highlight,.md-typeset .grid>.highlighttable>tbody>tr>.code>.highlight>pre,.md-typeset .grid>.highlighttable>tbody>tr>.code>.highlight>pre>code{height:100%}.md-typeset .grid>.tabbed-set{margin-bottom:0;margin-top:0}@media screen and (min-width:45em){[dir=ltr] .md-typeset .inline{float:left}[dir=rtl] .md-typeset .inline{float:right}[dir=ltr] .md-typeset .inline{margin-right:.8rem}[dir=rtl] .md-typeset .inline{margin-left:.8rem}.md-typeset .inline{margin-bottom:.8rem;margin-top:0;width:11.7rem}[dir=ltr] .md-typeset .inline.end{float:right}[dir=rtl] .md-typeset .inline.end{float:left}[dir=ltr] .md-typeset .inline.end{margin-left:.8rem;margin-right:0}[dir=rtl] .md-typeset .inline.end{margin-left:0;margin-right:.8rem}} \ No newline at end of file diff --git a/assets/stylesheets/palette.ab4e12ef.min.css b/assets/stylesheets/palette.ab4e12ef.min.css new file mode 100644 index 0000000..75aaf84 --- /dev/null +++ b/assets/stylesheets/palette.ab4e12ef.min.css @@ -0,0 +1 @@ +@media screen{[data-md-color-scheme=slate]{--md-default-fg-color:hsla(var(--md-hue),15%,90%,0.82);--md-default-fg-color--light:hsla(var(--md-hue),15%,90%,0.56);--md-default-fg-color--lighter:hsla(var(--md-hue),15%,90%,0.32);--md-default-fg-color--lightest:hsla(var(--md-hue),15%,90%,0.12);--md-default-bg-color:hsla(var(--md-hue),15%,14%,1);--md-default-bg-color--light:hsla(var(--md-hue),15%,14%,0.54);--md-default-bg-color--lighter:hsla(var(--md-hue),15%,14%,0.26);--md-default-bg-color--lightest:hsla(var(--md-hue),15%,14%,0.07);--md-code-fg-color:hsla(var(--md-hue),18%,86%,0.82);--md-code-bg-color:hsla(var(--md-hue),15%,18%,1);--md-code-bg-color--light:hsla(var(--md-hue),15%,18%,0.9);--md-code-bg-color--lighter:hsla(var(--md-hue),15%,18%,0.54);--md-code-hl-color:#2977ff;--md-code-hl-color--light:#2977ff1a;--md-code-hl-number-color:#e6695b;--md-code-hl-special-color:#f06090;--md-code-hl-function-color:#c973d9;--md-code-hl-constant-color:#9383e2;--md-code-hl-keyword-color:#6791e0;--md-code-hl-string-color:#2fb170;--md-code-hl-name-color:var(--md-code-fg-color);--md-code-hl-operator-color:var(--md-default-fg-color--light);--md-code-hl-punctuation-color:var(--md-default-fg-color--light);--md-code-hl-comment-color:var(--md-default-fg-color--light);--md-code-hl-generic-color:var(--md-default-fg-color--light);--md-code-hl-variable-color:var(--md-default-fg-color--light);--md-typeset-color:var(--md-default-fg-color);--md-typeset-a-color:var(--md-primary-fg-color);--md-typeset-kbd-color:hsla(var(--md-hue),15%,90%,0.12);--md-typeset-kbd-accent-color:hsla(var(--md-hue),15%,90%,0.2);--md-typeset-kbd-border-color:hsla(var(--md-hue),15%,14%,1);--md-typeset-mark-color:#4287ff4d;--md-typeset-table-color:hsla(var(--md-hue),15%,95%,0.12);--md-typeset-table-color--light:hsla(var(--md-hue),15%,95%,0.035);--md-admonition-fg-color:var(--md-default-fg-color);--md-admonition-bg-color:var(--md-default-bg-color);--md-footer-bg-color:hsla(var(--md-hue),15%,10%,0.87);--md-footer-bg-color--dark:hsla(var(--md-hue),15%,8%,1);--md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a;--md-shadow-z2:0 0.2rem 0.5rem #00000040,0 0 0.05rem #00000040;--md-shadow-z3:0 0.2rem 0.5rem #0006,0 0 0.05rem #00000059;color-scheme:dark}[data-md-color-scheme=slate] img[src$="#gh-light-mode-only"],[data-md-color-scheme=slate] img[src$="#only-light"]{display:none}[data-md-color-scheme=slate][data-md-color-primary=pink]{--md-typeset-a-color:#ed5487}[data-md-color-scheme=slate][data-md-color-primary=purple]{--md-typeset-a-color:#c46fd3}[data-md-color-scheme=slate][data-md-color-primary=deep-purple]{--md-typeset-a-color:#a47bea}[data-md-color-scheme=slate][data-md-color-primary=indigo]{--md-typeset-a-color:#5488e8}[data-md-color-scheme=slate][data-md-color-primary=teal]{--md-typeset-a-color:#00ccb8}[data-md-color-scheme=slate][data-md-color-primary=green]{--md-typeset-a-color:#71c174}[data-md-color-scheme=slate][data-md-color-primary=deep-orange]{--md-typeset-a-color:#ff764d}[data-md-color-scheme=slate][data-md-color-primary=brown]{--md-typeset-a-color:#c1775c}[data-md-color-scheme=slate][data-md-color-primary=black],[data-md-color-scheme=slate][data-md-color-primary=blue-grey],[data-md-color-scheme=slate][data-md-color-primary=grey],[data-md-color-scheme=slate][data-md-color-primary=white]{--md-typeset-a-color:#5e8bde}[data-md-color-switching] *,[data-md-color-switching] :after,[data-md-color-switching] :before{transition-duration:0ms!important}}[data-md-color-accent=red]{--md-accent-fg-color:#ff1947;--md-accent-fg-color--transparent:#ff19471a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=pink]{--md-accent-fg-color:#f50056;--md-accent-fg-color--transparent:#f500561a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=purple]{--md-accent-fg-color:#df41fb;--md-accent-fg-color--transparent:#df41fb1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=deep-purple]{--md-accent-fg-color:#7c4dff;--md-accent-fg-color--transparent:#7c4dff1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=indigo]{--md-accent-fg-color:#526cfe;--md-accent-fg-color--transparent:#526cfe1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=blue]{--md-accent-fg-color:#4287ff;--md-accent-fg-color--transparent:#4287ff1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=light-blue]{--md-accent-fg-color:#0091eb;--md-accent-fg-color--transparent:#0091eb1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=cyan]{--md-accent-fg-color:#00bad6;--md-accent-fg-color--transparent:#00bad61a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=teal]{--md-accent-fg-color:#00bda4;--md-accent-fg-color--transparent:#00bda41a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=green]{--md-accent-fg-color:#00c753;--md-accent-fg-color--transparent:#00c7531a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=light-green]{--md-accent-fg-color:#63de17;--md-accent-fg-color--transparent:#63de171a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=lime]{--md-accent-fg-color:#b0eb00;--md-accent-fg-color--transparent:#b0eb001a;--md-accent-bg-color:#000000de;--md-accent-bg-color--light:#0000008a}[data-md-color-accent=yellow]{--md-accent-fg-color:#ffd500;--md-accent-fg-color--transparent:#ffd5001a;--md-accent-bg-color:#000000de;--md-accent-bg-color--light:#0000008a}[data-md-color-accent=amber]{--md-accent-fg-color:#fa0;--md-accent-fg-color--transparent:#ffaa001a;--md-accent-bg-color:#000000de;--md-accent-bg-color--light:#0000008a}[data-md-color-accent=orange]{--md-accent-fg-color:#ff9100;--md-accent-fg-color--transparent:#ff91001a;--md-accent-bg-color:#000000de;--md-accent-bg-color--light:#0000008a}[data-md-color-accent=deep-orange]{--md-accent-fg-color:#ff6e42;--md-accent-fg-color--transparent:#ff6e421a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-primary=red]{--md-primary-fg-color:#ef5552;--md-primary-fg-color--light:#e57171;--md-primary-fg-color--dark:#e53734;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=pink]{--md-primary-fg-color:#e92063;--md-primary-fg-color--light:#ec417a;--md-primary-fg-color--dark:#c3185d;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=purple]{--md-primary-fg-color:#ab47bd;--md-primary-fg-color--light:#bb69c9;--md-primary-fg-color--dark:#8c24a8;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=deep-purple]{--md-primary-fg-color:#7e56c2;--md-primary-fg-color--light:#9574cd;--md-primary-fg-color--dark:#673ab6;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=indigo]{--md-primary-fg-color:#4051b5;--md-primary-fg-color--light:#5d6cc0;--md-primary-fg-color--dark:#303fa1;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=blue]{--md-primary-fg-color:#2094f3;--md-primary-fg-color--light:#42a5f5;--md-primary-fg-color--dark:#1975d2;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=light-blue]{--md-primary-fg-color:#02a6f2;--md-primary-fg-color--light:#28b5f6;--md-primary-fg-color--dark:#0287cf;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=cyan]{--md-primary-fg-color:#00bdd6;--md-primary-fg-color--light:#25c5da;--md-primary-fg-color--dark:#0097a8;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=teal]{--md-primary-fg-color:#009485;--md-primary-fg-color--light:#26a699;--md-primary-fg-color--dark:#007a6c;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=green]{--md-primary-fg-color:#4cae4f;--md-primary-fg-color--light:#68bb6c;--md-primary-fg-color--dark:#398e3d;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=light-green]{--md-primary-fg-color:#8bc34b;--md-primary-fg-color--light:#9ccc66;--md-primary-fg-color--dark:#689f38;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=lime]{--md-primary-fg-color:#cbdc38;--md-primary-fg-color--light:#d3e156;--md-primary-fg-color--dark:#b0b52c;--md-primary-bg-color:#000000de;--md-primary-bg-color--light:#0000008a}[data-md-color-primary=yellow]{--md-primary-fg-color:#ffec3d;--md-primary-fg-color--light:#ffee57;--md-primary-fg-color--dark:#fbc02d;--md-primary-bg-color:#000000de;--md-primary-bg-color--light:#0000008a}[data-md-color-primary=amber]{--md-primary-fg-color:#ffc105;--md-primary-fg-color--light:#ffc929;--md-primary-fg-color--dark:#ffa200;--md-primary-bg-color:#000000de;--md-primary-bg-color--light:#0000008a}[data-md-color-primary=orange]{--md-primary-fg-color:#ffa724;--md-primary-fg-color--light:#ffa724;--md-primary-fg-color--dark:#fa8900;--md-primary-bg-color:#000000de;--md-primary-bg-color--light:#0000008a}[data-md-color-primary=deep-orange]{--md-primary-fg-color:#ff6e42;--md-primary-fg-color--light:#ff8a66;--md-primary-fg-color--dark:#f4511f;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=brown]{--md-primary-fg-color:#795649;--md-primary-fg-color--light:#8d6e62;--md-primary-fg-color--dark:#5d4037;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=grey]{--md-primary-fg-color:#757575;--md-primary-fg-color--light:#9e9e9e;--md-primary-fg-color--dark:#616161;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3;--md-typeset-a-color:#4051b5}[data-md-color-primary=blue-grey]{--md-primary-fg-color:#546d78;--md-primary-fg-color--light:#607c8a;--md-primary-fg-color--dark:#455a63;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3;--md-typeset-a-color:#4051b5}[data-md-color-primary=light-green]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#72ad2e}[data-md-color-primary=lime]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#8b990a}[data-md-color-primary=yellow]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#b8a500}[data-md-color-primary=amber]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#d19d00}[data-md-color-primary=orange]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#e68a00}[data-md-color-primary=white]{--md-primary-fg-color:hsla(var(--md-hue),0%,100%,1);--md-primary-fg-color--light:hsla(var(--md-hue),0%,100%,0.7);--md-primary-fg-color--dark:hsla(var(--md-hue),0%,0%,0.07);--md-primary-bg-color:hsla(var(--md-hue),0%,0%,0.87);--md-primary-bg-color--light:hsla(var(--md-hue),0%,0%,0.54);--md-typeset-a-color:#4051b5}[data-md-color-primary=white] .md-button{color:var(--md-typeset-a-color)}[data-md-color-primary=white] .md-button--primary{background-color:var(--md-typeset-a-color);border-color:var(--md-typeset-a-color);color:hsla(var(--md-hue),0%,100%,1)}@media screen and (min-width:60em){[data-md-color-primary=white] .md-search__form{background-color:hsla(var(--md-hue),0%,0%,.07)}[data-md-color-primary=white] .md-search__form:hover{background-color:hsla(var(--md-hue),0%,0%,.32)}[data-md-color-primary=white] .md-search__input+.md-search__icon{color:hsla(var(--md-hue),0%,0%,.87)}}@media screen and (min-width:76.25em){[data-md-color-primary=white] .md-tabs{border-bottom:.05rem solid #00000012}}[data-md-color-primary=black]{--md-primary-fg-color:hsla(var(--md-hue),15%,9%,1);--md-primary-fg-color--light:hsla(var(--md-hue),15%,9%,0.54);--md-primary-fg-color--dark:hsla(var(--md-hue),15%,9%,1);--md-primary-bg-color:hsla(var(--md-hue),15%,100%,1);--md-primary-bg-color--light:hsla(var(--md-hue),15%,100%,0.7);--md-typeset-a-color:#4051b5}[data-md-color-primary=black] .md-button{color:var(--md-typeset-a-color)}[data-md-color-primary=black] .md-button--primary{background-color:var(--md-typeset-a-color);border-color:var(--md-typeset-a-color);color:hsla(var(--md-hue),0%,100%,1)}[data-md-color-primary=black] .md-header{background-color:hsla(var(--md-hue),15%,9%,1)}@media screen and (max-width:59.984375em){[data-md-color-primary=black] .md-nav__source{background-color:hsla(var(--md-hue),15%,11%,.87)}}@media screen and (max-width:76.234375em){html [data-md-color-primary=black] .md-nav--primary .md-nav__title[for=__drawer]{background-color:hsla(var(--md-hue),15%,9%,1)}}@media screen and (min-width:76.25em){[data-md-color-primary=black] .md-tabs{background-color:hsla(var(--md-hue),15%,9%,1)}} \ No newline at end of file diff --git a/blog/2024/01/31/hello-world/index.html b/blog/2024/01/31/hello-world/index.html new file mode 100644 index 0000000..f5d7a19 --- /dev/null +++ b/blog/2024/01/31/hello-world/index.html @@ -0,0 +1,600 @@ + + + + + + + + + + + + +Hello world! - Stephan Hadan + + + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Hello world!

    +

    Hi ho!

    + +

    Kommentare

    + + + + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/blog/index.html b/blog/index.html new file mode 100644 index 0000000..502c6d7 --- /dev/null +++ b/blog/index.html @@ -0,0 +1,515 @@ + + + + + + + + + + + + + +Blog - Stephan Hadan + + + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    +

    Blog

    +
    +
    +
    + + +
    +
    +

    Hello world!

    +

    Hi ho!

    +
    +
    + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/changelog/index.html b/changelog/index.html new file mode 100644 index 0000000..1979034 --- /dev/null +++ b/changelog/index.html @@ -0,0 +1,528 @@ + + + + + + + + + + + + + + +Changelog - Stephan Hadan + + + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    + +

    Changelog

    +

    + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/changelog/index.pdf b/changelog/index.pdf new file mode 100644 index 0000000000000000000000000000000000000000..23d50d68a9c46786e9fe493b8f8b9c01563713e5 GIT binary patch literal 70274 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 x&j+Ars6j4;vgn3_M8t5Sx9 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

    3lbG7)uu!lwY9? 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 + + + + + + + + + + + + + +Kontakt - Stephan Hadan + + + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    + +
    +
    +

    Kontakt

    +

    Nachstehend biete ich verschiedene Kontaktmöglichkeiten an, wie ich erreicht werden kann.

    +

    Postalisch

    +

    Stephan Hadan
    +Salierstr. 8
    +75177 Pforzheim

    +

    Telefonisch und via Telefax

    +

    Telefon: +49 7231 13 32 952
    +Telefax: +49 7231 13 32 95 29

    +

    E-Mail

    +

    E-Mail: stephan@hadan.de

    +

    Messenger / Kommunikationsplattformen

    +

    Selbstverständlich kann eine Kontaktaufnahme auch durch Einladung via Microsoft Teams, Google Meet, Webex oder Zoom erfolgen. Daneben bin ich über folgende Messengersysteme bzw. Kommunikationsplattformen erreichbar.

    +

    Gitter (Matrix)

    +

    Gitter ist eine Chat- und Networking-Plattform, die dabei hilft, Gemeinschaften durch Nachrichten, Inhalte und Entdeckungen zu verwalten, zu vergrößern und zu verbinden. Gitter basiert auf Matrix, einem offenen Netzwerk für sichere, dezentralisierte Kommunikation.

    +

    Kontaktaufnahme: https://matrix.to/#/@stiebke:gitter.im

    +

    Session

    +

    Session ist ein Ende-zu-Ende-verschlüsselter Messenger, der sensible Metadaten auf ein Minimum reduziert und für Menschen entwickelt wurde, die absolute Privatsphäre und Freiheit von jeglicher Form der Überwachung wünschen.

    +

    Meine Session Account ID: 054ba57d875dafef81edc7575a5de147e73e673bb632d413b4f36494b8d7fd6134

    +

    QR Code zum Einscannen in der Session App

    +

    Signal

    +

    Signal ist ein verschlüsselter Open-Source-Nachrichtendienst für Sofortnachrichten, Sprachanrufe und Videoanrufe. Die Sofortnachrichtenfunktion umfasst das Senden von Text, Sprachnotizen, Bildern, Videos und anderen Dateien. Die Kommunikation kann zwischen einzelnen Benutzern oder in Gruppen erfolgen.

    +

    Kontaktaufnahme: einen entsprechenden QR-Code oder einen Link stelle ich auf Anfrage bereit.

    +

    Slack

    +

    Slack ist eine Cloud-basierte Team-Kommunikationsplattform, die von Slack Technologies entwickelt wurde, das seit 2020 zu Salesforce gehört. Slack nutzt ein Freemium-Modell. Slack wird in erster Linie als Business-to-Business-Dienst angeboten, wobei die Nutzerbasis überwiegend aus teambasierten Unternehmen besteht und die Funktionen sich in erster Linie auf die Unternehmensverwaltung und -kommunikation konzentrieren.

    +

    Link zum Profil: https://hadanit.slack.com/team/U04BLKQF2M8

    +

    Entwicklerplattformen

    +

    GitHub

    +

    GitHub ist eine proprietäre Entwicklerplattform, die es Entwicklern ermöglicht, ihren Code zu erstellen, zu speichern, zu verwalten und zu teilen. Es verwendet Git für die verteilte Versionskontrolle und Github selbst bietet Zugriffskontrolle, Fehlerverfolgung, Software-Feature-Anfragen, Aufgabenmanagement, kontinuierliche Integration und Wikis für jedes Projekt. Github hat seinen Hauptsitz in Kalifornien und ist seit 2018 eine Tochtergesellschaft von Microsoft.

    +

    Link zum Profil: https://github.com/stiebke

    +

    Soziale Netzwerke

    +

    Bluesky

    +

    Bluesky ist ein Microblogging-Dienst für soziale Medien. Ähnlich wie bei Twitter können die Nutzer kurze Textnachrichten, Bilder und Videos in kurzen Beiträgen teilen, die umgangssprachlich als „Skeets“ bezeichnet werden. Eigentümer ist Bluesky Social PBC, eine gemeinnützige Gesellschaft mit Sitz in den Vereinigten Staaten.

    +

    Link zum Profil: https://bsky.app/profile/stiebke.bsky.social

    +

    LinkedIn

    +

    LinkedIn ist eine auf Unternehmen und Beschäftigung ausgerichtete Social-Media-Plattform, die über Websites und mobile Apps funktioniert. Sie wurde am 5. Mai 2003 von Reid Hoffman und Eric Ly gegründet. Seit Dezember 2016 ist LinkedIn eine hundertprozentige Tochtergesellschaft von Microsoft. Die Plattform dient in erster Linie dem beruflichen Networking und der Karriereentwicklung und ermöglicht es Arbeitssuchenden, ihren Lebenslauf einzustellen, und Arbeitgebern, Stellenanzeigen zu veröffentlichen.

    +

    Link zum Profil: https://de.linkedin.com/in/stiebke

    +

    Mastodon

    +

    Mastodon ist ein quelloffener, selbstgehosteter sozialer Netzwerkdienst. Mastodon verwendet das ActivityPub-Protokoll für die Föderation, das es den Benutzern ermöglicht, zwischen unabhängigen Mastodon-Instanzen und anderen ActivityPub-kompatiblen Diensten zu kommunizieren. Mastodon verfügt über Microblogging-Funktionen, die denen von Twitter ähneln, und wird allgemein als Teil des Fediverse betrachtet.

    +

    Link zum Profil: https://freiburg.social/@stiebke

    +

    X (nicht aktiv)

    +
    +

    Hinweis

    +

    Da ich mit den Meinungen von Elon Musk nicht übereinstimme und seine Machenschaften und antidemokratischen Auswüchse nicht unterstützen möchte, transferiere ich allmählich meine Kontakte zu Bluesky und/oder Mastodon. Danach werde ich mein X-Profil stilllegen.

    +
    +

    Twitter, seit Juli 2023 offiziell als X bekannt, ist ein sozialer Netzwerkdienst. Es ist eine der größten Social-Media-Plattformen der Welt und eine der meistbesuchten Websites. Nutzer können kurze Textnachrichten, Bilder und Videos in kurzen Beiträgen teilen, die gemeinhin als „Tweets“ (offiziell „Posts“) bezeichnet werden, und die Inhalte anderer Nutzer mögen. Die Plattform umfasst auch Direktnachrichten, Video- und Audioanrufe, Lesezeichen, Listen, Communities, einen Chatbot (Grok), eine Jobsuche und Spaces, eine soziale Audiofunktion. Die Nutzer können über die Funktion Community Notes über den Kontext abstimmen, der von zugelassenen Nutzern hinzugefügt wurde.

    +

    Link zum Profil: https://x.com/hadan72

    +

    XING

    +

    XING ist ein karriereorientiertes Social-Networking-Portal mit Sitz in Hamburg, das von der New Work SE (bis Mitte 2019 XING SE) betrieben wird und mehrheitlich Hubert Burda Media gehört. Die Seite ist neben XING Spanien vor allem auf den deutschsprachigen Markt ausgerichtet und konkurriert mit der amerikanischen Plattform LinkedIn.

    +

    Link zum Profil: https://www.xing.com/profile/Stephan_Hadan

    + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/cv/index.html b/cv/index.html new file mode 100644 index 0000000..00f4d9b --- /dev/null +++ b/cv/index.html @@ -0,0 +1,768 @@ + + + + + + + + + + + + + + +Lebenslauf - Stephan Hadan + + + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    + +
    +
    +
    +
    + +

    Lebenslauf

    +

    Online-Lebenslauf

    +

    Den Lebenslauf findet man ebenbso online unter https://resume.hadan.de/stephan.hadan/mein-lebenslauf.

    +

    Persönliche Daten

    +

    Stephan Hadan
    +*25. Juni 1972 in Pforzheim, deutsch, ledig

    +

    Kontaktdaten

    +

    Salierstraße 8
    +75177 Pforzheim
    +stephan@hadan.de
    ++49 7231 13 32 952

    +

    Berufserfahrung

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ZeitraumBeschreibung
    09/2023-11/2024Experience One AG, Stuttgart
    Director IT / Senior Principal IT Operations Engineer
    11/2018-08/2023Experience One AG, Stuttgart
    Teamlead IT Operations / Senior IT Operations Engineer
    08/2012-10/2018Experience One AG, Stuttgart
    Senior IT Operations Engineer
    06/2010-07/2012Omikron Data Quality GmbH, Pforzheim
    Leiter IT-Administration
    10/2009-05/2010Omikron Data Quality GmbH, Pforzheim
    stv. Teamleiter IT-Administration
    07/2008-09/2008Bundesanstalt Technisches Hilfswerk
    Gast-Dozent für Junghelferlehrgänge
    01/2008-08/2012Stephan Hadan IT-Services
    Freelancertätigkeit
    07/2007-12/2007B & Q activ GmbH
    Weiterbildung
    02/2007-06/2007Hermann A. Trautz Schmuckwarenfabrik GmbH i.L., Pforzheim
    EDV-Leiter im Liquidationsteam
    06/1999-01/2007Hermann A. Trautz Schmuckwarenfabrik GmbH, Pforzheim
    EDV-Leiter
    09/1994-04/1999Creazione Monasso Schmuckwaren GmbH, Pforzheim
    Kaufmännischer Angestellter
    +

    Ausbildung

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    ZeitraumBeschreibung
    09/1994-07/1996Ausbildungsbetrieb: Creazione Monasso Schmuckwaren GmbH, Pforzheim
    Prüfung: IHK Nordschwarzwald
    Abschluß: Industriekaufmann
    10/1992-08/1994Universität Karlsruhe
    Studiengang: Informatik
    kein Abschluß
    09/1983-09/1992Kepler-Gymnasium Pforzheim
    Abschluß: Allgemeine Hochschulreife
    09/1979-08/1983Haidachschule Pforzheim (Grundschule)
    +

    Weiterbildungen

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    JahrWeiterbildung
    2023ISO/IEC 27002:2022 Update - PSW Training
    2022Site Reliability Engineering (SRE) Foundation - SERVIEW
    2022Datenschutz für IT-Mitarbeiter und IT-Leitung - TüV Rheinland
    2019ISO/IEC 27001 Officer - PSW Training
    2019ISO/IEC 27001 Foundation - PSW Training
    2014ITIL Foundation Zertifizierung - SERVIEW
    2007SAP R/3-Kurs FI - MKT
    2007SAP R/3-Übersichtskurs - MKT
    2005Zollbegünstigter Export - Warenursprung und Präferenzrecht - IHK Nordschwarzwald
    +

    Weitere Fähigkeiten und Kenntnisse

    + + + + + + + + + + + + + + + + + +
    FähigkeitBeschreibung
    SprachkenntnisseDeutsch, Muttersprache
    Englisch, fließend in Wort und Schrift
    FührerscheinKlassen: BE, C1E
    + + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/cv/index.pdf b/cv/index.pdf new file mode 100644 index 0000000000000000000000000000000000000000..071d97d779c3af41c923d132dae980a1011cf84d GIT binary patch literal 105054 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 x&j+Ars6j4;vgn3_M8 zt5Sx9?Np5{QbfwUkDTqzk2SiGtjc|=-={a)6xd1Dh~4*1L!bNd@u{19H>2360s*o7 zbw324Gr6qqhD*Nyi9)$4GVwC%#TuXDQ~M*ogdd=S@v<26?fAN#iL%U9eLP;&e}%Rw zN2TU8Q>wZUM5PoAGqkb>lyZ%6+aZ;l=r%BxeJC?N)4P5@PaXx**ChuEG=(mNGL2MX zd>xt54PVIjO;M?RgZdfrb6jI5kEntya5~akL6mZ~5iBV;&J`Zr@F~Szu=PTvl6Vte z8;ekx>skH!QnJ#gG_qB**x(gL*>mqU51n*P+}6UoHDQXSzn%z-cW65&L~ z{iLJpeN%7Zm;Cd=`>%1_%JpRzr$k)nkKV}h9KRutrrq`YJWqVcAD}BN=f@AVz>>+S zu%uMh7*%;KsQyG}*K9)2)GS$7yBl)9>wuy+VVQMpxaVao%qsQ4@{?mXv z+tbrG#JJ&GdJ8pEf<5rs7`H3)Y){P3!`QpjgY0SUMXqi-iciC(yuFd#RX^vLL)HuF z6}oS)ES$Xb;hSq>t~F@YjAE?dXsc3{IP!$-=ImdKrfRZLax2H9#Xl1*JBje= z2FZGpV9zx0g{ed0mk^bM5!Cv-EdtTE7<<=xAsT6R^WafIDi4y^lI?w_Y z%3AchU(|!t@E<%e4Jt%!n#EL@CBl}J92K{6Lq6W*JNu>{r#c^sxXfr?lt%I5&P79cTl}=sJ(!DehbIIua+>r|LYY_=7Rfvxf5&){OkI zhz{Li)mmBP7$}@@7Dl(dpjYA@z*`f5MJswe7L>aCUW?A%F52+y#T%w2Y7KM0%Nnih z<3+=AomTP+oBZaKoZk08$i8p@uYB1W9$@Y?vwGa|k`ly;0;ngn2GV&o!huKqr`K0DDO;iM#E;{uH`7%0M1gbG<;MuiVU?LdW z=1?0HyEptY8HTc-0K>UsMC!v=Y|vfF-e!Lesh!Y?N&N=Wj*#EHUvs^X_dM z#-paB^H8($Cz( zrneR+8fV>CdkG@INk*?~*;VGQ2Wc)nhjA8dknu#?pEon`?Z+2Cs<|Ly=wNNgSnbhX zjqf0jw(rv#X*d3cN*$ey&!}U^z%FQ!JlI?|?s}7jni-so7krm{))2mjuGO>>)i0+| zudx!PEoc2&&6qS6L1^;5Hgirz(pTOWaBmHyo}iRx>(6ey)!xViU8J;sQ_>K^iFnK_ z=e)c=iBbBdx+%r(XksIk^)FW>?NaV72e!rrB6NO0knIX|7JyyBz*$86ScGUohv1AJ zEn7f(*u8YdoziF2EEFVR^+`o=(rUaUBH3_2oI)|maqqw1MWwRRJH_nDwq1CVv^~kA zUH{XN?Z7wN8(Eb#(3rzTu^D{6Cjb=6xuiQWA&6Mc4CCklzrCOaaih zcO=Myy#2YB3K*1X-#Mvy^FxJOD{1tN>0-uwyt7;}Tk<7+Coik;A}|}S^&TJsuTe7% zANpfsinu;0X(rF1p$2UuE*>5izx#Z8CfWC{C{nt_u$qw&`B9!XMKFbQ?mVbYS(-p zzNnuuk8|me4E{~yq6=8sq!U*B7Nk-_BjR?@&v~ExsM_nte#)Q-u zP>OS=ALJ~>1_kc*ipZ*7Cgr!6gXa~8RO@y|1@3=t9iSVFw1_~4TK5n-B$gSLe;*sD z>Dd>QO^P{dpw$)$ba8MEEeRk$Fs0{1rABeR+zR_a)~)lje(MLkjBfas&WBWzYOAIdOmj+SQlnf`3}# zgKaoOAN)|2;%b`>3~@+2f8o0P6*NKhR3v$z&AyjALcS}P$&8JHWEySHZpbM(M?0jOqq9cJX);Mo5Q;7qr z_bL(Jvk7)}^}iGwS5ty=yrfd!wD&>^Xr56FiZfCqM$+>I`R-6h-P3msM~+Hc#gD~S z#mrS)K>a*kM14-2cKn|9Y~*F9tx7IoM!n!VZ}{QPP7x4Yg5GxHBga?Rf(-cvkBklkxYHhuOO18724Aw zR=D2Tm%A#S$E{o2Ky-|)Egw1#?gOt>CaSuXtNx%<7^!-R6X}W#nTb`WH-9#%!yupo z0f?V8H*jxOrHl?L^xbdNl~cH@Ps_YV-TvaU`y-{fs*{<(?-pVb03VNmJr#2aRXV?1 z30pWRXYXGtHXz^CO&5r9b+|?OtDcZ}oEx+kpZ+4oYL~b;Tr@Q~+kURY_^hgZcWkjh zTw(k9;d-GDpIS8imaXA}Z4&6orrPs`I-m6nM>29x(S{gZ|Ik6O{T+-Inh@L*QD9E> zqIN>Y>#m9=>gl)CPsHc#?2d01#^%EV`I<~68H{7ytrRtfyPwg4dY)+3v%<@%z4M8G zyO;I;bNiKQN-%Kn;p40ODBkhuKtGBRu;iC6Laz(7CA(DP7Q1MqZ3jR}cWQ&Vm4Dol z7t!xY)DtUkW!*PbO;cuY=WysFcPn3P_(VgO)#Oz3iXRb19@i-UaoVxQh9hFndwoee$I)IF!d51!SO5rxTX}YAfbG!36~VW)ky?5J)09shSuT#_KOe37D6F!OmQ@u9AcSD) z0q7wsIpFu&?Y3-)8$Es={F({_GvAL(8VIJuSn}N*$*OFD7hTAs&SxDzF`$$wy^7^^ zR2UYbL^2TM$%kWFT}jy6$gvZKVguB)BbPp(sl}g1FZW+t;kYL=%dNs$_M0=IHszzEy@-gS7{u>pRZx|H+N+Z#byOyW1? zlCVTn#c127B`ZezN9MIlMRdYH7*4x>*H@Q=9FF$1?#X2WXHx`oRbW7JP!Gm6Ur@53 z^>{bUEht4Rt>{@{YK-l5dHS@%Ouh;eRo?(Zok?;@bK|a_zHs0sRzSRsq}?fgq3l-Z z*#wd@4)j4M=v3oo%wf!Tr&|GZb5YB#bhCvtMFs^w84bfQ-F#wgDg#C|zpI$j+>fTT zK=ygxV$O@@y!{{%pbYLy`Nkgc`|>nnr3RnY{V8S(A39k7G77`FHe`zY4V~>Ny`D>2 zDp{p^bJ6!e6NAbj?*8IV&$oyEnT8DkFo-TgRg8%#&jHE{241UQ_o!&4&HDvdXA9X* z718;dhdUn<5P;pXQV&*rbj`{9D!J4_*6PYie!G~e^p@R=SqJ5Msuxn_MXJfUt3KV` zU#js;O}Mz*EXi*r@+%_smI&eZ3|2nzb@dS}5dyXwMbn?`OEqpa2F$H;lT^`+x$a|G zHyEiM#Q}gakrXeid8uSSb0snyxDqk)%;alur*VoN!Qq|9QB!Wj9XVI5Tagk871T%y)X7WcC}$; zTJD*XVpEER{@%q$({t4YTYjoy&lc2-q6!iiu{D3>!cfFpQ|rNgkzbB2j=O+U;?%1z zDT~;iu1`+M`jZHzcn7Whib$h}5kKHF-t;deJwX=dhg{H2 zqsO_w9+$J%PT(K=iMzkeeJf8=jSmL)(j^ojS*A#l_wE$CIj%V&KMwRSJ_efb*CU*w zCB3@Pcb(~4U4$6+&>I+K|0XKmqOpi^xH>}#07c=@ruQp8$@gfJD+JDraOZYmdfF$r zpo1^y01;+b1*#wVF0C|mOMYZH+ndfjzghzfYW>Di1CqD|G;o`*9?z=yIts_Hx4?9M z1#FcEa!{uhB z$X;=6*?W(yi>zytz1OwZwXgm89pB$Sa9!{BIj`62`FuXkx%c(D`U?^>UbmH!!6Agm zkZ}&iISn_g+~E}{t9B%O_Otz854hR9PKrGhFvYKGqkGC8vOzs;q`ZMFsSBar?ifK; z5l6U;kRwCDSkNov>p0^m-~9i!SB>|Z1$KMqm@E1IQZjdUG7(6$M>t$Q94-n*UB-t< z!f0UCH^DDtRs3c@|0~sxRwZ1^@GcGd7}}(!_t7=TdA5GF{Lg*Kp@(bK{5_`rf-2Va z_e`b!w5t(l5p?&zQ~1^N;(>6;>`tmJ1Fks8706O=_g@%0!TZV;F3>(` zpGVNdHb(*_$9;@=lqZ&bYk|AbQ$~Um3`{M+$<@L=n*7N5A?S6c$lr^QCNqSN9tujK zN84a_@+(O`vZ=>7YZNUnBKFa!>`Fd$v*t5u>cD?gX$U=*l~Nl#`_c_8s`# zxR0;@Q|N-_-CB1isL*wQl4Mi1fT;p*lv5~i$xi zUkIy#37zxrohbq%s{u{tN=T}Ki;6+z%LH1flKbc}R4k}IU0=X>$l*LtG(~>R`PY|4 z=ex&b^WVrf%RrJ|Lx6PbASHo~npRr`i3>%EyQW#0wf<_d#|4JIw|)L^$6q0zT41Zd zh*l9vEE8g+T*}ep8v(**c82sBFI;z~$5rLl^p4sISff6`ZIaSKJ=nrT?C$V&1dG-+0;Gj)@XEb4(^F&W`FN34kG%aIt90ZrRDEmP3v2cjGDK;{L@e8^9N z<_5vr<a-|=Kqs!g60#7-fgZ^913hyMGl~3?46~CrR0IHvw8x{Ibcmmi> z3cSDZw^uFvy}9!hY_@aFgq;bl7FhFlVISagRXQA1KjmK0nmZ_+avS_j%MBbu6+bNC5P7b1`b4!XwtrVQKxSv++#aXdpHvxvZV0j*(6R^ z|3%HMcWo!T-9h!&@EF)+!&u)jJ$)irKXdaD$GD0xFkuE9T)hS%|0rFL48GJli^o=x zapm#O^e?mfE>SxQfvD_k?@|xwA?b9`gdO`t|ED`>M&#Y@B_v_l_o`#h_>k}_p^jc{ z*nCL+bZsYL>L4u4u~9%62v-{N$fh^;@0Rk8@8Crz>55SH^oKvm4|Qy;0?qx~TE;~D z2ZQGkM)XsHv-r1L$dL7NM;>_3shDNUF<(sd*Q_2k>kC;^AT3q?_ZDJnzl=-=Igo&a ziG-Jqek8Lv4dfm-AhZksvwC+wpT360rL=cyaaxEO_j0!-C{7kmAgs7Njty~s68^?5 zlcP@mUYH?a-4rh5<5QOedR_|iZA-6tgoBem$~>t7yo|z!N9-V#p<@GjX(L{Q{AvE>-k>weL2%Bsn6yr=51k4@UnMW%Y?0-EEu1H+|@iz|R12>M+=taa_ zh1+sci?28LAPjhcA+-XB9z_?3vhT@IFl4w@#}Qx+C1zg;9CW-mz_yLcAdrb81yzM% zzY)$Q=ZoDqk$pqZtzBp*Ydh5*bIE&QIl;l`wXAgjL78#W)SQh8l_&XcUxx>vf3lki zU&VbaCYz{@PILMC&R%HiqxLeQ9+U~T3M$46*`wY8!)Wu*HmO$aYjArUy{==B@y`g6 zM~1U4cUM~|qaGMk$~{Slo#nVrKe&JM=@+V_x1Vc?y9ggvNe-S@TE5h11UoPQeyV~d z4W?k=z=D5)&s#%ojJ3hHu8+8aLnh{Qox=;EX~V~^;lbUl2v+4aB+-R>^eQ05fhyNo~Ifxiiqxy9AT|dBW8;Z-*a#OK;=oB2~@?Y{jZ1^ekmbTm-MgevqFfN zPZAZJR@;H`<6bH;L7V0QWXZcm!>tYDz~fDyK+7!*tfjclSPOCo!vLl^dM=|5!#MDO z7{I>3S=z|1W88#UH}aC}6__%5_YYgK2=^Kuli=_uymCsq8R`tUypt^fOcxR`Q*n=E z-Y)Y3DIE_E7!Mcda-L4z_D`(e*w=K`YPqGlEz7?@@yLjhWaA7#lj@0tSFIyz_5UZ7 z&i?A&=BDhoZPzGgW{Z7@HVFzhno;m!s0DbzD6oaZfCrPq$01x@9oK&Z8A4HWZ_0P~ zf8whArOUMDkFM(2PF3!CwLL zonn7quMhlh0-(^mSkt1WZ&NzPUx{aBwDfH--iIp#3dZ{OV@xs^dFjc&F#ys@yI?6kJX1qWZoa%w7~ME z1QcI6;UuI!oC*V-c@goFPCo#{20)21y86BYKIFkCyqP9F!*q1)J3r1}bM!+>V{P6* zdGiG+3xO7?43_2E3*fyr>Uqu08CCJ^gwa#$Q39Wzu!pS)pQ_6~YexE2`HBVA6AIE| z{ls)B5|6FXr?Y}Eq&tylqR|$7Q^3ZM|5e z7T-u>wz!`HSP$AzUnl!5>;B;k*zQ(hWy@?y!z-~Naxb&agX<-&i-M4kSFb%KfN!U4 zUlZ1B<*c2gq`lq24nk@D=^(v(x88K;5+X71!m(xo-GM4l(Byc&_OK54@j$$DQlZ|6 z+Fi@p3nhYBGQz4q+Dup|54k6TdgCDG67=q;!qt=|)C43DM|M`+1B?{BQbZT6hzkJ2|$i$hx_;z zKX_Md!McbzB>rWR%V6_Y2D1n$;csR2<2qvgaI)~iTgUm(xzc9lf3l(VAO5Xq ze%Gk?V7~A!T9*Xfk!q!ImNrrhT%^WngNtB^|@;^7E0x671D{jVy*>(mR4kH|st20oDtckbrZy zldb$!lX;kfpDZOUHwAhZ>-`IuX7faQK=>1{+0Ya=?nhw!T4c`$J?l0Pzt$M%((psv$45utYvS3^a2>I6}ki(3JFfky$ydyYwT z1LQ$88gN(jjii=yMb-MWhglcckj3)JKEMxf%D#tEp1`p}$lpXrNv?k8PdL|O0 zJ~~Q{fN~r9nF#}FmMWcNsQ?O3H}XCA{0nMMnmqjNF$|}khvvggF8!d}uJbwQf#xG5 zVdE^vx+?r;i0B-zn2h<074J{2@p1Jl`9@rHHA(nCW32^Yw`2L|JD9_8hREEvz_f0M z5&QxHzdT^3@Tn@}I0gOdR3qb$pHXDOXLpEBCS|LM13$?Gq@&KSA&?14vcr}4GLPK^ z+G>8uU9TL&~!Pec~(v1gBQ%$_xW)6@=P4cRfn2>KT zB!Me$<~iCNRrOP42EX17s2QEix7|gpw<6vMI=0& zEPL+5`|-6HOWTF0qUd98x}Z9+HP@(tNh~5748oT+D?+nS$;6I3Owaka4j?P#xo50` zndgi&0VWK`WLT}5VAlXhG9p%7(3YBi<8HwMJ1weLf^9xzD4pxJBnbVMsObXL*gkOv z1bdvDJotE^jRn}o0d8<<1dN`777H+f(W+o`ZBrB0WU5w2RSf*>92C+V@KTDh;~0e6dJ%s5`h zoQgt%Q*&ZAygOR|Jx2v|eUd6!@!(#@lk)bh8?A;IUPCA|LEi;Sx6*=j%Vk6asRG7$ z1?i@$?XQ~Sa1-E?j7hacKKZc(vV|@ttyJ%8dLIq*+%;uNE+gxw(`kn&;tKVwO z;XH!B+n)Iff`^&f+|B#+5*f+++m3-+YX1UqNVc`0;ge@34Bn#K@@)J#wss(QPfS1bOdL<$V2ucc+Ps= z{)`qVQE9Q?4*WT;S13-KEfm^eKpdjvuOY6-h&P45Og5P#gbuiR4^oxdd$FIo`wJFqgHhSNhE?!65vL{= zuPpI#bqAPWzQe&KRnuKF>hu!CI^s(sNS{4g!H`)FCM)Qn5D7Hwz<-%-*AHmEWnKJ_ zcT*diyV+?sQEZR2CSYT&|CU-}GNdoI)~REgE*>0kph-REL(q0n6~Si0!^eRjAW-fz zr+$%{`B(5H@I?aNspdB^h+h!mG2a!%bPp+kphC z(?5Vf+!%f(fxx%g|74lqMSt)(N4GJ@Q#hAZDDAQf@XPle+iHi;NwHJAxRY>gvgnJ5 zQGX?#2h>NZ?{YrU}KJbSG6ubCW4I-Tfmhj~-jLZq z-rmh5WU!c#hGJSMI&M0?xQLG$Fvh?d;{5x9UUVHuw?`|i}gOP4COpK1t2sT z)#vDW^9LA4DqGJ0raO8&3Hhjd@*W3XG)L+Pmd$b8DG)D)1naI zu^ad1)G-2jhOI3e1WEZnF*dC*-3{i!`~};XhUz%GXQ^LzT8yf=+XsjUFZ1hhm<*Xq zcnt}c>OXR;UtbBTv+5Xy#D93GsjM^-WbV+L);2D5#PwO>vYnmG2-TvE53X? zOl+K~=B$g~s$8E-*eq>mEKXDqL?#hhfhx{8d89!{4_ljb?a2t-M4sg*W|;WEgJZA;7&(xI5V6Ki z!uFVmrAO1Me{>fSd`0FVryH2*_6Cl<{W=$|Kx>I!n7rw`cNCAl{-?mT*d2>3uxrD> z#&pS%zuJMd!oByo;Cq2KfXXJ1KvxUwBL5&;^5bS`*z0f-Ch#~LM|F${hYWeU1=7V` zm;ZQc>1oddr2YiMZM8*yuipX+uP-rM2`pZvN@@LURcVN=_AmfxsT(KSt(69A9{Rtc z=4N;n{uuk8?skV4L)gO~mJeiJkap^B6f8e_qdiG*0ofu9TfgVA#am3aphLUe$0)kA z$575;4!H1A8O7X$Slxho>hZRe5+nv7+UbCqPYWRzuu2NLBKnnen|# z_}0SjmS@)eT3x`}s_E*EV&?5ujX}P38X>=FJ%SV-LJV(Vwj3AT8HL$>(!IH@w7QSm3$us;GX{1+@0^jMz0iLE z>?I&RwF`RW@3GKYb^8QCehuJ%W!D8IhC2Q3Dcf7yT4X;H_h3a1JJXC?ZL}}s)js6% zCDW?`Y?n?e;bdot&z3U<^?7S~QW$kB!*MAD6##&m_stro^Z>-@2D?jxkLi7AHY&rAAdR0c2Lo&wuPa5r8{$H$!d7bzYtbOmZwWu z@?a1KAV%}|-P)J;?=EZKrlv!F#)&$#Ax#q;w{J37$t8KShRM0|hwRGY+qt=a&n2Yu z9}N^K?Z*VFs;j#+swTw^YAntOjlO@ZzK7k$-ECis*Dsn=%~gve#%*o^8xOGsN!Wn`J~nbObe{*RE{L zz^6MPC+|Ms%Q(RL-lGz@4|#AF!dc*0s9Fe3NKIa-f0C#B7IaUNc5lNVJT!ON{qBB? z>qN$;7T}aEL9Gw4OAfKQv?B+(mF?qD=66%CK<0#D3L|!RU;382D{mrDy|8QvA7ul@ zn54_;ma7Dg--X{3()u^ifQRY00p3CIg-EROWVoiGwCxmyo>R=(Cw1paD1Zd}WnwP& zGD3?g73U?=IXOW^c)Y^x3{c6{9bAE7lKM~G_CWJJGIG6O>G|r%uX1)73)qV5bR%eK zkEqiomb?1}RCSel{!ajFtg=(1!D{GgxvU?Z26II0Y!N*7-8YTpsb@=R&SLwQcb$s4 z%is})ewbm}P@3@&hvAj-HzHz{>s$)lBIWHc#w~@Ng9HVv>NjmCiypUZs$d#tC}Ct$ z@c}lMjG-l1;VwJ<{}QuVe}>NEcGVu&HmnUtTIOFrVt=bZBA=_+Uy3K-%g zhP*u&R0-z()(Z8b=kqT?0CLfEb`)UEvp=ARJ#6CVID{S&kx3~t&ZTqN_(@qE6=f+R zt26Qs6+ckx=+?stCj49f6|GTwbZvTSkUQ+leOc54&}Nv5{j&>`RFwI%q{MbZg*Xa_ zS!p-a!@4O`cXIj5=!ntNmW&+7rS;0s*2+25{m-mz792Tmfdn#4n1G4N>>%@Y%X)df ziT1XXE&os!dslySe0w2fCNnJI*X$0i$IcJ4Y;iPco~}^VyKeT_Nela0+D3?anFVWh z-9|l>JNXTTUaBQv0VK$QXw7954r$&Pj?!GnDCq=bC6_VA$ZFWNucL5~6o4Mq^mD!W z6!Z3~Fg^SU8J33UfA^`?U&@+#@X655{OH=a?_8-1mVl<-hZbXw5avMY?U?v4qL6~T z1WP*4dA#l8MzS289~ibg8duP3Wc`fEio%Uzb#=(WWQHSi_&xI+_wiT2W7H{ccQo+t z?bY{`9mBFQb0#EqDDJqZq!e)-2EPTNN1UbYayGH1jYcZpqylWEH*M#SR`y!SI;lp- z#0J+91*W0G1FvBmb#T=!j#&aI;&RAeBBGTD2jTb zbvpx4`F7i}I%9v)53R-o`b3vW-$RpHhc+P(hMD+_(;vK_mRqpJyY)D1m%9n)IyUO2 z7f5jmgZXd10-V920aQLf#huyb0Fz}*%m2@K&OUYtz&PqWj%6)@;79@t?&sQxl3mRJ z33)eE=!i+$X^YO-5u_cQ$-}jYJ-9dUIl!#jkyFlwLys0PyJx2B%3_t@GoK3mydo1> z>9$OeikdAl6Rv58ncNxqW%9u?v`(U(qyr|;AX3TY6qYt^DdFnfe-Rvb5BSxBD!)uj zyTPfJLxTDCzz*f*5dA)LfDQA&ai7KrAyw?s$|p@bKM^h=fV$5%k~G&uz4^khc5#f? zZ)KDAC+Yhxk0Bwzi$B)hy8WIBwBsD|nX{v-&;yU6<2&#&s?H6R{8h)j&F|{~_$xB1 z%}o(q-^&Yft@$Z%J)_ydngNh`aPlv`rT5tC>NgXDw%dO35r`>+lr7lkOPEFcUkbl^ zBi+>WmWH-&>g;tR+26to1QTHv87lWQebu93G_Yg&?GL?+To_iqCB5oTu+^~1vVGAV-qdOj)lV2|%WyAH4 z!L>Rse?3>zFRg1_F7Czx47D%fz}AVe$_lGH!*Lh@Pr8>(gkjzm2w@s9VQvTRVUY~X zswgPR#jrz)qxA|xtyLeTevLb=z_w3Z-Nm2q#{jMU1km07M5Of}pKTC^F^(|QO))W^ ziZS~*rPNP9yYWsbz2sZtL!gsoFO#Fg-d0+X5TDKjDXUKFI2Fh>Yqbd(5;pbsZbRRc zGK=hYz;xSTYEFx`SFaC8T?~40&|_=R{2hJ;pS@7_cg+(*Ys+KnZ{8StH1r7|6Rm1k zAs>_ffTsb{$?E1#y!5=Gj#@41rxOgd--LGC0aQ4Pa|=@xA6~6#xNb?CRSo7LB^R*_ zwF*~!Tt)gR_nCB8+N=7-D{ahU(-%SGsJ81e23%Q!WU#pL$720A7r-$5Nr{457o*Pf zxgnD-?zxzKt{I)B#;;ibEIND*uSqycVCsf2DSdy{+X)7?;ag6(u!evak5VVD*=qlD zVP!knhK?nO+Ot7wml~VInNpXVGCNYHoHRH})UP07kP^lAWY0P#|C%%jOq`#aRq(GSW@)Z`tHTwWE4wK z8E`0aZW~Nb894m`B!)`;*I95}NMK#08;TM~;x+2Md|{(tdMuaN&#+}vq~DYB3KfhQ zeLK6qRkN3&`bq0OJ(n&l!RlPUe~GHZKacuh0Bj!5O(3G_>pgVr7JGU7LPSt)-0aS? z#tE+Ll@CSw27z7gzhe@`oydy$tD7TmJ}i13k~JDpRrgHSSH4wKqyR%)bHKe1_tB() z>@UC%X=XXVK5d*3Z?C?9Api`*;SwI5q?YDLo)Y+k~G|)~5+a1*rGTYw-|76{0R1*(6-S2Z6!C(4I zj#P1(q3|^mu2_G`qzD{wikh7>PEM`DzG1GXm>`9V#+F*THX$T035h>ARY<4z=%+0h zr2*5hY9ahQLuixGsB=Lb#m&UyyH^K`>0zxxvNm<~YP;`~5j-xST(UBW9r;YNZTP=3 z@&}wZh;FW}vgkH4d(Z_kEn+za)99o*`iQx7sV{`C%d&muR6gY`LKjZ?#OtE{07O!= z#iLHk7v8-wvNhW4ZZ8V_)~IgGxDkYkoc*jQN1~q9U0KYt{@(EWPlLD}oHf3Py3o>w z346!Jm8I?xGLb-u%?$TZx<_bT0JvoaqN|mLXoVWTI-M79?SP{A; zI5;MH%&Y90Yn>0B{cY@l?n7d>$7w}KfULKTd!#nLnuoRt^(?x7(GI&^bN~RT@@t-4 z;W7AemJFQu<#_Sa)KOXmk^ateRTOAc$!!v>7jxM~&fu_d`fK2LZft_64*$b?gi$Je zx!iw({7B*iOKG&%}D3bL-`#Eyh_Zy>Ym3A zddy|TMcoq8y``opwgtW9C0O0sxm#y|GY2AO3ZwZGvy3OM0{x9sM0C+jwFBqYiX7Z+ zfQPz!c-wxRvy7->`K+_2+z6k4?86&|2;)5){U_v7AQG@G?eY0t1yyErZl|GwD8wL( z(lxc1PTWvh(IjmBkE&StYplT)KN#^z;Il!&XYA7jnZ;3WlJpxiA!gIkd)9cEDkj$t z?1lIbyg8}fX&u;3{Z#2Dk&^>+AYhruYU^Z-?2-=rWg&-3jbv+lf7T%lnSu`uQ1PlJ zDI?N8RuQi=2guztXZqaB&D*LSt^1=vB(yJY_(!xCjN>)lYe9rDx~U6%!u?jEseGTq zZic==ONncCKIc=tpXu9{YhLw$mXcBt$Y(eOD zbX9+LDMpaAO0!~tiAtLDWio0r?o)C@rB+s4c-f_xC3$3=@-+);U8nytVgIn#X6_~$ zda4%V#-dbZp&asgv}|f6!U%xjS-f~8;=uNQYa91d!P9mx!&S*>_j`RJpu@MDGTfFE zN6W0aV|o-DUt;9;`3Gmhv^%Vm6XH)aG=|UaY8u6LM+y+UZ<6{ldWq-0G!as&5oo;L zve0f=1^JrF=NWO9anY6V>GT`n6X1Y^{@M0${b0$3JzBnG|Q2*-^SR0m2sRd=*2cOWXH5ql+7(;3`tX#8`_2?{wBS@LjKoZh&CucQv zgL{YCc_8_tVSw%5Qhgg6yWkZIUN{i@>(Km6G9!@d^(LD(KI>8((0F&?Tp6*bg6385 zc_CU$1o>Tj$~UWRP5}F`E)WAVV5Zc3Rj}k4`8yXUwy@TjXoBKtjM=-}O}V_9@A3R3 zkWV3P?r+1+zU#uI8(C$%%H?X4~wJdu@Al$+7$0>CUd`vv{gr@x8&TO zgLeDg?4)w@4F~;{;C&rqx3=jW_CqoOozR`gh~($Om%bD44C@={F)tI<%-_=h`1JsX zyR3-QaleQmSHYJ6Tkx$V(4!~IF*YqPreb$GzyD;p@-o#$g;8@qnDwIfu<2p*f*!76 z^&p_Ph{u!LDPuf zotyCEf9(1TDI-r`f0uEWp{uyH9SbR|Z7X0rV7qKL#V@(DR#ThzkX_Lope*ikoS)cd7N}$rF}S;JZu_$OJN(9?M_AP+qBN@T3ky zrYDv5^YB^L5lz-&Cla(^7>qJIzpLsyM1CLGSzsOJqAuu!*+JFDk@lX@`<{L8W=esR4Q38^=}#Zh}1 zby&s<6hbb(YP&9yc2;=FO9mSt+xAvZ1SWbP!QW!=qcM759an!o4jgCgA{(5W>t?MB z@BD`I;5_;s+c9lDGRvUcjzXOvB0*ZdK#3^g^!K>Y$~g|Df&u)O)E)i7G{(NA& zpqO)(-uWrYe`aDp;Q(TnZ_-v7SB-5S=xBk5$>MZ8`gNedt=i|w0uFj$&lmd6e&)-R zur4zLCeQl0YhEPa%ny9M551c9U^+{nD9h|huK!#Pj#Iag?+wAU&U;4NiTuV_q2O+6 z5sTR83b1`XK0B-wj|A{ROmmr>)cGTrOPt`u!0W#x39TDMyX_b&<|f6jPQj=J143x2 z7?`fY&OQ-Ofy{$lBw2DV-~Y4h31_cq;J1v!NsZqQY>`O_5ZnwDNymUEP3!KkWb_Le zo>q&5z`h&yw&{0ntb1ftzEm;j9nUV(V&-K{ttEtuy3I3A`-jY!P5%W#)^1l@dFp!(Ymm~xHZpCn0P(yR2}fHu7lI`obYZXAb z-0L7Z4A$}cTiy3mU?yX{f;E|lbCB8_^^?=_*LCJ){C+y{T)(~d{0CSsaNmH|dL9Qj zp5a#c_ESYho!bfK)16&dk7-JCmkm4IDnf^lY?zVXj-!w!_C{m$2!Mj`c;OUs>tckO z=g^r^Eb#J=Gye4}4{Ai5z#_o0$U3)ijxl!bap^6V`IoEt=i&UgXkpi6Fo9}z)j|$ z{S@|E)5*GkYd*wHr&~yFJCa@HNgDrgV0iLtxcIkIC_&yr98n z>F%NYx@qxyJ+JN*dy^%(wjn9BV~zH8^jXt>)3``5vm!wQ)5(?gd%gn*WgDc!SXI*b zzoL`T6@!3pVkM0n^C6_;{U3t$ZFQ(5$vx2y^B0^ zq44HsT_s)*2Dumivqnc9uBuK2D;%aXkdqQQIb`0eBb#(O-r6{VjAURD2sn6@L=W_r z$p|6OodXEcthbP`2>3R~^n6#-B>mO0;Md9ol;mEOZ&3rr?(Z(nfLa@$AS7k@XQ(C`&&QM{BtSV zD?2^8<1)3*Gu?XU+3z}79@j5=o)N;8)Mr=*kgao?Zu{hd9dxq(1v%E_b4vZ3BEFMw z(eU(^OFUXNa|P$hQPCkEHBJ{ya_7bp!X|o-zPt}$_vgFAL$uYWRl|D2Yn;VSUmVCv zP43`SmAKpx0N@*P?A-r zE$P1*rU+8)653xj=Tx%-1X_TPZc8*{>lf_4oofX8nrq>baTH72&dl?rddgIGaAheU z?b`Cpgf;tT#AAoU92c*tiQk|0W~zEL7Eh=z@1g|<=o-2WVNMZzJ4EhuOGZLpeeya# zIq^qq;OWs)71HS1PIY?tG5x4Jth4g4OgVUd^C`*7?Bv_vb)1X(iMtxucl)r2c-uh^ zUhm(6Dk@N4>rGL6sa_Z<_Xe}n_fw$v`5Gr)nwIB3vPA@cXs?_xKqL!|KMvw1k5FO#Zw}svXE6>7aT_I^n<15KJ)tQ1!MEEkDyY*p;w#AR zL$o0(gaILeO=n#y-Ml#|Qp!W_{h@~KlXs5lNwv9xkdJp0za(@11z^iC)xez!!j!x1 z%w=0MzjW6YDsMg1oz92p#x8zXKCuU##jgi7w>#EZLc%IKN{^MCE4xVOj;1LYl)?_~ z*`4;n2`BxXUN;Y=b{dKBJkuab@|0^Hn%UcHojJ?+bNj?1A1jFa{77YJG&koSauJtt zH)mda-U<9$yt{v%M zhE~6nfD-@`Eq%|-V+HSZ$iE1%?zaCeJS(DSL_jNZ@S}6~S$LW7Ak41zh_#`uwwEi- zTHD-bItVEWu|W@oUo>4hb|+CQU~Ws^OaAoK%(dxrdm+K~hlEj*zEnhLMhT>~RYcCp zBCU19G2eO&v{e7!;m-jD%+{X(`N$G^l@)p`|Kzk>vbzhxiEv z=cB{eKl@}3j^uO9`qM~5U^+ufaSi{nR8XC`UYtCRfAvbnar?DP!4`Awe>vBYhu1&w zNGdWTW}^LtfLhc#_%Vm;Q5I5d*)_R=+Tp#Upj!!-2}zwc8m)R@nj)P6&>BYJ2Bvvix@!{d5iGSwXi}OWOd``* z{BNnMY`z^{UFxmcf4KkI6QlWHZ;f`1tZE{b5UKTq@J5qYGJ*F>*Ym^z*QRqt&ynCP z@$KzU8-C*=7vkgK$7A!u_-dkic*tmg_do#z=tX>uo%j=n<-LJf<}=aQX6Pc<+Jb9Z z1qPS5bjbk3u3#qu=B|I9p}EkhiDU)=jYsZ#>pr&o7B+I%kYz-q@PKlT zrTRKCviB*0IB~o_%C25+etiel(_r|zguLWOyz~q3y+p@^#O1>3PKSAaM0;JF)F^X! z8HJrJ7xN!$53ojL!5!6AM3OyT^gH!HcNs2Z>0XyY7LCG{eLy%fC7kS9BWc;U%U+0l zj7@q!DVV)alrJ~2XptLa!^;RyWI^G-xAUoDXO~w#pm$?_A>MI&k4)@FTgemBCFbTH*zrG(@~v_Eq_XLza5eiv-#& z8?|XHya?8aJOYX8pLhE{IUv;j6;_4NA4R9Du}HQWf7X7N;N^c}h!$fn^jg__D_I4k zm4;crR;xjcQscx^q)Hkpo55r2!7+?i>DNz^1>e(nzo;!DcuvntCXdZPd#A>twvv8p zf<^50K3i~-l*j8DJkME#EarSvF?0wNox7glssSX*s(cOjB%eXLal{%axNe9S7%K!YFq&qHnw`6TzVfDaEOTxmNJ54aD$(wk} zOzXP0`q{qTR%<_RhOi!o65xMaD{t69?C#{;q*e}GX?y$s0cs30{pW_C9EaXuD3LMT zmz7qHOgFdZxr+*@AX}S9P&msE*09C5W&2in(>7_5 zA!v-}%-r1htOtAteyiDah-Q1hi8nC3Syz9;K}k3^%A81$<`~xJ(aF zurwWHTbOUBdGon5sJqgAvHtgc3*zMC!w;{9CgD^`g4Q=#vIYXSiy0X+og-~M5&nQuZTZoW@= z!y5=DWIW|Bo2rF==r|>#En=`TUo0QZ&ZX=;xM}U(9omgzE9Kw&rW(P0S=s{Yca~K9 zXmP^)%VeoryVQj|<$%l9L2NtuD*cEoEKMKKGgd9idcu<`WwO6(anp_@)1Hxo z`>mesT7BTqlrIQDjL{DS_bplCT7Ig=RR)w;K(l6F_955YIvUkCp96JytWtB65Ts9t z?Q-A6)S&YFjso`I;+?wFryseNpRb)UMLdO%@A2k9L*YtUsm<*N85RGEcUkd3^ACe7P|9@n8 z%AkBWykchE^#57_Y=Pyd11I>jO!~)5Ai^n zfUQq-;Vo@wX=$>nP_vtZ)|J64CV~lRbCkXW z5{id4`I1s!%ZR{rS5du|dD(6G$@)PLgUo5$x#~qXnwi#zH5XeVzpjv6LpWC~dI>2U zBxp>EoQ+UilQRPMl>!CB365otB8=>5q&f}XE_H+Yn0nqK-`vk_Sd)AmT!|*W9sc>STX@ABA&)H; zHN9~|dGm>v+?~STxODhkyhqC7`rW^S&vDAGCMjCZEU9gcHJkpMl`rqUBwwXMdtWyD zKbQ0Tagzi9?#G1mUNz(S<6BXBvwBA0`kAiX=efyP59tW16(3+}^#r%)i}a#iVNkZtqQ<oO&L`Ln$J96(^h($5MmB9DS3%a0`EQ>t zX7ncubsk?Zl1xZ_p|f8>4rMjFHNV+o9%cdcWYuUTMQ49#HsK4suHLrhe%=BDok^%< zcA1&VWkn9u@1M~|wCR^QE^>Dd-v=V?4Mii2eDYEr*De^hA9P}taW@Z9p1#eK*Q27@ zb!iOtHnq<#qUR>*Bjj%?zo`D#PqF4qvJcVjlmD~F%8`yMXd=#4o$1Zpm#uDWz0G^{ z7X7d3=2<b7xsu3sN{fozcWuBkcZH#A z%92)t?p4$yNfYI?`wV00T-uDh-6P;iSbVhhsj;+D=6}yz9-`~9GQX>;A9J}kE9kGT zFt}ruCk9wuy-mTQ{!3o)))kxrc_BF%M69Eyojery_nD7w`V0fZNeeXgyT#qss!}I7 z-r*$jI8btJPm!9NS&p}`w1H6gApaHQjd5k@m969~C@g1K+JEVAqSc=EGIFc$a(NbY z7l128fwh>ij%cK&Zg=&shIC*JdfW9YsXh7qMI_C} zawBj)m*5ACjvwPpoXZ#ynAa}T)llq}kRCR?KdP@b&}yA0Yh-eG(@FtDO!;EgzFS6}yp z%RaB#D7uC}g*U9z33toytjQBfn z#g9M-Mpu2k<-J+3=eLvMYUG#aE(2MEoz--y(6j&uJ@$2zHxy#coA zI7hn^9RKJj(bk+);mztjLy|F9_f}!qydSoc)kE4VuNkJO?7ApFKvNnzU^Krinyyk^ z)ET5cah!sWgNKKPrOCvk`mAsX`Pkl{)F|Viy{9L+=E2?Zf5g27a2(B(FF0amw3xwS zmMmswvY2HtOBRnLi-`b`KDbZpY2nI5?;|?U(Hl zLBtp-A0R92^Y4qs0^*E+c9s+04r^aVKruJ0z9+bZaNKtS-b)eZi4-gwGCjm%N&XRz;k zSOCHB#xDr-I{l0=a=#zZXn=UDrH=}nM3z*!N$AP%$3aNNgLNzo zvw&jaRPyzYUtC`zA5j|^eYHCS4dP5;zCfwF*Tn5Z7PF+r>My@PqQ=tOx)a=*K(5Oh zMLBO`uZRsAD9$US3QBsm0d48UnX`|M``1K}!_lUB!$9gw9%suA@%Aa02AD47YY%^z zWsrsQ6=KjBD6AL7$9W4?c=Gxb0VDXV0EGWjzf7T|yPv@~)S-Q-W&#SGgrm}Xn9)J+ zsn?Sr95hyqHfwI0f@iER*G-!V; z@R?P*jRJ***IZXk-hA8Uf_a5Q7r$X>+WCfje2Fo_WXL#^KB(7_{6=(cw$n)@?8Qgw z-WdW$kPp)`zBn~QoPTnMkh!ABG8)tJx`Xh8(HdA&H_FWXVBO~QIj~Q#(mg$VjnGwi z`980A_LH_9l^OP!>{r`lGW{#bOG5dlU`4&KkB_SCO%!h*!``( z7{mLF>;9mYD$M*CK><6;O#=nRDXIyO6jEVeP9$&Jey zdC#1>(F=R69RF6_D*uU`7Qw^yOFi16cP7SNxli(#6P%p3h~J-o^a$P(A}C%yk6Dv< z40!xLIFXSqUFD4P8*LD5)^NR2n4e70F&676s}oLjdlD{%y(d{Dww_zPPRH$8QVg!b za(r)WKT(5!D8Ci)cCiWWPrV##UhKRPZwxE~TU3E3pDjN$U)bP4kzR$mwsYQ*c0-L(%)Xkyl^hW2RI3-oSSJysZVM zyy4pV@sRLUknwlLdx}?Zt6-~$%pKO&;1ckX=>5SUb7lNv2za|QlI`vU3WC%ZSBj7l z!@gCR^+db5&%fLVgWH2#rZ8u)&Ey+&Hu&j4VE2N6JP6u0&U|~(`JhCc%4KMN<6Xb0 zhJERJo7Llc>U=$!`s5u#HdlR$7!xbV5fqhZ`o8;p8vAu<`sNU~M*!sO=G7$O+n>4? zBPAF6J9;Z9qW#goeVIZm`@NHQXY~_fbvFesjMwd^c=`cKQ8%^6^m(#e90zpn z|8Zd8A(aDi4Q^93c8Xp<1B0$PcEwyDfMn&rf7Dydct%{^rLBI)yNTn?;Z@{(zWtW7 z=23S?T(eg#$A5(v>MKQml}J?{B1ro2^z(3i=;NfT@*e2aZ~5^U7%lje*Y5r%`Lp(( zSbK^hYlrq5>*`)@5%r`l*|k23Vb`O6$mQE|n(Xb+BmllU@aYY$@PxMkCi{K4b7V(w zI{1UBIN)=m7AlJUUG{OQ`YmnuB_}BqRm%Gc<8evwrT&&P;WGvJU~rMQ|JiYQuiY?s z9l2|Uld)}I4kU~XPwXq`Wq za4vp+u9$@k2+qPj(bfHl8Aew8*bC?n>Tbc!yIx9?eb>M4dgM$hSHQ-3P!Er0$h-3D^8`^qFd+M{wk@nH5J zqUObXqVDJONw3=Y3pG9#VH7EI&UDm3H4Jw11wh7gR|AEy#Gh?h`JjFF8J= zy+SU2PwF}e`cpiEqg?q99tpZY*WAzvEaz-os=mVfFk3M&VGOnp`RN`QLsNM6*`Kwe z`ni{FcK-QG?}aNmDCxubADF1S4pe1Z6RP4uyQHN~hcT?z7-q(r!fY}I-&Ox$!lh?mNK5y&xx*kQfAEqe9-t2jxe1Ekbs^>()D+y^wtnv>Z)-2Sw`tXRcwPiD7aNlPr>eY9b_&p7|2PsEA$*K z4IWQecW|1q)4~sWxT5~Y-e4Rcr&qFJpehWf{L27@Q$X44lAyl79gk9*G&-#vDg*UE zS`iExXV_)W)aAeg+j)e<^!Rp@n+-n~5)Ued7t$_MW+G`hOLSHb(S2D|7vU%PYSb{L z-;~GBGMZ34a)WG?rhw^rxVj8Csw3PtrG&n>Q{pNs$UFd0a8C5Cjk>DvZ=j(Q&az8* zgX|pDbF(Z9FWO^{*?=ojBE}L4AShJ!Thw)&U0*8Nfgz$aZozqva+M^+-rtwP>f9p@ zv=l5Nm-LzrVsT9{fn9@72XXmO5=g}eJg(?pBGJZOyi5C{`=!e{^9XlCv`7dhzPAQZxA@OpF!Ai0c%h@__ob#ji!6pvD zH%^-zW8Y45Dme+hscWe7kzev01Grx_HtWwZN&d(-IYTmRx>G$+zuq9!dDuSZ+y(to zBJYa0#_8PodlX_(d@2sXeq|Vxh_QAk)(+{FmR|eSF3cQ$U@_Q@c11k9`t5o7b4n&; zgCl*{QlmjiKk}0zsDC4n0qP7GS@zkAPReHYp6AJx$?_)|+g(!|>q6XATMC=8(SV4? zRKm_EotinVhxDY6tqOX0cqP7?k|;t4y^fN#^f8~Q7`6oT$myNA+UJW_1u(N#>uA7- zNS~G%s$bJr!{w{om_`pY2qGA#OFyKV*da7_amQt2@js3Ic(QGmOYj_Sz#&O2(|Sz7 ze&yW^73glrY8QE`&da^9EF5zAE(QU+;N1&KanDlKdG_=4(QEaM<<&nI6v*~@d|P8X zISf=^S`n&STd}f<2f3}vK&qP19tieKQiCz31_zbpbZ^ev7#pN8mo_GVImqurGNl?VIbkn~%= zJMpiY0~o1+u06!7P-ioxC!*5jm|zK1QE{3&{;s_d7;MnRi$T!khEg`OX|Q&MWqyJ^ zVb|54)(gf`GPnkbJfw%rRwH!VGnt;CCaty_0NOne1XIVh&I|NpJ|0}aEWE8^8{9? z32F6MwG=NCoV3uQhX>Icp|bnvyRA*)qxlbF_$M)8p3T?B@2B=D3cU#TnPbLsq6gtN zvOCE(##f{o2Ax}$ef@6Z3IfU^d*$3<2pYg-nnt&>^U@o9B<{3(yM|rY@pHL9U)qz-3VHh(f>$_0K2os_gxLa{ zSCPBEd(axlf|RxRXNK@X4wE-4Z*A1oeZw!W#ylo%RKIUc4Y+BtUkuMqanJh0Cw;Y# z5tQoEY0>;5Ay!co;N*}8f{*!i`NjAffbSEmeC_^$Q4@)>YOIT+wY0Cqz6@)ozLc8Q zOCDRlZg27~5F0+7{dy4GMEDkxplD||x^GS^Pb zm1IMdJIPEyDGC|B4%%k^OAYFwpI-aU;A~zNOazoUJhES!L-f*>qan>Z-{jnAKcdd! z?~#ATel#Cm%PAb0>s-mI`&jtWHR#*DMbLW0_Rz9^`^6{4yD3Ep)t8p>RJ69;tV7nF zu5R`j+P&74%5h`>Yz*LTKCp8LJiL*E%nN^+S%+{W+hsKSl>hw{&8y2VjMrg=QRc;w zO$&whHq3aWJ@5T&chb4q(x!n`18!O<2kN3bjySEJ*s_cA0QHk32Rbkxv^x@w5qIg( zJ<#RLLZ!m-zBo&K<8y;r-LmCrl0X@$;n4>^HhI%@Cs!Bg!nY85mrymOWe6!@8bsv( zp49BY-|wHXdr{2YfW?()zXKo8j2T_{GDgOTHniL>dR^664%?F&-u#pHwdH=O7T9fU z>A&y49B|P=0G2680+^T)3{BFOu<+~^s7yR(0R)&;lb^QR%&!{g|1D*0&r-3)iZ!R-jF1;CUkk5hrX$h$NqWw?= zElfkMFrJt%<_xfC4XwM>R=qE%Bb<56;h43~pgAb%hokpf{8oyO$K$6s z$Ns!540>Qvs~YhyQ>2ygHR3)cDNZ};{o+`7jn!itGRR{1RO?r3@27$cUPu+$1k=o1 zd|3_U*6W!&c7BmBqSttJ3i~J1)~%}!BdzO@(Qoh23WL-xEHDrsN?8~_%9F_lzf6n9 zw^J0rrxi$bMMGt|ewOLx_hh;0uR+m2r36Y@tA!vjK5JcldZuO8HMVj3K|rx3f-+>b zP_1EvNWk)vpss-4nIWh>UjO@gXfUs7IqG2JgqEGCu#%Cg53aJ{n`_bet+g#$C63R6 z%Q$)ZN5&0bn`^eOSmR6r?xf~>hy9*ph@Q6uJxJi+ThD|%JHH2hZyMoL6tIS4c1C~e zz<=vF5bLMfRq&p$z-%@uCHOEl%2F7+t9S z?bOD=HGOrCArQTbyr^uB1%9EPJIKx2&sV0{KkyB4%b^>ONx`^LWyX$PgzGd32JRkJ zP=1FYii|M}kTZ~2xe_D&XA|{~;AQSBu(n~qssb<1@>?~hBVLE6{$`1#f2a$deIrmy zU_SP@6qRoypP`6?P8#?URh#ab82E2+uwgRR#uyT=1oWX*3F*X0zggE=KQ#`?joWZ3 zElk&`K?q18tlX#ouZ7F7mcqHmOVHC&ZfJyYWsS1;W0ypEDL@kI00(?a`IYKIX^i0n z9ydp2m{cZczcr9?5{$qdG480-Y`)Nc`W#M@ZUb{i??%~l7f)VihwzUA!GT+?8ml^$& zDcNe=YIkab2)?O0A?r$8F$1+-R&1r-B$1ywPs|I47?>E*xnQfpBco~cNlnrj_$?{6 zvc8eNa6W&b)$IchYp$?)Z#O}?wFN6p^*!hx1S??LIGS%>mj{T@H}4V1IJMaOf;*G+ z*f-)XRGzsWMTCU#OxVcQXs9nj?3##||44fnB2~#o>k!eo!F_8{_nXqX`SWLeI4u8b zffC8RQlbj3t%vpiN}bGij)wD}lAj&)avU?7pt;<9d>Rco`$V>(F4)^Osdav8<0~W? zkveRP%*T0R!--NU#++X;pa%79F@CALSi^YVwwaB{PE+zK2 z#Nbk69Pye2)a@l2SvZSyK59xu`Jipti0mr!>xbqVVo+n`!b}Pba#I};4V&f|W_3=$ z27~N4ue5h8=i;7L)5SmBxZHi8d4U2CF?1zjn2p)jUg-+Vd**!MGSj7JPU@m3OR~bsy-ZB z+dNUocD$6~<1Tx;w_^~D!#nfz{^}dXC)rrKg}@5EQM{+H?HJ(xCYe=wDOZnj)P?Ha zz-SFyO?u5}R(t=7+kwAcejzt0G58BeGnYcw5lGuRO|PXh98qR#P5DRfj|8SripdrZ z3HcQ~Z+A?3&Yv@vs)FizTIwb)RX=XP##!zWgD5eL79FrOH8@~hYv+56l-3ov?^InG z_2CJpVNAXr%TG89p4-Nq%0FRRxw;eG0t~ic7EbbT!4$;Htd$sekPJPPkIBvqy5ZvmG?4`|sZ9Q_%<3uQ+> zSYSCA*f4Jhax|afa$FD5AVZ-io?7SY&ZR-JJ%cqEw;PX%AC`~HmnRQo)ou(bv61gf ze=XJcrip@b3Wn%n#B63S{$yX4l>QcKNoSZS$mGt`e9PFj9HgHpVUg{xRX|-b#)DVk zEL~f{Zp3bZo>?YX9jJV2M1d`@5=%F!64yn1P;DOyz<7 zSQr4al|T)Dgn9_=Ce!Z-5VVWQy?g9NxG+1%K{7ltVl*Hx@ucOF$}n9=meRq6z>8E3 z9gFSjR8kti?|FtHV{EccoMnlrm%^Qs<#Bw*7xW^bV>ZwauT8Iwn3lFa@%t^~SC93P zR0k&12}iz-Cp3t@c>?&5ydO!~y_LZ_hgL8&ju|%DgAJFSxw|8cu|0}lg*9b6I2K$1 z3~E~0V4ZSFxqd%qG^=wX_FocS0M{P#pCEzorp%AZ|_ZnM&RwHia%@dS$?Ox-&=)R2$Am8Ou**_ zyGnBaKOf}rXtY%)3hg@DOh8$9B;!i6e|J2)r0XLMK-HFe)0Xuu(AwuxBL>ixcQ~S} z&Ho5i%C+W}usOi|oTHkBzDSbwv4CgiH`>;Regfn;R%@^e&7{H#eSJ?sV^>*OBmqwo z9ch)WSiBqyIebRyX-cLG$R@uV;HwFVVfrOXplr)2q}GH-hf-&F2#}19lgJs+$=anr z1~cXUX}ab_5`f^rU_Ru&B8u;W1D<;#D*G&(_G>;%nG2nd0o)=R?eFYed2Ka?jEqL2 z!KhDjiIciRgv?`$)MKJPXg&KvVo!1J!w>3V>0rp)Hg9oYc*Z1 zazCky?Ai6Oj{ zR%CRn7KWPjO^_KE?Sjb+v=f znOZY&=MS=8(=;T_n@l{I1HcPY$jGR(0SY z0>eeGh&Jx+F$e3xA+ESFjudY0_+x3LoMmvPWpFE760qJ==$cq>9vh7G;fLi-akTOl zfV_Z{LiJ^F3NzXc-Cs-&g8j?J^i+XhWSK!BOi!u5OgrmAUXfndBdSZ#kLFKWUsz3- z2Sx{`qf!oet4Q*e6q8KvGkT1!;$y)y%44>^g~>1TxGwdz)bj~BanNc$(QL3nYoxaB z#QQ7gzz5g125$%PLF@03}uZ`cM5Q@3o-V6p2 ztr$h7ye4ng$m-N{0@)fY%lnBIvlbc?R5NkCX>xw|EQ#0Oi@$U%Sh{(j@^6U|r1=!! z4bkM1lG>>^;Oni+FQ6nfZ+G{Z69siKSBKlN#eO0kX|nSJzIa?!QDl!SiNyTv-T*wL z`Z9W@pkO`bo1ewpNEK77rP^1)63jRR0h2}-p_K)#EW}Xp;B@dntCrO6gmLbGZH&8j z4rm}$?Xd~s40w{bC8om_#j-0Cg^=1k$lrHFwW7i1u#gt?g+P& z1Hs~YVPhs8JG6=x`B}ON8SMPtVK=Xfti{8NCv{Lp(+9?8^~@Ag_Xgv#5d;ZOWDeRw zZs(ZFN6g%6ycox_Q+p>ZbR4j~)1V0}$i^eSIs2spRo1}eh}~|I`z1f5A4uLKeO(t| zIq+30`nZUDu=~5pzQE~@K_Y)>m(&~b<&ktn{NMOucmrKW5om7@zs{d{Mk89gqMe)QvaCY#j0L?2R?mDp25fY#V!S!zw@W8 zK&5d$KoaNuYWtcLLI-3Bl{?Wzn!GUwo6Pwc+t=K^86m8M}t|I8vS!{Hv8f5$Nk#b z<9la*jPhMj<>5`!82dfpO_5Be6fN>GFLsJ&*l77na67n2r+4 zF_OicLoQL3`d~{muTKF<@0K=}(Fu;d{7*~;SKX2MW3Mf3LG-$RG0&s$8!D$i4YiVT zC3(Yoj|NR>c&V%1A{w$IFihHd4>xv5siXHq=c1StoY^Es#ulkr?y2-taKVr#&4YJD zEl8`5NULx|mJQ=0)C!!|8g%ts$iC9v5Rt9I;HaDP!$0nzB)Td!vyFm0=G=cJ_wy_& z8ZvtVSn+64CpT~$<<~JdFueWRRyB5^{rTH^M`ZQKP-0&6O=sVf*U`@_nd)GIA&VyTf>BEYCozWhKQM7>$` z?Mam_=nL=QT|~5Q@1jTjSgpr9?A1aqZ|0 z>r&!N63?`R@t5ZFLGGPawWe14g!8o{XSTe6_u#m>(m)JWxaWzcRkI^*OP0K`+6rF} z?8NXf;)bHoG8zt_qPK;OwqUoDqz_wOmP5<9g6H9D!tP7f7phYLltI6Q-~3iOio`|% z8TNIMm1erZ65NhT|ES?5e*^k0EFI9oi^opz#^^2cscp)sF(mqsBN~hj|+cXF_A?@bq;e8xqT23`9oM zaDq6e`|vusY4sDw5wDA#BLF)GTpRNM1^rnegL(vRUm3`rIugkhZiQd6DEs~#7Jg^0 zGk^#3LHhIXGB$VA6zMkg%yB3>!GOg#4!yXooAF2YT6{l>_u02gI$8X$8AV}9{EN%d z{Zw^Bjx^W9=HM%g@OJYg!*=>s_=d*M;jmhRMEzNhsQbF!byxoHkvPPLUEVN9)*NZ~ z-m_n6Z}&`6;C>y@P-T*Mx{)&8N9K+Dzmwj;&&E3YO)+#VvmBY@8z}qSu^GJLr6-M&bK`1sTASz>cJgi=*a%!z(lPMF_3aoe|{-GDxyF3 zC!O)ygFg|Y{bEn_{IN@HDIbN*7wXfq>Qe^lQ-(amsJifC5Dp~(-}jouFVwfuzl?Mn z0RCMi3oXT|u?WM`TK%@11#F)}MrCl%j&y9tFde%TIit@+={_%su7xtvF|tK`LP+O{ z??K!3wK+#M`c2=I_o6d2;+nr^h%z=Cg+2;Pl0DIJ&FCqWlsi9sc<8%$tWE@pT0KV* zBTu|#{W#^a*~LsP9;CD`OWtNJ#A=jP-D z5xWpIUM>L(}Yr)+rL&?|xZ>lKK%Laflj>*bh0c4?` zg4Y-_7&MFmsND$NOfSlp?I zzY31ln|U)$VZSqQ+%frl2_2E!HWv@I|RX_MkX5rNr5x8si%G&e|QZ zVDB%!bRuR)e#UFoI>lAA`yPR`0Z%N7UbT-2O~N33MiCtLLT(uJd8qiQWCDKF*C44n zxVLhQ)3s<)Wg&GQBiWm1cUGgN9k*4+Zo>;iC*f0$!a;hYj+2#HzLSyNyn2*P)Ye-1 zv57_#$U@r|HZ0!Zi6F>A<&>+cOme_l192p)cty}bdj)m+XLrhv#m?P0{fAj+Z-ygS zS^6iBvbP)_Mg4>>R7+Zl!tven;``D*1cG0buq%AaL9}<0F_Mo1CYalug~;K6k`C?Z z$Yt_B%saCKoAWA)`hbh1mNC9l`C3;zrWo#`L3-O!Cb~8w&moL@GC>l6CN~RRtX;Dp zAmKxX;4wZWm|-?}m|7n3NfZ1&ZUi@e8T{&&>V&Z^Euk>f8}nm9F2o6n&^Ar3Bb?M1 z6sa>!Z$6=!48Q>^1lFQ?LSRCGV?=F!X5ABsw-o@GpQcanL@u8r90<1>kI#=G0H><- zO~i?d28j7ET({q27d2eMxj)NF68nLm0~-db5L;j~fjL*rL_SHm%~= z9D2G2@?Dd)^j-;p8Tf4qd52^##sTHL00CJk_@ONo*(+pxH__>Oe;i(S#wm>_YK*cnD0e6-FJ|6!OT46ZKhYZ<0Jw~3`askDY(@M($ z(B1gd10-Xcz|qdp#0-b(RKM9T*&9PCs^+vrzJNjI!eA(caDEMNBllJQNOu)|LtuEz z153y?tt8PBpSGjmm#QJ~MY-RF&~o4$PV|0ytgV7`r*N^{OK z6yAV4cLW?Kjmy8P=2JSl!-i(LpR-_>?DFxq_=#9p7ZQIFuXu0J2u~fdFd_g8FDQ%E zLk7+~us|3p`wZTo56Jl&sRh4kl$nd;!xGTKu5zL3z$EzXfskfJM{NUZfyh~R;~~5$ ziI}C0$NK%I zt!j_2Vv-Nau(9x+6O!adIA@zWXy<-Je!^KTIWkt$TJ&WU<=C0;m(M4}nHLT@DH?H>cFYk#fKb0F_PWJbGMnZw+zV3>|tPE8#?MSHnBv)}VhIFz*N}Pq9 zMMY7*Cy%2{ZhL5y$u+*9{`dSp&N|n08+!}Imfb`JD8STex|dzN*`GYJk;EGkx({(P zuA@GKXnqH_&!or;zE?B`2x^XJU$~zUnJrH>OVV=0IaUR~)_tV3V}2ANs6C~02u2Zh z9f+xkiZH&%EI26}hIBBHiwS7s6nBdwQEk)wAVAe(y;_?Oi?b4iVBdk*Ly6PONTP<* zhBnoKeoPkwv{CJ^$TT^~+U;BCp;*2B22JhFl*v<;V1Yg*uPx%K6PL73E{A;n8UQLU8HFZ`bky z33dfYa1$J^-}fbdVcpqs!q{c%`V&xHbSi{HX>VXZgeE_LCSQcstB~QSOV^LvNin{z zy9fPnL=~q}Pk;ICU042Kq2X`!;#Ct{tpeOwL#qeoL?w6XD%hPk9iz#>SM~tOy@g3X ze&n8c&QQ-G+DFR{^zuD-e$pu%`p7ZIQS1=}shpq~NmRm0A>qrdxmF@xKcZO@ni z{3q*fs5a?Mt&*GFaNOrya-1#gK1(>AXDlV85Fr=&irY*mMqVsmg?vec#!G=?`Em`{ehr78ymzub=OEA4$gvMAgzRh8 zmwzUYdly$M?QjF8bno_1Y?Dz|NA7QC6G^?8iF#iJ7LPbRZgB1A@hrWLeu_e7Rt!UA z`Rir+Lh~kXM>>1r`d4*BYnp@DFU*giNyH$*X${0rkxJNrF8%1X;^ZvG-7E9H?Ua&l z7+lhYZ=7G~jA6g~pr&X08s{jC%W~+X%kwynho2Q%VicNTf#Fg`S_a#5W2{Dn!ratW zi_w00Q1c*hsb{d?k3$$Kr}Uxjijgn6oPzUAc97M7Qh7>=lb{l%7Zb3oYfP8pfQ=Wk z!Mpvr^Nn`?3);SICZ_Oov_GcHkO`&dz#j0pOIqe;N-k1?b67sL_MDL z!_W}>@kgH2mJs?)ark2+vH`28B_S|-3XQuVA6ohk`Go+)FuCu3@%8?0I<7LpRYe}#!?<_0J?*b9S8A`TdCv1IXs(zxu2H49T- zq!#POtwly6MhxHKfV=4M` zHHStBdG=ihnm4)}>8_F2P{H$`iE8H6zYK@g|r*&`Vhjy(-nd?+X=FTyO<=%-> zqi+(Xs=!cc_K;qS?j!@1C*?`8uVL}ik{%T2Jc5Q0J}giAd&Ot(V=*S`q#g{Xc@6s?7jIEat#<~%0lS(d8B`w5?$GzaL92ZIhli1 z`YFv~Sfa;Q>dt0sS}KYgVrgjGlTkbrw~H>tM(Ip43VJZ;(1&x_< zO1|^;G5I{pT4RyUNK6Y7N=jyAMStfF;crrbBy9-t=l1C#no48a^yMeKZ1q~M^z-9P z%Ci2WAg6-UA*VkvmRh7`hyvOxfQ?s&ElG9)h5hsiU(FffMvr|UG-1{U$(81!aUYJS zTlGFK@wK57{a4y2n_1Ckfq8Gooms%l=;#BKz!H!Jwk}r8rZkWN4`cyX7K@V{j z9^8Kdr+-G~(P(!ke$ADb^g&_}@g$Kw?~-?OHJ^ae8Hds+xHIXS_InkhpC50Ucpo?ZOnF8OPU&~x`R?q8@0ii-R|qL(-c(bb2K-~$ zd~cEHqx|(h3|bU@N0Ja~=fg|0sXGZ*+AbQ~Ni>}2M5(Ln$mU}@Hk%1=*(E6P?K3_T z^>)w74i`4FhI+@oD2HA_Q1QI@ z0FU6usE(p2D~)vmknO@bn*~fOg`*tT&22_m&W@)g@j9(MIl!kCMTIFvspmEmG`);9 zj`3}ltHMpD_E$!Uzes%0xiAQZ8CWUp3ov>31Oxwu1}mRqgpuRIlbo5|4;Kp(PIfK<0g``j>zUmoBgD4Zg=_E z^hYS`yWqTzP02$ovvjN}tKlt1AY-UDdgN!xQ!~zkhiqqZ5Z-GfkLF3JJ(TRxhQV{9 zwCg~%NoVS7)zX1Y!Pqtz)57VY?&;qcNLFHHW92AC_$7fXT3T7c$YZ)^DC|nfbUr0r zF?o+&D+laN9c^1h3S+CuALXu_IyqxMJ=4t6j_VKXq-SXc%rZ!<0g93M|6DPU*ax+( z8xLdme742NF+tRiBU7c`2KRAHQG3*g)wE)kDo&NddX}$f^elJMaPE71_9=duyAYpQ zz-N*i9O6J9T%;d^&wchSbzaoY$!1l?jL%fuw5Kroy#Q6uRnIu19Efj}-8PW6Sp1!D z)qen>R-cO@?Sg(1VOM2@nC#~I(c06VqZ(s88m=J%R~fmJD}Xm^laf3TOc{ZVS8ckV zE#XnB90AV7O+~tm7-C09fPN@R$9_Ou8F=0yx)Vm+WK5b*lgB$ZU@9JMSr^)(sJhK} zQ)_%)BG;8S*+u?{%F(p+ViTPQGq0*FL|z<~s*Jxhz&P^9z{*p_HfNRE?i9f6Dp6x$t zs(Cn=kuZH%G`2D`ae-%2bv1VR*FO@VHtTY?~ zh`toPUl|2$QRoD>u;oKn)b^uNbXf;}jOGu{Ig?0&4uh2Lg{3tMp{&KOy>WF3XLxlq>X zGQ(=%75<%7D#M}od7Lx>lA3XGFDevz9;7owo8l`AcziIz+ZQb+OUX%SsJqg{5J~LY zpm3-nomu7e5i#W`h`GN%gmTUWAsajuVY;4EyPyY2*+tnz=RbWE5WYjyGmF0ePlU|z zpF;iz!W`@@tp5uLbN%<4++5863$U}Y{AbO7Lzb|eo&A4>x}2q*H3&^4?4VoOJDGw; z!GB?s8H7m{kWwJgVddZ;;bP`t<=c7B)6k z9uC(3PWyk+JO4X{%f`(4-++0ps}n=mjN~iWZA`QV9w!}MC`AIheScnxB8_8V0Ks(( z<+fT#JDp>2bY>y(!@T8(`EG^Y&+`=if|;noC!fMX>BRRpdq1#XCY8rI+=PO5B>Sx# zU%vf7io@oE?#(X2ze=CLTl1FJ-QV4r*`1(4_QSPof51bikninoo%?Rcc)0^W{9+nANX;8LPoJKIB^yzJd)5q@n9V|l6mEGHj9cykIIvK(AzUyZ_B47;4;e>3=%>&D~ld3 z?w0DgfqZ|pLR^C#h)mR}Gjn|YVaY_}uwIZ9h3V7rjpVsA^8Y>i;_Ny3lz27Ry-c<#vI*!EN>Y^{AS-Gl7L;5h% zRwDBru4Anu>Bpm)Z&%@1+Q$8ItZfaK>;!Fjh5fLv(UrPAGjF1l-jR>@pd3->zowx1 z!7_=p*3VK4j>9ze?1&CVvpI2Tri9wO0Etps66@-Unt|Df`$Z9|z?OufIdZV6ptjgU zE?;iNOft(0Qc0WeZ#@4R@{E)Grd z{WdbFjI3|0Y?r93Mkdeqwq!Q6oXLFHn4}yl97vPgdj(FTB$w1sK>UOsBp7&gnOV zX$zBgc46;;3s{LiS*cJcFIJJn_!!>Dn2&)=!v`))d!SRLRJ2jCoDQI-yX`IPG!nV^ zvnwdd1kF6ZOC99Rh4QZ$abX~zl+;J6qsegAWhzO=i4&%5J9>DlQ3lm@)(AVUCg{?~ha2q?XKK9mmuHJhR z$|)n?6)mk3dZ&p&mqu!8x@@ZV8H?94mY@4W+{|F9K$mWuiorvTF~K zS@su>$YdB(7ZznL2FUVr88hAc1+FKTR8$%f^@Qoy|2R5Y*cs8I`g1gci~XIgew0!f zI>dpAj+++s7hB!VAorUr+DAFQXB4t;{oT4_kuaph4OxYH`sDhH-DNSowQDoAaj>7# zT5Dg(7fWhmw;#$3U*&S-b-$n7E5mx|?cE`mOxGyy2M>Xqy!`%nphuFep5h5g{bfuQp%5J_-8Apk%9^VDg9)f9k*i+D;*8(P+G$)l>i| z<8yM>_A#S~cw;^rHrR=w<`cQ%bhO6)wa(mfD79ixGkrinM$}7a2E3$e>cODeHy4l9 z25$yYM?p&E$*B0Fq7BGI({=c)Q+|>m2U}Ie1T+?HNxQy={)G!!aOyLNjhYm%C#6(x zZh;Z62QQ`-)2OG?Y-BJ%n;hdzq2SQ}VD2rT;#juDZwT&Aa0Y?}f(|fvAUFhfcXxN! z;O_43A-KB}oL~V0gy0e!z9Hw{^Uita-uvG7U(b?WE1Bx5?ygM%gEhuiIfvo>BaMWAo zkcNoJKUw!OH&hFh#o|x}TVpD(%D!?}mQz?%8i%ud;$2RlN2(WziPJFV$Xl{W{4ouD zQbhFx?_8A>)MWmn-rAI0xR9jcN7G99^a=}>0QfbtdziQ{RgY!OX#0O8^(fasKtJGm z*K0!ST}1{pnwR0z&?JyI)=sU|okbNkQ@gk%&94J8B1If%lyOWTJM}ZndGD}*b%U< zOc3&mHU)xa;Jf)O%WghXz8g${^DiRl6{A`(RkQEh!kK*45VU2;xEVQENiDA{wx$17 z`u#{`(_5FBD}jc*uatAFz}+sf6i`U{(L;v|qvmKi^ll43uHGUlfytD9ZM39M51+OW z3|S=79elbw50`uBz<7&Wo}CQq5isBGvSBmD)096EXX2A)ReT+~P!WnW4b^Av19;VF z7ZxKKgxqcFh{qwkhh~K@)LYF9uI^_aCtY)9u1Wkq=^7Dtw>qXju+~hT1#8y6tlIXy zxr9L@bKO@tcZ?Q@c<29;-HAu$rSqe!&?O!?Gy1vENf!LtuE@z4qs#=)*TY@kPtmcm zON(hOk|mZ|(aYIgNTrWBrKH^&llC|^**@)6_+zynacH@j!`}SCbV*(LP z3DXhj5`U^XU@#v^b0iS#w#^=5E~IA1mm4u;rb%)xg{k>iWt;i4gu zFNuIXkx#xY!ilx#*95>o>-t1fzE^I8nEy`x0yFXRmj}Jgsh_|cL%-o?j!O%r1iUtCY38Ti9&z+=bthu$5o7j+1HNwj&JTQ(- zJ9sU7ujn(@TenT>&cN&v?QsSk5k+rLy008>-6CdsRd(zmvfsDlvZJf89h~pzIfLGt zPyYDsS-H^y%3k1a2Q+rnHv6s1?dmBEnu!fz^b}Do9JwM?Ns;@SM-i&E;dBJ0V`3-{ z?8E1>B;0dnp9Mc@gZVz;>DnV{_PV7M`8zr2)a}AXm41@~9^SJJ% z!Q3)*6msi<9+NM*D;e+mf%n5Km{>Gn>%xeq>QuK(jPI^e?ru`-eby9#HoN{D@l`&Hly}X=lxTw>XHUI z3~%u&zF~1l+J$}`YvJrrBlb8uv3&>c9x^;^Hx=Fz$~hlGIO|!wR_ju!uopy?W`*Nk zDaEKb#6M$q7jYNKt$r~P%^9w2MBK18Z~+GXr}dI@xA>G-QT%fkNeP0#-+ z&h%$y@$Z-uJD53vfGl8}>Aw^?vHUwS5i4K~#SAZemErGH*aREkhc(vH+*2ZsJDm6Z zp)l<9{k}xzk|(d;HEBlAe7-T;w@4|#EmVKz#Y{mTyFK8USc@1IKPu>Z&YErNwiPJX8_+&6RLntOAO3!^& zVYOsi(o^L3SrX-k6@c=y5Ya(*fZAacofzY$bXkCi(TK#>&OUdzZNhl`2I8{Y(8WMd z+&BsUAzY@|Wys@qCs$Lwf@ZG6mdK1524@cs}FfM52sfsN$&MJ};8Y&;Tpa z_VoAay~xE(L=hTe*mQAeb+BAuvEJhv!jY(cBktQmDnItCS}tu=u`a0C7~mL zkQtR4`}_5^FVfW7zGn}%htn<%sCItU>#eZW2gbGliF6X3-0Z{_)BJ+M-lqn~CO>ru z6tr+C-rFK`p2~dnSJ_k_M2>;z+>E=1@l@71^Ny8#BJZe^XfobdROm)HB{Xb5-SQ^zJOsHv@s`yOIdA%yTB zXbQ*w*23}^fX&Lu0^kI3{#PppGYI%c<#^`T0l)b5rVhkHx7`bB-6Bae*^h5z5!`)B z5pz)vry|F1Z{9v}rhX8#((M%**f$TTwaC+>*iG-k?I@hL`x))n9bhakP38xXNj zyVNH_S@>Yc%i}WC%Q97}fGl$ci$i_F{4P_!c{}LCffZmCu3HHh68}H-p1JVOko65u|tG9M|mq^w zEF1vv@sIW-{=0^hljV;?Y8At5118r&E>B?~l@{IX%<%eGtH_c|GT6bb%3V*%vKh)u ztg)Mu&e~_&gl2Kf0o{A7q0GVN84AOy?3fK+8Pi|Ab5|>xc!pRKg7gach3($Xyd>Te z(N|)IXD2A=|Jc7D@$u6dQ;W*yp9`~5l@9b-Ma+Y2S4=-;USr!d7rs^wPD$>oQqRf7 zJiiY|k{TY>X^bnBr&Mgmgw>X5Z=-iCoJ8})8f=RKa`lNBS^}3cMFt;3P%ofimxYA? zI?BNRQ-gPgY2YYfjycW5w z;?`(tj@`FDw?92^PJYM~tE_*%DfY>>@1)>^0%ZC;oL+ndlfvXG9JTgWLR<6Z z8+YfEg@i=GE2%`{G+te6!pJ6(xp!AvQ!j`zB{N&3w=Xkrs_u_%*p$qR-7A)pwAzk-zA zi$)>G3^m1o1VYi!meS_jsr^S*=^2_R{{`z(Z?DLG?APKjVPP&=soVaGFs3-Rcxq=| z{%Y1g_NEMUI!xrXH(t}H3P6qZHeh@*zl=r2;t)ww0z|*BwoMlwUHxv8iTz;jFYQPc zz4y50bnt^w&zO3e@RGjl^eQXoe>2YrvS)wuNvXGkTf(H)vm^nRp)Zw|-j^f# zpjU_&!XK$y#tGM#IMyWV`x^*O2s9=+bYFFW+iDkTu{`3|+oZddxD43p-i(3`c(*!x zc}KrgV_gbL>R1C5dwFMymqW1I43V#JTAGuoDk=t8NuJd3@;33DiAPIw9N zsX--+-{aNjyI6a|5ZNE;=#0VN8kd-aJAZY{(G1C6gYAInkW#%#vp@*xa9nx7t>A-= zpah?Vzx1|0t5Icc=@EIUGl6nBL!3lm%fmt|mgdG@$Lg-lGy<%j-a8?umV#pCQSNLrdQnoGhDK=lBL}~xf~$v z_1JxW7?QQ2W0XG55F9>r?b`9+db{k=avMTi!)eF6=eb(8#S~-hZGR?2IZ@>Nu#aiXVX|tVAmb%?3>doirVo|x! zm7o|guDFC(M5^~v(TGB4K5P5B7pQ)HsL~0;W2WZOaE-sv2!tM15O(;k5+?rI-bi!} zJ4aPc(dA^auXkqEeY*PlV{Vn}_VW^mc&rfPHnIu^~hh^NDAwV1G2kstVAbj0(H zPZd!15f)7N2{0hnEp#EoNRaiabIFgyH-kJ&w6w;T0EyX!n^5ukhbC4)FI&whAA9h!=O^&)OX~K$JkS7BDG_; zP|wmfP`LyIOhqqVhNYs#=~sDcPO1||mP#CaV8V9<_E<)b`Lk^u+7TaO6d}x+5a>m< zxqV>LAswBwD-fxF=s6UpeeAJYDmrnyyNLxw&JDf+iFUQ>SzAzqTdDimfKx=~z}tjt>5+q2Mc ztHh?6m$w!SRz^GK-6DQ96iV4q@Fe4Q#2;@ppNU=cC--Cz_7&KD3<{wjVZk&yf>u~Xb#s#w`HhW z{mpwC?&n>GJnie^RM&Klb{`w@a;Gla9BQ*qT|t%=S?xnD6muWL$q=r@vK~+g{RSky zoYmDl76I9LODj@tKVI?4?Mj(6?#AByvSV`w5dY8DelNapuaq)e{m|{f}e__tHN)(W^TG`m9R*ud> ze4ip|Gc>b1MeVZ!h2Rc-)X##Wafi)ZZZ!qM6hBacdt^U_xT!EUZpS$CsLqu<3_#4{ zW6Z-Rx%V!5*4E#Y1hriCYAf-J=o*QB;6x3c;W}^IFc`tE6OyT?cOfTA1M_Qu8d&e> z)Je(;3THdQeDA~~scFMF`S+l#0Xv{2H*~6>E1PO6x)XG z;P3j$Sn&vtv}5G3a{i13{Zt^_5q1WSu>)xwN`Jcl@GI1q`OXeUqZ10Wh8Mg~e_`EW zte6Q%ja73H??xTV$~*GOIT@?c^SO0b_0AmLZ)H^86>e#BG|HF@fLs$tE@AWC;bo+s zg`6)4U-U7m%u1i849oT2+;HeLN>ag!l2v<<(dDcZJZ?%A$qJ4rTX_$qjBN2S$BozX z$NpTDsvAm-c2rku0`yi~C*!fG+mIK_nL4ew3Qw8Y#Ny$_0tB<9w=r*GNy;GwLC%P5 z1^gf%9fOeQ@Nq+#W`I-Ypgjw_(^yLNL#nC+TKR-KMRFx7aDxd=w!-|q$CUAcjz;e* z;FNV#v1K#y7#EB_3Q`Wqd9D_BmigO>Wezw~W-;G0cvv$RH#-#cJ7d*z3=NMMZCQD7 zp$6M~x=S(O08k-+r`W%`$z%CFZ9RcG365IPT^Lrivp8rbX{Y6M&b+ZNpA)i9Dv>gT zYR>CJD(Bn0_Fg@GPHdS7k}~SygNE~_gCAW`?LRH5TQy_cdwZp`)T^(H&0mWWPoYI5 z?g@H<>Uvr~ZgLG`oe3&-7YVuPL;L=u#H!L66 zIi`rGXK?IB>{PO@t|5cJ@qUv`V`@It4n4wGyboO$g8Z>y^?uB2gSTSO?Q@2R>rGMM)d8haF&5vrG_Kv&5 zw{KV0AFtQfCpzy=z8-hJ^*JBE**Q$dk?81X8h7#WoS9?9_)sGcJ7Y&`T%jX@H!0uK zC6@ic3lGAr7A@L@RQqiHW$Ss0GxZZ3$`h0Wq;>8;FhKs|Bl3R&AAvYH0j&Q6^yp8t z(ZE2O>BkOYK9w44c+pid?HGlT+_-*6_Q{iPXD-fW6b@bRGi{V3HmExHhI{ukK^W|+ z`PIw9^#StxVjy%Yi#*WNvj=9Mh1&*CUkS_OCPz(meAdQJuKt5d%+AOd=EF$CmGT=? z`|E6~5W*o_CLV)p82feEASd(@nmNY?{!B6A+EZ54A|*RGeBqsfH7NCOJ3%8>Kfg!F zu|9Gm?~}FHcKCDnlJXi-5t^ufY|Pl5qCI~fNpEZ%cT4Ix_Dv;9@6}}qw#zO%6DL=E zDNvN#V9Vs^bis@{!O|enJK}{v24{4XZ{c2ty#ne>qg03NFps=F<@K&j`IozNN45c@ zgq~fDCQ%`?|3Fdx;*RrwLQ$AO>;P8I|9;HKYu(EP#tvEj4t^!%rKD%jS?P3mQY;jL zGj~uh!VAj2U86H5`@C_tkm7wfKx1U5ytq>#3d)HeQ1B1jjCh-FL6gEKw@8I~tiv?z zWJ>+JAWZ;T{kcDx2-_)*iL{V0N?~o0bw01Uug@u;w;yDtt#I>~qa6g*25DN?QBtF76jBQz)OqUU!Pknx1vW^LAYb7${ zc^T)H@!3*r$8JeGZuq`Bp;_2uCtoJsHVQ!n@AF{PUS%DETW4^5etjMnHMjoO(_W=$ z@shicO+70;;#+d?12E3Ry6q~f1m|12K|I@wy zcAVzg>aA-XHgqDu_fviSd2Q#-Mh2!`#9Q8rsZNPG(U6hji*^mMp;q;OSx$5R!@K|!^dh4aR3z^)hVp&E#f z^_@SWuLy_&BTse6=D~7EnhcYWvC`l}Lx;)t#{3-u9xM9$zA!!>`;j8D>3msCrSWF( zwqte;+JXJ1%Eg;=uMmMIHFvxu4kHMSC4W}G)1TKl88m^YjtF%HG%a#GLs*|n*2`ua zn#|c)WF-6b&{juEVa4Bj@l=M&_F`}9C9<1mFu{Fs)Rxnf!t_{ds!u6qPh(%Ij(;JH zL+?^g!+oTMQWm8Vxh|$ntn|8h&BFxD&auq-5`bq6Trn?HP++u zmBQ0w_Ua&tK3do9!s+5xj%!d(|1k=_SOEGkFOqroUTlKe`HQ(lo2IbvH;4&uXa2x^Q8DZYFT(M1;Yu$VuoLh_7WtFex_ov*rDB0 z^e?MumMb4IO2km&t3u}MoBqz^WEng~RCFH_Xx7-Rs-|y&&QdWQBRLP>K;}VeNjP6- zr9wIttWbU2Qm%19@|qL*?d-Z2?LcP_pMpOAQLu1Lr^kUdl&<&8`a^zwU=@`F?}dxc z4>*6#_e~@SAeY?>{!M7R9C!^*Whkh{Bm;3#e`?(Dh&pstM92s~9!BUCc)`3+Ct-Sx zbMz@{D&uYxrsM{KW$){fDpiGOphBudrw?fZR+NFPh>(g2l*&B?i4?{;-AYJ$m|5|` z^{ts7qt_Wr8(*SYl>2$G5+!YMqqBX*v}A(r@I%MHm_h!&NvYsc}3# zGjZfyojCCdSTF?^Mf22#`ss)#wAx zFGkKd^w%;@>=Vr&sG5DI#l%ci;+3g~U^ik?5*1gHoHWVmZp|X(SebFuJi7RiXE`t? zH&?`UoO6V*jmRy8W6k(dPUZ7$$G4o_A>PRN?3S_ci9-?C?DG3dw~n!`jNDDyDG{-x z#I~xy<8U-Z$ciIK&!2C@M7@~D>%-nUu%HTX?4wH8U~h{f;$U&P%L%?e*wMF;Z&pJZ zOPSh6#}5_9M!zn>;AoUj>Yb%9z;P-39*J#@?wZi5y`0>z7$@*1itC#}a^kYBf1#JE z-&b898WZj^erjuDdt`Y;eS~F)aVwY(elyNPqHjdFCIGt{y}p3ljUTmv-v%*!a~ zRgA^NYQ-BPS=*gKfBu2RqohwA@y!_%?^_0#0ZUu#lR-WWme#Pl0k)SOx^Cad&=Gcf zZMn%ZaQz__$tXPrY3TBh_g1jKd1kvWRX6r_~wR6+! zh;nON9&h?Z{!Y`zX7b2S)!j{3H*ZfZuczv4Z?A{j{lkajrue`S0~ z2R&TgxeT6oaDVqaKWyy=aW0fL^In;C4}UDl#5g;VI+;0N>}OoDI{qYdkkW37r=;q3 zBQQ->#ip#8&mtTrES<3Wg*evNg;3{i9z$n0rv`>dKQEA3hu zS!p82+ow!3b1BWH0ZYe$;$~LltG|#RNSH1Z@Rc}zs~IOUgP0CuoWRabjygRZ7ctM= zJlMgX=l-*Q(g^!KsOt%0EFD|sAADv0VaxwtxeJ3m$^ZC`StvU$5g>rvw)@&1H%2@Q z^~#QJELy+?BL!Vo48 z5}%*vMJzvoFT??o=)=y!3fjf2=)FuDtn$ELrSTVwL>3$@^IsoT1K#Fh1w8*&0ms+; zd6NqSc-~Y0RV-p-?fC4cF9LQOe=Y-i{Idg|M+|3<7|Ue;_PoRsi_;_u^t^2L~wq)>{!~aM-}FJwveY zm^lI9<2OOFFaf~F|1VMgiU4o`$5uQGL>}-fzybWvuV5PRX7cZnX8H9*;DCxhNt*dT zmNd(AfBzQT_?tJy|BR&nnRLO25J0s?@KU$RqW;RJw>U$O&B_3ujh&!qnU zAnD&l`D=#~eEUC(5*%RjA1N*He@SWonJ9rQ0Pyjf_<-QZx?f83DZtMp%HoWt{Eb^@=xY>14KW`@sG{(0yC z%zvBszm_GyFBOvq0Dpbb0{7%^>m~3Ho-Y3u8wJq#TWdyDHFfa#KSwrk{5=*3!1TxV zfAPH#)N|Ccv@v;Jp-sSXoxd&6h>Su;4&W91*X_VlMA^*9#mHXP-pJVKIqdSc_|M-~ zk-wY*w>5LHwbXMHvN2FJbF?)2TY%=jb%ON|t^vP=R5ODEv4G&2_pg2;0GU94`i;=9 zie!sDnEL2WQci3}IbPxX(N#25jow|CSHzSOgTI?xjK`nekm96j1b{$6hVfwzYYW)7 zSW9e#ve)FmBn_D8ZLagn@L=aKt)0X*ieIeaNYW{F2&4GMt@HK#JHv41@tB_T)k;0) z!3cxOepyvj>;Cc6an{je$5H3gkrq0{5(hjk^X2*~7GK;YGT;#I zbM%EX%E4$N(jDXkT2A?=)_TdshaDY=0#be}8ygpsTenkM{&^_X6>g>$n@IXfyqass z&tFJamYVAf-7vZqd~P2mVY#kQ?8&rWgyQ%%7CYp8VMsuN@PPqDb#DxrdO~PHyw*Dm z=v@tXdjQ_41S~_;K|&K%Y;4*Y22=_XQpJQThZeyYLJ~Fg*ZBH^EYR1-2ktV2d>bB9 zP-56Ml?-$eX-x*3VwcAVCM-Ig#`#n{oL7C+ZR*lc7$4+Hb-!^No{Or??QzQ&IzjtF zTQ}~Gb9@MZ*CSmMd6_m9Y?BA2AvZqvl{3%|ni0~rk85M211a(fAgBr%VvAQN_O<4X zZ~Q$9_9%AUo8un+s9_|u*v>%s&~*$i2(<*78_-m5(YGDD*4TNgaB}eTwMYI=yI@%ej*H&p-%~!u)hv&_#UQH!+7;(UR;B?U7o)gMoL&&7 znK+@UU5`{uP|qQWw}g^!kMHAdLoP-DoB^S7&~j1Zdjkv+xultR1ImsDc(3*Z(LHi< z5ph%zNt5&n&6MHcbt>B0bkUc0@dKi% zYNYptVDHY4c9Hkxgs-Tw+V@0W(w0;vpjRbiC@3r9ma$Y6a){1XSDbL@ z((?}9Eclf6&0ddNlp#5!QdxFZR$WjPefVeu12O`Rvou&)C5|*SEX&sjYP;n_=mgo=do%_-W12P#IlmXf5TqLfk0MBm!sKK!n} zdZmra4^huUME!Npylak)fZ#PQ2p{1S(2fzSB|Rb-#EfC6@Bg7VH56DoBsHKK%{*@q zafydyvRmKr{@(9{@Qoqs%0wSDRy7dAWHZT=1s9bi*CN}SXcitx`#yJ;L!9phDA@I+ zfH}EYYN%l<@ljz}oB#aD7&R9Kst1yY<zbv}u9H90?22lC7xM;7I_0v}r1Pz9 zzSh*#L}nnxgJ8|weKps&O0MDhjx|iVGh`la_J_F(pe8Q^ z(GstlhzfgZ-n`WWZqW)A9dU2ko;Jy9mPTjxpmS9QjlHCygDl6LNBvc%`OleB*f}it z1cgzj2=yKtsRlEnS$hZ0k5nS2r!($}mE`kb`DpK(?z{5+A7%c2s7mRb)GA z?Ba+l*)>qzd1=c}+}pBz_YqhV6iO`(!aHjPE?r-IV{MN}VojQfU}-6+%~&3Z&}XR% zQooONhhOA0>vt`G>yP;u(CsVHPVZe7DKpZfJ*aA&G<|z2j$-9)fIu({pL9aX3Ozzr z2kc1>#pZbvqbtZB+{3OWcQ9HiRg_}i94K!Edoj=Ha55Avu=2HRT4k^7TZ#uwBc=?|tjuUTs7Ajk8{gN;ztTdD}Y zpWCGc=adKQ5>SD}(Vhgzzf5#6JZNtQ_h4b-BmTf#!u8f9?}ZgLbuV2%zuFh|8!05I z-jr(#lR2f~n|3EtXJYGrIC^mvVA?8{FWRI>A&cNf9u!L1#Joy`?r;h23T)gU{RIba zSoFb8&jP9rhnsu>z%*(SzIRiS=A8;&KV_KL&2Eh2kFu}Eif>rPQ;KkxhFX}dn})3P z%C#s6qX<9F($5Ib%+eFW45N#|l$L5Al#ftL+c?F3>e_VNM!f0!j@||n9&YX#rKzK2 z<%IF+a_dTLqR`;Uem#hql>6*Df7_z^Fk)Pj54Y9%x+nZC*JH22%BT5u@B1;2{LZ#J zKT$MjsH=;WbD=3$lkIOFq^_1v)q`Dn0KQ%y8dfq=%0*IV`sP#t$6>|vOUC3X0){J- zM%tw%j^wV4*S&8{gQd0VVl(@`WPQ~~@wa>^jduq7cWXW+F+4R48P5^4MdipjeM%0&74xNdETxSm3zJJo`d`} zqnJpxg4LB$Gj{f-kw@QLQ_3B^!Xnkj$+i#$W|nC+)j zY3?huv2~>FtLr4vMILs&+jMYG94(f~eyijo*`htuxOHaqcp-FRldTdZ?!_HUU1fE1 zLGJ^<;bQ}d?a7v5J;^LLavKTYfD@fn63jSHdZWcww|EXRNWX3NsK-w z#}C2N4aiW$V<^|CV*Wrs3!*w_MGbbqEM^uhYE<))MxcnRB9KSq8f-(y!nHcj8+n;I zDx|3Q-b9gVp5*r*QA4MJm?Rq_v0Ocwd;LV zh`Vc#&KL2bYx+M%H%IE<#k=*2i-R-~_jt6}&hVu9Wb`2@e`4m!k02N_Wr`bTz2}`_ zm0`y%)~#kxA7f}%*HJoZk z>2r1i6D6{B&&#>xx#eVb)}yD}{&0P-gMFa}hfDJ>%!9S)SJ%*bPqdMPCfAZZh(o3* z#dJSsuY?hquG&6@n+>&?5ABGLZ}S}&;IgpxhsoI0bR8@Im>zh#CCNS?p7eWy>|?s(`YU5&{flw_3=zQQjDfwGt)q?oZ%{#6&kCI8M&Q>U zI(Zv?8%G;@c_R}iOTFg`mU<=*&*?7&91Or93&6<&VgLbIfgHcgqF+VyEUc^y%&bi8 zV0%}=(a1^}zy@SsVPRos1E<{()Uy>cGBYuC1b~>C7&w6-u&E~wwzA9&1guTK_7Iqh zJwMZLX>aI3Kz0TWW_Iv%)3boU)j7di++b^vm4ks5+!Bn|*uY61zet*xbz)w7Vn*&+}bRi0CgXt1&Z8Gvk@zl_gkQ;~%g#K6YJ z!N#ctU}XhpfWSFBI5@$g2cLTW%Le3NU;>|I)dGMMlW2e&GO(~SgIKfx?400_;EQpx zvVje1Hg;wPaNN!>ddJ2NE@fxsU8^k z&JzM+13jDHY;4S60~>ty`Tu{oCioLG8v{GI4UmN$oJE8Qe9h;&EbN?YKrQg-390<* z<=;o_`T75b2mZC)`=>-2TCq|V;0^oW<3}8>#t?lFsTCZV>82RyVBmtXrmC~NZmsfOw=y`#8Wo2cCrk9;pSVpT{ zmvgrz6B0CmVnWTbmCER@6L{9#WA0Ca9;xZyRJVgIe2pZhm%9t8k`UAS(ksG0`y{kUmL)=Y#g623kEyC=A=A$ z;1z9@tj(TN$bmh7z=QtBY5NS({-y-KqY!o`@JjP9Rf7G`>8!pfdw43&eSG|>W|BQT zMgiP?Z+zzco&`C_@LdWz(~tosCiW&&q&`F~f*U%Co0z}E47Pe0yf|J79<;$nZ3)QA z@o)NgC?d4irm+^UgkFb=a7kax8k9tOK;%eqr-I~6uXu9u>z@Jn@ z6k%)9A&^Te%6tqjaC(J&qu~}Oapw|}IGlxjpkt7AeUye@eGC)Gg5Ds9FmV!Bayyu- zkc4PQskvQFYq@-cb2cqC{Lk(ozrtQgL1d4aZUVfa<>E z+!&p7e-Pl9Hy+1)Xw7X z9cOD(44$VR^5kZ&=pEL5aXRai&$=kUdCzDMtLo^zmhzc(gW2G}ZKlMTjW`8tD zs8eRb=yp|1m5zu&Xf^r7nAqyy14zprrvrGr1Q~n+c0&bv0M&r6q{mt$Bef8eDSnhR zLI`DYAz$PI%x86BM{4n$+{YDr5g0$meyAN1Mlr8B(Xhx|P~onw&W<3M)qjm^z_*i& zd1GALQL8%ZD)A>efr z8<0OcA?lK%@_#;jaR8w)uH6l3DNKs03)5jps(J&0I}qFX1!Tpe`^)_v^MiZ_R@s+0wT8+;^asKaDDX7|Z{i8iV~&DJ z;VvaOLzPs625Vv1I7&nt{VNCU4&Gt8pB6a6*4H3aZ=i6(yh!rnRYhaaO>GcN11RMn z*mOmYFODhafM4yJg7AXcEt>U(Mh%h`#7j}wP@1!1*uMlOY8Yq&rca`$J5Cm@&(tO!V{n@%1wYmgmWl09|UVONJ zqg`3{B_RPJ0r;`% zVLQ^(^0Y=5b8?>RIzr{$_NSx$BPe7tC=bQk6qdYvXOF#MO2Hk8d!5{x;nO<#-kG?Fqe)tCk^h(yyZW$J{nmp;g7{`)`%Lp z4@Nktri>y;2^TFGiBtts8NY5_ z?|AKT6^ijDUAWG62aB}*bmiwyS;}MRZJvJASL88A;V3`&uf1m!T(x4k3|q#>u)PTp z-@}HxyWW4-UBBL-i9mLjxq_Li$A2R%X;)xaX!`oi%vXI~(wedkb7e~Dx@~@bh9ko7 zR|-|EH}Cgk3`qflqbQ+5X^aD=WatWMAFEClq~6Oj(f5?36fe%L<$Pjn=)az67og|j z<_<7pu)2^{DchXVR4+0hAH5J6K4oNdJ)xHJ>ngEwnzTvgs*;Z9Vy{|#xSvz9KW*In z93NBD@|56Nz5)Tv`+6o!JI>A;;-1mgxF1r*p;bL%!7}@2QEMJdr+0(pa1-SJ&bT zer+-ke{W`oSidfnX~XnqBhOV`dF;TY+1|T=H90)D7Le;TF}-6M-zUVx(ljjTomrNc zZk9RZaX8ZSira?oDHBEIGi+aoin7l^vY|;TEBC#njE-&h_O}*vXCwrIk~20uXA^UR z_NTQW$%Uv0dTTR263W}K$i0}^jO3biDf#j7JrQx;*qI3#3F#@=1}xN+qo}O4?RD+L zwV)!k`1Dn+<)W`2s2uFuAYBINl1gF0F^X?B4_8SKkg`y5c0YoH7H{hJZ|WQOEXR{F zM%p=S-VKS)LL2qj*%f_avMA4Jr{jI7>hU*Ykkr)JnwL&4r=u%(+&Pnr zqr5pa>b$o?RNdnSs0{bZ${w})k%-$ zlsj{RDl+*NRH7Gv_T*{2KcR=&OO)LY0fm&$q_z{M5w}yr8JjASG^}Y1{U-ZBX_OGqr3ihDSj4dg6lufBMXqBXLMY`a zruYU^ibuY#7oWS^@SFAJ$@PQR)|E%SU{f#zX&c6^zx&7Kyn4ZxJ#0p>E=}?w(z^K} zQMziWYs^@Sd*I0E5IQAsL+AdOKFm~J+IV-bfre9`EM0J>9J=@0T0HAMw{m4E<~@>$v%7R|s%zocq*`jwt$^`|^7) zjqf$)Q4c9y-dSe!ju-~^b852V+YLt{(2mt*g@3ZSf9z)M01;|&q{xX}=pq`-EL~>g zy?gDMIRo#^Q*AU*k+#1CR6nEAUT&=E-?dO{I{e&Mm6sH5WwB+jz~@z4IP`RV>QEW} za7oz7(E-UQIhty)8_dZ=?Z-KVsE_();n)RIKi1tQ0Hu#LQ{{3kY#d-beG{6Qz1rij z^5#V(02dV$n)(%nIsRy}L?fvCg+6SiiX&mwc^w0_7WsF~o%GjY@GZ+?Uj9|^EeC~? znU1xw9W7I1otPJM+BZEnsrT=ITB;1$$HXI(lLhB|%`P+#hoiCgHp$;dV=uD(ClGFX zBux%4+~{E5wg$n$z(75$c6i^^YwXPcjqYcZxfDd6$oAqp2hL@nAK0=U$@ebaaZ&C~ zW`f`8tm=Kn;zcA$t^WO$z#xp5>sa?&Y{xMHQH}31qD1#H{!tAnHyChUQ)0)_`B}KY zV|>vN7-ILyJ~RaPNugE$N1DA=HUb}z-y?4rDx!OFA}VY14Wxh%`o*1yyT+7;{~Gqi zzz%$e&J>?OHPUTnPCLDE$AWZqkitTFW}DR1%x0@*;#ZVvctmD8^A>GP%y>Qe^($_Va`g#)BG z4f6Tf23kE1|V{>4U9%QF_{Yfwz3ivV@Yd^<9 z1RR%Wl1g8CeB&aVyV>sdC&5;vD=BJ;S!j@VnzPl`5>x6mi_HnrRtK1NB-1j^v`Lqt zD>9V4m;Js%p-pSbpvVXMAOVeobnBM`XPkNig`1`za@8qSZ<2ar$vw_8^IkyMxkY9Q zS>S45@XVv#F*@g+fD2Mfd2A6<%Z#)Od`qU=^`XD@j{^U%tXAg8+3ZP0(v7F3%#Ie` z$el`4^zl~rNi1n`q`k$C^4`ebq#94#YFRl|w&JZ=IRQ7GBAlSX5eK#r6tNThZ$#Na zyQ;6LyMEqA)Y-^$T&WGc)E)H_ag%R~l|d{Phuk?&9L9o?(k0>h$`bj~@!Xbxnnq*v z+meyvObLg#0%Rl(>wv+o0kjd$)LsM!UyCmbaMQI2P@Oc|?l0nY;HgMt)Hf{_of#dG z>u7*2b4($lPI0w3j1}_^{9N zY%luF-h~gPHcnEuY;HsWrjUb|r!Y2yM1moQf|Agopclnx?k|yX)QK2jk0V+ z&R&To32#sy5eZ46Bx>sjF-cuHHbSE4@^H~N`*c90TT_xG_*zPlvycZBNw(G>a##{Q#r7G=j^%`6S)@%l_pMk@mDJvod4u^oAoyzfMrCS+u;r|hHv&f6?yV{HSj@Qbj4vDoi~jpG+R1H-fD>pb%ydKMrX z0|$_k1I*$61z`iSaWFhr0@wQIhz$&n7{FKvOw;IrAaJ5oW-uKBvpF!;17kg~mlqQY z_#!M!K;}OqwqFh|e?V-1@MZkBe*YD*{qouPBSrWpLiim!{Ldpcupb{g6AJ?q8xx4* zuVCsAek=cqLa=cBDJO|m?6`Fx06XZ4r(bL04OLEMV?16w?qHv=k32V8j_pSZ9Qe(i zPd3opQZ2sQ0Ui_WL^L*KB6MgMtN7D-Ap&OKZP~-I;CZ7Y;wfNC1J_?4=jo@2$XPs8>b^m~iiIBu#W$ z5&U46N@Gjf&whL#`O+CSIY(aL7tayNglX~x!7-C07CVAj`JLQ?lNRRe*}4~r(gUD_ z>t)%o1Pz{~TJ!XSK@LxN->Xb0qg{S9w*tw6U4G7R#h|QKkJ~Rl*wvE)>)u3mB=05k z_wuM0v6TE<;j%cqX@I~Q&M1ZE8Z zQ5uzu0%AJag910dJH%L}b%{BqF%mIECPGfVyIOb!&!i315Gq6>h<)5fbuROi1EBn3 zJLpDfT#D%x2E-SeOr6gA0UzztZ5MtXh%et;(t;bi^Xs)B9&CJ5ewde=yRN4rLCB-! zG*wkK((cIFq3~D1#;7e!eRj4`x>o~;yl8T`jGX)bsC&z>IJR|dw{drOcee%-+}+*X zgA?4{-Q6Vw2pXK=ZXvk41b2dbojKQx_)Tpjequv@dnttkjpI6;9 zExijYg9va0I=}642SpOZZ-Xy=$j=`bU;qCL!(F>|0UtF6PD=f%ncwE@ru-YFdd%W zYS?QUt(_VLJxLD~0!&lRJ|I>B$i1j|_r_oWVA!)3$} zD1~O%!ODtE1(!4H8y_ccDq{7%GFrUS&>`U{hYaIFMFg>NM75r`_Q2D?V)BKO0&;rb zUQo9Dv1i{LkK$=Lxs9QdksZKT3Anb{gyE^fhA=O2iHKd$PJH^cgs@e5P0{E8WkqP$ z(-GL5_?=>ef$fXrxvnx87S|Q1ACU?5>!*1MW#?DALOlOYN zuxYAoJ-itNhvKfs}?oTY@&T5}jb+rW0qyJ@59uWvUyP?yD6Y z&%IZXFs8{YMfY9pz4bi(&k}Lni7e{(+EuaAR1?dD^VKG?NisT(Bh}Vs@-Vg^8>ok~ z0xJuNWS8Pf?S@pC$Z|PtV~^}cB`mc$SaTb#T(rJ_%c7`;tG7V(R!m$%o{zzk%L2n{ z#ZZ$KFU?PQ@2gMwRf36Nv>H;-HdJGi?kfrP9nkPsT-^eJ;1$x%G-Cm4MUUrgVs= zW$bieu5oN1!qu#xni~8in+e6 z*Q0)U=i?Ws_?4Zz*43_hz8^{NjdjdDGsjNv_A1$0kEgHrxPY1ybW^IITVL(!73}jh zTHP5v)Z8<_*n906Anpm+UbU)CHOivgCPu@f7rn^xhL!3Xu|x%|+? z)L58=A|9qWJ=XE!!~2O8|o7kOH@l zyD+a-n8p+7zW)9zOU$L|V4jZa6$5MWJ>sz>4N17plP=Gr&gxsd3t5|E^q1H4yvw&e ze|KZA$LKqb7tBSxRU=_27&L6H!~ls2`X#$Nv?_HKra1p$26#AZn(?WFU!|2|FthL`>Z|Hf~9onlXu(Ek0&_iZUdT% zHLMiJ^e@>GI6W*FYW;n1c=GsemLZQO??;ydjn%}Q9!JDG6v&`)R59hH$r_&F(5%Mc z=s-mWyIqadsgnGSDBU}N?#9kZqMW74l;MYDpbe*)3&ttZd#heAcO1{-n*|1You<7Z z|Alk1=$6x4_hVbB0f_jsyAuc4<7gJf^~}t>*(#ikau&$E2j3wg-2)ebc{@D_8>MDN zCA4Ttz0Xus@9}adrAr0H(IBj1dk{uQ7D!keNQ4MexO;jvI0={Z&8~@)?lyrhJA#LX z=tKTVW-p(TgP!XAZc3YAZn)iHcc$8X&whl!hSe zNq_3t#VK|h-~ZB@yb1*UObu{=YH2=r-H~@x}p0fZ2Wnd5$GMU~Q}iQ@`ltU=-HPO)!X~b6+3{WYYnoB|_sZ zAqvGNBo=tsGvq*`8ZrZJztmOI){WE@2lv7cIC@$Q=&1|KkYK4EfZpfJBZy2jPic8X zSuPEyM^o>3uC8wp5vk9SGtaWI+aws4(8;Czs{5x3$zuF?b7_=IouMBI{4IiO1o7t# z*TrZnNzEu)wm(tSzAUr~61|sS=&mAJ6ULXi^sPlb@8&BZ5hO*!z^m#m_V?~4o{mo> zL?@UZ*np=uNr)KHiJ_pgyPjvYQE+-}HJA%CVYeT04(Y@pFyE)Ac|29#%>0SqX(13S zGM{`(y^giJY8XN1sL-9vxOUxpt$5fnLl?Lf^t5E_;G=fG_>z6ER2E(gxP%c7CF+s| zurV-qx4N6C>iOw<35K##!$pnd_gtVe4^GD^;aIwY=6gekhiGiLSvKsoeE5~jFjnmD z)wXfJYjl@!=IhS_xtB`wr$OD}C&jpHsDt?DN6h>+{cqeGZVQj{L8H$W@)wBr@Pcqh zxIu1NE>_4pv8pP2tSGrrW9M?G4pVmIw9MT-0G0BsU!Nt)byCZ*PH-7=OWzgeq@*1- z;#;IwlvIeM^r?JK+Q1m`ao70BcWGvZg)~KI%~OrYM(6GErG<6L+Jz?>8Vfre({o!o zi6WE00cViV>d+@Kqsyb)^ktOj!@);Eml&6m{bpa@^D|zb@D_`z^GdFjHjTz=ZT{fZ zw)4zzSG!!Z&aTp9hPJB9g%2?>x)qCma>AAMu-PibK z;-%FN-{Bb5`=2Fu0k7*d-eQo=Pq!#H*Q@RMEcVl?27*XIOW!zFPo60ed)%_jv>c?o zlD4m8D-)v@riiR^v`s3Ak}?a^D7!gEH8HW%J$5pe;>i0XF{lBG0+(hH5D^ra`!zmu zbBv5jns1Zw@ZZ=&%R&T5eh}nI=rM#Iw-xF0}wL7eF1ALn>Lp z8xaWsxa&26fUn8858LSFQtV>M?X>yRY^Nk^9nTL;;R2^ep0>YMH}u)IKEC`U@+NZa ztQ-4smOa6nyGHcHoo~4J^T~eIjp8--#M9GK??8CJaIh{rIwOQ~&KgbvaR|z9EHNt= z|EPlb3Ia&S&ZK&z{DTl{S-U3LL(PrQoNZlom&rupC#N|ce*gCLg7+O?TdQ43siWB~ zxrkftdx7(2Nlx8Zw}I`ZYcFVmcg2cZ>-#ihSlU{j%q>tXsz+1i7NuB7%(FT%C~Ty+ zBDaP`mirEWpqs?bQE6PQkW(4+nbk1x>wIQs(fEX3J3;2fUSBVZ*ow)9!~k!bVN7{T z(*0oEu;}^}AH9L=`J-y>{&YJ_vBNQnZe_f11wXU-$Sh*n^R@qrgKfFt+R;Xv{reFl zc*)5wIll_q2Xx3>z zLe6@mB%bvHL<50K^bQ|L~A@fYWTMb?O! z>Hq5Sv5U5n^6JbnF-?h@5!+FmY<9%k&cNQo$+%v0e3%^X!-s5Vn*BZb@jcm*2t;wZ zu_?(6i2R5EELC!LLf%=y5(D~HcC)DrRMCm8Mt~&OjNC8Odnz3&i8Ar#8V6flx#kb^ z(Zk$CbH42cOhuN%4#O5NS3S9;KVKEu#nRSLB1kpPB<&)YCE_9sp2s<8Oxmz<(u_#( zlylljrZ~nYhrvBuXlbG+b0V)zjFUY4<{F~OLq^iiK5L`W$#rq=PI+YJhd`DT>+Qgd zzBqT$hIDqd`1c+}0TG~~AtHjs9YX91Juva?g=Dk7Jom*8MY=sk%AX%?GOW&EyOW~!dq3|8s{Y2&6!9*|E>PlJa=fJUtS(>|{zyhF0 z*vT%9F)BW%tj5QUg<>DytnI6Eyhx?20jU{A#%lgt3~u(gNfQPADCdaRU08n#0^PYr zKR8spywprZM2F0rT{tSCI5Pp)+_7Q$t1=AG`joy@nD2AZ=I$E- zB&E^;Nii@A^|MlDWv53BZyKklF%q1%=`V(;1$Eg(IKl=wyWEnz3Lm$cICL94llg#s zyzh|EwRq|hPZaYyoK2q8gV@c*zcbXrCf~B`L#5!QvR&H|5gcY;OQH99`d=WrXRw5Z z(CNfXtcP=qE)h(t{Gytg!4d4IstX~brtf3p`#NEp+~Eu-i~05F)==P)^TR2%kEia~ z)8|^^qF)fnw+rh#=#$;!KAT=-$$99=--5(S8X#vBLnGAELVLQEpSigw5Q`SShFh8; z9TR*;@#MX-tH9A=$E51Z&1VV!WyG42j1X>xJsSJA!z2cSiWtT?ua%E&&>j4;eyz#h z(u4e;LJUYv{$ER(qW=a9%Khg1{wZXF#K*sc%>M-{_zzy~H&6I~iwbfw|Dj_39Teo? zX8sMBvHiEC;2#;P|B^Aee)DYqmX`J>1@-SDF35W3w?g!H8S}pkz+alx|NA25f58cI zfB-%al&SwaqgR)m2Lw)Xu=B9#|ITXD1%gU@{i*x{K>#5)FZ&;$ACQalANb#In2(*A z3&a@y{xAnCGYBaJA&6WcmXC*v3)J{KZa{9}KiEGYi1p(J0iU3gae**H9#APR5KhR! z^AG9}BwhnKLD(UP00e=eyu6@<-rsZ}8wU_1J#%q^_Wm9ys0~C4va)f3=tB+=oyf%r zLKc4?0ptOR)m$J3lm|3^4p2HUs1tTJ5E#lz%EBbn<`sE!TEa<-{ z3=DI9t}#NR3VrT+z5_iU5r>0KoL5)&9i)$P9o`V@ZFz$FV-`bVF8O67xIIwJ+RBa) zL>POv?>n0y90TipKlDHmq`frRy}s*8gY$?XRL1AW&nVXjcF;#*Ojj8VI*_4LXLa1) zc%!Ja&waJ$|40KhRT^XdMFkU0UFwoUB?&b*g1w{JAxP%{}7b_%V+t2 zDJTE2fc!hw_{U`Uo1Dz`HyZh$axxny7w2#C`F|*^%freI{QG1X@P;$O5MO!YXlTeT zUZ9r8Urqs9TOl-3efTa)Pf8nJ0PfsOo32zq*qlNDrd*>EwWlPc;6PXLQvwnmUL35H z9#aX@KuGCXs2Zk=b`hA}%^@wLQuTKKGRc^0>TbE8X_WmL4 zfd-5vQ_$?4NW+6|`hf|B74_1ot|c3B0&L{-aj*_>I@!z4XaR}=FjgU< zw^UI`L_i)k7%3(I!X65obaRo&F~0nT>sl006)D3SP-dB{eN-xad$;ul-WmMi30Mmp z$0wfO;&v;^;^)1It|6M}7JIRu&(t@xQTd??5Q11-X=JhsdQ^hv*h0WX>NJLB3`Apv zWp{+}Aj!EPBm@Tpvx6ggKxpwWKqeBhChU=3q2q>N8;LmtC{zR~Z85@DE5@i`Qen)jkP^L+v|ZQZzEl_B zvA>X%JS87aNX!LhDk3+=dEx+r85gmF=NQ7Mka;+e;|Lu(7eD5NGR6IW>c@3WnsQBD z_goSxs)e9-gN^7@a=t!vm)=a;c03t+e>qZo7*poES7Qyiinan6;qsj^QNV_Et+R(I zecjOAe?G(LW=DZTJ!L{bMFPAOpymaLWWa|efWMHE4EAznz)}?ALJJFE_F>Wnh^# z3E}s3LO2<)7~jBO@O9;ln|v~Q4>OS;S@D;pze%H024Y0=!121l(iE<><;;0Bz#daB z#u9h5$)%EptPZ>mYg@}f=Vrs?tTK@mT|X(bEu;?oX+j?E z=i<`3NxTm__01+5%*0hal_)Ay(nd$XmI86j17BsUC>I|2ys}7sczL(GLTNJjQS16( zYWu8yi9+kf0nTL;{10psc-W#Vv%8jA{euOSlUtm0fImbv~}gBhvlH%#sXdI?D~k-G2BC7av6pZQrsmb}f=6yH$M9vYE+o{v}A9hXqrBcggm2NGVbhO$w-6en$%)$;r(jHA5YOVA+nU~Lx(imHOL)`mfhCyc zZ`dQExka~?HClN5*-OGrN4?xnsZ+^UA-RC=yH71qMQ-hj(l1*jl#dfAUyp;XgEo-i zkTbEbqz@qqWkm%MUsxI087Y32){*oRIz@jK?2J9^O0AH2$ASx4 z=>ZU6oT!M#tV?)|$F5IzDs{BNNb*o=Hd^>95a_OBsda0NI~fX|)!-i+5T6u06@rAz z9nN?8Ge?svwW)1`9o_}=yNhU18!ICtb!BGFLmyS=CewXYzx~mrt-ig)hcNmV1dODg27J^IYs|cUKVO8R%n+T zz?+IoY^*{>xh>w{=Sgk+LjXxfz)`2SNW1Cl6!#$&XTh(ZC4Jx-c!;t%^dk=qV?QjdJ$K(F4i-pKHA7zift=$x}XcJngm(r4aNbh_^oB zmUfgnqnY;z3L!BG%`Tev$}X4ao#0)|zl(!R;f>T@%0w;}*3x5*>EM=Web@{#cc>Y! zg@(N3!4BWl?+GNPv`a^`vCGX0tIpIQENT>5aQvzBZXW*L!RlQO07=Z-qNG0CJhe+T zFUGU`;}V|s5t>9WYIeSv@Nh1Q4t@U zGR81(<6M0`OeBJs6qJq-(c*5Z?TR|Je!WmRUk;HlJEtOy<$GhZ=r_Bfh11aeN)e^S z;I%JgJ|x~tai-i2uT?Nqo18Ov-G(P!gbtXxY8MV5L^1DJW4w0%1bd-&7pcF0rnK8n z*qNPW(RB1M?g1mvuBjb%%QO;Msw)T$DGC-5EC@+`xO1f2m~H;WdZT{CVf5?ZNF?>U z6xvbzZkQrks0E%_>O`bPX!9Zk+GM95t1+v+0@+ewjcu#LIC~r<#$1&r6RPb=Kb=p{ zCF6r{S|O_W>+E$NKg#NhTe?%aRk~EJ0N+^MneJiyVbM3~P<+WgHV|$Xv&`D3Q5>z3 zQ6`~7emrmz63x{G$bVe6w&p1?p%Y7i5_~6`F#@KnaIvH60p38EScIuhAs*#y*HiWG zU7_3zMQ(v3rs`g+1OqQZCbUH@2| zs2}7uEL(K#k`kqD8fG@_j)dbvM=veFFV}%JnNR2xAK_kh1?F;L@Fu92Z)0m}p1Waf z*7wy|PH(~9yy)x^%{idE7Z>u^*vq?FcDARLT%b3G%n;KjtT9rMVA;V{Fq0}%`!TA8 zlFFovGD|+L?Wrr@*hkPF*&NE?KErB6s*GjLadOn-f7VN*(0AZ8($y0wqJZ}Fu!%+x z9rD^bsc}!HN%8S{$v;3|pF5rYobft-%!FX+Cfj##adbMG@+(D z^^2OKZDD=)yp8MLESWa=ctC=O0XP`p#38>fx{M$TG%cS8mO-%HTuqY4!U@TCN0`nT z;+xSLao51RHp!D3szSMw&k4J_rp0TF1iqadUy75`D%e0}NtSbmFlMF$Qum6`D^o(L z>Y?T#4`a+Q_r3zcJk=%Y2B^#|%*_Nr;MhX-I%;zTb=77C*~M zuCa`g#Qs5C{p55S*4Fe1hwoR1v+rz@I1Wx~QjGM9%J=pB%WtJ)=ZYKoX>A|2^EfQ= z4e~nu)=m#brRS0=LuJzq7$Fdg*X+-L+13mm;~Z0@?b^s!6CA7dX?;h0t&Uaf=$7u_ zLo!=|Mfg^Sr3Gc!!O_tJ>0=%3Ds1>+xY?lQbS`rjjc$*TW%m9334ZyLij002&Fy+civ8YtO zbIM(`N_4i6gC@98YY}w@P-VsZLf3<-UG@cNDT+*QNqFCCdp%3RH|++kI<5Wsa=r5&JPT13egoZz z4)5DEmEIQU9Rg70b3V7zKBW+ApT6wmMK~$G7bk^y?2K>%ZRiiBt!bDj1v8;rMV#cU zFi4Yz0A>!+jnPD8YTfr{(S1yb!c!ul92R?5icv*``jL(AYYMT;f)gETmRz*W#6n6?p7R2fWRody~uRrl#T77MDb z9z#wBT@Y7phTS55IB&6Jn(G`w&Uq=QE|AQrP7ERKHhfgX=TQ}A;%8j_cdVDGa^^7D zC^0M^80J1toX3%a{{HydsRU8pgASt$m8Z(_vBUybHqB|K+1g_PMy<;I&zjoc*dMKb zPUdr29Zv3K)pB{%H|U8{a3RGmaaJt)f72e8SvsB8c0)GsoyO8s4`m_lXK4?+PCDV$ zlhbtP24sCJdQS6)Akj8N<}9v?O1JtX2l^JlV-dz(%#K9N$S%dSwW)AHLXLrSBgWZ> z`&Hjs5PVBB`Kr@&vxN5vjpfIiQ__B^ZuY&+z{^c-i2$+##o zQoV6QLlrzr>;4mL{2R)%SE2ywd{d1;3y6gZ9Bd;f&6Nh4^Bk4)vbztTo-j1)|EC~ z4YV-{76XgrZ3^Sw&7@iqPzcIEiuj0SWa5595>mxEhyBtgoDr=a);0Yx+XvBtV6A+9 zGd@v640 zUKC+Q4*fkD)0_Y|Xr~Ii>j@~HZ*!cZ)VA-~@FONp;xIl}6u?Wq#`LD>wxqzPw7fPg zjHbr&47r7*+Y`TRx63o63$!OfASSQs7;K^hqHPz%tA4N@2trqmx|uC)$TruP!!UMs zwrO4|L2&K1QEukk`V^%(fZ#u%8!eD68Er{cFZB5Qtt<99RcSh^YU;k*J?MR4naXRP zN*v0Q-MqXnMSKe#Ot%;;8OEMduJg#)&S$_b?RPYc80RY{T*p0ey6rcD)JN24)f+K$ z6C*Y3e$0?j`TjNLXm$f7vSOr1k9ZW?733lZKgp~g2-5|oH8jd5o&#eiDJ~Ca3+)}Q zN3POtZMO2PU9ZnMR1AxnFurR|B^kz-GYV36YZby^aipX6X~nby;NnGdw&71R8K?t% zz9L3;L{u_gxKz|s`-S?BG~#Y>%^Dxct$LMOm}*j|0G5=S!Y$0j7uU9a9{Zc~IQc8} z*zylPDJtG>v9op0o07FP-sVUK%R3KkEzF89cJsYWE(q6o_}6o`p;zgu0-j!5(Jl&# z5RldYGp6X|(+Rl>CpbtpR?dpcOW=2zdHNBU6ioK8g@u>?6K+-e)K=ROpaD3)tLxQP zn1nr4MnAyy{QCVXVX+s55N=ekSZ-fKd`cz7O2W3l`GamtrxMiY8SoM5ZPgFrKqgHTHmM-cde+>pJ;YH`lX)KncrgJ7&}gU@bG0mE({ zuKEsLJq7pXgDZiVCzN<|+{=DJy?OXm=tv3ST49G;sK95h?Dn;SG-M~uGaHZ8a2AbXu4HgK3Y#gnO2MfC&gb#9c;q3aZ)7h;tE11D_74+qHq>Tn9)5iKsxfDV% zZ%K-u?0!|zrH8lMwi-e{b?RfrI5o3MssfuX9JT8nI%t{qMSN2RSj-twOc$;mjf6}^9NE+)*rG-x!;?1L=gpr!6dW1@Yek<*-NeJbk z;*06B=^qZNJ$PrHnrr=NSFY)kErO=z?_-vz!3N;yZ7tr1knq;d3Ak-#sxIgQuk4R7 zsNzPbMwg1*yaEcAtnhPGqGyoKysUj%X*pk; ze-!x4?=p;`S?jzqhOn_zt6NOxQS`OLnA8Zj5OLd&s*?;|=bMS8o)7q*GNIe7BX^)2 zjxSc2B;qvh(+9{Qxb zPOZ^27vuwTN(^uVe(3cp$>Ug!05uixq zV(~^r*7DxPK)a+?6gWyri?BUjQqGs3H+A?B3x%|mpaUtwTsYQC9b$3b4?5+%$)nd>oUi6{(x z<`|e%9RL;a`*V7$0j7VS|HF#ND7q2g5Jnpwf()L4L30YJX4qZCfGL(9*|ytJolSPz6@x}Z8n@=`95P+=={9;g-Y1F_ROmwX?L8_yZj#3Jdy!UQ!)2y zjz{yIfL?py*1Hj~{N1GWf?%*o(%Rj1uG)ag2STgw6;Yw9IkYfP!*!LFsKwr)y!j7s zY$J3_hb;Y+Fsyw0HB@*d+#!K@ZM?z7x?WS)eJ?YzszVr?I#K|_Vu^q(Gpk5MR|F!y zngN$P3O?Zd$rXYW_sLb&_2`uM2BYq)g!t0zXC9|$l`2A25#U04;SKb}qzjI~M*|+o z9TaoONaHzi;Y5zr9lXBt&4qx?;DL3p4h~K@*&H9oWU1YApAs7MLU6?aGFHsU$NkN% zkyNa#5lO+PW@popd9arjmgNw)mXu@{{gww8j|{2Vd9mDV-QK2lwoB~I!I0%`(DV(8((-In z=^ZeZZdxrMVxd_;#rJlgpapv#=H z@hTUZOV|tiz3OESw6jOO^X;uby8F*Z`*RM(U7UEy!Ime(Pd<0aBdO2z+d<{ZKSf{O zBW5hS&*Z&K2|k5AHrE_;b5^ao8i7)de>Oe_U=>kUS8hX{`h;J zjPvTb)OLxFN9Y}cb!C_ibdopzuqj_{Tdyf$#Jntuzrz&$1oUQctubod5=QRq`)KmH zG-1lBz?@7keVxZp?06xrdftsbOPviVk0%~fud(lT*zY}w2Y@pGTGDqp<4GaJYOUqY zAq4=!MFg}D5ayH4=KC6Ad>YJf0fOSrq_`41p8IIoM}k6=5S#^`05D;>51xu; zNLRDMXq302$Q;fI23)D5TU?_g_FBb+OV{Ro2=-^|PZW9*eU_BvTbv8nsEuHoRno|i z!fzH4Cb-So&-=f$2Hpp}yd59e7dQzootkJ{R5rzy>^ ztveu?Tzt>l0t}R>jR=5XL9lyd3go<~(49FwUBxzGwAihXjM0I!XfpCbJuUb`KT^>G z>n7sZ<&U)Q$##VVxd@esM+6;C(gdnWYhu}J@k5=YZ@-Mz>J8&xIld;B5a~DR0nYT3 zzC+4$rw+XlW=(!;z&99z(0|_=(_}0Abr=U{dXX;wImmw-B^cio72?Kq{alu`ZKedB z>dXGrblf{k2QAEVhFxzHikmo^0}|PzMJK6nWa)JwxNq$4On5AZg-mjeI>|{8_hC%0 zX!PM_7|ziLg%j5aID7N*liWUr$+$>ti-)m6of`s;eVKT~+!dnw z4Dsh{o*u8F=O|CE3&rPDl%-4~IjpS5pC^XUqvfO=o>flBN0iuk6d)_|U#Jb_iJ5rY>+Dw~Qrs~;V`!wBEtfE<&kTpih z=LKcN*wd;O2f$A+o#=P`|F}^9-Wh``7b;c!9zu)kjfNt5f3fR{(?iI$_!)Zm>evf^n6JEq{-0Y zAgS&wAXBv~iKn1I>wr7_fhGU-E-%jQCqoJ{K%~tmL`*7($uT@20C!dM3rO`CkmSr( z2=KjBUtXSY)-^1RU1MyyoS3lS9s?Ru&Df`5SPzhoYIJ7~EJ#(99kpd->!Y3MpNPiq z9^yY1%QyBm=nZhdGaFQ^MGaSt%J@GYX}4WsgtP6}?YXq`|0)*YR|vQh>Ndkg;a0}Z z0PpThrWlbQ(dZKZy&mQFws|(r0jza=075)0KLF=;)m&9=HWtGkRp+UvRxAc`fdcJR zEkfLHG4fj3Z!l1(CX4^c9DvZ4zxa=TWkdegS)hNAQ^Nnh^jZ6ZWcWMT@HfMze_i%} zB!T`BoqwaJ{+k&5g=qYLf}i@!XAM*=L6-wm>4BRU$iwr8GaAU*4&-dc3F4yuB$rr0 zL13AsHGlPJo-$2xFlYS7^1hPu|ZDYqt3Nqf; zW#2$V6(W`L2S}*v<=7(VzB<8mw+G(wm&-sf^aGB-;QpeK0t}Oe_~mnBmVH@ zBL(uX{ppVf%IN*4F&sNLs7M7j2+sP$fbCDSHXsP(`pwCKkgR_i#*y-Hb1<`V{=US2 z9ScIQm_g(C3jq7a_CIki5bgC3e>u=!Ab1NDAzo6DliZ(feLxUy#m>PBqQ!VX-LSKA zv;OH)$HmLT4E&Qt1AY9zG^GQ@=FdLmbVPZx(hOpvZ9iaU=f+D?1Q@_9uqO4eIRAZb5bGKp5L^ zNRAT}QMNz8x4+szG#;oV0mzpRMB4o}Nc>IbfuuRXe9f6Bdf(vki=2??Zclk)age7C)#Ch( zkjf$S4&0eX8eW_~?e3 zy};H{h?<0ydZ-$lT+5!6pUN7_7o=<7KFJ$sLb^q<4S}1!I6oQ80$fkFE3#zyn_^S{ z?cETQ9FLiMAJ`Txf#IjOdH#(wirV=gCl5SFvJ?8oz!l%jL2I|qQ{27C6^Q@&UGYbe zl>aL}?Y~(q|F?wNADR3Amhk+?eE9o1{l?%*Y8Lc;p`AKd!U3UNpmAf!Iq+88c(E#MSQ`W&5ZoK(*K&ijn(<{z*+%fh2xRv2;c>w>hU? z^?ovz?&%xfxLpU&Yb;;bkMrcCjeGjQdnVp}AOL&1E3^0u!l#+YQV$d^T2ZR`V)z!) zeC#dW2S>rUw|YS*FRblD@<);W%X?7XbAO~Ln&K;7y$9mVwsi!wVw|BQP#6#* z3CS%a5n^+OiCt%YM7qW-s9GkU9fZF4MJoiEk(FP>7-p$&{W3HN{{7Ferp4+NMhibu zZm^Uq)I|s|k;B->DrzL}MWaBDFjbE1VYr;>p^VR1Fq2v=$b1?QQbCZ&8jFc=IDEL# zA}L11*agHb#Zb|~!eOvx#&U zLiAUuc59s}eAY}%sFfJg&#z!DrUHXKagkPH6hAZktTnP{s>HL&rqJh#piR|m%cA5S zBE&c%6{$Is36l_9W-;ORiWgyvp>L$J_W==mz`_nNQwdeyfP&90$}GFuTOzgla|@uX?O(v9Bm zn3~a78xn39Df#r|aQw-3m|M%8D~}on|MedI`HjzqD(eC3ko}M=W9$vS;ph`B`?A|1 z`NnqF>z7^KpPWvMJ={03=h>3^;y4aNdTj{UUBpE6_4aB^dsz5n_ueSUn>x4dBUz!@ z?`d?Yv_E=Vzfh*CnSbJxr79*`qE9!^uXeUhF4yGgyi@Q#K;p{18@X#c#!pq`I6lIf zTvn(Zt1*!f@6;a{hY#1;R%cFZGH@_%9_0Xbd@K8In{VfEXgY1gdU(?YzEqXqR;<4_ zJH}vNqok>*GM6N6FtAmZUNtnzFlU;K8NQJHIV#<(G2GEs%63#`U}mX`x8GPIRHvxo z;^W6K9fk0=wg%NBS1*>PcqBU#YTQ+2^z}k#>(cO%W9OX-n{rWOB8BkpTk3@C(o0oT zCxducrJ!E>vOi0hRZ_?{{1|3*Q?qWinV4ml3h#802@ho}u#;@waJlbNF zN>E0A_tXfHxETzMZiE~U%q1!eH@lKpJkFuvkz~ZJ%jnU&!oYxnI{|u7hVvnj;Fznm z5pwQ#;e&tz#Oz0(S5opqp{B1Hz|z0cw76?&J%L$`*sr6T)CI3 zxCv(nhUY2t=KT2cJHF)eeY*14!6TE2@ETfO#Iv)Dvg2yUFASI`iqWQ~Ac938K z6%Q0bl86LbE9Qh5!<~&9Y&JKro76$dCnqDR%UbW`;qvoNm5Ypw^B^V;2XXTzz5@GC z5(KOou;z&oc}Mh?=5UQu12T(-8E-Hz9Ue%u&_XPz^ddM-dk9Di!}U_9bgT>IxZC~R zcRBT&(k|b>OWq*OrH$ve-Ct@7vl48s^*T`+=|r^bs&HDfIxvxq*EOyTNyFLENzXDG zvrtMmef+hJL23F;xnDFYl16YXlYH>~wd&e9A@=s>8V*hJHB-a8m3Jg}7-u)#H=tm; z&-&}jx@eqc{%G^mTsS${SP+;Koa-db!1%ev3_Fw<*Di7;-ipaoW!PoREKV@!DmlkW zjjGqxB5d*NE`af>6_*RAL_HQiB8C=XKB4i3_5DB@!66}arS#e{t26-{0P@UaJ5eMG z6E`ZNY>QGLuBF^-)k$>K6Dsfd29ZX)#duO?*TwLB>dD#0 z<0dq7e2p#DSN9oJL!aj>JwuJQw&MqXKj*s74Ym_i$Z5{K5EpwvQLtjBHd2PsvNMb? zPgl(1JDFYmy&Tq&vc<+xk!$pcbHn!e+A*Ableh!@@$UHcLaY5`*(EeK+&MxIZ0my4jTq`zjg4@6%jBj>knt7a=<%)r~oby%^O=pU5dN9#Tfz z8^Ye&*k5PxEoIoNm{R@B;yoG;b)B?Ia=VK&)_%EO;QJ|T63JY;BfPUMN;6eU8AMN8 zdVU-a>XR0t+Pq&YLoB{5=jq%`t-rqUck60o$qJT{{QSN`eTXCQB8TF0@f@Xo95<0Q zG`&R~popOs;b=Huix`@L9K_k9KYhTAy=|5^RSre$o$1AL=STv#a8HaKW)CAS&pMpT z?L&>#4R;ymN~dEcc&?RRG*GX@ts+ z_Sl0xm*Q+n9dScR+?j@CJEx_VWlTxxw4-UnTxQZY#w3B}p1~Z}K#Vm{DANy)B^Ps) z%O3MGMieU6cI47-2bVx{_JbTDlgy_64cGE<+JBWXkw+pe44SmcPu2_OYmrAOt^SoN#kxoZsn{6pPg%OPed(?%oc_PpmfLCQ@j948yWJ-y$^Q4yO$ ze&)A-?|^=_7kDRry+CCB{>$#6w@(|f=ZV4r#8dL=-O)+j+C~42_Ky!-s`l#|PB+T@ zPlfPDU85(0p11R!atAd=C=NJFIPu0>n+;U-a(vk(&TC2&WVG7)Q5L6~*)DYW3$@LM zDx8UxOc}goA45_Rs2H<86ev<5I+9~6v&$(gG2twJaE4Z$rsPn&xSNXaTrycYaUjdh zf8^fquJD-;Y|^dpG4Q_+#3Bc;wVM{4hUmR^IQ`LZ*98^T`i=OEAklY7rXPGmi7Jvw zkdw0Wu#M5N`zDP3W%j;3LUFS?>_%dsB>trxjf{pHxUoMeo3K`&e2R8US=VP#Jr1X3J7HuN#eFYxPG;bW)OIqBnpe0aNivIB`<_>$kpy6|5F zhG8C*#WR+~0_3~d#|Z)*c;M8?VOm8?JlGieFa~ly?-M8ItBq$xW=k$8I63DTtwnp? zP*pA%W=Z-8CCo^&Ns};Vb}wScZpyk3`Q2Yu*8Wd-UmX?Y+pSG^m(mR)H8U{4D4=u* zA|NS<Hr)4Y+R>Txjv`$nTAcX6GpHYir@%bk>PX(*bD%3E#R5m;q8A?$n;+GVt= zsO`w3@13vh>Qio)D(Vq$^b1l{JdD!C3y|Ka3w50(drhsU#&*!0W7_)Y%|nvpSv`IF zo4Lf(Wwx1$XxzaybbZtK68f-YOWvP1Y7SlXPzi@}&)z>81JD z+jos;)u}pPUXQ*#gMD&xEf05ofK=o*Px3e1fl%~1Jc!8=({bT*-^ZvAe-b)LGq+}% zg8g<9O<5=+C}2qB*xveLt-)P-xZdb`V?}&46fTUxolfL;5_$RNw1asC$VLscAfcQR z#o?g@VLX-(3iq%-i)|j#OI1E_F~Ksypue8#f8KVFo#HU1kjv>bs{Y8qURcz&wXUot z=Ops1H>g4BQ`^0oozUIKXZ_BE=x#GxmMN}31?upWW9Po58}f{gA~ma7+jcB7Wo|s2 zfCu6&c(RC;e)Y4%wwwGh%MdteFhPu@S2^ctS}t&#_Vt#rtV~E>1bAz3 z0u?WMUZs?U8LChW`ldNH9Y3v;>B$yE_>4_1Fa42XMCmZHeV3Awan)OETI)Tyw{T5V zfb{3({OidR1vHJM#*ES;2R#jmvcT3()KO!9x5f8 zPE%EsMXrs@j-9j70>*>ag^{IuN2{y+Gp{-=8K5wKnXz$c7If&%zN|0`cT;KTn< zeDwkdq_ZH9Pz3-q|NqIa@{gDLVxE2OlaOle7_bOpA_p5#~v7IS?=0GG4A!0T@P+{Ads zHdBjXW!|STnx@4!03=@VLpJ{su>c$G2P=OpUwcpMfy*^HOl1zzpV0~a-e(<0yK()6 zvzG!CNqwG5E&^4CDxHm=J%4!+CIca=(t8{7# zy*`N?xwXxzbT9p9ci?==KINwOs#q7Y&_c=RiMg=rh=iFG+T&K9Plofsh=hq1uqeI|_-`t;V3nfgAj-h_Uc1+`6?Mx`}<-i)PYk?ZK?@n`wWv=#TLYbxv zt*dtDSGw%~POtDUB7}=x;a?;N|JVe9-?$O}@(Kg@5QYAWd@Mk~>OvG@RohwTjoQq4 z^0tnNALSDa42(D*O6j}kG-wz>TO^)y_`Ht#56MW0$k5S<6?>+*Vt6bkE!WJfG;Y>Z z^=-Rwl?l$;X>dN{gmg~G@Aa(dFKBCZ3YR3ok>LGP_WP$F-9M)6!<^O@h3jY6UEE`~ z@feVpiil~bvZAX?)O#jMNg1Y*Zc^~-4KqwJuc7}iLRt-e6i@q<`XC!=kRY|PTEAn< z*FD&shA0?$Yb8QT5x<|A>MkMDP((F!l+;u$BC&?2A{)HM$GY>39v|*Qk^Ra`;_}*_+pg0!l4=sZ zkg}kxou~qBJYoc68nFa=a4?~`S#hJVt;$&#b^JvQb+S;LX3IQv`V@=p7zIS&$Z?PAG8BGn(vY!&W zW7M9XF`pQv5ZJ~IJED4^=d8UajXgS!^XvZc-Zr2`t@ec|0QNyIs(nFRgk+LRH=0J* zlOuzH^C0xrLj!@lLK4LsDG~JsPp(%DvPR5=8fNbmUP(S~*Oob-sDn7}Pz|ReKPx0D z)AXX^-(QE25WJERSt>$%k>iC*T8I)1Mj_A%xi#GANqPD%zEqt&p8rVufv@~4Bo@_p zAO0K7vO|UbuV~`0QzN@h&}qk}tOXcAKh%fT8}6RCTziMjO&)23SrQ+ccpVNdj{m^m z;OJE@p0a*FDA))pVd-SWZ9bE6^3_|j$8jy{Se-&F1*64iI8*L9+53VJ&W8|Y*+`~1 zxkyNlLVQ#R*E3M0TIY4nrz#Z1D^Af>?=!UGI*Xm6EsV$MHNV5P(x8O~lR!q<;;rOO2unOq_}5;%z*h#Myu zCZ?MxXEw7xTX+T0P)itH4SS%iz8nTB>E;O8oj87{_SnkJuerp+(IP>hz%bG9={m-} zGW>~;mU@0H8A>*?I-RA(KaB@l#cTM>`=2@7qLmu-d}=)CDPA+Q+!NO9Mn#Jp{%m+@ zkk#7JFN1L9fi_!6*}aYOGIVX8?9!t5Ju~08_9_T{%J)g|R<2V|FId`-^ooJVi z8S1^Ib3bP2nS&E9AB)6M#$a(8Q0vd0uup@T8EJSOu{>2l5Ej+yMEP=|3Hh$Q5cJR% z=iM<#i8*~lr4sc=`wlg2Hdy%zG`&95nlhOuWV(3Nv&y&_*LTnLxpfMKQyhKV8KEkE z`P|pwtZa!v%0Y4McD`n%wtn56dpxhGyDYxb83ryMQfePDyGPvNV8Pkdo}f%@X0a|g zxTgEzgYJG(om{=fdB_>HcN=KB@Qwn#Iz{QcDt?h!0ji7Uh z+%5o|S)AOn`WVL?IP@)J|M>CS@%bsZ`5wl3 z#XN`-gINa$j#DA2OZ=qmOL-T@kZD18pjg+ojZI03fnk0cCx@}bVddt+c5qu?eXZ%< zO4=u_lDj9_r}e4yrh|cgXbu5SATkp=EXSFK{A*)QU{tp|pO5QV{SOXh#oo|M`roKe z>GH$k7)*kZklnf)%PZT@i1!WEXw$N$dtXj#a(sA_Xxd)Oh)Hnc4ffENXzOHKR)u9_ zlrM>r_h>3c_bcRg859|chI8q5XxU#l%T`Zt$ilM+B$v?I@|n-`85mKDWE*tlb<(_7 zY2nePm|fho$i)GZJdwBrvlyRDCZ}p@%=N}i57(A09$Azs%aw*l1~j z)UG;Fb8D1Ow9CUF0j91QAr?p_=AyHl#3jN)2MQ(J_c7@W$zNczw015Bw8TX%cgQLB z_U_JSWP~e9vSN^w%}w}G4_nn~)H56XTpAsYY*XTYfBPmtM5n#?q|-Q5*I~y(el+jh zyN>`E|KmqTf|@<>+AKNCbz*N$-o_j0?PQV+-8KhEC?y9ujm`2eY2h8coju$08I=Oz zsF(rAMKZ&$7t5y^MI`n+y>>F3HWr>eRwrC#Iyp;D44sX)IbkLWc}+=0Yb@mc+4Z4m z*poSdEvCrmf!f=%LIbj0-hFy=JrI1eAQLV6ylWJ2g?0C}d$Y(BGm#y&OONih4UQ~L zsCwCHyXM41=!khCXT~(78>G4*d3DxesMOW;7WUrlio(XQK~|i*%hVg0YHw5H`reL< zdsn1mrXC#)_hcG{oS@N@tz}+eX;eLOk|*J){mYbnoS_j*ypXhXnzMt(oJL@&j#jK} zXH>J~U`{NlqItVfbhqtH08Y8#7EQyF zk}cu;p{l7vBNYzo8cHjv4iT|%EE&JCk^TI7^V3sTqtRZO;E{qKIkmyjB9dFTubun8 zdby*pfAl?6>5co&%gw5N)IoBc37Aqcklo?u9U6%Oo(yafG`t!g9yC-@Tcct>%i`b<>v0l;N=XJ= z>9MQp6w+A!Pozg9rOH#-BkIup`LguZK~C&^;v2Wp@87YR z-LlFIZh;MQidtTry+{lR<=efpmG5hE2r>v$QE?*Utu{QzS|NlE)) zeife<-*=AO`^EQGGh!;vpGO{jSWZoznK5yC~3~x^Jv%Eleyap5?@Z&x%}n z$Sv2mQn=9~#upcl8!P*1I3tl(e@%y^N*c}*Zr*DJ#Lw#uvKJ|OBZ`ey=k?Gf#hMBTkQ&Ga~BYNCj12S@tN7C7q@?=I%SynejZ$4dA zglAh9>=|JXR;?d^q-W7Q>SeaAzM=U1oU+$);7C$;H2oUg%Y`deiy@Y++(DM$ULr6QpCZ=kP=Ab=8nTQlb#nEUQ>L-Z41j9^AduG`(f=tTU;QOR|06l zb;TpHovaBk7N;OcvD|XT4F{SMfY!;|^NPASZXhJK9F|H^zZIq9+gwCbo!vMH_~< zw$0Y()M0o{A|PPcXmss`6}om7LFdlG@Vo(!Tg{x%7+Ao#iM*WCu0C#FFUvamcTH z@p0plsb00ofL`xHWo-J%Ot~-+uF#PoTS7xU$6Rc)ok%w^ zZl>eRn*_n+lc|o}HwEvxV6qIjK5j-06m=(w{|KvPvwC0Y6W&cjnM4|uWNaAi_cn;_ z*=9IvOVq>Xa~mS}WFwq-($xXkHTdn`F%vwvsRW2<>ZxWYQ3ySHF~Ao|WanykOgDT`qCO zh)D65y?3GOiM3o2C-Lgq9brQ;BC_q=OWAq##y?x3`@MRf$^=HoZ<@trQsVW0Gr-Hw zQL&5P$D892y?)?|7e8%3E*$oV&DlVxFG_TNiIKR3Y=lwDq40Js zQClU~`HS<@f;-M5G?ucx-fgd~N0PQvL=8^geciXcDPB|xQls6y<9G6k?*phlpRoF+!3NNKl`90p6&cD zWK=!n_+&4glj45FXPwd5Sy}15>uWAX;FtQFh738#2eQN|cmH!9hHOG|vS{Zars&o#v!+5k-EQF1|rfi5XVMdtHuWUUXMT zPDL+{@2NrD{^(=TlxAHK+wUXjd~mN+x-W}C9@tW10~RiYzJ-r(HGIZIF+Y_;G2e2< zH{7=&k@%kbtUZ0nGHp0VDfq|B;#jiWbeDP~Jrg9GlmO(4@B`%hJ)6uTCbRm<&!}@4 zb!grLc^mOPl~~%)dO9Y7Wh9JJ>C#CanSJOAU})g^#7WAyLZx0W&%P9pT61+5gGGkW zrX6Mm7W(IR;BE3xL9IsgyYY_(b1-ogV{PKZ`*R1L;eKM*GBiCK zBE8Mgv^b&ss(RPqqg}Ixq(dL?`%P@&V^aK{3Z14H1{&`N8Jcse=2rI_Dt4MoQq7I; z{b(`v*ni@QNfJm-py|_4_8?de=d)}1sV<3O*3zO`^%14D!01SMDc7S31=aQSr>gab zj&p=d)GSF4PWLd^V=6>Wh=QTRIBsNmUb1-N-XyfCyhp;WjGoe1`A}~PFld;3$Mc3N z=b8SnzOgbUYMsU1;l|Kg)`hk5t4vvi6Eb?jAMCl`%|xt@Z&8JazN;%z$^4`jZTVnU z-MQIf6>2sBQ5-ZwxB7aI$Wu)7!x&297>e>x=KG>n^=9-l9sZ|@rY(INi!aA1vRQ{y zg3;NNXUkZ$)j~BypKln>>C`#eK3)rn;xx@m!JD3P6!1Nuk~i<%qT1+(}W{SLJsfMcu#Q` zk;@8zMtpV-TO7@XGCSai@R{(5CnaBiu4 zUdwibU^Cg-M|`*D{;a>o!jG8{_HjEG_5n*}=$WNxM4vw;-*N3Cdg}0vnjG8#6xtqN zpP}Hx0V8`gAaR8;$WA+Pr@Q#HX79n=lpCB*PNn{F(a#njH*3L<0kgbh=VWCvg6E3| zC&9B85~%_ky>IVgRV$IOFNB5>FD02(II&ZTQ4BcriWF!q1|sdlMco^EtQp+TCweyT z0N0=Ipenc(2tFpFYD1-73BeJ8XcBl^v znb*=2u??lWIZSKc&E@8PlbJ zcj90ehzABnq`L=$pa4@Y0-FIi#}PEZKv={W0%QmS!bQJbnHKns)bpP)UkRA~nwksH zmwz<@|FfcHFdh&Bneqp3Fdu;2_=8ay0!$GU0>DfF0$~7{zz4AP0(cb!dPN8VKk5V!>ZHX`&V{srI)2FP_`h>29zH`MGS!f z@E8yufT8&(Tb%$O0GR+<0U#>?7Uz#|5sM-K^b08T3wQ$M0f7Nn3m^sLU_k#DHLw5} zz?&de6d?sb6+$2cA+XTj$?tw?gP;H)20*C%MOpkOUGlH)!h`_kVSxM?KzJZnjR6^e zPC@hq=*r)d@>lLX1_YQy2m~aP13C}mLDY$W0{umI4211~fdE?#=jL81j<0& ze=!zA0ofk|LrmG9eGuRW;*DT_Fasa(>5t(-fq{Yn-ed%AGBBwCl`(>7`LC9tz`*!^ z;Ykp~1X>3P0UXbO(w|6_zp*`k!Abzo&Ywilf5J-stm$g-5NPM$gO%`IVmTL$4HIMkMnKgma9x?)D)*RNga2-vX6*=sRe?E z!qXp7+2D*05Q2V>;r}a>^lySoewo3G^vAz;#c!6<(Z<*W2Vnqk zKz~2LF$4?6aw<*@H$U{u|Y4C z6#xShcts`v-1E4k2LTIRDGU4>T^L zHello world!

    \n

    Hi ho!

    ", "image": null, "date_published": "2024-01-31T00:00:00+00:00", "authors": [{"name": "stephan"}], "tags": []}]} \ No newline at end of file diff --git a/feed_json_updated.json b/feed_json_updated.json new file mode 100644 index 0000000..5c1e36a --- /dev/null +++ b/feed_json_updated.json @@ -0,0 +1 @@ +{"version": "https://jsonfeed.org/version/1", "title": "Stephan Hadan", "home_page_url": "https://stephan.hadan.de/", "feed_url": "https://stephan.hadan.de/feed_json_updated.json", "description": "Write your documentation in Markdown and create a professional static site in minutes \u2013 searchable, customizable, in 60+ languages, for all devices", "icon": null, "authors": [{"name": "Stephan Hadan"}], "language": "de", "items": [{"id": "https://stephan.hadan.de/blog/2024/01/31/hello-world/", "url": "https://stephan.hadan.de/blog/2024/01/31/hello-world/", "title": "Hello world!", "content_html": "

    Hello world!

    \n

    Hi ho!

    ", "image": null, "date_modified": "2024-12-23T17:41:24+00:00", "authors": [{"name": "stephan"}], "tags": []}]} \ No newline at end of file diff --git a/feed_rss_created.xml b/feed_rss_created.xml new file mode 100644 index 0000000..8f9431e --- /dev/null +++ b/feed_rss_created.xml @@ -0,0 +1 @@ + Stephan HadanWrite your documentation in Markdown and create a professional static site in minutes – searchable, customizable, in 60+ languages, for all deviceshttps://stephan.hadan.de/Stephan Hadanhttps://github.com/stiebke/stiebke.github.iode Mon, 23 Dec 2024 17:42:34 -0000 Mon, 23 Dec 2024 17:42:34 -0000 1440 MkDocs RSS plugin - v1.16.0 Hello world! stephan <h1>Hello world!</h1><p>Hi ho!</p>https://stephan.hadan.de/blog/2024/01/31/hello-world/ Wed, 31 Jan 2024 00:00:00 +0000Stephan Hadanhttps://stephan.hadan.de/blog/2024/01/31/hello-world/ \ No newline at end of file diff --git a/feed_rss_updated.xml b/feed_rss_updated.xml new file mode 100644 index 0000000..8071818 --- /dev/null +++ b/feed_rss_updated.xml @@ -0,0 +1 @@ + Stephan HadanWrite your documentation in Markdown and create a professional static site in minutes – searchable, customizable, in 60+ languages, for all deviceshttps://stephan.hadan.de/Stephan Hadanhttps://github.com/stiebke/stiebke.github.iode Mon, 23 Dec 2024 17:42:34 -0000 Mon, 23 Dec 2024 17:42:34 -0000 1440 MkDocs RSS plugin - v1.16.0 Hello world! stephan <h1>Hello world!</h1><p>Hi ho!</p>https://stephan.hadan.de/blog/2024/01/31/hello-world/ Mon, 23 Dec 2024 17:41:24 +0000Stephan Hadanhttps://stephan.hadan.de/blog/2024/01/31/hello-world/ \ No newline at end of file diff --git a/images/favicon.png b/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..5e3a83bafe9a5aa78a0f331c979ecd727120b809 GIT binary patch literal 26928 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 DT-_>F literal 0 HcmV?d00001 diff --git a/imprint/index.html b/imprint/index.html new file mode 100644 index 0000000..043e543 --- /dev/null +++ b/imprint/index.html @@ -0,0 +1,574 @@ + + + + + + + + + + + + + + +Impressum - Stephan Hadan + + + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +

    Impressum

    +

    Stephan Hadan
    +Salierstr. 8
    +75177 Pforzheim

    +

    Kontakt

    +

    Telefon: +49 7231 13 32 952
    +Telefax: +49 7231 13 32 95 29
    +E-Mail: stephan@hadan.de

    +

    Redaktionell verantwortlich

    +

    Stephan Hadan
    +Salierstr. 8
    +75177 Pforzheim

    + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..bc2df87 --- /dev/null +++ b/index.html @@ -0,0 +1,514 @@ + + + + + + + + + + + + + +Über mich - Stephan Hadan + + + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    + +

    Über mich

    +

    TBD

    + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/index.pdf b/index.pdf new file mode 100644 index 0000000000000000000000000000000000000000..8cd099a54e0075b3d99d6218458673bdcfa3a10a GIT binary patch literal 70786 zcmeFXbyQUC`!75oIU*=BG!hQdDJ=+sv~&zz0+K_Qqzd>*JCvj-A&t^V3L+hn(lvCK z14x{Ee7?W+J8Qk~I%~b_{p+lASPabUeeZi;`MEyVHJerQu>y|(uMm`VcyoOLD!|0g zdqUh@B*7y7Ty*foETKZNqhx!YKJy0|m3%h|cRINN(Ub3pkt z-CeA`p4xzeI*#_1d_YK~OC|v*pR5`apSp{?v!&C2FB1CiMRJd@i~e2u zM2?9c%J)R&?_UJ=xY`pYAt;~DBPLIGFPs1Oy~O`}FLkE-P(B5FCr_X&pMn!m>aopJ z7i)0g6C30+Pdg?-@%s-SGI@9cBRNBT(*xrgRoWmFVa+2i*&|+&GSCZ()!N19*=xJn zvrvxfe<;vFnWxtSg} z$fz`Z)f%ITi__aKo^Iqa5PI8blt{*HdM_MOCh-^qzHHB)v$`JyyE^AAAAlq~KUPud z)D41!^{F;u-TEJU{l~$g|7~wwKUW(jJ_8La2b-s!z)fCOo_~)hJ6k>jMn~9N1DgvA z0iP<_*gv!LWD*wv@8w*aT--TahG#(c6CA8AU&DH{@4B$;1?1T{GUC%J^eFvNu-}gv-wJOpsv&BfUQ78^`p$q ztg)~3o`%Nmj@i~eD~C9c|NHa5p9O5scdw=x@IroHV#w+%AcIp^m(D))kmnUT5F+am z$jx?j9HzJ`Tp1=u{1Eob8`Kc3EegoJ0Aul$L{A9odId@+4`>u{NAG<<{y-vep;4Zi{SO_C& zRRYSqSYdUTQXLnM4?|`E%jA7ETQKF=fXLLuw zCqHoJeHRAqjzL=-{d94d2B*DGL>Q#oA+D0xyT1w4{h|+<ANNVaYj;3P5`B)KNQuDEE^tSC#B1W9S z_KoeE2A6X-!LAw6m<-&{N@cK{ zcMiTKUYl5msID|)e$3z-(Iq-Nt^I|sw z=be5q{>d&q4lRxD=0+xC6i@=fU{e}G=?@LzYC3*)k@)I%9^GFo$B^0TW*5k%uJ z$HDhA2pL}`NKj%mgV7cTh)hW>YkZO**XP(jNW7LZf(sh$6_4y(#+Vz}@X5??X83(C z4+_(lDYNlB#J$$gS##;M zFImotuG)m|DJ-=6|6a9)oNpKhSFfG+!Xf7lgYS#{gZK+8qIS%+LNJ`=xJChD1lYSz z1Om(8%p(@s>)o(1)%Xt&JUQg@pahO63;CA6B#3LV4a)JtOi+NKb`Y~ILfr8d)2`uD& zMA=_EH4QVz#%;?aihxA@N}pyA~tJCCT2asbd1M=^9i(8o=Dx*y9Lq8klCk$q0BaS9y(y^Xj+PN*=OC@sFVd6$mgX9)M~#1 zx#N?74xv;ot(X&RKm@5l%vf?{R~6W#Vx#168y@@a8!1Q!L+2&uHjq#E#|&{6vKNeT z24}POd1EG}Vo4N=;sg9{Lr4Ye8cf^&pj}ntCCN@N0wH4GAG7%c>rN!1|D-`&V=5Q7 zo1%~zlLL(Bm!y#NB`K+90pb?bs5JfxUpWQgct}G>7Qy{UAEfSIrTm&kO`Z0u{|%}6 zswOW}rFv3@ZT%Jid#_X2XX{+_HjV;xJ6BI}`VUJs1*g1B8st&MM8vM|B4N+>KN$re z^&Mz%(&0J2@0(X@eam9O5!(_7;q~>dI<1V%IcoBGc*^#ql?E%ErimHSSb`k?ww7b# z87LGW3YjG0o~7)uLsp)-n$OaQ*fxz$9(yxH1xULKbiJRY2?+wywMuuV(v2D_ykHJ) z;DPYK?8haPTNM#Odp&8_1_x^H1&m_u(#1p4;T68OA8I?+L_tXJuYHXJ+r*p)p^-r$ zZ8@-A94;nF;ucF;PT;SK)p$AFbnDW1V*u$|mqvJE%2=Jfnj{J;qQYH>WXR?uoHczG zV6x>>*9nNf3Hx zO~Zv$Mp{0iMjaJ;E^U6Ou}dOjA6#7DXg)@DrNqfbETcFu<;5?t{^9P%NHJ{Q;+5?6 zg2B3Cy{m;UHdXWQN#%jNH3!CAGCsF6rmdEGqg7aO?AUTl z39~W9A$zxE6v5#Otz31Kn^H&&CxuI-4MpOd5e_NkQ2au6wE5dzwS$Xj-27$aCmZhr zKjjtKAV}(ozKQTu)r=sN_!P&ErNq~mJ3C(|Qfm7BtY}CC!HgGHO+G_~0XeXi+H=x` zhSz!A_;niHDDf%g=-Oa6~1b55x9&ZETTq!KykSS z82JX2Cr1{fx|I2SxQxwIWKDZ!A+UM5ONm~yX-B&;Tv<2B5#P>o(CAD1logHqGR8(~ z&uGqw3#(tUWGskJ&9SVil?~no*)~NUkrgp%8MRkqoZ1ausK@`_!D#cjMtJOoWZ}qZ z`QLimPOxZpwl!B$9HCz~4)aRg_*t|{p z**<;_p*SoVo;|g>u+U{g&kd8w2+SE3wL``D&?Rkwkd0G)A42KE5oN&)#;m;2_6O8e z#tI&H9q|E~b2Q!U+S3}2%}Kg<3Q0iZ_-?}OZ;@vekHREG4|XF;U|HEPuNt?Joj-5a z;SgcdGT?9J_YYXnz&^Y~8@v^!WTfK#WS_@t916`FQ0M!?I3l#V!|gvO=3=*00Pt93 zy9wvQ%509TkCpLQHASyQ}>t zA=6A&n10Qs#ZfEZO6Y5GJH{VM*3gta?3`D>ZH{n$Ef@54x7pVmCI}}6CUY<{{os)u|B&AJ7BFy}I$hMHGXRl{IEZ-D@jzB802uzl;X}4C zJf*#ofYt{*A7tONDHGN0e;~G~dURF%FZlh zqc4h*8Hb$Y?Ag<>{^-f$0QaDf(bmW!^{{ZZH{I`3fY^?jkH-B419Vpr7ZS?%Kw`S{ zY*$KbpY>xk29Cr^fHhUKe=S*y3fTi^eg}-r#dN+pii=qq!gcW__-k2+nbiB+k4om{FZHQElI{X%?EdTLkfM@OY^3(A>0>i=`}s`RxkYFG3<6CIYA~Jw zPfjgCc5=YZ2rFDB!G-mrH$DDGxW#A*ing zimU|}8%PZ2ML~Uz;AVst(JmJrvp+cA1tY*oL3^)HtG5+EQMmT`i4w3I$ZK6QoG-7h z8E`i2aA!LJz25*M%GcjXx27j&Qn8q+GEm@=Rme!K!iE1Cm%Ip2hKomImM9zJ*5L2-xcHcp+~@=vh_{((S-9UE`g{Cd!FCA8E~!B;LCY%1e+Tf zl~EtnosSnFnf0^wue9oIghU-u(PwmoHy4fDLa7iZz#;i@bY(!MH(xg|CAHasHJ4B+j-TSRGGcQaN<;R}AwJH0rEZ^K$_IsU!Juin)iT%Q)t+T3 z8{r6|s#H~O3yU9agxie12TI9!_ zuP%SHgBWpe*j5${$@=4+AD`pj`6wzf7&2cq7dxU%o+$m>^}RGrD9*{$@nS07U#&{i zQIX8s6!Tw4fvANOrT+2oRe*cM{*gr%s2ygPWwO&p^BGN5-?G?ClY2qr4e;HdNeuQv zt#c7HXgWnlP1zsk&y<}JE6dK-e%qyPzGT|te8t(xUAm_QjL0l%rX0)J;^C3;yU?bR z%Nkou3>N$z^hF0q582R2ov)GjCXTY+eprqhfJ=}dJPu3o8n0Z{fUaxd*Yf5luPAtN zdLk|*lz%Ww6+*`K09bM{aRz57CWbQN&DstUjH})Y@Ej^Tt2x+J5hMjyovb67i`i3v zp<$o7tXmV$&!;@8=XI$zSpsxFnF8p4JC}UiB4hNa$_~(*j|XL9)9pQimmKrDbI8*- zw0_%y5#8p`XiQ1gd!Elr%cjBuMoLXF_moL#j`8VTGtV-r8)f}XOY_gi$GgGCO0SF` z=41dd^+R6g$y41H)3*Ht0$%G>!$=|04183I?~R_U+Wf{Gd_e#|rwG}>y>9t6qm_*6 zp~KtYKhNHPHmzx9{FQN&)2D3}R9v%qXJ`#D9T9tpOo-L#bMiwJ_e!7-BQs&QOifkUUg9 z%b_c=a#DCycQcD}Yawnblq0kb#6Cr0vpNd48^gD`(6{pSWB-p7WC@G1QE0FEnT+{D z*iAi?dK8i0vTKnCZeR)W)3>z{?>-U$%N$qtHL?oOrJa%{C;9fByk)02G5kK`ucIVm zb=40}YkGAcXAur4mn;81Z|7U({XdRuq+CtkE~+3)e8L+NgLm8U&Y%TZAgnUYX%F-- zdFfV9IUs>yp6wQB#KpF9ra9IG;LypfT*crB!OV!3N;`}1F^@CwF6ann z6>Rzho~(h4z}9ZT;7A;`J}>!5kkT7Nhs4UigJQ2?FIfPcj2WGK4@OKzk$C&)+*KAy zT!+DG&|8{6Y(#uYrc{pcr_ah>uYYK*yUH;i0{blV2Ds^CBkQ50G8PfGu_1eVW#| z2DUv}xFArex}Le{#MsXdjt>RAQrP$Q|K zLvdw?htoKLVN|ji4wGrX#gWXa%Xnwq+@%sFdLq^bKZ^aJ|N2)Ai%sN-!N*2#y8ZSk z{*_y*G&PWgaQW3ys@8NQU0Oe3VrXCrcgWP(3yq*QGpZ`Xs9i7Istc`8L$R zjkO+q4!P)?Ikqt_Qb$Q3%2oTx2IsKym*XOr%`b?5{Z41hYHqx^{je~;c}1`={qP#S zNqg149qp zK8MERR8w~|NqQilaI|BN6RPg#j~+d?)p#9o-y+#ypH-HM28xPsO!rN*VT!P zYbpkfMuVoVuxUVFuhwv!@cZiOfF?pu-D+U9>Ds8T==AHvM<7xCv0ll=dSyLMMu!W^ zYz=sf!P{o_cW(V`Y($>_20T}mY4AP9(*AaOHk?$I{JhoI*BSNH-36?d(+A{m1HGI| zB$PKoi&H!#;DaL(viUk{^0Kqt(kI{IFucs4uu%6~f4CH`Cgg#K%-CGfE(G<$=pia4LF^d~Flz>2@96g$hOZ4Eq@mD=8bmis4>Ex77*;GpfrUY=M#(p8)mKlz6oA$aOVr3*})?o>kUcTC1m4k8&cLU|k*h z*9{e^$gtvgv{mOdb;~nX8684|&Tt%C;Djeva}_ROt=G8u`M1zZ4(bE_AoH;)4%fm^ z2f*fXj5?BY)%%S>;U9yhe|YM+t>VswZa<%Dqi6uY!Ug@HE*usm^008E3z!2|Ml4iS z6AY^F*`Z%2uQ-@CsLAUMw~tRxf!s3*rrJO^JUqz9b)o#X1^{o=9|ep|m`b~4WgCYL zeoUQQE=wQ&S06xsDn2=g_!YoDFK&h8wO(fq7!k7W+a6rD!d1&K#RkL$Uhxb^vDkm2 zAAN@9;Q(Gf^glqBwBUR!Twip&rwhWQM#0n_8DRV(kNoTz($hQGyQ^*!U^A32v{!2x zz7)sfzVr33Hp~^lA7$^Yx{QMfhB4Qktxb_Vm=<0A;M=_BvGcqGo1maBXUM9aNUlDA zM~QHRDwUuYKj``>b|3PfOBT7MKrGH1$Ax*r@2pJt_9lY57#QR7I846H>$`J zE9Sj^=i@3yaN=E@dW^8HPJ8_Zvj#-~BnVVG*370L(l*2RsjD1IV9KdxUsC@f7}h`z z+XtyUyeo%se=F3(4RQbnl;CWCXeQ|3?2)z?xTw17t1 zuN~b4Hbe2wQ~*G?&8P^9avs|RMs7Nlv`healocK&Ih}-kW+5Kbl@;y-ZQ`@!@h3#5 zlG4}`f-PAz=Dn%nWwDZl5Fb#3cnX0ws`@hSK-Tin5fS+N4`M_{hj$z0o4SpCzZ;fbr~KtW3!k zZMM}#)nVCkEbyJ})wGJc+sF~cMrft}d|$Wz@O1u2@-a`TM<2jzt+2gw;WkB$reZ#S zs27SG;O*ZSv45N6-XAafpZJ~|=k^tF`8)MeBnFTCj3A3{K4GeLUAFOs7y|~s3YyEvm15Y9KYvHgC zKO(078{kOY4XxajvNL&wVHYlJ0qUgpT1QJDw)8tqPhT|s<>JH2oU7bexCAvCQ4K(k zj#1C3I0V}oy~z7mXpgL{sWL)yr&<3OMsyzkoYk;xZ5t7L@P|QB6TBOHu817 zw(?(sZ=G;ub5Y7wy|`rr$2kLqrCve2%&@|Aj)okBV;cnx>sEsHwh`R=;OV`=pWkwY z)KT6nJei8n6~f6k4msX4zC(3eH|$Fw!982A*YyqeQwPlFpuX?Wi$rTIb@Z){4idp5 zx$j6_14oe9?<6X32K~`U{&B1Yc!MtwuWsZyfQW4Q6gYgsy|@AaCgCzRHL2)DvU|x- zS{<9v-;G1@IH#ug>rv% z+BTf!QvfCqw8%y;yihI+y;`zMUecSCrwB$;B3<;@ow;K|wtY$`GUCU|wPne7c$u#T z4milY&bWWyE1)6w-O-0t+V$t2whdR;BC+~te)|Tym6+3-TY>A2f@nORNgOc0ACR!; zzg3c5Q~MZjcRZ5r?grxy(E|{y15+4+zZC=w^;Y21?Vp0KhBh728*%mFI6Ggxd^S@a zp+a@Ie8;>lQPbTnB`qvG$ZbkyuJ^K$abU0)!Z9pr^!DSgOmtMmyX%H*T|->NCO)n( zIGT^Tpxuj$`fmo-x4QIhOYtj}vsm}(E+`u{G#8N(o)>oBc+iy0#Wvx4M7jGk<8{nx z@^$JWj~d$;N~xUl=Lr>j?R2uZ*GzX77n$$hrx0JJ-0k_uMI11^NI6S)Fn^A(0R|~< zO7ou%ch0=k?C^_K%Z1>3Ix9TVO;TmC8=>bD{5&5iX-55qKaET5Y0MO5sdw&G^3@?{ zB74oPkxgDs^%BAMNDyEJzm|rxTG#eA%O*|Nop4U!L z6BI4ipZ{1c>KjRU_B$1SU~`OPT$%h&6CC|oG_A>PW4e_&8$=j?@NnE1lpEz&rZ)Fs zCf;d4T-3oQ<2I=C#JdTu*;3LbC+w@P8V3{&cEit-#S1-H7cvBQ%h&x60ki2$eOnlP z)>KCoeA6tqJvt@MTE26&pug#1%BkqR7noWvgxUEwG+nhjYV`Go8KLB_0dIwUV5I3#!B^^LsW0HWT8yf`qYR1 z=m{2dsctT>Y-heYfW;t*lkjMj14(pQ@&)TSGqZJlhnZMc37sW!Wao~#TW#}|%!)EB zK!=lU!i#kQz98CpZQjKPR>;MU~4UO*o0^ z=g%5Ns5wIGlZ#aQ9kMIpWqgQ5C#TnPKAwo59cS?x>7rgTcbtAG+ra=Gq!p*`Iyd7s z&VED34I);e#hc!g#%=)2H(YoEzMYyaIFvQw@=Oj$vyRz-pNd1J9}h#FZw;|oxSB>j zD0cSowW45zsH4=sO4YEP9%tdtWgDNe*1-;} zg4lUC$}ZZ+d+GH^>o#k>N@c#)6ttWBvX}N}Xv3A&JL9PA-SYUzPCcwkTtCBtr`pW# zb1G-VExgVTCMH0p;B0sL+dbnnHd-E*d!8Om^ zJ1d7VzvWp0@I~}A#F`n0sG3W9=!$o#%F5b!?IeVPrj1w1GXn|}WP>N@p;rpyK?<4k z`A6P&czeaFoRyb9^$dAbI2Ekro?PSKxn55Ug`WDGt;Q4$o6hCox2YcRqf5^8lu0Nf!_t3o1ZsRz>U;?vb2w2Q zVK_P$zKw#vCXs%;3@!1PAZtR6L65x}{*O@1d~{ZEln=e}N`b3N40 z(Yj>N^zEOW5O}kh@%D4G&h7W*vK-ImJX4sjP6=C=w!i-U;;}3q?We@feo6_ZjqaVn zmoN5ontX-HNqq#~#ECP1NbRLtl^%{(E`8lluXD*5fPYWr|M|Ek_DRbBdK&rv@8g<$ zk8Ql|pV}z8Tl)Qfe>U^Jn3#yb|NLy`R^zIV_4wQ6G|cSL>^0)#y;*-mm>~CaN-2&A zmSsgGT&+mhdE{cY^6TowoD0wT`R_;LU9Bu{xN-9%F4j@Ci7747QMbR`wNm7?;io1c zc=gTV|Ni?w(*(X8w`PtA`KQg^xlw0czfanBXi;tH%iAkPLeN&D5HQTx;_7%S1)O{R zOO~|F<0h-<1u;p@4R@*)F_HnMR(P))HLeBy8*$RM`*F(emiQ&fybGx_!{`+!mB69T zt|NPropA10VaaQ^R$0~*jl7-EbnhhcyE?3Gj-P1|yRFZf?%U>nwsi&0Z#-O7@<{yR zdNdkNN~#gULEksst0*{48EX1{*3CfdEaEOxZ=jgNr*1A%jdz6ls9yyK5qGyRi@I;h zfkeS_o&Ky7bmwB>#vy}l)+gqM*A>m3PZWN_Ydh!u?!#Vq6IQsy>b$U46#Y4s{I=a= zaj-<$cQ*2Rm2=J)R8&}Y8N5|Ni!sLb)Nq!*qv*!_CW03VR$x7`G+xh@(#s=Z$AvX6 zVn(;n21Ne_f3?o?=wq>s&L_<)nyiQtLs?DgQc6vgZ3dZFV5zikY7DPmT*V*?X!{`NoJzqW6N zf2je4;KB>eXCG90$!m2QS^Ootj9hk>>yBpla_L7PEqSXBE4{R)SSm+wGh@GNcCFR( zhxY{bFX-f-Dw?yNunWb_#5LdCO{CzV4-Dh~2LqiHIXFQzh{qs^Gx>urPac_|KU&8u z>B&;N*_m*l8{KnvPlsuckPjzmyL0nIw>0h)kr<08#~>gJwW!rbwAgol4&ExAWmt<| z169&Zj#!?(3KVS99LI!NG;IOB=f}NZr!CU4f3O72*bt-IGh>ZOewnCehU44eHhS`+ zUbO+CTUFlO6N_UkofwwSwCl$glbnuS5Gp7op(j*IQ52kwMn-i1h-o_CyEe2zmbj%5 zbCuXe?jD+*5)qco$0KVgvkSxsTOx!i_9S&Qo&Q5n>1;uq>T%@99qOlDVV{^xdCiwE zxX_ikD<~4HFc|8k8;~Xj`SLmU8Xeea0NdSOD#3J^Jl2_K@3hgoypCZ zAGFdpclDTw1R6a52@q!Oe7ejBuYdc&;C-o>j>?99_FQ_lAR z;NsJpg$m&wF^i2u?(~(;aA6-EC%>(pNSr0YOw7wp&1S@-2C4GOhe8 zfwO=Xe;eT-O|3hsCPo#%Tas@e_RUW4j$Lvh&Wk$-pm@xuKQMdtH|7XS=Nm_w7yR6D zZ}f@ZW9|N|V!jFd=Cl{nmTWn?0_#NP&lR=oqh4XUy^D(v$}L08$jA&O>&_Y%-CO+i z+&D)kG5c;e=I#Q6}mK_No2hG`Y!J@#MVQ!$A1Efaj9 zP;eR;VA2+;$S(STDezcO>Lik+{YP`0jPf7u%@m;xX<5=ey`eBE>^I zT9KlI@|Mj>uEE;EIn^bVJ+m)oqQxYCh8EKH&0b6w`~kn?hicN1@JzMl66?2+pt7txo67}KySYF3(j$J5 zasKdcbgHf735)DKJp5IB9_Gu}{aJYmY)oAGi+t-M>`YY5Y-BgF@MdU&Kr#x%GBE-7 z_u7{ja*drs1E`botLIL`kFS}FfLz-2QJqI8neXuVzsf=nFBSWNh1=M zrWSA~l0&$dYY%%E&3B&ulxbK8`hyH?UUECeyCma;^&705?n6`Zxx8*W#39v~g_dL7 zd{0rN!5~!fG~{SBmTR4b8qqyAJwwy_Gv}$_*31uBXx&`WM>kgJfq=~~)ds3Z|M-?^ zui^(G+b|)kyBDq-q0CKzB?EZYq6;>VEBtC0|9{C$; zE!%v{4dUZH4-z?cndciako|b6xk8_vr`Fa4ueIva&Jk9fe5D2Cg%4*3m8B)oWrAhf@uC@0-^O6Te?NG>aj`nla#y5u5OdIgU>7Z_vs=eW+NZMV z{@k7f?nr7P|L*k?VN>w6SuXvlaNmQZuxuZ?YeVBQeUiNS#pJ!>`Y#2Y?(hmdumZ*j z*D&|GRcZ*e7NxNBtutKyaw8@=yz2IxbEu8Mt(7lxtN%2|J&8rz0;jRm|NKbuz{=)V zeKbx3VsLkPyd0L$WcA1kSxDG`XxGiy5h3W*iNti{`#C+@{ti?XP!^qUl-R*vtX8X; zaVDWgKy5@@-Es>L47&P;Jk9b*jJKKwHITkPshLDKxtwu!6UorFqs?#iY4k5!&qQ~` z2s)8?f9L}r2s9v6F3fC>U!&epOio{59VGwl5dC3#3%1#=7v49Lx!kyzbU!!$jgG*y zo3E*VZrNng$Li>p^skQ^;iA{4-rn9F6+Z2(j}E~^v>q?g9J{c`vdXKq`OAAnb1m>~ z=!Z8>5pg+3$c{2@wEdJF+|}Fjh>2ok5~cG|dw75Z`BrMcm-!E-u+aHc8eG)))i!&| z<9UYH=V5%G3rfB5cVV4ql?BOBQdC@xF!U9{emB#??D4Fs+(kR zpEgA)71eIyjWO=_8|e`%Ns}T9!8Hr*b1yHW;nau-J8q17MfX!xdcHbdxAk}8F%NF= ziEiTWw7Ib!yV#w}G$7t}i0o4d>)daS|L0}Vqb0&~#$BXAb6xbt#CNwF-2b4*R0gV)ubGNaD3d%9s4YG6FIBB ztQ$sm{A&bc=D5&Zja%VF{QG91*`qSv+5Bg+(sc{+cTFnLe;N}yR^%pbtos+t6@@jg z-HbN4`Z4nz)_@@I7pG(ur7N~MbWDm%>x(s@`K`XxeY|);g|nOMDr9+= z*&xTQ=2kZ{)FY;;_~VhD$IlH+clJiYx>%ZuLNw-UJP}O+j$;z=>~b92YM#W3b}orA zt-$Q2`XaQ>kgxvMTE9cT!0vLvj65xYu6u>n)Q`1Y5rQ@U8*wwPRAzZ>+->^p@x!}% zpIwiTt%@H^@Cx5*y=z(#F8#ibvQ>307FK2G&HW1|A;PLbjbi)qTF!I}sjRI(t#oV* zwrr;--|WI)%Cx-)!X8VE2KAwa5WZ#iM1^aW%jvwZ&f2>$v%Cs_@8L-mWK!_`iqpN} zA58bH7+Y%Te-wD=8{>)28hLHlfvqkz2jYu@<=iW7e8qL#Gqc%*HpEl6_}lmYEK+dj zBbPpOoB;WoD&CRbVcO{}p1a9^N^c@+G z*+tVxHyj+;`U$@Nw#SXGC4I|WHzDDq*rz+c1AipS^Z z-`VzQPlsV>0gK^nB~yCs5i?P`0J-_iTz8+!4C$R99!h*&ahC;L>iR<2ghRAQ zSaq>6we!exMoo**!yY7qX{(-NQYG)nDcE=mIAt!(T$(U z_svjgeS-#>3UgdzCy%ItEpa+BT0xX@wh=6;G|d$q-S92LU9j^;rIGj$UmJ^5o$Fcs z@V2ZT#LX#ZG^>&=bj|pfX+IHOzq@_Y&bm=KbWOoP9GN z;urk$A^Wdz+$#)Z7pFvA>5pD3@EpG;kD=Z5`ZP~`$RDUDEbq?`wZxLisqo}9)>t(K zVxfCZw7+?oOYjWI5E|~%_sSzhPI82uVrd8m2oXJai_=GUH;REJKNLKH^jK% zS9S|EQ;NOewJ~lt=GmUupNDaGsR!B9J&N7jb(Nk(Ncs36yQ_cBF^8@f(JOY}URgMK z;mbGI%v@*Ksuj&x$>4Tb(+sVE2Fc9zxDY1+B6Xk*DwK`rcmL=I zX%RnoVjES7+O$fjFiV8rQgc<^D~$MfQ||1Wd7kQaOwZ(U^gMNu29#?AWb@!>5@T|Z zmxi9(_ZhlBOT|zf`$ro+*k_QrX=h@TMqcgw4~B(4x=~VCRG3K7kv3ZqpLd*%H-q8Q z#md(bw4Bmj^W)t3<#eD8D5vW@f~R_H&Fe~>T%W4Kjo@q!heiDBV&=8A1M7n<(^SgWHME@*e&VtOL1 zI_nk+qT%H(#wzL|O^5jtfcc~rGR;&3S+2Sb2!(PwS_G;odEn`_Szsa<+V)Tf6uZ~_ zGMPrQ9|6O;V@&GHS7O**#op#{4yl{ajZOOs(vFbdqF-yhi1$4G?s=HC=*FYw_l5!%NSJLmbpwm;UwdOaLCz@y7 zS9^&fz)8k0>)2K2t_N!^J%e!;Z;QL_MT*Ky&gC!kKu?JNLYzA(>J7 zriK~C?r2gImCY|VB<)h(El0MdMj~`UV6fc^bQXYJ;lNpB!dRqeVu#?2J}p~dM)zjLi#f;KxX#r>kS?ZX)_k6=kSSzGWniNsDghVIaRDmRSOzZ|_Ky1$p~( zEe$XzwZ3ywi{w)=rB=LyK=nI;FFRFJa@z|Mw*#wTR^?bL1szI@R?W99Pb zkPHFM#=-zvL`NL_l0jBK z&RY1>_|D^r!amj0lSlz1E#P#<*QJ@HETpFn$IESUc9)j{Q3ikqJ{J>z7xS^f;v#oNdAD|THOh3q3 zN(>7<8kCULy-X@^E(gym52@DejSD^g+&Vxv6>AfL47KSYbWAEYs`x%OP}{RFD4QI6 z)<~-(66EUW7FHTaeqct=hf0g)da)J$gREQkNyF9;csbqhFWvWPBsF9|E2sdD--!D} zxhp@V@WVyb&l}{}J%4+*2HjtahkPjJNaSsJ`h(HJnV?grza??80Wv$qEZ$1asX)`}0+Q`hlngG@LEs{l(6=y@ubP#caj za;4`>otB18!{8C&aeM$Qinr82Lcd3d2Zm| ztZF$OROq|^s2itnSD&^;kA}m=Cyz(UbJZs^LEkOKBmh1h1A8jv5vq26z7n={R>|4F zR$@rLtCt}V>*jci@>c^P@i;eVFFyW7jMXl2akyw&N{+)^hsjxW`|j9cp}6Aqv%~cw zUq1C1`Yk)71-oR>lTEc32z5T~8IEG)o}vvkzW%<0VEa25D>NgxC!)ce>UrISjQ3qt zE7X&(X&;Ht+u5C7FO1Dc1o1VSNivwkc~~oH4R=4K1NA(~yk~`%Q)lNR|8_6y{bvp< zHI!iB;LFEX|3SRtPU8}#V>ZzNZSp7lJ49FbFcWYr66L^lcX-0@IX_A6YGq<3Ag%{vfQnke*!~1R#W9=>g~=t2p5I z+U>V&iJLrs9{idL2Q%LfOPUC#q&V{3T*>Mjf#+Swqt2%tKQW+`DZh;4by6G_qC_$f z6v=f&BpPA*KM=$nYS>t%5FwE{+*HShqHv=1&=`eKbIQD;0 zA_0v<*8BA$L|K_Ty{jeYceR&z6F^d&Qc6 z`*3yiWi|5?^EP4Cqwt0%ubMbJbu#a?k+AHJ?$kp!Ik=%`GTJ zE3M>JX=Z}$b$R-k6V==RL!C)-Neh#%p1ug+CRRYajio&(exdAF=-C94GY;!+v_bay++xm; z8%@)n;zu=ZJqFCJdXrSioVor(c{doT9mNBH zGL;lB&3Y`BdVSgU89&v&+1-kJggy^$s^^@z3URecuFb_^d$LfB$|UNz)npP|WlGdI z16g@Zy?xkv^3(%VU9mM&vsur?y#n=#bc|b1C{bK)II~)%I=cK8ZpHmmHJzbx? zvdu5eOe0D0B|>qu?QoE(>u0loQ1K30hZT_~Ph)<-XME^iNP2-RE(pD#n?{dwe>tvT zubaR>_80efllMk}qy`@h?4?U7LbJ_~BJVsXc5~fwLw_6?Tzm*JDgn(@e#K*v<8TdzQUHp=Va@MWd{gexrc?@?8RO3F!t`}ca6t!O*a0HU zs2Ws1^j%tM>Td;65p1tJ^Zn}#F{t$$ON~h4QqaI{zLc9){U0Qqha;8m`^PI$LXy3e z?7c@uvO{(vj%1S^4ks%`_KIW6-g{&nWF4FAy^g((eeBQg_Wk_>((~NUbzSfG`*qzs zJ`4TY{7b4c>AkpWaS4tCM&cZ{H_h$CD^D3Bpw zEa(;Xb)0dOZ~lMVtH%4y0*AeG%$0n9DY?5lxhN#sBOERt4i^KXF4IFKVKlJno8T9+ zDt@z{|CQ=Ts}indc$Wr!3~f@=`{)|vJX^n7{^!2b(8DzvfgV$TAr@+(O` zvZ=>7YZNUnD*n-^>`Fd$v*t5u>cD?gX$U=*l~Nl#`dX zz5F$axb<8&35zw~u~`i`r5^Y*We|lZI8dZF?~9KC9TNAk+rG;Qnn1_S%*4(N%rNjx zqaL9CdOD>cxj$TZ_Aahx$SVh2KtR16Hmo|neR0rIFb)5(o}@V(J>V4Fd@iB}CUma9 zccuu8tOhilD&o$nr#&3_}` zECWe;4FS@zgOmg|YFcd(Bq1Cn;hJV;*7~c-9v2w;-uC&w9e;&a zEY{ben}L8q(QUEdWEqJ46$`xg%D^R8%Ps{IPFxsD-nr5oXX4QY%$z)>?nMX?k(Crf zXws}wXPPD-S=0leVsgT9&R9{g7b7ty1DdvRTBe}S4@5WQfy@h*`A~oa%>#nB%c-lg zyDWk0h(vH41q>?%@2X45QpSPz%rCe}gA7@+;C*F(dfuqFLaWH@t??LI`V}r*s=1c2 z$|Hg9I2g{t|1j;?89Q^^4DP4jzCst9nIUXD>P>dnYMi&(KiGhaSBgg$$ZX!P#jn^r z0ghuhoX(uIt)C$|74zML*Lx9*APsrp#N;0JgGC+F1)gkoueM90AX|bC`K&FuZh+A` zly4Rv4=VJZ$ON#P6!?DQZ?9VT zd-LQg*lg#Ti8vEn$%6&}=6N+EP}ubg`u^?t&wg$!sU-n!B7O-NZVyMdFj_vW=94;; z&6Rl^ZTKO#s`zvyU(N6Xkw8yL4u&Cn}b=M)3urj;tcU9I)I3TL}I9Z zPoRK#WOV7s^&!ep5Dy)jXJ`7JGFChubzE>T4#)pJg33v2r!{$Tkr)xV2 zQwL#Tj*WsMK)BLUL^i##f47u(d^XqF^T*`Q-7N>=n@ho>+g5qT11j35T z)=l9;K0b9xVBn)P-?sFcM>sh7qs)^Uz{@Cnc*Frx8G3f0mzMINrNC#;sbY#3QrUpX zS3==zIw|$kpl@dak6PKDEP-wlW@OMCpso3z!d;=GzK7E=uvcmDEpoa1w)2gbsPcKP-6Cl;6cap18m#441(8jq@b!W?l;1@<$SRl zC$et{y0r`KWNoL~V=nnFEGIabyq2{NASg2)+M2U5;qoN^?d$LW^iK{mk*m0m#pDyU z(P=JU-`NXqebin?)Ppj?UO~-tA$!z2U>I%w*(TMheGP7pqt|r|GX5E1ipX&Gj+WS z`h7^OJZAa_f%_NpP)xnPp$#WtPZ`z)q6#7rIj1DVN8T?sj!Ro`9JBrpt4}LZea%Sl zshSH;SX&I(Wj&y#Y7)q3x#c|G*ilcfZ+P%@D}qyb4M}vN89BR)R0+8m62DH*X2L`# zfaj?Oj3T1@BS%F-v!}mPfKTvrxW`b35YX2)DhF?ku)usIF`m7M5=95GPr`2{~ z{J57&Owguz09o>`(Qs?SIPiKiB+&7Q0Bb3(GuDE_!7zY%j)B{#!!Qm!AV%iU2wfg@PN@ss{Z*xqv1&eI*WqqQ01J!+N!??PfPUKN7x}dDABcem*gKT!N(a^5xiP1g2mJD7sT-gD>gGq;N2IT;n`gm zfiI!Q?vQB3LSP>PEEAV-)Gu8Fj?jN-zBRWmyT&8?w7gay9+7*0c+&#Qmljlf>4cMz z`fw@?bmm3G3wr$k3_AcN#^~$&4)~D=pYUdy^bFI{vG4r2e$6oqDUG#x1Le&hq$~_t zq%t^`YtMoA+NkF>H)mAEzZ1qlqelgNe!?F1CVc8H`>Yw6m*p!K)K4f$i}e%JrAa)t zMxWjei#hMWVJEup5}t081qVO)XDk0_u@%Joq-aW$t5+4&|C`}JRY=8TNIHVV&fz}5 zHKyZ$;q?A>07~BU*t=irB~X&@DB~n4mJ!QhmfZgYyZ1yTJS=BukZK?An3U8I_aO#JltX zrCM!gWv}eP*{G*`1Dy0vX%cP*hoi|dBcQb&J5=e-&czzt9(0hBJyqvMYBJDpS#c#n zLDUOUlb{s~7&xWw?yh(1^g9Wc2_VkcE(t6VLSIWCdN>;g#5O-%wJ2O+6gtQI_M{n- zETrObd}jnWFKfKy-TmSG-a`-<@>s8x#Z%6RYbjvG)iZb@UZ@wJECV;3J~OxIDTus) zgzL4}cxTeDWzjLE)A+igp=^CGO)gUbnVhEK-YqBr#jU zPXU|u_z;DcS?9s^lGa5*$j7T!o|3?~Q?{=OYqoOM zPEyj|?%)8SwElFE-o0CIx^oGU7c7*!lG9vXG(Ef!(b~e;EbDxw zYI%AfKOaZHgWr_P(r0==-eamAoy(2mQPfH3ywk5d zf{s1j=%QePZQj3zjLEyZLn^3k_g8EMJ^F0x`)QDvJ5vgx>+u92N3_Fze2X8vtF~ZU zL>vr zco(fpg6>E*^^BEp3o>&LsCa{l=JLTTOzji!y|Nd6&r>2HEaS$gK*+00cw3emf8S=V z!I)r6Q3&%sdFC=Owb+x6VRrfXND)bnYW_x6Lon$bL1dcs9{T|61x!f5x!cKB{;J6` z%qc*gl9rnSy^Hn!IZU&8qCFt|iPvms3OmmuFn%p^InfWAt1@)AdyL$zP5Q}{J)+eDx-u5M;RNP^`eld${I{Yhaq{{4aPWTn} z+VU!x;rRQ+6nd*3aD%j#dN0E%i;z4Rml8tpH3{S};~|UQXrr_ zhJI!uK$@k>&olp=hKn{2e|rqWrRSmfaFbg<=(g*84tk*Z2uavD%ek%! zzZoJr$15gh`C`TQQ)_%&{Yt(O7hO#f{?AxzLB#D?{@D)ZFq|eJFJ!by1;Mpz#g_!VN*(-E+r>iwO9o~I{2Ps#+qv7zLp2vEqZOn`6}jA3=*80 z6SLvn(faQhDwz9|bjgYb&oZ90w{P8OHN@~5LX`>nE;zcC7HnHCBcezZFvcs$G*xYX z)f|VL0GDJ;x-Ig_k0p>TWKnIJdp6xgliCt0h)`rUzYy8xeuLNd36%+%&?-lrGHNWR~8j5N~w7m!2ptpyFAJTnpS7TuO--9O_ zhI9OldM1w=Ob}42gw#=d5w$n=ZX<{fcF6PZS48fF?}s%j9KVP@<&Xn_)y z7W?hMpYwW!^0e7Pp&bUqAxi!l;(CmDQ~1kdlO;m;dgH*+d^rb!zeZHck8{yVAS~_U8%hn`>DIXV8J#RmECJt1)mdjYGU=uk{DNa zfC=S099&X2-8G|0FF~v$zBGdL*`pNu=3;A|CbsF~!2u_l)MGvbZ5LG$Y$h^%90&pen6X7US&(+3aEgnTm)uaL5} zS%CDE%Y@sz|Eb_+SB(I?hq9EG&9MZMUQ&x(0Ac5-i4<`l8}AUy0`d z^^xj3iXEr%YX@WoImiQk&}V3P01;!B6U%fqOgfHTiuyJ#<{u{t$szn!)U7@yRNQOH zN-@exwZ8%w6Cf$6^lTipiG4KTI{|=CL7agvp^}CodM^HndiailE47Q*U*qJn8iE5z zVu3B?OL3Ajd?rwi!!qJkHqSv;n`D0JH_quH20MUoUC0)??Csq<9PK8XH^)L(JX8~} zYfF0Z=?IZXLf>ecN2*TtQuD^n6w_9Bvo(Z@twyyj`vQZQBX&M?>YX)q*bp71WR% zWN-g6&-7VH9F!;3&OBON!ntzOyw6;JyMqtjZH{3sHp1L}gW<((?laJK-Qq5o#7SLZ z__bLFR3ly|p+x#3lG>xjJXI+b#U!Bcm5->aKRg;yHH5`E+!Djcr|eK~$YLOG?`9G* zSjbyyN~;tYMz4<5SmQta}0d> z1B@e;t!Dt!9lf1|eAGSpjsq|9#d93BX-yRa{dv7kwmY(KBWeKOTvNxZFuw17r`tU7 z;^wt&+}gc)+ppsYHCzq7dM*8~5ha zF#&ppy)7IBN%=o9Hmxw-4VJ2a0>Nq>H)UP`&MpZoR14M+E`Sm!=hAbs~hJ;J? zA9>WTuY^?c4I&wIJe~ty|8v@zW2aYdjMTy*ZUvl(e}wEho%Cspg!$x(FaHiRJ6EbX z+v2w>*JqM8OB))C6BPuJNdz7|SMqOh?_C-LRAo7*2A=Ci9-YL+sllq>VXTzunaaOI zvNkOCrBhd8eIr<~iYrbYY0%Nb-X>FfG6FY|XZ?v8CO+`s9IOFG4rC!jys?w8Jtku5 z(X{Fx-9-d{k$K4J24=dwfpc%a&P6NGTCx`=Z~E>X<)g3vDR3`#$07^t+Ay#&T?*u{ zc3`dW?0qiyUZ4%2vdJUR)dIUHKFF5*xEUJuI-Gt4zE(BjDEJN48&G@7=W}ijT7zGN`o~I{a@1XFp`Bo z#{Q?f-QmR;_V9=0gV)bVJ9Re-mLI**o+P+{Y!Qa7-}BhwD<)siq1*0b5?k71Eax-_ zTzKhg#oUBg-GF=Q@wQZwBnBYb>42F}53ZGWvl`nUK#ZCpG(LQUyXE2TQ%}(Hg8ay; zH|WSLWJnUfF8Plw7cR95iV|$;k{9zTF5xzfroNm9+u!_eS4OhuD?zEiUwb}p`*gnW z&*GjvXif`aMYGR5cIb3P7wFjmDw5W7B0A2@MMDc79*B>^;wt$tHO7UZ%UvPIAmeLhn(H*U}(=jQlA#NL_E_u+*^xh?WYvFeb znRUNb7qGT!y1JuS__|eNkZ+wvC~jJhAce=c_6?;lH#mFpRY%SWqa;URe!YE5&szgv zcw*$voqqR}?X7Jsx}S-Aup)<@X~v^A+86S2A9DGE`Q-q% zyls4MU(-`|u9Ihc$|~|+67j77QHN56u2&*H{)1@kTFbD$> zqxt)8?aTXjm$h$G(;+|OL>;=2rU}m5HyNztlDt{N>|FUnc4hJH+}yusk}~;^28xvS zV**vx)m<7@li~(77H5P<-#=F0!*1j0wy(wO7t5*Uu0;~#Hn)Hek?SLOQq|>8jKQN7 zMp$lWhm?kBdu{YW{o)wAM+4RO!X?jrJL-Bcw}Y%R#O~vpWkf-A1Pzndu58S}r#m1g z?>^wqIKcYeqY}6ed2klORp3~tS_n-@O`Zv*lhv~Qh-a+t%Xsq&NxTc|u?G&Y+Q_R^Xb>~VbfCT$r$6V}XgcemQ z&P%3qae<2Pc!kFqppvUQxPrqZ^`E-!f#!Q;MG6rp8&R4Wv51i)zH;)SwDIWmWbHdB6#k*ZyL)}WJ_tz;`^6(or-zN;1Py? zm|?n5+VK#F;g#|?qT-e7+zLFRH*F`29=B|&P#RY#VPsPA0XFw* zLrZYNU3U8aC1$hz44udE*hz&=%dc3(5JQ|ZsXnume8iQ{ITgs$RnRIFG{j2`d3!FT z63p|h73#;p?_YudvvI~<`lsQ>aV!NS29Hqmoj2r4< z-IS?2h5Ti7#OP^DMvmjsdgW(p8Fy)A7k zFqFm7)gK+-UPzV60!#QcyMybo^TRA#0!^ByE1dPNn$gOpocZXTyH+*yuB(+ z4}an{Ys0g@`!wn=WKBKzU(?O}=-RmNT&W9=fTrGu7Gus3mOz^AnD{SZkb=AfOM1_F zyzS#g@*JHX81_6`SI}!@{fxsOi1idJaJJ;DH1x2ehb2nxJujQY+_9tja0r#2iVGN+Rh)X?6s12Qjd;_53VB$ zOhZKmUcor);Hq&@@1rMa#56p+Mq3<~E9I8l5&blUDYZFuR;`-(x)*Lyl=VdGb_SsG z?Y3ie#{Oa$T8#v7mFcN5NaY}8FJkm3{u z3*3AKIDFV8o5gd3A_|-xxzf4TK!B)#5 z!F+pQhw^fWexEtOhI!$*Ph*6UDt2k*lct@Y2$v8*-Dev~nQNlnd|_O>IL7O@vPt`s z^nI7tkPzU-A8T*je$NEDaZdTn+0j+#fk)Bt9e5da=LSmts^i|~_jLgL6&cm$riiWY z6a2OYLFZM>-}lS6!Lp;0!i2ns$kg{H zI5h(&rhhSkV$%O~&>`4uc@N}~(8HBhgqw3g_c!K}-%De59WXJxo>o|g4Ud2!o^lI} zfI^xTSl_GVG(2A2Q>NUeQW4p64*b^Dxc)J?R_Eof z=4$$7bdAd;+*pC3_C*5NIx$vRVRdIX4g=sx_mYb;&f5YZObaH=?Z7=Ol7U$j1x2|S z4oGpdUO}j}>Z8=Jaiy4#t-Wo)BJJ9$SC&#@M5wPY{`CRl^4PnEVGk z4UkS&H+SNt=M8n#YSBEMV66QnyxR_-!daYKn4j~ z+E2C5th>@))h|(LV;-Bn2pUJVU6(Q7$`Yi4C5%57>%X}GhT%^t6x6yHb*9e)nRIc_ z#q4v>=qxpU%>rQ2;VXDe!chWqH-uT~`^(-=Ft82Za=L{z1blc@I&sZb`=1Ld+sQX{ zEJ4(s4N|+**d(r$y4;l6kuv3^!BL`q1yO^PDE23N)-n0lq)A}n`~*hzdoAC+siY&z zWKyq7r*Iz`MbB;Y8s~wz6$yyJ_Z70m`mGI||K3U{=rhHVqQ};EFa9Q@ScA%dLy>da zV0y~H_6Lv{D)nDy!Mc#(x@b2PC4t0i)O+#VM#1!0F0r3+%ce-bC*>t77&H2Ic7Lm8 zFGKZ{)_VqSU08zExqkl=b%}o-&BFlLJf53iMAO%M=-4fe^7e&@pxU_E9kRv=?(3Bg zMfwJTUGKkR5+$6-iv_BiBXB+}dLEKD8c|pGOxIVwRa2w{LtJyfy$|=%q=4)%zz=C= zJ-|L~oRDa*zJMVB48rLW9-X9?=17qe`E|#N+KXT?({4>nN9yTHyVkRQ;UL5OC4-+Y z=<_8&&hbkoRh%+LLP*{0yJJ-lM;=#w!%^Yh?_mAjxM>EegmoyT^p{SsEQN}uNj|WJ6d--P~T-Dp%34?5lNa~i>4`b&XSahaj? zH4~{=f5EH>9C6B;oii>jt-`)x?x&a_g^R|PTKYC&Bp(ThKiDdy*L(ES7L3w>X;`%o zd6pr(Nodr$ppN2U=JnmHgT?f)RUz4$x_Y(U_sIz!7f>x(nZ%BKrrkFDUm5uW_6?$& zYpX1}jm#c&flP~7j?pwaX^tUcE?xQyq3g12pE_PX1P0>3q?8#8SLp(1BLE6S0mXLVN=^RB-){QlD*ZU<+LKcX(Qv|+;Dv2kUo zdxTsxP;xWFeU$zYS{DFrnE@%EUsZCUcr1Q;6HI(tN4#jz#Qon=O7F3fh-Gk6=RT&G z$=%&Lsr~Rt-INjjtHY?u%e@R(+TpcnCwq)_zu2c%Q>{Ntm77Wguoy1KmsdCewo70y zwv$j4(jN2Y%v6L)M5WEbf@t1ZlYrD9>GkPw=2EG$Oq26gACvpmw+SmkmjnmLM2~ru zU30DTp|ih@JzHyT}hblj_1ZEi0be^tVbB7GL*~xCnSI* zPCzaU24P-HRaAFC8Bq@o62>_XT#d=my4hPF1yAAMAcMosd zuXC0WRji+N_LLjp^N)S_!VqD6XQTgwT?#}4wq-m%zpJ3mjLz*eR1kw0WKp@M7Sl@@ z$|#zIt^ZLKFMowKxZ(#RJ_#fn6e8o8F32p7dXuEzpb0UXmf5q$!&EW5e&8s?f8fnU z{Z8w^cIu}}H;J4am;(XJL|$9>+Q=^Hz+V<}sMJWl#{Xv>(vT_i&;S*$YLYS{<6{-^ zDszCsO>?Htz1+O5+R?f{8bm_-@`iuJdcine zDhuV1&!c5iD-lKj4A0`jBar~M|6AL*p9-F~dl{}uM!VnZ69FB*-IU?BoH$x$%@fn3 z*!Th?w=Xa_6Qc7Q<^T^z?6*xT+V#KS3X^( z{eQ9)qIa)%Y zcJ^HtCf&#@<5e!dt4Ay5uq32=8GTqBMUQ>(wa}(~XET}mRkW=-GQB0|b`RR^d$W_u z%{LtMQ-b$(Ox@b1cQ_8o1$9DqA|sNYiCp?lyfdtCV8FacR5O213*grS9GHPka^~%ds7Zpas^I+DC!NaD9-3xlShSh^ncT_K* zjY$iMtLGB@fF-o^rWV_NLars?+ZT?=B(PclFwMw0RxNV1IAzWWs5hQObJGP;`^ZPh)B8X8_>JlMGaBz2DWyr0O<5*%){TBT192d2upl3@459LAQMD)1NIMWE~Ps=|9CuZeR zRt%z$_2^54;965y9RW7>y|CFlC=b=mYlPJS#8v2HF}8E%8%{l5IAyEQoU(p8OIlwO@iHC5P;F@kFUd&v^6ZATEnk04aWKS-YlS&Mpmb_1!& zW_Xxj`JXNGuOuV0kcF(nV2L2*0S7;qv~CB#?LsfwPEQ)v;RvfIkpI9qg_ zp@?;^)NN0)f$1q8-v84+;T5$mf=wjk*(c_*2k1+_i_!GMN5$sb!I*Cr#9Zhp)eR#c79jky%cd+uNB^GN%e!r*g?k#L2m|+Eu50Zffos|L*Tx00! z?{%s?j3aGF9MX&DlB=)#N%b@+pBo<=n`|npx+@?+tyx$e^3R5P16|y2>-`gjJU*ob>r4m`j|{#K5b+Bnhn>M7!-6E0!k3uTH_J1p`88sW_Of!p=Ss zPl3#XLo``xFW>*O>uw?WL8J<>)guuQV z_O|JFZmfG`RlZO$=pD~4(qiFbORXh@i@D7+P5Xz;m`(o$Le_3qSEm`iVxj5E4t#-p z($6-JT@qH#tN&pY%_8sY)iuP(UUg8d4ae;Stn7@1Cw}m^G+N35emCVnZn^g1N5&q+tOCc43zZ6~}sO*YvnjmN?Xm=g5oIxxs<)2fY+j>V#yk)k25(i5h zB@=xf%WU*qYf$}d2TZxf?@yAH2ikcyszSYeAs;7OXc*&`zyLfd1^ z+F+gwjVU)(NXkU~vM-n8aZIl8nW~Lq$|r759h*tQO^7!^;%+KX3Nkql4%qyfaQU%| z^=+&*JQA?dZsyG%5S9_Bu>)t&8zGKVS&DMG+Jre@X=}Bu?UD@WY$|g9eh@G3%{$*Z zAGgZ0cT|`5Ueb*RtY^4YzWr2@ zQRjAo`E+L&)?=E|+-1W7w~EjqBp+rHu;VPGjlIzrJp!QMJ3ct2+`2fS<~ej`6brok zx7Fp*u&N=2z!rB@`k8{1^P0(5{0G}39ju;os5iI5p#8&&8^d-o< z5IJ}V30eumB#c4CF2{Xv+V0310dhRmz&7qlB2S*NI&ApYdz%t3o00R&aljZ++Iqjb z>@X=a5+D0336|9rDS4(^CGGazLPV3XBLbl40PY>4X#`35{A8sI1~KOc2KFzWg^{E6Px7hbgh+dNUh)_ zpTqd)XR$u?2$ED)vk>SDm-?6AM`s5FGc|^s(y1-pHHc0Ef1>C09&nR6={|+M(sZ&e z;GPe0)9DtL+m7T=d6Fh@92lPb3NG>O6iSeITz*@RtO?lFtr4O)yw7RzS-X3vzHVCl zUeBvL#olC1u5CyP?O3CG6@AvU-!v{7%%Vupz000zOKCImz*sYQb{7Q%e8K{T9}~vjy+62ek@m*vC2mt zdtmS+E%w1No{^}Fa=2*!J0j*eG)F8GQY24m0iwJht|K3HBxlnlXv#t`a z2ZP*;|5>A>4p&vDh7}Ie8^}ouHnbTYKgKCj_^`C&wN*ZpmHp?oBIN;ZkVR6lnI){< znRya6YPMen4ZWK@?91e_rIrz;zZ^2})sam)9dB(MK~6HT2m~BFO0oy~%VdO*_s#(X zY1UgvSOk2VV+Q`KX_EeGS@74&1eN4omT%Dj+9pW$Y*^dfJ;?6(pIB$M=S2^9Zh|qY zOY2kqI?_gQ?(yu%3X$~@b>rO2QPYJ;_Q)miec12?0Q@~{y8Bx{)ckWP+ABLfx#Kdm z&O6i z!HDX2;B2h#E+V33f2#iwP^rxgVi`3}6K}|G%-v*dbJfUMjcCmb9Q(*BmufCOy*^tAG1?b8?C% zcs}Jw%i)Xf=Frkj0r$k}wBG^Obo6^%+JrQZoU81zh&Dnj0C}!C2zw?1du61?FA3X1 zgX<#x39O@gqy2mPM(FD^xEz~k0p=EQpsv5(L^soc@3nf)`+LHd8af%?- zE}{KJb51oIK%fQr>9@o(wtm6x+qp)dueld4nMSd+?aVx1sHaS22UnKz)2%JfOjvV# zMm%;n%yIFWn)v-`Z>Fk8WATLM@-A9vfWD#I5atxYzeD6szhor*)hDm>laoNi2A&=r zbs?>;?Nq0SAM=m8!#XPu%ans>H=mNM%uc=yUdOqppSY`m?`|I!5pO%l$>;rBNJRze zYrQFEFWn0x<=J47{(cJdK7ZrH3)AxaN4ALI5ABsR1}LTWvet9KFoY}5Y#@h}h4>aO z9r~{B0s;n37QUQz`yJG<%gR5&cw3&ouvIs!$ywY^LW|7_YH-!f;1>W_nXC?ZtY{+omM;aQBsLfl3P=VnNyT2ClTe(>+MiwWuUjra<2_z-P~31dJ= zVAENbNS2aKcG{ zr&rBGshvimykr_gNuF}eLo<7OtutpCe{P>x32s^eBjiJ>qC13+U zvZasAJXYvlhy3#Z>u&qsBD11;Mg(-P4}Nscl7*Lv48rVckJuX8YJ0iUthLR3rh|}T z5F7MR_(jvDV|Nmb0_L{ly%0!G&0L#4w-**#e@GZ5Y)i~Cpn$vb_+0+Yt&OG=`Sl^y^PfKB5v_bvTYdY#;7b&h!cZi=*ay>eX{j*Q* z;7BpYqCbr^1g0~z6xZ-CYX$X*>&40A_?ItVJ8r*nDcEAk{V(S_^6>fx9!ceAc+)7o zcw3M_K$|t1FVHaH)xOi1dq(P-5J(-fHufYvaHG%(NG(qEJCj9{rfLX*-4VG^0g;(tq5W%KXw z>C$Y~{=@yxo*2y!duz07WK|Qfgh;I?gg2VJd>weNbUjZzaBVtQ>>LSpiEnR*+VC3} zy^t6Oe>^rnjK3zjhnJidcn_37fL_Gc*hxHbSl%0$WjPazZH6v#uPwNyRbX)WN|y{k z> zkRXoNN7>cO&9CpkdKwI0l~9!Yh?jW|elM{xVF|ggy3=94AJJYHCpF5PUPfUj%f$l6 z+5>D6S#U>n713mm=lxDS&|St0S^8I{kVT_#WgigEOo=4B)<{|Q?Q#?%A7hi=PYUMf z6XVZKEL!9N+3+&L6IoFB?=3#s)td92>3y?j`JGR{;38EnezMddXY5S4@uFpYLSdfB zDdz)Pkgf6s{yUevxei>o82m`#Yh`fLik5s%F9VTimVH@%;gF@?^gMxX%SLS)3on8# zB9B0_`sdxgPYwvRe}z>c3`f!FYOGSN#-Fv{C3yLt7^1~F3cXhL-bz&gX{BM-uhnW$ zqtrO@6seMi%4YP~dTmnqU!oz0VeG zlJa_8gXcMmkj0#jDuxb$qI1_XTs441S(U#5pX4)0H;!0BIb4S{HM}^Bizx$#)f4_f zX^i(yAG=m-*UJqYa4#cjlvT;->Io;j2LI8m4$fJ}{lEmz3y%FrXQ)(_?RfqSbuR(< zYji$4INM7{$WVILru{~8PW_0zri$@G^B0!Q1n6o%M1SU1R)xLRC~z1Ih7y^=ec9;L$aQmj zp1G)i3bM6%1cei=xD^m~De_Dwe)x7~*gn7ZjNemYW(`|nTefeNFKv?!8G^=m&dkl7 z&w9Xj;J2DxhiJA3Y`lTt&BB@vD?WOj*R^^JYi#T%@hDwwNjYQeBsKLh-m{UIDWv2s z&cRNr*i0Y&OSIO7Z`HXM@~@&gZ;6Z5aKE~$s|m%vXShM-DBwG@z-4-Xf~D;s-@<%5 z&704iLEV+p-snN+Ot!ui0>d+5t2=pQig=g_$v8|iC0r%lUIQ)wr9?#t0z+kN>t zzog1mbJPt7-ETs|f2&ZoAWZ%5g>5-gdthMa`K>1Yy2jg?dh@tC=KAxHDc%R4HkNqraWR6 z5+2qC6?+zg_B%Oce>9)>lQrs{r$XNa*8~Da0(uDc-~M5&S#ClnZoW@=!y5=DUVF-4 zHdPD%&~ZveTf|^xK3_hXolDtyaMRkmJG2|cUMjHnO*Mk&va|)(?<}SE(c*;Vm&sDM zcBumT3uaXKFO^WRH~*Xrr`uxxtjW6(812LBj`-LBMGMj7^vi&V(JmAvR7wOm{{B?zbY_wfexR zDPItR7-JX+?pw0Nwft0#s|+ZyfM(6U>_hIkbu_APJ_qXZSf%DBAxNJP+vUECsX^uU z9R=*a#XEJUPd{=mKU+Ivj(7?m-{Z@HhQgJyQk&ZkGAjOy->U7hCxK)Z??0Pg#Ya~J zZN2_alH7Q-+03>xLdjGLTxgokpe`d-3A_q^BL7apoHJ(kz5Eg!LZ=+p!RUnfVd+f# znc3fJKb_$BQzcwEJxosmQ~w$_?&ANx0zz5aGUea)eQBgaeMmNF{r{2YDTDIi^md&a z+(eW|ynfov@tBX?=VRGk9g9o)*E9(o!veQYVGYNdPbnpTB}MNRM5q-;Vo@wX=$>naI>3()|J6aW`YSBbCkX$5{id4`GQJc z%ZR{rS=>WD;Ou#J?H4`NzN%QZXJ~^CTj9!}5L!;OGU9HL*1LqSNynR#m_ZwQ(1bn6 z(T5b^=#Cl{dD(6G$@)PLgUspLx$DI?nwi&!H5XeVzpjv6L%3EfdI>2VBxy~GoQ+W2 zlQV+%l>&vr365otB8=>5r8^DZE_H+Yn0nqK-`vk*Sd)AmT!|*W9sc>STX@M5A&)H`HN9~|b@Pdj z!kyCJxODhkyhqC7`rW^S&v44FCMjFaENN_wHJkpMl`rqUq*$d!dtWyDKa=zPagzi9 z?#F}-UNz(S<6BXBvwBA0`kAiXZ7+}@iy$ptJ;a9W4opD%QIJhzE_*JVoh;%9mL zIe@^1WylIHB9DTk%8w-EQ>tX7ncubzWaE zl1xZ{p|@W_4rMjFHNV+o8D<6bWYuUTMQ49#HsK3{uHLrhe%=Bjy-BE4cA1&VWkn9u z@1M~|wCR^QZVGn~-v^@Y4MihN{PNNs*De^hAN1muaW@Z9p1#eK*P~+Db!m+DHnn6I z(Q}gw5%M>cUsV6=r(AO;*@tNN$^Y47<4ngDGLhh}&h+N#%T_nG-sU@ci~iSiLsrjW z(ChZ|E~m`bw>LvxJ*Vo)&0RN<4btrmVEE#6t|YRZ(xRsDT^sPsU198+vZT|Xe;M^i z%0xNsKI2$Aw>A@B_XxNW79XvBYAmCa`5&3fLv%e>=66-~V{Z3m1^v|(Mt98e!~mPC zw<$Q(e<=#yx`Hi`=Td_~#5#J~$wPsE$$WIvXBZhzTA;DtE$+5fl{&%k4kwYvfl_OG ziZnbda(soQ4TK^G`7a@Fj4MO0Y^7#FVL8Ln{!5P&t@gB+iAQ~x+q0;<09+{wti_CV zL?aDNyQ_aSqyuXpml$8MaUyYzW|Q5vqLc5xUwf;VxhZnVoJW8D6Q;*lc9FEfbbai> zuO0P`@+YF7VPr(I&2X_>K;7yL_Ua;2 zD7@D}oRIf`&Fu&aS@BCMH|5N@ia&ixu-D;(rU7Cx)d*&Fbx zOYkd11l1KZ`WNTCa%CnVmmr;AhJB)t^22S*Acq0zl)z>}Yvd^nFioW4b z;Z1P)Wa+G}B7GwGNFrxCjlWB@)7-U)U{5}bI`)F{RAZMC!`}*2M{a#)#AEWX2^)cc zMA|5hLVCmN6~z_S^pLc3quwF&+96o{L*u!Z@4Kw?DEQd!f|ueDBk>Mg@gvxQ(N$k> zd2bf%`R$~*8u{g!%Rts(XLV{~Kr?pi^%7#bYYM*LxTLxV99E?Y>Px8a3E`}C(wQG@ zcY0!PZ$%}%1c)6vFF<(nKCzP_D_*>tBL=BAK%Idb2#Y&_V@rO< zz~Swse!VipG~%G82YW+#Y6>kS^nkNav^?AO8=V*6=^B+AG z+M0_xyji_xNGj&)-YP7c@56SodPsZaHRBYuT^H2{Xi7r|jP|!h(^aaAI-~R_&eQ+n z?Ja;RX_|JygS*4P0E6q`4uiWhxVsJRZU-3L-Q9-4-FI#q=u z-w?pfvuNznkPEquQ_y+F{sPG&7L7S|DXl=@X?27Doi~B z33A>Q0d7BqU~t4Uz?nrC>GL7so^7Q!)kE&?OjK!=n}nYHK|GXH0z}8sFbg;)P9M^x}(O0`O@FdO@?gx~*drjItVlhi@tp5D#BYG^Otvk`J3GBMOQJniG_KMt~ zj^?~Vs-UQ68`zdnk~RD2cyLVwJse}2KMbV4#xe4Mv1MW?S%k#K^~3P8j^^~)5Bx(AtjLmk>jswUvjNw~_rN0}Y;UV0rGuW?;y zi`?c!H2I{A@qG7~!O*`LEPcE@Wm<$3w!!bOiUVjG!vuSXQ@B(gkd{On&`a{Za3&J^^z1Y`0T=F@_I{@BW~c zD$4p8L4!EXO9uzVDXtCX;?ds>_$Q9+#*s5I%i%-v>yO6jY_>7q$&Jeyd9U2M(F=R6 z+<;cRs(^{y7Qv(SOFi1+cP7R?IS_g5DQ<3Cd&$p2SOGpGg*pt>;$nzvK2SsRmc!xqdgcAoP$Q zN^ixyU2K8}Q!ghP7rSr78v~2L78T$rsO5*o3mXDB(yLI{cJ4dMUg)?=A+femw8;Z9 z&@lw!%oq>}j&KAN69`nCX3Ta0z%x^!{LwwKD!O1ialH$?u_fql0nSH1`WM3XvW7h{Rh&NKb4s-QZm7kH~`-od#>4+xR zf+{mXh`p##O|)7xBf~6yiondS?8mJ7kq*>yM$c1Q*uA4J!^vyeH?Y@0{M&$c*wz+k zRcqz+(uQ`TTEB5*TG%Nr8quyfXGxF*lZS_0;O+0Td?|07U+i$sRo^^M`HT%_a z{8#v4ep2*TNmS*bf}|f$?nmoGAE#ZF_dut9%a6yP7{RCfc8@nn_u6}6?J0`vUD|J~ ztNXRZ)RVeo*ZOFNU61;qmv77IvbRH%0L1Q~r#FnEQ{D!+ocHCtu?Bi1PTl(HhZgLp9l+P8`8i%aFKri>bShuZWz3d+B3s-*6J8q z$EYJn2768jQvLBjN;xBft%+fH2+vw;z`_Nh!o2dhci(QYQvYcdzDG)xE$ZHveWeZP zC+K#;^#*Ml{~Q5Qf4l*&SAptp*XivZckOrJV8Y~sdO6JB->GgDs%MD3zJhmh?0n>O zUtm1X&^9(srfQbmY5VxVnawpScXhr@O?EP_rF9=@E#KrV2 zzE0|zce@=bzkVr00%47w)6J&2E9otRe*WGDa$9|-Gf29Mu z!i_uuTQ&1PE+>zuyAPM2pN4*S-zT<%&ejX7B!CuVJl^+-m(!OVpcwDai(iwvPJ#gx z&yZ+W0fWbaF0eH>bOOt{8<#4ta6ime3``h9>_go>f?{ck&OrUyyDFgl9J6!KPrVne znC#p{9f5=8m3N?&H|TP!djT$rxb(XXMutmZZSbjz#VlG}tWV^hW5NhClwIdj+{sbx zZmQV#QSj2^2)(UZWrgRN@_ZN+MisWRW_Sp95&qz}OA~%$zy2rOZ)62T9@xDE{5$FI zdTL(@a@nK;5hEwRPr^VjC7{fZ%0c@QLx-3WQg3V1q8NSg<47c9R~Qz+Y;03LZ( z-S7%8L94zWr*wT!Y4bgR~bVbZ4KVS-f7i$Ja^+!p(5dVBkQBREL+6pjHp zLTBg}Z}F?o&i6?w9U!F!tBG(HvHg&ugzCM+m(n06pL4ciPyTZ;f(h>26bqA*zJ1zWS zhb!uT><`8Ra(g8k2CBkw%Rdi5IR%!zE(z)f*zqW~Nn_I5p)*hqq!+`HafV;^OkEC4 zu$@OrOpk9jx!Le@q41z%d86zxWhIf8v&3Zg5Z#wWcYOgtu0{`2`cHZ8E@KEKpf<=x zYY3R0N2tkgqdOveQ%vl8`%7G91)UE73eJhXwNY0U?F1P*;V!#GG|0|TJvYm;@M1jX znhm(3Bw;O)0D{A0zeQii+x4Yk92z1^;}xFwC{;;9?eDx4Rp%Y6W2E8`xn$II5Q}R- z2<#bv9K_|rNT9z*;&a9P6p1nJ;$1orJ@~zxJCAfXMEkUa`m_Z3wDb!H>FV<=#8hnJ z%d~laF)9QNU}Q9JlMXh6=r4uRB{Y5>F+^#0QaM}ajdMZF0mQ@+YMfF*d%{so1CE;Ha(~ws9$f8>O5_qbMJzGDw20aUgLJ|?i`0& zl>8NkV!tvBPQqF{5^IO{PS2?QY8P&fIItMvM!O=OQ~mb544RS&-QdXBvs7=8(vJdB z1ov+QF~FPwqsl<7n51lW@A+O_SuB52K6z+p<6MZFYD;}$Y&0OEF_o}0%AjUW?;$DmO~i{ZQ|Gv z^yBF2s`v?Mdn(C7@zWwmUEkt_^J$2VXMZLYINDtaP=2r<4$ZjbyA%JaF@Tj8 z#6x<-Y$ZFHpDseQQB}7_^GtPPzw+3FaB21^GKpyG3dDacGiOOIWr?YbN+uT5r83gP z69=>jEm)Tl4(p~=Q=ZKpwJ;pcFo$}?l5c*|xygT<6`VNFt>oq~H`H{SXC6FpC5QjA ze0jqmT&cojBI-mYQSb%H!@&`W#rSrKnPL&yqe=ttTo17WtH=2g@#O;1__S@2*j z4$2f>$Yt_j<*kjrx^MXD-I&j$jqd-gsR1ut_Os#HU%a#ah)F-~6C}mD3|b8TD5zC5 z1q3lsUM|=^^)h-&)b{)3*^R+ ztM&$3{8o`9uWu$R1^FknD5QWt+xmJfQLZ&uM+%A;^$OomgUz**@+8@i!D@+_LEPFcTS%<7UL(L2n*1gu0#&K)_ zYz*XXKD2WPI=YdA&X0JRS%-2Y+ha5X$^Uwa;nn3A#_uq~D)Z*Zp@qSJ8)iJ#p7(jS zJMCO;X;a6kfix|W15Zgh%H}yN~xOCGldkf4I&GEO=|QI9Q4oFy?oEx zfX9<)zk?jmh#g({JVwTdF|^z+dR^664&Rd&(d>%s@f&PJk986Gdr-->5H59h34|r-3)ye=aLRE~6P?kk5hrX$h$NqWw?|D@;SKFrJYYze#Rv z!k>hv>I|@G4XeA%`!e&G%Q0)6Npo1*k3jFg`0Y0VK9B$RIriseVK87)tLh0a zQ>2v%HR8UdsZP6U{o*+Ijn!itGN@t%RO?r3?|%guyiqE02&b93__7l_paTf0`DLZ>K6iPAib=iiXK@ zxtHk{^klo~uffnir3Oh^tA?U5K5JcpywbDk8rwMipvU7VZSdKs^=p?5AJZy)-xfmPR$_ArV-BX0@eu3&X{i<1aBROV*ONm3O*AS z*o|hmUr4;M7Qe#&S%;9XOzhSbtw=;Wm)MPyQb%`r2odklR3lyu`JvJzN92(Et;obN z%(mUB(VWQfa{+4C^LRD)hgERdZ%ui*fm1OfUW}lxCCU2?qYJgaoZ1+;rmxPi1Y-73 z7nRI$ATQMN2Dw@L`O3cc4}3%3a_GiqQZQ~*p0T4B;rg2lhj5QBD8I`PO~#lF$Q?+k zT#1$bvx$C3_%inuSlcjQRe_&x`K_AM5x>Jrf3wswAj}2dz7eP;Fdz3zipsB%&rn1` zCmnK$s!exI4DuHw#4s6aV=M_*BIeMlgmhAr|E%k*zbc31#%+X@7PjluAQZF^PF{4N z_rhg(OVQlpB^WKGhDJD7)@XZwc1g6CLKLwMNWiz$pJ^_X##l~}@pDv$$z_7}TT|-i zaPoDDwftm&GJ*N|pJ{G}`tx{0Z%TtOQ;|D}stp8@cmqlc5`te>DSHn;{1Y z9{a;*=ncQT|BWoJEIO~jZ#M|pJ39VBI0AX!wiYN_=9hQ$GNXSwC0mVG?Llo2$v0Ie zWL;@1W}v#q`bn`jS;SrEiFx4&3mYpY4`Nk#WHh}#xk);cpe5B-)-TEr!FLB%%|7U; z=IRsg?It+4wqT{Hz9;>IU#Gz z2^-lO4fRE+T@&&0A8AiRlq%U69U?k6gl{cs{!>~vfBviwhZlS;R3y1qOj5?P_0%3f ztCP{>XgGJ51a;8Mam;9db-DS3bQ*H@i5x>+h_`D}>w>h#S7C7Clxj+@#PTFUMsfk_knr1rv3(R?lWl+Z|x}O6tur-6U_H+M?5pPd(dk_m!5R2$>?F$MK2ot}T zK#48?D$nZitpW+CnZd``>62vj?a5Pw%jIV8hRPMGh@)hs>cg?M%?pie*INlO{<5cg zI~K_}qBCD_N8d0Z*~Zc>6kh0!;ysmZ*8uMq$*kf_xmvWNE=>0ZR%`fb@@ribu` z4ubXa3%N;&!Jj~yxm3E2Allw(dM%yd$TC}N%0GI4B(Q~2O}21J$gdE2yJItQ|D3s0 z6;{{NQa5p__;Uj`&hm~KM2Ts%=zzb|LIT&db~R(Aw5}lirs~S5k4`xaV+-_H+z~8z zZX0(i|AcGh=}vSDFxZA$ILRY~P!KP(R$}2tN#E!ajW}x^(G+DU2B#v6Sa4H<+^9r8 zc?L8gFgF(jVDr1u>SRblC$aavOYAeH4L`ylla@?zKUe5xchL5k@dlTG;xauP%iz?~ z|I)fJYz;3JbU!q=`gUQ~(_Av9YT&F(_^rcW3;}f3@~@l+^?72%f&Ic_1a6c9!A9Bd zc&`dydPC_4%ug32KvhIvC#WB9%= z$M+BoG8B2?t9HKbUK*s>Ggw1#yYZO#BgcG8_`_au~g-oCJN3i9HNUA zvzfj4lXF@6`B3j+|g66g_+Fb`qf zWcnR}f_AZacaPmj7iQv2Ak>mYw78&yYk8+31qtHNUL6#NsAd)A8 z`H;toD1k37WZtQ$?6Yk8&-rX6E=)cKNQ)edo!Ptc+G+|J8TBNCQQziLCpCvina38X z$0U95diI6Hp5#h$fpKS!jxqgZhs?8{G`g-a1$9;Gn;50Fs;*YKzf^3;ZqgTgQqqD2 zBB#~V*44)J0a|$gcer6!#{}hW!KIQ3;WLt%Q2L4$;})xDBhKkYY8dmng@1`B#_1cD zI2WDyqz9dhbi1qz2UNS<-}l=NZz7~GK!uD1^_Kpfl_GE z@F?@KhbkIa&UBWsdET|4LD8z5OnCSjuF>?UWAz4oQ)gX1F{GE@6`38YMPX+B_$qAb z7Bp$3QI4d5`<8*$9w!9J8%dQ)>q9f9GkUD9k`uvn$`iJ}g~`wJcrNv|)bokC@vy4CF>LTcYoxXw#0M*wzz5g1lxYth z&)yYd?+GWc&9!R&710mvi;bSHpyR_de z3bJ(*Guiol!f##|Sxbf&PwQZerVowH>X|8~?hVFeBMB3q$Q-nV+|IF;j+wbtd9hAp zr}j@<=s4her@;y<*v2EiIs3T-UDm+mnB8uY`=ubXA4uLKeO(u5Iq+30=A@W=uv=64 zK;ZALK@xvhm(&~T<*{@{!cIa7qJgd>3BKcaf897h_wi6G3{# zr={?YQ+Qb64EJyYTmkZyFml%Dvt&X0^H29hN+t#icteN_K*)26G!3`e8iWvDq^lE1 z%JNmRY6&mu-7mJa8aD(kek3iSCB*P=cdFuLL)GkMB-$X8>k4mg>~EJ9)pFCL;hAzrwxXTH7!* zDSyN_;UIqWq5ej@g6vfYOmv@FtUfkpGYD@9>Mka@{1m@c7(RED!YT2fnFv3L^_`3} z=VeB!WDw4cm7@z+?R7IOIeC<8R@;x2wCfiSY19 zt^TBt=@?E*0+Zs=%X=hg1}w)Y6XY_JP`njvJXGItFZL)f0-Qmz0+q%E07=~UtLfn+9>2F+rnJRbmklH7Wd?vjqmz0} zs)zJafaX?1exo9Q@XEuqEu|;Z@dn!F;JP6cD^N?Lp3(~4%(ki^rWy6F> z)k3GW23yEyNv?{`Y@=Y0Igg(y{XC1`4Vk?FtoXF(lN-2> z^6OX}SU&!3tLl5O0sL*fBeMEqXt6K)rn7HK>zL=2Om%P}P-kMhVG>2`GsanvX*kr32qpMRhZqTehAbd`!;W6xd2$q@L? z2!Q+E~c9)(M6*yRIvY|W8=?=$TMUtIH*NtSF z@p3+iNmA1w;GQ;gZza zjRo)D*O`IQU0`|GQz^pb-Gev8(2?`mfr(lTY9RHd{`^vWR78L5PX^<)Cw~%F`^CQK z`D2&ZQUMy79}LK=3M2yqk|7T@sxG=1L_iB9@VjR55A$mbC?nklKx!&yW28DY7Gqgj ztKF8fKparWC=c%2k&f*eW_ZTZMjwqM$)4o6X7rRs%3TmKJftZerxQt{TF+6;$dh1MKTf%9b}>_n z4=t_BlD}CCwHj^V5zCM`pBRfVcxPCp+QyaGp}mfOaRGat5_ueH#4bdQpGQapqgITE zD4YEt^NhQ#Pu@e6947lV)sdarjjW07%l<;1E)s(r#?1=fbT1dC@P|7EO4^_12WdlG7*JS0c5V}au!oLmXS$i{Oo$3PM zMtdjT^GP_ifX9_6Ty4~kE`j)?(`VvA*i_kFgkC@v@Af7&7+M)m>z3vkAF3~LUo8|n ztU=RST#_J-pxSy6eSVt@+gOUVW0!mILb11f?7~}m_WfZCYW_27Py4P2oojwFzEnB3 zl0sI86c5W?5PtGz=AX`!;;fdW4(&b$+uCYcQNh%+O7kziEFM(EUj;|&&3u@qKD{$= z+%frn4jYl%HWVtt9ox?*BRA8Q&W8UBnXK2!tsg}v{Sp3ml2 z_26EbZ8=`_)M12cbL4u9RIP%|qZh>n*~5~w)KX`MYOHI#J8KW*!u=fr=_Krqg3Q^8hWb`t)}Q8Y+z)N#5p%Xd1mmtT*ziQZaEKQ_^50$pU=!iK{; zJP{0Cq?CG9l|>F%Yaotd6|V?BY_Fis0ClJSSnS-3*MFFG_F*`Nm!*I5EPKo4`L3VX zg>FepQ8d1HUUL7t4~g(6CHxBCaxm?kWUS=lfC=_?XAx=yptM7KI%=8x5A*Kqz~;R2 zcYVM`a?2RsU-?>Be5P3L;z4@bQ6{=JBd;N>dNM&0fCe`UU7TIBARzHWhVU^VHH2X{ zWSCkW`AGxvK7Ir*VHxu3mg{LH#13V$mQFh5P7=!IH7_hlf$YCNGJmJpJv(k}@&J_aD>%W&O( z|Eaj)62aqHR+88sEIRPv@CtE-HWS!$)lB5Wl>>3AyRQecQVFc6+nul&A0;;7(hISZ z%7PgKDJ5(`PPe#kf`hPDp%5pp{_>}x`={ePj@V@G=^q|pfC|h(WEJ97WF4no2EP*m ziwOhS1W902i^mAc1K3tkmb-sI;U{@<2*V^M8Y?~{iP=rH>sF*}93Qh5uR1Ex)E7EE zwEiQk0xBd-YW4L*(9jR8zpV_{JTewlWFlUBL6_#~Xwf=U}o; z<0g;c2dU`W!en!X_d2lNvmI4#`^FQCQ@MUOWQ8l*qk8c9#Wx+bh7m=H0)v545>H!` zBoSl<+qz(cubQVMXHf<#JXjIvO^k6~Ch_uIJMT982FOjZJhW*Q|HPrEYarh>SxfJo z7?erSrjUO`_F^1Z&I=Hbl|mfaQkK0!C2$j+t`ETF^%JC-Qw$6=3Ioksu_)4#brbsu3_jWgsz+9F3Yk_~4uD(ZQwx-gYl6f$ z#}G3ds#E!9zhrL=^IavkCF%tNIu8y@F_iObpc}cL(np4?=o=ElTRuc$o@phCmiV+C z1;11cp&!cSD8@^lD2vflrBA76f$afreBJcrQ-Hg`?4kKKavIG!%TPoE-rO;8oHV}R zs+v#n`0f)d%l(`MyJVMdfQ379QC(=lMZ))cgGNN^(1j5Jctk;2oE|br=7EJTVY1JV z4f=rGohU8DRimstTwj*J7Ix(e6$d84Zx3H+R&-Q1a2AN1bvGU&nv#iG+L*j7qqYr5 zv7Nvw)1aa@kvth^2Qt~47p!noyp-*qRrVV4QtVtQM40hzMsAzOzmnFq8X$Mjyk$2?Q3|;i*7va z=bt_kSN_U3ew^&@2aI0?n)|vdlCm>Z#I&Pe3X)yL$rv)oiYRdxau>gg@;!MTXK~xZ zqD`*x1^2%f{BhQ~rrX$GD6#A&DntXORnxuf;m^AB$VL%wNa#Mq&$y2I4r2Hp+CGz_ zF8E#17$B)So_*$iMrOABt5KSsE6%Yh__gjMwH^DT7)kXhwL>uaOV^>8s;CI#d+dUf zl3{2E1G$)hHf~9`I11G^%@0C!E!L~G`S5rvQ7HCZsC~3}jm%_f1Z`MT9oWYVF+dyD z!HP_igRI?wbv~Na+b^(cZ>Cr$Jo~lr`>rximkDwo7v|vc7WwQeG=Cv334qDn@;ThR zAX$ilj3(fTLnW!cHVstXx2f(d6^ReQOsX9IAQNP{7EtCWKUpGyqKqJQLRvkD2TqV_ znXL5T!K9TDVdO7s!Br63{}tvuzAN_^w^X#Rt-5EU^$X#pKfhhe3pB(PAkj^5xchG-ux zJ21=lJ&a4wW1ny@TSicAYYTA;vcGnNvXHjLnb_rUU(P1}YP=ku( zp%^9x&=5_;Z8O{iu0p-ypL8b_25M00Ky_cvAy-Lp7E-C@Rp*0SL!^ z(5lSx%;NG`9sZKS3yIbKzwf_twrSLazf0+#)5WunQL?s*HV!R^`&hio+=(xK&x%a# zWG_XLXBNQ>x5hx>kTpepGdS2bn9$60yQ-F`kcV;ILygt_;`{Z5{1~$S)>4a>dLCul zz~!fpMq=<-Mmz&TsNG_lyt!|<_ru;BXN97;%j9wrf#>`*8{s(lU2s9>d3RE^S|={8 zELpYrM~KH6YPv2Z!EIgY*L~)E^6}a_+7eZ;LUoOC!_C|(MuGYyiSUZsO9@ydFKv_@9w z_-op0V+Pwj22f$Vr;AKL|MJN#*Px#P;Z@zvxTC*YvxLFz%C=|B01?Ex7p6^mQ>*A^ zHyjU|ONqCo9f;e{pI2$OaL7qWC2T{c91T2nn&5*s$5~(<5uNvr4x`8jjq6u}&Xe`E zO|Z$%BqGTq67u5eQ!6Z4=z?W@B~dnSPh^&84yB-5jb40gsgHF67zsjeScJSB7F-F4ti=;_8Jy$Syvm-=NtsAi1PyU5W<>RYK_X+|)@Q{2m~I~2SI zZeQ_frxOjef~MhUV5nC$<=d>0csqogb`70!ii^Ddd6r)z!`%QTgr#8k!i#$W#215j zjly@KTYrF!@CB<6sbI(cjJqc8c+rN9lo$ynMjGwVkTP_uzGuo!4+f)i0mNuY>Do&Ew|&JJr|FR40=v&zgj9VN1JKwx zWAetA&{s=>S3OI3Q3GGVAzwTBbRL+T5{H42Nm@B#qYa}Bp4YN)8HLdR!O&sJL=ke4 zuXxR0#K=qJt57egFnB3&Enlt?+OH7^Qua^R=N#nO8aWQ&g;4#h`U=kE@$TYFq#bS` z6z|<0N^COA>c|7kY@(<=#BF;oiV(o zFM39fpK-3jxGaZGhCGksc*I$eC03Cc4g?-mlx2uLH`Z!&7~D;5wHWQ^2USlJmwE>K zgLtHoa!Oz7u2}iv%P9n}6bD)TC*`NqcnK;|dNBdZy2cDS4)_Ey8~j`M-EXw>pD_+> zv#^DyV**fJlvcFv!&!fYI8ap+cQ{8m?NSaGrhwSZf4jzc1Rb`vI1iHOjwx|oM&gz$ z(GUAhPjGhNAWXeQ&>qKR%Ch^UED|}1<@ckLUZTe9r<)ew2pa1w6k{p+b5(~%D0%ihD4I9A zTQh zZpp|JT+pwMX)!Y6aM*hbDC8Qj&Xj~O@AFCjI3>BVJ>in$MR78RDECvE#j?bVuhgB* z*0fZVG{n)+wx^(Ze%~&>6dR>aJ#PO}#!nS}hENhKJ zIwLVH_(f7OGdo6;H|hTr?ga@N}!(=O?{3bYlKY z2eFwIg9^=iJMPQ^XGTXKU<8(cEbw)4Vm7~n81TUsa3!&L$w7WsObhSNAhJVp!iv3V~L zyn83SSNIx0kRtHCUp)_kwe}Q2g)B86X+BheoY8Ke5Fn!taKnV!s5lSlKSj_#BlB#u zyA!|WN=p79F^GJU$eDM^zqy)EMC*)4YZTm_^h?qldD$mF2%sXI5h9#XRJJy9d+MHl zi?VuxA_(BepC&%QOE^=S5kpY?6?DEg`{6fcH2W1wN{Khkl&68F=V#l%mvgn~56U#_A^oHp^8JCQ}D1 zqr{&jKImK+1j7xi6b}TLJbgoeJ7FP8=UCz7_yJb%45^Wje}5C(QrTE4A>WsoI3j8| z{v?s~0c-$(wV%@(uy1#-;u_WN^UJ4~%4)00bvKTCC(j}!B8yjgJ;E(=$N-VpaE-b< zDQ{9bXF!Atvsdk1%?%87%TJs&DfUL9pkS+1+z$3_gKvo)rh3el%@(RMSytXEi?HGF zeIRD_NVmns-J&EFN;Usx{Ht!y7fdolGdojf7bi0#+kdX?jja$_m`RvP{<+}eW0J76 zaWQiuVUn;haxoJ#GqE={Lu8UOv-{y)bQ&>qEZ_vUHb?`S(W>N`6cr5;~l#|y6RIMzeac52Tf%phH5(#W~a<_Ml@ z6#{mVOS8xf3liwo>N}UhL8&jr7ZnLVngrBduKqAW&i)5jF4vkgjq=DOBPJj)IXIsj{hJtPHJ3n z3n#BBkm;^tIz4MRKFj=+5#JxgKaph(IMEitZJ^J#L;tsut#9Nq_k~kGioT zVldw7^32maF~t&fb zxryNKEZux*sR;kC`>aOJ$vK6a)2WQfGFzSYo`X9v9v&sv^j0^uP^#Df_T3lV2vcafJNt5%3`Zx^zQ4 z7ba%^PpHiLKd5YCM8e3y&ccewBqC43q+su4Yh)uJ@ZU+#{=YBD&Be_5e^Qe3f0X=R zi3ck;*MAm|;J6JLC>HeK%Uf(`2A6N$&k)xlmEIe5+fb@HG!@e?A0#8I8w{Fqc2u_q z`}@cdDNX+VhQX00{~;P^JA~L;9UB?t@921^o36~CQcX175r-}nJ^v95hiBx_8kD0& zoH6LrBxXswvv-KDj|R=(D#G&mm8JQ5a3(Vqnq^DQ#EbS7BnZJ_Vflj4MC2@Kh1$M9 zTk-BhJt$V6u(O;=j5*~7l2rrpK>jkLQrIfWhy7UBN{KAgw^_dg zwEjw}G874H9WCMx&>J_@c-Z!^AknQr7LDkrAr7T?=>DnVZSpikt-!OksN==LO5K{y zu%~v@IE(mnTd7%f!XQJ+G`D2xXOyF3g{`1iki{Rr z1uq73Cs1l}1~F>SYEk2P`8Oaym&DzDD4wO8Ytt0nNG#qSjgZQm1P29`U+rZii|#11 z5=pf9L&q!{Fl-n>54t@-DNNi${}sNvLx}cPGK~pba_80_u&1$J%f_r;X zsdd^VT+ayqwt~jZvC+S(`W)aJPKcB&91&S9b@zn)k!Qq67H-}Y+w@tMiMIcQP=tgmQVlnh zbu8Z&Kpqt#f!<0B)6pp@4$(~ZpiA`jv5i*R@#9f_4Uu=b7gvqOEC0V@`JaS9)ziU@ zgh|op2Y47)HgmRjbuuw?CIJuhica<>DrPPuI!uaU5+qEjW*#miOwzXCf+GJui~jp8 zt%t}Y?%^V-;sTx${;4X-M#2W}EM-I{Np_Nd#7G$|R!o}TjjhZ~T>dGb$wk8T-)>9T z+x_dF1P2Mne^ip-B>6|8z?J@~CU0hHX(VFrL89}|EX2XX&d9^T!^26!&CbHe!@|SE z4Q^c&{0uWY7iW@x%~araRa~50Ooc?u}8IeiV$k>^LNd*!7rvKa{Vd43A`~Pi< zV*&sE_Z0X4F(fRkB;eye;9+4W0U!Sc=)WVu!bSo<{#8PPg@Xiq{69qFUoie3(O~(% zfyO_*^ZyeX|8oTX-@Nrd1I2&g0C<%DzvRF_ocJ$q?fehDT)~uKLu8V*G<7D?`B&$W zu>8XqWfGQu5n1nl%p0u#Nm+6=HgjUIwKTCH(fN0ACQU7E5;itQE)EiIW^P6nPB4K< znE!M2|3XAjBNrnZ`yc;M_Xk)s|AV=ROk!rvV8Z{aHSo)-Tbj9>IVn1snVW(6{cjQe z4%t*k}V)id-`?oZ({-*)rKXf}55>7S_FoyrD`HhX0 zi|0QNz2}-}E~*RZpp8d+bJoQD&JhZzTN2O20MfXiRMP|!7Q<2m;3!K!v?~>k6h%M} z6-AuCW5B0!A$;LQJ!ovu{OO9C)peJ~S25dQ@)PYQAUd?9`9we<}cUe+o zcR(=!Mocc-IUC)4ttX0!A^N5Ob<6s@OON1dI?4wD# zaw;Erq5(}0X-E$Atwn=fXEgX)d)nSx_&bmn#rKcvHD5b#w$2mJ7bEA0Y3sE>pMH0H zNJn=a(A2p@IrtN#^B~0M4@112Uk}6wFSA1R{mP7Lxb3%h|fEW%$Ccan)_CqYOs@Av;5YHiGinJmgwmk%8%&~)X zaf53ir$K=Kc{C8JM`m51535CytIt{LPpX86fTga~t~fM{Sx_o7j1d1fN4Re@KNYYG zh$=NBCoCk{ICs<=jIr8kQL~o;D3oc@#zD+*OFGIJ5iCFYvi9%o#HiaGa5;^>EEb^f zo76|-8)1B#32(HJq+_S=g{>I0vC#B)YY-KEU#_r|wGwYGp8C{K08{^)E|-j$D!$dn z_-oJ@^-yv|!ATjiw?Itdz|z!%x8aoFWH7El>JLYs_vqredOYfij^C_6*1i6l!1a-n zs6@^xP0a$<$%mfoW({b(AE49KwpM{bo|L5|xJotUCUypf+)?f$eul>IOI`cS_j0<= zsi*OJsNs&5$&_p*G*PnEU$c1@GU%2Vq%2_O&KnL?EI8Jd%DH0W z##&&lA$TzlPbY>ABm29M(FWZKxDOqES@fvDLHJgd9Grx0p*_)NC6j?jt06Q(4G{DC=_ZEJU+gBdWqUs@uF@)QkXXvNnrOXaahy{_0SkKJQb=cC7Pn2 z*91ac;iOkR`L@Q2P!I8yq$;qeE$$m)3TKdYnOe7?vXly!;~-j^KGU!*LQ{ zZJ?+}9wMZAZcU-Rrw73E4Neau85X}!^)D}}iA|JNy0%dHi-Ls(G69=XC8{A6NZ7Rq zUFg=}*z@6*h&5b}EE>4aGZfsivHtqT`qwi~Fw-Ll(dbu=N(+fD`fWd-<6m5ln73RX z1*o^2>qj)FXW+&5GnqVJ$d9h$=DxAg`a^7^soeU|=`d6y-UoQ`7Cmq@f*?;#mWL`7 z@8O~4%(u?yA>Y22ej*#9zpaofM`!Ot_{0)_fkWRwTOW^Hbo$~csXjSUmF<;K zj727eCkZ$M{HblG5&v6tUmX`!yR{9{2#A!@gLDlrFhxmscQ*(~cS$2kNJ>hlh%_oK z-O@;-w9?)14W9EnM<1Va-t+$ReZOz`hrQ;GJ@;Pso_$^GT5D(|=)-y0Qg~6rQaG1g z#=canO0pr>T7MLHXo5{abgZW;=kiYM(R*IncGn>ndI^=cFPti3R%*4>_~V#-4IJ@9 zc6?PNE_@8CV)^u`&P6xS7QCVsO}Sdca~?Dt#9M~jt!~v9J2VWvoaqs?qsQ!38v?4p z${|@Pxo@8G6zPPOkTDY;R-p=O;x-eoO;gmKW(5_)j%pVZ@$7PH281CgwL!(4)b7#p z=#rK)z7yBnhbFm&6VyrKW#}waT?yxAmaiR(4m3{hFV<}dd}!dVaP1#2;EjA=Yj`=;aL4xi z+sYgFeSux$ug|2ucJQnA?LX-KB=9`;Ch5ggeSBsSoi(K2Fr7ucY7 zpous;G@91Ej|KJ@*!ySM!|ep``|iHhnhG-Zv|n5>yjZk# zFUttRahEq~+F~?~{C4zOPT;-VDUDK{9qH<@dMnr(Qu+q{q4hgrmp+@JPu!KNdOi=D zaouBG>uo$bYr0y|oE}YRWhOqhGe_qh%;z-3n(}5eTz8@%U3+l3jd!sLeerqL$!678 z;gsiS1!bCE%&>;zXhcix;%bt%JdpO0u!FZx5;ci67qP57obM5vwV6J6N%`ewt@VU< zCP12*k2|IZbjZnTApF#xDf0G`2s47DjVn?7Mk~Q6qh8xp~>O88^{YA<2r6MB=N4hanY1o~8YUzz8dg}3{xKU=D zd}*wB`b)C192VW^I>t5ou=-w+$?x}jNEemU<88zwUh}CfsEf$>w-actm``#_8aG#2 zpDa_m;88fbT2g7ePq<;i`L+Ck+{XM*662+mLXBA9 z4uWBqF)7o807A(Z$?=Yk`c%W9cz=_Sut;Jjl}gv>nT|Wru4$1^ngfupPMRl4qA;CJKl5ehE9<@BFs@SUYNfIn zmlqy~+-{NF=2iaMBDE!C-x7}MU4`~4zEZ3jZi`{Wt>@X6GQhP8*SzT_n?=yxl$A5k z=oVHxHTCvME%`o`)2F?n)HHZYX!pu39V_HBkv^gIW=7Gi=Q_P6G01|A6BgHJqhC4# z9#N3{9rW0vQ+@OH@@#$YF4)7I(Ka_hbt&dk;I6olHbMXOqy{4=@wf>d$l;V{c}*34t7JX82PtpK5du66v33(6~eZ)&CjJfFYv3o)u?K9thJs{NsoNXk$e0=vwKL4!#B@i zuD+wE=R$0uWAQm(tV{B36QGcdR#bQ{g+WAJG+A6oI1i_qn$IEV%JANcjMBd$QEnjm zFL3b&z$0Lpsgsq1i@g&9EFq2+jBOG8itvvYtBSpey^B4&iuof~8{?Y>HpY*f0X*0o z!p^2QtOOhc1wy%bxM4rw-47Exh=&Kr#ls0fz)w{db6X7nm>UQJfgoT68!2k+AZ2d# z$kGJ><>CawxuIZe4rv5hv@#X8dxXGs2;$@B97KN5C+tve2oS~v;o$*ZXN`qa?=fg^~^zlA6W2)!1)6k{=|#^17O~?{YQ^~eRu%q zp9F@8v9tM2gMYgQs;(w3KR75+X|bDzH)A4zCgMoVUQ$|2-q-;_GnpY)$I8X?hgsFr z8Ltq>6hPXLoJB35C}jLo6wWM=MUW%mfc^hY;@QPtJK!N%P7W|28> zSS8IHI!Tv@ha1QZhI8LA1~-2o9w-nDhJoSw03IHIE|d!dguxL@uMYr&0lJ8WKoEor z3epEa;D|#+XE+a-n+pJjZ~-~F!CVjkV)g#9m|zIvO$ZN+2VsH(p|G1bfACjePQ(!x z2#lBu1cX4r&_CveK_Nh%fAj!zA@~7AD@2cf4b6$54PZcSC=7mM=LSK55C|t1L?3a1 z5GRA^_+w&y#I+OC{P7w8xL!Bx(LdevKcROJ9QHGK*N+*n3*yA-*!IMx{w(@ZC~K20 zm?wnBae_MX5ZTg1EB9`8G?m9WR;cSRp7epN;IyF)FtwwOJ|>bWVV^NtZEK6_lw!gSa5d4WOgK&EtFo|;0*9zURxsjRO8zFVSC}@(nemz@5R9)&(z{s^J1C!2q_iBP6L>tdQ{a`I;E^~opU4B z;EY9d@Cj>5U)K3Z3*`iXVMjS8$TWr8E{Lo<&XO)NaV!C9q4Tf?Z*fl8b)U*M^SScp zabME#>im9R_-Va=-XDMZ`Hc~=G5^PnA#R5VuHE?YpYG2t^~Zg| z%owpf5u4?PjrzeKA}+g{y}F&%O*{^O@U9<(;h$Uf#`pf|0)NmsUVZBkU@Uizie_JSAyllGUhR@81pl!tix+0El{jf9cHWvGkX z(K#?Vzlm>`UQ|5K|j&eQJalcy6#P>KiZmE17*p{Eoa0CF~>jDT6;fZo~mH z3mrKinV2@DJC@E5TJeqe)O@G;xkNi~!=^GTER6-7Z^+MN5Ktw`#C;C9<<^CnmWIoM zN$`rP(`Pgj?@ktS;q~uXWv9%Y z*DDz5dp*K`Wc)05biGPOhdvF>=wtEV>mCUt{SSW8j~q-c0MtcSLqYscM1g)mtIvd6 z0HuJh)Z6-0J>^LBNdfdsVpv7Wq0`Di)}uz~J>~aZz53N!u{effo|kut<64*P=sr&S ztjSkenh`-ZYQjunD!7tGaOhwHlW`2%VnreC3MOcu7jmr)AgfpHO! zF^TiO>S}(#7D(uBc&uJ9(4$-+d5Yho{M03>kx-qP=J`lN92 zq$m}b@>4RkEV0kYOLl4oZ`^CnGv))Xx8=7aTHROpnmR2qW+KN72PSXTkPFNYCO#QR zS^V6Igts<;_l^o#4GGieWfjh_E4C3ep3v~-tqmmIeuHLY8*yqpBeX^{2CwkQc5D}9 zrdU-6B;TrUtd|E^34>G=E!&PbvTKA1@}*yp_=1VtZXp+6dENWoV!e?A4rvbjxnrBCTXc9`7)UdhAfm zwGJ5H_7|hioWKRTNp;$?PPa-(yMMvw&O$yOygUF~Ssww`E z*MZ<>4*ie9qe@gA*|(lwuxV82hf#9!WWP8L7IcqRV%AxfX+%Rsi9HrV`~nJgrF$7? zqev{5)AiRcOogFAp+TfEI$l8!*S7Nwb$`JZ)T9Vv%l_%v-CrFLft1J?e}fR`77WI9cxN= zGAU%})k!}>9v=)E8>HsTl&DFo+NzlE*Shwzua8&1I{n^K@Cc}vNhmqL4Rs6t^vmCzTf#rtvMmXHArRH!wrQL5dD!Ln*-*xYB+`Z$`k=6!{tZP^D)Hnll%zuQ^=m zFPzREv+hxmiOP=H^Y48c6Ls1x4^7O&!!n*5@srV5LdR(($l!ROSCNzx7uOOI+f0-e z|0+H;iO3YhNZ*UcQ{GU~&|MDA*N#h_)t}1$`kcYpsUF$AgEiqbdV6}xL%q#e>W$m! zc*LvKdur{cmETV*->up7C!{GWX_+apXFML7L~qDQ?x8>tp3V_Lf^USex~`QK)8#Mn ztH?ak&gnGs%31r8Hb4S_%rtpVeNXt}9YT3~WwT~AG%Ed0uiwh5L#<>?z06pYEDBUD#r4t?>agyW5qNw(0`1&4IE*atm1jbZFS& z=<#~bcX%~n(hf%TJtZK5SEYeeJ0?++a2zlTs~Pm_O2BD@Dz!<{_a_z zSM^kOrRcpDusOQ>2bE9-qnyweM%u}9T!a&ATu|;%R&{AJxAy2Zf@A@fIIky(?>KDI zVddt{N3xB~{l}k5N|Igeoj=#&b~a6DZ5z&bZJjJ$osS#%c-h)qOuY-gBAxFs3$VAT z;1gt-AtSMOYtu2`qHA+&%V|BdxX>NP+oX3Fv3b?nV;0;F*MpEccE7-4>8nT&e{X+r z)y&ffCD(@~DN7s}VVjOj9=^&JVfINI!F1yCSJS1;|H6nA!_9mOIK85o$2EYfgP4L)0Z@VL##CX{U z;kNOlX&%mn^#d%1PM@V^%(ghsu-%FTkl;a|C4WWZirX3})D3CAWrCij=|WzzUjby) zfAEc9C6!qUvvx}ANniq0Ql&`>UC8+}hJb=O9?%`ZkYcvU5? zY1ZPJI`$P&FTv?o57rJuc0OK`gHqd3Iq4+a+oY1AXp~+9ZFjJ|2E=9qub9?m!DN2WfGdG8JZ!Im zmv}rir^v#7_y^|_Ub=(2fpbI$9V?iPhJ%8_rMJ)0G8@<}8b2$PhNymilU6S~_{Mu> zN0aZ{*z#Vw0(71`^yp+s0ow3jZCL~R#QDTdnDUBZ&N10wilW&a>+C&fN?YREI?Ijx zQe!Z@#r>r(?HZc!z_ev(=H@h;PhH|W?X}Ok;H&koRq8p0w!1rq;9-(Gm*JVKsFx~( zl>=>ik9yaV4GS-lwa!9h6jKZ32USyPPgDaTl7sn-Bc}|)iuofFet7c}GH(@K_B4bQ zZIW6u)^ZsWddbIYPM^Z7ni(Gg*H#0^OP%)*)2cqnUok+BR|ls^xD6i{kZ^;cHJ;9- z;I~5_ajD~$RXT&Fff`s|E_of)#8oOe8CW_rYXv&MYb%;dvB5n_%gHG6Q;_gOyW9@C zvzScu+m}j%t$|boRk?z%ILe1(k%G1h^{5pNy_b2($4-~p1F4AASPS!Oqd!-vxQ;m( z=u4@$TE%3B80Y{j8xvVLM(P!c@YR5Ya!TK3=nPmafog)#=Q60ox6cAHF)Wf#QAko$ zC61fqD<37F+VJ&*M&yLW-D(vFafFXMI`_OAT%s~Xgxzn~zKO}dT|1)Sj#-=Ld9oR3 zx1JmLmB-c^Cj*j@ukdd7HJ8g{Uz{fOLH0P?iv&c^76Gn?5s^pL+y!yVV`Y_!#(GrI@?Zk|c`>i3WPq7;?1_w6 zGDPwC)V+kL?V`)Ods$wN(DrE zen^l-jHMnqio8*r;9yrB>x#rD8~j|ir5oh0FZLluGKuNIN1wVS2ilNO>&L}5BxWE9 z$2fo~QOIjE{9MjEny8L^F+49u%wv;6Wfz|bFZYQmJx9};>>+_HTr0F*yC7ZnCp>FH zNs*>M_#H)qev_cw;N5=_O#dL9{=u$^{DWN+Gq*O@a8)(7bC$Qavqv=e!LA`Fu|L^0 z*bn9mL7d%;bHfF(gSf#!7&jb-;NboPyT%PhFfWKkh*tleUPBN^Kmo2s_Phy+@#6o~z+`rON{dU0sqL5?$cKuIm44H4=#odo1 z>1-4CQ{lUl=}=8ajJeSA-X4`tzSe&!$oo?R1(SV|1nZrHS<<2GP+_ZY4v=s{Oo10N zadc>}gXftyOun;a)xVx{J%WL~ICGhh)-YaJAK8Vp#__Kio94wNP;L$XeOBz)SQ3RKU zi1KGweS*=w`6pEBmw-mzdqvwaO!sBAYlbdOGx@{YXwy*4SB36)=E~--3c|zLYw_)^{5rXH;zYI_6S0l$v?Qxa=R1@%vFtc`yGN$u6Y|w>sm1MH z1pdB*ejA%oSU4#`_*7o6J>@0Nk5Gbo%m3) zOWHHmX(4?sSYtz$}B*#rv?gI>wIGYOm9CC}ae8|gYFm~qGZo9j+dFOW^ zji3toj?Hrse7$`lkHm$d^v?YtbVKos3c~|Cx+ccKg>xthp+zzqphd~*>bKsyhy0aD z=mPM?2t82>a1ST+y#qcPrU>H3gz@Dgt`I^>q!m5Uv2YnFfuw3UgRPZdptc~Nu%H%^ ze3W4PmH#L$eeX2YInmFovBicz>ExqE_X+9n*?G9kMnv8O1)33Z;+|dvm5msmU7IqG zDIeaKdzKP>8pgN$Y3J}T-0wSOQ%&xQmhA)k?p`=xx(kyqQ>fhC%X93SNi>3D;pfc@ zffn{el00Z`Ed-gc3$4(@uOGat$g1hvIF&O$taW`egoO5pzAfNwJ_ei#aHsrHpkc03 z=6x!?o)P4^qz05*I!Im7xOIUF!GqzxIA3fY7;C))1gBfcF3iYT3_mdNaXDpLVQ}C;&YdSpgDFR0WICA2 zwC^b~vu?i})e%-kPSdKv&VEE#68Ng?NRyqVx>YZLF!$kvn(8g*cC4+0t%Lzmf~K4& z@@X_!?_I&?xYBx?inXtzw@Bxfjyb#IkHGT|hp}iOauuU*_QTB?%=6|`<6bFu*YoeGq?7&6bmY(vT_b`?;ay#E z5p?&HHD4XvH=z>kGnE=(r&kux>rrE980e~30TtR?ECFaaIAe{>=)D!ylQ3vm@5M3+ zebpCbXGe~Vt_w1ybL6vS8)Cayfl$*Mh+BQP&CQ*agmch`>kIaHzf_MmEGq(k!D7kj zS*zC1>0!w$$O*^3jWb8K6D$!_BvLLo_(sVF^Mj@6U^0nlbLPAx8i@pFO9c8$^`3WX z{eCLmGTyVM2>Q@2H6(y4zuj*&u^2GksstgLr&jEnlTI~>M9UF}uvRG~5SVvKtgfh_DnpXB54L^NiiVZ=p!sg*s%np1wfB&G|{;;Xx;lVL4@}v+X z`jOTu%uc)LVa(ROtMX5Y7m7#XNPb2~_BeZ;*E1NahGU4F>y3=VyDc!bKG9T~x^gbt z?UuWH{96M)pVgjW01sDrC{7PZ4d+f$%dRUUj<1jArz5P{HvZ%^|SV%`r1~;UYc+i*%c)=wu;)6<=yx^r`%rM31yzk-J`r%)*6vti;Gk%NeVg=)Cw4ubBPRGt@%ae zt7LEz*n*Vb6fgIiNqB14nP_C=eOd%UJ#DJr)lQMsz4eh!?qpB4L8}J4-nw3?Y$7M3 zZAGzv(ZscvCOVW84oR=uzWa$P{Q7L@oUX0$b-Q7dUrW>8C;7|WY}M_+Om@eBhx9x- zsGrxJzSZ;iR(u~_`c~Cnq{_|R#TobfQ>uAFwJ4;r*j$^nPtI9bes)*~o!OmOyCQIO zoQTMa<#{LjOMFS>)!D-&W)?jDY4??Zn0t5D>{D}AB;BaJzrQBm3Ui^F7b7uv<#({i zXW(mc9OG`dSMQLn9|U0l?mP;%ATps6sTFrD7iI^s%Z%lex3wpZFY1LWTRE$<^P#A8 zr3jclIPFektI&vtqYUXwtJF-(K4YD4#y8Mmy8GVDNncy~!^<3dAM@2W@A;39Mn`2O zr?>SRE$lBYOVeB&&f6s^&jtC_9G4cFPeQl#RAEO$MeFN+EsB>LF&nfSDFdHuuHsRb zzVgm~?}Bo^e}f2-3gE_lAC(&!GhxF_CG;SaO-ux@7uQM!+U!r@B*{af-X<)uldoT2 zxp#9;dU~Jiinq32*iue2Fqrsmtsc)jS$&bD3MxrDuDr%;!`dk`$pf0NmYu}PNv{|* z5$V2rvMM(WFJgF3YW0EtosO@xzI=eFQ{vs@t}gw#YQcG((l3mMcIvjp#b%iNNK)P* z7EJet#1r}ST?4<51~2sK^F5xhYM)RY`MC5(f!$AsSv^gMS@gM9aWOA_P^YinsFck1( zX;gj&Vt=~;{|{l<->4k85s3!~Nr^rHiV#77!3co~;wc;i0CRzXT!^sm%_m0)7JvwS z0r;P?1%$i+27)27Qa~U?YY-PgIdbzb&k2CRAV3f|Cl6E~0D}N@xe*!@9uPvj@P{q| z3`JmWgjnTwVFLG0`kDWT0DlcbBZLXo!JPOAVL}*uiz-2EXqH5bsXQ?BD$9);z>tGG zdf$Zq7H>$d+T_WQ9{ ze#L%2uI|s<=_lFHpV$w|d81JJ4;jS>mqW;P{*_YPp!qNCS3!4d2hr{eae&^I21JF} z5TFL4%6W9%Hz9CLyerj3m{NwNjlZm{)^^`>)C!I0E_DRTSaN#Za4ZvX;g_JHzyanL zW7cWRIz-dM$juE_1GDlINMqmR3Re3rN-I~J=KZd&A07iS{mpEUqF#7{=USAGp5!1o z-4)Uo^?rh3*pq?sK@ntgIu77Vm9fPd_2|lVaKZeYzg5-1O zDyK{z~CsJ7m(t7fE$I;lQwsLl)RgA%jDYbbfHt%C9|0-lAD_h$lMGxr1{4Wy~Pvm=JkXbz+cPk$I+ zpnles8_zAe(6{czmft<{Plr?eEz!Ct@Eytm*S94>6L8crT&uzmOKTy5j{)SkSg7?@ z!q=dcZQdZH1V}61#EPCuq^`}PsbEQjztva%7jQ-2tLgUcyz8ntBk;W!Pu>u5ULn60 z^plSCF(S9$yk&%PZyJtQSB@;86?r`LOor`aP+_YNkz*b#nDgDjeWU_q4954j$+ji3 zIY||aZ=1!mFyl(Hc;bb*ph^#0N#!dVOo;iS-^HiC_XLTQc=>|Q(jscPBy6)M32Z;d z7B4I+6^P8EOSPIAuwneT#Vkf7$ReF&+O9X4Zq$!~Xd7*)9zP7!WzTc8dF)Ro_o9SYP4Mt7I@f2xi7;2B9(78cox5u8j333p`Z zDa5jnYG%ybT7C_*TP#9IrYy8sLsWxFnA}Tm9O6*3lnL^@xUc>cd=I00gBi_^vA6~U ze!W5NEcd*$vBpx4EG}65eZtDzN4j!4j{T=*4AN=0ACVNvRq#7~PKy(et0=L5of7|v zPS;jkI^i3=vHI*xY>b>teN#E;jPLxLgQ6&N+*7!DoxF*Pik0yZW{7mRxwxrhiuZES zH)S9mn-={xz+m_qX%?pPemDHyvTAIB6|rnD^XuLMJu3RenbY`z5epUHzCP_)Y0cSGrs$`wVPiTodlIo|nt-fPP2h!I7LJk6S@!F7NS-xkI5%csp$QH;#6o^1f3+p_f-dsY?KX|~>K5+qr+rta8#)Pr)0ukE)3e}Hxe z3o;QC@u^H-gQ%0vI+0m{izRu~V%WGqNcn5QE6uSQME#ijTct&^^IdK(nu)O_a{l-g& zASITYcode<#k*C~i~XLr;+gJfKl`l#UWqjl=Gf?`$~%%@@0J$DJ^oT7G~ujoAdoy5 ztk-mY=liM9M9PMVMpvy*yUg?AsM_oo8DCUqLabgZbjJ#-q{W6ZZMDRjObR?L&t{AA zet3Ga?wr-3jwlEm@wt0czAj=Ql9tZ-@)=6o_LGFZ}*9rGw-y?Br6RYPBV(N>4xB%&$ zBCi&3S<(X!b$w3aN(Gy_9XPqR$CunqRr1fIa~8B|#-)*LINRkh#Ju;SrZ$yl!X$T@ z?b;c2q9j036ki45Jpz>4Y{Oj|c4(sNV}2T1G*qG_WUXDFlqup$P=K>U(1;O)h|Cy%J~o3!(3T3&lIu;pXHcRW}e z$7guLb}&9m?p}NweVnIsl6>^xn%80hIkoQjR~dXa_uG78*thFHV|8tmSqkwk2;DB| zPy}rB&9vJYhsL;1blpo4@659o>x|prt7^DryMC$k9B0YMb^`47N_!79W|FqPS5(V- znbOvNjI~OjmCBG3!Qk~;mTH*mg;=F&Fb%s1q4_K~UA6XPEF<@u50(c+Dii`zibL{k znn^1vuS!O_Lg)#@1$2tIBL`v#x1Q|2evfs!CsbHzJR+;#so8MR7;R2Bw;Q~AcQGVd zqv6}F?^UthaTSHrX~%OhM8buNp zRQcItN+#NSOtM>A^n8wXSeqLSrvghU&uZ;g8N77+Z_o186mLH}7A#pK5Sh(g%g#F< zja#yhYUmy0*m&4`Em|nXB9YB*(|^C6%KoL54x1^%$AdR<@pfR2A(!od)^Cg>H6faY zc#etMF#0pyH^l|*od63H7B1BVC6!syHcc(i5PghX_W}?In0ZT0{^;|??%Z)>m`CtE z?*x}~-nz&UN7MCge|pAwpCl`v!Ot6>mT;$kS#d#ej1 zXFaI*4B4qjhoQb)w?_OPc-2uPOsi#Si*dmiE3VnNQkl^V^QA?*Td-<2aq0tAZ?;v7 z5Im#`PxV;{Y8rQbl5kS>VG=q$7}OxWA^j=1H1kq2lwF8@Evmj;t3Kcktp|*YQu(;Np}UbE-bCsoFQH z)b{O^`P&6U_&pZHx?K=IWkUS;GxbAY0%_tq@$UtS@9o{~w!a?P&<-~tC6xL{{r-T@ z{kJmXzlY>M5V`RGm)Qs0Kh(|t3XgLCo2b@bQTY!A^v|gL->ku(cQeX2nh6#WCR4thJe99=uPUuKT-F;%S=Gj$3Vb#C>(;wVE8ph;RdV!k4Xs#3=g^? z1pYq%;AV(_MV`5Okq;*JY_fEg zIW1`mrBBDX5KS!7Z{byMN+hfzT@ZS6qdjc>p4-V$VwH%mY$I7NN6>(;94g@2 zRk$J;xwR#@)H>$;Y*R4bmYHu_C9y7p_N8AuU zaj&uf{As&6@tYUG?w>X=7aWn3^s9}N6NK>JzuLGt5hro;`d42l&rQvjUu+N%7Z`Ed z_{GM_2?hVP9U}D!^!vQrh%NAIUoa;R_%|B}G09)sadANqd*GLOAzZL@ z9gyGF0Fi+7+q_WD->xMX3cjHce>oQj7eWg2n+*&>hzS1D4u-hef3YF>#@}o_h{UMB zwgYqCuu#8_2j)i5lz+9sV84wAgF=662j{%WYWsCOIM2;j)E_n%Cu2m?oYPIAJXI?% w^P8=}p<-|E0=RLso1!#7($;?bkN8e=b}@Ex`LSsbWng$<*!1+`iW1oW2QA7#zyJUM literal 0 HcmV?d00001 diff --git a/javascripts/tablesort.js b/javascripts/tablesort.js new file mode 100644 index 0000000..c916015 --- /dev/null +++ b/javascripts/tablesort.js @@ -0,0 +1,6 @@ +document$.subscribe(function() { + var tables = document.querySelectorAll("article table:not([class])") + tables.forEach(function(table) { + new Tablesort(table) + }) + }) \ No newline at end of file diff --git a/license/index.html b/license/index.html new file mode 100644 index 0000000..33a0993 --- /dev/null +++ b/license/index.html @@ -0,0 +1,545 @@ + + + + + + + + + + + + + + +Lizenz - Stephan Hadan + + + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    + +

    Lizenz

    +

    ``` +Copyright © 2024 Stephan Hadan stephan@hadan.de

    +

    Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions:

    +

    The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software.

    +

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE.

    +

    ```

    + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/license/index.pdf b/license/index.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a93b38901a71aee725f3b817d8eab8f592d53851 GIT binary patch literal 81066 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 + + + + + + + + + + + + + +Projekte - Stephan Hadan + + + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    + +

    Projekte

    +

    TBD

    + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/projects/index.pdf b/projects/index.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5db78c6867e6377e3f9ad841f842cd35c9279cb0 GIT binary patch literal 70193 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 literal 0 HcmV?d00001 diff --git a/robots.txt b/robots.txt new file mode 100644 index 0000000..77470cb --- /dev/null +++ b/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: / \ No newline at end of file diff --git a/search/search_index.json b/search/search_index.json new file mode 100644 index 0000000..6d88e37 --- /dev/null +++ b/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["de"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"],"fields":{"title":{"boost":1000.0},"text":{"boost":1.0},"tags":{"boost":1000000.0}}},"docs":[{"location":"","title":"\u00dcber mich","text":"Stephan Hadan {{ version }} \u00dcber mich"},{"location":"#uber-mich","title":"\u00dcber mich","text":"

    TBD Stephan Hadan"},{"location":"changelog/","title":"Changelog","text":"Stephan Hadan {{ version }} Changelog"},{"location":"changelog/#changelog","title":"Changelog","text":"

    Stephan Hadan"},{"location":"license/","title":"Lizenz","text":"Stephan Hadan {{ version }} Lizenz"},{"location":"license/#lizenz","title":"Lizenz","text":"

    ``` Copyright \u00a9 2024 Stephan Hadan stephan@hadan.de

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

    ``` Stephan Hadan"},{"location":"blog/","title":"Blog","text":""},{"location":"blog/2024/01/31/hello-world/","title":"Hello world!","text":"

    Hi ho!

    "},{"location":"contact/","title":"Kontakt","text":"

    Nachstehend biete ich verschiedene Kontaktm\u00f6glichkeiten an, wie ich erreicht werden kann.

    "},{"location":"contact/#postalisch","title":"Postalisch","text":"

    Stephan Hadan Salierstr. 8 75177 Pforzheim

    "},{"location":"contact/#telefonisch-und-via-telefax","title":"Telefonisch und via Telefax","text":"

    Telefon: +49 7231 13 32 952 Telefax: +49 7231 13 32 95 29

    "},{"location":"contact/#e-mail","title":"E-Mail","text":"

    E-Mail: stephan@hadan.de

    "},{"location":"contact/#messenger-kommunikationsplattformen","title":"Messenger / Kommunikationsplattformen","text":"

    Selbstverst\u00e4ndlich kann eine Kontaktaufnahme auch durch Einladung via Microsoft Teams, Google Meet, Webex oder Zoom erfolgen. Daneben bin ich \u00fcber folgende Messengersysteme bzw. Kommunikationsplattformen erreichbar.

    "},{"location":"contact/#gitter-matrix","title":"Gitter (Matrix)","text":"

    Gitter ist eine Chat- und Networking-Plattform, die dabei hilft, Gemeinschaften durch Nachrichten, Inhalte und Entdeckungen zu verwalten, zu vergr\u00f6\u00dfern und zu verbinden. Gitter basiert auf Matrix, einem offenen Netzwerk f\u00fcr sichere, dezentralisierte Kommunikation.

    Kontaktaufnahme: https://matrix.to/#/@stiebke:gitter.im

    "},{"location":"contact/#session","title":"Session","text":"

    Session ist ein Ende-zu-Ende-verschl\u00fcsselter Messenger, der sensible Metadaten auf ein Minimum reduziert und f\u00fcr Menschen entwickelt wurde, die absolute Privatsph\u00e4re und Freiheit von jeglicher Form der \u00dcberwachung w\u00fcnschen.

    Meine Session Account ID: 054ba57d875dafef81edc7575a5de147e73e673bb632d413b4f36494b8d7fd6134

    "},{"location":"contact/#signal","title":"Signal","text":"

    Signal ist ein verschl\u00fcsselter Open-Source-Nachrichtendienst f\u00fcr Sofortnachrichten, Sprachanrufe und Videoanrufe. Die Sofortnachrichtenfunktion umfasst das Senden von Text, Sprachnotizen, Bildern, Videos und anderen Dateien. Die Kommunikation kann zwischen einzelnen Benutzern oder in Gruppen erfolgen.

    Kontaktaufnahme: einen entsprechenden QR-Code oder einen Link stelle ich auf Anfrage bereit.

    "},{"location":"contact/#slack","title":"Slack","text":"

    Slack ist eine Cloud-basierte Team-Kommunikationsplattform, die von Slack Technologies entwickelt wurde, das seit 2020 zu Salesforce geh\u00f6rt. Slack nutzt ein Freemium-Modell. Slack wird in erster Linie als Business-to-Business-Dienst angeboten, wobei die Nutzerbasis \u00fcberwiegend aus teambasierten Unternehmen besteht und die Funktionen sich in erster Linie auf die Unternehmensverwaltung und -kommunikation konzentrieren.

    Link zum Profil: https://hadanit.slack.com/team/U04BLKQF2M8

    "},{"location":"contact/#entwicklerplattformen","title":"Entwicklerplattformen","text":""},{"location":"contact/#github","title":"GitHub","text":"

    GitHub ist eine propriet\u00e4re Entwicklerplattform, die es Entwicklern erm\u00f6glicht, ihren Code zu erstellen, zu speichern, zu verwalten und zu teilen. Es verwendet Git f\u00fcr die verteilte Versionskontrolle und Github selbst bietet Zugriffskontrolle, Fehlerverfolgung, Software-Feature-Anfragen, Aufgabenmanagement, kontinuierliche Integration und Wikis f\u00fcr jedes Projekt. Github hat seinen Hauptsitz in Kalifornien und ist seit 2018 eine Tochtergesellschaft von Microsoft.

    Link zum Profil: https://github.com/stiebke

    "},{"location":"contact/#soziale-netzwerke","title":"Soziale Netzwerke","text":""},{"location":"contact/#bluesky","title":"Bluesky","text":"

    Bluesky ist ein Microblogging-Dienst f\u00fcr soziale Medien. \u00c4hnlich wie bei Twitter k\u00f6nnen die Nutzer kurze Textnachrichten, Bilder und Videos in kurzen Beitr\u00e4gen teilen, die umgangssprachlich als \u201eSkeets\u201c bezeichnet werden. Eigent\u00fcmer ist Bluesky Social PBC, eine gemeinn\u00fctzige Gesellschaft mit Sitz in den Vereinigten Staaten.

    Link zum Profil: https://bsky.app/profile/stiebke.bsky.social

    "},{"location":"contact/#linkedin","title":"LinkedIn","text":"

    LinkedIn ist eine auf Unternehmen und Besch\u00e4ftigung ausgerichtete Social-Media-Plattform, die \u00fcber Websites und mobile Apps funktioniert. Sie wurde am 5. Mai 2003 von Reid Hoffman und Eric Ly gegr\u00fcndet. Seit Dezember 2016 ist LinkedIn eine hundertprozentige Tochtergesellschaft von Microsoft. Die Plattform dient in erster Linie dem beruflichen Networking und der Karriereentwicklung und erm\u00f6glicht es Arbeitssuchenden, ihren Lebenslauf einzustellen, und Arbeitgebern, Stellenanzeigen zu ver\u00f6ffentlichen.

    Link zum Profil: https://de.linkedin.com/in/stiebke

    "},{"location":"contact/#mastodon","title":"Mastodon","text":"

    Mastodon ist ein quelloffener, selbstgehosteter sozialer Netzwerkdienst. Mastodon verwendet das ActivityPub-Protokoll f\u00fcr die F\u00f6deration, das es den Benutzern erm\u00f6glicht, zwischen unabh\u00e4ngigen Mastodon-Instanzen und anderen ActivityPub-kompatiblen Diensten zu kommunizieren. Mastodon verf\u00fcgt \u00fcber Microblogging-Funktionen, die denen von Twitter \u00e4hneln, und wird allgemein als Teil des Fediverse betrachtet.

    Link zum Profil: https://freiburg.social/@stiebke

    "},{"location":"contact/#x-nicht-aktiv","title":"X (nicht aktiv)","text":"

    Hinweis

    Da ich mit den Meinungen von Elon Musk nicht \u00fcbereinstimme und seine Machenschaften und antidemokratischen Ausw\u00fcchse nicht unterst\u00fctzen m\u00f6chte, transferiere ich allm\u00e4hlich meine Kontakte zu Bluesky und/oder Mastodon. Danach werde ich mein X-Profil stilllegen.

    Twitter, seit Juli 2023 offiziell als X bekannt, ist ein sozialer Netzwerkdienst. Es ist eine der gr\u00f6\u00dften Social-Media-Plattformen der Welt und eine der meistbesuchten Websites. Nutzer k\u00f6nnen kurze Textnachrichten, Bilder und Videos in kurzen Beitr\u00e4gen teilen, die gemeinhin als \u201eTweets\u201c (offiziell \u201ePosts\u201c) bezeichnet werden, und die Inhalte anderer Nutzer m\u00f6gen. Die Plattform umfasst auch Direktnachrichten, Video- und Audioanrufe, Lesezeichen, Listen, Communities, einen Chatbot (Grok), eine Jobsuche und Spaces, eine soziale Audiofunktion. Die Nutzer k\u00f6nnen \u00fcber die Funktion Community Notes \u00fcber den Kontext abstimmen, der von zugelassenen Nutzern hinzugef\u00fcgt wurde.

    Link zum Profil: https://x.com/hadan72

    "},{"location":"contact/#xing","title":"XING","text":"

    XING ist ein karriereorientiertes Social-Networking-Portal mit Sitz in Hamburg, das von der New Work SE (bis Mitte 2019 XING SE) betrieben wird und mehrheitlich Hubert Burda Media geh\u00f6rt. Die Seite ist neben XING Spanien vor allem auf den deutschsprachigen Markt ausgerichtet und konkurriert mit der amerikanischen Plattform LinkedIn.

    Link zum Profil: https://www.xing.com/profile/Stephan_Hadan

    "},{"location":"cv/","title":"Lebenslauf","text":"Stephan Hadan {{ version }} Lebenslauf"},{"location":"cv/#lebenslauf","title":"Lebenslauf","text":""},{"location":"cv/#online-lebenslauf","title":"Online-Lebenslauf","text":"

    Den Lebenslauf findet man ebenbso online unter https://resume.hadan.de/stephan.hadan/mein-lebenslauf.

    "},{"location":"cv/#personliche-daten","title":"Pers\u00f6nliche Daten","text":"

    Stephan Hadan *25. Juni 1972 in Pforzheim, deutsch, ledig

    "},{"location":"cv/#kontaktdaten","title":"Kontaktdaten","text":"

    Salierstra\u00dfe 8 75177 Pforzheim stephan@hadan.de +49 7231 13 32 952

    "},{"location":"cv/#berufserfahrung","title":"Berufserfahrung","text":"Zeitraum Beschreibung 09/2023-11/2024 Experience One AG, StuttgartDirector IT / Senior Principal IT Operations Engineer 11/2018-08/2023 Experience One AG, StuttgartTeamlead IT Operations / Senior IT Operations Engineer 08/2012-10/2018 Experience One AG, StuttgartSenior IT Operations Engineer 06/2010-07/2012 Omikron Data Quality GmbH, PforzheimLeiter IT-Administration 10/2009-05/2010 Omikron Data Quality GmbH, Pforzheimstv. Teamleiter IT-Administration 07/2008-09/2008 Bundesanstalt Technisches HilfswerkGast-Dozent f\u00fcr Junghelferlehrg\u00e4nge 01/2008-08/2012 Stephan Hadan IT-ServicesFreelancert\u00e4tigkeit 07/2007-12/2007 B & Q activ GmbHWeiterbildung 02/2007-06/2007 Hermann A. Trautz Schmuckwarenfabrik GmbH i.L., PforzheimEDV-Leiter im Liquidationsteam 06/1999-01/2007 Hermann A. Trautz Schmuckwarenfabrik GmbH, PforzheimEDV-Leiter 09/1994-04/1999 Creazione Monasso Schmuckwaren GmbH, PforzheimKaufm\u00e4nnischer Angestellter"},{"location":"cv/#ausbildung","title":"Ausbildung","text":"Zeitraum Beschreibung 09/1994-07/1996 Ausbildungsbetrieb: Creazione Monasso Schmuckwaren GmbH, PforzheimPr\u00fcfung: IHK NordschwarzwaldAbschlu\u00df: Industriekaufmann 10/1992-08/1994 Universit\u00e4t KarlsruheStudiengang: Informatikkein Abschlu\u00df 09/1983-09/1992 Kepler-Gymnasium PforzheimAbschlu\u00df: Allgemeine Hochschulreife 09/1979-08/1983 Haidachschule Pforzheim (Grundschule)"},{"location":"cv/#weiterbildungen","title":"Weiterbildungen","text":"Jahr Weiterbildung 2023 ISO/IEC 27002:2022 Update - PSW Training 2022 Site Reliability Engineering (SRE) Foundation - SERVIEW 2022 Datenschutz f\u00fcr IT-Mitarbeiter und IT-Leitung - T\u00fcV Rheinland 2019 ISO/IEC 27001 Officer - PSW Training 2019 ISO/IEC 27001 Foundation - PSW Training 2014 ITIL Foundation Zertifizierung - SERVIEW 2007 SAP R/3-Kurs FI - MKT 2007 SAP R/3-\u00dcbersichtskurs - MKT 2005 Zollbeg\u00fcnstigter Export - Warenursprung und Pr\u00e4ferenzrecht - IHK Nordschwarzwald"},{"location":"cv/#weitere-fahigkeiten-und-kenntnisse","title":"Weitere F\u00e4higkeiten und Kenntnisse","text":"F\u00e4higkeit Beschreibung Sprachkenntnisse Deutsch, MutterspracheEnglisch, flie\u00dfend in Wort und Schrift F\u00fchrerschein Klassen: BE, C1E Stephan Hadan"},{"location":"imprint/","title":"Impressum","text":"

    Stephan Hadan Salierstr. 8 75177 Pforzheim

    "},{"location":"imprint/#kontakt","title":"Kontakt","text":"

    Telefon: +49 7231 13 32 952 Telefax: +49 7231 13 32 95 29 E-Mail: stephan@hadan.de

    "},{"location":"imprint/#redaktionell-verantwortlich","title":"Redaktionell verantwortlich","text":"

    Stephan Hadan Salierstr. 8 75177 Pforzheim

    "},{"location":"projects/","title":"Projekte","text":"Stephan Hadan {{ version }} Projekte"},{"location":"projects/#projekte","title":"Projekte","text":"

    TBD Stephan Hadan"},{"location":"techstack/","title":"Tech Stack","text":"Stephan Hadan {{ version }} Tech Stack"},{"location":"techstack/#tech-stack","title":"Tech Stack","text":"

    TBD Stephan Hadan"}]} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 0000000..6336fbe --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,43 @@ + + + + https://stephan.hadan.de/ + 2024-12-23 + + + https://stephan.hadan.de/changelog/ + 2024-12-23 + + + https://stephan.hadan.de/license/ + 2024-12-23 + + + https://stephan.hadan.de/blog/ + 2024-12-23 + + + https://stephan.hadan.de/blog/2024/01/31/hello-world/ + 2024-12-23 + + + https://stephan.hadan.de/contact/ + 2024-12-23 + + + https://stephan.hadan.de/cv/ + 2024-12-23 + + + https://stephan.hadan.de/imprint/ + 2024-12-23 + + + https://stephan.hadan.de/projects/ + 2024-12-23 + + + https://stephan.hadan.de/techstack/ + 2024-12-23 + + \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz new file mode 100644 index 0000000000000000000000000000000000000000..d749a1027c7b43866d59d90fd94084455d4ab132 GIT binary patch literal 262 zcmV+h0r~zPiwFn+sAy*b|8r?{Wo=<_E_iKh0KJsKZo?o9hVOlfhz4ZyU z2cTdDHUbET+s?5w_>wYDswsS`6Lr)b>L=9E;@9yW7K$|DQ;zR5Q9TS7bV?&{NGRFLejp zahof2Jsf*5=v-*mkesf$+TgQPxhC;i5oVW|tgks + + + + + + + + + + + + + +Tech Stack - Stephan Hadan + + + + + + + + + + + +

    +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    + +

    Tech Stack

    +

    TBD

    + +
    +
    + +
    + +
    + +
    +
    +
    +
    +
    + + + + + + \ No newline at end of file diff --git a/techstack/index.pdf b/techstack/index.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0f59686b93c3a446524721cfd880101db607265d GIT binary patch literal 70213 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

    h`eYm|Ie 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%0AI1+vYWZ9)cwP5r&w(6^<` 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 BIQRen literal 0 HcmV?d00001