From 423f3af9ddf1626cde6a3973f0a6bc278b3eacfd Mon Sep 17 00:00:00 2001 From: <> Date: Sat, 23 Nov 2024 12:37:12 +0000 Subject: [PATCH] Deployed 3104f34 with MkDocs version: 1.6.1 --- .nojekyll | 0 404.html | 1178 +++ additional-setup/index.html | 2046 +++++ .../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 .../unpkg.com/mermaid@11/dist/mermaid.min.js | 2314 ++++++ assets/fileextensions.webp | Bin 0 -> 42402 bytes assets/images/favicon.png | Bin 0 -> 1870 bytes assets/images/social/en/additional-setup.png | Bin 0 -> 42071 bytes .../en/downgrading/downgrading-the-game.png | Bin 0 -> 50855 bytes .../en/downgrading/downgrading-the-radio.png | Bin 0 -> 46807 bytes assets/images/social/en/downgrading/index.png | Bin 0 -> 43300 bytes .../social/en/drag-and-drop-archive.png | Bin 0 -> 52295 bytes assets/images/social/en/enhancements.png | Bin 0 -> 46501 bytes .../en/essential-modding/additional-fixes.png | Bin 0 -> 43379 bytes .../social/en/essential-modding/fusionfix.png | Bin 0 -> 36513 bytes .../social/en/essential-modding/index.png | Bin 0 -> 41875 bytes .../en/essential-modding/various-fixes.png | Bin 0 -> 37057 bytes .../en/essential-modding/zolikapatch.png | Bin 0 -> 42621 bytes assets/images/social/en/extras/index.png | Bin 0 -> 36199 bytes assets/images/social/en/extras/launcher.png | Bin 0 -> 34743 bytes assets/images/social/en/extras/modloading.png | Bin 0 -> 37260 bytes assets/images/social/en/extras/mods.png | Bin 0 -> 32173 bytes .../images/social/en/extras/multiplayer.png | Bin 0 -> 36093 bytes assets/images/social/en/extras/trainers.png | Bin 0 -> 35174 bytes assets/images/social/en/index.png | Bin 0 -> 37681 bytes assets/images/social/en/optimization.png | Bin 0 -> 39742 bytes assets/images/social/en/preparation.png | Bin 0 -> 38020 bytes assets/images/social/en/resources/credits.png | Bin 0 -> 48190 bytes .../social/en/resources/mod-dependencies.png | Bin 0 -> 45492 bytes assets/images/social/en/resources/openiv.png | Bin 0 -> 34834 bytes .../en/resources/similar-guides-modpacks.png | Bin 0 -> 55662 bytes .../social/en/resources/troubleshooting.png | Bin 0 -> 38847 bytes assets/images/social/ru/additional-setup.png | Bin 0 -> 49156 bytes .../ru/downgrading/downgrading-the-game.png | Bin 0 -> 41795 bytes .../ru/downgrading/downgrading-the-radio.png | Bin 0 -> 44825 bytes assets/images/social/ru/downgrading/index.png | Bin 0 -> 37818 bytes .../social/ru/drag-and-drop-archive.png | Bin 0 -> 43482 bytes assets/images/social/ru/enhancements.png | Bin 0 -> 46501 bytes .../ru/essential-modding/additional-fixes.png | Bin 0 -> 43497 bytes .../social/ru/essential-modding/fusionfix.png | Bin 0 -> 36823 bytes .../social/ru/essential-modding/index.png | Bin 0 -> 44589 bytes .../ru/essential-modding/various-fixes.png | Bin 0 -> 37553 bytes .../ru/essential-modding/zolikapatch.png | Bin 0 -> 43269 bytes assets/images/social/ru/extras/index.png | Bin 0 -> 36199 bytes assets/images/social/ru/extras/launcher.png | Bin 0 -> 34743 bytes assets/images/social/ru/extras/modloading.png | Bin 0 -> 37260 bytes assets/images/social/ru/extras/mods.png | Bin 0 -> 32173 bytes .../images/social/ru/extras/multiplayer.png | Bin 0 -> 36093 bytes assets/images/social/ru/extras/trainers.png | Bin 0 -> 35174 bytes assets/images/social/ru/index.png | Bin 0 -> 42500 bytes assets/images/social/ru/optimization.png | Bin 0 -> 37546 bytes assets/images/social/ru/preparation.png | Bin 0 -> 35515 bytes assets/images/social/ru/resources/credits.png | Bin 0 -> 48190 bytes .../social/ru/resources/mod-dependencies.png | Bin 0 -> 45492 bytes assets/images/social/ru/resources/openiv.png | Bin 0 -> 34834 bytes .../ru/resources/similar-guides-modpacks.png | Bin 0 -> 55662 bytes .../social/ru/resources/troubleshooting.png | Bin 0 -> 38847 bytes assets/iv-logo-favicon.webp | Bin 0 -> 2122 bytes assets/javascripts/bundle.83f73b43.min.js | 16 + assets/javascripts/bundle.83f73b43.min.js.map | 7 + assets/javascripts/glightbox.min.js | 1 + 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.6ce7567c.min.js | 42 + .../workers/search.6ce7567c.min.js.map | 7 + assets/logo-horizontal.webp | Bin 0 -> 41638 bytes assets/logo-no-modding.webp | Bin 0 -> 11972 bytes assets/stylesheets/glightbox.min.css | 1 + assets/stylesheets/main.0253249f.min.css | 1 + assets/stylesheets/main.0253249f.min.css.map | 1 + assets/stylesheets/palette.06af60db.min.css | 1 + .../stylesheets/palette.06af60db.min.css.map | 1 + downgrading/downgrading-the-game/index.html | 1488 ++++ downgrading/downgrading-the-radio/index.html | 1313 ++++ downgrading/index.html | 1301 ++++ drag-and-drop-archive/index.html | 2444 ++++++ enhancements/index.html | 1838 +++++ essential-modding/additional-fixes/index.html | 1578 ++++ essential-modding/fusionfix/index.html | 1354 ++++ essential-modding/index.html | 1294 ++++ essential-modding/various-fixes/index.html | 1295 ++++ essential-modding/zolikapatch/index.html | 1346 ++++ extras/index.html | 1295 ++++ extras/launcher/index.html | 1307 ++++ extras/modloading/index.html | 1604 ++++ extras/mods/index.html | 1520 ++++ extras/multiplayer/index.html | 1603 ++++ extras/trainers/index.html | 1445 ++++ googlea5836ae581372081.html | 1 + index.html | 1408 ++++ optimization/index.html | 1523 ++++ preparation/index.html | 1438 ++++ resources/credits/index.html | 1801 +++++ resources/mod-dependencies/index.html | 1464 ++++ resources/openiv/index.html | 1408 ++++ resources/similar-guides-modpacks/index.html | 1367 ++++ resources/troubleshooting/index.html | 1659 ++++ ru/additional-setup/index.html | 2041 +++++ .../downgrading-the-game/index.html | 1489 ++++ .../downgrading-the-radio/index.html | 1311 ++++ ru/downgrading/index.html | 1301 ++++ ru/drag-and-drop-archive/index.html | 2443 ++++++ ru/enhancements/index.html | 1838 +++++ .../additional-fixes/index.html | 1578 ++++ ru/essential-modding/fusionfix/index.html | 1354 ++++ ru/essential-modding/index.html | 1294 ++++ ru/essential-modding/various-fixes/index.html | 1295 ++++ ru/essential-modding/zolikapatch/index.html | 1346 ++++ ru/extras/index.html | 1295 ++++ ru/extras/launcher/index.html | 1307 ++++ ru/extras/modloading/index.html | 1604 ++++ ru/extras/mods/index.html | 1520 ++++ ru/extras/multiplayer/index.html | 1603 ++++ ru/extras/trainers/index.html | 1445 ++++ ru/index.html | 1408 ++++ ru/optimization/index.html | 1523 ++++ ru/preparation/index.html | 1439 ++++ ru/resources/credits/index.html | 1801 +++++ ru/resources/mod-dependencies/index.html | 1464 ++++ ru/resources/openiv/index.html | 1408 ++++ .../similar-guides-modpacks/index.html | 1367 ++++ ru/resources/troubleshooting/index.html | 1659 ++++ search/search_index.json | 1 + sitemap.xml | 353 + sitemap.xml.gz | Bin 0 -> 1025 bytes 211 files changed, 87992 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 additional-setup/index.html 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/unpkg.com/mermaid@11/dist/mermaid.min.js create mode 100644 assets/fileextensions.webp create mode 100644 assets/images/favicon.png create mode 100644 assets/images/social/en/additional-setup.png create mode 100644 assets/images/social/en/downgrading/downgrading-the-game.png create mode 100644 assets/images/social/en/downgrading/downgrading-the-radio.png create mode 100644 assets/images/social/en/downgrading/index.png create mode 100644 assets/images/social/en/drag-and-drop-archive.png create mode 100644 assets/images/social/en/enhancements.png create mode 100644 assets/images/social/en/essential-modding/additional-fixes.png create mode 100644 assets/images/social/en/essential-modding/fusionfix.png create mode 100644 assets/images/social/en/essential-modding/index.png create mode 100644 assets/images/social/en/essential-modding/various-fixes.png create mode 100644 assets/images/social/en/essential-modding/zolikapatch.png create mode 100644 assets/images/social/en/extras/index.png create mode 100644 assets/images/social/en/extras/launcher.png create mode 100644 assets/images/social/en/extras/modloading.png create mode 100644 assets/images/social/en/extras/mods.png create mode 100644 assets/images/social/en/extras/multiplayer.png create mode 100644 assets/images/social/en/extras/trainers.png create mode 100644 assets/images/social/en/index.png create mode 100644 assets/images/social/en/optimization.png create mode 100644 assets/images/social/en/preparation.png create mode 100644 assets/images/social/en/resources/credits.png create mode 100644 assets/images/social/en/resources/mod-dependencies.png create mode 100644 assets/images/social/en/resources/openiv.png create mode 100644 assets/images/social/en/resources/similar-guides-modpacks.png create mode 100644 assets/images/social/en/resources/troubleshooting.png create mode 100644 assets/images/social/ru/additional-setup.png create mode 100644 assets/images/social/ru/downgrading/downgrading-the-game.png create mode 100644 assets/images/social/ru/downgrading/downgrading-the-radio.png create mode 100644 assets/images/social/ru/downgrading/index.png create mode 100644 assets/images/social/ru/drag-and-drop-archive.png create mode 100644 assets/images/social/ru/enhancements.png create mode 100644 assets/images/social/ru/essential-modding/additional-fixes.png create mode 100644 assets/images/social/ru/essential-modding/fusionfix.png create mode 100644 assets/images/social/ru/essential-modding/index.png create mode 100644 assets/images/social/ru/essential-modding/various-fixes.png create mode 100644 assets/images/social/ru/essential-modding/zolikapatch.png create mode 100644 assets/images/social/ru/extras/index.png create mode 100644 assets/images/social/ru/extras/launcher.png create mode 100644 assets/images/social/ru/extras/modloading.png create mode 100644 assets/images/social/ru/extras/mods.png create mode 100644 assets/images/social/ru/extras/multiplayer.png create mode 100644 assets/images/social/ru/extras/trainers.png create mode 100644 assets/images/social/ru/index.png create mode 100644 assets/images/social/ru/optimization.png create mode 100644 assets/images/social/ru/preparation.png create mode 100644 assets/images/social/ru/resources/credits.png create mode 100644 assets/images/social/ru/resources/mod-dependencies.png create mode 100644 assets/images/social/ru/resources/openiv.png create mode 100644 assets/images/social/ru/resources/similar-guides-modpacks.png create mode 100644 assets/images/social/ru/resources/troubleshooting.png create mode 100644 assets/iv-logo-favicon.webp create mode 100644 assets/javascripts/bundle.83f73b43.min.js create mode 100644 assets/javascripts/bundle.83f73b43.min.js.map create mode 100644 assets/javascripts/glightbox.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.6ce7567c.min.js create mode 100644 assets/javascripts/workers/search.6ce7567c.min.js.map create mode 100644 assets/logo-horizontal.webp create mode 100644 assets/logo-no-modding.webp create mode 100644 assets/stylesheets/glightbox.min.css create mode 100644 assets/stylesheets/main.0253249f.min.css create mode 100644 assets/stylesheets/main.0253249f.min.css.map create mode 100644 assets/stylesheets/palette.06af60db.min.css create mode 100644 assets/stylesheets/palette.06af60db.min.css.map create mode 100644 downgrading/downgrading-the-game/index.html create mode 100644 downgrading/downgrading-the-radio/index.html create mode 100644 downgrading/index.html create mode 100644 drag-and-drop-archive/index.html create mode 100644 enhancements/index.html create mode 100644 essential-modding/additional-fixes/index.html create mode 100644 essential-modding/fusionfix/index.html create mode 100644 essential-modding/index.html create mode 100644 essential-modding/various-fixes/index.html create mode 100644 essential-modding/zolikapatch/index.html create mode 100644 extras/index.html create mode 100644 extras/launcher/index.html create mode 100644 extras/modloading/index.html create mode 100644 extras/mods/index.html create mode 100644 extras/multiplayer/index.html create mode 100644 extras/trainers/index.html create mode 100644 googlea5836ae581372081.html create mode 100644 index.html create mode 100644 optimization/index.html create mode 100644 preparation/index.html create mode 100644 resources/credits/index.html create mode 100644 resources/mod-dependencies/index.html create mode 100644 resources/openiv/index.html create mode 100644 resources/similar-guides-modpacks/index.html create mode 100644 resources/troubleshooting/index.html create mode 100644 ru/additional-setup/index.html create mode 100644 ru/downgrading/downgrading-the-game/index.html create mode 100644 ru/downgrading/downgrading-the-radio/index.html create mode 100644 ru/downgrading/index.html create mode 100644 ru/drag-and-drop-archive/index.html create mode 100644 ru/enhancements/index.html create mode 100644 ru/essential-modding/additional-fixes/index.html create mode 100644 ru/essential-modding/fusionfix/index.html create mode 100644 ru/essential-modding/index.html create mode 100644 ru/essential-modding/various-fixes/index.html create mode 100644 ru/essential-modding/zolikapatch/index.html create mode 100644 ru/extras/index.html create mode 100644 ru/extras/launcher/index.html create mode 100644 ru/extras/modloading/index.html create mode 100644 ru/extras/mods/index.html create mode 100644 ru/extras/multiplayer/index.html create mode 100644 ru/extras/trainers/index.html create mode 100644 ru/index.html create mode 100644 ru/optimization/index.html create mode 100644 ru/preparation/index.html create mode 100644 ru/resources/credits/index.html create mode 100644 ru/resources/mod-dependencies/index.html create mode 100644 ru/resources/openiv/index.html create mode 100644 ru/resources/similar-guides-modpacks/index.html create mode 100644 ru/resources/troubleshooting/index.html create mode 100644 search/search_index.json create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/404.html b/404.html new file mode 100644 index 00000000..8050a6f1 --- /dev/null +++ b/404.html @@ -0,0 +1,1178 @@ + + + + + + + + + + + + + + + + + + + Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ + + +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + +
+
+ +

404 - Not found

+ +
+
+ + + + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + + + + \ No newline at end of file diff --git a/additional-setup/index.html b/additional-setup/index.html new file mode 100644 index 00000000..bc148651 --- /dev/null +++ b/additional-setup/index.html @@ -0,0 +1,2046 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Additional Setup - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ + + +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + +
+
+ + + + + + + + + + + + +

Additional Setup#

+
+
    +
  • +

    If you're here after installing the archive or using the Setup Utility on Windows, skip to optimal graphics settings:

    +

    Optimal graphics settings

    +
  • +
+
+

If you're here after anything else (including installing the archive on Linux), start with the launch options.

+
+

Launch options#

+
+

Setup Utility (Windows only)

+

The Setup Utility can set up the launch options automatically for you.

+
+

Manual instructions#

+
+
+
+
    +
  1. Find the location for the game properties:
      +
    • Steam: Right click the game in your library, press Properties... and locate the Launch options field.
    • +
    • Rockstar Games Launcher: Open the game page in your library, open settings and locate the Launcher arguments field.
    • +
    • Shortcut: Right click on the game shortcut, click Properties and locate the Target field.
    • +
    +
  2. +
  3. +

    Paste the following:

    +
    -norestrictions -nomemrestrict -managed
    +
    +
  4. +
  5. +

    If using FusionFix, enable Windowed and Borderless Windowed in Settings - Game in-game.

    +
  6. +
+
+
+
    +
  1. In the game folder, create a commandline.txt file.
  2. +
  3. Open the file.
  4. +
  5. +

    Insert the following lines to it:

    +
    -norestrictions
    +-nomemrestrict
    +-windowed
    +-managed
    +
    +
  6. +
  7. +

    If using FusionFix, -windowed can be removed in favor of the mod's in-game toggle.

    +
  8. +
  9. If using FusionFix and/or ZolikaPatch, enable Borderless Windowed in Settings - Game in-game or BorderlessWindowed in ZolikaPatch.ini depending on which of the two you install.
      +
    • If you don't plan to install either of the mods, remove -windowed.
    • +
    • If using both, only enable the option in FusionFix.
    • +
    +
  10. +
+
+
+
+
+If using DXVK... +
    +
  • Remove -managed.
  • +
  • Add -availablevidmem 3072.0 to the list of options.
      +
    • Replace the value with your VRAM value in MBs if you have less than 3 GB of VRAM. Don't make it higher, though.
    • +
    • If using a version older than 1.0.8.0, this value is broken. Experiment manually to get as close to 3072 MB as possible (the value may looks something like 60.0, 80.0 etc).
    • +
    +
  • +
  • If the game doesn't allow you to use the correct resolution/refresh rate in the graphics settings, add -width, -height and -refreshrate with your monitor's native values.
      +
    • If that still doesn't help, add d3d9.forceAspectRatio = 16:9 to dxvk.conf. Change 16:9 with your exact aspect ratio if you don't use a 16:9 monitor.
    • +
    +
  • +
  • If using Windows, make sure you disabled Enable Shader Pre-caching in Settings - Downloads on Steam.
  • +
+
+
+Full list of available launch options +

You can use these options for intensive tweaking or debugging.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
OptionDescription
-helpLists the available commands.
-adapterUses the specified screen adapter.
-autoconfigAutomatically adjusts the graphics settings depending on computer specifications.
-availablevidmemSets the amount of available physical video memory.
-benchmarkLaunches the game in Benchmark mode and then quits it.
-detailqualitySets the game's detail distance (0-99).
-disableimpostersTurns off imposter rendering for vehicles.
-forcehighqualitymirrorsUnknown.
-forcer2vbForces rendering to Vertex Buffer.
-frameLimitSets the setting for V-Sync.
-framelockinwindowForces framelock to work even in a window.
-fullscreenForces fullscreen mode.
-fullspecaudioForces high-end CPU audio footprint.
-gpucountAllows to manually set the GPU count if query fails.
-heightSets the vertical resolution.
-managedUses D3D runtime managed resources.
-memrestrictRestricts the amount of available memory the game can use.
-minspecaudioForces low-end CPU audio footprint.
-no_3GBDisables 3GB memory support on 32-bit OSes which have been set to allow games and applications to use that much memory.
-noBlockOnLostFocusPrevents the game from blocking window updates during focus loss.
-noprecacheDisables precaching of resources.
-nomemrestrictDisables memory restrictions.
-nominimizeDisables the ability to restore the game from minimize and altering resolutions (reduces system memory footprint).
-norestrictionsDisables restrictions on graphics settings.
-noswapdelayDisables sleep delay before Present (disables the hard present stalls fix).
-notimefixDisables Time Fix.
-novblankDisables vertical blanking for V-Sync.
-percentvidmemPercentage of video memory to be made available for the game.
-refreshrateSets the refresh rate (values set must be supported by the monitor used).
-reserveSets the amount of memory to be used by other programs.
-reservedAppSets the amount of memory to be left available within application space.
-renderqualityAdjusts anisotropic filtering (0-4).
-safemodeSets the game's graphics to the lowest setting possible.
-shadowdensityAdjusts night shadows (0-16).
-shadowqualitySets the shadow quality (0-4).
-stereoEnables stereo audio support.
-texturequalitySets the game's texture quality (0-2).
-unmanagedUses application managed resources.
-usedirectinputAllows DirectInput support alongside XInput support.
-viewdistanceSets the game's view distance (0-99).
-windowedForces windowed mode.
-widthSets the horizontal resolution.
+
+
+

Optimal graphics settings#

+
+

Following settings are targetted for the recommended spec sheet hardware.

+

If you came here from the archive, use the FusionFix tab.

+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SettingOptimal settingDescription
Video ModeYour native resolution (max option, usually)This setting controls your monitor resolution or, if the -windowed launch option is set, the size of the game window.
Aspect RatioAutoThis setting controls the aspect ratio of the screen relative to the resolution of your monitor.
Texture QualityHighThis setting controls the resolution of all textures.
Reflection ResolutionVery HighThis setting controls the resolution of reflections (excluding water reflections).
Water QualityMediumThis setting controls the density and intensity of waves in the water, aswell as the resolution of water reflections.
Medium is recommended as it is less extreme, more realistic and most similar to the intended look on the consoles.
Shadow QualityHighThis setting controls the resolution and render distance of shadows.
Medium and Low rely too much on static shadows, making them look ugly.
Very High consumes too much performance for little gain and may appear broken at times.
Night ShadowsMediumThis setting controls how many local lights (e.g. car headlights) can cast shadows. Each quality level adds 4 additional shadow maps. This setting does not affect the resolution of dynamic shadows.
Setting it above Medium is known to create artifacts.
Texture Filter QualityAnisotropic 16xThis setting controls texture filtering.
View DistanceBetween 21 and 70This setting controls the main LOD render distance for things like buildings and vehicles. Also affects the render distance for props.
Setting it above 21 causes pop-in, and above 70 is known to cause instability and artifacts, as well as a negative impact on framerate.
Detail DistanceBetween 10 and 70This setting controls the secondary LOD render distance for props detail.
Setting it above 10 causes pop-in, and above 70 is known to cause instability and artifacts.
Vehicle DensityBelow 70This setting controls the number of cars on the road.
Setting it too high can make driving too much of a hassle, especially with the unstable traffic AI, which can occasionally create random blocks even on straight roads and bridges.
DefinitionOn
Off if playing at 1280x720
This setting controls depth of field and motion blur (Off is enabled, On is disabled).
If playing above 1280x720, Off ends up blurring the image on PC and effects simply do not scale up with resolution - due to that, keep it On unless you play at that resolution.
Can be quickly toggled by pressing P button in-game.
VSyncOff if using DXVK
On
This setting controls vertical synchronization.
If using DXVK with configuration applied, keep the game's implementation Off in favor of DXVK's implementation. Also add d3d9.maxFrameRate = 60 to dxvk.conf or limit framerate with other methods you know to 60 or 30 to avoid timing-related issues. AMD Fluid Motion Frames (if DXVK is used) or Lossless Scaling can be used to artificially increase the framerate.
+
+
+
+

Following options require FusionFix.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SettingOptimal settingDescription
Video ModeYour native resolution (max option, usually)This setting controls your monitor resolution or, if Windowed is enabled, the size of the game window.
Aspect RatioAutoThis setting controls the aspect ratio of the screen relative to the resolution of your monitor.
Texture QualityHighThis setting controls the resolution of all textures.
Reflection ResolutionVery HighThis setting controls the resolution of reflections (excluding water reflections).
Water QualityVery HighThis setting only controls the resolution of the water reflections when using FusionFix.
Shadow QualityVery HighThis setting controls the resolution and render distance of shadows.
If the performance loss is too high, use High instead.
Further tuning available in GTAIV.EFLC.FusionFix.ini.
Night ShadowsVery HighThis setting controls how many local lights (e.g. car headlights) can cast shadows and the shadows' resolution.
Further tuning available in GTAIV.EFLC.FusionFix.ini.
Texture Filter QualityAnisotropic 16xThis setting controls texture filtering.
View Distance25
Up to 70
This setting controls the main LOD render distance for things like buildings and vehicles. Also affects the render distance for props.
Setting it above 25 causes pop-in, and above 70 has diminishing results.
Detail Distance31
Up to 70
This setting controls the secondary LOD render distance for props detail.
Setting it above 31 causes pop-in, and above 70 has diminishing results.
Vehicle DensityBelow 70
100 with a custom popcycle (archive)
This setting controls the number of cars on the road.
Setting it too high can make driving too much of a hassle, especially with the unstable traffic AI, which can occasionally create random blocks even on straight roads and bridges.
VSyncOff if using DXVK
On
This setting controls vertical synchronization.
If using DXVK with configuration applied, keep the game's implementation Off in favor of DXVK's implementation.
Shadow FilterPreferenceThis setting controls how sharp the shadows look (as, in real life, shadows are pretty soft).
Further tuning available in GTAIV.EFLC.FusionFix.ini.
Sun ShaftsPreferenceThis setting controls custom-implemented godrays.
Further tuning available in GTAIV.EFLC.FusionFix.ini.
Anti-aliasingSMAAThis setting controls the anti-aliasing method.
FPS Limiter60
30
This setting controls the FPS limit.
Recommended to set to 60 or 30 to avoid timing-related issues, although the story can be beaten above 60 if ignoring bugs. You may want to lower it to 30 for some minigames.
AMD Fluid Motion Frames (if DXVK is used) or Lossless Scaling can be used to artificially increase the framerate.
Further tuning available in GTAIV.EFLC.FusionFix.ini.
FOVPreferenceThis setting controls the game FOV in increments from the game's default value.
Lamppost ShadowsPreferenceThis setting enables lamppost shadows at the cost of potential pop-in and reduced performance.
+
+

Following options are located in the Display tab.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SettingOptimal settingDescription
Motion BlurPreferenceThis setting controls the motion blur effect.
BloomOnThis setting controls bloom.
Console GammaPreferenceThis setting changes the gamma to match the console levels.
The game was never supposed to be so whitewashed, so I recommend setting this to On.
Screen FilterDefaultThis setting allows you to switch the timecyc file to match different screen filters (e.g. to have TBoGT filters in IV and vice versa).
Depth of FieldPreferenceThis setting controls the intensity of the distant blur and allows you to lock Depth of Field only to cutscenes.
Tree LightingPreferenceThis setting controls the vegetation's ambient occlusion.
Further tuning available in GTAIV.EFLC.FusionFix.ini.
Tree AlphaPreferenceThis setting controls the vegetation's "transparency".
Further tuning available in GTAIV.EFLC.FusionFix.ini.
DefinitionOnThis setting smoothes out stippled and dithered objects to reduce shimmering and aliasing.
+
+

Following options are located in the Game tab.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
SettingOptimal settingDescription
WindowedOnThis setting controls whether game is in Exclusive Fullscreen mode or (Borderless) Windowed.
Borderless is generally more recommended than Exclusive Fullscreen for multitasking purposes.
Windowed BorderlessOn if using Windowed
Off
This setting controls if the game is a normal window or a Borderless Fullscreen window when the Windowed setting is On.
Pause Game on Focus LossOffThis setting controls whether or not the game process will be locked when the window loses focus (alt-tabbing).
You should set this to Off to avoid potential crashes.
+
+
+
+

What are these settings?

+

These settings are identical to the console versions of the game.

+

I don't really recommend playing with these settings, so this list is more for referring to what settings are most authentic to the console version.

+
+
+

Following options require FusionFix.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SettingConsole-identical settingDescription
Video Mode1280x720 on X360
1152x640 on PS3
This setting controls your monitor resolution or, if Windowed is enabled, the size of the game window.
Texture QualityMediumThis setting controls the resolution of all textures.
Reflection ResolutionMediumThis setting controls the resolution of reflections (excluding water reflections).
Water QualityMediumThis setting only controls the resolution of the water reflections when using FusionFix.
Shadow QualityMedium (?)This setting controls the resolution and render distance of shadows.
Night ShadowsOffThis setting controls how many local lights (e.g. car headlights) can cast shadows and the shadows' resolution.
Texture Filter QualityTri-LinearThis setting controls texture filtering.
View Distance21This setting controls the main LOD render distance for things like buildings and vehicles. Also affects the render distance for props.
Detail Distance10This setting controls the secondary LOD render distance for props detail.
Vehicle Density33This setting controls the number of cars on the road.
Sun ShaftsOffThis setting controls custom-implemented godrays.
Anti-aliasingN/AThis setting controls the anti-aliasing method.
The game used SSAA 2x on the Xbox 360 and QAA on the PS3, neither of which are avaialable on PC.
FPS Limiter30This setting controls the FPS limit.
FOVDefault (lowest)This setting controls the game FOV in increments from the game's default value.
Lamppost ShadowsOnThis setting enables lamppost shadows at the cost of potential pop-in and reduced performance.
+
+

Following options are located in the Display tab.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SettingConsole-identical settingDescription
Motion BlurOnThis setting controls the motion blur effect.
BloomOnThis setting controls bloom.
Console GammaOnThis setting changes the gamma to match the console levels.
Screen FilterDefaultThis setting allows you to switch the timecyc file to match different screen filters (e.g. to have TBoGT filters in IV and vice versa).
Depth of FieldVery High (?)This setting controls the intensity of the distant blur and allows you to lock Depth of Field only to cutscenes.
Tree LightingConsoleThis setting controls the vegetation's ambient occlusion.
Tree AlphaConsoleThis setting controls the vegetation's "transparency"
DefinitionOffThis setting smoothes out stippled and dithered objects to reduce shimmering and aliasing.
+
+
+
+
+ +
    +
  • +

    If you came here after installing the archive, congratulations - you are done here!

    +
  • +
  • +

    If you are going through the guide manually step-by-step, continue with Essential Modding.

    +
  • +
+

Previous page
Optimization
Next page
Essential Modding

+ + + + + + + + + + + + + + + + + + +
+
+ + + + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/external/fonts.googleapis.com/css.49ea35f2.css b/assets/external/fonts.googleapis.com/css.49ea35f2.css new file mode 100644 index 00000000..68986a16 --- /dev/null +++ b/assets/external/fonts.googleapis.com/css.49ea35f2.css @@ -0,0 +1,594 @@ +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc3CsTKlA.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc-CsTKlA.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc2CsTKlA.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc5CsTKlA.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc1CsTKlA.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc0CsTKlA.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc6CsQ.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xFIzIFKw.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xMIzIFKw.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xEIzIFKw.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xLIzIFKw.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xHIzIFKw.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xGIzIFKw.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xIIzI.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic3CsTKlA.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic-CsTKlA.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic2CsTKlA.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic5CsTKlA.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic1CsTKlA.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic0CsTKlA.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic6CsQ.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCRc4EsA.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fABc4EsA.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCBc4EsA.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBxc4EsA.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCxc4EsA.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fChc4EsA.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 300; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBBc4.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu72xKOzY.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu5mxKOzY.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7mxKOzY.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4WxKOzY.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7WxKOzY.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7GxKOzY.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4mxK.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCRc4EsA.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfABc4EsA.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCBc4EsA.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBxc4EsA.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCxc4EsA.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBBc4.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEluUlYIw.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEn-UlYIw.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEmOUlYIw.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtElOUlYIw.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEleUlYIw.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEm-Ul.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEluUlYIw.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEn-UlYIw.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEmOUlYIw.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtElOUlYIw.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEleUlYIw.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto Mono'; + font-style: italic; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEm-Ul.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSV0mf0h.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSx0mf0h.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSt0mf0h.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSd0mf0h.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSZ0mf0h.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 400; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSV0mf0h.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSx0mf0h.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSt0mf0h.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSd0mf0h.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSZ0mf0h.woff2) format('woff2'); + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto Mono'; + font-style: normal; + font-weight: 700; + font-display: fallback; + src: url(../fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc-CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc-CsTKlA.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..d88dd2b865729b9e220b2f6644a4e42ca9757525 GIT binary patch literal 10656 zcmV;RDPPuiPew8T0RR9104bmV5&!@I0A0WU04Y2G0RR9100000000000000000000 z0000Qb{m#>9DyDNU;u(P2v`Y&JP`~Efr(uEN(+J<01|;10X7081B5gLAO(Xg2OtcB zKO0bQK$%T0&7% z5rVhba2gs_BAoNM_RR zC;A7E{tva?QJX>-e5guqT#yc9=*O==p8kL4eA{=Ipt$EV^Bvk0y3~6>KbIAHNE%>K zT9A*7oFa1W{42j5&|wG3$GZ+O_c8YF-PFG+{eL>kcD}}5xR4cMAA7?^w@FiARgJ!6 zdHzT;Xr08e7Azm?*hlOmZUfY(OVL=n)!v4PyWAB`+AF#)z+GNmL+!vQ9aCz!##loQ z&9Axar+rZ?_x3HjENTbEh!kT?alHL^$7)NxY+ifO46p@5mHrL_Mh*aQFmILb6oKW+ z2saMGuMpunsA{#UUXyCkqS|z*E?sKah#E7kX053W4=i?o%o0Ph^54|JX+W-e>*x*? ze&(da0fpaFB4UBUKSI(HfI=hy)6zALeN9OKguwp;2?lWC5i!``1p)N;NMNM#9JLrL zLAz1&TT_*vpHSSjcbO7)ul3gXb}qGkK=gfo{_kbi6#;Xxy6aU4-P9M*C)($e;~%oO z_mb8#!;Gqt`l0(&?5n`H;ZCxd!`7+o0pl~Y8~43zr#JZK+rta1-O={t1hANPyE@-{ z9N&9|%zkN6=fkY6-D>dPOjOYf5@lroo9t#;z%qc5tgXHxP}0Ukzd5jV2lpdzeC&Pp zbO5U>ev8=;#3ieD+VvjA6Al{eoi&S`JAPThuG5-p&zP~|R)V;#`lC^X#$DHWEQ(c% zExVX$N;;N7DQIY$#B5B}5nWtlw1YP_yRf&aPz%-FJ+=5o^Kz;DBjBKxwyuGpk+F&C z-hKNI96V-b=j80->E-Je5*i*skBo|riH(a-OiE5oV=&q09lQ1&ICSLLiBkm%6)Oc| zHcJRb29T|I?dkQXPNA_q?!`NGateVQLI=cC<^TYIBbRsh*=yn9-c;ndY@rYd0$?B) zB50&aN$iMD10W=FvDGx)ISpR@Hr)w8`(EwVx9=w;R_wINHWg(E9Y$%+QuIkVV#F9= zGv?LG%m~(uK7kZk5)hCv>*w{yAwz$CN!Ls^R~*24j9L zq13bH{&Ts%Z8yaO_?~NZ^)AoRZ^ll`;pEGD=!ElSE-J4gT`(GyC2KcludO5{nZEp& zmTHKK$O*|PF(OR(b$t*KBxW2XJ3V+O7dH=ApKi4pwd&Ms5Rs6@%V}b7sa;yaPDQZO zwp0WwRmIk$uE8mHhHY;l{v-J_Jfywjs@Fkmt!r0(ou)WVtenuwM=MiX&br0X7Z213 zGSh&;xv`&lOI6#5UYc-K_Eb>U0|;i}n#{F=s**1{nw`kwC-cM`tx;McwB>9^qJ58N zpd)A^eG=_6%f9jCIJ57vN-7X^IcW}-h#E=8B1wQJCEuSsFx$;&H+x9R3EYvu2wG6m zXVV#V zzyV@IIRIDk-XY(j-mx=m#SeXhuUcQQw#zQDs~zr4UKew{5dlh?s2gdnq^&k>*JuC& z5P|?+fRGD?8Q!Mff*=rj0MN3Rz2xj=4^0nw4|zm_-#}H`^RMo^NF}1L?&wS0Q)%7NLK(#Dso2A#RldQpfxLPGHt=a zhqlPPMvvEZ_my!U`5Wlzy3xL{ZOvS5dS$dI3+tu53ZaNjgmY=kU7{oGblnbAFc!G$-1TtCxDO7tZfa;<)JAck1VakakcqQhmjh}9Xo6N~hn^MZ`e3WO z$PlNb16=p0myY}76yOT3>0Xi^+CX6LAv?m>uKkt!l6{}!lR^ixP@w|CTrrpt!z*IW zB(1X1kktKPTLMR z|8U^A5yEVo#l){Y)<~e@>A{SZ9(&A+^yi1C={tHpasa#s@rRmA-ii(Nb zlaQ2>wlDMR5@m^aqC28a`VIGR=CoXSJoV^xr9=TAPP6)r>h{FRvPai68s zy|qB<5Lxvv%2q|93(!qDq{Bnvl0kPZP~QBg?+8@#o&bQlK%apF(9WEK;72m>*Ab8rodb1ax=de-AsQCltKNm!CD>eGIERyGb652WU+8t#zI&_ ziD-zpXUO2~TyT_$mPPbBSIk)UgEZ@A13r%ur4cFQgn8~mUA|q%!X0KHu)daA1F)v0 zft=1snR8KYEP6p@abpLgfi|f3*_u(0lKB_|=vl|GpuZN*Al1$#^k}`xubDI3Obkc_ ze*r!CcNG`veTGUhlXuGKVFPafv+dgCOgPndjH@zzX@VK-i$Mv&X1`RzWgY4HsV@T3 z5}SEfY?em*4$N^UbtV;;IDRnpR3I_{`;rmDK~GK;CD)O*ThzMSJG=`*K-=pT~0 z(OB6ki@7q28nr*D3$-qSlDswgb>iyWO1aLxZ7wr=sZ~2IKd6gSjhlGNw4~l^cYR#i z(ID{HPkCr$MWXzX{={Q12F4D|`x$aQ&xJ7}8|Md{R`o?owul;aOSMLWCuWL@<*1;b z_dA?Xi!K(${6Db}rW0$?UY9-PiwXxql2?JQC}329MifCRy;Xz(G2j8WOg)I>(;RPT3m&rW0?q;!(yg+tRV24(5g0sUg zG6V}F$WTT9#x^p>wzQ`ThBlEiMgaQIQHfhSRyT4>6m=&elh+GNeVgr_5q?N`>wSwt zV|YP%Y~4brWW4b?#0Q|Ept_awHX@~F13sau>N_A7!$z zRrXTu306@>>3PA^~b0z6H zu0_!#=-pH?`XUUr<|uDaW%fU96ePp^>1JxJ@ zDEWtwq~8guLUTC54#7tDp(R#mqr@1)q?8B`5=`2ezqkGF55hQ!hHTcjMOfDmE#?i8 zoJdsmX;uKzTbF&A^TCs!mfT=Mm=#Kln{3?LUY4t76oYJbu>T^5lb^n|uF_VBJ-xe; z#uA{Lg6;i!N*WUx2Nkyy%@Q|F@6vBvYnjUeC6|qFA)o0dqcQ5cN$xONvJ?u zJ;I1JhM7IagbaOr8W2wKT`>-vY&>i^AFDco;c>h8xyoyK}>*5rz!ag9w_Ig!x1T>0zGq-=< z`6y+sHqzxUa%2ke9xt8}^)*PN&NDQfGpiAayKiul%QYa(aD8_4rYRo&!Ar+{`!(Ib z{=5p$!^_*`1umf~x4!@`fv;YaJ8O(t`*6z#zVeBSrHZ{?kKWgPrCdp%R^q5+#iP_g zhWSwMnWH6SF&T#LKLRPczYgZdv#jUwT#4% z$Qj53>mt>pcKd=UzENhwEDJE>I$UjxiG!{pvN{I;sow%ZZtw)1@FpU4R12}yb*4K5 zzFv=jo8j3m>9Y7u)mLu&$J}KGH`PFIgeHC)G#7$-Mb@;e+f%+XQNilnS=LNq+um~I)5X%;gIo=vBAD<2LZlV)b@imA@1mvvb0bz2x_94Sy&yk4Y(Ez zg#A2)++H*tPX!Fg<%PE*CfV3cD$C;_V&+VuLpF7;Ud~t(sU9kBcV4`HusaX#G#AH* zCa8|V8uxL#=Tr}pK3Rd6DXMsq%9w+_7P++rd0kit<%1W_c>aN}qbUAj_iZ54&?6Lh zUx$Tb9=VpE90tXL{N&U-q)Zj^Li6`(r~`Qo$ZlGFlkf+7>`iE4+Dwww;{^G}GX4gt z0Umq=T_waEmKiJle>LNW6)F(w;7qgNC~zo-8sROb>{k*L3{@i6UZ~wjdL&CMK7VxB z;<8)U__c5Zx{8L-Z)_oVaW1r?$2 z31dKkIWQG`ZuXph7DIOj%E74PWuBB?LP1AsIowWT*eHc4TrwF3pTjrb$^3qzCH+LJ zcu&zt58MIW-J7w%CG^@1QKBq@BpAGO!nCa-Bh(AJawIt8Xz;q7?LM2Qz65jNF2eVu zbL0gj!OLgJK8Jn$ooKo{(6c>EswEV*HdVkOHpWr)v}@dlnAXoH*ZG<^_-T&4uE@!> zAlZ7@n~)%U-j+(tJB5^#F)u6r^jY>4mp#?yHPu!9BWAY5zG@`7ikn>3X;{@9xl-`9 zvPdgTZuU_lp$LC^u(=&<0=K$l3s?Y=S#|zhL@u<6yuC~0qmw$v%1lzV<0dd{G`D66 zj%ft*pqnv~moXd;p>TYv5uQZ;93@s03fgO@5k5ePKINpz%O(nWTzuNbam$S%bB~vv zy=&!R#lx=n^>NO#{7rB|SMb*eVu+AQf} zt{qm;xszhJ50g9V{K$wX|3G?i?ms^9^Onr*TfkC~$8^sUpPOKPB_w(2gkD>P{tz;% zb&1!tI);V1C#uVgkYs?yD?wN6@~2B7B$IXoNrAG`<1gn{cB z(-{PifV6MBGq_#fp}=!F{zzb;%K5Q8#Cmyd@hl5q9m3}?D!mXs+cxbV3%Q?H833P- z5UZlwOP)B$40w7+-0baSVB+=wz1t}g%bH&k*Vn83feYR66@+s5Hw8CJlq10pu;e(b z)<#7_eaP#%0~a`^JNth=MqPp562x{OC-g~~E~5iJi9e7H_~ZZJLyppcKMqipKJQ-@oKgs%R->bL8T_$N@=;#_)}!8DCo#b#61 z^gg|u?XLeiw8Fj;^U8(`QGq~GnGrCxJsYN7^EDlu&hUJK$yde3`7YX6*H*8iPJ@>U zz26c`abX5FD%FDD(j_OnrsnNK&`Ow zjns?^vAb*d z$TD0BEQ30t#r!FgG5`*+KX-$I>E2*rSEwZh8liEKXK;E~y_ym+-S^^byO;-#QVtwV zvFlm~EkJZ?M1i%Fq_=~T7j^Ob8P9Jl&u_VpzjewQtBVz&9-nc2%yNBPIP|!ASAwQ- zrs_}M{AM~j810)Ll>#P$!zq%%406fm(E)G(Ip2XU!1u1XyDBZrI2y@4r+SMV750o)-lP7l zu6~y3gszEI3ybw23d+$DF<8IR$BXUx$<*W1QG?~aYl?MNoL60*DN4(z9y+qTnR(N* z$@<}MCXplPCP8?~(Nm;Ld0a3Av^DhHX8P>9n1+J2VABU^jo_(4{-HdDgoBQT&a+IH z88<^eupDgNTsF4qj1ct^;m6L$gC3BbK3d&2-y1vwU3@LSeoQ4yq%(Fj7NmhEb_>r#t)WR^Zf z^aNdscasaYn*`ulc2c!eqj$%EZX(`G;7kH`;*Perd(G*N{VbPyedo^eAFQLOJ9Xtm zks8nr&rV}%ah;zp&kSO^H)*Ge+=UuI=6C^)fuS=pgA&$*gxD>ltRh`YeaZVbBCA=1rw~V;c_&X70Ktis~w4 z)M0P-zSPADYjUtPx@J5duDy(_#DtLBR~9Sa0=V`Pt^yNGK6`bMbp@T^lj8#h!Ffe^ z1~vj6j1Z|PcH zfBURFP@H-yUTS{J>yqU|dA7tmvDB*ZkAeA64s;_ad>O+{$Jg{tG{9}(b}canN3X7& z-uKFG>Nd6#!>Zza3n+z3faj+YmN3~|Lc;=|2Jf~6iJv~=H5vn+Dp6!4D|Y@|>4Hx~ z6U9#7@QqY#l+$W%<2mmXs25&-fa*;Gz>NH+R5%^J*bpQMwLqQ4Bi7=p*JuA%xexxb z+yL2+>+`x^z$SI7Nb^!^+f97t3 ztC7#WLtemjUa5b&Mc*BL*-Ln)d-N8HSW^7}Da`SRiLD(=4)7WV3Y$FUO#OMvX$#M3F3 zwS>p~E^QM4-6RCS1rs8#LXn*;hdmY))#SS94ZBxl_h!DI>yX|yU3j)`Mla{Zx#}&l zv}zmM1T=fQ&#Q~Lz)cFd=iV9?C3-c8ZcO+H_Akc0frqt!KUBK~{97=^M{(<16$Jj= zd57)&?oem7K<mwu_q$TikC>S)44dI|gCR!0maSHx zKwi}5x^WHxXI=_rkbtMNg2}%Y6Vp^uy8As5NWZF2HX<4u>xa$k+04^!&wjGR1g`8r z0;0f?E+cs_T(lO7NY!#oX1hWKG@#0GdWJBC#h{bHDbaB}Bz_PH2<_1elE_Od4p2~j z4CY1yADzo$4JZQ`Sk~+UD($>W2OuX)M8E{509)kOE{1l5mUfjddDylE(+IR92y_Em zy1l%i_N7kq`n^_18`VJI*-tcXdkE4c3sNRP5t8*hK~l*?4pPh2u2Bw;2#MyOuE0wz za4!u+B-VEh(Iuh@Bum&}dQEhk4(J~PW{prLpa?R96c1#*#Hagr(A_^Fe+!rM#gI2- z>u&6@ZErbhGHfD8z89`|aX;nwgkk#DNas2icV(`|j?K)tVC9`^e*txp%6zTY3f^E{ z%uCT|dtCe=r4(&d0pcZ)F^IhD@%6cSmNR-qG^|surbs~)$3?9sxh&~QpOZan#ied zryUeYGkAzf^hQoJ83&2_s(ci=s29{df{Sy2!lym5+mX_Y=Q*ZDdW|YZ)W>0qRI^QS zTfW)Fg#nw@;_>MoU{Dq(VB2cxNqTa^3uI+{7!gr+B)>@t#0*isf>>|MmT=|O&1(7+ z!i2s&Djv`}8jU-Yvz{FUJeNBTv00}vV$MZ*kCaZXtmM%KZ8pVxLD7`-K?^cXLo{0n z6Qe#}%oh4=9j}6Xm%}HVYT$J#-)KEPZ~M;!UCt+e8P2hcYR}e4mW+}{=;Rm&6)KOq zU5`j%$XQt)m?qWZ&9FHg(%5&h%MO=E6WjC;Rkm6M&0A-OxbgV$XGVkML{$2xEJs ztHF;1Gmj7#u&E04KKN+7P+0y|T`{lw?X_5~-i!r}#@?MyLQEF(1_QgD6kMQ~2X`*5 zTYv|Wy+kAs7=-1YkS>n{Eub<&^hWL6A)vUEHvd=o_8~_0CH(TeS2IjOD(sUzq94q3 zCJo5lqG$A5^D=LkQ>-pB-e;_PSpsQ3Zi@-Ha#b^wi%ZUw=Nynb2vZw~pGeVyvLGhv zviX8nWzS&X7IupTH7{ZtPq2fmme9U~H}8=+@S0>qw-6?c@%-{+-E7k6)BOyR4Ob&2 z-T)N{2Tds5aMP&m33(enmi8WkMKR<}5HYdFT3E?zsruuJHRj`U{HmNmMHP#4MzRrZ zW4#{C^{icg+_|h+=n}#DyAjK0J3(!QZd!;RE&GZs>+{t*DA?;?tT&8TJ07Y$n@rhr zRltOc$!{Ww-6p0bsy6Um)Wy)XX2^KWVt2+l(^y)gJE_|+;Em8FF1Oos&a<9U-mCRry%uQuS?qj#Zw##6Ug){v3IVxgDs<9AY3vX*ciE zz|U~XZIDABg2*QZ!MBDxTczAQ%+-g^2o)v8xOY|gC~{E*!XaNA;x zH?s@4=09yJ9GB+wQZ(YB{ob_U&+_=0beGgh6LgvRyBGy z1Uov+@Y}YUSx5O(pGtzt`P$WZm;1Zsk+FRouB*cAZTZS}@p<|E23Ix#%=kJH(m=cqD; z*^~o&*ol~DXj9Otc}&s9H5}TWAt1;+GyxT}BIr5@3TEHQpFA=b|1(?eOT~Gzan8ib zp*--n{GJt}a+udY-roD{pZP1vv9ZbwcjwPjvzVD2pF|1oN?TfZl)BBDglEj_JX<3S zr$aP$>+qdJcCgCTjnv?#A)#s~J852Hw}-=Y_*7EKK@ysFjF2E9>9L+pF_u{>iF&+7 zP)lRfyXT{lOZx71^>*BfXe0Zy!$)gQa7jK>vLw|!%sz<~4`4FWnwmRjwOCtY3=p46W2skEtNpO3u$ zBko8Y9l+PgKi)$7bnVNBT7q>H2ye}rh>>=^mb>fSTR;GCG8FMv z{%Lp*q=~4amSjrThleA;w$T>z0bPVH`9z_vM57;95P)k+QNUr&m}iN-l>N+%5ymhk zy6Z$RrVzN`O0j^9WSoQqQiz$1MU)BJ6JHxF6v?TV2}hm@6vxkkb>U42EB3fWX+Bpd zCA{p=vP&I$Z{5DBpa1@=+`rTv9RmP(@Gp4^fY;0QpMMTl?&bTlR2UH$00c;nKQaJv zZS+>@_XALo=PO*^^@OX+zqfJpXA^T1ey3h~_PE@Ps98?uW z!k#1Y4B|ZuczpWYTqcArOWb@gex9qHJrEmHfBD#3&HFHpSZwXQM(pA>3lsnd^F-{$ zcOvfojm7+8-CBPL{YR`3U-Z2>-Ta2JjWg;X*65#22gWGScas9Qhz7(BsX)4HI_wB- z+cY!>O@;!D@ibz9)F55x3Q~p`;APuJ!TiaMGq&&RfdDS6B&8Rnj0FvV1J@yt50^2G z0BH`e)90_#5Jn%SVWd1yBd~hep9CtsJ57LDC&@z$9JYDRuBzeXJ27j_D$zvanp0RS z*3HC==1f$%%Qj5ecs`AI2`SAwq2EC(PA zf6E8=#5LJ`-2qbTL99Y;~O2dA#!|Gy=0BE!;YV5{B>4aS{|kZdY-b~emB z&#r^j9;X3lDA(J}t-Y`DeSUs^Mjp#FUo%AzOEltQ;k5MFe`_kyh>c9-E9&$t?e%zs zyai&evC?d1HMz@2cWAd#6W0+M`y|)@Z$I-sn)yG##ibM|n*u?g%*#SmM)y=W1Xo24 zP#8jsvZ}i?JU_SI|9_*lv1CLI0gGsr(K4z>VBo9*hvgM5R18(dmx455M%^7NM}t3Cc!v@Qy~LC`RWD$%;E5Nnrf5()g^u*7-g1^ z;|n+`;@dk+9_A*9N63A;UQMAH>A(Qc0lq#6vpdR3wvKE*1MX?U)rT$sPyyp=_x@M& zKbI-GJRQp!T4W5rsQ;>(Bqi9QD&gG0UU7p7QIthiDcrx?hW_i>NxH_{cmW0hl9*n< z{VM~)G5`Qr0p=}X2(p|7$a=OQyLdqihy)pO6y$OwKnMd$08$9s#|tE~i#rbyqPvh){yibUz_p{vw8_ z@1Vern_HnE>6FF05>{OU%fqX1?Ya-1`!_Z4#Sfo@V%q(d@8o-uSW0%@vj2ks@Ap_| zD7*=(z6&cG)#MzVa%z}c_%up3Q#YGic&Rx1hR@t|y>7FI$J$kwU8UmomY;aiF<;vX z5vitKsg#q~cL(8^Yu3o&_L>P?b(<)og7;LYbOuXw?nW-hgZCo@l@oS#3$> zb#VoxJ=t7#dG&qBbowlB+?yiiLz4F_us!H{;8IeC{?9-{IR?a{=8@I@4jm<|-w6%A3_ntcaPyc{maA)5ZV( zUs`^)vbwhU>dm{{`FniCCw#^i{2?()Qi{@)p)AOH^I!xpo$EXP^@$lhBIU=#MI=zm$jJtQ#}En1(EMlYrn!CNJ?4k7#yNf_13 zP-Evj!kRgH56wxO3`tU3mWu6(l5yv7<7YrN*4rcJaD4?D!}ZDgIU5Y(06zlp`oy^b zoU@M52Og5o7>to-ybGF;v(I&;(ay2(qERn!anef1Y~+6ah|{tB?&X?m;t~Pv)&y28 zkO?XjEdj+cd0m$A!D0hV*jX#0Gn2`hLdc<#{RRP>^u9* zz6yBhyskA+Cde2E7OX^oTBihSoBoV@eRDqVjz8G3F#XmA}r@%36b` zd{na|+S!|ZF^@ys5}b$}2tSAFNVS!q-se}gCfRB4*1Z+ed}J zceU&48g~Kc!wO$(&FdxtLOdYE8Y8lGGa!V^4!+)ZWelC*+OJ;d@4aIa7|CtC+i>4- z+i={_`|k6~%PUbo{;cfueJ{YbmzFu-{#oi;>RfUK1URBo+4IVP+o+Zi^cWrTD7L7x zp)>b|Vi+?y*8dA&%FMJGH{3L5UaUBirp&q?A|Ja&@)N>KD`)X4&2kpP+9ZI|2tk=z zAe14v@gxmQ5+%Y$rv+LCf(bxzQnbKLfXM!!^eBK{o&XLg1*kU=@9;@P2M@LsiohsR zEWtqzRAmlt4?3X%u7WD!AXRQ4Q<|;T#<3i0w^(lYb-qETgvG!j_jqu?fQP=f^D0h|e4_t5tUCL|W$IctiWVco8gH2h2RwHD!DGfy%p6>< z#eL29-On2QfUB?<8QHsHui4q_V9S#mhf1xW*9Oh)M{&o!fq{Y z#^!3)0n5f+yhB`_g$IHcJH$36s;Gn&lGuH|R5eZOm6qe#C)lkaiq%Fa-J>0L%ZtR{ z43l<>^6w#m#;DlgbQNp9&rhS8rf#}2I{-DCQGV&5Ls*2XWC5U^0Dun!a2<$$1{D4X zK=gZnodtA%dalRMNFsVN<`nagBUH~Jq!(csGz$CRij`GQ!isb}k~B{t`aW1quMTNt zg&>fAn}L`2n}%#dzEx%>$tkf`Us4(~9(23%3EuTZb*%zG$!_C6jDM~yM~l9 z#)^EbGd9geT|1|eQmbW%BRA;<-z4)Px~$9G;*+wG!$&VamXwdqJXVrY1cF_-P|n1T zXg91KvoFR~o|C@cX*UrO**sUdXOzZZK19@;2r|*=FC2=eoe3Dn{+@yv#tF z4rWQnp0_$C70pT~G)!hKrv?_YiZwnxG=!Joxdqw z>+8qZ4;?CBP2e8}TP!riwxX5Yrcp0}DU$=9C&o^U($1H%UM7bWyWJm08OSsZ;zig= zHig}}N)?t$aXRH90yQijU&ULXt*=4FF9LRC-;~hvYvwm|&#VV_$89yC40~17dKP-B z(`&WV7b6WSMFXr}rC(gPd#ZWW*d_297Br!VwNzUC=Z+|ACAPV<$UAZBjHc}3Bv@zJ zK2ultgsdm|jzap<+F@!~sg<9Zn&iO587K71ruvi>F?m7E2VP5ppf#X)L*9e3;ka+Dy2s06JTbp2h)9DV3w06fE}O_u>%}B&+XJuQ2^|^))F4#`vVqwxyUnzs7>(?wPF_ zuFtOBn&lQ*VAa)p6>s4Txr_j(wBD^e_a}b%`SQpA8o1PYM6j3|iA)mJCM1PkH+#R% z>#JERajDHI`uAJPLg_e7z>a-Uufu=^iivXX(MvKHowK=Rle)2a5b^)Lk@;E^Eoz}K&u>F*k&sR z;;?j@yrr9B(!i;Us1?UZVVN}07`#J^y~(GSGm#ArJ+-bxoi|UMeEdTD2KhKiJy*p1 zX`mzX;V6gJaEZ(J$1bF~Dr9>UxWpHmXEMWFeIgDu`stV@9}3beZL{M`)0ce4*9Gg2o$aMgwX@Z$Ij2o%^iGjR6Fy?;M`p!ZnOwq0+XuRiit z_rV!YJ6nRT8U11V$e#a4^3Ck2z+bh3Hn-?;IvD7lIEqZ6 zsM@=*@-v7plxlmuI*J4TgWf#1=e(;O{(&G9^nN=XuT32#rfX=HB+0|6Hn`d)1T_7s z==iH^4rioOPfVRZirAWv&ecY^eJ4gF;~xm(NRc0dRqDKqul5|_b!Vz}ApV=}Qlru>NcO{-NmVMSXS@G5_!*No`Xa~@`?Mu@1M_!A&Lh{B zi4&RP)dk(fNI5cdQKn5>Y~jtEFEZ&}6G;(yaVN^4eY#3vbz8aPgNSp)2!p^rvvw(1 z2}pIYW)a+}e{=B%c&VDqFF~ZWt-hkTbc;oNBYCRKWnArYmS~m^_Oox#XBm#>J zgomoV@4OopMHtFkUg75SVlRj2g{s4;Tq|fNav}7#!;VSxD&bd2;G?opzNZi z6eJ6|*bpoMx4^Asr=0>7sl63KH~2YlFm#Nm;TadiBaDIsnM0Mm3+Q^JZw0w5AC&=w z_d^ayDeq_;5)XIB82Wnskqaq|4~H92H$KWe3V%w@gDzJ3e8g5N;p*zd*AM2y=};Hn zVHH;_gn3=4V(=DtiO4v`73$@DL|80RWip>sdWi~Pk3s0 ztF$Cw*gHriMYk8?`3MIJ&<@nu=VNCT-rR}QAk*ihTcvXjb=*KVAU(^-74%R+;7b3h z4LSgBPaEPQEaV@KDU11CCZsSi0&Yajekmr`6tvvBhqNG7cPL}2mwBmIeDn!}0#qb) zCYO=NU*{1<0ndIo9dnQYV(quGk{;HbAkT4Q3*Cm(38NrgUV=+k z8mOLGM3SKTIAW+Bdon%+YJzJgvHwtc6KSbe{TO7y88`!)J1L!!bu%sPrX2aXP%<=C zqZG&ANW)Ch(k_b7P?a*T8CY5D$cxrKUsa-Lc{F5-wVlCxp-^X?Nt~Sn#riFekIK{vv64=I;YMtI3%o(v)XV3r4*hPs(9A1cBkq+=%O zT&CxD&+P$H!-nBP!$xS%&TuM=&R1BYhYP3pVPd6MeZz(I=?TEMVL{KYAQu>WhvV<>;{91mp}Ow@|YC zc8ST3?91c&NP23wFMB&4MiszM_)Q{)e6(An^)fjFIv=w;$TjLkcs^VMwRee>VA`Rv z+kXMZ2bagHjzKaZK{hoZ8AGo9Hav*pLC2FQ!5xqOLq?FZK`nb@&Jm z?m^npxBJu=n&w7$K_hO~_WJ7Yz~R{nOo~WQQk0oq6Ca))H9Q-E3#bwg$&9yT5c$Q5~CRfRX%ErlJ| zQNhr0FLkD|%^o7hKvBR`5cFCgj0NLDsYn=dI@FxKpyi9=-jy$0*R`-JLU0vE1|LqnJ1>6e(mj^4z*4g=<(NuE z7-d!8D3}mP4~dB#Cr0S=PMy@o2cFbP?Z^tGwuhW!5JS!~3jd~O&!1xum|4(B0uMd_ zS0BL^2sw+orN5$fpE-L7O0pqKb3zQ5PzsNnl=VGER_x(L)PF*m8zLUU`;$L^EJN(t zWr?=&v(*s6mm(8{3uW_*#A9%%D|&2l5A>#;MUxsLWudW_glG(#eDcPHcK8l*H&ZUa z!+e8L1__|gr=xVFFHkDv&rRCMpKgoJho9uP!aF(-7U9FheI=`|wny&Nd;D6Ap+o5& zK3f5)S&=1JOCLO;lp;J=jHxpq9y)+OK$T z$}=%;luG&Q7fp$+op35N8)gv}FPc>(c_)%Yi!5mLG1({1#V2h*>(xr?2gaZSpc`QjT9m}ne z>>C{|gWQHFEbzet;$~BFu-sa06%{8wGE(9GQM}4j@y9NsDbyMCg{?F#&RKI3wGy_+ z^ULbuka2Wv_AZa=3N#lw0MDM^HxT1QE-yYGsXO@v69aNbt_;Tk9PW>uu9B+u^-IwJ zi$T0DqOg%*o4)EjTt;_AI+6-iRicyG0OjoL=L#`Fgul4U4k9OHFlaOr&=AO920l35qv4<_$OfS)XHJyd$w5_8&U>CVavRu8> zE?RRZZQiwy5ZOylP2+FFcE{_BZrE6<9{M97#+?=S8I|lA#QXM3 z&B)yS_4$3I9T|B@=*`4tCLiS?IdK0NrB!Aw0PpK7*~4sPB1h(loVjgNujlvKO8dOE zAZ#M_HCB_Q!&zWdBUX+ome2I8RSF?O+lOv}Y%RS&yHj z-;qaRL*Yb*2oe@z4uwM@hp@$I3k_ORnCo-PfMd(UKM>e}G34HLq3$-IO-a+DJaPO` zaS!TvFh)8`tf@GC1icKpOpr;H(O0<_U)2*ieV&U?iR`zxWHZHOC2q=QkY(Qy*-u0k z`-q%6;;RhYs~zL7(o{Zab$BfPjah7WTm0p`_!_lXBQc?MAR8${EsU=3PRv4bz*BKD z6b*TSo3^*NNS(1S9VsioWC+=bxae8(^sJ(&LYIb6-au^l{;9{83WuWemw9nn_D})T zQcpdZa6B#XsO-Xx+ozE@Ki6>AEKy~~RU-R}{HZHM_QdWl*U|Nmzl|&YfoT!-O8puye4JBx97vVlG+Vb(f&7w$k6+V?Y}6R| zbLp;7nl-NCU@Xq97AgnV%QW+ibtB1{P1St#zd$e2EX#<6rWS9%d(W(y!PPH-b?h)n z9m{^ytpELFT9*7IGXM9t;AQSL{~a!o`72zu<&84tguK{RS_v-koja zo?+xZLyDY|shuH3Oci{c#=Xr|;w0sk(#A$2kgnzI`^^HUmIS00LS@T9Es_ZM_T+3- zLlZVn*cIav6Qf#=;1V;SY|RiOT%!9}hNmMO0*CjCRXR#d{Rq7fMb1Z?@<_A7E@P$XH9NnlaYd}Mxt&na2zU5~$5mN&E%zE* z`vqy~7ljJhzj%bj_7y^YUF1!al0`*#lfvHD0fNv#7{rNU1r@uFsR6k}h%H^f-{(&y zPYk~)H&Dq85c1#hE#O4@5iafL%Ch-O_F5+EYGbwxaz`fmTM=&(mpKr@+y4JR08^0x z^+c7X1#rNKe$m{YV%5=a zu->VEhpM(o3$MrC))W>Cp8`5PwE?iLF)1^G8JD?QDmAp(QHDNZ@q(3qIaDgN!;7-? zc<6cJBgLvv$th!eyfPdgP<5s*!{MNwDW?OJ@F<5czTUxZFs5w9eQLqFhfQ|}lAfDAagBD0W#KWAkKRVCVs9NIDu>zZNOjq) z?C=;&&eq?}9d{)bi45wvYe$XU7bGWMM!Uo^_Kzo~82jf*dAArG0L`|Vk0T5Ck`IB_ z{B-)eL}1oWHa#&LE3F=H$8wp^>K0@Vi`q3T5v?@Gb5iqs(XpAIT0m>Qb)Ymp{W^3Q zbb)g24M1Jl9&Nu@>f(8aiE?pn)QWRem`3O^H4V)Wvo&pHZng%3_3lV<8QBKH21w?$ z34lgki&-Uw9hPGdX^MrFn<4eoy^X1@e*IFU(x;hO zd6D5gGeaE)uz{!;;p5)(v8%13ifxnIY+K?O|Tx0wJ~M5AS^v` zU9b061ZG@Z;u^gM0eZz+ifX<58{;hJH!N%Ur{0@ivJ$tll80p1Mz5?Fn|l7|2CUFA z%U8nFIN87L6FWdZUIU)~=|nFOKK9bQWPiQ<|E6b^tYq_M9%S=P5>|d)R z(r|28`?n%>dP8{eNDlS1U!Qh8wqIpeu6t<$^6Bou0%ZSH4j%Z;+=iarPxL!p%&~*` zud5`(FL^vSY`Ta%jlhIs^V9dFhMy8$z<0p*uVKs63Ja(ft zT3vwVsQlj-fEplAtP~@FKiaZugpPh3bCKTjuojbkX5rlWb@A+kd7L zyXzdHqc+m0%|5y|H0$+m8z6&8<3zs7VIwmmhgH2@NeywXRFoki}s)JC$1KxYI9;1 zfEm@Fw3W}KxJ^ipM$a;U7|xGo&|qeO{~A@fc>-|H;2=8zch~=B@T%Lr3s4=^f2`f` z>-i|JCd}%2Zw_D@A}&hFJe6ZsF7k3*eoyz4RU5-uE$a9tQSPsRquCOSa=8q1Lf~1)wjVb?{ha1M8yQh-<^Nf79+~ zaDtl;&`Mc0-moqM_y8Q#Cmj{w|1w|<1+Tw<2P2SBpCongf>|;~0rCp;K>G{2_hEq_ zZaSoeeG-)QRy+n$h4O^y8o9z%8Soo{gn)&9{LCK@Kf6p1-0sNk7M3Zxj6;HClu!jZ ziTLw&a3Zzc0En!c8*V!E)86_MUVw8<Bmz*eK}@K!Ka4&bS&_U(RGwOf@mRhcMt? zphMs%pwsbV;1W4|wDqb~z%2M53cac0+|c#wVFeu89_<3KA{A7+sm^n0(OYtcWW!M> zYXF0gXetI&m`U)=kvOFFbTcUtGJp(OtJw9cy7Ey#qLfQ4qEQTkD*0{m?wCcu5QI1k z2nmgVK3H=HkqR0z)DyR$t?=(gxj`mpMj-%%5ktcfxZ)elsn(a>%NDg@qH^GkXpu4W z3ofHg7^=oFWVJw(+QN*FF|)#`SLQWmqw5h}Nd)sSaWU0(v7o}_8lO$_yoUO;fCJX(Sr{<+x*r<@R|)Cd_s?C-AZJBREHI+N2PR( zIRos+fX7xqaU5d$xT1*97t=1!GhEVufDo}d)SX%|DQOKciKgikD;y=v+l2HNK;hQq zM(r6T&>9^m7?qdx;fY;e_YhaHrl5T0OSf&HS}ZX| z$u{Fo{*7KTSOT$R@osb7=i@U)^viY@VdU4bfqE6AgtO|nq4Wq0{DPtRZqa_Bw-y2 zw{(}@BS#()2RSym3MH0xw&o#s+)_aa&F8pOn`%?-%^*k#3i`Nrp(}c3>)I@$e?bA_ zxmEOTrywK(cGwfDL!GVBg#)`ihJaUs-fUxV=!JH^4cSa7|8r*Yqh>hRV{Rmc4BJKP< z{R{7Ad*>z&K>;nBOxr5hvP|x)P?sw2+7;?(CzFhw1iiI%;{ZAn&WR@KsPTRrLTtqr=ztL^5yl`_ z#G($%$HjOAt0w{&VUL^N(op>hQSzWAhIV0{8zxw%0pK-pR7h&@L8i{oh-O@xJk^!1 z+=mRH_8&o5k*o*Nb{m9*vTXLG!6N-IQjI&hIEVj#_%-8nVg_oQ1DLZp>|Q%_tnSh z@Md@aV{|!y{0xxVfu3tlT6J&S{J<#n$%+?x6`MeXa=MZN;gJVhcv9116y+Hl+6?P< zkZ6?}W{O-a(H=59uX;6U40%in@`-xd3)I=CdzTY>2yyGkP1Pr@usHP%1pTG;+d1^C zimach)2xwT0rXXWqfkPZX%eP5T&FsSKsspd3!roZN1AdkKxX>Q_8T=QZk8MV4h->K9CLRxw zm$o3{Ah}A6L=TiCF;{MAMDre_PWQEoHAhkF}Qc44>qHmU@} zR}qXiflXxTd~?4tS-XOL_%NEb%z-Oq320OFm7ghHkiTK_R~j3Sdq%>mztMZzeVTSX zvcc3#r=vdZW<-IEqkPOJ!QB_uP=^;5&_-;Gr*+(5#*u&RB?hxU1NitOrD;EWeZmj^ z!aH_m5BAF5rQcpa1+9%yiJEk_BDqP>0qA*L=0*C&)=8ArBGiJnr~>>C7zO|_Jrj#4 zTgAC!S9WJF@N~8IRetJ258<2C_W-jLL$uTg(=>MRsNHj;X-EukRT;#@Joiyx9vYK2U z6gzh>yoI1wn#+P<>HvkBf!oK2O4*!oZ-mFKeAmAE4jyK%XO5#}1D;OM zCfh5=TwBhI7Rg?;zOS^o^j(la4bu{w zRV4E3Cs$2FT+!WVuaQrckP+i`P`n_xa1F_EOgRreGO|MgS=SQvt1|!JyQ})6{t1?V zPo%FxAgZOrK@1%t&7q6G9K&&#KDKgys)2DE*!7)A6uj_Khe@+nC){9*l8J4m#V@0;%$GJ#_V;#%-&cRe z=D>CySLbadHhcrxfbN?C%(CQ1eDHHWaRD!QGTi<&2pilCE(TA77lZqfDjO&n47XaQ5RV5L%eCp{R#={r z+=UHxgEz_duiz{6Qe4Dt;R@)6tNR4e87QuSh8{dhn6QBe>p2cXj^!lvdX_|F3S$xo z@USFJ&#m3NPraT;vsWI=Bu3YXGnXI9mbw zsy@?X+Dx~78j$&`y=d$N01ZpPA(g7xZhu%ID8O@7Y~3{WI9W?a{r`gS2+BiUxXhDJ zo79$8Jn!9EiydB#u9>S=?3?lGTR4d%iI54&XCXa?e9&ewj{-#aE9xYbut8-IsE^JU z!LOzy{}wRGcYK#@@kCMsBB{wCX&5VMdWnXuufU_Ej7X9~1<8#|lF#)>?!pGU!Oh^q z;A-%NkFfovn2{0mv&abEaF$Gqiew>!Q8FhsSlHT!<~^XkJdmlqao?((@l1oF3O@=; z1b~2c*;G^ko}6=L&apX*Bs-crROo4hSy^@@4|*L2gijsMz=Q0@)#7Y*?BFA3VHE)Y zSoc2m-l;jKtisIBY)Y_aCf>Q+Xdh#QdRJ(vDM~QSVB}qEEmNXl>OH5X z97WE`b|ic=7zn`oZ+GLtxyCdY|3gH26953u|4cj>0N_pBfBtE-@nF+Eo1}on7yuCX zTL%^(Zb#V>emg)f0r)($(_9Z*^#1VqCiHs;Ly_GT*){G35${6xQQk|jn`E(?3z_!L z2c?1K3bMWOyT@L7`^LJpqtQ+?+*M>PTb{H5`dhzmKdXwLg&(R*wTWVL^W)jDSl4`z znj_83V3gbUdVVCGXnDoX=JYRZW3imN(44>1oJ#R-PNMo6HS;-p{(`T5sK4Up8yk9> zH=bG9YLC5LOEXd}fJw{Z)mij1iD5IR-&9CX7YX!Fx|ixY;4vM|3ae&vYYP{-_V%amFsUuhri8Tm}JFov#XM+xoEk{PntBN z-T>@qS}mGmJI(M^3Zbn!Skq=gY9rOVIieQV-}7uUwPPwwKA@I0MdT4`C;4O|li)e6 z4~7lZR5K>X7h0mR=6a0$M71VQQTxeP~P4baN zE9{rauX{UxC#&vpZ-9V&PM+K&M00}tOY?#}+&e$W%b_8Gd`x~O>b2lum?hPc<|EA= z?t`+YrxJ3{PYFE#P@Fp*zV+8i`d;6B4M0FUIgH8&8UcU|Fx~D$&SXp{Q#Jz(;7&&+qSIn&n>B?>oE_HDSvfQ%NEWd$DwF&tfcmjVfhsDUvk&evL3UYaxp zABb?>_plb>g^V48DquU)SEFs{cL^sGs!j`_E8D`aNLigs#BIO6s^rN;4YgEc2>oLE zV=%lBhdn33wiQO$t6vNZiHi%X3BbQ*>^dYMK`BG7i^d(wg~XB6Au}1z4Ti!8EsZKQNc!m3e2?~nBci#~xYTTh<<&bh)*>cVFSuL8IfDWylrdQhu 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 z0000QQX7V19D+y&U;u$i2ucZqJP`~E(ooAd3xXm55`i26HUcCAgg^u!1%oCBAPj;o z8#y#ZBO=&1fB?IGc)CLA()FF!B90$a5 zlvk_Wz7B2G$8Wq;;A}qCqO9I)zjMzoJ7q5j`c6hjG7Ayf%Bm%`W)|(+GteU3BSLD2 z4@@BvX9&|nw9UIeXtOrKF0?TlBe5FkVF&7(b+XFTmAPvESC^hsHk@)>0AcEcQ~6u} zSRwXyq!I_;UH~2@pecQ_6@;-c*Q(_@ghNs_gxNxG;nBNCOf$r!5C$3k*Qq{tNcYCP z-%rgX4Ja8_Y)D$ahvS8WuTH4HKznJLLRY&jKI5R|nxzNMk3ms{6cchnPDsr8E>1If z%65kAvz+9djy({3K#SM|SU~RqdIa0QU#qn5{olRYyWD+ufdc^H1_C5e$=`2he$znD z0rvq89MjC~?h&Zex*#gR*${wA#R1AxY$_U1$jDPV%B4=YY)xm|&xf(Y%2hIBEJ$3P z?uKs|dMXZCBTxpRky!nHt8Wk4nwhNy|DvQyXyS)?ZahpEOVYIGJKrC(dOy>y z>lQ?Zg(xvHfaOYG6TwlY{ko072+Tzr$b1Zd)Gz@t!w`btfH?q)2#yveKvHVV#u#I0 z(4a#H0(n-zAKWIJ#jt?E!4h5-FgTo7TnP-0$rscB18@L`&lX1?%Buk+u)RS74sh-R zC^$X<2QEql3VA?Xh2w3ENj705?or;p+Ba@DdfjHMg3~1XbaJN}5u$5@y)AYwH<12f zkW+crLv7qL?Szf)p6Vm3uv0c^tEhmHV+JPxE9tm6Rv{NW2aM}P0UVqW>jBj1Od5V7 z1k%GfYy@OJVlV^^gk4NRTL^XdIs-DF`#M1K=JxA=14?Z4>7gMdmcs*2yz#{!X61=O2qS_hVt_2P>1}q3 zFi$-A;Obh+6DRnLo9Q1`ND=P)<)6(#c%p*RVK#bbpu{OS8nokR(u$)-H;xv~VAS3D z$-IrX@UF;Bd>I#VK9@x1@}*qBd3+A9O=3sYY=EcYDuqE^u9HR#V)5Do-| z^W0Gs^h$LFNZpv@-=w5NWP70oVEgX(X!Gsk!vP)8xH*Ch4oj9e&;VWs5Y|#T4QL=g z^o2Pf#L#iv=M1JKE-ydN5)D=fk}0v4a#<~M554y}->&^!`%?SW*lG%J-vE=@VkKo_ zgPk5=!1cAywXY!WpMAG68!$V7k+PREan|>L*1zh%1%K_;rLTfs&3`cp1bVb*vBojX zF@rWXd|(|J+mR>EY~xw((!fD30On)|pyig*@N}qQEwsZRvsKQVsE4*}U@D$OC4LSD zU;+dya-OX%WWwxk4sw8nn?Od!!cRDc@5VzZD~Cqd@)#O1Uw21@ zu3?rdoWh&94XF>Spb|5 zAPoTP1Kb~=UjTF|z)t{`N6}ge1bG=V<&(5>*-daHGare6dvJEH2_y7&wq(?5vFVh$ zJlmLkugt=%of^;7xjn2-r_Sz_S{P+j1Al1V6`CFFcDbOpz-~E-@t(e&{Xx>F^t-w4 z)wvPZ`;0JmdkG|S4;aTN`Gd|fG<9ZYS4~^AD@{!;ag_OKQ(n=mJc~Rg)@X1g8P*wcioYBAM?Ff;pl#rOig9h3xZ; z+mn1=g&8pw#W_pw=4Z=gd{FTF7|4pt6jxu&ma{TH4d532b4(!;uT{ZFzm;{@k)HKC zQu~T4-4XD~;qye8ign)XX3#zhj{Nj`qL`5^Ky1mMcRHX#SDQiOdhVI` zGqP_fG6Ucc%ndH~?i**b)?rLXCG@rpxQkK%rCU8AK4Xg6$>+CIz4pWTQ6PXyX%2s| zKNm|(fWJLqbf^hzmihN+6E3@s2Z-HWMnBgkTi^xUNW#Hzu1zz6?`*0*H?O<=^;+#( z3-#me;Y@6n*|%sD+P3R>$Qkn0b|Dctr{Vtd6uDt-*lvFGDxKX&s%h1V+IZyvR~HqB zixpvDnEOTaW5Fj1x$+0guc$F~=e3q=7ILQ6^z8rJUUPUhkS-lcy;{j9m*Ufw&Y){s zvplyi@>`3p-a!gqQ9@geG)-3gUvRpo=D};?F<+Oz$zn${5A1G>R_(bsQTk^e+1OL| zZ}81ubM&BBz+Cm5+rs;C1q_E|BAjw|4M8w_N1fnXS6)-SDR09J!MXD zJzbihxq2JE9xWfz>7)doaL*35{V2A!oz#<9R#_-(dl-m%uKM4JF6B5vqF@Z2B2P|a`HSpfNtDYTc3oFhha2q z>bwMHR+}8o2TM^%W(!+*T|hq@zYt{$%B>C6Hh{kaf6l-vR0I~4CY?rNhsxs3QpIv3qU_igmYRO=R@ zvg*cMC`0_ZmX*F)Z%VMW^|5eHv14OLMq02emRW9ZL_OwpUUv@-T~PuHLU#u73`EDB?8t>hSQ|-sOGZ_D}5f~EUA=QyTo zX+6pBMFC}gJgSzhnV-Q15bo#xt2bV7TBhuF`Y+*&`&XfbaQ{ofX)9v7=7v7f#l|LV z0m>G*Onl4U|5dlkNViMo`{gDqh^P&RB9tzQ*=|uO#2V1x^nj}Y^{ltSELI8qO^F<5 zhX!=$@Ho2zYlQa-1Jfe4SQ7P~qd;Z%z||HD)jX7o`T|%>RLfaA`jnEz%Ec4J10@Br zf27~J?^Gm-fiz`t&du1EWlP7jtb>GrAi*!Z7cFkF2IcOU=3 zL3i9R9+#iYiGd~9;42VC0m&A*O71-cr?d6HAH*%YI=KH6wFA&NC z=$~S=zM*kMFfw>mt~G16zmH3$I<1uC3#nc`>B2B*3Lt{aK{SR zdk&&j5oE&Hh;3GW?%xT*rp5V2v|>;C$!JV3cRiWF?^w!)2Gcb@s`402H#b=A?3H`q zv8yShYkmh&!R~+PW~|Ru_h=4fLuU&9mTFHLb+>S(F)7HML7Oqoif7(pN6d!I<1v5< zvt#sK+j=+A_HUZ)CESCnKH4P1=3-kKaFzQpRMn2cQ+@VE9p0CDuoVo_zuj8-`SmeO z(zvl<3V4hx_y(vdhZ=me-XFyzO`960fbZA}VeTNNd^Sy+-a5W;E2jNau{js(osZnjrv8Ukj!7Wu@`*smH$LbehbFuC9xXJ?< zs_c{+RlYH*#?pxO{dv%wTCs3lRCxX(^|C&%(2zs7EW(DcZH=(+6I$L5gJ7D+`2(7S zq_mQdmrrx;9X`!9Ocv3|$r(k#=4}BCr#8c+PS={&owWTsszocoTsYZ0GNm$~m`ctp zvJF_#X0^WcZpg3%T>e_DZextCYu`DpzY+wu->XV<%~qXPWD;6uD~|`S8XR7lxtH>sZ^$SC^m(|s>_6ER*~+^XIJSlDSF&n?rZ7uUX-~%`alMJ5Yl)s ze)}K#7&0XuBKF4~hRXvbuZChIj4CqR57KsLvm+zX5(ggb_DjZMD6Y@(zW-%K8Tx=7 zqhpnjQrbmcRc#~&C;@I#n5xn<$rKJ;ggy24eu>=hmEF8WM*>=Q%oE&f{i>=HHZ z&;LLM>=x=}u;9~oA<%yD%5^00m*i?JvF+EZj?HCNWl7W>_);)cBZ`Bfq?Eu9RR=ZO zZzWY9IHNjnkp#c2x>*xR@Y|}JwU7kgt-4taN$|s}o7Itoe{!)A{Izq*pgWu6@UkZ8 zRdXa6;1Dj#uHhm#NmHGKAM?JHr-0N(eEWf9cY{!4s0!(nP9?FZ z0TR{ML243&2G2N~JcWyL02jG7!qrEZ$e7J|N~%vW-0q)JxL?B2060jYowQ0#1nOb) zEu|eMQ4_*Xlx>qbL>P1pIF)S9Oy#)qt_mzOaka)3xn~IaMwnWeaV80RJlD459MrioXopb zcfEjJc4Dv(EYj?QmK@RSeQoUO9(|Gp3$;GxIjQqKHoC}?>%pTaLk!HGCaF&tKOzyb zi@lG|i5FJ(HvEqO>T$J8VQ8w*vMX9N*0SSj!>ScDROPH~7KZrXT~*4Fxv`6#IeRq; z!j~?I3U$(|Txf_~g{kSdmYvojCP?6O2urv!+oGi^w@aB3&M$aZt$HNc1;wosRoD;N z0@aNm=^2^1bkA}&-9wH!F22+0ueWCx0*%s^yKxv(l{FtOF|QQlZV5t^wp;1elt3Tv zoLNzGEyqwBw9M*0R1X5r3>N+6*Y?!uYmEmP3@x{knf#3=)Zxt)p^;@L*bpbfmRBq9 zK_AgyapjQ*c7P~r81@+AJ@g-WFAG4{n^05<#69C&b+Af)MpdgC`Xa=8I(;nmF|5EF9BhtB08f4^cL5*)e>;q?3YA)aH%(a~@ti4wDi zDWOr;(I3%|qt>hGvZ#FA+x0qQ4C!}Ophz35F(XoCKbW5<&_uloP0R`~ov>CH2+qXP4| zFO*Es;sF`5K*tf==`^VdAWG`q0st%|+zXtT%nMJ1t+49?guGJ+d5qx#a<15b_$3x&n5Je5A}b z6^jb1BfitvwvKjT>g%ecZz2@3cRSKUIKlCma^HrQIM|FJvnr0M{t(T}XIsv9q_SNE zE(8=Et};R<EJpZ^Er*OoN z1n;VO(lj15xad-3(TbZOy$v?nWSO<>X}gmV0b-zdOzf9^fthF+$HPwz zDSQ!%SR|CiCRG_L1C$`Ai}nK)A$su7Vj|M{E_AU=9qX)a2UiGtUL`cd@c9)_Kq#>s z@&UycrK;I1)!SIKuLYn+Kl3~U&rwvBztBZ0_71pvh~}rjoVaM*}nDsQJWhi3iAARJG!Bp zoz1|u?wloUFCMF%@KCF-Nu|HV>B?w|9KYv(WSIp_7l+!7%wL-tYf%Dkuj}W4+kO1O zw7TqpN|oy#MCTYe&ENA&LnQ{8TB>%2J3x%U32gC-a+;Vm-Sl2uHP;cuKvFGe*;|79- z+o$n+cIV7hoQP9#EKbCkI41)QnNh8_*2mw&&-NgtiMWOi-54{B&P-x!OtpX&?z6OH3JidOEao@mK ze~zbs|2GEw{|ey0?+rd&`D}lJ^L;;m`Okcfn6htZK%zzDjFs(+P{S4F?#>1s5<+50 zjC49G4N4Lvp)IsercQD3wmz+5U!1-@PBta8T}dXoO^`{FkeO){WKv6`a<{#AHue|@ zoWB<4!2)l4txyJsn}UDvU?N>98y`3{rZC21Q!1oU-Ns zM4e-3NSXW5g3~_XH@l1XE>>rHM=te#)4cn*buwH 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 zcmV+{9@F7>Pew8T0RR9103Iv=5&!@I06S~|03FK!0RR9100000000000000000000 z0000QSR0H|95e=C0D=w(QVD}R5ey2`7|I?CflL4rZ~-;~Bm;vK1Rw>23I`wzfGqEt{`E&e|oPlhP0{bZ3KqDVxLaL~G#VFz!fHXByWK0MJ- zghgRJrBLB}L0vLEulJ)Vg5TJ}aIJFC)2F_xV_M;R7J-j{-%9@q(^B{dEq%lbkG$Q} zpX6fREC`lc8m-)!)w&`-GeC3eYGY$f38O-CMCa(7L)gd=luCn21F1B@NZLpq0h?Da z`hVBn?BG8=UE9A=WOOY*N^}Dl25FUy1 z7y$_e;Sd(5a1P^;gnYJrzh%qmR)K4ow|XA_bY`h7p*DpuCu!G&!K44W#bGQKg)#h} zPIb4wy8ywk6adElyRTRZ07}*`&30$RxAO!52ZolD6id0IiA+SAS7L3ihNwlc5+QYJ z*mmCr018Wj+6F6n755Ei>;>yDNhDS6%JC3gVf+4bvQ@^ zgLxymyeR|Tf;n%`pN|ku|Fs@k%4dqYhkm*uyu z?)w43w#c2G7!{q~U}D(|EEy@DzK9MeXI)JAa~ z8G4q;U_5a^D8?EIMN;jpjYr}flC`UB&lgfq<{-@Kq9Y+YSt6J%osy@W3=N@&S+UGU z^xJwR-re$=)dtPgbdA*tBn!mtZe2Tk#7e79AH;ONAQ*0041#hV2 zimL5Umm1=gX|_qLXSBOVr&YQ=;prB=+vB^Tf9nF<5Mp4c3{zBU;{)U}a8)?xtuPIt z=B*nQ?=Ddhsr8wWl2%1xJ$zMsMY;bBD4Msz3f+qCEu(LWqD0#yyCRe{Go-VSh$r`K zB;a0g4@{{Smgs-Vy@gP=EmAGrT)_>T<&}kytCD;qHSTLrO_bW*iafCu?fU_A?jO4M z(Pw3R9crf~0)YK#L3n=WXG#?)2-|`>fRyw$a`#0p04xn$tMLVO{Nij4fZ(1y!2bX+ z;loJt-Uk=@(lL1#hL;Cj=#qMAd^J1;T`ji?6_9KwzrT;r5G61&vT*_ zMrA~hF%zaQiuYo}mK_oH9Eft{M2s_WE+k$FQj$IkDbhU9dGg}Thc7?M0t8awPn8<= zmr7HMwxC~vLz=v1$b}L}wJMwwU&Rp2lg2V&7AjyKK)xHypf&w~C3BRWKGksojst2j zLv`{Ah4`lI`5}QyWOy9<8BGY8zM7KTXVOVDJ3I9t19Nx~kZTV*fSfuHHgF8Ki?=m0 z9xjKEUJsWs-(OqiJOiHB2f6MG>Tr*>0xRE`^*t~fLu1B(nf#cCJ(~3x z{~jM!ULMXzatE!-p4a*hN3crb(z!!vt3LohYf+`+>PXONyatz|_ccAB`SE`nEw zZ$V+?aBNFk!;P&5_~Qms0;7_9La<#R|M*N?9IvWn3^vHK)@3>I(8J1GFUY9d*)lVr z4>z!QczMZ?^qIHi@Ok~ZhtO53;0=tIhMxUBSqqyT#q#Zk5=E%gFdcBux<1pPCI^z1 z4+kO5M+d-<_u*>)1kB@<4{4QOa&<*1iCvSKucavVlH#ul66)^D*v5-dj z+%Ov%V*UvCM|t3}&X8k16d>hvkMuDX%2c;B%cIR$@3OEB_N*PLhW6_Udi(cRLr#~z zt-b%H>iFkXcfR%l^T|{7a|*F-QOUS;7$=_st#w8uqa4m_|fnh%6 zQ7+_=@(USVSm@8?jso;Y0)EbLxkhdN24FZ_-u^@6bLu0=^J4ZZ0$cd~F|m_-Y7rdf znlwOF*^Kz4%^;%q1bdLRcxjis%)f<1d&NmmfRIJOCX` zS}8Y=`QO{Ojlm?Eu!m}w-5NK8Cz|WfauNrL2cf_Xd4CN;3osB@bxQ2lDJWBm7fx2r zi&8}w&l3;CbSi%~UMG_sY|986&73hYTB|k4AWc^l0tosxHBf??C$~ayP0IL&nZdyv zB(P#?S-|L8O;^S(ci${V54v?~ZevI;hPjParssZlj%3Semx9yfDoX4HwI}m_i4r2F zck@=bzAA2HN5DwldZ^XXg!jp?I0s{~T;m8o=sKl`&V0 zxn7@q)1$39zYH%Ko@CQ&FlzhwN zU0lj$I}8RK1q0v&ouy2tYZ*6HlLouFP=iy(0xwc~to2E2gQtNP&#n`ODU16tA=1GU z7$$LEczg4DpD#`pI66^H%pfEkDoBDAP7;BffjnXYK86vOg$M(2hERLB4}3$gserUL zm?qdf=du#+nm)^JyUuQ#C9Mt4G7_#a66QRS8PeL|jIe0O>IL`B!>=-9erx`7SE-P@ z)Dl~QK1kZ{kel!LhJCg$<78Voi;^m`MY|6xSTUu8Px`o6VJzMvc5Y;}?_*s&-Xng- z!G*g7x|5Ui9d#0wY8uuq%%V53ZosSX7ZJ=p9Ia-a&l?_azLUJ!h?=i|SPLJ4mm7;{ zlpV+fb+z$X6+DZ4r^^1T4QzaLLv_3QgtmZ|e3X=aXt=DGTwl@~zLf1Y%dMUed%AaQ@ zNRG$7=#J`}CJDhN6!nBbcACZ^q z!u@a~6jh`Ld%5X@Zi|3KlN!N7Mn&&)?Kf)UH~s?SW%#QIb`J?rHZ?8vzpA`A2d}_i zgfL$rcdQ%EUF6|qTmCLy^LjX4|3YziD0B(=cZoPiEWiwPvHoQ(Jca&Al?Ax7d};H= z((K|TS@+X@qxLD< z=09qqw(TLS14YB_yK>iE&PaFlOBKiCvY5}LDpKp&U%X}Au;jo6$-yernYQVpr) z%&!CG-LUlJT*nqqZ{<}q^?arcGSHK`k3gjsJQ#sY1EjY%#GJHQ#%H5ZWH)+n}cK>8~=l_M7F zKX$bk?nSn~+l<3mP+jyu-~s;j=YmaZU>hW>&RrlpGAhQ=*bHSu3rVc!m=bi9L6~>F zb5U}@14yvxfuFgQ9>$zE&A_^v@)=v=e5n*BwH)ia2oFG`f_&SYb_(Bt`6O}?<<&$h z&vQUrpaMpH1lS3&=j<_rs57P*bG(j z=H7Y6xq7hg0jtn=T;+Q~-SQtw!l zsA3DSjSI*9yty6SvF2%kqD--4@>!=zm4Y}^Te^K1wNam6N}uOwdFwRX4L273#{edk;52iH^@gS}I>ds4;i~i+T^*VJrm4 z)$I6O`9}2lj}j9=TTb!>x)>hVk=^}yzvaz=!lBZz8Xss6=UWvcG_Qv#kdxy@**ZZI zy0}Iw%2FH{*N7{?uw>-;x89E*JV%tGbGzkpQ&1-!Cb)#qMcJ8-0xQ@hNj6#i1-3{0 za4xR=r?U|qlO^p_HXM!jC5BZnYk?Ag+L#So-WedD#Kj#xwP)rn`d-390)rs9PJFKaG8hl!E_nAO>KK4vr>*1ZSQRQ z4s+a;VhS)oMkB5;uB?!gyM2t4ySLhLz2+$^|45>WcHa17+hdAzY2Q zpKlyk?+Ypooi^Wc|CG{{lD!K4z`l* zTu@~n-!4}8gSyNe)FI$ZM8ri*5@L!r6BYd|C-+1H&>JqQOl*yVOOQ*?1tu{*_Lz8f zVJH*>b?14#b}|m@ijHr@d)SEg2p2f1`U7!bWIet*w#=1U&$OrV=rL*#{{Y(uan%Y=fkyw#4&u z)(%;U)#+Mi+vWSBz!uINr$Sq38L#i8W;9My2*iT1uG!AuDBAv@`fcvJ_Huw^F$8qVy6sVP2GQ;`X&VxC(B#OX<`LapVjTbjIc! zn#_{Y^MbA6GA3vZ`bJ~DnG!1)#h;oHsa{T?$uC;N4PH}F)2+TPm^K}5eKuXdrsJg- z&v9=fJ21>sG{`QL)t-y?^Ic3xyE0V>Gr@*@N^I8Gry>~2OVECd%0$V{#X{7t^ha0F$tKcE(qDHeW3+poMl z7q_2zMMvKt4Pxc2gyuMOSN8<*`*+SABxZ zz%~Ko0^sal_a6Wb(r7v29PB*6uZzak3h+l2oO=afVKlW7fJ$tIXFEsS#S*cpbR*K^ zKdmm-{uYdElF4BZeRq$7qdoSne8=>Jg*^e}hLFA|}9n1R0qsJUb(m{Zm=!TGRt8k94U0tMmJb@zzRQrBc1(RtLl(6HGs6 z8Uqg=4L#D?>lZ@khGM>uLcS($Mo6Ysqe<>4fmyl?)G_O|^Mw{sL#vg1fg&fkM*1|+ zfk3|9*?02r?|96tbiSxtPL5I?SF(5AF~*Kkt{XVYS(l@B>|EgJh;Pe0ILI4?CJ+^p z7c2^}tw00VN)3qJQJdnT$uwJ!&*%e6(^dz4uF0DUnq0JmsS}f6+aT9C%ALzhpv_qh zl)vmx#mp*5kP`X`-8?J04K&K9n6|4Ihn{56E(_Fi<~Cp?Pgv@3-PX2ko}B9&=mo! zERd-ilYz-6$TWt;A+$L?Mu6>3i4;3iS0EhbRP?eJN~V>aa6A82mU{_4aah!Q@CAGa zcp;%V)iEFX+K=iCMB4haNSqO6skE1{{gNpcZ*L!=>CY`4`3-6=i!7I|pB^ ziw<|dLfZxspo5k)kI$mGFA_%qmYZB20SE^l&ww7;IIaj2` z36#7dWI3iIblJhev&o`iovw!q?U`3~R7FLF1+%7>felq;|5|-KQ4RIujh2yjSjEBF zGwvl}1Kp65VW)LAL)BZf%R&nPtv*qDj)~B(aa=mi7r0Zql;}4AFxIOoxW_qj| zaN9btpVjAm#?nw4DqO~@W1azRP-+sf7b{mXG^cl62;r#%8|D|-U_-puslCqd#Zd?a z;X+S9##Xw3ILr^sSy^i_FuOyFTmf7P!3@A5Q+dRRV$?!NLv9B0v8m{xaMX5jKa&_A z0tN*NO(5hTBi#^mD*d=ZMf3O1=A&|c!BO^TV;R#i5RM#XQc6lXs%dUub+-RVJ~?oq zEpVILmZ+YEu{z4QwOSy%ydS=>&(}D=!ujmhpC9J_eQ^kE#X=gF>Z#cJN*y{2HB)+k z8M$L7yK%m-eyE$Da-p>e5)9W(UJ{IW}%h^&ej%TZ7ZtJ6T&h96o(RmF>;_6#JacMu&Dxoz8_Wcm8rg8bE+aA2A+O zV+c`WCdRu-j}yEP8q{kDlPv<%)^(ogKvGXMCXbEL*)-%%YhcllQ%<`4dbMmGv%lB+ zAdl&0vpH|?CI!oV2Xou- zc;anqk?BT1lop4Sc3b4$iX4ja#Nz)FraBC8xRA*jGhB?f5{gpdSK5yYHW6JugU zf{;)okR?{I*?b@uNm25M@pAxy@v4B2ClvHpkOLGg0($a7876=cp8_LXTOKK7;~Z-K z(2h%7|Km|-0-Moj)p(B7v*k|!DJ<2R4q6u-BWLV_X5oqEiii#LwgxSYtVu`?d zCk||xv*g5`B_(QTRJe&33dlBC+A24MKzb4;${4@FB$l+QDs|fQAyi3glaz?XfH?Nl z=HeZeCQ(HdW>Xr(#aJIdUKECih$#$B2c{S}PmEit!-A+lVk?uS439@J*uJ>4SmCD6 zcqCCc0t$u+Nvq0mE)ZYAL@qrQX+bi8smcVgX-X648LV=edUw*19jcgHTMcPGVPJOy z1p#rbY7zn@iG<-+YJ!s03;p#ZrLrfw=u)LU+H1-1$Rv-l*Al+AV4M?L$)n%HFaxDL zx$xMi%%ILeA|;Sxa-V-~j9$v3U~Y?oEC2wS`izPI 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 zcmV(@K-Rx^Pew8T0RR9107yIl5&!@I0IUcA07uvW0RR9100000000000000000000 z0000Qfe;&`S{#sk24Db#N(fj9gFF!o3W5Akf#OaJg<1d-f_MQo0we>AFa#h4f_w)c z41ziv^_nGYn?}9c0T$o=?}k*cZCc#!RQPVl>y)jX_S%_X3mdwJTO>0IP5v`W(1v_@a z=YwY`zbI3buhCl0KEmA-Y>8M``C5_W!Rn$dQMqWn*-cV7Bp8QRD2wq|Xn`>N1i;2v zo7jsxT{GU{7CMimTrU|JOzao*OxjhN;1@O`>}WqrgaHPUr$N}|oB`L(C^C8uby8Gr z!q2IlM`22z50t=vnk$C`G|AFrmf_u%Nf=upn+jE7=off}E;OtxK*sxY_Ra_lGm>Qo zsY;h$C+YH1<7(G%_jI<89bmyUlHJ+oq74=uVM#0*1LXTIR~!;KR{GFOquXPygt-*L zAZMNWhdQLg82IO(lj+VG(6uM}-8P#~3NR}G3_DT40VaU`W%IS&J^lN0XOzCVv&^!C zMQ5rqsZyp*=c3wsdw08gdnYuAOrK9O2uvg?AUg;ZV4oJH5Kv`T0q%&WPn)7?QxX?t zoBva_Z2zCnAQ8*s4jfVyQt2zYA>p8POjSjGkQxX>kV;OHE=uy5a*l)9Kn|#9fzmp} zT!s)k=c4p;yKc&J)48eLmhQ~+|K7NBaWwlL1|U1(9!?fuoJc%W^PS!28i{b6BQoA) zsCaN{hxU$AsxiSKtOv@8 zsLtQT1s1^j3Plt3ZC_e`!pF?+daE5w2*GNss1>3j%yEA1@la zZW`gJ6R`UxfS%SZC{B;ZP+T=Upk}~vLgEm7!mw$D5w3AOfhY0QokPGul#Ix$Tn%Xq zc;7kL&(p@=-4Eq4{yq)?-WwnR(`%c1-__3>;DTfd+3*X>gCBtp&l@1Y0bf2^e0f?7 zJ<62c%f3TL-IXdET$&|DN%GE7YuRMsfJl?i_IZ zPfB0@Fgy8}gN~lH*DK5*O$M@;b^G(YNo8KjKmekLFlPLxK0C!jhaYp)=Wl=7BX9PkkzS^g05W^cJHI8Uw;)K z+znV6R)(u98Qd{kg`x4n1YkluXkd?EQpBY3$>2e7qvJwPLXLnusl-W1ohFd>1Q{>{ zWrU0|C=(zvG%S#_M8z7TN>psoiUE-VBJ~xhNHG@Mm13|nCX-z%FmPhB7n3KG#j|A! zD>sOZ9edn8pmxabUw3p&>C0E3Uw(l)_XnB3t_Z+@Dgp_BL?Q`b9C83nL=kQzp#(I^ zC%k8dN-}OmNwd z<$}wHtPozs6Xl!>uQH*kL{K%{YI~+$U89C(&7(`84Fk3gv~8g60_mI^T~0I}Tdr+{ zx<{CMhN{;t@7~9U!1{&0|3C}Ehs4q#F|hh7eMS?1;)m)@laZN%SI*4E!LH3!uMud-&w z%owExauLw_mjZmBK2cB9gP(8r>K@;nlQioqt5Pa{k}9<1i+-H+`=0KMK^XSKGC!QC z7LJ=`eg>saT2d6*=;M%&lP(s3*Q-Y-DLyjP09yKxQL^IMy9Z%RHzqe(a2z@;dA-Y z?$ZyW3~<@ta=_&;lG!p?x$b-mUC3{j@#i|Jb5qtczseZAsd-+eo7V{Km<)F9*^h%R zSwSi81LWuzi&2?M)pL**T2zegJjaFKF5^#EHu5*1{cSqt#FT#q&tz!OOl>id>WdSn z&f;qqDJ&`;!-3mq^aO1YCKim6QQRMB1WnpZssk76yq1vKfn9dzw{qgt+4PmJpyf7c z+;KN~^5g@5Ah&>aG|@IEPMkP#;>3v)C%aF8%KN|#{N9y%EA9ok^R)iNwAY#YTISES zcMDt3iRyC8dq`3bs_GSFL?kSPiuyAL;tW@^vt5qLMfQ5SY`gNF;I%s0n$M!vvAol) z>IwpLnrL2sA=irzvsmmWDKcay``)UYt_#Htx{9KT@0h7B9m z?2n|&>?uSEu|-{G!C7@QAEHXyEEpXY)~4j^f;3l&y-B@4(+HZh88K;__92V@#IirI ziA=3(S+j6rZ+R9|&%N-{E3eDv+4R9jpL}*)zT~qLr_Ow(_j4D1yY#30-Bcffb+@$0jbKgw!Z?k|4W_V@v6ql7R#eJ$=s{2q~Gl$eGrk>gKUJHTH+6k+D0*cxe zDB3L)_rqbQptv@|JV`6P3FES- zVyG=Eeio$Y6g-QITs-{j?53G>QZ*(Tpp#-hX>wHo3-4ZV=R14(0Bi5!jqw7O|No=5 z0&Mqjb8!F$qCjiwy8CzsdI1&p!8myWMW4F;fSd1Ui(0#$)v+)iCmf*gt=)2;Vg$diA;PhMR^A8!5!v z`*zkDr=4@&1s7d%*%kCIM?lPyIZ5cTkGS&7aEb$m58myH>=S5}lj&xchFgn~am7&L z%`3_HtaptS=KKjW*K~^;cOE=>6^Hz|N@1$qLsKOe^6?}TSkEVvLxt&Nah1ZPhbLeF z(WZQ81zl&sGqdupU|ZG?tj*oSVY z1ba~V&M1=ZX1RG;SggjkvWH(iH@x#OI)W+&I2~B>hg?*v*p#-?Otd#K`8zFsuXI7T9BP8vxhwIEIohBMZPL!_JH4k4ZB&+4s)rUT zO*8+*RMLq=V4YIqH#)|n&iY#{6r%{OQmDRGAB>5dzvl~DqyWv4uR3q&exCRD0!WyF zB20@*l8%@hBUgzuu}G)mmh7MEO|0BkiQ)f!5ed>m5<=mwqR1GSpli@&#(zWfYgE&1t7~g{a zWV*UYo`87wrE9}8{JmWL`g-bs8T7vc{09Jc+Y1v2gkAxtOHHCcfrwk-SUbiHB1y*k z*KYKcJqq&~`yb4hU5+~DhWi#AI&}rA!YF%le7#-o8ysUCIL>^A2>d|!!SG{z%lG`G zpY>b*&|kv?;7zCC$>9I$>OWV28v}9oH#_d835$-LMcuF+xcAY%;X99e(;onS*Z!4# z{5|Y$5B&xUw_nyWh?nCG|EB(R{A>T0^)K^Z%0K_@obB}E_D|f7+m79i+793TwC%a= zv@NmqZ!2-LfEd{7ECk#Dcon=JKH>^sHos5)_$W`k{~r1Fi?+l^_Ut=wDAqEc`{1Kb zK06j~#rMuX8c4LtKfpiWKX3&CJS!Y_{bprq6xlWDu+~HWpHd^qU4UbjJ-B8OY0D6; zAI#t&s7rCJRMJW0y4~cq4Wdsg%ua^deuM&WB0%y3)cWj$V44Kr)tyQC)KI%c4xk{B zJsW`bIY0yf^6MO+g5&|p?e#b-{s6 zm)?t%av-}Mk*zxmcsgBfM3>&{0scAUg7t3<<>_#j5or=oFz&^)CX2z+ItJxcv`7vV zQhN?5e>+D-Bg!}hKe<#)yf0jVdV!rIBv)iLB4r@qxa2&S!E+2i;4p{63P8E7rXo89 zJTh<+f!svnlK8zElLNJ2z0cMp2@@E+CJ25TqU%`T1)~x4c|$L9M*LM!vJI$!m*OuF z=igNl;OaBrug-|dfm%-c1y?9;N@~KsfHH{=l;B3_TzO%`;NZTJ0C68c{t%!6IP4MN zxHkYC_%yHqmv}o+dzlvtj!+1w8OInqL@RqQJeIwB%Ns`M%7tHA<$HP2kStRHJ7ab-4PTgWHpB4$c~`@i?5YtLourP)zLZxHCR6eMWiPGt=Bvmvv}+6ou}+&vN<}_$7CLLW2!e+ zlU78V%YMyn)cwJ?WP%NJYIDjV`*hzIReiA&O%s{(`IrWxZx?o^iudAk$UmEZAzd19_+aBD&nATaz`GjUl?=p% z8MWwNH!g+JD}@CbWT*frUrzH9^6H;=Szan2e8w3!=LJfE3xG0Ca|?tE5$mGqQ|j-F zM_NK@B)GXESL(!Z4!c9rB_9ajhtO?KZ+f`-I$18wPk4(5EnV7EjtaLoVOf?N$hX^2 zt?Vw&^+xG+y%Y<()25Wi#P8!o9#azGmnMeH%o@yVDJ9p3H>&y zl0me_2iZugOTsB-LB`^5Z2r>mH)`R?zoUoYN!ig{?KBo{&5J&y-FB`m$hRv4%U$oc z0Qu%`${PM+wXs;Vw44sK--c>t*L9}u z>$WEjDFEf}XrIvDutyEm>E?lI`sc|(*Dr~^!)kQ_lx-S}xc;v;ruF{<_3W>-my+Lu z*GuiyB(rz9&b1tti1p`gyU|4qS&m z+7g6P22XrLW)wg5kR^UVDhv~HQj8U;&z*OqfX>uqoOOXNilLKB$k8N~+e*nb&3zRO zn#Z1IEv&+MF7b2$d5cI%GoE@0>8Nm8Aze;MUnuP&l??2y^9(PnO)o$jl9~?7M@w1- z$VILbvV7%k>Py&OAH3RE-f)A&(p>G}7@Y_kS0}kuR@|+#esqDxWNZRxqqMLCFT}NS=HY_lI-PfiL9QwSTX{ml zy>)^`aArH-Q~)q#m|Mh=@?nO@Rat1tvJ+)6Bn%Q~W}B&t@LM|FtohwN=~ZG%?~%U> z)_$Lm`~J!Gd?>{$eWlILgJ?y#eoAswZ6qkO!b6K(e09~oQ#|2wA3UgM0{!=J$-O$) z>f~|-;98?bAs{JsMc92z4JNUWiiX3hQ zdhMI5*SU@+XZxvNCgds{vkcRyX)-7tmp}RY%g-3wAtFgLaO>azS!wrm zvCx6mVemiCq^&tSH794`@rgP;Rusr8L{wEMbE{PqB~vMttRRJ-R4Ne{%S=mG=2;{? z2RE20?NieaW_DPiSo)y(7*nt{eU=E*|2v!Q?tYvt2}(h0RZv99k~WXn-n>+|r;F!)%jY)6vR#>t0k&yq7&(<>~Rd{JZx*6$G-y)ZL19s@Nt<4hpDPz^r zysnY~1J#01$5ypd(xuA!)Kb#dx-ew!GJ3V^sma$^&T2;?{!Wr6Sz5dvYFC5&c7ZZY zm79kIe84~%9EU(2T%Ww|OQqGSY>LL@V&DZmDzpU-0N7@K`=Ngcw3 zoDg?s>3-Fbd%T_EE1)EeuialjWHEUYc_Y2dj)rVwWL{LhQGlE{3Po81C>f$vgHEqw z_bQ;EO(JLm#oT&|0p_hxsv39Be&jqS$1Jk+y=Cc9>vcT#0 z>aJ|8VJEBo1Kl#G4ap+s^nv|(iPU-7w8Ht_FIkSuW{$oIT`=h>?eaTn?ZZV?6VuOV zr_s~T=?0G`uqBn9scEH8Lvfk$wn3$yx=&rJXD3Ot{iwc4ns>WnxZ-wVRT?P|PqCUG zUEX+6-k7K!S=tziuc{;1Q`n%fW+u)!drcb`oUxHB)|q$YVRU)JugZFY`tHg^J2Km5 zWcptsM@@TlfT^)dpws!0mat%epO&yUn=-qpt8TSHL3?XK^0V^Lj2c22K7GkDs~d9> z(KvpT5tgZ|GjHa<_PcLFg#+!?#N!EUgDST~=*SxK-C=}I(I+vFiU9yd;;c?QujSSa*ZRnXx z4?ceHnY(5XsdF3Ypjyjq7k{u|7g;Z4r*az^hFmki6w$L}f6(^0=d2w9^>w8TP!5MX zBmFkHjpf%wW`v9%!vptve0p|+cS$~^<=|Vpz_3L|I=wB_7Gs7w*P#BQ z+I#)k+k{Xr9*T#auqS?Y5nSVB zt3lx6+JOVWle2tIUos)sGOWKn!l&7FnG-6?)3RUm9dKmg}M}I=!YAnl$1P8Ayp^fe0{s8Q26n^*S&7BM1O$NPz-|tWVv@SorxOD7gdFxc6Nf^JXoSQ^@kJ}A$0WmsyS;H<%|G{0VS7~m0 zW8o1?(A2bmQmFCZIq(SMsnL3j?h}`nknxQn zc{~W?&l?Eu`S*5dRL7(7Sdh{gp0T09mHEh!XL}|%PF}lk^5K2DtL^M zNUb|p_^raBh@p%1O^+U9-_p+V^aNsYaR^$!08&qgOKFL175CBpI)3wj<@<-qi;4t3 zpucZ8LEwL7?WY@mnKwfp`k}@@@sgAN?hA|zjdZefDs=+n#Jsj!m8HVN@gpS_d=-tD?%or;b~^Ak&Y zRKqjss!Rc3s8d+f7P7;z&o+r?FPpEfoBhH;)l}>Ae>pj+%vV$sE{jWWh1i{jb}Mw_ z0YrS7LRzSy?!HHON4%XFdiCMEpHr)Q8x#1_n$o=FmX~0O$kp=GDe7|{HiJ+VLy<$m z0~lW}Qru<1RU1GIeZbsKmKg47*Onj#2;RSj1%tYq#)iWpd}5By|a$Z!Z9<(CHwGiUrX`Os6L`K6Ei*EPiS z4d9;fvptHVnYq84XTC0hZ9NV7dEKOEV3?k6bkbs$M1n5Wp|Lg}V8CKh3#m#K1V*di z4_?;@R;7qeh5$nsr_o7p@$-Z3*EV&wbKCphd?eqQNvT>(;`4B)jS=yi2rlY*o>Dl{ z&}!xM1Vjfnq>O~SXl1)K)iEx<%G}3{uke@St^|aV`g~sjB`R(CT>qDgEYVFRb;5xC>-Oy!jB2cgS=}w(&XSP3O|I>*7qu zTRHEx@U+|2e-k(kh(X&Qm+_*biGn+luVJI27+9?6qc_5P^Z~r#tR}=DrfUED>0If| z_x*!dRf*viyy6-KF4;SCXFE^p@D2E^uRFVQ*+z~zw^rEG;Cm_e@%P~?DOsW?E-|h* zZ6wJ)skv>MtKEIYz6?+tFQc`9c52;+k`n`YC>{pF0E$R$pq<+26@cP+g_qrgaZfsc z|CQx~R{;W2aFj2~_x3I44_-U08TZr~$(-a3hRwZ-2b<$cDPDelgAYiHO$w`uu*3rU zwD)=Y;tNOxPy*MXIXA)e`t#eLydr^9;TWrUY@&h~TO_Z_QIFr*gU_>*N*U8xL`Wth;*f{NLsq+VFc$UgUFs>EriF-&tpbk&=3N z(evCoBBVIcuk3yAp1>7OO=dHzvGWHmC7u|4Sn&+vF$nvYZeA@7Bf!Wwb^^%2rN&_z z34DPE3)upz#fd}UQlyQ~E2lDt?0dqnis;ErFG-Q)1RZ;YNON7XNxc0keY`x)DlOW@ z@WhxB91sBa+9$XqH*b34n{T=S=ZWvzJM>Qx(C4xaZ4TbRSdwub@(i@5z%S#bfQ*pj z6XSg=B6-3OaR?m!J_6eL*s0ysd!Ba|VQe8-jQjnbkg|SV=#s4j zclj<5J zH#ru%&~TdXUE=n@nUdeS%)u+K{>&$|!T&t~Xe@n{1 z*_DO`2c@|h8w8mnG>eV21C5j3SCRTYb)?`ZTq^_O!wS5-m{EGn+m72ymI`LbyGqn# z4%-HJOj`2tgyRIW!y|IfZuzpf((cKJ!d@WI3{IBQGYl{bG^`qdw>XXF>PYiu4ChG|pAw%+ z4dd}qHxNdNwGJT#v{PfR4JIdNDTL?>aJTzg}v*M1I|ea(&Z($U=(((vN~sDSy+4a&7+` zR323Rv-bGAHk)pvSnYoI7WtZ2m~x}1VW&>?p|0cKoZ5jXjZn$pW=TQ3HprVhjCs6tNQxaxJvg!752c0Y{ zcRt?VT;}Xzd5?QnNH?)WUc}rVuLjw%R7_yAqQyto16M~uHXE2GXh6l>>)J`hG5P+u zt7Cb&6`zok9Tk>METZBtclA{x#_6a}==<(g=M|P1o0OL0>)!3fHr6#7o7Of|CpT56 zHZ+--HMT@GY`+e!udFgLRfxtDB2RY+kx^U85hsM?=#z~EU@IZ|MDfO3&s9R&iHrq$ z7Hy7J!K*l$JI*><$fTYm`OTW-yauI|rQ>{O zv0(9hOKW)#!BR zkun}{s}<)Y>T(gQB}l{yVa~Q^^_;{Sk@+(VM|DVcNk~{+$`f@qDbIXL<#>AZN|uF| zre%+1yMe2bs)?zF8`x4Rtop>m!Gn$0dD=BK)fttZHlLX_o|ct@RyH?_H8E3GHL*}q zw6KupfypJH6FM**rRdTQ49orR$|z;U!hBinCo*ncnosnRdS*7}nr@yYsee=PXjEV@ zdS|i2jQ)j@sXl0{{#f2b(*S9wiEy(o#$zKhv1n;+8&%ed2ifQnd~{T0xQn~ItG=c5A{yA! z`9a2>QJn@zuoXeKR0TrSm`gz_}C(bY4t*&#x*8|&(#Je)nG+qY}%j}bq|TF~KKCi~YL3;OE`2zEQQ$eRWt z(uOYmspg4#Su1VT#_hrp9L~rBapjQg2uC?HpN=@Icpdw&En}OoAggnzsJPr&H*8MyBL^Ul=3 zZc`T_P{=eRMj^x5s@rNo5J-9!Oyvr7h{i~B<;S*-FxKJk6_%4G#oAfF{3g%yF2nqv zN(ql%3Bm6s9-PolI5!~?N)ImU>b41D8gmheZgWaJ=&$Ov$wN3X4X6|IO&-H$J4^*> zsmsNJRO*aMZMj%+P}+?>3^G<5{T4_YH?TzsY(LuDp((NvEW!PGn?Oi=N05t^4O`0$A3L~s zXaDz3*VwnhWxpVCgV>}Wi5uxM_{ULilTu$(S%23eq6)Ub<}ov(SG@l6r(ip*Z1+# z*Yow$ULLjdav*iZ6cxopl@-JvsVWMKDk+PKw9nc51Q;SSykvyGNLxUxJ+Y=D${bxo z4}=sHrRDE1wYaaUOfL3#AoGaTm5Y~YIn0zok4NO8r>HdrGO5@`Ps!5In1c36*&$~? z4{tvwM;|XwALETfMs+cZKuAI)*2h|_0Y+u4ttM`PgT%%Jp_X8nLp5rMOxbcL* zctYIhY1)W95yIU|6|f}w1f1q8BNDvjsbS)b;#CYA>tDwMQ5@9n{&)O--{yvp-x{Z;5q%u;z}5_z?Cnrv2O&1KD&Y#RSp%2qX3 z%TyD*<)d4a(aMbb>n|K%V48dSpT(ylVCZ0p@N>}XpX0xE6&wPWC?1%WeaF!SV}>1E zll&1AfU0Lrg`pRZ0rGV$#yB_40dE>A5qb{w`0x0C=5kn{TTj9vaIM!?6M)KR%>`lb z%W;75b5KVpL}i6yyrJy(g@0dykp+dbuk|-lnmktVT9LK6IT>XHFnoqFTRUO zQbEWHIb}KBIIY!2Mn(qkmqw>Ut*B}&wpuLFcLI^5TAy7X8|d>TeNd{`|MbwJweMUyYw6V}yA`k6TYVR567WlLT@^?ifX+h$PHgVejlI za@&SxCI*INq$T(lgituSQmEJ|sXlMhv9qx>x<~Ti_xy!gBghXu7UPjt>XgvcPTidMH-mfuUJqH#h;-RW?>Q)n~Y{rf%E+yEQ zxDu?3ijkAr%}I4jIp>VP5PW8k(ZUlK-Aa^>f(lxr+F6^a0b!-Bp>3ii``AKFQ_D;< zfZ0sVJSs3XD+pIw7Lt%v17@l%FRx7l%zz1u7pwslY#-~1yF0iU=-7Lg+d8|$m>txt zEtTQh29Ma8c^&x`Z>U&VsfhS$vN7>u`ID)FNN>&aU@&?ZJsV6m(1Sb2BbeJn3xbXi zf7RNKZZCLpav(TSLX+;Ze^*4p1NL)>xj|~7d1`o?+CIe72TO`-OW+hpn+Z507L>b5 z3&;EcfF09kT_nQsflrfyPH5lZU;KTc(qGch{-eO(9|mCHpXr|~U+oVB3vTSr=MW&R z`HGgIL!%yjdVoWtHhg|afRb|*S%8q^e+rNMYL5H}`86|K-H{Fgce|Sc0B5s30N8E! zkF3y+4G8b>7XW0LV@-H2o>P(I-`L8M}Yr=`p`s)=CWPL zhis_!$I+tQZwXpus9;4rY7*(r2LRPjBm#qWtU0X1tGTyI!t$9Ls7c9YhEzTVAXWY$ zpv4FTv<7GR{J{2x&YbH1CGmnlB%3^}ScR*63HAc{hC{wqP>`0@2ckr!Z1xJJ7J^c( zLWD@F5_|G^wrRcYQ4s~)D^n#C&4JD6I@-Flu!f@fXUc9rZQMi-LnF!6ZNj>ZJca_z zLMblsqU-}^7oxjVOc$mACl0^(SEa-ic>6{_)d5vS4!)?(^C4)KQ_g%XNs=NSuT?~i zzB1iOLW*)*`CLL|LZ`PS0YjMKB*7ovMrCK}WFv@-E<38E;wUc}k(=hXX36n%Z6qfp z4l2y2?o>^dxe{@b#4khz+whf2C*d#!u{CU!N*AGgOV%CEg;otN#BFATc9_-snwud= z8v2b^h6PfY$=!z{CTVo#@E|7iUulTH%USs-QIa&bLZ3Vx!PGUE%9#ZywHO%KjPlBr z$=FUXurUl#DfRlm+3}Ds+1~hZZEDEIy=%oIGSB2ye-^Q0`WW|f$bRUno1aB0sfLZvS)K=d7Qe?7Jlpuw*z+>}-A)}-~3K7hY>&gc0LP3fOPH|Q? zXruy4cHnzX9>T85vmd#(0=2Pw-e^T{b-jDF&dNzzNhM}DRS;O%zch zx7F_?6%!r$5_8xDyd;kc%@x6;GP8Ln4tE^iDN9>>+5ZcI>txt9MAD>Pm*+mpP2G*T zdQoN818WB39T*n>P$b}h6TY|*IBk~QoU1?W$M;1EmK6Oui^KPgnj8wFL@(!19>nOw zeE4k9;H3th_nY1Izs5O>_FhqzEtNEwj72v)mZ~p@6x$djly+XB{B5Jlg6xnjgLThqpjZ*tz-Lj3rDboln{F(&Txx>5bJWr`HU zb>YnSd*zy9mjPcrK>xue9JG4t8X9OC_f2Kjbg$r3zD-a^c}D&6UJw4{D#TkzP!?|< ztbn21?h8u-`VmLdJtwww%c4JcnT>Ljzx9iDMO&9WLFPZS_i;~n`C4Dug_1Qso;p{q z(Jsz??V6sa;vU|&G^d{3H@WN{sBhgn!ohggl(ts2P1M%v_(Cw~=Ny^zJ%q~i@k7OW zH~K|!zY{UN+Pgjdk>%h3aN2n%yxfx{^JBvzqQqMenefSEcQ5yT6=4a)w~z?p3)>Q* zqDVg<_We_Sq!PXrqkm_7|D}?=arhBrA*_NP{U6pU$=`X9z%4k|eSWd%1rG^geZv|K zFv22GN8Ccwqx$))T$s~*RX3^TIH&VVkV{Hm=K~8G1lbTMUABTFaPRLxU6eS32o9P= zqiLTGeF9*{%#T~Ccqx8ZDF+AEShPm7WJV6TxHtDUp40O^N;XS>9vI8Yj|oew)8uTi zk)7bvqio5i_!{^Y=Hdk|e7p0o^nqYjEmjN)F0dpEB$vASoGfYlq?_KVw;Owcleak- zdY0|4EXtb1iZ#B9BaXK!n3hL|-9uVWaMQHir2t=J*DTgLpG^OvX zst{ve8WPcK&}ReqfN?Nf)(v|lZ@elE_t+dbip`0iUPsUWhOoz1oFU2Cbj#)Ei%51eIP6yi#6g)V-%I< z_9=^{xno~icEo)?1@V|3Cl=zM^qL60b4=ZWYaaf`-yORnTWauKXFE4^tLn4tcWzrJ zxNcPD#U~EBA*J*lVkCeHW1b7#Pn%My;){7ncbP|h#2RA2z%x|2RJ`)iP*BP6I|QZu zc*=6Vjuw`R<;4t3SvH^np$3>l0#I-_&5G!ehD3PaB!@8}9cRrIM8pLU%NYSiLj>^$@<_^71_72nF@{US_AvOI3kVP%z z`IGgyMi+=?Eho)(wd#@AIHEy11QK(k8F*W>Ev>zvVRx7y?YG&&=-ynJySuP=P3Vs& z${Yp}D!D_Jju8i-y_aUQ;A(Gh5sPHQ^r2!j(N-*0TW=99zJ+c4ajqYF4GW|#0VxsX zVOODJrkXWv(G^EjUUl=9(2zK<)QHTDq2`xup%@a2+md||^ZGS+dh{ zC=A%p4}pATK`Cw*)sekQ0Yf2VZzlkf5IN{eKxA z!&~~Aqr{-@`_*1f(V&(gl%7?5_HNa~`fvsn{RxfY>G2Iqo&<&>HDmh>KX+{nrt^IU z=0({Tp%TG9H^O?@+7#s30aT9t&NX1P;Iu|!g7f=I5DFQ__H*amKHgv^6Xq00&3UhH zyMkj>I--Rs10mk7JKJjpGs!Sb+01cbuSpZ%p1?q|RorCseI}e>HQGT-_PDv82j>_F zrI1>=&}wA%11Neoq@>r}%#>vsdD1gHrb!#Bn!+ry1nKNh@%%)snN`~` zKU5?3LaQV-Oc;6%2mp?}M_M9VrlAi9_0y8_2O=ldLkU-b?2*toXETS|}l|fm`mZ>%N zjuG_ybK51)LBduHdya3~KN{@?R?I5=AaMIUoFo&b<8eZvMx9%VD&?qh`y^dacP$Tf zyB<88wOBBaXBM>O)tpPpw8T(V!p?q72*)oye90d3ls@%hB18E&7I&aaHJ4jsTRQ9B45VR<44h*}1wO4^t zy)`!;W>W@lsQ+N;SZo}|D4ZfGk!at62Pv)Dabg>m)ETG2rahZ=ToHP$^F#wcNVe!8 zQNwU=d%%W#zYH9A8wA?S6f*-}-Z>z4!6P?dYF)WDhFg#T+@azn9c8>wh?Wuj^g?YB z=Yrw7ImORAkQ%MbIJ#MIKGkp4^~K#f$+dm`7m|v>tGI6cx;)R|S7qFfyEB~_FX}Na z-SFFy@U8m!hVAC&YRMD8Re2pyD$`6|z#C1drH#_a<<nJ-5{)|qz~yG8O15Sq7&gL0=_!2sLt>@dqum#w3?erkT~|6 z{fKTkx2pA3fA?YC18B>sW^fuS3-CU>wxd(F4qF@(vxkEFhg9G21- z#Dw>|A8rkNF^f0CezpH7QE7~wl|gQ>W~WAt_KIWWNc@pgoT_%h%2;cxcopZ%cp+=_VqkYIPDATLSPDbr2jeIXI9mg zy=B?7zZP(3OUBgjwSN=ahy=6HcHeMMdpbI=2y=qQj8e`9n4rC5@^N^qv>U`cQAX~~X zN3S**^0Y&hgKISV9begBy%vflc-rNeM!C4IN23}%(dqqV7BiHP?lj{AMApD?QWuz> zH$mLWizlPDckJqtY+991L}MXI`-=zHE9I;O=)ytP08>7hZZRghVQ-;3RUr}cm+YJSU9uk$bSlUOUx)P72acK`Yq&aV_Ui_0(Nj9HYv-xxd;~^ z&pm9@r*f2x;0I&Ahs>#AcQRnfEW+mu`JfjtcX;cEuttFU*ojUi-6`=H(`|I(AUw|w zOY_l%x!DHUkB^OGY4jnl8(>2zWWYxL-+8fk$sS#!1G5}ABIo= zjkF7N3PJhEj$iuS2OdTo8sgiXNu8m-iR;+y59(xsz8usSqV-ImW}g@~RDuO%z@6I8 zbhD!##IOn1b_vd7S#uj&q;%A#ES1gE8tsM80lfwUb{5sh!UxrW2UvmB9Ts?mQt<5W zyJMAC*2{NOWf6Xe2NWRA7DejNes0Q$#Wa&oguaIT!VPq*T$1?!bN1*yc+UcgHE-^3 zK2WLfvoLfRqxVQY92Ba!Z@v`S?rBBNyF#t!y0|~);7XsT8V{*FSkDdGXyrA8Vu-%k zmf)L9qyc3!tOV)-6vio-y;71>JU|*o27H&l${)6p%F%GO)tbQ#JCH9ep=2f8h9fa^z?GKST+(Y_SC>)04+KFdog%h? zX9ZW2OK}w7x##KB>4%?CJ*&pj#a>`Ej?lrLHixnsH?(a&tc^N)MkhfPiD*}xH@pH- znitLy<2LJTIAz&#@5j2F_wBk%8g&bFVIP0QjM+w$9O!~u=Uy!`odAufvbv@#3Wrfd z0TT%9_sy2ViDQjD_Gd=DtHJUXtHZE~MnFT4PI|;`=<%uayYoqSidDs&B3Ew!J-{D ztj>*S@QUYk8lwd9Mc|iABVD^_4Z`WuwmFesmk;uT*+(=VJOXt=A1w2^yPWCRczmfh z$4MqGbzYd*JDY|*pEEZ_riz-7BB(q^CG)$T?PA3wn#Ve0zRlBlYoaZtg)3;&ARAks{&;YtNWm7Co)q6cOtgnP7E+T<`*! zqqaVVy)ruC3bs6Ar?VYkjZdjou5nGVh*Hq@uJ?!n$=Qxl!AlnL8u20GZR^X~pSSQ< z{UUZAai+`D8JNG2gXQgBhj#@-972Nia0QMsacBS&D zCi3|bU!eCeMmvstLOrAY3eDiD*fXf$+5Un@PZf09i&_DW?I`fWMO`ui{bB#KuHdy3 z1s|=7Xbaj2P|$G}bkaTcZuBc{zYphbpnlV^$>d<5=R_vRgDKcem@6>?8xuL+4`?0H zn+RaktV;!OWI{n1_X6)rYQfPJc)^qGIh>j9ci=?0f~4S+pU(J}dRfrhp%o^}WWRl^Qh zyh_|>q-aQve({&f-~76QM6y?%!oujCA9>X=&#*R_sn%wZpn>97vC<=vKDDUgqs;M; z|15`aT8ldI4q7ZzYs(rf7DPIIu~sklGF9Acqf)`HtGlj%wT^U7F-xYLi905>XQ&VYbD2%OjPgVJ0i&I(FGL=uZ+u635krOM)@6WrFjXSI9LfsW! zS$z${W^2Al%bHm{I{P<`H+VKGrm;_C%z^vREUP8NC{pFkM{#6Jr<9e!%2GL}com#y z^x9dkp@*+k8%ogP_UPrg4~BZ4^vMCwhG`JbBy9#Rea;f+rvkp z6{B45oaMjKXxJnTj3y4DnMz4+ZmJU_h9VqtSVNM z(mr-2UjM*r1^?Ry{J+38rkDEm#028if#$rJotvQf;i)e68N)$TI;&4N32BhEa*a<8 z`_lo-duvB7WA2kJjQl#|Q5p6XlCrFrwz6FlaKJ@XL4Yk4lUaoy+ zWO=eDPp@c~58Hi9>?B3^qj5=kMC%%lHUq!+Oe;Y?ZFC8~rJiL(Aw;0ZdjF3e`L!;< zt2F?C9~%<*6TDeN<6| zO-HMXmK6ew6L=cD1l|FFZ(!uW_jU}rpdHK-m@(i37+)A6un_dI7zn5y9V|KAtw{xi zOEDvrfEZcQY}l>qqW+93k1<_&#=ur*?Yx1Jw=IB~1mjI1{A%2QoM8@~WPFYx^v8^J zeKwChpMcA@>dj(ODg<~g?c9~3Ab`U_!Vf}2zyTT&P#p-| z&c)PJ#M7>+nAmtTk#8n3l@g8>G-`nmCqB4`z9Zaa9z|f#m#fvaMSbhwR&t$sH2JI+ z^+jZdURJ%WGNg)^C`-PzoDt6~n)dyJk-SwsS zlX=h`v?V7~%w2R5IiY^3=MtDnWO%sgRTHlB=T7qNP5CvId)JYkZ@N3Nl(Ej>B@8E v3f-fXN+1dZB1dVFB-d09Yx-|(_O`s(>lmnId}Yf6n*5G${c65(cR4M+P|{6pGlP-h|zm5ja3|>uv$# zZj?A zOcFSRC42q<)_!lkIp(v7&LWj$vmdn?)Dqb><%?MRneHKRI)}#DtEIZv`o6wMx>t8A z2S{kJaf(I&dJKaMNJB6H8qgc=0$?Uk##rVFNwU$cFm7`b*ccmP)0O}KQ%m}-%mq#$E28tD`12$di(DlquKURAvOXh=<@#= z0?+~gKvCo7h6sy5BqShGQV=8(g2h6JM2M^$M1ewxVigco1|fz`LLh)<(2C(xrZskg z^K)-~5uD%aQw!ky8QWY2CmeuWCjhc-!}>DF0R%w6!2ndhpahfM;DAmM0eUL#x7ZHk z2!qj_hRvd;nuM@wuE@{a)J@g$=c0Vh7V+krk4+n1Rhum1($ZZTY_d^Oli5*By=hp> z;=?<;*$g9%&MR)DOxU-qhdrZr%W15bK1-9M=;pYNoDL5X$;p)rq0>s+-sQU8Fzh<<<*da?Y=%H%&TZ* zdg@x8Qp4y}*QNtMh2YXwva19ID6}0a zo6-|BC_PYz>*!(Qp@?X%cJ8?``d5FVnZN5x%~6hqDP6tK*`Gg7L&4CDT^YF^!6A%;<5fhh0qR?18K~Ax96{^)~)S^|Jb{)D5 z8a7T&Frj!0jG9F;5E_taT((iU=BU84BjLZfzep60jD{%=n_mPa2tc6gP6FO4llnaF zC@d`MoMyEu>UVd92D}#0ru=VxPNI*JG^CqECdM>@ttMEUlxb(~lIs(USS#F-3lnjQ z7)!^S#RyIneD(xty3^GMn=(wrxImVnI%hXQ#JzD8T@2$YLigNCV%14EhoZ+c6WDnd zu|>`x+#Oq;nbat1i}Nz*V&M(UqX+YRo*g~*p!4Z5sg^PA zPNHLJv&M0PM{iANm{_k&O|l8)>eg+hdt2sw@L*!Y4H{E0E+!bcTAYQ)ftyj8Q_K_* zRPK778s#C?be9}pqB;qMg^~0Ksv$L{D{5Db_H;*Wx(+AsHYV76rbM|ST9Cjkv8+Rb z<@7Q%zSmZ7fk{(vf{hB*nqBT^O89QP#7mV(9(gBV+KIiR2-(WqS+e&J>)ZLWvXI4I zlb3<^(*i11cF7mmk>JJ@bQtX1QQ*wi8_w+ntjXF;oa+M7&!1wM#s2Pm^XoE&N&qz7j;Re-j~Low{`E(W_6t0hA%bXoDCm?n`B}C}ZR=!9QTatbU`q zJ*3&PvwWl3sA``8I$Tf8s}OzGG)c)u#r{G6Y+&7bo) zU!IwVt3=6uo?+o!*Kp8)TG{p=R0bM!&cLnQmU2IcShN$1u2s#D@_i+J1)CCOky5Y~|KUCS~Rw@l+PehocWPy`iileSQv= ziVWRG2U~ZELNS--dLRpHvm+T!%iZ=G%UG z=#)0qvzhg?Y7_INTl2eSb5l}clRa|}}gzee5hf&1BvTTe&f|f}k za1hI2;qHX>U_xPTmcEe~I7_bcA`qdIEeDXCJF{ZJg!uq ziUy$|85jlAV0tiwzVO&CJ!CdYyhMT8ZGFcr~SIZ)oq;lfZCrD+fI8V6yr zZ%}zH%L8)jOx^ns1(v%plrEJ~Xb4DtjyXg$D2fygkbq`PJR}CWl3^+cqogE~C^3^G zB1;Q}ff5N73u8DVBou@ek5K?2vUi0qOS-8b*Ywu~0K1)Jpaqi^cYz?cTLSY$odB@g zL6QaV8&V>er$c@QC5rt}?V_khb;|`ZHOM~>70qJ^NsrkQ#SSP4;YuWa+zCZM>dogn zbHx-0gp=D83POX+B2%3em`5fxMUIGUHy0$@NR_%pEOxc5K zJ4L4xQy%1YC3OH7z31#mi2ZJmsyo9R75zYhu7dlA_8 zx+$kA1|}tNC5Z&VTPON)<2WqOOm(Uq1aFvA$)6dx4pc-i;c>g1;U8rG3)1dzQ9Op` zc6$p#At{G)UUx*mx#A&_fH5z%0EpC<2gS3U5zpMJIHO@yy%Ongd~XQ!8(EP>0t6i? z20(Y67(`P?Z>56bF)+qDO55WaM?^+~?@gxJtph zh#w7h0{m|md{`WN%4)XLw0E?LOkX8j{o?UaO z1_2yM%ApjtgWbTTwy(Fn_#*Q*6^;3dgIM|lH{rzF5?cOJRNi+fZ73V25J z^sHWU{enI|4?S<()H%-AI`3(sV{ts6mO0qCFqm}*sX#Io2ZtIn&v|F7v@56V8cxzgG0ym5P}^yW^52c;la;xc8sG^Ka%Kuwg6PrSaAk#*HsO z>uqMrH)UocO2-IZO1=cd3YQ(E{`z#2x?1DuSC4mAe_%Tlvk2_!>(3IR^RKA}qL_q> zQu$sFM9(N}nNYyL{cbjBys_`M?X!Qa!Jki9U=dgYu{He}{c?)>dESa!EJH4soZGQI zhZ9Tu<)tdG{#sk-wYu6X9qm^?EUmUY63oD-#U(@2Y=M@a;G8L-eN3QIcf4mu&{NZW z4t#w-{T<<)A9fqXPc{T<`G@?SyN$$3wtQuCUt7zx9-N_P`CGO8cZ`~iAXJSkh%pPK z<e&b*!u0*SU8D3?+O-xE^g1yZ|>cDz^r3TqHuBPEBSfpt58A(>Lpvts}sF66}>uXw)o%s zcQ=gF&ZEDTo6l3)@||8G3<<*k>$?$w{@zD2eE>Pli!Rx=E%+wmL4>RZYqqyRy^E4isyKlF3I7aj>Kcs!sD#VjvVrQXBuM&e=&DbzPFmyabIc=hZ@ws#Yxtzk&*ORZCD>|B|bV%u# znaYWLeZI7Jn4z8DS%WLM_nY~w80Af>u5$whF63d1J7jO=w>w-H;s4KO%muP(5#r&e z4`T1$<9bm|b&psaa85dIVPk#!)UmUAr%eAGs5r)?9nHRwQ`uT*5Ud%W<6XK^)sYiu z=x^KJ{`|f3LFySY|AMnFCx9`H-R;cwCp3b)7RIh|)Euv{(zWAlUtq2#Qwr>x#YsmU zajxmfy*)70$^V&~e6JUH>7*gFdpyumbuF@_Ag1`~Vx!urG_MQ|cQ?|0@BHk;R$uH+ zkSq^b`fi@HSjM#(6khw*7EiJL&`!8;lsS;8mKD0#6_+T%8UNfi328`7tTT-3>Q--- zeq3qU`n+z2f1`HpjorRXVdi_!WA3Nb4=E@)rnp1|rWL%p;?F*%Xi2C93X!s)oagKH zioLou(mL5>Jq0bAwmhnlw3Y8iHvEyt8-SJZieU~1C~n6BX2ICzmeqF(Tirvix*?6c zz_py^?WVuv>zSb@Z{-L7z5$;<{hp*}W#nbNLKy!j*8}vUmf|r{#DssQBDZWa2jPm) zd&>$~J&fXC<{H>ryZ&Yvb5c4+NK--Ko01m8k=PI5OH-B!_%f#UIy+^)1tp!nE9!Lq z-oGip7wt!(cMu)Uncv^5Kk2Mz6=O~$yAU1twyJK}Ua(C#{Pn}wTstuoJPX__6{KgU zm7#8pO>B~bMELBxPowkhHNSCmz!JA)(8|BmKUVa^Z2sur6%1^?bXe=feuAodxZxh+ zQT5Z?E;t|*CQ>B3zwWudY@~*O>J2I`&zg1 z+u2`szt$>W>;7G&Hs#XXTYy?!bg$=dh1V$9-4wML%#N-DYm`{qcBTi(?lsko*N>(u zQ*M)W?w*cAzKez3^^lg1ado0q$kBZ^8~h6m>=`uM(*Kj}<06!N;P>Ttx=UtOhbjon z+Uu)|tGfm^pnV|#l!W6KGFFvuD5yu|JQ^&bSdx|Nl9~=nvj$1SSMpx4!xNYd(ZXFiATeK`D$R zxPG=rQl?D>lEvu%n+CBGINxZ?cG)CbO|$I?$&WM*k%jRA*rv05AR_Wj`KBk=eYxc; zKpTMN#qXc5_P!!=#&+Qa<#Sl(0Z=Bz?mPv`uh^3=K<0%7kTVBxF^h|NyRbwpUZ^F0 zYb#_iP?oxYH}*jVlhAMPt?-NeNXb0wXE7e53jBBJqh@BtYjIBSfD5qW0W$1iEXUXB zq)JNrmg6Uvo1U=1vCzz(2x;y&jhQGN{3_R$-x*aTS8nyOn z1lVI3&HB)Shzqiin>-#kuy2`!uFpv(iU0E0Xf&UY0#IvN%I3788t`2~%gE{K_df)P zK`e_?i037$9wqB7*mwEio-i9l;`_Z$*7=rMo0|ZaxMnXBAtlK*r#qmF1KD=C`df62 zel6MVb$^I%mxjigD%)#(kj7;5i5aOfD=I?g-V-j@X*LZ&N8JcS%vg8a&1{P+On^&V zagxKq)x&Cx*VBs0yQ8sT8(1f5T2+h$7?{QsH#maXZ`63)hoC?}HCIuAm8=ZolIJ?J z;9p#GBu2T9pnEmE;b9d5+){5~bM&qu*2M}T2@NW^LSPchQz1?W0_1!(+X_cok-#-} zu|9)CZ=08qNye$J6Y*fZ48$ain8%1;3XI*IN%J-2+eqY*QU9a`3YLmiibiLSv?Sq! zZ#V;aD}#a^L-ki0l=in^w)nd=!C^WIU3|C72t~@xt>@tFcxFh=hyEi6rBBQxk|ElP zER2;P*qRLGK2*4$$yYQosZ7eWICdRCFF^NdG%XEM5s8S1_jR5>_u7sL-w+C%8Cz#4 zV%A;>fq*yXarl=goaDHqd=6xZ`#omqKCb0A(&9uxlSEbwTFhUEktGS%Mk=~1s{^po z{|yU_HDbSP379NlR|?1sx6Vr9wME^Z-$wJOiQl-S3t7>}8>USltz%P-4!=TBJrvgD zcVI;aNUQ$k4NCeRc^!F>whMWPI}R7@wXj!tDZVU!=RLJSpMS`7!%Z2%Cg77|j(;ge zv`BAz2PK7`RTMo*_VMVeu}g9fnfSGc|5p5YwsD#2-LXa!JX1(_GH7thU=qt9CqvZ0 z1ymh0@!e_{4AR%v_Nr-U2X2$lGO&jCXF8Nf!>pU!yMnLS3iK<@>df94f;d_`Abp6> zhe47A4&g_bVp?;^SvH+Vx*sdqfU1Z$f>+SN~MV7_;Gw{LT}t5s&i|`?DS@0 zJL4#XwUs*C+FjkyCA%D`OOc2mfik@oR|89* zYJ;0!KzTYB#ZLn&^7No2@C-8N&HWJv)rIAgg=n`2JTr|WqrkwVcV6NHhkI*8##QH%Yg1=gG~ z3aUjRpQ&6Ln}&X#3>V~GYAi$3cI=H zu5g*UTw#a}gKGKBb-nb>ai=EJIE&##Uj#C7{MZPAhoKi_3jQKsVM!R7z-(ABg{+7r zZ&GP1@Mav-x*b$JHRla+@icA=oMV$GSY-Q9V%3eS|gEHFgo=YpW8g zmeE1+TjxW`I6poSG_4E25<8!7|q$KNR%iQ;&zvn>JSvGM({ zl@U4pg`ZmWL+`sbMLsIFWK z1gL`nfB@C@COklWoG13zhG75wavOFMlk)Oc>QWNuI^(=4$tdO(GpHIr9M7AWQN@4Y z1#mR8u5bDi{EU*Buh{1c{e#fIJBjS8oGL*)mT&M2mB%X0R}*ooe5(Px^-NO7o9$yl z<*?X16?|mBY{_{>?@8g{>}PkltjsH(+7zh?VqlzD*z?p)5cf+qr`4ZVg$A={*_jV; zT0snoYXNsFP09zq<80Orlf7pir%Eoz%E@efo+Rt&*+|Xzpi&1|=?!o`!tUYu7+NmZOSJWPaXvxBqL4zQQ)o92*lhDougXWs zJ05AwY8Mlpt4|@VSU2M?nlsdP@nsvPYQt!GtV5MF7Kzqw#kdulR-`qWGh9@jU^vqrcYF;+g9ya?=&32WKrW0D<)qwb@4jO zCXk{`$Kr7NQgZ_$mx!R)#$wX%NVtz?fEHBD`KX1#Ba)s8UI$54OAx<>r!5J?2Xt+R zd=RhY;*u)XBkcA>!#A~N>vJt+b%S_riCW*B?>cefAQhL0^h1OB!Ql$w619IP@sDY3 zy@ZUliKeo`Ff@4>M!gumESh%G@CcwvPEOiD0Q}o>$11@FFtE!0sRUJV*p+f{)j?&$ z@F=7RW}*aDos}+2snY+_I@_6BCIz!#Dn{jZ4C|L6E0Su=7i?!CsLG>~Ql(~TT^w}t 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 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 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/unpkg.com/mermaid@11/dist/mermaid.min.js b/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js new file mode 100644 index 00000000..fd60dd6f --- /dev/null +++ b/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js @@ -0,0 +1,2314 @@ +"use strict";var __esbuild_esm_mermaid=(()=>{var ixe=Object.create;var Z1=Object.defineProperty;var axe=Object.getOwnPropertyDescriptor;var sxe=Object.getOwnPropertyNames;var oxe=Object.getPrototypeOf,lxe=Object.prototype.hasOwnProperty;var o=(t,e)=>Z1(t,"name",{value:e,configurable:!0});var M=(t,e)=>()=>(t&&(e=t(t=0)),e);var Ei=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),vr=(t,e)=>{for(var r in e)Z1(t,r,{get:e[r],enumerable:!0})},$b=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of sxe(e))!lxe.call(t,i)&&i!==r&&Z1(t,i,{get:()=>e[i],enumerable:!(n=axe(e,i))||n.enumerable});return t},Sr=(t,e,r)=>($b(t,e,"default"),r&&$b(r,e,"default")),Ji=(t,e,r)=>(r=t!=null?ixe(oxe(t)):{},$b(e||!t||!t.__esModule?Z1(r,"default",{value:t,enumerable:!0}):r,t)),cxe=t=>$b(Z1({},"__esModule",{value:!0}),t);var Vb=Ei((_S,LS)=>{"use strict";(function(t,e){typeof _S=="object"&&typeof LS<"u"?LS.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(_S,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"],C=k%100;return"["+k+(R[(C-20)%10]||R[C]||R[0])+"]"},"ordinal")},x=o(function(k,R,C){var O=String(k);return!O||O.length>=R?k:""+Array(R+1-O.length).join(C)+k},"m"),b={s:x,z:o(function(k){var R=-k.utcOffset(),C=Math.abs(R),O=Math.floor(C/60),N=C%60;return(R<=0?"+":"-")+x(O,2,"0")+":"+x(N,2,"0")},"z"),m:o(function k(R,C){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"),S=o(function(k,R){if(E(k))return k.clone();var C=typeof R=="object"?R:{};return C.date=k,C.args=arguments,new I(C)},"O"),A=b;A.l=L,A.i=E,A.w=function(k,R){return S(k,{locale:R.$L,utc:R.$u,x:R.$x,$offset:R.$offset})};var I=function(){function k(C){this.$L=L(C.locale,null,!0),this.parse(C),this.$x=this.$x||C.x||{},this[T]=!0}o(k,"M");var R=k.prototype;return R.parse=function(C){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,G=(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,G)):new Date(F[1],B,F[3]||1,F[4]||0,F[5]||0,F[6]||0,G)}}return new Date(N)}(C),this.init()},R.init=function(){var C=this.$d;this.$y=C.getFullYear(),this.$M=C.getMonth(),this.$D=C.getDate(),this.$W=C.getDay(),this.$H=C.getHours(),this.$m=C.getMinutes(),this.$s=C.getSeconds(),this.$ms=C.getMilliseconds()},R.$utils=function(){return A},R.isValid=function(){return this.$d.toString()!==m},R.isSame=function(C,O){var N=S(C);return this.startOf(O)<=N&&N<=this.endOf(O)},R.isAfter=function(C,O){return S(C){"use strict";IF=Ji(Vb(),1),au={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")},J1=o(function(t="fatal"){let e=au.fatal;typeof t=="string"?t.toLowerCase()in au&&(e=au[t]):typeof t=="number"&&(e=t),Y.trace=()=>{},Y.debug=()=>{},Y.info=()=>{},Y.warn=()=>{},Y.error=()=>{},Y.fatal=()=>{},e<=au.fatal&&(Y.fatal=console.error?console.error.bind(console,Ao("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",Ao("FATAL"))),e<=au.error&&(Y.error=console.error?console.error.bind(console,Ao("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",Ao("ERROR"))),e<=au.warn&&(Y.warn=console.warn?console.warn.bind(console,Ao("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",Ao("WARN"))),e<=au.info&&(Y.info=console.info?console.info.bind(console,Ao("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",Ao("INFO"))),e<=au.debug&&(Y.debug=console.debug?console.debug.bind(console,Ao("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Ao("DEBUG"))),e<=au.trace&&(Y.trace=console.debug?console.debug.bind(console,Ao("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Ao("TRACE")))},"setLogLevel"),Ao=o(t=>`%c${(0,IF.default)().format("ss.SSS")} : ${t} : `,"format")});var uxe,up,DS,OF,Ub=M(()=>{"use strict";uxe=Object.freeze({left:0,top:0,width:16,height:16}),up=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),DS=Object.freeze({...uxe,...up}),OF=Object.freeze({...DS,body:"",hidden:!1})});var hxe,PF,BF=M(()=>{"use strict";Ub();hxe=Object.freeze({width:null,height:null}),PF=Object.freeze({...hxe,...up})});var Hb,NS,Wb,FF=M(()=>{"use strict";Hb=/^[a-z0-9]+(-[a-z0-9]+)*$/,NS=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&&!Wb(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&&!Wb(l)?null:l}if(r&&n===""){let l={provider:n,prefix:"",name:a};return e&&!Wb(l,r)?null:l}return null},"stringToIcon"),Wb=o((t,e)=>t?!!((t.provider===""||t.provider.match(Hb))&&(e&&t.prefix===""||t.prefix.match(Hb))&&t.name.match(Hb)):!1,"validateIconName")});function zF(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 GF=M(()=>{"use strict";o(zF,"mergeIconTransformations")});function RS(t,e){let r=zF(t,e);for(let n in OF)n in up?n in t&&!(n in r)&&(r[n]=up[n]):n in e?r[n]=e[n]:n in t&&(r[n]=t[n]);return r}var $F=M(()=>{"use strict";Ub();GF();o(RS,"mergeIconData")});function VF(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 UF=M(()=>{"use strict";o(VF,"getIconsTree")});function HF(t,e,r){let n=t.icons,i=t.aliases||Object.create(null),a={};function s(l){a=RS(n[l]||i[l],a)}return o(s,"parse"),s(e),r.forEach(s),RS(t,a)}function MS(t,e){if(t.icons[e])return HF(t,e,[]);let r=VF(t,[e])[e];return r?HF(t,e,r):null}var WF=M(()=>{"use strict";$F();UF();o(HF,"internalGetIconData");o(MS,"getIconData")});function IS(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(fxe);if(n===null||!n.length)return t;let i=[],a=n.shift(),s=dxe.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 fxe,dxe,YF=M(()=>{"use strict";fxe=/(-?[0-9.]*[0-9]+[0-9.]*)/g,dxe=/^-?[0-9.]*[0-9]+[0-9.]*$/g;o(IS,"calculateSize")});function pxe(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 mxe(t,e){return t?""+t+""+e:e}function qF(t,e,r){let n=pxe(t);return mxe(n.defs,e+n.content+r)}var XF=M(()=>{"use strict";o(pxe,"splitSVGDefs");o(mxe,"mergeDefsAndContent");o(qF,"wrapSVGContent")});function OS(t,e){let r={...DS,...t},n={...PF,...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=qF(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=IS(d,u/h)):(f=s==="auto"?u:s,d=l===null?IS(f,h/u):l==="auto"?h:l);let p={},m=o((y,v)=>{gxe(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 gxe,jF=M(()=>{"use strict";Ub();BF();YF();XF();gxe=o(t=>t==="unset"||t==="undefined"||t==="none","isUnsetKeyword");o(OS,"iconToSVG")});function PS(t,e=vxe){let r=[],n;for(;n=yxe.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+(xxe++).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 yxe,vxe,xxe,KF=M(()=>{"use strict";yxe=/\sid="(\S+)"/g,vxe="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16),xxe=0;o(PS,"replaceIDs")});function BS(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 QF=M(()=>{"use strict";o(BS,"iconToHTML")});var JF=Ei((Pat,ZF)=>{"use strict";var hp=1e3,fp=hp*60,dp=fp*60,jf=dp*24,bxe=jf*7,wxe=jf*365.25;ZF.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return Txe(t);if(r==="number"&&isFinite(t))return e.long?Exe(t):kxe(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function Txe(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*wxe;case"weeks":case"week":case"w":return r*bxe;case"days":case"day":case"d":return r*jf;case"hours":case"hour":case"hrs":case"hr":case"h":return r*dp;case"minutes":case"minute":case"mins":case"min":case"m":return r*fp;case"seconds":case"second":case"secs":case"sec":case"s":return r*hp;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}o(Txe,"parse");function kxe(t){var e=Math.abs(t);return e>=jf?Math.round(t/jf)+"d":e>=dp?Math.round(t/dp)+"h":e>=fp?Math.round(t/fp)+"m":e>=hp?Math.round(t/hp)+"s":t+"ms"}o(kxe,"fmtShort");function Exe(t){var e=Math.abs(t);return e>=jf?Yb(t,e,jf,"day"):e>=dp?Yb(t,e,dp,"hour"):e>=fp?Yb(t,e,fp,"minute"):e>=hp?Yb(t,e,hp,"second"):t+" ms"}o(Exe,"fmtLong");function Yb(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}o(Yb,"plural")});var tz=Ei((Fat,ez)=>{"use strict";function Sxe(t){r.debug=r,r.default=r,r.coerce=u,r.disable=a,r.enable=i,r.enabled=s,r.humanize=JF(),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 S=r.formatters[L];if(typeof S=="function"){let A=v[_];E=S.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";Qs.formatArgs=Axe;Qs.save=_xe;Qs.load=Lxe;Qs.useColors=Cxe;Qs.storage=Dxe();Qs.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`."))}})();Qs.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 Cxe(){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(Cxe,"useColors");function Axe(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+qb.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(Axe,"formatArgs");Qs.log=console.debug||console.log||(()=>{});function _xe(t){try{t?Qs.storage.setItem("debug",t):Qs.storage.removeItem("debug")}catch{}}o(_xe,"save");function Lxe(){let t;try{t=Qs.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}o(Lxe,"load");function Dxe(){try{return localStorage}catch{}}o(Dxe,"localstorage");qb.exports=tz()(Qs);var{formatters:Nxe}=qb.exports;Nxe.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var $at,nz=M(()=>{"use strict";FF();WF();jF();KF();QF();$at=Ji(rz(),1)});var zS,FS,iz,Xb,Rxe,_o,su=M(()=>{"use strict";ut();nz();zS={body:'?',height:80,width:80},FS=new Map,iz=new Map,Xb=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)iz.set(e.name,e.loader);else if("icons"in e)FS.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"),Rxe=o(async(t,e)=>{let r=NS(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=FS.get(n);if(!i){let s=iz.get(n);if(!s)throw new Error(`Icon set not found: ${r.prefix}`);try{i={...await s(),prefix:n},FS.set(n,i)}catch(l){throw Y.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let a=MS(i,r.name);if(!a)throw new Error(`Icon not found: ${t}`);return a},"getRegisteredIconData"),_o=o(async(t,e)=>{let r;try{r=await Rxe(t,e?.fallbackPrefix)}catch(a){Y.error(a),r=zS}let n=OS(r,e);return BS(PS(n.body),n.attributes)},"getIconSVG")});function jb(t){for(var e=[],r=1;r{"use strict";o(jb,"dedent")});var Kb,Kf,az,Qb=M(()=>{"use strict";Kb=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,Kf=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,az=/\s*%%.*\n/gm});var pp,$S=M(()=>{"use strict";pp=class extends Error{static{o(this,"UnknownDiagramError")}constructor(e){super(e),this.name="UnknownDiagramError"}}});var Qf,mp,Zb,VS,sz,Zf=M(()=>{"use strict";ut();Qb();$S();Qf={},mp=o(function(t,e){t=t.replace(Kb,"").replace(Kf,"").replace(az,` +`);for(let[r,{detector:n}]of Object.entries(Qf))if(n(t,e))return r;throw new pp(`No diagram type detected matching given configuration for text: ${t}`)},"detectType"),Zb=o((...t)=>{for(let{id:e,detector:r,loader:n}of t)VS(e,r,n)},"registerLazyLoadedDiagrams"),VS=o((t,e,r)=>{Qf[t]&&Y.warn(`Detector with key ${t} already exists. Overwriting.`),Qf[t]={detector:e,loader:r},Y.debug(`Detector with key ${t} added${r?" with loader":""}`)},"addDetector"),sz=o(t=>Qf[t].loader,"getDiagramLoader")});var ey,oz,US=M(()=>{"use strict";ey=function(){var t=o(function($e,ye,X,fe){for(X=X||{},fe=$e.length;fe--;X[$e[fe]]=ye);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],S=[1,40],A=[1,41],I=[1,42],D=[1,43],k=[1,44],R=[1,45],C=[1,46],O=[1,47],N=[1,48],P=[1,50],F=[1,51],B=[1,52],G=[1,53],z=[1,54],W=[1,55],Z=[1,56],j=[1,57],oe=[1,58],K=[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],Q=[1,82],ae=[1,83],ue=[1,84],ce=[1,85],te=[12,14,42],Ne=[12,14,33,42],se=[12,14,33,42,76,77,79,80],ke=[12,33],Re=[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],Ce={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(ye,X,fe,he,ge,ne,ve){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:S,56:A,57:I,58:D,59:k,60:R,61:C,62:O,63:N,64:P,65:F,66:B,67:G,68:z,69:W,70:Z,71:j,72:oe,73:K,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:S,56:A,57:I,58:D,59:k,60:R,61:C,62:O,63:N,64:P,65:F,66:B,67:G,68:z,69:W,70:Z,71:j,72:oe,73:K,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:S,56:A,57:I,58:D,59:k,60:R,61:C,62:O,63:N,64:P,65:F,66:B,67:G,68:z,69:W,70:Z,71:j,72:oe,73:K,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:S,56:A,57:I,58:D,59:k,60:R,61:C,62:O,63:N,64:P,65:F,66:B,67:G,68:z,69:W,70:Z,71:j,72:oe,73:K,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:S,56:A,57:I,58:D,59:k,60:R,61:C,62:O,63:N,64:P,65:F,66:B,67:G,68:z,69:W,70:Z,71:j,72:oe,73:K,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:S,56:A,57:I,58:D,59:k,60:R,61:C,62:O,63:N,64:P,65:F,66:B,67:G,68:z,69:W,70:Z,71:j,72:oe,73:K,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:Q,77:ae,79:ue,80:ce},{35:86,75:81,76:Q,77:ae,79:ue,80:ce},{35:87,75:81,76:Q,77:ae,79:ue,80:ce},{35:88,75:81,76:Q,77:ae,79:ue,80:ce},{35:89,75:81,76:Q,77:ae,79:ue,80:ce},{35:90,75:81,76:Q,77:ae,79:ue,80:ce},{35:91,75:81,76:Q,77:ae,79:ue,80:ce},{35:92,75:81,76:Q,77:ae,79:ue,80:ce},{35:93,75:81,76:Q,77:ae,79:ue,80:ce},{35:94,75:81,76:Q,77:ae,79:ue,80:ce},{35:95,75:81,76:Q,77:ae,79:ue,80:ce},{35:96,75:81,76:Q,77:ae,79:ue,80:ce},{35:97,75:81,76:Q,77:ae,79:ue,80:ce},{35:98,75:81,76:Q,77:ae,79:ue,80:ce},{35:99,75:81,76:Q,77:ae,79:ue,80:ce},{35:100,75:81,76:Q,77:ae,79:ue,80:ce},{35:101,75:81,76:Q,77:ae,79:ue,80:ce},{35:102,75:81,76:Q,77:ae,79:ue,80:ce},{35:103,75:81,76:Q,77:ae,79:ue,80:ce},{35:104,75:81,76:Q,77:ae,79:ue,80:ce},t(te,[2,59]),{35:105,75:81,76:Q,77:ae,79:ue,80:ce},{35:106,75:81,76:Q,77:ae,79:ue,80:ce},{35:107,75:81,76:Q,77:ae,79:ue,80:ce},{35:108,75:81,76:Q,77:ae,79:ue,80:ce},{35:109,75:81,76:Q,77:ae,79:ue,80:ce},{35:110,75:81,76:Q,77:ae,79:ue,80:ce},{35:111,75:81,76:Q,77:ae,79:ue,80:ce},{35:112,75:81,76:Q,77:ae,79:ue,80:ce},{35:113,75:81,76:Q,77:ae,79:ue,80:ce},{35:114,75:81,76:Q,77:ae,79:ue,80:ce},{35:115,75:81,76:Q,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:S,56:A,57:I,58:D,59:k,60:R,61:C,62:O,63:N,64:P,65:F,66:B,67:G,68:z,69:W,70:Z,71:j,72:oe,73:K,74:ee},{12:[1,118],33:[1,117]},{35:119,75:81,76:Q,77:ae,79:ue,80:ce},{35:120,75:81,76:Q,77:ae,79:ue,80:ce},{35:121,75:81,76:Q,77:ae,79:ue,80:ce},{35:122,75:81,76:Q,77:ae,79:ue,80:ce},{35:123,75:81,76:Q,77:ae,79:ue,80:ce},{35:124,75:81,76:Q,77:ae,79:ue,80:ce},{35:125,75:81,76:Q,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:S,56:A,57:I,58:D,59:k,60:R,61:C,62:O,63:N,64:P,65:F,66:B,67:G,68:z,69:W,70:Z,71:j,72:oe,73:K,74:ee}),t(q,[2,21]),t(q,[2,22]),t(te,[2,39]),t(Ne,[2,71],{75:81,35:132,76:Q,77:ae,79:ue,80:ce}),t(se,[2,73]),{78:[1,133]},t(se,[2,75]),t(se,[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(Ne,[2,72]),t(se,[2,74]),t(te,[2,24]),t(te,[2,35]),t(Re,[2,25]),t(Re,[2,26],{12:[1,138]}),t(Re,[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(ye,X){if(X.recoverable)this.trace(ye);else{var fe=new Error(ye);throw fe.hash=X,fe}},"parseError"),parse:o(function(ye){var X=this,fe=[0],he=[],ge=[null],ne=[],ve=this.table,U="",Te=0,ie=0,Ee=0,Ae=2,Ge=1,Be=ne.slice.call(arguments,1),me=Object.create(this.lexer),He={yy:{}};for(var Oe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Oe)&&(He.yy[Oe]=this.yy[Oe]);me.setInput(ye,He.yy),He.yy.lexer=me,He.yy.parser=this,typeof me.yylloc>"u"&&(me.yylloc={});var et=me.yylloc;ne.push(et);var bt=me.options&&me.options.ranges;typeof He.yy.parseError=="function"?this.parseError=He.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function kt(Bt){fe.length=fe.length-2*Bt,ge.length=ge.length-Bt,ne.length=ne.length-Bt}o(kt,"popStack");function vt(){var Bt;return Bt=he.pop()||me.lex()||Ge,typeof Bt!="number"&&(Bt instanceof Array&&(he=Bt,Bt=he.pop()),Bt=X.symbols_[Bt]||Bt),Bt}o(vt,"lex");for(var rt,yt,Ue,tt,ht,Et,er={},dt,Je,ct,Ct;;){if(Ue=fe[fe.length-1],this.defaultActions[Ue]?tt=this.defaultActions[Ue]:((rt===null||typeof rt>"u")&&(rt=vt()),tt=ve[Ue]&&ve[Ue][rt]),typeof tt>"u"||!tt.length||!tt[0]){var pt="";Ct=[];for(dt in ve[Ue])this.terminals_[dt]&&dt>Ae&&Ct.push("'"+this.terminals_[dt]+"'");me.showPosition?pt="Parse error on line "+(Te+1)+`: +`+me.showPosition()+` +Expecting `+Ct.join(", ")+", got '"+(this.terminals_[rt]||rt)+"'":pt="Parse error on line "+(Te+1)+": Unexpected "+(rt==Ge?"end of input":"'"+(this.terminals_[rt]||rt)+"'"),this.parseError(pt,{text:me.match,token:this.terminals_[rt]||rt,line:me.yylineno,loc:et,expected:Ct})}if(tt[0]instanceof Array&&tt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ue+", token: "+rt);switch(tt[0]){case 1:fe.push(rt),ge.push(me.yytext),ne.push(me.yylloc),fe.push(tt[1]),rt=null,yt?(rt=yt,yt=null):(ie=me.yyleng,U=me.yytext,Te=me.yylineno,et=me.yylloc,Ee>0&&Ee--);break;case 2:if(Je=this.productions_[tt[1]][1],er.$=ge[ge.length-Je],er._$={first_line:ne[ne.length-(Je||1)].first_line,last_line:ne[ne.length-1].last_line,first_column:ne[ne.length-(Je||1)].first_column,last_column:ne[ne.length-1].last_column},bt&&(er._$.range=[ne[ne.length-(Je||1)].range[0],ne[ne.length-1].range[1]]),Et=this.performAction.apply(er,[U,ie,Te,He.yy,tt[1],ge,ne].concat(Be)),typeof Et<"u")return Et;Je&&(fe=fe.slice(0,-1*Je*2),ge=ge.slice(0,-1*Je),ne=ne.slice(0,-1*Je)),fe.push(this.productions_[tt[1]][0]),ge.push(er.$),ne.push(er._$),ct=ve[fe[fe.length-2]][fe[fe.length-1]],fe.push(ct);break;case 3:return!0}}return!0},"parse")},Pe=function(){var $e={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(ye,X){return this.yy=X||this.yy||{},this._input=ye,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 ye=this._input[0];this.yytext+=ye,this.yyleng++,this.offset++,this.match+=ye,this.matched+=ye;var X=ye.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),ye},"input"),unput:o(function(ye){var X=ye.length,fe=ye.split(/(?:\r\n?|\n)/g);this._input=ye+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(ye){this.unput(this.match.slice(ye))},"less"),pastInput:o(function(){var ye=this.matched.substr(0,this.matched.length-this.match.length);return(ye.length>20?"...":"")+ye.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var ye=this.match;return ye.length<20&&(ye+=this._input.substr(0,20-ye.length)),(ye.substr(0,20)+(ye.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var ye=this.pastInput(),X=new Array(ye.length+1).join("-");return ye+this.upcomingInput()+` +`+X+"^"},"showPosition"),test_match:o(function(ye,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=ye[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+ye[0].length},this.yytext+=ye[0],this.match+=ye[0],this.matches=ye,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(ye[0].length),this.matched+=ye[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 ye,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(ye=this.test_match(fe,ge[ne]),ye!==!1)return ye;if(this._backtrack){X=!1;continue}else return!1}else if(!this.options.flex)break}return X?(ye=this.test_match(X,ge[he]),ye!==!1?ye:!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 $e}();Ce.lexer=Pe;function Ie(){this.yy={}}return o(Ie,"Parser"),Ie.prototype=Ce,Ce.Parser=Ie,new Ie}();ey.parser=ey;oz=ey});var HS,Vn,gp=M(()=>{"use strict";HS=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=>HS(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]=HS(t[a],e[a],{depth:r-1,clobber:n})):(n||typeof t[a]!="object"&&typeof e[a]!="object")&&(t[a]=e[a])}),t)},"assignWithDepth"),Vn=HS});var Jb,lz,cz=M(()=>{"use strict";Jb={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 Jb.hue2rgb(a,i,t+.3333333333333333)*255;case"g":return Jb.hue2rgb(a,i,t)*255;case"b":return Jb.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";Mxe={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")},uz=Mxe});var Ixe,fz,dz=M(()=>{"use strict";Ixe={dec2hex:o(t=>{let e=Math.round(t).toString(16);return e.length>1?e:`0${e}`},"dec2hex")},fz=Ixe});var Oxe,Yt,ac=M(()=>{"use strict";cz();hz();dz();Oxe={channel:lz,lang:uz,unit:fz},Yt=Oxe});var ou,Pi,ty=M(()=>{"use strict";ac();ou={};for(let t=0;t<=255;t++)ou[t]=Yt.unit.dec2hex(t);Pi={ALL:0,RGB:1,HSL:2}});var WS,pz,mz=M(()=>{"use strict";ty();WS=class{static{o(this,"Type")}constructor(){this.type=Pi.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=Pi.ALL}is(e){return this.type===e}},pz=WS});var YS,gz,yz=M(()=>{"use strict";ac();mz();ty();YS=class{static{o(this,"Channels")}constructor(e,r){this.color=r,this.changed=!1,this.data=e,this.type=new pz}set(e,r){return this.color=r,this.changed=!1,this.data=e,this.type.type=Pi.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(Pi.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(Pi.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(Pi.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(Pi.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(Pi.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(Pi.RGB)&&r!==void 0?r:(this._ensureRGB(),Yt.channel.rgb2hsl(e,"l"))}get a(){return this.data.a}set r(e){this.type.set(Pi.RGB),this.changed=!0,this.data.r=e}set g(e){this.type.set(Pi.RGB),this.changed=!0,this.data.g=e}set b(e){this.type.set(Pi.RGB),this.changed=!0,this.data.b=e}set h(e){this.type.set(Pi.HSL),this.changed=!0,this.data.h=e}set s(e){this.type.set(Pi.HSL),this.changed=!0,this.data.s=e}set l(e){this.type.set(Pi.HSL),this.changed=!0,this.data.l=e}set a(e){this.changed=!0,this.data.a=e}},gz=YS});var Pxe,hh,ry=M(()=>{"use strict";yz();Pxe=new gz({r:0,g:0,b:0,a:0},"transparent"),hh=Pxe});var vz,Jf,qS=M(()=>{"use strict";ry();ty();vz={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(vz.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 hh.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?`#${ou[Math.round(e)]}${ou[Math.round(r)]}${ou[Math.round(n)]}${ou[Math.round(i*255)]}`:`#${ou[Math.round(e)]}${ou[Math.round(r)]}${ou[Math.round(n)]}`},"stringify")},Jf=vz});var e4,ny,xz=M(()=>{"use strict";ac();ry();e4={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(e4.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(e4.re);if(!r)return;let[,n,i,a,s,l]=r;return hh.set({h:e4._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")},ny=e4});var t4,XS,bz=M(()=>{"use strict";qS();t4={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=t4.colors[t];if(e)return Jf.parse(e)},"parse"),stringify:o(t=>{let e=Jf.stringify(t);for(let r in t4.colors)if(t4.colors[r]===e)return r},"stringify")},XS=t4});var wz,iy,Tz=M(()=>{"use strict";ac();ry();wz={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(wz.re);if(!r)return;let[,n,i,a,s,l,u,h,f]=r;return hh.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")},iy=wz});var Bxe,Bi,lu=M(()=>{"use strict";qS();xz();bz();Tz();ty();Bxe={format:{keyword:XS,hex:Jf,rgb:iy,rgba:iy,hsl:ny,hsla:ny},parse:o(t=>{if(typeof t!="string")return t;let e=Jf.parse(t)||iy.parse(t)||ny.parse(t)||XS.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(Pi.HSL)||t.data.r===void 0?ny.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?iy.stringify(t):Jf.stringify(t),"stringify")},Bi=Bxe});var Fxe,r4,jS=M(()=>{"use strict";ac();lu();Fxe=o((t,e)=>{let r=Bi.parse(t);for(let n in e)r[n]=Yt.channel.clamp[n](e[n]);return Bi.stringify(r)},"change"),r4=Fxe});var zxe,Zs,KS=M(()=>{"use strict";ac();ry();lu();jS();zxe=o((t,e,r=0,n=1)=>{if(typeof t!="number")return r4(t,{a:e});let i=hh.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 Bi.stringify(i)},"rgba"),Zs=zxe});var Gxe,ay,kz=M(()=>{"use strict";ac();lu();Gxe=o((t,e)=>Yt.lang.round(Bi.parse(t)[e]),"channel"),ay=Gxe});var $xe,Ez,Sz=M(()=>{"use strict";ac();lu();$xe=o(t=>{let{r:e,g:r,b:n}=Bi.parse(t),i=.2126*Yt.channel.toLinear(e)+.7152*Yt.channel.toLinear(r)+.0722*Yt.channel.toLinear(n);return Yt.lang.round(i)},"luminance"),Ez=$xe});var Vxe,Cz,Az=M(()=>{"use strict";Sz();Vxe=o(t=>Ez(t)>=.5,"isLight"),Cz=Vxe});var Uxe,fa,_z=M(()=>{"use strict";Az();Uxe=o(t=>!Cz(t),"isDark"),fa=Uxe});var Hxe,n4,QS=M(()=>{"use strict";ac();lu();Hxe=o((t,e,r)=>{let n=Bi.parse(t),i=n[e],a=Yt.channel.clamp[e](i+r);return i!==a&&(n[e]=a),Bi.stringify(n)},"adjustChannel"),n4=Hxe});var Wxe,_t,Lz=M(()=>{"use strict";QS();Wxe=o((t,e)=>n4(t,"l",e),"lighten"),_t=Wxe});var Yxe,It,Dz=M(()=>{"use strict";QS();Yxe=o((t,e)=>n4(t,"l",-e),"darken"),It=Yxe});var qxe,Me,Nz=M(()=>{"use strict";lu();jS();qxe=o((t,e)=>{let r=Bi.parse(t),n={};for(let i in e)e[i]&&(n[i]=r[i]+e[i]);return r4(t,n)},"adjust"),Me=qxe});var Xxe,Rz,Mz=M(()=>{"use strict";lu();KS();Xxe=o((t,e,r=50)=>{let{r:n,g:i,b:a,a:s}=Bi.parse(t),{r:l,g:u,b:h,a:f}=Bi.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 Zs(x,b,w,_)},"mix"),Rz=Xxe});var jxe,mt,Iz=M(()=>{"use strict";lu();Mz();jxe=o((t,e=100)=>{let r=Bi.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,Rz(r,t,e)},"invert"),mt=jxe});var Oz=M(()=>{"use strict";KS();kz();_z();Lz();Dz();Nz();Iz()});var Lo=M(()=>{"use strict";Oz()});var fh,dh,sy=M(()=>{"use strict";fh="#ffffff",dh="#f2f2f2"});var Si,yp=M(()=>{"use strict";Lo();Si=o((t,e)=>e?Me(t,{s:-40,l:10}):Me(t,{s:-40,l:-10}),"mkBorder")});var ZS,Bz,Fz=M(()=>{"use strict";Lo();sy();yp();ZS=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||Me(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Me(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||Si(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||Si(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||Si(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||Si(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||mt(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||mt(this.tertiaryColor),this.lineColor=this.lineColor||mt(this.background),this.arrowheadColor=this.arrowheadColor||mt(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?It(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||It(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||mt(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||_t(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||Me(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Me(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Me(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Me(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Me(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Me(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||Me(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Me(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Me(this.primaryColor,{h:330}),this.darkMode)for(let r=0;r{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},Bz=o(t=>{let e=new ZS;return e.calculate(t),e},"getThemeVariables")});var JS,zz,Gz=M(()=>{"use strict";Lo();yp();JS=class{static{o(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=_t(this.primaryColor,16),this.tertiaryColor=Me(this.primaryColor,{h:-160}),this.primaryBorderColor=mt(this.background),this.secondaryBorderColor=Si(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Si(this.tertiaryColor,this.darkMode),this.primaryTextColor=mt(this.primaryColor),this.secondaryTextColor=mt(this.secondaryColor),this.tertiaryTextColor=mt(this.tertiaryColor),this.lineColor=mt(this.background),this.textColor=mt(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=_t(mt("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=Zs(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=It("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=It(this.sectionBkgColor,10),this.taskBorderColor=Zs(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=Zs(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=_t(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=_t(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=_t(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=Me(this.primaryColor,{h:64}),this.fillType3=Me(this.secondaryColor,{h:64}),this.fillType4=Me(this.primaryColor,{h:-64}),this.fillType5=Me(this.secondaryColor,{h:-64}),this.fillType6=Me(this.primaryColor,{h:128}),this.fillType7=Me(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||Me(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Me(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Me(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Me(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Me(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Me(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Me(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Me(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Me(this.primaryColor,{h:330});for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},zz=o(t=>{let e=new JS;return e.calculate(t),e},"getThemeVariables")});var eC,vp,i4=M(()=>{"use strict";Lo();yp();sy();eC=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=Me(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=Me(this.primaryColor,{h:-160}),this.primaryBorderColor=Si(this.primaryColor,this.darkMode),this.secondaryBorderColor=Si(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Si(this.tertiaryColor,this.darkMode),this.primaryTextColor=mt(this.primaryColor),this.secondaryTextColor=mt(this.secondaryColor),this.tertiaryTextColor=mt(this.tertiaryColor),this.lineColor=mt(this.background),this.textColor=mt(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=Zs(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||Me(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Me(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Me(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Me(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Me(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Me(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Me(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Me(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Me(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||It(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||It(this.tertiaryColor,40);for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},vp=o(t=>{let e=new eC;return e.calculate(t),e},"getThemeVariables")});var tC,$z,Vz=M(()=>{"use strict";Lo();sy();yp();tC=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=_t("#cde498",10),this.primaryBorderColor=Si(this.primaryColor,this.darkMode),this.secondaryBorderColor=Si(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Si(this.tertiaryColor,this.darkMode),this.primaryTextColor=mt(this.primaryColor),this.secondaryTextColor=mt(this.secondaryColor),this.tertiaryTextColor=mt(this.primaryColor),this.lineColor=mt(this.background),this.textColor=mt(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=It(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||Me(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Me(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Me(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Me(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Me(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Me(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Me(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Me(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Me(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||It(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||It(this.tertiaryColor,40);for(let e=0;e{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},$z=o(t=>{let e=new tC;return e.calculate(t),e},"getThemeVariables")});var rC,Uz,Hz=M(()=>{"use strict";Lo();yp();sy();rC=class{static{o(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=_t(this.contrast,55),this.background="#ffffff",this.tertiaryColor=Me(this.primaryColor,{h:-160}),this.primaryBorderColor=Si(this.primaryColor,this.darkMode),this.secondaryBorderColor=Si(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Si(this.tertiaryColor,this.darkMode),this.primaryTextColor=mt(this.primaryColor),this.secondaryTextColor=mt(this.secondaryColor),this.tertiaryTextColor=mt(this.tertiaryColor),this.lineColor=mt(this.background),this.textColor=mt(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=_t(this.contrast,55),this.border2=this.contrast,this.actorBorder=_t(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]})}},Uz=o(t=>{let e=new rC;return e.calculate(t),e},"getThemeVariables")});var Do,a4=M(()=>{"use strict";Fz();Gz();i4();Vz();Hz();Do={base:{getThemeVariables:Bz},dark:{getThemeVariables:zz},default:{getThemeVariables:vp},forest:{getThemeVariables:$z},neutral:{getThemeVariables:Uz}}});var cu,Wz=M(()=>{"use strict";cu={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 Yz,qz,Xz,ur,bs=M(()=>{"use strict";a4();Wz();Yz={...cu,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF"},themeCSS:void 0,themeVariables:Do.default.getThemeVariables(),sequence:{...cu.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:{...cu.gantt,tickInterval:void 0,useWidth:void 0},c4:{...cu.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:{...cu.pie,useWidth:984},xyChart:{...cu.xyChart,useWidth:void 0},requirement:{...cu.requirement,useWidth:void 0},packet:{...cu.packet}},qz=o((t,e="")=>Object.keys(t).reduce((r,n)=>Array.isArray(t[n])?r:typeof t[n]=="object"&&t[n]!==null?[...r,e+n,...qz(t[n],"")]:[...r,e+n],[]),"keyify"),Xz=new Set(qz(Yz,"")),ur=Yz});var xp,Kxe,nC=M(()=>{"use strict";bs();ut();xp=o(t=>{if(Y.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(e=>xp(e));return}for(let e of Object.keys(t)){if(Y.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!Xz.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),xp(t[e]);continue}let r=["themeCSS","fontFamily","altFontFamily"];for(let n of r)e.includes(n)&&(Y.debug("sanitizing css option",e),t[e]=Kxe(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"),Kxe=o(t=>{let e=0,r=0;for(let n of t){if(e{"use strict";gp();ut();a4();bs();nC();ph=Object.freeze(ur),ws=Vn({},ph),bp=[],oy=Vn({},ph),s4=o((t,e)=>{let r=Vn({},t),n={};for(let i of e)Jz(i),n=Vn(n,i);if(r=Vn(r,n),n.theme&&n.theme in Do){let i=Vn({},Kz),a=Vn(i.themeVariables||{},n.themeVariables);r.theme&&r.theme in Do&&(r.themeVariables=Do[r.theme].getThemeVariables(a))}return oy=r,tG(oy),oy},"updateCurrentConfig"),iC=o(t=>(ws=Vn({},ph),ws=Vn(ws,t),t.theme&&Do[t.theme]&&(ws.themeVariables=Do[t.theme].getThemeVariables(t.themeVariables)),s4(ws,bp),ws),"setSiteConfig"),Qz=o(t=>{Kz=Vn({},t)},"saveConfigFromInitialize"),Zz=o(t=>(ws=Vn(ws,t),s4(ws,bp),ws),"updateSiteConfig"),aC=o(()=>Vn({},ws),"getSiteConfig"),o4=o(t=>(tG(t),Vn(oy,t),Cr()),"setConfig"),Cr=o(()=>Vn({},oy),"getConfig"),Jz=o(t=>{t&&(["secure",...ws.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"&&Jz(t[e])}))},"sanitize"),eG=o(t=>{xp(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables={...t.themeVariables,fontFamily:t.fontFamily}),bp.push(t),s4(ws,bp)},"addDirective"),ly=o((t=ws)=>{bp=[],s4(t,bp)},"reset"),Qxe={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},jz={},Zxe=o(t=>{jz[t]||(Y.warn(Qxe[t]),jz[t]=!0)},"issueWarning"),tG=o(t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&Zxe("LAZY_LOAD_DEPRECATED")},"checkConfig")});var lC=Ei((sC,oC)=>{"use strict";(function(t,e){typeof sC=="object"&&typeof oC<"u"?oC.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self,t.DOMPurify=e())})(sC,function(){"use strict";let{entries:t,setPrototypeOf:e,isFrozen:r,getPrototypeOf:n,getOwnPropertyDescriptor:i}=Object,{freeze:a,seal:s,create:l}=Object,{apply:u,construct:h}=typeof Reflect<"u"&&Reflect;a||(a=o(function(Ce){return Ce},"freeze")),s||(s=o(function(Ce){return Ce},"seal")),u||(u=o(function(Ce,Pe,Ie){return Ce.apply(Pe,Ie)},"apply")),h||(h=o(function(Ce,Pe){return new Ce(...Pe)},"construct"));let f=E(Array.prototype.forEach),d=E(Array.prototype.pop),p=E(Array.prototype.push),m=E(String.prototype.toLowerCase),g=E(String.prototype.toString),y=E(String.prototype.match),v=E(String.prototype.replace),x=E(String.prototype.indexOf),b=E(String.prototype.trim),w=E(Object.prototype.hasOwnProperty),_=E(RegExp.prototype.test),T=L(TypeError);function E(Re){return function(Ce){for(var Pe=arguments.length,Ie=new Array(Pe>1?Pe-1:0),$e=1;$e2&&arguments[2]!==void 0?arguments[2]:m;e&&e(Re,null);let Ie=Ce.length;for(;Ie--;){let $e=Ce[Ie];if(typeof $e=="string"){let ye=Pe($e);ye!==$e&&(r(Ce)||(Ce[Ie]=ye),$e=ye)}Re[$e]=!0}return Re}o(S,"addToSet");function A(Re){for(let Ce=0;Ce/gm),oe=s(/\${[\w\W]*}/gm),K=s(/^data-[\-\w.\u00B7-\uFFFF]/),ee=s(/^aria-[\-\w]+$/),J=s(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),H=s(/^(?:\w+script|data):/i),q=s(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Q=s(/^html$/i),ae=s(/^[a-z][.\w]*(-[.\w]+)+$/i);var ue=Object.freeze({__proto__:null,MUSTACHE_EXPR:Z,ERB_EXPR:j,TMPLIT_EXPR:oe,DATA_ATTR:K,ARIA_ATTR:ee,IS_ALLOWED_URI:J,IS_SCRIPT_OR_DATA:H,ATTR_WHITESPACE:q,DOCTYPE_NAME:Q,CUSTOM_ELEMENT:ae});let ce={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},te=o(function(){return typeof window>"u"?null:window},"getGlobal"),Ne=o(function(Ce,Pe){if(typeof Ce!="object"||typeof Ce.createPolicy!="function")return null;let Ie=null,$e="data-tt-policy-suffix";Pe&&Pe.hasAttribute($e)&&(Ie=Pe.getAttribute($e));let ye="dompurify"+(Ie?"#"+Ie:"");try{return Ce.createPolicy(ye,{createHTML(X){return X},createScriptURL(X){return X}})}catch{return console.warn("TrustedTypes policy "+ye+" could not be created."),null}},"_createTrustedTypesPolicy");function se(){let Re=arguments.length>0&&arguments[0]!==void 0?arguments[0]:te(),Ce=o(Kt=>se(Kt),"DOMPurify");if(Ce.version="3.1.6",Ce.removed=[],!Re||!Re.document||Re.document.nodeType!==ce.document)return Ce.isSupported=!1,Ce;let{document:Pe}=Re,Ie=Pe,$e=Ie.currentScript,{DocumentFragment:ye,HTMLTemplateElement:X,Node:fe,Element:he,NodeFilter:ge,NamedNodeMap:ne=Re.NamedNodeMap||Re.MozNamedAttrMap,HTMLFormElement:ve,DOMParser:U,trustedTypes:Te}=Re,ie=he.prototype,Ee=D(ie,"cloneNode"),Ae=D(ie,"remove"),Ge=D(ie,"nextSibling"),Be=D(ie,"childNodes"),me=D(ie,"parentNode");if(typeof X=="function"){let Kt=Pe.createElement("template");Kt.content&&Kt.content.ownerDocument&&(Pe=Kt.content.ownerDocument)}let He,Oe="",{implementation:et,createNodeIterator:bt,createDocumentFragment:kt,getElementsByTagName:vt}=Pe,{importNode:rt}=Ie,yt={};Ce.isSupported=typeof t=="function"&&typeof me=="function"&&et&&et.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:Ue,ERB_EXPR:tt,TMPLIT_EXPR:ht,DATA_ATTR:Et,ARIA_ATTR:er,IS_SCRIPT_OR_DATA:dt,ATTR_WHITESPACE:Je,CUSTOM_ELEMENT:ct}=ue,{IS_ALLOWED_URI:Ct}=ue,pt=null,Bt=S({},[...k,...R,...C,...N,...F]),Tr=null,yr=S({},[...B,...G,...z,...W]),or=Object.seal(l(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}})),ln=null,Or=null,ii=!0,mn=!0,On=!1,_r=!0,mi=!1,vs=!0,Pn=!1,So=!1,gl=!1,Bn=!1,ki=!1,At=!1,Pt=!0,wt=!1,We="user-content-",Ft=!0,de=!1,gn={},xe=null,ja=S({},["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"]),W1=null,Y1=S({},["audio","video","img","source","image","track"]),q1=null,X1=S({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),op="http://www.w3.org/1998/Math/MathML",Kn="http://www.w3.org/2000/svg",ca="http://www.w3.org/1999/xhtml",tc=ca,Wf=!1,j1=null,TF=S({},[op,Kn,ca],g),Yf=null,ua=["application/xhtml+xml","text/html"],K1="text/html",En=null,Oi=null,kF=Pe.createElement("form"),lp=o(function(Le){return Le instanceof RegExp||Le instanceof Function},"isRegexOrFunction"),rc=o(function(){let Le=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Oi&&Oi===Le)){if((!Le||typeof Le!="object")&&(Le={}),Le=I(Le),Yf=ua.indexOf(Le.PARSER_MEDIA_TYPE)===-1?K1:Le.PARSER_MEDIA_TYPE,En=Yf==="application/xhtml+xml"?g:m,pt=w(Le,"ALLOWED_TAGS")?S({},Le.ALLOWED_TAGS,En):Bt,Tr=w(Le,"ALLOWED_ATTR")?S({},Le.ALLOWED_ATTR,En):yr,j1=w(Le,"ALLOWED_NAMESPACES")?S({},Le.ALLOWED_NAMESPACES,g):TF,q1=w(Le,"ADD_URI_SAFE_ATTR")?S(I(X1),Le.ADD_URI_SAFE_ATTR,En):X1,W1=w(Le,"ADD_DATA_URI_TAGS")?S(I(Y1),Le.ADD_DATA_URI_TAGS,En):Y1,xe=w(Le,"FORBID_CONTENTS")?S({},Le.FORBID_CONTENTS,En):ja,ln=w(Le,"FORBID_TAGS")?S({},Le.FORBID_TAGS,En):{},Or=w(Le,"FORBID_ATTR")?S({},Le.FORBID_ATTR,En):{},gn=w(Le,"USE_PROFILES")?Le.USE_PROFILES:!1,ii=Le.ALLOW_ARIA_ATTR!==!1,mn=Le.ALLOW_DATA_ATTR!==!1,On=Le.ALLOW_UNKNOWN_PROTOCOLS||!1,_r=Le.ALLOW_SELF_CLOSE_IN_ATTR!==!1,mi=Le.SAFE_FOR_TEMPLATES||!1,vs=Le.SAFE_FOR_XML!==!1,Pn=Le.WHOLE_DOCUMENT||!1,Bn=Le.RETURN_DOM||!1,ki=Le.RETURN_DOM_FRAGMENT||!1,At=Le.RETURN_TRUSTED_TYPE||!1,gl=Le.FORCE_BODY||!1,Pt=Le.SANITIZE_DOM!==!1,wt=Le.SANITIZE_NAMED_PROPS||!1,Ft=Le.KEEP_CONTENT!==!1,de=Le.IN_PLACE||!1,Ct=Le.ALLOWED_URI_REGEXP||J,tc=Le.NAMESPACE||ca,or=Le.CUSTOM_ELEMENT_HANDLING||{},Le.CUSTOM_ELEMENT_HANDLING&&lp(Le.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(or.tagNameCheck=Le.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Le.CUSTOM_ELEMENT_HANDLING&&lp(Le.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(or.attributeNameCheck=Le.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Le.CUSTOM_ELEMENT_HANDLING&&typeof Le.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(or.allowCustomizedBuiltInElements=Le.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),mi&&(mn=!1),ki&&(Bn=!0),gn&&(pt=S({},F),Tr=[],gn.html===!0&&(S(pt,k),S(Tr,B)),gn.svg===!0&&(S(pt,R),S(Tr,G),S(Tr,W)),gn.svgFilters===!0&&(S(pt,C),S(Tr,G),S(Tr,W)),gn.mathMl===!0&&(S(pt,N),S(Tr,z),S(Tr,W))),Le.ADD_TAGS&&(pt===Bt&&(pt=I(pt)),S(pt,Le.ADD_TAGS,En)),Le.ADD_ATTR&&(Tr===yr&&(Tr=I(Tr)),S(Tr,Le.ADD_ATTR,En)),Le.ADD_URI_SAFE_ATTR&&S(q1,Le.ADD_URI_SAFE_ATTR,En),Le.FORBID_CONTENTS&&(xe===ja&&(xe=I(xe)),S(xe,Le.FORBID_CONTENTS,En)),Ft&&(pt["#text"]=!0),Pn&&S(pt,["html","head","body"]),pt.table&&(S(pt,["tbody"]),delete ln.tbody),Le.TRUSTED_TYPES_POLICY){if(typeof Le.TRUSTED_TYPES_POLICY.createHTML!="function")throw T('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Le.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw T('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');He=Le.TRUSTED_TYPES_POLICY,Oe=He.createHTML("")}else He===void 0&&(He=Ne(Te,$e)),He!==null&&typeof Oe=="string"&&(Oe=He.createHTML(""));a&&a(Le),Oi=Le}},"_parseConfig"),qf=S({},["mi","mo","mn","ms","mtext"]),Co=S({},["foreignobject","annotation-xml"]),zb=S({},["title","style","font","a","script"]),Xf=S({},[...R,...C,...O]),cp=S({},[...N,...P]),Ka=o(function(Le){let ft=me(Le);(!ft||!ft.tagName)&&(ft={namespaceURI:tc,tagName:"template"});let zt=m(Le.tagName),Sn=m(ft.tagName);return j1[Le.namespaceURI]?Le.namespaceURI===Kn?ft.namespaceURI===ca?zt==="svg":ft.namespaceURI===op?zt==="svg"&&(Sn==="annotation-xml"||qf[Sn]):!!Xf[zt]:Le.namespaceURI===op?ft.namespaceURI===ca?zt==="math":ft.namespaceURI===Kn?zt==="math"&&Co[Sn]:!!cp[zt]:Le.namespaceURI===ca?ft.namespaceURI===Kn&&!Co[Sn]||ft.namespaceURI===op&&!qf[Sn]?!1:!cp[zt]&&(zb[zt]||!Xf[zt]):!!(Yf==="application/xhtml+xml"&&j1[Le.namespaceURI]):!1},"_checkValidNamespace"),nc=o(function(Le){p(Ce.removed,{element:Le});try{me(Le).removeChild(Le)}catch{Ae(Le)}},"_forceRemove"),Gb=o(function(Le,ft){try{p(Ce.removed,{attribute:ft.getAttributeNode(Le),from:ft})}catch{p(Ce.removed,{attribute:null,from:ft})}if(ft.removeAttribute(Le),Le==="is"&&!Tr[Le])if(Bn||ki)try{nc(ft)}catch{}else try{ft.setAttribute(Le,"")}catch{}},"_removeAttribute"),EF=o(function(Le){let ft=null,zt=null;if(gl)Le=""+Le;else{let ha=y(Le,/^[\r\n\t ]+/);zt=ha&&ha[0]}Yf==="application/xhtml+xml"&&tc===ca&&(Le=''+Le+"");let Sn=He?He.createHTML(Le):Le;if(tc===ca)try{ft=new U().parseFromString(Sn,Yf)}catch{}if(!ft||!ft.documentElement){ft=et.createDocument(tc,"template",null);try{ft.documentElement.innerHTML=Wf?Oe:Sn}catch{}}let Da=ft.body||ft.documentElement;return Le&&zt&&Da.insertBefore(Pe.createTextNode(zt),Da.childNodes[0]||null),tc===ca?vt.call(ft,Pn?"html":"body")[0]:Pn?ft.documentElement:Da},"_initDocument"),SF=o(function(Le){return bt.call(Le.ownerDocument||Le,Le,ge.SHOW_ELEMENT|ge.SHOW_COMMENT|ge.SHOW_TEXT|ge.SHOW_PROCESSING_INSTRUCTION|ge.SHOW_CDATA_SECTION,null)},"_createNodeIterator"),CF=o(function(Le){return Le instanceof ve&&(typeof Le.nodeName!="string"||typeof Le.textContent!="string"||typeof Le.removeChild!="function"||!(Le.attributes instanceof ne)||typeof Le.removeAttribute!="function"||typeof Le.setAttribute!="function"||typeof Le.namespaceURI!="string"||typeof Le.insertBefore!="function"||typeof Le.hasChildNodes!="function")},"_isClobbered"),AF=o(function(Le){return typeof fe=="function"&&Le instanceof fe},"_isNode"),iu=o(function(Le,ft,zt){yt[Le]&&f(yt[Le],Sn=>{Sn.call(Ce,ft,zt,Oi)})},"_executeHook"),_F=o(function(Le){let ft=null;if(iu("beforeSanitizeElements",Le,null),CF(Le))return nc(Le),!0;let zt=En(Le.nodeName);if(iu("uponSanitizeElement",Le,{tagName:zt,allowedTags:pt}),Le.hasChildNodes()&&!AF(Le.firstElementChild)&&_(/<[/\w]/g,Le.innerHTML)&&_(/<[/\w]/g,Le.textContent)||Le.nodeType===ce.progressingInstruction||vs&&Le.nodeType===ce.comment&&_(/<[/\w]/g,Le.data))return nc(Le),!0;if(!pt[zt]||ln[zt]){if(!ln[zt]&&DF(zt)&&(or.tagNameCheck instanceof RegExp&&_(or.tagNameCheck,zt)||or.tagNameCheck instanceof Function&&or.tagNameCheck(zt)))return!1;if(Ft&&!xe[zt]){let Sn=me(Le)||Le.parentNode,Da=Be(Le)||Le.childNodes;if(Da&&Sn){let ha=Da.length;for(let xs=ha-1;xs>=0;--xs){let ic=Ee(Da[xs],!0);ic.__removalCount=(Le.__removalCount||0)+1,Sn.insertBefore(ic,Ge(Le))}}}return nc(Le),!0}return Le instanceof he&&!Ka(Le)||(zt==="noscript"||zt==="noembed"||zt==="noframes")&&_(/<\/no(script|embed|frames)/i,Le.innerHTML)?(nc(Le),!0):(mi&&Le.nodeType===ce.text&&(ft=Le.textContent,f([Ue,tt,ht],Sn=>{ft=v(ft,Sn," ")}),Le.textContent!==ft&&(p(Ce.removed,{element:Le.cloneNode()}),Le.textContent=ft)),iu("afterSanitizeElements",Le,null),!1)},"_sanitizeElements"),LF=o(function(Le,ft,zt){if(Pt&&(ft==="id"||ft==="name")&&(zt in Pe||zt in kF))return!1;if(!(mn&&!Or[ft]&&_(Et,ft))){if(!(ii&&_(er,ft))){if(!Tr[ft]||Or[ft]){if(!(DF(Le)&&(or.tagNameCheck instanceof RegExp&&_(or.tagNameCheck,Le)||or.tagNameCheck instanceof Function&&or.tagNameCheck(Le))&&(or.attributeNameCheck instanceof RegExp&&_(or.attributeNameCheck,ft)||or.attributeNameCheck instanceof Function&&or.attributeNameCheck(ft))||ft==="is"&&or.allowCustomizedBuiltInElements&&(or.tagNameCheck instanceof RegExp&&_(or.tagNameCheck,zt)||or.tagNameCheck instanceof Function&&or.tagNameCheck(zt))))return!1}else if(!q1[ft]){if(!_(Ct,v(zt,Je,""))){if(!((ft==="src"||ft==="xlink:href"||ft==="href")&&Le!=="script"&&x(zt,"data:")===0&&W1[Le])){if(!(On&&!_(dt,v(zt,Je,"")))){if(zt)return!1}}}}}}return!0},"_isValidAttribute"),DF=o(function(Le){return Le!=="annotation-xml"&&y(Le,ct)},"_isBasicCustomElement"),NF=o(function(Le){iu("beforeSanitizeAttributes",Le,null);let{attributes:ft}=Le;if(!ft)return;let zt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Tr},Sn=ft.length;for(;Sn--;){let Da=ft[Sn],{name:ha,namespaceURI:xs,value:ic}=Da,Q1=En(ha),Qa=ha==="value"?ic:b(ic);if(zt.attrName=Q1,zt.attrValue=Qa,zt.keepAttr=!0,zt.forceKeepAttr=void 0,iu("uponSanitizeAttribute",Le,zt),Qa=zt.attrValue,vs&&_(/((--!?|])>)|<\/(style|title)/i,Qa)){Gb(ha,Le);continue}if(zt.forceKeepAttr||(Gb(ha,Le),!zt.keepAttr))continue;if(!_r&&_(/\/>/i,Qa)){Gb(ha,Le);continue}mi&&f([Ue,tt,ht],MF=>{Qa=v(Qa,MF," ")});let RF=En(Le.nodeName);if(LF(RF,Q1,Qa)){if(wt&&(Q1==="id"||Q1==="name")&&(Gb(ha,Le),Qa=We+Qa),He&&typeof Te=="object"&&typeof Te.getAttributeType=="function"&&!xs)switch(Te.getAttributeType(RF,Q1)){case"TrustedHTML":{Qa=He.createHTML(Qa);break}case"TrustedScriptURL":{Qa=He.createScriptURL(Qa);break}}try{xs?Le.setAttributeNS(xs,ha,Qa):Le.setAttribute(ha,Qa),CF(Le)?nc(Le):d(Ce.removed)}catch{}}}iu("afterSanitizeAttributes",Le,null)},"_sanitizeAttributes"),nxe=o(function Kt(Le){let ft=null,zt=SF(Le);for(iu("beforeSanitizeShadowDOM",Le,null);ft=zt.nextNode();)iu("uponSanitizeShadowNode",ft,null),!_F(ft)&&(ft.content instanceof ye&&Kt(ft.content),NF(ft));iu("afterSanitizeShadowDOM",Le,null)},"_sanitizeShadowDOM");return Ce.sanitize=function(Kt){let Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ft=null,zt=null,Sn=null,Da=null;if(Wf=!Kt,Wf&&(Kt=""),typeof Kt!="string"&&!AF(Kt))if(typeof Kt.toString=="function"){if(Kt=Kt.toString(),typeof Kt!="string")throw T("dirty is not a string, aborting")}else throw T("toString is not a function");if(!Ce.isSupported)return Kt;if(So||rc(Le),Ce.removed=[],typeof Kt=="string"&&(de=!1),de){if(Kt.nodeName){let ic=En(Kt.nodeName);if(!pt[ic]||ln[ic])throw T("root node is forbidden and cannot be sanitized in-place")}}else if(Kt instanceof fe)ft=EF(""),zt=ft.ownerDocument.importNode(Kt,!0),zt.nodeType===ce.element&&zt.nodeName==="BODY"||zt.nodeName==="HTML"?ft=zt:ft.appendChild(zt);else{if(!Bn&&!mi&&!Pn&&Kt.indexOf("<")===-1)return He&&At?He.createHTML(Kt):Kt;if(ft=EF(Kt),!ft)return Bn?null:At?Oe:""}ft&&gl&&nc(ft.firstChild);let ha=SF(de?Kt:ft);for(;Sn=ha.nextNode();)_F(Sn)||(Sn.content instanceof ye&&nxe(Sn.content),NF(Sn));if(de)return Kt;if(Bn){if(ki)for(Da=kt.call(ft.ownerDocument);ft.firstChild;)Da.appendChild(ft.firstChild);else Da=ft;return(Tr.shadowroot||Tr.shadowrootmode)&&(Da=rt.call(Ie,Da,!0)),Da}let xs=Pn?ft.outerHTML:ft.innerHTML;return Pn&&pt["!doctype"]&&ft.ownerDocument&&ft.ownerDocument.doctype&&ft.ownerDocument.doctype.name&&_(Q,ft.ownerDocument.doctype.name)&&(xs=" +`+xs),mi&&f([Ue,tt,ht],ic=>{xs=v(xs,ic," ")}),He&&At?He.createHTML(xs):xs},Ce.setConfig=function(){let Kt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};rc(Kt),So=!0},Ce.clearConfig=function(){Oi=null,So=!1},Ce.isValidAttribute=function(Kt,Le,ft){Oi||rc({});let zt=En(Kt),Sn=En(Le);return LF(zt,Sn,ft)},Ce.addHook=function(Kt,Le){typeof Le=="function"&&(yt[Kt]=yt[Kt]||[],p(yt[Kt],Le))},Ce.removeHook=function(Kt){if(yt[Kt])return d(yt[Kt])},Ce.removeHooks=function(Kt){yt[Kt]&&(yt[Kt]=[])},Ce.removeAllHooks=function(){yt={}},Ce}o(se,"createDOMPurify");var ke=se();return ke})});var _$={};vr(_$,{default:()=>Y4e});function abe(t){return String(t).replace(ibe,e=>nbe[e])}function cbe(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 IG(t){for(var e=0;e=b4[e]&&t<=b4[e+1])return!0;return!1}function Abe(t,e){lc[t]=e}function IC(t,e,r){if(!lc[e])throw new Error("Font metrics not found for font: "+e+".");var n=t.charCodeAt(0),i=lc[e][n];if(!i&&t[0]in nG&&(n=nG[t[0]].charCodeAt(0),i=lc[e][n]),!i&&r==="text"&&IG(n)&&(i=lc[e][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function _be(t){var e;if(t>=5?e=0:t>=3?e=1:e=2,!cC[e]){var r=cC[e]={cssEmPerMu:l4.quad[e]/18};for(var n in l4)l4.hasOwnProperty(n)&&(r[n]=l4[n][e])}return cC[e]}function sG(t){if(t instanceof Es)return t;throw new Error("Expected symbolNode but got "+String(t)+".")}function Rbe(t){if(t instanceof nd)return t;throw new Error("Expected span but got "+String(t)+".")}function $(t,e,r,n,i,a){Cn[t][i]={font:e,group:r,replace:n},a&&n&&(Cn[t][n]=Cn[t][i])}function St(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(m4(s,e)),s=[]),a.push(n[l]));s.length>0&&a.push(m4(s,e));var h;r?(h=m4(Fi(r,e,!0)),h.classes=["tag"],a.push(h)):i&&a.push(i);var f=pu(["katex-html"],a);if(f.setAttribute("aria-hidden","true"),h){var d=h.children[0];d.style.height=gt(f.height+f.depth),f.depth&&(d.style.verticalAlign=gt(-f.depth))}return f}function YG(t){return new rd(t)}function hG(t,e,r,n,i){var a=Ss(t,r),s;a.length===1&&a[0]instanceof ks&&Jt.contains(["mrow","mtable"],a[0].type)?s=a[0]:s=new at.MathNode("mrow",a);var l=new at.MathNode("annotation",[new at.TextNode(e)]);l.setAttribute("encoding","application/x-tex");var u=new at.MathNode("semantics",[s,l]),h=new at.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 Fe.makeSpan([f],[h])}function gr(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 FC(t){var e=N4(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 N4(t){return t&&(t.type==="atom"||Ibe.hasOwnProperty(t.type))?t:null}function KG(t,e){var r=Fi(t.body,e,!0);return u4e([t.mclass],r,e)}function QG(t,e){var r,n=Ss(t.body,e);return t.mclass==="minner"?r=new at.MathNode("mpadded",n):t.mclass==="mord"?t.isCharacterBox?(r=n[0],r.type="mi"):r=new at.MathNode("mi",n):(t.isCharacterBox?(r=n[0],r.type="mo"):r=new at.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 d4e(t,e,r){var n=h4e[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 p4e(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 lt("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=d4e(h,f,t),y={type:"styling",body:[g],mode:"math",style:"display"};n.push(y),l=fG()}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 M4(t,e){var r=N4(t);if(r&&Jt.contains(A4e,r.text))return r;throw r?new lt("Invalid delimiter '"+r.text+"' after '"+e.funcName+"'",t):new lt("Invalid delimiter type '"+t.type+"'",t)}function mG(t){if(!t.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}function uc(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";Js=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}},Ro=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,Js.range(this,e))}},lt=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":">","<":"<",'"':""","'":"'"},ibe=/[&><"']/g;o(abe,"escape");MG=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"),sbe=o(function(e){var r=MG(e);return r.type==="mathord"||r.type==="textord"||r.type==="atom"},"isCharacterBox"),obe=o(function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e},"assert"),lbe=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:Jxe,deflt:ebe,escape:abe,hyphenate:rbe,getBaseElem:MG,isCharacterBox:sbe,protocolFromUrl:lbe},x4={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(cbe,"getDefaultValue");dy=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 x4)if(x4.hasOwnProperty(r)){var n=x4[r];this[r]=e[r]!==void 0?n.processor?n.processor(e[r]):e[r]:cbe(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 lt("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}},sc=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 oc[ube[this.id]]}sub(){return oc[hbe[this.id]]}fracNum(){return oc[fbe[this.id]]}fracDen(){return oc[dbe[this.id]]}cramp(){return oc[pbe[this.id]]}text(){return oc[mbe[this.id]]}isTight(){return this.size>=2}},MC=0,w4=1,kp=2,fu=3,py=4,No=5,Ep=6,Ja=7,oc=[new sc(MC,0,!1),new sc(w4,0,!0),new sc(kp,1,!1),new sc(fu,1,!0),new sc(py,2,!1),new sc(No,2,!0),new sc(Ep,3,!1),new sc(Ja,3,!0)],ube=[py,No,py,No,Ep,Ja,Ep,Ja],hbe=[No,No,No,No,Ja,Ja,Ja,Ja],fbe=[kp,fu,py,No,Ep,Ja,Ep,Ja],dbe=[fu,fu,No,No,Ja,Ja,Ja,Ja],pbe=[w4,w4,fu,fu,No,No,Ja,Ja],mbe=[MC,w4,kp,fu,kp,fu,kp,fu],rr={DISPLAY:oc[MC],TEXT:oc[kp],SCRIPT:oc[py],SCRIPTSCRIPT:oc[Ep]},wC=[{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");b4=[];wC.forEach(t=>t.blocks.forEach(e=>b4.push(...e)));o(IG,"supportedCodepoint");Tp=80,ybe=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"),xbe=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"),bbe=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"),Tbe=o(function(e){var r=e/2;return"M400000 "+e+" H0 L"+r+" 0 l65 45 L145 "+(e-80)+" H400000z"},"phasePath"),kbe=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"),Ebe=o(function(e,r,n){r=1e3*r;var i="";switch(e){case"sqrtMain":i=ybe(r,Tp);break;case"sqrtSize1":i=vbe(r,Tp);break;case"sqrtSize2":i=xbe(r,Tp);break;case"sqrtSize3":i=bbe(r,Tp);break;case"sqrtSize4":i=wbe(r,Tp);break;case"sqrtTall":i=kbe(r,Tp,n)}return i},"sqrtPath"),Sbe=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"),rG={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`},Cbe=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"),rd=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("")}},lc={"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]}},l4={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]},nG={\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(Abe,"setFontMetrics");o(IC,"getCharacterMetrics");cC={};o(_be,"getGlobalMetrics");Lbe=[[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]],iG=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],aG=o(function(e,r){return r.size<2?e:Lbe[e-1][r.size-1]},"sizeAtStyle"),T4=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=iG[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:aG(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:iG[e-1]})}havingBaseStyle(e){e=e||this.style.text();var r=aG(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=_be(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}};T4.BASESIZE=6;TC={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},Dbe={ex:!0,em:!0,mu:!0},OG=o(function(e){return typeof e!="string"&&(e=e.unit),e in TC||e in Dbe||e==="ex"},"validUnit"),Jn=o(function(e,r){var n;if(e.unit in TC)n=TC[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 lt("Invalid unit: '"+e.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(e.number*n,r.maxSize)},"calculateSize"),gt=o(function(e){return+e.toFixed(4)+"em"},"makeEm"),yh=o(function(e){return e.filter(r=>r).join(" ")},"createClass"),PG=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"),BG=o(function(e){var r=document.createElement(e);r.className=yh(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"),nd=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,PG.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 BG.call(this,"span")}toMarkup(){return FG.call(this,"span")}},my=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,PG.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 BG.call(this,"a")}toMarkup(){return FG.call(this,"a")}},kC=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=gt(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=yh(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}},vl=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':''}},gy=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);$(V,re,we,"\u2208","\\in",!0);$(V,re,we,"\uE020","\\@not");$(V,re,we,"\u2282","\\subset",!0);$(V,re,we,"\u2283","\\supset",!0);$(V,re,we,"\u2286","\\subseteq",!0);$(V,re,we,"\u2287","\\supseteq",!0);$(V,be,we,"\u2288","\\nsubseteq",!0);$(V,be,we,"\u2289","\\nsupseteq",!0);$(V,re,we,"\u22A8","\\models");$(V,re,we,"\u2190","\\leftarrow",!0);$(V,re,we,"\u2264","\\le");$(V,re,we,"\u2264","\\leq",!0);$(V,re,we,"<","\\lt",!0);$(V,re,we,"\u2192","\\rightarrow",!0);$(V,re,we,"\u2192","\\to");$(V,be,we,"\u2271","\\ngeq",!0);$(V,be,we,"\u2270","\\nleq",!0);$(V,re,gu,"\xA0","\\ ");$(V,re,gu,"\xA0","\\space");$(V,re,gu,"\xA0","\\nobreakspace");$(it,re,gu,"\xA0","\\ ");$(it,re,gu,"\xA0"," ");$(it,re,gu,"\xA0","\\space");$(it,re,gu,"\xA0","\\nobreakspace");$(V,re,gu,null,"\\nobreak");$(V,re,gu,null,"\\allowbreak");$(V,re,L4,",",",");$(V,re,L4,";",";");$(V,be,Lt,"\u22BC","\\barwedge",!0);$(V,be,Lt,"\u22BB","\\veebar",!0);$(V,re,Lt,"\u2299","\\odot",!0);$(V,re,Lt,"\u2295","\\oplus",!0);$(V,re,Lt,"\u2297","\\otimes",!0);$(V,re,_e,"\u2202","\\partial",!0);$(V,re,Lt,"\u2298","\\oslash",!0);$(V,be,Lt,"\u229A","\\circledcirc",!0);$(V,be,Lt,"\u22A1","\\boxdot",!0);$(V,re,Lt,"\u25B3","\\bigtriangleup");$(V,re,Lt,"\u25BD","\\bigtriangledown");$(V,re,Lt,"\u2020","\\dagger");$(V,re,Lt,"\u22C4","\\diamond");$(V,re,Lt,"\u22C6","\\star");$(V,re,Lt,"\u25C3","\\triangleleft");$(V,re,Lt,"\u25B9","\\triangleright");$(V,re,eo,"{","\\{");$(it,re,_e,"{","\\{");$(it,re,_e,"{","\\textbraceleft");$(V,re,es,"}","\\}");$(it,re,_e,"}","\\}");$(it,re,_e,"}","\\textbraceright");$(V,re,eo,"{","\\lbrace");$(V,re,es,"}","\\rbrace");$(V,re,eo,"[","\\lbrack",!0);$(it,re,_e,"[","\\lbrack",!0);$(V,re,es,"]","\\rbrack",!0);$(it,re,_e,"]","\\rbrack",!0);$(V,re,eo,"(","\\lparen",!0);$(V,re,es,")","\\rparen",!0);$(it,re,_e,"<","\\textless",!0);$(it,re,_e,">","\\textgreater",!0);$(V,re,eo,"\u230A","\\lfloor",!0);$(V,re,es,"\u230B","\\rfloor",!0);$(V,re,eo,"\u2308","\\lceil",!0);$(V,re,es,"\u2309","\\rceil",!0);$(V,re,_e,"\\","\\backslash");$(V,re,_e,"\u2223","|");$(V,re,_e,"\u2223","\\vert");$(it,re,_e,"|","\\textbar",!0);$(V,re,_e,"\u2225","\\|");$(V,re,_e,"\u2225","\\Vert");$(it,re,_e,"\u2225","\\textbardbl");$(it,re,_e,"~","\\textasciitilde");$(it,re,_e,"\\","\\textbackslash");$(it,re,_e,"^","\\textasciicircum");$(V,re,we,"\u2191","\\uparrow",!0);$(V,re,we,"\u21D1","\\Uparrow",!0);$(V,re,we,"\u2193","\\downarrow",!0);$(V,re,we,"\u21D3","\\Downarrow",!0);$(V,re,we,"\u2195","\\updownarrow",!0);$(V,re,we,"\u21D5","\\Updownarrow",!0);$(V,re,Ci,"\u2210","\\coprod");$(V,re,Ci,"\u22C1","\\bigvee");$(V,re,Ci,"\u22C0","\\bigwedge");$(V,re,Ci,"\u2A04","\\biguplus");$(V,re,Ci,"\u22C2","\\bigcap");$(V,re,Ci,"\u22C3","\\bigcup");$(V,re,Ci,"\u222B","\\int");$(V,re,Ci,"\u222B","\\intop");$(V,re,Ci,"\u222C","\\iint");$(V,re,Ci,"\u222D","\\iiint");$(V,re,Ci,"\u220F","\\prod");$(V,re,Ci,"\u2211","\\sum");$(V,re,Ci,"\u2A02","\\bigotimes");$(V,re,Ci,"\u2A01","\\bigoplus");$(V,re,Ci,"\u2A00","\\bigodot");$(V,re,Ci,"\u222E","\\oint");$(V,re,Ci,"\u222F","\\oiint");$(V,re,Ci,"\u2230","\\oiiint");$(V,re,Ci,"\u2A06","\\bigsqcup");$(V,re,Ci,"\u222B","\\smallint");$(it,re,Sp,"\u2026","\\textellipsis");$(V,re,Sp,"\u2026","\\mathellipsis");$(it,re,Sp,"\u2026","\\ldots",!0);$(V,re,Sp,"\u2026","\\ldots",!0);$(V,re,Sp,"\u22EF","\\@cdots",!0);$(V,re,Sp,"\u22F1","\\ddots",!0);$(V,re,_e,"\u22EE","\\varvdots");$(V,re,Un,"\u02CA","\\acute");$(V,re,Un,"\u02CB","\\grave");$(V,re,Un,"\xA8","\\ddot");$(V,re,Un,"~","\\tilde");$(V,re,Un,"\u02C9","\\bar");$(V,re,Un,"\u02D8","\\breve");$(V,re,Un,"\u02C7","\\check");$(V,re,Un,"^","\\hat");$(V,re,Un,"\u20D7","\\vec");$(V,re,Un,"\u02D9","\\dot");$(V,re,Un,"\u02DA","\\mathring");$(V,re,tr,"\uE131","\\@imath");$(V,re,tr,"\uE237","\\@jmath");$(V,re,_e,"\u0131","\u0131");$(V,re,_e,"\u0237","\u0237");$(it,re,_e,"\u0131","\\i",!0);$(it,re,_e,"\u0237","\\j",!0);$(it,re,_e,"\xDF","\\ss",!0);$(it,re,_e,"\xE6","\\ae",!0);$(it,re,_e,"\u0153","\\oe",!0);$(it,re,_e,"\xF8","\\o",!0);$(it,re,_e,"\xC6","\\AE",!0);$(it,re,_e,"\u0152","\\OE",!0);$(it,re,_e,"\xD8","\\O",!0);$(it,re,Un,"\u02CA","\\'");$(it,re,Un,"\u02CB","\\`");$(it,re,Un,"\u02C6","\\^");$(it,re,Un,"\u02DC","\\~");$(it,re,Un,"\u02C9","\\=");$(it,re,Un,"\u02D8","\\u");$(it,re,Un,"\u02D9","\\.");$(it,re,Un,"\xB8","\\c");$(it,re,Un,"\u02DA","\\r");$(it,re,Un,"\u02C7","\\v");$(it,re,Un,"\xA8",'\\"');$(it,re,Un,"\u02DD","\\H");$(it,re,Un,"\u25EF","\\textcircled");zG={"--":!0,"---":!0,"``":!0,"''":!0};$(it,re,_e,"\u2013","--",!0);$(it,re,_e,"\u2013","\\textendash");$(it,re,_e,"\u2014","---",!0);$(it,re,_e,"\u2014","\\textemdash");$(it,re,_e,"\u2018","`",!0);$(it,re,_e,"\u2018","\\textquoteleft");$(it,re,_e,"\u2019","'",!0);$(it,re,_e,"\u2019","\\textquoteright");$(it,re,_e,"\u201C","``",!0);$(it,re,_e,"\u201C","\\textquotedblleft");$(it,re,_e,"\u201D","''",!0);$(it,re,_e,"\u201D","\\textquotedblright");$(V,re,_e,"\xB0","\\degree",!0);$(it,re,_e,"\xB0","\\degree");$(it,re,_e,"\xB0","\\textdegree",!0);$(V,re,_e,"\xA3","\\pounds");$(V,re,_e,"\xA3","\\mathsterling",!0);$(it,re,_e,"\xA3","\\pounds");$(it,re,_e,"\xA3","\\textsterling",!0);$(V,be,_e,"\u2720","\\maltese");$(it,be,_e,"\u2720","\\maltese");oG='0123456789/@."';for(c4=0;c40)return yl(a,h,i,r,s.concat(f));if(u){var d,p;if(u==="boldsymbol"){var m=Bbe(a,i,r,s,n);d=m.fontName,p=[m.fontClass]}else l?(d=VG[u].fontName,p=[u]):(d=p4(u,r.fontWeight,r.fontShape),p=[u,r.fontWeight,r.fontShape]);if(D4(a,d,i).metrics)return yl(a,d,i,r,s.concat(p));if(zG.hasOwnProperty(a)&&d.slice(0,10)==="Typewriter"){for(var g=[],y=0;y{if(yh(t.classes)!==yh(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"),Gbe=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"),Ts=o(function(e,r,n,i){var a=new nd(e,r,n,i);return OC(a),a},"makeSpan"),GG=o((t,e,r,n)=>new nd(t,e,r,n),"makeSvgSpan"),$be=o(function(e,r,n){var i=Ts([e],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=gt(i.height),i.maxFontSize=1,i},"makeLineSpan"),Vbe=o(function(e,r,n,i){var a=new my(e,r,n,i);return OC(a),a},"makeAnchor"),$G=o(function(e){var r=new rd(e);return OC(r),r},"makeFragment"),Ube=o(function(e,r){return e instanceof rd?Ts([],[e],r):e},"wrapFragment"),Hbe=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=Ts(["mspace"],[],e),n=Jn(t,e);return r.style.marginRight=gt(n),r},"makeGlue"),p4=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"),VG={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"}},UG={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},qbe=o(function(e,r){var[n,i,a]=UG[e],s=new cc(n),l=new vl([s],{width:gt(i),height:gt(a),style:"width:"+gt(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),u=GG(["overlay"],[l],r);return u.height=a,u.style.height=gt(a),u.style.width=gt(i),u},"staticSvg"),Fe={fontMap:VG,makeSymbol:yl,mathsym:Pbe,makeSpan:Ts,makeSvgSpan:GG,makeLineSpan:$be,makeAnchor:Vbe,makeFragment:$G,wrapFragment:Ube,makeVList:Wbe,makeOrd:Fbe,makeGlue:Ybe,staticSvg:qbe,svgData:UG,tryCombineChars:Gbe},Zn={number:3,unit:"mu"},ed={number:4,unit:"mu"},hu={number:5,unit:"mu"},Xbe={mord:{mop:Zn,mbin:ed,mrel:hu,minner:Zn},mop:{mord:Zn,mop:Zn,mrel:hu,minner:Zn},mbin:{mord:ed,mop:ed,mopen:ed,minner:ed},mrel:{mord:hu,mop:hu,mopen:hu,minner:hu},mopen:{},mclose:{mop:Zn,mbin:ed,mrel:hu,minner:Zn},mpunct:{mord:Zn,mop:Zn,mrel:hu,mopen:Zn,mclose:Zn,mpunct:Zn,minner:Zn},minner:{mord:Zn,mop:Zn,mbin:ed,mrel:hu,mopen:Zn,mpunct:Zn,minner:Zn}},jbe={mord:{mop:Zn},mop:{mord:Zn,mop:Zn},mbin:{},mrel:{},mopen:{},mclose:{mop:Zn},mpunct:{},minner:{mop:Zn}},HG={},E4={},S4={};o(St,"defineFunction");o(id,"defineFunctionBuilders");C4=o(function(e){return e.type==="ordgroup"&&e.body.length===1?e.body[0]:e},"normalizeArgument"),gi=o(function(e){return e.type==="ordgroup"?e.body:[e]},"ordargument"),pu=Fe.makeSpan,Kbe=["leftmost","mbin","mopen","mrel","mop","mpunct"],Qbe=["rightmost","mrel","mclose","mpunct"],Zbe={display:rr.DISPLAY,text:rr.TEXT,script:rr.SCRIPT,scriptscript:rr.SCRIPTSCRIPT},Jbe={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},Fi=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(Qbe,x)?y.classes[0]="mord":x==="mbin"&&Jt.contains(Kbe,v)&&(g.classes[0]="mord")},{node:d},p,m),uG(a,(g,y)=>{var v=SC(y),x=SC(g),b=v&&x?g.hasClass("mtight")?jbe[v][x]:Xbe[v][x]:null;if(b)return Fe.makeGlue(b,h)},{node:d},p,m),a},"buildExpression"),uG=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"),WG=o(function(e){return e instanceof rd||e instanceof my||e instanceof nd&&e.hasClass("enclosing")?e:null},"checkPartialGroup"),e4e=o(function t(e,r){var n=WG(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"),SC=o(function(e,r){return e?(r&&(e=e4e(e,r)),Jbe[e.classes[0]]||null):null},"getTypeOfDomTree"),yy=o(function(e,r){var n=["nulldelimiter"].concat(e.baseSizingClasses());return pu(r.concat(n))},"makeNullDelimiter"),Pr=o(function(e,r,n){if(!e)return pu();if(E4[e.type]){var i=E4[e.type](e,r);if(n&&r.size!==n.size){i=pu(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new lt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(m4,"buildHTMLUnbreakable");o(CC,"buildHTML");o(YG,"newDocumentFragment");ks=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=yh(this.classes));for(var n=0;n0&&(e+=' class ="'+Jt.escape(yh(this.classes))+'"'),e+=">";for(var n=0;n",e}toText(){return this.children.map(e=>e.toText()).join("")}},td=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}},AC=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",gt(this.width)),e}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}},at={MathNode:ks,TextNode:td,SpaceNode:AC,newDocumentFragment:YG},Mo=o(function(e,r,n){return Cn[r][e]&&Cn[r][e].replace&&e.charCodeAt(0)!==55349&&!(zG.hasOwnProperty(e)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(e=Cn[r][e].replace),new at.TextNode(e)},"makeText"),PC=o(function(e){return e.length===1?e[0]:new at.MathNode("mrow",e)},"makeRow"),BC=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;Cn[i][a]&&Cn[i][a].replace&&(a=Cn[i][a].replace);var s=Fe.fontMap[n].fontName;return IC(a,s,i)?Fe.fontMap[n].variant:null},"getVariant"),Ss=o(function(e,r,n){if(e.length===1){var i=yn(e[0],r);return n&&i instanceof ks&&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"),vh=o(function(e,r,n){return PC(Ss(e,r,n))},"buildExpressionRow"),yn=o(function(e,r){if(!e)return new at.MathNode("mrow");if(S4[e.type]){var n=S4[e.type](e,r);return n}else throw new lt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(hG,"buildMathML");qG=o(function(e){return new T4({style:e.displayMode?rr.DISPLAY:rr.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},"optionsFromSettings"),XG=o(function(e,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),e=Fe.makeSpan(n,[e])}return e},"displayWrap"),t4e=o(function(e,r,n){var i=qG(n),a;if(n.output==="mathml")return hG(e,r,i,n.displayMode,!0);if(n.output==="html"){var s=CC(e,i);a=Fe.makeSpan(["katex"],[s])}else{var l=hG(e,r,i,n.displayMode,!1),u=CC(e,i);a=Fe.makeSpan(["katex"],[l,u])}return XG(a,n)},"buildTree"),r4e=o(function(e,r,n){var i=qG(n),a=CC(e,i),s=Fe.makeSpan(["katex"],[a]);return XG(s,n)},"buildHTMLTree"),n4e={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":"="},i4e=o(function(e){var r=new at.MathNode("mo",[new at.TextNode(n4e[e.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},"mathMLnode"),a4e={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]},s4e=o(function(e){return e.type==="ordgroup"?e.body.length:1},"groupLength"),o4e=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=s4e(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 cc(p),v=new vl([y],{width:"100%",height:gt(m),viewBox:"0 0 "+l+" "+d,preserveAspectRatio:"none"});return{span:Fe.makeSvgSpan([],[v],r),minWidth:0,height:m}}else{var x=[],b=a4e[u],[w,_,T]=b,E=T/1e3,L=w.length,S,A;if(L===1){var I=b[3];S=["hide-tail"],A=[I]}else if(L===2)S=["halfarrow-left","halfarrow-right"],A=["xMinYMin","xMaxYMin"];else if(L===3)S=["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=gt(a)),i},"svgSpan"),l4e=o(function(e,r,n,i,a){var s,l=e.height+e.depth+n+i;if(/fbox|color|angl/.test(r)){if(s=Fe.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 gy({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(r)&&h.push(new gy({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var f=new vl(h,{width:"100%",height:gt(l)});s=Fe.makeSvgSpan([],[f],a)}return s.height=l,s.style.height=gt(l),s},"encloseSpan"),mu={encloseSpan:l4e,mathMLnode:i4e,svgSpan:o4e};o(gr,"assertNodeType");o(FC,"assertSymbolNodeType");o(N4,"checkSymbolNodeType");zC=o((t,e)=>{var r,n,i;t&&t.type==="supsub"?(n=gr(t.base,"accent"),r=n.base,t.base=r,i=Rbe(Pr(t,e)),t.base=n):(n=gr(t,"accent"),r=n.base);var a=Pr(r,e.havingCrampedStyle()),s=n.isShifty&&Jt.isCharacterBox(r),l=0;if(s){var u=Jt.getBaseElem(r),h=Pr(u,e.havingCrampedStyle());l=sG(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=mu.svgSpan(n,e),p=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:p,wrapperClasses:["svg-align"],wrapperStyle:l>0?{width:"calc(100% - "+gt(2*l)+")",marginLeft:gt(2*l)}:void 0}]},e);else{var m,g;n.label==="\\vec"?(m=Fe.staticSvg("vec",e),g=Fe.svgData.vec[1]):(m=Fe.makeOrd({mode:n.mode,text:n.label},e,"textord"),m=sG(m),m.italic=0,g=m.width,f&&(d+=m.depth)),p=Fe.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=gt(v),n.label==="\\textcircled"&&(p.style.top=".2em"),p=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-d},{type:"elem",elem:p}]},e)}var x=Fe.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"),jG=o((t,e)=>{var r=t.isStretchy?mu.mathMLnode(t.label):new at.MathNode("mo",[Mo(t.label,t.mode)]),n=new at.MathNode("mover",[yn(t.base,e),r]);return n.setAttribute("accent","true"),n},"mathmlBuilder$9"),c4e=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(t=>"\\"+t).join("|"));St({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=C4(e[0]),n=!c4e.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:zC,mathmlBuilder:jG});St({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:zC,mathmlBuilder:jG});St({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=Pr(t.base,e),n=mu.svgSpan(t,e),i=t.label==="\\utilde"?.12:0,a=Fe.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]},e);return Fe.makeSpan(["mord","accentunder"],[a],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=mu.mathMLnode(t.label),n=new at.MathNode("munder",[yn(t.base,e),r]);return n.setAttribute("accentunder","true"),n},"mathmlBuilder")});g4=o(t=>{var e=new at.MathNode("mpadded",t?[t]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e},"paddedNode");St({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=Fe.wrapFragment(Pr(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=Fe.wrapFragment(Pr(t.below,n,e),e),s.classes.push(a+"-arrow-pad"));var l=mu.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=Fe.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=Fe.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"),Fe.makeSpan(["mrel","x-arrow"],[f],e)},mathmlBuilder(t,e){var r=mu.mathMLnode(t.label);r.setAttribute("minsize",t.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(t.body){var i=g4(yn(t.body,e));if(t.below){var a=g4(yn(t.below,e));n=new at.MathNode("munderover",[r,a,i])}else n=new at.MathNode("mover",[r,i])}else if(t.below){var s=g4(yn(t.below,e));n=new at.MathNode("munder",[r,s])}else n=g4(),n=new at.MathNode("mover",[r,n]);return n}});u4e=Fe.makeSpan;o(KG,"htmlBuilder$9");o(QG,"mathmlBuilder$8");St({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:gi(i),isCharacterBox:Jt.isCharacterBox(i)}},htmlBuilder:KG,mathmlBuilder:QG});R4=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");St({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(t,e){var{parser:r}=t;return{type:"mclass",mode:r.mode,mclass:R4(e[0]),body:gi(e[1]),isCharacterBox:Jt.isCharacterBox(e[1])}}});St({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=R4(i):s="mrel";var l={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:gi(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:KG,mathmlBuilder:QG});St({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"pmb",mode:r.mode,mclass:R4(e[0]),body:gi(e[0])}},htmlBuilder(t,e){var r=Fi(t.body,e,!0),n=Fe.makeSpan([t.mclass],r,e);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(t,e){var r=Ss(t.body,e),n=new at.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});h4e={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},fG=o(()=>({type:"styling",body:[],mode:"math",style:"display"}),"newCell"),dG=o(t=>t.type==="textord"&&t.text==="@","isStartOfArrow"),f4e=o((t,e)=>(t.type==="mathord"||t.type==="atom")&&t.text===e,"isLabelEnd");o(d4e,"cdArrow");o(p4e,"parseCD");St({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=Fe.wrapFragment(Pr(t.label,r,e),e);return n.classes.push("cd-label-"+t.side),n.style.bottom=gt(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(t,e){var r=new at.MathNode("mrow",[yn(t.label,e)]);return r=new at.MathNode("mpadded",[r]),r.setAttribute("width","0"),t.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new at.MathNode("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}});St({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=Fe.wrapFragment(Pr(t.fragment,e),e);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(t,e){return new at.MathNode("mrow",[yn(t.fragment,e)])}});St({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(t,e){for(var{parser:r}=t,n=gr(e[0],"ordgroup"),i=n.body,a="",s=0;s=1114111)throw new lt("\\@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}}});ZG=o((t,e)=>{var r=Fi(t.body,e.withColor(t.color),!1);return Fe.makeFragment(r)},"htmlBuilder$8"),JG=o((t,e)=>{var r=Ss(t.body,e.withColor(t.color)),n=new at.MathNode("mstyle",r);return n.setAttribute("mathcolor",t.color),n},"mathmlBuilder$7");St({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(t,e){var{parser:r}=t,n=gr(e[0],"color-token").color,i=e[1];return{type:"color",mode:r.mode,color:n,body:gi(i)}},htmlBuilder:ZG,mathmlBuilder:JG});St({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(t,e){var{parser:r,breakOnTokenText:n}=t,i=gr(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:ZG,mathmlBuilder:JG});St({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&&gr(i,"size").value}},htmlBuilder(t,e){var r=Fe.makeSpan(["mspace"],[],e);return t.newLine&&(r.classes.push("newline"),t.size&&(r.style.marginTop=gt(Jn(t.size,e)))),r},mathmlBuilder(t,e){var r=new at.MathNode("mspace");return t.newLine&&(r.setAttribute("linebreak","newline"),t.size&&r.setAttribute("height",gt(Jn(t.size,e)))),r}});_C={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},e$=o(t=>{var e=t.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new lt("Expected a control sequence",t);return e},"checkControlSequence"),m4e=o(t=>{var e=t.gullet.popToken();return e.text==="="&&(e=t.gullet.popToken(),e.text===" "&&(e=t.gullet.popToken())),e},"getRHS"),t$=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");St({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(_C[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=_C[n.text]),gr(e.parseFunction(),"internal");throw new lt("Invalid token after macro prefix",n)}});St({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 lt("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 lt('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new lt('Argument number "'+n.text+'" out of order');a++,l.push([])}else{if(n.text==="EOF")throw new lt("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===_C[r]),{type:"internal",mode:e.mode}}});St({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=e$(e.gullet.popToken());e.gullet.consumeSpaces();var i=m4e(e);return t$(e,n,i,r==="\\\\globallet"),{type:"internal",mode:e.mode}}});St({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=e$(e.gullet.popToken()),i=e.gullet.popToken(),a=e.gullet.popToken();return t$(e,n,a,r==="\\\\globalfuture"),e.gullet.pushToken(a),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});hy=o(function(e,r,n){var i=Cn.math[e]&&Cn.math[e].replace,a=IC(i||e,r,n);if(!a)throw new Error("Unsupported symbol "+e+" and font size "+r+".");return a},"getMetrics"),GC=o(function(e,r,n,i){var a=n.havingBaseStyle(r),s=Fe.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"),r$=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=gt(a),e.height-=a,e.depth+=a},"centerSpan"),g4e=o(function(e,r,n,i,a,s){var l=Fe.makeSymbol(e,"Main-Regular",a,i),u=GC(l,r,i,s);return n&&r$(u,i,r),u},"makeSmallDelim"),y4e=o(function(e,r,n,i){return Fe.makeSymbol(e,"Size"+r+"-Regular",n,i)},"mathrmSize"),n$=o(function(e,r,n,i,a,s){var l=y4e(e,r,a,i),u=GC(Fe.makeSpan(["delimsizing","size"+r],[l],i),rr.TEXT,i,s);return n&&r$(u,i,rr.TEXT),u},"makeLargeDelim"),fC=o(function(e,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=Fe.makeSpan(["delimsizinginner",i],[Fe.makeSpan([],[Fe.makeSymbol(e,r,n)])]);return{type:"elem",elem:a}},"makeGlyphSpan"),dC=o(function(e,r,n){var i=lc["Size4-Regular"][e.charCodeAt(0)]?lc["Size4-Regular"][e.charCodeAt(0)][4]:lc["Size1-Regular"][e.charCodeAt(0)][4],a=new cc("inner",Sbe(e,Math.round(1e3*r))),s=new vl([a],{width:gt(i),height:gt(r),style:"width:"+gt(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),l=Fe.makeSvgSpan([],[s],n);return l.height=r,l.style.height=gt(r),l.style.width=gt(i),{type:"elem",elem:l}},"makeInner"),LC=.008,y4={type:"kern",size:-1*LC},v4e=["|","\\lvert","\\rvert","\\vert"],x4e=["\\|","\\lVert","\\rVert","\\Vert"],i$=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(x4e,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=hy(l,m,a),y=g.height+g.depth,v=hy(h,m,a),x=v.height+v.depth,b=hy(f,m,a),w=b.height+b.depth,_=0,T=1;if(u!==null){var E=hy(u,m,a);_=E.height+E.depth,T=2}var L=y+w+_,S=Math.max(0,Math.ceil((r-L)/(T*x))),A=L+S*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,C=Math.round(A*1e3),O=Cbe(d,Math.round(R*1e3)),N=new cc(d,O),P=(p/1e3).toFixed(3)+"em",F=(C/1e3).toFixed(3)+"em",B=new vl([N],{width:P,height:F,viewBox:"0 0 "+p+" "+C}),G=Fe.makeSvgSpan([],[B],i);G.height=C/1e3,G.style.width=P,G.style.height=F,k.push({type:"elem",elem:G})}else{if(k.push(fC(f,m,a)),k.push(y4),u===null){var z=A-y-w+2*LC;k.push(dC(h,z,i))}else{var W=(A-y-w-_)/2+2*LC;k.push(dC(h,W,i)),k.push(y4),k.push(fC(u,m,a)),k.push(y4),k.push(dC(h,W,i))}k.push(y4),k.push(fC(l,m,a))}var Z=i.havingBaseStyle(rr.TEXT),j=Fe.makeVList({positionType:"bottom",positionData:D,children:k},Z);return GC(Fe.makeSpan(["delimsizing","mult"],[j],Z),rr.TEXT,i,s)},"makeStackedDelim"),pC=80,mC=.08,gC=o(function(e,r,n,i,a){var s=Ebe(e,i,n),l=new cc(e,s),u=new vl([l],{width:"400em",height:gt(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return Fe.makeSvgSpan(["hide-tail"],[u],a)},"sqrtSvg"),b4e=o(function(e,r){var n=r.havingBaseSizing(),i=l$("\\surd",e*n.sizeMultiplier,o$,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+pC,e<1?a=1:e<1.4&&(a=.7),u=(1+s+mC)/a,h=(1+s)/a,l=gC("sqrtMain",u,f,s,r),l.style.minWidth="0.853em",d=.833/a):i.type==="large"?(f=(1e3+pC)*fy[i.size],h=(fy[i.size]+s)/a,u=(fy[i.size]+s+mC)/a,l=gC("sqrtSize"+i.size,u,f,s,r),l.style.minWidth="1.02em",d=1/a):(u=e+s+mC,h=e+s,f=Math.floor(1e3*e+s)+pC,l=gC("sqrtTall",u,f,s,r),l.style.minWidth="0.742em",d=1.056),l.height=h,l.style.height=gt(u),{span:l,advanceWidth:d,ruleWidth:(r.fontMetrics().sqrtRuleThickness+s)*a}},"makeSqrtImage"),a$=["(","\\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"],s$=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],fy=[0,1.2,1.8,2.4,3],T4e=o(function(e,r,n,i,a){if(e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle"),Jt.contains(a$,e)||Jt.contains(s$,e))return n$(e,r,!1,n,i,a);if(Jt.contains(w4e,e))return i$(e,fy[r],!1,n,i,a);throw new lt("Illegal delimiter: '"+e+"'")},"makeSizedDelim"),k4e=[{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}],E4e=[{type:"small",style:rr.SCRIPTSCRIPT},{type:"small",style:rr.SCRIPT},{type:"small",style:rr.TEXT},{type:"stack"}],o$=[{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"}],S4e=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"),l$=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"),c$=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(s$,e)?l=k4e:Jt.contains(a$,e)?l=o$:l=E4e;var u=l$(e,r,l,i);return u.type==="small"?g4e(e,u.style,n,i,a,s):u.type==="large"?n$(e,u.size,n,i,a,s):i$(e,r,n,i,a,s)},"makeCustomSizedDelim"),C4e=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 c$(e,d,!0,i,a,s)},"makeLeftRightDelim"),du={sqrtImage:b4e,sizedDelim:T4e,sizeToMaxHeight:fy,customSizedDelim:c$,leftRightDelim:C4e},pG={"\\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}},A4e=["(","\\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(M4,"checkDelimiter");St({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=M4(e[0],t);return{type:"delimsizing",mode:t.parser.mode,size:pG[t.funcName].size,mclass:pG[t.funcName].mclass,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>t.delim==="."?Fe.makeSpan([t.mclass]):du.sizedDelim(t.delim,t.size,e,t.mode,[t.mclass]),"htmlBuilder"),mathmlBuilder:o(t=>{var e=[];t.delim!=="."&&e.push(Mo(t.delim,t.mode));var r=new at.MathNode("mo",e);t.mclass==="mopen"||t.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=gt(du.sizeToMaxHeight[t.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r},"mathmlBuilder")});o(mG,"assertParsed");St({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 lt("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:t.parser.mode,delim:M4(e[0],t).text,color:r}},"handler")});St({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=M4(e[0],t),n=t.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=gr(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)=>{mG(t);for(var r=Fi(t.body,e,!0,["mopen","mclose"]),n=0,i=0,a=!1,s=0;s{mG(t);var r=Ss(t.body,e);if(t.left!=="."){var n=new at.MathNode("mo",[Mo(t.left,t.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(t.right!=="."){var i=new at.MathNode("mo",[Mo(t.right,t.mode)]);i.setAttribute("fence","true"),t.rightColor&&i.setAttribute("mathcolor",t.rightColor),r.push(i)}return PC(r)},"mathmlBuilder")});St({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=M4(e[0],t);if(!t.parser.leftrightDepth)throw new lt("\\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=yy(e,[]);else{r=du.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==="|"?Mo("|","text"):Mo(t.delim,t.mode),n=new at.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n},"mathmlBuilder")});$C=o((t,e)=>{var r=Fe.wrapFragment(Pr(t.body,e),e),n=t.label.slice(1),i=e.sizeMultiplier,a,s=0,l=Jt.isCharacterBox(t.body);if(n==="sout")a=Fe.makeSpan(["stretchy","sout"]),a.height=e.fontMetrics().defaultRuleThickness/i,s=-.5*e.fontMetrics().xHeight;else if(n==="phase"){var u=Jn({number:.6,unit:"pt"},e),h=Jn({number:.35,unit:"ex"},e),f=e.havingBaseSizing();i=i/f.sizeMultiplier;var d=r.height+r.depth+u+h;r.style.paddingLeft=gt(d/2+u);var p=Math.floor(1e3*d*i),m=Tbe(p),g=new vl([new cc("phase",m)],{width:"400em",height:gt(p/1e3),viewBox:"0 0 400000 "+p,preserveAspectRatio:"xMinYMin slice"});a=Fe.makeSvgSpan(["hide-tail"],[g],e),a.style.height=gt(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=mu.encloseSpan(r,n,y,v,e),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=gt(x)):n==="angl"&&x!==.049&&(a.style.borderTopWidth=gt(x),a.style.borderRightWidth=gt(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=Fe.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=Fe.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?Fe.makeSpan(["mord","cancel-lap"],[b],e):Fe.makeSpan(["mord"],[b],e)},"htmlBuilder$7"),VC=o((t,e)=>{var r=0,n=new at.MathNode(t.label.indexOf("colorbox")>-1?"mpadded":"menclose",[yn(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");St({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=gr(e[0],"color-token").color,s=e[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:s}},htmlBuilder:$C,mathmlBuilder:VC});St({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=gr(e[0],"color-token").color,s=gr(e[1],"color-token").color,l=e[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:s,borderColor:a,body:l}},htmlBuilder:$C,mathmlBuilder:VC});St({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]}}});St({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:$C,mathmlBuilder:VC});St({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]}}});u$={};o(uc,"defineEnvironment");h$={};o(le,"defineMacro");o(gG,"getHLines");I4=o(t=>{var e=t.parser.settings;if(!e.displayMode)throw new lt("{"+t.envName+"} can be used only in display mode.")},"validateAmsEnvironmentContext");o(UC,"getAutoTag");o(xh,"parseArray");o(HC,"dCellStyle");hc=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"?Jn({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 Re=0;Re0&&(w+=.25),h.push({pos:w,isDashed:ke[Re]})}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=Fe.makeSpan(["arraycolsep"],[]),O.style.width=gt(ee),C.push(O)));var J=[];for(n=0;n0){for(var ae=Fe.makeLineSpan("hline",r,f),ue=Fe.makeLineSpan("hdashline",r,f),ce=[{type:"elem",elem:u,shift:0}];h.length>0;){var te=h.pop(),Ne=te.pos-k;te.isDashed?ce.push({type:"elem",elem:ue,shift:Ne}):ce.push({type:"elem",elem:ae,shift:Ne})}u=Fe.makeVList({positionType:"individualShift",children:ce},r)}if(P.length===0)return Fe.makeSpan(["mord"],[u],r);var se=Fe.makeVList({positionType:"individualShift",children:P},r);return se=Fe.makeSpan(["tag"],[se],r),Fe.makeFragment([u,se])},"htmlBuilder"),_4e={c:"center ",l:"left ",r:"right "},fc=o(function(e,r){for(var n=[],i=new at.MathNode("mtd",[],["mtr-glue"]),a=new at.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+=S[S.length-1].length>0?"right ":"";for(var A=1;A-1?"alignat":"align",a=e.envName==="split",s=xh(e.parser,{cols:n,addJot:!0,autoTag:a?void 0:UC(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");uc({type:"array",names:["array","darray"],props:{numArgs:1},handler(t,e){var r=N4(e[0]),n=r?[e[0]]:gr(e[0],"ordgroup").body,i=n.map(function(s){var l=FC(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 lt("Unknown column alignment: "+u,s)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return xh(t.parser,a,HC(t.envName))},htmlBuilder:hc,mathmlBuilder:fc});uc({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 lt("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=xh(t.parser,n,HC(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:hc,mathmlBuilder:fc});uc({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(t){var e={arraystretch:.5},r=xh(t.parser,e,"script");return r.colSeparationType="small",r},htmlBuilder:hc,mathmlBuilder:fc});uc({type:"array",names:["subarray"],props:{numArgs:1},handler(t,e){var r=N4(e[0]),n=r?[e[0]]:gr(e[0],"ordgroup").body,i=n.map(function(s){var l=FC(s),u=l.text;if("lc".indexOf(u)!==-1)return{type:"align",align:u};throw new lt("Unknown column alignment: "+u,s)});if(i.length>1)throw new lt("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5};if(a=xh(t.parser,a,"script"),a.body.length>0&&a.body[0].length>1)throw new lt("{subarray} can contain only one column");return a},htmlBuilder:hc,mathmlBuilder:fc});uc({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=xh(t.parser,e,HC(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:hc,mathmlBuilder:fc});uc({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:f$,htmlBuilder:hc,mathmlBuilder:fc});uc({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(t){Jt.contains(["gather","gather*"],t.envName)&&I4(t);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:UC(t.envName),emptySingleRow:!0,leqno:t.parser.settings.leqno};return xh(t.parser,e,"display")},htmlBuilder:hc,mathmlBuilder:fc});uc({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:f$,htmlBuilder:hc,mathmlBuilder:fc});uc({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(t){I4(t);var e={autoTag:UC(t.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:t.parser.settings.leqno};return xh(t.parser,e,"display")},htmlBuilder:hc,mathmlBuilder:fc});uc({type:"array",names:["CD"],props:{numArgs:0},handler(t){return I4(t),p4e(t.parser)},htmlBuilder:hc,mathmlBuilder:fc});le("\\nonumber","\\gdef\\@eqnsw{0}");le("\\notag","\\nonumber");St({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(t,e){throw new lt(t.funcName+" valid only within array environment")}});yG=u$;St({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 lt("Invalid environment name",i);for(var a="",s=0;s{var r=t.font,n=e.withFont(r);return Pr(t.body,n)},"htmlBuilder$5"),p$=o((t,e)=>{var r=t.font,n=e.withFont(r);return yn(t.body,n)},"mathmlBuilder$4"),vG={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};St({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=C4(e[0]),a=n;return a in vG&&(a=vG[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},"handler"),htmlBuilder:d$,mathmlBuilder:p$});St({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:R4(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:i}},"handler")});St({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:d$,mathmlBuilder:p$});m$=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"),WC=o((t,e)=>{var r=m$(t.size,e.style),n=r.fracNum(),i=r.fracDen(),a;a=e.havingStyle(n);var s=Pr(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 at.MathNode("mfrac",[yn(t.numer,e),yn(t.denom,e)]);if(!t.hasBarLine)r.setAttribute("linethickness","0px");else if(t.barSize){var n=Jn(t.barSize,e);r.setAttribute("linethickness",gt(n))}var i=m$(t.size,e.style);if(i.size!==e.style.size){r=new at.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 at.MathNode("mo",[new at.TextNode(t.leftDelim.replace("\\",""))]);l.setAttribute("fence","true"),s.push(l)}if(s.push(r),t.rightDelim!=null){var u=new at.MathNode("mo",[new at.TextNode(t.rightDelim.replace("\\",""))]);u.setAttribute("fence","true"),s.push(u)}return PC(s)}return r},"mathmlBuilder$3");St({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:WC,mathmlBuilder:YC});St({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")});St({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}}});xG=["display","text","script","scriptscript"],bG=o(function(e){var r=null;return e.length>0&&(r=e,r=r==="."?null:r),r},"delimFromValue");St({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=C4(e[0]),s=a.type==="atom"&&a.family==="open"?bG(a.text):null,l=C4(e[1]),u=l.type==="atom"&&l.family==="close"?bG(l.text):null,h=gr(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=gr(m.body[0],"textord");p=xG[Number(g.text)]}}else m=gr(m,"textord"),p=xG[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:WC,mathmlBuilder:YC});St({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:gr(e[0],"size").value,token:i}}});St({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=obe(gr(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:WC,mathmlBuilder:YC});g$=o((t,e)=>{var r=e.style,n,i;t.type==="supsub"?(n=t.sup?Pr(t.sup,e.havingStyle(r.sup()),e):Pr(t.sub,e.havingStyle(r.sub()),e),i=gr(t.base,"horizBrace")):i=gr(t,"horizBrace");var a=Pr(i.base,e.havingBaseStyle(rr.DISPLAY)),s=mu.svgSpan(i,e),l;if(i.isOver?(l=Fe.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=Fe.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=Fe.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e);i.isOver?l=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:.2},{type:"elem",elem:n}]},e):l=Fe.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 Fe.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e)},"htmlBuilder$3"),L4e=o((t,e)=>{var r=mu.mathMLnode(t.label);return new at.MathNode(t.isOver?"mover":"munder",[yn(t.base,e),r])},"mathmlBuilder$2");St({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:g$,mathmlBuilder:L4e});St({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[1],i=gr(e[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:gi(n)}:r.formatUnsupportedCmd("\\href")},"handler"),htmlBuilder:o((t,e)=>{var r=Fi(t.body,e,!1);return Fe.makeAnchor(t.href,[],r,e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=vh(t.body,e);return r instanceof ks||(r=new ks("mrow",[r])),r.setAttribute("href",t.href),r},"mathmlBuilder")});St({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=gr(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=gr(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=Fi(t.body,e,!1),n=["enclosing"];t.attributes.class&&n.push(...t.attributes.class.trim().split(/\s+/));var i=Fe.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)=>vh(t.body,e),"mathmlBuilder")});St({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:gi(e[0]),mathml:gi(e[1])}},"handler"),htmlBuilder:o((t,e)=>{var r=Fi(t.html,e,!1);return Fe.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>vh(t.mathml,e),"mathmlBuilder")});yC=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 lt("Invalid size: '"+e+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!OG(n))throw new lt("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n},"sizeData");St({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=gr(r[0],"raw").string,h=u.split(","),f=0;f{var r=Jn(t.height,e),n=0;t.totalheight.number>0&&(n=Jn(t.totalheight,e)-r);var i=0;t.width.number>0&&(i=Jn(t.width,e));var a={height:gt(r+n)};i>0&&(a.width=gt(i)),n>0&&(a.verticalAlign=gt(-n));var s=new kC(t.src,t.alt,a);return s.height=r,s.depth=n,s},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new at.MathNode("mglyph",[]);r.setAttribute("alt",t.alt);var n=Jn(t.height,e),i=0;if(t.totalheight.number>0&&(i=Jn(t.totalheight,e)-n,r.setAttribute("valign",gt(-i))),r.setAttribute("height",gt(n+i)),t.width.number>0){var a=Jn(t.width,e);r.setAttribute("width",gt(a))}return r.setAttribute("src",t.src),r},"mathmlBuilder")});St({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=gr(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 Fe.makeGlue(t.dimension,e)},mathmlBuilder(t,e){var r=Jn(t.dimension,e);return new at.SpaceNode(r)}});St({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=Fe.makeSpan([],[Pr(t.body,e)]),r=Fe.makeSpan(["inner"],[r],e)):r=Fe.makeSpan(["inner"],[Pr(t.body,e)]);var n=Fe.makeSpan(["fix"],[]),i=Fe.makeSpan([t.alignment],[r,n],e),a=Fe.makeSpan(["strut"]);return a.style.height=gt(i.height+i.depth),i.depth&&(a.style.verticalAlign=gt(-i.depth)),i.children.unshift(a),i=Fe.makeSpan(["thinbox"],[i],e),Fe.makeSpan(["mord","vbox"],[i],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new at.MathNode("mpadded",[yn(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")});St({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}}});St({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){throw new lt("Mismatched "+t.funcName)}});wG=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");St({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"mathchoice",mode:r.mode,display:gi(e[0]),text:gi(e[1]),script:gi(e[2]),scriptscript:gi(e[3])}},"handler"),htmlBuilder:o((t,e)=>{var r=wG(t,e),n=Fi(r,e,!1);return Fe.makeFragment(n)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=wG(t,e);return vh(r,e)},"mathmlBuilder")});y$=o((t,e,r,n,i,a,s)=>{t=Fe.makeSpan([],[t]);var l=r&&Jt.isCharacterBox(r),u,h;if(e){var f=Pr(e,n.havingStyle(i.sup()),n);h={elem:f,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-f.depth)}}if(r){var d=Pr(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=Fe.makeVList({positionType:"bottom",positionData:m,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:gt(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:gt(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(u){var g=t.height-s;p=Fe.makeVList({positionType:"top",positionData:g,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:gt(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t}]},n)}else if(h){var y=t.depth+s;p=Fe.makeVList({positionType:"bottom",positionData:y,children:[{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:gt(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else return t;var v=[p];if(u&&a!==0&&!l){var x=Fe.makeSpan(["mspace"],[],n);x.style.marginRight=gt(a),v.unshift(x)}return Fe.makeSpan(["mop","op-limits"],v,n)},"assembleSupSub"),v$=["\\smallint"],Cp=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=gr(t.base,"op"),i=!0):a=gr(t,"op");var s=e.style,l=!1;s.size===rr.DISPLAY.size&&a.symbol&&!Jt.contains(v$,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=Fe.makeSymbol(a.name,h,"math",e,["mop","op-symbol",l?"large-op":"small-op"]),f.length>0){var d=u.italic,p=Fe.staticSvg(f+"Size"+(l?"2":"1"),e);u=Fe.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=Fi(a.body,e,!0);m.length===1&&m[0]instanceof Es?(u=m[0],u.classes[0]="mop"):u=Fe.makeSpan(["mop"],m,e)}else{for(var g=[],y=1;y{var r;if(t.symbol)r=new ks("mo",[Mo(t.name,t.mode)]),Jt.contains(v$,t.name)&&r.setAttribute("largeop","false");else if(t.body)r=new ks("mo",Ss(t.body,e));else{r=new ks("mi",[new td(t.name.slice(1))]);var n=new ks("mo",[Mo("\u2061","text")]);t.parentIsSupSub?r=new ks("mrow",[r,n]):r=YG([r,n])}return r},"mathmlBuilder$1"),D4e={"\u220F":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22C0":"\\bigwedge","\u22C1":"\\bigvee","\u22C2":"\\bigcap","\u22C3":"\\bigcup","\u2A00":"\\bigodot","\u2A01":"\\bigoplus","\u2A02":"\\bigotimes","\u2A04":"\\biguplus","\u2A06":"\\bigsqcup"};St({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=D4e[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},"handler"),htmlBuilder:Cp,mathmlBuilder:vy});St({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:gi(n)}},"handler"),htmlBuilder:Cp,mathmlBuilder:vy});N4e={"\u222B":"\\int","\u222C":"\\iint","\u222D":"\\iiint","\u222E":"\\oint","\u222F":"\\oiint","\u2230":"\\oiiint"};St({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:Cp,mathmlBuilder:vy});St({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:Cp,mathmlBuilder:vy});St({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=N4e[n]),{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:Cp,mathmlBuilder:vy});x$=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=gr(t.base,"operatorname"),i=!0):a=gr(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=Fi(l,e.withFont("mathrm"),!0),h=0;h{for(var r=Ss(t.body,e.withFont("mathrm")),n=!0,i=0;if.toText()).join("");r=[new at.TextNode(l)]}var u=new at.MathNode("mi",r);u.setAttribute("mathvariant","normal");var h=new at.MathNode("mo",[Mo("\u2061","text")]);return t.parentIsSupSub?new at.MathNode("mrow",[u,h]):at.newDocumentFragment([u,h])},"mathmlBuilder");St({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:gi(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},"handler"),htmlBuilder:x$,mathmlBuilder:R4e});le("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");id({type:"ordgroup",htmlBuilder(t,e){return t.semisimple?Fe.makeFragment(Fi(t.body,e,!1)):Fe.makeSpan(["mord"],Fi(t.body,e,!0),e)},mathmlBuilder(t,e){return vh(t.body,e,!0)}});St({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=Pr(t.body,e.havingCrampedStyle()),n=Fe.makeLineSpan("overline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]},e);return Fe.makeSpan(["mord","overline"],[a],e)},mathmlBuilder(t,e){var r=new at.MathNode("mo",[new at.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new at.MathNode("mover",[yn(t.body,e),r]);return n.setAttribute("accent","true"),n}});St({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:gi(n)}},"handler"),htmlBuilder:o((t,e)=>{var r=Fi(t.body,e.withPhantom(),!1);return Fe.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=Ss(t.body,e);return new at.MathNode("mphantom",r)},"mathmlBuilder")});St({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=Fe.makeSpan([],[Pr(t.body,e.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n{var r=Ss(gi(t.body),e),n=new at.MathNode("mphantom",r),i=new at.MathNode("mpadded",[n]);return i.setAttribute("height","0px"),i.setAttribute("depth","0px"),i},"mathmlBuilder")});St({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=Fe.makeSpan(["inner"],[Pr(t.body,e.withPhantom())]),n=Fe.makeSpan(["fix"],[]);return Fe.makeSpan(["mord","rlap"],[r,n],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=Ss(gi(t.body),e),n=new at.MathNode("mphantom",r),i=new at.MathNode("mpadded",[n]);return i.setAttribute("width","0px"),i},"mathmlBuilder")});St({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t,n=gr(e[0],"size").value,i=e[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(t,e){var r=Pr(t.body,e),n=Jn(t.dy,e);return Fe.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){var r=new at.MathNode("mpadded",[yn(t.body,e)]),n=t.dy.number+t.dy.unit;return r.setAttribute("voffset",n),r}});St({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e}=t;return{type:"internal",mode:e.mode}}});St({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=gr(e[0],"size"),s=gr(e[1],"size");return{type:"rule",mode:n.mode,shift:i&&gr(i,"size").value,width:a.value,height:s.value}},htmlBuilder(t,e){var r=Fe.makeSpan(["mord","rule"],[],e),n=Jn(t.width,e),i=Jn(t.height,e),a=t.shift?Jn(t.shift,e):0;return r.style.borderRightWidth=gt(n),r.style.borderTopWidth=gt(i),r.style.bottom=gt(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*e.sizeMultiplier,r},mathmlBuilder(t,e){var r=Jn(t.width,e),n=Jn(t.height,e),i=t.shift?Jn(t.shift,e):0,a=e.color&&e.getColor()||"black",s=new at.MathNode("mspace");s.setAttribute("mathbackground",a),s.setAttribute("width",gt(r)),s.setAttribute("height",gt(n));var l=new at.MathNode("mpadded",[s]);return i>=0?l.setAttribute("height",gt(i)):(l.setAttribute("height",gt(i)),l.setAttribute("depth",gt(-i))),l.setAttribute("voffset",gt(i)),l}});o(b$,"sizingGroup");TG=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],M4e=o((t,e)=>{var r=e.havingSize(t.size);return b$(t.body,r,e)},"htmlBuilder");St({type:"sizing",names:TG,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:TG.indexOf(n)+1,body:a}},"handler"),htmlBuilder:M4e,mathmlBuilder:o((t,e)=>{var r=e.havingSize(t.size),n=Ss(t.body,r),i=new at.MathNode("mstyle",n);return i.setAttribute("mathsize",gt(r.sizeMultiplier)),i},"mathmlBuilder")});St({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]&&gr(r[0],"ordgroup");if(s)for(var l="",u=0;u{var r=Fe.makeSpan([],[Pr(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 at.MathNode("mpadded",[yn(t.body,e)]);return t.smashHeight&&r.setAttribute("height","0px"),t.smashDepth&&r.setAttribute("depth","0px"),r},"mathmlBuilder")});St({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=Pr(t.body,e.havingCrampedStyle());r.height===0&&(r.height=e.fontMetrics().xHeight),r=Fe.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=gt(f);var m=Fe.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=Pr(t.index,g,e),v=.6*(m.height-m.depth),x=Fe.makeVList({positionType:"shift",positionData:-v,children:[{type:"elem",elem:y}]},e),b=Fe.makeSpan(["root"],[x]);return Fe.makeSpan(["mord","sqrt"],[b,m],e)}else return Fe.makeSpan(["mord","sqrt"],[m],e)},mathmlBuilder(t,e){var{body:r,index:n}=t;return n?new at.MathNode("mroot",[yn(r,e),yn(n,e)]):new at.MathNode("msqrt",[yn(r,e)])}});kG={display:rr.DISPLAY,text:rr.TEXT,script:rr.SCRIPT,scriptscript:rr.SCRIPTSCRIPT};St({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=kG[t.style],n=e.havingStyle(r).withFont("");return b$(t.body,n,e)},mathmlBuilder(t,e){var r=kG[t.style],n=e.havingStyle(r),i=Ss(t.body,n),a=new at.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}});I4e=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?Cp:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===rr.DISPLAY.size||n.limits);return a?x$:null}else{if(n.type==="accent")return Jt.isCharacterBox(n.base)?zC:null;if(n.type==="horizBrace"){var s=!e.sub;return s===n.isOver?g$:null}else return null}else return null},"htmlBuilderDelegate");id({type:"supsub",htmlBuilder(t,e){var r=I4e(t,e);if(r)return r(t,e);var{base:n,sup:i,sub:a}=t,s=Pr(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=Pr(i,m,e),p||(f=s.height-m.fontMetrics().supDrop*m.sizeMultiplier/e.sizeMultiplier)}if(a){var g=e.havingStyle(e.style.sub());u=Pr(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=gt(.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 Es||w)&&(b=gt(-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 S=[{type:"elem",elem:u,shift:d,marginRight:x,marginLeft:b},{type:"elem",elem:l,shift:-f,marginRight:x}];_=Fe.makeVList({positionType:"individualShift",children:S},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}];_=Fe.makeVList({positionType:"shift",positionData:d,children:A},e)}else if(l)f=Math.max(f,y,l.depth+.25*h.xHeight),_=Fe.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=SC(s,"right")||"mord";return Fe.makeSpan([I],[s,Fe.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=[yn(t.base,e)];t.sub&&a.push(yn(t.sub,e)),t.sup&&a.push(yn(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 at.MathNode(s,a)}});id({type:"atom",htmlBuilder(t,e){return Fe.mathsym(t.text,t.mode,e,["m"+t.family])},mathmlBuilder(t,e){var r=new at.MathNode("mo",[Mo(t.text,t.mode)]);if(t.family==="bin"){var n=BC(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}});w$={mi:"italic",mn:"normal",mtext:"normal"};id({type:"mathord",htmlBuilder(t,e){return Fe.makeOrd(t,e,"mathord")},mathmlBuilder(t,e){var r=new at.MathNode("mi",[Mo(t.text,t.mode,e)]),n=BC(t,e)||"italic";return n!==w$[r.type]&&r.setAttribute("mathvariant",n),r}});id({type:"textord",htmlBuilder(t,e){return Fe.makeOrd(t,e,"textord")},mathmlBuilder(t,e){var r=Mo(t.text,t.mode,e),n=BC(t,e)||"normal",i;return t.mode==="text"?i=new at.MathNode("mtext",[r]):/[0-9]/.test(t.text)?i=new at.MathNode("mn",[r]):t.text==="\\prime"?i=new at.MathNode("mo",[r]):i=new at.MathNode("mi",[r]),n!==w$[i.type]&&i.setAttribute("mathvariant",n),i}});vC={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},xC={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};id({type:"spacing",htmlBuilder(t,e){if(xC.hasOwnProperty(t.text)){var r=xC[t.text].className||"";if(t.mode==="text"){var n=Fe.makeOrd(t,e,"textord");return n.classes.push(r),n}else return Fe.makeSpan(["mspace",r],[Fe.mathsym(t.text,t.mode,e)],e)}else{if(vC.hasOwnProperty(t.text))return Fe.makeSpan(["mspace",vC[t.text]],[],e);throw new lt('Unknown type of space "'+t.text+'"')}},mathmlBuilder(t,e){var r;if(xC.hasOwnProperty(t.text))r=new at.MathNode("mtext",[new at.TextNode("\xA0")]);else{if(vC.hasOwnProperty(t.text))return new at.MathNode("mspace");throw new lt('Unknown type of space "'+t.text+'"')}return r}});EG=o(()=>{var t=new at.MathNode("mtd",[]);return t.setAttribute("width","50%"),t},"pad");id({type:"tag",mathmlBuilder(t,e){var r=new at.MathNode("mtable",[new at.MathNode("mtr",[EG(),new at.MathNode("mtd",[vh(t.body,e)]),EG(),new at.MathNode("mtd",[vh(t.tag,e)])])]);return r.setAttribute("width","100%"),r}});SG={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},CG={"\\textbf":"textbf","\\textmd":"textmd"},O4e={"\\textit":"textit","\\textup":"textup"},AG=o((t,e)=>{var r=t.font;if(r){if(SG[r])return e.withTextFontFamily(SG[r]);if(CG[r])return e.withTextFontWeight(CG[r]);if(r==="\\emph")return e.fontShape==="textit"?e.withTextFontShape("textup"):e.withTextFontShape("textit")}else return e;return e.withTextFontShape(O4e[r])},"optionsWithFont");St({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:gi(i),font:n}},htmlBuilder(t,e){var r=AG(t,e),n=Fi(t.body,r,!0);return Fe.makeSpan(["mord","text"],n,r)},mathmlBuilder(t,e){var r=AG(t,e);return vh(t.body,r)}});St({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=Pr(t.body,e),n=Fe.makeLineSpan("underline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Fe.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 Fe.makeSpan(["mord","underline"],[a],e)},mathmlBuilder(t,e){var r=new at.MathNode("mo",[new at.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new at.MathNode("munder",[yn(t.body,e),r]);return n.setAttribute("accentunder","true"),n}});St({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=Pr(t.body,e),n=e.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return Fe.makeVList({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){return new at.MathNode("mpadded",[yn(t.body,e)],["vcenter"])}});St({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(t,e,r){throw new lt("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(t,e){for(var r=_G(t),n=[],i=e.havingStyle(e.style.text()),a=0;at.body.replace(/ /g,t.star?"\u2423":"\xA0"),"makeVerb"),gh=HG,T$=`[ \r + ]`,P4e="\\\\[a-zA-Z@]+",B4e="\\\\[^\uD800-\uDFFF]",F4e="("+P4e+")"+T$+"*",z4e=`\\\\( +|[ \r ]+ +?)[ \r ]*`,DC="[\u0300-\u036F]",G4e=new RegExp(DC+"+$"),$4e="("+T$+"+)|"+(z4e+"|")+"([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]"+(DC+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(DC+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+F4e)+("|"+B4e+")"),A4=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($4e,"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 Ro("EOF",new Js(this,r,r));var n=this.tokenRegex.exec(e);if(n===null||n.index!==r)throw new lt("Unexpected character: '"+e[r]+"'",new Ro(e[r],new Js(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 Ro(i,new Js(this,r,this.tokenRegex.lastIndex))}},NC=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 lt("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}},V4e=h$;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}});LG={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 lt("\\char` missing argument");n=e.text.charCodeAt(0)}else r=10;if(r){if(n=LG[e.text],n==null||n>=r)throw new lt("Invalid base-"+r+" digit "+e.text);for(var i;(i=LG[t.future().text])!=null&&i{var n=t.consumeArg().tokens;if(n.length!==1)throw new lt("\\newcommand's first argument must be a macro name");var i=n[0].text,a=t.isDefined(i);if(a&&!e)throw new lt("\\newcommand{"+i+"} attempting to redefine "+(i+"; use \\renewcommand"));if(!a&&!r)throw new lt("\\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 lt("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=>qC(t,!1,!0));le("\\renewcommand",t=>qC(t,!0,!1));le("\\providecommand",t=>qC(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),gh[r],Cn.math[r],Cn.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\\;");DG={",":"\\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 DG?e=DG[r]:(r.slice(0,4)==="\\not"||r in Cn.math&&Jt.contains(["bin","rel"],Cn.math[r].group))&&(e="\\dotsb"),e});XC={")":!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 XC?"\\ldots\\,":"\\ldots"});le("\\dotsc",function(t){var e=t.future().text;return e in XC&&e!==","?"\\ldots\\,":"\\ldots"});le("\\cdots",function(t){var e=t.future().text;return e in XC?"\\@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 lt("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}}");k$=gt(lc["Main-Regular"][84][1]-.7*lc["Main-Regular"][65][1]);le("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+k$+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");le("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+k$+"}{\\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");E$=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",E$(!1));le("\\bra@set",E$(!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}");S$={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},RC=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 NC(V4e,r.macros),this.mode=n,this.stack=[]}feed(e){this.lexer=new A4(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 Ro("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 lt("Extra }",a)}else if(a.text==="EOF")throw new lt("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 lt("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;ithis.settings.maxExpand)throw new lt("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 lt("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 lt("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 lt("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 Ro(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 A4(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)||gh.hasOwnProperty(e)||Cn.math.hasOwnProperty(e)||Cn.text.hasOwnProperty(e)||S$.hasOwnProperty(e)}isExpandable(e){var r=this.macros.get(e);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:gh.hasOwnProperty(e)&&!gh[e].primitive}},NG=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,v4=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"}),bC={"\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"}},RG={\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"},_4=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 RC(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 lt("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 Ro("}")),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&&gh[i.text]&&gh[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=Cn[this.mode][r].group,u=Js.range(e),h;if(Mbe.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&&(IG(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:Js.range(e),text:r};else return null;if(this.consume(),a)for(var d=0;d{e.tagName==="A"&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")}),Ap.default.addHook("afterSanitizeAttributes",e=>{e.tagName==="A"&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener"))})}var Ap,ad,q4e,X4e,R$,D$,kr,K4e,Q4e,Z4e,J4e,M$,e3e,xr,t3e,r3e,yu,QC,n3e,i3e,N$,ZC,yi,sd,bh,qe,fr=M(()=>{"use strict";Ap=Ji(lC(),1),ad=//gi,q4e=o(t=>t?M$(t).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),X4e=(()=>{let t=!1;return()=>{t||(j4e(),t=!0)}})();o(j4e,"setupDompurifyHooks");R$=o(t=>(X4e(),Ap.default.sanitize(t)),"removeScript"),D$=o((t,e)=>{if(e.flowchart?.htmlLabels!==!1){let r=e.securityLevel;r==="antiscript"||r==="strict"?t=R$(t):r!=="loose"&&(t=M$(t),t=t.replace(//g,">"),t=t.replace(/=/g,"="),t=J4e(t))}return t},"sanitizeMore"),kr=o((t,e)=>t&&(e.dompurifyConfig?t=Ap.default.sanitize(D$(t,e),e.dompurifyConfig).toString():t=Ap.default.sanitize(D$(t,e),{FORBID_TAGS:["style"]}).toString(),t),"sanitizeText"),K4e=o((t,e)=>typeof t=="string"?kr(t,e):t.flat().map(r=>kr(r,e)),"sanitizeTextOrArray"),Q4e=o(t=>ad.test(t),"hasBreaks"),Z4e=o(t=>t.split(ad),"splitBreaks"),J4e=o(t=>t.replace(/#br#/g,"
"),"placeholderToBreak"),M$=o(t=>t.replace(ad,"#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"),t3e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.max(...e)},"getMax"),r3e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.min(...e)},"getMin"),yu=o(function(t){let e=t.split(/(,)/),r=[];for(let n=0;n0&&n+1Math.max(0,t.split(e).length-1),"countOccurrence"),n3e=o((t,e)=>{let r=QC(t,"~"),n=QC(e,"~");return r===1&&n===1},"shouldCombineSets"),i3e=o(t=>{let e=QC(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"),N$=o(()=>window.MathMLElement!==void 0,"isMathMLSupported"),ZC=/\$\$(.*)\$\$/g,yi=o(t=>(t.match(ZC)?.length??0)>0,"hasKatex"),sd=o(async(t,e)=>{t=await bh(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"),bh=o(async(t,e)=>{if(!yi(t))return t;if(!(N$()||e.legacyMathML||e.forceLegacyMathML))return t.replace(ZC,"MathML is unsupported in this environment.");let{default:r}=await Promise.resolve().then(()=>(L$(),_$)),n=e.forceLegacyMathML||!N$()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(ad).map(i=>yi(i)?`

`:`
${i}
`).join("").replace(ZC,(i,a)=>r.renderToString(a,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,""))},"renderKatex"),qe={getRows:q4e,sanitizeText:kr,sanitizeTextOrArray:K4e,hasBreaks:Q4e,splitBreaks:Z4e,lineBreakRegex:ad,removeScript:R$,getUrl:e3e,evaluate:xr,getMax:t3e,getMin:r3e}});var a3e,s3e,Zr,Io,ai=M(()=>{"use strict";ut();a3e=o(function(t,e){for(let r of e)t.attr(r[0],r[1])},"d3Attrs"),s3e=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=s3e(e,r,n);a3e(t,i)},"configureSvgSize"),Io=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 O4,o3e,I$,O$,JC=M(()=>{"use strict";ut();O4={},o3e=o((t,e,r)=>{let n="";return t in O4&&O4[t]?n=O4[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"),I$=o((t,e)=>{e!==void 0&&(O4[t]=e)},"addStylesForDiagram"),O$=o3e});var xy={};vr(xy,{clear:()=>Lr,getAccDescription:()=>zr,getAccTitle:()=>Br,getDiagramTitle:()=>Jr,setAccDescription:()=>Fr,setAccTitle:()=>Mr,setDiagramTitle:()=>cn});var e7,t7,r7,n7,Lr,Mr,Br,Fr,zr,cn,Jr,Ai=M(()=>{"use strict";fr();Za();e7="",t7="",r7="",n7=o(t=>kr(t,Cr()),"sanitizeText"),Lr=o(()=>{e7="",r7="",t7=""},"clear"),Mr=o(t=>{e7=n7(t).replace(/^\s+/g,"")},"setAccTitle"),Br=o(()=>e7,"getAccTitle"),Fr=o(t=>{r7=n7(t).replace(/\n\s+/g,` +`)},"setAccDescription"),zr=o(()=>r7,"getAccDescription"),cn=o(t=>{t7=n7(t)},"setDiagramTitle"),Jr=o(()=>t7,"getDiagramTitle")});var P$,l3e,pe,a7,B4,s7,o7,c3e,P4,od,by,i7,Vt=M(()=>{"use strict";Zf();ut();Za();fr();ai();JC();Ai();P$=Y,l3e=J1,pe=Cr,a7=o4,B4=ph,s7=o(t=>kr(t,pe()),"sanitizeText"),o7=Io,c3e=o(()=>xy,"getCommonDb"),P4={},od=o((t,e,r)=>{P4[t]&&P$.warn(`Diagram with id ${t} already registered. Overwriting.`),P4[t]=e,r&&VS(t,r),I$(t,e.styles),e.injectUtils?.(P$,l3e,pe,s7,o7,c3e(),()=>{})},"registerDiagram"),by=o(t=>{if(t in P4)return P4[t];throw new i7(t)},"getDiagram"),i7=class extends Error{static{o(this,"DiagramNotFoundError")}constructor(e){super(`Diagram ${e} not found.`)}}});var bl,wh,ts,xl,dc,wy,l7,c7,F4,z4,B$,u3e,h3e,f3e,d3e,p3e,m3e,g3e,y3e,v3e,x3e,b3e,w3e,T3e,k3e,E3e,S3e,C3e,F$,A3e,_3e,z$,L3e,D3e,N3e,R3e,Th,M3e,I3e,O3e,P3e,B3e,Ty,u7=M(()=>{"use strict";Vt();fr();Ai();bl=[],wh=[""],ts="global",xl="",dc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],wy=[],l7="",c7=!1,F4=4,z4=2,u3e=o(function(){return B$},"getC4Type"),h3e=o(function(t){B$=kr(t,pe())},"setC4Type"),f3e=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=wy.find(d=>d.from===e&&d.to===r);if(f?h=f:wy.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=Th()},"addRel"),d3e=o(function(t,e,r,n,i,a,s){if(e===null||r===null)return;let l={},u=bl.find(h=>h.alias===e);if(u&&e===u.alias?l=u:(l.alias=e,bl.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=ts,l.wrap=Th()},"addPersonOrSystem"),p3e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=bl.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,bl.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=Th(),u.typeC4Shape={text:t},u.parentBoundary=ts},"addContainer"),m3e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=bl.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,bl.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=Th(),u.typeC4Shape={text:t},u.parentBoundary=ts},"addComponent"),g3e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=dc.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,dc.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=ts,a.wrap=Th(),xl=ts,ts=t,wh.push(xl)},"addPersonOrSystemBoundary"),y3e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=dc.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,dc.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=ts,a.wrap=Th(),xl=ts,ts=t,wh.push(xl)},"addContainerBoundary"),v3e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=dc.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,dc.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=ts,u.wrap=Th(),xl=ts,ts=e,wh.push(xl)},"addDeploymentNode"),x3e=o(function(){ts=xl,wh.pop(),xl=wh.pop(),wh.push(xl)},"popBoundaryParseStack"),b3e=o(function(t,e,r,n,i,a,s,l,u,h,f){let d=bl.find(p=>p.alias===e);if(!(d===void 0&&(d=dc.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=wy.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"),T3e=o(function(t,e,r){let n=F4,i=z4;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&&(F4=n),i>=1&&(z4=i)},"updateLayoutConfig"),k3e=o(function(){return F4},"getC4ShapeInRow"),E3e=o(function(){return z4},"getC4BoundaryInRow"),S3e=o(function(){return ts},"getCurrentBoundaryParse"),C3e=o(function(){return xl},"getParentBoundaryParse"),F$=o(function(t){return t==null?bl:bl.filter(e=>e.parentBoundary===t)},"getC4ShapeArray"),A3e=o(function(t){return bl.find(e=>e.alias===t)},"getC4Shape"),_3e=o(function(t){return Object.keys(F$(t))},"getC4ShapeKeys"),z$=o(function(t){return t==null?dc:dc.filter(e=>e.parentBoundary===t)},"getBoundaries"),L3e=z$,D3e=o(function(){return wy},"getRels"),N3e=o(function(){return l7},"getTitle"),R3e=o(function(t){c7=t},"setWrap"),Th=o(function(){return c7},"autoWrap"),M3e=o(function(){bl=[],dc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],xl="",ts="global",wh=[""],wy=[],wh=[""],l7="",c7=!1,F4=4,z4=2},"clear"),I3e={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},O3e={FILLED:0,OPEN:1},P3e={LEFTOF:0,RIGHTOF:1,OVER:2},B3e=o(function(t){l7=kr(t,pe())},"setTitle"),Ty={addPersonOrSystem:d3e,addPersonOrSystemBoundary:g3e,addContainer:p3e,addContainerBoundary:y3e,addComponent:m3e,addDeploymentNode:v3e,popBoundaryParseStack:x3e,addRel:f3e,updateElStyle:b3e,updateRelStyle:w3e,updateLayoutConfig:T3e,autoWrap:Th,setWrap:R3e,getC4ShapeArray:F$,getC4Shape:A3e,getC4ShapeKeys:_3e,getBoundaries:z$,getBoundarys:L3e,getCurrentBoundaryParse:S3e,getParentBoundaryParse:C3e,getRels:D3e,getTitle:N3e,getC4Type:u3e,getC4ShapeInRow:k3e,getC4BoundaryInRow:E3e,setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,setAccDescription:Fr,getConfig:o(()=>pe().c4,"getConfig"),clear:M3e,LINETYPE:I3e,ARROWTYPE:O3e,PLACEMENT:P3e,setTitle:B3e,setC4Type:h3e}});function ld(t,e){return t==null||e==null?NaN:te?1:t>=e?0:NaN}var h7=M(()=>{"use strict";o(ld,"ascending")});function f7(t,e){return t==null||e==null?NaN:et?1:e>=t?0:NaN}var G$=M(()=>{"use strict";o(f7,"descending")});function cd(t){let e,r,n;t.length!==2?(e=ld,r=o((l,u)=>ld(t(l),u),"compare2"),n=o((l,u)=>t(l)-u,"delta")):(e=t===ld||t===f7?t:F3e,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 F3e(){return 0}var d7=M(()=>{"use strict";h7();G$();o(cd,"bisector");o(F3e,"zero")});function p7(t){return t===null?NaN:+t}var $$=M(()=>{"use strict";o(p7,"number")});var V$,U$,z3e,G3e,m7,H$=M(()=>{"use strict";h7();d7();$$();V$=cd(ld),U$=V$.right,z3e=V$.left,G3e=cd(p7).center,m7=U$});function W$({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):r}function $3e({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):(t.set(n,r),r)}function V3e({_intern:t,_key:e},r){let n=e(r);return t.has(n)&&(r=t.get(n),t.delete(n)),r}function U3e(t){return t!==null&&typeof t=="object"?t.valueOf():t}var _p,Y$=M(()=>{"use strict";_p=class extends Map{static{o(this,"InternMap")}constructor(e,r=U3e){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(W$(this,e))}has(e){return super.has(W$(this,e))}set(e,r){return super.set($3e(this,e),r)}delete(e){return super.delete(V3e(this,e))}};o(W$,"intern_get");o($3e,"intern_set");o(V3e,"intern_delete");o(U3e,"keyof")});function G4(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>=H3e?10:a>=W3e?5:a>=Y3e?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";H3e=Math.sqrt(50),W3e=Math.sqrt(10),Y3e=Math.sqrt(2);o(G4,"tickSpec");o($4,"ticks");o(ky,"tickIncrement");o(Lp,"tickStep")});function V4(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 X$=M(()=>{"use strict";o(V4,"max")});function U4(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 j$=M(()=>{"use strict";o(U4,"min")});function H4(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(H4,"range")});var kh=M(()=>{"use strict";H$();d7();X$();j$();K$();q$();Y$()});function g7(t){return t}var Q$=M(()=>{"use strict";o(g7,"default")});function q3e(t){return"translate("+t+",0)"}function X3e(t){return"translate(0,"+t+")"}function j3e(t){return e=>+t(e)}function K3e(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),r=>+t(r)+e}function Q3e(){return!this.__axis}function J$(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===Y4||t===W4?-1:1,f=t===W4||t===y7?"x":"y",d=t===Y4||t===v7?q3e:X3e;function p(m){var g=n??(e.ticks?e.ticks.apply(e,r):e.domain()),y=i??(e.tickFormat?e.tickFormat.apply(e,r):g7),v=Math.max(a,0)+l,x=e.range(),b=+x[0]+u,w=+x[x.length-1]+u,_=(e.bandwidth?K3e:j3e)(e.copy(),u),T=m.selection?m.selection():m,E=T.selectAll(".domain").data([null]),L=T.selectAll(".tick").data(g,e).order(),S=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===Y4?"0em":t===v7?"0.71em":"0.32em")),m!==T&&(E=E.transition(m),L=L.transition(m),I=I.transition(m),D=D.transition(m),S=S.transition(m).attr("opacity",Z$).attr("transform",function(k){return isFinite(k=_(k))?d(k+u):this.getAttribute("transform")}),A.attr("opacity",Z$).attr("transform",function(k){var R=this.parentNode.__axis;return d((R&&isFinite(R=R(k))?R:_(k))+u)})),S.remove(),E.attr("d",t===W4||t===y7?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(Q3e).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===y7?"start":t===W4?"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 x7(t){return J$(Y4,t)}function b7(t){return J$(v7,t)}var Y4,y7,v7,W4,Z$,eV=M(()=>{"use strict";Q$();Y4=1,y7=2,v7=3,W4=4,Z$=1e-6;o(q3e,"translateX");o(X3e,"translateY");o(j3e,"number");o(K3e,"center");o(Q3e,"entering");o(J$,"axis");o(x7,"axisTop");o(b7,"axisBottom")});var tV=M(()=>{"use strict";eV()});function nV(){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";Z3e={value:o(()=>{},"value")};o(nV,"dispatch");o(q4,"Dispatch");o(J3e,"parseTypenames");q4.prototype=nV.prototype={constructor:q4,on:o(function(t,e){var r=this._,n=J3e(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";iV()});var X4,k7,E7=M(()=>{"use strict";X4="http://www.w3.org/1999/xhtml",k7={svg:"http://www.w3.org/2000/svg",xhtml:X4,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function pc(t){var e=t+="",r=e.indexOf(":");return r>=0&&(e=t.slice(0,r))!=="xmlns"&&(t=t.slice(r+1)),k7.hasOwnProperty(e)?{space:k7[e],local:t}:t}var j4=M(()=>{"use strict";E7();o(pc,"default")});function t5e(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===X4&&e.documentElement.namespaceURI===X4?e.createElement(t):e.createElementNS(r,t)}}function r5e(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function Ey(t){var e=pc(t);return(e.local?r5e:t5e)(e)}var S7=M(()=>{"use strict";j4();E7();o(t5e,"creatorInherit");o(r5e,"creatorFixed");o(Ey,"default")});function n5e(){}function Eh(t){return t==null?n5e:function(){return this.querySelector(t)}}var K4=M(()=>{"use strict";o(n5e,"none");o(Eh,"default")});function C7(t){typeof t!="function"&&(t=Eh(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";wl();K4();o(C7,"default")});function A7(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}var sV=M(()=>{"use strict";o(A7,"array")});function i5e(){return[]}function Dp(t){return t==null?i5e:function(){return this.querySelectorAll(t)}}var _7=M(()=>{"use strict";o(i5e,"empty");o(Dp,"default")});function a5e(t){return function(){return A7(t.apply(this,arguments))}}function L7(t){typeof t=="function"?t=a5e(t):t=Dp(t);for(var e=this._groups,r=e.length,n=[],i=[],a=0;a{"use strict";wl();sV();_7();o(a5e,"arrayAll");o(L7,"default")});function Np(t){return function(){return this.matches(t)}}function Q4(t){return function(e){return e.matches(t)}}var Sy=M(()=>{"use strict";o(Np,"default");o(Q4,"childMatcher")});function o5e(t){return function(){return s5e.call(this.children,t)}}function l5e(){return this.firstElementChild}function D7(t){return this.select(t==null?l5e:o5e(typeof t=="function"?t:Q4(t)))}var s5e,lV=M(()=>{"use strict";Sy();s5e=Array.prototype.find;o(o5e,"childFind");o(l5e,"childFirst");o(D7,"default")});function u5e(){return Array.from(this.children)}function h5e(t){return function(){return c5e.call(this.children,t)}}function N7(t){return this.selectAll(t==null?u5e:h5e(typeof t=="function"?t:Q4(t)))}var c5e,cV=M(()=>{"use strict";Sy();c5e=Array.prototype.filter;o(u5e,"children");o(h5e,"childrenFilter");o(N7,"default")});function R7(t){typeof t!="function"&&(t=Np(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";wl();Sy();o(R7,"default")});function Cy(t){return new Array(t.length)}var M7=M(()=>{"use strict";o(Cy,"default")});function I7(){return new si(this._enter||this._groups.map(Cy),this._parents)}function Ay(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}var O7=M(()=>{"use strict";M7();wl();o(I7,"default");o(Ay,"EnterNode");Ay.prototype={constructor:Ay,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 P7(t){return function(){return t}}var hV=M(()=>{"use strict";o(P7,"default")});function f5e(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";wl();O7();hV();o(f5e,"bindIndex");o(d5e,"bindKey");o(p5e,"datum");o(B7,"default");o(m5e,"arraylike")});function F7(){return new si(this._exit||this._groups.map(Cy),this._parents)}var dV=M(()=>{"use strict";M7();wl();o(F7,"default")});function z7(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 pV=M(()=>{"use strict";o(z7,"default")});function G7(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";wl();o(G7,"default")});function $7(){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 gV=M(()=>{"use strict";o($7,"default")});function V7(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 yV=M(()=>{"use strict";wl();o(V7,"default");o(g5e,"ascending")});function U7(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}var vV=M(()=>{"use strict";o(U7,"default")});function H7(){return Array.from(this)}var xV=M(()=>{"use strict";o(H7,"default")});function W7(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(W7,"default")});function Y7(){let t=0;for(let e of this)++t;return t}var wV=M(()=>{"use strict";o(Y7,"default")});function q7(){return!this.node()}var TV=M(()=>{"use strict";o(q7,"default")});function X7(t){for(var e=this._groups,r=0,n=e.length;r{"use strict";o(X7,"default")});function y5e(t){return function(){this.removeAttribute(t)}}function v5e(t){return function(){this.removeAttributeNS(t.space,t.local)}}function x5e(t,e){return function(){this.setAttribute(t,e)}}function b5e(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 T5e(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 j7(t,e){var r=pc(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:y5e:typeof e=="function"?r.local?T5e:w5e:r.local?b5e:x5e)(r,e))}var EV=M(()=>{"use strict";j4();o(y5e,"attrRemove");o(v5e,"attrRemoveNS");o(x5e,"attrConstant");o(b5e,"attrConstantNS");o(w5e,"attrFunction");o(T5e,"attrFunctionNS");o(j7,"default")});function _y(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}var K7=M(()=>{"use strict";o(_y,"default")});function k5e(t){return function(){this.style.removeProperty(t)}}function E5e(t,e,r){return function(){this.style.setProperty(t,e,r)}}function S5e(t,e,r){return function(){var n=e.apply(this,arguments);n==null?this.style.removeProperty(t):this.style.setProperty(t,n,r)}}function Q7(t,e,r){return arguments.length>1?this.each((e==null?k5e:typeof e=="function"?S5e:E5e)(t,e,r??"")):Sh(this.node(),t)}function Sh(t,e){return t.style.getPropertyValue(e)||_y(t).getComputedStyle(t,null).getPropertyValue(e)}var Z7=M(()=>{"use strict";K7();o(k5e,"styleRemove");o(E5e,"styleConstant");o(S5e,"styleFunction");o(Q7,"default");o(Sh,"styleValue")});function C5e(t){return function(){delete this[t]}}function A5e(t,e){return function(){this[t]=e}}function _5e(t,e){return function(){var r=e.apply(this,arguments);r==null?delete this[t]:this[t]=r}}function J7(t,e){return arguments.length>1?this.each((e==null?C5e:typeof e=="function"?_5e:A5e)(t,e)):this.node()[t]}var SV=M(()=>{"use strict";o(C5e,"propertyRemove");o(A5e,"propertyConstant");o(_5e,"propertyFunction");o(J7,"default")});function CV(t){return t.trim().split(/^|\s+/)}function eA(t){return t.classList||new AV(t)}function AV(t){this._node=t,this._names=CV(t.getAttribute("class")||"")}function _V(t,e){for(var r=eA(t),n=-1,i=e.length;++n{"use strict";o(CV,"classArray");o(eA,"classList");o(AV,"ClassList");AV.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(_V,"classedAdd");o(LV,"classedRemove");o(L5e,"classedTrue");o(D5e,"classedFalse");o(N5e,"classedFunction");o(tA,"default")});function R5e(){this.textContent=""}function M5e(t){return function(){this.textContent=t}}function I5e(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function rA(t){return arguments.length?this.each(t==null?R5e:(typeof t=="function"?I5e:M5e)(t)):this.node().textContent}var NV=M(()=>{"use strict";o(R5e,"textRemove");o(M5e,"textConstant");o(I5e,"textFunction");o(rA,"default")});function O5e(){this.innerHTML=""}function P5e(t){return function(){this.innerHTML=t}}function B5e(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function nA(t){return arguments.length?this.each(t==null?O5e:(typeof t=="function"?B5e:P5e)(t)):this.node().innerHTML}var RV=M(()=>{"use strict";o(O5e,"htmlRemove");o(P5e,"htmlConstant");o(B5e,"htmlFunction");o(nA,"default")});function F5e(){this.nextSibling&&this.parentNode.appendChild(this)}function iA(){return this.each(F5e)}var MV=M(()=>{"use strict";o(F5e,"raise");o(iA,"default")});function z5e(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function aA(){return this.each(z5e)}var IV=M(()=>{"use strict";o(z5e,"lower");o(aA,"default")});function sA(t){var e=typeof t=="function"?t:Ey(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}var OV=M(()=>{"use strict";S7();o(sA,"default")});function G5e(){return null}function oA(t,e){var r=typeof t=="function"?t:Ey(t),n=e==null?G5e:typeof e=="function"?e:Eh(e);return this.select(function(){return this.insertBefore(r.apply(this,arguments),n.apply(this,arguments)||null)})}var PV=M(()=>{"use strict";S7();K4();o(G5e,"constantNull");o(oA,"default")});function $5e(){var t=this.parentNode;t&&t.removeChild(this)}function lA(){return this.each($5e)}var BV=M(()=>{"use strict";o($5e,"remove");o(lA,"default")});function V5e(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function U5e(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function cA(t){return this.select(t?U5e:V5e)}var FV=M(()=>{"use strict";o(V5e,"selection_cloneShallow");o(U5e,"selection_cloneDeep");o(cA,"default")});function uA(t){return arguments.length?this.property("__data__",t):this.node().__data__}var zV=M(()=>{"use strict";o(uA,"default")});function H5e(t){return function(e){t.call(this,e,this.__data__)}}function W5e(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 Y5e(t){return function(){var e=this.__on;if(e){for(var r=0,n=-1,i=e.length,a;r{"use strict";o(H5e,"contextListener");o(W5e,"parseTypenames");o(Y5e,"onRemove");o(q5e,"onAdd");o(hA,"default")});function $V(t,e,r){var n=_y(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 X5e(t,e){return function(){return $V(this,t,e)}}function j5e(t,e){return function(){return $V(this,t,e.apply(this,arguments))}}function fA(t,e){return this.each((typeof e=="function"?j5e:X5e)(t,e))}var VV=M(()=>{"use strict";K7();o($V,"dispatchEvent");o(X5e,"dispatchConstant");o(j5e,"dispatchFunction");o(fA,"default")});function*dA(){for(var t=this._groups,e=0,r=t.length;e{"use strict";o(dA,"default")});function si(t,e){this._groups=t,this._parents=e}function HV(){return new si([[document.documentElement]],pA)}function K5e(){return this}var pA,vu,wl=M(()=>{"use strict";aV();oV();lV();cV();uV();fV();O7();dV();pV();mV();gV();yV();vV();xV();bV();wV();TV();kV();EV();Z7();SV();DV();NV();RV();MV();IV();OV();PV();BV();FV();zV();GV();VV();UV();pA=[null];o(si,"Selection");o(HV,"selection");o(K5e,"selection_selection");si.prototype=HV.prototype={constructor:si,select:C7,selectAll:L7,selectChild:D7,selectChildren:N7,filter:R7,data:B7,enter:I7,exit:F7,join:z7,merge:G7,selection:K5e,order:$7,sort:V7,call:U7,nodes:H7,node:W7,size:Y7,empty:q7,each:X7,attr:j7,style:Q7,property:J7,classed:tA,text:rA,html:nA,raise:iA,lower:aA,append:sA,insert:oA,remove:lA,clone:cA,datum:uA,on:hA,dispatch:fA,[Symbol.iterator]:dA};vu=HV});function Ve(t){return typeof t=="string"?new si([[document.querySelector(t)]],[document.documentElement]):new si([[t]],pA)}var WV=M(()=>{"use strict";wl();o(Ve,"default")});var Tl=M(()=>{"use strict";Sy();j4();WV();wl();K4();_7();Z7()});var YV=M(()=>{"use strict"});function Ch(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function Rp(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}var mA=M(()=>{"use strict";o(Ch,"default");o(Rp,"extend")});function Ah(){}function XV(){return this.rgb().formatHex()}function iwe(){return this.rgb().formatHex8()}function awe(){return tU(this).formatHsl()}function jV(){return this.rgb().formatRgb()}function El(t){var e,r;return t=(t+"").trim().toLowerCase(),(e=Q5e.exec(t))?(r=e[1].length,e=parseInt(e[1],16),r===6?KV(e):r===3?new da(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):r===8?Z4(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):r===4?Z4(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=Z5e.exec(t))?new da(e[1],e[2],e[3],1):(e=J5e.exec(t))?new da(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=ewe.exec(t))?Z4(e[1],e[2],e[3],e[4]):(e=twe.exec(t))?Z4(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=rwe.exec(t))?JV(e[1],e[2]/100,e[3]/100,1):(e=nwe.exec(t))?JV(e[1],e[2]/100,e[3]/100,e[4]):qV.hasOwnProperty(t)?KV(qV[t]):t==="transparent"?new da(NaN,NaN,NaN,0):null}function KV(t){return new da(t>>16&255,t>>8&255,t&255,1)}function Z4(t,e,r,n){return n<=0&&(t=e=r=NaN),new da(t,e,r,n)}function yA(t){return t instanceof Ah||(t=El(t)),t?(t=t.rgb(),new da(t.r,t.g,t.b,t.opacity)):new da}function Ip(t,e,r,n){return arguments.length===1?yA(t):new da(t,e,r,n??1)}function da(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function QV(){return`#${ud(this.r)}${ud(this.g)}${ud(this.b)}`}function swe(){return`#${ud(this.r)}${ud(this.g)}${ud(this.b)}${ud((isNaN(this.opacity)?1:this.opacity)*255)}`}function ZV(){let t=t3(this.opacity);return`${t===1?"rgb(":"rgba("}${hd(this.r)}, ${hd(this.g)}, ${hd(this.b)}${t===1?")":`, ${t})`}`}function t3(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function hd(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function ud(t){return t=hd(t),(t<16?"0":"")+t.toString(16)}function JV(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new kl(t,e,r,n)}function tU(t){if(t instanceof kl)return new kl(t.h,t.s,t.l,t.opacity);if(t instanceof Ah||(t=El(t)),!t)return new kl;if(t instanceof kl)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 kl(s,l,u,t.opacity)}function rU(t,e,r,n){return arguments.length===1?tU(t):new kl(t,e,r,n??1)}function kl(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function eU(t){return t=(t||0)%360,t<0?t+360:t}function J4(t){return Math.max(0,Math.min(1,t||0))}function gA(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 Ly,e3,Mp,Dy,mc,Q5e,Z5e,J5e,ewe,twe,rwe,nwe,qV,vA=M(()=>{"use strict";mA();o(Ah,"Color");Ly=.7,e3=1/Ly,Mp="\\s*([+-]?\\d+)\\s*",Dy="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",mc="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Q5e=/^#([0-9a-f]{3,8})$/,Z5e=new RegExp(`^rgb\\(${Mp},${Mp},${Mp}\\)$`),J5e=new RegExp(`^rgb\\(${mc},${mc},${mc}\\)$`),ewe=new RegExp(`^rgba\\(${Mp},${Mp},${Mp},${Dy}\\)$`),twe=new RegExp(`^rgba\\(${mc},${mc},${mc},${Dy}\\)$`),rwe=new RegExp(`^hsl\\(${Dy},${mc},${mc}\\)$`),nwe=new RegExp(`^hsla\\(${Dy},${mc},${mc},${Dy}\\)$`),qV={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};Ch(Ah,El,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:XV,formatHex:XV,formatHex8:iwe,formatHsl:awe,formatRgb:jV,toString:jV});o(XV,"color_formatHex");o(iwe,"color_formatHex8");o(awe,"color_formatHsl");o(jV,"color_formatRgb");o(El,"color");o(KV,"rgbn");o(Z4,"rgba");o(yA,"rgbConvert");o(Ip,"rgb");o(da,"Rgb");Ch(da,Ip,Rp(Ah,{brighter(t){return t=t==null?e3:Math.pow(e3,t),new da(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Ly:Math.pow(Ly,t),new da(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new da(hd(this.r),hd(this.g),hd(this.b),t3(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:QV,formatHex:QV,formatHex8:swe,formatRgb:ZV,toString:ZV}));o(QV,"rgb_formatHex");o(swe,"rgb_formatHex8");o(ZV,"rgb_formatRgb");o(t3,"clampa");o(hd,"clampi");o(ud,"hex");o(JV,"hsla");o(tU,"hslConvert");o(rU,"hsl");o(kl,"Hsl");Ch(kl,rU,Rp(Ah,{brighter(t){return t=t==null?e3:Math.pow(e3,t),new kl(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Ly:Math.pow(Ly,t),new kl(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 da(gA(t>=240?t-240:t+120,i,n),gA(t,i,n),gA(t<120?t+240:t-120,i,n),this.opacity)},clamp(){return new kl(eU(this.h),J4(this.s),J4(this.l),t3(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=t3(this.opacity);return`${t===1?"hsl(":"hsla("}${eU(this.h)}, ${J4(this.s)*100}%, ${J4(this.l)*100}%${t===1?")":`, ${t})`}`}}));o(eU,"clamph");o(J4,"clampt");o(gA,"hsl2rgb")});var nU,iU,aU=M(()=>{"use strict";nU=Math.PI/180,iU=180/Math.PI});function hU(t){if(t instanceof gc)return new gc(t.l,t.a,t.b,t.opacity);if(t instanceof xu)return fU(t);t instanceof da||(t=yA(t));var e=TA(t.r),r=TA(t.g),n=TA(t.b),i=xA((.2225045*e+.7168786*r+.0606169*n)/oU),a,s;return e===r&&r===n?a=s=i:(a=xA((.4360747*e+.3850649*r+.1430804*n)/sU),s=xA((.0139322*e+.0971045*r+.7141733*n)/lU)),new gc(116*i-16,500*(a-i),200*(i-s),t.opacity)}function kA(t,e,r,n){return arguments.length===1?hU(t):new gc(t,e,r,n??1)}function gc(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function xA(t){return t>owe?Math.pow(t,1/3):t/uU+cU}function bA(t){return t>Op?t*t*t:uU*(t-cU)}function wA(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function TA(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function lwe(t){if(t instanceof xu)return new xu(t.h,t.c,t.l,t.opacity);if(t instanceof gc||(t=hU(t)),t.a===0&&t.b===0)return new xu(NaN,0{"use strict";mA();vA();aU();r3=18,sU=.96422,oU=1,lU=.82521,cU=4/29,Op=6/29,uU=3*Op*Op,owe=Op*Op*Op;o(hU,"labConvert");o(kA,"lab");o(gc,"Lab");Ch(gc,kA,Rp(Ah,{brighter(t){return new gc(this.l+r3*(t??1),this.a,this.b,this.opacity)},darker(t){return new gc(this.l-r3*(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=sU*bA(e),t=oU*bA(t),r=lU*bA(r),new da(wA(3.1338561*e-1.6168667*t-.4906146*r),wA(-.9787684*e+1.9161415*t+.033454*r),wA(.0719453*e-.2289914*t+1.4052427*r),this.opacity)}}));o(xA,"xyz2lab");o(bA,"lab2xyz");o(wA,"lrgb2rgb");o(TA,"rgb2lrgb");o(lwe,"hclConvert");o(Ny,"hcl");o(xu,"Hcl");o(fU,"hcl2lab");Ch(xu,Ny,Rp(Ah,{brighter(t){return new xu(this.h,this.c,this.l+r3*(t??1),this.opacity)},darker(t){return new xu(this.h,this.c,this.l-r3*(t??1),this.opacity)},rgb(){return fU(this).rgb()}}))});var Pp=M(()=>{"use strict";vA();dU()});function EA(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 SA(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(EA,"basis");o(SA,"default")});function AA(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 EA((r-n/e)*e,i,a,s,l)}}var pU=M(()=>{"use strict";CA();o(AA,"default")});var Bp,_A=M(()=>{"use strict";Bp=o(t=>()=>t,"default")});function mU(t,e){return function(r){return t+r*e}}function cwe(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 gU(t,e){var r=e-t;return r?mU(t,r>180||r<-180?r-360*Math.round(r/360):r):Bp(isNaN(t)?e:t)}function yU(t){return(t=+t)==1?bu:function(e,r){return r-e?cwe(e,r,t):Bp(isNaN(e)?r:e)}}function bu(t,e){var r=e-t;return r?mU(t,r):Bp(isNaN(t)?e:t)}var LA=M(()=>{"use strict";_A();o(mU,"linear");o(cwe,"exponential");o(gU,"hue");o(yU,"gamma");o(bu,"nogamma")});function vU(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";Pp();CA();pU();LA();fd=o(function t(e){var r=yU(e);function n(i,a){var s=r((i=Ip(i)).r,(a=Ip(a)).r),l=r(i.g,a.g),u=r(i.b,a.b),h=bu(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(vU,"rgbSpline");uwe=vU(SA),hwe=vU(AA)});function NA(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(NA,"default");o(xU,"isNumberArray")});function wU(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";n3();o(wU,"genericArray")});function RA(t,e){var r=new Date;return t=+t,e=+e,function(n){return r.setTime(t*(1-n)+e*n),r}}var kU=M(()=>{"use strict";o(RA,"default")});function ea(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var Ry=M(()=>{"use strict";o(ea,"default")});function MA(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]=_h(t[i],e[i]):n[i]=e[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var EU=M(()=>{"use strict";n3();o(MA,"default")});function fwe(t){return function(){return t}}function dwe(t){return function(e){return t(e)+""}}function Fp(t,e){var r=OA.lastIndex=IA.lastIndex=0,n,i,a,s=-1,l=[],u=[];for(t=t+"",e=e+"";(n=OA.exec(t))&&(i=IA.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:ea(n,i)})),r=IA.lastIndex;return r{"use strict";Ry();OA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,IA=new RegExp(OA.source,"g");o(fwe,"zero");o(dwe,"one");o(Fp,"default")});function _h(t,e){var r=typeof e,n;return e==null||r==="boolean"?Bp(e):(r==="number"?ea:r==="string"?(n=El(e))?(e=n,fd):Fp:e instanceof El?fd:e instanceof Date?RA:xU(e)?NA:Array.isArray(e)?wU:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?MA:ea)(t,e)}var n3=M(()=>{"use strict";Pp();DA();TU();kU();Ry();EU();PA();_A();bU();o(_h,"default")});function i3(t,e){return t=+t,e=+e,function(r){return Math.round(t*(1-r)+e*r)}}var SU=M(()=>{"use strict";o(i3,"default")});function s3(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";CU=180/Math.PI,a3={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};o(s3,"default")});function _U(t){let e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?a3:s3(e.a,e.b,e.c,e.d,e.e,e.f)}function LU(t){return t==null?a3:(o3||(o3=document.createElementNS("http://www.w3.org/2000/svg","g")),o3.setAttribute("transform",t),(t=o3.transform.baseVal.consolidate())?(t=t.matrix,s3(t.a,t.b,t.c,t.d,t.e,t.f)):a3)}var o3,DU=M(()=>{"use strict";AU();o(_U,"parseCss");o(LU,"parseSvg")});function NU(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:ea(h,d)},{i:y-2,x:ea(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:ea(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:ea(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:ea(h,d)},{i:y-2,x:ea(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";Ry();DU();o(NU,"interpolateTransform");BA=NU(_U,"px, ","px)","deg)"),FA=NU(LU,", ",")",")")});function MU(t){return function(e,r){var n=t((e=Ny(e)).h,(r=Ny(r)).h),i=bu(e.c,r.c),a=bu(e.l,r.l),s=bu(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 zA,pwe,IU=M(()=>{"use strict";Pp();LA();o(MU,"hcl");zA=MU(gU),pwe=MU(bu)});var zp=M(()=>{"use strict";n3();Ry();SU();PA();RU();DA();IU()});function Fy(){return dd||(BU(mwe),dd=Py.now()+u3)}function mwe(){dd=0}function By(){this._call=this._time=this._next=null}function h3(t,e,r){var n=new By;return n.restart(t,e,r),n}function FU(){Fy(),++Gp;for(var t=l3,e;t;)(e=dd-t._time)>=0&&t._call.call(void 0,e),t=t._next;--Gp}function OU(){dd=(c3=Py.now())+u3,Gp=Iy=0;try{FU()}finally{Gp=0,ywe(),dd=0}}function gwe(){var t=Py.now(),e=t-c3;e>PU&&(u3-=e,c3=t)}function ywe(){for(var t,e=l3,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:l3=r);Oy=t,GA(n)}function GA(t){if(!Gp){Iy&&(Iy=clearTimeout(Iy));var e=t-dd;e>24?(t<1/0&&(Iy=setTimeout(OU,t-Py.now()-u3)),My&&(My=clearInterval(My))):(My||(c3=Py.now(),My=setInterval(gwe,PU)),Gp=1,BU(OU))}}var Gp,Iy,My,PU,l3,Oy,c3,dd,u3,Py,BU,$A=M(()=>{"use strict";Gp=0,Iy=0,My=0,PU=1e3,c3=0,dd=0,u3=0,Py=typeof performance=="object"&&performance.now?performance:Date,BU=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};o(Fy,"now");o(mwe,"clearNow");o(By,"Timer");By.prototype=h3.prototype={constructor:By,restart:o(function(t,e,r){if(typeof t!="function")throw new TypeError("callback is not a function");r=(r==null?Fy():+r)+(e==null?0:+e),!this._next&&Oy!==this&&(Oy?Oy._next=this:l3=this,Oy=this),this._call=t,this._time=r,GA()},"restart"),stop:o(function(){this._call&&(this._call=null,this._time=1/0,GA())},"stop")};o(h3,"timer");o(FU,"timerFlush");o(OU,"wake");o(gwe,"poke");o(ywe,"nap");o(GA,"sleep")});function zy(t,e,r){var n=new By;return e=e==null?0:+e,n.restart(i=>{n.stop(),t(i+e)},e,r),n}var zU=M(()=>{"use strict";$A();o(zy,"default")});var f3=M(()=>{"use strict";$A();zU()});function wu(t,e,r,n,i,a){var s=t.__transition;if(!s)t.__transition={};else if(r in s)return;bwe(t,r,{name:e,index:n,group:i,on:vwe,tween:xwe,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:VU})}function $y(t,e){var r=zi(t,e);if(r.state>VU)throw new Error("too late; already scheduled");return r}function pa(t,e){var r=zi(t,e);if(r.state>d3)throw new Error("too late; already running");return r}function zi(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function bwe(t,e,r){var n=t.__transition,i;n[e]=r,r.timer=h3(a,0,r.time);function a(h){r.state=GU,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!==GU)return u();for(f in n)if(m=n[f],m.name===r.name){if(m.state===d3)return zy(s);m.state===$U?(m.state=Gy,m.timer.stop(),m.on.call("interrupt",t,t.__data__,m.index,m.group),delete n[f]):+f{"use strict";T7();f3();vwe=w7("start","end","cancel","interrupt"),xwe=[],VU=0,GU=1,p3=2,d3=3,$U=4,m3=5,Gy=6;o(wu,"default");o($y,"init");o(pa,"set");o(zi,"get");o(bwe,"create")});function Vy(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>p3&&n.state{"use strict";Cs();o(Vy,"default")});function VA(t){return this.each(function(){Vy(this,t)})}var HU=M(()=>{"use strict";UU();o(VA,"default")});function wwe(t,e){var r,n;return function(){var i=pa(this,t),a=i.tween;if(a!==r){n=r=a;for(var s=0,l=n.length;s{"use strict";Cs();o(wwe,"tweenRemove");o(Twe,"tweenFunction");o(UA,"default");o($p,"tweenValue")});function Hy(t,e){var r;return(typeof e=="number"?ea:e instanceof El?fd:(r=El(e))?(e=r,fd):Fp)(t,e)}var HA=M(()=>{"use strict";Pp();zp();o(Hy,"default")});function kwe(t){return function(){this.removeAttribute(t)}}function Ewe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Swe(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 Cwe(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 Awe(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 _we(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 WA(t,e){var r=pc(t),n=r==="transform"?FA:Hy;return this.attrTween(t,typeof e=="function"?(r.local?_we:Awe)(r,n,$p(this,"attr."+t,e)):e==null?(r.local?Ewe:kwe)(r):(r.local?Cwe:Swe)(r,n,e))}var WU=M(()=>{"use strict";zp();Tl();Uy();HA();o(kwe,"attrRemove");o(Ewe,"attrRemoveNS");o(Swe,"attrConstant");o(Cwe,"attrConstantNS");o(Awe,"attrFunction");o(_we,"attrFunctionNS");o(WA,"default")});function Lwe(t,e){return function(r){this.setAttribute(t,e.call(this,r))}}function Dwe(t,e){return function(r){this.setAttributeNS(t.space,t.local,e.call(this,r))}}function Nwe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&Dwe(t,a)),r}return o(i,"tween"),i._value=e,i}function Rwe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&Lwe(t,a)),r}return o(i,"tween"),i._value=e,i}function YA(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=pc(t);return this.tween(r,(n.local?Nwe:Rwe)(n,e))}var YU=M(()=>{"use strict";Tl();o(Lwe,"attrInterpolate");o(Dwe,"attrInterpolateNS");o(Nwe,"attrTweenNS");o(Rwe,"attrTween");o(YA,"default")});function Mwe(t,e){return function(){$y(this,t).delay=+e.apply(this,arguments)}}function Iwe(t,e){return e=+e,function(){$y(this,t).delay=e}}function qA(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?Mwe:Iwe)(e,t)):zi(this.node(),e).delay}var qU=M(()=>{"use strict";Cs();o(Mwe,"delayFunction");o(Iwe,"delayConstant");o(qA,"default")});function Owe(t,e){return function(){pa(this,t).duration=+e.apply(this,arguments)}}function Pwe(t,e){return e=+e,function(){pa(this,t).duration=e}}function XA(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?Owe:Pwe)(e,t)):zi(this.node(),e).duration}var XU=M(()=>{"use strict";Cs();o(Owe,"durationFunction");o(Pwe,"durationConstant");o(XA,"default")});function Bwe(t,e){if(typeof e!="function")throw new Error;return function(){pa(this,t).ease=e}}function jA(t){var e=this._id;return arguments.length?this.each(Bwe(e,t)):zi(this.node(),e).ease}var jU=M(()=>{"use strict";Cs();o(Bwe,"easeConstant");o(jA,"default")});function Fwe(t,e){return function(){var r=e.apply(this,arguments);if(typeof r!="function")throw new Error;pa(this,t).ease=r}}function KA(t){if(typeof t!="function")throw new Error;return this.each(Fwe(this._id,t))}var KU=M(()=>{"use strict";Cs();o(Fwe,"easeVarying");o(KA,"default")});function QA(t){typeof t!="function"&&(t=Np(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i{"use strict";Tl();pd();o(QA,"default")});function ZA(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";pd();o(ZA,"default")});function zwe(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 Gwe(t,e,r){var n,i,a=zwe(e)?$y:pa;return function(){var s=a(this,t),l=s.on;l!==n&&(i=(n=l).copy()).on(e,r),s.on=i}}function JA(t,e){var r=this._id;return arguments.length<2?zi(this.node(),r).on.on(t):this.each(Gwe(r,t,e))}var JU=M(()=>{"use strict";Cs();o(zwe,"start");o(Gwe,"onFunction");o(JA,"default")});function $we(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}function e8(){return this.on("end.remove",$we(this._id))}var eH=M(()=>{"use strict";o($we,"removeFunction");o(e8,"default")});function t8(t){var e=this._name,r=this._id;typeof t!="function"&&(t=Eh(t));for(var n=this._groups,i=n.length,a=new Array(i),s=0;s{"use strict";Tl();pd();Cs();o(t8,"default")});function r8(t){var e=this._name,r=this._id;typeof t!="function"&&(t=Dp(t));for(var n=this._groups,i=n.length,a=[],s=[],l=0;l{"use strict";Tl();pd();Cs();o(r8,"default")});function n8(){return new Vwe(this._groups,this._parents)}var Vwe,nH=M(()=>{"use strict";Tl();Vwe=vu.prototype.constructor;o(n8,"default")});function Uwe(t,e){var r,n,i;return function(){var a=Sh(this,t),s=(this.style.removeProperty(t),Sh(this,t));return a===s?null:a===r&&s===n?i:i=e(r=a,n=s)}}function iH(t){return function(){this.style.removeProperty(t)}}function Hwe(t,e,r){var n,i=r+"",a;return function(){var s=Sh(this,t);return s===i?null:s===n?a:a=e(n=s,r)}}function Wwe(t,e,r){var n,i,a;return function(){var s=Sh(this,t),l=r(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(t),Sh(this,t))),s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l))}}function Ywe(t,e){var r,n,i,a="style."+e,s="end."+a,l;return function(){var u=pa(this,t),h=u.on,f=u.value[a]==null?l||(l=iH(e)):void 0;(h!==r||i!==f)&&(n=(r=h).copy()).on(s,i=f),u.on=n}}function i8(t,e,r){var n=(t+="")=="transform"?BA:Hy;return e==null?this.styleTween(t,Uwe(t,n)).on("end.style."+t,iH(t)):typeof e=="function"?this.styleTween(t,Wwe(t,n,$p(this,"style."+t,e))).each(Ywe(this._id,t)):this.styleTween(t,Hwe(t,n,e),r).on("end.style."+t,null)}var aH=M(()=>{"use strict";zp();Tl();Cs();Uy();HA();o(Uwe,"styleNull");o(iH,"styleRemove");o(Hwe,"styleConstant");o(Wwe,"styleFunction");o(Ywe,"styleMaybeRemove");o(i8,"default")});function qwe(t,e,r){return function(n){this.style.setProperty(t,e.call(this,n),r)}}function Xwe(t,e,r){var n,i;function a(){var s=e.apply(this,arguments);return s!==i&&(n=(i=s)&&qwe(t,s,r)),n}return o(a,"tween"),a._value=e,a}function a8(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,Xwe(t,e,r??""))}var sH=M(()=>{"use strict";o(qwe,"styleInterpolate");o(Xwe,"styleTween");o(a8,"default")});function jwe(t){return function(){this.textContent=t}}function Kwe(t){return function(){var e=t(this);this.textContent=e??""}}function s8(t){return this.tween("text",typeof t=="function"?Kwe($p(this,"text",t)):jwe(t==null?"":t+""))}var oH=M(()=>{"use strict";Uy();o(jwe,"textConstant");o(Kwe,"textFunction");o(s8,"default")});function Qwe(t){return function(e){this.textContent=t.call(this,e)}}function Zwe(t){var e,r;function n(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&Qwe(i)),e}return o(n,"tween"),n._value=t,n}function o8(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,Zwe(t))}var lH=M(()=>{"use strict";o(Qwe,"textInterpolate");o(Zwe,"textTween");o(o8,"default")});function l8(){for(var t=this._name,e=this._id,r=g3(),n=this._groups,i=n.length,a=0;a{"use strict";pd();Cs();o(l8,"default")});function c8(){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=pa(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 uH=M(()=>{"use strict";Cs();o(c8,"default")});function rs(t,e,r,n){this._groups=t,this._parents=e,this._name=r,this._id=n}function hH(t){return vu().transition(t)}function g3(){return++Jwe}var Jwe,Tu,pd=M(()=>{"use strict";Tl();WU();YU();qU();XU();jU();KU();QU();ZU();JU();eH();tH();rH();nH();aH();sH();oH();lH();cH();Uy();uH();Jwe=0;o(rs,"Transition");o(hH,"transition");o(g3,"newId");Tu=vu.prototype;rs.prototype=hH.prototype={constructor:rs,select:t8,selectAll:r8,selectChild:Tu.selectChild,selectChildren:Tu.selectChildren,filter:QA,merge:ZA,selection:n8,transition:l8,call:Tu.call,nodes:Tu.nodes,node:Tu.node,size:Tu.size,empty:Tu.empty,each:Tu.each,on:JA,attr:WA,attrTween:YA,style:i8,styleTween:a8,text:s8,textTween:o8,remove:e8,tween:UA,delay:qA,duration:XA,ease:jA,easeVarying:KA,end:c8,[Symbol.iterator]:Tu[Symbol.iterator]}});function y3(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var fH=M(()=>{"use strict";o(y3,"cubicInOut")});var u8=M(()=>{"use strict";fH()});function tTe(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 h8(t){var e,r;t instanceof rs?(e=t._id,t=t._name):(e=g3(),(r=eTe).time=Fy(),t=t==null?null:t+"");for(var n=this._groups,i=n.length,a=0;a{"use strict";pd();Cs();u8();f3();eTe={time:null,delay:0,duration:250,ease:y3};o(tTe,"inherit");o(h8,"default")});var pH=M(()=>{"use strict";Tl();HU();dH();vu.prototype.interrupt=VA;vu.prototype.transition=h8});var v3=M(()=>{"use strict";pH()});var mH=M(()=>{"use strict"});var gH=M(()=>{"use strict"});var yH=M(()=>{"use strict"});function vH(t){return[+t[0],+t[1]]}function rTe(t){return[vH(t[0]),vH(t[1])]}function f8(t){return{type:t}}var Agt,_gt,Lgt,Dgt,Ngt,Rgt,xH=M(()=>{"use strict";v3();mH();gH();yH();({abs:Agt,max:_gt,min:Lgt}=Math);o(vH,"number1");o(rTe,"number2");Dgt={name:"x",handles:["w","e"].map(f8),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")},Ngt={name:"y",handles:["n","s"].map(f8),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")},Rgt={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(f8),input:o(function(t){return t==null?null:rTe(t)},"input"),output:o(function(t){return t},"output")};o(f8,"type")});var bH=M(()=>{"use strict";xH()});function wH(t){this._+=t[0];for(let e=1,r=t.length;e=0))throw new Error(`invalid digits: ${t}`);if(e>15)return wH;let r=10**e;return function(n){this._+=n[0];for(let i=1,a=n.length;i{"use strict";d8=Math.PI,p8=2*d8,md=1e-6,nTe=p8-md;o(wH,"append");o(iTe,"appendRound");gd=class{static{o(this,"Path")}constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=e==null?wH:iTe(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>md)if(!(Math.abs(d*u-h*f)>md)||!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((d8-Math.acos((y+p-v)/(2*x*b)))/2),_=w/b,T=w/x;Math.abs(_-1)>md&&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)>md||Math.abs(this._y1-f)>md)&&this._append`L${h},${f}`,n&&(p<0&&(p=p%p8+p8),p>nTe?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>md&&this._append`A${n},${n},0,${+(p>=d8)},${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(TH,"path");TH.prototype=gd.prototype});var m8=M(()=>{"use strict";kH()});var EH=M(()=>{"use strict"});var SH=M(()=>{"use strict"});var CH=M(()=>{"use strict"});var AH=M(()=>{"use strict"});var _H=M(()=>{"use strict"});var LH=M(()=>{"use strict"});var DH=M(()=>{"use strict"});function g8(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function yd(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 Wy=M(()=>{"use strict";o(g8,"default");o(yd,"formatDecimalParts")});function Sl(t){return t=yd(Math.abs(t)),t?t[1]:NaN}var Yy=M(()=>{"use strict";Wy();o(Sl,"default")});function y8(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 NH=M(()=>{"use strict";o(y8,"default")});function v8(t){return function(e){return e.replace(/[0-9]/g,function(r){return t[+r]})}}var RH=M(()=>{"use strict";o(v8,"default")});function Lh(t){if(!(e=aTe.exec(t)))throw new Error("invalid format: "+t);var e;return new x3({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 x3(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 aTe,x8=M(()=>{"use strict";aTe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;o(Lh,"formatSpecifier");Lh.prototype=x3.prototype;o(x3,"FormatSpecifier");x3.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 b8(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 MH=M(()=>{"use strict";o(b8,"default")});function T8(t,e){var r=yd(t,e);if(!r)return t+"";var n=r[0],i=r[1],a=i-(w8=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")+yd(t,Math.max(0,e+a-1))[0]}var w8,k8=M(()=>{"use strict";Wy();o(T8,"default")});function b3(t,e){var r=yd(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 IH=M(()=>{"use strict";Wy();o(b3,"default")});var E8,OH=M(()=>{"use strict";Wy();k8();IH();E8={"%":o((t,e)=>(t*100).toFixed(e),"%"),b:o(t=>Math.round(t).toString(2),"b"),c:o(t=>t+"","c"),d:g8,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)=>b3(t*100,e),"p"),r:b3,s:T8,X:o(t=>Math.round(t).toString(16).toUpperCase(),"X"),x:o(t=>Math.round(t).toString(16),"x")}});function w3(t){return t}var PH=M(()=>{"use strict";o(w3,"default")});function S8(t){var e=t.grouping===void 0||t.thousands===void 0?w3:y8(BH.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?w3:v8(BH.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=Lh(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"):E8[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:"",S=E8[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,C,O,N;if(T==="c")R=S(D)+R,D="";else{D=+D;var P=D<0||1/D<0;if(D=isNaN(D)?u:S(Math.abs(D),w),_&&(D=b8(D)),P&&+D==0&&g!=="+"&&(P=!1),k=(P?g==="("?g:l:g==="-"||g==="("?"":g)+k,R=(T==="s"?FH[8+w8/3]:"")+R+(P&&g==="("?")":""),A){for(C=-1,O=D.length;++CN||N>57){R=(N===46?i+D.slice(C+1):D.slice(C))+R,D=D.slice(0,C);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=Lh(d),d.type="f",d)),g=Math.max(-8,Math.min(8,Math.floor(Sl(p)/3)))*3,y=Math.pow(10,-g),v=FH[8+g/3];return function(x){return m(y*x)+v}}return o(f,"formatPrefix"),{format:h,formatPrefix:f}}var BH,FH,zH=M(()=>{"use strict";Yy();NH();RH();x8();MH();OH();k8();PH();BH=Array.prototype.map,FH=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];o(S8,"default")});function C8(t){return T3=S8(t),k3=T3.format,E3=T3.formatPrefix,T3}var T3,k3,E3,GH=M(()=>{"use strict";zH();C8({thousands:",",grouping:[3],currency:["$",""]});o(C8,"defaultLocale")});function S3(t){return Math.max(0,-Sl(Math.abs(t)))}var $H=M(()=>{"use strict";Yy();o(S3,"default")});function C3(t,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Sl(e)/3)))*3-Sl(Math.abs(t)))}var VH=M(()=>{"use strict";Yy();o(C3,"default")});function A3(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,Sl(e)-Sl(t))+1}var UH=M(()=>{"use strict";Yy();o(A3,"default")});var A8=M(()=>{"use strict";GH();x8();$H();VH();UH()});var HH=M(()=>{"use strict"});var WH=M(()=>{"use strict"});var YH=M(()=>{"use strict"});var qH=M(()=>{"use strict"});function Dh(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t);break}return this}var qy=M(()=>{"use strict";o(Dh,"initRange")});function ku(){var t=new _p,e=[],r=[],n=_8;function i(a){let s=t.get(a);if(s===void 0){if(n!==_8)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 _p;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 ku(e,r).unknown(n)},Dh.apply(i,arguments),i}var _8,L8=M(()=>{"use strict";kh();qy();_8=Symbol("implicit");o(ku,"ordinal")});function Vp(){var t=ku().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";kh();qy();L8();o(Vp,"band")});function D8(t){return function(){return t}}var jH=M(()=>{"use strict";o(D8,"constants")});function N8(t){return+t}var KH=M(()=>{"use strict";o(N8,"number")});function Up(t){return t}function R8(t,e){return(e-=t=+t)?function(r){return(r-t)/e}:D8(isNaN(e)?NaN:.5)}function sTe(t,e){var r;return t>e&&(r=t,t=e,e=r),function(n){return Math.max(t,Math.min(e,n))}}function oTe(t,e,r){var n=t[0],i=t[1],a=e[0],s=e[1];return i2?lTe:oTe,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),ea)))(p)))},d.domain=function(p){return arguments.length?(t=Array.from(p,N8),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=i3,f()},d.clamp=function(p){return arguments.length?(s=p?!0:Up,f()):s!==Up},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 Xy(){return cTe()(Up,Up)}var QH,M8=M(()=>{"use strict";kh();zp();jH();KH();QH=[0,1];o(Up,"identity");o(R8,"normalize");o(sTe,"clamper");o(oTe,"bimap");o(lTe,"polymap");o(_3,"copy");o(cTe,"transformer");o(Xy,"continuous")});function I8(t,e,r,n){var i=Lp(t,e,r),a;switch(n=Lh(n??",f"),n.type){case"s":{var s=Math.max(Math.abs(t),Math.abs(e));return n.precision==null&&!isNaN(a=C3(i,s))&&(n.precision=a),E3(n,s)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=A3(i,Math.max(Math.abs(t),Math.abs(e))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=S3(i))&&(n.precision=a-(n.type==="%")*2);break}}return k3(n)}var ZH=M(()=>{"use strict";kh();A8();o(I8,"tickFormat")});function uTe(t){var e=t.domain;return t.ticks=function(r){var n=e();return $4(n[0],n[n.length-1],r??10)},t.tickFormat=function(r,n){var i=e();return I8(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=ky(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 Cl(){var t=Xy();return t.copy=function(){return _3(t,Cl())},Dh.apply(t,arguments),uTe(t)}var JH=M(()=>{"use strict";kh();M8();qy();ZH();o(uTe,"linearish");o(Cl,"linear")});function O8(t,e){t=t.slice();var r=0,n=t.length-1,i=t[r],a=t[n],s;return a{"use strict";o(O8,"nice")});function vn(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(hvn(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)=>(P8.setTime(+a),B8.setTime(+s),t(P8),t(B8),Math.floor(r(P8,B8))),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 P8,B8,Eu=M(()=>{"use strict";P8=new Date,B8=new Date;o(vn,"timeInterval")});var yc,tW,F8=M(()=>{"use strict";Eu();yc=vn(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);yc.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?vn(e=>{e.setTime(Math.floor(e/t)*t)},(e,r)=>{e.setTime(+e+r*t)},(e,r)=>(r-e)/t):yc);tW=yc.range});var to,rW,z8=M(()=>{"use strict";Eu();to=vn(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*1e3)},(t,e)=>(e-t)/1e3,t=>t.getUTCSeconds()),rW=to.range});var Su,hTe,L3,fTe,G8=M(()=>{"use strict";Eu();Su=vn(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getMinutes()),hTe=Su.range,L3=vn(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getUTCMinutes()),fTe=L3.range});var Cu,dTe,D3,pTe,$8=M(()=>{"use strict";Eu();Cu=vn(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()),dTe=Cu.range,D3=vn(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getUTCHours()),pTe=D3.range});var Oo,mTe,Ky,gTe,N3,yTe,V8=M(()=>{"use strict";Eu();Oo=vn(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),mTe=Oo.range,Ky=vn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>t.getUTCDate()-1),gTe=Ky.range,N3=vn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>Math.floor(t/864e5)),yTe=N3.range});function bd(t){return vn(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 wd(t){return vn(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 Al,Nh,R3,M3,xc,I3,O3,iW,vTe,xTe,bTe,wTe,TTe,kTe,Td,Hp,aW,sW,Rh,oW,lW,cW,ETe,STe,CTe,ATe,_Te,LTe,U8=M(()=>{"use strict";Eu();o(bd,"timeWeekday");Al=bd(0),Nh=bd(1),R3=bd(2),M3=bd(3),xc=bd(4),I3=bd(5),O3=bd(6),iW=Al.range,vTe=Nh.range,xTe=R3.range,bTe=M3.range,wTe=xc.range,TTe=I3.range,kTe=O3.range;o(wd,"utcWeekday");Td=wd(0),Hp=wd(1),aW=wd(2),sW=wd(3),Rh=wd(4),oW=wd(5),lW=wd(6),cW=Td.range,ETe=Hp.range,STe=aW.range,CTe=sW.range,ATe=Rh.range,_Te=oW.range,LTe=lW.range});var Au,DTe,P3,NTe,H8=M(()=>{"use strict";Eu();Au=vn(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()),DTe=Au.range,P3=vn(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()),NTe=P3.range});var ro,RTe,_l,MTe,W8=M(()=>{"use strict";Eu();ro=vn(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());ro.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:vn(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)});RTe=ro.range,_l=vn(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());_l.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:vn(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)});MTe=_l.range});function hW(t,e,r,n,i,a){let s=[[to,1,1e3],[to,5,5*1e3],[to,15,15*1e3],[to,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(Lp(h/31536e6,f/31536e6,d));if(m===0)return yc.every(Math.max(Lp(h,f,d),1));let[g,y]=s[p/s[m-1][2]{"use strict";kh();F8();z8();G8();$8();V8();U8();H8();W8();o(hW,"ticker");[OTe,PTe]=hW(_l,P3,Td,N3,D3,L3),[Y8,q8]=hW(ro,Au,Al,Oo,Cu,Su)});var B3=M(()=>{"use strict";F8();z8();G8();$8();V8();U8();H8();W8();fW()});function X8(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 j8(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 Qy(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}function K8(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=Zy(i),f=Jy(i),d=Zy(a),p=Jy(a),m=Zy(s),g=Jy(s),y=Zy(l),v=Jy(l),x=Zy(u),b=Jy(u),w={a:P,A:F,b:B,B:G,c:null,d:vW,e:vW,f:ake,g:mke,G:yke,H:rke,I:nke,j:ike,L:kW,m:ske,M:oke,p:z,q:W,Q:wW,s:TW,S:lke,u:cke,U:uke,V:hke,w:fke,W:dke,x:null,X:null,y:pke,Y:gke,Z:vke,"%":bW},_={a:Z,A:j,b:oe,B:K,c:null,d:xW,e:xW,f:Tke,g:Rke,G:Ike,H:xke,I:bke,j:wke,L:SW,m:kke,M:Eke,p:ee,q:J,Q:wW,s:TW,S:Ske,u:Cke,U:Ake,V:_ke,w:Lke,W:Dke,x:null,X:null,y:Nke,Y:Mke,Z:Oke,"%":bW},T={a:I,A:D,b:k,B:R,c:C,d:gW,e:gW,f:ZTe,g:mW,G:pW,H:yW,I:yW,j:XTe,L:QTe,m:qTe,M:jTe,p:A,q:YTe,Q:eke,s:tke,S:KTe,u:$Te,U:VTe,V:UTe,w:GTe,W:HTe,x:O,X:N,y:mW,Y:pW,Z:WTe,"%":JTe};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(Q){var ae=[],ue=-1,ce=0,te=H.length,Ne,se,ke;for(Q instanceof Date||(Q=new Date(+Q));++ue53)return null;"w"in ae||(ae.w=1),"Z"in ae?(ce=j8(Qy(ae.y,0,1)),te=ce.getUTCDay(),ce=te>4||te===0?Hp.ceil(ce):Hp(ce),ce=Ky.offset(ce,(ae.V-1)*7),ae.y=ce.getUTCFullYear(),ae.m=ce.getUTCMonth(),ae.d=ce.getUTCDate()+(ae.w+6)%7):(ce=X8(Qy(ae.y,0,1)),te=ce.getDay(),ce=te>4||te===0?Nh.ceil(ce):Nh(ce),ce=Oo.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?j8(Qy(ae.y,0,1)).getUTCDay():X8(Qy(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,j8(ae)):X8(ae)}}o(L,"newParse");function S(H,q,Q,ae){for(var ue=0,ce=q.length,te=Q.length,Ne,se;ue=te)return-1;if(Ne=q.charCodeAt(ue++),Ne===37){if(Ne=q.charAt(ue++),se=T[Ne in dW?q.charAt(ue++):Ne],!se||(ae=se(H,Q,ae))<0)return-1}else if(Ne!=Q.charCodeAt(ae++))return-1}return ae}o(S,"parseSpecifier");function A(H,q,Q){var ae=h.exec(q.slice(Q));return ae?(H.p=f.get(ae[0].toLowerCase()),Q+ae[0].length):-1}o(A,"parsePeriod");function I(H,q,Q){var ae=m.exec(q.slice(Q));return ae?(H.w=g.get(ae[0].toLowerCase()),Q+ae[0].length):-1}o(I,"parseShortWeekday");function D(H,q,Q){var ae=d.exec(q.slice(Q));return ae?(H.w=p.get(ae[0].toLowerCase()),Q+ae[0].length):-1}o(D,"parseWeekday");function k(H,q,Q){var ae=x.exec(q.slice(Q));return ae?(H.m=b.get(ae[0].toLowerCase()),Q+ae[0].length):-1}o(k,"parseShortMonth");function R(H,q,Q){var ae=y.exec(q.slice(Q));return ae?(H.m=v.get(ae[0].toLowerCase()),Q+ae[0].length):-1}o(R,"parseMonth");function C(H,q,Q){return S(H,e,q,Q)}o(C,"parseLocaleDateTime");function O(H,q,Q){return S(H,r,q,Q)}o(O,"parseLocaleDate");function N(H,q,Q){return S(H,n,q,Q)}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 G(H){return l[H.getMonth()]}o(G,"formatMonth");function z(H){return i[+(H.getHours()>=12)]}o(z,"formatPeriod");function W(H){return 1+~~(H.getMonth()/3)}o(W,"formatQuarter");function Z(H){return s[H.getUTCDay()]}o(Z,"formatUTCShortWeekday");function j(H){return a[H.getUTCDay()]}o(j,"formatUTCWeekday");function oe(H){return u[H.getUTCMonth()]}o(oe,"formatUTCShortMonth");function K(H){return l[H.getUTCMonth()]}o(K,"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 GTe(t,e,r){var n=ta.exec(e.slice(r,r+1));return n?(t.w=+n[0],r+n[0].length):-1}function $Te(t,e,r){var n=ta.exec(e.slice(r,r+1));return n?(t.u=+n[0],r+n[0].length):-1}function VTe(t,e,r){var n=ta.exec(e.slice(r,r+2));return n?(t.U=+n[0],r+n[0].length):-1}function UTe(t,e,r){var n=ta.exec(e.slice(r,r+2));return n?(t.V=+n[0],r+n[0].length):-1}function HTe(t,e,r){var n=ta.exec(e.slice(r,r+2));return n?(t.W=+n[0],r+n[0].length):-1}function pW(t,e,r){var n=ta.exec(e.slice(r,r+4));return n?(t.y=+n[0],r+n[0].length):-1}function mW(t,e,r){var n=ta.exec(e.slice(r,r+2));return n?(t.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function WTe(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 YTe(t,e,r){var n=ta.exec(e.slice(r,r+1));return n?(t.q=n[0]*3-3,r+n[0].length):-1}function qTe(t,e,r){var n=ta.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function gW(t,e,r){var n=ta.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function XTe(t,e,r){var n=ta.exec(e.slice(r,r+3));return n?(t.m=0,t.d=+n[0],r+n[0].length):-1}function yW(t,e,r){var n=ta.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function jTe(t,e,r){var n=ta.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function KTe(t,e,r){var n=ta.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function QTe(t,e,r){var n=ta.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function ZTe(t,e,r){var n=ta.exec(e.slice(r,r+6));return n?(t.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function JTe(t,e,r){var n=BTe.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function eke(t,e,r){var n=ta.exec(e.slice(r));return n?(t.Q=+n[0],r+n[0].length):-1}function tke(t,e,r){var n=ta.exec(e.slice(r));return n?(t.s=+n[0],r+n[0].length):-1}function vW(t,e){return Hr(t.getDate(),e,2)}function rke(t,e){return Hr(t.getHours(),e,2)}function nke(t,e){return Hr(t.getHours()%12||12,e,2)}function ike(t,e){return Hr(1+Oo.count(ro(t),t),e,3)}function kW(t,e){return Hr(t.getMilliseconds(),e,3)}function ake(t,e){return kW(t,e)+"000"}function ske(t,e){return Hr(t.getMonth()+1,e,2)}function oke(t,e){return Hr(t.getMinutes(),e,2)}function lke(t,e){return Hr(t.getSeconds(),e,2)}function cke(t){var e=t.getDay();return e===0?7:e}function uke(t,e){return Hr(Al.count(ro(t)-1,t),e,2)}function EW(t){var e=t.getDay();return e>=4||e===0?xc(t):xc.ceil(t)}function hke(t,e){return t=EW(t),Hr(xc.count(ro(t),t)+(ro(t).getDay()===4),e,2)}function fke(t){return t.getDay()}function dke(t,e){return Hr(Nh.count(ro(t)-1,t),e,2)}function pke(t,e){return Hr(t.getFullYear()%100,e,2)}function mke(t,e){return t=EW(t),Hr(t.getFullYear()%100,e,2)}function gke(t,e){return Hr(t.getFullYear()%1e4,e,4)}function yke(t,e){var r=t.getDay();return t=r>=4||r===0?xc(t):xc.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 xW(t,e){return Hr(t.getUTCDate(),e,2)}function xke(t,e){return Hr(t.getUTCHours(),e,2)}function bke(t,e){return Hr(t.getUTCHours()%12||12,e,2)}function wke(t,e){return Hr(1+Ky.count(_l(t),t),e,3)}function SW(t,e){return Hr(t.getUTCMilliseconds(),e,3)}function Tke(t,e){return SW(t,e)+"000"}function kke(t,e){return Hr(t.getUTCMonth()+1,e,2)}function Eke(t,e){return Hr(t.getUTCMinutes(),e,2)}function Ske(t,e){return Hr(t.getUTCSeconds(),e,2)}function Cke(t){var e=t.getUTCDay();return e===0?7:e}function Ake(t,e){return Hr(Td.count(_l(t)-1,t),e,2)}function CW(t){var e=t.getUTCDay();return e>=4||e===0?Rh(t):Rh.ceil(t)}function _ke(t,e){return t=CW(t),Hr(Rh.count(_l(t),t)+(_l(t).getUTCDay()===4),e,2)}function Lke(t){return t.getUTCDay()}function Dke(t,e){return Hr(Hp.count(_l(t)-1,t),e,2)}function Nke(t,e){return Hr(t.getUTCFullYear()%100,e,2)}function Rke(t,e){return t=CW(t),Hr(t.getUTCFullYear()%100,e,2)}function Mke(t,e){return Hr(t.getUTCFullYear()%1e4,e,4)}function Ike(t,e){var r=t.getUTCDay();return t=r>=4||r===0?Rh(t):Rh.ceil(t),Hr(t.getUTCFullYear()%1e4,e,4)}function Oke(){return"+0000"}function bW(){return"%"}function wW(t){return+t}function TW(t){return Math.floor(+t/1e3)}var dW,ta,BTe,FTe,AW=M(()=>{"use strict";B3();o(X8,"localDate");o(j8,"utcDate");o(Qy,"newDate");o(K8,"formatLocale");dW={"-":"",_:" ",0:"0"},ta=/^\s*\d+/,BTe=/^%/,FTe=/[\\^$*+?|[\]().{}]/g;o(Hr,"pad");o(zTe,"requote");o(Zy,"formatRe");o(Jy,"formatLookup");o(GTe,"parseWeekdayNumberSunday");o($Te,"parseWeekdayNumberMonday");o(VTe,"parseWeekNumberSunday");o(UTe,"parseWeekNumberISO");o(HTe,"parseWeekNumberMonday");o(pW,"parseFullYear");o(mW,"parseYear");o(WTe,"parseZone");o(YTe,"parseQuarter");o(qTe,"parseMonthNumber");o(gW,"parseDayOfMonth");o(XTe,"parseDayOfYear");o(yW,"parseHour24");o(jTe,"parseMinutes");o(KTe,"parseSeconds");o(QTe,"parseMilliseconds");o(ZTe,"parseMicroseconds");o(JTe,"parseLiteralPercent");o(eke,"parseUnixTimestamp");o(tke,"parseUnixTimestampSeconds");o(vW,"formatDayOfMonth");o(rke,"formatHour24");o(nke,"formatHour12");o(ike,"formatDayOfYear");o(kW,"formatMilliseconds");o(ake,"formatMicroseconds");o(ske,"formatMonthNumber");o(oke,"formatMinutes");o(lke,"formatSeconds");o(cke,"formatWeekdayNumberMonday");o(uke,"formatWeekNumberSunday");o(EW,"dISO");o(hke,"formatWeekNumberISO");o(fke,"formatWeekdayNumberSunday");o(dke,"formatWeekNumberMonday");o(pke,"formatYear");o(mke,"formatYearISO");o(gke,"formatFullYear");o(yke,"formatFullYearISO");o(vke,"formatZone");o(xW,"formatUTCDayOfMonth");o(xke,"formatUTCHour24");o(bke,"formatUTCHour12");o(wke,"formatUTCDayOfYear");o(SW,"formatUTCMilliseconds");o(Tke,"formatUTCMicroseconds");o(kke,"formatUTCMonthNumber");o(Eke,"formatUTCMinutes");o(Ske,"formatUTCSeconds");o(Cke,"formatUTCWeekdayNumberMonday");o(Ake,"formatUTCWeekNumberSunday");o(CW,"UTCdISO");o(_ke,"formatUTCWeekNumberISO");o(Lke,"formatUTCWeekdayNumberSunday");o(Dke,"formatUTCWeekNumberMonday");o(Nke,"formatUTCYear");o(Rke,"formatUTCYearISO");o(Mke,"formatUTCFullYear");o(Ike,"formatUTCFullYearISO");o(Oke,"formatUTCZone");o(bW,"formatLiteralPercent");o(wW,"formatUnixTimestamp");o(TW,"formatUnixTimestampSeconds")});function Q8(t){return Wp=K8(t),kd=Wp.format,_W=Wp.parse,LW=Wp.utcFormat,DW=Wp.utcParse,Wp}var Wp,kd,_W,LW,DW,NW=M(()=>{"use strict";AW();Q8({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(Q8,"defaultLocale")});var Z8=M(()=>{"use strict";NW()});function Pke(t){return new Date(t)}function Bke(t){return t instanceof Date?+t:+new Date(+t)}function RW(t,e,r,n,i,a,s,l,u,h){var f=Xy(),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";B3();Z8();M8();qy();eW();o(Pke,"date");o(Bke,"number");o(RW,"calendar");o(F3,"time")});var IW=M(()=>{"use strict";XH();JH();L8();MW()});function J8(t){for(var e=t.length/6|0,r=new Array(e),n=0;n{"use strict";o(J8,"default")});var e_,PW=M(()=>{"use strict";OW();e_=J8("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var BW=M(()=>{"use strict";PW()});function Fn(t){return o(function(){return t},"constant")}var z3=M(()=>{"use strict";o(Fn,"default")});function zW(t){return t>1?0:t<-1?Yp:Math.acos(t)}function r_(t){return t>=1?ev:t<=-1?-ev:Math.asin(t)}var t_,ma,Mh,FW,G3,Ll,Ed,ra,Yp,ev,qp,$3=M(()=>{"use strict";t_=Math.abs,ma=Math.atan2,Mh=Math.cos,FW=Math.max,G3=Math.min,Ll=Math.sin,Ed=Math.sqrt,ra=1e-12,Yp=Math.PI,ev=Yp/2,qp=2*Yp;o(zW,"acos");o(r_,"asin")});function V3(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 gd(e)}var n_=M(()=>{"use strict";m8();o(V3,"withPath")});function Fke(t){return t.innerRadius}function zke(t){return t.outerRadius}function Gke(t){return t.startAngle}function $ke(t){return t.endAngle}function Vke(t){return t&&t.padAngle}function Uke(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*pC*C+O*O&&(S=I,A=D),{cx:S,cy:A,x01:-f,y01:-d,x11:S*(i/T-1),y11:A*(i/T-1)}}function Dl(){var t=Fke,e=zke,r=Fn(0),n=null,i=Gke,a=$ke,s=Vke,l=null,u=V3(h);function h(){var f,d,p=+t.apply(this,arguments),m=+e.apply(this,arguments),g=i.apply(this,arguments)-ev,y=a.apply(this,arguments)-ev,v=t_(y-g),x=y>g;if(l||(l=f=u()),mra))l.moveTo(0,0);else if(v>qp-ra)l.moveTo(m*Mh(g),m*Ll(g)),l.arc(0,0,m,g,y,!x),p>ra&&(l.moveTo(p*Mh(y),p*Ll(y)),l.arc(0,0,p,y,g,x));else{var b=g,w=y,_=g,T=y,E=v,L=v,S=s.apply(this,arguments)/2,A=S>ra&&(n?+n.apply(this,arguments):Ed(p*p+m*m)),I=G3(t_(m-p)/2,+r.apply(this,arguments)),D=I,k=I,R,C;if(A>ra){var O=r_(A/p*Ll(S)),N=r_(A/m*Ll(S));(E-=O*2)>ra?(O*=x?1:-1,_+=O,T-=O):(E=0,_=T=(g+y)/2),(L-=N*2)>ra?(N*=x?1:-1,b+=N,w-=N):(L=0,b=w=(g+y)/2)}var P=m*Mh(b),F=m*Ll(b),B=p*Mh(T),G=p*Ll(T);if(I>ra){var z=m*Mh(w),W=m*Ll(w),Z=p*Mh(_),j=p*Ll(_),oe;if(vra?k>ra?(R=U3(Z,j,P,F,m,k,x),C=U3(z,W,B,G,m,k,x),l.moveTo(R.cx+R.x01,R.cy+R.y01),kra)||!(E>ra)?l.lineTo(B,G):D>ra?(R=U3(B,G,z,W,p,-D,x),C=U3(P,F,Z,j,p,-D,x),l.lineTo(R.cx+R.x01,R.cy+R.y01),D{"use strict";z3();$3();n_();o(Fke,"arcInnerRadius");o(zke,"arcOuterRadius");o(Gke,"arcStartAngle");o($ke,"arcEndAngle");o(Vke,"arcPadAngle");o(Uke,"intersect");o(U3,"cornerTangents");o(Dl,"default")});function tv(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}var o2t,i_=M(()=>{"use strict";o2t=Array.prototype.slice;o(tv,"default")});function $W(t){this._context=t}function Xp(t){return new $W(t)}var a_=M(()=>{"use strict";o($W,"Linear");$W.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(Xp,"default")});function VW(t){return t[0]}function UW(t){return t[1]}var HW=M(()=>{"use strict";o(VW,"x");o(UW,"y")});function ns(t,e){var r=Fn(!0),n=null,i=Xp,a=null,s=V3(l);t=typeof t=="function"?t:t===void 0?VW:Fn(t),e=typeof e=="function"?e:e===void 0?UW:Fn(e);function l(u){var h,f=(u=tv(u)).length,d,p=!1,m;for(n==null&&(a=i(m=s())),h=0;h<=f;++h)!(h{"use strict";i_();z3();a_();n_();HW();o(ns,"default")});function s_(t,e){return et?1:e>=t?0:NaN}var YW=M(()=>{"use strict";o(s_,"default")});function o_(t){return t}var qW=M(()=>{"use strict";o(o_,"default")});function H3(){var t=o_,e=s_,r=null,n=Fn(0),i=Fn(qp),a=Fn(0);function s(l){var u,h=(l=tv(l)).length,f,d,p=0,m=new Array(h),g=new Array(h),y=+n.apply(this,arguments),v=Math.min(qp,Math.max(-qp,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:Fn(+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:Fn(+l),s):n},s.endAngle=function(l){return arguments.length?(i=typeof l=="function"?l:Fn(+l),s):i},s.padAngle=function(l){return arguments.length?(a=typeof l=="function"?l:Fn(+l),s):a},s}var XW=M(()=>{"use strict";i_();z3();YW();qW();$3();o(H3,"default")});function l_(t){return new W3(t,!0)}function c_(t){return new W3(t,!1)}var W3,jW=M(()=>{"use strict";W3=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(l_,"bumpX");o(c_,"bumpY")});function no(){}var rv=M(()=>{"use strict";o(no,"default")});function jp(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 nv(t){this._context=t}function Po(t){return new nv(t)}var iv=M(()=>{"use strict";o(jp,"point");o(nv,"Basis");nv.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:jp(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:jp(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(Po,"default")});function KW(t){this._context=t}function Y3(t){return new KW(t)}var QW=M(()=>{"use strict";rv();iv();o(KW,"BasisClosed");KW.prototype={areaStart:no,areaEnd:no,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:jp(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(Y3,"default")});function ZW(t){this._context=t}function q3(t){return new ZW(t)}var JW=M(()=>{"use strict";iv();o(ZW,"BasisOpen");ZW.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:jp(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(q3,"default")});function eY(t,e){this._basis=new nv(t),this._beta=e}var u_,tY=M(()=>{"use strict";iv();o(eY,"Bundle");eY.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")};u_=o(function t(e){function r(n){return e===1?new nv(n):new eY(n,e)}return o(r,"bundle"),r.beta=function(n){return t(+n)},r},"custom")(.85)});function Kp(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 X3(t,e){this._context=t,this._k=(1-e)/6}var h_,av=M(()=>{"use strict";o(Kp,"point");o(X3,"Cardinal");X3.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:Kp(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:Kp(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")};h_=o(function t(e){function r(n){return new X3(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function j3(t,e){this._context=t,this._k=(1-e)/6}var f_,d_=M(()=>{"use strict";rv();av();o(j3,"CardinalClosed");j3.prototype={areaStart:no,areaEnd:no,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:Kp(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 j3(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function K3(t,e){this._context=t,this._k=(1-e)/6}var p_,m_=M(()=>{"use strict";av();o(K3,"CardinalOpen");K3.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:Kp(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")};p_=o(function t(e){function r(n){return new K3(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function sv(t,e,r){var n=t._x1,i=t._y1,a=t._x2,s=t._y2;if(t._l01_a>ra){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>ra){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 rY(t,e){this._context=t,this._alpha=e}var g_,Q3=M(()=>{"use strict";$3();av();o(sv,"point");o(rY,"CatmullRom");rY.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:sv(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 rY(n,e):new X3(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function nY(t,e){this._context=t,this._alpha=e}var y_,iY=M(()=>{"use strict";d_();rv();Q3();o(nY,"CatmullRomClosed");nY.prototype={areaStart:no,areaEnd:no,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:sv(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")};y_=o(function t(e){function r(n){return e?new nY(n,e):new j3(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function aY(t,e){this._context=t,this._alpha=e}var v_,sY=M(()=>{"use strict";m_();Q3();o(aY,"CatmullRomOpen");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(){(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:sv(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")};v_=o(function t(e){function r(n){return e?new aY(n,e):new K3(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function oY(t){this._context=t}function Z3(t){return new oY(t)}var lY=M(()=>{"use strict";rv();o(oY,"LinearClosed");oY.prototype={areaStart:no,areaEnd:no,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(Z3,"default")});function cY(t){return t<0?-1:1}function uY(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(cY(a)+cY(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(l))||0}function hY(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function x_(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 J3(t){this._context=t}function fY(t){this._context=new dY(t)}function dY(t){this._context=t}function b_(t){return new J3(t)}function w_(t){return new fY(t)}var pY=M(()=>{"use strict";o(cY,"sign");o(uY,"slope3");o(hY,"slope2");o(x_,"point");o(J3,"MonotoneX");J3.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:x_(this,this._t0,hY(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,x_(this,hY(this,r=uY(this,t,e)),r);break;default:x_(this,this._t0,r=uY(this,t,e));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=r}},"point")};o(fY,"MonotoneY");(fY.prototype=Object.create(J3.prototype)).point=function(t,e){J3.prototype.point.call(this,e,t)};o(dY,"ReflectContext");dY.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(b_,"monotoneX");o(w_,"monotoneY")});function gY(t){this._context=t}function mY(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(gY,"Natural");gY.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=mY(t),i=mY(e),a=0,s=1;s{"use strict";o(t5,"Step");t5.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(r5,"default");o(T_,"stepBefore");o(k_,"stepAfter")});var xY=M(()=>{"use strict";GW();WW();XW();QW();JW();iv();jW();tY();d_();m_();av();iY();sY();Q3();lY();a_();pY();yY();vY()});var bY=M(()=>{"use strict"});var wY=M(()=>{"use strict"});function Ih(t,e,r){this.k=t,this.x=e,this.y=r}function S_(t){for(;!t.__zoom;)if(!(t=t.parentNode))return E_;return t.__zoom}var E_,C_=M(()=>{"use strict";o(Ih,"Transform");Ih.prototype={constructor:Ih,scale:o(function(t){return t===1?this:new Ih(this.k*t,this.x,this.y)},"scale"),translate:o(function(t,e){return t===0&e===0?this:new Ih(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")};E_=new Ih(1,0,0);S_.prototype=Ih.prototype;o(S_,"transform")});var TY=M(()=>{"use strict"});var kY=M(()=>{"use strict";v3();bY();wY();C_();TY()});var EY=M(()=>{"use strict";kY();C_()});var pr=M(()=>{"use strict";kh();tV();bH();EH();Pp();SH();CH();T7();YV();AH();u8();_H();DH();A8();HH();WH();zp();m8();YH();LH();qH();IW();BW();Tl();xY();B3();Z8();f3();v3();EY()});var SY=Ei(na=>{"use strict";Object.defineProperty(na,"__esModule",{value:!0});na.BLANK_URL=na.relativeFirstCharacters=na.whitespaceEscapeCharsRegex=na.urlSchemeRegex=na.ctrlCharactersRegex=na.htmlCtrlEntityRegex=na.htmlEntitiesRegex=na.invalidProtocolRegex=void 0;na.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;na.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;na.htmlCtrlEntityRegex=/&(newline|tab);/gi;na.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;na.urlSchemeRegex=/^.+(:|:)/gim;na.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;na.relativeFirstCharacters=[".","/"];na.BLANK_URL="about:blank"});var Qp=Ei(n5=>{"use strict";Object.defineProperty(n5,"__esModule",{value:!0});n5.sanitizeUrl=void 0;var Ra=SY();function Hke(t){return Ra.relativeFirstCharacters.indexOf(t[0])>-1}o(Hke,"isRelativeUrlWithoutProtocol");function Wke(t){var e=t.replace(Ra.ctrlCharactersRegex,"");return e.replace(Ra.htmlEntitiesRegex,function(r,n){return String.fromCharCode(n)})}o(Wke,"decodeHtmlCharacters");function Yke(t){return URL.canParse(t)}o(Yke,"isValidUrl");function CY(t){try{return decodeURIComponent(t)}catch{return t}}o(CY,"decodeURI");function qke(t){if(!t)return Ra.BLANK_URL;var e,r=CY(t.trim());do r=Wke(r).replace(Ra.htmlCtrlEntityRegex,"").replace(Ra.ctrlCharactersRegex,"").replace(Ra.whitespaceEscapeCharsRegex,"").trim(),r=CY(r),e=r.match(Ra.ctrlCharactersRegex)||r.match(Ra.htmlEntitiesRegex)||r.match(Ra.htmlCtrlEntityRegex)||r.match(Ra.whitespaceEscapeCharsRegex);while(e&&e.length>0);var n=r;if(!n)return Ra.BLANK_URL;if(Hke(n))return n;var i=n.trimStart(),a=i.match(Ra.urlSchemeRegex);if(!a)return n;var s=a[0].toLowerCase().trim();if(Ra.invalidProtocolRegex.test(s))return Ra.BLANK_URL;var l=i.replace(/\\/g,"/");if(s==="mailto:"||s.includes("://"))return l;if(s==="http:"||s==="https:"){if(!Yke(l))return Ra.BLANK_URL;var u=new URL(l);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return l}o(qke,"sanitizeUrl");n5.sanitizeUrl=qke});var A_,Sd,i5,AY,_Y,LY,Nl,ov,lv=M(()=>{"use strict";A_=Ji(Qp(),1);fr();Sd=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"),i5=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"};Sd(t,r).lower()},"drawBackgroundRect"),AY=o((t,e)=>{let r=e.text.replace(ad," "),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"),_Y=o((t,e,r,n)=>{let i=t.append("image");i.attr("x",e),i.attr("y",r);let a=(0,A_.sanitizeUrl)(n);i.attr("xlink:href",a)},"drawImage"),LY=o((t,e,r,n)=>{let i=t.append("use");i.attr("x",e),i.attr("y",r);let a=(0,A_.sanitizeUrl)(n);i.attr("xlink:href",`#${a}`)},"drawEmbeddedImage"),Nl=o(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),ov=o(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj")});var DY,__,NY,Xke,jke,Kke,Qke,Zke,Jke,eEe,tEe,rEe,nEe,iEe,aEe,_u,Rl,RY=M(()=>{"use strict";fr();lv();DY=Ji(Qp(),1),__=o(function(t,e){return Sd(t,e)},"drawRect"),NY=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,DY.sanitizeUrl)(a);s.attr("xlink:href",l)},"drawImage"),Xke=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();_u(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(),_u(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"),jke=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};__(n,u);let h=r.boundaryFont();h.fontWeight="bold",h.fontSize=h.fontSize+2,h.fontColor=s,_u(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,_u(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,_u(r)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},h))},"drawBoundary"),Kke=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=Nl();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},__(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=aEe(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":NY(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,_u(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!==""?_u(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!==""&&_u(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,_u(r)(e.descr.text,l,e.x,e.y+e.descr.Y,e.width,e.height,{fill:a},f)),e.height},"drawC4Shape"),Qke=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"),Zke=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"),Jke=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"),tEe=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"),rEe=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"),nEe=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"),iEe=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"),aEe=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"getC4ShapeFont"),_u=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(qe.lineBreakRegex);for(let v=0;v{"use strict";sEe=typeof global=="object"&&global&&global.Object===Object&&global,s5=sEe});var oEe,lEe,oi,Bo=M(()=>{"use strict";L_();oEe=typeof self=="object"&&self&&self.Object===Object&&self,lEe=s5||oEe||Function("return this")(),oi=lEe});var cEe,ia,Cd=M(()=>{"use strict";Bo();cEe=oi.Symbol,ia=cEe});function fEe(t){var e=uEe.call(t,cv),r=t[cv];try{t[cv]=void 0;var n=!0}catch{}var i=hEe.call(t);return n&&(e?t[cv]=r:delete t[cv]),i}var MY,uEe,hEe,cv,IY,OY=M(()=>{"use strict";Cd();MY=Object.prototype,uEe=MY.hasOwnProperty,hEe=MY.toString,cv=ia?ia.toStringTag:void 0;o(fEe,"getRawTag");IY=fEe});function mEe(t){return pEe.call(t)}var dEe,pEe,PY,BY=M(()=>{"use strict";dEe=Object.prototype,pEe=dEe.toString;o(mEe,"objectToString");PY=mEe});function vEe(t){return t==null?t===void 0?yEe:gEe:FY&&FY in Object(t)?IY(t):PY(t)}var gEe,yEe,FY,ga,Lu=M(()=>{"use strict";Cd();OY();BY();gEe="[object Null]",yEe="[object Undefined]",FY=ia?ia.toStringTag:void 0;o(vEe,"baseGetTag");ga=vEe});function xEe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var xn,io=M(()=>{"use strict";o(xEe,"isObject");xn=xEe});function EEe(t){if(!xn(t))return!1;var e=ga(t);return e==wEe||e==TEe||e==bEe||e==kEe}var bEe,wEe,TEe,kEe,_i,uv=M(()=>{"use strict";Lu();io();bEe="[object AsyncFunction]",wEe="[object Function]",TEe="[object GeneratorFunction]",kEe="[object Proxy]";o(EEe,"isFunction");_i=EEe});var SEe,o5,zY=M(()=>{"use strict";Bo();SEe=oi["__core-js_shared__"],o5=SEe});function CEe(t){return!!GY&&GY in t}var GY,$Y,VY=M(()=>{"use strict";zY();GY=function(){var t=/[^.]+$/.exec(o5&&o5.keys&&o5.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();o(CEe,"isMasked");$Y=CEe});function LEe(t){if(t!=null){try{return _Ee.call(t)}catch{}try{return t+""}catch{}}return""}var AEe,_Ee,Du,D_=M(()=>{"use strict";AEe=Function.prototype,_Ee=AEe.toString;o(LEe,"toSource");Du=LEe});function BEe(t){if(!xn(t)||$Y(t))return!1;var e=_i(t)?PEe:NEe;return e.test(Du(t))}var DEe,NEe,REe,MEe,IEe,OEe,PEe,UY,HY=M(()=>{"use strict";uv();VY();io();D_();DEe=/[\\^$.*+?()[\]{}|]/g,NEe=/^\[object .+?Constructor\]$/,REe=Function.prototype,MEe=Object.prototype,IEe=REe.toString,OEe=MEe.hasOwnProperty,PEe=RegExp("^"+IEe.call(OEe).replace(DEe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");o(BEe,"baseIsNative");UY=BEe});function FEe(t,e){return t?.[e]}var WY,YY=M(()=>{"use strict";o(FEe,"getValue");WY=FEe});function zEe(t,e){var r=WY(t,e);return UY(r)?r:void 0}var As,Oh=M(()=>{"use strict";HY();YY();o(zEe,"getNative");As=zEe});var GEe,Nu,hv=M(()=>{"use strict";Oh();GEe=As(Object,"create"),Nu=GEe});function $Ee(){this.__data__=Nu?Nu(null):{},this.size=0}var qY,XY=M(()=>{"use strict";hv();o($Ee,"hashClear");qY=$Ee});function VEe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var jY,KY=M(()=>{"use strict";o(VEe,"hashDelete");jY=VEe});function YEe(t){var e=this.__data__;if(Nu){var r=e[t];return r===UEe?void 0:r}return WEe.call(e,t)?e[t]:void 0}var UEe,HEe,WEe,QY,ZY=M(()=>{"use strict";hv();UEe="__lodash_hash_undefined__",HEe=Object.prototype,WEe=HEe.hasOwnProperty;o(YEe,"hashGet");QY=YEe});function jEe(t){var e=this.__data__;return Nu?e[t]!==void 0:XEe.call(e,t)}var qEe,XEe,JY,eq=M(()=>{"use strict";hv();qEe=Object.prototype,XEe=qEe.hasOwnProperty;o(jEe,"hashHas");JY=jEe});function QEe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Nu&&e===void 0?KEe:e,this}var KEe,tq,rq=M(()=>{"use strict";hv();KEe="__lodash_hash_undefined__";o(QEe,"hashSet");tq=QEe});function Zp(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";XY();KY();ZY();eq();rq();o(Zp,"Hash");Zp.prototype.clear=qY;Zp.prototype.delete=jY;Zp.prototype.get=QY;Zp.prototype.has=JY;Zp.prototype.set=tq;N_=Zp});function ZEe(){this.__data__=[],this.size=0}var iq,aq=M(()=>{"use strict";o(ZEe,"listCacheClear");iq=ZEe});function JEe(t,e){return t===e||t!==t&&e!==e}var Fo,Ad=M(()=>{"use strict";o(JEe,"eq");Fo=JEe});function e6e(t,e){for(var r=t.length;r--;)if(Fo(t[r][0],e))return r;return-1}var Ph,fv=M(()=>{"use strict";Ad();o(e6e,"assocIndexOf");Ph=e6e});function n6e(t){var e=this.__data__,r=Ph(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():r6e.call(e,r,1),--this.size,!0}var t6e,r6e,sq,oq=M(()=>{"use strict";fv();t6e=Array.prototype,r6e=t6e.splice;o(n6e,"listCacheDelete");sq=n6e});function i6e(t){var e=this.__data__,r=Ph(e,t);return r<0?void 0:e[r][1]}var lq,cq=M(()=>{"use strict";fv();o(i6e,"listCacheGet");lq=i6e});function a6e(t){return Ph(this.__data__,t)>-1}var uq,hq=M(()=>{"use strict";fv();o(a6e,"listCacheHas");uq=a6e});function s6e(t,e){var r=this.__data__,n=Ph(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var fq,dq=M(()=>{"use strict";fv();o(s6e,"listCacheSet");fq=s6e});function Jp(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";aq();oq();cq();hq();dq();o(Jp,"ListCache");Jp.prototype.clear=iq;Jp.prototype.delete=sq;Jp.prototype.get=lq;Jp.prototype.has=uq;Jp.prototype.set=fq;Bh=Jp});var o6e,Fh,l5=M(()=>{"use strict";Oh();Bo();o6e=As(oi,"Map"),Fh=o6e});function l6e(){this.size=0,this.__data__={hash:new N_,map:new(Fh||Bh),string:new N_}}var pq,mq=M(()=>{"use strict";nq();dv();l5();o(l6e,"mapCacheClear");pq=l6e});function c6e(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var gq,yq=M(()=>{"use strict";o(c6e,"isKeyable");gq=c6e});function u6e(t,e){var r=t.__data__;return gq(e)?r[typeof e=="string"?"string":"hash"]:r.map}var zh,pv=M(()=>{"use strict";yq();o(u6e,"getMapData");zh=u6e});function h6e(t){var e=zh(this,t).delete(t);return this.size-=e?1:0,e}var vq,xq=M(()=>{"use strict";pv();o(h6e,"mapCacheDelete");vq=h6e});function f6e(t){return zh(this,t).get(t)}var bq,wq=M(()=>{"use strict";pv();o(f6e,"mapCacheGet");bq=f6e});function d6e(t){return zh(this,t).has(t)}var Tq,kq=M(()=>{"use strict";pv();o(d6e,"mapCacheHas");Tq=d6e});function p6e(t,e){var r=zh(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}var Eq,Sq=M(()=>{"use strict";pv();o(p6e,"mapCacheSet");Eq=p6e});function em(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{"use strict";mq();xq();wq();kq();Sq();o(em,"MapCache");em.prototype.clear=pq;em.prototype.delete=vq;em.prototype.get=bq;em.prototype.has=Tq;em.prototype.set=Eq;_d=em});function R_(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(m6e);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(R_.Cache||_d),r}var m6e,tm,M_=M(()=>{"use strict";c5();m6e="Expected a function";o(R_,"memoize");R_.Cache=_d;tm=R_});function g6e(){this.__data__=new Bh,this.size=0}var Cq,Aq=M(()=>{"use strict";dv();o(g6e,"stackClear");Cq=g6e});function y6e(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var _q,Lq=M(()=>{"use strict";o(y6e,"stackDelete");_q=y6e});function v6e(t){return this.__data__.get(t)}var Dq,Nq=M(()=>{"use strict";o(v6e,"stackGet");Dq=v6e});function x6e(t){return this.__data__.has(t)}var Rq,Mq=M(()=>{"use strict";o(x6e,"stackHas");Rq=x6e});function w6e(t,e){var r=this.__data__;if(r instanceof Bh){var n=r.__data__;if(!Fh||n.length{"use strict";dv();l5();c5();b6e=200;o(w6e,"stackSet");Iq=w6e});function rm(t){var e=this.__data__=new Bh(t);this.size=e.size}var bc,mv=M(()=>{"use strict";dv();Aq();Lq();Nq();Mq();Oq();o(rm,"Stack");rm.prototype.clear=Cq;rm.prototype.delete=_q;rm.prototype.get=Dq;rm.prototype.has=Rq;rm.prototype.set=Iq;bc=rm});var T6e,nm,I_=M(()=>{"use strict";Oh();T6e=function(){try{var t=As(Object,"defineProperty");return t({},"",{}),t}catch{}}(),nm=T6e});function k6e(t,e,r){e=="__proto__"&&nm?nm(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var wc,im=M(()=>{"use strict";I_();o(k6e,"baseAssignValue");wc=k6e});function E6e(t,e,r){(r!==void 0&&!Fo(t[e],r)||r===void 0&&!(e in t))&&wc(t,e,r)}var gv,O_=M(()=>{"use strict";im();Ad();o(E6e,"assignMergeValue");gv=E6e});function S6e(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 Pq,Bq=M(()=>{"use strict";o(S6e,"createBaseFor");Pq=S6e});var C6e,am,u5=M(()=>{"use strict";Bq();C6e=Pq(),am=C6e});function _6e(t,e){if(e)return t.slice();var r=t.length,n=Gq?Gq(r):new t.constructor(r);return t.copy(n),n}var $q,Fq,A6e,zq,Gq,h5,P_=M(()=>{"use strict";Bo();$q=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Fq=$q&&typeof module=="object"&&module&&!module.nodeType&&module,A6e=Fq&&Fq.exports===$q,zq=A6e?oi.Buffer:void 0,Gq=zq?zq.allocUnsafe:void 0;o(_6e,"cloneBuffer");h5=_6e});var L6e,sm,B_=M(()=>{"use strict";Bo();L6e=oi.Uint8Array,sm=L6e});function D6e(t){var e=new t.constructor(t.byteLength);return new sm(e).set(new sm(t)),e}var om,f5=M(()=>{"use strict";B_();o(D6e,"cloneArrayBuffer");om=D6e});function N6e(t,e){var r=e?om(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var d5,F_=M(()=>{"use strict";f5();o(N6e,"cloneTypedArray");d5=N6e});function R6e(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r{"use strict";o(R6e,"copyArray");p5=R6e});var Vq,M6e,Uq,Hq=M(()=>{"use strict";io();Vq=Object.create,M6e=function(){function t(){}return o(t,"object"),function(e){if(!xn(e))return{};if(Vq)return Vq(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}(),Uq=M6e});function I6e(t,e){return function(r){return t(e(r))}}var m5,G_=M(()=>{"use strict";o(I6e,"overArg");m5=I6e});var O6e,lm,g5=M(()=>{"use strict";G_();O6e=m5(Object.getPrototypeOf,Object),lm=O6e});function B6e(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||P6e;return t===r}var P6e,Tc,cm=M(()=>{"use strict";P6e=Object.prototype;o(B6e,"isPrototype");Tc=B6e});function F6e(t){return typeof t.constructor=="function"&&!Tc(t)?Uq(lm(t)):{}}var y5,$_=M(()=>{"use strict";Hq();g5();cm();o(F6e,"initCloneObject");y5=F6e});function z6e(t){return t!=null&&typeof t=="object"}var ei,zo=M(()=>{"use strict";o(z6e,"isObjectLike");ei=z6e});function $6e(t){return ei(t)&&ga(t)==G6e}var G6e,V_,Wq=M(()=>{"use strict";Lu();zo();G6e="[object Arguments]";o($6e,"baseIsArguments");V_=$6e});var Yq,V6e,U6e,H6e,Ml,um=M(()=>{"use strict";Wq();zo();Yq=Object.prototype,V6e=Yq.hasOwnProperty,U6e=Yq.propertyIsEnumerable,H6e=V_(function(){return arguments}())?V_:function(t){return ei(t)&&V6e.call(t,"callee")&&!U6e.call(t,"callee")},Ml=H6e});var W6e,Dt,Hn=M(()=>{"use strict";W6e=Array.isArray,Dt=W6e});function q6e(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Y6e}var Y6e,hm,v5=M(()=>{"use strict";Y6e=9007199254740991;o(q6e,"isLength");hm=q6e});function X6e(t){return t!=null&&hm(t.length)&&!_i(t)}var li,Go=M(()=>{"use strict";uv();v5();o(X6e,"isArrayLike");li=X6e});function j6e(t){return ei(t)&&li(t)}var Ld,x5=M(()=>{"use strict";Go();zo();o(j6e,"isArrayLikeObject");Ld=j6e});function K6e(){return!1}var qq,Xq=M(()=>{"use strict";o(K6e,"stubFalse");qq=K6e});var Qq,jq,Q6e,Kq,Z6e,J6e,Il,fm=M(()=>{"use strict";Bo();Xq();Qq=typeof exports=="object"&&exports&&!exports.nodeType&&exports,jq=Qq&&typeof module=="object"&&module&&!module.nodeType&&module,Q6e=jq&&jq.exports===Qq,Kq=Q6e?oi.Buffer:void 0,Z6e=Kq?Kq.isBuffer:void 0,J6e=Z6e||qq,Il=J6e});function aSe(t){if(!ei(t)||ga(t)!=eSe)return!1;var e=lm(t);if(e===null)return!0;var r=nSe.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&Zq.call(r)==iSe}var eSe,tSe,rSe,Zq,nSe,iSe,Jq,eX=M(()=>{"use strict";Lu();g5();zo();eSe="[object Object]",tSe=Function.prototype,rSe=Object.prototype,Zq=tSe.toString,nSe=rSe.hasOwnProperty,iSe=Zq.call(Object);o(aSe,"isPlainObject");Jq=aSe});function DSe(t){return ei(t)&&hm(t.length)&&!!zn[ga(t)]}var sSe,oSe,lSe,cSe,uSe,hSe,fSe,dSe,pSe,mSe,gSe,ySe,vSe,xSe,bSe,wSe,TSe,kSe,ESe,SSe,CSe,ASe,_Se,LSe,zn,tX,rX=M(()=>{"use strict";Lu();v5();zo();sSe="[object Arguments]",oSe="[object Array]",lSe="[object Boolean]",cSe="[object Date]",uSe="[object Error]",hSe="[object Function]",fSe="[object Map]",dSe="[object Number]",pSe="[object Object]",mSe="[object RegExp]",gSe="[object Set]",ySe="[object String]",vSe="[object WeakMap]",xSe="[object ArrayBuffer]",bSe="[object DataView]",wSe="[object Float32Array]",TSe="[object Float64Array]",kSe="[object Int8Array]",ESe="[object Int16Array]",SSe="[object Int32Array]",CSe="[object Uint8Array]",ASe="[object Uint8ClampedArray]",_Se="[object Uint16Array]",LSe="[object Uint32Array]",zn={};zn[wSe]=zn[TSe]=zn[kSe]=zn[ESe]=zn[SSe]=zn[CSe]=zn[ASe]=zn[_Se]=zn[LSe]=!0;zn[sSe]=zn[oSe]=zn[xSe]=zn[lSe]=zn[bSe]=zn[cSe]=zn[uSe]=zn[hSe]=zn[fSe]=zn[dSe]=zn[pSe]=zn[mSe]=zn[gSe]=zn[ySe]=zn[vSe]=!1;o(DSe,"baseIsTypedArray");tX=DSe});function NSe(t){return function(e){return t(e)}}var $o,Dd=M(()=>{"use strict";o(NSe,"baseUnary");$o=NSe});var nX,yv,RSe,U_,MSe,Vo,vv=M(()=>{"use strict";L_();nX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,yv=nX&&typeof module=="object"&&module&&!module.nodeType&&module,RSe=yv&&yv.exports===nX,U_=RSe&&s5.process,MSe=function(){try{var t=yv&&yv.require&&yv.require("util").types;return t||U_&&U_.binding&&U_.binding("util")}catch{}}(),Vo=MSe});var iX,ISe,Gh,xv=M(()=>{"use strict";rX();Dd();vv();iX=Vo&&Vo.isTypedArray,ISe=iX?$o(iX):tX,Gh=ISe});function OSe(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}var bv,H_=M(()=>{"use strict";o(OSe,"safeGet");bv=OSe});function FSe(t,e,r){var n=t[e];(!(BSe.call(t,e)&&Fo(n,r))||r===void 0&&!(e in t))&&wc(t,e,r)}var PSe,BSe,kc,dm=M(()=>{"use strict";im();Ad();PSe=Object.prototype,BSe=PSe.hasOwnProperty;o(FSe,"assignValue");kc=FSe});function zSe(t,e,r,n){var i=!r;r||(r={});for(var a=-1,s=e.length;++a{"use strict";dm();im();o(zSe,"copyObject");Uo=zSe});function GSe(t,e){for(var r=-1,n=Array(t);++r{"use strict";o(GSe,"baseTimes");aX=GSe});function USe(t,e){var r=typeof t;return e=e??$Se,!!e&&(r=="number"||r!="symbol"&&VSe.test(t))&&t>-1&&t%1==0&&t{"use strict";$Se=9007199254740991,VSe=/^(?:0|[1-9]\d*)$/;o(USe,"isIndex");$h=USe});function YSe(t,e){var r=Dt(t),n=!r&&Ml(t),i=!r&&!n&&Il(t),a=!r&&!n&&!i&&Gh(t),s=r||n||i||a,l=s?aX(t.length,String):[],u=l.length;for(var h in t)(e||WSe.call(t,h))&&!(s&&(h=="length"||i&&(h=="offset"||h=="parent")||a&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||$h(h,u)))&&l.push(h);return l}var HSe,WSe,b5,W_=M(()=>{"use strict";sX();um();Hn();fm();wv();xv();HSe=Object.prototype,WSe=HSe.hasOwnProperty;o(YSe,"arrayLikeKeys");b5=YSe});function qSe(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}var oX,lX=M(()=>{"use strict";o(qSe,"nativeKeysIn");oX=qSe});function KSe(t){if(!xn(t))return oX(t);var e=Tc(t),r=[];for(var n in t)n=="constructor"&&(e||!jSe.call(t,n))||r.push(n);return r}var XSe,jSe,cX,uX=M(()=>{"use strict";io();cm();lX();XSe=Object.prototype,jSe=XSe.hasOwnProperty;o(KSe,"baseKeysIn");cX=KSe});function QSe(t){return li(t)?b5(t,!0):cX(t)}var _s,Vh=M(()=>{"use strict";W_();uX();Go();o(QSe,"keysIn");_s=QSe});function ZSe(t){return Uo(t,_s(t))}var hX,fX=M(()=>{"use strict";Nd();Vh();o(ZSe,"toPlainObject");hX=ZSe});function JSe(t,e,r,n,i,a,s){var l=bv(t,r),u=bv(e,r),h=s.get(u);if(h){gv(t,r,h);return}var f=a?a(l,u,r+"",t,e,s):void 0,d=f===void 0;if(d){var p=Dt(u),m=!p&&Il(u),g=!p&&!m&&Gh(u);f=u,p||m||g?Dt(l)?f=l:Ld(l)?f=p5(l):m?(d=!1,f=h5(u,!0)):g?(d=!1,f=d5(u,!0)):f=[]:Jq(u)||Ml(u)?(f=l,Ml(l)?f=hX(l):(!xn(l)||_i(l))&&(f=y5(u))):d=!1}d&&(s.set(u,f),i(f,u,n,a,s),s.delete(u)),gv(t,r,f)}var dX,pX=M(()=>{"use strict";O_();P_();F_();z_();$_();um();Hn();x5();fm();uv();io();eX();xv();H_();fX();o(JSe,"baseMergeDeep");dX=JSe});function mX(t,e,r,n,i){t!==e&&am(e,function(a,s){if(i||(i=new bc),xn(a))dX(t,e,s,r,mX,n,i);else{var l=n?n(bv(t,s),a,s+"",t,e,i):void 0;l===void 0&&(l=a),gv(t,s,l)}},_s)}var gX,yX=M(()=>{"use strict";mv();O_();u5();pX();io();Vh();H_();o(mX,"baseMerge");gX=mX});function eCe(t){return t}var aa,Ru=M(()=>{"use strict";o(eCe,"identity");aa=eCe});function tCe(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 vX,xX=M(()=>{"use strict";o(tCe,"apply");vX=tCe});function rCe(t,e,r){return e=bX(e===void 0?t.length-1:e,0),function(){for(var n=arguments,i=-1,a=bX(n.length-e,0),s=Array(a);++i{"use strict";xX();bX=Math.max;o(rCe,"overRest");w5=rCe});function nCe(t){return function(){return t}}var Ls,q_=M(()=>{"use strict";o(nCe,"constant");Ls=nCe});var iCe,wX,TX=M(()=>{"use strict";q_();I_();Ru();iCe=nm?function(t,e){return nm(t,"toString",{configurable:!0,enumerable:!1,value:Ls(e),writable:!0})}:aa,wX=iCe});function lCe(t){var e=0,r=0;return function(){var n=oCe(),i=sCe-(n-r);if(r=n,i>0){if(++e>=aCe)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var aCe,sCe,oCe,kX,EX=M(()=>{"use strict";aCe=800,sCe=16,oCe=Date.now;o(lCe,"shortOut");kX=lCe});var cCe,T5,X_=M(()=>{"use strict";TX();EX();cCe=kX(wX),T5=cCe});function uCe(t,e){return T5(w5(t,e,aa),t+"")}var Ec,pm=M(()=>{"use strict";Ru();Y_();X_();o(uCe,"baseRest");Ec=uCe});function hCe(t,e,r){if(!xn(r))return!1;var n=typeof e;return(n=="number"?li(r)&&$h(e,r.length):n=="string"&&e in r)?Fo(r[e],t):!1}var ao,Rd=M(()=>{"use strict";Ad();Go();wv();io();o(hCe,"isIterateeCall");ao=hCe});function fCe(t){return Ec(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&&ao(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);++n{"use strict";pm();Rd();o(fCe,"createAssigner");k5=fCe});var dCe,Uh,K_=M(()=>{"use strict";yX();j_();dCe=k5(function(t,e,r){gX(t,e,r)}),Uh=dCe});function J_(t,e){if(!t)return e;let r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return pCe[r]??e}function vCe(t,e){let r=t.trim();if(r)return e.securityLevel!=="loose"?(0,AX.sanitizeUrl)(r):r}function DX(t,e){return!t||!e?0:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function bCe(t){let e,r=0;t.forEach(i=>{r+=DX(i,e),e=i});let n=r/2;return e9(t,n)}function wCe(t){return t.length===1?t[0]:bCe(t)}function kCe(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=e9(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 t9(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 ECe(t){let e="",r="0123456789abcdef",n=r.length;for(let i=0;i{"use strict";AX=Ji(Qp(),1);pr();fr();nC();ut();Zf();gp();M_();K_();Qb();Z_="\u200B",pCe={curveBasis:Po,curveBasisClosed:Y3,curveBasisOpen:q3,curveBumpX:l_,curveBumpY:c_,curveBundle:u_,curveCardinalClosed:f_,curveCardinalOpen:p_,curveCardinal:h_,curveCatmullRomClosed:y_,curveCatmullRomOpen:v_,curveCatmullRom:g_,curveLinear:Xp,curveLinearClosed:Z3,curveMonotoneX:b_,curveMonotoneY:w_,curveNatural:e5,curveStep:r5,curveStepAfter:k_,curveStepBefore:T_},mCe=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,gCe=o(function(t,e){let r=_X(t,/(?:init\b)|(?:initialize\b)/),n={};if(Array.isArray(r)){let s=r.map(l=>l.args);xp(s),n=Vn(n,[...s])}else n=r.args;if(!n)return;let i=mp(t,e),a="config";return n[a]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[a],delete n[a]),n},"detectInit"),_X=o(function(t,e=null){try{let r=new RegExp(`[%]{2}(?![{]${mCe.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=Kf.exec(t))!==null;)if(n.index===Kf.lastIndex&&Kf.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"),LX=o(function(t){return t.replace(Kf,"")},"removeDirectives"),yCe=o(function(t,e){for(let[r,n]of e.entries())if(n.match(t))return r;return-1},"isSubstringInArray");o(J_,"interpolateToCurve");o(vCe,"formatUrl");xCe=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"),e9=o((t,e)=>{let r,n=e;for(let i of t){if(r){let a=DX(i,r);if(a=1)return{x:i.x,y:i.y};if(s>0&&s<1)return{x:SX((1-s)*r.x+s*i.x,5),y:SX((1-s)*r.y+s*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),TCe=o((t,e,r)=>{Y.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());let i=e9(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(kCe,"calcTerminalLabelPosition");o(t9,"getStylesFromArray");CX=0,r9=o(()=>(CX++,"id-"+Math.random().toString(36).substr(2,12)+"-"+CX),"generateId");o(ECe,"makeRandomHex");n9=o(t=>ECe(t.length),"random"),SCe=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"),CCe=o(function(t,e){let r=e.text.replace(qe.lineBreakRegex," "),[,n]=Ho(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"),i9=tm((t,e,r)=>{if(!t||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),qe.lineBreakRegex.test(t)))return t;let n=t.split(" ").filter(Boolean),i=[],a="";return n.forEach((s,l)=>{let u=so(`${s} `,r),h=so(a,r);if(u>e){let{hyphenatedStrings:p,remainingWord:m}=ACe(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}`),ACe=tm((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(so(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(S5,"calculateTextHeight");o(so,"calculateTextWidth");a9=tm((t,e)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=e;if(!t)return{width:0,height:0};let[,a]=Ho(r),s=["sans-serif",n],l=t.split(qe.lineBreakRegex),u=[],h=Ve("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=SCe();v.text=y||Z_;let x=CCe(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}`),Q_=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")}},_Ce=o(function(t){return E5=E5||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),E5.innerHTML=t,unescape(E5.textContent)},"entityDecode");o(s9,"isDetailedError");LCe=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"),Ho=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(Ds,"cleanAndMerge");Ut={assignWithDepth:Vn,wrapLabel:i9,calculateTextHeight:S5,calculateTextWidth:so,calculateTextDimensions:a9,cleanAndMerge:Ds,detectInit:gCe,detectDirective:_X,isSubstringInArray:yCe,interpolateToCurve:J_,calcLabelPosition:wCe,calcCardinalityPosition:TCe,calcTerminalLabelPosition:kCe,formatUrl:vCe,getStylesFromArray:t9,generateId:r9,random:n9,runFunc:xCe,entityDecode:_Ce,insertTitle:LCe,parseFontSize:Ho,InitIDGenerator:Q_},NX=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"),Ma=o(function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),C5=o((t,e,{counter:r=0,prefix:n,suffix:i})=>`${n?`${n}_`:""}${t}_${e}_${r}${i?`_${i}`:""}`,"getEdgeId");o(Gn,"handleUndefinedAttr")});function Ol(t,e,r,n,i){if(!e[t].width)if(r)e[t].text=i9(e[t].text,i,n),e[t].textLines=e[t].text.split(qe.lineBreakRegex).length,e[t].width=i,e[t].height=S5(e[t].text,n);else{let a=e[t].text.split(qe.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(so(l,n),e[t].width),s=S5(l,n),e[t].height=e[t].height+s}}function PX(t,e,r,n,i){let a=new D5(i);a.data.widthLimit=r.data.widthLimit/Math.min(o9,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=A5(Gt);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Ol("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=A5(Gt);Ol("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=A5(Gt);g.fontSize=g.fontSize-2,Ol("descr",l,h,g,a.data.widthLimit),l.descr.Y=u+20,u=l.descr.Y+l.descr.height}if(s==0||s%o9===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&&OX(a,t,d,p),e=l.alias;let m=i.db.getBoundarys(e);m.length>0&&PX(t,e,a,m,i),l.alias!=="global"&&IX(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),_5=Math.max(_5,r.data.stopx),L5=Math.max(L5,r.data.stopy)}}var _5,L5,MX,o9,Gt,D5,l9,Tv,A5,DCe,IX,OX,Ns,RX,NCe,RCe,MCe,c9,BX=M(()=>{"use strict";pr();RY();ut();US();fr();u7();Vt();gp();hr();ai();_5=0,L5=0,MX=4,o9=2;ey.yy=Ty;Gt={},D5=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,l9(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>MX)&&(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},l9(e.db.getConfig())}bumpLastMargin(e){this.data.stopx+=e,this.data.stopy+=e}},l9=o(function(t){Vn(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"),Tv=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"c4ShapeFont"),A5=o(t=>({fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight}),"boundaryFont"),DCe=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont");o(Ol,"calcC4ShapeTextWH");IX=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=A5(Gt);i.fontSize=i.fontSize+2,i.fontWeight="bold";let a=so(e.label.text,i);Ol("label",e,n,i,a),Rl.drawBoundary(t,e,Gt)},"drawBoundary"),OX=o(function(t,e,r,n){let i=0;for(let a of n){i=0;let s=r[a],l=Tv(Gt,s.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,s.typeC4Shape.width=so("\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=Tv(Gt,s.typeC4Shape.text);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Ol("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=Tv(Gt,s.typeC4Shape.text);Ol("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=Tv(Gt,s.techn.text);Ol("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=Tv(Gt,s.typeC4Shape.text);Ol("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),Rl.drawC4Shape(e,s,Gt)}t.bumpLastMargin(Gt.c4ShapeMargin)},"drawC4ShapeArray"),Ns=class{static{o(this,"Point")}constructor(e,r){this.x=e,this.y=r}},RX=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 Ns(r,l):r==i&&na&&(p=new Ns(s,n)),r>i&&n=f?p=new Ns(r,l+f*t.width/2):p=new Ns(s-u/h*t.height/2,n+t.height):r=f?p=new Ns(r+t.width,l+f*t.width/2):p=new Ns(s+u/h*t.height/2,n+t.height):ra?d>=f?p=new Ns(r+t.width,l-f*t.width/2):p=new Ns(s+t.height/2*u/h,n):r>i&&n>a&&(d>=f?p=new Ns(r,l-t.width/2*f):p=new Ns(s-t.height/2*u/h,n)),p},"getIntersectPoint"),NCe=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=RX(t,r);r.x=t.x+t.width/2,r.y=t.y+t.height/2;let i=RX(e,r);return{startPoint:n,endPoint:i}},"getIntersectPoints"),RCe=o(function(t,e,r,n){let i=0;for(let a of e){i=i+1;let s=a.wrap&&Gt.wrap,l=DCe(Gt);n.db.getC4Type()==="C4Dynamic"&&(a.label.text=i+": "+a.label.text);let h=so(a.label.text,l);Ol("label",a,s,l,h),a.techn&&a.techn.text!==""&&(h=so(a.techn.text,l),Ol("techn",a,s,l,h)),a.descr&&a.descr.text!==""&&(h=so(a.descr.text,l),Ol("descr",a,s,l,h));let f=r(a.from),d=r(a.to),p=NCe(f,d);a.startPoint=p.startPoint,a.endPoint=p.endPoint}Rl.drawRels(t,e,Gt)},"drawRels");o(PX,"drawInsideBoundary");MCe=o(function(t,e,r,n){Gt=pe().c4;let i=pe().securityLevel,a;i==="sandbox"&&(a=Ve("#i"+e));let s=i==="sandbox"?Ve(a.nodes()[0].contentDocument.body):Ve("body"),l=n.db;n.db.setWrap(Gt.wrap),MX=l.getC4ShapeInRow(),o9=l.getC4BoundaryInRow(),Y.debug(`C:${JSON.stringify(Gt,null,2)}`);let u=i==="sandbox"?s.select(`[id="${e}"]`):Ve(`[id="${e}"]`);Rl.insertComputerIcon(u),Rl.insertDatabaseIcon(u),Rl.insertClockIcon(u);let h=new D5(n);h.setData(Gt.diagramMarginX,Gt.diagramMarginX,Gt.diagramMarginY,Gt.diagramMarginY),h.data.widthLimit=screen.availWidth,_5=Gt.diagramMarginX,L5=Gt.diagramMarginY;let f=n.db.getTitle(),d=n.db.getBoundarys("");PX(u,"",h,d,n),Rl.insertArrowHead(u),Rl.insertArrowEnd(u),Rl.insertArrowCrossHead(u),Rl.insertArrowFilledHead(u),RCe(u,n.db.getRels(),n.db.getC4Shape,n),h.data.stopx=_5,h.data.stopy=L5;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"),c9={drawPersonOrSystemArray:OX,drawBoundary:IX,setConf:l9,draw:MCe}});var ICe,FX,zX=M(()=>{"use strict";ICe=o(t=>`.person { + stroke: ${t.personBorder}; + fill: ${t.personBkg}; + } +`,"getStyles"),FX=ICe});var GX={};vr(GX,{diagram:()=>OCe});var OCe,$X=M(()=>{"use strict";US();u7();BX();zX();OCe={parser:oz,db:Ty,renderer:c9,styles:FX,init:o(({c4:t,wrap:e})=>{c9.setConf(t),Ty.setWrap(e)},"init")}});function f9(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function jX(t){Id=t}function oo(t,e){if(e){if(KX.test(t))return t.replace(zCe,HX)}else if(QX.test(t))return t.replace(GCe,HX);return t}function UCe(t){return t.replace(VCe,(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(HCe,"$1"),r=r.replace(i,s),n},"replace"),getRegex:o(()=>new RegExp(r,e),"getRegex")};return n}function WX(t){try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}function YX(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 Md.parse(t,e)}var Id,KX,zCe,QX,GCe,$Ce,HX,VCe,HCe,Sv,gm,qCe,XCe,jCe,Av,KCe,ZX,JX,d9,QCe,p9,ZCe,JCe,M5,m9,e7e,ej,t7e,g9,XX,r7e,n7e,tj,i7e,rj,a7e,_v,s7e,o7e,l7e,c7e,u7e,h7e,f7e,d7e,p7e,R5,m7e,nj,ij,g7e,y9,y7e,u9,v7e,N5,Ev,Mu,ym,Cv,Iu,mm,h9,Md,PEt,BEt,FEt,zEt,GEt,$Et,VEt,aj=M(()=>{"use strict";o(f9,"_getDefaults");Id=f9();o(jX,"changeDefaults");KX=/[&<>"']/,zCe=new RegExp(KX.source,"g"),QX=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,GCe=new RegExp(QX.source,"g"),$Ce={"&":"&","<":"<",">":">",'"':""","'":"'"},HX=o(t=>$Ce[t],"getEscapeReplacement");o(oo,"escape$1");VCe=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;o(UCe,"unescape");HCe=/(^|[^\[])\^/g;o(fn,"edit");o(WX,"cleanUrl");Sv={exec:o(()=>null,"exec")};o(YX,"splitCells");o(kv,"rtrim");o(WCe,"findClosingBracket");o(qX,"outputLink");o(YCe,"indentCodeCompensation");gm=class{static{o(this,"_Tokenizer")}options;rules;lexer;constructor(e){this.options=e||Id}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:kv(n,` +`)}}}fences(e){let r=this.rules.block.fences.exec(e);if(r){let n=r[0],i=YCe(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=kv(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:kv(r[0],` +`)}}blockquote(e){let r=this.rules.block.blockquote.exec(e);if(r){let n=kv(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=YX(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:oo(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=kv(n.slice(0,-1),"\\");if((n.length-s.length)%2===0)return}else{let s=WCe(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)),qX(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 qX(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=oo(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=oo(r[1]),i="mailto:"+n):(n=oo(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=oo(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=oo(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=oo(r[0]),{type:"text",raw:r[0],text:n}}}},qCe=/^(?: *(?:\n|$))+/,XCe=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,jCe=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Av=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,KCe=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,ZX=/(?:[*+-]|\d{1,9}[.)])/,JX=fn(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,ZX).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(),d9=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,QCe=/^[^\n]+/,p9=/(?!\s*\])(?:\\.|[^\[\]\\])+/,ZCe=fn(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",p9).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),JCe=fn(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,ZX).getRegex(),M5="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",m9=/|$))/,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",m9).replace("tag",M5).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),ej=fn(d9).replace("hr",Av).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",M5).getRegex(),t7e=fn(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",ej).getRegex(),g9={blockquote:t7e,code:XCe,def:ZCe,fences:jCe,heading:KCe,hr:Av,html:e7e,lheading:JX,list:JCe,newline:qCe,paragraph:ej,table:Sv,text:QCe},XX=fn("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Av).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",M5).getRegex(),r7e={...g9,table:XX,paragraph:fn(d9).replace("hr",Av).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",XX).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",M5).getRegex()},n7e={...g9,html:fn(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",m9).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:Sv,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:fn(d9).replace("hr",Av).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",JX).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},tj=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,i7e=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,rj=/^( {2,}|\\)\n(?!\s*$)/,a7e=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,l7e=fn(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,_v).getRegex(),c7e=fn("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,_v).getRegex(),u7e=fn("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,_v).getRegex(),h7e=fn(/\\([punct])/,"gu").replace(/punct/g,_v).getRegex(),f7e=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(),d7e=fn(m9).replace("(?:-->|$)","-->").getRegex(),p7e=fn("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",d7e).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),R5=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,m7e=fn(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",R5).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),nj=fn(/^!?\[(label)\]\[(ref)\]/).replace("label",R5).replace("ref",p9).getRegex(),ij=fn(/^!?\[(ref)\](?:\[\])?/).replace("ref",p9).getRegex(),g7e=fn("reflink|nolink(?!\\()","g").replace("reflink",nj).replace("nolink",ij).getRegex(),y9={_backpedal:Sv,anyPunctuation:h7e,autolink:f7e,blockSkip:o7e,br:rj,code:i7e,del:Sv,emStrongLDelim:l7e,emStrongRDelimAst:c7e,emStrongRDelimUnd:u7e,escape:tj,link:m7e,nolink:ij,punctuation:s7e,reflink:nj,reflinkSearch:g7e,tag:p7e,text:a7e,url:Sv},y7e={...y9,link:fn(/^!?\[(label)\]\((.*?)\)/).replace("label",R5).getRegex(),reflink:fn(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",R5).getRegex()},u9={...y9,escape:fn(tj).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}},ym=class{static{o(this,"_Renderer")}options;parser;constructor(e){this.options=e||Id}space(e){return""}code({text:e,lang:r,escaped:n}){let i=(r||"").match(/^\S*/)?.[0],a=e.replace(/\n$/,"")+` +`;return i?'
'+(n?a:oo(a,!0))+`
+`:"
"+(n?a:oo(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=WX(e);if(a===null)return i;e=a;let s='
    ",s}image({href:e,title:r,text:n}){let i=WX(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 ym(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 gm(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 mm;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];mm.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,UCe(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 Mu.lex(e,r??this.defaults)}parser(e,r){return Iu.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:

    "+oo(n.message+"",!0)+"
    ";return r?Promise.resolve(i):i}if(r)return Promise.reject(n);throw n}}},Md=new h9;o(en,"marked");en.options=en.setOptions=function(t){return Md.setOptions(t),en.defaults=Md.defaults,jX(en.defaults),en};en.getDefaults=f9;en.defaults=Id;en.use=function(...t){return Md.use(...t),en.defaults=Md.defaults,jX(en.defaults),en};en.walkTokens=function(t,e){return Md.walkTokens(t,e)};en.parseInline=Md.parseInline;en.Parser=Iu;en.parser=Iu.parse;en.Renderer=ym;en.TextRenderer=Cv;en.Lexer=Mu;en.lexer=Mu.lex;en.Tokenizer=gm;en.Hooks=mm;en.parse=en;PEt=en.options,BEt=en.setOptions,FEt=en.use,zEt=en.walkTokens,GEt=en.parseInline,$Et=Iu.parse,VEt=Mu.lex});function x7e(t,{markdownAutoWrap:e}){let n=t.replace(//g,` +`).replace(/\n{2,}/g,` +`),i=jb(n);return e===!1?i.replace(/ /g," "):i}function sj(t,e={}){let r=x7e(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 oj(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 lj=M(()=>{"use strict";aj();GS();o(x7e,"preprocessMarkdown");o(sj,"markdownToLines");o(oj,"markdownToHTML")});function b7e(t){return Intl.Segmenter?[...new Intl.Segmenter().segment(t)].map(e=>e.segment):[...t]}function w7e(t,e){let r=b7e(e.content);return cj(t,[],r,e.type)}function cj(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}])?cj(t,s,a,n):(e.length===0&&i&&(e.push(i),r.shift()),[{content:e.join(""),type:n},{content:r.join(""),type:n}])}function uj(t,e){if(t.some(({content:r})=>r.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return v9(t,e)}function v9(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 v9(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 v9(t,e,r)}var hj=M(()=>{"use strict";o(b7e,"splitTextToChars");o(w7e,"splitWordToFitWidth");o(cj,"splitWordToFitWidthRecursion");o(uj,"splitLineToFitWidth");o(v9,"splitLineToFitWidthRecursion")});function fj(t,e){e&&t.attr("style",e)}async function T7e(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&&yi(e.label)&&(l=await bh(e.label.replace(qe.lineBreakRegex,` +`),pe()));let u=e.isNode?"nodeLabel":"edgeLabel",h=s.append("span");h.html(l),fj(h,e.labelStyle),h.attr("class",`${u} ${n}`),fj(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 x9(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 k7e(t,e,r){let n=t.append("text"),i=x9(n,1,e);b9(i,r);let a=i.node().getComputedTextLength();return n.remove(),a}function dj(t,e,r){let n=t.append("text"),i=x9(n,1,e);b9(i,[{content:r,type:"normal"}]);let a=i.node()?.getBoundingClientRect();return a&&n.remove(),a}function E7e(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=>k7e(a,1.1,p)<=t,"checkWidth"),d=f(h)?[h]:uj(h,f);for(let p of d){let m=x9(l,u,1.1);b9(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 b9(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 w9(t){return t.replace(/fa[bklrs]?:fa-[\w-]+/g,e=>``)}var Li,Pl=M(()=>{"use strict";Vt();fr();pr();ut();lj();hr();hj();o(fj,"applyStyle");o(T7e,"addHtmlSpan");o(x9,"createTspan");o(k7e,"computeWidthOfText");o(dj,"computeDimensionOfText");o(E7e,"createFormattedText");o(b9,"updateTextContentAndStyles");o(w9,"replaceIconSubstring");Li=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=oj(e,h),d=w9(Ma(f)),p=e.replace(/\\\\/g,"\\"),m={isNode:s,label:yi(e)?p:d,labelStyle:r.replace("fill:","color:")};return await T7e(t,m,l,i,u)}else{let f=e.replace(//g,"
    "),d=sj(f.replace("
    ","
    "),h),p=E7e(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:");Ve(p).attr("style",m)}else{let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");Ve(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:");Ve(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 Wo(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 O5(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";Pl();Vt();pr();bs();fr();hr();st=o(async(t,e,r)=>{let n,i=e.useHtmlLabels||xr(pe()?.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",Gn(e.labelStyle)),l;e.label===void 0?l="":l=typeof e.label=="string"?e.label:e.label[0];let u=await Li(s,kr(Ma(l),pe()),{useHtmlLabels:i,width:e.width||pe().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=Ve(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=pe().fontSize?pe().fontSize:window.getComputedStyle(document.body).fontSize,w=5,[_=ur.fontSize]=Ho(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"),I5=o(async(t,e,r)=>{let n=r.useHtmlLabels||xr(pe()?.flowchart?.htmlLabels),i=t.insert("g").attr("class","label").attr("style",r.labelStyle||""),a=await Li(i,kr(Ma(e),pe()),{useHtmlLabels:n,width:r.width||pe()?.flowchart?.wrappingWidth,style:r.labelStyle,addSvgBackground:!!r.icon||!!r.img}),s=a.getBBox(),l=r.padding/2;if(xr(pe()?.flowchart?.htmlLabels)){let u=a.children[0],h=Ve(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"),je=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds"),ot=o((t,e)=>(t.look==="handDrawn"?"rough-node":"node")+" "+t.cssClasses+" "+(e||""),"getNodeClasses");o(Wt,"createPathFromPoints");o(Wo,"generateFullSineWavePoints");o(O5,"generateCirclePoints")});function S7e(t,e){return t.intersect(e)}var pj,mj=M(()=>{"use strict";o(S7e,"intersectNode");pj=S7e});function C7e(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(C7e,"intersectEllipse");P5=C7e});function A7e(t,e,r){return P5(t,e,e,r)}var gj,yj=M(()=>{"use strict";T9();o(A7e,"intersectCircle");gj=A7e});function _7e(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&&vj(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&&vj(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 vj(t,e){return t*e>0}var xj,bj=M(()=>{"use strict";o(_7e,"intersectLine");o(vj,"sameSign");xj=_7e});function L7e(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";bj();o(L7e,"intersectPolygon");wj=L7e});var D7e,Hh,k9=M(()=>{"use strict";D7e=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"),Hh=D7e});var Ye,qt=M(()=>{"use strict";mj();yj();T9();Tj();k9();Ye={node:pj,circle:gj,ellipse:P5,polygon:wj,rect:Hh}});var kj,Sc,N7e,Ze,Ke,Xt=M(()=>{"use strict";Vt();kj=o(t=>{let{handDrawnSeed:e}=pe();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}},"solidStateFill"),Sc=o(t=>{let e=N7e([...t.cssCompiledStyles||[],...t.cssStyles||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),N7e=o(t=>{let e=new Map;return t.forEach(r=>{let[n,i]=r.split(":");e.set(n.trim(),i?.trim())}),e},"styles2Map"),Ze=o(t=>{let{stylesArray:e}=Sc(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"),Ke=o((t,e)=>{let{themeVariables:r,handDrawnSeed:n}=pe(),{nodeBorder:i,mainBkg:a}=r,{stylesMap:s}=Sc(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 E9(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 R7e(t,e){return t[0]===e[0]&&t[1]===e[1]}function M7e(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)E9(h,l,i);let u=function(h,f,d){let p=[];for(let b of h){let w=[...b];R7e(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)E9(h,l,-i);(function(h,f,d){let p=[];h.forEach(m=>p.push(...m)),E9(p,f,d)})(u,l,-i)}return u}function Rv(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),M7e(t,i,n,a||1)}function W5(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 C9(t,e){return t.type===e}function G9(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:I7e,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:S9,text:`${parseFloat(RegExp.$1)}`},s=s.substr(RegExp.$1.length)}return l[l.length]={type:Ej,text:""},l}(t),n="BOD",i=0,a=r[i];for(;!C9(a,Ej);){let s=0,l=[];if(n==="BOD"){if(a.text!=="M"&&a.text!=="m")return G9("M0,0"+t);i++,s=B5[a.text],n=a.text}else C9(a,S9)?s=B5[n]:(i++,s=B5[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 Mj(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)&&(Ij(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 Lv(t,e,r){return[t*Math.cos(r)-e*Math.sin(r),t*Math.sin(r)+e*Math.cos(r)]}function Ij(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]=Lv(t,e,-f),[r,n]=Lv(r,n,-f);let R=(t-r)/2,C=(e-n)/2,O=R*R/(i*i)+C*C/(a*a);O>1&&(O=Math.sqrt(O),i*=O,a*=O);let N=i*i,P=a*a,F=N*P-N*C*C-P*R*R,B=N*C*C+P*R*R,G=(l===u?-1:1)*Math.sqrt(Math.abs(F/B));y=G*i*C/a+(t+r)/2,v=G*-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,C=r,O=n;g=u&&g>m?m+120*Math.PI/180*1:m+120*Math.PI/180*-1,p=Ij(r=y+i*Math.cos(g),n=v+a*Math.sin(g),C,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,S=4/3*a*E,A=[t,e],I=[t+L*w,e-S*b],D=[r+L*T,n-S*_],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 C=0;C2){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=Dj(v,h,f,d,p,m,g,1,u);if(!u.disableMultiStroke){let b=Dj(v,h,f,d,p,m,g,1.5,u);x.push(...b)}return s&&(l?x.push(...Wh(h,f,h+d*Math.cos(m),f+p*Math.sin(m),u),...Wh(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 Aj(t,e){let r=Mj(Rj(G9(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(...Wh(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(...B7e(u,h,f,d,p,m,a,e)),a=[p,m];break}case"Z":n.push(...Wh(a[0],a[1],i[0],i[1],e)),a=[i[0],i[1]]}return{type:"path",ops:n}}function A9(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*Bj(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 F5(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=Od(u,h,.5),m=Od(h,f,.5),g=Od(f,d,.5),y=Od(p,m,.5),v=Od(m,g,.5),x=Od(y,v,.5);B9([u,p,y,x],0,r,i),B9([x,v,g,d],0,r,i)}var a,s;return i}function z7e(t,e){return H5(t,0,t.length,e)}function H5(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?(H5(t,e,h+1,n,a),H5(t,h,r,n,a)):(a.length||a.push(s),a.push(l)),a}function _9(t,e=.15,r){let n=[],i=(t.length-1)/3;for(let a=0;a0?H5(n,0,n.length,r):n}var Nv,L9,D9,N9,R9,M9,Rs,I9,I7e,S9,Ej,B5,O7e,lo,xm,F9,z5,z9,Xe,jt=M(()=>{"use strict";o(E9,"t");o(R7e,"e");o(M7e,"s");o(Rv,"n");Nv=class{static{o(this,"o")}constructor(e){this.helper=e}fillPolygons(e,r){return this._fillPolygons(e,r)}_fillPolygons(e,r){let n=Rv(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(W5,"a");L9=class extends Nv{static{o(this,"h")}fillPolygons(e,r){let n=r.hachureGap;n<0&&(n=4*r.strokeWidth),n=Math.max(n,.1);let i=Rv(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)W5([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)}}},D9=class extends Nv{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}},N9=class{static{o(this,"i")}constructor(e){this.helper=e}fillPolygons(e,r){let n=Rv(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=W5(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=W5(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=W5(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,S=2*Math.PI);let A=(S-L)/b.curveStepCount,I=[];for(let D=L;D<=S;D+=A)I.push([w+T*Math.cos(D),_+E*Math.sin(D)]);return I.push([w+T*Math.cos(S),_+E*Math.sin(S)]),I.push([w,_]),vm([I],b)}(e,r,n,i,a,s,h));return h.stroke!==lo&&f.push(d),this._d("arc",f,h)}curve(e,r){let n=this._o(r),i=[],a=Sj(e,n);if(n.fill&&n.fill!==lo)if(n.fillStyle==="solid"){let s=Sj(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(..._9(Nj([h[0],h[0],h[1],h[2]]),10,(1+n.roughness)/2)):s.push(..._9(Nj(h),10,(1+n.roughness)/2))}s.length&&i.push(vm([s],n))}return n.stroke!==lo&&i.push(a),this._d("curve",i,n)}polygon(e,r){let n=this._o(r),i=[],a=G5(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(A9([e],n)):i.push(vm([e],n))),n.stroke!==lo&&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!==lo,s=n.stroke!==lo,l=!!(n.simplification&&n.simplification<1),u=function(f,d,p){let m=Mj(Rj(G9(f))),g=[],y=[],v=[0,0],x=[],b=o(()=>{x.length>=4&&y.push(..._9(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=z7e(T,p);E.length&&_.push(E)}return _}(e,1,l?4-4*(n.simplification||1):(1+n.roughness)/2),h=Aj(e,n);if(a)if(n.fillStyle==="solid")if(u.length===1){let f=Aj(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(A9(u,n));else i.push(vm(u,n));return s&&(l?u.forEach(f=>{i.push(G5(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:lo};break;case"fillPath":s={d:this.opsToPath(a),stroke:lo,strokeWidth:0,fill:n.fill||lo};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||lo,strokeWidth:n,fill:lo}}_mergedShape(e){return e.filter((r,n)=>n===0||r.op!=="move")}},F9=class{static{o(this,"st")}constructor(e,r){this.canvas=e,this.ctx=this.canvas.getContext("2d"),this.gen=new xm(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}},z5="http://www.w3.org/2000/svg",z9=class{static{o(this,"ot")}constructor(e,r){this.svg=e,this.gen=new xm(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,a=i.createElementNS(z5,"g"),s=e.options.fixedDecimalPlaceDigits;for(let l of r){let u=null;switch(l.type){case"path":u=i.createElementNS(z5,"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(z5,"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(z5,"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)}},Xe={canvas:o((t,e)=>new F9(t,e),"canvas"),svg:o((t,e)=>new z9(t,e),"svg"),generator:o(t=>new xm(t),"generator"),newSeed:o(()=>xm.newSeed(),"newSeed")}});function Fj(t,e){let{labelStyles:r}=Ze(e);e.labelStyle=r;let n=ot(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=Xe.svg(a),h=Ke(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",Gn(l)),je(e,d),e.intersect=function(p){return Y.info("Circle intersect",e,s,p),Ye.circle(e,s,p)},a}var zj=M(()=>{"use strict";ut();Ot();qt();Xt();jt();hr();o(Fj,"anchor")});function Gj(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 S=L/19,A=w+S*T,I=x+i*Math.cos(A),D=b+a*Math.sin(A);E.push({x:I,y:D})}return E}async function $j(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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},...Gj(-s/2,-l/2,-s/2,l/2,h,u,!1),{x:s/2,y:l/2},...Gj(s/2,l/2,s/2,-l/2,h,u,!0)],p=Xe.svg(i),m=Ke(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)`),je(e,v),e.intersect=function(x){return Ye.polygon(e,d,x)},i}var Vj=M(()=>{"use strict";Ot();qt();Xt();jt();o(Gj,"generateArcPoints");o($j,"bowTieRect")});function Ia(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 Ou=M(()=>{"use strict";o(Ia,"insertPolygonShape")});async function Uj(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),x=Ke(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=Ia(i,u,s,m);return n&&g.attr("style",n),je(e,g),e.intersect=function(v){return Ye.polygon(e,m,v)},i}var Hj=M(()=>{"use strict";Ot();qt();Xt();jt();Ou();Ot();o(Uj,"card")});function Wj(t,e){let{nodeStyles:r}=Ze(e);e.label="";let n=t.insert("g").attr("class",ot(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=Xe.svg(n),u=Ke(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 Ye.polygon(e,s,p)},n}var Yj=M(()=>{"use strict";qt();jt();Xt();Ot();o(Wj,"choice")});async function qj(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await st(t,e,ot(e)),l=a.width/2+s,u,{cssStyles:h}=e;if(e.look==="handDrawn"){let f=Xe.svg(i),d=Ke(e,{}),p=f.circle(0,0,l*2,d);u=i.insert(()=>p,":first-child"),u.attr("class","basic label-container").attr("style",Gn(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 je(e,u),e.intersect=function(f){return Y.info("Circle intersect",e,l,f),Ye.circle(e,l,f)},i}var Xj=M(()=>{"use strict";ut();Ot();qt();Xt();jt();hr();o(qj,"circle")});function G7e(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 jj(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r,e.label="";let i=t.insert("g").attr("class",ot(e)).attr("id",e.domId??e.id),a=Math.max(30,e?.width??0),{cssStyles:s}=e,l=Xe.svg(i),u=Ke(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=l.circle(0,0,a*2,u),f=G7e(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),je(e,p),e.intersect=function(m){return Y.info("crossedCircle intersect",e,{radius:a,point:m}),Ye.circle(e,a,m)},i}var Kj=M(()=>{"use strict";ut();Ot();Xt();jt();qt();o(G7e,"createLine");o(jj,"crossedCircle")});function Yh(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))})`),je(e,_),e.intersect=function(T){return Ye.polygon(e,p,T)},i}var Zj=M(()=>{"use strict";Ot();qt();Xt();jt();o(Yh,"generateCirclePoints");o(Qj,"curlyBraceLeft")});function qh(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))})`),je(e,_),e.intersect=function(T){return Ye.polygon(e,p,T)},i}var eK=M(()=>{"use strict";Ot();qt();Xt();jt();o(qh,"generateCirclePoints");o(Jj,"curlyBraceRight")});function Oa(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),S.insert(()=>b,":first-child"),S.insert(()=>T,":first-child"),S.attr("class","text"),f&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.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))})`),je(e,S),e.intersect=function(A){return Ye.polygon(e,m,A)},i}var rK=M(()=>{"use strict";Ot();qt();Xt();jt();o(Oa,"generateCirclePoints");o(tK,"curlyBraces")});async function nK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),m=Ke(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},...O5(-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})`),je(e,T),e.intersect=function(E){return Ye.polygon(e,b,E)},i}var iK=M(()=>{"use strict";Ot();qt();Xt();jt();o(nK,"curvedTrapezoid")});async function aK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),g=V7e(0,0,l,f,u,h),y=U7e(0,h,l,f,u,h),v=m.path(g,Ke(e,{})),x=m.path(y,Ke(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=$7e(0,0,l,f,u,h);d=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container").attr("style",Gn(p)).attr("style",n)}return d.attr("label-offset-y",h),d.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),je(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=Ye.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 $7e,V7e,U7e,sK=M(()=>{"use strict";Ot();qt();Xt();jt();hr();$7e=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"),V7e=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"),U7e=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(aK,"cylinder")});async function oK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),g=Ke(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))})`),je(e,x),e.intersect=function(b){return Ye.rect(e,b)},i}var lK=M(()=>{"use strict";Ot();qt();Xt();jt();o(oK,"dividedRectangle")});async function cK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await st(t,e,ot(e)),u=a.width/2+s+5,h=a.width/2+s,f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=Xe.svg(i),m=Ke(e,{roughness:.2,strokeWidth:2.5}),g=Ke(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",Gn(e.cssClasses)).attr("style",Gn(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 je(e,f),e.intersect=function(p){return Y.info("DoubleCircle intersect",e,u,p),Ye.circle(e,u,p)},i}var uK=M(()=>{"use strict";ut();Ot();qt();Xt();jt();hr();o(cK,"doublecircle")});function hK(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=Ze(e);e.label="",e.labelStyle=n;let a=t.insert("g").attr("class",ot(e)).attr("id",e.domId??e.id),s=7,{cssStyles:l}=e,u=Xe.svg(a),{nodeBorder:h}=r,f=Ke(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),je(e,p),e.intersect=function(m){return Y.info("filledCircle intersect",e,{radius:s,point:m}),Ye.circle(e,s,m)},a}var fK=M(()=>{"use strict";jt();ut();qt();Xt();Ot();o(hK,"filledCircle")});async function dK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),m=Ke(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,je(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),Ye.polygon(e,f,x)},i}var pK=M(()=>{"use strict";ut();Ot();qt();Xt();jt();Ot();o(dK,"flippedTriangle")});function mK(t,e,{dir:r,config:{state:n,themeVariables:i}}){let{nodeStyles:a}=Ze(e);e.label="";let s=t.insert("g").attr("class",ot(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=Xe.svg(s),m=Ke(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),je(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 Ye.rect(e,x)},s}var gK=M(()=>{"use strict";jt();qt();Xt();Ot();o(mK,"forkJoin")});async function yK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let i=80,a=50,{shapeSvg:s,bbox:l}=await st(t,e,ot(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=Xe.svg(s),m=Ke(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},...O5(-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),je(e,x),e.intersect=function(b){return Y.info("Pill intersect",e,{radius:f,point:b}),Ye.polygon(e,g,b)},s}var vK=M(()=>{"use strict";ut();Ot();qt();Xt();jt();o(yK,"halfRoundedRectangle")});async function xK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),g=Ke(e,{}),y=H7e(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=Ia(i,h,l,f);return n&&d.attr("style",n),e.width=h,e.height=l,je(e,d),e.intersect=function(m){return Ye.polygon(e,f,m)},i}var H7e,bK=M(()=>{"use strict";Ot();qt();Xt();jt();Ou();H7e=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(xK,"hexagon")});async function wK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.label="",e.labelStyle=r;let{shapeSvg:i}=await st(t,e,ot(e)),a=Math.max(30,e?.width??0),s=Math.max(30,e?.height??0),{cssStyles:l}=e,u=Xe.svg(i),h=Ke(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})`),je(e,m),e.intersect=function(g){return Y.info("Pill intersect",e,{points:f}),Ye.polygon(e,f,g)},i}var TK=M(()=>{"use strict";ut();Ot();qt();Xt();jt();o(wK,"hourglass")});async function kK(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Ze(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 st(t,e,"icon-shape default"),p=e.pos==="t",m=l,g=l,{nodeBorder:y}=r,{stylesMap:v}=Sc(e),x=-g/2,b=-m/2,w=e.label?8:0,_=Xe.svg(h),T=Ke(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),S=m+f.height+w,A=_.rectangle(-L/2,-S/2,L,S,{...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 _o(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let R=k.node().getBBox(),C=R.width,O=R.height,N=R.x,P=R.y;k.attr("transform",`translate(${-C/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?-S/2:S/2-f.height})`),I.attr("transform",`translate(0,${p?f.height/2+w/2:-f.height/2-w/2})`),je(e,D),e.intersect=function(k){if(Y.info("iconSquare intersect",e,k),!e.label)return Ye.rect(e,k);let R=e.x??0,C=e.y??0,O=e.height??0,N=[];return p?N=[{x:R-f.width/2,y:C-O/2},{x:R+f.width/2,y:C-O/2},{x:R+f.width/2,y:C-O/2+f.height+w},{x:R+g/2,y:C-O/2+f.height+w},{x:R+g/2,y:C+O/2},{x:R-g/2,y:C+O/2},{x:R-g/2,y:C-O/2+f.height+w},{x:R-f.width/2,y:C-O/2+f.height+w}]:N=[{x:R-g/2,y:C-O/2},{x:R+g/2,y:C-O/2},{x:R+g/2,y:C-O/2+m},{x:R+f.width/2,y:C-O/2+m},{x:R+f.width/2/2,y:C+O/2},{x:R-f.width/2,y:C+O/2},{x:R-f.width/2,y:C-O/2+m},{x:R-g/2,y:C-O/2+m}],Ye.polygon(e,N,k)},h}var EK=M(()=>{"use strict";jt();ut();su();qt();Xt();Ot();o(kK,"icon")});async function SK(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Ze(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 st(t,e,"icon-shape default"),p=20,m=e.label?8:0,g=e.pos==="t",{nodeBorder:y,mainBkg:v}=r,{stylesMap:x}=Sc(e),b=Xe.svg(h),w=Ke(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 _o(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let E=T.node().getBBox(),L=E.width,S=E.height,A=E.x,I=E.y,D=Math.max(L,S)*Math.SQRT2+p*2,k=b.circle(0,0,D,w),R=Math.max(D,f.width),C=D+f.height+m,O=b.rectangle(-R/2,-C/2,R,C,{...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-S/2-I:-f.height/2-m/2-S/2-I})`),T.attr("style",`color: ${x.get("stroke")??y};`),d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${g?-C/2:C/2-f.height})`),N.attr("transform",`translate(0,${g?f.height/2+m/2:-f.height/2-m/2})`),je(e,P),e.intersect=function(F){return Y.info("iconSquare intersect",e,F),Ye.rect(e,F)},h}var CK=M(()=>{"use strict";jt();ut();su();qt();Xt();Ot();o(SK,"iconCircle")});var Pa,Xh=M(()=>{"use strict";Pa=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 AK(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Ze(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 st(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=Sc(e),w=-y/2,_=-g/2,T=e.label?8:0,E=Xe.svg(h),L=Ke(e,{});e.look!=="handDrawn"&&(L.roughness=0,L.fillStyle="solid");let S=b.get("fill");L.stroke=S??x;let A=E.path(Pa(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"),C=h.insert(()=>k);if(e.icon){let O=h.append("g");O.html(`${await _o(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let N=O.node().getBBox(),P=N.width,F=N.height,B=N.x,G=N.y;O.attr("transform",`translate(${-P/2-B},${m?f.height/2+T/2-F/2-G:-f.height/2-T/2-F/2-G})`),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})`),je(e,C),e.intersect=function(O){if(Y.info("iconSquare intersect",e,O),!e.label)return Ye.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}],Ye.polygon(e,B,O)},h}var _K=M(()=>{"use strict";jt();ut();su();qt();Xt();Xh();Ot();o(AK,"iconRounded")});async function LK(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=Ze(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 st(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=Sc(e),w=-y/2,_=-g/2,T=e.label?8:0,E=Xe.svg(h),L=Ke(e,{});e.look!=="handDrawn"&&(L.roughness=0,L.fillStyle="solid");let S=b.get("fill");L.stroke=S??x;let A=E.path(Pa(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"),C=h.insert(()=>k);if(e.icon){let O=h.append("g");O.html(`${await _o(e.icon,{height:l,width:l,fallbackPrefix:""})}`);let N=O.node().getBBox(),P=N.width,F=N.height,B=N.x,G=N.y;O.attr("transform",`translate(${-P/2-B},${m?f.height/2+T/2-F/2-G:-f.height/2-T/2-F/2-G})`),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})`),je(e,C),e.intersect=function(O){if(Y.info("iconSquare intersect",e,O),!e.label)return Ye.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}],Ye.polygon(e,B,O)},h}var DK=M(()=>{"use strict";jt();ut();su();qt();Xh();Xt();Ot();o(LK,"iconSquare")});async function NK(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}=Ze(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 st(t,e,"image-shape default"),g=e.pos==="t",y=-h/2,v=-f/2,x=e.label?8:0,b=Xe.svg(d),w=Ke(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"}),S=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})`),S.attr("transform",`translate(0,${g?p.height/2+x/2:-p.height/2-x/2})`),je(e,A),e.intersect=function(I){if(Y.info("iconSquare intersect",e,I),!e.label)return Ye.rect(e,I);let D=e.x??0,k=e.y??0,R=e.height??0,C=[];return g?C=[{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}]:C=[{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}],Ye.polygon(e,C,I)},d}var RK=M(()=>{"use strict";jt();ut();qt();Xt();Ot();o(NK,"imageSquare")});async function MK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),p=Ke(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=Ia(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,je(e,h),e.intersect=function(d){return Ye.polygon(e,u,d)},i}var IK=M(()=>{"use strict";Ot();qt();Xt();jt();Ou();o(MK,"inv_trapezoid")});async function Pd(t,e,r){let{labelStyles:n,nodeStyles:i}=Ze(e);e.labelStyle=n;let{shapeSvg:a,bbox:s}=await st(t,e,ot(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=Xe.svg(a),v=Ke(e,{}),x=p||m?y.path(Pa(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",Gn(g))}else d=a.insert("rect",":first-child"),d.attr("class","basic label-container").attr("style",i).attr("rx",Gn(p)).attr("ry",Gn(m)).attr("x",h).attr("y",f).attr("width",l).attr("height",u);return je(e,d),e.intersect=function(y){return Ye.rect(e,y)},a}var Mv=M(()=>{"use strict";Ot();qt();Xh();Xt();jt();hr();o(Pd,"drawRect")});async function OK(t,e){let{shapeSvg:r,bbox:n,label:i}=await st(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))})`),je(e,a),e.intersect=function(u){return Ye.rect(e,u)},r}var PK=M(()=>{"use strict";Mv();Ot();qt();o(OK,"labelRect")});async function BK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),p=Ke(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=Ia(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,je(e,h),e.intersect=function(d){return Ye.polygon(e,u,d)},i}var FK=M(()=>{"use strict";Ot();qt();Xt();jt();Ou();o(BK,"lean_left")});async function zK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),p=Ke(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=Ia(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,je(e,h),e.intersect=function(d){return Ye.polygon(e,u,d)},i}var GK=M(()=>{"use strict";Ot();qt();Xt();jt();Ou();o(zK,"lean_right")});function $K(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.label="",e.labelStyle=r;let i=t.insert("g").attr("class",ot(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=Xe.svg(i),d=Ke(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})`),je(e,g),e.intersect=function(y){return Y.info("lightningBolt intersect",e,y),Ye.polygon(e,h,y)},i}var VK=M(()=>{"use strict";ut();Ot();Xt();jt();qt();Ot();o($K,"lightningBolt")});async function UK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),y=Y7e(0,0,l,f,u,h,d),v=q7e(0,h,l,f,u,h),x=Ke(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=W7e(0,0,l,f,u,h,d);p=i.insert("path",":first-child").attr("d",g).attr("class","basic label-container").attr("style",Gn(m)).attr("style",n)}return p.attr("label-offset-y",h),p.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),je(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=Ye.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 W7e,Y7e,q7e,HK=M(()=>{"use strict";Ot();qt();Xt();jt();hr();W7e=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"),Y7e=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"),q7e=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(UK,"linedCylinder")});async function WK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),m=Ke(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},...Wo(-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))})`),je(e,v),e.intersect=function(x){return Ye.polygon(e,g,x)},i}var YK=M(()=>{"use strict";Ot();qt();jt();Xt();o(WK,"linedWaveEdgedRect")});async function qK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),g=Ke(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))})`),je(e,T),e.intersect=function(E){return Ye.polygon(e,y,E)},i}var XK=M(()=>{"use strict";Ot();Xt();jt();qt();o(qK,"multiRect")});async function jK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Wo(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=Xe.svg(i),_=Ke(e,{});e.look!=="handDrawn"&&(_.roughness=0,_.fillStyle="solid");let T=Wt(x),E=w.path(T,_),L=Wt(b),S=w.path(L,_),A=i.insert(()=>E,":first-child");return A.insert(()=>S),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))})`),je(e,A),e.intersect=function(I){return Ye.polygon(e,x,I)},i}var KK=M(()=>{"use strict";Ot();qt();jt();Xt();o(jK,"multiWaveEdgedRectangle")});async function QK(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=Ze(e);e.labelStyle=n,e.useHtmlLabels||Cr().flowchart?.htmlLabels!==!1||(e.centerLabel=!0);let{shapeSvg:s,bbox:l}=await st(t,e,ot(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=Xe.svg(s),g=Ke(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),je(e,v),e.intersect=function(x){return Ye.rect(e,x)},s}var ZK=M(()=>{"use strict";jt();qt();Xt();Ot();Za();o(QK,"note")});async function JK(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),m=Ke(e,{}),g=X7e(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=Ia(i,u,u,h);return n&&f.attr("style",n),je(e,f),e.intersect=function(p){return Y.debug(`APA12 Intersect called SPLIT +point:`,p,` +node: +`,e,` +res:`,Ye.polygon(e,h,p)),Ye.polygon(e,h,p)},i}var X7e,eQ=M(()=>{"use strict";ut();Ot();qt();Xt();jt();Ou();X7e=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(JK,"question")});async function tQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),y=Ke(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))})`),je(e,b),e.intersect=function(w){return Ye.polygon(e,p,w)},i}var rQ=M(()=>{"use strict";Ot();qt();Xt();jt();o(tQ,"rect_left_inv_arrow")});function j7e(t,e){e&&t.attr("style",e)}async function K7e(t){let e=Ve(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),n=t.label;t.label&&yi(t.label)&&(n=await bh(t.label.replace(qe.lineBreakRegex,` +`),pe()));let i=t.isNode?"nodeLabel":"edgeLabel";return r.html('"+n+""),j7e(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 Q7e,Cc,Y5=M(()=>{"use strict";pr();ut();Vt();fr();hr();o(j7e,"applyStyle");o(K7e,"addHtmlLabel");Q7e=o(async(t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),xr(pe().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),Y.info("vertexText"+i);let a={isNode:n,label:Ma(i).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:e&&e.replace("fill:","color:")};return await K7e(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"),Cc=Q7e});async function nQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(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 Cc(h,e.labelStyle,!0,!0)),d={width:0,height:0};if(xr(pe()?.flowchart?.htmlLabels)){let S=f.children[0],A=Ve(f);d=S.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 Cc(p.join?p.join("
    "):p,e.labelStyle,!0,!0)),y=g.children[0],v=Ve(g);d=y.getBoundingClientRect(),v.attr("width",d.width),v.attr("height",d.height);let x=(e.padding||0)/2;Ve(g).attr("transform","translate( "+(d.width>m.width?0:(m.width-d.width)/2)+", "+(m.height+x+5)+")"),Ve(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 je(e,E),e.intersect=function(S){return Ye.rect(e,S)},a}var iQ=M(()=>{"use strict";pr();fr();Ot();Y5();qt();Xt();jt();Vt();Xh();ut();o(nQ,"rectWithTitle")});async function aQ(t,e){let r={rx:5,ry:5,classes:"",labelPaddingX:(e?.padding||0)*1,labelPaddingY:(e?.padding||0)*1};return Pd(t,e,r)}var sQ=M(()=>{"use strict";Mv();o(aQ,"roundedRect")});async function oQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),g=Ke(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",Gn(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))})`),je(e,x),e.intersect=function(b){return Ye.rect(e,b)},i}var lQ=M(()=>{"use strict";Ot();qt();Xt();jt();hr();o(oQ,"shadedProcess")});async function cQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),m=Ke(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))})`),je(e,x),e.intersect=function(b){return Ye.polygon(e,g,b)},i}var uQ=M(()=>{"use strict";Ot();qt();Xt();jt();o(cQ,"slopedRect")});async function hQ(t,e){let r={rx:0,ry:0,classes:"",labelPaddingX:(e?.padding||0)*2,labelPaddingY:(e?.padding||0)*1};return Pd(t,e,r)}var fQ=M(()=>{"use strict";Mv();o(hQ,"squareRect")});async function dQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(e)),s=a.height+e.padding,l=a.width+s/4+e.padding,u,{cssStyles:h}=e;if(e.look==="handDrawn"){let f=Xe.svg(i),d=Ke(e,{}),p=Pa(-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",Gn(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 je(e,u),e.intersect=function(f){return Ye.rect(e,f)},i}var pQ=M(()=>{"use strict";Ot();qt();Xt();jt();Xh();hr();o(dQ,"stadium")});async function mQ(t,e){return Pd(t,e,{rx:5,ry:5,classes:"flowchart-node"})}var gQ=M(()=>{"use strict";Mv();o(mQ,"state")});function yQ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=Ze(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=Xe.svg(h),d=Ke(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),je(e,y),e.intersect=function(v){return Ye.circle(e,7,v)},h}var vQ=M(()=>{"use strict";jt();qt();Xt();Ot();o(yQ,"stateEnd")});function xQ(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=Xe.svg(i).circle(0,0,14,kj(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 je(e,a),e.intersect=function(s){return Ye.circle(e,7,s)},i}var bQ=M(()=>{"use strict";jt();qt();Xt();Ot();o(xQ,"stateStart")});async function wQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),m=Ke(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",Gn(b)),je(e,x)}else{let p=Ia(i,l,u,d);n&&p.attr("style",n),je(e,p)}return e.intersect=function(p){return Ye.polygon(e,d,p)},i}var TQ=M(()=>{"use strict";Ot();qt();Xt();jt();Ou();hr();o(wQ,"subroutine")});async function kQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),g=Ke(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),je(e,T),e.intersect=function(E){return Ye.polygon(e,y,E)},i}var EQ=M(()=>{"use strict";Ot();Xt();jt();qt();o(kQ,"taggedRect")});async function SQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),y=Ke(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=[{x:-l/2-l/2*.1,y:p/2},...Wo(-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},...Wo(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"}),S=i.insert(()=>L,":first-child");return S.insert(()=>T,":first-child"),S.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.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))})`),je(e,S),e.intersect=function(A){return Ye.polygon(e,v,A)},i}var CQ=M(()=>{"use strict";Ot();qt();jt();Xt();o(SQ,"taggedWaveEdgedRectangle")});async function AQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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),je(e,f),e.intersect=function(d){return Ye.rect(e,d)},i}var _Q=M(()=>{"use strict";Ot();qt();Xt();o(AQ,"text")});async function LQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s,halfPadding:l}=await st(t,e,ot(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=Xe.svg(i),v=J7e(0,0,p,h,d,f),x=eAe(0,0,p,h,d,f),b=y.path(v,Ke(e,{})),w=y.path(x,Ke(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=Z7e(0,0,p,h,d,f);g=i.insert("path",":first-child").attr("d",y).attr("class","basic label-container").attr("style",Gn(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))})`),je(e,g),e.intersect=function(y){let v=Ye.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(b)),b=d-b,y.x-(e.x??0)>0&&(b=-b),v.x+=b}return v},i}var Z7e,J7e,eAe,DQ=M(()=>{"use strict";Ot();Xt();jt();qt();hr();Z7e=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"),J7e=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(LQ,"tiltedCylinder")});async function NQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),p=Ke(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=Ia(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,je(e,h),e.intersect=function(d){return Ye.polygon(e,u,d)},i}var RQ=M(()=>{"use strict";Ot();qt();Xt();jt();Ou();o(NQ,"trapezoid")});async function MQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),p=Ke(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),je(e,v),e.intersect=function(x){return Ye.polygon(e,m,x)},i}var IQ=M(()=>{"use strict";Ot();qt();Xt();jt();o(MQ,"trapezoidalPentagon")});async function OQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(e)),l=xr(pe().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=Xe.svg(i),g=Ke(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,je(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),Ye.polygon(e,d,b)},i}var PQ=M(()=>{"use strict";ut();Ot();qt();Xt();jt();Ot();fr();Vt();o(OQ,"triangle")});async function BQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),v=Ke(e,{});e.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let x=[{x:-l/2-g,y:f/2},...Wo(-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))})`),je(e,_),e.intersect=function(T){return Ye.polygon(e,x,T)},i}var FQ=M(()=>{"use strict";Ot();qt();jt();Xt();o(BQ,"waveEdgedRectangle")});async function zQ(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await st(t,e,ot(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=Xe.svg(i),x=Ke(e,{});e.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let b=[{x:-d/2,y:g/2},...Wo(-d/2,g/2,d/2,g/2,m,1),{x:d/2,y:-g/2},...Wo(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),je(e,T),e.intersect=function(E){return Ye.polygon(e,b,E)},i}var GQ=M(()=>{"use strict";Ot();qt();Xt();jt();o(zQ,"waveRectangle")});async function $Q(t,e){let{labelStyles:r,nodeStyles:n}=Ze(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await st(t,e,ot(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=Xe.svg(i),g=Ke(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))})`),je(e,b),e.intersect=function(w){return Ye.polygon(e,y,w)},i}var VQ=M(()=>{"use strict";Ot();Xt();jt();qt();o($Q,"windowPane")});async function UQ(t,e,r,n,i=r.class.padding??12){let a=n?0:3,s=t.insert("g").attr("class",ot(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 q5(l,{text:`\xAB${b}\xBB`},0),d=l.node().getBBox().height}u=s.insert("g").attr("class","label-group text"),await q5(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 q5(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 q5(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 q5(t,e,r,n=[]){let i=t.insert("g").attr("class","label").attr("style",n.join("; ")),a=Cr(),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)),yi(l)&&(s=!0);let u=await Li(i,s7(Ma(l)),{width:so(l,a)+50,classes:"markdown-node-label",useHtmlLabels:s},a),h,f=1;if(s){let d=u.children[0],p=Ve(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")&&Ve(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 HQ=M(()=>{"use strict";pr();Za();Ot();hr();Vt();Pl();fr();o(UQ,"textHelper");o(q5,"addText")});async function WQ(t,e){let r=pe(),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 UQ(t,e,r,a,i),{labelStyles:h,nodeStyles:f}=Ze(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=Xe.svg(l),g=Ke(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=Ve(D[I]),R=k.attr("transform"),C=0;if(R){let F=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(R);F&&(C=parseFloat(F[2]))}let O=C+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,S=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+S+b+i*2+n,T.x+T.width,E+L+S+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 je(e,_),e.intersect=function(A){return Ye.rect(e,A)},l}var YQ=M(()=>{"use strict";Ot();Vt();pr();jt();Xt();qt();HQ();fr();o(WQ,"classBox")});async function qQ(t,e,{config:r}){let{labelStyles:n,nodeStyles:i}=Ze(e);e.labelStyle=n||"";let a=10,s=e.width;e.width=(e.width??200)-10;let{shapeSvg:l,bbox:u,label:h}=await st(t,e,ot(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 I5(p,"ticket"in e&&e.ticket||"",m):{label:g,bbox:y}=await I5(l,"ticket"in e&&e.ticket||"",m);let{label:v,bbox:x}=await I5(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 S,{rx:A,ry:I}=e,{cssStyles:D}=e;if(e.look==="handDrawn"){let k=Xe.svg(l),R=Ke(e,{}),C=A||I?k.path(Pa(E,L,w,T,A||0),R):k.rectangle(E,L,w,T,R);S=l.insert(()=>C,":first-child"),S.attr("class","basic label-container").attr("style",D||null)}else{S=l.insert("rect",":first-child"),S.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"),C=E+2,O=L+Math.floor((A??0)/2),N=L+T-Math.floor((A??0)/2);R.attr("x1",C).attr("y1",O).attr("x2",C).attr("y2",N).attr("stroke-width","4").attr("stroke",tAe(k))}}return je(e,S),e.height=T,e.intersect=function(k){return Ye.rect(e,k)},l}var tAe,XQ=M(()=>{"use strict";Ot();qt();Xh();Xt();jt();tAe=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(qQ,"kanbanItem")});function jQ(t){return t in $9}var rAe,nAe,$9,V9=M(()=>{"use strict";zj();Vj();Hj();Yj();Xj();Kj();Zj();eK();rK();iK();sK();lK();uK();fK();pK();gK();vK();bK();TK();EK();CK();_K();DK();RK();IK();PK();FK();GK();VK();HK();YK();XK();KK();ZK();eQ();rQ();iQ();sQ();lQ();uQ();fQ();pQ();gQ();vQ();bQ();TQ();EQ();CQ();_Q();DQ();RQ();IQ();PQ();FQ();GQ();VQ();YQ();XQ();rAe=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:hQ},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:aQ},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:dQ},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:wQ},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:aK},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:qj},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:JK},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:xK},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:zK},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:BK},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:NQ},{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:MK},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:cK},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:AQ},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:Uj},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:oQ},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:xQ},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:yQ},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:mK},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:wK},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:Qj},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:Jj},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:tK},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:$K},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:BQ},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:yK},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:LQ},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:UK},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:nK},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:oK},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:OQ},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:$Q},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:hK},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:MQ},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:dK},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:cQ},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:jK},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:qK},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:$j},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:jj},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:SQ},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:kQ},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:zQ},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:tQ},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:WK}],nAe=o(()=>{let e=[...Object.entries({state:mQ,choice:Wj,note:QK,rectWithTitle:nQ,labelRect:OK,iconSquare:LK,iconCircle:SK,icon:kK,iconRounded:AK,imageSquare:NK,anchor:Fj,kanbanItem:qQ,classBox:WQ}),...rAe.flatMap(r=>[r.shortName,..."aliases"in r?r.aliases:[],..."internalAliases"in r?r.internalAliases:[]].map(i=>[i,r.handler]))];return Object.fromEntries(e)},"generateShapeMap"),$9=nAe();o(jQ,"isValidShape")});function hZ(t){return typeof t>"u"||t===null}function iAe(t){return typeof t=="object"&&t!==null}function aAe(t){return Array.isArray(t)?t:hZ(t)?[]:[t]}function sAe(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 H9(t,e){return Gi.repeat(" ",e-t.length)+t}function mAe(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=U9(t.buffer,n[s-u],i[s-u],t.position-(n[s]-n[s-u]),d),l=Gi.repeat(" ",e.indent)+H9((t.line-u+1).toString(),f)+" | "+h.str+` +`+l;for(h=U9(t.buffer,n[s],i[s],t.position,d),l+=Gi.repeat(" ",e.indent)+H9((t.line+1).toString(),f)+" | "+h.str+` +`,l+=Gi.repeat("-",e.indent+f+3+h.pos)+`^ +`,u=1;u<=e.linesAfter&&!(s+u>=i.length);u++)h=U9(t.buffer,n[s+u],i[s+u],t.position-(n[s]-n[s+u]),d),l+=Gi.repeat(" ",e.indent)+H9((t.line+u+1).toString(),f)+" | "+h.str+` +`;return l.replace(/\n$/,"")}function xAe(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}function bAe(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(yAe.indexOf(r)===-1)throw new Ms('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=xAe(e.styleAliases||null),vAe.indexOf(this.kind)===-1)throw new Ms('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}function KQ(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 YAe(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(Gi.isNegativeZero(t))return"-0.0";return r=t.toString(10),WAe.test(r)?r.replace("e",".e"):r}function qAe(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||Gi.isNegativeZero(t))}function KAe(t){return t===null?!1:pZ.exec(t)!==null||mZ.exec(t)!==null}function QAe(t){var e,r,n,i,a,s,l,u=0,h=null,f,d,p;if(e=pZ.exec(t),e===null&&(e=mZ.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 ZAe(t){return t.toISOString()}function e8e(t){return t==="<<"||t===null}function r8e(t){if(t===null)return!1;var e,r,n=0,i=t.length,a=Q9;for(r=0;r64)){if(e<0)return!1;n+=6}return n%8===0}function n8e(t){var e,r,n=t.replace(/[\r\n=]/g,""),i=n.length,a=Q9,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 i8e(t){var e="",r=0,n,i,a=t.length,s=Q9;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 a8e(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}function c8e(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 _8e(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||gZ,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 kZ(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 Ms(e,r)}function Qt(t,e){throw kZ(t,e)}function K5(t,e){t.onWarning&&t.onWarning.call(null,kZ(t,e))}function jh(t,e,r,n){var i,a,s,l;if(e1&&(t.result+=Gi.repeat(` +`,e-1))}function L8e(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),Is(m)||wm(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),Is(i)||r&&wm(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),Is(i)||r&&wm(i))break}else if(m===35){if(n=t.input.charCodeAt(t.position-1),Is(n))break}else{if(t.position===t.lineStart&&J5(t)||r&&wm(m))break;if(Ac(m))if(u=t.line,h=t.lineStart,f=t.lineIndent,Di(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&&(jh(t,a,s,!1),J9(t,t.line-u),a=s=t.position,l=!1),Fd(m)||(s=t.position+1),m=t.input.charCodeAt(++t.position)}return jh(t,a,s,!1),t.result?!0:(t.kind=d,t.result=p,!1)}function D8e(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(jh(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 Ac(r)?(jh(t,n,i,!0),J9(t,Di(t,!1,e)),n=i=t.position):t.position===t.lineStart&&J5(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 N8e(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 jh(t,r,t.position,!0),t.position++,!0;if(l===92){if(jh(t,r,t.position,!0),l=t.input.charCodeAt(++t.position),Ac(l))Di(t,!1,e);else if(l<256&&wZ[l])t.result+=TZ[l],t.position++;else if((s=S8e(l))>0){for(i=s,a=0;i>0;i--)l=t.input.charCodeAt(++t.position),(s=E8e(l))>=0?a=(a<<4)+s:Qt(t,"expected hexadecimal character");t.result+=A8e(a),t.position++}else Qt(t,"unknown escape sequence");r=n=t.position}else Ac(l)?(jh(t,r,n,!0),J9(t,Di(t,!1,e)),r=n=t.position):t.position===t.lineStart&&J5(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 R8e(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(Di(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),Is(h)&&(d=p=!0,t.position++,Di(t,!0,e))),n=t.line,i=t.lineStart,a=t.position,km(t,e,X5,!1,!0),v=t.tag,y=t.result,Di(t,!0,e),b=t.input.charCodeAt(t.position),(p||t.line===n)&&b===58&&(d=!0,b=t.input.charCodeAt(++t.position),Di(t,!0,e),km(t,e,X5,!1,!0),x=t.result),m?Tm(t,l,g,v,y,x,n,i,a):d?l.push(Tm(t,null,g,v,y,x,n,i,a)):l.push(y),Di(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 M8e(t,e){var r,n,i=W9,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)W9===i?i=d===43?QQ:b8e:Qt(t,"repeat of a chomping mode identifier");else if((f=C8e(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(Fd(d)){do d=t.input.charCodeAt(++t.position);while(Fd(d));if(d===35)do d=t.input.charCodeAt(++t.position);while(!Ac(d)&&d!==0)}for(;d!==0;){for(Z9(t),t.lineIndent=0,d=t.input.charCodeAt(t.position);(!s||t.lineIndentl&&(l=t.lineIndent),Ac(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),km(t,e,j5,!0,i)&&(v?g=t.result:y=t.result),v||(Tm(t,d,p,m,g,y,s,l,u),m=g=y=null),Di(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 F8e(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&&(Di(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&&!Is(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(;Fd(s);)s=t.input.charCodeAt(++t.position);if(s===35){do s=t.input.charCodeAt(++t.position);while(s!==0&&!Ac(s));break}if(Ac(s))break;for(r=t.position;s!==0&&!Is(s);)s=t.input.charCodeAt(++t.position);i.push(t.input.slice(r,t.position))}s!==0&&Z9(t),Kh.call(eZ,n)?eZ[n](t,n,i):K5(t,'unknown document directive "'+n+'"')}if(Di(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,Di(t,!0,-1)):a&&Qt(t,"directives end mark is expected"),km(t,t.lineIndent-1,j5,!1,!0),Di(t,!0,-1),t.checkLineBreaks&&T8e.test(t.input.slice(e,t.position))&&K5(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&J5(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,Di(t,!0,-1));return}if(t.position"u"&&(r=e,e=null);var n=EZ(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 MZ(t){var e=/^\n* /;return e.test(t)}function p_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=f_e(Iv(t,0))&&d_e(Iv(t,t.length-1));if(e||s)for(u=0;u=65536?u+=2:u++){if(h=Iv(t,u),!Fv(h))return bm;y=y&&aZ(h,f,l),f=h}else{for(u=0;u=65536?u+=2:u++){if(h=Iv(t,u),h===Pv)d=!0,m&&(p=p||u-g-1>n&&t[g+1]!==" ",g=u);else if(!Fv(h))return bm;y=y&&aZ(h,f,l),f=h}p=p||m&&u-g-1>n&&t[g+1]!==" "}return!d&&!p?y&&!s&&!i(t)?IZ:a===Bv?bm:j9:r>9&&MZ(t)?bm:s?a===Bv?bm:j9:p?PZ:OZ}function m_e(t,e,r,n,i){t.dump=function(){if(e.length===0)return t.quotingType===Bv?'""':"''";if(!t.noCompatMode&&(a_e.indexOf(e)!==-1||s_e.test(e)))return t.quotingType===Bv?'"'+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 h_e(t,h)}switch(o(u,"testAmbiguity"),p_e(e,l,t.indent,s,u,t.quotingType,t.forceQuotes&&!n,i)){case IZ:return e;case j9:return"'"+e.replace(/'/g,"''")+"'";case OZ:return"|"+sZ(e,t.indent)+oZ(nZ(e,a));case PZ:return">"+sZ(e,t.indent)+oZ(nZ(g_e(e,s),a));case bm:return'"'+y_e(e)+'"';default:throw new Ms("impossible error: invalid scalar style")}}()}function sZ(t,e){var r=MZ(t)?String(e):"",n=t[t.length-1]===` +`,i=n&&(t[t.length-2]===` +`||t===` +`),a=i?"+":n?"":"-";return r+a+` +`}function oZ(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,lZ(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!==""?` +`:"")+lZ(u,e),i=a}return n}function lZ(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 y_e(t){for(var e="",r=0,n,i=0;i=65536?i+=2:i++)r=Iv(t,i),n=Fa[r],!n&&Fv(r)?(e+=t[i],r>=65536&&(e+=t[i+1])):e+=n||l_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"&&Pu(t,e,null,!1,!1))&&(n!==""&&(n+=","+(t.condenseFlow?"":" ")),n+=t.dump);t.tag=i,t.dump="["+n+"]"}function cZ(t,e,r,n){var i="",a=t.tag,s,l,u;for(s=0,l=r.length;s"u"&&Pu(t,e+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=X9(t,e)),t.dump&&Pv===t.dump.charCodeAt(0)?i+="-":i+="- ",i+=t.dump);t.tag=a,t.dump=i||"[]"}function x_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?"":" "),Pu(t,e,h,!1,!1)&&(f+=t.dump,n+=f));t.tag=i,t.dump="{"+n+"}"}function b_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 Ms("sortKeys must be a boolean or a function");for(l=0,u=s.length;l1024,d&&(t.dump&&Pv===t.dump.charCodeAt(0)?p+="?":p+="? "),p+=t.dump,d&&(p+=X9(t,e)),Pu(t,e+1,f,!0,d)&&(t.dump&&Pv===t.dump.charCodeAt(0)?p+=":":p+=": ",p+=t.dump,i+=p));t.tag=a,t.dump=i||"{}"}function uZ(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 Pu(t,e,r,n,i,a,s){t.tag=null,t.dump=r,uZ(t,r,!1)||uZ(t,r,!0);var l=CZ.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?(b_e(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(x_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?cZ(t,e-1,t.dump,i):cZ(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!=="?"&&m_e(t,t.dump,e,a,u);else{if(l==="[object Undefined]")return!1;if(t.skipInvalid)return!1;throw new Ms("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(K9(t,r,n),i=0,a=n.length;i{"use strict";o(hZ,"isNothing");o(iAe,"isObject");o(aAe,"toArray");o(sAe,"extend");o(oAe,"repeat");o(lAe,"isNegativeZero");cAe=hZ,uAe=iAe,hAe=aAe,fAe=oAe,dAe=lAe,pAe=sAe,Gi={isNothing:cAe,isObject:uAe,toArray:hAe,repeat:fAe,isNegativeZero:dAe,extend:pAe};o(fZ,"formatError");o(Ov,"YAMLException$1");Ov.prototype=Object.create(Error.prototype);Ov.prototype.constructor=Ov;Ov.prototype.toString=o(function(e){return this.name+": "+fZ(this,e)},"toString");Ms=Ov;o(U9,"getLine");o(H9,"padStart");o(mAe,"makeSnippet");gAe=mAe,yAe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],vAe=["scalar","sequence","mapping"];o(xAe,"compileStyleAliases");o(bAe,"Type$1");Ba=bAe;o(KQ,"compileList");o(wAe,"compileMap");o(Y9,"Schema$1");Y9.prototype.extend=o(function(e){var r=[],n=[];if(e instanceof Ba)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 Ms("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(a){if(!(a instanceof Ba))throw new Ms("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new Ms("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 Ms("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 Ba))throw new Ms("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(Y9.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=KQ(i,"implicit"),i.compiledExplicit=KQ(i,"explicit"),i.compiledTypeMap=wAe(i.compiledImplicit,i.compiledExplicit),i},"extend");TAe=Y9,kAe=new Ba("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(t){return t!==null?t:""},"construct")}),EAe=new Ba("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(t){return t!==null?t:[]},"construct")}),SAe=new Ba("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(t){return t!==null?t:{}},"construct")}),CAe=new TAe({explicit:[kAe,EAe,SAe]});o(AAe,"resolveYamlNull");o(_Ae,"constructYamlNull");o(LAe,"isNull");DAe=new Ba("tag:yaml.org,2002:null",{kind:"scalar",resolve:AAe,construct:_Ae,predicate:LAe,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(NAe,"resolveYamlBoolean");o(RAe,"constructYamlBoolean");o(MAe,"isBoolean");IAe=new Ba("tag:yaml.org,2002:bool",{kind:"scalar",resolve:NAe,construct:RAe,predicate:MAe,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(OAe,"isHexCode");o(PAe,"isOctCode");o(BAe,"isDecCode");o(FAe,"resolveYamlInteger");o(zAe,"constructYamlInteger");o(GAe,"isInteger");$Ae=new Ba("tag:yaml.org,2002:int",{kind:"scalar",resolve:FAe,construct:zAe,predicate:GAe,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"]}}),VAe=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");o(UAe,"resolveYamlFloat");o(HAe,"constructYamlFloat");WAe=/^[-+]?[0-9]+e/;o(YAe,"representYamlFloat");o(qAe,"isFloat");XAe=new Ba("tag:yaml.org,2002:float",{kind:"scalar",resolve:UAe,construct:HAe,predicate:qAe,represent:YAe,defaultStyle:"lowercase"}),dZ=CAe.extend({implicit:[DAe,IAe,$Ae,XAe]}),jAe=dZ,pZ=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),mZ=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(KAe,"resolveYamlTimestamp");o(QAe,"constructYamlTimestamp");o(ZAe,"representYamlTimestamp");JAe=new Ba("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:KAe,construct:QAe,instanceOf:Date,represent:ZAe});o(e8e,"resolveYamlMerge");t8e=new Ba("tag:yaml.org,2002:merge",{kind:"scalar",resolve:e8e}),Q9=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;o(r8e,"resolveYamlBinary");o(n8e,"constructYamlBinary");o(i8e,"representYamlBinary");o(a8e,"isBinary");s8e=new Ba("tag:yaml.org,2002:binary",{kind:"scalar",resolve:r8e,construct:n8e,predicate:a8e,represent:i8e}),o8e=Object.prototype.hasOwnProperty,l8e=Object.prototype.toString;o(c8e,"resolveYamlOmap");o(u8e,"constructYamlOmap");h8e=new Ba("tag:yaml.org,2002:omap",{kind:"sequence",resolve:c8e,construct:u8e}),f8e=Object.prototype.toString;o(d8e,"resolveYamlPairs");o(p8e,"constructYamlPairs");m8e=new Ba("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:d8e,construct:p8e}),g8e=Object.prototype.hasOwnProperty;o(y8e,"resolveYamlSet");o(v8e,"constructYamlSet");x8e=new Ba("tag:yaml.org,2002:set",{kind:"mapping",resolve:y8e,construct:v8e}),gZ=jAe.extend({implicit:[JAe,t8e],explicit:[s8e,h8e,m8e,x8e]}),Kh=Object.prototype.hasOwnProperty,X5=1,yZ=2,vZ=3,j5=4,W9=1,b8e=2,QQ=3,w8e=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,T8e=/[\x85\u2028\u2029]/,k8e=/[,\[\]\{\}]/,xZ=/^(?:!|!!|![a-z\-]+!)$/i,bZ=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;o(ZQ,"_class");o(Ac,"is_EOL");o(Fd,"is_WHITE_SPACE");o(Is,"is_WS_OR_EOL");o(wm,"is_FLOW_INDICATOR");o(E8e,"fromHexCode");o(S8e,"escapedHexLen");o(C8e,"fromDecimalCode");o(JQ,"simpleEscapeSequence");o(A8e,"charFromCodepoint");wZ=new Array(256),TZ=new Array(256);for(Bd=0;Bd<256;Bd++)wZ[Bd]=JQ(Bd)?1:0,TZ[Bd]=JQ(Bd);o(_8e,"State$1");o(kZ,"generateError");o(Qt,"throwError");o(K5,"throwWarning");eZ={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&&K5(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],xZ.test(i)||Qt(e,"ill-formed tag handle (first argument) of the TAG directive"),Kh.call(e.tagMap,i)&&Qt(e,'there is a previously declared suffix for "'+i+'" tag handle'),bZ.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(jh,"captureSegment");o(tZ,"mergeMappings");o(Tm,"storeMappingPair");o(Z9,"readLineBreak");o(Di,"skipSeparationSpace");o(J5,"testDocumentSeparator");o(J9,"writeFoldedLines");o(L8e,"readPlainScalar");o(D8e,"readSingleQuotedScalar");o(N8e,"readDoubleQuotedScalar");o(R8e,"readFlowCollection");o(M8e,"readBlockScalar");o(rZ,"readBlockSequence");o(I8e,"readBlockMapping");o(O8e,"readTagProperty");o(P8e,"readAnchorProperty");o(B8e,"readAlias");o(km,"composeNode");o(F8e,"readDocument");o(EZ,"loadDocuments");o(z8e,"loadAll$1");o(G8e,"load$1");$8e=z8e,V8e=G8e,SZ={loadAll:$8e,load:V8e},CZ=Object.prototype.toString,AZ=Object.prototype.hasOwnProperty,eL=65279,U8e=9,Pv=10,H8e=13,W8e=32,Y8e=33,q8e=34,q9=35,X8e=37,j8e=38,K8e=39,Q8e=42,_Z=44,Z8e=45,Q5=58,J8e=61,e_e=62,t_e=63,r_e=64,LZ=91,DZ=93,n_e=96,NZ=123,i_e=124,RZ=125,Fa={};Fa[0]="\\0";Fa[7]="\\a";Fa[8]="\\b";Fa[9]="\\t";Fa[10]="\\n";Fa[11]="\\v";Fa[12]="\\f";Fa[13]="\\r";Fa[27]="\\e";Fa[34]='\\"';Fa[92]="\\\\";Fa[133]="\\N";Fa[160]="\\_";Fa[8232]="\\L";Fa[8233]="\\P";a_e=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],s_e=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;o(o_e,"compileStyleMap");o(l_e,"encodeHex");c_e=1,Bv=2;o(u_e,"State");o(nZ,"indentString");o(X9,"generateNextLine");o(h_e,"testImplicitResolving");o(Z5,"isWhitespace");o(Fv,"isPrintable");o(iZ,"isNsCharOrWhitespace");o(aZ,"isPlainSafe");o(f_e,"isPlainSafeFirst");o(d_e,"isPlainSafeLast");o(Iv,"codePointAt");o(MZ,"needIndentIndicator");IZ=1,j9=2,OZ=3,PZ=4,bm=5;o(p_e,"chooseScalarStyle");o(m_e,"writeScalar");o(sZ,"blockHeader");o(oZ,"dropEndingNewline");o(g_e,"foldString");o(lZ,"foldLine");o(y_e,"escapeString");o(v_e,"writeFlowSequence");o(cZ,"writeBlockSequence");o(x_e,"writeFlowMapping");o(b_e,"writeBlockMapping");o(uZ,"detectType");o(Pu,"writeNode");o(w_e,"getDuplicateReferences");o(K9,"inspectNode");o(T_e,"dump$1");k_e=T_e,E_e={dump:k_e};o(tL,"renamed");Em=dZ,Sm=SZ.load,PDt=SZ.loadAll,BDt=E_e.dump,FDt=tL("safeLoad","load"),zDt=tL("safeLoadAll","loadAll"),GDt=tL("safeDump","dump")});function iL(t){let e=[];for(let r of t){let n=Gv.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 S_e,BZ,Cm,Qh,Os,Gv,Bu,aL,sL,tw,nL,Yo,rw,nw,iw,aw,C_e,A_e,__e,L_e,D_e,N_e,R_e,oL,M_e,I_e,O_e,FZ,P_e,B_e,lL,zZ,GZ,F_e,$Z,z_e,G_e,$_e,V_e,U_e,zv,VZ,UZ,H_e,W_e,HZ,Y_e,q_e,X_e,j_e,K_e,WZ,YZ,Q_e,Z_e,J_e,e9e,t9e,r9e,sw,cL=M(()=>{"use strict";pr();hr();Vt();fr();V9();ut();ew();Ai();S_e="flowchart-",BZ=0,Cm=pe(),Qh=new Map,Os=[],Gv=new Map,Bu=[],aL=new Map,sL=new Map,tw=0,nL=!0,nw=[],iw=o(t=>qe.sanitizeText(t,Cm),"sanitizeText"),aw=o(function(t){for(let e of Qh.values())if(e.id===t)return e.domId;return t},"lookUpDomId"),C_e=o(function(t,e,r,n,i,a,s={},l){if(!t||t.trim().length===0)return;let u,h=Qh.get(t);if(h===void 0&&(h={id:t,labelType:"text",domId:S_e+t+"-"+BZ,styles:[],classes:[]},Qh.set(t,h)),BZ++,e!==void 0?(Cm=pe(),u=iw(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=Sm(f,{schema:Em});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(!jQ(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"),A_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=iw(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),Os.length<(Cm.maxEdges??500))Y.info("Pushing edge..."),Os.push(a);else throw new Error(`Edge limit exceeded. ${Os.length} edges found, but the limit is ${Cm.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"),__e=o(function(t,e,r){Y.info("addLink",t,e,r);for(let n of t)for(let i of e)A_e(n,i,r)},"addLink"),L_e=o(function(t,e){t.forEach(function(r){r==="default"?Os.defaultInterpolate=e:Os[r].interpolate=e})},"updateLinkInterpolate"),D_e=o(function(t,e){t.forEach(function(r){if(typeof r=="number"&&r>=Os.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${Os.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?Os.defaultStyle=e:(Os[r].style=e,(Os[r]?.style?.length??0)>0&&!Os[r]?.style?.some(n=>n?.startsWith("fill"))&&Os[r]?.style?.push("fill:none"))})},"updateLink"),N_e=o(function(t,e){t.split(",").forEach(function(r){let n=Gv.get(r);n===void 0&&(n={id:r,styles:[],textStyles:[]},Gv.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"),R_e=o(function(t){Yo=t,/.*/.exec(Yo)&&(Yo="LR"),/.*v/.exec(Yo)&&(Yo="TB"),Yo==="TD"&&(Yo="TB")},"setDirection"),oL=o(function(t,e){for(let r of t.split(",")){let n=Qh.get(r);n&&n.classes.push(e);let i=aL.get(r);i&&i.classes.push(e)}},"setClass"),M_e=o(function(t,e){if(e!==void 0){e=iw(e);for(let r of t.split(","))sL.set(rw==="gen-1"?aw(r):r,e)}},"setTooltip"),I_e=o(function(t,e,r){let n=aw(t);if(pe().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),Ve(this).classed("hover",!1)})},"setupToolTips");nw.push($Z);z_e=o(function(t="gen-1"){Qh=new Map,Gv=new Map,Os=[],nw=[$Z],Bu=[],aL=new Map,tw=0,sL=new Map,nL=!0,rw=t,Cm=pe(),Lr()},"clear"),G_e=o(t=>{rw=t||"gen-2"},"setGen"),$_e=o(function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},"defaultStyle"),V_e=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(rw==="gen-1")for(let h=0;h2e3)return{result:!1,count:0};if(VZ[zv]=e,Bu[e].id===t)return{result:!0,count:0};let n=0,i=1;for(;n=0){let s=UZ(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"),H_e=o(function(t){return VZ[t]},"getDepthFirstPos"),W_e=o(function(){zv=-1,Bu.length>0&&UZ("none",Bu.length-1)},"indexNodes"),HZ=o(function(){return Bu},"getSubGraphs"),Y_e=o(()=>nL?(nL=!1,!0):!1,"firstGraph"),q_e=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"),X_e=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=X_e(".",r);return s&&(i="dotted",a=s),{type:n,stroke:i,length:a}},"destructEndLink"),K_e=o((t,e)=>{let r=j_e(t),n;if(e){if(n=q_e(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"),WZ=o((t,e)=>{for(let r of t)if(r.nodes.includes(e))return!0;return!1},"exists"),YZ=o((t,e)=>{let r=[];return t.nodes.forEach((n,i)=>{WZ(e,n)||r.push(t.nodes[i])}),{nodes:r}},"makeUniq"),Q_e={firstGraph:Y_e},Z_e=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"),J_e=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"),t9e=o((t,e,r,n,i,a)=>{let s=r.get(t.id),l=n.get(t.id)??!1,u=J_e(e,t.id);if(u)u.cssStyles=t.styles,u.cssCompiledStyles=iL(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:iL(["default","node",...t.classes]),cssClasses:"default "+t.classes.join(" "),dir:t.dir,domId:t.domId,look:a,link:t.link,linkTarget:t.linkTarget,tooltip:FZ(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:Z_e(t)})}},"addNodeFromVertex");o(iL,"getCompiledStyles");r9e=o(()=>{let t=pe(),e=[],r=[],n=HZ(),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:iL(h.classes),cssClasses:h.classes.join(" "),shape:"rect",dir:h.dir,isGroup:!0,look:t.look})}zZ().forEach(u=>{t9e(u,e,i,a,t,t.look||"classic")});let l=GZ();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:C5(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"),sw={defaultConfig:o(()=>B4.flowchart,"defaultConfig"),setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,getData:r9e,setAccDescription:Fr,addVertex:C_e,lookUpDomId:aw,addLink:__e,updateLinkInterpolate:L_e,updateLink:D_e,addClass:N_e,setDirection:R_e,setClass:oL,setTooltip:M_e,getTooltip:FZ,setClickEvent:P_e,setLink:O_e,bindFunctions:B_e,getDirection:lL,getVertices:zZ,getEdges:GZ,getClasses:F_e,clear:z_e,setGen:G_e,defaultStyle:$_e,addSubGraph:V_e,getDepthFirstPos:H_e,indexNodes:W_e,getSubGraphs:HZ,destructLink:K_e,lex:Q_e,exists:WZ,makeUniq:YZ,setDiagramTitle:cn,getDiagramTitle:Jr}});var Am,ow=M(()=>{"use strict";pr();Am=o((t,e)=>{let r;return e==="sandbox"&&(r=Ve("#i"+t)),(e==="sandbox"?Ve(r.nodes()[0].contentDocument.body):Ve("body")).select(`[id="${t}"]`)},"getDiagramElement")});var Fu,$v=M(()=>{"use strict";Fu=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 qZ,n9e,i9e,a9e,s9e,o9e,l9e,XZ,_m,jZ,lw=M(()=>{"use strict";Vt();fr();ut();$v();pr();jt();Pl();k9();Y5();Xh();Xt();qZ=o(async(t,e)=>{Y.info("Creating subgraph rect for ",e.id,e);let r=pe(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=Ze(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 Li(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0}),y=g.getBBox();if(xr(r.flowchart.htmlLabels)){let L=g.children[0],S=Ve(g);y=L.getBoundingClientRect(),S.attr("width",y.width),S.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=Xe.svg(d),S=Ke(e,{roughness:.7,fill:a,stroke:s,fillWeight:3,seed:i}),A=L.path(Pa(b,w,v,x,0),S);_=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}=Fu(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 Hh(e,L)},{cluster:d,labelBBox:y}},"rect"),n9e=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 Hh(e,l)},{cluster:r,labelBBox:{width:0,height:0}}},"noteGroup"),i9e=o(async(t,e)=>{let r=pe(),{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 Cc(e.label,e.labelStyle,void 0,!0)),g=m.getBBox();if(xr(r.flowchart.htmlLabels)){let A=m.children[0],I=Ve(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=Xe.svg(h),D=e.rx||e.ry?I.path(Pa(_,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 S=L.node().getBBox();return e.height=S.height,e.offsetX=0,e.offsetY=g.height-e.padding/2,e.labelBBox=g,e.intersect=function(A){return Hh(e,A)},{cluster:h,labelBBox:g}},"roundedWithTitle"),a9e=o(async(t,e)=>{Y.info("Creating subgraph rect for ",e.id,e);let r=pe(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=Ze(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 Li(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],S=Ve(g);y=L.getBoundingClientRect(),S.attr("width",y.width),S.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=Xe.svg(d),S=Ke(e,{roughness:.7,fill:a,stroke:s,fillWeight:4,seed:i}),A=L.path(Pa(b,w,v,x,e.rx),S);_=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}=Fu(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 Hh(e,L)},{cluster:d,labelBBox:y}},"kanbanSection"),s9e=o((t,e)=>{let r=pe(),{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=Xe.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 Hh(e,y)},{cluster:s,labelBBox:{}}},"divider"),o9e=qZ,l9e={rect:qZ,squareRect:o9e,roundedWithTitle:i9e,noteGroup:n9e,divider:s9e,kanbanSection:a9e},XZ=new Map,_m=o(async(t,e)=>{let r=e.shape||"rect",n=await l9e[r](t,e);return XZ.set(e.id,n),n},"insertCluster"),jZ=o(()=>{XZ=new Map},"clear")});function cw(t,e){if(t===void 0||e===void 0)return{angle:0,deltaX:0,deltaY:0};t=Wn(t),e=Wn(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 qo,Wn,uw,uL=M(()=>{"use strict";qo={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:4};o(cw,"calculateDeltaAndAngle");Wn=o(t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,"pointTransformer"),uw=o(t=>({x:o(function(e,r,n){let i=0,a=Wn(n[0]).x=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(qo,t.arrowTypeEnd)){let{angle:m,deltaX:g}=cw(n[n.length-1],n[n.length-2]);i=qo[t.arrowTypeEnd]*Math.cos(m)*(g>=0?1:-1)}let s=Math.abs(Wn(e).x-Wn(n[n.length-1]).x),l=Math.abs(Wn(e).y-Wn(n[n.length-1]).y),u=Math.abs(Wn(e).x-Wn(n[0]).x),h=Math.abs(Wn(e).y-Wn(n[0]).y),f=qo[t.arrowTypeStart],d=qo[t.arrowTypeEnd],p=1;if(s0&&l0&&h=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(qo,t.arrowTypeEnd)){let{angle:m,deltaY:g}=cw(n[n.length-1],n[n.length-2]);i=qo[t.arrowTypeEnd]*Math.abs(Math.sin(m))*(g>=0?1:-1)}let s=Math.abs(Wn(e).y-Wn(n[n.length-1]).y),l=Math.abs(Wn(e).x-Wn(n[n.length-1]).x),u=Math.abs(Wn(e).y-Wn(n[0]).y),h=Math.abs(Wn(e).x-Wn(n[0]).x),f=qo[t.arrowTypeStart],d=qo[t.arrowTypeEnd],p=1;if(s0&&l0&&h{"use strict";ut();QZ=o((t,e,r,n,i)=>{e.arrowTypeStart&&KZ(t,"start",e.arrowTypeStart,r,n,i),e.arrowTypeEnd&&KZ(t,"end",e.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),c9e={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},KZ=o((t,e,r,n,i,a)=>{let s=c9e[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 hw(t,e){pe().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}function f9e(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 fw,ya,tJ,Vv,dw,pw,u9e,h9e,JZ,eJ,d9e,mw,hL=M(()=>{"use strict";Vt();fr();ut();Pl();hr();uL();$v();pr();jt();Y5();ZZ();fw=new Map,ya=new Map,tJ=o(()=>{fw.clear(),ya.clear()},"clear"),Vv=o(t=>t?t.reduce((r,n)=>r+";"+n,""):"","getLabelStyles"),dw=o(async(t,e)=>{let r=xr(pe().flowchart.htmlLabels),n=await Li(t,e.label,{style:Vv(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=Ve(n);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}a.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),fw.set(e.id,i),e.width=s.width,e.height=s.height;let l;if(e.startLabelLeft){let u=await Cc(e.startLabelLeft,Vv(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+")"),ya.get(e.id)||ya.set(e.id,{}),ya.get(e.id).startLeft=h,hw(l,e.startLabelLeft)}if(e.startLabelRight){let u=await Cc(e.startLabelRight,Vv(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+")"),ya.get(e.id)||ya.set(e.id,{}),ya.get(e.id).startRight=h,hw(l,e.startLabelRight)}if(e.endLabelLeft){let u=await Cc(e.endLabelLeft,Vv(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),ya.get(e.id)||ya.set(e.id,{}),ya.get(e.id).endLeft=h,hw(l,e.endLabelLeft)}if(e.endLabelRight){let u=await Cc(e.endLabelRight,Vv(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),ya.get(e.id)||ya.set(e.id,{}),ya.get(e.id).endRight=h,hw(l,e.endLabelRight)}return n},"insertEdgeLabel");o(hw,"setTerminalWidth");pw=o((t,e)=>{Y.debug("Moving label abc88 ",t.id,t.label,fw.get(t.id),e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=pe(),{subGraphTitleTotalMargin:i}=Fu(n);if(t.label){let a=fw.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=ya.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=ya.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=ya.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=ya.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"),u9e=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"),h9e=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),!u9e(e,a)&&!i){let s=h9e(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(f9e,"extractCornerPoints");eJ=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"),d9e=o(function(t){let{cornerPointPositions:e}=f9e(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"),mw=o(function(t,e,r,n,i,a,s){let{handDrawnSeed:l}=pe(),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=JZ(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=JZ(u.reverse(),r.get(e.fromCluster).node).reverse(),h=!0);let p=u.filter(L=>!Number.isNaN(L.y));p=d9e(p);let m=Po;e.curve&&(m=e.curve);let{x:g,y}=uw(e),v=ns().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=Xe.svg(t);Object.assign([],p);let S=L.path(w,{roughness:.3,seed:l});x+=" transition",b=Ve(S).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,S)=>L+";"+S,""):"");let T="";(pe().flowchart.arrowMarkerAbsolute||pe().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),QZ(b,e,T,s,n);let E={};return h&&(E.updatedPath=u),E.originalPath=e.points,E},"insertEdge")});var p9e,m9e,g9e,y9e,v9e,x9e,b9e,w9e,T9e,k9e,E9e,gw,fL=M(()=>{"use strict";ut();p9e=o((t,e,r,n)=>{e.forEach(i=>{E9e[i](t,r,n)})},"insertMarkers"),m9e=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"),y9e=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"),x9e=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"),b9e=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"),T9e=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"),k9e=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"),E9e={extension:m9e,composition:g9e,aggregation:y9e,dependency:v9e,lollipop:x9e,point:b9e,circle:w9e,cross:T9e,barb:k9e},gw=p9e});async function Lm(t,e,r){let n,i;e.shape==="rect"&&(e.rx&&e.ry?e.shape="roundedRect":e.shape="squareRect");let a=e.shape?$9[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),yw.set(e.id,n),e.haveCallback&&n.attr("class",n.attr("class")+" clickable"),n}var yw,rJ,nJ,Uv,vw=M(()=>{"use strict";ut();V9();yw=new Map;o(Lm,"insertNode");rJ=o((t,e)=>{yw.set(e.id,t)},"setNodeElem"),nJ=o(()=>{yw.clear()},"clear"),Uv=o(t=>{let e=yw.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 iJ,aJ=M(()=>{"use strict";Za();fr();ut();lw();hL();fL();vw();Ot();hr();iJ={common:qe,getConfig:Cr,insertCluster:_m,insertEdge:mw,insertEdgeLabel:dw,insertMarkers:gw,insertNode:Lm,interpolateToCurve:J_,labelHelper:st,log:Y,positionEdgeLabel:pw}});function C9e(t){return typeof t=="symbol"||ei(t)&&ga(t)==S9e}var S9e,co,zd=M(()=>{"use strict";Lu();zo();S9e="[object Symbol]";o(C9e,"isSymbol");co=C9e});function A9e(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r{"use strict";o(A9e,"arrayMap");Ps=A9e});function lJ(t){if(typeof t=="string")return t;if(Dt(t))return Ps(t,lJ)+"";if(co(t))return oJ?oJ.call(t):"";var e=t+"";return e=="0"&&1/t==-_9e?"-0":e}var _9e,sJ,oJ,cJ,uJ=M(()=>{"use strict";Cd();Gd();Hn();zd();_9e=1/0,sJ=ia?ia.prototype:void 0,oJ=sJ?sJ.toString:void 0;o(lJ,"baseToString");cJ=lJ});function D9e(t){for(var e=t.length;e--&&L9e.test(t.charAt(e)););return e}var L9e,hJ,fJ=M(()=>{"use strict";L9e=/\s/;o(D9e,"trimmedEndIndex");hJ=D9e});function R9e(t){return t&&t.slice(0,hJ(t)+1).replace(N9e,"")}var N9e,dJ,pJ=M(()=>{"use strict";fJ();N9e=/^\s+/;o(R9e,"baseTrim");dJ=R9e});function B9e(t){if(typeof t=="number")return t;if(co(t))return mJ;if(xn(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=xn(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=dJ(t);var r=I9e.test(t);return r||O9e.test(t)?P9e(t.slice(2),r?2:8):M9e.test(t)?mJ:+t}var mJ,M9e,I9e,O9e,P9e,gJ,yJ=M(()=>{"use strict";pJ();io();zd();mJ=NaN,M9e=/^[-+]0x[0-9a-f]+$/i,I9e=/^0b[01]+$/i,O9e=/^0o[0-7]+$/i,P9e=parseInt;o(B9e,"toNumber");gJ=B9e});function z9e(t){if(!t)return t===0?t:0;if(t=gJ(t),t===vJ||t===-vJ){var e=t<0?-1:1;return e*F9e}return t===t?t:0}var vJ,F9e,Dm,dL=M(()=>{"use strict";yJ();vJ=1/0,F9e=17976931348623157e292;o(z9e,"toFinite");Dm=z9e});function G9e(t){var e=Dm(t),r=e%1;return e===e?r?e-r:e:0}var _c,Nm=M(()=>{"use strict";dL();o(G9e,"toInteger");_c=G9e});var $9e,xw,xJ=M(()=>{"use strict";Oh();Bo();$9e=As(oi,"WeakMap"),xw=$9e});function V9e(){}var ti,pL=M(()=>{"use strict";o(V9e,"noop");ti=V9e});function U9e(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(U9e,"arrayEach");bw=U9e});function H9e(t,e,r,n){for(var i=t.length,a=r+(n?1:-1);n?a--:++a{"use strict";o(H9e,"baseFindIndex");ww=H9e});function W9e(t){return t!==t}var bJ,wJ=M(()=>{"use strict";o(W9e,"baseIsNaN");bJ=W9e});function Y9e(t,e,r){for(var n=r-1,i=t.length;++n{"use strict";o(Y9e,"strictIndexOf");TJ=Y9e});function q9e(t,e,r){return e===e?TJ(t,e,r):ww(t,bJ,r)}var Rm,Tw=M(()=>{"use strict";gL();wJ();kJ();o(q9e,"baseIndexOf");Rm=q9e});function X9e(t,e){var r=t==null?0:t.length;return!!r&&Rm(t,e,0)>-1}var kw,yL=M(()=>{"use strict";Tw();o(X9e,"arrayIncludes");kw=X9e});var j9e,EJ,SJ=M(()=>{"use strict";G_();j9e=m5(Object.keys,Object),EJ=j9e});function Z9e(t){if(!Tc(t))return EJ(t);var e=[];for(var r in Object(t))Q9e.call(t,r)&&r!="constructor"&&e.push(r);return e}var K9e,Q9e,Mm,Ew=M(()=>{"use strict";cm();SJ();K9e=Object.prototype,Q9e=K9e.hasOwnProperty;o(Z9e,"baseKeys");Mm=Z9e});function J9e(t){return li(t)?b5(t):Mm(t)}var Gr,Lc=M(()=>{"use strict";W_();Ew();Go();o(J9e,"keys");Gr=J9e});var eLe,tLe,rLe,va,CJ=M(()=>{"use strict";dm();Nd();j_();Go();cm();Lc();eLe=Object.prototype,tLe=eLe.hasOwnProperty,rLe=k5(function(t,e){if(Tc(e)||li(e)){Uo(e,Gr(e),t);return}for(var r in e)tLe.call(e,r)&&kc(t,r,e[r])}),va=rLe});function aLe(t,e){if(Dt(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||co(t)?!0:iLe.test(t)||!nLe.test(t)||e!=null&&t in Object(e)}var nLe,iLe,Im,Sw=M(()=>{"use strict";Hn();zd();nLe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,iLe=/^\w*$/;o(aLe,"isKey");Im=aLe});function oLe(t){var e=tm(t,function(n){return r.size===sLe&&r.clear(),n}),r=e.cache;return e}var sLe,AJ,_J=M(()=>{"use strict";M_();sLe=500;o(oLe,"memoizeCapped");AJ=oLe});var lLe,cLe,uLe,LJ,DJ=M(()=>{"use strict";_J();lLe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,cLe=/\\(\\)?/g,uLe=AJ(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(lLe,function(r,n,i,a){e.push(i?a.replace(cLe,"$1"):n||r)}),e}),LJ=uLe});function hLe(t){return t==null?"":cJ(t)}var Cw,vL=M(()=>{"use strict";uJ();o(hLe,"toString");Cw=hLe});function fLe(t,e){return Dt(t)?t:Im(t,e)?[t]:LJ(Cw(t))}var Zh,Hv=M(()=>{"use strict";Hn();Sw();DJ();vL();o(fLe,"castPath");Zh=fLe});function pLe(t){if(typeof t=="string"||co(t))return t;var e=t+"";return e=="0"&&1/t==-dLe?"-0":e}var dLe,Dc,Om=M(()=>{"use strict";zd();dLe=1/0;o(pLe,"toKey");Dc=pLe});function mLe(t,e){e=Zh(e,t);for(var r=0,n=e.length;t!=null&&r{"use strict";Hv();Om();o(mLe,"baseGet");Jh=mLe});function gLe(t,e,r){var n=t==null?void 0:Jh(t,e);return n===void 0?r:n}var NJ,RJ=M(()=>{"use strict";Wv();o(gLe,"get");NJ=gLe});function yLe(t,e){for(var r=-1,n=e.length,i=t.length;++r{"use strict";o(yLe,"arrayPush");Pm=yLe});function vLe(t){return Dt(t)||Ml(t)||!!(MJ&&t&&t[MJ])}var MJ,IJ,OJ=M(()=>{"use strict";Cd();um();Hn();MJ=ia?ia.isConcatSpreadable:void 0;o(vLe,"isFlattenable");IJ=vLe});function PJ(t,e,r,n,i){var a=-1,s=t.length;for(r||(r=IJ),i||(i=[]);++a0&&r(l)?e>1?PJ(l,e-1,r,n,i):Pm(i,l):n||(i[i.length]=l)}return i}var Nc,Bm=M(()=>{"use strict";Aw();OJ();o(PJ,"baseFlatten");Nc=PJ});function xLe(t){var e=t==null?0:t.length;return e?Nc(t,1):[]}var Wr,_w=M(()=>{"use strict";Bm();o(xLe,"flatten");Wr=xLe});function bLe(t){return T5(w5(t,void 0,Wr),t+"")}var BJ,FJ=M(()=>{"use strict";_w();Y_();X_();o(bLe,"flatRest");BJ=bLe});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");Lw=wLe});function DLe(t){return LLe.test(t)}var TLe,kLe,ELe,SLe,CLe,ALe,_Le,LLe,zJ,GJ=M(()=>{"use strict";TLe="\\ud800-\\udfff",kLe="\\u0300-\\u036f",ELe="\\ufe20-\\ufe2f",SLe="\\u20d0-\\u20ff",CLe=kLe+ELe+SLe,ALe="\\ufe0e\\ufe0f",_Le="\\u200d",LLe=RegExp("["+_Le+TLe+CLe+ALe+"]");o(DLe,"hasUnicode");zJ=DLe});function NLe(t,e,r,n){var i=-1,a=t==null?0:t.length;for(n&&a&&(r=t[++i]);++i{"use strict";o(NLe,"arrayReduce");$J=NLe});function RLe(t,e){return t&&Uo(e,Gr(e),t)}var UJ,HJ=M(()=>{"use strict";Nd();Lc();o(RLe,"baseAssign");UJ=RLe});function MLe(t,e){return t&&Uo(e,_s(e),t)}var WJ,YJ=M(()=>{"use strict";Nd();Vh();o(MLe,"baseAssignIn");WJ=MLe});function ILe(t,e){for(var r=-1,n=t==null?0:t.length,i=0,a=[];++r{"use strict";o(ILe,"arrayFilter");Fm=ILe});function OLe(){return[]}var Nw,bL=M(()=>{"use strict";o(OLe,"stubArray");Nw=OLe});var PLe,BLe,qJ,FLe,zm,Rw=M(()=>{"use strict";Dw();bL();PLe=Object.prototype,BLe=PLe.propertyIsEnumerable,qJ=Object.getOwnPropertySymbols,FLe=qJ?function(t){return t==null?[]:(t=Object(t),Fm(qJ(t),function(e){return BLe.call(t,e)}))}:Nw,zm=FLe});function zLe(t,e){return Uo(t,zm(t),e)}var XJ,jJ=M(()=>{"use strict";Nd();Rw();o(zLe,"copySymbols");XJ=zLe});var GLe,$Le,Mw,wL=M(()=>{"use strict";Aw();g5();Rw();bL();GLe=Object.getOwnPropertySymbols,$Le=GLe?function(t){for(var e=[];t;)Pm(e,zm(t)),t=lm(t);return e}:Nw,Mw=$Le});function VLe(t,e){return Uo(t,Mw(t),e)}var KJ,QJ=M(()=>{"use strict";Nd();wL();o(VLe,"copySymbolsIn");KJ=VLe});function ULe(t,e,r){var n=e(t);return Dt(t)?n:Pm(n,r(t))}var Iw,TL=M(()=>{"use strict";Aw();Hn();o(ULe,"baseGetAllKeys");Iw=ULe});function HLe(t){return Iw(t,Gr,zm)}var Yv,kL=M(()=>{"use strict";TL();Rw();Lc();o(HLe,"getAllKeys");Yv=HLe});function WLe(t){return Iw(t,_s,Mw)}var Ow,EL=M(()=>{"use strict";TL();wL();Vh();o(WLe,"getAllKeysIn");Ow=WLe});var YLe,Pw,ZJ=M(()=>{"use strict";Oh();Bo();YLe=As(oi,"DataView"),Pw=YLe});var qLe,Bw,JJ=M(()=>{"use strict";Oh();Bo();qLe=As(oi,"Promise"),Bw=qLe});var XLe,ef,SL=M(()=>{"use strict";Oh();Bo();XLe=As(oi,"Set"),ef=XLe});var eee,jLe,tee,ree,nee,iee,KLe,QLe,ZLe,JLe,eDe,$d,uo,Vd=M(()=>{"use strict";ZJ();l5();JJ();SL();xJ();Lu();D_();eee="[object Map]",jLe="[object Object]",tee="[object Promise]",ree="[object Set]",nee="[object WeakMap]",iee="[object DataView]",KLe=Du(Pw),QLe=Du(Fh),ZLe=Du(Bw),JLe=Du(ef),eDe=Du(xw),$d=ga;(Pw&&$d(new Pw(new ArrayBuffer(1)))!=iee||Fh&&$d(new Fh)!=eee||Bw&&$d(Bw.resolve())!=tee||ef&&$d(new ef)!=ree||xw&&$d(new xw)!=nee)&&($d=o(function(t){var e=ga(t),r=e==jLe?t.constructor:void 0,n=r?Du(r):"";if(n)switch(n){case KLe:return iee;case QLe:return eee;case ZLe:return tee;case JLe:return ree;case eDe:return nee}return e},"getTag"));uo=$d});function nDe(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&rDe.call(t,"index")&&(r.index=t.index,r.input=t.input),r}var tDe,rDe,aee,see=M(()=>{"use strict";tDe=Object.prototype,rDe=tDe.hasOwnProperty;o(nDe,"initCloneArray");aee=nDe});function iDe(t,e){var r=e?om(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var oee,lee=M(()=>{"use strict";f5();o(iDe,"cloneDataView");oee=iDe});function sDe(t){var e=new t.constructor(t.source,aDe.exec(t));return e.lastIndex=t.lastIndex,e}var aDe,cee,uee=M(()=>{"use strict";aDe=/\w*$/;o(sDe,"cloneRegExp");cee=sDe});function oDe(t){return fee?Object(fee.call(t)):{}}var hee,fee,dee,pee=M(()=>{"use strict";Cd();hee=ia?ia.prototype:void 0,fee=hee?hee.valueOf:void 0;o(oDe,"cloneSymbol");dee=oDe});function ADe(t,e,r){var n=t.constructor;switch(e){case gDe:return om(t);case lDe:case cDe:return new n(+t);case yDe:return oee(t,r);case vDe:case xDe:case bDe:case wDe:case TDe:case kDe:case EDe:case SDe:case CDe:return d5(t,r);case uDe:return new n;case hDe:case pDe:return new n(t);case fDe:return cee(t);case dDe:return new n;case mDe:return dee(t)}}var lDe,cDe,uDe,hDe,fDe,dDe,pDe,mDe,gDe,yDe,vDe,xDe,bDe,wDe,TDe,kDe,EDe,SDe,CDe,mee,gee=M(()=>{"use strict";f5();lee();uee();pee();F_();lDe="[object Boolean]",cDe="[object Date]",uDe="[object Map]",hDe="[object Number]",fDe="[object RegExp]",dDe="[object Set]",pDe="[object String]",mDe="[object Symbol]",gDe="[object ArrayBuffer]",yDe="[object DataView]",vDe="[object Float32Array]",xDe="[object Float64Array]",bDe="[object Int8Array]",wDe="[object Int16Array]",TDe="[object Int32Array]",kDe="[object Uint8Array]",EDe="[object Uint8ClampedArray]",SDe="[object Uint16Array]",CDe="[object Uint32Array]";o(ADe,"initCloneByTag");mee=ADe});function LDe(t){return ei(t)&&uo(t)==_De}var _De,yee,vee=M(()=>{"use strict";Vd();zo();_De="[object Map]";o(LDe,"baseIsMap");yee=LDe});var xee,DDe,bee,wee=M(()=>{"use strict";vee();Dd();vv();xee=Vo&&Vo.isMap,DDe=xee?$o(xee):yee,bee=DDe});function RDe(t){return ei(t)&&uo(t)==NDe}var NDe,Tee,kee=M(()=>{"use strict";Vd();zo();NDe="[object Set]";o(RDe,"baseIsSet");Tee=RDe});var Eee,MDe,See,Cee=M(()=>{"use strict";kee();Dd();vv();Eee=Vo&&Vo.isSet,MDe=Eee?$o(Eee):Tee,See=MDe});function Fw(t,e,r,n,i,a){var s,l=e&IDe,u=e&ODe,h=e&PDe;if(r&&(s=i?r(t,n,i,a):r(t)),s!==void 0)return s;if(!xn(t))return t;var f=Dt(t);if(f){if(s=aee(t),!l)return p5(t,s)}else{var d=uo(t),p=d==_ee||d==$De;if(Il(t))return h5(t,l);if(d==Lee||d==Aee||p&&!i){if(s=u||p?{}:y5(t),!l)return u?KJ(t,WJ(s,t)):XJ(t,UJ(s,t))}else{if(!An[d])return i?t:{};s=mee(t,d,l)}}a||(a=new bc);var m=a.get(t);if(m)return m;a.set(t,s),See(t)?t.forEach(function(v){s.add(Fw(v,e,r,v,t,a))}):bee(t)&&t.forEach(function(v,x){s.set(x,Fw(v,e,r,x,t,a))});var g=h?u?Ow:Yv:u?_s:Gr,y=f?void 0:g(t);return bw(y||t,function(v,x){y&&(x=v,v=t[x]),kc(s,x,Fw(v,e,r,x,t,a))}),s}var IDe,ODe,PDe,Aee,BDe,FDe,zDe,GDe,_ee,$De,VDe,UDe,Lee,HDe,WDe,YDe,qDe,XDe,jDe,KDe,QDe,ZDe,JDe,eNe,tNe,rNe,nNe,iNe,aNe,An,zw,CL=M(()=>{"use strict";mv();mL();dm();HJ();YJ();P_();z_();jJ();QJ();kL();EL();Vd();see();gee();$_();Hn();fm();wee();io();Cee();Lc();Vh();IDe=1,ODe=2,PDe=4,Aee="[object Arguments]",BDe="[object Array]",FDe="[object Boolean]",zDe="[object Date]",GDe="[object Error]",_ee="[object Function]",$De="[object GeneratorFunction]",VDe="[object Map]",UDe="[object Number]",Lee="[object Object]",HDe="[object RegExp]",WDe="[object Set]",YDe="[object String]",qDe="[object Symbol]",XDe="[object WeakMap]",jDe="[object ArrayBuffer]",KDe="[object DataView]",QDe="[object Float32Array]",ZDe="[object Float64Array]",JDe="[object Int8Array]",eNe="[object Int16Array]",tNe="[object Int32Array]",rNe="[object Uint8Array]",nNe="[object Uint8ClampedArray]",iNe="[object Uint16Array]",aNe="[object Uint32Array]",An={};An[Aee]=An[BDe]=An[jDe]=An[KDe]=An[FDe]=An[zDe]=An[QDe]=An[ZDe]=An[JDe]=An[eNe]=An[tNe]=An[VDe]=An[UDe]=An[Lee]=An[HDe]=An[WDe]=An[YDe]=An[qDe]=An[rNe]=An[nNe]=An[iNe]=An[aNe]=!0;An[GDe]=An[_ee]=An[XDe]=!1;o(Fw,"baseClone");zw=Fw});function oNe(t){return zw(t,sNe)}var sNe,rn,AL=M(()=>{"use strict";CL();sNe=4;o(oNe,"clone");rn=oNe});function uNe(t){return zw(t,lNe|cNe)}var lNe,cNe,_L,Dee=M(()=>{"use strict";CL();lNe=1,cNe=4;o(uNe,"cloneDeep");_L=uNe});function hNe(t){for(var e=-1,r=t==null?0:t.length,n=0,i=[];++e{"use strict";o(hNe,"compact");Rc=hNe});function dNe(t){return this.__data__.set(t,fNe),this}var fNe,Ree,Mee=M(()=>{"use strict";fNe="__lodash_hash_undefined__";o(dNe,"setCacheAdd");Ree=dNe});function pNe(t){return this.__data__.has(t)}var Iee,Oee=M(()=>{"use strict";o(pNe,"setCacheHas");Iee=pNe});function Gw(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new _d;++e{"use strict";c5();Mee();Oee();o(Gw,"SetCache");Gw.prototype.add=Gw.prototype.push=Ree;Gw.prototype.has=Iee;Gm=Gw});function mNe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(mNe,"arraySome");Vw=mNe});function gNe(t,e){return t.has(e)}var $m,Uw=M(()=>{"use strict";o(gNe,"cacheHas");$m=gNe});function xNe(t,e,r,n,i,a){var s=r&yNe,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 Gm:void 0;for(a.set(t,e),a.set(e,t);++d{"use strict";$w();LL();Uw();yNe=1,vNe=2;o(xNe,"equalArrays");Hw=xNe});function bNe(t){var e=-1,r=Array(t.size);return t.forEach(function(n,i){r[++e]=[i,n]}),r}var Pee,Bee=M(()=>{"use strict";o(bNe,"mapToArray");Pee=bNe});function wNe(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}var Vm,Ww=M(()=>{"use strict";o(wNe,"setToArray");Vm=wNe});function ONe(t,e,r,n,i,a,s){switch(r){case INe:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case MNe:return!(t.byteLength!=e.byteLength||!a(new sm(t),new sm(e)));case ENe:case SNe:case _Ne:return Fo(+t,+e);case CNe:return t.name==e.name&&t.message==e.message;case LNe:case NNe:return t==e+"";case ANe:var l=Pee;case DNe:var u=n&TNe;if(l||(l=Vm),t.size!=e.size&&!u)return!1;var h=s.get(t);if(h)return h==e;n|=kNe,s.set(t,e);var f=Hw(l(t),l(e),n,i,a,s);return s.delete(t),f;case RNe:if(NL)return NL.call(t)==NL.call(e)}return!1}var TNe,kNe,ENe,SNe,CNe,ANe,_Ne,LNe,DNe,NNe,RNe,MNe,INe,Fee,NL,zee,Gee=M(()=>{"use strict";Cd();B_();Ad();DL();Bee();Ww();TNe=1,kNe=2,ENe="[object Boolean]",SNe="[object Date]",CNe="[object Error]",ANe="[object Map]",_Ne="[object Number]",LNe="[object RegExp]",DNe="[object Set]",NNe="[object String]",RNe="[object Symbol]",MNe="[object ArrayBuffer]",INe="[object DataView]",Fee=ia?ia.prototype:void 0,NL=Fee?Fee.valueOf:void 0;o(ONe,"equalByTag");zee=ONe});function zNe(t,e,r,n,i,a){var s=r&PNe,l=Yv(t),u=l.length,h=Yv(e),f=h.length;if(u!=f&&!s)return!1;for(var d=u;d--;){var p=l[d];if(!(s?p in e:FNe.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";kL();PNe=1,BNe=Object.prototype,FNe=BNe.hasOwnProperty;o(zNe,"equalObjects");$ee=zNe});function VNe(t,e,r,n,i,a){var s=Dt(t),l=Dt(e),u=s?Hee:uo(t),h=l?Hee:uo(e);u=u==Uee?Yw:u,h=h==Uee?Yw:h;var f=u==Yw,d=h==Yw,p=u==h;if(p&&Il(t)){if(!Il(e))return!1;s=!0,f=!1}if(p&&!f)return a||(a=new bc),s||Gh(t)?Hw(t,e,r,n,i,a):zee(t,e,u,r,n,i,a);if(!(r&GNe)){var m=f&&Wee.call(t,"__wrapped__"),g=d&&Wee.call(e,"__wrapped__");if(m||g){var y=m?t.value():t,v=g?e.value():e;return a||(a=new bc),i(y,v,r,n,a)}}return p?(a||(a=new bc),$ee(t,e,r,n,i,a)):!1}var GNe,Uee,Hee,Yw,$Ne,Wee,Yee,qee=M(()=>{"use strict";mv();DL();Gee();Vee();Vd();Hn();fm();xv();GNe=1,Uee="[object Arguments]",Hee="[object Array]",Yw="[object Object]",$Ne=Object.prototype,Wee=$Ne.hasOwnProperty;o(VNe,"baseIsEqualDeep");Yee=VNe});function Xee(t,e,r,n,i){return t===e?!0:t==null||e==null||!ei(t)&&!ei(e)?t!==t&&e!==e:Yee(t,e,r,n,Xee,i)}var qw,RL=M(()=>{"use strict";qee();zo();o(Xee,"baseIsEqual");qw=Xee});function WNe(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";mv();RL();UNe=1,HNe=2;o(WNe,"baseIsMatch");jee=WNe});function YNe(t){return t===t&&!xn(t)}var Xw,ML=M(()=>{"use strict";io();o(YNe,"isStrictComparable");Xw=YNe});function qNe(t){for(var e=Gr(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,Xw(i)]}return e}var Qee,Zee=M(()=>{"use strict";ML();Lc();o(qNe,"getMatchData");Qee=qNe});function XNe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}var jw,IL=M(()=>{"use strict";o(XNe,"matchesStrictComparable");jw=XNe});function jNe(t){var e=Qee(t);return e.length==1&&e[0][2]?jw(e[0][0],e[0][1]):function(r){return r===t||jee(r,t,e)}}var Jee,ete=M(()=>{"use strict";Kee();Zee();IL();o(jNe,"baseMatches");Jee=jNe});function KNe(t,e){return t!=null&&e in Object(t)}var tte,rte=M(()=>{"use strict";o(KNe,"baseHasIn");tte=KNe});function QNe(t,e,r){e=Zh(e,t);for(var n=-1,i=e.length,a=!1;++n{"use strict";Hv();um();Hn();wv();v5();Om();o(QNe,"hasPath");Kw=QNe});function ZNe(t,e){return t!=null&&Kw(t,e,tte)}var Qw,PL=M(()=>{"use strict";rte();OL();o(ZNe,"hasIn");Qw=ZNe});function tRe(t,e){return Im(t)&&Xw(e)?jw(Dc(t),e):function(r){var n=NJ(r,t);return n===void 0&&n===e?Qw(r,t):qw(e,n,JNe|eRe)}}var JNe,eRe,nte,ite=M(()=>{"use strict";RL();RJ();PL();Sw();ML();IL();Om();JNe=1,eRe=2;o(tRe,"baseMatchesProperty");nte=tRe});function rRe(t){return function(e){return e?.[t]}}var Zw,BL=M(()=>{"use strict";o(rRe,"baseProperty");Zw=rRe});function nRe(t){return function(e){return Jh(e,t)}}var ate,ste=M(()=>{"use strict";Wv();o(nRe,"basePropertyDeep");ate=nRe});function iRe(t){return Im(t)?Zw(Dc(t)):ate(t)}var ote,lte=M(()=>{"use strict";BL();ste();Sw();Om();o(iRe,"property");ote=iRe});function aRe(t){return typeof t=="function"?t:t==null?aa:typeof t=="object"?Dt(t)?nte(t[0],t[1]):Jee(t):ote(t)}var dn,is=M(()=>{"use strict";ete();ite();Ru();Hn();lte();o(aRe,"baseIteratee");dn=aRe});function sRe(t,e,r,n){for(var i=-1,a=t==null?0:t.length;++i{"use strict";o(sRe,"arrayAggregator");cte=sRe});function oRe(t,e){return t&&am(t,e,Gr)}var Um,Jw=M(()=>{"use strict";u5();Lc();o(oRe,"baseForOwn");Um=oRe});function lRe(t,e){return function(r,n){if(r==null)return r;if(!li(r))return t(r,n);for(var i=r.length,a=e?i:-1,s=Object(r);(e?a--:++a{"use strict";Go();o(lRe,"createBaseEach");hte=lRe});var cRe,Bs,tf=M(()=>{"use strict";Jw();fte();cRe=hte(Um),Bs=cRe});function uRe(t,e,r,n){return Bs(t,function(i,a,s){e(n,i,r(i),s)}),n}var dte,pte=M(()=>{"use strict";tf();o(uRe,"baseAggregator");dte=uRe});function hRe(t,e){return function(r,n){var i=Dt(r)?cte:dte,a=e?e():{};return i(r,t,dn(n,2),a)}}var mte,gte=M(()=>{"use strict";ute();pte();is();Hn();o(hRe,"createAggregator");mte=hRe});var fRe,eT,yte=M(()=>{"use strict";Bo();fRe=o(function(){return oi.Date.now()},"now"),eT=fRe});var vte,dRe,pRe,rf,xte=M(()=>{"use strict";pm();Ad();Rd();Vh();vte=Object.prototype,dRe=vte.hasOwnProperty,pRe=Ec(function(t,e){t=Object(t);var r=-1,n=e.length,i=n>2?e[2]:void 0;for(i&&ao(e[0],e[1],i)&&(n=1);++r{"use strict";o(mRe,"arrayIncludesWith");tT=mRe});function yRe(t,e,r,n){var i=-1,a=kw,s=!0,l=t.length,u=[],h=e.length;if(!l)return u;r&&(e=Ps(e,$o(r))),n?(a=tT,s=!1):e.length>=gRe&&(a=$m,s=!1,e=new Gm(e));e:for(;++i{"use strict";$w();yL();FL();Gd();Dd();Uw();gRe=200;o(yRe,"baseDifference");bte=yRe});var vRe,nf,Tte=M(()=>{"use strict";wte();Bm();pm();x5();vRe=Ec(function(t,e){return Ld(t)?bte(t,Nc(e,1,Ld,!0)):[]}),nf=vRe});function xRe(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}var xa,kte=M(()=>{"use strict";o(xRe,"last");xa=xRe});function bRe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:_c(e),Lw(t,e<0?0:e,n)):[]}var xi,Ete=M(()=>{"use strict";xL();Nm();o(bRe,"drop");xi=bRe});function wRe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:_c(e),e=n-e,Lw(t,0,e<0?0:e)):[]}var zu,Ste=M(()=>{"use strict";xL();Nm();o(wRe,"dropRight");zu=wRe});function TRe(t){return typeof t=="function"?t:aa}var Hm,rT=M(()=>{"use strict";Ru();o(TRe,"castFunction");Hm=TRe});function kRe(t,e){var r=Dt(t)?bw:Bs;return r(t,Hm(e))}var Se,nT=M(()=>{"use strict";mL();tf();rT();Hn();o(kRe,"forEach");Se=kRe});var Cte=M(()=>{"use strict";nT()});function ERe(t,e){for(var r=-1,n=t==null?0:t.length;++r{"use strict";o(ERe,"arrayEvery");Ate=ERe});function SRe(t,e){var r=!0;return Bs(t,function(n,i,a){return r=!!e(n,i,a),r}),r}var Lte,Dte=M(()=>{"use strict";tf();o(SRe,"baseEvery");Lte=SRe});function CRe(t,e,r){var n=Dt(t)?Ate:Lte;return r&&ao(t,e,r)&&(e=void 0),n(t,dn(e,3))}var za,Nte=M(()=>{"use strict";_te();Dte();is();Hn();Rd();o(CRe,"every");za=CRe});function ARe(t,e){var r=[];return Bs(t,function(n,i,a){e(n,i,a)&&r.push(n)}),r}var iT,zL=M(()=>{"use strict";tf();o(ARe,"baseFilter");iT=ARe});function _Re(t,e){var r=Dt(t)?Fm:iT;return r(t,dn(e,3))}var Yr,GL=M(()=>{"use strict";Dw();zL();is();Hn();o(_Re,"filter");Yr=_Re});function LRe(t){return function(e,r,n){var i=Object(e);if(!li(e)){var a=dn(r,3);e=Gr(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 Rte,Mte=M(()=>{"use strict";is();Go();Lc();o(LRe,"createFind");Rte=LRe});function NRe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:_c(r);return i<0&&(i=DRe(n+i,0)),ww(t,dn(e,3),i)}var DRe,Ite,Ote=M(()=>{"use strict";gL();is();Nm();DRe=Math.max;o(NRe,"findIndex");Ite=NRe});var RRe,as,Pte=M(()=>{"use strict";Mte();Ote();RRe=Rte(Ite),as=RRe});function MRe(t){return t&&t.length?t[0]:void 0}var sa,Bte=M(()=>{"use strict";o(MRe,"head");sa=MRe});var Fte=M(()=>{"use strict";Bte()});function IRe(t,e){var r=-1,n=li(t)?Array(t.length):[];return Bs(t,function(i,a,s){n[++r]=e(i,a,s)}),n}var aT,$L=M(()=>{"use strict";tf();Go();o(IRe,"baseMap");aT=IRe});function ORe(t,e){var r=Dt(t)?Ps:aT;return r(t,dn(e,3))}var Qe,Wm=M(()=>{"use strict";Gd();is();$L();Hn();o(ORe,"map");Qe=ORe});function PRe(t,e){return Nc(Qe(t,e),1)}var ba,VL=M(()=>{"use strict";Bm();Wm();o(PRe,"flatMap");ba=PRe});function BRe(t,e){return t==null?t:am(t,Hm(e),_s)}var UL,zte=M(()=>{"use strict";u5();rT();Vh();o(BRe,"forIn");UL=BRe});function FRe(t,e){return t&&Um(t,Hm(e))}var HL,Gte=M(()=>{"use strict";Jw();rT();o(FRe,"forOwn");HL=FRe});var zRe,GRe,$Re,WL,$te=M(()=>{"use strict";im();gte();zRe=Object.prototype,GRe=zRe.hasOwnProperty,$Re=mte(function(t,e,r){GRe.call(t,r)?t[r].push(e):wc(t,r,[e])}),WL=$Re});function VRe(t,e){return t>e}var Vte,Ute=M(()=>{"use strict";o(VRe,"baseGt");Vte=VRe});function WRe(t,e){return t!=null&&HRe.call(t,e)}var URe,HRe,Hte,Wte=M(()=>{"use strict";URe=Object.prototype,HRe=URe.hasOwnProperty;o(WRe,"baseHas");Hte=WRe});function YRe(t,e){return t!=null&&Kw(t,e,Hte)}var Nt,Yte=M(()=>{"use strict";Wte();OL();o(YRe,"has");Nt=YRe});function XRe(t){return typeof t=="string"||!Dt(t)&&ei(t)&&ga(t)==qRe}var qRe,bi,sT=M(()=>{"use strict";Lu();Hn();zo();qRe="[object String]";o(XRe,"isString");bi=XRe});function jRe(t,e){return Ps(e,function(r){return t[r]})}var qte,Xte=M(()=>{"use strict";Gd();o(jRe,"baseValues");qte=jRe});function KRe(t){return t==null?[]:qte(t,Gr(t))}var br,YL=M(()=>{"use strict";Xte();Lc();o(KRe,"values");br=KRe});function ZRe(t,e,r,n){t=li(t)?t:br(t),r=r&&!n?_c(r):0;var i=t.length;return r<0&&(r=QRe(i+r,0)),bi(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&Rm(t,e,r)>-1}var QRe,Yn,jte=M(()=>{"use strict";Tw();Go();sT();Nm();YL();QRe=Math.max;o(ZRe,"includes");Yn=ZRe});function eMe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:_c(r);return i<0&&(i=JRe(n+i,0)),Rm(t,e,i)}var JRe,oT,Kte=M(()=>{"use strict";Tw();Nm();JRe=Math.max;o(eMe,"indexOf");oT=eMe});function aMe(t){if(t==null)return!0;if(li(t)&&(Dt(t)||typeof t=="string"||typeof t.splice=="function"||Il(t)||Gh(t)||Ml(t)))return!t.length;var e=uo(t);if(e==tMe||e==rMe)return!t.size;if(Tc(t))return!Mm(t).length;for(var r in t)if(iMe.call(t,r))return!1;return!0}var tMe,rMe,nMe,iMe,cr,lT=M(()=>{"use strict";Ew();Vd();um();Hn();Go();fm();cm();xv();tMe="[object Map]",rMe="[object Set]",nMe=Object.prototype,iMe=nMe.hasOwnProperty;o(aMe,"isEmpty");cr=aMe});function oMe(t){return ei(t)&&ga(t)==sMe}var sMe,Qte,Zte=M(()=>{"use strict";Lu();zo();sMe="[object RegExp]";o(oMe,"baseIsRegExp");Qte=oMe});var Jte,lMe,Xo,ere=M(()=>{"use strict";Zte();Dd();vv();Jte=Vo&&Vo.isRegExp,lMe=Jte?$o(Jte):Qte,Xo=lMe});function cMe(t){return t===void 0}var dr,tre=M(()=>{"use strict";o(cMe,"isUndefined");dr=cMe});function uMe(t,e){return t{"use strict";o(uMe,"baseLt");cT=uMe});function hMe(t,e){var r={};return e=dn(e,3),Um(t,function(n,i,a){wc(r,i,e(n,i,a))}),r}var Ud,rre=M(()=>{"use strict";im();Jw();is();o(hMe,"mapValues");Ud=hMe});function fMe(t,e,r){for(var n=-1,i=t.length;++n{"use strict";zd();o(fMe,"baseExtremum");Ym=fMe});function dMe(t){return t&&t.length?Ym(t,aa,Vte):void 0}var Fs,nre=M(()=>{"use strict";uT();Ute();Ru();o(dMe,"max");Fs=dMe});function pMe(t){return t&&t.length?Ym(t,aa,cT):void 0}var Bl,XL=M(()=>{"use strict";uT();qL();Ru();o(pMe,"min");Bl=pMe});function mMe(t,e){return t&&t.length?Ym(t,dn(e,2),cT):void 0}var Hd,ire=M(()=>{"use strict";uT();is();qL();o(mMe,"minBy");Hd=mMe});function yMe(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,are,sre=M(()=>{"use strict";gMe="Expected a function";o(yMe,"negate");are=yMe});function vMe(t,e,r,n){if(!xn(t))return t;e=Zh(e,t);for(var i=-1,a=e.length,s=a-1,l=t;l!=null&&++i{"use strict";dm();Hv();wv();io();Om();o(vMe,"baseSet");ore=vMe});function xMe(t,e,r){for(var n=-1,i=e.length,a={};++n{"use strict";Wv();lre();Hv();o(xMe,"basePickBy");hT=xMe});function bMe(t,e){if(t==null)return{};var r=Ps(Ow(t),function(n){return[n]});return e=dn(e),hT(t,r,function(n,i){return e(n,i[0])})}var zs,cre=M(()=>{"use strict";Gd();is();jL();EL();o(bMe,"pickBy");zs=bMe});function wMe(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}var ure,hre=M(()=>{"use strict";o(wMe,"baseSortBy");ure=wMe});function TMe(t,e){if(t!==e){var r=t!==void 0,n=t===null,i=t===t,a=co(t),s=e!==void 0,l=e===null,u=e===e,h=co(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";zd();o(TMe,"compareAscending");fre=TMe});function kMe(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 pre,mre=M(()=>{"use strict";dre();o(kMe,"compareMultiple");pre=kMe});function EMe(t,e,r){e.length?e=Ps(e,function(a){return Dt(a)?function(s){return Jh(s,a.length===1?a[0]:a)}:a}):e=[aa];var n=-1;e=Ps(e,$o(dn));var i=aT(t,function(a,s,l){var u=Ps(e,function(h){return h(a)});return{criteria:u,index:++n,value:a}});return ure(i,function(a,s){return pre(a,s,r)})}var gre,yre=M(()=>{"use strict";Gd();Wv();is();$L();hre();Dd();mre();Ru();Hn();o(EMe,"baseOrderBy");gre=EMe});var SMe,vre,xre=M(()=>{"use strict";BL();SMe=Zw("length"),vre=SMe});function BMe(t){for(var e=bre.lastIndex=0;bre.test(t);)++e;return e}var wre,CMe,AMe,_Me,LMe,DMe,NMe,KL,QL,RMe,Tre,kre,Ere,MMe,Sre,Cre,IMe,OMe,PMe,bre,Are,_re=M(()=>{"use strict";wre="\\ud800-\\udfff",CMe="\\u0300-\\u036f",AMe="\\ufe20-\\ufe2f",_Me="\\u20d0-\\u20ff",LMe=CMe+AMe+_Me,DMe="\\ufe0e\\ufe0f",NMe="["+wre+"]",KL="["+LMe+"]",QL="\\ud83c[\\udffb-\\udfff]",RMe="(?:"+KL+"|"+QL+")",Tre="[^"+wre+"]",kre="(?:\\ud83c[\\udde6-\\uddff]){2}",Ere="[\\ud800-\\udbff][\\udc00-\\udfff]",MMe="\\u200d",Sre=RMe+"?",Cre="["+DMe+"]?",IMe="(?:"+MMe+"(?:"+[Tre,kre,Ere].join("|")+")"+Cre+Sre+")*",OMe=Cre+Sre+IMe,PMe="(?:"+[Tre+KL+"?",KL,kre,Ere,NMe].join("|")+")",bre=RegExp(QL+"(?="+QL+")|"+PMe+OMe,"g");o(BMe,"unicodeSize");Are=BMe});function FMe(t){return zJ(t)?Are(t):vre(t)}var Lre,Dre=M(()=>{"use strict";xre();GJ();_re();o(FMe,"stringSize");Lre=FMe});function zMe(t,e){return hT(t,e,function(r,n){return Qw(t,n)})}var Nre,Rre=M(()=>{"use strict";jL();PL();o(zMe,"basePick");Nre=zMe});var GMe,Wd,Mre=M(()=>{"use strict";Rre();FJ();GMe=BJ(function(t,e){return t==null?{}:Nre(t,e)}),Wd=GMe});function UMe(t,e,r,n){for(var i=-1,a=VMe($Me((e-t)/(r||1)),0),s=Array(a);a--;)s[n?a:++i]=t,t+=r;return s}var $Me,VMe,Ire,Ore=M(()=>{"use strict";$Me=Math.ceil,VMe=Math.max;o(UMe,"baseRange");Ire=UMe});function HMe(t){return function(e,r,n){return n&&typeof n!="number"&&ao(e,r,n)&&(r=n=void 0),e=Dm(e),r===void 0?(r=e,e=0):r=Dm(r),n=n===void 0?e{"use strict";Ore();Rd();dL();o(HMe,"createRange");Pre=HMe});var WMe,jo,Fre=M(()=>{"use strict";Bre();WMe=Pre(),jo=WMe});function YMe(t,e,r,n,i){return i(t,function(a,s,l){r=n?(n=!1,a):e(r,a,s,l)}),r}var zre,Gre=M(()=>{"use strict";o(YMe,"baseReduce");zre=YMe});function qMe(t,e,r){var n=Dt(t)?$J:zre,i=arguments.length<3;return n(t,dn(e,4),r,i,Bs)}var qr,ZL=M(()=>{"use strict";VJ();tf();is();Gre();Hn();o(qMe,"reduce");qr=qMe});function XMe(t,e){var r=Dt(t)?Fm:iT;return r(t,are(dn(e,3)))}var af,$re=M(()=>{"use strict";Dw();zL();is();Hn();sre();o(XMe,"reject");af=XMe});function QMe(t){if(t==null)return 0;if(li(t))return bi(t)?Lre(t):t.length;var e=uo(t);return e==jMe||e==KMe?t.size:Mm(t).length}var jMe,KMe,JL,Vre=M(()=>{"use strict";Ew();Vd();Go();sT();Dre();jMe="[object Map]",KMe="[object Set]";o(QMe,"size");JL=QMe});function ZMe(t,e){var r;return Bs(t,function(n,i,a){return r=e(n,i,a),!r}),!!r}var Ure,Hre=M(()=>{"use strict";tf();o(ZMe,"baseSome");Ure=ZMe});function JMe(t,e,r){var n=Dt(t)?Vw:Ure;return r&&ao(t,e,r)&&(e=void 0),n(t,dn(e,3))}var qv,Wre=M(()=>{"use strict";LL();is();Hre();Hn();Rd();o(JMe,"some");qv=JMe});var eIe,Mc,Yre=M(()=>{"use strict";Bm();yre();pm();Rd();eIe=Ec(function(t,e){if(t==null)return[];var r=e.length;return r>1&&ao(t,e[0],e[1])?e=[]:r>2&&ao(e[0],e[1],e[2])&&(e=[e[0]]),gre(t,Nc(e,1),[])}),Mc=eIe});var tIe,rIe,qre,Xre=M(()=>{"use strict";SL();pL();Ww();tIe=1/0,rIe=ef&&1/Vm(new ef([,-0]))[1]==tIe?function(t){return new ef(t)}:ti,qre=rIe});function iIe(t,e,r){var n=-1,i=kw,a=t.length,s=!0,l=[],u=l;if(r)s=!1,i=tT;else if(a>=nIe){var h=e?null:qre(t);if(h)return Vm(h);s=!1,i=$m,u=new Gm}else u=e?[]:l;e:for(;++n{"use strict";$w();yL();FL();Uw();Xre();Ww();nIe=200;o(iIe,"baseUniq");qm=iIe});var aIe,eD,jre=M(()=>{"use strict";Bm();pm();fT();x5();aIe=Ec(function(t){return qm(Nc(t,1,Ld,!0))}),eD=aIe});function sIe(t){return t&&t.length?qm(t):[]}var Xm,Kre=M(()=>{"use strict";fT();o(sIe,"uniq");Xm=sIe});function oIe(t,e){return t&&t.length?qm(t,dn(e,2)):[]}var Qre,Zre=M(()=>{"use strict";is();fT();o(oIe,"uniqBy");Qre=oIe});function cIe(t){var e=++lIe;return Cw(t)+e}var lIe,Yd,Jre=M(()=>{"use strict";vL();lIe=0;o(cIe,"uniqueId");Yd=cIe});function uIe(t,e,r){for(var n=-1,i=t.length,a=e.length,s={};++n{"use strict";o(uIe,"baseZipObject");ene=uIe});function hIe(t,e){return ene(t||[],e||[],kc)}var dT,rne=M(()=>{"use strict";dm();tne();o(hIe,"zipObject");dT=hIe});var Ht=M(()=>{"use strict";CJ();AL();Dee();Nee();q_();xte();Tte();Ete();Ste();Cte();Nte();GL();Pte();Fte();VL();_w();nT();zte();Gte();$te();Yte();Ru();jte();Kte();Hn();lT();uv();io();ere();sT();tre();Lc();kte();Wm();rre();nre();K_();XL();ire();pL();yte();Mre();cre();Fre();ZL();$re();Vre();Wre();Yre();jre();Kre();Jre();YL();rne();});function ine(t,e){t[e]?t[e]++:t[e]=1}function ane(t,e){--t[e]||delete t[e]}function Xv(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}return i+nne+a+nne+(dr(n)?fIe:n)}function dIe(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 tD(t,e){return Xv(t,e.v,e.w,e.name)}var fIe,qd,nne,Ir,pT=M(()=>{"use strict";Ht();fIe="\0",qd="\0",nne="",Ir=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=Ls(void 0),this._defaultEdgeLabelFn=Ls(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[qd]={}),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 _i(e)||(e=Ls(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return Gr(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 Se(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]=qd,this._children[e]={},this._children[qd][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],Se(this.children(e),n=>{this.setParent(n)}),delete this._children[e]),Se(Gr(this._in[e]),r),delete this._in[e],delete this._preds[e],Se(Gr(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=qd;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!==qd)return r}}children(e){if(dr(e)&&(e=qd),this._isCompound){var r=this._children[e];if(r)return Gr(r)}else{if(e===qd)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return Gr(r)}successors(e){var r=this._sucs[e];if(r)return Gr(r)}neighbors(e){var r=this.predecessors(e);if(r)return eD(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;Se(this._nodes,function(s,l){e(l)&&r.setNode(l,s)}),Se(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&&Se(r.nodes(),function(s){r.setParent(s,a(s))}),r}setDefaultEdgeLabel(e){return _i(e)||(e=Ls(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=Xv(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=dIe(this._isDirected,e,r,n);return e=u.v,r=u.w,Object.freeze(u),this._edgeObjs[l]=u,ine(this._preds[r],e),ine(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?tD(this._isDirected,arguments[0]):Xv(this._isDirected,e,r,n);return this._edgeLabels[i]}hasEdge(e,r,n){var i=arguments.length===1?tD(this._isDirected,arguments[0]):Xv(this._isDirected,e,r,n);return Object.prototype.hasOwnProperty.call(this._edgeLabels,i)}removeEdge(e,r,n){var i=arguments.length===1?tD(this._isDirected,arguments[0]):Xv(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],ane(this._preds[r],e),ane(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))}};Ir.prototype._nodeCount=0;Ir.prototype._edgeCount=0;o(ine,"incrementOrInitEntry");o(ane,"decrementOrRemoveEntry");o(Xv,"edgeArgsToId");o(dIe,"edgeArgsToObj");o(tD,"edgeObjToId")});var Gs=M(()=>{"use strict";pT()});function sne(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function pIe(t,e){if(t!=="_next"&&t!=="_prev")return e}var mT,one=M(()=>{"use strict";mT=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 sne(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&sne(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,pIe)),n=n._prev;return"["+e.join(", ")+"]"}};o(sne,"unlink");o(pIe,"filterOutLinks")});function lne(t,e){if(t.nodeCount()<=1)return[];var r=yIe(t,e||mIe),n=gIe(r.graph,r.buckets,r.zeroIdx);return Wr(Qe(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();)rD(t,e,r,s);for(;s=i.dequeue();)rD(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(rD(t,e,r,s,!0));break}}}return n}function rD(t,e,r,n,i){var a=i?[]:void 0;return Se(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,nD(e,r,u)}),Se(t.outEdges(n.v),function(s){var l=t.edge(s),u=s.w,h=t.node(u);h.in-=l,nD(e,r,h)}),t.removeNode(n.v),a}function yIe(t,e){var r=new Ir,n=0,i=0;Se(t.nodes(),function(l){r.setNode(l,{v:l,in:0,out:0})}),Se(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=jo(i+n+3).map(function(){return new mT}),s=n+1;return Se(r.nodes(),function(l){nD(a,s,r.node(l))}),{graph:r,buckets:a,zeroIdx:s}}function nD(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 mIe,cne=M(()=>{"use strict";Ht();Gs();one();mIe=Ls(1);o(lne,"greedyFAS");o(gIe,"doGreedyFAS");o(rD,"removeNode");o(yIe,"buildState");o(nD,"assignBucket")});function une(t){var e=t.graph().acyclicer==="greedy"?lne(t,r(t)):vIe(t);Se(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,Yd("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,Se(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"),Se(t.nodes(),i),e}function hne(t){Se(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 iD=M(()=>{"use strict";Ht();cne();o(une,"run");o(vIe,"dfsFAS");o(hne,"undo")});function Ic(t,e,r,n){var i;do i=Yd(n);while(t.hasNode(i));return r.dummy=e,t.setNode(i,r),i}function dne(t){var e=new Ir().setGraph(t.graph());return Se(t.nodes(),function(r){e.setNode(r,t.node(r))}),Se(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 gT(t){var e=new Ir({multigraph:t.isMultigraph()}).setGraph(t.graph());return Se(t.nodes(),function(r){t.children(r).length||e.setNode(r,t.node(r))}),Se(t.edges(),function(r){e.setEdge(r,t.edge(r))}),e}function aD(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 sf(t){var e=Qe(jo(oD(t)+1),function(){return[]});return Se(t.nodes(),function(r){var n=t.node(r),i=n.rank;dr(i)||(e[i][n.order]=r)}),e}function pne(t){var e=Bl(Qe(t.nodes(),function(r){return t.node(r).rank}));Se(t.nodes(),function(r){var n=t.node(r);Nt(n,"rank")&&(n.rank-=e)})}function mne(t){var e=Bl(Qe(t.nodes(),function(a){return t.node(a).rank})),r=[];Se(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;Se(r,function(a,s){dr(a)&&s%i!==0?--n:n&&Se(a,function(l){t.node(l).rank+=n})})}function sD(t,e,r,n){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),Ic(t,"border",i,e)}function oD(t){return Fs(Qe(t.nodes(),function(e){var r=t.node(e).rank;if(!dr(r))return r}))}function gne(t,e){var r={lhs:[],rhs:[]};return Se(t,function(n){e(n)?r.lhs.push(n):r.rhs.push(n)}),r}function yne(t,e){var r=eT();try{return e()}finally{console.log(t+" time: "+(eT()-r)+"ms")}}function vne(t,e){return e()}var Oc=M(()=>{"use strict";Ht();Gs();o(Ic,"addDummyNode");o(dne,"simplify");o(gT,"asNonCompoundGraph");o(aD,"intersectRect");o(sf,"buildLayerMatrix");o(pne,"normalizeRanks");o(mne,"removeEmptyRanks");o(sD,"addBorderNode");o(oD,"maxRank");o(gne,"partition");o(yne,"time");o(vne,"notime")});function bne(t){function e(r){var n=t.children(r),i=t.node(r);if(n.length&&Se(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();Oc();o(bne,"addBorderSegments");o(xne,"addBorderNode")});function kne(t){var e=t.graph().rankdir.toLowerCase();(e==="lr"||e==="rl")&&Sne(t)}function Ene(t){var e=t.graph().rankdir.toLowerCase();(e==="bt"||e==="rl")&&xIe(t),(e==="lr"||e==="rl")&&(bIe(t),Sne(t))}function Sne(t){Se(t.nodes(),function(e){Tne(t.node(e))}),Se(t.edges(),function(e){Tne(t.edge(e))})}function Tne(t){var e=t.width;t.width=t.height,t.height=e}function xIe(t){Se(t.nodes(),function(e){lD(t.node(e))}),Se(t.edges(),function(e){var r=t.edge(e);Se(r.points,lD),Object.prototype.hasOwnProperty.call(r,"y")&&lD(r)})}function lD(t){t.y=-t.y}function bIe(t){Se(t.nodes(),function(e){cD(t.node(e))}),Se(t.edges(),function(e){var r=t.edge(e);Se(r.points,cD),Object.prototype.hasOwnProperty.call(r,"x")&&cD(r)})}function cD(t){var e=t.x;t.x=t.y,t.y=e}var Cne=M(()=>{"use strict";Ht();o(kne,"adjust");o(Ene,"undo");o(Sne,"swapWidthHeight");o(Tne,"swapWidthHeightOne");o(xIe,"reverseY");o(lD,"reverseYOne");o(bIe,"swapXY");o(cD,"swapXYOne")});function Ane(t){t.graph().dummyChains=[],Se(t.edges(),function(e){TIe(t,e)})}function TIe(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();Oc();o(Ane,"run");o(TIe,"normalizeEdge");o(_ne,"undo")});function jv(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=Bl(Qe(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"),Se(t.sources(),r)}function Xd(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}var yT=M(()=>{"use strict";Ht();o(jv,"longestPath");o(Xd,"slack")});function vT(t){var e=new Ir({directed:!1}),r=t.nodes()[0],n=t.nodeCount();e.setNode(r,{});for(var i,a;kIe(e,t){"use strict";Ht();Gs();yT();o(vT,"feasibleTree");o(kIe,"tightTree");o(EIe,"findMinSlackEdge");o(SIe,"shiftRanks")});var Dne=M(()=>{"use strict"});var fD=M(()=>{"use strict"});var dYt,dD=M(()=>{"use strict";Ht();fD();dYt=Ls(1)});var Nne=M(()=>{"use strict";dD()});var pD=M(()=>{"use strict"});var Rne=M(()=>{"use strict";pD()});var EYt,Mne=M(()=>{"use strict";Ht();EYt=Ls(1)});function mD(t){var e={},r={},n=[];function i(a){if(Object.prototype.hasOwnProperty.call(r,a))throw new Kv;Object.prototype.hasOwnProperty.call(e,a)||(r[a]=!0,e[a]=!0,Se(t.predecessors(a),i),delete r[a],n.push(a))}if(o(i,"visit"),Se(t.sinks(),i),JL(e)!==t.nodeCount())throw new Kv;return n}function Kv(){}var gD=M(()=>{"use strict";Ht();mD.CycleException=Kv;o(mD,"topsort");o(Kv,"CycleException");Kv.prototype=new Error});var Ine=M(()=>{"use strict";gD()});function xT(t,e,r){Dt(e)||(e=[e]);var n=(t.isDirected()?t.successors:t.neighbors).bind(t),i=[],a={};return Se(e,function(s){if(!t.hasNode(s))throw new Error("Graph does not have node: "+s);One(t,s,r==="post",a,n,i)}),i}function One(t,e,r,n,i,a){Object.prototype.hasOwnProperty.call(n,e)||(n[e]=!0,r||a.push(e),Se(i(e),function(s){One(t,s,r,n,i,a)}),r&&a.push(e))}var yD=M(()=>{"use strict";Ht();o(xT,"dfs");o(One,"doDfs")});function vD(t,e){return xT(t,e,"post")}var Pne=M(()=>{"use strict";yD();o(vD,"postorder")});function xD(t,e){return xT(t,e,"pre")}var Bne=M(()=>{"use strict";yD();o(xD,"preorder")});var Fne=M(()=>{"use strict";fD();pT()});var zne=M(()=>{"use strict";Dne();dD();Nne();Rne();Mne();Ine();Pne();Bne();Fne();pD();gD()});function lf(t){t=dne(t),jv(t);var e=vT(t);wD(e),bD(e,t);for(var r,n;r=Une(e);)n=Hne(e,t,r),Wne(e,t,r,n)}function bD(t,e){var r=vD(t,t.nodes());r=r.slice(0,r.length-1),Se(r,function(n){DIe(t,e,n)})}function DIe(t,e,r){var n=t.node(r),i=n.parent;t.edge(r,i).cutvalue=$ne(t,e,r)}function $ne(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,Se(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,RIe(t,r,f)){var m=t.edge(r,f).cutvalue;l+=d?-m:m}}}),l}function wD(t,e){arguments.length<2&&(e=t.nodes()[0]),Vne(t,{},1,e)}function Vne(t,e,r,n,i){var a=r,s=t.node(n);return e[n]=!0,Se(t.neighbors(n),function(l){Object.prototype.hasOwnProperty.call(e,l)||(r=Vne(t,e,r,l,n))}),s.low=a,s.lim=r++,i?s.parent=i:delete s.parent,r}function Une(t){return as(t.edges(),function(e){return t.edge(e).cutvalue<0})}function Hne(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===Gne(t,t.node(f.v),l)&&u!==Gne(t,t.node(f.w),l)});return Hd(h,function(f){return Xd(e,f)})}function Wne(t,e,r,n){var i=r.v,a=r.w;t.removeEdge(i,a),t.setEdge(n.v,n.w,{}),wD(t),bD(t,e),NIe(t,e)}function NIe(t,e){var r=as(t.nodes(),function(i){return!e.node(i).parent}),n=xD(t,r);n=n.slice(1),Se(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 RIe(t,e,r){return t.hasEdge(e,r)}function Gne(t,e,r){return r.low<=e.lim&&e.lim<=r.lim}var Yne=M(()=>{"use strict";Ht();zne();Oc();hD();yT();lf.initLowLimValues=wD;lf.initCutValues=bD;lf.calcCutValue=$ne;lf.leaveEdge=Une;lf.enterEdge=Hne;lf.exchangeEdges=Wne;o(lf,"networkSimplex");o(bD,"initCutValues");o(DIe,"assignCutValue");o($ne,"calcCutValue");o(wD,"initLowLimValues");o(Vne,"dfsAssignLowLim");o(Une,"leaveEdge");o(Hne,"enterEdge");o(Wne,"exchangeEdges");o(NIe,"updateRanks");o(RIe,"isTreeEdge");o(Gne,"isDescendant")});function TD(t){switch(t.graph().ranker){case"network-simplex":qne(t);break;case"tight-tree":IIe(t);break;case"longest-path":MIe(t);break;default:qne(t)}}function IIe(t){jv(t),vT(t)}function qne(t){lf(t)}var MIe,kD=M(()=>{"use strict";hD();Yne();yT();o(TD,"rank");MIe=jv;o(IIe,"tightTreeRanker");o(qne,"networkSimplexRanker")});function Xne(t){var e=Ic(t,"root",{},"_root"),r=OIe(t),n=Fs(br(r))-1,i=2*n+1;t.graph().nestingRoot=e,Se(t.edges(),function(s){t.edge(s).minlen*=i});var a=PIe(t)+1;Se(t.children(),function(s){jne(t,e,i,a,n,r,s)}),t.graph().nodeRankFactor=i}function jne(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=sD(t,"_bt"),h=sD(t,"_bb"),f=t.node(s);t.setParent(u,s),f.borderTop=u,t.setParent(h,s),f.borderBottom=h,Se(l,function(d){jne(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 OIe(t){var e={};function r(n,i){var a=t.children(n);a&&a.length&&Se(a,function(s){r(s,i+1)}),e[n]=i}return o(r,"dfs"),Se(t.children(),function(n){r(n,1)}),e}function PIe(t){return qr(t.edges(),function(e,r){return e+t.edge(r).weight},0)}function Kne(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,Se(t.edges(),function(r){var n=t.edge(r);n.nestingEdge&&t.removeEdge(r)})}var Qne=M(()=>{"use strict";Ht();Oc();o(Xne,"run");o(jne,"dfs");o(OIe,"treeDepths");o(PIe,"sumWeights");o(Kne,"cleanup")});function Zne(t,e,r){var n={},i;Se(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 Jne=M(()=>{"use strict";Ht();o(Zne,"addSubgraphConstraints")});function eie(t,e,r){var n=FIe(t),i=new Ir({compound:!0}).setGraph({root:n}).setDefaultNodeLabel(function(a){return t.node(a)});return Se(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),Se(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 FIe(t){for(var e;t.hasNode(e=Yd("_root")););return e}var tie=M(()=>{"use strict";Ht();Gs();o(eie,"buildLayerGraph");o(FIe,"createRootNode")});function rie(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 nie=M(()=>{"use strict";Ht();o(rie,"crossCount");o(zIe,"twoLayerCrossCount")});function iie(t){var e={},r=Yr(t.nodes(),function(l){return!t.children(l).length}),n=Fs(Qe(r,function(l){return t.node(l).rank})),i=Qe(jo(n+1),function(){return[]});function a(l){if(!Nt(e,l)){e[l]=!0;var u=t.node(l);i[u.rank].push(l),Se(t.successors(l),a)}}o(a,"dfs");var s=Mc(r,function(l){return t.node(l).rank});return Se(s,a),i}var aie=M(()=>{"use strict";Ht();o(iie,"initOrder")});function sie(t,e){return Qe(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 oie=M(()=>{"use strict";Ht();o(sie,"barycenter")});function lie(t,e){var r={};Se(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)}),Se(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 GIe(n)}function GIe(t){var e=[];function r(a){return function(s){s.merged||(dr(s.barycenter)||dr(a.barycenter)||s.barycenter>=a.barycenter)&&$Ie(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),Se(i.in.reverse(),r(i)),Se(i.out,n(i))}return Qe(Yr(e,function(a){return!a.merged}),function(a){return Wd(a,["vs","i","barycenter","weight"])})}function $Ie(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 cie=M(()=>{"use strict";Ht();o(lie,"resolveConflicts");o(GIe,"doResolveConflicts");o($Ie,"mergeEntries")});function hie(t,e){var r=gne(t,function(f){return Object.prototype.hasOwnProperty.call(f,"barycenter")}),n=r.lhs,i=Mc(r.rhs,function(f){return-f.i}),a=[],s=0,l=0,u=0;n.sort(VIe(!!e)),u=uie(a,i,u),Se(n,function(f){u+=f.vs.length,a.push(f.vs),s+=f.barycenter*f.weight,l+=f.weight,u=uie(a,i,u)});var h={vs:Wr(a)};return l&&(h.barycenter=s/l,h.weight=l),h}function uie(t,e,r){for(var n;e.length&&(n=xa(e)).i<=r;)e.pop(),t.push(n.vs),r++;return r}function VIe(t){return function(e,r){return e.barycenterr.barycenter?1:t?r.i-e.i:e.i-r.i}}var fie=M(()=>{"use strict";Ht();Oc();o(hie,"sort");o(uie,"consumeUnsortable");o(VIe,"compareWithBias")});function ED(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=sie(t,i);Se(h,function(g){if(t.children(g.v).length){var y=ED(t,g.v,r,n);u[g.v]=y,Object.prototype.hasOwnProperty.call(y,"barycenter")&&HIe(g,y)}});var f=lie(h,r);UIe(f,u);var d=hie(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 UIe(t,e){Se(t,function(r){r.vs=Wr(r.vs.map(function(n){return e[n]?e[n].vs:n}))})}function HIe(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 die=M(()=>{"use strict";Ht();oie();cie();fie();o(ED,"sortSubgraph");o(UIe,"expandSubgraphs");o(HIe,"mergeBarycenters")});function gie(t){var e=oD(t),r=pie(t,jo(1,e+1),"inEdges"),n=pie(t,jo(e-1,-1,-1),"outEdges"),i=iie(t);mie(t,i);for(var a=Number.POSITIVE_INFINITY,s,l=0,u=0;u<4;++l,++u){WIe(l%2?r:n,l%4>=2),i=sf(t);var h=rie(t,i);h{"use strict";Ht();Gs();Oc();Jne();tie();nie();aie();die();o(gie,"order");o(pie,"buildLayerGraphs");o(WIe,"sweepLayerGraphs");o(mie,"assignOrder")});function vie(t){var e=qIe(t);Se(t.graph().dummyChains,function(r){for(var n=t.node(r),i=n.edgeObj,a=YIe(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 qIe(t){var e={},r=0;function n(i){var a=r;Se(t.children(i),n),e[i]={low:a,lim:r++}}return o(n,"dfs"),Se(t.children(),n),e}var xie=M(()=>{"use strict";Ht();o(vie,"parentDummyChains");o(YIe,"findPath");o(qIe,"postorder")});function XIe(t,e){var r={};function n(i,a){var s=0,l=0,u=i.length,h=xa(a);return Se(a,function(f,d){var p=KIe(t,f),m=p?t.node(p).order:u;(p||f===h)&&(Se(a.slice(l,d+1),function(g){Se(t.predecessors(g),function(y){var v=t.node(y),x=v.order;(xh)&&bie(r,p,f)})})}o(n,"scan");function i(a,s){var l=-1,u,h=0;return Se(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 KIe(t,e){if(t.node(e).dummy)return as(t.predecessors(e),function(r){return t.node(r).dummy})}function bie(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 QIe(t,e,r){if(e>r){var n=e;e=r,r=n}return!!t[e]&&Object.prototype.hasOwnProperty.call(t[e],r)}function ZIe(t,e,r,n){var i={},a={},s={};return Se(e,function(l){Se(l,function(u,h){i[u]=u,a[u]=u,s[u]=h})}),Se(e,function(l){var u=-1;Se(l,function(h){var f=n(h);if(f.length){f=Mc(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();Gs();Oc();o(XIe,"findType1Conflicts");o(jIe,"findType2Conflicts");o(KIe,"findOtherInnerSegmentNode");o(bie,"addConflict");o(QIe,"hasConflict");o(ZIe,"verticalAlignment");o(JIe,"horizontalCompaction");o(eOe,"buildBlockGraph");o(tOe,"findSmallestWidthAlignment");o(rOe,"alignCoordinates");o(nOe,"balance");o(wie,"positionX");o(iOe,"sep");o(aOe,"width")});function kie(t){t=gT(t),sOe(t),HL(wie(t),function(e,r){t.node(r).x=e})}function sOe(t){var e=sf(t),r=t.graph().ranksep,n=0;Se(e,function(i){var a=Fs(Qe(i,function(s){return t.node(s).height}));Se(i,function(s){t.node(s).y=n+a/2}),n+=a+r})}var Eie=M(()=>{"use strict";Ht();Oc();Tie();o(kie,"position");o(sOe,"positionY")});function Gu(t,e){var r=e&&e.debugTiming?yne:vne;r("layout",()=>{var n=r(" buildLayoutGraph",()=>yOe(t));r(" runLayout",()=>oOe(n,r)),r(" updateInputGraph",()=>lOe(t,n))})}function oOe(t,e){e(" makeSpaceForEdgeLabels",()=>vOe(t)),e(" removeSelfEdges",()=>AOe(t)),e(" acyclic",()=>une(t)),e(" nestingGraph.run",()=>Xne(t)),e(" rank",()=>TD(gT(t))),e(" injectEdgeLabelProxies",()=>xOe(t)),e(" removeEmptyRanks",()=>mne(t)),e(" nestingGraph.cleanup",()=>Kne(t)),e(" normalizeRanks",()=>pne(t)),e(" assignRankMinMax",()=>bOe(t)),e(" removeEdgeLabelProxies",()=>wOe(t)),e(" normalize.run",()=>Ane(t)),e(" parentDummyChains",()=>vie(t)),e(" addBorderSegments",()=>bne(t)),e(" order",()=>gie(t)),e(" insertSelfEdges",()=>_Oe(t)),e(" adjustCoordinateSystem",()=>kne(t)),e(" position",()=>kie(t)),e(" positionSelfEdges",()=>LOe(t)),e(" removeBorderNodes",()=>COe(t)),e(" normalize.undo",()=>_ne(t)),e(" fixupEdgeLabelCoords",()=>EOe(t)),e(" undoCoordinateSystem",()=>Ene(t)),e(" translateGraph",()=>TOe(t)),e(" assignNodeIntersects",()=>kOe(t)),e(" reversePoints",()=>SOe(t)),e(" acyclic.undo",()=>hne(t))}function lOe(t,e){Se(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))}),Se(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 yOe(t){var e=new Ir({multigraph:!0,compound:!0}),r=CD(t.graph());return e.setGraph(Uh({},uOe,SD(r,cOe),Wd(r,hOe))),Se(t.nodes(),function(n){var i=CD(t.node(n));e.setNode(n,rf(SD(i,fOe),dOe)),e.setParent(n,t.parent(n))}),Se(t.edges(),function(n){var i=CD(t.edge(n));e.setEdge(n,Uh({},mOe,SD(i,pOe),Wd(i,gOe)))}),e}function vOe(t){var e=t.graph();e.ranksep/=2,Se(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 xOe(t){Se(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};Ic(t,"edge-proxy",a,"_ep")}})}function bOe(t){var e=0;Se(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=Fs(e,n.maxRank))}),t.graph().maxRank=e}function wOe(t){Se(t.nodes(),function(e){var r=t.node(e);r.dummy==="edge-proxy"&&(t.edge(r.e).labelRank=r.rank,t.removeNode(e))})}function TOe(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"),Se(t.nodes(),function(h){u(t.node(h))}),Se(t.edges(),function(h){var f=t.edge(h);Object.prototype.hasOwnProperty.call(f,"x")&&u(f)}),e-=s,n-=l,Se(t.nodes(),function(h){var f=t.node(h);f.x-=e,f.y-=n}),Se(t.edges(),function(h){var f=t.edge(h);Se(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 kOe(t){Se(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(aD(n,a)),r.points.push(aD(i,s))})}function EOe(t){Se(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 SOe(t){Se(t.edges(),function(e){var r=t.edge(e);r.reversed&&r.points.reverse()})}function COe(t){Se(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(xa(r.borderLeft)),s=t.node(xa(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}}),Se(t.nodes(),function(e){t.node(e).dummy==="border"&&t.removeNode(e)})}function AOe(t){Se(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 _Oe(t){var e=sf(t);Se(e,function(r){var n=0;Se(r,function(i,a){var s=t.node(i);s.order=a+n,Se(s.selfEdges,function(l){Ic(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 LOe(t){Se(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 SD(t,e){return Ud(Wd(t,e),Number)}function CD(t){var e={};return Se(t,function(r,n){e[n.toLowerCase()]=r}),e}var cOe,uOe,hOe,fOe,dOe,pOe,mOe,gOe,Sie=M(()=>{"use strict";Ht();Gs();wne();Cne();iD();uD();kD();Qne();yie();xie();Eie();Oc();o(Gu,"layout");o(oOe,"runLayout");o(lOe,"updateInputGraph");cOe=["nodesep","edgesep","ranksep","marginx","marginy"],uOe={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},hOe=["acyclicer","ranker","rankdir","align"],fOe=["width","height"],dOe={width:0,height:0},pOe=["minlen","weight","width","height","labeloffset"],mOe={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},gOe=["labelpos"];o(yOe,"buildLayoutGraph");o(vOe,"makeSpaceForEdgeLabels");o(xOe,"injectEdgeLabelProxies");o(bOe,"assignRankMinMax");o(wOe,"removeEdgeLabelProxies");o(TOe,"translateGraph");o(kOe,"assignNodeIntersects");o(EOe,"fixupEdgeLabelCoords");o(SOe,"reversePointsForReversedEdges");o(COe,"removeBorderNodes");o(AOe,"removeSelfEdges");o(_Oe,"insertSelfEdges");o(LOe,"positionSelfEdges");o(SD,"selectNumberAttrs");o(CD,"canonicalize")});var Qv=M(()=>{"use strict";iD();Sie();uD();kD()});function Ko(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:DOe(t),edges:NOe(t)};return dr(t.graph())||(e.value=rn(t.graph())),e}function DOe(t){return Qe(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 NOe(t){return Qe(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 AD=M(()=>{"use strict";Ht();pT();o(Ko,"write");o(DOe,"writeNodes");o(NOe,"writeEdges")});var wr,jd,_ie,Lie,bT,ROe,Die,Nie,MOe,Km,Aie,Rie,Mie,Iie,Oie,Pie=M(()=>{"use strict";ut();Gs();AD();wr=new Map,jd=new Map,_ie=new Map,Lie=o(()=>{jd.clear(),_ie.clear(),wr.clear()},"clear"),bT=o((t,e)=>{let r=jd.get(e)||[];return Y.trace("In isDescendant",e," ",t," = ",r.includes(t)),r.includes(t)},"isDescendant"),ROe=o((t,e)=>{let r=jd.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)||bT(t.v,e)||bT(t.w,e)||r.includes(t.w):(Y.debug("Tilt, ",e,",not in descendants"),!1)},"edgeInCluster"),Die=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)Die(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{ROe(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"),Nie=o((t,e)=>{let r=e.children(t),n=[...r];for(let i of r)_ie.set(i,t),n=[...n,...Nie(i,e)];return n},"extractDescendants"),MOe=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"),Km=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=Km(a,e,r),l=MOe(e,r,s);if(s)if(l.length>0)i=s;else return s}return i},"findNonClusterChild"),Aie=o(t=>!wr.has(t)||!wr.get(t).externalConnections?t:wr.has(t)?wr.get(t).id:t,"getAnchorId"),Rie=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: ",Km(r,t,r)),jd.set(r,Nie(r,t)),wr.set(r,{id:Km(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,jd),i.forEach(a=>{let s=bT(a.v,r),l=bT(a.w,r);s^l&&(Y.warn("Edge: ",a," leaves cluster ",r),Y.warn("Descendants of XXX ",r,": ",jd.get(r)),wr.get(r).externalConnections=!0)})):Y.debug("Not a cluster ",r,jd)});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=Aie(r.v),a=Aie(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",Ko(t)),Mie(t,0),Y.trace(wr)},"adjustClustersAndEdges"),Mie=o((t,e)=>{if(Y.warn("extractor - ",e,Ko(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 Ir({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Y.warn("Old graph before copy",Ko(t)),Die(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,")",Ko(l)),Y.debug("Old graph after copy",Ko(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&&Mie(a.graph,e+1)}},"extractor"),Iie=o((t,e)=>{if(e.length===0)return[];let r=Object.assign([],e);return e.forEach(n=>{let i=t.children(n),a=Iie(t,i);r=[...r,...a]}),r},"sorter"),Oie=o(t=>Iie(t,t.children()),"sortNodesByHierarchy")});var Fie={};vr(Fie,{render:()=>IOe});var Bie,IOe,zie=M(()=>{"use strict";Qv();AD();Gs();fL();Ot();Pie();vw();lw();hL();ut();$v();Vt();Bie=o(async(t,e,r,n,i,a)=>{Y.warn("Graph in recursive render:XAX",Ko(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 Bie(d,v.graph,r,n,e.node(y),a),_=w.elem;je(v,_),v.diff=w.diff||0,Y.info("New compound node after recursive render XAX",y,"width",v.width,"height",v.height),rJ(_,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(Km(v.id,e)),wr.set(v.id,{id:Km(v.id,e),node:v})):(Y.trace("Node - the non recursive path XAX",y,d,e.node(y),s),await Lm(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 dw(f,x)});await Promise.all(y)},"processEdges")(),Y.info("Graph before layout:",JSON.stringify(Ko(e))),Y.info("############################################# XXX"),Y.info("### Layout ### XXX"),Y.info("############################################# XXX"),Gu(e),Y.info("Graph after layout:",JSON.stringify(Ko(e)));let m=0,{subGraphTitleTotalMargin:g}=Fu(a);return await Promise.all(Oie(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,Uv(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 _m(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),Uv(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=mw(h,v,wr,r,x,b,n);pw(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"),IOe=o(async(t,e)=>{let r=new Ir({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");gw(n,t.markers,t.type,t.diagramId),nJ(),tJ(),jZ(),Lie(),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";aJ();ut();Zv={},_D=o(t=>{for(let e of t)Zv[e.name]=e},"registerLayoutLoaders"),OOe=o(()=>{_D([{name:"dagre",loader:o(async()=>await Promise.resolve().then(()=>(zie(),Fie)),"loader")}])},"registerDefaultLayoutLoaders");OOe();Qm=o(async(t,e)=>{if(!(t.layoutAlgorithm in Zv))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);let r=Zv[t.layoutAlgorithm];return(await r.loader()).render(t,e,iJ,{algorithm:r.algorithm})},"render"),wT=o((t="",{fallback:e="dagre"}={})=>{if(t in Zv)return t;if(e in Zv)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,POe,BOe,TT=M(()=>{"use strict";ai();ut();Zm=o((t,e,r,n)=>{t.attr("class",r);let{width:i,height:a,x:s,y:l}=POe(t,e);Zr(t,a,i,n);let u=BOe(s,l,i,a,e);t.attr("viewBox",u),Y.debug(`viewBox configured: ${u} with padding: ${e}`)},"setupViewPortForSVG"),POe=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"),BOe=o((t,e,r,n,i)=>`${t-i} ${e-i} ${r} ${n}`,"createViewBox")});var FOe,zOe,Gie,$ie=M(()=>{"use strict";pr();Vt();ut();ow();Jv();TT();hr();cL();FOe=o(function(t,e){return e.db.getClasses()},"getClasses"),zOe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing state diagram (v2)",e);let{securityLevel:i,flowchart:a,layout:s}=pe(),l;i==="sandbox"&&(l=Ve("#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=Am(e,i),d=lL();h.type=n.type,h.layoutAlgorithm=wT(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 Qm(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=Ve(`#${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"),Gie={getClasses:FOe,draw:zOe}});var LD,Vie,Uie=M(()=>{"use strict";LD=function(){var t=o(function(ki,At,Pt,wt){for(Pt=Pt||{},wt=ki.length;wt--;Pt[ki[wt]]=At);return Pt},"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],S=[1,47],A=[1,43],I=[1,50],D=[1,45],k=[1,51],R=[1,52],C=[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],G=[1,61],z=[1,60],W=[1,62],Z=[8,9,11,75,77],j=[1,77],oe=[1,90],K=[1,95],ee=[1,94],J=[1,91],H=[1,87],q=[1,93],Q=[1,89],ae=[1,96],ue=[1,92],ce=[1,97],te=[1,88],Ne=[8,9,10,11,40,75,77],se=[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],Re=[8,9,11,44,60,75,77,88,101,104,105,108,110,113,114,115],Ce=[44,60,88,101,104,105,108,110,113,114,115],Pe=[1,123],Ie=[1,122],$e=[1,130],ye=[1,144],X=[1,145],fe=[1,146],he=[1,147],ge=[1,132],ne=[1,134],ve=[1,138],U=[1,139],Te=[1,140],ie=[1,141],Ee=[1,142],Ae=[1,143],Ge=[1,148],Be=[1,149],me=[1,128],He=[1,129],Oe=[1,136],et=[1,131],bt=[1,135],kt=[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],rt=[1,151],yt=[1,153],Ue=[8,9,11],tt=[8,9,10,11,14,44,60,88,104,105,108,110,113,114,115],ht=[1,173],Et=[1,169],er=[1,170],dt=[1,174],Je=[1,171],ct=[1,172],Ct=[77,115,118],pt=[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],Bt=[10,105],Tr=[31,49,51,53,55,57,62,64,66,67,69,71,115,116,117],yr=[1,242],or=[1,240],ln=[1,244],Or=[1,238],ii=[1,239],mn=[1,241],On=[1,243],_r=[1,245],mi=[1,263],vs=[8,9,11,105],Pn=[8,9,10,11,60,83,104,105,108,109,110,111],So={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(At,Pt,wt,We,Ft,de,gn){var xe=de.length-1;switch(Ft){case 2:this.$=[];break;case 3:(!Array.isArray(de[xe])||de[xe].length>0)&&de[xe-1].push(de[xe]),this.$=de[xe-1];break;case 4:case 181:this.$=de[xe];break;case 11:We.setDirection("TB"),this.$="TB";break;case 12:We.setDirection(de[xe-1]),this.$=de[xe-1];break;case 27:this.$=de[xe-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=We.addSubGraph(de[xe-6],de[xe-1],de[xe-4]);break;case 34:this.$=We.addSubGraph(de[xe-3],de[xe-1],de[xe-3]);break;case 35:this.$=We.addSubGraph(void 0,de[xe-1],void 0);break;case 37:this.$=de[xe].trim(),We.setAccTitle(this.$);break;case 38:case 39:this.$=de[xe].trim(),We.setAccDescription(this.$);break;case 43:this.$=de[xe-1]+de[xe];break;case 44:this.$=de[xe];break;case 45:We.addVertex(de[xe-1][0],void 0,void 0,void 0,void 0,void 0,void 0,de[xe]),We.addLink(de[xe-3].stmt,de[xe-1],de[xe-2]),this.$={stmt:de[xe-1],nodes:de[xe-1].concat(de[xe-3].nodes)};break;case 46:We.addLink(de[xe-2].stmt,de[xe],de[xe-1]),this.$={stmt:de[xe],nodes:de[xe].concat(de[xe-2].nodes)};break;case 47:We.addLink(de[xe-3].stmt,de[xe-1],de[xe-2]),this.$={stmt:de[xe-1],nodes:de[xe-1].concat(de[xe-3].nodes)};break;case 48:this.$={stmt:de[xe-1],nodes:de[xe-1]};break;case 49:We.addVertex(de[xe-1][0],void 0,void 0,void 0,void 0,void 0,void 0,de[xe]),this.$={stmt:de[xe-1],nodes:de[xe-1],shapeData:de[xe]};break;case 50:this.$={stmt:de[xe],nodes:de[xe]};break;case 51:this.$=[de[xe]];break;case 52:We.addVertex(de[xe-5][0],void 0,void 0,void 0,void 0,void 0,void 0,de[xe-4]),this.$=de[xe-5].concat(de[xe]);break;case 53:this.$=de[xe-4].concat(de[xe]);break;case 54:this.$=de[xe];break;case 55:this.$=de[xe-2],We.setClass(de[xe-2],de[xe]);break;case 56:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"square");break;case 57:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"doublecircle");break;case 58:this.$=de[xe-5],We.addVertex(de[xe-5],de[xe-2],"circle");break;case 59:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"ellipse");break;case 60:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"stadium");break;case 61:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"subroutine");break;case 62:this.$=de[xe-7],We.addVertex(de[xe-7],de[xe-1],"rect",void 0,void 0,void 0,Object.fromEntries([[de[xe-5],de[xe-3]]]));break;case 63:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"cylinder");break;case 64:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"round");break;case 65:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"diamond");break;case 66:this.$=de[xe-5],We.addVertex(de[xe-5],de[xe-2],"hexagon");break;case 67:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"odd");break;case 68:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"trapezoid");break;case 69:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"inv_trapezoid");break;case 70:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"lean_right");break;case 71:this.$=de[xe-3],We.addVertex(de[xe-3],de[xe-1],"lean_left");break;case 72:this.$=de[xe],We.addVertex(de[xe]);break;case 73:de[xe-1].text=de[xe],this.$=de[xe-1];break;case 74:case 75:de[xe-2].text=de[xe-1],this.$=de[xe-2];break;case 76:this.$=de[xe];break;case 77:var ja=We.destructLink(de[xe],de[xe-2]);this.$={type:ja.type,stroke:ja.stroke,length:ja.length,text:de[xe-1]};break;case 78:this.$={text:de[xe],type:"text"};break;case 79:this.$={text:de[xe-1].text+""+de[xe],type:de[xe-1].type};break;case 80:this.$={text:de[xe],type:"string"};break;case 81:this.$={text:de[xe],type:"markdown"};break;case 82:var ja=We.destructLink(de[xe]);this.$={type:ja.type,stroke:ja.stroke,length:ja.length};break;case 83:this.$=de[xe-1];break;case 84:this.$={text:de[xe],type:"text"};break;case 85:this.$={text:de[xe-1].text+""+de[xe],type:de[xe-1].type};break;case 86:this.$={text:de[xe],type:"string"};break;case 87:case 102:this.$={text:de[xe],type:"markdown"};break;case 99:this.$={text:de[xe],type:"text"};break;case 100:this.$={text:de[xe-1].text+""+de[xe],type:de[xe-1].type};break;case 101:this.$={text:de[xe],type:"text"};break;case 103:this.$=de[xe-4],We.addClass(de[xe-2],de[xe]);break;case 104:this.$=de[xe-4],We.setClass(de[xe-2],de[xe]);break;case 105:case 113:this.$=de[xe-1],We.setClickEvent(de[xe-1],de[xe]);break;case 106:case 114:this.$=de[xe-3],We.setClickEvent(de[xe-3],de[xe-2]),We.setTooltip(de[xe-3],de[xe]);break;case 107:this.$=de[xe-2],We.setClickEvent(de[xe-2],de[xe-1],de[xe]);break;case 108:this.$=de[xe-4],We.setClickEvent(de[xe-4],de[xe-3],de[xe-2]),We.setTooltip(de[xe-4],de[xe]);break;case 109:this.$=de[xe-2],We.setLink(de[xe-2],de[xe]);break;case 110:this.$=de[xe-4],We.setLink(de[xe-4],de[xe-2]),We.setTooltip(de[xe-4],de[xe]);break;case 111:this.$=de[xe-4],We.setLink(de[xe-4],de[xe-2],de[xe]);break;case 112:this.$=de[xe-6],We.setLink(de[xe-6],de[xe-4],de[xe]),We.setTooltip(de[xe-6],de[xe-2]);break;case 115:this.$=de[xe-1],We.setLink(de[xe-1],de[xe]);break;case 116:this.$=de[xe-3],We.setLink(de[xe-3],de[xe-2]),We.setTooltip(de[xe-3],de[xe]);break;case 117:this.$=de[xe-3],We.setLink(de[xe-3],de[xe-2],de[xe]);break;case 118:this.$=de[xe-5],We.setLink(de[xe-5],de[xe-4],de[xe]),We.setTooltip(de[xe-5],de[xe-2]);break;case 119:this.$=de[xe-4],We.addVertex(de[xe-2],void 0,void 0,de[xe]);break;case 120:this.$=de[xe-4],We.updateLink([de[xe-2]],de[xe]);break;case 121:this.$=de[xe-4],We.updateLink(de[xe-2],de[xe]);break;case 122:this.$=de[xe-8],We.updateLinkInterpolate([de[xe-6]],de[xe-2]),We.updateLink([de[xe-6]],de[xe]);break;case 123:this.$=de[xe-8],We.updateLinkInterpolate(de[xe-6],de[xe-2]),We.updateLink(de[xe-6],de[xe]);break;case 124:this.$=de[xe-6],We.updateLinkInterpolate([de[xe-4]],de[xe]);break;case 125:this.$=de[xe-6],We.updateLinkInterpolate(de[xe-4],de[xe]);break;case 126:case 128:this.$=[de[xe]];break;case 127:case 129:de[xe-2].push(de[xe]),this.$=de[xe-2];break;case 131:this.$=de[xe-1]+de[xe];break;case 179:this.$=de[xe];break;case 180:this.$=de[xe-1]+""+de[xe];break;case 182:this.$=de[xe-1]+""+de[xe];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:S,108:A,110:I,112:41,113:D,114:k,115:R,120:C,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:G,9:z,11:W,21:58,41:59,72:63,75:[1,64],77:[1,65]},{8:G,9:z,11:W,21:66},{8:G,9:z,11:W,21:67},{8:G,9:z,11:W,21:68},{8:G,9:z,11:W,21:69},{8:G,9:z,11:W,21:70},{8:G,9:z,10:[1,71],11:W,21:72},t(B,[2,36]),{35:[1,73]},{37:[1,74]},t(B,[2,39]),t(Z,[2,50],{18:75,39:76,10:F,40:j}),{10:[1,78]},{10:[1,79]},{10:[1,80]},{10:[1,81]},{14:oe,44:K,60:ee,79:[1,85],88:J,94:[1,82],96:[1,83],100:84,104:H,105:q,108:Q,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(Ne,[2,51]),t(Ne,[2,54],{46:[1,98]}),t(se,[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:S,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(Re,[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:S,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(Ce,[2,76],{73:115,62:[1,117],74:[1,116]}),{76:118,78:119,79:[1,120],80:[1,121],115:Pe,118:Ie},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:$e,12:ye,14:X,27:fe,28:124,32:he,44:ge,60:ne,75:ve,79:[1,126],80:[1,127],82:137,83:U,84:Te,85:ie,86:Ee,87:Ae,88:Ge,89:Be,90:125,104:me,108:He,110:Oe,113:et,114:bt,115:kt},t(vt,a,{5:150}),t(B,[2,37]),t(B,[2,38]),t(Z,[2,48],{44:rt}),t(Z,[2,49],{18:152,10:F,40:yt}),t(Ne,[2,44]),{44:g,47:154,60:y,88:T,101:E,104:L,105:S,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:S,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:S,108:A,110:I,112:41,113:D,114:k,115:R},t(Ue,[2,105],{10:[1,160],95:[1,161]}),{79:[1,162]},t(Ue,[2,113],{119:164,10:[1,163],14:oe,44:K,60:ee,88:J,104:H,105:q,108:Q,110:ae,113:ue,114:ce,115:te}),t(Ue,[2,115],{10:[1,165]}),t(tt,[2,181]),t(tt,[2,168]),t(tt,[2,169]),t(tt,[2,170]),t(tt,[2,171]),t(tt,[2,172]),t(tt,[2,173]),t(tt,[2,174]),t(tt,[2,175]),t(tt,[2,176]),t(tt,[2,177]),t(tt,[2,178]),{44:g,47:166,60:y,88:T,101:E,104:L,105:S,108:A,110:I,112:41,113:D,114:k,115:R},{30:167,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{30:175,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{30:177,50:[1,176],67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{30:178,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{30:179,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{30:180,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{108:[1,181]},{30:182,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{30:183,65:[1,184],67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{30:185,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{30:186,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{30:187,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},t(ke,[2,180]),t(i,[2,20]),t(Re,[2,25]),t(Z,[2,46],{39:188,18:189,10:F,40:j}),t(Ce,[2,73],{10:[1,190]}),{10:[1,191]},{30:192,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{77:[1,193],78:194,115:Pe,118:Ie},t(Ct,[2,78]),t(Ct,[2,80]),t(Ct,[2,81]),t(Ct,[2,166]),t(Ct,[2,167]),{8:G,9:z,10:$e,11:W,12:ye,14:X,21:196,27:fe,29:[1,195],32:he,44:ge,60:ne,75:ve,82:137,83:U,84:Te,85:ie,86:Ee,87:Ae,88:Ge,89:Be,90:197,104:me,108:He,110:Oe,113:et,114:bt,115:kt},t(pt,[2,99]),t(pt,[2,101]),t(pt,[2,102]),t(pt,[2,155]),t(pt,[2,156]),t(pt,[2,157]),t(pt,[2,158]),t(pt,[2,159]),t(pt,[2,160]),t(pt,[2,161]),t(pt,[2,162]),t(pt,[2,163]),t(pt,[2,164]),t(pt,[2,165]),t(pt,[2,88]),t(pt,[2,89]),t(pt,[2,90]),t(pt,[2,91]),t(pt,[2,92]),t(pt,[2,93]),t(pt,[2,94]),t(pt,[2,95]),t(pt,[2,96]),t(pt,[2,97]),t(pt,[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:S,108:A,110:I,112:41,113:D,114:k,115:R,120:C,121:O,122:N,123:P},{10:F,18:199},{44:[1,200]},t(Ne,[2,43]),{10:[1,201],44:g,60:y,88:T,101:E,104:L,105:S,108:A,110:I,112:111,113:D,114:k,115:R},{10:[1,202]},{10:[1,203],105:[1,204]},t(Bt,[2,126]),{10:[1,205],44:g,60:y,88:T,101:E,104:L,105:S,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:S,108:A,110:I,112:111,113:D,114:k,115:R},{79:[1,207]},t(Ue,[2,107],{10:[1,208]}),t(Ue,[2,109],{10:[1,209]}),{79:[1,210]},t(tt,[2,182]),{79:[1,211],97:[1,212]},t(Ne,[2,55],{112:111,44:g,60:y,88:T,101:E,104:L,105:S,108:A,110:I,113:D,114:k,115:R}),{31:[1,213],67:ht,81:214,115:dt,116:Je,117:ct},t(Tr,[2,84]),t(Tr,[2,86]),t(Tr,[2,87]),t(Tr,[2,151]),t(Tr,[2,152]),t(Tr,[2,153]),t(Tr,[2,154]),{49:[1,215],67:ht,81:214,115:dt,116:Je,117:ct},{30:216,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{51:[1,217],67:ht,81:214,115:dt,116:Je,117:ct},{53:[1,218],67:ht,81:214,115:dt,116:Je,117:ct},{55:[1,219],67:ht,81:214,115:dt,116:Je,117:ct},{57:[1,220],67:ht,81:214,115:dt,116:Je,117:ct},{60:[1,221]},{64:[1,222],67:ht,81:214,115:dt,116:Je,117:ct},{66:[1,223],67:ht,81:214,115:dt,116:Je,117:ct},{30:224,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},{31:[1,225],67:ht,81:214,115:dt,116:Je,117:ct},{67:ht,69:[1,226],71:[1,227],81:214,115:dt,116:Je,117:ct},{67:ht,69:[1,229],71:[1,228],81:214,115:dt,116:Je,117:ct},t(Z,[2,45],{18:152,10:F,40:yt}),t(Z,[2,47],{44:rt}),t(Ce,[2,75]),t(Ce,[2,74]),{62:[1,230],67:ht,81:214,115:dt,116:Je,117:ct},t(Ce,[2,77]),t(Ct,[2,79]),{30:231,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},t(vt,a,{5:232}),t(pt,[2,100]),t(B,[2,35]),{43:233,44:g,45:39,47:40,60:y,88:T,101:E,104:L,105:S,108:A,110:I,112:41,113:D,114:k,115:R},{10:F,18:234},{10:yr,60:or,83:ln,91:235,104:Or,106:236,107:237,108:ii,109:mn,110:On,111:_r},{10:yr,60:or,83:ln,91:246,103:[1,247],104:Or,106:236,107:237,108:ii,109:mn,110:On,111:_r},{10:yr,60:or,83:ln,91:248,103:[1,249],104:Or,106:236,107:237,108:ii,109:mn,110:On,111:_r},{104:[1,250]},{10:yr,60:or,83:ln,91:251,104:Or,106:236,107:237,108:ii,109:mn,110:On,111:_r},{44:g,47:252,60:y,88:T,101:E,104:L,105:S,108:A,110:I,112:41,113:D,114:k,115:R},t(Ue,[2,106]),{79:[1,253]},{79:[1,254],97:[1,255]},t(Ue,[2,114]),t(Ue,[2,116],{10:[1,256]}),t(Ue,[2,117]),t(se,[2,56]),t(Tr,[2,85]),t(se,[2,57]),{51:[1,257],67:ht,81:214,115:dt,116:Je,117:ct},t(se,[2,64]),t(se,[2,59]),t(se,[2,60]),t(se,[2,61]),{108:[1,258]},t(se,[2,63]),t(se,[2,65]),{66:[1,259],67:ht,81:214,115:dt,116:Je,117:ct},t(se,[2,67]),t(se,[2,68]),t(se,[2,70]),t(se,[2,69]),t(se,[2,71]),t([10,44,60,88,101,104,105,108,110,113,114,115],[2,83]),{31:[1,260],67:ht,81:214,115:dt,116:Je,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:S,108:A,110:I,112:41,113:D,114:k,115:R,120:C,121:O,122:N,123:P},t(Ne,[2,53]),{43:262,44:g,45:39,47:40,60:y,88:T,101:E,104:L,105:S,108:A,110:I,112:41,113:D,114:k,115:R},t(Ue,[2,119],{105:mi}),t(vs,[2,128],{107:264,10:yr,60:or,83:ln,104:Or,108:ii,109:mn,110:On,111:_r}),t(Pn,[2,130]),t(Pn,[2,132]),t(Pn,[2,133]),t(Pn,[2,134]),t(Pn,[2,135]),t(Pn,[2,136]),t(Pn,[2,137]),t(Pn,[2,138]),t(Pn,[2,139]),t(Ue,[2,120],{105:mi}),{10:[1,265]},t(Ue,[2,121],{105:mi}),{10:[1,266]},t(Bt,[2,127]),t(Ue,[2,103],{105:mi}),t(Ue,[2,104],{112:111,44:g,60:y,88:T,101:E,104:L,105:S,108:A,110:I,113:D,114:k,115:R}),t(Ue,[2,108]),t(Ue,[2,110],{10:[1,267]}),t(Ue,[2,111]),{97:[1,268]},{51:[1,269]},{62:[1,270]},{66:[1,271]},{8:G,9:z,11:W,21:272},t(B,[2,34]),t(Ne,[2,52]),{10:yr,60:or,83:ln,104:Or,106:273,107:237,108:ii,109:mn,110:On,111:_r},t(Pn,[2,131]),{14:oe,44:K,60:ee,88:J,100:274,104:H,105:q,108:Q,110:ae,113:ue,114:ce,115:te,119:86},{14:oe,44:K,60:ee,88:J,100:275,104:H,105:q,108:Q,110:ae,113:ue,114:ce,115:te,119:86},{97:[1,276]},t(Ue,[2,118]),t(se,[2,58]),{30:277,67:ht,79:Et,80:er,81:168,115:dt,116:Je,117:ct},t(se,[2,66]),t(vt,a,{5:278}),t(vs,[2,129],{107:264,10:yr,60:or,83:ln,104:Or,108:ii,109:mn,110:On,111:_r}),t(Ue,[2,124],{119:164,10:[1,279],14:oe,44:K,60:ee,88:J,104:H,105:q,108:Q,110:ae,113:ue,114:ce,115:te}),t(Ue,[2,125],{119:164,10:[1,280],14:oe,44:K,60:ee,88:J,104:H,105:q,108:Q,110:ae,113:ue,114:ce,115:te}),t(Ue,[2,112]),{31:[1,281],67:ht,81:214,115:dt,116:Je,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:S,108:A,110:I,112:41,113:D,114:k,115:R,120:C,121:O,122:N,123:P},{10:yr,60:or,83:ln,91:283,104:Or,106:236,107:237,108:ii,109:mn,110:On,111:_r},{10:yr,60:or,83:ln,91:284,104:Or,106:236,107:237,108:ii,109:mn,110:On,111:_r},t(se,[2,62]),t(B,[2,33]),t(Ue,[2,122],{105:mi}),t(Ue,[2,123],{105:mi})],defaultActions:{},parseError:o(function(At,Pt){if(Pt.recoverable)this.trace(At);else{var wt=new Error(At);throw wt.hash=Pt,wt}},"parseError"),parse:o(function(At){var Pt=this,wt=[0],We=[],Ft=[null],de=[],gn=this.table,xe="",ja=0,W1=0,Y1=0,q1=2,X1=1,op=de.slice.call(arguments,1),Kn=Object.create(this.lexer),ca={yy:{}};for(var tc in this.yy)Object.prototype.hasOwnProperty.call(this.yy,tc)&&(ca.yy[tc]=this.yy[tc]);Kn.setInput(At,ca.yy),ca.yy.lexer=Kn,ca.yy.parser=this,typeof Kn.yylloc>"u"&&(Kn.yylloc={});var Wf=Kn.yylloc;de.push(Wf);var j1=Kn.options&&Kn.options.ranges;typeof ca.yy.parseError=="function"?this.parseError=ca.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function TF(Ka){wt.length=wt.length-2*Ka,Ft.length=Ft.length-Ka,de.length=de.length-Ka}o(TF,"popStack");function Yf(){var Ka;return Ka=We.pop()||Kn.lex()||X1,typeof Ka!="number"&&(Ka instanceof Array&&(We=Ka,Ka=We.pop()),Ka=Pt.symbols_[Ka]||Ka),Ka}o(Yf,"lex");for(var ua,K1,En,Oi,kF,lp,rc={},qf,Co,zb,Xf;;){if(En=wt[wt.length-1],this.defaultActions[En]?Oi=this.defaultActions[En]:((ua===null||typeof ua>"u")&&(ua=Yf()),Oi=gn[En]&&gn[En][ua]),typeof Oi>"u"||!Oi.length||!Oi[0]){var cp="";Xf=[];for(qf in gn[En])this.terminals_[qf]&&qf>q1&&Xf.push("'"+this.terminals_[qf]+"'");Kn.showPosition?cp="Parse error on line "+(ja+1)+`: +`+Kn.showPosition()+` +Expecting `+Xf.join(", ")+", got '"+(this.terminals_[ua]||ua)+"'":cp="Parse error on line "+(ja+1)+": Unexpected "+(ua==X1?"end of input":"'"+(this.terminals_[ua]||ua)+"'"),this.parseError(cp,{text:Kn.match,token:this.terminals_[ua]||ua,line:Kn.yylineno,loc:Wf,expected:Xf})}if(Oi[0]instanceof Array&&Oi.length>1)throw new Error("Parse Error: multiple actions possible at state: "+En+", token: "+ua);switch(Oi[0]){case 1:wt.push(ua),Ft.push(Kn.yytext),de.push(Kn.yylloc),wt.push(Oi[1]),ua=null,K1?(ua=K1,K1=null):(W1=Kn.yyleng,xe=Kn.yytext,ja=Kn.yylineno,Wf=Kn.yylloc,Y1>0&&Y1--);break;case 2:if(Co=this.productions_[Oi[1]][1],rc.$=Ft[Ft.length-Co],rc._$={first_line:de[de.length-(Co||1)].first_line,last_line:de[de.length-1].last_line,first_column:de[de.length-(Co||1)].first_column,last_column:de[de.length-1].last_column},j1&&(rc._$.range=[de[de.length-(Co||1)].range[0],de[de.length-1].range[1]]),lp=this.performAction.apply(rc,[xe,W1,ja,ca.yy,Oi[1],Ft,de].concat(op)),typeof lp<"u")return lp;Co&&(wt=wt.slice(0,-1*Co*2),Ft=Ft.slice(0,-1*Co),de=de.slice(0,-1*Co)),wt.push(this.productions_[Oi[1]][0]),Ft.push(rc.$),de.push(rc._$),zb=gn[wt[wt.length-2]][wt[wt.length-1]],wt.push(zb);break;case 3:return!0}}return!0},"parse")},gl=function(){var ki={EOF:1,parseError:o(function(Pt,wt){if(this.yy.parser)this.yy.parser.parseError(Pt,wt);else throw new Error(Pt)},"parseError"),setInput:o(function(At,Pt){return this.yy=Pt||this.yy||{},this._input=At,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 At=this._input[0];this.yytext+=At,this.yyleng++,this.offset++,this.match+=At,this.matched+=At;var Pt=At.match(/(?:\r\n?|\n).*/g);return Pt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),At},"input"),unput:o(function(At){var Pt=At.length,wt=At.split(/(?:\r\n?|\n)/g);this._input=At+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Pt),this.offset-=Pt;var We=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),wt.length-1&&(this.yylineno-=wt.length-1);var Ft=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:wt?(wt.length===We.length?this.yylloc.first_column:0)+We[We.length-wt.length].length-wt[0].length:this.yylloc.first_column-Pt},this.options.ranges&&(this.yylloc.range=[Ft[0],Ft[0]+this.yyleng-Pt]),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(At){this.unput(this.match.slice(At))},"less"),pastInput:o(function(){var At=this.matched.substr(0,this.matched.length-this.match.length);return(At.length>20?"...":"")+At.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var At=this.match;return At.length<20&&(At+=this._input.substr(0,20-At.length)),(At.substr(0,20)+(At.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var At=this.pastInput(),Pt=new Array(At.length+1).join("-");return At+this.upcomingInput()+` +`+Pt+"^"},"showPosition"),test_match:o(function(At,Pt){var wt,We,Ft;if(this.options.backtrack_lexer&&(Ft={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&&(Ft.yylloc.range=this.yylloc.range.slice(0))),We=At[0].match(/(?:\r\n?|\n).*/g),We&&(this.yylineno+=We.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:We?We[We.length-1].length-We[We.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+At[0].length},this.yytext+=At[0],this.match+=At[0],this.matches=At,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(At[0].length),this.matched+=At[0],wt=this.performAction.call(this,this.yy,this,Pt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),wt)return wt;if(this._backtrack){for(var de in Ft)this[de]=Ft[de];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var At,Pt,wt,We;this._more||(this.yytext="",this.match="");for(var Ft=this._currentRules(),de=0;dePt[0].length)){if(Pt=wt,We=de,this.options.backtrack_lexer){if(At=this.test_match(wt,Ft[de]),At!==!1)return At;if(this._backtrack){Pt=!1;continue}else return!1}else if(!this.options.flex)break}return Pt?(At=this.test_match(Pt,Ft[We]),At!==!1?At:!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 Pt=this.next();return Pt||this.lex()},"lex"),begin:o(function(Pt){this.conditionStack.push(Pt)},"begin"),popState:o(function(){var Pt=this.conditionStack.length-1;return Pt>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(Pt){return Pt=this.conditionStack.length-1-Math.abs(Pt||0),Pt>=0?this.conditionStack[Pt]:"INITIAL"},"topState"),pushState:o(function(Pt){this.begin(Pt)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Pt,wt,We,Ft){var de=Ft;switch(We){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"),wt.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let gn=/\n\s*/g;return wt.yytext=wt.yytext.replace(gn,"
    "),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 Pt.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return Pt.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return Pt.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 ki}();So.lexer=gl;function Bn(){this.yy={}}return o(Bn,"Parser"),Bn.prototype=So,So.Parser=Bn,new Bn}();LD.parser=LD;Vie=LD});var GOe,$Oe,Hie,Wie=M(()=>{"use strict";Lo();GOe=o((t,e)=>{let r=ay,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Zs(n,i,a,e)},"fade"),$Oe=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: ${GOe(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"),Hie=$Oe});var kT={};vr(kT,{diagram:()=>VOe});var VOe,ET=M(()=>{"use strict";Vt();cL();$ie();Uie();Wie();VOe={parser:Vie,db:sw,renderer:Gie,styles:Hie,init:o(t=>{t.flowchart||(t.flowchart={}),t.layout&&a7({layout:t.layout}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,a7({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}}),sw.clear(),sw.setGen("gen-2")},"init")}});var DD,Kie,Qie=M(()=>{"use strict";DD=function(){var t=o(function(S,A,I,D){for(I=I||{},D=S.length;D--;I[S[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,C,O){var N=C.length-1;switch(R){case 1:break;case 2:this.$=[];break;case 3:C[N-1].push(C[N]),this.$=C[N-1];break;case 4:case 5:this.$=C[N];break;case 6:case 7:this.$=[];break;case 8:k.addEntity(C[N-4]),k.addEntity(C[N-2]),k.addRelationship(C[N-4],C[N],C[N-2],C[N-3]);break;case 9:k.addEntity(C[N-3]),k.addAttributes(C[N-3],C[N-1]);break;case 10:k.addEntity(C[N-2]);break;case 11:k.addEntity(C[N]);break;case 12:k.addEntity(C[N-6],C[N-4]),k.addAttributes(C[N-6],C[N-1]);break;case 13:k.addEntity(C[N-5],C[N-3]);break;case 14:k.addEntity(C[N-3],C[N-1]);break;case 15:case 16:this.$=C[N].trim(),k.setAccTitle(this.$);break;case 17:case 18:this.$=C[N].trim(),k.setAccDescription(this.$);break;case 19:case 43:this.$=C[N];break;case 20:case 41:case 42:this.$=C[N].replace(/"/g,"");break;case 21:case 29:this.$=[C[N]];break;case 22:C[N].push(C[N-1]),this.$=C[N];break;case 23:this.$={attributeType:C[N-1],attributeName:C[N]};break;case 24:this.$={attributeType:C[N-2],attributeName:C[N-1],attributeKeyTypeList:C[N]};break;case 25:this.$={attributeType:C[N-2],attributeName:C[N-1],attributeComment:C[N]};break;case 26:this.$={attributeType:C[N-3],attributeName:C[N-2],attributeKeyTypeList:C[N-1],attributeComment:C[N]};break;case 27:case 28:case 31:this.$=C[N];break;case 30:C[N-2].push(C[N]),this.$=C[N-2];break;case 32:this.$=C[N].replace(/"/g,"");break;case 33:this.$={cardA:C[N],relType:C[N-1],cardB:C[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],C=[],O=this.table,N="",P=0,F=0,B=0,G=2,z=1,W=C.slice.call(arguments,1),Z=Object.create(this.lexer),j={yy:{}};for(var oe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,oe)&&(j.yy[oe]=this.yy[oe]);Z.setInput(A,j.yy),j.yy.lexer=Z,j.yy.parser=this,typeof Z.yylloc>"u"&&(Z.yylloc={});var K=Z.yylloc;C.push(K);var ee=Z.options&&Z.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function J(Ie){D.length=D.length-2*Ie,R.length=R.length-Ie,C.length=C.length-Ie}o(J,"popStack");function H(){var Ie;return Ie=k.pop()||Z.lex()||z,typeof Ie!="number"&&(Ie instanceof Array&&(k=Ie,Ie=k.pop()),Ie=I.symbols_[Ie]||Ie),Ie}o(H,"lex");for(var q,Q,ae,ue,ce,te,Ne={},se,ke,Re,Ce;;){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 Pe="";Ce=[];for(se in O[ae])this.terminals_[se]&&se>G&&Ce.push("'"+this.terminals_[se]+"'");Z.showPosition?Pe="Parse error on line "+(P+1)+`: +`+Z.showPosition()+` +Expecting `+Ce.join(", ")+", got '"+(this.terminals_[q]||q)+"'":Pe="Parse error on line "+(P+1)+": Unexpected "+(q==z?"end of input":"'"+(this.terminals_[q]||q)+"'"),this.parseError(Pe,{text:Z.match,token:this.terminals_[q]||q,line:Z.yylineno,loc:K,expected:Ce})}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(Z.yytext),C.push(Z.yylloc),D.push(ue[1]),q=null,Q?(q=Q,Q=null):(F=Z.yyleng,N=Z.yytext,P=Z.yylineno,K=Z.yylloc,B>0&&B--);break;case 2:if(ke=this.productions_[ue[1]][1],Ne.$=R[R.length-ke],Ne._$={first_line:C[C.length-(ke||1)].first_line,last_line:C[C.length-1].last_line,first_column:C[C.length-(ke||1)].first_column,last_column:C[C.length-1].last_column},ee&&(Ne._$.range=[C[C.length-(ke||1)].range[0],C[C.length-1].range[1]]),te=this.performAction.apply(Ne,[N,F,P,j.yy,ue[1],R,C].concat(W)),typeof te<"u")return te;ke&&(D=D.slice(0,-1*ke*2),R=R.slice(0,-1*ke),C=C.slice(0,-1*ke)),D.push(this.productions_[ue[1]][0]),R.push(Ne.$),C.push(Ne._$),Re=O[D[D.length-2]][D[D.length-1]],D.push(Re);break;case 3:return!0}}return!0},"parse")},E=function(){var S={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 C in R)this[C]=R[C];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(),C=0;CI[0].length)){if(I=D,k=C,this.options.backtrack_lexer){if(A=this.test_match(D,R[C]),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 C=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 S}();T.lexer=E;function L(){this.yy={}}return o(L,"Parser"),L.prototype=T,T.Parser=L,new L}();DD.parser=DD;Kie=DD});var Kd,ND,jOe,KOe,Zie,QOe,ZOe,JOe,ePe,tPe,Jie,eae=M(()=>{"use strict";ut();Vt();Ai();Kd=new Map,ND=[],jOe={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"},KOe={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},Zie=o(function(t,e=void 0){return Kd.has(t)?!Kd.get(t).alias&&e&&(Kd.get(t).alias=e,Y.info(`Add alias '${e}' to entity '${t}'`)):(Kd.set(t,{attributes:[],alias:e}),Y.info("Added new entity :",t)),Kd.get(t)},"addEntity"),QOe=o(()=>Kd,"getEntities"),ZOe=o(function(t,e){let r=Zie(t),n;for(n=e.length-1;n>=0;n--)r.attributes.push(e[n]),Y.debug("Added attribute ",e[n].attributeName)},"addAttributes"),JOe=o(function(t,e,r,n){let i={entityA:t,roleA:e,entityB:r,relSpec:n};ND.push(i),Y.debug("Added new relationship :",i)},"addRelationship"),ePe=o(()=>ND,"getRelationships"),tPe=o(function(){Kd=new Map,ND=[],Lr()},"clear"),Jie={Cardinality:jOe,Identification:KOe,getConfig:o(()=>pe().er,"getConfig"),addEntity:Zie,addAttributes:ZOe,getEntities:QOe,addRelationship:JOe,getRelationships:ePe,clear:tPe,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,setDiagramTitle:cn,getDiagramTitle:Jr}});var Fl,rPe,Qo,tae=M(()=>{"use strict";Fl={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"},rPe=o(function(t,e){let r;t.append("defs").append("marker").attr("id",Fl.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",Fl.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",Fl.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",Fl.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",Fl.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",Fl.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",Fl.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",Fl.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",Fl.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",Fl.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"),Qo={ERMarkers:Fl,insertMarkers:rPe}});var rae,nae=M(()=>{"use strict";rae=/^(?:[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 nPe(t){return typeof t=="string"&&rae.test(t)}var iae,aae=M(()=>{"use strict";nae();o(nPe,"validate");iae=nPe});function sae(t,e=0){return wa[t[e+0]]+wa[t[e+1]]+wa[t[e+2]]+wa[t[e+3]]+"-"+wa[t[e+4]]+wa[t[e+5]]+"-"+wa[t[e+6]]+wa[t[e+7]]+"-"+wa[t[e+8]]+wa[t[e+9]]+"-"+wa[t[e+10]]+wa[t[e+11]]+wa[t[e+12]]+wa[t[e+13]]+wa[t[e+14]]+wa[t[e+15]]}var wa,oae=M(()=>{"use strict";wa=[];for(let t=0;t<256;++t)wa.push((t+256).toString(16).slice(1));o(sae,"unsafeStringify")});function iPe(t){if(!iae(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 lae,cae=M(()=>{"use strict";aae();o(iPe,"parse");lae=iPe});function aPe(t){t=unescape(encodeURIComponent(t));let e=[];for(let r=0;r{"use strict";oae();cae();o(aPe,"stringToBytes");sPe="6ba7b810-9dad-11d1-80b4-00c04fd430c8",oPe="6ba7b811-9dad-11d1-80b4-00c04fd430c8";o(RD,"v35")});function lPe(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 MD(t,e){return t<>>32-e}function cPe(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=MD(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 hae,fae=M(()=>{"use strict";o(lPe,"f");o(MD,"ROTL");o(cPe,"sha1");hae=cPe});var uPe,ID,dae=M(()=>{"use strict";uae();fae();uPe=RD("v5",80,hae),ID=uPe});var pae=M(()=>{"use strict";dae()});function bPe(t="",e=""){let r=t.replace(hPe,"");return`${gae(e)}${gae(r)}${ID(t,xPe)}`}function gae(t=""){return t.length>0?`${t}-`:""}var hPe,$i,e2,fPe,dPe,pPe,mPe,yae,gPe,mae,yPe,vPe,xPe,vae,xae=M(()=>{"use strict";Gs();pr();Qv();Vt();ut();hr();tae();ai();fr();pae();hPe=/[^\dA-Za-z](\W)*/g,$i={},e2=new Map,fPe=o(function(t){let e=Object.keys(t);for(let r of e)$i[r]=t[r]},"setConf"),dPe=o((t,e,r)=>{let n=$i.entityPadding/3,i=$i.entityPadding/3,a=$i.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=yu(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",pe().fontFamily).style("font-size",a+"px").text(E),S=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",pe().fontFamily).style("font-size",a+"px").text(w.attributeName),A={};A.tn=L,A.nn=S;let I=L.node().getBBox(),D=S.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",pe().fontFamily).style("font-size",a+"px").text(k);A.kn=R;let C=R.node().getBBox();p=Math.max(p,C.width),T=Math.max(T,C.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",pe().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($i.minEntityWidth,Math.max(s.width+$i.entityPadding*2,x+i*v)),height:r.length>0?g:Math.max($i.minEntityHeight,s.height+$i.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 S=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(S.attr("x"))+parseFloat(S.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($i.minEntityHeight,g),e.attr("transform","translate("+b.width/2+","+b.height/2+")");return b},"drawAttributes"),pPe=o(function(t,e,r){let n=[...e.keys()],i;return n.forEach(function(a){let s=bPe(a,"entity");e2.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",pe().fontFamily).style("font-size",$i.fontSize+"px").text(e.get(a).alias??a),{width:f,height:d}=dPe(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"),mPe=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"),yae=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(e2.get(r.entityA),e2.get(r.entityB),{relationship:r},yae(r))}),t},"addRelationships"),mae=0,yPe=o(function(t,e,r,n,i){mae++;let a=r.edge(e2.get(e.entityA),e2.get(e.entityB),yae(e)),s=ns().x(function(y){return y.x}).y(function(y){return y.y}).curve(Po),l=t.insert("path","#"+n).classed("er relationshipLine",!0).attr("d",s(a.points)).style("stroke",$i.stroke).style("fill","none");e.relSpec.relType===i.db.Identification.NON_IDENTIFYING&&l.attr("stroke-dasharray","8,8");let u="";switch($i.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+"#"+Qo.ERMarkers.ZERO_OR_ONE_END+")");break;case i.db.Cardinality.ZERO_OR_MORE:l.attr("marker-end","url("+u+"#"+Qo.ERMarkers.ZERO_OR_MORE_END+")");break;case i.db.Cardinality.ONE_OR_MORE:l.attr("marker-end","url("+u+"#"+Qo.ERMarkers.ONE_OR_MORE_END+")");break;case i.db.Cardinality.ONLY_ONE:l.attr("marker-end","url("+u+"#"+Qo.ERMarkers.ONLY_ONE_END+")");break;case i.db.Cardinality.MD_PARENT:l.attr("marker-end","url("+u+"#"+Qo.ERMarkers.MD_PARENT_END+")");break}switch(e.relSpec.cardB){case i.db.Cardinality.ZERO_OR_ONE:l.attr("marker-start","url("+u+"#"+Qo.ERMarkers.ZERO_OR_ONE_START+")");break;case i.db.Cardinality.ZERO_OR_MORE:l.attr("marker-start","url("+u+"#"+Qo.ERMarkers.ZERO_OR_MORE_START+")");break;case i.db.Cardinality.ONE_OR_MORE:l.attr("marker-start","url("+u+"#"+Qo.ERMarkers.ONE_OR_MORE_START+")");break;case i.db.Cardinality.ONLY_ONE:l.attr("marker-start","url("+u+"#"+Qo.ERMarkers.ONLY_ONE_START+")");break;case i.db.Cardinality.MD_PARENT:l.attr("marker-start","url("+u+"#"+Qo.ERMarkers.MD_PARENT_START+")");break}let h=l.node().getTotalLength(),f=l.node().getPointAtLength(h*.5),d="rel"+mae,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",pe().fontFamily).style("font-size",$i.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){$i=pe().er,Y.info("Drawing ER diagram");let i=pe().securityLevel,a;i==="sandbox"&&(a=Ve("#i"+e));let l=(i==="sandbox"?Ve(a.nodes()[0].contentDocument.body):Ve("body")).select(`[id='${e}']`);Qo.insertMarkers(l,$i);let u;u=new Ir({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:$i.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let h=pPe(l,n.db.getEntities(),u),f=gPe(n.db.getRelationships(),u);Gu(u),mPe(l,u),f.forEach(function(y){yPe(l,y,u,h,n)});let d=$i.diagramPadding;Ut.insertTitle(l,"entityTitleText",$i.titleTopMargin,n.db.getDiagramTitle());let p=l.node().getBBox(),m=p.width+d*2,g=p.height+d*2;Zr(l,g,m,$i.useMaxWidth),l.attr("viewBox",`${p.x-d} ${p.y-d} ${m} ${g}`)},"draw"),xPe="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";o(bPe,"generateId");o(gae,"strWithHyphen");vae={setConf:fPe,draw:vPe}});var wPe,bae,wae=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"),bae=wPe});var Tae={};vr(Tae,{diagram:()=>TPe});var TPe,kae=M(()=>{"use strict";Qie();eae();xae();wae();TPe={parser:Kie,db:Jie,renderer:vae,styles:bae}});function ri(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function Ta(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"}function OD(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function Zd(t){return typeof t=="object"&&t!==null&&ri(t.container)&&Ta(t.reference)&&typeof t.message=="string"}function ho(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function cf(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function t2(t){return ho(t)&&typeof t.fullText=="string"}var Qd,Zo=M(()=>{"use strict";o(ri,"isAstNode");o(Ta,"isReference");o(OD,"isAstNodeDescription");o(Zd,"isLinkingError");Qd=class{static{o(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,r){return ri(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(ho,"isCompositeCstNode");o(cf,"isLeafCstNode");o(t2,"isRootCstNode")});function CPe(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function ST(t){return!!t&&typeof t[Symbol.iterator]=="function"}function tn(...t){if(t.length===1){let e=t[0];if(e instanceof fo)return e;if(ST(e))return new fo(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new fo(()=>({index:0}),r=>r.index1?new fo(()=>({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";fo=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 ss})}join(e=","){let r=this.iterator(),n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=e),n+=CPe(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?ss:{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 ss})}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(ST(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return ss})}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(ST(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return ss})}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?ss: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(CPe,"toString");o(ST,"isIterable");r2=new fo(()=>{},()=>ss),ss=Object.freeze({done:!0,value:void 0});o(tn,"stream");Pc=class extends fo{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 ss})}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})(Jm||(Jm={}))});var AT={};vr(AT,{DefaultNameRegexp:()=>CT,RangeComparison:()=>$u,compareRange:()=>Aae,findCommentNode:()=>zD,findDeclarationNodeAtOffset:()=>_Pe,findLeafNodeAtOffset:()=>GD,findLeafNodeBeforeOffset:()=>_ae,flattenCst:()=>APe,getInteriorNodes:()=>NPe,getNextNode:()=>LPe,getPreviousNode:()=>Dae,getStartlineNode:()=>DPe,inRange:()=>FD,isChildNode:()=>BD,isCommentNode:()=>PD,streamCst:()=>Jd,toDocumentSegment:()=>e0,tokenToRange:()=>eg});function Jd(t){return new Pc(t,e=>ho(e)?e.content:[],{includeRoot:!0})}function APe(t){return Jd(t).filter(cf)}function BD(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function eg(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function e0(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}function Aae(t,e){if(t.end.linee.end.line||t.start.line===e.end.line&&t.start.character>e.end.character)return $u.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.line$u.After}function _Pe(t,e,r=CT){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return GD(t,e)}}function zD(t,e){if(t){let r=Dae(t,!0);if(r&&PD(r,e))return r;if(t2(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let a=t.content[i];if(PD(a,e))return a}}}}function PD(t,e){return cf(t)&&e.includes(t.tokenType.name)}function GD(t,e){if(cf(t))return t;if(ho(t)){let r=Lae(t,e,!1);if(r)return GD(r,e)}}function _ae(t,e){if(cf(t))return t;if(ho(t)){let r=Lae(t,e,!0);if(r)return _ae(r,e)}}function Lae(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 Dae(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 LPe(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;n{"use strict";Zo();$s();o(Jd,"streamCst");o(APe,"flattenCst");o(BD,"isChildNode");o(eg,"tokenToRange");o(e0,"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"})($u||($u={}));o(Aae,"compareRange");o(FD,"inRange");CT=/^[\w\p{L}]$/u;o(_Pe,"findDeclarationNodeAtOffset");o(zD,"findCommentNode");o(PD,"isCommentNode");o(GD,"findLeafNodeAtOffset");o(_ae,"findLeafNodeBeforeOffset");o(Lae,"binarySearch");o(Dae,"getPreviousNode");o(LPe,"getNextNode");o(DPe,"getStartlineNode");o(NPe,"getInteriorNodes");o(RPe,"getCommonParent");o(Cae,"getParentChain")});function uf(t){throw new Error("Error! The input value was not handled.")}var t0,_T=M(()=>{"use strict";t0=class extends Error{static{o(this,"ErrorWithLocation")}constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};o(uf,"assertUnreachable")});var o2={};vr(o2,{AbstractElement:()=>VD,AbstractRule:()=>n2,AbstractType:()=>i2,Action:()=>gN,Alternatives:()=>yN,ArrayLiteral:()=>UD,ArrayType:()=>HD,Assignment:()=>vN,BooleanLiteral:()=>YD,CharacterRange:()=>xN,Condition:()=>LT,Conjunction:()=>XD,CrossReference:()=>wN,Disjunction:()=>KD,EndOfFile:()=>TN,Grammar:()=>ZD,GrammarImport:()=>Rae,Group:()=>EN,InferredType:()=>JD,Interface:()=>eN,Keyword:()=>SN,LangiumGrammarAstReflection:()=>tg,LangiumGrammarTerminals:()=>MPe,NamedArgument:()=>Mae,NegatedToken:()=>CN,Negation:()=>tN,NumberLiteral:()=>nN,Parameter:()=>iN,ParameterReference:()=>aN,ParserRule:()=>oN,ReferenceType:()=>lN,RegexToken:()=>_N,ReturnType:()=>Iae,RuleCall:()=>DN,SimpleType:()=>hN,StringLiteral:()=>fN,TerminalAlternatives:()=>NN,TerminalGroup:()=>MN,TerminalRule:()=>NT,TerminalRuleCall:()=>ON,Type:()=>dN,TypeAttribute:()=>Oae,TypeDefinition:()=>$D,UnionType:()=>pN,UnorderedGroup:()=>PN,UntilToken:()=>BN,ValueLiteral:()=>DT,Wildcard:()=>zN,isAbstractElement:()=>a2,isAbstractRule:()=>IPe,isAbstractType:()=>OPe,isAction:()=>Vu,isAlternatives:()=>OT,isArrayLiteral:()=>GPe,isArrayType:()=>WD,isAssignment:()=>Gl,isBooleanLiteral:()=>qD,isCharacterRange:()=>bN,isCondition:()=>PPe,isConjunction:()=>jD,isCrossReference:()=>r0,isDisjunction:()=>QD,isEndOfFile:()=>kN,isFeatureName:()=>BPe,isGrammar:()=>$Pe,isGrammarImport:()=>VPe,isGroup:()=>hf,isInferredType:()=>RT,isInterface:()=>MT,isKeyword:()=>el,isNamedArgument:()=>UPe,isNegatedToken:()=>AN,isNegation:()=>rN,isNumberLiteral:()=>HPe,isParameter:()=>WPe,isParameterReference:()=>sN,isParserRule:()=>Ga,isPrimitiveType:()=>Nae,isReferenceType:()=>cN,isRegexToken:()=>LN,isReturnType:()=>uN,isRuleCall:()=>$l,isSimpleType:()=>IT,isStringLiteral:()=>YPe,isTerminalAlternatives:()=>RN,isTerminalGroup:()=>IN,isTerminalRule:()=>Jo,isTerminalRuleCall:()=>PT,isType:()=>s2,isTypeAttribute:()=>qPe,isTypeDefinition:()=>FPe,isUnionType:()=>mN,isUnorderedGroup:()=>BT,isUntilToken:()=>FN,isValueLiteral:()=>zPe,isWildcard:()=>GN,reflection:()=>lr});function IPe(t){return lr.isInstance(t,n2)}function OPe(t){return lr.isInstance(t,i2)}function PPe(t){return lr.isInstance(t,LT)}function BPe(t){return Nae(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 Nae(t){return t==="string"||t==="number"||t==="boolean"||t==="Date"||t==="bigint"}function FPe(t){return lr.isInstance(t,$D)}function zPe(t){return lr.isInstance(t,DT)}function a2(t){return lr.isInstance(t,VD)}function GPe(t){return lr.isInstance(t,UD)}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 QD(t){return lr.isInstance(t,KD)}function $Pe(t){return lr.isInstance(t,ZD)}function VPe(t){return lr.isInstance(t,Rae)}function RT(t){return lr.isInstance(t,JD)}function MT(t){return lr.isInstance(t,eN)}function UPe(t){return lr.isInstance(t,Mae)}function rN(t){return lr.isInstance(t,tN)}function HPe(t){return lr.isInstance(t,nN)}function WPe(t){return lr.isInstance(t,iN)}function sN(t){return lr.isInstance(t,aN)}function Ga(t){return lr.isInstance(t,oN)}function cN(t){return lr.isInstance(t,lN)}function uN(t){return lr.isInstance(t,Iae)}function IT(t){return lr.isInstance(t,hN)}function YPe(t){return lr.isInstance(t,fN)}function Jo(t){return lr.isInstance(t,NT)}function s2(t){return lr.isInstance(t,dN)}function qPe(t){return lr.isInstance(t,Oae)}function mN(t){return lr.isInstance(t,pN)}function Vu(t){return lr.isInstance(t,gN)}function OT(t){return lr.isInstance(t,yN)}function Gl(t){return lr.isInstance(t,vN)}function bN(t){return lr.isInstance(t,xN)}function r0(t){return lr.isInstance(t,wN)}function kN(t){return lr.isInstance(t,TN)}function hf(t){return lr.isInstance(t,EN)}function el(t){return lr.isInstance(t,SN)}function AN(t){return lr.isInstance(t,CN)}function LN(t){return lr.isInstance(t,_N)}function $l(t){return lr.isInstance(t,DN)}function RN(t){return lr.isInstance(t,NN)}function IN(t){return lr.isInstance(t,MN)}function PT(t){return lr.isInstance(t,ON)}function BT(t){return lr.isInstance(t,PN)}function FN(t){return lr.isInstance(t,BN)}function GN(t){return lr.isInstance(t,zN)}var MPe,n2,i2,LT,$D,DT,VD,UD,HD,YD,XD,KD,ZD,Rae,JD,eN,Mae,tN,nN,iN,aN,oN,lN,Iae,hN,fN,NT,dN,Oae,pN,gN,yN,vN,xN,wN,TN,EN,SN,CN,_N,DN,NN,MN,ON,PN,BN,zN,tg,lr,Bc=M(()=>{"use strict";Zo();MPe={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]*/},n2="AbstractRule";o(IPe,"isAbstractRule");i2="AbstractType";o(OPe,"isAbstractType");LT="Condition";o(PPe,"isCondition");o(BPe,"isFeatureName");o(Nae,"isPrimitiveType");$D="TypeDefinition";o(FPe,"isTypeDefinition");DT="ValueLiteral";o(zPe,"isValueLiteral");VD="AbstractElement";o(a2,"isAbstractElement");UD="ArrayLiteral";o(GPe,"isArrayLiteral");HD="ArrayType";o(WD,"isArrayType");YD="BooleanLiteral";o(qD,"isBooleanLiteral");XD="Conjunction";o(jD,"isConjunction");KD="Disjunction";o(QD,"isDisjunction");ZD="Grammar";o($Pe,"isGrammar");Rae="GrammarImport";o(VPe,"isGrammarImport");JD="InferredType";o(RT,"isInferredType");eN="Interface";o(MT,"isInterface");Mae="NamedArgument";o(UPe,"isNamedArgument");tN="Negation";o(rN,"isNegation");nN="NumberLiteral";o(HPe,"isNumberLiteral");iN="Parameter";o(WPe,"isParameter");aN="ParameterReference";o(sN,"isParameterReference");oN="ParserRule";o(Ga,"isParserRule");lN="ReferenceType";o(cN,"isReferenceType");Iae="ReturnType";o(uN,"isReturnType");hN="SimpleType";o(IT,"isSimpleType");fN="StringLiteral";o(YPe,"isStringLiteral");NT="TerminalRule";o(Jo,"isTerminalRule");dN="Type";o(s2,"isType");Oae="TypeAttribute";o(qPe,"isTypeAttribute");pN="UnionType";o(mN,"isUnionType");gN="Action";o(Vu,"isAction");yN="Alternatives";o(OT,"isAlternatives");vN="Assignment";o(Gl,"isAssignment");xN="CharacterRange";o(bN,"isCharacterRange");wN="CrossReference";o(r0,"isCrossReference");TN="EndOfFile";o(kN,"isEndOfFile");EN="Group";o(hf,"isGroup");SN="Keyword";o(el,"isKeyword");CN="NegatedToken";o(AN,"isNegatedToken");_N="RegexToken";o(LN,"isRegexToken");DN="RuleCall";o($l,"isRuleCall");NN="TerminalAlternatives";o(RN,"isTerminalAlternatives");MN="TerminalGroup";o(IN,"isTerminalGroup");ON="TerminalRuleCall";o(PT,"isTerminalRuleCall");PN="UnorderedGroup";o(BT,"isUnorderedGroup");BN="UntilToken";o(FN,"isUntilToken");zN="Wildcard";o(GN,"isWildcard");tg=class extends Qd{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 gN:case yN:case vN:case xN:case wN:case TN:case EN:case SN:case CN:case _N:case DN:case NN:case MN:case ON:case PN:case BN:case zN:return this.isSubtype(VD,r);case UD:case nN:case fN:return this.isSubtype(DT,r);case HD:case lN:case hN:case pN:return this.isSubtype($D,r);case YD:return this.isSubtype(LT,r)||this.isSubtype(DT,r);case XD:case KD:case tN:case aN:return this.isSubtype(LT,r);case JD:case eN:case dN:return this.isSubtype(i2,r);case oN:return this.isSubtype(n2,r)||this.isSubtype(i2,r);case NT:return this.isSubtype(n2,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 i2;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return n2;case"Grammar:usedGrammars":return ZD;case"NamedArgument:parameter":case"ParameterReference:parameter":return iN;case"TerminalRuleCall:rule":return NT;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 tg});var zT={};vr(zT,{assignMandatoryProperties:()=>UN,copyAstNode:()=>VN,findLocalReferences:()=>jPe,findRootNode:()=>Pae,getContainerOfType:()=>n0,getDocument:()=>Vi,hasContainerOfType:()=>XPe,linkContentToContainer:()=>FT,streamAllContents:()=>Fc,streamAst:()=>tl,streamContents:()=>l2,streamReferences:()=>rg});function FT(t){for(let[e,r]of Object.entries(t))e.startsWith("$")||(Array.isArray(r)?r.forEach((n,i)=>{ri(n)&&(n.$container=t,n.$containerProperty=e,n.$containerIndex=i)}):ri(r)&&(r.$container=t,r.$containerProperty=e))}function n0(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function XPe(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}function Vi(t){let r=Pae(t).$document;if(!r)throw new Error("AST node has no document.");return r}function Pae(t){for(;t.$container;)t=t.$container;return t}function l2(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e?.range;return new fo(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndexl2(r,e))}function tl(t,e){if(t){if(e?.range&&!$N(t,e.range))return new Pc(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new Pc(t,r=>l2(r,e),{includeRoot:!0})}function $N(t,e){var r;if(!e)return!0;let n=(r=t.$cstNode)===null||r===void 0?void 0:r.range;return n?FD(n,e):!1}function rg(t){return new fo(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex{rg(n).forEach(i=>{i.reference.ref===t&&r.push(i.reference)})}),tn(r)}function UN(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]=Bae(i.defaultValue))}function Bae(t){return Array.isArray(t)?[...t.map(Bae)]:t}function VN(t,e){let r={$type:t.$type};for(let[n,i]of Object.entries(t))if(!n.startsWith("$"))if(ri(i))r[n]=VN(i,e);else if(Ta(i))r[n]=e(r,n,i.$refNode,i.$refText);else if(Array.isArray(i)){let a=[];for(let s of i)ri(s)?a.push(VN(s,e)):Ta(s)?a.push(e(r,n,s.$refNode,s.$refText)):a.push(s);r[n]=a}else r[n]=i;return FT(r),r}var os=M(()=>{"use strict";Zo();$s();zl();o(FT,"linkContentToContainer");o(n0,"getContainerOfType");o(XPe,"hasContainerOfType");o(Vi,"getDocument");o(Pae,"findRootNode");o(l2,"streamContents");o(Fc,"streamAllContents");o(tl,"streamAst");o($N,"isAstNodeInRange");o(rg,"streamReferences");o(jPe,"findLocalReferences");o(UN,"assignMandatoryProperties");o(Bae,"copyDefaultValue");o(VN,"copyAstNode")});function ar(t){return t.charCodeAt(0)}function GT(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function ng(t,e){if(t[e]===!0)throw"duplicate flag "+e;let r=t[e];t[e]=!0}function i0(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function c2(){throw Error("Internal Error - Should never get here!")}function HN(t){return t.type==="Character"}var WN=M(()=>{"use strict";o(ar,"cc");o(GT,"insertToSet");o(ng,"addFlag");o(i0,"ASSERT_EXISTS");o(c2,"ASSERT_NEVER_REACH_HERE");o(HN,"isCharacter")});var u2,h2,YN,Fae=M(()=>{"use strict";WN();u2=[];for(let t=ar("0");t<=ar("9");t++)u2.push(t);h2=[ar("_")].concat(u2);for(let t=ar("a");t<=ar("z");t++)h2.push(t);for(let t=ar("A");t<=ar("Z");t++)h2.push(t);YN=[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 KPe,$T,QPe,a0,zae=M(()=>{"use strict";WN();Fae();KPe=/[0-9a-fA-F]/,$T=/[0-9]/,QPe=/[1-9]/,a0=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":ng(n,"global");break;case"i":ng(n,"ignoreCase");break;case"m":ng(n,"multiLine");break;case"u":ng(n,"unicode");break;case"y":ng(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}i0(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return c2()}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;i0(r);break}if(!(e===!0&&r===void 0)&&i0(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()),i0(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):c2()}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=u2;break;case"D":e=u2,r=!0;break;case"s":e=YN;break;case"S":e=YN,r=!0;break;case"w":e=h2;break;case"W":e=h2,r=!0;break}return i0(e)?{type:"Set",value:e,complement:r}:c2()}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 i0(e)?{type:"Character",value:e}:c2()}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(HN(n)&&this.isRangeDash()){this.consumeChar("-");let a=this.classAtom(),s=a.type==="Character";if(HN(a)){if(a.value=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}});var zc,Gae=M(()=>{"use strict";zc=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 f2=M(()=>{"use strict";zae();Gae()});var UT={};vr(UT,{NEWLINE_REGEXP:()=>XN,escapeRegExp:()=>o0,getCaseInsensitivePattern:()=>KN,getTerminalParts:()=>ZPe,isMultilineComment:()=>jN,isWhitespace:()=>VT,partialMatches:()=>QN,partialRegExp:()=>Vae});function ZPe(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;let e=$ae.pattern(t),r=[];for(let n of e.value.value)s0.reset(t),s0.visit(n),r.push({start:s0.startRegexp,end:s0.endRegex});return r}catch{return[]}}function jN(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),s0.reset(t),s0.visit($ae.pattern(t)),s0.multiline}catch{return!1}}function VT(t){return(typeof t=="string"?new RegExp(t):t).test(" ")}function o0(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function KN(t){return Array.prototype.map.call(t,e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:o0(e)).join("")}function QN(t,e){let r=Vae(t),n=e.match(r);return!!n&&n[0].length>0}function Vae(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 XN,$ae,qN,s0,ig=M(()=>{"use strict";f2();XN=/\r?\n/gm,$ae=new a0,qN=class extends zc{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=o0(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)}},s0=new qN;o(ZPe,"getTerminalParts");o(jN,"isMultilineComment");o(VT,"isWhitespace");o(o0,"escapeRegExp");o(KN,"getCaseInsensitivePattern");o(QN,"partialMatches");o(Vae,"partialRegExp")});var WT={};vr(WT,{findAssignment:()=>sR,findNameAssignment:()=>HT,findNodeForKeyword:()=>iR,findNodeForProperty:()=>p2,findNodesForKeyword:()=>JPe,findNodesForKeywordInternal:()=>aR,findNodesForProperty:()=>rR,getActionAtElement:()=>qae,getActionType:()=>jae,getAllReachableRules:()=>d2,getCrossReferenceTerminal:()=>eR,getEntryRule:()=>Uae,getExplicitRuleType:()=>oR,getHiddenRules:()=>Hae,getRuleType:()=>lR,getTypeName:()=>l0,isArrayCardinality:()=>tBe,isArrayOperator:()=>rBe,isCommentTerminal:()=>tR,isDataType:()=>nBe,isDataTypeRule:()=>m2,isOptionalCardinality:()=>eBe,terminalRegex:()=>ag});function Uae(t){return t.rules.find(e=>Ga(e)&&e.entry)}function Hae(t){return t.rules.filter(e=>Jo(e)&&e.hidden)}function d2(t,e){let r=new Set,n=Uae(t);if(!n)return new Set(t.rules);let i=[n].concat(Hae(t));for(let s of i)Wae(s,r,e);let a=new Set;for(let s of t.rules)(r.has(s.name)||Jo(s)&&s.hidden)&&a.add(s);return a}function Wae(t,e,r){e.add(t.name),Fc(t).forEach(n=>{if($l(n)||r&&PT(n)){let i=n.rule.ref;i&&!e.has(i.name)&&Wae(i,e,r)}})}function eR(t){if(t.terminal)return t.terminal;if(t.type.ref){let e=HT(t.type.ref);return e?.terminal}}function tR(t){return t.hidden&&!ag(t).test(" ")}function rR(t,e){return!t||!e?[]:nR(t,e,t.astNode,!0)}function p2(t,e,r){if(!t||!e)return;let n=nR(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 nR(t,e,r,n){if(!n){let i=n0(t.grammarSource,Gl);if(i&&i.feature===e)return[t]}return ho(t)&&t.astNode===r?t.content.flatMap(i=>nR(i,e,r,!1)):[]}function JPe(t,e){return t?aR(t,e,t?.astNode):[]}function iR(t,e,r){if(!t)return;let n=aR(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 aR(t,e,r){if(t.astNode!==r)return[];if(el(t.grammarSource)&&t.grammarSource.value===e)return[t];let n=Jd(t).iterator(),i,a=[];do if(i=n.next(),!i.done){let s=i.value;s.astNode===r?el(s.grammarSource)&&s.grammarSource.value===e&&a.push(s):n.prune()}while(!i.done);return a}function sR(t){var e;let r=t.astNode;for(;r===((e=t.container)===null||e===void 0?void 0:e.astNode);){let n=n0(t.grammarSource,Gl);if(n)return n;t=t.container}}function HT(t){let e=t;return RT(e)&&(Vu(e.$container)?e=e.$container.$container:Ga(e.$container)?e=e.$container:uf(e.$container)),Yae(t,e,new Map)}function Yae(t,e,r){var n;function i(a,s){let l;return n0(a,Gl)||(l=Yae(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 Fc(e)){if(Gl(a)&&a.feature.toLowerCase()==="name")return r.set(t,a),a;if($l(a)&&Ga(a.rule.ref))return i(a,a.rule.ref);if(IT(a)&&(!((n=a.typeRef)===null||n===void 0)&&n.ref))return i(a,a.typeRef.ref)}}function qae(t){let e=t.$container;if(hf(e)){let r=e.elements,n=r.indexOf(t);for(let i=n-1;i>=0;i--){let a=r[i];if(Vu(a))return a;{let s=Fc(r[i]).find(Vu);if(s)return s}}}if(a2(e))return qae(e)}function eBe(t,e){return t==="?"||t==="*"||hf(e)&&!!e.guardCondition}function tBe(t){return t==="*"||t==="+"}function rBe(t){return t==="+="}function m2(t){return Xae(t,new Set)}function Xae(t,e){if(e.has(t))return!0;e.add(t);for(let r of Fc(t))if($l(r)){if(!r.rule.ref||Ga(r.rule.ref)&&!Xae(r.rule.ref,e))return!1}else{if(Gl(r))return!1;if(Vu(r))return!1}return!!t.definition}function nBe(t){return JN(t.type,new Set)}function JN(t,e){if(e.has(t))return!0;if(e.add(t),WD(t))return!1;if(cN(t))return!1;if(mN(t))return t.types.every(r=>JN(r,e));if(IT(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 s2(r)?JN(r.type,e):!1}else return!1}else return!1}function oR(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(Ga(e))return e.name;if(MT(e)||s2(e))return e.name}}}function l0(t){var e;if(Ga(t))return m2(t)?t.name:(e=oR(t))!==null&&e!==void 0?e:t.name;if(MT(t)||s2(t)||uN(t))return t.name;if(Vu(t)){let r=jae(t);if(r)return r}else if(RT(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function jae(t){var e;if(t.inferredType)return t.inferredType.name;if(!((e=t.type)===null||e===void 0)&&e.ref)return l0(t.type.ref)}function lR(t){var e,r,n;return Jo(t)?(r=(e=t.type)===null||e===void 0?void 0:e.name)!==null&&r!==void 0?r:"string":m2(t)?t.name:(n=oR(t))!==null&&n!==void 0?n:t.name}function ag(t){let e={s:!1,i:!1,u:!1},r=sg(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}function sg(t,e){if(RN(t))return iBe(t);if(IN(t))return aBe(t);if(bN(t))return lBe(t);if(PT(t)){let r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return Uu(sg(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead})}else{if(AN(t))return oBe(t);if(FN(t))return sBe(t);if(LN(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")),Uu(n,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}else{if(GN(t))return Uu(cR,{cardinality:t.cardinality,lookahead:t.lookahead});throw new Error(`Invalid terminal element: ${t?.$type}`)}}}function iBe(t){return Uu(t.elements.map(e=>sg(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead})}function aBe(t){return Uu(t.elements.map(e=>sg(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead})}function sBe(t){return Uu(`${cR}*?${sg(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead})}function oBe(t){return Uu(`(?!${sg(t.terminal)})${cR}*?`,{cardinality:t.cardinality,lookahead:t.lookahead})}function lBe(t){return t.right?Uu(`[${ZN(t.left)}-${ZN(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1}):Uu(ZN(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}function ZN(t){return o0(t.value)}function Uu(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 cR,Vl=M(()=>{"use strict";_T();Bc();Zo();os();zl();ig();o(Uae,"getEntryRule");o(Hae,"getHiddenRules");o(d2,"getAllReachableRules");o(Wae,"ruleDfs");o(eR,"getCrossReferenceTerminal");o(tR,"isCommentTerminal");o(rR,"findNodesForProperty");o(p2,"findNodeForProperty");o(nR,"findNodesForPropertyInternal");o(JPe,"findNodesForKeyword");o(iR,"findNodeForKeyword");o(aR,"findNodesForKeywordInternal");o(sR,"findAssignment");o(HT,"findNameAssignment");o(Yae,"findNameAssignmentInternal");o(qae,"getActionAtElement");o(eBe,"isOptionalCardinality");o(tBe,"isArrayCardinality");o(rBe,"isArrayOperator");o(m2,"isDataTypeRule");o(Xae,"isDataTypeRuleInternal");o(nBe,"isDataType");o(JN,"isDataTypeInternal");o(oR,"getExplicitRuleType");o(l0,"getTypeName");o(jae,"getActionType");o(lR,"getRuleType");o(ag,"terminalRegex");cR=/[\s\S]/.source;o(sg,"abstractElementToRegex");o(iBe,"terminalAlternativesToRegex");o(aBe,"terminalGroupToRegex");o(sBe,"untilTokenToRegex");o(oBe,"negateTokenToRegex");o(lBe,"characterRangeToRegex");o(ZN,"keywordToRegex");o(Uu,"withCardinality")});function uR(t){let e=[],r=t.Grammar;for(let n of r.rules)Jo(n)&&tR(n)&&jN(ag(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:CT}}var hR=M(()=>{"use strict";zl();Vl();ig();Bc();o(uR,"createGrammarConfig")});var fR=M(()=>{"use strict"});function og(t){console&&console.error&&console.error(`Error: ${t}`)}function g2(t){console&&console.warn&&console.warn(`Warning: ${t}`)}var Kae=M(()=>{"use strict";o(og,"PRINT_ERROR");o(g2,"PRINT_WARNING")});function y2(t){let e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}var Qae=M(()=>{"use strict";o(y2,"timer")});function v2(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 Zae=M(()=>{"use strict";o(v2,"toFastProperties")});var lg=M(()=>{"use strict";Kae();Qae();Zae()});function cBe(t){return uBe(t)?t.LABEL:t.name}function uBe(t){return bi(t.LABEL)&&t.LABEL!==""}function YT(t){return Qe(t,cg)}function cg(t){function e(r){return Qe(r,cg)}if(o(e,"convertDefinition"),t instanceof nn){let r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return bi(t.label)&&(r.label=t.label),r}else{if(t instanceof _n)return{type:"Alternative",definition:e(t.definition)};if(t instanceof an)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof Ln)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof Dn)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:cg(new Er({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof bn)return{type:"RepetitionWithSeparator",idx:t.idx,separator:cg(new Er({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Dr)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof wn)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof Er){let r={type:"Terminal",name:t.terminalType.name,label:cBe(t.terminalType),idx:t.idx};bi(t.label)&&(r.terminalLabel=t.label);let n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=Xo(n)?n.source:n),r}else{if(t instanceof ls)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}var po,nn,ls,_n,an,Ln,Dn,Dr,bn,wn,Er,qT=M(()=>{"use strict";Ht();o(cBe,"tokenLabel");o(uBe,"hasTokenLabel");po=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),Se(this.definition,r=>{r.accept(e)})}},nn=class extends po{static{o(this,"NonTerminal")}constructor(e){super([]),this.idx=1,va(this,zs(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},ls=class extends po{static{o(this,"Rule")}constructor(e){super(e.definition),this.orgText="",va(this,zs(e,r=>r!==void 0))}},_n=class extends po{static{o(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,va(this,zs(e,r=>r!==void 0))}},an=class extends po{static{o(this,"Option")}constructor(e){super(e.definition),this.idx=1,va(this,zs(e,r=>r!==void 0))}},Ln=class extends po{static{o(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,va(this,zs(e,r=>r!==void 0))}},Dn=class extends po{static{o(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,va(this,zs(e,r=>r!==void 0))}},Dr=class extends po{static{o(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,va(this,zs(e,r=>r!==void 0))}},bn=class extends po{static{o(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,va(this,zs(e,r=>r!==void 0))}},wn=class extends po{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,va(this,zs(e,r=>r!==void 0))}},Er=class{static{o(this,"Terminal")}constructor(e){this.idx=1,va(this,zs(e,r=>r!==void 0))}accept(e){e.visit(this)}};o(YT,"serializeGrammar");o(cg,"serializeProduction")});var cs,Jae=M(()=>{"use strict";qT();cs=class{static{o(this,"GAstVisitor")}visit(e){let r=e;switch(r.constructor){case nn:return this.visitNonTerminal(r);case _n:return this.visitAlternative(r);case an:return this.visitOption(r);case Ln:return this.visitRepetitionMandatory(r);case Dn:return this.visitRepetitionMandatoryWithSeparator(r);case bn:return this.visitRepetitionWithSeparator(r);case Dr:return this.visitRepetition(r);case wn:return this.visitAlternation(r);case Er:return this.visitTerminal(r);case ls: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 dR(t){return t instanceof _n||t instanceof an||t instanceof Dr||t instanceof Ln||t instanceof Dn||t instanceof bn||t instanceof Er||t instanceof ls}function c0(t,e=[]){return t instanceof an||t instanceof Dr||t instanceof bn?!0:t instanceof wn?qv(t.definition,n=>c0(n,e)):t instanceof nn&&Yn(e,t)?!1:t instanceof po?(t instanceof nn&&e.push(t),za(t.definition,n=>c0(n,e))):!1}function pR(t){return t instanceof wn}function Vs(t){if(t instanceof nn)return"SUBRULE";if(t instanceof an)return"OPTION";if(t instanceof wn)return"OR";if(t instanceof Ln)return"AT_LEAST_ONE";if(t instanceof Dn)return"AT_LEAST_ONE_SEP";if(t instanceof bn)return"MANY_SEP";if(t instanceof Dr)return"MANY";if(t instanceof Er)return"CONSUME";throw Error("non exhaustive match")}var ese=M(()=>{"use strict";Ht();qT();o(dR,"isSequenceProd");o(c0,"isOptionalProd");o(pR,"isBranchingProd");o(Vs,"getProductionDslName")});var us=M(()=>{"use strict";qT();Jae();ese()});function tse(t,e,r){return[new an({definition:[new Er({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}var Hu,XT=M(()=>{"use strict";Ht();us();Hu=class{static{o(this,"RestWalker")}walk(e,r=[]){Se(e.definition,(n,i)=>{let a=xi(e.definition,i+1);if(n instanceof nn)this.walkProdRef(n,a,r);else if(n instanceof Er)this.walkTerminal(n,a,r);else if(n instanceof _n)this.walkFlat(n,a,r);else if(n instanceof an)this.walkOption(n,a,r);else if(n instanceof Ln)this.walkAtLeastOne(n,a,r);else if(n instanceof Dn)this.walkAtLeastOneSep(n,a,r);else if(n instanceof bn)this.walkManySep(n,a,r);else if(n instanceof Dr)this.walkMany(n,a,r);else if(n instanceof wn)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=tse(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=tse(e,r,n);this.walk(e,i)}walkOr(e,r,n){let i=r.concat(n);Se(e.definition,a=>{let s=new _n({definition:[a]});this.walk(s,i)})}};o(tse,"restForRepetitionWithSeparator")});function u0(t){if(t instanceof nn)return u0(t.referencedRule);if(t instanceof Er)return dBe(t);if(dR(t))return hBe(t);if(pR(t))return fBe(t);throw Error("non exhaustive match")}function hBe(t){let e=[],r=t.definition,n=0,i=r.length>n,a,s=!0;for(;i&&s;)a=r[n],s=c0(a),e=e.concat(u0(a)),n=n+1,i=r.length>n;return Xm(e)}function fBe(t){let e=Qe(t.definition,r=>u0(r));return Xm(Wr(e))}function dBe(t){return[t.terminalType]}var mR=M(()=>{"use strict";Ht();us();o(u0,"first");o(hBe,"firstForSequence");o(fBe,"firstForBranching");o(dBe,"firstForTerminal")});var jT,gR=M(()=>{"use strict";jT="_~IN~_"});function rse(t){let e={};return Se(t,r=>{let n=new yR(r).startWalking();va(e,n)}),e}function pBe(t,e){return t.name+e+jT}var yR,nse=M(()=>{"use strict";XT();mR();Ht();gR();us();yR=class extends Hu{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=pBe(e.referencedRule,e.idx)+this.topProd.name,a=r.concat(n),s=new _n({definition:a}),l=u0(s);this.follows[i]=l}};o(rse,"computeAllProdsFollows");o(pBe,"buildBetweenProdsFollowPrefix")});function ug(t){let e=t.toString();if(KT.hasOwnProperty(e))return KT[e];{let r=mBe.pattern(e);return KT[e]=r,r}}function ise(){KT={}}var KT,mBe,QT=M(()=>{"use strict";f2();KT={},mBe=new a0;o(ug,"getRegExpAst");o(ise,"clearRegExpParserCache")});function ose(t,e=!1){try{let r=ug(t);return vR(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===sse)e&&g2(`${x2} 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.`),og(`${x2} + 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 vR(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i{if(typeof u=="number")ZT(u,e,r);else{let h=u;if(r===!0)for(let f=h.from;f<=h.to;f++)ZT(f,e,r);else{for(let f=h.from;f<=h.to&&f=hg){let f=h.from>=hg?h.from:hg,d=h.to,p=Gc(f),m=Gc(d);for(let g=p;g<=m;g++)e[g]=g}}}});break;case"Group":vR(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"&&xR(s)===!1||s.type!=="Group"&&l===!1)break}break;default:throw Error("non exhaustive match!")}return br(e)}function ZT(t,e,r){let n=Gc(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=Gc(n.charCodeAt(0));e[i]=i}else{let i=r.toLowerCase();if(i!==r){let a=Gc(i.charCodeAt(0));e[a]=a}}}function ase(t,e){return as(t.value,r=>{if(typeof r=="number")return Yn(e,r);{let n=r;return as(e,i=>n.from<=i&&i<=n.to)!==void 0}})}function xR(t){let e=t.quantifier;return e&&e.atLeast===0?!0:t.value?Dt(t.value)?za(t.value,xR):xR(t.value):!1}function JT(t,e){if(e instanceof RegExp){let r=ug(e),n=new bR(t);return n.visit(r),n.found}else return as(e,r=>Yn(t,r.charCodeAt(0)))!==void 0}var sse,x2,bR,lse=M(()=>{"use strict";f2();Ht();lg();QT();wR();sse="Complement Sets are not supported for first char optimization",x2=`Unable to use "first char" lexer optimizations: +`;o(ose,"getOptimizedStartCodesIndices");o(vR,"firstCharOptimizedIndices");o(ZT,"addOptimizedIdxToResult");o(gBe,"handleIgnoreCase");o(ase,"findCode");o(xR,"isWholeOptional");bR=class extends zc{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){Yn(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?ase(e,this.targetCharCodes)===void 0&&(this.found=!0):ase(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};o(JT,"canMatchCharCode")});function hse(t,e){e=rf(e,{useSticky:kR,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` +`],tracer:o((b,w)=>w(),"tracer")});let r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{IBe()});let n;r("Reject Lexer.NA",()=>{n=af(t,b=>b[h0]===ci.NA)});let i=!1,a;r("Transform Patterns",()=>{i=!1,a=Qe(n,b=>{let w=b[h0];if(Xo(w)){let _=w.source;return _.length===1&&_!=="^"&&_!=="$"&&_!=="."&&!w.ignoreCase?_:_.length===2&&_[0]==="\\"&&!Yn(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],_[1])?_[1]:e.useSticky?use(w):cse(w)}else{if(_i(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?use(T):cse(T)}}else throw Error("non exhaustive match")}})});let s,l,u,h,f;r("misc mapping",()=>{s=Qe(n,b=>b.tokenTypeIdx),l=Qe(n,b=>{let w=b.GROUP;if(w!==ci.SKIPPED){if(bi(w))return w;if(dr(w))return!1;throw Error("non exhaustive match")}}),u=Qe(n,b=>{let w=b.LONGER_ALT;if(w)return Dt(w)?Qe(w,T=>oT(n,T)):[oT(n,w)]}),h=Qe(n,b=>b.PUSH_MODE),f=Qe(n,b=>Nt(b,"POP_MODE"))});let d;r("Line Terminator Handling",()=>{let b=xse(e.lineTerminatorCharacters);d=Qe(n,w=>!1),e.positionTracking!=="onlyOffset"&&(d=Qe(n,w=>Nt(w,"LINE_BREAKS")?!!w.LINE_BREAKS:vse(w,b)===!1&&JT(b,w.PATTERN)))});let p,m,g,y;r("Misc Mapping #2",()=>{p=Qe(n,gse),m=Qe(a,RBe),g=qr(n,(b,w)=>{let _=w.GROUP;return bi(_)&&_!==ci.SKIPPED&&(b[_]=[]),b},{}),y=Qe(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=Gc(T);TR(b,E,y[_])}else if(Dt(w.START_CHARS_HINT)){let T;Se(w.START_CHARS_HINT,E=>{let L=typeof E=="string"?E.charCodeAt(0):E,S=Gc(L);T!==S&&(T=S,TR(b,S,y[_]))})}else if(Xo(w.PATTERN))if(w.PATTERN.unicode)v=!1,e.ensureOptimizations&&og(`${x2} 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=ose(w.PATTERN,e.ensureOptimizations);cr(T)&&(v=!1),Se(T,E=>{TR(b,E,y[_])})}else e.ensureOptimizations&&og(`${x2} 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 fse(t,e){let r=[],n=vBe(t);r=r.concat(n.errors);let i=xBe(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat(yBe(a)),r=r.concat(ABe(a)),r=r.concat(_Be(a,e)),r=r.concat(LBe(a)),r}function yBe(t){let e=[],r=Yr(t,n=>Xo(n[h0]));return e=e.concat(wBe(r)),e=e.concat(EBe(r)),e=e.concat(SBe(r)),e=e.concat(CBe(r)),e=e.concat(TBe(r)),e}function vBe(t){let e=Yr(t,i=>!Nt(i,h0)),r=Qe(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:qn.MISSING_PATTERN,tokenTypes:[i]})),n=nf(t,e);return{errors:r,valid:n}}function xBe(t){let e=Yr(t,i=>{let a=i[h0];return!Xo(a)&&!_i(a)&&!Nt(a,"exec")&&!bi(a)}),r=Qe(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:qn.INVALID_PATTERN,tokenTypes:[i]})),n=nf(t,e);return{errors:r,valid:n}}function wBe(t){class e extends zc{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=ug(a),l=new e;return l.visit(s),l.found}catch{return bBe.test(a.source)}});return Qe(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:qn.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function TBe(t){let e=Yr(t,n=>n.PATTERN.test(""));return Qe(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:qn.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}function EBe(t){class e extends zc{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=ug(a),l=new e;return l.visit(s),l.found}catch{return kBe.test(a.source)}});return Qe(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:qn.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function SBe(t){let e=Yr(t,n=>{let i=n[h0];return i instanceof RegExp&&(i.multiline||i.global)});return Qe(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:qn.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function CBe(t){let e=[],r=Qe(t,a=>qr(t,(s,l)=>(a.PATTERN.source===l.PATTERN.source&&!Yn(e,l)&&l.PATTERN!==ci.NA&&(e.push(l),s.push(l)),s),[]));r=Rc(r);let n=Yr(r,a=>a.length>1);return Qe(n,a=>{let s=Qe(a,u=>u.name);return{message:`The same RegExp pattern ->${sa(a).PATTERN}<-has been used in all of the following Token Types: ${s.join(", ")} <-`,type:qn.DUPLICATE_PATTERNS_FOUND,tokenTypes:a}})}function ABe(t){let e=Yr(t,n=>{if(!Nt(n,"GROUP"))return!1;let i=n.GROUP;return i!==ci.SKIPPED&&i!==ci.NA&&!bi(i)});return Qe(e,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:qn.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}function _Be(t,e){let r=Yr(t,i=>i.PUSH_MODE!==void 0&&!Yn(e,i.PUSH_MODE));return Qe(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:qn.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function LBe(t){let e=[],r=qr(t,(n,i,a)=>{let s=i.PATTERN;return s===ci.NA||(bi(s)?n.push({str:s,idx:a,tokenType:i}):Xo(s)&&NBe(s)&&n.push({str:s.source,idx:a,tokenType:i})),n},[]);return Se(t,(n,i)=>{Se(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:qn.UNREACHABLE_PATTERN,tokenTypes:[n,l]})}})}),e}function DBe(t,e){if(Xo(e)){let r=e.exec(t);return r!==null&&r.index===0}else{if(_i(e))return e(t,0,[],{});if(Nt(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function NBe(t){return as([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>t.source.indexOf(r)!==-1)===void 0}function cse(t){let e=t.ignoreCase?"i":"";return new RegExp(`^(?:${t.source})`,e)}function use(t){let e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}function dse(t,e,r){let n=[];return Nt(t,fg)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+fg+`> property in its definition +`,type:qn.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),Nt(t,ek)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+ek+`> property in its definition +`,type:qn.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),Nt(t,ek)&&Nt(t,fg)&&!Nt(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${fg}: <${t.defaultMode}>which does not exist +`,type:qn.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),Nt(t,ek)&&Se(t.modes,(i,a)=>{Se(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:qn.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(Nt(s,"LONGER_ALT")){let u=Dt(s.LONGER_ALT)?s.LONGER_ALT:[s.LONGER_ALT];Se(u,h=>{!dr(h)&&!Yn(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:qn.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function pse(t,e,r){let n=[],i=!1,a=Rc(Wr(br(t.modes))),s=af(a,u=>u[h0]===ci.NA),l=xse(r);return e&&Se(s,u=>{let h=vse(u,l);if(h!==!1){let d={message:MBe(u,h),type:h.issue,tokenType:u};n.push(d)}else Nt(u,"LINE_BREAKS")?u.LINE_BREAKS===!0&&(i=!0):JT(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:qn.NO_LINE_BREAKS_FLAGS}),n}function mse(t){let e={},r=Gr(t);return Se(r,n=>{let i=t[n];if(Dt(i))e[n]=[];else throw Error("non exhaustive match")}),e}function gse(t){let e=t.PATTERN;if(Xo(e))return!1;if(_i(e))return!0;if(Nt(e,"exec"))return!0;if(bi(e))return!1;throw Error("non exhaustive match")}function RBe(t){return bi(t)&&t.length===1?t.charCodeAt(0):!1}function vse(t,e){if(Nt(t,"LINE_BREAKS"))return!1;if(Xo(t.PATTERN)){try{JT(e,t.PATTERN)}catch(r){return{issue:qn.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(bi(t.PATTERN))return!1;if(gse(t))return{issue:qn.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function MBe(t,e){if(e.issue===qn.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===qn.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 xse(t){return Qe(t,r=>bi(r)?r.charCodeAt(0):r)}function TR(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}function Gc(t){return t255?255+~~(t/255):t}}var h0,fg,ek,kR,bBe,kBe,yse,hg,tk,wR=M(()=>{"use strict";f2();b2();Ht();lg();lse();QT();h0="PATTERN",fg="defaultMode",ek="modes",kR=typeof new RegExp("(?:)").sticky=="boolean";o(hse,"analyzeTokenTypes");o(fse,"validatePatterns");o(yBe,"validateRegExpPattern");o(vBe,"findMissingPatterns");o(xBe,"findInvalidPatterns");bBe=/[^\\][$]/;o(wBe,"findEndOfInputAnchor");o(TBe,"findEmptyMatchRegExps");kBe=/[^\\[][\^]|^\^/;o(EBe,"findStartOfInputAnchor");o(SBe,"findUnsupportedFlags");o(CBe,"findDuplicatePatterns");o(ABe,"findInvalidGroupType");o(_Be,"findModesThatDoNotExist");o(LBe,"findUnreachablePatterns");o(DBe,"testTokenType");o(NBe,"noMetaChar");o(cse,"addStartOfInput");o(use,"addStickyFlag");o(dse,"performRuntimeChecks");o(pse,"performWarningRuntimeChecks");o(mse,"cloneEmptyGroups");o(gse,"isCustomPattern");o(RBe,"isShortPattern");yse={test:o(function(t){let e=t.length;for(let r=this.lastIndex;r{r.isParent=r.categoryMatches.length>0})}function OBe(t){let e=rn(t),r=t,n=!0;for(;n;){r=Rc(Wr(Qe(r,a=>a.CATEGORIES)));let i=nf(r,e);e=e.concat(i),cr(i)?n=!1:r=i}return e}function PBe(t){Se(t,e=>{ER(e)||(Tse[bse]=e,e.tokenTypeIdx=bse++),wse(e)&&!Dt(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),wse(e)||(e.CATEGORIES=[]),zBe(e)||(e.categoryMatches=[]),GBe(e)||(e.categoryMatchesMap={})})}function BBe(t){Se(t,e=>{e.categoryMatches=[],Se(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push(Tse[n].tokenTypeIdx)})})}function FBe(t){Se(t,e=>{kse([],e)})}function kse(t,e){Se(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),Se(e.CATEGORIES,r=>{let n=t.concat(e);Yn(n,r)||kse(n,r)})}function ER(t){return Nt(t,"tokenTypeIdx")}function wse(t){return Nt(t,"CATEGORIES")}function zBe(t){return Nt(t,"categoryMatches")}function GBe(t){return Nt(t,"categoryMatchesMap")}function Ese(t){return Nt(t,"tokenTypeIdx")}var bse,Tse,f0=M(()=>{"use strict";Ht();o(Wu,"tokenStructuredMatcher");o(dg,"tokenStructuredMatcherNoCategories");bse=1,Tse={};o(Yu,"augmentTokenTypes");o(OBe,"expandCategories");o(PBe,"assignTokenDefaultProps");o(BBe,"assignCategoriesTokensProp");o(FBe,"assignCategoriesMapProp");o(kse,"singleAssignCategoriesToksMap");o(ER,"hasShortKeyProperty");o(wse,"hasCategoriesProperty");o(zBe,"hasExtendingTokensTypesProperty");o(GBe,"hasExtendingTokensTypesMapProperty");o(Ese,"isTokenType")});var SR,CR=M(()=>{"use strict";SR={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 qn,w2,ci,b2=M(()=>{"use strict";wR();Ht();lg();f0();CR();QT();(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"})(qn||(qn={}));w2={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` +`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:SR,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(w2);ci=class{static{o(this,"Lexer")}constructor(e,r=w2){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}=y2(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=va({},w2,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===w2.lineTerminatorsPattern)this.config.lineTerminatorsPattern=yse;else if(this.config.lineTerminatorCharacters===w2.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),Dt(e)?i={modes:{defaultMode:rn(e)},defaultMode:fg}:(a=!1,i=rn(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(dse(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(pse(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},Se(i.modes,(l,u)=>{i.modes[u]=af(l,h=>dr(h))});let s=Gr(i.modes);if(Se(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(fse(l,s))}),cr(this.lexerDefinitionErrors)){Yu(l);let h;this.TRACE_INIT("analyzeTokenTypes",()=>{h=hse(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=va({},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=Qe(this.lexerDefinitionErrors,h=>h.message).join(`----------------------- +`);throw new Error(`Errors detected in definition of Lexer: +`+u)}Se(this.lexerDefinitionWarning,l=>{g2(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(kR?(this.chopInput=aa,this.match=this.matchWithTest):(this.updateLastIndex=ti,this.match=this.matchWithExec),a&&(this.handleModes=ti),this.trackStartLines===!1&&(this.computeNewColumn=aa),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=ti),/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",()=>{ise()}),this.TRACE_INIT("toFastProperties",()=>{v2(this)})})}tokenize(e,r=this.defaultMode){if(!cr(this.lexerDefinitionErrors)){let i=Qe(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),S=new Array(L),A=[],I=this.trackStartLines?1:void 0,D=this.trackStartLines?1:void 0,k=mse(this.emptyGroups),R=this.trackStartLines,C=this.config.lineTerminatorsPattern,O=0,N=[],P=[],F=[],B=[];Object.freeze(B);let G;function z(){return N}o(z,"getPossiblePatternsSlow");function W(ee){let J=Gc(ee),H=P[J];return H===void 0?B:H}o(W,"getPossiblePatternsOptimized");let Z=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=xa(F);N=this.patternIdxToConfig[J],P=this.charCodeToPatternIdxToConfig[J],O=N.length;let H=this.canModeBeOptimized[J]&&this.config.safeMode===!1;P&&H?G=W:G=z}},"pop_mode");function j(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?G=W:G=z}o(j,"push_mode"),j.call(this,r);let oe,K=this.config.recoveryEnabled;for(;T<_;){u=null;let ee=w.charCodeAt(T),J=G(ee),H=J.length;for(n=0;nu.length){u=s,h=f,oe=ue;break}}}break}}if(u!==null){if(d=u.length,p=oe.group,p!==void 0&&(m=oe.tokenTypeIdx,g=this.createTokenInstance(u,T,m,oe.tokenType,I,D,d),this.handlePayload(g,h),p===!1?E=this.addToken(S,E,g):k[p].push(g)),e=this.chopInput(e,d),T=T+d,D=this.computeNewColumn(D,d),R===!0&&oe.canLineTerminator===!0){let q=0,Q,ae;C.lastIndex=0;do Q=C.test(u),Q===!0&&(ae=C.lastIndex-1,q++);while(Q===!0);q!==0&&(I=I+q,D=d-ae,this.updateTokenEndLineColumnLocation(g,p,ae,q,I,D,d))}this.handleModes(oe,Z,j,g)}else{let q=T,Q=I,ae=D,ue=K===!1;for(;ue===!1&&T<_;)for(e=this.chopInput(e,1),T++,i=0;i{"use strict";Ht();b2();f0();o(qu,"tokenLabel");o(AR,"hasTokenLabel");$Be="parent",Sse="categories",Cse="label",Ase="group",_se="push_mode",Lse="pop_mode",Dse="longer_alt",Nse="line_breaks",Rse="start_chars_hint";o(rk,"createToken");o(VBe,"createTokenInternal");mo=rk({name:"EOF",pattern:ci.NA});Yu([mo]);o(d0,"createTokenInstance");o(T2,"tokenMatcher")});var Xu,Mse,Ul,pg=M(()=>{"use strict";p0();Ht();us();Xu={buildMismatchTokenMessage({expected:t,actual:e,previous:r,ruleName:n}){return`Expecting ${AR(t)?`--> ${qu(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: '`+sa(e).image+"'";if(n)return a+n+l;{let u=qr(t,(p,m)=>p.concat(m),[]),h=Qe(u,p=>`[${Qe(p,m=>qu(m)).join(", ")}]`),d=`one of these possible Token sequences: +${Qe(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: '`+sa(e).image+"'";if(r)return i+r+s;{let u=`expecting at least one iteration which starts with one of these possible Token sequences:: + <${Qe(t,h=>`[${Qe(h,f=>qu(f)).join(",")}]`).join(" ,")}>`;return i+u+s}}};Object.freeze(Xu);Mse={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- +inside top level rule: ->`+t.name+"<-"}},Ul={buildDuplicateFoundError(t,e){function r(f){return f instanceof Er?f.terminalType.name:f instanceof nn?f.nonTerminalName:""}o(r,"getExtraProductionArgument");let n=t.name,i=sa(e),a=i.idx,s=Vs(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=Qe(t.prefixPath,i=>qu(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=Qe(t.prefixPath,i=>qu(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=Vs(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=Qe(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 ls?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}}});function Ise(t,e){let r=new _R(t,e);return r.resolveRefs(),r.errors}var _R,Ose=M(()=>{"use strict";Us();Ht();us();o(Ise,"resolveGrammar");_R=class extends cs{static{o(this,"GastRefResolverVisitor")}constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){Se(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:Ui.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}});function sk(t,e,r=[]){r=rn(r);let n=[],i=0;function a(l){return l.concat(xi(t,i+1))}o(a,"remainingPathWith");function s(l){let u=sk(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 Er)r.push(l.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:xi(t,i)}),n}function ok(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&&xa(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:xi(m),ruleStack:zu(y),occurrenceStack:zu(v)};d.push(b)}else if(x instanceof Er)if(g=0;b--){let w=x.definition[b],_={idx:g,def:w.definition.concat(xi(m)),ruleStack:y,occurrenceStack:v};d.push(_),d.push(s)}else if(x instanceof _n)d.push({idx:g,def:x.definition.concat(xi(m)),ruleStack:y,occurrenceStack:v});else if(x instanceof ls)d.push(UBe(x,g,y,v));else throw Error("non exhaustive match")}return f}function UBe(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 LR,nk,mg,ik,k2,ak,E2,S2=M(()=>{"use strict";Ht();mR();XT();us();LR=class extends Hu{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())}},nk=class extends LR{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 _n({definition:i});this.possibleTokTypes=u0(a),this.found=!0}}},mg=class extends Hu{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}},ik=class extends mg{static{o(this,"NextTerminalAfterManyWalker")}walkMany(e,r,n){if(e.idx===this.occurrence){let i=sa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Er&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}},k2=class extends mg{static{o(this,"NextTerminalAfterManySepWalker")}walkManySep(e,r,n){if(e.idx===this.occurrence){let i=sa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Er&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}},ak=class extends mg{static{o(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){let i=sa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Er&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}},E2=class extends mg{static{o(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){let i=sa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Er&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}};o(sk,"possiblePathsFrom");o(ok,"nextPossibleTokensAfter");o(UBe,"expandTopLevelRule")});function C2(t){if(t instanceof an||t==="Option")return Xn.OPTION;if(t instanceof Dr||t==="Repetition")return Xn.REPETITION;if(t instanceof Ln||t==="RepetitionMandatory")return Xn.REPETITION_MANDATORY;if(t instanceof Dn||t==="RepetitionMandatoryWithSeparator")return Xn.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof bn||t==="RepetitionWithSeparator")return Xn.REPETITION_WITH_SEPARATOR;if(t instanceof wn||t==="Alternation")return Xn.ALTERNATION;throw Error("non exhaustive match")}function ck(t){let{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,a=C2(n);return a===Xn.ALTERNATION?gg(e,r,i):yg(e,r,a,i)}function Bse(t,e,r,n,i,a){let s=gg(t,e,r),l=Use(s)?dg:Wu;return a(s,n,l,i)}function Fse(t,e,r,n,i,a){let s=yg(t,e,i,r),l=Use(s)?dg:Wu;return a(s[0],l,n)}function zse(t,e,r,n){let i=t.length,a=za(t,s=>za(s,l=>l.length===1));if(e)return function(s){let l=Qe(s,u=>u.GATE);for(let u=0;uWr(u)),l=qr(s,(u,h,f)=>(Se(h,d=>{Nt(u,d.tokenTypeIdx)||(u[d.tokenTypeIdx]=f),Se(d.categoryMatches,p=>{Nt(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,Se(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;ask([s],1)),n=Pse(r.length),i=Qe(r,s=>{let l={};return Se(s,u=>{let h=DR(u.partialPath);Se(h,f=>{l[f]=!0})}),l}),a=r;for(let s=1;s<=e;s++){let l=a;a=Pse(l.length);for(let u=0;u{let x=DR(v.partialPath);Se(x,b=>{i[u][b]=!0})})}}}}return n}function gg(t,e,r,n){let i=new lk(t,Xn.ALTERNATION,n);return e.accept(i),$se(i.result,r)}function yg(t,e,r,n){let i=new lk(t,r);e.accept(i);let a=i.result,l=new NR(e,t,r).startWalking(),u=new _n({definition:a}),h=new _n({definition:l});return $se([u,h],n)}function uk(t,e){e:for(let r=0;r{let i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function Use(t){return za(t,e=>za(e,r=>za(r,n=>cr(n.categoryMatches))))}var Xn,NR,lk,vg=M(()=>{"use strict";Ht();S2();XT();f0();us();(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"})(Xn||(Xn={}));o(C2,"getProdType");o(ck,"getLookaheadPaths");o(Bse,"buildLookaheadFuncForOr");o(Fse,"buildLookaheadFuncForOptionalProd");o(zse,"buildAlternativesLookAheadFunc");o(Gse,"buildSingleAlternativeLookaheadFunction");NR=class extends Hu{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,Xn.OPTION,r,n)||super.walkOption(e,r,n)}walkAtLeastOne(e,r,n){this.checkIsTarget(e,Xn.REPETITION_MANDATORY,r,n)||super.walkOption(e,r,n)}walkAtLeastOneSep(e,r,n){this.checkIsTarget(e,Xn.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}walkMany(e,r,n){this.checkIsTarget(e,Xn.REPETITION,r,n)||super.walkOption(e,r,n)}walkManySep(e,r,n){this.checkIsTarget(e,Xn.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}},lk=class extends cs{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,Xn.OPTION)}visitRepetition(e){this.checkIsTarget(e,Xn.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,Xn.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,Xn.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,Xn.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,Xn.ALTERNATION)}};o(Pse,"initializeArrayOfArrays");o(DR,"pathToHashKeys");o(HBe,"isUniquePrefixHash");o($se,"lookAheadSequenceFromAlternatives");o(gg,"getLookaheadPathsForOr");o(yg,"getLookaheadPathsForOptionalProd");o(uk,"containsPath");o(Vse,"isStrictPrefixOfPath");o(Use,"areTokenCategoriesNotUsed")});function Hse(t){let e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return Qe(e,r=>Object.assign({type:Ui.CUSTOM_LOOKAHEAD_VALIDATION},r))}function Wse(t,e,r,n){let i=ba(t,u=>WBe(u,r)),a=QBe(t,e,r),s=ba(t,u=>XBe(u,r)),l=ba(t,u=>qBe(u,t,n,r));return i.concat(a,s,l)}function WBe(t,e){let r=new RR;t.accept(r);let n=r.allProductions,i=WL(n,YBe),a=zs(i,l=>l.length>1);return Qe(br(a),l=>{let u=sa(l),h=e.buildDuplicateFoundError(t,l),f=Vs(u),d={message:h,type:Ui.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:f,occurrence:u.idx},p=Yse(u);return p&&(d.parameter=p),d})}function YBe(t){return`${Vs(t)}_#_${t.idx}_#_${Yse(t)}`}function Yse(t){return t instanceof Er?t.terminalType.name:t instanceof nn?t.nonTerminalName:""}function qBe(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:Ui.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function qse(t,e,r){let n=[],i;return Yn(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:Ui.INVALID_RULE_OVERRIDE,ruleName:t})),n}function IR(t,e,r,n=[]){let i=[],a=hk(e.definition);if(cr(a))return[];{let s=t.name;Yn(a,t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:Ui.LEFT_RECURSION,ruleName:s});let u=nf(a,n.concat([t])),h=ba(u,f=>{let d=rn(n);return d.push(f),IR(t,f,r,d)});return i.concat(h)}}function hk(t){let e=[];if(cr(t))return e;let r=sa(t);if(r instanceof nn)e.push(r.referencedRule);else if(r instanceof _n||r instanceof an||r instanceof Ln||r instanceof Dn||r instanceof bn||r instanceof Dr)e=e.concat(hk(r.definition));else if(r instanceof wn)e=Wr(Qe(r.definition,a=>hk(a.definition)));else if(!(r instanceof Er))throw Error("non exhaustive match");let n=c0(r),i=t.length>1;if(n&&i){let a=xi(t);return e.concat(hk(a))}else return e}function Xse(t,e){let r=new A2;t.accept(r);let n=r.alternations;return ba(n,a=>{let s=zu(a.definition);return ba(s,(l,u)=>{let h=ok([l],[],Wu,1);return cr(h)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:a,emptyChoiceIdx:u}),type:Ui.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:a.idx,alternative:u+1}]:[]})})}function jse(t,e,r){let n=new A2;t.accept(n);let i=n.alternations;return i=af(i,s=>s.ignoreAmbiguities===!0),ba(i,s=>{let l=s.idx,u=s.maxLookahead||e,h=gg(l,t,u,s),f=jBe(h,s,t,r),d=KBe(h,s,t,r);return f.concat(d)})}function XBe(t,e){let r=new A2;t.accept(r);let n=r.alternations;return ba(n,a=>a.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:a}),type:Ui.TOO_MANY_ALTS,ruleName:t.name,occurrence:a.idx}]:[])}function Kse(t,e,r){let n=[];return Se(t,i=>{let a=new MR;i.accept(a);let s=a.allProductions;Se(s,l=>{let u=C2(l),h=l.maxLookahead||e,f=l.idx,p=yg(f,i,u,h)[0];if(cr(Wr(p))){let m=r.buildEmptyRepetitionError({topLevelRule:i,repetition:l});n.push({message:m,type:Ui.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function jBe(t,e,r,n){let i=[],a=qr(t,(l,u,h)=>(e.definition[h].ignoreAmbiguities===!0||Se(u,f=>{let d=[h];Se(t,(p,m)=>{h!==m&&uk(p,f)&&e.definition[m].ignoreAmbiguities!==!0&&d.push(m)}),d.length>1&&!uk(i,f)&&(i.push(f),l.push({alts:d,path:f}))}),l),[]);return Qe(a,l=>{let u=Qe(l.alts,f=>f+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:u,prefixPath:l.path}),type:Ui.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:l.alts}})}function KBe(t,e,r,n){let i=qr(t,(s,l,u)=>{let h=Qe(l,f=>({idx:u,path:f}));return s.concat(h)},[]);return Rc(ba(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:Ui.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:g,alternatives:m}})}))}function QBe(t,e,r){let n=[],i=Qe(e,a=>a.name);return Se(t,a=>{let s=a.name;if(Yn(i,s)){let l=r.buildNamespaceConflictError(a);n.push({message:l,type:Ui.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:s})}}),n}var RR,A2,MR,_2=M(()=>{"use strict";Ht();Us();us();vg();S2();f0();o(Hse,"validateLookahead");o(Wse,"validateGrammar");o(WBe,"validateDuplicateProductions");o(YBe,"identifyProductionForDuplicates");o(Yse,"getExtraProductionArgument");RR=class extends cs{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(qBe,"validateRuleDoesNotAlreadyExist");o(qse,"validateRuleIsOverridden");o(IR,"validateNoLeftRecursion");o(hk,"getFirstNoneTerminal");A2=class extends cs{static{o(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};o(Xse,"validateEmptyOrAlternative");o(jse,"validateAmbiguousAlternationAlternatives");MR=class extends cs{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(XBe,"validateTooManyAlts");o(Kse,"validateSomeNonEmptyLookaheadPath");o(jBe,"checkAlternativesAmbiguities");o(KBe,"checkPrefixAlternativesAmbiguities");o(QBe,"checkTerminalAndNoneTerminalsNameSpace")});function Qse(t){let e=rf(t,{errMsgProvider:Mse}),r={};return Se(t.rules,n=>{r[n.name]=n}),Ise(r,e.errMsgProvider)}function Zse(t){return t=rf(t,{errMsgProvider:Ul}),Wse(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}var Jse=M(()=>{"use strict";Ht();Ose();_2();pg();o(Qse,"resolveGrammar");o(Zse,"validateGrammar")});function ff(t){return Yn(ioe,t.name)}var eoe,toe,roe,noe,ioe,xg,m0,L2,D2,N2,bg=M(()=>{"use strict";Ht();eoe="MismatchedTokenException",toe="NoViableAltException",roe="EarlyExitException",noe="NotAllInputParsedException",ioe=[eoe,toe,roe,noe];Object.freeze(ioe);o(ff,"isRecognitionException");xg=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)}},m0=class extends xg{static{o(this,"MismatchedTokenException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=eoe}},L2=class extends xg{static{o(this,"NoViableAltException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=toe}},D2=class extends xg{static{o(this,"NotAllInputParsedException")}constructor(e,r){super(e,r),this.name=noe}},N2=class extends xg{static{o(this,"EarlyExitException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=roe}}});function ZBe(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=mo,f=1),!(h===void 0||f===void 0)&&this.shouldInRepetitionRecoveryBeTried(h,f,s)&&this.tryInRepetitionRecovery(t,e,r,h)}var OR,BR,PR,fk,FR=M(()=>{"use strict";p0();Ht();bg();gR();Us();OR={},BR="InRuleRecoveryException",PR=class extends Error{static{o(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=BR}},fk=class{static{o(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=Nt(e,"recoveryEnabled")?e.recoveryEnabled:hs.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=ZBe)}getTokenToInsert(e){let r=d0(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 m0(m,h,this.LA(0));g.resyncedTokens=zu(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 PR("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 as(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 Yn(n,e)}findReSyncTokenType(){let e=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=as(e,a=>T2(r,a));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return OR;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 Qe(e,(n,i)=>i===0?OR:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){let e=Qe(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return Wr(e)}getFollowSetFromFollowKey(e){if(e===OR)return[mo];let r=e.ruleName+e.idxInCallingRule+jT+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,mo)||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 zu(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 Qe(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}};o(ZBe,"attemptInRepetitionRecovery")});function dk(t,e,r){return r|e|t}var pk=M(()=>{"use strict";o(dk,"getKeyForAutomaticLookahead")});var ju,zR=M(()=>{"use strict";Ht();pg();Us();_2();vg();ju=class{static{o(this,"LLkLookaheadStrategy")}constructor(e){var r;this.maxLookahead=(r=e?.maxLookahead)!==null&&r!==void 0?r:hs.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 ba(e,r=>IR(r,r,Ul))}validateEmptyOrAlternatives(e){return ba(e,r=>Xse(r,Ul))}validateAmbiguousAlternationAlternatives(e,r){return ba(e,n=>jse(n,r,Ul))}validateSomeNonEmptyLookaheadPath(e,r){return Kse(e,r,Ul)}buildLookaheadForAlternation(e){return Bse(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,zse)}buildLookaheadForOptional(e){return Fse(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,C2(e.prodType),Gse)}}});function JBe(t){mk.reset(),t.accept(mk);let e=mk.dslMethods;return mk.reset(),e}var gk,GR,mk,aoe=M(()=>{"use strict";Ht();Us();pk();us();zR();gk=class{static{o(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=Nt(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:hs.dynamicTokensEnabled,this.maxLookahead=Nt(e,"maxLookahead")?e.maxLookahead:hs.maxLookahead,this.lookaheadStrategy=Nt(e,"lookaheadStrategy")?e.lookaheadStrategy:new ju({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){Se(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:a,repetitionMandatory:s,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:u}=JBe(r);Se(n,h=>{let f=h.idx===0?"":h.idx;this.TRACE_INIT(`${Vs(h)}${f}`,()=>{let d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:h.idx,rule:r,maxLookahead:h.maxLookahead||this.maxLookahead,hasPredicates:h.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=dk(this.fullRuleNameToShort[r.name],256,h.idx);this.setLaFuncCache(p,d)})}),Se(i,h=>{this.computeLookaheadFunc(r,h.idx,768,"Repetition",h.maxLookahead,Vs(h))}),Se(a,h=>{this.computeLookaheadFunc(r,h.idx,512,"Option",h.maxLookahead,Vs(h))}),Se(s,h=>{this.computeLookaheadFunc(r,h.idx,1024,"RepetitionMandatory",h.maxLookahead,Vs(h))}),Se(l,h=>{this.computeLookaheadFunc(r,h.idx,1536,"RepetitionMandatoryWithSeparator",h.maxLookahead,Vs(h))}),Se(u,h=>{this.computeLookaheadFunc(r,h.idx,1280,"RepetitionWithSeparator",h.maxLookahead,Vs(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=dk(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(u,l)})}getKeyForAutomaticLookahead(e,r){let n=this.getLastExplicitRuleShortName();return dk(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},GR=class extends cs{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)}},mk=new GR;o(JBe,"collectMethods")});function UR(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset{"use strict";o(UR,"setNodeLocationOnlyOffset");o(HR,"setNodeLocationFull");o(soe,"addTerminalToCst");o(ooe,"addNoneTerminalToCst")});function WR(t,e){Object.defineProperty(t,eFe,{enumerable:!1,configurable:!0,writable:!1,value:e})}var eFe,coe=M(()=>{"use strict";eFe="name";o(WR,"defineNameProp")});function tFe(t,e){let r=Gr(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 hoe(t,e,r){let n=o(function(){},"derivedConstructor");WR(n,t+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return Se(e,a=>{i[a]=tFe}),n.prototype=i,n.prototype.constructor=n,n}function rFe(t,e){return nFe(t,e)}function nFe(t,e){let r=Yr(e,i=>_i(t[i])===!1),n=Qe(r,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:YR.MISSING_METHOD,methodName:i}));return Rc(n)}var YR,foe=M(()=>{"use strict";Ht();coe();o(tFe,"defaultVisit");o(uoe,"createBaseSemanticVisitorConstructor");o(hoe,"createBaseVisitorConstructorWithDefaults");(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(YR||(YR={}));o(rFe,"validateVisitor");o(nFe,"validateMissingCstMethods")});var bk,doe=M(()=>{"use strict";loe();Ht();foe();Us();bk=class{static{o(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=Nt(e,"nodeLocationTracking")?e.nodeLocationTracking:hs.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=ti,this.cstFinallyStateUpdate=ti,this.cstPostTerminal=ti,this.cstPostNonTerminal=ti,this.cstPostRule=ti;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=HR,this.setNodeLocationFromNode=HR,this.cstPostRule=ti,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=ti,this.setNodeLocationFromNode=ti,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=UR,this.setNodeLocationFromNode=UR,this.cstPostRule=ti,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=ti,this.setNodeLocationFromNode=ti,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=ti,this.setNodeLocationFromNode=ti,this.cstPostRule=ti,this.setInitialNodeLocation=ti;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];soe(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];ooe(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(dr(this.baseCstVisitorConstructor)){let e=uoe(this.className,Gr(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(dr(this.baseCstVisitorWithDefaultsConstructor)){let e=hoe(this.className,Gr(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 wk,poe=M(()=>{"use strict";Us();wk=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)):wg}LA(e){let r=this.currIdx+e;return r<0||this.tokVectorLength<=r?wg: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 Tk,moe=M(()=>{"use strict";Ht();bg();Us();pg();_2();us();Tk=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=Tg){if(Yn(this.definedRulesNames,e)){let s={message:Ul.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:Ui.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=Tg){let i=qse(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(ff(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return YT(br(this.gastProductionsCache))}}});var kk,goe=M(()=>{"use strict";Ht();pk();bg();vg();S2();Us();FR();p0();f0();kk=class{static{o(this,"RecognizerEngine")}initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=dg,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},Nt(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(Dt(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(Dt(e))this.tokensMap=qr(e,(a,s)=>(a[s.name]=s,a),{});else if(Nt(e,"modes")&&za(Wr(br(e.modes)),Ese)){let a=Wr(br(e.modes)),s=Xm(a);this.tokensMap=qr(s,(l,u)=>(l[u.name]=u,l),{})}else if(xn(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=mo;let n=Nt(e,"modes")?Wr(br(e.modes)):br(e),i=za(n,a=>cr(a.categoryMatches));this.tokenMatcher=i?dg:Wu,Yu(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=Nt(n,"resyncEnabled")?n.resyncEnabled:Tg.resyncEnabled,a=Nt(n,"recoveryValueFunc")?n.recoveryValueFunc:Tg.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(ff(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,Xn.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,1024,e,ak)}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,E2],l,1536,e,E2)}else throw this.raiseEarlyExitException(e,Xn.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,ik,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,k2],l,1280,e,k2)}}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=Dt(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 D2(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 ff(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 m0(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===BR?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),mo)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}});var Ek,yoe=M(()=>{"use strict";bg();Ht();vg();Us();Ek=class{static{o(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=Nt(e,"errorMessageProvider")?e.errorMessageProvider:hs.errorMessageProvider}SAVE_ERROR(e){if(ff(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=yg(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 N2(h,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],a=gg(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 L2(u,this.LA(1),l))}}});var Sk,voe=M(()=>{"use strict";S2();Ht();Sk=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 ok([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let r=sa(e.ruleStack),i=this.getGAstProductions()[r];return new nk(i,e).startWalking()}}});function M2(t,e,r,n=!1){Ak(r);let i=xa(this.recordingProdStack),a=_i(e)?e:e.DEF,s=new t({definition:[],idx:r});return n&&(s.separator=e.SEP),Nt(e,"MAX_LOOKAHEAD")&&(s.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),_k}function sFe(t,e){Ak(e);let r=xa(this.recordingProdStack),n=Dt(t)===!1,i=n===!1?t:t.DEF,a=new wn({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});Nt(t,"MAX_LOOKAHEAD")&&(a.maxLookahead=t.MAX_LOOKAHEAD);let s=qv(i,l=>_i(l.GATE));return a.hasPredicates=s,r.definition.push(a),Se(i,l=>{let u=new _n({definition:[]});a.definition.push(u),Nt(l,"IGNORE_AMBIGUITIES")?u.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:Nt(l,"GATE")&&(u.ignoreAmbiguities=!0),this.recordingProdStack.push(u),l.ALT.call(this),this.recordingProdStack.pop()}),_k}function woe(t){return t===0?"":`${t}`}function Ak(t){if(t<0||t>boe){let e=new Error(`Invalid DSL Method idx value: <${t}> + Idx value must be a none negative value smaller than ${boe+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}var _k,xoe,boe,Toe,koe,aFe,Ck,Eoe=M(()=>{"use strict";Ht();us();b2();f0();p0();Us();pk();_k={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(_k);xoe=!0,boe=Math.pow(2,8)-1,Toe=rk({name:"RECORDING_PHASE_TOKEN",pattern:ci.NA});Yu([Toe]);koe=d0(Toe,`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(koe);aFe={name:`This CSTNode indicates the Parser is in Recording Phase + See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},Ck=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 wg}topLevelRuleRecord(e,r){try{let n=new ls({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 M2.call(this,an,e,r)}atLeastOneInternalRecord(e,r){M2.call(this,Ln,r,e)}atLeastOneSepFirstInternalRecord(e,r){M2.call(this,Dn,r,e,xoe)}manyInternalRecord(e,r){M2.call(this,Dr,r,e)}manySepFirstInternalRecord(e,r){M2.call(this,bn,r,e,xoe)}orInternalRecord(e,r){return sFe.call(this,e,r)}subruleInternalRecord(e,r,n){if(Ak(r),!e||Nt(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=xa(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?aFe:_k}consumeInternalRecord(e,r,n){if(Ak(r),!ER(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=xa(this.recordingProdStack),a=new Er({idx:r,terminalType:e,label:n?.LABEL});return i.definition.push(a),koe}};o(M2,"recordProd");o(sFe,"recordOrProd");o(woe,"getIdxSuffix");o(Ak,"assertMethodIdxIsValid")});var Lk,Soe=M(()=>{"use strict";Ht();lg();Us();Lk=class{static{o(this,"PerformanceTracer")}initPerformanceTracer(e){if(Nt(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=hs.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}=y2(r),s=i>10?console.warn:console.log;return this.traceInitIndent time: ${i}ms`),this.traceInitIndent--,a}else return r()}}});function Coe(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 Aoe=M(()=>{"use strict";o(Coe,"applyMixins")});function Dk(t=void 0){return function(){return t}}var wg,hs,Tg,Ui,I2,O2,Us=M(()=>{"use strict";Ht();lg();nse();p0();pg();Jse();FR();aoe();doe();poe();moe();goe();yoe();voe();Eoe();Soe();Aoe();_2();wg=d0(mo,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(wg);hs=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Xu,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Tg=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"})(Ui||(Ui={}));o(Dk,"EMPTY_ALT");I2=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",()=>{v2(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Se(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=Qse({rules:br(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(cr(n)&&this.skipValidations===!1){let i=Zse({rules:br(this.gastProductionsCache),tokenTypes:br(this.tokensMap),errMsgProvider:Ul,grammarName:r}),a=Hse({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=rse(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=Qe(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),Nt(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=Nt(r,"skipValidations")?r.skipValidations:hs.skipValidations}};I2.DEFER_DEFINITION_ERRORS_HANDLING=!1;Coe(I2,[fk,gk,bk,wk,kk,Tk,Ek,Sk,Ck,Lk]);O2=class extends I2{static{o(this,"EmbeddedActionsParser")}constructor(e,r=hs){let n=rn(r);n.outputCst=!1,super(e,n)}}});var _oe=M(()=>{"use strict";us()});var Loe=M(()=>{"use strict"});var Doe=M(()=>{"use strict";_oe();Loe()});var Noe=M(()=>{"use strict";fR()});var g0=M(()=>{"use strict";fR();Us();b2();p0();vg();zR();pg();bg();CR();us();us();Doe();Noe()});function y0(t,e,r){return`${t.name}_${e}_${r}`}function Ooe(t){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};dFe(e,t);let r=t.length;for(let n=0;nPoe(t,e,s));return Cg(t,e,n,r,...i)}function xFe(t,e,r){let n=oa(t,e,r,{type:df});pf(t,n);let i=Cg(t,e,n,r,v0(t,e,r));return bFe(t,e,r,i)}function v0(t,e,r){let n=Yr(Qe(r.definition,i=>Poe(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:TFe(t,n)}function Boe(t,e,r,n,i){let a=n.left,s=n.right,l=oa(t,e,r,{type:fFe});pf(t,l);let u=oa(t,e,r,{type:Ioe});return a.loopback=l,u.loopback=l,t.decisionMap[y0(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=l,Ni(s,l),i===void 0?(Ni(l,a),Ni(l,u)):(Ni(l,u),Ni(l,i.left),Ni(i.right,a)),{left:a,right:u}}function Foe(t,e,r,n,i){let a=n.left,s=n.right,l=oa(t,e,r,{type:hFe});pf(t,l);let u=oa(t,e,r,{type:Ioe}),h=oa(t,e,r,{type:uFe});return l.loopback=h,u.loopback=h,Ni(l,a),Ni(l,u),Ni(s,h),i!==void 0?(Ni(h,u),Ni(h,i.left),Ni(i.right,a)):Ni(h,l),t.decisionMap[y0(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=l,{left:l,right:u}}function bFe(t,e,r,n){let i=n.left,a=n.right;return Ni(i,a),t.decisionMap[y0(e,"Option",r.idx)]=i,n}function pf(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function Cg(t,e,r,n,...i){let a=oa(t,e,n,{type:cFe,start:r});r.end=a;for(let l of i)l!==void 0?(Ni(r,l.left),Ni(l.right,a)):Ni(r,a);let s={left:r,right:a};return t.decisionMap[y0(e,wFe(n),n.idx)]=r,s}function wFe(t){if(t instanceof wn)return"Alternation";if(t instanceof an)return"Option";if(t instanceof Dr)return"Repetition";if(t instanceof bn)return"RepetitionWithSeparator";if(t instanceof Ln)return"RepetitionMandatory";if(t instanceof Dn)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function TFe(t,e){let r=e.length;for(let a=0;a{"use strict";Wm();GL();g0();o(y0,"buildATNKey");df=1,lFe=2,Roe=4,Moe=5,Sg=7,cFe=8,uFe=9,hFe=10,fFe=11,Ioe=12,P2=class{static{o(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},kg=class extends P2{static{o(this,"AtomTransition")}constructor(e,r){super(e),this.tokenType=r}},B2=class extends P2{static{o(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},Eg=class extends P2{static{o(this,"RuleTransition")}constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}};o(Ooe,"createATN");o(dFe,"createRuleStartAndStopATNStates");o(Poe,"atom");o(pFe,"repetition");o(mFe,"repetitionSep");o(gFe,"repetitionMandatory");o(yFe,"repetitionMandatorySep");o(vFe,"alternation");o(xFe,"option");o(v0,"block");o(Boe,"plus");o(Foe,"star");o(bFe,"optional");o(pf,"defineDecisionState");o(Cg,"makeAlts");o(wFe,"getProdType");o(TFe,"makeBlock");o(XR,"tokenRef");o(kFe,"ruleRef");o(EFe,"buildRuleHandle");o(Ni,"epsilon");o(oa,"newState");o(jR,"addTransition");o(SFe,"removeState")});function KR(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}var F2,Ag,Goe=M(()=>{"use strict";Wm();F2={},Ag=class{static{o(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let r=KR(e);r in this.map||(this.map[r]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return Qe(this.configs,e=>e.alt)}get key(){let e="";for(let r in this.map)e+=r+":";return e}};o(KR,"getATNConfigKey")});function CFe(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 Voe(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 AFe(t){let e=t.decisionStates.length,r=Array(e);for(let n=0;nqu(i)).join(", "),r=t.production.idx===0?"":t.production.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${RFe(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 RFe(t){if(t instanceof nn)return"SUBRULE";if(t instanceof an)return"OPTION";if(t instanceof wn)return"OR";if(t instanceof Ln)return"AT_LEAST_ONE";if(t instanceof Dn)return"AT_LEAST_ONE_SEP";if(t instanceof bn)return"MANY_SEP";if(t instanceof Dr)return"MANY";if(t instanceof Er)return"CONSUME";throw Error("non exhaustive match")}function MFe(t,e,r){let n=ba(e.configs.elements,a=>a.state.transitions),i=Qre(n.filter(a=>a instanceof kg).map(a=>a.tokenType),a=>a.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}function IFe(t,e){return t.edges[e.tokenTypeIdx]}function OFe(t,e,r){let n=new Ag,i=[];for(let s of t.elements){if(r.is(s.alt)===!1)continue;if(s.state.type===Sg){i.push(s);continue}let l=s.state.transitions.length;for(let u=0;u0&&!GFe(a))for(let s of i)a.add(s);return a}function PFe(t,e){if(t instanceof kg&&T2(e,t.tokenType))return t.target}function BFe(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 Hoe(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function Uoe(t,e,r,n){return n=Woe(t,n),e.edges[r.tokenTypeIdx]=n,n}function Woe(t,e){if(e===F2)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 FFe(t){let e=new Ag,r=t.transitions.length;for(let n=0;n0){let i=[...t.stack],s={state:i.pop(),alt:t.alt,stack:i};Rk(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 WFe(t){for(let e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}var Nk,$oe,z2,Yoe=M(()=>{"use strict";g0();zoe();Goe();XL();VL();Zre();Wm();_w();nT();lT();ZL();o(CFe,"createDFACache");Nk=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=Ooe(e.rules),this.dfas=AFe(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=y0(n,"Alternation",r),f=this.atn.decisionMap[u].decision,d=Qe(ck({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),p=>Qe(p,m=>m[0]));if(Voe(d,!1)&&!a){let p=qr(d,(m,g,y)=>(Se(g,v=>{v&&(m[v.tokenTypeIdx]=y,Se(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 Nk,g=p===void 0?0:p.length;for(let v=0;vQe(p,m=>m[0]));if(Voe(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,Se(v.categoryMatches,x=>{y[x]=!0})),y),{});return function(){let y=this.LA(1);return g[y.tokenTypeIdx]===!0}}}return function(){let p=QR.call(this,s,f,$oe,l);return typeof p=="object"?!1:p===0}}};o(Voe,"isLL1Sequence");o(AFe,"initATNSimulator");o(QR,"adaptivePredict");o(_Fe,"performLookahead");o(LFe,"computeLookaheadTarget");o(DFe,"reportLookaheadAmbiguity");o(NFe,"buildAmbiguityError");o(RFe,"getProductionDslName");o(MFe,"buildAdaptivePredictError");o(IFe,"getExistingTargetState");o(OFe,"computeReachSet");o(PFe,"getReachableTarget");o(BFe,"getUniqueAlt");o(Hoe,"newDFAState");o(Uoe,"addDFAEdge");o(Woe,"addDFAState");o(FFe,"computeStartState");o(Rk,"closure");o(zFe,"getEpsilonTarget");o(GFe,"hasConfigInRuleStopState");o($Fe,"allConfigsInRuleStopStates");o(VFe,"hasConflictTerminatingPrediction");o(UFe,"getConflictingAltSets");o(HFe,"hasConflictingAltSet");o(WFe,"hasStateAssociatedWithOneAlt")});var qoe=M(()=>{"use strict";Yoe()});var Xoe,ZR,joe,Mk,Xr,Nr,Ik,Koe,JR,Qoe,Zoe,Joe,ele,eM,tle,rle,nle,Ok,_g,Lg,tM,Dg,ile,rM,nM,iM,aM,sM,ale,sle,oM,ole,lM,G2,lle,cle,ule,hle,fle,dle,ple,mle,Pk,gle,yle,vle,xle,ble,wle,Tle,kle,Ele,Sle,Cle,Bk,Ale,_le,Lle,Dle,Nle,Rle,Mle,Ile,Ole,Ple,Ble,Fle,zle,cM,uM,Gle,$le,Vle,Ule,Hle,Wle,Yle,qle,Xle,hM,ze,fM=M(()=>{"use strict";(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(Xoe||(Xoe={}));(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(ZR||(ZR={}));(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})(joe||(joe={}));(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})(Mk||(Mk={}));(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=Mk.MAX_VALUE),i===Number.MAX_VALUE&&(i=Mk.MAX_VALUE),{line:n,character:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.objectLiteral(i)&&ze.uinteger(i.line)&&ze.uinteger(i.character)}o(r,"is"),t.is=r})(Xr||(Xr={}));(function(t){function e(n,i,a,s){if(ze.uinteger(n)&&ze.uinteger(i)&&ze.uinteger(a)&&ze.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 ze.objectLiteral(i)&&Xr.is(i.start)&&Xr.is(i.end)}o(r,"is"),t.is=r})(Nr||(Nr={}));(function(t){function e(n,i){return{uri:n,range:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.objectLiteral(i)&&Nr.is(i.range)&&(ze.string(i.uri)||ze.undefined(i.uri))}o(r,"is"),t.is=r})(Ik||(Ik={}));(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 ze.objectLiteral(i)&&Nr.is(i.targetRange)&&ze.string(i.targetUri)&&Nr.is(i.targetSelectionRange)&&(Nr.is(i.originSelectionRange)||ze.undefined(i.originSelectionRange))}o(r,"is"),t.is=r})(Koe||(Koe={}));(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 ze.objectLiteral(i)&&ze.numberRange(i.red,0,1)&&ze.numberRange(i.green,0,1)&&ze.numberRange(i.blue,0,1)&&ze.numberRange(i.alpha,0,1)}o(r,"is"),t.is=r})(JR||(JR={}));(function(t){function e(n,i){return{range:n,color:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.objectLiteral(i)&&Nr.is(i.range)&&JR.is(i.color)}o(r,"is"),t.is=r})(Qoe||(Qoe={}));(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 ze.objectLiteral(i)&&ze.string(i.label)&&(ze.undefined(i.textEdit)||Lg.is(i))&&(ze.undefined(i.additionalTextEdits)||ze.typedArray(i.additionalTextEdits,Lg.is))}o(r,"is"),t.is=r})(Zoe||(Zoe={}));(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(Joe||(Joe={}));(function(t){function e(n,i,a,s,l,u){let h={startLine:n,endLine:i};return ze.defined(a)&&(h.startCharacter=a),ze.defined(s)&&(h.endCharacter=s),ze.defined(l)&&(h.kind=l),ze.defined(u)&&(h.collapsedText=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return ze.objectLiteral(i)&&ze.uinteger(i.startLine)&&ze.uinteger(i.startLine)&&(ze.undefined(i.startCharacter)||ze.uinteger(i.startCharacter))&&(ze.undefined(i.endCharacter)||ze.uinteger(i.endCharacter))&&(ze.undefined(i.kind)||ze.string(i.kind))}o(r,"is"),t.is=r})(ele||(ele={}));(function(t){function e(n,i){return{location:n,message:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.defined(i)&&Ik.is(i.location)&&ze.string(i.message)}o(r,"is"),t.is=r})(eM||(eM={}));(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(tle||(tle={}));(function(t){t.Unnecessary=1,t.Deprecated=2})(rle||(rle={}));(function(t){function e(r){let n=r;return ze.objectLiteral(n)&&ze.string(n.href)}o(e,"is"),t.is=e})(nle||(nle={}));(function(t){function e(n,i,a,s,l,u){let h={range:n,message:i};return ze.defined(a)&&(h.severity=a),ze.defined(s)&&(h.code=s),ze.defined(l)&&(h.source=l),ze.defined(u)&&(h.relatedInformation=u),h}o(e,"create"),t.create=e;function r(n){var i;let a=n;return ze.defined(a)&&Nr.is(a.range)&&ze.string(a.message)&&(ze.number(a.severity)||ze.undefined(a.severity))&&(ze.integer(a.code)||ze.string(a.code)||ze.undefined(a.code))&&(ze.undefined(a.codeDescription)||ze.string((i=a.codeDescription)===null||i===void 0?void 0:i.href))&&(ze.string(a.source)||ze.undefined(a.source))&&(ze.undefined(a.relatedInformation)||ze.typedArray(a.relatedInformation,eM.is))}o(r,"is"),t.is=r})(Ok||(Ok={}));(function(t){function e(n,i,...a){let s={title:n,command:i};return ze.defined(a)&&a.length>0&&(s.arguments=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return ze.defined(i)&&ze.string(i.title)&&ze.string(i.command)}o(r,"is"),t.is=r})(_g||(_g={}));(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 ze.objectLiteral(s)&&ze.string(s.newText)&&Nr.is(s.range)}o(i,"is"),t.is=i})(Lg||(Lg={}));(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 ze.objectLiteral(i)&&ze.string(i.label)&&(ze.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(ze.string(i.description)||i.description===void 0)}o(r,"is"),t.is=r})(tM||(tM={}));(function(t){function e(r){let n=r;return ze.string(n)}o(e,"is"),t.is=e})(Dg||(Dg={}));(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 Lg.is(s)&&(tM.is(s.annotationId)||Dg.is(s.annotationId))}o(i,"is"),t.is=i})(ile||(ile={}));(function(t){function e(n,i){return{textDocument:n,edits:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.defined(i)&&oM.is(i.textDocument)&&Array.isArray(i.edits)}o(r,"is"),t.is=r})(rM||(rM={}));(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"&&ze.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||ze.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||ze.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Dg.is(i.annotationId))}o(r,"is"),t.is=r})(nM||(nM={}));(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"&&ze.string(i.oldUri)&&ze.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||ze.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||ze.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Dg.is(i.annotationId))}o(r,"is"),t.is=r})(iM||(iM={}));(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"&&ze.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||ze.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||ze.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||Dg.is(i.annotationId))}o(r,"is"),t.is=r})(aM||(aM={}));(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=>ze.string(i.kind)?nM.is(i)||iM.is(i)||aM.is(i):rM.is(i)))}o(e,"is"),t.is=e})(sM||(sM={}));(function(t){function e(n){return{uri:n}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.defined(i)&&ze.string(i.uri)}o(r,"is"),t.is=r})(ale||(ale={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.defined(i)&&ze.string(i.uri)&&ze.integer(i.version)}o(r,"is"),t.is=r})(sle||(sle={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.defined(i)&&ze.string(i.uri)&&(i.version===null||ze.integer(i.version))}o(r,"is"),t.is=r})(oM||(oM={}));(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 ze.defined(i)&&ze.string(i.uri)&&ze.string(i.languageId)&&ze.integer(i.version)&&ze.string(i.text)}o(r,"is"),t.is=r})(ole||(ole={}));(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})(lM||(lM={}));(function(t){function e(r){let n=r;return ze.objectLiteral(r)&&lM.is(n.kind)&&ze.string(n.value)}o(e,"is"),t.is=e})(G2||(G2={}));(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})(lle||(lle={}));(function(t){t.PlainText=1,t.Snippet=2})(cle||(cle={}));(function(t){t.Deprecated=1})(ule||(ule={}));(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&&ze.string(i.newText)&&Nr.is(i.insert)&&Nr.is(i.replace)}o(r,"is"),t.is=r})(hle||(hle={}));(function(t){t.asIs=1,t.adjustIndentation=2})(fle||(fle={}));(function(t){function e(r){let n=r;return n&&(ze.string(n.detail)||n.detail===void 0)&&(ze.string(n.description)||n.description===void 0)}o(e,"is"),t.is=e})(dle||(dle={}));(function(t){function e(r){return{label:r}}o(e,"create"),t.create=e})(ple||(ple={}));(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}o(e,"create"),t.create=e})(mle||(mle={}));(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}o(e,"fromPlainText"),t.fromPlainText=e;function r(n){let i=n;return ze.string(i)||ze.objectLiteral(i)&&ze.string(i.language)&&ze.string(i.value)}o(r,"is"),t.is=r})(Pk||(Pk={}));(function(t){function e(r){let n=r;return!!n&&ze.objectLiteral(n)&&(G2.is(n.contents)||Pk.is(n.contents)||ze.typedArray(n.contents,Pk.is))&&(r.range===void 0||Nr.is(r.range))}o(e,"is"),t.is=e})(gle||(gle={}));(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}o(e,"create"),t.create=e})(yle||(yle={}));(function(t){function e(r,n,...i){let a={label:r};return ze.defined(n)&&(a.documentation=n),ze.defined(i)?a.parameters=i:a.parameters=[],a}o(e,"create"),t.create=e})(vle||(vle={}));(function(t){t.Text=1,t.Read=2,t.Write=3})(xle||(xle={}));(function(t){function e(r,n){let i={range:r};return ze.number(n)&&(i.kind=n),i}o(e,"create"),t.create=e})(ble||(ble={}));(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})(wle||(wle={}));(function(t){t.Deprecated=1})(Tle||(Tle={}));(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})(kle||(kle={}));(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})(Ele||(Ele={}));(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&&ze.string(i.name)&&ze.number(i.kind)&&Nr.is(i.range)&&Nr.is(i.selectionRange)&&(i.detail===void 0||ze.string(i.detail))&&(i.deprecated===void 0||ze.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})(Sle||(Sle={}));(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"})(Cle||(Cle={}));(function(t){t.Invoked=1,t.Automatic=2})(Bk||(Bk={}));(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 ze.defined(i)&&ze.typedArray(i.diagnostics,Ok.is)&&(i.only===void 0||ze.typedArray(i.only,ze.string))&&(i.triggerKind===void 0||i.triggerKind===Bk.Invoked||i.triggerKind===Bk.Automatic)}o(r,"is"),t.is=r})(Ale||(Ale={}));(function(t){function e(n,i,a){let s={title:n},l=!0;return typeof i=="string"?(l=!1,s.kind=i):_g.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&&ze.string(i.title)&&(i.diagnostics===void 0||ze.typedArray(i.diagnostics,Ok.is))&&(i.kind===void 0||ze.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||_g.is(i.command))&&(i.isPreferred===void 0||ze.boolean(i.isPreferred))&&(i.edit===void 0||sM.is(i.edit))}o(r,"is"),t.is=r})(_le||(_le={}));(function(t){function e(n,i){let a={range:n};return ze.defined(i)&&(a.data=i),a}o(e,"create"),t.create=e;function r(n){let i=n;return ze.defined(i)&&Nr.is(i.range)&&(ze.undefined(i.command)||_g.is(i.command))}o(r,"is"),t.is=r})(Lle||(Lle={}));(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.defined(i)&&ze.uinteger(i.tabSize)&&ze.boolean(i.insertSpaces)}o(r,"is"),t.is=r})(Dle||(Dle={}));(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 ze.defined(i)&&Nr.is(i.range)&&(ze.undefined(i.target)||ze.string(i.target))}o(r,"is"),t.is=r})(Nle||(Nle={}));(function(t){function e(n,i){return{range:n,parent:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.objectLiteral(i)&&Nr.is(i.range)&&(i.parent===void 0||t.is(i.parent))}o(r,"is"),t.is=r})(Rle||(Rle={}));(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"})(Mle||(Mle={}));(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"})(Ile||(Ile={}));(function(t){function e(r){let n=r;return ze.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})(Ole||(Ole={}));(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&&Nr.is(i.range)&&ze.string(i.text)}o(r,"is"),t.is=r})(Ple||(Ple={}));(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&&Nr.is(i.range)&&ze.boolean(i.caseSensitiveLookup)&&(ze.string(i.variableName)||i.variableName===void 0)}o(r,"is"),t.is=r})(Ble||(Ble={}));(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&&Nr.is(i.range)&&(ze.string(i.expression)||i.expression===void 0)}o(r,"is"),t.is=r})(Fle||(Fle={}));(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.defined(i)&&Nr.is(n.stoppedLocation)}o(r,"is"),t.is=r})(zle||(zle={}));(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}o(e,"is"),t.is=e})(cM||(cM={}));(function(t){function e(n){return{value:n}}o(e,"create"),t.create=e;function r(n){let i=n;return ze.objectLiteral(i)&&(i.tooltip===void 0||ze.string(i.tooltip)||G2.is(i.tooltip))&&(i.location===void 0||Ik.is(i.location))&&(i.command===void 0||_g.is(i.command))}o(r,"is"),t.is=r})(uM||(uM={}));(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 ze.objectLiteral(i)&&Xr.is(i.position)&&(ze.string(i.label)||ze.typedArray(i.label,uM.is))&&(i.kind===void 0||cM.is(i.kind))&&i.textEdits===void 0||ze.typedArray(i.textEdits,Lg.is)&&(i.tooltip===void 0||ze.string(i.tooltip)||G2.is(i.tooltip))&&(i.paddingLeft===void 0||ze.boolean(i.paddingLeft))&&(i.paddingRight===void 0||ze.boolean(i.paddingRight))}o(r,"is"),t.is=r})(Gle||(Gle={}));(function(t){function e(r){return{kind:"snippet",value:r}}o(e,"createSnippet"),t.createSnippet=e})($le||($le={}));(function(t){function e(r,n,i,a){return{insertText:r,filterText:n,range:i,command:a}}o(e,"create"),t.create=e})(Vle||(Vle={}));(function(t){function e(r){return{items:r}}o(e,"create"),t.create=e})(Ule||(Ule={}));(function(t){t.Invoked=0,t.Automatic=1})(Hle||(Hle={}));(function(t){function e(r,n){return{range:r,text:n}}o(e,"create"),t.create=e})(Wle||(Wle={}));(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}o(e,"create"),t.create=e})(Yle||(Yle={}));(function(t){function e(r){let n=r;return ze.objectLiteral(n)&&ZR.is(n.uri)&&ze.string(n.name)}o(e,"is"),t.is=e})(qle||(qle={}));(function(t){function e(a,s,l,u){return new hM(a,s,l,u)}o(e,"create"),t.create=e;function r(a){let s=a;return!!(ze.defined(s)&&ze.string(s.uri)&&(ze.undefined(s.languageId)||ze.string(s.languageId))&&ze.uinteger(s.lineCount)&&ze.func(s.getText)&&ze.func(s.positionAt)&&ze.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})(ze||(ze={}))});var $2,V2,x0,b0,dM,Ng,Fk=M(()=>{"use strict";fM();Zo();zl();$2=class{static{o(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]}buildRootNode(e){return this.rootNode=new Ng(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let r=new b0;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){let n=new x0(e.startOffset,e.image.length,eg(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 x0(r.startOffset,r.image.length,eg(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]}},dM=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}},Ng=class extends b0{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 pM(t){return t.$type===zk}var zk,jle,Kle,U2,H2,Gk,Rg,W2,YFe,mM,Y2=M(()=>{"use strict";g0();qoe();Bc();Vl();os();Fk();zk=Symbol("Datatype");o(pM,"isDataTypeNode");jle="\u200B",Kle=o(t=>t.endsWith(jle)?t:t+jle,"withRuleSuffix"),U2=class{static{o(this,"AbstractLangiumParser")}constructor(e){this._unorderedGroups=new Map,this.lexer=e.parser.Lexer;let r=this.lexer.definition;this.wrapper=new mM(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()}},H2=class extends U2{static{o(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new $2,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:m2(e)?zk:l0(e),i=this.wrapper.DEFINE_RULE(Kle(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===zk&&(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=el(n)?i.image:this.converter.convert(i.image,a);this.assign(s.operator,s.feature,h,a,l)}else if(pM(u)){let h=i.image;el(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(pM(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 FT(r),this.nodeBuilder.construct(r),e&&this.stack.pop(),pM(r)?this.converter.convert(r.value,r.$cstNode):(UN(this.astReflection,r),r)}getAssignment(e){if(!this.assignmentMap.has(e)){let r=n0(e,Gl);this.assignmentMap.set(e,{assignment:r,isCrossRef:r?r0(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}},Gk=class{static{o(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return Xu.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return Xu.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return Xu.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return Xu.buildEarlyExitMessage(e)}},Rg=class extends Gk{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}\`.`}},W2=class extends U2{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(Kle(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}},YFe={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new Rg},mM=class extends O2{static{o(this,"ChevrotainWrapper")}constructor(e,r){let n=r&&"maxLookahead"in r;super(e,Object.assign(Object.assign(Object.assign({},YFe),{lookaheadStrategy:n?new ju({maxLookahead:r.maxLookahead}):new z2}),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 Vk(t,e,r){return qFe({parser:e,tokens:r,rules:new Map,ruleNames:new Map},t),e}function qFe(t,e){let r=d2(e,!1),n=tn(e.rules).filter(Ga).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,w0(a,i.definition)))}}function w0(t,e,r=!1){let n;if(el(e))n=eze(t,e);else if(Vu(e))n=XFe(t,e);else if(Gl(e))n=w0(t,e.terminal);else if(r0(e))n=Qle(t,e);else if($l(e))n=jFe(t,e);else if(OT(e))n=QFe(t,e);else if(BT(e))n=ZFe(t,e);else if(hf(e))n=JFe(t,e);else if(kN(e)){let i=t.consume++;n=o(()=>t.parser.consume(i,mo,e),"method")}else throw new t0(e.$cstNode,`Unexpected element type: ${e.$type}`);return Zle(t,r?void 0:$k(e),n,e.cardinality)}function XFe(t,e){let r=l0(e);return()=>t.parser.action(r,e)}function jFe(t,e){let r=e.rule.ref;if(Ga(r)){let n=t.subrule++,i=e.arguments.length>0?KFe(r,e.arguments):()=>({});return a=>t.parser.subrule(n,Jle(t,r),e,i(a))}else if(Jo(r)){let n=t.consume++,i=gM(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)uf(r);else throw new t0(e.$cstNode,`Undefined rule type: ${e.$type}`)}function KFe(t,e){let r=e.map(n=>Ku(n.value));return n=>{let i={};for(let a=0;ae(n)||r(n)}else if(jD(t)){let e=Ku(t.left),r=Ku(t.right);return n=>e(n)&&r(n)}else if(rN(t)){let e=Ku(t.value);return r=>!e(r)}else if(sN(t)){let e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(qD(t)){let e=!!t.true;return()=>e}uf(t)}function QFe(t,e){if(e.elements.length===1)return w0(t,e.elements[0]);{let r=[];for(let i of e.elements){let a={ALT:w0(t,i,!0)},s=$k(i);s&&(a.GATE=Ku(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 ZFe(t,e){if(e.elements.length===1)return w0(t,e.elements[0]);let r=[];for(let l of e.elements){let u={ALT:w0(t,l,!0)},h=$k(l);h&&(u.GATE=Ku(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=Zle(t,$k(e),a,"*");return l=>{s(l),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}function JFe(t,e){let r=e.elements.map(n=>w0(t,n));return n=>r.forEach(i=>i(n))}function $k(t){if(hf(t))return t.guardCondition}function Qle(t,e,r=e.terminal){if(r)if($l(r)&&Ga(r.rule.ref)){let n=t.subrule++;return i=>t.parser.subrule(n,Jle(t,r.rule.ref),e,i)}else if($l(r)&&Jo(r.rule.ref)){let n=t.consume++,i=gM(t,r.rule.ref.name);return()=>t.parser.consume(n,i,e)}else if(el(r)){let n=t.consume++,i=gM(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=HT(e.type.ref),i=n?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+l0(e.type.ref));return Qle(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 Zle(t,e,r,n){let i=e&&Ku(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:Dk(),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:Dk(),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 uf(n)}function Jle(t,e){let r=tze(t,e),n=t.rules.get(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function tze(t,e){if(Ga(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!Ga(n);)(hf(n)||OT(n)||BT(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 gM(t,e){let r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}var yM=M(()=>{"use strict";g0();Bc();_T();$s();Vl();o(Vk,"createParser");o(qFe,"buildRules");o(w0,"buildElement");o(XFe,"buildAction");o(jFe,"buildRuleCall");o(KFe,"buildRuleCallPredicate");o(Ku,"buildPredicate");o(QFe,"buildAlternatives");o(ZFe,"buildUnorderedGroup");o(JFe,"buildGroup");o($k,"getGuardCondition");o(Qle,"buildCrossReference");o(eze,"buildKeyword");o(Zle,"wrap");o(Jle,"getRule");o(tze,"getRuleName");o(gM,"getToken")});function vM(t){let e=t.Grammar,r=t.parser.Lexer,n=new W2(t);return Vk(e,n,r.definition),n.finalize(),n}var xM=M(()=>{"use strict";Y2();yM();o(vM,"createCompletionParser")});function bM(t){let e=ece(t);return e.finalize(),e}function ece(t){let e=t.Grammar,r=t.parser.Lexer,n=new H2(t);return Vk(e,n,r.definition)}var wM=M(()=>{"use strict";Y2();yM();o(bM,"createLangiumParser");o(ece,"prepareLangiumParser")});var T0,TM=M(()=>{"use strict";g0();Bc();os();Vl();ig();$s();T0=class{static{o(this,"DefaultTokenBuilder")}buildTokens(e,r){let n=tn(d2(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&&VT(l)?a.unshift(s):a.push(s)}),a}buildTerminalTokens(e){return e.filter(Jo).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){let r=ag(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n,LINE_BREAKS:!0};return e.hidden&&(i.GROUP=VT(r)?ci.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(Ga).flatMap(i=>Fc(i).filter(el)).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(KN(e.value)):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{let a=i?.PATTERN;return a?.source&&QN("^"+a.source+"$",e.value)&&n.push(i),n},[])}}});var k0,$c,kM=M(()=>{"use strict";Bc();Vl();k0=class{static{o(this,"DefaultValueConverter")}convert(e,r){let n=r.grammarSource;if(r0(n)&&(n=eR(n)),$l(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 $c.convertInt(r);case"STRING":return $c.convertString(r);case"ID":return $c.convertID(r)}switch((i=lR(e))===null||i===void 0?void 0:i.toLowerCase()){case"number":return $c.convertNumber(r);case"boolean":return $c.convertBoolean(r);case"bigint":return $c.convertBigint(r);case"date":return $c.convertDate(r);default:return r}}};(function(t){function e(h){let f="";for(let d=1;d{"use strict";Object.defineProperty(CM,"__esModule",{value:!0});var EM;function SM(){if(EM===void 0)throw new Error("No runtime abstraction layer installed");return EM}o(SM,"RAL");(function(t){function e(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");EM=r}o(e,"install"),t.install=e})(SM||(SM={}));CM.default=SM});var nce=Ei($a=>{"use strict";Object.defineProperty($a,"__esModule",{value:!0});$a.stringArray=$a.array=$a.func=$a.error=$a.number=$a.string=$a.boolean=void 0;function rze(t){return t===!0||t===!1}o(rze,"boolean");$a.boolean=rze;function tce(t){return typeof t=="string"||t instanceof String}o(tce,"string");$a.string=tce;function nze(t){return typeof t=="number"||t instanceof Number}o(nze,"number");$a.number=nze;function ize(t){return t instanceof Error}o(ize,"error");$a.error=ize;function aze(t){return typeof t=="function"}o(aze,"func");$a.func=aze;function rce(t){return Array.isArray(t)}o(rce,"array");$a.array=rce;function sze(t){return rce(t)&&t.every(e=>tce(e))}o(sze,"stringArray");$a.stringArray=sze});var LM=Ei(Mg=>{"use strict";Object.defineProperty(Mg,"__esModule",{value:!0});Mg.Emitter=Mg.Event=void 0;var oze=AM(),ice;(function(t){let e={dispose(){}};t.None=function(){return e}})(ice||(Mg.Event=ice={}));var _M=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 _M),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)}};Mg.Emitter=Uk;Uk._noop=function(){}});var ace=Ei(Ig=>{"use strict";Object.defineProperty(Ig,"__esModule",{value:!0});Ig.CancellationTokenSource=Ig.CancellationToken=void 0;var lze=AM(),cze=nce(),DM=LM(),Hk;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:DM.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:DM.Event.None});function e(r){let n=r;return n&&(n===t.None||n===t.Cancelled||cze.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}o(e,"is"),t.is=e})(Hk||(Ig.CancellationToken=Hk={}));var uze=Object.freeze(function(t,e){let r=(0,lze.default)().timer.setTimeout(t.bind(e),0);return{dispose(){r.dispose()}}}),Wk=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?uze:(this._emitter||(this._emitter=new DM.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},NM=class{static{o(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new Wk),this._token}cancel(){this._token?this._token.cancel():this._token=Hk.Cancelled}dispose(){this._token?this._token instanceof Wk&&this._token.dispose():this._token=Hk.None}};Ig.CancellationTokenSource=NM});var Ar={};var rl=M(()=>{"use strict";Sr(Ar,Ji(ace(),1))});function MM(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}function oce(){return RM=Date.now(),new Ar.CancellationTokenSource}function lce(t){sce=t}function mf(t){return t===Vc}async function Hi(t){if(t===Ar.CancellationToken.None)return;let e=Date.now();if(e-RM>=sce&&(RM=e,await MM()),t.isCancellationRequested)throw Vc}var RM,sce,Vc,fs,nl=M(()=>{"use strict";rl();o(MM,"delayNextTick");RM=0,sce=10;o(oce,"startCancelableOperation");o(lce,"setInterruptionPeriod");Vc=Symbol("OperationCancelled");o(mf,"isOperationCancelled");o(Hi,"interruptAndCheck");fs=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 IM(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);IM(n,e),IM(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 hze(t){let e=hce(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var Yk,Og,fce=M(()=>{"use strict";Yk=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=hce(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=cce(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&&uce(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 Yk(i,a,s,l)}o(e,"create"),t.create=e;function r(i,a,s){if(i instanceof Yk)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=IM(a.map(hze),(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})(Og||(Og={}));o(IM,"mergeSort");o(cce,"computeLineOffsets");o(uce,"isEOL");o(hce,"getWellformedRange");o(hze,"getWellformedEdit")});var dce,Hs,Pg,OM=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,C,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,C||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:C,path:O,query:N,fragment:P}=k;return R===void 0?R=this.scheme:R===null&&(R=h),C===void 0?C=this.authority:C===null&&(C=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&&C===this.authority&&O===this.path&&N===this.query&&P===this.fragment?this:new g(R,C,O,N,P)}static parse(k,R=!1){let C=d.exec(k);return C?new g(C[2]||h,E(C[4]||h),E(C[5]||h),E(C[7]||h),E(C[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 C=k.indexOf(f,2);C===-1?(R=k.substring(2),k=f):(R=k.substring(2,C),k=k.substring(C)||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 C,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&&(C+=encodeURIComponent(D.substring(O,N)),O=-1),C!==void 0&&(C+=D.charAt(N));else{C===void 0&&(C=D.substr(0,N));let F=y[P];F!==void 0?(O!==-1&&(C+=encodeURIComponent(D.substring(O,N)),O=-1),C+=F):O===-1&&(O=N)}}return O!==-1&&(C+=encodeURIComponent(D.substring(O))),C!==void 0?C: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,C="",{scheme:O,authority:N,path:P,query:F,fragment:B}=D;if(O&&(C+=O,C+=":"),(N||O==="file")&&(C+=f,C+=f),N){let G=N.indexOf("@");if(G!==-1){let z=N.substr(0,G);N=N.substr(G+1),G=z.lastIndexOf(":"),G===-1?C+=R(z,!1,!1):(C+=R(z.substr(0,G),!1,!1),C+=":",C+=R(z.substr(G+1),!1,!0)),C+="@"}N=N.toLowerCase(),G=N.lastIndexOf(":"),G===-1?C+=R(N,!1,!0):(C+=R(N.substr(0,G),!1,!0),C+=N.substr(G))}if(P){if(P.length>=3&&P.charCodeAt(0)===47&&P.charCodeAt(2)===58){let G=P.charCodeAt(1);G>=65&&G<=90&&(P=`/${String.fromCharCode(G+32)}:${P.substr(3)}`)}else if(P.length>=2&&P.charCodeAt(1)===58){let G=P.charCodeAt(0);G>=65&&G<=90&&(P=`${String.fromCharCode(G+32)}:${P.substr(2)}`)}C+=R(P,!0,!1)}return F&&(C+="?",C+=R(F,!1,!1)),B&&(C+="#",C+=k?B:v(B,!1,!1)),C}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 S=L.posix||L,A="/";var I;(function(D){D.joinPath=function(k,...R){return k.with({path:S.join(k.path,...R)})},D.resolvePath=function(k,...R){let C=k.path,O=!1;C[0]!==A&&(C=A+C,O=!0);let N=S.resolve(C,...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=S.dirname(k.path);return R.length===1&&R.charCodeAt(0)===46&&(R=""),k.with({path:R})},D.basename=function(k){return S.basename(k.path)},D.extname=function(k){return S.extname(k.path)}})(I||(I={}))})(),dce=n})();({URI:Hs,Utils:Pg}=dce)});var ds,Uc=M(()=>{"use strict";OM();(function(t){t.basename=Pg.basename,t.dirname=Pg.dirname,t.extname=Pg.extname,t.joinPath=Pg.joinPath,t.resolvePath=Pg.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";fce();Bg();rl();$s();Uc();(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"})(Tn||(Tn={}));q2=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=Ar.CancellationToken.None){let n=await this.fileSystemProvider.readFile(e);return this.createAsync(e,n,r)}fromTextDocument(e,r,n){return r=r??Hs.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:Tn.Parsed,references:[],textDocument:n};else{let s=this.createTextDocumentGetter(r,i);a={parseResult:e,uri:r,state:Tn.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=Tn.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=Og.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},X2=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=Tn.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=Tn.Changed,this.documentMap.delete(r)),n}}});var j2,PM=M(()=>{"use strict";rl();Zo();os();nl();Bg();j2=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=Ar.CancellationToken.None){for(let n of tl(e.parseResult.value))await Hi(r),rg(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(Zd(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(ri(this._ref))return this._ref;if(OD(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&&Vi(e).state{"use strict";Vl();o(pce,"isNamed");K2=class{static{o(this,"DefaultNameProvider")}getName(e){if(pce(e))return e.name}getNameNode(e){return p2(e.$cstNode,"name")}}});var Q2,FM=M(()=>{"use strict";Vl();Zo();os();zl();$s();Uc();Q2=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=sR(e),n=e.astNode;if(r&&n){let i=n[r.feature];if(Ta(i))return i.ref;if(Array.isArray(i)){for(let a of i)if(Ta(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||BD(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=>ds.equals(a.sourceUri,r.documentUri))),n.push(...i),tn(n)}getReferenceToSelf(e){let r=this.nameProvider.getNameNode(e);if(r){let n=Vi(e),i=this.nodeLocator.getAstNodePath(e);return{sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:e0(r),local:!0}}}}});var Hc,E0,Fg=M(()=>{"use strict";$s();Hc=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 Jm.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())}},E0=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 Z2,zM=M(()=>{"use strict";rl();os();Fg();nl();Z2=class{static{o(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,r=Ar.CancellationToken.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,r)}async computeExportsForNode(e,r,n=l2,i=Ar.CancellationToken.None){let a=[];this.exportNode(e,a,r);for(let s of n(e))await Hi(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=Ar.CancellationToken.None){let n=e.parseResult.value,i=new Hc;for(let a of Fc(n))await Hi(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 zg,J2,fze,GM=M(()=>{"use strict";$s();zg=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)}},J2=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}},fze={getElement(){},getAllElements(){return r2}}});var Gg,ex,S0,qk,$g,Xk=M(()=>{"use strict";Gg=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")}},ex=class extends Gg{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()}},S0=class extends Gg{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}},qk=class extends S0{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 ex{static{o(this,"WorkspaceCache")}constructor(e){super(),this.onDispose(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}});var tx,$M=M(()=>{"use strict";GM();os();$s();Xk();tx=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=Vi(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 zg(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 zg(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new J2(this.indexManager.allElements(e)))}}});function VM(t){return typeof t.$comment=="string"}function mce(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}var rx,jk=M(()=>{"use strict";OM();Zo();os();Vl();o(VM,"isAstNodeWithComment");o(mce,"isIntermediateReference");rx=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=Vi(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(Ta(r)){let p=r.ref,m=n?r.$refText:void 0;if(p){let g=Vi(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(ri(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=rR(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";Uc();nx=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=ds.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 Kk(t){return{code:t}}var Vg,ix,ax=M(()=>{"use strict";Fg();nl();$s();o(Kk,"diagnosticData");(function(t){t.all=["fast","slow","built-in"]})(Vg||(Vg={}));ix=class{static{o(this,"ValidationRegistry")}constructor(e){this.entries=new Hc,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(mf(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 gce(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=p2(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=iR(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 Qk(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 sx,Qu,HM=M(()=>{"use strict";rl();Vl();os();zl();nl();ax();sx=class{static{o(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,r={},n=Ar.CancellationToken.None){let i=e.parseResult,a=[];if(await Hi(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)===Qu.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)===Qu.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)===Qu.LinkingError}))))return a;try{a.push(...await this.validateAst(i.value,r,n))}catch(s){if(mf(s))throw s;console.error("An error occurred during validation:",s)}return await Hi(n),a}processLexingErrors(e,r,n){for(let i of e.lexerErrors){let a={severity:Qk("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:Kk(Qu.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=eg(i.token);if(a){let s={severity:Qk("error"),range:a,message:i.message,data:Kk(Qu.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:Qu.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=Ar.CancellationToken.None){let i=[],a=o((s,l,u)=>{i.push(this.toDiagnostic(s,l,u))},"acceptor");return await Promise.all(tl(e).map(async s=>{await Hi(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:gce(n),severity:Qk(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(gce,"getDiagnosticRange");o(Qk,"toDiagnosticSeverity");(function(t){t.LexingError="lexing-error",t.ParsingError="parsing-error",t.LinkingError="linking-error"})(Qu||(Qu={}))});var ox,lx,WM=M(()=>{"use strict";rl();Zo();os();zl();nl();Uc();ox=class{static{o(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n=Vi(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=e0((l=this.nameProvider.getNameNode(e))!==null&&l!==void 0?l:e.$cstNode))},"nameSegmentGetter");return{node:e,name:r,get nameSegment(){return s()},selectionSegment:e0(e.$cstNode),type:e.$type,documentUri:n.uri,path:i}}},lx=class{static{o(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,r=Ar.CancellationToken.None){let n=[],i=e.parseResult.value;for(let a of tl(i))await Hi(r),rg(a).filter(s=>!Zd(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=Vi(e.container).uri;return{sourceUri:i,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:r.documentUri,targetPath:r.path,segment:e0(n),local:ds.equals(r.documentUri,i)}}}});var cx,YM=M(()=>{"use strict";cx=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 ux,qM=M(()=>{"use strict";nl();ux=class{static{o(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new fs,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 C0,XM=M(()=>{"use strict";(function(t){function e(r){return{dispose:o(async()=>await r(),"dispose")}}o(e,"create"),t.create=e})(C0||(C0={}))});var hx,jM=M(()=>{"use strict";rl();XM();Fg();nl();$s();ax();Bg();hx=class{static{o(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Hc,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Tn.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=Ar.CancellationToken.None){var i,a;for(let s of e){let l=s.uri.toString();if(s.state===Tn.Validated){if(typeof r.validation=="boolean"&&r.validation)s.state=Tn.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:Vg.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=Tn.IndexedReferences)}}}else this.buildState.delete(l)}this.currentState=Tn.Changed,await this.emitUpdate(e.map(s=>s.uri),[]),await this.buildDocuments(e,r,n)}async update(e,r,n=Ar.CancellationToken.None){this.currentState=Tn.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=Tn.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,Tn.ComputedScopes),s.diagnostics=void 0}),await this.emitUpdate(e,r),await Hi(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),C0.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,Tn.Parsed,n,a=>this.langiumDocumentFactory.update(a,n)),await this.runCancelable(e,Tn.IndexedContent,n,a=>this.indexManager.updateContent(a,n)),await this.runCancelable(e,Tn.ComputedScopes,n,async a=>{let s=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.precomputedScopes=await s.computeLocalScopes(a,n)}),await this.runCancelable(e,Tn.Linked,n,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,n)),await this.runCancelable(e,Tn.IndexedReferences,n,a=>this.indexManager.updateReferences(a,n));let i=e.filter(a=>this.shouldValidate(a));await this.runCancelable(i,Tn.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=Ar.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(Vc):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(Vc)})})}async notifyBuildPhase(e,r,n){if(e.length===0)return;let i=this.buildPhaseListeners.get(r);for(let a of i)await Hi(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:Vg.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 fx,KM=M(()=>{"use strict";os();Xk();rl();$s();Uc();fx=class{static{o(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new S0,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){let n=Vi(e).uri,i=[];return this.referenceIndex.forEach(a=>{a.forEach(s=>{ds.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=Ar.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=Ar.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 dx,QM=M(()=>{"use strict";rl();nl();Uc();dx=class{static{o(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new fs,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=Ar.CancellationToken.None){let n=await this.performStartup(e);await Hi(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 Hs.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=ds.basename(r.uri);if(i.startsWith("."))return!1;if(r.isDirectory)return i!=="node_modules"&&i!=="out";if(r.isFile){let a=ds.extname(r.uri);return n.includes(a)}return!1}}});function yce(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function JM(t){return t&&"modes"in t&&"defaultMode"in t}function ZM(t){return!yce(t)&&!JM(t)}var px,eI=M(()=>{"use strict";g0();px=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=ZM(r)?Object.values(r):r;this.chevrotainLexer=new ci(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(ZM(e))return e;let r=JM(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}};o(yce,"isTokenTypeArray");o(JM,"isIMultiModeLexerDefinition");o(ZM,"isTokenTypeDictionary")});function nI(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=bce(t),s=aI(n),l=pze({lines:a,position:i,options:s});return xze({index:0,tokens:l,position:i})}function iI(t,e){let r=aI(e),n=bce(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 bce(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(XN)}function pze(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:Nr.create(m,m)})}}else{vce.lastIndex=d;let m=vce.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:Nr.create(v,x)}),d+=g.length,d=rI(f,d)}if(d0&&i[i.length-1].type==="break"?i.slice(0,-1):i}function mze(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:Nr.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:Nr.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:Nr.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:Nr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+p.length+n))})}else i.push({type:"text",content:"",range:Nr.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:Nr.create(Xr.create(r,a+n),Xr.create(r,a+n+s.length))})}return i}function rI(t,e){let r=t.substring(e).match(gze);return r?e+r.index:t.length}function vze(t){let e=t.match(yze);if(e&&typeof e.index=="number")return e.index}function xze(t){var e,r,n,i;let a=Xr.create(t.position.line,t.position.character);if(t.tokens.length===0)return new Zk([],Nr.create(a,a));let s=[];for(;t.index0){let u=rI(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:Eze(e,s)}}function Eze(t,e){try{return Hs.parse(t,!0),`[${e}](${t})`}catch{return t}}function xce(t){return t.endsWith(` +`)?` +`:` + +`}var vce,dze,gze,yze,Zk,mx,gx,Jk,sI=M(()=>{"use strict";fM();ig();Uc();o(nI,"parseJSDoc");o(iI,"isJSDoc");o(bce,"getLines");vce=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,dze=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;o(pze,"tokenize");o(mze,"buildInlineTokens");gze=/\S/,yze=/\s*$/;o(rI,"skipWhitespace");o(vze,"lastCharacter");o(xze,"parseJSDocComment");o(bze,"parseJSDocElement");o(wze,"appendEmptyLine");o(wce,"parseJSDocText");o(Tze,"parseJSDocInline");o(Tce,"parseJSDocTag");o(kce,"parseJSDocLine");o(aI,"normalizeOptions");o(tI,"normalizeOption");Zk=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+=xce(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+=xce(r)+i}return r.trim()}},mx=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=kze(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(kze,"renderInlineTag");o(Eze,"renderLinkDefault");gx=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}},Jk=class{static{o(this,"JSDocLineImpl")}constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};o(xce,"fillNewlines")});var yx,oI=M(()=>{"use strict";os();sI();yx=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&&iI(r))return nI(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=Vi(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 vx,lI=M(()=>{"use strict";jk();zl();vx=class{static{o(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var r;return VM(e)?e.$comment:(r=zD(e.$cstNode,this.grammarConfig().multilineCommentRules))===null||r===void 0?void 0:r.text}}});var ui={};var cI=M(()=>{"use strict";Sr(ui,Ji(LM(),1))});var xx,uI,hI,fI=M(()=>{"use strict";nl();cI();xx=class{static{o(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e){return Promise.resolve(this.syncParser.parse(e))}},uI=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 fs,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 fs;return e.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(Vc)}),this.queue.push(r),r.promise}},hI=class{static{o(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,i){this.onReadyEmitter=new ui.Emitter,this.deferred=new fs,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(Vc),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 fs,this.sendMessage(e),this.deferred.promise}}});var bx,dI=M(()=>{"use strict";rl();nl();bx=class{static{o(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new Ar.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let r=new Ar.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 fs,a={action:r,deferred:i,cancellationToken:n??Ar.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){mf(a)?n.resolve(void 0):n.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}});var wx,pI=M(()=>{"use strict";Fk();Bc();Zo();os();Fg();zl();wx=class{static{o(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new E0,this.tokenTypeIdMap=new E0,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 tl(e))r.set(i,{});if(e.$cstNode)for(let i of Jd(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)ri(l)?s.push(this.dehydrateAstNode(l,r)):Ta(l)?s.push(this.dehydrateReference(l,r)):s.push(l)}else ri(a)?n[i]=this.dehydrateAstNode(a,r):Ta(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 t2(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),ho(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):cf(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 tl(e))r.set(a,{});let i;if(e.$cstNode)for(let a of Jd(e.$cstNode)){let s;"fullText"in a?(s=new Ng(a.fullText),i=s):"content"in a?s=new b0:"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)ri(l)?s.push(this.setParent(this.hydrateAstNode(l,r),n)):Ta(l)?s.push(this.hydrateReference(l,n,i,r)):s.push(l)}else ri(a)?n[i]=this.setParent(this.hydrateAstNode(a,r),n):Ta(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),ho(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 x0(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 tl(this.grammar))a2(r)&&this.grammarElementIdMap.set(r,e++)}}});function go(t){return{documentation:{CommentProvider:o(e=>new vx(e),"CommentProvider"),DocumentationProvider:o(e=>new yx(e),"DocumentationProvider")},parser:{AsyncParser:o(e=>new xx(e),"AsyncParser"),GrammarConfig:o(e=>uR(e),"GrammarConfig"),LangiumParser:o(e=>bM(e),"LangiumParser"),CompletionParser:o(e=>vM(e),"CompletionParser"),ValueConverter:o(()=>new k0,"ValueConverter"),TokenBuilder:o(()=>new T0,"TokenBuilder"),Lexer:o(e=>new px(e),"Lexer"),ParserErrorMessageProvider:o(()=>new Rg,"ParserErrorMessageProvider")},workspace:{AstNodeLocator:o(()=>new cx,"AstNodeLocator"),AstNodeDescriptionProvider:o(e=>new ox(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:o(e=>new lx(e),"ReferenceDescriptionProvider")},references:{Linker:o(e=>new j2(e),"Linker"),NameProvider:o(()=>new K2,"NameProvider"),ScopeProvider:o(e=>new tx(e),"ScopeProvider"),ScopeComputation:o(e=>new Z2(e),"ScopeComputation"),References:o(e=>new Q2(e),"References")},serializer:{Hydrator:o(e=>new wx(e),"Hydrator"),JsonSerializer:o(e=>new rx(e),"JsonSerializer")},validation:{DocumentValidator:o(e=>new sx(e),"DocumentValidator"),ValidationRegistry:o(e=>new ix(e),"ValidationRegistry")},shared:o(()=>t.shared,"shared")}}function yo(t){return{ServiceRegistry:o(()=>new nx,"ServiceRegistry"),workspace:{LangiumDocuments:o(e=>new X2(e),"LangiumDocuments"),LangiumDocumentFactory:o(e=>new q2(e),"LangiumDocumentFactory"),DocumentBuilder:o(e=>new hx(e),"DocumentBuilder"),IndexManager:o(e=>new fx(e),"IndexManager"),WorkspaceManager:o(e=>new dx(e),"WorkspaceManager"),FileSystemProvider:o(e=>t.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:o(()=>new bx,"WorkspaceLock"),ConfigurationProvider:o(e=>new ux(e),"ConfigurationProvider")}}}var mI=M(()=>{"use strict";hR();xM();wM();TM();kM();PM();BM();FM();zM();$M();jk();UM();HM();ax();WM();YM();qM();jM();Bg();KM();QM();eI();oI();lI();Y2();fI();dI();pI();o(go,"createDefaultCoreModule");o(yo,"createDefaultSharedCoreModule")});function Wi(t,e,r,n,i,a,s,l,u){let h=[t,e,r,n,i,a,s,l,u].reduce(eE,{});return Ace(h)}function Cce(t){if(t&&t[yI])for(let e of Object.values(t))Cce(e);return t}function Ace(t,e){let r=new Proxy({},{deleteProperty:o(()=>!1,"deleteProperty"),get:o((n,i)=>Sce(n,i,t,e||r),"get"),getOwnPropertyDescriptor:o((n,i)=>(Sce(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:o((n,i)=>i in t,"has"),ownKeys:o(()=>[...Reflect.ownKeys(t),yI],"ownKeys")});return r[yI]=!0,r}function Sce(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]===Ece)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]=Ece;try{t[e]=typeof i=="function"?i(n):Ace(i,n)}catch(a){throw t[e]=a instanceof Error?a:void 0,a}return t[e]}else return}function eE(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]=eE(i,n):t[r]=n}}return t}var gI,yI,Ece,vI=M(()=>{"use strict";(function(t){t.merge=(e,r)=>eE(eE({},e),r)})(gI||(gI={}));o(Wi,"inject");yI=Symbol("isProxy");o(Cce,"eagerLoad");o(Ace,"_inject");Ece=Symbol();o(Sce,"_resolve");o(eE,"_merge")});var _ce=M(()=>{"use strict"});var Lce=M(()=>{"use strict";lI();oI();sI()});var Dce=M(()=>{"use strict"});var Nce=M(()=>{"use strict";hR();Dce()});var Rce=M(()=>{"use strict"});var Mce=M(()=>{"use strict";fI();xM();Fk();wM();Y2();eI();Rce();TM();kM()});var Ice=M(()=>{"use strict";PM();BM();FM();GM();zM();$M()});var Oce=M(()=>{"use strict";pI();jk()});var tE,vo,xI=M(()=>{"use strict";tE=class{static{o(this,"EmptyFileSystemProvider")}readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}},vo={fileSystemProvider:o(()=>new tE,"fileSystemProvider")}});function Aze(){let t=Wi(yo(vo),Cze),e=Wi(go({shared:t}),Sze);return t.ServiceRegistry.register(e),e}function gf(t){var e;let r=Aze(),n=r.serializer.JsonSerializer.deserialize(t);return r.shared.workspace.LangiumDocumentFactory.fromModel(n,Hs.parse(`memory://${(e=n.name)!==null&&e!==void 0?e:"grammar"}.langium`)),n}var Sze,Cze,Pce=M(()=>{"use strict";mI();vI();Bc();xI();Uc();Sze={Grammar:o(()=>{},"Grammar"),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},Cze={AstReflection:o(()=>new tg,"AstReflection")};o(Aze,"createMinimalGrammarServices");o(gf,"loadGrammarFromJson")});var $r={};vr($r,{AstUtils:()=>zT,BiMap:()=>E0,Cancellation:()=>Ar,ContextCache:()=>S0,CstUtils:()=>AT,DONE_RESULT:()=>ss,Deferred:()=>fs,Disposable:()=>C0,DisposableCache:()=>Gg,DocumentCache:()=>qk,EMPTY_STREAM:()=>r2,ErrorWithLocation:()=>t0,GrammarUtils:()=>WT,MultiMap:()=>Hc,OperationCancelled:()=>Vc,Reduction:()=>Jm,RegExpUtils:()=>UT,SimpleCache:()=>ex,StreamImpl:()=>fo,TreeStreamImpl:()=>Pc,URI:()=>Hs,UriUtils:()=>ds,WorkspaceCache:()=>$g,assertUnreachable:()=>uf,delayNextTick:()=>MM,interruptAndCheck:()=>Hi,isOperationCancelled:()=>mf,loadGrammarFromJson:()=>gf,setInterruptionPeriod:()=>lce,startCancelableOperation:()=>oce,stream:()=>tn});var Bce=M(()=>{"use strict";Xk();cI();Sr($r,ui);Fg();XM();_T();Pce();nl();$s();Uc();os();rl();zl();Vl();ig()});var Fce=M(()=>{"use strict";HM();ax()});var zce=M(()=>{"use strict";WM();YM();qM();jM();Bg();xI();KM();dI();QM()});var ka={};vr(ka,{AbstractAstReflection:()=>Qd,AbstractCstNode:()=>V2,AbstractLangiumParser:()=>U2,AbstractParserErrorMessageProvider:()=>Gk,AbstractThreadedAsyncParser:()=>uI,AstUtils:()=>zT,BiMap:()=>E0,Cancellation:()=>Ar,CompositeCstNodeImpl:()=>b0,ContextCache:()=>S0,CstNodeBuilder:()=>$2,CstUtils:()=>AT,DONE_RESULT:()=>ss,DatatypeSymbol:()=>zk,DefaultAstNodeDescriptionProvider:()=>ox,DefaultAstNodeLocator:()=>cx,DefaultAsyncParser:()=>xx,DefaultCommentProvider:()=>vx,DefaultConfigurationProvider:()=>ux,DefaultDocumentBuilder:()=>hx,DefaultDocumentValidator:()=>sx,DefaultHydrator:()=>wx,DefaultIndexManager:()=>fx,DefaultJsonSerializer:()=>rx,DefaultLangiumDocumentFactory:()=>q2,DefaultLangiumDocuments:()=>X2,DefaultLexer:()=>px,DefaultLinker:()=>j2,DefaultNameProvider:()=>K2,DefaultReferenceDescriptionProvider:()=>lx,DefaultReferences:()=>Q2,DefaultScopeComputation:()=>Z2,DefaultScopeProvider:()=>tx,DefaultServiceRegistry:()=>nx,DefaultTokenBuilder:()=>T0,DefaultValueConverter:()=>k0,DefaultWorkspaceLock:()=>bx,DefaultWorkspaceManager:()=>dx,Deferred:()=>fs,Disposable:()=>C0,DisposableCache:()=>Gg,DocumentCache:()=>qk,DocumentState:()=>Tn,DocumentValidator:()=>Qu,EMPTY_SCOPE:()=>fze,EMPTY_STREAM:()=>r2,EmptyFileSystem:()=>vo,EmptyFileSystemProvider:()=>tE,ErrorWithLocation:()=>t0,GrammarAST:()=>o2,GrammarUtils:()=>WT,JSDocDocumentationProvider:()=>yx,LangiumCompletionParser:()=>W2,LangiumParser:()=>H2,LangiumParserErrorMessageProvider:()=>Rg,LeafCstNodeImpl:()=>x0,MapScope:()=>J2,Module:()=>gI,MultiMap:()=>Hc,OperationCancelled:()=>Vc,ParserWorker:()=>hI,Reduction:()=>Jm,RegExpUtils:()=>UT,RootCstNodeImpl:()=>Ng,SimpleCache:()=>ex,StreamImpl:()=>fo,StreamScope:()=>zg,TextDocument:()=>Og,TreeStreamImpl:()=>Pc,URI:()=>Hs,UriUtils:()=>ds,ValidationCategory:()=>Vg,ValidationRegistry:()=>ix,ValueConverter:()=>$c,WorkspaceCache:()=>$g,assertUnreachable:()=>uf,createCompletionParser:()=>vM,createDefaultCoreModule:()=>go,createDefaultSharedCoreModule:()=>yo,createGrammarConfig:()=>uR,createLangiumParser:()=>bM,delayNextTick:()=>MM,diagnosticData:()=>Kk,eagerLoad:()=>Cce,getDiagnosticRange:()=>gce,inject:()=>Wi,interruptAndCheck:()=>Hi,isAstNode:()=>ri,isAstNodeDescription:()=>OD,isAstNodeWithComment:()=>VM,isCompositeCstNode:()=>ho,isIMultiModeLexerDefinition:()=>JM,isJSDoc:()=>iI,isLeafCstNode:()=>cf,isLinkingError:()=>Zd,isNamed:()=>pce,isOperationCancelled:()=>mf,isReference:()=>Ta,isRootCstNode:()=>t2,isTokenTypeArray:()=>yce,isTokenTypeDictionary:()=>ZM,loadGrammarFromJson:()=>gf,parseJSDoc:()=>nI,prepareLangiumParser:()=>ece,setInterruptionPeriod:()=>lce,startCancelableOperation:()=>oce,stream:()=>tn,toDiagnosticSeverity:()=>Qk});var Wc=M(()=>{"use strict";mI();vI();UM();_ce();Zo();Lce();Nce();Mce();Ice();Oce();Bce();Sr(ka,$r);Fce();zce();Bc()});function qce(t){return Hl.isInstance(t,Yce)}function Xce(t){return Hl.isInstance(t,bI)}function jce(t){return Hl.isInstance(t,wI)}function Kce(t){return Hl.isInstance(t,Nze)}function Qce(t){return Hl.isInstance(t,TI)}function Jce(t){return Hl.isInstance(t,Zce)}function eue(t){return Hl.isInstance(t,kI)}function rue(t){return Hl.isInstance(t,tue)}function iue(t){return Hl.isInstance(t,nue)}function sue(t){return Hl.isInstance(t,aue)}function lue(t){return Hl.isInstance(t,oue)}var _ze,Rt,Wce,Yce,bI,Lze,Dze,wI,Nze,TI,Zce,kI,tue,nue,aue,oue,Rze,cue,Hl,Gce,Mze,$ce,Ize,Vce,Oze,Uce,Pze,Hce,Bze,Fze,zze,Gze,$ze,Vze,Wl,EI,SI,CI,AI,_I,Uze,Hze,Wze,Yze,Ug,A0,il,qze,al=M(()=>{"use strict";Wc();Wc();Wc();Wc();_ze=Object.defineProperty,Rt=o((t,e)=>_ze(t,"name",{value:e,configurable:!0}),"__name"),Wce="Statement",Yce="Architecture";o(qce,"isArchitecture");Rt(qce,"isArchitecture");bI="Branch";o(Xce,"isBranch");Rt(Xce,"isBranch");Lze="Checkout",Dze="CherryPicking",wI="Commit";o(jce,"isCommit");Rt(jce,"isCommit");Nze="Common";o(Kce,"isCommon");Rt(Kce,"isCommon");TI="GitGraph";o(Qce,"isGitGraph");Rt(Qce,"isGitGraph");Zce="Info";o(Jce,"isInfo");Rt(Jce,"isInfo");kI="Merge";o(eue,"isMerge");Rt(eue,"isMerge");tue="Packet";o(rue,"isPacket");Rt(rue,"isPacket");nue="PacketBlock";o(iue,"isPacketBlock");Rt(iue,"isPacketBlock");aue="Pie";o(sue,"isPie");Rt(sue,"isPie");oue="PieSection";o(lue,"isPieSection");Rt(lue,"isPieSection");Rze="Direction",cue=class extends Qd{static{o(this,"MermaidAstReflection")}static{Rt(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 bI:case Lze:case Dze:case wI:case kI:return this.isSubtype(Wce,e);case Rze:return this.isSubtype(TI,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:[]}}}},Hl=new cue,Mze=Rt(()=>Gce??(Gce=gf('{"$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"),Ize=Rt(()=>$ce??($ce=gf(`{"$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"),Oze=Rt(()=>Vce??(Vce=gf('{"$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"),Pze=Rt(()=>Uce??(Uce=gf('{"$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"),Bze=Rt(()=>Hce??(Hce=gf(`{"$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"),Fze={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},zze={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},Gze={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},$ze={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},Vze={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},Wl={AstReflection:Rt(()=>new cue,"AstReflection")},EI={Grammar:Rt(()=>Mze(),"Grammar"),LanguageMetaData:Rt(()=>Fze,"LanguageMetaData"),parser:{}},SI={Grammar:Rt(()=>Ize(),"Grammar"),LanguageMetaData:Rt(()=>zze,"LanguageMetaData"),parser:{}},CI={Grammar:Rt(()=>Oze(),"Grammar"),LanguageMetaData:Rt(()=>Gze,"LanguageMetaData"),parser:{}},AI={Grammar:Rt(()=>Pze(),"Grammar"),LanguageMetaData:Rt(()=>$ze,"LanguageMetaData"),parser:{}},_I={Grammar:Rt(()=>Bze(),"Grammar"),LanguageMetaData:Rt(()=>Vze,"LanguageMetaData"),parser:{}},Uze=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,Hze=/accTitle[\t ]*:([^\n\r]*)/,Wze=/title([\t ][^\n\r]*|)/,Yze={ACC_DESCR:Uze,ACC_TITLE:Hze,TITLE:Wze},Ug=class extends k0{static{o(this,"AbstractMermaidValueConverter")}static{Rt(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=Yze[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,` +`)}}},A0=class extends Ug{static{o(this,"CommonValueConverter")}static{Rt(this,"CommonValueConverter")}runCustomConverter(t,e,r){}},il=class extends T0{static{o(this,"AbstractMermaidTokenBuilder")}static{Rt(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}},qze=class extends il{static{o(this,"CommonTokenBuilder")}static{Rt(this,"CommonTokenBuilder")}}});function nE(t=vo){let e=Wi(yo(t),Wl),r=Wi(go({shared:e}),_I,rE);return e.ServiceRegistry.register(r),{shared:e,GitGraph:r}}var Xze,rE,LI=M(()=>{"use strict";al();Wc();Xze=class extends il{static{o(this,"GitGraphTokenBuilder")}static{Rt(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},rE={parser:{TokenBuilder:Rt(()=>new Xze,"TokenBuilder"),ValueConverter:Rt(()=>new A0,"ValueConverter")}};o(nE,"createGitGraphServices");Rt(nE,"createGitGraphServices")});function aE(t=vo){let e=Wi(yo(t),Wl),r=Wi(go({shared:e}),EI,iE);return e.ServiceRegistry.register(r),{shared:e,Info:r}}var jze,iE,DI=M(()=>{"use strict";al();Wc();jze=class extends il{static{o(this,"InfoTokenBuilder")}static{Rt(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},iE={parser:{TokenBuilder:Rt(()=>new jze,"TokenBuilder"),ValueConverter:Rt(()=>new A0,"ValueConverter")}};o(aE,"createInfoServices");Rt(aE,"createInfoServices")});function oE(t=vo){let e=Wi(yo(t),Wl),r=Wi(go({shared:e}),SI,sE);return e.ServiceRegistry.register(r),{shared:e,Packet:r}}var Kze,sE,NI=M(()=>{"use strict";al();Wc();Kze=class extends il{static{o(this,"PacketTokenBuilder")}static{Rt(this,"PacketTokenBuilder")}constructor(){super(["packet-beta"])}},sE={parser:{TokenBuilder:Rt(()=>new Kze,"TokenBuilder"),ValueConverter:Rt(()=>new A0,"ValueConverter")}};o(oE,"createPacketServices");Rt(oE,"createPacketServices")});function cE(t=vo){let e=Wi(yo(t),Wl),r=Wi(go({shared:e}),CI,lE);return e.ServiceRegistry.register(r),{shared:e,Pie:r}}var Qze,Zze,lE,RI=M(()=>{"use strict";al();Wc();Qze=class extends il{static{o(this,"PieTokenBuilder")}static{Rt(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},Zze=class extends Ug{static{o(this,"PieValueConverter")}static{Rt(this,"PieValueConverter")}runCustomConverter(t,e,r){if(t.name==="PIE_SECTION_LABEL")return e.replace(/"/g,"").trim()}},lE={parser:{TokenBuilder:Rt(()=>new Qze,"TokenBuilder"),ValueConverter:Rt(()=>new Zze,"ValueConverter")}};o(cE,"createPieServices");Rt(cE,"createPieServices")});function hE(t=vo){let e=Wi(yo(t),Wl),r=Wi(go({shared:e}),AI,uE);return e.ServiceRegistry.register(r),{shared:e,Architecture:r}}var Jze,eGe,uE,MI=M(()=>{"use strict";al();Wc();Jze=class extends il{static{o(this,"ArchitectureTokenBuilder")}static{Rt(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},eGe=class extends Ug{static{o(this,"ArchitectureValueConverter")}static{Rt(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()}},uE={parser:{TokenBuilder:Rt(()=>new Jze,"TokenBuilder"),ValueConverter:Rt(()=>new eGe,"ValueConverter")}};o(hE,"createArchitectureServices");Rt(hE,"createArchitectureServices")});var uue={};vr(uue,{InfoModule:()=>iE,createInfoServices:()=>aE});var hue=M(()=>{"use strict";DI();al()});var fue={};vr(fue,{PacketModule:()=>sE,createPacketServices:()=>oE});var due=M(()=>{"use strict";NI();al()});var pue={};vr(pue,{PieModule:()=>lE,createPieServices:()=>cE});var mue=M(()=>{"use strict";RI();al()});var gue={};vr(gue,{ArchitectureModule:()=>uE,createArchitectureServices:()=>hE});var yue=M(()=>{"use strict";MI();al()});var vue={};vr(vue,{GitGraphModule:()=>rE,createGitGraphServices:()=>nE});var xue=M(()=>{"use strict";LI();al()});async function Yl(t,e){let r=tGe[t];if(!r)throw new Error(`Unknown diagram type: ${t}`);_0[t]||await r();let i=_0[t].parse(e);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new rGe(i);return i.value}var _0,tGe,rGe,Hg=M(()=>{"use strict";LI();DI();NI();RI();MI();al();_0={},tGe={info:Rt(async()=>{let{createInfoServices:t}=await Promise.resolve().then(()=>(hue(),uue)),e=t().Info.parser.LangiumParser;_0.info=e},"info"),packet:Rt(async()=>{let{createPacketServices:t}=await Promise.resolve().then(()=>(due(),fue)),e=t().Packet.parser.LangiumParser;_0.packet=e},"packet"),pie:Rt(async()=>{let{createPieServices:t}=await Promise.resolve().then(()=>(mue(),pue)),e=t().Pie.parser.LangiumParser;_0.pie=e},"pie"),architecture:Rt(async()=>{let{createArchitectureServices:t}=await Promise.resolve().then(()=>(yue(),gue)),e=t().Architecture.parser.LangiumParser;_0.architecture=e},"architecture"),gitGraph:Rt(async()=>{let{createGitGraphServices:t}=await Promise.resolve().then(()=>(xue(),vue)),e=t().GitGraph.parser.LangiumParser;_0.gitGraph=e},"gitGraph")};o(Yl,"parse");Rt(Yl,"parse");rGe=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{Rt(this,"MermaidParseError")}}});function yf(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}var Tx=M(()=>{"use strict";o(yf,"populateCommonDb")});var jr,fE=M(()=>{"use strict";jr={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4}});var vf,dE=M(()=>{"use strict";vf=class{constructor(e){this.init=e;this.records=this.init()}static{o(this,"ImperativeState")}reset(){this.records=this.init()}}});function II(){return n9({length:7})}function iGe(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 bue(t,e,r){let n=t.indexOf(e);n===-1?t.push(r):t.splice(n,1,r)}function Tue(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 Tt.records.branches)Tt.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=Tt.records.commits.get(e.parents[0]);bue(t,e,i),e.parents[1]&&t.push(Tt.records.commits.get(e.parents[1]))}else{if(e.parents.length==0)return;if(e.parents[0]){let i=Tt.records.commits.get(e.parents[0]);bue(t,e,i)}}t=iGe(t,i=>i.id),Tue(t)}var nGe,L0,Tt,aGe,sGe,oGe,lGe,cGe,uGe,hGe,wue,fGe,dGe,pGe,mGe,gGe,kue,yGe,vGe,xGe,pE,OI=M(()=>{"use strict";ut();hr();Za();fr();Ai();fE();dE();bs();nGe=ur.gitGraph,L0=o(()=>Ds({...nGe,...Cr().gitGraph}),"getConfig"),Tt=new vf(()=>{let t=L0(),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(II,"getID");o(iGe,"uniqBy");aGe=o(function(t){Tt.records.direction=t},"setDirection"),sGe=o(function(t){Y.debug("options str",t),t=t?.trim(),t=t||"{}";try{Tt.records.options=JSON.parse(t)}catch(e){Y.error("error while parsing gitGraph options",e.message)}},"setOptions"),oGe=o(function(){return Tt.records.options},"getOptions"),lGe=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=L0();r=qe.sanitizeText(r,a),e=qe.sanitizeText(e,a),i=i?.map(l=>qe.sanitizeText(l,a));let s={id:r||Tt.records.seq+"-"+II(),message:e,seq:Tt.records.seq++,type:n??jr.NORMAL,tags:i??[],parents:Tt.records.head==null?[]:[Tt.records.head.id],branch:Tt.records.currBranch};Tt.records.head=s,Y.info("main branch",a.mainBranchName),Tt.records.commits.set(s.id,s),Tt.records.branches.set(Tt.records.currBranch,s.id),Y.debug("in pushCommit "+s.id)},"commit"),cGe=o(function(t){let e=t.name,r=t.order;if(e=qe.sanitizeText(e,L0()),Tt.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}")`);Tt.records.branches.set(e,Tt.records.head!=null?Tt.records.head.id:null),Tt.records.branchConfig.set(e,{name:e,order:r}),wue(e),Y.debug("in createBranch")},"branch"),uGe=o(t=>{let e=t.branch,r=t.id,n=t.type,i=t.tags,a=L0();e=qe.sanitizeText(e,a),r&&(r=qe.sanitizeText(r,a));let s=Tt.records.branches.get(Tt.records.currBranch),l=Tt.records.branches.get(e),u=s?Tt.records.commits.get(s):void 0,h=l?Tt.records.commits.get(l):void 0;if(u&&h&&u.branch===e)throw new Error(`Cannot merge branch '${e}' into itself.`);if(Tt.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 (${Tt.records.currBranch})has no commits`);throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},p}if(!Tt.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&&Tt.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||`${Tt.records.seq}-${II()}`,message:`merged branch ${e} into ${Tt.records.currBranch}`,seq:Tt.records.seq++,parents:Tt.records.head==null?[]:[Tt.records.head.id,f],branch:Tt.records.currBranch,type:jr.MERGE,customType:n,customId:!!r,tags:i??[]};Tt.records.head=d,Tt.records.commits.set(d.id,d),Tt.records.branches.set(Tt.records.currBranch,d.id),Y.debug(Tt.records.branches),Y.debug("in mergeBranch")},"merge"),hGe=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=L0();if(e=qe.sanitizeText(e,a),r=qe.sanitizeText(r,a),n=n?.map(u=>qe.sanitizeText(u,a)),i=qe.sanitizeText(i,a),!e||!Tt.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=Tt.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||!Tt.records.commits.has(r)){if(l===Tt.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=Tt.records.branches.get(Tt.records.currBranch);if(u===void 0||!u){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Tt.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let h=Tt.records.commits.get(u);if(h===void 0||!h){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Tt.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let f={id:Tt.records.seq+"-"+II(),message:`cherry-picked ${s?.message} into ${Tt.records.currBranch}`,seq:Tt.records.seq++,parents:Tt.records.head==null?[]:[Tt.records.head.id,s.id],branch:Tt.records.currBranch,type:jr.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===jr.MERGE?`|parent:${i}`:""}`]};Tt.records.head=f,Tt.records.commits.set(f.id,f),Tt.records.branches.set(Tt.records.currBranch,f.id),Y.debug(Tt.records.branches),Y.debug("in cherryPick")}},"cherryPick"),wue=o(function(t){if(t=qe.sanitizeText(t,L0()),Tt.records.branches.has(t)){Tt.records.currBranch=t;let e=Tt.records.branches.get(Tt.records.currBranch);e===void 0||!e?Tt.records.head=null:Tt.records.head=Tt.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(bue,"upsert");o(Tue,"prettyPrintCommitHistory");fGe=o(function(){Y.debug(Tt.records.commits);let t=kue()[0];Tue([t])},"prettyPrint"),dGe=o(function(){Tt.reset(),Lr()},"clear"),pGe=o(function(){return[...Tt.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"),mGe=o(function(){return Tt.records.branches},"getBranches"),gGe=o(function(){return Tt.records.commits},"getCommits"),kue=o(function(){let t=[...Tt.records.commits.values()];return t.forEach(function(e){Y.debug(e.id)}),t.sort((e,r)=>e.seq-r.seq),t},"getCommitsArray"),yGe=o(function(){return Tt.records.currBranch},"getCurrentBranch"),vGe=o(function(){return Tt.records.direction},"getDirection"),xGe=o(function(){return Tt.records.head},"getHead"),pE={commitType:jr,getConfig:L0,setDirection:aGe,setOptions:sGe,getOptions:oGe,commit:lGe,branch:cGe,merge:uGe,cherryPick:hGe,checkout:wue,prettyPrint:fGe,clear:dGe,getBranchesAsObjArray:pGe,getBranches:mGe,getCommits:gGe,getCommitsArray:kue,getCurrentBranch:yGe,getDirection:vGe,getHead:xGe,setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,setAccDescription:Fr,setDiagramTitle:cn,getDiagramTitle:Jr}});var bGe,wGe,TGe,kGe,EGe,SGe,CGe,Eue,Sue=M(()=>{"use strict";Hg();ut();Tx();OI();fE();bGe=o((t,e)=>{yf(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(TGe(i)),"Commit"),Branch:o(i=>e.branch(kGe(i)),"Branch"),Merge:o(i=>e.merge(EGe(i)),"Merge"),Checkout:o(i=>e.checkout(SGe(i)),"Checkout"),CherryPicking:o(i=>e.cherryPick(CGe(i)),"CherryPicking")}[t.$type];n?n(t):Y.error(`Unknown statement type: ${t.$type}`)},"parseStatement"),TGe=o(t=>({id:t.id,msg:t.message??"",type:t.type!==void 0?jr[t.type]:jr.NORMAL,tags:t.tags??void 0}),"parseCommit"),kGe=o(t=>({name:t.name,order:t.order??0}),"parseBranch"),EGe=o(t=>({branch:t.branch,id:t.id??"",type:t.type!==void 0?jr[t.type]:void 0,tags:t.tags??void 0}),"parseMerge"),SGe=o(t=>t.branch,"parseCheckout"),CGe=o(t=>({id:t.id,targetId:"",tags:t.tags?.length===0?void 0:t.tags,parent:t.parent}),"parseCherryPicking"),Eue={parse:o(async t=>{let e=await Yl("gitGraph",t);Y.debug(e),bGe(e,pE)},"parse")}});var AGe,sl,bf,wf,Yc,Zu,D0,Ws,Ys,mE,kx,gE,xf,Rr,_Ge,Aue,_ue,LGe,DGe,NGe,RGe,MGe,IGe,OGe,PGe,BGe,FGe,zGe,GGe,Cue,$Ge,Ex,VGe,UGe,HGe,WGe,YGe,Lue,Due=M(()=>{"use strict";pr();Vt();ut();hr();fE();AGe=pe(),sl=AGe?.gitGraph,bf=10,wf=40,Yc=4,Zu=2,D0=8,Ws=new Map,Ys=new Map,mE=30,kx=new Map,gE=[],xf=0,Rr="LR",_Ge=o(()=>{Ws.clear(),Ys.clear(),kx.clear(),xf=0,gE=[],Rr="LR"},"clear"),Aue=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"),_ue=o(t=>{let e,r,n;return Rr==="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=Rr==="TB"||Rr=="BT"?Ys.get(i)?.y:Ys.get(i)?.x;a!==void 0&&r(a,n)&&(e=i,n=a)}),e},"findClosestParent"),LGe=o(t=>{let e="",r=1/0;return t.forEach(n=>{let i=Ys.get(n).y;i<=r&&(e=n,r=i)}),e||void 0},"findClosestParentBT"),DGe=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=RGe(l),i=Math.max(n,i)):a.push(l),MGe(l,n)}),n=i,a.forEach(s=>{IGe(s,n,r)}),t.forEach(s=>{let l=e.get(s);if(l?.parents.length){let u=LGe(l.parents);n=Ys.get(u).y-wf,n<=i&&(i=n);let h=Ws.get(l.branch).pos,f=n-bf;Ys.set(l.id,{x:h,y:f})}})},"setParallelBTPos"),NGe=o(t=>{let e=_ue(t.parents.filter(n=>n!==null));if(!e)throw new Error(`Closest parent not found for commit ${t.id}`);let r=Ys.get(e)?.y;if(r===void 0)throw new Error(`Closest parent position not found for commit ${t.id}`);return r},"findClosestParentPos"),RGe=o(t=>NGe(t)+wf,"calculateCommitPosition"),MGe=o((t,e)=>{let r=Ws.get(t.branch);if(!r)throw new Error(`Branch not found for commit ${t.id}`);let n=r.pos,i=e+bf;return Ys.set(t.id,{x:n,y:i}),{x:n,y:i}},"setCommitPosition"),IGe=o((t,e,r)=>{let n=Ws.get(t.branch);if(!n)throw new Error(`Branch not found for commit ${t.id}`);let i=e+r,a=n.pos;Ys.set(t.id,{x:a,y:i})},"setRootPosition"),OGe=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%D0} ${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%D0} ${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%D0}`),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%D0}`)}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%D0}`)}},"drawCommitBullet"),PGe=o((t,e,r,n)=>{if(e.type!==jr.CHERRY_PICK&&(e.customId&&e.type===jr.MERGE||e.type!==jr.MERGE)&&sl?.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-Zu).attr("y",r.y+13.5).attr("width",l.width+2*Zu).attr("height",l.height+2*Zu),Rr==="TB"||Rr==="BT"?(a.attr("x",r.x-(l.width+4*Yc+5)).attr("y",r.y-12),s.attr("x",r.x-(l.width+4*Yc)).attr("y",r.y+l.height-12)):s.attr("x",r.posWithOffset-l.width/2),sl.rotateCommitLabel))if(Rr==="TB"||Rr==="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"),BGe=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-Yc/2},${m+Zu} + ${n-a/2-Yc/2},${m-Zu} + ${r.posWithOffset-a/2-Yc},${m-p-Zu} + ${r.posWithOffset+a/2+Yc},${m-p-Zu} + ${r.posWithOffset+a/2+Yc},${m+p+Zu} + ${r.posWithOffset-a/2-Yc},${m+p+Zu}`),h.attr("cy",m).attr("cx",n-a/2+Yc/2).attr("r",1.5).attr("class","tag-hole"),Rr==="TB"||Rr==="BT"){let g=n+d;f.attr("class","tag-label-bkg").attr("points",` + ${r.x},${g+2} + ${r.x},${g-2} + ${r.x+bf},${g-p-2} + ${r.x+bf+a+4},${g-p-2} + ${r.x+bf+a+4},${g+p+2} + ${r.x+bf},${g+p+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),h.attr("cx",r.x+Yc/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"),FGe=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"),zGe=o((t,e,r,n)=>{let i={x:0,y:0};if(t.parents.length>0){let a=_ue(t.parents);if(a){let s=n.get(a)??i;return e==="TB"?s.y+wf:e==="BT"?(n.get(t.id)??i).y-wf:s.x+wf}}else return e==="TB"?mE:e==="BT"?(n.get(t.id)??i).y-wf:0;return 0},"calculatePosition"),GGe=o((t,e,r)=>{let n=Rr==="BT"&&r?e:e+bf,i=Rr==="TB"||Rr==="BT"?n:Ws.get(t.branch)?.pos,a=Rr==="TB"||Rr==="BT"?Ws.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"),Cue=o((t,e,r)=>{if(!sl)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=Rr==="TB"||Rr==="BT"?mE:0,s=[...e.keys()],l=sl?.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);Rr==="BT"&&(l&&DGe(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=zGe(d,Rr,a,Ys));let p=GGe(d,a,l);if(r){let m=FGe(d),g=d.customType??d.type,y=Ws.get(d.branch)?.index??0;OGe(n,d,p,m,y,g),PGe(i,d,p,a),BGe(i,d,p,a)}Rr==="TB"||Rr==="BT"?Ys.set(d.id,{x:p.x,y:p.posWithOffset}):Ys.set(d.id,{x:p.posWithOffset,y:p.y}),a=Rr==="BT"&&l?a+wf:a+wf+bf,a>xf&&(xf=a)})},"drawCommits"),$Ge=o((t,e,r,n,i)=>{let s=(Rr==="TB"||Rr==="BT"?r.xh.branch===s,"isOnBranchToGetCurve"),u=o(h=>h.seq>t.seq&&h.sequ(h)&&l(h))},"shouldRerouteArrow"),Ex=o((t,e,r=0)=>{let n=t+Math.abs(t-e)/2;if(r>5)return n;if(gE.every(s=>Math.abs(s-n)>=10))return gE.push(n),n;let a=Math.abs(t-e);return Ex(t,e-a/5,r+1)},"findLane"),VGe=o((t,e,r,n)=>{let i=Ys.get(e.id),a=Ys.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=$Ge(e,r,i,a,n),l="",u="",h=0,f=0,d=Ws.get(r.branch)?.index;r.type===jr.MERGE&&e.id!==r.parents[0]&&(d=Ws.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}`)):Rr==="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%D0)},"drawArrow"),UGe=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=>{VGe(r,e.get(a),i,e)})})},"drawArrows"),HGe=o((t,e)=>{let r=t.append("g");e.forEach((n,i)=>{let a=i%D0,s=Ws.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",xf),l.attr("y2",s),l.attr("class","branch branch"+a),Rr==="TB"?(l.attr("y1",mE),l.attr("x1",s),l.attr("y2",xf),l.attr("x2",s)):Rr==="BT"&&(l.attr("y1",xf),l.attr("x1",s),l.attr("y2",mE),l.attr("x2",s)),gE.push(s);let u=n.name,h=Aue(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-(sl?.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-(sl?.rotateCommitLabel===!0?30:0))+", "+(s-m.height/2-1)+")"),Rr==="TB"?(f.attr("x",s-m.width/2-10).attr("y",0),p.attr("transform","translate("+(s-m.width/2-5)+", 0)")):Rr==="BT"?(f.attr("x",s-m.width/2-10).attr("y",xf),p.attr("transform","translate("+(s-m.width/2-5)+", "+xf+")")):f.attr("transform","translate(-19, "+(s-m.height/2)+")")})},"drawBranches"),WGe=o(function(t,e,r,n,i){return Ws.set(t,{pos:e,index:r}),e+=50+(i?40:0)+(Rr==="TB"||Rr==="BT"?n.width/2:0),e},"setBranchPosition"),YGe=o(function(t,e,r,n){if(_Ge(),Y.debug("in gitgraph renderer",t+` +`,"id:",e,r),!sl)throw new Error("GitGraph config not found");let i=sl.rotateCommitLabel??!1,a=n.db;kx=a.getCommits();let s=a.getBranchesAsObjArray();Rr=a.getDirection();let l=Ve(`[id="${e}"]`),u=0;s.forEach((h,f)=>{let d=Aue(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=WGe(h.name,u,f,y,i),g.remove(),m.remove(),p.remove()}),Cue(l,kx,!1),sl.showBranches&&HGe(l,s),UGe(l,kx),Cue(l,kx,!0),Ut.insertTitle(l,"gitTitleText",sl.titleTopMargin??0,a.getDiagramTitle()),o7(void 0,l,sl.diagramPadding,sl.useMaxWidth)},"draw"),Lue={draw:YGe}});var qGe,Nue,Rue=M(()=>{"use strict";qGe=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"),Nue=qGe});var Mue={};vr(Mue,{diagram:()=>XGe});var XGe,Iue=M(()=>{"use strict";Sue();OI();Due();Rue();XGe={parser:Eue,db:pE,renderer:Lue,styles:Nue}});var PI,Bue,Fue=M(()=>{"use strict";PI=function(){var t=o(function(R,C,O,N){for(O=O||{},N=R.length;N--;O[R[N]]=C);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],S=[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(C,O,N,P,F,B,G){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:S,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:S,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(C,O){if(O.recoverable)this.trace(C);else{var N=new Error(C);throw N.hash=O,N}},"parseError"),parse:o(function(C){var O=this,N=[0],P=[],F=[null],B=[],G=this.table,z="",W=0,Z=0,j=0,oe=2,K=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(C,H.yy),H.yy.lexer=J,H.yy.parser=this,typeof J.yylloc>"u"&&(J.yylloc={});var Q=J.yylloc;B.push(Q);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()||K,typeof he!="number"&&(he instanceof Array&&(P=he,he=P.pop()),he=O.symbols_[he]||he),he}o(ce,"lex");for(var te,Ne,se,ke,Re,Ce,Pe={},Ie,$e,ye,X;;){if(se=N[N.length-1],this.defaultActions[se]?ke=this.defaultActions[se]:((te===null||typeof te>"u")&&(te=ce()),ke=G[se]&&G[se][te]),typeof ke>"u"||!ke.length||!ke[0]){var fe="";X=[];for(Ie in G[se])this.terminals_[Ie]&&Ie>oe&&X.push("'"+this.terminals_[Ie]+"'");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==K?"end of input":"'"+(this.terminals_[te]||te)+"'"),this.parseError(fe,{text:J.match,token:this.terminals_[te]||te,line:J.yylineno,loc:Q,expected:X})}if(ke[0]instanceof Array&&ke.length>1)throw new Error("Parse Error: multiple actions possible at state: "+se+", token: "+te);switch(ke[0]){case 1:N.push(te),F.push(J.yytext),B.push(J.yylloc),N.push(ke[1]),te=null,Ne?(te=Ne,Ne=null):(Z=J.yyleng,z=J.yytext,W=J.yylineno,Q=J.yylloc,j>0&&j--);break;case 2:if($e=this.productions_[ke[1]][1],Pe.$=F[F.length-$e],Pe._$={first_line:B[B.length-($e||1)].first_line,last_line:B[B.length-1].last_line,first_column:B[B.length-($e||1)].first_column,last_column:B[B.length-1].last_column},ae&&(Pe._$.range=[B[B.length-($e||1)].range[0],B[B.length-1].range[1]]),Ce=this.performAction.apply(Pe,[z,Z,W,H.yy,ke[1],F,B].concat(ee)),typeof Ce<"u")return Ce;$e&&(N=N.slice(0,-1*$e*2),F=F.slice(0,-1*$e),B=B.slice(0,-1*$e)),N.push(this.productions_[ke[1]][0]),F.push(Pe.$),B.push(Pe._$),ye=G[N[N.length-2]][N[N.length-1]],N.push(ye);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(C,O){return this.yy=O||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 O=C.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),C},"input"),unput:o(function(C){var O=C.length,N=C.split(/(?:\r\n?|\n)/g);this._input=C+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(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(),O=new Array(C.length+1).join("-");return C+this.upcomingInput()+` +`+O+"^"},"showPosition"),test_match:o(function(C,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=C[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+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],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 C,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(C=this.test_match(N,F[B]),C!==!1)return C;if(this._backtrack){O=!1;continue}else return!1}else if(!this.options.flex)break}return O?(C=this.test_match(O,F[P]),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 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}();PI.parser=PI;Bue=PI});var zue=Ei((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_isoWeek=e()})(BI,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 Gue=Ei((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_customParseFormat=e()})(zI,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(S,A,I){var D=I&&I.toUpperCase();return A||v[I]||t[I]||v[D].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(k,R,C){return R||C.slice(1)})})).match(e),b=x.length,w=0;w-1)return new Date((N==="X"?1e3:1)*O);var B=m(N)(O),G=B.year,z=B.month,W=B.day,Z=B.hours,j=B.minutes,oe=B.seconds,K=B.milliseconds,ee=B.zone,J=B.week,H=new Date,q=W||(G||z?1:H.getDate()),Q=G||H.getFullYear(),ae=0;G&&!z||(ae=z>0?z-1:H.getMonth());var ue,ce=Z||0,te=j||0,Ne=oe||0,se=K||0;return ee?new Date(Date.UTC(Q,ae,q,ce,te,Ne,se+60*ee.offset*1e3)):P?new Date(Date.UTC(Q,ae,q,ce,te,Ne,se)):(ue=new Date(Q,ae,q,ce,te,Ne,se),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 C=v.apply(this,E);if(C.isValid()){this.$d=C.$d,this.$L=C.$L,this.init();break}R===k&&(this.$d=new Date(""))}else b.call(this,w)}}})});var $ue=Ei(($I,VI)=>{"use strict";(function(t,e){typeof $I=="object"&&typeof VI<"u"?VI.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_advancedFormat=e()})($I,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 nhe(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 Hue,xo,Wue,Yue,que,Vue,qc,YI,qI,XI,Sx,Cx,jI,KI,xE,Yg,QI,Xue,ZI,Ax,JI,eO,bE,UI,ZGe,JGe,e$e,t$e,r$e,n$e,i$e,a$e,s$e,o$e,l$e,c$e,u$e,h$e,f$e,d$e,p$e,m$e,g$e,y$e,v$e,x$e,b$e,jue,w$e,T$e,k$e,Kue,E$e,HI,Que,Zue,yE,Wg,S$e,C$e,WI,vE,Yi,Jue,A$e,N0,_$e,Uue,L$e,ehe,D$e,the,N$e,R$e,rhe,ihe=M(()=>{"use strict";Hue=Ji(Qp(),1),xo=Ji(Vb(),1),Wue=Ji(zue(),1),Yue=Ji(Gue(),1),que=Ji($ue(),1);ut();Vt();hr();Ai();xo.default.extend(Wue.default);xo.default.extend(Yue.default);xo.default.extend(que.default);Vue={friday:5,saturday:6},qc="",YI="",XI="",Sx=[],Cx=[],jI=new Map,KI=[],xE=[],Yg="",QI="",Xue=["active","done","crit","milestone"],ZI=[],Ax=!1,JI=!1,eO="sunday",bE="saturday",UI=0,ZGe=o(function(){KI=[],xE=[],Yg="",ZI=[],yE=0,WI=void 0,vE=void 0,Yi=[],qc="",YI="",QI="",qI=void 0,XI="",Sx=[],Cx=[],Ax=!1,JI=!1,UI=0,jI=new Map,Lr(),eO="sunday",bE="saturday"},"clear"),JGe=o(function(t){YI=t},"setAxisFormat"),e$e=o(function(){return YI},"getAxisFormat"),t$e=o(function(t){qI=t},"setTickInterval"),r$e=o(function(){return qI},"getTickInterval"),n$e=o(function(t){XI=t},"setTodayMarker"),i$e=o(function(){return XI},"getTodayMarker"),a$e=o(function(t){qc=t},"setDateFormat"),s$e=o(function(){Ax=!0},"enableInclusiveEndDates"),o$e=o(function(){return Ax},"endDatesAreInclusive"),l$e=o(function(){JI=!0},"enableTopAxis"),c$e=o(function(){return JI},"topAxisEnabled"),u$e=o(function(t){QI=t},"setDisplayMode"),h$e=o(function(){return QI},"getDisplayMode"),f$e=o(function(){return qc},"getDateFormat"),d$e=o(function(t){Sx=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),p$e=o(function(){return Sx},"getIncludes"),m$e=o(function(t){Cx=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),g$e=o(function(){return Cx},"getExcludes"),y$e=o(function(){return jI},"getLinks"),v$e=o(function(t){Yg=t,KI.push(t)},"addSection"),x$e=o(function(){return KI},"getSections"),b$e=o(function(){let t=Uue(),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=N0(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,xo.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"),Que=o(function(t){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return e!==null?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]},"parseDuration"),Zue=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=N0(p);m!==void 0&&(!f||m.startTime{window.open(r,"_self")}),jI.set(n,r))}),ehe(t,"clickable")},"setLink"),ehe=o(function(t,e){t.split(",").forEach(function(r){let n=N0(r);n!==void 0&&n.classes.push(e)})},"setClass"),D$e=o(function(t,e,r){if(pe().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"),the=o(function(t,e){ZI.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"),N$e=o(function(t,e,r){t.split(",").forEach(function(n){D$e(n,e,r)}),ehe(t,"clickable")},"setClickEvent"),R$e=o(function(t){ZI.forEach(function(e){e(t)})},"bindFunctions"),rhe={getConfig:o(()=>pe().gantt,"getConfig"),clear:ZGe,setDateFormat:a$e,getDateFormat:f$e,enableInclusiveEndDates:s$e,endDatesAreInclusive:o$e,enableTopAxis:l$e,topAxisEnabled:c$e,setAxisFormat:JGe,getAxisFormat:e$e,setTickInterval:t$e,getTickInterval:r$e,setTodayMarker:n$e,getTodayMarker:i$e,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,setDisplayMode:u$e,getDisplayMode:h$e,setAccDescription:Fr,getAccDescription:zr,addSection:v$e,getSections:x$e,getTasks:b$e,addTask:A$e,findTaskById:N0,addTaskOrg:_$e,setIncludes:d$e,getIncludes:p$e,setExcludes:m$e,getExcludes:g$e,setClickEvent:N$e,setLink:L$e,getLinks:y$e,bindFunctions:R$e,parseDuration:Que,isInvalidDate:jue,setWeekday:w$e,getWeekday:T$e,setWeekend:k$e};o(nhe,"getTaskTags")});var wE,M$e,ahe,I$e,Ju,O$e,she,ohe=M(()=>{"use strict";wE=Ji(Vb(),1);ut();pr();fr();Vt();ai();M$e=o(function(){Y.debug("Something is calling, setConf, remove the call")},"setConf"),ahe={monday:Nh,tuesday:R3,wednesday:M3,thursday:xc,friday:I3,saturday:O3,sunday:Al},I$e=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"),O$e=o(function(t,e,r,n){let i=pe().gantt,a=pe().securityLevel,s;a==="sandbox"&&(s=Ve("#i"+e));let l=a==="sandbox"?Ve(s.nodes()[0].contentDocument.body):Ve("body"),u=a==="sandbox"?s.nodes()[0].contentDocument:document,h=u.getElementById(e);Ju=h.parentElement.offsetWidth,Ju===void 0&&(Ju=1200),i.useWidth!==void 0&&(Ju=i.useWidth);let f=n.db.getTasks(),d=[];for(let S of f)d.push(S.type);d=L(d);let p={},m=2*i.topPadding;if(n.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let S={};for(let I of f)S[I.section]===void 0?S[I.section]=[I]:S[I.section].push(I);let A=0;for(let I of Object.keys(S)){let D=I$e(S[I],A)+1;A+=D,m+=D*(i.barHeight+i.barGap),p[I]=D}}else{m+=f.length*(i.barHeight+i.barGap);for(let S of d)p[S]=f.filter(A=>A.type===S).length}h.setAttribute("viewBox","0 0 "+Ju+" "+m);let g=l.select(`[id="${e}"]`),y=F3().domain([U4(f,function(S){return S.startTime}),V4(f,function(S){return S.endTime})]).rangeRound([0,Ju-i.leftPadding-i.rightPadding]);function v(S,A){let I=S.startTime,D=A.startTime,k=0;return I>D?k=1:IG.order))].map(G=>S.find(z=>z.order===G));g.append("g").selectAll("rect").data(N).enter().append("rect").attr("x",0).attr("y",function(G,z){return z=G.order,z*A+I-2}).attr("width",function(){return C-i.rightPadding/2}).attr("height",A).attr("class",function(G){for(let[z,W]of d.entries())if(G.type===W)return"section section"+z%i.numberSectionStyles;return"section section0"});let P=g.append("g").selectAll("rect").data(S).enter(),F=n.db.getLinks();if(P.append("rect").attr("id",function(G){return G.id}).attr("rx",3).attr("ry",3).attr("x",function(G){return G.milestone?y(G.startTime)+D+.5*(y(G.endTime)-y(G.startTime))-.5*k:y(G.startTime)+D}).attr("y",function(G,z){return z=G.order,z*A+I}).attr("width",function(G){return G.milestone?k:y(G.renderEndTime||G.endTime)-y(G.startTime)}).attr("height",k).attr("transform-origin",function(G,z){return z=G.order,(y(G.startTime)+D+.5*(y(G.endTime)-y(G.startTime))).toString()+"px "+(z*A+I+.5*k).toString()+"px"}).attr("class",function(G){let z="task",W="";G.classes.length>0&&(W=G.classes.join(" "));let Z=0;for(let[oe,K]of d.entries())G.type===K&&(Z=oe%i.numberSectionStyles);let j="";return G.active?G.crit?j+=" activeCrit":j=" active":G.done?G.crit?j=" doneCrit":j=" done":G.crit&&(j+=" crit"),j.length===0&&(j=" task"),G.milestone&&(j=" milestone "+j),j+=Z,j+=" "+W,z+j}),P.append("text").attr("id",function(G){return G.id+"-text"}).text(function(G){return G.task}).attr("font-size",i.fontSize).attr("x",function(G){let z=y(G.startTime),W=y(G.renderEndTime||G.endTime);G.milestone&&(z+=.5*(y(G.endTime)-y(G.startTime))-.5*k),G.milestone&&(W=z+k);let Z=this.getBBox().width;return Z>W-z?W+Z+1.5*i.leftPadding>C?z+D-5:W+D+5:(W-z)/2+z+D}).attr("y",function(G,z){return z=G.order,z*A+i.barHeight/2+(i.fontSize/2-2)+I}).attr("text-height",k).attr("class",function(G){let z=y(G.startTime),W=y(G.endTime);G.milestone&&(W=z+k);let Z=this.getBBox().width,j="";G.classes.length>0&&(j=G.classes.join(" "));let oe=0;for(let[ee,J]of d.entries())G.type===J&&(oe=ee%i.numberSectionStyles);let K="";return G.active&&(G.crit?K="activeCritText"+oe:K="activeText"+oe),G.done?G.crit?K=K+" doneCritText"+oe:K=K+" doneText"+oe:G.crit&&(K=K+" critText"+oe),G.milestone&&(K+=" milestoneText"),Z>W-z?W+Z+1.5*i.leftPadding>C?j+" taskTextOutsideLeft taskTextOutside"+oe+" "+K:j+" taskTextOutsideRight taskTextOutside"+oe+" "+K+" width-"+Z:j+" taskText taskText"+oe+" "+K+" width-"+Z}),pe().securityLevel==="sandbox"){let G;G=Ve("#i"+e);let z=G.nodes()[0].contentDocument;P.filter(function(W){return F.has(W.id)}).each(function(W){var Z=z.querySelector("#"+W.id),j=z.querySelector("#"+W.id+"-text");let oe=Z.parentNode;var K=z.createElement("a");K.setAttribute("xlink:href",F.get(W.id)),K.setAttribute("target","_top"),oe.appendChild(K),K.appendChild(Z),K.appendChild(j)})}}o(b,"drawRects");function w(S,A,I,D,k,R,C,O){if(C.length===0&&O.length===0)return;let N,P;for(let{startTime:Z,endTime:j}of R)(N===void 0||ZP)&&(P=j);if(!N||!P)return;if((0,wE.default)(P).diff((0,wE.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=[],G=null,z=(0,wE.default)(N);for(;z.valueOf()<=P;)n.db.isInvalidDate(z,F,C,O)?G?G.end=z:G={start:z,end:z}:G&&(B.push(G),G=null),z=z.add(1,"d");g.append("g").selectAll("rect").data(B).enter().append("rect").attr("id",function(Z){return"exclude-"+Z.start.format("YYYY-MM-DD")}).attr("x",function(Z){return y(Z.start)+I}).attr("y",i.gridLineStartPadding).attr("width",function(Z){let j=Z.end.add(1,"day");return y(j)-y(Z.start)}).attr("height",k-A-i.gridLineStartPadding).attr("transform-origin",function(Z,j){return(y(Z.start)+I+.5*(y(Z.end)-y(Z.start))).toString()+"px "+(j*S+.5*k).toString()+"px"}).attr("class","exclude-range")}o(w,"drawExcludeDays");function _(S,A,I,D){let k=b7(y).tickSize(-D+A+i.gridLineStartPadding).tickFormat(kd(n.db.getAxisFormat()||i.axisFormat||"%Y-%m-%d")),C=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(n.db.getTickInterval()||i.tickInterval);if(C!==null){let O=C[1],N=C[2],P=n.db.getWeekday()||i.weekday;switch(N){case"millisecond":k.ticks(yc.every(O));break;case"second":k.ticks(to.every(O));break;case"minute":k.ticks(Su.every(O));break;case"hour":k.ticks(Cu.every(O));break;case"day":k.ticks(Oo.every(O));break;case"week":k.ticks(ahe[P].every(O));break;case"month":k.ticks(Au.every(O));break}}if(g.append("g").attr("class","grid").attr("transform","translate("+S+", "+(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=x7(y).tickSize(-D+A+i.gridLineStartPadding).tickFormat(kd(n.db.getAxisFormat()||i.axisFormat||"%Y-%m-%d"));if(C!==null){let N=C[1],P=C[2],F=n.db.getWeekday()||i.weekday;switch(P){case"millisecond":O.ticks(yc.every(N));break;case"second":O.ticks(to.every(N));break;case"minute":O.ticks(Su.every(N));break;case"hour":O.ticks(Cu.every(N));break;case"day":O.ticks(Oo.every(N));break;case"week":O.ticks(ahe[F].every(N));break;case"month":O.ticks(Au.every(N));break}}g.append("g").attr("class","grid").attr("transform","translate("+S+", "+A+")").call(O).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}o(_,"makeGrid");function T(S,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(qe.lineBreakRegex),C=-(R.length-1)/2,O=u.createElementNS("http://www.w3.org/2000/svg","text");O.setAttribute("dy",C+"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 C=0;C{"use strict";P$e=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"),lhe=P$e});var uhe={};vr(uhe,{diagram:()=>B$e});var B$e,hhe=M(()=>{"use strict";Fue();ihe();ohe();che();B$e={parser:Bue,db:rhe,renderer:she,styles:lhe}});var phe,mhe=M(()=>{"use strict";Hg();ut();phe={parse:o(async t=>{let e=await Yl("info",t);Y.debug(e)},"parse")}});var _x,tO=M(()=>{_x="11.4.0"});var V$e,U$e,ghe,yhe=M(()=>{"use strict";tO();V$e={version:_x},U$e=o(()=>V$e.version,"getVersion"),ghe={getVersion:U$e}});var Va,eh=M(()=>{"use strict";pr();Vt();Va=o(t=>{let{securityLevel:e}=pe(),r=Ve("body");if(e==="sandbox"){let a=Ve(`#i${t}`).node()?.contentDocument??document;r=Ve(a.body)}return r.select(`#${t}`)},"selectSvgElement")});var H$e,vhe,xhe=M(()=>{"use strict";ut();eh();ai();H$e=o((t,e,r)=>{Y.debug(`rendering info diagram +`+t);let n=Va(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"),vhe={draw:H$e}});var bhe={};vr(bhe,{diagram:()=>W$e});var W$e,whe=M(()=>{"use strict";mhe();yhe();xhe();W$e={parser:phe,db:ghe,renderer:vhe}});var Ehe,rO,TE,nO,X$e,j$e,K$e,Q$e,Z$e,J$e,eVe,kE,iO=M(()=>{"use strict";ut();Ai();bs();Ehe=ur.pie,rO={sections:new Map,showData:!1,config:Ehe},TE=rO.sections,nO=rO.showData,X$e=structuredClone(Ehe),j$e=o(()=>structuredClone(X$e),"getConfig"),K$e=o(()=>{TE=new Map,nO=rO.showData,Lr()},"clear"),Q$e=o(({label:t,value:e})=>{TE.has(t)||(TE.set(t,e),Y.debug(`added new section: ${t}, with value: ${e}`))},"addSection"),Z$e=o(()=>TE,"getSections"),J$e=o(t=>{nO=t},"setShowData"),eVe=o(()=>nO,"getShowData"),kE={getConfig:j$e,clear:K$e,setDiagramTitle:cn,getDiagramTitle:Jr,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addSection:Q$e,getSections:Z$e,setShowData:J$e,getShowData:eVe}});var tVe,She,Che=M(()=>{"use strict";Hg();ut();Tx();iO();tVe=o((t,e)=>{yf(t,e),e.setShowData(t.showData),t.sections.map(e.addSection)},"populateDb"),She={parse:o(async t=>{let e=await Yl("pie",t);Y.debug(e),tVe(e,kE)},"parse")}});var rVe,Ahe,_he=M(()=>{"use strict";rVe=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"),Ahe=rVe});var nVe,iVe,Lhe,Dhe=M(()=>{"use strict";pr();Vt();ut();eh();ai();hr();nVe=o(t=>{let e=[...t.entries()].map(n=>({label:n[0],value:n[1]})).sort((n,i)=>i.value-n.value);return H3().value(n=>n.value)(e)},"createPieArcs"),iVe=o((t,e,r,n)=>{Y.debug(`rendering pie chart +`+t);let i=n.db,a=pe(),s=Ds(i.getConfig(),a.pie),l=40,u=18,h=4,f=450,d=f,p=Va(e),m=p.append("g");m.attr("transform","translate("+d/2+","+f/2+")");let{themeVariables:g}=a,[y]=Ho(g.pieOuterStrokeWidth);y??=2;let v=s.textPosition,x=Math.min(d,f)/2-l,b=Dl().innerRadius(0).outerRadius(x),w=Dl().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=nVe(_),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=ku(E);m.selectAll("mySlices").data(T).enter().append("path").attr("d",b).attr("fill",k=>L(k.data.label)).attr("class","pieCircle");let S=0;_.forEach(k=>{S+=k}),m.selectAll("mySlices").data(T).enter().append("text").text(k=>(k.data.value/S*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 C=u+h,O=C*L.domain().length/2,N=12*u,P=R*C-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:C}=k.data;return i.getShowData()?`${R} [${C}]`: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"),Lhe={draw:iVe}});var Nhe={};vr(Nhe,{diagram:()=>aVe});var aVe,Rhe=M(()=>{"use strict";Che();iO();_he();Dhe();aVe={parser:She,db:kE,renderer:Lhe,styles:Ahe}});var aO,Ohe,Phe=M(()=>{"use strict";aO=function(){var t=o(function(Te,ie,Ee,Ae){for(Ee=Ee||{},Ae=Te.length;Ae--;Ee[Te[Ae]]=ie);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],S=[1,25],A=[1,26],I=[1,27],D=[1,28],k=[1,29],R=[1,32],C=[1,33],O=[1,34],N=[1,39],P=[1,40],F=[1,42],B=[1,44],G=[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],Z=[1,65],j=[1,66],oe=[1,67],K=[1,68],ee=[1,69],J=[1,70],H=[1,71],q=[1,72],Q=[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],Ne=[1,90],se=[1,91],ke=[1,92],Re=[1,99],Ce=[1,93],Pe=[1,96],Ie=[1,94],$e=[1,95],ye=[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(ie,Ee,Ae,Ge,Be,me,He){var Oe=me.length-1;switch(Be){case 23:this.$=me[Oe];break;case 24:this.$=me[Oe-1]+""+me[Oe];break;case 26:this.$=me[Oe-1]+me[Oe];break;case 27:this.$=[me[Oe].trim()];break;case 28:me[Oe-2].push(me[Oe].trim()),this.$=me[Oe-2];break;case 29:this.$=me[Oe-4],Ge.addClass(me[Oe-2],me[Oe]);break;case 37:this.$=[];break;case 42:this.$=me[Oe].trim(),Ge.setDiagramTitle(this.$);break;case 43:this.$=me[Oe].trim(),Ge.setAccTitle(this.$);break;case 44:case 45:this.$=me[Oe].trim(),Ge.setAccDescription(this.$);break;case 46:Ge.addSection(me[Oe].substr(8)),this.$=me[Oe].substr(8);break;case 47:Ge.addPoint(me[Oe-3],"",me[Oe-1],me[Oe],[]);break;case 48:Ge.addPoint(me[Oe-4],me[Oe-3],me[Oe-1],me[Oe],[]);break;case 49:Ge.addPoint(me[Oe-4],"",me[Oe-2],me[Oe-1],me[Oe]);break;case 50:Ge.addPoint(me[Oe-5],me[Oe-4],me[Oe-2],me[Oe-1],me[Oe]);break;case 51:Ge.setXAxisLeftText(me[Oe-2]),Ge.setXAxisRightText(me[Oe]);break;case 52:me[Oe-1].text+=" \u27F6 ",Ge.setXAxisLeftText(me[Oe-1]);break;case 53:Ge.setXAxisLeftText(me[Oe]);break;case 54:Ge.setYAxisBottomText(me[Oe-2]),Ge.setYAxisTopText(me[Oe]);break;case 55:me[Oe-1].text+=" \u27F6 ",Ge.setYAxisBottomText(me[Oe-1]);break;case 56:Ge.setYAxisBottomText(me[Oe]);break;case 57:Ge.setQuadrant1Text(me[Oe]);break;case 58:Ge.setQuadrant2Text(me[Oe]);break;case 59:Ge.setQuadrant3Text(me[Oe]);break;case 60:Ge.setQuadrant4Text(me[Oe]);break;case 64:this.$={text:me[Oe],type:"text"};break;case 65:this.$={text:me[Oe-1].text+""+me[Oe],type:me[Oe-1].type};break;case 66:this.$={text:me[Oe],type:"text"};break;case 67:this.$={text:me[Oe],type:"markdown"};break;case 68:this.$=me[Oe];break;case 69:this.$=me[Oe-1]+""+me[Oe];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:S,51:A,52:I,53:D,54:k,60:R,61:C,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:S,51:A,52:I,53:D,54:k,60:R,61:C,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:C,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:C,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:C,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:C,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:C,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:C,63:O,64:N,65:P,66:F,67:B},{4:f,5:d,8:G,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:Z,5:j,6:oe,7:K,8:ee,9:J,10:H,11:q,12:Q,13:ae,14:ue,15:ce,21:63},t(u,[2,53],{59:59,58:60,4:f,5:d,8:G,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:G,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:G,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:G,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:G,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:G,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:Z,5:j,6:oe,7:K,8:ee,9:J,10:H,11:q,12:Q,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:C,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:C,63:O,64:N,65:P,66:F,67:B}),{46:[1,85]},{45:[1,86]},{4:Ne,5:se,6:ke,8:Re,11:Ce,13:Pe,16:89,17:Ie,18:$e,19:ye,20:X,22:88,23:87},t(te,[2,24]),t(u,[2,51],{59:59,58:60,4:f,5:d,8:G,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:G,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:Ne,5:se,6:ke,8:Re,11:Ce,13:Pe,17:Ie,18:$e,19:ye,20:X}),{46:[1,101]},t(u,[2,29],{10:fe}),t(he,[2,27],{16:103,4:Ne,5:se,6:ke,8:Re,11:Ce,13:Pe,17:Ie,18:$e,19:ye,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:Ne,5:se,6:ke,8:Re,11:Ce,13:Pe,17:Ie,18:$e,19:ye,20:X}),{4:Ne,5:se,6:ke,8:Re,11:Ce,13:Pe,16:89,17:Ie,18:$e,19:ye,20:X,22:105},t(ge,[2,26]),t(u,[2,50],{10:fe}),t(he,[2,28],{16:103,4:Ne,5:se,6:ke,8:Re,11:Ce,13:Pe,17:Ie,18:$e,19:ye,20:X})],defaultActions:{8:[2,30],9:[2,31]},parseError:o(function(ie,Ee){if(Ee.recoverable)this.trace(ie);else{var Ae=new Error(ie);throw Ae.hash=Ee,Ae}},"parseError"),parse:o(function(ie){var Ee=this,Ae=[0],Ge=[],Be=[null],me=[],He=this.table,Oe="",et=0,bt=0,kt=0,vt=2,rt=1,yt=me.slice.call(arguments,1),Ue=Object.create(this.lexer),tt={yy:{}};for(var ht in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ht)&&(tt.yy[ht]=this.yy[ht]);Ue.setInput(ie,tt.yy),tt.yy.lexer=Ue,tt.yy.parser=this,typeof Ue.yylloc>"u"&&(Ue.yylloc={});var Et=Ue.yylloc;me.push(Et);var er=Ue.options&&Ue.options.ranges;typeof tt.yy.parseError=="function"?this.parseError=tt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function dt(_r){Ae.length=Ae.length-2*_r,Be.length=Be.length-_r,me.length=me.length-_r}o(dt,"popStack");function Je(){var _r;return _r=Ge.pop()||Ue.lex()||rt,typeof _r!="number"&&(_r instanceof Array&&(Ge=_r,_r=Ge.pop()),_r=Ee.symbols_[_r]||_r),_r}o(Je,"lex");for(var ct,Ct,pt,Bt,Tr,yr,or={},ln,Or,ii,mn;;){if(pt=Ae[Ae.length-1],this.defaultActions[pt]?Bt=this.defaultActions[pt]:((ct===null||typeof ct>"u")&&(ct=Je()),Bt=He[pt]&&He[pt][ct]),typeof Bt>"u"||!Bt.length||!Bt[0]){var On="";mn=[];for(ln in He[pt])this.terminals_[ln]&&ln>vt&&mn.push("'"+this.terminals_[ln]+"'");Ue.showPosition?On="Parse error on line "+(et+1)+`: +`+Ue.showPosition()+` +Expecting `+mn.join(", ")+", got '"+(this.terminals_[ct]||ct)+"'":On="Parse error on line "+(et+1)+": Unexpected "+(ct==rt?"end of input":"'"+(this.terminals_[ct]||ct)+"'"),this.parseError(On,{text:Ue.match,token:this.terminals_[ct]||ct,line:Ue.yylineno,loc:Et,expected:mn})}if(Bt[0]instanceof Array&&Bt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+pt+", token: "+ct);switch(Bt[0]){case 1:Ae.push(ct),Be.push(Ue.yytext),me.push(Ue.yylloc),Ae.push(Bt[1]),ct=null,Ct?(ct=Ct,Ct=null):(bt=Ue.yyleng,Oe=Ue.yytext,et=Ue.yylineno,Et=Ue.yylloc,kt>0&&kt--);break;case 2:if(Or=this.productions_[Bt[1]][1],or.$=Be[Be.length-Or],or._$={first_line:me[me.length-(Or||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(Or||1)].first_column,last_column:me[me.length-1].last_column},er&&(or._$.range=[me[me.length-(Or||1)].range[0],me[me.length-1].range[1]]),yr=this.performAction.apply(or,[Oe,bt,et,tt.yy,Bt[1],Be,me].concat(yt)),typeof yr<"u")return yr;Or&&(Ae=Ae.slice(0,-1*Or*2),Be=Be.slice(0,-1*Or),me=me.slice(0,-1*Or)),Ae.push(this.productions_[Bt[1]][0]),Be.push(or.$),me.push(or._$),ii=He[Ae[Ae.length-2]][Ae[Ae.length-1]],Ae.push(ii);break;case 3:return!0}}return!0},"parse")},ve=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(ie,Ee){return this.yy=Ee||this.yy||{},this._input=ie,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 ie=this._input[0];this.yytext+=ie,this.yyleng++,this.offset++,this.match+=ie,this.matched+=ie;var Ee=ie.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),ie},"input"),unput:o(function(ie){var Ee=ie.length,Ae=ie.split(/(?:\r\n?|\n)/g);this._input=ie+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ee),this.offset-=Ee;var Ge=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 Be=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===Ge.length?this.yylloc.first_column:0)+Ge[Ge.length-Ae.length].length-Ae[0].length:this.yylloc.first_column-Ee},this.options.ranges&&(this.yylloc.range=[Be[0],Be[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(ie){this.unput(this.match.slice(ie))},"less"),pastInput:o(function(){var ie=this.matched.substr(0,this.matched.length-this.match.length);return(ie.length>20?"...":"")+ie.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var ie=this.match;return ie.length<20&&(ie+=this._input.substr(0,20-ie.length)),(ie.substr(0,20)+(ie.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var ie=this.pastInput(),Ee=new Array(ie.length+1).join("-");return ie+this.upcomingInput()+` +`+Ee+"^"},"showPosition"),test_match:o(function(ie,Ee){var Ae,Ge,Be;if(this.options.backtrack_lexer&&(Be={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&&(Be.yylloc.range=this.yylloc.range.slice(0))),Ge=ie[0].match(/(?:\r\n?|\n).*/g),Ge&&(this.yylineno+=Ge.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ge?Ge[Ge.length-1].length-Ge[Ge.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ie[0].length},this.yytext+=ie[0],this.match+=ie[0],this.matches=ie,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(ie[0].length),this.matched+=ie[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 Be)this[me]=Be[me];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ie,Ee,Ae,Ge;this._more||(this.yytext="",this.match="");for(var Be=this._currentRules(),me=0;meEe[0].length)){if(Ee=Ae,Ge=me,this.options.backtrack_lexer){if(ie=this.test_match(Ae,Be[me]),ie!==!1)return ie;if(this._backtrack){Ee=!1;continue}else return!1}else if(!this.options.flex)break}return Ee?(ie=this.test_match(Ee,Be[Ge]),ie!==!1?ie:!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,Ge,Be){var me=Be;switch(Ge){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=ve;function U(){this.yy={}}return o(U,"Parser"),U.prototype=ne,ne.Parser=U,new U}();aO.parser=aO;Ohe=aO});var ps,EE,Bhe=M(()=>{"use strict";pr();bs();ut();i4();ps=vp(),EE=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:ps.quadrant1Fill,quadrant2Fill:ps.quadrant2Fill,quadrant3Fill:ps.quadrant3Fill,quadrant4Fill:ps.quadrant4Fill,quadrant1TextFill:ps.quadrant1TextFill,quadrant2TextFill:ps.quadrant2TextFill,quadrant3TextFill:ps.quadrant3TextFill,quadrant4TextFill:ps.quadrant4TextFill,quadrantPointFill:ps.quadrantPointFill,quadrantPointTextFill:ps.quadrantPointTextFill,quadrantXAxisTextFill:ps.quadrantXAxisTextFill,quadrantYAxisTextFill:ps.quadrantYAxisTextFill,quadrantTitleFill:ps.quadrantTitleFill,quadrantInternalBorderStrokeFill:ps.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:ps.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=Cl().domain([0,1]).range([i,s+i]),u=Cl().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 sO(t){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(t)}function Fhe(t){return!/^\d+$/.test(t)}function zhe(t){return!/^\d+px$/.test(t)}var R0,Ghe=M(()=>{"use strict";R0=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(sO,"validateHexCode");o(Fhe,"validateNumber");o(zhe,"validateSizeInPixels")});function th(t){return kr(t.trim(),lVe)}function cVe(t){Ea.setData({quadrant1Text:th(t.text)})}function uVe(t){Ea.setData({quadrant2Text:th(t.text)})}function hVe(t){Ea.setData({quadrant3Text:th(t.text)})}function fVe(t){Ea.setData({quadrant4Text:th(t.text)})}function dVe(t){Ea.setData({xAxisLeftText:th(t.text)})}function pVe(t){Ea.setData({xAxisRightText:th(t.text)})}function mVe(t){Ea.setData({yAxisTopText:th(t.text)})}function gVe(t){Ea.setData({yAxisBottomText:th(t.text)})}function oO(t){let e={};for(let r of t){let[n,i]=r.trim().split(/\s*:\s*/);if(n==="radius"){if(Fhe(i))throw new R0(n,i,"number");e.radius=parseInt(i)}else if(n==="color"){if(sO(i))throw new R0(n,i,"hex code");e.color=i}else if(n==="stroke-color"){if(sO(i))throw new R0(n,i,"hex code");e.strokeColor=i}else if(n==="stroke-width"){if(zhe(i))throw new R0(n,i,"number of pixels (eg. 10px)");e.strokeWidth=i}else throw new Error(`style named ${n} is not supported.`)}return e}function yVe(t,e,r,n,i){let a=oO(i);Ea.addPoints([{x:r,y:n,text:th(t.text),className:e,...a}])}function vVe(t,e){Ea.addClass(t,oO(e))}function xVe(t){Ea.setConfig({chartWidth:t})}function bVe(t){Ea.setConfig({chartHeight:t})}function wVe(){let t=pe(),{themeVariables:e,quadrantChart:r}=t;return r&&Ea.setConfig(r),Ea.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}),Ea.setData({titleText:Jr()}),Ea.build()}var lVe,Ea,TVe,$he,Vhe=M(()=>{"use strict";Vt();fr();Ai();Bhe();Ghe();lVe=pe();o(th,"textSanitizer");Ea=new EE;o(cVe,"setQuadrant1Text");o(uVe,"setQuadrant2Text");o(hVe,"setQuadrant3Text");o(fVe,"setQuadrant4Text");o(dVe,"setXAxisLeftText");o(pVe,"setXAxisRightText");o(mVe,"setYAxisTopText");o(gVe,"setYAxisBottomText");o(oO,"parseStyles");o(yVe,"addPoint");o(vVe,"addClass");o(xVe,"setWidth");o(bVe,"setHeight");o(wVe,"getQuadrantData");TVe=o(function(){Ea.clear(),Lr()},"clear"),$he={setWidth:xVe,setHeight:bVe,setQuadrant1Text:cVe,setQuadrant2Text:uVe,setQuadrant3Text:hVe,setQuadrant4Text:fVe,setXAxisLeftText:dVe,setXAxisRightText:pVe,setYAxisTopText:mVe,setYAxisBottomText:gVe,parseStyles:oO,addPoint:yVe,addClass:vVe,getQuadrantData:wVe,clear:TVe,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,getAccDescription:zr,setAccDescription:Fr}});var kVe,Uhe,Hhe=M(()=>{"use strict";pr();Vt();ut();ai();kVe=o((t,e,r,n)=>{function i(S){return S==="top"?"hanging":"middle"}o(i,"getDominantBaseLine");function a(S){return S==="left"?"start":"middle"}o(a,"getTextAnchor");function s(S){return`translate(${S.x}, ${S.y}) rotate(${S.rotation||0})`}o(s,"getTransformation");let l=pe();Y.debug(`Rendering quadrant chart +`+t);let u=l.securityLevel,h;u==="sandbox"&&(h=Ve("#i"+e));let d=(u==="sandbox"?Ve(h.nodes()[0].contentDocument.body):Ve("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",S=>S.x1).attr("y1",S=>S.y1).attr("x2",S=>S.x2).attr("y2",S=>S.y2).style("stroke",S=>S.strokeFill).style("stroke-width",S=>S.strokeWidth);let T=v.selectAll("g.quadrant").data(y.quadrants).enter().append("g").attr("class","quadrant");T.append("rect").attr("x",S=>S.x).attr("y",S=>S.y).attr("width",S=>S.width).attr("height",S=>S.height).attr("fill",S=>S.fill),T.append("text").attr("x",0).attr("y",0).attr("fill",S=>S.text.fill).attr("font-size",S=>S.text.fontSize).attr("dominant-baseline",S=>i(S.text.horizontalPos)).attr("text-anchor",S=>a(S.text.verticalPos)).attr("transform",S=>s(S.text)).text(S=>S.text.text),w.selectAll("g.label").data(y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(S=>S.text).attr("fill",S=>S.fill).attr("font-size",S=>S.fontSize).attr("dominant-baseline",S=>i(S.horizontalPos)).attr("text-anchor",S=>a(S.verticalPos)).attr("transform",S=>s(S));let L=b.selectAll("g.data-point").data(y.points).enter().append("g").attr("class","data-point");L.append("circle").attr("cx",S=>S.x).attr("cy",S=>S.y).attr("r",S=>S.radius).attr("fill",S=>S.fill).attr("stroke",S=>S.strokeColor).attr("stroke-width",S=>S.strokeWidth),L.append("text").attr("x",0).attr("y",0).text(S=>S.text.text).attr("fill",S=>S.text.fill).attr("font-size",S=>S.text.fontSize).attr("dominant-baseline",S=>i(S.text.horizontalPos)).attr("text-anchor",S=>a(S.text.verticalPos)).attr("transform",S=>s(S.text))},"draw"),Uhe={draw:kVe}});var Whe={};vr(Whe,{diagram:()=>EVe});var EVe,Yhe=M(()=>{"use strict";Phe();Vhe();Hhe();EVe={parser:Ohe,db:$he,renderer:Uhe,styles:o(()=>"","styles")}});var lO,jhe,Khe=M(()=>{"use strict";lO=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],S=[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,G,z,W){var Z=z.length-1;switch(G){case 5:B.setOrientation(z[Z]);break;case 9:B.setDiagramTitle(z[Z].text.trim());break;case 12:B.setLineData({text:"",type:"text"},z[Z]);break;case 13:B.setLineData(z[Z-1],z[Z]);break;case 14:B.setBarData({text:"",type:"text"},z[Z]);break;case 15:B.setBarData(z[Z-1],z[Z]);break;case 16:this.$=z[Z].trim(),B.setAccTitle(this.$);break;case 17:case 18:this.$=z[Z].trim(),B.setAccDescription(this.$);break;case 19:this.$=z[Z-1];break;case 20:this.$=[Number(z[Z-2]),...z[Z]];break;case 21:this.$=[Number(z[Z])];break;case 22:B.setXAxisTitle(z[Z]);break;case 23:B.setXAxisTitle(z[Z-1]);break;case 24:B.setXAxisTitle({type:"text",text:""});break;case 25:B.setXAxisBand(z[Z]);break;case 26:B.setXAxisRangeData(Number(z[Z-2]),Number(z[Z]));break;case 27:this.$=z[Z-1];break;case 28:this.$=[z[Z-2],...z[Z]];break;case 29:this.$=[z[Z]];break;case 30:B.setYAxisTitle(z[Z]);break;case 31:B.setYAxisTitle(z[Z-1]);break;case 32:B.setYAxisTitle({type:"text",text:""});break;case 33:B.setYAxisRangeData(Number(z[Z-2]),Number(z[Z]));break;case 37:this.$={text:z[Z],type:"text"};break;case 38:this.$={text:z[Z],type:"text"};break;case 39:this.$={text:z[Z],type:"markdown"};break;case 40:this.$=z[Z];break;case 41:this.$=z[Z-1]+""+z[Z];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(S,[2,18]),{1:[2,2]},t(S,[2,8]),t(S,[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(S,[2,10]),t(S,[2,22],{30:41,29:56,24:_,27:T}),t(S,[2,24]),t(S,[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(S,[2,11]),t(S,[2,30],{33:60,27:E}),t(S,[2,32]),{31:[1,61]},t(S,[2,12]),{17:62,24:L},{25:63,27:D},t(S,[2,14]),{17:65,24:L},t(S,[2,16]),t(S,[2,17]),t(I,[2,41]),t(S,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(S,[2,31]),{27:[1,69]},t(S,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(S,[2,15]),t(S,[2,26]),t(S,[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(S,[2,33]),t(S,[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=[],G=[null],z=[],W=this.table,Z="",j=0,oe=0,K=0,ee=2,J=1,H=z.slice.call(arguments,1),q=Object.create(this.lexer),Q={yy:{}};for(var ae in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ae)&&(Q.yy[ae]=this.yy[ae]);q.setInput(N,Q.yy),Q.yy.lexer=q,Q.yy.parser=this,typeof q.yylloc>"u"&&(q.yylloc={});var ue=q.yylloc;z.push(ue);var ce=q.options&&q.options.ranges;typeof Q.yy.parseError=="function"?this.parseError=Q.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function te(ne){F.length=F.length-2*ne,G.length=G.length-ne,z.length=z.length-ne}o(te,"popStack");function Ne(){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(Ne,"lex");for(var se,ke,Re,Ce,Pe,Ie,$e={},ye,X,fe,he;;){if(Re=F[F.length-1],this.defaultActions[Re]?Ce=this.defaultActions[Re]:((se===null||typeof se>"u")&&(se=Ne()),Ce=W[Re]&&W[Re][se]),typeof Ce>"u"||!Ce.length||!Ce[0]){var ge="";he=[];for(ye in W[Re])this.terminals_[ye]&&ye>ee&&he.push("'"+this.terminals_[ye]+"'");q.showPosition?ge="Parse error on line "+(j+1)+`: +`+q.showPosition()+` +Expecting `+he.join(", ")+", got '"+(this.terminals_[se]||se)+"'":ge="Parse error on line "+(j+1)+": Unexpected "+(se==J?"end of input":"'"+(this.terminals_[se]||se)+"'"),this.parseError(ge,{text:q.match,token:this.terminals_[se]||se,line:q.yylineno,loc:ue,expected:he})}if(Ce[0]instanceof Array&&Ce.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Re+", token: "+se);switch(Ce[0]){case 1:F.push(se),G.push(q.yytext),z.push(q.yylloc),F.push(Ce[1]),se=null,ke?(se=ke,ke=null):(oe=q.yyleng,Z=q.yytext,j=q.yylineno,ue=q.yylloc,K>0&&K--);break;case 2:if(X=this.productions_[Ce[1]][1],$e.$=G[G.length-X],$e._$={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&&($e._$.range=[z[z.length-(X||1)].range[0],z[z.length-1].range[1]]),Ie=this.performAction.apply($e,[Z,oe,j,Q.yy,Ce[1],G,z].concat(H)),typeof Ie<"u")return Ie;X&&(F=F.slice(0,-1*X*2),G=G.slice(0,-1*X),z=z.slice(0,-1*X)),F.push(this.productions_[Ce[1]][0]),G.push($e.$),z.push($e._$),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 G=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=[G[0],G[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,G;if(this.options.backtrack_lexer&&(G={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&&(G.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 G)this[z]=G[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 G=this._currentRules(),z=0;zP[0].length)){if(P=F,B=z,this.options.backtrack_lexer){if(N=this.test_match(F,G[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,G[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,G){var z=G;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 C(){this.yy={}}return o(C,"Parser"),C.prototype=k,k.Parser=C,new C}();lO.parser=lO;jhe=lO});function cO(t){return t.type==="bar"}function SE(t){return t.type==="band"}function qg(t){return t.type==="linear"}var CE=M(()=>{"use strict";o(cO,"isBarPlot");o(SE,"isBandAxisData");o(qg,"isLinearAxisData")});var Xg,uO=M(()=>{"use strict";Pl();Xg=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=dj(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 jg,hO=M(()=>{"use strict";jg=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 AE,Qhe=M(()=>{"use strict";pr();ut();hO();AE=class extends jg{static{o(this,"BandAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.categories=n,this.scale=Vp().domain(this.categories).range(this.getRange())}setRange(e){super.setRange(e)}recalculateScale(){this.scale=Vp().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 _E,Zhe=M(()=>{"use strict";pr();hO();_E=class extends jg{static{o(this,"LinearAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.domain=n,this.scale=Cl().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let e=[...this.domain];this.axisPosition==="left"&&e.reverse(),this.scale=Cl().domain(e).range(this.getRange())}getScaleValue(e){return this.scale(e)}}});function fO(t,e,r,n){let i=new Xg(n);return SE(t)?new AE(e,r,t.categories,t.title,i):new _E(e,r,[t.min,t.max],t.title,i)}var Jhe=M(()=>{"use strict";CE();uO();Qhe();Zhe();o(fO,"getAxis")});function efe(t,e,r,n){let i=new Xg(n);return new dO(i,t,e,r)}var dO,tfe=M(()=>{"use strict";uO();dO=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(efe,"getChartTitleComponent")});var LE,rfe=M(()=>{"use strict";pr();LE=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=ns().y(n=>n[0]).x(n=>n[1])(e):r=ns().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 DE,nfe=M(()=>{"use strict";DE=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 ife(t,e,r){return new pO(t,e,r)}var pO,afe=M(()=>{"use strict";rfe();nfe();pO=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 LE(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break;case"bar":{let i=new DE(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break}return e}};o(ife,"getPlotComponent")});var NE,sfe=M(()=>{"use strict";Jhe();tfe();afe();CE();NE=class{constructor(e,r,n,i){this.chartConfig=e;this.chartData=r;this.componentStore={title:efe(e,r,n,i),plot:ife(e,r,n),xAxis:fO(r.xAxis,e.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},i),yAxis:fO(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=>cO(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=>cO(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 RE,ofe=M(()=>{"use strict";sfe();RE=class{static{o(this,"XYChartBuilder")}static build(e,r,n,i){return new NE(e,r,n,i).getDrawableElement()}}});function cfe(){let t=vp(),e=Cr();return Ds(t.xyChart,e.themeVariables.xyChart)}function ufe(){let t=Cr();return Ds(ur.xyChart,t.xyChart)}function hfe(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function yO(t){let e=Cr();return kr(t.trim(),e)}function _Ve(t){lfe=t}function LVe(t){t==="horizontal"?Dx.chartOrientation="horizontal":Dx.chartOrientation="vertical"}function DVe(t){hn.xAxis.title=yO(t.text)}function ffe(t,e){hn.xAxis={type:"linear",title:hn.xAxis.title,min:t,max:e},ME=!0}function NVe(t){hn.xAxis={type:"band",title:hn.xAxis.title,categories:t.map(e=>yO(e.text))},ME=!0}function RVe(t){hn.yAxis.title=yO(t.text)}function MVe(t,e){hn.yAxis={type:"linear",title:hn.yAxis.title,min:t,max:e},gO=!0}function IVe(t){let e=Math.min(...t),r=Math.max(...t),n=qg(hn.yAxis)?hn.yAxis.min:1/0,i=qg(hn.yAxis)?hn.yAxis.max:-1/0;hn.yAxis={type:"linear",title:hn.yAxis.title,min:Math.min(n,e),max:Math.max(i,r)}}function dfe(t){let e=[];if(t.length===0)return e;if(!ME){let r=qg(hn.xAxis)?hn.xAxis.min:1/0,n=qg(hn.xAxis)?hn.xAxis.max:-1/0;ffe(Math.min(r,1),Math.max(n,t.length))}if(gO||IVe(t),SE(hn.xAxis)&&(e=hn.xAxis.categories.map((r,n)=>[r,t[n]])),qg(hn.xAxis)){let r=hn.xAxis.min,n=hn.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 pfe(t){return mO[t===0?0:t%mO.length]}function OVe(t,e){let r=dfe(e);hn.plots.push({type:"line",strokeFill:pfe(Lx),strokeWidth:2,data:r}),Lx++}function PVe(t,e){let r=dfe(e);hn.plots.push({type:"bar",fill:pfe(Lx),data:r}),Lx++}function BVe(){if(hn.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return hn.title=Jr(),RE.build(Dx,hn,Nx,lfe)}function FVe(){return Nx}function zVe(){return Dx}var Lx,lfe,Dx,Nx,hn,mO,ME,gO,GVe,mfe,gfe=M(()=>{"use strict";Za();bs();i4();hr();fr();Ai();ofe();CE();Lx=0,Dx=ufe(),Nx=cfe(),hn=hfe(),mO=Nx.plotColorPalette.split(",").map(t=>t.trim()),ME=!1,gO=!1;o(cfe,"getChartDefaultThemeConfig");o(ufe,"getChartDefaultConfig");o(hfe,"getChartDefaultData");o(yO,"textSanitizer");o(_Ve,"setTmpSVGG");o(LVe,"setOrientation");o(DVe,"setXAxisTitle");o(ffe,"setXAxisRangeData");o(NVe,"setXAxisBand");o(RVe,"setYAxisTitle");o(MVe,"setYAxisRangeData");o(IVe,"setYAxisRangeFromPlotData");o(dfe,"transformDataWithoutCategory");o(pfe,"getPlotColorFromPalette");o(OVe,"setLineData");o(PVe,"setBarData");o(BVe,"getDrawableElem");o(FVe,"getChartThemeConfig");o(zVe,"getChartConfig");GVe=o(function(){Lr(),Lx=0,Dx=ufe(),hn=hfe(),Nx=cfe(),mO=Nx.plotColorPalette.split(",").map(t=>t.trim()),ME=!1,gO=!1},"clear"),mfe={getDrawableElem:BVe,clear:GVe,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,getAccDescription:zr,setAccDescription:Fr,setOrientation:LVe,setXAxisTitle:DVe,setXAxisRangeData:ffe,setXAxisBand:NVe,setYAxisTitle:RVe,setYAxisRangeData:MVe,setLineData:OVe,setBarData:PVe,setTmpSVGG:_Ve,getChartThemeConfig:FVe,getChartConfig:zVe}});var $Ve,yfe,vfe=M(()=>{"use strict";ut();eh();ai();$Ve=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=Va(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"),yfe={draw:$Ve}});var xfe={};vr(xfe,{diagram:()=>VVe});var VVe,bfe=M(()=>{"use strict";Khe();gfe();vfe();VVe={parser:jhe,db:mfe,renderer:yfe}});var vO,kfe,Efe=M(()=>{"use strict";vO=function(){var t=o(function(oe,K,ee,J){for(ee=ee||{},J=oe.length;J--;ee[oe[J]]=K);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],S=[1,52],A=[1,53],I=[53,54],D=[1,64],k=[1,60],R=[1,61],C=[1,62],O=[1,63],N=[1,65],P=[1,69],F=[1,70],B=[1,67],G=[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(K,ee,J,H,q,Q,ae){var ue=Q.length-1;switch(q){case 4:this.$=Q[ue].trim(),H.setAccTitle(this.$);break;case 5:case 6:this.$=Q[ue].trim(),H.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:H.addRequirement(Q[ue-3],Q[ue-4]);break;case 14:H.setNewReqId(Q[ue-2]);break;case 15:H.setNewReqText(Q[ue-2]);break;case 16:H.setNewReqRisk(Q[ue-2]);break;case 17:H.setNewReqVerifyMethod(Q[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(Q[ue-3]);break;case 34:H.setNewElementType(Q[ue-2]);break;case 35:H.setNewElementDocRef(Q[ue-2]);break;case 38:H.addRelationship(Q[ue-2],Q[ue],Q[ue-4]);break;case 39:H.addRelationship(Q[ue-2],Q[ue-4],Q[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:S,61:A},{52:54,55:w,56:_,57:T,58:E,59:L,60:S,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:C,28:O,30:N},{5:P,30:F,46:66,47:B,49:G},{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:C,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:G},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:C,28:O,30:N},{5:D,20:107,21:k,24:R,26:C,28:O,30:N},{5:D,20:108,21:k,24:R,26:C,28:O,30:N},{5:D,20:109,21:k,24:R,26:C,28:O,30:N},{5:P,30:F,46:110,47:B,49:G},{5:P,30:F,46:111,47:B,49:G},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(K,ee){if(ee.recoverable)this.trace(K);else{var J=new Error(K);throw J.hash=ee,J}},"parseError"),parse:o(function(K){var ee=this,J=[0],H=[],q=[null],Q=[],ae=this.table,ue="",ce=0,te=0,Ne=0,se=2,ke=1,Re=Q.slice.call(arguments,1),Ce=Object.create(this.lexer),Pe={yy:{}};for(var Ie in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ie)&&(Pe.yy[Ie]=this.yy[Ie]);Ce.setInput(K,Pe.yy),Pe.yy.lexer=Ce,Pe.yy.parser=this,typeof Ce.yylloc>"u"&&(Ce.yylloc={});var $e=Ce.yylloc;Q.push($e);var ye=Ce.options&&Ce.options.ranges;typeof Pe.yy.parseError=="function"?this.parseError=Pe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function X(He){J.length=J.length-2*He,q.length=q.length-He,Q.length=Q.length-He}o(X,"popStack");function fe(){var He;return He=H.pop()||Ce.lex()||ke,typeof He!="number"&&(He instanceof Array&&(H=He,He=H.pop()),He=ee.symbols_[He]||He),He}o(fe,"lex");for(var he,ge,ne,ve,U,Te,ie={},Ee,Ae,Ge,Be;;){if(ne=J[J.length-1],this.defaultActions[ne]?ve=this.defaultActions[ne]:((he===null||typeof he>"u")&&(he=fe()),ve=ae[ne]&&ae[ne][he]),typeof ve>"u"||!ve.length||!ve[0]){var me="";Be=[];for(Ee in ae[ne])this.terminals_[Ee]&&Ee>se&&Be.push("'"+this.terminals_[Ee]+"'");Ce.showPosition?me="Parse error on line "+(ce+1)+`: +`+Ce.showPosition()+` +Expecting `+Be.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:Ce.match,token:this.terminals_[he]||he,line:Ce.yylineno,loc:$e,expected:Be})}if(ve[0]instanceof Array&&ve.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ne+", token: "+he);switch(ve[0]){case 1:J.push(he),q.push(Ce.yytext),Q.push(Ce.yylloc),J.push(ve[1]),he=null,ge?(he=ge,ge=null):(te=Ce.yyleng,ue=Ce.yytext,ce=Ce.yylineno,$e=Ce.yylloc,Ne>0&&Ne--);break;case 2:if(Ae=this.productions_[ve[1]][1],ie.$=q[q.length-Ae],ie._$={first_line:Q[Q.length-(Ae||1)].first_line,last_line:Q[Q.length-1].last_line,first_column:Q[Q.length-(Ae||1)].first_column,last_column:Q[Q.length-1].last_column},ye&&(ie._$.range=[Q[Q.length-(Ae||1)].range[0],Q[Q.length-1].range[1]]),Te=this.performAction.apply(ie,[ue,te,ce,Pe.yy,ve[1],q,Q].concat(Re)),typeof Te<"u")return Te;Ae&&(J=J.slice(0,-1*Ae*2),q=q.slice(0,-1*Ae),Q=Q.slice(0,-1*Ae)),J.push(this.productions_[ve[1]][0]),q.push(ie.$),Q.push(ie._$),Ge=ae[J[J.length-2]][J[J.length-1]],J.push(Ge);break;case 3:return!0}}return!0},"parse")},Z=function(){var oe={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(K,ee){return this.yy=ee||this.yy||{},this._input=K,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 K=this._input[0];this.yytext+=K,this.yyleng++,this.offset++,this.match+=K,this.matched+=K;var ee=K.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),K},"input"),unput:o(function(K){var ee=K.length,J=K.split(/(?:\r\n?|\n)/g);this._input=K+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(K){this.unput(this.match.slice(K))},"less"),pastInput:o(function(){var K=this.matched.substr(0,this.matched.length-this.match.length);return(K.length>20?"...":"")+K.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var K=this.match;return K.length<20&&(K+=this._input.substr(0,20-K.length)),(K.substr(0,20)+(K.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var K=this.pastInput(),ee=new Array(K.length+1).join("-");return K+this.upcomingInput()+` +`+ee+"^"},"showPosition"),test_match:o(function(K,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=K[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+K[0].length},this.yytext+=K[0],this.match+=K[0],this.matches=K,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(K[0].length),this.matched+=K[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 Q in q)this[Q]=q[Q];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var K,ee,J,H;this._more||(this.yytext="",this.match="");for(var q=this._currentRules(),Q=0;Qee[0].length)){if(ee=J,H=Q,this.options.backtrack_lexer){if(K=this.test_match(J,q[Q]),K!==!1)return K;if(this._backtrack){ee=!1;continue}else return!1}else if(!this.options.flex)break}return ee?(K=this.test_match(ee,q[H]),K!==!1?K:!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 Q=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 oe}();W.lexer=Z;function j(){this.yy={}}return o(j,"Parser"),j.prototype=W,W.Parser=j,new j}();vO.parser=vO;kfe=vO});var xO,qs,Rx,Tf,Mx,YVe,qVe,XVe,jVe,KVe,QVe,ZVe,JVe,eUe,tUe,rUe,nUe,iUe,aUe,sUe,oUe,lUe,Sfe,Cfe=M(()=>{"use strict";Vt();ut();Ai();xO=[],qs={},Rx=new Map,Tf={},Mx=new Map,YVe={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},qVe={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},XVe={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},jVe={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},KVe=o((t,e)=>(Rx.has(t)||Rx.set(t,{name:t,type:e,id:qs.id,text:qs.text,risk:qs.risk,verifyMethod:qs.verifyMethod}),qs={},Rx.get(t)),"addRequirement"),QVe=o(()=>Rx,"getRequirements"),ZVe=o(t=>{qs!==void 0&&(qs.id=t)},"setNewReqId"),JVe=o(t=>{qs!==void 0&&(qs.text=t)},"setNewReqText"),eUe=o(t=>{qs!==void 0&&(qs.risk=t)},"setNewReqRisk"),tUe=o(t=>{qs!==void 0&&(qs.verifyMethod=t)},"setNewReqVerifyMethod"),rUe=o(t=>(Mx.has(t)||(Mx.set(t,{name:t,type:Tf.type,docRef:Tf.docRef}),Y.info("Added new requirement: ",t)),Tf={},Mx.get(t)),"addElement"),nUe=o(()=>Mx,"getElements"),iUe=o(t=>{Tf!==void 0&&(Tf.type=t)},"setNewElementType"),aUe=o(t=>{Tf!==void 0&&(Tf.docRef=t)},"setNewElementDocRef"),sUe=o((t,e,r)=>{xO.push({type:t,src:e,dst:r})},"addRelationship"),oUe=o(()=>xO,"getRelationships"),lUe=o(()=>{xO=[],qs={},Rx=new Map,Tf={},Mx=new Map,Lr()},"clear"),Sfe={RequirementType:YVe,RiskLevel:qVe,VerifyType:XVe,Relationships:jVe,getConfig:o(()=>pe().req,"getConfig"),addRequirement:KVe,getRequirements:QVe,setNewReqId:ZVe,setNewReqText:JVe,setNewReqRisk:eUe,setNewReqVerifyMethod:tUe,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addElement:rUe,getElements:nUe,setNewElementType:iUe,setNewElementDocRef:aUe,addRelationship:sUe,getRelationships:oUe,clear:lUe}});var cUe,Afe,_fe=M(()=>{"use strict";cUe=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"),Afe=cUe});var bO,uUe,wO,Lfe=M(()=>{"use strict";bO={CONTAINS:"contains",ARROW:"arrow"},uUe=o((t,e)=>{let r=t.append("defs").append("marker").attr("id",bO.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",bO.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"),wO={ReqMarkers:bO,insertLineEndings:uUe}});var hi,Dfe,Nfe,Rfe,Mfe,hUe,fUe,dUe,pUe,mUe,gUe,Kg,yUe,Ife,Ofe=M(()=>{"use strict";pr();Qv();Gs();Vt();ut();ai();fr();Lfe();hi={},Dfe=0,Nfe=o((t,e)=>t.insert("rect","#"+e).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",hi.rect_min_width+"px").attr("height",hi.rect_min_height+"px"),"newRectNode"),Rfe=o((t,e,r)=>{let n=hi.rect_min_width/2,i=t.append("text").attr("class","req reqLabel reqTitle").attr("id",e).attr("x",n).attr("y",hi.rect_padding).attr("dominant-baseline","hanging"),a=0;r.forEach(h=>{a==0?i.append("tspan").attr("text-anchor","middle").attr("x",hi.rect_min_width/2).attr("dy",0).text(h):i.append("tspan").attr("text-anchor","middle").attr("x",hi.rect_min_width/2).attr("dy",hi.line_height*.75).text(h),a++});let s=1.5*hi.rect_padding,l=a*hi.line_height*.75,u=s+l;return t.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",hi.rect_min_width).attr("y1",u).attr("y2",u),{titleNode:i,y:u}},"newTitleNode"),Mfe=o((t,e,r,n)=>{let i=t.append("text").attr("class","req reqLabel").attr("id",e).attr("x",hi.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",hi.rect_padding).attr("dy",hi.line_height).text(u)}),i},"newBodyNode"),hUe=o((t,e,r,n)=>{let i=e.node().getTotalLength(),a=e.node().getPointAtLength(i*.5),s="rel"+Dfe;Dfe++;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"),fUe=o(function(t,e,r,n,i){let a=r.edge(Kg(e.src),Kg(e.dst)),s=ns().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("+qe.getUrl(hi.arrowMarkerAbsolute)+"#"+e.type+"_line_ending)"):(l.attr("stroke-dasharray","10,7"),l.attr("marker-end","url("+qe.getUrl(hi.arrowMarkerAbsolute)+"#"+wO.ReqMarkers.ARROW+"_line_ending)")),hUe(t,l,hi,`<<${e.type}>>`)},"drawRelationshipFromLayout"),dUe=o((t,e,r)=>{t.forEach((n,i)=>{i=Kg(i),Y.info("Added new requirement: ",i);let a=r.append("g").attr("id",i),s="req-"+i,l=Nfe(a,s),u=[],h=Rfe(a,i+"_title",[`<<${n.type}>>`,`${n.name}`]);u.push(h.titleNode);let f=Mfe(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"),pUe=o((t,e,r)=>{t.forEach((n,i)=>{let a=Kg(i),s=r.append("g").attr("id",a),l="element-"+a,u=Nfe(s,l),h=[],f=Rfe(s,l+"_title",["<>",`${i}`]);h.push(f.titleNode);let d=Mfe(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"),mUe=o((t,e)=>(t.forEach(function(r){let n=Kg(r.src),i=Kg(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"),Kg=o(t=>t.replace(/\s/g,"").replace(/\./g,"_"),"elementString"),yUe=o((t,e,r,n)=>{hi=pe().requirement;let i=hi.securityLevel,a;i==="sandbox"&&(a=Ve("#i"+e));let l=(i==="sandbox"?Ve(a.nodes()[0].contentDocument.body):Ve("body")).select(`[id='${e}']`);wO.insertLineEndings(l,hi);let u=new Ir({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:hi.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();dUe(h,u,l),pUe(f,u,l),mUe(d,u),Gu(u),gUe(l,u),d.forEach(function(v){fUe(l,v,u,e,n)});let p=hi.rect_padding,m=l.node().getBBox(),g=m.width+p*2,y=m.height+p*2;Zr(l,y,g,hi.useMaxWidth),l.attr("viewBox",`${m.x-p} ${m.y-p} ${g} ${y}`)},"draw"),Ife={draw:yUe}});var Pfe={};vr(Pfe,{diagram:()=>vUe});var vUe,Bfe=M(()=>{"use strict";Efe();Cfe();_fe();Ofe();vUe={parser:kfe,db:Sfe,renderer:Ife,styles:Afe}});var TO,Gfe,$fe=M(()=>{"use strict";TO=function(){var t=o(function(H,q,Q,ae){for(Q=Q||{},ae=H.length;ae--;Q[H[ae]]=q);return Q},"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],S=[1,36],A=[1,37],I=[1,38],D=[1,39],k=[1,41],R=[1,42],C=[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],G=[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],Z=[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],j=[68,69,70],oe=[1,122],K={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,Q,ae,ue,ce,te,Ne){var se=te.length-1;switch(ce){case 3:return ue.apply(te[se]),te[se];break;case 4:case 9:this.$=[];break;case 5:case 10:te[se-1].push(te[se]),this.$=te[se-1];break;case 6:case 7:case 11:case 12:this.$=te[se];break;case 8:case 13:this.$=[];break;case 15:te[se].type="createParticipant",this.$=te[se];break;case 16:te[se-1].unshift({type:"boxStart",boxData:ue.parseBoxData(te[se-2])}),te[se-1].push({type:"boxEnd",boxText:te[se-2]}),this.$=te[se-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(te[se-2]),sequenceIndexStep:Number(te[se-1]),sequenceVisible:!0,signalType:ue.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(te[se-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[se-1].actor};break;case 23:this.$={type:"activeEnd",signalType:ue.LINETYPE.ACTIVE_END,actor:te[se-1].actor};break;case 29:ue.setDiagramTitle(te[se].substring(6)),this.$=te[se].substring(6);break;case 30:ue.setDiagramTitle(te[se].substring(7)),this.$=te[se].substring(7);break;case 31:this.$=te[se].trim(),ue.setAccTitle(this.$);break;case 32:case 33:this.$=te[se].trim(),ue.setAccDescription(this.$);break;case 34:te[se-1].unshift({type:"loopStart",loopText:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.LOOP_START}),te[se-1].push({type:"loopEnd",loopText:te[se-2],signalType:ue.LINETYPE.LOOP_END}),this.$=te[se-1];break;case 35:te[se-1].unshift({type:"rectStart",color:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.RECT_START}),te[se-1].push({type:"rectEnd",color:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.RECT_END}),this.$=te[se-1];break;case 36:te[se-1].unshift({type:"optStart",optText:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.OPT_START}),te[se-1].push({type:"optEnd",optText:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.OPT_END}),this.$=te[se-1];break;case 37:te[se-1].unshift({type:"altStart",altText:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.ALT_START}),te[se-1].push({type:"altEnd",signalType:ue.LINETYPE.ALT_END}),this.$=te[se-1];break;case 38:te[se-1].unshift({type:"parStart",parText:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.PAR_START}),te[se-1].push({type:"parEnd",signalType:ue.LINETYPE.PAR_END}),this.$=te[se-1];break;case 39:te[se-1].unshift({type:"parStart",parText:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.PAR_OVER_START}),te[se-1].push({type:"parEnd",signalType:ue.LINETYPE.PAR_END}),this.$=te[se-1];break;case 40:te[se-1].unshift({type:"criticalStart",criticalText:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.CRITICAL_START}),te[se-1].push({type:"criticalEnd",signalType:ue.LINETYPE.CRITICAL_END}),this.$=te[se-1];break;case 41:te[se-1].unshift({type:"breakStart",breakText:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.BREAK_START}),te[se-1].push({type:"breakEnd",optText:ue.parseMessage(te[se-2]),signalType:ue.LINETYPE.BREAK_END}),this.$=te[se-1];break;case 43:this.$=te[se-3].concat([{type:"option",optionText:ue.parseMessage(te[se-1]),signalType:ue.LINETYPE.CRITICAL_OPTION},te[se]]);break;case 45:this.$=te[se-3].concat([{type:"and",parText:ue.parseMessage(te[se-1]),signalType:ue.LINETYPE.PAR_AND},te[se]]);break;case 47:this.$=te[se-3].concat([{type:"else",altText:ue.parseMessage(te[se-1]),signalType:ue.LINETYPE.ALT_ELSE},te[se]]);break;case 48:te[se-3].draw="participant",te[se-3].type="addParticipant",te[se-3].description=ue.parseMessage(te[se-1]),this.$=te[se-3];break;case 49:te[se-1].draw="participant",te[se-1].type="addParticipant",this.$=te[se-1];break;case 50:te[se-3].draw="actor",te[se-3].type="addParticipant",te[se-3].description=ue.parseMessage(te[se-1]),this.$=te[se-3];break;case 51:te[se-1].draw="actor",te[se-1].type="addParticipant",this.$=te[se-1];break;case 52:te[se-1].type="destroyParticipant",this.$=te[se-1];break;case 53:this.$=[te[se-1],{type:"addNote",placement:te[se-2],actor:te[se-1].actor,text:te[se]}];break;case 54:te[se-2]=[].concat(te[se-1],te[se-1]).slice(0,2),te[se-2][0]=te[se-2][0].actor,te[se-2][1]=te[se-2][1].actor,this.$=[te[se-1],{type:"addNote",placement:ue.PLACEMENT.OVER,actor:te[se-2].slice(0,2),text:te[se]}];break;case 55:this.$=[te[se-1],{type:"addLinks",actor:te[se-1].actor,text:te[se]}];break;case 56:this.$=[te[se-1],{type:"addALink",actor:te[se-1].actor,text:te[se]}];break;case 57:this.$=[te[se-1],{type:"addProperties",actor:te[se-1].actor,text:te[se]}];break;case 58:this.$=[te[se-1],{type:"addDetails",actor:te[se-1].actor,text:te[se]}];break;case 61:this.$=[te[se-2],te[se]];break;case 62:this.$=te[se];break;case 63:this.$=ue.PLACEMENT.LEFTOF;break;case 64:this.$=ue.PLACEMENT.RIGHTOF;break;case 65:this.$=[te[se-4],te[se-1],{type:"addMessage",from:te[se-4].actor,to:te[se-1].actor,signalType:te[se-3],msg:te[se],activate:!0},{type:"activeStart",signalType:ue.LINETYPE.ACTIVE_START,actor:te[se-1].actor}];break;case 66:this.$=[te[se-4],te[se-1],{type:"addMessage",from:te[se-4].actor,to:te[se-1].actor,signalType:te[se-3],msg:te[se]},{type:"activeEnd",signalType:ue.LINETYPE.ACTIVE_END,actor:te[se-4].actor}];break;case 67:this.$=[te[se-3],te[se-1],{type:"addMessage",from:te[se-3].actor,to:te[se-1].actor,signalType:te[se-2],msg:te[se]}];break;case 68:this.$={type:"addParticipant",actor:te[se]};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[se].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:S,50:A,52:I,53:D,54:k,59:R,60:C,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:S,50:A,52:I,53:D,54:k,59:R,60:C,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(G,i,{7:99}),t(G,i,{7:100}),t(G,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(Z,i,{45:107,7:108}),t(G,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(j,[2,69]),t(j,[2,70]),t(j,[2,71]),t(j,[2,72]),t(j,[2,73]),t(j,[2,74]),t(j,[2,75]),t(j,[2,76]),t(j,[2,77]),t(j,[2,78]),{22:118,70:P},{22:120,58:119,70:P},{70:[2,63]},{70:[2,64]},{56:121,81:oe},{56:123,81:oe},{56:124,81:oe},{56:125,81:oe},{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:S,50:A,52:I,53:D,54:k,59:R,60:C,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:S,50:A,52:I,53:D,54:k,59:R,60:C,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:S,50:A,52:I,53:D,54:k,59:R,60:C,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:S,49:[1,136],50:A,52:I,53:D,54:k,59:R,60:C,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:S,48:[1,138],50:A,52:I,53:D,54:k,59:R,60:C,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:S,47:[1,141],50:A,52:I,53:D,54:k,59:R,60:C,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:S,50:A,52:I,53:D,54:k,59:R,60:C,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:oe},{56:148,81:oe},{56:149,81:oe},{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:oe},{56:158,81:oe},{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(Z,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,Q){if(Q.recoverable)this.trace(q);else{var ae=new Error(q);throw ae.hash=Q,ae}},"parseError"),parse:o(function(q){var Q=this,ae=[0],ue=[],ce=[null],te=[],Ne=this.table,se="",ke=0,Re=0,Ce=0,Pe=2,Ie=1,$e=te.slice.call(arguments,1),ye=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]);ye.setInput(q,X.yy),X.yy.lexer=ye,X.yy.parser=this,typeof ye.yylloc>"u"&&(ye.yylloc={});var he=ye.yylloc;te.push(he);var ge=ye.options&&ye.options.ranges;typeof X.yy.parseError=="function"?this.parseError=X.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ne(kt){ae.length=ae.length-2*kt,ce.length=ce.length-kt,te.length=te.length-kt}o(ne,"popStack");function ve(){var kt;return kt=ue.pop()||ye.lex()||Ie,typeof kt!="number"&&(kt instanceof Array&&(ue=kt,kt=ue.pop()),kt=Q.symbols_[kt]||kt),kt}o(ve,"lex");for(var U,Te,ie,Ee,Ae,Ge,Be={},me,He,Oe,et;;){if(ie=ae[ae.length-1],this.defaultActions[ie]?Ee=this.defaultActions[ie]:((U===null||typeof U>"u")&&(U=ve()),Ee=Ne[ie]&&Ne[ie][U]),typeof Ee>"u"||!Ee.length||!Ee[0]){var bt="";et=[];for(me in Ne[ie])this.terminals_[me]&&me>Pe&&et.push("'"+this.terminals_[me]+"'");ye.showPosition?bt="Parse error on line "+(ke+1)+`: +`+ye.showPosition()+` +Expecting `+et.join(", ")+", got '"+(this.terminals_[U]||U)+"'":bt="Parse error on line "+(ke+1)+": Unexpected "+(U==Ie?"end of input":"'"+(this.terminals_[U]||U)+"'"),this.parseError(bt,{text:ye.match,token:this.terminals_[U]||U,line:ye.yylineno,loc:he,expected:et})}if(Ee[0]instanceof Array&&Ee.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ie+", token: "+U);switch(Ee[0]){case 1:ae.push(U),ce.push(ye.yytext),te.push(ye.yylloc),ae.push(Ee[1]),U=null,Te?(U=Te,Te=null):(Re=ye.yyleng,se=ye.yytext,ke=ye.yylineno,he=ye.yylloc,Ce>0&&Ce--);break;case 2:if(He=this.productions_[Ee[1]][1],Be.$=ce[ce.length-He],Be._$={first_line:te[te.length-(He||1)].first_line,last_line:te[te.length-1].last_line,first_column:te[te.length-(He||1)].first_column,last_column:te[te.length-1].last_column},ge&&(Be._$.range=[te[te.length-(He||1)].range[0],te[te.length-1].range[1]]),Ge=this.performAction.apply(Be,[se,Re,ke,X.yy,Ee[1],ce,te].concat($e)),typeof Ge<"u")return Ge;He&&(ae=ae.slice(0,-1*He*2),ce=ce.slice(0,-1*He),te=te.slice(0,-1*He)),ae.push(this.productions_[Ee[1]][0]),ce.push(Be.$),te.push(Be._$),Oe=Ne[ae[ae.length-2]][ae[ae.length-1]],ae.push(Oe);break;case 3:return!0}}return!0},"parse")},ee=function(){var H={EOF:1,parseError:o(function(Q,ae){if(this.yy.parser)this.yy.parser.parseError(Q,ae);else throw new Error(Q)},"parseError"),setInput:o(function(q,Q){return this.yy=Q||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 Q=q.match(/(?:\r\n?|\n).*/g);return Q?(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 Q=q.length,ae=q.split(/(?:\r\n?|\n)/g);this._input=q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Q),this.offset-=Q;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-Q},this.options.ranges&&(this.yylloc.range=[ce[0],ce[0]+this.yyleng-Q]),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(),Q=new Array(q.length+1).join("-");return q+this.upcomingInput()+` +`+Q+"^"},"showPosition"),test_match:o(function(q,Q){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,Q,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,Q,ae,ue;this._more||(this.yytext="",this.match="");for(var ce=this._currentRules(),te=0;teQ[0].length)){if(Q=ae,ue=te,this.options.backtrack_lexer){if(q=this.test_match(ae,ce[te]),q!==!1)return q;if(this._backtrack){Q=!1;continue}else return!1}else if(!this.options.flex)break}return Q?(q=this.test_match(Q,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 Q=this.next();return Q||this.lex()},"lex"),begin:o(function(Q){this.conditionStack.push(Q)},"begin"),popState:o(function(){var Q=this.conditionStack.length-1;return Q>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(Q){return Q=this.conditionStack.length-1-Math.abs(Q||0),Q>=0?this.conditionStack[Q]:"INITIAL"},"topState"),pushState:o(function(Q){this.begin(Q)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(Q,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}();K.lexer=ee;function J(){this.yy={}}return o(J,"Parser"),J.prototype=K,K.Parser=J,new J}();TO.parser=TO;Gfe=TO});function EO(t,e){if(t.links==null)t.links=e;else for(let r in e)t.links[r]=e[r]}function Yfe(t,e){if(t.properties==null)t.properties=e;else for(let r in e)t.properties[r]=e[r]}function UUe(){$t.records.currentBox=void 0}var $t,TUe,kO,kUe,EUe,wi,SUe,CUe,AUe,_Ue,LUe,DUe,NUe,Ox,RUe,MUe,IUe,OUe,PUe,Vfe,M0,BUe,FUe,zUe,Ix,GUe,$Ue,Ufe,Hfe,VUe,Wfe,qfe,HUe,Xfe,SO,jfe=M(()=>{"use strict";Vt();ut();dE();fr();Ai();$t=new vf(()=>({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})),TUe=o(function(t){$t.records.boxes.push({name:t.text,wrap:t.wrap??M0(),fill:t.color,actorKeys:[]}),$t.records.currentBox=$t.records.boxes.slice(-1)[0]},"addBox"),kO=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??M0(),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"),kUe=o(t=>{let e,r=0;if(!t)return 0;for(e=0;e<$t.records.messages.length;e++)$t.records.messages[e].type===Ix.ACTIVE_START&&$t.records.messages[e].from===t&&r++,$t.records.messages[e].type===Ix.ACTIVE_END&&$t.records.messages[e].from===t&&r--;return r},"activationCount"),EUe=o(function(t,e,r,n){$t.records.messages.push({from:t,to:e,message:r.text,wrap:r.wrap??M0(),answer:n})},"addMessage"),wi=o(function(t,e,r,n,i=!1){if(n===Ix.ACTIVE_END&&kUe(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??M0(),type:n,activate:i}),!0},"addSignal"),SUe=o(function(){return $t.records.boxes.length>0},"hasAtLeastOneBox"),CUe=o(function(){return $t.records.boxes.some(t=>t.name)},"hasAtLeastOneBoxWithTitle"),AUe=o(function(){return $t.records.messages},"getMessages"),_Ue=o(function(){return $t.records.boxes},"getBoxes"),LUe=o(function(){return $t.records.actors},"getActors"),DUe=o(function(){return $t.records.createdActors},"getCreatedActors"),NUe=o(function(){return $t.records.destroyedActors},"getDestroyedActors"),Ox=o(function(t){return $t.records.actors.get(t)},"getActor"),RUe=o(function(){return[...$t.records.actors.keys()]},"getActorKeys"),MUe=o(function(){$t.records.sequenceNumbersEnabled=!0},"enableSequenceNumbers"),IUe=o(function(){$t.records.sequenceNumbersEnabled=!1},"disableSequenceNumbers"),OUe=o(()=>$t.records.sequenceNumbersEnabled,"showSequenceNumbers"),PUe=o(function(t){$t.records.wrapEnabled=t},"setWrap"),Vfe=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"),M0=o(()=>$t.records.wrapEnabled!==void 0?$t.records.wrapEnabled:pe().sequence?.wrap??!1,"autoWrap"),BUe=o(function(){$t.reset(),Lr()},"clear"),FUe=o(function(t){let e=t.trim(),{wrap:r,cleanedText:n}=Vfe(e),i={text:n,wrap:r};return Y.debug(`parseMessage: ${JSON.stringify(i)}`),i},"parseMessage"),zUe=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}=Vfe(n);return{text:a?kr(a,pe()):void 0,color:r,wrap:i}},"parseBoxData"),Ix={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},GUe={FILLED:0,OPEN:1},$Ue={LEFTOF:0,RIGHTOF:1,OVER:2},Ufe=o(function(t,e,r){let n={actor:t,placement:e,message:r.text,wrap:r.wrap??M0()},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??M0(),type:Ix.NOTE,placement:e})},"addNote"),Hfe=o(function(t,e){let r=Ox(t);try{let n=kr(e.text,pe());n=n.replace(/&/g,"&"),n=n.replace(/=/g,"=");let i=JSON.parse(n);EO(r,i)}catch(n){Y.error("error while parsing actor link text",n)}},"addLinks"),VUe=o(function(t,e){let r=Ox(t);try{let n={},i=kr(e.text,pe()),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,EO(r,n)}catch(n){Y.error("error while parsing actor link text",n)}},"addALink");o(EO,"insertLinks");Wfe=o(function(t,e){let r=Ox(t);try{let n=kr(e.text,pe()),i=JSON.parse(n);Yfe(r,i)}catch(n){Y.error("error while parsing actor properties text",n)}},"addProperties");o(Yfe,"insertProperties");o(UUe,"boxEnd");qfe=o(function(t,e){let r=Ox(t),n=document.getElementById(e.text);try{let i=n.innerHTML,a=JSON.parse(i);a.properties&&Yfe(r,a.properties),a.links&&EO(r,a.links)}catch(i){Y.error("error while parsing actor details text",i)}},"addDetails"),HUe=o(function(t,e){if(t?.properties!==void 0)return t.properties[e]},"getActorProperty"),Xfe=o(function(t){if(Array.isArray(t))t.forEach(function(e){Xfe(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":kO(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,kO(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":wi(t.actor,void 0,void 0,t.signalType);break;case"activeEnd":wi(t.actor,void 0,void 0,t.signalType);break;case"addNote":Ufe(t.actor,t.placement,t.text);break;case"addLinks":Hfe(t.actor,t.text);break;case"addALink":VUe(t.actor,t.text);break;case"addProperties":Wfe(t.actor,t.text);break;case"addDetails":qfe(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}wi(t.from,t.to,t.msg,t.signalType,t.activate);break;case"boxStart":TUe(t.boxData);break;case"boxEnd":UUe();break;case"loopStart":wi(void 0,void 0,t.loopText,t.signalType);break;case"loopEnd":wi(void 0,void 0,void 0,t.signalType);break;case"rectStart":wi(void 0,void 0,t.color,t.signalType);break;case"rectEnd":wi(void 0,void 0,void 0,t.signalType);break;case"optStart":wi(void 0,void 0,t.optText,t.signalType);break;case"optEnd":wi(void 0,void 0,void 0,t.signalType);break;case"altStart":wi(void 0,void 0,t.altText,t.signalType);break;case"else":wi(void 0,void 0,t.altText,t.signalType);break;case"altEnd":wi(void 0,void 0,void 0,t.signalType);break;case"setAccTitle":Mr(t.text);break;case"parStart":wi(void 0,void 0,t.parText,t.signalType);break;case"and":wi(void 0,void 0,t.parText,t.signalType);break;case"parEnd":wi(void 0,void 0,void 0,t.signalType);break;case"criticalStart":wi(void 0,void 0,t.criticalText,t.signalType);break;case"option":wi(void 0,void 0,t.optionText,t.signalType);break;case"criticalEnd":wi(void 0,void 0,void 0,t.signalType);break;case"breakStart":wi(void 0,void 0,t.breakText,t.signalType);break;case"breakEnd":wi(void 0,void 0,void 0,t.signalType);break}},"apply"),SO={addActor:kO,addMessage:EUe,addSignal:wi,addLinks:Hfe,addDetails:qfe,addProperties:Wfe,autoWrap:M0,setWrap:PUe,enableSequenceNumbers:MUe,disableSequenceNumbers:IUe,showSequenceNumbers:OUe,getMessages:AUe,getActors:LUe,getCreatedActors:DUe,getDestroyedActors:NUe,getActor:Ox,getActorKeys:RUe,getActorProperty:HUe,getAccTitle:Br,getBoxes:_Ue,getDiagramTitle:Jr,setDiagramTitle:cn,getConfig:o(()=>pe().sequence,"getConfig"),clear:BUe,parseMessage:FUe,parseBoxData:zUe,LINETYPE:Ix,ARROWTYPE:GUe,PLACEMENT:$Ue,addNote:Ufe,setAccTitle:Mr,apply:Xfe,setAccDescription:Fr,getAccDescription:zr,hasAtLeastOneBox:SUe,hasAtLeastOneBoxWithTitle:CUe}});var WUe,Kfe,Qfe=M(()=>{"use strict";WUe=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"),Kfe=WUe});var CO,kf,Jfe,ede,YUe,Zfe,AO,qUe,XUe,Px,I0,tde,Xc,_O,jUe,KUe,QUe,ZUe,JUe,eHe,tHe,rde,rHe,nHe,iHe,aHe,sHe,oHe,lHe,nde,cHe,LO,uHe,fi,ide=M(()=>{"use strict";fr();lv();hr();CO=Ji(Qp(),1);Za();kf=18*2,Jfe="actor-top",ede="actor-bottom",YUe="actor-box",Zfe="actor-man",AO=o(function(t,e){return Sd(t,e)},"drawRect"),qUe=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,CO.sanitizeUrl)(a[v]);g.attr("xlink:href",y),g.attr("target","_blank"),uHe(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"),XUe=o(function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),Px=o(async function(t,e,r=null){let n=t.append("foreignObject"),i=await bh(e.text,Cr()),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"),I0=o(function(t,e){let r=0,n=0,i=e.text.split(qe.lineBreakRegex),[a,s]=Ho(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||Z_;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"),tde=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,I0(t,e),n},"drawLabel"),Xc=-1,_O=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"),jUe=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||(Xc++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",XUe(`actor${Xc}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Xc).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=Xc,e.links!=null&&u.attr("id","root-"+Xc));let h=Nl();var f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${ede}`:f+=` ${Jfe}`,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=AO(u,h);if(e.rectData=h,e.properties?.icon){let m=e.properties.icon.trim();m.charAt(0)==="@"?LY(u,h.x+h.width-20,h.y+10,m.substr(1)):_Y(u,h.x+h.width-20,h.y+10,m)}LO(r,yi(e.description))(e.description,u,h.x,h.y,h.width,h.height,{class:`actor ${YUe}`},r);let p=e.height;if(d.node){let m=d.node().getBBox();e.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),KUe=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||(Xc++,l.append("line").attr("id","actor"+Xc).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=Xc);let u=t.append("g"),h=Zfe;n?h+=` ${ede}`:h+=` ${Jfe}`,u.attr("class",h),u.attr("name",e.name);let f=Nl();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"+Xc).attr("x1",a).attr("y1",i+25).attr("x2",a).attr("y2",i+45),u.append("line").attr("id","actor-man-arms"+Xc).attr("x1",a-kf/2).attr("y1",i+33).attr("x2",a+kf/2).attr("y2",i+33),u.append("line").attr("x1",a-kf/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+kf/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,LO(r,yi(e.description))(e.description,u,f.x,f.y+35,f.width,f.height,{class:`actor ${Zfe}`},r),e.height},"drawActorTypeActor"),QUe=o(async function(t,e,r,n){switch(e.type){case"actor":return await KUe(t,e,r,n);case"participant":return await jUe(t,e,r,n)}},"drawActor"),ZUe=o(function(t,e,r){let i=t.append("g");rde(i,e),e.name&&LO(r)(e.name,i,e.x,e.y+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},r),i.lower()},"drawBox"),JUe=o(function(t){return t.append("g")},"anchorElement"),eHe=o(function(t,e,r,n,i){let a=Nl(),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,AO(s,a)},"drawActivation"),tHe=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=ov();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",tde(d,m),m=nde(),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=yi(m.text)?await Px(d,m,e):I0(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,yi(m.text)?(e.starty=e.sections[y].y,await Px(d,m,e)):I0(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"),rde=o(function(t,e){i5(t,e)},"drawBackgroundRect"),rHe=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"),nHe=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"),iHe=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"),aHe=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"),sHe=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"),oHe=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"),lHe=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"),nde=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"),cHe=o(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),LO=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]=Ho(m),b=a.split(qe.lineBreakRegex);for(let w=0;w{let s=O0(De),l=a.actorKeys.reduce((f,d)=>f+=t.get(d).width+(t.get(d).margin||0),0);l-=2*De.boxTextMargin,a.wrap&&(a.name=Ut.wrapLabel(a.name,l-2*De.wrapPadding,s));let u=Ut.calculateTextDimensions(a.name,s);i=qe.getMax(u.height,i);let h=qe.getMax(l,u.width+2*De.wrapPadding);if(a.margin=De.boxTextMargin,la.textMaxHeight=i),qe.getMax(n,De.height)}var De,nt,hHe,O0,Qg,DO,dHe,pHe,NO,sde,ode,IE,ade,gHe,vHe,bHe,wHe,THe,lde,cde=M(()=>{"use strict";pr();ide();ut();fr();lv();Vt();gp();hr();ai();De={},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,ode(pe())},"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*De.boxMargin,Math.min),i.updateVal(h,"stopy",n+f*De.boxMargin,Math.max),i.updateVal(nt.data,"startx",t-f*De.boxMargin,Math.min),i.updateVal(nt.data,"stopx",r+f*De.boxMargin,Math.max),l!=="activation"&&(i.updateVal(h,"startx",t-f*De.boxMargin,Math.min),i.updateVal(h,"stopx",r+f*De.boxMargin,Math.max),i.updateVal(nt.data,"starty",e-f*De.boxMargin,Math.min),i.updateVal(nt.data,"stopy",n+f*De.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=qe.getMin(t,r),a=qe.getMax(t,r),s=qe.getMin(e,n),l=qe.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=IE(t.from).length||0,a=n.x+n.width/2+(i-1)*De.activationWidth/2;this.activations.push({startx:a,starty:this.verticalPos+2,stopx:a+De.activationWidth,stopy:void 0,actor:t.from,anchored:fi.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=qe.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")},hHe=o(async function(t,e){nt.bumpVerticalPos(De.boxMargin),e.height=De.boxMargin,e.starty=nt.getVerticalPos();let r=Nl();r.x=e.startx,r.y=e.starty,r.width=e.width||De.width,r.class="note";let n=t.append("g"),i=fi.drawRect(n,r),a=ov();a.x=e.startx,a.y=e.starty,a.width=r.width,a.dy="1em",a.text=e.message,a.class="noteText",a.fontFamily=De.noteFontFamily,a.fontSize=De.noteFontSize,a.fontWeight=De.noteFontWeight,a.anchor=De.noteAlign,a.textMargin=De.noteMargin,a.valign="center";let s=yi(a.text)?await Px(n,a):I0(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*De.noteMargin),e.height+=l+2*De.noteMargin,nt.bumpVerticalPos(l+2*De.noteMargin),e.stopy=e.starty+l+2*De.noteMargin,e.stopx=e.startx+r.width,nt.insert(e.startx,e.starty,e.stopx,e.stopy),nt.models.addNote(e)},"drawNote"),O0=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont"),Qg=o(t=>({fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight}),"noteFont"),DO=o(t=>({fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight}),"actorFont");o(fHe,"boundMessage");dHe=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,O0(De)),p=ov();p.x=i,p.y=s+10,p.width=a-i,p.class="messageText",p.dy="1em",p.text=l,p.fontFamily=De.messageFontFamily,p.fontSize=De.messageFontSize,p.fontWeight=De.messageFontWeight,p.anchor=De.messageAlign,p.valign="center",p.textMargin=De.wrapPadding,p.tspan=!1,yi(p.text)?await Px(t,p,{startx:i,stopx:a,starty:r}):I0(t,p);let m=d.width,g;i===a?De.rightAngles?g=t.append("path").attr("d",`M ${i},${r} H ${i+qe.getMax(De.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="";De.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||De.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"),pHe=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+=De.boxMargin+h.margin),m&&m!=h&&(s||(m.x=l+u,m.y=i),u+=m.margin),p.width=p.width||De.width,p.height=qe.getMax(p.height||De.height,De.height),p.margin=p.margin||De.actorMargin,f=qe.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"),NO=o(async function(t,e,r,n){if(n){let i=0;nt.bumpVerticalPos(De.boxMargin*2);for(let a of r){let s=e.get(a);s.stopy||(s.stopy=nt.getVerticalPos());let l=await fi.drawActor(t,s,De,!0);i=qe.getMax(i,l)}nt.bumpVerticalPos(i+De.boxMargin)}else for(let i of r){let a=e.get(i);await fi.drawActor(t,a,De,!1)}},"drawActors"),sde=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=fi.drawPopup(t,l,u,De,De.forceMenus,n);h.height>i&&(i=h.height),h.width+l.x>a&&(a=h.width+l.x)}return{maxHeight:i,maxWidth:a}},"drawActorsPopup"),ode=o(function(t){Vn(De,t),t.fontFamily&&(De.actorFontFamily=De.noteFontFamily=De.messageFontFamily=t.fontFamily),t.fontSize&&(De.actorFontSize=De.noteFontSize=De.messageFontSize=t.fontSize),t.fontWeight&&(De.actorFontWeight=De.noteFontWeight=De.messageFontWeight=t.fontWeight)},"setConf"),IE=o(function(t){return nt.activations.filter(function(e){return e.actor===t})},"actorActivations"),ade=o(function(t,e){let r=e.get(t),n=IE(t),i=n.reduce(function(s,l){return qe.getMin(s,l.startx)},r.x+r.width/2-1),a=n.reduce(function(s,l){return qe.getMax(s,l.stopx)},r.x+r.width/2+1);return[i,a]},"activationBounds");o(jc,"adjustLoopHeightForWrap");o(mHe,"adjustCreatedDestroyedData");gHe=o(async function(t,e,r,n){let{securityLevel:i,sequence:a}=pe();De=a;let s;i==="sandbox"&&(s=Ve("#i"+e));let l=i==="sandbox"?Ve(s.nodes()[0].contentDocument.body):Ve("body"),u=i==="sandbox"?s.nodes()[0].contentDocument:document;nt.init(),Y.debug(n.db);let h=i==="sandbox"?l.select(`[id="${e}"]`):Ve(`[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 yHe(f,y,n);if(De.height=await xHe(f,w,m),fi.insertComputerIcon(h),fi.insertDatabaseIcon(h),fi.insertClockIcon(h),x&&(nt.bumpVerticalPos(De.boxMargin),b&&nt.bumpVerticalPos(m[0].textMaxHeight)),De.hideUnusedParticipants===!0){let F=new Set;y.forEach(B=>{F.add(B.from),F.add(B.to)}),g=g.filter(B=>F.has(B))}pHe(h,f,d,g,0,y,!1);let _=await THe(y,f,w,n);fi.insertArrowHead(h),fi.insertArrowCrossHead(h),fi.insertArrowFilledHead(h),fi.insertSequenceNumber(h);function T(F,B){let G=nt.endActivation(F);G.starty+18>B&&(G.starty=B-6,B+=12),fi.drawActivation(h,G,B,De,IE(F.from).length),nt.insert(G.startx,B-10,G.stopx,B)}o(T,"activeEnd");let E=1,L=1,S=[],A=[],I=0;for(let F of y){let B,G,z;switch(F.type){case n.db.LINETYPE.NOTE:nt.resetVerticalPos(),G=F.noteModel,await hHe(h,G);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:jc(_,F,De.boxMargin,De.boxMargin+De.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.LOOP_END:B=nt.endLoop(),await fi.drawLoop(h,B,"loop",De),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;case n.db.LINETYPE.RECT_START:jc(_,F,De.boxMargin,De.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:jc(_,F,De.boxMargin,De.boxMargin+De.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.OPT_END:B=nt.endLoop(),await fi.drawLoop(h,B,"opt",De),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;case n.db.LINETYPE.ALT_START:jc(_,F,De.boxMargin,De.boxMargin+De.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.ALT_ELSE:jc(_,F,De.boxMargin+De.boxTextMargin,De.boxMargin,W=>nt.addSectionToLoop(W));break;case n.db.LINETYPE.ALT_END:B=nt.endLoop(),await fi.drawLoop(h,B,"alt",De),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:jc(_,F,De.boxMargin,De.boxMargin+De.boxTextMargin,W=>nt.newLoop(W)),nt.saveVerticalPos();break;case n.db.LINETYPE.PAR_AND:jc(_,F,De.boxMargin+De.boxTextMargin,De.boxMargin,W=>nt.addSectionToLoop(W));break;case n.db.LINETYPE.PAR_END:B=nt.endLoop(),await fi.drawLoop(h,B,"par",De),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:jc(_,F,De.boxMargin,De.boxMargin+De.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.CRITICAL_OPTION:jc(_,F,De.boxMargin+De.boxTextMargin,De.boxMargin,W=>nt.addSectionToLoop(W));break;case n.db.LINETYPE.CRITICAL_END:B=nt.endLoop(),await fi.drawLoop(h,B,"critical",De),nt.bumpVerticalPos(B.stopy-nt.getVerticalPos()),nt.models.addLoop(B);break;case n.db.LINETYPE.BREAK_START:jc(_,F,De.boxMargin,De.boxMargin+De.boxTextMargin,W=>nt.newLoop(W));break;case n.db.LINETYPE.BREAK_END:B=nt.endLoop(),await fi.drawLoop(h,B,"break",De),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 fHe(h,z);mHe(F,z,W,I,f,d,p),S.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 NO(h,f,g,!1);for(let F of S)await dHe(h,F.messageModel,F.lineStartY,n);De.mirrorActors&&await NO(h,f,g,!0),A.forEach(F=>fi.drawBackgroundRect(h,F)),_O(h,f,g,De);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)",fi.drawBox(h,F,De);x&&nt.bumpVerticalPos(De.boxMargin);let D=sde(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(De.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,qe.getMax(m+2*De.wrapPadding,De.width),O0(De)));let g=Ut.calculateTextDimensions(t.message,O0(De));return{width:qe.getMax(t.wrap?0:g.width+2*De.wrapPadding,m+2*De.wrapPadding,De.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"),THe=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=IE(h.from?h.from:h.to.actor).length,m=d.x+d.width/2+(p-1)*De.activationWidth/2,g={startx:m,stopx:m+De.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 bHe(h,e,n),h.noteModel=l,a.forEach(d=>{s=d,s.from=qe.getMin(s.from,l.startx),s.to=qe.getMax(s.to,l.startx+l.width),s.width=qe.getMax(s.width,Math.abs(s.from-s.to))-De.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=qe.getMin(p.x-u.width/2,p.x-p.width/2,s.from),s.to=qe.getMax(m.x+u.width/2,m.x+p.width/2,s.to),s.width=qe.getMax(s.width,Math.abs(s.to-s.from))-De.labelBoxWidth}else s.from=qe.getMin(u.startx,s.from),s.to=qe.getMax(u.stopx,s.to),s.width=qe.getMax(s.width,u.width)-De.labelBoxWidth}))}return nt.activations=[],Y.debug("Loop type widths:",i),i},"calculateLoopBounds"),lde={bounds:nt,drawActors:NO,drawActorsPopup:sde,setConf:ode,draw:gHe}});var ude={};vr(ude,{diagram:()=>kHe});var kHe,hde=M(()=>{"use strict";$fe();jfe();Qfe();cde();kHe={parser:Gfe,db:SO,renderer:lde,styles:Kfe,init:o(({wrap:t})=>{SO.setWrap(t)},"init")}});var RO,OE,MO=M(()=>{"use strict";RO=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],S=[1,43],A=[1,47],I=[1,9],D=[1,8,9],k=[1,58],R=[1,59],C=[1,60],O=[1,61],N=[1,62],P=[1,63],F=[1,64],B=[1,8,9,41],G=[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],Z=[13,58,84,99,101,102],j=[13,58,71,72,84,99,101,102],oe=[13,58,66,67,68,69,70,84,99,101,102],K=[1,98],ee=[1,115],J=[1,107],H=[1,113],q=[1,108],Q=[1,109],ae=[1,110],ue=[1,111],ce=[1,112],te=[1,114],Ne=[22,58,59,80,84,85,86,87,88,89],se=[1,8,9,39,41,44],ke=[1,8,9,22],Re=[1,143],Ce=[1,8,9,59],Pe=[1,8,9,22,58,59,80,84,85,86,87,88,89],Ie={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,ve,U,Te){var ie=U.length-1;switch(ve){case 8:this.$=U[ie-1];break;case 9:case 12:case 14:this.$=U[ie];break;case 10:case 13:this.$=U[ie-2]+"."+U[ie];break;case 11:case 15:this.$=U[ie-1]+U[ie];break;case 16:case 17:this.$=U[ie-1]+"~"+U[ie]+"~";break;case 18:ne.addRelation(U[ie]);break;case 19:U[ie-1].title=ne.cleanupLabel(U[ie]),ne.addRelation(U[ie-1]);break;case 30:this.$=U[ie].trim(),ne.setAccTitle(this.$);break;case 31:case 32:this.$=U[ie].trim(),ne.setAccDescription(this.$);break;case 33:ne.addClassesToNamespace(U[ie-3],U[ie-1]);break;case 34:ne.addClassesToNamespace(U[ie-4],U[ie-1]);break;case 35:this.$=U[ie],ne.addNamespace(U[ie]);break;case 36:this.$=[U[ie]];break;case 37:this.$=[U[ie-1]];break;case 38:U[ie].unshift(U[ie-2]),this.$=U[ie];break;case 40:ne.setCssClass(U[ie-2],U[ie]);break;case 41:ne.addMembers(U[ie-3],U[ie-1]);break;case 42:ne.setCssClass(U[ie-5],U[ie-3]),ne.addMembers(U[ie-5],U[ie-1]);break;case 43:this.$=U[ie],ne.addClass(U[ie]);break;case 44:this.$=U[ie-1],ne.addClass(U[ie-1]),ne.setClassLabel(U[ie-1],U[ie]);break;case 45:ne.addAnnotation(U[ie],U[ie-2]);break;case 46:case 59:this.$=[U[ie]];break;case 47:U[ie].push(U[ie-1]),this.$=U[ie];break;case 48:break;case 49:ne.addMember(U[ie-1],ne.cleanupLabel(U[ie]));break;case 50:break;case 51:break;case 52:this.$={id1:U[ie-2],id2:U[ie],relation:U[ie-1],relationTitle1:"none",relationTitle2:"none"};break;case 53:this.$={id1:U[ie-3],id2:U[ie],relation:U[ie-1],relationTitle1:U[ie-2],relationTitle2:"none"};break;case 54:this.$={id1:U[ie-3],id2:U[ie],relation:U[ie-2],relationTitle1:"none",relationTitle2:U[ie-1]};break;case 55:this.$={id1:U[ie-4],id2:U[ie],relation:U[ie-2],relationTitle1:U[ie-3],relationTitle2:U[ie-1]};break;case 56:ne.addNote(U[ie],U[ie-1]);break;case 57:ne.addNote(U[ie]);break;case 58:this.$=U[ie-2],ne.defineClass(U[ie-1],U[ie]);break;case 60:this.$=U[ie-2].concat([U[ie]]);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[ie-2],type2:U[ie],lineType:U[ie-1]};break;case 66:this.$={type1:"none",type2:U[ie],lineType:U[ie-1]};break;case 67:this.$={type1:U[ie-1],type2:"none",lineType:U[ie]};break;case 68:this.$={type1:"none",type2:"none",lineType:U[ie]};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[ie-2],ne.setClickEvent(U[ie-1],U[ie]);break;case 77:case 83:this.$=U[ie-3],ne.setClickEvent(U[ie-2],U[ie-1]),ne.setTooltip(U[ie-2],U[ie]);break;case 78:this.$=U[ie-2],ne.setLink(U[ie-1],U[ie]);break;case 79:this.$=U[ie-3],ne.setLink(U[ie-2],U[ie-1],U[ie]);break;case 80:this.$=U[ie-3],ne.setLink(U[ie-2],U[ie-1]),ne.setTooltip(U[ie-2],U[ie]);break;case 81:this.$=U[ie-4],ne.setLink(U[ie-3],U[ie-2],U[ie]),ne.setTooltip(U[ie-3],U[ie-1]);break;case 84:this.$=U[ie-3],ne.setClickEvent(U[ie-2],U[ie-1],U[ie]);break;case 85:this.$=U[ie-4],ne.setClickEvent(U[ie-3],U[ie-2],U[ie-1]),ne.setTooltip(U[ie-3],U[ie]);break;case 86:this.$=U[ie-3],ne.setLink(U[ie-2],U[ie]);break;case 87:this.$=U[ie-4],ne.setLink(U[ie-3],U[ie-1],U[ie]);break;case 88:this.$=U[ie-4],ne.setLink(U[ie-3],U[ie-1]),ne.setTooltip(U[ie-3],U[ie]);break;case 89:this.$=U[ie-5],ne.setLink(U[ie-4],U[ie-2],U[ie]),ne.setTooltip(U[ie-4],U[ie-1]);break;case 90:this.$=U[ie-2],ne.setCssStyle(U[ie-1],U[ie]);break;case 91:ne.setCssClass(U[ie-1],U[ie]);break;case 92:this.$=[U[ie]];break;case 93:U[ie-2].push(U[ie]),this.$=U[ie-2];break;case 95:this.$=U[ie-1]+U[ie];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:S,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:C,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:S},{16:39,18:69,19:40,58:p,84:E,99:L,101:S,102:A},{16:39,18:70,19:40,58:p,84:E,99:L,101:S,102:A},{16:39,18:71,19:40,58:p,84:E,99:L,101:S,102:A},{58:[1,72]},{13:[1,73]},{16:39,18:74,19:40,58:p,84:E,99:L,101:S,102:A},{13:G,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:S,102:A}),t(z,[2,14],{20:[1,82]}),{15:83,16:84,58:p,84:E,99:L,101:S},{16:39,18:85,19:40,58:p,84:E,99:L,101:S,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:S,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:S,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:S,102:A},{51:90,64:56,65:57,66:k,67:R,68:C,69:O,70:N,71:P,72:F},t(D,[2,49]),{65:91,71:P,72:F},t(Z,[2,68],{64:92,66:k,67:R,68:C,69:O,70:N}),t(j,[2,69]),t(j,[2,70]),t(j,[2,71]),t(j,[2,72]),t(j,[2,73]),t(oe,[2,74]),t(oe,[2,75]),{8:[1,94],24:95,40:93,43:23,46:a},{16:96,58:p,84:E,99:L,101:S},{45:97,49:K},{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:Q,86:ae,87:ue,88:ce,89:te},{58:[1,116]},{13:G,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:Q,86:ae,87:ue,88:ce,89:te},t(Ne,[2,59]),{16:39,18:120,19:40,58:p,84:E,99:L,101:S,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:S},t(se,[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:S,102:A},{13:[1,128],16:39,18:127,19:40,58:p,84:E,99:L,101:S,102:A},t(Z,[2,67],{64:129,66:k,67:R,68:C,69:O,70:N}),t(Z,[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:K},{16:39,18:136,19:40,58:p,84:E,99:L,101:S,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:Re}),t(Ce,[2,92],{83:144,22:ee,58:J,80:H,84:q,85:Q,86:ae,87:ue,88:ce,89:te}),t(Pe,[2,94]),t(Pe,[2,96]),t(Pe,[2,97]),t(Pe,[2,98]),t(Pe,[2,99]),t(Pe,[2,100]),t(Pe,[2,101]),t(Pe,[2,102]),t(Pe,[2,103]),t(Pe,[2,104]),t(D,[2,91]),t(D,[2,56]),t(D,[2,58],{59:Re}),{58:[1,145]},t(z,[2,13]),{15:146,16:84,58:p,84:E,99:L,101:S},{39:[2,11]},t(se,[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:S,102:A},t(Z,[2,65]),t(D,[2,33]),{41:[1,149]},{24:95,40:150,41:[2,37],43:23,46:a},{45:151,49:K},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:Q,86:ae,87:ue,88:ce,89:te},t(Pe,[2,95]),t(Ne,[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(Ce,[2,93],{83:144,22:ee,58:J,80:H,84:q,85:Q,86:ae,87:ue,88:ce,89:te}),t(se,[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=[],ve=[null],U=[],Te=this.table,ie="",Ee=0,Ae=0,Ge=0,Be=2,me=1,He=U.slice.call(arguments,1),Oe=Object.create(this.lexer),et={yy:{}};for(var bt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,bt)&&(et.yy[bt]=this.yy[bt]);Oe.setInput(fe,et.yy),et.yy.lexer=Oe,et.yy.parser=this,typeof Oe.yylloc>"u"&&(Oe.yylloc={});var kt=Oe.yylloc;U.push(kt);var vt=Oe.options&&Oe.options.ranges;typeof et.yy.parseError=="function"?this.parseError=et.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function rt(yr){ge.length=ge.length-2*yr,ve.length=ve.length-yr,U.length=U.length-yr}o(rt,"popStack");function yt(){var yr;return yr=ne.pop()||Oe.lex()||me,typeof yr!="number"&&(yr instanceof Array&&(ne=yr,yr=ne.pop()),yr=he.symbols_[yr]||yr),yr}o(yt,"lex");for(var Ue,tt,ht,Et,er,dt,Je={},ct,Ct,pt,Bt;;){if(ht=ge[ge.length-1],this.defaultActions[ht]?Et=this.defaultActions[ht]:((Ue===null||typeof Ue>"u")&&(Ue=yt()),Et=Te[ht]&&Te[ht][Ue]),typeof Et>"u"||!Et.length||!Et[0]){var Tr="";Bt=[];for(ct in Te[ht])this.terminals_[ct]&&ct>Be&&Bt.push("'"+this.terminals_[ct]+"'");Oe.showPosition?Tr="Parse error on line "+(Ee+1)+`: +`+Oe.showPosition()+` +Expecting `+Bt.join(", ")+", got '"+(this.terminals_[Ue]||Ue)+"'":Tr="Parse error on line "+(Ee+1)+": Unexpected "+(Ue==me?"end of input":"'"+(this.terminals_[Ue]||Ue)+"'"),this.parseError(Tr,{text:Oe.match,token:this.terminals_[Ue]||Ue,line:Oe.yylineno,loc:kt,expected:Bt})}if(Et[0]instanceof Array&&Et.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ht+", token: "+Ue);switch(Et[0]){case 1:ge.push(Ue),ve.push(Oe.yytext),U.push(Oe.yylloc),ge.push(Et[1]),Ue=null,tt?(Ue=tt,tt=null):(Ae=Oe.yyleng,ie=Oe.yytext,Ee=Oe.yylineno,kt=Oe.yylloc,Ge>0&&Ge--);break;case 2:if(Ct=this.productions_[Et[1]][1],Je.$=ve[ve.length-Ct],Je._$={first_line:U[U.length-(Ct||1)].first_line,last_line:U[U.length-1].last_line,first_column:U[U.length-(Ct||1)].first_column,last_column:U[U.length-1].last_column},vt&&(Je._$.range=[U[U.length-(Ct||1)].range[0],U[U.length-1].range[1]]),dt=this.performAction.apply(Je,[ie,Ae,Ee,et.yy,Et[1],ve,U].concat(He)),typeof dt<"u")return dt;Ct&&(ge=ge.slice(0,-1*Ct*2),ve=ve.slice(0,-1*Ct),U=U.slice(0,-1*Ct)),ge.push(this.productions_[Et[1]][0]),ve.push(Je.$),U.push(Je._$),pt=Te[ge[ge.length-2]][ge[ge.length-1]],ge.push(pt);break;case 3:return!0}}return!0},"parse")},$e=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 ve=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=[ve[0],ve[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,ve;if(this.options.backtrack_lexer&&(ve={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&&(ve.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 ve)this[U]=ve[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 ve=this._currentRules(),U=0;Uhe[0].length)){if(he=ge,ne=U,this.options.backtrack_lexer){if(fe=this.test_match(ge,ve[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,ve[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,ve){var U=ve;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}();Ie.lexer=$e;function ye(){this.yy={}}return o(ye,"Parser"),ye.prototype=Ie,Ie.Parser=ye,new ye}();RO.parser=RO;OE=RO});var pde,Bx,mde=M(()=>{"use strict";Vt();fr();pde=["#","+","~","-",""],Bx=class{static{o(this,"ClassMember")}constructor(e,r){this.memberType=r,this.visibility="",this.classifier="",this.text="";let n=kr(e,pe());this.parseMember(n)}getDisplayDetails(){let e=this.visibility+yu(this.id);this.memberType==="method"&&(e+=`(${yu(this.parameters.trim())})`,this.returnType&&(e+=" : "+yu(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(pde.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);pde.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:""}${yu(this.id)}${this.memberType==="method"?`(${yu(this.parameters)})${this.returnType?" : "+yu(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 xde(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 PE,BE,Nn,gde,Fx,Jg,yde,ql,IO,zx,P0,B0,AHe,Zg,vde,bde,_He,LHe,DHe,NHe,RHe,MHe,IHe,wde,OHe,PHe,BHe,OO,FHe,zHe,GHe,$He,VHe,UHe,HHe,WHe,Ef,Tde,PO,kde,YHe,qHe,XHe,jHe,KHe,QHe,ZHe,e1,BO=M(()=>{"use strict";pr();ut();Vt();fr();hr();Ai();mde();PE="classId-",BE=[],Nn=new Map,gde=new Map,Fx=[],Jg=[],yde=0,ql=new Map,IO=0,zx=[],P0=o(t=>qe.sanitizeText(t,pe()),"sanitizeText"),B0=o(function(t){let e=qe.sanitizeText(t,pe()),r="",n=e;if(e.indexOf("~")>0){let i=e.split("~");n=P0(i[0]),r=P0(i[1])}return{className:n,type:r}},"splitClassNameAndType"),AHe=o(function(t,e){let r=qe.sanitizeText(t,pe());e&&(e=P0(e));let{className:n}=B0(r);Nn.get(n).label=e,Nn.get(n).text=`${e}${Nn.get(n).type?`<${Nn.get(n).type}>`:""}`},"setClassLabel"),Zg=o(function(t){let e=qe.sanitizeText(t,pe()),{className:r,type:n}=B0(e);if(Nn.has(r))return;let i=qe.sanitizeText(r,pe());Nn.set(i,{id:i,type:n,label:i,text:`${i}${n?`<${n}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:PE+i+"-"+yde}),yde++},"addClass"),vde=o(function(t,e){let r={id:`interface${Jg.length}`,label:t,classId:e};Jg.push(r)},"addInterface"),bde=o(function(t){let e=qe.sanitizeText(t,pe());if(Nn.has(e))return Nn.get(e).domId;throw new Error("Class not found: "+e)},"lookUpDomId"),_He=o(function(){BE=[],Nn=new Map,Fx=[],Jg=[],zx=[],zx.push(Tde),ql=new Map,IO=0,PO="TB",Lr()},"clear"),LHe=o(function(t){return Nn.get(t)},"getClass"),DHe=o(function(){return Nn},"getClasses"),NHe=o(function(){return BE},"getRelations"),RHe=o(function(){return Fx},"getNotes"),MHe=o(function(t){Y.debug("Adding relation: "+JSON.stringify(t));let e=[Ef.LOLLIPOP,Ef.AGGREGATION,Ef.COMPOSITION,Ef.DEPENDENCY,Ef.EXTENSION];t.relation.type1===Ef.LOLLIPOP&&!e.includes(t.relation.type2)?(Zg(t.id2),vde(t.id1,t.id2),t.id1=`interface${Jg.length-1}`):t.relation.type2===Ef.LOLLIPOP&&!e.includes(t.relation.type1)?(Zg(t.id1),vde(t.id2,t.id1),t.id2=`interface${Jg.length-1}`):(Zg(t.id1),Zg(t.id2)),t.id1=B0(t.id1).className,t.id2=B0(t.id2).className,t.relationTitle1=qe.sanitizeText(t.relationTitle1.trim(),pe()),t.relationTitle2=qe.sanitizeText(t.relationTitle2.trim(),pe()),BE.push(t)},"addRelation"),IHe=o(function(t,e){let r=B0(t).className;Nn.get(r).annotations.push(e)},"addAnnotation"),wde=o(function(t,e){Zg(t);let r=B0(t).className,n=Nn.get(r);if(typeof e=="string"){let i=e.trim();i.startsWith("<<")&&i.endsWith(">>")?n.annotations.push(P0(i.substring(2,i.length-2))):i.indexOf(")")>0?n.methods.push(new Bx(i,"method")):i&&n.members.push(new Bx(i,"attribute"))}},"addMember"),OHe=o(function(t,e){Array.isArray(e)&&(e.reverse(),e.forEach(r=>wde(t,r)))},"addMembers"),PHe=o(function(t,e){let r={id:`note${Fx.length}`,class:e,text:t};Fx.push(r)},"addNote"),BHe=o(function(t){return t.startsWith(":")&&(t=t.substring(1)),P0(t.trim())},"cleanupLabel"),OO=o(function(t,e){t.split(",").forEach(function(r){let n=r;/\d/.exec(r[0])&&(n=PE+n);let i=Nn.get(n);i&&(i.cssClasses+=" "+e)})},"setCssClass"),FHe=o(function(t,e){for(let r of t){let n=gde.get(r);n===void 0&&(n={id:r,styles:[],textStyles:[]},gde.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)}),Nn.forEach(i=>{i.cssClasses.includes(r)&&i.styles.push(...e.flatMap(a=>a.split(",")))})}},"defineClass"),zHe=o(function(t,e){t.split(",").forEach(function(r){e!==void 0&&(Nn.get(r).tooltip=P0(e))})},"setTooltip"),GHe=o(function(t,e){return e&&ql.has(e)?ql.get(e).classes.get(t).tooltip:Nn.get(t).tooltip},"getTooltip"),$He=o(function(t,e,r){let n=pe();t.split(",").forEach(function(i){let a=i;/\d/.exec(i[0])&&(a=PE+a);let s=Nn.get(a);s&&(s.link=Ut.formatUrl(e,n),n.securityLevel==="sandbox"?s.linkTarget="_top":typeof r=="string"?s.linkTarget=P0(r):s.linkTarget="_blank")}),OO(t,"clickable")},"setLink"),VHe=o(function(t,e,r){t.split(",").forEach(function(n){UHe(n,e,r),Nn.get(n).haveCallback=!0}),OO(t,"clickable")},"setClickEvent"),UHe=o(function(t,e,r){let n=qe.sanitizeText(t,pe());if(pe().securityLevel!=="loose"||e===void 0)return;let a=n;if(Nn.has(a)){let s=bde(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),Ve(this).classed("hover",!1)})},"setupToolTips");zx.push(Tde);PO="TB",kde=o(()=>PO,"getDirection"),YHe=o(t=>{PO=t},"setDirection"),qHe=o(function(t){ql.has(t)||(ql.set(t,{id:t,classes:new Map,children:{},domId:PE+t+"-"+IO}),IO++)},"addNamespace"),XHe=o(function(t){return ql.get(t)},"getNamespace"),jHe=o(function(){return ql},"getNamespaces"),KHe=o(function(t,e){if(ql.has(t))for(let r of e){let{className:n}=B0(r);Nn.get(n).parent=t,ql.get(t).classes.set(n,Nn.get(n))}},"addClassesToNamespace"),QHe=o(function(t,e){let r=Nn.get(t);if(!(!e||!r))for(let n of e)n.includes(",")?r.styles.push(...n.split(",")):r.styles.push(n)},"setCssStyle");o(xde,"getArrowMarker");ZHe=o(()=>{let t=[],e=[],r=pe();for(let i of ql.keys()){let a=ql.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 Nn.keys()){let a=Nn.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 Fx){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=Nn.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 Jg){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 BE){n++;let a={id:C5(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:xde(i.relation.type1),arrowTypeEnd:xde(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:kde()}},"getData"),e1={setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,setAccDescription:Fr,getConfig:o(()=>pe().class,"getConfig"),addClass:Zg,bindFunctions:HHe,clear:_He,getClass:LHe,getClasses:DHe,getNotes:RHe,addAnnotation:IHe,addNote:PHe,getRelations:NHe,addRelation:MHe,getDirection:kde,setDirection:YHe,addMember:wde,addMembers:OHe,cleanupLabel:BHe,lineType:WHe,relationType:Ef,setClickEvent:VHe,setCssClass:OO,defineClass:FHe,setLink:$He,getTooltip:GHe,setTooltip:zHe,lookUpDomId:bde,setDiagramTitle:cn,getDiagramTitle:Jr,setClassLabel:AHe,addNamespace:qHe,addClassesToNamespace:KHe,getNamespace:XHe,getNamespaces:jHe,setCssStyle:QHe,getData:ZHe}});var JHe,FE,FO=M(()=>{"use strict";JHe=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"),FE=JHe});var eWe,tWe,rWe,zE,zO=M(()=>{"use strict";Vt();ut();ow();Jv();TT();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"),tWe=o(function(t,e){return e.db.getClasses()},"getClasses"),rWe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing class diagram (v3)",e);let{securityLevel:i,state:a,layout:s}=pe(),l=n.db.getData(),u=Am(e,i);l.type=n.type,l.layoutAlgorithm=wT(s),l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["aggregation","extension","composition","dependency","lollipop"],l.diagramId=e,await Qm(l,u);let h=8;Ut.insertTitle(u,"classDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Zm(u,h,"classDiagram",a?.useMaxWidth??!0)},"draw"),zE={getClasses:tWe,draw:rWe,getDir:eWe}});var Ede={};vr(Ede,{diagram:()=>nWe});var nWe,Sde=M(()=>{"use strict";MO();BO();FO();zO();nWe={parser:OE,db:e1,renderer:zE,styles:FE,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,e1.clear()},"init")}});var _de={};vr(_de,{diagram:()=>oWe});var oWe,Lde=M(()=>{"use strict";MO();BO();FO();zO();oWe={parser:OE,db:e1,renderer:zE,styles:FE,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,e1.clear()},"init")}});var GO,GE,$O=M(()=>{"use strict";GO=function(){var t=o(function(F,B,G,z){for(G=G||{},z=F.length;z--;G[F[z]]=B);return G},"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],S=[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],C=[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,G,z,W,Z,j,oe){var K=j.length-1;switch(Z){case 3:return W.setRootDoc(j[K]),j[K];break;case 4:this.$=[];break;case 5:j[K]!="nl"&&(j[K-1].push(j[K]),this.$=j[K-1]);break;case 6:case 7:this.$=j[K];break;case 8:this.$="nl";break;case 12:this.$=j[K];break;case 13:let q=j[K-1];q.description=W.trimColon(j[K]),this.$=q;break;case 14:this.$={stmt:"relation",state1:j[K-2],state2:j[K]};break;case 15:let Q=W.trimColon(j[K]);this.$={stmt:"relation",state1:j[K-3],state2:j[K-1],description:Q};break;case 19:this.$={stmt:"state",id:j[K-3],type:"default",description:"",doc:j[K-1]};break;case 20:var ee=j[K],J=j[K-2].trim();if(j[K].match(":")){var H=j[K].split(":");ee=H[0],J=[J,H[1]]}this.$={stmt:"state",id:ee,type:"default",description:J};break;case 21:this.$={stmt:"state",id:j[K-3],type:"default",description:j[K-5],doc:j[K-1]};break;case 22:this.$={stmt:"state",id:j[K],type:"fork"};break;case 23:this.$={stmt:"state",id:j[K],type:"join"};break;case 24:this.$={stmt:"state",id:j[K],type:"choice"};break;case 25:this.$={stmt:"state",id:W.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:j[K-1].trim(),note:{position:j[K-2].trim(),text:j[K].trim()}};break;case 29:this.$=j[K].trim(),W.setAccTitle(this.$);break;case 30:case 31:this.$=j[K].trim(),W.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:j[K-1].trim(),classes:j[K].trim()};break;case 34:this.$={stmt:"style",id:j[K-1].trim(),styleClass:j[K].trim()};break;case 35:this.$={stmt:"applyClass",id:j[K-1].trim(),styleClass:j[K].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:j[K].trim(),type:"default",description:""};break;case 44:this.$={stmt:"state",id:j[K-2].trim(),classes:[j[K].trim()],type:"default",description:""};break;case 45:this.$={stmt:"state",id:j[K-2].trim(),classes:[j[K].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:S,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:S,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(C,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:S,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(C,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:S,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,G){if(G.recoverable)this.trace(B);else{var z=new Error(B);throw z.hash=G,z}},"parseError"),parse:o(function(B){var G=this,z=[0],W=[],Z=[null],j=[],oe=this.table,K="",ee=0,J=0,H=0,q=2,Q=1,ae=j.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 Ne=ue.yylloc;j.push(Ne);var se=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,Z.length=Z.length-Te,j.length=j.length-Te}o(ke,"popStack");function Re(){var Te;return Te=W.pop()||ue.lex()||Q,typeof Te!="number"&&(Te instanceof Array&&(W=Te,Te=W.pop()),Te=G.symbols_[Te]||Te),Te}o(Re,"lex");for(var Ce,Pe,Ie,$e,ye,X,fe={},he,ge,ne,ve;;){if(Ie=z[z.length-1],this.defaultActions[Ie]?$e=this.defaultActions[Ie]:((Ce===null||typeof Ce>"u")&&(Ce=Re()),$e=oe[Ie]&&oe[Ie][Ce]),typeof $e>"u"||!$e.length||!$e[0]){var U="";ve=[];for(he in oe[Ie])this.terminals_[he]&&he>q&&ve.push("'"+this.terminals_[he]+"'");ue.showPosition?U="Parse error on line "+(ee+1)+`: +`+ue.showPosition()+` +Expecting `+ve.join(", ")+", got '"+(this.terminals_[Ce]||Ce)+"'":U="Parse error on line "+(ee+1)+": Unexpected "+(Ce==Q?"end of input":"'"+(this.terminals_[Ce]||Ce)+"'"),this.parseError(U,{text:ue.match,token:this.terminals_[Ce]||Ce,line:ue.yylineno,loc:Ne,expected:ve})}if($e[0]instanceof Array&&$e.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ie+", token: "+Ce);switch($e[0]){case 1:z.push(Ce),Z.push(ue.yytext),j.push(ue.yylloc),z.push($e[1]),Ce=null,Pe?(Ce=Pe,Pe=null):(J=ue.yyleng,K=ue.yytext,ee=ue.yylineno,Ne=ue.yylloc,H>0&&H--);break;case 2:if(ge=this.productions_[$e[1]][1],fe.$=Z[Z.length-ge],fe._$={first_line:j[j.length-(ge||1)].first_line,last_line:j[j.length-1].last_line,first_column:j[j.length-(ge||1)].first_column,last_column:j[j.length-1].last_column},se&&(fe._$.range=[j[j.length-(ge||1)].range[0],j[j.length-1].range[1]]),X=this.performAction.apply(fe,[K,J,ee,ce.yy,$e[1],Z,j].concat(ae)),typeof X<"u")return X;ge&&(z=z.slice(0,-1*ge*2),Z=Z.slice(0,-1*ge),j=j.slice(0,-1*ge)),z.push(this.productions_[$e[1]][0]),Z.push(fe.$),j.push(fe._$),ne=oe[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(G,z){if(this.yy.parser)this.yy.parser.parseError(G,z);else throw new Error(G)},"parseError"),setInput:o(function(B,G){return this.yy=G||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 G=B.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),B},"input"),unput:o(function(B){var G=B.length,z=B.split(/(?:\r\n?|\n)/g);this._input=B+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-G),this.offset-=G;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 Z=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-G},this.options.ranges&&(this.yylloc.range=[Z[0],Z[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(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(),G=new Array(B.length+1).join("-");return B+this.upcomingInput()+` +`+G+"^"},"showPosition"),test_match:o(function(B,G){var z,W,Z;if(this.options.backtrack_lexer&&(Z={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&&(Z.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,G,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),z)return z;if(this._backtrack){for(var j in Z)this[j]=Z[j];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var B,G,z,W;this._more||(this.yytext="",this.match="");for(var Z=this._currentRules(),j=0;jG[0].length)){if(G=z,W=j,this.options.backtrack_lexer){if(B=this.test_match(z,Z[j]),B!==!1)return B;if(this._backtrack){G=!1;continue}else return!1}else if(!this.options.flex)break}return G?(B=this.test_match(G,Z[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 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,z,W,Z){var j=Z;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}();GO.parser=GO;GE=GO});var Rde,$E,t1,Gx,Mde,Ide,Ode,F0,VE,VO,UO,HO,WO,YO,UE,HE,Pde,Bde,qO,XO,Fde,zde,r1,hWe,Gde,jO,fWe,dWe,$de,Vde,pWe,Ude,mWe,Hde,KO,QO,Wde,WE,Yde,ZO,YE=M(()=>{"use strict";Rde="LR",$E="TB",t1="state",Gx="relation",Mde="classDef",Ide="style",Ode="applyClass",F0="default",VE="divider",VO="fill:none",UO="fill: #333",HO="c",WO="text",YO="normal",UE="rect",HE="rectWithTitle",Pde="stateStart",Bde="stateEnd",qO="divider",XO="roundedWithTitle",Fde="note",zde="noteGroup",r1="statediagram",hWe="state",Gde=`${r1}-${hWe}`,jO="transition",fWe="note",dWe="note-edge",$de=`${jO} ${dWe}`,Vde=`${r1}-${fWe}`,pWe="cluster",Ude=`${r1}-${pWe}`,mWe="cluster-alt",Hde=`${r1}-${mWe}`,KO="parent",QO="note",Wde="state",WE="----",Yde=`${WE}${QO}`,ZO=`${WE}${KO}`});function JO(t="",e=0,r="",n=WE){let i=r!==null&&r.length>0?`${n}${r}`:"";return`${Wde}-${t}${i}-${e}`}function qE(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 yWe(t){return t?.classes?.join(" ")??""}function vWe(t){return t?.styles??[]}var XE,Sf,gWe,qde,n1,Xde,jde=M(()=>{"use strict";Vt();ut();fr();YE();XE=new Map,Sf=0;o(JO,"stateDomId");gWe=o((t,e,r,n,i,a,s,l)=>{Y.trace("items",e),e.forEach(u=>{switch(u.stmt){case t1:n1(t,u,r,n,i,a,s,l);break;case F0:n1(t,u,r,n,i,a,s,l);break;case Gx:{n1(t,u.state1,r,n,i,a,s,l),n1(t,u.state2,r,n,i,a,s,l);let h={id:"edge"+Sf,start:u.state1.id,end:u.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:VO,labelStyle:"",label:qe.sanitizeText(u.description,pe()),arrowheadStyle:UO,labelpos:HO,labelType:WO,thickness:YO,classes:jO,look:s};i.push(h),Sf++}break}})},"setupDoc"),qde=o((t,e=$E)=>{let r=e;if(t.doc)for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir");o(qE,"insertOrUpdateNode");o(yWe,"getClassesFromDbInfo");o(vWe,"getStylesFromDbInfo");n1=o((t,e,r,n,i,a,s,l)=>{let u=e.id,h=r.get(u),f=yWe(h),d=vWe(h);if(Y.info("dataFetcher parsedItem",e,h,d),u!=="root"){let p=UE;e.start===!0?p=Pde:e.start===!1&&(p=Bde),e.type!==F0&&(p=e.type),XE.get(u)||XE.set(u,{id:u,shape:p,description:qe.sanitizeText(u,pe()),cssClasses:`${f} ${Gde}`,cssStyles:d});let m=XE.get(u);e.description&&(Array.isArray(m.description)?(m.shape=HE,m.description.push(e.description)):m.description?.length>0?(m.shape=HE,m.description===u?m.description=[e.description]:m.description=[m.description,e.description]):(m.shape=UE,m.description=e.description),m.description=qe.sanitizeTextOrArray(m.description,pe())),m.description?.length===1&&m.shape===HE&&(m.type==="group"?m.shape=XO:m.shape=UE),!m.type&&e.doc&&(Y.info("Setting cluster for XCX",u,qde(e)),m.type="group",m.isGroup=!0,m.dir=qde(e),m.shape=e.type===VE?qO:XO,m.cssClasses=`${m.cssClasses} ${Ude} ${a?Hde:""}`);let g={labelStyle:"",shape:m.shape,label:m.description,cssClasses:m.cssClasses,cssCompiledStyles:[],cssStyles:m.cssStyles,id:u,dir:m.dir,domId:JO(u,Sf),type:m.type,isGroup:m.type==="group",padding:8,rx:10,ry:10,look:s};if(g.shape===qO&&(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:Fde,label:e.note.text,cssClasses:Vde,cssStyles:[],cssCompilesStyles:[],id:u+Yde+"-"+Sf,domId:JO(u,Sf,QO),type:m.type,isGroup:m.type==="group",padding:pe().flowchart.padding,look:s,position:e.note.position},v=u+ZO,x={labelStyle:"",shape:zde,label:e.note.text,cssClasses:m.cssClasses,cssStyles:[],id:u+ZO,domId:JO(u,Sf,KO),type:"group",isGroup:!0,padding:16,look:s,position:e.note.position};Sf++,x.id=v,y.parentId=v,qE(n,x,l),qE(n,y,l),qE(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:VO,labelStyle:"",classes:$de,arrowheadStyle:UO,labelpos:HO,labelType:WO,thickness:YO,look:s})}else qE(n,g,l)}e.doc&&(Y.trace("Adding nodes children "),gWe(e,e.doc,r,n,i,!a,s,l))},"dataFetcher"),Xde=o(()=>{XE.clear(),Sf=0},"reset")});var eP,xWe,bWe,Kde,tP=M(()=>{"use strict";Vt();ut();ow();Jv();TT();hr();YE();eP=o((t,e=$E)=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),xWe=o(function(t,e){return e.db.extract(e.db.getRootDocV2()),e.db.getClasses()},"getClasses"),bWe=o(async function(t,e,r,n){Y.info("REF0:"),Y.info("Drawing state diagram (v2)",e);let{securityLevel:i,state:a,layout:s}=pe();n.db.extract(n.db.getRootDocV2());let l=n.db.getData(),u=Am(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 Qm(l,u);let h=8;Ut.insertTitle(u,"statediagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Zm(u,h,r1,a?.useMaxWidth??!0)},"draw"),Kde={getClasses:xWe,draw:bWe,getDir:eP}});function n0e(){return new Map}function rP(t=""){let e=t;return t===aP&&($x++,e=`${e0e}${$x}`),e}function nP(t="",e=F0){return t===aP?e0e:e}function DWe(t=""){let e=t;return t===t0e&&($x++,e=`${r0e}${$x}`),e}function NWe(t="",e=F0){return t===t0e?r0e:e}function RWe(t,e,r){let n=rP(t.id.trim()),i=nP(t.id.trim(),t.type),a=rP(e.id.trim()),s=nP(e.id.trim(),e.type);Cf(n,i,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),Cf(a,s,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),Xs.relations.push({id1:n,id2:a,relationTitle:qe.sanitizeText(r,pe())})}var aP,e0e,t0e,r0e,Qde,Zde,wWe,TWe,QE,sP,i0e,ZE,i1,a0e,JE,Xs,$x,Jde,kWe,EWe,jE,SWe,CWe,KE,oP,AWe,Cf,s0e,z0,o0e,_We,LWe,l0e,iP,MWe,IWe,c0e,OWe,lP,PWe,BWe,FWe,zWe,GWe,$We,ol,e6=M(()=>{"use strict";ut();hr();fr();Vt();Ai();jde();tP();YE();aP="[*]",e0e="start",t0e=aP,r0e="end",Qde="color",Zde="fill",wWe="bgFill",TWe=",";o(n0e,"newClassesList");QE=[],sP=[],i0e=Rde,ZE=[],i1=n0e(),a0e=o(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),JE={root:a0e()},Xs=JE.root,$x=0,Jde=0,kWe={LINE:0,DOTTED_LINE:1},EWe={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},jE=o(t=>JSON.parse(JSON.stringify(t)),"clone"),SWe=o(t=>{Y.info("Setting root doc",t),ZE=t},"setRootDoc"),CWe=o(()=>ZE,"getRootDoc"),KE=o((t,e,r)=>{if(e.stmt===Gx)KE(t,e.state1,!0),KE(t,e.state2,!1);else if(e.stmt===t1&&(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:t1,id:r9(),type:"divider",doc:jE(i)};n.push(jE(s)),e.doc=n}e.doc.forEach(s=>KE(e,s,!0))}},"docTranslator"),oP=o(()=>(KE({id:"root"},{id:"root",doc:ZE},!0),{id:"root",doc:ZE}),"getRootDocV2"),AWe=o(t=>{let e;t.doc?e=t.doc:e=t,Y.info(e),s0e(!0),Y.info("Extract initial document:",e),e.forEach(a=>{switch(Y.warn("Statement",a.stmt),a.stmt){case t1:Cf(a.id.trim(),a.type,a.doc,a.description,a.note,a.classes,a.styles,a.textStyles);break;case Gx:l0e(a.state1,a.state2,a.description);break;case Mde:c0e(a.id.trim(),a.classes);break;case Ide:{let s=a.id.trim().split(","),l=a.styleClass.split(",");s.forEach(u=>{let h=z0(u);if(h===void 0){let f=u.trim();Cf(f),h=z0(f)}h.styles=l.map(f=>f.replace(/;/g,"")?.trim())})}break;case Ode:lP(a.id.trim(),a.styleClass);break}});let r=o0e(),i=pe().look;Xde(),n1(void 0,oP(),r,QE,sP,!0,i,i1),QE.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"),Cf=o(function(t,e=F0,r=null,n=null,i=null,a=null,s=null,l=null){let u=t?.trim();if(Xs.states.has(u)?(Xs.states.get(u).doc||(Xs.states.get(u).doc=r),Xs.states.get(u).type||(Xs.states.get(u).type=e)):(Y.info("Adding state ",u,n),Xs.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"&&iP(u,n.trim()),typeof n=="object"&&n.forEach(h=>iP(u,h.trim()))),i){let h=Xs.states.get(u);h.note=i,h.note.text=qe.sanitizeText(h.note.text,pe())}a&&(Y.info("Setting state classes",u,a),(typeof a=="string"?[a]:a).forEach(f=>lP(u,f.trim()))),s&&(Y.info("Setting state styles",u,s),(typeof s=="string"?[s]:s).forEach(f=>PWe(u,f.trim()))),l&&(Y.info("Setting state styles",u,s),(typeof l=="string"?[l]:l).forEach(f=>BWe(u,f.trim())))},"addState"),s0e=o(function(t){QE=[],sP=[],JE={root:a0e()},Xs=JE.root,$x=0,i1=n0e(),t||Lr()},"clear"),z0=o(function(t){return Xs.states.get(t)},"getState"),o0e=o(function(){return Xs.states},"getStates"),_We=o(function(){Y.info("Documents = ",JE)},"logDocuments"),LWe=o(function(){return Xs.relations},"getRelations");o(rP,"startIdIfNeeded");o(nP,"startTypeIfNeeded");o(DWe,"endIdIfNeeded");o(NWe,"endTypeIfNeeded");o(RWe,"addRelationObjs");l0e=o(function(t,e,r){if(typeof t=="object")RWe(t,e,r);else{let n=rP(t.trim()),i=nP(t),a=DWe(e.trim()),s=NWe(e);Cf(n,i),Cf(a,s),Xs.relations.push({id1:n,id2:a,title:qe.sanitizeText(r,pe())})}},"addRelation"),iP=o(function(t,e){let r=Xs.states.get(t),n=e.startsWith(":")?e.replace(":","").trim():e;r.descriptions.push(qe.sanitizeText(n,pe()))},"addDescription"),MWe=o(function(t){return t.substring(0,1)===":"?t.substr(2).trim():t.trim()},"cleanupLabel"),IWe=o(()=>(Jde++,"divider-id-"+Jde),"getDividerId"),c0e=o(function(t,e=""){i1.has(t)||i1.set(t,{id:t,styles:[],textStyles:[]});let r=i1.get(t);e?.split(TWe).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(Qde).exec(n)){let s=i.replace(Zde,wWe).replace(Qde,Zde);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),OWe=o(function(){return i1},"getClasses"),lP=o(function(t,e){t.split(",").forEach(function(r){let n=z0(r);if(n===void 0){let i=r.trim();Cf(i),n=z0(i)}n.classes.push(e)})},"setCssClass"),PWe=o(function(t,e){let r=z0(t);r!==void 0&&r.styles.push(e)},"setStyle"),BWe=o(function(t,e){let r=z0(t);r!==void 0&&r.textStyles.push(e)},"setTextStyle"),FWe=o(()=>i0e,"getDirection"),zWe=o(t=>{i0e=t},"setDirection"),GWe=o(t=>t&&t[0]===":"?t.substr(1).trim():t.trim(),"trimColon"),$We=o(()=>{let t=pe();return{nodes:QE,edges:sP,other:{},config:t,direction:eP(oP())}},"getData"),ol={getConfig:o(()=>pe().state,"getConfig"),getData:$We,addState:Cf,clear:s0e,getState:z0,getStates:o0e,getRelations:LWe,getClasses:OWe,getDirection:FWe,addRelation:l0e,getDividerId:IWe,setDirection:zWe,cleanupLabel:MWe,lineType:kWe,relationType:EWe,logDocuments:_We,getRootDoc:CWe,setRootDoc:SWe,getRootDocV2:oP,extract:AWe,trimColon:GWe,getAccTitle:Br,setAccTitle:Mr,getAccDescription:zr,setAccDescription:Fr,addStyleClass:c0e,setCssClass:lP,addDescription:iP,setDiagramTitle:cn,getDiagramTitle:Jr}});var VWe,t6,cP=M(()=>{"use strict";VWe=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"),t6=VWe});var uP,UWe,HWe,u0e,WWe,h0e,f0e=M(()=>{"use strict";uP={},UWe=o((t,e)=>{uP[t]=e},"set"),HWe=o(t=>uP[t],"get"),u0e=o(()=>Object.keys(uP),"keys"),WWe=o(()=>u0e().length,"size"),h0e={get:HWe,set:UWe,keys:u0e,size:WWe}});var YWe,qWe,XWe,jWe,p0e,KWe,QWe,ZWe,JWe,hP,d0e,m0e,g0e=M(()=>{"use strict";pr();f0e();e6();hr();fr();Vt();ut();YWe=o(t=>t.append("circle").attr("class","start-state").attr("r",pe().state.sizeUnit).attr("cx",pe().state.padding+pe().state.sizeUnit).attr("cy",pe().state.padding+pe().state.sizeUnit),"drawStartState"),qWe=o(t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",pe().state.textHeight).attr("class","divider").attr("x2",pe().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),XWe=o((t,e)=>{let r=t.append("text").attr("x",2*pe().state.padding).attr("y",pe().state.textHeight+2*pe().state.padding).attr("font-size",pe().state.fontSize).attr("class","state-title").text(e.id),n=r.node().getBBox();return t.insert("rect",":first-child").attr("x",pe().state.padding).attr("y",pe().state.padding).attr("width",n.width+2*pe().state.padding).attr("height",n.height+2*pe().state.padding).attr("rx",pe().state.radius),r},"drawSimpleState"),jWe=o((t,e)=>{let r=o(function(p,m,g){let y=p.append("tspan").attr("x",2*pe().state.padding).text(m);g||y.attr("dy",pe().state.textHeight)},"addTspan"),i=t.append("text").attr("x",2*pe().state.padding).attr("y",pe().state.textHeight+1.3*pe().state.padding).attr("font-size",pe().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),a=i.height,s=t.append("text").attr("x",pe().state.padding).attr("y",a+pe().state.padding*.4+pe().state.dividerMargin+pe().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",pe().state.padding).attr("y1",pe().state.padding+a+pe().state.dividerMargin/2).attr("y2",pe().state.padding+a+pe().state.dividerMargin/2).attr("class","descr-divider"),f=s.node().getBBox(),d=Math.max(f.width,i.width);return h.attr("x2",d+3*pe().state.padding),t.insert("rect",":first-child").attr("x",pe().state.padding).attr("y",pe().state.padding).attr("width",d+2*pe().state.padding).attr("height",f.height+a+2*pe().state.padding).attr("rx",pe().state.radius),t},"drawDescrState"),p0e=o((t,e,r)=>{let n=pe().state.padding,i=2*pe().state.padding,a=t.node().getBBox(),s=a.width,l=a.x,u=t.append("text").attr("x",0).attr("y",pe().state.titleShift).attr("font-size",pe().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-pe().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+pe().state.textHeight+pe().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",pe().state.titleShift-pe().state.textHeight-pe().state.padding).attr("width",d).attr("height",pe().state.textHeight*3).attr("rx",pe().state.radius),t.insert("rect",":first-child").attr("x",p).attr("y",pe().state.titleShift-pe().state.textHeight-pe().state.padding).attr("width",d).attr("height",m.height+3+2*pe().state.textHeight).attr("rx",pe().state.radius),t},"addTitleAndBox"),KWe=o(t=>(t.append("circle").attr("class","end-state-outer").attr("r",pe().state.sizeUnit+pe().state.miniPadding).attr("cx",pe().state.padding+pe().state.sizeUnit+pe().state.miniPadding).attr("cy",pe().state.padding+pe().state.sizeUnit+pe().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",pe().state.sizeUnit).attr("cx",pe().state.padding+pe().state.sizeUnit+2).attr("cy",pe().state.padding+pe().state.sizeUnit+2)),"drawEndState"),QWe=o((t,e)=>{let r=pe().state.forkWidth,n=pe().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",pe().state.padding).attr("y",pe().state.padding)},"drawForkJoinState"),ZWe=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(qe.lineBreakRegex),u=1.25*pe().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+pe().state.noteMargin),d.attr("y",r+i+1.25*pe().state.noteMargin)}}return{textWidth:a.node().getBBox().width,textHeight:i}},"_drawLongText"),JWe=o((t,e)=>{e.attr("class","state-note");let r=e.append("rect").attr("x",0).attr("y",pe().state.padding),n=e.append("g"),{textWidth:i,textHeight:a}=ZWe(t,0,0,n);return r.attr("height",a+2*pe().state.noteMargin),r.attr("width",i+pe().state.noteMargin*2),r},"drawNote"),hP=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"&&YWe(i),e.type==="end"&&KWe(i),(e.type==="fork"||e.type==="join")&&QWe(i,e),e.type==="note"&&JWe(e.note.text,i),e.type==="divider"&&qWe(i),e.type==="default"&&e.descriptions.length===0&&XWe(i,e),e.type==="default"&&e.descriptions.length>0&&jWe(i,e);let a=i.node().getBBox();return n.width=a.width+2*pe().state.padding,n.height=a.height+2*pe().state.padding,h0e.set(r,n),n},"drawState"),d0e=0,m0e=o(function(t,e,r){let n=o(function(u){switch(u){case ol.relationType.AGGREGATION:return"aggregation";case ol.relationType.EXTENSION:return"extension";case ol.relationType.COMPOSITION:return"composition";case ol.relationType.DEPENDENCY:return"dependency"}},"getRelationType");e.points=e.points.filter(u=>!Number.isNaN(u.y));let i=e.points,a=ns().x(function(u){return u.x}).y(function(u){return u.y}).curve(Po),s=t.append("path").attr("d",a(i)).attr("id","edge"+d0e).attr("class","transition"),l="";if(pe().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(ol.relationType.DEPENDENCY)+"End)"),r.title!==void 0){let u=t.append("g").attr("class","stateLabel"),{x:h,y:f}=Ut.calcLabelPosition(e.points),d=qe.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-pe().state.padding/2).attr("y",f-v/2-pe().state.padding/2-3.5).attr("width",g+pe().state.padding).attr("height",v+pe().state.padding),Y.info(x)}d0e++},"drawEdge")});var bo,fP,eYe,tYe,rYe,nYe,y0e,v0e,x0e=M(()=>{"use strict";pr();Qv();Gs();ut();fr();g0e();Vt();ai();fP={},eYe=o(function(){},"setConf"),tYe=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"),rYe=o(function(t,e,r,n){bo=pe().state;let i=pe().securityLevel,a;i==="sandbox"&&(a=Ve("#i"+e));let s=i==="sandbox"?Ve(a.nodes()[0].contentDocument.body):Ve("body"),l=i==="sandbox"?a.nodes()[0].contentDocument:document;Y.debug("Rendering diagram "+t);let u=s.select(`[id='${e}']`);tYe(u);let h=n.db.getRootDoc();y0e(h,u,void 0,!1,s,l,n);let f=bo.padding,d=u.node().getBBox(),p=d.width+f*2,m=d.height+f*2,g=p*1.75;Zr(u,m,g,bo.useMaxWidth),u.attr("viewBox",`${d.x-bo.padding} ${d.y-bo.padding} `+p+" "+m)},"draw"),nYe=o(t=>t?t.length*bo.fontSizeFactor:1,"getLabelWidth"),y0e=o((t,e,r,n,i,a,s)=>{let l=new Ir({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))),m0e(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*bo.padding,x.height=v.height+2*bo.padding,Y.debug("Doc rendered",x,l),x},"renderDoc"),v0e={setConf:eYe,draw:rYe}});var b0e={};vr(b0e,{diagram:()=>iYe});var iYe,w0e=M(()=>{"use strict";$O();e6();cP();x0e();iYe={parser:GE,db:ol,renderer:v0e,styles:t6,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,ol.clear()},"init")}});var E0e={};vr(E0e,{diagram:()=>lYe});var lYe,S0e=M(()=>{"use strict";$O();e6();cP();tP();lYe={parser:GE,db:ol,renderer:Kde,styles:t6,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,ol.clear()},"init")}});var dP,_0e,L0e=M(()=>{"use strict";dP=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,S=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 C=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()||S,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,G,z,W,Z={},j,oe,K,ee;;){if(B=g[g.length-1],this.defaultActions[B]?G=this.defaultActions[B]:((P===null||typeof P>"u")&&(P=N()),G=b[B]&&b[B][P]),typeof G>"u"||!G.length||!G[0]){var J="";ee=[];for(j in b[B])this.terminals_[j]&&j>L&&ee.push("'"+this.terminals_[j]+"'");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==S?"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(G[0]instanceof Array&&G.length>1)throw new Error("Parse Error: multiple actions possible at state: "+B+", token: "+P);switch(G[0]){case 1:g.push(P),v.push(I.yytext),x.push(I.yylloc),g.push(G[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(oe=this.productions_[G[1]][1],Z.$=v[v.length-oe],Z._$={first_line:x[x.length-(oe||1)].first_line,last_line:x[x.length-1].last_line,first_column:x[x.length-(oe||1)].first_column,last_column:x[x.length-1].last_column},C&&(Z._$.range=[x[x.length-(oe||1)].range[0],x[x.length-1].range[1]]),W=this.performAction.apply(Z,[w,T,_,D.yy,G[1],v,x].concat(A)),typeof W<"u")return W;oe&&(g=g.slice(0,-1*oe*2),v=v.slice(0,-1*oe),x=x.slice(0,-1*oe)),g.push(this.productions_[G[1]][0]),v.push(Z.$),x.push(Z._$),K=b[g[g.length-2]][g[g.length-1]],g.push(K);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}();dP.parser=dP;_0e=dP});var a1,pP,Vx,Ux,fYe,dYe,pYe,mYe,gYe,yYe,vYe,D0e,xYe,mP,N0e=M(()=>{"use strict";Vt();Ai();a1="",pP=[],Vx=[],Ux=[],fYe=o(function(){pP.length=0,Vx.length=0,a1="",Ux.length=0,Lr()},"clear"),dYe=o(function(t){a1=t,pP.push(t)},"addSection"),pYe=o(function(){return pP},"getSections"),mYe=o(function(){let t=D0e(),e=100,r=0;for(;!t&&r{r.people&&t.push(...r.people)}),[...new Set(t)].sort()},"updateActors"),yYe=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:a1,type:a1,people:a,task:t,score:n};Ux.push(s)},"addTask"),vYe=o(function(t){let e={section:a1,type:a1,description:t,task:t,classes:[]};Vx.push(e)},"addTaskOrg"),D0e=o(function(){let t=o(function(r){return Ux[r].processed},"compileTask"),e=!0;for(let[r,n]of Ux.entries())t(r),e=e&&n.processed;return e},"compileTasks"),xYe=o(function(){return gYe()},"getActors"),mP={getConfig:o(()=>pe().journey,"getConfig"),clear:fYe,setDiagramTitle:cn,getDiagramTitle:Jr,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addSection:dYe,getSections:pYe,getTasks:mYe,addTask:yYe,addTaskOrg:vYe,getActors:xYe}});var bYe,R0e,M0e=M(()=>{"use strict";bYe=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"),R0e=bYe});var gP,wYe,O0e,P0e,TYe,kYe,I0e,EYe,SYe,B0e,CYe,s1,F0e=M(()=>{"use strict";pr();lv();gP=o(function(t,e){return Sd(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=Dl().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=Dl().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"),O0e=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"),P0e=o(function(t,e){return AY(t,e)},"drawText"),TYe=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,P0e(t,e)},"drawLabel"),kYe=o(function(t,e,r){let n=t.append("g"),i=Nl();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,gP(n,i),B0e(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),I0e=-1,EYe=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");I0e++;let a=300+5*30;i.append("line").attr("id","task"+I0e).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=Nl();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,gP(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};O0e(i,f),l+=10}),B0e(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),SYe=o(function(t,e){i5(t,e)},"drawBackgroundRect"),B0e=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=rh[n].color,a={cx:20,cy:r,r:7,fill:i,stroke:"#000",pos:rh[n].position};s1.drawCircle(t,a);let s={x:40,y:r+7,fill:"#666",text:n,textMargin:e.boxTextMargin|5};s1.drawText(t,s),r+=20})}var AYe,rh,r6,G0,LYe,ll,yP,z0e,DYe,vP,G0e=M(()=>{"use strict";pr();F0e();Vt();ai();AYe=o(function(t){Object.keys(t).forEach(function(r){r6[r]=t[r]})},"setConf"),rh={};o(_Ye,"drawActorLegend");r6=pe().journey,G0=r6.leftMargin,LYe=o(function(t,e,r,n){let i=pe().journey,a=pe().securityLevel,s;a==="sandbox"&&(s=Ve("#i"+e));let l=a==="sandbox"?Ve(s.nodes()[0].contentDocument.body):Ve("body");ll.init();let u=l.select("#"+e);s1.initGraphics(u);let h=n.db.getTasks(),f=n.db.getDiagramTitle(),d=n.db.getActors();for(let x in rh)delete rh[x];let p=0;d.forEach(x=>{rh[x]={color:i.actorColours[p%i.actorColours.length],position:p},p++}),_Ye(u),ll.insert(0,0,G0,Object.keys(rh).length*50),DYe(u,h,0);let m=ll.getBounds();f&&u.append("text").text(f).attr("x",G0).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);let g=m.stopy-m.starty+2*i.diagramMarginY,y=G0+m.stopx+2*i.diagramMarginX;Zr(u,g,y,i.useMaxWidth),u.append("line").attr("x1",G0).attr("y1",i.height*4).attr("x2",y-G0-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"),ll={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=pe().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(ll.data,"startx",t-d*i.boxMargin,Math.min),a.updateVal(ll.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(ll.data,"starty",e-d*i.boxMargin,Math.min),a.updateVal(ll.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(ll.data,"startx",i,Math.min),this.updateVal(ll.data,"starty",s,Math.min),this.updateVal(ll.data,"stopx",a,Math.max),this.updateVal(ll.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")},yP=r6.sectionFills,z0e=r6.sectionColours,DYe=o(function(t,e,r){let n=pe().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=yP[l%yP.length],f=l%yP.length,h=z0e[l%z0e.length];let g=0,y=p.section;for(let x=d;x(rh[y]&&(g[y]=rh[y]),g),{});p.x=d*n.taskMargin+d*n.width+G0,p.y=s,p.width=n.diagramMarginX,p.height=n.diagramMarginY,p.colour=h,p.fill=u,p.num=f,p.actors=m,s1.drawTask(t,p,n),ll.insert(p.x,p.y,p.x+p.width+n.taskMargin,300+5*30)}},"drawTasks"),vP={setConf:AYe,draw:LYe}});var $0e={};vr($0e,{diagram:()=>NYe});var NYe,V0e=M(()=>{"use strict";L0e();N0e();M0e();G0e();NYe={parser:_0e,db:mP,renderer:vP,styles:R0e,init:o(t=>{vP.setConf(t.journey),mP.clear()},"init")}});var bP,j0e,K0e=M(()=>{"use strict";bP=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,S=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 C=D.yylloc;b.push(C);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,G,z,W,Z,j={},oe,K,ee,J;;){if(G=y[y.length-1],this.defaultActions[G]?z=this.defaultActions[G]:((F===null||typeof F>"u")&&(F=P()),z=w[G]&&w[G][F]),typeof z>"u"||!z.length||!z[0]){var H="";J=[];for(oe in w[G])this.terminals_[oe]&&oe>S&&J.push("'"+this.terminals_[oe]+"'");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:C,expected:J})}if(z[0]instanceof Array&&z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+G+", 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,C=D.yylloc,L>0&&L--);break;case 2:if(K=this.productions_[z[1]][1],j.$=x[x.length-K],j._$={first_line:b[b.length-(K||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(K||1)].first_column,last_column:b[b.length-1].last_column},O&&(j._$.range=[b[b.length-(K||1)].range[0],b[b.length-1].range[1]]),Z=this.performAction.apply(j,[_,E,T,k.yy,z[1],x,b].concat(I)),typeof Z<"u")return Z;K&&(y=y.slice(0,-1*K*2),x=x.slice(0,-1*K),b=b.slice(0,-1*K)),y.push(this.productions_[z[1]][0]),x.push(j.$),b.push(j._$),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}();bP.parser=bP;j0e=bP});var TP={};vr(TP,{addEvent:()=>ape,addSection:()=>tpe,addTask:()=>ipe,addTaskOrg:()=>spe,clear:()=>epe,default:()=>GYe,getCommonDb:()=>J0e,getSections:()=>rpe,getTasks:()=>npe});var o1,Z0e,wP,n6,l1,J0e,epe,tpe,rpe,npe,ipe,ape,spe,Q0e,GYe,ope=M(()=>{"use strict";Ai();o1="",Z0e=0,wP=[],n6=[],l1=[],J0e=o(()=>xy,"getCommonDb"),epe=o(function(){wP.length=0,n6.length=0,o1="",l1.length=0,Lr()},"clear"),tpe=o(function(t){o1=t,wP.push(t)},"addSection"),rpe=o(function(){return wP},"getSections"),npe=o(function(){let t=Q0e(),e=100,r=0;for(;!t&&rr.id===Z0e-1).events.push(t)},"addEvent"),spe=o(function(t){let e={section:o1,type:o1,description:t,task:t,classes:[]};n6.push(e)},"addTaskOrg"),Q0e=o(function(){let t=o(function(r){return l1[r].processed},"compileTask"),e=!0;for(let[r,n]of l1.entries())t(r),e=e&&n.processed;return e},"compileTasks"),GYe={clear:epe,getCommonDb:J0e,addSection:tpe,getSections:rpe,getTasks:npe,addTask:ipe,addTaskOrg:spe,addEvent:ape}});function hpe(t,e){t.each(function(){var r=Ve(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 $Ye,i6,VYe,UYe,cpe,HYe,WYe,lpe,YYe,qYe,XYe,kP,upe,jYe,KYe,QYe,ZYe,Af,fpe=M(()=>{"use strict";pr();$Ye=12,i6=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"),VYe=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=Dl().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=Dl().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"),UYe=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"),cpe=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"),HYe=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,cpe(t,e)},"drawLabel"),WYe=o(function(t,e,r){let n=t.append("g"),i=kP();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,i6(n,i),upe(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),lpe=-1,YYe=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");lpe++;let a=300+5*30;i.append("line").attr("id","task"+lpe).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"),VYe(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=kP();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,i6(i,s),upe(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),qYe=o(function(t,e){i6(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),XYe=o(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),kP=o(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),upe=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";pr();fpe();ut();Vt();ai();JYe=o(function(t,e,r,n){let i=pe(),a=i.leftMargin??50;Y.debug("timeline",n.db);let s=i.securityLevel,l;s==="sandbox"&&(l=Ve("#i"+e));let h=(s==="sandbox"?Ve(l.nodes()[0].contentDocument.body):Ve("body")).select("#"+e);h.append("g");let f=n.db.getTasks(),d=n.db.getCommonDb().getDiagramTitle();Y.debug("task",f),Af.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=Af.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=Af.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 C of I.events){let O={descr:C,section:I.section,number:I.section,width:150,padding:20,maxHeight:50};R+=Af.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(C=>C.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=Af.drawNode(k,D,w,i);Y.debug("sectionNode output",R),k.attr("transform",`translate(${x}, ${v})`),b+=m+50,I.length>0&&dpe(h,I,w,x,b,g,i,T,E,m,!1),x+=200*Math.max(I.length,1),b=v,w++}):(_=!1,dpe(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)"),Io(void 0,h,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),dpe=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=Af.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=Af.drawNode(f,h,r,a).height;s=s+p,f.attr("transform",`translate(${n}, ${i})`),i=i+10+p}return i=l,s},"drawEvents"),ppe={setConf:o(()=>{},"setConf"),draw:JYe}});var tqe,rqe,gpe,ype=M(()=>{"use strict";Lo();tqe=o(t=>{let e="";for(let r=0;r` + .edge { + stroke-width: 3; + } + ${tqe(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"),gpe=rqe});var vpe={};vr(vpe,{diagram:()=>nqe});var nqe,xpe=M(()=>{"use strict";K0e();ope();mpe();ype();nqe={db:TP,renderer:ppe,parser:j0e,styles:gpe}});var EP,Tpe,kpe=M(()=>{"use strict";EP=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,S,A,I,D){var k=I.length-1;switch(A){case 6:case 7:return S;case 8:S.getLogger().trace("Stop NL ");break;case 9:S.getLogger().trace("Stop EOF ");break;case 11:S.getLogger().trace("Stop NL2 ");break;case 12:S.getLogger().trace("Stop EOF2 ");break;case 15:S.getLogger().info("Node: ",I[k].id),S.addNode(I[k-1].length,I[k].id,I[k].descr,I[k].type);break;case 16:S.getLogger().trace("Icon: ",I[k]),S.decorateNode({icon:I[k]});break;case 17:case 21:S.decorateNode({class:I[k]});break;case 18:S.getLogger().trace("SPACELIST");break;case 19:S.getLogger().trace("Node: ",I[k].id),S.addNode(0,I[k].id,I[k].descr,I[k].type);break;case 20:S.decorateNode({icon:I[k]});break;case 25:S.getLogger().trace("node found ..",I[k-2]),this.$={id:I[k-1],descr:I[k-1],type:S.getType(I[k-2],I[k])};break;case 26:this.$={id:I[k],descr:I[k],type:S.nodeType.DEFAULT};break;case 27:S.getLogger().trace("node found ..",I[k-3]),this.$={id:I[k-3],descr:I[k-1],type:S.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],S=[],A=[null],I=[],D=this.table,k="",R=0,C=0,O=0,N=2,P=1,F=I.slice.call(arguments,1),B=Object.create(this.lexer),G={yy:{}};for(var z in this.yy)Object.prototype.hasOwnProperty.call(this.yy,z)&&(G.yy[z]=this.yy[z]);B.setInput(T,G.yy),G.yy.lexer=B,G.yy.parser=this,typeof B.yylloc>"u"&&(B.yylloc={});var W=B.yylloc;I.push(W);var Z=B.options&&B.options.ranges;typeof G.yy.parseError=="function"?this.parseError=G.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function j(ke){L.length=L.length-2*ke,A.length=A.length-ke,I.length=I.length-ke}o(j,"popStack");function oe(){var ke;return ke=S.pop()||B.lex()||P,typeof ke!="number"&&(ke instanceof Array&&(S=ke,ke=S.pop()),ke=E.symbols_[ke]||ke),ke}o(oe,"lex");for(var K,ee,J,H,q,Q,ae={},ue,ce,te,Ne;;){if(J=L[L.length-1],this.defaultActions[J]?H=this.defaultActions[J]:((K===null||typeof K>"u")&&(K=oe()),H=D[J]&&D[J][K]),typeof H>"u"||!H.length||!H[0]){var se="";Ne=[];for(ue in D[J])this.terminals_[ue]&&ue>N&&Ne.push("'"+this.terminals_[ue]+"'");B.showPosition?se="Parse error on line "+(R+1)+`: +`+B.showPosition()+` +Expecting `+Ne.join(", ")+", got '"+(this.terminals_[K]||K)+"'":se="Parse error on line "+(R+1)+": Unexpected "+(K==P?"end of input":"'"+(this.terminals_[K]||K)+"'"),this.parseError(se,{text:B.match,token:this.terminals_[K]||K,line:B.yylineno,loc:W,expected:Ne})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+K);switch(H[0]){case 1:L.push(K),A.push(B.yytext),I.push(B.yylloc),L.push(H[1]),K=null,ee?(K=ee,ee=null):(C=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},Z&&(ae._$.range=[I[I.length-(ce||1)].range[0],I[I.length-1].range[1]]),Q=this.performAction.apply(ae,[k,C,R,G.yy,H[1],A,I].concat(F)),typeof Q<"u")return Q;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 S=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),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===S.length?this.yylloc.first_column:0)+S[S.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,S,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))),S=T[0].match(/(?:\r\n?|\n).*/g),S&&(this.yylineno+=S.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:S?S[S.length-1].length-S[S.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+T[0].length},this.yytext+=T[0],this.match+=T[0],this.matches=T,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(T[0].length),this.matched+=T[0],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,S;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),I=0;IE[0].length)){if(E=L,S=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[S]),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,S,A){var I=A;switch(S){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}();EP.parser=EP;Tpe=EP});var Xl,Epe,SP,oqe,lqe,cqe,uqe,qi,hqe,fqe,dqe,pqe,mqe,gqe,yqe,Spe,Cpe=M(()=>{"use strict";Vt();fr();ut();bs();Xl=[],Epe=0,SP={},oqe=o(()=>{Xl=[],Epe=0,SP={}},"clear"),lqe=o(function(t){for(let e=Xl.length-1;e>=0;e--)if(Xl[e].levelXl.length>0?Xl[0]:null,"getMindmap"),uqe=o((t,e,r,n)=>{Y.info("addNode",t,e,r,n);let i=pe(),a=i.mindmap?.padding??ur.mindmap.padding;switch(n){case qi.ROUNDED_RECT:case qi.RECT:case qi.HEXAGON:a*=2}let s={id:Epe++,nodeId:kr(e,i),level:t,descr:kr(r,i),type:n,children:[],width:i.mindmap?.maxNodeWidth??ur.mindmap.maxNodeWidth,padding:a},l=lqe(t);if(l)l.children.push(s),Xl.push(s);else if(Xl.length===0)Xl.push(s);else throw new Error('There can be only one root. No parent could be found for ("'+s.descr+'")')},"addNode"),qi={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},hqe=o((t,e)=>{switch(Y.debug("In get type",t,e),t){case"[":return qi.RECT;case"(":return e===")"?qi.ROUNDED_RECT:qi.CLOUD;case"((":return qi.CIRCLE;case")":return qi.CLOUD;case"))":return qi.BANG;case"{{":return qi.HEXAGON;default:return qi.DEFAULT}},"getType"),fqe=o((t,e)=>{SP[t]=e},"setElementForId"),dqe=o(t=>{if(!t)return;let e=pe(),r=Xl[Xl.length-1];t.icon&&(r.icon=kr(t.icon,e)),t.class&&(r.class=kr(t.class,e))},"decorateNode"),pqe=o(t=>{switch(t){case qi.DEFAULT:return"no-border";case qi.RECT:return"rect";case qi.ROUNDED_RECT:return"rounded-rect";case qi.CIRCLE:return"circle";case qi.CLOUD:return"cloud";case qi.BANG:return"bang";case qi.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),mqe=o(()=>Y,"getLogger"),gqe=o(t=>SP[t],"getElementById"),yqe={clear:oqe,addNode:uqe,getMindmap:cqe,nodeType:qi,getType:hqe,setElementForId:fqe,decorateNode:dqe,type2Str:pqe,getLogger:mqe,getElementById:gqe},Spe=yqe});function Ki(t){"@babel/helpers - typeof";return Ki=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},Ki(t)}function tB(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function Ape(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 Hqe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}function Wqe(t,e){return e={exports:{}},t(e,e.exports),e.exports}function Zqe(t){for(var e=t.length;e--&&Qqe.test(t.charAt(e)););return e}function tXe(t){return t&&t.slice(0,Jqe(t)+1).replace(eXe,"")}function sXe(t){var e=iXe.call(t,Hx),r=t[Hx];try{t[Hx]=void 0;var n=!0}catch{}var i=aXe.call(t);return n&&(e?t[Hx]=r:delete t[Hx]),i}function uXe(t){return cXe.call(t)}function pXe(t){return t==null?t===void 0?dXe:fXe:Npe&&Npe in Object(t)?oXe(t):hXe(t)}function mXe(t){return t!=null&&typeof t=="object"}function vXe(t){return typeof t=="symbol"||gXe(t)&&Zme(t)==yXe}function kXe(t){if(typeof t=="number")return t;if(mb(t))return Rpe;if(X0(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=X0(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=rXe(t);var r=bXe.test(t);return r||wXe.test(t)?TXe(t.slice(2),r?2:8):xXe.test(t)?Rpe:+t}function AXe(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(EXe);e=Mpe(e)||0,X0(r)&&(f=!!r.leading,d="maxWait"in r,a=d?SXe(Mpe(r.maxWait)||0,e):a,p="trailing"in r?!!r.trailing:p);function m(E){var L=n,S=i;return n=i=void 0,h=E,s=t.apply(S,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,S=E-h,A=e-L;return d?CXe(A,a-S):A}o(y,"remainingWait");function v(E){var L=E-u,S=E-h;return u===void 0||L>=e||L<0||d&&S>=a}o(v,"shouldInvoke");function x(){var E=CP();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(CP())}o(_,"flush");function T(){var E=CP(),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 V6(t,e,r,n,i,a){var s;return ni(t)?s=t:s=k1[t]||k1.euclidean,e===0&&ni(t)?s(i,a):s(e,r,n,i,a)}function xKe(t,e){if(U6(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||mb(t)?!0:vKe.test(t)||!yKe.test(t)||e!=null&&t in Object(e)}function SKe(t){if(!X0(t))return!1;var e=Zme(t);return e==TKe||e==kKe||e==wKe||e==EKe}function _Ke(t){return!!Jpe&&Jpe in t}function RKe(t){if(t!=null){try{return NKe.call(t)}catch{}try{return t+""}catch{}}return""}function $Ke(t){if(!X0(t)||LKe(t))return!1;var e=CKe(t)?GKe:OKe;return e.test(MKe(t))}function UKe(t,e){return t?.[e]}function WKe(t,e){var r=HKe(t,e);return VKe(r)?r:void 0}function qKe(){this.__data__=lb?lb(null):{},this.size=0}function jKe(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(lb){var r=e[t];return r===QKe?void 0:r}return JKe.call(e,t)?e[t]:void 0}function iQe(t){var e=this.__data__;return lb?e[t]!==void 0:nQe.call(e,t)}function oQe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=lb&&e===void 0?sQe:e,this}function A1(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1}function wQe(t,e){var r=this.__data__,n=H6(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}function _1(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 Nge(t,e,r){if(r.isParent())for(var n=r._private.children,i=0;i0&&arguments[0]!==void 0?arguments[0]:aJe,e=arguments.length>1?arguments[1]:void 0,r=0;r0?k=C:D=C;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 S=o(function(D){return E||L(),t===e&&r===n?D:D===0?0:D===1?1:v(T(D),e,n)},"f");S.getControlPoints=function(){return[{x:t,y:e},{x:r,y:n}]};var A="generateBezier("+[t,e,r,n]+")";return S.toString=function(){return A},S}function vme(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 xme(t,e){return t.pfValue!=null||t.value!=null?t.pfValue!=null&&(e==null||e.type.units!=="%")?t.pfValue:t.value:t}function h1(t,e,r,n,i){var a=i!=null?i.type:null;r<0?r=0:r>1&&(r=1);var s=xme(t,i),l=xme(e,i);if(xt(s)&&xt(l))return vme(a,s,l,r,n);if(kn(s)&&kn(l)){for(var u=[],h=0;h0?(m==="spring"&&g.push(s.duration),s.easingImpl=w6[m].apply(null,g)):s.easingImpl=w6[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={};Xx(x.x,b.x)&&(w.x=h1(x.x,b.x,v,y)),Xx(x.y,b.y)&&(w.y=h1(x.y,b.y,v,y)),t.position(w)}var _=s.startPan,T=s.pan,E=a.pan,L=T!=null&&n;L&&(Xx(_.x,T.x)&&(E.x=h1(_.x,T.x,v,y)),Xx(_.y,T.y)&&(E.y=h1(_.y,T.y,v,y)),t.emit("pan"));var S=s.startZoom,A=s.zoom,I=A!=null&&n;I&&(Xx(S,A)&&(a.zoom=sb(a.minZoom,h1(S,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 S=E[L];S()}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||xJe(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 Xge(t){this.options=ir({},AJe,_Je,t)}function jge(t){this.options=ir({},LJe,t)}function Kge(t){this.options=ir({},DJe,t)}function Z6(t){this.options=ir({},NJe,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 Zge(t){this.options=ir({},XJe,t)}function bB(t){this.options=ir({},jJe,t)}function Jge(t){this.options=ir({},KJe,t)}function e1e(t){this.options=ir({},QJe,t)}function t1e(t){this.options=t,this.notifications=0}function i1e(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 TB(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}:(eet(t,e,r,n,i),{cx:qP,cy:XP,radius:W0,startX:r1e,startY:n1e,stopX:jP,stopY:KP,startAngle:Qc.ang+Math.PI/2*Y0,endAngle:cl.ang-Math.PI/2*Y0,counterClockwise:E6})}function a1e(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 Het(t,e){for(var r=atob(t),n=new ArrayBuffer(r.length),i=new Uint8Array(n),a=0;a{"use strict";o(Ki,"_typeof");o(tB,"_classCallCheck");o(Ape,"_defineProperties");o(rB,"_createClass");o($me,"_defineProperty$1");o(jl,"_slicedToArray");o(vqe,"_arrayWithHoles");o(xqe,"_iterableToArrayLimit");o(Vme,"_unsupportedIterableToArray");o(_pe,"_arrayLikeToArray");o(bqe,"_nonIterableRest");o(Ume,"_createForOfIteratorHelper");Xi=typeof window>"u"?null:window,Lpe=Xi?Xi.navigator:null;Xi&&Xi.document;wqe=Ki(""),Hme=Ki({}),Tqe=Ki(function(){}),kqe=typeof HTMLElement>"u"?"undefined":Ki(HTMLElement),db=o(function(e){return e&&e.instanceString&&ni(e.instanceString)?e.instanceString():null},"instanceStr"),Zt=o(function(e){return e!=null&&Ki(e)==wqe},"string"),ni=o(function(e){return e!=null&&Ki(e)===Tqe},"fn"),kn=o(function(e){return!wo(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},"array"),Ur=o(function(e){return e!=null&&Ki(e)===Hme&&!kn(e)&&e.constructor===Object},"plainObject"),Eqe=o(function(e){return e!=null&&Ki(e)===Hme},"object"),xt=o(function(e){return e!=null&&Ki(e)===Ki(1)&&!isNaN(e)},"number"),Sqe=o(function(e){return xt(e)&&Math.floor(e)===e},"integer"),C6=o(function(e){if(kqe!=="undefined")return e!=null&&e instanceof HTMLElement},"htmlElement"),wo=o(function(e){return pb(e)||Wme(e)},"elementOrCollection"),pb=o(function(e){return db(e)==="collection"&&e._private.single},"element"),Wme=o(function(e){return db(e)==="collection"&&!e._private.single},"collection"),nB=o(function(e){return db(e)==="core"},"core"),Yme=o(function(e){return db(e)==="stylesheet"},"stylesheet"),Cqe=o(function(e){return db(e)==="event"},"event"),If=o(function(e){return e==null?!0:!!(e===""||e.match(/^\s+$/))},"emptyString"),Aqe=o(function(e){return typeof HTMLElement>"u"?!1:e instanceof HTMLElement},"domElement"),_qe=o(function(e){return Ur(e)&&xt(e.x1)&&xt(e.x2)&&xt(e.y1)&&xt(e.y2)},"boundingBox"),Lqe=o(function(e){return Eqe(e)&&ni(e.then)},"promise"),Dqe=o(function(){return Lpe&&Lpe.userAgent.match(/msie|trident|edge/i)},"ms"),rb=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"),Bqe=o(function(e,r){return-1*Xme(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("^"+Mqe+"$").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"),Gqe=o(function(e){var r,n=new RegExp("^"+Nqe+"$").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"),$qe=o(function(e){return Uqe[e.toLowerCase()]},"colorname2tuple"),Vqe=o(function(e){return(kn(e)?e:null)||$qe(e)||Fqe(e)||Gqe(e)||zqe(e)},"color2tuple"),Uqe={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]},jme=o(function(e){for(var r=e.map,n=e.keys,i=n.length,a=0;a1&&arguments[1]!==void 0?arguments[1]:p1,n=r,i;i=e.next(),!i.done;)n=n*ege+i.value|0;return n},"hashIterableInts"),nb=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p1;return r*ege+e|0},"hashInt"),ib=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Kx;return(r<<5)+r+e|0},"hashIntAlt"),LXe=o(function(e,r){return e*2097152+r},"combineHashes"),_f=o(function(e){return e[0]*2097152+e[1]},"combineHashesArray"),a6=o(function(e,r){return[nb(e[0],r[0]),ib(e[1],r[1])]},"hashArrays"),DXe=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"),oB=o(function(e){e.splice(0,e.length)},"clearArray"),BXe=o(function(e,r){for(var n=0;n"u"?"undefined":Ki(Set))!==zXe?Set:GXe,G6=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||r===void 0||!nB(e)){di("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"){di("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 S1,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=[];kn(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,S;for(b==null&&(b=n),E=function(){S=[];for(var A=0,I=i(x.length/2);0<=I?AI;0<=I?A++:A--)S.push(A);return S}.apply(this).reverse(),L=[],_=0,T=E.length;_D;0<=D?++S:--S)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,S;for(w==null&&(w=n),T=x.length,S=b,E=x[b],_=2*b+1;_0;){var E=b.pop(),L=v(E),S=E.id();if(p[S]=L,L!==1/0)for(var A=E.neighborhood().intersect(g),I=0;I0)for(F.unshift(P);d[G];){var z=d[G];F.unshift(z.edge),F.unshift(z.node),B=z.node,G=B.id()}return l.spawn(F)},"pathTo")}},"dijkstra")},HXe={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 S=[],A=a,I=f,D=x[I];S.unshift(A),D!=null&&S.unshift(D),A=v[I],A!=null;)I=A.id(),D=x[I];return{found:!0,distance:d[_],path:this.spawn(S),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+S;!a&&g[k]>D&&(g[k]=D,b[k]=S,w[k]=T)}}}for(var R=0;R1&&arguments[1]!==void 0?arguments[1]:s,Ce=w(ke),Pe=[],Ie=Ce;;){if(Ie==null)return r.spawn();var $e=b(Ie),ye=$e.edge,X=$e.pred;if(Pe.unshift(Ie[0]),Ie.same(Re)&&Pe.length>0)break;ye!=null&&Pe.unshift(ye),Ie=X}return u.spawn(Pe)},"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=ZXe(a,e,r),n--}return r},"contractUntil"),JXe={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/QXe);if(a<2){di("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"),aje=o(function(e){return Math.PI*e/180},"deg2rad"),s6=o(function(e,r){return Math.atan2(r,e)-Math.PI/2},"getAngleFromDisp"),lB=Math.log2||function(t){return Math.log(t)/Math.log(2)},lge=o(function(e){return e>0?1:e<0?-1:0},"signum"),K0=o(function(e,r){return Math.sqrt(U0(e,r))},"dist"),U0=o(function(e,r){var n=r.x-e.x,i=r.y-e.y;return n*n+i*i},"sqdist"),sje=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"),lje=o(function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},"copyBoundingBox"),cje=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"),uje=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"),cge=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"),hje=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"),y6=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"),v6=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=jl(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"),Bpe=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"),cB=o(function(e,r){return!(e.x1>r.x2||r.x1>e.x2||e.x2r.y2||r.y1>e.y2)},"boundingBoxesIntersect"),T1=o(function(e,r,n){return e.x1<=r&&r<=e.x2&&e.y1<=n&&n<=e.y2},"inBoundingBox"),fje=o(function(e,r){return T1(e,r.x,r.y)},"pointInBoundingBox"),uge=o(function(e,r){return T1(e,r.x1,r.y1)&&T1(e,r.x2,r.y2)},"boundingBoxInBoundingBox"),hge=o(function(e,r,n,i,a,s,l){var u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",h=u==="auto"?Q0(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=Nf(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=Nf(e,r,n,i,w,_,T,E,!1),g.length>0)return g}if(p){var L=n-f+h-l,S=i+d+l,A=n+f-h+l,I=S;if(g=Nf(e,r,n,i,L,S,A,I,!1),g.length>0)return g}if(m){var D=n-f-l,k=i-d+h-l,R=D,C=i+d-h+l;if(g=Nf(e,r,n,i,D,k,R,C,!1),g.length>0)return g}var O;{var N=n-f+h,P=i-d+h;if(O=Qx(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=Qx(e,r,n,i,F,B,h+l),O.length>0&&O[0]>=F&&O[1]<=B)return[O[0],O[1]]}{var G=n+f-h,z=i+d-h;if(O=Qx(e,r,n,i,G,z,h+l),O.length>0&&O[0]>=G&&O[1]>=z)return[O[0],O[1]]}{var W=n-f+h,Z=i+d-h;if(O=Qx(e,r,n,i,W,Z,h+l),O.length>0&&O[0]<=W&&O[1]>=Z)return[O[0],O[1]]}return[]},"roundRectangleIntersectLine"),dje=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"),pje=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"),mje=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"),yje=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"),js=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"),ah=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=D6(f,-h);y=L6(v)}else y=f;return js(e,r,y)},"pointInsidePolygon"),xje=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"),LP=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"),Nf=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?LP(e,n,l)===l?[l,u]:LP(e,n,a)===a?[a,s]:LP(a,l,n)===n?[n,i]:[]:[]},"finiteLinesIntersect"),ob=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=D6(d,-u);m=L6(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(C)[0]:N=C.edgesTo(O)[0];var P=i(N);C=C.id(),S[C]>S[k]+P&&(S[C]=S[k]+P,A.nodes.indexOf(C)<0?A.push(C):A.updateItem(C),L[C]=0,E[C]=[]),S[C]==S[k]+P&&(L[C]=L[C]+L[k],E[C].push(k))}else for(var F=0;F0;){for(var W=T.pop(),Z=0;Z0&&l.push(n[u]);l.length!==0&&a.push(i.collection(l))}return a},"assign"),Oje=o(function(e,r){for(var n=0;n5&&arguments[5]!==void 0?arguments[5]:Fje,l=i,u,h,f=0;f=2?Wx(e,r,n,0,Vpe,zje):Wx(e,r,n,0,$pe)},"euclidean"),squaredEuclidean:o(function(e,r,n){return Wx(e,r,n,0,Vpe)},"squaredEuclidean"),manhattan:o(function(e,r,n){return Wx(e,r,n,0,$pe)},"manhattan"),max:o(function(e,r,n){return Wx(e,r,n,-1/0,Gje)},"max")};k1["squared-euclidean"]=k1.squaredEuclidean;k1.squaredeuclidean=k1.squaredEuclidean;o(V6,"clusteringDistance");$je=_a({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),hB=o(function(e){return $je(e)},"setOptions"),N6=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 V6(e,i.length,l,u,h,f)},"getDist"),DP=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"),Hje=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"),Xpe=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=Xpe(e,r,n),i},"assign"),jpe=o(function(e){for(var r=this.cy(),n=this.nodes(),i=iKe(e),a={},s=0;s=D?(k=D,D=C,R=O):C>k&&(k=C);for(var N=0;N0?1:0;L[A%i.minIterations*l+W]=Z,z+=Z}if(z>0&&(A>=i.minIterations-1||A==i.maxIterations-1)){for(var j=0,oe=0;oe1||E>1)&&(l=!0),d[w]=[],b.outgoers().forEach(function(S){S.isEdge()&&d[w].push(S.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,S;d[_].length;)E=d[_].shift(),L=p[E][0],S=p[E][1],_!=S?(d[S]=d[S].filter(function(A){return A!=E}),_=S):!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")},c6=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"),fKe={hopcroftTarjanBiconnected:c6,htbc:c6,htb:c6,hopcroftTarjanBiconnectedComponents:c6},u6=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"),dKe={tarjanStronglyConnected:u6,tsc:u6,tscc:u6,tarjanStronglyConnectedComponents:u6},vge={};[ab,UXe,HXe,YXe,XXe,KXe,JXe,Eje,v1,x1,$P,Bje,Kje,rKe,cKe,hKe,fKe,dKe].forEach(function(t){ir(vge,t)});xge=0,bge=1,wge=2,sh=o(function t(e){if(!(this instanceof t))return new t(e);this.id="Thenable/1.0.7",this.state=xge,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");sh.prototype={fulfill:o(function(e){return Kpe(this,bge,"fulfillValue",e)},"fulfill"),reject:o(function(e){return Kpe(this,wge,"rejectReason",e)},"reject"),then:o(function(e,r){var n=this,i=new sh;return n.onFulfilled.push(Zpe(e,i,"fulfill")),n.onRejected.push(Zpe(r,i,"reject")),Tge(n),i.proxy},"then")};Kpe=o(function(e,r,n,i){return e.state===xge&&(e.state=r,e[n]=i,Tge(e)),e},"deliver"),Tge=o(function(e){e.state===bge?Qpe(e,"onFulfilled",e.fulfillValue):e.state===wge&&Qpe(e,"onRejected",e.rejectReason)},"execute"),Qpe=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){kn(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")};x6.className=x6.classNames=x6.classes;Vr={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:ji,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Vr.variable="(?:[\\w-.]|(?:\\\\"+Vr.metaChar+"))+";Vr.className="(?:[\\w-]|(?:\\\\"+Vr.metaChar+"))+";Vr.value=Vr.string+"|"+Vr.number;Vr.id=Vr.variable;(function(){var t,e,r;for(t=Vr.comparatorOp.split("|"),r=0;r=0)&&e!=="="&&(Vr.comparatorOp+="|\\!"+e)})();pn=o(function(){return{checks:[]}},"newQuery"),Mt={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},UP=[{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 Bqe(t.selector,e.selector)}),CZe=function(){for(var t={},e,r=0;r0&&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"),RZe=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 Mt.GROUP:{var g=e(m);return g.substring(0,g.length-1)}case Mt.DATA_COMPARE:{var y=f.field,v=f.operator;return"["+y+n(e(v))+r(m)+"]"}case Mt.DATA_BOOL:{var x=f.operator,b=f.field;return"["+e(x)+b+"]"}case Mt.DATA_EXIST:{var w=f.field;return"["+w+"]"}case Mt.META_COMPARE:{var _=f.operator,T=f.field;return"[["+T+n(e(_))+r(m)+"]]"}case Mt.STATE:return m;case Mt.ID:return"#"+m;case Mt.CLASS:return"."+m;case Mt.PARENT:case Mt.CHILD:return a(f.parent,d)+n(">")+a(f.child,d);case Mt.ANCESTOR:case Mt.DESCENDANT:return a(f.ancestor,d)+" "+a(f.descendant,d);case Mt.COMPOUND_SPLIT:{var E=a(f.left,d),L=a(f.subject,d),S=a(f.right,d);return E+(E.length>0?" ":"")+L+S}case Mt.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 gB(this,t,e,Nge)};o(Rge,"addParent");E1.forEachUp=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return gB(this,t,e,Rge)};o(GZe,"addParentAndChildren");E1.forEachUpAndDown=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return gB(this,t,e,GZe)};E1.ancestors=E1.parents;cb=Mge={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")};cb.attr=cb.data;cb.removeAttr=cb.removeData;$Ze=Mge,Y6={};o(RP,"defineDegreeFunction");ir(Y6,{degree:RP(function(t,e){return e.source().same(e.target())?2:1}),indegree:RP(function(t,e){return e.target().same(t)?1:0}),outdegree:RP(function(t,e){return e.source().same(t)?1:0})});o(u1,"defineDegreeBoundsFunction");ir(Y6,{minDegree:u1("degree",function(t,e){return te}),minIndegree:u1("indegree",function(t,e){return te}),minOutdegree:u1("outdegree",function(t,e){return te})});ir(Y6,{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")};Zl.modelPosition=Zl.point=Zl.position;Zl.modelPositions=Zl.points=Zl.positions;Zl.renderedPoint=Zl.renderedPosition;Zl.relativePoint=Zl.relativePosition;VZe=Ige;b1=zf={};zf.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}};zf.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)};zf.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,C=I+D;return A>0&&C>0&&(k=I/C*A,R=D/C*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,S=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+S)/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"),H0=o(function(e,r){return r==null?e:Kl(e,r.x1,r.y1,r.x2,r.y2)},"updateBoundsFromBox"),Yx=o(function(e,r,n){return Ql(e,r,n)},"prefixedProperty"),h6=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,y6(d,1),Kl(e,d.x1,d.y1,d.x2,d.y2)}}},"updateBoundsFromArrow"),MP=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=Yx(s,"labelWidth",n),d=Yx(s,"labelHeight",n),p=Yx(s,"labelX",n),m=Yx(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,S=f,A=S/2,I=L/2,D,k,R,C;if(v)D=p-A,k=p+A,R=m-I,C=m+I;else{switch(u.value){case"left":D=p-S,k=p;break;case"center":D=p-A,k=p+A;break;case"right":D=p,k=p+S;break}switch(h.value){case"top":R=m-L,C=m;break;case"center":R=m-I,C=m+I;break;case"bottom":R=m,C=m+L;break}}D+=g-Math.max(b,_)-T-E,k+=g+Math.max(b,_)+T+E,R+=y-Math.max(b,_)-T-E,C+=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=C,P.w=k-D,P.h=C-R;var F=v&&x.strValue==="autorotate",B=x.pfValue!=null&&x.pfValue!==0;if(F||B){var G=F?Yx(a.rstyle,"labelAngle",n):x.pfValue,z=Math.cos(G),W=Math.sin(G),Z=(D+k)/2,j=(R+C)/2;if(!v){switch(u.value){case"left":Z=k;break;case"right":Z=D;break}switch(h.value){case"top":j=C;break;case"bottom":j=R;break}}var oe=o(function(ue,ce){return ue=ue-Z,ce=ce-j,{x:ue*z-ce*W+Z,y:ue*W+ce*z+j}},"rotate"),K=oe(D,R),ee=oe(D,C),J=oe(k,R),H=oe(k,C);D=Math.min(K.x,ee.x,J.x,H.x),k=Math.max(K.x,ee.x,J.x,H.x),R=Math.min(K.y,ee.y,J.y,H.y),C=Math.max(K.y,ee.y,J.y,H.y)}var q=O+"Rot",Q=N[q]=N[q]||{};Q.x1=D,Q.y1=R,Q.x2=k,Q.y2=C,Q.w=k-D,Q.h=C-R,Kl(e,D,R,k,C),Kl(a.labelBounds.all,D,R,k,C)}return e}},"updateBoundsFromLabel"),UZe=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(v6(e,[Math.ceil(p/2),Math.ceil(m/2)]),f!=0||d!==0){var g=uje(e,f,d);cge(e,g)}}}},"updateBoundsFromOutline"),HZe=o(function(e,r){var n=e._private.cy,i=n.styleEnabled(),a=n.headless(),s=Ks(),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(Ne){return Ne.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 S=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,C=e.outerHeight(),O=C/2;f=g-R,d=g+R,p=y-O,m=y+O,Kl(s,f,p,d,m),i&&r.includeOutlines&&UZe(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,Kl(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}Kl(s,f-I,p-I,d+I,m+I)}}else if(N==="bezier"||N==="unbundled-bezier"||N.endsWith("segments")||N.endsWith("taxi")){var G;switch(N){case"bezier":case"unbundled-bezier":G=v.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":G=v.linePts;break}if(G!=null)for(var z=0;zd){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,Kl(s,f,p,d,m)}if(i&&r.includeEdges&&h&&(h6(s,e,"mid-source"),h6(s,e,"mid-target"),h6(s,e,"source"),h6(s,e,"target")),i){var H=e.pstyle("ghost").value==="yes";if(H){var q=e.pstyle("ghost-offset-x").pfValue,Q=e.pstyle("ghost-offset-y").pfValue;Kl(s,s.x1+q,s.y1+Q,s.x2+q,s.y2+Q)}}var ae=l.bodyBounds=l.bodyBounds||{};Bpe(ae,s),v6(ae,x),y6(ae,1),i&&(f=s.x1,d=s.x2,p=s.y1,m=s.y2,Kl(s,f-S,p-S,d+S,m+S));var ue=l.overlayBounds=l.overlayBounds||{};Bpe(ue,s),v6(ue,x),y6(ue,1);var ce=l.labelBounds=l.labelBounds||{};ce.all!=null?cje(ce.all):ce.all=Ks(),i&&r.includeLabels&&(r.includeMainLabels&&MP(s,e,null),h&&(r.includeSourceLabels&&MP(s,e,"source"),r.includeTargetLabels&&MP(s,e,"target")))}return s.x1=ul(s.x1),s.y1=ul(s.y1),s.x2=ul(s.x2),s.y2=ul(s.y2),s.w=ul(s.x2-s.x1),s.h=ul(s.y2-s.y1),s.w>0&&s.h>0&&w&&(v6(s,x),y6(s,1)),s},"boundingBoxImpl"),Pge=o(function(e){var r=0,n=o(function(s){return(s?1:0)<=0;l--)s(l);return this};Ff.removeAllListeners=function(){return this.removeListener("*")};Ff.emit=Ff.trigger=function(t,e,r){var n=this.listeners,i=n.length;return this.emitting++,kn(e)||(e=[e]),sJe(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===iJe)&&a.eventMatches(a.context,d,s)){var p=[s];e!=null&&BXe(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":Ki(Symbol))!=e&&Ki(Symbol.iterator)!=e;r&&(R6[Symbol.iterator]=function(){var n=this,i={value:void 0,done:!1},a=0,s=this.length;return $me({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(Ur(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")});Ha.neighbourhood=Ha.neighborhood;Ha.closedNeighbourhood=Ha.closedNeighborhood;Ha.openNeighbourhood=Ha.openNeighborhood;ir(Ha,{source:hl(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:hl(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:mme({attr:"source"}),targets:mme({attr:"target"})});o(mme,"defineSourceFunction");ir(Ha,{edgesWith:hl(gme(),"edgesWith"),edgesTo:hl(gme({thisIsSrc:!0}),"edgesTo")});o(gme,"defineEdgesWithFunction");ir(Ha,{connectedEdges:hl(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")});Ha.componentsOf=Ha.components;Aa=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){di("A collection must have a reference to the core");return}var a=new Jc,s=!1;if(!r)r=[];else if(r.length>0&&Ur(r[0])&&!pb(r[0])){s=!0;for(var l=[],u=new S1,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 Aa(n,l),G=0;G0&&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(C){for(var O=C._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")}(),Rn=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"),w6={linear:o(function(e,r,n){return e+(r-e)*n},"linear"),ease:Rn(.25,.1,.25,1),"ease-in":Rn(.42,0,1,1),"ease-out":Rn(0,0,.58,1),"ease-in-out":Rn(.42,0,.58,1),"ease-in-sine":Rn(.47,0,.745,.715),"ease-out-sine":Rn(.39,.575,.565,1),"ease-in-out-sine":Rn(.445,.05,.55,.95),"ease-in-quad":Rn(.55,.085,.68,.53),"ease-out-quad":Rn(.25,.46,.45,.94),"ease-in-out-quad":Rn(.455,.03,.515,.955),"ease-in-cubic":Rn(.55,.055,.675,.19),"ease-out-cubic":Rn(.215,.61,.355,1),"ease-in-out-cubic":Rn(.645,.045,.355,1),"ease-in-quart":Rn(.895,.03,.685,.22),"ease-out-quart":Rn(.165,.84,.44,1),"ease-in-out-quart":Rn(.77,0,.175,1),"ease-in-quint":Rn(.755,.05,.855,.06),"ease-out-quint":Rn(.23,1,.32,1),"ease-in-out-quint":Rn(.86,0,.07,1),"ease-in-expo":Rn(.95,.05,.795,.035),"ease-out-expo":Rn(.19,1,.22,1),"ease-in-out-expo":Rn(1,0,0,1),"ease-in-circ":Rn(.6,.04,.98,.335),"ease-out-circ":Rn(.075,.82,.165,1),"ease-in-out-circ":Rn(.785,.135,.15,.86),spring:o(function(e,r,n){if(n===0)return w6.linear;var i=yJe(e,r,n);return function(a,s,l){return a+(s-a)*i(l)}},"spring"),"cubic-bezier":Rn};o(vme,"getEasedValue");o(xme,"getValue");o(h1,"ease");o(vJe,"step$1");o(Xx,"valid");o(xJe,"startAnimation");o(bme,"stepAll");bJe={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&&A6(o(function(a){bme(a,e),r()},"animationStep"))}o(r,"headlessStep");var n=e.renderer();n&&n.beforeRender?n.beforeRender(o(function(a,s){bme(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&&pb(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")},p6=o(function(e){return Zt(e)?new Pf(e):e},"argSelector"),qge={createEmitter:o(function(){var e=this._private;return e.emitter||(e.emitter=new q6(wJe,this)),this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(e,r,n){return this.emitter().on(e,p6(r),n),this},"on"),removeListener:o(function(e,r,n){return this.emitter().removeListener(e,p6(r),n),this},"removeListener"),removeAllListeners:o(function(){return this.emitter().removeAllListeners(),this},"removeAllListeners"),one:o(function(e,r,n){return this.emitter().one(e,p6(r),n),this},"one"),once:o(function(e,r,n){return this.emitter().one(e,p6(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(qge);WP={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")};WP.jpeg=WP.jpg;T6={layout:o(function(e){var r=this;if(e==null){di("Layout options must be specified to make a layout");return}if(e.name==null){di("A `name` must be specified to make a layout");return}var n=e.name,i=r.extension("layout",n);if(i==null){di("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")};T6.createLayout=T6.makeLayout=T6.layout;TJe={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")};YP.invalidateDimensions=YP.resize;k6={collection:o(function(e,r){return Zt(e)?this.$(e):wo(e)?e.collection():kn(e)?(r||(r={}),new Aa(this,e,r.unique,r.removed)):new Aa(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")};k6.elements=k6.filter=k6.$;Ya={},eb="t",EJe="f";Ya.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],S=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],C=[Math.round(E+(L-E)*_),Math.round(S+(A-S)*_),Math.round(I+(D-I)*_),Math.round(k+(R-k)*_)];a={bypass:n.bypass,name:n.name,value:C,strValue:"rgb("+C[0]+", "+C[1]+", "+C[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)};Ya.checkTrigger=function(t,e,r,n,i,a){var s=this.properties[e],l=i(s);l!=null&&l(r,n)&&a(s)};Ya.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)})};Ya.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()})})};Ya.checkTriggers=function(t,e,r,n){t.dirtyStyleCache(),this.checkZOrderTrigger(t,e,r,n),this.checkBoundsTrigger(t,e,r,n)};vb={};vb.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 Pf(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+/):kn(e)?w=e:w=[e],h.evenMultiple&&w.length%2!==0)return null;for(var _=[],T=[],E=[],L="",S=!1,A=0;A0?" ":"")+I.strValue}return h.validate&&!h.validate(_,T)?null:h.singleEnum&&S?_.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:aje(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+/),G=0;G0&&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:Ur(e)&&(s=e.level,e.position!=null?a=$6(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 wo(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")};J0.centre=J0.center;J0.autolockNodes=J0.autolock;J0.autoungrabifyNodes=J0.autoungrabify;hb={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})};hb.attr=hb.data;hb.removeAttr=hb.removeData;fb=o(function(e){var r=this;e=ir({},e);var n=e.container;n&&!C6(n)&&C6(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=Xi!==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 Aa(this),listeners:[],aniEles:new Aa(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:Ur(l.pan)&&xt(l.pan.x)?l.pan.x:0,y:Ur(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(Lqe);if(v)return C1.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&&(Ur(g)||kn(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,ni(l.ready)&&r.on("ready",l.ready);for(var v=0;v0,u=Ks(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),h;if(wo(e.roots))h=e.roots;else if(kn(e.roots)){for(var f=[],d=0;d0;){var O=C(),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?Ie/2:0),X=2*Math.PI/x[se].length*ke;return se===0&&x[0].length===1&&(ye=1),{x:Q.x+ye*Math.cos(X),y:Q.y+ye*Math.sin(X)}}else{var $e={x:Q.x+(ke+1-(Re+1)/2)*Ce,y:(se+1)*Pe};return $e}},"getPosition");return n.nodes().layoutPositions(this,e,ue),this};LJe={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(jge,"CircleLayout");jge.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=Ks(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 S=e.startAngle+L*h*(i?1:-1),A=f*Math.cos(S),I=f*Math.sin(S),D={x:l.x+A,y:l.y+I};return D},"getPos");return n.nodes().layoutPositions(this,e,_),this};DJe={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(Kge,"ConcentricLayout");Kge.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=Ks(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,S=Math.min(s.w,s.h)/2-E,A=S/(x.length+L?1:0);E=Math.min(E,A)}for(var I=0,D=0;D1&&e.avoidOverlap){var O=Math.cos(C)-Math.cos(0),N=Math.sin(C)-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,G=0;G=t.numIter||(FJe(n,t),n.temperature=n.temperature*t.coolingFactor,n.temperature=t.animationThreshold&&a(),A6(d)}},"frame");f()}else{for(;h;)h=s(u),u++;kme(n,t),l()}return this};Z6.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this};Z6.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};RJe=o(function(e,r,n){for(var i=n.eles.edges(),a=n.eles.nodes(),s=Ks(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(S);for(var f=0;fi.count?0:i.graph},"findLCA"),IJe=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=I6(e,l,u),v=I6(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"),$Je=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"),I6=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"),VJe=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"),HJe=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"),qJe=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"),XJe={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(Zge,"GridLayout");Zge.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=Ks(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(Z){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(j){if(j==null)return Math.min(u,h);var oe=Math.min(u,h);oe==u?u=j:h=j},"small"),d=o(function(j){if(j==null)return Math.max(u,h);var oe=Math.max(u,h);oe==u?u=j:h=j},"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,C++)},"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=yje(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||S.source,B=B||S.target,G=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,S,A){return Ql(L,S,A)}o(w,"preprop");function _(L,S){var A=L._private,I=p,D;S?D=S+"-":D="",L.boundingBox();var k=A.labelBounds[S||"main"],R=L.pstyle(D+"label").value,C=L.pstyle("text-events").strValue==="yes";if(!(!C||!R)){var O=w(A.rscratch,"labelX",S),N=w(A.rscratch,"labelY",S),P=w(A.rscratch,"labelAngle",S),F=L.pstyle(D+"text-margin-x").pfValue,B=L.pstyle(D+"text-margin-y").pfValue,G=k.x1-I-F,z=k.x2+I-F,W=k.y1-I-B,Z=k.y2+I-B;if(P){var j=Math.cos(P),oe=Math.sin(P),K=o(function(ue,ce){return ue=ue-O,ce=ce-N,{x:ue*j-ce*oe+O,y:ue*oe+ce*j+N}},"rotate"),ee=K(G,W),J=K(G,Z),H=K(z,W),q=K(z,Z),Q=[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(js(t,e,Q))return v(L),!0}else if(T1(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};tp.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=Ks({x1:t,y1:e,x2:r,y2:n}),d=0;d0?-(Math.PI-e.ang):Math.PI+e.ang},"invertVec"),eet=o(function(e,r,n,i,a){if(e!==_me?Lme(r,e,Qc):JJe(cl,Qc),Lme(r,n,cl),Cme=Qc.nx*cl.ny-Qc.ny*cl.nx,Ame=Qc.nx*cl.nx-Qc.ny*-cl.ny,nh=Math.asin(Math.max(-1,Math.min(1,Cme))),Math.abs(nh)<1e-6){qP=r.x,XP=r.y,W0=d1=0;return}Y0=1,E6=!1,Ame<0?nh<0?nh=Math.PI+nh:(nh=Math.PI-nh,Y0=-1,E6=!0):nh>0&&(Y0=-1,E6=!0),r.radius!==void 0?d1=r.radius:d1=i,$0=nh/2,m6=Math.min(Qc.len/2,cl.len/2),a?(Kc=Math.abs(Math.cos($0)*d1/Math.sin($0)),Kc>m6?(Kc=m6,W0=Math.abs(Kc*Math.sin($0)/Math.cos($0))):W0=d1):(Kc=Math.min(m6,d1),W0=Math.abs(Kc*Math.sin($0)/Math.cos($0))),jP=r.x+cl.nx*Kc,KP=r.y+cl.ny*Kc,qP=jP-cl.ny*W0*Y0,XP=KP+cl.nx*W0*Y0,r1e=r.x+Qc.nx*Kc,n1e=r.y+Qc.ny*Kc,_me=r},"calcCornerArc");o(i1e,"drawPreparedRoundCorner");o(TB,"getRoundCorner");qa={};qa.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,S){var A=S-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=jl(d,2),m=p[0],g=p[1],y=this.manualEndptToPx(t.target()[0],l),v=jl(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}};qa.findHaystackPoints=function(t){for(var e=0;e0?Math.max(ie-Ee,0):Math.min(ie+Ee,0)},"subDWH"),R=k(I,S),C=k(D,A),O=!1;b===h?x=Math.abs(R)>Math.abs(C)?i:n:b===u||b===l?(x=n,O=!0):(b===a||b===s)&&(x=i,O=!0);var N=x===n,P=N?C:R,F=N?D:I,B=lge(F),G=!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),G=!0);var z;if(_){var W=T<0?1+T:T;z=W*P}else{var Z=T<0?P:0;z=Z+T*B}var j=o(function(ie){return Math.abs(ie)=Math.abs(P)},"getIsTooClose"),oe=j(z),K=j(Math.abs(P)-Math.abs(z)),ee=oe||K;if(ee&&!G)if(N){var J=Math.abs(F)<=p/2,H=Math.abs(I)<=m/2;if(J){var q=(f.x1+f.x2)/2,Q=f.y1,ae=f.y2;r.segpts=[q,Q,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 Ne=Math.abs(F)<=d/2,se=Math.abs(D)<=g/2;if(Ne){var ke=(f.y1+f.y2)/2,Re=f.x1,Ce=f.x2;r.segpts=[Re,ke,Ce,ke]}else if(se){var Pe=(f.x1+f.x2)/2,Ie=f.y1,$e=f.y2;r.segpts=[Pe,Ie,Pe,$e]}else r.segpts=[f.x2,f.y1]}else if(N){var ye=f.y1+z+(v?p/2*B:0),X=f.x1,fe=f.x2;r.segpts=[X,ye,fe,ye]}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 ve=t.pstyle("taxi-radius").value,U=t.pstyle("radius-type").value[0]==="arc-radius";r.radii=new Array(r.segpts.length/2).fill(ve),r.isArcRadius=new Array(r.segpts.length/2).fill(U)}};qa.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=K0({x:r.ctrlpts[0],y:r.ctrlpts[1]},{x:r.startX,y:r.startY}),L=EC.poolIndex()){var O=R;R=C,C=O}var N=A.srcPos=R.position(),P=A.tgtPos=C.position(),F=A.srcW=R.outerWidth(),B=A.srcH=R.outerHeight(),G=A.tgtW=C.outerWidth(),z=A.tgtH=C.outerHeight(),W=A.srcShape=r.nodeShapes[e.getNodeShape(R)],Z=A.tgtShape=r.nodeShapes[e.getNodeShape(C)],j=A.srcCornerRadius=R.pstyle("corner-radius").value==="auto"?"auto":R.pstyle("corner-radius").pfValue,oe=A.tgtCornerRadius=C.pstyle("corner-radius").value==="auto"?"auto":C.pstyle("corner-radius").pfValue,K=A.tgtRs=C._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=U0(ae,m1(r)),ce=U0(ae,m1(Q)),te=ue;if(ce2){var Ne=U0(ae,{x:Q[2],y:Q[3]});Ne0){var ne=s,ve=U0(ne,m1(r)),U=U0(ne,m1(ge)),Te=ve;if(U2){var ie=U0(ne,{x:ge[2],y:ge[3]});ie=g||L){v={cp:_,segment:E};break}}if(v)break}var S=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=sb(0,k,1),e=y1(S.p0,S.p1,S.p2,k),p=ret(S.p0,S.p1,S.p2,k);break}case"straight":case"segments":case"haystack":{for(var R=0,C,O,N,P,F=n.allpts.length,B=0;B+3=g));B+=2);var G=g-O,z=G/C;z=sb(0,z,1),e=oje(N,P,z),p=o1e(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)}};tu.applyLabelDimensions=function(t){this.applyPrefixedLabelDimensions(t),t.isEdge()&&(this.applyPrefixedLabelDimensions(t,"source"),this.applyPrefixedLabelDimensions(t,"target"))};tu.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=Ql(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;Df(r.rstyle,"labelWidth",e,d),Df(r.rscratch,"labelWidth",e,d),Df(r.rstyle,"labelHeight",e,p),Df(r.rscratch,"labelHeight",e,p),Df(r.rscratch,"labelLineHeight",e,f)};tu.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(Z,j){return j?(Df(r.rscratch,Z,e,j),j):Ql(r.rscratch,Z,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,S=Ume(T),A;try{for(S.s();!(A=S.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,C=this.calculateLabelDimensions(t,R),O=C.width;O<=d?E+=k+D:(E&&g.push(E),E=k+D)}}catch(W){S.e(W)}finally{S.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[G],G===i.length-1&&(B=!0)}return B||(P+=F),P}return i};tu.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};tu.calculateLabelDimensions=function(t,e){var r=this,n=r.cy.window(),i=n.document,a=j0(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 yt=i(X);Oe&&(t.hoverData.tapholdCancelled=!0);var Ue=o(function(){var Bt=t.hoverData.dragDelta=t.hoverData.dragDelta||[];Bt.length===0?(Bt.push(me[0]),Bt.push(me[1])):(Bt[0]+=me[0],Bt[1]+=me[1])},"updateDragDelta");he=!0,n(Ae,["mousemove","vmousemove","tapdrag"],X,{x:U[0],y:U[1]});var tt=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(Oe){var ht={originalEvent:X,type:"cxtdrag",position:{x:U[0],y:U[1]}};Be?Be.emit(ht):ge.emit(ht),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 Et;if(t.hoverData.justStartedPan){var er=t.hoverData.mdownPos;Et={x:(U[0]-er[0])*ne,y:(U[1]-er[1])*ne},t.hoverData.justStartedPan=!1}else Et={x:me[0]*ne,y:me[1]*ne};ge.panBy(Et),ge.emit("dragpan"),t.hoverData.dragged=!0}U=t.projectIntoViewport(X.clientX,X.clientY)}else if(Ee[4]==1&&(Be==null||Be.pannable())){if(Oe){if(!t.hoverData.dragging&&ge.boxSelectionEnabled()&&(yt||!ge.panningEnabled()||!ge.userPanningEnabled()))tt();else if(!t.hoverData.selecting&&ge.panningEnabled()&&ge.userPanningEnabled()){var dt=a(Be,t.hoverData.downs);dt&&(t.hoverData.dragging=!0,t.hoverData.justStartedPan=!0,Ee[4]=0,t.data.bgActivePosistion=m1(Te),t.redrawHint("select",!0),t.redraw())}Be&&Be.pannable()&&Be.active()&&Be.unactivate()}}else{if(Be&&Be.pannable()&&Be.active()&&Be.unactivate(),(!Be||!Be.grabbed())&&Ae!=Ge&&(Ge&&n(Ge,["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),Be)if(Oe){if(ge.boxSelectionEnabled()&&yt)Be&&Be.grabbed()&&(v(He),Be.emit("freeon"),He.emit("free"),t.dragData.didDrag&&(Be.emit("dragfreeon"),He.emit("dragfree"))),tt();else if(Be&&Be.grabbed()&&t.nodeIsDraggable(Be)){var Je=!t.dragData.didDrag;Je&&t.redrawHint("eles",!0),t.dragData.didDrag=!0,t.hoverData.draggingEles||g(He,{inDragLayer:!0});var ct={x:0,y:0};if(xt(me[0])&&xt(me[1])&&(ct.x+=me[0],ct.y+=me[1],Je)){var Ct=t.hoverData.dragDelta;Ct&&xt(Ct[0])&&xt(Ct[1])&&(ct.x+=Ct[0],ct.y+=Ct[1])}t.hoverData.draggingEles=!0,He.silentShift(ct).emit("position drag"),t.redrawHint("drag",!0),t.redraw()}}else Ue();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,ve=t.findNearestElement(ge[0],ge[1],!0,!1),U=t.dragData.possibleDragElements,Te=t.hoverData.down,ie=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(ve,["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()),ve==Te&&!t.dragData.didDrag&&!t.hoverData.selecting&&ve!=null&&ve._private.selectable&&(t.hoverData.dragging||(he.selectionType()==="additive"||ie?ve.selected()?ve.unselect(["tapunselect"]):ve.select(["tapselect"]):ie||(he.$(r).unmerge(ve).unselect(["tapunselect"]),ve.select(["tapselect"]))),t.redrawHint("eles",!0)),t.hoverData.selecting){var Ge=he.collection(t.getAllInBox(ne[0],ne[1],ne[2],ne[3]));t.redrawHint("select",!0),Ge.length>0&&t.redrawHint("eles",!0),he.emit({type:"boxend",originalEvent:X,position:{x:ge[0],y:ge[1]}});var Be=o(function(Oe){return Oe.selectable()&&!Oe.selected()},"eleWouldBeSelected");he.selectionType()==="additive"||ie||he.$(r).unmerge(Ge).unselect(),Ge.emit("box").stdFilter(Be).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),ve=[ne[0]*he+ge.x,ne[1]*he+ge.y];if(t.hoverData.draggingEles||t.hoverData.dragging||t.hoverData.cxtStarted||S()){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 ie=fe.zoom()*Math.pow(10,U);X.type==="gesturechange"&&(ie=t.gestureStartZoom*X.scale),fe.zoom({level:ie,renderedPosition:{x:ve[0],y:ve[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(ye){t.hasTouchStarted||R(ye)},!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 C,O,N,P,F,B,G,z,W,Z,j,oe,K,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 ve=t.findContainerClientCoords();W=ve[0],Z=ve[1],j=ve[2],oe=ve[3],C=X.touches[0].clientX-W,O=X.touches[0].clientY-Z,N=X.touches[1].clientX-W,P=X.touches[1].clientY-Z,K=0<=C&&C<=j&&0<=N&&N<=j&&0<=O&&O<=oe&&0<=P&&P<=oe;var U=fe.pan(),Te=fe.zoom();F=ee(C,O,N,P),B=J(C,O,N,P),G=[(C+N)/2,(O+P)/2],z=[(G[0]-U.x)/Te,(G[1]-U.y)/Te];var ie=200,Ee=ie*ie;if(B=1){for(var bt=t.touchData.startPosition=[null,null,null,null,null,null],kt=0;kt=t.touchTapThreshold2}if(fe&&t.touchData.cxt){X.preventDefault();var bt=X.touches[0].clientX-W,kt=X.touches[0].clientY-Z,vt=X.touches[1].clientX-W,rt=X.touches[1].clientY-Z,yt=J(bt,kt,vt,rt),Ue=yt/B,tt=150,ht=tt*tt,Et=1.5,er=Et*Et;if(Ue>=er||yt>=ht){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 Je=t.findNearestElement(ne[0],ne[1],!0,!0);(!t.touchData.cxtOver||Je!==t.touchData.cxtOver)&&(t.touchData.cxtOver&&t.touchData.cxtOver.emit({originalEvent:X,type:"cxtdragout",position:{x:ne[0],y:ne[1]}}),t.touchData.cxtOver=Je,Je&&Je.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 Ct=0;Ct0&&!t.hoverData.draggingEles&&!t.swipePanning&&t.data.bgActivePosistion!=null&&(t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.redraw())}},"touchmoveHandler"),!1);var Q;t.registerBinding(e,"touchcancel",Q=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,ve=ne.zoom(),U=t.touchData.now,Te=t.touchData.earlier;if(X.touches[0]){var ie=t.projectIntoViewport(X.touches[0].clientX,X.touches[0].clientY);U[0]=ie[0],U[1]=ie[1]}if(X.touches[1]){var ie=t.projectIntoViewport(X.touches[1].clientX,X.touches[1].clientY);U[2]=ie[0],U[3]=ie[1]}if(X.touches[2]){var ie=t.projectIntoViewport(X.touches[2].clientX,X.touches[2].clientY);U[4]=ie[0],U[5]=ie[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 Ge=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 Be=o(function(ht){return ht.selectable()&&!ht.selected()},"eleWouldBeSelected");Ge.emit("box").stdFilter(Be).select().emit("boxselect"),Ge.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 He=fe._private.grabbed;v(me),t.redrawHint("drag",!0),t.redrawHint("eles",!0),He&&(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 Oe=t.findNearestElement(U[0],U[1],!0,!0);n(Oe,["touchend","tapend","vmouseup","tapdragout"],X,{x:U[0],y:U[1]})}var et=t.touchData.startPosition[0]-U[0],bt=et*et,kt=t.touchData.startPosition[1]-U[1],vt=kt*kt,rt=bt+vt,yt=rt*ve*ve;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&&yt"u"){var Ne=[],se=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:se(X)}},"makePointer"),Re=o(function(X){Ne.push(ke(X))},"addPointer"),Ce=o(function(X){for(var fe=0;fe0)return W[0]}return null},"getCurveT"),g=Object.keys(p),y=0;y0?m:hge(a,s,e,r,n,i,l,u)},"intersectLine"),checkPoint:o(function(e,r,n,i,a,s,l,u){u=u==="auto"?Q0(i,a):u;var h=2*u;if(ah(e,r,this.points,s,l,i,a-h,[0,-1],n)||ah(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!!(js(e,r,p)||q0(e,r,h,h,s+i/2-u,l+a/2-u,n)||q0(e,r,h,h,s-i/2+u,l+a/2-u,n))},"checkPoint")}};oh.registerNodeShapes=function(){var t=this.nodeShapes={},e=this;this.generateEllipse(),this.generatePolygon("triangle",ms(3,0)),this.generateRoundPolygon("round-triangle",ms(3,0)),this.generatePolygon("rectangle",ms(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",ms(5,0)),this.generateRoundPolygon("round-pentagon",ms(5,0)),this.generatePolygon("hexagon",ms(6,0)),this.generateRoundPolygon("round-hexagon",ms(6,0)),this.generatePolygon("heptagon",ms(7,0)),this.generateRoundPolygon("round-heptagon",ms(7,0)),this.generatePolygon("octagon",ms(8,0)),this.generateRoundPolygon("round-octagon",ms(8,0));var n=new Array(20);{var i=zP(5,0),a=zP(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*PP)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||sB;i.beforeRender(s,l(n))}},"setupDequeueingImpl")},"setupDequeueing")},iet=function(){function t(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_6;tB(this,t),this.idsByKey=new Jc,this.keyForId=new Jc,this.cachesByLvl=new Jc,this.lvls=[],this.getKey=e,this.doesEleInvalidateKey=r}return o(t,"ElementTextureCacheLookup"),rB(t,[{key:"getIdsFor",value:o(function(r){r==null&&di("Can not get id list for null key");var n=this.idsByKey,i=this.idsByKey.get(r);return i||(i=new S1,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 Jc,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}(),Mme=25,g6=50,S6=-4,QP=3,aet=7.99,set=8,oet=1024,cet=1024,uet=1024,het=.2,fet=.8,det=10,pet=.15,met=.1,get=.9,yet=.9,vet=100,xet=1,g1={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},bet=_a({getKey:null,doesEleInvalidateKey:_6,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:nge,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),Jx=o(function(e,r){var n=this;n.renderer=e,n.onDequeues=[];var i=bet(r);ir(n,i),n.lookup=new iet(i.getKey,i.doesEleInvalidateKey),n.setupDequeueing()},"ElementTextureCache"),Qi=Jx.prototype;Qi.reasons=g1;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 gb(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(lB(l*r))),n=aet||n>QP)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<=Mme?g=Mme:f<=g6?g=g6:g=Math.ceil(f/g6)*g6,f>uet||d>cet)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,g1.downscale);I()}else return a.queueElement(t,E.level-1),E;else{var k;if(!w&&!_&&!T)for(var R=n-1;R>=S6;R--){var C=u.get(t,R);if(C){k=C;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+set),v.eleCaches.push(m),u.set(t,n,m),a.checkTextureFullness(v),m};Qi.invalidateElements=function(t){for(var e=0;e=het*t.width&&this.retireTexture(t)};Qi.checkTextureFullness=function(t){var e=this,r=e.getTextureQueue(t.height);t.usedWidth/t.width>fet&&t.fullnessChecks>=det?Of(r,t):t.fullnessChecks++};Qi.retireTexture=function(t){var e=this,r=t.height,n=e.getTextureQueue(r),i=this.lookup;Of(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,oB(s.eleCaches),s.context.setTransform(1,0,0,1,0,0),s.context.clearRect(0,0,s.width,s.height),Of(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,g1.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=aB,r.updateItem(a),r.pop(),n[i]=null):a.eles.unmerge(t))};Qi.onDequeue=function(t){this.onDequeues.push(t)};Qi.offDequeue=function(t){Of(this.onDequeues,t)};Qi.setupDequeueing=f1e.setupDequeueing({deqRedrawThreshold:vet,deqCost:pet,deqAvgCost:met,deqNoDrawCost:get,deqFastCost:yet,deq:o(function(e,r,n){return e.dequeue(r,n)},"deq"),onDeqd:o(function(e,r){for(var n=0;n=Tet||r>P6)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;tb<=N&&N<=P6&&!I(N);N+=O);},"checkLvls");D(1),D(-1);for(var k=f.length-1;k>=0;k--){var R=f[k];R.invalid&&Of(f,R)}},"checkTempLevels");if(!p)g();else return f;var y=o(function(){if(!d){d=Ks();for(var I=0;INet)return null;var R=n.makeLayer(d,r);if(D!=null){var C=f.indexOf(D)+1;f.splice(C,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/wet,w=!l,_=0;_=b||!uge(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)};La.getEleLevelForLayerLevel=function(t,e){return t};La.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,Ret),a.setImgSmoothing(s,!0))};La.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};La.validateLayersElesOrdering=function(t,e){var r=this.layersByLevel[t];if(r)for(var n=0;n0){e=!0;break}}return e};La.invalidateElements=function(t){var e=this;t.length!==0&&(e.lastInvalidationTime=ih(),!(t.length===0||!e.haveLayers())&&e.updateElementsInLayers(t,o(function(n,i,a){e.invalidateLayer(n)},"invalAssocLayers")))};La.invalidateLayer=function(t){if(this.lastInvalidationTime=ih(),!t.invalid){var e=t.level,r=t.eles,n=this.layersByLevel[e];Of(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"),S=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(),S(),r&&t.translate(u.x1,u.y1)}};m1e=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");lh.drawEdgeOverlay=m1e("overlay");lh.drawEdgeUnderlay=m1e("underlay");lh.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)};rp.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(FP,"roundRect");rp.getTextAngle=function(t,e){var r,n=t._private,i=n.rscratch,a=e?e+"-":"",s=t.pstyle(a+"text-rotation"),l=Ql(i,"labelAngle",e);return s.strValue==="autorotate"?r=t.isEdge()?l:0:s.strValue==="none"?r=0:r=s.pfValue,r};rp.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=Ql(s,"labelX",r),h=Ql(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=Ql(s,"labelWidth",r),y=Ql(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,S=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||S>0&&L>0){var R=u-A;switch(w){case"left":R-=g;break;case"center":R-=g/2;break}var C=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?FP(t,R,C,O,N,k):t.fillRect(R,C,O,N),t.fillStyle=P}if(S>0&&L>0){var B=t.strokeStyle,G=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=S,t.setLineDash)switch(W){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"double":t.lineWidth=S/4,t.setLineDash([]);break;case"solid":t.setLineDash([]);break}if(D?FP(t,R,C,O,N,k,"stroke"):t.strokeRect(R,C,O,N),W==="double"){var Z=S/2;D?FP(t,R+Z,C+Z,O-Z*2,N-Z*2,k,"stroke"):t.strokeRect(R+Z,C+Z,O-Z*2,N-Z*2)}t.setLineDash&&t.setLineDash([]),t.lineWidth=G,t.strokeStyle=B}}var j=2*e.pstyle("text-outline-width").pfValue;if(j>0&&(t.lineWidth=j),e.pstyle("text-wrap").value==="wrap"){var oe=Ql(s,"labelWrapCachedLines",r),K=Ql(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-=(oe.length-1)*K;break;case"center":case"bottom":h-=(oe.length-1)*K;break}for(var H=0;H0&&t.strokeText(oe[H],u,h),t.fillText(oe[H],u,h),h+=K}else j>0&&t.strokeText(p,u,h),t.fillText(p,u,h);T!==0&&(t.rotate(-T),t.translate(-f,-d))}}};I1={};I1.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,ve)},"setupShapeColor"),H=o(function(){var ve=arguments.length>0&&arguments[0]!==void 0?arguments[0]:z;s.colorStrokeStyle(t,C[0],C[1],C[2],ve)},"setupBorderColor"),q=o(function(){var ve=arguments.length>0&&arguments[0]!==void 0?arguments[0]:oe;s.colorStrokeStyle(t,Z[0],Z[1],Z[2],ve)},"setupOutlineColor"),Q=o(function(ve,U,Te,ie){var Ee=s.nodePathCache=s.nodePathCache||[],Ae=rge(Te==="polygon"?Te+","+ie.join(","):Te,""+U,""+ve,""+ee),Ge=Ee[Ae],Be,me=!1;return Ge!=null?(Be=Ge,me=!0,f.pathCache=Be):(Be=new Path2D,Ee[Ae]=f.pathCache=Be),{path:Be,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=Q(l,u,ae,ue);g=ce.path,y=ce.cacheHit}var te=o(function(){if(!y){var ve=d;m&&(ve={x:0,y:0}),s.nodeShapes[s.getNodeShape(e)].draw(g||t,ve.x,ve.y,l,u,ee,f)}m?t.fill(g):t.fill()},"drawShape"),Ne=o(function(){for(var ve=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,U=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,Te=h.backgrounding,ie=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),ve&&(m||s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,ee,f)))},"drawPie"),ke=o(function(){var ve=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,U=(D>0?D:-D)*ve,Te=D>0?0:255;D!==0&&(s.colorFillStyle(t,Te,Te,Te,U),m?t.fill(g):t.fill())},"darken"),Re=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=G;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 ve=new Path2D;ve.rect(-l/2-k,-u/2-k,l+2*k,u+2*k),ve.addPath(g),t.clip(ve,"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"),Ce=o(function(){if(W>0){if(t.lineWidth=W,t.lineCap="butt",t.setLineDash)switch(j){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"solid":case"double":t.setLineDash([]);break}var ve=d;m&&(ve={x:0,y:0});var U=s.getNodeShape(e),Te=k;F==="inside"&&(Te=0),F==="outside"&&(Te*=2);var ie=(l+Te+(W+K))/l,Ee=(u+Te+(W+K))/u,Ae=l*ie,Ge=u*Ee,Be=s.nodeShapes[U].points,me;if(m){var He=Q(Ae,Ge,U,Be);me=He.path}if(U==="ellipse")s.drawEllipsePath(me||t,ve.x,ve.y,Ae,Ge);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(U)){var Oe=0,et=0,bt=0;U==="round-diamond"?Oe=(Te+K+W)*1.4:U==="round-heptagon"?(Oe=(Te+K+W)*1.075,bt=-(Te/2+K+W)/35):U==="round-hexagon"?Oe=(Te+K+W)*1.12:U==="round-pentagon"?(Oe=(Te+K+W)*1.13,bt=-(Te/2+K+W)/15):U==="round-tag"?(Oe=(Te+K+W)*1.12,et=(Te/2+W+K)*.07):U==="round-triangle"&&(Oe=(Te+K+W)*(Math.PI/2),bt=-(Te+K/2+W)/Math.PI),Oe!==0&&(ie=(l+Oe)/l,Ae=l*ie,["round-hexagon","round-tag"].includes(U)||(Ee=(u+Oe)/u,Ge=u*Ee)),ee=ee==="auto"?dge(Ae,Ge):ee;for(var kt=Ae/2,vt=Ge/2,rt=ee+(Te+W+K)/2,yt=new Array(Be.length/2),Ue=new Array(Be.length/2),tt=0;tt0){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");I1.drawNodeOverlay=g1e("overlay");I1.drawNodeUnderlay=g1e("underlay");I1.hasPie=function(t){return t=t[0],t._private.hasPie};I1.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)}};To={},Uet=100;To.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};To.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}},S=s.prevViewport,A=S===void 0||L.zoom!==S.zoom||L.pan.x!==S.pan.x||L.pan.y!==S.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,Ne,se,ke){var Re=ce.globalCompositeOperation;ce.globalCompositeOperation="destination-out",s.colorFillStyle(ce,255,255,255,s.motionBlurTransparency),ce.fillRect(te,Ne,se,ke),ce.globalCompositeOperation=Re}o(D,"mbclear");function k(ce,te){var Ne,se,ke,Re;!s.clearingMotionBlur&&(ce===h.bufferContexts[s.MOTIONBLUR_BUFFER_NODE]||ce===h.bufferContexts[s.MOTIONBLUR_BUFFER_DRAG])?(Ne={x:T.x*m,y:T.y*m},se=w*m,ke=s.canvasWidth*m,Re=s.canvasHeight*m):(Ne=E,se=_,ke=s.canvasWidth,Re=s.canvasHeight),ce.setTransform(1,0,0,1,0,0),te==="motionBlur"?D(ce,0,0,ke,Re):!e&&(te===void 0||te)&&ce.clearRect(0,0,ke,Re),r||(ce.translate(Ne.x,Ne.y),ce.scale(se,se)),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 C=h.contexts[s.NODE],O=s.textureCache.texture,L=s.textureCache.viewport;C.setTransform(1,0,0,1,0,0),p?D(C,0,0,L.width,L.height):C.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(C,N[0],N[1],N[2],P),C.fillRect(0,0,L.width,L.height);var w=u.zoom();k(C,!1),C.clearRect(L.mpan.x,L.mpan.y,L.width/L.zoom/l,L.height/L.zoom/l),C.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(),G=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,C=e||(W?s.data.bufferContexts[s.MOTIONBLUR_BUFFER_NODE]:h.contexts[s.NODE]),Z=p&&!W?"motionBlur":void 0;k(C,Z),G?s.drawCachedNodes(C,I.nondrag,l,F):s.drawLayeredElements(C,I.nondrag,l,F),s.debug&&s.drawDebugPoints(C,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,C=e||(W?s.data.bufferContexts[s.MOTIONBLUR_BUFFER_DRAG]:h.contexts[s.DRAG]);k(C,p&&!W?"motionBlur":void 0),G?s.drawCachedNodes(C,I.drag,l,F):s.drawCachedElements(C,I.drag,l,F),s.debug&&s.drawDebugPoints(C,I.drag),!r&&!p&&(f[s.DRAG]=!1)}if(s.showFps||!n&&f[s.SELECT_BOX]&&!r){var C=e||h.contexts[s.SELECT_BOX];if(k(C),s.selection[4]==1&&(s.hoverData.selecting||s.touchData.selecting)){var w=s.cy.zoom(),j=b.core("selection-box-border-width").value/w;C.lineWidth=j,C.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+")",C.fillRect(s.selection[0],s.selection[1],s.selection[2]-s.selection[0],s.selection[3]-s.selection[1]),j>0&&(C.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+")",C.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(),oe=h.bgActivePosistion;C.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+")",C.beginPath(),C.arc(oe.x,oe.y,b.core("active-bg-size").pfValue/w,0,2*Math.PI),C.fill()}var K=s.lastRedrawTime;if(s.showFps&&K){K=Math.round(K);var ee=Math.round(1e3/K);C.setTransform(1,0,0,1,0,0),C.fillStyle="rgba(255, 0, 0, 0.75)",C.strokeStyle="rgba(255, 0, 0, 0.75)",C.lineWidth=1,C.fillText("1 frame = "+K+" ms = "+ee+" fps",0,20);var J=60;C.strokeRect(0,30,250,20),C.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],Q=h.contexts[s.DRAG],ae=s.data.bufferCanvases[s.MOTIONBLUR_BUFFER_DRAG],ue=o(function(te,Ne,se){te.setTransform(1,0,0,1,0,0),se||!x?te.clearRect(0,0,s.canvasWidth,s.canvasHeight):D(te,0,0,s.canvasWidth,s.canvasHeight);var ke=m;te.drawImage(Ne,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(Q,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()},Uet)),e||u.emit("render")};Gf={};Gf.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(Het,"b64ToBlob");o(Gme,"b64UriToB64");o(v1e,"output");wb.png=function(t){return v1e(t,this.bufferCanvasImage(t),"image/png")};wb.jpg=function(t){return v1e(t,this.bufferCanvasImage(t),"image/jpeg")};x1e={};x1e.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)}};Wet=b1e,Kr=b1e.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(b1e,"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}};Yet=typeof Path2D<"u";Kr.path2dEnabled=function(t){if(t===void 0)return this.pathsEnabled;this.pathsEnabled=!!t};Kr.usePaths=function(){return Yet&&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":Ki(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};[p1e,ru,lh,EB,rp,I1,To,Gf,wb,x1e].forEach(function(t){ir(Kr,t)});qet=[{name:"null",impl:t1e},{name:"base",impl:h1e},{name:"canvas",impl:Wet}],Xet=[{type:"layout",extensions:ZJe},{type:"renderer",extensions:qet}],w1e={},T1e={};o(k1e,"setExtension");o(E1e,"getExtension");o(jet,"setModule");o(Ket,"getModule");eB=o(function(){if(arguments.length===2)return E1e.apply(null,arguments);if(arguments.length===3)return k1e.apply(null,arguments);if(arguments.length===4)return Ket.apply(null,arguments);if(arguments.length===5)return jet.apply(null,arguments);di("Invalid extension access syntax")},"extension");fb.prototype.extension=eB;Xet.forEach(function(t){t.extensions.forEach(function(e){k1e(t.type,e.name,e.impl)})});S1e=o(function t(){if(!(this instanceof t))return new t;this.length=0},"Stylesheet"),ep=S1e.prototype;ep.instanceString=function(){return"stylesheet"};ep.selector=function(t){var e=this.length++;return this[e]={selector:t,properties:[]},this};ep.css=function(t,e){var r=this.length-1;if(Zt(t))this[r].properties.push({name:t,value:e});else if(Ur(t))for(var n=t,i=Object.keys(n),a=0;a{"use strict";o(function(e,r){typeof Tb=="object"&&typeof CB=="object"?CB.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Tb=="object"?Tb.layoutBase=r():e.layoutBase=r()},"webpackUniversalModuleDefinition")(Tb,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,S=this.nodes,A=S.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]=S,!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):C===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]=S,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]=S,R=!0)),k&&R)return!1;if(u>f?h>d?(P=this.getCardinalDirection(C,N,4),F=this.getCardinalDirection(O,N,2)):(P=this.getCardinalDirection(-C,N,3),F=this.getCardinalDirection(-O,N,1)):h>d?(P=this.getCardinalDirection(-C,N,1),F=this.getCardinalDirection(-O,N,3)):(P=this.getCardinalDirection(C,N,2),F=this.getCardinalDirection(O,N,4)),!k)switch(P){case 1:G=m,B=u+-w/N,l[0]=B,l[1]=G;break;case 2:B=x,G=h+b*N,l[0]=B,l[1]=G;break;case 3:G=v,B=u+w/N,l[0]=B,l[1]=G;break;case 4:B=y,G=h+-b*N,l[0]=B,l[1]=G;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=S,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,S=void 0,A=void 0;return w=p-f,T=h-d,L=d*f-h*p,_=v-g,E=m-y,S=y*g-m*v,A=w*E-_*T,A===0?null:(x=(T*S-E*L)/A,b=(_*L-w*S)/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(S,1);var A=_.getNeighborsList();A.forEach(function(k){if(y.indexOf(k)<0){var R=v.get(k),C=R-1;C==1&&E.push(k),v.set(k,C)}})}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 kb=="object"&&typeof _B=="object"?_B.exports=r(AB()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof kb=="object"?kb.coseBase=r(AB()):e.coseBase=r(e.layoutBase)},"webpackUniversalModuleDefinition")(kb,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(S){return E.has(S)});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,S=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(L,S),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;kS&&(S=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 S=Math.max(this.maxDiagonalInTree(T),h.DEFAULT_RADIAL_SEPARATION);w.branchRadialLayout(E,null,0,359,0,S);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 Z=W[0];W.splice(0,1);var j=P.indexOf(Z);j>=0&&P.splice(j,1),G--,F--}E!=null?z=(P.indexOf(W[0])+1)%G:z=0;for(var oe=Math.abs(S-L)/F,K=z;B!=F;K=++K%G){var ee=P[K].getOtherEnd(T);if(ee!=E){var J=(L+B*oe)%360,H=(J+oe)%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=[],S=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 C="DummyCompound_"+R;T.memberGroups[C]=E[R];var O=E[R][0].getParent(),N=new l(T.graphManager);N.id=C,N.paddingLeft=O.paddingLeft||0,N.paddingRight=O.paddingRight||0,N.paddingBottom=O.paddingBottom||0,N.paddingTop=O.paddingTop||0,T.idToDummyNode[C]=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,S=E.paddingLeft,A=E.paddingTop;this.adjustLocations(this.tiledMemberPack[L],E.rect.x,E.rect.y,S,A)}},w.prototype.repopulateZeroDegreeMembers=function(){var T=this,E=this.tiledZeroDegreePack;Object.keys(E).forEach(function(L){var S=T.idToDummyNode[L],A=S.paddingLeft,I=S.paddingTop;T.adjustLocations(E[L],S.rect.x,S.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 S=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(),S=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(S){var A=E[S];L.tiledMemberPack[S]=L.tileNodes(T[S],A.paddingLeft+A.paddingRight),A.rect.width=L.tiledMemberPack[S].width,A.rect.height=L.tiledMemberPack[S].height})},w.prototype.tileNodes=function(T,E){var L=h.TILING_PADDING_VERTICAL,S=h.TILING_PADDING_HORIZONTAL,A={rows:[],rowWidth:[],rowHeight:[],width:0,height:E,verticalPadding:L,horizontalPadding:S};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,S=0;SL&&(E=S,L=T.rowWidth[S]);return E},w.prototype.canAddHorizontal=function(T,E,L){var S=this.getShortestRowIndex(T);if(S<0)return!0;var A=T.rowWidth[S];if(A+T.horizontalPadding+E<=T.width)return!0;var I=0;T.rowHeight[S]0&&(I=L+T.verticalPadding-T.rowHeight[S]);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){S.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=S[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,G,z,W=0;W{"use strict";o(function(e,r){typeof Eb=="object"&&typeof DB=="object"?DB.exports=r(LB()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof Eb=="object"?Eb.cytoscapeCoseBilkent=r(LB()):e.cytoscapeCoseBilkent=r(e.coseBase)},"webpackUniversalModuleDefinition")(Eb,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(),S=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 itt(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 Zet,Jet,ett,ttt,rtt,ntt,att,stt,A1e,_1e,L1e=M(()=>{"use strict";Pl();hr();Zet=12,Jet=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"),ttt=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"),rtt=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"),ntt=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(itt,"insertPolygonShape");att=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}];itt(e,s,n,l,r)},"hexagonBkg"),stt=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"),A1e=o(async function(t,e,r,n,i){let a=i.htmlLabels,s=n%(Zet-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 Li(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]=Ho(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:Jet(t,h,r,s);break;case t.nodeType.ROUNDED_RECT:stt(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+")"),ntt(t,h,r,s);break;case t.nodeType.CLOUD:ttt(t,h,r,s);break;case t.nodeType.BANG:rtt(t,h,r,s);break;case t.nodeType.HEXAGON:att(t,h,r,s);break}return t.setElementForId(r.id,l),r.height},"drawNode"),_1e=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 N1e(t,e,r,n,i){await A1e(t,e,r,n,i),r.children&&await Promise.all(r.children.map((a,s)=>N1e(t,e,a,n<0?s:n,i)))}function ott(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 R1e(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=>{R1e(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 ltt(t,e){return new Promise(r=>{let n=Ve("body").append("div").attr("id","cy").attr("style","display:none"),i=fl({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});n.remove(),R1e(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 ctt(t,e){e.nodes().map((r,n)=>{let i=r.data();i.x=r.position().x,i.y=r.position().y,_1e(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 D1e,utt,M1e,I1e=M(()=>{"use strict";SB();D1e=Ji(C1e(),1);pr();Vt();ut();eh();ai();L1e();bs();fl.use(D1e.default);o(N1e,"drawNodes");o(ott,"drawEdges");o(R1e,"addNodes");o(ltt,"layoutMindmap");o(ctt,"positionNodes");utt=o(async(t,e,r,n)=>{Y.debug(`Rendering mindmap diagram +`+t);let i=n.db,a=i.getMindmap();if(!a)return;let s=pe();s.htmlLabels=!1;let l=Va(e),u=l.append("g");u.attr("class","mindmap-edges");let h=l.append("g");h.attr("class","mindmap-nodes"),await N1e(i,h,a,-1,s);let f=await ltt(a,s);ott(u,f),ctt(i,f),Io(void 0,l,s.mindmap?.padding??ur.mindmap.padding,s.mindmap?.useMaxWidth??ur.mindmap.useMaxWidth)},"draw"),M1e={draw:utt}});var htt,ftt,O1e,P1e=M(()=>{"use strict";Lo();htt=o(t=>{let e="";for(let r=0;r` + .edge { + stroke-width: 3; + } + ${htt(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"),O1e=ftt});var B1e={};vr(B1e,{diagram:()=>dtt});var dtt,F1e=M(()=>{"use strict";kpe();Cpe();I1e();P1e();dtt={db:Spe,renderer:M1e,parser:Tpe,styles:O1e}});var NB,$1e,V1e=M(()=>{"use strict";NB=function(){var t=o(function(L,S,A,I){for(A=A||{},I=L.length;I--;A[L[I]]=S);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(S,A,I,D,k,R,C){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(S,A){if(A.recoverable)this.trace(S);else{var I=new Error(S);throw I.hash=A,I}},"parseError"),parse:o(function(S){var A=this,I=[0],D=[],k=[null],R=[],C=this.table,O="",N=0,P=0,F=0,B=2,G=1,z=R.slice.call(arguments,1),W=Object.create(this.lexer),Z={yy:{}};for(var j in this.yy)Object.prototype.hasOwnProperty.call(this.yy,j)&&(Z.yy[j]=this.yy[j]);W.setInput(S,Z.yy),Z.yy.lexer=W,Z.yy.parser=this,typeof W.yylloc>"u"&&(W.yylloc={});var oe=W.yylloc;R.push(oe);var K=W.options&&W.options.ranges;typeof Z.yy.parseError=="function"?this.parseError=Z.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ee(Pe){I.length=I.length-2*Pe,k.length=k.length-Pe,R.length=R.length-Pe}o(ee,"popStack");function J(){var Pe;return Pe=D.pop()||W.lex()||G,typeof Pe!="number"&&(Pe instanceof Array&&(D=Pe,Pe=D.pop()),Pe=A.symbols_[Pe]||Pe),Pe}o(J,"lex");for(var H,q,Q,ae,ue,ce,te={},Ne,se,ke,Re;;){if(Q=I[I.length-1],this.defaultActions[Q]?ae=this.defaultActions[Q]:((H===null||typeof H>"u")&&(H=J()),ae=C[Q]&&C[Q][H]),typeof ae>"u"||!ae.length||!ae[0]){var Ce="";Re=[];for(Ne in C[Q])this.terminals_[Ne]&&Ne>B&&Re.push("'"+this.terminals_[Ne]+"'");W.showPosition?Ce="Parse error on line "+(N+1)+`: +`+W.showPosition()+` +Expecting `+Re.join(", ")+", got '"+(this.terminals_[H]||H)+"'":Ce="Parse error on line "+(N+1)+": Unexpected "+(H==G?"end of input":"'"+(this.terminals_[H]||H)+"'"),this.parseError(Ce,{text:W.match,token:this.terminals_[H]||H,line:W.yylineno,loc:oe,expected:Re})}if(ae[0]instanceof Array&&ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Q+", 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,oe=W.yylloc,F>0&&F--);break;case 2:if(se=this.productions_[ae[1]][1],te.$=k[k.length-se],te._$={first_line:R[R.length-(se||1)].first_line,last_line:R[R.length-1].last_line,first_column:R[R.length-(se||1)].first_column,last_column:R[R.length-1].last_column},K&&(te._$.range=[R[R.length-(se||1)].range[0],R[R.length-1].range[1]]),ce=this.performAction.apply(te,[O,P,N,Z.yy,ae[1],k,R].concat(z)),typeof ce<"u")return ce;se&&(I=I.slice(0,-1*se*2),k=k.slice(0,-1*se),R=R.slice(0,-1*se)),I.push(this.productions_[ae[1]][0]),k.push(te.$),R.push(te._$),ke=C[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(S,A){return this.yy=A||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 A=S.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),S},"input"),unput:o(function(S){var A=S.length,I=S.split(/(?:\r\n?|\n)/g);this._input=S+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(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(),A=new Array(S.length+1).join("-");return S+this.upcomingInput()+` +`+A+"^"},"showPosition"),test_match:o(function(S,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=S[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+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],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 S,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(S=this.test_match(I,k[R]),S!==!1)return S;if(this._backtrack){A=!1;continue}else return!1}else if(!this.options.flex)break}return A?(S=this.test_match(A,k[D]),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 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 C=/\n\s*/g;return I.yytext=I.yytext.replace(C,"
    "),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}();NB.parser=NB;$1e=NB});var dl,MB,RB,IB,ytt,vtt,U1e,xtt,btt,Zi,wtt,Ttt,ktt,Ett,Stt,Ctt,Att,H1e,W1e=M(()=>{"use strict";Vt();fr();ut();bs();ew();dl=[],MB=[],RB=0,IB={},ytt=o(()=>{dl=[],MB=[],RB=0,IB={}},"clear"),vtt=o(t=>{if(dl.length===0)return null;let e=dl[0].level,r=null;for(let n=dl.length-1;n>=0;n--)if(dl[n].level===e&&!r&&(r=dl[n]),dl[n].levell.parentId===i.id);for(let l of s){let u={id:l.id,parentId:i.id,label:kr(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:pe()}},"getData"),btt=o((t,e,r,n,i)=>{let a=pe(),s=a.mindmap?.padding??ur.mindmap.padding;switch(n){case Zi.ROUNDED_RECT:case Zi.RECT:case Zi.HEXAGON:s*=2}let l={id:kr(e,a)||"kbn"+RB++,level:t,label:kr(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=Sm(h,{schema:Em});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),f?.assigned&&(l.assigned=f?.assigned),f?.ticket&&(l.ticket=f?.ticket),f?.priority&&(l.priority=f?.priority)}let u=vtt(t);u?l.parentId=u.id||"kbn"+RB++:MB.push(l),dl.push(l)},"addNode"),Zi={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 Zi.RECT;case"(":return e===")"?Zi.ROUNDED_RECT:Zi.CLOUD;case"((":return Zi.CIRCLE;case")":return Zi.CLOUD;case"))":return Zi.BANG;case"{{":return Zi.HEXAGON;default:return Zi.DEFAULT}},"getType"),Ttt=o((t,e)=>{IB[t]=e},"setElementForId"),ktt=o(t=>{if(!t)return;let e=pe(),r=dl[dl.length-1];t.icon&&(r.icon=kr(t.icon,e)),t.class&&(r.cssClasses=kr(t.class,e))},"decorateNode"),Ett=o(t=>{switch(t){case Zi.DEFAULT:return"no-border";case Zi.RECT:return"rect";case Zi.ROUNDED_RECT:return"rounded-rect";case Zi.CIRCLE:return"circle";case Zi.CLOUD:return"cloud";case Zi.BANG:return"bang";case Zi.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),Stt=o(()=>Y,"getLogger"),Ctt=o(t=>IB[t],"getElementById"),Att={clear:ytt,addNode:btt,getSections:U1e,getData:xtt,nodeType:Zi,getType:wtt,setElementForId:Ttt,decorateNode:ktt,type2Str:Ett,getLogger:Stt,getElementById:Ctt},H1e=Att});var _tt,Y1e,q1e=M(()=>{"use strict";Vt();ut();eh();ai();bs();lw();vw();_tt=o(async(t,e,r,n)=>{Y.debug(`Rendering kanban diagram +`+t);let a=n.db.getData(),s=pe();s.htmlLabels=!1;let l=Va(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 _m(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(S=>S.parentId===v.id);for(let S of T){if(S.isGroup)throw new Error("Groups within groups are not allowed in Kanban diagrams");S.x=v.x,S.width=b-1.5*p;let I=(await Lm(h,S,{config:s})).node().getBBox();S.y=_+I.height/2,await Uv(S),_=S.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)}Io(void 0,l,s.mindmap?.padding??ur.kanban.padding,s.mindmap?.useMaxWidth??ur.kanban.useMaxWidth)},"draw"),Y1e={draw:_tt}});var Ltt,Dtt,X1e,j1e=M(()=>{"use strict";Lo();Ltt=o(t=>{let e="";for(let n=0;nt.darkMode?It(n,i):_t(n,i),"adjuster");for(let n=0;n` + .edge { + stroke-width: 3; + } + ${Ltt(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"),X1e=Dtt});var K1e={};vr(K1e,{diagram:()=>Ntt});var Ntt,Q1e=M(()=>{"use strict";V1e();W1e();q1e();j1e();Ntt={db:H1e,renderer:Y1e,parser:$1e,styles:X1e}});var OB,Sb,eye=M(()=>{"use strict";OB=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 S in this.yy)Object.prototype.hasOwnProperty.call(this.yy,S)&&(L.yy[S]=this.yy[S]);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(oe){f.length=f.length-2*oe,p.length=p.length-oe,m.length=m.length-oe}o(D,"popStack");function k(){var oe;return oe=d.pop()||E.lex()||_,typeof oe!="number"&&(oe instanceof Array&&(d=oe,oe=d.pop()),oe=h.symbols_[oe]||oe),oe}o(k,"lex");for(var R,C,O,N,P,F,B={},G,z,W,Z;;){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 j="";Z=[];for(G in g[O])this.terminals_[G]&&G>w&&Z.push("'"+this.terminals_[G]+"'");E.showPosition?j="Parse error on line "+(v+1)+`: +`+E.showPosition()+` +Expecting `+Z.join(", ")+", got '"+(this.terminals_[R]||R)+"'":j="Parse error on line "+(v+1)+": Unexpected "+(R==_?"end of input":"'"+(this.terminals_[R]||R)+"'"),this.parseError(j,{text:E.match,token:this.terminals_[R]||R,line:E.yylineno,loc:A,expected:Z})}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,C?(R=C,C=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}();OB.parser=OB;Sb=OB});var rS,nS,tS,Ott,PB,Ptt,BB,Btt,Ftt,ztt,Gtt,tye,rye=M(()=>{"use strict";Vt();fr();Ai();rS=[],nS=[],tS=new Map,Ott=o(()=>{rS=[],nS=[],tS=new Map,Lr()},"clear"),PB=class{constructor(e,r,n=0){this.source=e;this.target=r;this.value=n}static{o(this,"SankeyLink")}},Ptt=o((t,e,r)=>{rS.push(new PB(t,e,r))},"addLink"),BB=class{constructor(e){this.ID=e}static{o(this,"SankeyNode")}},Btt=o(t=>{t=qe.sanitizeText(t,pe());let e=tS.get(t);return e===void 0&&(e=new BB(t),tS.set(t,e),nS.push(e)),e},"findOrCreateNode"),Ftt=o(()=>nS,"getNodes"),ztt=o(()=>rS,"getLinks"),Gtt=o(()=>({nodes:nS.map(t=>({id:t.ID})),links:rS.map(t=>({source:t.source.ID,target:t.target.ID,value:t.value}))}),"getGraph"),tye={nodesMap:tS,getConfig:o(()=>pe().sankey,"getConfig"),getNodes:Ftt,getLinks:ztt,getGraph:Gtt,addLink:Ptt,findOrCreateNode:Btt,getAccTitle:Br,setAccTitle:Mr,getAccDescription:zr,setAccDescription:Fr,getDiagramTitle:Jr,setDiagramTitle:cn,clear:Ott}});function Cb(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 nye=M(()=>{"use strict";o(Cb,"max")});function O1(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 iye=M(()=>{"use strict";o(O1,"min")});function P1(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 aye=M(()=>{"use strict";o(P1,"sum")});var FB=M(()=>{"use strict";nye();iye();aye()});function $tt(t){return t.target.depth}function zB(t){return t.depth}function GB(t,e){return e-1-t.height}function Ab(t,e){return t.sourceLinks.length?t.depth:e-1}function $B(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?O1(t.sourceLinks,$tt)-1:0}var VB=M(()=>{"use strict";FB();o($tt,"targetDepth");o(zB,"left");o(GB,"right");o(Ab,"justify");o($B,"center")});function B1(t){return function(){return t}}var sye=M(()=>{"use strict";o(B1,"constant")});function oye(t,e){return iS(t.source,e.source)||t.index-e.index}function lye(t,e){return iS(t.target,e.target)||t.index-e.index}function iS(t,e){return t.y0-e.y0}function UB(t){return t.value}function Vtt(t){return t.index}function Utt(t){return t.nodes}function Htt(t){return t.links}function cye(t,e){let r=t.get(e);if(!r)throw new Error("missing: "+e);return r}function uye({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 aS(){let t=0,e=0,r=1,n=1,i=24,a=8,s,l=Vtt,u=Ab,h,f,d=Utt,p=Htt,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),uye(O),O}o(g,"sankey"),g.update=function(O){return uye(O),O},g.nodeId=function(O){return arguments.length?(l=typeof O=="function"?O:B1(O),g):l},g.nodeAlign=function(O){return arguments.length?(u=typeof O=="function"?O:B1(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:B1(O),g):d},g.links=function(O){return arguments.length?(p=typeof O=="function"?O:B1(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:G,target:z}=B;typeof G!="object"&&(G=B.source=cye(P,G)),typeof z!="object"&&(z=B.target=cye(P,z)),G.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(P1(N.sourceLinks,UB),P1(N.targetLinks,UB)):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 G of P){G.depth=B;for(let{target:z}of G.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 G of P){G.height=B;for(let{source:z}of G.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=Cb(O,B=>B.depth)+1,P=(r-t-i)/(N-1),F=new Array(N);for(let B of O){let G=Math.max(0,Math.min(N-1,Math.floor(u.call(null,B,N))));B.layer=G,B.x0=t+G*P,B.x1=B.x0+i,F[G]?F[G].push(B):F[G]=[B]}if(h)for(let B of F)B.sort(h);return F}o(w,"computeNodeLayers");function _(O){let N=O1(O,P=>(n-e-(P.length-1)*s)/P1(P,UB));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 G of B.sourceLinks)G.width=G.value*N}F=(n-F+s)/(P.length+1);for(let B=0;BP.length)-1)),_(N);for(let P=0;P0))continue;let j=(W/Z-z.y0)*N;z.y0+=j,z.y1+=j,D(z)}h===void 0&&G.sort(iS),S(G,P)}}o(E,"relaxLeftToRight");function L(O,N,P){for(let F=O.length,B=F-2;B>=0;--B){let G=O[B];for(let z of G){let W=0,Z=0;for(let{target:oe,value:K}of z.sourceLinks){let ee=K*(oe.layer-z.layer);W+=C(z,oe)*ee,Z+=ee}if(!(Z>0))continue;let j=(W/Z-z.y0)*N;z.y0+=j,z.y1+=j,D(z)}h===void 0&&G.sort(iS),S(G,P)}}o(L,"relaxRightToLeft");function S(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(S,"resolveCollisions");function A(O,N,P,F){for(;P1e-6&&(B.y0+=G,B.y1+=G),N=B.y1+s}}o(A,"resolveCollisionsTopToBottom");function I(O,N,P,F){for(;P>=0;--P){let B=O[P],G=(B.y1-N)*F;G>1e-6&&(B.y0-=G,B.y1-=G),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(lye);for(let{target:{targetLinks:P}}of O)P.sort(oye)}}o(D,"reorderNodeLinks");function k(O){if(f===void 0)for(let{sourceLinks:N,targetLinks:P}of O)N.sort(lye),P.sort(oye)}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 C(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(C,"sourceTop"),g}var hye=M(()=>{"use strict";FB();VB();sye();o(oye,"ascendingSourceBreadth");o(lye,"ascendingTargetBreadth");o(iS,"ascendingBreadth");o(UB,"value");o(Vtt,"defaultId");o(Utt,"defaultNodes");o(Htt,"defaultLinks");o(cye,"find");o(uye,"computeLinkBreadths");o(aS,"Sankey")});function YB(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function fye(){return new YB}var HB,WB,np,Wtt,qB,dye=M(()=>{"use strict";HB=Math.PI,WB=2*HB,np=1e-6,Wtt=WB-np;o(YB,"Path");o(fye,"path");YB.prototype=fye.prototype={constructor:YB,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>np)if(!(Math.abs(f*l-u*h)>np)||!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((HB-Math.acos((g+d-y)/(2*v*x)))/2),w=b/x,_=b/v;Math.abs(w-1)>np&&(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)>np||Math.abs(this._y1-h)>np)&&(this._+="L"+u+","+h),r&&(d<0&&(d=d%WB+WB),d>Wtt?this._+="A"+r+","+r+",0,1,"+f+","+(t-s)+","+(e-l)+"A"+r+","+r+",0,1,"+f+","+(this._x1=u)+","+(this._y1=h):d>np&&(this._+="A"+r+","+r+",0,"+ +(d>=HB)+","+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")};qB=fye});var pye=M(()=>{"use strict";dye()});function sS(t){return o(function(){return t},"constant")}var mye=M(()=>{"use strict";o(sS,"default")});function gye(t){return t[0]}function yye(t){return t[1]}var vye=M(()=>{"use strict";o(gye,"x");o(yye,"y")});var xye,bye=M(()=>{"use strict";xye=Array.prototype.slice});function Ytt(t){return t.source}function qtt(t){return t.target}function Xtt(t){var e=Ytt,r=qtt,n=gye,i=yye,a=null;function s(){var l,u=xye.call(arguments),h=e.apply(this,u),f=r.apply(this,u);if(a||(a=l=qB()),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:sS(+l),s):n},s.y=function(l){return arguments.length?(i=typeof l=="function"?l:sS(+l),s):i},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function jtt(t,e,r,n,i){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,i,n,i)}function XB(){return Xtt(jtt)}var wye=M(()=>{"use strict";pye();bye();mye();vye();o(Ytt,"linkSource");o(qtt,"linkTarget");o(Xtt,"link");o(jtt,"curveHorizontal");o(XB,"linkHorizontal")});var Tye=M(()=>{"use strict";wye()});function Ktt(t){return[t.source.x1,t.y0]}function Qtt(t){return[t.target.x0,t.y1]}function oS(){return XB().source(Ktt).target(Qtt)}var kye=M(()=>{"use strict";Tye();o(Ktt,"horizontalSource");o(Qtt,"horizontalTarget");o(oS,"default")});var Eye=M(()=>{"use strict";hye();VB();kye()});var _b,Sye=M(()=>{"use strict";_b=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 Ztt,Jtt,Cye,Aye=M(()=>{"use strict";Vt();pr();Eye();ai();Sye();Ztt={left:zB,right:GB,center:$B,justify:Ab},Jtt=o(function(t,e,r,n){let{securityLevel:i,sankey:a}=pe(),s=B4.sankey,l;i==="sandbox"&&(l=Ve("#i"+e));let u=i==="sandbox"?Ve(l.nodes()[0].contentDocument.body):Ve("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):Ve(`[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=Ztt[m];aS().nodeId(I=>I.id).nodeWidth(10).nodePadding(10+(v?15:0)).nodeAlign(b).extent([[0,0],[f,d]])(x);let T=ku(e_);h.append("g").attr("class","nodes").selectAll(".node").data(x.nodes).join("g").attr("class","node").attr("id",I=>(I.uid=_b.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=_b.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(S){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=S}L.append("path").attr("d",oS()).attr("stroke",A).attr("stroke-width",I=>Math.max(1,I.width)),Io(void 0,h,0,p)},"draw"),Cye={draw:Jtt}});var _ye,Lye=M(()=>{"use strict";_ye=o(t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` +`).trim(),"prepareTextForParsing")});var Dye={};vr(Dye,{diagram:()=>trt});var ert,trt,Nye=M(()=>{"use strict";eye();rye();Aye();Lye();ert=Sb.parse.bind(Sb);Sb.parse=t=>ert(_ye(t));trt={parser:Sb,db:tye,renderer:Cye}});var Iye,jB,art,srt,ort,lrt,crt,$f,KB=M(()=>{"use strict";Za();bs();hr();Ai();Iye={packet:[]},jB=structuredClone(Iye),art=ur.packet,srt=o(()=>{let t=Ds({...art,...Cr().packet});return t.showBits&&(t.paddingY+=10),t},"getConfig"),ort=o(()=>jB.packet,"getPacket"),lrt=o(t=>{t.length>0&&jB.packet.push(t)},"pushWord"),crt=o(()=>{Lr(),jB=structuredClone(Iye)},"clear"),$f={pushWord:lrt,getPacket:ort,getConfig:srt,clear:crt,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,getAccDescription:zr,setAccDescription:Fr}});var urt,hrt,frt,Oye,Pye=M(()=>{"use strict";Hg();ut();Tx();KB();urt=1e4,hrt=o(t=>{yf(t,$f);let e=-1,r=[],n=1,{bitsPerRow:i}=$f.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"),Oye={parse:o(async t=>{let e=await Yl("packet",t);Y.debug(e),hrt(e)},"parse")}});var drt,prt,Bye,Fye=M(()=>{"use strict";eh();ai();drt=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=Va(e);y.attr("viewbox",`0 0 ${g} ${m}`),Zr(y,m,g,a.useMaxWidth);for(let[v,x]of f.entries())prt(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"),prt=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"),Bye={draw:drt}});var mrt,zye,Gye=M(()=>{"use strict";hr();mrt={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},zye=o(({packet:t}={})=>{let e=Ds(mrt,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 $ye={};vr($ye,{diagram:()=>grt});var grt,Vye=M(()=>{"use strict";KB();Pye();Fye();Gye();grt={parser:Oye,db:$f,renderer:Bye,styles:zye}});var QB,Wye,Yye=M(()=>{"use strict";QB=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,S,A,I){var D=A.length-1;switch(S){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 C=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:C,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=[],S=[null],A=[],I=this.table,D="",k=0,R=0,C=0,O=2,N=1,P=A.slice.call(arguments,1),F=Object.create(this.lexer),B={yy:{}};for(var G in this.yy)Object.prototype.hasOwnProperty.call(this.yy,G)&&(B.yy[G]=this.yy[G]);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 Z(se){E.length=E.length-2*se,S.length=S.length-se,A.length=A.length-se}o(Z,"popStack");function j(){var se;return se=L.pop()||F.lex()||N,typeof se!="number"&&(se instanceof Array&&(L=se,se=L.pop()),se=T.symbols_[se]||se),se}o(j,"lex");for(var oe,K,ee,J,H,q,Q={},ae,ue,ce,te;;){if(ee=E[E.length-1],this.defaultActions[ee]?J=this.defaultActions[ee]:((oe===null||typeof oe>"u")&&(oe=j()),J=I[ee]&&I[ee][oe]),typeof J>"u"||!J.length||!J[0]){var Ne="";te=[];for(ae in I[ee])this.terminals_[ae]&&ae>O&&te.push("'"+this.terminals_[ae]+"'");F.showPosition?Ne="Parse error on line "+(k+1)+`: +`+F.showPosition()+` +Expecting `+te.join(", ")+", got '"+(this.terminals_[oe]||oe)+"'":Ne="Parse error on line "+(k+1)+": Unexpected "+(oe==N?"end of input":"'"+(this.terminals_[oe]||oe)+"'"),this.parseError(Ne,{text:F.match,token:this.terminals_[oe]||oe,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: "+oe);switch(J[0]){case 1:E.push(oe),S.push(F.yytext),A.push(F.yylloc),E.push(J[1]),oe=null,K?(oe=K,K=null):(R=F.yyleng,D=F.yytext,k=F.yylineno,z=F.yylloc,C>0&&C--);break;case 2:if(ue=this.productions_[J[1]][1],Q.$=S[S.length-ue],Q._$={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&&(Q._$.range=[A[A.length-(ue||1)].range[0],A[A.length-1].range[1]]),q=this.performAction.apply(Q,[D,R,k,B.yy,J[1],S,A].concat(P)),typeof q<"u")return q;ue&&(E=E.slice(0,-1*ue*2),S=S.slice(0,-1*ue),A=A.slice(0,-1*ue)),E.push(this.productions_[J[1]][0]),S.push(Q.$),A.push(Q._$),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 S=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:E?(E.length===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=[S[0],S[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,S;if(this.options.backtrack_lexer&&(S={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(S.yylloc.range=this.yylloc.range.slice(0))),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 S)this[A]=S[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 S=this._currentRules(),A=0;AT[0].length)){if(T=E,L=A,this.options.backtrack_lexer){if(_=this.test_match(E,S[A]),_!==!1)return _;if(this._backtrack){T=!1;continue}else return!1}else if(!this.options.flex)break}return T?(_=this.test_match(T,S[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,S){var A=S;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}();QB.parser=QB;Wye=QB});function Crt(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 Art(t){switch(Y.debug("typeStr2Type",t),t){case"==":return"thick";default:return"normal"}}function _rt(t){switch(t.trim()){case"--x":return"arrow_cross";case"--o":return"arrow_circle";default:return"arrow_point"}}var Jl,JB,ZB,qye,Xye,xrt,Kye,brt,lS,wrt,Trt,krt,Ert,Qye,eF,Lb,Srt,jye,Lrt,Drt,Nrt,Rrt,Mrt,Irt,Ort,Prt,Brt,Frt,zrt,Zye,Jye=M(()=>{"use strict";AL();Za();Vt();ut();fr();Ai();Jl=new Map,JB=[],ZB=new Map,qye="color",Xye="fill",xrt="bgFill",Kye=",",brt=pe(),lS=new Map,wrt=o(t=>qe.sanitizeText(t,brt),"sanitizeText"),Trt=o(function(t,e=""){let r=lS.get(t);r||(r={id:t,styles:[],textStyles:[]},lS.set(t,r)),e?.split(Kye).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(qye).exec(n)){let s=i.replace(Xye,xrt).replace(qye,Xye);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),krt=o(function(t,e=""){let r=Jl.get(t);e!=null&&(r.styles=e.split(Kye))},"addStyle2Node"),Ert=o(function(t,e){t.split(",").forEach(function(r){let n=Jl.get(r);if(n===void 0){let i=r.trim();n={id:i,type:"na",children:[]},Jl.set(i,n)}n.classes||(n.classes=[]),n.classes.push(e)})},"setCssClass"),Qye=o((t,e)=>{let r=t.flat(),n=[];for(let i of r){if(i.label&&(i.label=wrt(i.label)),i.type==="classDef"){Trt(i.id,i.css);continue}if(i.type==="applyClass"){Ert(i.id,i?.styleClass??"");continue}if(i.type==="applyStyles"){i?.stylesStr&&krt(i.id,i?.stylesStr);continue}if(i.type==="column-setting")e.columns=i.columns??-1;else if(i.type==="edge"){let a=(ZB.get(i.id)??0)+1;ZB.set(i.id,a),i.id=a+"-"+i.id,JB.push(i)}else{i.label||(i.type==="composite"?i.label="":i.label=i.id);let a=Jl.get(i.id);if(a===void 0?Jl.set(i.id,i):(i.type!=="na"&&(a.type=i.type),i.label!==i.id&&(a.label=i.label)),i.children&&Qye(i.children,i),i.type==="space"){let s=i.width??1;for(let l=0;l{Y.debug("Clear called"),Lr(),Lb={id:"root",type:"composite",children:[],columns:-1},Jl=new Map([["root",Lb]]),eF=[],lS=new Map,JB=[],ZB=new Map},"clear");o(Crt,"typeStr2Type");o(Art,"edgeTypeStr2Type");o(_rt,"edgeStrToEdgeData");jye=0,Lrt=o(()=>(jye++,"id-"+Math.random().toString(36).substr(2,12)+"-"+jye),"generateId"),Drt=o(t=>{Lb.children=t,Qye(t,Lb),eF=Lb.children},"setHierarchy"),Nrt=o(t=>{let e=Jl.get(t);return e?e.columns?e.columns:e.children?e.children.length:-1:-1},"getColumns"),Rrt=o(()=>[...Jl.values()],"getBlocksFlat"),Mrt=o(()=>eF||[],"getBlocks"),Irt=o(()=>JB,"getEdges"),Ort=o(t=>Jl.get(t),"getBlock"),Prt=o(t=>{Jl.set(t.id,t)},"setBlock"),Brt=o(()=>console,"getLogger"),Frt=o(function(){return lS},"getClasses"),zrt={getConfig:o(()=>Cr().block,"getConfig"),typeStr2Type:Crt,edgeTypeStr2Type:Art,edgeStrToEdgeData:_rt,getLogger:Brt,getBlocksFlat:Rrt,getBlocks:Mrt,getEdges:Irt,setHierarchy:Drt,getBlock:Ort,setBlock:Prt,getColumns:Nrt,getClasses:Frt,clear:Srt,generateId:Lrt},Zye=zrt});var cS,Grt,eve,tve=M(()=>{"use strict";Lo();cS=o((t,e)=>{let r=ay,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Zs(n,i,a,e)},"fade"),Grt=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: ${cS(t.edgeLabelBackground,.5)}; + // background-color: + } + + .node .cluster { + // fill: ${cS(t.mainBkg,.5)}; + fill: ${cS(t.clusterBkg,.5)}; + stroke: ${cS(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"),eve=Grt});var $rt,Vrt,Urt,Hrt,Wrt,Yrt,qrt,Xrt,jrt,Krt,Qrt,rve,nve=M(()=>{"use strict";ut();$rt=o((t,e,r,n)=>{e.forEach(i=>{Qrt[i](t,r,n)})},"insertMarkers"),Vrt=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"),Urt=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"),Hrt=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"),Wrt=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"),Yrt=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"),qrt=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"),Xrt=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"),jrt=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"),Krt=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"),Qrt={extension:Vrt,composition:Urt,aggregation:Hrt,dependency:Wrt,lollipop:Yrt,point:qrt,circle:Xrt,cross:jrt,barb:Krt},rve=$rt});function Zrt(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 tF(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)tF(m,e);let s=Jrt(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)+Ti*((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)tF(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*Ti-Ti)/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 ive(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)*Ti;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):-Ti,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}=Zrt(r,a);if(m!=l&&(l=m,s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-Ti,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}${Ti}`),h.size){let g=f/2;u.size.x=s+Ti+g,Y.debug(`abc91 layout blocks (calc) px, pyid:${u.id} startingPos=X${s} new startingPosX${u.size.x} ${g} padding=${Ti} 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+Ti)+d/2+Ti,Y.debug(`abc88 layout blocks (calc) px, pyid:${u.id}startingPosX${s}${Ti}${g}=>x:${u.size.x}y:${u.size.y}${u.widthInColumns}(width * (child?.w || 1)) / 2${f*(u?.widthInColumns??1)/2}`)}u.children&&ive(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 ave(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}=ave(a,{minX:e,minY:r,maxX:n,maxY:i}));return{minX:e,minY:r,maxX:n,maxY:i}}function sve(t){let e=t.getBlock("root");if(!e)return;tF(e,t,0,0),ive(e,t),Y.debug("getBlocks",JSON.stringify(e,null,2));let{minX:r,minY:n,maxX:i,maxY:a}=ave(e),s=a-n,l=i-r;return{x:r,y:n,width:l,height:s}}var Ti,Jrt,ove=M(()=>{"use strict";ut();Vt();Ti=pe()?.block?.padding??8;o(Zrt,"calculateBlockPosition");Jrt=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(tF,"setBlockSizes");o(ive,"layoutBlocks");o(ave,"findBounds");o(sve,"layout")});function lve(t,e){e&&t.attr("style",e)}function ent(t){let e=Ve(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),lve(a,t.labelStyle),a.attr("class",i),lve(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 tnt,gs,uS=M(()=>{"use strict";pr();ut();Vt();fr();hr();Pl();o(lve,"applyStyle");o(ent,"addHtmlLabel");tnt=o((t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),xr(pe().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),Y.debug("vertexText"+i);let a={isNode:n,label:w9(Ma(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"),gs=tnt});var uve,rnt,cve,hve=M(()=>{"use strict";ut();uve=o((t,e,r,n,i)=>{e.arrowTypeStart&&cve(t,"start",e.arrowTypeStart,r,n,i),e.arrowTypeEnd&&cve(t,"end",e.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),rnt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},cve=o((t,e,r,n,i,a)=>{let s=rnt[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 hS(t,e){pe().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}var rF,Xa,dve,pve,nnt,int,fve,mve,gve=M(()=>{"use strict";ut();uS();Pl();pr();Vt();hr();fr();uL();$v();hve();rF={},Xa={},dve=o((t,e)=>{let r=pe(),n=xr(r.flowchart.htmlLabels),i=e.labelType==="markdown"?Li(t,e.label,{style:e.labelStyle,useHtmlLabels:n,addSvgBackground:!0},r):gs(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=Ve(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),rF[e.id]=a,e.width=l.width,e.height=l.height;let u;if(e.startLabelLeft){let h=gs(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+")"),Xa[e.id]||(Xa[e.id]={}),Xa[e.id].startLeft=f,hS(u,e.startLabelLeft)}if(e.startLabelRight){let h=gs(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+")"),Xa[e.id]||(Xa[e.id]={}),Xa[e.id].startRight=f,hS(u,e.startLabelRight)}if(e.endLabelLeft){let h=gs(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),Xa[e.id]||(Xa[e.id]={}),Xa[e.id].endLeft=f,hS(u,e.endLabelLeft)}if(e.endLabelRight){let h=gs(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),Xa[e.id]||(Xa[e.id]={}),Xa[e.id].endRight=f,hS(u,e.endLabelRight)}return i},"insertEdgeLabel");o(hS,"setTerminalWidth");pve=o((t,e)=>{Y.debug("Moving label abc88 ",t.id,t.label,rF[t.id],e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=pe(),{subGraphTitleTotalMargin:i}=Fu(n);if(t.label){let a=rF[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=Xa[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=Xa[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=Xa[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=Xa[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"),nnt=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"),int=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(!nnt(e,a)&&!i){let s=int(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"),mve=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=fve(r.points,n[r.toCluster].node),u=!0),r.fromCluster&&(Y.debug("from cluster abc88",n[r.fromCluster]),l=fve(l.reverse(),n[r.fromCluster].node).reverse(),u=!0);let d=l.filter(_=>!Number.isNaN(_.y)),p=Po;r.curve&&(i==="graph"||i==="flowchart")&&(p=r.curve);let{x:m,y:g}=uw(r),y=ns().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="";(pe().flowchart.arrowMarkerAbsolute||pe().state.arrowMarkerAbsolute)&&(b=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,b=b.replace(/\(/g,"\\("),b=b.replace(/\)/g,"\\)")),uve(x,r,b,s,i);let w={};return u&&(w.updatedPath=l),w.originalPath=r.points,w},"insertEdge")});var ant,yve,vve=M(()=>{"use strict";ant=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"),yve=o((t,e,r)=>{let n=ant(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 snt(t,e){return t.intersect(e)}var xve,bve=M(()=>{"use strict";o(snt,"intersectNode");xve=snt});function ont(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(ont,"intersectEllipse");fS=ont});function lnt(t,e,r){return fS(t,e,e,r)}var wve,Tve=M(()=>{"use strict";nF();o(lnt,"intersectCircle");wve=lnt});function cnt(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&&kve(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&&kve(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 kve(t,e){return t*e>0}var Eve,Sve=M(()=>{"use strict";o(cnt,"intersectLine");o(kve,"sameSign");Eve=cnt});function unt(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";Sve();Cve=unt;o(unt,"intersectPolygon")});var hnt,_ve,Lve=M(()=>{"use strict";hnt=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"),_ve=hnt});var In,iF=M(()=>{"use strict";bve();Tve();nF();Ave();Lve();In={node:xve,circle:wve,ellipse:fS,polygon:Cve,rect:_ve}});function ec(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 Ri,jn,aF=M(()=>{"use strict";uS();Pl();Vt();pr();fr();hr();Ri=o(async(t,e,r,n)=>{let i=pe(),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=Li(u,kr(Ma(h),i),{useHtmlLabels:s,width:e.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):d=f.appendChild(gs(kr(Ma(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=Ve(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"),jn=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds");o(ec,"insertPolygonShape")});var fnt,Dve,Nve=M(()=>{"use strict";aF();ut();Vt();iF();fnt=o(async(t,e)=>{e.useHtmlLabels||pe().flowchart.htmlLabels||(e.centerLabel=!0);let{shapeSvg:n,bbox:i,halfPadding:a}=await Ri(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),jn(e,s),e.intersect=function(l){return In.rect(e,l)},n},"note"),Dve=fnt});function sF(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 Rve,ko,Mve,dnt,pnt,mnt,gnt,ynt,vnt,xnt,bnt,wnt,Tnt,knt,Ent,Snt,Cnt,Ant,_nt,Lnt,Dnt,Nnt,Ive,Rnt,Mnt,Ove,dS,oF,Pve,Bve=M(()=>{"use strict";pr();Vt();fr();ut();vve();uS();iF();Nve();aF();Rve=o(t=>t?" "+t:"","formatClass"),ko=o((t,e)=>`${e||"node default"}${Rve(t.classes)} ${Rve(t.class)}`,"getClassesFromNode"),Mve=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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=ec(r,s,s,l);return u.attr("style",e.style),jn(e,u),e.intersect=function(h){return Y.warn("Intersect called"),In.polygon(e,l,h)},r},"question"),dnt=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 In.circle(e,14,s)},r},"choice"),pnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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=ec(r,l,a,u);return h.attr("style",e.style),jn(e,h),e.intersect=function(f){return In.polygon(e,u,f)},r},"hexagon"),mnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,void 0,!0),i=2,a=n.height+2*e.padding,s=a/i,l=n.width+2*s+e.padding,u=yve(e.directions,n,e),h=ec(r,l,a,u);return h.attr("style",e.style),jn(e,h),e.intersect=function(f){return In.polygon(e,u,f)},r},"block_arrow"),gnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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 ec(r,i,a,s).attr("style",e.style),e.width=i+a,e.height=a,e.intersect=function(u){return In.polygon(e,s,u)},r},"rect_left_inv_arrow"),ynt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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=ec(r,i,a,s);return l.attr("style",e.style),jn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"lean_right"),vnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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=ec(r,i,a,s);return l.attr("style",e.style),jn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"lean_left"),xnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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=ec(r,i,a,s);return l.attr("style",e.style),jn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"trapezoid"),bnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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=ec(r,i,a,s);return l.attr("style",e.style),jn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"inv_trapezoid"),wnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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=ec(r,i,a,s);return l.attr("style",e.style),jn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"rect_right_inv_arrow"),Tnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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 jn(e,h),e.intersect=function(f){let d=In.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"),knt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Ri(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&&(sF(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{Y.warn(`Unknown node property ${d}`)})}return jn(e,a),e.intersect=function(f){return In.rect(e,f)},r},"rect"),Ent=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Ri(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&&(sF(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{Y.warn(`Unknown node property ${d}`)})}return jn(e,a),e.intersect=function(f){return In.rect(e,f)},r},"composite"),Snt=o(async(t,e)=>{let{shapeSvg:r}=await Ri(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&&(sF(n,e.props.borders,i,a),s.delete("borders")),s.forEach(l=>{Y.warn(`Unknown node property ${l}`)})}return jn(e,n),e.intersect=function(s){return In.rect(e,s)},r},"labelRect");o(sF,"applyNodePropertyBorders");Cnt=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(gs(u,e.labelStyle,!0,!0)),f={width:0,height:0};if(xr(pe().flowchart.htmlLabels)){let y=h.children[0],v=Ve(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(gs(d.join?d.join("
    "):d,e.labelStyle,!0,!0));if(xr(pe().flowchart.htmlLabels)){let y=m.children[0],v=Ve(m);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}let g=e.padding/2;return Ve(m).attr("transform","translate( "+(f.width>p.width?0:(p.width-f.width)/2)+", "+(p.height+g+5)+")"),Ve(h).attr("transform","translate( "+(f.width{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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 jn(e,s),e.intersect=function(l){return In.rect(e,l)},r},"stadium"),_nt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Ri(t,e,ko(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"),jn(e,a),e.intersect=function(s){return Y.info("Circle intersect",e,n.width/2+i,s),In.circle(e,n.width/2+i,s)},r},"circle"),Lnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Ri(t,e,ko(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"),jn(e,l),e.intersect=function(h){return Y.info("DoubleCircle intersect",e,n.width/2+i+a,h),In.circle(e,n.width/2+i+a,h)},r},"doublecircle"),Dnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,ko(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=ec(r,i,a,s);return l.attr("style",e.style),jn(e,l),e.intersect=function(u){return In.polygon(e,s,u)},r},"subroutine"),Nnt=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),jn(e,n),e.intersect=function(i){return In.circle(e,7,i)},r},"start"),Ive=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 jn(e,s),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(l){return In.rect(e,l)},n},"forkJoin"),Rnt=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),jn(e,i),e.intersect=function(a){return In.circle(e,7,a)},r},"end"),Mnt=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(gs(y,e.labelStyle,!0,!0)),x=v.getBBox();if(xr(pe().flowchart.htmlLabels)){let S=v.children[0],A=Ve(v);x=S.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!==""&&(pe().flowchart.htmlLabels?b+="<"+e.classData.type+">":b+="<"+e.classData.type+">");let w=p.node().appendChild(gs(b,e.labelStyle,!0,!0));Ve(w).attr("class","classTitle");let _=w.getBBox();if(xr(pe().flowchart.htmlLabels)){let S=w.children[0],A=Ve(w);_=S.getBoundingClientRect(),A.attr("width",_.width),A.attr("height",_.height)}d+=_.height+n,_.width>f&&(f=_.width);let T=[];e.classData.members.forEach(S=>{let A=S.getDisplayDetails(),I=A.displayText;pe().flowchart.htmlLabels&&(I=I.replace(//g,">"));let D=p.node().appendChild(gs(I,A.cssStyle?A.cssStyle:e.labelStyle,!0,!0)),k=D.getBBox();if(xr(pe().flowchart.htmlLabels)){let R=D.children[0],C=Ve(D);k=R.getBoundingClientRect(),C.attr("width",k.width),C.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(S=>{let A=S.getDisplayDetails(),I=A.displayText;pe().flowchart.htmlLabels&&(I=I.replace(//g,">"));let D=p.node().appendChild(gs(I,A.cssStyle?A.cssStyle:e.labelStyle,!0,!0)),k=D.getBBox();if(xr(pe().flowchart.htmlLabels)){let R=D.children[0],C=Ve(D);k=R.getBoundingClientRect(),C.attr("width",k.width),C.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,E.push(D)}),d+=i,g){let S=(f-x.width)/2;Ve(v).attr("transform","translate( "+(-1*f/2+S)+", "+-1*d/2+")"),m=x.height+n}let L=(f-_.width)/2;return Ve(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(S=>{Ve(S).attr("transform","translate( "+-f/2+", "+(-1*d/2+m+i/2)+")");let A=S?.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(S=>{Ve(S).attr("transform","translate( "+-f/2+", "+(-1*d/2+m)+")");let A=S?.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),jn(e,l),e.intersect=function(S){return In.rect(e,S)},s},"class_box"),Ove={rhombus:Mve,composite:Ent,question:Mve,rect:knt,labelRect:Snt,rectWithTitle:Cnt,choice:dnt,circle:_nt,doublecircle:Lnt,stadium:Ant,hexagon:pnt,block_arrow:mnt,rect_left_inv_arrow:gnt,lean_right:ynt,lean_left:vnt,trapezoid:xnt,inv_trapezoid:bnt,rect_right_inv_arrow:wnt,cylinder:Tnt,start:Nnt,end:Rnt,note:Dve,subroutine:Dnt,fork:Ive,join:Ive,class_box:Mnt},dS={},oF=o(async(t,e,r)=>{let n,i;if(e.link){let a;pe().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 Ove[e.shape](n,e,r)}else i=await Ove[e.shape](t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),dS[e.id]=n,e.haveCallback&&dS[e.id].attr("class",dS[e.id].attr("class")+" clickable"),n},"insertNode"),Pve=o(t=>{let e=dS[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 Fve(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=t9(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??Cr()?.block?.padding??0}}async function Int(t,e,r){let n=Fve(e,r,!1);if(n.type==="group")return;let i=Cr(),a=await oF(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 Ont(t,e,r){let n=Fve(e,r,!0);if(r.getBlock(n.id).type!=="space"){let a=Cr();await oF(t,n,{config:a}),e.intersect=n?.intersect,Pve(n)}}async function lF(t,e,r,n){for(let i of e)await n(t,i,r),i.children&&await lF(t,i.children,r,n)}async function zve(t,e,r){await lF(t,e,r,Int)}async function Gve(t,e,r){await lF(t,e,r,Ont)}async function $ve(t,e,r,n,i){let a=new Ir({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}];mve(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 dve(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"}),pve({...s,x:d[1].x,y:d[1].y},{originalPath:d}))}}}var Vve=M(()=>{"use strict";Gs();Za();gve();Bve();hr();o(Fve,"getNodeFromBlock");o(Int,"calculateBlockSize");o(Ont,"insertBlockPositioned");o(lF,"performOperations");o(zve,"calculateBlockSizes");o(Gve,"insertBlocks");o($ve,"insertEdges")});var Pnt,Bnt,Uve,Hve=M(()=>{"use strict";pr();Za();nve();ut();ai();ove();Vve();Pnt=o(function(t,e){return e.db.getClasses()},"getClasses"),Bnt=o(async function(t,e,r,n){let{securityLevel:i,block:a}=Cr(),s=n.db,l;i==="sandbox"&&(l=Ve("#i"+e));let u=i==="sandbox"?Ve(l.nodes()[0].contentDocument.body):Ve("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):Ve(`[id="${e}"]`);rve(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 zve(g,d,s);let y=sve(s);if(await Gve(g,d,s),await $ve(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"),Uve={draw:Bnt,getClasses:Pnt}});var Wve={};vr(Wve,{diagram:()=>Fnt});var Fnt,Yve=M(()=>{"use strict";Yye();Jye();tve();Hve();Fnt={parser:Wye,db:Zye,renderer:Uve,styles:eve}});var cF,uF,Db,jve,hF,ys,nu,pS,Kve,Vnt,Nb,Qve,Zve,Jve,e2e,mS,Vf,gS=M(()=>{"use strict";cF={L:"left",R:"right",T:"top",B:"bottom"},uF={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")},Db={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")},jve=o(function(t){return ys(t)?t==="L"?"R":"L":t==="T"?"B":"T"},"getOppositeArchitectureDirection"),hF=o(function(t){let e=t;return e==="L"||e==="R"||e==="T"||e==="B"},"isArchitectureDirection"),ys=o(function(t){let e=t;return e==="L"||e==="R"},"isArchitectureDirectionX"),nu=o(function(t){let e=t;return e==="T"||e==="B"},"isArchitectureDirectionY"),pS=o(function(t,e){let r=ys(t)&&nu(e),n=nu(t)&&ys(e);return r||n},"isArchitectureDirectionXY"),Kve=o(function(t){let e=t[0],r=t[1],n=ys(e)&&nu(r),i=nu(e)&&ys(r);return n||i},"isArchitecturePairXY"),Vnt=o(function(t){return t!=="LL"&&t!=="RR"&&t!=="TT"&&t!=="BB"},"isValidArchitectureDirectionPair"),Nb=o(function(t,e){let r=`${t}${e}`;return Vnt(r)?r:void 0},"getArchitectureDirectionPair"),Qve=o(function([t,e],r){let n=r[0],i=r[1];return ys(n)?nu(i)?[t+(n==="L"?-1:1),e+(i==="T"?1:-1)]:[t+(n==="L"?-1:1),e]:ys(i)?[t+(i==="L"?1:-1),e+(n==="T"?1:-1)]:[t,e+(n==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),Zve=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"),Jve=o(function(t){return t.type==="service"},"isArchitectureService"),e2e=o(function(t){return t.type==="junction"},"isArchitectureJunction"),mS=o(t=>t.data(),"edgeData"),Vf=o(t=>t.data(),"nodeData")});function Mi(t){let e=pe().architecture;return e?.[t]?e[t]:t2e[t]}var t2e,mr,Unt,Hnt,Wnt,Ynt,qnt,Xnt,jnt,Knt,Qnt,Znt,Jnt,eit,tit,rit,ip,Rb=M(()=>{"use strict";bs();Vt();dE();Ai();gS();t2e=ur.architecture,mr=new vf(()=>({nodes:{},groups:{},edges:[],registeredIds:{},config:t2e,dataStructures:void 0,elements:{}})),Unt=o(()=>{mr.reset(),Lr()},"clear"),Hnt=o(function({id:t,icon:e,in:r,title:n,iconText:i}){if(mr.records.registeredIds[t]!==void 0)throw new Error(`The service id [${t}] is already in use by another ${mr.records.registeredIds[t]}`);if(r!==void 0){if(t===r)throw new Error(`The service [${t}] cannot be placed within itself`);if(mr.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(mr.records.registeredIds[r]==="node")throw new Error(`The service [${t}]'s parent is not a group`)}mr.records.registeredIds[t]="node",mr.records.nodes[t]={id:t,type:"service",icon:e,iconText:i,title:n,edges:[],in:r}},"addService"),Wnt=o(()=>Object.values(mr.records.nodes).filter(Jve),"getServices"),Ynt=o(function({id:t,in:e}){mr.records.registeredIds[t]="node",mr.records.nodes[t]={id:t,type:"junction",edges:[],in:e}},"addJunction"),qnt=o(()=>Object.values(mr.records.nodes).filter(e2e),"getJunctions"),Xnt=o(()=>Object.values(mr.records.nodes),"getNodes"),jnt=o(t=>mr.records.nodes[t],"getNode"),Knt=o(function({id:t,icon:e,in:r,title:n}){if(mr.records.registeredIds[t]!==void 0)throw new Error(`The group id [${t}] is already in use by another ${mr.records.registeredIds[t]}`);if(r!==void 0){if(t===r)throw new Error(`The group [${t}] cannot be placed within itself`);if(mr.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(mr.records.registeredIds[r]==="node")throw new Error(`The group [${t}]'s parent is not a group`)}mr.records.registeredIds[t]="group",mr.records.groups[t]={id:t,icon:e,title:n,in:r}},"addGroup"),Qnt=o(()=>Object.values(mr.records.groups),"getGroups"),Znt=o(function({lhsId:t,rhsId:e,lhsDir:r,rhsDir:n,lhsInto:i,rhsInto:a,lhsGroup:s,rhsGroup:l,title:u}){if(!hF(r))throw new Error(`Invalid direction given for left hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${r}`);if(!hF(n))throw new Error(`Invalid direction given for right hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${n}`);if(mr.records.nodes[t]===void 0&&mr.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(mr.records.nodes[e]===void 0&&mr.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=mr.records.nodes[t].in,f=mr.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};mr.records.edges.push(d),mr.records.nodes[t]&&mr.records.nodes[e]&&(mr.records.nodes[t].edges.push(mr.records.edges[mr.records.edges.length-1]),mr.records.nodes[e].edges.push(mr.records.edges[mr.records.edges.length-1]))},"addEdge"),Jnt=o(()=>mr.records.edges,"getEdges"),eit=o(()=>{if(mr.records.dataStructures===void 0){let t=Object.entries(mr.records.nodes).reduce((s,[l,u])=>(s[l]=u.edges.reduce((h,f)=>{if(f.lhsId===l){let d=Nb(f.lhsDir,f.rhsDir);d&&(h[d]=f.rhsId)}else{let d=Nb(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]=Qve([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]));mr.records.dataStructures={adjList:t,spatialMaps:a}}return mr.records.dataStructures},"getDataStructures"),tit=o((t,e)=>{mr.records.elements[t]=e},"setElementForId"),rit=o(t=>mr.records.elements[t],"getElementById"),ip={clear:Unt,setDiagramTitle:cn,getDiagramTitle:Jr,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addService:Hnt,getServices:Wnt,addJunction:Ynt,getJunctions:qnt,getNodes:Xnt,getNode:jnt,addGroup:Knt,getGroups:Qnt,addEdge:Znt,getEdges:Jnt,setElementForId:tit,getElementById:rit,getDataStructures:eit};o(Mi,"getConfigField")});var nit,r2e,n2e=M(()=>{"use strict";Hg();ut();Tx();Rb();nit=o((t,e)=>{yf(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"),r2e={parse:o(async t=>{let e=await Yl("architecture",t);Y.debug(e),nit(e,ip)},"parse")}});var iit,i2e,a2e=M(()=>{"use strict";iit=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"),i2e=iit});var dF=Ei((Mb,fF)=>{"use strict";o(function(e,r){typeof Mb=="object"&&typeof fF=="object"?fF.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Mb=="object"?Mb.layoutBase=r():e.layoutBase=r()},"webpackUniversalModuleDefinition")(Mb,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,S=this.nodes,A=S.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]=S,!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):C===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]=S,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]=S,R=!0)),k&&R)return!1;if(u>f?h>d?(P=this.getCardinalDirection(C,N,4),F=this.getCardinalDirection(O,N,2)):(P=this.getCardinalDirection(-C,N,3),F=this.getCardinalDirection(-O,N,1)):h>d?(P=this.getCardinalDirection(-C,N,1),F=this.getCardinalDirection(-O,N,3)):(P=this.getCardinalDirection(C,N,2),F=this.getCardinalDirection(O,N,4)),!k)switch(P){case 1:G=m,B=u+-w/N,l[0]=B,l[1]=G;break;case 2:B=x,G=h+b*N,l[0]=B,l[1]=G;break;case 3:G=v,B=u+w/N,l[0]=B,l[1]=G;break;case 4:B=y,G=h+-b*N,l[0]=B,l[1]=G;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=S,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,S=void 0,A=void 0;return w=p-f,T=h-d,L=d*f-h*p,_=v-g,E=m-y,S=y*g-m*v,A=w*E-_*T,A===0?null:(x=(T*S-E*L)/A,b=(_*L-w*S)/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(S,1);var A=_.getNeighborsList();A.forEach(function(k){if(y.indexOf(k)<0){var R=v.get(k),C=R-1;C==1&&E.push(k),v.set(k,C)}})}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 Je=[];dt-- >0;)Je.push(0);return Je}(Math.min(this.m+1,this.n)),this.U=function(dt){var Je=o(function ct(Ct){if(Ct.length==0)return 0;for(var pt=[],Bt=0;Bt0;)Je.push(0);return Je}(this.n),l=function(dt){for(var Je=[];dt-- >0;)Je.push(0);return Je}(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;j--){if(function(dt,Je){return dt&&Je}(j0;){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 Ne=void 0;for(Ne=R-1;Ne>=ce&&Ne!==ce;Ne--){var se=(Ne!==R?Math.abs(s[Ne]):0)+(Ne!==ce+1?Math.abs(s[Ne-1]):0);if(Math.abs(this.s[Ne])<=ue+ae*se){this.s[Ne]=0;break}}Ne===ce?te=3:Ne===R-1?te=1:(te=2,ce=Ne)}switch(ce++,te){case 1:{var ke=s[R-2];s[R-2]=0;for(var Re=R-2;Re>=ce;Re--){var Ce=n.hypot(this.s[Re],ke),Pe=this.s[Re]/Ce,Ie=ke/Ce;if(this.s[Re]=Ce,Re!==ce&&(ke=-Ie*s[Re-1],s[Re-1]=Pe*s[Re-1]),h)for(var $e=0;$e=this.s[ce+1]);){var tt=this.s[ce];if(this.s[ce]=this.s[ce+1],this.s[ce+1]=tt,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 Ib=="object"&&typeof pF=="object"?pF.exports=r(dF()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof Ib=="object"?Ib.coseBase=r(dF()):e.coseBase=r(e.layoutBase)},"webpackUniversalModuleDefinition")(Ib,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,S=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()),C=this.nodesWithGravity.filter(function(P){return R.has(P)});this.graphManager.setAllNodesToApplyGravitation(C)}}else{var k=this.getFlatForest();if(k.length>0)this.positionNodesRadially(k);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var R=new Set(this.getAllNodes()),C=this.nodesWithGravity.filter(function(O){return R.has(O)});this.graphManager.setAllNodesToApplyGravitation(C),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 C=!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(C,O),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},I.prototype.getPositionsData=function(){for(var k=this.graphManager.getAllNodes(),R={},C=0;C0&&this.updateDisplacements();for(var C=0;C0&&(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 G=this.constraints.alignmentConstraint.vertical,C=0;C=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,Q=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(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.nodeToRelativeConstraintMapVertical.get(q).push({bottom:Q,gap:ee.gap}),k.nodeToRelativeConstraintMapVertical.get(Q).push({top:q,gap:ee.gap})}});else{var W=new Map,Z=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,Q=B.has(ee.bottom)?B.get(ee.bottom):ee.bottom;Z.has(q)?Z.get(q).push(Q):Z.set(q,[Q]),Z.has(Q)?Z.get(Q).push(q):Z.set(Q,[q])}});var j=o(function(J,H){var q=[],Q=[],ae=new A,ue=new Set,ce=0;return J.forEach(function(te,Ne){if(!ue.has(Ne)){q[ce]=[],Q[ce]=!1;var se=Ne;for(ae.push(se),ue.add(se),q[ce].push(se);ae.length!=0;){se=ae.shift(),H.has(se)&&(Q[ce]=!0);var ke=J.get(se);ke.forEach(function(Re){ue.has(Re)||(ae.push(Re),ue.add(Re),q[ce].push(Re))})}ce++}}),{components:q,isFixed:Q}},"constructComponents"),oe=j(W,k.fixedNodesOnHorizontal);this.componentsOnHorizontal=oe.components,this.fixedComponentsOnHorizontal=oe.isFixed;var K=j(Z,k.fixedNodesOnVertical);this.componentsOnVertical=K.components,this.fixedComponentsOnVertical=K.isFixed}}},I.prototype.updateDisplacements=function(){var k=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(K){var ee=k.idToNodeMap.get(K.nodeId);ee.displacementX=0,ee.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var R=this.constraints.alignmentConstraint.vertical,C=0;C1){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,C){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 S;P.setDeviceOrgX(N.getMinX()),P.setDeviceOrgY(N.getMinY()),P.setWorldOrgX(C.x),P.setWorldOrgY(C.y);for(var F=0;F1;){var q=H[0];H.splice(0,1);var Q=j.indexOf(q);Q>=0&&j.splice(Q,1),ee--,oe--}R!=null?J=(j.indexOf(H[0])+1)%ee:J=0;for(var ae=Math.abs(O-C)/oe,ue=J;K!=oe;ue=++ue%ee){var ce=j[ue].getOtherEnd(k);if(ce!=R){var te=(C+K*ae)%360,Ne=(te+ae)%360;I.branchRadialLayout(ce,k,te,Ne,N+P,P),K++}}},I.maxDiagonalInTree=function(k){for(var R=T.MIN_VALUE,C=0;CR&&(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 C=[],O=this.graphManager.getAllNodes(),N=0;N"u"&&(R[B]=[]),R[B]=R[B].concat(P)}Object.keys(R).forEach(function(G){if(R[G].length>1){var z="DummyCompound_"+G;k.memberGroups[z]=R[G];var W=R[G][0].getParent(),Z=new d(k.graphManager);Z.id=z,Z.paddingLeft=W.paddingLeft||0,Z.paddingRight=W.paddingRight||0,Z.paddingBottom=W.paddingBottom||0,Z.paddingTop=W.paddingTop||0,k.idToDummyNode[z]=Z;var j=k.getGraphManager().add(k.newGraph(),Z),oe=W.getChild();oe.add(Z);for(var K=0;KN?(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],C=R.id,O=R.paddingLeft,N=R.paddingTop,P=R.labelMarginLeft,F=R.labelMarginTop;this.adjustLocations(this.tiledMemberPack[C],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(C){var O=k.idToDummyNode[C],N=O.paddingLeft,P=O.paddingTop,F=O.labelMarginLeft,B=O.labelMarginTop;k.adjustLocations(R[C],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 C=k.getChild();if(C==null)return this.toBeTiled[R]=!1,!1;for(var O=C.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,C=k.getEdges(),O=0,N=0;NW&&(W=j.rect.height)}C+=W+k.verticalPadding}},I.prototype.tileCompoundMembers=function(k,R){var C=this;this.tiledMemberPack=[],Object.keys(k).forEach(function(O){var N=R[O];if(C.tiledMemberPack[O]=C.tileNodes(k[O],N.paddingLeft+N.paddingRight),N.rect.width=C.tiledMemberPack[O].width,N.rect.height=C.tiledMemberPack[O].height,N.setCenter(C.tiledMemberPack[O].centerX,C.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 C=this.tileNodesByFavoringDim(k,R,!0),O=this.tileNodesByFavoringDim(k,R,!1),N=this.getOrgRatio(C),P=this.getOrgRatio(O),F;return PB&&(B=K.getWidth())});var G=P/N,z=F/N,W=Math.pow(C-O,2)+4*(G+O)*(z+C)*N,Z=(O-C+Math.sqrt(W))/(2*(G+O)),j;R?(j=Math.ceil(Z),j==Z&&j++):j=Math.floor(Z);var oe=j*(G+O)-O;return B>oe&&(oe=B),oe+=O*2,oe},I.prototype.tileNodesByFavoringDim=function(k,R,C){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,C));var B=o(function(ee){return ee.rect.width*ee.rect.height},"getNodeArea"),G=o(function(ee,J){return B(J)-B(ee)},"areaCompareFcn");k.sort(function(K,ee){var J=G;return F.idealRowWidth?(J=P,J(K.id,ee.id)):J(K,ee)});for(var z=0,W=0,Z=0;Z0&&(F+=k.horizontalPadding),k.rowWidth[C]=F,k.width0&&(B+=k.verticalPadding);var G=0;B>k.rowHeight[C]&&(G=k.rowHeight[C],k.rowHeight[C]=B,G=k.rowHeight[C]-G),k.height+=G,k.rows[C].push(R)},I.prototype.getShortestRowIndex=function(k){for(var R=-1,C=Number.MAX_VALUE,O=0;OC&&(R=O,C=k.rowWidth[O]);return R},I.prototype.canAddHorizontal=function(k,R,C){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=C+k.verticalPadding-k.rowHeight[P]);var G;k.width-F>=R+k.horizontalPadding?G=(k.height+B)/(F+R+k.horizontalPadding):G=(k.height+B)/k.width,B=C+k.verticalPadding;var z;return k.widthP&&R!=C){O.splice(-1,1),k.rows[C].push(N),k.rowWidth[R]=k.rowWidth[R]-P,k.rowWidth[C]=k.rowWidth[C]+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 G=k.rowHeight[R]+k.rowHeight[C];k.rowHeight[R]=F,k.rowHeight[C]0)for(var oe=N;oe<=P;oe++)j[0]+=this.grid[oe][F-1].length+this.grid[oe][F].length-1;if(P0)for(var oe=F;oe<=B;oe++)j[3]+=this.grid[N-1][oe].length+this.grid[N][oe].length-1;for(var K=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 yt=0;rt.forEach(function(tt){Te=="horizontal"?(me.set(tt,x.has(tt)?b[x.get(tt)]:Ee.get(tt)),yt+=me.get(tt)):(me.set(tt,x.has(tt)?w[x.get(tt)]:Ee.get(tt)),yt+=me.get(tt))}),yt=yt/rt.length,vt.forEach(function(tt){ie.has(tt)||me.set(tt,yt)})}else{var Ue=0;vt.forEach(function(tt){Te=="horizontal"?Ue+=x.has(tt)?b[x.get(tt)]:Ee.get(tt):Ue+=x.has(tt)?w[x.get(tt)]:Ee.get(tt)}),Ue=Ue/vt.length,vt.forEach(function(tt){me.set(tt,Ue)})}});for(var et=o(function(){var rt=Oe.shift(),yt=U.get(rt);yt.forEach(function(Ue){if(me.get(Ue.id)tt&&(tt=pt),Btht&&(ht=Bt)}}catch(On){er=!0,dt=On}finally{try{!Et&&Je.return&&Je.return()}finally{if(er)throw dt}}var Tr=(yt+tt)/2-(Ue+ht)/2,yr=!0,or=!1,ln=void 0;try{for(var Or=vt[Symbol.iterator](),ii;!(yr=(ii=Or.next()).done);yr=!0){var mn=ii.value;me.set(mn,me.get(mn)+Tr)}}catch(On){or=!0,ln=On}finally{try{!yr&&Or.return&&Or.return()}finally{if(or)throw ln}}})}return me},"findAppropriatePositionForRelativePlacement"),D=o(function(U){var Te=0,ie=0,Ee=0,Ae=0;if(U.forEach(function(He){He.left?b[x.get(He.left)]-b[x.get(He.right)]>=0?Te++:ie++:w[x.get(He.top)]-w[x.get(He.bottom)]>=0?Ee++:Ae++}),Te>ie&&Ee>Ae)for(var Ge=0;Geie)for(var Be=0;BeAe)for(var me=0;me1)y.fixedNodeConstraint.forEach(function(ve,U){O[U]=[ve.position.x,ve.position.y],N[U]=[b[x.get(ve.nodeId)],w[x.get(ve.nodeId)]]}),P=!0;else if(y.alignmentConstraint)(function(){var ve=0;if(y.alignmentConstraint.vertical){for(var U=y.alignmentConstraint.vertical,Te=o(function(me){var He=new Set;U[me].forEach(function(bt){He.add(bt)});var Oe=new Set([].concat(u(He)).filter(function(bt){return B.has(bt)})),et=void 0;Oe.size>0?et=b[x.get(Oe.values().next().value)]:et=A(He).x,U[me].forEach(function(bt){O[ve]=[et,w[x.get(bt)]],N[ve]=[b[x.get(bt)],w[x.get(bt)]],ve++})},"_loop2"),ie=0;ie0?et=b[x.get(Oe.values().next().value)]:et=A(He).y,Ee[me].forEach(function(bt){O[ve]=[b[x.get(bt)],et],N[ve]=[b[x.get(bt)],w[x.get(bt)]],ve++})},"_loop3"),Ge=0;GeZ&&(Z=W[oe].length,j=oe);if(Z0){var Pe={x:0,y:0};y.fixedNodeConstraint.forEach(function(ve,U){var Te={x:b[x.get(ve.nodeId)],y:w[x.get(ve.nodeId)]},ie=ve.position,Ee=S(ie,Te);Pe.x+=Ee.x,Pe.y+=Ee.y}),Pe.x/=y.fixedNodeConstraint.length,Pe.y/=y.fixedNodeConstraint.length,b.forEach(function(ve,U){b[U]+=Pe.x}),w.forEach(function(ve,U){w[U]+=Pe.y}),y.fixedNodeConstraint.forEach(function(ve){b[x.get(ve.nodeId)]=ve.position.x,w[x.get(ve.nodeId)]=ve.position.y})}if(y.alignmentConstraint){if(y.alignmentConstraint.vertical)for(var Ie=y.alignmentConstraint.vertical,$e=o(function(U){var Te=new Set;Ie[U].forEach(function(Ae){Te.add(Ae)});var ie=new Set([].concat(u(Te)).filter(function(Ae){return B.has(Ae)})),Ee=void 0;ie.size>0?Ee=b[x.get(ie.values().next().value)]:Ee=A(Te).x,Te.forEach(function(Ae){B.has(Ae)||(b[x.get(Ae)]=Ee)})},"_loop4"),ye=0;ye0?Ee=w[x.get(ie.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 s2e=Ei((Ob,gF)=>{"use strict";o(function(e,r){typeof Ob=="object"&&typeof gF=="object"?gF.exports=r(mF()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof Ob=="object"?Ob.cytoscapeFcose=r(mF()):e.cytoscapeFcose=r(e.coseBase)},"webpackUniversalModuleDefinition")(Ob,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),S},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,S=u(L,2),A=S[0],I=S[1],D=m.cy.getElementById(A);if(D){var k=D.boundingBox(),R=p.xCoords[I]-k.w/2,C=p.xCoords[I]+k.w/2,O=p.yCoords[I]-k.h/2,N=p.yCoords[I]+k.h/2;Ry&&(y=C),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],Z=W.getRect().x,j=W.getRect().x+W.getRect().width,oe=W.getRect().y,K=W.getRect().y+W.getRect().height;Zy&&(y=j),oex&&(x=K)});var B=d.x-(y+g)/2,G=d.y-(x+v)/2;Object.keys(p).forEach(function(z){var W=p[z];W.setCenter(W.getCenterX()+B,W.getCenterY()+G)})}}},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"),S=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(),S=void 0,A=void 0,I=void 0,D={};b.randomize&&(S=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"),C=u.calcParentsWithoutChildren(_,T),O=o(function G(z,W,Z,j){for(var oe=W.length,K=0;K0){var ae=void 0;ae=Z.getGraphManager().add(Z.newGraph(),H),G(ae,J,Z,j)}}},"processChildrenList"),N=o(function(z,W,Z){for(var j=0,oe=0,K=0;K0?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=j/oe: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,S=[],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 C=T.fixedNodeConstraint||T.alignmentConstraint||T.relativePlacementConstraint;C&&(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(se){var ke=se.boundingBox();R.push({x:ke.x1+ke.w/2,y:ke.y1+ke.h/2})}),T.randomize&&k.forEach(function(se){T.eles=se,S.push(m(T))}),T.quality=="default"||T.quality=="proof"){var G=E.collection();if(T.tile){var z=new Map,W=[],Z=[],j=0,oe={nodeIndexes:z,xCoords:W,yCoords:Z},K=[];if(k.forEach(function(se,ke){se.edges().length==0&&(se.nodes().forEach(function(Re,Ce){G.merge(se.nodes()[Ce]),Re.isParent()||(oe.nodeIndexes.set(se.nodes()[Ce].id(),j++),oe.xCoords.push(se.nodes()[0].position().x),oe.yCoords.push(se.nodes()[0].position().y))}),K.push(ke))}),G.length>1){var ee=G.boundingBox();R.push({x:ee.x1+ee.w/2,y:ee.y1+ee.h/2}),k.push(G),S.push(oe);for(var J=K.length-1;J>=0;J--)k.splice(K[J],1),S.splice(K[J],1),R.splice(K[J],1)}}k.forEach(function(se,ke){T.eles=se,D.push(y(T,S[ke])),d.relocateComponent(R[ke],D[ke],T)})}else k.forEach(function(se,ke){d.relocateComponent(R[ke],S[ke],T)});var H=new Set;if(k.length>1){var q=[],Q=L.filter(function(se){return se.css("display")=="none"});k.forEach(function(se,ke){var Re=void 0;if(T.quality=="draft"&&(Re=S[ke].nodeIndexes),se.nodes().not(Q).length>0){var Ce={};Ce.edges=[],Ce.nodes=[];var Pe=void 0;se.nodes().not(Q).forEach(function(Ie){if(T.quality=="draft")if(!Ie.isParent())Pe=Re.get(Ie.id()),Ce.nodes.push({x:S[ke].xCoords[Pe]-Ie.boundingbox().w/2,y:S[ke].yCoords[Pe]-Ie.boundingbox().h/2,width:Ie.boundingbox().w,height:Ie.boundingbox().h});else{var $e=d.calcBoundingBox(Ie,S[ke].xCoords,S[ke].yCoords,Re);Ce.nodes.push({x:$e.topLeftX,y:$e.topLeftY,width:$e.width,height:$e.height})}else D[ke][Ie.id()]&&Ce.nodes.push({x:D[ke][Ie.id()].getLeft(),y:D[ke][Ie.id()].getTop(),width:D[ke][Ie.id()].getWidth(),height:D[ke][Ie.id()].getHeight()})}),se.edges().forEach(function(Ie){var $e=Ie.source(),ye=Ie.target();if($e.css("display")!="none"&&ye.css("display")!="none")if(T.quality=="draft"){var X=Re.get($e.id()),fe=Re.get(ye.id()),he=[],ge=[];if($e.isParent()){var ne=d.calcBoundingBox($e,S[ke].xCoords,S[ke].yCoords,Re);he.push(ne.topLeftX+ne.width/2),he.push(ne.topLeftY+ne.height/2)}else he.push(S[ke].xCoords[X]),he.push(S[ke].yCoords[X]);if(ye.isParent()){var ve=d.calcBoundingBox(ye,S[ke].xCoords,S[ke].yCoords,Re);ge.push(ve.topLeftX+ve.width/2),ge.push(ve.topLeftY+ve.height/2)}else ge.push(S[ke].xCoords[fe]),ge.push(S[ke].yCoords[fe]);Ce.edges.push({startX:he[0],startY:he[1],endX:ge[0],endY:ge[1]})}else D[ke][$e.id()]&&D[ke][ye.id()]&&Ce.edges.push({startX:D[ke][$e.id()].getCenterX(),startY:D[ke][$e.id()].getCenterY(),endX:D[ke][ye.id()].getCenterX(),endY:D[ke][ye.id()].getCenterY()})}),Ce.nodes.length>0&&(q.push(Ce),H.add(ke))}});var ae=O.packComponents(q,T.randomize).shifts;if(T.quality=="draft")S.forEach(function(se,ke){var Re=se.xCoords.map(function(Pe){return Pe+ae[ke].dx}),Ce=se.yCoords.map(function(Pe){return Pe+ae[ke].dy});se.xCoords=Re,se.yCoords=Ce});else{var ue=0;H.forEach(function(se){Object.keys(D[se]).forEach(function(ke){var Re=D[se][ke];Re.setCenter(Re.getCenterX()+ae[ue].dx,Re.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);S.push(F)}T.quality=="default"||T.quality=="proof"?(D.push(y(T,S[0])),d.relocateComponent(R[0],D[0],T)):d.relocateComponent(R[0],S[0],T)}var ce=o(function(ke,Re){if(T.quality=="default"||T.quality=="proof"){typeof ke=="number"&&(ke=Re);var Ce=void 0,Pe=void 0,Ie=ke.data("id");return D.forEach(function(ye){Ie in ye&&(Ce={x:ye[Ie].getRect().getCenterX(),y:ye[Ie].getRect().getCenterY()},Pe=ye[Ie])}),T.nodeDimensionsIncludeLabels&&(Pe.labelWidth&&(Pe.labelPosHorizontal=="left"?Ce.x+=Pe.labelWidth/2:Pe.labelPosHorizontal=="right"&&(Ce.x-=Pe.labelWidth/2)),Pe.labelHeight&&(Pe.labelPosVertical=="top"?Ce.y+=Pe.labelHeight/2:Pe.labelPosVertical=="bottom"&&(Ce.y-=Pe.labelHeight/2))),Ce==null&&(Ce={x:ke.position("x"),y:ke.position("y")}),{x:Ce.x,y:Ce.y}}else{var $e=void 0;return S.forEach(function(ye){var X=ye.nodeIndexes.get(ke.id());X!=null&&($e={x:ye.xCoords[X],y:ye.yCoords[X]})}),$e==null&&($e={x:ke.position("x"),y:ke.position("y")}),{x:$e.x,y:$e.y}}},"getPositions");if(T.quality=="default"||T.quality=="proof"||T.randomize){var te=d.calcParentsWithoutChildren(E,L),Ne=L.filter(function(se){return se.css("display")=="none"});T.eles=L.not(Ne),L.nodes().not(":parent").not(Ne).layoutPositions(_,T,ce),te.length>0&&te.forEach(function(se){se.position(ce(se))})}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=[],S=[],A=[],I=[],D=[],k=[],R=void 0,C=void 0,O=1e8,N=1e-9,P=m.piTol,F=m.samplingType,B=m.nodeSeparation,G=void 0,z=o(function(){for(var Te=0,ie=0,Ee=!1;ie=Ge;){me=Ae[Ge++];for(var vt=T[me],rt=0;rtet&&(et=A[Ue],bt=Ue)}return bt},"BFS"),Z=o(function(Te){var ie=void 0;if(Te){ie=Math.floor(Math.random()*C),R=ie;for(var Ae=0;Ae=1)break;et=Oe}for(var vt=0;vt=1)break;et=Oe}for(var yt=0;yt0&&(ie.isParent()?T[Te].push(_.get(ie.id())):T[Te].push(ie.id()))})});var te=o(function(Te){var ie=w.get(Te),Ee=void 0;b.get(Te).forEach(function(Ae){g.getElementById(Ae).isParent()?Ee=_.get(Ae):Ee=Ae,T[ie].push(Ee),T[w.get(Ee)].push(Te)})},"_loop"),Ne=!0,se=!1,ke=void 0;try{for(var Re=b.keys()[Symbol.iterator](),Ce;!(Ne=(Ce=Re.next()).done);Ne=!0){var Pe=Ce.value;te(Pe)}}catch(U){se=!0,ke=U}finally{try{!Ne&&Re.return&&Re.return()}finally{if(se)throw ke}}C=w.size;var Ie=void 0;if(C>2){G=C{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 F1,ap,yF=M(()=>{"use strict";su();F1=o(t=>`${t}`,"wrapIcon"),ap={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:F1('')},server:{body:F1('')},disk:{body:F1('')},internet:{body:F1('')},cloud:{body:F1('')},unknown:zS,blank:{body:F1("")}}}});var o2e,l2e,c2e,u2e,h2e=M(()=>{"use strict";su();Vt();Pl();Rb();yF();gS();o2e=o(async function(t,e){let r=Mi("padding"),n=Mi("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}=mS(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&&(ys(h)?x+=h==="L"?-L:L:b+=h==="T"?-L:L+18),y&&(ys(m)?T+=m==="L"?-L:L:E+=m==="T"?-L:L+18),!d&&ip.getNode(u)?.type==="junction"&&(ys(h)?x+=h==="L"?i:-i:b+=h==="T"?i:-i),!y&&ip.getNode(p)?.type==="junction"&&(ys(m)?T+=m==="L"?i:-i:E+=m==="T"?i:-i),l[0]._private.rscratch){let S=t.insert("g");if(S.insert("path").attr("d",`M ${x},${b} L ${w},${_} L${T},${E} `).attr("class","edge"),f){let A=ys(h)?Db[h](x,a):x-s,I=nu(h)?Db[h](b,a):b-s;S.insert("polygon").attr("points",uF[h](a)).attr("transform",`translate(${A},${I})`).attr("class","arrow")}if(g){let A=ys(m)?Db[m](T,a):T-s,I=nu(m)?Db[m](E,a):E-s;S.insert("polygon").attr("points",uF[m](a)).attr("transform",`translate(${A},${I})`).attr("class","arrow")}if(v){let A=pS(h,m)?"XY":ys(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=S.append("g");if(await Li(D,v,{useHtmlLabels:!1,width:I,classes:"architecture-service-label"},pe()),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=Nb(h,m);if(k&&Kve(k)){let R=D.node().getBoundingClientRect(),[C,O]=Zve(k);D.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*C*O*45})`);let N=D.node().getBoundingClientRect();D.attr("transform",` + translate(${w}, ${_-R.height/2}) + translate(${C*N.width/2}, ${O*N.height/2}) + rotate(${-1*C*O*45}, 0, ${R.height/2}) + `)}}}}}))},"drawEdges"),l2e=o(async function(t,e){let n=Mi("padding")*.75,i=Mi("fontSize"),s=Mi("iconSize")/2;await Promise.all(e.nodes().map(async l=>{let u=Vf(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 _o(u.icon,{height:n,width:n,fallbackPrefix:ap.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 Li(v,u.label,{useHtmlLabels:!1,width:f,classes:"architecture-service-label"},pe()),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"),c2e=o(async function(t,e,r){for(let n of r){let i=e.append("g"),a=Mi("iconSize");if(n.title){let h=i.append("g");await Li(h,n.title,{useHtmlLabels:!1,width:a*1.5,classes:"architecture-service-label"},pe()),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 _o(n.icon,{height:a,width:a,fallbackPrefix:ap.prefix})}`);else if(n.iconText){s.html(`${await _o("blank",{height:a,width:a,fallbackPrefix:ap.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"),u2e=o(function(t,e,r){r.forEach(n=>{let i=e.append("g"),a=Mi("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 ait(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:Mi("iconSize"),height:Mi("iconSize")},classes:"node-service"})})}function sit(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"junction",id:r.id,parent:r.in,width:Mi("iconSize"),height:Mi("iconSize")},classes:"node-junction"})})}function oit(t,e){e.nodes().map(r=>{let n=Vf(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 lit(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 cit(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=pS(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 uit(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 hit(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({[cF[p]]:y,[cF[jve(p)]]:f,gap:1.5*Mi("iconSize")}))})}}}}),e}function fit(t,e,r,n,{spatialMaps:i}){return new Promise(a=>{let s=Ve("body").append("div").attr("id","cy").attr("style","display:none"),l=fl({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":`${Mi("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:`${Mi("padding")}px`}}]});s.remove(),lit(r,l),ait(t,l),sit(e,l),cit(n,l);let u=uit(i),h=hit(i),f=l.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(d){let[p,m]=d.connectedNodes(),{parent:g}=Vf(p),{parent:y}=Vf(m);return g===y?1.5*Mi("iconSize"):.5*Mi("iconSize")},edgeElasticity(d){let[p,m]=d.connectedNodes(),{parent:g}=Vf(p),{parent:y}=Vf(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 S=(_-b)*(g-b)+(T-w)*(y-w);switch(!0){case S>=0:S=1;break;case S<0:S=-1;break}return x=Math.abs(x)*L,v=v*S,{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}=mS(p),[_,T]=nu(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 f2e,dit,d2e,p2e=M(()=>{"use strict";su();SB();f2e=Ji(s2e(),1);pr();ut();eh();ai();Rb();yF();gS();h2e();Xb([{name:ap.prefix,icons:ap}]);fl.use(f2e.default);o(ait,"addServices");o(sit,"addJunctions");o(oit,"positionNodes");o(lit,"addGroups");o(cit,"addEdges");o(uit,"getAlignments");o(hit,"getRelativeConstraints");o(fit,"layoutArchitecture");dit=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=Va(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 c2e(i,p,a),u2e(i,p,s);let g=await fit(a,s,l,u,h);await o2e(d,g),await l2e(m,g),oit(i,g),Io(void 0,f,Mi("padding"),Mi("useMaxWidth"))},"draw"),d2e={draw:dit}});var m2e={};vr(m2e,{diagram:()=>pit});var pit,g2e=M(()=>{"use strict";n2e();Rb();a2e();p2e();pit={parser:r2e,db:ip,renderer:d2e,styles:i2e}});var eat={};vr(eat,{default:()=>Jit});su();GS();Zf();var VX="c4",PCe=o(t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),"detector"),BCe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>($X(),GX));return{id:VX,diagram:t}},"loader"),FCe={id:VX,detector:PCe,loader:BCe},UX=FCe;var Yie="flowchart",UOe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-wrapper"||e?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(t),"detector"),HOe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ET(),kT));return{id:Yie,diagram:t}},"loader"),WOe={id:Yie,detector:UOe,loader:HOe},qie=WOe;var Xie="flowchart-v2",YOe=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"),qOe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ET(),kT));return{id:Xie,diagram:t}},"loader"),XOe={id:Xie,detector:YOe,loader:qOe},jie=XOe;var Eae="er",kPe=o(t=>/^\s*erDiagram/.test(t),"detector"),EPe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(kae(),Tae));return{id:Eae,diagram:t}},"loader"),SPe={id:Eae,detector:kPe,loader:EPe},Sae=SPe;var Oue="gitGraph",jGe=o(t=>/^\s*gitGraph/.test(t),"detector"),KGe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Iue(),Mue));return{id:Oue,diagram:t}},"loader"),QGe={id:Oue,detector:jGe,loader:KGe},Pue=QGe;var fhe="gantt",F$e=o(t=>/^\s*gantt/.test(t),"detector"),z$e=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(hhe(),uhe));return{id:fhe,diagram:t}},"loader"),G$e={id:fhe,detector:F$e,loader:z$e},dhe=G$e;var The="info",Y$e=o(t=>/^\s*info/.test(t),"detector"),q$e=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(whe(),bhe));return{id:The,diagram:t}},"loader"),khe={id:The,detector:Y$e,loader:q$e};var Mhe="pie",sVe=o(t=>/^\s*pie/.test(t),"detector"),oVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Rhe(),Nhe));return{id:Mhe,diagram:t}},"loader"),Ihe={id:Mhe,detector:sVe,loader:oVe};var qhe="quadrantChart",SVe=o(t=>/^\s*quadrantChart/.test(t),"detector"),CVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Yhe(),Whe));return{id:qhe,diagram:t}},"loader"),AVe={id:qhe,detector:SVe,loader:CVe},Xhe=AVe;var wfe="xychart",UVe=o(t=>/^\s*xychart-beta/.test(t),"detector"),HVe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(bfe(),xfe));return{id:wfe,diagram:t}},"loader"),WVe={id:wfe,detector:UVe,loader:HVe},Tfe=WVe;var Ffe="requirement",xUe=o(t=>/^\s*requirement(Diagram)?/.test(t),"detector"),bUe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Bfe(),Pfe));return{id:Ffe,diagram:t}},"loader"),wUe={id:Ffe,detector:xUe,loader:bUe},zfe=wUe;var fde="sequence",EHe=o(t=>/^\s*sequenceDiagram/.test(t),"detector"),SHe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(hde(),ude));return{id:fde,diagram:t}},"loader"),CHe={id:fde,detector:EHe,loader:SHe},dde=CHe;var Cde="class",iWe=o((t,e)=>e?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t),"detector"),aWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Sde(),Ede));return{id:Cde,diagram:t}},"loader"),sWe={id:Cde,detector:iWe,loader:aWe},Ade=sWe;var Dde="classDiagram",lWe=o((t,e)=>/^\s*classDiagram/.test(t)&&e?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t),"detector"),cWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Lde(),_de));return{id:Dde,diagram:t}},"loader"),uWe={id:Dde,detector:lWe,loader:cWe},Nde=uWe;var T0e="state",aYe=o((t,e)=>e?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t),"detector"),sYe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(w0e(),b0e));return{id:T0e,diagram:t}},"loader"),oYe={id:T0e,detector:aYe,loader:sYe},k0e=oYe;var C0e="stateDiagram",cYe=o((t,e)=>!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&e?.state?.defaultRenderer==="dagre-wrapper"),"detector"),uYe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(S0e(),E0e));return{id:C0e,diagram:t}},"loader"),hYe={id:C0e,detector:cYe,loader:uYe},A0e=hYe;var U0e="journey",RYe=o(t=>/^\s*journey/.test(t),"detector"),MYe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(V0e(),$0e));return{id:U0e,diagram:t}},"loader"),IYe={id:U0e,detector:RYe,loader:MYe},H0e=IYe;ut();eh();ai();var OYe=o((t,e,r)=>{Y.debug(`rendering svg for syntax error +`);let n=Va(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"),xP={draw:OYe},W0e=xP;var PYe={db:{},renderer:xP,parser:{parse:o(()=>{},"parse")}},Y0e=PYe;var q0e="flowchart-elk",BYe=o((t,e={})=>/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&e?.flowchart?.defaultRenderer==="elk"?(e.layout="elk",!0):!1,"detector"),FYe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ET(),kT));return{id:q0e,diagram:t}},"loader"),zYe={id:q0e,detector:BYe,loader:FYe},X0e=zYe;var bpe="timeline",iqe=o(t=>/^\s*timeline/.test(t),"detector"),aqe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(xpe(),vpe));return{id:bpe,diagram:t}},"loader"),sqe={id:bpe,detector:iqe,loader:aqe},wpe=sqe;var z1e="mindmap",ptt=o(t=>/^\s*mindmap/.test(t),"detector"),mtt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(F1e(),B1e));return{id:z1e,diagram:t}},"loader"),gtt={id:z1e,detector:ptt,loader:mtt},G1e=gtt;var Z1e="kanban",Rtt=o(t=>/^\s*kanban/.test(t),"detector"),Mtt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Q1e(),K1e));return{id:Z1e,diagram:t}},"loader"),Itt={id:Z1e,detector:Rtt,loader:Mtt},J1e=Itt;var Rye="sankey",rrt=o(t=>/^\s*sankey-beta/.test(t),"detector"),nrt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Nye(),Dye));return{id:Rye,diagram:t}},"loader"),irt={id:Rye,detector:rrt,loader:nrt},Mye=irt;var Uye="packet",yrt=o(t=>/^\s*packet-beta/.test(t),"detector"),vrt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Vye(),$ye));return{id:Uye,diagram:t}},"loader"),Hye={id:Uye,detector:yrt,loader:vrt};var qve="block",znt=o(t=>/^\s*block-beta/.test(t),"detector"),Gnt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Yve(),Wve));return{id:qve,diagram:t}},"loader"),$nt={id:qve,detector:znt,loader:Gnt},Xve=$nt;var y2e="architecture",mit=o(t=>/^\s*architecture/.test(t),"detector"),git=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(g2e(),m2e));return{id:y2e,diagram:t}},"loader"),yit={id:y2e,detector:mit,loader:git},v2e=yit;Zf();Vt();var x2e=!1,z1=o(()=>{x2e||(x2e=!0,od("error",Y0e,t=>t.toLowerCase().trim()==="error"),od("---",{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("---")),Zb(UX,J1e,Nde,Ade,Sae,dhe,khe,Ihe,zfe,dde,X0e,jie,qie,G1e,wpe,Pue,A0e,k0e,H0e,Xhe,Mye,Hye,Tfe,Xve,v2e))},"addDiagrams");ut();Zf();Vt();var b2e=o(async()=>{Y.debug("Loading registered diagrams");let e=(await Promise.allSettled(Object.entries(Qf).map(async([r,{detector:n,loader:i}])=>{if(i)try{by(r)}catch{try{let{diagram:a,id:s}=await i();od(s,a,n)}catch(a){throw Y.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete Qf[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");ut();pr();var yS="comm",vS="rule",xS="decl";var w2e="@import";var T2e="@keyframes";var k2e="@layer";var vF=Math.abs,Pb=String.fromCharCode;function bS(t){return t.trim()}o(bS,"trim");function Bb(t,e,r){return t.replace(e,r)}o(Bb,"replace");function E2e(t,e,r){return t.indexOf(e,r)}o(E2e,"indexof");function sp(t,e){return t.charCodeAt(e)|0}o(sp,"charat");function Uf(t,e,r){return t.slice(e,r)}o(Uf,"substr");function Eo(t){return t.length}o(Eo,"strlen");function S2e(t){return t.length}o(S2e,"sizeof");function G1(t,e){return e.push(t),t}o(G1,"append");var wS=1,$1=1,C2e=0,pl=0,Ii=0,U1="";function TS(t,e,r,n,i,a,s,l){return{value:t,root:e,parent:r,type:n,props:i,children:a,line:wS,column:$1,length:s,return:"",siblings:l}}o(TS,"node");function A2e(){return Ii}o(A2e,"char");function _2e(){return Ii=pl>0?sp(U1,--pl):0,$1--,Ii===10&&($1=1,wS--),Ii}o(_2e,"prev");function ml(){return Ii=pl2||V1(Ii)>3?"":" "}o(N2e,"whitespace");function R2e(t,e){for(;--e&&ml()&&!(Ii<48||Ii>102||Ii>57&&Ii<65||Ii>70&&Ii<97););return kS(t,Fb()+(e<6&&ch()==32&&ml()==32))}o(R2e,"escaping");function xF(t){for(;ml();)switch(Ii){case t:return pl;case 34:case 39:t!==34&&t!==39&&xF(Ii);break;case 40:t===41&&xF(t);break;case 92:ml();break}return pl}o(xF,"delimiter");function M2e(t,e){for(;ml()&&t+Ii!==57;)if(t+Ii===84&&ch()===47)break;return"/*"+kS(e,pl-1)+"*"+Pb(t===47?t:ml())}o(M2e,"commenter");function I2e(t){for(;!V1(ch());)ml();return kS(t,pl)}o(I2e,"identifier");function B2e(t){return D2e(SS("",null,null,null,[""],t=L2e(t),0,[0],t))}o(B2e,"compile");function SS(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=ml()){case 40:if(g!=108&&sp(L,d-1)==58){E2e(L+=Bb(ES(b),"&","&\f"),"&\f",vF(h?l[h-1]:0))!=-1&&(x=-1);break}case 34:case 39:case 91:L+=ES(b);break;case 9:case 10:case 13:case 32:L+=N2e(g);break;case 92:L+=R2e(Fb()-1,7);continue;case 47:switch(ch()){case 42:case 47:G1(vit(M2e(ml(),Fb()),e,r,u),u),(V1(g||1)==5||V1(ch()||1)==5)&&Eo(L)&&Uf(L,-1,void 0)!==" "&&(L+=" ");break;default:L+="/"}break;case 123*y:l[h++]=Eo(L)*x;case 125*y:case 59:case 0:switch(b){case 0:case 125:v=0;case 59+f:x==-1&&(L=Bb(L,/\f/g,"")),m>0&&(Eo(L)-d||y===0&&g===47)&&G1(m>32?P2e(L+";",n,r,d-1,u):P2e(Bb(L," ","")+";",n,r,d-2,u),u);break;case 59:L+=";";default:if(G1(E=O2e(L,e,r,h,f,i,l,w,_=[],T=[],d,a),a),b===123)if(f===0)SS(L,e,E,E,_,a,d,l,T);else switch(p===99&&sp(L,3)===110?100:p){case 100:case 108:case 109:case 115:SS(t,E,E,n&&G1(O2e(t,E,E,0,0,i,l,w,i,_=[],d,T),T),i,T,d,l,n?_:T);break;default:SS(L,E,E,E,[""],T,0,l,T)}}h=f=m=0,y=x=1,w=L="",d=s;break;case 58:d=1+Eo(L),m=g;default:if(y<1){if(b==123)--y;else if(b==125&&y++==0&&_2e()==125)continue}switch(L+=Pb(b),b*y){case 38:x=f>0?1:(L+="\f",-1);break;case 44:l[h++]=(Eo(L)-1)*x,x=1;break;case 64:ch()===45&&(L+=ES(ml())),p=ch(),f=d=Eo(w=L+=I2e(Fb())),b++;break;case 45:g===45&&Eo(L)==2&&(y=0)}}return a}o(SS,"parse");function O2e(t,e,r,n,i,a,s,l,u,h,f,d){for(var p=i-1,m=i===0?a:[""],g=S2e(m),y=0,v=0,x=0;y0?m[b]+" "+w:Bb(w,/&\f/g,m[b])))&&(u[x++]=_);return TS(t,e,r,i===0?vS:l,u,h,f,d)}o(O2e,"ruleset");function vit(t,e,r,n){return TS(t,e,r,yS,Pb(A2e()),Uf(t,2,-2),0,n)}o(vit,"comment");function P2e(t,e,r,n,i){return TS(t,e,r,xS,Uf(t,0,n),Uf(t,n+1,-1),n,i)}o(P2e,"declaration");function CS(t,e){for(var r="",n=0;n{$2e.forEach(t=>{t()}),$2e=[]},"attachFunctions");ut();var U2e=o(t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");Qb();ew();function H2e(t){let e=t.match(Kb);if(!e)return{text:t,metadata:{}};let r=Sm(e[1],{schema:Em})??{};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(H2e,"extractFrontMatter");hr();var bit=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}=H2e(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"),Tit=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:LX(t),directive:e}},"processDirectives");function bF(t){let e=bit(t),r=wit(e),n=Tit(r.text),i=Ds(r.config,n.directive);return t=U2e(n.text),{code:t,title:r.title,config:i}}o(bF,"preprocessDiagram");JC();a4();hr();function W2e(t){let e=new TextEncoder().encode(t),r=Array.from(e,n=>String.fromCodePoint(n)).join("");return btoa(r)}o(W2e,"toBase64");var kit=5e4,Eit="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",Sit="sandbox",Cit="loose",Ait="http://www.w3.org/2000/svg",_it="http://www.w3.org/1999/xlink",Lit="http://www.w3.org/1999/xhtml",Dit="100%",Nit="100%",Rit="border:0;margin:0;",Mit="margin:0",Iit="allow-top-navigation-by-user-activation allow-popups",Oit='The "iframe" tag is not supported by your browser.',Pit=["foreignobject"],Bit=["dominant-baseline"];function K2e(t){let e=bF(t);return ly(),eG(e.config??{}),e}o(K2e,"processAndSetConfigs");async function Fit(t,e){z1();try{let{code:r,config:n}=K2e(t);return{diagramType:(await Q2e(r)).type,config:n}}catch(r){if(e?.suppressErrors)return!1;throw r}}o(Fit,"parse");var Y2e=o((t,e,r=[])=>` +.${t} ${e} { ${r.join(" !important; ")} !important; }`,"cssImportantStyles"),zit=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+=Y2e(l.id,u,l.styles)}),cr(l.textStyles)||(r+=Y2e(l.id,"tspan",(l?.textStyles||[]).map(u=>u.replace("color","fill"))))})}return r},"createCssStyles"),Git=o((t,e,r,n)=>{let i=zit(t,r),a=O$(e,i,t.themeVariables);return CS(B2e(`${n}{${a}}`),F2e)},"createUserStyles"),$it=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=Ma(n),n=n.replace(/
    /g,"
    "),n},"cleanUpSvgCode"),Vit=o((t="",e)=>{let r=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":Nit,n=W2e(`${t}`);return``},"putIntoIFrame"),q2e=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",Ait);return i&&s.attr("xmlns:xlink",i),s.append("g"),t},"appendDivSvgG");function X2e(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}o(X2e,"sandboxedIframe");var Uit=o((t,e,r,n)=>{t.getElementById(e)?.remove(),t.getElementById(r)?.remove(),t.getElementById(n)?.remove()},"removeExistingElements"),Hit=o(async function(t,e,r){z1();let n=K2e(e);e=n.code;let i=Cr();Y.debug(i),e.length>(i?.maxTextSize??kit)&&(e=Eit);let a="#"+t,s="i"+t,l="#"+s,u="d"+t,h="#"+u,f=o(()=>{let R=Ve(p?l:h).node();R&&"remove"in R&&R.remove()},"removeTempElements"),d=Ve("body"),p=i.securityLevel===Sit,m=i.securityLevel===Cit,g=i.fontFamily;if(r!==void 0){if(r&&(r.innerHTML=""),p){let k=X2e(Ve(r),s);d=Ve(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=Ve(r);q2e(d,t,u,`font-family: ${g}`,_it)}else{if(Uit(document,t,u,s),p){let k=X2e(Ve("body"),s);d=Ve(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=Ve("body");q2e(d,t,u)}let y,v;try{y=await H1.fromText(e,{title:n.title})}catch(k){if(i.suppressErrorRendering)throw f(),k;y=await H1.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=Git(i,b,T,a),L=document.createElement("style");L.innerHTML=E,w.insertBefore(L,_);try{await y.renderer.draw(e,t,_x,y)}catch(k){throw i.suppressErrorRendering?f():W0e.draw(e,t,_x),k}let S=d.select(`${h} svg`),A=y.db.getAccTitle?.(),I=y.db.getAccDescription?.();Yit(b,S,A,I),d.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",Lit);let D=d.select(h).node().innerHTML;if(Y.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),D=$it(D,p,xr(i.arrowMarkerAbsolute)),p){let k=d.select(h+" svg").node();D=Vit(D,k)}else m||(D=j2e.default.sanitize(D,{ADD_TAGS:Pit,ADD_ATTR:Bit}));if(V2e(),v)throw v;return f(),{diagramType:b,svg:D,bindFunctions:y.db.bindFunctions}},"render");function Wit(t={}){let e=Vn({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),Qz(e),e?.theme&&e.theme in Do?e.themeVariables=Do[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=Do.default.getThemeVariables(e.themeVariables));let r=typeof e=="object"?iC(e):aC();J1(r.logLevel),z1()}o(Wit,"initialize");var Q2e=o((t,e={})=>{let{code:r}=bF(t);return H1.fromText(r,e)},"getDiagramFromText");function Yit(t,e,r,n){z2e(e,t),G2e(e,r,n,e.attr("id"))}o(Yit,"addA11yInfo");var Hf=Object.freeze({render:Hit,parse:Fit,getDiagramFromText:Q2e,initialize:Wit,getConfig:Cr,setConfig:o4,getSiteConfig:aC,updateSiteConfig:Zz,reset:o(()=>{ly()},"reset"),globalReset:o(()=>{ly(ph)},"globalReset"),defaultConfig:ph});J1(Cr().logLevel);ly(Cr());Jv();hr();var qit=o((t,e,r)=>{Y.warn(t),s9(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"),Z2e=o(async function(t={querySelector:".mermaid"}){try{await Xit(t)}catch(e){if(s9(e)&&Y.error(e.str),uh.parseError&&uh.parseError(e),!t.suppressErrors)throw Y.error("Use the suppressErrors option to suppress these errors"),e}},"run"),Xit=o(async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){let n=Hf.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),Hf.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=jb(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 rxe(h,s,u);u.innerHTML=d,t&&await t(h),p&&p(u)}catch(d){qit(d,l,uh.parseError)}}if(l.length>0)throw l[0]},"runThrowsErrors"),J2e=o(function(t){Hf.initialize(t)},"initialize"),jit=o(async function(t,e,r){Y.warn("mermaid.init is deprecated. Please use run instead."),t&&J2e(t);let n={postRenderCallback:r,querySelector:".mermaid"};typeof e=="string"?n.querySelector=e:e&&(e instanceof HTMLElement?n.nodes=[e]:n.nodes=e),await Z2e(n)},"init"),Kit=o(async(t,{lazyLoad:e=!0}={})=>{z1(),Zb(...t),e===!1&&await b2e()},"registerExternalDiagrams"),exe=o(function(){if(uh.startOnLoad){let{startOnLoad:t}=Hf.getConfig();t&&uh.run().catch(e=>Y.error("Mermaid failed to initialize",e))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",exe,!1)}var Qit=o(function(t){uh.parseError=t},"setParseErrorHandler"),AS=[],wF=!1,txe=o(async()=>{if(!wF){for(wF=!0;AS.length>0;){let t=AS.shift();if(t)try{await t()}catch(e){Y.error("Error executing queue",e)}}wF=!1}},"executeQueue"),Zit=o(async(t,e)=>new Promise((r,n)=>{let i=o(()=>new Promise((a,s)=>{Hf.parse(t,e).then(l=>{a(l),r(l)},l=>{Y.error("Error parsing",l),uh.parseError?.(l),s(l),n(l)})}),"performCall");AS.push(i),txe().catch(n)}),"parse"),rxe=o((t,e,r)=>new Promise((n,i)=>{let a=o(()=>new Promise((s,l)=>{Hf.render(t,e,r).then(u=>{s(u),n(u)},u=>{Y.error("Error parsing",u),uh.parseError?.(u),l(u),i(u)})}),"performCall");AS.push(a),txe().catch(i)}),"render"),uh={startOnLoad:!0,mermaidAPI:Hf,parse:Zit,render:rxe,init:jit,run:Z2e,registerExternalDiagrams:Kit,registerLayoutLoaders:_D,initialize:J2e,parseError:void 0,contentLoaded:exe,setParseErrorHandler:Qit,detectType:mp,registerIconPacks:Xb},Jit=uh;return cxe(eat);})(); +/*! Check if previously processed */ +/*! + * Wait for document loaded before starting the execution + */ +/*! Bundled license information: + +dompurify/dist/purify.js: + (*! @license DOMPurify 3.1.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.6/LICENSE *) + +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/fileextensions.webp b/assets/fileextensions.webp new file mode 100644 index 0000000000000000000000000000000000000000..4db3b387e9b4586f15e1deaf7956c3ae5cba274e GIT binary patch literal 42402 zcmYg$1B_=&^Y+-@v2EMfv2EM7?HyyswrzXIwrv}~`S#xT{*y1MlaqAkobIlA>Uk=i zQj!!C%P0l{QWyQHpr*j70RsdC1oihR0tHF{0s1>asP%W&p%FM6n7SA=5d;Vmh@!Z2 zrvlrS)oWF#tDceIvi4kn@zeGwm*4N<0poq8n}Y1=>$K<7@7%xcP5qnUO1(L@=ezm^ z_;&4>Ap1K6aP`6THSxW(`2G6**j)ig|4z9^eoq1Tf4X0bzvO-cPVpal9r%R(l>lFW zgU`5*?>GPF+~cnkz})xRHwz&1Q2Z_Y2~lI`*>56uvA6l_`wQHk2@vx#alZuU1?0XH zZ0{7_ocr(jU-{>K-MvEryuacA_Q#_)->Z;$ke~A3fIj>hfc_W3oBW>tg?Oy~bZ@s` zroRQC`)g)>XT;C?oni0gh2eT zKNPp-f9;R@B=`>X$?+O@-+R7OBC!75^Bw)-_yu|^-o(=I9Y6r8SK}l7dUJ8}uyY}> z-#g;14DC@{r=+}@C^%~`0RbJ{UA8| zUjLr|s`lIXym)^(*MI(g(MR^D1x$P`eBPX|JncO11o#j7hy5Lz0jR%+KiR(!9QAB} zx%;(xL-|Gf%e_B*b9xa&L&6g2;#e=9Mir#y{8+Rz`|^Ip5h=z)F8!RM_2W`5ZYV#h zl~3ojY?85(V*lmy=RmeVpQy%2e86^spiafVCni@r6>b9J`9cd0*r8CNSdOL5Gw1_r z!3LJ#ca1P_qrCox7{AF~$sE)F8Dkx8@$QVPzV5LbRf)qHPGD^sEd7L?&nFQCX=9uu zo4RQ$zaLUCisoohMrFfBt^kyff;xWm!bYaz#XvM+vw0D2WSQCPLo+x@)_5P7yHTf+ z_s5{l&}7`7b!i|hNf-Z}GLZ1Ov3xyKzcYv$7EEyxTdA!5# zKZ%YnF}?k_Ki*)KPA{{8w;bY2pm}8_v}K9Hf*pT5urK(sc8+NoQ_WBuoc%E zmR`YgFz8atl%w7Y3xX6eqr^%CR*JCj);?O;Y?fMIs%#YrA}A5<18Qp?#6{q!n$`c% zE~*G}vl(kQ|9`HCKbPrUvz^HeAsk#9Dv+$`q-%e;4Z%#D<|AFwP2IHlh~h4kVF}7a z85qK1fuP#$LtvvD^*#JyJvkxfb%{*p;!ebA$RbfR5h*L@6T^5XY-VoJF4m-) zqPlinS_P+2gu6MtToxR`MFo9j!xH*9>~Iy~m|R-f1+lTdX(UtRe-`V4^s~gV0Q6aJ z1apVJp8knj;{8Us$Mp>4s|q3NbGBn8XQ|936$u!~b5_Dpm9+EJxw&l^wqy1}C&1*cOXKN@YTs-7Y7GHUgF-W7s2Oxb)ufvA<6A>Y9Wr zR)4SV;SHt9K2NS7xZtrBIRw1hQVxuRbz{CI{o}EWxAphP22KFIbS0!15|zo2{Brld zS@hm|Wks>MN}tH|6U%u+3LDto?1Xg(O25~^@e%rg;-7WcLpIEE_b;t{^3sCH{@Z*3 zle;=8KN9m5p`bnGhoVgY5oJCP4|d>Na+g?c%i(|NnfI-Mq3C@B4Jf_hw^dpxoy=j~ zU{&&$)T1a#IIQ)o37fs|`h3p|bKE~LBwqXRzt9dFC<-<^DqF%g{R^55F(T_jy`n4y z5V<0r%BnxSg_G08OT67I&o0tG(*TCQ z-Uu4Mws4EMtsW=*1zGt@=ReS9DgHONPQj!t4M{t0>7f<>yBjJC4@+~hjk#oiSj9NfQ4t$!#j2Glb$ zp}`5<%x17UfNVCjniPZVEX=6syPEd@8^KJGf#t52*P%ErILRf_UKn>&xg5{(GsCpp zfB$?6Yk1SJwXJGT?DIk?`=2XE(&!?AlLcgk{%G!ygt3f#nz8ElRZDUUa-)v&w*e(U*9Oz?oo{dMu1K7Plbz3sImaToYC z|GRW#45Qp3wiMmM;v?!xP~g$96>`Mb#Ovv!&k4CSHr)r-@%z{P1&m`Ua6QCwK>2<| zV<3}@mj4~}*Mn48Je67fBFdqUR zSJso<(3}_iGzMwOypK7uvfS+7L=f6w`mZ*JTHEF!Gl7jP%8cOQa0PIW?+zOR?c37Q zDs=A>=#t|LfFR^OOK-YewcaYSBF0=vzjyoO!K-4NO%*haEEM_KGt4wbGNnOX(?cq6 zByYCv`9urc=pcS93_5o=_&yg#fW{-Uv6L=_K>y1xep97Kp9&MgOhsx&MBl}v3-In4 zT*IzaEC~GPT}eGUrK zOtk(Fj(-`C>l?j9PWkc=YUdkxB>^C=l&AwxxxV!{42#$B!Z%nG zwAq0QT@;4Xb=Clbhas6$11oz+VKi*2|)ua?v>2!a0#bc&~o zS3+%&2F@}_s=QsLt%oa8@3I-Y>r**FIP5v8|MEZzTP>2I9U z88*Hp{^MCqfu zL{OlH5B?kB+BXQN=xBP+M#jch!Zm?@}|Fm|?V0%okrEBSGyFRprUiK8-W! zUnTe_(ed!PK|`4qAKF;{=DLFySi2A{7jDJ;`#jhy|FS4UOT--4zMog)g4DWmhdSvr zj9Me7_)#{wGvCIAs|;nVJ{L=;5zE|vO#6?RH(ktNPaL&NDMk|gLLh9x^dn*!?dLb? z9dy78k2h<-g`Y~L;lu0ua)QI44&!Vr`N?_6<~pH4!KD13qW@Dr1VehAM66D4-%D)r zK$XrodrV6su*ixQ81u3K4aMRRN6h^vlmBx5KmPq|l|VoMz|MAxLICR!OjxbD;2#O% zImr}W;dCuLslfb@a436~q0=y}Z}tJd9Oyx=(bZ#5I5=L-aa$EjkdrX3a-wp|ngrhs z6(Y{%vywPkf~Ngcen>I4i*hui)VHp!8WdV-0A9PhKZ!#EEjd(wQXH__-b)mXBb1=}*B+jW0bSe6uCL3knLg#I&Y6?=rZj>I zKiA=RB-O0Df5I5uqmFv$SZ2Jre;)Y<8YyBCqf7WX;ZW=>_lHk#&miZ0K~dZ9XDkHv zL7IENduwot*)qiQFCNA#yHVZiMT+vqK>`75mJ45S+U-$l`n4$wv1o^|c_O*8 zTNM;l6Yhq_hKZ3h>D!2Y4?-azYcU`h#7}&Iyiq_rwT?cI{7{3=%NnnIIY{wllSgb0{40S>j zR7Pr>!!8Y$`$cd7?*c|(=$8l{OKJZJo8Isq2N_zqLi;O4*Q$^Qr?c{`+zCeIT~cyN zOY6-$HLdDag2ADNnv6wJU8r38k`r~s57mWIyft#&8{Lb#EZTN{kKs#0cJ&mnqh|^; z9SjXWRoRP_uTf2{pE#&`YEKwlpP{DsYqDLzNUuXaC?!MBBT~g1`}dTX!LF-fOzQ+V zJvm+>70?xwz&{@%Tw5E>6o0;^B!^V(2v#Z7N?E1UzD>&Y%JB&Qrg^(J*x1~K6KFr- zU?}Lp2sA3-!aB7v z-RNYlx{D(m3uR8k@D-THohQk0VPg>7t+iaG%lp04!!~dYY_UG6hD1p8g~QzypKE`! zh1@CnA-u3Xne(oP*!zInRE-G0)uLE&?ufsx;@+K}j{=6-884aR6v#ZF8wxg#pSU2% z3=vuwD#a^K3yM{wKageH?3MKvL=~$QVFMP?RTA!SntKSW!;LbS{hD;lKkUpqGH6is z<15Jr2uwn>flaP~0ic?_dM4wCl?B1e=K2&@s&doL!!3_NuLQ78v7EhS?ug(U%67Tk zMgK0@hND4N4MN<^KnA#)ya!c%V@NbIW{qlq*h}#&8J`1*(r%w^gDFfs#2@t@(`}5l zD{irrTI7J#JdFdj<2^hDYh-*sA$VI^ z7@_O9oVifzH4O5m(o|Nsw}v~1(1r^N{!09a#H`dj5o5bFL3Ix{+T?^&-0^(DhIR!N zI!~CPgNZcCR?bCjV>{w};)9%V2&D#%5sJD+H4FUm>+JN_AgDeTm7Ln!au5&Xk^!l? zi4DE!Os$YDE4cVhl*8uHE7Tu(&C~p_F%h-0f#R`5TM2id)8Zkc;B4mpF-Auksn^Sj zGU>$_jkz`2Oxe+5W=EWlKTOq+KehS}jkDPuh4G`rB|{IB*E49R(SOAH?v)xpsoNi* z(sOg3oSxEp0heYMeJaz&%afW2K={*BR7+?>s_AErsu`>3%QgqG83&0FZ|{*t$$)Qy z=5Z>O6vZ1kyN;@C#|-67$%>;z#-8KaPTeTg5)x%Ra=&z%$<|DDkmR7d|Me?vcmm~} zRJ})xTu9#Llr3)?<-rFT3=?dWa)G_V5nuIoN9YCDE3-^3dlf(-4=B`WoyT-y9KnvS z4ey~N3L!K?_XWvYB4R?KwC^i*PH~FrpL=97o1Z~+Oo%Jwm=GKoldC+LzLMN>qXZnm zLP!`ahzV+#gC)!$XRnXLAO^QG5_^m`K*@r;kB!F;Oh}}FT2WbcG#l&RF$*L%XxYn_O$xh zxB!iI~G$D4s zBc=n?u5i2Vv-_Tl<}y3-O@DV+kYpLk6LlY%jSIpa@vU>YRX`9RBHUz+_X>|gbAGK~ zGKjN$8_723?z4f+%D*qIi&7kSD^fv?mC2X||I+6Vp!M|+G8crgAwM6EL0n7`JtJXJ z@GPU7jq8=Sk^%8gKa^3QZ7%4V}LS!rr4 z83h+7QDD8GG}Ufe?9rHXZ8E014kEAV%v>7oV6l_3kDscH1^?z}(eZo?lsY<;fdknb z`w^D;2m5S0T)eq5aEFs{V3%%O-M|OUekU zHT&2z7E1|=>n9nB-2m;&k;Z8Ax>{+HTSSyQqa$?D*Q0M%;;s6L2boJh(wMnIBOe@5 z_tRl+IvEu`Oi@Q_rrp|DpW#s#-Q;jDLg{x9(9d?61h}>YCQo%ZNm>MK3y3fm)WtLe z-)T%*kJEQuzRMpP&J)O7&R}#**-cdF=$!-EMnJTN7#4|!ty=&=KlTgaZ=)9P9ERTs zR;xhoVWv*?0j0LpSdRQ~J{@DU=2AS#82}bKm)s#~1=!TWvEhpf4=8%fr@<*(7 zhqNn!?r_-+n2~WZ>q0rJ`CeEf2lRu#606xYK!1=s3M~kDzUMZh?!W!2C}V}bvqV9+ zTQ$+YicMJ-kTx5imFG)hiv;H+t3eWwI&SK7&SewDsOINYsx|=>fKxy?dWxaRadqUT zX@TARKs0MenRrq#vr>NFeYV=vpMC_g1L?q$s*P0$FXv)@VxFqHm=C^r#yauNUT0}K-ibWhR7hBP0W(cJN(0!F^dgfba1F`rpy$zmx7VT3)Uq<3r z)snFfQEb_XGZ1tIf~)aV7$UD%UZug0rQ=%t7HBvVT<$P8gZX=>dg(e?EjBc?jxGai z-g=OA8ZMY={)k)${9<)il5_rcEf;&R<*=u@rC8?Ic87A5ESc4PXEpBgc>R0jLZnx= zDbE$_TE}P3@HTV65SUAL_{6!L%j3Zf-_VdiR~nKYk!tv*mJEa}!4D}~{}5o+N^7*S zCL}9HY%7z(XYtC(?{qlVEetP|c>V#|v$omnLwR*2TF8l5=?)*$Z8Rv&Q|u(o-iXv6 zdzp2XJY&xYPK7_xAMbiW%7Z>2ENa`&l$$#>e*v-gdW6*Nmufll@)kp$IL3Ej6Pzf+%bg@rTb|S@F1zV|%(+DMO=pI?QM_;`C3y45K~oI7##4uxq$M zY3k6cL*fIY>xszQ5sHEL0)`1li=(WzY$%2K2XWwpCEP}xGc=e(ET40%{v$4AD@iMU zjgAEU7yJOUdE;HCDr=RIf)@5=EeLqtD^xb-1SeK8j>mum@Nsrmf(%UB9YIPar5q$p zIswR&gZVKgd;&K!wUovy86=R>;XF!0BC1}{f=l}$m$-)BkCur|gr8yQg=J+lI>#aj zJAdN#>rljc!uik;bzJx>G^Rc29E#)vUgtOIgnxEXgfoK@n+8Q7b(-!%rOkv_9qwW~mXgQK;?h64ufuz4)!`j!RTnHW zIOJMGQnS*VzZ^pgLiK{b0NLIr(v5T330XDvL3Z}QWeeKJi6{^AZ>mX9I#tV!Wfbd7 zglvH$5frwI3(%y34}=Hcpq}Laj%TcR^f0oo%*Z#P_E0ukP!kVjq8w;i85~*$l#bO(p(Hr_3u zflPiK6mU1(vhXUs<&Cs5ZWPRs*~}{M*4KpzrgyW5NWi@^9O!0M9KfKf_!f(?&R~+51{Z>ey3+&hpXlaJdEH!&kC(qKtG8jR#d5^r5krdSTv}X^ zCGpic=1hAKAyxV`38|h!@4PGA=Y-{3@sCSN24Konu^Hj@_t>Hher?V$t!07i#{rHe zv@fIa>Q(oA;&|bxIZj_#_#?%QgU{Sao&Rh{VEU}q*(nxZM0KhWe}Phz5{;mef^k=;YqYAQ3x&*#B8bd$^;eAt>pob0N~0x(muzWPR+y{LSaE9M zlw5b!f4?p=_Lg0ec*B?nxtv-hSV3xg=!(S%!?MfOMjaJbud#<``In&bpwfORp2Z5}Jb)8Gq?0R~C$PW(fsO%tRIAaZ1>`1)Uv*k+}JoO z+mx^?AG~o<*N~aVjF;gU&7mmyI0;*8`@rK*#fiTty~_KBWC=2&wVGXY}n`=^Eeth?b3^icwgH+W~S|972d zE%Bc-7j+F<9}A{GxKA~%=(R8>4bJr*;iet( zaPg5B62#v&x8VfCaxot-tw&tHMaXbKxDN@Mj%2iBc#(MG;S@pfNbA6f{fY$rk@h<7 z!nJsis@ELlk0xBakMJ6+1?tY0PwiuyF4(wlt(KYk8IsIL{021N)jUMT#1W4vdv*GEU!A2^TuF8u_+0c>6Xd?}Q z;EilYZd+a5y(3~sl}ORombR{mMa?e{FcbT*gSxXV3Bpd(&3q5hC8QQZ`%VBq{(fe# z`#?RqRxR?97gNUR0fjgq3NiI}7?_?gl#Aw4R0x}}Y%DNC%bp(Z3$fPl2iHk@P=u#$ zy4s8y^a;c3B46J;&Xiu$A2Tj8-72+4Ywd&gh3uB=(!DA_ zWUrO0HBDZz%g<`tuNM@)I)cjkjnOTW`l@pw@d|+OKo*dVgJH1tviSx30O9ahHzp(q zF~v{BDltUyj3O^|LfoVA=HFZgp07a|evyoyv{K85kPc^YI+;bI7jXxOsDqK^N1*S( z)ot2uZU^YolHlV)1*b-kr!}zB&5B$cu}F(Sw$Fw5#t-ocMgDjnO9;DrT*^E#w_>W@ z?nk6bLT3pot#lx6F!=pQvikEy-`JwtW!y}rnMsNMN~{1Y_dDW^T~I8f{Y}dCP6j9j z{d*p6-G+Bg4Al->Zw~#0^IYr2U_7*HHtfYY?vR@yQ6^yZG#pwuz9IV|!YOi8m&ZWd zP5byvvtg^iWT(_&&ri-Q?h_WrqJm5hC}=!=@!VgP4%?r9IM|JW`omVa*?c_$jzp6s z1!;m&e`E%Z&$#KKiYba>)~t3&!uS~3wtnVdL?f>bL`ze`{xR+kRv#Pg1d+)!^B-4t zRurG`QJ8nRmEFq}0){jzYsAixjliF7#9izpPz5$e`wgl*PnzYBy{F3ruVv?Ipjo=O zr>8wTkHLZ7*jV$U8a|jcy5>(G_|<}r8bg;DM>Dm$5YGPI@6$p{0Z%wP#!nsPD?NEc z&47^6B7aLP%*wq}XdRU_JNyaO6dxIoWexn0@$m5yPAth%m!G@&>vs^7*z1bfh`^pJ!gjrTMm-Efutkq3 z`u#LeM?OSqFsgb|F{6q=ln4-|HBU6^D_&wgDu``Y$8%tEd!#>A*?%8niez<6KeHQR zq0jG(+rEH1TUh3}C-7ZW$LU?oKY#IX)3i2Vb8*HW(hAI=mUMGo#!nj882w@@h2QwO z;GM|yI+2=ui9aZ-Nu`-zRJZe6;RZj;kLoQyX649q4#~|RTX*hSq$F{nPOo{_XLFd` zN8ktFs!WQpMWOPqPoA0q=?yp1iM0whi7rM-pxqVfDv6+G07H->N|IA#-n^m#N&9G( zeNFGrHKAP#y51c}_^)l9Jw+ltTkuD!%s`-(*yw;KDtHhYhq-bHey08ACp0=0KLUIb zS|_#SAmG}+lZDzlws18v3aw=jyi;?zTFu&%C9<@xxus>pYx~+9~GC9VxDKJ*glaXjSemiM|3N zP8yNxuaO>?Vucc5X~X!6BwK51S`?*sxk1ko`^kRqaHnF7u8a~@Q|cJcS9M5UfZz>^ z>1!cSTTCugrd8TtChs=~#bml}kxKbaIbj!(@#O7b9OvH~@(yAo=C0lp4#J0L^Ok*` zj*&lvBkKMZy(0JB$VI9)BBOU0Gtka9H{XN8=$7{U{N^}j}&-`7*Uv(A{%7i34T?Ppxz0aBdkxo#E#9{Vl3pJck}YH zT86O}5424Gh!B?Pj7HO7-ay(&_Im|I&R_%vQ^gC6Mw^=<7IKj?rQrip%JMb0km zt`C`VJ4N7*lwLK8-#OJP{0Ejn-NPtS!*v>-TOf`2H3^=-; ztFUpNpZ~m;@|X3dc~BF&i>F|YqiFRo(F7OT)N*OVqIrrdd@jk zyu9L3isn+@(j~i~>uIsob6)&K25Mf+oNkcLb`{lw%YG%@Pz8<)x~)b(;DRd=9B+Vm z^t#BnFlH=4JG-$O9p>ozn~Y@V1@os*s~Eu040`KnzL)r4HVaLf(M=3S*o>Q#6v1R# z;^UiV3PJg|#~{UtTPsW$t+l@c_t~(ZG(h$UABmi@spysne*T(Nyb_S}_()L|_O0aa z^gsJvpqzS{^P>)$NxI>=Bch>WMfq;IworkW=UgFtRVLjno@lxS4Xs|MXbL6gkNR3&IlHm>vDW|P6jo(vqqCb$J9oJk} zoMv^-jbR>B8WIvb&Q4v2D7H7Z*q+eik}tx+7-i*cm=GCUfzJG90LQRottNX-Bz{%n zer#2`5JJu8O+EyTlAF8g0&}5hYfQLP-1P$EBq&*>6ZzO_qY94yeon^0vshW8_27HI`G_ShP)_C&`GdW36FOi0M!9nebPf0aOjZ= z+`jJNC0O|I21HadsY$2S3DBX45O)ZEl}))51+BENA`9gy>ix22#W=}60A1$FD?oEE z$CYzn=QJg#@St)ySYgDB5d1KrF*`~1*Sy7=EiSo|4tFNWepOi#qxL%0YOZm7)N2Hb zOOgAC%>zGOX_?K&@em4_sF$hIVQSe+B=PGCwd_R{xbP<_qs#oAKM)++yXRPo-FAs4 z@Quuw4_X7s&BrzvFL~Fic5H+L>snQbELazIbg(1eZYK|Q3>|MKD1nRcF z1xdlp=of|02RprtWWKYZzGy%XdW7U1C`my>zjO5yRp0(cf`=!Ht?aMgtRx9Jlzt-# zjir?G%cD-o$T;-RK-Uc8xYYhW!P_yABvF74}0>=niIyPR&Nno2GMKbdpjYaK{8J;G_Va6ZnP z12_pHUP(n*wSezC4YRnpL#C_RBmqXyt}Z$%*@IrUPt;UpP!NM3=8XGD&!DnyThxnF zLBe=E+FG1u>4a+$`S)axgdfuazT1#3o{^d0i3s8ZD7j+K1Y4F<-8}N=_PP{KhGVhn z87e%fgY%S1(B=r)A5a92ibw{^eEo`~9H9;Y*~XhYoB?Zzr{9LA-Xd%4>kYMs*#c3j ziv{P|ctF%-<__B|cMeGFt#?+I`Sp}l0&VXB72IZ!urn4EgnxH7O@m@>?XDn2gLutp z00e~EWft#lBu&c}&7pE2^uZUUzjW1B9lBK}EMus8PAuqOdQ|6`B{>*A3SK1V`uh1Q zAh@aMR$Pv`rK3JQezOxFzwHd0o0~(p6+u&W9v_6m_Hw>NJdSOAG1*Z(o!Wv#5qK*S zENtQS#fNy}d98*`fX#gvLI;TE9O`MD(Vl~${;+5h&JIGmT{j*76y@GIR=lnO#6Wkj zicaI=+p3L%ti%HRQN)#_R8UHgQP7*g=mv<|%NNrpS+v&=eM^3xI92qd*Q#V|11C(| z+I!8tPTIvDzE{zKVQve(mmNrKpgWfnt|$**Etb~BlCaDlYtofmz%@6zCr|Du%ik#%E0g6cM>LED{nF!-WSogoCIE;^3J2Q2 zr1A`B{i+`?(122SP%u|f42d0S_+SeNoZ9QQxm~|Cot=DH1p-8b!Mrdge+G;NIr&)1M9L!i-vVzZBJh>)cxt_?I01s;e#&di)A-jH^_q4e@l8Z z@AajX#c|2d;e3tq$4k&E{2f-UZqgF=h)PoOgQ60$IG`N%F>d9dW^AVxUdU6wR{?n| ztiYxz`+oe}S2wZV6M>v>#(FBl)e9r0>w$9``?@kFT?I(U6qUhs??Ivl<5+$0r7IC< zqLjAwcUV%n0fW^0n&Isa*tMiS4oMj%#$oqpszx_*lzQT91-qw#N)AL%e2oxl1ACu} zB-&Cq88nm^HEMX(Z{K=?*-m-MtXe><{d}9%In4axI~Y3J`Ul3h;t6F&PRewC5d2LE zlQzl7HgsQ2uHN+tYqWpe-ty6C&vuR*Ug7S+yNfMCLy0%Ard$J|NG z`TMPZPkkg~do|fkA194YJ7sMBR{emz@mqEB?vFuU-~->ZjS|FRBGL{T9xW)N?|A|Y zmCMt-iTn7%z=>8%U$+!eQuyq0+f@9=!c#G(3RtX2o>vnYWPsDm*=1U>?CI! z(9Q@wBVzovC5hFlh*%@A;stXyZf>p0(#y>1-*|+Rn%t`7>H zUpgVOSPbmsVPSJs9r(Vd#kFT;$#6oMF-@TdS<5X%3-vB3%!{9E&si<43HmhQT*d9w zvO*N90-G0;jH^X{9J2ZBYD!g=<30cG{wT1>hn$BujJXSdu)MaxG@o#&C>HMJ(a^?- z*LEm8ca31U*euzHZ!11^O|9Bt&pV8C9vSLnscdx!&^YSus|x;EnA_?b`o$@SDl1L; z#?VVm&(K>(Yn*c8b{keD+lg_;h@M$FEp~?l7pEzv^HuVj#?4CKl?qdj&|ZpY zvJjGaL-Z>dY6npKSVq~!nU^^PfP@TapOkFkr-X0=qN-Q1IT@qR_o}a6?K6IuCmOyI zwn{O8Jqj4RP<(s8n|+iLB}Z@%6i30Gr!r9S#_{GF80cp>(=>cJEn`bCs+rcODfd+O zk0G1SAL9jFCUYGvB&s;b$=dz2RZxM14aU{T;y~lOAbD^la=*0$>>ulod0tr@JsJU0 zMvUvl9lLn?LMoyp`g)@?#G;qEaU*4fnepWL%iL2x0hV3UFTxiufKx7b9eVUA)2fg8 zARWxi%*3(Z`n_zO#|ZCxik1-TG8HhFQq}kG%-CHt{AFQfVv;5f{d=)pu9YG)vyZrIG5^ubiWvdgQL}O>@KtGOLBVS zK_~f(M;NNv-m`)Q(fIS0IhZ{~6?C&67Muf~07KE*vVx3L87f)iEy#MfxL~l|)4>a@ ztG%n7by%Ouv99E+HeRfzAVxDbP-PQF6CR2NW+YguRq0=nacH%4YLmUx+!I_VEm;@s za#i1^eB{+aPStj15Db)8ZHqKy)@ipvyLL*1x>C_u1!Kp>>CA+%>iBe6^TT<h%x~f&j4bQdoqyX#O64s^mc5k*?>~Cjtg4^c zrgUBBvbE=|u*>w`G*S1*_zIIFn}w9T+lp_%TBubYayQzco`Zg`ZZG!{myub*S?F*j z(WN16$OrUg<0qx>m}AOmec7fl1KT9!?epRXwo{t8(yaM9l?Q|YVVXW*H`J9j8Y2Jk z;naP0IU6mV&l7jY_0j(A^+c;fmBdmuf;9J%iDen~Da1kM$_tb{w`@JJ#CH4`z=E~Q z*kmujE#j|Z9V9K~V-w%T*$xmsG+94s1vhjzN(-`Sz@;!dQf1tb+Ugic;@Ps< z^AIT6YQd&_wMrhc`E2T=uyb!Bx_LCA8A$!ak0E#H9p@bAb_DF;8zGg^iITurain}ddBLw2Bh56xo_USdI!*acf9cD3Ot0uaeOEl)JoQ{caMBZ73v5E1Ku zmk96RYN=dPsP`FvChQKStHnNKvOAptMdZOVeOU?*4~Ofa6NIjP!_tdML|RoBbMEhv zH%JTT?v6=B{%J8U$e${qUMNTz9|6`je^6U=?JPmra*t#7)d(ndw_ZOz(DigX}9#dc5v4w6gmd>+)eo zff^+ucl_JVIx98_Q%COe>7Fo))Nt+NxtjzR=NVH@uXo35_Z^R{nxoRglpjJkJ~Ds| zk>$#8mPnIjzt3mMMYoY*_qDf>&~N9B>{k0>XM@a;tsUu22-ekiDB4B~D3gns>9b>0 z1O$gqI4Qkr2eHnqT1i{39VsnfggG5r#E+X1*1`2eoe{(nM0MT4GTaZ`Sd*pouKG{E z3@j>pGEqAU26sOPIP%g(x~;IwV)@5AMeA(4vzWNmcYRoxfG1>>IaMZ`Z7sOkah?v& zBU2?AjFnlrvp%34h5*&A+^wAsTx@+yAcfvWvMWpR5-(Ct+p!`+GdR|=fG>R0XsP^R z$YzFsEIh6FjZVb9H@szILYy-Ukq40YaZnMeQQ9I$*prW|+{&JHz{5k0R|rN}J~(%`q+RGhdH-T$eI0T z8-jSK&rWROt}2&vN=Zjcb+&Vi90^wC71SsSW)=(E7_y^hHGo_7@N*cLlAE`Z#FUK2rDvQ%^T&gBst{ z0rbKoz3N(&<>YQz$vk4++16|p?5#Nw)@EY09nF%7%5n4Q299HHMP71c9%UIONk{jWhtZUb?n+txLA&R8~8W#Qhq7KI`^0bdFYz96le>9<>hI* z6lJ47lR$TOPKSA+gxYcY5AH< z1)^{``^`m%Qn~~ZAC7J&+I34&<~Ki&S?~b)9+GubIAvB0WJVcF6%TYxF+1?pStGY# zqS~1K<)jnw8Qu%DItyoza8c!34H-RpSDjbhhMrxFgw-JYSyEXpQ^k1#ox{q63L7Za zY4?hlt)5UdCC^^dwT(X_`S(XG(0XVE#Wq9Sbuhg>KHx@~^C6OP3~hq#VzF2sHWbis z;;^UUp;&92;U5X#y60YtVhkWWIHXBLw`&{q8^A@WwI(>`ML!6hcQa;RUl}>_xr1;6 zN+`pqPv`7z@heXJ4BExTz*1tIRywFpXA7@RQ3~msv`QvF) zm&8^YSD_|0HJ)!XMKy2tJ7YKCON!tJ&zggu$k3<-x8`~vU?AB zFF0i*3jJ@_^$Ht(hNUt z%IKI=DRM3$&z|JV&hCL@{hm3Y0V4U2~#$~+N)H%=P-O{a2!z0jn}qw- z?#JP9T5QC)z+*3rVW*e2pGAW8D{wyvb@yR96suz~bRzmd8JBm@!gCZI9HF^I&SXg| z+sOhQZayzj!{5c5GN2fbJTQjkg|vd2 z1flt!Zie5tcA(`>rh){XOc=&aV>RyCn zScx(|3U{s9THMa@E3pH-L8qDCB?Na}+#r2*$hRX)r6I5nzJJfQ5Idt8}pg+lyQ-d3d5O@Dr-$vmf{C(N8s?lPc-gF#yx9j}H1tbAyZz5vPK1FDYW6}|f zL4|};?W@T6m+otnZEC74q0mYma^Xbwr$(C?POxxnAo;$+qS*maSwahU(ko{s;E@EpozNqInm%W z)Gt(#wr4KX>NXtZ1eJDAl%E688xoOewJ?p;jX>{jwJ8b9uYa**oh@}%z3zbe(W_$OMCed`HPYP zTnz&`n_m#_T&(R;R5s}s4 zGQ}k+L5XyOQ4L}QlEDDA*&mOi5g~P+n``;esKx8o*cSGlkpk*$29bXj20=H|5O3hzURNt{r;Iqnp`#?Vv{9pEdv`A)h}#| zPPhoeSlFg7fl#rIWq$CBZ>w_$auLxQtkg`sBO~EnIcXy~*jS};IGufVhYA8Eu@!X72_Z)>|UG#%uiQ>&6G;Ak*VnKGG&hvCImi9 z^(O5JcD1Z0CWev{V6-K1F^-YtP&*v%PKsALG^G<#8pbv+NQxW3jKfEQ2XaA9di>wL zNv|xS&l^;@@1l}d5)Pp{(r!dmERH|wxjF10y?JY(4aEmbK~%f(PyvMDuNG&h!u1uz zUcY?_17cMCJJ_>7ixdk-&oVfLha8>cSWeVAx#z16Mc<`s<8Il&g1h@ExW&5I0{o^* zwy<9S@jzQ{Akj=_pc<);tTh6?A-pq{v(~?s;(xVa)S`!iIwDqNGUM~QsTc@!^%vyBa@rmG;}*vUJ0 zX^>^(0-3N1a(PMSh8tHZN~yS=qN`AxGeUgHdQ35 z_$OWo)lpkdI^qLzO8J60c?wG*gqkoU2PO)`N`@1wAJLW4a4?>8{M zplx<6S|Ir&hScVG?c#In)q{evA3GNPo8JB|pKcAemfuj%sN6RW7sPHCm2<|3U#F@F z)TdCG+=hQkN_9&d_>sqJjHV6Ui!~;Y&oD8rdQR61kLGlfYB!7M(WMj-Q>bw!Y_y9! zr|EzRQD&i{IGru{CrZ}-ZQG`zc?%94wYq$_{jQ~@DC&bo)ZbvN$>zCv>T779bs8lX?V)RG)9EUfF8bF z>}U|i=2lrB zvg9vEo!M$K@VCXTBBXP)I^#l@Agj~;A0^mIGP=Q0%-%o6HKj)N0-$tGF{;cgdQaXF z1moRDm3jLxURV4nlAq@wL{d=&;_}Ml2(kqYDZ-dXz9pb_Hv?xniE#DP;<;+SO3)8f7VAcDQE5Fm65uYC-`Mql(i_Ht_(>_*^H2JU3>wGq z>WYx4EJbkM(>-6{=@{$Dywa!kqH%ii#Jg{rgs7K^i||ic+!BIiR)}roOyE#W5ca zK>`|lrU8O)758ceoXqUcXK_{N30i=z23MF!a&F38VSSS0l?btL-SNR(?IKohJYor$ zCHpl(zNJVNGWQW(e;e@rVJVrf@WZGd!M!%1b&&^!=Y3Kj#wEA<`5@R8)Ki*9@P#)R zDOZcLzRVTMbL`e61qk}pW#Ug_Tk~vU*JnOv{EI>;Vz4!g#p!^~!F~?Icss)eHoNK&4J$^+ zl%O)NFXyn^lUX8=MxopiX-MXxBtPT=T-^8$N2&xyqQq4MA^DrVgW^td^OeI#D?Z~} zfldnrJtU1+f>*56!4gUZzFjSDQQ5C~^}ATewDZ zj~Yf>-MoFmfX|eO@A`(8eyr=psKLHr!GPd?vMQ){))kl`%SPra9!chsMkLc^famH zR4D9~Bp*LI@q;$+7q;<%kyxY}0?XI^PHh{ZF>e7)7i;jeTtsRlyTf+AqFvxuc7CGB z_KRI3B+y{|X=Zb3Ks-k=JE7@MNP>9XWJ^jH8L8^ba z=$~KManA% z4fi~;IEuq!%&_mjGO7Nggd7L7RzbBtfyVp;;jS445uiu_yB?4Tfp7=%Td?yQbVPWQ zqUmR#C^o^&X9%ql>T{OSm_M-kiN4H@=2bo?yOfO>ud&Y98tKAK5{-;uCpc>#uUuqx z?6Yh7SuS3fo9zhAHDMb*#70MRB#a<hoeGEX2K6*Mw+A- z9Qw9(XOh%!3!#dF4{JTCljMofyCUPdm)U*ByPe&5v)E6VRhHMy1ezy*`3QJu8-+Sw z5^eY=Ht&B_7T}D2@eNej&aXSTuI;X>&w+A=S+$wAXbbTGIY%#_J9wUDseJfc0+k6D zUlGKPKFtqyydn1}*G8!PW7}3Nq*KmXx=E3nd=fK&+jO`5L)K054~msXO}ElIt&o`J za56zf)~Z>q1PhO)`{EHDMRGrKe$5^ccHhP5mK6cq55_of-VFOt57O{}r`Oaj%I=iu zj*P8rWRkto_givHGa1`BJ_fNkPlGn8GEIY|jm*|`C2@e-ca%c^F3t?WyhP-&3iSir z6Q%m_vA3q*k8iRua%HbrS`|@U6>dZlBmXp3`PcW|@)af$@`P-q6L?e~hCYFPUj;~o zCwYp3`~~n99oFi7p4wm3IAV7tn57P%7?viof6IsU<5^c$&}j#9kro#YnXb4td%m2(??m z`RY_7EPJb!6e+qFbzy2KL2}bS%?zOZlM^cOkRVRHjd9b+0HG|O@k;XiEV3g=P-Uk6 zi^;9)%rOT2)Q#gi7Z)hj#2@R(9gD~_B2Qv~!ds38jdQgNGVwMXhy zLukD_T-$uczf2_ox~;-(siAy9O7SJ0r7k@8fOyb1zkdql=IpxKv*yqMimNy>-FYKM zn1_qFKHCf}t=AkROkIrN@2MF6FL#cv*?#e~okzxSM}pon2`ayD0)qjMR`)yKUCMB0 zMG6oPH|DI*#}s^jKz(xexnMM55rdJL)Q^0K}o{Qim9%CAL=Ot0M&1qL`O+4s7uRBeGC~5p}_U< z=10aFQbAiCD)uIV1G= z40EYeA+S0ZL4kNye6S@*$+mzxL3+SJ#+jza)GEW(vLzfg{glQJUX30%A?z2Yj9v3hRj~j_W^ATH?=rlY?A)T_0 zj(2n@W|H=#(yW2Sv>ig@;&n?y+CEL5=CqHgIQ~L5T_b3BCdz{AM7(h2V;K2^D(A8% z3gbAw4~*by5gnK3apfqM>^!0oCW3(U0+A>9R9h_(+nMNPHU({)dtp&%Fg}&W&Vc@( zoNiUDTX!#&Xq5lYSBgA22AC3OaFff<9Pi^Mv#$&Q5u{g4M zW?EWZ!CPEuY*zc2PBJ=)$Lq7br(9N#$P9j~6&S9r6#s|iuumA8QWByhvKdh!_S>2mJ znOd$PZ4rM4Qx#_9ZfxpB{@HFhcuE4#y&Ju?6ij3*XGt9!EwkwAm|f4Fz)J!#sBwyv z+KA&&Ss_G;VhQy#D|ZnEZaN`y{q_2mD4Rj2bI`L%3-0R{`%=Q?e4@b+bilC8;uGa6 z%sIB@SC~hmg`udKuXtR^GcHK%?~@`258&F*Kl%gcj9EEp9y)$sNW}#|hE#t#)V(9D zZ};xY=ZKoe)Rx(*L@s?Oxsa&ibIqg30ks&~Of;~qhk?s7(#b|GQXGKKfGru@DhBS_ z*j%=Cjk7KMY&jdF^u5)#$9a_^D1P@=ncjfY6=4g?I)NK5{(HxeXV4n zJ3K!MMp!{kkv!mdH9P>KGokyNDSZw*uI3cNNZ}e|Pk`Xei`cH_PqWc+Byu7nLp0vE zm8!#AunS>9#S3{?dA5L}(-efI_+QFcVaB%xqOu;5-rYgBl=NR>KW!ur|La*Qa#h=J zFZoxxX?;ydYeV&Dy;QTI|0b=`vY>f>)9tJ_?Shh?>lXj3ZSyg%Xs`+psazN%MJ(m& zK%j$BdhD>KKrefc6_dC><=*;oN^C1Gk8Dhz|B4bt$bUAYz3+lhim$QSwnng5Ag;;; zq85X?fTxCpY#+wI4ccr9p@jV^%Fybmh5kOg%#<3|B&l+aHUe9Yu!24MCU@v9EgR@j z7oXRc{CMn>>&;;x%0wepmn?asn&#+G%0u{Z%W*?kKRi_Ba^LG6j0~-g>(WJd5Tf1@ zSNg+cQ%~lDhup3xB{KI_K9$;b1c&~PH&2O*K}**HVO`EPC7N*RGp>B=hKD0bFFQ7+ zksrI<6Q_}53;Kxs9LN?%hH=_Dl3d zgdNk0pg@&6gk)FBFl3iK7W*+`+NzUrrtc}+1G5<<*S=Eyj*pR~BpWgF!dFPswyKaM z_;H;Q9SuAxx6f#HM}#AJsuv*g+v@LfJ!@if#u5amG%bvk5wPbp7>CN2-ob{y{RilW zc-y7wb<7}v$JjYO@ey8;d1Vt6Z%pxX=WYzF@@ zt*V7Vi<1I9lJ~RLlv4AWKMAMTs{E7|Dt^G=aL7PUEiqWH;YdJ3a{=kj2lKU-vW$aS znp;ycTbE4Oyh{eqQ$WjGe_wVH2@8v!4WJ`hu9IX49Uh%pi9D_u1V&1jL*Q)gyaLhv za3&=W*;F5>mMv>|b7^m7^Y(N;R>rt+1bm7HO7uaZ=Z|p+HkSS<>8${W7P+F#lkRw( zF(N5o$*t7e+8uVhfUaLqmQ@Iye2z~#<~bcvOB^!5bAi>v@@#QImSBY8v-Yg!TqKwW z{H#t~GL5VvZZl<mdh8In5*e!RXu^->oP~`#VBw)xZL2x+N?q`9V z5KK8xcWn}=*tKXoc)~scfgu@3(nGo0d@#7f2rx3B5(p(Ig~81CNrFd?P}p=z&InNm zGPC?AIhm__W#a^NCHg?BTN#!Q5nUM)Lydx^HG0cIYBZg^CC_&c6db-aO&6JrvFVa6 z!CTVx(-m+ilfj=a)u(AuvjWX5v`=#GlmGakfkXWm6+K;h^&MBzQ(}+SK;S5dL-N!+ z=7$P0)4~VRb$@S5=J~&eH+k(m@k(O+2el;4?oO_qsTc?4{wvo4*#Wwi_S#scTs*3l zh4Ncd+Zi8ctU$H^PZ^Z0VVEyK+rAy5IiVo&3dXWCZOd6Olp}5$}bk{IM{4x z&X#}&d%Q(?26>84~l1ZXaki^SO zDuwOO)IFs5N3ITE)D+rkVX5us%$E3%O?eqAyl>`!faf-=w^Bjyb^#njKDi@Cg%kU4 z(bI4F6%&|Bpd6-SGba4;e@dMKmA9&LZ$E29%zb~nU%v?gW8f+SgdzB4psoMWKWbZ& z-Q4>xMUXU5_BE?ii(|xD_}xy55W8C~^Ot@m2`#=2=4j_3g^C8gZm})t@ci_m(x4DS zI&f%Wcbq=nMY-b@dAtF?s;(;n4b?4#*IbVvWAPwjC?EwJB~L&EjTb>_AI0BM#D~xa zAL3e{PTn*VPa@6&8p2RnDZRN7<=}BAsLgC)4woeBC%Z#Z1VbrORhxTnDn)O)A$)K_ zJW%NDoRG8eVfYZD2C5;`Jf_!N%~2ImGUOL|uV#3c2>`vIxV|yBqPui@1$Pb_!%UB% z^JObE{#f0jbU1t=t%Z2hfle1o>V4|#bEbpEv|2+S&6Zwt&N!3ST|;T>K9szX3e{bN zUPvwL|7c`ww|BEON1g4@2`g4#zy`I&WRf*7&O@EF>c7CturVGQseBNOGo}OkyQq~Nw)f#54VrF6d_cx$U^JP zchDuOkd>WhioIhEsV2ZD{+c|d%zC3AOxuRXRZi>01KwHHyWg=|`&j6&=pQ8K;aVpy z%RkrSe{p#QkQz*TOC0BUCj-KJ^jSKO^Ub!jRQ`>D5E66!a2EC%_uef{aXset*wENh z9lWQ@?foZK8xknL)I>bUp*HZBC?ksbJB6`U`R& zK@l71V?jC8+On@1fVf8>Q05{d3*^FDS<-_!Xv8{W0|&^acX%la6e$gDcCQwNDOUbF zsqM@(;*vM$6hPS`uPAXZV3;LW>xIe&Gh_n!99Fp{PnKC}yrZ(rnS67T>-vkr-59fB zxdtb~e>Z~*sDKz|GB%O1t7>Z5nrvG&GxSw984g*Vyw2_42`YO=S6J)y;-J03@{n64 zIy8Rm4pMQDhmx@KdE{F8!3e2wsGQ-rjYKn~>RQk^kvVlg#(aFWHEnHhPKRZCMfg0; ziVt!JD03XT{&yM3c$)kck>SL^T=Mmh)7~czsa}w2(1GdFLm1Yy)`UXpvH$jaWS;CS zKc@-T97*%zVS_FcEzxICR3cQ(jH6o*J`p*A9&j#o>1I6d1rXXSqoe}c1RUB3PUFv~ z@j8ep$M zTJkp`^;y8Ngjb53;2_)(Bt(^Iwk(?=u{8gZYvIa0>u*PEpl$<>RnPbY80nCx^I&N& zZ(^6|$xkXA9@%-t{4e;#}JGsCZ6zNnR*rZjCz{ij^(k}s5}8^2njfYOv9PR%xnq`THs6! zQUl$AJ*989Bj5qR1=BSpN50iQFB&oxEt6Vvui;AUIaakfWRA)RBy;A)Il>&vad$gl zK6si%_WCmB(*bCussK!cAy>M;xW6MLK6-ug%J8#4b1N{@&5;IT=0`s?041e4)7_>! z>CuOrMHetcvBSU8FXJvHgSihy@jn!aPL`JyUA4Fh8xkl0MUp%D6U98%bW%WikTds$ z2lvzNWdd1FuBL{ffeD4(`mV@U-%Ka8tX%!#Y@JD&x4&o{W3CHjXea%`BH-R{)o*5o zwUlxn1T`d?2)h1!@Y`JFraG5$n(V{Rgr1vUqmWMn#4+8{an;}voApKd8Cz7x;ymJ1 z@m2jH+I%O+S5w2VE$6je72| zW=;Br7yha;uY!Iy$J9#qCk=c=auO&fb9~v_YW6{-)(Qyytctsm<_S8H5h#(qr16H< ziB%~UmK7{)h;A6imE19QnU(*Av@WNL&ks+ky4`KLcQa^vFy-sDLG{v)hTF8l>!5u+ z*Uw8Ef*zXyR!B6iWPh{ilFr3;U6K})_<$Q5-fe2hS9~lc?HnD@7OP0SAQUn#VH0T+ zqf@Wp6e^vrplbv=FYLe{je&ENV5kSEt4ZgKJ-IPD4d+ETRJ`Y>mj2T0oL+ zo}Xs|Bx9{1XUWtcq);2N`C8`t{o9U4c|w$LTm3Gdz@k;J?CWN9s$eWzcElesLdUNh zk?rfd;&}-U_(Ta-OrxMIT>E#!Bmd^y2l^>V|)=YH%8UpRIX3I=rxgl zA`px6_k-&Dxc!M*1IG1==To2&TCe)0X@ftm{AYf#nEOO>pSg{#T%F?~#sVO|W=EHG zxf}nUbE!~oQxj>c3TaEtYj3(S@0UQ4bx3MJ+zIT85w<#%lw7J;pwana=*;srtT`CY zOyg0rvlhhc=^)c6PM$7;n&-bN4Z@#}$vu(J2jx*(uW8|8+9aU4ifX1 zYyv@xSRQihH`f!b%cAX=azlk~>eK!WM^42j`FuBvC>1x-oXbBl+z$3B1xwuZx`PUHcX~s5*QM-9v z1sGgCJM`XTB+pBz^|r6L6k;-oqt<=KN`?b7f#B=JR|*k?!H!+N&97r*#6odLhXlXwW{ zAL7-5=#sJb#gSQ^&B0-aMXss<4J#4kiylG=_1Crrc`pN~EyAc+?Q)iLE!ZjIAkt1( zI8dcKr=!G`W=dG`3+pw$hw*+7?z=p&`3%q-6kHn-OM@T1 z-f|)Is_m!c`x_+A#C|~Y3bZ!9&Szk&E%DIXC7tq5qn->S0L=X2EuJhT*M)w|*eRD| zl*J&*!)Z`n6dJSD0!Oc9`uh{oie*;&b0g@cth%s1jjKK(oYSNyQ(q2?nA1%(49eTr zAbPU?`**PHK&~=jSVzAiZj>Ld(rJgQ651}@t%uQ`&ba@gUNcw#lXFaEpa8IJCzij& z1T}K5D=;D{o(<0CCApO=51%)&IBjJK`z)JPGEa`&$p;3>q7dfYzLST#Lzak89PDI> z7i!GE;0Qz9o~AzD@$WmxX)PVmb9z({<+{smZ^Gl`xTABk`adoj8{XYNi33~Y|FlZ# z`$+4}rT+9c2q|qPKbfZ0m?{s_mlshfqC7k*z@#mL%Zs1?`tyOT(lt3MAvCQ^98xUP zamukV1td4sQ$XXuiM~zB3!Y>kh_@kM`&l-Pn9t|!$c$3O#BsM2>wGUNykCkG41~qh zMUD$E{WP!3GbScnYKqlVMdrzBWpB0>H_AAuk-13hQk(I}_`sNPtKPtcVcf``4PiRk zJYe0U8P@&U{+IN8?-Pmn=W2=r6}g{|hA9P)-)me$_W$P;FT+R(GTsI| zgK1({mCPzdhe-v4Hru3ix>5WYiv{yN;|n~$yG2iNZslgtigmvo{DNZ26snGxv{o^e}xPOYutMjiN`KQhN`)9Bc*0|RE@gn=2LeuOTE=&$z`k3ChJs8 z=^nEl14pmu0VHwC5N)ht)!jl0)l?Ii=awj2t~fcUxn~W?`N3ajm;P(9h ze4#z;dw)pVpMr$r7Is7Rh=VGpXEx5~Kcr{V&JtQ(2PCh7|G6-sXxLi1m>DUD5j}m% zJH1lON94eokp3_55!#)AzNyv;`hF*0RQ>)ZgMyL4$vC)+fb$~HovIZ~ zeCGa$ycbWGiNZ6=HB;+Ny-g0^;$h)Zr6R@WAPFjV;hCI09rQxXjW+5JtIt7rh4A~g zw5yl0jj8Lm9L2=90ptFuw${;A2NsQ$=-Clg!MpiF)b zIfou|2=q`jHX!e7CCiJy6tW{VO=21Kj@HG}yz(om($2Du2n|xi4@-yL_HI(tNHJ1u z2=>u=W!gQ!p&(gH-j6On3kN>lX{o=6c~m3c7oyRu9s2&K< zp={n5T0z0!Jo!a&k)nTr_>2Vb=}{rmo>-{~5dNmWFf%>yT|#eXJaAMi9t_;CAo(2)9$<)b%O#p}lnV9yk?CxaPWzn=1} zF_Pz)iQhv==^C?lV7{~>`wpZ#%9Zf@8S*(C(cij0P}y3pxQ)!6lcpOQ3;X$(Hd%3N^f!b%^rSE=rHdr_rgYxj zW>584-EcxPSF?huA*43*uXxZ37&{$hE2R3zok83`7-6#>kKNNe6)5&V^F4))P*g%U zcC>ja_&@Xf!t*}Ds__d=ikDVh=m70&Moqk`>VFXWZwSA2wkos+IE_+2B^}m~t2b1N zM4rx3@y^}rZ@W*J-MHt>&+El;p3Tt|V!^Ai))u`l#)A-Nger zhTbhhy0>i`rj&*^XGlNNe4QTlam5Z19NX`@z!s()2u4Sf9*md~Kbn(>^*F zMGjZ}?|NMe1_@q2x7aD-H=zz4 zQ`C`~W7YL?lYpS4^lllfuRX-FHCzwd{51JT%rRakbfvARa?CM8o1^+Z&oLe^;uXc&nl zqrnQ2nLNPl$2RO%^<~kk;BEmW$==viI!oXFK()}2ipn6RLS|+X0@`M_l<}UZR(KAV zX~^ZV=KJ$4ovO-xA}$K$vS-b%o7OoLBcP4;kmFlxu8(P}jSCj!Mr|h>j`L7~*{Bu# zYF6o}?q$sNyd}pXgBBQa0c!7SRm%a>p%&ZjPI1He1OCj&Vt~RL?^nsP`968s)wOqV zKu9+HoPLP&bq9GMvG^_k3NnveaW^p2b9OCsU}u$vz+$}Q@iD02@cfDANafiY4@LLF zfaRVfSu-9L7qjJc;p1>3Z4x4vs@*29<)x92buDRHdTw)~6Y#=QRV%nRx>|O9!N9re z<>paMe0v%Eglfv|O2QO|4iJoLrULwy9ys%sQZ>$S31>-vk9h`h$5i1M-u(VqB}?Go z+A|!)Pm^_MBNhTw{6{1y6zycEVWP!4|LBr;rWJnkUUh%wt1#9#m$tajyi;|Gos`}g zupqZ$M#s6h*?wG7W@rBEPxk%%H6(BHHPwPY)5e6wKSUP9I5CT+Y9j|CAB^n;77@4` ze68iunSCal&#Nk%a^qldn<(}G;>zl}99e1bFOxo?`?b(+rAYIk1SSD%GJ=U}|HZ|* zbFZ7jbm46tyrIv`A^kffZouxR+KYIHY491e)_0 zql_{E@kln74nf`@5;9dl&x%C*zB&=9X8G1I>bj(AwAi{o4Pq?(-Q(o^82?WgNZD(2 z4YyLdv756$0hKn8hIFQhym3qL-HL3NB>|KFLHP|Q5M|;N`BW8j@UpDy3uj^M@LuU| zV1ufZloBq=IfMZ1Iz!9zoQDN#=qq;$`+^cbBW&Oz<7c7B(g$p%{JZ}ckYw!{e3+;m z2(x;51~pla>XqpEOV)0zxVZ#0jK_XW0N|53sd3Wia5%f&|*K|eSd!^yK z;A%-fV8(@irGkbc*7kX!e)IDa@}I0X2QngI9o#aJd(y&@grj_>V1c5 zxK?JzrK3m+=8-inF;pF$Nl*}0s<~KChI(lEhT?%sD&`=k^KE+2T3VVy0s5FKiat-G zhQh*&b(9IU8BVwSXW<6}jcN3y6g4~r&x@8m7KxLAF%UMyDTZ<`^grVC;_W}B$NtX) zu$@Hf7uWy(d}m1yeSbL-%e)*o0ekI6#q|_5Sj}1T0)+wgrtMhFy9;e+xyOCo{i8#D z4@a6Jl}PoJK&(YJz#m85b7`J%>1%N6T&QbED2Q0yRn$;4Zcr*LVPiNw%J5dcKbxSx zx1yfncaVn$yMwEb$+j7eR#QVqdk@WZ`wgX<19i4u2KM6V9_+4UzlI?X^BgXm4eBRK z7~uQJ8i0nTVVu%`eV^ny=R21hM$ECdmvWspJ`w$)#p_S~K*_T9q z(~@A|C9O)}Xf&J-j|4q>j~>t?JM*-j__!6Bv{hcF>EjBYMU>%biQdFBon({Iy3|*Y z+(R1EVSUr^>NaK?X!$TunQ}@yowLA&3~;-e@;1Gn81_b=5}04oci?ephKrfRiWvs> zE?-3tI@*KO<@T-Y^exiJZeZ;CH&c}U9tL6$@iEK2`jGboo%=?wErdCw^0@tih`*Xk z_AVlsn?10>6hx}iq3sZa2Cu{Ktly`92~evu>+*){jVQS3=Ev5wUPXgw2bYv(V8OuC z6Py?*qPAEqD=d|1G&7-(hVY6b?1Kg_vfKc$gbFqKf&`^>6@8cs;ccxkw`QX>F0}wr z{*5yj$3M+X1?OA-PmS>Yl}2a}nNEYPS-9^kg3cuBvDRk)kqL-Pb?N={f%eR$F_kS< z+IkWesUKe;7hPs1_6EHAovp&7>lE(A3ST?0FM{#>63$afrB6W($5=!rlebi`Y_jzW z*7SNziY$ATWe6Otyx^pkLRM5!>R3Tg0V+=S&QE9F#^R?iLx`dure-0zF-* zKY!(ZvtbH(?e$tAJks8)ly!FY7grTF~Ynnb7;CxfZ!z(uG2YnwIx_*CR5@*)ax=UNkEvQ zyscSLqN>2A_y(RMwUWa2Fr%%U9B#*%ZiA7(10KQ1fV>O^02TcZS38U{ztqR;zQdjLi*)^AKfrmEob_X ztds7n)a6=XHqeF;0`ZKf;Esa*)anr37tSru!O-pVEmQ`6N^ne+8Ibuq+*d{XS5-rY zop|Rrm4fN3=p?c|2)LA)*3EKQf|Fs4Rr0>|IZ}-nxb9yI4<)p5_xiO+W~K0iH!f7O z@v|`ORbg$a(g8DqV^IC?KH>*?ds#ym*11w<_WkCfScAcWOK)2Rp?^!sw)-HK)w?8e z3}6H-4EKM27&D)$zEB(xP}X1|(rZK0TB-V;BJl|fZMarA8iWgv^4l+kUsD$tQ~99E zL=U9=WOL*`Y(}vx!3!f3H)s@-x<%&ppYRmLLQ*-RxmT+|aHg`}wm;jlEEkaY8MEDf zp}f;-@lug?W<*IXr3BOI#h|9*AYE=WQC5Vg5zR<337_?jh$bNJsPK>IH@72CzvsL! z3TiLoXsgAMT>_|Wv{0MS_2NxbP`=ep#kTpV_LF`P&EaBl0}C&oiSAbqGcX9Z7KoTx z!Bvd*`_R{r>du8J_5PM8jZGz9z{UX!0IbMW4U`L0m-i@dxVXnqY{%5qnGX;3$zF|B zo^jnW-*X!$e|dfB0@YwDNVKC4^6mA2T&(iPqbgq-x-DJ`1|i2D@L~6>Q$L&D)9VZz zXKr73a>KY2F)a{&TPr0A?ph%b*16ckUK#a1=2Y=6APhYad&lmH?@x8jWR@QaWG<8` zz-xN~KW?9MB7>GtHq&*(6yAlk_HoVa5`#1dsgIx$HKh76=O4~;?}YNPO&yU1&+bxe z86wvlXu8iP+s}#5N`tRcMVDHs4>P0Q1cWFTM3cO~Hx)=Q$|e4YvcA3Yj+GCYtB39O zJ&L3j6`~ec z`P>gbN!o<^6-}K3x7WB|?>Ytd{u#`ZX#zq^|3$rBQ_agV9F!ds!ic9^X&8_lv>Uyh zaHMJdb~~5&e5Z%)%Y0mKkthjpEJtqVUH9rQYr1o{#+SF*EO@rb-7X>S>1U~ldw~*f zdm-hNoqL%q#9oY}^LE*bub<|Ji0c{fkDfmwB(+n-=6F$z%K>w75$;F=M^~rznc2kf z{Np@Qm!cgo*ys6MUjMU)xun85n7(grYd=3n5_ey$wZ|;!V5O2$9lMUyjtN11D~2Ms z9M0+pUe+1VHRmR%)#~DYq;rTawY2UJZk1ex8o&RAFidN@W32(k^hKe5rvY zCbj>GJ-UA;A_W)VqM{q|kUvVTeyEY;m9^P9L-0Dw(?&5LTD(`u({{7^3rAotw`KAz zZj1y!&=eH{3ex!b-!5~Jg#EImB~7GR!j8d^a_&YdZt}j>#$Hm0K3yc(5@O67{J#NW zfl$}7r<@SSYu!6R)8x)shW%Cq0$cQC=z;2F>k(C`Z3Z(~u_2zyqrq2PvrJoQi!~z; z-L^l8?JwT=4b4|oxsRTGVOX9+a9XknLno_Y?cAxn(dDMtg*R>y%?9$JiphOA)*p`Y z(E2j-i%3MqNvp;n0)sD!1<+Qc(S6ZRN@)*kEK{fi&v@CWl<{)CEx}V(=Y>Kb+l?KM ztVzBVK>wO}LVg#l4N(C%b&9EQTKEF>!Ji$socIK2bti@;fdTcrclH z^~ZT=AvAt5Ae)2KL0(r;gW z-4O4VUTAV&WYW%ZhK=#yFJWV(65GG{BZs#-I}Ey*mnAxR;+MR}9P= zrsLCEFG}$l554M|hHUX%ePhW)jsc@G&cEe`fc&$Hlz}W1CrX)UH?M7-3T>UfcKt~& zV@JC89nkIoB8T1B3I~qzO1Hj|0pIf)ygoa?2NaGN} z={MzyIdFM|hc0acVZpERXl6O^n1;b5zu5O)$6$6x8C~zZXZ_Ki*~Z&&M1Ie5pq}+J znos4A#I=OdC8hR^mY$$VD?_Ol14IPWQU2FGzj-7no#e?a=Tq-ND<@V=`vt^#-!M}L zxf}VaM9ZiRiM2r3)~wc3eW=w@LF*?J?dmc=o#OsZ{=`9ywX_LH+wBg4Um{f~S%(T< z)7_&icQ+_4x{x^YbOUFTs-0NB^dPxpe?P7w+Y+QSvIwsSjJeX!>$+3lzjVJqK&cF? zj}@o%C9!cR*4YK@)9~2=LsapCPY}y|T9E|E8P4pa7KrtJ9*e^kXUV6T?=Wb}$pN#8 zP*fM=-j`LbddRVVjBsADY$&6K!b=hb4@12$yCHvqT)u4Fo}qtQRi`A(k<_GEgEB%qvsL@oyFciV2cLNbh}+BeFplU~C$dOmFjtVQU2Vfb zw+pqn4%zIXL_S@f2{j@7Z_eRt+P07uQENu zVy_qXG6$_F3^P+LvPG{|E)Ca4EPP#3rN(xu48gqxfHx@f3ys!`IA}{+AcKzusi;#2 z;t$NbmFY~tNUWoNEag}sZWEi36#mO(H_mIx;8h#a1|oEH#Z^ER1^tN%d&v`KKqbEH z#h|e3UJE!>UG!}e-es_m%e*%;ueTs=;KlL7#TT|xImpC_K2)|Y9iG`#{>?M6U>cQz zIT}@WK{MUC3>^{SEuvGhZdbvR7C~n`_yWf3zml{-# z8Wp+j1hYo`^tI$KyoM;2yu~$IRkVyHkcDAJ@hQdG;Ohlhqw&ZPMe1=BlAkfN?S_8^ z$)ps4zy9%a{=?o$(g@d%fP5)wRxg9-T%8<*y>pV+E_UClh=sn=6r{3hG1q)Ihss~- zX&j7>=`Uaoa%k*IU3f^JLi&RuAZ}nZ(-QpD?kofY6macT`%;;xyi6ZtDbM*aR~b&+ zhwlFg^CJx0{yE%3-(FTIAC0?~P~#sWruB8Kj^e5F+8WwQuU!$m z!WC3OuLvblm@i!$yvp~C&ePx3HB}*9MsHFvuA!9HaV%NffZ;l|A+vu2@f*FH{)2c} zZUb7rkLNFl2^qr2?uFnhYy2R`EiYTjSO9}c@|xjqTc_@=e0g9C4WAAG5FEN5QCA$a zYacx7hL=|++Prl=+H+wC(ZSgrIoU5IBX$-BV=B7UhODOX)7CUaF1)$^b*i5NX|#AG zHH5r&(A|%duy8qTdyu=U{fc~B#&@l6nVt7h+<*_b;r_dQvvma%cin8IA?lH2!HC6< zpOVSm!Q9D3)>BN>)jd{^-e@a35~8PZabPca_0?~aO{?mX0A)Zw!v#yIW4m@y>3>lY zq1H+k0;3yUdC|yJgog7IPYp!PhaMxx${7&ljF^Z)^#?C}_zV6DV0*DXo%7fw%1Y=- zyFIIze%#Eq{mae3cy5}$?G^x*QR9)zq>3yB3s0g|aLez$k(M@pCZGXS%^lMpT=VG+*}auOmA ze4!HYiF62|hmTrmkSF*1#NB+W#i$?v&;A$TB|Na+S&~NY1x%;4gl0}sgRW4zbUv_x zp1hCLRK_E76)#{{Y$UM42~g^3zD^~OQ;>0TVT>x~RNR&u>axNUws5!LHB@55Dr3}j zCT<2?pfX2wj#0b7v;I(bMoxQfvRd(u0Ho2y#t^#_6GEgN5cpSEg?q#oMlUyde1C#w z-rBT7(r#j-H4I%eaVx6y?CIH_;i6=C*vQg_h!=n~B{E(XkXZr9%MEhmmHAV)hxxQF#@^=tG59vgmUu z#fJhGxdHx}AN2{%Ik5l@3OUDC5ZWH$t8YvuhQ*?z1t-mwYlKz>SL`Rpi^}c@lFh$| z16U%Bjz``K>#2U+EFe_h?$MYPim^^6bakzNTnE@LtfHZFUdV^D4r&KNGerU-Ss+U$ zj2|x6Z51Z<`O$f*t}0#Oa1Q7|8rnWOaC=+)R}8)aP8ud6iZO6D{!U9SAXqRweX2Ji zF)_^uo0R@sbCIb5!fAuwF? zinEtkjJdFg|JT!bN@f;w{%k=;#bY!-JIOeL z`ryox_r|ByO6u)bpdK>yTWUY8q=hm(yKD5uqirrdwz@m1A|r5t=OU&T={$@>V-jY~ zmO2TrP(BxU^f7#Fi2+v+e0Y5fkKFzaRo@7Y8}GT|em;#0{udZx7(kU2q?C+3mg^!{CW-U|2b)$1z~5?6Es9G{LZUxd zvoY{Mi+o~=PDVJlL8Yed&+tr;hkPK4 zWb%Yhy(B5|Y|i_r#s~E6@dx@3LzzD6fdkdg!&dwfWJ`1~9rd(SdE!F#?R3dmQ%iOI z9$;h%s)_@5%G(o+c7SF@k;Dy?49s}UC4DiTF5L{(m$4Y}28y5P?y{H_5U!-o$y0Fw zy}_ehf7+W9?hI#1o`N6G&GhBj_pN|&p;l)B?NA&S-4_+4o3?JP%EQco_VUR(+dT~O zhFxrpP);JhaIUD=`*Qg=k93|JZ6~LKD^*Ps})D5!Uc`*ZDpWg-=hOo5}RcnCrS)(bgCA$^E zqyRb!`^@KrZ{$#;Neuuf;WbF@nDmN}40XSy`ltd`R>e2rY^v73jqBS_&V}+-Z6S#c zFA!-Ut(*8{4N>bs;hYaij5ACkk9~}8kiwha-JO>#=gf4E0A<=`atfccoPx$iAeuge zDaS=pWQ)8$uiET{z}R4~0fHF96ft^j8S;q;SfzmDOzs>GY$JZ3$on7~D?l(dpGbE; zK<%h2|0Pz7vk*O$)WjjCIga~te2EI(Q5dBvOs*e4GKdzu92JVhsRXRY!nt{G>VX9y z=S`Cs8qdg=cjgwIKL=0>Ty?M^ z{T){>?|6fhFOh^C8T0`i@6MOq`FqAbH_y=!Qv$v0ynEI1;Kw=|-i-oymbBOCmd zhw0Gml)2V#fvNUQ|2stFpbn5>$fn8Vi{mMCr;h%T~w||@CYZ}>2IA>iJa~M zphwW}ZUCzCoGuQx+5h%pmzRJ}tliJ=-RlROPGmH}E@_vW&ZVWp3Wb0zqyBySa?^S0 zUeOBwbY-*zt$e10(kX%h?kCc$Pw@p za%&%JPHS0Hg?PE4~y_N65^b0gl zf{lw#D+Tn)vxIH)^sZ+Ymmum)wQ{bz#31fz zIV^JXGbgkLC0uOL)8)%BJwhC&@U|A{ZI`>P)ok6{%5>~~Mgg3=pAd04v4CzH!dFf5 zwhKsn^dbPZUmzpYf;tmxnI{ei@-vg?`=VBL*WQkIQRDSDW;nx8r4IhS8`$l%+@#=T z0g6A)q2fN=R)o*&T$wC2{@Q$SbaQPNzg1=k1KwNqdhei8cxYjl>!x+f6vG?4*)fe= zs${<07oj3kDL(yTSxP6Kz6TfTkD_0C7c^5?9?ghwFszXE6b(@sw2Edg)QuLI#`4l+ z2K`%*-VbaElaVn>HUmM|+^!m-X+0lgKU4KXWVoV(KU=5^^hYEn*_-G_gp7Y19=L5a zeaunY-0wfxY31H~YR6-M$mZr}t!UIys2S@5^{z4CAOD~}p`|waz_lV7&iFI!?Fb8& z#1fXh!CffdgdOBcSk7}drLtOStRmuSOF4pEGhC?eTI4uoPK5@qNUm=Qy4H;AkoSV^ z!Jq-LUqaF;o0g73bmN3}^NBBnrPN(zb z3XQfyz6q$jQ*?MP!eI$$+?Y3bV*okdW&*p6q$bnXe4wfhQbSmUPEF(pdQG)#eoCTGlz~1H=EM%sKTAp*LTEq6BPOu4K)6BcTVsd#m3eB@3x8es!KsoOQh?^oJR9+LJ;v#rsDr2tvpM*iR2-}n2I z5DOZ5=4uP3r3!DIJ~brv0HBy^fq@`IZGzyt++?N#4x&HHXc?gCWh;+J#34PCjPW55 zF1uZGu0+m`8zke!6v)cE=|?Zgbv``zxSbC&*WVo`=ez`N`q83- zcQ#=$i)X}OLPFm|F%>eaeWAW4GwjQqKf7jD@_p#|6T{F$6X+K!U(@lBcV=s@rA0+H z*gKttAqFR8+1}@6Ilq{5BSySnom zd!`faSZ>^SX+*I_k2yDfF$13d*v)I=bp7i;Cf*<3vq3&96A?hOF2cmq`Z#1DgI+(+ zbzcUpO-cssYdI7?=XafG3T&D2KT(a4PUAuXcfj{J^GYCvE?}*8*?Lc1K9xIAUnS5y zl|7Q!Ui0=7cV6^B=N2PB0~~p(=@qQoJEkU2f}DJ`*_;O<&MRFZl;Y?G1KFe_&Z@jEeeay^56=fAvd}y&=2vX|@^OOLZ!wdG;(@ zsx=ceCbGK+wtO@pO%GVQ;}0n{j85dJ2mn79RhtJ8w7m8pP7~3}pjyD;U)=)1SD4v@ zh9IaoIT1eTF_oDk@mpJHxi!|CY?lzNZO0u{{>fW#YXt;uN(wBinHWCcy(dWTJ2488 zD4{IMx<_6%1mUJ$inN0Km-!Imkg;%T)ofm0x3L59k*4 z7!&+cq-j{5BwnSESY3g7A2|3MOd&;+{m2i#&ILiRmk>t!nSRnEwHMnMLFXTsuL7HR zbmcA(nDep}SMACFzRKryUq%UrAD#Xi@wgm0|4IyAVmRH}#Z&R-h0jFfjf!LFI7yHS z<}EvDl3pqBLfSR=J^Gu?UZ}ebmPXsC6)N%h*pK{}Th2keOX`GOEE)F>IkUHcj|AMpm#qFO6hb=#}zLS38Jb$nJLnB2ulbB}L^Q zN@n${)!Htd3tYDyX?b#|?tec?dG?Mqtx4)%Z2=e6Qw2cj0mH2-A!$mR*23CwL_^{U zVvLc8qbtRSJ>N_f3cge%euq_b{Ep|X6vM>8BCs%Ev-6QZj%i1UGApQy`!IE+`OZ=9jK`=M&HGmRVXO(#54QkLXBl#`woWqaj236^QezZ^&))=k5yl$MEru!H@^I1y zHH;}pI{%W?3SZ+;Kfw~Y_fexRk$xKdKmi@JA;#W3!J3fIxpW{8^Xq7OoXngPH(%1O z&N9FOXcw#OBx7|hKrR2EI!zT;Lq~*o!d_&r{%vB{8Ys`8<=OuGVEjLI)NIPJO8Zh8 zu9Uj}y2^5e!g(w1{78V(JU#Ff!@L;x{I|wNz84IM;P>~jy z940S*K0>Pt0r9BxQ-|e;8wa^I^^GdUHSm20X;u~&un3cN7J)}{PX-^LGCin=^g)tF zseTxKO>;DtO3QcFbm*!l4AwBd^ap(>>}xH^x@e6etDxO`sk|zu*pk#S^CQ5rj`u0+ zq8BV8{7~y27=1U{i=L`td;JCfC&W>U(t_4i#tG7}wU(^+bE-r!)+q?iYU#J5pM@1f zOKU;*Xu_V^BA3%3g`_)hT8%E-DC^H}bUhKLl!saKd}_A&w%iF)5#t8g2O#p>l+Iy@ zn%4{mZqq|GJlxOlJ0J=zr?;v{3gmUo*1pnGUaHx8WkqwWf@;2Y?oZ#}DMxQ&cIi$x zq3W&B&{`X6wKe!6`n%$#w$g2=&XmkD=-s5Z4J_vkr6+W}Q}*G6i3`Ynz^=>!;#X0o z**H9xWO7Q8SBphc!1fT}Z*LS^XB;kQG#Ga(;EMg&D73=(O4p3mX!AgHRTITIByIQ2 z=!q&n3FwRgl_EZNzpgaTtg9AZI&`H;TZKCED7sEcqNF7=!8=&`^Ztz7K37FcTO&@J zje>6;1h}%&(~&xxsDxlLdVqri%sFAiZU#n(zi(iyS(&$UymTdiCf;%PPh744rg=C@6Alq&hbXoOdu(D#}VIh#1{0!F~U=6*qq@Z};=zeb6Q zV1KC(a6AirD;2dU7{+DB9R$HD064!wBSEpPqos)NCAp8=d+p_YNllU#en;_l$hLBt zd_)Bd^pN$LbcxL%)RJ#MvfAXTp+`=3Ov9zGby0XV#~60bjD2yb!p#xJUX*j`hHt6d zd7AS7W=zf?`p4Xz+1NyI;2FEcFr7;*3_}UrN);rcDqUUP$M*rH6p)Bqxolf9*|xt( ztF4}VVAQ*5Nc}HIGx5)5X#t`WavB=8vEnVp+=fF%bT-g{0Gdb~=}1t9xY6?*qbe@#3mr@4eB2ZPEG!s6A=J-V0Ehj# zL|(xS?Ii zM(vXcH$an+qi5Ryj4;gtC;UneFn8aga?Fk9fYD95*cPl&;B3P zMH$Xa_UOL7cPO_fhtf9Hfs_%qNS*YL~bcTUGr zETMNx>re1rwi%TyR*$wPBrQr%Qne?rj7xKOau@rs%)lt@tL?ogf^fRvBFV^RS$?cA zy{LS}5a8IUK-KyH<)PQu#l&$d5*i4OqP}fv{f)B~d7ZLod9Mxmq2=i*pOvKrsav5< z3SfnnlqXaW9Y}Cj_U9Kcs7g;Fy&xK&@xit=Mx1fr zXuVQUJ0R+tyePB#4X;%Ob<6&)8#K4mXk;8R82Hxg&k8LaHEDL^)`j$4++SQ>nbgK@ z=LT}~Q%yR;6+mT?)WBa^kBt78HlJ0(TC7+HKsUP0D^@0{7~f*_K;jC}2h3X{F4j?G zlaGvu_zT93q24V2x~Y)6#-$C+@|x*mtU&j4vfuOXbfxEl!6vkzqjpy8f+A#fSK2%U zyiJtG^_U@Px`zHaH*aNOBHM|Zf-&cxniZ7IW+`gpI8dJ}YrA!vFP7jM>}cq&W@?qT zfhX4hA57y!5*0+Av9pLP0B5k~s(cBi(cqBQ66C0;DsZBD1)!l13%bg+vvfNd5xZYD z^}BCB7d7Qv<0-Y{YUw;$c}V|j6degeLIMllNRY)u^#B?^7sW{r^b>IiT|z~|AUd`; zj-qA!C8T7YAZ}vBXT9pk6a7 z$g)0$RDt)!-X{ahQ;zA$Nw80O(k5Pp-51j6cS72MN|z|4jUabb%#W=#e} zb{sVi?)$7T6gUg$KdX@~4FLgj)A=qZA(G(Wt(W&^RAwv5-yxp%HX#O3dzBZ$d45=p z<&_HSftA$oZ#B5xG+j!6wgjE_{H-M0G}F`o6F>IU3TEY_keze%(yh}r&dX}PSFIA! zc3y(^G16*83Yd||i;UxL?^bOjiq&nV!gB0Lkh=D69B;-ZF3+hW=8-l87B7N2T44gM zZ4q~1z^|I)k6!DKb9~WS22-(x0P#B(kPS$-0^O2fJnPpJE{bpCn_Op`6vFam-T0TX zjmw;pj6J21kc(GE3QYXXF~{7N?}=~pK9QoY%h!v~Iso+i7qjd&JPS#QcuW_X2hX$x zuJZ-!BhLMtSPNZVV!@eLuMKI1VN*E+QgsaV+z`Y>03jKNS`a1zCw~1pifcTnG5})+ zEE0hkaB2IRT%w@k8El@ej{K6uH&D~5BC0iT%AgY~d51}>!ioew4ivz8Zc^e%ue62) zd}GAuMs^`7In~SdEY1g9UyFF)rxP@7NS&w`Za0E4&CXC7xhS(}Ne*j61Sh90uU_cE z4O~_#T@&`_PC3nMtX0qYUQ_P9Zz6W&g$>G_Y9j#eLUzo`7Fs77RhH$G(^Ykyi#*H* zFvfxaQCFbSE#)tkgD74ST9Yt{9dqLmQMC@o`Hk35}0j;LlH85*9((!k~m>Pq{6V(iCcILItcwI1m1H!Bj+Bbg}9vaO+SPVh0R>JCW^POKR^q9ivCl zwX&+!hxMH~i2;nf*k!u>@Pq#pc%Xw&WCE3V{pD@K^V^WG_C{SP-Y9~;!x8d}cU`^UsakSb?TRDT;LMUf=SuUu>*!$&J-$hA(=(^QU zpB@W16^L3#&X&$7&L>0)Gt_$;Me+R7*`;Olv|dgAtGMs zrs+*lh=k%Wy)|uWnXXxWx?#&%R@edqJT4fyy}H=J?JBF&LpPQc| z8Vna6M7{PKvSJfmyjHeRh_$bE9y`+4_Ua9WZF7I6XU7!Ll9^FDv-eNh>~=ciwmHv( z7Mr@kmA0S&J)tAni4Rk%sNRR?V>*4fj%}qRcG|Ql>6_!0D0e;(4Il%uJ*S-->_VO_ zk93)dom)_HO7YW8d&xg6wJ;EdufEHIUbfN?ps?4#kkwb=LTCpEdEs(_1x-^dnMZ$E;{B~c6pt>|?e$GcQ>ex+#*UH`$%s2i5ax?lQjI?C zTnbh2jH@=w$<2*Iz8Qx&?#C5O(aHQ<#-z*dwrs|=|94wVnNOF7$3i==3neUJ>~D04 zrIeCA@ze4g8PA^_5IK*&XAI-BgvR7(Q#qT8G_I~Y$E_%eQfrUgeGE`PajGqem#;t$ zl^(3lL63QL)#6fU*7wOoY~J+_R9Nl{8j^}{^Q?Wo@Q<4P+$hLeP?(#a~;T=~HM85>h=08#r5M11f_g+ z>0uD2quG>;;OsaXk7f-~FTmLNV&_ERYXWn49WR8R%(G{ON+(GjmS31eYI9SVO{lot z3Fb|0q)ph{ANE*pXD(dFw6G05SQ&_-PI)=<>^?+OSJKC)wPSacipuz;oV!$joyCm$ z$#9HRTZIk7IPCxW1o{AGE})(R)tS_C^GJGWDiWH065kW?G+sqE%JLGmz-!g4r^r=m z%E0BZ6UWTC1j)gs>8DQ7KE5K#xtBT6+TO^`vRfVePl|MfUR;$esjPxy?tRBq7Nj<9 zz#WsQ8j?f{3b!Uj%26v~q1F8n5V_edya8H%%X|)AvonYe_?;XLf?xudkh-VyVFK>KZjF!~2A5L00031 K0RR910000dF)Pmi literal 0 HcmV?d00001 diff --git a/assets/images/favicon.png b/assets/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..1cf13b9f9d978896599290a74f77d5dbe7d1655c GIT binary patch literal 1870 zcmV-U2eJ5xP)Gc)JR9QMau)O=X#!i9;T z37kk-upj^(fsR36MHs_+1RCI)NNu9}lD0S{B^g8PN?Ww(5|~L#Ng*g{WsqleV}|#l zz8@ri&cTzw_h33bHI+12+kK6WN$h#n5cD8OQt`5kw6p~9H3()bUQ8OS4Q4HTQ=1Ol z_JAocz`fLbT2^{`8n~UAo=#AUOf=SOq4pYkt;XbC&f#7lb$*7=$na!mWCQ`dBQsO0 zLFBSPj*N?#u5&pf2t4XjEGH|=pPQ8xh7tpx;US5Cx_Ju;!O`ya-yF`)b%TEt5>eP1ZX~}sjjA%FJF?h7cX8=b!DZl<6%Cv z*G0uvvU+vmnpLZ2paivG-(cd*y3$hCIcsZcYOGh{$&)A6*XX&kXZd3G8m)G$Zz-LV z^GF3VAW^Mdv!)4OM8EgqRiz~*Cji;uzl2uC9^=8I84vNp;ltJ|q-*uQwGp2ma6cY7 z;`%`!9UXO@fr&Ebapfs34OmS9^u6$)bJxrucutf>`dKPKT%%*d3XlFVKunp9 zasduxjrjs>f8V=D|J=XNZp;_Zy^WgQ$9WDjgY=z@stwiEBm9u5*|34&1Na8BMjjgf3+SHcr`5~>oz1Y?SW^=K z^bTyO6>Gar#P_W2gEMwq)ot3; zREHn~U&Dp0l6YT0&k-wLwYjb?5zGK`W6S2v+K>AM(95m2C20L|3m~rN8dprPr@t)5lsk9Hu*W z?pS990s;Ez=+Rj{x7p``4>+c0G5^pYnB1^!TL=(?HLHZ+HicG{~4F1d^5Awl_2!1jICM-!9eoLhbbT^;yHcefyTAaqRcY zmuctDopPT!%k+}x%lZRKnzykr2}}XfG_ne?nRQO~?%hkzo;@RN{P6o`&mMUWBYMTe z6i8ChtjX&gXl`nvrU>jah)2iNM%JdjqoaeaU%yVn!^70x-flljp6Q5tK}5}&X8&&G zX3fpb3E(!rH=zVI_9Gjl45w@{(ITqngWFe7@9{mX;tO25Z_8 zQHEpI+FkTU#4xu>RkN>b3Tnc3UpWzPXWm#o55GKF09j^Mh~)K7{QqbO_~(@CVq! zS<8954|P8mXN2MRs86xZ&Q4EfM@JB94b=(YGuk)s&^jiSF=t3*oNK3`rD{H`yQ?d; ztE=laAUoZx5?RC8*WKOj`%LXEkgDd>&^Q4M^z`%u0rg-It=hLCVsq!Z%^6eB-OvOT zFZ28TN&cRmgU}Elrnk43)!>Z1FCPL2K$7}gwzIc48NX}#!A1BpJP?#v5wkNprhV** z?Cpalt1oH&{r!o3eSKc&ap)iz2BTn_VV`4>9M^b3;(YY}4>#ML6{~(4mH+?%07*qo IM6N<$f(jP3KmY&$ literal 0 HcmV?d00001 diff --git a/assets/images/social/en/additional-setup.png b/assets/images/social/en/additional-setup.png new file mode 100644 index 0000000000000000000000000000000000000000..41895802889ef7208df183e824a492fbed60d287 GIT binary patch literal 42071 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 C7y%yu literal 0 HcmV?d00001 diff --git a/assets/images/social/en/downgrading/downgrading-the-game.png b/assets/images/social/en/downgrading/downgrading-the-game.png new file mode 100644 index 0000000000000000000000000000000000000000..01124afdcd513ee1e60491c4db6135d6b4a4628c GIT binary patch literal 50855 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

    2ySCW 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/en/downgrading/downgrading-the-radio.png b/assets/images/social/en/downgrading/downgrading-the-radio.png new file mode 100644 index 0000000000000000000000000000000000000000..eac2cc3df5742c669c343a168f9db7123fa125d4 GIT binary patch literal 46807 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

    9o$J=E1Hzh|XOJ9>drO!SRE@YO z`Jx2T>%T6oR{Q$~Z3!gX=qBE1q zNx_}k(k2>3&hA~aX3Yn^^_-lElM|RzYBF~k7Wy2%v#tZg*;f$vnT?Hv0How03NK1A z0@TGIm(OpORE9~iP-+la^Qu1*5n&3-mV{2!si&shAdZmI0OfO5+r)jlj@(8Gu4{rM>QH1w3F)?h-zWjraVuSUC!vWS`# zF?{{4HBZu$S=81Y9~#PWJXCB6*2iKNmQr9RC-n4uP_*))N_i6T{`TMKU=&0U0}coP zr~&6tFageX=F&n1>(K)8iynEyk&TZQeY8(-EKjIyxMnKlp&_9EDm!C76!YN};o<-^GlTV)R?% z$UhI?+IVio74%e;UouyqYcp(tgA|sIreRhBjkb`&DdW5b3O1MT0YAp{PJV>EvB^yxFaK^-+9~${K z{P7$LWOA~&?=6NrlTa+5(9tn}k<`Pyj>F0Ea2KF(;5zbps`bntgaLMD8!*f|3LtMOS)hZ*$Jd78?f?r3ugbK2eD){#;+OA{MUWqefF*nFWt{Qqwt%W^;1by&h+9Hr1@M=m*q>mpB zdB`o*j%hmo0aGPg+ti`ScwA?mw%tDuaSVi(#r68+;Pd_G&TY1r4zHT8a{jykX0Q~B zHfdf@jQ!KRK1OY}gAS({cCxqtdj}e_Tr9H>4m3!<_0q^Jy%Jmn^3*9Q2=!srL*{fE zS66i;3uTr!apJ@$+tz>bZOhyFnw!vVc_B2C_eSvqey;A+_Fxaj#SlENWdcj23bIe~@MurPA@`G68te7ou%Q$~RR?6cOiE!s>8}>R9`9nDmS)i!I zo;ZtXdB^J$0Twkh){^7T?=NDoA<^QeHmQ__E_(W(O(P%rX7B&=lIfoU=)YZK{rd<1 lY-i>FFH6_||320Uk9)d_8+m+8;|Ob2@vw?K?V!=s{{buZ_?G|x literal 0 HcmV?d00001 diff --git a/assets/images/social/en/drag-and-drop-archive.png b/assets/images/social/en/drag-and-drop-archive.png new file mode 100644 index 0000000000000000000000000000000000000000..70f4637e6295b21f87e9e6fad923a53d4a3269e1 GIT binary patch literal 52295 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/en/enhancements.png b/assets/images/social/en/enhancements.png new file mode 100644 index 0000000000000000000000000000000000000000..465a9608ee2e6adcd4c6500c95ffd1a61d9e88fd GIT binary patch literal 46501 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/en/essential-modding/additional-fixes.png b/assets/images/social/en/essential-modding/additional-fixes.png new file mode 100644 index 0000000000000000000000000000000000000000..8b33e8f37518a85b1c81366dd42340ef29dbf71e GIT binary patch literal 43379 zcmeFZ|1-6aA1G^^}VTs+>ofw zMxj35qIC*2u22<=m<&TfK_R&~R0IV_G;HFb@WvH$FH5VMpV(~bWyk5G8iBw;;k<$5 zr`}&EQRKs8{&{g|auyMU{_lU~JepR-|Ge}Nwy5#{`$abuDMIO=7xY_p7t=ql;<``h z_jbXDF=0BmWM@d3L zBJlK&58}0vD&@5r0~}uOwW7jUX(@x|04Io%w*+?oKoe z9Dc?l*NqXr)BrM>4opV8aXXBs3aav}tfRQ|vWyu_E15!xXB+L;WwmYkzjl7=Sl(!c zkia1NEzd3MJ8&Je$bPY6pexmP9KpE0XDN;8GAPdvp$b%?Zu9SWo*h3{xbFMk;nSmB zUS1XmII`nVUz<^pl$Gs3plWb%P0(E>&tF-3y6m6Cujj^Hw{OE}GJ zs~O|5DIXN2oY3!lI6>EP>Fs-8LbRfxB-$17kJrKns=BQHmtp!tSNf7{59ZrPPr~gTq8gP?`wiq&GI`WFQ}Xi@ zj9!}t_`^|3aENp9h@(&C>m3!bOI1-Tt7q&n4Bk()dFir*!4dcS5NoW#Z$C-`WT+8Gm zp#KVw|S$;2cyd zxjc&^dUA+BGU*DR@aMk}!A-QiKv7nniDT&>%*Tf(2Ol4%MCnI2yW6r{p5jeY1*lV{ z%Kc5MtE`-?U&qH4X;mt`y}b)}S~g6qVO@4Zp~3s;KKI}E{kDHSipL@&MOrxouVZg{ zpzE?9(4ajvLaw^Km5HaSv7(F^b^Wd3iC#zng}6}pRU?;*m^ zfW%#$I`k)3561b%NuFRZk9iLB7d+~h4-U<`s;lO79{Y2? zQ+KbSbLtgSq9{$`w*Ofc*&MmZ7@FG5EyG{L%AiQ=p7HT-l)clfqc^0i$VhfDS1%Y~ z84MClKWZ%F|M5E>Zw@u`fajm;5{dACRo1rdB^-Ff{&znrQOqxe4Y0A(()GstyO|gw z(ACi`zLDZrF#TJijv|Rhho%h@E~9a(iQ*FzRm!xVdw#&6@DF-A{z@xZpPZYMlT&tz z+oR3XcXztJ`}q4iSL5=JjFtND-DZ~kZte=%sp|fzsy;2*?k=#T53zIvWzA45Nk=^$ zmjOfRLx+|^;=s#pt(BqqH7<__zXVD&IFy$&nLG;W>k{6j+M*7HmX~uRPzqxnZ;bTK zw+E)Aq@a|I$G&|lvOCvGQSkIP<$lW!-$c3I$Es`0J9k5w?I+)Was2VU+VtIEfd?UE@e{R&5B0`$y>0Jy zwORAm6^Xm&U6)^^4*Yjl;<#&mwj@nf8E5?oPNWhY+zG~|k@P8_xNdoT;NH|(S>Cdc zc6sFy*9kwZB_t-+n}kzNZ4nEGt-X8T(N2a%NY~RxACjl!TOY ztXLT@;jSQRZO0$3>+1^->6^>rn1lqLhLO|xKteS&wa5^9X@3Ft_LFa+&lT(X@SsUa zeE4tV%?LjfbKrhTpj`253%R*2f6(YYx{@Oo($Tk~;^1(HN~C{p`f#Q1@FStz8I7^t z%lk=UhMo75=$yWm#9Dr;8LS+X8KB5mqSJrgDGPQ3o`sIQbo^?dYCB+@tuxM8n3Zdh z*1H{*bJ^b8?H*Fk6@^pno&DKixIm8npzWAod!k|mPF*z_H;~4@0&a}we+vErP`>|)H!&>OVD|8BEou=!GX1(BW8MgPR54XOS*3G!N_kpF^ zgTXnAtnqCH<*d-Vs@7R*psfo!_vVPZn00HI`FT7d*Gg;I8QiX8 zo54Q4f}w9}YTEyaVB&;G6XZ<(lXp0zZ0Lfi(v*~xXGcT)bBU+>bJSyFV{7mEAHFhj z7H$o)u19$8y_*lGl0tXK3YcbJMA@Bd%q$IDWK95zB3%qkTd$tj_8K>K$sa z>S;l+cigpYBpO+KybZ6*(7!ExjIMVcXY2eV{^XZa8wkF&Z#&~zL&B!+AZr#dHv{f?@Eu{(e>I zt6$^peIw7MqEXN=t&Z0}yVrismmsY&u2sq6GmoR~+;|Zv9Xu`Wvq^+WK(pCdI7GaA zh{_5Tu0suw$(MM9xe#=$Rbd;bKAJBR_Murm5zR4Fw!myJ{7vCLi2e=sj z4!yb5%lf)9%*qKdS1s&s_K&M-n;xp%5RN4of2|3DA`eUToWU~V>d+g8oUdhhX9$N*A81#F_aT8>~9KnqI zF#CFh0EiSGvnC>Nf|ZPn$anpuz$uP=MtyJje50VRm%?)Qih4~!pe9FW0^NQO&~7C?-tq-QMt6iXpZSRM)pn2jz|O0Knq zQr8yNhRab)fcVZPt;G)CspdV(Ab zFPBQxWf3fD&)MP1T!$bpIi8KJ?SIM#trU5l*u(B@L0iwCiwd=W+AsE74}Uxw`QY-7 zJdjsHf)WIHR}3+;z{Bq%(igi8bQc_wXjOry``N;d1iAM-_Kj)*J}ie2U_pZ!aUz^D``D}f)q2F!w-H8HQzYI2$ZYPOKv~qgkp2xh|e(J|m z02ZQ02*qYaKajZ;)&ZZT2#)HVPa_-__P3s`rf2c6D6CX*!uXpXr%U>#mj zuO=@q-~ThtTovs?d2M7Aw@R2J#fKEbk-6(x-DLs}4v&%k|J)r)o}~eA5Rd8#7Al}M zN@kh+QGTm7i2#77c9}-l;f`se`!kF7CyeaueN|%elg)JMeDvx1%b=$9fh|bM%{6rk z7zaxM&PeE^jV~CyvaNH8r5af+y%Ki)MAGN0Y3?UrtM|O*_(No$dd{`@s%mH`g0!$y zulG{LdVM&@-S_3omx4Z!~(vGJ+JdTx(v(3$5g#M%)AdPgNUu|)+v1T$67I@6!Kq_9V==`|;d z+!6_lFjvHR`S9%e>LP+#HKq*&HeH%=MMcH*`-gdbl$y662KL(6eZiq&rs^(|$bT^m zOZ}-i96p>Q+_x7I3?dUCz%c%fGt`UUdyibFDh$|%vjsm^-NiMG+$l0B({`GwF|W6k zyFO!1q?N)npE?Aofgp15)e}J|s`FWMS@~?4*iV$G zktPM^-)@?!w)QP**R3+*ZM(U?aQ9V7q}lSyR8Rv6G)d<7-4>s%@OZu!Y=9GgXS;3B zHhNUh8wH+hN8<6f)lJvWwLX5Smd4ifXS>R4&UdN^US&jA@aNeWB7*CV^gV zeh)Ebmr~X~-@`PtAM!`Y5C_)6ycM>4WcrigrJqoL9hM_->L~QXgGl^>p;( z_}*~m@mI~08ag_CbB`CE`R#qb-NfbIb0_dC*ab``?%x&K1Se$`j-D(;OEW2B75jyFkMC9M`(HbkKRjXT;9QSut$+ z)Gaf}%f$1@1Rv<>ch_ZkzCs`vBrJ zeC=!AxA-CAu!mIVmcLBDbEQ}xDM(6Bhc+%iK`m)|n#?&0AW5Sww^236Z$>rsSg@ER zeM$6v0Egqn53RwT0cw)aP(BzeldZ|txEfcpgJ|-!URntGv&Bv$;a!4wPABukKd1n0 zV9Un_6iW9#4Yn$fWA-w;&@WqW$da?VzSmht%mx}9U1@4+_P~wJ;kyWh<)J+EZ=m=j zfRortOE2bj*WpWkEUlE^B1qjmZ2`xgTcugcn`19~x0RKZ$sQDo`v0_=0QZid$TpWy4jvukC@4-#(oE_IgC>pp6tP5P$IX zx#R9k1C~Z6k3xa$(>jOGRGmF$GY5>Nho`FLPZleKrYI*@kw^CO`x00GnOf%jxD ze=7dkp2TZzZtmTl^BLE&7#RheTxhU>It1$prqKtw0*ny;px6Bp&@XhjYs0LKl!%*r z#Tm1QlvhV?tk-(71X zdu=!`1O5EOGI>n&r|$~O+Br}=hI5K9I8t-C^vQ^v1NBSC04 z(=LDr@;jI}cL=)PuVv!$CfwSyu9&ScZqN1>RJbDa?BMOc$onXmJ9*rc3ZNr}_9iE+6-wyTRgg`f0;~^r-uq;U* z&Lh0Sp*GsZNJEB5WN}j`{fmxQQOkXD19Hj~$+|^~@*@j1=G#;(zuIOH5Eh?R*0)?E znr{ZfL6Y0`YwcSBI)FkVOPjsDeKT!Uzegvan0tQJZ%;1)L{awh^Q*VLEf65&>Tb{7 z<*Zc{>4MHXD@-sx@yV2MLnPkB5)1X4>F~G;7_Z%mwZl z`?;YvrF9yc)+k7g-JMzaDenNH>E0R7L(eQ@In1&QHgUPKAIfZ|b)9Pw)qK^q;hp~D z;7$BcnEVm+X#{x;!}Y zcG7l+(sp*zL@C&`nL;W&d5;IUQ8=OH>m22oh-_SqJHy|cl(w{cq;^$(R>`?>{HSdV zg>76W!e*%O8bmSKTzQ7SiDN$!DG^Y}V1vw$7#>SrUzTJW!Wo2c<5+QBlxQYm#5ukp z5UygObUC3m@hIW`w1(_KxJ6hSBL%1a(z3Gi4`+UyA8*Y4UM@FjaH!Bw;Yu@o=VE>K zb7^z7k^lQ!=ZGgK+l*pjVmz5n(B1l@&YP=|y?1~s+@|fwkcG|=x%Ds4<3Wn}Ty_<} zb$miZPk->+PFidHCrCL>lK``D|2|l-bepjP8{rAajxG2RO42*KpqulN5O7e0?6AMp zn8)|@D49LkD($u4eu!zJOvX|GN<$<_Qqb88mtUJ>x70_k(cQc;M+VgJ`Umv(hi}h+ z6@*-aEhJ^vW{{Fu3m}5d{j|5+VqCF*2%wzB7u{mHdN^ znBw{fD{7o|YIK>z1(}xHZ#T#B#RuULX@lMA zdkaAk9ZxSXc{=0`pcqNAe>h%g=GdIYI(_(ceR04nEKKUrb{I7)%cCsn`t44V+_m_A z=S^?|^}R1EyBTi`*LSQ}`%~OCyba;KpoX>Y+jb*y6tt{R0vbN3v(*7!ngBo_AsXf# zj(lfBtB+Cm?v{8VF|o0nm&dn2f+tMWdsS64R|E%;FPLeKZ0ZRBArvih=G;wqHo<)?Q^IrI!PoY5QNcugR-hmzrkqKd zRl#MdX75mK2Ed@`bdoq-G)m$UA4XX|9DorXU(7VI5CAz?jjtMZTmT|Lw zntYaT|3yl)5Q3v>Ja1uufy1#?(EET3I=x4*`pUlO!4z9)dp}){KB|PX{Q*Bc1sV(V zGO!knIAywHb&NcWF-M;DJv%~oI z$E)|uV4EK-L$1~i6}1LT=;4zUo0O5;<}FTBH@jCV_d+yA_U7`Di1SzU#|uyI zi9P&oxUEmha1imiSUG;Q)>2N<7OeaS`apy^2v!9hJNM~26aXXm{i>DY$(`ogn)}uw zu7m$rg%#76Z+y-(-pvIGQVdY|o%cbWAHp#_o6R6c4$1+-wqxUWXm!+H7fZ8#!mTmT zQA5TJFCPA9g*opg9G4HDCcinmXz3pqs8AJ$=v`}9AI6tShDPO=nYcNOOnSz`_}d5FcEpptLaZS!@ZWPkTjHuOf@ghdNf=uTeR zkOXsa6=Da~p9gLdV3n+guX`&zmN+IskaH7RV^m|X7OM^f-uPzWwG3fYY9J@-HVdGYlzS$@U2m(c^9MuROHi@2{-j-vcX?0HT zXcbVnBMH*W&inc!aD;EmZAK1D#qMov0+|RZ^=e1*MaXqP(B)wtkescSq7wjqq%$`2 zQs(I9VUv=gu5JHKWf8b1%EH33_*H{nxz?gx0Fbjr8B-ATfWJ68y<8Z4B4Y+bb-H^d zVq9WkkTUf~jMUlr4nZp==^-fjxDOGM}ryRLY zwxLw- zdgY%H=sW?fBm-~^C!RV>S0qeD$lbG|mkSQkB}K^3S68OuRAbTk7fwgzgl=dpT$Qfw zR)9B_AW*9SUg@=v^IVj#XRixrwfwOT9L3L~Q&1@}r_nof8Tjb&Qw{{xn zPY4f+Z@y@73Oavf0Z9JUPe%wGj_3G{Gk}tRH|LlQstgOG)JM(rVUjgfSXkGK@v=w5 zC9;lJsx0mz3w_qldXyRVd}O%i@ob1ngTjRLdks zHq7wJ>m849b*e&OVUuoQ6XwB*Nb#u-Xgme~?;>(n;rFXR6Q>v!|U z3&qaht3jT7b3SPgT5mOTpdJybOhEr5_SJHXgbNeMZ-E6>31yk0x=2-GVe*R6?BzrL05Bz;{f9#$K1 z(*^xhsQsM_*v?T#&5kaVY)ntES6$Nw)v(vFi8vsvjh&L(vUt=XxsFs;0+JbbKNXa!4 z_zkhkiOw%vGc4k!xX%g%OzO6?v_^d#gNt>FAH`?J2vo$ptBet>ig}k!WLwYl$ws+a z0yTvV!~FZ(&w<_a=w`WiRrhWnz3Gk0S%&BU_V=1TF|+R@NNL0fv?;-P$CMwF%GXm) zl1M}0?M)jaQWZla$%I70Qv|9)XIQM@PzZ@W;Z>#-9N*C@qkGNU`fG_AqQ%F#euX?9 z1CN}i3#f1Po=Y$qaZiYL8L98~gaQ!X1pRgqjg(9ov1KwgbpDGdz;q_VBA|gl0P!Xk zb{NLqS{Vd}N>Uga7WuUd8yjYA=e6X1$HjiP35WcA^f)=MDb#hxM{@4P5&XrVpUi)7 z<_k8&;=3t}W0!_wKnB~UqaBp>1i%;FO6S4P8l-O(Q}AVB`j(HyX%KIn^hTFCvzP9< zO$#K|UgUOt2kJWbhE^Nl79O>1BsPCE3%~GR#xVmnW$*XdJ-@c! z-(4d^EE^o~^$iSwuhHIZ%a(=%7{mufLK!5`H-Oq(3=#@Zfus69H^m=;8vF*(9$@^? z(n|Vp_+3U2%E|-PS@;Sq9>=yV^Q{X?G1? zX?_5b7!fsfJivF$AF$|u4LNLu-qgkeCbYbgBH(z6TZ}&sY?@mu7F>9_aV=d< z(=x7RzBnc;{MrjdX z%MphPhg(0M#yz#;t!6Ckn=usB6AT?db_(aKCWClQCp1CA8kL%xsU0qOJq_={sv%4&>Nr zz-_*M{d#Nptar$M__HVpaxbtw3a6j_`u4y>SzR4h%ws+Q{ACd^mYR0o4E+#0F>mr@ z1dalJl1WYtmQG&d4RAFrSd54P;gtyy%XLCBNEt==S`#XRn@%Zg_P3>AA(1a30Up7hXOZQS^~*#`nhUR`c|$w`4in_p&0_ zvW4t%Z(W3f*^SjztIM;)Ti@aGE_|`=d_50rXlLJ4YHI4>Tzbo<$1(`d;6eikNgcX<~5(duVYA99@z|TTo>cHoiRP zCdsu1jxG1~(4*3cW9UfiUMvZnx0l5IZ*f0Hd>9o~19Fev2sg(eB725>G? zaPlj3HN$rK4UK9op3O8kM!Q|g&nbeo28>$LV|(5R(Lq2|U0k?sVJg_TyY3fzjSE5n zprufOwXkbkla3J`syF|&C5~K=Clxg=wNYv0LCxh_(oAmGj2RB2;imq5*jv0qaxzIn zdH)8(Q76431kahvj)N1Q<25Jtoz1Uk4kmW71-hWcrGeni))PwPu+%-RM>cEU3Q!)g z7-koBp<}!f%HpSbMwlDtA5V#+huV@JDzM`AUg;IL$JdMqxyR_Vq=>a-eVe1zfxEyv z0$$vTuM`l_fYnD21hh{-njfLvEef%BbbRTt&;dmM2RSG2Jr?#46%jzJK_$!0o3ad{ z1;PPuBAv`O{OZ=008I{L-+#6WnGqUWJ{1L2doGb$%?fBLS_}HXm^2fm!rnR$$A?{!+G~c%BE#-dVCK- zVkiPyCCK&7#wUdIvI)e@DvN+iA6Ci&fvpo;nc;vqgf%ffygeKBfpns)=ZdfS)RK2| zVHH=Rqsu6iEHuh#N$L4r6f(Z-i8e~hYhKh$RlN7K-;*LLLKMr{x|VwEA4(Ov2T8No z%}a2hwoIhZP(%-Xe~%_YVWsc2*t0P0_fsePHJkiEAlJ*{)u&oWra}%}Bq}zBYn>Zx7QC+ zUc4a48j4IvxI-iDPju@;y4JQw0m=Hd(E$Xia3YNa$@VC|l=mt&U-K%-58$yQ+MkF5 z`3D2M@7FJ%YRgW#TODT%^cDyXE1#Zyyrn=-FMcmwo*#Qk zJ{J%C&2yVIjV%H&fDrT%XcJyXt7@GI)L*6|%0AB~(aD&)>%ZXu9}kQQAdLdmZ%XIe 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
    h+$Z9dWwXnYmsD; z2q@v7mPKO{5)v|o5QaSAuYjjb5V4ya0<;gL?_pg>AE~>- zc=~h|clKf22LAqtZWaD^Iez8;{`G%%ctsd*beZM_CBzn9=>CeC%MNqT$v5 E2OjWW!T*y?t+H;0|Pp` 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/en/essential-modding/index.png b/assets/images/social/en/essential-modding/index.png new file mode 100644 index 0000000000000000000000000000000000000000..e235b5f887a3719a2b504e324294439eb6d203d9 GIT binary patch literal 41875 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
    KfB}+8s$JL5vDTNjqq2eOG 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 k5cqF4_y6O0i_@% literal 0 HcmV?d00001 diff --git a/assets/images/social/en/essential-modding/various-fixes.png b/assets/images/social/en/essential-modding/various-fixes.png new file mode 100644 index 0000000000000000000000000000000000000000..c81e8cdb912f1bdb9c1543f3188a10b1d3c71214 GIT binary patch literal 37057 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

    iU|dTieYjSy{c|5c4j4H>k+I(T-Qi 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%0Dl<-dj3R@ZQ$sXYvwp9SRIgl4WF~f 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 Z^Zf3xVVxp(6E9g(%16|cQWZ_F{tpP8aXy7un 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

    ^grBNU~s*Bix$z)&xKp*7Z!i^hdjO`qeMi7ca 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�d*Bg9h+bPS& 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 Uf8Q@KAh${Bn5sg$ywP9(3m4Bnr~m)} literal 0 HcmV?d00001 diff --git a/assets/images/social/en/preparation.png b/assets/images/social/en/preparation.png new file mode 100644 index 0000000000000000000000000000000000000000..dfa9abc12de99c31c7043c53dd7ee1a6ec677420 GIT binary patch literal 38020 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

    anowPEOC$%x}6%v=Cex(T#g7HxsB8AID>x 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%0D?_lKhe6Z>!AI_Rzz@ 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

    9{m`pdph0{n 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/en/resources/similar-guides-modpacks.png b/assets/images/social/en/resources/similar-guides-modpacks.png new file mode 100644 index 0000000000000000000000000000000000000000..257f5c329e465a35c5bcdde2b18a96b4acf05949 GIT binary patch literal 55662 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 avMJ~H4_$tJ&M2JR*PYwUjdHd+{_^zz literal 0 HcmV?d00001 diff --git a/assets/images/social/en/resources/troubleshooting.png b/assets/images/social/en/resources/troubleshooting.png new file mode 100644 index 0000000000000000000000000000000000000000..7071350a99ffed1bb1955c8122b92ce686238585 GIT binary patch literal 38847 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/additional-setup.png b/assets/images/social/ru/additional-setup.png new file mode 100644 index 0000000000000000000000000000000000000000..95e8316e7e00021020cb921e830dd4f5a860b0ab GIT binary patch literal 49156 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�F=H8 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�rsx`4k@^R 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 Bpf3Ob literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/downgrading/downgrading-the-radio.png b/assets/images/social/ru/downgrading/downgrading-the-radio.png new file mode 100644 index 0000000000000000000000000000000000000000..2575d8a5a94d24cbf7049ba852ef3d2df0e4942a GIT binary patch literal 44825 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

    >TDP<1P1Fxd5?5B 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

    KIn_CqRSNt@%$3`SUvnL>AWadYf<{Ww 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 Gwf_U@icQS` literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/essential-modding/zolikapatch.png b/assets/images/social/ru/essential-modding/zolikapatch.png new file mode 100644 index 0000000000000000000000000000000000000000..71248e7072d01f155917bbb12e39d6043c603df6 GIT binary patch literal 43269 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

    4Smng$i3aZ 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 F{}-`9(gy$l literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/extras/modloading.png b/assets/images/social/ru/extras/modloading.png new file mode 100644 index 0000000000000000000000000000000000000000..669a8cea09ef763ee069853c62a3e475aecf7a4b GIT binary patch literal 37260 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/extras/trainers.png b/assets/images/social/ru/extras/trainers.png new file mode 100644 index 0000000000000000000000000000000000000000..c727877d2546368624e3fd164bb681b3751b3def GIT binary patch literal 35174 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/index.png b/assets/images/social/ru/index.png new file mode 100644 index 0000000000000000000000000000000000000000..70d83e1373b5855227e02d738cfd16072e020681 GIT binary patch literal 42500 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 Q3?u{PoZQ*O(|R}m4|NL!5C8xG literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/optimization.png b/assets/images/social/ru/optimization.png new file mode 100644 index 0000000000000000000000000000000000000000..733a654bdbf2fd39756e0625bf80b87748fc9066 GIT binary patch literal 37546 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 q(LCyC^1r|Q?+s)6UoMjQPj$;U7J{eJ-I5i8;V literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/preparation.png b/assets/images/social/ru/preparation.png new file mode 100644 index 0000000000000000000000000000000000000000..2dea7f1c340265ded759c2e64173d83a9db97e2a GIT binary patch literal 35515 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

    9{m`pdph0{n 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/resources/similar-guides-modpacks.png b/assets/images/social/ru/resources/similar-guides-modpacks.png new file mode 100644 index 0000000000000000000000000000000000000000..257f5c329e465a35c5bcdde2b18a96b4acf05949 GIT binary patch literal 55662 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 avMJ~H4_$tJ&M2JR*PYwUjdHd+{_^zz literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/resources/troubleshooting.png b/assets/images/social/ru/resources/troubleshooting.png new file mode 100644 index 0000000000000000000000000000000000000000..7071350a99ffed1bb1955c8122b92ce686238585 GIT binary patch literal 38847 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 literal 0 HcmV?d00001 diff --git a/assets/iv-logo-favicon.webp b/assets/iv-logo-favicon.webp new file mode 100644 index 0000000000000000000000000000000000000000..c60cf6d5af20d8702af36065558c12893bcfb1ad GIT binary patch literal 2122 zcmYjSdpy(YAOCKyIauZz$Gzl`F@<5+l5$yLPB^)fF*TH2QkinC$jB{XC2~rI$w7`w zt}WH%R%62GU@p zcuD{Opd^6JkB!E-*w=yp07NP#jIG+xMESb{$9y$P6lw_T^AwaqZA<#nOecrovAUB` z%^S8kc?6Sqe2b_xBPUOEEpYpEGTCe%6p_0Zg|`j`Q&oA*&dTvQ9pYppMm~l5AYt;Q z?eFT0)uWBfLymCJudUbS9-P`Wl$6$(At5=T{oBh+O_n)|=gnb$&jS_9BMH~yLe3WLc}6odB`byvVN4A~4vgD}!p z^Sk;unxp-pU;0XHOW$_8={KyXV>6hO7?E#>G`sA%UM`(`X5jB(rJho3zE<$HL76J! z#XUh;Q4ZV^Gu*N&qi5B2@A>Ol~; zJ@<}^Y|+C^7S9Adiew4Li7G-4JUo}voZdtv8Mm*7Euy8bPeifIMN4Oxt-}X7X4q71 zdAiliE@&HW_<}Ijn^9kc+d1rL;hi^*R@=84h4V?%eAi8I+LeOi9dSeyYI#_=#uN{c z4>DU*b@aUgrJ=~K^Mg#kX><9J9t`J3U_fjKp9~1zQsagQ0PNNTN~D|YbSmsF5Ri%w_6nM9E)LH^caRPq~@EMyv{8%jyx~cmH3TD zb?)H4Rv#cj+H_x_wqxfkH)-D{dTwbzY6NSl?JcoA;RLZ^^By1aCS-uT*k)jTm7hgK z@IhP7JjHCAb=B}Q`LC3k{lpsXCeO$s)NnHEV)*sUFUh=*9t_PV%Q1Kt*oDBHC9DTU zTbhtpW+8{RPM9J6uKpM zr{eT(6S_{}=AbvXI(_H=$K)A{1t)G+H)Oo4e&1BUz%G`=xL^ExaIxmsw@zIVe|XLM$8(i$>Mt~u zH~KMKhIG4XFVW+Hsi)+x$JuRtZk;jGkmC@7o%)oRUit69$4LrH{xmG+;gX?~FEsEk1<;St)i66Vc+RPTjS$cMsR5_|r6y#JHX zI_VnHv@Un|)6_a=vwfue5d_jg&*bW&f^qmgt)81lyKmRw|WP0lh~8a;P~ zb+dbAvPHy&MQ=PQta8O7y5)uWDuGitQPXm|*3!~+>>?W;4DPuuh0J;Q6Gw^%8Te606w7Jgt8Q{yeF=%UO@oA^zy zVsapbgC7NP5)S0WNMT8dT@@%ft-|88k+8!zM|F#mBmK9#{QklY{M1Ev{var Wi=Object.create;var gr=Object.defineProperty;var Di=Object.getOwnPropertyDescriptor;var Vi=Object.getOwnPropertyNames,Vt=Object.getOwnPropertySymbols,Ni=Object.getPrototypeOf,yr=Object.prototype.hasOwnProperty,ao=Object.prototype.propertyIsEnumerable;var io=(e,t,r)=>t in e?gr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,$=(e,t)=>{for(var r in t||(t={}))yr.call(t,r)&&io(e,r,t[r]);if(Vt)for(var r of Vt(t))ao.call(t,r)&&io(e,r,t[r]);return e};var so=(e,t)=>{var r={};for(var o in e)yr.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(e!=null&&Vt)for(var o of Vt(e))t.indexOf(o)<0&&ao.call(e,o)&&(r[o]=e[o]);return r};var xr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var zi=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Vi(t))!yr.call(e,n)&&n!==r&&gr(e,n,{get:()=>t[n],enumerable:!(o=Di(t,n))||o.enumerable});return e};var Mt=(e,t,r)=>(r=e!=null?Wi(Ni(e)):{},zi(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e));var co=(e,t,r)=>new Promise((o,n)=>{var i=p=>{try{s(r.next(p))}catch(c){n(c)}},a=p=>{try{s(r.throw(p))}catch(c){n(c)}},s=p=>p.done?o(p.value):Promise.resolve(p.value).then(i,a);s((r=r.apply(e,t)).next())});var lo=xr((Er,po)=>{(function(e,t){typeof Er=="object"&&typeof po!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(Er,function(){"use strict";function e(r){var o=!0,n=!1,i=null,a={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 s(k){return!!(k&&k!==document&&k.nodeName!=="HTML"&&k.nodeName!=="BODY"&&"classList"in k&&"contains"in k.classList)}function p(k){var ft=k.type,qe=k.tagName;return!!(qe==="INPUT"&&a[ft]&&!k.readOnly||qe==="TEXTAREA"&&!k.readOnly||k.isContentEditable)}function c(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||(s(r.activeElement)&&c(r.activeElement),o=!0)}function u(k){o=!1}function d(k){s(k.target)&&(o||p(k.target))&&c(k.target)}function y(k){s(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 L(k){document.visibilityState==="hidden"&&(n&&(o=!0),X())}function X(){document.addEventListener("mousemove",J),document.addEventListener("mousedown",J),document.addEventListener("mouseup",J),document.addEventListener("pointermove",J),document.addEventListener("pointerdown",J),document.addEventListener("pointerup",J),document.addEventListener("touchmove",J),document.addEventListener("touchstart",J),document.addEventListener("touchend",J)}function te(){document.removeEventListener("mousemove",J),document.removeEventListener("mousedown",J),document.removeEventListener("mouseup",J),document.removeEventListener("pointermove",J),document.removeEventListener("pointerdown",J),document.removeEventListener("pointerup",J),document.removeEventListener("touchmove",J),document.removeEventListener("touchstart",J),document.removeEventListener("touchend",J)}function J(k){k.target.nodeName&&k.target.nodeName.toLowerCase()==="html"||(o=!1,te())}document.addEventListener("keydown",f,!0),document.addEventListener("mousedown",u,!0),document.addEventListener("pointerdown",u,!0),document.addEventListener("touchstart",u,!0),document.addEventListener("visibilitychange",L,!0),X(),r.addEventListener("focus",d,!0),r.addEventListener("blur",y,!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 qr=xr((hy,On)=>{"use strict";/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var $a=/["'&<>]/;On.exports=Pa;function Pa(e){var t=""+e,r=$a.exec(t);if(!r)return t;var o,n="",i=0,a=0;for(i=r.index;i{/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */(function(t,r){typeof It=="object"&&typeof Yr=="object"?Yr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof It=="object"?It.ClipboardJS=r():t.ClipboardJS=r()})(It,function(){return function(){var e={686:function(o,n,i){"use strict";i.d(n,{default:function(){return Ui}});var a=i(279),s=i.n(a),p=i(370),c=i.n(p),l=i(817),f=i.n(l);function u(V){try{return document.execCommand(V)}catch(A){return!1}}var d=function(A){var M=f()(A);return u("cut"),M},y=d;function L(V){var A=document.documentElement.getAttribute("dir")==="rtl",M=document.createElement("textarea");M.style.fontSize="12pt",M.style.border="0",M.style.padding="0",M.style.margin="0",M.style.position="absolute",M.style[A?"right":"left"]="-9999px";var F=window.pageYOffset||document.documentElement.scrollTop;return M.style.top="".concat(F,"px"),M.setAttribute("readonly",""),M.value=V,M}var X=function(A,M){var F=L(A);M.container.appendChild(F);var D=f()(F);return u("copy"),F.remove(),D},te=function(A){var M=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},F="";return typeof A=="string"?F=X(A,M):A instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(A==null?void 0:A.type)?F=X(A.value,M):(F=f()(A),u("copy")),F},J=te;function k(V){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?k=function(M){return typeof M}:k=function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M},k(V)}var ft=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},M=A.action,F=M===void 0?"copy":M,D=A.container,Y=A.target,$e=A.text;if(F!=="copy"&&F!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(Y!==void 0)if(Y&&k(Y)==="object"&&Y.nodeType===1){if(F==="copy"&&Y.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(F==="cut"&&(Y.hasAttribute("readonly")||Y.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($e)return J($e,{container:D});if(Y)return F==="cut"?y(Y):J(Y,{container:D})},qe=ft;function Fe(V){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Fe=function(M){return typeof M}:Fe=function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M},Fe(V)}function ki(V,A){if(!(V instanceof A))throw new TypeError("Cannot call a class as a function")}function no(V,A){for(var M=0;M0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof D.action=="function"?D.action:this.defaultAction,this.target=typeof D.target=="function"?D.target:this.defaultTarget,this.text=typeof D.text=="function"?D.text:this.defaultText,this.container=Fe(D.container)==="object"?D.container:document.body}},{key:"listenClick",value:function(D){var Y=this;this.listener=c()(D,"click",function($e){return Y.onClick($e)})}},{key:"onClick",value:function(D){var Y=D.delegateTarget||D.currentTarget,$e=this.action(Y)||"copy",Dt=qe({action:$e,container:this.container,target:this.target(Y),text:this.text(Y)});this.emit(Dt?"success":"error",{action:$e,text:Dt,trigger:Y,clearSelection:function(){Y&&Y.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(D){return vr("action",D)}},{key:"defaultTarget",value:function(D){var Y=vr("target",D);if(Y)return document.querySelector(Y)}},{key:"defaultText",value:function(D){return vr("text",D)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(D){var Y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return J(D,Y)}},{key:"cut",value:function(D){return y(D)}},{key:"isSupported",value:function(){var D=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],Y=typeof D=="string"?[D]:D,$e=!!document.queryCommandSupported;return Y.forEach(function(Dt){$e=$e&&!!document.queryCommandSupported(Dt)}),$e}}]),M}(s()),Ui=Fi},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 a(s,p){for(;s&&s.nodeType!==n;){if(typeof s.matches=="function"&&s.matches(p))return s;s=s.parentNode}}o.exports=a},438:function(o,n,i){var a=i(828);function s(l,f,u,d,y){var L=c.apply(this,arguments);return l.addEventListener(u,L,y),{destroy:function(){l.removeEventListener(u,L,y)}}}function p(l,f,u,d,y){return typeof l.addEventListener=="function"?s.apply(null,arguments):typeof u=="function"?s.bind(null,document).apply(null,arguments):(typeof l=="string"&&(l=document.querySelectorAll(l)),Array.prototype.map.call(l,function(L){return s(L,f,u,d,y)}))}function c(l,f,u,d){return function(y){y.delegateTarget=a(y.target,f),y.delegateTarget&&d.call(l,y)}}o.exports=p},879:function(o,n){n.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},n.nodeList=function(i){var a=Object.prototype.toString.call(i);return i!==void 0&&(a==="[object NodeList]"||a==="[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 a=Object.prototype.toString.call(i);return a==="[object Function]"}},370:function(o,n,i){var a=i(879),s=i(438);function p(u,d,y){if(!u&&!d&&!y)throw new Error("Missing required arguments");if(!a.string(d))throw new TypeError("Second argument must be a String");if(!a.fn(y))throw new TypeError("Third argument must be a Function");if(a.node(u))return c(u,d,y);if(a.nodeList(u))return l(u,d,y);if(a.string(u))return f(u,d,y);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function c(u,d,y){return u.addEventListener(d,y),{destroy:function(){u.removeEventListener(d,y)}}}function l(u,d,y){return Array.prototype.forEach.call(u,function(L){L.addEventListener(d,y)}),{destroy:function(){Array.prototype.forEach.call(u,function(L){L.removeEventListener(d,y)})}}}function f(u,d,y){return s(document.body,u,d,y)}o.exports=p},817:function(o){function n(i){var a;if(i.nodeName==="SELECT")i.focus(),a=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var s=i.hasAttribute("readonly");s||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),s||i.removeAttribute("readonly"),a=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var p=window.getSelection(),c=document.createRange();c.selectNodeContents(i),p.removeAllRanges(),p.addRange(c),a=p.toString()}return a}o.exports=n},279:function(o){function n(){}n.prototype={on:function(i,a,s){var p=this.e||(this.e={});return(p[i]||(p[i]=[])).push({fn:a,ctx:s}),this},once:function(i,a,s){var p=this;function c(){p.off(i,c),a.apply(s,arguments)}return c._=a,this.on(i,c,s)},emit:function(i){var a=[].slice.call(arguments,1),s=((this.e||(this.e={}))[i]||[]).slice(),p=0,c=s.length;for(p;p0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[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 N(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var o=r.call(e),n,i=[],a;try{for(;(t===void 0||t-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(s){a={error:s}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i}function q(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,i;o1||p(d,L)})},y&&(n[d]=y(n[d])))}function p(d,y){try{c(o[d](y))}catch(L){u(i[0][3],L)}}function c(d){d.value instanceof nt?Promise.resolve(d.value.v).then(l,f):u(i[0][2],d)}function l(d){p("next",d)}function f(d){p("throw",d)}function u(d,y){d(y),i.shift(),i.length&&p(i[0][0],i[0][1])}}function uo(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 he=="function"?he(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(a){return new Promise(function(s,p){a=e[i](a),n(s,p,a.done,a.value)})}}function n(i,a,s,p){Promise.resolve(p).then(function(c){i({value:c,done:s})},a)}}function H(e){return typeof e=="function"}function ut(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 zt=ut(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 Qe(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Ue=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 a=this._parentage;if(a)if(this._parentage=null,Array.isArray(a))try{for(var s=he(a),p=s.next();!p.done;p=s.next()){var c=p.value;c.remove(this)}}catch(L){t={error:L}}finally{try{p&&!p.done&&(r=s.return)&&r.call(s)}finally{if(t)throw t.error}}else a.remove(this);var l=this.initialTeardown;if(H(l))try{l()}catch(L){i=L instanceof zt?L.errors:[L]}var f=this._finalizers;if(f){this._finalizers=null;try{for(var u=he(f),d=u.next();!d.done;d=u.next()){var y=d.value;try{ho(y)}catch(L){i=i!=null?i:[],L instanceof zt?i=q(q([],N(i)),N(L.errors)):i.push(L)}}}catch(L){o={error:L}}finally{try{d&&!d.done&&(n=u.return)&&n.call(u)}finally{if(o)throw o.error}}}if(i)throw new zt(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)ho(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)&&Qe(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Qe(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var Tr=Ue.EMPTY;function qt(e){return e instanceof Ue||e&&"closed"in e&&H(e.remove)&&H(e.add)&&H(e.unsubscribe)}function ho(e){H(e)?e():e.unsubscribe()}var Pe={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var dt={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,a=n.isStopped,s=n.observers;return i||a?Tr:(this.currentObservers=null,s.push(r),new Ue(function(){o.currentObservers=null,Qe(s,r)}))},t.prototype._checkFinalizedStatuses=function(r){var o=this,n=o.hasError,i=o.thrownError,a=o.isStopped;n?r.error(i):a&&r.complete()},t.prototype.asObservable=function(){var r=new j;return r.source=this,r},t.create=function(r,o){return new To(r,o)},t}(j);var To=function(e){oe(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:Tr},t}(g);var _r=function(e){oe(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}(g);var At={now:function(){return(At.delegate||Date).now()},delegate:void 0};var Ct=function(e){oe(t,e);function t(r,o,n){r===void 0&&(r=1/0),o===void 0&&(o=1/0),n===void 0&&(n=At);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,a=o._infiniteTimeWindow,s=o._timestampProvider,p=o._windowTime;n||(i.push(r),!a&&i.push(s.now()+p)),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,a=n._buffer,s=a.slice(),p=0;p0?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}(gt);var Lo=function(e){oe(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(yt);var kr=new Lo(Oo);var Mo=function(e){oe(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=vt.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 a=r.actions;o!=null&&((i=a[a.length-1])===null||i===void 0?void 0:i.id)!==o&&(vt.cancelAnimationFrame(o),r._scheduled=void 0)},t}(gt);var _o=function(e){oe(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}(yt);var me=new _o(Mo);var S=new j(function(e){return e.complete()});function Yt(e){return e&&H(e.schedule)}function Hr(e){return e[e.length-1]}function Xe(e){return H(Hr(e))?e.pop():void 0}function ke(e){return Yt(Hr(e))?e.pop():void 0}function Bt(e,t){return typeof Hr(e)=="number"?e.pop():t}var xt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Gt(e){return H(e==null?void 0:e.then)}function Jt(e){return H(e[bt])}function Xt(e){return Symbol.asyncIterator&&H(e==null?void 0:e[Symbol.asyncIterator])}function Zt(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 Zi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var er=Zi();function tr(e){return H(e==null?void 0:e[er])}function rr(e){return fo(this,arguments,function(){var r,o,n,i;return Nt(this,function(a){switch(a.label){case 0:r=e.getReader(),a.label=1;case 1:a.trys.push([1,,9,10]),a.label=2;case 2:return[4,nt(r.read())];case 3:return o=a.sent(),n=o.value,i=o.done,i?[4,nt(void 0)]:[3,5];case 4:return[2,a.sent()];case 5:return[4,nt(n)];case 6:return[4,a.sent()];case 7:return a.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function or(e){return H(e==null?void 0:e.getReader)}function U(e){if(e instanceof j)return e;if(e!=null){if(Jt(e))return ea(e);if(xt(e))return ta(e);if(Gt(e))return ra(e);if(Xt(e))return Ao(e);if(tr(e))return oa(e);if(or(e))return na(e)}throw Zt(e)}function ea(e){return new j(function(t){var r=e[bt]();if(H(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function ta(e){return new j(function(t){for(var r=0;r=2;return function(o){return o.pipe(e?b(function(n,i){return e(n,i,o)}):le,Te(1),r?De(t):Qo(function(){return new ir}))}}function jr(e){return e<=0?function(){return S}:E(function(t,r){var o=[];t.subscribe(T(r,function(n){o.push(n),e=2,!0))}function pe(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new g}:t,o=e.resetOnError,n=o===void 0?!0:o,i=e.resetOnComplete,a=i===void 0?!0:i,s=e.resetOnRefCountZero,p=s===void 0?!0:s;return function(c){var l,f,u,d=0,y=!1,L=!1,X=function(){f==null||f.unsubscribe(),f=void 0},te=function(){X(),l=u=void 0,y=L=!1},J=function(){var k=l;te(),k==null||k.unsubscribe()};return E(function(k,ft){d++,!L&&!y&&X();var qe=u=u!=null?u:r();ft.add(function(){d--,d===0&&!L&&!y&&(f=Ur(J,p))}),qe.subscribe(ft),!l&&d>0&&(l=new at({next:function(Fe){return qe.next(Fe)},error:function(Fe){L=!0,X(),f=Ur(te,n,Fe),qe.error(Fe)},complete:function(){y=!0,X(),f=Ur(te,a),qe.complete()}}),U(k).subscribe(l))})(c)}}function Ur(e,t){for(var r=[],o=2;oe.next(document)),e}function P(e,t=document){return Array.from(t.querySelectorAll(e))}function R(e,t=document){let r=fe(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function fe(e,t=document){return t.querySelector(e)||void 0}function Ie(){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 wa=O(h(document.body,"focusin"),h(document.body,"focusout")).pipe(_e(1),Q(void 0),m(()=>Ie()||document.body),G(1));function et(e){return wa.pipe(m(t=>e.contains(t)),K())}function $t(e,t){return C(()=>O(h(e,"mouseenter").pipe(m(()=>!0)),h(e,"mouseleave").pipe(m(()=>!1))).pipe(t?Ht(r=>Le(+!r*t)):le,Q(e.matches(":hover"))))}function Jo(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)Jo(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)Jo(o,n);return o}function sr(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function Tt(e){let t=x("script",{src:e});return C(()=>(document.head.appendChild(t),O(h(t,"load"),h(t,"error").pipe(v(()=>$r(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(m(()=>{}),_(()=>document.head.removeChild(t)),Te(1))))}var Xo=new g,Ta=C(()=>typeof ResizeObserver=="undefined"?Tt("https://unpkg.com/resize-observer-polyfill"):I(void 0)).pipe(m(()=>new ResizeObserver(e=>e.forEach(t=>Xo.next(t)))),v(e=>O(Ye,I(e)).pipe(_(()=>e.disconnect()))),G(1));function ce(e){return{width:e.offsetWidth,height:e.offsetHeight}}function ge(e){let t=e;for(;t.clientWidth===0&&t.parentElement;)t=t.parentElement;return Ta.pipe(w(r=>r.observe(t)),v(r=>Xo.pipe(b(o=>o.target===t),_(()=>r.unobserve(t)))),m(()=>ce(e)),Q(ce(e)))}function St(e){return{width:e.scrollWidth,height:e.scrollHeight}}function cr(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 Zo(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 Ve(e){return{x:e.offsetLeft,y:e.offsetTop}}function en(e){let t=e.getBoundingClientRect();return{x:t.x+window.scrollX,y:t.y+window.scrollY}}function tn(e){return O(h(window,"load"),h(window,"resize")).pipe(Me(0,me),m(()=>Ve(e)),Q(Ve(e)))}function pr(e){return{x:e.scrollLeft,y:e.scrollTop}}function Ne(e){return O(h(e,"scroll"),h(window,"scroll"),h(window,"resize")).pipe(Me(0,me),m(()=>pr(e)),Q(pr(e)))}var rn=new g,Sa=C(()=>I(new IntersectionObserver(e=>{for(let t of e)rn.next(t)},{threshold:0}))).pipe(v(e=>O(Ye,I(e)).pipe(_(()=>e.disconnect()))),G(1));function tt(e){return Sa.pipe(w(t=>t.observe(e)),v(t=>rn.pipe(b(({target:r})=>r===e),_(()=>t.unobserve(e)),m(({isIntersecting:r})=>r))))}function on(e,t=16){return Ne(e).pipe(m(({y:r})=>{let o=ce(e),n=St(e);return r>=n.height-o.height-t}),K())}var lr={drawer:R("[data-md-toggle=drawer]"),search:R("[data-md-toggle=search]")};function nn(e){return lr[e].checked}function Je(e,t){lr[e].checked!==t&&lr[e].click()}function ze(e){let t=lr[e];return h(t,"change").pipe(m(()=>t.checked),Q(t.checked))}function Oa(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 La(){return O(h(window,"compositionstart").pipe(m(()=>!0)),h(window,"compositionend").pipe(m(()=>!1))).pipe(Q(!1))}function an(){let e=h(window,"keydown").pipe(b(t=>!(t.metaKey||t.ctrlKey)),m(t=>({mode:nn("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),b(({mode:t,type:r})=>{if(t==="global"){let o=Ie();if(typeof o!="undefined")return!Oa(o,r)}return!0}),pe());return La().pipe(v(t=>t?S:e))}function ye(){return new URL(location.href)}function lt(e,t=!1){if(B("navigation.instant")&&!t){let r=x("a",{href:e.href});document.body.appendChild(r),r.click(),r.remove()}else location.href=e.href}function sn(){return new g}function cn(){return location.hash.slice(1)}function pn(e){let t=x("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function Ma(e){return O(h(window,"hashchange"),e).pipe(m(cn),Q(cn()),b(t=>t.length>0),G(1))}function ln(e){return Ma(e).pipe(m(t=>fe(`[id="${t}"]`)),b(t=>typeof t!="undefined"))}function Pt(e){let t=matchMedia(e);return ar(r=>t.addListener(()=>r(t.matches))).pipe(Q(t.matches))}function mn(){let e=matchMedia("print");return O(h(window,"beforeprint").pipe(m(()=>!0)),h(window,"afterprint").pipe(m(()=>!1))).pipe(Q(e.matches))}function Nr(e,t){return e.pipe(v(r=>r?t():S))}function zr(e,t){return new j(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 a=(i=o.getResponseHeader("Content-Length"))!=null?i:0;t.progress$.next(n.loaded/+a*100)}}),t.progress$.next(5)),o.send(),()=>o.abort()})}function je(e,t){return zr(e,t).pipe(v(r=>r.text()),m(r=>JSON.parse(r)),G(1))}function fn(e,t){let r=new DOMParser;return zr(e,t).pipe(v(o=>o.text()),m(o=>r.parseFromString(o,"text/html")),G(1))}function un(e,t){let r=new DOMParser;return zr(e,t).pipe(v(o=>o.text()),m(o=>r.parseFromString(o,"text/xml")),G(1))}function dn(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function hn(){return O(h(window,"scroll",{passive:!0}),h(window,"resize",{passive:!0})).pipe(m(dn),Q(dn()))}function bn(){return{width:innerWidth,height:innerHeight}}function vn(){return h(window,"resize",{passive:!0}).pipe(m(bn),Q(bn()))}function gn(){return z([hn(),vn()]).pipe(m(([e,t])=>({offset:e,size:t})),G(1))}function mr(e,{viewport$:t,header$:r}){let o=t.pipe(ee("size")),n=z([o,r]).pipe(m(()=>Ve(e)));return z([r,t,n]).pipe(m(([{height:i},{offset:a,size:s},{x:p,y:c}])=>({offset:{x:a.x-p,y:a.y-c+i},size:s})))}function _a(e){return h(e,"message",t=>t.data)}function Aa(e){let t=new g;return t.subscribe(r=>e.postMessage(r)),t}function yn(e,t=new Worker(e)){let r=_a(t),o=Aa(t),n=new g;n.subscribe(o);let i=o.pipe(Z(),ie(!0));return n.pipe(Z(),Re(r.pipe(W(i))),pe())}var Ca=R("#__config"),Ot=JSON.parse(Ca.textContent);Ot.base=`${new URL(Ot.base,ye())}`;function xe(){return Ot}function B(e){return Ot.features.includes(e)}function Ee(e,t){return typeof t!="undefined"?Ot.translations[e].replace("#",t.toString()):Ot.translations[e]}function Se(e,t=document){return R(`[data-md-component=${e}]`,t)}function ae(e,t=document){return P(`[data-md-component=${e}]`,t)}function ka(e){let t=R(".md-typeset > :first-child",e);return h(t,"click",{once:!0}).pipe(m(()=>R(".md-typeset",e)),m(r=>({hash:__md_hash(r.innerHTML)})))}function xn(e){if(!B("announce.dismiss")||!e.childElementCount)return S;if(!e.hidden){let t=R(".md-typeset",e);__md_hash(t.innerHTML)===__md_get("__announce")&&(e.hidden=!0)}return C(()=>{let t=new g;return t.subscribe(({hash:r})=>{e.hidden=!0,__md_set("__announce",r)}),ka(e).pipe(w(r=>t.next(r)),_(()=>t.complete()),m(r=>$({ref:e},r)))})}function Ha(e,{target$:t}){return t.pipe(m(r=>({hidden:r!==e})))}function En(e,t){let r=new g;return r.subscribe(({hidden:o})=>{e.hidden=o}),Ha(e,t).pipe(w(o=>r.next(o)),_(()=>r.complete()),m(o=>$({ref:e},o)))}function Rt(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 wn(...e){return x("div",{class:"md-tooltip2",role:"tooltip"},x("div",{class:"md-tooltip2__inner md-typeset"},e))}function Tn(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},Rt(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},Rt(t),x("span",{class:"md-annotation__index",tabIndex:-1},x("span",{"data-md-annotation-id":e})))}function Sn(e){return x("button",{class:"md-clipboard md-icon",title:Ee("clipboard.copy"),"data-clipboard-target":`#${e} > code`})}var Ln=Mt(qr());function Qr(e,t){let r=t&2,o=t&1,n=Object.keys(e.terms).filter(p=>!e.terms[p]).reduce((p,c)=>[...p,x("del",null,(0,Ln.default)(c))," "],[]).slice(0,-1),i=xe(),a=new URL(e.location,i.base);B("search.highlight")&&a.searchParams.set("h",Object.entries(e.terms).filter(([,p])=>p).reduce((p,[c])=>`${p} ${c}`.trim(),""));let{tags:s}=xe();return x("a",{href:`${a}`,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(p=>{let c=s?p in s?`md-tag-icon md-tag--${s[p]}`:"md-tag-icon":"";return x("span",{class:`md-tag ${c}`},p)})),o>0&&n.length>0&&x("p",{class:"md-search-result__terms"},Ee("search.result.term.missing"),": ",...n)))}function Mn(e){let t=e[0].score,r=[...e],o=xe(),n=r.findIndex(l=>!`${new URL(l.location,o.base)}`.includes("#")),[i]=r.splice(n,1),a=r.findIndex(l=>l.scoreQr(l,1)),...p.length?[x("details",{class:"md-search-result__more"},x("summary",{tabIndex:-1},x("div",null,p.length>0&&p.length===1?Ee("search.result.more.one"):Ee("search.result.more.other",p.length))),...p.map(l=>Qr(l,1)))]:[]];return x("li",{class:"md-search-result__item"},c)}function _n(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"?sr(r):r)))}function Kr(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 An(e){return x("div",{class:"md-typeset__scrollwrap"},x("div",{class:"md-typeset__table"},e))}function Ra(e){var o;let t=xe(),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 Cn(e,t){var o;let r=xe();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":Ee("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(Ra)))}var Ia=0;function ja(e){let t=z([et(e),$t(e)]).pipe(m(([o,n])=>o||n),K()),r=C(()=>Zo(e)).pipe(ne(Ne),pt(1),He(t),m(()=>en(e)));return t.pipe(Ae(o=>o),v(()=>z([t,r])),m(([o,n])=>({active:o,offset:n})),pe())}function Fa(e,t){let{content$:r,viewport$:o}=t,n=`__tooltip2_${Ia++}`;return C(()=>{let i=new g,a=new _r(!1);i.pipe(Z(),ie(!1)).subscribe(a);let s=a.pipe(Ht(c=>Le(+!c*250,kr)),K(),v(c=>c?r:S),w(c=>c.id=n),pe());z([i.pipe(m(({active:c})=>c)),s.pipe(v(c=>$t(c,250)),Q(!1))]).pipe(m(c=>c.some(l=>l))).subscribe(a);let p=a.pipe(b(c=>c),re(s,o),m(([c,l,{size:f}])=>{let u=e.getBoundingClientRect(),d=u.width/2;if(l.role==="tooltip")return{x:d,y:8+u.height};if(u.y>=f.height/2){let{height:y}=ce(l);return{x:d,y:-16-y}}else return{x:d,y:16+u.height}}));return z([s,i,p]).subscribe(([c,{offset:l},f])=>{c.style.setProperty("--md-tooltip-host-x",`${l.x}px`),c.style.setProperty("--md-tooltip-host-y",`${l.y}px`),c.style.setProperty("--md-tooltip-x",`${f.x}px`),c.style.setProperty("--md-tooltip-y",`${f.y}px`),c.classList.toggle("md-tooltip2--top",f.y<0),c.classList.toggle("md-tooltip2--bottom",f.y>=0)}),a.pipe(b(c=>c),re(s,(c,l)=>l),b(c=>c.role==="tooltip")).subscribe(c=>{let l=ce(R(":scope > *",c));c.style.setProperty("--md-tooltip-width",`${l.width}px`),c.style.setProperty("--md-tooltip-tail","0px")}),a.pipe(K(),ve(me),re(s)).subscribe(([c,l])=>{l.classList.toggle("md-tooltip2--active",c)}),z([a.pipe(b(c=>c)),s]).subscribe(([c,l])=>{l.role==="dialog"?(e.setAttribute("aria-controls",n),e.setAttribute("aria-haspopup","dialog")):e.setAttribute("aria-describedby",n)}),a.pipe(b(c=>!c)).subscribe(()=>{e.removeAttribute("aria-controls"),e.removeAttribute("aria-describedby"),e.removeAttribute("aria-haspopup")}),ja(e).pipe(w(c=>i.next(c)),_(()=>i.complete()),m(c=>$({ref:e},c)))})}function mt(e,{viewport$:t},r=document.body){return Fa(e,{content$:new j(o=>{let n=e.title,i=wn(n);return o.next(i),e.removeAttribute("title"),r.append(i),()=>{i.remove(),e.setAttribute("title",n)}}),viewport$:t})}function Ua(e,t){let r=C(()=>z([tn(e),Ne(t)])).pipe(m(([{x:o,y:n},i])=>{let{width:a,height:s}=ce(e);return{x:o-i.x+a/2,y:n-i.y+s/2}}));return et(e).pipe(v(o=>r.pipe(m(n=>({active:o,offset:n})),Te(+!o||1/0))))}function kn(e,t,{target$:r}){let[o,n]=Array.from(e.children);return C(()=>{let i=new g,a=i.pipe(Z(),ie(!0));return i.subscribe({next({offset:s}){e.style.setProperty("--md-tooltip-x",`${s.x}px`),e.style.setProperty("--md-tooltip-y",`${s.y}px`)},complete(){e.style.removeProperty("--md-tooltip-x"),e.style.removeProperty("--md-tooltip-y")}}),tt(e).pipe(W(a)).subscribe(s=>{e.toggleAttribute("data-md-visible",s)}),O(i.pipe(b(({active:s})=>s)),i.pipe(_e(250),b(({active:s})=>!s))).subscribe({next({active:s}){s?e.prepend(o):o.remove()},complete(){e.prepend(o)}}),i.pipe(Me(16,me)).subscribe(({active:s})=>{o.classList.toggle("md-tooltip--active",s)}),i.pipe(pt(125,me),b(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:s})=>s)).subscribe({next(s){s?e.style.setProperty("--md-tooltip-0",`${-s}px`):e.style.removeProperty("--md-tooltip-0")},complete(){e.style.removeProperty("--md-tooltip-0")}}),h(n,"click").pipe(W(a),b(s=>!(s.metaKey||s.ctrlKey))).subscribe(s=>{s.stopPropagation(),s.preventDefault()}),h(n,"mousedown").pipe(W(a),re(i)).subscribe(([s,{active:p}])=>{var c;if(s.button!==0||s.metaKey||s.ctrlKey)s.preventDefault();else if(p){s.preventDefault();let l=e.parentElement.closest(".md-annotation");l instanceof HTMLElement?l.focus():(c=Ie())==null||c.blur()}}),r.pipe(W(a),b(s=>s===o),Ge(125)).subscribe(()=>e.focus()),Ua(e,t).pipe(w(s=>i.next(s)),_(()=>i.complete()),m(s=>$({ref:e},s)))})}function Wa(e){return e.tagName==="CODE"?P(".c, .c1, .cm",e):[e]}function Da(e){let t=[];for(let r of Wa(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 a;for(;a=/(\(\d+\))(!)?/.exec(i.textContent);){let[,s,p]=a;if(typeof p=="undefined"){let c=i.splitText(a.index);i=c.splitText(s.length),t.push(c)}else{i.textContent=s,t.push(i);break}}}}return t}function Hn(e,t){t.append(...Array.from(e.childNodes))}function fr(e,t,{target$:r,print$:o}){let n=t.closest("[id]"),i=n==null?void 0:n.id,a=new Map;for(let s of Da(t)){let[,p]=s.textContent.match(/\((\d+)\)/);fe(`:scope > li:nth-child(${p})`,e)&&(a.set(p,Tn(p,i)),s.replaceWith(a.get(p)))}return a.size===0?S:C(()=>{let s=new g,p=s.pipe(Z(),ie(!0)),c=[];for(let[l,f]of a)c.push([R(".md-typeset",f),R(`:scope > li:nth-child(${l})`,e)]);return o.pipe(W(p)).subscribe(l=>{e.hidden=!l,e.classList.toggle("md-annotation-list",l);for(let[f,u]of c)l?Hn(f,u):Hn(u,f)}),O(...[...a].map(([,l])=>kn(l,t,{target$:r}))).pipe(_(()=>s.complete()),pe())})}function $n(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return $n(t)}}function Pn(e,t){return C(()=>{let r=$n(e);return typeof r!="undefined"?fr(r,e,t):S})}var Rn=Mt(Br());var Va=0;function In(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return In(t)}}function Na(e){return ge(e).pipe(m(({width:t})=>({scrollable:St(e).width>t})),ee("scrollable"))}function jn(e,t){let{matches:r}=matchMedia("(hover)"),o=C(()=>{let n=new g,i=n.pipe(jr(1));n.subscribe(({scrollable:c})=>{c&&r?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")});let a=[];if(Rn.default.isSupported()&&(e.closest(".copy")||B("content.code.copy")&&!e.closest(".no-copy"))){let c=e.closest("pre");c.id=`__code_${Va++}`;let l=Sn(c.id);c.insertBefore(l,e),B("content.tooltips")&&a.push(mt(l,{viewport$}))}let s=e.closest(".highlight");if(s instanceof HTMLElement){let c=In(s);if(typeof c!="undefined"&&(s.classList.contains("annotate")||B("content.code.annotate"))){let l=fr(c,e,t);a.push(ge(s).pipe(W(i),m(({width:f,height:u})=>f&&u),K(),v(f=>f?l:S)))}}return P(":scope > span[id]",e).length&&e.classList.add("md-code__content"),Na(e).pipe(w(c=>n.next(c)),_(()=>n.complete()),m(c=>$({ref:e},c)),Re(...a))});return B("content.lazy")?tt(e).pipe(b(n=>n),Te(1),v(()=>o)):o}function za(e,{target$:t,print$:r}){let o=!0;return O(t.pipe(m(n=>n.closest("details:not([open])")),b(n=>e===n),m(()=>({action:"open",reveal:!0}))),r.pipe(b(n=>n||!o),w(()=>o=e.open),m(n=>({action:n?"open":"close"}))))}function Fn(e,t){return C(()=>{let r=new g;return r.subscribe(({action:o,reveal:n})=>{e.toggleAttribute("open",o==="open"),n&&e.scrollIntoView()}),za(e,t).pipe(w(o=>r.next(o)),_(()=>r.complete()),m(o=>$({ref:e},o)))})}var Un=".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}.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}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}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)}.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)}.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 Gr,Qa=0;function Ka(){return typeof mermaid=="undefined"||mermaid instanceof Element?Tt("https://gillian-guide.github.io/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js"):I(void 0)}function Wn(e){return e.classList.remove("mermaid"),Gr||(Gr=Ka().pipe(w(()=>mermaid.initialize({startOnLoad:!1,themeCSS:Un,sequence:{actorFontSize:"16px",messageFontSize:"16px",noteFontSize:"16px"}})),m(()=>{}),G(1))),Gr.subscribe(()=>co(this,null,function*(){e.classList.add("mermaid");let t=`__mermaid_${Qa++}`,r=x("div",{class:"mermaid"}),o=e.textContent,{svg:n,fn:i}=yield mermaid.render(t,o),a=r.attachShadow({mode:"closed"});a.innerHTML=n,e.replaceWith(r),i==null||i(a)})),Gr.pipe(m(()=>({ref:e})))}var Dn=x("table");function Vn(e){return e.replaceWith(Dn),Dn.replaceWith(An(e)),I({ref:e})}function Ya(e){let t=e.find(r=>r.checked)||e[0];return O(...e.map(r=>h(r,"change").pipe(m(()=>R(`label[for="${r.id}"]`))))).pipe(Q(R(`label[for="${t.id}"]`)),m(r=>({active:r})))}function Nn(e,{viewport$:t,target$:r}){let o=R(".tabbed-labels",e),n=P(":scope > input",e),i=Kr("prev");e.append(i);let a=Kr("next");return e.append(a),C(()=>{let s=new g,p=s.pipe(Z(),ie(!0));z([s,ge(e),tt(e)]).pipe(W(p),Me(1,me)).subscribe({next([{active:c},l]){let f=Ve(c),{width:u}=ce(c);e.style.setProperty("--md-indicator-x",`${f.x}px`),e.style.setProperty("--md-indicator-width",`${u}px`);let d=pr(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([Ne(o),ge(o)]).pipe(W(p)).subscribe(([c,l])=>{let f=St(o);i.hidden=c.x<16,a.hidden=c.x>f.width-l.width-16}),O(h(i,"click").pipe(m(()=>-1)),h(a,"click").pipe(m(()=>1))).pipe(W(p)).subscribe(c=>{let{width:l}=ce(o);o.scrollBy({left:l*c,behavior:"smooth"})}),r.pipe(W(p),b(c=>n.includes(c))).subscribe(c=>c.click()),o.classList.add("tabbed-labels--linked");for(let c of n){let l=R(`label[for="${c.id}"]`);l.replaceChildren(x("a",{href:`#${l.htmlFor}`,tabIndex:-1},...Array.from(l.childNodes))),h(l.firstElementChild,"click").pipe(W(p),b(f=>!(f.metaKey||f.ctrlKey)),w(f=>{f.preventDefault(),f.stopPropagation()})).subscribe(()=>{history.replaceState({},"",`#${l.htmlFor}`),l.click()})}return B("content.tabs.link")&&s.pipe(Ce(1),re(t)).subscribe(([{active:c},{offset:l}])=>{let f=c.innerText.trim();if(c.hasAttribute("data-md-switching"))c.removeAttribute("data-md-switching");else{let u=e.offsetTop-l.y;for(let y of P("[data-tabs]"))for(let L of P(":scope > input",y)){let X=R(`label[for="${L.id}"]`);if(X!==c&&X.innerText.trim()===f){X.setAttribute("data-md-switching",""),L.click();break}}window.scrollTo({top:e.offsetTop-u});let d=__md_get("__tabs")||[];__md_set("__tabs",[...new Set([f,...d])])}}),s.pipe(W(p)).subscribe(()=>{for(let c of P("audio, video",e))c.pause()}),Ya(n).pipe(w(c=>s.next(c)),_(()=>s.complete()),m(c=>$({ref:e},c)))}).pipe(Ke(se))}function zn(e,{viewport$:t,target$:r,print$:o}){return O(...P(".annotate:not(.highlight)",e).map(n=>Pn(n,{target$:r,print$:o})),...P("pre:not(.mermaid) > code",e).map(n=>jn(n,{target$:r,print$:o})),...P("pre.mermaid",e).map(n=>Wn(n)),...P("table:not([class])",e).map(n=>Vn(n)),...P("details",e).map(n=>Fn(n,{target$:r,print$:o})),...P("[data-tabs]",e).map(n=>Nn(n,{viewport$:t,target$:r})),...P("[title]",e).filter(()=>B("content.tooltips")).map(n=>mt(n,{viewport$:t})))}function Ba(e,{alert$:t}){return t.pipe(v(r=>O(I(!0),I(!1).pipe(Ge(2e3))).pipe(m(o=>({message:r,active:o})))))}function qn(e,t){let r=R(".md-typeset",e);return C(()=>{let o=new g;return o.subscribe(({message:n,active:i})=>{e.classList.toggle("md-dialog--active",i),r.textContent=n}),Ba(e,t).pipe(w(n=>o.next(n)),_(()=>o.complete()),m(n=>$({ref:e},n)))})}var Ga=0;function Ja(e,t){document.body.append(e);let{width:r}=ce(e);e.style.setProperty("--md-tooltip-width",`${r}px`),e.remove();let o=cr(t),n=typeof o!="undefined"?Ne(o):I({x:0,y:0}),i=O(et(t),$t(t)).pipe(K());return z([i,n]).pipe(m(([a,s])=>{let{x:p,y:c}=Ve(t),l=ce(t),f=t.closest("table");return f&&t.parentElement&&(p+=f.offsetLeft+t.parentElement.offsetLeft,c+=f.offsetTop+t.parentElement.offsetTop),{active:a,offset:{x:p-s.x+l.width/2-r/2,y:c-s.y+l.height+8}}}))}function Qn(e){let t=e.title;if(!t.length)return S;let r=`__tooltip_${Ga++}`,o=Rt(r,"inline"),n=R(".md-typeset",o);return n.innerHTML=t,C(()=>{let i=new g;return i.subscribe({next({offset:a}){o.style.setProperty("--md-tooltip-x",`${a.x}px`),o.style.setProperty("--md-tooltip-y",`${a.y}px`)},complete(){o.style.removeProperty("--md-tooltip-x"),o.style.removeProperty("--md-tooltip-y")}}),O(i.pipe(b(({active:a})=>a)),i.pipe(_e(250),b(({active:a})=>!a))).subscribe({next({active:a}){a?(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(Me(16,me)).subscribe(({active:a})=>{o.classList.toggle("md-tooltip--active",a)}),i.pipe(pt(125,me),b(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:a})=>a)).subscribe({next(a){a?o.style.setProperty("--md-tooltip-0",`${-a}px`):o.style.removeProperty("--md-tooltip-0")},complete(){o.style.removeProperty("--md-tooltip-0")}}),Ja(o,e).pipe(w(a=>i.next(a)),_(()=>i.complete()),m(a=>$({ref:e},a)))}).pipe(Ke(se))}function Xa({viewport$:e}){if(!B("header.autohide"))return I(!1);let t=e.pipe(m(({offset:{y:n}})=>n),Be(2,1),m(([n,i])=>[nMath.abs(i-n.y)>100),m(([,[n]])=>n),K()),o=ze("search");return z([e,o]).pipe(m(([{offset:n},i])=>n.y>400&&!i),K(),v(n=>n?r:I(!1)),Q(!1))}function Kn(e,t){return C(()=>z([ge(e),Xa(t)])).pipe(m(([{height:r},o])=>({height:r,hidden:o})),K((r,o)=>r.height===o.height&&r.hidden===o.hidden),G(1))}function Yn(e,{header$:t,main$:r}){return C(()=>{let o=new g,n=o.pipe(Z(),ie(!0));o.pipe(ee("active"),He(t)).subscribe(([{active:a},{hidden:s}])=>{e.classList.toggle("md-header--shadow",a&&!s),e.hidden=s});let i=ue(P("[title]",e)).pipe(b(()=>B("content.tooltips")),ne(a=>Qn(a)));return r.subscribe(o),t.pipe(W(n),m(a=>$({ref:e},a)),Re(i.pipe(W(n))))})}function Za(e,{viewport$:t,header$:r}){return mr(e,{viewport$:t,header$:r}).pipe(m(({offset:{y:o}})=>{let{height:n}=ce(e);return{active:o>=n}}),ee("active"))}function Bn(e,t){return C(()=>{let r=new g;r.subscribe({next({active:n}){e.classList.toggle("md-header__title--active",n)},complete(){e.classList.remove("md-header__title--active")}});let o=fe(".md-content h1");return typeof o=="undefined"?S:Za(o,t).pipe(w(n=>r.next(n)),_(()=>r.complete()),m(n=>$({ref:e},n)))})}function Gn(e,{viewport$:t,header$:r}){let o=r.pipe(m(({height:i})=>i),K()),n=o.pipe(v(()=>ge(e).pipe(m(({height:i})=>({top:e.offsetTop,bottom:e.offsetTop+i})),ee("bottom"))));return z([o,n,t]).pipe(m(([i,{top:a,bottom:s},{offset:{y:p},size:{height:c}}])=>(c=Math.max(0,c-Math.max(0,a-p,i)-Math.max(0,c+p-s)),{offset:a-i,height:c,active:a-i<=p})),K((i,a)=>i.offset===a.offset&&i.height===a.height&&i.active===a.active))}function es(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 I(...e).pipe(ne(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")}})),G(1))}function Jn(e){let t=P("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=Pt("(prefers-color-scheme: light)");return C(()=>{let i=new g;return i.subscribe(a=>{if(document.body.setAttribute("data-md-color-switching",""),a.color.media==="(prefers-color-scheme)"){let s=matchMedia("(prefers-color-scheme: light)"),p=document.querySelector(s.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");a.color.scheme=p.getAttribute("data-md-color-scheme"),a.color.primary=p.getAttribute("data-md-color-primary"),a.color.accent=p.getAttribute("data-md-color-accent")}for(let[s,p]of Object.entries(a.color))document.body.setAttribute(`data-md-color-${s}`,p);for(let s=0;sa.key==="Enter"),re(i,(a,s)=>s)).subscribe(({index:a})=>{a=(a+1)%t.length,t[a].click(),t[a].focus()}),i.pipe(m(()=>{let a=Se("header"),s=window.getComputedStyle(a);return o.content=s.colorScheme,s.backgroundColor.match(/\d+/g).map(p=>(+p).toString(16).padStart(2,"0")).join("")})).subscribe(a=>r.content=`#${a}`),i.pipe(ve(se)).subscribe(()=>{document.body.removeAttribute("data-md-color-switching")}),es(t).pipe(W(n.pipe(Ce(1))),ct(),w(a=>i.next(a)),_(()=>i.complete()),m(a=>$({ref:e},a)))})}function Xn(e,{progress$:t}){return C(()=>{let r=new g;return r.subscribe(({value:o})=>{e.style.setProperty("--md-progress-value",`${o}`)}),t.pipe(w(o=>r.next({value:o})),_(()=>r.complete()),m(o=>({ref:e,value:o})))})}var Jr=Mt(Br());function ts(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 Zn({alert$:e}){Jr.default.isSupported()&&new j(t=>{new Jr.default("[data-clipboard-target], [data-clipboard-text]",{text:r=>r.getAttribute("data-clipboard-text")||ts(R(r.getAttribute("data-clipboard-target")))}).on("success",r=>t.next(r))}).pipe(w(t=>{t.trigger.focus()}),m(()=>Ee("clipboard.copied"))).subscribe(e)}function ei(e,t){return e.protocol=t.protocol,e.hostname=t.hostname,e}function rs(e,t){let r=new Map;for(let o of P("url",e)){let n=R("loc",o),i=[ei(new URL(n.textContent),t)];r.set(`${i[0]}`,i);for(let a of P("[rel=alternate]",o)){let s=a.getAttribute("href");s!=null&&i.push(ei(new URL(s),t))}}return r}function ur(e){return un(new URL("sitemap.xml",e)).pipe(m(t=>rs(t,new URL(e))),de(()=>I(new Map)))}function os(e,t){if(!(e.target instanceof Element))return S;let r=e.target.closest("a");if(r===null)return S;if(r.target||e.metaKey||e.ctrlKey)return S;let o=new URL(r.href);return o.search=o.hash="",t.has(`${o}`)?(e.preventDefault(),I(new URL(r.href))):S}function ti(e){let t=new Map;for(let r of P(":scope > *",e.head))t.set(r.outerHTML,r);return t}function ri(e){for(let t of P("[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 I(e)}function ns(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]",...B("navigation.tabs.sticky")?["[data-md-component=tabs]"]:[]]){let n=fe(o),i=fe(o,e);typeof n!="undefined"&&typeof i!="undefined"&&n.replaceWith(i)}let t=ti(document);for(let[o,n]of ti(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=Se("container");return We(P("script",r)).pipe(v(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 j(i=>{n.onload=()=>i.complete()})}else return n.textContent=o.textContent,o.replaceWith(n),S}),Z(),ie(document))}function oi({location$:e,viewport$:t,progress$:r}){let o=xe();if(location.protocol==="file:")return S;let n=ur(o.base);I(document).subscribe(ri);let i=h(document.body,"click").pipe(He(n),v(([p,c])=>os(p,c)),pe()),a=h(window,"popstate").pipe(m(ye),pe());i.pipe(re(t)).subscribe(([p,{offset:c}])=>{history.replaceState(c,""),history.pushState(null,"",p)}),O(i,a).subscribe(e);let s=e.pipe(ee("pathname"),v(p=>fn(p,{progress$:r}).pipe(de(()=>(lt(p,!0),S)))),v(ri),v(ns),pe());return O(s.pipe(re(e,(p,c)=>c)),s.pipe(v(()=>e),ee("pathname"),v(()=>e),ee("hash")),e.pipe(K((p,c)=>p.pathname===c.pathname&&p.hash===c.hash),v(()=>i),w(()=>history.back()))).subscribe(p=>{var c,l;history.state!==null||!p.hash?window.scrollTo(0,(l=(c=history.state)==null?void 0:c.y)!=null?l:0):(history.scrollRestoration="auto",pn(p.hash),history.scrollRestoration="manual")}),e.subscribe(()=>{history.scrollRestoration="manual"}),h(window,"beforeunload").subscribe(()=>{history.scrollRestoration="auto"}),t.pipe(ee("offset"),_e(100)).subscribe(({offset:p})=>{history.replaceState(p,"")}),s}var ni=Mt(qr());function ii(e){let t=e.separator.split("|").map(n=>n.replace(/(\(\?[!=<][^)]+\))/g,"").length===0?"\uFFFD":n).join("|"),r=new RegExp(t,"img"),o=(n,i,a)=>`${i}${a}`;return n=>{n=n.replace(/[\s*+\-:~^]+/g," ").trim();let i=new RegExp(`(^|${e.separator}|)(${n.replace(/[|\\{}()[\]^$+*?.-]/g,"\\$&").replace(r,"|")})`,"img");return a=>(0,ni.default)(a).replace(i,o).replace(/<\/mark>(\s+)]*>/img,"$1")}}function jt(e){return e.type===1}function dr(e){return e.type===3}function ai(e,t){let r=yn(e);return O(I(location.protocol!=="file:"),ze("search")).pipe(Ae(o=>o),v(()=>t)).subscribe(({config:o,docs:n})=>r.next({type:0,data:{config:o,docs:n,options:{suggest:B("search.suggest")}}})),r}function si(e){var l;let{selectedVersionSitemap:t,selectedVersionBaseURL:r,currentLocation:o,currentBaseURL:n}=e,i=(l=Xr(n))==null?void 0:l.pathname;if(i===void 0)return;let a=ss(o.pathname,i);if(a===void 0)return;let s=ps(t.keys());if(!t.has(s))return;let p=Xr(a,s);if(!p||!t.has(p.href))return;let c=Xr(a,r);if(c)return c.hash=o.hash,c.search=o.search,c}function Xr(e,t){try{return new URL(e,t)}catch(r){return}}function ss(e,t){if(e.startsWith(t))return e.slice(t.length)}function cs(e,t){let r=Math.min(e.length,t.length),o;for(o=0;oS)),o=r.pipe(m(n=>{let[,i]=t.base.match(/([^/]+)\/?$/);return n.find(({version:a,aliases:s})=>a===i||s.includes(i))||n[0]}));r.pipe(m(n=>new Map(n.map(i=>[`${new URL(`../${i.version}/`,t.base)}`,i]))),v(n=>h(document.body,"click").pipe(b(i=>!i.metaKey&&!i.ctrlKey),re(o),v(([i,a])=>{if(i.target instanceof Element){let s=i.target.closest("a");if(s&&!s.target&&n.has(s.href)){let p=s.href;return!i.target.closest(".md-version")&&n.get(p)===a?S:(i.preventDefault(),I(new URL(p)))}}return S}),v(i=>ur(i).pipe(m(a=>{var s;return(s=si({selectedVersionSitemap:a,selectedVersionBaseURL:i,currentLocation:ye(),currentBaseURL:t.base}))!=null?s:i})))))).subscribe(n=>lt(n,!0)),z([r,o]).subscribe(([n,i])=>{R(".md-header__topic").appendChild(Cn(n,i))}),e.pipe(v(()=>o)).subscribe(n=>{var a;let i=__md_get("__outdated",sessionStorage);if(i===null){i=!0;let s=((a=t.version)==null?void 0:a.default)||"latest";Array.isArray(s)||(s=[s]);e:for(let p of s)for(let c of n.aliases.concat(n.version))if(new RegExp(p,"i").test(c)){i=!1;break e}__md_set("__outdated",i,sessionStorage)}if(i)for(let s of ae("outdated"))s.hidden=!1})}function ls(e,{worker$:t}){let{searchParams:r}=ye();r.has("q")&&(Je("search",!0),e.value=r.get("q"),e.focus(),ze("search").pipe(Ae(i=>!i)).subscribe(()=>{let i=ye();i.searchParams.delete("q"),history.replaceState({},"",`${i}`)}));let o=et(e),n=O(t.pipe(Ae(jt)),h(e,"keyup"),o).pipe(m(()=>e.value),K());return z([n,o]).pipe(m(([i,a])=>({value:i,focus:a})),G(1))}function pi(e,{worker$:t}){let r=new g,o=r.pipe(Z(),ie(!0));z([t.pipe(Ae(jt)),r],(i,a)=>a).pipe(ee("value")).subscribe(({value:i})=>t.next({type:2,data:i})),r.pipe(ee("focus")).subscribe(({focus:i})=>{i&&Je("search",i)}),h(e.form,"reset").pipe(W(o)).subscribe(()=>e.focus());let n=R("header [for=__search]");return h(n,"click").subscribe(()=>e.focus()),ls(e,{worker$:t}).pipe(w(i=>r.next(i)),_(()=>r.complete()),m(i=>$({ref:e},i)),G(1))}function li(e,{worker$:t,query$:r}){let o=new g,n=on(e.parentElement).pipe(b(Boolean)),i=e.parentElement,a=R(":scope > :first-child",e),s=R(":scope > :last-child",e);ze("search").subscribe(l=>s.setAttribute("role",l?"list":"presentation")),o.pipe(re(r),Wr(t.pipe(Ae(jt)))).subscribe(([{items:l},{value:f}])=>{switch(l.length){case 0:a.textContent=f.length?Ee("search.result.none"):Ee("search.result.placeholder");break;case 1:a.textContent=Ee("search.result.one");break;default:let u=sr(l.length);a.textContent=Ee("search.result.other",u)}});let p=o.pipe(w(()=>s.innerHTML=""),v(({items:l})=>O(I(...l.slice(0,10)),I(...l.slice(10)).pipe(Be(4),Vr(n),v(([f])=>f)))),m(Mn),pe());return p.subscribe(l=>s.appendChild(l)),p.pipe(ne(l=>{let f=fe("details",l);return typeof f=="undefined"?S:h(f,"toggle").pipe(W(o),m(()=>f))})).subscribe(l=>{l.open===!1&&l.offsetTop<=i.scrollTop&&i.scrollTo({top:l.offsetTop})}),t.pipe(b(dr),m(({data:l})=>l)).pipe(w(l=>o.next(l)),_(()=>o.complete()),m(l=>$({ref:e},l)))}function ms(e,{query$:t}){return t.pipe(m(({value:r})=>{let o=ye();return o.hash="",r=r.replace(/\s+/g,"+").replace(/&/g,"%26").replace(/=/g,"%3D"),o.search=`q=${r}`,{url:o}}))}function mi(e,t){let r=new g,o=r.pipe(Z(),ie(!0));return r.subscribe(({url:n})=>{e.setAttribute("data-clipboard-text",e.href),e.href=`${n}`}),h(e,"click").pipe(W(o)).subscribe(n=>n.preventDefault()),ms(e,t).pipe(w(n=>r.next(n)),_(()=>r.complete()),m(n=>$({ref:e},n)))}function fi(e,{worker$:t,keyboard$:r}){let o=new g,n=Se("search-query"),i=O(h(n,"keydown"),h(n,"focus")).pipe(ve(se),m(()=>n.value),K());return o.pipe(He(i),m(([{suggest:s},p])=>{let c=p.split(/([\s-]+)/);if(s!=null&&s.length&&c[c.length-1]){let l=s[s.length-1];l.startsWith(c[c.length-1])&&(c[c.length-1]=l)}else c.length=0;return c})).subscribe(s=>e.innerHTML=s.join("").replace(/\s/g," ")),r.pipe(b(({mode:s})=>s==="search")).subscribe(s=>{switch(s.type){case"ArrowRight":e.innerText.length&&n.selectionStart===n.value.length&&(n.value=e.innerText);break}}),t.pipe(b(dr),m(({data:s})=>s)).pipe(w(s=>o.next(s)),_(()=>o.complete()),m(()=>({ref:e})))}function ui(e,{index$:t,keyboard$:r}){let o=xe();try{let n=ai(o.search,t),i=Se("search-query",e),a=Se("search-result",e);h(e,"click").pipe(b(({target:p})=>p instanceof Element&&!!p.closest("a"))).subscribe(()=>Je("search",!1)),r.pipe(b(({mode:p})=>p==="search")).subscribe(p=>{let c=Ie();switch(p.type){case"Enter":if(c===i){let l=new Map;for(let f of P(":first-child [href]",a)){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()}p.claim()}break;case"Escape":case"Tab":Je("search",!1),i.blur();break;case"ArrowUp":case"ArrowDown":if(typeof c=="undefined")i.focus();else{let l=[i,...P(":not(details) > [href], summary, details[open] [href]",a)],f=Math.max(0,(Math.max(0,l.indexOf(c))+l.length+(p.type==="ArrowUp"?-1:1))%l.length);l[f].focus()}p.claim();break;default:i!==Ie()&&i.focus()}}),r.pipe(b(({mode:p})=>p==="global")).subscribe(p=>{switch(p.type){case"f":case"s":case"/":i.focus(),i.select(),p.claim();break}});let s=pi(i,{worker$:n});return O(s,li(a,{worker$:n,query$:s})).pipe(Re(...ae("search-share",e).map(p=>mi(p,{query$:s})),...ae("search-suggest",e).map(p=>fi(p,{worker$:n,keyboard$:r}))))}catch(n){return e.hidden=!0,Ye}}function di(e,{index$:t,location$:r}){return z([t,r.pipe(Q(ye()),b(o=>!!o.searchParams.get("h")))]).pipe(m(([o,n])=>ii(o.config)(n.searchParams.get("h"))),m(o=>{var a;let n=new Map,i=document.createNodeIterator(e,NodeFilter.SHOW_TEXT);for(let s=i.nextNode();s;s=i.nextNode())if((a=s.parentElement)!=null&&a.offsetHeight){let p=s.textContent,c=o(p);c.length>p.length&&n.set(s,c)}for(let[s,p]of n){let{childNodes:c}=x("span",null,p);s.replaceWith(...Array.from(c))}return{ref:e,nodes:n}}))}function fs(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:a},{offset:{y:s}}])=>(a=a+Math.min(n,Math.max(0,s-i))-n,{height:a,locked:s>=i+n})),K((i,a)=>i.height===a.height&&i.locked===a.locked))}function Zr(e,o){var n=o,{header$:t}=n,r=so(n,["header$"]);let i=R(".md-sidebar__scrollwrap",e),{y:a}=Ve(i);return C(()=>{let s=new g,p=s.pipe(Z(),ie(!0)),c=s.pipe(Me(0,me));return c.pipe(re(t)).subscribe({next([{height:l},{height:f}]){i.style.height=`${l-2*a}px`,e.style.top=`${f}px`},complete(){i.style.height="",e.style.top=""}}),c.pipe(Ae()).subscribe(()=>{for(let l of P(".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}=ce(f);f.scrollTo({top:u-d/2})}}}),ue(P("label[tabindex]",e)).pipe(ne(l=>h(l,"click").pipe(ve(se),m(()=>l),W(p)))).subscribe(l=>{let f=R(`[id="${l.htmlFor}"]`);R(`[aria-labelledby="${l.id}"]`).setAttribute("aria-expanded",`${f.checked}`)}),fs(e,r).pipe(w(l=>s.next(l)),_(()=>s.complete()),m(l=>$({ref:e},l)))})}function hi(e,t){if(typeof t!="undefined"){let r=`https://api.github.com/repos/${e}/${t}`;return st(je(`${r}/releases/latest`).pipe(de(()=>S),m(o=>({version:o.tag_name})),De({})),je(r).pipe(de(()=>S),m(o=>({stars:o.stargazers_count,forks:o.forks_count})),De({}))).pipe(m(([o,n])=>$($({},o),n)))}else{let r=`https://api.github.com/users/${e}`;return je(r).pipe(m(o=>({repositories:o.public_repos})),De({}))}}function bi(e,t){let r=`https://${e}/api/v4/projects/${encodeURIComponent(t)}`;return st(je(`${r}/releases/permalink/latest`).pipe(de(()=>S),m(({tag_name:o})=>({version:o})),De({})),je(r).pipe(de(()=>S),m(({star_count:o,forks_count:n})=>({stars:o,forks:n})),De({}))).pipe(m(([o,n])=>$($({},o),n)))}function vi(e){let t=e.match(/^.+github\.com\/([^/]+)\/?([^/]+)?/i);if(t){let[,r,o]=t;return hi(r,o)}if(t=e.match(/^.+?([^/]*gitlab[^/]+)\/(.+?)\/?$/i),t){let[,r,o]=t;return bi(r,o)}return S}var us;function ds(e){return us||(us=C(()=>{let t=__md_get("__source",sessionStorage);if(t)return I(t);if(ae("consent").length){let o=__md_get("__consent");if(!(o&&o.github))return S}return vi(e.href).pipe(w(o=>__md_set("__source",o,sessionStorage)))}).pipe(de(()=>S),b(t=>Object.keys(t).length>0),m(t=>({facts:t})),G(1)))}function gi(e){let t=R(":scope > :last-child",e);return C(()=>{let r=new g;return r.subscribe(({facts:o})=>{t.appendChild(_n(o)),t.classList.add("md-source__repository--active")}),ds(e).pipe(w(o=>r.next(o)),_(()=>r.complete()),m(o=>$({ref:e},o)))})}function hs(e,{viewport$:t,header$:r}){return ge(document.body).pipe(v(()=>mr(e,{header$:r,viewport$:t})),m(({offset:{y:o}})=>({hidden:o>=10})),ee("hidden"))}function yi(e,t){return C(()=>{let r=new g;return r.subscribe({next({hidden:o}){e.hidden=o},complete(){e.hidden=!1}}),(B("navigation.tabs.sticky")?I({hidden:!1}):hs(e,t)).pipe(w(o=>r.next(o)),_(()=>r.complete()),m(o=>$({ref:e},o)))})}function bs(e,{viewport$:t,header$:r}){let o=new Map,n=P(".md-nav__link",e);for(let s of n){let p=decodeURIComponent(s.hash.substring(1)),c=fe(`[id="${p}"]`);typeof c!="undefined"&&o.set(s,c)}let i=r.pipe(ee("height"),m(({height:s})=>{let p=Se("main"),c=R(":scope > :first-child",p);return s+.8*(c.offsetTop-p.offsetTop)}),pe());return ge(document.body).pipe(ee("height"),v(s=>C(()=>{let p=[];return I([...o].reduce((c,[l,f])=>{for(;p.length&&o.get(p[p.length-1]).tagName>=f.tagName;)p.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 c.set([...p=[...p,l]].reverse(),u)},new Map))}).pipe(m(p=>new Map([...p].sort(([,c],[,l])=>c-l))),He(i),v(([p,c])=>t.pipe(Fr(([l,f],{offset:{y:u},size:d})=>{let y=u+d.height>=Math.floor(s.height);for(;f.length;){let[,L]=f[0];if(L-c=u&&!y)f=[l.pop(),...f];else break}return[l,f]},[[],[...p]]),K((l,f)=>l[0]===f[0]&&l[1]===f[1])))))).pipe(m(([s,p])=>({prev:s.map(([c])=>c),next:p.map(([c])=>c)})),Q({prev:[],next:[]}),Be(2,1),m(([s,p])=>s.prev.length{let i=new g,a=i.pipe(Z(),ie(!0));if(i.subscribe(({prev:s,next:p})=>{for(let[c]of p)c.classList.remove("md-nav__link--passed"),c.classList.remove("md-nav__link--active");for(let[c,[l]]of s.entries())l.classList.add("md-nav__link--passed"),l.classList.toggle("md-nav__link--active",c===s.length-1)}),B("toc.follow")){let s=O(t.pipe(_e(1),m(()=>{})),t.pipe(_e(250),m(()=>"smooth")));i.pipe(b(({prev:p})=>p.length>0),He(o.pipe(ve(se))),re(s)).subscribe(([[{prev:p}],c])=>{let[l]=p[p.length-1];if(l.offsetHeight){let f=cr(l);if(typeof f!="undefined"){let u=l.offsetTop-f.offsetTop,{height:d}=ce(f);f.scrollTo({top:u-d/2,behavior:c})}}})}return B("navigation.tracking")&&t.pipe(W(a),ee("offset"),_e(250),Ce(1),W(n.pipe(Ce(1))),ct({delay:250}),re(i)).subscribe(([,{prev:s}])=>{let p=ye(),c=s[s.length-1];if(c&&c.length){let[l]=c,{hash:f}=new URL(l.href);p.hash!==f&&(p.hash=f,history.replaceState({},"",`${p}`))}else p.hash="",history.replaceState({},"",`${p}`)}),bs(e,{viewport$:t,header$:r}).pipe(w(s=>i.next(s)),_(()=>i.complete()),m(s=>$({ref:e},s)))})}function vs(e,{viewport$:t,main$:r,target$:o}){let n=t.pipe(m(({offset:{y:a}})=>a),Be(2,1),m(([a,s])=>a>s&&s>0),K()),i=r.pipe(m(({active:a})=>a));return z([i,n]).pipe(m(([a,s])=>!(a&&s)),K(),W(o.pipe(Ce(1))),ie(!0),ct({delay:250}),m(a=>({hidden:a})))}function Ei(e,{viewport$:t,header$:r,main$:o,target$:n}){let i=new g,a=i.pipe(Z(),ie(!0));return i.subscribe({next({hidden:s}){e.hidden=s,s?(e.setAttribute("tabindex","-1"),e.blur()):e.removeAttribute("tabindex")},complete(){e.style.top="",e.hidden=!0,e.removeAttribute("tabindex")}}),r.pipe(W(a),ee("height")).subscribe(({height:s})=>{e.style.top=`${s+16}px`}),h(e,"click").subscribe(s=>{s.preventDefault(),window.scrollTo({top:0})}),vs(e,{viewport$:t,main$:o,target$:n}).pipe(w(s=>i.next(s)),_(()=>i.complete()),m(s=>$({ref:e},s)))}function wi({document$:e,viewport$:t}){e.pipe(v(()=>P(".md-ellipsis")),ne(r=>tt(r).pipe(W(e.pipe(Ce(1))),b(o=>o),m(()=>r),Te(1))),b(r=>r.offsetWidth{let o=r.innerText,n=r.closest("a")||r;return n.title=o,B("content.tooltips")?mt(n,{viewport$:t}).pipe(W(e.pipe(Ce(1))),_(()=>n.removeAttribute("title"))):S})).subscribe(),B("content.tooltips")&&e.pipe(v(()=>P(".md-status")),ne(r=>mt(r,{viewport$:t}))).subscribe()}function Ti({document$:e,tablet$:t}){e.pipe(v(()=>P(".md-toggle--indeterminate")),w(r=>{r.indeterminate=!0,r.checked=!1}),ne(r=>h(r,"change").pipe(Dr(()=>r.classList.contains("md-toggle--indeterminate")),m(()=>r))),re(t)).subscribe(([r,o])=>{r.classList.remove("md-toggle--indeterminate"),o&&(r.checked=!1)})}function gs(){return/(iPad|iPhone|iPod)/.test(navigator.userAgent)}function Si({document$:e}){e.pipe(v(()=>P("[data-md-scrollfix]")),w(t=>t.removeAttribute("data-md-scrollfix")),b(gs),ne(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 Oi({viewport$:e,tablet$:t}){z([ze("search"),t]).pipe(m(([r,o])=>r&&!o),v(r=>I(r).pipe(Ge(r?400:100))),re(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 ys(){return location.protocol==="file:"?Tt(`${new URL("search/search_index.js",eo.base)}`).pipe(m(()=>__index),G(1)):je(new URL("search/search_index.json",eo.base))}document.documentElement.classList.remove("no-js");document.documentElement.classList.add("js");var ot=Go(),Ut=sn(),Lt=ln(Ut),to=an(),Oe=gn(),hr=Pt("(min-width: 960px)"),Mi=Pt("(min-width: 1220px)"),_i=mn(),eo=xe(),Ai=document.forms.namedItem("search")?ys():Ye,ro=new g;Zn({alert$:ro});var oo=new g;B("navigation.instant")&&oi({location$:Ut,viewport$:Oe,progress$:oo}).subscribe(ot);var Li;((Li=eo.version)==null?void 0:Li.provider)==="mike"&&ci({document$:ot});O(Ut,Lt).pipe(Ge(125)).subscribe(()=>{Je("drawer",!1),Je("search",!1)});to.pipe(b(({mode:e})=>e==="global")).subscribe(e=>{switch(e.type){case"p":case",":let t=fe("link[rel=prev]");typeof t!="undefined"&<(t);break;case"n":case".":let r=fe("link[rel=next]");typeof r!="undefined"&<(r);break;case"Enter":let o=Ie();o instanceof HTMLLabelElement&&o.click()}});wi({viewport$:Oe,document$:ot});Ti({document$:ot,tablet$:hr});Si({document$:ot});Oi({viewport$:Oe,tablet$:hr});var rt=Kn(Se("header"),{viewport$:Oe}),Ft=ot.pipe(m(()=>Se("main")),v(e=>Gn(e,{viewport$:Oe,header$:rt})),G(1)),xs=O(...ae("consent").map(e=>En(e,{target$:Lt})),...ae("dialog").map(e=>qn(e,{alert$:ro})),...ae("palette").map(e=>Jn(e)),...ae("progress").map(e=>Xn(e,{progress$:oo})),...ae("search").map(e=>ui(e,{index$:Ai,keyboard$:to})),...ae("source").map(e=>gi(e))),Es=C(()=>O(...ae("announce").map(e=>xn(e)),...ae("content").map(e=>zn(e,{viewport$:Oe,target$:Lt,print$:_i})),...ae("content").map(e=>B("search.highlight")?di(e,{index$:Ai,location$:Ut}):S),...ae("header").map(e=>Yn(e,{viewport$:Oe,header$:rt,main$:Ft})),...ae("header-title").map(e=>Bn(e,{viewport$:Oe,header$:rt})),...ae("sidebar").map(e=>e.getAttribute("data-md-type")==="navigation"?Nr(Mi,()=>Zr(e,{viewport$:Oe,header$:rt,main$:Ft})):Nr(hr,()=>Zr(e,{viewport$:Oe,header$:rt,main$:Ft}))),...ae("tabs").map(e=>yi(e,{viewport$:Oe,header$:rt})),...ae("toc").map(e=>xi(e,{viewport$:Oe,header$:rt,main$:Ft,target$:Lt})),...ae("top").map(e=>Ei(e,{viewport$:Oe,header$:rt,main$:Ft,target$:Lt})))),Ci=ot.pipe(v(()=>Es),Re(xs),G(1));Ci.subscribe();window.document$=ot;window.location$=Ut;window.target$=Lt;window.keyboard$=to;window.viewport$=Oe;window.tablet$=hr;window.screen$=Mi;window.print$=_i;window.alert$=ro;window.progress$=oo;window.component$=Ci;})(); +//# sourceMappingURL=bundle.83f73b43.min.js.map + diff --git a/assets/javascripts/bundle.83f73b43.min.js.map b/assets/javascripts/bundle.83f73b43.min.js.map new file mode 100644 index 00000000..fe920b7d --- /dev/null +++ b/assets/javascripts/bundle.83f73b43.min.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["node_modules/focus-visible/dist/focus-visible.js", "node_modules/escape-html/index.js", "node_modules/clipboard/dist/clipboard.js", "src/templates/assets/javascripts/bundle.ts", "node_modules/tslib/tslib.es6.mjs", "node_modules/rxjs/src/internal/util/isFunction.ts", "node_modules/rxjs/src/internal/util/createErrorClass.ts", "node_modules/rxjs/src/internal/util/UnsubscriptionError.ts", "node_modules/rxjs/src/internal/util/arrRemove.ts", "node_modules/rxjs/src/internal/Subscription.ts", "node_modules/rxjs/src/internal/config.ts", "node_modules/rxjs/src/internal/scheduler/timeoutProvider.ts", "node_modules/rxjs/src/internal/util/reportUnhandledError.ts", "node_modules/rxjs/src/internal/util/noop.ts", "node_modules/rxjs/src/internal/NotificationFactories.ts", "node_modules/rxjs/src/internal/util/errorContext.ts", "node_modules/rxjs/src/internal/Subscriber.ts", "node_modules/rxjs/src/internal/symbol/observable.ts", "node_modules/rxjs/src/internal/util/identity.ts", "node_modules/rxjs/src/internal/util/pipe.ts", "node_modules/rxjs/src/internal/Observable.ts", "node_modules/rxjs/src/internal/util/lift.ts", "node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts", "node_modules/rxjs/src/internal/scheduler/animationFrameProvider.ts", "node_modules/rxjs/src/internal/util/ObjectUnsubscribedError.ts", "node_modules/rxjs/src/internal/Subject.ts", "node_modules/rxjs/src/internal/BehaviorSubject.ts", "node_modules/rxjs/src/internal/scheduler/dateTimestampProvider.ts", "node_modules/rxjs/src/internal/ReplaySubject.ts", "node_modules/rxjs/src/internal/scheduler/Action.ts", "node_modules/rxjs/src/internal/scheduler/intervalProvider.ts", "node_modules/rxjs/src/internal/scheduler/AsyncAction.ts", "node_modules/rxjs/src/internal/Scheduler.ts", "node_modules/rxjs/src/internal/scheduler/AsyncScheduler.ts", "node_modules/rxjs/src/internal/scheduler/async.ts", "node_modules/rxjs/src/internal/scheduler/QueueAction.ts", "node_modules/rxjs/src/internal/scheduler/QueueScheduler.ts", "node_modules/rxjs/src/internal/scheduler/queue.ts", "node_modules/rxjs/src/internal/scheduler/AnimationFrameAction.ts", "node_modules/rxjs/src/internal/scheduler/AnimationFrameScheduler.ts", "node_modules/rxjs/src/internal/scheduler/animationFrame.ts", "node_modules/rxjs/src/internal/observable/empty.ts", "node_modules/rxjs/src/internal/util/isScheduler.ts", "node_modules/rxjs/src/internal/util/args.ts", "node_modules/rxjs/src/internal/util/isArrayLike.ts", "node_modules/rxjs/src/internal/util/isPromise.ts", "node_modules/rxjs/src/internal/util/isInteropObservable.ts", "node_modules/rxjs/src/internal/util/isAsyncIterable.ts", "node_modules/rxjs/src/internal/util/throwUnobservableError.ts", "node_modules/rxjs/src/internal/symbol/iterator.ts", "node_modules/rxjs/src/internal/util/isIterable.ts", "node_modules/rxjs/src/internal/util/isReadableStreamLike.ts", "node_modules/rxjs/src/internal/observable/innerFrom.ts", "node_modules/rxjs/src/internal/util/executeSchedule.ts", "node_modules/rxjs/src/internal/operators/observeOn.ts", "node_modules/rxjs/src/internal/operators/subscribeOn.ts", "node_modules/rxjs/src/internal/scheduled/scheduleObservable.ts", "node_modules/rxjs/src/internal/scheduled/schedulePromise.ts", "node_modules/rxjs/src/internal/scheduled/scheduleArray.ts", "node_modules/rxjs/src/internal/scheduled/scheduleIterable.ts", "node_modules/rxjs/src/internal/scheduled/scheduleAsyncIterable.ts", "node_modules/rxjs/src/internal/scheduled/scheduleReadableStreamLike.ts", "node_modules/rxjs/src/internal/scheduled/scheduled.ts", "node_modules/rxjs/src/internal/observable/from.ts", "node_modules/rxjs/src/internal/observable/of.ts", "node_modules/rxjs/src/internal/observable/throwError.ts", "node_modules/rxjs/src/internal/util/EmptyError.ts", "node_modules/rxjs/src/internal/util/isDate.ts", "node_modules/rxjs/src/internal/operators/map.ts", "node_modules/rxjs/src/internal/util/mapOneOrManyArgs.ts", "node_modules/rxjs/src/internal/util/argsArgArrayOrObject.ts", "node_modules/rxjs/src/internal/util/createObject.ts", "node_modules/rxjs/src/internal/observable/combineLatest.ts", "node_modules/rxjs/src/internal/operators/mergeInternals.ts", "node_modules/rxjs/src/internal/operators/mergeMap.ts", "node_modules/rxjs/src/internal/operators/mergeAll.ts", "node_modules/rxjs/src/internal/operators/concatAll.ts", "node_modules/rxjs/src/internal/observable/concat.ts", "node_modules/rxjs/src/internal/observable/defer.ts", "node_modules/rxjs/src/internal/observable/fromEvent.ts", "node_modules/rxjs/src/internal/observable/fromEventPattern.ts", "node_modules/rxjs/src/internal/observable/timer.ts", "node_modules/rxjs/src/internal/observable/merge.ts", "node_modules/rxjs/src/internal/observable/never.ts", "node_modules/rxjs/src/internal/util/argsOrArgArray.ts", "node_modules/rxjs/src/internal/operators/filter.ts", "node_modules/rxjs/src/internal/observable/zip.ts", "node_modules/rxjs/src/internal/operators/audit.ts", "node_modules/rxjs/src/internal/operators/auditTime.ts", "node_modules/rxjs/src/internal/operators/bufferCount.ts", "node_modules/rxjs/src/internal/operators/catchError.ts", "node_modules/rxjs/src/internal/operators/scanInternals.ts", "node_modules/rxjs/src/internal/operators/combineLatest.ts", "node_modules/rxjs/src/internal/operators/combineLatestWith.ts", "node_modules/rxjs/src/internal/operators/debounce.ts", "node_modules/rxjs/src/internal/operators/debounceTime.ts", "node_modules/rxjs/src/internal/operators/defaultIfEmpty.ts", "node_modules/rxjs/src/internal/operators/take.ts", "node_modules/rxjs/src/internal/operators/ignoreElements.ts", "node_modules/rxjs/src/internal/operators/mapTo.ts", "node_modules/rxjs/src/internal/operators/delayWhen.ts", "node_modules/rxjs/src/internal/operators/delay.ts", "node_modules/rxjs/src/internal/operators/distinctUntilChanged.ts", "node_modules/rxjs/src/internal/operators/distinctUntilKeyChanged.ts", "node_modules/rxjs/src/internal/operators/throwIfEmpty.ts", "node_modules/rxjs/src/internal/operators/endWith.ts", "node_modules/rxjs/src/internal/operators/finalize.ts", "node_modules/rxjs/src/internal/operators/first.ts", "node_modules/rxjs/src/internal/operators/takeLast.ts", "node_modules/rxjs/src/internal/operators/merge.ts", "node_modules/rxjs/src/internal/operators/mergeWith.ts", "node_modules/rxjs/src/internal/operators/repeat.ts", "node_modules/rxjs/src/internal/operators/scan.ts", "node_modules/rxjs/src/internal/operators/share.ts", "node_modules/rxjs/src/internal/operators/shareReplay.ts", "node_modules/rxjs/src/internal/operators/skip.ts", "node_modules/rxjs/src/internal/operators/skipUntil.ts", "node_modules/rxjs/src/internal/operators/startWith.ts", "node_modules/rxjs/src/internal/operators/switchMap.ts", "node_modules/rxjs/src/internal/operators/takeUntil.ts", "node_modules/rxjs/src/internal/operators/takeWhile.ts", "node_modules/rxjs/src/internal/operators/tap.ts", "node_modules/rxjs/src/internal/operators/throttle.ts", "node_modules/rxjs/src/internal/operators/throttleTime.ts", "node_modules/rxjs/src/internal/operators/withLatestFrom.ts", "node_modules/rxjs/src/internal/operators/zip.ts", "node_modules/rxjs/src/internal/operators/zipWith.ts", "src/templates/assets/javascripts/browser/document/index.ts", "src/templates/assets/javascripts/browser/element/_/index.ts", "src/templates/assets/javascripts/browser/element/focus/index.ts", "src/templates/assets/javascripts/browser/element/hover/index.ts", "src/templates/assets/javascripts/utilities/h/index.ts", "src/templates/assets/javascripts/utilities/round/index.ts", "src/templates/assets/javascripts/browser/script/index.ts", "src/templates/assets/javascripts/browser/element/size/_/index.ts", "src/templates/assets/javascripts/browser/element/size/content/index.ts", "src/templates/assets/javascripts/browser/element/offset/_/index.ts", "src/templates/assets/javascripts/browser/element/offset/content/index.ts", "src/templates/assets/javascripts/browser/element/visibility/index.ts", "src/templates/assets/javascripts/browser/toggle/index.ts", "src/templates/assets/javascripts/browser/keyboard/index.ts", "src/templates/assets/javascripts/browser/location/_/index.ts", "src/templates/assets/javascripts/browser/location/hash/index.ts", "src/templates/assets/javascripts/browser/media/index.ts", "src/templates/assets/javascripts/browser/request/index.ts", "src/templates/assets/javascripts/browser/viewport/offset/index.ts", "src/templates/assets/javascripts/browser/viewport/size/index.ts", "src/templates/assets/javascripts/browser/viewport/_/index.ts", "src/templates/assets/javascripts/browser/viewport/at/index.ts", "src/templates/assets/javascripts/browser/worker/index.ts", "src/templates/assets/javascripts/_/index.ts", "src/templates/assets/javascripts/components/_/index.ts", "src/templates/assets/javascripts/components/announce/index.ts", "src/templates/assets/javascripts/components/consent/index.ts", "src/templates/assets/javascripts/templates/tooltip/index.tsx", "src/templates/assets/javascripts/templates/annotation/index.tsx", "src/templates/assets/javascripts/templates/clipboard/index.tsx", "src/templates/assets/javascripts/templates/search/index.tsx", "src/templates/assets/javascripts/templates/source/index.tsx", "src/templates/assets/javascripts/templates/tabbed/index.tsx", "src/templates/assets/javascripts/templates/table/index.tsx", "src/templates/assets/javascripts/templates/version/index.tsx", "src/templates/assets/javascripts/components/tooltip2/index.ts", "src/templates/assets/javascripts/components/content/annotation/_/index.ts", "src/templates/assets/javascripts/components/content/annotation/list/index.ts", "src/templates/assets/javascripts/components/content/annotation/block/index.ts", "src/templates/assets/javascripts/components/content/code/_/index.ts", "src/templates/assets/javascripts/components/content/details/index.ts", "src/templates/assets/javascripts/components/content/mermaid/index.css", "src/templates/assets/javascripts/components/content/mermaid/index.ts", "src/templates/assets/javascripts/components/content/table/index.ts", "src/templates/assets/javascripts/components/content/tabs/index.ts", "src/templates/assets/javascripts/components/content/_/index.ts", "src/templates/assets/javascripts/components/dialog/index.ts", "src/templates/assets/javascripts/components/tooltip/index.ts", "src/templates/assets/javascripts/components/header/_/index.ts", "src/templates/assets/javascripts/components/header/title/index.ts", "src/templates/assets/javascripts/components/main/index.ts", "src/templates/assets/javascripts/components/palette/index.ts", "src/templates/assets/javascripts/components/progress/index.ts", "src/templates/assets/javascripts/integrations/clipboard/index.ts", "src/templates/assets/javascripts/integrations/sitemap/index.ts", "src/templates/assets/javascripts/integrations/instant/index.ts", "src/templates/assets/javascripts/integrations/search/highlighter/index.ts", "src/templates/assets/javascripts/integrations/search/worker/message/index.ts", "src/templates/assets/javascripts/integrations/search/worker/_/index.ts", "src/templates/assets/javascripts/integrations/version/findurl/index.ts", "src/templates/assets/javascripts/integrations/version/index.ts", "src/templates/assets/javascripts/components/search/query/index.ts", "src/templates/assets/javascripts/components/search/result/index.ts", "src/templates/assets/javascripts/components/search/share/index.ts", "src/templates/assets/javascripts/components/search/suggest/index.ts", "src/templates/assets/javascripts/components/search/_/index.ts", "src/templates/assets/javascripts/components/search/highlight/index.ts", "src/templates/assets/javascripts/components/sidebar/index.ts", "src/templates/assets/javascripts/components/source/facts/github/index.ts", "src/templates/assets/javascripts/components/source/facts/gitlab/index.ts", "src/templates/assets/javascripts/components/source/facts/_/index.ts", "src/templates/assets/javascripts/components/source/_/index.ts", "src/templates/assets/javascripts/components/tabs/index.ts", "src/templates/assets/javascripts/components/toc/index.ts", "src/templates/assets/javascripts/components/top/index.ts", "src/templates/assets/javascripts/patches/ellipsis/index.ts", "src/templates/assets/javascripts/patches/indeterminate/index.ts", "src/templates/assets/javascripts/patches/scrollfix/index.ts", "src/templates/assets/javascripts/patches/scrolllock/index.ts", "src/templates/assets/javascripts/polyfills/index.ts"], + "sourcesContent": ["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (factory());\n}(this, (function () { 'use strict';\n\n /**\n * Applies the :focus-visible polyfill at the given scope.\n * A scope in this case is either the top-level Document or a Shadow Root.\n *\n * @param {(Document|ShadowRoot)} scope\n * @see https://github.com/WICG/focus-visible\n */\n function applyFocusVisiblePolyfill(scope) {\n var hadKeyboardEvent = true;\n var hadFocusVisibleRecently = false;\n var hadFocusVisibleRecentlyTimeout = null;\n\n var inputTypesAllowlist = {\n text: true,\n search: true,\n url: true,\n tel: true,\n email: true,\n password: true,\n number: true,\n date: true,\n month: true,\n week: true,\n time: true,\n datetime: true,\n 'datetime-local': true\n };\n\n /**\n * Helper function for legacy browsers and iframes which sometimes focus\n * elements like document, body, and non-interactive SVG.\n * @param {Element} el\n */\n function isValidFocusTarget(el) {\n if (\n el &&\n el !== document &&\n el.nodeName !== 'HTML' &&\n el.nodeName !== 'BODY' &&\n 'classList' in el &&\n 'contains' in el.classList\n ) {\n return true;\n }\n return false;\n }\n\n /**\n * Computes whether the given element should automatically trigger the\n * `focus-visible` class being added, i.e. whether it should always match\n * `:focus-visible` when focused.\n * @param {Element} el\n * @return {boolean}\n */\n function focusTriggersKeyboardModality(el) {\n var type = el.type;\n var tagName = el.tagName;\n\n if (tagName === 'INPUT' && inputTypesAllowlist[type] && !el.readOnly) {\n return true;\n }\n\n if (tagName === 'TEXTAREA' && !el.readOnly) {\n return true;\n }\n\n if (el.isContentEditable) {\n return true;\n }\n\n return false;\n }\n\n /**\n * Add the `focus-visible` class to the given element if it was not added by\n * the author.\n * @param {Element} el\n */\n function addFocusVisibleClass(el) {\n if (el.classList.contains('focus-visible')) {\n return;\n }\n el.classList.add('focus-visible');\n el.setAttribute('data-focus-visible-added', '');\n }\n\n /**\n * Remove the `focus-visible` class from the given element if it was not\n * originally added by the author.\n * @param {Element} el\n */\n function removeFocusVisibleClass(el) {\n if (!el.hasAttribute('data-focus-visible-added')) {\n return;\n }\n el.classList.remove('focus-visible');\n el.removeAttribute('data-focus-visible-added');\n }\n\n /**\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * Apply `focus-visible` to any current active element and keep track\n * of our keyboard modality state with `hadKeyboardEvent`.\n * @param {KeyboardEvent} e\n */\n function onKeyDown(e) {\n if (e.metaKey || e.altKey || e.ctrlKey) {\n return;\n }\n\n if (isValidFocusTarget(scope.activeElement)) {\n addFocusVisibleClass(scope.activeElement);\n }\n\n hadKeyboardEvent = true;\n }\n\n /**\n * If at any point a user clicks with a pointing device, ensure that we change\n * the modality away from keyboard.\n * This avoids the situation where a user presses a key on an already focused\n * element, and then clicks on a different element, focusing it with a\n * pointing device, while we still think we're in keyboard modality.\n * @param {Event} e\n */\n function onPointerDown(e) {\n hadKeyboardEvent = false;\n }\n\n /**\n * On `focus`, add the `focus-visible` class to the target if:\n * - the target received focus as a result of keyboard navigation, or\n * - the event target is an element that will likely require interaction\n * via the keyboard (e.g. a text box)\n * @param {Event} e\n */\n function onFocus(e) {\n // Prevent IE from focusing the document or HTML element.\n if (!isValidFocusTarget(e.target)) {\n return;\n }\n\n if (hadKeyboardEvent || focusTriggersKeyboardModality(e.target)) {\n addFocusVisibleClass(e.target);\n }\n }\n\n /**\n * On `blur`, remove the `focus-visible` class from the target.\n * @param {Event} e\n */\n function onBlur(e) {\n if (!isValidFocusTarget(e.target)) {\n return;\n }\n\n if (\n e.target.classList.contains('focus-visible') ||\n e.target.hasAttribute('data-focus-visible-added')\n ) {\n // To detect a tab/window switch, we look for a blur event followed\n // rapidly by a visibility change.\n // If we don't see a visibility change within 100ms, it's probably a\n // regular focus change.\n hadFocusVisibleRecently = true;\n window.clearTimeout(hadFocusVisibleRecentlyTimeout);\n hadFocusVisibleRecentlyTimeout = window.setTimeout(function() {\n hadFocusVisibleRecently = false;\n }, 100);\n removeFocusVisibleClass(e.target);\n }\n }\n\n /**\n * If the user changes tabs, keep track of whether or not the previously\n * focused element had .focus-visible.\n * @param {Event} e\n */\n function onVisibilityChange(e) {\n if (document.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n if (hadFocusVisibleRecently) {\n hadKeyboardEvent = true;\n }\n addInitialPointerMoveListeners();\n }\n }\n\n /**\n * Add a group of listeners to detect usage of any pointing devices.\n * These listeners will be added when the polyfill first loads, and anytime\n * the window is blurred, so that they are active when the window regains\n * focus.\n */\n function addInitialPointerMoveListeners() {\n document.addEventListener('mousemove', onInitialPointerMove);\n document.addEventListener('mousedown', onInitialPointerMove);\n document.addEventListener('mouseup', onInitialPointerMove);\n document.addEventListener('pointermove', onInitialPointerMove);\n document.addEventListener('pointerdown', onInitialPointerMove);\n document.addEventListener('pointerup', onInitialPointerMove);\n document.addEventListener('touchmove', onInitialPointerMove);\n document.addEventListener('touchstart', onInitialPointerMove);\n document.addEventListener('touchend', onInitialPointerMove);\n }\n\n function removeInitialPointerMoveListeners() {\n document.removeEventListener('mousemove', onInitialPointerMove);\n document.removeEventListener('mousedown', onInitialPointerMove);\n document.removeEventListener('mouseup', onInitialPointerMove);\n document.removeEventListener('pointermove', onInitialPointerMove);\n document.removeEventListener('pointerdown', onInitialPointerMove);\n document.removeEventListener('pointerup', onInitialPointerMove);\n document.removeEventListener('touchmove', onInitialPointerMove);\n document.removeEventListener('touchstart', onInitialPointerMove);\n document.removeEventListener('touchend', onInitialPointerMove);\n }\n\n /**\n * When the polfyill first loads, assume the user is in keyboard modality.\n * If any event is received from a pointing device (e.g. mouse, pointer,\n * touch), turn off keyboard modality.\n * This accounts for situations where focus enters the page from the URL bar.\n * @param {Event} e\n */\n function onInitialPointerMove(e) {\n // Work around a Safari quirk that fires a mousemove on whenever the\n // window blurs, even if you're tabbing out of the page. \u00AF\\_(\u30C4)_/\u00AF\n if (e.target.nodeName && e.target.nodeName.toLowerCase() === 'html') {\n return;\n }\n\n hadKeyboardEvent = false;\n removeInitialPointerMoveListeners();\n }\n\n // For some kinds of state, we are interested in changes at the global scope\n // only. For example, global pointer input, global key presses and global\n // visibility change should affect the state at every scope:\n document.addEventListener('keydown', onKeyDown, true);\n document.addEventListener('mousedown', onPointerDown, true);\n document.addEventListener('pointerdown', onPointerDown, true);\n document.addEventListener('touchstart', onPointerDown, true);\n document.addEventListener('visibilitychange', onVisibilityChange, true);\n\n addInitialPointerMoveListeners();\n\n // For focus and blur, we specifically care about state changes in the local\n // scope. This is because focus / blur events that originate from within a\n // shadow root are not re-dispatched from the host element if it was already\n // the active element in its own scope:\n scope.addEventListener('focus', onFocus, true);\n scope.addEventListener('blur', onBlur, true);\n\n // We detect that a node is a ShadowRoot by ensuring that it is a\n // DocumentFragment and also has a host property. This check covers native\n // implementation and polyfill implementation transparently. If we only cared\n // about the native implementation, we could just check if the scope was\n // an instance of a ShadowRoot.\n if (scope.nodeType === Node.DOCUMENT_FRAGMENT_NODE && scope.host) {\n // Since a ShadowRoot is a special kind of DocumentFragment, it does not\n // have a root element to add a class to. So, we add this attribute to the\n // host element instead:\n scope.host.setAttribute('data-js-focus-visible', '');\n } else if (scope.nodeType === Node.DOCUMENT_NODE) {\n document.documentElement.classList.add('js-focus-visible');\n document.documentElement.setAttribute('data-js-focus-visible', '');\n }\n }\n\n // It is important to wrap all references to global window and document in\n // these checks to support server-side rendering use cases\n // @see https://github.com/WICG/focus-visible/issues/199\n if (typeof window !== 'undefined' && typeof document !== 'undefined') {\n // Make the polyfill helper globally available. This can be used as a signal\n // to interested libraries that wish to coordinate with the polyfill for e.g.,\n // applying the polyfill to a shadow root:\n window.applyFocusVisiblePolyfill = applyFocusVisiblePolyfill;\n\n // Notify interested libraries of the polyfill's presence, in case the\n // polyfill was loaded lazily:\n var event;\n\n try {\n event = new CustomEvent('focus-visible-polyfill-ready');\n } catch (error) {\n // IE11 does not support using CustomEvent as a constructor directly:\n event = document.createEvent('CustomEvent');\n event.initCustomEvent('focus-visible-polyfill-ready', false, false, {});\n }\n\n window.dispatchEvent(event);\n }\n\n if (typeof document !== 'undefined') {\n // Apply the polyfill to the global document, so that no JavaScript\n // coordination is required to use the polyfill in the top-level document:\n applyFocusVisiblePolyfill(document);\n }\n\n})));\n", "/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '"';\n break;\n case 38: // &\n escape = '&';\n break;\n case 39: // '\n escape = ''';\n break;\n case 60: // <\n escape = '<';\n break;\n case 62: // >\n escape = '>';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n", "/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/*\n * Copyright (c) 2016-2024 Martin Donath \n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n * IN THE SOFTWARE.\n */\n\nimport \"focus-visible\"\n\nimport {\n EMPTY,\n NEVER,\n Observable,\n Subject,\n defer,\n delay,\n filter,\n map,\n merge,\n mergeWith,\n shareReplay,\n switchMap\n} from \"rxjs\"\n\nimport { configuration, feature } from \"./_\"\nimport {\n at,\n getActiveElement,\n getOptionalElement,\n requestJSON,\n setLocation,\n setToggle,\n watchDocument,\n watchKeyboard,\n watchLocation,\n watchLocationTarget,\n watchMedia,\n watchPrint,\n watchScript,\n watchViewport\n} from \"./browser\"\nimport {\n getComponentElement,\n getComponentElements,\n mountAnnounce,\n mountBackToTop,\n mountConsent,\n mountContent,\n mountDialog,\n mountHeader,\n mountHeaderTitle,\n mountPalette,\n mountProgress,\n mountSearch,\n mountSearchHiglight,\n mountSidebar,\n mountSource,\n mountTableOfContents,\n mountTabs,\n watchHeader,\n watchMain\n} from \"./components\"\nimport {\n SearchIndex,\n setupClipboardJS,\n setupInstantNavigation,\n setupVersionSelector\n} from \"./integrations\"\nimport {\n patchEllipsis,\n patchIndeterminate,\n patchScrollfix,\n patchScrolllock\n} from \"./patches\"\nimport \"./polyfills\"\n\n/* ----------------------------------------------------------------------------\n * Functions - @todo refactor\n * ------------------------------------------------------------------------- */\n\n/**\n * Fetch search index\n *\n * @returns Search index observable\n */\nfunction fetchSearchIndex(): Observable {\n if (location.protocol === \"file:\") {\n return watchScript(\n `${new URL(\"search/search_index.js\", config.base)}`\n )\n .pipe(\n // @ts-ignore - @todo fix typings\n map(() => __index),\n shareReplay(1)\n )\n } else {\n return requestJSON(\n new URL(\"search/search_index.json\", config.base)\n )\n }\n}\n\n/* ----------------------------------------------------------------------------\n * Application\n * ------------------------------------------------------------------------- */\n\n/* Yay, JavaScript is available */\ndocument.documentElement.classList.remove(\"no-js\")\ndocument.documentElement.classList.add(\"js\")\n\n/* Set up navigation observables and subjects */\nconst document$ = watchDocument()\nconst location$ = watchLocation()\nconst target$ = watchLocationTarget(location$)\nconst keyboard$ = watchKeyboard()\n\n/* Set up media observables */\nconst viewport$ = watchViewport()\nconst tablet$ = watchMedia(\"(min-width: 960px)\")\nconst screen$ = watchMedia(\"(min-width: 1220px)\")\nconst print$ = watchPrint()\n\n/* Retrieve search index, if search is enabled */\nconst config = configuration()\nconst index$ = document.forms.namedItem(\"search\")\n ? fetchSearchIndex()\n : NEVER\n\n/* Set up Clipboard.js integration */\nconst alert$ = new Subject()\nsetupClipboardJS({ alert$ })\n\n/* Set up progress indicator */\nconst progress$ = new Subject()\n\n/* Set up instant navigation, if enabled */\nif (feature(\"navigation.instant\"))\n setupInstantNavigation({ location$, viewport$, progress$ })\n .subscribe(document$)\n\n/* Set up version selector */\nif (config.version?.provider === \"mike\")\n setupVersionSelector({ document$ })\n\n/* Always close drawer and search on navigation */\nmerge(location$, target$)\n .pipe(\n delay(125)\n )\n .subscribe(() => {\n setToggle(\"drawer\", false)\n setToggle(\"search\", false)\n })\n\n/* Set up global keyboard handlers */\nkeyboard$\n .pipe(\n filter(({ mode }) => mode === \"global\")\n )\n .subscribe(key => {\n switch (key.type) {\n\n /* Go to previous page */\n case \"p\":\n case \",\":\n const prev = getOptionalElement(\"link[rel=prev]\")\n if (typeof prev !== \"undefined\")\n setLocation(prev)\n break\n\n /* Go to next page */\n case \"n\":\n case \".\":\n const next = getOptionalElement(\"link[rel=next]\")\n if (typeof next !== \"undefined\")\n setLocation(next)\n break\n\n /* Expand navigation, see https://bit.ly/3ZjG5io */\n case \"Enter\":\n const active = getActiveElement()\n if (active instanceof HTMLLabelElement)\n active.click()\n }\n })\n\n/* Set up patches */\npatchEllipsis({ viewport$, document$ })\npatchIndeterminate({ document$, tablet$ })\npatchScrollfix({ document$ })\npatchScrolllock({ viewport$, tablet$ })\n\n/* Set up header and main area observable */\nconst header$ = watchHeader(getComponentElement(\"header\"), { viewport$ })\nconst main$ = document$\n .pipe(\n map(() => getComponentElement(\"main\")),\n switchMap(el => watchMain(el, { viewport$, header$ })),\n shareReplay(1)\n )\n\n/* Set up control component observables */\nconst control$ = merge(\n\n /* Consent */\n ...getComponentElements(\"consent\")\n .map(el => mountConsent(el, { target$ })),\n\n /* Dialog */\n ...getComponentElements(\"dialog\")\n .map(el => mountDialog(el, { alert$ })),\n\n /* Color palette */\n ...getComponentElements(\"palette\")\n .map(el => mountPalette(el)),\n\n /* Progress bar */\n ...getComponentElements(\"progress\")\n .map(el => mountProgress(el, { progress$ })),\n\n /* Search */\n ...getComponentElements(\"search\")\n .map(el => mountSearch(el, { index$, keyboard$ })),\n\n /* Repository information */\n ...getComponentElements(\"source\")\n .map(el => mountSource(el))\n)\n\n/* Set up content component observables */\nconst content$ = defer(() => merge(\n\n /* Announcement bar */\n ...getComponentElements(\"announce\")\n .map(el => mountAnnounce(el)),\n\n /* Content */\n ...getComponentElements(\"content\")\n .map(el => mountContent(el, { viewport$, target$, print$ })),\n\n /* Search highlighting */\n ...getComponentElements(\"content\")\n .map(el => feature(\"search.highlight\")\n ? mountSearchHiglight(el, { index$, location$ })\n : EMPTY\n ),\n\n /* Header */\n ...getComponentElements(\"header\")\n .map(el => mountHeader(el, { viewport$, header$, main$ })),\n\n /* Header title */\n ...getComponentElements(\"header-title\")\n .map(el => mountHeaderTitle(el, { viewport$, header$ })),\n\n /* Sidebar */\n ...getComponentElements(\"sidebar\")\n .map(el => el.getAttribute(\"data-md-type\") === \"navigation\"\n ? at(screen$, () => mountSidebar(el, { viewport$, header$, main$ }))\n : at(tablet$, () => mountSidebar(el, { viewport$, header$, main$ }))\n ),\n\n /* Navigation tabs */\n ...getComponentElements(\"tabs\")\n .map(el => mountTabs(el, { viewport$, header$ })),\n\n /* Table of contents */\n ...getComponentElements(\"toc\")\n .map(el => mountTableOfContents(el, {\n viewport$, header$, main$, target$\n })),\n\n /* Back-to-top button */\n ...getComponentElements(\"top\")\n .map(el => mountBackToTop(el, { viewport$, header$, main$, target$ }))\n))\n\n/* Set up component observables */\nconst component$ = document$\n .pipe(\n switchMap(() => content$),\n mergeWith(control$),\n shareReplay(1)\n )\n\n/* Subscribe to all components */\ncomponent$.subscribe()\n\n/* ----------------------------------------------------------------------------\n * Exports\n * ------------------------------------------------------------------------- */\n\nwindow.document$ = document$ /* Document observable */\nwindow.location$ = location$ /* Location subject */\nwindow.target$ = target$ /* Location target observable */\nwindow.keyboard$ = keyboard$ /* Keyboard observable */\nwindow.viewport$ = viewport$ /* Viewport observable */\nwindow.tablet$ = tablet$ /* Media tablet observable */\nwindow.screen$ = screen$ /* Media screen observable */\nwindow.print$ = print$ /* Media print observable */\nwindow.alert$ = alert$ /* Alert subject */\nwindow.progress$ = progress$ /* Progress indicator subject */\nwindow.component$ = component$ /* Component observable */\n", "/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n", "/**\n * Returns true if the object is a function.\n * @param value The value to check\n */\nexport function isFunction(value: any): value is (...args: any[]) => any {\n return typeof value === 'function';\n}\n", "/**\n * Used to create Error subclasses until the community moves away from ES5.\n *\n * This is because compiling from TypeScript down to ES5 has issues with subclassing Errors\n * as well as other built-in types: https://github.com/Microsoft/TypeScript/issues/12123\n *\n * @param createImpl A factory function to create the actual constructor implementation. The returned\n * function should be a named function that calls `_super` internally.\n */\nexport function createErrorClass(createImpl: (_super: any) => any): T {\n const _super = (instance: any) => {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n\n const ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n", "import { createErrorClass } from './createErrorClass';\n\nexport interface UnsubscriptionError extends Error {\n readonly errors: any[];\n}\n\nexport interface UnsubscriptionErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (errors: any[]): UnsubscriptionError;\n}\n\n/**\n * An error thrown when one or more errors have occurred during the\n * `unsubscribe` of a {@link Subscription}.\n */\nexport const UnsubscriptionError: UnsubscriptionErrorCtor = createErrorClass(\n (_super) =>\n function UnsubscriptionErrorImpl(this: any, errors: (Error | string)[]) {\n _super(this);\n this.message = errors\n ? `${errors.length} errors occurred during unsubscription:\n${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\\n ')}`\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n }\n);\n", "/**\n * Removes an item from an array, mutating it.\n * @param arr The array to remove the item from\n * @param item The item to remove\n */\nexport function arrRemove(arr: T[] | undefined | null, item: T) {\n if (arr) {\n const index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n", "import { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { SubscriptionLike, TeardownLogic, Unsubscribable } from './types';\nimport { arrRemove } from './util/arrRemove';\n\n/**\n * Represents a disposable resource, such as the execution of an Observable. A\n * Subscription has one important method, `unsubscribe`, that takes no argument\n * and just disposes the resource held by the subscription.\n *\n * Additionally, subscriptions may be grouped together through the `add()`\n * method, which will attach a child Subscription to the current Subscription.\n * When a Subscription is unsubscribed, all its children (and its grandchildren)\n * will be unsubscribed as well.\n *\n * @class Subscription\n */\nexport class Subscription implements SubscriptionLike {\n /** @nocollapse */\n public static EMPTY = (() => {\n const empty = new Subscription();\n empty.closed = true;\n return empty;\n })();\n\n /**\n * A flag to indicate whether this Subscription has already been unsubscribed.\n */\n public closed = false;\n\n private _parentage: Subscription[] | Subscription | null = null;\n\n /**\n * The list of registered finalizers to execute upon unsubscription. Adding and removing from this\n * list occurs in the {@link #add} and {@link #remove} methods.\n */\n private _finalizers: Exclude[] | null = null;\n\n /**\n * @param initialTeardown A function executed first as part of the finalization\n * process that is kicked off when {@link #unsubscribe} is called.\n */\n constructor(private initialTeardown?: () => void) {}\n\n /**\n * Disposes the resources held by the subscription. May, for instance, cancel\n * an ongoing Observable execution or cancel any other type of work that\n * started when the Subscription was created.\n * @return {void}\n */\n unsubscribe(): void {\n let errors: any[] | undefined;\n\n if (!this.closed) {\n this.closed = true;\n\n // Remove this from it's parents.\n const { _parentage } = this;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n for (const parent of _parentage) {\n parent.remove(this);\n }\n } else {\n _parentage.remove(this);\n }\n }\n\n const { initialTeardown: initialFinalizer } = this;\n if (isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n } catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n\n const { _finalizers } = this;\n if (_finalizers) {\n this._finalizers = null;\n for (const finalizer of _finalizers) {\n try {\n execFinalizer(finalizer);\n } catch (err) {\n errors = errors ?? [];\n if (err instanceof UnsubscriptionError) {\n errors = [...errors, ...err.errors];\n } else {\n errors.push(err);\n }\n }\n }\n }\n\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n }\n\n /**\n * Adds a finalizer to this subscription, so that finalization will be unsubscribed/called\n * when this subscription is unsubscribed. If this subscription is already {@link #closed},\n * because it has already been unsubscribed, then whatever finalizer is passed to it\n * will automatically be executed (unless the finalizer itself is also a closed subscription).\n *\n * Closed Subscriptions cannot be added as finalizers to any subscription. Adding a closed\n * subscription to a any subscription will result in no operation. (A noop).\n *\n * Adding a subscription to itself, or adding `null` or `undefined` will not perform any\n * operation at all. (A noop).\n *\n * `Subscription` instances that are added to this instance will automatically remove themselves\n * if they are unsubscribed. Functions and {@link Unsubscribable} objects that you wish to remove\n * will need to be removed manually with {@link #remove}\n *\n * @param teardown The finalization logic to add to this subscription.\n */\n add(teardown: TeardownLogic): void {\n // Only add the finalizer if it's not undefined\n // and don't add a subscription to itself.\n if (teardown && teardown !== this) {\n if (this.closed) {\n // If this subscription is already closed,\n // execute whatever finalizer is handed to it automatically.\n execFinalizer(teardown);\n } else {\n if (teardown instanceof Subscription) {\n // We don't add closed subscriptions, and we don't add the same subscription\n // twice. Subscription unsubscribe is idempotent.\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = this._finalizers ?? []).push(teardown);\n }\n }\n }\n\n /**\n * Checks to see if a this subscription already has a particular parent.\n * This will signal that this subscription has already been added to the parent in question.\n * @param parent the parent to check for\n */\n private _hasParent(parent: Subscription) {\n const { _parentage } = this;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n }\n\n /**\n * Adds a parent to this subscription so it can be removed from the parent if it\n * unsubscribes on it's own.\n *\n * NOTE: THIS ASSUMES THAT {@link _hasParent} HAS ALREADY BEEN CHECKED.\n * @param parent The parent subscription to add\n */\n private _addParent(parent: Subscription) {\n const { _parentage } = this;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n }\n\n /**\n * Called on a child when it is removed via {@link #remove}.\n * @param parent The parent to remove\n */\n private _removeParent(parent: Subscription) {\n const { _parentage } = this;\n if (_parentage === parent) {\n this._parentage = null;\n } else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n }\n\n /**\n * Removes a finalizer from this subscription that was previously added with the {@link #add} method.\n *\n * Note that `Subscription` instances, when unsubscribed, will automatically remove themselves\n * from every other `Subscription` they have been added to. This means that using the `remove` method\n * is not a common thing and should be used thoughtfully.\n *\n * If you add the same finalizer instance of a function or an unsubscribable object to a `Subscription` instance\n * more than once, you will need to call `remove` the same number of times to remove all instances.\n *\n * All finalizer instances are removed to free up memory upon unsubscription.\n *\n * @param teardown The finalizer to remove from this subscription\n */\n remove(teardown: Exclude): void {\n const { _finalizers } = this;\n _finalizers && arrRemove(_finalizers, teardown);\n\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n }\n}\n\nexport const EMPTY_SUBSCRIPTION = Subscription.EMPTY;\n\nexport function isSubscription(value: any): value is Subscription {\n return (\n value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe))\n );\n}\n\nfunction execFinalizer(finalizer: Unsubscribable | (() => void)) {\n if (isFunction(finalizer)) {\n finalizer();\n } else {\n finalizer.unsubscribe();\n }\n}\n", "import { Subscriber } from './Subscriber';\nimport { ObservableNotification } from './types';\n\n/**\n * The {@link GlobalConfig} object for RxJS. It is used to configure things\n * like how to react on unhandled errors.\n */\nexport const config: GlobalConfig = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n\n/**\n * The global configuration object for RxJS, used to configure things\n * like how to react on unhandled errors. Accessible via {@link config}\n * object.\n */\nexport interface GlobalConfig {\n /**\n * A registration point for unhandled errors from RxJS. These are errors that\n * cannot were not handled by consuming code in the usual subscription path. For\n * example, if you have this configured, and you subscribe to an observable without\n * providing an error handler, errors from that subscription will end up here. This\n * will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onUnhandledError: ((err: any) => void) | null;\n\n /**\n * A registration point for notifications that cannot be sent to subscribers because they\n * have completed, errored or have been explicitly unsubscribed. By default, next, complete\n * and error notifications sent to stopped subscribers are noops. However, sometimes callers\n * might want a different behavior. For example, with sources that attempt to report errors\n * to stopped subscribers, a caller can configure RxJS to throw an unhandled error instead.\n * This will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onStoppedNotification: ((notification: ObservableNotification, subscriber: Subscriber) => void) | null;\n\n /**\n * The promise constructor used by default for {@link Observable#toPromise toPromise} and {@link Observable#forEach forEach}\n * methods.\n *\n * @deprecated As of version 8, RxJS will no longer support this sort of injection of a\n * Promise constructor. If you need a Promise implementation other than native promises,\n * please polyfill/patch Promise as you see appropriate. Will be removed in v8.\n */\n Promise?: PromiseConstructorLike;\n\n /**\n * If true, turns on synchronous error rethrowing, which is a deprecated behavior\n * in v6 and higher. This behavior enables bad patterns like wrapping a subscribe\n * call in a try/catch block. It also enables producer interference, a nasty bug\n * where a multicast can be broken for all observers by a downstream consumer with\n * an unhandled error. DO NOT USE THIS FLAG UNLESS IT'S NEEDED TO BUY TIME\n * FOR MIGRATION REASONS.\n *\n * @deprecated As of version 8, RxJS will no longer support synchronous throwing\n * of unhandled errors. All errors will be thrown on a separate call stack to prevent bad\n * behaviors described above. Will be removed in v8.\n */\n useDeprecatedSynchronousErrorHandling: boolean;\n\n /**\n * If true, enables an as-of-yet undocumented feature from v5: The ability to access\n * `unsubscribe()` via `this` context in `next` functions created in observers passed\n * to `subscribe`.\n *\n * This is being removed because the performance was severely problematic, and it could also cause\n * issues when types other than POJOs are passed to subscribe as subscribers, as they will likely have\n * their `this` context overwritten.\n *\n * @deprecated As of version 8, RxJS will no longer support altering the\n * context of next functions provided as part of an observer to Subscribe. Instead,\n * you will have access to a subscription or a signal or token that will allow you to do things like\n * unsubscribe and test closed status. Will be removed in v8.\n */\n useDeprecatedNextContext: boolean;\n}\n", "import type { TimerHandle } from './timerHandle';\ntype SetTimeoutFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearTimeoutFunction = (handle: TimerHandle) => void;\n\ninterface TimeoutProvider {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n delegate:\n | {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n }\n | undefined;\n}\n\nexport const timeoutProvider: TimeoutProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setTimeout(handler: () => void, timeout?: number, ...args) {\n const { delegate } = timeoutProvider;\n if (delegate?.setTimeout) {\n return delegate.setTimeout(handler, timeout, ...args);\n }\n return setTimeout(handler, timeout, ...args);\n },\n clearTimeout(handle) {\n const { delegate } = timeoutProvider;\n return (delegate?.clearTimeout || clearTimeout)(handle as any);\n },\n delegate: undefined,\n};\n", "import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\n\n/**\n * Handles an error on another job either with the user-configured {@link onUnhandledError},\n * or by throwing it on that new job so it can be picked up by `window.onerror`, `process.on('error')`, etc.\n *\n * This should be called whenever there is an error that is out-of-band with the subscription\n * or when an error hits a terminal boundary of the subscription and no error handler was provided.\n *\n * @param err the error to report\n */\nexport function reportUnhandledError(err: any) {\n timeoutProvider.setTimeout(() => {\n const { onUnhandledError } = config;\n if (onUnhandledError) {\n // Execute the user-configured error handler.\n onUnhandledError(err);\n } else {\n // Throw so it is picked up by the runtime's uncaught error mechanism.\n throw err;\n }\n });\n}\n", "/* tslint:disable:no-empty */\nexport function noop() { }\n", "import { CompleteNotification, NextNotification, ErrorNotification } from './types';\n\n/**\n * A completion object optimized for memory use and created to be the\n * same \"shape\" as other notifications in v8.\n * @internal\n */\nexport const COMPLETE_NOTIFICATION = (() => createNotification('C', undefined, undefined) as CompleteNotification)();\n\n/**\n * Internal use only. Creates an optimized error notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function errorNotification(error: any): ErrorNotification {\n return createNotification('E', undefined, error) as any;\n}\n\n/**\n * Internal use only. Creates an optimized next notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function nextNotification(value: T) {\n return createNotification('N', value, undefined) as NextNotification;\n}\n\n/**\n * Ensures that all notifications created internally have the same \"shape\" in v8.\n *\n * TODO: This is only exported to support a crazy legacy test in `groupBy`.\n * @internal\n */\nexport function createNotification(kind: 'N' | 'E' | 'C', value: any, error: any) {\n return {\n kind,\n value,\n error,\n };\n}\n", "import { config } from '../config';\n\nlet context: { errorThrown: boolean; error: any } | null = null;\n\n/**\n * Handles dealing with errors for super-gross mode. Creates a context, in which\n * any synchronously thrown errors will be passed to {@link captureError}. Which\n * will record the error such that it will be rethrown after the call back is complete.\n * TODO: Remove in v8\n * @param cb An immediately executed function.\n */\nexport function errorContext(cb: () => void) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n const isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n const { errorThrown, error } = context!;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n } else {\n // This is the general non-deprecated path for everyone that\n // isn't crazy enough to use super-gross mode (useDeprecatedSynchronousErrorHandling)\n cb();\n }\n}\n\n/**\n * Captures errors only in super-gross mode.\n * @param err the error to capture\n */\nexport function captureError(err: any) {\n if (config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\n", "import { isFunction } from './util/isFunction';\nimport { Observer, ObservableNotification } from './types';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\n\n/**\n * Implements the {@link Observer} interface and extends the\n * {@link Subscription} class. While the {@link Observer} is the public API for\n * consuming the values of an {@link Observable}, all Observers get converted to\n * a Subscriber, in order to provide Subscription-like capabilities such as\n * `unsubscribe`. Subscriber is a common type in RxJS, and crucial for\n * implementing operators, but it is rarely used as a public API.\n *\n * @class Subscriber\n */\nexport class Subscriber extends Subscription implements Observer {\n /**\n * A static factory for a Subscriber, given a (potentially partial) definition\n * of an Observer.\n * @param next The `next` callback of an Observer.\n * @param error The `error` callback of an\n * Observer.\n * @param complete The `complete` callback of an\n * Observer.\n * @return A Subscriber wrapping the (partially defined)\n * Observer represented by the given arguments.\n * @nocollapse\n * @deprecated Do not use. Will be removed in v8. There is no replacement for this\n * method, and there is no reason to be creating instances of `Subscriber` directly.\n * If you have a specific use case, please file an issue.\n */\n static create(next?: (x?: T) => void, error?: (e?: any) => void, complete?: () => void): Subscriber {\n return new SafeSubscriber(next, error, complete);\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected isStopped: boolean = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected destination: Subscriber | Observer; // this `any` is the escape hatch to erase extra type param (e.g. R)\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * There is no reason to directly create an instance of Subscriber. This type is exported for typings reasons.\n */\n constructor(destination?: Subscriber | Observer) {\n super();\n if (destination) {\n this.destination = destination;\n // Automatically chain subscriptions together here.\n // if destination is a Subscription, then it is a Subscriber.\n if (isSubscription(destination)) {\n destination.add(this);\n }\n } else {\n this.destination = EMPTY_OBSERVER;\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `next` from\n * the Observable, with a value. The Observable may call this method 0 or more\n * times.\n * @param {T} [value] The `next` value.\n * @return {void}\n */\n next(value?: T): void {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n } else {\n this._next(value!);\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `error` from\n * the Observable, with an attached `Error`. Notifies the Observer that\n * the Observable has experienced an error condition.\n * @param {any} [err] The `error` exception.\n * @return {void}\n */\n error(err?: any): void {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n } else {\n this.isStopped = true;\n this._error(err);\n }\n }\n\n /**\n * The {@link Observer} callback to receive a valueless notification of type\n * `complete` from the Observable. Notifies the Observer that the Observable\n * has finished sending push-based notifications.\n * @return {void}\n */\n complete(): void {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n } else {\n this.isStopped = true;\n this._complete();\n }\n }\n\n unsubscribe(): void {\n if (!this.closed) {\n this.isStopped = true;\n super.unsubscribe();\n this.destination = null!;\n }\n }\n\n protected _next(value: T): void {\n this.destination.next(value);\n }\n\n protected _error(err: any): void {\n try {\n this.destination.error(err);\n } finally {\n this.unsubscribe();\n }\n }\n\n protected _complete(): void {\n try {\n this.destination.complete();\n } finally {\n this.unsubscribe();\n }\n }\n}\n\n/**\n * This bind is captured here because we want to be able to have\n * compatibility with monoid libraries that tend to use a method named\n * `bind`. In particular, a library called Monio requires this.\n */\nconst _bind = Function.prototype.bind;\n\nfunction bind any>(fn: Fn, thisArg: any): Fn {\n return _bind.call(fn, thisArg);\n}\n\n/**\n * Internal optimization only, DO NOT EXPOSE.\n * @internal\n */\nclass ConsumerObserver implements Observer {\n constructor(private partialObserver: Partial>) {}\n\n next(value: T): void {\n const { partialObserver } = this;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n\n error(err: any): void {\n const { partialObserver } = this;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n } catch (error) {\n handleUnhandledError(error);\n }\n } else {\n handleUnhandledError(err);\n }\n }\n\n complete(): void {\n const { partialObserver } = this;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n}\n\nexport class SafeSubscriber extends Subscriber {\n constructor(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((e?: any) => void) | null,\n complete?: (() => void) | null\n ) {\n super();\n\n let partialObserver: Partial>;\n if (isFunction(observerOrNext) || !observerOrNext) {\n // The first argument is a function, not an observer. The next\n // two arguments *could* be observers, or they could be empty.\n partialObserver = {\n next: (observerOrNext ?? undefined) as (((value: T) => void) | undefined),\n error: error ?? undefined,\n complete: complete ?? undefined,\n };\n } else {\n // The first argument is a partial observer.\n let context: any;\n if (this && config.useDeprecatedNextContext) {\n // This is a deprecated path that made `this.unsubscribe()` available in\n // next handler functions passed to subscribe. This only exists behind a flag\n // now, as it is *very* slow.\n context = Object.create(observerOrNext);\n context.unsubscribe = () => this.unsubscribe();\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context),\n error: observerOrNext.error && bind(observerOrNext.error, context),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context),\n };\n } else {\n // The \"normal\" path. Just use the partial observer directly.\n partialObserver = observerOrNext;\n }\n }\n\n // Wrap the partial observer to ensure it's a full observer, and\n // make sure proper error handling is accounted for.\n this.destination = new ConsumerObserver(partialObserver);\n }\n}\n\nfunction handleUnhandledError(error: any) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n } else {\n // Ideal path, we report this as an unhandled error,\n // which is thrown on a new call stack.\n reportUnhandledError(error);\n }\n}\n\n/**\n * An error handler used when no error handler was supplied\n * to the SafeSubscriber -- meaning no error handler was supplied\n * do the `subscribe` call on our observable.\n * @param err The error to handle\n */\nfunction defaultErrorHandler(err: any) {\n throw err;\n}\n\n/**\n * A handler for notifications that cannot be sent to a stopped subscriber.\n * @param notification The notification being sent\n * @param subscriber The stopped subscriber\n */\nfunction handleStoppedNotification(notification: ObservableNotification, subscriber: Subscriber) {\n const { onStoppedNotification } = config;\n onStoppedNotification && timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));\n}\n\n/**\n * The observer used as a stub for subscriptions where the user did not\n * pass any arguments to `subscribe`. Comes with the default error handling\n * behavior.\n */\nexport const EMPTY_OBSERVER: Readonly> & { closed: true } = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n", "/**\n * Symbol.observable or a string \"@@observable\". Used for interop\n *\n * @deprecated We will no longer be exporting this symbol in upcoming versions of RxJS.\n * Instead polyfill and use Symbol.observable directly *or* use https://www.npmjs.com/package/symbol-observable\n */\nexport const observable: string | symbol = (() => (typeof Symbol === 'function' && Symbol.observable) || '@@observable')();\n", "/**\n * This function takes one parameter and just returns it. Simply put,\n * this is like `(x: T): T => x`.\n *\n * ## Examples\n *\n * This is useful in some cases when using things like `mergeMap`\n *\n * ```ts\n * import { interval, take, map, range, mergeMap, identity } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(5));\n *\n * const result$ = source$.pipe(\n * map(i => range(i)),\n * mergeMap(identity) // same as mergeMap(x => x)\n * );\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * Or when you want to selectively apply an operator\n *\n * ```ts\n * import { interval, take, identity } from 'rxjs';\n *\n * const shouldLimit = () => Math.random() < 0.5;\n *\n * const source$ = interval(1000);\n *\n * const result$ = source$.pipe(shouldLimit() ? take(5) : identity);\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * @param x Any value that is returned by this function\n * @returns The value passed as the first parameter to this function\n */\nexport function identity(x: T): T {\n return x;\n}\n", "import { identity } from './identity';\nimport { UnaryFunction } from '../types';\n\nexport function pipe(): typeof identity;\nexport function pipe(fn1: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction, fn3: UnaryFunction): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction,\n ...fns: UnaryFunction[]\n): UnaryFunction;\n\n/**\n * pipe() can be called on one or more functions, each of which can take one argument (\"UnaryFunction\")\n * and uses it to return a value.\n * It returns a function that takes one argument, passes it to the first UnaryFunction, and then\n * passes the result to the next one, passes that result to the next one, and so on. \n */\nexport function pipe(...fns: Array>): UnaryFunction {\n return pipeFromArray(fns);\n}\n\n/** @internal */\nexport function pipeFromArray(fns: Array>): UnaryFunction {\n if (fns.length === 0) {\n return identity as UnaryFunction;\n }\n\n if (fns.length === 1) {\n return fns[0];\n }\n\n return function piped(input: T): R {\n return fns.reduce((prev: any, fn: UnaryFunction) => fn(prev), input as any);\n };\n}\n", "import { Operator } from './Operator';\nimport { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription, Subscription } from './Subscription';\nimport { TeardownLogic, OperatorFunction, Subscribable, Observer } from './types';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A representation of any set of values over any amount of time. This is the most basic building block\n * of RxJS.\n *\n * @class Observable\n */\nexport class Observable implements Subscribable {\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n source: Observable | undefined;\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n operator: Operator | undefined;\n\n /**\n * @constructor\n * @param {Function} subscribe the function that is called when the Observable is\n * initially subscribed to. This function is given a Subscriber, to which new values\n * can be `next`ed, or an `error` method can be called to raise an error, or\n * `complete` can be called to notify of a successful completion.\n */\n constructor(subscribe?: (this: Observable, subscriber: Subscriber) => TeardownLogic) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n\n // HACK: Since TypeScript inherits static properties too, we have to\n // fight against TypeScript here so Subject can have a different static create signature\n /**\n * Creates a new Observable by calling the Observable constructor\n * @owner Observable\n * @method create\n * @param {Function} subscribe? the subscriber function to be passed to the Observable constructor\n * @return {Observable} a new observable\n * @nocollapse\n * @deprecated Use `new Observable()` instead. Will be removed in v8.\n */\n static create: (...args: any[]) => any = (subscribe?: (subscriber: Subscriber) => TeardownLogic) => {\n return new Observable(subscribe);\n };\n\n /**\n * Creates a new Observable, with this Observable instance as the source, and the passed\n * operator defined as the new observable's operator.\n * @method lift\n * @param operator the operator defining the operation to take on the observable\n * @return a new observable with the Operator applied\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * If you have implemented an operator using `lift`, it is recommended that you create an\n * operator by simply returning `new Observable()` directly. See \"Creating new operators from\n * scratch\" section here: https://rxjs.dev/guide/operators\n */\n lift(operator?: Operator): Observable {\n const observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n }\n\n subscribe(observerOrNext?: Partial> | ((value: T) => void)): Subscription;\n /** @deprecated Instead of passing separate callback arguments, use an observer argument. Signatures taking separate callback arguments will be removed in v8. Details: https://rxjs.dev/deprecations/subscribe-arguments */\n subscribe(next?: ((value: T) => void) | null, error?: ((error: any) => void) | null, complete?: (() => void) | null): Subscription;\n /**\n * Invokes an execution of an Observable and registers Observer handlers for notifications it will emit.\n *\n * Use it when you have all these Observables, but still nothing is happening.\n *\n * `subscribe` is not a regular operator, but a method that calls Observable's internal `subscribe` function. It\n * might be for example a function that you passed to Observable's constructor, but most of the time it is\n * a library implementation, which defines what will be emitted by an Observable, and when it be will emitted. This means\n * that calling `subscribe` is actually the moment when Observable starts its work, not when it is created, as it is often\n * the thought.\n *\n * Apart from starting the execution of an Observable, this method allows you to listen for values\n * that an Observable emits, as well as for when it completes or errors. You can achieve this in two\n * of the following ways.\n *\n * The first way is creating an object that implements {@link Observer} interface. It should have methods\n * defined by that interface, but note that it should be just a regular JavaScript object, which you can create\n * yourself in any way you want (ES6 class, classic function constructor, object literal etc.). In particular, do\n * not attempt to use any RxJS implementation details to create Observers - you don't need them. Remember also\n * that your object does not have to implement all methods. If you find yourself creating a method that doesn't\n * do anything, you can simply omit it. Note however, if the `error` method is not provided and an error happens,\n * it will be thrown asynchronously. Errors thrown asynchronously cannot be caught using `try`/`catch`. Instead,\n * use the {@link onUnhandledError} configuration option or use a runtime handler (like `window.onerror` or\n * `process.on('error)`) to be notified of unhandled errors. Because of this, it's recommended that you provide\n * an `error` method to avoid missing thrown errors.\n *\n * The second way is to give up on Observer object altogether and simply provide callback functions in place of its methods.\n * This means you can provide three functions as arguments to `subscribe`, where the first function is equivalent\n * of a `next` method, the second of an `error` method and the third of a `complete` method. Just as in case of an Observer,\n * if you do not need to listen for something, you can omit a function by passing `undefined` or `null`,\n * since `subscribe` recognizes these functions by where they were placed in function call. When it comes\n * to the `error` function, as with an Observer, if not provided, errors emitted by an Observable will be thrown asynchronously.\n *\n * You can, however, subscribe with no parameters at all. This may be the case where you're not interested in terminal events\n * and you also handled emissions internally by using operators (e.g. using `tap`).\n *\n * Whichever style of calling `subscribe` you use, in both cases it returns a Subscription object.\n * This object allows you to call `unsubscribe` on it, which in turn will stop the work that an Observable does and will clean\n * up all resources that an Observable used. Note that cancelling a subscription will not call `complete` callback\n * provided to `subscribe` function, which is reserved for a regular completion signal that comes from an Observable.\n *\n * Remember that callbacks provided to `subscribe` are not guaranteed to be called asynchronously.\n * It is an Observable itself that decides when these functions will be called. For example {@link of}\n * by default emits all its values synchronously. Always check documentation for how given Observable\n * will behave when subscribed and if its default behavior can be modified with a `scheduler`.\n *\n * #### Examples\n *\n * Subscribe with an {@link guide/observer Observer}\n *\n * ```ts\n * import { of } from 'rxjs';\n *\n * const sumObserver = {\n * sum: 0,\n * next(value) {\n * console.log('Adding: ' + value);\n * this.sum = this.sum + value;\n * },\n * error() {\n * // We actually could just remove this method,\n * // since we do not really care about errors right now.\n * },\n * complete() {\n * console.log('Sum equals: ' + this.sum);\n * }\n * };\n *\n * of(1, 2, 3) // Synchronously emits 1, 2, 3 and then completes.\n * .subscribe(sumObserver);\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Subscribe with functions ({@link deprecations/subscribe-arguments deprecated})\n *\n * ```ts\n * import { of } from 'rxjs'\n *\n * let sum = 0;\n *\n * of(1, 2, 3).subscribe(\n * value => {\n * console.log('Adding: ' + value);\n * sum = sum + value;\n * },\n * undefined,\n * () => console.log('Sum equals: ' + sum)\n * );\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Cancel a subscription\n *\n * ```ts\n * import { interval } from 'rxjs';\n *\n * const subscription = interval(1000).subscribe({\n * next(num) {\n * console.log(num)\n * },\n * complete() {\n * // Will not be called, even when cancelling subscription.\n * console.log('completed!');\n * }\n * });\n *\n * setTimeout(() => {\n * subscription.unsubscribe();\n * console.log('unsubscribed!');\n * }, 2500);\n *\n * // Logs:\n * // 0 after 1s\n * // 1 after 2s\n * // 'unsubscribed!' after 2.5s\n * ```\n *\n * @param {Observer|Function} observerOrNext (optional) Either an observer with methods to be called,\n * or the first of three possible handlers, which is the handler for each value emitted from the subscribed\n * Observable.\n * @param {Function} error (optional) A handler for a terminal event resulting from an error. If no error handler is provided,\n * the error will be thrown asynchronously as unhandled.\n * @param {Function} complete (optional) A handler for a terminal event resulting from successful completion.\n * @return {Subscription} a subscription reference to the registered handlers\n * @method subscribe\n */\n subscribe(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((error: any) => void) | null,\n complete?: (() => void) | null\n ): Subscription {\n const subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n\n errorContext(() => {\n const { operator, source } = this;\n subscriber.add(\n operator\n ? // We're dealing with a subscription in the\n // operator chain to one of our lifted operators.\n operator.call(subscriber, source)\n : source\n ? // If `source` has a value, but `operator` does not, something that\n // had intimate knowledge of our API, like our `Subject`, must have\n // set it. We're going to just call `_subscribe` directly.\n this._subscribe(subscriber)\n : // In all other cases, we're likely wrapping a user-provided initializer\n // function, so we need to catch errors and handle them appropriately.\n this._trySubscribe(subscriber)\n );\n });\n\n return subscriber;\n }\n\n /** @internal */\n protected _trySubscribe(sink: Subscriber): TeardownLogic {\n try {\n return this._subscribe(sink);\n } catch (err) {\n // We don't need to return anything in this case,\n // because it's just going to try to `add()` to a subscription\n // above.\n sink.error(err);\n }\n }\n\n /**\n * Used as a NON-CANCELLABLE means of subscribing to an observable, for use with\n * APIs that expect promises, like `async/await`. You cannot unsubscribe from this.\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * #### Example\n *\n * ```ts\n * import { interval, take } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(4));\n *\n * async function getTotal() {\n * let total = 0;\n *\n * await source$.forEach(value => {\n * total += value;\n * console.log('observable -> ' + value);\n * });\n *\n * return total;\n * }\n *\n * getTotal().then(\n * total => console.log('Total: ' + total)\n * );\n *\n * // Expected:\n * // 'observable -> 0'\n * // 'observable -> 1'\n * // 'observable -> 2'\n * // 'observable -> 3'\n * // 'Total: 6'\n * ```\n *\n * @param next a handler for each value emitted by the observable\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n */\n forEach(next: (value: T) => void): Promise;\n\n /**\n * @param next a handler for each value emitted by the observable\n * @param promiseCtor a constructor function used to instantiate the Promise\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n * @deprecated Passing a Promise constructor will no longer be available\n * in upcoming versions of RxJS. This is because it adds weight to the library, for very\n * little benefit. If you need this functionality, it is recommended that you either\n * polyfill Promise, or you create an adapter to convert the returned native promise\n * to whatever promise implementation you wanted. Will be removed in v8.\n */\n forEach(next: (value: T) => void, promiseCtor: PromiseConstructorLike): Promise;\n\n forEach(next: (value: T) => void, promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n const subscriber = new SafeSubscriber({\n next: (value) => {\n try {\n next(value);\n } catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n this.subscribe(subscriber);\n }) as Promise;\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): TeardownLogic {\n return this.source?.subscribe(subscriber);\n }\n\n /**\n * An interop point defined by the es7-observable spec https://github.com/zenparsing/es-observable\n * @method Symbol.observable\n * @return {Observable} this instance of the observable\n */\n [Symbol_observable]() {\n return this;\n }\n\n /* tslint:disable:max-line-length */\n pipe(): Observable;\n pipe(op1: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction, op3: OperatorFunction): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction,\n ...operations: OperatorFunction[]\n ): Observable;\n /* tslint:enable:max-line-length */\n\n /**\n * Used to stitch together functional operators into a chain.\n * @method pipe\n * @return {Observable} the Observable result of all of the operators having\n * been called in the order they were passed in.\n *\n * ## Example\n *\n * ```ts\n * import { interval, filter, map, scan } from 'rxjs';\n *\n * interval(1000)\n * .pipe(\n * filter(x => x % 2 === 0),\n * map(x => x + x),\n * scan((acc, x) => acc + x)\n * )\n * .subscribe(x => console.log(x));\n * ```\n */\n pipe(...operations: OperatorFunction[]): Observable {\n return pipeFromArray(operations)(this);\n }\n\n /* tslint:disable:max-line-length */\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: typeof Promise): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: PromiseConstructorLike): Promise;\n /* tslint:enable:max-line-length */\n\n /**\n * Subscribe to this Observable and get a Promise resolving on\n * `complete` with the last emission (if any).\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * @method toPromise\n * @param [promiseCtor] a constructor function used to instantiate\n * the Promise\n * @return A Promise that resolves with the last value emit, or\n * rejects on an error. If there were no emissions, Promise\n * resolves with undefined.\n * @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise\n */\n toPromise(promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n let value: T | undefined;\n this.subscribe(\n (x: T) => (value = x),\n (err: any) => reject(err),\n () => resolve(value)\n );\n }) as Promise;\n }\n}\n\n/**\n * Decides between a passed promise constructor from consuming code,\n * A default configured promise constructor, and the native promise\n * constructor and returns it. If nothing can be found, it will throw\n * an error.\n * @param promiseCtor The optional promise constructor to passed by consuming code\n */\nfunction getPromiseCtor(promiseCtor: PromiseConstructorLike | undefined) {\n return promiseCtor ?? config.Promise ?? Promise;\n}\n\nfunction isObserver(value: any): value is Observer {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\n\nfunction isSubscriber(value: any): value is Subscriber {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n", "import { Observable } from '../Observable';\nimport { Subscriber } from '../Subscriber';\nimport { OperatorFunction } from '../types';\nimport { isFunction } from './isFunction';\n\n/**\n * Used to determine if an object is an Observable with a lift function.\n */\nexport function hasLift(source: any): source is { lift: InstanceType['lift'] } {\n return isFunction(source?.lift);\n}\n\n/**\n * Creates an `OperatorFunction`. Used to define operators throughout the library in a concise way.\n * @param init The logic to connect the liftedSource to the subscriber at the moment of subscription.\n */\nexport function operate(\n init: (liftedSource: Observable, subscriber: Subscriber) => (() => void) | void\n): OperatorFunction {\n return (source: Observable) => {\n if (hasLift(source)) {\n return source.lift(function (this: Subscriber, liftedSource: Observable) {\n try {\n return init(liftedSource, this);\n } catch (err) {\n this.error(err);\n }\n });\n }\n throw new TypeError('Unable to lift unknown Observable type');\n };\n}\n", "import { Subscriber } from '../Subscriber';\n\n/**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional teardown logic here. This will only be called on teardown if the\n * subscriber itself is not already closed. This is called after all other teardown logic is executed.\n */\nexport function createOperatorSubscriber(\n destination: Subscriber,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n onFinalize?: () => void\n): Subscriber {\n return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize);\n}\n\n/**\n * A generic helper for allowing operators to be created with a Subscriber and\n * use closures to capture necessary state from the operator function itself.\n */\nexport class OperatorSubscriber extends Subscriber {\n /**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional finalization logic here. This will only be called on finalization if the\n * subscriber itself is not already closed. This is called after all other finalization logic is executed.\n * @param shouldUnsubscribe An optional check to see if an unsubscribe call should truly unsubscribe.\n * NOTE: This currently **ONLY** exists to support the strange behavior of {@link groupBy}, where unsubscription\n * to the resulting observable does not actually disconnect from the source if there are active subscriptions\n * to any grouped observable. (DO NOT EXPOSE OR USE EXTERNALLY!!!)\n */\n constructor(\n destination: Subscriber,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n private onFinalize?: () => void,\n private shouldUnsubscribe?: () => boolean\n ) {\n // It's important - for performance reasons - that all of this class's\n // members are initialized and that they are always initialized in the same\n // order. This will ensure that all OperatorSubscriber instances have the\n // same hidden class in V8. This, in turn, will help keep the number of\n // hidden classes involved in property accesses within the base class as\n // low as possible. If the number of hidden classes involved exceeds four,\n // the property accesses will become megamorphic and performance penalties\n // will be incurred - i.e. inline caches won't be used.\n //\n // The reasons for ensuring all instances have the same hidden class are\n // further discussed in this blog post from Benedikt Meurer:\n // https://benediktmeurer.de/2018/03/23/impact-of-polymorphism-on-component-based-frameworks-like-react/\n super(destination);\n this._next = onNext\n ? function (this: OperatorSubscriber, value: T) {\n try {\n onNext(value);\n } catch (err) {\n destination.error(err);\n }\n }\n : super._next;\n this._error = onError\n ? function (this: OperatorSubscriber, err: any) {\n try {\n onError(err);\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._error;\n this._complete = onComplete\n ? function (this: OperatorSubscriber) {\n try {\n onComplete();\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._complete;\n }\n\n unsubscribe() {\n if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {\n const { closed } = this;\n super.unsubscribe();\n // Execute additional teardown if we have any and we didn't already do so.\n !closed && this.onFinalize?.();\n }\n }\n}\n", "import { Subscription } from '../Subscription';\n\ninterface AnimationFrameProvider {\n schedule(callback: FrameRequestCallback): Subscription;\n requestAnimationFrame: typeof requestAnimationFrame;\n cancelAnimationFrame: typeof cancelAnimationFrame;\n delegate:\n | {\n requestAnimationFrame: typeof requestAnimationFrame;\n cancelAnimationFrame: typeof cancelAnimationFrame;\n }\n | undefined;\n}\n\nexport const animationFrameProvider: AnimationFrameProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n schedule(callback) {\n let request = requestAnimationFrame;\n let cancel: typeof cancelAnimationFrame | undefined = cancelAnimationFrame;\n const { delegate } = animationFrameProvider;\n if (delegate) {\n request = delegate.requestAnimationFrame;\n cancel = delegate.cancelAnimationFrame;\n }\n const handle = request((timestamp) => {\n // Clear the cancel function. The request has been fulfilled, so\n // attempting to cancel the request upon unsubscription would be\n // pointless.\n cancel = undefined;\n callback(timestamp);\n });\n return new Subscription(() => cancel?.(handle));\n },\n requestAnimationFrame(...args) {\n const { delegate } = animationFrameProvider;\n return (delegate?.requestAnimationFrame || requestAnimationFrame)(...args);\n },\n cancelAnimationFrame(...args) {\n const { delegate } = animationFrameProvider;\n return (delegate?.cancelAnimationFrame || cancelAnimationFrame)(...args);\n },\n delegate: undefined,\n};\n", "import { createErrorClass } from './createErrorClass';\n\nexport interface ObjectUnsubscribedError extends Error {}\n\nexport interface ObjectUnsubscribedErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (): ObjectUnsubscribedError;\n}\n\n/**\n * An error thrown when an action is invalid because the object has been\n * unsubscribed.\n *\n * @see {@link Subject}\n * @see {@link BehaviorSubject}\n *\n * @class ObjectUnsubscribedError\n */\nexport const ObjectUnsubscribedError: ObjectUnsubscribedErrorCtor = createErrorClass(\n (_super) =>\n function ObjectUnsubscribedErrorImpl(this: any) {\n _super(this);\n this.name = 'ObjectUnsubscribedError';\n this.message = 'object unsubscribed';\n }\n);\n", "import { Operator } from './Operator';\nimport { Observable } from './Observable';\nimport { Subscriber } from './Subscriber';\nimport { Subscription, EMPTY_SUBSCRIPTION } from './Subscription';\nimport { Observer, SubscriptionLike, TeardownLogic } from './types';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { arrRemove } from './util/arrRemove';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A Subject is a special type of Observable that allows values to be\n * multicasted to many Observers. Subjects are like EventEmitters.\n *\n * Every Subject is an Observable and an Observer. You can subscribe to a\n * Subject, and you can call next to feed values as well as error and complete.\n */\nexport class Subject extends Observable implements SubscriptionLike {\n closed = false;\n\n private currentObservers: Observer[] | null = null;\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n observers: Observer[] = [];\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n isStopped = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n hasError = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n thrownError: any = null;\n\n /**\n * Creates a \"subject\" by basically gluing an observer to an observable.\n *\n * @nocollapse\n * @deprecated Recommended you do not use. Will be removed at some point in the future. Plans for replacement still under discussion.\n */\n static create: (...args: any[]) => any = (destination: Observer, source: Observable): AnonymousSubject => {\n return new AnonymousSubject(destination, source);\n };\n\n constructor() {\n // NOTE: This must be here to obscure Observable's constructor.\n super();\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n lift(operator: Operator): Observable {\n const subject = new AnonymousSubject(this, this);\n subject.operator = operator as any;\n return subject as any;\n }\n\n /** @internal */\n protected _throwIfClosed() {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n }\n\n next(value: T) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n if (!this.currentObservers) {\n this.currentObservers = Array.from(this.observers);\n }\n for (const observer of this.currentObservers) {\n observer.next(value);\n }\n }\n });\n }\n\n error(err: any) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.hasError = this.isStopped = true;\n this.thrownError = err;\n const { observers } = this;\n while (observers.length) {\n observers.shift()!.error(err);\n }\n }\n });\n }\n\n complete() {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.isStopped = true;\n const { observers } = this;\n while (observers.length) {\n observers.shift()!.complete();\n }\n }\n });\n }\n\n unsubscribe() {\n this.isStopped = this.closed = true;\n this.observers = this.currentObservers = null!;\n }\n\n get observed() {\n return this.observers?.length > 0;\n }\n\n /** @internal */\n protected _trySubscribe(subscriber: Subscriber): TeardownLogic {\n this._throwIfClosed();\n return super._trySubscribe(subscriber);\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n this._throwIfClosed();\n this._checkFinalizedStatuses(subscriber);\n return this._innerSubscribe(subscriber);\n }\n\n /** @internal */\n protected _innerSubscribe(subscriber: Subscriber) {\n const { hasError, isStopped, observers } = this;\n if (hasError || isStopped) {\n return EMPTY_SUBSCRIPTION;\n }\n this.currentObservers = null;\n observers.push(subscriber);\n return new Subscription(() => {\n this.currentObservers = null;\n arrRemove(observers, subscriber);\n });\n }\n\n /** @internal */\n protected _checkFinalizedStatuses(subscriber: Subscriber) {\n const { hasError, thrownError, isStopped } = this;\n if (hasError) {\n subscriber.error(thrownError);\n } else if (isStopped) {\n subscriber.complete();\n }\n }\n\n /**\n * Creates a new Observable with this Subject as the source. You can do this\n * to create custom Observer-side logic of the Subject and conceal it from\n * code that uses the Observable.\n * @return {Observable} Observable that the Subject casts to\n */\n asObservable(): Observable {\n const observable: any = new Observable();\n observable.source = this;\n return observable;\n }\n}\n\n/**\n * @class AnonymousSubject\n */\nexport class AnonymousSubject extends Subject {\n constructor(\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n public destination?: Observer,\n source?: Observable\n ) {\n super();\n this.source = source;\n }\n\n next(value: T) {\n this.destination?.next?.(value);\n }\n\n error(err: any) {\n this.destination?.error?.(err);\n }\n\n complete() {\n this.destination?.complete?.();\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n return this.source?.subscribe(subscriber) ?? EMPTY_SUBSCRIPTION;\n }\n}\n", "import { Subject } from './Subject';\nimport { Subscriber } from './Subscriber';\nimport { Subscription } from './Subscription';\n\n/**\n * A variant of Subject that requires an initial value and emits its current\n * value whenever it is subscribed to.\n *\n * @class BehaviorSubject\n */\nexport class BehaviorSubject extends Subject {\n constructor(private _value: T) {\n super();\n }\n\n get value(): T {\n return this.getValue();\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n const subscription = super._subscribe(subscriber);\n !subscription.closed && subscriber.next(this._value);\n return subscription;\n }\n\n getValue(): T {\n const { hasError, thrownError, _value } = this;\n if (hasError) {\n throw thrownError;\n }\n this._throwIfClosed();\n return _value;\n }\n\n next(value: T): void {\n super.next((this._value = value));\n }\n}\n", "import { TimestampProvider } from '../types';\n\ninterface DateTimestampProvider extends TimestampProvider {\n delegate: TimestampProvider | undefined;\n}\n\nexport const dateTimestampProvider: DateTimestampProvider = {\n now() {\n // Use the variable rather than `this` so that the function can be called\n // without being bound to the provider.\n return (dateTimestampProvider.delegate || Date).now();\n },\n delegate: undefined,\n};\n", "import { Subject } from './Subject';\nimport { TimestampProvider } from './types';\nimport { Subscriber } from './Subscriber';\nimport { Subscription } from './Subscription';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\n\n/**\n * A variant of {@link Subject} that \"replays\" old values to new subscribers by emitting them when they first subscribe.\n *\n * `ReplaySubject` has an internal buffer that will store a specified number of values that it has observed. Like `Subject`,\n * `ReplaySubject` \"observes\" values by having them passed to its `next` method. When it observes a value, it will store that\n * value for a time determined by the configuration of the `ReplaySubject`, as passed to its constructor.\n *\n * When a new subscriber subscribes to the `ReplaySubject` instance, it will synchronously emit all values in its buffer in\n * a First-In-First-Out (FIFO) manner. The `ReplaySubject` will also complete, if it has observed completion; and it will\n * error if it has observed an error.\n *\n * There are two main configuration items to be concerned with:\n *\n * 1. `bufferSize` - This will determine how many items are stored in the buffer, defaults to infinite.\n * 2. `windowTime` - The amount of time to hold a value in the buffer before removing it from the buffer.\n *\n * Both configurations may exist simultaneously. So if you would like to buffer a maximum of 3 values, as long as the values\n * are less than 2 seconds old, you could do so with a `new ReplaySubject(3, 2000)`.\n *\n * ### Differences with BehaviorSubject\n *\n * `BehaviorSubject` is similar to `new ReplaySubject(1)`, with a couple of exceptions:\n *\n * 1. `BehaviorSubject` comes \"primed\" with a single value upon construction.\n * 2. `ReplaySubject` will replay values, even after observing an error, where `BehaviorSubject` will not.\n *\n * @see {@link Subject}\n * @see {@link BehaviorSubject}\n * @see {@link shareReplay}\n */\nexport class ReplaySubject extends Subject {\n private _buffer: (T | number)[] = [];\n private _infiniteTimeWindow = true;\n\n /**\n * @param bufferSize The size of the buffer to replay on subscription\n * @param windowTime The amount of time the buffered items will stay buffered\n * @param timestampProvider An object with a `now()` method that provides the current timestamp. This is used to\n * calculate the amount of time something has been buffered.\n */\n constructor(\n private _bufferSize = Infinity,\n private _windowTime = Infinity,\n private _timestampProvider: TimestampProvider = dateTimestampProvider\n ) {\n super();\n this._infiniteTimeWindow = _windowTime === Infinity;\n this._bufferSize = Math.max(1, _bufferSize);\n this._windowTime = Math.max(1, _windowTime);\n }\n\n next(value: T): void {\n const { isStopped, _buffer, _infiniteTimeWindow, _timestampProvider, _windowTime } = this;\n if (!isStopped) {\n _buffer.push(value);\n !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime);\n }\n this._trimBuffer();\n super.next(value);\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n this._throwIfClosed();\n this._trimBuffer();\n\n const subscription = this._innerSubscribe(subscriber);\n\n const { _infiniteTimeWindow, _buffer } = this;\n // We use a copy here, so reentrant code does not mutate our array while we're\n // emitting it to a new subscriber.\n const copy = _buffer.slice();\n for (let i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) {\n subscriber.next(copy[i] as T);\n }\n\n this._checkFinalizedStatuses(subscriber);\n\n return subscription;\n }\n\n private _trimBuffer() {\n const { _bufferSize, _timestampProvider, _buffer, _infiniteTimeWindow } = this;\n // If we don't have an infinite buffer size, and we're over the length,\n // use splice to truncate the old buffer values off. Note that we have to\n // double the size for instances where we're not using an infinite time window\n // because we're storing the values and the timestamps in the same array.\n const adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize;\n _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize);\n\n // Now, if we're not in an infinite time window, remove all values where the time is\n // older than what is allowed.\n if (!_infiniteTimeWindow) {\n const now = _timestampProvider.now();\n let last = 0;\n // Search the array for the first timestamp that isn't expired and\n // truncate the buffer up to that point.\n for (let i = 1; i < _buffer.length && (_buffer[i] as number) <= now; i += 2) {\n last = i;\n }\n last && _buffer.splice(0, last + 1);\n }\n }\n}\n", "import { Scheduler } from '../Scheduler';\nimport { Subscription } from '../Subscription';\nimport { SchedulerAction } from '../types';\n\n/**\n * A unit of work to be executed in a `scheduler`. An action is typically\n * created from within a {@link SchedulerLike} and an RxJS user does not need to concern\n * themselves about creating and manipulating an Action.\n *\n * ```ts\n * class Action extends Subscription {\n * new (scheduler: Scheduler, work: (state?: T) => void);\n * schedule(state?: T, delay: number = 0): Subscription;\n * }\n * ```\n *\n * @class Action\n */\nexport class Action extends Subscription {\n constructor(scheduler: Scheduler, work: (this: SchedulerAction, state?: T) => void) {\n super();\n }\n /**\n * Schedules this action on its parent {@link SchedulerLike} for execution. May be passed\n * some context object, `state`. May happen at some point in the future,\n * according to the `delay` parameter, if specified.\n * @param {T} [state] Some contextual data that the `work` function uses when\n * called by the Scheduler.\n * @param {number} [delay] Time to wait before executing the work, where the\n * time unit is implicit and defined by the Scheduler.\n * @return {void}\n */\n public schedule(state?: T, delay: number = 0): Subscription {\n return this;\n }\n}\n", "import type { TimerHandle } from './timerHandle';\ntype SetIntervalFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearIntervalFunction = (handle: TimerHandle) => void;\n\ninterface IntervalProvider {\n setInterval: SetIntervalFunction;\n clearInterval: ClearIntervalFunction;\n delegate:\n | {\n setInterval: SetIntervalFunction;\n clearInterval: ClearIntervalFunction;\n }\n | undefined;\n}\n\nexport const intervalProvider: IntervalProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setInterval(handler: () => void, timeout?: number, ...args) {\n const { delegate } = intervalProvider;\n if (delegate?.setInterval) {\n return delegate.setInterval(handler, timeout, ...args);\n }\n return setInterval(handler, timeout, ...args);\n },\n clearInterval(handle) {\n const { delegate } = intervalProvider;\n return (delegate?.clearInterval || clearInterval)(handle as any);\n },\n delegate: undefined,\n};\n", "import { Action } from './Action';\nimport { SchedulerAction } from '../types';\nimport { Subscription } from '../Subscription';\nimport { AsyncScheduler } from './AsyncScheduler';\nimport { intervalProvider } from './intervalProvider';\nimport { arrRemove } from '../util/arrRemove';\nimport { TimerHandle } from './timerHandle';\n\nexport class AsyncAction extends Action {\n public id: TimerHandle | undefined;\n public state?: T;\n // @ts-ignore: Property has no initializer and is not definitely assigned\n public delay: number;\n protected pending: boolean = false;\n\n constructor(protected scheduler: AsyncScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n public schedule(state?: T, delay: number = 0): Subscription {\n if (this.closed) {\n return this;\n }\n\n // Always replace the current state with the new state.\n this.state = state;\n\n const id = this.id;\n const scheduler = this.scheduler;\n\n //\n // Important implementation note:\n //\n // Actions only execute once by default, unless rescheduled from within the\n // scheduled callback. This allows us to implement single and repeat\n // actions via the same code path, without adding API surface area, as well\n // as mimic traditional recursion but across asynchronous boundaries.\n //\n // However, JS runtimes and timers distinguish between intervals achieved by\n // serial `setTimeout` calls vs. a single `setInterval` call. An interval of\n // serial `setTimeout` calls can be individually delayed, which delays\n // scheduling the next `setTimeout`, and so on. `setInterval` attempts to\n // guarantee the interval callback will be invoked more precisely to the\n // interval period, regardless of load.\n //\n // Therefore, we use `setInterval` to schedule single and repeat actions.\n // If the action reschedules itself with the same delay, the interval is not\n // canceled. If the action doesn't reschedule, or reschedules with a\n // different delay, the interval will be canceled after scheduled callback\n // execution.\n //\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, delay);\n }\n\n // Set the pending flag indicating that this action has been scheduled, or\n // has recursively rescheduled itself.\n this.pending = true;\n\n this.delay = delay;\n // If this action has already an async Id, don't request a new one.\n this.id = this.id ?? this.requestAsyncId(scheduler, this.id, delay);\n\n return this;\n }\n\n protected requestAsyncId(scheduler: AsyncScheduler, _id?: TimerHandle, delay: number = 0): TimerHandle {\n return intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);\n }\n\n protected recycleAsyncId(_scheduler: AsyncScheduler, id?: TimerHandle, delay: number | null = 0): TimerHandle | undefined {\n // If this action is rescheduled with the same delay time, don't clear the interval id.\n if (delay != null && this.delay === delay && this.pending === false) {\n return id;\n }\n // Otherwise, if the action's delay time is different from the current delay,\n // or the action has been rescheduled before it's executed, clear the interval id\n if (id != null) {\n intervalProvider.clearInterval(id);\n }\n\n return undefined;\n }\n\n /**\n * Immediately executes this action and the `work` it contains.\n * @return {any}\n */\n public execute(state: T, delay: number): any {\n if (this.closed) {\n return new Error('executing a cancelled action');\n }\n\n this.pending = false;\n const error = this._execute(state, delay);\n if (error) {\n return error;\n } else if (this.pending === false && this.id != null) {\n // Dequeue if the action didn't reschedule itself. Don't call\n // unsubscribe(), because the action could reschedule later.\n // For example:\n // ```\n // scheduler.schedule(function doWork(counter) {\n // /* ... I'm a busy worker bee ... */\n // var originalAction = this;\n // /* wait 100ms before rescheduling the action */\n // setTimeout(function () {\n // originalAction.schedule(counter + 1);\n // }, 100);\n // }, 1000);\n // ```\n this.id = this.recycleAsyncId(this.scheduler, this.id, null);\n }\n }\n\n protected _execute(state: T, _delay: number): any {\n let errored: boolean = false;\n let errorValue: any;\n try {\n this.work(state);\n } catch (e) {\n errored = true;\n // HACK: Since code elsewhere is relying on the \"truthiness\" of the\n // return here, we can't have it return \"\" or 0 or false.\n // TODO: Clean this up when we refactor schedulers mid-version-8 or so.\n errorValue = e ? e : new Error('Scheduled action threw falsy error');\n }\n if (errored) {\n this.unsubscribe();\n return errorValue;\n }\n }\n\n unsubscribe() {\n if (!this.closed) {\n const { id, scheduler } = this;\n const { actions } = scheduler;\n\n this.work = this.state = this.scheduler = null!;\n this.pending = false;\n\n arrRemove(actions, this);\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, null);\n }\n\n this.delay = null!;\n super.unsubscribe();\n }\n }\n}\n", "import { Action } from './scheduler/Action';\nimport { Subscription } from './Subscription';\nimport { SchedulerLike, SchedulerAction } from './types';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\n\n/**\n * An execution context and a data structure to order tasks and schedule their\n * execution. Provides a notion of (potentially virtual) time, through the\n * `now()` getter method.\n *\n * Each unit of work in a Scheduler is called an `Action`.\n *\n * ```ts\n * class Scheduler {\n * now(): number;\n * schedule(work, delay?, state?): Subscription;\n * }\n * ```\n *\n * @class Scheduler\n * @deprecated Scheduler is an internal implementation detail of RxJS, and\n * should not be used directly. Rather, create your own class and implement\n * {@link SchedulerLike}. Will be made internal in v8.\n */\nexport class Scheduler implements SchedulerLike {\n public static now: () => number = dateTimestampProvider.now;\n\n constructor(private schedulerActionCtor: typeof Action, now: () => number = Scheduler.now) {\n this.now = now;\n }\n\n /**\n * A getter method that returns a number representing the current time\n * (at the time this function was called) according to the scheduler's own\n * internal clock.\n * @return {number} A number that represents the current time. May or may not\n * have a relation to wall-clock time. May or may not refer to a time unit\n * (e.g. milliseconds).\n */\n public now: () => number;\n\n /**\n * Schedules a function, `work`, for execution. May happen at some point in\n * the future, according to the `delay` parameter, if specified. May be passed\n * some context object, `state`, which will be passed to the `work` function.\n *\n * The given arguments will be processed an stored as an Action object in a\n * queue of actions.\n *\n * @param {function(state: ?T): ?Subscription} work A function representing a\n * task, or some unit of work to be executed by the Scheduler.\n * @param {number} [delay] Time to wait before executing the work, where the\n * time unit is implicit and defined by the Scheduler itself.\n * @param {T} [state] Some contextual data that the `work` function uses when\n * called by the Scheduler.\n * @return {Subscription} A subscription in order to be able to unsubscribe\n * the scheduled work.\n */\n public schedule(work: (this: SchedulerAction, state?: T) => void, delay: number = 0, state?: T): Subscription {\n return new this.schedulerActionCtor(this, work).schedule(state, delay);\n }\n}\n", "import { Scheduler } from '../Scheduler';\nimport { Action } from './Action';\nimport { AsyncAction } from './AsyncAction';\nimport { TimerHandle } from './timerHandle';\n\nexport class AsyncScheduler extends Scheduler {\n public actions: Array> = [];\n /**\n * A flag to indicate whether the Scheduler is currently executing a batch of\n * queued actions.\n * @type {boolean}\n * @internal\n */\n public _active: boolean = false;\n /**\n * An internal ID used to track the latest asynchronous task such as those\n * coming from `setTimeout`, `setInterval`, `requestAnimationFrame`, and\n * others.\n * @type {any}\n * @internal\n */\n public _scheduled: TimerHandle | undefined;\n\n constructor(SchedulerAction: typeof Action, now: () => number = Scheduler.now) {\n super(SchedulerAction, now);\n }\n\n public flush(action: AsyncAction): void {\n const { actions } = this;\n\n if (this._active) {\n actions.push(action);\n return;\n }\n\n let error: any;\n this._active = true;\n\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions.shift()!)); // exhaust the scheduler queue\n\n this._active = false;\n\n if (error) {\n while ((action = actions.shift()!)) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n", "import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\n\n/**\n *\n * Async Scheduler\n *\n * Schedule task as if you used setTimeout(task, duration)\n *\n * `async` scheduler schedules tasks asynchronously, by putting them on the JavaScript\n * event loop queue. It is best used to delay tasks in time or to schedule tasks repeating\n * in intervals.\n *\n * If you just want to \"defer\" task, that is to perform it right after currently\n * executing synchronous code ends (commonly achieved by `setTimeout(deferredTask, 0)`),\n * better choice will be the {@link asapScheduler} scheduler.\n *\n * ## Examples\n * Use async scheduler to delay task\n * ```ts\n * import { asyncScheduler } from 'rxjs';\n *\n * const task = () => console.log('it works!');\n *\n * asyncScheduler.schedule(task, 2000);\n *\n * // After 2 seconds logs:\n * // \"it works!\"\n * ```\n *\n * Use async scheduler to repeat task in intervals\n * ```ts\n * import { asyncScheduler } from 'rxjs';\n *\n * function task(state) {\n * console.log(state);\n * this.schedule(state + 1, 1000); // `this` references currently executing Action,\n * // which we reschedule with new state and delay\n * }\n *\n * asyncScheduler.schedule(task, 3000, 0);\n *\n * // Logs:\n * // 0 after 3s\n * // 1 after 4s\n * // 2 after 5s\n * // 3 after 6s\n * ```\n */\n\nexport const asyncScheduler = new AsyncScheduler(AsyncAction);\n\n/**\n * @deprecated Renamed to {@link asyncScheduler}. Will be removed in v8.\n */\nexport const async = asyncScheduler;\n", "import { AsyncAction } from './AsyncAction';\nimport { Subscription } from '../Subscription';\nimport { QueueScheduler } from './QueueScheduler';\nimport { SchedulerAction } from '../types';\nimport { TimerHandle } from './timerHandle';\n\nexport class QueueAction extends AsyncAction {\n constructor(protected scheduler: QueueScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n public schedule(state?: T, delay: number = 0): Subscription {\n if (delay > 0) {\n return super.schedule(state, delay);\n }\n this.delay = delay;\n this.state = state;\n this.scheduler.flush(this);\n return this;\n }\n\n public execute(state: T, delay: number): any {\n return delay > 0 || this.closed ? super.execute(state, delay) : this._execute(state, delay);\n }\n\n protected requestAsyncId(scheduler: QueueScheduler, id?: TimerHandle, delay: number = 0): TimerHandle {\n // If delay exists and is greater than 0, or if the delay is null (the\n // action wasn't rescheduled) but was originally scheduled as an async\n // action, then recycle as an async action.\n\n if ((delay != null && delay > 0) || (delay == null && this.delay > 0)) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n\n // Otherwise flush the scheduler starting with this action.\n scheduler.flush(this);\n\n // HACK: In the past, this was returning `void`. However, `void` isn't a valid\n // `TimerHandle`, and generally the return value here isn't really used. So the\n // compromise is to return `0` which is both \"falsy\" and a valid `TimerHandle`,\n // as opposed to refactoring every other instanceo of `requestAsyncId`.\n return 0;\n }\n}\n", "import { AsyncScheduler } from './AsyncScheduler';\n\nexport class QueueScheduler extends AsyncScheduler {\n}\n", "import { QueueAction } from './QueueAction';\nimport { QueueScheduler } from './QueueScheduler';\n\n/**\n *\n * Queue Scheduler\n *\n * Put every next task on a queue, instead of executing it immediately\n *\n * `queue` scheduler, when used with delay, behaves the same as {@link asyncScheduler} scheduler.\n *\n * When used without delay, it schedules given task synchronously - executes it right when\n * it is scheduled. However when called recursively, that is when inside the scheduled task,\n * another task is scheduled with queue scheduler, instead of executing immediately as well,\n * that task will be put on a queue and wait for current one to finish.\n *\n * This means that when you execute task with `queue` scheduler, you are sure it will end\n * before any other task scheduled with that scheduler will start.\n *\n * ## Examples\n * Schedule recursively first, then do something\n * ```ts\n * import { queueScheduler } from 'rxjs';\n *\n * queueScheduler.schedule(() => {\n * queueScheduler.schedule(() => console.log('second')); // will not happen now, but will be put on a queue\n *\n * console.log('first');\n * });\n *\n * // Logs:\n * // \"first\"\n * // \"second\"\n * ```\n *\n * Reschedule itself recursively\n * ```ts\n * import { queueScheduler } from 'rxjs';\n *\n * queueScheduler.schedule(function(state) {\n * if (state !== 0) {\n * console.log('before', state);\n * this.schedule(state - 1); // `this` references currently executing Action,\n * // which we reschedule with new state\n * console.log('after', state);\n * }\n * }, 0, 3);\n *\n * // In scheduler that runs recursively, you would expect:\n * // \"before\", 3\n * // \"before\", 2\n * // \"before\", 1\n * // \"after\", 1\n * // \"after\", 2\n * // \"after\", 3\n *\n * // But with queue it logs:\n * // \"before\", 3\n * // \"after\", 3\n * // \"before\", 2\n * // \"after\", 2\n * // \"before\", 1\n * // \"after\", 1\n * ```\n */\n\nexport const queueScheduler = new QueueScheduler(QueueAction);\n\n/**\n * @deprecated Renamed to {@link queueScheduler}. Will be removed in v8.\n */\nexport const queue = queueScheduler;\n", "import { AsyncAction } from './AsyncAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\nimport { SchedulerAction } from '../types';\nimport { animationFrameProvider } from './animationFrameProvider';\nimport { TimerHandle } from './timerHandle';\n\nexport class AnimationFrameAction extends AsyncAction {\n constructor(protected scheduler: AnimationFrameScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n protected requestAsyncId(scheduler: AnimationFrameScheduler, id?: TimerHandle, delay: number = 0): TimerHandle {\n // If delay is greater than 0, request as an async action.\n if (delay !== null && delay > 0) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n // Push the action to the end of the scheduler queue.\n scheduler.actions.push(this);\n // If an animation frame has already been requested, don't request another\n // one. If an animation frame hasn't been requested yet, request one. Return\n // the current animation frame request id.\n return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider.requestAnimationFrame(() => scheduler.flush(undefined)));\n }\n\n protected recycleAsyncId(scheduler: AnimationFrameScheduler, id?: TimerHandle, delay: number = 0): TimerHandle | undefined {\n // If delay exists and is greater than 0, or if the delay is null (the\n // action wasn't rescheduled) but was originally scheduled as an async\n // action, then recycle as an async action.\n if (delay != null ? delay > 0 : this.delay > 0) {\n return super.recycleAsyncId(scheduler, id, delay);\n }\n // If the scheduler queue has no remaining actions with the same async id,\n // cancel the requested animation frame and set the scheduled flag to\n // undefined so the next AnimationFrameAction will request its own.\n const { actions } = scheduler;\n if (id != null && actions[actions.length - 1]?.id !== id) {\n animationFrameProvider.cancelAnimationFrame(id as number);\n scheduler._scheduled = undefined;\n }\n // Return undefined so the action knows to request a new async id if it's rescheduled.\n return undefined;\n }\n}\n", "import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\n\nexport class AnimationFrameScheduler extends AsyncScheduler {\n public flush(action?: AsyncAction): void {\n this._active = true;\n // The async id that effects a call to flush is stored in _scheduled.\n // Before executing an action, it's necessary to check the action's async\n // id to determine whether it's supposed to be executed in the current\n // flush.\n // Previous implementations of this method used a count to determine this,\n // but that was unsound, as actions that are unsubscribed - i.e. cancelled -\n // are removed from the actions array and that can shift actions that are\n // scheduled to be executed in a subsequent flush into positions at which\n // they are executed within the current flush.\n const flushId = this._scheduled;\n this._scheduled = undefined;\n\n const { actions } = this;\n let error: any;\n action = action || actions.shift()!;\n\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions[0]) && action.id === flushId && actions.shift());\n\n this._active = false;\n\n if (error) {\n while ((action = actions[0]) && action.id === flushId && actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n", "import { AnimationFrameAction } from './AnimationFrameAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\n\n/**\n *\n * Animation Frame Scheduler\n *\n * Perform task when `window.requestAnimationFrame` would fire\n *\n * When `animationFrame` scheduler is used with delay, it will fall back to {@link asyncScheduler} scheduler\n * behaviour.\n *\n * Without delay, `animationFrame` scheduler can be used to create smooth browser animations.\n * It makes sure scheduled task will happen just before next browser content repaint,\n * thus performing animations as efficiently as possible.\n *\n * ## Example\n * Schedule div height animation\n * ```ts\n * // html:

    \n * import { animationFrameScheduler } from 'rxjs';\n *\n * const div = document.querySelector('div');\n *\n * animationFrameScheduler.schedule(function(height) {\n * div.style.height = height + \"px\";\n *\n * this.schedule(height + 1); // `this` references currently executing Action,\n * // which we reschedule with new state\n * }, 0, 0);\n *\n * // You will see a div element growing in height\n * ```\n */\n\nexport const animationFrameScheduler = new AnimationFrameScheduler(AnimationFrameAction);\n\n/**\n * @deprecated Renamed to {@link animationFrameScheduler}. Will be removed in v8.\n */\nexport const animationFrame = animationFrameScheduler;\n", "import { Observable } from '../Observable';\nimport { SchedulerLike } from '../types';\n\n/**\n * A simple Observable that emits no items to the Observer and immediately\n * emits a complete notification.\n *\n * Just emits 'complete', and nothing else.\n *\n * ![](empty.png)\n *\n * A simple Observable that only emits the complete notification. It can be used\n * for composing with other Observables, such as in a {@link mergeMap}.\n *\n * ## Examples\n *\n * Log complete notification\n *\n * ```ts\n * import { EMPTY } from 'rxjs';\n *\n * EMPTY.subscribe({\n * next: () => console.log('Next'),\n * complete: () => console.log('Complete!')\n * });\n *\n * // Outputs\n * // Complete!\n * ```\n *\n * Emit the number 7, then complete\n *\n * ```ts\n * import { EMPTY, startWith } from 'rxjs';\n *\n * const result = EMPTY.pipe(startWith(7));\n * result.subscribe(x => console.log(x));\n *\n * // Outputs\n * // 7\n * ```\n *\n * Map and flatten only odd numbers to the sequence `'a'`, `'b'`, `'c'`\n *\n * ```ts\n * import { interval, mergeMap, of, EMPTY } from 'rxjs';\n *\n * const interval$ = interval(1000);\n * const result = interval$.pipe(\n * mergeMap(x => x % 2 === 1 ? of('a', 'b', 'c') : EMPTY),\n * );\n * result.subscribe(x => console.log(x));\n *\n * // Results in the following to the console:\n * // x is equal to the count on the interval, e.g. (0, 1, 2, 3, ...)\n * // x will occur every 1000ms\n * // if x % 2 is equal to 1, print a, b, c (each on its own)\n * // if x % 2 is not equal to 1, nothing will be output\n * ```\n *\n * @see {@link Observable}\n * @see {@link NEVER}\n * @see {@link of}\n * @see {@link throwError}\n */\nexport const EMPTY = new Observable((subscriber) => subscriber.complete());\n\n/**\n * @param scheduler A {@link SchedulerLike} to use for scheduling\n * the emission of the complete notification.\n * @deprecated Replaced with the {@link EMPTY} constant or {@link scheduled} (e.g. `scheduled([], scheduler)`). Will be removed in v8.\n */\nexport function empty(scheduler?: SchedulerLike) {\n return scheduler ? emptyScheduled(scheduler) : EMPTY;\n}\n\nfunction emptyScheduled(scheduler: SchedulerLike) {\n return new Observable((subscriber) => scheduler.schedule(() => subscriber.complete()));\n}\n", "import { SchedulerLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport function isScheduler(value: any): value is SchedulerLike {\n return value && isFunction(value.schedule);\n}\n", "import { SchedulerLike } from '../types';\nimport { isFunction } from './isFunction';\nimport { isScheduler } from './isScheduler';\n\nfunction last(arr: T[]): T | undefined {\n return arr[arr.length - 1];\n}\n\nexport function popResultSelector(args: any[]): ((...args: unknown[]) => unknown) | undefined {\n return isFunction(last(args)) ? args.pop() : undefined;\n}\n\nexport function popScheduler(args: any[]): SchedulerLike | undefined {\n return isScheduler(last(args)) ? args.pop() : undefined;\n}\n\nexport function popNumber(args: any[], defaultValue: number): number {\n return typeof last(args) === 'number' ? args.pop()! : defaultValue;\n}\n", "export const isArrayLike = ((x: any): x is ArrayLike => x && typeof x.length === 'number' && typeof x !== 'function');", "import { isFunction } from \"./isFunction\";\n\n/**\n * Tests to see if the object is \"thennable\".\n * @param value the object to test\n */\nexport function isPromise(value: any): value is PromiseLike {\n return isFunction(value?.then);\n}\n", "import { InteropObservable } from '../types';\nimport { observable as Symbol_observable } from '../symbol/observable';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being Observable (but not necessary an Rx Observable) */\nexport function isInteropObservable(input: any): input is InteropObservable {\n return isFunction(input[Symbol_observable]);\n}\n", "import { isFunction } from './isFunction';\n\nexport function isAsyncIterable(obj: any): obj is AsyncIterable {\n return Symbol.asyncIterator && isFunction(obj?.[Symbol.asyncIterator]);\n}\n", "/**\n * Creates the TypeError to throw if an invalid object is passed to `from` or `scheduled`.\n * @param input The object that was passed.\n */\nexport function createInvalidObservableTypeError(input: any) {\n // TODO: We should create error codes that can be looked up, so this can be less verbose.\n return new TypeError(\n `You provided ${\n input !== null && typeof input === 'object' ? 'an invalid object' : `'${input}'`\n } where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`\n );\n}\n", "export function getSymbolIterator(): symbol {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator' as any;\n }\n\n return Symbol.iterator;\n}\n\nexport const iterator = getSymbolIterator();\n", "import { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being an Iterable */\nexport function isIterable(input: any): input is Iterable {\n return isFunction(input?.[Symbol_iterator]);\n}\n", "import { ReadableStreamLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport async function* readableStreamLikeToAsyncGenerator(readableStream: ReadableStreamLike): AsyncGenerator {\n const reader = readableStream.getReader();\n try {\n while (true) {\n const { value, done } = await reader.read();\n if (done) {\n return;\n }\n yield value!;\n }\n } finally {\n reader.releaseLock();\n }\n}\n\nexport function isReadableStreamLike(obj: any): obj is ReadableStreamLike {\n // We don't want to use instanceof checks because they would return\n // false for instances from another Realm, like an

    +

    +

    +

    After buying the game, go to the library, select the game and right click - Manage - CD keys and copy the key somewhere. You can refund it now.

    + +
    +
    +

    The channel with the activation method is #gfwl-keys (for promotion and respect reasons, I won't link it here directly), but check out the server itself too, we're welcome to anyone!

    +

    Grand Theft RevIVal

    +
    + + +

    After you acquired the key and activated the game (again, this might take another 5-10 minutes, so get yourself a tea or something), you're ready to play!

    + +
    +

    Joining/Creating Lobbies#

    +

    Either use the in-game phone's Multiplayer - LIVE - Player Match option to join or create a lobby, or add friends in the Home overlay and join their lobbies instead.

    +

    Explanations of menu options:

    +
      +
    • Quick Match allows to join a random existing lobby of a specific gamemode.
    • +
    • Custom Match allows to find an existing lobby of any gamemode.
    • +
    • Create Match allows to create a lobby yourself.
    • +
    +

    If you're looking for people to play with, visit this Discord server:

    +

    Grand Theft RevIVal

    +
    +Port Forwarding +

    If you are having problems connecting to lobbies (kickbug, joining an empty lobby), you have to do manual port forwarding for the following ports in your router's settings (look online for instructions for your specific router or ISP, or contact your ISP):

    +
      +
    • TCP: 3074, 80, 88
    • +
    • UDP: 3074, 80, 88
    • +
    +

    If you can't perform port forwarding, use a VPN service instead. I recommend Mullvad VPN.

    +

    Alternatively, give up. Seriously, just give up and try other methods - some people are just stuck with the kickbug with no way to fight it.

    +
    +
    +

    Grand Theft Auto Connected#

    +
    +

    Compatibility

    +

    See this if using the Complete Edition.

    +

    GTA Connected only supports ZolikaPatch and ZMenuIV out of mods - other mods are simply not loaded (though, unless they replace game files, there's no need to remove them).

    +

    If you want to have Fusion Shaders, you can use V106 - but this version lacks a lot of things from the latest versions present in FusionFix; it's still better than nothing, though. Backup the shaders folder before installing.

    +
    +

    Second most popular multiplayer option, as it's the best way to experience GTA IV multiplayer without messing with GFWL while still having many of things intact from the official multiplayer.

    +

    Installation and usage#

    +
      +
    1. Go to the GTAConnected website.
    2. +
    3. Download the latest client.
    4. +
    5. Install GTAC-x.x.x.exe from the GTAC-x.x.x.zip archive.
    6. +
    7. Open the client.
    8. +
    9. Set the Game box to Grand Theft Auto IV.
    10. +
    11. In the Tools - Launcher Settings window, set your nickname. You can also set various settings as desired.
    12. +
    13. In the Tools - Game Settings window, set the path to your GTA IV install. You can also set various settings as you wish.
    14. +
    15. To join servers, simply double click on any server on the list.
    16. +
    +

    GTAConnected Discord Server

    +
    +

    HappinessMP#

    +
    +

    Compatibility

    +

    This client is only compatible with the Complete Edition and does not support any custom mods.

    +

    If using FusionFix, only this version is allowed.

    +
    +

    This client is somewhat similar to GTA Connected in essence, as you can host your own servers with your own scripts, but it aims to be compatible with the Complete Edition and requires Social Club to function rather than 1.0.8.0/1.0.7.0. It also lacks any of the official Rockstar gamemodes.

    +

    Installation and usage#

    +
      +
    1. Go to the HappinessMP website.
    2. +
    3. Press the Download button.
    4. +
    5. Install HappinessMP.exe.
    6. +
    7. Open the client.
    8. +
    9. In the settings, set your nickname.
    10. +
    11. To join servers, simply click on any server on the list.
    12. +
    +

    HappinessMP Discord Server

    +
    +

    Upcoming clients#

    +

    These clients are currently in development and are not available for play yet. They'll receive their own full-fledged sections when they're freely available for play. Support their development if you can!

    +
    +

    XLiveLessNess#

    +

    This project aims to be a replacement for GFWL. It technically works, but at the same time I couldn't get a lobby with more than just two players working with it just yet. Download the release, drop the files to the game folder, press HOME in-game, set your nickname, check the checkmarks and set the broadcast address to glitchyscripts.com:1100. Use the LAN function in-game instead of LIVE.

    +

    GitLab

    +
    + +

    Previous page
    Extras

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/extras/trainers/index.html b/extras/trainers/index.html new file mode 100644 index 00000000..cdd0f5dc --- /dev/null +++ b/extras/trainers/index.html @@ -0,0 +1,1445 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Trainers - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Trainers#

    +

    Trainers are essentially modmenus that add a lot of fun and useful options. They're also a better alternative to the very limited amount of cheatcodes the game offers. You may want one for multiplayer, but make sure your client/server allows them first.

    +
    +

    Both trainers require Ultimate ASI Loader.

    +

    Also please pick one - don't install both at once.

    +
    +
    +

    ZMenuIV#

    +
    +

    Compatibility

    +

    This trainer is not compatible with the Complete Edition.

    +
    +

    The most powerful and full-fledged trainer for GTA IV. Also includes a Chaos mod with streamer support, and features as absurd as GoldSrc physics.

    +

    Installation

    + +
      +
    1. Go to Zolika1351's Zone.
    2. +
    3. Scroll to the bottom of the page and download the latest version.
    4. +
    5. Extract ZMenuIV_vx.zip into the game folder
        +
      • Do not extract asi loader if not using xliveless, for developers, old version (has VR support), parachute support(all into game folder). Read the readme.txt for details on these folders.
      • +
      +
    6. +
    +

    Usage

    + +

    The default hotkeys are:

    +
      +
    • F7 to toggle menu.
    • +
    • Num 8, Num 2, Num 4, Num 6 for navigation, Num 5 to accept, Num 0 to go back.
    • +
    • Right Ctrl+Num 1 to fix the car.
    • +
    • Right Ctrl+Num 2 to flip the car.
    • +
    • ] (hold) to speed the car up.
    • +
    • F6 for Airbreak (noclip).
    • +
    • 0 for Always God Mode.
    • +
    • [ for Never Wanted.
    • +
    • ; for Unlimited Ammo.
    • +
    • = for Collision.
    • +
    • - for Resurrect.
    • +
    • M for Ragdoll.
    • +
    +

    You can add your own custom keybinds that can combine multiple options together. To do so, enable Custom Keybind Creator in Trainer Settings, highlight the desired option and press Left Ctrl+Enter to set the keybind up.

    +

    Edit the [Keybinds] section in ZMenuIV.ini to change existing keybinds.

    +
    +Setting up Numpad-less keybinds +

    Not everyone has a Numpad, I get it, 80% (and less) keyboards are cool and comfortable. Open ZMenuIV.ini and locate these lines:

    +
    [Keybinds]
    +AirbreakUp=87
    +AirbreakDn=83
    +AirbreakForward=104
    +AirbreakBack=98
    +AirbreakLeft=100
    +AirbreakRight=102
    +MenuUp=104
    +MenuDn=98
    +MenuLeft=100
    +MenuRight=102
    +MenuEnter=101
    +MenuBack=96
    +
    +

    and change them to:

    +
    [Keybinds]
    +AirbreakUp=32
    +AirbreakDn=160
    +AirbreakForward=87
    +AirbreakBack=83
    +AirbreakLeft=65
    +AirbreakRight=68
    +MenuUp=73
    +MenuDn=75
    +MenuLeft=74
    +MenuRight=76
    +MenuEnter=13
    +MenuBack=220
    +
    +

    Which will be:

    +
      +
    • IJKL for navigation. Enter to accept, \ to go back.
    • +
    • WASD for horizontal airbreak control, Space for going up and Left Shift for going down.
    • +
    +
    +
    +

    Liberty's Legacy#

    +
    +

    Compatibility

    +

    This trainer is compatible with the Complete Edition, as well as patches 1.0.8.0 and 1.0.7.0.

    +
    +

    This trainer is not as powerful as ZMenuIV, but still offers a lot of useful features. It's also the only one you can use with the Complete Edition, anyway. It's also compatible with controllers.

    +

    Installation

    + +
      +
    1. Install ScriptHookDotNet if you hadn't done so yourself outside of the guide.
    2. +
    3. Go to the GTAForums page.
    4. +
    5. Download the latest version.
    6. +
    7. Extract the Liberty's Legacy Trainer xxx.zip archive into the game folder.
    8. +
    +

    Usage

    + +

    The default hotkeys on keyboard&mouse are:

    +
      +
    • F11 to toggle menu.
    • +
    • Arrow keys for navigation, Enter to accept, Backspace to go back.
    • +
    +

    The controller binds ones are:

    +
      +
    • RB+X or R1+Square on controllers.
    • +
    • D-Pad for navigation, A or Cross to accept, B or Circle to go back.
    • +
    +

    Additional key bindings can be set by highlighting the desired option, pressing Left Ctrl+Enter and pressing the key you want to bind.

    +
    + +

    Previous page
    Extras

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/googlea5836ae581372081.html b/googlea5836ae581372081.html new file mode 100644 index 00000000..9804e53c --- /dev/null +++ b/googlea5836ae581372081.html @@ -0,0 +1 @@ +google-site-verification: googlea5836ae581372081.html \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 00000000..9947646b --- /dev/null +++ b/index.html @@ -0,0 +1,1408 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Introduction - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Introduction#

    +

    Guide logo

    +
    +

    This website is not affiliated with Rockstar Games, Rockstar North, or Take-Two Interactive. Following the steps in this guide may violate Rockstar's End User License Agreement (EULA), and if you contact their support, they may refuse to help you because of the EULA violation. I am not the author of any of the following modifications, so any bugs/crashes/errors should be reported to the developers themselves.

    +
    +
    +

    Overview#

    +

    Welcome to Gillian's Grand Theft Auto IV Modding Guide, a centralized and modular all-in-one modding guide.

    +

    This guide aims to provide the best vanilla-faithful experience for GTA IV, but is not limited to that. It's meant to be accessible to everyone and to be able to help anyone who has their own specifics on how they want to experience the game - be it creating the best singleplayer experience, creating the best environment for manual modding, playing multiplayer, getting the best performance, or something else.

    +
    +

    This guide aims to be as unbiased as possible, and tries to provide only relevant information for modding GTA IV. Any mods or information listed do not reflect my personal opinion of anyone, and I'd prefer this guide to be free of personal bias.

    +

    However, one strict rule is enforced: all modifications mentioned must preserve the original feel of the game.

    +
    +
    +

    Prerequisites#

    +
    +

    In order for this guide to be useful to you, and for you to be eligible for support later, please make sure the following prerequisites are met, aswell as my additional requirements:

    +
      +
    • Read everything as is and don't skip anything.
    • +
    • Avoid using other guides unless they are mentioned in this one. If something is mentioned in other guides but not here, it is most likely not useful here.
    • +
    • I do not provide support for ENBs and other graphical enhancements (i.e. ICEnhancer). You're on your own for those.
    • +
    +
    +
      +
    • You must own the game on Steam or the Rockstar Games Launcher. Pirated versions will not receive guaranteed support from me if any problems occur. Other versions may work, but no guarantee is given, nor will I provide support if any problems occur.
    • +
    • Operating system: Your PC should be running Windows 10 or 11 or any up-to-date Linux distribution suited for gaming. Older Windows versions may work, but I will not provide support for them. ARM64 systems have not been tested.
    • +
    • +

      Hardware: Your PC must meet the minimum requirements of the game. For the best experience, it should also meet my personal recommended spec sheet below which ensures pleasant gameplay with mods at Full HD resolution and 60Hz screen. Scale manually for your own needs:

      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      HardwareRecommendedAlternative
      CPUIntel Core i5-6600kRyzen 3 2200G
      GPUGTX 980/1060RX580, Intel Arc A310
      RAM8 GB
      Storage30 GB (Ideally SSD)If manually modding, ~70 GB for backups
      +
    • +
    +
    + +
    +
      +
    • +

      Go to preparation to get ready to mod the game and start using the guide:

      +

      Next page
      Preparation

      +
    • +
    • +

      My Discord server for support and discussion (you may not receive support from me if you violate any of the above conditions):

      +

      My Discord server

      +
    • +
    +
    +

    If you are only interested in something specific, use the sidebar on the left to select the page you are interested in.

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/optimization/index.html b/optimization/index.html new file mode 100644 index 00000000..9a3d428e --- /dev/null +++ b/optimization/index.html @@ -0,0 +1,1523 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Optimization - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Optimization#

    +

    We all know how horrible the optimization of the game was at release. Unfortunately, we still don't have a one-for-all solution - but that doesn't mean we can't make things better.

    +
    +

    What is DXVK?#

    +

    DXVK is a translation layer that converts DirectX API calls to Vulkan.

    +

    While it isn't a magic tool to improve performance and is more of a compatibility tool for Linux, the condition of GTA IV on PC allows it to improve performance for most - but not everyone - mainly by improving CPU performance through better drawcall handling.

    +
    +What benefit can I expect from DXVK? +

    It's hard to say, because DXVK's improvement can vary from device to device. There is a chance that DXVK will not improve performance for you if you're GPU-bound. So, the only answer is that you can expect some improvement if you are CPU-bound.

    +

    Under right conditions, though, you can expect something comparable to this benchmark: +

    +
    +
    +

    Prerequisites#

    +
    +
      +
    • Make sure your drivers are up-to-date.
    • +
    • If using Windows, disable Shader Pre-caching in Steam, located in Settings - Downloads.
    • +
    • If using Linux, skip to configuration, since Proton already uses DXVK.
    • +
    +
    +
    +

    Setup Utility (Automatic installation)#

    +

    Using this tool you can set up DXVK and launch options easily and automatically. It also takes care of compatibility between FusionFix, ZolikaPatch and other specifics - you can read the feature list here.

    +
    +
      +
    • You should re-run the tool if you downgrade or install FusionFix and/or ZolikaPatch later.
    • +
    • You cannot, nor should you, use the tool on Linux.
    • +
    +
    +

    Usage#

    +
      +
    1. Go to the latest release page.
    2. +
    3. Download GTAIVSetupUtilityWPF.exe.
    4. +
    5. Run the tool.
    6. +
    7. Press Open and select your game folder. Follow the in-app instructions if any pop-ups appear.
    8. +
    9. Press Install DXVK and Setup launch options in sequence. +
    10. +
    +

    After using the tool, you can freely skip to optimal graphics settings:

    +

    Next page
    Additional Setup: Optimal graphics settings

    +
    +

    Manual installation#

    +
    +
    +
    +
    +Requirements +
      +
    • Use this version if your GPU is:
        +
      • NVIDIA: A Maxwell (GeForce 800 series) GPU or newer, plus GTX 745, GTX 750 and GTX 750 Ti.
          +
        • GeForce 810M, GeForce 820M, GeForce 825M, GTX 870M, GTX 880M, GeForce 910M and GeForce 920M are not supported.
        • +
        +
      • +
      • AMD: A GCN4 (RX400 series and Vega series) (i)GPU or newer.
      • +
      • Intel: A Skylake (6th generation Intel Core CPUs) iGPU or newer. All Arc GPUs are supported. Select iGPUs may be limited to Legacy.
      • +
      • Mac: An Intel Mac with support for Vulkan 1.3 (check manually by opening the command prompt and typing vulkaninfo).
      • +
      +
    • +
    +

    If you're don't fall under the list, check the Legacy tab. This list only applies to Windows.

    +
    +
    +

    Instructions

    +
      +
    1. Go to the latest release page.
    2. +
    3. Download the dxvk-x.x.tar.gz archive.
        +
      • On non-NVIDIA GPUs, dxvk-gplasync can instead be used to replace stutter with graphical issues - both issues are temporary. NVIDIA GPUs are unaffected.
      • +
      +
    4. +
    5. After downloading, open the archive and navigate to dxvk-x.x\x32\.
    6. +
    7. Extract d3d9.dll into the game folder.
    8. +
    +
    +
    +
    +Requirements +
      +
    • You can use this version if your GPU is:
        +
      • NVIDIA: A Kepler (GeForce 600 series) GPU or newer.
      • +
      • AMD: A GCN1 (Radeon HD 7700 series) (i)GPU or newer.
      • +
      • Intel: A Skylake (6th generation Intel Core CPUs) iGPU or newer. Select iGPUs may be limited to DXVK 1.10.1.
      • +
      • Mac: An Intel Mac with support for Vulkan 1.1 (check manually by opening the command prompt and typing vulkaninfo).
      • +
      +
    • +
    +

    If you're don't fall under the list, you can not use DXVK. This list only applies to Windows.

    +
    +
    +

    Instructions

    +
      +
    1. Go to the 1.10.3 release of DXVK-async.
    2. +
    3. Download the dxvk-async-1.10.3.tar.gz archive.
        +
      • If you would prefer stutter instead of graphical issues when building shaders, use official DXVK 1.10.3 instead. Both issues are temporary.
      • +
      +
    4. +
    5. After downloading, open the archive and navigate to dxvk-async-1.10.3\x32\
    6. +
    7. Extract d3d9.dll into the game folder.
    8. +
    +
    +
    +
    +
    +Why not dxgi.dll or other files in the folder? +

    The game uses the Direct3D 9 graphics API. The other dll's are for Direct3D 10 and Direct3D 11.

    +

    In simpler words, the game will not use any other files.

    +
    +
    +Why x32? My system is 64-bit +

    Your system is irrelevant in this case. The game itself is designed to use 32-bit libraries, not 64-bit ones.

    +

    In simpler words, the game will not use the files from the x64 folder.

    +
    +
    +If you have problems... +

    Try going down a version or two.

    +

    If your game won't start at all, your GPU doesn't support the latest version. Use the Legacy version instead.

    +

    See troubleshooting.

    +
    +
    +

    Configuration#

    +

    Create a dxvk.conf file in the game folder and add following lines to the file with any text editor:

    +
    # maxFrameLatency is used to avoid or reduce occasional frame skipping and stuttering. This option enforces a stricter maximum frame latency.
    +d3d9.maxFrameLatency = 1
    +# presentInterval is used to enable VSync. We're going to use it in favor of game's VSync implementation. This gives us better CPU overhead.
    +d3d9.presentInterval = 1
    +# numBackBuffers may further improve frametime stability while using Vsync. This option overrides back buffer count for the Vulkan swap chain.
    +d3d9.numBackBuffers = 3
    +
    +

    If using dxvk-async or dxvk-gplasync, add the following lines to the same file:

    +
    # Following options are used to enable async
    +dxvk.enableAsync = true
    +dxvk.gplAsyncCache = true
    +
    +

    For more in-depth configuration, you can see the full list of available options here.

    +
    + +

    After performing optimization, you should continue off with additional setup to finish optimizing the game.

    +

    Previous page
    Downgrading
    Next page
    Additional Setup

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/preparation/index.html b/preparation/index.html new file mode 100644 index 00000000..6a8c3f4c --- /dev/null +++ b/preparation/index.html @@ -0,0 +1,1438 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Preparation - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Preparation#

    +

    To mod the game, we first need to get your system ready for modding and install the game. We will also go over basic instructions, terminology and mod dependencies you may need later.

    +
    +

    Enabling File Extensions#

    +

    Not seeing file extensions can cause some confusion when looking at all the files you need to use when modding. File extensions are not turned on by default in Windows, so if you haven't turned them on yet - do it now:

    +
      +
    1. Open File Explorer
    2. +
    3. Select the View tab at the top
    4. +
    5. Hover the mouse over Show section and enable File name extensions from the submenu. +File name extensions in Explorer
    6. +
    +
    +

    Software#

    +

    Some software should be installed before you can play and mod the game:

    + +
    +

    Drivers#

    +

    It is highly recommended to have latest drivers installed for best performance and stability. Select your GPU vendor on the selector for instructions.

    +
    +
    +
    +
      +
    • Go to the official website.
    • +
    • Press Download Beta and open the downloaded executable.
    • +
    • Follow the in-app instructions to install the driver.
    • +
    +
    +
    +
      +
    • Go to the official website.
    • +
    • Press Download Windows Drivers and open the downloaded executable.
    • +
    • Follow the in-app instructions to install the driver.
        +
      • Select Optional drivers over Recommended to get the latest drivers.
      • +
      • Select Minimal Install over Full Install if you don't need the extra features of the Adrenalin app.
      • +
      +
    • +
    +
    +
    +
      +
    • Go to the official website.
    • +
    • Press Download now and open the downloaded executable.
    • +
    • Follow the displayed instructions to install the drivers. Ignore warnings about OEM drivers.
    • +
    +
    +
    +
    +
    +

    Terminology and tips#

    +
      +
    • Game, Installation or Root folder typically refers to the location where GTAIV.exe is located, which is at:
        +
      • Steam: Steam\steamapps\common\Grand Theft Auto IV\GTAIV
      • +
      • Rockstar Games Launcher: Rockstar Games\Grand Theft Auto IV
      • +
      +
    • +
    • When told to extract a folder, extract the folder itself, not the contents (unless told otherwise).
    • +
    • GFWL is an abbreviation for Games for Windows LIVE. GFWL is a proprietary service made by Microsoft, which allows for multiplayer and DRM protection. XLiveless (sometimes known as xlive.dll) removes GFWL. GFWL is not used in Complete Edition.
    • +
    +
    +

    Modding the game#

    +
    +

    Game installation

    +
      +
    • If you had previously modded the game or installed a modpack, it is highly recommended that you first uninstall the game from your launcher, then delete any leftovers that stayed in the root folder, as launchers don't remove those.
    • +
    • The game should not be located in Desktop or Documents or other default system folders to avoid issues. If not using Steam, it should also not be located in C:\Program Files or C:\Program Files (x86).
    • +
    +
    +

    I recommend opening the troubleshooting page on a separate tab to consult during the guide if you encounter issues.

    +

    If the above is met, continue with one of the following pages:

    +
    + +
    +

    Previous page
    Introduction

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/credits/index.html b/resources/credits/index.html new file mode 100644 index 00000000..19ca0f57 --- /dev/null +++ b/resources/credits/index.html @@ -0,0 +1,1801 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Credits & Donation links - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Credits & Donation links#

    +

    This guide wouldn't be possible without all these amazing people!

    +

    ThirteenAG#

    +

    For their work on FusionFix, Ultimate ASI Loader, Project2DFX and Xbox Rain Droplets.

    +

    Ko-Fi Patreon PayPal Boosty

    +

    Parallellines#

    +

    For their work on Fusion Shaders and directly contributing to Various Fixes and Console Visuals.

    +

    AssaultKifle47#

    +

    For directly contributing to Fusion Shaders and FusionFix and their work on other mods.

    +

    RaphaelK12#

    +

    For directly contributing to Fusion Shaders and FusionFix.

    +

    Tomasak#

    +

    For directly contributing to FusionFix and Console Visuals.

    +

    sTc2201 and the rest of Fusion Team#

    +

    For directly contributing to FusionFix.

    +

    Attramet#

    +

    For their work on Various Fixes, More Visible Interiors, Restored Trees Position, Restored Pedestrians, Replaced Esperanto by Roman's Taxi in Cab Depot & Fixed Pedestrian Reactions and other mods and directly contributing to Console Visuals.

    +

    Magic_Al#

    +

    For their work on GTA V-like visualSettings.dat and directly contributing to FusionFix.

    +

    Valentyn_L#

    +

    For directly contributing to FusionFix and Various Fixes and their work on other mods.

    +

    _CP_#

    +

    For directly contributing to Fusion Shaders and Various Fixes.

    +

    Ash_735#

    +

    For their work on Higher Resolution Miscellaneous Pack, Vehicle Pack, Player Outfit Texture Fixes and Higher Res Radio Logos and directly contributing to Various Fixes and Console Visuals.

    +

    Ko-Fi CashApp

    +

    brokensymmetry#

    +

    For directly contributing to Various Fixes and Console Visuals.

    +

    MikhailRock, vavrinko, Philips_27, Olanov, Panzermann11#

    +

    For directly contributing to Various Fixes.

    +

    nastyyaboi#

    +

    For directly contributing to Console Visuals and other mods.

    +

    _AG#

    +

    For directly contributing to Console Visuals.

    +

    Zolika1351#

    +

    For their work on ZolikaPatch, IV Tweaker, ZMenuIV, Steam Achievements mod, IV-SDK which is what IV-SDK .NET is built off and other mods listed in mods, helping other modders, light assist with the guide and more!

    +

    ItsClockAndre#

    +

    For their work on the Downgrader Tool, IV-SDK .NET, Clonk's Coding Library, Libety Tweaks, Launcher, Project Thunder, VAmbience and other mods.

    +

    Patreon Ko-Fi PayPal

    +

    catsmackaroo#

    +

    For their work on Liberty Tweaks and other mods.

    +

    TheYoshiPunch#

    +

    For their work on Trilogy Characters Fixes and contributing to Various Fixes.

    +

    (Japan) GTA Love#

    +

    For their original work on Trilogy Characters Fixes.

    +

    DayL#

    +

    For their work on Project Glass.

    +

    iiCriminnaaL#

    +

    For their work on Responsive Plus, which was used for cargrp.dat and carcols.dat Fixes and other mods and directly contributing to Player Outfit Texture Fixes.

    +

    donnits#

    +

    For their work on Liberty Ferry Terminal - Waiting Sign Fix, Sugar Chomps - Separate Signs, Dodgy Doc - Higher Quality and GTA V decals

    +

    6135#

    +

    For their work on Luis' Helmet Reflections Fix, Luis' Bag Texture Fix and Johnny's Shoe Texture Fix.

    +

    Chunk#

    +

    For their work on Fidelity Popcycle.

    +

    Thundersmacker#

    +

    For their work on Resized Blista Compact.

    +

    B Dawg#

    +

    For their work on Improved Animations Pack and IV Bikers in Episodes voice sets fix.

    +

    C1aude_III#

    +

    For directly contributing to Improved Animations Pack.

    +

    GladiTek#

    +

    For their work on Reduced Trafic Screech (Audio Tweak).

    +

    _ys#

    +

    For their work on Fixed Suit Display in Perseus and Menu Art Fix.

    +

    const96b#

    +

    For their work on Liberty's Legacy.

    +

    Shvab, OpenIV developers, Cfx.re team, aru, HazardX and others#

    +

    For their work on modding tools. All those mods wouldn't be possible without them.

    +

    Jack Powell#

    +

    For continued development of GTA Connected.

    +

    Patreon

    +

    Other multiplayer clients developers#

    +

    Anyone who's contributing to the multiplayer clients - thank you for keeping GTA IV multiplayer alive!

    +

    DXVK Contributors#

    +

    DXVK wouldn't be as great as it is currently without all these people!

    +

    Mod Creators#

    +

    Their names are already listed next to their contributions in mods, they have done a lot too!

    +

    Discord Communities#

    +

    The communities of these discord servers helped me a lot with this guide:

    +

    Grand Theft RevIVal My Discord server

    +

    Me (Gillian)#

    +

    I've been working on this guide for way over 3 years (including the timespan I worked on the Steam version) and I would greatly appreciate any support! Every person who donated will be mentioned on this (or some other) page. Don't forget to support other modders too!

    +

    I also directly contributed to Libety Tweaks with a minor feature and made Pistol Iron Sight Fix.

    +

    Note: monobank will send the money to me directly.

    +

    monobank Patreon

    +

    Crypto options, if you cannot send money directly or prefer anonimity:

    +
      +
    • BTC: bc1qh72qjm3yxrkxkaarxqskrkxp5c4t2ldar5kef7
    • +
    • ETH: 0xa86252264878d342a0D29683e36F83f4a21eEEA2
    • +
    • USDT: TTrwmdEhEB84cBN2z4m36ZFgK4vHnXpKdG
    • +
    +

    Supporters#

    +

    These people made my life a tad bit easier with their monetary contribution:

    + +

    Special Thanks#

    +
      +
    • Kreato for his help to set up this website and heavily assisting the development of Setup Utility - check out his stuff if you like Linux tinkering.
    • +
    • Henrygame3 for his help as a designer during restructuring the guide.
    • +
    • PCGW Community for their contributions to the wiki, which helped me make this guide more complete (of course, I contributed as well).
    • +
    • Steam Community for actively supporting me during the making of the original guide on Steam.
    • +
    • Yilmaz, MauriceGS, Krooked_ and others from the Grand Theft RevIVal Discord server for providing information for the guide.
    • +
    • Material for MkDocs for providing this great environment for writing a guide.
    • +
    • GitHub Pages for providing a free hosting and domain, allowing the site to be hosted completely free and not require any ads or donations.
    • +
    • Rockstar Games and Rockstar North for making the game.
    • +
    +

    And everyone else#

    +

    Everyone else who helped me set up this guide, motivated me to keep going or even just shared this guide to your friends - thank you!

    +

    If you think you should be listed separately and I missed you by mistake, let me know on the Discord Server or GitHub Issues.

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/mod-dependencies/index.html b/resources/mod-dependencies/index.html new file mode 100644 index 00000000..1a44cd99 --- /dev/null +++ b/resources/mod-dependencies/index.html @@ -0,0 +1,1464 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Mod Dependencies - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Mod Dependencies#

    +
    +

    Ultimate ASI Loader#

    +

    UAL is used to load .asi mods (one of the most common types of GTA IV mods) into the game. It's multipurpose and can be used for many other games, but we will use it for GTA IV.

    +
    +

    Compatibility

    +

    Ultimate ASI Loader is compatible with all game versions.

    +
    +

    Installation

    + +
      +
    1. Go to the latest release page.
    2. +
    3. Download Ultimate-ASI-Loader.zip (not Ultimate-ASI-Loader_x64.zip).
    4. +
    5. Extract the archive into the game folder.
    6. +
    +
    +

    If using Linux...

    +

    Add WINEDLLOVERRIDES="dinput8=n,b" %command% to your Launch options:

    +
      +
    • Steam: Right click the game in your library, press Properties... and paste the line in the Launch options field.
    • +
    • Rockstar Games Launcher: Open the game page in your library, open settings and paste the line in the Launcher arguments field.
    • +
    • Windows shortcut: Right click on the game shortcut, click Properties and paste the line in Target field.
    • +
    +
    +
    +

    Getting rid of Games for Windows - LIVE (for retail patches)

    +

    This tool can be used to get rid of GFWL if you're not interested in official GFWL multiplayer and Xbox Live achievements. This will reduce the amount of hassle and setup you have to do.

    +
      +
    • Rename the dinput8.dll to xlive.dll
    • +
    +
    +
    +

    Modloading

    +

    Ultimate ASI Loader can be used for modloading purposes. See modloading for more details.

    +
    +
    +

    ScriptHookDotNet#

    +
    +

    Compatibility

    + +
    +

    ScriptHookDotNet is used to run scripts written in any .NET language. Not to be confused with IV-SDK .NET.

    +

    Installation

    + +
    +
    +
    +
      +
    1. Go to the latest release page.
    2. +
    3. Download scripthookdotnet_vx_x_x_x.zip.
    4. +
    5. Extract the archive into the game folder.
    6. +
    +
    +
    +
      +
    1. Go to the GTAForums page.
    2. +
    3. Click on DOWNLOAD the GTAIV .Net Script Hook for GTA IV to download the archive.
    4. +
    5. Extract the scripthookdotnet_v1_7_1_8.zip archive into the game folder.
    6. +
    +
    +
    +
      +
    1. Go to the v1.7.1.7a release.
    2. +
    3. Download scripthookdotnet_v1_7_1_7a.zip.
    4. +
    5. Extract the archive into the game folder.
    6. +
    +
    +
    +
    +
    +

    IV-SDK .NET#

    +
    +

    Compatibility

    + +
    +

    IV-SDK .NET is used to run scripts written in any .NET language. Not to be confused with ScriptHookDotNet.

    +

    Installation

    + +
      +
    1. Go to the latest release page.
    2. +
    3. Download IV-SDK.NET.vx_x_x.zip.
    4. +
    5. Extract the archive into the game folder.
    6. +
    +
    +Clonk's Coding Library +

    Some mods may require extensions from Clonk's Coding Library.

    +

    Installation

    +
      +
    • Go to the latest release page.
    • +
    • Download ClonkCodingLib.GTAIV.vx_x.zip.
    • +
    • Extract the archive into the game folder.
    • +
    +
    +
    +

    Getting ScriptHookDotNet and IV-SDK .NET to work on Linux#

    +

    By default, neither of those two will run on Linux. That can be fixed, however. These instructions will assume you are an experienced Linux user, so if you don't get something - Google it.

    +

    Instructions

    + +
      +
    1. Set up Proton-GE.
    2. +
    3. +

      Go to Proton-GE's gamefixes directory (location's different if using Flatpak):

      +
      ~/.local/share/Steam/compatibilitytools.d/GE-Proton9-10/protonfixes/gamefixes-steam/
      +
      +
    4. +
    5. +

      Open 12210.py in a text editor and add the following line at the end of the file:

      +
      util.protontricks('dotnet472')
      +
      +
    6. +
    7. +

      Force the game to use Proton-GE.

      +
    8. +
    9. Run the game and wait until .NET installs (may take from 5 to 30 minutes).
    10. +
    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/openiv/index.html b/resources/openiv/index.html new file mode 100644 index 00000000..71b4228e --- /dev/null +++ b/resources/openiv/index.html @@ -0,0 +1,1408 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + OpenIV - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    OpenIV#

    +

    OpenIV is a powerful tool for modifying, creating and extracting internal files. It can be used to create .img and .rpf files, which can be useful for modloading or mod creation. You may also, very rarely, come across mods packaged in .oiv - this tool allows you to install them as well.

    +
    +

    Installation#

    +
      +
    1. Go to the official website (mirror if the official server is down).
    2. +
    3. Press on Download now.
    4. +
    5. Install OpenIVSetup.exe.
    6. +
    +
    +

    If the official website is down, an offline installer is available here.

    +
    +
    +

    Usage#

    +
      +
    1. Open OpenIV.
    2. +
    3. In the Grand Theft Auto IV section, click on Windows.
    4. +
    5. If requested, set the directory with the game files.
    6. +
    +
    +

    Be sure to back up your files before making any changes.

    +
    +
    +

    Creating archives#

    +
    +

    This might be useful for you if you're making a mod/packing an existing mod for a modloader.

    +
    +
      +
    1. Click File - Create Archive and choose the type of the archive you need.
    2. +
    3. Choose the directory where you want to save the archive
    4. +
    5. Add and modify the files as you wish - changes are saved automatically.
    6. +
    +
    +

    Extracting internal files#

    +
      +
    1. Locate the files of interest in the explorer.
    2. +
    3. Double click to open an .img archive.
    4. +
    5. Select the files you want to export.
    6. +
    7. Right click - Extract.... Or right click on an empty space and click Extract all....
    8. +
    9. Pick a folder where to extract the files. Done!
    10. +
    +
    +

    Editing existing archives (installing mods to game files)#

    +
      +
    1. Locate the files of interest in the explorer (mods usually give the structure to follow).
    2. +
    3. Double click to open an .img archive.
    4. +
    5. Press Edit mode on top.
    6. +
    7. Modify the files as you wish - changes are saved automatically.
    8. +
    +
    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/similar-guides-modpacks/index.html b/resources/similar-guides-modpacks/index.html new file mode 100644 index 00000000..cb33b140 --- /dev/null +++ b/resources/similar-guides-modpacks/index.html @@ -0,0 +1,1367 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Similar Guides & Modpacks - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Similar Guides & Modpacks#

    +

    Do you want more guides & modpacks like this but for other games? I got you covered, as I also love modding! All of the following guides & modpacks have been personally used by me and I can vouch for their quality, as much as you can vouch for my guide!

    +

    Fallout: New Vegas (Viva New Vegas)#

    +

    Tale of Two Wastelands (The Best of Times)#

    +
      +
    • This is a mod to port Fallout 3 content to Fallout: New Vegas and merge the best of two worlds.
    • +
    +

    Fallout 4 (The Midnight Ride)#

    +

    Grand Theft Auto: San Andreas, Vice City, III and the Stories games (Classic Edition)#

    +
      +
    • If you're non-russian speaking, use Google Translate on the page and remove RUSSIFIER from modloader.
    • +
    • The modpack is modular, so just remove something if you don't like it.
    • +
    • The same person has modpacks for GTA Vice City, III and the Stories games, they're on the bottom of the Steam Guide.
    • +
    +

    Need for Speed: Most Wanted, Carbon (Classic Edition & Rework)#

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/troubleshooting/index.html b/resources/troubleshooting/index.html new file mode 100644 index 00000000..769f8dde --- /dev/null +++ b/resources/troubleshooting/index.html @@ -0,0 +1,1659 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Troubleshooting - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Troubleshooting#

    +

    Anyone can have problems modding their favorite games, and GTA IV is extremely prone to them.

    +
    +

    Known issues without a solution#

    +

    I know about these issues, no need to report them to me, unless you know a solution.

    +
      +
    • Cutscenes freeze the game up if the game is out-of-focus for too long.
    • +
    • Car engine sounds occasionally appear and disappear (the solution involves bringing the taxi bug back - lower the traffic budget in GTAIV.EFLC.FusionFix.ini).
    • +
    • Social Club achievements cannot be acquired on downgraded versions.
    • +
    • Night shadows are limited (intended to reduce bugs).
    • +
    +
    +

    Known issues & solutions#

    +

    Boot issues#

    +
    +Asi Loader Error | Other Visual C++ issues +

    Make sure you installed the prerequisite software.

    +
    +
    +Error RMN60 on launch +

    Occurs on downgraded versions. Install ZolikaPatch (your antivirus may have removed it, aswell).

    +
    +
    +Error "SecuLauncher: failed to start application [2000]" on launch +
      +
    • Right click GTAIV.exe, click Properties, switch to the Compatibility tab and uncheck Run this program as an administrator. If it's already unchecked, see the next solution.
    • +
    • Make sure you installed the prerequisite software.
    • +
    • If even that doesn't solve the issue, install NET 3.5.
    • +
    +
    +
    +Game doesn't even show up +
      +
    • Make sure you don't have any duplicate mods - for example, you may have left FusionFix in both the plugins folder and the game folder. The game won't start in this case.
    • +
    • Reboot your PC.
    • +
    • Only launch a downgraded version from Steam or using PlayGTAIV.exe.
    • +
    • If using ZolikaPatch and FusionFix together, disable the incompatible options.
    • +
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem. Usually has something to do with .asi mods, so start there.
    • +
    +
    +
    +Game crashes immediately upon booting +
      +
    • Try turning off RivaTuner Statistics (with MSI Afterburner if using that) or any other software of this sort - overlays can mess the game up on boot.
    • +
    • On a downgraded version, try installing ZolikaPatch if you hadn't already.
    • +
    • Try deleting SETTINGS.cfg from C:/Users/(User)/AppData/Local/Rockstar Games/GTA IV/Settings.
    • +
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem. Usually has something to do with injectable mods, so start there.
    • +
    +
    +
    +

    Load screen issues#

    +
    +Load times are too long +
      +
    • Remove ColAccel if you had installed it outside of the guide.
    • +
    • Remove the -managed launch option.
    • +
    +
    +
    +Game loads endlessly +

    Set the -availablevidmem launch option (with a value of up to 3072.0).

    +
    +
    +Game loads directly into the savegame on startup, no menu +

    You can hold Left Shift on boot for when you need the menu.

    +

    If you want to completely disable the feature off, change Skip Menu to Off in Settings - Game if using FusionFix. If the feature still triggers, set SkipMenu to 0 in ZolikaPatch.ini.

    +
    +
    +

    Settings / performance issues#

    +
    +Game shows wrong VRAM value in settings +

    Set the -availablevidmem launch option (with a value of up to 3072.0).

    +
    +
    +The game does not start in desired resolution and there is no option to increase it in the settings +

    Set these launch options:

    +
      +
    • -width (horizontal resolution)
    • +
    • -height (vertical resolution)
    • +
    • -refreshrate (refresh rate)
    • +
    +

    Example:

    +
      +
    • -width 1920
    • +
    • -height 1080
    • +
    • -refreshrate 60
    • +
    +

    If that still doesn't help, add d3d9.forceAspectRatio = 16:9 to dxvk.conf. Change 16:9 with your exact aspect ratio if you don't use a 16:9 monitor.

    +

    Also, check for GPU driver updates.

    +
    +
    +Poor in-game performance +
      +
    • Make sure that DXVK is installed correctly.
    • +
    • Try using optimal game settings.
    • +
    • Make sure Shader Pre-caching is disabled in the Steam Settings - Downloads tab if using DXVK.
    • +
    • Make sure you don't have overlays such as Rainmeter running in fullscreen, they can tank your performance greatly.
    • +
    • Try lowering the graphics settings, in particular:
        +
      • Shadow Quality
      • +
      • Night Shadows
      • +
      • View/Detail Distance
      • +
      • Depth of Field
      • +
      • Motion Blur
      • +
      • Reflection Quality
      • +
      +
    • +
    +
    +
    +Constant unstable frame timing after a while of playing (i.e. a microstutter every 0.5 seconds) +

    Try disconnecting your gamepad. If the problem goes away, try enabling or disabling Steam Overlay. If the problem persists, try also enabling or disabling Steam Input alongside.

    +
    +
    +

    Crash issues#

    +
    +Game crashes during or shortly after load screen +
      +
    • Make sure you started with a clean install (after pressing Uninstall on Steam, manually wipe the remainders in the folder).
    • +
    • If you have added modded cars and saved them near your savehouse, your savefile is corrupted. Change the saved car using this software.
    • +
    • Your savefile may be corrupted. Try temporarily removing your savefiles and start a new game to see if the problem persists.
    • +
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem. Usually has something to do with script mods, so start there.
    • +
    +
    +
    +Game randomly crashes mid-game +
      +
    • If using ZolikaPatch and FusionFix together, disable the incompatible options.
    • +
    • Open ZolikaPatch.ini and change HighFPSSpeedupFix to 0.
    • +
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem.
    • +
    +
    +
    +

    Gameplay issues#

    +
    +Broken LODs / textures +
      +
    • Set the -availablevidmem launch option (with a value of up to 3072.0).
    • +
    • Tone down the amount of texture mods you're using - especially stuff like road textures.
    • +
    +
    +
    +Can't get into helicopter on last mission | Other timing-related issues at high FPS such as arcades being broken +
      +
    • Install FusionFix.
    • +
    • Some issues can only be omitted by setting a 60 or 30 FPS lock. Can be done in Settings - Graphics if using FusionFix.
    • +
    +
    +
    +Softlock on TLAD - Shifting Weight +

    Open ZolikaPatch.ini and set HighFPSSpeedupFix to 0. You can put it back to 1 after the mission.

    +
    +
    +Cannot access internet cafe computers or interact with entertainment assets (pool, bowling) +

    You can do one of the following:

    +
      +
    • Start a new game and forget about your existing save.
    • +
    • Remove LibertyTweaks files from IVSDKDotNet\scripts (if you don't use IV-SDK .NET for anything else, you can remove safely all files and folders starting with IVSDKDotNet from the game folder aswell).
    • +
    +
    +
    + Steam achievements disappeared after downgrading +

    Install SteamAchievements.

    +
    +
    +GFWL / Xbox Live achievements don't work +
      +
    • Remove SteamAchivements.asi - you can't use both at once.
    • +
    • Set TryToSkipAllErrors and VSyncFix to 0 in ZolikaPatch.ini.
    • +
    +
    +
    +

    Multiplayer issues#

    +
    +"Unable to connect to game session", "Unable to join a game you were kicked from" or joining an empty lobby in GFWL +

    You were either actually kicked by the host, or you're experiencing what's known as kickbug.

    +

    If you're indeed experiencing kickbug, you have to do manual port forwarding for the following ports in your router's settings and your system's firewall (look online for instructions for your specific router or ISP, or contact your ISP):

    +
      +
    • TCP: 3074, 80, 88
    • +
    • UDP: 3074, 80, 88
    • +
    +

    If you can't perform port forwarding, use a VPN service instead. I recommend Mullvad VPN.

    +

    Alternatively, give up. Seriously, just give up and try other multiplayer methods - some people are just stuck with the kickbug with no way to fight it.

    +
    +
    +GFWL overlay doesn't appear +
      +
    • You are using XLiveless (xlive.dll). Rename the file to dinput8.dll.
    • +
    • GFWL files are missing. You need GTAIV.exe.cdf, GTAIV.exe.cfg and GTAIV.exe.cat.
    • +
    • Try reinstalling GFWL.
    • +
    +
    +
    +"This session no longer exists" in GFWL +

    The license key you're using is also used by somebody else who's already in the lobby. Log out and find yourself a different key or re-run the keygen.

    +
    +
    +The game asks to sign in to Social Club in GFWL +

    You need ZolikaPatch.

    +
    +
    +"The downloadable content required for this autoload is not available" in GFWL +

    Restart the game.

    +
    +
    +"You have been disconnected because your computer is running too slowly" in GFWL +
      +
    • Enable Windowed, Borderless and disable Block on Focus Loss in Settings - Game if using FusionFix.
        +
      • If not using FusionFix, set BorderlessWindowed and DoNotPauseOnMinimize to 1 in ZolikaPatch.ini and add -windowed to your commandline.txt instead.
      • +
      +
    • +
    +
    +
    +"The profile could not be signed in to LIVE" in GFWL + +
    +
    +Error code: 0x80048821 or "Password contains special characters" in GFWL +

    Create a new app password and use that to log in.

    +
    +
    +Error code: 0x8007065b in GFWL +

    Only known solution is to use another account to sign in.

    +
    +
    +Error code: 0x80151906 in GFWL +

    Xbox LIVE servers are likely down at the moment, try again later.

    +
    +
    +Error code: 0x8015403A in GFWL +

    Try logging in on the website.

    +
    +
    +Error code: 0x80150001 in GFWL +

    GFWL only allows 100 friends maximum on the account. Reduce your number of friends on the account below 100, then try logging in again.

    +
    +
    +Getting kicked by the anticheat in GTAC +

    Your files are likely modified - make sure you're using a clean copy from Steam or Rockstar Games Launcher.

    +

    The only way to find out which file doesn't pass through is to ask somebody with access to server logs (normally, the owner).

    +
    +
    +

    Miscellaneous issues#

    +
    +I'm using the Rockstar Games Launcher and my files get constantly replaced +

    After downgrading or using the drag-and-drop archive for 1.0.8.0, avoid using the launcher and start the game with PlayGTAIV.exe instead.

    +

    Otherwise, if you want to use CE, avoid file replacements and use modloaders.

    +
    +
    +Game is using the wrong GPU (NVIDIA laptop) +

    Go to the NVIDIA Control Panel, 3D settings, add GTAIV.exe and select Max Performance in Power Plan Mode.

    +
    +
    +EFLC disappeared after downgrading +

    Make sure you are using ZolikaPatch and set LoadDLCs to 1 in ZolikaPatch.ini.

    +
    +
    +.NET mods don't work on Linux +

    See Getting ScriptHookDotNet and IV-SDK .NET to work on Linux

    +
    +
    +

    If you know an issue and a solution that I missed, let me know on the Discord server.

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/additional-setup/index.html b/ru/additional-setup/index.html new file mode 100644 index 00000000..4f0a625a --- /dev/null +++ b/ru/additional-setup/index.html @@ -0,0 +1,2041 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Второстепенная настройка - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Второстепенная настройка#

    +
    +
      +
    • +

      Если вы попали сюда после установки готового архива или использования Setup Utility на Windows, перейдите к оптимальным настройкам графики:

      +

      Оптимальные настройки графики

      +
    • +
    +
    +

    Если же вы попали сюда после чего-либо другого (включая установку архива на Linux), начните с параметров запуска.

    +
    +

    Параметры запуска#

    +
    +

    Setup Utility (Только для Windows)

    +

    Setup Utility может автоматически настроить параметры запуска за вас.

    +
    +

    Ручная настройка#

    +
    +
    +
    +
      +
    1. Откройте свойства игры:
        +
      • Steam: Нажмите правой кнопкой мыши на игре в библиотеке, нажмите Свойства... и найдите поле Параметры запуска.
      • +
      • Rockstar Games Launcher: Откройте страницу с игрой в библиотеке, откройте настройки и найдите поле Параметры запуска.
      • +
      • Ярлык: Нажмите правой кнопкой мыши по ярлыку, нажмите Свойства и найдите поле Цель.
      • +
      +
    2. +
    3. +

      Вставьте туда следующее:

      +
      -norestrictions -nomemrestrict -managed
      +
      +
    4. +
    5. +

      Если установлен FusionFix, включите Оконный режим и Оконный режим без рамки в Настройки - Игра в игре.

      +
    6. +
    +
    +
    +
      +
    1. Создайте файл commandline.txt в папке с игрой.
    2. +
    3. Откройте файл.
    4. +
    5. +

      Вставьте в него следующее:

      +
      -norestrictions
      +-nomemrestrict
      +-windowed
      +-managed
      +
      +
    6. +
    7. +

      Если установлен FusionFix, -windowed может быть убран в пользу переключателей в самой игре.

      +
    8. +
    9. Если установлен FusionFix и/или ZolikaPatch, включите Borderless Windowed в Настройки - Игра в игре или BorderlessWindowed в ZolikaPatch.ini в зависимости от того, что из двух вы установите.
        +
      • Если не планируете ставить ни то, ни другое, уберите -windowed.
      • +
      • Если установлены оба, включите только настройку от FusionFix.
      • +
      +
    10. +
    +
    +
    +
    +
    +Если используется DXVK... +
      +
    • Уберите -managed.
    • +
    • Добавьте -availablevidmem 3072.0 к списку настроек.
        +
      • Замените значение на ваше значение видеопамяти в МБ если у вас меньше 3 ГБ видеопамяти. Но не делайте его выше.
      • +
      • Если используете версию старше 1.0.8.0, это значение некорректно работает. Поэкспериментируйте вручную и доберитесь как можно ближе к 3072 МБ (значение может выглядеть как 60.0, 80.0 и т.п.).
      • +
      +
    • +
    • Если игра не дает использовать ваше разрешение или герцовку монитора в настройках, добавьте -width, -height и -refreshrate с вашими нативными значениями монитора.
        +
      • Если это все еще не помогло, добавьте d3d9.forceAspectRatio = 16:9 к dxvk.conf. Измените 16:9 на ваше точное соотношение сторон если у вас не 16:9 монитор.
      • +
      +
    • +
    • Если используете Windows, убедитесь, что отключили кэш шейдеров, который находится в Настройки - Загрузки в Steam.
    • +
    +
    +
    +Полный список доступных параметров запуска +

    Вы можете использваоть эти настройки для более детальной настройки или дебага.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    НастройкаОписание
    -helpСписок доступных команд.
    -adapterИспользуется указанный адаптер экрана.
    -autoconfigАвтоматически настраивает графические параметры в зависимости от характеристик компьютера.
    -availablevidmemУстанавливает объем доступной физической видеопамяти.
    -benchmarkЗапускает игру в режиме Benchmark и затем завершает ее.
    -detailqualityУстанавливает глубину детализации игры (0-99).
    -disableimpostersОтключает рендеринг ненастоящего траффика в далеке.
    -forcehighqualitymirrors?
    -forcer2vbПринудительный рендеринг в Vertex Buffer.
    -frameLimitУстанавливает настройку для V-Sync.
    -framelockinwindowЗаставляет framelock работать даже в окне.
    -fullscreenЗаставляет полноэкранный режим.
    -fullspecaudioПринудительное использование высоко-качественного звука.
    -gpucountПозволяет вручную установить количество GPU, если запрос не выполняется.
    -heightУстанавливает вертикальное разрешение.
    -managedИспользует управляемые ресурсы времени выполнения D3D.
    -memrestrictОграничивает объем доступной памяти, которую может использовать игра.
    -minspecaudioПринудительное использование низко-качественного звука.
    -no_3GBОтключает поддержку памяти 3 ГБ в 32-разрядных ОС, в которых установлено, что игры и приложения могут использовать такой объем памяти.
    -noBlockOnLostFocusЗапрещает игре блокировать обновление окна при потере фокуса.
    -noprecacheОтключает предварительное кэширование ресурсов.
    -nomemrestrictОтключает ограничение памяти.
    -nominimizeОтключает возможность восстановления игры из режима минимизации и изменения разрешения (уменьшает занимаемую системную память).
    -norestrictionsОтключает ограничения на настройки графики.
    -noswapdelayОтключает задержку перед Present (отключает исправление hard present stalls).
    -notimefixОтключает Time Fix.
    -novblankОтключение вертикального бланкирования для V-Sync.
    -percentvidmemПроцент видеопамяти, который должен быть доступен для игры.
    -refreshrateУстанавливает частоту обновления (установленные значения должны поддерживаться используемым монитором).
    -reserveУстанавливает объем памяти, который будет использоваться другими программами.
    -reservedAppУстанавливает объем памяти, который должен оставаться доступным в пространстве приложения.
    -renderqualityНастраивает анизотропную фильтрацию (0-4).
    -safemodeУстанавливает минимально возможные настройки графики игры.
    -shadowdensityНастраивает ночные тени (0-16).
    -shadowqualityУстанавливает качество теней (0-4).
    -stereoВключает поддержку стереозвука.
    -texturequalityУстанавливает качество текстур игры (0-2).
    -unmanagedИспользует ресурсы, управляемые приложением.
    -usedirectinputПозволяет использовать поддержку DirectInput наряду с поддержкой XInput.
    -viewdistanceУстанавливает расстояние обзора игры (0-99).
    -windowedУстанавливает оконный режим.
    -widthУстанавливает разрешение по горизонтали.
    +
    +
    +

    Оптимальные настройки графики#

    +
    +

    Следующие настройки рассчитаны на рекомендуемые требования по железу.

    +

    Если вы попали сюда после установки архива, используйте вкладку FusionFix.

    +
    +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    НастройкаОптимальное значениеОписание
    ВидеорежимВаше нативное разрешение (максимальное значение, обычно)Эта настройка регулирует разрешение вашего монитора или, если стоит параметр запуска -windowed, размер игрового окна.
    Соотношение сторонАвтоЭта настройка регулирет соотношение сторон экрана относительно разрешения вашего монитора.
    Качество текстурВысокоеЭта настройка регулирует разрешение всех текстур.
    Разрешение отраженийОчень высокоеЭта настройка регулирует разрешение отражений (кроме отражений в воде).
    Качество водыСреднееЭта настройка регулирует плотность и интенсивность волн в воде и качество отражений в воде.
    Рекомендуется использовать Среднее, так как вода с этой настройкой менее 'раздутая' и более реалистичнее, а также ближе всего к нужному виду на консолях.
    Качество тенейВысокоеЭта настройка регулирует разрешение и расстояние рендеринга теней.
    Среднее и низкое очень сильно используют статические тени, что выглядит довольно убого.
    Очень высокое слишком сильно сказывается производительности ради мелких улучшений и иногда тени выглядят сломанными.
    Улучшенные ночные тениСреднееЭта настройка регулирует сколько элементов локального света (например, фар автомобиля) могут отбрасывать тени. Каждый уровень качества добавляет 4 дополнительные карты теней. Эта настройка не влияет на разрешение динамических теней.
    Настройки выше Среднее вызывают артефакты.
    Качество фильтрации текстурАнизотропная 16xЭта настройка регулирует фильтрацией текстур.
    Дистанция обзораМежду 21 и 70Эта настройка регулирует основное расстояние рендеринга LOD для таких объектов, как здания и транспорт. Также влияет на расстояние рендеринга пропов.
    Установка значения выше 21 создаст резкие проявления объектов, а выше 70 нестабильность и артефакты, и негативное влияение на производительность.
    Глубина детализацииМежду 10 и 70Эта настройка регулирует расстояние вторичного рендеринга LOD для деталей в пропах.
    Установка значения выше 10 создаст резкие проявления объектов, а выше 70 нестабильность и артефакты.
    Транспортный потокДо 70
    100, если есть кастомный popcycle (архив)
    Эта настройка регулирует количество транспорта по дорогах.
    Установка слишком высокого значения делает езду по дороге очень неприятной, особенно с нестабильным ИИ траффика, который иногда застревает даже на прямых дорогах и мостах.
    Глубина поля наблюденияВкл
    Откл если играете в 1280x720
    Эта настройка регулирует глубину резкости и размытие в движении (Откл - включено, Вкл - отключение).
    Если играете на разрешении выше 1280x720, Откл только блюрит изображение на ПК, а эффекты попросту не масштабируются по разрешению - из-за этого, оставьте настройку на Вкл если не играете в этом разрешении.
    Можно быстро переключать кнопкой P в игре.
    Вертикальная синхронизацияОткл если используется DXVK
    Вкл
    Эта настройка регулирует вертикальную синхронизацию.
    Если используется DXVK с конфигурацией, поставьте настройку в игре на Откл в пользу DXVK. Также добавьте d3d9.maxFrameRate = 60 к dxvk.conf или ограничьте кадры другими способами до 60 или 30 во избежание проблем с таймингом. AMD Fluid Motion Frames (если используется DXVK) или Lossless Scaling может использоваться для искусственного увеличения частоты кадров.
    +
    +
    +
    +

    Следующие настройки требуют FusionFix.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    НастройкаОптимальное значениеОписание
    ВидеорежимВаше нативное разрешение (максимальное значение, обычно)Эта настройка регулирует разрешение вашего монитора или, если включена настройка Оконный режим, размер игрового окна.
    Соотношение сторонАвтоЭта настройка регулирет соотношение сторон экрана относительно разрешения вашего монитора.
    Качество текстурВысокоеЭта настройка регулирует разрешение всех текстур.
    Разрешение отраженийОчень высокоеЭта настройка регулирует разрешение отражений (кроме отражений в воде).
    Качество водыОчень высокоеЭта настройка регулирует только разрешение отражений воды когда используется FusionFix.
    Качество тенейОчень высокоеЭта настройка регулирует разрешение и расстояние рендеринга теней.
    Если слишком сильно падает фпс, понизьте до Высокое.
    Настройка поглубже доступна в GTAIV.EFLC.FusionFix.ini.
    Улучшенные ночные тениОчень высокоеЭта настройка регулирует сколько элементов локального света (например, фар автомобиля) могут отбрасывать тени, а также само разрешение этих теней.
    Настройка поглубже доступна в GTAIV.EFLC.FusionFix.ini.
    Качество фильтрации текстурАнизотропная 16xЭта настройка регулирует фильтрацией текстур.
    Дистанция обзора25
    До 70
    Эта настройка регулирует основное расстояние рендеринга LOD для таких объектов, как здания и транспорт. Также влияет на расстояние рендеринга пропов.
    Установка значения выше 25 создаст резкие проявления объектов, а выше 70 не имеет сущных улучшений.
    Глубина детализации31
    До 70
    Эта настройка регулирует расстояние вторичного рендеринга LOD для деталей в пропах.
    Установка значения выше 31 создаст резкие проявления объектов, а выше 70 не имеет сущных улучшений.
    Транспортный потокДо 70
    100, если есть кастомный popcycle (архив)
    Эта настройка регулирует количество транспорта по дорогах.
    Установка слишком высокого значения делает езду по дороге очень неприятной, особенно с нестабильным ИИ траффика, который иногда застревает даже на прямых дорогах и мостах.
    Вертикальная синхронизацияОткл если используется DXVK
    Вкл
    Эта настройка регулирует вертикальную синхронизацию.
    Если используется DXVK с конфигурацией, поставьте настройку в игре на Откл в пользу DXVK.
    Солнечные лучиПо предпочтениюЭта настройка регулирует кастомные лучи солнца.
    Настройка поглубже доступна в GTAIV.EFLC.FusionFix.ini.
    СглаживаниеSMAAЭта настройка регулирует сглаживание.
    Ограничитель кадров60
    30
    Эта настройка регулирует ограничением кадров.
    Рекомдентуеся установить значение на 60 или 30 во избежание проблем с таймингом, хотя сюжет может быть пройден и выше 60, если игнорировать баги. Вы, возможно, захотите понизить ограничение от 30 для миниигр.
    AMD Fluid Motion Frames (если используется DXVK) или Lossless Scaling могут быть использованы для искусственного увеличения частоты кадров.
    Настройка поглубже доступна в GTAIV.EFLC.FusionFix.ini.
    FOVПо предпочтениюЭта настройка регулирует игровым FOV с увеличением от значения по умолчанию в игре.
    Тени от фонарейПо предпочтениюЭта настройка регулирует тени от фонарей ценой возможного резкого проявления теней и ухудшенной производительности.
    +
    +

    Следующие настройки находятся на вкладке Экран.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    НастройкаОптимальное значениеОписание
    Размытие при движенииПо предпочтениюЭта настройка регулирует эффектом размытия при движении.
    СвечениеВклЭта настройка регулирует свечение.
    Консольная гаммаПо предпочтениюЭта настройка изменяет гамму для придания игре консольного вида.
    Игра никогда не должна была быть такой "белой", поэтому я рекомендую установить значение на Вкл.
    Фильтр экранаПо умолчаниюЭта настройка позволяет переключать файл timecyc длч соотвествия другим фильтрам экрана (к примеру, фильтры TBoGT в IV или наоборот).
    Глубина резкостиПо предпочтениюЭта настройка регулирует глубину резкости и позволяет использовать эффект только в катсценах.
    Освещение деревьевПо предпочтениюЭта настройка регулирует окружающую окклюзию растительности.
    Настройка поглубже доступна в GTAIV.EFLC.FusionFix.ini.
    Прозрачность деревьевПо предпочтениюЭта настройка регулирует прозрачность деревьев.
    Настройка поглубже доступна в GTAIV.EFLC.FusionFix.ini.
    Глубина поля наблюденияВклЭта настройка регулирует сглаживание "сетчатых" и "точечных" объектов, чтобы уменьшить мерцание и ступенчатость.
    +
    +

    Следующие настройки находятся на вкладке Игра.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    НастройкаОптимальное значениеОписание
    Оконный режимВклЭта настройка регулирует, находится ли игра в экслюзивном полноэкранном режиме или (безрамночном) оконном.
    Безрамочный режим в основном более рекомендован, чем экслюзивный полноэкранный в пользу мультизадачности.
    Оконный режим без рамкиВкл если включен Оконный режим
    Откл
    Эта настройка регулирует, находится ли игра в обычном окне или безрамочном когда включена настройка Оконный.
    Автоматически ставить игру на паузу в фонеОтклЭта настройка регулирует, будет ли процесс игры "останавливаться" когда окно игры теряет фокусировку (альт-таббинг).
    Рекомендуется ставить на Выкл во избежание потенциальных вылетов.
    +
    +
    +
    +

    Что это за настройки?

    +

    Эти настройки идентичны к консольной версии игры.

    +

    Я не рекомендую играть с этими настройками, по этому этот список более к сведенью какие настройки наиболее аутентичны консольной версии.

    +
    +
    +

    Следующие настройки требуют FusionFix.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    НастройкаЗначение, идентичное к консолиОписание
    Видеорежим1280x720 на X360
    1152x640 на PS3
    Эта настройка регулирует разрешение вашего монитора или, если включена настройка Оконный режим, размер игрового окна.
    Качество текстурСреднееЭта настройка регулирует разрешение всех текстур.
    Разрешение отраженийСреднееЭта настройка регулирует разрешение отражений (кроме отражений в воде).
    Качество водыСреднееЭта настройка регулирует только разрешение отражений воды когда используется FusionFix.
    Качество тенейСреднее (?)Эта настройка регулирует разрешение и расстояние рендеринга теней.
    Улучшенные ночные тениОтклЭта настройка регулирует сколько элементов локального света (например, фар автомобиля) могут отбрасывать тени, а также само разрешение этих теней.
    Качество фильтрации текстурТрилинейнаяЭта настройка регулирует фильтрацией текстур.
    Дистанция обзора21Эта настройка регулирует основное расстояние рендеринга LOD для таких объектов, как здания и транспорт. Также влияет на расстояние рендеринга пропов.
    Глубина детализации10Эта настройка регулирует расстояние вторичного рендеринга LOD для деталей в пропах.
    Транспортный поток33Эта настройка регулирует количество транспорта по дорогах.
    Солнечные лучиОтклЭта настройка регулирует кастомные лучи солнца.
    СглаживаниеН/ПЭта настройка регулирует сглаживание.
    Игра использовала SSAA 2x на Xbox 360 и QAA на PS3, и ни одно из двух не доступно на ПК.
    Ограничитель кадров30Эта настройка регулирует ограничением кадров.
    FOVПо умолчанию (самое низкое значение)Эта настройка регулирует игровым FOV с увеличением от значения по умолчанию в игре.
    Тени от фонарейВклЭта настройка регулирует тени от фонарей ценой возможного резкого проявления теней и ухудшенной производительности.
    +
    +

    Следующие настройки находятся на вкладке Экран.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    НастройкаЗначение, идентичное к консолиОписание
    Размытие при движенииВклЭта настройка регулирует эффектом размытия при движении.
    СвечениеВклЭта настройка регулирует свечение.
    Консольная гаммаВклЭта настройка изменяет гамму для придания игре консольного вида.
    Фильтр экранаПо умолчаниюЭта настройка позволяет переключать файл timecyc длч соотвествия другим фильтрам экрана (к примеру, фильтры TBoGT в IV или наоборот).
    Глубина резкостиОчень высокое (?)Эта настройка регулирует глубину резкости и позволяет использовать эффект только в катсценах.
    Освещение деревьевConsoleЭта настройка регулирует окружающую окклюзию растительности.
    Прозрачность деревьевConsoleЭта настройка регулирует прозрачность деревьев.
    Глубина поля наблюденияОтклЭта настройка регулирует сглаживание "сетчатых" и "точечных" объектов, чтобы уменьшить мерцание и ступенчатость.
    +
    +
    +
    +
    +

    Навигация#

    +
      +
    • +

      Если вы попали сюда после установки архива, поздравляю, вы заканчиваете здесь!

      +
    • +
    • +

      Если вы проходите через руководство вручную, продолжайте к обязательным модам.

      +
    • +
    +

    Предыдущая страница
    Оптимизация
    Следующая страница
    Обязательные моды

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/downgrading/downgrading-the-game/index.html b/ru/downgrading/downgrading-the-game/index.html new file mode 100644 index 00000000..0edd1072 --- /dev/null +++ b/ru/downgrading/downgrading-the-game/index.html @@ -0,0 +1,1489 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Даунгрейдинг игры - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Даунгрединг игры#

    +

    Версии игры#

    +

    Ниже приведена информация о двух версиях, на которых мы остановимся, и их различиях. Версия 1.0.4.0 числится лишь в информационных целей - мы не будем использовать ее в рамках данного руководства.

    +
    +Complete Edition (1.2.0.59) +

    Это новейшая версия игры, которую вы обычно получаете при установке игры на Steam или Rockstar Games Launcher. Эту версию следует предпочесть, если вы хотите получить лучшие впечатления от сюжетки.

    +
    +Плюсы и минусы +
    +

    Работает из коробки. Не требуются модификации для работы игры.
    + Лучшая поддержка для современных модов, созданных после 2020 года - таких как FusionFix. Это гарантирует получение максимального количества фиксов при моддинге.
    + Включает EFLC.
    + Поддерживает достижения Steam и Social Club из коробки.

    +
    +
    +

    Требует Rockstar Games Launcher и его DRM, который можно считать лишним по нескольким причинам: игра запускается на минуту дольше и не дает ничего, кроме достижений, и это только две причины.
    + Совместимость со старыми модами не гарантируется. Некоторые моды работают, но есть и такие, которые не работают. Однако они не являются обязательными для исправления игры.
    + Вырезан официальный мультиплеер, а сторонние клиенты ограничены.
    + Нет поддержки для достижений GFWL (Xbox Live).

    +
    +
    +
    +
    +Розничная версия (1.0.8.0) +

    Это версия игры, существовавшая до выхода Complete Edition. Эту версию стоит предпочесть только в том случае, если вы хотите играть в мультиплеер, ставить конкретные моды, которые не поддерживают CE, или хотите играть без DRM..

    +
    +Плюсы и минусы +
    +

    Поддерживает официальный мультиплеер.
    + DRM может быть убран, что делает эту версию одной из тех, в которую можно играть без DRM.
    + Лучшая поддержка для старых модов, созданных до 2020 года, таких как Liberty Tweaks. Если вы сами не знаете ни одного, не считайте это особенным плюсом.
    + Поддерживает достижения GFWL (Xbox Live), но ценой достижений Steam.

    +
    +
    +

    Ограниченная совместимость с FusionFix, что уменьшит количество доступных исправлений.
    + Для мультиплеера, вам нужно установить и настроить GFWL, что является еще той морокой. Хотя существует сторонная альтернатива.
    + Поддержка EFLC доступна только через моды.
    + Поддержка достижений Steam доступна только через моды, которые также отключают достижения GFWL. Также нет поддержки для достижений Social Club.

    +
    +
    +
    +
    +Розничная версия (1.0.4.0) +

    Эта версия не будет полезна в рамках этого руководства, но поскольку она популярна в сообществе, ее следует упомянуть - и объяснить, почему мы не будем ее использовать. Эту версию следует предпочесть только для графических модов, которые не используются в этом руководстве.

    +
    +Плюсы и минусы +
    +

    Лучшая поддержка графических модов.
    + Немного лучше средний FPS.
    + DRM может быть убран, что делает эту версию одной из тех, в которую можно играть без DRM.
    + Поддерживает достижения GFWL (Xbox Live).

    +
    +
    +

    Никакущая поддержка модов.
    + Ужасный фреймпейсинг (стабильность производительности).
    + Нет поддержки EFLC.
    + Нет поддержки достижений Steam или Social Club.

    +
    +
    +
    +
    +

    Инструкции для даунгрейдинга#

    +
    +

    Какой даунгрейдер выбрать?

    +
      +
    • Используйте даунгрейдер от ItsClockAndre если вы хотите сделать даунгрейд до 1.0.4.0 или если у вас проблемы с моим.
    • +
    • Для других случаев, используйте мой.
    • +
    +
    +
    +
    +
    +

    Я сделал свой собственный даунгрейдер для своих целей в качестве альтернативы даунгрейдеру от ItsClockAndre. Этот даунгрейдер мал по весу и не позволяет делать "сломанные" даунгрейды независимо от того, какой способ даунгрейда вы выбрали, поэтому я рекомендую его.

    +
      +
    1. Перейдите на страницу последнего релиза.
    2. +
    3. Скачайте GTAIVDowngradeUtilityWPF.zip.
    4. +
    5. Распакуйте архив в любую пустую папку.
    6. +
    7. Откройте GTAIVDowngradeUtilityWPF.exe.
    8. +
    9. Нажмите Open и выберите папку с игрой. Следуйте инструкциям в приложении, если появятся всплывающие окна.
    10. +
    11. Нажмите Downgrade для даунгрейда игры. Программа автоматически загрузит и установит все необходимое.
        +
      • Если вы знаете что делаете, можете вручную поменять какие-либо переключатели. Только используйте "Full downgrade" если вам абсолютно необходимы все оригинальные файлы
      • +
      • Если появятся какие-либо проблемы, сообщите о них на Discord сервере.
      • +
      +
    12. +
    +
    +
    +

    Этот даунгрейдер заменяет гораздо больше файлов, чем действительно нужно обычному пользователю, что может привести к несколько худшему состоянию игры в некоторых местах. В нем также есть возможность совершить даунгрейд до 1.0.4.0, чего нет в моем даунгрейдере. Кроме того, он позволяет делать несовместимые выборы, поэтому внимательно читайте предупреждения.

    +
      +
    1. Создайте исключение в антивирусе для папки с игрой. Не переживайте - софт безопасный.
    2. +
    3. Перейдите на страницу GTAForums и скачайте последнюю версию.
    4. +
    5. Распакуйте архив, запустите IVDowngrader.exe с правами администратора.
    6. +
    7. Следуйте инструкциям в приложении. Обязательно прочитайте предупреждения при выборе модов.
    8. +
    +
    +
    +
    +
    +
      +
    • У вас будет отсутствовать руссификатор. Скачайте архив и распакуйте из него папку update в папку с игрой, в Settings - Display - Language смените язык на Русский.
    • +
    • После даунгрейда, всегда запускайте игру через Steam или PlayGTAIV.exe.
    • +
    • Если вы используете Rockstar Games Launcher, не запускайте игру из-под лаунчера.
    • +
    • Если у вас уже были параметры запуска, их необходимо переместить в commandline.txt после даунгрейда.
    • +
    • При желании, вы теперь можете переместить папку с игрой куда-угодно.
    • +
    +
    +
    +Games for Windows - LIVE +

    Если вы захотите поиграть в официальный мультиплеер или получить достижения в Xbox Live, включите поддержку GFWL при даунгрейдинге и, после даунгрейда, обратитесь к этой странице для настройки GFWL.

    +

    Не включайте эту настройку если вы не хотите ни того, ни другого - вы лишь усложните себе работу. Если вы включили ее случайно, переименуйте dinput8.dll на xlive.dll. Если у вас нет этого файла - установите Ultimate ASI Loader вручную.

    +
    +
    +

    Setup Utility

    +

    Если вы вернулись сюда после того, как уже использовали Setup Utility на страницах оптимизации или второстепенной настройки, используйте утилиту заново.

    +
    +
    +

    Даунгрейд сохранения#

    +

    Если вы уже начали играть на Complete Edition, то, скорее всего, вам захочется также сделать даунгрейд сохранения для совместимости с старой версией.

    +

    Инструкции#

    +
      +
    1. Сначала найдите свои сохранения в Documents\Rockstar Games\GTA IV\Profiles\(id)\. Они названы в этом формате: SGTAxxx.
    2. +
    3. Загрузите тот, который вы хотите конвертировать на GTASnP.
    4. +
    5. Разверните вкладку Modifications.
    6. +
    7. В Downgrade Version выберите 1.0.8.0 IV / 1.1.3.0 EFLC and older.
    8. +
    9. Выберите слот, в который вы хотите сохранить свой файл сохранения. У вас должно загрузиться конвертированное сохранение.
    10. +
    11. Переместите его в C:\Users\(user)\AppData\Local\Rockstar Games\GTA IV\savegames\user_(id)\.
    12. +
    +
    +

    Навигация#

    +

    После даунгрейдинга, продолжите с оптимизацией:

    +

    Предыдущая страница
    Даунгрейдинг
    Следующая страница
    Оптимизация

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/downgrading/downgrading-the-radio/index.html b/ru/downgrading/downgrading-the-radio/index.html new file mode 100644 index 00000000..1ef11a47 --- /dev/null +++ b/ru/downgrading/downgrading-the-radio/index.html @@ -0,0 +1,1311 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Даунгрейдинг радио - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Даунгрейдинг радио#

    +
    +

    Если вы ранее сделали даунгрейд игры, этот даунгрейдер не будет работать.

    +
    +
    +

    Инструкции

    +

    +
      +
    1. Перейдите на страницу с новейшим релизом.
    2. +
    3. Скачайте Radio.Restoration.Mod.xx-xx-xxxx.zip.
    4. +
    5. Распакуйте архив в любую пустую папку.
    6. +
    7. Запустите IVCERadioRestorer.exe и следуйте инструкциям в приложении.
    8. +
    9. Дополнительно, вы можете установить это для частичного ввостановления оригинальной музыки в меню TBoGT.
    10. +
    +
    +only pre-cut Vladivostok" и "pre-cut plus post-cut"? +

    Rockstar добавили на Владивосток новые треки взамен вырезанных. "pre-cut plus post-cut" сохраняет их вместе с восстановленными вырезанными, а "only pre-cut" вырезает их, оставляя только восстановленные.

    +
    +
    +

    Навигация

    +

    +
    + +
    +

    Предыдущая страница
    Даунгрейдинг

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/downgrading/index.html b/ru/downgrading/index.html new file mode 100644 index 00000000..4c36cba6 --- /dev/null +++ b/ru/downgrading/index.html @@ -0,0 +1,1301 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Даунгрейдинг - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Даунгрейдинг#

    +
    +

    Убедитесь, что все предварительные требования выполнены и была проведена подготовка. Если вы пропустили один из шагов, при следовании руководства у вас могут возникнуть проблемы, и вы не получите поддержку. В дальнейшем это сообщение не будет повторяться.

    +

    Вступление: Предварительные требования
    Подготовка

    +
    +
    +

    Зачем даунгрейдить радио?#

    +

    В апреле 2018 года более 50 треков были удалены с радиостанций игры из-за просроченных лицензий и были заменены на неаутентичные треки.

    +
    +

    Зачем даунгрейдить игру?#

    +

    За годы своего существования игра получила несколько версий с множеством изменений между ними. Вы можете захотеть совершить даунгрейд, если вы хотите одно из следующего:

    +
      +
    • Вы хотите играть в официальный мультиплеер.
    • +
    • Вы хотите избавиться от DRM.
    • +
    • У вас есть определенные моды, которые не поддерживают Complete Edition (например, Liberty Tweaks).
    • +
    • Вы хотите возиться с графическими модами (например, ICEnhancer). Я, к слову, не рекомендую и не поддерживаю их.
    • +
    +

    Однако имейте в виду, что вы потеряете некоторые из новейших фиксов, поскольку FusionFix не полностью поддерживает старые версии.

    +
    +

    Навигация#

    +

    Чтобы облегчить себе работу в дальнейшем, решите, что вы хотите даунгрейдить сейчас: радио, версию игры или и то, и другое.

    +
    + +
    +

    Предыдущая страница
    Подготовка

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/drag-and-drop-archive/index.html b/ru/drag-and-drop-archive/index.html new file mode 100644 index 00000000..ae6f6cb3 --- /dev/null +++ b/ru/drag-and-drop-archive/index.html @@ -0,0 +1,2443 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Готовый архив - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Готовый архив#

    +

    Готовый архив - это полностью готовая к игре сборка для лучшего опыта сюжетки GTA IV. Все, что нужно для установки, это просто забросить файлы в папку с игрой и сделать несколько дополнительных действий - отсюда и название.

    +
    +

    Убедитесь, что все предварительные требования выполнены и была проведена подготовка. Если вы пропустили один из шагов, у вас могут возникнуть проблемы с использованием этой сборки, и вы не получите поддержку.

    +

    Вступление: Предварительные требования
    Подготовка

    +
    +
    +

    Демонстрация#

    +

    TBA

    +
    +

    Установка#

    +
    +

    Какую версию ставить?

    +

    Следующий переключитель относится к версии игры - базовые различия между ними смотрите здесь. Моды в обоих архивах в основном идентичны, но 1.0.8.0 включает больше изменений в роде Quality of Life взамен на некоторые исправления в FusionFix и удаляет Rockstar Games Launcher, в то время как 1.2.0.59 считается более стабильным.

    +

    Лично я предпочитаю для ванильного прохождения архив для 1.2.0.59, а для ванильного+ прохождения (может заново захотелось поиграть) - архив для 1.0.8.0.

    +
    +
    +
    +
    +

    Последний раз обновлено: 13.11.2024

    +
    +
      +
    • Эта сборка НЕ обеспечивает наилучшую производительность - цель, в первую очередь, создать лучший ванильный-плюс опыт игры. Если вы только хотите лучшую производительность - начинайте моддинг вручную.
    • +
    • Не ожидайте поддержки если устанавливаете моды за пределами дополнительных модов - скорее всего, вы ее не получите.
    • +
    • Не пытайтесь установить эту версию на уже-даунгрейднутую игру.
    • +
    • Если используете Linux, пропустите шаги 3-6 и примените параметры запуска вручную.
    • +
    +
    +
      +
    1. Скачайте архив (3.73ГБ, SHA512: 1793ddf78569828124ba8f63a035997cd0b8079b57912fbb6def62c32322a67fb7af19faa7b8e4f86d342366c8176f0061c2427382714df5af4206be114d453a).
    2. +
    3. Распакуйте 1.2 archive.7z в папку с игрой (та, в которой GTAIV.exe).
    4. +
    5. Запустите GTAIVSetupUtilityWPF.exe. Вам возможно потребуется установить .NET 6 Runtime.
    6. +
    7. Нажмите Open, выберите ту же папку с игрой.
    8. +
    9. Нажмите Install DXVK, после чего Setup launch options. Не трогайте переключатели, если не знаете что делаете.
    10. +
    11. После нажатия Setup launch options и ОК параметры запуска будут у вас в буфере обмена, поэтому сделайте одно из следующих действий:
        +
      • Steam: Нажмите правой кнопкой мыши на игре в библиотеке, нажмите Свойства... и вставьте содержимое в поле Параметры запуска.
      • +
      • Rockstar Games Launcher: Откройте страницу с игрой в библиотеке, откройте настройки и вставьте содержимое в поле Параметры запуска.
      • +
      • Ярлык: Нажмите правой кнопкой мыши по ярлыку, нажмите Свойства и вставьте содержимое в конец поля Цель.
      • +
      +
    12. +
    13. Вы готовы к игре!
        +
      • Запускайте игру через Steam, Rockstar Games Launcher или PlayGTAIV.exe.
      • +
      • Если используете Linux, добавьте WINEDLLOVERRIDES="dinput8=n,b" %command% к параметрам запуска.
      • +
      • Предпочтительнее начинать новую игру. Существующие файлы сохранения могут работать, но могут возникнуть проблемы.
      • +
      • Выставьте настройку Транспортный поток на 100 для полноценного использования кастомного popcycle.
      • +
      • Если вы хотите больше модов, просмотрите дополнительные моды.
      • +
      +
    14. +
    +
    +

    Обновление

    +

    Если вы обновляете сборку, сначала удалите папку update и удалите все .asi файлы (но не трогайте остальные) из папки plugins.

    +
    +
    +
    +

    Последний раз обновлено: 13.11.2024

    +
    +
      +
    • Эта сборка НЕ обеспечивает наилучшую производительность - цель, в первую очередь, создать лучший ванильный-плюс опыт игры. Если вы только хотите лучшую производительность - начинайте моддинг вручную.
    • +
    • Не ожидайте поддержки если устанавливаете моды за пределами дополнительных модов - скорее всего, вы ее не получите.
    • +
    • Не выполняйте даунгрейд самостоятельно. В архив уже входит даунгрейдер.
    • +
    • Если используете Linux, пропустите шаги 3-5 и примените параметры запуска вручную.
    • +
    +
    +
      +
    1. Скачайте архив (3.81ГБ, SHA512: 2faa59e19881e504f4a96ba0d241fcd8fb229fff68a23fdb3ab4bff4f4364bc89d66a1eb5b7e0cfb130a46237f56cacadf890aa34275b710e502a6262188344d).
    2. +
    3. Распакуйте 1.0 archive.7z в папку с игрой (та, в которой GTAIV.exe).
    4. +
    5. Запустите GTAIVSetupUtilityWPF.exe. Вам возможно потребуется установить .NET 6 Runtime.
    6. +
    7. Нажмите Open, выберите ту же папку с игрой.
    8. +
    9. Нажмите Install DXVK, после чего Setup launch options. Не трогайте переключатели, если не знаете что делаете.
    10. +
    11. Вы готовы к игре!
        +
      • Запускайте игру через Steam или PlayGTAIV.exe.
      • +
      • Если используете Rockstar Games Launcher, не запускайте игру через лаунчер и удалите SteamAchievements.asi.
      • +
      • Если используете Linux, просмотрите Заставляем ScriptHookDotNet и IV-SDK .NET работать на Linux (или удалите файлы и папки начинающиеся на IVSDKDotNet).
      • +
      • Предпочтительнее начинать новую игру. Существующие файлы сохранения могут работать, но могут возникнуть проблемы. Также, если вы уже начали играть на 1.2.0.59, вам потребуется сделать даунгрейд сохранения.
      • +
      • Выставьте настройку Транспортный поток на 100 для полноценного использования кастомного popcycle.
      • +
      • Если вы хотите больше модов, просмотрите дополнительные моды.
      • +
      +
    12. +
    +
    +

    Обновление

    +

    Если вы обновляете сборку, сначала удалите папки update и modloader (если есть) и удалите все .asi файлы (но не трогайте остальные) из папки с игрой.

    +
    +
    +
    +
    +
    +Игра не запускается | Игра странно себя ведет | Игра случайно вылетает +

    Просмотрите исправление проблем.

    +

    Отключайте моды по одному, чтобы найти виновника, удаляя папки/файлы update или файлы .asi.

    +

    Сообщите о проблеме на Discord сервере.

    +
    +
    +

    Навигация#

    +
    + +
    +
    +

    Список модов#

    +

    Общие моды#

    +

    Все моды из следующего списка присутствуют в обоих архивах с идентичными версиями:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    МодРазработчик(и)Детали
    Radio Downgrader31.08.2024Tomasak и другиеПростой даунгрейдер радио.
    Использованный аддон: Restored original TBoGT Menu Vocals.
    FusionFix3.4.0ThirteenAG, Fusion Team и другиеСамый главный мод: он включает в себя кучу исправлений, улучшений, новые настройки а также выступает в качестве модлоадера.
    Некоторые фиксы не присутствуют в версии для 1.0.8.0.
    Various Fixes2.0.2Attramet и другиеКрупный сборник фиксов разного характера - в основном, кривые текстуры карты.
    Trilogy Characters Fixes05.07.2024-customTheYoshiPunch, (Japan) GTA Love и другиеИсправляет несоответствие персонажей в основной GTA IV и EFLC.
    Console Visuals1.7nastyyaboi и другиеСборник портированных ассетов с консольной версии.
    Включенные аддоны: Console Fences, Console Animations, Console Peds. Просмотрите дополнительные моды для других аддонов.
    Improved Animations Pack28.06.2024B Dawg и C1aude_IIIИсправляет разные проблемы с анимациями оружий.
    Restored Pedestrians05.10.2024AttrametВосстанавливает пешеходов, которые либо не использовались, либо присутствовали только в бетах.
    Various Pedestrians Actions04.11.2023AttrametДобавляет, исправляет и завершает недоделанные действия для пешеходов.
    Restored Trees Position31.10.2023AttrametВосстанавливает деревья, которые присутствовали в бета-версиях, но были вырезаны в финальном релизе - либо случайно, либо из-за проблем с производительностью.
    More Visible Interiors29.02.2024AttrametДелает интерьер более заметными снаружи, хотя имеет недостаток в виде появления интерьеров на глазах.
    Higher Resolution Miscellaneous Pack1.1Ash_735Улучшает качество текстур мелких объектов.
    Project Glass18.10.2024DayLДобавляет cubemap-отражения туда, где раньше было тупо прозрачное стекло.
    Vehicle Pack2.1Ash_735Улучшает качество текстур всего транспорта в игре. Некоторые текстуры апскейлнуты, некоторые взяты из Max Payne 3 и GTA V.
    Fidelity Popcycle14.02.2024ChunkЗамена popcycle в духе оригинала который делает жизнь в городе более разнообразным и реалистичным.
    Bullet Penetration - Minimal EditionInternet RobПозволяет пулям пробивать стекла так, как с лобовыми стеклами.
    Project2DFX28.06.2024 (1.0.8.0)ThirteenAGУлучшает огни в далеке ночью.
    Можно отключить, удалив файлы IVLodLights.
    Xbox Rain Droplets10.10.2024ThirteenAGДобавляет на экран красивые капельки воды.
    Можно отключить, удалив файлы GTAIV.XboxRainDroplets.
    Dodgy Doc - Higher QualitydonnitsУлучшает текстуры мутного доктора в миссии "Имейте сердце".
    High Quality PigeonsSupreme Dear LeaderУлучшает модель и качество текстуры голубей.
    Resized Blista CompactThundersmackerУменьшение размера Blista Compact для соответствия реальному аналогу (Honda CR-X).
    Player Outfit Texture FixesB DawgИсправляет зеленоватые текстуры на некоторых моделях персонажей.
    Fixed Suit Display in Perseus_ysИсправление некорректного костюма в Perseus, т.к. вы покупаете костюм, отличный от отображаемого.
    IV Bikers in Episodes voice sets fixB DawgИсправление голосовых линий байкеров из IV в EFLC.
    Pistol Iron Sight FixGillian (я)Исправляет недочет в моделе пистолета где прицел не имеет вообще никакого смысла.
    Liberty Ferry Terminal - Waiting Room Sign FixdonnitsИсправление сломанной UV-карты на текстуре знака "Waiting Room".
    Sugar Chomps - Separate SignsdonnitsРедактирует UV-карту знака, чтобы включить в его неиспользуемую текстуру.
    Luis' Helmet Reflections Fix6135Исправляет поблекшие отражения на шлеме модели игрока в TBoGT.
    Luis' Bag Texture Fix6135Добавляет недостающие карты нормалей и спекуляций и улучшает качество текстур на сумке модели игрока в TBoGT.
    Johnny's Shoe Texture Fix6135Добавляет недостающие карты нормалей и спекуляций в обувь модели игрока в TLAD.
    Replaced Esperanto by Roman's Taxi in Cab DepotAttrametЗаменяет Esperanto возле оффиса Романа на его же такси.
    Fixed Pedestrian ReactionsAttrametОтключает странные реакции пешеходов которые не имеют смысла.
    Reduced Traffic Screech (Audio Tweak)GladiTekИзменяет уровень шума транспорта в Algonquinе, чтобы он соответствовал реальному уровню, который можно обычно услышать на Times Square.
    Menu Art Fix_ysИсправляет фоны с низким разрешением в меню EFLC.
    GTA V's fxdecalsdonnitsИзменяет некоторые декали на точно такие же, но в высшем разрешении, из GTA V.
    GTA V-like visualSettings.datMagicAl6244225Изменяет некоторые значения файла visualSettings.dat, чтобы сделать его более похожим на GTA V. Увеличение спекулярности дождя было исключено.
    Higher Res Radio Logos In-Game и Higher Res Radio Logos MenuAsh_735Повышает качество иконок радио на интерфейсе, так как они сильно не соответствуют другим частям интерфейса.
    +

    Раздельные моды#

    +

    Моды или их конкретные версии в следующем списке присутствуют только в одном из архивов из-за несовместимости с другой версией.

    +
    +
    +
    + + + + + + + + + + + + + + + +
    МодРазработчик(и)Детали
    Console Select Menu_AGЗаменяет селектор эпизода на более похожий к консольному, который, по моему мнению, выглядит лучше.
    Можно отключить, удалив файлы ConsoleSelectMenuIV из папки plugins.
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    МодРазработчик(и)Детали
    Даунгрейд до 1.0.8.0Gillian (файлы пренадлежат Rockstar)A simple downgrade to 1.0.8.0 without replacing too many files.
    ZolikaPatch IV7.65Zolika1351Добавляет мелкие исправления исключительно для 1.0.8.0.
    Liberty Tweaks1.5catsmackaroo, ItsClockAndre и другиеМод, нацелений на улучшение различных аспектов игры и ее общий Quality of Life. Много настроек.
    Позволяет быстро сохраняться на F9 и имеет множество геймплейных фич - если вам не нравятся настройки по умолчанию, вы можете изенить все на свой вкус в файле LibertyTweaks.ini который находится в IVSDKDotNet\scripts\
    Project Thunder2.2ItsClockAndreУлучшает грозу, с улучшениями к освещению и атмосфере. Много настроек.
    VAmbience1.0ItsClockAndreДобавляет в игру фоновый шум, например, езда автомобилей в дали или стрельба, как в GTA V. Много настроек.
    Steam AchievementsZolika1351Позволяет получать достижения в Steam на старых патчах.
    +
    +
    +
    +
    +

    Дополнительные моды#

    +

    Эти моды не включены по умолчанию, но их легко установить поверх архива. Любые другие моды, не упомянутые в этом списке, не поддерживаются.

    +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    МодРазработчик(и)Детали
    Аддоны Console Visualscatsmackaroo и другиеСборник портированных ассетов с консольной версии.
    Установка: Распакуйте желаемые части в папку с игрой.
    Чит на снегThirteenAG & Fusion TeamДля включения снега, введите 7665550100 на телефоне. Для отключения, введите 2665550100.
    Аддоны для "снежного режима"Jumbo0, gr8man, Jantsu92, Alisa Bellucci, Flash, Alexkander_, Straysify, gdanbo, ThirteenAG и GillianЧасть Enhanced Snow Mod, Snow Mod Reaction Fix, Realistic Snow Sounds и Project2DFX собраны в ввиде аддонов для "снежного режима" выше.
    Инструкции по установке находятся в Readme.txt внутри архива.
    SolitudeChunkМод timecyc, построенный на ванильном визуале.
    Установка: Найдите папку Fusion overloader install в архиве и распакуйте папку update из-под нее в папку с игрой. Примените рекомендуемые настройки.
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    МодРазработчик(и)Детали
    Официальный руссификатор (текст)1C SoftClubУстановка: Распакуйте папку update в папку с игрой, в Settings - Display - Language смените язык на Русский.
    Настройки Liberty Tweakscatsmackaroo, ItsClockAndre и другиеВ этом моде множество настроек, которые сильно изменяют геймплей - если вам такое не нравится, вы можете изменить настройки под свой вкус в LibertyTweaks.ini который находится в папке IVSDKDotNet\scripts\.
    Аддоны Console Visualscatsmackaroo и другиеСборник портированных ассетов с консольной версии.
    Установка: Распакуйте желаемые части в папку с игрой.
    Пресеты от коммьюнитиЛюди с моего Discord сервераПресеты от коммьюнит для Liberty Tweaks и Project Thunder, основанные на популярном голосе людей из Discord сервера.
    Чит на снегThirteenAG & Fusion TeamДля включения снега, введите 7665550100 на телефоне. Для отключения, введите 2665550100.
    Аддоны для "снежного режима"Jumbo0, gr8man, Jantsu92, Alisa Bellucci, Flash, Alexkander_, Straysify, gdanbo, ThirteenAG и GillianЧасть Enhanced Snow Mod, Snow Mod Reaction Fix, Realistic Snow Sounds и Project2DFX собраны в ввиде аддонов для "снежного режима" выше.
    Инструкции по установке находятся в Readme.txt внутри архива.
    SolitudeChunkМод timecyc, построенный на ванильном визуале.
    Установка: Найдите папку Fusion overloader install в архиве и распакуйте папку update из-под нее в папку с игрой. Примените рекомендуемые настройки.
    IV-PresenceItsClockAndreДобавляет Discord Rich Presence (кастомный статус активности).
    Installation: Откройте архив, в нем откройте папку For GTA IV 1070 and 1080 и распакуйте файлы discord-rpc.dll и IVPresence.asi в папку с игрой. Если возникли проблемы, также распакуйте IVPresenceDependenciesChecker.exe с его конфигом, запустите его и вы увидите, каких зависимостей вам не хватает.
    +
    +
    +
    +
    +

    Список изменений#

    +
    +
    +
    +
    +

    Последняя версия

    +
      +
    • 13.11.2024:
        +
      • Обновлены FusionFix, Various Fixes, Restored Pedestrians, Project Glass, Xbox Rain Droplets.
      • +
      • Добавлен GTA V-like visualSettings.dat.
      • +
      • Удален HD HUD из-за создания крашей.
      • +
      • Удален Console Clothing ибо я не могу разобраться с приоритетом.
      • +
      +
    • +
    +
    +
    +Старые изменения +
      +
    • 25.09.2024:
        +
      • Обновлены FusionFix, Various Fixes.
      • +
      • Исправлены сломанные елементы HUDа.
      • +
      • Исправлены волосы Нико.
      • +
      • Вручную переделан прицел пистолета.
      • +
      +
    • +
    • 17.09.2024:
        +
      • Обновлены FusionFix, Radio Downgrader, Restored Pedestrians.
      • +
      • Теперь реально добавил Various Pedestrian Actions, лол.
      • +
      • Вернул Improved Animations Pack.
      • +
      • Удален Console Weapon Animations.
      • +
      • Временно удален UHD Vanilla Map and Radar пока не будут исправлены краши.
      • +
      • Исправлен краш в миссии Марта, благодати полная (Marta Full of Grace) (TLAD).
      • +
      • Исправлены сломанные модели копов в EFLC.
      • +
      +
    • +
    • 07.09.2024:
        +
      • Обновлен FusionFix.
      • +
      • Добавлен Bullet Penetration - Minimal Edition.
      • +
      • Исправлен вылет в TLAD, который случался когда проезжаешь мимо таксопарка Романа.
      • +
      • Исправлена консольная одежда.
      • +
      +
    • +
    • 01.09.2024:
        +
      • Обновлены FusionFix, Various Fixes (должно исправить некоторые баги).
      • +
      • Временно удален hud.txd из-за крашей. Странно.
      • +
      +
    • +
    • 24.08.2024:
        +
      • Обновлен FusionFix.
      • +
      • Исправлено пропавшее тело Мэллори в миссии "Ирландское счастье".
      • +
      • Добавлена геймплейная и проповая модель помпового дробовика из TLAD в IV и TBoGT.
      • +
      +
    • +
    • 23.08.2024:
        +
      • Обновлен FusionFix.
      • +
      • Добавлены HD HUD and Reticle, фиксы для cargrp от RecklessGlue540.
      • +
      • Удалены новые треки на радио, Fixed Carwash Price Text (создавал краши).
      • +
      +
    • +
    • 15.08.2024:
        +
      • Обновлены Radio Downgrader, FusionFix, Various Fixes (вручную собран из файлов репозитория), Console Visuals, Characters Fixes, Project Glass, Vehicle Pack, Xbox Rain Droplets, Project2DFX и Setup Utility.
      • +
      • Добавлены Fidelity Popcycle, UHD Vanilla Map and Radar, Replaced Esperanto by Roman's Taxi in Cab Depot, Fixed Pedestrian Reactions, Fixed Carwash Price Text, donnits' GTA V fxdecals.
      • +
      • Удалены Improved Animations Pack, IV Fixes and Improvements, GTA Online QUB3D Background и Fixed LCPD Buffalo.
      • +
      • Папка update полностью перепакована во избежание лишних файлов.
      • +
      +
    • +
    • 09.03.2024:
        +
      • Обновлены More Visible Interiors, Xbox Rain Droplets.
      • +
      • Наконец-то исправлен Three Leaf Clover.
      • +
      +
    • +
    • 07.03.2024:
        +
      • Обновлены FusionFix, Console Visuals, Higher Resolution Misc Pack.
      • +
      +
    • +
    • 28.01.2024:
        +
      • Обновлен FusionFix.
      • +
      +
    • +
    • 14.01.2024:
        +
      • Обновлен FusionFix.
      • +
      +
    • +
    • 13.01.2024:
        +
      • Обновлен FusionFix.
      • +
      • Исправлены проблемы с анимациями оружия.
      • +
      • Исправлены сломанные шляпы в IV.
      • +
      • Удалено больше дупликатов из Minor Mods.
      • +
      +
    • +
    • 04.01.2024:
        +
      • Обновлены Radio Downgrader, FusionFix, Project2DFX, Xbox Rain Droplets, Various Fixes, More Visible Interiors, Restored Trees Position.
      • +
      • Перепакованы большинство модов - должно исправить больше проблем и больше несотвествий.
      • +
      • Удален Improved Weapon Spec в пользу Higher Resolution Miscellaneous Pack.
      • +
      • Добавлен Restored Pedestrians, Various Pedestrians Actions.
      • +
      +
    • +
    • 18.12.2023:
        +
      • Обновлен FusionFix.
      • +
      • Удален Vanilla Road Texture Enhancement от DayL.
      • +
      • Удален Xbox One/Series S+X Buttons (в пользу FusionFix).
      • +
      +
    • +
    • 12.12.2023 (хотфикс):
        +
      • Исправлен краш в TBoGT при загрузке.
          +
        • Ручной фикс: добавьте DISABLE_FILE common:/data/newchar.ide в /update/TBoGT/content.dat
        • +
        +
      • +
      +
    • +
    • 10.12.2023:
        +
      • Обновлен FusionFix.
      • +
      • Исправлен пропавший NPC в миссии Three Leaf Clover.
      • +
      +
    • +
    • 27.11.2023:
        +
      • Обновлены FusionFix, Various Fixes и Console Visuals.
      • +
      +
    • +
    • 01.11.2023:
        +
      • Обновлен FusionFix.
      • +
      • Добавлен Higher Resolution Miscellaneous Pack.
      • +
      • Удалены несколько аддонов Console Visuals перемещены в дополнительные моды.
      • +
      +
    • +
    • 21.09.2023:
        +
      • Обновлен Various Fixes
      • +
      • Setup Utility заменен на переделанный.
      • +
      +
    • +
    • 15.09.2023:
        +
      • Обновлены FusionFix, Radio Downgrader (очень урезает размер архива), Setup Utility.
      • +
      • Добавлен IV Bikers in Episodes voice sets fix.
      • +
      +
    • +
    • 08.09.2023:
        +
      • Обновлен Various Fixes
      • +
      • Добавлены пропавшие файлы которые пропали из неизвестных причин.
      • +
      +
    • +
    • 07.09.2023:
        +
      • Обновлен FusionFix.
      • +
      • Добавлены Reduced Traffic Screech и High Quality Pigeons.
      • +
      +
    • +
    • 06.09.2023:
        +
      • Обновлены FusionFix - с ним, Shader Fixes.
      • +
      • Включен Setup Utility.
      • +
      • Удален Traffic Cops in the Toolbooths - FusionFix теперь включает его.
      • +
      • Удален DXVK, вы теперь можете автоматически установить его используя GTAIVSetupUtility.exe.
      • +
      +
    • +
    • 28.08.2023:
        +
      • Исправлен Dodgy Doc HQ мод - теперь используется.
      • +
      • Добавлен dxvk.gplAsyncCache = true к dxvk.conf.
      • +
      +
    • +
    • 26.08.2023:
        +
      • Обновлен Project Glass.
      • +
      • Добавлены фиксы от коммьюнити к Various Fixes.
      • +
      • Возвращены более новые файлы от Shader Fixes files, так как я их случайно заменил в предудыщем обновлении.
      • +
      +
    • +
    • 22.08.2023:
        +
      • Обновлены FusionFix, Xbox One/Series S+X Buttons.
      • +
      • Добавлен Menu Art Fix.
      • +
      +
    • +
    • 18.08.2023:
        +
      • Обновлен Various Fixesfiles.
      • +
      • Исправлена проблема с моделью клабхауса Angels of Death в TLAD.
      • +
      +
    • +
    • 17.08.2023:
        +
      • Обновлен Project Glass.
      • +
      • Добавлен More Visible Interiors.
      • +
      • Слегка изменены конфиги.
      • +
      +
    • +
    • 12.08.2023:
        +
      • Исправлены известные краши и софтлоки в TLAD и TBoGT.
      • +
      • Ввостановлена фоновая музыка в меню TBoGT.
      • +
      +
    • +
    • 11.08.2023:
        +
      • Обновлен Shader Fixes (вручную собран).
      • +
      • Слегка изменен бюджет транспорта.
      • +
      • Изменен файл волос Нико дабы исправить визуальные проблемы.
      • +
      +
    • +
    • 10.08.2023:
        +
      • Обновлен Project Glass.
      • +
      +
    • +
    • 07.08.2023:
        +
      • Обновлен FusionFix.
      • +
      +
    • +
    • 03.08.2023:
        +
      • Добавлен Restored Trees Position.
      • +
      +
    • +
    • 02.08.2023:
        +
      • Обновлены FusionFix, Trilogy Characters Fixes, Console Visuals.
      • +
      +
    • +
    • 25.07.2023:
        +
      • Обновлен Fix Collection.
      • +
      • Маленькие изменения в .ini.
      • +
      +
    • +
    • 23.07.2023:
        +
      • Добавлены Road Texture Enhancement, Project Glass(+lighthing for bus stops), Dodgy Doc - Higher Quality, Rescaled Blista Compact, Player Outfit Texture Fixes, LCPD Buffalo Fix, Luis' Helmet Reflections Fix, Luis' Bag Texture Fix, Johnny's Shoe Texture Fix, Fixed Suit Display и взято паро фиксов из Responsive Plus.
      • +
      • Исправлен приоритет для модов.
      • +
      • Перепакованы моды чтобы уменьшить количество папок.
      • +
      +
    • +
    • 20.07.2023:
        +
      • Обновлен FusionFix.
      • +
      • Изменен dxvk на dxvk-gplasync.
      • +
      +
    • +
    • 19.07.2023:
        +
      • Обновлен FusionFix и Shader Fixes.
      • +
      • Добавлены Radio Downgrader, GTA Online QUB3D Background, Traffic Cops in the Toolbooths, Xbox Rain Droplets, Fixed Pistol Sights.
      • +
      • Добавлен Dualsense buttons to optionals.
      • +
      • Удалены Pedestrians with Unused Clothing Restored и Varied Alderney State Trooper Ped из-за возможных несовместимостей.
      • +
      +
    • +
    • 13.07.2023:
        +
      • Исправлены пропадающие ассеты в офисе Романа.
      • +
      • Изменен лимит FPS в катсценах на 32.
      • +
      +
    • +
    • 12.07.2023:
        +
      • Добавлены (новый) IV Fixes и Improvements, Liberty Ferry Terminal - Waiting Room Sign Fix, Sugar Chomps - Separate Signs, Pedestrians with Unused Clothes Restored, Varied Alderney State Trooper Ped, Higher Res Radio Logos, Improved Weapon Spec.
      • +
      • Удален TBoGT Texture Quality Fix т.к. Various Fixes уже содержит этот фикс.
      • +
      +
    • +
    • 10.07.2023:
        +
      • Изменен файл волос Нико, теперь нет визуальных проблем.
      • +
      +
    • +
    • 09.07.2023:
        +
      • Удален IV Fixes и Improvements.
      • +
      • Добавлен Various Fixes.
      • +
      +
    • +
    • 08.07.2023:
        +
      • Обновлены FusionFix, Shader Fixes.
      • +
      • Изменен конфиг DXVK.
      • +
      • Удален dxgi.dll.
      • +
      • Некоторые моды перепакованы.
      • +
      +
    • +
    • 02.07.2023:
        +
      • Перепакованы моды в более удобный формат.
      • +
      +
    • +
    • 01.07.2023:
        +
      • Обновлен Shader Fixes.
      • +
      • Перепакованые некоторые моды для Fusion Overloader.
      • +
      +
    • +
    • 30.06.2023:
        +
      • Обновлены моды.
      • +
      +
    • +
    • 27.06.2023:
        +
      • Обновлены моды.
      • +
      +
    • +
    • 26.06.2023:
        +
      • Архив создан.
      • +
      +
    • +
    +
    +
    +
    +
    +

    Последняя версия

    +
      +
    • 13.11.2024:
        +
      • Обновлены FusionFix, Various Fixes, Restored Pedestrians, Project Glass, Xbox Rain Droplets.
      • +
      • Добавлен GTA V-like visualSettings.dat.
      • +
      • Удален HD HUD из-за создания крашей.
      • +
      • Удален Console Clothing ибо я не могу разобраться с приоритетом.
      • +
      +
    • +
    +
    +
    +Старые изменения +
      +
    • 25.09.2024:
        +
      • Обновлены FusionFix, Various Fixes, Liberty Tweaks.
      • +
      • Исправлены сломанные елементы HUDа.
      • +
      • Исправлены волосы Нико.
      • +
      • Вручную переделан прицел пистолета.
      • +
      +
    • +
    • 17.09.2024:
        +
      • Обновлены FusionFix, Radio Downgrader, Restored Pedestrians, Liberty Tweaks.
      • +
      • Теперь реально добавил Various Pedestrian Actions, лол.
      • +
      • Вернул Improved Animations Pack.
      • +
      • Удален Console Weapon Animations.
      • +
      • Временно удален UHD Vanilla Map and Radar пока не будут исправлены краши.
      • +
      • Исправлен краш в миссии Марта, благодати полная (Marta Full of Grace) (TLAD).
      • +
      • Исправлены сломанные модели копов в EFLC.
      • +
      +
    • +
    • 07.09.2024:
        +
      • Обновлены FusionFix, Liberty Tweaks.
      • +
      • Добавлен Bullet Penetration - Minimal Edition.
      • +
      • Исправлен вылет в TLAD, который случался когда проезжаешь мимо таксопарка Романа.
      • +
      • Исправлена консольная одежда.
      • +
      +
    • +
    • 01.09.2024:
        +
      • Обновлены FusionFix, Various Fixes (должно исправить некоторые баги).
      • +
      • Временно удален hud.txd из-за крашей. Странно.
      • +
      +
    • +
    • 24.08.2024:
        +
      • Обновлен FusionFix.
      • +
      • Исправлено пропавшее тело Мэллори в миссии "Ирландское счастье".
      • +
      • Добавлена геймплейная и проповая модель помпового дробовика из TLAD в IV и TBoGT.
      • +
      +
    • +
    • 23.08.2024:
        +
      • Обновлены FusionFix, Liberty Tweaks.
      • +
      • Добавлены HD HUD and Reticle, фиксы для cargrp от RecklessGlue540.
      • +
      • Удалены новые треки на радио, Fixed Carwash Price Text (создавал краши).
      • +
      +
    • +
    • 15.08.2024:
        +
      • Обновлены Radio Downgrader, FusionFix, Various Fixes (вручную собран из файлов репозитория), Console Visuals, Characters Fixes, Project Glass, Vehicle Pack, Liberty Tweaks, Project Thunder и Setup Utility.
      • +
      • Добавлены Fidelity Popcycle, UHD Vanilla Map and Radar, Replaced Esperanto by Roman's Taxi in Cab Depot, Fixed Pedestrian Reactions, Fixed Carwash Price Text, donnits' GTA V fxdecals.
      • +
      • Удалены Improved Animations Pack, IV Fixes and Improvements, GTA Online QUB3D Background и Fixed LCPD Buffalo.
      • +
      • Папка update полностью перепакована во избежание лишних файлов.
      • +
      +
    • +
    • 21.05.2024:
        +
      • Перезалив архива на Mediafire ибо гугл заебет.
      • +
      • Обновлены IVSDKDotNet и Liberty Tweaks (также немного перенастроены).
      • +
      +
    • +
    • 09.03.2024:
        +
      • Обновлены More Visible Interiors, Liberty Tweaks (исправлен краш при использовании транспорта).
      • +
      • Удален Project2DFX из-за поломки дальних огней на 1.0.8.0.
      • +
      • Наконец-то исправлен Three Leaf Clover.
      • +
      • Исправлена проблема невозможности запуска игры.
      • +
      +
    • +
    • 07.03.2024:
        +
      • Обновлены FusionFix, Liberty Tweaks, Console Visuals, Higher Resolution Misc Pack.
      • +
      +
    • +
    • 28.01.2024:
        +
      • Обновлен FusionFix.
      • +
      +
    • +
    • 14.01.2024:
        +
      • Обновлен FusionFix.
      • +
      +
    • +
    • 13.01.2024:
        +
      • Обновлен FusionFix.
      • +
      • Исправлены проблемы с анимациями оружия.
      • +
      • Исправлены сломанные шляпы в IV.
      • +
      • Удалено больше дупликатов из Minor Mods.
      • +
      • Отключены проблематичные настройки в ZolikaPatch.
      • +
      +
    • +
    • 04.01.2024:
        +
      • Обновлены Radio Downgrader, FusionFix, Various Fixes, More Visible Interiors, Restored Trees Position, Restored Pedestrians, Various Pedestrians Actions.
      • +
      • Перепакованы большинство модов - должно исправить больше проблем и больше несотвествий.
      • +
      • Убран IV Tweaker в пользу Fusion Overloader - одним меньше инжектором, лучше стабильность.
      • +
      • Удален Improved Weapon Spec в пользу Higher Resolution Miscellaneous Pack.
      • +
      +
    • +
    • 22.12.2023:
        +
      • Обновлены IVSDK .NET, Clonk's Coding Library и Liberty Tweaks. Должно улучшить стабильность и исправить некоторые проблемы с Liberty Tweaks.
      • +
      +
    • +
    • 18.12.2023:
        +
      • Обновлен FusionFix.
      • +
      • Отключен Vanilla Road Texture Enhancement от DayL.
      • +
      • Удалены Dualshock, Dualsense и Xbox One/Series S+X Buttons в пользу FusionFix.
      • +
      +
    • +
    • 12.12.2023:
        +
      • Повторная попытка исправить Three Leaf Clover issues. Не хотфикс, т.к. не хватало файлов.
      • +
      +
    • +
    • 10.12.2023:
        +
      • Обновлен FusionFix.
      • +
      • Исправлен пропавший NPC в миссии Three Leaf Clover.
      • +
      +
    • +
    • 27.11.2023:
        +
      • Обновлены FusionFix, Various Fixes и Console Visuals.
      • +
      +
    • +
    • 03.11.2023:
        +
      • Исправлена проблема с даунгрейдом.
      • +
      • Исправлена неправильное название папки.
      • +
      • Отключены несовместимые и ненужные настройки в ZolikaPatch.ini.
      • +
      +
    • +
    • 01.11.2023:
        +
      • Обновлен FusionFix.
      • +
      • Добавлен Higher Resolution Miscellaneous Pack.
      • +
      • Удалены некоторые аддоны Console Visuals, перемещены в дополнительные моды.
      • +
      • Удален Extra Options из-за несовместимостью с FusionFix 2.0.
      • +
      +
    • +
    • 04.10.2023 (hotfix):
        +
      • Исправлена проблема с даунгрейдингом которая ломала настройки.
      • +
      +
    • +
    • 27.09.2023:
        +
      • Обновлены Setup Utility, ZolikaPatch, IV Tweaker, Liberty Tweaks.
      • +
      • Добавлен Extra Options.
      • +
      +
    • +
    • 21.09.2023:
        +
      • Обновлен Various Fixes.
      • +
      • Заменен Setup Utility на новый.
      • +
      +
    • +
    • 16.09.2023 (hotfix):
        +
      • Удален IVMenuAPI.asi который появился случайно.
      • +
      +
    • +
    • 15.09.2023:
        +
      • Обновлены FusionFix, ZolikaPatch, IV Tweaker, IV Fixes and Improvements, Liberty Tweaks, Radio Downgrader (очень уменьшает размер архива), Setup Utility.
      • +
      • Добавлен IV Bikers in Episodes voice sets fix.
      • +
      +
    • +
    • 08.09.2023:
        +
      • Обновлен Various Fixes (должно исправить поврежденные сохранения).
      • +
      • Добавлен VAmbience.
      • +
      +
    • +
    • 07.09.2023:
        +
      • Обновлен FusionFix.
      • +
      • Добавлены Reduced Traffic Screech и High Quality Pigeons.
      • +
      +
    • +
    • 06.09.2023:
        +
      • Обновлены ZolikaPatch, FusionFix.
      • +
      • Включен Setup Utility.
      • +
      • Удален Traffic Cops in the Toolbooths - FusionFix теперь включает его.
      • +
      • Удалены DXVK и commandline.txt, вы теперь можете установить их автоматически используя GTAIVSetupUtility.exe.
      • +
      +
    • +
    • 28.08.2023:
        +
      • Исправлена бесконечная загрузка на миссии Three Leaf Clover (нужно решение получше - на данный момент, в катсцене отсутсвует одна модель NPC из-за этого).
      • +
      • Исправлен мод Dodgy Doc HQ что-бы он по настоящему использовался.
      • +
      • Добавлен dxvk.gplAsyncCache = true в dxvk.conf.
      • +
      • Удален Better Wardrobes.
      • +
      +
    • +
    • 26.08.2023:
        +
      • Обновлены FusionFix, Project Glass, Xbox One/Series S+X Buttons.
      • +
      • Добавлен Menu Art Fix.
      • +
      • Перепакован Various Fixes, а также добавлены фиксы от коммьюнити.
      • +
      +
    • +
    • 18.08.2023:
        +
      • Обновлен Various Fixes
      • +
      • Исправлена проблема с моделью клабхауса Angels of Death в TLAD.
      • +
      +
    • +
    • 17.08.2023:
        +
      • Обновлен Project Glass.
      • +
      • Добавлен More Visible Interiors.
      • +
      • Немного изменены конфиги.
      • +
      +
    • +
    • 12.08.2023:
        +
      • Исправлен известные краши и софтлоки в TLAD и TBoGT.
      • +
      • Ввостановлена фоновая музыка в меню TBoGT.
      • +
      +
    • +
    • 11.08.2023:
        +
      • Обновлены FusionFix, Shader Fixes (вручную собран).
      • +
      • Исправлены краши (IV Tweaker из обновленного даунгрейдера не был обновленным).
      • +
      • Слегка изменен бюджет транспорта.
      • +
      • Изменен файл волос Нико для исправления визуальных проблем.
      • +
      +
    • +
    • 10.08.2023:
        +
      • Обновлены даунгрейдер, ZolikaPatch и Project Glass.
      • +
      +
    • +
    • 07.08.2023:
        +
      • Обновлен FusionFix.
      • +
      +
    • +
    • 03.08.2023:
        +
      • Обновлен Console Visuals.
      • +
      • Добавлен Restored Trees Position.
      • +
      • Перемещены некоторые файлы во избежание несовместимостей.
      • +
      +
    • +
    • 02.08.2023:
        +
      • Обновлены FusionFix, Trilogy Characters Fixes - также слегка перепакованы.
      • +
      +
    • +
    • 25.07.2023:
        +
      • Обновлен Fix Collection.
      • +
      • Добавлен Project Thunder, Restored Pedestrians, Various Pedestrian Actions.
      • +
      • Мелкие изменения .ini.
      • +
      +
    • +
    • 24.07.2023:
        +
      • Перепакованы моды для уменьшения количества папок.
      • +
      • Добавлены Road Texture Enhancement, Project Glass(+lighthing for bus stops), Dodgy Doc - Higher Quality, Rescaled Blista Compact, Player Outfit Texture Fixes, LCPD Buffalo Fix, Luis' Helmet Reflections Fix, Luis' Bag Texture Fix, Johnny's Shoe Texture Fix, Fixed Suit Display и взято пару фиксов из Responsive Plus (далее: Fix Collection).
      • +
      +
    • +
    • 20.07.2023:
        +
      • Обновлен FusionFix.
      • +
      • Изменен dxvk на dxvk-gplasync.
      • +
      +
    • +
    • 19.07.2023:
        +
      • Обновлены даунгрейдер, ZolikaPatch, IV Tweaker, FusionFix, Shader Fixes.
      • +
      • Добавлен Radio Downgrader, GTA Online QUB3D Background, Better Wardrobes, Traffic Cops in the Toolbooths, Xbox Rain Droplets, Fixed Pistol Sights.
      • +
      • Добавлены кнопки для Dualsense в дополнительные моды.
      • +
      • Удалены Pedestrians with Unused Clothing Restored и Varied Alderney State Trooper Ped из-за возможный несовместимостей.
      • +
      +
    • +
    • 15.07.2023:
        +
      • Добавлен Liberty Tweaks.
      • +
      +
    • +
    • 13.07.2023:
        +
      • Исправлены пропадающие ассеты в офисе Романа.
      • +
      • Изменен лимит FPS в катсценах на 32.
      • +
      +
    • +
    • 12.07.2023:
        +
      • Обновлен ZolikaPatch.
      • +
      • Добавлены (новый) IV Fixes and Improvements, Liberty Ferry Terminal - Waiting Room Sign Fix, Sugar Chomps - Separate Signs, Pedestrians with Unused Clothes Restored, Varied Alderney State Trooper Ped, Higher Res Radio Logos, Improved Weapon Spec.
      • +
      • Various Fixes перемещен в папку update из-за возможных несовместимостей.
      • +
      • Удален TBoGT Texture Quality Fix т.к. Various Fixes уже содержит этот фикс.
      • +
      • Удален TBoGT Vehicle Fix из modloader т.к. FusionFix уже содержит этот фикс.
      • +
      • Удален IVPresence.
      • +
      +
    • +
    • 11.07.2023:
        +
      • Исправлена проблема с крашем основной игры.
      • +
      +
    • +
    • 10.07.2023:
        +
      • Обновлен даунгрейдер.
      • +
      • Добавлен порт FusionFix 1.60 от Zolika.
      • +
      • Исправлен краш в TLAD, изменен файл волос Нико, теперь не имеет визуальных проблем.
      • +
      +
    • +
    • 09.07.2023:
        +
      • Изменен даунгрейдер - теперь входит в архив.
      • +
      • Удален IV Fixes and Improvements.
      • +
      • Добавлен Various Fixes.
      • +
      • Добавлены кнопки Dualshock в дополнительные моды.
      • +
      +
    • +
    • 08.07.2023:
        +
      • Обновлен Shader Fixes.
      • +
      • Удален Simple Traffic Loader.
      • +
      • Моды полностью перепакованы для использования модлоадера.
      • +
      +
    • +
    • 01.07.2023:
        +
      • Обновлен Shader Fixes.
      • +
      • Перепакованы некоторые моды.
      • +
      +
    • +
    • 30.06.2023:
        +
      • Обновлен Shader Fixes.
      • +
      +
    • +
    • 26.06.2023:
        +
      • Архив создан.
      • +
      +
    • +
    +
    +
    +
    +
    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/enhancements/index.html b/ru/enhancements/index.html new file mode 100644 index 00000000..c4921382 --- /dev/null +++ b/ru/enhancements/index.html @@ -0,0 +1,1838 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Recommended Enhancements - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Recommended Enhancements#

    +

    Following mods are not essential to playing the game, but they're highly recommended to have a good experience or a good enough base for your own modpack.

    +
    +

    Ultimate ASI Loader and FusionFix are required for most mods. This page will assume you have both installed and will not remind you of it.

    +

    Keep in mind there is a recommended load order at the bottom.

    +
    +
    +

    Console Visuals#

    +

    This project ports select console visuals to the PC version.

    +

    Installation

    + +
      +
    1. Go to the latest release page.
    2. +
    3. Download the archives of parts you wish to install.
    4. +
    5. Extract the update folder from each archive into the game folder.
    6. +
    +
    +

    Trilogy Characters Fixes#

    +

    This project aims to fix the inconsistency of characters between base GTA IV and EFLC. You can see the changelog on the GTAForums page.

    +

    Installation

    + +
      +
    1. Download this archive.
    2. +
    3. Extract the update folder from the archive into the game folder.
    4. +
    5. Extract the other folders into any empty folder.
    6. +
    7. Copy the playerped.rpf archive from pc/models/cdimages/ to update/pc/models/cdimages/.
    8. +
    9. Copy the playerped.rpf archive from TBoGT/pc/models/cdimages/ to update/TBoGT/pc/models/cdimages/.
    10. +
    11. Copy the playerped.rpf archive from TLAD/pc/models/cdimages/ to update/TLAD/pc/models/cdimages/.
        +
      • Skip the above 3 steps if you had already done it earlier with other mods.
      • +
      +
    12. +
    13. Open the copied archives with OpenIV.
    14. +
    15. Copy the files from IV - playerped.rpf to the archive you copied in step 4.
    16. +
    17. Copy the files from TBoGT - playerped.rpf to the archive you copied in step 5.
    18. +
    19. Copy the files from TLAD - playerped.rpf to the archive you copied in step 6.
    20. +
    +
    +

    Project2DFX#

    +

    This mod improves distant lights at night.

    +

    Installation

    + +
    +
    +
    +
      +
    1. Go to the release page.
    2. +
    3. Download IV.Project2DFX.zip.
    4. +
    5. Extract the archive into the plugins folder.
        +
      • Edit IVLodLights.ini if you don't like the default settings.
      • +
      +
    6. +
    +
    +
    +
      +
    1. Download the release page.
    2. +
    3. Download IV.Project2DFX-PreCE.zip.
    4. +
    5. Extract the archive into the plugins folder.
        +
      • Edit IVLodLights.ini if you don't like the default settings.
      • +
      +
    6. +
    +
    +
    +
    +
    +

    Xbox Rain Droplets#

    +

    This mod adds nice water droplets on the screen.

    +

    Installation

    + +
      +
    1. Go to the release page.
    2. +
    3. Download GTAIV.XboxRainDroplets.zip.
    4. +
    5. Extract the archive into the plugins folder.
        +
      • Edit GTAIV.XboxRainDroplets.ini if you don't like the default settings.
      • +
      +
    6. +
    +
    +

    Improved Animations Pack#

    +

    This mod fixes various issues with the weapon animations.

    +

    Installation

    + +
      +
    1. Go to the GTAForums page.
    2. +
    3. Download the Fusion Overloader version.
    4. +
    5. Extract the update folder from the archive into the game folder.
    6. +
    +
    +

    Higher Resolution Miscellaneous Pack#

    +

    This mod improves the texture quality of minor assets.

    +

    Installation

    + +
      +
    1. Download this archive.
    2. +
    3. Extract the update folder from the archive into the game folder.
    4. +
    +
    +

    Vehicle Pack#

    +

    This mod improves the texture quality of all vehicles in the game. Some textures are upscaled, some are taken from Max Payne 3 and GTA V.

    +

    Installation

    + +
      +
    1. Go to the GTAForums page.
    2. +
    3. Download the Complete Edition version. All the 3 links are the same, so just download it once.
    4. +
    5. Extract the update folder from the archive into the game folder.
    6. +
    +
    +

    Higher Res Radio Logos In-Game & Higher Res Radio Logos Menu#

    +

    This mod increases the quality of UI radio icons, as they are highly inconsistent with other UI assets in the game.

    +

    Installation

    + +
      +
    1. Go to the GTAForums page for Higher Res Radio Logos In-Game.
    2. +
    3. Download IV/Vanilla TBOGT style (MEGA) and TLAD style (MEGA) via the desired mirror.
        +
      • If you want TBoGT icons to be styled, also download New TBOGT style (MEGA).
      • +
      +
    4. +
    5. Go to the GTAForums page for Higher Res Logos Menu.
    6. +
    7. Press on Right Here (MEGA) to download.
    8. +
    9. Extract both archives in update/pc/textures/.
    10. +
    +
    +

    Consistent Pump Shotgun#

    +

    Slight file shift to use the TLAD's gameplay and prop model for pump shotgun in IV and TBoGT.

    +
      +
    1. Download this archive.
    2. +
    3. Extract the update folder from the archive into the game folder.
    4. +
    +
    +

    More Visible Interiors#

    +

    This mod makes interiors more visible from the outside, although comes with a downside of potential pop-in.

    +

    Installation

    + +
      +
    1. Go to the GTAForums page.
    2. +
    3. Press DOWNLOAD.
    4. +
    5. On Google Drive, download the Installation through Fusion Overloader folder.
    6. +
    7. Extract update from the archive into the game folder.
    8. +
    +
    +

    Project Glass#

    +

    This mod adds cubemap reflections to what otherwise is just transparent glass.

    +

    Installation

    + +
      +
    1. Download this archive.
    2. +
    3. Extract the update folder from the Files folder from the archive into the game folder.
    4. +
    +
    +

    Restored Trees Position#

    +

    This mod restores trees that were present in the betas but removed in the final release, either accidentally or due to performance concerns.

    +

    Installation

    + +
      +
    1. Go to the GTAForums page.
    2. +
    3. Press DOWNLOAD.
    4. +
    5. Download the archive.
    6. +
    7. From the Installation through Fusion Overloader folder in the archive, Extract the update folder from the archive into the game folder.
    8. +
    +
    +

    Restored Pedestrians & Restored Pedestrians Clothes#

    +

    Restored Pedestrians restores pedestrians that were either unused or only present in the betas. Restored Pedestrians Clothes does the same, but with clothing variation.

    +

    Installation

    + +
      +
    1. Go to the GTAForums page.
    2. +
    3. Press DOWNLOAD.
    4. +
    5. Download the archive.
    6. +
    7. From the Installation through Fusion Overloader folder in the archive, Extract the update folder from the archive into the game folder.
    8. +
    +
    +

    Various Pedestrian Actions#

    +

    This mod adds, corrects and completes unfinished actions for pedestrians.

    +

    Installation

    + +
      +
    1. Go to the GTAForums page.
    2. +
    3. Press DOWNLOAD.
    4. +
    5. Download the archive.
    6. +
    7. From the Installation through Fusion Overloader folder in the archive, Extract the update folder from the archive into the game folder.
    8. +
    +
    +

    Dodgy Doc - Higher Quality & GTA V decals#

    +

    These mods by donnits improve the quality of the Dodgy Doc in the Have a Heart mission and faithfully ports some higher quality decals from GTA V.

    +

    Installation

    + +
      +
    1. Download this archive.
    2. +
    3. Extract the update folder from the archive into the game folder.
    4. +
    +
    +

    GTA V-like visualSettings.dat#

    +

    This mod changes some values of visualSettings.dat to be more similar to GTA V.

    +

    Installation

    + +
      +
    1. Download the file.
    2. +
    3. Extract the file to update\common\data and update\TBoGT\common\data in the game folder.
        +
      • Optionally, restore rain specularity to 0.50 (with a text editor) if you don't like how the ground looks like hot glue during rain.
      • +
      +
    4. +
    +
    +

    Fidelity Popcycle#

    +

    A vanilla-friendly popcycle that makes the city life more varied and realistic.

    +

    Installation

    + +
      +
    1. Go to the NexusMods Files page.
    2. +
    3. Download the desired version of the mod (Potential Grim version has slightly more variety).
    4. +
    5. Open the downloaded archive, locate the Fusion overloader install folder in it.
    6. +
    7. Extract the update folder from that folder into the game folder.
    8. +
    +
    +

    Bullet Penetration - Minimal Edition#

    +

    This mod allows bullets to penetrate glass like they do with car windshields.

    +

    Installation

    + +
      +
    1. Go to the GTAForums page.
    2. +
    3. Press Download.
    4. +
    5. Open the Bullet Penetration.zip archive and the Minimal Edition folder inside of it.
    6. +
    7. Extract the common folder into the update folder.
    8. +
    +

    Resized Blista Compact#

    +

    This mod resizes the Blista Compact to match the real life counterpart (Honda CR-X). It also fixes the base model, but that's taken care of by FusionFix already.

    +

    Installation

    + +
      +
    1. Download this archive.
    2. +
    3. Extract the update folder from the archive into the game folder.
    4. +
    +
    +

    Liberty Tweaks#

    +
    +

    Compatibility

    + +
    +

    This project aims to improve various aspects of the game and it's general Quality of Life. You can see the features on the GTAForums page.

    +

    Installation

    + +
      +
    1. Install IV-SDK .NET and Clonk's Coding Library.
    2. +
    3. In IVSDKDotNet/config.ini disable PauseExecutionWhenNotInFocus to prevent some issues.
    4. +
    5. Go to the latest release page.
    6. +
    7. Download the LibertyTweaksx.x.zip.
    8. +
    9. Extract the contents of 1. Install into the game folder. Replace files if prompted.
    10. +
    11. Configure IVSDKDotNet/scripts/LibertyTweaks.ini as you wish.
    12. +
    +
    +

    Project Thunder#

    +
    +

    Compatibility

    + +
    +

    This mod improves how thunder appears in-game, with actual lighting and improved atmosphere.

    +

    Installation

    + +
      +
    1. Install IV-SDK .NET and Clonk's Coding Library if you hadn't already.
    2. +
    3. In IVSDKDotNet/config.ini disable PauseExecutionWhenNotInFocus to prevent some issues.
    4. +
    5. Go to the latest release page.
    6. +
    7. Download the ProjectThunder.vx.x.zip.
    8. +
    9. Extract the contents of Files for the main directory into the game folder.
        +
      • Do not extract the pc folder - rather, extract it to the update folder instead.
      • +
      +
    10. +
    11. Extract the RAIN file into any empty folder.
    12. +
    13. Copy the resident.rpf archive from pc/audio/sfx/ to update/pc/audio/sfx/.
        +
      • Skip this step if you installed "Reduced Trafic Screech (Audio Tweak)" previously.
      • +
      +
    14. +
    15. Open the copied archive with OpenIV.
    16. +
    17. Using the file from the mod, replace the RAIN file in the RESIDENT folder inside the archive.
    18. +
    19. Configure IVSDKDotNet/scripts/ProjectThunderIV.ini as you wish.
    20. +
    +
    +

    VAmbience#

    +

    This mod adds background noise to the game, such as driving and shooting, alike to GTA V.

    +

    Installation

    + +
      +
    1. Go to the latest release page.
    2. +
    3. Download the VAmbience.vx.x.zip.
    4. +
    5. Extract the archive into the game folder. Replace files if needed.
    6. +
    7. Configure VAmbience.ini as you wish.
    8. +
    +
    + +

    Please use the following load order (put the number before the folder names) after installing the mods above:

    +
      +
    1. Minor Mods (any other mod you don't see below is considered minor - their order doesn't matter that much but they should be loaded on top)
    2. +
    3. Restored Trees Position
    4. +
    5. Restored Pedestrians
    6. +
    7. Higher Resolution Miscellaneous Pack
    8. +
    9. Vehicle Mods (Vehicle Pack, Resized Blista etc.)
    10. +
    11. Characters Fixes
    12. +
    13. Console Visuals
    14. +
    15. Project Glass
    16. +
    17. More Visible Interiors
    18. +
    19. Various Fixes
    20. +
    21. FusionFix (leave it at the default folder name for ease of updating)
    22. +
    +

    You may want to manually merge some .img mods together using OpenIV to avoid going over the limit.

    +

    You can see how far you are on the limits if you set ExtraInfo to 1 in FusionFix's GTAIV.EFLC.FusionFix.ini - it'll give the number on bottom of the screen in settings - but only on 1.2.0.58. If you are using an older version, you can only tell if you went over the limit by going into TBoGT and seeing whether traffic spawns (if it doesn't - you're over the limit and it's a sign to merge some mods).

    +
    + +

    Previous page
    Essential Modding
    Next page
    Extras

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/essential-modding/additional-fixes/index.html b/ru/essential-modding/additional-fixes/index.html new file mode 100644 index 00000000..2106857a --- /dev/null +++ b/ru/essential-modding/additional-fixes/index.html @@ -0,0 +1,1578 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Дополнительные фиксы (список) - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Дополнительные фиксы (список)#

    +

    Следующие моды являются фиксами которые я бы посчитал обязательными, т.к. они не имеют каких-либо минусов или несовместимостей.

    +
    +

    Для большинства модов требуется FusionFix. Эта страница будет предполагать, что он у вас установлен и не будет об этом напоминать.

    +
    +
    +

    Luis' Helmet Reflections Fix#

    +

    Этот мод исправляет поблекшие отражения на шлеме модели игрока в TBoGT.

    +

    Установка

    + +
      +
    1. Скачайте этот архив.
    2. +
    3. Распакуйте папку update из архива в папку с игрой.
    4. +
    +
    +

    Replaced Esperanto by Roman's Taxi in Cab Depot & Fixed Pedestrian Reactions#

    +

    Эти моды от Attramet исправляют некоторые недочеты которые не имеют никакого смысла.

    +

    Установка

    + +
      +
    1. Скачайте этот архив.
    2. +
    3. Распакуйте папку update из архива в папку с игрой.
    4. +
    +
    +

    Liberty Ferry Terminal - Waiting Sign Fix & Sugar Chomps - Separate Signs#

    +

    Эти моды от donnits исправляют мелкие проблемы по карте.

    +

    Установка

    + +
      +
    1. Скачайте этот архив.
    2. +
    3. Распакуйте папку update из архива в папку с игрой.
    4. +
    +
    +

    Responsive Plus - фиксы cargrp.dat и carcols.dat#

    +

    Эти фиксы исправляют некоторые недочеты в оригинальных файлах, из-за которых некоторые автомобили не спавнятся так, как положено.

    +

    Установка

    + +
      +
    1. Скачайте этот архив.
    2. +
    3. Распакуйте папку update из архива в папку с игрой.
    4. +
    +
    +

    Fixed Suit Display in Perseus#

    +

    Исправление некорректного костюма в Perseus, т.к. вы покупаете костюм, отличный от отображаемого.

    +

    Установка

    + +
      +
    1. Скачайте этот архив.
    2. +
    3. Распакуйте папку update из архива в папку с игрой.
    4. +
    +
    +

    Pistol Iron Sight Fix#

    +

    Этот мод исправляет недочет в моделе пистолета где прицел не имеет вообще никакого смысла.

    +

    Установка

    + +
      +
    1. Скачайте этот архив.
    2. +
    3. Распакуйте папку update из архива в папку с игрой.
    4. +
    +
    + +

    Этот мод исправляет фоны с низким разрешением в меню EFLC.

    +

    Установка

    + +
      +
    1. Скачайте этот архив.
    2. +
    3. Распакуйте папку update из архива в папку с игрой.
    4. +
    +
    +

    IV Bikers in Episodes voice sets fix#

    +

    Исправление голосовых линий байкеров из IV в EFLC.

    +

    Установка

    + +
      +
    1. Перейдите на страницу GTAForums.
    2. +
    3. Нажмите на ссылку Download.
    4. +
    5. Распакуйте файл BYeah.dat16 в GTAIV/TLAD/pc/audio/config/.
    6. +
    7. Если радио было даунгрейднуто по руководству, добавьте следующее после <game content="ascii">ex:/pc/audio/config/epx_game.dat</game> в файле e1_audio.xml в папке GTAIV/update/TLAD/ и файле e2_audio.xml в папке GTAIV/update/TBoGT/:
    8. +
    +
        <game content="ascii">platform:/audio/config/BYeah.dat</game>
    +
    +
      +
    • Если радио не было даунгрейднуто по руководству, скопируйте файлы с тем же названием из ванильных папок GTAIV/TLAD|TBoGT/ в папку update и сделайте то же самое, что и выше.
    • +
    +
    +

    Player Outfit Texture Fixes#

    +

    Этот мод исправляет зеленоватые текстуры на некоторых моделях персонажей.

    +

    Устаноыка

    + +
      +
    1. Скачайте этот архив.
    2. +
    3. Распакуйте папку update в папку с игрой.
    4. +
    5. Другие папки распакуйте в любую пустую папку.
    6. +
    7. Скопируйте архив playerped.rpf из GTAIV/pc/models/cdimages/ в GTAIV/update/pc/models/cdimages/.
    8. +
    9. Скопируйте архив playerped.rpf из GTAIV/TBoGT/pc/models/cdimages/ в GTAIV/update/TBoGT/pc/models/cdimages/.
    10. +
    11. Скопированные архивы откройте с OpenIV.
    12. +
    13. Скопируйте файлы из IV - playerped.rpf в архив, который вы скопировали в этапе 4.
    14. +
    15. Скопируйте файлы из TBoGT - playerped.rpf в архив, который вы скопировали в этапе 5.
    16. +
    +
    +

    Luis' Bag Texture Fix#

    +

    Этот мод добавляет недостающие карты нормалей и спекуляций и улучшает качество текстур на сумке модели игрока в TBoGT.

    +

    Установка

    + +
      +
    1. Скачайте мод.
    2. +
    3. Распакуйте архив в любую пустую папку.
    4. +
    5. Скопируйте архив playerped.rpf из GTAIV/TBoGT/pc/models/cdimages/ в GTAIV/update/TBoGT/pc/models/cdimages/.
        +
      • Пропустите этот этап если вы уже это делали ранее с другими модами.
      • +
      +
    6. +
    7. Скопированный архив откройте с OpenIV.
    8. +
    9. Используя файлы из мода, замените файлы suse_002_u.wdr и suse_002_a_uni.wdr в архиве.
    10. +
    +
    +

    Johnny's Shoe Texture Fix#

    +

    Этот мод добавляет недостающие карты нормалей и спекуляций в обувь модели игрока в TLAD.

    +

    Установка

    + +
      +
    1. Скачайте мод.
    2. +
    3. Распакуйте архив в любую пустую папку.
    4. +
    5. Скопируйте архив playerped.rpf из GTAIV/TLAD/pc/models/cdimages/ в GTAIV/update/TLAD/pc/models/cdimages/.
    6. +
    7. Скопированный архив откройте с OpenIV.
    8. +
    9. Используя файл из мода, замените файл feet_000_u.wdr в архиве.
    10. +
    +
    +

    Reduced Trafic Screech (Audio Tweak)#

    +

    Этот мод изменяет уровень шума транспорта в Algonquinе, чтобы он соответствовал реальному уровню, который можно обычно услышать на Times Square.

    +

    Установка

    + +
      +
    1. Скачайте мод.
    2. +
    3. Распакуйте архив в любую пустую папку.
    4. +
    5. Скопируйте архив resident.rpf из GTAIV/pc/audio/sfx/ в GTAIV/update/pc/audio/sfx/.
    6. +
    7. Скопированный архив откройте с OpenIV.
    8. +
    9. Используя файл из мода, замените файл AMB_RESIDENT в папке RESIDENT внутри архива.
    10. +
    +
    +

    Лимиты .img#

    +

    Вы, возможно, захотите вручную совместить несколько .img модов используя OpenIV во избежание лимита.

    +

    Вы можете увидеть, как близко вы к лимитам, если поставите ExtraInfo на 1 в конфиге FusionFix'а GTAIV.EFLC.FusionFix.ini - это даст примерное значение внизу экрана в настройках - но только на 1.2.0.58. Если вы используете версию старее, вы можете увидеть, перешли ли вы лимит, зайдя в TBoGT и увидев, есть ли на дороге машины (если нету - вы перешли лимит и это знак совместить несколько модов вместе).

    +
    +

    Навигация#

    +

    Предыдущая страница
    Various Fixes
    Следующая страница
    Рекомендуемые улучшения

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/essential-modding/fusionfix/index.html b/ru/essential-modding/fusionfix/index.html new file mode 100644 index 00000000..5149857b --- /dev/null +++ b/ru/essential-modding/fusionfix/index.html @@ -0,0 +1,1354 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + FusionFix - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    FusionFix#

    +
    +

    Совместимость

    +

    Этот мод оффициально совместим только с Complete Edition, но учитывая некоторые вещи ввиду, вы также можете его использовать и на 1.0.8.0.

    +

    Поддержка старых версий может быть обрезана вл юбой момент и разработчики не предлагают помощи с этими версиями если у вас возникнут проблемы.

    +
    +

    Этот проект метит на исправление большинства графических и геймплейных проблем и добавляет новые настройки графики. Обо всех изменениях можете почитать на репозитории.

    +
    +

    Демо

    +

    +

    TBA

    +
    +

    Установка

    +

    +
    +
    +
    +
      +
    1. Перейдите на страницу последнего релиза.
    2. +
    3. Скачайте архив GTAIV.EFLC.FusionFix.zip.
    4. +
    5. Распакуйте архив в папку с игрой. +
    6. +
    +
    +
    +
    +

    Отсутсвующие исправления

    +

    Установка FusionFix на 1.0.8.0 избавляет вас от некоторых исправлений, а также вы не получите официальной поддержки от Fusion Team если возникнут какие-либо проблемы. Имейте это ввиду.

    +
    +
      +
    1. Перейдите на страницу последнего релиза.
    2. +
    3. Скачайте архив GTAIV.EFLC.FusionFix.zip.
    4. +
    5. Распакуйте архив в папку с игрой.
    6. +
    7. Переместите файлы из папки plugins в папку с игрой. +
    8. +
    +
    +

    Если используется GFWL для мультиплеера...

    +

    Примените этот патч наверх.

    +

    Если планируется играть только в мультиплеер, подумайте об установки специального патча только для мультиплеера для улучшенной стабильности.

    +
    +
    +
    +
    +
    +

    Модлоадинг

    +

    Этот мод может быть использован для модлоадинга. Смотрите Fusion Overloader для подробностей.

    +
    +
    +

    Настройка

    +

    +

    Большая часть настроек доступна в игровых настройках.

    +

    Вы можете отредактировать GTAIV.EFLC.FusionFix.ini или GTAIV.EFLC.FusionFix.cfg если вам нужно изменить настройки поза-игрой если у вас есть на это причины. Смотрите список неигровых настроек если вам нужно их изменить.

    +
    +

    Навигация

    +

    +
    + +
    +

    Предыдщуая страница
    Обязательные моды

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/essential-modding/index.html b/ru/essential-modding/index.html new file mode 100644 index 00000000..f2cd2bb4 --- /dev/null +++ b/ru/essential-modding/index.html @@ -0,0 +1,1294 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Обязательные моды - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Обязательные моды#

    +

    В этой категории вы найдете моды, которые я считаю обязательными для любой установки GTA IV, вместе с инструкциями по их установке и настройке.

    +
    +

    Каждый последующий мод требует Ultimate ASI Loader.

    +
    +

    Навигация#

    +
    +
      +
    • +

      FusionFix метит на исправление большинства графических и геймплейных проблем и добавляет новые настройки графики. Настоятельно рекомендуется установить первым.

      +

      Следующая страница
      FusionFix

      +
    • +
    • +

      ZolikaPatch улучшает работоспособность мультиплеера и считается обязательным для даунгрейднутых версией. Не устанавливайте, если не даунгрейдились.

      +

      Следующая страница
      ZolikaPatch

      +
    • +
    • +

      Various Fixes метит на исправление или улучшение большого количества проблем с картой и текстурами.

      +

      Следующая страница
      Various Fixes

      +
    • +
    • +

      Дополнительные фиксы это список всех мелких фиксов которые не имеют смысла иметь каждую страницу по отдельности.

      +

      Следующая страница
      Дополнительные фиксы (список)

      +
    • +
    +
    +

    Предудыщая страница
    Второстепенная настройка

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/essential-modding/various-fixes/index.html b/ru/essential-modding/various-fixes/index.html new file mode 100644 index 00000000..28223ee7 --- /dev/null +++ b/ru/essential-modding/various-fixes/index.html @@ -0,0 +1,1295 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Various Fixes - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Various Fixes#

    +

    Этот проект метит на исправление или улучшение большого количества проблем с картой и текстурами. Обо всех изменениях можете почитать на странице GTAForums.

    +
    +

    Установка

    +

    +
      +
    1. Убедитесь, что у вас установлен FusionFix.
    2. +
    3. Перейдите на папку Google Drive.
    4. +
    5. Скачайте архив Installation through Fusion Overloader.rar.
    6. +
    7. Распакуйте папку update (не ее содержимое) в папку с игрой. Замените файлы если требуется.
        +
      • Вы также можете распаковать дополнительные части из архива Optional Content.rar. Используйте папку Installation through Fusion Overloader и делайте тоже самое с ее содержимым, что и в этапе 4.
      • +
      +
    8. +
    +
    +

    Навигация

    +

    +

    Предыдудщая страница
    ZolikaPatch
    Следующая страница
    Дополнительные фиксы (список)

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/essential-modding/zolikapatch/index.html b/ru/essential-modding/zolikapatch/index.html new file mode 100644 index 00000000..c8bc4173 --- /dev/null +++ b/ru/essential-modding/zolikapatch/index.html @@ -0,0 +1,1346 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + ZolikaPatch - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    ZolikaPatch#

    +
    +

    Совместимость

    +

    Этот мод совместим со всеми даунгрейднутыми версиями, но не Complete Edition. Пропустите этот мод если вы не собираетесь даунгрейдиться - его улучшения того не стоят если вы не играете в мультиплеер.

    +
    +

    Этот проект улучшает работоспособность мультиплеера и считается обязательным для даунгрейднутых версией. Обо всех изменениях можете почитать здесь.

    +
    +

    Установка

    +

    +
      +
    1. Перейдите на Zolika1351's Zone.
    2. +
    3. Прокрутите до конца страницы и скачайте последнюю версию.
    4. +
    5. Распакуйте ZolikaPatch_vx_x.zip в папку с игрой. +
    6. +
    +

    +
    +

    Если используется FusionFix...

    +
    +

    Setup Utility (Только для Windows)

    +

    Setup Utility может автоматически сделать все это за вас.

    +
    +

    Откройте ZolikaPatch.ini и отключите следующие настройки:

    +
      +
    • BikePhoneAnimsFix
    • +
    • BorderlessWindowed
    • +
    • BuildingAlphaFix
    • +
    • BuildingDynamicShadows
    • +
    • CarDynamicShadowFix
    • +
    • CarPartsShadowFix
    • +
    • CutsceneFixes
    • +
    • DoNotPauseOnMinimize
    • +
    • DualVehicleHeadlights
    • +
    • EmissiveLerpFix
    • +
    • EpisodicVehicleSupport
    • +
    • EpisodicWeaponSupport
    • +
    • ForceCarHeadlightShadows
    • +
    • ForceDynamicShadowsEverywhere
    • +
    • ForceShadowsOnObjects
    • +
    • HighFPSBikePhysicsFix
    • +
    • HighFPSSpeedupFix
    • +
    • HighQualityReflections
    • +
    • ImprovedShaderStreaming
    • +
    • MouseFix
    • +
    • NewMemorySystem
    • +
    • NoLiveryLimit
    • +
    • OutOfCommissionFix
    • +
    • PoliceEpisodicWeaponSupport
    • +
    • RemoveBoundingBoxCulling
    • +
    • ReversingLightFix
    • +
    • SkipIntro
    • +
    • SkipMenu
    • +
    +

    Имейте ввиду, что это на самом деле не отключает и не ломает ничего, т.к. эти настройки уже встроены в FusionFix.

    +
    +
    +

    Что за GFWLProtectionDisabler2019.asi?

    +

    Этот файл является обязательным для предотвращения GFWL от блокировки модов .asi.

    +
    +
    +

    Настройка

    +

    +

    Откройте ZolikaPatch.ini и настройте файл по надобности. Все настройки имеют обьяснения рядом с ними.

    +
    +

    Навигация

    +

    +

    Предыдущая страница
    FusionFix
    Следующая страница
    Various Fixes

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/extras/index.html b/ru/extras/index.html new file mode 100644 index 00000000..d12637c8 --- /dev/null +++ b/ru/extras/index.html @@ -0,0 +1,1295 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Extras - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Extras#

    +

    This page has everything else that doesn't fit into earlier categories.

    + +
    + +
    +

    Previous page
    Recommended Enhancements

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/extras/launcher/index.html b/ru/extras/launcher/index.html new file mode 100644 index 00000000..675b5cf1 --- /dev/null +++ b/ru/extras/launcher/index.html @@ -0,0 +1,1307 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Launcher - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Launcher#

    +

    Let's say you have an instance for your modded version of GTA IV and an instance for the slightly modded GFWL version. Gets annoying to switch between folders, doesn't it? ItsClockAndre's launcher comes to the rescue!

    +
    +

    Compatibility

    +

    This launcher is theoretically compatible with the Complete Edition instances, but it's very problematic. You have to start the instance first, then once the Rockstar Games Launcher is open, close the IV Launcher and click Play on Steam, which will open the launcher again - from there, start the instance again without closing the Rockstar Games Launcher, and that should get you into the game.

    +

    Frankly, I'd only recommend this launcher if you have no CE instances.

    +
    +
    +

    Installation

    +

    +
      +
    1. Go to the GTAForums page.
    2. +
    3. Download the latest version. Read the notes on the page.
    4. +
    5. Extract the GTAIVLauncher_vx.x.zip archive into any empty folder.
    6. +
    7. Open GTAIVLauncher.exe with elevated permissions.
    8. +
    9. Follow the in-app instructions to create and configure instances.
    10. +
    +
    +

    How do I launch the launcher with Steam?

    +
      +
    1. Move the launcher files to the game folder.
    2. +
    3. Rename PlayGTAIV.exe to something else.
    4. +
    5. Rename GTAIVLauncher.exe to PlayGTAIV.exe.
    6. +
    7. Rename GTAIVLauncher.exe.config to PlayGTAIV.exe.config.
    8. +
    +
    +
    +

    Navigation

    +

    +

    Previous page
    Extras

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/extras/modloading/index.html b/ru/extras/modloading/index.html new file mode 100644 index 00000000..f4c4acae --- /dev/null +++ b/ru/extras/modloading/index.html @@ -0,0 +1,1604 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Modloading - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Modloading#

    +

    A lot of mods require replacing game files with OpenIV. We can get around this by using a modloader.

    +
    +

    Fusion Overloader#

    +
    +

    Compatibility

    +

    Supports both the Complete Edition and 1.0.8.0/1.0.7.0 as long as the latest version of FusionFix is installed.

    +
    +

    This modloader works by loading the files from the update folder instead of the main game files, avoiding replacing the original files.

    +

    Installing mods packaged for Fusion Overloader#

    +

    They're likely already packaged into an update folder. Just drop that folder into the root folder of the game.

    +
    +

    Installing mods with files that go into .img archives"#

    +

    Example: mod requires you to drop a file into the vehicles.img file.

    +
    +

    For mods that provide a whole .img archive

    +

    If, say, the mod compiles the whole vehicles.img but only replaces one vehicle - you should only package that separate vehicle alone. While you can get away with not separating the modified files, you'll ruin compatibility with other mods. So please don't do that.

    +

    If you want to separate modified files, you have to extract the mod's and vanilla archives into separate folders and compare the folders with something like WinMerge.

    +
    +
      +
    1. Compile all the files that go into .img's into a single .img archive (or multiple if your archives exceed 1.5GB to avoid issues) using OpenIV.
    2. +
    3. If you have files that should be only injected into TLAD, TBoGT or IV and not the other (i.e. a mod provides separate files for base IV and EFLC), compile a separate .img file for each subgame.
    4. +
    5. Create a folder with the name of your mod in the update folder (create one in the game folder if it doesn't exist).
    6. +
    7. Drop your compiled .img files into that folder.
    8. +
    9. If you went through step 2, also create folders called IV, TLAD or TBoGT and drop the separate .img files there.
    10. +
    +
    +

    Priority

    +

    If you have multiple mods that replace same files and need a priority system, you can add a number or a symbol (such as !) before it's name.

    +

    Whatever is higher on the folder when sorting by Name (ascending) - is higher on priority.

    +
    +Expected folder structure +

    In this example, Mod 2 is supposed to be higher priority than Mod 1.

    +
      +
    • GTAIV\
        +
      • update\
          +
        • 1 Mod 2\
            +
          • Mod2.ForEveryGame.img
          • +
          +
        • +
        • 2 Mod 1\
            +
          • Mod1.ForEveryGame.img
          • +
          • IV\
              +
            • Mod 1.IVOnly.img
            • +
            +
          • +
          • TLAD\
              +
            • Mod 1.TLADOnly.img
            • +
            +
          • +
          • TBoGT\
              +
            • Mod 1.TBoGTOnly.img
            • +
            +
          • +
          +
        • +
        +
      • +
      +
    • +
    +
    +
    +
    +

    Installing mods with other kind of files#

    +

    Example: mod requires you to modify gta.dat.

    +

    Example 2: mod requires you to modify playerped.rpf (copy the vanilla file over first and modify that).

    +
    +

    By other kind of files I mean literally any replacement files that go into pc, common, TLAD or TBoGT. As long as they're not .img files.

    +

    Placing the files in the mod folders won't work.

    +
    +
      +
    1. Recreate the folder structure from the vanilla one in update.
    2. +
    3. Place the replacement files exactly as you would in vanilla, just do that in update.
    4. +
    5. If the two mods replace same files, use a comparison tool (I like to use WinMerge) to merge them.
    6. +
    +
    +Expected folder structure +
      +
    • GTAIV\
        +
      • update\
          +
        • common\
            +
          • data\
              +
            • WeaponInfo.xml
            • +
            +
          • +
          +
        • +
        • TLAD\
            +
          • common\
              +
            • data\
                +
              • WeaponInfo.xml
              • +
              +
            • +
            +
          • +
          +
        • +
        +
      • +
      +
    • +
    +
    +
    +

    IV Tweaker#

    +
    +

    Compatibility

    +

    Supports 1.0.8.0 and 1.0.7.0 only.

    +
    +

    This modloader has a few advantages over Fusion Overloader, such as being able to inject more files than just .img's while still having the originals intact. It also allows to increase limits.

    +

    Installation#

    +
      +
    1. Go to Zolika1351's Zone
    2. +
    3. Scroll to the bottom and download the archive.
    4. +
    5. Extract the IVTweaker_vx.x.zip archive into the game folder.
    6. +
    +
    +

    Installing mods#

    +
    +

    For mods that provide a whole .img archive

    +

    If, say, the mod compiles the whole vehicles.img but only replaces one vehicle - you should only package that separate vehicle alone. While you can get away with not separating the modified files, you'll ruin compatibility with other mods. So please don't do that.

    +

    If you want to separate modified files, you have to extract the mod's and vanilla archives into separate folders and compare the folders with something like WinMerge.

    +
    +
      +
    1. Compile all the files that go into .img's into a single .img archive (or multiple if your archives exceed 1.5GB to avoid issues) using OpenIV.
    2. +
    3. If you have files that should be only injected into TLAD, TBoGT or IV and not the other, compile a separate .img file for them.
        +
      • You can also omit the above two steps and just use raw files.
      • +
      +
    4. +
    5. Create a folder with the name of your mod in modloader.
    6. +
    7. Drop your compiled .img or raw files into that folder.
    8. +
    9. If you had to go through step 3, also create separate folders for IV, TLAD or TBoGT and drop the specific files there.
    10. +
    11. You can add GTAIVOnly, TLADOnly or a TBoGTOnly if you don't need the mod to load in any other subgame. Otherwise, edit modloader.ini for priority and when the mods should or should not load.
    12. +
    +
    +Expected folder structure +
      +
    • GTAIV\
        +
      • modloader\
          +
        • Mod1\
            +
          • IVAnims.ForEveryGame.img
          • +
          • WeaponInfo.xml
          • +
          +
        • +
        • Mod1.TLADOnly\
            +
          • TLADOnly
          • +
          • TLADAnims.img
          • +
          • WeaponInfo.xml
          • +
          +
        • +
        • Mod1.TBoGTOnly\
            +
          • TBoGTOnly
          • +
          • TBoGTAnims.img
          • +
          +
        • +
        +
      • +
      +
    • +
    +
    +
    +

    Configuring the modloader#

    +

    To configure the modloader, edit modloader.ini in modloader.

    +
      +
    • Make sure you set the correct priority so you don't have unwanted mods overriding other mods (higher number - higher priority).
    • +
    • Make sure mods that should only be injected to TBoGT or TLAD are disabled for IV (Ep0), mods that are only for TBoGT are disabled for TLAD (Ep1), and mods that are only for TLAD are disabled for TBoGT(Ep2).
        +
      • This isn't necessary if you left GTAIVOnly, TLADOnly or TBoGTOnly files in the folders.
      • +
      +
    • +
    +
    +Expected configuration +

    Improved Animations mod will be used for an example.

    +
    [DisabledMods]
    +IVImprovedAnimations=0
    +TLADImprovedAnimations=0
    +TBoGTImprovedAnimations=0
    +
    +[Priorities]
    +IVImprovedAnimations=1
    +TLADImprovedAnimations=2
    +TBoGTImprovedAnimations=2
    +
    +[DisabledForEp0]
    +TLADImprovedAnimations=1
    +TBoGTImprovedAnimations=1
    +
    +[DisabledForEp1]
    +TBoGTImprovedAnimations=1
    +
    +[DisabledForEp2]
    +TLADImprovedAnimations=1
    +
    +
    +
    +

    Increasing the limits

    +

    To increase the limits, edit IVTweaker.ini.

    +

    You may want to do that if you install mods that, for example, change vehicle textures, since you should increase the vehicle budget limits for those.

    +
    +
    + +

    Previous page
    Extras

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/extras/mods/index.html b/ru/extras/mods/index.html new file mode 100644 index 00000000..76cb08b1 --- /dev/null +++ b/ru/extras/mods/index.html @@ -0,0 +1,1520 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Mods - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Mods#

    +

    To finish this guide off, I will give a list of more mods that couldn't find their place in other parts of the guide due to their niche status, potential incompatibilites, or something else. I won't list instructions on how to install them, as mods usually list their own instructions, so it becomes redundant.

    +
    +
      +
    • Be sure to back up your files before making any changes.
    • +
    • Use a modloader to avoid file replacements when asked to do so.
    • +
    • I'm only listing these mods - I don't intend for people to actually install all of them together. Pick what to install yourself.
    • +
    +
    +
    +

    List of mods (larger-scale)#

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ModDeveloper(s)Details
    SolitudeChunkA vanilla+ timecycle mod.
    Addons for the Snow ModJumbo0, gr8man, Jantsu92, Alisa Bellucci, Flash, Alexkander_, Straysify, gdanbo and ThirteenAGParts of Enhanced Snow Mod, Snow Mod Reaction Fix, Realistic Snow Sounds and Project2DFX bundled as addons for FusionFix's Snow Mode.
    Installation instructions are in the archive's Readme.txt.
    Enhanced Snow Mod Repackjumbo0, gr8man, Jantsu92, Alisa Belucci: Flash, Lover of Winter, Attramet, Straysify, gdanbo and GillianEnhanced Snow Mod, Realistic Winter Trees, Snow Mod Reaction Fix, Realistic Snow Sounds and Beta Winter Pedestrians bundled for Fusion Overloader with my own custom tweaks.
    Installation: Backup update. Extract update to the game folder, replace files when prompted. Disable/remove FusionFix's GTATrees.img, Console Visuals' FusionConsolevegetation.img and road textures. Set Screen Filter to TBoGT. Don't play DLC's.
    Project BirdsInternet RobAdds birds to the skies.
    Liberty RushInternet Rob, ItsClockAndre, donnits, DatalvarezguyAdds dozens of improvements, restored content, new traffic scenarios etc.
    The Actual Complete EditionC1aude_IIIThis projects puts huge effort at merging IV and EFLC from weapons, vehicles and assets to the whole map. Replaces the following two mods.
    The Complete Liberty CityElYisusKingA massive project aimed to merge EFLC and IV maps.
    EFLC Vehicle Addon Pack7urbo1ag, Gaming with SGAdds the EFLC vehicles to base IV.
    Enhanced Minor CharactersDatalvarezguyReplaces vanilla peds in some missions with author's visions for the characters.
    Hi-Res CharactersPrimusideusUpscaled and higher resolution character textures.
    Potential GrimiiCriminnaaLAdds more danger to the streets of Liberty City and makes gangs play a bigger role in freeroam.
    The Hardcore Lost MCiiCriminnaaLEnhances the TLAD experience, changes bikers' appearance and AI.
    +

    List of mods (smaller-scale)#

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ModDeveloper(s)Details
    Better WardrobesZolika1351Improves the clunky wardrobe the game originally has - but unlocks all clothing from the start.
    UHD Vanilla Map and RadarValentynLA high-resolution map for 1440p and 4K monitor users (may not look great on a 1080p or lower resolution monitor).
    Restored Trees PositionAttrametRestores several trees that were only present in the beta version.
    High Quality PigeonsSupreme Dear LeaderImproves the model and texture quality for pigeons.
    Outfit EnhancementsiiCriminnaaLSeveral simple enhancements for some clothing.
    TV RestorationAttrametHighest quality TV videos.
    IV-PresenceItsClockAndreAdds a Discord Rich Presence.
    +

    Workshops#

    +

    These workshops might have some mods or tools you may be interested in!

    +

    Zolika1351's Zone ItsClockAndre's

    +

    Donnit's Bakery Internet Rob's

    +

    DayL's Modding Community

    +
    +

    Making mods#

    +

    If you're interested in making mods yourself, visit this Discord server:

    +

    GTA IV Modding

    +
    +

    Want some mod to be listed?#

    +

    Mention it on the Mod Suggestions thread on my Discord server:

    +

    My Discord server

    +
    +

    Afterword#

    +

    Thanks for using my guide for modding GTA IV!

    +

    I sincerely hope that I have helped you achieve the perfect state of the game. This guide takes some time to maintain, and it couldn't have been done without all the great mods, so please consider chipping in for some authors: Credits.

    +

    If you want more guides or modpacks like that, check out Similar Guides & Resources.

    +
    + +

    Previous page
    Extras

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/extras/multiplayer/index.html b/ru/extras/multiplayer/index.html new file mode 100644 index 00000000..9b102fab --- /dev/null +++ b/ru/extras/multiplayer/index.html @@ -0,0 +1,1603 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Multiplayer - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Multiplayer#

    +

    GTA IV had an amazing multiplayer... and it still does! Rockstar Games has removed the multiplayer from the Complete Edition, but there are still plenty of ways to play even the official multiplayer (which, no, is not shut down). If you're tired of GTA Online and want something more classic, you should definitely check out GTA IV's multiplayer!

    +
    +

    Prerequisites and info#

    +
      +
    • It's recommended to have ZolikaPatch set up for a better multiplayer experience. Make sure to configure ZolikaPatch.ini to use multiplayer functions.
    • +
    • Make sure to have RecoilFix set to 0 in GTAIV.EFLC.FusionFix.ini to avoid being at disadvantage with other players.
        +
      • It is also recommended to use the GFWLMin patch for increased stability - but it cuts out singleplayer features.
      • +
      +
    • +
    • Additionally, you may want to have ZMenuIV for the ability to create and participate in custom gamemodes.
    • +
    • You can also use this to unlock all multiplayer clothing for customization.
    • +
    • Avoid using overhaul, addition or replacement mods. They will put you, or others, at disadvantage and create instability.
    • +
    +
    +

    Games for Windows LIVE#

    +
    +

    This section also includes steps to configure GFWL for non-multiplayer use too. If you came here for that, just skip the "Joining/Creating Lobbies" section.

    +
    +
    +

    Compatibility

    +

    This method is only compatible with patches 1.0.7.0 and 1.0.8.0. It's also compatible with older patches, but they'll be put into separate lobbies. Downgrade if using the Complete Edition.

    +

    Wine does not implement support for GFWL, so this method is not possible on Linux.

    +
    +

    The one and only official multiplayer method. And to that end, it's also the one that's most annoying to set up. If you don't want the hassle, check out GTAConnected first.

    +
    +

    +

    Installation#

    +
    +

    This step is already taken care of by the downgraders if you chose to configure the install for GFWL. Skip it if you did.

    +
    +
      +
    1. Make sure you don't have outdated installations of GFWL Marketplace and LIVE. Remove them if you do.
    2. +
    3. Download latest Redistributables.
    4. +
    5. Extract the archive in any empty folder.
    6. +
    7. Run gfwllivesetup.exe and go through the installation.
    8. +
    9. Install the Xbox App and sign into the Xbox account in it. This is required for signing in later.
    10. +
    +
    +

    What's the Marketplace?

    +

    While you do get the Marketplace, don't bother opening it or trying to make it work. Marketplace is not functional, but still must be installed for GFWL itself to work.

    +
    +
    +

    Signing in#

    +
    +

    GFWL account is the same as a Microsoft or Xbox account. Create one if you don't already have one.

    +
    +
      +
    1. Make sure you don't have xlive.dll in the game folder - rename it to dinput8.dll if you do.
    2. +
    3. Open the game.
    4. +
    5. Press the Home key on your keyboard. You'll be met with the startup screen.
        +
      • If the startup screen did not appear or you're met with an error when opening the game, re-read the instructions from the start.
      • +
      +
    6. +
    7. Click Use Existing LIVE Profile to get the sign in screen.
    8. +
    9. Uncheck Save my e-mail address and Save my e-mail address and password.
    10. +
    11. Enter your Microsoft or Xbox account credentials to sign in.
        +
      • Check Sign me in automatically. This will allow you to re-enable 2FA on your account, aswell.
      • +
      • If you have a password longer than 16 character or use 2FA, go to this website and use the generated "App password" to sign in.
      • +
      +
    12. +
    13. Make yourself a cup of tea or do whatever you want for the next 2-10 minutes. I'm not kidding - it might take that long to log in. Don't think it's stuck - it's not.
    14. +
    15. The game will ask you for an activation key now:
    16. +
    +
    +Activation +

    We have several ways to activate the game.

    +
    +
    +
    +

    One of the ways to activate the game is to own a GFWL key. Although you'll share it with a lot of other people - it'll still be "yours", so to say.

    +

    First, check if you already own any game with Legacy (5x5) activation - you may already own one of these games - check if their CD Key works for you.

    +

    After you've made sure you don't have one already, you can:

    +
      +
    • Look for a GFWL key on some marketplaces.
    • +
    • Buy one of these Steam games, which are the only ones still selling a GFWL key as of December 2023. This may change in the future. Don't worry, you can refund the game after you purchase the key.
    • +
    +

    +

    +

    +

    After buying the game, go to the library, select the game and right click - Manage - CD keys and copy the key somewhere. You can refund it now.

    +
    +
    +

    This one is pretty self-explanatory - just go around online and look for random GFWL keys - preferably with Legacy (5x5) activation - they have multiple uses, so you might get lucky. This Discord server might help you:

    +

    Grand Theft RevIVal

    +
    +
    +

    The channel with the activation method is #gfwl-keys (for promotion and respect reasons, I won't link it here directly), but check out the server itself too, we're welcome to anyone!

    +

    Grand Theft RevIVal

    +
    +
    +
    +

    After you acquired the key and activated the game (again, this might take another 5-10 minutes, so get yourself a tea or something), you're ready to play!

    +
    +
    +

    Joining/Creating Lobbies#

    +

    Either use the in-game phone's Multiplayer - LIVE - Player Match option to join or create a lobby, or add friends in the Home overlay and join their lobbies instead.

    +

    Explanations of menu options:

    +
      +
    • Quick Match allows to join a random existing lobby of a specific gamemode.
    • +
    • Custom Match allows to find an existing lobby of any gamemode.
    • +
    • Create Match allows to create a lobby yourself.
    • +
    +

    If you're looking for people to play with, visit this Discord server:

    +

    Grand Theft RevIVal

    +
    +Port Forwarding +

    If you are having problems connecting to lobbies (kickbug, joining an empty lobby), you have to do manual port forwarding for the following ports in your router's settings (look online for instructions for your specific router or ISP, or contact your ISP):

    +
      +
    • TCP: 3074, 80, 88
    • +
    • UDP: 3074, 80, 88
    • +
    +

    If you can't perform port forwarding, use a VPN service instead. I recommend Mullvad VPN.

    +

    Alternatively, give up. Seriously, just give up and try other methods - some people are just stuck with the kickbug with no way to fight it.

    +
    +
    +

    Grand Theft Auto Connected#

    +
    +

    Compatibility

    +

    See this if using the Complete Edition.

    +

    GTA Connected only supports ZolikaPatch and ZMenuIV out of mods - other mods are simply not loaded (though, unless they replace game files, there's no need to remove them).

    +

    If you want to have Fusion Shaders, you can use V106 - but this version lacks a lot of things from the latest versions present in FusionFix; it's still better than nothing, though. Backup the shaders folder before installing.

    +
    +

    Second most popular multiplayer option, as it's the best way to experience GTA IV multiplayer without messing with GFWL while still having many of things intact from the official multiplayer.

    +

    Installation and usage#

    +
      +
    1. Go to the GTAConnected website.
    2. +
    3. Download the latest client.
    4. +
    5. Install GTAC-x.x.x.exe from the GTAC-x.x.x.zip archive.
    6. +
    7. Open the client.
    8. +
    9. Set the Game box to Grand Theft Auto IV.
    10. +
    11. In the Tools - Launcher Settings window, set your nickname. You can also set various settings as desired.
    12. +
    13. In the Tools - Game Settings window, set the path to your GTA IV install. You can also set various settings as you wish.
    14. +
    15. To join servers, simply double click on any server on the list.
    16. +
    +

    GTAConnected Discord Server

    +
    +

    HappinessMP#

    +
    +

    Compatibility

    +

    This client is only compatible with the Complete Edition and does not support any custom mods.

    +

    If using FusionFix, only this version is allowed.

    +
    +

    This client is somewhat similar to GTA Connected in essence, as you can host your own servers with your own scripts, but it aims to be compatible with the Complete Edition and requires Social Club to function rather than 1.0.8.0/1.0.7.0. It also lacks any of the official Rockstar gamemodes.

    +

    Installation and usage#

    +
      +
    1. Go to the HappinessMP website.
    2. +
    3. Press the Download button.
    4. +
    5. Install HappinessMP.exe.
    6. +
    7. Open the client.
    8. +
    9. In the settings, set your nickname.
    10. +
    11. To join servers, simply click on any server on the list.
    12. +
    +

    HappinessMP Discord Server

    +
    +

    Upcoming clients#

    +

    These clients are currently in development and are not available for play yet. They'll receive their own full-fledged sections when they're freely available for play. Support their development if you can!

    +
    +

    XLiveLessNess#

    +

    This project aims to be a replacement for GFWL. It technically works, but at the same time I couldn't get a lobby with more than just two players working with it just yet. Download the release, drop the files to the game folder, press HOME in-game, set your nickname, check the checkmarks and set the broadcast address to glitchyscripts.com:1100. Use the LAN function in-game instead of LIVE.

    +

    GitLab

    +
    + +

    Previous page
    Extras

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/extras/trainers/index.html b/ru/extras/trainers/index.html new file mode 100644 index 00000000..2079685d --- /dev/null +++ b/ru/extras/trainers/index.html @@ -0,0 +1,1445 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Trainers - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Trainers#

    +

    Trainers are essentially modmenus that add a lot of fun and useful options. They're also a better alternative to the very limited amount of cheatcodes the game offers. You may want one for multiplayer, but make sure your client/server allows them first.

    +
    +

    Both trainers require Ultimate ASI Loader.

    +

    Also please pick one - don't install both at once.

    +
    +
    +

    ZMenuIV#

    +
    +

    Compatibility

    +

    This trainer is not compatible with the Complete Edition.

    +
    +

    The most powerful and full-fledged trainer for GTA IV. Also includes a Chaos mod with streamer support, and features as absurd as GoldSrc physics.

    +

    Installation

    + +
      +
    1. Go to Zolika1351's Zone.
    2. +
    3. Scroll to the bottom of the page and download the latest version.
    4. +
    5. Extract ZMenuIV_vx.zip into the game folder
        +
      • Do not extract asi loader if not using xliveless, for developers, old version (has VR support), parachute support(all into game folder). Read the readme.txt for details on these folders.
      • +
      +
    6. +
    +

    Usage

    + +

    The default hotkeys are:

    +
      +
    • F7 to toggle menu.
    • +
    • Num 8, Num 2, Num 4, Num 6 for navigation, Num 5 to accept, Num 0 to go back.
    • +
    • Right Ctrl+Num 1 to fix the car.
    • +
    • Right Ctrl+Num 2 to flip the car.
    • +
    • ] (hold) to speed the car up.
    • +
    • F6 for Airbreak (noclip).
    • +
    • 0 for Always God Mode.
    • +
    • [ for Never Wanted.
    • +
    • ; for Unlimited Ammo.
    • +
    • = for Collision.
    • +
    • - for Resurrect.
    • +
    • M for Ragdoll.
    • +
    +

    You can add your own custom keybinds that can combine multiple options together. To do so, enable Custom Keybind Creator in Trainer Settings, highlight the desired option and press Left Ctrl+Enter to set the keybind up.

    +

    Edit the [Keybinds] section in ZMenuIV.ini to change existing keybinds.

    +
    +Setting up Numpad-less keybinds +

    Not everyone has a Numpad, I get it, 80% (and less) keyboards are cool and comfortable. Open ZMenuIV.ini and locate these lines:

    +
    [Keybinds]
    +AirbreakUp=87
    +AirbreakDn=83
    +AirbreakForward=104
    +AirbreakBack=98
    +AirbreakLeft=100
    +AirbreakRight=102
    +MenuUp=104
    +MenuDn=98
    +MenuLeft=100
    +MenuRight=102
    +MenuEnter=101
    +MenuBack=96
    +
    +

    and change them to:

    +
    [Keybinds]
    +AirbreakUp=32
    +AirbreakDn=160
    +AirbreakForward=87
    +AirbreakBack=83
    +AirbreakLeft=65
    +AirbreakRight=68
    +MenuUp=73
    +MenuDn=75
    +MenuLeft=74
    +MenuRight=76
    +MenuEnter=13
    +MenuBack=220
    +
    +

    Which will be:

    +
      +
    • IJKL for navigation. Enter to accept, \ to go back.
    • +
    • WASD for horizontal airbreak control, Space for going up and Left Shift for going down.
    • +
    +
    +
    +

    Liberty's Legacy#

    +
    +

    Compatibility

    +

    This trainer is compatible with the Complete Edition, as well as patches 1.0.8.0 and 1.0.7.0.

    +
    +

    This trainer is not as powerful as ZMenuIV, but still offers a lot of useful features. It's also the only one you can use with the Complete Edition, anyway. It's also compatible with controllers.

    +

    Installation

    + +
      +
    1. Install ScriptHookDotNet if you hadn't done so yourself outside of the guide.
    2. +
    3. Go to the GTAForums page.
    4. +
    5. Download the latest version.
    6. +
    7. Extract the Liberty's Legacy Trainer xxx.zip archive into the game folder.
    8. +
    +

    Usage

    + +

    The default hotkeys on keyboard&mouse are:

    +
      +
    • F11 to toggle menu.
    • +
    • Arrow keys for navigation, Enter to accept, Backspace to go back.
    • +
    +

    The controller binds ones are:

    +
      +
    • RB+X or R1+Square on controllers.
    • +
    • D-Pad for navigation, A or Cross to accept, B or Circle to go back.
    • +
    +

    Additional key bindings can be set by highlighting the desired option, pressing Left Ctrl+Enter and pressing the key you want to bind.

    +
    + +

    Previous page
    Extras

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/index.html b/ru/index.html new file mode 100644 index 00000000..63930fd6 --- /dev/null +++ b/ru/index.html @@ -0,0 +1,1408 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Вступление - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Вступление#

    +

    Guide logo

    +
    +

    Этот сайт не связан с Rockstar Games, Rockstar North или Take-Two Interactive. Выполнение шагов, описанных в этом руководстве, может нарушить лицензионное соглашение с конечным пользователем (EULA) Rockstar, и если вы обратитесь в службу поддержки, они могут отказать вам в помощи из-за нарушения EULA. Я не являюсь автором ни одной из следующих модификаций, поэтому о любых багах/недочетах/ошибках следует сообщать самим разработчикам.

    +
    +
    +

    Обзор#

    +

    Добро пожаловать на руководстве по моддингу Grand Theft Auto IV от Gillian, централизованное и модульное руководство по моддингу «все в одном».

    +

    Это руководство направлено на создание наилучшего ванильного-плюс опыта для GTA IV, но не ограничивается этим. Оно рассчитано на доступность для всех и помощи каждому, у кого есть свои требования к игре - будь то создание наилучшей сборки для сюжетки, создание условий для своей сборки, игра в мультиплеер, достижение наилучшей производительности или что-то еще.

    +
    +

    Это руководство стремится быть как можно более объективным, и старается предоставить только актуальную информацию для моддинга GTA IV. Все перечисленные моды и информация не отражают моего личного мнения о ком-либо, и я бы предпочел, чтобы это руководство не было склонно к предвзятым личным взглядам.

    +

    Тем не менее, здесь действует одно строгое правило: все упомянутые модификации должны сохранять оригинальное восприятие игры.

    +
    +
    +

    Предварительные требования#

    +
    +

    Чтобы это руководство было полезным для вас и чтобы вы могли получить поддержку в дальнейшем, убедитесь, что соблюдены следующие требования, а также мои дополнительные требования:.

    +
      +
    • Читайте все как есть и ничего не пропускайте.
    • +
    • Не используйте другие руководства, если они не упомянуты в этом. Если что-то упоминается в других руководствах, но не здесь, то, скорее всего, тут оно будет вам без толку.
    • +
    • Я не предоставляю помощь с использованием ENB и других графических улучшений (например, ICEnhancer). С ними вы сам-на-сам.
    • +
    +
    +
      +
    • Вы должны владеть игрой в Steam или Rockstar Games Launcher. Пиратские версии не получат гарантированной поддержки от меня в случае возникновения проблем. Другие версии могут работать, но я не даю никаких гарантий, и я не буду оказывать поддержку в случае возникновения проблем.
    • +
    • Операционная система: Ваш ПК должен быть на Windows 10 или 11 или любом современном дистрибутиве Linux, подходящего для игр. Более старые версии Windows могут и работать, но я не буду оказывать им поддержку. Системы ARM64 не тестировались.
    • +
    • +

      Железо: Ваш ПК должен соответствовать минимальным требованиям игры. Для лучших впечатлений он также должен соответствовать моим личным рекомендациям, приведенным ниже, которые обеспечивают приятный игровой процесс с модами при разрешении Full HD и частоте экрана 60 Гц. Масштабируйте вручную под свои нужды:

      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ЖелезоРекомендуетсяАльтернатива
      ЦПIntel Core i5-6600kRyzen 3 2200G
      ГПGTX 980/1060RX580, Intel Arc A310
      ОЗУ8 ГБ
      Место на диске30 ГБ (В идеале SSD)Если ставите моды вручную, ~70 ГБ для бэкапов
      +
    • +
    +
    +

    Навигация#

    +
    +
      +
    • +

      Переходите к подготовке чтобы подготовиться к моддингу игры и начать использовать руководство:

      +

      Следующая страница
      Подготовка

      +
    • +
    • +

      Мой сервер в Discord для поддержки и обсуждений (вы не получите от меня поддержку, если нарушите любое из вышеперечисленных условий):

      +

      Мой сервер в Discord

      +
    • +
    +
    +

    Если вас интересует только что-то конкретное, воспользуйтесь боковой панелью слева, чтобы выбрать интересующую вас страницу.

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/optimization/index.html b/ru/optimization/index.html new file mode 100644 index 00000000..69d98b48 --- /dev/null +++ b/ru/optimization/index.html @@ -0,0 +1,1523 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Оптимизация - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Оптимизация#

    +

    Мы все знаем, насколько ужасной была оптимизация игры на момент релиза. К сожалению, у нас до сих пор нет универсального решения - но это не значит, что мы не можем улучшить ситуацию.

    +
    +

    Что такое DXVK?#

    +

    DXVK это слой совместимости, который преобразует вызовы DirectX API в Vulkan.

    +

    Конечно, это не магия для улучшения производительности, а скорее слой совместимости для Linux, но состояние GTA IV на ПК настолько ужасное, что поможет что-угодно - хотя и не всем - за счет улучшения повышение производительности на стороне ЦП за счет лучшей обработки вызовов drawcall.

    +
    +Каких улучшений можно ждать от DXVK? +

    Сказать напрямую сложно, т.к. улучшения от DXVK полностью разные от одного ПК к другому. Есть вероятность, что DXVK вам вообще не поможет, если у вас ГП и так на сотню загружен. Так что единственный ответ - вы можете ожидать какого-то улучшения, если у вас нагрузка забита на ЦП.

    +

    Однако при определенных условиях можно ожидать чего-то сопоставимого с этим тестом: +

    +
    +
    +

    Предварительные требования#

    +
    +
      +
    • Убедитесь, что у вас последние драйвера.
    • +
    • Если используете Windows, отключите кэш шейдеров в Steam, который находится в Настройки - Загрузки.
    • +
    • Если используете Linux, пропустите страницу до настройки, т.к. Proton уже использьует DXVK.
    • +
    +
    +
    +

    Setup Utility (Автоматическая установка)#

    +

    С помощью этого софта вы можете установить DXVK и параметры запуска автоматически и без особых усилий. Она также позаботится о совместимости между FusionFix, ZolikaPatch и другими особенностями - вы можете прочитать список фич здесь.

    +
    +
      +
    • Вы должны использовать тулзу заново если вы позже совершите даунгрейд или установите FusionFix и/или ZolikaPatch.
    • +
    • Вы не можете, да и не должны, использовать эту тулзу на Linux.
    • +
    +
    +

    Использование#

    +
      +
    1. Перейдите на страницу последнего релиза.
    2. +
    3. Скачайте GTAIVSetupUtilityWPF.exe.
    4. +
    5. Запустите программу.
    6. +
    7. Нажмите Open и выберите вашу папку с игрой. Следуйте инструкциям в приложении, если появятся всплывающие окна.
    8. +
    9. Нажмите Install DXVK и Setup launch options в этой же последовательности.
        +
      • Если вы знаете что делаете, можете вручную поменять какие-либо переключатели. Обычно, в этом нет нужды.
      • +
      • Если появятся какие-либо проблемы, сообщите о них на Discord сервере.
      • +
      +
    10. +
    +

    После использования тулзы, вы можете спокойно приступить к оптимальным настройкам графики:

    +

    Следующая страница
    Второстепенная настройка: Оптимальные настройки графики

    +
    +

    Ручная установка#

    +
    +
    +
    +
    +Требования +
      +
    • Используйте эту версию если ваш ГП:
        +
      • NVIDIA: ГП серии Maxwell (серия GeForce 800) или новее, плюс GTX 745, GTX 750 и GTX 750 Ti.
          +
        • GeForce 810M, GeForce 820M, GeForce 825M, GTX 870M, GTX 880M, GeForce 910M и GeForce 920M не поддерживаются.
        • +
        +
      • +
      • AMD: ГП или встройка серии GCN4 (серии RX400 и Vega) или новее.
      • +
      • Intel: Встройка серии Skylake (6-е поколение ЦП Intel Core) или новее. Все ГП Arc поддерживаются. Выборочные встройки могут быть ограничены до Legacy.
      • +
      • Mac: Mac на Intel с поддержкой Vulkan 1.3 (проверьте вручную, открыв командную строку и ввев vulkaninfo).
      • +
      +
    • +
    +

    Если вы не входите в этот список, проверьте версию Legacy. Этот список применим только к Windows.

    +
    +
    +

    Инструкции

    +
      +
    1. Перейдите на страницу последнего релиза.
    2. +
    3. Скачайте архив dxvk-x.x.tar.gz.
        +
      • Если у вас ГП не от NVIDIA, dxvk-gplasync может быть использован для замены фризов на графические проблемы - обе проблемы временные. ГП от NVIDIA не затронуты.
      • +
      +
    4. +
    5. После скачивания, откройте архив и перейдите в папку dxvk-x.x\x32\.
    6. +
    7. Распакуйте d3d9.dll в папку с игрой.
    8. +
    +
    +
    +
    +Требования +
      +
    • Вы можете использовать эту версию если ваш ГП:
        +
      • NVIDIA: ГП серии Kepler (серия GeForce 600) или новее.
      • +
      • AMD: ГП или встройка серии GCN1 (серия Radeon HD 7700) или новее.
      • +
      • Intel: Встройка серии Skylake (6-е поколение ЦП Intel Core) или новее. Все ГП Arc поддерживаются. Выборочные встройки могут быть ограничены до DXVK 1.10.1.
      • +
      • Mac: Mac на Intel с поддержкой Vulkan 1.1 (проверьте вручную, открыв командную строку и ввев vulkaninfo).
      • +
      +
    • +
    +

    Если вы не входите в этот список, вы не можете использовать DXVK. Этот список применим только к Windows.

    +
    +
    +

    Инструкции

    +
      +
    1. Перейдите на страницу релиза 1.10.3 DXVK-async.
    2. +
    3. Скачайте архив dxvk-async-1.10.3.tar.gz.
        +
      • Если вы хотите фризы замисть графических проблем, используйте официальный DXVK 1.10.3 замисть async. *обе проблемы временные.
      • +
      +
    4. +
    5. После скачинваия, откройте архив и перейдите в папку dxvk-async-1.10.3\x32\
    6. +
    7. Распакуйте d3d9.dll в папку с игрой.
    8. +
    +
    +
    +
    +
    +Почему не dxgi.dll или другие файлы из папки? +

    Игра использует графический API Direct3D 9. Другие dll для Direct3D 10 и Direct3D 11.

    +

    В простых словах, игра не будет использовать любые другие файлы.

    +
    +
    +Почему x32? Моя система 64-х битная +

    В этом случае, ваша система не имеет значения. Сама игра рассчитана на использование 32-х битных библиотек, а не 64-х битных.

    +

    В простых словах, игра не будет использовать файлы из папки x64

    +
    +
    +Если возникли проблемы... +

    Попробуйте понизить версию на один или два релиза.

    +

    Если игра вообще не запускайте, ваш ГП не поддерживает последнюю версию. Используйте замисть этой версии версию Legacy.

    +

    Просмотрите исправление проблем.

    +
    +
    +

    Настройка#

    +

    Создайте файл dxvk.conf в папке с игрой и добавьте следующие строки с помощью любого текстового редактора:

    +
    # maxFrameLatency используется для предотвращения или уменьшения случайных пропусков кадров и фризов. Эта опция устанавливает более строгую максимальную задержку кадров.
    +d3d9.maxFrameLatency = 1
    +# presentInterval используется для включения VSync. Мы будем использовать его в пользу игрового VSync. Так мы получим лучшую нагрузку на процессор.
    +d3d9.presentInterval = 1
    +# numBackBuffers может дополнительно улучшить стабильность FPS при использовании Vsync. Эта опция переопределяет количество обратных буферов для цепочки подкачки Vulkan.
    +d3d9.numBackBuffers = 3
    +
    +

    Если используется dxvk-async или dxvk-gplasync, также добавьте следующие строки в тот же файл:

    +
    # Следующие опции используются для включения async
    +dxvk.enableAsync = true
    +dxvk.gplAsyncCache = true
    +
    +

    Для более детальной настройки вы можете посмотреть полный список доступных опций здесь.

    +
    +

    Навигация#

    +

    После выполнения оптимизации следует продолжить c второстепенной настройкой, чтобы завершить оптимизацию игры.

    +

    Предыдущая страница
    Даунгрейдинг
    Следующая страница
    Второстепенная настройка

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/preparation/index.html b/ru/preparation/index.html new file mode 100644 index 00000000..a4fedf72 --- /dev/null +++ b/ru/preparation/index.html @@ -0,0 +1,1439 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Подготовка - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Подготовка#

    +

    Чтобы начать моддинг игры, сначала нужно подготовить систему и установить саму игру. Мы также рассмотрим основные инструкции, терминологию и зависимости от модов, которые могут вам понадобиться в дальнейшем.

    +

    To mod the game, we first need to get your system ready for modding and install the game. We will also go over basic instructions, terminology and mod dependencies you may need later.

    +
    +

    Включение расширений файлов#

    +

    Отсутствие расширений файлов может вас запутать при просмотре всех файлов, которые вам нужно использовать при моддинге. Расширения файлов не включены по умолчанию в Windows, поэтому если вы еще не включили их, сделайте это сейчас:

    +
      +
    1. Откройте Проводник
    2. +
    3. Выберите вкладу Вид сверху
    4. +
    5. Наведите мышку над секцией Показывать и включите Расширения файлов из дополнительного меню. +Расширение файлов в проводнике
    6. +
    +
    +

    Программы#

    +

    Перед тем как начать играть и заниматься моддингом, необходимо установить некоторые программы:

    + +
    +

    Драйвера#

    +

    Настоятельно рекомендуется установить последние версии драйверов для достижения максимальной производительности и стабильности. Выберите производителя вашей видеокарты на переключителе для инструкций.

    +
    +
    +
    +
      +
    • Перейдите на официальный сайт.
    • +
    • Нажмите на Скачать бета-версию и откройте загруженный файл.
    • +
    • Следуйте инструкциям в приложении, чтобы установить драйвер.
    • +
    +
    +
    +
      +
    • Перейдите на официальный сайт.
    • +
    • Нажмите на Download Windows Drivers и откройте загруженный файл.
    • +
    • Следуйте инструкциям в приложении, чтобы установить драйвер.
        +
      • Выберите драйвер Adrenalin xx.x.x необязательно вместо ... рекомеднуется для получения последних драйверов.
      • +
      • Выберите Minimal Install вместо Full Install если вам не нужны дополнительные функции в Adrenalin.
      • +
      +
    • +
    +
    +
    +
      +
    • Перейдите на официальный сайт.
    • +
    • Нажмите на Download now и откройте загруженный файл.
    • +
    • Следуйте отображаемым инструкциям для установки драйверов. Игнорируйте предупреждения о драйверах OEM.
    • +
    +
    +
    +
    +
    +

    Терминология и подсазки#

    +
      +
    • Папка с игрой, или корневая папка tобычно ссылается на папку, где находится GTAIV.exe, которая находится в:
        +
      • Steam: Steam\steamapps\common\Grand Theft Auto IV\GTAIV
      • +
      • Rockstar Games Launcher: Rockstar Games\Grand Theft Auto IV
      • +
      +
    • +
    • Когда говорится распаковать папку, распаковывайте именно папку, а не ее содержимое (если не сказано обратное).
    • +
    • GFWL это аббревиатура для Games for Windows LIVE. GFWL это проприетарный сервис от Microsoft, который обеспечивает мультиплеер и DRM. XLiveless (иногда известный как xlive.dll) удаляет из игры GFWL. GFWL не используется в Complete Edition.
    • +
    +
    +

    Моддинг игры#

    +
    +

    Установка игры

    +
      +
    • Если вы ранее модифицировали игру или устанавливали сборки, настоятельно рекомендуется сначала удалить игру из лаунчера, а затем удалить все остатки, которые остались в корневой папке, так как лаунчеры их не удаляют.
    • +
    • Файлы с игрой не должны находиться в Рабочий стол или Документы или других системных папках во избежание проблем. Если не используется Steam, она также не должна находиться в C:\Program Files или C:\Program Files (x86).
    • +
    +
    +

    Я рекомендую открыть страницу исправление проблем на отдельной вкладке, чтобы обращаться к ней во время использования руководства, если у вас возникнут проблемы.

    +

    Если все вышеперечисленное выполнено, перейдите к одной из следующих страниц:

    +
    + +
    +

    Предыдущая страница
    Вступление

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/resources/credits/index.html b/ru/resources/credits/index.html new file mode 100644 index 00000000..5bd391b3 --- /dev/null +++ b/ru/resources/credits/index.html @@ -0,0 +1,1801 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Credits & Donation links - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Credits & Donation links#

    +

    This guide wouldn't be possible without all these amazing people!

    +

    ThirteenAG#

    +

    For their work on FusionFix, Ultimate ASI Loader, Project2DFX and Xbox Rain Droplets.

    +

    Ko-Fi Patreon PayPal Boosty

    +

    Parallellines#

    +

    For their work on Fusion Shaders and directly contributing to Various Fixes and Console Visuals.

    +

    AssaultKifle47#

    +

    For directly contributing to Fusion Shaders and FusionFix and their work on other mods.

    +

    RaphaelK12#

    +

    For directly contributing to Fusion Shaders and FusionFix.

    +

    Tomasak#

    +

    For directly contributing to FusionFix and Console Visuals.

    +

    sTc2201 and the rest of Fusion Team#

    +

    For directly contributing to FusionFix.

    +

    Attramet#

    +

    For their work on Various Fixes, More Visible Interiors, Restored Trees Position, Restored Pedestrians, Replaced Esperanto by Roman's Taxi in Cab Depot & Fixed Pedestrian Reactions and other mods and directly contributing to Console Visuals.

    +

    Magic_Al#

    +

    For their work on GTA V-like visualSettings.dat and directly contributing to FusionFix.

    +

    Valentyn_L#

    +

    For directly contributing to FusionFix and Various Fixes and their work on other mods.

    +

    _CP_#

    +

    For directly contributing to Fusion Shaders and Various Fixes.

    +

    Ash_735#

    +

    For their work on Higher Resolution Miscellaneous Pack, Vehicle Pack, Player Outfit Texture Fixes and Higher Res Radio Logos and directly contributing to Various Fixes and Console Visuals.

    +

    Ko-Fi CashApp

    +

    brokensymmetry#

    +

    For directly contributing to Various Fixes and Console Visuals.

    +

    MikhailRock, vavrinko, Philips_27, Olanov, Panzermann11#

    +

    For directly contributing to Various Fixes.

    +

    nastyyaboi#

    +

    For directly contributing to Console Visuals and other mods.

    +

    _AG#

    +

    For directly contributing to Console Visuals.

    +

    Zolika1351#

    +

    For their work on ZolikaPatch, IV Tweaker, ZMenuIV, Steam Achievements mod, IV-SDK which is what IV-SDK .NET is built off and other mods listed in mods, helping other modders, light assist with the guide and more!

    +

    ItsClockAndre#

    +

    For their work on the Downgrader Tool, IV-SDK .NET, Clonk's Coding Library, Libety Tweaks, Launcher, Project Thunder, VAmbience and other mods.

    +

    Patreon Ko-Fi PayPal

    +

    catsmackaroo#

    +

    For their work on Liberty Tweaks and other mods.

    +

    TheYoshiPunch#

    +

    For their work on Trilogy Characters Fixes and contributing to Various Fixes.

    +

    (Japan) GTA Love#

    +

    For their original work on Trilogy Characters Fixes.

    +

    DayL#

    +

    For their work on Project Glass.

    +

    iiCriminnaaL#

    +

    For their work on Responsive Plus, which was used for cargrp.dat and carcols.dat Fixes and other mods and directly contributing to Player Outfit Texture Fixes.

    +

    donnits#

    +

    For their work on Liberty Ferry Terminal - Waiting Sign Fix, Sugar Chomps - Separate Signs, Dodgy Doc - Higher Quality and GTA V decals

    +

    6135#

    +

    For their work on Luis' Helmet Reflections Fix, Luis' Bag Texture Fix and Johnny's Shoe Texture Fix.

    +

    Chunk#

    +

    For their work on Fidelity Popcycle.

    +

    Thundersmacker#

    +

    For their work on Resized Blista Compact.

    +

    B Dawg#

    +

    For their work on Improved Animations Pack and IV Bikers in Episodes voice sets fix.

    +

    C1aude_III#

    +

    For directly contributing to Improved Animations Pack.

    +

    GladiTek#

    +

    For their work on Reduced Trafic Screech (Audio Tweak).

    +

    _ys#

    +

    For their work on Fixed Suit Display in Perseus and Menu Art Fix.

    +

    const96b#

    +

    For their work on Liberty's Legacy.

    +

    Shvab, OpenIV developers, Cfx.re team, aru, HazardX and others#

    +

    For their work on modding tools. All those mods wouldn't be possible without them.

    +

    Jack Powell#

    +

    For continued development of GTA Connected.

    +

    Patreon

    +

    Other multiplayer clients developers#

    +

    Anyone who's contributing to the multiplayer clients - thank you for keeping GTA IV multiplayer alive!

    +

    DXVK Contributors#

    +

    DXVK wouldn't be as great as it is currently without all these people!

    +

    Mod Creators#

    +

    Their names are already listed next to their contributions in mods, they have done a lot too!

    +

    Discord Communities#

    +

    The communities of these discord servers helped me a lot with this guide:

    +

    Grand Theft RevIVal My Discord server

    +

    Me (Gillian)#

    +

    I've been working on this guide for way over 3 years (including the timespan I worked on the Steam version) and I would greatly appreciate any support! Every person who donated will be mentioned on this (or some other) page. Don't forget to support other modders too!

    +

    I also directly contributed to Libety Tweaks with a minor feature and made Pistol Iron Sight Fix.

    +

    Note: monobank will send the money to me directly.

    +

    monobank Patreon

    +

    Crypto options, if you cannot send money directly or prefer anonimity:

    +
      +
    • BTC: bc1qh72qjm3yxrkxkaarxqskrkxp5c4t2ldar5kef7
    • +
    • ETH: 0xa86252264878d342a0D29683e36F83f4a21eEEA2
    • +
    • USDT: TTrwmdEhEB84cBN2z4m36ZFgK4vHnXpKdG
    • +
    +

    Supporters#

    +

    These people made my life a tad bit easier with their monetary contribution:

    + +

    Special Thanks#

    +
      +
    • Kreato for his help to set up this website and heavily assisting the development of Setup Utility - check out his stuff if you like Linux tinkering.
    • +
    • Henrygame3 for his help as a designer during restructuring the guide.
    • +
    • PCGW Community for their contributions to the wiki, which helped me make this guide more complete (of course, I contributed as well).
    • +
    • Steam Community for actively supporting me during the making of the original guide on Steam.
    • +
    • Yilmaz, MauriceGS, Krooked_ and others from the Grand Theft RevIVal Discord server for providing information for the guide.
    • +
    • Material for MkDocs for providing this great environment for writing a guide.
    • +
    • GitHub Pages for providing a free hosting and domain, allowing the site to be hosted completely free and not require any ads or donations.
    • +
    • Rockstar Games and Rockstar North for making the game.
    • +
    +

    And everyone else#

    +

    Everyone else who helped me set up this guide, motivated me to keep going or even just shared this guide to your friends - thank you!

    +

    If you think you should be listed separately and I missed you by mistake, let me know on the Discord Server or GitHub Issues.

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/resources/mod-dependencies/index.html b/ru/resources/mod-dependencies/index.html new file mode 100644 index 00000000..605d391d --- /dev/null +++ b/ru/resources/mod-dependencies/index.html @@ -0,0 +1,1464 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Mod Dependencies - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Mod Dependencies#

    +
    +

    Ultimate ASI Loader#

    +

    UAL is used to load .asi mods (one of the most common types of GTA IV mods) into the game. It's multipurpose and can be used for many other games, but we will use it for GTA IV.

    +
    +

    Compatibility

    +

    Ultimate ASI Loader is compatible with all game versions.

    +
    +

    Installation

    + +
      +
    1. Go to the Releases page.
    2. +
    3. Download Ultimate-ASI-Loader.zip (not Ultimate-ASI-Loader_x64.zip).
    4. +
    5. Extract the archive into the game folder.
    6. +
    +
    +

    If using Linux...

    +

    Add WINEDLLOVERRIDES="dinput8=n,b" %command% to your Launch options:

    +
      +
    • Steam: Right click the game in your library, press Properties... and paste the line in the Launch options field.
    • +
    • Rockstar Games Launcher: Open the game page in your library, open settings and paste the line in the Launcher arguments field.
    • +
    • Windows shortcut: Right click on the game shortcut, click Properties and paste the line in Target field.
    • +
    +
    +
    +

    Getting rid of Games for Windows - LIVE (for retail patches)

    +

    This tool can be used to get rid of GFWL if you're not interested in official GFWL multiplayer and Xbox Live achievements. This will reduce the amount of hassle and setup you have to do.

    +
      +
    • Rename the dinput8.dll to xlive.dll
    • +
    +
    +
    +

    Modloading

    +

    Ultimate ASI Loader can be used for modloading purposes. See modloading for more details.

    +
    +
    +

    ScriptHookDotNet#

    +
    +

    Compatibility

    + +
    +

    ScriptHookDotNet is used to run scripts written in any .NET language. Not to be confused with IV-SDK .NET.

    +

    Installation

    + +
    +
    +
    +
      +
    1. Go to the latest release page.
    2. +
    3. Download scripthookdotnet_vx_x_x_x.zip.
    4. +
    5. Extract the archive into the game folder.
    6. +
    +
    +
    +
      +
    1. Go to the GTAForums page.
    2. +
    3. Click on DOWNLOAD the GTAIV .Net Script Hook for GTA IV to download the archive.
    4. +
    5. Extract the scripthookdotnet_v1_7_1_8.zip archive into the game folder.
    6. +
    +
    +
    +
      +
    1. Go to the v1.7.1.7a release.
    2. +
    3. Download scripthookdotnet_v1_7_1_7a.zip.
    4. +
    5. Extract the archive into the game folder.
    6. +
    +
    +
    +
    +
    +

    IV-SDK .NET#

    +
    +

    Compatibility

    + +
    +

    IV-SDK .NET is used to run scripts written in any .NET language. Not to be confused with ScriptHookDotNet.

    +

    Installation

    + +
      +
    1. Go to the Releases page.
    2. +
    3. Download IV-SDK.NET.vx_x_x.zip.
    4. +
    5. Extract the archive into the game folder.
    6. +
    +
    +Clonk's Coding Library +

    Some mods may require extensions from Clonk's Coding Library.

    +

    Installation

    +
      +
    • Go to the Releases page.
    • +
    • Download ClonkCodingLib.GTAIV.vx_x.zip.
    • +
    • Extract the archive into the game folder.
    • +
    +
    +
    +

    Getting ScriptHookDotNet and IV-SDK .NET to work on Linux#

    +

    By default, neither of those two will run on Linux. That can be fixed, however. These instructions will assume you are an experienced Linux user, so if you don't get something - Google it.

    +

    Instructions

    + +
      +
    1. Set up Proton-GE.
    2. +
    3. +

      Go to Proton-GE's gamefixes directory (location's different if using Flatpak):

      +
      ~/.local/share/Steam/compatibilitytools.d/GE-Proton9-10/protonfixes/gamefixes-steam/
      +
      +
    4. +
    5. +

      Open 12210.py in a text editor and add the following line at the end of the file:

      +
      util.protontricks('dotnet472')
      +
      +
    6. +
    7. +

      Force the game to use Proton-GE.

      +
    8. +
    9. Run the game and wait until .NET installs (may take from 5 to 30 minutes).
    10. +
    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/resources/openiv/index.html b/ru/resources/openiv/index.html new file mode 100644 index 00000000..4e2b1f10 --- /dev/null +++ b/ru/resources/openiv/index.html @@ -0,0 +1,1408 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + OpenIV - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    OpenIV#

    +

    OpenIV is a powerful tool for modifying, creating and extracting internal files. It can be used to create .img and .rpf files, which can be useful for modloading or mod creation. You may also, very rarely, come across mods packaged in .oiv - this tool allows you to install them as well.

    +
    +

    Installation#

    +
      +
    1. Go to the official website (mirror if the official server is down).
    2. +
    3. Press on Download now.
    4. +
    5. Install OpenIVSetup.exe.
    6. +
    +
    +

    If the official website is down, an offline installer is available here.

    +
    +
    +

    Usage#

    +
      +
    1. Open OpenIV.
    2. +
    3. In the Grand Theft Auto IV section, click on Windows.
    4. +
    5. If requested, set the directory with the game files.
    6. +
    +
    +

    Be sure to back up your files before making any changes.

    +
    +
    +

    Creating archives#

    +
    +

    This might be useful for you if you're making a mod/packing an existing mod for a modloader.

    +
    +
      +
    1. Click File - Create Archive and choose the type of the archive you need.
    2. +
    3. Choose the directory where you want to save the archive
    4. +
    5. Add and modify the files as you wish - changes are saved automatically.
    6. +
    +
    +

    Extracting internal files#

    +
      +
    1. Locate the files of interest in the explorer.
    2. +
    3. Double click to open an .img archive.
    4. +
    5. Select the files you want to export.
    6. +
    7. Right click - Extract.... Or right click on an empty space and click Extract all....
    8. +
    9. Pick a folder where to extract the files. Done!
    10. +
    +
    +

    Editing existing archives (installing mods to game files)#

    +
      +
    1. Locate the files of interest in the explorer (mods usually give the structure to follow).
    2. +
    3. Double click to open an .img archive.
    4. +
    5. Press Edit mode on top.
    6. +
    7. Modify the files as you wish - changes are saved automatically.
    8. +
    +
    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/resources/similar-guides-modpacks/index.html b/ru/resources/similar-guides-modpacks/index.html new file mode 100644 index 00000000..ef0d49cf --- /dev/null +++ b/ru/resources/similar-guides-modpacks/index.html @@ -0,0 +1,1367 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Similar Guides & Modpacks - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Similar Guides & Modpacks#

    +

    Do you want more guides & modpacks like this but for other games? I got you covered, as I also love modding! All of the following guides & modpacks have been personally used by me and I can vouch for their quality, as much as you can vouch for my guide!

    +

    Fallout: New Vegas (Viva New Vegas)#

    +

    Tale of Two Wastelands (The Best of Times)#

    +
      +
    • This is a mod to port Fallout 3 content to Fallout: New Vegas and merge the best of two worlds.
    • +
    +

    Fallout 4 (The Midnight Ride)#

    +

    Grand Theft Auto: San Andreas, Vice City, III and the Stories games (Classic Edition)#

    +
      +
    • If you're non-russian speaking, use Google Translate on the page and remove RUSSIFIER from modloader.
    • +
    • The modpack is modular, so just remove something if you don't like it.
    • +
    • The same person has modpacks for GTA Vice City, III and the Stories games, they're on the bottom of the Steam Guide.
    • +
    +

    Need for Speed: Most Wanted, Carbon (Classic Edition & Rework)#

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/ru/resources/troubleshooting/index.html b/ru/resources/troubleshooting/index.html new file mode 100644 index 00000000..047b8a90 --- /dev/null +++ b/ru/resources/troubleshooting/index.html @@ -0,0 +1,1659 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Troubleshooting - Gillian's GTA IV Modding Guide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + + + + +
    +
    +
    + + + + +
    +
    + + + + + + + + + + + + +

    Troubleshooting#

    +

    Anyone can have problems modding their favorite games, and GTA IV is extremely prone to them.

    +
    +

    Known issues without a solution#

    +

    I know about these issues, no need to report them to me, unless you know a solution.

    +
      +
    • Cutscenes freeze the game up if the game is out-of-focus for too long.
    • +
    • Car engine sounds occasionally appear and disappear (the solution involves bringing the taxi bug back - lower the traffic budget in GTAIV.EFLC.FusionFix.ini).
    • +
    • Social Club achievements cannot be acquired on downgraded versions.
    • +
    • Night shadows are limited (intended to reduce bugs).
    • +
    +
    +

    Known issues & solutions#

    +

    Boot issues#

    +
    +Asi Loader Error | Other Visual C++ issues +

    Make sure you installed the prerequisite software.

    +
    +
    +Error RMN60 on launch +

    Occurs on downgraded versions. Install ZolikaPatch (your antivirus may have removed it, aswell).

    +
    +
    +Error "SecuLauncher: failed to start application [2000]" on launch +
      +
    • Right click GTAIV.exe, click Properties, switch to the Compatibility tab and uncheck Run this program as an administrator. If it's already unchecked, see the next solution.
    • +
    • Make sure you installed the prerequisite software.
    • +
    • If even that doesn't solve the issue, install NET 3.5.
    • +
    +
    +
    +Game doesn't even show up +
      +
    • Make sure you don't have any duplicate mods - for example, you may have left FusionFix in both the plugins folder and the game folder. The game won't start in this case.
    • +
    • Reboot your PC.
    • +
    • Only launch a downgraded version from Steam or using PlayGTAIV.exe.
    • +
    • If using ZolikaPatch and FusionFix together, disable the incompatible options.
    • +
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem. Usually has something to do with .asi mods, so start there.
    • +
    +
    +
    +Game crashes immediately upon booting +
      +
    • Try turning off RivaTuner Statistics (with MSI Afterburner if using that) or any other software of this sort - overlays can mess the game up on boot.
    • +
    • On a downgraded version, try installing ZolikaPatch if you hadn't already.
    • +
    • Try deleting SETTINGS.cfg from C:/Users/(User)/AppData/Local/Rockstar Games/GTA IV/Settings.
    • +
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem. Usually has something to do with injectable mods, so start there.
    • +
    +
    +
    +

    Load screen issues#

    +
    +Load times are too long +
      +
    • Remove ColAccel if you had installed it outside of the guide.
    • +
    • Remove the -managed launch option.
    • +
    +
    +
    +Game loads endlessly +

    Set the -availablevidmem launch option (with a value of up to 3072.0).

    +
    +
    +Game loads directly into the savegame on startup, no menu +

    You can hold Left Shift on boot for when you need the menu.

    +

    If you want to completely disable the feature off, change Skip Menu to Off in Settings - Game if using FusionFix. If the feature still triggers, set SkipMenu to 0 in ZolikaPatch.ini.

    +
    +
    +

    Settings / performance issues#

    +
    +Game shows wrong VRAM value in settings +

    Set the -availablevidmem launch option (with a value of up to 3072.0).

    +
    +
    +The game does not start in desired resolution and there is no option to increase it in the settings +

    Set these launch options:

    +
      +
    • -width (horizontal resolution)
    • +
    • -height (vertical resolution)
    • +
    • -refreshrate (refresh rate)
    • +
    +

    Example:

    +
      +
    • -width 1920
    • +
    • -height 1080
    • +
    • -refreshrate 60
    • +
    +

    If that still doesn't help, add d3d9.forceAspectRatio = 16:9 to dxvk.conf. Change 16:9 with your exact aspect ratio if you don't use a 16:9 monitor.

    +

    Also, check for GPU driver updates.

    +
    +
    +Poor in-game performance +
      +
    • Make sure that DXVK is installed correctly.
    • +
    • Try using optimal game settings.
    • +
    • Make sure Shader Pre-caching is disabled in the Steam Settings - Downloads tab if using DXVK.
    • +
    • Make sure you don't have overlays such as Rainmeter running in fullscreen, they can tank your performance greatly.
    • +
    • Try lowering the graphics settings, in particular:
        +
      • Shadow Quality
      • +
      • Night Shadows
      • +
      • View/Detail Distance
      • +
      • Depth of Field
      • +
      • Motion Blur
      • +
      • Reflection Quality
      • +
      +
    • +
    +
    +
    +Constant unstable frame timing after a while of playing (i.e. a microstutter every 0.5 seconds) +

    Try disconnecting your gamepad. If the problem goes away, try enabling or disabling Steam Overlay. If the problem persists, try also enabling or disabling Steam Input alongside.

    +
    +
    +

    Crash issues#

    +
    +Game crashes during or shortly after load screen +
      +
    • Make sure you started with a clean install (after pressing Uninstall on Steam, manually wipe the remainders in the folder).
    • +
    • If you have added modded cars and saved them near your savehouse, your savefile is corrupted. Change the saved car using this software.
    • +
    • Your savefile may be corrupted. Try temporarily removing your savefiles and start a new game to see if the problem persists.
    • +
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem. Usually has something to do with script mods, so start there.
    • +
    +
    +
    +Game randomly crashes mid-game +
      +
    • If using ZolikaPatch and FusionFix together, disable the incompatible options.
    • +
    • Open ZolikaPatch.ini and change HighFPSSpeedupFix to 0.
    • +
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem.
    • +
    +
    +
    +

    Gameplay issues#

    +
    +Broken LODs / textures +
      +
    • Set the -availablevidmem launch option (with a value of up to 3072.0).
    • +
    • Tone down the amount of texture mods you're using - especially stuff like road textures.
    • +
    +
    +
    +Can't get into helicopter on last mission | Other timing-related issues at high FPS such as arcades being broken +
      +
    • Install FusionFix.
    • +
    • Some issues can only be omitted by setting a 60 or 30 FPS lock. Can be done in Settings - Graphics if using FusionFix.
    • +
    +
    +
    +Softlock on TLAD - Shifting Weight +

    Open ZolikaPatch.ini and set HighFPSSpeedupFix to 0. You can put it back to 1 after the mission.

    +
    +
    +Cannot access internet cafe computers or interact with entertainment assets (pool, bowling) +

    You can do one of the following:

    +
      +
    • Start a new game and forget about your existing save.
    • +
    • Remove LibertyTweaks files from IVSDKDotNet\scripts (if you don't use IV-SDK .NET for anything else, you can remove safely all files and folders starting with IVSDKDotNet from the game folder aswell).
    • +
    +
    +
    + Steam achievements disappeared after downgrading +

    Install SteamAchievements.

    +
    +
    +GFWL / Xbox Live achievements don't work +
      +
    • Remove SteamAchivements.asi - you can't use both at once.
    • +
    • Set TryToSkipAllErrors and VSyncFix to 0 in ZolikaPatch.ini.
    • +
    +
    +
    +

    Multiplayer issues#

    +
    +"Unable to connect to game session", "Unable to join a game you were kicked from" or joining an empty lobby in GFWL +

    You were either actually kicked by the host, or you're experiencing what's known as kickbug.

    +

    If you're indeed experiencing kickbug, you have to do manual port forwarding for the following ports in your router's settings and your system's firewall (look online for instructions for your specific router or ISP, or contact your ISP):

    +
      +
    • TCP: 3074, 80, 88
    • +
    • UDP: 3074, 80, 88
    • +
    +

    If you can't perform port forwarding, use a VPN service instead. I recommend Mullvad VPN.

    +

    Alternatively, give up. Seriously, just give up and try other multiplayer methods - some people are just stuck with the kickbug with no way to fight it.

    +
    +
    +GFWL overlay doesn't appear +
      +
    • You are using XLiveless (xlive.dll). Rename the file to dinput8.dll.
    • +
    • GFWL files are missing. You need GTAIV.exe.cdf, GTAIV.exe.cfg and GTAIV.exe.cat.
    • +
    • Try reinstalling GFWL.
    • +
    +
    +
    +"This session no longer exists" in GFWL +

    The license key you're using is also used by somebody else who's already in the lobby. Log out and find yourself a different key or re-run the keygen.

    +
    +
    +The game asks to sign in to Social Club in GFWL +

    You need ZolikaPatch.

    +
    +
    +"The downloadable content required for this autoload is not available" in GFWL +

    Restart the game.

    +
    +
    +"You have been disconnected because your computer is running too slowly" in GFWL +
      +
    • Enable Windowed, Borderless and disable Block on Focus Loss in Settings - Game if using FusionFix.
        +
      • If not using FusionFix, set BorderlessWindowed and DoNotPauseOnMinimize to 1 in ZolikaPatch.ini and add -windowed to your commandline.txt instead.
      • +
      +
    • +
    +
    +
    +"The profile could not be signed in to LIVE" in GFWL + +
    +
    +Error code: 0x80048821 or "Password contains special characters" in GFWL +

    Create a new app password and use that to log in.

    +
    +
    +Error code: 0x8007065b in GFWL +

    Only known solution is to use another account to sign in.

    +
    +
    +Error code: 0x80151906 in GFWL +

    Xbox LIVE servers are likely down at the moment, try again later.

    +
    +
    +Error code: 0x8015403A in GFWL +

    Try logging in on the website.

    +
    +
    +Error code: 0x80150001 in GFWL +

    GFWL only allows 100 friends maximum on the account. Reduce your number of friends on the account below 100, then try logging in again.

    +
    +
    +Getting kicked by the anticheat in GTAC +

    Your files are likely modified - make sure you're using a clean copy from Steam or Rockstar Games Launcher.

    +

    The only way to find out which file doesn't pass through is to ask somebody with access to server logs (normally, the owner).

    +
    +
    +

    Miscellaneous issues#

    +
    +I'm using the Rockstar Games Launcher and my files get constantly replaced +

    After downgrading or using the drag-and-drop archive for 1.0.8.0, avoid using the launcher and start the game with PlayGTAIV.exe instead.

    +

    Otherwise, if you want to use CE, avoid file replacements and use modloaders.

    +
    +
    +Game is using the wrong GPU (NVIDIA laptop) +

    Go to the NVIDIA Control Panel, 3D settings, add GTAIV.exe and select Max Performance in Power Plan Mode.

    +
    +
    +EFLC disappeared after downgrading +

    Make sure you are using ZolikaPatch and set LoadDLCs to 1 in ZolikaPatch.ini.

    +
    +
    +.NET mods don't work on Linux +

    See Getting ScriptHookDotNet and IV-SDK .NET to work on Linux

    +
    +
    +

    If you know an issue and a solution that I missed, let me know on the Discord server.

    + + + + + + + + + + + + + + + + + + +
    +
    + + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + + + \ No newline at end of file diff --git a/search/search_index.json b/search/search_index.json new file mode 100644 index 00000000..c5713086 --- /dev/null +++ b/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en","ru"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Introduction","text":"

    This website is not affiliated with Rockstar Games, Rockstar North, or Take-Two Interactive. Following the steps in this guide may violate Rockstar's End User License Agreement (EULA), and if you contact their support, they may refuse to help you because of the EULA violation. I am not the author of any of the following modifications, so any bugs/crashes/errors should be reported to the developers themselves.

    "},{"location":"#overview","title":"Overview","text":"

    Welcome to Gillian's Grand Theft Auto IV Modding Guide, a centralized and modular all-in-one modding guide.

    This guide aims to provide the best vanilla-faithful experience for GTA IV, but is not limited to that. It's meant to be accessible to everyone and to be able to help anyone who has their own specifics on how they want to experience the game - be it creating the best singleplayer experience, creating the best environment for manual modding, playing multiplayer, getting the best performance, or something else.

    This guide aims to be as unbiased as possible, and tries to provide only relevant information for modding GTA IV. Any mods or information listed do not reflect my personal opinion of anyone, and I'd prefer this guide to be free of personal bias.

    However, one strict rule is enforced: all modifications mentioned must preserve the original feel of the game.

    "},{"location":"#prerequisites","title":"Prerequisites","text":"

    In order for this guide to be useful to you, and for you to be eligible for support later, please make sure the following prerequisites are met, aswell as my additional requirements:

    • Read everything as is and don't skip anything.
    • Avoid using other guides unless they are mentioned in this one. If something is mentioned in other guides but not here, it is most likely not useful here.
    • I do not provide support for ENBs and other graphical enhancements (i.e. ICEnhancer). You're on your own for those.
    • You must own the game on Steam or the Rockstar Games Launcher. Pirated versions will not receive guaranteed support from me if any problems occur. Other versions may work, but no guarantee is given, nor will I provide support if any problems occur.
    • Operating system: Your PC should be running Windows 10 or 11 or any up-to-date Linux distribution suited for gaming. Older Windows versions may work, but I will not provide support for them. ARM64 systems have not been tested.
    • Hardware: Your PC must meet the minimum requirements of the game. For the best experience, it should also meet my personal recommended spec sheet below which ensures pleasant gameplay with mods at Full HD resolution and 60Hz screen. Scale manually for your own needs:

      Hardware Recommended Alternative CPU Intel Core i5-6600k Ryzen 3 2200G GPU GTX 980/1060 RX580, Intel Arc A310 RAM 8 GB Storage 30 GB (Ideally SSD) If manually modding, ~70 GB for backups
    "},{"location":"#navigation","title":"Navigation","text":"
    • Go to preparation to get ready to mod the game and start using the guide:

      Next page Preparation

    • My Discord server for support and discussion (you may not receive support from me if you violate any of the above conditions):

      My Discord server

    If you are only interested in something specific, use the sidebar on the left to select the page you are interested in.

    "},{"location":"additional-setup/","title":"Additional Setup","text":"
    • If you're here after installing the archive or using the Setup Utility on Windows, skip to optimal graphics settings:

      Optimal graphics settings

    If you're here after anything else (including installing the archive on Linux), start with the launch options.

    "},{"location":"additional-setup/#launch-options","title":"Launch options","text":"

    Setup Utility (Windows only)

    The Setup Utility can set up the launch options automatically for you.

    "},{"location":"additional-setup/#manual-instructions","title":"Manual instructions","text":"1.2.0.591.0.8.0
    1. Find the location for the game properties:
      • Steam: Right click the game in your library, press Properties... and locate the Launch options field.
      • Rockstar Games Launcher: Open the game page in your library, open settings and locate the Launcher arguments field.
      • Shortcut: Right click on the game shortcut, click Properties and locate the Target field.
    2. Paste the following:

      -norestrictions -nomemrestrict -managed\n
    3. If using FusionFix, enable Windowed and Borderless Windowed in Settings - Game in-game.

    1. In the game folder, create a commandline.txt file.
    2. Open the file.
    3. Insert the following lines to it:

      -norestrictions\n-nomemrestrict\n-windowed\n-managed\n
    4. If using FusionFix, -windowed can be removed in favor of the mod's in-game toggle.

    5. If using FusionFix and/or ZolikaPatch, enable Borderless Windowed in Settings - Game in-game or BorderlessWindowed in ZolikaPatch.ini depending on which of the two you install.
      • If you don't plan to install either of the mods, remove -windowed.
      • If using both, only enable the option in FusionFix.
    If using DXVK...
    • Remove -managed.
    • Add -availablevidmem 3072.0 to the list of options.
      • Replace the value with your VRAM value in MBs if you have less than 3 GB of VRAM. Don't make it higher, though.
      • If using a version older than 1.0.8.0, this value is broken. Experiment manually to get as close to 3072 MB as possible (the value may looks something like 60.0, 80.0 etc).
    • If the game doesn't allow you to use the correct resolution/refresh rate in the graphics settings, add -width, -height and -refreshrate with your monitor's native values.
      • If that still doesn't help, add d3d9.forceAspectRatio = 16:9 to dxvk.conf. Change 16:9 with your exact aspect ratio if you don't use a 16:9 monitor.
    • If using Windows, make sure you disabled Enable Shader Pre-caching in Settings - Downloads on Steam.
    Full list of available launch options

    You can use these options for intensive tweaking or debugging.

    Option Description -help Lists the available commands. -adapter Uses the specified screen adapter. -autoconfig Automatically adjusts the graphics settings depending on computer specifications. -availablevidmem Sets the amount of available physical video memory. -benchmark Launches the game in Benchmark mode and then quits it. -detailquality Sets the game's detail distance (0-99). -disableimposters Turns off imposter rendering for vehicles. -forcehighqualitymirrors Unknown. -forcer2vb Forces rendering to Vertex Buffer. -frameLimit Sets the setting for V-Sync. -framelockinwindow Forces framelock to work even in a window. -fullscreen Forces fullscreen mode. -fullspecaudio Forces high-end CPU audio footprint. -gpucount Allows to manually set the GPU count if query fails. -height Sets the vertical resolution. -managed Uses D3D runtime managed resources. -memrestrict Restricts the amount of available memory the game can use. -minspecaudio Forces low-end CPU audio footprint. -no_3GB Disables 3GB memory support on 32-bit OSes which have been set to allow games and applications to use that much memory. -noBlockOnLostFocus Prevents the game from blocking window updates during focus loss. -noprecache Disables precaching of resources. -nomemrestrict Disables memory restrictions. -nominimize Disables the ability to restore the game from minimize and altering resolutions (reduces system memory footprint). -norestrictions Disables restrictions on graphics settings. -noswapdelay Disables sleep delay before Present (disables the hard present stalls fix). -notimefix Disables Time Fix. -novblank Disables vertical blanking for V-Sync. -percentvidmem Percentage of video memory to be made available for the game. -refreshrate Sets the refresh rate (values set must be supported by the monitor used). -reserve Sets the amount of memory to be used by other programs. -reservedApp Sets the amount of memory to be left available within application space. -renderquality Adjusts anisotropic filtering (0-4). -safemode Sets the game's graphics to the lowest setting possible. -shadowdensity Adjusts night shadows (0-16). -shadowquality Sets the shadow quality (0-4). -stereo Enables stereo audio support. -texturequality Sets the game's texture quality (0-2). -unmanaged Uses application managed resources. -usedirectinput Allows DirectInput support alongside XInput support. -viewdistance Sets the game's view distance (0-99). -windowed Forces windowed mode. -width Sets the horizontal resolution."},{"location":"additional-setup/#optimal-graphics-settings","title":"Optimal graphics settings","text":"

    Following settings are targetted for the recommended spec sheet hardware.

    If you came here from the archive, use the FusionFix tab.

    VanillaFusionFixConsole-identical Setting Optimal setting Description Video Mode Your native resolution (max option, usually) This setting controls your monitor resolution or, if the -windowed launch option is set, the size of the game window. Aspect Ratio Auto This setting controls the aspect ratio of the screen relative to the resolution of your monitor. Texture Quality High This setting controls the resolution of all textures. Reflection Resolution Very High This setting controls the resolution of reflections (excluding water reflections). Water Quality Medium This setting controls the density and intensity of waves in the water, aswell as the resolution of water reflections.Medium is recommended as it is less extreme, more realistic and most similar to the intended look on the consoles. Shadow Quality High This setting controls the resolution and render distance of shadows.Medium and Low rely too much on static shadows, making them look ugly.Very High consumes too much performance for little gain and may appear broken at times. Night Shadows Medium This setting controls how many local lights (e.g. car headlights) can cast shadows. Each quality level adds 4 additional shadow maps. This setting does not affect the resolution of dynamic shadows.Setting it above Medium is known to create artifacts. Texture Filter Quality Anisotropic 16x This setting controls texture filtering. View Distance Between 21 and 70 This setting controls the main LOD render distance for things like buildings and vehicles. Also affects the render distance for props.Setting it above 21 causes pop-in, and above 70 is known to cause instability and artifacts, as well as a negative impact on framerate. Detail Distance Between 10 and 70 This setting controls the secondary LOD render distance for props detail.Setting it above 10 causes pop-in, and above 70 is known to cause instability and artifacts. Vehicle Density Below 70 This setting controls the number of cars on the road.Setting it too high can make driving too much of a hassle, especially with the unstable traffic AI, which can occasionally create random blocks even on straight roads and bridges. Definition OnOff if playing at 1280x720 This setting controls depth of field and motion blur (Off is enabled, On is disabled).If playing above 1280x720, Off ends up blurring the image on PC and effects simply do not scale up with resolution - due to that, keep it On unless you play at that resolution.Can be quickly toggled by pressing P button in-game. VSync Off if using DXVKOn This setting controls vertical synchronization.If using DXVK with configuration applied, keep the game's implementation Off in favor of DXVK's implementation. Also add d3d9.maxFrameRate = 60 to dxvk.conf or limit framerate with other methods you know to 60 or 30 to avoid timing-related issues. AMD Fluid Motion Frames (if DXVK is used) or Lossless Scaling can be used to artificially increase the framerate.

    Following options require FusionFix.

    Setting Optimal setting Description Video Mode Your native resolution (max option, usually) This setting controls your monitor resolution or, if Windowed is enabled, the size of the game window. Aspect Ratio Auto This setting controls the aspect ratio of the screen relative to the resolution of your monitor. Texture Quality High This setting controls the resolution of all textures. Reflection Resolution Very High This setting controls the resolution of reflections (excluding water reflections). Water Quality Very High This setting only controls the resolution of the water reflections when using FusionFix. Shadow Quality Very High This setting controls the resolution and render distance of shadows.If the performance loss is too high, use High instead.Further tuning available in GTAIV.EFLC.FusionFix.ini. Night Shadows Very High This setting controls how many local lights (e.g. car headlights) can cast shadows and the shadows' resolution.Further tuning available in GTAIV.EFLC.FusionFix.ini. Texture Filter Quality Anisotropic 16x This setting controls texture filtering. View Distance 25Up to 70 This setting controls the main LOD render distance for things like buildings and vehicles. Also affects the render distance for props.Setting it above 25 causes pop-in, and above 70 has diminishing results. Detail Distance 31Up to 70 This setting controls the secondary LOD render distance for props detail.Setting it above 31 causes pop-in, and above 70 has diminishing results. Vehicle Density Below 70100 with a custom popcycle (archive) This setting controls the number of cars on the road.Setting it too high can make driving too much of a hassle, especially with the unstable traffic AI, which can occasionally create random blocks even on straight roads and bridges. VSync Off if using DXVKOn This setting controls vertical synchronization.If using DXVK with configuration applied, keep the game's implementation Off in favor of DXVK's implementation. Shadow Filter Preference This setting controls how sharp the shadows look (as, in real life, shadows are pretty soft).Further tuning available in GTAIV.EFLC.FusionFix.ini. Sun Shafts Preference This setting controls custom-implemented godrays.Further tuning available in GTAIV.EFLC.FusionFix.ini. Anti-aliasing SMAA This setting controls the anti-aliasing method. FPS Limiter 6030 This setting controls the FPS limit.Recommended to set to 60 or 30 to avoid timing-related issues, although the story can be beaten above 60 if ignoring bugs. You may want to lower it to 30 for some minigames.AMD Fluid Motion Frames (if DXVK is used) or Lossless Scaling can be used to artificially increase the framerate.Further tuning available in GTAIV.EFLC.FusionFix.ini. FOV Preference This setting controls the game FOV in increments from the game's default value. Lamppost Shadows Preference This setting enables lamppost shadows at the cost of potential pop-in and reduced performance.

    Following options are located in the Display tab.

    Setting Optimal setting Description Motion Blur Preference This setting controls the motion blur effect. Bloom On This setting controls bloom. Console Gamma Preference This setting changes the gamma to match the console levels.The game was never supposed to be so whitewashed, so I recommend setting this to On. Screen Filter Default This setting allows you to switch the timecyc file to match different screen filters (e.g. to have TBoGT filters in IV and vice versa). Depth of Field Preference This setting controls the intensity of the distant blur and allows you to lock Depth of Field only to cutscenes. Tree Lighting Preference This setting controls the vegetation's ambient occlusion.Further tuning available in GTAIV.EFLC.FusionFix.ini. Tree Alpha Preference This setting controls the vegetation's \"transparency\".Further tuning available in GTAIV.EFLC.FusionFix.ini. Definition On This setting smoothes out stippled and dithered objects to reduce shimmering and aliasing.

    Following options are located in the Game tab.

    Setting Optimal setting Description Windowed On This setting controls whether game is in Exclusive Fullscreen mode or (Borderless) Windowed.Borderless is generally more recommended than Exclusive Fullscreen for multitasking purposes. Windowed Borderless On if using WindowedOff This setting controls if the game is a normal window or a Borderless Fullscreen window when the Windowed setting is On. Pause Game on Focus Loss Off This setting controls whether or not the game process will be locked when the window loses focus (alt-tabbing).You should set this to Off to avoid potential crashes.

    What are these settings?

    These settings are identical to the console versions of the game.

    I don't really recommend playing with these settings, so this list is more for referring to what settings are most authentic to the console version.

    Following options require FusionFix.

    Setting Console-identical setting Description Video Mode 1280x720 on X3601152x640 on PS3 This setting controls your monitor resolution or, if Windowed is enabled, the size of the game window. Texture Quality Medium This setting controls the resolution of all textures. Reflection Resolution Medium This setting controls the resolution of reflections (excluding water reflections). Water Quality Medium This setting only controls the resolution of the water reflections when using FusionFix. Shadow Quality Medium (?) This setting controls the resolution and render distance of shadows. Night Shadows Off This setting controls how many local lights (e.g. car headlights) can cast shadows and the shadows' resolution. Texture Filter Quality Tri-Linear This setting controls texture filtering. View Distance 21 This setting controls the main LOD render distance for things like buildings and vehicles. Also affects the render distance for props. Detail Distance 10 This setting controls the secondary LOD render distance for props detail. Vehicle Density 33 This setting controls the number of cars on the road. Sun Shafts Off This setting controls custom-implemented godrays. Anti-aliasing N/A This setting controls the anti-aliasing method.The game used SSAA 2x on the Xbox 360 and QAA on the PS3, neither of which are avaialable on PC. FPS Limiter 30 This setting controls the FPS limit. FOV Default (lowest) This setting controls the game FOV in increments from the game's default value. Lamppost Shadows On This setting enables lamppost shadows at the cost of potential pop-in and reduced performance.

    Following options are located in the Display tab.

    Setting Console-identical setting Description Motion Blur On This setting controls the motion blur effect. Bloom On This setting controls bloom. Console Gamma On This setting changes the gamma to match the console levels. Screen Filter Default This setting allows you to switch the timecyc file to match different screen filters (e.g. to have TBoGT filters in IV and vice versa). Depth of Field Very High (?) This setting controls the intensity of the distant blur and allows you to lock Depth of Field only to cutscenes. Tree Lighting Console This setting controls the vegetation's ambient occlusion. Tree Alpha Console This setting controls the vegetation's \"transparency\" Definition Off This setting smoothes out stippled and dithered objects to reduce shimmering and aliasing."},{"location":"additional-setup/#navigation","title":"Navigation","text":"
    • If you came here after installing the archive, congratulations - you are done here!

    • If you are going through the guide manually step-by-step, continue with Essential Modding.

    Previous page Optimization Next page Essential Modding

    "},{"location":"drag-and-drop-archive/#demo","title":"Demo","text":"

    TBA

    "},{"location":"drag-and-drop-archive/#navigation","title":"Navigation","text":"
    • After installing the archive, apply optimal graphics settings:

      Next page Additional Setup: Optimal graphics settings

    • If using Linux, also apply Launch Options manually:

      Next page Additional Setup: Launch options

    "},{"location":"enhancements/","title":"Recommended Enhancements","text":"

    Following mods are not essential to playing the game, but they're highly recommended to have a good experience or a good enough base for your own modpack.

    Ultimate ASI Loader and FusionFix are required for most mods. This page will assume you have both installed and will not remind you of it.

    Keep in mind there is a recommended load order at the bottom.

    "},{"location":"enhancements/#console-visuals","title":"Console Visuals","text":"

    This project ports select console visuals to the PC version.

    Installation
    1. Go to the latest release page.
    2. Download the archives of parts you wish to install.
    3. Extract the update folder from each archive into the game folder.
    "},{"location":"enhancements/#trilogy-characters-fixes","title":"Trilogy Characters Fixes","text":"

    This project aims to fix the inconsistency of characters between base GTA IV and EFLC. You can see the changelog on the GTAForums page.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    3. Extract the other folders into any empty folder.
    4. Copy the playerped.rpf archive from pc/models/cdimages/ to update/pc/models/cdimages/.
    5. Copy the playerped.rpf archive from TBoGT/pc/models/cdimages/ to update/TBoGT/pc/models/cdimages/.
    6. Copy the playerped.rpf archive from TLAD/pc/models/cdimages/ to update/TLAD/pc/models/cdimages/.
      • Skip the above 3 steps if you had already done it earlier with other mods.
    7. Open the copied archives with OpenIV.
    8. Copy the files from IV - playerped.rpf to the archive you copied in step 4.
    9. Copy the files from TBoGT - playerped.rpf to the archive you copied in step 5.
    10. Copy the files from TLAD - playerped.rpf to the archive you copied in step 6.
    "},{"location":"enhancements/#project2dfx","title":"Project2DFX","text":"

    This mod improves distant lights at night.

    Installation 1.2.0.591.0.8.0
    1. Go to the release page.
    2. Download IV.Project2DFX.zip.
    3. Extract the archive into the plugins folder.
      • Edit IVLodLights.ini if you don't like the default settings.
    1. Download the release page.
    2. Download IV.Project2DFX-PreCE.zip.
    3. Extract the archive into the plugins folder.
      • Edit IVLodLights.ini if you don't like the default settings.
    "},{"location":"enhancements/#xbox-rain-droplets","title":"Xbox Rain Droplets","text":"

    This mod adds nice water droplets on the screen.

    Installation
    1. Go to the release page.
    2. Download GTAIV.XboxRainDroplets.zip.
    3. Extract the archive into the plugins folder.
      • Edit GTAIV.XboxRainDroplets.ini if you don't like the default settings.
    "},{"location":"enhancements/#improved-animations-pack","title":"Improved Animations Pack","text":"

    This mod fixes various issues with the weapon animations.

    Installation
    1. Go to the GTAForums page.
    2. Download the Fusion Overloader version.
    3. Extract the update folder from the archive into the game folder.
    "},{"location":"enhancements/#higher-resolution-miscellaneous-pack","title":"Higher Resolution Miscellaneous Pack","text":"

    This mod improves the texture quality of minor assets.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"enhancements/#vehicle-pack","title":"Vehicle Pack","text":"

    This mod improves the texture quality of all vehicles in the game. Some textures are upscaled, some are taken from Max Payne 3 and GTA V.

    Installation
    1. Go to the GTAForums page.
    2. Download the Complete Edition version. All the 3 links are the same, so just download it once.
    3. Extract the update folder from the archive into the game folder.
    "},{"location":"enhancements/#higher-res-radio-logos-in-game-higher-res-radio-logos-menu","title":"Higher Res Radio Logos In-Game & Higher Res Radio Logos Menu","text":"

    This mod increases the quality of UI radio icons, as they are highly inconsistent with other UI assets in the game.

    Installation
    1. Go to the GTAForums page for Higher Res Radio Logos In-Game.
    2. Download IV/Vanilla TBOGT style (MEGA) and TLAD style (MEGA) via the desired mirror.
      • If you want TBoGT icons to be styled, also download New TBOGT style (MEGA).
    3. Go to the GTAForums page for Higher Res Logos Menu.
    4. Press on Right Here (MEGA) to download.
    5. Extract both archives in update/pc/textures/.
    "},{"location":"enhancements/#consistent-pump-shotgun","title":"Consistent Pump Shotgun","text":"

    Slight file shift to use the TLAD's gameplay and prop model for pump shotgun in IV and TBoGT.

    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"enhancements/#more-visible-interiors","title":"More Visible Interiors","text":"

    This mod makes interiors more visible from the outside, although comes with a downside of potential pop-in.

    Installation
    1. Go to the GTAForums page.
    2. Press DOWNLOAD.
    3. On Google Drive, download the Installation through Fusion Overloader folder.
    4. Extract update from the archive into the game folder.
    "},{"location":"enhancements/#project-glass","title":"Project Glass","text":"

    This mod adds cubemap reflections to what otherwise is just transparent glass.

    Installation
    1. Download this archive.
    2. Extract the update folder from the Files folder from the archive into the game folder.
    "},{"location":"enhancements/#restored-trees-position","title":"Restored Trees Position","text":"

    This mod restores trees that were present in the betas but removed in the final release, either accidentally or due to performance concerns.

    Installation
    1. Go to the GTAForums page.
    2. Press DOWNLOAD.
    3. Download the archive.
    4. From the Installation through Fusion Overloader folder in the archive, Extract the update folder from the archive into the game folder.
    "},{"location":"enhancements/#restored-pedestrians-restored-pedestrians-clothes","title":"Restored Pedestrians & Restored Pedestrians Clothes","text":"

    Restored Pedestrians restores pedestrians that were either unused or only present in the betas. Restored Pedestrians Clothes does the same, but with clothing variation.

    Installation
    1. Go to the GTAForums page.
    2. Press DOWNLOAD.
    3. Download the archive.
    4. From the Installation through Fusion Overloader folder in the archive, Extract the update folder from the archive into the game folder.
    "},{"location":"enhancements/#various-pedestrian-actions","title":"Various Pedestrian Actions","text":"

    This mod adds, corrects and completes unfinished actions for pedestrians.

    Installation
    1. Go to the GTAForums page.
    2. Press DOWNLOAD.
    3. Download the archive.
    4. From the Installation through Fusion Overloader folder in the archive, Extract the update folder from the archive into the game folder.
    "},{"location":"enhancements/#dodgy-doc-higher-quality-gta-v-decals","title":"Dodgy Doc - Higher Quality & GTA V decals","text":"

    These mods by donnits improve the quality of the Dodgy Doc in the Have a Heart mission and faithfully ports some higher quality decals from GTA V.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"enhancements/#gta-v-like-visualsettingsdat","title":"GTA V-like visualSettings.dat","text":"

    This mod changes some values of visualSettings.dat to be more similar to GTA V.

    Installation
    1. Download the file.
    2. Extract the file to update\\common\\data and update\\TBoGT\\common\\data in the game folder.
      • Optionally, restore rain specularity to 0.50 (with a text editor) if you don't like how the ground looks like hot glue during rain.
    "},{"location":"enhancements/#fidelity-popcycle","title":"Fidelity Popcycle","text":"

    A vanilla-friendly popcycle that makes the city life more varied and realistic.

    Installation
    1. Go to the NexusMods Files page.
    2. Download the desired version of the mod (Potential Grim version has slightly more variety).
    3. Open the downloaded archive, locate the Fusion overloader install folder in it.
    4. Extract the update folder from that folder into the game folder.
    "},{"location":"enhancements/#bullet-penetration-minimal-edition","title":"Bullet Penetration - Minimal Edition","text":"

    This mod allows bullets to penetrate glass like they do with car windshields.

    Installation
    1. Go to the GTAForums page.
    2. Press Download.
    3. Open the Bullet Penetration.zip archive and the Minimal Edition folder inside of it.
    4. Extract the common folder into the update folder.
    "},{"location":"enhancements/#resized-blista-compact","title":"Resized Blista Compact","text":"

    This mod resizes the Blista Compact to match the real life counterpart (Honda CR-X). It also fixes the base model, but that's taken care of by FusionFix already.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"enhancements/#liberty-tweaks","title":"Liberty Tweaks","text":"

    Compatibility

    • This mod only supports 1.0.7.0/1.0.8.0 at the moment.
    • If using Linux, see Getting ScriptHookDotNet and IV-SDK .NET to work on Linux.

    This project aims to improve various aspects of the game and it's general Quality of Life. You can see the features on the GTAForums page.

    Installation
    1. Install IV-SDK .NET and Clonk's Coding Library.
    2. In IVSDKDotNet/config.ini disable PauseExecutionWhenNotInFocus to prevent some issues.
    3. Go to the latest release page.
    4. Download the LibertyTweaksx.x.zip.
    5. Extract the contents of 1. Install into the game folder. Replace files if prompted.
    6. Configure IVSDKDotNet/scripts/LibertyTweaks.ini as you wish.
    "},{"location":"enhancements/#project-thunder","title":"Project Thunder","text":"

    Compatibility

    • This mod only supports 1.0.7.0/1.0.8.0 at the moment.
    • If using Linux, see Getting ScriptHookDotNet and IV-SDK .NET to work on Linux.

    This mod improves how thunder appears in-game, with actual lighting and improved atmosphere.

    Installation
    1. Install IV-SDK .NET and Clonk's Coding Library if you hadn't already.
    2. In IVSDKDotNet/config.ini disable PauseExecutionWhenNotInFocus to prevent some issues.
    3. Go to the latest release page.
    4. Download the ProjectThunder.vx.x.zip.
    5. Extract the contents of Files for the main directory into the game folder.
      • Do not extract the pc folder - rather, extract it to the update folder instead.
    6. Extract the RAIN file into any empty folder.
    7. Copy the resident.rpf archive from pc/audio/sfx/ to update/pc/audio/sfx/.
      • Skip this step if you installed \"Reduced Trafic Screech (Audio Tweak)\" previously.
    8. Open the copied archive with OpenIV.
    9. Using the file from the mod, replace the RAIN file in the RESIDENT folder inside the archive.
    10. Configure IVSDKDotNet/scripts/ProjectThunderIV.ini as you wish.
    "},{"location":"enhancements/#vambience","title":"VAmbience","text":"

    This mod adds background noise to the game, such as driving and shooting, alike to GTA V.

    Installation
    1. Go to the latest release page.
    2. Download the VAmbience.vx.x.zip.
    3. Extract the archive into the game folder. Replace files if needed.
    4. Configure VAmbience.ini as you wish.
    "},{"location":"enhancements/#recommended-load-order-and-img-limits","title":"Recommended load order and .img limits","text":"

    Please use the following load order (put the number before the folder names) after installing the mods above:

    1. Minor Mods (any other mod you don't see below is considered minor - their order doesn't matter that much but they should be loaded on top)
    2. Restored Trees Position
    3. Restored Pedestrians
    4. Higher Resolution Miscellaneous Pack
    5. Vehicle Mods (Vehicle Pack, Resized Blista etc.)
    6. Characters Fixes
    7. Console Visuals
    8. Project Glass
    9. More Visible Interiors
    10. Various Fixes
    11. FusionFix (leave it at the default folder name for ease of updating)

    You may want to manually merge some .img mods together using OpenIV to avoid going over the limit.

    You can see how far you are on the limits if you set ExtraInfo to 1 in FusionFix's GTAIV.EFLC.FusionFix.ini - it'll give the number on bottom of the screen in settings - but only on 1.2.0.58. If you are using an older version, you can only tell if you went over the limit by going into TBoGT and seeing whether traffic spawns (if it doesn't - you're over the limit and it's a sign to merge some mods).

    "},{"location":"enhancements/#navigation","title":"Navigation","text":"

    Previous page Essential Modding Next page Extras

    "},{"location":"optimization/","title":"Optimization","text":"

    We all know how horrible the optimization of the game was at release. Unfortunately, we still don't have a one-for-all solution - but that doesn't mean we can't make things better.

    "},{"location":"optimization/#what-is-dxvk","title":"What is DXVK?","text":"

    DXVK is a translation layer that converts DirectX API calls to Vulkan.

    While it isn't a magic tool to improve performance and is more of a compatibility tool for Linux, the condition of GTA IV on PC allows it to improve performance for most - but not everyone - mainly by improving CPU performance through better drawcall handling.

    What benefit can I expect from DXVK?

    It's hard to say, because DXVK's improvement can vary from device to device. There is a chance that DXVK will not improve performance for you if you're GPU-bound. So, the only answer is that you can expect some improvement if you are CPU-bound.

    Under right conditions, though, you can expect something comparable to this benchmark:

    "},{"location":"optimization/#prerequisites","title":"Prerequisites","text":"
    • Make sure your drivers are up-to-date.
    • If using Windows, disable Shader Pre-caching in Steam, located in Settings - Downloads.
    • If using Linux, skip to configuration, since Proton already uses DXVK.
    "},{"location":"optimization/#setup-utility-automatic-installation","title":"Setup Utility (Automatic installation)","text":"

    Using this tool you can set up DXVK and launch options easily and automatically. It also takes care of compatibility between FusionFix, ZolikaPatch and other specifics - you can read the feature list here.

    • You should re-run the tool if you downgrade or install FusionFix and/or ZolikaPatch later.
    • You cannot, nor should you, use the tool on Linux.
    "},{"location":"optimization/#usage","title":"Usage","text":"
    1. Go to the latest release page.
    2. Download GTAIVSetupUtilityWPF.exe.
    3. Run the tool.
    4. Press Open and select your game folder. Follow the in-app instructions if any pop-ups appear.
    5. Press Install DXVK and Setup launch options in sequence.
      • If experienced, you can manually configure the options. There is usually no need to, though.
      • If any issues occur, report them on the Discord server.

    After using the tool, you can freely skip to optimal graphics settings:

    Next page Additional Setup: Optimal graphics settings

    "},{"location":"optimization/#configuration","title":"Configuration","text":"

    Create a dxvk.conf file in the game folder and add following lines to the file with any text editor:

    # maxFrameLatency is used to avoid or reduce occasional frame skipping and stuttering. This option enforces a stricter maximum frame latency.\nd3d9.maxFrameLatency = 1\n# presentInterval is used to enable VSync. We're going to use it in favor of game's VSync implementation. This gives us better CPU overhead.\nd3d9.presentInterval = 1\n# numBackBuffers may further improve frametime stability while using Vsync. This option overrides back buffer count for the Vulkan swap chain.\nd3d9.numBackBuffers = 3\n

    If using dxvk-async or dxvk-gplasync, add the following lines to the same file:

    # Following options are used to enable async\ndxvk.enableAsync = true\ndxvk.gplAsyncCache = true\n

    For more in-depth configuration, you can see the full list of available options here.

    "},{"location":"optimization/#navigation","title":"Navigation","text":"

    After performing optimization, you should continue off with additional setup to finish optimizing the game.

    Previous page Downgrading Next page Additional Setup

    "},{"location":"preparation/","title":"Preparation","text":"

    To mod the game, we first need to get your system ready for modding and install the game. We will also go over basic instructions, terminology and mod dependencies you may need later.

    "},{"location":"preparation/#enabling-file-extensions","title":"Enabling File Extensions","text":"

    Not seeing file extensions can cause some confusion when looking at all the files you need to use when modding. File extensions are not turned on by default in Windows, so if you haven't turned them on yet - do it now:

    1. Open File Explorer
    2. Select the View tab at the top
    3. Hover the mouse over Show section and enable File name extensions from the submenu.
    "},{"location":"preparation/#software","title":"Software","text":"

    Some software should be installed before you can play and mod the game:

    • You need to have an archivator installed. I recommend NanaZip or 7-Zip.
    • Microsoft Visual C++ Redistributables (extract the archive and run install_all.bat).
    • Microsoft DirectX 9 (June 2010).
    "},{"location":"preparation/#drivers","title":"Drivers","text":"

    It is highly recommended to have latest drivers installed for best performance and stability. Select your GPU vendor on the selector for instructions.

    NVIDIAAMDIntel
    • Go to the official website.
    • Press Download Beta and open the downloaded executable.
    • Follow the in-app instructions to install the driver.
    • Go to the official website.
    • Press Download Windows Drivers and open the downloaded executable.
    • Follow the in-app instructions to install the driver.
      • Select Optional drivers over Recommended to get the latest drivers.
      • Select Minimal Install over Full Install if you don't need the extra features of the Adrenalin app.
    • Go to the official website.
    • Press Download now and open the downloaded executable.
    • Follow the displayed instructions to install the drivers. Ignore warnings about OEM drivers.
    "},{"location":"preparation/#terminology-and-tips","title":"Terminology and tips","text":"
    • Game, Installation or Root folder typically refers to the location where GTAIV.exe is located, which is at:
      • Steam: Steam\\steamapps\\common\\Grand Theft Auto IV\\GTAIV
      • Rockstar Games Launcher: Rockstar Games\\Grand Theft Auto IV
    • When told to extract a folder, extract the folder itself, not the contents (unless told otherwise).
    • GFWL is an abbreviation for Games for Windows LIVE. GFWL is a proprietary service made by Microsoft, which allows for multiplayer and DRM protection. XLiveless (sometimes known as xlive.dll) removes GFWL. GFWL is not used in Complete Edition.
    "},{"location":"preparation/#modding-the-game","title":"Modding the game","text":"

    Game installation

    • If you had previously modded the game or installed a modpack, it is highly recommended that you first uninstall the game from your launcher, then delete any leftovers that stayed in the root folder, as launchers don't remove those.
    • The game should not be located in Desktop or Documents or other default system folders to avoid issues. If not using Steam, it should also not be located in C:\\Program Files or C:\\Program Files (x86).

    I recommend opening the troubleshooting page on a separate tab to consult during the guide if you encounter issues.

    If the above is met, continue with one of the following pages:

    • If you have no need for the in-depth guides and only want the best singleplayer-only campaign experience:

      Next page Drag-and-Drop Archive

    • If you wish to go through the guide step-by-step yourself, start with downgrading:

      Next page Downgrading

    Previous page Introduction

    "},{"location":"downgrading/","title":"Downgrading","text":"

    Make sure the prerequisites are met and preparation was done. If you missed one of the steps, you may encounter issues when following the guide and won't receive support. This will not be repeated later.

    Introduction: Prerequisites Preparation

    "},{"location":"downgrading/#why-downgrade-the-radio","title":"Why downgrade the radio?","text":"

    In April 2018, over 50 radio station tracks were removed from the game due to expired licenses and replaced with unauthentic tracks instead.

    "},{"location":"downgrading/#why-downgrade-the-game","title":"Why downgrade the game?","text":"

    Over the years, the game received multiple game versions with many changes in-between. You may want to downgrade if one of the following applies to you:

    • You want to play official multiplayer.
    • You want to get rid of the DRM.
    • You have some specific mods in mind that don't support Complete Edition (i.e. Liberty Tweaks).
    • You want to mess around with graphical mods (i.e. ICEnhancer). I don't recommend nor support them, by the way.

    However, be aware that you will miss out on some of the latest fixes, as FusionFix does not fully support downgraded versions.

    "},{"location":"downgrading/#navigation","title":"Navigation","text":"

    To make things easier later, you should decide what do you want to downgrade right now between radio, the game version, or both.

    • Downgrading the radio (highly recommended to do first):

      Next pageDowngrading the radio

    • Downgrading the game and savefiles:

      Next pageDowngrading the game

    Previous page Preparation

    "},{"location":"downgrading/downgrading-the-game/","title":"Downgrading the game","text":""},{"location":"downgrading/downgrading-the-game/#game-versions","title":"Game versions","text":"

    The following is information about two versions we will focus on and their differences. 1.0.4.0 is for informational purposes only - we will not use it in the scope of this guide.

    Complete Edition (1.2.0.59)

    This is the latest version of the game, which you normally receive when installing the game on Steam or Rockstar Games Launcher. This version should be preferred if you want the best singleplayer campaign experience.

    Pros and cons

    It works out of the box. No modifications are required to launch the game. Best support for modern mods made after 2020, such as FusionFix. This ensures getting the most fixes possible when modding. Includes EFLC. Supports Steam and Social Club Achievements out of the box.

    Rockstar Games Launcher and it's DRM is required, which can be considered bloat for multiple reasons: the game launches for a minute longer and it does not provide anything but achievements to the game, to name two. Compatibility with old mods is not guaranteed. While some mods work, there are some that do not. They are not critical to fixing the game, though. Official multiplayer is removed and third-party experience is limited. No support for GFWL (Xbox Live) achievements.

    Retail version (1.0.8.0)

    This is the version of the game that existed before the Complete Edition. This version should only be preferred if you want to play the multiplayer, use specific mods you have in mind that don't support CE or want to play without DRM.

    Pros and cons

    Supports official multiplayer. DRM can be removed, making this version capable of DRM-free play. Best support for old mods made before 2020, such as Liberty Tweaks. If you don't know any yourself, don't consider this a point worth noting. Supports GFWL (Xbox Live) achievements, but at the cost of Steam Achievements.

    Limited compatibility with FusionFix, which will reduce how many fixes you actually get. To make multiplayer work, you have to set up GFWL, which is a lot of hassle. Although a third-party alternative exists. EFLC support can only be achieved through mods. Steam Achievements support can only be achieved with mods, which also disable GFWL achievements. No support for Social Club achievements.

    Retail version (1.0.4.0)

    This version is not going to be useful in the scope of the guide, but since it is a popular version in the community, it should be mentioned - and explained why won't we use it. This version should only be preferred for graphical mods, which receive no support on this guide.

    Pros and cons

    Best support for graphical mods. Slightly better average FPS. DRM can be removed, making this version capable of DRM-free play. Supports GFWL (Xbox Live) achievements.

    Little to none mod support. Awful framepacing. No EFLC support. No support for Steam or Social Club achievements.

    "},{"location":"downgrading/downgrading-the-game/#downgrading-instructions","title":"Downgrading instructions","text":"

    Which downgrader to choose?

    • Use ItsClockAndre's if you want to downgrade to 1.0.4.0 or if you have issues with mine.
    • Use mine for every other case.
    Gillian's GTA IV Downgrade UtilityItsClockAndre's Downgrader

    I've made my own downgrader for my own purposes as an alternative to ItsClockAndre's. This downgrader is lightweight in core and doesn't let you do broken downgrades regardless of how you choose to downgrade, thus why I recommend it.

    1. Go to the latest release page.
    2. Download GTAIVDowngradeUtilityWPF.zip.
    3. Extract the archive into any empty folder.
    4. Open GTAIVDowngradeUtilityWPF.exe.
    5. Press Open and select your game folder. Follow the in-app instructions if any pop-ups appear.
    6. Press Downgrade to downgrade the game. It will automatically download and install everything.
      • If you are experienced, feel free to change toggles manually. Only use Full downgrading if you absolutely require all the original files.
      • If any issues occur, report them on the Discord server.

    This downgrader replaces many more files than a typical user really needs, which may result in a slightly inferior experience. It also has an option to downgrade to 1.0.4.0, which my downgrader does not. It also allows you to make incompatible selections, so read the warnings carefully.

    1. Create an antivirus exclusion for your game folder. Don't worry, the tool is safe.
    2. Go to the GTAForums page and download the latest version.
    3. Extract the archive, run IVDowngrader.exe with elevated permissions.
    4. Follow the instructions in the application. Be sure to read the warnings at mod selection.
    • After downgrading, always launch the game via Steam or the PlayGTAIV.exe executable.
    • If using the Rockstar Games Launcher, do not launch the game via the launcher.
    • If you already had some launch options, they have to be moved to commandline.txt after downgrading.
    • Your game folder can also now be moved elsewhere if you desire so.
    Games for Windows - LIVE

    If you wish to play the official multiplayer or get Xbox Live achievements, enable GFWL support when downgrading and, after downgrading, refer to this page to set GFWL up.

    Don't enable the option if you don't want either though - you will make things harder for yourself. If you had accidentally enabled it, rename dinput8.dll to xlive.dll. If you don't have that file - install Ultimate ASI Loader manually.

    Setup Utility

    If you happened to come back here later after already using the Setup Utility on the Optimization or Additional Setup pages, consider re-running it.

    "},{"location":"downgrading/downgrading-the-game/#downgrading-the-savefile","title":"Downgrading the savefile","text":"

    If you've already started playing on the Complete Edition, you may want to downgrade your savefile.

    "},{"location":"downgrading/downgrading-the-game/#instructions","title":"Instructions","text":"
    1. First, locate your savefiles in Documents\\Rockstar Games\\GTA IV\\Profiles\\(id)\\. They're named in this format: SGTAxxx.
    2. Upload the one you want to convert to GTASnP.
    3. Expand the Modifications tab.
    4. Pick 1.0.8.0 IV / 1.1.3.0 EFLC and older in Downgrade Version.
    5. Pick the slot you want to save your savefile as. You'll download your converted savefile.
    6. Move it to C:\\Users\\(user)\\AppData\\Local\\Rockstar Games\\GTA IV\\savegames\\user_(id)\\.
    "},{"location":"downgrading/downgrading-the-game/#navigation","title":"Navigation","text":"

    Proceed with optimization after you are done with downgrading:

    Previous page Downgrading Next page Optimization

    "},{"location":"downgrading/downgrading-the-radio/","title":"Downgrading the radio","text":"

    If you had downgraded the game earlier, this downgrader will not work.

    Instructions

    1. Go to the latest release page.
    2. Download the Radio.Restoration.Mod.xx-xx-xxxx.zip.
    3. Extract the archive into into any empty folder.
    4. Run IVCERadioRestorer.exe and follow the in-app instructions.
      • You can additionally install this to partially restore the original TBoGT menu theme.
    What's the difference between only pre-cut Vladivostok and pre-cut plus post-cut?

    Rockstar added new tracks to the Vladivostok radio station to replace the cut ones. \"pre-cut plus post-cut\" keeps the new tracks alongside the restored cut ones, while \"only pre-cut songs\" cuts the new ones out, only keeping the restored ones.

    Navigation

    • If you also want to downgrade the game, proceed here:

      Next pageDowngrading the game

    • If you are done here, move on to optimization:

      Next pageOptimization

    Previous page Downgrading

    "},{"location":"essential-modding/","title":"Essential Modding","text":"

    In this category, you'll find mods that I think are essential to any GTA IV installation, along with instructions on how to install and configure them.

    Every mod onwards requires Ultimate ASI Loader.

    "},{"location":"essential-modding/#navigation","title":"Navigation","text":"
    • FusionFix aims to fix or address most graphical and gameplay issues and introduces new graphics options. Highly recommended to install first.

      Next page FusionFix

    • ZolikaPatch improves core multiplayer experience and is considered essential for downgraded versions. Don't install unless your game is downgraded.

      Next page ZolikaPatch

    • Various Fixes aims to fix or improve a large amount of map issues and textures.

      Next page Various Fixes

    • Additional Fixes is a list for all the minor fixes that don't make sense to be a whole separate page.

      Next page Additional Fixes (List)

    Previous page Additional Setup

    "},{"location":"essential-modding/additional-fixes/","title":"Additional Fixes (List)","text":"

    Following mods are fixes that I'd personally consider essential, as they don't have any downsides or incompatibilities to them.

    FusionFix is required for most mods. This page will assume you have it installed and will not remind you of it.

    "},{"location":"essential-modding/additional-fixes/#luis-helmet-reflections-fix","title":"Luis' Helmet Reflections Fix","text":"

    This mod fixes the bleak reflection on TBoGT player model's helmet.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"essential-modding/additional-fixes/#replaced-esperanto-by-romans-taxi-in-cab-depot-fixed-pedestrian-reactions","title":"Replaced Esperanto by Roman's Taxi in Cab Depot & Fixed Pedestrian Reactions","text":"

    These mods by Attramet fix some small inconsistencies that don't make much sense.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"essential-modding/additional-fixes/#liberty-ferry-terminal-waiting-sign-fix-sugar-chomps-separate-signs","title":"Liberty Ferry Terminal - Waiting Sign Fix & Sugar Chomps - Separate Signs","text":"

    These mods by donnits fix minor issues on the map.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"essential-modding/additional-fixes/#responsive-plus-cargrpdat-and-carcolsdat-fixes","title":"Responsive Plus - cargrp.dat and carcols.dat fixes","text":"

    These fix some oversights in the original files that prevent some cars from spawning as intended.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"essential-modding/additional-fixes/#fixed-suit-display-in-perseus","title":"Fixed Suit Display in Perseus","text":"

    This mod fixes an incorrect suit in Perseus, as you end up buying a different one from the one displayed.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"essential-modding/additional-fixes/#pistol-iron-sight-fix","title":"Pistol Iron Sight Fix","text":"

    This mod fixes an oversight in the pistol's model where the iron sight doesn't make any sense.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"essential-modding/additional-fixes/#menu-art-fix","title":"Menu Art Fix","text":"

    This mod fixes the lower-resolution backgrounds in EFLC menus.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    "},{"location":"essential-modding/additional-fixes/#iv-bikers-in-episodes-voice-sets-fix","title":"IV Bikers in Episodes voice sets fix","text":"

    This mod fixes the IV Bikers voicelines in EFLC.

    Installation
    1. Go to the GTAForums page.
    2. Press the Download link.
    3. Extract the BYeah.dat16 file to update/TLAD/pc/audio/config/.
    4. If the radio was downgraded by the guide, add the following after <game content=\"ascii\">ex:/pc/audio/config/epx_game.dat</game> in the e1_audio.xml file in the update/TLAD/ folder and an e2_audio.xml file in the update/TBoGT/ folder:
        <game content=\"ascii\">platform:/audio/config/BYeah.dat</game>\n
    • If the radio was not downgraded by the guide or those filse are missing, copy the same-named files from the vanilla TLAD|TBoGT/ folders to the update folder and do the same steps as above.
    "},{"location":"essential-modding/additional-fixes/#player-outfit-texture-fixes","title":"Player Outfit Texture Fixes","text":"

    This mod fixes green-ish textures on some character models.

    Installation
    1. Download this archive.
    2. Extract the update folder from the archive into the game folder.
    3. Extract the other folders into any empty folder.
    4. Copy the playerped.rpf archive from pc/models/cdimages/ to update/pc/models/cdimages/.
    5. Copy the playerped.rpf archive from TBoGT/pc/models/cdimages/ to update/TBoGT/pc/models/cdimages/.
    6. Open the copied archives with OpenIV.
    7. Copy the files from IV - playerped.rpf to the archive you copied in step 4.
    8. Copy the files from TBoGT - playerped.rpf to the archive you copied in step 5.
    "},{"location":"essential-modding/additional-fixes/#luis-bag-texture-fix","title":"Luis' Bag Texture Fix","text":"

    This mod adds missing normal and specular maps and improves texture quality on TBoGT player model's bag.

    Installation
    1. Download the mod.
    2. Extract the archive into any empty folder.
    3. Copy the playerped.rpf archive from TBoGT/pc/models/cdimages/ to update/TBoGT/pc/models/cdimages/.
      • Skip this step if you had already done it earlier with other mods.
    4. Open the copied archive with OpenIV.
    5. Using the files from the mod, replace the suse_002_u.wdr and suse_002_a_uni.wdr files in the archive.
    "},{"location":"essential-modding/additional-fixes/#johnnys-shoe-texture-fix","title":"Johnny's Shoe Texture Fix","text":"

    This mod adds missing normal and specular maps to the TLAD player model's shoes.

    Installation
    1. Download the mod.
    2. Extract the archive into any empty folder.
    3. Copy the playerped.rpf archive from TLAD/pc/models/cdimages/ to update/TLAD/pc/models/cdimages/.
    4. Open the copied archive with OpenIV.
    5. Using the file from the mod, replace the feet_000_u.wdr file in the archive.
    "},{"location":"essential-modding/additional-fixes/#reduced-trafic-screech-audio-tweak","title":"Reduced Trafic Screech (Audio Tweak)","text":"

    This mod changes the pitch of the traffic screech in Algonquin to match the real-life levels you'd usually hear in Times Square.

    Installation
    1. Download the mod.
    2. Extract the archive into any empty folder.
    3. Copy the resident.rpf archive from pc/audio/sfx/ to update/pc/audio/sfx/.
    4. Open the copied archive with OpenIV.
    5. Using the file from the mod, replace the AMB_RESIDENT file in the RESIDENT folder inside the archive.
    "},{"location":"essential-modding/additional-fixes/#img-limits","title":".img limits","text":"

    You may want to manually merge some .img mods together using OpenIV to avoid going over the limit.

    You can see how far you are on the limits if you set ExtraInfo to 1 in FusionFix's GTAIV.EFLC.FusionFix.ini - it'll give the number on bottom of the screen in settings - but only on 1.2.0.58. If you are using an older version, you can only tell if you went over the limit by going into TBoGT and seeing whether traffic spawns (if it doesn't - you're over the limit and it's a sign to merge some mods).

    "},{"location":"essential-modding/additional-fixes/#navigation","title":"Navigation","text":"

    Previous page Various Fixes Next page Recommended Enhancements

    "},{"location":"essential-modding/fusionfix/","title":"FusionFix","text":"

    Compatibility

    This mod is only officially supported on the Complete Edition, but with taking several things in account, you can also use it with 1.0.8.0.

    Support for non-CE versions may be axed at any time and the developers don't provide any support for them.

    This project aims to fix or address most graphical and gameplay issues and introduces new graphics options. You can read the changelog on the repository.

    Demo

    TBA

    Installation

    1.2.0.591.0.8.0
    1. Go to the latest release page.
    2. Download the GTAIV.EFLC.FusionFix.zip archive.
    3. Extract the archive into the game folder.
      • Consider re-running the Setup Utility if you used it on the Optimization or Additional Setup pages.
      • See the optimal graphics settings for FusionFix.

    Missing fixes

    Installing FusionFix on 1.0.8.0 compromises on some fixes, and you won't receive any official support from Fusion Team shall any issues arise. Keep that in mind.

    1. Go to the latest release page.
    2. Download GTAIV.EFLC.FusionFix.zip.
    3. Extract the archive into the game folder.
    4. Move the files out of the plugins folder into the game folder (don't ask me why, this tends to improve stability).
      • Rename dinput8.dll to xlive.dll if not using GFWL. Replace if needed.
      • Consider re-running the Setup Utility if you used it on the Optimization or Additional Setup pages.
      • See the optimal graphics settings for FusionFix.
      • Do not enable Check For Fusion Fix Updates.

    If using GFWL for multiplayer...

    Apply this patch on top.

    If only playing multiplayer, consider the multiplayer-only patch for increased stability instead.

    Modloading

    This mod can be used for modloading purposes. See Fusion Overloader for more details.

    Configuration

    Most of options are available in the in-game settings.

    You can edit GTAIV.EFLC.FusionFix.ini or GTAIV.EFLC.FusionFix.cfg if you need to edit the settings outside of the game for some reason. See the list of non-ingame options if you need to tweak them.

    Navigation

    • If your game is downgraded, continue with ZolikaPatch:

      Next page ZolikaPatch

    • If it isn't, continue with Various Fixes instead:

      Next page Various Fixes

    Previous page Essential Modding

    "},{"location":"essential-modding/various-fixes/","title":"Various Fixes","text":"

    This project aims to fix or improve a large amount of map issues and textures. You can see the changelog on the GTAForums page.

    Installation

    1. Make sure you have installed FusionFix.
    2. Go to the Google Drive folder.
    3. Download the Installation through Fusion Overloader.rar archive.
    4. Extract the update folder (not it's contents) into the game folder. Replace files if prompted.
      • You can also install some extras from the Optional Content.rar archive. Use the Installation through Fusion Overloader folder and do the same with the contents as step 4.
    Navigation

    Previous page ZolikaPatch Next page Additional Fixes (List)

    "},{"location":"essential-modding/zolikapatch/","title":"ZolikaPatch","text":"

    Compatibility

    This mod is compatible with all downgraded versions, but not Complete Edition. Skip this mod if you do not intend to downgrade - the improvements are negligible if you do not play the multiplayer.

    This project improves core multiplayer experience and is considered essential for downgraded versions. You can read the changelog here.

    Installation

    1. Go to Zolika1351's Zone.
    2. Scroll to the bottom of the page and download the latest version.
    3. Extract ZolikaPatch_vx_x.zip into the game folder.
      • Consider re-running the Setup Utility if you used it on the Optimization or Additional Setup pages.

    If using FusionFix...

    Setup Utility (Windows only)

    The Setup Utility can take care of this automatically for you.

    Open ZolikaPatch.ini and disable the following options:

    • BikePhoneAnimsFix
    • BorderlessWindowed
    • BuildingAlphaFix
    • BuildingDynamicShadows
    • CarDynamicShadowFix
    • CarPartsShadowFix
    • CutsceneFixes
    • DoNotPauseOnMinimize
    • DualVehicleHeadlights
    • EmissiveLerpFix
    • EpisodicVehicleSupport
    • EpisodicWeaponSupport
    • ForceCarHeadlightShadows
    • ForceDynamicShadowsEverywhere
    • ForceShadowsOnObjects
    • HighFPSBikePhysicsFix
    • HighFPSSpeedupFix
    • HighQualityReflections
    • ImprovedShaderStreaming
    • MouseFix
    • NewMemorySystem
    • NoLiveryLimit
    • OutOfCommissionFix
    • PoliceEpisodicWeaponSupport
    • RemoveBoundingBoxCulling
    • ReversingLightFix
    • SkipIntro
    • SkipMenu

    Note that this doesn't break or actually disable anything, as these features are reimplemented by FusionFix.

    What's GFWLProtectionDisabler2019.asi?

    This file is required to prevent GFWL from blocking .asi mods.

    Configuration

    Open ZolikaPatch.ini and configure the file as needed. All the options have explanations next to them.

    Navigation

    Previous page FusionFix Next page Various Fixes

    "},{"location":"extras/","title":"Extras","text":"

    This page has everything else that doesn't fit into earlier categories.

    "},{"location":"extras/#navigation","title":"Navigation","text":"
    • All known methods of playing multiplayer:

      Next page Multiplayer

    • Most popular trainers for messing around:

      Next page Trainers

    • A launcher for organizing multiple installs:

      Next page Launcher

    • Instructions for modloading to avoid replacing game files:

      Next page Modloading

    • A list of mods that didn't fit into previous pages:

      Next page Mods

    Previous page Recommended Enhancements

    "},{"location":"extras/launcher/","title":"Launcher","text":"

    Let's say you have an instance for your modded version of GTA IV and an instance for the slightly modded GFWL version. Gets annoying to switch between folders, doesn't it? ItsClockAndre's launcher comes to the rescue!

    Compatibility

    This launcher is theoretically compatible with the Complete Edition instances, but it's very problematic. You have to start the instance first, then once the Rockstar Games Launcher is open, close the IV Launcher and click Play on Steam, which will open the launcher again - from there, start the instance again without closing the Rockstar Games Launcher, and that should get you into the game.

    Frankly, I'd only recommend this launcher if you have no CE instances.

    Installation

    1. Go to the GTAForums page.
    2. Download the latest version. Read the notes on the page.
    3. Extract the GTAIVLauncher_vx.x.zip archive into any empty folder.
    4. Open GTAIVLauncher.exe with elevated permissions.
    5. Follow the in-app instructions to create and configure instances.

    How do I launch the launcher with Steam?

    1. Move the launcher files to the game folder.
    2. Rename PlayGTAIV.exe to something else.
    3. Rename GTAIVLauncher.exe to PlayGTAIV.exe.
    4. Rename GTAIVLauncher.exe.config to PlayGTAIV.exe.config.
    Navigation

    Previous page Extras

    "},{"location":"extras/modloading/","title":"Modloading","text":"

    A lot of mods require replacing game files with OpenIV. We can get around this by using a modloader.

    "},{"location":"extras/modloading/#fusion-overloader","title":"Fusion Overloader","text":"

    Compatibility

    Supports both the Complete Edition and 1.0.8.0/1.0.7.0 as long as the latest version of FusionFix is installed.

    This modloader works by loading the files from the update folder instead of the main game files, avoiding replacing the original files.

    "},{"location":"extras/modloading/#installing-mods-packaged-for-fusion-overloader","title":"Installing mods packaged for Fusion Overloader","text":"

    They're likely already packaged into an update folder. Just drop that folder into the root folder of the game.

    "},{"location":"extras/modloading/#installing-mods-with-files-that-go-into-img-archives","title":"Installing mods with files that go into .img archives\"","text":"

    Example: mod requires you to drop a file into the vehicles.img file.

    For mods that provide a whole .img archive

    If, say, the mod compiles the whole vehicles.img but only replaces one vehicle - you should only package that separate vehicle alone. While you can get away with not separating the modified files, you'll ruin compatibility with other mods. So please don't do that.

    If you want to separate modified files, you have to extract the mod's and vanilla archives into separate folders and compare the folders with something like WinMerge.

    1. Compile all the files that go into .img's into a single .img archive (or multiple if your archives exceed 1.5GB to avoid issues) using OpenIV.
    2. If you have files that should be only injected into TLAD, TBoGT or IV and not the other (i.e. a mod provides separate files for base IV and EFLC), compile a separate .img file for each subgame.
    3. Create a folder with the name of your mod in the update folder (create one in the game folder if it doesn't exist).
    4. Drop your compiled .img files into that folder.
    5. If you went through step 2, also create folders called IV, TLAD or TBoGT and drop the separate .img files there.

    Priority

    If you have multiple mods that replace same files and need a priority system, you can add a number or a symbol (such as !) before it's name.

    Whatever is higher on the folder when sorting by Name (ascending) - is higher on priority.

    Expected folder structure

    In this example, Mod 2 is supposed to be higher priority than Mod 1.

    • GTAIV\\
      • update\\
        • 1 Mod 2\\
          • Mod2.ForEveryGame.img
        • 2 Mod 1\\
          • Mod1.ForEveryGame.img
          • IV\\
            • Mod 1.IVOnly.img
          • TLAD\\
            • Mod 1.TLADOnly.img
          • TBoGT\\
            • Mod 1.TBoGTOnly.img
    "},{"location":"extras/modloading/#installing-mods-with-other-kind-of-files","title":"Installing mods with other kind of files","text":"

    Example: mod requires you to modify gta.dat.

    Example 2: mod requires you to modify playerped.rpf (copy the vanilla file over first and modify that).

    By other kind of files I mean literally any replacement files that go into pc, common, TLAD or TBoGT. As long as they're not .img files.

    Placing the files in the mod folders won't work.

    1. Recreate the folder structure from the vanilla one in update.
    2. Place the replacement files exactly as you would in vanilla, just do that in update.
    3. If the two mods replace same files, use a comparison tool (I like to use WinMerge) to merge them.
    Expected folder structure
    • GTAIV\\
      • update\\
        • common\\
          • data\\
            • WeaponInfo.xml
        • TLAD\\
          • common\\
            • data\\
              • WeaponInfo.xml
    "},{"location":"extras/modloading/#iv-tweaker","title":"IV Tweaker","text":"

    Compatibility

    Supports 1.0.8.0 and 1.0.7.0 only.

    This modloader has a few advantages over Fusion Overloader, such as being able to inject more files than just .img's while still having the originals intact. It also allows to increase limits.

    "},{"location":"extras/modloading/#installation","title":"Installation","text":"
    1. Go to Zolika1351's Zone
    2. Scroll to the bottom and download the archive.
    3. Extract the IVTweaker_vx.x.zip archive into the game folder.
    "},{"location":"extras/modloading/#installing-mods","title":"Installing mods","text":"

    For mods that provide a whole .img archive

    If, say, the mod compiles the whole vehicles.img but only replaces one vehicle - you should only package that separate vehicle alone. While you can get away with not separating the modified files, you'll ruin compatibility with other mods. So please don't do that.

    If you want to separate modified files, you have to extract the mod's and vanilla archives into separate folders and compare the folders with something like WinMerge.

    1. Compile all the files that go into .img's into a single .img archive (or multiple if your archives exceed 1.5GB to avoid issues) using OpenIV.
    2. If you have files that should be only injected into TLAD, TBoGT or IV and not the other, compile a separate .img file for them.
      • You can also omit the above two steps and just use raw files.
    3. Create a folder with the name of your mod in modloader.
    4. Drop your compiled .img or raw files into that folder.
    5. If you had to go through step 3, also create separate folders for IV, TLAD or TBoGT and drop the specific files there.
    6. You can add GTAIVOnly, TLADOnly or a TBoGTOnly if you don't need the mod to load in any other subgame. Otherwise, edit modloader.ini for priority and when the mods should or should not load.
    Expected folder structure
    • GTAIV\\
      • modloader\\
        • Mod1\\
          • IVAnims.ForEveryGame.img
          • WeaponInfo.xml
        • Mod1.TLADOnly\\
          • TLADOnly
          • TLADAnims.img
          • WeaponInfo.xml
        • Mod1.TBoGTOnly\\
          • TBoGTOnly
          • TBoGTAnims.img
    "},{"location":"extras/modloading/#configuring-the-modloader","title":"Configuring the modloader","text":"

    To configure the modloader, edit modloader.ini in modloader.

    • Make sure you set the correct priority so you don't have unwanted mods overriding other mods (higher number - higher priority).
    • Make sure mods that should only be injected to TBoGT or TLAD are disabled for IV (Ep0), mods that are only for TBoGT are disabled for TLAD (Ep1), and mods that are only for TLAD are disabled for TBoGT(Ep2).
      • This isn't necessary if you left GTAIVOnly, TLADOnly or TBoGTOnly files in the folders.
    Expected configuration

    Improved Animations mod will be used for an example.

    [DisabledMods]\nIVImprovedAnimations=0\nTLADImprovedAnimations=0\nTBoGTImprovedAnimations=0\n\n[Priorities]\nIVImprovedAnimations=1\nTLADImprovedAnimations=2\nTBoGTImprovedAnimations=2\n\n[DisabledForEp0]\nTLADImprovedAnimations=1\nTBoGTImprovedAnimations=1\n\n[DisabledForEp1]\nTBoGTImprovedAnimations=1\n\n[DisabledForEp2]\nTLADImprovedAnimations=1\n

    Increasing the limits

    To increase the limits, edit IVTweaker.ini.

    You may want to do that if you install mods that, for example, change vehicle textures, since you should increase the vehicle budget limits for those.

    "},{"location":"extras/modloading/#navigation","title":"Navigation","text":"

    Previous page Extras

    "},{"location":"extras/mods/","title":"Mods","text":"

    To finish this guide off, I will give a list of more mods that couldn't find their place in other parts of the guide due to their niche status, potential incompatibilites, or something else. I won't list instructions on how to install them, as mods usually list their own instructions, so it becomes redundant.

    • Be sure to back up your files before making any changes.
    • Use a modloader to avoid file replacements when asked to do so.
    • I'm only listing these mods - I don't intend for people to actually install all of them together. Pick what to install yourself.
    "},{"location":"extras/mods/#list-of-mods-larger-scale","title":"List of mods (larger-scale)","text":"Mod Developer(s) Details Solitude Chunk A vanilla+ timecycle mod. Addons for the Snow Mod Jumbo0, gr8man, Jantsu92, Alisa Bellucci, Flash, Alexkander_, Straysify, gdanbo and ThirteenAG Parts of Enhanced Snow Mod, Snow Mod Reaction Fix, Realistic Snow Sounds and Project2DFX bundled as addons for FusionFix's Snow Mode.Installation instructions are in the archive's Readme.txt. Enhanced Snow Mod Repack jumbo0, gr8man, Jantsu92, Alisa Belucci: Flash, Lover of Winter, Attramet, Straysify, gdanbo and Gillian Enhanced Snow Mod, Realistic Winter Trees, Snow Mod Reaction Fix, Realistic Snow Sounds and Beta Winter Pedestrians bundled for Fusion Overloader with my own custom tweaks.Installation: Backup update. Extract update to the game folder, replace files when prompted. Disable/remove FusionFix's GTATrees.img, Console Visuals' FusionConsolevegetation.img and road textures. Set Screen Filter to TBoGT. Don't play DLC's. Project Birds Internet Rob Adds birds to the skies. Liberty Rush Internet Rob, ItsClockAndre, donnits, Datalvarezguy Adds dozens of improvements, restored content, new traffic scenarios etc. The Actual Complete Edition C1aude_III This projects puts huge effort at merging IV and EFLC from weapons, vehicles and assets to the whole map. Replaces the following two mods. The Complete Liberty City ElYisusKing A massive project aimed to merge EFLC and IV maps. EFLC Vehicle Addon Pack 7urbo1ag, Gaming with SG Adds the EFLC vehicles to base IV. Enhanced Minor Characters Datalvarezguy Replaces vanilla peds in some missions with author's visions for the characters. Hi-Res Characters Primusideus Upscaled and higher resolution character textures. Potential Grim iiCriminnaaL Adds more danger to the streets of Liberty City and makes gangs play a bigger role in freeroam. The Hardcore Lost MC iiCriminnaaL Enhances the TLAD experience, changes bikers' appearance and AI."},{"location":"extras/mods/#list-of-mods-smaller-scale","title":"List of mods (smaller-scale)","text":"Mod Developer(s) Details Better Wardrobes Zolika1351 Improves the clunky wardrobe the game originally has - but unlocks all clothing from the start. UHD Vanilla Map and Radar ValentynL A high-resolution map for 1440p and 4K monitor users (may not look great on a 1080p or lower resolution monitor). Restored Trees Position Attramet Restores several trees that were only present in the beta version. High Quality Pigeons Supreme Dear Leader Improves the model and texture quality for pigeons. Outfit Enhancements iiCriminnaaL Several simple enhancements for some clothing. TV Restoration Attramet Highest quality TV videos. IV-Presence ItsClockAndre Adds a Discord Rich Presence."},{"location":"extras/mods/#workshops","title":"Workshops","text":"

    These workshops might have some mods or tools you may be interested in!

    Zolika1351's Zone ItsClockAndre's

    Donnit's Bakery Internet Rob's

    DayL's Modding Community

    "},{"location":"extras/mods/#making-mods","title":"Making mods","text":"

    If you're interested in making mods yourself, visit this Discord server:

    GTA IV Modding

    "},{"location":"extras/mods/#want-some-mod-to-be-listed","title":"Want some mod to be listed?","text":"

    Mention it on the Mod Suggestions thread on my Discord server:

    My Discord server

    "},{"location":"extras/mods/#afterword","title":"Afterword","text":"

    Thanks for using my guide for modding GTA IV!

    I sincerely hope that I have helped you achieve the perfect state of the game. This guide takes some time to maintain, and it couldn't have been done without all the great mods, so please consider chipping in for some authors: Credits.

    If you want more guides or modpacks like that, check out Similar Guides & Resources.

    "},{"location":"extras/mods/#navigation","title":"Navigation","text":"

    Previous page Extras

    "},{"location":"extras/multiplayer/","title":"Multiplayer","text":"

    GTA IV had an amazing multiplayer... and it still does! Rockstar Games has removed the multiplayer from the Complete Edition, but there are still plenty of ways to play even the official multiplayer (which, no, is not shut down). If you're tired of GTA Online and want something more classic, you should definitely check out GTA IV's multiplayer!

    "},{"location":"extras/multiplayer/#prerequisites-and-info","title":"Prerequisites and info","text":"
    • It's recommended to have ZolikaPatch set up for a better multiplayer experience. Make sure to configure ZolikaPatch.ini to use multiplayer functions.
    • Make sure to have RecoilFix set to 0 in GTAIV.EFLC.FusionFix.ini to avoid being at disadvantage with other players.
      • It is also recommended to use the GFWLMin patch for increased stability - but it cuts out singleplayer features.
    • Additionally, you may want to have ZMenuIV for the ability to create and participate in custom gamemodes.
    • You can also use this to unlock all multiplayer clothing for customization.
    • Avoid using overhaul, addition or replacement mods. They will put you, or others, at disadvantage and create instability.
    "},{"location":"extras/multiplayer/#games-for-windows-live","title":"Games for Windows LIVE","text":"

    This section also includes steps to configure GFWL for non-multiplayer use too. If you came here for that, just skip the \"Joining/Creating Lobbies\" section.

    Compatibility

    This method is only compatible with patches 1.0.7.0 and 1.0.8.0. It's also compatible with older patches, but they'll be put into separate lobbies. Downgrade if using the Complete Edition.

    Wine does not implement support for GFWL, so this method is not possible on Linux.

    The one and only official multiplayer method. And to that end, it's also the one that's most annoying to set up. If you don't want the hassle, check out GTAConnected first.

    "},{"location":"extras/multiplayer/#installation","title":"Installation","text":"

    This step is already taken care of by the downgraders if you chose to configure the install for GFWL. Skip it if you did.

    1. Make sure you don't have outdated installations of GFWL Marketplace and LIVE. Remove them if you do.
    2. Download latest Redistributables.
    3. Extract the archive in any empty folder.
    4. Run gfwllivesetup.exe and go through the installation.
    5. Install the Xbox App and sign into the Xbox account in it. This is required for signing in later.

    What's the Marketplace?

    While you do get the Marketplace, don't bother opening it or trying to make it work. Marketplace is not functional, but still must be installed for GFWL itself to work.

    "},{"location":"extras/multiplayer/#signing-in","title":"Signing in","text":"

    GFWL account is the same as a Microsoft or Xbox account. Create one if you don't already have one.

    1. Make sure you don't have xlive.dll in the game folder - rename it to dinput8.dll if you do.
    2. Open the game.
    3. Press the Home key on your keyboard. You'll be met with the startup screen.
      • If the startup screen did not appear or you're met with an error when opening the game, re-read the instructions from the start.
    4. Click Use Existing LIVE Profile to get the sign in screen.
    5. Uncheck Save my e-mail address and Save my e-mail address and password.
    6. Enter your Microsoft or Xbox account credentials to sign in.
      • Check Sign me in automatically. This will allow you to re-enable 2FA on your account, aswell.
      • If you have a password longer than 16 character or use 2FA, go to this website and use the generated \"App password\" to sign in.
    7. Make yourself a cup of tea or do whatever you want for the next 2-10 minutes. I'm not kidding - it might take that long to log in. Don't think it's stuck - it's not.
    8. The game will ask you for an activation key now:
    Activation

    We have several ways to activate the game.

    Buying a key or gameTrying out random keys onlineRevIVal's community method

    One of the ways to activate the game is to own a GFWL key. Although you'll share it with a lot of other people - it'll still be \"yours\", so to say.

    First, check if you already own any game with Legacy (5x5) activation - you may already own one of these games - check if their CD Key works for you.

    After you've made sure you don't have one already, you can:

    • Look for a GFWL key on some marketplaces.
    • Buy one of these Steam games, which are the only ones still selling a GFWL key as of December 2023. This may change in the future. Don't worry, you can refund the game after you purchase the key.

    After buying the game, go to the library, select the game and right click - Manage - CD keys and copy the key somewhere. You can refund it now.

    This one is pretty self-explanatory - just go around online and look for random GFWL keys - preferably with Legacy (5x5) activation - they have multiple uses, so you might get lucky. This Discord server might help you:

    Grand Theft RevIVal

    The channel with the activation method is #gfwl-keys (for promotion and respect reasons, I won't link it here directly), but check out the server itself too, we're welcome to anyone!

    Grand Theft RevIVal

    After you acquired the key and activated the game (again, this might take another 5-10 minutes, so get yourself a tea or something), you're ready to play!

    "},{"location":"extras/multiplayer/#joiningcreating-lobbies","title":"Joining/Creating Lobbies","text":"

    Either use the in-game phone's Multiplayer - LIVE - Player Match option to join or create a lobby, or add friends in the Home overlay and join their lobbies instead.

    Explanations of menu options:

    • Quick Match allows to join a random existing lobby of a specific gamemode.
    • Custom Match allows to find an existing lobby of any gamemode.
    • Create Match allows to create a lobby yourself.

    If you're looking for people to play with, visit this Discord server:

    Grand Theft RevIVal

    Port Forwarding

    If you are having problems connecting to lobbies (kickbug, joining an empty lobby), you have to do manual port forwarding for the following ports in your router's settings (look online for instructions for your specific router or ISP, or contact your ISP):

    • TCP: 3074, 80, 88
    • UDP: 3074, 80, 88

    If you can't perform port forwarding, use a VPN service instead. I recommend Mullvad VPN.

    Alternatively, give up. Seriously, just give up and try other methods - some people are just stuck with the kickbug with no way to fight it.

    "},{"location":"extras/multiplayer/#grand-theft-auto-connected","title":"Grand Theft Auto Connected","text":"

    Compatibility

    See this if using the Complete Edition.

    GTA Connected only supports ZolikaPatch and ZMenuIV out of mods - other mods are simply not loaded (though, unless they replace game files, there's no need to remove them).

    If you want to have Fusion Shaders, you can use V106 - but this version lacks a lot of things from the latest versions present in FusionFix; it's still better than nothing, though. Backup the shaders folder before installing.

    Second most popular multiplayer option, as it's the best way to experience GTA IV multiplayer without messing with GFWL while still having many of things intact from the official multiplayer.

    "},{"location":"extras/multiplayer/#installation-and-usage","title":"Installation and usage","text":"
    1. Go to the GTAConnected website.
    2. Download the latest client.
    3. Install GTAC-x.x.x.exe from the GTAC-x.x.x.zip archive.
    4. Open the client.
    5. Set the Game box to Grand Theft Auto IV.
    6. In the Tools - Launcher Settings window, set your nickname. You can also set various settings as desired.
    7. In the Tools - Game Settings window, set the path to your GTA IV install. You can also set various settings as you wish.
    8. To join servers, simply double click on any server on the list.

    GTAConnected Discord Server

    "},{"location":"extras/multiplayer/#happinessmp","title":"HappinessMP","text":"

    Compatibility

    This client is only compatible with the Complete Edition and does not support any custom mods.

    If using FusionFix, only this version is allowed.

    This client is somewhat similar to GTA Connected in essence, as you can host your own servers with your own scripts, but it aims to be compatible with the Complete Edition and requires Social Club to function rather than 1.0.8.0/1.0.7.0. It also lacks any of the official Rockstar gamemodes.

    "},{"location":"extras/multiplayer/#installation-and-usage_1","title":"Installation and usage","text":"
    1. Go to the HappinessMP website.
    2. Press the Download button.
    3. Install HappinessMP.exe.
    4. Open the client.
    5. In the settings, set your nickname.
    6. To join servers, simply click on any server on the list.

    HappinessMP Discord Server

    "},{"location":"extras/multiplayer/#upcoming-clients","title":"Upcoming clients","text":"

    These clients are currently in development and are not available for play yet. They'll receive their own full-fledged sections when they're freely available for play. Support their development if you can!

    "},{"location":"extras/multiplayer/#xlivelessness","title":"XLiveLessNess","text":"

    This project aims to be a replacement for GFWL. It technically works, but at the same time I couldn't get a lobby with more than just two players working with it just yet. Download the release, drop the files to the game folder, press HOME in-game, set your nickname, check the checkmarks and set the broadcast address to glitchyscripts.com:1100. Use the LAN function in-game instead of LIVE.

    GitLab

    "},{"location":"extras/multiplayer/#navigation","title":"Navigation","text":"

    Previous page Extras

    "},{"location":"extras/trainers/","title":"Trainers","text":"

    Trainers are essentially modmenus that add a lot of fun and useful options. They're also a better alternative to the very limited amount of cheatcodes the game offers. You may want one for multiplayer, but make sure your client/server allows them first.

    Both trainers require Ultimate ASI Loader.

    Also please pick one - don't install both at once.

    "},{"location":"extras/trainers/#zmenuiv","title":"ZMenuIV","text":"

    Compatibility

    This trainer is not compatible with the Complete Edition.

    The most powerful and full-fledged trainer for GTA IV. Also includes a Chaos mod with streamer support, and features as absurd as GoldSrc physics.

    Installation
    1. Go to Zolika1351's Zone.
    2. Scroll to the bottom of the page and download the latest version.
    3. Extract ZMenuIV_vx.zip into the game folder
      • Do not extract asi loader if not using xliveless, for developers, old version (has VR support), parachute support(all into game folder). Read the readme.txt for details on these folders.
    Usage

    The default hotkeys are:

    • F7 to toggle menu.
    • Num 8, Num 2, Num 4, Num 6 for navigation, Num 5 to accept, Num 0 to go back.
    • Right Ctrl+Num 1 to fix the car.
    • Right Ctrl+Num 2 to flip the car.
    • ] (hold) to speed the car up.
    • F6 for Airbreak (noclip).
    • 0 for Always God Mode.
    • [ for Never Wanted.
    • ; for Unlimited Ammo.
    • = for Collision.
    • - for Resurrect.
    • M for Ragdoll.

    You can add your own custom keybinds that can combine multiple options together. To do so, enable Custom Keybind Creator in Trainer Settings, highlight the desired option and press Left Ctrl+Enter to set the keybind up.

    Edit the [Keybinds] section in ZMenuIV.ini to change existing keybinds.

    Setting up Numpad-less keybinds

    Not everyone has a Numpad, I get it, 80% (and less) keyboards are cool and comfortable. Open ZMenuIV.ini and locate these lines:

    [Keybinds]\nAirbreakUp=87\nAirbreakDn=83\nAirbreakForward=104\nAirbreakBack=98\nAirbreakLeft=100\nAirbreakRight=102\nMenuUp=104\nMenuDn=98\nMenuLeft=100\nMenuRight=102\nMenuEnter=101\nMenuBack=96\n

    and change them to:

    [Keybinds]\nAirbreakUp=32\nAirbreakDn=160\nAirbreakForward=87\nAirbreakBack=83\nAirbreakLeft=65\nAirbreakRight=68\nMenuUp=73\nMenuDn=75\nMenuLeft=74\nMenuRight=76\nMenuEnter=13\nMenuBack=220\n

    Which will be:

    • IJKL for navigation. Enter to accept, \\ to go back.
    • WASD for horizontal airbreak control, Space for going up and Left Shift for going down.
    "},{"location":"extras/trainers/#libertys-legacy","title":"Liberty's Legacy","text":"

    Compatibility

    This trainer is compatible with the Complete Edition, as well as patches 1.0.8.0 and 1.0.7.0.

    This trainer is not as powerful as ZMenuIV, but still offers a lot of useful features. It's also the only one you can use with the Complete Edition, anyway. It's also compatible with controllers.

    Installation
    1. Install ScriptHookDotNet if you hadn't done so yourself outside of the guide.
    2. Go to the GTAForums page.
    3. Download the latest version.
    4. Extract the Liberty's Legacy Trainer xxx.zip archive into the game folder.
    Usage

    The default hotkeys on keyboard&mouse are:

    • F11 to toggle menu.
    • Arrow keys for navigation, Enter to accept, Backspace to go back.

    The controller binds ones are:

    • RB+X or R1+Square on controllers.
    • D-Pad for navigation, A or Cross to accept, B or Circle to go back.

    Additional key bindings can be set by highlighting the desired option, pressing Left Ctrl+Enter and pressing the key you want to bind.

    "},{"location":"extras/trainers/#navigation","title":"Navigation","text":"

    Previous page Extras

    "},{"location":"resources/credits/","title":"Credits & Donation links","text":"

    This guide wouldn't be possible without all these amazing people!

    "},{"location":"resources/credits/#thirteenag","title":"ThirteenAG","text":"

    For their work on FusionFix, Ultimate ASI Loader, Project2DFX and Xbox Rain Droplets.

    Ko-Fi Patreon PayPal Boosty

    "},{"location":"resources/credits/#parallellines","title":"Parallellines","text":"

    For their work on Fusion Shaders and directly contributing to Various Fixes and Console Visuals.

    "},{"location":"resources/credits/#assaultkifle47","title":"AssaultKifle47","text":"

    For directly contributing to Fusion Shaders and FusionFix and their work on other mods.

    "},{"location":"resources/credits/#raphaelk12","title":"RaphaelK12","text":"

    For directly contributing to Fusion Shaders and FusionFix.

    "},{"location":"resources/credits/#tomasak","title":"Tomasak","text":"

    For directly contributing to FusionFix and Console Visuals.

    "},{"location":"resources/credits/#stc2201-and-the-rest-of-fusion-team","title":"sTc2201 and the rest of Fusion Team","text":"

    For directly contributing to FusionFix.

    "},{"location":"resources/credits/#attramet","title":"Attramet","text":"

    For their work on Various Fixes, More Visible Interiors, Restored Trees Position, Restored Pedestrians, Replaced Esperanto by Roman's Taxi in Cab Depot & Fixed Pedestrian Reactions and other mods and directly contributing to Console Visuals.

    "},{"location":"resources/credits/#magic_al","title":"Magic_Al","text":"

    For their work on GTA V-like visualSettings.dat and directly contributing to FusionFix.

    "},{"location":"resources/credits/#valentyn_l","title":"Valentyn_L","text":"

    For directly contributing to FusionFix and Various Fixes and their work on other mods.

    "},{"location":"resources/credits/#_cp_","title":"_CP_","text":"

    For directly contributing to Fusion Shaders and Various Fixes.

    "},{"location":"resources/credits/#ash_735","title":"Ash_735","text":"

    For their work on Higher Resolution Miscellaneous Pack, Vehicle Pack, Player Outfit Texture Fixes and Higher Res Radio Logos and directly contributing to Various Fixes and Console Visuals.

    Ko-Fi CashApp

    "},{"location":"resources/credits/#brokensymmetry","title":"brokensymmetry","text":"

    For directly contributing to Various Fixes and Console Visuals.

    "},{"location":"resources/credits/#mikhailrock-vavrinko-philips_27-olanov-panzermann11","title":"MikhailRock, vavrinko, Philips_27, Olanov, Panzermann11","text":"

    For directly contributing to Various Fixes.

    "},{"location":"resources/credits/#nastyyaboi","title":"nastyyaboi","text":"

    For directly contributing to Console Visuals and other mods.

    "},{"location":"resources/credits/#_ag","title":"_AG","text":"

    For directly contributing to Console Visuals.

    "},{"location":"resources/credits/#zolika1351","title":"Zolika1351","text":"

    For their work on ZolikaPatch, IV Tweaker, ZMenuIV, Steam Achievements mod, IV-SDK which is what IV-SDK .NET is built off and other mods listed in mods, helping other modders, light assist with the guide and more!

    "},{"location":"resources/credits/#itsclockandre","title":"ItsClockAndre","text":"

    For their work on the Downgrader Tool, IV-SDK .NET, Clonk's Coding Library, Libety Tweaks, Launcher, Project Thunder, VAmbience and other mods.

    Patreon Ko-Fi PayPal

    "},{"location":"resources/credits/#catsmackaroo","title":"catsmackaroo","text":"

    For their work on Liberty Tweaks and other mods.

    "},{"location":"resources/credits/#theyoshipunch","title":"TheYoshiPunch","text":"

    For their work on Trilogy Characters Fixes and contributing to Various Fixes.

    "},{"location":"resources/credits/#japan-gta-love","title":"(Japan) GTA Love","text":"

    For their original work on Trilogy Characters Fixes.

    "},{"location":"resources/credits/#dayl","title":"DayL","text":"

    For their work on Project Glass.

    "},{"location":"resources/credits/#iicriminnaal","title":"iiCriminnaaL","text":"

    For their work on Responsive Plus, which was used for cargrp.dat and carcols.dat Fixes and other mods and directly contributing to Player Outfit Texture Fixes.

    "},{"location":"resources/credits/#donnits","title":"donnits","text":"

    For their work on Liberty Ferry Terminal - Waiting Sign Fix, Sugar Chomps - Separate Signs, Dodgy Doc - Higher Quality and GTA V decals

    "},{"location":"resources/credits/#6135","title":"6135","text":"

    For their work on Luis' Helmet Reflections Fix, Luis' Bag Texture Fix and Johnny's Shoe Texture Fix.

    "},{"location":"resources/credits/#chunk","title":"Chunk","text":"

    For their work on Fidelity Popcycle.

    "},{"location":"resources/credits/#thundersmacker","title":"Thundersmacker","text":"

    For their work on Resized Blista Compact.

    "},{"location":"resources/credits/#b-dawg","title":"B Dawg","text":"

    For their work on Improved Animations Pack and IV Bikers in Episodes voice sets fix.

    "},{"location":"resources/credits/#c1aude_iii","title":"C1aude_III","text":"

    For directly contributing to Improved Animations Pack.

    "},{"location":"resources/credits/#gladitek","title":"GladiTek","text":"

    For their work on Reduced Trafic Screech (Audio Tweak).

    "},{"location":"resources/credits/#_ys","title":"_ys","text":"

    For their work on Fixed Suit Display in Perseus and Menu Art Fix.

    "},{"location":"resources/credits/#const96b","title":"const96b","text":"

    For their work on Liberty's Legacy.

    "},{"location":"resources/credits/#shvab-openiv-developers-cfxre-team-aru-hazardx-and-others","title":"Shvab, OpenIV developers, Cfx.re team, aru, HazardX and others","text":"

    For their work on modding tools. All those mods wouldn't be possible without them.

    "},{"location":"resources/credits/#jack-powell","title":"Jack Powell","text":"

    For continued development of GTA Connected.

    Patreon

    "},{"location":"resources/credits/#other-multiplayer-clients-developers","title":"Other multiplayer clients developers","text":"

    Anyone who's contributing to the multiplayer clients - thank you for keeping GTA IV multiplayer alive!

    "},{"location":"resources/credits/#dxvk-contributors","title":"DXVK Contributors","text":"

    DXVK wouldn't be as great as it is currently without all these people!

    "},{"location":"resources/credits/#mod-creators","title":"Mod Creators","text":"

    Their names are already listed next to their contributions in mods, they have done a lot too!

    "},{"location":"resources/credits/#discord-communities","title":"Discord Communities","text":"

    The communities of these discord servers helped me a lot with this guide:

    Grand Theft RevIVal My Discord server

    "},{"location":"resources/credits/#me-gillian","title":"Me (Gillian)","text":"

    I've been working on this guide for way over 3 years (including the timespan I worked on the Steam version) and I would greatly appreciate any support! Every person who donated will be mentioned on this (or some other) page. Don't forget to support other modders too!

    I also directly contributed to Libety Tweaks with a minor feature and made Pistol Iron Sight Fix.

    Note: monobank will send the money to me directly.

    monobank Patreon

    Crypto options, if you cannot send money directly or prefer anonimity:

    • BTC: bc1qh72qjm3yxrkxkaarxqskrkxp5c4t2ldar5kef7
    • ETH: 0xa86252264878d342a0D29683e36F83f4a21eEEA2
    • USDT: TTrwmdEhEB84cBN2z4m36ZFgK4vHnXpKdG
    "},{"location":"resources/credits/#supporters","title":"Supporters","text":"

    These people made my life a tad bit easier with their monetary contribution:

    • cammy
    • ShadowSorcery
    • akirataguchi115
    • bb350
    • Thies
    "},{"location":"resources/credits/#special-thanks","title":"Special Thanks","text":"
    • Kreato for his help to set up this website and heavily assisting the development of Setup Utility - check out his stuff if you like Linux tinkering.
    • Henrygame3 for his help as a designer during restructuring the guide.
    • PCGW Community for their contributions to the wiki, which helped me make this guide more complete (of course, I contributed as well).
    • Steam Community for actively supporting me during the making of the original guide on Steam.
    • Yilmaz, MauriceGS, Krooked_ and others from the Grand Theft RevIVal Discord server for providing information for the guide.
    • Material for MkDocs for providing this great environment for writing a guide.
    • GitHub Pages for providing a free hosting and domain, allowing the site to be hosted completely free and not require any ads or donations.
    • Rockstar Games and Rockstar North for making the game.
    "},{"location":"resources/credits/#and-everyone-else","title":"And everyone else","text":"

    Everyone else who helped me set up this guide, motivated me to keep going or even just shared this guide to your friends - thank you!

    If you think you should be listed separately and I missed you by mistake, let me know on the Discord Server or GitHub Issues.

    "},{"location":"resources/mod-dependencies/","title":"Mod Dependencies","text":""},{"location":"resources/mod-dependencies/#ultimate-asi-loader","title":"Ultimate ASI Loader","text":"

    UAL is used to load .asi mods (one of the most common types of GTA IV mods) into the game. It's multipurpose and can be used for many other games, but we will use it for GTA IV.

    Compatibility

    Ultimate ASI Loader is compatible with all game versions.

    Installation
    1. Go to the latest release page.
    2. Download Ultimate-ASI-Loader.zip (not Ultimate-ASI-Loader_x64.zip).
    3. Extract the archive into the game folder.

    If using Linux...

    Add WINEDLLOVERRIDES=\"dinput8=n,b\" %command% to your Launch options:

    • Steam: Right click the game in your library, press Properties... and paste the line in the Launch options field.
    • Rockstar Games Launcher: Open the game page in your library, open settings and paste the line in the Launcher arguments field.
    • Windows shortcut: Right click on the game shortcut, click Properties and paste the line in Target field.

    Getting rid of Games for Windows - LIVE (for retail patches)

    This tool can be used to get rid of GFWL if you're not interested in official GFWL multiplayer and Xbox Live achievements. This will reduce the amount of hassle and setup you have to do.

    • Rename the dinput8.dll to xlive.dll

    Modloading

    Ultimate ASI Loader can be used for modloading purposes. See modloading for more details.

    "},{"location":"resources/mod-dependencies/#scripthookdotnet","title":"ScriptHookDotNet","text":"

    Compatibility

    • Compatible with all game versions.
    • See Getting ScriptHookDotNet and IV-SDK .NET to work on Linux if running Linux.

    ScriptHookDotNet is used to run scripts written in any .NET language. Not to be confused with IV-SDK .NET.

    Installation 1.2.0.591.0.8.0 to 1.0.5.01.0.4.0 to 1.0.1.0
    1. Go to the latest release page.
    2. Download scripthookdotnet_vx_x_x_x.zip.
    3. Extract the archive into the game folder.
    1. Go to the GTAForums page.
    2. Click on DOWNLOAD the GTAIV .Net Script Hook for GTA IV to download the archive.
    3. Extract the scripthookdotnet_v1_7_1_8.zip archive into the game folder.
    1. Go to the v1.7.1.7a release.
    2. Download scripthookdotnet_v1_7_1_7a.zip.
    3. Extract the archive into the game folder.
    "},{"location":"resources/mod-dependencies/#iv-sdk-net","title":"IV-SDK .NET","text":"

    Compatibility

    • Only compatible with 1.0.8.0 and 1.0.7.0. Downgrade if using Complete Edition.
    • See Getting ScriptHookDotNet and IV-SDK .NET to work on Linux if running Linux.

    IV-SDK .NET is used to run scripts written in any .NET language. Not to be confused with ScriptHookDotNet.

    Installation
    1. Go to the latest release page.
    2. Download IV-SDK.NET.vx_x_x.zip.
    3. Extract the archive into the game folder.
    Clonk's Coding Library

    Some mods may require extensions from Clonk's Coding Library.

    Installation

    • Go to the latest release page.
    • Download ClonkCodingLib.GTAIV.vx_x.zip.
    • Extract the archive into the game folder.
    "},{"location":"resources/mod-dependencies/#getting-scripthookdotnet-and-iv-sdk-net-to-work-on-linux","title":"Getting ScriptHookDotNet and IV-SDK .NET to work on Linux","text":"

    By default, neither of those two will run on Linux. That can be fixed, however. These instructions will assume you are an experienced Linux user, so if you don't get something - Google it.

    Instructions
    1. Set up Proton-GE.
    2. Go to Proton-GE's gamefixes directory (location's different if using Flatpak):

      ~/.local/share/Steam/compatibilitytools.d/GE-Proton9-10/protonfixes/gamefixes-steam/\n
    3. Open 12210.py in a text editor and add the following line at the end of the file:

      util.protontricks('dotnet472')\n
    4. Force the game to use Proton-GE.

    5. Run the game and wait until .NET installs (may take from 5 to 30 minutes).
    "},{"location":"resources/openiv/","title":"OpenIV","text":"

    OpenIV is a powerful tool for modifying, creating and extracting internal files. It can be used to create .img and .rpf files, which can be useful for modloading or mod creation. You may also, very rarely, come across mods packaged in .oiv - this tool allows you to install them as well.

    "},{"location":"resources/openiv/#installation","title":"Installation","text":"
    1. Go to the official website (mirror if the official server is down).
    2. Press on Download now.
    3. Install OpenIVSetup.exe.

    If the official website is down, an offline installer is available here.

    "},{"location":"resources/openiv/#usage","title":"Usage","text":"
    1. Open OpenIV.
    2. In the Grand Theft Auto IV section, click on Windows.
    3. If requested, set the directory with the game files.

    Be sure to back up your files before making any changes.

    "},{"location":"resources/openiv/#creating-archives","title":"Creating archives","text":"

    This might be useful for you if you're making a mod/packing an existing mod for a modloader.

    1. Click File - Create Archive and choose the type of the archive you need.
    2. Choose the directory where you want to save the archive
    3. Add and modify the files as you wish - changes are saved automatically.
    "},{"location":"resources/openiv/#extracting-internal-files","title":"Extracting internal files","text":"
    1. Locate the files of interest in the explorer.
    2. Double click to open an .img archive.
    3. Select the files you want to export.
    4. Right click - Extract.... Or right click on an empty space and click Extract all....
    5. Pick a folder where to extract the files. Done!
    "},{"location":"resources/openiv/#editing-existing-archives-installing-mods-to-game-files","title":"Editing existing archives (installing mods to game files)","text":"
    1. Locate the files of interest in the explorer (mods usually give the structure to follow).
    2. Double click to open an .img archive.
    3. Press Edit mode on top.
    4. Modify the files as you wish - changes are saved automatically.
    "},{"location":"resources/similar-guides-modpacks/","title":"Similar Guides & Modpacks","text":"

    Do you want more guides & modpacks like this but for other games? I got you covered, as I also love modding! All of the following guides & modpacks have been personally used by me and I can vouch for their quality, as much as you can vouch for my guide!

    "},{"location":"resources/similar-guides-modpacks/#fallout-new-vegas-viva-new-vegas","title":"Fallout: New Vegas (Viva New Vegas)","text":""},{"location":"resources/similar-guides-modpacks/#tale-of-two-wastelands-the-best-of-times","title":"Tale of Two Wastelands (The Best of Times)","text":"
    • This is a mod to port Fallout 3 content to Fallout: New Vegas and merge the best of two worlds.
    "},{"location":"resources/similar-guides-modpacks/#fallout-4-the-midnight-ride","title":"Fallout 4 (The Midnight Ride)","text":""},{"location":"resources/similar-guides-modpacks/#grand-theft-auto-san-andreas-vice-city-iii-and-the-stories-games-classic-edition","title":"Grand Theft Auto: San Andreas, Vice City, III and the Stories games (Classic Edition)","text":"
    • If you're non-russian speaking, use Google Translate on the page and remove RUSSIFIER from modloader.
    • The modpack is modular, so just remove something if you don't like it.
    • The same person has modpacks for GTA Vice City, III and the Stories games, they're on the bottom of the Steam Guide.
    "},{"location":"resources/similar-guides-modpacks/#need-for-speed-most-wanted-carbon-classic-edition-rework","title":"Need for Speed: Most Wanted, Carbon (Classic Edition & Rework)","text":""},{"location":"resources/troubleshooting/","title":"Troubleshooting","text":"

    Anyone can have problems modding their favorite games, and GTA IV is extremely prone to them.

    "},{"location":"resources/troubleshooting/#known-issues-without-a-solution","title":"Known issues without a solution","text":"

    I know about these issues, no need to report them to me, unless you know a solution.

    • Cutscenes freeze the game up if the game is out-of-focus for too long.
    • Car engine sounds occasionally appear and disappear (the solution involves bringing the taxi bug back - lower the traffic budget in GTAIV.EFLC.FusionFix.ini).
    • Social Club achievements cannot be acquired on downgraded versions.
    • Night shadows are limited (intended to reduce bugs).
    "},{"location":"resources/troubleshooting/#known-issues-solutions","title":"Known issues & solutions","text":""},{"location":"resources/troubleshooting/#boot-issues","title":"Boot issues","text":"Asi Loader Error | Other Visual C++ issues

    Make sure you installed the prerequisite software.

    Error RMN60 on launch

    Occurs on downgraded versions. Install ZolikaPatch (your antivirus may have removed it, aswell).

    Error \"SecuLauncher: failed to start application [2000]\" on launch
    • Right click GTAIV.exe, click Properties, switch to the Compatibility tab and uncheck Run this program as an administrator. If it's already unchecked, see the next solution.
    • Make sure you installed the prerequisite software.
    • If even that doesn't solve the issue, install NET 3.5.
    Game doesn't even show up
    • Make sure you don't have any duplicate mods - for example, you may have left FusionFix in both the plugins folder and the game folder. The game won't start in this case.
    • Reboot your PC.
    • Only launch a downgraded version from Steam or using PlayGTAIV.exe.
    • If using ZolikaPatch and FusionFix together, disable the incompatible options.
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem. Usually has something to do with .asi mods, so start there.
    Game crashes immediately upon booting
    • Try turning off RivaTuner Statistics (with MSI Afterburner if using that) or any other software of this sort - overlays can mess the game up on boot.
    • On a downgraded version, try installing ZolikaPatch if you hadn't already.
    • Try deleting SETTINGS.cfg from C:/Users/(User)/AppData/Local/Rockstar Games/GTA IV/Settings.
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem. Usually has something to do with injectable mods, so start there.
    "},{"location":"resources/troubleshooting/#load-screen-issues","title":"Load screen issues","text":"Load times are too long
    • Remove ColAccel if you had installed it outside of the guide.
    • Remove the -managed launch option.
    Game loads endlessly

    Set the -availablevidmem launch option (with a value of up to 3072.0).

    Game loads directly into the savegame on startup, no menu

    You can hold Left Shift on boot for when you need the menu.

    If you want to completely disable the feature off, change Skip Menu to Off in Settings - Game if using FusionFix. If the feature still triggers, set SkipMenu to 0 in ZolikaPatch.ini.

    "},{"location":"resources/troubleshooting/#settings-performance-issues","title":"Settings / performance issues","text":"Game shows wrong VRAM value in settings

    Set the -availablevidmem launch option (with a value of up to 3072.0).

    The game does not start in desired resolution and there is no option to increase it in the settings

    Set these launch options:

    • -width (horizontal resolution)
    • -height (vertical resolution)
    • -refreshrate (refresh rate)

    Example:

    • -width 1920
    • -height 1080
    • -refreshrate 60

    If that still doesn't help, add d3d9.forceAspectRatio = 16:9 to dxvk.conf. Change 16:9 with your exact aspect ratio if you don't use a 16:9 monitor.

    Also, check for GPU driver updates.

    Poor in-game performance
    • Make sure that DXVK is installed correctly.
    • Try using optimal game settings.
    • Make sure Shader Pre-caching is disabled in the Steam Settings - Downloads tab if using DXVK.
    • Make sure you don't have overlays such as Rainmeter running in fullscreen, they can tank your performance greatly.
    • Try lowering the graphics settings, in particular:
      • Shadow Quality
      • Night Shadows
      • View/Detail Distance
      • Depth of Field
      • Motion Blur
      • Reflection Quality
    Constant unstable frame timing after a while of playing (i.e. a microstutter every 0.5 seconds)

    Try disconnecting your gamepad. If the problem goes away, try enabling or disabling Steam Overlay. If the problem persists, try also enabling or disabling Steam Input alongside.

    "},{"location":"resources/troubleshooting/#crash-issues","title":"Crash issues","text":"Game crashes during or shortly after load screen
    • Make sure you started with a clean install (after pressing Uninstall on Steam, manually wipe the remainders in the folder).
    • If you have added modded cars and saved them near your savehouse, your savefile is corrupted. Change the saved car using this software.
    • Your savefile may be corrupted. Try temporarily removing your savefiles and start a new game to see if the problem persists.
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem. Usually has something to do with script mods, so start there.
    Game randomly crashes mid-game
    • If using ZolikaPatch and FusionFix together, disable the incompatible options.
    • Open ZolikaPatch.ini and change HighFPSSpeedupFix to 0.
    • If the problem persists, try deleting/disabling mods one-by-one to see which one is causing the problem.
    "},{"location":"resources/troubleshooting/#gameplay-issues","title":"Gameplay issues","text":"Broken LODs / textures
    • Set the -availablevidmem launch option (with a value of up to 3072.0).
    • Tone down the amount of texture mods you're using - especially stuff like road textures.
    Can't get into helicopter on last mission | Other timing-related issues at high FPS such as arcades being broken
    • Install FusionFix.
    • Some issues can only be omitted by setting a 60 or 30 FPS lock. Can be done in Settings - Graphics if using FusionFix.
    Softlock on TLAD - Shifting Weight

    Open ZolikaPatch.ini and set HighFPSSpeedupFix to 0. You can put it back to 1 after the mission.

    Cannot access internet cafe computers or interact with entertainment assets (pool, bowling)

    You can do one of the following:

    • Start a new game and forget about your existing save.
    • Remove LibertyTweaks files from IVSDKDotNet\\scripts (if you don't use IV-SDK .NET for anything else, you can remove safely all files and folders starting with IVSDKDotNet from the game folder aswell).
    Steam achievements disappeared after downgrading

    Install SteamAchievements.

    GFWL / Xbox Live achievements don't work
    • Remove SteamAchivements.asi - you can't use both at once.
    • Set TryToSkipAllErrors and VSyncFix to 0 in ZolikaPatch.ini.
    "},{"location":"resources/troubleshooting/#multiplayer-issues","title":"Multiplayer issues","text":"\"Unable to connect to game session\", \"Unable to join a game you were kicked from\" or joining an empty lobby in GFWL

    You were either actually kicked by the host, or you're experiencing what's known as kickbug.

    If you're indeed experiencing kickbug, you have to do manual port forwarding for the following ports in your router's settings and your system's firewall (look online for instructions for your specific router or ISP, or contact your ISP):

    • TCP: 3074, 80, 88
    • UDP: 3074, 80, 88

    If you can't perform port forwarding, use a VPN service instead. I recommend Mullvad VPN.

    Alternatively, give up. Seriously, just give up and try other multiplayer methods - some people are just stuck with the kickbug with no way to fight it.

    GFWL overlay doesn't appear
    • You are using XLiveless (xlive.dll). Rename the file to dinput8.dll.
    • GFWL files are missing. You need GTAIV.exe.cdf, GTAIV.exe.cfg and GTAIV.exe.cat.
    • Try reinstalling GFWL.
    \"This session no longer exists\" in GFWL

    The license key you're using is also used by somebody else who's already in the lobby. Log out and find yourself a different key or re-run the keygen.

    The game asks to sign in to Social Club in GFWL

    You need ZolikaPatch.

    \"The downloadable content required for this autoload is not available\" in GFWL

    Restart the game.

    \"You have been disconnected because your computer is running too slowly\" in GFWL
    • Enable Windowed, Borderless and disable Block on Focus Loss in Settings - Game if using FusionFix.
      • If not using FusionFix, set BorderlessWindowed and DoNotPauseOnMinimize to 1 in ZolikaPatch.ini and add -windowed to your commandline.txt instead.
    \"The profile could not be signed in to LIVE\" in GFWL
    • Install the Xbox App and sign in to it with the same account you're trying to use for GFWL.
    • Try reinstalling GFWL.
    Error code: 0x80048821 or \"Password contains special characters\" in GFWL

    Create a new app password and use that to log in.

    Error code: 0x8007065b in GFWL

    Only known solution is to use another account to sign in.

    Error code: 0x80151906 in GFWL

    Xbox LIVE servers are likely down at the moment, try again later.

    Error code: 0x8015403A in GFWL

    Try logging in on the website.

    Error code: 0x80150001 in GFWL

    GFWL only allows 100 friends maximum on the account. Reduce your number of friends on the account below 100, then try logging in again.

    Getting kicked by the anticheat in GTAC

    Your files are likely modified - make sure you're using a clean copy from Steam or Rockstar Games Launcher.

    The only way to find out which file doesn't pass through is to ask somebody with access to server logs (normally, the owner).

    "},{"location":"resources/troubleshooting/#miscellaneous-issues","title":"Miscellaneous issues","text":"I'm using the Rockstar Games Launcher and my files get constantly replaced

    After downgrading or using the drag-and-drop archive for 1.0.8.0, avoid using the launcher and start the game with PlayGTAIV.exe instead.

    Otherwise, if you want to use CE, avoid file replacements and use modloaders.

    Game is using the wrong GPU (NVIDIA laptop)

    Go to the NVIDIA Control Panel, 3D settings, add GTAIV.exe and select Max Performance in Power Plan Mode.

    EFLC disappeared after downgrading

    Make sure you are using ZolikaPatch and set LoadDLCs to 1 in ZolikaPatch.ini.

    .NET mods don't work on Linux

    See Getting ScriptHookDotNet and IV-SDK .NET to work on Linux

    If you know an issue and a solution that I missed, let me know on the Discord server.

    "},{"location":"ru/","title":"\u0412\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435","text":"

    \u042d\u0442\u043e\u0442 \u0441\u0430\u0439\u0442 \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d \u0441 Rockstar Games, Rockstar North \u0438\u043b\u0438 Take-Two Interactive. \u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0448\u0430\u0433\u043e\u0432, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u0432 \u044d\u0442\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435, \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u0440\u0443\u0448\u0438\u0442\u044c \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u043e\u0435 \u0441\u043e\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u0441 \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c (EULA) Rockstar, \u0438 \u0435\u0441\u043b\u0438 \u0432\u044b \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u0432 \u0441\u043b\u0443\u0436\u0431\u0443 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438, \u043e\u043d\u0438 \u043c\u043e\u0433\u0443\u0442 \u043e\u0442\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0430\u043c \u0432 \u043f\u043e\u043c\u043e\u0449\u0438 \u0438\u0437-\u0437\u0430 \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u044f EULA. \u042f \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0441\u044c \u0430\u0432\u0442\u043e\u0440\u043e\u043c \u043d\u0438 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0439, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e \u043b\u044e\u0431\u044b\u0445 \u0431\u0430\u0433\u0430\u0445/\u043d\u0435\u0434\u043e\u0447\u0435\u0442\u0430\u0445/\u043e\u0448\u0438\u0431\u043a\u0430\u0445 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0430\u0442\u044c \u0441\u0430\u043c\u0438\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c.

    "},{"location":"ru/#_2","title":"\u041e\u0431\u0437\u043e\u0440","text":"

    \u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435 \u043f\u043e \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0443 Grand Theft Auto IV \u043e\u0442 Gillian, \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u0438 \u043c\u043e\u0434\u0443\u043b\u044c\u043d\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0443 \u00ab\u0432\u0441\u0435 \u0432 \u043e\u0434\u043d\u043e\u043c\u00bb.

    \u042d\u0442\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e \u043d\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u0430\u0438\u043b\u0443\u0447\u0448\u0435\u0433\u043e \u0432\u0430\u043d\u0438\u043b\u044c\u043d\u043e\u0433\u043e-\u043f\u043b\u044e\u0441 \u043e\u043f\u044b\u0442\u0430 \u0434\u043b\u044f GTA IV, \u043d\u043e \u043d\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u0438\u043c. \u041e\u043d\u043e \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043e \u043d\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043a\u0430\u0436\u0434\u043e\u043c\u0443, \u0443 \u043a\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u0438 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u0438\u0433\u0440\u0435 - \u0431\u0443\u0434\u044c \u0442\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u0430\u0438\u043b\u0443\u0447\u0448\u0435\u0439 \u0441\u0431\u043e\u0440\u043a\u0438 \u0434\u043b\u044f \u0441\u044e\u0436\u0435\u0442\u043a\u0438, \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0439 \u0441\u0431\u043e\u0440\u043a\u0438, \u0438\u0433\u0440\u0430 \u0432 \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440, \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0435 \u043d\u0430\u0438\u043b\u0443\u0447\u0448\u0435\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438\u043b\u0438 \u0447\u0442\u043e-\u0442\u043e \u0435\u0449\u0435.

    \u042d\u0442\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u0441\u0442\u0440\u0435\u043c\u0438\u0442\u0441\u044f \u0431\u044b\u0442\u044c \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u043c, \u0438 \u0441\u0442\u0430\u0440\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0430 GTA IV. \u0412\u0441\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u043c\u043e\u0434\u044b \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043d\u0435 \u043e\u0442\u0440\u0430\u0436\u0430\u044e\u0442 \u043c\u043e\u0435\u0433\u043e \u043b\u0438\u0447\u043d\u043e\u0433\u043e \u043c\u043d\u0435\u043d\u0438\u044f \u043e \u043a\u043e\u043c-\u043b\u0438\u0431\u043e, \u0438 \u044f \u0431\u044b \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0435\u043b, \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0435 \u0431\u044b\u043b\u043e \u0441\u043a\u043b\u043e\u043d\u043d\u043e \u043a \u043f\u0440\u0435\u0434\u0432\u0437\u044f\u0442\u044b\u043c \u043b\u0438\u0447\u043d\u044b\u043c \u0432\u0437\u0433\u043b\u044f\u0434\u0430\u043c.

    \u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435, \u0437\u0434\u0435\u0441\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0434\u043d\u043e \u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e: \u0432\u0441\u0435 \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b\u0435 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u043e\u0441\u043f\u0440\u0438\u044f\u0442\u0438\u0435 \u0438\u0433\u0440\u044b.

    "},{"location":"ru/#_3","title":"\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f","text":"

    \u0427\u0442\u043e\u0431\u044b \u044d\u0442\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u0431\u044b\u043b\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u043c \u0434\u043b\u044f \u0432\u0430\u0441 \u0438 \u0447\u0442\u043e\u0431\u044b \u0432\u044b \u043c\u043e\u0433\u043b\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0441\u043e\u0431\u043b\u044e\u0434\u0435\u043d\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f:.

    • \u0427\u0438\u0442\u0430\u0439\u0442\u0435 \u0432\u0441\u0435 \u043a\u0430\u043a \u0435\u0441\u0442\u044c \u0438 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0439\u0442\u0435.
    • \u041d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0434\u0440\u0443\u0433\u0438\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430, \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u043d\u0435 \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b \u0432 \u044d\u0442\u043e\u043c. \u0415\u0441\u043b\u0438 \u0447\u0442\u043e-\u0442\u043e \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430\u0445, \u043d\u043e \u043d\u0435 \u0437\u0434\u0435\u0441\u044c, \u0442\u043e, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0442\u0443\u0442 \u043e\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u0430\u043c \u0431\u0435\u0437 \u0442\u043e\u043b\u043a\u0443.
    • \u042f \u043d\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e \u043f\u043e\u043c\u043e\u0449\u044c \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c ENB \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0439 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, ICEnhancer). \u0421 \u043d\u0438\u043c\u0438 \u0432\u044b \u0441\u0430\u043c-\u043d\u0430-\u0441\u0430\u043c.
    • \u0412\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u043b\u0430\u0434\u0435\u0442\u044c \u0438\u0433\u0440\u043e\u0439 \u0432 Steam \u0438\u043b\u0438 Rockstar Games Launcher. \u041f\u0438\u0440\u0430\u0442\u0441\u043a\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0442 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u043e\u0442 \u043c\u0435\u043d\u044f \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c. \u0414\u0440\u0443\u0433\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u043c\u043e\u0433\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u043d\u043e \u044f \u043d\u0435 \u0434\u0430\u044e \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0439, \u0438 \u044f \u043d\u0435 \u0431\u0443\u0434\u0443 \u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c.
    • \u041e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430: \u0412\u0430\u0448 \u041f\u041a \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043d\u0430 Windows 10 \u0438\u043b\u0438 11 \u0438\u043b\u0438 \u043b\u044e\u0431\u043e\u043c \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0435 Linux, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0434\u043b\u044f \u0438\u0433\u0440. \u0411\u043e\u043b\u0435\u0435 \u0441\u0442\u0430\u0440\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 Windows \u043c\u043e\u0433\u0443\u0442 \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u043d\u043e \u044f \u043d\u0435 \u0431\u0443\u0434\u0443 \u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0438\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443. \u0421\u0438\u0441\u0442\u0435\u043c\u044b ARM64 \u043d\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043b\u0438\u0441\u044c.
    • \u0416\u0435\u043b\u0435\u0437\u043e: \u0412\u0430\u0448 \u041f\u041a \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c \u0438\u0433\u0440\u044b. \u0414\u043b\u044f \u043b\u0443\u0447\u0448\u0438\u0445 \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u0435\u043d\u0438\u0439 \u043e\u043d \u0442\u0430\u043a\u0436\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043c\u043e\u0438\u043c \u043b\u0438\u0447\u043d\u044b\u043c \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u044f\u043c, \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u043c \u043d\u0438\u0436\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0442 \u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0439 \u0438\u0433\u0440\u043e\u0432\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441 \u043c\u043e\u0434\u0430\u043c\u0438 \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0438 Full HD \u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 60 \u0413\u0446. \u041c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0439\u0442\u0435 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u043f\u043e\u0434 \u0441\u0432\u043e\u0438 \u043d\u0443\u0436\u0434\u044b:

      \u0416\u0435\u043b\u0435\u0437\u043e \u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0430 \u0426\u041f Intel Core i5-6600k Ryzen 3 2200G \u0413\u041f GTX 980/1060 RX580, Intel Arc A310 \u041e\u0417\u0423 8 \u0413\u0411 \u041c\u0435\u0441\u0442\u043e \u043d\u0430 \u0434\u0438\u0441\u043a\u0435 30 \u0413\u0411 (\u0412 \u0438\u0434\u0435\u0430\u043b\u0435 SSD) \u0415\u0441\u043b\u0438 \u0441\u0442\u0430\u0432\u0438\u0442\u0435 \u043c\u043e\u0434\u044b \u0432\u0440\u0443\u0447\u043d\u0443\u044e, ~70 \u0413\u0411 \u0434\u043b\u044f \u0431\u044d\u043a\u0430\u043f\u043e\u0432
    "},{"location":"ru/#_4","title":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f","text":"
    • \u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442\u0435 \u043a \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0435 \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u043a \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0443 \u0438\u0433\u0440\u044b \u0438 \u043d\u0430\u0447\u0430\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430

    • \u041c\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0432 Discord \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438 \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0439 (\u0432\u044b \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043e\u0442 \u043c\u0435\u043d\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443, \u0435\u0441\u043b\u0438 \u043d\u0430\u0440\u0443\u0448\u0438\u0442\u0435 \u043b\u044e\u0431\u043e\u0435 \u0438\u0437 \u0432\u044b\u0448\u0435\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439):

      \u041c\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0432 Discord

    \u0415\u0441\u043b\u0438 \u0432\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e-\u0442\u043e \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0435, \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435\u0441\u044c \u0431\u043e\u043a\u043e\u0432\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u044c\u044e \u0441\u043b\u0435\u0432\u0430, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0443\u044e \u0432\u0430\u0441 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443.

    "},{"location":"ru/additional-setup/","title":"\u0412\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430","text":"
    • \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043f\u0430\u043b\u0438 \u0441\u044e\u0434\u0430 \u043f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0433\u043e\u0442\u043e\u0432\u043e\u0433\u043e \u0430\u0440\u0445\u0438\u0432\u0430 \u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f Setup Utility \u043d\u0430 Windows, \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043a \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c \u0433\u0440\u0430\u0444\u0438\u043a\u0438:

      \u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438

    \u0415\u0441\u043b\u0438 \u0436\u0435 \u0432\u044b \u043f\u043e\u043f\u0430\u043b\u0438 \u0441\u044e\u0434\u0430 \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e-\u043b\u0438\u0431\u043e \u0434\u0440\u0443\u0433\u043e\u0433\u043e (\u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u0430\u0440\u0445\u0438\u0432\u0430 \u043d\u0430 Linux), \u043d\u0430\u0447\u043d\u0438\u0442\u0435 \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0437\u0430\u043f\u0443\u0441\u043a\u0430.

    "},{"location":"ru/additional-setup/#_2","title":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430","text":"

    Setup Utility (\u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f Windows)

    Setup Utility \u043c\u043e\u0436\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0437\u0430 \u0432\u0430\u0441.

    "},{"location":"ru/additional-setup/#_3","title":"\u0420\u0443\u0447\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430","text":"1.2.0.591.0.8.0
    1. \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0438\u0433\u0440\u044b:
      • Steam: \u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438 \u043d\u0430 \u0438\u0433\u0440\u0435 \u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435, \u043d\u0430\u0436\u043c\u0438\u0442\u0435 \u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430... \u0438 \u043d\u0430\u0439\u0434\u0438\u0442\u0435 \u043f\u043e\u043b\u0435 \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430.
      • Rockstar Games Launcher: \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439 \u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435, \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438 \u043d\u0430\u0439\u0434\u0438\u0442\u0435 \u043f\u043e\u043b\u0435 \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430.
      • \u042f\u0440\u043b\u044b\u043a: \u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438 \u043f\u043e \u044f\u0440\u043b\u044b\u043a\u0443, \u043d\u0430\u0436\u043c\u0438\u0442\u0435 \u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0438 \u043d\u0430\u0439\u0434\u0438\u0442\u0435 \u043f\u043e\u043b\u0435 \u0426\u0435\u043b\u044c.
    2. \u0412\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0442\u0443\u0434\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:

      -norestrictions -nomemrestrict -managed\n
    3. \u0415\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d FusionFix, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u041e\u043a\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u0438 \u041e\u043a\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u0431\u0435\u0437 \u0440\u0430\u043c\u043a\u0438 \u0432 \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 - \u0418\u0433\u0440\u0430 \u0432 \u0438\u0433\u0440\u0435.

    1. \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043b commandline.txt \u0432 \u043f\u0430\u043f\u043a\u0435 \u0441 \u0438\u0433\u0440\u043e\u0439.
    2. \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0444\u0430\u0439\u043b.
    3. \u0412\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0432 \u043d\u0435\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:

      -norestrictions\n-nomemrestrict\n-windowed\n-managed\n
    4. \u0415\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d FusionFix, -windowed \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u0431\u0440\u0430\u043d \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0435\u0439 \u0432 \u0441\u0430\u043c\u043e\u0439 \u0438\u0433\u0440\u0435.

    5. \u0415\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d FusionFix \u0438/\u0438\u043b\u0438 ZolikaPatch, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435 Borderless Windowed \u0432 \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 - \u0418\u0433\u0440\u0430 \u0432 \u0438\u0433\u0440\u0435 \u0438\u043b\u0438 BorderlessWindowed \u0432 ZolikaPatch.ini \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0438\u0437 \u0434\u0432\u0443\u0445 \u0432\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435.
      • \u0415\u0441\u043b\u0438 \u043d\u0435 \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0435 \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0438 \u0442\u043e, \u043d\u0438 \u0434\u0440\u0443\u0433\u043e\u0435, \u0443\u0431\u0435\u0440\u0438\u0442\u0435 -windowed.
      • \u0415\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u043e\u0431\u0430, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u043e\u0442 FusionFix.
    \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f DXVK...
    • \u0423\u0431\u0435\u0440\u0438\u0442\u0435 -managed.
    • \u0414\u043e\u0431\u0430\u0432\u044c\u0442\u0435 -availablevidmem 3072.0 \u043a \u0441\u043f\u0438\u0441\u043a\u0443 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a.
      • \u0417\u0430\u043c\u0435\u043d\u0438\u0442\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0430 \u0432\u0430\u0448\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u0438 \u0432 \u041c\u0411 \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043c\u0435\u043d\u044c\u0448\u0435 3 \u0413\u0411 \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u0438. \u041d\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0435\u0433\u043e \u0432\u044b\u0448\u0435.
      • \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0432\u0435\u0440\u0441\u0438\u044e \u0441\u0442\u0430\u0440\u0448\u0435 1.0.8.0, \u044d\u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041f\u043e\u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0439\u0442\u0435 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0438 \u0434\u043e\u0431\u0435\u0440\u0438\u0442\u0435\u0441\u044c \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0431\u043b\u0438\u0436\u0435 \u043a 3072 \u041c\u0411 (\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043a\u0430\u043a 60.0, 80.0 \u0438 \u0442.\u043f.).
    • \u0415\u0441\u043b\u0438 \u0438\u0433\u0440\u0430 \u043d\u0435 \u0434\u0430\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0430\u0448\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0438\u043b\u0438 \u0433\u0435\u0440\u0446\u043e\u0432\u043a\u0443 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445, \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 -width, -height \u0438 -refreshrate \u0441 \u0432\u0430\u0448\u0438\u043c\u0438 \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u043c\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430.
      • \u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u0432\u0441\u0435 \u0435\u0449\u0435 \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u043b\u043e, \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 d3d9.forceAspectRatio = 16:9 \u043a dxvk.conf. \u0418\u0437\u043c\u0435\u043d\u0438\u0442\u0435 16:9 \u043d\u0430 \u0432\u0430\u0448\u0435 \u0442\u043e\u0447\u043d\u043e\u0435 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u0440\u043e\u043d \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043d\u0435 16:9 \u043c\u043e\u043d\u0438\u0442\u043e\u0440.
    • \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 Windows, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u043b\u0438 \u043a\u044d\u0448 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 - \u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 Steam.
    \u041f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0437\u0430\u043f\u0443\u0441\u043a\u0430

    \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0432\u0430\u043e\u0442\u044c \u044d\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0434\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u043b\u0438 \u0434\u0435\u0431\u0430\u0433\u0430.

    \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 -help \u0421\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434. -adapter \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u0430\u0434\u0430\u043f\u0442\u0435\u0440 \u044d\u043a\u0440\u0430\u043d\u0430. -autoconfig \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430. -availablevidmem \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0439 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u0438. -benchmark \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0438\u0433\u0440\u0443 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Benchmark \u0438 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442 \u0435\u0435. -detailquality \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0433\u043b\u0443\u0431\u0438\u043d\u0443 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u0433\u0440\u044b (0-99). -disableimposters \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433 \u043d\u0435\u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0433\u043e \u0442\u0440\u0430\u0444\u0444\u0438\u043a\u0430 \u0432 \u0434\u0430\u043b\u0435\u043a\u0435. -forcehighqualitymirrors ? -forcer2vb \u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433 \u0432 Vertex Buffer. -frameLimit \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u0434\u043b\u044f V-Sync. -framelockinwindow \u0417\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 framelock \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0434\u0430\u0436\u0435 \u0432 \u043e\u043a\u043d\u0435. -fullscreen \u0417\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c. -fullspecaudio \u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u044b\u0441\u043e\u043a\u043e-\u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0437\u0432\u0443\u043a\u0430. -gpucount \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e GPU, \u0435\u0441\u043b\u0438 \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f. -height \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435. -managed \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f D3D. -memrestrict \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0433\u0440\u0430. -minspecaudio \u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0438\u0437\u043a\u043e-\u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0437\u0432\u0443\u043a\u0430. -no_3GB \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u043f\u0430\u043c\u044f\u0442\u0438 3 \u0413\u0411 \u0432 32-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0445 \u041e\u0421, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e, \u0447\u0442\u043e \u0438\u0433\u0440\u044b \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043c\u043e\u0433\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u043e\u0431\u044a\u0435\u043c \u043f\u0430\u043c\u044f\u0442\u0438. -noBlockOnLostFocus \u0417\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u0442 \u0438\u0433\u0440\u0435 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u043a\u043d\u0430 \u043f\u0440\u0438 \u043f\u043e\u0442\u0435\u0440\u0435 \u0444\u043e\u043a\u0443\u0441\u0430. -noprecache \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. -nomemrestrict \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u0438. -nominimize \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0438\u0433\u0440\u044b \u0438\u0437 \u0440\u0435\u0436\u0438\u043c\u0430 \u043c\u0438\u043d\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f (\u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u043c\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c). -norestrictions \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438. -noswapdelay \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0443 \u043f\u0435\u0440\u0435\u0434 Present (\u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 hard present stalls). -notimefix \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 Time Fix. -novblank \u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u043b\u0430\u043d\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f V-Sync. -percentvidmem \u041f\u0440\u043e\u0446\u0435\u043d\u0442 \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0434\u043b\u044f \u0438\u0433\u0440\u044b. -refreshrate \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0447\u0430\u0441\u0442\u043e\u0442\u0443 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f (\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u043c \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u043e\u043c). -reserve \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u043c \u043f\u0430\u043c\u044f\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u043c\u0438. -reservedApp \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u043c \u043f\u0430\u043c\u044f\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0441\u0442\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u043c \u0432 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. -renderquality \u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442 \u0430\u043d\u0438\u0437\u043e\u0442\u0440\u043e\u043f\u043d\u0443\u044e \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044e (0-4). -safemode \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u0438\u0433\u0440\u044b. -shadowdensity \u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442 \u043d\u043e\u0447\u043d\u044b\u0435 \u0442\u0435\u043d\u0438 (0-16). -shadowquality \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u043d\u0435\u0439 (0-4). -stereo \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0441\u0442\u0435\u0440\u0435\u043e\u0437\u0432\u0443\u043a\u0430. -texturequality \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u043a\u0441\u0442\u0443\u0440 \u0438\u0433\u0440\u044b (0-2). -unmanaged \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c. -usedirectinput \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 DirectInput \u043d\u0430\u0440\u044f\u0434\u0443 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 XInput. -viewdistance \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043e\u0431\u0437\u043e\u0440\u0430 \u0438\u0433\u0440\u044b (0-99). -windowed \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043e\u043a\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c. -width \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u043e \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u0438."},{"location":"ru/additional-setup/#_4","title":"\u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438","text":"

    \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u044b \u043d\u0430 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e \u0436\u0435\u043b\u0435\u0437\u0443.

    \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043f\u0430\u043b\u0438 \u0441\u044e\u0434\u0430 \u043f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0430\u0440\u0445\u0438\u0432\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0432\u043a\u043b\u0430\u0434\u043a\u0443 FusionFix.

    \u0412\u0430\u043d\u0438\u043b\u043b\u0430FusionFix\u0418\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b\u0435 \u043a \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0412\u0438\u0434\u0435\u043e\u0440\u0435\u0436\u0438\u043c \u0412\u0430\u0448\u0435 \u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 (\u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043e\u0431\u044b\u0447\u043d\u043e) \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430 \u0438\u043b\u0438, \u0435\u0441\u043b\u0438 \u0441\u0442\u043e\u0438\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 -windowed, \u0440\u0430\u0437\u043c\u0435\u0440 \u0438\u0433\u0440\u043e\u0432\u043e\u0433\u043e \u043e\u043a\u043d\u0430. \u0421\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u0440\u043e\u043d \u0410\u0432\u0442\u043e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0435\u0442 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u0440\u043e\u043d \u044d\u043a\u0440\u0430\u043d\u0430 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430. \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u043a\u0441\u0442\u0443\u0440 \u0412\u044b\u0441\u043e\u043a\u043e\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0442\u0435\u043a\u0441\u0442\u0443\u0440. \u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u041e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 (\u043a\u0440\u043e\u043c\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0432 \u0432\u043e\u0434\u0435). \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u043e\u0434\u044b \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043f\u043b\u043e\u0442\u043d\u043e\u0441\u0442\u044c \u0438 \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u0432\u043e\u043b\u043d \u0432 \u0432\u043e\u0434\u0435 \u0438 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0432 \u0432\u043e\u0434\u0435. \u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0421\u0440\u0435\u0434\u043d\u0435\u0435, \u0442\u0430\u043a \u043a\u0430\u043a \u0432\u043e\u0434\u0430 \u0441 \u044d\u0442\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u043e\u0439 \u043c\u0435\u043d\u0435\u0435 '\u0440\u0430\u0437\u0434\u0443\u0442\u0430\u044f' \u0438 \u0431\u043e\u043b\u0435\u0435 \u0440\u0435\u0430\u043b\u0438\u0441\u0442\u0438\u0447\u043d\u0435\u0435, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0431\u043b\u0438\u0436\u0435 \u0432\u0441\u0435\u0433\u043e \u043a \u043d\u0443\u0436\u043d\u043e\u043c\u0443 \u0432\u0438\u0434\u0443 \u043d\u0430 \u043a\u043e\u043d\u0441\u043e\u043b\u044f\u0445. \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u043d\u0435\u0439 \u0412\u044b\u0441\u043e\u043a\u043e\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0438 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 \u0442\u0435\u043d\u0435\u0439.\u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0438 \u043d\u0438\u0437\u043a\u043e\u0435 \u043e\u0447\u0435\u043d\u044c \u0441\u0438\u043b\u044c\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0442\u0435\u043d\u0438, \u0447\u0442\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0443\u0431\u043e\u0433\u043e. \u041e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0435 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0441\u0438\u043b\u044c\u043d\u043e \u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0434\u0438 \u043c\u0435\u043b\u043a\u0438\u0445 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0439 \u0438 \u0438\u043d\u043e\u0433\u0434\u0430 \u0442\u0435\u043d\u0438 \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u0441\u043b\u043e\u043c\u0430\u043d\u043d\u044b\u043c\u0438. \u0423\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u044b\u0435 \u043d\u043e\u0447\u043d\u044b\u0435 \u0442\u0435\u043d\u0438 \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0432\u0435\u0442\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0444\u0430\u0440 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u044f) \u043c\u043e\u0433\u0443\u0442 \u043e\u0442\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u0442\u0435\u043d\u0438. \u041a\u0430\u0436\u0434\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 4 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043a\u0430\u0440\u0442\u044b \u0442\u0435\u043d\u0435\u0439. \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043d\u0435 \u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0442\u0435\u043d\u0435\u0439. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u044b\u0448\u0435 \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0442 \u0430\u0440\u0442\u0435\u0444\u0430\u043a\u0442\u044b. \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0443\u0440 \u0410\u043d\u0438\u0437\u043e\u0442\u0440\u043e\u043f\u043d\u0430\u044f 16x \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0435\u0439 \u0442\u0435\u043a\u0441\u0442\u0443\u0440. \u0414\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u044f \u043e\u0431\u0437\u043e\u0440\u0430 \u041c\u0435\u0436\u0434\u0443 21 \u0438 70 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 LOD \u0434\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043a\u0430\u043a \u0437\u0434\u0430\u043d\u0438\u044f \u0438 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442. \u0422\u0430\u043a\u0436\u0435 \u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 \u043f\u0440\u043e\u043f\u043e\u0432.\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0448\u0435 21 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0440\u0435\u0437\u043a\u0438\u0435 \u043f\u0440\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0430 \u0432\u044b\u0448\u0435 70 \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438 \u0430\u0440\u0442\u0435\u0444\u0430\u043a\u0442\u044b, \u0438 \u043d\u0435\u0433\u0430\u0442\u0438\u0432\u043d\u043e\u0435 \u0432\u043b\u0438\u044f\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c. \u0413\u043b\u0443\u0431\u0438\u043d\u0430 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u041c\u0435\u0436\u0434\u0443 10 \u0438 70 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u0442\u043e\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 LOD \u0434\u043b\u044f \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0432 \u043f\u0440\u043e\u043f\u0430\u0445.\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0448\u0435 10 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0440\u0435\u0437\u043a\u0438\u0435 \u043f\u0440\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0430 \u0432\u044b\u0448\u0435 70 \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438 \u0430\u0440\u0442\u0435\u0444\u0430\u043a\u0442\u044b. \u0422\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u044b\u0439 \u043f\u043e\u0442\u043e\u043a \u0414\u043e 70100, \u0435\u0441\u043b\u0438 \u0435\u0441\u0442\u044c \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u0439 popcycle (\u0430\u0440\u0445\u0438\u0432) \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0430 \u043f\u043e \u0434\u043e\u0440\u043e\u0433\u0430\u0445. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0432\u044b\u0441\u043e\u043a\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u0435\u043b\u0430\u0435\u0442 \u0435\u0437\u0434\u0443 \u043f\u043e \u0434\u043e\u0440\u043e\u0433\u0435 \u043e\u0447\u0435\u043d\u044c \u043d\u0435\u043f\u0440\u0438\u044f\u0442\u043d\u043e\u0439, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0441 \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u043c \u0418\u0418 \u0442\u0440\u0430\u0444\u0444\u0438\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043d\u043e\u0433\u0434\u0430 \u0437\u0430\u0441\u0442\u0440\u0435\u0432\u0430\u0435\u0442 \u0434\u0430\u0436\u0435 \u043d\u0430 \u043f\u0440\u044f\u043c\u044b\u0445 \u0434\u043e\u0440\u043e\u0433\u0430\u0445 \u0438 \u043c\u043e\u0441\u0442\u0430\u0445. \u0413\u043b\u0443\u0431\u0438\u043d\u0430 \u043f\u043e\u043b\u044f \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u044f \u0412\u043a\u043b\u041e\u0442\u043a\u043b \u0435\u0441\u043b\u0438 \u0438\u0433\u0440\u0430\u0435\u0442\u0435 \u0432 1280x720 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0433\u043b\u0443\u0431\u0438\u043d\u0443 \u0440\u0435\u0437\u043a\u043e\u0441\u0442\u0438 \u0438 \u0440\u0430\u0437\u043c\u044b\u0442\u0438\u0435 \u0432 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0438 (\u041e\u0442\u043a\u043b - \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043e, \u0412\u043a\u043b - \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435).\u0415\u0441\u043b\u0438 \u0438\u0433\u0440\u0430\u0435\u0442\u0435 \u043d\u0430 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0432\u044b\u0448\u0435 1280x720, \u041e\u0442\u043a\u043b \u0442\u043e\u043b\u044c\u043a\u043e \u0431\u043b\u044e\u0440\u0438\u0442 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u041f\u041a, \u0430 \u044d\u0444\u0444\u0435\u043a\u0442\u044b \u043f\u043e\u043f\u0440\u043e\u0441\u0442\u0443 \u043d\u0435 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u043f\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044e - \u0438\u0437-\u0437\u0430 \u044d\u0442\u043e\u0433\u043e, \u043e\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u043d\u0430 \u0412\u043a\u043b \u0435\u0441\u043b\u0438 \u043d\u0435 \u0438\u0433\u0440\u0430\u0435\u0442\u0435 \u0432 \u044d\u0442\u043e\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0438.\u041c\u043e\u0436\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u043e\u0439 P \u0432 \u0438\u0433\u0440\u0435. \u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u041e\u0442\u043a\u043b \u0435\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f DXVK\u0412\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044e.\u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f DXVK \u0441 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439, \u043f\u043e\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u0432 \u0438\u0433\u0440\u0435 \u043d\u0430 \u041e\u0442\u043a\u043b \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 DXVK. \u0422\u0430\u043a\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 d3d9.maxFrameRate = 60 \u043a dxvk.conf \u0438\u043b\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u044c\u0442\u0435 \u043a\u0430\u0434\u0440\u044b \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438 \u0434\u043e 60 \u0438\u043b\u0438 30 \u0432\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0442\u0430\u0439\u043c\u0438\u043d\u0433\u043e\u043c. AMD Fluid Motion Frames (\u0435\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f DXVK) \u0438\u043b\u0438 Lossless Scaling \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u043a\u0430\u0434\u0440\u043e\u0432.

    \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0442 FusionFix.

    \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0412\u0438\u0434\u0435\u043e\u0440\u0435\u0436\u0438\u043c \u0412\u0430\u0448\u0435 \u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 (\u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043e\u0431\u044b\u0447\u043d\u043e) \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430 \u0438\u043b\u0438, \u0435\u0441\u043b\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u041e\u043a\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c, \u0440\u0430\u0437\u043c\u0435\u0440 \u0438\u0433\u0440\u043e\u0432\u043e\u0433\u043e \u043e\u043a\u043d\u0430. \u0421\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u0440\u043e\u043d \u0410\u0432\u0442\u043e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0435\u0442 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u0440\u043e\u043d \u044d\u043a\u0440\u0430\u043d\u0430 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430. \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u043a\u0441\u0442\u0443\u0440 \u0412\u044b\u0441\u043e\u043a\u043e\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0442\u0435\u043a\u0441\u0442\u0443\u0440. \u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u041e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 (\u043a\u0440\u043e\u043c\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0432 \u0432\u043e\u0434\u0435). \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u043e\u0434\u044b \u041e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0432\u043e\u0434\u044b \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f FusionFix. \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u043d\u0435\u0439 \u041e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0438 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 \u0442\u0435\u043d\u0435\u0439.\u0415\u0441\u043b\u0438 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0441\u0438\u043b\u044c\u043d\u043e \u043f\u0430\u0434\u0430\u0435\u0442 \u0444\u043f\u0441, \u043f\u043e\u043d\u0438\u0437\u044c\u0442\u0435 \u0434\u043e \u0412\u044b\u0441\u043e\u043a\u043e\u0435.\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0433\u043b\u0443\u0431\u0436\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 GTAIV.EFLC.FusionFix.ini. \u0423\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u044b\u0435 \u043d\u043e\u0447\u043d\u044b\u0435 \u0442\u0435\u043d\u0438 \u041e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0432\u0435\u0442\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0444\u0430\u0440 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u044f) \u043c\u043e\u0433\u0443\u0442 \u043e\u0442\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u0442\u0435\u043d\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0441\u0430\u043c\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u044d\u0442\u0438\u0445 \u0442\u0435\u043d\u0435\u0439.\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0433\u043b\u0443\u0431\u0436\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 GTAIV.EFLC.FusionFix.ini. \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0443\u0440 \u0410\u043d\u0438\u0437\u043e\u0442\u0440\u043e\u043f\u043d\u0430\u044f 16x \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0435\u0439 \u0442\u0435\u043a\u0441\u0442\u0443\u0440. \u0414\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u044f \u043e\u0431\u0437\u043e\u0440\u0430 25\u0414\u043e 70 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 LOD \u0434\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043a\u0430\u043a \u0437\u0434\u0430\u043d\u0438\u044f \u0438 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442. \u0422\u0430\u043a\u0436\u0435 \u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 \u043f\u0440\u043e\u043f\u043e\u0432. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0448\u0435 25 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0440\u0435\u0437\u043a\u0438\u0435 \u043f\u0440\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0430 \u0432\u044b\u0448\u0435 70 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0441\u0443\u0449\u043d\u044b\u0445 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0439. \u0413\u043b\u0443\u0431\u0438\u043d\u0430 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 31\u0414\u043e 70 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u0442\u043e\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 LOD \u0434\u043b\u044f \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0432 \u043f\u0440\u043e\u043f\u0430\u0445.\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0448\u0435 31 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0440\u0435\u0437\u043a\u0438\u0435 \u043f\u0440\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0430 \u0432\u044b\u0448\u0435 70 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0441\u0443\u0449\u043d\u044b\u0445 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0439. \u0422\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u044b\u0439 \u043f\u043e\u0442\u043e\u043a \u0414\u043e 70100, \u0435\u0441\u043b\u0438 \u0435\u0441\u0442\u044c \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u0439 popcycle (\u0430\u0440\u0445\u0438\u0432) \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0430 \u043f\u043e \u0434\u043e\u0440\u043e\u0433\u0430\u0445. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0432\u044b\u0441\u043e\u043a\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u0435\u043b\u0430\u0435\u0442 \u0435\u0437\u0434\u0443 \u043f\u043e \u0434\u043e\u0440\u043e\u0433\u0435 \u043e\u0447\u0435\u043d\u044c \u043d\u0435\u043f\u0440\u0438\u044f\u0442\u043d\u043e\u0439, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0441 \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u043c \u0418\u0418 \u0442\u0440\u0430\u0444\u0444\u0438\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043d\u043e\u0433\u0434\u0430 \u0437\u0430\u0441\u0442\u0440\u0435\u0432\u0430\u0435\u0442 \u0434\u0430\u0436\u0435 \u043d\u0430 \u043f\u0440\u044f\u043c\u044b\u0445 \u0434\u043e\u0440\u043e\u0433\u0430\u0445 \u0438 \u043c\u043e\u0441\u0442\u0430\u0445. \u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u041e\u0442\u043a\u043b \u0435\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f DXVK\u0412\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044e.\u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f DXVK \u0441 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439, \u043f\u043e\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u0432 \u0438\u0433\u0440\u0435 \u043d\u0430 \u041e\u0442\u043a\u043b \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 DXVK. \u0421\u043e\u043b\u043d\u0435\u0447\u043d\u044b\u0435 \u043b\u0443\u0447\u0438 \u041f\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u0435 \u043b\u0443\u0447\u0438 \u0441\u043e\u043b\u043d\u0446\u0430.\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0433\u043b\u0443\u0431\u0436\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 GTAIV.EFLC.FusionFix.ini. \u0421\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435 SMAA \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435. \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u0435\u043b\u044c \u043a\u0430\u0434\u0440\u043e\u0432 6030 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u043a\u0430\u0434\u0440\u043e\u0432.\u0420\u0435\u043a\u043e\u043c\u0434\u0435\u043d\u0442\u0443\u0435\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0430 60 \u0438\u043b\u0438 30 \u0432\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0442\u0430\u0439\u043c\u0438\u043d\u0433\u043e\u043c, \u0445\u043e\u0442\u044f \u0441\u044e\u0436\u0435\u0442 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0439\u0434\u0435\u043d \u0438 \u0432\u044b\u0448\u0435 60, \u0435\u0441\u043b\u0438 \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0433\u0438. \u0412\u044b, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043d\u0438\u0437\u0438\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043e\u0442 30 \u0434\u043b\u044f \u043c\u0438\u043d\u0438\u0438\u0433\u0440.AMD Fluid Motion Frames (\u0435\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f DXVK) \u0438\u043b\u0438 Lossless Scaling \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u044b \u0434\u043b\u044f \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u043a\u0430\u0434\u0440\u043e\u0432.\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0433\u043b\u0443\u0431\u0436\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 GTAIV.EFLC.FusionFix.ini. FOV \u041f\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0438\u0433\u0440\u043e\u0432\u044b\u043c FOV \u0441 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u043e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432 \u0438\u0433\u0440\u0435. \u0422\u0435\u043d\u0438 \u043e\u0442 \u0444\u043e\u043d\u0430\u0440\u0435\u0439 \u041f\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0442\u0435\u043d\u0438 \u043e\u0442 \u0444\u043e\u043d\u0430\u0440\u0435\u0439 \u0446\u0435\u043d\u043e\u0439 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0433\u043e \u0440\u0435\u0437\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043d\u0435\u0439 \u0438 \u0443\u0445\u0443\u0434\u0448\u0435\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438.

    \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0435 \u042d\u043a\u0440\u0430\u043d.

    \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0420\u0430\u0437\u043c\u044b\u0442\u0438\u0435 \u043f\u0440\u0438 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0438 \u041f\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u044d\u0444\u0444\u0435\u043a\u0442\u043e\u043c \u0440\u0430\u0437\u043c\u044b\u0442\u0438\u044f \u043f\u0440\u0438 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0438. \u0421\u0432\u0435\u0447\u0435\u043d\u0438\u0435 \u0412\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u0432\u0435\u0447\u0435\u043d\u0438\u0435. \u041a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0430\u044f \u0433\u0430\u043c\u043c\u0430 \u041f\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442 \u0433\u0430\u043c\u043c\u0443 \u0434\u043b\u044f \u043f\u0440\u0438\u0434\u0430\u043d\u0438\u044f \u0438\u0433\u0440\u0435 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0438\u0434\u0430.\u0418\u0433\u0440\u0430 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u043b\u0430 \u0431\u044b\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \"\u0431\u0435\u043b\u043e\u0439\", \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0430 \u0412\u043a\u043b. \u0424\u0438\u043b\u044c\u0442\u0440 \u044d\u043a\u0440\u0430\u043d\u0430 \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0444\u0430\u0439\u043b timecyc \u0434\u043b\u0447 \u0441\u043e\u043e\u0442\u0432\u0435\u0441\u0442\u0432\u0438\u044f \u0434\u0440\u0443\u0433\u0438\u043c \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u043c \u044d\u043a\u0440\u0430\u043d\u0430 (\u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u0444\u0438\u043b\u044c\u0442\u0440\u044b TBoGT \u0432 IV \u0438\u043b\u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442). \u0413\u043b\u0443\u0431\u0438\u043d\u0430 \u0440\u0435\u0437\u043a\u043e\u0441\u0442\u0438 \u041f\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0433\u043b\u0443\u0431\u0438\u043d\u0443 \u0440\u0435\u0437\u043a\u043e\u0441\u0442\u0438 \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044d\u0444\u0444\u0435\u043a\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u043a\u0430\u0442\u0441\u0446\u0435\u043d\u0430\u0445. \u041e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u0435 \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432 \u041f\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0443\u044e \u043e\u043a\u043a\u043b\u044e\u0437\u0438\u044e \u0440\u0430\u0441\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438.\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0433\u043b\u0443\u0431\u0436\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 GTAIV.EFLC.FusionFix.ini. \u041f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u044c \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432 \u041f\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u044c \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432.\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0433\u043b\u0443\u0431\u0436\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 GTAIV.EFLC.FusionFix.ini. \u0413\u043b\u0443\u0431\u0438\u043d\u0430 \u043f\u043e\u043b\u044f \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u044f \u0412\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \"\u0441\u0435\u0442\u0447\u0430\u0442\u044b\u0445\" \u0438 \"\u0442\u043e\u0447\u0435\u0447\u043d\u044b\u0445\" \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u043c\u0435\u0440\u0446\u0430\u043d\u0438\u0435 \u0438 \u0441\u0442\u0443\u043f\u0435\u043d\u0447\u0430\u0442\u043e\u0441\u0442\u044c.

    \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0435 \u0418\u0433\u0440\u0430.

    \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u041e\u043a\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u0412\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442, \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043b\u0438 \u0438\u0433\u0440\u0430 \u0432 \u044d\u043a\u0441\u043b\u044e\u0437\u0438\u0432\u043d\u043e\u043c \u043f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u0438\u043b\u0438 (\u0431\u0435\u0437\u0440\u0430\u043c\u043d\u043e\u0447\u043d\u043e\u043c) \u043e\u043a\u043e\u043d\u043d\u043e\u043c.\u0411\u0435\u0437\u0440\u0430\u043c\u043e\u0447\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0431\u043e\u043b\u0435\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d, \u0447\u0435\u043c \u044d\u043a\u0441\u043b\u044e\u0437\u0438\u0432\u043d\u044b\u0439 \u043f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0439 \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 \u043c\u0443\u043b\u044c\u0442\u0438\u0437\u0430\u0434\u0430\u0447\u043d\u043e\u0441\u0442\u0438. \u041e\u043a\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u0431\u0435\u0437 \u0440\u0430\u043c\u043a\u0438 \u0412\u043a\u043b \u0435\u0441\u043b\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d \u041e\u043a\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c\u041e\u0442\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442, \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043b\u0438 \u0438\u0433\u0440\u0430 \u0432 \u043e\u0431\u044b\u0447\u043d\u043e\u043c \u043e\u043a\u043d\u0435 \u0438\u043b\u0438 \u0431\u0435\u0437\u0440\u0430\u043c\u043e\u0447\u043d\u043e\u043c \u043a\u043e\u0433\u0434\u0430 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u041e\u043a\u043e\u043d\u043d\u044b\u0439. \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0433\u0440\u0443 \u043d\u0430 \u043f\u0430\u0443\u0437\u0443 \u0432 \u0444\u043e\u043d\u0435 \u041e\u0442\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442, \u0431\u0443\u0434\u0435\u0442 \u043b\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0438\u0433\u0440\u044b \"\u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c\u0441\u044f\" \u043a\u043e\u0433\u0434\u0430 \u043e\u043a\u043d\u043e \u0438\u0433\u0440\u044b \u0442\u0435\u0440\u044f\u0435\u0442 \u0444\u043e\u043a\u0443\u0441\u0438\u0440\u043e\u0432\u043a\u0443 (\u0430\u043b\u044c\u0442-\u0442\u0430\u0431\u0431\u0438\u043d\u0433).\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u0412\u044b\u043a\u043b \u0432\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u0435 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0432\u044b\u043b\u0435\u0442\u043e\u0432.

    \u0427\u0442\u043e \u044d\u0442\u043e \u0437\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438?

    \u042d\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b \u043a \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0438\u0433\u0440\u044b.

    \u042f \u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0438\u0433\u0440\u0430\u0442\u044c \u0441 \u044d\u0442\u0438\u043c\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438, \u043f\u043e \u044d\u0442\u043e\u043c\u0443 \u044d\u0442\u043e\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0431\u043e\u043b\u0435\u0435 \u043a \u0441\u0432\u0435\u0434\u0435\u043d\u044c\u044e \u043a\u0430\u043a\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0447\u043d\u044b \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438.

    \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0442 FusionFix.

    \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u043e\u0435 \u043a \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0412\u0438\u0434\u0435\u043e\u0440\u0435\u0436\u0438\u043c 1280x720 \u043d\u0430 X3601152x640 \u043d\u0430 PS3 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430 \u0438\u043b\u0438, \u0435\u0441\u043b\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u041e\u043a\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c, \u0440\u0430\u0437\u043c\u0435\u0440 \u0438\u0433\u0440\u043e\u0432\u043e\u0433\u043e \u043e\u043a\u043d\u0430. \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u043a\u0441\u0442\u0443\u0440 \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0442\u0435\u043a\u0441\u0442\u0443\u0440. \u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 (\u043a\u0440\u043e\u043c\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0432 \u0432\u043e\u0434\u0435). \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u043e\u0434\u044b \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0432\u043e\u0434\u044b \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f FusionFix. \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u043d\u0435\u0439 \u0421\u0440\u0435\u0434\u043d\u0435\u0435 (?) \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0438 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 \u0442\u0435\u043d\u0435\u0439. \u0423\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u044b\u0435 \u043d\u043e\u0447\u043d\u044b\u0435 \u0442\u0435\u043d\u0438 \u041e\u0442\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0432\u0435\u0442\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0444\u0430\u0440 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u044f) \u043c\u043e\u0433\u0443\u0442 \u043e\u0442\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u0442\u0435\u043d\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0441\u0430\u043c\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u044d\u0442\u0438\u0445 \u0442\u0435\u043d\u0435\u0439. \u041a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0443\u0440 \u0422\u0440\u0438\u043b\u0438\u043d\u0435\u0439\u043d\u0430\u044f \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0435\u0439 \u0442\u0435\u043a\u0441\u0442\u0443\u0440. \u0414\u0438\u0441\u0442\u0430\u043d\u0446\u0438\u044f \u043e\u0431\u0437\u043e\u0440\u0430 21 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 LOD \u0434\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043a\u0430\u043a \u0437\u0434\u0430\u043d\u0438\u044f \u0438 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442. \u0422\u0430\u043a\u0436\u0435 \u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 \u043f\u0440\u043e\u043f\u043e\u0432. \u0413\u043b\u0443\u0431\u0438\u043d\u0430 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 10 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u0442\u043e\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 LOD \u0434\u043b\u044f \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0432 \u043f\u0440\u043e\u043f\u0430\u0445. \u0422\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u044b\u0439 \u043f\u043e\u0442\u043e\u043a 33 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0430 \u043f\u043e \u0434\u043e\u0440\u043e\u0433\u0430\u0445. \u0421\u043e\u043b\u043d\u0435\u0447\u043d\u044b\u0435 \u043b\u0443\u0447\u0438 \u041e\u0442\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u0435 \u043b\u0443\u0447\u0438 \u0441\u043e\u043b\u043d\u0446\u0430. \u0421\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u041d/\u041f \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435.\u0418\u0433\u0440\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0430 SSAA 2x \u043d\u0430 Xbox 360 \u0438 QAA \u043d\u0430 PS3, \u0438 \u043d\u0438 \u043e\u0434\u043d\u043e \u0438\u0437 \u0434\u0432\u0443\u0445 \u043d\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u043d\u0430 \u041f\u041a. \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u0435\u043b\u044c \u043a\u0430\u0434\u0440\u043e\u0432 30 \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u043a\u0430\u0434\u0440\u043e\u0432. FOV \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e (\u0441\u0430\u043c\u043e\u0435 \u043d\u0438\u0437\u043a\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435) \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0438\u0433\u0440\u043e\u0432\u044b\u043c FOV \u0441 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u043e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432 \u0438\u0433\u0440\u0435. \u0422\u0435\u043d\u0438 \u043e\u0442 \u0444\u043e\u043d\u0430\u0440\u0435\u0439 \u0412\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0442\u0435\u043d\u0438 \u043e\u0442 \u0444\u043e\u043d\u0430\u0440\u0435\u0439 \u0446\u0435\u043d\u043e\u0439 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0433\u043e \u0440\u0435\u0437\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043d\u0435\u0439 \u0438 \u0443\u0445\u0443\u0434\u0448\u0435\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438.

    \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0435 \u042d\u043a\u0440\u0430\u043d.

    \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u043e\u0435 \u043a \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0420\u0430\u0437\u043c\u044b\u0442\u0438\u0435 \u043f\u0440\u0438 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0438 \u0412\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u044d\u0444\u0444\u0435\u043a\u0442\u043e\u043c \u0440\u0430\u0437\u043c\u044b\u0442\u0438\u044f \u043f\u0440\u0438 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0438. \u0421\u0432\u0435\u0447\u0435\u043d\u0438\u0435 \u0412\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u0432\u0435\u0447\u0435\u043d\u0438\u0435. \u041a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0430\u044f \u0433\u0430\u043c\u043c\u0430 \u0412\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442 \u0433\u0430\u043c\u043c\u0443 \u0434\u043b\u044f \u043f\u0440\u0438\u0434\u0430\u043d\u0438\u044f \u0438\u0433\u0440\u0435 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0438\u0434\u0430. \u0424\u0438\u043b\u044c\u0442\u0440 \u044d\u043a\u0440\u0430\u043d\u0430 \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0444\u0430\u0439\u043b timecyc \u0434\u043b\u0447 \u0441\u043e\u043e\u0442\u0432\u0435\u0441\u0442\u0432\u0438\u044f \u0434\u0440\u0443\u0433\u0438\u043c \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u043c \u044d\u043a\u0440\u0430\u043d\u0430 (\u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u0444\u0438\u043b\u044c\u0442\u0440\u044b TBoGT \u0432 IV \u0438\u043b\u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442). \u0413\u043b\u0443\u0431\u0438\u043d\u0430 \u0440\u0435\u0437\u043a\u043e\u0441\u0442\u0438 \u041e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0435 (?) \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0433\u043b\u0443\u0431\u0438\u043d\u0443 \u0440\u0435\u0437\u043a\u043e\u0441\u0442\u0438 \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044d\u0444\u0444\u0435\u043a\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u043a\u0430\u0442\u0441\u0446\u0435\u043d\u0430\u0445. \u041e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u0435 \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432 Console \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0443\u044e \u043e\u043a\u043a\u043b\u044e\u0437\u0438\u044e \u0440\u0430\u0441\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u041f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u044c \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432 Console \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u044c \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432. \u0413\u043b\u0443\u0431\u0438\u043d\u0430 \u043f\u043e\u043b\u044f \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u044f \u041e\u0442\u043a\u043b \u042d\u0442\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0441\u0433\u043b\u0430\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \"\u0441\u0435\u0442\u0447\u0430\u0442\u044b\u0445\" \u0438 \"\u0442\u043e\u0447\u0435\u0447\u043d\u044b\u0445\" \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u043c\u0435\u0440\u0446\u0430\u043d\u0438\u0435 \u0438 \u0441\u0442\u0443\u043f\u0435\u043d\u0447\u0430\u0442\u043e\u0441\u0442\u044c."},{"location":"ru/additional-setup/#_5","title":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f","text":"
    • \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043f\u0430\u043b\u0438 \u0441\u044e\u0434\u0430 \u043f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0430\u0440\u0445\u0438\u0432\u0430, \u043f\u043e\u0437\u0434\u0440\u0430\u0432\u043b\u044f\u044e, \u0432\u044b \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442\u0435 \u0437\u0434\u0435\u0441\u044c!

    • \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442\u0435 \u0447\u0435\u0440\u0435\u0437 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0439\u0442\u0435 \u043a \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u043c\u043e\u0434\u0430\u043c.

    \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043c\u043e\u0434\u044b

    "},{"location":"ru/drag-and-drop-archive/#_2","title":"\u0414\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f","text":"

    TBA

    "},{"location":"ru/drag-and-drop-archive/#_4","title":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f","text":"
    • \u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0430\u0440\u0445\u0438\u0432\u0430, \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u0435 \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0412\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430: \u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438

    • \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 Linux, \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432\u0440\u0443\u0447\u043d\u0443\u044e:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0412\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430: \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430

    "},{"location":"ru/optimization/","title":"\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f","text":"

    \u041c\u044b \u0432\u0441\u0435 \u0437\u043d\u0430\u0435\u043c, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0436\u0430\u0441\u043d\u043e\u0439 \u0431\u044b\u043b\u0430 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0438\u0433\u0440\u044b \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u0440\u0435\u043b\u0438\u0437\u0430. \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0443 \u043d\u0430\u0441 \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u043d\u0435\u0442 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f - \u043d\u043e \u044d\u0442\u043e \u043d\u0435 \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u043c\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u043c \u0443\u043b\u0443\u0447\u0448\u0438\u0442\u044c \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044e.

    "},{"location":"ru/optimization/#dxvk","title":"\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 DXVK?","text":"

    DXVK \u044d\u0442\u043e \u0441\u043b\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u0432\u044b\u0437\u043e\u0432\u044b DirectX API \u0432 Vulkan.

    \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u044d\u0442\u043e \u043d\u0435 \u043c\u0430\u0433\u0438\u044f \u0434\u043b\u044f \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u0430 \u0441\u043a\u043e\u0440\u0435\u0435 \u0441\u043b\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u043b\u044f Linux, \u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 GTA IV \u043d\u0430 \u041f\u041a \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0443\u0436\u0430\u0441\u043d\u043e\u0435, \u0447\u0442\u043e \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0447\u0442\u043e-\u0443\u0433\u043e\u0434\u043d\u043e - \u0445\u043e\u0442\u044f \u0438 \u043d\u0435 \u0432\u0441\u0435\u043c - \u0437\u0430 \u0441\u0447\u0435\u0442 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0426\u041f \u0437\u0430 \u0441\u0447\u0435\u0442 \u043b\u0443\u0447\u0448\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u044b\u0437\u043e\u0432\u043e\u0432 drawcall.

    \u041a\u0430\u043a\u0438\u0445 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0439 \u043c\u043e\u0436\u043d\u043e \u0436\u0434\u0430\u0442\u044c \u043e\u0442 DXVK?

    \u0421\u043a\u0430\u0437\u0430\u0442\u044c \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0441\u043b\u043e\u0436\u043d\u043e, \u0442.\u043a. \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u043e\u0442 DXVK \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0440\u0430\u0437\u043d\u044b\u0435 \u043e\u0442 \u043e\u0434\u043d\u043e\u0433\u043e \u041f\u041a \u043a \u0434\u0440\u0443\u0433\u043e\u043c\u0443. \u0415\u0441\u0442\u044c \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c, \u0447\u0442\u043e DXVK \u0432\u0430\u043c \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0435 \u043f\u043e\u043c\u043e\u0436\u0435\u0442, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0413\u041f \u0438 \u0442\u0430\u043a \u043d\u0430 \u0441\u043e\u0442\u043d\u044e \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d. \u0422\u0430\u043a \u0447\u0442\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043e\u0442\u0432\u0435\u0442 - \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u043a\u0430\u043a\u043e\u0433\u043e-\u0442\u043e \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0437\u0430\u0431\u0438\u0442\u0430 \u043d\u0430 \u0426\u041f.

    \u041e\u0434\u043d\u0430\u043a\u043e \u043f\u0440\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u0445 \u043c\u043e\u0436\u043d\u043e \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u0447\u0435\u0433\u043e-\u0442\u043e \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c\u043e\u0433\u043e \u0441 \u044d\u0442\u0438\u043c \u0442\u0435\u0441\u0442\u043e\u043c:

    "},{"location":"ru/optimization/#_2","title":"\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f","text":"
    • \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0443 \u0432\u0430\u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430.
    • \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 Windows, \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u043a\u044d\u0448 \u0448\u0435\u0439\u0434\u0435\u0440\u043e\u0432 \u0432 Steam, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 - \u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0438.
    • \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 Linux, \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0434\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438, \u0442.\u043a. Proton \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u044c\u0443\u0435\u0442 DXVK.
    "},{"location":"ru/optimization/#setup-utility","title":"Setup Utility (\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430)","text":"

    \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0444\u0442\u0430 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c DXVK \u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0438 \u0431\u0435\u0437 \u043e\u0441\u043e\u0431\u044b\u0445 \u0443\u0441\u0438\u043b\u0438\u0439. \u041e\u043d\u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0437\u0430\u0431\u043e\u0442\u0438\u0442\u0441\u044f \u043e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u043c\u0435\u0436\u0434\u0443 FusionFix, ZolikaPatch \u0438 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u043c\u0438 - \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0444\u0438\u0447 \u0437\u0434\u0435\u0441\u044c.

    • \u0412\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0443\u043b\u0437\u0443 \u0437\u0430\u043d\u043e\u0432\u043e \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u0437\u0436\u0435 \u0441\u043e\u0432\u0435\u0440\u0448\u0438\u0442\u0435 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434 \u0438\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 FusionFix \u0438/\u0438\u043b\u0438 ZolikaPatch.
    • \u0412\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435, \u0434\u0430 \u0438 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0442\u0443\u043b\u0437\u0443 \u043d\u0430 Linux.
    "},{"location":"ru/optimization/#_3","title":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435","text":"
    1. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430.
    2. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 GTAIVSetupUtilityWPF.exe.
    3. \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443.
    4. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 Open \u0438 \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0432\u0430\u0448\u0443 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439. \u0421\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0435\u0441\u043b\u0438 \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f \u0432\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0438\u0435 \u043e\u043a\u043d\u0430.
    5. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 Install DXVK \u0438 Setup launch options \u0432 \u044d\u0442\u043e\u0439 \u0436\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438.
      • \u0415\u0441\u043b\u0438 \u0432\u044b \u0437\u043d\u0430\u0435\u0442\u0435 \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0435, \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0438. \u041e\u0431\u044b\u0447\u043d\u043e, \u0432 \u044d\u0442\u043e\u043c \u043d\u0435\u0442 \u043d\u0443\u0436\u0434\u044b.
      • \u0415\u0441\u043b\u0438 \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0441\u043e\u043e\u0431\u0449\u0438\u0442\u0435 \u043e \u043d\u0438\u0445 \u043d\u0430 Discord \u0441\u0435\u0440\u0432\u0435\u0440\u0435.

    \u041f\u043e\u0441\u043b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0443\u043b\u0437\u044b, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c \u0433\u0440\u0430\u0444\u0438\u043a\u0438:

    \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0412\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430: \u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438

    "},{"location":"ru/optimization/#_5","title":"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430","text":"

    \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043b dxvk.conf \u0432 \u043f\u0430\u043f\u043a\u0435 \u0441 \u0438\u0433\u0440\u043e\u0439 \u0438 \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043b\u044e\u0431\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430:

    # maxFrameLatency \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043e\u0432 \u043a\u0430\u0434\u0440\u043e\u0432 \u0438 \u0444\u0440\u0438\u0437\u043e\u0432. \u042d\u0442\u0430 \u043e\u043f\u0446\u0438\u044f \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 \u0441\u0442\u0440\u043e\u0433\u0443\u044e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0443 \u043a\u0430\u0434\u0440\u043e\u0432.\nd3d9.maxFrameLatency = 1\n# presentInterval \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f VSync. \u041c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 \u0438\u0433\u0440\u043e\u0432\u043e\u0433\u043e VSync. \u0422\u0430\u043a \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u043b\u0443\u0447\u0448\u0443\u044e \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u043d\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440.\nd3d9.presentInterval = 1\n# numBackBuffers \u043c\u043e\u0436\u0435\u0442 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u043b\u0443\u0447\u0448\u0438\u0442\u044c \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c FPS \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 Vsync. \u042d\u0442\u0430 \u043e\u043f\u0446\u0438\u044f \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0445 \u0431\u0443\u0444\u0435\u0440\u043e\u0432 \u0434\u043b\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u043f\u043e\u0434\u043a\u0430\u0447\u043a\u0438 Vulkan.\nd3d9.numBackBuffers = 3\n

    \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f dxvk-async \u0438\u043b\u0438 dxvk-gplasync, \u0442\u0430\u043a\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432 \u0442\u043e\u0442 \u0436\u0435 \u0444\u0430\u0439\u043b:

    # \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043e\u043f\u0446\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f async\ndxvk.enableAsync = true\ndxvk.gplAsyncCache = true\n

    \u0414\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043e\u043f\u0446\u0438\u0439 \u0437\u0434\u0435\u0441\u044c.

    "},{"location":"ru/optimization/#_6","title":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f","text":"

    \u041f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c c \u0432\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u043e\u0439, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044c \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044e \u0438\u0433\u0440\u044b.

    \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433 \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0412\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430

    "},{"location":"ru/preparation/","title":"\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430","text":"

    \u0427\u0442\u043e\u0431\u044b \u043d\u0430\u0447\u0430\u0442\u044c \u043c\u043e\u0434\u0434\u0438\u043d\u0433 \u0438\u0433\u0440\u044b, \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0430\u043c\u0443 \u0438\u0433\u0440\u0443. \u041c\u044b \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u0442\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u044e \u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043c\u043e\u0434\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0432\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c.

    To mod the game, we first need to get your system ready for modding and install the game. We will also go over basic instructions, terminology and mod dependencies you may need later.

    "},{"location":"ru/preparation/#_2","title":"\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439 \u0444\u0430\u0439\u043b\u043e\u0432","text":"

    \u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439 \u0444\u0430\u0439\u043b\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u0432\u0430\u0441 \u0437\u0430\u043f\u0443\u0442\u0430\u0442\u044c \u043f\u0440\u0438 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435 \u0432\u0441\u0435\u0445 \u0444\u0430\u0439\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438 \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0435. \u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432 Windows, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0435\u0441\u043b\u0438 \u0432\u044b \u0435\u0449\u0435 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u043b\u0438 \u0438\u0445, \u0441\u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u044d\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441:

    1. \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u041f\u0440\u043e\u0432\u043e\u0434\u043d\u0438\u043a
    2. \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0432\u043a\u043b\u0430\u0434\u0443 \u0412\u0438\u0434 \u0441\u0432\u0435\u0440\u0445\u0443
    3. \u041d\u0430\u0432\u0435\u0434\u0438\u0442\u0435 \u043c\u044b\u0448\u043a\u0443 \u043d\u0430\u0434 \u0441\u0435\u043a\u0446\u0438\u0435\u0439 \u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0438 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u0438\u0437 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e.
    "},{"location":"ru/preparation/#_3","title":"\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b","text":"

    \u041f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c \u043a\u0430\u043a \u043d\u0430\u0447\u0430\u0442\u044c \u0438\u0433\u0440\u0430\u0442\u044c \u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u0442\u044c\u0441\u044f \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u043e\u043c, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b:

    • \u0412\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u0431\u0443\u0434\u0435\u0442 \u0430\u0440\u0445\u0438\u0432\u0430\u0442\u043e\u0440. \u042f \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e NanaZip \u0438\u043b\u0438 7-Zip.
    • Microsoft Visual C++ Redistributables (\u0438\u0437\u0432\u043b\u0435\u043a\u0438\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 install_all.bat).
    • Microsoft DirectX 9 (June 2010).
    "},{"location":"ru/preparation/#_4","title":"\u0414\u0440\u0430\u0439\u0432\u0435\u0440\u0430","text":"

    \u041d\u0430\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0432\u0430\u0448\u0435\u0439 \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u044b \u043d\u0430 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u0435 \u0434\u043b\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439.

    NVIDIAAMDIntel
    • \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0430\u0439\u0442.
    • \u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u043d\u0430 \u0421\u043a\u0430\u0447\u0430\u0442\u044c \u0431\u0435\u0442\u0430-\u0432\u0435\u0440\u0441\u0438\u044e \u0438 \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b.
    • \u0421\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0447\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0434\u0440\u0430\u0439\u0432\u0435\u0440.
    • \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0430\u0439\u0442.
    • \u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u043d\u0430 Download Windows Drivers \u0438 \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b.
    • \u0421\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0447\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0434\u0440\u0430\u0439\u0432\u0435\u0440.
      • \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0440\u0430\u0439\u0432\u0435\u0440 Adrenalin xx.x.x \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u043c\u0435\u0441\u0442\u043e ... \u0440\u0435\u043a\u043e\u043c\u0435\u0434\u043d\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432.
      • \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 Minimal Install \u0432\u043c\u0435\u0441\u0442\u043e Full Install \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u043d\u044b \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432 Adrenalin.
    • \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0430\u0439\u0442.
    • \u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u043d\u0430 Download now \u0438 \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b.
    • \u0421\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432. \u0418\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0439\u0442\u0435 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f \u043e \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430\u0445 OEM.
    "},{"location":"ru/preparation/#_5","title":"\u0422\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u044f \u0438 \u043f\u043e\u0434\u0441\u0430\u0437\u043a\u0438","text":"
    • \u041f\u0430\u043f\u043a\u0430 \u0441 \u0438\u0433\u0440\u043e\u0439, \u0438\u043b\u0438 \u043a\u043e\u0440\u043d\u0435\u0432\u0430\u044f \u043f\u0430\u043f\u043a\u0430 t\u043e\u0431\u044b\u0447\u043d\u043e \u0441\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043f\u0430\u043f\u043a\u0443, \u0433\u0434\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f GTAIV.exe, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432:
      • Steam: Steam\\steamapps\\common\\Grand Theft Auto IV\\GTAIV
      • Rockstar Games Launcher: Rockstar Games\\Grand Theft Auto IV
    • \u041a\u043e\u0433\u0434\u0430 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0441\u044f \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u043f\u043a\u0443, \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u044b\u0432\u0430\u0439\u0442\u0435 \u0438\u043c\u0435\u043d\u043d\u043e \u043f\u0430\u043f\u043a\u0443, \u0430 \u043d\u0435 \u0435\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 (\u0435\u0441\u043b\u0438 \u043d\u0435 \u0441\u043a\u0430\u0437\u0430\u043d\u043e \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435).
    • GFWL \u044d\u0442\u043e \u0430\u0431\u0431\u0440\u0435\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u0434\u043b\u044f Games for Windows LIVE. GFWL \u044d\u0442\u043e \u043f\u0440\u043e\u043f\u0440\u0438\u0435\u0442\u0430\u0440\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u043e\u0442 Microsoft, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440 \u0438 DRM. XLiveless (\u0438\u043d\u043e\u0433\u0434\u0430 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u043a\u0430\u043a xlive.dll) \u0443\u0434\u0430\u043b\u044f\u0435\u0442 \u0438\u0437 \u0438\u0433\u0440\u044b GFWL. GFWL \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 Complete Edition.
    "},{"location":"ru/preparation/#_6","title":"\u041c\u043e\u0434\u0434\u0438\u043d\u0433 \u0438\u0433\u0440\u044b","text":"

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438\u0433\u0440\u044b

    • \u0415\u0441\u043b\u0438 \u0432\u044b \u0440\u0430\u043d\u0435\u0435 \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0438\u0433\u0440\u0443 \u0438\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u0438 \u0441\u0431\u043e\u0440\u043a\u0438, \u043d\u0430\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0438\u0433\u0440\u0443 \u0438\u0437 \u043b\u0430\u0443\u043d\u0447\u0435\u0440\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0441\u0435 \u043e\u0441\u0442\u0430\u0442\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u0432 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u043f\u0430\u043f\u043a\u0435, \u0442\u0430\u043a \u043a\u0430\u043a \u043b\u0430\u0443\u043d\u0447\u0435\u0440\u044b \u0438\u0445 \u043d\u0435 \u0443\u0434\u0430\u043b\u044f\u044e\u0442.
    • \u0424\u0430\u0439\u043b\u044b \u0441 \u0438\u0433\u0440\u043e\u0439 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b \u0438\u043b\u0438 \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043f\u0430\u043f\u043a\u0430\u0445 \u0432\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f Steam, \u043e\u043d\u0430 \u0442\u0430\u043a\u0436\u0435 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u0430 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 C:\\Program Files \u0438\u043b\u0438 C:\\Program Files (x86).

    \u042f \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u0432\u043a\u043b\u0430\u0434\u043a\u0435, \u0447\u0442\u043e\u0431\u044b \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u0439 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b.

    \u0415\u0441\u043b\u0438 \u0432\u0441\u0435 \u0432\u044b\u0448\u0435\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043e, \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043a \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u0442\u0440\u0430\u043d\u0438\u0446:

    • \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u043d\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0443\u0447\u0448\u0443\u044e \u0441\u0431\u043e\u0440\u043a\u0443 \u0434\u043b\u044f \u0441\u044e\u0436\u0435\u0442\u043a\u0438:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0413\u043e\u0442\u043e\u0432\u044b\u0439 \u0430\u0440\u0445\u0438\u0432

    • \u0415\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0440\u043e\u0439\u0442\u0438 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e\u0448\u0430\u0433\u043e\u0432\u043e \u0438 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u043d\u0430\u0447\u043d\u0438\u0442\u0435 \u0441 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433\u0430:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433

    \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0412\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435

    "},{"location":"ru/downgrading/","title":"\u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433","text":"

    \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0432\u0441\u0435 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u044b \u0438 \u0431\u044b\u043b\u0430 \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0430 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430. \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043e\u0434\u0438\u043d \u0438\u0437 \u0448\u0430\u0433\u043e\u0432, \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0438 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430 \u0443 \u0432\u0430\u0441 \u043c\u043e\u0433\u0443\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0438 \u0432\u044b \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443. \u0412 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u044d\u0442\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0442\u044c\u0441\u044f.

    \u0412\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435: \u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430

    "},{"location":"ru/downgrading/#_2","title":"\u0417\u0430\u0447\u0435\u043c \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u0442\u044c \u0440\u0430\u0434\u0438\u043e?","text":"

    \u0412 \u0430\u043f\u0440\u0435\u043b\u0435 2018 \u0433\u043e\u0434\u0430 \u0431\u043e\u043b\u0435\u0435 50 \u0442\u0440\u0435\u043a\u043e\u0432 \u0431\u044b\u043b\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u044b \u0441 \u0440\u0430\u0434\u0438\u043e\u0441\u0442\u0430\u043d\u0446\u0438\u0439 \u0438\u0433\u0440\u044b \u0438\u0437-\u0437\u0430 \u043f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0439 \u0438 \u0431\u044b\u043b\u0438 \u0437\u0430\u043c\u0435\u043d\u0435\u043d\u044b \u043d\u0430 \u043d\u0435\u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0447\u043d\u044b\u0435 \u0442\u0440\u0435\u043a\u0438.

    "},{"location":"ru/downgrading/#_3","title":"\u0417\u0430\u0447\u0435\u043c \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u0442\u044c \u0438\u0433\u0440\u0443?","text":"

    \u0417\u0430 \u0433\u043e\u0434\u044b \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0433\u0440\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0435\u0440\u0441\u0438\u0439 \u0441 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u043c\u0435\u0436\u0434\u0443 \u043d\u0438\u043c\u0438. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u0445\u043e\u0442\u0435\u0442\u044c \u0441\u043e\u0432\u0435\u0440\u0448\u0438\u0442\u044c \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0434\u043d\u043e \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e:

    • \u0412\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0433\u0440\u0430\u0442\u044c \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440.
    • \u0412\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0437\u0431\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u043e\u0442 DRM.
    • \u0423 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u043c\u043e\u0434\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442 Complete Edition (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Liberty Tweaks).
    • \u0412\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043e\u0437\u0438\u0442\u044c\u0441\u044f \u0441 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u043c\u043e\u0434\u0430\u043c\u0438 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, ICEnhancer). \u042f, \u043a \u0441\u043b\u043e\u0432\u0443, \u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0438 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e \u0438\u0445.

    \u041e\u0434\u043d\u0430\u043a\u043e \u0438\u043c\u0435\u0439\u0442\u0435 \u0432 \u0432\u0438\u0434\u0443, \u0447\u0442\u043e \u0432\u044b \u043f\u043e\u0442\u0435\u0440\u044f\u0435\u0442\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043d\u043e\u0432\u0435\u0439\u0448\u0438\u0445 \u0444\u0438\u043a\u0441\u043e\u0432, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 FusionFix \u043d\u0435 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0441\u0442\u0430\u0440\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438.

    "},{"location":"ru/downgrading/#_4","title":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f","text":"

    \u0427\u0442\u043e\u0431\u044b \u043e\u0431\u043b\u0435\u0433\u0447\u0438\u0442\u044c \u0441\u0435\u0431\u0435 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c, \u0440\u0435\u0448\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u0442\u044c \u0441\u0435\u0439\u0447\u0430\u0441: \u0440\u0430\u0434\u0438\u043e, \u0432\u0435\u0440\u0441\u0438\u044e \u0438\u0433\u0440\u044b \u0438\u043b\u0438 \u0438 \u0442\u043e, \u0438 \u0434\u0440\u0443\u0433\u043e\u0435.

    • \u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433 \u0440\u0430\u0434\u0438\u043e (\u043d\u0430\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0434\u0435\u043b\u0430\u0442\u044c \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c):

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433 \u0440\u0430\u0434\u0438\u043e

    • \u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433 \u0438\u0433\u0440\u044b \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0439:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433 \u0438\u0433\u0440\u044b

    \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430

    "},{"location":"ru/downgrading/downgrading-the-game/","title":"\u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0434\u0438\u043d\u0433 \u0438\u0433\u0440\u044b","text":""},{"location":"ru/downgrading/downgrading-the-game/#_2","title":"\u0412\u0435\u0440\u0441\u0438\u0438 \u0438\u0433\u0440\u044b","text":"

    \u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u0434\u0432\u0443\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u044b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c\u0441\u044f, \u0438 \u0438\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u044f\u0445. \u0412\u0435\u0440\u0441\u0438\u044f 1.0.4.0 \u0447\u0438\u0441\u043b\u0438\u0442\u0441\u044f \u043b\u0438\u0448\u044c \u0432 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0446\u0435\u043b\u0435\u0439 - \u043c\u044b \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0435 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430.

    Complete Edition (1.2.0.59)

    \u042d\u0442\u043e \u043d\u043e\u0432\u0435\u0439\u0448\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0438\u0433\u0440\u044b, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0432\u044b \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0438\u0433\u0440\u044b \u043d\u0430 Steam \u0438\u043b\u0438 Rockstar Games Launcher. \u042d\u0442\u0443 \u0432\u0435\u0440\u0441\u0438\u044e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043b\u0443\u0447\u0448\u0438\u0435 \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u0435\u043d\u0438\u044f \u043e\u0442 \u0441\u044e\u0436\u0435\u0442\u043a\u0438.

    \u041f\u043b\u044e\u0441\u044b \u0438 \u043c\u0438\u043d\u0443\u0441\u044b

    \u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0438\u0437 \u043a\u043e\u0440\u043e\u0431\u043a\u0438. \u041d\u0435 \u0442\u0440\u0435\u0431\u0443\u044e\u0442\u0441\u044f \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0438\u0433\u0440\u044b. \u041b\u0443\u0447\u0448\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0434\u043b\u044f \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043c\u043e\u0434\u043e\u0432, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0441\u043b\u0435 2020 \u0433\u043e\u0434\u0430 - \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a FusionFix. \u042d\u0442\u043e \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0444\u0438\u043a\u0441\u043e\u0432 \u043f\u0440\u0438 \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0435. \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u0442 EFLC. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f Steam \u0438 Social Club \u0438\u0437 \u043a\u043e\u0440\u043e\u0431\u043a\u0438.

    \u0422\u0440\u0435\u0431\u0443\u0435\u0442 Rockstar Games Launcher \u0438 \u0435\u0433\u043e DRM, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u043c \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c \u043f\u0440\u0438\u0447\u0438\u043d\u0430\u043c: \u0438\u0433\u0440\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043c\u0438\u043d\u0443\u0442\u0443 \u0434\u043e\u043b\u044c\u0448\u0435 \u0438 \u043d\u0435 \u0434\u0430\u0435\u0442 \u043d\u0438\u0447\u0435\u0433\u043e, \u043a\u0440\u043e\u043c\u0435 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439, \u0438 \u044d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u0432\u0435 \u043f\u0440\u0438\u0447\u0438\u043d\u044b. \u0421\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441\u043e \u0441\u0442\u0430\u0440\u044b\u043c\u0438 \u043c\u043e\u0434\u0430\u043c\u0438 \u043d\u0435 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f. \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0434\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442, \u043d\u043e \u0435\u0441\u0442\u044c \u0438 \u0442\u0430\u043a\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442. \u041e\u0434\u043d\u0430\u043a\u043e \u043e\u043d\u0438 \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0434\u043b\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438\u0433\u0440\u044b. \u0412\u044b\u0440\u0435\u0437\u0430\u043d \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440, \u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u044b \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u044b. \u041d\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439 GFWL (Xbox Live).

    \u0420\u043e\u0437\u043d\u0438\u0447\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f (1.0.8.0)

    \u042d\u0442\u043e \u0432\u0435\u0440\u0441\u0438\u044f \u0438\u0433\u0440\u044b, \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u0432\u0448\u0430\u044f \u0434\u043e \u0432\u044b\u0445\u043e\u0434\u0430 Complete Edition. \u042d\u0442\u0443 \u0432\u0435\u0440\u0441\u0438\u044e \u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0435\u0441\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0433\u0440\u0430\u0442\u044c \u0432 \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440, \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u043c\u043e\u0434\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442 CE, \u0438\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0433\u0440\u0430\u0442\u044c \u0431\u0435\u0437 DRM..

    \u041f\u043b\u044e\u0441\u044b \u0438 \u043c\u0438\u043d\u0443\u0441\u044b

    \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440. DRM \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u0431\u0440\u0430\u043d, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u044d\u0442\u0443 \u0432\u0435\u0440\u0441\u0438\u044e \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0442\u0435\u0445, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u0438\u0433\u0440\u0430\u0442\u044c \u0431\u0435\u0437 DRM. \u041b\u0443\u0447\u0448\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0434\u043b\u044f \u0441\u0442\u0430\u0440\u044b\u0445 \u043c\u043e\u0434\u043e\u0432, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043e 2020 \u0433\u043e\u0434\u0430, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a Liberty Tweaks. \u0415\u0441\u043b\u0438 \u0432\u044b \u0441\u0430\u043c\u0438 \u043d\u0435 \u0437\u043d\u0430\u0435\u0442\u0435 \u043d\u0438 \u043e\u0434\u043d\u043e\u0433\u043e, \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u044d\u0442\u043e \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u044b\u043c \u043f\u043b\u044e\u0441\u043e\u043c. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f GFWL (Xbox Live), \u043d\u043e \u0446\u0435\u043d\u043e\u0439 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439 Steam.

    \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u0430\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 FusionFix, \u0447\u0442\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0439. \u0414\u043b\u044f \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440\u0430, \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c GFWL, \u0447\u0442\u043e \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0435\u0449\u0435 \u0442\u043e\u0439 \u043c\u043e\u0440\u043e\u043a\u043e\u0439. \u0425\u043e\u0442\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0430\u044f \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0430. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 EFLC \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0435\u0440\u0435\u0437 \u043c\u043e\u0434\u044b. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439 Steam \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0435\u0440\u0435\u0437 \u043c\u043e\u0434\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0442\u0430\u043a\u0436\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u044e\u0442 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f GFWL. \u0422\u0430\u043a\u0436\u0435 \u043d\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439 Social Club.

    \u0420\u043e\u0437\u043d\u0438\u0447\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f (1.0.4.0)

    \u042d\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0435\u0437\u043d\u0430 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u044d\u0442\u043e\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430, \u043d\u043e \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u043d\u0430 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u0430 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435, \u0435\u0435 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044c - \u0438 \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c, \u043f\u043e\u0447\u0435\u043c\u0443 \u043c\u044b \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u0435\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c. \u042d\u0442\u0443 \u0432\u0435\u0440\u0441\u0438\u044e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0435\u0441\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043c\u043e\u0434\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432 \u044d\u0442\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435.

    \u041f\u043b\u044e\u0441\u044b \u0438 \u043c\u0438\u043d\u0443\u0441\u044b

    \u041b\u0443\u0447\u0448\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043c\u043e\u0434\u043e\u0432. \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u043b\u0443\u0447\u0448\u0435 \u0441\u0440\u0435\u0434\u043d\u0438\u0439 FPS. DRM \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u0431\u0440\u0430\u043d, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u044d\u0442\u0443 \u0432\u0435\u0440\u0441\u0438\u044e \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0442\u0435\u0445, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u0438\u0433\u0440\u0430\u0442\u044c \u0431\u0435\u0437 DRM. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f GFWL (Xbox Live).

    \u041d\u0438\u043a\u0430\u043a\u0443\u0449\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043c\u043e\u0434\u043e\u0432. \u0423\u0436\u0430\u0441\u043d\u044b\u0439 \u0444\u0440\u0435\u0439\u043c\u043f\u0435\u0439\u0441\u0438\u043d\u0433 (\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438). \u041d\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 EFLC. \u041d\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439 Steam \u0438\u043b\u0438 Social Club.

    "},{"location":"ru/downgrading/downgrading-the-game/#_3","title":"\u0418\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433\u0430","text":"

    \u041a\u0430\u043a\u043e\u0439 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0435\u0440 \u0432\u044b\u0431\u0440\u0430\u0442\u044c?

    • \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0435\u0440 \u043e\u0442 ItsClockAndre \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434 \u0434\u043e 1.0.4.0 \u0438\u043b\u0438 \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u043c\u043e\u0438\u043c.
    • \u0414\u043b\u044f \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u0435\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043c\u043e\u0439.
    Gillian's GTA IV Downgrade Utility\u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0435\u0440 \u043e\u0442 ItsClockAndre

    \u042f \u0441\u0434\u0435\u043b\u0430\u043b \u0441\u0432\u043e\u0439 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0435\u0440 \u0434\u043b\u044f \u0441\u0432\u043e\u0438\u0445 \u0446\u0435\u043b\u0435\u0439 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u044b \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0435\u0440\u0443 \u043e\u0442 ItsClockAndre. \u042d\u0442\u043e\u0442 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0435\u0440 \u043c\u0430\u043b \u043f\u043e \u0432\u0435\u0441\u0443 \u0438 \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \"\u0441\u043b\u043e\u043c\u0430\u043d\u043d\u044b\u0435\" \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u044b \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0430 \u0432\u044b \u0432\u044b\u0431\u0440\u0430\u043b\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0435\u0433\u043e.

    1. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430.
    2. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 GTAIVDowngradeUtilityWPF.zip.
    3. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 \u0432 \u043b\u044e\u0431\u0443\u044e \u043f\u0443\u0441\u0442\u0443\u044e \u043f\u0430\u043f\u043a\u0443.
    4. \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 GTAIVDowngradeUtilityWPF.exe.
    5. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 Open \u0438 \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439. \u0421\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0435\u0441\u043b\u0438 \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f \u0432\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0438\u0435 \u043e\u043a\u043d\u0430.
    6. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 Downgrade \u0434\u043b\u044f \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0430 \u0438\u0433\u0440\u044b. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442 \u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435.
      • \u0415\u0441\u043b\u0438 \u0432\u044b \u0437\u043d\u0430\u0435\u0442\u0435 \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0435, \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0438. \u0422\u043e\u043b\u044c\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \"Full downgrade\" \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b \u0432\u0441\u0435 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b
      • \u0415\u0441\u043b\u0438 \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0441\u043e\u043e\u0431\u0449\u0438\u0442\u0435 \u043e \u043d\u0438\u0445 \u043d\u0430 Discord \u0441\u0435\u0440\u0432\u0435\u0440\u0435.

    \u042d\u0442\u043e\u0442 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0435\u0440 \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0444\u0430\u0439\u043b\u043e\u0432, \u0447\u0435\u043c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0443\u0436\u043d\u043e \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0445\u0443\u0434\u0448\u0435\u043c\u0443 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044e \u0438\u0433\u0440\u044b \u0432 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u0435\u0441\u0442\u0430\u0445. \u0412 \u043d\u0435\u043c \u0442\u0430\u043a\u0436\u0435 \u0435\u0441\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0432\u0435\u0440\u0448\u0438\u0442\u044c \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434 \u0434\u043e 1.0.4.0, \u0447\u0435\u0433\u043e \u043d\u0435\u0442 \u0432 \u043c\u043e\u0435\u043c \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0435\u0440\u0435. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043e\u043d \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u0435 \u0432\u044b\u0431\u043e\u0440\u044b, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f.

    1. \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432 \u0430\u043d\u0442\u0438\u0432\u0438\u0440\u0443\u0441\u0435 \u0434\u043b\u044f \u043f\u0430\u043f\u043a\u0438 \u0441 \u0438\u0433\u0440\u043e\u0439. \u041d\u0435 \u043f\u0435\u0440\u0435\u0436\u0438\u0432\u0430\u0439\u0442\u0435 - \u0441\u043e\u0444\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439.
    2. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 GTAForums \u0438 \u0441\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e.
    3. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 IVDowngrader.exe \u0441 \u043f\u0440\u0430\u0432\u0430\u043c\u0438 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430.
    4. \u0421\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438. \u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f \u043f\u0440\u0438 \u0432\u044b\u0431\u043e\u0440\u0435 \u043c\u043e\u0434\u043e\u0432.
    • \u0423 \u0432\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0440\u0443\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 \u0438 \u0440\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0438\u0437 \u043d\u0435\u0433\u043e \u043f\u0430\u043f\u043a\u0443 update \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439, \u0432 Settings - Display - Language \u0441\u043c\u0435\u043d\u0438\u0442\u0435 \u044f\u0437\u044b\u043a \u043d\u0430 \u0420\u0443\u0441\u0441\u043a\u0438\u0439.
    • \u041f\u043e\u0441\u043b\u0435 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0430, \u0432\u0441\u0435\u0433\u0434\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0439\u0442\u0435 \u0438\u0433\u0440\u0443 \u0447\u0435\u0440\u0435\u0437 Steam \u0438\u043b\u0438 PlayGTAIV.exe.
    • \u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 Rockstar Games Launcher, \u043d\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0439\u0442\u0435 \u0438\u0433\u0440\u0443 \u0438\u0437-\u043f\u043e\u0434 \u043b\u0430\u0443\u043d\u0447\u0435\u0440\u0430.
    • \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0443\u0436\u0435 \u0431\u044b\u043b\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430, \u0438\u0445 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0432 commandline.txt \u043f\u043e\u0441\u043b\u0435 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0430.
    • \u041f\u0440\u0438 \u0436\u0435\u043b\u0430\u043d\u0438\u0438, \u0432\u044b \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439 \u043a\u0443\u0434\u0430-\u0443\u0433\u043e\u0434\u043d\u043e.
    Games for Windows - LIVE

    \u0415\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u0438\u0433\u0440\u0430\u0442\u044c \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440 \u0438\u043b\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f \u0432 Xbox Live, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 GFWL \u043f\u0440\u0438 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433\u0435 \u0438, \u043f\u043e\u0441\u043b\u0435 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0430, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u043a \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0434\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 GFWL.

    \u041d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u0439\u0442\u0435 \u044d\u0442\u0443 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u043d\u0438 \u0442\u043e\u0433\u043e, \u043d\u0438 \u0434\u0440\u0443\u0433\u043e\u0433\u043e - \u0432\u044b \u043b\u0438\u0448\u044c \u0443\u0441\u043b\u043e\u0436\u043d\u0438\u0442\u0435 \u0441\u0435\u0431\u0435 \u0440\u0430\u0431\u043e\u0442\u0443. \u0415\u0441\u043b\u0438 \u0432\u044b \u0432\u043a\u043b\u044e\u0447\u0438\u043b\u0438 \u0435\u0435 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e, \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u0443\u0439\u0442\u0435 dinput8.dll \u043d\u0430 xlive.dll. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043d\u0435\u0442 \u044d\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 - \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 Ultimate ASI Loader \u0432\u0440\u0443\u0447\u043d\u0443\u044e.

    Setup Utility

    \u0415\u0441\u043b\u0438 \u0432\u044b \u0432\u0435\u0440\u043d\u0443\u043b\u0438\u0441\u044c \u0441\u044e\u0434\u0430 \u043f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 Setup Utility \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0432\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 \u0437\u0430\u043d\u043e\u0432\u043e.

    "},{"location":"ru/downgrading/downgrading-the-game/#_4","title":"\u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f","text":"

    \u0415\u0441\u043b\u0438 \u0432\u044b \u0443\u0436\u0435 \u043d\u0430\u0447\u0430\u043b\u0438 \u0438\u0433\u0440\u0430\u0442\u044c \u043d\u0430 Complete Edition, \u0442\u043e, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0432\u0430\u043c \u0437\u0430\u0445\u043e\u0447\u0435\u0442\u0441\u044f \u0442\u0430\u043a\u0436\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u0441\u0442\u0430\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439.

    "},{"location":"ru/downgrading/downgrading-the-game/#_5","title":"\u0418\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438","text":"
    1. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u0439\u0434\u0438\u0442\u0435 \u0441\u0432\u043e\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0432 Documents\\Rockstar Games\\GTA IV\\Profiles\\(id)\\. \u041e\u043d\u0438 \u043d\u0430\u0437\u0432\u0430\u043d\u044b \u0432 \u044d\u0442\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435: SGTAxxx.
    2. \u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435 \u0442\u043e\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430 GTASnP.
    3. \u0420\u0430\u0437\u0432\u0435\u0440\u043d\u0438\u0442\u0435 \u0432\u043a\u043b\u0430\u0434\u043a\u0443 Modifications.
    4. \u0412 Downgrade Version \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 1.0.8.0 IV / 1.1.3.0 EFLC and older.
    5. \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u043b\u043e\u0442, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0441\u0432\u043e\u0439 \u0444\u0430\u0439\u043b \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f. \u0423 \u0432\u0430\u0441 \u0434\u043e\u043b\u0436\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0441\u044f \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435.
    6. \u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u0435 \u0435\u0433\u043e \u0432 C:\\Users\\(user)\\AppData\\Local\\Rockstar Games\\GTA IV\\savegames\\user_(id)\\.
    "},{"location":"ru/downgrading/downgrading-the-game/#_6","title":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f","text":"

    \u041f\u043e\u0441\u043b\u0435 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433\u0430, \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435 \u0441 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0435\u0439:

    \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433 \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f

    "},{"location":"ru/downgrading/downgrading-the-radio/","title":"\u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433 \u0440\u0430\u0434\u0438\u043e","text":"

    \u0415\u0441\u043b\u0438 \u0432\u044b \u0440\u0430\u043d\u0435\u0435 \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434 \u0438\u0433\u0440\u044b, \u044d\u0442\u043e\u0442 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0435\u0440 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c.

    \u0418\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438

    1. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0441 \u043d\u043e\u0432\u0435\u0439\u0448\u0438\u043c \u0440\u0435\u043b\u0438\u0437\u043e\u043c.
    2. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 Radio.Restoration.Mod.xx-xx-xxxx.zip.
    3. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 \u0432 \u043b\u044e\u0431\u0443\u044e \u043f\u0443\u0441\u0442\u0443\u044e \u043f\u0430\u043f\u043a\u0443.
    4. \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 IVCERadioRestorer.exe \u0438 \u0441\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438.
    5. \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u044d\u0442\u043e \u0434\u043b\u044f \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e\u0433\u043e \u0432\u0432\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0443\u0437\u044b\u043a\u0438 \u0432 \u043c\u0435\u043d\u044e TBoGT.
    only pre-cut Vladivostok\" \u0438 \"pre-cut plus post-cut\"?

    Rockstar \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u043d\u0430 \u0412\u043b\u0430\u0434\u0438\u0432\u043e\u0441\u0442\u043e\u043a \u043d\u043e\u0432\u044b\u0435 \u0442\u0440\u0435\u043a\u0438 \u0432\u0437\u0430\u043c\u0435\u043d \u0432\u044b\u0440\u0435\u0437\u0430\u043d\u043d\u044b\u0445. \"pre-cut plus post-cut\" \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442 \u0438\u0445 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0432\u044b\u0440\u0435\u0437\u0430\u043d\u043d\u044b\u043c\u0438, \u0430 \"only pre-cut\" \u0432\u044b\u0440\u0435\u0437\u0430\u0435\u0442 \u0438\u0445, \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0435.

    \u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f

    • \u0415\u0441\u043b\u0438 \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u0436\u0435\u043b\u0430\u0435\u0442\u0435 \u0441\u043e\u0432\u0435\u0440\u0448\u0438\u0442\u044c \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434 \u0438\u0433\u0440\u044b, \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435 \u0437\u0434\u0435\u0441\u044c:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433 \u0438\u0433\u0440\u044b

    • \u0415\u0441\u043b\u0438 \u043d\u0430 \u044d\u0442\u043e\u043c \u0443 \u0432\u0430\u0441 \u0432\u0441\u0435, \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435 \u0441 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0435\u0439:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f

    \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0414\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043d\u0433

    "},{"location":"ru/essential-modding/","title":"\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043c\u043e\u0434\u044b","text":"

    \u0412 \u044d\u0442\u043e\u0439 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438 \u0432\u044b \u043d\u0430\u0439\u0434\u0435\u0442\u0435 \u043c\u043e\u0434\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f \u0441\u0447\u0438\u0442\u0430\u044e \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 GTA IV, \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c\u0438 \u043f\u043e \u0438\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435.

    \u041a\u0430\u0436\u0434\u044b\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043c\u043e\u0434 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 Ultimate ASI Loader.

    "},{"location":"ru/essential-modding/#_2","title":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f","text":"
    • FusionFix \u043c\u0435\u0442\u0438\u0442 \u043d\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0438 \u0433\u0435\u0439\u043c\u043f\u043b\u0435\u0439\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043d\u043e\u0432\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438. \u041d\u0430\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u043c.

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 FusionFix

    • ZolikaPatch \u0443\u043b\u0443\u0447\u0448\u0430\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440\u0430 \u0438 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0434\u043b\u044f \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u043d\u0443\u0442\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u0435\u0439. \u041d\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0439\u0442\u0435, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u043b\u0438\u0441\u044c.

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 ZolikaPatch

    • Various Fixes \u043c\u0435\u0442\u0438\u0442 \u043d\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u043b\u0438 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u043a\u0430\u0440\u0442\u043e\u0439 \u0438 \u0442\u0435\u043a\u0441\u0442\u0443\u0440\u0430\u043c\u0438.

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 Various Fixes

    • \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0438\u043a\u0441\u044b \u044d\u0442\u043e \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u043c\u0435\u043b\u043a\u0438\u0445 \u0444\u0438\u043a\u0441\u043e\u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0438\u043c\u0435\u044e\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0438\u043c\u0435\u0442\u044c \u043a\u0430\u0436\u0434\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438.

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0438\u043a\u0441\u044b (\u0441\u043f\u0438\u0441\u043e\u043a)

    \u041f\u0440\u0435\u0434\u0443\u0434\u044b\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0412\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430

    "},{"location":"ru/essential-modding/additional-fixes/","title":"\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0438\u043a\u0441\u044b (\u0441\u043f\u0438\u0441\u043e\u043a)","text":"

    \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043c\u043e\u0434\u044b \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0444\u0438\u043a\u0441\u0430\u043c\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f \u0431\u044b \u043f\u043e\u0441\u0447\u0438\u0442\u0430\u043b \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438, \u0442.\u043a. \u043e\u043d\u0438 \u043d\u0435 \u0438\u043c\u0435\u044e\u0442 \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u043c\u0438\u043d\u0443\u0441\u043e\u0432 \u0438\u043b\u0438 \u043d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0435\u0439.

    \u0414\u043b\u044f \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u043c\u043e\u0434\u043e\u0432 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f FusionFix. \u042d\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0442\u044c, \u0447\u0442\u043e \u043e\u043d \u0443 \u0432\u0430\u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0431 \u044d\u0442\u043e\u043c \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0442\u044c.

    "},{"location":"ru/essential-modding/additional-fixes/#luis-helmet-reflections-fix","title":"Luis' Helmet Reflections Fix","text":"

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u0431\u043b\u0435\u043a\u0448\u0438\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043d\u0430 \u0448\u043b\u0435\u043c\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438\u0433\u0440\u043e\u043a\u0430 \u0432 TBoGT.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0442 \u0430\u0440\u0445\u0438\u0432.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 update \u0438\u0437 \u0430\u0440\u0445\u0438\u0432\u0430 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
    "},{"location":"ru/essential-modding/additional-fixes/#replaced-esperanto-by-romans-taxi-in-cab-depot-fixed-pedestrian-reactions","title":"Replaced Esperanto by Roman's Taxi in Cab Depot & Fixed Pedestrian Reactions","text":"

    \u042d\u0442\u0438 \u043c\u043e\u0434\u044b \u043e\u0442 Attramet \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0434\u043e\u0447\u0435\u0442\u044b \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0438\u043c\u0435\u044e\u0442 \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u0441\u043c\u044b\u0441\u043b\u0430.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0442 \u0430\u0440\u0445\u0438\u0432.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 update \u0438\u0437 \u0430\u0440\u0445\u0438\u0432\u0430 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
    "},{"location":"ru/essential-modding/additional-fixes/#liberty-ferry-terminal-waiting-sign-fix-sugar-chomps-separate-signs","title":"Liberty Ferry Terminal - Waiting Sign Fix & Sugar Chomps - Separate Signs","text":"

    \u042d\u0442\u0438 \u043c\u043e\u0434\u044b \u043e\u0442 donnits \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442 \u043c\u0435\u043b\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043f\u043e \u043a\u0430\u0440\u0442\u0435.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0442 \u0430\u0440\u0445\u0438\u0432.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 update \u0438\u0437 \u0430\u0440\u0445\u0438\u0432\u0430 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
    "},{"location":"ru/essential-modding/additional-fixes/#responsive-plus-cargrpdat-carcolsdat","title":"Responsive Plus - \u0444\u0438\u043a\u0441\u044b cargrp.dat \u0438 carcols.dat","text":"

    \u042d\u0442\u0438 \u0444\u0438\u043a\u0441\u044b \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0434\u043e\u0447\u0435\u0442\u044b \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u0430\u0445, \u0438\u0437-\u0437\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u0438 \u043d\u0435 \u0441\u043f\u0430\u0432\u043d\u044f\u0442\u0441\u044f \u0442\u0430\u043a, \u043a\u0430\u043a \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043e.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0442 \u0430\u0440\u0445\u0438\u0432.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 update \u0438\u0437 \u0430\u0440\u0445\u0438\u0432\u0430 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
    "},{"location":"ru/essential-modding/additional-fixes/#fixed-suit-display-in-perseus","title":"Fixed Suit Display in Perseus","text":"

    \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0433\u043e \u043a\u043e\u0441\u0442\u044e\u043c\u0430 \u0432 Perseus, \u0442.\u043a. \u0432\u044b \u043f\u043e\u043a\u0443\u043f\u0430\u0435\u0442\u0435 \u043a\u043e\u0441\u0442\u044e\u043c, \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u043e\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u043e\u0433\u043e.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0442 \u0430\u0440\u0445\u0438\u0432.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 update \u0438\u0437 \u0430\u0440\u0445\u0438\u0432\u0430 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
    "},{"location":"ru/essential-modding/additional-fixes/#pistol-iron-sight-fix","title":"Pistol Iron Sight Fix","text":"

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u043d\u0435\u0434\u043e\u0447\u0435\u0442 \u0432 \u043c\u043e\u0434\u0435\u043b\u0435 \u043f\u0438\u0441\u0442\u043e\u043b\u0435\u0442\u0430 \u0433\u0434\u0435 \u043f\u0440\u0438\u0446\u0435\u043b \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u0441\u043c\u044b\u0441\u043b\u0430.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0442 \u0430\u0440\u0445\u0438\u0432.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 update \u0438\u0437 \u0430\u0440\u0445\u0438\u0432\u0430 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
    "},{"location":"ru/essential-modding/additional-fixes/#menu-art-fix","title":"Menu Art Fix","text":"

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0444\u043e\u043d\u044b \u0441 \u043d\u0438\u0437\u043a\u0438\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c \u0432 \u043c\u0435\u043d\u044e EFLC.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0442 \u0430\u0440\u0445\u0438\u0432.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 update \u0438\u0437 \u0430\u0440\u0445\u0438\u0432\u0430 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
    "},{"location":"ru/essential-modding/additional-fixes/#iv-bikers-in-episodes-voice-sets-fix","title":"IV Bikers in Episodes voice sets fix","text":"

    \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u044b\u0445 \u043b\u0438\u043d\u0438\u0439 \u0431\u0430\u0439\u043a\u0435\u0440\u043e\u0432 \u0438\u0437 IV \u0432 EFLC.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 GTAForums.
    2. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0443 Download.
    3. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0444\u0430\u0439\u043b BYeah.dat16 \u0432 GTAIV/TLAD/pc/audio/config/.
    4. \u0415\u0441\u043b\u0438 \u0440\u0430\u0434\u0438\u043e \u0431\u044b\u043b\u043e \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u043d\u0443\u0442\u043e \u043f\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0443, \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u043f\u043e\u0441\u043b\u0435 <game content=\"ascii\">ex:/pc/audio/config/epx_game.dat</game> \u0432 \u0444\u0430\u0439\u043b\u0435 e1_audio.xml \u0432 \u043f\u0430\u043f\u043a\u0435 GTAIV/update/TLAD/ \u0438 \u0444\u0430\u0439\u043b\u0435 e2_audio.xml \u0432 \u043f\u0430\u043f\u043a\u0435 GTAIV/update/TBoGT/:
        <game content=\"ascii\">platform:/audio/config/BYeah.dat</game>\n
    • \u0415\u0441\u043b\u0438 \u0440\u0430\u0434\u0438\u043e \u043d\u0435 \u0431\u044b\u043b\u043e \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u043d\u0443\u0442\u043e \u043f\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0443, \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0444\u0430\u0439\u043b\u044b \u0441 \u0442\u0435\u043c \u0436\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c \u0438\u0437 \u0432\u0430\u043d\u0438\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u043f\u043e\u043a GTAIV/TLAD|TBoGT/ \u0432 \u043f\u0430\u043f\u043a\u0443 update \u0438 \u0441\u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0442\u043e \u0436\u0435 \u0441\u0430\u043c\u043e\u0435, \u0447\u0442\u043e \u0438 \u0432\u044b\u0448\u0435.
    "},{"location":"ru/essential-modding/additional-fixes/#player-outfit-texture-fixes","title":"Player Outfit Texture Fixes","text":"

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0437\u0435\u043b\u0435\u043d\u043e\u0432\u0430\u0442\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u0443\u0440\u044b \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u044f\u0445 \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u0436\u0435\u0439.

    \u0423\u0441\u0442\u0430\u043d\u043e\u044b\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0442 \u0430\u0440\u0445\u0438\u0432.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 update \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
    3. \u0414\u0440\u0443\u0433\u0438\u0435 \u043f\u0430\u043f\u043a\u0438 \u0440\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432 \u043b\u044e\u0431\u0443\u044e \u043f\u0443\u0441\u0442\u0443\u044e \u043f\u0430\u043f\u043a\u0443.
    4. \u0421\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 playerped.rpf \u0438\u0437 GTAIV/pc/models/cdimages/ \u0432 GTAIV/update/pc/models/cdimages/.
    5. \u0421\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 playerped.rpf \u0438\u0437 GTAIV/TBoGT/pc/models/cdimages/ \u0432 GTAIV/update/TBoGT/pc/models/cdimages/.
    6. \u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0430\u0440\u0445\u0438\u0432\u044b \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0441 OpenIV.
    7. \u0421\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0444\u0430\u0439\u043b\u044b \u0438\u0437 IV - playerped.rpf \u0432 \u0430\u0440\u0445\u0438\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0432 \u044d\u0442\u0430\u043f\u0435 4.
    8. \u0421\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0444\u0430\u0439\u043b\u044b \u0438\u0437 TBoGT - playerped.rpf \u0432 \u0430\u0440\u0445\u0438\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0432 \u044d\u0442\u0430\u043f\u0435 5.
    "},{"location":"ru/essential-modding/additional-fixes/#luis-bag-texture-fix","title":"Luis' Bag Texture Fix","text":"

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u044e\u0449\u0438\u0435 \u043a\u0430\u0440\u0442\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u0435\u0439 \u0438 \u0441\u043f\u0435\u043a\u0443\u043b\u044f\u0446\u0438\u0439 \u0438 \u0443\u043b\u0443\u0447\u0448\u0430\u0435\u0442 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u043a\u0441\u0442\u0443\u0440 \u043d\u0430 \u0441\u0443\u043c\u043a\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438\u0433\u0440\u043e\u043a\u0430 \u0432 TBoGT.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u043c\u043e\u0434.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 \u0432 \u043b\u044e\u0431\u0443\u044e \u043f\u0443\u0441\u0442\u0443\u044e \u043f\u0430\u043f\u043a\u0443.
    3. \u0421\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 playerped.rpf \u0438\u0437 GTAIV/TBoGT/pc/models/cdimages/ \u0432 GTAIV/update/TBoGT/pc/models/cdimages/.
      • \u041f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u044d\u0442\u043e\u0442 \u044d\u0442\u0430\u043f \u0435\u0441\u043b\u0438 \u0432\u044b \u0443\u0436\u0435 \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u043b\u0438 \u0440\u0430\u043d\u0435\u0435 \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043c\u043e\u0434\u0430\u043c\u0438.
    4. \u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0430\u0440\u0445\u0438\u0432 \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0441 OpenIV.
    5. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0444\u0430\u0439\u043b\u044b \u0438\u0437 \u043c\u043e\u0434\u0430, \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u0435 \u0444\u0430\u0439\u043b\u044b suse_002_u.wdr \u0438 suse_002_a_uni.wdr \u0432 \u0430\u0440\u0445\u0438\u0432\u0435.
    "},{"location":"ru/essential-modding/additional-fixes/#johnnys-shoe-texture-fix","title":"Johnny's Shoe Texture Fix","text":"

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u044e\u0449\u0438\u0435 \u043a\u0430\u0440\u0442\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u0435\u0439 \u0438 \u0441\u043f\u0435\u043a\u0443\u043b\u044f\u0446\u0438\u0439 \u0432 \u043e\u0431\u0443\u0432\u044c \u043c\u043e\u0434\u0435\u043b\u0438 \u0438\u0433\u0440\u043e\u043a\u0430 \u0432 TLAD.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u043c\u043e\u0434.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 \u0432 \u043b\u044e\u0431\u0443\u044e \u043f\u0443\u0441\u0442\u0443\u044e \u043f\u0430\u043f\u043a\u0443.
    3. \u0421\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 playerped.rpf \u0438\u0437 GTAIV/TLAD/pc/models/cdimages/ \u0432 GTAIV/update/TLAD/pc/models/cdimages/.
    4. \u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0430\u0440\u0445\u0438\u0432 \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0441 OpenIV.
    5. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0444\u0430\u0439\u043b \u0438\u0437 \u043c\u043e\u0434\u0430, \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u0435 \u0444\u0430\u0439\u043b feet_000_u.wdr \u0432 \u0430\u0440\u0445\u0438\u0432\u0435.
    "},{"location":"ru/essential-modding/additional-fixes/#reduced-trafic-screech-audio-tweak","title":"Reduced Trafic Screech (Audio Tweak)","text":"

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0448\u0443\u043c\u0430 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0430 \u0432 Algonquin\u0435, \u0447\u0442\u043e\u0431\u044b \u043e\u043d \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u043b \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u0443\u0440\u043e\u0432\u043d\u044e, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u0443\u0441\u043b\u044b\u0448\u0430\u0442\u044c \u043d\u0430 Times Square.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430
    1. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u043c\u043e\u0434.
    2. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 \u0432 \u043b\u044e\u0431\u0443\u044e \u043f\u0443\u0441\u0442\u0443\u044e \u043f\u0430\u043f\u043a\u0443.
    3. \u0421\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 resident.rpf \u0438\u0437 GTAIV/pc/audio/sfx/ \u0432 GTAIV/update/pc/audio/sfx/.
    4. \u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0430\u0440\u0445\u0438\u0432 \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0441 OpenIV.
    5. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0444\u0430\u0439\u043b \u0438\u0437 \u043c\u043e\u0434\u0430, \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u0435 \u0444\u0430\u0439\u043b AMB_RESIDENT \u0432 \u043f\u0430\u043f\u043a\u0435 RESIDENT \u0432\u043d\u0443\u0442\u0440\u0438 \u0430\u0440\u0445\u0438\u0432\u0430.
    "},{"location":"ru/essential-modding/additional-fixes/#img","title":"\u041b\u0438\u043c\u0438\u0442\u044b .img","text":"

    \u0412\u044b, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e .img \u043c\u043e\u0434\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f OpenIV \u0432\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u0435 \u043b\u0438\u043c\u0438\u0442\u0430.

    \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u043a\u0430\u043a \u0431\u043b\u0438\u0437\u043a\u043e \u0432\u044b \u043a \u043b\u0438\u043c\u0438\u0442\u0430\u043c, \u0435\u0441\u043b\u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u0435 ExtraInfo \u043d\u0430 1 \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0435 FusionFix'\u0430 GTAIV.EFLC.FusionFix.ini - \u044d\u0442\u043e \u0434\u0430\u0441\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u043d\u0438\u0437\u0443 \u044d\u043a\u0440\u0430\u043d\u0430 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 - \u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 1.2.0.58. \u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0432\u0435\u0440\u0441\u0438\u044e \u0441\u0442\u0430\u0440\u0435\u0435, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u043f\u0435\u0440\u0435\u0448\u043b\u0438 \u043b\u0438 \u0432\u044b \u043b\u0438\u043c\u0438\u0442, \u0437\u0430\u0439\u0434\u044f \u0432 TBoGT \u0438 \u0443\u0432\u0438\u0434\u0435\u0432, \u0435\u0441\u0442\u044c \u043b\u0438 \u043d\u0430 \u0434\u043e\u0440\u043e\u0433\u0435 \u043c\u0430\u0448\u0438\u043d\u044b (\u0435\u0441\u043b\u0438 \u043d\u0435\u0442\u0443 - \u0432\u044b \u043f\u0435\u0440\u0435\u0448\u043b\u0438 \u043b\u0438\u043c\u0438\u0442 \u0438 \u044d\u0442\u043e \u0437\u043d\u0430\u043a \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u043e\u0434\u043e\u0432 \u0432\u043c\u0435\u0441\u0442\u0435).

    "},{"location":"ru/essential-modding/additional-fixes/#_2","title":"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f","text":"

    \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 Various Fixes \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c\u044b\u0435 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f

    "},{"location":"ru/essential-modding/fusionfix/","title":"FusionFix","text":"

    \u0421\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u043e\u0444\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0441 Complete Edition, \u043d\u043e \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u044f \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0435\u0449\u0438 \u0432\u0432\u0438\u0434\u0443, \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438 \u043d\u0430 1.0.8.0.

    \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0441\u0442\u0430\u0440\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0431\u0440\u0435\u0437\u0430\u043d\u0430 \u0432\u043b \u044e\u0431\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043d\u0435 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0442 \u043f\u043e\u043c\u043e\u0449\u0438 \u0441 \u044d\u0442\u0438\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b.

    \u042d\u0442\u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u043c\u0435\u0442\u0438\u0442 \u043d\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0438 \u0433\u0435\u0439\u043c\u043f\u043b\u0435\u0439\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043d\u043e\u0432\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438. \u041e\u0431\u043e \u0432\u0441\u0435\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u0445 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043d\u0430 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438.

    \u0414\u0435\u043c\u043e

    TBA

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430

    1.2.0.591.0.8.0
    1. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430.
    2. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 GTAIV.EFLC.FusionFix.zip.
    3. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
      • \u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0437\u0430\u043d\u043e\u0432\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Setup Utility \u0435\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0432\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438.
      • \u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u0434\u043b\u044f FusionFix.

    \u041e\u0442\u0441\u0443\u0442\u0441\u0432\u0443\u044e\u0449\u0438\u0435 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 FusionFix \u043d\u0430 1.0.8.0 \u0438\u0437\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u0430\u0441 \u043e\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u044b \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u043e\u0442 Fusion Team \u0435\u0441\u043b\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442 \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b. \u0418\u043c\u0435\u0439\u0442\u0435 \u044d\u0442\u043e \u0432\u0432\u0438\u0434\u0443.

    1. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430.
    2. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 GTAIV.EFLC.FusionFix.zip.
    3. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
    4. \u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u0435 \u0444\u0430\u0439\u043b\u044b \u0438\u0437 \u043f\u0430\u043f\u043a\u0438 plugins \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
      • \u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u0443\u0439\u0442\u0435 dinput8.dll \u043d\u0430 xlive.dll \u0435\u0441\u043b\u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f GFWL. \u0417\u0430\u043c\u0435\u043d\u0438\u0442\u0435 \u0435\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f.
      • \u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0437\u0430\u043d\u043e\u0432\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Setup Utility \u0435\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0432\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438.
      • \u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u0434\u043b\u044f FusionFix.
      • \u041d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u0439\u0442\u0435 Check For Fusion Fix Updates.

    \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f GFWL \u0434\u043b\u044f \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440\u0430...

    \u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u0435 \u044d\u0442\u043e\u0442 \u043f\u0430\u0442\u0447 \u043d\u0430\u0432\u0435\u0440\u0445.

    \u0415\u0441\u043b\u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0438\u0433\u0440\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440, \u043f\u043e\u0434\u0443\u043c\u0430\u0439\u0442\u0435 \u043e\u0431 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0430\u0442\u0447\u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440\u0430 \u0434\u043b\u044f \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438.

    \u041c\u043e\u0434\u043b\u043e\u0430\u0434\u0438\u043d\u0433

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d \u0434\u043b\u044f \u043c\u043e\u0434\u043b\u043e\u0430\u0434\u0438\u043d\u0433\u0430. \u0421\u043c\u043e\u0442\u0440\u0438\u0442\u0435 Fusion Overloader \u0434\u043b\u044f \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0435\u0439.

    \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430

    \u0411\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 \u0438\u0433\u0440\u043e\u0432\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445.

    \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c GTAIV.EFLC.FusionFix.ini \u0438\u043b\u0438 GTAIV.EFLC.FusionFix.cfg \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u043e\u0437\u0430-\u0438\u0433\u0440\u043e\u0439 \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u0430 \u044d\u0442\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u044b. \u0421\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u0441\u043f\u0438\u0441\u043e\u043a \u043d\u0435\u0438\u0433\u0440\u043e\u0432\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0438\u0445 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c.

    \u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f

    • \u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0430 \u0438\u0433\u0440\u0430 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u043d\u0443\u0442\u0430, \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435 \u0441 ZolikaPatch:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 ZolikaPatch

    • \u0415\u0441\u043b\u0438 \u0436\u0435 \u043d\u0435\u0442, \u0442\u043e \u0437\u0430\u043c\u0438\u0441\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435 \u0441 Various Fixes:

      \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 Various Fixes

    \u041f\u0440\u0435\u0434\u044b\u0434\u0449\u0443\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043c\u043e\u0434\u044b

    "},{"location":"ru/essential-modding/various-fixes/","title":"Various Fixes","text":"

    \u042d\u0442\u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u043c\u0435\u0442\u0438\u0442 \u043d\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u043b\u0438 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u043a\u0430\u0440\u0442\u043e\u0439 \u0438 \u0442\u0435\u043a\u0441\u0442\u0443\u0440\u0430\u043c\u0438. \u041e\u0431\u043e \u0432\u0441\u0435\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u0445 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 GTAForums.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430

    1. \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0443 \u0432\u0430\u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d FusionFix.
    2. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u043f\u0430\u043f\u043a\u0443 Google Drive.
    3. \u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u0430\u0440\u0445\u0438\u0432 Installation through Fusion Overloader.rar.
    4. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 update (\u043d\u0435 \u0435\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435) \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439. \u0417\u0430\u043c\u0435\u043d\u0438\u0442\u0435 \u0444\u0430\u0439\u043b\u044b \u0435\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f.
      • \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0447\u0430\u0441\u0442\u0438 \u0438\u0437 \u0430\u0440\u0445\u0438\u0432\u0430 Optional Content.rar. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043f\u0430\u043f\u043a\u0443 Installation through Fusion Overloader \u0438 \u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0442\u043e\u0436\u0435 \u0441\u0430\u043c\u043e\u0435 \u0441 \u0435\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c, \u0447\u0442\u043e \u0438 \u0432 \u044d\u0442\u0430\u043f\u0435 4.
    \u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f

    \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0434\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 ZolikaPatch \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0438\u043a\u0441\u044b (\u0441\u043f\u0438\u0441\u043e\u043a)

    "},{"location":"ru/essential-modding/zolikapatch/","title":"ZolikaPatch","text":"

    \u0421\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c

    \u042d\u0442\u043e\u0442 \u043c\u043e\u0434 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u043d\u0443\u0442\u044b\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438, \u043d\u043e \u043d\u0435 Complete Edition. \u041f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u044d\u0442\u043e\u0442 \u043c\u043e\u0434 \u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0435\u0441\u044c \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u0438\u0442\u044c\u0441\u044f - \u0435\u0433\u043e \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u0442\u043e\u0433\u043e \u043d\u0435 \u0441\u0442\u043e\u044f\u0442 \u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0438\u0433\u0440\u0430\u0435\u0442\u0435 \u0432 \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440.

    \u042d\u0442\u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u0443\u043b\u0443\u0447\u0448\u0430\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u043c\u0443\u043b\u044c\u0442\u0438\u043f\u043b\u0435\u0435\u0440\u0430 \u0438 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0434\u043b\u044f \u0434\u0430\u0443\u043d\u0433\u0440\u0435\u0439\u0434\u043d\u0443\u0442\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u0435\u0439. \u041e\u0431\u043e \u0432\u0441\u0435\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u0445 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0437\u0434\u0435\u0441\u044c.

    \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430

    1. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 Zolika1351's Zone.
    2. \u041f\u0440\u043e\u043a\u0440\u0443\u0442\u0438\u0442\u0435 \u0434\u043e \u043a\u043e\u043d\u0446\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0438 \u0441\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e.
    3. \u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 ZolikaPatch_vx_x.zip \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0433\u0440\u043e\u0439.
      • \u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0437\u0430\u043d\u043e\u0432\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Setup Utility \u0435\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0432\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438.

    \u0415\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f FusionFix...

    Setup Utility (\u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f Windows)

    Setup Utility \u043c\u043e\u0436\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0441\u0435 \u044d\u0442\u043e \u0437\u0430 \u0432\u0430\u0441.

    \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 ZolikaPatch.ini \u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438:

    • BikePhoneAnimsFix
    • BorderlessWindowed
    • BuildingAlphaFix
    • BuildingDynamicShadows
    • CarDynamicShadowFix
    • CarPartsShadowFix
    • CutsceneFixes
    • DoNotPauseOnMinimize
    • DualVehicleHeadlights
    • EmissiveLerpFix
    • EpisodicVehicleSupport
    • EpisodicWeaponSupport
    • ForceCarHeadlightShadows
    • ForceDynamicShadowsEverywhere
    • ForceShadowsOnObjects
    • HighFPSBikePhysicsFix
    • HighFPSSpeedupFix
    • HighQualityReflections
    • ImprovedShaderStreaming
    • MouseFix
    • NewMemorySystem
    • NoLiveryLimit
    • OutOfCommissionFix
    • PoliceEpisodicWeaponSupport
    • RemoveBoundingBoxCulling
    • ReversingLightFix
    • SkipIntro
    • SkipMenu

    \u0418\u043c\u0435\u0439\u0442\u0435 \u0432\u0432\u0438\u0434\u0443, \u0447\u0442\u043e \u044d\u0442\u043e \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043d\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0438 \u043d\u0435 \u043b\u043e\u043c\u0430\u0435\u0442 \u043d\u0438\u0447\u0435\u0433\u043e, \u0442.\u043a. \u044d\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0443\u0436\u0435 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u0432 FusionFix.

    \u0427\u0442\u043e \u0437\u0430 GFWLProtectionDisabler2019.asi?

    \u042d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f GFWL \u043e\u0442 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u043c\u043e\u0434\u043e\u0432 .asi.

    \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430

    \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 ZolikaPatch.ini \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 \u0444\u0430\u0439\u043b \u043f\u043e \u043d\u0430\u0434\u043e\u0431\u043d\u043e\u0441\u0442\u0438. \u0412\u0441\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u043c\u0435\u044e\u0442 \u043e\u0431\u044c\u044f\u0441\u043d\u0435\u043d\u0438\u044f \u0440\u044f\u0434\u043e\u043c \u0441 \u043d\u0438\u043c\u0438.

    \u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f

    \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 FusionFix \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 Various Fixes

    "},{"location":"ru/resources/mod-dependencies/#ultimate-asi-loader","title":"Ultimate ASI Loader","text":"

    UAL is used to load .asi mods (one of the most common types of GTA IV mods) into the game. It's multipurpose and can be used for many other games, but we will use it for GTA IV.

    Compatibility

    Ultimate ASI Loader is compatible with all game versions.

    Installation
    1. Go to the Releases page.
    2. Download Ultimate-ASI-Loader.zip (not Ultimate-ASI-Loader_x64.zip).
    3. Extract the archive into the game folder.

    If using Linux...

    Add WINEDLLOVERRIDES=\"dinput8=n,b\" %command% to your Launch options:

    • Steam: Right click the game in your library, press Properties... and paste the line in the Launch options field.
    • Rockstar Games Launcher: Open the game page in your library, open settings and paste the line in the Launcher arguments field.
    • Windows shortcut: Right click on the game shortcut, click Properties and paste the line in Target field.

    Getting rid of Games for Windows - LIVE (for retail patches)

    This tool can be used to get rid of GFWL if you're not interested in official GFWL multiplayer and Xbox Live achievements. This will reduce the amount of hassle and setup you have to do.

    • Rename the dinput8.dll to xlive.dll

    Modloading

    Ultimate ASI Loader can be used for modloading purposes. See modloading for more details.

    "},{"location":"ru/resources/mod-dependencies/#iv-sdk-net","title":"IV-SDK .NET","text":"

    Compatibility

    • Only compatible with 1.0.8.0 and 1.0.7.0. Downgrade if using Complete Edition.
    • See Getting ScriptHookDotNet and IV-SDK .NET to work on Linux if running Linux.

    IV-SDK .NET is used to run scripts written in any .NET language. Not to be confused with ScriptHookDotNet.

    Installation
    1. Go to the Releases page.
    2. Download IV-SDK.NET.vx_x_x.zip.
    3. Extract the archive into the game folder.
    Clonk's Coding Library

    Some mods may require extensions from Clonk's Coding Library.

    Installation

    • Go to the Releases page.
    • Download ClonkCodingLib.GTAIV.vx_x.zip.
    • Extract the archive into the game folder.
    "}]} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 00000000..19670221 --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,353 @@ + + + + https://gillian-guide.github.io/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/additional-setup/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/drag-and-drop-archive/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/enhancements/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/optimization/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/preparation/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/downgrading/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/downgrading/downgrading-the-game/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/downgrading/downgrading-the-radio/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/essential-modding/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/essential-modding/additional-fixes/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/essential-modding/fusionfix/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/essential-modding/various-fixes/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/essential-modding/zolikapatch/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/extras/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/extras/launcher/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/extras/modloading/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/extras/mods/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/extras/multiplayer/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/extras/trainers/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/resources/credits/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/resources/mod-dependencies/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/resources/openiv/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/resources/similar-guides-modpacks/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/resources/troubleshooting/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/additional-setup/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/drag-and-drop-archive/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/enhancements/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/optimization/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/preparation/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/downgrading/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/downgrading/downgrading-the-game/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/downgrading/downgrading-the-radio/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/essential-modding/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/essential-modding/additional-fixes/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/essential-modding/fusionfix/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/essential-modding/various-fixes/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/essential-modding/zolikapatch/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/extras/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/extras/launcher/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/extras/modloading/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/extras/mods/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/extras/multiplayer/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/extras/trainers/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/resources/credits/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/resources/mod-dependencies/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/resources/openiv/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/resources/similar-guides-modpacks/ + 2024-11-23 + daily + + + + + https://gillian-guide.github.io/ru/resources/troubleshooting/ + 2024-11-23 + daily + + + + \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz new file mode 100644 index 0000000000000000000000000000000000000000..94ae3d0c8cccd09212f9ba15b34a5b61a11bba19 GIT binary patch literal 1025 zcmV+c1pfOUiwFn+8$o9R|8r?{Wo=<_E_iKh0Nt9wa+@#^hVOj}4|hzQ^iXFU=hi1^ zA3%XMXd)yk3ERojSJ)m07o4`yN=V5e0Rrsm|AHbs-|BH+v)LA;qJlppi}_751D=b5 z^70}1`Qv-~EqPpjS+$ZW&@*!~R}V?0b#tF(yWMWCsD_#}YA$4%sk|~fDmxv_ZsyD6 zc+LI3(lxuda(8#QX0co@v%_zb^_Q9X>S`Ug4tq@G>+ULLE-NWxl<>4{X#w++>Z*O3 zQ<1H*?yTN5MCn=->)V^#ujyiu-rkurPRHKP$}7T4*hu)bE(m2WtE_kA?X*L0_l)xA znFKQg!Zb)uG$gZ1!iJG9Dd5Mw;|SmDHOc<>-m?AId&~BG`&D+1@dJU9qM+LRMG%%6 z>}?ZO!h_}=M}D=Q9fLxWG9|o73n`kE$h@Lkhzi8`2prRRzo;D&;3l;kYT#N$MdG4y z#{foa+2t-8O>6o}x~D9v+%Fn;ocm}kyWATI4UzH1-tXIS>SLuW=Y6r`r6k=7EUwwU z*SG6Aexwv$=)LV!SCE#ZhGq4yrMp?gq~a~TZBJE*H2V3XUl-N!ekM&!ue#^IgSurxNLEs<2T z>Qg*hmt*k`YrH%*uvfw8Giiv9_9*!AM0E z66PD_AftQ)&b|9#FeqmSK!Osj%*{eKmtbBf<3cd(-Z6yh1+g%gSknR;;05rULaaOn z!|(>?YGo`!!rYr~Bjs{x-W!cS>R~ZZw5E*6;~A=Z8*E7a9P7h!Z8Y8}{jC8kY+8!; ziGiww(6PO8TpxuuOxFrq;%Nim@F5M&r9o$%X@Hg+j(FzPsU% zy4fpe-n=^N=mXQ;>@75JYMpiTVHt1MCYmp~&i;QuP|};VjONR)L(M%<@6C;RHmP^# z6k90jnd##Hm5++hVBkPnCAsQJ|IuowiT#34y)ejPkS5-MH> z%2WFIvrt%K9G0o(S;fPG5s({);;Z>o@vIqysK+4*Ykqw^L=piSa@eZcL~b4;q+ldD v9B<95l!u5RTu;uCsWz>she$3wRSsENo5s;Q5jy-(px3_vK_6CWqfP(-d>8>0 literal 0 HcmV?d00001

    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 literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/enhancements.png b/assets/images/social/ru/enhancements.png new file mode 100644 index 0000000000000000000000000000000000000000..465a9608ee2e6adcd4c6500c95ffd1a61d9e88fd GIT binary patch literal 46501 zcmeFZS6EYB*EJkUC_#D>EOhB0C{3gpLhnUFlMYHpKtOtvjshwIA__#B0jVNII?|D@ zpnx>#MS3sa%KbjK&wKqx|G|I#N8dg|a3^c8HP@J9j5*hi(a}<-gk6R~AP`Db6$L#A zgt!C(A@n9A0l(2k`I|x@70#*(a{4~$s}qj`;P=i*H~K`%IqL?bR4D4y?r2HV&?XX5 z7{uP58!ms;KU>I?eCOG=Ksx0W9=<^ZePV(fm|pfi(u7X0@~d>iZ8ZA%1c%g%iPiht zzUStBe{8+qE*$puv?QL+zp^8SkhA~i!d}k_mxTQN*Vgq=MTP%dR!_+V{`~{YNyC!% zKbNkN4PjjLf3D`s^hW>Q0RNua`0owak~U)Gzjs84ah3dg15e?N|N9mHccR$;e~GAM z9a7YPq7x$rNu*IKKxhRHPzD*)j)fIb#J&o8@)7gx6ycNt_6|ZO z!xzr-rm7SMGD4ffQ)m|UWN&^}L9Q-ti;x*7aq&A-pb4?8p$0xj;rg+=ca?6>oK(wB z8p!bmG4)n@1s%PhAxs=xIZ*qEk#NG5T;pYB1wYd0ZGPg2jUwcQ$s$8A2%V8@?V&<; zA%qG4ZcwZT2M5R0bQDV@RzKrjHa$JPI!8%37QN)ux;` z$r{((o90NQc~XrzLb0!m7VI?NOzIfWq$9+pJ>F`e_f7w9b9>JPp}6%I z#okY(%Xo4W-YGpzOiNpyy#q}|DmXAJFpUzlzM^1DvL?^px}Sp3`k_a0Bv(poFd!@0 zoA)INd#&-%tDi!4MBOg>CwHC@>ZV0jU6r!x>=XQd!W-3?f+&o#mHCx??<<6{2t)TAZL2*#{=q2Gx0!C&kgnh$e5nfw}0aKSWXSFqX5U>kTC)HAv)8P5yn0 zNyDY*XWIxy%|K2{-o(F)v-Kj0?$V`8Syb;de0_cUy(abxud`XY+sgH6JYMhGHEyWo z-U(Cf`x?2t2``FSM&#d0UNtDr9L3n&!ZI9eXw>>f;3oO3bnfbE({r`dM zh)|S_@Wl&rLZU*f;jr|v_61#@1vLzlwbgCJwM3zC7LnpG4WHZWJa9yh35K%wU(Ap7 zfjViD^Y(p^Hg7Y}VKAirL`Q**D?5H!wwxE?8!>e?WU!jQjx~#uRi4T9i`BnNpRdGY zN{ve&R#Pb#yw_(-Hy3nSZ6P^N$Yd{$x&}(oC-CpEjC^wQPUaup@P~2yO(%{Jv-AvJ z;&9cjd>?5m+C(|R973T#Pb2j&{arKKS8T*P9^c{b8m$QVzgXMY4Al8Q`e;AUys%JU zSR9#Drf}(&NA}Vw-?ES?6ZmPd>XYll4BSp3urVJ>F0GVV)ry zc%hOZ#_>poxBons*hI5I79i%c0!i6CPeSG}(v<*%Yy|IcXE3DIvecHo0Xy}Vs{OEmr6 z8pWM-$C0ldI>kjy99h#wk{7~^J{a_*iBbHiKNej6RnF=>`UJBOj=!rTEesTJY!^zU$ZQ5I_oNS(U z^KoGjcTTm~{ru=pywcOlzAoom-9lL_H3^s7C@%>UgDDF7^FVYOL$5d}(;2<&LH+*y zNK|w*&rD2-it!;AC$a4zxd3h;wGr0{#uB|!^to4mqR8yC_1Vdx4*bv1s+&ZK_nJxZ zTEod!-1~Yyy>F+`JAQtC9Y<8(ee%@+XkObccb{#;SaCqh%E~q-9!>hXuw1uzb zwD_*^q3pi*E35J!ZoA(Mk1L9CxQjA=o{dNG`p-PIg|Ri`@{Y^9Z0zi@p6J-?y;d(9 zNRZDshY7;VH)q>t+pav=`B~&}`Tp0mh}JlU+2Qwh@+}%J~I<1q@<)o^2=wIvgeJ|O{1tgbEi;s@GF%g%I`i# zb$()kpI6I-kL$L3rQE+^3}23Z3Oe-z*!sRl5=6vKwT!s<_ks^Il3vT<`1u&h)x5V( zf1%v2uPtBqotks`*xE%=dz$*wy)loKBQ;AV2{#DX&Q$hK{u#o4!#SpEGAG4+dA}zu zO%R038EmhCH`HLLh?NL{8C%_gI*|qZ>w3=Z_Uwp@`4*& zC0#U3Oivdwf`2*r-@nfldEru+nA3NkK=FHBaIlXq%J}aIl%CcfuWujTvpGLIt(uAD zCuH!1;%XW!$y+ZJTE<5WNA11TfvZk~XlnHOSaW~OVxZoJAJ^R_YV zcCf6+!-sYEO(|JqYsZNV>il+VdxdloX(&Dt5RqicJtmO|I`OGK-rSTsSL~AMWWj7c zP|N(5y&{h%Hq%1RFH*C-*D6M^;D4HrwI{Ir*^VR8Nz|`e%6(n?eZt`z4pH;y4|9@) z6IQ3EF*a%Q`u(1Z#V$D`@Xuh=T9xX%xJn5L;elr3=em>o-b^IrmHF-6#!$b2{xxrg z(@HE4LiXrh`H$NBRfq?V9g9?|qiDbss@4Y~DH$R}Lc?jG)C=SUOp>b_q-9eKsIG5yxVk_VHrzkmP6|F7SjFN`W25qKo?Tp#~&PCqA)c@kymG+M$& zLd9rgJqCugdAN{~GHL+EeBqLCHlIAvl>c{q03O|^*mWoGpI}5p;*XsVx8^v{Ob1qR z{6$rSs;a7-pRV2g)Z^9=v10%At;`kw{dGlib7n>=(s;&OVfg(8_?!60{1Y(F&965n z;ipWp?lZ(7!tV}^+|pUYcxuDG%Vg{Hy_MPQmHK13zdq6N^{b+m7M1tvXlUhR&=n?0 zPn5Ma*6{p6!|A6i8v%Haze;;NQ{9Y)x;lUP*AI6q{nl>V_p=tCJ~?|$yXZ~=uSHG2 zOOR~_8!Ykl>$sDX07gkqvh9Vwc7Sg2`T0CUF7&jtmvqg;S|$~=FmRFfxd&J3>E!Mo z^9)#6-HkYR*|;9SInwnrulAJiQT?lG7*ZC!_!uB$10-;>l_BUGi;UmLk(5!e6G+)V z^4%#gxOM{2p>4F(rtZx8r?dE%_V#z0uf?kl=Ut|Ux zrXKJ;U-zo1|5`=W-cP3+?lTItU>#-0cw~tRv@>K=Z$0EPsdQbduy`ZsrIV+{w6iio zO?~_1y6oxBos(IX^Xn(b7L`lXHzxzi4a+v;gz6jHo?dZ3UaL$QmGxdV$`HYZISgPG zK`f!c6|)8wvgJ?1`Fcge*ZbSm-bSn}EGK(o57Yxn|9mT8F!|&hQ|G^bG=6@xQY^H& z06;INKFE+0Hosa^*p-?)|&&?(X;~ ztYs!DxLYZx^yFeF?NueqwkMZ#Fz4UVWS;)_iD#JE!y6mUPalkfYlc$L~giW_Z&Bk!QZLD&i-PrEC zZFnRBwD%LTg;$36+PDY^2-sTqz1b)W8N6I04UCxN-e=;iusrN9G!`k2 zct~&%aP@_dgM-7|*`Cz+HynmSJwJ+*+t zxfBVI=;K*#o6l_Kf~jETJ_Uq@=ak+fP^mzvskcajXv5xvk;QE2a}ByGJjG~R0E@65Zw7p4M<^{TDajdX-KH8 zek$j$SRNiP8uLE5UdRS5nkDV#gY}2UZ)N;(;)yh`ZrDWj{r(1WY^nRKQiez>e%VsY z{oXf!`e0CCaf6I)WAR-=@?kX&2ckQ7gyFQXP(Z+_1Y!}mivSZjhbaal@mYSKcM_YW z!|@~vtj0UQ1vo#Qf}oV}_)X?%)((Qvct+&&g!#0ecGHy8-f#qid324}il58=?!naj z*Vm5>1QXDki)}x6XEte5VRX#a0H30INmKx8koULB_+2H$o&S zNEZ$fE2=M%%gQ8yGJ^&Ng`9Teh@Q(ZuUf?%9$A)R)*bhYYzdY5=~5}?dD0p$T)r{V z8_6aGg}+Z6Q0~LM1EW1QowWt4Wvvbq z&;FcW&^&w^zIh!WLa|Hh3&namWe~{}jvDm>#${ieo{F%A_qC2kf#g_mEwQ{fBur=s z1ersO3t&L|ucofm$$kf*6Y_#v`{+$$+6@~LIv~QGySuwv05j6|TpEPB{QQVl0l!6- zHo-uX54K#(e_RJ>R(vWfEbR8DZXXMlaPe22)Oy2tP=k3a&Eg(kf$%a+r=vAq{CF1m?5eWgX)Y@tU)M^UMwY<`6JM9R zC6;nALaKUd(#Naicqq_Hm(bOhX2$CwjB9!;W`EPN)Ts73e@&51Z~868;4_e$+!p(@ z=#F>R#zq!=skkb~o<68QY;*Eovc-J%UaO@`MOltC5W?t;_zjD8ByZ;Q*?D*f3jzvF zHwL4(IO8ahe6;?g=`pFl3yYW|JXhmY7|<0qAfX-rnCUOJxXlP;)|a3gH*Rn;4_p>^ zzUVkoWM<96%Na?<6uUH(X9L1$w95S|9!(lf=7eP1J={ZGi-q|fQiH!zOL{I&eVYeV z{3$8355#Gts5PER>iVN~Q&YdC9HTN@Rg`tn`hH>=v7afBNK*jTw||~(v{27xoS$%u zKlt^;W$e>*3-xUUKr5eRWLQ`?fTe8xbIA`7J|(Ef^dHNSd$&;Arg${!SCZA7k>+a!wIkS9GyHILIiK%Tx=<)uaeZR*x0RaIK4GKW*2;&Na+r3Ut1hNJj>jI9@0AM^MFtL4V{382wUP4%y*> zz!!7kAfk%s6iH9sUIZ!y%HK%w9t9&;+>~XhFM6MK;4XWZw@66G=SjA>knEIFLqc9> zDUO7YGeOBeEQ`D-tg$5QCe0gKdg$-z>4{LL`{m)`QTquqUpbkl^=9j*!S`F|OL-Z9 zo87g(`+`fe1Y`^6(Gr5kHFWUm4G)dwCUPpfyH6yk}ZeZbL+#;uneXX~H;bd3l9 zs`WJ=`&r>c8kaLw$CxuBMFeAZ5asV*gQ_d;CkmR?_yo!ZpPgj35$m7(s~8i?2>R_V z&sDf|KIb&Q9nSEx)Fx^~++rj(IyzrCfKxu4hSPlO&VlbHhYE)0z)u6kEjfb*0G}7)NyG0s3yeJ^z*SdwmU%EgL`t zVS`SO%ticV4}a4ai+9aBZ7zXvq*Mo+m|O;uQvIV#g~>p+D*ftY!{kCwYnQ-9=EXg9 z>xetC$G~}+{(`@XFIc@aahK(awLih~ z88Fn(chk@8rnUO`)4uAbe_f9B+JbkCr-y~pc^V1uiLXyaNtwSQMDRgAD7@+7c(#MZ z(bbGSjeK0J)TQ~TC2J)_2l#T?AtLX^wQkzO%$6Z=6%{hYP?|x0W*j5H#Lt4V$)u^g6w_%hJqB3CwG|D)Bg+g!@eRq|1{lH;dHh zjZjU_C4=OJRxOd!O{6Se64~Tq?_WlkRD0x%RFH*NRaIfn&vu5ifoTu!e+s^e<(+bZ zpotxXCl#t6fK=NQ@6tQEOi*tpflSHB`16vH-?@FH=j~t&-BkdG`3GuT2CeAjZ->l! zZ&3*p!4^I`Z_AK9+#um!uux3|r0*!;&K}5CtU2NA!5iD187RP>f8&MN{VlgwW+lXh!RLs(g+v=K2#w^bq=X+k^ReraId9|sa#GBqS zi$0Tx`jahn(Fea6_kZ~d85EnF&A;P9H8H%#2W5(x_p2;fu+zxCTs8olPV*(VuwjvD z3?Nf4N5AK4Uis)c@pEDJacI!7W!8*E{%w3lvZ;5SsJSTNmN_!}7jdCc9v77<&VZHZx2_NtFc;_jbi7ZNHKo`#@eY=r^0 zWrYVP^<)GujJw{1pmY^!)UEVBoQNgEf~hKu;Q2@bMTq#fFdlwO1hm|^kgh~7%4{DZ z*f@BG{vzsl!EBKRiNN_487YLs!gvTRJ{Xfs%!Lh0_e(P`GCz_d?7mNmT@9%#Q9$rR z7cBODGX13!)2I@Vnr#v&7u$?lp##0 zBtA<+#OSpUMc&j`z-*avCrPFTR0`w>a|-@Rw-!ntu*JJHpX)!u>t4W5^{rnQt@r@O zu-VC-VL4eJsAwUaeC=+ex?nX2+$tGw6yPb)(aw^Jni{$x=oA<#!53I$$DN)cF__Ik zb)icpi>CXi=^$8VgOhq2`n?<`rGgqt zHc{$Ki1Nd-5|7ECs!X}X2-TWqEKyBl+})3;p=`K{8JdT0FPo`_W$awxqYNxI5t_hG zBH^CRk2+Pz+)PVIV2aN|q%yOHeKagzPM7z| zZXcCBOG}FdzQG^aNh1VrQNx*Eu}g977K}?P{bHDXS8`gK$xI(r6cH&EBMMlWV12?B z|Z#$(R~W$w64HHM}FDQvNM;3$>27SRO|%5C=P&E!#W>n~&)uY@@l14*}; zXFRHFKXGz#Aqy#KzhtBn$q0%&kA{%bb0v);>FFN>-k28u4A70TaGDa64|q!ud}ys~ zLVSE1h}-_Md)chM!)@#5oQW-pFB{jbIX)48yAMl%Um6 zFI+j=_%4o0lDNM$MG;^b2PBGkHi)g*JYvGy8+-5D%`Rv<4LB}}(J)hoe~UC+sC{b4 z&_lGUs}mdlXB@qYCQa9p_H0$D^=J=F6y&z7u=>HWlKARPME*s8xfMc!jD6byM7HFh z&VzOS#59GX%LzID58b#%h48Mg3Zq^>^;4Fryw+mCxGFM*(#Ll*lzCZWU^Jqp-Y*#XOL18P~#dAp()b^VvD zQSz;a^GSzFw;GRKBF?sU+nRu{)@LThW6TJjz7`BE0xSA%e)L-GC&1SN zZq}nJ8TjyK(a-M%hC;>0d8j6tA|PA|R-{t*6PsT>YE@KJ^!-Xj410b*G);zK(Y@4u zfW7#KJ=p9`HVHBY_wj`pV4IH@SIh(Bss~_3ES6oIt4JXxPBRQ=6pLgR(%(=*i*>Yy z4O%QPQIQrJ@LSu=(9qLUe3pSlh@^Tl(a@Ff&>;zUHc%Mp=rWV3uKmWB1y{}8uWHrk z3Yo}TCz&Kt^ZB({zdwtB5g=y9k4)~RJU>R9Wt5DT*iSgx*BqN-wXw>tKSh`2M^_d^ zm*b)oA zVKTRVhDqwWeo>*G(I+>2OX_aFa*z?tuTE^SFCEQ>us^)!zC91rWM`Y-a(}6K|N--H+DiuKynG3-)6v zzFs)-nE}%O;qFc8-QhcIfo6w74JTp1d&VyI0n^cE`|C}2z*do8(FCyi^iROtQ823< zTiZ=8j@7T+1gf`z?g71kXyB1&15zsZXem!Uz`+0x1-7Y(Inb>kZN|^=rOE`^Bl}kw zpG^e=Kp7E()SkZ307T;9$+$D26Nu9TV2!KyEYhJZK?Tca?}uHfWfS4=xw$OhMEHQ# zBey0fLsI@9Pstl#y|K52jLV2Y%|aOjV(cel0VMERh_$6Ri2*030%4#oR0r3V*-h$e zt%{@Y^v@~-kLmpLBl$o2^z<>cEDA{1&AAi{c5ZG`K=k= zhQ-|*z83JoN-^M%jiJkE$s_K)TqdR0HJXr0QX)w&`Jp7+>|5KJCcSSAjT1wLvLm@V zEBYJmFf^`3>Rgj>JGmY-`I%zRp8t2X*Y$5$WvaM0k1~e5`QpuB(B=^Qz7K`mN8_C1fR{=j20m|0A?pNPjw;}}Pni$}Tvxj)WRModE${cX**BPL=$EUgVzT5NDfD8zhy8NdaCgbm2O034|S>AaP;dB4JB6WE!v_=R_zY^sgw0mbA;jNx`1;oV(-#KHfX5Tu1ZL>EZ3j&;%V`8yq1TXfdB3e(BmC&QO!FGK-<79SihSS54GtQR)ejf^ zT%0EBW&Cy)bzk*gI0ms(3Vdqe+tlC3NW04c5M-?61p;pW((zGu^0kXMUDNw^pLB^l zoY%-8FRJ|IN1>i9@Lpe|$yrDr@2vxfiYPp{oRBy7okKLxZ_mk)IO%7$w*ue%hV$t4 z?3|oSMaM(hw{Q4@jfhc0g%-b(Mw9VivC1oacNJn(V7zKgSN+bm()~|v7}86;5Mm1l zYEUJ1mvtZ)9R(u`W=4pb=<|qQsh=z%Nox;Wry-8qS*0it*o)540j)0uR2LdH*vX9D zoYUspnkk(KoJ94FvKk4Y$sQ~gqL*1j5i#QY&#j3)c?qmqUzx@@Yd2-{GX$^aduUi< zP--#wS`D651NZNwXaV@sVA|dR=)#-ok1twT&dtwT0}2G3M4Rek;0|{#q?74qWU98U__1Zf<{I16#UTFfSxgwq=K*o&@dnc4c$NsA zYa!iF<0L&5ProRrbcEUH6MMdYr;8>OT<)jsmkv>E{q^zPXw`$8h29jI@Yd>H|(4lBT-fTtsgM>o){G7IWLt)NQ<%~WFrZbSe1Rd)ka z>G6F5+}dx$+h^r~w;FUf$1v`@@MiH_K}w&H9Dqpj(IdXI1K{N2i8?S1rn-e1z5tua zZEw}MYQhzOBneO^O~BfTH?Q-v0@W4ZA}FAaC>J)ToHqABBa&fil0Yvg(SUlT`Pc(c z<7k*HWZ=2S8Hp4$U3~cU6HdqPLjkBubPhkEwJ-oG7*vb?DRP5GhIsHCY#>hxrci*Y zaLZthI=+@_3NkW6)+99}BLRpnYw(>1^RFMct&Wyr8?M|w-Jy4_+cnr(8X^T2Zh=K9 zw5CqynVvP!42wU?xqtaCFyZ3@v z@y~Vp{DdCFpyC7jQ&8gSuY6!3eX`M_qODEcaRUx(t5Q){Z;7V8il;HPCtKY{z=+m* zD@_iV&yyz?@Vbm8_~ZuOBmoa*1vDUm3^1(NgN+1W!w)IE8S;2w0yvmhYAe=H<~uiW zCJ*0}`l!BH?-s}MY0vsdQ?pw)yE`8rkrTo=;H}7Xn-UZE?`vO#f}J7yh_s}9!#v~> zus+}WW*WhHkcj??s(dr4VeR)s_LnV7t$(mwc{aDz=vdl}HOe#r%06eR4@sdP2a9Xf z+nJ1v!!?sIJ)J?2O%S12CvBQunUdd4qI9hsTB*6S0eyhE1$Kg?Gu|g%5tP{*wZYUQ z89{Gb1WSRV;u}A&X%DGV$2ql+4ns)D21trCpdCQT+S)^>!C^satN*jMP=M6_T_XXc z3a>k$@K)XP*E+g-BU_&Rd2}}xn`wUPm*~oH^!-jh2Ny%la3Z&L=_+KZqz(B&5g|cW zGZQ-Y-U?Nod=M}rLZgSS_<6(bTVK`oo12yi382q&Jzb!7ci-QAx0Q$>k3LPYY4;BI zY|81eWyKGI%;BpqU*@SZmA-X09n_Hf=n091MtQ6n1*1_vuc=7+64pemSYX5iXS5U) z#A0a(@hgPy0ZP8bzX&SbZJ>vx_EXgHsxVk6+-0<`rLIfA=+_laPaLlKeg(m0BbF#4HoLIBF!n5_l+2 zn23f5axZ@|q4^-eDoRdH5kI%AgSDP^lX_JPqs4a><}3NGmbSYMY2KU$`?USZC6Nu_ z*jWN*>sD==Z&=KXm(}=EmHF+HwO@5tK(`7^cNi3A;0EC#-y9>9w}WoQwql#DD~QEH zbNmXS599=BpNC*7&}6d~+uPf3fN7$n^oicL26|%ywRm~C-NdbVF48(KB8l^bxDx$6 zS@O_;JfiNi(dbX|LLr`#{j51iLB|PXocCG?@y3XjS^xF-$n0)Pt4f>0dCHCf>FD?v zrI5S`IW$rrcdkS6u@OWsDg;%O%i7IL!^HCR$;Y0MJ=L>+TJ{~EfGjfe!!84=voSUx zwO&O8=npBRan7UZe)(Zxp2KCl-79R7qX`~JEDimR{6emSFUyK}U4cJ$@0-XiAd-Uk+4DRLcS|-&f=S3v6to5V$#zYf%^3gG%(nLLGV@6fb-LR zxhGG6Y{b#C!I0!aG88a$XsdMu4%rK89N{==%x30})DMsvT5-)9&pX$=uil;n^$6nh z-cH5xi_lm>nh!pSws)Qt5gB}jO2X`{$WbKosjIq#W7>=@zhNr+O{H75Mhv>&a zV`u6}UbI?=wmK4I3#3MHD!gxBi{(yLc<+*PzUu#4xf~V!Jcf^rSpOSgd1qPrYI(ld zXQaoLOUF=pH2q~bQ$9<F35_`D{Pa-(Ae0Ay z4^4XllS&RBZm)G9aX2(BOpWWcCy!c_q*2pdKU65rM~K}#wNX!_Fcb>;amyG2aY&H& zdrPrdN=V1dq4?Rd`)d^D17&`w=0!va>I?bF$%4|8x`2y?vEiOh2P0JtEm#v)GeI)8 z#FUJu7LT0eHLM8*9NqLT>8Xu+l0L`6&hFA8({B}^D!5V0lA!z+HYju$h3~7!J^TLQ zZj{%`_Xx=g_(jMSz~xxB#V1tKnCK&FF7(bm4k3(doqb5_g~4Q{Y6w?Pxc>fad-Vp} zrM$uN{_DSBijUaU7FB3mf3HXiAf*WFsFLAyx{mO@x3V!Z?bPoAPv;ZUNGqN{Cm>fb zBP~Qa|0uoEUhYAIsbtO;3}kL7&dz#vn%*nTVImW)XBJW<_ZY#=L|0nz!i`JnMFMr? z#lHt{NO*BG+q7slVmKxuQJ5#8njpmS8PA&(T68E5XFm2+;^DmL^6-bprdIMr>u6~K z9X8$DCYIXf%&WYmi8TsM$44;cQhsS!HsaVaUo=Y1LX~Uj^sE~HW%*cn}%)nWL zkonMIPcq*k-?&EYyW(i2b~#$4iXwKZ<>AxL=8Gp%y@SW9Y^-po$$eQz#U&ay0-BB? zeOvwkmH1E7Jx!kHm-90Jc6@ixKyiu@H1`Ta@9Ac)aMBwMw)b%Usa!n#*{%EseW3C^ zI?UMWrHbXf1zY(P$)rUe+xdC+TS%HT(wG5A?{Bp3GMZ;*obAnu3SY!TN@_YM8zqy4 zr>V4o^JHWxQB)I&?#DbD!s=>Yqe>_48M+zPq%hkz3RZL!3!tgw=dM$IDo=C|c8>kl z0Hr-0PRCtXyZLS61uX1FR3 z512qIDw4Gpz|U*#Z{I%aGi+aYA^Gw+EqH#|VHAr^EN)|Mw;`~Mz&YgG3{CZZ<@M2^ z?Wzvyk|fDl3|42bI3|Ls-cG?;5B#(ss2IJ$0}DE{kx_6K$kwZQT4r-yFC5$a=EYOV zfsjPWY)F|X#kiWl>L;Fb$-o-Dg(Skq{~k=o6^sioBl3Pl7^54K><=uVwpnUr@`STP4wT!i&$YV#7W*Qz< znF=!WX6Lma>7$0IC`7Fy!WEt@%cZ+DueoJf-q?dMFzI0U2R$B^`kpg4S`+B=e_EZ4 zyL#)E4uT?_N`<%gCFG4AZ z26vl@4OG)|<%TN46vrQZYHexk(2E^r=UXgWMv4HYTEvUvlk@}7-TttIr%kBurv==3c#`FryG z@AfC39x`}rZ?k5{BR+qUFIAS`hBK#_e{4uV2Dt8jV}LB8Q7Sh*m6@MA67+LqV`q|D z2xTOxsFY>P`tC!gMtNxdo?Q_}6Q;HAUjQ;vI&EI08gY>jOjfd^g_?1qG(}?%&p%{e zL`6&G%hH8R)k0Vnxx)L)Gy2>fTMsQOlo5=<116TCSv;`#w=$2{qV~`T!l<%xnwO>& zY4g0B1}$ZNJ3)V}ejKYPHoo|SdhXU(v`E8@NGqAve;b}-02dw{Iy|tv_}`#`kb_fA z@*`fw%HKf+Pny|KhlS1avl-{}TM@d|GOitvo<_ouJ9%1cH)LszYY@I^3WTPKZdqDS z5P4-H1Y%G+I&^GEZyO!D@ftDmfeC5Ce5kVS^rn5tFyTn&EjCLK4hs&{jhrH>~Id3OfJ3DA>`>fJZwGuSYpD?+x ztFu$FsD)fJrfo@@d&Y($c|;>oi)zBOZ;`dNrnYu=r2mfrB)L_O_ls)Btf9$#q?xNG)-$77UQOgdp#1u;8?-(Xxs~W> ziu&cZ7&qZa3XyoDg^GSCQb(vlW`C>NUWb7ujf5>!Iwe+vl(mq~u3VUCoDGBgZ`xGh zo%XH{?Cp2|JmFTIPG)`9^(ah3t!iAb15$*TbCZ~I`z=2J9efyi-~&aEJfpix>-95~ zF$#g^fxzx(yfp8b@PAXZ!Ny5L#7*~(Gn_bF$DN(JV+hVF#G(}?GR&sO``;ayxpH}& znL(QQs}t=b&7t0Fxy*&X6y=W1Z*+#;oQIa!n2i9#?(xL}O67;r_Rq7?iy@l3nOaHE zrCWz3qgYsS9&D99NRERw3$-oLFO4kWU-&hiZ{#kj9;L23)z$qt7rJuox$XaYI0vw` z46_|fUS&WdXDWQ8-GT^wV;Z^4x3(BdxPH3vX+LgpQB3zFN<*CzBR&h8^$UErEG%Xg z)q|j6WGO_HSAJ%71VAo(jPv#W_RYM@xy5*xMfD=!zbE!sHHQMZ-e)KEi(UGX9Z&LJ zHA7wdr8xsXjWjdZL`>B+VMEm@bb7d;7l*=1bUDnnN?Io(3{qUmtU#wXlIZ+Q<)c4q zHZgokK|C>!sAfKN-XlU%Wh?Y=>UhV&8fg2>(=3WgCSQA4Rpp@fVrPgDvrta>*cyQ| zEZ)|^9{GSYn_f3I@~G6nHr<;@+zEAjL6BT?J2MCi)kQxpD(FW@4VH;6#)8bV;cLdb z^S>f)gg|p2b>JiRHVG;cu)|t3Q?$gK9(*lBda^i44$$jq?}Zk}xaLjgn`JVk(RZYE zJSi#ZS4aKT9&coxn$bR@RBW;clgNRT=k_Z1VyBFodhY)Uh^%)n9mth^@j z8gRFtIT`*}tPbo-J;{elaVqhADx!SorcP%jV`fwev%Tx1eEDqQzsI$IKc<-pc&cPE~g67 zv;1G*jpZpBqo5N>^FAApW+NVVrG_gWX!vwASLAa9^bX<#jIBQugbBQApA7})-t_h1 ztKR-GHZ*9w@WjNlcFHhQJ0n9sI#b>5M`$sz{xv_p9E!jn;pcS@#l19G6AyLlFE1tXy0q zkl6dTL6wt@jjgFbYl=ZnsB@&S7}Sj}fzlRePDhhT@AS)q&hGm$Uy^^widB*jguYu6 z{1{(}8jy+Bm9|f{ZQp!X-QVlQ7W<8yK@YN_BC1u=%w^i2)p!-o*y)CTA!+LcnqnfY z|2;(6LCQu9b_$j!9~>&czI%6yGepF^o(Uwwt8`s(D5CiEJyiF@yFX`L{Om?RtriP>bH-9 zu*P5L{3+VzFukMAvY8A7^7V&hq_B`_VVx)MwM118vk?NbcHqHGZ`?dJ!)c_+LmwnN4Vk% zwC*LfJ}y9#@b&hS!|lNJVw_|DNTVJc3d$I*;N-~St}&=}xKDVEAY>$sB%fi7Yl`Fv z5|gJ<@lxcQv81@7ELAKbm=QD8PY^oA+(4@b@2M}tw{j3HUM7ayIw2YRy29WK_ic4Y z|Gq>apRm==3UOA6J9_J)@7HEn*fbaw0?rCTvO;Sg0@i_pt1R zd>%Q(>LnxdFNee$#;Wf^iXx!oOpRHd+$LNQw907KJ9le%yzRU^POb4+R9%f+ku;4{ zsY!4g5KL>CE+sVYGI1oC`gC`>lwKgTPZkez%NCf(A>^}5*Q_9 z3W)@PfRgw5J<<{UH(x&^CsZys?dZp-Ktt9QwiQC{70Kh2x3h_@;RsDSeV!UpV6nA_ zeJrQC9*8*wEo}cx20J?u%uy}knwRtVi288A!zlUs(YkR< zKaT!^yxvEW_XOw))-{2|x#3hvPQ~&ig+X4h~{rP{xg4Hxc68-_KFH;S!FKqEv_2CpkYx z2tr_@R;^i{q@s%$W(p|P-^bHeC2a4Nd^Y6d7VU8Ip#vNyztYJGyF5r>;> zZOU~L8+iTA2eg=YNST>ydd~oxK2(z9`8&_yr*XI{SBMQHKGkB{w!LUO!w z-sk0+%*?;6Dw;@gpISX`LR;PDu!8Y*7l0C8ybaX;ET8Q%QW|P*z_F#mf4_>5 zy?d^0v;1;6mQatqspy?SA!SIo9<*Cq>`4L|okaDI@jB-y(cMmZmGJLmz-j0jvoyHJ zV-YY<1#*VVISO)U;=pT<2r?Z!;LgoZR8(%hghyNJK9v&LU*zGj927Q_Sos8(7S4CF zPq&r(sECT4%6*O%Kn|;ypqJ?g34gePmOn4F+`!Sg{?q?DFu)il_aeLJA^CqE~ z*S2Je;zN>A=DVciGdU@j$QB`kp^; zJ*(u|AciEA%(&IiUzRxL)B7(2;$|ae4nA?0-s-rTMb*k( z@C`=0T6uanZJ$i^BaMkSmdfnWY?v+d>vQYA+a&X1oNB0!hZ(Smc0ufy;H8-WKlNKF zopiB8HN&iM))AN1nDQSGVvYq1MdH6x$fqOC%Mp%$8Gx1Ov=)2&TwAF#>y00T)0>UB zTUHf8iviIdX`5E4X`eT0Kw4qi|4%SCSrYTv22y^Tq7{T|`8`7n5tH)UcKQ z6}rZO3k)VBn&Et=(DH)t@Njb_N`gO8WZk;XBuJQ@D}t*Geue6uZ4*>h_M$3rRr00( zv6^&Wfew&<@G1o(fp1P!(KLjhL!%i~=H&;23%^BjRnS|}(&;5@=prQdH!Pac3>I?L zcozoYWnbPU-pdn&v9JmJMiL%t<+Mx>@c9zMwf@2vHpHemlrUx%G+F#}g(>mwO)jvU zZ0}ZC8jsnQ-i~?be}FR#ph$5|5dFIgXmyS5@coMT&ppvRo_{}&{r~${5y5YeP+lhH z&B-eBnCsGsV%qdE17Dn9_W$ZTjnPaf2{ld4R&aLy@z1DS2XKxVf0VhSqcMh_J25#q z60`_dfxagE38PQWKL~m6>CFBol-XgAG%O>caX9cs2{{do3(sG?a0d-lK5H+YJqx|p zojhGoT;B}(R1)93VG2|EcLvdM2{iwQy*H1>x^3UZX&z`cM2H3<3KA^S$iUY?XR_-^}de>_kCZV z>pHLVJkH}dPWLnwr4W{MQ_4zh!3I#%}XJ9S=TFLM|Xi2i+LaYTOZU{brp z&C5&cBQe29v>wIQ4!?g=v#*Hq`^zKg7^G-l&_%ZzYGc8^IR*OwUq8P)QBk|8jzMMh zDNN!%_`W(ID3DeZm#yU8yDLb@*nMGsc1cqRkARCAR|zV~4uHqzH4EwIfBabb z<++sQ@VCF9XJI41O<3T0d3o}8H?pq)57CWP!hUJZAh(1-?g6$=q_J;6z+DjPJHNfX z4IwwoF&bRkoo8v8Ma=G`^hZcgEho}wY!RXbJ|im&{xPqwudnORpI1Q=War^okBwi9 z#!DJ_+k{SmIxS`f2{dGctFkPsz^|JwI=u4NJXJX;`Wk5|Lz-Znh;6ge>ysHAH|slPxldulgA)a3OUh$ zI2i!8w~KzZS?e;^@KRm=9p^7t;*d)dHKAg?^@)M*o}P-uxgN=vXCLo%FDp|zFR{mm zP0~zs0fOSgpd7h+8HN=m%+GG~p3DFjpRupK!(z%rY7IM-751-mOV<^bf430*UKuE; zZ)9ZTuW>ggM|Aq#E}wUJ9!%b2I0jFWFJ^LoX+x8rhHdPFKaX)GW0&=%KVR`>d%jcO z(Oes_f}RS5Rr4UvXu<@(AAt=p`aq=3cf;Lc<^2V~?GEde(OkgCc&1$i?O6qQMw&mm zyI1aa=8DF_mFxy3B;m5mM1TEx^3kXtXiIYi@T%{{W?_CI`f;}o0+Dj$1Mt{BWE$72 z%rv}APw&37b}P5nB)a#07cN}zAB6N#sttmAahJU-JLgUnNqoGz?3^^0o}OO*AOn^^ z={G+FC(|H0t`@o=36l&vaA2fMdu?8KgJZ@EVfKomT?$)1=_T#eW}sjC0%m=j^;m_)M1f6|Dg4U^VPT8Q{t!6il`3%&mYL9O>#s>I4 z+Fh}{DF8nXCf!%vwBflx<-jq9wUdVg*CrJ;UOT?#FoJ3Ci0v|a8Mu1*+Ps!{RuAA- z#Tjf|>Ic_hOChjl&z`7zkNOUl8Fl{itnNMCGD=mHaz|-dKO`JNbQNIz@zk0_PthHD z>b}glX&FQtJf_0xZ$1ToG&LjmFhlZbDp}i$vfc^mZHqX)8xn)nSzE^EVf6Eed~j zTkHxrbF|8o3cxL(+DX{Bu5vht;pPjSx3^s94ze;c^I+$wbdOxQa;4%vU+%u0^-gnB zBh=xiIyT-dX2;1g6*CiD`;;@>QPCO9>c2#T#;i00AYOPvbs1-`8@l1!P2qlu;68J&-U@) zVc)p(m$c}f7prI(b-3x%*IN)TQMxhm)cRs4s4qT1TNvDT zz&8w{_v#*=20?{6kUPx+eSLMf7r-2IKV(OFH(*l%!g-O!oWYiZ6hkE1l%{sPIlBe! zw?C)v-*E^ET%kg-ht5$(+XogxyfqyG?@c13#JtmjEHu^rd~sym5qEvT)8Y4K27F{= zQEzat;}a4(3JPG)gtJzP+ zA_;1xTD0>o>*{h~2~Jm$B`A`(=^qflside#qkSJL`u9ZoB{nAzDC?(O&abjHW&NM8 zbC>B?Zp(sJ2>u!dIc?ak&kTbi#IW`Z_$~dMRGm%7zd_&a27{2-a@Z6^^|X?oTaTzJ zV2#l{G*5TxZPJBwUnpHm;=ImEOBaEFx8YQWX;D%`gPPZl!ve^?)%_2<;C7-<0bnN^ zT7MO(_>gM@$@JSKUFrS|pcb_KPh!J-i9OF&J+hviBw|F&l{ya!yb7|4R%LBBoH=)hJG$UZ1BK01 zSm6*4sP%j~Z>)leYy**Y7|%nQTUZdZJU58xiC2_7g^q|=ksZLmWIg-IH?tMc<{%G( zdY}D!PtPuX{>`#Mhu#uj3f%wI1MtDw!shf_foj+IdD){b4=v8GzXMwp9dLz3ks#rD zK$i3+Me~Ri|kX#Y0b^-Ee%|psV`*eGj7T-jG1}(@*C|L zWOUr=1F$@M=Oek$P?IYM>6EWZVrJ14pkza_1xljId%%J@l`Acd+!)-?z^8FF!Bn$e z9~KBaUXtwWf5k*c2Of1Nm-I_yoBCPpNYxI*37~oaMk*J}N=v7Oo^a2u2`TS-2+FU) ztDa=|7LA79Xp2{tEX9(ahk@3EuV&e^zp4z<-{Z*0hKX7hDbL2951(+jsUIe3etPL} z<8MS%bT8!wFd5pP?t@(JJ!hEhaonPTeaKQ;KMRp~AvUd$)Ye>n(jNRFG)O7J3sYn4-eA!dauw&u&`1 z(r};sa!9rf#&FJ)g7&|!_F9P2ObQy+#I0)<4i2$fnC_WBs*1JCi9ZU=R^w8$kNBuZ ze3qb~AW3TG3s!--{8%owT3MU?2W=z_Exq_A|2%kO!itE>ARwGHR>>(^x$UrfTMgQ@TO z==b+AGp}X`U(>R+PmOfZP72-_Y`NBKf))5}EAHML3JqJw6oifX#q&5-DJ{Zoo36p8 z$-UVc3v{K4+E=92>T!H~9~;Vq)XU+GD`e#4ynnU4O7G~JMj0bB&Kd0oLz@8M;E(by z#HT2}fVgm}&WgJfOgk)abc7iQ-?aYKz~7i*s8n2T(Vv_h)Hh`AG8?Qt;KM4>g#92F zD&Q!dknjPD{yJrs(}?O$UZ?v0x!mJ7FGclu&lOKqD`#hNSXcZ?SQ2#ERyyxj2jRC4#*BMqXPkHoav#E3`jx9aHe(<9r?&NmFi?ruH4& zcAD{So7WW&i1VGu4x}+8$%;vR3yT%qgeu&Yv)0~~Q%D!g`qYS*S3)6Zd&TBz`{x{t ze|#Z6PxV9m2CJ&Hzc1ZUhhzoESBX9Qw)woE&%t(=#d+tXN#h@ zJ58^gX0pdTa`&Ip{C7IWq(q)0UHaN2`QU?>Zbftz$ zbgkYA8nsff6Ld1QsaYRej8PQH$9GMaODIq$M{&%=Xd93#0e{(RMV=`IL?O?q^3 z?mGM&iseH=5^u4PM9wIL;Hsaa6+ya8yu2UfLtzj%)e`pfsYhGB1G7;D+{=(FizvtD zK#Fm^`p^k$m{nc)afK+PI~cWG=BqKvb7)IzkiEz zkhXpndAiK_YAVPG`88ruFviR#uBmFb!$oEAq`EgrdHw;j2vf>qq82#{$rUQGtd1;g zC^U+#JrgU(lg{k+N;{LcR0|0nyh%qbY}Vodu_j~6l^?4|5PXNw9Z^z{ zRp26cEj`I{m27Ly)1E;8pP^1v6Y=-RWdD zRF@pwQ2>FtVUC=kl=lw)3>Qboys81*If5;dFo%2i@ZqH#E%Kk<;xHQIXdx2twBC3| z*~@Nt+QufULkt=DnujY+M}?4W;wJqf#8|%iU?>+(L-ciJ@Jn!nC3~S%Cbe)TqK>le9|F!wH z!lXL^fd@8&r7WNkyProT>0rpo_1Op7j&&O>r%+rxw-glec=#;^QhEOCvU7*)@krg9 z=TU0Y)W>r_6e!~u$R&1vAA!aQSwW|OT`oZcEV9{`eynbgT$n1haw$cb$(&OC?62j& zi2OGTyLT+5mK+ZPv&~r{8XLa3;!G4y!0V+GaNS~+iV%V5-Wa5> zOv>+@=zd?X{?4nQ@#BC^@qo>0?kH)&>$E5nm)8{rmcB+Yy1Y(OVJE6n-mgy&msx1- z6IU!#i_#?dO2T2-gziNa6lV7$&^1%FE_kGf(kr3`*<@UTQQQLyX)P|#&U)jY_s2l@ z5DTTg&n_aupeTL9x@g+eUOAmIiA7ML)DBB99c$QcGIZ|W2le{!<|3*Oe`9Cuetz4E zeL6@1N;Xj%92B>H@!!V6qS-5)pxAp||Ho>J=kJ4bUS3Rg?_VKC%^3~B3;(wJt!8&O zaU^|;-rg~_M#FlGcTZ|=do|WY#5`An&sIEaCsy%KsQa^_wyRMeg4-5+R+>{svEi7^ zwAb8(es9I@y1s?(_c8*UA>NJcC$CrWGdxhe=J`!wxY{xsWwy+E3o3M_P0SS<6|n zwDO?x2mycpm-xrHH?zZc^$ccv&7+LdZgM|iAc^YLeY9> zTguxOZgl_$gReqngcvQ;p*6uP>HrIVNz;=$VGXF}F0!tbQH#LW7*q5NS~gMK5YtWt zZRM1E2Dy=YA4$HEG_R36=Kr6E+wso95^Uq`O6FMa==CYD2gR!A2VqoW5enY;XDgSt z762ZLtt)q%-qI(jR6lZlcAfbfyna z!|kIB>!qk!gQQ-vmnAkjh(fqpTvOgEUs$^3%71#r>LBTV+#v>7YlGS%Y8rlx za+%7L6!tBHh7S!8`0)mY+Wv&?|LFx*g*gl!E;e7e%#|3z5WB$I9+*d(P4PMtGeX#3 z#xLA@DX!cqk8_5*X^2}VF(8W1C6x>OYE5&(iaXw*#G^s8Ey$+7j`q7=MU5!)o z=}96QN(5IeIcZ;=?%uX=T#+KSwtVTHIFk;e&SGmKuQjr{O7ZxQV7m83QHdXy(l-4=B7?3T%g+W-{W- zYgwJAI;6*$D>FCj`d1B2?)Zb25T)iJhmYwa&La2j-E;5%7${g?qfQem6S&1!YGhq2 z691_l$;Erfz^jLUMWXE3K4^}@TAosCAwdNb>suYU-4fiQS3d11=C|srS)1K*?S6;7 z8&QTU-G3W=Pe{XU=}OS}=StW;kCIt7^_3qWZkPFf?U=rqUH^{f+Yz#M5%;0du`$~E zb7#-;j|YE2A@&VOo1n%4F)=3KcL&9{#vg*O3Sdy;xpK-SOvw02gxiOuoHG3uak2wd zrb(XV**Bri)7p2#!os|9CjFfTQ>edU+Faom6I znZUH&cis?zAi4%8#=#aQbNoCuHshK9)M`~61>UXXI(n)aay!H zO-|>#Ae$M1R(RLZqiyn%fVp@luV*)#8vW2TF@Yn1nk!JccSB-W7~%)I{&lNaP9bqM zAGX&!86n>~Wcct0xK(dSNl*_90@{M;q5vZLy&~XuH2~hZt%V*~W=_hb% zH7vvPL2`yV|1wIl_=Q;6V1tAz=+B?_rGCaoB3 z&8*jY%zH6oU-~>k#(QF-NEbHt5+=p(u>OT9Zou(d3W_`8YT5(g3d}rs9cMRY_B8-> z+DQ>OnT8c|ixO~zS>Uoqhb_Z?HTih{gK)AccKU=3Jv4z1-`U~;23SBo&4UT_Wo2c* zsw{klZj|obs1#%;*`xj7jF`l)xBpSf!AmNGKphEwO@WbhF2 z%thw?4Jg?uEiJ8Avq;_PvA5pmRoe$!N;yXx(%KlgP)`Oe+qV|*SNH}MQ8~7c4^S{&Y$e!bi$?hopHO0giIzan z+QN5;O1^=C7vhCI5){d8AB3I6jE36Ncn3pxPYe@(2!PEcXkb`=f4BLvfdL0QJ2g?vDbWc&?Hfb)MzB`< z#m8_-?SzDjm*()KeIa;_*pR(qSGw|k`ulJ?(2F}U@zShStnib|NY_D6K@ZynZe6QY zD%J(Dr#fl&Q;h-=JJ=#c5fH47{nJ_6|L5zWdd?~pM(OkC%aJ>nB@Dvo<})&Y;&C{1 z>_NM%K{@*{ zyb7W8?T*~Hog=mff&LV_VFOTcqv9lFH<7BTT2DpH!+M1Qe-pDGVkJtWp+h$X zaNx`98|I`duya5b&3y>UrC`Z_tZA$qjhH3zJM8!=b({*6xIyHQk^N#RuYLqQ3-!Ty zCQbq1UaHDB9XMyrruWdEq_g{8BFXweT>eAEtUoAgrl-Gfy(P67Sf3XHpB~V?nC6iH zf}%2H-?_TXZQsH6cc=AN?bpY0u&dytzX`h zasZUe6F~S$Uw1|Rfk^qK_tt48W{JoY?0n(ug(v$j+=A%@*tun0hf4krF3cpqsv=+c?p_whafN8LsHSr0cC9x=7) zBK*;hBa)${r5_fVn@8nK+QQ_@N03^TF>oBOSb{hdLWEXbe z`_$%=8kAV6Z$%2$N0-hR7rbprBn8U81Gqw>vO2o$PY)SxA*M2sRqqvFM#aQP3j#jd?q`c`K{tptvZWai+Pjtsz|nmgF|Y!aL9nNkG?xUck4CPL(}(caWMQ}#o9aYmJ(kRNc|s>^-RK|yNe zbXez&t84j{G&P#?E)b<_dpb++(@q|?_;##%z7^t4_t{_}WBMv>x)4dhJuQQVkgoE# zEMoWKM{%d(N72J`)m;9%m2VN_A>IK}WA;Qns#<^@M!L~jrm%mHHwdu5 zY?GtqpCFw$QWHyr=j3bO)&DCd*dLao@=DY!mx}u}ka-E!T*APG&2B6IMf>}&-vEAg z>Fa+U$rpqPE+-#>tdgUV!aXFy$r<}$cK1J@jax=%oeAQcnL@84X!uKFQ*vTg@j03@)Vr)f7u*C83XY1CR*j4fDYc^I(}i%as0Br zK9)9|5QcC^e#4}IlZdCFLXh4ZTu+dUd_%-&$afH_OVPX!rT{hUWTeh?nIeTFXYeL5ynlCm-)Lko(b)4YwI+9jX^2+ESg5LXwM#^*!4Q6sa@#k^BtI8InbKU-gm zpd02!0tgarc+~TH9sw{$GJ8)a!~|qV+rc6_&g2jQa555wIx%6-wHfflduGQt0ziLM zt_T^(Q|N(Zyg?3~hM_!37cDEP=*0ET=Qozw;s zVc@3du#zq;Nr&O$a~qj~E=+9H3Y{gyS9gMc!WM6Fp!JfEOyv8mX0f*p?Fk13LBJb=%2gm z@%e>^9{?1fei+q2{61;_b~Yvvv;BnsB4XZVGQ)^IH*YwwmPU-Va4oq^E+%3U6K?w8 z|IBwP{$Ke{p~ZbiSGo2%ncH>ytI|wTw!^L9Za zDe^CZ@+Vk8mfwf z-y3@s>36@JnH*xPF|J4R>6PtBr*wH=1TOIN)*)8?YN&mv3xzl$+(crOU!} z><)~u@NZ#&plD}1GAr~{m(dqi_xcGMRQiIlnGC0=rN7VpbH*R+xCmCeM*DxP} zu59+(?TsJ6WRso@c>H+R5U>O$$yEun`O&$%UqBSKuN{nu-fORxu~wsG>qZ6f^quY> zy4G5&wRTjORE_MHC0f+o+;kkqI~VN5S(SR8@Bc$2Y8_5f-g|S;9bb|XcLXwaLpeDL ztBN&KLKr@BFGSMC`Az5k`zig`FwaC_?_T$=iYkG>iBGO&>P?_^@#0En@tbnnG>Xn2 zt?g)X&hOt=b``wYPrbj$EbGthPvJ?B1VIk8tL64GsRc6$RcigUiJSp2$^Kjr~l7c->^36$WWe=0pzR_SttNMfK1)032HRmYii#4Bb` zCs;kv;@H`rXM!R7db21I$EWu!w_UyH@J%{8x;>~EG^0nlySv{5#aQJi{=dBcI+%}l z1Lra7+rc;ja?y4%db||6X%**>PVZjxB^;aYGMXejPRYca)AiFP!A>;TM?unv`_h$| zwB--&iT=0kxr$GpHZ<7l!<_FiR87gFdTK9pZg#A24_r})wdInW`T2b3j<w6>avL-wdlS`<&@W zfulbr54}Qe%YCmt07+>h0*Exr355T|-HnR$&(k|VWs*brf0!L*w&oyj)j52pVtU8_e{~!|NO@gi+$T z0llprXMk%RDuq>|0*enoW`T93vixiu_y_p2H3<|B}T&K!dL2ahB7^h;mSVo1RPbmMvR|OVsf- zo1@~qUI83B5%gkh#s{xdoQJKr7ild{mSq~%uEVT=p!i%i$6;z*f^^?Jyn@B;1aPf( z%HQ3*33X5M*9F2_+P!ygP)Zg5rX97t?J4-&1iFjZu$&6BHwe?ZNH^_{*f!)43GU<# zdBR&4W7x&{yd7+$ljK?xV(x1)P9@j*e3J+SpGf~+$2%7+E;x|mj`?B!RaH1#4+ut8W0HWh z;5iHg@VfWo8!FeujtH4H9YTXKaBvJ2qFS~Y3+5kfh^@YdLMIaLt}$1N*8B$(3w*U< zK;}VxiJx&jk<^3qhcJPWm@@(@x;n#%JK*jT1_Hlo&G;NIB9bJNMDVJxuZCM7d42x{ z2dyW_MhNqZxYjv4A0>n;j0n&`W6Q(aTex))nb-(=6WbGt`7N|4?dlj1vd*WxD_t&C zE1#x40NBEV?uvkb>FM{6IV5q zUUELeWqk{m=NxWCnQ?yo4}MG{1?$e?&IAn#+39zfU}_k+pd<1GBb*M^W~KDMM6hyZ zDMrO8!&Z!H_A*}VgUM^;xTDB1g~!V(0YfWKy<9GMKZl`b#P&M@at2=+)g=Ww0>a>~ zJ#UGc{;^1#?emQ0fupnOjV7a*@A4R}xr4O}z*T7v+|mjyKNi)dPW2A{kPQ}+crZdW zQX|*U$YB~Z2U_RM77)2_6n~h%<*uKi&Ckzoe_N*geW5ihU1(5Yd_#19iImcLvKE+( z9UAjWPSazhc>-&bkU>YZl=!EP{kZl@X1v>65+$-o%LJC=^40y#12$mOxG)V~K{6<0 z=1BJh(G}Bm@y!6w$f??Ld`zrsG7mImtG{dBXziY~V?sB}N_2<&>~|=xasA(LwbDMED>>Q3=uzXaUVeOS5-g<|`*@BVQICm=V(iTv~$I$ zzdw$ddHwy-xj7>j^by^g3w{I{)3BAJzM-A$y7nsSqd}rV*ZO@^o#qA;tuS+=VXFY0 z#v~^k&zaINh+%)U**wvHXeVTM=q9m_y;OySNKh{S+jgrv3 zpSj-Xop#~Tx%cBkl#>||9rmae4r-LM5r7ex<3_YTat5&heZ#{+a)uCKt|=7^1^4E* zTR2j8?*^)VwIA=8F7*)C(SX#AwD9QtrOIejw z6iO+0nl$C3NOL+RF|D)19y^5{x`(TApJ3RfFv$OO94Cbg8FBB=$Bhy*QvneO@@<*} zmw}X-faX+Y;et}^w{c;R_^P7mwk_PJ7ef!*4nK=`c3zmiQfz%|+?)on_7vaV7w;-a zwF8!wlC>ru1Gw#+#p8YTspbiVo@BlW7>vRc5x4|{Lh`)Bo|ah{e-#<&i8YtvfJ_xz zhyyhzkR@$B$t^p?7S{BP2*DS=*t8J14!}A0emikiVpJ;6f=G_)89gso>g6=rA{dti zb4jKIr52DguU>Tl;zPzX#mtVCf*p$7G^P*TL?2&8rj$vvY&(!#x%b1rYd@LKn2#Vl zlc_Dsviz8ByZZ4`vux(3Lj3iZnZ`mFN!V~3#}U90=6GQEih6S)zH- z{2ypuPY0_QxT52CZ=)jEJsz`rzZ2T3F*D0``e?&(&yV7fh^=xR&d5}QPH04VB1O=-t1fJ(@cQ$y$fb>aNBQ^tAHDgmD@_PS4LElO* zF3oz`$twmbSJ8LUp0%WT%5ZkkhE5=!k1mfFID1C$mXQ15RotA976!O8a8njrgR$*~3@k#s(D|>WmwhL$S550N zr(no|Z(hff(?$RW)E2|VG5)#8AEApg|HNWz{ zdL50tSm^8orPEGK0Qu^)`nbM<5_nV#Evlk_zbK}Zh>L?Q=-xjL+yca_BHYd7O1*^1 zN-+kz3BI$ENT+M@Y1R=`1bZt2;ppm@$dzcS-^aM2ok)5V6cikPJ>OE9x4GhH(pGIm z080G$-F4A1F-$3Aq_dE#O%>Bt*Z7BYC9-q=?s3t*e4?x3GH^eW0cE&#Z^zG|)qfmU zH!AF8W0yf)@3X#mAR{@5qZX);gBF$@ zUoZp%#0-7?syA{R%`@u>PA1qm9Y28c;K2#@i@SK$64V9W{G5*Qw4{;0 zUM$lT?i536>Ta+2B*iJw#KIA5p$? zlCVj<8je@$rs;sX{#4XbSMBH%<*kgeTGXz70&5;VWnf`p>DxpTKd2|MqpOGU*(eDH z_-$M8tRoCB`u}dsGF9KNk+TV9Zjw#cV|?_Yjo51J6S%^3YvL3zF8;KjU@&(}f#Y3u zapiGr7mlEq4onL@20r>Ql1IvgLcKCC!dz4ts52y!&WDRmwcI=Y6BL~yG94yf7@vb! z<0BE;3Hk=2v{w3UG8hg!KTmP~q=069hs|r+KwcqZ zjO0TJ$|$?6A7z7ke;#H<*kUu^-bCxRtelGSB&8pv2OU68H{@@-P}idVU(EBo}&z7}An8IPYY7*b*u0 z;F^auG@$mems730h|+=BTVqDcN(i}5A(D{++2Dt-!G4Ho9)LG=IV&FIcK9~n6&Me` zu?XFGbcza1p|y?&S5T2ss6!0p6b)Vi>Wf;7P*~Fj*?ajHZN=XY#_U%x(0mYPo+Ha5 z^PqsFUP(wMR4Gy7iRx(u>9?C}U`aU|Q@1y*rTfF*!a65g6(W^pg~oY~j}X?YY>3|| zfaViU@gJjbp%qglK1M?VFdE*>DcW@AN6Eo{R|F@&<8LaTUokLH^<6|h zz8o3Z)wi7>TVrtLI!G3+{zal{Ywx}`-7<(F?dawgYp-KNU#~Lc@ME7CrfuFno37Ew zN01Q~;B<{SERz15GtVF}W@0aViR7z&CQB%eOYcl4%90alT! zYej}8H(U9!@1TELgyJ1^0&^L4Sj5CVBmjIRGJIJ1R1eNvX> zDX-8*Sw}5sZk~&tzs&eJgpx$F9@AHM2*5HINrPjNq1!??Njq5!ZZJ8u?tM|Qv3kJ! z^qrl*y`grTY`x*GcMpIC$~l^T-_?Z5EJ_xBstRzZ*TRMWo@WI_>>mufy5*~_3i>jc5?xhP59K*ceJ_3ptS^(ePZ(Q5Tjh~U>L=~z=yq(E%kU5I z!qhj8QMa{8RG93?gx2Q8Zhf4Mh@(~lR{^29_mg=hNb$#vTYXVp>A;Wtskq(Cz+oyX zq#QB*Dp!E8@Kc6Rij<@Oj*;e&__-o)+Xiq=3cpA@IfC0nC8r7nLI)VN#MJ&24%Nm$$(dA zhY$TeUD`>y)VRTld#y;LrQy|eP9i|VZv*Lxz^FzdcSolh-UV|;=`d>m?n;fJS&B+N z3J>{rEbr(=84}Z%Y0|g_i~PO?I>9-~yRw(&jX&iD5RMhxr39T=ykASD5Tv9Wd44)-OD_W;<0) zsy1X%a{^irFTwQ@uZB4`pK6MRmnws+4z=&e4OX}?o*Gm27m~Lx*vYPCzo7u1${)i2 zCvriQV3~?eO#?O>*WT~RK{3u-$Ryd7>q5u2bVS)@n z;Y3DJufGp??;FJ6Zy-v$8s`J@dEVsWK&zo2r8`ja7qdRRZq|I;R+47;m*p|bGHR)l zUS<5>HhI~Yq<_u|2&G%xz-;dWK1~&Wg{5)0GQQNAH&YDyos#yc*)B`Dq&<*AXPsVuf`0rS5 zXOD3mB28I@c|+zAGi8{7{6YpZSOQ@x1E|W32k!|<4dRRVW>`je>vOnXlozm*Z}$X)&du z3f@Ugf9NszvZXkEEiI-sM&&FwOa|$LS^+DuVZBVU1`cTC94r_M9V)?n&73g@bMwxe zF7Nw*FzB+=Rv~Ypgk1l0SWZJkp!}FK60&p!mz(BL-VyOc2^yOsO~S@w0flpWKx2LM z!)!TK!^yQTo^6-FL$SnlDl~1ww8ixo!mUev)mu-s>xn&J;xQx2_ML8@fP%dfh=4Z< z=nDN%BxvohX}Cm;<2bBUTp+#kQIb2nht>XPgh78qgRq8q0J8iqqmf^I+!5s&ug@&q7pX6iW^|$@Trz-6}+-p3s}A~>eV~shqUL( z6zd%pZ>VK!YGa;fWE?{Nwhc?ye!7{cw)Nmw?}PB4zpr0C&(?B>!>=@ch$kO7)0Ghz ze|8`{TziMHf%nZk@!>biM=(v#=DFDz23g&MgM!dhpxT2GAU0(P9M7YoEq7KPoE+s0u{f?U+o;T|T_BF!AWsw^y58GcD`m4n zYZF!R=vp@8m9>$`q{sDZ;mOPuE>13X`kvTu4>u6Kb*s>Y0!KS9RtYiE*+i*e^Vr;n z_Bze?ZbaCoxQ$jmYGYK>7;&)+Jg1vyxP+!Bpxy2l9jg@Va%i8`^7Hq{x2RkTv2O25 z0MIi5G(QismH03H32|{A;q$+)SiYfNU4m`_)8;SF64^c-?g_by@bi3jTHO+B2I*Xv zWEq?l6o+`4gufF7vC~8&CtvQ*NVQxmLxpTBwMFupqhlZYMGH43u!E6rp9iZO!Z<3s)^D$M5Hf7RiJ=nOJW zxrf%zVN6qc7@5jOH8s2Y%`Go7Fvb#W`!Xc>WadrW!WKpLQVtu3(Y3!vbbs^FPJGs4&um?!$fuf*a4eRgxKCT8%m0c zyDI-v0(h+`QY1Yn0`CEdEXQ@BF=VZrsaxtvhO_BT4R@rq+BBD9pD<$30M;=@#-BZ=! z3*YZVYzKiuaKq85Zw*j$>LE-%z~yiXX_nr7-YgH0?aBcZ>LCvyloa%%Pov3rgedAu z(H9RZJ#hQf$qc{;q+BG?GJm3p2M3dI_q_1p<@D+%n@QBgjd}`QCbFz}t=mKx-id3) z17b%mJkN%f*T;4pUKP|17U|gRJTJ5< z4#u1hXGKbN4<*@a*-cbe6_@R&!q>|m^v9R}cP~r|si<}u|NZU%{@4FrjsM;Ze~!q1 zpN0Q7&q7imH82?;KSh}^bb-`w%3j26u`7BTS9A^p_rb4O-d#j8(Di{Ql_cUkpwrT$ zf$N1-CjC|OGOBOpepHF9$W63GU(HXtEKdF~TTK;oiu?*l8=kNv;={xpW-zbrBULBy zKj?KPEz=PjlPEu3*HKZ8?|hSR7Z*`#nae8ILQV!vD+Rz<00<$BVkqBnUFLUx z{Q->P`(V%?kJf^lq(G=;+4js&*~s|d1sE6Cpq5NcCBK3<`1MWMrPl^VuzzkAI4aX> z7Atv~5Ye>lua~(#7`n4n4z(FFRc<-)k&=BpJjOq~`%(mQw&+k(nOxMkNs$7?_5km+ z6hL|x@{fCKR4-8vPa49y!P~@D$CWK8U$6d<>#L$uL;Aj#T7|^~sJG?!hf=3cmVjr!gN%`e z$pc3gQd&{WlQq^%={pb9V4n4BN=1Xt)c7o$Y(*C92!>vC;@L2GzpQD@IU+Ge#AVrtu1Tjs0 z&L?y=PfBx+_5oij^NtTJ_@PPidH0tbQ zUFaOXpq97(ap1>D8m5QYZ>w|qdX}>kFUE%LX6#7j?P5qdL>5|eLyHUM08ryz$beSR zrCK;cxfJ&3(Ib*DgxEA0o@yP+ZNT#D4z|2{sOU)w1MuZ?J}uBW{MyyGc=*0Y18k($ z4~@g%%qS!l%jsr^h84y1Vr|zqNdA0~TOJ4lDG$~Nqxrhoc_?~H z;q_QvlpgEZsH9o;8q^avI~&-+czB5RMm+|12-wmoC-c6Ud=bdq&Ty3?*IAz`ffUHC z0JMhJM*VbTljc6U=%NW!pDWrAXYq-c)lXjz4hev4_y!T{_g@25L)M?17OWjxbkkga z;ev5;|8(gAXNCT2ASeB0k918@noAZ3UT#(?ser5!s6~+%12jRf6Z`R0FM+ojPbK5> z`$v9?(qLSTi}jn}NMA(0FU=K=H3z{e(fY?Lj51$W4es8B)HIX60jMbsl1^!60Vk?v zX>dJKRI4PX-fmPxs+ZgkC4)#cHemjzYuGo^$k!~AE290rLNBHWrcm(rsknGD&Qxsz zZ)l%aX_HE-R;c?%wlHt8zBpxYvic{$bZLqlm~5Iw#v7m-oHdZu9D}S|6n_QySv9M} zuP@*A+CNuaI2nbr`|4m7dDI$Y0P6ZNc=aXJO?KW~&3XnqFfOYVr`+_#B&f^>M*$M7C~b%bdWyN?fn|tLX^yH>)ew$R26iD+{RIVuhwywVikwgm7y&`(2FxO5 zqobn@fkNQ{pdCQ59Y7|$ugO6vd?+7fi3l*t80GLBfD;_4&C#gcddt((lROryk3#iP zs5GNMcZx-cwVzij538VvTBz@9bcI-d4(xl@_1mI;tDY>F%!g1d-0JgRtD~9Caw3|} zo<6ZG$$g@>&}A_LuBv!-qGJ^63Az4t!;xRUI7_j=Z?nzq{D^iTmKF{oUysiIQZj9X z%Mk~@fpk0XlRXUfON=S|PO9zqPfB)$NxbPO5^v8LIr z!e~-D_d@h*hr;s=SM=`&J)hcF^$2nF_JIQW(oEvE7EREwRio?*MSHTWh>^^tH_d7^ zsC|+TUds9kqLDO&l<*ApmK>DhX9-%izIqTbiUkOp@pLN6mruV)-NM0&cuxb+5O_BJOFgt@xL$n{rK;d(E z7{Hn9rULq&dy6GlaD4WqN@RD+L`<*{SVU{1)^_|nI@{~=Q=N3}!70Z(4YA4wnA?;A zGVT#8;^&-#OhTt;ku{ z2?u;Er|md$3crlSOfGvvL<{?q#%h$#^X9eTE`z&Tf}i5YzhqBFf!`>A-G>TR301JC zjbl=3!m9NoqBR*MCf5b_c=CW=kd9v;Xh4+Ng{2nQVM zK|{EX_9vw`=xKXZUEp7ygznBE2(j#)K9Tko8kphuIl!v%_%!{M*YRW-3JU863;FdL zYsxPuJ#eUSiqf>}Uod@Dt(7;&UduG=xhpw$=~6-Qh9gPC_P83?r*6b8 zIcyKV*RN1(2P$6N${LmNqa?de%ty4-!|!VlPrH#=MCv)A(g}i(6^TLEsMuwLq(C!A zVg$1|+jYXBEa6KU^VsDbXI%g)8Qx(o6#eT{O*3m%4ABQ)`UlWes^zN>JK?iQuChoL zw*JI~w?$3aKPh#HB=S#t5W!L{!+?wBS09~0Ql&$?q zsa$0RjN$3JtJDZUoG*EWGt^4)()767NB^OrCTbPEvX}8b=`l=`2}5?WH!tYVgCc&O zD|u~OLfg^Cr(u0Z+WN67)lzx|lYLA&6s>&Bm#?vBtH+}IDJD#RIMGu79Lb&AY6=m_ zY4p@TA^rs(YGb~W*z`vE{WJLB#*Xu_b>57<10BYjn>QnsfYnJtoiz@CeSR~a zjW(9X+e2vM8z;cEMw*kr($#(@kFrl~-b}(M4y|5j{c7MrxE_26D&dT#Vi};==b)aa zfigz_vThJ})-ASxi^kMr_-;f&HFN$BnecIO zs)s~Np-)QaJ^f7Xo4B9Z?(aMn++G4ma~DVF%L=~xXtC&o+6C$U+QqbZm?wtx&DtuI zojy;2t$v~3F;n8qYc;*bZRHnERzGmSvL;tA4BwSJd9nnQ7go?Vcbic94S+Rh$Rg)b5ku%O&X6v^|jgtuoYa_9QE0TOST3W0G>Y~Bnr9PJVS z*G!p%WooZeAuUI;43|e;v~n}~vhkBo1+T~vw2RzUM%9Fyg7f0N%Ud*Z_+t0jD!k+E zSV4Z9Uk#%3zpM425gft0JbiLo(H(>pVWV)*{CO6e1{gmQvNrB;<`!p^J|d!3$hMd_ zZ^mfd5&IJ#08gdWkwCe$lw+Yz!($xe=kRBD|x+s`_7X9Q(wd(9W1 zxwfu+06;SfZvPt(#)L{6q_*{3uM6RJnKnhm!|$>%w<-y6#=rsaXITjWo801tr2F<8&4 zo1~#}obIkFgoQbGGU>2oo9~Cm0m)fS2~GX})Sq#evY_=3wH)dNJSft}*u0q_l_%%4 zUyw6MkU~6u#2lsP6A=x~LqG}hv$O-Y4wHiIWRggpS~%La@e8>;X*71qo9qa$Md{ z5ya2t$mDcJ?(=7OmS>H})7*s#MX*uo`KJfj!JuYB@#TY1xF2U?GuaWKTb01OYnQI< znG7JO4Nx8HAyz%mv}xRf1Gtq`v%m{QjM%Ut04SoA!<8?eGk)EvZ!}=>!{jS=&OlPX z;>z4hz|iYID(|t)|CAzI%P9M87)ntgtqVC^JQL3C1o6hZDTiM{!~|dvnZ422 zp?__IS@WNhs)OYgxI#3QX}J?uNqlTnqCDt*&fo4}y$1+o!=be=j1=s~DNX@g2Cn1q zOE_5)q`tNppeID>r_^ugk+Nv><}{Sd1P`vW6IP2R+reyg{7hb;hftNI9nMb|9<~=` z?gBQ*0z5oO=YBmW9iZlWmR)6~P|UMINX#`yS;U(){(Vm>Et{DCNtFbpA*tmJc_VbX z`??ESH+ON^O6|?BUu=eG;yGC9n>SnHZU69{yGt6Bl|RjIrrHZEM=- zkdpVn9HGLk=e*Fw#M_vL1?0LrHXEl1PY>QGRQFrZLh0q9c0IFnCPmj4q`gSAtDAVu zDCaGZVQY0=leKd@ah>ajGwd%D)3940c)UQ0Q&KsSok{ZgCdw&U{)x>G7DFhsURiDS z{Y(L-5a#h;OjgkUR)Z2>6d%|)6n@nzLIq*7{4L5|S`7Z}s%SnZOi<1I_!XZ}_WR4z zq5Rw#^zb`TT0S76h_;GlRG;&L=3_TqPt@~~$Qo8^LGPh)RnHLm2bUJG9-MJlYskxW%NPox{A!UAN7WdOwIMc z6rQvpU?7(PW-o^oRlm}RDvZww1sQ%DA10ZpUVB<_0`R>Y8Yl74KxBg3+9ZyjJ%?`? zqIp5SnG9B>HH6*!x-=>WvVlJD5yKh83QVjoGS^{ZQ7G(f8sYfbumqz>Pv5VG?dJ{(^X*o51AlhQv)BUU?zp^J%TZL8mh zii-8sA}X$Qn|sk#0iQNMcBcGI{*HBn?FiO|=h@kr=d7)kDsc zuZ!&EB*tsR#+T0A6Fb;QRP&ebc#KE#aG^JRfouLdr{r1OzW6{3P=>{R6mCv>p@A&6 z8f7P*7w?6ayEWlSVh9(GUQ~3l1arXz1%(77eCL$JQKQ6|4fIUu?Z!j1$P!OR-DS0p zE8{ouOgm84^9wlA0h3A8Te5dqY}EQtlZt_PP>l;kX&`@}4c5dE$)}q&`mcha=s>y+ zrJ_Hd)-+kalyP3uTcIYq1m}F1yiAhb*8^GS&#w9rOdFCt zQ8-C#Kt&DU?Gm&>?B}x@Qet;MQCCr4M10Jx(3PuY{Ds4ZV$vkBk@;N$C`KVq z4rqrdO80JbnK}^~FpJz)durn#l9$MH6_h3&0Hqc zTq<~(9|{|#VHd-~#Jpq|wG=lsD%8y>gX~61PB-z2nR%IJWnSjA^}I%ZLf`zfv%@)u z!|(FG@AJIR`<_gb)O^zf?lmHRgfh34BIyNrXV+wP6qIpXCn1jmHFcUJni#!3hCt9r zo$T__V)}V&(ssXF&r<6lF)zjXQGK7H8y0>X4UNAge)P!PIIA((i{tBu^TrT(0>2X_ zGx`2*xudxyy;U=#NDNa2O5)K3CT5u@s*qS$W%*l7C6*J$Sri@&9n4b8?AZIq18^&?%~(5eQ`ui&@Ag|F4gFo3qs zJ<+JSX#@lsL!w+Ev(a|*fIo>9DTD6FllFU?w|Q3|0u~9LaTsu7?}Q-{A^Q%2 zw_cg;u**HR$x^F z2pJA-{56q-_>iwB+>H(lX9$$GJGtD$U^xASOJl*I5N0i(50onNIeIrWP;$&|bN7@9 zMBANoWTeXp8A20Ga^zo7-w>~I`KqxpF<7*2c@p2wouVm$%;63pYM3G&g7^?XsmhPZ z`1VREp>9Y+;!4Qq!pNn)oVQr4_yNcyOK3Uc+a&Fyh-?*29kyS_sxL1|Ct!!%(ii6` zIb5hJK8u`?kp!mukG+FBG literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/essential-modding/additional-fixes.png b/assets/images/social/ru/essential-modding/additional-fixes.png new file mode 100644 index 0000000000000000000000000000000000000000..184ab6caf929e38253aa0f43b6d7d8efb09e23a1 GIT binary patch literal 43497 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%0ATVoDGjox#Gn&>rC}OI~rqdta{86=LsH;?x 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/ru/essential-modding/various-fixes.png b/assets/images/social/ru/essential-modding/various-fixes.png new file mode 100644 index 0000000000000000000000000000000000000000..5cffd8999e5f80b82228abfdbbe4e06d92f9afe2 GIT binary patch literal 37553 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 F{}-`9(gy$l literal 0 HcmV?d00001 diff --git a/assets/images/social/en/extras/modloading.png b/assets/images/social/en/extras/modloading.png new file mode 100644 index 0000000000000000000000000000000000000000..669a8cea09ef763ee069853c62a3e475aecf7a4b GIT binary patch literal 37260 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/en/extras/trainers.png b/assets/images/social/en/extras/trainers.png new file mode 100644 index 0000000000000000000000000000000000000000..c727877d2546368624e3fd164bb681b3751b3def GIT binary patch literal 35174 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/en/index.png b/assets/images/social/en/index.png new file mode 100644 index 0000000000000000000000000000000000000000..3b31e9e62438885ec4a2a2b99552969242a7106c GIT binary patch literal 37681 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