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..b5301b7f --- /dev/null +++ b/404.html @@ -0,0 +1,2400 @@ + + + + + + + + + + + + + + + + + + + Data Catering + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + +
+ + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + + + +
+
+
+ + + + +
+
+ +

404 - Not found

+ +
+
+ + + + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/CNAME b/CNAME new file mode 100644 index 00000000..eb26bc95 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +data.catering \ No newline at end of file diff --git a/about/index.html b/about/index.html new file mode 100644 index 00000000..a6c44b3a --- /dev/null +++ b/about/index.html @@ -0,0 +1,2567 @@ + + + + + + + + + + + + + + + + + + + + + + + + + About - Data Catering + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + +
+ + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + + + +
+
+
+ + + + +
+
+ + + + + + + +

About

+

Hi, my name is Peter. I am a Software Developer, mainly focussing on data related services. My experience +can be found on my LinkedIn.

+

I have created Data Caterer to help serve individuals and companies with data generation and data testing. It is a +complex area that has many edge cases or intricacies that are hard to summarise or turn into something actionable and +repeatable. Through the use of metadata, Data Caterer can help simplify your data testing, simulating production +environment data, aid in data debugging, or whatever your data use case may be.

+

Given that it is going to save you and your team time and money, please help in considering financial support. This will +help the product grow into a sustainable and feature-full service. Check the sponsor section to see how +you can help.

+

Contact

+

Please contact us +via Slack +or via email hello@data.catering if you have any questions or queries.

+ + + + + + + + + + + + + + + + + + +
+
+ + + + + +
+ + + +
+ + + +
+
+
+
+ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/external/cdn.jsdelivr.net/gh/jdecked/twemoji@15.0.3/assets/svg/2705.svg b/assets/external/cdn.jsdelivr.net/gh/jdecked/twemoji@15.0.3/assets/svg/2705.svg new file mode 100644 index 00000000..9817a091 --- /dev/null +++ b/assets/external/cdn.jsdelivr.net/gh/jdecked/twemoji@15.0.3/assets/svg/2705.svg @@ -0,0 +1 @@ + \ 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..14eb3ad4 --- /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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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-1C88, 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-02AF, U+0304, U+0308, U+0329, 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+2074, 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 00000000..d88dd2b8 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc-CsTKlA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc0CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc0CsTKlA.woff2 new file mode 100644 index 00000000..0f8ca12a Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc0CsTKlA.woff2 differ 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 00000000..317f651e Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc1CsTKlA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc2CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc2CsTKlA.woff2 new file mode 100644 index 00000000..0e37f987 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc2CsTKlA.woff2 differ 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 00000000..e0934d94 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc3CsTKlA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc5CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc5CsTKlA.woff2 new file mode 100644 index 00000000..d95067a4 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc5CsTKlA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc6CsQ.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc6CsQ.woff2 new file mode 100644 index 00000000..83874b7b Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjASc6CsQ.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic-CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic-CsTKlA.woff2 new file mode 100644 index 00000000..50a28059 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic-CsTKlA.woff2 differ 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 00000000..efbe79a2 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic0CsTKlA.woff2 differ 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 00000000..ea329ab8 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic1CsTKlA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic2CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic2CsTKlA.woff2 new file mode 100644 index 00000000..993b327c Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic2CsTKlA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic3CsTKlA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic3CsTKlA.woff2 new file mode 100644 index 00000000..d3cb894a Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic3CsTKlA.woff2 differ 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 00000000..1283c45d Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic5CsTKlA.woff2 differ 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 00000000..851fedb9 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBic6CsQ.woff2 differ 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 00000000..8f20a2cc Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xEIzIFKw.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xFIzIFKw.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xFIzIFKw.woff2 new file mode 100644 index 00000000..bed87080 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xFIzIFKw.woff2 differ 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 00000000..e1f558cd Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xGIzIFKw.woff2 differ 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 00000000..688c713d Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xHIzIFKw.woff2 differ 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 00000000..9dc0be83 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xIIzI.woff2 differ 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 00000000..3e5facb8 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xLIzIFKw.woff2 differ 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 00000000..1125cc01 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu51xMIzIFKw.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fABc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fABc4EsA.woff2 new file mode 100644 index 00000000..a57fbdc2 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fABc4EsA.woff2 differ 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 00000000..72226f5d Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBBc4.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBxc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBxc4EsA.woff2 new file mode 100644 index 00000000..b61eed30 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fBxc4EsA.woff2 differ 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 00000000..a26ba157 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCBc4EsA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCRc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCRc4EsA.woff2 new file mode 100644 index 00000000..a69131b3 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCRc4EsA.woff2 differ 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 00000000..14af54ae Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fChc4EsA.woff2 differ 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 00000000..a7026d4c Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5fCxc4EsA.woff2 differ 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 00000000..41637e58 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfABc4EsA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBBc4.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBBc4.woff2 new file mode 100644 index 00000000..22f6f53c Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBBc4.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBxc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBxc4EsA.woff2 new file mode 100644 index 00000000..19fc4b1b Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfBxc4EsA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCBc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCBc4EsA.woff2 new file mode 100644 index 00000000..98f53f74 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCBc4EsA.woff2 differ 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 00000000..660850ee Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCRc4EsA.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2 new file mode 100644 index 00000000..327eb664 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2 differ 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 00000000..c1754533 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlfCxc4EsA.woff2 differ 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 00000000..a7f32b6f Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4WxKOzY.woff2 differ 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 00000000..2d7b2151 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu4mxK.woff2 differ 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 00000000..a4962e9b Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu5mxKOzY.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu72xKOzY.woff2 b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu72xKOzY.woff2 new file mode 100644 index 00000000..e3d708f3 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu72xKOzY.woff2 differ 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 00000000..20c87e67 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7GxKOzY.woff2 differ 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 00000000..cfd043db Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7WxKOzY.woff2 differ 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 00000000..47ce460f Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu7mxKOzY.woff2 differ 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 00000000..022274d4 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSV0mf0h.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSZ0mf0h.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSZ0mf0h.woff2 new file mode 100644 index 00000000..48edd1b0 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSZ0mf0h.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSd0mf0h.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSd0mf0h.woff2 new file mode 100644 index 00000000..cb41535e Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSd0mf0h.woff2 differ 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 00000000..1d988a3f Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2 differ 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 00000000..11e6a46a Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSt0mf0h.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSx0mf0h.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSx0mf0h.woff2 new file mode 100644 index 00000000..50fb8e71 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSx0mf0h.woff2 differ 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 00000000..1f1c97fe Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtElOUlYIw.woff2 differ diff --git a/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEleUlYIw.woff2 b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEleUlYIw.woff2 new file mode 100644 index 00000000..16230051 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEleUlYIw.woff2 differ 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 00000000..6f232c38 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEluUlYIw.woff2 differ 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 00000000..a3e5aef7 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEm-Ul.woff2 differ 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 00000000..f73f27d6 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEmOUlYIw.woff2 differ 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 00000000..135d06e0 Binary files /dev/null and b/assets/external/fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEn-UlYIw.woff2 differ 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..18a0afc6 --- /dev/null +++ b/assets/external/unpkg.com/mermaid@11/dist/mermaid.min.js @@ -0,0 +1,2225 @@ +"use strict";var __esbuild_esm_mermaid=(()=>{var oxt=Object.create;var Z1=Object.defineProperty;var lxt=Object.getOwnPropertyDescriptor;var cxt=Object.getOwnPropertyNames;var uxt=Object.getPrototypeOf,hxt=Object.prototype.hasOwnProperty;var o=(e,t)=>Z1(e,"name",{value:t,configurable:!0});var R=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ti=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xr=(e,t)=>{for(var r in t)Z1(e,r,{get:t[r],enumerable:!0})},Zb=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of cxt(t))!hxt.call(e,i)&&i!==r&&Z1(e,i,{get:()=>t[i],enumerable:!(n=lxt(t,i))||n.enumerable});return e},wr=(e,t,r)=>(Zb(e,t,"default"),r&&Zb(r,t,"default")),Qi=(e,t,r)=>(r=e!=null?oxt(uxt(e)):{},Zb(t||!e||!e.__esModule?Z1(r,"default",{value:e,enumerable:!0}):r,e)),fxt=e=>Zb(Z1({},"__esModule",{value:!0}),e);var Jb=Ti((pS,mS)=>{"use strict";(function(e,t){typeof pS=="object"&&typeof mS<"u"?mS.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs=t()})(pS,function(){"use strict";var e=1e3,t=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 I=["th","st","nd","rd"],C=k%100;return"["+k+(I[(C-20)%10]||I[C]||I[0])+"]"},"ordinal")},x=o(function(k,I,C){var O=String(k);return!O||O.length>=I?k:""+Array(I+1-O.length).join(C)+k},"m"),b={s:x,z:o(function(k){var I=-k.utcOffset(),C=Math.abs(I),O=Math.floor(C/60),D=C%60;return(I<=0?"+":"-")+x(O,2,"0")+":"+x(D,2,"0")},"z"),m:o(function k(I,C){if(I.date()1)return k(F[0])}else{var B=I.name;S[B]=I,D=B}return!O&&D&&(w=D),D||!O&&w},"t"),A=o(function(k,I){if(E(k))return k.clone();var C=typeof I=="object"?I:{};return C.date=k,C.args=arguments,new M(C)},"O"),L=b;L.l=_,L.i=E,L.w=function(k,I){return A(k,{locale:I.$L,utc:I.$u,x:I.$x,$offset:I.$offset})};var M=function(){function k(C){this.$L=_(C.locale,null,!0),this.parse(C),this.$x=this.$x||C.x||{},this[T]=!0}o(k,"M");var I=k.prototype;return I.parse=function(C){this.$d=function(O){var D=O.date,P=O.utc;if(D===null)return new Date(NaN);if(L.u(D))return new Date;if(D instanceof Date)return new Date(D);if(typeof D=="string"&&!/Z$/i.test(D)){var F=D.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(D)}(C),this.init()},I.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()},I.$utils=function(){return L},I.isValid=function(){return this.$d.toString()!==m},I.isSame=function(C,O){var D=A(C);return this.startOf(O)<=D&&D<=this.endOf(O)},I.isAfter=function(C,O){return A(C){"use strict";Az=Qi(Jb(),1),nu={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},V={trace:o((...e)=>{},"trace"),debug:o((...e)=>{},"debug"),info:o((...e)=>{},"info"),warn:o((...e)=>{},"warn"),error:o((...e)=>{},"error"),fatal:o((...e)=>{},"fatal")},J1=o(function(e="fatal"){let t=nu.fatal;typeof e=="string"?e.toLowerCase()in nu&&(t=nu[e]):typeof e=="number"&&(t=e),V.trace=()=>{},V.debug=()=>{},V.info=()=>{},V.warn=()=>{},V.error=()=>{},V.fatal=()=>{},t<=nu.fatal&&(V.fatal=console.error?console.error.bind(console,So("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",So("FATAL"))),t<=nu.error&&(V.error=console.error?console.error.bind(console,So("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",So("ERROR"))),t<=nu.warn&&(V.warn=console.warn?console.warn.bind(console,So("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",So("WARN"))),t<=nu.info&&(V.info=console.info?console.info.bind(console,So("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",So("INFO"))),t<=nu.debug&&(V.debug=console.debug?console.debug.bind(console,So("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",So("DEBUG"))),t<=nu.trace&&(V.trace=console.debug?console.debug.bind(console,So("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",So("TRACE")))},"setLogLevel"),So=o(e=>`%c${(0,Az.default)().format("ss.SSS")} : ${e} : `,"format")});var dxt,hp,gS,_z,t4=R(()=>{"use strict";dxt=Object.freeze({left:0,top:0,width:16,height:16}),hp=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),gS=Object.freeze({...dxt,...hp}),_z=Object.freeze({...gS,body:"",hidden:!1})});var pxt,Lz,Dz=R(()=>{"use strict";t4();pxt=Object.freeze({width:null,height:null}),Lz=Object.freeze({...pxt,...hp})});var e4,yS,r4,Rz=R(()=>{"use strict";e4=/^[a-z0-9]+(-[a-z0-9]+)*$/,yS=o((e,t,r,n="")=>{let i=e.split(":");if(e.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 t&&!r4(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 t&&!r4(l)?null:l}if(r&&n===""){let l={provider:n,prefix:"",name:a};return t&&!r4(l,r)?null:l}return null},"stringToIcon"),r4=o((e,t)=>e?!!((e.provider===""||e.provider.match(e4))&&(t&&e.prefix===""||e.prefix.match(e4))&&e.name.match(e4)):!1,"validateIconName")});function Nz(e,t){let r={};!e.hFlip!=!t.hFlip&&(r.hFlip=!0),!e.vFlip!=!t.vFlip&&(r.vFlip=!0);let n=((e.rotate||0)+(t.rotate||0))%4;return n&&(r.rotate=n),r}var Mz=R(()=>{"use strict";o(Nz,"mergeIconTransformations")});function vS(e,t){let r=Nz(e,t);for(let n in _z)n in hp?n in e&&!(n in r)&&(r[n]=hp[n]):n in t?r[n]=t[n]:n in e&&(r[n]=e[n]);return r}var Iz=R(()=>{"use strict";t4();Mz();o(vS,"mergeIconData")});function Oz(e,t){let r=e.icons,n=e.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"),(t||Object.keys(r).concat(Object.keys(n))).forEach(a),i}var Pz=R(()=>{"use strict";o(Oz,"getIconsTree")});function Bz(e,t,r){let n=e.icons,i=e.aliases||Object.create(null),a={};function s(l){a=vS(n[l]||i[l],a)}return o(s,"parse"),s(t),r.forEach(s),vS(e,a)}function xS(e,t){if(e.icons[t])return Bz(e,t,[]);let r=Oz(e,[t])[t];return r?Bz(e,t,r):null}var Fz=R(()=>{"use strict";Iz();Pz();o(Bz,"internalGetIconData");o(xS,"getIconData")});function bS(e,t,r){if(t===1)return e;if(r=r||100,typeof e=="number")return Math.ceil(e*t*r)/r;if(typeof e!="string")return e;let n=e.split(mxt);if(n===null||!n.length)return e;let i=[],a=n.shift(),s=gxt.test(a);for(;;){if(s){let l=parseFloat(a);isNaN(l)?i.push(a):i.push(Math.ceil(l*t*r)/r)}else i.push(a);if(a=n.shift(),a===void 0)return i.join("");s=!s}}var mxt,gxt,zz=R(()=>{"use strict";mxt=/(-?[0-9.]*[0-9]+[0-9.]*)/g,gxt=/^-?[0-9.]*[0-9]+[0-9.]*$/g;o(bS,"calculateSize")});function yxt(e,t="defs"){let r="",n=e.indexOf("<"+t);for(;n>=0;){let i=e.indexOf(">",n),a=e.indexOf("",a);if(s===-1)break;r+=e.slice(i+1,a).trim(),e=e.slice(0,n).trim()+e.slice(s+1)}return{defs:r,content:e}}function vxt(e,t){return e?""+e+""+t:t}function $z(e,t,r){let n=yxt(e);return vxt(n.defs,t+n.content+r)}var Gz=R(()=>{"use strict";o(yxt,"splitSVGDefs");o(vxt,"mergeDefsAndContent");o($z,"wrapSVGContent")});function wS(e,t){let r={...gS,...e},n={...Lz,...t},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 S;switch(w<0&&(w-=Math.floor(w/4)*4),w=w%4,w){case 1:S=i.height/2+i.top,v.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:v.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:S=i.width/2+i.left,v.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}w%2===1&&(i.left!==i.top&&(S=i.left,i.left=i.top,i.top=S),i.width!==i.height&&(S=i.width,i.width=i.height,i.height=S)),v.length&&(a=$z(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=bS(d,u/h)):(f=s==="auto"?u:s,d=l===null?bS(f,h/u):l==="auto"?h:l);let p={},m=o((y,v)=>{xxt(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 xxt,Vz=R(()=>{"use strict";t4();Dz();zz();Gz();xxt=o(e=>e==="unset"||e==="undefined"||e==="none","isUnsetKeyword");o(wS,"iconToSVG")});function TS(e,t=wxt){let r=[],n;for(;n=bxt.exec(e);)r.push(n[1]);if(!r.length)return e;let i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return r.forEach(a=>{let s=typeof t=="function"?t(a):t+(Txt++).toString(),l=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+l+')([")]|\\.[a-z])',"g"),"$1"+s+i+"$3")}),e=e.replace(new RegExp(i,"g"),""),e}var bxt,wxt,Txt,Uz=R(()=>{"use strict";bxt=/\sid="(\S+)"/g,wxt="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16),Txt=0;o(TS,"replaceIDs")});function kS(e,t){let r=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let n in t)r+=" "+n+'="'+t[n]+'"';return'"+e+""}var Hz=R(()=>{"use strict";o(kS,"iconToHTML")});var Yz=Ti((Lae,Wz)=>{"use strict";var fp=1e3,dp=fp*60,pp=dp*60,Yf=pp*24,kxt=Yf*7,Ext=Yf*365.25;Wz.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return Cxt(e);if(r==="number"&&isFinite(e))return t.long?Axt(e):Sxt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Cxt(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*Ext;case"weeks":case"week":case"w":return r*kxt;case"days":case"day":case"d":return r*Yf;case"hours":case"hour":case"hrs":case"hr":case"h":return r*pp;case"minutes":case"minute":case"mins":case"min":case"m":return r*dp;case"seconds":case"second":case"secs":case"sec":case"s":return r*fp;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}o(Cxt,"parse");function Sxt(e){var t=Math.abs(e);return t>=Yf?Math.round(e/Yf)+"d":t>=pp?Math.round(e/pp)+"h":t>=dp?Math.round(e/dp)+"m":t>=fp?Math.round(e/fp)+"s":e+"ms"}o(Sxt,"fmtShort");function Axt(e){var t=Math.abs(e);return t>=Yf?n4(e,t,Yf,"day"):t>=pp?n4(e,t,pp,"hour"):t>=dp?n4(e,t,dp,"minute"):t>=fp?n4(e,t,fp,"second"):e+" ms"}o(Axt,"fmtLong");function n4(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}o(n4,"plural")});var Xz=Ti((Rae,qz)=>{"use strict";function _xt(e){r.debug=r,r.default=r,r.coerce=u,r.disable=a,r.enable=i,r.enabled=s,r.humanize=Yz(),r.destroy=h,Object.keys(e).forEach(f=>{r[f]=e[f]}),r.names=[],r.skips=[],r.formatters={};function t(f){let d=0;for(let p=0;p{if(E==="%%")return"%";S++;let A=r.formatters[_];if(typeof A=="function"){let L=v[S];E=A.call(x,L),v.splice(S,1),S--}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=Dxt;qs.save=Rxt;qs.load=Nxt;qs.useColors=Lxt;qs.storage=Mxt();qs.destroy=(()=>{let e=!1;return()=>{e||(e=!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 Lxt(){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 e;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&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}o(Lxt,"useColors");function Dxt(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+i4.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}o(Dxt,"formatArgs");qs.log=console.debug||console.log||(()=>{});function Rxt(e){try{e?qs.storage.setItem("debug",e):qs.storage.removeItem("debug")}catch{}}o(Rxt,"save");function Nxt(){let e;try{e=qs.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}o(Nxt,"load");function Mxt(){try{return localStorage}catch{}}o(Mxt,"localstorage");i4.exports=Xz()(qs);var{formatters:Ixt}=i4.exports;Ixt.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Iae,Kz=R(()=>{"use strict";Rz();Fz();Vz();Uz();Hz();Iae=Qi(jz(),1)});var CS,ES,Qz,a4,Oxt,Ao,iu=R(()=>{"use strict";ce();Kz();CS={body:'?',height:80,width:80},ES=new Map,Qz=new Map,a4=o(e=>{for(let t of e){if(!t.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(V.debug("Registering icon pack:",t.name),"loader"in t)Qz.set(t.name,t.loader);else if("icons"in t)ES.set(t.name,t.icons);else throw V.error("Invalid icon loader:",t),new Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),Oxt=o(async(e,t)=>{let r=yS(e,!0,t!==void 0);if(!r)throw new Error(`Invalid icon name: ${e}`);let n=r.prefix||t;if(!n)throw new Error(`Icon name must contain a prefix: ${e}`);let i=ES.get(n);if(!i){let s=Qz.get(n);if(!s)throw new Error(`Icon set not found: ${r.prefix}`);try{i={...await s(),prefix:n},ES.set(n,i)}catch(l){throw V.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let a=xS(i,r.name);if(!a)throw new Error(`Icon not found: ${e}`);return a},"getRegisteredIconData"),Ao=o(async(e,t)=>{let r;try{r=await Oxt(e,t?.fallbackPrefix)}catch(a){V.error(a),r=CS}let n=wS(r,t);return kS(TS(n.body),n.attributes)},"getIconSVG")});function s4(e){for(var t=[],r=1;r{"use strict";o(s4,"dedent")});var o4,qf,Zz,l4=R(()=>{"use strict";o4=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,qf=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,Zz=/\s*%%.*\n/gm});var mp,AS=R(()=>{"use strict";mp=class extends Error{static{o(this,"UnknownDiagramError")}constructor(t){super(t),this.name="UnknownDiagramError"}}});var Xf,gp,c4,_S,Jz,jf=R(()=>{"use strict";ce();l4();AS();Xf={},gp=o(function(e,t){e=e.replace(o4,"").replace(qf,"").replace(Zz,` +`);for(let[r,{detector:n}]of Object.entries(Xf))if(n(e,t))return r;throw new mp(`No diagram type detected matching given configuration for text: ${e}`)},"detectType"),c4=o((...e)=>{for(let{id:t,detector:r,loader:n}of e)_S(t,r,n)},"registerLazyLoadedDiagrams"),_S=o((e,t,r)=>{Xf[e]&&V.warn(`Detector with key ${e} already exists. Overwriting.`),Xf[e]={detector:t,loader:r},V.debug(`Detector with key ${e} added${r?" with loader":""}`)},"addDetector"),Jz=o(e=>Xf[e].loader,"getDiagramLoader")});var ty,t$,LS=R(()=>{"use strict";ty=function(){var e=o(function(_t,dt,Y,ft){for(Y=Y||{},ft=_t.length;ft--;Y[_t[ft]]=dt);return Y},"o"),t=[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],S=[1,36],T=[1,37],E=[1,38],_=[1,39],A=[1,40],L=[1,41],M=[1,42],N=[1,43],k=[1,44],I=[1,45],C=[1,46],O=[1,47],D=[1,48],P=[1,50],F=[1,51],B=[1,52],G=[1,53],z=[1,54],W=[1,55],Q=[1,56],j=[1,57],at=[1,58],X=[1,59],J=[1,60],Z=[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],K=[1,82],ot=[1,83],ct=[1,84],ut=[1,85],et=[12,14,42],Mt=[12,14,33,42],it=[12,14,33,42,76,77,79,80],wt=[12,33],Ot=[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],St={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(dt,Y,ft,mt,rt,ht,nt){var st=ht.length-1;switch(rt){case 3:mt.setDirection("TB");break;case 4:mt.setDirection("BT");break;case 5:mt.setDirection("RL");break;case 6:mt.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:mt.setC4Type(ht[st-3]);break;case 19:mt.setTitle(ht[st].substring(6)),this.$=ht[st].substring(6);break;case 20:mt.setAccDescription(ht[st].substring(15)),this.$=ht[st].substring(15);break;case 21:this.$=ht[st].trim(),mt.setTitle(this.$);break;case 22:case 23:this.$=ht[st].trim(),mt.setAccDescription(this.$);break;case 28:ht[st].splice(2,0,"ENTERPRISE"),mt.addPersonOrSystemBoundary(...ht[st]),this.$=ht[st];break;case 29:ht[st].splice(2,0,"SYSTEM"),mt.addPersonOrSystemBoundary(...ht[st]),this.$=ht[st];break;case 30:mt.addPersonOrSystemBoundary(...ht[st]),this.$=ht[st];break;case 31:ht[st].splice(2,0,"CONTAINER"),mt.addContainerBoundary(...ht[st]),this.$=ht[st];break;case 32:mt.addDeploymentNode("node",...ht[st]),this.$=ht[st];break;case 33:mt.addDeploymentNode("nodeL",...ht[st]),this.$=ht[st];break;case 34:mt.addDeploymentNode("nodeR",...ht[st]),this.$=ht[st];break;case 35:mt.popBoundaryParseStack();break;case 39:mt.addPersonOrSystem("person",...ht[st]),this.$=ht[st];break;case 40:mt.addPersonOrSystem("external_person",...ht[st]),this.$=ht[st];break;case 41:mt.addPersonOrSystem("system",...ht[st]),this.$=ht[st];break;case 42:mt.addPersonOrSystem("system_db",...ht[st]),this.$=ht[st];break;case 43:mt.addPersonOrSystem("system_queue",...ht[st]),this.$=ht[st];break;case 44:mt.addPersonOrSystem("external_system",...ht[st]),this.$=ht[st];break;case 45:mt.addPersonOrSystem("external_system_db",...ht[st]),this.$=ht[st];break;case 46:mt.addPersonOrSystem("external_system_queue",...ht[st]),this.$=ht[st];break;case 47:mt.addContainer("container",...ht[st]),this.$=ht[st];break;case 48:mt.addContainer("container_db",...ht[st]),this.$=ht[st];break;case 49:mt.addContainer("container_queue",...ht[st]),this.$=ht[st];break;case 50:mt.addContainer("external_container",...ht[st]),this.$=ht[st];break;case 51:mt.addContainer("external_container_db",...ht[st]),this.$=ht[st];break;case 52:mt.addContainer("external_container_queue",...ht[st]),this.$=ht[st];break;case 53:mt.addComponent("component",...ht[st]),this.$=ht[st];break;case 54:mt.addComponent("component_db",...ht[st]),this.$=ht[st];break;case 55:mt.addComponent("component_queue",...ht[st]),this.$=ht[st];break;case 56:mt.addComponent("external_component",...ht[st]),this.$=ht[st];break;case 57:mt.addComponent("external_component_db",...ht[st]),this.$=ht[st];break;case 58:mt.addComponent("external_component_queue",...ht[st]),this.$=ht[st];break;case 60:mt.addRel("rel",...ht[st]),this.$=ht[st];break;case 61:mt.addRel("birel",...ht[st]),this.$=ht[st];break;case 62:mt.addRel("rel_u",...ht[st]),this.$=ht[st];break;case 63:mt.addRel("rel_d",...ht[st]),this.$=ht[st];break;case 64:mt.addRel("rel_l",...ht[st]),this.$=ht[st];break;case 65:mt.addRel("rel_r",...ht[st]),this.$=ht[st];break;case 66:mt.addRel("rel_b",...ht[st]),this.$=ht[st];break;case 67:ht[st].splice(0,1),mt.addRel("rel",...ht[st]),this.$=ht[st];break;case 68:mt.updateElStyle("update_el_style",...ht[st]),this.$=ht[st];break;case 69:mt.updateRelStyle("update_rel_style",...ht[st]),this.$=ht[st];break;case 70:mt.updateLayoutConfig("update_layout_config",...ht[st]),this.$=ht[st];break;case 71:this.$=[ht[st]];break;case 72:ht[st].unshift(ht[st-1]),this.$=ht[st];break;case 73:case 75:this.$=ht[st].trim();break;case 74:let Tt={};Tt[ht[st-1].trim()]=ht[st].trim(),this.$=Tt;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:t,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:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{13:70,19:20,20:21,21:22,22:t,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:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{13:71,19:20,20:21,21:22,22:t,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:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{13:72,19:20,20:21,21:22,22:t,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:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{13:73,19:20,20:21,21:22,22:t,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:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{14:[1,74]},e(Z,[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:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J}),e(Z,[2,14]),e(H,[2,16],{12:[1,76]}),e(Z,[2,36],{12:[1,77]}),e(q,[2,19]),e(q,[2,20]),{25:[1,78]},{27:[1,79]},e(q,[2,23]),{35:80,75:81,76:K,77:ot,79:ct,80:ut},{35:86,75:81,76:K,77:ot,79:ct,80:ut},{35:87,75:81,76:K,77:ot,79:ct,80:ut},{35:88,75:81,76:K,77:ot,79:ct,80:ut},{35:89,75:81,76:K,77:ot,79:ct,80:ut},{35:90,75:81,76:K,77:ot,79:ct,80:ut},{35:91,75:81,76:K,77:ot,79:ct,80:ut},{35:92,75:81,76:K,77:ot,79:ct,80:ut},{35:93,75:81,76:K,77:ot,79:ct,80:ut},{35:94,75:81,76:K,77:ot,79:ct,80:ut},{35:95,75:81,76:K,77:ot,79:ct,80:ut},{35:96,75:81,76:K,77:ot,79:ct,80:ut},{35:97,75:81,76:K,77:ot,79:ct,80:ut},{35:98,75:81,76:K,77:ot,79:ct,80:ut},{35:99,75:81,76:K,77:ot,79:ct,80:ut},{35:100,75:81,76:K,77:ot,79:ct,80:ut},{35:101,75:81,76:K,77:ot,79:ct,80:ut},{35:102,75:81,76:K,77:ot,79:ct,80:ut},{35:103,75:81,76:K,77:ot,79:ct,80:ut},{35:104,75:81,76:K,77:ot,79:ct,80:ut},e(et,[2,59]),{35:105,75:81,76:K,77:ot,79:ct,80:ut},{35:106,75:81,76:K,77:ot,79:ct,80:ut},{35:107,75:81,76:K,77:ot,79:ct,80:ut},{35:108,75:81,76:K,77:ot,79:ct,80:ut},{35:109,75:81,76:K,77:ot,79:ct,80:ut},{35:110,75:81,76:K,77:ot,79:ct,80:ut},{35:111,75:81,76:K,77:ot,79:ct,80:ut},{35:112,75:81,76:K,77:ot,79:ct,80:ut},{35:113,75:81,76:K,77:ot,79:ct,80:ut},{35:114,75:81,76:K,77:ot,79:ct,80:ut},{35:115,75:81,76:K,77:ot,79:ct,80:ut},{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:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J},{12:[1,118],33:[1,117]},{35:119,75:81,76:K,77:ot,79:ct,80:ut},{35:120,75:81,76:K,77:ot,79:ct,80:ut},{35:121,75:81,76:K,77:ot,79:ct,80:ut},{35:122,75:81,76:K,77:ot,79:ct,80:ut},{35:123,75:81,76:K,77:ot,79:ct,80:ut},{35:124,75:81,76:K,77:ot,79:ct,80:ut},{35:125,75:81,76:K,77:ot,79:ct,80:ut},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},e(Z,[2,15]),e(H,[2,17],{21:22,19:130,22:t,23:r,24:n,26:i,28:a}),e(Z,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,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:S,52:T,53:E,54:_,55:A,56:L,57:M,58:N,59:k,60:I,61:C,62:O,63:D,64:P,65:F,66:B,67:G,68:z,69:W,70:Q,71:j,72:at,73:X,74:J}),e(q,[2,21]),e(q,[2,22]),e(et,[2,39]),e(Mt,[2,71],{75:81,35:132,76:K,77:ot,79:ct,80:ut}),e(it,[2,73]),{78:[1,133]},e(it,[2,75]),e(it,[2,76]),e(et,[2,40]),e(et,[2,41]),e(et,[2,42]),e(et,[2,43]),e(et,[2,44]),e(et,[2,45]),e(et,[2,46]),e(et,[2,47]),e(et,[2,48]),e(et,[2,49]),e(et,[2,50]),e(et,[2,51]),e(et,[2,52]),e(et,[2,53]),e(et,[2,54]),e(et,[2,55]),e(et,[2,56]),e(et,[2,57]),e(et,[2,58]),e(et,[2,60]),e(et,[2,61]),e(et,[2,62]),e(et,[2,63]),e(et,[2,64]),e(et,[2,65]),e(et,[2,66]),e(et,[2,67]),e(et,[2,68]),e(et,[2,69]),e(et,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},e(wt,[2,28]),e(wt,[2,29]),e(wt,[2,30]),e(wt,[2,31]),e(wt,[2,32]),e(wt,[2,33]),e(wt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},e(H,[2,18]),e(Z,[2,38]),e(Mt,[2,72]),e(it,[2,74]),e(et,[2,24]),e(et,[2,35]),e(Ot,[2,25]),e(Ot,[2,26],{12:[1,138]}),e(Ot,[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(dt,Y){if(Y.recoverable)this.trace(dt);else{var ft=new Error(dt);throw ft.hash=Y,ft}},"parseError"),parse:o(function(dt){var Y=this,ft=[0],mt=[],rt=[null],ht=[],nt=this.table,st="",Tt=0,kt=0,Ct=0,At=2,$t=1,Nt=ht.slice.call(arguments,1),yt=Object.create(this.lexer),Ut={yy:{}};for(var zt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,zt)&&(Ut.yy[zt]=this.yy[zt]);yt.setInput(dt,Ut.yy),Ut.yy.lexer=yt,Ut.yy.parser=this,typeof yt.yylloc>"u"&&(yt.yylloc={});var ae=yt.yylloc;ht.push(ae);var ke=yt.options&&yt.options.ranges;typeof Ut.yy.parseError=="function"?this.parseError=Ut.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ee(qe){ft.length=ft.length-2*qe,rt.length=rt.length-qe,ht.length=ht.length-qe}o(Ee,"popStack");function le(){var qe;return qe=mt.pop()||yt.lex()||$t,typeof qe!="number"&&(qe instanceof Array&&(mt=qe,qe=mt.pop()),qe=Y.symbols_[qe]||qe),qe}o(le,"lex");for(var Zt,me,Ht,ne,xe,Se,Ye={},fe,ee,pe,Me;;){if(Ht=ft[ft.length-1],this.defaultActions[Ht]?ne=this.defaultActions[Ht]:((Zt===null||typeof Zt>"u")&&(Zt=le()),ne=nt[Ht]&&nt[Ht][Zt]),typeof ne>"u"||!ne.length||!ne[0]){var oe="";Me=[];for(fe in nt[Ht])this.terminals_[fe]&&fe>At&&Me.push("'"+this.terminals_[fe]+"'");yt.showPosition?oe="Parse error on line "+(Tt+1)+`: +`+yt.showPosition()+` +Expecting `+Me.join(", ")+", got '"+(this.terminals_[Zt]||Zt)+"'":oe="Parse error on line "+(Tt+1)+": Unexpected "+(Zt==$t?"end of input":"'"+(this.terminals_[Zt]||Zt)+"'"),this.parseError(oe,{text:yt.match,token:this.terminals_[Zt]||Zt,line:yt.yylineno,loc:ae,expected:Me})}if(ne[0]instanceof Array&&ne.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ht+", token: "+Zt);switch(ne[0]){case 1:ft.push(Zt),rt.push(yt.yytext),ht.push(yt.yylloc),ft.push(ne[1]),Zt=null,me?(Zt=me,me=null):(kt=yt.yyleng,st=yt.yytext,Tt=yt.yylineno,ae=yt.yylloc,Ct>0&&Ct--);break;case 2:if(ee=this.productions_[ne[1]][1],Ye.$=rt[rt.length-ee],Ye._$={first_line:ht[ht.length-(ee||1)].first_line,last_line:ht[ht.length-1].last_line,first_column:ht[ht.length-(ee||1)].first_column,last_column:ht[ht.length-1].last_column},ke&&(Ye._$.range=[ht[ht.length-(ee||1)].range[0],ht[ht.length-1].range[1]]),Se=this.performAction.apply(Ye,[st,kt,Tt,Ut.yy,ne[1],rt,ht].concat(Nt)),typeof Se<"u")return Se;ee&&(ft=ft.slice(0,-1*ee*2),rt=rt.slice(0,-1*ee),ht=ht.slice(0,-1*ee)),ft.push(this.productions_[ne[1]][0]),rt.push(Ye.$),ht.push(Ye._$),pe=nt[ft[ft.length-2]][ft[ft.length-1]],ft.push(pe);break;case 3:return!0}}return!0},"parse")},Vt=function(){var _t={EOF:1,parseError:o(function(Y,ft){if(this.yy.parser)this.yy.parser.parseError(Y,ft);else throw new Error(Y)},"parseError"),setInput:o(function(dt,Y){return this.yy=Y||this.yy||{},this._input=dt,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 dt=this._input[0];this.yytext+=dt,this.yyleng++,this.offset++,this.match+=dt,this.matched+=dt;var Y=dt.match(/(?:\r\n?|\n).*/g);return Y?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),dt},"input"),unput:o(function(dt){var Y=dt.length,ft=dt.split(/(?:\r\n?|\n)/g);this._input=dt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Y),this.offset-=Y;var mt=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),ft.length-1&&(this.yylineno-=ft.length-1);var rt=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:ft?(ft.length===mt.length?this.yylloc.first_column:0)+mt[mt.length-ft.length].length-ft[0].length:this.yylloc.first_column-Y},this.options.ranges&&(this.yylloc.range=[rt[0],rt[0]+this.yyleng-Y]),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(dt){this.unput(this.match.slice(dt))},"less"),pastInput:o(function(){var dt=this.matched.substr(0,this.matched.length-this.match.length);return(dt.length>20?"...":"")+dt.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var dt=this.match;return dt.length<20&&(dt+=this._input.substr(0,20-dt.length)),(dt.substr(0,20)+(dt.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var dt=this.pastInput(),Y=new Array(dt.length+1).join("-");return dt+this.upcomingInput()+` +`+Y+"^"},"showPosition"),test_match:o(function(dt,Y){var ft,mt,rt;if(this.options.backtrack_lexer&&(rt={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&&(rt.yylloc.range=this.yylloc.range.slice(0))),mt=dt[0].match(/(?:\r\n?|\n).*/g),mt&&(this.yylineno+=mt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:mt?mt[mt.length-1].length-mt[mt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+dt[0].length},this.yytext+=dt[0],this.match+=dt[0],this.matches=dt,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(dt[0].length),this.matched+=dt[0],ft=this.performAction.call(this,this.yy,this,Y,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ft)return ft;if(this._backtrack){for(var ht in rt)this[ht]=rt[ht];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var dt,Y,ft,mt;this._more||(this.yytext="",this.match="");for(var rt=this._currentRules(),ht=0;htY[0].length)){if(Y=ft,mt=ht,this.options.backtrack_lexer){if(dt=this.test_match(ft,rt[ht]),dt!==!1)return dt;if(this._backtrack){Y=!1;continue}else return!1}else if(!this.options.flex)break}return Y?(dt=this.test_match(Y,rt[mt]),dt!==!1?dt:!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 Y=this.next();return Y||this.lex()},"lex"),begin:o(function(Y){this.conditionStack.push(Y)},"begin"),popState:o(function(){var Y=this.conditionStack.length-1;return Y>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(Y){return Y=this.conditionStack.length-1-Math.abs(Y||0),Y>=0?this.conditionStack[Y]:"INITIAL"},"topState"),pushState:o(function(Y){this.begin(Y)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Y,ft,mt,rt){var ht=rt;switch(mt){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 _t}();St.lexer=Vt;function Pt(){this.yy={}}return o(Pt,"Parser"),Pt.prototype=St,St.Parser=Pt,new Pt}();ty.parser=ty;t$=ty});var DS,Vn,yp=R(()=>{"use strict";DS=o((e,t,{depth:r=2,clobber:n=!1}={})=>{let i={depth:r,clobber:n};return Array.isArray(t)&&!Array.isArray(e)?(t.forEach(a=>DS(e,a,i)),e):Array.isArray(t)&&Array.isArray(e)?(t.forEach(a=>{e.includes(a)||e.push(a)}),e):e===void 0||r<=0?e!=null&&typeof e=="object"&&typeof t=="object"?Object.assign(e,t):t:(t!==void 0&&typeof e=="object"&&typeof t=="object"&&Object.keys(t).forEach(a=>{typeof t[a]=="object"&&(e[a]===void 0||typeof e[a]=="object")?(e[a]===void 0&&(e[a]=Array.isArray(t[a])?[]:{}),e[a]=DS(e[a],t[a],{depth:r-1,clobber:n})):(n||typeof e[a]!="object"&&typeof t[a]!="object")&&(e[a]=t[a])}),e)},"assignWithDepth"),Vn=DS});var u4,e$,r$=R(()=>{"use strict";u4={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(e=>e>=255?255:e<0?0:e,"r"),g:o(e=>e>=255?255:e<0?0:e,"g"),b:o(e=>e>=255?255:e<0?0:e,"b"),h:o(e=>e%360,"h"),s:o(e=>e>=100?100:e<0?0:e,"s"),l:o(e=>e>=100?100:e<0?0:e,"l"),a:o(e=>e>=1?1:e<0?0:e,"a")},toLinear:o(e=>{let t=e/255;return e>.03928?Math.pow((t+.055)/1.055,2.4):t/12.92},"toLinear"),hue2rgb:o((e,t,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<.16666666666666666?e+(t-e)*6*r:r<.5?t:r<.6666666666666666?e+(t-e)*(.6666666666666666-r)*6:e),"hue2rgb"),hsl2rgb:o(({h:e,s:t,l:r},n)=>{if(!t)return r*2.55;e/=360,t/=100,r/=100;let i=r<.5?r*(1+t):r+t-r*t,a=2*r-i;switch(n){case"r":return u4.hue2rgb(a,i,e+.3333333333333333)*255;case"g":return u4.hue2rgb(a,i,e)*255;case"b":return u4.hue2rgb(a,i,e-.3333333333333333)*255}},"hsl2rgb"),rgb2hsl:o(({r:e,g:t,b:r},n)=>{e/=255,t/=255,r/=255;let i=Math.max(e,t,r),a=Math.min(e,t,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 e:return((t-r)/l+(t{"use strict";Pxt={clamp:o((e,t,r)=>t>r?Math.min(t,Math.max(r,e)):Math.min(r,Math.max(t,e)),"clamp"),round:o(e=>Math.round(e*1e10)/1e10,"round")},n$=Pxt});var Bxt,a$,s$=R(()=>{"use strict";Bxt={dec2hex:o(e=>{let t=Math.round(e).toString(16);return t.length>1?t:`0${t}`},"dec2hex")},a$=Bxt});var Fxt,We,rc=R(()=>{"use strict";r$();i$();s$();Fxt={channel:e$,lang:n$,unit:a$},We=Fxt});var au,Mi,ey=R(()=>{"use strict";rc();au={};for(let e=0;e<=255;e++)au[e]=We.unit.dec2hex(e);Mi={ALL:0,RGB:1,HSL:2}});var RS,o$,l$=R(()=>{"use strict";ey();RS=class{static{o(this,"Type")}constructor(){this.type=Mi.ALL}get(){return this.type}set(t){if(this.type&&this.type!==t)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=t}reset(){this.type=Mi.ALL}is(t){return this.type===t}},o$=RS});var NS,c$,u$=R(()=>{"use strict";rc();l$();ey();NS=class{static{o(this,"Channels")}constructor(t,r){this.color=r,this.changed=!1,this.data=t,this.type=new o$}set(t,r){return this.color=r,this.changed=!1,this.data=t,this.type.type=Mi.ALL,this}_ensureHSL(){let t=this.data,{h:r,s:n,l:i}=t;r===void 0&&(t.h=We.channel.rgb2hsl(t,"h")),n===void 0&&(t.s=We.channel.rgb2hsl(t,"s")),i===void 0&&(t.l=We.channel.rgb2hsl(t,"l"))}_ensureRGB(){let t=this.data,{r,g:n,b:i}=t;r===void 0&&(t.r=We.channel.hsl2rgb(t,"r")),n===void 0&&(t.g=We.channel.hsl2rgb(t,"g")),i===void 0&&(t.b=We.channel.hsl2rgb(t,"b"))}get r(){let t=this.data,r=t.r;return!this.type.is(Mi.HSL)&&r!==void 0?r:(this._ensureHSL(),We.channel.hsl2rgb(t,"r"))}get g(){let t=this.data,r=t.g;return!this.type.is(Mi.HSL)&&r!==void 0?r:(this._ensureHSL(),We.channel.hsl2rgb(t,"g"))}get b(){let t=this.data,r=t.b;return!this.type.is(Mi.HSL)&&r!==void 0?r:(this._ensureHSL(),We.channel.hsl2rgb(t,"b"))}get h(){let t=this.data,r=t.h;return!this.type.is(Mi.RGB)&&r!==void 0?r:(this._ensureRGB(),We.channel.rgb2hsl(t,"h"))}get s(){let t=this.data,r=t.s;return!this.type.is(Mi.RGB)&&r!==void 0?r:(this._ensureRGB(),We.channel.rgb2hsl(t,"s"))}get l(){let t=this.data,r=t.l;return!this.type.is(Mi.RGB)&&r!==void 0?r:(this._ensureRGB(),We.channel.rgb2hsl(t,"l"))}get a(){return this.data.a}set r(t){this.type.set(Mi.RGB),this.changed=!0,this.data.r=t}set g(t){this.type.set(Mi.RGB),this.changed=!0,this.data.g=t}set b(t){this.type.set(Mi.RGB),this.changed=!0,this.data.b=t}set h(t){this.type.set(Mi.HSL),this.changed=!0,this.data.h=t}set s(t){this.type.set(Mi.HSL),this.changed=!0,this.data.s=t}set l(t){this.type.set(Mi.HSL),this.changed=!0,this.data.l=t}set a(t){this.changed=!0,this.data.a=t}},c$=NS});var zxt,lh,ry=R(()=>{"use strict";u$();zxt=new c$({r:0,g:0,b:0,a:0},"transparent"),lh=zxt});var h$,Kf,MS=R(()=>{"use strict";ry();ey();h$={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:o(e=>{if(e.charCodeAt(0)!==35)return;let t=e.match(h$.re);if(!t)return;let r=t[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 lh.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},e)},"parse"),stringify:o(e=>{let{r:t,g:r,b:n,a:i}=e;return i<1?`#${au[Math.round(t)]}${au[Math.round(r)]}${au[Math.round(n)]}${au[Math.round(i*255)]}`:`#${au[Math.round(t)]}${au[Math.round(r)]}${au[Math.round(n)]}`},"stringify")},Kf=h$});var h4,ny,f$=R(()=>{"use strict";rc();ry();h4={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(e=>{let t=e.match(h4.hueRe);if(t){let[,r,n]=t;switch(n){case"grad":return We.channel.clamp.h(parseFloat(r)*.9);case"rad":return We.channel.clamp.h(parseFloat(r)*180/Math.PI);case"turn":return We.channel.clamp.h(parseFloat(r)*360)}}return We.channel.clamp.h(parseFloat(e))},"_hue2deg"),parse:o(e=>{let t=e.charCodeAt(0);if(t!==104&&t!==72)return;let r=e.match(h4.re);if(!r)return;let[,n,i,a,s,l]=r;return lh.set({h:h4._hue2deg(n),s:We.channel.clamp.s(parseFloat(i)),l:We.channel.clamp.l(parseFloat(a)),a:s?We.channel.clamp.a(l?parseFloat(s)/100:parseFloat(s)):1},e)},"parse"),stringify:o(e=>{let{h:t,s:r,l:n,a:i}=e;return i<1?`hsla(${We.lang.round(t)}, ${We.lang.round(r)}%, ${We.lang.round(n)}%, ${i})`:`hsl(${We.lang.round(t)}, ${We.lang.round(r)}%, ${We.lang.round(n)}%)`},"stringify")},ny=h4});var f4,IS,d$=R(()=>{"use strict";MS();f4={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(e=>{e=e.toLowerCase();let t=f4.colors[e];if(t)return Kf.parse(t)},"parse"),stringify:o(e=>{let t=Kf.stringify(e);for(let r in f4.colors)if(f4.colors[r]===t)return r},"stringify")},IS=f4});var p$,iy,m$=R(()=>{"use strict";rc();ry();p$={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(e=>{let t=e.charCodeAt(0);if(t!==114&&t!==82)return;let r=e.match(p$.re);if(!r)return;let[,n,i,a,s,l,u,h,f]=r;return lh.set({r:We.channel.clamp.r(i?parseFloat(n)*2.55:parseFloat(n)),g:We.channel.clamp.g(s?parseFloat(a)*2.55:parseFloat(a)),b:We.channel.clamp.b(u?parseFloat(l)*2.55:parseFloat(l)),a:h?We.channel.clamp.a(f?parseFloat(h)/100:parseFloat(h)):1},e)},"parse"),stringify:o(e=>{let{r:t,g:r,b:n,a:i}=e;return i<1?`rgba(${We.lang.round(t)}, ${We.lang.round(r)}, ${We.lang.round(n)}, ${We.lang.round(i)})`:`rgb(${We.lang.round(t)}, ${We.lang.round(r)}, ${We.lang.round(n)})`},"stringify")},iy=p$});var $xt,Ii,su=R(()=>{"use strict";MS();f$();d$();m$();ey();$xt={format:{keyword:IS,hex:Kf,rgb:iy,rgba:iy,hsl:ny,hsla:ny},parse:o(e=>{if(typeof e!="string")return e;let t=Kf.parse(e)||iy.parse(e)||ny.parse(e)||IS.parse(e);if(t)return t;throw new Error(`Unsupported color format: "${e}"`)},"parse"),stringify:o(e=>!e.changed&&e.color?e.color:e.type.is(Mi.HSL)||e.data.r===void 0?ny.stringify(e):e.a<1||!Number.isInteger(e.r)||!Number.isInteger(e.g)||!Number.isInteger(e.b)?iy.stringify(e):Kf.stringify(e),"stringify")},Ii=$xt});var Gxt,d4,OS=R(()=>{"use strict";rc();su();Gxt=o((e,t)=>{let r=Ii.parse(e);for(let n in t)r[n]=We.channel.clamp[n](t[n]);return Ii.stringify(r)},"change"),d4=Gxt});var Vxt,Xs,PS=R(()=>{"use strict";rc();ry();su();OS();Vxt=o((e,t,r=0,n=1)=>{if(typeof e!="number")return d4(e,{a:t});let i=lh.set({r:We.channel.clamp.r(e),g:We.channel.clamp.g(t),b:We.channel.clamp.b(r),a:We.channel.clamp.a(n)});return Ii.stringify(i)},"rgba"),Xs=Vxt});var Uxt,ay,g$=R(()=>{"use strict";rc();su();Uxt=o((e,t)=>We.lang.round(Ii.parse(e)[t]),"channel"),ay=Uxt});var Hxt,y$,v$=R(()=>{"use strict";rc();su();Hxt=o(e=>{let{r:t,g:r,b:n}=Ii.parse(e),i=.2126*We.channel.toLinear(t)+.7152*We.channel.toLinear(r)+.0722*We.channel.toLinear(n);return We.lang.round(i)},"luminance"),y$=Hxt});var Wxt,x$,b$=R(()=>{"use strict";v$();Wxt=o(e=>y$(e)>=.5,"isLight"),x$=Wxt});var Yxt,Ka,w$=R(()=>{"use strict";b$();Yxt=o(e=>!x$(e),"isDark"),Ka=Yxt});var qxt,p4,BS=R(()=>{"use strict";rc();su();qxt=o((e,t,r)=>{let n=Ii.parse(e),i=n[t],a=We.channel.clamp[t](i+r);return i!==a&&(n[t]=a),Ii.stringify(n)},"adjustChannel"),p4=qxt});var Xxt,Re,T$=R(()=>{"use strict";BS();Xxt=o((e,t)=>p4(e,"l",t),"lighten"),Re=Xxt});var jxt,Pe,k$=R(()=>{"use strict";BS();jxt=o((e,t)=>p4(e,"l",-t),"darken"),Pe=jxt});var Kxt,It,E$=R(()=>{"use strict";su();OS();Kxt=o((e,t)=>{let r=Ii.parse(e),n={};for(let i in t)t[i]&&(n[i]=r[i]+t[i]);return d4(e,n)},"adjust"),It=Kxt});var Qxt,C$,S$=R(()=>{"use strict";su();PS();Qxt=o((e,t,r=50)=>{let{r:n,g:i,b:a,a:s}=Ii.parse(e),{r:l,g:u,b:h,a:f}=Ii.parse(t),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=s*d+f*(1-d);return Xs(x,b,w,S)},"mix"),C$=Qxt});var Zxt,ye,A$=R(()=>{"use strict";su();S$();Zxt=o((e,t=100)=>{let r=Ii.parse(e);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,C$(r,e,t)},"invert"),ye=Zxt});var _$=R(()=>{"use strict";PS();g$();w$();T$();k$();E$();A$()});var ul=R(()=>{"use strict";_$()});var ch,uh,sy=R(()=>{"use strict";ch="#ffffff",uh="#f2f2f2"});var ki,vp=R(()=>{"use strict";ul();ki=o((e,t)=>t?It(e,{s:-40,l:10}):It(e,{s:-40,l:-10}),"mkBorder")});var FS,D$,R$=R(()=>{"use strict";ul();sy();vp();FS=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||It(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||It(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||ki(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||ki(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||ki(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ye(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ye(this.tertiaryColor),this.lineColor=this.lineColor||ye(this.background),this.arrowheadColor=this.arrowheadColor||ye(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?Pe(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||Pe(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ye(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||Re(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||It(this.primaryColor,{h:30}),this.cScale4=this.cScale4||It(this.primaryColor,{h:60}),this.cScale5=this.cScale5||It(this.primaryColor,{h:90}),this.cScale6=this.cScale6||It(this.primaryColor,{h:120}),this.cScale7=this.cScale7||It(this.primaryColor,{h:150}),this.cScale8=this.cScale8||It(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||It(this.primaryColor,{h:270}),this.cScale10=this.cScale10||It(this.primaryColor,{h:300}),this.cScale11=this.cScale11||It(this.primaryColor,{h:330}),this.darkMode)for(let r=0;r{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},D$=o(e=>{let t=new FS;return t.calculate(e),t},"getThemeVariables")});var zS,N$,M$=R(()=>{"use strict";ul();vp();zS=class{static{o(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Re(this.primaryColor,16),this.tertiaryColor=It(this.primaryColor,{h:-160}),this.primaryBorderColor=ye(this.background),this.secondaryBorderColor=ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ki(this.tertiaryColor,this.darkMode),this.primaryTextColor=ye(this.primaryColor),this.secondaryTextColor=ye(this.secondaryColor),this.tertiaryTextColor=ye(this.tertiaryColor),this.lineColor=ye(this.background),this.textColor=ye(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Re(ye("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=Xs(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=Pe("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=Pe(this.sectionBkgColor,10),this.taskBorderColor=Xs(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=Xs(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=Re(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=Re(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=Re(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=It(this.primaryColor,{h:64}),this.fillType3=It(this.secondaryColor,{h:64}),this.fillType4=It(this.primaryColor,{h:-64}),this.fillType5=It(this.secondaryColor,{h:-64}),this.fillType6=It(this.primaryColor,{h:128}),this.fillType7=It(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||It(this.primaryColor,{h:30}),this.cScale4=this.cScale4||It(this.primaryColor,{h:60}),this.cScale5=this.cScale5||It(this.primaryColor,{h:90}),this.cScale6=this.cScale6||It(this.primaryColor,{h:120}),this.cScale7=this.cScale7||It(this.primaryColor,{h:150}),this.cScale8=this.cScale8||It(this.primaryColor,{h:210}),this.cScale9=this.cScale9||It(this.primaryColor,{h:270}),this.cScale10=this.cScale10||It(this.primaryColor,{h:300}),this.cScale11=this.cScale11||It(this.primaryColor,{h:330});for(let t=0;t{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},N$=o(e=>{let t=new zS;return t.calculate(e),t},"getThemeVariables")});var $S,xp,m4=R(()=>{"use strict";ul();vp();sy();$S=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=It(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=It(this.primaryColor,{h:-160}),this.primaryBorderColor=ki(this.primaryColor,this.darkMode),this.secondaryBorderColor=ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ki(this.tertiaryColor,this.darkMode),this.primaryTextColor=ye(this.primaryColor),this.secondaryTextColor=ye(this.secondaryColor),this.tertiaryTextColor=ye(this.tertiaryColor),this.lineColor=ye(this.background),this.textColor=ye(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=Xs(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||It(this.primaryColor,{h:30}),this.cScale4=this.cScale4||It(this.primaryColor,{h:60}),this.cScale5=this.cScale5||It(this.primaryColor,{h:90}),this.cScale6=this.cScale6||It(this.primaryColor,{h:120}),this.cScale7=this.cScale7||It(this.primaryColor,{h:150}),this.cScale8=this.cScale8||It(this.primaryColor,{h:210}),this.cScale9=this.cScale9||It(this.primaryColor,{h:270}),this.cScale10=this.cScale10||It(this.primaryColor,{h:300}),this.cScale11=this.cScale11||It(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Pe(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Pe(this.tertiaryColor,40);for(let t=0;t{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},xp=o(e=>{let t=new $S;return t.calculate(e),t},"getThemeVariables")});var GS,I$,O$=R(()=>{"use strict";ul();sy();vp();GS=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=Re("#cde498",10),this.primaryBorderColor=ki(this.primaryColor,this.darkMode),this.secondaryBorderColor=ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ki(this.tertiaryColor,this.darkMode),this.primaryTextColor=ye(this.primaryColor),this.secondaryTextColor=ye(this.secondaryColor),this.tertiaryTextColor=ye(this.primaryColor),this.lineColor=ye(this.background),this.textColor=ye(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=Pe(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||It(this.primaryColor,{h:30}),this.cScale4=this.cScale4||It(this.primaryColor,{h:60}),this.cScale5=this.cScale5||It(this.primaryColor,{h:90}),this.cScale6=this.cScale6||It(this.primaryColor,{h:120}),this.cScale7=this.cScale7||It(this.primaryColor,{h:150}),this.cScale8=this.cScale8||It(this.primaryColor,{h:210}),this.cScale9=this.cScale9||It(this.primaryColor,{h:270}),this.cScale10=this.cScale10||It(this.primaryColor,{h:300}),this.cScale11=this.cScale11||It(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Pe(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Pe(this.tertiaryColor,40);for(let t=0;t{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},I$=o(e=>{let t=new GS;return t.calculate(e),t},"getThemeVariables")});var VS,P$,B$=R(()=>{"use strict";ul();vp();sy();VS=class{static{o(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Re(this.contrast,55),this.background="#ffffff",this.tertiaryColor=It(this.primaryColor,{h:-160}),this.primaryBorderColor=ki(this.primaryColor,this.darkMode),this.secondaryBorderColor=ki(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=ki(this.tertiaryColor,this.darkMode),this.primaryTextColor=ye(this.primaryColor),this.secondaryTextColor=ye(this.secondaryColor),this.tertiaryTextColor=ye(this.tertiaryColor),this.lineColor=ye(this.background),this.textColor=ye(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=Re(this.contrast,55),this.border2=this.contrast,this.actorBorder=Re(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let t=0;t{this[n]=t[n]}),this.updateColors(),r.forEach(n=>{this[n]=t[n]})}},P$=o(e=>{let t=new VS;return t.calculate(e),t},"getThemeVariables")});var _o,g4=R(()=>{"use strict";R$();M$();m4();O$();B$();_o={base:{getThemeVariables:D$},dark:{getThemeVariables:N$},default:{getThemeVariables:xp},forest:{getThemeVariables:I$},neutral:{getThemeVariables:P$}}});var ou,F$=R(()=>{"use strict";ou={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1}});var z$,$$,G$,Er,hl=R(()=>{"use strict";g4();F$();z$={...ou,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF"},themeCSS:void 0,themeVariables:_o.default.getThemeVariables(),sequence:{...ou.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")},gantt:{...ou.gantt,tickInterval:void 0,useWidth:void 0},c4:{...ou.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:{...ou.pie,useWidth:984},xyChart:{...ou.xyChart,useWidth:void 0},requirement:{...ou.requirement,useWidth:void 0},packet:{...ou.packet}},$$=o((e,t="")=>Object.keys(e).reduce((r,n)=>Array.isArray(e[n])?r:typeof e[n]=="object"&&e[n]!==null?[...r,t+n,...$$(e[n],"")]:[...r,t+n],[]),"keyify"),G$=new Set($$(z$,"")),Er=z$});var bp,Jxt,US=R(()=>{"use strict";hl();ce();bp=o(e=>{if(V.debug("sanitizeDirective called with",e),!(typeof e!="object"||e==null)){if(Array.isArray(e)){e.forEach(t=>bp(t));return}for(let t of Object.keys(e)){if(V.debug("Checking key",t),t.startsWith("__")||t.includes("proto")||t.includes("constr")||!G$.has(t)||e[t]==null){V.debug("sanitize deleting key: ",t),delete e[t];continue}if(typeof e[t]=="object"){V.debug("sanitizing object",t),bp(e[t]);continue}let r=["themeCSS","fontFamily","altFontFamily"];for(let n of r)t.includes(n)&&(V.debug("sanitizing css option",t),e[t]=Jxt(e[t]))}if(e.themeVariables)for(let t of Object.keys(e.themeVariables)){let r=e.themeVariables[t];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(e.themeVariables[t]="")}V.debug("After sanitization",e)}},"sanitizeDirective"),Jxt=o(e=>{let t=0,r=0;for(let n of e){if(t{"use strict";yp();ce();g4();hl();US();hh=Object.freeze(Er),gs=Vn({},hh),wp=[],oy=Vn({},hh),y4=o((e,t)=>{let r=Vn({},e),n={};for(let i of t)Y$(i),n=Vn(n,i);if(r=Vn(r,n),n.theme&&n.theme in _o){let i=Vn({},U$),a=Vn(i.themeVariables||{},n.themeVariables);r.theme&&r.theme in _o&&(r.themeVariables=_o[r.theme].getThemeVariables(a))}return oy=r,X$(oy),oy},"updateCurrentConfig"),HS=o(e=>(gs=Vn({},hh),gs=Vn(gs,e),e.theme&&_o[e.theme]&&(gs.themeVariables=_o[e.theme].getThemeVariables(e.themeVariables)),y4(gs,wp),gs),"setSiteConfig"),H$=o(e=>{U$=Vn({},e)},"saveConfigFromInitialize"),W$=o(e=>(gs=Vn(gs,e),y4(gs,wp),gs),"updateSiteConfig"),WS=o(()=>Vn({},gs),"getSiteConfig"),v4=o(e=>(X$(e),Vn(oy,e),Nr()),"setConfig"),Nr=o(()=>Vn({},oy),"getConfig"),Y$=o(e=>{e&&(["secure",...gs.secure??[]].forEach(t=>{Object.hasOwn(e,t)&&(V.debug(`Denied attempt to modify a secure key ${t}`,e[t]),delete e[t])}),Object.keys(e).forEach(t=>{t.startsWith("__")&&delete e[t]}),Object.keys(e).forEach(t=>{typeof e[t]=="string"&&(e[t].includes("<")||e[t].includes(">")||e[t].includes("url(data:"))&&delete e[t],typeof e[t]=="object"&&Y$(e[t])}))},"sanitize"),q$=o(e=>{bp(e),e.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables={...e.themeVariables,fontFamily:e.fontFamily}),wp.push(e),y4(gs,wp)},"addDirective"),ly=o((e=gs)=>{wp=[],y4(e,wp)},"reset"),tbt={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},V$={},ebt=o(e=>{V$[e]||(V.warn(tbt[e]),V$[e]=!0)},"issueWarning"),X$=o(e=>{e&&(e.lazyLoadedDiagrams||e.loadExternalDiagramsAtStartup)&&ebt("LAZY_LOAD_DEPRECATED")},"checkConfig")});var XS=Ti((YS,qS)=>{"use strict";(function(e,t){typeof YS=="object"&&typeof qS<"u"?qS.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.DOMPurify=t())})(YS,function(){"use strict";let{entries:e,setPrototypeOf:t,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(St){return St},"freeze")),s||(s=o(function(St){return St},"seal")),u||(u=o(function(St,Vt,Pt){return St.apply(Vt,Pt)},"apply")),h||(h=o(function(St,Vt){return new St(...Vt)},"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),S=E(RegExp.prototype.test),T=_(TypeError);function E(Ot){return function(St){for(var Vt=arguments.length,Pt=new Array(Vt>1?Vt-1:0),_t=1;_t2&&arguments[2]!==void 0?arguments[2]:m;t&&t(Ot,null);let Pt=St.length;for(;Pt--;){let _t=St[Pt];if(typeof _t=="string"){let dt=Vt(_t);dt!==_t&&(r(St)||(St[Pt]=dt),_t=dt)}Ot[_t]=!0}return Ot}o(A,"addToSet");function L(Ot){for(let St=0;St/gm),at=s(/\${[\w\W]*}/gm),X=s(/^data-[\-\w.\u00B7-\uFFFF]/),J=s(/^aria-[\-\w]+$/),Z=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),K=s(/^html$/i),ot=s(/^[a-z][.\w]*(-[.\w]+)+$/i);var ct=Object.freeze({__proto__:null,MUSTACHE_EXPR:Q,ERB_EXPR:j,TMPLIT_EXPR:at,DATA_ATTR:X,ARIA_ATTR:J,IS_ALLOWED_URI:Z,IS_SCRIPT_OR_DATA:H,ATTR_WHITESPACE:q,DOCTYPE_NAME:K,CUSTOM_ELEMENT:ot});let ut={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},et=o(function(){return typeof window>"u"?null:window},"getGlobal"),Mt=o(function(St,Vt){if(typeof St!="object"||typeof St.createPolicy!="function")return null;let Pt=null,_t="data-tt-policy-suffix";Vt&&Vt.hasAttribute(_t)&&(Pt=Vt.getAttribute(_t));let dt="dompurify"+(Pt?"#"+Pt:"");try{return St.createPolicy(dt,{createHTML(Y){return Y},createScriptURL(Y){return Y}})}catch{return console.warn("TrustedTypes policy "+dt+" could not be created."),null}},"_createTrustedTypesPolicy");function it(){let Ot=arguments.length>0&&arguments[0]!==void 0?arguments[0]:et(),St=o(Xe=>it(Xe),"DOMPurify");if(St.version="3.1.6",St.removed=[],!Ot||!Ot.document||Ot.document.nodeType!==ut.document)return St.isSupported=!1,St;let{document:Vt}=Ot,Pt=Vt,_t=Pt.currentScript,{DocumentFragment:dt,HTMLTemplateElement:Y,Node:ft,Element:mt,NodeFilter:rt,NamedNodeMap:ht=Ot.NamedNodeMap||Ot.MozNamedAttrMap,HTMLFormElement:nt,DOMParser:st,trustedTypes:Tt}=Ot,kt=mt.prototype,Ct=N(kt,"cloneNode"),At=N(kt,"remove"),$t=N(kt,"nextSibling"),Nt=N(kt,"childNodes"),yt=N(kt,"parentNode");if(typeof Y=="function"){let Xe=Vt.createElement("template");Xe.content&&Xe.content.ownerDocument&&(Vt=Xe.content.ownerDocument)}let Ut,zt="",{implementation:ae,createNodeIterator:ke,createDocumentFragment:Ee,getElementsByTagName:le}=Vt,{importNode:Zt}=Pt,me={};St.isSupported=typeof e=="function"&&typeof yt=="function"&&ae&&ae.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:Ht,ERB_EXPR:ne,TMPLIT_EXPR:xe,DATA_ATTR:Se,ARIA_ATTR:Ye,IS_SCRIPT_OR_DATA:fe,ATTR_WHITESPACE:ee,CUSTOM_ELEMENT:pe}=ct,{IS_ALLOWED_URI:Me}=ct,oe=null,qe=A({},[...k,...I,...C,...D,...F]),Cr=null,En=A({},[...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,Ir=null,ii=!0,mn=!0,Pn=!1,Sr=!0,pi=!1,ps=!0,Bn=!1,Eo=!1,cl=!1,Fn=!1,wi=!1,Ae=!1,Ie=!0,we=!1,Wt="user-content-",Fe=!0,gt=!1,gn={},vt=null,qa=A({},["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=A({},["audio","video","img","source","image","track"]),q1=null,X1=A({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),lp="http://www.w3.org/1998/Math/MathML",jn="http://www.w3.org/2000/svg",ca="http://www.w3.org/1999/xhtml",Zl=ca,Vf=!1,j1=null,mz=A({},[lp,jn,ca],g),Uf=null,ua=["application/xhtml+xml","text/html"],K1="text/html",Cn=null,Ni=null,gz=Vt.createElement("form"),cp=o(function(Dt){return Dt instanceof RegExp||Dt instanceof Function},"isRegexOrFunction"),Jl=o(function(){let Dt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Ni&&Ni===Dt)){if((!Dt||typeof Dt!="object")&&(Dt={}),Dt=M(Dt),Uf=ua.indexOf(Dt.PARSER_MEDIA_TYPE)===-1?K1:Dt.PARSER_MEDIA_TYPE,Cn=Uf==="application/xhtml+xml"?g:m,oe=w(Dt,"ALLOWED_TAGS")?A({},Dt.ALLOWED_TAGS,Cn):qe,Cr=w(Dt,"ALLOWED_ATTR")?A({},Dt.ALLOWED_ATTR,Cn):En,j1=w(Dt,"ALLOWED_NAMESPACES")?A({},Dt.ALLOWED_NAMESPACES,g):mz,q1=w(Dt,"ADD_URI_SAFE_ATTR")?A(M(X1),Dt.ADD_URI_SAFE_ATTR,Cn):X1,W1=w(Dt,"ADD_DATA_URI_TAGS")?A(M(Y1),Dt.ADD_DATA_URI_TAGS,Cn):Y1,vt=w(Dt,"FORBID_CONTENTS")?A({},Dt.FORBID_CONTENTS,Cn):qa,ln=w(Dt,"FORBID_TAGS")?A({},Dt.FORBID_TAGS,Cn):{},Ir=w(Dt,"FORBID_ATTR")?A({},Dt.FORBID_ATTR,Cn):{},gn=w(Dt,"USE_PROFILES")?Dt.USE_PROFILES:!1,ii=Dt.ALLOW_ARIA_ATTR!==!1,mn=Dt.ALLOW_DATA_ATTR!==!1,Pn=Dt.ALLOW_UNKNOWN_PROTOCOLS||!1,Sr=Dt.ALLOW_SELF_CLOSE_IN_ATTR!==!1,pi=Dt.SAFE_FOR_TEMPLATES||!1,ps=Dt.SAFE_FOR_XML!==!1,Bn=Dt.WHOLE_DOCUMENT||!1,Fn=Dt.RETURN_DOM||!1,wi=Dt.RETURN_DOM_FRAGMENT||!1,Ae=Dt.RETURN_TRUSTED_TYPE||!1,cl=Dt.FORCE_BODY||!1,Ie=Dt.SANITIZE_DOM!==!1,we=Dt.SANITIZE_NAMED_PROPS||!1,Fe=Dt.KEEP_CONTENT!==!1,gt=Dt.IN_PLACE||!1,Me=Dt.ALLOWED_URI_REGEXP||Z,Zl=Dt.NAMESPACE||ca,or=Dt.CUSTOM_ELEMENT_HANDLING||{},Dt.CUSTOM_ELEMENT_HANDLING&&cp(Dt.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(or.tagNameCheck=Dt.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Dt.CUSTOM_ELEMENT_HANDLING&&cp(Dt.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(or.attributeNameCheck=Dt.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Dt.CUSTOM_ELEMENT_HANDLING&&typeof Dt.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(or.allowCustomizedBuiltInElements=Dt.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),pi&&(mn=!1),wi&&(Fn=!0),gn&&(oe=A({},F),Cr=[],gn.html===!0&&(A(oe,k),A(Cr,B)),gn.svg===!0&&(A(oe,I),A(Cr,G),A(Cr,W)),gn.svgFilters===!0&&(A(oe,C),A(Cr,G),A(Cr,W)),gn.mathMl===!0&&(A(oe,D),A(Cr,z),A(Cr,W))),Dt.ADD_TAGS&&(oe===qe&&(oe=M(oe)),A(oe,Dt.ADD_TAGS,Cn)),Dt.ADD_ATTR&&(Cr===En&&(Cr=M(Cr)),A(Cr,Dt.ADD_ATTR,Cn)),Dt.ADD_URI_SAFE_ATTR&&A(q1,Dt.ADD_URI_SAFE_ATTR,Cn),Dt.FORBID_CONTENTS&&(vt===qa&&(vt=M(vt)),A(vt,Dt.FORBID_CONTENTS,Cn)),Fe&&(oe["#text"]=!0),Bn&&A(oe,["html","head","body"]),oe.table&&(A(oe,["tbody"]),delete ln.tbody),Dt.TRUSTED_TYPES_POLICY){if(typeof Dt.TRUSTED_TYPES_POLICY.createHTML!="function")throw T('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Dt.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw T('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');Ut=Dt.TRUSTED_TYPES_POLICY,zt=Ut.createHTML("")}else Ut===void 0&&(Ut=Mt(Tt,_t)),Ut!==null&&typeof zt=="string"&&(zt=Ut.createHTML(""));a&&a(Dt),Ni=Dt}},"_parseConfig"),Hf=A({},["mi","mo","mn","ms","mtext"]),Co=A({},["foreignobject","annotation-xml"]),Kb=A({},["title","style","font","a","script"]),Wf=A({},[...I,...C,...O]),up=A({},[...D,...P]),Xa=o(function(Dt){let ge=yt(Dt);(!ge||!ge.tagName)&&(ge={namespaceURI:Zl,tagName:"template"});let ze=m(Dt.tagName),Sn=m(ge.tagName);return j1[Dt.namespaceURI]?Dt.namespaceURI===jn?ge.namespaceURI===ca?ze==="svg":ge.namespaceURI===lp?ze==="svg"&&(Sn==="annotation-xml"||Hf[Sn]):!!Wf[ze]:Dt.namespaceURI===lp?ge.namespaceURI===ca?ze==="math":ge.namespaceURI===jn?ze==="math"&&Co[Sn]:!!up[ze]:Dt.namespaceURI===ca?ge.namespaceURI===jn&&!Co[Sn]||ge.namespaceURI===lp&&!Hf[Sn]?!1:!up[ze]&&(Kb[ze]||!Wf[ze]):!!(Uf==="application/xhtml+xml"&&j1[Dt.namespaceURI]):!1},"_checkValidNamespace"),tc=o(function(Dt){p(St.removed,{element:Dt});try{yt(Dt).removeChild(Dt)}catch{At(Dt)}},"_forceRemove"),Qb=o(function(Dt,ge){try{p(St.removed,{attribute:ge.getAttributeNode(Dt),from:ge})}catch{p(St.removed,{attribute:null,from:ge})}if(ge.removeAttribute(Dt),Dt==="is"&&!Cr[Dt])if(Fn||wi)try{tc(ge)}catch{}else try{ge.setAttribute(Dt,"")}catch{}},"_removeAttribute"),yz=o(function(Dt){let ge=null,ze=null;if(cl)Dt=""+Dt;else{let ha=y(Dt,/^[\r\n\t ]+/);ze=ha&&ha[0]}Uf==="application/xhtml+xml"&&Zl===ca&&(Dt=''+Dt+"");let Sn=Ut?Ut.createHTML(Dt):Dt;if(Zl===ca)try{ge=new st().parseFromString(Sn,Uf)}catch{}if(!ge||!ge.documentElement){ge=ae.createDocument(Zl,"template",null);try{ge.documentElement.innerHTML=Vf?zt:Sn}catch{}}let Na=ge.body||ge.documentElement;return Dt&&ze&&Na.insertBefore(Vt.createTextNode(ze),Na.childNodes[0]||null),Zl===ca?le.call(ge,Bn?"html":"body")[0]:Bn?ge.documentElement:Na},"_initDocument"),vz=o(function(Dt){return ke.call(Dt.ownerDocument||Dt,Dt,rt.SHOW_ELEMENT|rt.SHOW_COMMENT|rt.SHOW_TEXT|rt.SHOW_PROCESSING_INSTRUCTION|rt.SHOW_CDATA_SECTION,null)},"_createNodeIterator"),xz=o(function(Dt){return Dt instanceof nt&&(typeof Dt.nodeName!="string"||typeof Dt.textContent!="string"||typeof Dt.removeChild!="function"||!(Dt.attributes instanceof ht)||typeof Dt.removeAttribute!="function"||typeof Dt.setAttribute!="function"||typeof Dt.namespaceURI!="string"||typeof Dt.insertBefore!="function"||typeof Dt.hasChildNodes!="function")},"_isClobbered"),bz=o(function(Dt){return typeof ft=="function"&&Dt instanceof ft},"_isNode"),ru=o(function(Dt,ge,ze){me[Dt]&&f(me[Dt],Sn=>{Sn.call(St,ge,ze,Ni)})},"_executeHook"),wz=o(function(Dt){let ge=null;if(ru("beforeSanitizeElements",Dt,null),xz(Dt))return tc(Dt),!0;let ze=Cn(Dt.nodeName);if(ru("uponSanitizeElement",Dt,{tagName:ze,allowedTags:oe}),Dt.hasChildNodes()&&!bz(Dt.firstElementChild)&&S(/<[/\w]/g,Dt.innerHTML)&&S(/<[/\w]/g,Dt.textContent)||Dt.nodeType===ut.progressingInstruction||ps&&Dt.nodeType===ut.comment&&S(/<[/\w]/g,Dt.data))return tc(Dt),!0;if(!oe[ze]||ln[ze]){if(!ln[ze]&&kz(ze)&&(or.tagNameCheck instanceof RegExp&&S(or.tagNameCheck,ze)||or.tagNameCheck instanceof Function&&or.tagNameCheck(ze)))return!1;if(Fe&&!vt[ze]){let Sn=yt(Dt)||Dt.parentNode,Na=Nt(Dt)||Dt.childNodes;if(Na&&Sn){let ha=Na.length;for(let ms=ha-1;ms>=0;--ms){let ec=Ct(Na[ms],!0);ec.__removalCount=(Dt.__removalCount||0)+1,Sn.insertBefore(ec,$t(Dt))}}}return tc(Dt),!0}return Dt instanceof mt&&!Xa(Dt)||(ze==="noscript"||ze==="noembed"||ze==="noframes")&&S(/<\/no(script|embed|frames)/i,Dt.innerHTML)?(tc(Dt),!0):(pi&&Dt.nodeType===ut.text&&(ge=Dt.textContent,f([Ht,ne,xe],Sn=>{ge=v(ge,Sn," ")}),Dt.textContent!==ge&&(p(St.removed,{element:Dt.cloneNode()}),Dt.textContent=ge)),ru("afterSanitizeElements",Dt,null),!1)},"_sanitizeElements"),Tz=o(function(Dt,ge,ze){if(Ie&&(ge==="id"||ge==="name")&&(ze in Vt||ze in gz))return!1;if(!(mn&&!Ir[ge]&&S(Se,ge))){if(!(ii&&S(Ye,ge))){if(!Cr[ge]||Ir[ge]){if(!(kz(Dt)&&(or.tagNameCheck instanceof RegExp&&S(or.tagNameCheck,Dt)||or.tagNameCheck instanceof Function&&or.tagNameCheck(Dt))&&(or.attributeNameCheck instanceof RegExp&&S(or.attributeNameCheck,ge)||or.attributeNameCheck instanceof Function&&or.attributeNameCheck(ge))||ge==="is"&&or.allowCustomizedBuiltInElements&&(or.tagNameCheck instanceof RegExp&&S(or.tagNameCheck,ze)||or.tagNameCheck instanceof Function&&or.tagNameCheck(ze))))return!1}else if(!q1[ge]){if(!S(Me,v(ze,ee,""))){if(!((ge==="src"||ge==="xlink:href"||ge==="href")&&Dt!=="script"&&x(ze,"data:")===0&&W1[Dt])){if(!(Pn&&!S(fe,v(ze,ee,"")))){if(ze)return!1}}}}}}return!0},"_isValidAttribute"),kz=o(function(Dt){return Dt!=="annotation-xml"&&y(Dt,pe)},"_isBasicCustomElement"),Ez=o(function(Dt){ru("beforeSanitizeAttributes",Dt,null);let{attributes:ge}=Dt;if(!ge)return;let ze={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Cr},Sn=ge.length;for(;Sn--;){let Na=ge[Sn],{name:ha,namespaceURI:ms,value:ec}=Na,Q1=Cn(ha),ja=ha==="value"?ec:b(ec);if(ze.attrName=Q1,ze.attrValue=ja,ze.keepAttr=!0,ze.forceKeepAttr=void 0,ru("uponSanitizeAttribute",Dt,ze),ja=ze.attrValue,ps&&S(/((--!?|])>)|<\/(style|title)/i,ja)){Qb(ha,Dt);continue}if(ze.forceKeepAttr||(Qb(ha,Dt),!ze.keepAttr))continue;if(!Sr&&S(/\/>/i,ja)){Qb(ha,Dt);continue}pi&&f([Ht,ne,xe],Sz=>{ja=v(ja,Sz," ")});let Cz=Cn(Dt.nodeName);if(Tz(Cz,Q1,ja)){if(we&&(Q1==="id"||Q1==="name")&&(Qb(ha,Dt),ja=Wt+ja),Ut&&typeof Tt=="object"&&typeof Tt.getAttributeType=="function"&&!ms)switch(Tt.getAttributeType(Cz,Q1)){case"TrustedHTML":{ja=Ut.createHTML(ja);break}case"TrustedScriptURL":{ja=Ut.createScriptURL(ja);break}}try{ms?Dt.setAttributeNS(ms,ha,ja):Dt.setAttribute(ha,ja),xz(Dt)?tc(Dt):d(St.removed)}catch{}}}ru("afterSanitizeAttributes",Dt,null)},"_sanitizeAttributes"),sxt=o(function Xe(Dt){let ge=null,ze=vz(Dt);for(ru("beforeSanitizeShadowDOM",Dt,null);ge=ze.nextNode();)ru("uponSanitizeShadowNode",ge,null),!wz(ge)&&(ge.content instanceof dt&&Xe(ge.content),Ez(ge));ru("afterSanitizeShadowDOM",Dt,null)},"_sanitizeShadowDOM");return St.sanitize=function(Xe){let Dt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ge=null,ze=null,Sn=null,Na=null;if(Vf=!Xe,Vf&&(Xe=""),typeof Xe!="string"&&!bz(Xe))if(typeof Xe.toString=="function"){if(Xe=Xe.toString(),typeof Xe!="string")throw T("dirty is not a string, aborting")}else throw T("toString is not a function");if(!St.isSupported)return Xe;if(Eo||Jl(Dt),St.removed=[],typeof Xe=="string"&&(gt=!1),gt){if(Xe.nodeName){let ec=Cn(Xe.nodeName);if(!oe[ec]||ln[ec])throw T("root node is forbidden and cannot be sanitized in-place")}}else if(Xe instanceof ft)ge=yz(""),ze=ge.ownerDocument.importNode(Xe,!0),ze.nodeType===ut.element&&ze.nodeName==="BODY"||ze.nodeName==="HTML"?ge=ze:ge.appendChild(ze);else{if(!Fn&&!pi&&!Bn&&Xe.indexOf("<")===-1)return Ut&&Ae?Ut.createHTML(Xe):Xe;if(ge=yz(Xe),!ge)return Fn?null:Ae?zt:""}ge&&cl&&tc(ge.firstChild);let ha=vz(gt?Xe:ge);for(;Sn=ha.nextNode();)wz(Sn)||(Sn.content instanceof dt&&sxt(Sn.content),Ez(Sn));if(gt)return Xe;if(Fn){if(wi)for(Na=Ee.call(ge.ownerDocument);ge.firstChild;)Na.appendChild(ge.firstChild);else Na=ge;return(Cr.shadowroot||Cr.shadowrootmode)&&(Na=Zt.call(Pt,Na,!0)),Na}let ms=Bn?ge.outerHTML:ge.innerHTML;return Bn&&oe["!doctype"]&&ge.ownerDocument&&ge.ownerDocument.doctype&&ge.ownerDocument.doctype.name&&S(K,ge.ownerDocument.doctype.name)&&(ms=" +`+ms),pi&&f([Ht,ne,xe],ec=>{ms=v(ms,ec," ")}),Ut&&Ae?Ut.createHTML(ms):ms},St.setConfig=function(){let Xe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Jl(Xe),Eo=!0},St.clearConfig=function(){Ni=null,Eo=!1},St.isValidAttribute=function(Xe,Dt,ge){Ni||Jl({});let ze=Cn(Xe),Sn=Cn(Dt);return Tz(ze,Sn,ge)},St.addHook=function(Xe,Dt){typeof Dt=="function"&&(me[Xe]=me[Xe]||[],p(me[Xe],Dt))},St.removeHook=function(Xe){if(me[Xe])return d(me[Xe])},St.removeHooks=function(Xe){me[Xe]&&(me[Xe]=[])},St.removeAllHooks=function(){me={}},St}o(it,"createDOMPurify");var wt=it();return wt})});var wV={};xr(wV,{default:()=>j4t});function lbt(e){return String(e).replace(obt,t=>sbt[t])}function fbt(e){if(e.default)return e.default;var t=e.type,r=Array.isArray(t)?t[0]:t;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 xbt(e){for(var t=0;t=i[0]&&e<=i[1])return r.name}return null}function AG(e){for(var t=0;t=R4[t]&&e<=R4[t+1])return!0;return!1}function Dbt(e,t){ac[e]=t}function b7(e,t,r){if(!ac[t])throw new Error("Font metrics not found for font: "+t+".");var n=e.charCodeAt(0),i=ac[t][n];if(!i&&e[0]in K$&&(n=K$[e[0]].charCodeAt(0),i=ac[t][n]),!i&&r==="text"&&AG(n)&&(i=ac[t][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function Rbt(e){var t;if(e>=5?t=0:e>=3?t=1:t=2,!jS[t]){var r=jS[t]={cssEmPerMu:x4.quad[t]/18};for(var n in x4)x4.hasOwnProperty(n)&&(r[n]=x4[n][t])}return jS[t]}function J$(e){if(e instanceof xs)return e;throw new Error("Expected symbolNode but got "+String(e)+".")}function Obt(e){if(e instanceof td)return e;throw new Error("Expected span but got "+String(e)+".")}function $(e,t,r,n,i,a){An[e][i]={font:t,group:r,replace:n},a&&n&&(An[e][n]=An[e][i])}function Ce(e){for(var{type:t,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=e,l={type:t,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(S4(s,t)),s=[]),a.push(n[l]));s.length>0&&a.push(S4(s,t));var h;r?(h=S4(Oi(r,t,!0)),h.classes=["tag"],a.push(h)):i&&a.push(i);var f=fu(["katex-html"],a);if(f.setAttribute("aria-hidden","true"),h){var d=h.children[0];d.style.height=ve(f.height+f.depth),f.depth&&(d.style.verticalAlign=ve(-f.depth))}return f}function zG(e){return new Jf(e)}function iG(e,t,r,n,i){var a=bs(e,r),s;a.length===1&&a[0]instanceof vs&&tr.contains(["mrow","mtable"],a[0].type)?s=a[0]:s=new se.MathNode("mrow",a);var l=new se.MathNode("annotation",[new se.TextNode(t)]);l.setAttribute("encoding","application/x-tex");var u=new se.MathNode("semantics",[s,l]),h=new se.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 Bt.makeSpan([f],[h])}function mr(e,t){if(!e||e.type!==t)throw new Error("Expected node of type "+t+", but got "+(e?"node of type "+e.type:String(e)));return e}function E7(e){var t=V4(e);if(!t)throw new Error("Expected node of symbol group type, but got "+(e?"node of type "+e.type:String(e)));return t}function V4(e){return e&&(e.type==="atom"||Bbt.hasOwnProperty(e.type))?e:null}function UG(e,t){var r=Oi(e.body,t,!0);return d4t([e.mclass],r,t)}function HG(e,t){var r,n=bs(e.body,t);return e.mclass==="minner"?r=new se.MathNode("mpadded",n):e.mclass==="mord"?e.isCharacterBox?(r=n[0],r.type="mi"):r=new se.MathNode("mi",n):(e.isCharacterBox?(r=n[0],r.type="mo"):r=new se.MathNode("mo",n),e.mclass==="mbin"?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):e.mclass==="mpunct"?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):e.mclass==="mopen"||e.mclass==="mclose"?(r.attributes.lspace="0em",r.attributes.rspace="0em"):e.mclass==="minner"&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}function g4t(e,t,r){var n=p4t[e];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[t[0]],[t[1]]);case"\\uparrow":case"\\downarrow":{var i=r.callFunction("\\\\cdleft",[t[0]],[]),a={type:"atom",text:n,mode:"math",family:"rel"},s=r.callFunction("\\Big",[a],[]),l=r.callFunction("\\\\cdright",[t[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 y4t(e){var t=[];for(e.gullet.beginGroup(),e.gullet.macros.set("\\cr","\\\\\\relax"),e.gullet.beginGroup();;){t.push(e.parseExpression(!1,"\\\\")),e.gullet.endGroup(),e.gullet.beginGroup();var r=e.fetch().text;if(r==="&"||r==="\\\\")e.consume();else if(r==="\\end"){t[t.length-1].length===0&&t.pop();break}else throw new ue("Expected \\\\ or \\cr or \\end",e.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=g4t(h,f,e),y={type:"styling",body:[g],mode:"math",style:"display"};n.push(y),l=aG()}a%2===0?n.push(l):n.shift(),n=[],i.push(n)}e.gullet.endGroup(),e.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 H4(e,t){var r=V4(e);if(r&&tr.contains(D4t,r.text))return r;throw r?new ue("Invalid delimiter '"+r.text+"' after '"+t.funcName+"'",e):new ue("Invalid delimiter type '"+e.type+"'",e)}function lG(e){if(!e.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}function oc(e){for(var{type:t,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=e,l={type:t,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i},u=0;u1||!f)&&y.pop(),x.length{"use strict";Ks=class e{static{o(this,"SourceLocation")}constructor(t,r,n){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=t,this.start=r,this.end=n}static range(t,r){return r?!t||!t.loc||!r.loc||t.loc.lexer!==r.loc.lexer?null:new e(t.loc.lexer,t.loc.start,r.loc.end):t&&t.loc}},Do=class e{static{o(this,"Token")}constructor(t,r){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=t,this.loc=r}range(t,r){return new e(r,Ks.range(this,t))}},ue=class e{static{o(this,"ParseError")}constructor(t,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n="KaTeX parse error: "+t,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":">","<":"<",'"':""","'":"'"},obt=/[&><"']/g;o(lbt,"escape");SG=o(function e(t){return t.type==="ordgroup"||t.type==="color"?t.body.length===1?e(t.body[0]):t:t.type==="font"?e(t.body):t},"getBaseElem"),cbt=o(function(t){var r=SG(t);return r.type==="mathord"||r.type==="textord"||r.type==="atom"},"isCharacterBox"),ubt=o(function(t){if(!t)throw new Error("Expected non-null, but got "+String(t));return t},"assert"),hbt=o(function(t){var r=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(t);return r?r[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(r[1])?null:r[1].toLowerCase():"_relative"},"protocolFromUrl"),tr={contains:rbt,deflt:nbt,escape:lbt,hyphenate:abt,getBaseElem:SG,isCharacterBox:cbt,protocolFromUrl:hbt},D4={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(e=>"#"+e,"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((e,t)=>(t.push(e),t),"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(e=>Math.max(0,e),"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(e=>Math.max(0,e),"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(e=>Math.max(0,e),"processor"),cli:"-e, --max-expand ",cliProcessor:o(e=>e==="Infinity"?1/0:parseInt(e),"cliProcessor")},globalGroup:{type:"boolean",cli:!1}};o(fbt,"getDefaultValue");dy=class{static{o(this,"Settings")}constructor(t){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,t=t||{};for(var r in D4)if(D4.hasOwnProperty(r)){var n=D4[r];this[r]=t[r]!==void 0?n.processor?n.processor(t[r]):t[r]:fbt(n)}}reportNonstrict(t,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(t,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new ue("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+t+"]"),n);i==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+t+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+t+"]"))}}useStrictBehavior(t,r,n){var i=this.strict;if(typeof i=="function")try{i=i(t,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+" ["+t+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+t+"]")),!1)}isTrusted(t){if(t.url&&!t.protocol){var r=tr.protocolFromUrl(t.url);if(r==null)return!1;t.protocol=r}var n=typeof this.trust=="function"?this.trust(t):this.trust;return!!n}},nc=class{static{o(this,"Style")}constructor(t,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=t,this.size=r,this.cramped=n}sup(){return ic[dbt[this.id]]}sub(){return ic[pbt[this.id]]}fracNum(){return ic[mbt[this.id]]}fracDen(){return ic[gbt[this.id]]}cramp(){return ic[ybt[this.id]]}text(){return ic[vbt[this.id]]}isTight(){return this.size>=2}},x7=0,N4=1,Ep=2,uu=3,py=4,Lo=5,Cp=6,Qa=7,ic=[new nc(x7,0,!1),new nc(N4,0,!0),new nc(Ep,1,!1),new nc(uu,1,!0),new nc(py,2,!1),new nc(Lo,2,!0),new nc(Cp,3,!1),new nc(Qa,3,!0)],dbt=[py,Lo,py,Lo,Cp,Qa,Cp,Qa],pbt=[Lo,Lo,Lo,Lo,Qa,Qa,Qa,Qa],mbt=[Ep,uu,py,Lo,Cp,Qa,Cp,Qa],gbt=[uu,uu,Lo,Lo,Qa,Qa,Qa,Qa],ybt=[N4,N4,uu,uu,Lo,Lo,Qa,Qa],vbt=[x7,N4,Ep,uu,Ep,uu,Ep,uu],rr={DISPLAY:ic[x7],TEXT:ic[Ep],SCRIPT:ic[py],SCRIPTSCRIPT:ic[Cp]},o7=[{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(xbt,"scriptFromCodepoint");R4=[];o7.forEach(e=>e.blocks.forEach(t=>R4.push(...t)));o(AG,"supportedCodepoint");kp=80,bbt=o(function(t,r){return"M95,"+(622+t+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`+t/2.075+" -"+t+` +c5.3,-9.3,12,-14,20,-14 +H400000v`+(40+t)+`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+t)+" "+r+"h400000v"+(40+t)+"h-400000z"},"sqrtMain"),wbt=o(function(t,r){return"M263,"+(601+t+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`+t/2.084+" -"+t+` +c4.7,-7.3,11,-11,19,-11 +H40000v`+(40+t)+`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+t)+" "+r+"h400000v"+(40+t)+"h-400000z"},"sqrtSize1"),Tbt=o(function(t,r){return"M983 "+(10+t+r)+` +l`+t/3.13+" -"+t+` +c4,-6.7,10,-10,18,-10 H400000v`+(40+t)+` +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+t)+" "+r+"h400000v"+(40+t)+"h-400000z"},"sqrtSize2"),kbt=o(function(t,r){return"M424,"+(2398+t+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`+t/4.223+" -"+t+`c4,-6.7,10,-10,18,-10 H400000 +v`+(40+t)+`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+t)+" "+r+` +h400000v`+(40+t)+"h-400000z"},"sqrtSize3"),Ebt=o(function(t,r){return"M473,"+(2713+t+r)+` +c339.3,-1799.3,509.3,-2700,510,-2702 l`+t/5.298+" -"+t+` +c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+t)+`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+t)+" "+r+"h400000v"+(40+t)+"H1017.7z"},"sqrtSize4"),Cbt=o(function(t){var r=t/2;return"M400000 "+t+" H0 L"+r+" 0 l65 45 L145 "+(t-80)+" H400000z"},"phasePath"),Sbt=o(function(t,r,n){var i=n-54-r-t;return"M702 "+(t+r)+"H400000"+(40+t)+` +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+t)+"H742z"},"sqrtTall"),Abt=o(function(t,r,n){r=1e3*r;var i="";switch(t){case"sqrtMain":i=bbt(r,kp);break;case"sqrtSize1":i=wbt(r,kp);break;case"sqrtSize2":i=Tbt(r,kp);break;case"sqrtSize3":i=kbt(r,kp);break;case"sqrtSize4":i=Ebt(r,kp);break;case"sqrtTall":i=Sbt(r,kp,n)}return i},"sqrtPath"),_bt=o(function(t,r){switch(t){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"),j$={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`},Lbt=o(function(t,r){switch(t){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"),Jf=class{static{o(this,"DocumentFragment")}constructor(t){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=t,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(t){return tr.contains(this.classes,t)}toNode(){for(var t=document.createDocumentFragment(),r=0;rr.toText(),"toText");return this.children.map(t).join("")}},ac={"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]}},x4={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]},K$={\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(Dbt,"setFontMetrics");o(b7,"getCharacterMetrics");jS={};o(Rbt,"getGlobalMetrics");Nbt=[[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]],Q$=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],Z$=o(function(t,r){return r.size<2?t:Nbt[t-1][r.size-1]},"sizeAtStyle"),M4=class e{static{o(this,"Options")}constructor(t){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=t.style,this.color=t.color,this.size=t.size||e.BASESIZE,this.textSize=t.textSize||this.size,this.phantom=!!t.phantom,this.font=t.font||"",this.fontFamily=t.fontFamily||"",this.fontWeight=t.fontWeight||"",this.fontShape=t.fontShape||"",this.sizeMultiplier=Q$[this.size-1],this.maxSize=t.maxSize,this.minRuleThickness=t.minRuleThickness,this._fontMetrics=void 0}extend(t){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 t)t.hasOwnProperty(n)&&(r[n]=t[n]);return new e(r)}havingStyle(t){return this.style===t?this:this.extend({style:t,size:Z$(this.textSize,t)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(t){return this.size===t&&this.textSize===t?this:this.extend({style:this.style.text(),size:t,textSize:t,sizeMultiplier:Q$[t-1]})}havingBaseStyle(t){t=t||this.style.text();var r=Z$(e.BASESIZE,t);return this.size===r&&this.textSize===e.BASESIZE&&this.style===t?this:this.extend({style:t,size:r})}havingBaseSizing(){var t;switch(this.style.id){case 4:case 5:t=3;break;case 6:case 7:t=1;break;default:t=6}return this.extend({style:this.style.text(),size:t})}withColor(t){return this.extend({color:t})}withPhantom(){return this.extend({phantom:!0})}withFont(t){return this.extend({font:t})}withTextFontFamily(t){return this.extend({fontFamily:t,font:""})}withTextFontWeight(t){return this.extend({fontWeight:t,font:""})}withTextFontShape(t){return this.extend({fontShape:t,font:""})}sizingClasses(t){return t.size!==this.size?["sizing","reset-size"+t.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==e.BASESIZE?["sizing","reset-size"+this.size,"size"+e.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=Rbt(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}};M4.BASESIZE=6;l7={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},Mbt={ex:!0,em:!0,mu:!0},_G=o(function(t){return typeof t!="string"&&(t=t.unit),t in l7||t in Mbt||t==="ex"},"validUnit"),Zn=o(function(t,r){var n;if(t.unit in l7)n=l7[t.unit]/r.fontMetrics().ptPerEm/r.sizeMultiplier;else if(t.unit==="mu")n=r.fontMetrics().cssEmPerMu;else{var i;if(r.style.isTight()?i=r.havingStyle(r.style.text()):i=r,t.unit==="ex")n=i.fontMetrics().xHeight;else if(t.unit==="em")n=i.fontMetrics().quad;else throw new ue("Invalid unit: '"+t.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(t.number*n,r.maxSize)},"calculateSize"),ve=o(function(t){return+t.toFixed(4)+"em"},"makeEm"),ph=o(function(t){return t.filter(r=>r).join(" ")},"createClass"),LG=o(function(t,r,n){if(this.classes=t||[],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"),DG=o(function(t){var r=document.createElement(t);r.className=ph(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"),td=class{static{o(this,"Span")}constructor(t,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,LG.call(this,t,n,i),this.children=r||[]}setAttribute(t,r){this.attributes[t]=r}hasClass(t){return tr.contains(this.classes,t)}toNode(){return DG.call(this,"span")}toMarkup(){return RG.call(this,"span")}},my=class{static{o(this,"Anchor")}constructor(t,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,LG.call(this,r,i),this.children=n||[],this.setAttribute("href",t)}setAttribute(t,r){this.attributes[t]=r}hasClass(t){return tr.contains(this.classes,t)}toNode(){return DG.call(this,"a")}toMarkup(){return RG.call(this,"a")}},c7=class{static{o(this,"Img")}constructor(t,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=t,this.classes=["mord"],this.style=n}hasClass(t){return tr.contains(this.classes,t)}toNode(){var t=document.createElement("img");t.src=this.src,t.alt=this.alt,t.className="mord";for(var r in this.style)this.style.hasOwnProperty(r)&&(t.style[r]=this.style[r]);return t}toMarkup(){var t=''+tr.escape(this.alt)+'0&&(r=document.createElement("span"),r.style.marginRight=ve(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=ph(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(t),r):t}toMarkup(){var t=!1,r="0&&(n+="margin-right:"+this.italic+"em;");for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=tr.hyphenate(i)+":"+this.style[i]+";");n&&(t=!0,r+=' style="'+tr.escape(n)+'"');var a=tr.escape(this.text);return t?(r+=">",r+=a,r+="",r):a}},dl=class{static{o(this,"SvgNode")}constructor(t,r){this.children=void 0,this.attributes=void 0,this.children=t||[],this.attributes=r||{}}toNode(){var t="http://www.w3.org/2000/svg",r=document.createElementNS(t,"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(t){this.attributes=void 0,this.attributes=t||{}}toNode(){var t="http://www.w3.org/2000/svg",r=document.createElementNS(t,"line");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);return r}toMarkup(){var t="","\\gt",!0);$(U,tt,bt,"\u2208","\\in",!0);$(U,tt,bt,"\uE020","\\@not");$(U,tt,bt,"\u2282","\\subset",!0);$(U,tt,bt,"\u2283","\\supset",!0);$(U,tt,bt,"\u2286","\\subseteq",!0);$(U,tt,bt,"\u2287","\\supseteq",!0);$(U,xt,bt,"\u2288","\\nsubseteq",!0);$(U,xt,bt,"\u2289","\\nsupseteq",!0);$(U,tt,bt,"\u22A8","\\models");$(U,tt,bt,"\u2190","\\leftarrow",!0);$(U,tt,bt,"\u2264","\\le");$(U,tt,bt,"\u2264","\\leq",!0);$(U,tt,bt,"<","\\lt",!0);$(U,tt,bt,"\u2192","\\rightarrow",!0);$(U,tt,bt,"\u2192","\\to");$(U,xt,bt,"\u2271","\\ngeq",!0);$(U,xt,bt,"\u2270","\\nleq",!0);$(U,tt,pu,"\xA0","\\ ");$(U,tt,pu,"\xA0","\\space");$(U,tt,pu,"\xA0","\\nobreakspace");$(ie,tt,pu,"\xA0","\\ ");$(ie,tt,pu,"\xA0"," ");$(ie,tt,pu,"\xA0","\\space");$(ie,tt,pu,"\xA0","\\nobreakspace");$(U,tt,pu,null,"\\nobreak");$(U,tt,pu,null,"\\allowbreak");$(U,tt,$4,",",",");$(U,tt,$4,";",";");$(U,xt,_e,"\u22BC","\\barwedge",!0);$(U,xt,_e,"\u22BB","\\veebar",!0);$(U,tt,_e,"\u2299","\\odot",!0);$(U,tt,_e,"\u2295","\\oplus",!0);$(U,tt,_e,"\u2297","\\otimes",!0);$(U,tt,Lt,"\u2202","\\partial",!0);$(U,tt,_e,"\u2298","\\oslash",!0);$(U,xt,_e,"\u229A","\\circledcirc",!0);$(U,xt,_e,"\u22A1","\\boxdot",!0);$(U,tt,_e,"\u25B3","\\bigtriangleup");$(U,tt,_e,"\u25BD","\\bigtriangledown");$(U,tt,_e,"\u2020","\\dagger");$(U,tt,_e,"\u22C4","\\diamond");$(U,tt,_e,"\u22C6","\\star");$(U,tt,_e,"\u25C3","\\triangleleft");$(U,tt,_e,"\u25B9","\\triangleright");$(U,tt,Qs,"{","\\{");$(ie,tt,Lt,"{","\\{");$(ie,tt,Lt,"{","\\textbraceleft");$(U,tt,Za,"}","\\}");$(ie,tt,Lt,"}","\\}");$(ie,tt,Lt,"}","\\textbraceright");$(U,tt,Qs,"{","\\lbrace");$(U,tt,Za,"}","\\rbrace");$(U,tt,Qs,"[","\\lbrack",!0);$(ie,tt,Lt,"[","\\lbrack",!0);$(U,tt,Za,"]","\\rbrack",!0);$(ie,tt,Lt,"]","\\rbrack",!0);$(U,tt,Qs,"(","\\lparen",!0);$(U,tt,Za,")","\\rparen",!0);$(ie,tt,Lt,"<","\\textless",!0);$(ie,tt,Lt,">","\\textgreater",!0);$(U,tt,Qs,"\u230A","\\lfloor",!0);$(U,tt,Za,"\u230B","\\rfloor",!0);$(U,tt,Qs,"\u2308","\\lceil",!0);$(U,tt,Za,"\u2309","\\rceil",!0);$(U,tt,Lt,"\\","\\backslash");$(U,tt,Lt,"\u2223","|");$(U,tt,Lt,"\u2223","\\vert");$(ie,tt,Lt,"|","\\textbar",!0);$(U,tt,Lt,"\u2225","\\|");$(U,tt,Lt,"\u2225","\\Vert");$(ie,tt,Lt,"\u2225","\\textbardbl");$(ie,tt,Lt,"~","\\textasciitilde");$(ie,tt,Lt,"\\","\\textbackslash");$(ie,tt,Lt,"^","\\textasciicircum");$(U,tt,bt,"\u2191","\\uparrow",!0);$(U,tt,bt,"\u21D1","\\Uparrow",!0);$(U,tt,bt,"\u2193","\\downarrow",!0);$(U,tt,bt,"\u21D3","\\Downarrow",!0);$(U,tt,bt,"\u2195","\\updownarrow",!0);$(U,tt,bt,"\u21D5","\\Updownarrow",!0);$(U,tt,Ei,"\u2210","\\coprod");$(U,tt,Ei,"\u22C1","\\bigvee");$(U,tt,Ei,"\u22C0","\\bigwedge");$(U,tt,Ei,"\u2A04","\\biguplus");$(U,tt,Ei,"\u22C2","\\bigcap");$(U,tt,Ei,"\u22C3","\\bigcup");$(U,tt,Ei,"\u222B","\\int");$(U,tt,Ei,"\u222B","\\intop");$(U,tt,Ei,"\u222C","\\iint");$(U,tt,Ei,"\u222D","\\iiint");$(U,tt,Ei,"\u220F","\\prod");$(U,tt,Ei,"\u2211","\\sum");$(U,tt,Ei,"\u2A02","\\bigotimes");$(U,tt,Ei,"\u2A01","\\bigoplus");$(U,tt,Ei,"\u2A00","\\bigodot");$(U,tt,Ei,"\u222E","\\oint");$(U,tt,Ei,"\u222F","\\oiint");$(U,tt,Ei,"\u2230","\\oiiint");$(U,tt,Ei,"\u2A06","\\bigsqcup");$(U,tt,Ei,"\u222B","\\smallint");$(ie,tt,Sp,"\u2026","\\textellipsis");$(U,tt,Sp,"\u2026","\\mathellipsis");$(ie,tt,Sp,"\u2026","\\ldots",!0);$(U,tt,Sp,"\u2026","\\ldots",!0);$(U,tt,Sp,"\u22EF","\\@cdots",!0);$(U,tt,Sp,"\u22F1","\\ddots",!0);$(U,tt,Lt,"\u22EE","\\varvdots");$(U,tt,Un,"\u02CA","\\acute");$(U,tt,Un,"\u02CB","\\grave");$(U,tt,Un,"\xA8","\\ddot");$(U,tt,Un,"~","\\tilde");$(U,tt,Un,"\u02C9","\\bar");$(U,tt,Un,"\u02D8","\\breve");$(U,tt,Un,"\u02C7","\\check");$(U,tt,Un,"^","\\hat");$(U,tt,Un,"\u20D7","\\vec");$(U,tt,Un,"\u02D9","\\dot");$(U,tt,Un,"\u02DA","\\mathring");$(U,tt,er,"\uE131","\\@imath");$(U,tt,er,"\uE237","\\@jmath");$(U,tt,Lt,"\u0131","\u0131");$(U,tt,Lt,"\u0237","\u0237");$(ie,tt,Lt,"\u0131","\\i",!0);$(ie,tt,Lt,"\u0237","\\j",!0);$(ie,tt,Lt,"\xDF","\\ss",!0);$(ie,tt,Lt,"\xE6","\\ae",!0);$(ie,tt,Lt,"\u0153","\\oe",!0);$(ie,tt,Lt,"\xF8","\\o",!0);$(ie,tt,Lt,"\xC6","\\AE",!0);$(ie,tt,Lt,"\u0152","\\OE",!0);$(ie,tt,Lt,"\xD8","\\O",!0);$(ie,tt,Un,"\u02CA","\\'");$(ie,tt,Un,"\u02CB","\\`");$(ie,tt,Un,"\u02C6","\\^");$(ie,tt,Un,"\u02DC","\\~");$(ie,tt,Un,"\u02C9","\\=");$(ie,tt,Un,"\u02D8","\\u");$(ie,tt,Un,"\u02D9","\\.");$(ie,tt,Un,"\xB8","\\c");$(ie,tt,Un,"\u02DA","\\r");$(ie,tt,Un,"\u02C7","\\v");$(ie,tt,Un,"\xA8",'\\"');$(ie,tt,Un,"\u02DD","\\H");$(ie,tt,Un,"\u25EF","\\textcircled");NG={"--":!0,"---":!0,"``":!0,"''":!0};$(ie,tt,Lt,"\u2013","--",!0);$(ie,tt,Lt,"\u2013","\\textendash");$(ie,tt,Lt,"\u2014","---",!0);$(ie,tt,Lt,"\u2014","\\textemdash");$(ie,tt,Lt,"\u2018","`",!0);$(ie,tt,Lt,"\u2018","\\textquoteleft");$(ie,tt,Lt,"\u2019","'",!0);$(ie,tt,Lt,"\u2019","\\textquoteright");$(ie,tt,Lt,"\u201C","``",!0);$(ie,tt,Lt,"\u201C","\\textquotedblleft");$(ie,tt,Lt,"\u201D","''",!0);$(ie,tt,Lt,"\u201D","\\textquotedblright");$(U,tt,Lt,"\xB0","\\degree",!0);$(ie,tt,Lt,"\xB0","\\degree");$(ie,tt,Lt,"\xB0","\\textdegree",!0);$(U,tt,Lt,"\xA3","\\pounds");$(U,tt,Lt,"\xA3","\\mathsterling",!0);$(ie,tt,Lt,"\xA3","\\pounds");$(ie,tt,Lt,"\xA3","\\textsterling",!0);$(U,xt,Lt,"\u2720","\\maltese");$(ie,xt,Lt,"\u2720","\\maltese");tG='0123456789/@."';for(b4=0;b40)return fl(a,h,i,r,s.concat(f));if(u){var d,p;if(u==="boldsymbol"){var m=$bt(a,i,r,s,n);d=m.fontName,p=[m.fontClass]}else l?(d=OG[u].fontName,p=[u]):(d=C4(u,r.fontWeight,r.fontShape),p=[u,r.fontWeight,r.fontShape]);if(G4(a,d,i).metrics)return fl(a,d,i,r,s.concat(p));if(NG.hasOwnProperty(a)&&d.slice(0,10)==="Typewriter"){for(var g=[],y=0;y{if(ph(e.classes)!==ph(t.classes)||e.skew!==t.skew||e.maxFontSize!==t.maxFontSize)return!1;if(e.classes.length===1){var r=e.classes[0];if(r==="mbin"||r==="mord")return!1}for(var n in e.style)if(e.style.hasOwnProperty(n)&&e.style[n]!==t.style[n])return!1;for(var i in t.style)if(t.style.hasOwnProperty(i)&&e.style[i]!==t.style[i])return!1;return!0},"canCombine"),Ubt=o(e=>{for(var t=0;tr&&(r=s.height),s.depth>n&&(n=s.depth),s.maxFontSize>i&&(i=s.maxFontSize)}t.height=r,t.depth=n,t.maxFontSize=i},"sizeElementFromChildren"),ys=o(function(t,r,n,i){var a=new td(t,r,n,i);return w7(a),a},"makeSpan"),MG=o((e,t,r,n)=>new td(e,t,r,n),"makeSvgSpan"),Hbt=o(function(t,r,n){var i=ys([t],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=ve(i.height),i.maxFontSize=1,i},"makeLineSpan"),Wbt=o(function(t,r,n,i){var a=new my(t,r,n,i);return w7(a),a},"makeAnchor"),IG=o(function(t){var r=new Jf(t);return w7(r),r},"makeFragment"),Ybt=o(function(t,r){return t instanceof Jf?ys([],[t],r):t},"wrapFragment"),qbt=o(function(t){if(t.positionType==="individualShift"){for(var r=t.children,n=[r[0]],i=-r[0].shift-r[0].elem.depth,a=i,s=1;s{var r=ys(["mspace"],[],t),n=Zn(e,t);return r.style.marginRight=ve(n),r},"makeGlue"),C4=o(function(t,r,n){var i="";switch(t){case"amsrm":i="AMS";break;case"textrm":i="Main";break;case"textsf":i="SansSerif";break;case"texttt":i="Typewriter";break;default:i=t}var a;return r==="textbf"&&n==="textit"?a="BoldItalic":r==="textbf"?a="Bold":r==="textit"?a="Italic":a="Regular",i+"-"+a},"retrieveTextFontName"),OG={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"}},PG={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},Kbt=o(function(t,r){var[n,i,a]=PG[t],s=new sc(n),l=new dl([s],{width:ve(i),height:ve(a),style:"width:"+ve(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),u=MG(["overlay"],[l],r);return u.height=a,u.style.height=ve(a),u.style.width=ve(i),u},"staticSvg"),Bt={fontMap:OG,makeSymbol:fl,mathsym:zbt,makeSpan:ys,makeSvgSpan:MG,makeLineSpan:Hbt,makeAnchor:Wbt,makeFragment:IG,wrapFragment:Ybt,makeVList:Xbt,makeOrd:Gbt,makeGlue:jbt,staticSvg:Kbt,svgData:PG,tryCombineChars:Ubt},Qn={number:3,unit:"mu"},Qf={number:4,unit:"mu"},cu={number:5,unit:"mu"},Qbt={mord:{mop:Qn,mbin:Qf,mrel:cu,minner:Qn},mop:{mord:Qn,mop:Qn,mrel:cu,minner:Qn},mbin:{mord:Qf,mop:Qf,mopen:Qf,minner:Qf},mrel:{mord:cu,mop:cu,mopen:cu,minner:cu},mopen:{},mclose:{mop:Qn,mbin:Qf,mrel:cu,minner:Qn},mpunct:{mord:Qn,mop:Qn,mrel:cu,mopen:Qn,mclose:Qn,mpunct:Qn,minner:Qn},minner:{mord:Qn,mop:Qn,mbin:Qf,mrel:cu,mopen:Qn,mpunct:Qn,minner:Qn}},Zbt={mord:{mop:Qn},mop:{mord:Qn,mop:Qn},mbin:{},mrel:{},mopen:{},mclose:{mop:Qn},mpunct:{},minner:{mop:Qn}},BG={},O4={},P4={};o(Ce,"defineFunction");o(ed,"defineFunctionBuilders");B4=o(function(t){return t.type==="ordgroup"&&t.body.length===1?t.body[0]:t},"normalizeArgument"),mi=o(function(t){return t.type==="ordgroup"?t.body:[t]},"ordargument"),fu=Bt.makeSpan,Jbt=["leftmost","mbin","mopen","mrel","mop","mpunct"],t4t=["rightmost","mrel","mclose","mpunct"],e4t={display:rr.DISPLAY,text:rr.TEXT,script:rr.SCRIPT,scriptscript:rr.SCRIPTSCRIPT},r4t={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},Oi=o(function(t,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"&&tr.contains(t4t,x)?y.classes[0]="mord":x==="mbin"&&tr.contains(Jbt,v)&&(g.classes[0]="mord")},{node:d},p,m),nG(a,(g,y)=>{var v=h7(y),x=h7(g),b=v&&x?g.hasClass("mtight")?Zbt[v][x]:Qbt[v][x]:null;if(b)return Bt.makeGlue(b,h)},{node:d},p,m),a},"buildExpression"),nG=o(function e(t,r,n,i,a){i&&t.push(i);for(var s=0;sp=>{t.splice(d+1,0,p),s++})(s)}i&&t.pop()},"traverseNonSpaceNodes"),FG=o(function(t){return t instanceof Jf||t instanceof my||t instanceof td&&t.hasClass("enclosing")?t:null},"checkPartialGroup"),n4t=o(function e(t,r){var n=FG(t);if(n){var i=n.children;if(i.length){if(r==="right")return e(i[i.length-1],"right");if(r==="left")return e(i[0],"left")}}return t},"getOutermostNode"),h7=o(function(t,r){return t?(r&&(t=n4t(t,r)),r4t[t.classes[0]]||null):null},"getTypeOfDomTree"),yy=o(function(t,r){var n=["nulldelimiter"].concat(t.baseSizingClasses());return fu(r.concat(n))},"makeNullDelimiter"),Or=o(function(t,r,n){if(!t)return fu();if(O4[t.type]){var i=O4[t.type](t,r);if(n&&r.size!==n.size){i=fu(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new ue("Got group of unknown type: '"+t.type+"'")},"buildGroup");o(S4,"buildHTMLUnbreakable");o(f7,"buildHTML");o(zG,"newDocumentFragment");vs=class{static{o(this,"MathNode")}constructor(t,r,n){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=t,this.attributes={},this.children=r||[],this.classes=n||[]}setAttribute(t,r){this.attributes[t]=r}getAttribute(t){return this.attributes[t]}toNode(){var t=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&t.setAttribute(r,this.attributes[r]);this.classes.length>0&&(t.className=ph(this.classes));for(var n=0;n0&&(t+=' class ="'+tr.escape(ph(this.classes))+'"'),t+=">";for(var n=0;n",t}toText(){return this.children.map(t=>t.toText()).join("")}},Zf=class{static{o(this,"TextNode")}constructor(t){this.text=void 0,this.text=t}toNode(){return document.createTextNode(this.text)}toMarkup(){return tr.escape(this.toText())}toText(){return this.text}},d7=class{static{o(this,"SpaceNode")}constructor(t){this.width=void 0,this.character=void 0,this.width=t,t>=.05555&&t<=.05556?this.character="\u200A":t>=.1666&&t<=.1667?this.character="\u2009":t>=.2222&&t<=.2223?this.character="\u2005":t>=.2777&&t<=.2778?this.character="\u2005\u200A":t>=-.05556&&t<=-.05555?this.character="\u200A\u2063":t>=-.1667&&t<=-.1666?this.character="\u2009\u2063":t>=-.2223&&t<=-.2222?this.character="\u205F\u2063":t>=-.2778&&t<=-.2777?this.character="\u2005\u2063":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var t=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return t.setAttribute("width",ve(this.width)),t}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}},se={MathNode:vs,TextNode:Zf,SpaceNode:d7,newDocumentFragment:zG},Ro=o(function(t,r,n){return An[r][t]&&An[r][t].replace&&t.charCodeAt(0)!==55349&&!(NG.hasOwnProperty(t)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(t=An[r][t].replace),new se.TextNode(t)},"makeText"),T7=o(function(t){return t.length===1?t[0]:new se.MathNode("mrow",t)},"makeRow"),k7=o(function(t,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=t.mode;if(n==="mathit")return"italic";if(n==="boldsymbol")return t.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=t.text;if(tr.contains(["\\imath","\\jmath"],a))return null;An[i][a]&&An[i][a].replace&&(a=An[i][a].replace);var s=Bt.fontMap[n].fontName;return b7(a,s,i)?Bt.fontMap[n].variant:null},"getVariant"),bs=o(function(t,r,n){if(t.length===1){var i=yn(t[0],r);return n&&i instanceof vs&&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"),mh=o(function(t,r,n){return T7(bs(t,r,n))},"buildExpressionRow"),yn=o(function(t,r){if(!t)return new se.MathNode("mrow");if(P4[t.type]){var n=P4[t.type](t,r);return n}else throw new ue("Got group of unknown type: '"+t.type+"'")},"buildGroup");o(iG,"buildMathML");$G=o(function(t){return new M4({style:t.displayMode?rr.DISPLAY:rr.TEXT,maxSize:t.maxSize,minRuleThickness:t.minRuleThickness})},"optionsFromSettings"),GG=o(function(t,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),t=Bt.makeSpan(n,[t])}return t},"displayWrap"),i4t=o(function(t,r,n){var i=$G(n),a;if(n.output==="mathml")return iG(t,r,i,n.displayMode,!0);if(n.output==="html"){var s=f7(t,i);a=Bt.makeSpan(["katex"],[s])}else{var l=iG(t,r,i,n.displayMode,!1),u=f7(t,i);a=Bt.makeSpan(["katex"],[l,u])}return GG(a,n)},"buildTree"),a4t=o(function(t,r,n){var i=$G(n),a=f7(t,i),s=Bt.makeSpan(["katex"],[a]);return GG(s,n)},"buildHTMLTree"),s4t={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":"="},o4t=o(function(t){var r=new se.MathNode("mo",[new se.TextNode(s4t[t.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},"mathMLnode"),l4t={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]},c4t=o(function(t){return t.type==="ordgroup"?t.body.length:1},"groupLength"),u4t=o(function(t,r){function n(){var l=4e5,u=t.label.slice(1);if(tr.contains(["widehat","widecheck","widetilde","utilde"],u)){var h=t,f=c4t(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 sc(p),v=new dl([y],{width:"100%",height:ve(m),viewBox:"0 0 "+l+" "+d,preserveAspectRatio:"none"});return{span:Bt.makeSvgSpan([],[v],r),minWidth:0,height:m}}else{var x=[],b=l4t[u],[w,S,T]=b,E=T/1e3,_=w.length,A,L;if(_===1){var M=b[3];A=["hide-tail"],L=[M]}else if(_===2)A=["halfarrow-left","halfarrow-right"],L=["xMinYMin","xMaxYMin"];else if(_===3)A=["brace-left","brace-center","brace-right"],L=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support + `+_+" children.");for(var N=0;N<_;N++){var k=new sc(w[N]),I=new dl([k],{width:"400em",height:ve(E),viewBox:"0 0 "+l+" "+T,preserveAspectRatio:L[N]+" slice"}),C=Bt.makeSvgSpan([A[N]],[I],r);if(_===1)return{span:C,minWidth:S,height:E};C.style.height=ve(E),x.push(C)}return{span:Bt.makeSpan(["stretchy"],x,r),minWidth:S,height:E}}}o(n,"buildSvgSpan_");var{span:i,minWidth:a,height:s}=n();return i.height=s,i.style.height=ve(s),a>0&&(i.style.minWidth=ve(a)),i},"svgSpan"),h4t=o(function(t,r,n,i,a){var s,l=t.height+t.depth+n+i;if(/fbox|color|angl/.test(r)){if(s=Bt.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 dl(h,{width:"100%",height:ve(l)});s=Bt.makeSvgSpan([],[f],a)}return s.height=l,s.style.height=ve(l),s},"encloseSpan"),du={encloseSpan:h4t,mathMLnode:o4t,svgSpan:u4t};o(mr,"assertNodeType");o(E7,"assertSymbolNodeType");o(V4,"checkSymbolNodeType");C7=o((e,t)=>{var r,n,i;e&&e.type==="supsub"?(n=mr(e.base,"accent"),r=n.base,e.base=r,i=Obt(Or(e,t)),e.base=n):(n=mr(e,"accent"),r=n.base);var a=Or(r,t.havingCrampedStyle()),s=n.isShifty&&tr.isCharacterBox(r),l=0;if(s){var u=tr.getBaseElem(r),h=Or(u,t.havingCrampedStyle());l=J$(h).skew}var f=n.label==="\\c",d=f?a.height+a.depth:Math.min(a.height,t.fontMetrics().xHeight),p;if(n.isStretchy)p=du.svgSpan(n,t),p=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:p,wrapperClasses:["svg-align"],wrapperStyle:l>0?{width:"calc(100% - "+ve(2*l)+")",marginLeft:ve(2*l)}:void 0}]},t);else{var m,g;n.label==="\\vec"?(m=Bt.staticSvg("vec",t),g=Bt.svgData.vec[1]):(m=Bt.makeOrd({mode:n.mode,text:n.label},t,"textord"),m=J$(m),m.italic=0,g=m.width,f&&(d+=m.depth)),p=Bt.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=ve(v),n.label==="\\textcircled"&&(p.style.top=".2em"),p=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-d},{type:"elem",elem:p}]},t)}var x=Bt.makeSpan(["mord","accent"],[p],t);return i?(i.children[0]=x,i.height=Math.max(x.height,i.height),i.classes[0]="mord",i):x},"htmlBuilder$a"),VG=o((e,t)=>{var r=e.isStretchy?du.mathMLnode(e.label):new se.MathNode("mo",[Ro(e.label,e.mode)]),n=new se.MathNode("mover",[yn(e.base,t),r]);return n.setAttribute("accent","true"),n},"mathmlBuilder$9"),f4t=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(e=>"\\"+e).join("|"));Ce({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((e,t)=>{var r=B4(t[0]),n=!f4t.test(e.funcName),i=!n||e.funcName==="\\widehat"||e.funcName==="\\widetilde"||e.funcName==="\\widecheck";return{type:"accent",mode:e.parser.mode,label:e.funcName,isStretchy:n,isShifty:i,base:r}},"handler"),htmlBuilder:C7,mathmlBuilder:VG});Ce({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:o((e,t)=>{var r=t[0],n=e.parser.mode;return n==="math"&&(e.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+e.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:e.funcName,isStretchy:!1,isShifty:!0,base:r}},"handler"),htmlBuilder:C7,mathmlBuilder:VG});Ce({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0];return{type:"accentUnder",mode:r.mode,label:n,base:i}},"handler"),htmlBuilder:o((e,t)=>{var r=Or(e.base,t),n=du.svgSpan(e,t),i=e.label==="\\utilde"?.12:0,a=Bt.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]},t);return Bt.makeSpan(["mord","accentunder"],[a],t)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=du.mathMLnode(e.label),n=new se.MathNode("munder",[yn(e.base,t),r]);return n.setAttribute("accentunder","true"),n},"mathmlBuilder")});A4=o(e=>{var t=new se.MathNode("mpadded",e?[e]:[]);return t.setAttribute("width","+0.6em"),t.setAttribute("lspace","0.3em"),t},"paddedNode");Ce({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(e,t,r){var{parser:n,funcName:i}=e;return{type:"xArrow",mode:n.mode,label:i,body:t[0],below:r[0]}},htmlBuilder(e,t){var r=t.style,n=t.havingStyle(r.sup()),i=Bt.wrapFragment(Or(e.body,n,t),t),a=e.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(a+"-arrow-pad");var s;e.below&&(n=t.havingStyle(r.sub()),s=Bt.wrapFragment(Or(e.below,n,t),t),s.classes.push(a+"-arrow-pad"));var l=du.svgSpan(e,t),u=-t.fontMetrics().axisHeight+.5*l.height,h=-t.fontMetrics().axisHeight-.5*l.height-.111;(i.depth>.25||e.label==="\\xleftequilibrium")&&(h-=i.depth);var f;if(s){var d=-t.fontMetrics().axisHeight+s.height+.5*l.height+.111;f=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u},{type:"elem",elem:s,shift:d}]},t)}else f=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u}]},t);return f.children[0].children[0].children[1].classes.push("svg-align"),Bt.makeSpan(["mrel","x-arrow"],[f],t)},mathmlBuilder(e,t){var r=du.mathMLnode(e.label);r.setAttribute("minsize",e.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(e.body){var i=A4(yn(e.body,t));if(e.below){var a=A4(yn(e.below,t));n=new se.MathNode("munderover",[r,a,i])}else n=new se.MathNode("mover",[r,i])}else if(e.below){var s=A4(yn(e.below,t));n=new se.MathNode("munder",[r,s])}else n=A4(),n=new se.MathNode("mover",[r,n]);return n}});d4t=Bt.makeSpan;o(UG,"htmlBuilder$9");o(HG,"mathmlBuilder$8");Ce({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(e,t){var{parser:r,funcName:n}=e,i=t[0];return{type:"mclass",mode:r.mode,mclass:"m"+n.slice(5),body:mi(i),isCharacterBox:tr.isCharacterBox(i)}},htmlBuilder:UG,mathmlBuilder:HG});U4=o(e=>{var t=e.type==="ordgroup"&&e.body.length?e.body[0]:e;return t.type==="atom"&&(t.family==="bin"||t.family==="rel")?"m"+t.family:"mord"},"binrelClass");Ce({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(e,t){var{parser:r}=e;return{type:"mclass",mode:r.mode,mclass:U4(t[0]),body:mi(t[1]),isCharacterBox:tr.isCharacterBox(t[1])}}});Ce({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(e,t){var{parser:r,funcName:n}=e,i=t[1],a=t[0],s;n!=="\\stackrel"?s=U4(i):s="mrel";var l={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:mi(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:tr.isCharacterBox(u)}},htmlBuilder:UG,mathmlBuilder:HG});Ce({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(e,t){var{parser:r}=e;return{type:"pmb",mode:r.mode,mclass:U4(t[0]),body:mi(t[0])}},htmlBuilder(e,t){var r=Oi(e.body,t,!0),n=Bt.makeSpan([e.mclass],r,t);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(e,t){var r=bs(e.body,t),n=new se.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});p4t={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},aG=o(()=>({type:"styling",body:[],mode:"math",style:"display"}),"newCell"),sG=o(e=>e.type==="textord"&&e.text==="@","isStartOfArrow"),m4t=o((e,t)=>(e.type==="mathord"||e.type==="atom")&&e.text===t,"isLabelEnd");o(g4t,"cdArrow");o(y4t,"parseCD");Ce({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(e,t){var{parser:r,funcName:n}=e;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:t[0]}},htmlBuilder(e,t){var r=t.havingStyle(t.style.sup()),n=Bt.wrapFragment(Or(e.label,r,t),t);return n.classes.push("cd-label-"+e.side),n.style.bottom=ve(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(e,t){var r=new se.MathNode("mrow",[yn(e.label,t)]);return r=new se.MathNode("mpadded",[r]),r.setAttribute("width","0"),e.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new se.MathNode("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}});Ce({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(e,t){var{parser:r}=e;return{type:"cdlabelparent",mode:r.mode,fragment:t[0]}},htmlBuilder(e,t){var r=Bt.wrapFragment(Or(e.fragment,t),t);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(e,t){return new se.MathNode("mrow",[yn(e.fragment,t)])}});Ce({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(e,t){for(var{parser:r}=e,n=mr(t[0],"ordgroup"),i=n.body,a="",s=0;s=1114111)throw new ue("\\@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}}});WG=o((e,t)=>{var r=Oi(e.body,t.withColor(e.color),!1);return Bt.makeFragment(r)},"htmlBuilder$8"),YG=o((e,t)=>{var r=bs(e.body,t.withColor(e.color)),n=new se.MathNode("mstyle",r);return n.setAttribute("mathcolor",e.color),n},"mathmlBuilder$7");Ce({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(e,t){var{parser:r}=e,n=mr(t[0],"color-token").color,i=t[1];return{type:"color",mode:r.mode,color:n,body:mi(i)}},htmlBuilder:WG,mathmlBuilder:YG});Ce({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(e,t){var{parser:r,breakOnTokenText:n}=e,i=mr(t[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:WG,mathmlBuilder:YG});Ce({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(e,t,r){var{parser:n}=e,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&&mr(i,"size").value}},htmlBuilder(e,t){var r=Bt.makeSpan(["mspace"],[],t);return e.newLine&&(r.classes.push("newline"),e.size&&(r.style.marginTop=ve(Zn(e.size,t)))),r},mathmlBuilder(e,t){var r=new se.MathNode("mspace");return e.newLine&&(r.setAttribute("linebreak","newline"),e.size&&r.setAttribute("height",ve(Zn(e.size,t)))),r}});p7={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},qG=o(e=>{var t=e.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(t))throw new ue("Expected a control sequence",e);return t},"checkControlSequence"),v4t=o(e=>{var t=e.gullet.popToken();return t.text==="="&&(t=e.gullet.popToken(),t.text===" "&&(t=e.gullet.popToken())),t},"getRHS"),XG=o((e,t,r,n)=>{var i=e.gullet.macros.get(r.text);i==null&&(r.noexpand=!0,i={tokens:[r],numArgs:0,unexpandable:!e.gullet.isExpandable(r.text)}),e.gullet.macros.set(t,i,n)},"letCommand");Ce({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(e){var{parser:t,funcName:r}=e;t.consumeSpaces();var n=t.fetch();if(p7[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=p7[n.text]),mr(t.parseFunction(),"internal");throw new ue("Invalid token after macro prefix",n)}});Ce({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:r}=e,n=t.gullet.popToken(),i=n.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new ue("Expected a control sequence",n);for(var a=0,s,l=[[]];t.gullet.future().text!=="{";)if(n=t.gullet.popToken(),n.text==="#"){if(t.gullet.future().text==="{"){s=t.gullet.future(),l[a].push("{");break}if(n=t.gullet.popToken(),!/^[1-9]$/.test(n.text))throw new ue('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new ue('Argument number "'+n.text+'" out of order');a++,l.push([])}else{if(n.text==="EOF")throw new ue("Expected a macro definition");l[a].push(n.text)}var{tokens:u}=t.gullet.consumeArg();return s&&u.unshift(s),(r==="\\edef"||r==="\\xdef")&&(u=t.gullet.expandTokens(u),u.reverse()),t.gullet.macros.set(i,{tokens:u,numArgs:a,delimiters:l},r===p7[r]),{type:"internal",mode:t.mode}}});Ce({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:r}=e,n=qG(t.gullet.popToken());t.gullet.consumeSpaces();var i=v4t(t);return XG(t,n,i,r==="\\\\globallet"),{type:"internal",mode:t.mode}}});Ce({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:r}=e,n=qG(t.gullet.popToken()),i=t.gullet.popToken(),a=t.gullet.popToken();return XG(t,n,a,r==="\\\\globalfuture"),t.gullet.pushToken(a),t.gullet.pushToken(i),{type:"internal",mode:t.mode}}});hy=o(function(t,r,n){var i=An.math[t]&&An.math[t].replace,a=b7(i||t,r,n);if(!a)throw new Error("Unsupported symbol "+t+" and font size "+r+".");return a},"getMetrics"),S7=o(function(t,r,n,i){var a=n.havingBaseStyle(r),s=Bt.makeSpan(i.concat(a.sizingClasses(n)),[t],n),l=a.sizeMultiplier/n.sizeMultiplier;return s.height*=l,s.depth*=l,s.maxFontSize=a.sizeMultiplier,s},"styleWrap"),jG=o(function(t,r,n){var i=r.havingBaseStyle(n),a=(1-r.sizeMultiplier/i.sizeMultiplier)*r.fontMetrics().axisHeight;t.classes.push("delimcenter"),t.style.top=ve(a),t.height-=a,t.depth+=a},"centerSpan"),x4t=o(function(t,r,n,i,a,s){var l=Bt.makeSymbol(t,"Main-Regular",a,i),u=S7(l,r,i,s);return n&&jG(u,i,r),u},"makeSmallDelim"),b4t=o(function(t,r,n,i){return Bt.makeSymbol(t,"Size"+r+"-Regular",n,i)},"mathrmSize"),KG=o(function(t,r,n,i,a,s){var l=b4t(t,r,a,i),u=S7(Bt.makeSpan(["delimsizing","size"+r],[l],i),rr.TEXT,i,s);return n&&jG(u,i,rr.TEXT),u},"makeLargeDelim"),ZS=o(function(t,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=Bt.makeSpan(["delimsizinginner",i],[Bt.makeSpan([],[Bt.makeSymbol(t,r,n)])]);return{type:"elem",elem:a}},"makeGlyphSpan"),JS=o(function(t,r,n){var i=ac["Size4-Regular"][t.charCodeAt(0)]?ac["Size4-Regular"][t.charCodeAt(0)][4]:ac["Size1-Regular"][t.charCodeAt(0)][4],a=new sc("inner",_bt(t,Math.round(1e3*r))),s=new dl([a],{width:ve(i),height:ve(r),style:"width:"+ve(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),l=Bt.makeSvgSpan([],[s],n);return l.height=r,l.style.height=ve(r),l.style.width=ve(i),{type:"elem",elem:l}},"makeInner"),m7=.008,_4={type:"kern",size:-1*m7},w4t=["|","\\lvert","\\rvert","\\vert"],T4t=["\\|","\\lVert","\\rVert","\\Vert"],QG=o(function(t,r,n,i,a,s){var l,u,h,f,d="",p=0;l=h=f=t,u=null;var m="Size1-Regular";t==="\\uparrow"?h=f="\u23D0":t==="\\Uparrow"?h=f="\u2016":t==="\\downarrow"?l=h="\u23D0":t==="\\Downarrow"?l=h="\u2016":t==="\\updownarrow"?(l="\\uparrow",h="\u23D0",f="\\downarrow"):t==="\\Updownarrow"?(l="\\Uparrow",h="\u2016",f="\\Downarrow"):tr.contains(w4t,t)?(h="\u2223",d="vert",p=333):tr.contains(T4t,t)?(h="\u2225",d="doublevert",p=556):t==="["||t==="\\lbrack"?(l="\u23A1",h="\u23A2",f="\u23A3",m="Size4-Regular",d="lbrack",p=667):t==="]"||t==="\\rbrack"?(l="\u23A4",h="\u23A5",f="\u23A6",m="Size4-Regular",d="rbrack",p=667):t==="\\lfloor"||t==="\u230A"?(h=l="\u23A2",f="\u23A3",m="Size4-Regular",d="lfloor",p=667):t==="\\lceil"||t==="\u2308"?(l="\u23A1",h=f="\u23A2",m="Size4-Regular",d="lceil",p=667):t==="\\rfloor"||t==="\u230B"?(h=l="\u23A5",f="\u23A6",m="Size4-Regular",d="rfloor",p=667):t==="\\rceil"||t==="\u2309"?(l="\u23A4",h=f="\u23A5",m="Size4-Regular",d="rceil",p=667):t==="("||t==="\\lparen"?(l="\u239B",h="\u239C",f="\u239D",m="Size4-Regular",d="lparen",p=875):t===")"||t==="\\rparen"?(l="\u239E",h="\u239F",f="\u23A0",m="Size4-Regular",d="rparen",p=875):t==="\\{"||t==="\\lbrace"?(l="\u23A7",u="\u23A8",f="\u23A9",h="\u23AA",m="Size4-Regular"):t==="\\}"||t==="\\rbrace"?(l="\u23AB",u="\u23AC",f="\u23AD",h="\u23AA",m="Size4-Regular"):t==="\\lgroup"||t==="\u27EE"?(l="\u23A7",f="\u23A9",h="\u23AA",m="Size4-Regular"):t==="\\rgroup"||t==="\u27EF"?(l="\u23AB",f="\u23AD",h="\u23AA",m="Size4-Regular"):t==="\\lmoustache"||t==="\u23B0"?(l="\u23A7",f="\u23AD",h="\u23AA",m="Size4-Regular"):(t==="\\rmoustache"||t==="\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,S=0,T=1;if(u!==null){var E=hy(u,m,a);S=E.height+E.depth,T=2}var _=y+w+S,A=Math.max(0,Math.ceil((r-_)/(T*x))),L=_+A*T*x,M=i.fontMetrics().axisHeight;n&&(M*=i.sizeMultiplier);var N=L/2-M,k=[];if(d.length>0){var I=L-y-w,C=Math.round(L*1e3),O=Lbt(d,Math.round(I*1e3)),D=new sc(d,O),P=(p/1e3).toFixed(3)+"em",F=(C/1e3).toFixed(3)+"em",B=new dl([D],{width:P,height:F,viewBox:"0 0 "+p+" "+C}),G=Bt.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(ZS(f,m,a)),k.push(_4),u===null){var z=L-y-w+2*m7;k.push(JS(h,z,i))}else{var W=(L-y-w-S)/2+2*m7;k.push(JS(h,W,i)),k.push(_4),k.push(ZS(u,m,a)),k.push(_4),k.push(JS(h,W,i))}k.push(_4),k.push(ZS(l,m,a))}var Q=i.havingBaseStyle(rr.TEXT),j=Bt.makeVList({positionType:"bottom",positionData:N,children:k},Q);return S7(Bt.makeSpan(["delimsizing","mult"],[j],Q),rr.TEXT,i,s)},"makeStackedDelim"),t7=80,e7=.08,r7=o(function(t,r,n,i,a){var s=Abt(t,i,n),l=new sc(t,s),u=new dl([l],{width:"400em",height:ve(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return Bt.makeSvgSpan(["hide-tail"],[u],a)},"sqrtSvg"),k4t=o(function(t,r){var n=r.havingBaseSizing(),i=eV("\\surd",t*n.sizeMultiplier,tV,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+t7,t<1?a=1:t<1.4&&(a=.7),u=(1+s+e7)/a,h=(1+s)/a,l=r7("sqrtMain",u,f,s,r),l.style.minWidth="0.853em",d=.833/a):i.type==="large"?(f=(1e3+t7)*fy[i.size],h=(fy[i.size]+s)/a,u=(fy[i.size]+s+e7)/a,l=r7("sqrtSize"+i.size,u,f,s,r),l.style.minWidth="1.02em",d=1/a):(u=t+s+e7,h=t+s,f=Math.floor(1e3*t+s)+t7,l=r7("sqrtTall",u,f,s,r),l.style.minWidth="0.742em",d=1.056),l.height=h,l.style.height=ve(u),{span:l,advanceWidth:d,ruleWidth:(r.fontMetrics().sqrtRuleThickness+s)*a}},"makeSqrtImage"),ZG=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","\\surd"],E4t=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1"],JG=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],fy=[0,1.2,1.8,2.4,3],C4t=o(function(t,r,n,i,a){if(t==="<"||t==="\\lt"||t==="\u27E8"?t="\\langle":(t===">"||t==="\\gt"||t==="\u27E9")&&(t="\\rangle"),tr.contains(ZG,t)||tr.contains(JG,t))return KG(t,r,!1,n,i,a);if(tr.contains(E4t,t))return QG(t,fy[r],!1,n,i,a);throw new ue("Illegal delimiter: '"+t+"'")},"makeSizedDelim"),S4t=[{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}],A4t=[{type:"small",style:rr.SCRIPTSCRIPT},{type:"small",style:rr.SCRIPT},{type:"small",style:rr.TEXT},{type:"stack"}],tV=[{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"}],_4t=o(function(t){if(t.type==="small")return"Main-Regular";if(t.type==="large")return"Size"+t.size+"-Regular";if(t.type==="stack")return"Size4-Regular";throw new Error("Add support for delim type '"+t.type+"' here.")},"delimTypeToFont"),eV=o(function(t,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"),rV=o(function(t,r,n,i,a,s){t==="<"||t==="\\lt"||t==="\u27E8"?t="\\langle":(t===">"||t==="\\gt"||t==="\u27E9")&&(t="\\rangle");var l;tr.contains(JG,t)?l=S4t:tr.contains(ZG,t)?l=tV:l=A4t;var u=eV(t,r,l,i);return u.type==="small"?x4t(t,u.style,n,i,a,s):u.type==="large"?KG(t,u.size,n,i,a,s):QG(t,r,n,i,a,s)},"makeCustomSizedDelim"),L4t=o(function(t,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 rV(t,d,!0,i,a,s)},"makeLeftRightDelim"),hu={sqrtImage:k4t,sizedDelim:C4t,sizeToMaxHeight:fy,customSizedDelim:rV,leftRightDelim:L4t},oG={"\\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}},D4t=["(","\\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(H4,"checkDelimiter");Ce({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((e,t)=>{var r=H4(t[0],e);return{type:"delimsizing",mode:e.parser.mode,size:oG[e.funcName].size,mclass:oG[e.funcName].mclass,delim:r.text}},"handler"),htmlBuilder:o((e,t)=>e.delim==="."?Bt.makeSpan([e.mclass]):hu.sizedDelim(e.delim,e.size,t,e.mode,[e.mclass]),"htmlBuilder"),mathmlBuilder:o(e=>{var t=[];e.delim!=="."&&t.push(Ro(e.delim,e.mode));var r=new se.MathNode("mo",t);e.mclass==="mopen"||e.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=ve(hu.sizeToMaxHeight[e.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r},"mathmlBuilder")});o(lG,"assertParsed");Ce({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:o((e,t)=>{var r=e.parser.gullet.macros.get("\\current@color");if(r&&typeof r!="string")throw new ue("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:e.parser.mode,delim:H4(t[0],e).text,color:r}},"handler")});Ce({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:o((e,t)=>{var r=H4(t[0],e),n=e.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=mr(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:i,left:r.text,right:a.delim,rightColor:a.color}},"handler"),htmlBuilder:o((e,t)=>{lG(e);for(var r=Oi(e.body,t,!0,["mopen","mclose"]),n=0,i=0,a=!1,s=0;s{lG(e);var r=bs(e.body,t);if(e.left!=="."){var n=new se.MathNode("mo",[Ro(e.left,e.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(e.right!=="."){var i=new se.MathNode("mo",[Ro(e.right,e.mode)]);i.setAttribute("fence","true"),e.rightColor&&i.setAttribute("mathcolor",e.rightColor),r.push(i)}return T7(r)},"mathmlBuilder")});Ce({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:o((e,t)=>{var r=H4(t[0],e);if(!e.parser.leftrightDepth)throw new ue("\\middle without preceding \\left",r);return{type:"middle",mode:e.parser.mode,delim:r.text}},"handler"),htmlBuilder:o((e,t)=>{var r;if(e.delim===".")r=yy(t,[]);else{r=hu.sizedDelim(e.delim,1,t,e.mode,[]);var n={delim:e.delim,options:t};r.isMiddle=n}return r},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=e.delim==="\\vert"||e.delim==="|"?Ro("|","text"):Ro(e.delim,e.mode),n=new se.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n},"mathmlBuilder")});A7=o((e,t)=>{var r=Bt.wrapFragment(Or(e.body,t),t),n=e.label.slice(1),i=t.sizeMultiplier,a,s=0,l=tr.isCharacterBox(e.body);if(n==="sout")a=Bt.makeSpan(["stretchy","sout"]),a.height=t.fontMetrics().defaultRuleThickness/i,s=-.5*t.fontMetrics().xHeight;else if(n==="phase"){var u=Zn({number:.6,unit:"pt"},t),h=Zn({number:.35,unit:"ex"},t),f=t.havingBaseSizing();i=i/f.sizeMultiplier;var d=r.height+r.depth+u+h;r.style.paddingLeft=ve(d/2+u);var p=Math.floor(1e3*d*i),m=Cbt(p),g=new dl([new sc("phase",m)],{width:"400em",height:ve(p/1e3),viewBox:"0 0 400000 "+p,preserveAspectRatio:"xMinYMin slice"});a=Bt.makeSvgSpan(["hide-tail"],[g],t),a.style.height=ve(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(t.fontMetrics().fboxrule,t.minRuleThickness),y=t.fontMetrics().fboxsep+(n==="colorbox"?0:x),v=y):n==="angl"?(x=Math.max(t.fontMetrics().defaultRuleThickness,t.minRuleThickness),y=4*x,v=Math.max(0,.25-r.depth)):(y=l?.2:0,v=y),a=du.encloseSpan(r,n,y,v,t),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=ve(x)):n==="angl"&&x!==.049&&(a.style.borderTopWidth=ve(x),a.style.borderRightWidth=ve(x)),s=r.depth+v,e.backgroundColor&&(a.style.backgroundColor=e.backgroundColor,e.borderColor&&(a.style.borderColor=e.borderColor))}var b;if(e.backgroundColor)b=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:a,shift:s},{type:"elem",elem:r,shift:0}]},t);else{var w=/cancel|phase/.test(n)?["svg-align"]:[];b=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:0},{type:"elem",elem:a,shift:s,wrapperClasses:w}]},t)}return/cancel/.test(n)&&(b.height=r.height,b.depth=r.depth),/cancel/.test(n)&&!l?Bt.makeSpan(["mord","cancel-lap"],[b],t):Bt.makeSpan(["mord"],[b],t)},"htmlBuilder$7"),_7=o((e,t)=>{var r=0,n=new se.MathNode(e.label.indexOf("colorbox")>-1?"mpadded":"menclose",[yn(e.body,t)]);switch(e.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=t.fontMetrics().fboxsep*t.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),e.label==="\\fcolorbox"){var i=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness);n.setAttribute("style","border: "+i+"em solid "+String(e.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return e.backgroundColor&&n.setAttribute("mathbackground",e.backgroundColor),n},"mathmlBuilder$6");Ce({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(e,t,r){var{parser:n,funcName:i}=e,a=mr(t[0],"color-token").color,s=t[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:s}},htmlBuilder:A7,mathmlBuilder:_7});Ce({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(e,t,r){var{parser:n,funcName:i}=e,a=mr(t[0],"color-token").color,s=mr(t[1],"color-token").color,l=t[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:s,borderColor:a,body:l}},htmlBuilder:A7,mathmlBuilder:_7});Ce({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(e,t){var{parser:r}=e;return{type:"enclose",mode:r.mode,label:"\\fbox",body:t[0]}}});Ce({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(e,t){var{parser:r,funcName:n}=e,i=t[0];return{type:"enclose",mode:r.mode,label:n,body:i}},htmlBuilder:A7,mathmlBuilder:_7});Ce({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(e,t){var{parser:r}=e;return{type:"enclose",mode:r.mode,label:"\\angl",body:t[0]}}});nV={};o(oc,"defineEnvironment");iV={};o(lt,"defineMacro");o(cG,"getHLines");W4=o(e=>{var t=e.parser.settings;if(!t.displayMode)throw new ue("{"+e.envName+"} can be used only in display mode.")},"validateAmsEnvironmentContext");o(L7,"getAutoTag");o(gh,"parseArray");o(D7,"dCellStyle");lc=o(function(t,r){var n,i,a=t.body.length,s=t.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(t.colSeparationType&&t.colSeparationType==="small"){var m=r.havingStyle(rr.SCRIPT).sizeMultiplier;p=.2778*(m/r.sizeMultiplier)}var g=t.colSeparationType==="CD"?Zn({number:3,unit:"ex"},r):12*d,y=3*d,v=t.arraystretch*g,x=.7*v,b=.3*v,w=0;function S(wt){for(var Ot=0;Ot0&&(w+=.25),h.push({pos:w,isDashed:wt[Ot]})}for(o(S,"setHLinePos"),S(s[0]),n=0;n0&&(N+=b,_wt))for(n=0;n=l)){var J=void 0;(i>0||t.hskipBeforeAndAfter)&&(J=tr.deflt(W.pregap,p),J!==0&&(O=Bt.makeSpan(["arraycolsep"],[]),O.style.width=ve(J),C.push(O)));var Z=[];for(n=0;n0){for(var ot=Bt.makeLineSpan("hline",r,f),ct=Bt.makeLineSpan("hdashline",r,f),ut=[{type:"elem",elem:u,shift:0}];h.length>0;){var et=h.pop(),Mt=et.pos-k;et.isDashed?ut.push({type:"elem",elem:ct,shift:Mt}):ut.push({type:"elem",elem:ot,shift:Mt})}u=Bt.makeVList({positionType:"individualShift",children:ut},r)}if(P.length===0)return Bt.makeSpan(["mord"],[u],r);var it=Bt.makeVList({positionType:"individualShift",children:P},r);return it=Bt.makeSpan(["tag"],[it],r),Bt.makeFragment([u,it])},"htmlBuilder"),R4t={c:"center ",l:"left ",r:"right "},cc=o(function(t,r){for(var n=[],i=new se.MathNode("mtd",[],["mtr-glue"]),a=new se.MathNode("mtd",[],["mml-eqn-num"]),s=0;s0){var g=t.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+=A[A.length-1].length>0?"right ":"";for(var L=1;L-1?"alignat":"align",a=t.envName==="split",s=gh(t.parser,{cols:n,addJot:!0,autoTag:a?void 0:L7(t.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:a?2:void 0,leqno:t.parser.settings.leqno},"display"),l,u=0,h={type:"ordgroup",mode:t.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");oc({type:"array",names:["array","darray"],props:{numArgs:1},handler(e,t){var r=V4(t[0]),n=r?[t[0]]:mr(t[0],"ordgroup").body,i=n.map(function(s){var l=E7(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 ue("Unknown column alignment: "+u,s)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return gh(e.parser,a,D7(e.envName))},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(e){var t={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[e.envName.replace("*","")],r="c",n={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if(e.envName.charAt(e.envName.length-1)==="*"){var i=e.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,"lcr".indexOf(r)===-1)throw new ue("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=gh(e.parser,n,D7(e.envName)),s=Math.max(0,...a.body.map(l=>l.length));return a.cols=new Array(s).fill({type:"align",align:r}),t?{type:"leftright",mode:e.mode,body:[a],left:t[0],right:t[1],rightColor:void 0}:a},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(e){var t={arraystretch:.5},r=gh(e.parser,t,"script");return r.colSeparationType="small",r},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["subarray"],props:{numArgs:1},handler(e,t){var r=V4(t[0]),n=r?[t[0]]:mr(t[0],"ordgroup").body,i=n.map(function(s){var l=E7(s),u=l.text;if("lc".indexOf(u)!==-1)return{type:"align",align:u};throw new ue("Unknown column alignment: "+u,s)});if(i.length>1)throw new ue("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5};if(a=gh(e.parser,a,"script"),a.body.length>0&&a.body[0].length>1)throw new ue("{subarray} can contain only one column");return a},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(e){var t={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},r=gh(e.parser,t,D7(e.envName));return{type:"leftright",mode:e.mode,body:[r],left:e.envName.indexOf("r")>-1?".":"\\{",right:e.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:aV,htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(e){tr.contains(["gather","gather*"],e.envName)&&W4(e);var t={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:L7(e.envName),emptySingleRow:!0,leqno:e.parser.settings.leqno};return gh(e.parser,t,"display")},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:aV,htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(e){W4(e);var t={autoTag:L7(e.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:e.parser.settings.leqno};return gh(e.parser,t,"display")},htmlBuilder:lc,mathmlBuilder:cc});oc({type:"array",names:["CD"],props:{numArgs:0},handler(e){return W4(e),y4t(e.parser)},htmlBuilder:lc,mathmlBuilder:cc});lt("\\nonumber","\\gdef\\@eqnsw{0}");lt("\\notag","\\nonumber");Ce({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(e,t){throw new ue(e.funcName+" valid only within array environment")}});uG=nV;Ce({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(e,t){var{parser:r,funcName:n}=e,i=t[0];if(i.type!=="ordgroup")throw new ue("Invalid environment name",i);for(var a="",s=0;s{var r=e.font,n=t.withFont(r);return Or(e.body,n)},"htmlBuilder$5"),oV=o((e,t)=>{var r=e.font,n=t.withFont(r);return yn(e.body,n)},"mathmlBuilder$4"),hG={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};Ce({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=B4(t[0]),a=n;return a in hG&&(a=hG[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},"handler"),htmlBuilder:sV,mathmlBuilder:oV});Ce({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:o((e,t)=>{var{parser:r}=e,n=t[0],i=tr.isCharacterBox(n);return{type:"mclass",mode:r.mode,mclass:U4(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:i}},"handler")});Ce({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:o((e,t)=>{var{parser:r,funcName:n,breakOnTokenText:i}=e,{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:sV,mathmlBuilder:oV});lV=o((e,t)=>{var r=t;return e==="display"?r=r.id>=rr.SCRIPT.id?r.text():rr.DISPLAY:e==="text"&&r.size===rr.DISPLAY.size?r=rr.TEXT:e==="script"?r=rr.SCRIPT:e==="scriptscript"&&(r=rr.SCRIPTSCRIPT),r},"adjustStyle"),R7=o((e,t)=>{var r=lV(e.size,t.style),n=r.fracNum(),i=r.fracDen(),a;a=t.havingStyle(n);var s=Or(e.numer,a,t);if(e.continued){var l=8.5/t.fontMetrics().ptPerEm,u=3.5/t.fontMetrics().ptPerEm;s.height=s.height0?g=3*p:g=7*p,y=t.fontMetrics().denom1):(d>0?(m=t.fontMetrics().num2,g=p):(m=t.fontMetrics().num3,g=3*p),y=t.fontMetrics().denom2);var v;if(f){var b=t.fontMetrics().axisHeight;m-s.depth-(b+.5*d){var r=new se.MathNode("mfrac",[yn(e.numer,t),yn(e.denom,t)]);if(!e.hasBarLine)r.setAttribute("linethickness","0px");else if(e.barSize){var n=Zn(e.barSize,t);r.setAttribute("linethickness",ve(n))}var i=lV(e.size,t.style);if(i.size!==t.style.size){r=new se.MathNode("mstyle",[r]);var a=i.size===rr.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",a),r.setAttribute("scriptlevel","0")}if(e.leftDelim!=null||e.rightDelim!=null){var s=[];if(e.leftDelim!=null){var l=new se.MathNode("mo",[new se.TextNode(e.leftDelim.replace("\\",""))]);l.setAttribute("fence","true"),s.push(l)}if(s.push(r),e.rightDelim!=null){var u=new se.MathNode("mo",[new se.TextNode(e.rightDelim.replace("\\",""))]);u.setAttribute("fence","true"),s.push(u)}return T7(s)}return r},"mathmlBuilder$3");Ce({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0],a=t[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:R7,mathmlBuilder:N7});Ce({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0],a=t[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:i,denom:a,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}},"handler")});Ce({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(e){var{parser:t,funcName:r,token:n}=e,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:t.mode,replaceWith:i,token:n}}});fG=["display","text","script","scriptscript"],dG=o(function(t){var r=null;return t.length>0&&(r=t,r=r==="."?null:r),r},"delimFromValue");Ce({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(e,t){var{parser:r}=e,n=t[4],i=t[5],a=B4(t[0]),s=a.type==="atom"&&a.family==="open"?dG(a.text):null,l=B4(t[1]),u=l.type==="atom"&&l.family==="close"?dG(l.text):null,h=mr(t[2],"size"),f,d=null;h.isBlank?f=!0:(d=h.value,f=d.number>0);var p="auto",m=t[3];if(m.type==="ordgroup"){if(m.body.length>0){var g=mr(m.body[0],"textord");p=fG[Number(g.text)]}}else m=mr(m,"textord"),p=fG[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:R7,mathmlBuilder:N7});Ce({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(e,t){var{parser:r,funcName:n,token:i}=e;return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:mr(t[0],"size").value,token:i}}});Ce({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0],a=ubt(mr(t[1],"infix").size),s=t[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:R7,mathmlBuilder:N7});cV=o((e,t)=>{var r=t.style,n,i;e.type==="supsub"?(n=e.sup?Or(e.sup,t.havingStyle(r.sup()),t):Or(e.sub,t.havingStyle(r.sub()),t),i=mr(e.base,"horizBrace")):i=mr(e,"horizBrace");var a=Or(i.base,t.havingBaseStyle(rr.DISPLAY)),s=du.svgSpan(i,t),l;if(i.isOver?(l=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:.1},{type:"elem",elem:s}]},t),l.children[0].children[0].children[1].classes.push("svg-align")):(l=Bt.makeVList({positionType:"bottom",positionData:a.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:a}]},t),l.children[0].children[0].children[0].classes.push("svg-align")),n){var u=Bt.makeSpan(["mord",i.isOver?"mover":"munder"],[l],t);i.isOver?l=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:.2},{type:"elem",elem:n}]},t):l=Bt.makeVList({positionType:"bottom",positionData:u.depth+.2+n.height+n.depth,children:[{type:"elem",elem:n},{type:"kern",size:.2},{type:"elem",elem:u}]},t)}return Bt.makeSpan(["mord",i.isOver?"mover":"munder"],[l],t)},"htmlBuilder$3"),N4t=o((e,t)=>{var r=du.mathMLnode(e.label);return new se.MathNode(e.isOver?"mover":"munder",[yn(e.base,t),r])},"mathmlBuilder$2");Ce({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(e,t){var{parser:r,funcName:n}=e;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:t[0]}},htmlBuilder:cV,mathmlBuilder:N4t});Ce({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[1],i=mr(t[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:mi(n)}:r.formatUnsupportedCmd("\\href")},"handler"),htmlBuilder:o((e,t)=>{var r=Oi(e.body,t,!1);return Bt.makeAnchor(e.href,[],r,t)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=mh(e.body,t);return r instanceof vs||(r=new vs("mrow",[r])),r.setAttribute("href",e.href),r},"mathmlBuilder")});Ce({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=mr(t[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}=e,a=mr(t[0],"raw").string,s=t[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=Oi(e.body,t,!1),n=["enclosing"];e.attributes.class&&n.push(...e.attributes.class.trim().split(/\s+/));var i=Bt.makeSpan(n,r,t);for(var a in e.attributes)a!=="class"&&e.attributes.hasOwnProperty(a)&&i.setAttribute(a,e.attributes[a]);return i},"htmlBuilder"),mathmlBuilder:o((e,t)=>mh(e.body,t),"mathmlBuilder")});Ce({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e;return{type:"htmlmathml",mode:r.mode,html:mi(t[0]),mathml:mi(t[1])}},"handler"),htmlBuilder:o((e,t)=>{var r=Oi(e.html,t,!1);return Bt.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((e,t)=>mh(e.mathml,t),"mathmlBuilder")});n7=o(function(t){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(t))return{number:+t,unit:"bp"};var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(t);if(!r)throw new ue("Invalid size: '"+t+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!_G(n))throw new ue("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n},"sizeData");Ce({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:o((e,t,r)=>{var{parser:n}=e,i={number:0,unit:"em"},a={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(r[0])for(var u=mr(r[0],"raw").string,h=u.split(","),f=0;f{var r=Zn(e.height,t),n=0;e.totalheight.number>0&&(n=Zn(e.totalheight,t)-r);var i=0;e.width.number>0&&(i=Zn(e.width,t));var a={height:ve(r+n)};i>0&&(a.width=ve(i)),n>0&&(a.verticalAlign=ve(-n));var s=new c7(e.src,e.alt,a);return s.height=r,s.depth=n,s},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=new se.MathNode("mglyph",[]);r.setAttribute("alt",e.alt);var n=Zn(e.height,t),i=0;if(e.totalheight.number>0&&(i=Zn(e.totalheight,t)-n,r.setAttribute("valign",ve(-i))),r.setAttribute("height",ve(n+i)),e.width.number>0){var a=Zn(e.width,t);r.setAttribute("width",ve(a))}return r.setAttribute("src",e.src),r},"mathmlBuilder")});Ce({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(e,t){var{parser:r,funcName:n}=e,i=mr(t[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(e,t){return Bt.makeGlue(e.dimension,t)},mathmlBuilder(e,t){var r=Zn(e.dimension,t);return new se.SpaceNode(r)}});Ce({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:i}},"handler"),htmlBuilder:o((e,t)=>{var r;e.alignment==="clap"?(r=Bt.makeSpan([],[Or(e.body,t)]),r=Bt.makeSpan(["inner"],[r],t)):r=Bt.makeSpan(["inner"],[Or(e.body,t)]);var n=Bt.makeSpan(["fix"],[]),i=Bt.makeSpan([e.alignment],[r,n],t),a=Bt.makeSpan(["strut"]);return a.style.height=ve(i.height+i.depth),i.depth&&(a.style.verticalAlign=ve(-i.depth)),i.children.unshift(a),i=Bt.makeSpan(["thinbox"],[i],t),Bt.makeSpan(["mord","vbox"],[i],t)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=new se.MathNode("mpadded",[yn(e.body,t)]);if(e.alignment!=="rlap"){var n=e.alignment==="llap"?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r},"mathmlBuilder")});Ce({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(e,t){var{funcName:r,parser:n}=e,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}}});Ce({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(e,t){throw new ue("Mismatched "+e.funcName)}});pG=o((e,t)=>{switch(t.style.size){case rr.DISPLAY.size:return e.display;case rr.TEXT.size:return e.text;case rr.SCRIPT.size:return e.script;case rr.SCRIPTSCRIPT.size:return e.scriptscript;default:return e.text}},"chooseMathStyle");Ce({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:o((e,t)=>{var{parser:r}=e;return{type:"mathchoice",mode:r.mode,display:mi(t[0]),text:mi(t[1]),script:mi(t[2]),scriptscript:mi(t[3])}},"handler"),htmlBuilder:o((e,t)=>{var r=pG(e,t),n=Oi(r,t,!1);return Bt.makeFragment(n)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=pG(e,t);return mh(r,t)},"mathmlBuilder")});uV=o((e,t,r,n,i,a,s)=>{e=Bt.makeSpan([],[e]);var l=r&&tr.isCharacterBox(r),u,h;if(t){var f=Or(t,n.havingStyle(i.sup()),n);h={elem:f,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-f.depth)}}if(r){var d=Or(r,n.havingStyle(i.sub()),n);u={elem:d,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-d.height)}}var p;if(h&&u){var m=n.fontMetrics().bigOpSpacing5+u.elem.height+u.elem.depth+u.kern+e.depth+s;p=Bt.makeVList({positionType:"bottom",positionData:m,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:ve(-a)},{type:"kern",size:u.kern},{type:"elem",elem:e},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:ve(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(u){var g=e.height-s;p=Bt.makeVList({positionType:"top",positionData:g,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:ve(-a)},{type:"kern",size:u.kern},{type:"elem",elem:e}]},n)}else if(h){var y=e.depth+s;p=Bt.makeVList({positionType:"bottom",positionData:y,children:[{type:"elem",elem:e},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:ve(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else return e;var v=[p];if(u&&a!==0&&!l){var x=Bt.makeSpan(["mspace"],[],n);x.style.marginRight=ve(a),v.unshift(x)}return Bt.makeSpan(["mop","op-limits"],v,n)},"assembleSupSub"),hV=["\\smallint"],Ap=o((e,t)=>{var r,n,i=!1,a;e.type==="supsub"?(r=e.sup,n=e.sub,a=mr(e.base,"op"),i=!0):a=mr(e,"op");var s=t.style,l=!1;s.size===rr.DISPLAY.size&&a.symbol&&!tr.contains(hV,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=Bt.makeSymbol(a.name,h,"math",t,["mop","op-symbol",l?"large-op":"small-op"]),f.length>0){var d=u.italic,p=Bt.staticSvg(f+"Size"+(l?"2":"1"),t);u=Bt.makeVList({positionType:"individualShift",children:[{type:"elem",elem:u,shift:0},{type:"elem",elem:p,shift:l?.08:0}]},t),a.name="\\"+f,u.classes.unshift("mop"),u.italic=d}}else if(a.body){var m=Oi(a.body,t,!0);m.length===1&&m[0]instanceof xs?(u=m[0],u.classes[0]="mop"):u=Bt.makeSpan(["mop"],m,t)}else{for(var g=[],y=1;y{var r;if(e.symbol)r=new vs("mo",[Ro(e.name,e.mode)]),tr.contains(hV,e.name)&&r.setAttribute("largeop","false");else if(e.body)r=new vs("mo",bs(e.body,t));else{r=new vs("mi",[new Zf(e.name.slice(1))]);var n=new vs("mo",[Ro("\u2061","text")]);e.parentIsSupSub?r=new vs("mrow",[r,n]):r=zG([r,n])}return r},"mathmlBuilder$1"),M4t={"\u220F":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22C0":"\\bigwedge","\u22C1":"\\bigvee","\u22C2":"\\bigcap","\u22C3":"\\bigcup","\u2A00":"\\bigodot","\u2A01":"\\bigoplus","\u2A02":"\\bigotimes","\u2A04":"\\biguplus","\u2A06":"\\bigsqcup"};Ce({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((e,t)=>{var{parser:r,funcName:n}=e,i=n;return i.length===1&&(i=M4t[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},"handler"),htmlBuilder:Ap,mathmlBuilder:vy});Ce({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:mi(n)}},"handler"),htmlBuilder:Ap,mathmlBuilder:vy});I4t={"\u222B":"\\int","\u222C":"\\iint","\u222D":"\\iiint","\u222E":"\\oint","\u222F":"\\oiint","\u2230":"\\oiiint"};Ce({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(e){var{parser:t,funcName:r}=e;return{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:Ap,mathmlBuilder:vy});Ce({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(e){var{parser:t,funcName:r}=e;return{type:"op",mode:t.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:Ap,mathmlBuilder:vy});Ce({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222B","\u222C","\u222D","\u222E","\u222F","\u2230"],props:{numArgs:0},handler(e){var{parser:t,funcName:r}=e,n=r;return n.length===1&&(n=I4t[n]),{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:Ap,mathmlBuilder:vy});fV=o((e,t)=>{var r,n,i=!1,a;e.type==="supsub"?(r=e.sup,n=e.sub,a=mr(e.base,"operatorname"),i=!0):a=mr(e,"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=Oi(l,t.withFont("mathrm"),!0),h=0;h{for(var r=bs(e.body,t.withFont("mathrm")),n=!0,i=0;if.toText()).join("");r=[new se.TextNode(l)]}var u=new se.MathNode("mi",r);u.setAttribute("mathvariant","normal");var h=new se.MathNode("mo",[Ro("\u2061","text")]);return e.parentIsSupSub?new se.MathNode("mrow",[u,h]):se.newDocumentFragment([u,h])},"mathmlBuilder");Ce({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:o((e,t)=>{var{parser:r,funcName:n}=e,i=t[0];return{type:"operatorname",mode:r.mode,body:mi(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},"handler"),htmlBuilder:fV,mathmlBuilder:O4t});lt("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");ed({type:"ordgroup",htmlBuilder(e,t){return e.semisimple?Bt.makeFragment(Oi(e.body,t,!1)):Bt.makeSpan(["mord"],Oi(e.body,t,!0),t)},mathmlBuilder(e,t){return mh(e.body,t,!0)}});Ce({type:"overline",names:["\\overline"],props:{numArgs:1},handler(e,t){var{parser:r}=e,n=t[0];return{type:"overline",mode:r.mode,body:n}},htmlBuilder(e,t){var r=Or(e.body,t.havingCrampedStyle()),n=Bt.makeLineSpan("overline-line",t),i=t.fontMetrics().defaultRuleThickness,a=Bt.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]},t);return Bt.makeSpan(["mord","overline"],[a],t)},mathmlBuilder(e,t){var r=new se.MathNode("mo",[new se.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new se.MathNode("mover",[yn(e.body,t),r]);return n.setAttribute("accent","true"),n}});Ce({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[0];return{type:"phantom",mode:r.mode,body:mi(n)}},"handler"),htmlBuilder:o((e,t)=>{var r=Oi(e.body,t.withPhantom(),!1);return Bt.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=bs(e.body,t);return new se.MathNode("mphantom",r)},"mathmlBuilder")});Ce({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[0];return{type:"hphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((e,t)=>{var r=Bt.makeSpan([],[Or(e.body,t.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n{var r=bs(mi(e.body),t),n=new se.MathNode("mphantom",r),i=new se.MathNode("mpadded",[n]);return i.setAttribute("height","0px"),i.setAttribute("depth","0px"),i},"mathmlBuilder")});Ce({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:o((e,t)=>{var{parser:r}=e,n=t[0];return{type:"vphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((e,t)=>{var r=Bt.makeSpan(["inner"],[Or(e.body,t.withPhantom())]),n=Bt.makeSpan(["fix"],[]);return Bt.makeSpan(["mord","rlap"],[r,n],t)},"htmlBuilder"),mathmlBuilder:o((e,t)=>{var r=bs(mi(e.body),t),n=new se.MathNode("mphantom",r),i=new se.MathNode("mpadded",[n]);return i.setAttribute("width","0px"),i},"mathmlBuilder")});Ce({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(e,t){var{parser:r}=e,n=mr(t[0],"size").value,i=t[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(e,t){var r=Or(e.body,t),n=Zn(e.dy,t);return Bt.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},t)},mathmlBuilder(e,t){var r=new se.MathNode("mpadded",[yn(e.body,t)]),n=e.dy.number+e.dy.unit;return r.setAttribute("voffset",n),r}});Ce({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler(e){var{parser:t}=e;return{type:"internal",mode:t.mode}}});Ce({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,argTypes:["size","size","size"]},handler(e,t,r){var{parser:n}=e,i=r[0],a=mr(t[0],"size"),s=mr(t[1],"size");return{type:"rule",mode:n.mode,shift:i&&mr(i,"size").value,width:a.value,height:s.value}},htmlBuilder(e,t){var r=Bt.makeSpan(["mord","rule"],[],t),n=Zn(e.width,t),i=Zn(e.height,t),a=e.shift?Zn(e.shift,t):0;return r.style.borderRightWidth=ve(n),r.style.borderTopWidth=ve(i),r.style.bottom=ve(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*t.sizeMultiplier,r},mathmlBuilder(e,t){var r=Zn(e.width,t),n=Zn(e.height,t),i=e.shift?Zn(e.shift,t):0,a=t.color&&t.getColor()||"black",s=new se.MathNode("mspace");s.setAttribute("mathbackground",a),s.setAttribute("width",ve(r)),s.setAttribute("height",ve(n));var l=new se.MathNode("mpadded",[s]);return i>=0?l.setAttribute("height",ve(i)):(l.setAttribute("height",ve(i)),l.setAttribute("depth",ve(-i))),l.setAttribute("voffset",ve(i)),l}});o(dV,"sizingGroup");mG=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],P4t=o((e,t)=>{var r=t.havingSize(e.size);return dV(e.body,r,t)},"htmlBuilder");Ce({type:"sizing",names:mG,props:{numArgs:0,allowedInText:!0},handler:o((e,t)=>{var{breakOnTokenText:r,funcName:n,parser:i}=e,a=i.parseExpression(!1,r);return{type:"sizing",mode:i.mode,size:mG.indexOf(n)+1,body:a}},"handler"),htmlBuilder:P4t,mathmlBuilder:o((e,t)=>{var r=t.havingSize(e.size),n=bs(e.body,r),i=new se.MathNode("mstyle",n);return i.setAttribute("mathsize",ve(r.sizeMultiplier)),i},"mathmlBuilder")});Ce({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:o((e,t,r)=>{var{parser:n}=e,i=!1,a=!1,s=r[0]&&mr(r[0],"ordgroup");if(s)for(var l="",u=0;u{var r=Bt.makeSpan([],[Or(e.body,t)]);if(!e.smashHeight&&!e.smashDepth)return r;if(e.smashHeight&&(r.height=0,r.children))for(var n=0;n{var r=new se.MathNode("mpadded",[yn(e.body,t)]);return e.smashHeight&&r.setAttribute("height","0px"),e.smashDepth&&r.setAttribute("depth","0px"),r},"mathmlBuilder")});Ce({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(e,t,r){var{parser:n}=e,i=r[0],a=t[0];return{type:"sqrt",mode:n.mode,body:a,index:i}},htmlBuilder(e,t){var r=Or(e.body,t.havingCrampedStyle());r.height===0&&(r.height=t.fontMetrics().xHeight),r=Bt.wrapFragment(r,t);var n=t.fontMetrics(),i=n.defaultRuleThickness,a=i;t.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=ve(f);var m=Bt.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}]},t);if(e.index){var g=t.havingStyle(rr.SCRIPTSCRIPT),y=Or(e.index,g,t),v=.6*(m.height-m.depth),x=Bt.makeVList({positionType:"shift",positionData:-v,children:[{type:"elem",elem:y}]},t),b=Bt.makeSpan(["root"],[x]);return Bt.makeSpan(["mord","sqrt"],[b,m],t)}else return Bt.makeSpan(["mord","sqrt"],[m],t)},mathmlBuilder(e,t){var{body:r,index:n}=e;return n?new se.MathNode("mroot",[yn(r,t),yn(n,t)]):new se.MathNode("msqrt",[yn(r,t)])}});gG={display:rr.DISPLAY,text:rr.TEXT,script:rr.SCRIPT,scriptscript:rr.SCRIPTSCRIPT};Ce({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e,t){var{breakOnTokenText:r,funcName:n,parser:i}=e,a=i.parseExpression(!0,r),s=n.slice(1,n.length-5);return{type:"styling",mode:i.mode,style:s,body:a}},htmlBuilder(e,t){var r=gG[e.style],n=t.havingStyle(r).withFont("");return dV(e.body,n,t)},mathmlBuilder(e,t){var r=gG[e.style],n=t.havingStyle(r),i=bs(e.body,n),a=new se.MathNode("mstyle",i),s={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},l=s[e.style];return a.setAttribute("scriptlevel",l[0]),a.setAttribute("displaystyle",l[1]),a}});B4t=o(function(t,r){var n=t.base;if(n)if(n.type==="op"){var i=n.limits&&(r.style.size===rr.DISPLAY.size||n.alwaysHandleSupSub);return i?Ap:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===rr.DISPLAY.size||n.limits);return a?fV:null}else{if(n.type==="accent")return tr.isCharacterBox(n.base)?C7:null;if(n.type==="horizBrace"){var s=!t.sub;return s===n.isOver?cV:null}else return null}else return null},"htmlBuilderDelegate");ed({type:"supsub",htmlBuilder(e,t){var r=B4t(e,t);if(r)return r(e,t);var{base:n,sup:i,sub:a}=e,s=Or(n,t),l,u,h=t.fontMetrics(),f=0,d=0,p=n&&tr.isCharacterBox(n);if(i){var m=t.havingStyle(t.style.sup());l=Or(i,m,t),p||(f=s.height-m.fontMetrics().supDrop*m.sizeMultiplier/t.sizeMultiplier)}if(a){var g=t.havingStyle(t.style.sub());u=Or(a,g,t),p||(d=s.depth+g.fontMetrics().subDrop*g.sizeMultiplier/t.sizeMultiplier)}var y;t.style===rr.DISPLAY?y=h.sup1:t.style.cramped?y=h.sup3:y=h.sup2;var v=t.sizeMultiplier,x=ve(.5/h.ptPerEm/v),b=null;if(u){var w=e.base&&e.base.type==="op"&&e.base.name&&(e.base.name==="\\oiint"||e.base.name==="\\oiiint");(s instanceof xs||w)&&(b=ve(-s.italic))}var S;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+=_,d-=_)}var A=[{type:"elem",elem:u,shift:d,marginRight:x,marginLeft:b},{type:"elem",elem:l,shift:-f,marginRight:x}];S=Bt.makeVList({positionType:"individualShift",children:A},t)}else if(u){d=Math.max(d,h.sub1,u.height-.8*h.xHeight);var L=[{type:"elem",elem:u,marginLeft:b,marginRight:x}];S=Bt.makeVList({positionType:"shift",positionData:d,children:L},t)}else if(l)f=Math.max(f,y,l.depth+.25*h.xHeight),S=Bt.makeVList({positionType:"shift",positionData:-f,children:[{type:"elem",elem:l,marginRight:x}]},t);else throw new Error("supsub must have either sup or sub.");var M=h7(s,"right")||"mord";return Bt.makeSpan([M],[s,Bt.makeSpan(["msupsub"],[S])],t)},mathmlBuilder(e,t){var r=!1,n,i;e.base&&e.base.type==="horizBrace"&&(i=!!e.sup,i===e.base.isOver&&(r=!0,n=e.base.isOver)),e.base&&(e.base.type==="op"||e.base.type==="operatorname")&&(e.base.parentIsSupSub=!0);var a=[yn(e.base,t)];e.sub&&a.push(yn(e.sub,t)),e.sup&&a.push(yn(e.sup,t));var s;if(r)s=n?"mover":"munder";else if(e.sub)if(e.sup){var h=e.base;h&&h.type==="op"&&h.limits&&t.style===rr.DISPLAY||h&&h.type==="operatorname"&&h.alwaysHandleSupSub&&(t.style===rr.DISPLAY||h.limits)?s="munderover":s="msubsup"}else{var u=e.base;u&&u.type==="op"&&u.limits&&(t.style===rr.DISPLAY||u.alwaysHandleSupSub)||u&&u.type==="operatorname"&&u.alwaysHandleSupSub&&(u.limits||t.style===rr.DISPLAY)?s="munder":s="msub"}else{var l=e.base;l&&l.type==="op"&&l.limits&&(t.style===rr.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||t.style===rr.DISPLAY)?s="mover":s="msup"}return new se.MathNode(s,a)}});ed({type:"atom",htmlBuilder(e,t){return Bt.mathsym(e.text,e.mode,t,["m"+e.family])},mathmlBuilder(e,t){var r=new se.MathNode("mo",[Ro(e.text,e.mode)]);if(e.family==="bin"){var n=k7(e,t);n==="bold-italic"&&r.setAttribute("mathvariant",n)}else e.family==="punct"?r.setAttribute("separator","true"):(e.family==="open"||e.family==="close")&&r.setAttribute("stretchy","false");return r}});pV={mi:"italic",mn:"normal",mtext:"normal"};ed({type:"mathord",htmlBuilder(e,t){return Bt.makeOrd(e,t,"mathord")},mathmlBuilder(e,t){var r=new se.MathNode("mi",[Ro(e.text,e.mode,t)]),n=k7(e,t)||"italic";return n!==pV[r.type]&&r.setAttribute("mathvariant",n),r}});ed({type:"textord",htmlBuilder(e,t){return Bt.makeOrd(e,t,"textord")},mathmlBuilder(e,t){var r=Ro(e.text,e.mode,t),n=k7(e,t)||"normal",i;return e.mode==="text"?i=new se.MathNode("mtext",[r]):/[0-9]/.test(e.text)?i=new se.MathNode("mn",[r]):e.text==="\\prime"?i=new se.MathNode("mo",[r]):i=new se.MathNode("mi",[r]),n!==pV[i.type]&&i.setAttribute("mathvariant",n),i}});i7={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},a7={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};ed({type:"spacing",htmlBuilder(e,t){if(a7.hasOwnProperty(e.text)){var r=a7[e.text].className||"";if(e.mode==="text"){var n=Bt.makeOrd(e,t,"textord");return n.classes.push(r),n}else return Bt.makeSpan(["mspace",r],[Bt.mathsym(e.text,e.mode,t)],t)}else{if(i7.hasOwnProperty(e.text))return Bt.makeSpan(["mspace",i7[e.text]],[],t);throw new ue('Unknown type of space "'+e.text+'"')}},mathmlBuilder(e,t){var r;if(a7.hasOwnProperty(e.text))r=new se.MathNode("mtext",[new se.TextNode("\xA0")]);else{if(i7.hasOwnProperty(e.text))return new se.MathNode("mspace");throw new ue('Unknown type of space "'+e.text+'"')}return r}});yG=o(()=>{var e=new se.MathNode("mtd",[]);return e.setAttribute("width","50%"),e},"pad");ed({type:"tag",mathmlBuilder(e,t){var r=new se.MathNode("mtable",[new se.MathNode("mtr",[yG(),new se.MathNode("mtd",[mh(e.body,t)]),yG(),new se.MathNode("mtd",[mh(e.tag,t)])])]);return r.setAttribute("width","100%"),r}});vG={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},xG={"\\textbf":"textbf","\\textmd":"textmd"},F4t={"\\textit":"textit","\\textup":"textup"},bG=o((e,t)=>{var r=e.font;if(r){if(vG[r])return t.withTextFontFamily(vG[r]);if(xG[r])return t.withTextFontWeight(xG[r]);if(r==="\\emph")return t.fontShape==="textit"?t.withTextFontShape("textup"):t.withTextFontShape("textit")}else return t;return t.withTextFontShape(F4t[r])},"optionsWithFont");Ce({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(e,t){var{parser:r,funcName:n}=e,i=t[0];return{type:"text",mode:r.mode,body:mi(i),font:n}},htmlBuilder(e,t){var r=bG(e,t),n=Oi(e.body,r,!0);return Bt.makeSpan(["mord","text"],n,r)},mathmlBuilder(e,t){var r=bG(e,t);return mh(e.body,r)}});Ce({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(e,t){var{parser:r}=e;return{type:"underline",mode:r.mode,body:t[0]}},htmlBuilder(e,t){var r=Or(e.body,t),n=Bt.makeLineSpan("underline-line",t),i=t.fontMetrics().defaultRuleThickness,a=Bt.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:i},{type:"elem",elem:n},{type:"kern",size:3*i},{type:"elem",elem:r}]},t);return Bt.makeSpan(["mord","underline"],[a],t)},mathmlBuilder(e,t){var r=new se.MathNode("mo",[new se.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new se.MathNode("munder",[yn(e.body,t),r]);return n.setAttribute("accentunder","true"),n}});Ce({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(e,t){var{parser:r}=e;return{type:"vcenter",mode:r.mode,body:t[0]}},htmlBuilder(e,t){var r=Or(e.body,t),n=t.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return Bt.makeVList({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]},t)},mathmlBuilder(e,t){return new se.MathNode("mpadded",[yn(e.body,t)],["vcenter"])}});Ce({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(e,t,r){throw new ue("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(e,t){for(var r=wG(e),n=[],i=t.havingStyle(t.style.text()),a=0;ae.body.replace(/ /g,e.star?"\u2423":"\xA0"),"makeVerb"),dh=BG,mV=`[ \r + ]`,z4t="\\\\[a-zA-Z@]+",$4t="\\\\[^\uD800-\uDFFF]",G4t="("+z4t+")"+mV+"*",V4t=`\\\\( +|[ \r ]+ +?)[ \r ]*`,g7="[\u0300-\u036F]",U4t=new RegExp(g7+"+$"),H4t="("+mV+"+)|"+(V4t+"|")+"([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]"+(g7+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(g7+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+G4t)+("|"+$4t+")"),F4=class{static{o(this,"Lexer")}constructor(t,r){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=t,this.settings=r,this.tokenRegex=new RegExp(H4t,"g"),this.catcodes={"%":14,"~":13}}setCatcode(t,r){this.catcodes[t]=r}lex(){var t=this.input,r=this.tokenRegex.lastIndex;if(r===t.length)return new Do("EOF",new Ks(this,r,r));var n=this.tokenRegex.exec(t);if(n===null||n.index!==r)throw new ue("Unexpected character: '"+t[r]+"'",new Do(t[r],new Ks(this,r,r+1)));var i=n[6]||n[3]||(n[2]?"\\ ":" ");if(this.catcodes[i]===14){var a=t.indexOf(` +`,this.tokenRegex.lastIndex);return a===-1?(this.tokenRegex.lastIndex=t.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 Do(i,new Ks(this,r,this.tokenRegex.lastIndex))}},y7=class{static{o(this,"Namespace")}constructor(t,r){t===void 0&&(t={}),r===void 0&&(r={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=r,this.builtins=t,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new ue("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var t=this.undefStack.pop();for(var r in t)t.hasOwnProperty(r)&&(t[r]==null?delete this.current[r]:this.current[r]=t[r])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(t){return this.current.hasOwnProperty(t)||this.builtins.hasOwnProperty(t)}get(t){return this.current.hasOwnProperty(t)?this.current[t]:this.builtins[t]}set(t,r,n){if(n===void 0&&(n=!1),n){for(var i=0;i0&&(this.undefStack[this.undefStack.length-1][t]=r)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(t)&&(a[t]=this.current[t])}r==null?delete this.current[t]:this.current[t]=r}},W4t=iV;lt("\\noexpand",function(e){var t=e.popToken();return e.isExpandable(t.text)&&(t.noexpand=!0,t.treatAsRelax=!0),{tokens:[t],numArgs:0}});lt("\\expandafter",function(e){var t=e.popToken();return e.expandOnce(!0),{tokens:[t],numArgs:0}});lt("\\@firstoftwo",function(e){var t=e.consumeArgs(2);return{tokens:t[0],numArgs:0}});lt("\\@secondoftwo",function(e){var t=e.consumeArgs(2);return{tokens:t[1],numArgs:0}});lt("\\@ifnextchar",function(e){var t=e.consumeArgs(3);e.consumeSpaces();var r=e.future();return t[0].length===1&&t[0][0].text===r.text?{tokens:t[1],numArgs:0}:{tokens:t[2],numArgs:0}});lt("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");lt("\\TextOrMath",function(e){var t=e.consumeArgs(2);return e.mode==="text"?{tokens:t[0],numArgs:0}:{tokens:t[1],numArgs:0}});TG={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};lt("\\char",function(e){var t=e.popToken(),r,n="";if(t.text==="'")r=8,t=e.popToken();else if(t.text==='"')r=16,t=e.popToken();else if(t.text==="`")if(t=e.popToken(),t.text[0]==="\\")n=t.text.charCodeAt(1);else{if(t.text==="EOF")throw new ue("\\char` missing argument");n=t.text.charCodeAt(0)}else r=10;if(r){if(n=TG[t.text],n==null||n>=r)throw new ue("Invalid base-"+r+" digit "+t.text);for(var i;(i=TG[e.future().text])!=null&&i{var n=e.consumeArg().tokens;if(n.length!==1)throw new ue("\\newcommand's first argument must be a macro name");var i=n[0].text,a=e.isDefined(i);if(a&&!t)throw new ue("\\newcommand{"+i+"} attempting to redefine "+(i+"; use \\renewcommand"));if(!a&&!r)throw new ue("\\renewcommand{"+i+"} when command "+i+" does not yet exist; use \\newcommand");var s=0;if(n=e.consumeArg().tokens,n.length===1&&n[0].text==="["){for(var l="",u=e.expandNextToken();u.text!=="]"&&u.text!=="EOF";)l+=u.text,u=e.expandNextToken();if(!l.match(/^\s*[0-9]+\s*$/))throw new ue("Invalid number of arguments: "+l);s=parseInt(l),n=e.consumeArg().tokens}return e.macros.set(i,{tokens:n,numArgs:s}),""},"newcommand");lt("\\newcommand",e=>M7(e,!1,!0));lt("\\renewcommand",e=>M7(e,!0,!1));lt("\\providecommand",e=>M7(e,!0,!0));lt("\\message",e=>{var t=e.consumeArgs(1)[0];return console.log(t.reverse().map(r=>r.text).join("")),""});lt("\\errmessage",e=>{var t=e.consumeArgs(1)[0];return console.error(t.reverse().map(r=>r.text).join("")),""});lt("\\show",e=>{var t=e.popToken(),r=t.text;return console.log(t,e.macros.get(r),dh[r],An.math[r],An.text[r]),""});lt("\\bgroup","{");lt("\\egroup","}");lt("~","\\nobreakspace");lt("\\lq","`");lt("\\rq","'");lt("\\aa","\\r a");lt("\\AA","\\r A");lt("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xA9}");lt("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");lt("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xAE}");lt("\u212C","\\mathscr{B}");lt("\u2130","\\mathscr{E}");lt("\u2131","\\mathscr{F}");lt("\u210B","\\mathscr{H}");lt("\u2110","\\mathscr{I}");lt("\u2112","\\mathscr{L}");lt("\u2133","\\mathscr{M}");lt("\u211B","\\mathscr{R}");lt("\u212D","\\mathfrak{C}");lt("\u210C","\\mathfrak{H}");lt("\u2128","\\mathfrak{Z}");lt("\\Bbbk","\\Bbb{k}");lt("\xB7","\\cdotp");lt("\\llap","\\mathllap{\\textrm{#1}}");lt("\\rlap","\\mathrlap{\\textrm{#1}}");lt("\\clap","\\mathclap{\\textrm{#1}}");lt("\\mathstrut","\\vphantom{(}");lt("\\underbar","\\underline{\\text{#1}}");lt("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}');lt("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}");lt("\\ne","\\neq");lt("\u2260","\\neq");lt("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}");lt("\u2209","\\notin");lt("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}");lt("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}");lt("\u225A","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}");lt("\u225B","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225B}}");lt("\u225D","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225D}}");lt("\u225E","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225E}}");lt("\u225F","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}");lt("\u27C2","\\perp");lt("\u203C","\\mathclose{!\\mkern-0.8mu!}");lt("\u220C","\\notni");lt("\u231C","\\ulcorner");lt("\u231D","\\urcorner");lt("\u231E","\\llcorner");lt("\u231F","\\lrcorner");lt("\xA9","\\copyright");lt("\xAE","\\textregistered");lt("\uFE0F","\\textregistered");lt("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');lt("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');lt("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');lt("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');lt("\\vdots","\\mathord{\\varvdots\\rule{0pt}{15pt}}");lt("\u22EE","\\vdots");lt("\\varGamma","\\mathit{\\Gamma}");lt("\\varDelta","\\mathit{\\Delta}");lt("\\varTheta","\\mathit{\\Theta}");lt("\\varLambda","\\mathit{\\Lambda}");lt("\\varXi","\\mathit{\\Xi}");lt("\\varPi","\\mathit{\\Pi}");lt("\\varSigma","\\mathit{\\Sigma}");lt("\\varUpsilon","\\mathit{\\Upsilon}");lt("\\varPhi","\\mathit{\\Phi}");lt("\\varPsi","\\mathit{\\Psi}");lt("\\varOmega","\\mathit{\\Omega}");lt("\\substack","\\begin{subarray}{c}#1\\end{subarray}");lt("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");lt("\\boxed","\\fbox{$\\displaystyle{#1}$}");lt("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");lt("\\implies","\\DOTSB\\;\\Longrightarrow\\;");lt("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");kG={",":"\\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"};lt("\\dots",function(e){var t="\\dotso",r=e.expandAfterFuture().text;return r in kG?t=kG[r]:(r.slice(0,4)==="\\not"||r in An.math&&tr.contains(["bin","rel"],An.math[r].group))&&(t="\\dotsb"),t});I7={")":!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};lt("\\dotso",function(e){var t=e.future().text;return t in I7?"\\ldots\\,":"\\ldots"});lt("\\dotsc",function(e){var t=e.future().text;return t in I7&&t!==","?"\\ldots\\,":"\\ldots"});lt("\\cdots",function(e){var t=e.future().text;return t in I7?"\\@cdots\\,":"\\@cdots"});lt("\\dotsb","\\cdots");lt("\\dotsm","\\cdots");lt("\\dotsi","\\!\\cdots");lt("\\dotsx","\\ldots\\,");lt("\\DOTSI","\\relax");lt("\\DOTSB","\\relax");lt("\\DOTSX","\\relax");lt("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");lt("\\,","\\tmspace+{3mu}{.1667em}");lt("\\thinspace","\\,");lt("\\>","\\mskip{4mu}");lt("\\:","\\tmspace+{4mu}{.2222em}");lt("\\medspace","\\:");lt("\\;","\\tmspace+{5mu}{.2777em}");lt("\\thickspace","\\;");lt("\\!","\\tmspace-{3mu}{.1667em}");lt("\\negthinspace","\\!");lt("\\negmedspace","\\tmspace-{4mu}{.2222em}");lt("\\negthickspace","\\tmspace-{5mu}{.277em}");lt("\\enspace","\\kern.5em ");lt("\\enskip","\\hskip.5em\\relax");lt("\\quad","\\hskip1em\\relax");lt("\\qquad","\\hskip2em\\relax");lt("\\tag","\\@ifstar\\tag@literal\\tag@paren");lt("\\tag@paren","\\tag@literal{({#1})}");lt("\\tag@literal",e=>{if(e.macros.get("\\df@tag"))throw new ue("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});lt("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");lt("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");lt("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");lt("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");lt("\\newline","\\\\\\relax");lt("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");gV=ve(ac["Main-Regular"][84][1]-.7*ac["Main-Regular"][65][1]);lt("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+gV+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");lt("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+gV+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");lt("\\hspace","\\@ifstar\\@hspacer\\@hspace");lt("\\@hspace","\\hskip #1\\relax");lt("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");lt("\\ordinarycolon",":");lt("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");lt("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');lt("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');lt("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');lt("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');lt("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');lt("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');lt("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');lt("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');lt("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');lt("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');lt("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');lt("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');lt("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');lt("\u2237","\\dblcolon");lt("\u2239","\\eqcolon");lt("\u2254","\\coloneqq");lt("\u2255","\\eqqcolon");lt("\u2A74","\\Coloneqq");lt("\\ratio","\\vcentcolon");lt("\\coloncolon","\\dblcolon");lt("\\colonequals","\\coloneqq");lt("\\coloncolonequals","\\Coloneqq");lt("\\equalscolon","\\eqqcolon");lt("\\equalscoloncolon","\\Eqqcolon");lt("\\colonminus","\\coloneq");lt("\\coloncolonminus","\\Coloneq");lt("\\minuscolon","\\eqcolon");lt("\\minuscoloncolon","\\Eqcolon");lt("\\coloncolonapprox","\\Colonapprox");lt("\\coloncolonsim","\\Colonsim");lt("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");lt("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");lt("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");lt("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");lt("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}");lt("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");lt("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");lt("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");lt("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");lt("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");lt("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");lt("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");lt("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");lt("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}");lt("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}");lt("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}");lt("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}");lt("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}");lt("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}");lt("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}");lt("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}");lt("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}");lt("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}");lt("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228A}");lt("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2ACB}");lt("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228B}");lt("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2ACC}");lt("\\imath","\\html@mathml{\\@imath}{\u0131}");lt("\\jmath","\\html@mathml{\\@jmath}{\u0237}");lt("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27E6}}");lt("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27E7}}");lt("\u27E6","\\llbracket");lt("\u27E7","\\rrbracket");lt("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}");lt("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}");lt("\u2983","\\lBrace");lt("\u2984","\\rBrace");lt("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29B5}}");lt("\u29B5","\\minuso");lt("\\darr","\\downarrow");lt("\\dArr","\\Downarrow");lt("\\Darr","\\Downarrow");lt("\\lang","\\langle");lt("\\rang","\\rangle");lt("\\uarr","\\uparrow");lt("\\uArr","\\Uparrow");lt("\\Uarr","\\Uparrow");lt("\\N","\\mathbb{N}");lt("\\R","\\mathbb{R}");lt("\\Z","\\mathbb{Z}");lt("\\alef","\\aleph");lt("\\alefsym","\\aleph");lt("\\Alpha","\\mathrm{A}");lt("\\Beta","\\mathrm{B}");lt("\\bull","\\bullet");lt("\\Chi","\\mathrm{X}");lt("\\clubs","\\clubsuit");lt("\\cnums","\\mathbb{C}");lt("\\Complex","\\mathbb{C}");lt("\\Dagger","\\ddagger");lt("\\diamonds","\\diamondsuit");lt("\\empty","\\emptyset");lt("\\Epsilon","\\mathrm{E}");lt("\\Eta","\\mathrm{H}");lt("\\exist","\\exists");lt("\\harr","\\leftrightarrow");lt("\\hArr","\\Leftrightarrow");lt("\\Harr","\\Leftrightarrow");lt("\\hearts","\\heartsuit");lt("\\image","\\Im");lt("\\infin","\\infty");lt("\\Iota","\\mathrm{I}");lt("\\isin","\\in");lt("\\Kappa","\\mathrm{K}");lt("\\larr","\\leftarrow");lt("\\lArr","\\Leftarrow");lt("\\Larr","\\Leftarrow");lt("\\lrarr","\\leftrightarrow");lt("\\lrArr","\\Leftrightarrow");lt("\\Lrarr","\\Leftrightarrow");lt("\\Mu","\\mathrm{M}");lt("\\natnums","\\mathbb{N}");lt("\\Nu","\\mathrm{N}");lt("\\Omicron","\\mathrm{O}");lt("\\plusmn","\\pm");lt("\\rarr","\\rightarrow");lt("\\rArr","\\Rightarrow");lt("\\Rarr","\\Rightarrow");lt("\\real","\\Re");lt("\\reals","\\mathbb{R}");lt("\\Reals","\\mathbb{R}");lt("\\Rho","\\mathrm{P}");lt("\\sdot","\\cdot");lt("\\sect","\\S");lt("\\spades","\\spadesuit");lt("\\sub","\\subset");lt("\\sube","\\subseteq");lt("\\supe","\\supseteq");lt("\\Tau","\\mathrm{T}");lt("\\thetasym","\\vartheta");lt("\\weierp","\\wp");lt("\\Zeta","\\mathrm{Z}");lt("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");lt("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");lt("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");lt("\\bra","\\mathinner{\\langle{#1}|}");lt("\\ket","\\mathinner{|{#1}\\rangle}");lt("\\braket","\\mathinner{\\langle{#1}\\rangle}");lt("\\Bra","\\left\\langle#1\\right|");lt("\\Ket","\\left|#1\\right\\rangle");yV=o(e=>t=>{var r=t.consumeArg().tokens,n=t.consumeArg().tokens,i=t.consumeArg().tokens,a=t.consumeArg().tokens,s=t.macros.get("|"),l=t.macros.get("\\|");t.macros.beginGroup();var u=o(d=>p=>{e&&(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");t.macros.set("|",u(!1)),i.length&&t.macros.set("\\|",u(!0));var h=t.consumeArg().tokens,f=t.expandTokens([...a,...h,...r]);return t.macros.endGroup(),{tokens:f.reverse(),numArgs:0}},"braketHelper");lt("\\bra@ket",yV(!1));lt("\\bra@set",yV(!0));lt("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");lt("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");lt("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");lt("\\angln","{\\angl n}");lt("\\blue","\\textcolor{##6495ed}{#1}");lt("\\orange","\\textcolor{##ffa500}{#1}");lt("\\pink","\\textcolor{##ff00af}{#1}");lt("\\red","\\textcolor{##df0030}{#1}");lt("\\green","\\textcolor{##28ae7b}{#1}");lt("\\gray","\\textcolor{gray}{#1}");lt("\\purple","\\textcolor{##9d38bd}{#1}");lt("\\blueA","\\textcolor{##ccfaff}{#1}");lt("\\blueB","\\textcolor{##80f6ff}{#1}");lt("\\blueC","\\textcolor{##63d9ea}{#1}");lt("\\blueD","\\textcolor{##11accd}{#1}");lt("\\blueE","\\textcolor{##0c7f99}{#1}");lt("\\tealA","\\textcolor{##94fff5}{#1}");lt("\\tealB","\\textcolor{##26edd5}{#1}");lt("\\tealC","\\textcolor{##01d1c1}{#1}");lt("\\tealD","\\textcolor{##01a995}{#1}");lt("\\tealE","\\textcolor{##208170}{#1}");lt("\\greenA","\\textcolor{##b6ffb0}{#1}");lt("\\greenB","\\textcolor{##8af281}{#1}");lt("\\greenC","\\textcolor{##74cf70}{#1}");lt("\\greenD","\\textcolor{##1fab54}{#1}");lt("\\greenE","\\textcolor{##0d923f}{#1}");lt("\\goldA","\\textcolor{##ffd0a9}{#1}");lt("\\goldB","\\textcolor{##ffbb71}{#1}");lt("\\goldC","\\textcolor{##ff9c39}{#1}");lt("\\goldD","\\textcolor{##e07d10}{#1}");lt("\\goldE","\\textcolor{##a75a05}{#1}");lt("\\redA","\\textcolor{##fca9a9}{#1}");lt("\\redB","\\textcolor{##ff8482}{#1}");lt("\\redC","\\textcolor{##f9685d}{#1}");lt("\\redD","\\textcolor{##e84d39}{#1}");lt("\\redE","\\textcolor{##bc2612}{#1}");lt("\\maroonA","\\textcolor{##ffbde0}{#1}");lt("\\maroonB","\\textcolor{##ff92c6}{#1}");lt("\\maroonC","\\textcolor{##ed5fa6}{#1}");lt("\\maroonD","\\textcolor{##ca337c}{#1}");lt("\\maroonE","\\textcolor{##9e034e}{#1}");lt("\\purpleA","\\textcolor{##ddd7ff}{#1}");lt("\\purpleB","\\textcolor{##c6b9fc}{#1}");lt("\\purpleC","\\textcolor{##aa87ff}{#1}");lt("\\purpleD","\\textcolor{##7854ab}{#1}");lt("\\purpleE","\\textcolor{##543b78}{#1}");lt("\\mintA","\\textcolor{##f5f9e8}{#1}");lt("\\mintB","\\textcolor{##edf2df}{#1}");lt("\\mintC","\\textcolor{##e0e5cc}{#1}");lt("\\grayA","\\textcolor{##f6f7f7}{#1}");lt("\\grayB","\\textcolor{##f0f1f2}{#1}");lt("\\grayC","\\textcolor{##e3e5e6}{#1}");lt("\\grayD","\\textcolor{##d6d8da}{#1}");lt("\\grayE","\\textcolor{##babec2}{#1}");lt("\\grayF","\\textcolor{##888d93}{#1}");lt("\\grayG","\\textcolor{##626569}{#1}");lt("\\grayH","\\textcolor{##3b3e40}{#1}");lt("\\grayI","\\textcolor{##21242c}{#1}");lt("\\kaBlue","\\textcolor{##314453}{#1}");lt("\\kaGreen","\\textcolor{##71B307}{#1}");vV={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},v7=class{static{o(this,"MacroExpander")}constructor(t,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(t),this.macros=new y7(W4t,r.macros),this.mode=n,this.stack=[]}feed(t){this.lexer=new F4(t,this.settings)}switchMode(t){this.mode=t}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(t){this.stack.push(t)}pushTokens(t){this.stack.push(...t)}scanArgument(t){var r,n,i;if(t){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 Do("EOF",n.loc)),this.pushTokens(i),r.range(n,"")}consumeSpaces(){for(;;){var t=this.future();if(t.text===" ")this.stack.pop();else break}}consumeArg(t){var r=[],n=t&&t.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 ue("Extra }",a)}else if(a.text==="EOF")throw new ue("Unexpected end of input in a macro argument, expected '"+(t&&n?t[l]:"}")+"'",a);if(t&&n)if((s===0||s===1&&t[l]==="{")&&a.text===t[l]){if(++l,l===t.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(t,r){if(r){if(r.length!==t+1)throw new ue("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;ithis.settings.maxExpand)throw new ue("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(t){var r=this.popToken(),n=r.text,i=r.noexpand?null:this._getExpansion(n);if(i==null||t&&i.unexpandable){if(t&&i==null&&n[0]==="\\"&&!this.isDefined(n))throw new ue("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 ue("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 ue("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 t=this.stack.pop();return t.treatAsRelax&&(t.text="\\relax"),t}throw new Error}expandMacro(t){return this.macros.has(t)?this.expandTokens([new Do(t)]):void 0}expandTokens(t){var r=[],n=this.stack.length;for(this.pushTokens(t);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(t){var r=this.expandMacro(t);return r&&r.map(n=>n.text).join("")}_getExpansion(t){var r=this.macros.get(t);if(r==null)return r;if(t.length===1){var n=this.lexer.catcodes[t];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 F4(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(t){return this.macros.has(t)||dh.hasOwnProperty(t)||An.math.hasOwnProperty(t)||An.text.hasOwnProperty(t)||vV.hasOwnProperty(t)}isExpandable(t){var r=this.macros.get(t);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:dh.hasOwnProperty(t)&&!dh[t].primitive}},EG=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,L4=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"}),s7={"\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"}},CG={\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"},z4=class e{static{o(this,"Parser")}constructor(t,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 v7(t,r,this.mode),this.settings=r,this.leftrightDepth=0}expect(t,r){if(r===void 0&&(r=!0),this.fetch().text!==t)throw new ue("Expected '"+t+"', 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(t){this.mode=t,this.gullet.switchMode(t)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var t=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),t}finally{this.gullet.endGroups()}}subparse(t){var r=this.nextToken;this.consume(),this.gullet.pushToken(new Do("}")),this.gullet.pushTokens(t);var n=this.parseExpression(!1);return this.expect("}"),this.nextToken=r,n}parseExpression(t,r){for(var n=[];;){this.mode==="math"&&this.consumeSpaces();var i=this.fetch();if(e.endOfExpression.indexOf(i.text)!==-1||r&&i.text===r||t&&dh[i.text]&&dh[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(t){for(var r=-1,n,i=0;i=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+r[0]+'" used in math mode',t);var l=An[this.mode][r].group,u=Ks.range(t),h;if(Pbt.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&&(AG(r.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+r[0]+'" used in math mode',t):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+r[0]+'"'+(" ("+r.charCodeAt(0)+")"),t)),s={type:"textord",mode:"text",loc:Ks.range(t),text:r};else return null;if(this.consume(),a)for(var d=0;d{t.tagName==="A"&&t.hasAttribute("target")&&t.setAttribute(e,t.getAttribute("target")??"")}),_p.default.addHook("afterSanitizeAttributes",t=>{t.tagName==="A"&&t.hasAttribute(e)&&(t.setAttribute("target",t.getAttribute(e)??""),t.removeAttribute(e),t.getAttribute("target")==="_blank"&&t.setAttribute("rel","noopener"))})}var _p,rd,K4t,Q4t,CV,kV,Zr,J4t,t3t,e3t,r3t,SV,n3t,Tr,i3t,a3t,yh,B7,s3t,o3t,EV,F7,Pi,nd,vh,Yt,hr=R(()=>{"use strict";_p=Qi(XS(),1),rd=//gi,K4t=o(e=>e?SV(e).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),Q4t=(()=>{let e=!1;return()=>{e||(Z4t(),e=!0)}})();o(Z4t,"setupDompurifyHooks");CV=o(e=>(Q4t(),_p.default.sanitize(e)),"removeScript"),kV=o((e,t)=>{if(t.flowchart?.htmlLabels!==!1){let r=t.securityLevel;r==="antiscript"||r==="strict"?e=CV(e):r!=="loose"&&(e=SV(e),e=e.replace(//g,">"),e=e.replace(/=/g,"="),e=r3t(e))}return e},"sanitizeMore"),Zr=o((e,t)=>e&&(t.dompurifyConfig?e=_p.default.sanitize(kV(e,t),t.dompurifyConfig).toString():e=_p.default.sanitize(kV(e,t),{FORBID_TAGS:["style"]}).toString(),e),"sanitizeText"),J4t=o((e,t)=>typeof e=="string"?Zr(e,t):e.flat().map(r=>Zr(r,t)),"sanitizeTextOrArray"),t3t=o(e=>rd.test(e),"hasBreaks"),e3t=o(e=>e.split(rd),"splitBreaks"),r3t=o(e=>e.replace(/#br#/g,"
"),"placeholderToBreak"),SV=o(e=>e.replace(rd,"#br#"),"breakToPlaceholder"),n3t=o(e=>{let t="";return e&&(t=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,t=t.replaceAll(/\(/g,"\\("),t=t.replaceAll(/\)/g,"\\)")),t},"getUrl"),Tr=o(e=>!(e===!1||["false","null","0"].includes(String(e).trim().toLowerCase())),"evaluate"),i3t=o(function(...e){let t=e.filter(r=>!isNaN(r));return Math.max(...t)},"getMax"),a3t=o(function(...e){let t=e.filter(r=>!isNaN(r));return Math.min(...t)},"getMin"),yh=o(function(e){let t=e.split(/(,)/),r=[];for(let n=0;n0&&n+1Math.max(0,e.split(t).length-1),"countOccurrence"),s3t=o((e,t)=>{let r=B7(e,"~"),n=B7(t,"~");return r===1&&n===1},"shouldCombineSets"),o3t=o(e=>{let t=B7(e,"~"),r=!1;if(t<=1)return e;t%2!==0&&e.startsWith("~")&&(e=e.substring(1),r=!0);let n=[...e],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"),EV=o(()=>window.MathMLElement!==void 0,"isMathMLSupported"),F7=/\$\$(.*)\$\$/g,Pi=o(e=>(e.match(F7)?.length??0)>0,"hasKatex"),nd=o(async(e,t)=>{e=await vh(e,t);let r=document.createElement("div");r.innerHTML=e,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"),vh=o(async(e,t)=>{if(!Pi(e))return e;if(!(EV()||t.legacyMathML||t.forceLegacyMathML))return e.replace(F7,"MathML is unsupported in this environment.");let{default:r}=await Promise.resolve().then(()=>(TV(),wV)),n=t.forceLegacyMathML||!EV()&&t.legacyMathML?"htmlAndMathml":"mathml";return e.split(rd).map(i=>Pi(i)?`
${i}
`:`
${i}
`).join("").replace(F7,(i,a)=>r.renderToString(a,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,""))},"renderKatex"),Yt={getRows:K4t,sanitizeText:Zr,sanitizeTextOrArray:J4t,hasBreaks:t3t,splitBreaks:e3t,lineBreakRegex:rd,removeScript:CV,getUrl:n3t,evaluate:Tr,getMax:i3t,getMin:a3t}});var l3t,c3t,Pr,No,Jn=R(()=>{"use strict";ce();l3t=o(function(e,t){for(let r of t)e.attr(r[0],r[1])},"d3Attrs"),c3t=o(function(e,t,r){let n=new Map;return r?(n.set("width","100%"),n.set("style",`max-width: ${t}px;`)):(n.set("height",e),n.set("width",t)),n},"calculateSvgSizeAttrs"),Pr=o(function(e,t,r,n){let i=c3t(t,r,n);l3t(e,i)},"configureSvgSize"),No=o(function(e,t,r,n){let i=t.node().getBBox(),a=i.width,s=i.height;V.info(`SVG bounds: ${a}x${s}`,i);let l=0,u=0;V.info(`Graph bounds: ${l}x${u}`,e),l=a+r*2,u=s+r*2,V.info(`Calculated bounds: ${l}x${u}`),Pr(t,u,l,n);let h=`${i.x-r} ${i.y-r} ${i.width+2*r} ${i.height+2*r}`;t.attr("viewBox",h)},"setupGraphViewbox")});var Y4,u3t,AV,_V,z7=R(()=>{"use strict";ce();Y4={},u3t=o((e,t,r)=>{let n="";return e in Y4&&Y4[e]?n=Y4[e](r):V.warn(`No theme found for ${e}`),` & { + 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} + + ${t} +`},"getStyles"),AV=o((e,t)=>{t!==void 0&&(Y4[e]=t)},"addStylesForDiagram"),_V=u3t});var xy={};xr(xy,{clear:()=>Ar,getAccDescription:()=>zr,getAccTitle:()=>Br,getDiagramTitle:()=>Jr,setAccDescription:()=>Fr,setAccTitle:()=>Mr,setDiagramTitle:()=>cn});var $7,G7,V7,U7,Ar,Mr,Br,Fr,zr,cn,Jr,Ci=R(()=>{"use strict";hr();js();$7="",G7="",V7="",U7=o(e=>Zr(e,Nr()),"sanitizeText"),Ar=o(()=>{$7="",V7="",G7=""},"clear"),Mr=o(e=>{$7=U7(e).replace(/^\s+/g,"")},"setAccTitle"),Br=o(()=>$7,"getAccTitle"),Fr=o(e=>{V7=U7(e).replace(/\n\s+/g,` +`)},"setAccDescription"),zr=o(()=>V7,"getAccDescription"),cn=o(e=>{G7=U7(e)},"setDiagramTitle"),Jr=o(()=>G7,"getDiagramTitle")});var LV,h3t,pt,W7,X4,f3t,Y7,d3t,q4,id,by,H7,Ue=R(()=>{"use strict";jf();ce();js();hr();Jn();z7();Ci();LV=V,h3t=J1,pt=Nr,W7=v4,X4=hh,f3t=o(e=>Zr(e,pt()),"sanitizeText"),Y7=No,d3t=o(()=>xy,"getCommonDb"),q4={},id=o((e,t,r)=>{q4[e]&&LV.warn(`Diagram with id ${e} already registered. Overwriting.`),q4[e]=t,r&&_S(e,r),AV(e,t.styles),t.injectUtils?.(LV,h3t,pt,f3t,Y7,d3t(),()=>{})},"registerDiagram"),by=o(e=>{if(e in q4)return q4[e];throw new H7(e)},"getDiagram"),H7=class extends Error{static{o(this,"DiagramNotFoundError")}constructor(t){super(`Diagram ${t} not found.`)}}});var ml,xh,Ja,pl,uc,wy,q7,X7,j4,K4,DV,p3t,m3t,g3t,y3t,v3t,x3t,b3t,w3t,T3t,k3t,E3t,C3t,S3t,A3t,_3t,L3t,D3t,RV,R3t,N3t,NV,M3t,I3t,O3t,P3t,bh,B3t,F3t,z3t,$3t,G3t,Ty,j7=R(()=>{"use strict";Ue();hr();Ci();ml=[],xh=[""],Ja="global",pl="",uc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],wy=[],q7="",X7=!1,j4=4,K4=2,p3t=o(function(){return DV},"getC4Type"),m3t=o(function(e){DV=Zr(e,pt())},"setC4Type"),g3t=o(function(e,t,r,n,i,a,s,l,u){if(e==null||t===void 0||t===null||r===void 0||r===null||n===void 0||n===null)return;let h={},f=wy.find(d=>d.from===t&&d.to===r);if(f?h=f:wy.push(h),h.type=e,h.from=t,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=bh()},"addRel"),y3t=o(function(e,t,r,n,i,a,s){if(t===null||r===null)return;let l={},u=ml.find(h=>h.alias===t);if(u&&t===u.alias?l=u:(l.alias=t,ml.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:e},l.parentBoundary=Ja,l.wrap=bh()},"addPersonOrSystem"),v3t=o(function(e,t,r,n,i,a,s,l){if(t===null||r===null)return;let u={},h=ml.find(f=>f.alias===t);if(h&&t===h.alias?u=h:(u.alias=t,ml.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=bh(),u.typeC4Shape={text:e},u.parentBoundary=Ja},"addContainer"),x3t=o(function(e,t,r,n,i,a,s,l){if(t===null||r===null)return;let u={},h=ml.find(f=>f.alias===t);if(h&&t===h.alias?u=h:(u.alias=t,ml.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=bh(),u.typeC4Shape={text:e},u.parentBoundary=Ja},"addComponent"),b3t=o(function(e,t,r,n,i){if(e===null||t===null)return;let a={},s=uc.find(l=>l.alias===e);if(s&&e===s.alias?a=s:(a.alias=e,uc.push(a)),t==null?a.label={text:""}:a.label={text:t},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=Ja,a.wrap=bh(),pl=Ja,Ja=e,xh.push(pl)},"addPersonOrSystemBoundary"),w3t=o(function(e,t,r,n,i){if(e===null||t===null)return;let a={},s=uc.find(l=>l.alias===e);if(s&&e===s.alias?a=s:(a.alias=e,uc.push(a)),t==null?a.label={text:""}:a.label={text:t},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=Ja,a.wrap=bh(),pl=Ja,Ja=e,xh.push(pl)},"addContainerBoundary"),T3t=o(function(e,t,r,n,i,a,s,l){if(t===null||r===null)return;let u={},h=uc.find(f=>f.alias===t);if(h&&t===h.alias?u=h:(u.alias=t,uc.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=e,u.parentBoundary=Ja,u.wrap=bh(),pl=Ja,Ja=t,xh.push(pl)},"addDeploymentNode"),k3t=o(function(){Ja=pl,xh.pop(),pl=xh.pop(),xh.push(pl)},"popBoundaryParseStack"),E3t=o(function(e,t,r,n,i,a,s,l,u,h,f){let d=ml.find(p=>p.alias===t);if(!(d===void 0&&(d=uc.find(p=>p.alias===t),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"),C3t=o(function(e,t,r,n,i,a,s){let l=wy.find(u=>u.from===t&&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"),S3t=o(function(e,t,r){let n=j4,i=K4;if(typeof t=="object"){let a=Object.values(t)[0];n=parseInt(a)}else n=parseInt(t);if(typeof r=="object"){let a=Object.values(r)[0];i=parseInt(a)}else i=parseInt(r);n>=1&&(j4=n),i>=1&&(K4=i)},"updateLayoutConfig"),A3t=o(function(){return j4},"getC4ShapeInRow"),_3t=o(function(){return K4},"getC4BoundaryInRow"),L3t=o(function(){return Ja},"getCurrentBoundaryParse"),D3t=o(function(){return pl},"getParentBoundaryParse"),RV=o(function(e){return e==null?ml:ml.filter(t=>t.parentBoundary===e)},"getC4ShapeArray"),R3t=o(function(e){return ml.find(t=>t.alias===e)},"getC4Shape"),N3t=o(function(e){return Object.keys(RV(e))},"getC4ShapeKeys"),NV=o(function(e){return e==null?uc:uc.filter(t=>t.parentBoundary===e)},"getBoundaries"),M3t=NV,I3t=o(function(){return wy},"getRels"),O3t=o(function(){return q7},"getTitle"),P3t=o(function(e){X7=e},"setWrap"),bh=o(function(){return X7},"autoWrap"),B3t=o(function(){ml=[],uc=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],pl="",Ja="global",xh=[""],wy=[],xh=[""],q7="",X7=!1,j4=4,K4=2},"clear"),F3t={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},z3t={FILLED:0,OPEN:1},$3t={LEFTOF:0,RIGHTOF:1,OVER:2},G3t=o(function(e){q7=Zr(e,pt())},"setTitle"),Ty={addPersonOrSystem:y3t,addPersonOrSystemBoundary:b3t,addContainer:v3t,addContainerBoundary:w3t,addComponent:x3t,addDeploymentNode:T3t,popBoundaryParseStack:k3t,addRel:g3t,updateElStyle:E3t,updateRelStyle:C3t,updateLayoutConfig:S3t,autoWrap:bh,setWrap:P3t,getC4ShapeArray:RV,getC4Shape:R3t,getC4ShapeKeys:N3t,getBoundaries:NV,getBoundarys:M3t,getCurrentBoundaryParse:L3t,getParentBoundaryParse:D3t,getRels:I3t,getTitle:O3t,getC4Type:p3t,getC4ShapeInRow:A3t,getC4BoundaryInRow:_3t,setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,setAccDescription:Fr,getConfig:o(()=>pt().c4,"getConfig"),clear:B3t,LINETYPE:F3t,ARROWTYPE:z3t,PLACEMENT:$3t,setTitle:G3t,setC4Type:m3t}});function ad(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}var K7=R(()=>{"use strict";o(ad,"ascending")});function Q7(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}var MV=R(()=>{"use strict";o(Q7,"descending")});function sd(e){let t,r,n;e.length!==2?(t=ad,r=o((l,u)=>ad(e(l),u),"compare2"),n=o((l,u)=>e(l)-u,"delta")):(t=e===ad||e===Q7?e:V3t,r=e,n=e);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 V3t(){return 0}var Z7=R(()=>{"use strict";K7();MV();o(sd,"bisector");o(V3t,"zero")});function J7(e){return e===null?NaN:+e}var IV=R(()=>{"use strict";o(J7,"number")});var OV,PV,U3t,H3t,tA,BV=R(()=>{"use strict";K7();Z7();IV();OV=sd(ad),PV=OV.right,U3t=OV.left,H3t=sd(J7).center,tA=PV});function FV({_intern:e,_key:t},r){let n=t(r);return e.has(n)?e.get(n):r}function W3t({_intern:e,_key:t},r){let n=t(r);return e.has(n)?e.get(n):(e.set(n,r),r)}function Y3t({_intern:e,_key:t},r){let n=t(r);return e.has(n)&&(r=e.get(n),e.delete(n)),r}function q3t(e){return e!==null&&typeof e=="object"?e.valueOf():e}var Lp,zV=R(()=>{"use strict";Lp=class extends Map{static{o(this,"InternMap")}constructor(t,r=q3t){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),t!=null)for(let[n,i]of t)this.set(n,i)}get(t){return super.get(FV(this,t))}has(t){return super.has(FV(this,t))}set(t,r){return super.set(W3t(this,t),r)}delete(t){return super.delete(Y3t(this,t))}};o(FV,"intern_get");o(W3t,"intern_set");o(Y3t,"intern_delete");o(q3t,"keyof")});function Q4(e,t,r){let n=(t-e)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),s=a>=X3t?10:a>=j3t?5:a>=K3t?2:1,l,u,h;return i<0?(h=Math.pow(10,-i)/s,l=Math.round(e*h),u=Math.round(t*h),l/ht&&--u,h=-h):(h=Math.pow(10,i)*s,l=Math.round(e/h),u=Math.round(t/h),l*ht&&--u),u0))return[];if(e===t)return[e];let n=t=i))return[];let l=a-i+1,u=new Array(l);if(n)if(s<0)for(let h=0;h{"use strict";X3t=Math.sqrt(50),j3t=Math.sqrt(10),K3t=Math.sqrt(2);o(Q4,"tickSpec");o(Z4,"ticks");o(ky,"tickIncrement");o(Dp,"tickStep")});function J4(e,t){let r;if(t===void 0)for(let n of e)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of e)(i=t(i,++n,e))!=null&&(r=i)&&(r=i)}return r}var GV=R(()=>{"use strict";o(J4,"max")});function t3(e,t){let r;if(t===void 0)for(let n of e)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of e)(i=t(i,++n,e))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var VV=R(()=>{"use strict";o(t3,"min")});function e3(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((t-e)/r))|0,a=new Array(i);++n{"use strict";o(e3,"range")});var wh=R(()=>{"use strict";BV();Z7();GV();VV();UV();$V();zV()});function eA(e){return e}var HV=R(()=>{"use strict";o(eA,"default")});function Q3t(e){return"translate("+e+",0)"}function Z3t(e){return"translate(0,"+e+")"}function J3t(e){return t=>+e(t)}function t5t(e,t){return t=Math.max(0,e.bandwidth()-t*2)/2,e.round()&&(t=Math.round(t)),r=>+e(r)+t}function e5t(){return!this.__axis}function YV(e,t){var r=[],n=null,i=null,a=6,s=6,l=3,u=typeof window<"u"&&window.devicePixelRatio>1?0:.5,h=e===n3||e===r3?-1:1,f=e===r3||e===rA?"x":"y",d=e===n3||e===nA?Q3t:Z3t;function p(m){var g=n??(t.ticks?t.ticks.apply(t,r):t.domain()),y=i??(t.tickFormat?t.tickFormat.apply(t,r):eA),v=Math.max(a,0)+l,x=t.range(),b=+x[0]+u,w=+x[x.length-1]+u,S=(t.bandwidth?t5t:J3t)(t.copy(),u),T=m.selection?m.selection():m,E=T.selectAll(".domain").data([null]),_=T.selectAll(".tick").data(g,t).order(),A=_.exit(),L=_.enter().append("g").attr("class","tick"),M=_.select("line"),N=_.select("text");E=E.merge(E.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),_=_.merge(L),M=M.merge(L.append("line").attr("stroke","currentColor").attr(f+"2",h*a)),N=N.merge(L.append("text").attr("fill","currentColor").attr(f,h*v).attr("dy",e===n3?"0em":e===nA?"0.71em":"0.32em")),m!==T&&(E=E.transition(m),_=_.transition(m),M=M.transition(m),N=N.transition(m),A=A.transition(m).attr("opacity",WV).attr("transform",function(k){return isFinite(k=S(k))?d(k+u):this.getAttribute("transform")}),L.attr("opacity",WV).attr("transform",function(k){var I=this.parentNode.__axis;return d((I&&isFinite(I=I(k))?I:S(k))+u)})),A.remove(),E.attr("d",e===r3||e===rA?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),_.attr("opacity",1).attr("transform",function(k){return d(S(k)+u)}),M.attr(f+"2",h*a),N.attr(f,h*v).text(y),T.filter(e5t).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",e===rA?"start":e===r3?"end":"middle"),T.each(function(){this.__axis=S})}return o(p,"axis"),p.scale=function(m){return arguments.length?(t=m,p):t},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 iA(e){return YV(n3,e)}function aA(e){return YV(nA,e)}var n3,rA,nA,r3,WV,qV=R(()=>{"use strict";HV();n3=1,rA=2,nA=3,r3=4,WV=1e-6;o(Q3t,"translateX");o(Z3t,"translateY");o(J3t,"number");o(t5t,"center");o(e5t,"entering");o(YV,"axis");o(iA,"axisTop");o(aA,"axisBottom")});var XV=R(()=>{"use strict";qV()});function KV(){for(var e=0,t=arguments.length,r={},n;e=0&&(n=r.slice(i+1),r=r.slice(0,i)),r&&!t.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:n}})}function i5t(e,t){for(var r=0,n=e.length,i;r{"use strict";r5t={value:o(()=>{},"value")};o(KV,"dispatch");o(i3,"Dispatch");o(n5t,"parseTypenames");i3.prototype=KV.prototype={constructor:i3,on:o(function(e,t){var r=this._,n=n5t(e+"",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";QV()});var a3,lA,cA=R(()=>{"use strict";a3="http://www.w3.org/1999/xhtml",lA={svg:"http://www.w3.org/2000/svg",xhtml:a3,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function hc(e){var t=e+="",r=t.indexOf(":");return r>=0&&(t=e.slice(0,r))!=="xmlns"&&(e=e.slice(r+1)),lA.hasOwnProperty(t)?{space:lA[t],local:e}:e}var s3=R(()=>{"use strict";cA();o(hc,"default")});function a5t(e){return function(){var t=this.ownerDocument,r=this.namespaceURI;return r===a3&&t.documentElement.namespaceURI===a3?t.createElement(e):t.createElementNS(r,e)}}function s5t(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Ey(e){var t=hc(e);return(t.local?s5t:a5t)(t)}var uA=R(()=>{"use strict";s3();cA();o(a5t,"creatorInherit");o(s5t,"creatorFixed");o(Ey,"default")});function o5t(){}function Th(e){return e==null?o5t:function(){return this.querySelector(e)}}var o3=R(()=>{"use strict";o(o5t,"none");o(Th,"default")});function hA(e){typeof e!="function"&&(e=Th(e));for(var t=this._groups,r=t.length,n=new Array(r),i=0;i{"use strict";gl();o3();o(hA,"default")});function fA(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}var JV=R(()=>{"use strict";o(fA,"array")});function l5t(){return[]}function Rp(e){return e==null?l5t:function(){return this.querySelectorAll(e)}}var dA=R(()=>{"use strict";o(l5t,"empty");o(Rp,"default")});function c5t(e){return function(){return fA(e.apply(this,arguments))}}function pA(e){typeof e=="function"?e=c5t(e):e=Rp(e);for(var t=this._groups,r=t.length,n=[],i=[],a=0;a{"use strict";gl();JV();dA();o(c5t,"arrayAll");o(pA,"default")});function Np(e){return function(){return this.matches(e)}}function l3(e){return function(t){return t.matches(e)}}var Cy=R(()=>{"use strict";o(Np,"default");o(l3,"childMatcher")});function h5t(e){return function(){return u5t.call(this.children,e)}}function f5t(){return this.firstElementChild}function mA(e){return this.select(e==null?f5t:h5t(typeof e=="function"?e:l3(e)))}var u5t,eU=R(()=>{"use strict";Cy();u5t=Array.prototype.find;o(h5t,"childFind");o(f5t,"childFirst");o(mA,"default")});function p5t(){return Array.from(this.children)}function m5t(e){return function(){return d5t.call(this.children,e)}}function gA(e){return this.selectAll(e==null?p5t:m5t(typeof e=="function"?e:l3(e)))}var d5t,rU=R(()=>{"use strict";Cy();d5t=Array.prototype.filter;o(p5t,"children");o(m5t,"childrenFilter");o(gA,"default")});function yA(e){typeof e!="function"&&(e=Np(e));for(var t=this._groups,r=t.length,n=new Array(r),i=0;i{"use strict";gl();Cy();o(yA,"default")});function Sy(e){return new Array(e.length)}var vA=R(()=>{"use strict";o(Sy,"default")});function xA(){return new ai(this._enter||this._groups.map(Sy),this._parents)}function Ay(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}var bA=R(()=>{"use strict";vA();gl();o(xA,"default");o(Ay,"EnterNode");Ay.prototype={constructor:Ay,appendChild:o(function(e){return this._parent.insertBefore(e,this._next)},"appendChild"),insertBefore:o(function(e,t){return this._parent.insertBefore(e,t)},"insertBefore"),querySelector:o(function(e){return this._parent.querySelector(e)},"querySelector"),querySelectorAll:o(function(e){return this._parent.querySelectorAll(e)},"querySelectorAll")}});function wA(e){return function(){return e}}var iU=R(()=>{"use strict";o(wA,"default")});function g5t(e,t,r,n,i,a){for(var s=0,l,u=t.length,h=a.length;s=w&&(w=b+1);!(T=v[w])&&++w{"use strict";gl();bA();iU();o(g5t,"bindIndex");o(y5t,"bindKey");o(v5t,"datum");o(TA,"default");o(x5t,"arraylike")});function kA(){return new ai(this._exit||this._groups.map(Sy),this._parents)}var sU=R(()=>{"use strict";vA();gl();o(kA,"default")});function EA(e,t,r){var n=this.enter(),i=this,a=this.exit();return typeof e=="function"?(n=e(n),n&&(n=n.selection())):n=n.append(e+""),t!=null&&(i=t(i),i&&(i=i.selection())),r==null?a.remove():r(a),n&&i?n.merge(i).order():i}var oU=R(()=>{"use strict";o(EA,"default")});function CA(e){for(var t=e.selection?e.selection():e,r=this._groups,n=t._groups,i=r.length,a=n.length,s=Math.min(i,a),l=new Array(i),u=0;u{"use strict";gl();o(CA,"default")});function SA(){for(var e=this._groups,t=-1,r=e.length;++t=0;)(s=n[i])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}var cU=R(()=>{"use strict";o(SA,"default")});function AA(e){e||(e=b5t);function t(d,p){return d&&p?e(d.__data__,p.__data__):!d-!p}o(t,"compareNode");for(var r=this._groups,n=r.length,i=new Array(n),a=0;at?1:e>=t?0:NaN}var uU=R(()=>{"use strict";gl();o(AA,"default");o(b5t,"ascending")});function _A(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}var hU=R(()=>{"use strict";o(_A,"default")});function LA(){return Array.from(this)}var fU=R(()=>{"use strict";o(LA,"default")});function DA(){for(var e=this._groups,t=0,r=e.length;t{"use strict";o(DA,"default")});function RA(){let e=0;for(let t of this)++e;return e}var pU=R(()=>{"use strict";o(RA,"default")});function NA(){return!this.node()}var mU=R(()=>{"use strict";o(NA,"default")});function MA(e){for(var t=this._groups,r=0,n=t.length;r{"use strict";o(MA,"default")});function w5t(e){return function(){this.removeAttribute(e)}}function T5t(e){return function(){this.removeAttributeNS(e.space,e.local)}}function k5t(e,t){return function(){this.setAttribute(e,t)}}function E5t(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function C5t(e,t){return function(){var r=t.apply(this,arguments);r==null?this.removeAttribute(e):this.setAttribute(e,r)}}function S5t(e,t){return function(){var r=t.apply(this,arguments);r==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,r)}}function IA(e,t){var r=hc(e);if(arguments.length<2){var n=this.node();return r.local?n.getAttributeNS(r.space,r.local):n.getAttribute(r)}return this.each((t==null?r.local?T5t:w5t:typeof t=="function"?r.local?S5t:C5t:r.local?E5t:k5t)(r,t))}var yU=R(()=>{"use strict";s3();o(w5t,"attrRemove");o(T5t,"attrRemoveNS");o(k5t,"attrConstant");o(E5t,"attrConstantNS");o(C5t,"attrFunction");o(S5t,"attrFunctionNS");o(IA,"default")});function _y(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}var OA=R(()=>{"use strict";o(_y,"default")});function A5t(e){return function(){this.style.removeProperty(e)}}function _5t(e,t,r){return function(){this.style.setProperty(e,t,r)}}function L5t(e,t,r){return function(){var n=t.apply(this,arguments);n==null?this.style.removeProperty(e):this.style.setProperty(e,n,r)}}function PA(e,t,r){return arguments.length>1?this.each((t==null?A5t:typeof t=="function"?L5t:_5t)(e,t,r??"")):kh(this.node(),e)}function kh(e,t){return e.style.getPropertyValue(t)||_y(e).getComputedStyle(e,null).getPropertyValue(t)}var BA=R(()=>{"use strict";OA();o(A5t,"styleRemove");o(_5t,"styleConstant");o(L5t,"styleFunction");o(PA,"default");o(kh,"styleValue")});function D5t(e){return function(){delete this[e]}}function R5t(e,t){return function(){this[e]=t}}function N5t(e,t){return function(){var r=t.apply(this,arguments);r==null?delete this[e]:this[e]=r}}function FA(e,t){return arguments.length>1?this.each((t==null?D5t:typeof t=="function"?N5t:R5t)(e,t)):this.node()[e]}var vU=R(()=>{"use strict";o(D5t,"propertyRemove");o(R5t,"propertyConstant");o(N5t,"propertyFunction");o(FA,"default")});function xU(e){return e.trim().split(/^|\s+/)}function zA(e){return e.classList||new bU(e)}function bU(e){this._node=e,this._names=xU(e.getAttribute("class")||"")}function wU(e,t){for(var r=zA(e),n=-1,i=t.length;++n{"use strict";o(xU,"classArray");o(zA,"classList");o(bU,"ClassList");bU.prototype={add:o(function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},"add"),remove:o(function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},"remove"),contains:o(function(e){return this._names.indexOf(e)>=0},"contains")};o(wU,"classedAdd");o(TU,"classedRemove");o(M5t,"classedTrue");o(I5t,"classedFalse");o(O5t,"classedFunction");o($A,"default")});function P5t(){this.textContent=""}function B5t(e){return function(){this.textContent=e}}function F5t(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function GA(e){return arguments.length?this.each(e==null?P5t:(typeof e=="function"?F5t:B5t)(e)):this.node().textContent}var EU=R(()=>{"use strict";o(P5t,"textRemove");o(B5t,"textConstant");o(F5t,"textFunction");o(GA,"default")});function z5t(){this.innerHTML=""}function $5t(e){return function(){this.innerHTML=e}}function G5t(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function VA(e){return arguments.length?this.each(e==null?z5t:(typeof e=="function"?G5t:$5t)(e)):this.node().innerHTML}var CU=R(()=>{"use strict";o(z5t,"htmlRemove");o($5t,"htmlConstant");o(G5t,"htmlFunction");o(VA,"default")});function V5t(){this.nextSibling&&this.parentNode.appendChild(this)}function UA(){return this.each(V5t)}var SU=R(()=>{"use strict";o(V5t,"raise");o(UA,"default")});function U5t(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function HA(){return this.each(U5t)}var AU=R(()=>{"use strict";o(U5t,"lower");o(HA,"default")});function WA(e){var t=typeof e=="function"?e:Ey(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}var _U=R(()=>{"use strict";uA();o(WA,"default")});function H5t(){return null}function YA(e,t){var r=typeof e=="function"?e:Ey(e),n=t==null?H5t:typeof t=="function"?t:Th(t);return this.select(function(){return this.insertBefore(r.apply(this,arguments),n.apply(this,arguments)||null)})}var LU=R(()=>{"use strict";uA();o3();o(H5t,"constantNull");o(YA,"default")});function W5t(){var e=this.parentNode;e&&e.removeChild(this)}function qA(){return this.each(W5t)}var DU=R(()=>{"use strict";o(W5t,"remove");o(qA,"default")});function Y5t(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function q5t(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function XA(e){return this.select(e?q5t:Y5t)}var RU=R(()=>{"use strict";o(Y5t,"selection_cloneShallow");o(q5t,"selection_cloneDeep");o(XA,"default")});function jA(e){return arguments.length?this.property("__data__",e):this.node().__data__}var NU=R(()=>{"use strict";o(jA,"default")});function X5t(e){return function(t){e.call(this,t,this.__data__)}}function j5t(e){return e.trim().split(/^|\s+/).map(function(t){var r="",n=t.indexOf(".");return n>=0&&(r=t.slice(n+1),t=t.slice(0,n)),{type:t,name:r}})}function K5t(e){return function(){var t=this.__on;if(t){for(var r=0,n=-1,i=t.length,a;r{"use strict";o(X5t,"contextListener");o(j5t,"parseTypenames");o(K5t,"onRemove");o(Q5t,"onAdd");o(KA,"default")});function IU(e,t,r){var n=_y(e),i=n.CustomEvent;typeof i=="function"?i=new i(t,r):(i=n.document.createEvent("Event"),r?(i.initEvent(t,r.bubbles,r.cancelable),i.detail=r.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function Z5t(e,t){return function(){return IU(this,e,t)}}function J5t(e,t){return function(){return IU(this,e,t.apply(this,arguments))}}function QA(e,t){return this.each((typeof t=="function"?J5t:Z5t)(e,t))}var OU=R(()=>{"use strict";OA();o(IU,"dispatchEvent");o(Z5t,"dispatchConstant");o(J5t,"dispatchFunction");o(QA,"default")});function*ZA(){for(var e=this._groups,t=0,r=e.length;t{"use strict";o(ZA,"default")});function ai(e,t){this._groups=e,this._parents=t}function BU(){return new ai([[document.documentElement]],JA)}function twt(){return this}var JA,mu,gl=R(()=>{"use strict";ZV();tU();eU();rU();nU();aU();bA();sU();oU();lU();cU();uU();hU();fU();dU();pU();mU();gU();yU();BA();vU();kU();EU();CU();SU();AU();_U();LU();DU();RU();NU();MU();OU();PU();JA=[null];o(ai,"Selection");o(BU,"selection");o(twt,"selection_selection");ai.prototype=BU.prototype={constructor:ai,select:hA,selectAll:pA,selectChild:mA,selectChildren:gA,filter:yA,data:TA,enter:xA,exit:kA,join:EA,merge:CA,selection:twt,order:SA,sort:AA,call:_A,nodes:LA,node:DA,size:RA,empty:NA,each:MA,attr:IA,style:PA,property:FA,classed:$A,text:GA,html:VA,raise:UA,lower:HA,append:WA,insert:YA,remove:qA,clone:XA,datum:jA,on:KA,dispatch:QA,[Symbol.iterator]:ZA};mu=BU});function Gt(e){return typeof e=="string"?new ai([[document.querySelector(e)]],[document.documentElement]):new ai([[e]],JA)}var FU=R(()=>{"use strict";gl();o(Gt,"default")});var yl=R(()=>{"use strict";Cy();s3();FU();gl();o3();dA();BA()});var zU=R(()=>{"use strict"});function Eh(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function Mp(e,t){var r=Object.create(e.prototype);for(var n in t)r[n]=t[n];return r}var t8=R(()=>{"use strict";o(Eh,"default");o(Mp,"extend")});function Ch(){}function GU(){return this.rgb().formatHex()}function lwt(){return this.rgb().formatHex8()}function cwt(){return XU(this).formatHsl()}function VU(){return this.rgb().formatRgb()}function xl(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=ewt.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?UU(t):r===3?new fa(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?c3(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?c3(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=rwt.exec(e))?new fa(t[1],t[2],t[3],1):(t=nwt.exec(e))?new fa(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=iwt.exec(e))?c3(t[1],t[2],t[3],t[4]):(t=awt.exec(e))?c3(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=swt.exec(e))?YU(t[1],t[2]/100,t[3]/100,1):(t=owt.exec(e))?YU(t[1],t[2]/100,t[3]/100,t[4]):$U.hasOwnProperty(e)?UU($U[e]):e==="transparent"?new fa(NaN,NaN,NaN,0):null}function UU(e){return new fa(e>>16&255,e>>8&255,e&255,1)}function c3(e,t,r,n){return n<=0&&(e=t=r=NaN),new fa(e,t,r,n)}function r8(e){return e instanceof Ch||(e=xl(e)),e?(e=e.rgb(),new fa(e.r,e.g,e.b,e.opacity)):new fa}function Op(e,t,r,n){return arguments.length===1?r8(e):new fa(e,t,r,n??1)}function fa(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function HU(){return`#${od(this.r)}${od(this.g)}${od(this.b)}`}function uwt(){return`#${od(this.r)}${od(this.g)}${od(this.b)}${od((isNaN(this.opacity)?1:this.opacity)*255)}`}function WU(){let e=f3(this.opacity);return`${e===1?"rgb(":"rgba("}${ld(this.r)}, ${ld(this.g)}, ${ld(this.b)}${e===1?")":`, ${e})`}`}function f3(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function ld(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function od(e){return e=ld(e),(e<16?"0":"")+e.toString(16)}function YU(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new vl(e,t,r,n)}function XU(e){if(e instanceof vl)return new vl(e.h,e.s,e.l,e.opacity);if(e instanceof Ch||(e=xl(e)),!e)return new vl;if(e instanceof vl)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),s=NaN,l=a-i,u=(a+i)/2;return l?(t===a?s=(r-n)/l+(r0&&u<1?0:s,new vl(s,l,u,e.opacity)}function jU(e,t,r,n){return arguments.length===1?XU(e):new vl(e,t,r,n??1)}function vl(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function qU(e){return e=(e||0)%360,e<0?e+360:e}function u3(e){return Math.max(0,Math.min(1,e||0))}function e8(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}var Ly,h3,Ip,Dy,fc,ewt,rwt,nwt,iwt,awt,swt,owt,$U,n8=R(()=>{"use strict";t8();o(Ch,"Color");Ly=.7,h3=1/Ly,Ip="\\s*([+-]?\\d+)\\s*",Dy="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",fc="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",ewt=/^#([0-9a-f]{3,8})$/,rwt=new RegExp(`^rgb\\(${Ip},${Ip},${Ip}\\)$`),nwt=new RegExp(`^rgb\\(${fc},${fc},${fc}\\)$`),iwt=new RegExp(`^rgba\\(${Ip},${Ip},${Ip},${Dy}\\)$`),awt=new RegExp(`^rgba\\(${fc},${fc},${fc},${Dy}\\)$`),swt=new RegExp(`^hsl\\(${Dy},${fc},${fc}\\)$`),owt=new RegExp(`^hsla\\(${Dy},${fc},${fc},${Dy}\\)$`),$U={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};Eh(Ch,xl,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:GU,formatHex:GU,formatHex8:lwt,formatHsl:cwt,formatRgb:VU,toString:VU});o(GU,"color_formatHex");o(lwt,"color_formatHex8");o(cwt,"color_formatHsl");o(VU,"color_formatRgb");o(xl,"color");o(UU,"rgbn");o(c3,"rgba");o(r8,"rgbConvert");o(Op,"rgb");o(fa,"Rgb");Eh(fa,Op,Mp(Ch,{brighter(e){return e=e==null?h3:Math.pow(h3,e),new fa(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Ly:Math.pow(Ly,e),new fa(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new fa(ld(this.r),ld(this.g),ld(this.b),f3(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:HU,formatHex:HU,formatHex8:uwt,formatRgb:WU,toString:WU}));o(HU,"rgb_formatHex");o(uwt,"rgb_formatHex8");o(WU,"rgb_formatRgb");o(f3,"clampa");o(ld,"clampi");o(od,"hex");o(YU,"hsla");o(XU,"hslConvert");o(jU,"hsl");o(vl,"Hsl");Eh(vl,jU,Mp(Ch,{brighter(e){return e=e==null?h3:Math.pow(h3,e),new vl(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Ly:Math.pow(Ly,e),new vl(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new fa(e8(e>=240?e-240:e+120,i,n),e8(e,i,n),e8(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new vl(qU(this.h),u3(this.s),u3(this.l),f3(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 e=f3(this.opacity);return`${e===1?"hsl(":"hsla("}${qU(this.h)}, ${u3(this.s)*100}%, ${u3(this.l)*100}%${e===1?")":`, ${e})`}`}}));o(qU,"clamph");o(u3,"clampt");o(e8,"hsl2rgb")});var KU,QU,ZU=R(()=>{"use strict";KU=Math.PI/180,QU=180/Math.PI});function iH(e){if(e instanceof dc)return new dc(e.l,e.a,e.b,e.opacity);if(e instanceof gu)return aH(e);e instanceof fa||(e=r8(e));var t=o8(e.r),r=o8(e.g),n=o8(e.b),i=i8((.2225045*t+.7168786*r+.0606169*n)/tH),a,s;return t===r&&r===n?a=s=i:(a=i8((.4360747*t+.3850649*r+.1430804*n)/JU),s=i8((.0139322*t+.0971045*r+.7141733*n)/eH)),new dc(116*i-16,500*(a-i),200*(i-s),e.opacity)}function l8(e,t,r,n){return arguments.length===1?iH(e):new dc(e,t,r,n??1)}function dc(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function i8(e){return e>hwt?Math.pow(e,1/3):e/nH+rH}function a8(e){return e>Pp?e*e*e:nH*(e-rH)}function s8(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function o8(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function fwt(e){if(e instanceof gu)return new gu(e.h,e.c,e.l,e.opacity);if(e instanceof dc||(e=iH(e)),e.a===0&&e.b===0)return new gu(NaN,0{"use strict";t8();n8();ZU();d3=18,JU=.96422,tH=1,eH=.82521,rH=4/29,Pp=6/29,nH=3*Pp*Pp,hwt=Pp*Pp*Pp;o(iH,"labConvert");o(l8,"lab");o(dc,"Lab");Eh(dc,l8,Mp(Ch,{brighter(e){return new dc(this.l+d3*(e??1),this.a,this.b,this.opacity)},darker(e){return new dc(this.l-d3*(e??1),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,r=isNaN(this.b)?e:e-this.b/200;return t=JU*a8(t),e=tH*a8(e),r=eH*a8(r),new fa(s8(3.1338561*t-1.6168667*e-.4906146*r),s8(-.9787684*t+1.9161415*e+.033454*r),s8(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));o(i8,"xyz2lab");o(a8,"lab2xyz");o(s8,"lrgb2rgb");o(o8,"rgb2lrgb");o(fwt,"hclConvert");o(Ry,"hcl");o(gu,"Hcl");o(aH,"hcl2lab");Eh(gu,Ry,Mp(Ch,{brighter(e){return new gu(this.h,this.c,this.l+d3*(e??1),this.opacity)},darker(e){return new gu(this.h,this.c,this.l-d3*(e??1),this.opacity)},rgb(){return aH(this).rgb()}}))});var Bp=R(()=>{"use strict";n8();sH()});function c8(e,t,r,n,i){var a=e*e,s=a*e;return((1-3*e+3*a-s)*t+(4-6*a+3*s)*r+(1+3*e+3*a-3*s)*n+s*i)/6}function u8(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],s=n>0?e[n-1]:2*i-a,l=n{"use strict";o(c8,"basis");o(u8,"default")});function f8(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),i=e[(n+t-1)%t],a=e[n%t],s=e[(n+1)%t],l=e[(n+2)%t];return c8((r-n/t)*t,i,a,s,l)}}var oH=R(()=>{"use strict";h8();o(f8,"default")});var Fp,d8=R(()=>{"use strict";Fp=o(e=>()=>e,"default")});function lH(e,t){return function(r){return e+r*t}}function dwt(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function cH(e,t){var r=t-e;return r?lH(e,r>180||r<-180?r-360*Math.round(r/360):r):Fp(isNaN(e)?t:e)}function uH(e){return(e=+e)==1?yu:function(t,r){return r-t?dwt(t,r,e):Fp(isNaN(t)?r:t)}}function yu(e,t){var r=t-e;return r?lH(e,r):Fp(isNaN(e)?t:e)}var p8=R(()=>{"use strict";d8();o(lH,"linear");o(dwt,"exponential");o(cH,"hue");o(uH,"gamma");o(yu,"nogamma")});function hH(e){return function(t){var r=t.length,n=new Array(r),i=new Array(r),a=new Array(r),s,l;for(s=0;s{"use strict";Bp();h8();oH();p8();cd=o(function e(t){var r=uH(t);function n(i,a){var s=r((i=Op(i)).r,(a=Op(a)).r),l=r(i.g,a.g),u=r(i.b,a.b),h=yu(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=e,n},"rgbGamma")(1);o(hH,"rgbSpline");pwt=hH(u8),mwt=hH(f8)});function g8(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;i{"use strict";o(g8,"default");o(fH,"isNumberArray")});function pH(e,t){var r=t?t.length:0,n=e?Math.min(r,e.length):0,i=new Array(n),a=new Array(r),s;for(s=0;s{"use strict";p3();o(pH,"genericArray")});function y8(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var gH=R(()=>{"use strict";o(y8,"default")});function Zi(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var Ny=R(()=>{"use strict";o(Zi,"default")});function v8(e,t){var r={},n={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?r[i]=Sh(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var yH=R(()=>{"use strict";p3();o(v8,"default")});function gwt(e){return function(){return e}}function ywt(e){return function(t){return e(t)+""}}function zp(e,t){var r=b8.lastIndex=x8.lastIndex=0,n,i,a,s=-1,l=[],u=[];for(e=e+"",t=t+"";(n=b8.exec(e))&&(i=x8.exec(t));)(a=i.index)>r&&(a=t.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:Zi(n,i)})),r=x8.lastIndex;return r{"use strict";Ny();b8=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,x8=new RegExp(b8.source,"g");o(gwt,"zero");o(ywt,"one");o(zp,"default")});function Sh(e,t){var r=typeof t,n;return t==null||r==="boolean"?Fp(t):(r==="number"?Zi:r==="string"?(n=xl(t))?(t=n,cd):zp:t instanceof xl?cd:t instanceof Date?y8:fH(t)?g8:Array.isArray(t)?pH:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?v8:Zi)(e,t)}var p3=R(()=>{"use strict";Bp();m8();mH();gH();Ny();yH();w8();d8();dH();o(Sh,"default")});function m3(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var vH=R(()=>{"use strict";o(m3,"default")});function y3(e,t,r,n,i,a){var s,l,u;return(s=Math.sqrt(e*e+t*t))&&(e/=s,t/=s),(u=e*r+t*n)&&(r-=e*u,n-=t*u),(l=Math.sqrt(r*r+n*n))&&(r/=l,n/=l,u/=l),e*n{"use strict";xH=180/Math.PI,g3={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};o(y3,"default")});function wH(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?g3:y3(t.a,t.b,t.c,t.d,t.e,t.f)}function TH(e){return e==null?g3:(v3||(v3=document.createElementNS("http://www.w3.org/2000/svg","g")),v3.setAttribute("transform",e),(e=v3.transform.baseVal.consolidate())?(e=e.matrix,y3(e.a,e.b,e.c,e.d,e.e,e.f)):g3)}var v3,kH=R(()=>{"use strict";bH();o(wH,"parseCss");o(TH,"parseSvg")});function EH(e,t,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,t,null,r);g.push({i:y-4,x:Zi(h,d)},{i:y-2,x:Zi(f,p)})}else(d||p)&&m.push("translate("+d+t+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:Zi(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:Zi(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:Zi(h,d)},{i:y-2,x:Zi(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=e(h),f=e(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";Ny();kH();o(EH,"interpolateTransform");T8=EH(wH,"px, ","px)","deg)"),k8=EH(TH,", ",")",")")});function SH(e){return function(t,r){var n=e((t=Ry(t)).h,(r=Ry(r)).h),i=yu(t.c,r.c),a=yu(t.l,r.l),s=yu(t.opacity,r.opacity);return function(l){return t.h=n(l),t.c=i(l),t.l=a(l),t.opacity=s(l),t+""}}}var E8,vwt,AH=R(()=>{"use strict";Bp();p8();o(SH,"hcl");E8=SH(cH),vwt=SH(yu)});var $p=R(()=>{"use strict";p3();Ny();vH();w8();CH();m8();AH()});function Fy(){return ud||(DH(xwt),ud=Py.now()+w3)}function xwt(){ud=0}function By(){this._call=this._time=this._next=null}function T3(e,t,r){var n=new By;return n.restart(e,t,r),n}function RH(){Fy(),++Gp;for(var e=x3,t;e;)(t=ud-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Gp}function _H(){ud=(b3=Py.now())+w3,Gp=Iy=0;try{RH()}finally{Gp=0,wwt(),ud=0}}function bwt(){var e=Py.now(),t=e-b3;t>LH&&(w3-=t,b3=e)}function wwt(){for(var e,t=x3,r,n=1/0;t;)t._call?(n>t._time&&(n=t._time),e=t,t=t._next):(r=t._next,t._next=null,t=e?e._next=r:x3=r);Oy=e,C8(n)}function C8(e){if(!Gp){Iy&&(Iy=clearTimeout(Iy));var t=e-ud;t>24?(e<1/0&&(Iy=setTimeout(_H,e-Py.now()-w3)),My&&(My=clearInterval(My))):(My||(b3=Py.now(),My=setInterval(bwt,LH)),Gp=1,DH(_H))}}var Gp,Iy,My,LH,x3,Oy,b3,ud,w3,Py,DH,S8=R(()=>{"use strict";Gp=0,Iy=0,My=0,LH=1e3,b3=0,ud=0,w3=0,Py=typeof performance=="object"&&performance.now?performance:Date,DH=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};o(Fy,"now");o(xwt,"clearNow");o(By,"Timer");By.prototype=T3.prototype={constructor:By,restart:o(function(e,t,r){if(typeof e!="function")throw new TypeError("callback is not a function");r=(r==null?Fy():+r)+(t==null?0:+t),!this._next&&Oy!==this&&(Oy?Oy._next=this:x3=this,Oy=this),this._call=e,this._time=r,C8()},"restart"),stop:o(function(){this._call&&(this._call=null,this._time=1/0,C8())},"stop")};o(T3,"timer");o(RH,"timerFlush");o(_H,"wake");o(bwt,"poke");o(wwt,"nap");o(C8,"sleep")});function zy(e,t,r){var n=new By;return t=t==null?0:+t,n.restart(i=>{n.stop(),e(i+t)},t,r),n}var NH=R(()=>{"use strict";S8();o(zy,"default")});var k3=R(()=>{"use strict";S8();NH()});function vu(e,t,r,n,i,a){var s=e.__transition;if(!s)e.__transition={};else if(r in s)return;Ewt(e,r,{name:t,index:n,group:i,on:Twt,tween:kwt,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:OH})}function Gy(e,t){var r=Bi(e,t);if(r.state>OH)throw new Error("too late; already scheduled");return r}function da(e,t){var r=Bi(e,t);if(r.state>E3)throw new Error("too late; already running");return r}function Bi(e,t){var r=e.__transition;if(!r||!(r=r[t]))throw new Error("transition not found");return r}function Ewt(e,t,r){var n=e.__transition,i;n[t]=r,r.timer=T3(a,0,r.time);function a(h){r.state=MH,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!==MH)return u();for(f in n)if(m=n[f],m.name===r.name){if(m.state===E3)return zy(s);m.state===IH?(m.state=$y,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete n[f]):+f{"use strict";oA();k3();Twt=sA("start","end","cancel","interrupt"),kwt=[],OH=0,MH=1,C3=2,E3=3,IH=4,S3=5,$y=6;o(vu,"default");o(Gy,"init");o(da,"set");o(Bi,"get");o(Ewt,"create")});function Vy(e,t){var r=e.__transition,n,i,a=!0,s;if(r){t=t==null?null:t+"";for(s in r){if((n=r[s]).name!==t){a=!1;continue}i=n.state>C3&&n.state{"use strict";ws();o(Vy,"default")});function A8(e){return this.each(function(){Vy(this,e)})}var BH=R(()=>{"use strict";PH();o(A8,"default")});function Cwt(e,t){var r,n;return function(){var i=da(this,e),a=i.tween;if(a!==r){n=r=a;for(var s=0,l=n.length;s{"use strict";ws();o(Cwt,"tweenRemove");o(Swt,"tweenFunction");o(_8,"default");o(Vp,"tweenValue")});function Hy(e,t){var r;return(typeof t=="number"?Zi:t instanceof xl?cd:(r=xl(t))?(t=r,cd):zp)(e,t)}var L8=R(()=>{"use strict";Bp();$p();o(Hy,"default")});function Awt(e){return function(){this.removeAttribute(e)}}function _wt(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Lwt(e,t,r){var n,i=r+"",a;return function(){var s=this.getAttribute(e);return s===i?null:s===n?a:a=t(n=s,r)}}function Dwt(e,t,r){var n,i=r+"",a;return function(){var s=this.getAttributeNS(e.space,e.local);return s===i?null:s===n?a:a=t(n=s,r)}}function Rwt(e,t,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttribute(e):(s=this.getAttribute(e),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=t(n=s,l)))}}function Nwt(e,t,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttributeNS(e.space,e.local):(s=this.getAttributeNS(e.space,e.local),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=t(n=s,l)))}}function D8(e,t){var r=hc(e),n=r==="transform"?k8:Hy;return this.attrTween(e,typeof t=="function"?(r.local?Nwt:Rwt)(r,n,Vp(this,"attr."+e,t)):t==null?(r.local?_wt:Awt)(r):(r.local?Dwt:Lwt)(r,n,t))}var FH=R(()=>{"use strict";$p();yl();Uy();L8();o(Awt,"attrRemove");o(_wt,"attrRemoveNS");o(Lwt,"attrConstant");o(Dwt,"attrConstantNS");o(Rwt,"attrFunction");o(Nwt,"attrFunctionNS");o(D8,"default")});function Mwt(e,t){return function(r){this.setAttribute(e,t.call(this,r))}}function Iwt(e,t){return function(r){this.setAttributeNS(e.space,e.local,t.call(this,r))}}function Owt(e,t){var r,n;function i(){var a=t.apply(this,arguments);return a!==n&&(r=(n=a)&&Iwt(e,a)),r}return o(i,"tween"),i._value=t,i}function Pwt(e,t){var r,n;function i(){var a=t.apply(this,arguments);return a!==n&&(r=(n=a)&&Mwt(e,a)),r}return o(i,"tween"),i._value=t,i}function R8(e,t){var r="attr."+e;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!="function")throw new Error;var n=hc(e);return this.tween(r,(n.local?Owt:Pwt)(n,t))}var zH=R(()=>{"use strict";yl();o(Mwt,"attrInterpolate");o(Iwt,"attrInterpolateNS");o(Owt,"attrTweenNS");o(Pwt,"attrTween");o(R8,"default")});function Bwt(e,t){return function(){Gy(this,e).delay=+t.apply(this,arguments)}}function Fwt(e,t){return t=+t,function(){Gy(this,e).delay=t}}function N8(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?Bwt:Fwt)(t,e)):Bi(this.node(),t).delay}var $H=R(()=>{"use strict";ws();o(Bwt,"delayFunction");o(Fwt,"delayConstant");o(N8,"default")});function zwt(e,t){return function(){da(this,e).duration=+t.apply(this,arguments)}}function $wt(e,t){return t=+t,function(){da(this,e).duration=t}}function M8(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?zwt:$wt)(t,e)):Bi(this.node(),t).duration}var GH=R(()=>{"use strict";ws();o(zwt,"durationFunction");o($wt,"durationConstant");o(M8,"default")});function Gwt(e,t){if(typeof t!="function")throw new Error;return function(){da(this,e).ease=t}}function I8(e){var t=this._id;return arguments.length?this.each(Gwt(t,e)):Bi(this.node(),t).ease}var VH=R(()=>{"use strict";ws();o(Gwt,"easeConstant");o(I8,"default")});function Vwt(e,t){return function(){var r=t.apply(this,arguments);if(typeof r!="function")throw new Error;da(this,e).ease=r}}function O8(e){if(typeof e!="function")throw new Error;return this.each(Vwt(this._id,e))}var UH=R(()=>{"use strict";ws();o(Vwt,"easeVarying");o(O8,"default")});function P8(e){typeof e!="function"&&(e=Np(e));for(var t=this._groups,r=t.length,n=new Array(r),i=0;i{"use strict";yl();hd();o(P8,"default")});function B8(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,r=e._groups,n=t.length,i=r.length,a=Math.min(n,i),s=new Array(n),l=0;l{"use strict";hd();o(B8,"default")});function Uwt(e){return(e+"").trim().split(/^|\s+/).every(function(t){var r=t.indexOf(".");return r>=0&&(t=t.slice(0,r)),!t||t==="start"})}function Hwt(e,t,r){var n,i,a=Uwt(t)?Gy:da;return function(){var s=a(this,e),l=s.on;l!==n&&(i=(n=l).copy()).on(t,r),s.on=i}}function F8(e,t){var r=this._id;return arguments.length<2?Bi(this.node(),r).on.on(e):this.each(Hwt(r,e,t))}var YH=R(()=>{"use strict";ws();o(Uwt,"start");o(Hwt,"onFunction");o(F8,"default")});function Wwt(e){return function(){var t=this.parentNode;for(var r in this.__transition)if(+r!==e)return;t&&t.removeChild(this)}}function z8(){return this.on("end.remove",Wwt(this._id))}var qH=R(()=>{"use strict";o(Wwt,"removeFunction");o(z8,"default")});function $8(e){var t=this._name,r=this._id;typeof e!="function"&&(e=Th(e));for(var n=this._groups,i=n.length,a=new Array(i),s=0;s{"use strict";yl();hd();ws();o($8,"default")});function G8(e){var t=this._name,r=this._id;typeof e!="function"&&(e=Rp(e));for(var n=this._groups,i=n.length,a=[],s=[],l=0;l{"use strict";yl();hd();ws();o(G8,"default")});function V8(){return new Ywt(this._groups,this._parents)}var Ywt,KH=R(()=>{"use strict";yl();Ywt=mu.prototype.constructor;o(V8,"default")});function qwt(e,t){var r,n,i;return function(){var a=kh(this,e),s=(this.style.removeProperty(e),kh(this,e));return a===s?null:a===r&&s===n?i:i=t(r=a,n=s)}}function QH(e){return function(){this.style.removeProperty(e)}}function Xwt(e,t,r){var n,i=r+"",a;return function(){var s=kh(this,e);return s===i?null:s===n?a:a=t(n=s,r)}}function jwt(e,t,r){var n,i,a;return function(){var s=kh(this,e),l=r(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(e),kh(this,e))),s===u?null:s===n&&u===i?a:(i=u,a=t(n=s,l))}}function Kwt(e,t){var r,n,i,a="style."+t,s="end."+a,l;return function(){var u=da(this,e),h=u.on,f=u.value[a]==null?l||(l=QH(t)):void 0;(h!==r||i!==f)&&(n=(r=h).copy()).on(s,i=f),u.on=n}}function U8(e,t,r){var n=(e+="")=="transform"?T8:Hy;return t==null?this.styleTween(e,qwt(e,n)).on("end.style."+e,QH(e)):typeof t=="function"?this.styleTween(e,jwt(e,n,Vp(this,"style."+e,t))).each(Kwt(this._id,e)):this.styleTween(e,Xwt(e,n,t),r).on("end.style."+e,null)}var ZH=R(()=>{"use strict";$p();yl();ws();Uy();L8();o(qwt,"styleNull");o(QH,"styleRemove");o(Xwt,"styleConstant");o(jwt,"styleFunction");o(Kwt,"styleMaybeRemove");o(U8,"default")});function Qwt(e,t,r){return function(n){this.style.setProperty(e,t.call(this,n),r)}}function Zwt(e,t,r){var n,i;function a(){var s=t.apply(this,arguments);return s!==i&&(n=(i=s)&&Qwt(e,s,r)),n}return o(a,"tween"),a._value=t,a}function H8(e,t,r){var n="style."+(e+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;return this.tween(n,Zwt(e,t,r??""))}var JH=R(()=>{"use strict";o(Qwt,"styleInterpolate");o(Zwt,"styleTween");o(H8,"default")});function Jwt(e){return function(){this.textContent=e}}function tTt(e){return function(){var t=e(this);this.textContent=t??""}}function W8(e){return this.tween("text",typeof e=="function"?tTt(Vp(this,"text",e)):Jwt(e==null?"":e+""))}var tW=R(()=>{"use strict";Uy();o(Jwt,"textConstant");o(tTt,"textFunction");o(W8,"default")});function eTt(e){return function(t){this.textContent=e.call(this,t)}}function rTt(e){var t,r;function n(){var i=e.apply(this,arguments);return i!==r&&(t=(r=i)&&eTt(i)),t}return o(n,"tween"),n._value=e,n}function Y8(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,rTt(e))}var eW=R(()=>{"use strict";o(eTt,"textInterpolate");o(rTt,"textTween");o(Y8,"default")});function q8(){for(var e=this._name,t=this._id,r=A3(),n=this._groups,i=n.length,a=0;a{"use strict";hd();ws();o(q8,"default")});function X8(){var e,t,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=da(this,n),f=h.on;f!==e&&(t=(e=f).copy(),t._.cancel.push(l),t._.interrupt.push(l),t._.end.push(u)),h.on=t}),i===0&&a()})}var nW=R(()=>{"use strict";ws();o(X8,"default")});function ts(e,t,r,n){this._groups=e,this._parents=t,this._name=r,this._id=n}function iW(e){return mu().transition(e)}function A3(){return++nTt}var nTt,xu,hd=R(()=>{"use strict";yl();FH();zH();$H();GH();VH();UH();HH();WH();YH();qH();XH();jH();KH();ZH();JH();tW();eW();rW();Uy();nW();nTt=0;o(ts,"Transition");o(iW,"transition");o(A3,"newId");xu=mu.prototype;ts.prototype=iW.prototype={constructor:ts,select:$8,selectAll:G8,selectChild:xu.selectChild,selectChildren:xu.selectChildren,filter:P8,merge:B8,selection:V8,transition:q8,call:xu.call,nodes:xu.nodes,node:xu.node,size:xu.size,empty:xu.empty,each:xu.each,on:F8,attr:D8,attrTween:R8,style:U8,styleTween:H8,text:W8,textTween:Y8,remove:z8,tween:_8,delay:N8,duration:M8,ease:I8,easeVarying:O8,end:X8,[Symbol.iterator]:xu[Symbol.iterator]}});function _3(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var aW=R(()=>{"use strict";o(_3,"cubicInOut")});var j8=R(()=>{"use strict";aW()});function aTt(e,t){for(var r;!(r=e.__transition)||!(r=r[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return r}function K8(e){var t,r;e instanceof ts?(t=e._id,e=e._name):(t=A3(),(r=iTt).time=Fy(),e=e==null?null:e+"");for(var n=this._groups,i=n.length,a=0;a{"use strict";hd();ws();j8();k3();iTt={time:null,delay:0,duration:250,ease:_3};o(aTt,"inherit");o(K8,"default")});var oW=R(()=>{"use strict";yl();BH();sW();mu.prototype.interrupt=A8;mu.prototype.transition=K8});var L3=R(()=>{"use strict";oW()});var lW=R(()=>{"use strict"});var cW=R(()=>{"use strict"});var uW=R(()=>{"use strict"});function hW(e){return[+e[0],+e[1]]}function sTt(e){return[hW(e[0]),hW(e[1])]}function Q8(e){return{type:e}}var bge,wge,Tge,kge,Ege,Cge,fW=R(()=>{"use strict";L3();lW();cW();uW();({abs:bge,max:wge,min:Tge}=Math);o(hW,"number1");o(sTt,"number2");kge={name:"x",handles:["w","e"].map(Q8),input:o(function(e,t){return e==null?null:[[+e[0],t[0][1]],[+e[1],t[1][1]]]},"input"),output:o(function(e){return e&&[e[0][0],e[1][0]]},"output")},Ege={name:"y",handles:["n","s"].map(Q8),input:o(function(e,t){return e==null?null:[[t[0][0],+e[0]],[t[1][0],+e[1]]]},"input"),output:o(function(e){return e&&[e[0][1],e[1][1]]},"output")},Cge={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(Q8),input:o(function(e){return e==null?null:sTt(e)},"input"),output:o(function(e){return e},"output")};o(Q8,"type")});var dW=R(()=>{"use strict";fW()});function pW(e){this._+=e[0];for(let t=1,r=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return pW;let r=10**t;return function(n){this._+=n[0];for(let i=1,a=n.length;i{"use strict";Z8=Math.PI,J8=2*Z8,fd=1e-6,oTt=J8-fd;o(pW,"append");o(lTt,"appendRound");dd=class{static{o(this,"Path")}constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?pW:lTt(t)}moveTo(t,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,r){this._append`L${this._x1=+t},${this._y1=+r}`}quadraticCurveTo(t,r,n,i){this._append`Q${+t},${+r},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(t,r,n,i,a,s){this._append`C${+t},${+r},${+n},${+i},${this._x1=+a},${this._y1=+s}`}arcTo(t,r,n,i,a){if(t=+t,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-t,h=i-r,f=s-t,d=l-r,p=f*f+d*d;if(this._x1===null)this._append`M${this._x1=t},${this._y1=r}`;else if(p>fd)if(!(Math.abs(d*u-h*f)>fd)||!a)this._append`L${this._x1=t},${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((Z8-Math.acos((y+p-v)/(2*x*b)))/2),S=w/b,T=w/x;Math.abs(S-1)>fd&&this._append`L${t+S*f},${r+S*d}`,this._append`A${a},${a},0,0,${+(d*m>f*g)},${this._x1=t+T*u},${this._y1=r+T*h}`}}arc(t,r,n,i,a,s){if(t=+t,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=t+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)>fd||Math.abs(this._y1-f)>fd)&&this._append`L${h},${f}`,n&&(p<0&&(p=p%J8+J8),p>oTt?this._append`A${n},${n},0,1,${d},${t-l},${r-u}A${n},${n},0,1,${d},${this._x1=h},${this._y1=f}`:p>fd&&this._append`A${n},${n},0,${+(p>=Z8)},${d},${this._x1=t+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(t,r,n,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}};o(mW,"path");mW.prototype=dd.prototype});var t_=R(()=>{"use strict";gW()});var yW=R(()=>{"use strict"});var vW=R(()=>{"use strict"});var xW=R(()=>{"use strict"});var bW=R(()=>{"use strict"});var wW=R(()=>{"use strict"});var TW=R(()=>{"use strict"});var kW=R(()=>{"use strict"});function e_(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function pd(e,t){if((r=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"))<0)return null;var r,n=e.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+e.slice(r+1)]}var Wy=R(()=>{"use strict";o(e_,"default");o(pd,"formatDecimalParts")});function bl(e){return e=pd(Math.abs(e)),e?e[1]:NaN}var Yy=R(()=>{"use strict";Wy();o(bl,"default")});function r_(e,t){return function(r,n){for(var i=r.length,a=[],s=0,l=e[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=e[s=(s+1)%e.length];return a.reverse().join(t)}}var EW=R(()=>{"use strict";o(r_,"default")});function n_(e){return function(t){return t.replace(/[0-9]/g,function(r){return e[+r]})}}var CW=R(()=>{"use strict";o(n_,"default")});function Ah(e){if(!(t=cTt.exec(e)))throw new Error("invalid format: "+e);var t;return new D3({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function D3(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}var cTt,i_=R(()=>{"use strict";cTt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;o(Ah,"formatSpecifier");Ah.prototype=D3.prototype;o(D3,"FormatSpecifier");D3.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 a_(e){t:for(var t=e.length,r=1,n=-1,i;r0&&(n=0);break}return n>0?e.slice(0,n)+e.slice(i+1):e}var SW=R(()=>{"use strict";o(a_,"default")});function o_(e,t){var r=pd(e,t);if(!r)return e+"";var n=r[0],i=r[1],a=i-(s_=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")+pd(e,Math.max(0,t+a-1))[0]}var s_,l_=R(()=>{"use strict";Wy();o(o_,"default")});function R3(e,t){var r=pd(e,t);if(!r)return e+"";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 AW=R(()=>{"use strict";Wy();o(R3,"default")});var c_,_W=R(()=>{"use strict";Wy();l_();AW();c_={"%":o((e,t)=>(e*100).toFixed(t),"%"),b:o(e=>Math.round(e).toString(2),"b"),c:o(e=>e+"","c"),d:e_,e:o((e,t)=>e.toExponential(t),"e"),f:o((e,t)=>e.toFixed(t),"f"),g:o((e,t)=>e.toPrecision(t),"g"),o:o(e=>Math.round(e).toString(8),"o"),p:o((e,t)=>R3(e*100,t),"p"),r:R3,s:o_,X:o(e=>Math.round(e).toString(16).toUpperCase(),"X"),x:o(e=>Math.round(e).toString(16),"x")}});function N3(e){return e}var LW=R(()=>{"use strict";o(N3,"default")});function u_(e){var t=e.grouping===void 0||e.thousands===void 0?N3:r_(DW.call(e.grouping,Number),e.thousands+""),r=e.currency===void 0?"":e.currency[0]+"",n=e.currency===void 0?"":e.currency[1]+"",i=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?N3:n_(DW.call(e.numerals,String)),s=e.percent===void 0?"%":e.percent+"",l=e.minus===void 0?"\u2212":e.minus+"",u=e.nan===void 0?"NaN":e.nan+"";function h(d){d=Ah(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,S=d.trim,T=d.type;T==="n"?(b=!0,T="g"):c_[T]||(w===void 0&&(w=12),S=!0,T="g"),(v||p==="0"&&m==="=")&&(v=!0,p="0",m="=");var E=y==="$"?r:y==="#"&&/[boxX]/.test(T)?"0"+T.toLowerCase():"",_=y==="$"?n:/[%p]/.test(T)?s:"",A=c_[T],L=/[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 M(N){var k=E,I=_,C,O,D;if(T==="c")I=A(N)+I,N="";else{N=+N;var P=N<0||1/N<0;if(N=isNaN(N)?u:A(Math.abs(N),w),S&&(N=a_(N)),P&&+N==0&&g!=="+"&&(P=!1),k=(P?g==="("?g:l:g==="-"||g==="("?"":g)+k,I=(T==="s"?RW[8+s_/3]:"")+I+(P&&g==="("?")":""),L){for(C=-1,O=N.length;++CD||D>57){I=(D===46?i+N.slice(C+1):N.slice(C))+I,N=N.slice(0,C);break}}}b&&!v&&(N=t(N,1/0));var F=k.length+N.length+I.length,B=F>1)+k+N+I+B.slice(F);break;default:N=B+k+N+I;break}return a(N)}return o(M,"format"),M.toString=function(){return d+""},M}o(h,"newFormat");function f(d,p){var m=h((d=Ah(d),d.type="f",d)),g=Math.max(-8,Math.min(8,Math.floor(bl(p)/3)))*3,y=Math.pow(10,-g),v=RW[8+g/3];return function(x){return m(y*x)+v}}return o(f,"formatPrefix"),{format:h,formatPrefix:f}}var DW,RW,NW=R(()=>{"use strict";Yy();EW();CW();i_();SW();_W();l_();LW();DW=Array.prototype.map,RW=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];o(u_,"default")});function h_(e){return M3=u_(e),I3=M3.format,O3=M3.formatPrefix,M3}var M3,I3,O3,MW=R(()=>{"use strict";NW();h_({thousands:",",grouping:[3],currency:["$",""]});o(h_,"defaultLocale")});function P3(e){return Math.max(0,-bl(Math.abs(e)))}var IW=R(()=>{"use strict";Yy();o(P3,"default")});function B3(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(bl(t)/3)))*3-bl(Math.abs(e)))}var OW=R(()=>{"use strict";Yy();o(B3,"default")});function F3(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,bl(t)-bl(e))+1}var PW=R(()=>{"use strict";Yy();o(F3,"default")});var f_=R(()=>{"use strict";MW();i_();IW();OW();PW()});var BW=R(()=>{"use strict"});var FW=R(()=>{"use strict"});var zW=R(()=>{"use strict"});var $W=R(()=>{"use strict"});function _h(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e);break}return this}var qy=R(()=>{"use strict";o(_h,"initRange")});function bu(){var e=new Lp,t=[],r=[],n=d_;function i(a){let s=e.get(a);if(s===void 0){if(n!==d_)return n;e.set(a,s=t.push(a)-1)}return r[s%r.length]}return o(i,"scale"),i.domain=function(a){if(!arguments.length)return t.slice();t=[],e=new Lp;for(let s of a)e.has(s)||e.set(s,t.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 bu(t,r).unknown(n)},_h.apply(i,arguments),i}var d_,p_=R(()=>{"use strict";wh();qy();d_=Symbol("implicit");o(bu,"ordinal")});function Up(){var e=bu().unknown(void 0),t=e.domain,r=e.range,n=0,i=1,a,s,l=!1,u=0,h=0,f=.5;delete e.unknown;function d(){var p=t().length,m=i{"use strict";wh();qy();p_();o(Up,"band")});function m_(e){return function(){return e}}var VW=R(()=>{"use strict";o(m_,"constants")});function g_(e){return+e}var UW=R(()=>{"use strict";o(g_,"number")});function Hp(e){return e}function y_(e,t){return(t-=e=+e)?function(r){return(r-e)/t}:m_(isNaN(t)?NaN:.5)}function uTt(e,t){var r;return e>t&&(r=e,e=t,t=r),function(n){return Math.max(e,Math.min(t,n))}}function hTt(e,t,r){var n=e[0],i=e[1],a=t[0],s=t[1];return i2?fTt:hTt,u=h=null,d}o(f,"rescale");function d(p){return p==null||isNaN(p=+p)?a:(u||(u=l(e.map(n),t,r)))(n(s(p)))}return o(d,"scale"),d.invert=function(p){return s(i((h||(h=l(t,e.map(n),Zi)))(p)))},d.domain=function(p){return arguments.length?(e=Array.from(p,g_),f()):e.slice()},d.range=function(p){return arguments.length?(t=Array.from(p),f()):t.slice()},d.rangeRound=function(p){return t=Array.from(p),r=m3,f()},d.clamp=function(p){return arguments.length?(s=p?!0:Hp,f()):s!==Hp},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 dTt()(Hp,Hp)}var HW,v_=R(()=>{"use strict";wh();$p();VW();UW();HW=[0,1];o(Hp,"identity");o(y_,"normalize");o(uTt,"clamper");o(hTt,"bimap");o(fTt,"polymap");o(z3,"copy");o(dTt,"transformer");o(Xy,"continuous")});function x_(e,t,r,n){var i=Dp(e,t,r),a;switch(n=Ah(n??",f"),n.type){case"s":{var s=Math.max(Math.abs(e),Math.abs(t));return n.precision==null&&!isNaN(a=B3(i,s))&&(n.precision=a),O3(n,s)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=F3(i,Math.max(Math.abs(e),Math.abs(t))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=P3(i))&&(n.precision=a-(n.type==="%")*2);break}}return I3(n)}var WW=R(()=>{"use strict";wh();f_();o(x_,"tickFormat")});function pTt(e){var t=e.domain;return e.ticks=function(r){var n=t();return Z4(n[0],n[n.length-1],r??10)},e.tickFormat=function(r,n){var i=t();return x_(i[0],i[i.length-1],r??10,n)},e.nice=function(r){r==null&&(r=10);var n=t(),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,t(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 e},e}function wl(){var e=Xy();return e.copy=function(){return z3(e,wl())},_h.apply(e,arguments),pTt(e)}var YW=R(()=>{"use strict";wh();v_();qy();WW();o(pTt,"linearish");o(wl,"linear")});function b_(e,t){e=e.slice();var r=0,n=e.length-1,i=e[r],a=e[n],s;return a{"use strict";o(b_,"nice")});function vn(e,t,r,n){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return o(i,"interval"),i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{let s=i(a),l=i.ceil(a);return a-s(t(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)),t(a,l),e(a);while(hvn(s=>{if(s>=s)for(;e(s),!a(s);)s.setTime(s-1)},(s,l)=>{if(s>=s)if(l<0)for(;++l<=0;)for(;t(s,-1),!a(s););else for(;--l>=0;)for(;t(s,1),!a(s););}),r&&(i.count=(a,s)=>(w_.setTime(+a),T_.setTime(+s),e(w_),e(T_),Math.floor(r(w_,T_))),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 w_,T_,wu=R(()=>{"use strict";w_=new Date,T_=new Date;o(vn,"timeInterval")});var pc,XW,k_=R(()=>{"use strict";wu();pc=vn(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);pc.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?vn(t=>{t.setTime(Math.floor(t/e)*e)},(t,r)=>{t.setTime(+t+r*e)},(t,r)=>(r-t)/e):pc);XW=pc.range});var Zs,jW,E_=R(()=>{"use strict";wu();Zs=vn(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*1e3)},(e,t)=>(t-e)/1e3,e=>e.getUTCSeconds()),jW=Zs.range});var Tu,mTt,$3,gTt,C_=R(()=>{"use strict";wu();Tu=vn(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*1e3)},(e,t)=>{e.setTime(+e+t*6e4)},(e,t)=>(t-e)/6e4,e=>e.getMinutes()),mTt=Tu.range,$3=vn(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*6e4)},(e,t)=>(t-e)/6e4,e=>e.getUTCMinutes()),gTt=$3.range});var ku,yTt,G3,vTt,S_=R(()=>{"use strict";wu();ku=vn(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*1e3-e.getMinutes()*6e4)},(e,t)=>{e.setTime(+e+t*36e5)},(e,t)=>(t-e)/36e5,e=>e.getHours()),yTt=ku.range,G3=vn(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*36e5)},(e,t)=>(t-e)/36e5,e=>e.getUTCHours()),vTt=G3.range});var Mo,xTt,Ky,bTt,V3,wTt,A_=R(()=>{"use strict";wu();Mo=vn(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*6e4)/864e5,e=>e.getDate()-1),xTt=Mo.range,Ky=vn(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/864e5,e=>e.getUTCDate()-1),bTt=Ky.range,V3=vn(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/864e5,e=>Math.floor(e/864e5)),wTt=V3.range});function yd(e){return vn(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,r)=>{t.setDate(t.getDate()+r*7)},(t,r)=>(r-t-(r.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/6048e5)}function vd(e){return vn(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCDate(t.getUTCDate()+r*7)},(t,r)=>(r-t)/6048e5)}var Tl,Lh,U3,H3,gc,W3,Y3,QW,TTt,kTt,ETt,CTt,STt,ATt,xd,Wp,ZW,JW,Dh,tY,eY,rY,_Tt,LTt,DTt,RTt,NTt,MTt,__=R(()=>{"use strict";wu();o(yd,"timeWeekday");Tl=yd(0),Lh=yd(1),U3=yd(2),H3=yd(3),gc=yd(4),W3=yd(5),Y3=yd(6),QW=Tl.range,TTt=Lh.range,kTt=U3.range,ETt=H3.range,CTt=gc.range,STt=W3.range,ATt=Y3.range;o(vd,"utcWeekday");xd=vd(0),Wp=vd(1),ZW=vd(2),JW=vd(3),Dh=vd(4),tY=vd(5),eY=vd(6),rY=xd.range,_Tt=Wp.range,LTt=ZW.range,DTt=JW.range,RTt=Dh.range,NTt=tY.range,MTt=eY.range});var Eu,ITt,q3,OTt,L_=R(()=>{"use strict";wu();Eu=vn(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth()),ITt=Eu.range,q3=vn(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth()),OTt=q3.range});var Js,PTt,kl,BTt,D_=R(()=>{"use strict";wu();Js=vn(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Js.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:vn(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,r)=>{t.setFullYear(t.getFullYear()+r*e)});PTt=Js.range,kl=vn(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());kl.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:vn(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)});BTt=kl.range});function iY(e,t,r,n,i,a){let s=[[Zs,1,1e3],[Zs,5,5*1e3],[Zs,15,15*1e3],[Zs,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],[t,1,2592e6],[t,3,3*2592e6],[e,1,31536e6]];function l(h,f,d){let p=fv).right(s,p);if(m===s.length)return e.every(Dp(h/31536e6,f/31536e6,d));if(m===0)return pc.every(Math.max(Dp(h,f,d),1));let[g,y]=s[p/s[m-1][2]{"use strict";wh();k_();E_();C_();S_();A_();__();L_();D_();o(iY,"ticker");[zTt,$Tt]=iY(kl,q3,xd,V3,G3,$3),[R_,N_]=iY(Js,Eu,Tl,Mo,ku,Tu)});var X3=R(()=>{"use strict";k_();E_();C_();S_();A_();__();L_();D_();aY()});function M_(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function I_(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function Qy(e,t,r){return{y:e,m:t,d:r,H:0,M:0,S:0,L:0}}function O_(e){var t=e.dateTime,r=e.date,n=e.time,i=e.periods,a=e.days,s=e.shortDays,l=e.months,u=e.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:hY,e:hY,f:ckt,g:xkt,G:wkt,H:skt,I:okt,j:lkt,L:gY,m:ukt,M:hkt,p:z,q:W,Q:pY,s:mY,S:fkt,u:dkt,U:pkt,V:mkt,w:gkt,W:ykt,x:null,X:null,y:vkt,Y:bkt,Z:Tkt,"%":dY},S={a:Q,A:j,b:at,B:X,c:null,d:fY,e:fY,f:Skt,g:Pkt,G:Fkt,H:kkt,I:Ekt,j:Ckt,L:vY,m:Akt,M:_kt,p:J,q:Z,Q:pY,s:mY,S:Lkt,u:Dkt,U:Rkt,V:Nkt,w:Mkt,W:Ikt,x:null,X:null,y:Okt,Y:Bkt,Z:zkt,"%":dY},T={a:M,A:N,b:k,B:I,c:C,d:cY,e:cY,f:rkt,g:lY,G:oY,H:uY,I:uY,j:ZTt,L:ekt,m:QTt,M:JTt,p:L,q:KTt,Q:ikt,s:akt,S:tkt,u:WTt,U:YTt,V:qTt,w:HTt,W:XTt,x:O,X:D,y:lY,Y:oY,Z:jTt,"%":nkt};w.x=E(r,w),w.X=E(n,w),w.c=E(t,w),S.x=E(r,S),S.X=E(n,S),S.c=E(t,S);function E(H,q){return function(K){var ot=[],ct=-1,ut=0,et=H.length,Mt,it,wt;for(K instanceof Date||(K=new Date(+K));++ct53)return null;"w"in ot||(ot.w=1),"Z"in ot?(ut=I_(Qy(ot.y,0,1)),et=ut.getUTCDay(),ut=et>4||et===0?Wp.ceil(ut):Wp(ut),ut=Ky.offset(ut,(ot.V-1)*7),ot.y=ut.getUTCFullYear(),ot.m=ut.getUTCMonth(),ot.d=ut.getUTCDate()+(ot.w+6)%7):(ut=M_(Qy(ot.y,0,1)),et=ut.getDay(),ut=et>4||et===0?Lh.ceil(ut):Lh(ut),ut=Mo.offset(ut,(ot.V-1)*7),ot.y=ut.getFullYear(),ot.m=ut.getMonth(),ot.d=ut.getDate()+(ot.w+6)%7)}else("W"in ot||"U"in ot)&&("w"in ot||(ot.w="u"in ot?ot.u%7:"W"in ot?1:0),et="Z"in ot?I_(Qy(ot.y,0,1)).getUTCDay():M_(Qy(ot.y,0,1)).getDay(),ot.m=0,ot.d="W"in ot?(ot.w+6)%7+ot.W*7-(et+5)%7:ot.w+ot.U*7-(et+6)%7);return"Z"in ot?(ot.H+=ot.Z/100|0,ot.M+=ot.Z%100,I_(ot)):M_(ot)}}o(_,"newParse");function A(H,q,K,ot){for(var ct=0,ut=q.length,et=K.length,Mt,it;ct=et)return-1;if(Mt=q.charCodeAt(ct++),Mt===37){if(Mt=q.charAt(ct++),it=T[Mt in sY?q.charAt(ct++):Mt],!it||(ot=it(H,K,ot))<0)return-1}else if(Mt!=K.charCodeAt(ot++))return-1}return ot}o(A,"parseSpecifier");function L(H,q,K){var ot=h.exec(q.slice(K));return ot?(H.p=f.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(L,"parsePeriod");function M(H,q,K){var ot=m.exec(q.slice(K));return ot?(H.w=g.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(M,"parseShortWeekday");function N(H,q,K){var ot=d.exec(q.slice(K));return ot?(H.w=p.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(N,"parseWeekday");function k(H,q,K){var ot=x.exec(q.slice(K));return ot?(H.m=b.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(k,"parseShortMonth");function I(H,q,K){var ot=y.exec(q.slice(K));return ot?(H.m=v.get(ot[0].toLowerCase()),K+ot[0].length):-1}o(I,"parseMonth");function C(H,q,K){return A(H,t,q,K)}o(C,"parseLocaleDateTime");function O(H,q,K){return A(H,r,q,K)}o(O,"parseLocaleDate");function D(H,q,K){return A(H,n,q,K)}o(D,"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 Q(H){return s[H.getUTCDay()]}o(Q,"formatUTCShortWeekday");function j(H){return a[H.getUTCDay()]}o(j,"formatUTCWeekday");function at(H){return u[H.getUTCMonth()]}o(at,"formatUTCShortMonth");function X(H){return l[H.getUTCMonth()]}o(X,"formatUTCMonth");function J(H){return i[+(H.getUTCHours()>=12)]}o(J,"formatUTCPeriod");function Z(H){return 1+~~(H.getUTCMonth()/3)}return o(Z,"formatUTCQuarter"),{format:o(function(H){var q=E(H+="",w);return q.toString=function(){return H},q},"format"),parse:o(function(H){var q=_(H+="",!1);return q.toString=function(){return H},q},"parse"),utcFormat:o(function(H){var q=E(H+="",S);return q.toString=function(){return H},q},"utcFormat"),utcParse:o(function(H){var q=_(H+="",!0);return q.toString=function(){return H},q},"utcParse")}}function Hr(e,t,r){var n=e<0?"-":"",i=(n?-e:e)+"",a=i.length;return n+(a[t.toLowerCase(),r]))}function HTt(e,t,r){var n=Ji.exec(t.slice(r,r+1));return n?(e.w=+n[0],r+n[0].length):-1}function WTt(e,t,r){var n=Ji.exec(t.slice(r,r+1));return n?(e.u=+n[0],r+n[0].length):-1}function YTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.U=+n[0],r+n[0].length):-1}function qTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.V=+n[0],r+n[0].length):-1}function XTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.W=+n[0],r+n[0].length):-1}function oY(e,t,r){var n=Ji.exec(t.slice(r,r+4));return n?(e.y=+n[0],r+n[0].length):-1}function lY(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function jTt(e,t,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return n?(e.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function KTt(e,t,r){var n=Ji.exec(t.slice(r,r+1));return n?(e.q=n[0]*3-3,r+n[0].length):-1}function QTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.m=n[0]-1,r+n[0].length):-1}function cY(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function ZTt(e,t,r){var n=Ji.exec(t.slice(r,r+3));return n?(e.m=0,e.d=+n[0],r+n[0].length):-1}function uY(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function JTt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function tkt(e,t,r){var n=Ji.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function ekt(e,t,r){var n=Ji.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function rkt(e,t,r){var n=Ji.exec(t.slice(r,r+6));return n?(e.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function nkt(e,t,r){var n=GTt.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function ikt(e,t,r){var n=Ji.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function akt(e,t,r){var n=Ji.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function hY(e,t){return Hr(e.getDate(),t,2)}function skt(e,t){return Hr(e.getHours(),t,2)}function okt(e,t){return Hr(e.getHours()%12||12,t,2)}function lkt(e,t){return Hr(1+Mo.count(Js(e),e),t,3)}function gY(e,t){return Hr(e.getMilliseconds(),t,3)}function ckt(e,t){return gY(e,t)+"000"}function ukt(e,t){return Hr(e.getMonth()+1,t,2)}function hkt(e,t){return Hr(e.getMinutes(),t,2)}function fkt(e,t){return Hr(e.getSeconds(),t,2)}function dkt(e){var t=e.getDay();return t===0?7:t}function pkt(e,t){return Hr(Tl.count(Js(e)-1,e),t,2)}function yY(e){var t=e.getDay();return t>=4||t===0?gc(e):gc.ceil(e)}function mkt(e,t){return e=yY(e),Hr(gc.count(Js(e),e)+(Js(e).getDay()===4),t,2)}function gkt(e){return e.getDay()}function ykt(e,t){return Hr(Lh.count(Js(e)-1,e),t,2)}function vkt(e,t){return Hr(e.getFullYear()%100,t,2)}function xkt(e,t){return e=yY(e),Hr(e.getFullYear()%100,t,2)}function bkt(e,t){return Hr(e.getFullYear()%1e4,t,4)}function wkt(e,t){var r=e.getDay();return e=r>=4||r===0?gc(e):gc.ceil(e),Hr(e.getFullYear()%1e4,t,4)}function Tkt(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Hr(t/60|0,"0",2)+Hr(t%60,"0",2)}function fY(e,t){return Hr(e.getUTCDate(),t,2)}function kkt(e,t){return Hr(e.getUTCHours(),t,2)}function Ekt(e,t){return Hr(e.getUTCHours()%12||12,t,2)}function Ckt(e,t){return Hr(1+Ky.count(kl(e),e),t,3)}function vY(e,t){return Hr(e.getUTCMilliseconds(),t,3)}function Skt(e,t){return vY(e,t)+"000"}function Akt(e,t){return Hr(e.getUTCMonth()+1,t,2)}function _kt(e,t){return Hr(e.getUTCMinutes(),t,2)}function Lkt(e,t){return Hr(e.getUTCSeconds(),t,2)}function Dkt(e){var t=e.getUTCDay();return t===0?7:t}function Rkt(e,t){return Hr(xd.count(kl(e)-1,e),t,2)}function xY(e){var t=e.getUTCDay();return t>=4||t===0?Dh(e):Dh.ceil(e)}function Nkt(e,t){return e=xY(e),Hr(Dh.count(kl(e),e)+(kl(e).getUTCDay()===4),t,2)}function Mkt(e){return e.getUTCDay()}function Ikt(e,t){return Hr(Wp.count(kl(e)-1,e),t,2)}function Okt(e,t){return Hr(e.getUTCFullYear()%100,t,2)}function Pkt(e,t){return e=xY(e),Hr(e.getUTCFullYear()%100,t,2)}function Bkt(e,t){return Hr(e.getUTCFullYear()%1e4,t,4)}function Fkt(e,t){var r=e.getUTCDay();return e=r>=4||r===0?Dh(e):Dh.ceil(e),Hr(e.getUTCFullYear()%1e4,t,4)}function zkt(){return"+0000"}function dY(){return"%"}function pY(e){return+e}function mY(e){return Math.floor(+e/1e3)}var sY,Ji,GTt,VTt,bY=R(()=>{"use strict";X3();o(M_,"localDate");o(I_,"utcDate");o(Qy,"newDate");o(O_,"formatLocale");sY={"-":"",_:" ",0:"0"},Ji=/^\s*\d+/,GTt=/^%/,VTt=/[\\^$*+?|[\]().{}]/g;o(Hr,"pad");o(UTt,"requote");o(Zy,"formatRe");o(Jy,"formatLookup");o(HTt,"parseWeekdayNumberSunday");o(WTt,"parseWeekdayNumberMonday");o(YTt,"parseWeekNumberSunday");o(qTt,"parseWeekNumberISO");o(XTt,"parseWeekNumberMonday");o(oY,"parseFullYear");o(lY,"parseYear");o(jTt,"parseZone");o(KTt,"parseQuarter");o(QTt,"parseMonthNumber");o(cY,"parseDayOfMonth");o(ZTt,"parseDayOfYear");o(uY,"parseHour24");o(JTt,"parseMinutes");o(tkt,"parseSeconds");o(ekt,"parseMilliseconds");o(rkt,"parseMicroseconds");o(nkt,"parseLiteralPercent");o(ikt,"parseUnixTimestamp");o(akt,"parseUnixTimestampSeconds");o(hY,"formatDayOfMonth");o(skt,"formatHour24");o(okt,"formatHour12");o(lkt,"formatDayOfYear");o(gY,"formatMilliseconds");o(ckt,"formatMicroseconds");o(ukt,"formatMonthNumber");o(hkt,"formatMinutes");o(fkt,"formatSeconds");o(dkt,"formatWeekdayNumberMonday");o(pkt,"formatWeekNumberSunday");o(yY,"dISO");o(mkt,"formatWeekNumberISO");o(gkt,"formatWeekdayNumberSunday");o(ykt,"formatWeekNumberMonday");o(vkt,"formatYear");o(xkt,"formatYearISO");o(bkt,"formatFullYear");o(wkt,"formatFullYearISO");o(Tkt,"formatZone");o(fY,"formatUTCDayOfMonth");o(kkt,"formatUTCHour24");o(Ekt,"formatUTCHour12");o(Ckt,"formatUTCDayOfYear");o(vY,"formatUTCMilliseconds");o(Skt,"formatUTCMicroseconds");o(Akt,"formatUTCMonthNumber");o(_kt,"formatUTCMinutes");o(Lkt,"formatUTCSeconds");o(Dkt,"formatUTCWeekdayNumberMonday");o(Rkt,"formatUTCWeekNumberSunday");o(xY,"UTCdISO");o(Nkt,"formatUTCWeekNumberISO");o(Mkt,"formatUTCWeekdayNumberSunday");o(Ikt,"formatUTCWeekNumberMonday");o(Okt,"formatUTCYear");o(Pkt,"formatUTCYearISO");o(Bkt,"formatUTCFullYear");o(Fkt,"formatUTCFullYearISO");o(zkt,"formatUTCZone");o(dY,"formatLiteralPercent");o(pY,"formatUnixTimestamp");o(mY,"formatUnixTimestampSeconds")});function P_(e){return Yp=O_(e),bd=Yp.format,wY=Yp.parse,TY=Yp.utcFormat,kY=Yp.utcParse,Yp}var Yp,bd,wY,TY,kY,EY=R(()=>{"use strict";bY();P_({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(P_,"defaultLocale")});var B_=R(()=>{"use strict";EY()});function $kt(e){return new Date(e)}function Gkt(e){return e instanceof Date?+e:+new Date(+e)}function CY(e,t,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"),S=h("%Y");function T(E){return(u(E){"use strict";X3();B_();v_();qy();qW();o($kt,"date");o(Gkt,"number");o(CY,"calendar");o(j3,"time")});var AY=R(()=>{"use strict";GW();YW();p_();SY()});function F_(e){for(var t=e.length/6|0,r=new Array(t),n=0;n{"use strict";o(F_,"default")});var z_,LY=R(()=>{"use strict";_Y();z_=F_("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var DY=R(()=>{"use strict";LY()});function zn(e){return o(function(){return e},"constant")}var K3=R(()=>{"use strict";o(zn,"default")});function NY(e){return e>1?0:e<-1?qp:Math.acos(e)}function G_(e){return e>=1?tv:e<=-1?-tv:Math.asin(e)}var $_,pa,Rh,RY,Q3,El,wd,ta,qp,tv,Xp,Z3=R(()=>{"use strict";$_=Math.abs,pa=Math.atan2,Rh=Math.cos,RY=Math.max,Q3=Math.min,El=Math.sin,wd=Math.sqrt,ta=1e-12,qp=Math.PI,tv=qp/2,Xp=2*qp;o(NY,"acos");o(G_,"asin")});function J3(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(r==null)t=null;else{let n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);t=n}return e},()=>new dd(t)}var V_=R(()=>{"use strict";t_();o(J3,"withPath")});function Vkt(e){return e.innerRadius}function Ukt(e){return e.outerRadius}function Hkt(e){return e.startAngle}function Wkt(e){return e.endAngle}function Ykt(e){return e&&e.padAngle}function qkt(e,t,r,n,i,a,s,l){var u=r-e,h=n-t,f=s-i,d=l-a,p=d*u-f*h;if(!(p*pC*C+O*O&&(A=M,L=N),{cx:A,cy:L,x01:-f,y01:-d,x11:A*(i/T-1),y11:L*(i/T-1)}}function Cl(){var e=Vkt,t=Ukt,r=zn(0),n=null,i=Hkt,a=Wkt,s=Ykt,l=null,u=J3(h);function h(){var f,d,p=+e.apply(this,arguments),m=+t.apply(this,arguments),g=i.apply(this,arguments)-tv,y=a.apply(this,arguments)-tv,v=$_(y-g),x=y>g;if(l||(l=f=u()),mta))l.moveTo(0,0);else if(v>Xp-ta)l.moveTo(m*Rh(g),m*El(g)),l.arc(0,0,m,g,y,!x),p>ta&&(l.moveTo(p*Rh(y),p*El(y)),l.arc(0,0,p,y,g,x));else{var b=g,w=y,S=g,T=y,E=v,_=v,A=s.apply(this,arguments)/2,L=A>ta&&(n?+n.apply(this,arguments):wd(p*p+m*m)),M=Q3($_(m-p)/2,+r.apply(this,arguments)),N=M,k=M,I,C;if(L>ta){var O=G_(L/p*El(A)),D=G_(L/m*El(A));(E-=O*2)>ta?(O*=x?1:-1,S+=O,T-=O):(E=0,S=T=(g+y)/2),(_-=D*2)>ta?(D*=x?1:-1,b+=D,w-=D):(_=0,b=w=(g+y)/2)}var P=m*Rh(b),F=m*El(b),B=p*Rh(T),G=p*El(T);if(M>ta){var z=m*Rh(w),W=m*El(w),Q=p*Rh(S),j=p*El(S),at;if(vta?k>ta?(I=t5(Q,j,P,F,m,k,x),C=t5(z,W,B,G,m,k,x),l.moveTo(I.cx+I.x01,I.cy+I.y01),kta)||!(E>ta)?l.lineTo(B,G):N>ta?(I=t5(B,G,z,W,p,-N,x),C=t5(P,F,Q,j,p,-N,x),l.lineTo(I.cx+I.x01,I.cy+I.y01),N{"use strict";K3();Z3();V_();o(Vkt,"arcInnerRadius");o(Ukt,"arcOuterRadius");o(Hkt,"arcStartAngle");o(Wkt,"arcEndAngle");o(Ykt,"arcPadAngle");o(qkt,"intersect");o(t5,"cornerTangents");o(Cl,"default")});function ev(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}var t2e,U_=R(()=>{"use strict";t2e=Array.prototype.slice;o(ev,"default")});function IY(e){this._context=e}function Cu(e){return new IY(e)}var H_=R(()=>{"use strict";o(IY,"Linear");IY.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(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}},"point")};o(Cu,"default")});function OY(e){return e[0]}function PY(e){return e[1]}var BY=R(()=>{"use strict";o(OY,"x");o(PY,"y")});function ma(e,t){var r=zn(!0),n=null,i=Cu,a=null,s=J3(l);e=typeof e=="function"?e:e===void 0?OY:zn(e),t=typeof t=="function"?t:t===void 0?PY:zn(t);function l(u){var h,f=(u=ev(u)).length,d,p=!1,m;for(n==null&&(a=i(m=s())),h=0;h<=f;++h)!(h{"use strict";U_();K3();H_();V_();BY();o(ma,"default")});function W_(e,t){return te?1:t>=e?0:NaN}var zY=R(()=>{"use strict";o(W_,"default")});function Y_(e){return e}var $Y=R(()=>{"use strict";o(Y_,"default")});function e5(){var e=Y_,t=W_,r=null,n=zn(0),i=zn(Xp),a=zn(0);function s(l){var u,h=(l=ev(l)).length,f,d,p=0,m=new Array(h),g=new Array(h),y=+n.apply(this,arguments),v=Math.min(Xp,Math.max(-Xp,i.apply(this,arguments)-y)),x,b=Math.min(Math.abs(v)/h,a.apply(this,arguments)),w=b*(v<0?-1:1),S;for(u=0;u0&&(p+=S);for(t!=null?m.sort(function(T,E){return t(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?S*d:0)+w,g[f]={data:l[f],index:u,value:S,startAngle:y,endAngle:x,padAngle:b};return g}return o(s,"pie"),s.value=function(l){return arguments.length?(e=typeof l=="function"?l:zn(+l),s):e},s.sortValues=function(l){return arguments.length?(t=l,r=null,s):t},s.sort=function(l){return arguments.length?(r=l,t=null,s):r},s.startAngle=function(l){return arguments.length?(n=typeof l=="function"?l:zn(+l),s):n},s.endAngle=function(l){return arguments.length?(i=typeof l=="function"?l:zn(+l),s):i},s.padAngle=function(l){return arguments.length?(a=typeof l=="function"?l:zn(+l),s):a},s}var GY=R(()=>{"use strict";U_();K3();zY();$Y();Z3();o(e5,"default")});function q_(e){return new r5(e,!0)}function X_(e){return new r5(e,!1)}var r5,VY=R(()=>{"use strict";r5=class{static{o(this,"Bump")}constructor(t,r){this._context=t,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(t,r){switch(t=+t,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r);break}}this._x0=t,this._y0=r}};o(q_,"bumpX");o(X_,"bumpY")});function to(){}var rv=R(()=>{"use strict";o(to,"default")});function jp(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function nv(e){this._context=e}function Ts(e){return new nv(e)}var iv=R(()=>{"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(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);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,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t},"point")};o(Ts,"default")});function UY(e){this._context=e}function n5(e){return new UY(e)}var HY=R(()=>{"use strict";rv();iv();o(UY,"BasisClosed");UY.prototype={areaStart:to,areaEnd:to,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(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:jp(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t},"point")};o(n5,"default")});function WY(e){this._context=e}function i5(e){return new WY(e)}var YY=R(()=>{"use strict";iv();o(WY,"BasisOpen");WY.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(e,t){switch(e=+e,t=+t,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+e)/6,n=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:jp(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t},"point")};o(i5,"default")});function qY(e,t){this._basis=new nv(e),this._beta=t}var j_,XY=R(()=>{"use strict";iv();o(qY,"Bundle");qY.prototype={lineStart:o(function(){this._x=[],this._y=[],this._basis.lineStart()},"lineStart"),lineEnd:o(function(){var e=this._x,t=this._y,r=e.length-1;if(r>0)for(var n=e[0],i=t[0],a=e[r]-n,s=t[r]-i,l=-1,u;++l<=r;)u=l/r,this._basis.point(this._beta*e[l]+(1-this._beta)*(n+u*a),this._beta*t[l]+(1-this._beta)*(i+u*s));this._x=this._y=null,this._basis.lineEnd()},"lineEnd"),point:o(function(e,t){this._x.push(+e),this._y.push(+t)},"point")};j_=o(function e(t){function r(n){return t===1?new nv(n):new qY(n,t)}return o(r,"bundle"),r.beta=function(n){return e(+n)},r},"custom")(.85)});function Kp(e,t,r){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-r),e._x2,e._y2)}function a5(e,t){this._context=e,this._k=(1-t)/6}var K_,av=R(()=>{"use strict";o(Kp,"point");o(a5,"Cardinal");a5.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(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:Kp(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};K_=o(function e(t){function r(n){return new a5(n,t)}return o(r,"cardinal"),r.tension=function(n){return e(+n)},r},"custom")(0)});function s5(e,t){this._context=e,this._k=(1-t)/6}var Q_,Z_=R(()=>{"use strict";rv();av();o(s5,"CardinalClosed");s5.prototype={areaStart:to,areaEnd:to,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(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Kp(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};Q_=o(function e(t){function r(n){return new s5(n,t)}return o(r,"cardinal"),r.tension=function(n){return e(+n)},r},"custom")(0)});function o5(e,t){this._context=e,this._k=(1-t)/6}var J_,t9=R(()=>{"use strict";av();o(o5,"CardinalOpen");o5.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(e,t){switch(e=+e,t=+t,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,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};J_=o(function e(t){function r(n){return new o5(n,t)}return o(r,"cardinal"),r.tension=function(n){return e(+n)},r},"custom")(0)});function sv(e,t,r){var n=e._x1,i=e._y1,a=e._x2,s=e._y2;if(e._l01_a>ta){var l=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,u=3*e._l01_a*(e._l01_a+e._l12_a);n=(n*l-e._x0*e._l12_2a+e._x2*e._l01_2a)/u,i=(i*l-e._y0*e._l12_2a+e._y2*e._l01_2a)/u}if(e._l23_a>ta){var h=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,f=3*e._l23_a*(e._l23_a+e._l12_a);a=(a*h+e._x1*e._l23_2a-t*e._l12_2a)/f,s=(s*h+e._y1*e._l23_2a-r*e._l12_2a)/f}e._context.bezierCurveTo(n,i,a,s,e._x2,e._y2)}function jY(e,t){this._context=e,this._alpha=t}var e9,l5=R(()=>{"use strict";Z3();av();o(sv,"point");o(jY,"CatmullRom");jY.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(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,n=this._y2-t;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(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:sv(this,e,t);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=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};e9=o(function e(t){function r(n){return t?new jY(n,t):new a5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return e(+n)},r},"custom")(.5)});function KY(e,t){this._context=e,this._alpha=t}var r9,QY=R(()=>{"use strict";Z_();rv();l5();o(KY,"CatmullRomClosed");KY.prototype={areaStart:to,areaEnd:to,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(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,n=this._y2-t;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=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:sv(this,e,t);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=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};r9=o(function e(t){function r(n){return t?new KY(n,t):new s5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return e(+n)},r},"custom")(.5)});function ZY(e,t){this._context=e,this._alpha=t}var n9,JY=R(()=>{"use strict";t9();l5();o(ZY,"CatmullRomOpen");ZY.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(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,n=this._y2-t;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,e,t);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=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")};n9=o(function e(t){function r(n){return t?new ZY(n,t):new o5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return e(+n)},r},"custom")(.5)});function tq(e){this._context=e}function c5(e){return new tq(e)}var eq=R(()=>{"use strict";rv();o(tq,"LinearClosed");tq.prototype={areaStart:to,areaEnd:to,lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){this._point&&this._context.closePath()},"lineEnd"),point:o(function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))},"point")};o(c5,"default")});function rq(e){return e<0?-1:1}function nq(e,t,r){var n=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(n||i<0&&-0),s=(r-e._y1)/(i||n<0&&-0),l=(a*i+s*n)/(n+i);return(rq(a)+rq(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(l))||0}function iq(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function i9(e,t,r){var n=e._x0,i=e._y0,a=e._x1,s=e._y1,l=(a-n)/3;e._context.bezierCurveTo(n+l,i+l*t,a-l,s-l*r,a,s)}function u5(e){this._context=e}function aq(e){this._context=new sq(e)}function sq(e){this._context=e}function a9(e){return new u5(e)}function s9(e){return new aq(e)}var oq=R(()=>{"use strict";o(rq,"sign");o(nq,"slope3");o(iq,"slope2");o(i9,"point");o(u5,"MonotoneX");u5.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:i9(this,this._t0,iq(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){var r=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,i9(this,iq(this,r=nq(this,e,t)),r);break;default:i9(this,this._t0,r=nq(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}},"point")};o(aq,"MonotoneY");(aq.prototype=Object.create(u5.prototype)).point=function(e,t){u5.prototype.point.call(this,t,e)};o(sq,"ReflectContext");sq.prototype={moveTo:o(function(e,t){this._context.moveTo(t,e)},"moveTo"),closePath:o(function(){this._context.closePath()},"closePath"),lineTo:o(function(e,t){this._context.lineTo(t,e)},"lineTo"),bezierCurveTo:o(function(e,t,r,n,i,a){this._context.bezierCurveTo(t,e,n,r,a,i)},"bezierCurveTo")};o(a9,"monotoneX");o(s9,"monotoneY")});function cq(e){this._context=e}function lq(e){var t,r=e.length-1,n,i=new Array(r),a=new Array(r),s=new Array(r);for(i[0]=0,a[0]=2,s[0]=e[0]+2*e[1],t=1;t=0;--t)i[t]=(s[t]-i[t+1])/a[t];for(a[r-1]=(e[r]+i[r-1])/2,t=0;t{"use strict";o(cq,"Natural");cq.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 e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),r===2)this._context.lineTo(e[1],t[1]);else for(var n=lq(e),i=lq(t),a=0,s=1;s{"use strict";o(f5,"Step");f5.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(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}break}}this._x=e,this._y=t},"point")};o(d5,"default");o(o9,"stepBefore");o(l9,"stepAfter")});var fq=R(()=>{"use strict";MY();FY();GY();HY();YY();iv();VY();XY();Z_();t9();av();QY();JY();l5();eq();H_();oq();uq();hq()});var dq=R(()=>{"use strict"});var pq=R(()=>{"use strict"});function Nh(e,t,r){this.k=e,this.x=t,this.y=r}function u9(e){for(;!e.__zoom;)if(!(e=e.parentNode))return c9;return e.__zoom}var c9,h9=R(()=>{"use strict";o(Nh,"Transform");Nh.prototype={constructor:Nh,scale:o(function(e){return e===1?this:new Nh(this.k*e,this.x,this.y)},"scale"),translate:o(function(e,t){return e===0&t===0?this:new Nh(this.k,this.x+this.k*e,this.y+this.k*t)},"translate"),apply:o(function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},"apply"),applyX:o(function(e){return e*this.k+this.x},"applyX"),applyY:o(function(e){return e*this.k+this.y},"applyY"),invert:o(function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},"invert"),invertX:o(function(e){return(e-this.x)/this.k},"invertX"),invertY:o(function(e){return(e-this.y)/this.k},"invertY"),rescaleX:o(function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},"rescaleX"),rescaleY:o(function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},"rescaleY"),toString:o(function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"},"toString")};c9=new Nh(1,0,0);u9.prototype=Nh.prototype;o(u9,"transform")});var mq=R(()=>{"use strict"});var gq=R(()=>{"use strict";L3();dq();pq();h9();mq()});var yq=R(()=>{"use strict";gq();h9()});var ur=R(()=>{"use strict";wh();XV();dW();yW();Bp();vW();xW();oA();zU();bW();j8();wW();kW();f_();BW();FW();$p();t_();zW();TW();$W();AY();DY();yl();fq();X3();B_();k3();L3();yq()});var vq=Ti(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.BLANK_URL=ea.relativeFirstCharacters=ea.whitespaceEscapeCharsRegex=ea.urlSchemeRegex=ea.ctrlCharactersRegex=ea.htmlCtrlEntityRegex=ea.htmlEntitiesRegex=ea.invalidProtocolRegex=void 0;ea.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;ea.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;ea.htmlCtrlEntityRegex=/&(newline|tab);/gi;ea.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;ea.urlSchemeRegex=/^.+(:|:)/gim;ea.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;ea.relativeFirstCharacters=[".","/"];ea.BLANK_URL="about:blank"});var Qp=Ti(p5=>{"use strict";Object.defineProperty(p5,"__esModule",{value:!0});p5.sanitizeUrl=void 0;var Ia=vq();function Xkt(e){return Ia.relativeFirstCharacters.indexOf(e[0])>-1}o(Xkt,"isRelativeUrlWithoutProtocol");function jkt(e){var t=e.replace(Ia.ctrlCharactersRegex,"");return t.replace(Ia.htmlEntitiesRegex,function(r,n){return String.fromCharCode(n)})}o(jkt,"decodeHtmlCharacters");function Kkt(e){return URL.canParse(e)}o(Kkt,"isValidUrl");function xq(e){try{return decodeURIComponent(e)}catch{return e}}o(xq,"decodeURI");function Qkt(e){if(!e)return Ia.BLANK_URL;var t,r=xq(e.trim());do r=jkt(r).replace(Ia.htmlCtrlEntityRegex,"").replace(Ia.ctrlCharactersRegex,"").replace(Ia.whitespaceEscapeCharsRegex,"").trim(),r=xq(r),t=r.match(Ia.ctrlCharactersRegex)||r.match(Ia.htmlEntitiesRegex)||r.match(Ia.htmlCtrlEntityRegex)||r.match(Ia.whitespaceEscapeCharsRegex);while(t&&t.length>0);var n=r;if(!n)return Ia.BLANK_URL;if(Xkt(n))return n;var i=n.trimStart(),a=i.match(Ia.urlSchemeRegex);if(!a)return n;var s=a[0].toLowerCase().trim();if(Ia.invalidProtocolRegex.test(s))return Ia.BLANK_URL;var l=i.replace(/\\/g,"/");if(s==="mailto:"||s.includes("://"))return l;if(s==="http:"||s==="https:"){if(!Kkt(l))return Ia.BLANK_URL;var u=new URL(l);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return l}o(Qkt,"sanitizeUrl");p5.sanitizeUrl=Qkt});var f9,Td,m5,bq,wq,Tq,Sl,ov,lv=R(()=>{"use strict";f9=Qi(Qp(),1);hr();Td=o((e,t)=>{let r=e.append("rect");if(r.attr("x",t.x),r.attr("y",t.y),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("width",t.width),r.attr("height",t.height),t.name&&r.attr("name",t.name),t.rx&&r.attr("rx",t.rx),t.ry&&r.attr("ry",t.ry),t.attrs!==void 0)for(let n in t.attrs)r.attr(n,t.attrs[n]);return t.class&&r.attr("class",t.class),r},"drawRect"),m5=o((e,t)=>{let r={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};Td(e,r).lower()},"drawBackgroundRect"),bq=o((e,t)=>{let r=t.text.replace(rd," "),n=e.append("text");n.attr("x",t.x),n.attr("y",t.y),n.attr("class","legend"),n.style("text-anchor",t.anchor),t.class&&n.attr("class",t.class);let i=n.append("tspan");return i.attr("x",t.x+t.textMargin*2),i.text(r),n},"drawText"),wq=o((e,t,r,n)=>{let i=e.append("image");i.attr("x",t),i.attr("y",r);let a=(0,f9.sanitizeUrl)(n);i.attr("xlink:href",a)},"drawImage"),Tq=o((e,t,r,n)=>{let i=e.append("use");i.attr("x",t),i.attr("y",r);let a=(0,f9.sanitizeUrl)(n);i.attr("xlink:href",`#${a}`)},"drawEmbeddedImage"),Sl=o(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),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 kq,d9,Eq,Zkt,Jkt,tEt,eEt,rEt,nEt,iEt,aEt,sEt,oEt,lEt,cEt,Su,Al,Cq=R(()=>{"use strict";hr();lv();kq=Qi(Qp(),1),d9=o(function(e,t){return Td(e,t)},"drawRect"),Eq=o(function(e,t,r,n,i,a){let s=e.append("image");s.attr("width",t),s.attr("height",r),s.attr("x",n),s.attr("y",i);let l=a.startsWith("data:image/png;base64")?a:(0,kq.sanitizeUrl)(a);s.attr("xlink:href",l)},"drawImage"),Zkt=o((e,t,r)=>{let n=e.append("g"),i=0;for(let a of t){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();Su(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(),Su(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"),Jkt=o(function(e,t,r){let n=e.append("g"),i=t.bgColor?t.bgColor:"none",a=t.borderColor?t.borderColor:"#444444",s=t.fontColor?t.fontColor:"black",l={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};t.nodeType&&(l={"stroke-width":1});let u={x:t.x,y:t.y,fill:i,stroke:a,width:t.width,height:t.height,rx:2.5,ry:2.5,attrs:l};d9(n,u);let h=r.boundaryFont();h.fontWeight="bold",h.fontSize=h.fontSize+2,h.fontColor=s,Su(r)(t.label.text,n,t.x,t.y+t.label.Y,t.width,t.height,{fill:"#444444"},h),t.type&&t.type.text!==""&&(h=r.boundaryFont(),h.fontColor=s,Su(r)(t.type.text,n,t.x,t.y+t.type.Y,t.width,t.height,{fill:"#444444"},h)),t.descr&&t.descr.text!==""&&(h=r.boundaryFont(),h.fontSize=h.fontSize-2,h.fontColor=s,Su(r)(t.descr.text,n,t.x,t.y+t.descr.Y,t.width,t.height,{fill:"#444444"},h))},"drawBoundary"),tEt=o(function(e,t,r){let n=t.bgColor?t.bgColor:r[t.typeC4Shape.text+"_bg_color"],i=t.borderColor?t.borderColor:r[t.typeC4Shape.text+"_border_color"],a=t.fontColor?t.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(t.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=e.append("g");l.attr("class","person-man");let u=Sl();switch(t.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":u.x=t.x,u.y=t.y,u.fill=n,u.width=t.width,u.height=t.height,u.stroke=i,u.rx=2.5,u.ry=2.5,u.attrs={"stroke-width":.5},d9(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",t.x).replaceAll("starty",t.y).replaceAll("half",t.width/2).replaceAll("height",t.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",t.x).replaceAll("starty",t.y).replaceAll("half",t.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",t.x).replaceAll("starty",t.y).replaceAll("width",t.width).replaceAll("half",t.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",t.x+t.width).replaceAll("starty",t.y).replaceAll("half",t.height/2));break}let h=cEt(r,t.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",t.typeC4Shape.width).attr("x",t.x+t.width/2-t.typeC4Shape.width/2).attr("y",t.y+t.typeC4Shape.Y).text("<<"+t.typeC4Shape.text+">>"),t.typeC4Shape.text){case"person":case"external_person":Eq(l,48,48,t.x+t.width/2-24,t.y+t.image.Y,s);break}let f=r[t.typeC4Shape.text+"Font"]();return f.fontWeight="bold",f.fontSize=f.fontSize+2,f.fontColor=a,Su(r)(t.label.text,l,t.x,t.y+t.label.Y,t.width,t.height,{fill:a},f),f=r[t.typeC4Shape.text+"Font"](),f.fontColor=a,t.techn&&t.techn?.text!==""?Su(r)(t.techn.text,l,t.x,t.y+t.techn.Y,t.width,t.height,{fill:a,"font-style":"italic"},f):t.type&&t.type.text!==""&&Su(r)(t.type.text,l,t.x,t.y+t.type.Y,t.width,t.height,{fill:a,"font-style":"italic"},f),t.descr&&t.descr.text!==""&&(f=r.personFont(),f.fontColor=a,Su(r)(t.descr.text,l,t.x,t.y+t.descr.Y,t.width,t.height,{fill:a},f)),t.height},"drawC4Shape"),eEt=o(function(e){e.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"),rEt=o(function(e){e.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"),nEt=o(function(e){e.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"),iEt=o(function(e){e.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"),aEt=o(function(e){e.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"),sEt=o(function(e){e.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"),oEt=o(function(e){e.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"),lEt=o(function(e){let r=e.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"),cEt=o((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"getC4ShapeFont"),Su=function(){function e(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(e,"byText");function t(i,a,s,l,u,h,f,d){let{fontSize:p,fontFamily:m,fontWeight:g}=d,y=i.split(Yt.lineBreakRegex);for(let v=0;v{"use strict";uEt=typeof global=="object"&&global&&global.Object===Object&&global,y5=uEt});var hEt,fEt,si,Io=R(()=>{"use strict";p9();hEt=typeof self=="object"&&self&&self.Object===Object&&self,fEt=y5||hEt||Function("return this")(),si=fEt});var dEt,ra,kd=R(()=>{"use strict";Io();dEt=si.Symbol,ra=dEt});function gEt(e){var t=pEt.call(e,cv),r=e[cv];try{e[cv]=void 0;var n=!0}catch{}var i=mEt.call(e);return n&&(t?e[cv]=r:delete e[cv]),i}var Sq,pEt,mEt,cv,Aq,_q=R(()=>{"use strict";kd();Sq=Object.prototype,pEt=Sq.hasOwnProperty,mEt=Sq.toString,cv=ra?ra.toStringTag:void 0;o(gEt,"getRawTag");Aq=gEt});function xEt(e){return vEt.call(e)}var yEt,vEt,Lq,Dq=R(()=>{"use strict";yEt=Object.prototype,vEt=yEt.toString;o(xEt,"objectToString");Lq=xEt});function TEt(e){return e==null?e===void 0?wEt:bEt:Rq&&Rq in Object(e)?Aq(e):Lq(e)}var bEt,wEt,Rq,ga,Au=R(()=>{"use strict";kd();_q();Dq();bEt="[object Null]",wEt="[object Undefined]",Rq=ra?ra.toStringTag:void 0;o(TEt,"baseGetTag");ga=TEt});function kEt(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var xn,eo=R(()=>{"use strict";o(kEt,"isObject");xn=kEt});function _Et(e){if(!xn(e))return!1;var t=ga(e);return t==CEt||t==SEt||t==EEt||t==AEt}var EEt,CEt,SEt,AEt,Si,uv=R(()=>{"use strict";Au();eo();EEt="[object AsyncFunction]",CEt="[object Function]",SEt="[object GeneratorFunction]",AEt="[object Proxy]";o(_Et,"isFunction");Si=_Et});var LEt,v5,Nq=R(()=>{"use strict";Io();LEt=si["__core-js_shared__"],v5=LEt});function DEt(e){return!!Mq&&Mq in e}var Mq,Iq,Oq=R(()=>{"use strict";Nq();Mq=function(){var e=/[^.]+$/.exec(v5&&v5.keys&&v5.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();o(DEt,"isMasked");Iq=DEt});function MEt(e){if(e!=null){try{return NEt.call(e)}catch{}try{return e+""}catch{}}return""}var REt,NEt,_u,m9=R(()=>{"use strict";REt=Function.prototype,NEt=REt.toString;o(MEt,"toSource");_u=MEt});function GEt(e){if(!xn(e)||Iq(e))return!1;var t=Si(e)?$Et:OEt;return t.test(_u(e))}var IEt,OEt,PEt,BEt,FEt,zEt,$Et,Pq,Bq=R(()=>{"use strict";uv();Oq();eo();m9();IEt=/[\\^$.*+?()[\]{}|]/g,OEt=/^\[object .+?Constructor\]$/,PEt=Function.prototype,BEt=Object.prototype,FEt=PEt.toString,zEt=BEt.hasOwnProperty,$Et=RegExp("^"+FEt.call(zEt).replace(IEt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");o(GEt,"baseIsNative");Pq=GEt});function VEt(e,t){return e?.[t]}var Fq,zq=R(()=>{"use strict";o(VEt,"getValue");Fq=VEt});function UEt(e,t){var r=Fq(e,t);return Pq(r)?r:void 0}var ks,Mh=R(()=>{"use strict";Bq();zq();o(UEt,"getNative");ks=UEt});var HEt,Lu,hv=R(()=>{"use strict";Mh();HEt=ks(Object,"create"),Lu=HEt});function WEt(){this.__data__=Lu?Lu(null):{},this.size=0}var $q,Gq=R(()=>{"use strict";hv();o(WEt,"hashClear");$q=WEt});function YEt(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Vq,Uq=R(()=>{"use strict";o(YEt,"hashDelete");Vq=YEt});function KEt(e){var t=this.__data__;if(Lu){var r=t[e];return r===qEt?void 0:r}return jEt.call(t,e)?t[e]:void 0}var qEt,XEt,jEt,Hq,Wq=R(()=>{"use strict";hv();qEt="__lodash_hash_undefined__",XEt=Object.prototype,jEt=XEt.hasOwnProperty;o(KEt,"hashGet");Hq=KEt});function JEt(e){var t=this.__data__;return Lu?t[e]!==void 0:ZEt.call(t,e)}var QEt,ZEt,Yq,qq=R(()=>{"use strict";hv();QEt=Object.prototype,ZEt=QEt.hasOwnProperty;o(JEt,"hashHas");Yq=JEt});function e6t(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=Lu&&t===void 0?t6t:t,this}var t6t,Xq,jq=R(()=>{"use strict";hv();t6t="__lodash_hash_undefined__";o(e6t,"hashSet");Xq=e6t});function Zp(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{"use strict";Gq();Uq();Wq();qq();jq();o(Zp,"Hash");Zp.prototype.clear=$q;Zp.prototype.delete=Vq;Zp.prototype.get=Hq;Zp.prototype.has=Yq;Zp.prototype.set=Xq;g9=Zp});function r6t(){this.__data__=[],this.size=0}var Qq,Zq=R(()=>{"use strict";o(r6t,"listCacheClear");Qq=r6t});function n6t(e,t){return e===t||e!==e&&t!==t}var Oo,Ed=R(()=>{"use strict";o(n6t,"eq");Oo=n6t});function i6t(e,t){for(var r=e.length;r--;)if(Oo(e[r][0],t))return r;return-1}var Ih,fv=R(()=>{"use strict";Ed();o(i6t,"assocIndexOf");Ih=i6t});function o6t(e){var t=this.__data__,r=Ih(t,e);if(r<0)return!1;var n=t.length-1;return r==n?t.pop():s6t.call(t,r,1),--this.size,!0}var a6t,s6t,Jq,tX=R(()=>{"use strict";fv();a6t=Array.prototype,s6t=a6t.splice;o(o6t,"listCacheDelete");Jq=o6t});function l6t(e){var t=this.__data__,r=Ih(t,e);return r<0?void 0:t[r][1]}var eX,rX=R(()=>{"use strict";fv();o(l6t,"listCacheGet");eX=l6t});function c6t(e){return Ih(this.__data__,e)>-1}var nX,iX=R(()=>{"use strict";fv();o(c6t,"listCacheHas");nX=c6t});function u6t(e,t){var r=this.__data__,n=Ih(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var aX,sX=R(()=>{"use strict";fv();o(u6t,"listCacheSet");aX=u6t});function Jp(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{"use strict";Zq();tX();rX();iX();sX();o(Jp,"ListCache");Jp.prototype.clear=Qq;Jp.prototype.delete=Jq;Jp.prototype.get=eX;Jp.prototype.has=nX;Jp.prototype.set=aX;Oh=Jp});var h6t,Ph,x5=R(()=>{"use strict";Mh();Io();h6t=ks(si,"Map"),Ph=h6t});function f6t(){this.size=0,this.__data__={hash:new g9,map:new(Ph||Oh),string:new g9}}var oX,lX=R(()=>{"use strict";Kq();dv();x5();o(f6t,"mapCacheClear");oX=f6t});function d6t(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var cX,uX=R(()=>{"use strict";o(d6t,"isKeyable");cX=d6t});function p6t(e,t){var r=e.__data__;return cX(t)?r[typeof t=="string"?"string":"hash"]:r.map}var Bh,pv=R(()=>{"use strict";uX();o(p6t,"getMapData");Bh=p6t});function m6t(e){var t=Bh(this,e).delete(e);return this.size-=t?1:0,t}var hX,fX=R(()=>{"use strict";pv();o(m6t,"mapCacheDelete");hX=m6t});function g6t(e){return Bh(this,e).get(e)}var dX,pX=R(()=>{"use strict";pv();o(g6t,"mapCacheGet");dX=g6t});function y6t(e){return Bh(this,e).has(e)}var mX,gX=R(()=>{"use strict";pv();o(y6t,"mapCacheHas");mX=y6t});function v6t(e,t){var r=Bh(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this}var yX,vX=R(()=>{"use strict";pv();o(v6t,"mapCacheSet");yX=v6t});function tm(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{"use strict";lX();fX();pX();gX();vX();o(tm,"MapCache");tm.prototype.clear=oX;tm.prototype.delete=hX;tm.prototype.get=dX;tm.prototype.has=mX;tm.prototype.set=yX;Cd=tm});function y9(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(x6t);var r=o(function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=e.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(y9.Cache||Cd),r}var x6t,em,v9=R(()=>{"use strict";b5();x6t="Expected a function";o(y9,"memoize");y9.Cache=Cd;em=y9});function b6t(){this.__data__=new Oh,this.size=0}var xX,bX=R(()=>{"use strict";dv();o(b6t,"stackClear");xX=b6t});function w6t(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var wX,TX=R(()=>{"use strict";o(w6t,"stackDelete");wX=w6t});function T6t(e){return this.__data__.get(e)}var kX,EX=R(()=>{"use strict";o(T6t,"stackGet");kX=T6t});function k6t(e){return this.__data__.has(e)}var CX,SX=R(()=>{"use strict";o(k6t,"stackHas");CX=k6t});function C6t(e,t){var r=this.__data__;if(r instanceof Oh){var n=r.__data__;if(!Ph||n.length{"use strict";dv();x5();b5();E6t=200;o(C6t,"stackSet");AX=C6t});function rm(e){var t=this.__data__=new Oh(e);this.size=t.size}var yc,mv=R(()=>{"use strict";dv();bX();TX();EX();SX();_X();o(rm,"Stack");rm.prototype.clear=xX;rm.prototype.delete=wX;rm.prototype.get=kX;rm.prototype.has=CX;rm.prototype.set=AX;yc=rm});var S6t,nm,x9=R(()=>{"use strict";Mh();S6t=function(){try{var e=ks(Object,"defineProperty");return e({},"",{}),e}catch{}}(),nm=S6t});function A6t(e,t,r){t=="__proto__"&&nm?nm(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}var vc,im=R(()=>{"use strict";x9();o(A6t,"baseAssignValue");vc=A6t});function _6t(e,t,r){(r!==void 0&&!Oo(e[t],r)||r===void 0&&!(t in e))&&vc(e,t,r)}var gv,b9=R(()=>{"use strict";im();Ed();o(_6t,"assignMergeValue");gv=_6t});function L6t(e){return function(t,r,n){for(var i=-1,a=Object(t),s=n(t),l=s.length;l--;){var u=s[e?l:++i];if(r(a[u],u,a)===!1)break}return t}}var LX,DX=R(()=>{"use strict";o(L6t,"createBaseFor");LX=L6t});var D6t,am,w5=R(()=>{"use strict";DX();D6t=LX(),am=D6t});function N6t(e,t){if(t)return e.slice();var r=e.length,n=MX?MX(r):new e.constructor(r);return e.copy(n),n}var IX,RX,R6t,NX,MX,T5,w9=R(()=>{"use strict";Io();IX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,RX=IX&&typeof module=="object"&&module&&!module.nodeType&&module,R6t=RX&&RX.exports===IX,NX=R6t?si.Buffer:void 0,MX=NX?NX.allocUnsafe:void 0;o(N6t,"cloneBuffer");T5=N6t});var M6t,sm,T9=R(()=>{"use strict";Io();M6t=si.Uint8Array,sm=M6t});function I6t(e){var t=new e.constructor(e.byteLength);return new sm(t).set(new sm(e)),t}var om,k5=R(()=>{"use strict";T9();o(I6t,"cloneArrayBuffer");om=I6t});function O6t(e,t){var r=t?om(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}var E5,k9=R(()=>{"use strict";k5();o(O6t,"cloneTypedArray");E5=O6t});function P6t(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r{"use strict";o(P6t,"copyArray");C5=P6t});var OX,B6t,PX,BX=R(()=>{"use strict";eo();OX=Object.create,B6t=function(){function e(){}return o(e,"object"),function(t){if(!xn(t))return{};if(OX)return OX(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}(),PX=B6t});function F6t(e,t){return function(r){return e(t(r))}}var S5,C9=R(()=>{"use strict";o(F6t,"overArg");S5=F6t});var z6t,lm,A5=R(()=>{"use strict";C9();z6t=S5(Object.getPrototypeOf,Object),lm=z6t});function G6t(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||$6t;return e===r}var $6t,xc,cm=R(()=>{"use strict";$6t=Object.prototype;o(G6t,"isPrototype");xc=G6t});function V6t(e){return typeof e.constructor=="function"&&!xc(e)?PX(lm(e)):{}}var _5,S9=R(()=>{"use strict";BX();A5();cm();o(V6t,"initCloneObject");_5=V6t});function U6t(e){return e!=null&&typeof e=="object"}var ti,Po=R(()=>{"use strict";o(U6t,"isObjectLike");ti=U6t});function W6t(e){return ti(e)&&ga(e)==H6t}var H6t,A9,FX=R(()=>{"use strict";Au();Po();H6t="[object Arguments]";o(W6t,"baseIsArguments");A9=W6t});var zX,Y6t,q6t,X6t,_l,um=R(()=>{"use strict";FX();Po();zX=Object.prototype,Y6t=zX.hasOwnProperty,q6t=zX.propertyIsEnumerable,X6t=A9(function(){return arguments}())?A9:function(e){return ti(e)&&Y6t.call(e,"callee")&&!q6t.call(e,"callee")},_l=X6t});var j6t,Le,Hn=R(()=>{"use strict";j6t=Array.isArray,Le=j6t});function Q6t(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=K6t}var K6t,hm,L5=R(()=>{"use strict";K6t=9007199254740991;o(Q6t,"isLength");hm=Q6t});function Z6t(e){return e!=null&&hm(e.length)&&!Si(e)}var oi,Bo=R(()=>{"use strict";uv();L5();o(Z6t,"isArrayLike");oi=Z6t});function J6t(e){return ti(e)&&oi(e)}var Sd,D5=R(()=>{"use strict";Bo();Po();o(J6t,"isArrayLikeObject");Sd=J6t});function tCt(){return!1}var $X,GX=R(()=>{"use strict";o(tCt,"stubFalse");$X=tCt});var HX,VX,eCt,UX,rCt,nCt,Ll,fm=R(()=>{"use strict";Io();GX();HX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,VX=HX&&typeof module=="object"&&module&&!module.nodeType&&module,eCt=VX&&VX.exports===HX,UX=eCt?si.Buffer:void 0,rCt=UX?UX.isBuffer:void 0,nCt=rCt||$X,Ll=nCt});function cCt(e){if(!ti(e)||ga(e)!=iCt)return!1;var t=lm(e);if(t===null)return!0;var r=oCt.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&WX.call(r)==lCt}var iCt,aCt,sCt,WX,oCt,lCt,YX,qX=R(()=>{"use strict";Au();A5();Po();iCt="[object Object]",aCt=Function.prototype,sCt=Object.prototype,WX=aCt.toString,oCt=sCt.hasOwnProperty,lCt=WX.call(Object);o(cCt,"isPlainObject");YX=cCt});function ICt(e){return ti(e)&&hm(e.length)&&!!$n[ga(e)]}var uCt,hCt,fCt,dCt,pCt,mCt,gCt,yCt,vCt,xCt,bCt,wCt,TCt,kCt,ECt,CCt,SCt,ACt,_Ct,LCt,DCt,RCt,NCt,MCt,$n,XX,jX=R(()=>{"use strict";Au();L5();Po();uCt="[object Arguments]",hCt="[object Array]",fCt="[object Boolean]",dCt="[object Date]",pCt="[object Error]",mCt="[object Function]",gCt="[object Map]",yCt="[object Number]",vCt="[object Object]",xCt="[object RegExp]",bCt="[object Set]",wCt="[object String]",TCt="[object WeakMap]",kCt="[object ArrayBuffer]",ECt="[object DataView]",CCt="[object Float32Array]",SCt="[object Float64Array]",ACt="[object Int8Array]",_Ct="[object Int16Array]",LCt="[object Int32Array]",DCt="[object Uint8Array]",RCt="[object Uint8ClampedArray]",NCt="[object Uint16Array]",MCt="[object Uint32Array]",$n={};$n[CCt]=$n[SCt]=$n[ACt]=$n[_Ct]=$n[LCt]=$n[DCt]=$n[RCt]=$n[NCt]=$n[MCt]=!0;$n[uCt]=$n[hCt]=$n[kCt]=$n[fCt]=$n[ECt]=$n[dCt]=$n[pCt]=$n[mCt]=$n[gCt]=$n[yCt]=$n[vCt]=$n[xCt]=$n[bCt]=$n[wCt]=$n[TCt]=!1;o(ICt,"baseIsTypedArray");XX=ICt});function OCt(e){return function(t){return e(t)}}var Fo,Ad=R(()=>{"use strict";o(OCt,"baseUnary");Fo=OCt});var KX,yv,PCt,_9,BCt,zo,vv=R(()=>{"use strict";p9();KX=typeof exports=="object"&&exports&&!exports.nodeType&&exports,yv=KX&&typeof module=="object"&&module&&!module.nodeType&&module,PCt=yv&&yv.exports===KX,_9=PCt&&y5.process,BCt=function(){try{var e=yv&&yv.require&&yv.require("util").types;return e||_9&&_9.binding&&_9.binding("util")}catch{}}(),zo=BCt});var QX,FCt,Fh,xv=R(()=>{"use strict";jX();Ad();vv();QX=zo&&zo.isTypedArray,FCt=QX?Fo(QX):XX,Fh=FCt});function zCt(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}var bv,L9=R(()=>{"use strict";o(zCt,"safeGet");bv=zCt});function VCt(e,t,r){var n=e[t];(!(GCt.call(e,t)&&Oo(n,r))||r===void 0&&!(t in e))&&vc(e,t,r)}var $Ct,GCt,bc,dm=R(()=>{"use strict";im();Ed();$Ct=Object.prototype,GCt=$Ct.hasOwnProperty;o(VCt,"assignValue");bc=VCt});function UCt(e,t,r,n){var i=!r;r||(r={});for(var a=-1,s=t.length;++a{"use strict";dm();im();o(UCt,"copyObject");$o=UCt});function HCt(e,t){for(var r=-1,n=Array(e);++r{"use strict";o(HCt,"baseTimes");ZX=HCt});function qCt(e,t){var r=typeof e;return t=t??WCt,!!t&&(r=="number"||r!="symbol"&&YCt.test(e))&&e>-1&&e%1==0&&e{"use strict";WCt=9007199254740991,YCt=/^(?:0|[1-9]\d*)$/;o(qCt,"isIndex");zh=qCt});function KCt(e,t){var r=Le(e),n=!r&&_l(e),i=!r&&!n&&Ll(e),a=!r&&!n&&!i&&Fh(e),s=r||n||i||a,l=s?ZX(e.length,String):[],u=l.length;for(var h in e)(t||jCt.call(e,h))&&!(s&&(h=="length"||i&&(h=="offset"||h=="parent")||a&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||zh(h,u)))&&l.push(h);return l}var XCt,jCt,R5,D9=R(()=>{"use strict";JX();um();Hn();fm();wv();xv();XCt=Object.prototype,jCt=XCt.hasOwnProperty;o(KCt,"arrayLikeKeys");R5=KCt});function QCt(e){var t=[];if(e!=null)for(var r in Object(e))t.push(r);return t}var tj,ej=R(()=>{"use strict";o(QCt,"nativeKeysIn");tj=QCt});function tSt(e){if(!xn(e))return tj(e);var t=xc(e),r=[];for(var n in e)n=="constructor"&&(t||!JCt.call(e,n))||r.push(n);return r}var ZCt,JCt,rj,nj=R(()=>{"use strict";eo();cm();ej();ZCt=Object.prototype,JCt=ZCt.hasOwnProperty;o(tSt,"baseKeysIn");rj=tSt});function eSt(e){return oi(e)?R5(e,!0):rj(e)}var Es,$h=R(()=>{"use strict";D9();nj();Bo();o(eSt,"keysIn");Es=eSt});function rSt(e){return $o(e,Es(e))}var ij,aj=R(()=>{"use strict";_d();$h();o(rSt,"toPlainObject");ij=rSt});function nSt(e,t,r,n,i,a,s){var l=bv(e,r),u=bv(t,r),h=s.get(u);if(h){gv(e,r,h);return}var f=a?a(l,u,r+"",e,t,s):void 0,d=f===void 0;if(d){var p=Le(u),m=!p&&Ll(u),g=!p&&!m&&Fh(u);f=u,p||m||g?Le(l)?f=l:Sd(l)?f=C5(l):m?(d=!1,f=T5(u,!0)):g?(d=!1,f=E5(u,!0)):f=[]:YX(u)||_l(u)?(f=l,_l(l)?f=ij(l):(!xn(l)||Si(l))&&(f=_5(u))):d=!1}d&&(s.set(u,f),i(f,u,n,a,s),s.delete(u)),gv(e,r,f)}var sj,oj=R(()=>{"use strict";b9();w9();k9();E9();S9();um();Hn();D5();fm();uv();eo();qX();xv();L9();aj();o(nSt,"baseMergeDeep");sj=nSt});function lj(e,t,r,n,i){e!==t&&am(t,function(a,s){if(i||(i=new yc),xn(a))sj(e,t,s,r,lj,n,i);else{var l=n?n(bv(e,s),a,s+"",e,t,i):void 0;l===void 0&&(l=a),gv(e,s,l)}},Es)}var cj,uj=R(()=>{"use strict";mv();b9();w5();oj();eo();$h();L9();o(lj,"baseMerge");cj=lj});function iSt(e){return e}var na,Du=R(()=>{"use strict";o(iSt,"identity");na=iSt});function aSt(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}var hj,fj=R(()=>{"use strict";o(aSt,"apply");hj=aSt});function sSt(e,t,r){return t=dj(t===void 0?e.length-1:t,0),function(){for(var n=arguments,i=-1,a=dj(n.length-t,0),s=Array(a);++i{"use strict";fj();dj=Math.max;o(sSt,"overRest");N5=sSt});function oSt(e){return function(){return e}}var Cs,N9=R(()=>{"use strict";o(oSt,"constant");Cs=oSt});var lSt,pj,mj=R(()=>{"use strict";N9();x9();Du();lSt=nm?function(e,t){return nm(e,"toString",{configurable:!0,enumerable:!1,value:Cs(t),writable:!0})}:na,pj=lSt});function fSt(e){var t=0,r=0;return function(){var n=hSt(),i=uSt-(n-r);if(r=n,i>0){if(++t>=cSt)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var cSt,uSt,hSt,gj,yj=R(()=>{"use strict";cSt=800,uSt=16,hSt=Date.now;o(fSt,"shortOut");gj=fSt});var dSt,M5,M9=R(()=>{"use strict";mj();yj();dSt=gj(pj),M5=dSt});function pSt(e,t){return M5(N5(e,t,na),e+"")}var wc,pm=R(()=>{"use strict";Du();R9();M9();o(pSt,"baseRest");wc=pSt});function mSt(e,t,r){if(!xn(r))return!1;var n=typeof t;return(n=="number"?oi(r)&&zh(t,r.length):n=="string"&&t in r)?Oo(r[t],e):!1}var ro,Ld=R(()=>{"use strict";Ed();Bo();wv();eo();o(mSt,"isIterateeCall");ro=mSt});function gSt(e){return wc(function(t,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=e.length>3&&typeof a=="function"?(i--,a):void 0,s&&ro(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),t=Object(t);++n{"use strict";pm();Ld();o(gSt,"createAssigner");I5=gSt});var ySt,Gh,O9=R(()=>{"use strict";uj();I9();ySt=I5(function(e,t,r){cj(e,t,r)}),Gh=ySt});function mm(e,t){if(!e)return t;let r=`curve${e.charAt(0).toUpperCase()+e.slice(1)}`;return vSt[r]??t}function TSt(e,t){let r=e.trim();if(r)return t.securityLevel!=="loose"?(0,bj.sanitizeUrl)(r):r}function kj(e,t){return!e||!t?0:Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))}function ESt(e){let t,r=0;e.forEach(i=>{r+=kj(i,t),t=i});let n=r/2;return F9(e,n)}function CSt(e){return e.length===1?e[0]:ESt(e)}function ASt(e,t,r){let n=structuredClone(r);V.info("our points",n),t!=="start_left"&&t!=="start_right"&&n.reverse();let i=25+e,a=F9(n,i),s=10+e*.5,l=Math.atan2(n[0].y-a.y,n[0].x-a.x),u={x:0,y:0};return t==="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):t==="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):t==="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 gm(e){let t="",r="";for(let n of e)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":t=t+n+";");return{style:t,labelStyle:r}}function _St(e){let t="",r="0123456789abcdef",n=r.length;for(let i=0;i{"use strict";bj=Qi(Qp(),1);ur();hr();US();ce();jf();yp();v9();O9();l4();B9="\u200B",vSt={curveBasis:Ts,curveBasisClosed:n5,curveBasisOpen:i5,curveBumpX:q_,curveBumpY:X_,curveBundle:j_,curveCardinalClosed:Q_,curveCardinalOpen:J_,curveCardinal:K_,curveCatmullRomClosed:r9,curveCatmullRomOpen:n9,curveCatmullRom:e9,curveLinear:Cu,curveLinearClosed:c5,curveMonotoneX:a9,curveMonotoneY:s9,curveNatural:h5,curveStep:d5,curveStepAfter:l9,curveStepBefore:o9},xSt=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,bSt=o(function(e,t){let r=wj(e,/(?:init\b)|(?:initialize\b)/),n={};if(Array.isArray(r)){let s=r.map(l=>l.args);bp(s),n=Vn(n,[...s])}else n=r.args;if(!n)return;let i=gp(e,t),a="config";return n[a]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[a],delete n[a]),n},"detectInit"),wj=o(function(e,t=null){try{let r=new RegExp(`[%]{2}(?![{]${xSt.source})(?=[}][%]{2}).* +`,"ig");e=e.trim().replace(r,"").replace(/'/gm,'"'),V.debug(`Detecting diagram directive${t!==null?" type:"+t:""} based on the text:${e}`);let n,i=[];for(;(n=qf.exec(e))!==null;)if(n.index===qf.lastIndex&&qf.lastIndex++,n&&!t||t&&n[1]?.match(t)||t&&n[2]?.match(t)){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:e,args:null}:i.length===1?i[0]:i}catch(r){return V.error(`ERROR: ${r.message} - Unable to parse directive type: '${t}' based on the text: '${e}'`),{type:void 0,args:null}}},"detectDirective"),Tj=o(function(e){return e.replace(qf,"")},"removeDirectives"),wSt=o(function(e,t){for(let[r,n]of t.entries())if(n.match(e))return r;return-1},"isSubstringInArray");o(mm,"interpolateToCurve");o(TSt,"formatUrl");kSt=o((e,...t)=>{let r=e.split("."),n=r.length-1,i=r[n],a=window;for(let s=0;s{let r=Math.pow(10,t);return Math.round(e*r)/r},"roundNumber"),F9=o((e,t)=>{let r,n=t;for(let i of e){if(r){let a=kj(i,r);if(a=1)return{x:i.x,y:i.y};if(s>0&&s<1)return{x:vj((1-s)*r.x+s*i.x,5),y:vj((1-s)*r.y+s*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),SSt=o((e,t,r)=>{V.info(`our points ${JSON.stringify(t)}`),t[0]!==r&&(t=t.reverse());let i=F9(t,25),a=e?10:5,s=Math.atan2(t[0].y-i.y,t[0].x-i.x),l={x:0,y:0};return l.x=Math.sin(s)*a+(t[0].x+i.x)/2,l.y=-Math.cos(s)*a+(t[0].y+i.y)/2,l},"calcCardinalityPosition");o(ASt,"calcTerminalLabelPosition");o(gm,"getStylesFromArray");xj=0,z9=o(()=>(xj++,"id-"+Math.random().toString(36).substr(2,12)+"-"+xj),"generateId");o(_St,"makeRandomHex");$9=o(e=>_St(e.length),"random"),LSt=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"),DSt=o(function(e,t){let r=t.text.replace(Yt.lineBreakRegex," "),[,n]=Tc(t.fontSize),i=e.append("text");i.attr("x",t.x),i.attr("y",t.y),i.style("text-anchor",t.anchor),i.style("font-family",t.fontFamily),i.style("font-size",n),i.style("font-weight",t.fontWeight),i.attr("fill",t.fill),t.class!==void 0&&i.attr("class",t.class);let a=i.append("tspan");return a.attr("x",t.x+t.textMargin*2),a.attr("fill",t.fill),a.text(r),i},"drawSimpleText"),G9=em((e,t,r)=>{if(!e||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),Yt.lineBreakRegex.test(e)))return e;let n=e.split(" ").filter(Boolean),i=[],a="";return n.forEach((s,l)=>{let u=Dl(`${s} `,r),h=Dl(a,r);if(u>t){let{hyphenatedStrings:p,remainingWord:m}=RSt(s,t,"-",r);i.push(a,...p),a=m}else h+u>=t?(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)},(e,t,r)=>`${e}${t}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),RSt=em((e,t,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);let i=[...e],a=[],s="";return i.forEach((l,u)=>{let h=`${s}${l}`;if(Dl(h,n)>=t){let d=u+1,p=i.length===d,m=`${h}${r}`;a.push(p?h:m),s=""}else s=h}),{hyphenatedStrings:a,remainingWord:s}},(e,t,r="-",n)=>`${e}${t}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);o(P5,"calculateTextHeight");o(Dl,"calculateTextWidth");V9=em((e,t)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=t;if(!e)return{width:0,height:0};let[,a]=Tc(r),s=["sans-serif",n],l=e.split(Yt.lineBreakRegex),u=[],h=Gt("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=LSt();v.text=y||B9;let x=DSt(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]},(e,t)=>`${e}${t.fontSize}${t.fontWeight}${t.fontFamily}`),P9=class{constructor(t=!1,r){this.count=0;this.count=r?r.length:0,this.next=t?()=>this.count++:()=>Date.now()}static{o(this,"InitIDGenerator")}},NSt=o(function(e){return O5=O5||document.createElement("div"),e=escape(e).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),O5.innerHTML=e,unescape(O5.textContent)},"entityDecode");o(U9,"isDetailedError");MSt=o((e,t,r,n)=>{if(!n)return;let i=e.node()?.getBBox();i&&e.append("text").text(n).attr("x",i.x+i.width/2).attr("y",-r).attr("class",t)},"insertTitle"),Tc=o(e=>{if(typeof e=="number")return[e,e+"px"];let t=parseInt(e??"",10);return Number.isNaN(t)?[void 0,void 0]:e===String(t)?[t,e+"px"]:[t,e]},"parseFontSize");o(Ss,"cleanAndMerge");Oe={assignWithDepth:Vn,wrapLabel:G9,calculateTextHeight:P5,calculateTextWidth:Dl,calculateTextDimensions:V9,cleanAndMerge:Ss,detectInit:bSt,detectDirective:wj,isSubstringInArray:wSt,interpolateToCurve:mm,calcLabelPosition:CSt,calcCardinalityPosition:SSt,calcTerminalLabelPosition:ASt,formatUrl:TSt,getStylesFromArray:gm,generateId:z9,random:$9,runFunc:kSt,entityDecode:NSt,insertTitle:MSt,parseFontSize:Tc,InitIDGenerator:P9},Ej=o(function(e){let t=e;return t=t.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),t=t.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),t=t.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"}),t},"encodeEntities"),no=o(function(e){return e.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),B5=o((e,t,{counter:r=0,prefix:n,suffix:i})=>`${n?`${n}_`:""}${e}_${t}_${r}${i?`_${i}`:""}`,"getEdgeId")});function Rl(e,t,r,n,i){if(!t[e].width)if(r)t[e].text=G9(t[e].text,i,n),t[e].textLines=t[e].text.split(Yt.lineBreakRegex).length,t[e].width=i,t[e].height=P5(t[e].text,n);else{let a=t[e].text.split(Yt.lineBreakRegex);t[e].textLines=a.length;let s=0;t[e].height=0,t[e].width=0;for(let l of a)t[e].width=Math.max(Dl(l,n),t[e].width),s=P5(l,n),t[e].height=t[e].height+s}}function Lj(e,t,r,n,i){let a=new G5(i);a.data.widthLimit=r.data.widthLimit/Math.min(H9,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&&$e.wrap,f=F5($e);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Rl("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=F5($e);Rl("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=F5($e);g.fontSize=g.fontSize-2,Rl("descr",l,h,g,a.data.widthLimit),l.descr.Y=u+20,u=l.descr.Y+l.descr.height}if(s==0||s%H9===0){let g=r.data.startx+$e.diagramMarginX,y=r.data.stopy+$e.diagramMarginY+u;a.setData(g,g,y,y)}else{let g=a.data.stopx!==a.data.startx?a.data.stopx+$e.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&&_j(a,e,d,p),t=l.alias;let m=i.db.getBoundarys(t);m.length>0&&Lj(e,t,a,m,i),l.alias!=="global"&&Aj(e,l,a),r.data.stopy=Math.max(a.data.stopy+$e.c4ShapeMargin,r.data.stopy),r.data.stopx=Math.max(a.data.stopx+$e.c4ShapeMargin,r.data.stopx),z5=Math.max(z5,r.data.stopx),$5=Math.max($5,r.data.stopy)}}var z5,$5,Sj,H9,$e,G5,W9,Tv,F5,ISt,Aj,_j,As,Cj,OSt,PSt,BSt,Y9,Dj=R(()=>{"use strict";ur();Cq();ce();LS();hr();j7();Ue();yp();_r();Jn();z5=0,$5=0,Sj=4,H9=2;ty.yy=Ty;$e={},G5=class{static{o(this,"Bounds")}constructor(t){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,W9(t.db.getConfig())}setData(t,r,n,i){this.nextData.startx=this.data.startx=t,this.nextData.stopx=this.data.stopx=r,this.nextData.starty=this.data.starty=n,this.nextData.stopy=this.data.stopy=i}updateVal(t,r,n,i){t[r]===void 0?t[r]=n:t[r]=i(n,t[r])}insert(t){this.nextData.cnt=this.nextData.cnt+1;let r=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+t.margin:this.nextData.stopx+t.margin*2,n=r+t.width,i=this.nextData.starty+t.margin*2,a=i+t.height;(r>=this.data.widthLimit||n>=this.data.widthLimit||this.nextData.cnt>Sj)&&(r=this.nextData.startx+t.margin+$e.nextLinePaddingX,i=this.nextData.stopy+t.margin*2,this.nextData.stopx=n=r+t.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=a=i+t.height,this.nextData.cnt=1),t.x=r,t.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(t){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},W9(t.db.getConfig())}bumpLastMargin(t){this.data.stopx+=t,this.data.stopy+=t}},W9=o(function(e){Vn($e,e),e.fontFamily&&($e.personFontFamily=$e.systemFontFamily=$e.messageFontFamily=e.fontFamily),e.fontSize&&($e.personFontSize=$e.systemFontSize=$e.messageFontSize=e.fontSize),e.fontWeight&&($e.personFontWeight=$e.systemFontWeight=$e.messageFontWeight=e.fontWeight)},"setConf"),Tv=o((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"c4ShapeFont"),F5=o(e=>({fontFamily:e.boundaryFontFamily,fontSize:e.boundaryFontSize,fontWeight:e.boundaryFontWeight}),"boundaryFont"),ISt=o(e=>({fontFamily:e.messageFontFamily,fontSize:e.messageFontSize,fontWeight:e.messageFontWeight}),"messageFont");o(Rl,"calcC4ShapeTextWH");Aj=o(function(e,t,r){t.x=r.data.startx,t.y=r.data.starty,t.width=r.data.stopx-r.data.startx,t.height=r.data.stopy-r.data.starty,t.label.y=$e.c4ShapeMargin-35;let n=t.wrap&&$e.wrap,i=F5($e);i.fontSize=i.fontSize+2,i.fontWeight="bold";let a=Dl(t.label.text,i);Rl("label",t,n,i,a),Al.drawBoundary(e,t,$e)},"drawBoundary"),_j=o(function(e,t,r,n){let i=0;for(let a of n){i=0;let s=r[a],l=Tv($e,s.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,s.typeC4Shape.width=Dl("\xAB"+s.typeC4Shape.text+"\xBB",l),s.typeC4Shape.height=l.fontSize+2,s.typeC4Shape.Y=$e.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&&$e.wrap,h=$e.width-$e.c4ShapePadding*2,f=Tv($e,s.typeC4Shape.text);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Rl("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($e,s.typeC4Shape.text);Rl("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($e,s.techn.text);Rl("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($e,s.typeC4Shape.text);Rl("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+$e.c4ShapePadding,s.width=Math.max(s.width||$e.width,p,$e.width),s.height=Math.max(s.height||$e.height,d,$e.height),s.margin=s.margin||$e.c4ShapeMargin,e.insert(s),Al.drawC4Shape(t,s,$e)}e.bumpLastMargin($e.c4ShapeMargin)},"drawC4ShapeArray"),As=class{static{o(this,"Point")}constructor(t,r){this.x=t,this.y=r}},Cj=o(function(e,t){let r=e.x,n=e.y,i=t.x,a=t.y,s=r+e.width/2,l=n+e.height/2,u=Math.abs(r-i),h=Math.abs(n-a),f=h/u,d=e.height/e.width,p=null;return n==a&&ri?p=new As(r,l):r==i&&na&&(p=new As(s,n)),r>i&&n=f?p=new As(r,l+f*e.width/2):p=new As(s-u/h*e.height/2,n+e.height):r=f?p=new As(r+e.width,l+f*e.width/2):p=new As(s+u/h*e.height/2,n+e.height):ra?d>=f?p=new As(r+e.width,l-f*e.width/2):p=new As(s+e.height/2*u/h,n):r>i&&n>a&&(d>=f?p=new As(r,l-e.width/2*f):p=new As(s-e.height/2*u/h,n)),p},"getIntersectPoint"),OSt=o(function(e,t){let r={x:0,y:0};r.x=t.x+t.width/2,r.y=t.y+t.height/2;let n=Cj(e,r);r.x=e.x+e.width/2,r.y=e.y+e.height/2;let i=Cj(t,r);return{startPoint:n,endPoint:i}},"getIntersectPoints"),PSt=o(function(e,t,r,n){let i=0;for(let a of t){i=i+1;let s=a.wrap&&$e.wrap,l=ISt($e);n.db.getC4Type()==="C4Dynamic"&&(a.label.text=i+": "+a.label.text);let h=Dl(a.label.text,l);Rl("label",a,s,l,h),a.techn&&a.techn.text!==""&&(h=Dl(a.techn.text,l),Rl("techn",a,s,l,h)),a.descr&&a.descr.text!==""&&(h=Dl(a.descr.text,l),Rl("descr",a,s,l,h));let f=r(a.from),d=r(a.to),p=OSt(f,d);a.startPoint=p.startPoint,a.endPoint=p.endPoint}Al.drawRels(e,t,$e)},"drawRels");o(Lj,"drawInsideBoundary");BSt=o(function(e,t,r,n){$e=pt().c4;let i=pt().securityLevel,a;i==="sandbox"&&(a=Gt("#i"+t));let s=i==="sandbox"?Gt(a.nodes()[0].contentDocument.body):Gt("body"),l=n.db;n.db.setWrap($e.wrap),Sj=l.getC4ShapeInRow(),H9=l.getC4BoundaryInRow(),V.debug(`C:${JSON.stringify($e,null,2)}`);let u=i==="sandbox"?s.select(`[id="${t}"]`):Gt(`[id="${t}"]`);Al.insertComputerIcon(u),Al.insertDatabaseIcon(u),Al.insertClockIcon(u);let h=new G5(n);h.setData($e.diagramMarginX,$e.diagramMarginX,$e.diagramMarginY,$e.diagramMarginY),h.data.widthLimit=screen.availWidth,z5=$e.diagramMarginX,$5=$e.diagramMarginY;let f=n.db.getTitle(),d=n.db.getBoundarys("");Lj(u,"",h,d,n),Al.insertArrowHead(u),Al.insertArrowEnd(u),Al.insertArrowCrossHead(u),Al.insertArrowFilledHead(u),PSt(u,n.db.getRels(),n.db.getC4Shape,n),h.data.stopx=z5,h.data.stopy=$5;let p=h.data,g=p.stopy-p.starty+2*$e.diagramMarginY,v=p.stopx-p.startx+2*$e.diagramMarginX;f&&u.append("text").text(f).attr("x",(p.stopx-p.startx)/2-4*$e.diagramMarginX).attr("y",p.starty+$e.diagramMarginY),Pr(u,g,v,$e.useMaxWidth);let x=f?60:0;u.attr("viewBox",p.startx-$e.diagramMarginX+" -"+($e.diagramMarginY+x)+" "+v+" "+(g+x)),V.debug("models:",p)},"draw"),Y9={drawPersonOrSystemArray:_j,drawBoundary:Aj,setConf:W9,draw:BSt}});var FSt,Rj,Nj=R(()=>{"use strict";FSt=o(e=>`.person { + stroke: ${e.personBorder}; + fill: ${e.personBkg}; + } +`,"getStyles"),Rj=FSt});var Mj={};xr(Mj,{diagram:()=>zSt});var zSt,Ij=R(()=>{"use strict";LS();j7();Dj();Nj();zSt={parser:t$,db:Ty,renderer:Y9,styles:Rj,init:o(({c4:e,wrap:t})=>{Y9.setConf(e),Ty.setWrap(t)},"init")}});function Zj(e){return typeof e>"u"||e===null}function USt(e){return typeof e=="object"&&e!==null}function HSt(e){return Array.isArray(e)?e:Zj(e)?[]:[e]}function WSt(e,t){var r,n,i,a;if(t)for(a=Object.keys(t),r=0,n=a.length;rl&&(a=" ... ",t=n-l+a.length),r-n>l&&(s=" ...",r=n+l-s.length),{str:a+e.slice(t,r).replace(/\t/g,"\u2192")+s,pos:n-t+a.length}}function X9(e,t){return Fi.repeat(" ",t-e.length)+e}function t7t(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],i=[],a,s=-1;a=r.exec(e.buffer);)i.push(a.index),n.push(a.index+a[0].length),e.position<=a.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);var l="",u,h,f=Math.min(e.line+t.linesAfter,i.length).toString().length,d=t.maxLength-(t.indent+f+3);for(u=1;u<=t.linesBefore&&!(s-u<0);u++)h=q9(e.buffer,n[s-u],i[s-u],e.position-(n[s]-n[s-u]),d),l=Fi.repeat(" ",t.indent)+X9((e.line-u+1).toString(),f)+" | "+h.str+` +`+l;for(h=q9(e.buffer,n[s],i[s],e.position,d),l+=Fi.repeat(" ",t.indent)+X9((e.line+1).toString(),f)+" | "+h.str+` +`,l+=Fi.repeat("-",t.indent+f+3+h.pos)+`^ +`,u=1;u<=t.linesAfter&&!(s+u>=i.length);u++)h=q9(e.buffer,n[s+u],i[s+u],e.position-(n[s]-n[s+u]),d),l+=Fi.repeat(" ",t.indent)+X9((e.line+u+1).toString(),f)+" | "+h.str+` +`;return l.replace(/\n$/,"")}function i7t(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function a7t(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(r7t.indexOf(r)===-1)throw new _s('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=i7t(t.styleAliases||null),n7t.indexOf(this.kind)===-1)throw new _s('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}function Bj(e,t){var r=[];return e[t].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 s7t(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,r;function n(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(o(n,"collectType"),t=0,r=arguments.length;t=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:r*parseFloat(t,10)}function R7t(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Fi.isNegativeZero(e))return"-0.0";return r=e.toString(10),D7t.test(r)?r.replace("e",".e"):r}function N7t(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||Fi.isNegativeZero(e))}function O7t(e){return e===null?!1:eK.exec(e)!==null||rK.exec(e)!==null}function P7t(e){var t,r,n,i,a,s,l,u=0,h=null,f,d,p;if(t=eK.exec(e),t===null&&(t=rK.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,i=+t[3],!t[4])return new Date(Date.UTC(r,n,i));if(a=+t[4],s=+t[5],l=+t[6],t[7]){for(u=t[7].slice(0,3);u.length<3;)u+="0";u=+u}return t[9]&&(f=+t[10],d=+(t[11]||0),h=(f*60+d)*6e4,t[9]==="-"&&(h=-h)),p=new Date(Date.UTC(r,n,i,a,s,l,u)),h&&p.setTime(p.getTime()-h),p}function B7t(e){return e.toISOString()}function z7t(e){return e==="<<"||e===null}function G7t(e){if(e===null)return!1;var t,r,n=0,i=e.length,a=eL;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function V7t(e){var t,r,n=e.replace(/[\r\n=]/g,""),i=n.length,a=eL,s=0,l=[];for(t=0;t>16&255),l.push(s>>8&255),l.push(s&255)),s=s<<6|a.indexOf(n.charAt(t));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 U7t(e){var t="",r=0,n,i,a=e.length,s=eL;for(n=0;n>18&63],t+=s[r>>12&63],t+=s[r>>6&63],t+=s[r&63]),r=(r<<8)+e[n];return i=a%3,i===0?(t+=s[r>>18&63],t+=s[r>>12&63],t+=s[r>>6&63],t+=s[r&63]):i===2?(t+=s[r>>10&63],t+=s[r>>4&63],t+=s[r<<2&63],t+=s[64]):i===1&&(t+=s[r>>2&63],t+=s[r<<4&63],t+=s[64],t+=s[64]),t}function H7t(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}function X7t(e){if(e===null)return!0;var t=[],r,n,i,a,s,l=e;for(r=0,n=l.length;r>10)+55296,(e-65536&1023)+56320)}function dAt(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||nK,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function uK(e,t){var r={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return r.snippet=e7t(r),new _s(t,r)}function je(e,t){throw uK(e,t)}function H5(e,t){e.onWarning&&e.onWarning.call(null,uK(e,t))}function Vh(e,t,r,n){var i,a,s,l;if(t1&&(e.result+=Fi.repeat(` +`,t-1))}function pAt(e,t,r){var n,i,a,s,l,u,h,f,d=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),Ls(m)||vm(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=e.input.charCodeAt(e.position+1),Ls(i)||r&&vm(i)))return!1;for(e.kind="scalar",e.result="",a=s=e.position,l=!1;m!==0;){if(m===58){if(i=e.input.charCodeAt(e.position+1),Ls(i)||r&&vm(i))break}else if(m===35){if(n=e.input.charCodeAt(e.position-1),Ls(n))break}else{if(e.position===e.lineStart&&q5(e)||r&&vm(m))break;if(kc(m))if(u=e.line,h=e.lineStart,f=e.lineIndent,Ai(e,!1,-1),e.lineIndent>=t){l=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=s,e.line=u,e.lineStart=h,e.lineIndent=f;break}}l&&(Vh(e,a,s,!1),nL(e,e.line-u),a=s=e.position,l=!1),Rd(m)||(s=e.position+1),m=e.input.charCodeAt(++e.position)}return Vh(e,a,s,!1),e.result?!0:(e.kind=d,e.result=p,!1)}function mAt(e,t){var r,n,i;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=i=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(Vh(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,i=e.position;else return!0;else kc(r)?(Vh(e,n,i,!0),nL(e,Ai(e,!1,t)),n=i=e.position):e.position===e.lineStart&&q5(e)?je(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);je(e,"unexpected end of the stream within a single quoted scalar")}function gAt(e,t){var r,n,i,a,s,l;if(l=e.input.charCodeAt(e.position),l!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(l=e.input.charCodeAt(e.position))!==0;){if(l===34)return Vh(e,r,e.position,!0),e.position++,!0;if(l===92){if(Vh(e,r,e.position,!0),l=e.input.charCodeAt(++e.position),kc(l))Ai(e,!1,t);else if(l<256&&lK[l])e.result+=cK[l],e.position++;else if((s=uAt(l))>0){for(i=s,a=0;i>0;i--)l=e.input.charCodeAt(++e.position),(s=cAt(l))>=0?a=(a<<4)+s:je(e,"expected hexadecimal character");e.result+=fAt(a),e.position++}else je(e,"unknown escape sequence");r=n=e.position}else kc(l)?(Vh(e,r,n,!0),nL(e,Ai(e,!1,t)),r=n=e.position):e.position===e.lineStart&&q5(e)?je(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}je(e,"unexpected end of the stream within a double quoted scalar")}function yAt(e,t){var r=!0,n,i,a,s=e.tag,l,u=e.anchor,h,f,d,p,m,g=Object.create(null),y,v,x,b;if(b=e.input.charCodeAt(e.position),b===91)f=93,m=!1,l=[];else if(b===123)f=125,m=!0,l={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=l),b=e.input.charCodeAt(++e.position);b!==0;){if(Ai(e,!0,t),b=e.input.charCodeAt(e.position),b===f)return e.position++,e.tag=s,e.anchor=u,e.kind=m?"mapping":"sequence",e.result=l,!0;r?b===44&&je(e,"expected the node content, but found ','"):je(e,"missed comma between flow collection entries"),v=y=x=null,d=p=!1,b===63&&(h=e.input.charCodeAt(e.position+1),Ls(h)&&(d=p=!0,e.position++,Ai(e,!0,t))),n=e.line,i=e.lineStart,a=e.position,bm(e,t,V5,!1,!0),v=e.tag,y=e.result,Ai(e,!0,t),b=e.input.charCodeAt(e.position),(p||e.line===n)&&b===58&&(d=!0,b=e.input.charCodeAt(++e.position),Ai(e,!0,t),bm(e,t,V5,!1,!0),x=e.result),m?xm(e,l,g,v,y,x,n,i,a):d?l.push(xm(e,null,g,v,y,x,n,i,a)):l.push(y),Ai(e,!0,t),b=e.input.charCodeAt(e.position),b===44?(r=!0,b=e.input.charCodeAt(++e.position)):r=!1}je(e,"unexpected end of the stream within a flow collection")}function vAt(e,t){var r,n,i=j9,a=!1,s=!1,l=t,u=0,h=!1,f,d;if(d=e.input.charCodeAt(e.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(e.kind="scalar",e.result="";d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)j9===i?i=d===43?Fj:aAt:je(e,"repeat of a chomping mode identifier");else if((f=hAt(d))>=0)f===0?je(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):s?je(e,"repeat of an indentation width identifier"):(l=t+f-1,s=!0);else break;if(Rd(d)){do d=e.input.charCodeAt(++e.position);while(Rd(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!kc(d)&&d!==0)}for(;d!==0;){for(rL(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!s||e.lineIndentl&&(l=e.lineIndent),kc(d)){u++;continue}if(e.lineIndentt)&&u!==0)je(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(v&&(s=e.line,l=e.lineStart,u=e.position),bm(e,t,U5,!0,i)&&(v?g=e.result:y=e.result),v||(xm(e,d,p,m,g,y,s,l,u),m=g=y=null),Ai(e,!0,-1),b=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>t)&&b!==0)je(e,"bad indentation of a mapping entry");else if(e.lineIndentt?u=1:e.lineIndent===t?u=0:e.lineIndentt?u=1:e.lineIndent===t?u=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),d=0,p=e.implicitTypes.length;d"),e.result!==null&&g.kind!==e.kind&&je(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+g.kind+'", not "'+e.kind+'"'),g.resolve(e.result,e.tag)?(e.result=g.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):je(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function kAt(e){var t=e.position,r,n,i,a=!1,s;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(s=e.input.charCodeAt(e.position))!==0&&(Ai(e,!0,-1),s=e.input.charCodeAt(e.position),!(e.lineIndent>0||s!==37));){for(a=!0,s=e.input.charCodeAt(++e.position),r=e.position;s!==0&&!Ls(s);)s=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),i=[],n.length<1&&je(e,"directive name must not be less than one character in length");s!==0;){for(;Rd(s);)s=e.input.charCodeAt(++e.position);if(s===35){do s=e.input.charCodeAt(++e.position);while(s!==0&&!kc(s));break}if(kc(s))break;for(r=e.position;s!==0&&!Ls(s);)s=e.input.charCodeAt(++e.position);i.push(e.input.slice(r,e.position))}s!==0&&rL(e),Uh.call(Gj,n)?Gj[n](e,n,i):H5(e,'unknown document directive "'+n+'"')}if(Ai(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,Ai(e,!0,-1)):a&&je(e,"directives end mark is expected"),bm(e,e.lineIndent-1,U5,!1,!0),Ai(e,!0,-1),e.checkLineBreaks&&oAt.test(e.input.slice(t,e.position))&&H5(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&q5(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Ai(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=hK(e,r);if(typeof t!="function")return n;for(var i=0,a=n.length;i=55296&&r<=56319&&t+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function bK(e){var t=/^\n* /;return t.test(e)}function JAt(e,t,r,n,i,a,s,l){var u,h=0,f=null,d=!1,p=!1,m=n!==-1,g=-1,y=QAt(kv(e,0))&&ZAt(kv(e,e.length-1));if(t||s)for(u=0;u=65536?u+=2:u++){if(h=kv(e,u),!Av(h))return ym;y=y&&Yj(h,f,l),f=h}else{for(u=0;u=65536?u+=2:u++){if(h=kv(e,u),h===Cv)d=!0,m&&(p=p||u-g-1>n&&e[g+1]!==" ",g=u);else if(!Av(h))return ym;y=y&&Yj(h,f,l),f=h}p=p||m&&u-g-1>n&&e[g+1]!==" "}return!d&&!p?y&&!s&&!i(e)?wK:a===Sv?ym:J9:r>9&&bK(e)?ym:s?a===Sv?ym:J9:p?kK:TK}function t8t(e,t,r,n,i){e.dump=function(){if(t.length===0)return e.quotingType===Sv?'""':"''";if(!e.noCompatMode&&(HAt.indexOf(t)!==-1||WAt.test(t)))return e.quotingType===Sv?'"'+t+'"':"'"+t+"'";var a=e.indent*Math.max(1,r),s=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),l=n||e.flowLevel>-1&&r>=e.flowLevel;function u(h){return KAt(e,h)}switch(o(u,"testAmbiguity"),JAt(t,l,e.indent,s,u,e.quotingType,e.forceQuotes&&!n,i)){case wK:return t;case J9:return"'"+t.replace(/'/g,"''")+"'";case TK:return"|"+qj(t,e.indent)+Xj(Hj(t,a));case kK:return">"+qj(t,e.indent)+Xj(Hj(e8t(t,s),a));case ym:return'"'+r8t(t)+'"';default:throw new _s("impossible error: invalid scalar style")}}()}function qj(e,t){var r=bK(e)?String(t):"",n=e[e.length-1]===` +`,i=n&&(e[e.length-2]===` +`||e===` +`),a=i?"+":n?"":"-";return r+a+` +`}function Xj(e){return e[e.length-1]===` +`?e.slice(0,-1):e}function e8t(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var h=e.indexOf(` +`);return h=h!==-1?h:e.length,r.lastIndex=h,jj(e.slice(0,h),t)}(),i=e[0]===` +`||e[0]===" ",a,s;s=r.exec(e);){var l=s[1],u=s[2];a=u[0]===" ",n+=l+(!i&&!a&&u!==""?` +`:"")+jj(u,t),i=a}return n}function jj(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,i=0,a,s=0,l=0,u="";n=r.exec(e);)l=n.index,l-i>t&&(a=s>i?s:l,u+=` +`+e.slice(i,a),i=a+1),s=l;return u+=` +`,e.length-i>t&&s>i?u+=e.slice(i,s)+` +`+e.slice(s+1):u+=e.slice(i),u.slice(1)}function r8t(e){for(var t="",r=0,n,i=0;i=65536?i+=2:i++)r=kv(e,i),n=Pa[r],!n&&Av(r)?(t+=e[i],r>=65536&&(t+=e[i+1])):t+=n||qAt(r);return t}function n8t(e,t,r){var n="",i=e.tag,a,s,l;for(a=0,s=r.length;a"u"&&Ru(e,t,null,!1,!1))&&(n!==""&&(n+=","+(e.condenseFlow?"":" ")),n+=e.dump);e.tag=i,e.dump="["+n+"]"}function Kj(e,t,r,n){var i="",a=e.tag,s,l,u;for(s=0,l=r.length;s"u"&&Ru(e,t+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=Z9(e,t)),e.dump&&Cv===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function i8t(e,t,r){var n="",i=e.tag,a=Object.keys(r),s,l,u,h,f;for(s=0,l=a.length;s1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Ru(e,t,h,!1,!1)&&(f+=e.dump,n+=f));e.tag=i,e.dump="{"+n+"}"}function a8t(e,t,r,n){var i="",a=e.tag,s=Object.keys(r),l,u,h,f,d,p;if(e.sortKeys===!0)s.sort();else if(typeof e.sortKeys=="function")s.sort(e.sortKeys);else if(e.sortKeys)throw new _s("sortKeys must be a boolean or a function");for(l=0,u=s.length;l1024,d&&(e.dump&&Cv===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,d&&(p+=Z9(e,t)),Ru(e,t+1,f,!0,d)&&(e.dump&&Cv===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function Qj(e,t,r){var n,i,a,s,l,u;for(i=r?e.explicitTypes:e.implicitTypes,a=0,s=i.length;a tag resolver accepts not "'+u+'" style');e.dump=n}return!0}return!1}function Ru(e,t,r,n,i,a,s){e.tag=null,e.dump=r,Qj(e,r,!1)||Qj(e,r,!0);var l=dK.call(e.dump),u=n,h;n&&(n=e.flowLevel<0||e.flowLevel>t);var f=l==="[object Object]"||l==="[object Array]",d,p;if(f&&(d=e.duplicates.indexOf(r),p=d!==-1),(e.tag!==null&&e.tag!=="?"||p||e.indent!==2&&t>0)&&(i=!1),p&&e.usedDuplicates[d])e.dump="*ref_"+d;else{if(f&&p&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),l==="[object Object]")n&&Object.keys(e.dump).length!==0?(a8t(e,t,e.dump,i),p&&(e.dump="&ref_"+d+e.dump)):(i8t(e,t,e.dump),p&&(e.dump="&ref_"+d+" "+e.dump));else if(l==="[object Array]")n&&e.dump.length!==0?(e.noArrayIndent&&!s&&t>0?Kj(e,t-1,e.dump,i):Kj(e,t,e.dump,i),p&&(e.dump="&ref_"+d+e.dump)):(n8t(e,t,e.dump),p&&(e.dump="&ref_"+d+" "+e.dump));else if(l==="[object String]")e.tag!=="?"&&t8t(e,e.dump,t,a,u);else{if(l==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new _s("unacceptable kind of an object to dump "+l)}e.tag!==null&&e.tag!=="?"&&(h=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?h="!"+h:h.slice(0,18)==="tag:yaml.org,2002:"?h="!!"+h.slice(18):h="!<"+h+">",e.dump=h+" "+e.dump)}return!0}function s8t(e,t){var r=[],n=[],i,a;for(tL(e,r,n),i=0,a=n.length;i{"use strict";o(Zj,"isNothing");o(USt,"isObject");o(HSt,"toArray");o(WSt,"extend");o(YSt,"repeat");o(qSt,"isNegativeZero");XSt=Zj,jSt=USt,KSt=HSt,QSt=YSt,ZSt=qSt,JSt=WSt,Fi={isNothing:XSt,isObject:jSt,toArray:KSt,repeat:QSt,isNegativeZero:ZSt,extend:JSt};o(Jj,"formatError");o(Ev,"YAMLException$1");Ev.prototype=Object.create(Error.prototype);Ev.prototype.constructor=Ev;Ev.prototype.toString=o(function(t){return this.name+": "+Jj(this,t)},"toString");_s=Ev;o(q9,"getLine");o(X9,"padStart");o(t7t,"makeSnippet");e7t=t7t,r7t=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],n7t=["scalar","sequence","mapping"];o(i7t,"compileStyleAliases");o(a7t,"Type$1");Oa=a7t;o(Bj,"compileList");o(s7t,"compileMap");o(K9,"Schema$1");K9.prototype.extend=o(function(t){var r=[],n=[];if(t instanceof Oa)n.push(t);else if(Array.isArray(t))n=n.concat(t);else if(t&&(Array.isArray(t.implicit)||Array.isArray(t.explicit)))t.implicit&&(r=r.concat(t.implicit)),t.explicit&&(n=n.concat(t.explicit));else throw new _s("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(a){if(!(a instanceof Oa))throw new _s("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new _s("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 _s("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 Oa))throw new _s("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(K9.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=Bj(i,"implicit"),i.compiledExplicit=Bj(i,"explicit"),i.compiledTypeMap=s7t(i.compiledImplicit,i.compiledExplicit),i},"extend");o7t=K9,l7t=new Oa("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(e){return e!==null?e:""},"construct")}),c7t=new Oa("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(e){return e!==null?e:[]},"construct")}),u7t=new Oa("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(e){return e!==null?e:{}},"construct")}),h7t=new o7t({explicit:[l7t,c7t,u7t]});o(f7t,"resolveYamlNull");o(d7t,"constructYamlNull");o(p7t,"isNull");m7t=new Oa("tag:yaml.org,2002:null",{kind:"scalar",resolve:f7t,construct:d7t,predicate:p7t,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(g7t,"resolveYamlBoolean");o(y7t,"constructYamlBoolean");o(v7t,"isBoolean");x7t=new Oa("tag:yaml.org,2002:bool",{kind:"scalar",resolve:g7t,construct:y7t,predicate:v7t,represent:{lowercase:o(function(e){return e?"true":"false"},"lowercase"),uppercase:o(function(e){return e?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(e){return e?"True":"False"},"camelcase")},defaultStyle:"lowercase"});o(b7t,"isHexCode");o(w7t,"isOctCode");o(T7t,"isDecCode");o(k7t,"resolveYamlInteger");o(E7t,"constructYamlInteger");o(C7t,"isInteger");S7t=new Oa("tag:yaml.org,2002:int",{kind:"scalar",resolve:k7t,construct:E7t,predicate:C7t,represent:{binary:o(function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},"binary"),octal:o(function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},"octal"),decimal:o(function(e){return e.toString(10)},"decimal"),hexadecimal:o(function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),A7t=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");o(_7t,"resolveYamlFloat");o(L7t,"constructYamlFloat");D7t=/^[-+]?[0-9]+e/;o(R7t,"representYamlFloat");o(N7t,"isFloat");M7t=new Oa("tag:yaml.org,2002:float",{kind:"scalar",resolve:_7t,construct:L7t,predicate:N7t,represent:R7t,defaultStyle:"lowercase"}),tK=h7t.extend({implicit:[m7t,x7t,S7t,M7t]}),I7t=tK,eK=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),rK=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(O7t,"resolveYamlTimestamp");o(P7t,"constructYamlTimestamp");o(B7t,"representYamlTimestamp");F7t=new Oa("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:O7t,construct:P7t,instanceOf:Date,represent:B7t});o(z7t,"resolveYamlMerge");$7t=new Oa("tag:yaml.org,2002:merge",{kind:"scalar",resolve:z7t}),eL=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;o(G7t,"resolveYamlBinary");o(V7t,"constructYamlBinary");o(U7t,"representYamlBinary");o(H7t,"isBinary");W7t=new Oa("tag:yaml.org,2002:binary",{kind:"scalar",resolve:G7t,construct:V7t,predicate:H7t,represent:U7t}),Y7t=Object.prototype.hasOwnProperty,q7t=Object.prototype.toString;o(X7t,"resolveYamlOmap");o(j7t,"constructYamlOmap");K7t=new Oa("tag:yaml.org,2002:omap",{kind:"sequence",resolve:X7t,construct:j7t}),Q7t=Object.prototype.toString;o(Z7t,"resolveYamlPairs");o(J7t,"constructYamlPairs");tAt=new Oa("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Z7t,construct:J7t}),eAt=Object.prototype.hasOwnProperty;o(rAt,"resolveYamlSet");o(nAt,"constructYamlSet");iAt=new Oa("tag:yaml.org,2002:set",{kind:"mapping",resolve:rAt,construct:nAt}),nK=I7t.extend({implicit:[F7t,$7t],explicit:[W7t,K7t,tAt,iAt]}),Uh=Object.prototype.hasOwnProperty,V5=1,iK=2,aK=3,U5=4,j9=1,aAt=2,Fj=3,sAt=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,oAt=/[\x85\u2028\u2029]/,lAt=/[,\[\]\{\}]/,sK=/^(?:!|!!|![a-z\-]+!)$/i,oK=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;o(zj,"_class");o(kc,"is_EOL");o(Rd,"is_WHITE_SPACE");o(Ls,"is_WS_OR_EOL");o(vm,"is_FLOW_INDICATOR");o(cAt,"fromHexCode");o(uAt,"escapedHexLen");o(hAt,"fromDecimalCode");o($j,"simpleEscapeSequence");o(fAt,"charFromCodepoint");lK=new Array(256),cK=new Array(256);for(Dd=0;Dd<256;Dd++)lK[Dd]=$j(Dd)?1:0,cK[Dd]=$j(Dd);o(dAt,"State$1");o(uK,"generateError");o(je,"throwError");o(H5,"throwWarning");Gj={YAML:o(function(t,r,n){var i,a,s;t.version!==null&&je(t,"duplication of %YAML directive"),n.length!==1&&je(t,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&je(t,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),s=parseInt(i[2],10),a!==1&&je(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=s<2,s!==1&&s!==2&&H5(t,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(t,r,n){var i,a;n.length!==2&&je(t,"TAG directive accepts exactly two arguments"),i=n[0],a=n[1],sK.test(i)||je(t,"ill-formed tag handle (first argument) of the TAG directive"),Uh.call(t.tagMap,i)&&je(t,'there is a previously declared suffix for "'+i+'" tag handle'),oK.test(a)||je(t,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{je(t,"tag prefix is malformed: "+a)}t.tagMap[i]=a},"handleTagDirective")};o(Vh,"captureSegment");o(Vj,"mergeMappings");o(xm,"storeMappingPair");o(rL,"readLineBreak");o(Ai,"skipSeparationSpace");o(q5,"testDocumentSeparator");o(nL,"writeFoldedLines");o(pAt,"readPlainScalar");o(mAt,"readSingleQuotedScalar");o(gAt,"readDoubleQuotedScalar");o(yAt,"readFlowCollection");o(vAt,"readBlockScalar");o(Uj,"readBlockSequence");o(xAt,"readBlockMapping");o(bAt,"readTagProperty");o(wAt,"readAnchorProperty");o(TAt,"readAlias");o(bm,"composeNode");o(kAt,"readDocument");o(hK,"loadDocuments");o(EAt,"loadAll$1");o(CAt,"load$1");SAt=EAt,AAt=CAt,fK={loadAll:SAt,load:AAt},dK=Object.prototype.toString,pK=Object.prototype.hasOwnProperty,iL=65279,_At=9,Cv=10,LAt=13,DAt=32,RAt=33,NAt=34,Q9=35,MAt=37,IAt=38,OAt=39,PAt=42,mK=44,BAt=45,W5=58,FAt=61,zAt=62,$At=63,GAt=64,gK=91,yK=93,VAt=96,vK=123,UAt=124,xK=125,Pa={};Pa[0]="\\0";Pa[7]="\\a";Pa[8]="\\b";Pa[9]="\\t";Pa[10]="\\n";Pa[11]="\\v";Pa[12]="\\f";Pa[13]="\\r";Pa[27]="\\e";Pa[34]='\\"';Pa[92]="\\\\";Pa[133]="\\N";Pa[160]="\\_";Pa[8232]="\\L";Pa[8233]="\\P";HAt=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],WAt=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;o(YAt,"compileStyleMap");o(qAt,"encodeHex");XAt=1,Sv=2;o(jAt,"State");o(Hj,"indentString");o(Z9,"generateNextLine");o(KAt,"testImplicitResolving");o(Y5,"isWhitespace");o(Av,"isPrintable");o(Wj,"isNsCharOrWhitespace");o(Yj,"isPlainSafe");o(QAt,"isPlainSafeFirst");o(ZAt,"isPlainSafeLast");o(kv,"codePointAt");o(bK,"needIndentIndicator");wK=1,J9=2,TK=3,kK=4,ym=5;o(JAt,"chooseScalarStyle");o(t8t,"writeScalar");o(qj,"blockHeader");o(Xj,"dropEndingNewline");o(e8t,"foldString");o(jj,"foldLine");o(r8t,"escapeString");o(n8t,"writeFlowSequence");o(Kj,"writeBlockSequence");o(i8t,"writeFlowMapping");o(a8t,"writeBlockMapping");o(Qj,"detectType");o(Ru,"writeNode");o(s8t,"getDuplicateReferences");o(tL,"inspectNode");o(o8t,"dump$1");l8t=o8t,c8t={dump:l8t};o(aL,"renamed");X5=tK,j5=fK.load,LEe=fK.loadAll,DEe=c8t.dump,REe=aL("safeLoad","load"),NEe=aL("safeLoadAll","loadAll"),MEe=aL("safeDump","dump")});function lL(e){let t=[];for(let r of e){let n=Lv.get(r);n?.styles&&(t=[...t,...n.styles??[]].map(i=>i.trim())),n?.textStyles&&(t=[...t,...n.textStyles??[]].map(i=>i.trim()))}return t}var u8t,CK,wm,Hh,Ds,Lv,Nu,cL,uL,K5,oL,Go,Q5,Z5,J5,tw,h8t,f8t,d8t,p8t,m8t,g8t,y8t,hL,v8t,x8t,b8t,SK,w8t,T8t,fL,AK,_K,k8t,LK,E8t,C8t,S8t,A8t,_8t,_v,DK,RK,L8t,D8t,NK,R8t,N8t,M8t,I8t,O8t,MK,IK,P8t,B8t,F8t,z8t,$8t,G8t,ew,dL=R(()=>{"use strict";ur();_r();Ue();hr();ce();sL();Ci();u8t="flowchart-",CK=0,wm=pt(),Hh=new Map,Ds=[],Lv=new Map,Nu=[],cL=new Map,uL=new Map,K5=0,oL=!0,Z5=[],J5=o(e=>Yt.sanitizeText(e,wm),"sanitizeText"),tw=o(function(e){for(let t of Hh.values())if(t.id===e)return t.domId;return e},"lookUpDomId"),h8t=o(function(e,t,r,n,i,a,s={},l){if(!e||e.trim().length===0)return;let u,h=Hh.get(e);if(h===void 0&&(h={id:e,labelType:"text",domId:u8t+e+"-"+CK,styles:[],classes:[]},Hh.set(e,h)),CK++,t!==void 0?(wm=pt(),u=J5(t.text.trim()),h.labelType=t.type,u.startsWith('"')&&u.endsWith('"')&&(u=u.substring(1,u.length-1)),h.text=u):h.text===void 0&&(h.text=e),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=j5(f,{schema:X5});if(d.shape&&(d.shape!==d.shape.toLowerCase()||d.shape.includes("_")))throw new Error(`No such shape: ${d.shape}. Shape names should be lowercase.`);d?.shape&&(h.type=d?.shape),d?.label&&(h.text=d?.label),d?.icon&&(h.icon=d?.icon,!d.label?.trim()&&h.text===e&&(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===e&&(h.text="")),d?.constraint&&(h.constraint=d.constraint),d.w&&(h.assetWidth=Number(d.w)),d.h&&(h.assetHeight=Number(d.h))}},"addVertex"),f8t=o(function(e,t,r){let a={start:e,end:t,type:void 0,text:"",labelType:"text"};V.info("abc78 Got edge...",a);let s=r.text;if(s!==void 0&&(a.text=J5(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),Ds.length<(wm.maxEdges??500))V.info("Pushing edge..."),Ds.push(a);else throw new Error(`Edge limit exceeded. ${Ds.length} edges found, but the limit is ${wm.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"),d8t=o(function(e,t,r){V.info("addLink",e,t,r);for(let n of e)for(let i of t)f8t(n,i,r)},"addLink"),p8t=o(function(e,t){e.forEach(function(r){r==="default"?Ds.defaultInterpolate=t:Ds[r].interpolate=t})},"updateLinkInterpolate"),m8t=o(function(e,t){e.forEach(function(r){if(typeof r=="number"&&r>=Ds.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${Ds.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?Ds.defaultStyle=t:(Ds[r].style=t,(Ds[r]?.style?.length??0)>0&&!Ds[r]?.style?.some(n=>n?.startsWith("fill"))&&Ds[r]?.style?.push("fill:none"))})},"updateLink"),g8t=o(function(e,t){e.split(",").forEach(function(r){let n=Lv.get(r);n===void 0&&(n={id:r,styles:[],textStyles:[]},Lv.set(r,n)),t?.forEach(function(i){if(/color/.exec(i)){let a=i.replace("fill","bgFill");n.textStyles.push(a)}n.styles.push(i)})})},"addClass"),y8t=o(function(e){Go=e,/.*/.exec(Go)&&(Go="LR"),/.*v/.exec(Go)&&(Go="TB"),Go==="TD"&&(Go="TB")},"setDirection"),hL=o(function(e,t){for(let r of e.split(",")){let n=Hh.get(r);n&&n.classes.push(t);let i=cL.get(r);i&&i.classes.push(t)}},"setClass"),v8t=o(function(e,t){if(t!==void 0){t=J5(t);for(let r of e.split(","))uL.set(Q5==="gen-1"?tw(r):r,t)}},"setTooltip"),x8t=o(function(e,t,r){let n=tw(e);if(pt().securityLevel!=="loose"||t===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(){t.transition().duration(500).style("opacity",0),Gt(this).classed("hover",!1)})},"setupToolTips");Z5.push(LK);E8t=o(function(e="gen-1"){Hh=new Map,Lv=new Map,Ds=[],Z5=[LK],Nu=[],cL=new Map,K5=0,uL=new Map,oL=!0,Q5=e,wm=pt(),Ar()},"clear"),C8t=o(e=>{Q5=e||"gen-2"},"setGen"),S8t=o(function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},"defaultStyle"),A8t=o(function(e,t,r){let n=e.text.trim(),i=r.text;e===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(t.flat());if(Q5==="gen-1")for(let h=0;h2e3)return{result:!1,count:0};if(DK[_v]=t,Nu[t].id===e)return{result:!0,count:0};let n=0,i=1;for(;n=0){let s=RK(e,a);if(s.result)return{result:!0,count:i+s.count};i=i+s.count}n=n+1}return{result:!1,count:i}},"indexNodes2"),L8t=o(function(e){return DK[e]},"getDepthFirstPos"),D8t=o(function(){_v=-1,Nu.length>0&&RK("none",Nu.length-1)},"indexNodes"),NK=o(function(){return Nu},"getSubGraphs"),R8t=o(()=>oL?(oL=!1,!0):!1,"firstGraph"),N8t=o(e=>{let t=e.trim(),r="arrow_open";switch(t[0]){case"<":r="arrow_point",t=t.slice(1);break;case"x":r="arrow_cross",t=t.slice(1);break;case"o":r="arrow_circle",t=t.slice(1);break}let n="normal";return t.includes("=")&&(n="thick"),t.includes(".")&&(n="dotted"),{type:r,stroke:n}},"destructStartLink"),M8t=o((e,t)=>{let r=t.length,n=0;for(let i=0;i{let t=e.trim(),r=t.slice(0,-1),n="arrow_open";switch(t.slice(-1)){case"x":n="arrow_cross",t.startsWith("x")&&(n="double_"+n,r=r.slice(1));break;case">":n="arrow_point",t.startsWith("<")&&(n="double_"+n,r=r.slice(1));break;case"o":n="arrow_circle",t.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=M8t(".",r);return s&&(i="dotted",a=s),{type:n,stroke:i,length:a}},"destructEndLink"),O8t=o((e,t)=>{let r=I8t(e),n;if(t){if(n=N8t(t),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"),MK=o((e,t)=>{for(let r of e)if(r.nodes.includes(t))return!0;return!1},"exists"),IK=o((e,t)=>{let r=[];return e.nodes.forEach((n,i)=>{MK(t,n)||r.push(e.nodes[i])}),{nodes:r}},"makeUniq"),P8t={firstGraph:R8t},B8t=o(e=>e.img?"imageSquare":e.icon?e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon":e.type==="square"?"squareRect":e.type==="round"?"roundedRect":e.type??"squareRect","getTypeFromVertex"),F8t=o((e,t)=>e.find(r=>r.id===t),"findNode"),z8t=o(e=>{let t="none",r="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":r=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":t=e.replace("double_",""),r=t;break}return{arrowTypeStart:t,arrowTypeEnd:r}},"destructEdgeType"),$8t=o((e,t,r,n,i,a)=>{let s=r.get(e.id),l=n.get(e.id)??!1,u=F8t(t,e.id);u?(u.cssStyles=e.styles,u.cssCompiledStyles=lL(e.classes),u.cssClasses=e.classes.join(" ")):t.push({id:e.id,label:e.text,labelStyle:"",parentId:s,padding:i.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:lL(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),shape:B8t(e),dir:e.dir,domId:e.domId,isGroup:l,look:a,link:e.link,linkTarget:e.linkTarget,tooltip:SK(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint})},"addNodeFromVertex");o(lL,"getCompiledStyles");G8t=o(()=>{let e=pt(),t=[],r=[],n=NK(),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];t.push({id:h.id,label:h.title,labelStyle:"",parentId:i.get(h.id),padding:8,cssCompiledStyles:lL(h.classes),cssClasses:h.classes.join(" "),shape:"rect",dir:h.dir,isGroup:!0,look:e.look})}AK().forEach(u=>{$8t(u,t,i,a,e,e.look||"classic")});let l=_K();return l.forEach((u,h)=>{let{arrowTypeStart:f,arrowTypeEnd:d}=z8t(u.type),p=[...l.defaultStyle??[]];u.style&&p.push(...u.style);let m={id:B5(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:e.look};r.push(m)}),{nodes:t,edges:r,other:{},config:e}},"getData"),ew={defaultConfig:o(()=>X4.flowchart,"defaultConfig"),setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,getData:G8t,setAccDescription:Fr,addVertex:h8t,lookUpDomId:tw,addLink:d8t,updateLinkInterpolate:p8t,updateLink:m8t,addClass:g8t,setDirection:y8t,setClass:hL,setTooltip:v8t,getTooltip:SK,setClickEvent:w8t,setLink:b8t,bindFunctions:T8t,getDirection:fL,getVertices:AK,getEdges:_K,getClasses:k8t,clear:E8t,setGen:C8t,defaultStyle:S8t,addSubGraph:A8t,getDepthFirstPos:L8t,indexNodes:D8t,getSubGraphs:NK,destructLink:O8t,lex:P8t,exists:MK,makeUniq:IK,setDiagramTitle:cn,getDiagramTitle:Jr}});var rw,pL=R(()=>{"use strict";ur();rw=o((e,t)=>{let r;return t==="sandbox"&&(r=Gt("#i"+e)),(t==="sandbox"?Gt(r.nodes()[0].contentDocument.body):Gt("body")).select(`[id="${e}"]`)},"getDiagramElement")});var io,Nd=R(()=>{"use strict";io=o(({flowchart:e})=>{let t=e?.subGraphTitleMargin?.top??0,r=e?.subGraphTitleMargin?.bottom??0,n=t+r;return{subGraphTitleTopMargin:t,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:n}},"getSubGraphTitleMargins")});function mL(e,t,r){if(e&&e.length){let[n,i]=t,a=Math.PI/180*r,s=Math.cos(a),l=Math.sin(a);for(let u of e){let[h,f]=u;u[0]=(h-n)*s-(f-i)*l+n,u[1]=(h-n)*l+(f-i)*s+i}}}function V8t(e,t){return e[0]===t[0]&&e[1]===t[1]}function U8t(e,t,r,n=1){let i=r,a=Math.max(t,.1),s=e[0]&&e[0][0]&&typeof e[0][0]=="number"?[e]:e,l=[0,0];if(i)for(let h of s)mL(h,l,i);let u=function(h,f,d){let p=[];for(let b of h){let w=[...b];V8t(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 S=y[b].edge,T=y[w].edge;m.push([[Math.round(S.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)mL(h,l,-i);(function(h,f,d){let p=[];h.forEach(m=>p.push(...m)),mL(p,f,d)})(u,l,-i)}return u}function Mv(e,t){var r;let n=t.hachureAngle+90,i=t.hachureGap;i<0&&(i=4*t.strokeWidth),i=Math.round(Math.max(i,.1));let a=1;return t.roughness>=1&&(((r=t.randomizer)===null||r===void 0?void 0:r.next())||Math.random())>.7&&(a=i),U8t(e,i,n,a||1)}function hw(e){let t=e[0],r=e[1];return Math.sqrt(Math.pow(t[0]-r[0],2)+Math.pow(t[1]-r[1],2))}function yL(e,t){return e.type===t}function RL(e){let t=[],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:H8t,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:gL,text:`${parseFloat(RegExp.$1)}`},s=s.substr(RegExp.$1.length)}return l[l.length]={type:OK,text:""},l}(e),n="BOD",i=0,a=r[i];for(;!yL(a,OK);){let s=0,l=[];if(n==="BOD"){if(a.text!=="M"&&a.text!=="m")return RL("M0,0"+e);i++,s=nw[a.text],n=a.text}else yL(a,gL)?s=nw[n]:(i++,s=nw[a.text],n=a.text);if(!(i+sf%2?h+r:h+t);a.push({key:"C",data:u}),t=u[4],r=u[5];break}case"Q":a.push({key:"Q",data:[...l]}),t=l[2],r=l[3];break;case"q":{let u=l.map((h,f)=>f%2?h+r:h+t);a.push({key:"Q",data:u}),t=u[2],r=u[3];break}case"A":a.push({key:"A",data:[...l]}),t=l[5],r=l[6];break;case"a":t+=l[5],r+=l[6],a.push({key:"A",data:[l[0],l[1],l[2],l[3],l[4],t,r]});break;case"H":a.push({key:"H",data:[...l]}),t=l[0];break;case"h":t+=l[0],a.push({key:"H",data:[t]});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]}),t=l[2],r=l[3];break;case"s":{let u=l.map((h,f)=>f%2?h+r:h+t);a.push({key:"S",data:u}),t=u[2],r=u[3];break}case"T":a.push({key:"T",data:[...l]}),t=l[0],r=l[1];break;case"t":t+=l[0],r+=l[1],a.push({key:"T",data:[t,r]});break;case"Z":case"z":a.push({key:"Z",data:[]}),t=n,r=i}return a}function HK(e){let t=[],r="",n=0,i=0,a=0,s=0,l=0,u=0;for(let{key:h,data:f}of e){switch(h){case"M":t.push({key:"M",data:[...f]}),[n,i]=f,[a,s]=f;break;case"C":t.push({key:"C",data:[...f]}),n=f[4],i=f[5],l=f[2],u=f[3];break;case"L":t.push({key:"L",data:[...f]}),[n,i]=f;break;case"H":n=f[0],t.push({key:"L",data:[n,i]});break;case"V":i=f[0],t.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),t.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;t.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;t.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?(t.push({key:"C",data:[n,i,v,x,v,x]}),n=v,i=x):(n!==v||i!==x)&&(WK(n,i,v,x,d,p,m,g,y).forEach(function(b){t.push({key:"C",data:b})}),n=v,i=x);break}case"Z":t.push({key:"Z",data:[]}),n=a,i=s}r=h}return t}function Dv(e,t,r){return[e*Math.cos(r)-t*Math.sin(r),e*Math.sin(r)+t*Math.cos(r)]}function WK(e,t,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{[e,t]=Dv(e,t,-f),[r,n]=Dv(r,n,-f);let I=(e-r)/2,C=(t-n)/2,O=I*I/(i*i)+C*C/(a*a);O>1&&(O=Math.sqrt(O),i*=O,a*=O);let D=i*i,P=a*a,F=D*P-D*C*C-P*I*I,B=D*C*C+P*I*I,G=(l===u?-1:1)*Math.sqrt(Math.abs(F/B));y=G*i*C/a+(e+r)/2,v=G*-a*I/i+(t+n)/2,m=Math.asin(parseFloat(((t-v)/a).toFixed(9))),g=Math.asin(parseFloat(((n-v)/a).toFixed(9))),eg&&(m-=2*Math.PI),!u&&g>m&&(g-=2*Math.PI)}let x=g-m;if(Math.abs(x)>120*Math.PI/180){let I=g,C=r,O=n;g=u&&g>m?m+120*Math.PI/180*1:m+120*Math.PI/180*-1,p=WK(r=y+i*Math.cos(g),n=v+a*Math.sin(g),C,O,i,a,s,0,u,[g,I,y,v])}x=g-m;let b=Math.cos(m),w=Math.sin(m),S=Math.cos(g),T=Math.sin(g),E=Math.tan(x/4),_=4/3*i*E,A=4/3*a*E,L=[e,t],M=[e+_*w,t-A*b],N=[r+_*T,n-A*S],k=[r,n];if(M[0]=2*L[0]-M[0],M[1]=2*L[1]-M[1],h)return[M,N,k].concat(p);{p=[M,N,k].concat(p);let I=[];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=GK(v,h,f,d,p,m,g,1,u);if(!u.disableMultiStroke){let b=GK(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 FK(e,t){let r=HK(UK(RL(e))),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],t)),a=[l[0],l[1]];break;case"C":{let[u,h,f,d,p,m]=l;n.push(...q8t(u,h,f,d,p,m,a,t)),a=[p,m];break}case"Z":n.push(...Wh(a[0],a[1],i[0],i[1],t)),a=[i[0],i[1]]}return{type:"path",ops:n}}function vL(e,t){let r=[];for(let n of e)if(n.length){let i=t.maxRandomnessOffset||0,a=n.length;if(a>2){r.push({op:"move",data:[n[0][0]+nr(i,t),n[0][1]+nr(i,t)]});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*XK(i),m=i.bowing*i.maxRandomnessOffset*(n-t)/200,g=i.bowing*i.maxRandomnessOffset*(e-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:[e+(b?0:v()),t+(b?0:v())]}):y.push({op:"move",data:[e+(b?0:nr(f,i,h)),t+(b?0:nr(f,i,h))]})),s?y.push({op:"bcurveTo",data:[m+e+(r-e)*p+v(),g+t+(n-t)*p+v(),m+e+2*(r-e)*p+v(),g+t+2*(n-t)*p+v(),r+(b?0:v()),n+(b?0:v())]}):y.push({op:"bcurveTo",data:[m+e+(r-e)*p+x(),g+t+(n-t)*p+x(),m+e+2*(r-e)*p+x(),g+t+2*(n-t)*p+x(),r+(b?0:x()),n+(b?0:x())]}),y}function iw(e,t,r){if(!e.length)return[];let n=[];n.push([e[0][0]+nr(t,r),e[0][1]+nr(t,r)]),n.push([e[0][0]+nr(t,r),e[0][1]+nr(t,r)]);for(let i=1;i3){let a=[],s=1-r.curveTightness;i.push({op:"move",data:[e[1][0],e[1][1]]});for(let l=1;l+21&&i.push(l)):i.push(l),i.push(e[t+3])}else{let u=e[t+0],h=e[t+1],f=e[t+2],d=e[t+3],p=Md(u,h,.5),m=Md(h,f,.5),g=Md(f,d,.5),y=Md(p,m,.5),v=Md(m,g,.5),x=Md(y,v,.5);_L([u,p,y,x],0,r,i),_L([x,v,g,d],0,r,i)}var a,s;return i}function j8t(e,t){return uw(e,0,e.length,t)}function uw(e,t,r,n,i){let a=i||[],s=e[t],l=e[r-1],u=0,h=1;for(let f=t+1;fu&&(u=d,h=f)}return Math.sqrt(u)>n?(uw(e,t,h+1,n,a),uw(e,h,r,n,a)):(a.length||a.push(s),a.push(l)),a}function xL(e,t=.15,r){let n=[],i=(e.length-1)/3;for(let a=0;a0?uw(n,0,n.length,r):n}var Nv,bL,wL,TL,kL,EL,Rs,CL,H8t,gL,OK,nw,W8t,ao,km,LL,aw,DL,Kt,Qe=R(()=>{"use strict";o(mL,"t");o(V8t,"e");o(U8t,"s");o(Mv,"n");Nv=class{static{o(this,"o")}constructor(t){this.helper=t}fillPolygons(t,r){return this._fillPolygons(t,r)}_fillPolygons(t,r){let n=Mv(t,r);return{type:"fillSketch",ops:this.renderLines(n,r)}}renderLines(t,r){let n=[];for(let i of t)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],r));return n}};o(hw,"a");bL=class extends Nv{static{o(this,"h")}fillPolygons(t,r){let n=r.hachureGap;n<0&&(n=4*r.strokeWidth),n=Math.max(n,.1);let i=Mv(t,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)hw([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)}}},wL=class extends Nv{static{o(this,"r")}fillPolygons(t,r){let n=this._fillPolygons(t,r),i=Object.assign({},r,{hachureAngle:r.hachureAngle+90}),a=this._fillPolygons(t,i);return n.ops=n.ops.concat(a.ops),n}},TL=class{static{o(this,"i")}constructor(t){this.helper=t}fillPolygons(t,r){let n=Mv(t,r=Object.assign({},r,{hachureAngle:0}));return this.dotsOnLines(n,r)}dotsOnLines(t,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 t){let u=hw(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=hw(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=hw(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&&(_=0,A=2*Math.PI);let L=(A-_)/b.curveStepCount,M=[];for(let N=_;N<=A;N+=L)M.push([w+T*Math.cos(N),S+E*Math.sin(N)]);return M.push([w+T*Math.cos(A),S+E*Math.sin(A)]),M.push([w,S]),Tm([M],b)}(t,r,n,i,a,s,h));return h.stroke!==ao&&f.push(d),this._d("arc",f,h)}curve(t,r){let n=this._o(r),i=[],a=PK(t,n);if(n.fill&&n.fill!==ao)if(n.fillStyle==="solid"){let s=PK(t,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=t;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(...xL(VK([h[0],h[0],h[1],h[2]]),10,(1+n.roughness)/2)):s.push(...xL(VK(h),10,(1+n.roughness)/2))}s.length&&i.push(Tm([s],n))}return n.stroke!==ao&&i.push(a),this._d("curve",i,n)}polygon(t,r){let n=this._o(r),i=[],a=sw(t,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(vL([t],n)):i.push(Tm([t],n))),n.stroke!==ao&&i.push(a),this._d("polygon",i,n)}path(t,r){let n=this._o(r),i=[];if(!t)return this._d("path",i,n);t=(t||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let a=n.fill&&n.fill!=="transparent"&&n.fill!==ao,s=n.stroke!==ao,l=!!(n.simplification&&n.simplification<1),u=function(f,d,p){let m=HK(UK(RL(f))),g=[],y=[],v=[0,0],x=[],b=o(()=>{x.length>=4&&y.push(...xL(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 _=y.length?y[y.length-1]:v;x.push([_[0],_[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 S=[];for(let T of g){let E=j8t(T,p);E.length&&S.push(E)}return S}(t,1,l?4-4*(n.simplification||1):(1+n.roughness)/2),h=FK(t,n);if(a)if(n.fillStyle==="solid")if(u.length===1){let f=FK(t,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(vL(u,n));else i.push(Tm(u,n));return s&&(l?u.forEach(f=>{i.push(sw(f,!1,n))}):i.push(h)),this._d("path",i,n)}opsToPath(t,r){let n="";for(let i of t.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(t){let r=t.sets||[],n=t.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:ao};break;case"fillPath":s={d:this.opsToPath(a),stroke:ao,strokeWidth:0,fill:n.fill||ao};break;case"fillSketch":s=this.fillSketch(a,n)}s&&i.push(s)}return i}fillSketch(t,r){let n=r.fillWeight;return n<0&&(n=r.strokeWidth/2),{d:this.opsToPath(t),stroke:r.fill||ao,strokeWidth:n,fill:ao}}_mergedShape(t){return t.filter((r,n)=>n===0||r.op!=="move")}},LL=class{static{o(this,"st")}constructor(t,r){this.canvas=t,this.ctx=this.canvas.getContext("2d"),this.gen=new km(r)}draw(t){let r=t.sets||[],n=t.options||this.getDefaultOptions(),i=this.ctx,a=t.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=t.shape==="curve"||t.shape==="polygon"||t.shape==="path"?"evenodd":"nonzero";this._drawToContext(i,s,a,l),i.restore();break}case"fillSketch":this.fillSketch(i,s,n)}}fillSketch(t,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2),t.save(),n.fillLineDash&&t.setLineDash(n.fillLineDash),n.fillLineDashOffset&&(t.lineDashOffset=n.fillLineDashOffset),t.strokeStyle=n.fill||"",t.lineWidth=i,this._drawToContext(t,r,n.fixedDecimalPlaceDigits),t.restore()}_drawToContext(t,r,n,i="nonzero"){t.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":t.moveTo(s[0],s[1]);break;case"bcurveTo":t.bezierCurveTo(s[0],s[1],s[2],s[3],s[4],s[5]);break;case"lineTo":t.lineTo(s[0],s[1])}}r.type==="fillPath"?t.fill(i):t.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(t,r,n,i,a){let s=this.gen.line(t,r,n,i,a);return this.draw(s),s}rectangle(t,r,n,i,a){let s=this.gen.rectangle(t,r,n,i,a);return this.draw(s),s}ellipse(t,r,n,i,a){let s=this.gen.ellipse(t,r,n,i,a);return this.draw(s),s}circle(t,r,n,i){let a=this.gen.circle(t,r,n,i);return this.draw(a),a}linearPath(t,r){let n=this.gen.linearPath(t,r);return this.draw(n),n}polygon(t,r){let n=this.gen.polygon(t,r);return this.draw(n),n}arc(t,r,n,i,a,s,l=!1,u){let h=this.gen.arc(t,r,n,i,a,s,l,u);return this.draw(h),h}curve(t,r){let n=this.gen.curve(t,r);return this.draw(n),n}path(t,r){let n=this.gen.path(t,r);return this.draw(n),n}},aw="http://www.w3.org/2000/svg",DL=class{static{o(this,"ot")}constructor(t,r){this.svg=t,this.gen=new km(r)}draw(t){let r=t.sets||[],n=t.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,a=i.createElementNS(aw,"g"),s=t.options.fixedDecimalPlaceDigits;for(let l of r){let u=null;switch(l.type){case"path":u=i.createElementNS(aw,"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(aw,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke","none"),u.setAttribute("stroke-width","0"),u.setAttribute("fill",n.fill||""),t.shape!=="curve"&&t.shape!=="polygon"||u.setAttribute("fill-rule","evenodd");break;case"fillSketch":u=this.fillSketch(i,l,n)}u&&a.appendChild(u)}return a}fillSketch(t,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2);let a=t.createElementNS(aw,"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(t,r){return this.gen.opsToPath(t,r)}line(t,r,n,i,a){let s=this.gen.line(t,r,n,i,a);return this.draw(s)}rectangle(t,r,n,i,a){let s=this.gen.rectangle(t,r,n,i,a);return this.draw(s)}ellipse(t,r,n,i,a){let s=this.gen.ellipse(t,r,n,i,a);return this.draw(s)}circle(t,r,n,i){let a=this.gen.circle(t,r,n,i);return this.draw(a)}linearPath(t,r){let n=this.gen.linearPath(t,r);return this.draw(n)}polygon(t,r){let n=this.gen.polygon(t,r);return this.draw(n)}arc(t,r,n,i,a,s,l=!1,u){let h=this.gen.arc(t,r,n,i,a,s,l,u);return this.draw(h)}curve(t,r){let n=this.gen.curve(t,r);return this.draw(n)}path(t,r){let n=this.gen.path(t,r);return this.draw(n)}},Kt={canvas:o((e,t)=>new LL(e,t),"canvas"),svg:o((e,t)=>new DL(e,t),"svg"),generator:o(e=>new km(e),"generator"),newSeed:o(()=>km.newSeed(),"newSeed")}});function IL(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function tQ(e){Od=e}function so(e,t){if(t){if(eQ.test(e))return e.replace(K8t,jK)}else if(rQ.test(e))return e.replace(Q8t,jK);return e}function t_t(e){return e.replace(J8t,(t,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(e,t){let r=typeof e=="string"?e:e.source;t=t||"";let n={replace:o((i,a)=>{let s=typeof a=="string"?a:a.source;return s=s.replace(e_t,"$1"),r=r.replace(i,s),n},"replace"),getRegex:o(()=>new RegExp(r,t),"getRegex")};return n}function KK(e){try{e=encodeURI(e).replace(/%25/g,"%")}catch{return null}return e}function QK(e,t){let r=e.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(),t)if(n.length>t)n.splice(t);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 tn(e,t){return Id.parse(e,t)}var Od,eQ,K8t,rQ,Q8t,Z8t,jK,J8t,e_t,Pv,Cm,i_t,a_t,s_t,Fv,o_t,nQ,iQ,OL,l_t,PL,c_t,u_t,pw,BL,h_t,aQ,f_t,FL,JK,d_t,p_t,sQ,m_t,oQ,g_t,zv,y_t,v_t,x_t,b_t,w_t,T_t,k_t,E_t,C_t,dw,S_t,lQ,cQ,A_t,zL,__t,NL,L_t,fw,Ov,Mu,Sm,Bv,Iu,Em,ML,Id,KEe,QEe,ZEe,JEe,t6e,e6e,r6e,uQ=R(()=>{"use strict";o(IL,"_getDefaults");Od=IL();o(tQ,"changeDefaults");eQ=/[&<>"']/,K8t=new RegExp(eQ.source,"g"),rQ=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Q8t=new RegExp(rQ.source,"g"),Z8t={"&":"&","<":"<",">":">",'"':""","'":"'"},jK=o(e=>Z8t[e],"getEscapeReplacement");o(so,"escape$1");J8t=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;o(t_t,"unescape");e_t=/(^|[^\[])\^/g;o(fn,"edit");o(KK,"cleanUrl");Pv={exec:o(()=>null,"exec")};o(QK,"splitCells");o(Iv,"rtrim");o(r_t,"findClosingBracket");o(ZK,"outputLink");o(n_t,"indentCodeCompensation");Cm=class{static{o(this,"_Tokenizer")}options;rules;lexer;constructor(t){this.options=t||Od}space(t){let r=this.rules.block.newline.exec(t);if(r&&r[0].length>0)return{type:"space",raw:r[0]}}code(t){let r=this.rules.block.code.exec(t);if(r){let n=r[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:r[0],codeBlockStyle:"indented",text:this.options.pedantic?n:Iv(n,` +`)}}}fences(t){let r=this.rules.block.fences.exec(t);if(r){let n=r[0],i=n_t(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(t){let r=this.rules.block.heading.exec(t);if(r){let n=r[2].trim();if(/#$/.test(n)){let i=Iv(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(t){let r=this.rules.block.hr.exec(t);if(r)return{type:"hr",raw:Iv(r[0],` +`)}}blockquote(t){let r=this.rules.block.blockquote.exec(t);if(r){let n=Iv(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(t){let r=this.rules.block.list.exec(t);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(;t;){let u=!1,h="",f="";if(!(r=s.exec(t))||this.rules.block.hr.test(t))break;h=r[0],t=t.substring(h.length);let d=r[2].split(` +`,1)[0].replace(/^\t+/,x=>" ".repeat(3*x.length)),p=t.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+` +`,t=t.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)}}(?:\`\`\`|~~~)`),S=new RegExp(`^ {0,${Math.min(3,g-1)}}#`);for(;t;){let T=t.split(` +`,1)[0];if(p=T,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),w.test(p)||S.test(p)||x.test(p)||b.test(t))break;if(p.search(/[^ ]/)>=g||!p.trim())f+=` +`+p.slice(g);else{if(m||d.search(/[^ ]/)>=4||w.test(d)||S.test(d)||b.test(d))break;f+=` +`+p}!m&&!p.trim()&&(m=!0),h+=T+` +`,t=t.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(t){let r=this.rules.block.table.exec(t);if(!r||!/[:|]/.test(r[2]))return;let n=QK(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(t){let r=this.rules.block.lheading.exec(t);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(t){let r=this.rules.block.paragraph.exec(t);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(t){let r=this.rules.block.text.exec(t);if(r)return{type:"text",raw:r[0],text:r[0],tokens:this.lexer.inline(r[0])}}escape(t){let r=this.rules.inline.escape.exec(t);if(r)return{type:"escape",raw:r[0],text:so(r[1])}}tag(t){let r=this.rules.inline.tag.exec(t);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(t){let r=this.rules.inline.link.exec(t);if(r){let n=r[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;let s=Iv(n.slice(0,-1),"\\");if((n.length-s.length)%2===0)return}else{let s=r_t(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)),ZK(r,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:a&&a.replace(this.rules.inline.anyPunctuation,"$1")},r[0],this.lexer)}}reflink(t,r){let n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){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 ZK(n,a,n[0],this.lexer)}}emStrong(t,r,n=""){let i=this.rules.inline.emStrongLDelim.exec(t);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*t.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=t.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(t){let r=this.rules.inline.code.exec(t);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=so(n,!0),{type:"codespan",raw:r[0],text:n}}}br(t){let r=this.rules.inline.br.exec(t);if(r)return{type:"br",raw:r[0]}}del(t){let r=this.rules.inline.del.exec(t);if(r)return{type:"del",raw:r[0],text:r[2],tokens:this.lexer.inlineTokens(r[2])}}autolink(t){let r=this.rules.inline.autolink.exec(t);if(r){let n,i;return r[2]==="@"?(n=so(r[1]),i="mailto:"+n):(n=so(r[1]),i=n),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}}}url(t){let r;if(r=this.rules.inline.url.exec(t)){let n,i;if(r[2]==="@")n=so(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=so(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(t){let r=this.rules.inline.text.exec(t);if(r){let n;return this.lexer.state.inRawBlock?n=r[0]:n=so(r[0]),{type:"text",raw:r[0],text:n}}}},i_t=/^(?: *(?:\n|$))+/,a_t=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,s_t=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Fv=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,o_t=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,nQ=/(?:[*+-]|\d{1,9}[.)])/,iQ=fn(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,nQ).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(),OL=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,l_t=/^[^\n]+/,PL=/(?!\s*\])(?:\\.|[^\[\]\\])+/,c_t=fn(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",PL).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),u_t=fn(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,nQ).getRegex(),pw="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",BL=/|$))/,h_t=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",BL).replace("tag",pw).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),aQ=fn(OL).replace("hr",Fv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",pw).getRegex(),f_t=fn(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",aQ).getRegex(),FL={blockquote:f_t,code:a_t,def:c_t,fences:s_t,heading:o_t,hr:Fv,html:h_t,lheading:iQ,list:u_t,newline:i_t,paragraph:aQ,table:Pv,text:l_t},JK=fn("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Fv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",pw).getRegex(),d_t={...FL,table:JK,paragraph:fn(OL).replace("hr",Fv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",JK).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",pw).getRegex()},p_t={...FL,html:fn(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",BL).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:Pv,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:fn(OL).replace("hr",Fv).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",iQ).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},sQ=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,m_t=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,oQ=/^( {2,}|\\)\n(?!\s*$)/,g_t=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,x_t=fn(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,zv).getRegex(),b_t=fn("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,zv).getRegex(),w_t=fn("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,zv).getRegex(),T_t=fn(/\\([punct])/,"gu").replace(/punct/g,zv).getRegex(),k_t=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(),E_t=fn(BL).replace("(?:-->|$)","-->").getRegex(),C_t=fn("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",E_t).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),dw=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,S_t=fn(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",dw).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),lQ=fn(/^!?\[(label)\]\[(ref)\]/).replace("label",dw).replace("ref",PL).getRegex(),cQ=fn(/^!?\[(ref)\](?:\[\])?/).replace("ref",PL).getRegex(),A_t=fn("reflink|nolink(?!\\()","g").replace("reflink",lQ).replace("nolink",cQ).getRegex(),zL={_backpedal:Pv,anyPunctuation:T_t,autolink:k_t,blockSkip:v_t,br:oQ,code:m_t,del:Pv,emStrongLDelim:x_t,emStrongRDelimAst:b_t,emStrongRDelimUnd:w_t,escape:sQ,link:S_t,nolink:cQ,punctuation:y_t,reflink:lQ,reflinkSearch:A_t,tag:C_t,text:g_t,url:Pv},__t={...zL,link:fn(/^!?\[(label)\]\((.*?)\)/).replace("label",dw).getRegex(),reflink:fn(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",dw).getRegex()},NL={...zL,escape:fn(sQ).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(;t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(l=>(i=l.call({lexer:this},t,r))?(t=t.substring(i.raw.length),r.push(i),!0):!1))){if(i=this.tokenizer.space(t)){t=t.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(t)){t=t.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(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.heading(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.hr(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.blockquote(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.list(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.html(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.def(t)){t=t.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(t)){t=t.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.lheading(t)){t=t.substring(i.raw.length),r.push(i);continue}if(s=t,this.options.extensions&&this.options.extensions.startBlock){let l=1/0,u=t.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=t.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!==t.length,t=t.substring(i.raw.length);continue}if(i=this.tokenizer.text(t)){t=t.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(t){let l="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return this.state.top=!0,r}inline(t,r=[]){return this.inlineQueue.push({src:t,tokens:r}),r}inlineTokens(t,r=[]){let n,i,a,s=t,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(;t;)if(u||(h=""),u=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(f=>(n=f.call({lexer:this},t,r))?(t=t.substring(n.raw.length),r.push(n),!0):!1))){if(n=this.tokenizer.escape(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.tag(t)){t=t.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(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.reflink(t,this.tokens.links)){t=t.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(t,s,h)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.codespan(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.br(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.del(t)){t=t.substring(n.raw.length),r.push(n);continue}if(n=this.tokenizer.autolink(t)){t=t.substring(n.raw.length),r.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(t))){t=t.substring(n.raw.length),r.push(n);continue}if(a=t,this.options.extensions&&this.options.extensions.startInline){let f=1/0,d=t.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=t.substring(0,f+1))}if(n=this.tokenizer.inlineText(a)){t=t.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(t){let f="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(f);break}else throw new Error(f)}}return r}},Sm=class{static{o(this,"_Renderer")}options;parser;constructor(t){this.options=t||Od}space(t){return""}code({text:t,lang:r,escaped:n}){let i=(r||"").match(/^\S*/)?.[0],a=t.replace(/\n$/,"")+` +`;return i?'
'+(n?a:so(a,!0))+`
+`:"
"+(n?a:so(a,!0))+`
+`}blockquote({tokens:t}){return`
+${this.parser.parse(t)}
+`}html({text:t}){return t}heading({tokens:t,depth:r}){return`${this.parser.parseInline(t)} +`}hr(t){return`
+`}list(t){let r=t.ordered,n=t.start,i="";for(let l=0;l +`+i+" +`}listitem(t){let r="";if(t.task){let n=this.checkbox({checked:!!t.checked});t.loose?t.tokens.length>0&&t.tokens[0].type==="paragraph"?(t.tokens[0].text=n+" "+t.tokens[0].text,t.tokens[0].tokens&&t.tokens[0].tokens.length>0&&t.tokens[0].tokens[0].type==="text"&&(t.tokens[0].tokens[0].text=n+" "+t.tokens[0].tokens[0].text)):t.tokens.unshift({type:"text",raw:n+" ",text:n+" "}):r+=n+" "}return r+=this.parser.parse(t.tokens,!!t.loose),`
  • ${r}
  • +`}checkbox({checked:t}){return"'}paragraph({tokens:t}){return`

    ${this.parser.parseInline(t)}

    +`}table(t){let r="",n="";for(let a=0;a${i}`),` + +`+r+` +`+i+`
    +`}tablerow({text:t}){return` +${t} +`}tablecell(t){let r=this.parser.parseInline(t.tokens),n=t.header?"th":"td";return(t.align?`<${n} align="${t.align}">`:`<${n}>`)+r+` +`}strong({tokens:t}){return`${this.parser.parseInline(t)}`}em({tokens:t}){return`${this.parser.parseInline(t)}`}codespan({text:t}){return`${t}`}br(t){return"
    "}del({tokens:t}){return`${this.parser.parseInline(t)}`}link({href:t,title:r,tokens:n}){let i=this.parser.parseInline(n),a=KK(t);if(a===null)return i;t=a;let s='
    ",s}image({href:t,title:r,text:n}){let i=KK(t);if(i===null)return n;t=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(...t){let r=this.defaults.extensions||{renderers:{},childTokens:{}};return t.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 Sm(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.#e(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 Cm(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 Em;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];Em.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}#e(t,r,n){switch(r){case"heading":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,n.parser.parseInline(i.tokens),i.depth,t_t(n.parser.parseInline(i.tokens,n.parser.textRenderer)))};case"code":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text,i.lang,!!i.escaped)};case"table":return function(i){if(!i.type||i.type!==r)return t.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 t.call(this,u,a,s)};case"html":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text,i.block)};case"paragraph":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,this.parser.parseInline(i.tokens))};case"escape":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text)};case"link":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.href,i.title,this.parser.parseInline(i.tokens))};case"image":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.href,i.title,i.text)};case"strong":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,this.parser.parseInline(i.tokens))};case"em":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,this.parser.parseInline(i.tokens))};case"codespan":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text)};case"del":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,this.parser.parseInline(i.tokens))};case"text":return function(i){return!i.type||i.type!==r?t.apply(this,arguments):t.call(this,i.text)}}return t}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,r){return Mu.lex(t,r??this.defaults)}parser(t,r){return Iu.parse(t,r??this.defaults)}#t(t,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=>t(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=t(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(t,r){return n=>{if(n.message+=` +Please report this to https://github.com/markedjs/marked.`,t){let i="

    An error occurred:

    "+so(n.message+"",!0)+"
    ";return r?Promise.resolve(i):i}if(r)return Promise.reject(n);throw n}}},Id=new ML;o(tn,"marked");tn.options=tn.setOptions=function(e){return Id.setOptions(e),tn.defaults=Id.defaults,tQ(tn.defaults),tn};tn.getDefaults=IL;tn.defaults=Od;tn.use=function(...e){return Id.use(...e),tn.defaults=Id.defaults,tQ(tn.defaults),tn};tn.walkTokens=function(e,t){return Id.walkTokens(e,t)};tn.parseInline=Id.parseInline;tn.Parser=Iu;tn.parser=Iu.parse;tn.Renderer=Sm;tn.TextRenderer=Bv;tn.Lexer=Mu;tn.lexer=Mu.lex;tn.Tokenizer=Cm;tn.Hooks=Em;tn.parse=tn;KEe=tn.options,QEe=tn.setOptions,ZEe=tn.use,JEe=tn.walkTokens,t6e=tn.parseInline,e6e=Iu.parse,r6e=Mu.lex});function D_t(e,{markdownAutoWrap:t}){let n=e.replace(//g,` +`).replace(/\n{2,}/g,` +`),i=s4(n);return t===!1?i.replace(/ /g," "):i}function hQ(e,t={}){let r=D_t(e,t),n=tn.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&&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 fQ(e,{markdownAutoWrap:t}={}){let r=tn.lexer(e);function n(i){return i.type==="text"?t===!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}`:`Unsupported markdown: ${i.type}`}return o(n,"output"),r.map(n).join("")}var dQ=R(()=>{"use strict";uQ();SS();o(D_t,"preprocessMarkdown");o(hQ,"markdownToLines");o(fQ,"markdownToHTML")});function R_t(e){return Intl.Segmenter?[...new Intl.Segmenter().segment(e)].map(t=>t.segment):[...e]}function N_t(e,t){let r=R_t(t.content);return pQ(e,[],r,t.type)}function pQ(e,t,r,n){if(r.length===0)return[{content:t.join(""),type:n},{content:"",type:n}];let[i,...a]=r,s=[...t,i];return e([{content:s.join(""),type:n}])?pQ(e,s,a,n):(t.length===0&&i&&(t.push(i),r.shift()),[{content:t.join(""),type:n},{content:r.join(""),type:n}])}function mQ(e,t){if(e.some(({content:r})=>r.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return $L(e,t)}function $L(e,t,r=[],n=[]){if(e.length===0)return n.length>0&&r.push(n),r.length>0?r:[];let i="";e[0].content===" "&&(i=" ",e.shift());let a=e.shift()??{content:" ",type:"normal"},s=[...n];if(i!==""&&s.push({content:i,type:"normal"}),s.push(a),t(s))return $L(e,t,r,s);if(n.length>0)r.push(n),e.unshift(a);else if(a.content){let[l,u]=N_t(t,a);r.push([l]),u.content&&e.unshift(u)}return $L(e,t,r)}var gQ=R(()=>{"use strict";o(R_t,"splitTextToChars");o(N_t,"splitWordToFitWidth");o(pQ,"splitWordToFitWidthRecursion");o(mQ,"splitLineToFitWidth");o($L,"splitLineToFitWidthRecursion")});function yQ(e,t){t&&e.attr("style",t)}async function M_t(e,t,r,n,i=!1){let a=e.append("foreignObject");a.attr("width",`${10*r}px`),a.attr("height",`${10*r}px`);let s=a.append("xhtml:div"),l=t.label;t.label&&Pi(t.label)&&(l=await vh(t.label.replace(Yt.lineBreakRegex,` +`),pt()));let u=t.isNode?"nodeLabel":"edgeLabel",h=s.append("span");h.html(l),yQ(h,t.labelStyle),h.attr("class",`${u} ${n}`),yQ(s,t.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 GL(e,t,r){return e.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",t*r-.1+"em").attr("dy",r+"em")}function I_t(e,t,r){let n=e.append("text"),i=GL(n,1,t);VL(i,r);let a=i.node().getComputedTextLength();return n.remove(),a}function vQ(e,t,r){let n=e.append("text"),i=GL(n,1,t);VL(i,[{content:r,type:"normal"}]);let a=i.node()?.getBoundingClientRect();return a&&n.remove(),a}function O_t(e,t,r,n=!1){let a=t.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=>I_t(a,1.1,p)<=e,"checkWidth"),d=f(h)?[h]:mQ(h,f);for(let p of d){let m=GL(l,u,1.1);VL(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 VL(e,t){e.text(""),t.forEach((r,n)=>{let i=e.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 UL(e){return e.replace(/fa[bklrs]?:fa-[\w-]+/g,t=>``)}var ia,Nl=R(()=>{"use strict";Ue();hr();ur();ce();dQ();_r();gQ();o(yQ,"applyStyle");o(M_t,"addHtmlSpan");o(GL,"createTspan");o(I_t,"computeWidthOfText");o(vQ,"computeDimensionOfText");o(O_t,"createFormattedText");o(VL,"updateTextContentAndStyles");o(UL,"replaceIconSubstring");ia=o(async(e,t="",{style:r="",isTitle:n=!1,classes:i="",useHtmlLabels:a=!0,isNode:s=!0,width:l=200,addSvgBackground:u=!1}={},h)=>{if(V.debug("XYZ createText",t,r,n,i,a,s,"addSvgBackground: ",u),a){let f=fQ(t,h),d=UL(no(f)),p=t.replace(/\\\\/g,"\\"),m={isNode:s,label:Pi(t)?p:d,labelStyle:r.replace("fill:","color:")};return await M_t(e,m,l,i,u)}else{let f=t.replace(//g,"
    "),d=hQ(f.replace("
    ","
    "),h),p=O_t(l,e,d,t?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:");Gt(p).attr("style",m)}else{let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");Gt(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:");Gt(p).select("text").attr("style",g)}return p}},"createText")});var P_t,Pd,HL=R(()=>{"use strict";P_t=o((e,t)=>{var r=e.x,n=e.y,i=t.x-r,a=t.y-n,s=e.width/2,l=e.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"),Pd=P_t});function B_t(e,t){t&&e.attr("style",t)}async function F_t(e){let t=Gt(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=t.append("xhtml:div"),n=e.label;e.label&&Pi(e.label)&&(n=await vh(e.label.replace(Yt.lineBreakRegex,` +`),pt()));let i=e.isNode?"nodeLabel":"edgeLabel";return r.html('"+n+""),B_t(r,e.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"),t.node()}var z_t,Ec,mw=R(()=>{"use strict";ur();ce();Ue();hr();_r();o(B_t,"applyStyle");o(F_t,"addHtmlLabel");z_t=o(async(e,t,r,n)=>{let i=e||"";if(typeof i=="object"&&(i=i[0]),Tr(pt().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),V.info("vertexText"+i);let a={isNode:n,label:no(i).replace(/fa[blrs]?:fa-[\w-]+/g,l=>``),labelStyle:t&&t.replace("fill:","color:")};return await F_t(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",t.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"),Ec=z_t});var Ml,Am=R(()=>{"use strict";Ml=o((e,t,r,n,i)=>["M",e+i,t,"H",e+r-i,"A",i,i,0,0,1,e+r,t+i,"V",t+n-i,"A",i,i,0,0,1,e+r-i,t+n,"H",e+i,"A",i,i,0,0,1,e,t+n-i,"V",t+i,"A",i,i,0,0,1,e+i,t,"Z"].join(" "),"createRoundedRectPathD")});var xQ,Cc,$_t,te,Jt,Ze=R(()=>{"use strict";Ue();xQ=o(e=>{let{handDrawnSeed:t}=pt();return{fill:e,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:e,seed:t}},"solidStateFill"),Cc=o(e=>{let t=$_t([...e.cssCompiledStyles||[],...e.cssStyles||[]]);return{stylesMap:t,stylesArray:[...t]}},"compileStyles"),$_t=o(e=>{let t=new Map;return e.forEach(r=>{let[n,i]=r.split(":");t.set(n.trim(),i?.trim())}),t},"styles2Map"),te=o(e=>{let{stylesArray:t}=Cc(e),r=[],n=[],i=[],a=[];return t.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:t,borderStyles:i,backgroundStyles:a}},"styles2String"),Jt=o((e,t)=>{let{themeVariables:r,handDrawnSeed:n}=pt(),{nodeBorder:i,mainBkg:a}=r,{stylesMap:s}=Cc(e);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]},t)},"userNodeOverrides")});var bQ,G_t,V_t,U_t,H_t,W_t,wQ,gw,TQ,WL=R(()=>{"use strict";Ue();hr();ce();Nd();ur();Qe();Nl();HL();mw();Am();Ze();bQ=o(async(e,t)=>{V.info("Creating subgraph rect for ",t.id,t);let r=pt(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=te(t),d=e.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.id).attr("data-look",t.look),p=Tr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await ia(m,t.label,{style:t.labelStyle,useHtmlLabels:p,isNode:!0}),y=g.getBBox();if(Tr(r.flowchart.htmlLabels)){let _=g.children[0],A=Gt(g);y=_.getBoundingClientRect(),A.attr("width",y.width),A.attr("height",y.height)}let v=t.width<=y.width+t.padding?y.width+t.padding:t.width;t.width<=y.width+t.padding?t.diff=(v-t.width)/2-t.padding:t.diff=-t.padding;let x=t.height,b=t.x-v/2,w=t.y-x/2;V.trace("Data ",t,JSON.stringify(t));let S;if(t.look==="handDrawn"){let _=Kt.svg(d),A=Jt(t,{roughness:.7,fill:a,stroke:s,fillWeight:3,seed:i}),L=_.path(Ml(b,w,v,x,0),A);S=d.insert(()=>(V.debug("Rough node insert CXC",L),L),":first-child"),S.select("path:nth-child(2)").attr("style",h.join(";")),S.select("path").attr("style",f.join(";").replace("fill","stroke"))}else S=d.insert("rect",":first-child"),S.attr("style",u).attr("rx",t.rx).attr("ry",t.ry).attr("x",b).attr("y",w).attr("width",v).attr("height",x);let{subGraphTitleTopMargin:T}=io(r);if(m.attr("transform",`translate(${t.x-y.width/2}, ${t.y-t.height/2+T})`),l){let _=m.select("span");_&&_.attr("style",l)}let E=S.node().getBBox();return t.offsetX=0,t.width=E.width,t.height=E.height,t.offsetY=y.height-t.padding/2,t.intersect=function(_){return Pd(t,_)},{cluster:d,labelBBox:y}},"rect"),G_t=o((e,t)=>{let r=e.insert("g").attr("class","note-cluster").attr("id",t.id),n=r.insert("rect",":first-child"),i=0*t.padding,a=i/2;n.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2-a).attr("width",t.width+i).attr("height",t.height+i).attr("fill","none");let s=n.node().getBBox();return t.width=s.width,t.height=s.height,t.intersect=function(l){return Pd(t,l)},{cluster:r,labelBBox:{width:0,height:0}}},"noteGroup"),V_t=o(async(e,t)=>{let r=pt(),{themeVariables:n,handDrawnSeed:i}=r,{altBackground:a,compositeBackground:s,compositeTitleBackground:l,nodeBorder:u}=n,h=e.insert("g").attr("class",t.cssClasses).attr("id",t.id).attr("data-id",t.id).attr("data-look",t.look),f=h.insert("g",":first-child"),d=h.insert("g").attr("class","cluster-label"),p=h.append("rect"),m=d.node().appendChild(await Ec(t.label,t.labelStyle,void 0,!0)),g=m.getBBox();if(Tr(r.flowchart.htmlLabels)){let L=m.children[0],M=Gt(m);g=L.getBoundingClientRect(),M.attr("width",g.width),M.attr("height",g.height)}let y=0*t.padding,v=y/2,x=(t.width<=g.width+t.padding?g.width+t.padding:t.width)+y;t.width<=g.width+t.padding?t.diff=(x-t.width)/2-t.padding:t.diff=-t.padding;let b=t.height+y,w=t.height+y-g.height-6,S=t.x-x/2,T=t.y-b/2;t.width=x;let E=t.y-t.height/2-v+g.height+2,_;if(t.look==="handDrawn"){let L=t.cssClasses.includes("statediagram-cluster-alt"),M=Kt.svg(h),N=t.rx||t.ry?M.path(Ml(S,T,x,b,10),{roughness:.7,fill:l,fillStyle:"solid",stroke:u,seed:i}):M.rectangle(S,T,x,b,{seed:i});_=h.insert(()=>N,":first-child");let k=M.rectangle(S,E,x,w,{fill:L?a:s,fillStyle:L?"hachure":"solid",stroke:u,seed:i});_=h.insert(()=>N,":first-child"),p=h.insert(()=>k)}else _=f.insert("rect",":first-child"),_.attr("class","outer").attr("x",S).attr("y",T).attr("width",x).attr("height",b).attr("data-look",t.look),p.attr("class","inner").attr("x",S).attr("y",E).attr("width",x).attr("height",w);d.attr("transform",`translate(${t.x-g.width/2}, ${T+1-(Tr(r.flowchart.htmlLabels)?0:3)})`);let A=_.node().getBBox();return t.height=A.height,t.offsetX=0,t.offsetY=g.height-t.padding/2,t.labelBBox=g,t.intersect=function(L){return Pd(t,L)},{cluster:h,labelBBox:g}},"roundedWithTitle"),U_t=o((e,t)=>{let r=pt(),{themeVariables:n,handDrawnSeed:i}=r,{nodeBorder:a}=n,s=e.insert("g").attr("class",t.cssClasses).attr("id",t.id).attr("data-look",t.look),l=s.insert("g",":first-child"),u=0*t.padding,h=t.width+u;t.diff=-t.padding;let f=t.height+u,d=t.x-h/2,p=t.y-f/2;t.width=h;let m;if(t.look==="handDrawn"){let v=Kt.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",t.look);let g=m.node().getBBox();return t.height=g.height,t.offsetX=0,t.offsetY=0,t.intersect=function(y){return Pd(t,y)},{cluster:s,labelBBox:{}}},"divider"),H_t=bQ,W_t={rect:bQ,squareRect:H_t,roundedWithTitle:V_t,noteGroup:G_t,divider:U_t},wQ=new Map,gw=o(async(e,t)=>{let r=t.shape||"rect",n=await W_t[r](e,t);return wQ.set(t.id,n),n},"insertCluster"),TQ=o(()=>{wQ=new Map},"clear")});function yw(e,t){if(e===void 0||t===void 0)return{angle:0,deltaX:0,deltaY:0};e=vw(e),t=vw(t);let[r,n]=[e.x,e.y],[i,a]=[t.x,t.y],s=i-r,l=a-n;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}var Yh,vw,xw,YL=R(()=>{"use strict";Yh={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:4};o(yw,"calculateDeltaAndAngle");vw=o(e=>Array.isArray(e)?{x:e[0],y:e[1]}:e,"pointTransformer"),xw=o(e=>({x:o(function(t,r,n){let i=0;if(r===0&&Object.hasOwn(Yh,e.arrowTypeStart)){let{angle:a,deltaX:s}=yw(n[0],n[1]);i=Yh[e.arrowTypeStart]*Math.cos(a)*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Yh,e.arrowTypeEnd)){let{angle:a,deltaX:s}=yw(n[n.length-1],n[n.length-2]);i=Yh[e.arrowTypeEnd]*Math.cos(a)*(s>=0?1:-1)}return vw(t).x+i},"x"),y:o(function(t,r,n){let i=0;if(r===0&&Object.hasOwn(Yh,e.arrowTypeStart)){let{angle:a,deltaY:s}=yw(n[0],n[1]);i=Yh[e.arrowTypeStart]*Math.abs(Math.sin(a))*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Yh,e.arrowTypeEnd)){let{angle:a,deltaY:s}=yw(n[n.length-1],n[n.length-2]);i=Yh[e.arrowTypeEnd]*Math.abs(Math.sin(a))*(s>=0?1:-1)}return vw(t).y+i},"y")}),"getLineFunctionsWithOffset")});var EQ,Y_t,kQ,CQ=R(()=>{"use strict";ce();EQ=o((e,t,r,n,i)=>{t.arrowTypeStart&&kQ(e,"start",t.arrowTypeStart,r,n,i),t.arrowTypeEnd&&kQ(e,"end",t.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),Y_t={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},kQ=o((e,t,r,n,i,a)=>{let s=Y_t[r];if(!s){V.warn(`Unknown arrow type: ${r}`);return}let l=t==="start"?"Start":"End";e.attr(`marker-${t}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function bw(e,t){pt().flowchart.htmlLabels&&e&&(e.style.width=t.length*9+"px",e.style.height="12px")}function j_t(e){let t=[],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)&&(t.push(a),r.push(n))}return{cornerPoints:t,cornerPointPositions:r}}var ww,ya,_Q,$v,Tw,kw,q_t,X_t,SQ,AQ,K_t,Ew,qL=R(()=>{"use strict";Ue();hr();ce();Nl();_r();YL();Nd();ur();Qe();mw();CQ();ww=new Map,ya=new Map,_Q=o(()=>{ww.clear(),ya.clear()},"clear"),$v=o(e=>e?e.reduce((r,n)=>r+";"+n,""):"","getLabelStyles"),Tw=o(async(e,t)=>{let r=Tr(pt().flowchart.htmlLabels),n=await ia(e,t.label,{style:$v(t.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1});V.info("abc82",t,t.labelType);let i=e.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=Gt(n);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}a.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),ww.set(t.id,i),t.width=s.width,t.height=s.height;let l;if(t.startLabelLeft){let u=await Ec(t.startLabelLeft,$v(t.labelStyle)),h=e.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(t.id)||ya.set(t.id,{}),ya.get(t.id).startLeft=h,bw(l,t.startLabelLeft)}if(t.startLabelRight){let u=await Ec(t.startLabelRight,$v(t.labelStyle)),h=e.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(t.id)||ya.set(t.id,{}),ya.get(t.id).startRight=h,bw(l,t.startLabelRight)}if(t.endLabelLeft){let u=await Ec(t.endLabelLeft,$v(t.labelStyle)),h=e.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(t.id)||ya.set(t.id,{}),ya.get(t.id).endLeft=h,bw(l,t.endLabelLeft)}if(t.endLabelRight){let u=await Ec(t.endLabelRight,$v(t.labelStyle)),h=e.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(t.id)||ya.set(t.id,{}),ya.get(t.id).endRight=h,bw(l,t.endLabelRight)}return n},"insertEdgeLabel");o(bw,"setTerminalWidth");kw=o((e,t)=>{V.debug("Moving label abc88 ",e.id,e.label,ww.get(e.id),t);let r=t.updatedPath?t.updatedPath:t.originalPath,n=pt(),{subGraphTitleTotalMargin:i}=io(n);if(e.label){let a=ww.get(e.id),s=e.x,l=e.y;if(r){let u=Oe.calcLabelPosition(r);V.debug("Moving label "+e.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),t.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(e.startLabelLeft){let a=ya.get(e.id).startLeft,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.startLabelRight){let a=ya.get(e.id).startRight,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.endLabelLeft){let a=ya.get(e.id).endLeft,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.endLabelRight){let a=ya.get(e.id).endRight,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),q_t=o((e,t)=>{let r=e.x,n=e.y,i=Math.abs(t.x-r),a=Math.abs(t.y-n),s=e.width/2,l=e.height/2;return i>=s||a>=l},"outsideNode"),X_t=o((e,t,r)=>{V.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(t)} + insidePoint : ${JSON.stringify(r)} + node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);let n=e.x,i=e.y,a=Math.abs(n-r.x),s=e.width/2,l=r.xMath.abs(n-t.x)*u){let d=r.y{V.warn("abc88 cutPathAtIntersect",e,t);let r=[],n=e[0],i=!1;return e.forEach(a=>{if(V.info("abc88 checking point",a,t),!q_t(t,a)&&!i){let s=X_t(t,n,a);V.debug("abc88 inside",a,n,s),V.debug("abc88 intersection",s,t);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)?V.warn("abc88 no intersect",s,r):r.push(s),i=!0}else V.warn("abc88 outside",a,n),n=a,i||r.push(a)}),V.debug("returning points",r),r},"cutPathAtIntersect");o(j_t,"extractCornerPoints");AQ=o(function(e,t,r){let n=t.x-e.x,i=t.y-e.y,a=Math.sqrt(n*n+i*i),s=r/a;return{x:t.x-s*n,y:t.y-s*i}},"findAdjacentPoint"),K_t=o(function(e){let{cornerPointPositions:t}=j_t(e),r=[];for(let n=0;n10&&Math.abs(a.y-i.y)>=10){V.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 V.debug("Corner point skipping fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));r.push(p,u)}else r.push(e[n]);return r},"fixCorners"),Ew=o(function(e,t,r,n,i,a,s){let{handDrawnSeed:l}=pt(),u=t.points,h=!1,f=i;var d=a;d.intersect&&f.intersect&&(u=u.slice(1,t.points.length-1),u.unshift(f.intersect(u[0])),V.debug("Last point APA12",t.start,"-->",t.end,u[u.length-1],d,d.intersect(u[u.length-1])),u.push(d.intersect(u[u.length-1]))),t.toCluster&&(V.info("to cluster abc88",r.get(t.toCluster)),u=SQ(t.points,r.get(t.toCluster).node),h=!0),t.fromCluster&&(V.debug("from cluster abc88",r.get(t.fromCluster),JSON.stringify(u,null,2)),u=SQ(u.reverse(),r.get(t.fromCluster).node).reverse(),h=!0);let p=u.filter(A=>!Number.isNaN(A.y));p=K_t(p);let m=p[p.length-1];if(p.length>1){m=p[p.length-1];let A=p[p.length-2],L=(m.x-A.x)/2,M=(m.y-A.y)/2,N={x:A.x+L,y:A.y+M};p.splice(-1,0,N)}let g=Ts;t.curve&&(g=t.curve);let{x:y,y:v}=xw(t),x=ma().x(y).y(v).curve(g),b;switch(t.thickness){case"normal":b="edge-thickness-normal";break;case"thick":b="edge-thickness-thick";break;case"invisible":b="edge-thickness-invisible";break;default:b="edge-thickness-normal"}switch(t.pattern){case"solid":b+=" edge-pattern-solid";break;case"dotted":b+=" edge-pattern-dotted";break;case"dashed":b+=" edge-pattern-dashed";break;default:b+=" edge-pattern-solid"}let w,S=x(p),T=Array.isArray(t.style)?t.style:[t.style];if(t.look==="handDrawn"){let A=Kt.svg(e);Object.assign([],p);let L=A.path(S,{roughness:.3,seed:l});b+=" transition",w=Gt(L).select("path").attr("id",t.id).attr("class"," "+b+(t.classes?" "+t.classes:"")).attr("style",T?T.reduce((N,k)=>N+";"+k,""):"");let M=w.attr("d");w.attr("d",M),e.node().appendChild(w.node())}else w=e.append("path").attr("d",S).attr("id",t.id).attr("class"," "+b+(t.classes?" "+t.classes:"")).attr("style",T?T.reduce((A,L)=>A+";"+L,""):"");let E="";(pt().flowchart.arrowMarkerAbsolute||pt().state.arrowMarkerAbsolute)&&(E=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,E=E.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),V.info("arrowTypeStart",t.arrowTypeStart),V.info("arrowTypeEnd",t.arrowTypeEnd),EQ(w,t,E,s,n);let _={};return h&&(_.updatedPath=u),_.originalPath=t.points,_},"insertEdge")});var Q_t,Z_t,J_t,t9t,e9t,r9t,n9t,i9t,a9t,s9t,o9t,Cw,XL=R(()=>{"use strict";ce();Q_t=o((e,t,r,n)=>{t.forEach(i=>{o9t[i](e,r,n)})},"insertMarkers"),Z_t=o((e,t,r)=>{V.trace("Making markers for ",r),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionStart").attr("class","marker extension "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionEnd").attr("class","marker extension "+t).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"),J_t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionStart").attr("class","marker composition "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionEnd").attr("class","marker composition "+t).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"),t9t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).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"),e9t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).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"),r9t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).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),e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).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"),n9t=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-pointEnd").attr("class","marker "+t).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"),e.append("marker").attr("id",r+"_"+t+"-pointStart").attr("class","marker "+t).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"),i9t=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-circleEnd").attr("class","marker "+t).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"),e.append("marker").attr("id",r+"_"+t+"-circleStart").attr("class","marker "+t).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"),a9t=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-crossEnd").attr("class","marker cross "+t).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"),e.append("marker").attr("id",r+"_"+t+"-crossStart").attr("class","marker cross "+t).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"),s9t=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-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"),o9t={extension:Z_t,composition:J_t,aggregation:t9t,dependency:e9t,lollipop:r9t,point:n9t,circle:i9t,cross:a9t,barb:s9t},Cw=Q_t});function He(e){let t=e.map((r,n)=>`${n===0?"M":"L"}${r.x},${r.y}`);return t.push("Z"),t.join(" ")}function Vo(e,t,r,n,i,a){let s=[],u=r-e,h=n-t,f=u/a,d=2*Math.PI/f,p=t+h/2;for(let m=0;m<=50;m++){let g=m/50,y=e+g*u,v=p+i*Math.sin(d*(y-e));s.push({x:y,y:v})}return s}function Sw(e,t,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";Nl();Ue();ur();hr();_r();he=o(async(e,t,r)=>{let n,i=t.useHtmlLabels||Tr(pt().flowchart.htmlLabels);r?n=r:n="node default";let a=e.insert("g").attr("class",n).attr("id",t.domId||t.id),s=a.insert("g").attr("class","label").attr("style",t.labelStyle),l;t.label===void 0?l="":l=typeof t.label=="string"?t.label:t.label[0];let u;u=await ia(s,Zr(no(l),pt()),{useHtmlLabels:i,width:t.width||pt().flowchart.wrappingWidth,cssClasses:"markdown-node-label",style:t.labelStyle,addSvgBackground:!!t.icon||!!t.img});let h=u.getBBox(),f=t.padding/2;if(Tr(pt().flowchart.htmlLabels)){let d=u.children[0],p=Gt(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=pt().fontSize?pt().fontSize:window.getComputedStyle(document.body).fontSize,S=parseInt(b,10)*5+"px";y.style.minWidth=S,y.style.maxWidth=S}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+")"),t.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"),Qt=o((e,t)=>{let r=t.node().getBBox();e.width=r.width,e.height=r.height},"updateNodeBounds"),de=o((e,t)=>(e.look==="handDrawn"?"rough-node":"node")+" "+e.cssClasses+" "+(t||""),"getNodeClasses");o(He,"createPathFromPoints");o(Vo,"generateFullSineWavePoints");o(Sw,"generateCirclePoints")});function l9t(e,t){return e.intersect(t)}var LQ,DQ=R(()=>{"use strict";o(l9t,"intersectNode");LQ=l9t});function c9t(e,t,r,n){var i=e.x,a=e.y,s=i-n.x,l=a-n.y,u=Math.sqrt(t*t*l*l+r*r*s*s),h=Math.abs(t*r*s/u);n.x{"use strict";o(c9t,"intersectEllipse");Aw=c9t});function u9t(e,t,r){return Aw(e,t,t,r)}var RQ,NQ=R(()=>{"use strict";jL();o(u9t,"intersectCircle");RQ=u9t});function h9t(e,t,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=t.y-e.y,s=e.x-t.x,u=t.x*e.y-e.x*t.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&MQ(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*e.x+l*e.y+h,d=a*t.x+l*t.y+h,!(f!==0&&d!==0&&MQ(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 MQ(e,t){return e*t>0}var IQ,OQ=R(()=>{"use strict";o(h9t,"intersectLine");o(MQ,"sameSign");IQ=h9t});function f9t(e,t,r){let n=e.x,i=e.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(f){s=Math.min(s,f.x),l=Math.min(l,f.y)}):(s=Math.min(s,t.x),l=Math.min(l,t.y));let u=n-e.width/2-s,h=i-e.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";OQ();o(f9t,"intersectPolygon");PQ=f9t});var qt,Je=R(()=>{"use strict";DQ();NQ();jL();BQ();HL();qt={node:LQ,circle:RQ,ellipse:Aw,polygon:PQ,rect:Pd}});var Bd,Gv=R(()=>{"use strict";Be();Je();Am();Ze();Qe();Bd=o(async(e,t,r)=>{let{labelStyles:n,nodeStyles:i}=te(t);t.labelStyle=n;let{shapeSvg:a,bbox:s}=await he(e,t,de(t)),l=Math.max(s.width+r.labelPaddingX*2,t?.width||0),u=Math.max(s.height+r.labelPaddingY*2,t?.height||0),h=-l/2,f=-u/2,d,{rx:p,ry:m}=t,{cssStyles:g}=t;if(r?.rx&&r.ry&&(p=r.rx,m=r.ry),t.look==="handDrawn"){let y=Kt.svg(a),v=Jt(t,{}),x=p||m?y.path(Ml(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",g)}else d=a.insert("rect",":first-child"),d.attr("class","basic label-container").attr("style",i).attr("rx",p).attr("ry",m).attr("x",h).attr("y",f).attr("width",l).attr("height",u);return Qt(t,d),t.intersect=function(y){return qt.rect(t,y)},a},"drawRect")});var FQ,zQ=R(()=>{"use strict";Gv();FQ=o(async(e,t)=>Bd(e,t,{rx:5,ry:5,classes:"flowchart-node"}),"state")});var _w,$Q=R(()=>{"use strict";Gv();_w=o(async(e,t)=>{let r={rx:5,ry:5,classes:"",labelPaddingX:(t?.padding||0)*1,labelPaddingY:(t?.padding||0)*1};return Bd(e,t,r)},"roundedRect")});var _m,GQ=R(()=>{"use strict";Gv();_m=o(async(e,t)=>{let r={rx:0,ry:0,classes:"",labelPaddingX:(t?.padding||0)*2,labelPaddingY:(t?.padding||0)*1};return Bd(e,t,r)},"squareRect")});var Vv,VQ=R(()=>{"use strict";Qe();Je();Ze();Be();Vv=o((e,t,{config:{themeVariables:r}})=>{let{lineColor:n}=r,i=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),a;if(t.look==="handDrawn"){let l=Kt.svg(i).circle(0,0,14,xQ(n));a=i.insert(()=>l)}else a=i.insert("circle",":first-child");return a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Qt(t,a),t.intersect=function(s){return qt.circle(t,7,s)},i},"stateStart")});var Uv,UQ=R(()=>{"use strict";Qe();Je();Ze();Be();Uv=o((e,t,{config:{themeVariables:r}})=>{let{labelStyles:n,nodeStyles:i}=te(t);t.labelStyle=n;let{cssStyles:a}=t,{lineColor:s,stateBorder:l,nodeBorder:u}=r,h=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),f=Kt.svg(h),d=Jt(t,{});t.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),Qt(t,y),t.intersect=function(v){return qt.circle(t,7,v)},h},"stateEnd")});var Lw,HQ=R(()=>{"use strict";Qe();Je();Ze();Be();Lw=o((e,t,{dir:r,config:{state:n,themeVariables:i}})=>{let{nodeStyles:a}=te(t);t.label="";let s=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),{cssStyles:l}=t,u=Math.max(70,t?.width??0),h=Math.max(10,t?.height??0);r==="LR"&&(u=Math.max(10,t?.width??0),h=Math.max(70,t?.height??0));let f=-1*u/2,d=-1*h/2,p=Kt.svg(s),m=Jt(t,{stroke:i.lineColor,fill:i.lineColor});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=p.rectangle(f,d,u,h,m),y=s.insert(()=>g,":first-child");l&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",l),a&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",a),Qt(t,y);let v=n?.padding??0;return t.width&&t.height&&(t.width+=v/2||0,t.height+=v/2||0),t.intersect=function(x){return qt.rect(t,x)},s},"forkJoin")});var WQ,YQ=R(()=>{"use strict";Je();Qe();Ze();Be();WQ=o((e,t)=>{let{nodeStyles:r}=te(t);t.label="";let n=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),{cssStyles:i}=t,a=Math.max(28,t.width??0),s=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}],l=Kt.svg(n),u=Jt(t,{});t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=He(s),f=l.path(h,u),d=n.insert(()=>f,":first-child");return i&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",i),r&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",r),t.width=28,t.height=28,t.intersect=function(p){return qt.polygon(t,s,p)},n},"choice")});var qQ,XQ=R(()=>{"use strict";Qe();Je();Ze();Be();qQ=o(async(e,t,{config:{themeVariables:r}})=>{let{labelStyles:n,nodeStyles:i}=te(t);t.labelStyle=n;let{shapeSvg:a,bbox:s}=await he(e,t,de(t)),l=Math.max(s.width+(t.padding??0)*2,t?.width??0),u=Math.max(s.height+(t.padding??0)*2,t?.height??0),h=-l/2,f=-u/2,{cssStyles:d}=t;t.useHtmlLabels||(t.centerLabel=!0);let m=Kt.svg(a),g=Jt(t,{fill:r.noteBkgColor,stroke:r.noteBorderColor});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=m.rectangle(h,f,l,u,g),v=a.insert(()=>y,":first-child");return v.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",d),i&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",i),Qt(t,v),t.intersect=function(x){return qt.rect(t,x)},a},"note")});var Dw,jQ=R(()=>{"use strict";Be();Je();Ze();Qe();Am();Dw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.height+t.padding,l=a.width+s/4+t.padding,u,{cssStyles:h}=t;if(t.look==="handDrawn"){let f=Kt.svg(i),d=Jt(t,{}),p=Ml(-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",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 Qt(t,u),t.intersect=function(f){return qt.rect(t,f)},i},"stadium")});var KQ,QQ=R(()=>{"use strict";ur();hr();Be();mw();Je();Ze();Qe();Ue();Am();ce();KQ=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let i;t.cssClasses?i="node "+t.cssClasses:i="node default";let a=e.insert("g").attr("class",i).attr("id",t.domId||t.id),s=a.insert("g"),l=a.insert("g").attr("class","label").attr("style",n),u=t.description,h=t.label,f=l.node().appendChild(await Ec(h,t.labelStyle,!0,!0)),d={width:0,height:0};if(Tr(pt()?.flowchart?.htmlLabels)){let A=f.children[0],L=Gt(f);d=A.getBoundingClientRect(),L.attr("width",d.width),L.attr("height",d.height)}V.info("Text 2",u);let p=u||[],m=f.getBBox(),g=l.node().appendChild(await Ec(p.join?p.join("
    "):p,t.labelStyle,!0,!0)),y=g.children[0],v=Gt(g);d=y.getBoundingClientRect(),v.attr("width",d.width),v.attr("height",d.height);let x=(t.padding||0)/2;Gt(g).attr("transform","translate( "+(d.width>m.width?0:(m.width-d.width)/2)+", "+(m.height+x+5)+")"),Gt(f).attr("transform","translate( "+(d.width(V.debug("Rough node insert CXC",M),N),":first-child"),E=a.insert(()=>(V.debug("Rough node insert CXC",M),M),":first-child")}else E=s.insert("rect",":first-child"),_=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+(t.padding||0)).attr("height",d.height+(t.padding||0)),_.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 Qt(t,E),t.intersect=function(A){return qt.rect(t,A)},a},"rectWithTitle")});function Ba(e,t,r,n){return e.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+r/2+")")}var Ou=R(()=>{"use strict";o(Ba,"insertPolygonShape")});var Lm,ZQ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Lm=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=(t?.padding||0)/2,l=a.width+t.padding,u=a.height+t.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(t.look==="handDrawn"){let p=Kt.svg(i),m=Jt(t,{}),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}=t;x.attr("class","basic label-container").attr("style",b),Qt(t,x)}else{let p=Ba(i,l,u,d);n&&p.attr("style",n),Qt(t,p)}return t.intersect=function(p){return qt.polygon(t,d,p)},i},"subroutine")});var d9t,p9t,m9t,Hv,JQ=R(()=>{"use strict";Be();Je();Ze();Qe();d9t=o((e,t,r,n,i,a)=>[`M${e},${t+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"),p9t=o((e,t,r,n,i,a)=>[`M${e},${t+a}`,`M${e+r},${t+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createOuterCylinderPathD"),m9t=o((e,t,r,n,i,a)=>[`M${e-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD"),Hv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+t.padding,t.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+t.padding,t.height??0),d,{cssStyles:p}=t;if(t.look==="handDrawn"){let m=Kt.svg(i),g=p9t(0,0,l,f,u,h),y=m9t(0,h,l,f,u,h),v=m.path(g,Jt(t,{})),x=m.path(y,Jt(t,{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=d9t(0,0,l,f,u,h);d=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container").attr("style",p).attr("style",n)}return d.attr("label-offset-y",h),d.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Qt(t,d),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+(t.padding??0)/1.5-(a.y-(a.top??0))})`),t.intersect=function(m){let g=qt.rect(t,m),y=g.x-(t.x??0);if(u!=0&&(Math.abs(y)<(t.width??0)/2||Math.abs(y)==(t.width??0)/2&&Math.abs(g.y-(t.y??0))>(t.height??0)/2-h)){let v=h*h*(1-y*y/(u*u));v>0&&(v=Math.sqrt(v)),v=h-v,m.y-(t.y??0)>0&&(v=-v),g.y+=v}return g},i},"cylinder")});var KL,tZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();KL=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await he(e,t,de(t)),l=a.width/2+s,u,{cssStyles:h}=t;if(t.look==="handDrawn"){let f=Kt.svg(i),d=Jt(t,{}),p=f.circle(0,0,l*2,d);u=i.insert(()=>p,":first-child"),u.attr("class","basic label-container").attr("style",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 Qt(t,u),t.intersect=function(f){return V.info("Circle intersect",t,l,f),qt.circle(t,l,f)},i},"circle")});var Rw,eZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();Rw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await he(e,t,de(t)),u=a.width/2+s+5,h=a.width/2+s,f,{cssStyles:d}=t;if(t.look==="handDrawn"){let p=Kt.svg(i),m=Jt(t,{roughness:.2,strokeWidth:2.5}),g=Jt(t,{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",t.cssClasses).attr("style",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 Qt(t,f),t.intersect=function(p){return V.info("DoubleCircle intersect",t,u,p),qt.circle(t,u,p)},i},"doublecircle")});var QL,rZ=R(()=>{"use strict";Be();Je();Ze();Qe();QL=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0),t?.width??0),u=Math.max(a.height+(t.padding??0),t?.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}=t,g=Kt.svg(i),y=Jt(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=He(p),x=g.path(v,y),b=i.insert(()=>x,":first-child");return b.attr("class","basic label-container"),m&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",m),n&&t.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))})`),Qt(t,b),t.intersect=function(w){return qt.polygon(t,p,w)},i},"rect_left_inv_arrow")});var g9t,Wv,nZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();Ou();g9t=o((e,t,r)=>[`M${e+r/2},${t}`,`L${e+r},${t-r/2}`,`L${e+r/2},${t-r}`,`L${e},${t-r/2}`,"Z"].join(" "),"createDecisionBoxPathD"),Wv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.width+t.padding,l=a.height+t.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}=t;if(t.look==="handDrawn"){let p=Kt.svg(i),m=Jt(t,{}),g=g9t(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=Ba(i,u,u,h);return n&&f.attr("style",n),Qt(t,f),t.intersect=function(p){return V.debug(`APA12 Intersect called SPLIT +point:`,p,` +node: +`,t,` +res:`,qt.polygon(t,h,p)),qt.polygon(t,h,p)},i},"question")});var y9t,Nw,iZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();y9t=o((e,t,r,n,i)=>[`M${e+i},${t}`,`L${e+r-i},${t}`,`L${e+r},${t-n/2}`,`L${e+r-i},${t-n}`,`L${e+i},${t-n}`,`L${e},${t-n/2}`,"Z"].join(" "),"createHexagonPathD"),Nw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=4,l=a.height+t.padding,u=l/s,h=a.width+2*u+t.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}=t;if(t.look==="handDrawn"){let m=Kt.svg(i),g=Jt(t,{}),y=y9t(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=Ba(i,h,l,f);return n&&d.attr("style",n),t.width=h,t.height=l,Qt(t,d),t.intersect=function(m){return qt.polygon(t,f,m)},i},"hexagon")});async function aZ(e,t){let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+t.padding,t?.width||0),l=Math.max(a.height+t.padding,t?.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),Qt(t,f),t.intersect=function(d){return qt.rect(t,d)},i}var sZ=R(()=>{"use strict";Be();Je();Ze();o(aZ,"text")});async function Mw(e,t){let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.height+t.padding,l=12,u=a.width+t.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}=t;if(t.look==="handDrawn"){let v=Kt.svg(i),x=Jt(t,{}),b=He(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=Ba(i,u,s,m);return n&&g.attr("style",n),Qt(t,g),t.intersect=function(v){return qt.polygon(t,m,v)},i}var oZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Be();o(Mw,"card")});var Dm,lZ=R(()=>{"use strict";Be();Je();Ze();Qe();Dm=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=t?.padding??0,u=Math.max(a.width+(t.padding??0)*2,t?.width??0),h=Math.max(a.height+(t.padding??0)*2,t?.height??0),f=-a.width/2-l,d=-a.height/2-l,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{});t.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",p),n&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",n),p&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${-u/2+4+(t.padding??0)-(a.x-(a.left??0))},${-h/2+(t.padding??0)-(a.y-(a.top??0))})`),Qt(t,x),t.intersect=function(b){return qt.rect(t,b)},i},"shadedProcess")});var cZ,uZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();cZ=o((e,t)=>{let{labelStyles:r}=te(t);t.labelStyle=r;let n=de(t),i=n;n||(i="anchor");let a=e.insert("g").attr("class",i).attr("id",t.domId||t.id),s=1,{cssStyles:l}=t,u=Kt.svg(a),h=Jt(t,{fill:"black",stroke:"none",fillStyle:"solid"});t.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",l),Qt(t,d),t.intersect=function(p){return V.info("Circle intersect",t,s,p),qt.circle(t,s,p)},a},"anchor")});var Yv,hZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Yv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+(t.padding??0),t?.width??0),l=Math.max(a.height+(t.padding??0),t?.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}=t;if(t.look==="handDrawn"){let d=Kt.svg(i),p=Jt(t,{}),m=He(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=Ba(i,s,l,u);return n&&h.attr("style",n),t.width=s,t.height=l,Qt(t,h),t.intersect=function(d){return qt.polygon(t,u,d)},i},"lean_right")});var qv,fZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();qv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+(t.padding??0),t?.width??0),l=Math.max(a.height+(t.padding??0),t?.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}=t;if(t.look==="handDrawn"){let d=Kt.svg(i),p=Jt(t,{}),m=He(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=Ba(i,s,l,u);return n&&h.attr("style",n),t.width=s,t.height=l,Qt(t,h),t.intersect=function(d){return qt.polygon(t,u,d)},i},"lean_left")});var Xv,dZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Xv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.width+t.padding,l=a.height+t.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}=t;if(t.look==="handDrawn"){let d=Kt.svg(i),p=Jt(t,{}),m=He(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=Ba(i,s,l,u);return n&&h.attr("style",n),t.width=s,t.height=l,Qt(t,h),t.intersect=function(d){return qt.polygon(t,u,d)},i},"trapezoid")});var Rm,pZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ou();Rm=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+(t.padding??0)*2,t?.width??0),l=Math.max(a.height+(t.padding??0)*2,t?.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}=t;if(t.look==="handDrawn"){let d=Kt.svg(i),p=Jt(t,{}),m=He(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=Ba(i,s,l,u);return n&&h.attr("style",n),t.width=s,t.height=l,Qt(t,h),t.intersect=function(d){return qt.polygon(t,u,d)},i},"inv_trapezoid")});var mZ,gZ=R(()=>{"use strict";Gv();Be();Je();mZ=o(async(e,t)=>{let{shapeSvg:r,bbox:n,label:i}=await he(e,t,"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))})`),Qt(t,a),t.intersect=function(u){return qt.rect(t,u)},r},"labelRect")});var Iw,yZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();Be();hr();Ue();Iw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Tr(pt().flowchart?.htmlLabels),u=a.width+(t.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}=t,m=Kt.svg(i),g=Jt(t,{});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=He(d),v=m.path(y,g),x=i.insert(()=>v,":first-child").attr("transform",`translate(${-h/2}, ${h/2})`);return p&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",p),n&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),t.width=u,t.height=h,Qt(t,x),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${h/2-(a.height+(t.padding??0)/(l?2:1)-(a.y-(a.top??0)))})`),t.intersect=function(b){return V.info("Triangle intersect",t,d,b),qt.polygon(t,d,b)},i},"triangle")});var ZL,vZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();ZL=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let i=80,a=50,{shapeSvg:s,bbox:l}=await he(e,t,de(t)),u=Math.max(i,l.width+(t.padding??0)*2,t?.width??0),h=Math.max(a,l.height+(t.padding??0)*2,t?.height??0),f=h/2,{cssStyles:d}=t,p=Kt.svg(s),m=Jt(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-u/2,y:-h/2},{x:u/2-f,y:-h/2},...Sw(-u/2+f,0,f,50,90,270),{x:u/2-f,y:h/2},{x:-u/2,y:h/2}],y=He(g),v=p.path(y,m),x=s.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),Qt(t,x),t.intersect=function(b){return V.info("Pill intersect",t,{radius:f,point:b}),qt.polygon(t,g,b)},s},"halfRoundedRectangle")});var Ow,xZ=R(()=>{"use strict";Be();Je();Ze();Qe();Ow=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=80,l=20,u=Math.max(s,(a.width+(t.padding??0)*2)*1.25,t?.width??0),h=Math.max(l,a.height+(t.padding??0)*2,t?.height??0),f=h/2,{cssStyles:d}=t,p=Kt.svg(i),m=Jt(t,{});t.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},...Sw(-v,-y/2,f,50,270,90)],w=He(b),S=p.path(w,m),T=i.insert(()=>S,":first-child");return T.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&T.selectChildren("path").attr("style",d),n&&t.look!=="handDrawn"&&T.selectChildren("path").attr("style",n),T.attr("transform",`translate(${-u/2}, ${-h/2})`),Qt(t,T),t.intersect=function(E){return qt.polygon(t,b,E)},i},"curvedTrapezoid")});var Pw,bZ=R(()=>{"use strict";Be();Je();Ze();Qe();Pw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=-l/2,f=-u/2,{cssStyles:d}=t,p=Kt.svg(i),m=Jt(t,{});t.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=He(g),v=p.path(y,m),x=i.insert(()=>v,":first-child");return x.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),x.attr("transform",`translate(0, ${u/4})`),s.attr("transform",`translate(${-l/2+(t.padding??0)-(a.x-(a.left??0))}, ${-u/4+(t.padding??0)-(a.y-(a.top??0))})`),Qt(t,x),t.intersect=function(b){return qt.polygon(t,g,b)},i},"slopedRect")});function wZ(e,t,r,n,i,a,s){let u=(e+r)/2,h=(t+n)/2,f=Math.atan2(n-t,r-e),d=(r-e)/2,p=(n-t)/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((t-b)/a,(e-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 _=0;_<20;_++){let A=_/19,L=w+A*T,M=x+i*Math.cos(L),N=b+a*Math.sin(L);E.push({x:M,y:N})}return E}var Bw,TZ=R(()=>{"use strict";Be();Je();Ze();Qe();o(wZ,"generateArcPoints");Bw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=a.width+t.padding+20,l=a.height+t.padding,u=l/2,h=u/(2.5+l/50),{cssStyles:f}=t,d=[{x:s/2,y:-l/2},{x:-s/2,y:-l/2},...wZ(-s/2,-l/2,-s/2,l/2,h,u,!1),{x:s/2,y:l/2},...wZ(s/2,l/2,s/2,-l/2,h,u,!0)],p=Kt.svg(i),m=Jt(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=He(d),y=p.path(g,m),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",f),n&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(${h/2}, 0)`),Qt(t,v),t.intersect=function(x){return qt.polygon(t,d,x)},i},"bowTieRect")});var jv,kZ=R(()=>{"use strict";Be();Je();Ze();Qe();jv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+t.padding,u=a.height+t.padding,h=u*.2,f=-l/2,d=-u/2-h/2,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{});t.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&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",p),n&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",n),s.attr("transform",`translate(${f+(t.padding??0)/2-(a.x-(a.left??0))}, ${d+h+(t.padding??0)/2-(a.y-(a.top??0))})`),Qt(t,x),t.intersect=function(b){return qt.rect(t,b)},i},"dividedRectangle")});function v9t(e){let t=Math.cos(Math.PI/4),r=Math.sin(Math.PI/4),n=e*2,i={x:n/2*t,y:n/2*r},a={x:-(n/2)*t,y:n/2*r},s={x:-(n/2)*t,y:-(n/2)*r},l={x:n/2*t,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}`}var Fw,EZ=R(()=>{"use strict";ce();Be();Ze();Qe();Je();o(v9t,"createLine");Fw=o((e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r,t.label="";let i=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),a=Math.max(30,t?.width??0),{cssStyles:s}=t,l=Kt.svg(i),u=Jt(t,{});t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=l.circle(0,0,a*2,u),f=v9t(a),d=l.path(f,u),p=i.insert(()=>h,":first-child");return p.insert(()=>d),s&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",s),n&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",n),Qt(t,p),t.intersect=function(m){return V.info("crossedCircle intersect",t,{radius:a,point:m}),qt.circle(t,a,m)},i},"crossedCircle")});var JL,CZ=R(()=>{"use strict";Be();Je();Ze();Qe();JL=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=100,l=50,u=Math.max(a.width+(t.padding??0)*2,t?.width??0),h=Math.max(a.height+(t.padding??0)*2,t?.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}=t,v=Kt.svg(i),x=Jt(t,{});t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let b=[{x:-d/2,y:g/2},...Vo(-d/2,g/2,d/2,g/2,m,1),{x:d/2,y:-g/2},...Vo(d/2,-g/2,-d/2,-g/2,m,-1)],w=He(b),S=v.path(w,x),T=i.insert(()=>S,":first-child");return T.attr("class","basic label-container"),y&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",y),n&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",n),Qt(t,T),t.intersect=function(E){return qt.polygon(t,b,E)},i},"waveRectangle")});var x9t,b9t,w9t,zw,SZ=R(()=>{"use strict";Be();Ze();Qe();Je();x9t=o((e,t,r,n,i,a)=>`M${e},${t} + 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"),b9t=o((e,t,r,n,i,a)=>[`M${e},${t}`,`M${e+r},${t}`,`a${i},${a} 0,0,0 0,${-n}`,`l${-r},0`,`a${i},${a} 0,0,0 0,${n}`,`l${r},0`].join(" "),"createOuterCylinderPathD"),w9t=o((e,t,r,n,i,a)=>[`M${e+r/2},${-n/2}`,`a${i},${a} 0,0,0 0,${n}`].join(" "),"createInnerCylinderPathD"),zw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s,halfPadding:l}=await he(e,t,de(t)),u=t.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}=t,g;if(t.look==="handDrawn"){let y=Kt.svg(i),v=b9t(0,0,p,h,d,f),x=w9t(0,0,p,h,d,f),b=y.path(v,Jt(t,{})),w=y.path(x,Jt(t,{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=x9t(0,0,p,h,d,f);g=i.insert("path",":first-child").attr("d",y).attr("class","basic label-container").attr("style",m).attr("style",n)}return g.attr("class","basic label-container"),m&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",m),n&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",n),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))})`),Qt(t,g),t.intersect=function(y){let v=qt.rect(t,y),x=v.y-(t.y??0);if(f!=0&&(Math.abs(x)<(t.height??0)/2||Math.abs(x)==(t.height??0)/2&&Math.abs(v.x-(t.x??0))>(t.width??0)/2-d)){let b=d*d*(1-x*x/(f*f));b!=0&&(b=Math.sqrt(b)),b=d-b,y.x-(t.x??0)>0&&(b=-b),v.x+=b}return v},i},"tiltedCylinder")});var $w,AZ=R(()=>{"use strict";Be();Je();Ze();Qe();$w=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=60,l=20,u=Math.max(s,a.width+(t.padding??0)*2,t?.width??0),h=Math.max(l,a.height+(t.padding??0)*2,t?.height??0),{cssStyles:f}=t,d=Kt.svg(i),p=Jt(t,{});t.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=He(m),y=d.path(g,p),v=i.insert(()=>y,":first-child");return v.attr("class","basic label-container"),f&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",f),n&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),Qt(t,v),t.intersect=function(x){return qt.polygon(t,m,x)},i},"trapezoidalPentagon")});var Gw,_Z=R(()=>{"use strict";ce();Be();Je();Ze();Qe();Be();Gw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+(t.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}=t,p=Kt.svg(i),m=Jt(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=He(f),y=p.path(g,m),v=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`);return d&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",d),n&&t.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),t.width=l,t.height=u,Qt(t,v),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${-u/2+(t.padding??0)/2+(a.y-(a.top??0))})`),t.intersect=function(x){return V.info("Triangle intersect",t,f,x),qt.polygon(t,f,x)},i},"flippedTriangle")});var tD,LZ=R(()=>{"use strict";ce();Be();Je();Ze();Qe();tD=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.label="",t.labelStyle=r;let{shapeSvg:i}=await he(e,t,de(t)),a=Math.max(30,t?.width??0),s=Math.max(30,t?.height??0),{cssStyles:l}=t,u=Kt.svg(i),h=Jt(t,{});t.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=He(f),p=u.path(d,h),m=i.insert(()=>p,":first-child");return m.attr("class","basic label-container"),l&&t.look!=="handDrawn"&&m.selectChildren("path").attr("style",l),n&&t.look!=="handDrawn"&&m.selectChildren("path").attr("style",n),m.attr("transform",`translate(${-a/2}, ${-s/2})`),Qt(t,m),t.intersect=function(g){return V.info("Pill intersect",t,{points:f}),qt.polygon(t,f,g)},i},"hourglass")});var Kv,DZ=R(()=>{"use strict";Be();Ze();Qe();Je();Kv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a}=await he(e,t,de(t)),s=Math.max(a.width+(t.padding??0)*2,t?.width??0),l=Math.max(a.height+(t.padding??0)*2,t?.height??0),u=-s/2,h=-l/2,f=.2*l,d=.2*l,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{}),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}];t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=He(y),b=m.path(x,g),w=He(v),S=m.path(w,{...g,fillStyle:"solid"}),T=i.insert(()=>S,":first-child");return T.insert(()=>b,":first-child"),T.attr("class","basic label-container"),p&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",p),n&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",n),Qt(t,T),t.intersect=function(E){return qt.polygon(t,y,E)},i},"taggedRect")});var Qv,RZ=R(()=>{"use strict";Be();Ze();Qe();Je();Qv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{}),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}];t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=He(y),b=m.path(x,g),w=He(v),S=m.path(w,{...g,fill:"none"}),T=i.insert(()=>S,":first-child");return T.insert(()=>b,":first-child"),T.attr("class","basic label-container"),p&&t.look!=="handDrawn"&&T.selectAll("path").attr("style",p),n&&t.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))})`),Qt(t,T),t.intersect=function(E){return qt.polygon(t,y,E)},i},"multiRect")});var T9t,k9t,E9t,Vw,NZ=R(()=>{"use strict";Be();Je();Ze();Qe();T9t=o((e,t,r,n,i,a,s)=>[`M${e},${t+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${e},${t+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createCylinderPathD"),k9t=o((e,t,r,n,i,a,s)=>[`M${e},${t+a}`,`M${e+r},${t+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${e},${t+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createOuterCylinderPathD"),E9t=o((e,t,r,n,i,a)=>[`M${e-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD"),Vw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0),t.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+(t.padding??0),t.height??0),d=f*.1,p,{cssStyles:m}=t;if(t.look==="handDrawn"){let g=Kt.svg(i),y=k9t(0,0,l,f,u,h,d),v=E9t(0,h,l,f,u,h),x=Jt(t,{}),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=T9t(0,0,l,f,u,h,d);p=i.insert("path",":first-child").attr("d",g).attr("class","basic label-container").attr("style",m).attr("style",n)}return p.attr("label-offset-y",h),p.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Qt(t,p),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),t.intersect=function(g){let y=qt.rect(t,g),v=y.x-(t.x??0);if(u!=0&&(Math.abs(v)<(t.width??0)/2||Math.abs(v)==(t.width??0)/2&&Math.abs(y.y-(t.y??0))>(t.height??0)/2-h)){let x=h*h*(1-v*v/(u*u));x>0&&(x=Math.sqrt(x)),x=h-x,g.y-(t.y??0)>0&&(x=-x),y.y+=x}return y},i},"linedCylinder")});var eD,MZ=R(()=>{"use strict";Be();Je();Qe();Ze();eD=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=u/8,f=u+h,{cssStyles:d}=t,m=70-l,g=m>0?m/2:0,y=Kt.svg(i),v=Jt(t,{});t.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let x=[{x:-l/2-g,y:f/2},...Vo(-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=He(x),w=y.path(b,v),S=i.insert(()=>w,":first-child");return S.attr("class","basic label-container"),d&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",d),n&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(t.padding??0)-(a.x-(a.left??0))},${-u/2+(t.padding??0)-h-(a.y-(a.top??0))})`),Qt(t,S),t.intersect=function(T){return qt.polygon(t,x,T)},i},"waveEdgedRectangle")});var Uw,IZ=R(()=>{"use strict";ce();Be();Ze();Qe();Je();Be();Uw=o((e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.label="",t.labelStyle=r;let i=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),{cssStyles:a}=t,s=Math.max(35,t?.width??0),l=Math.max(35,t?.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=Kt.svg(i),d=Jt(t,{});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=He(h),m=f.path(p,d),g=i.insert(()=>m,":first-child");return a&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",a),n&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",n),g.attr("transform",`translate(-${s/2},${-l})`),Qt(t,g),t.intersect=function(y){return V.info("lightningBolt intersect",t,y),qt.polygon(t,h,y)},i},"lightningBolt")});var Hw,OZ=R(()=>{"use strict";Qe();ce();Je();Ze();Be();Hw=o((e,t,{config:{themeVariables:r}})=>{let{labelStyles:n,nodeStyles:i}=te(t);t.label="",t.labelStyle=n;let a=e.insert("g").attr("class",de(t)).attr("id",t.domId??t.id),s=7,{cssStyles:l}=t,u=Kt.svg(a),{nodeBorder:h}=r,f=Jt(t,{fillStyle:"solid"});t.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&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",l),i&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",i),Qt(t,p),t.intersect=function(m){return V.info("filledCircle intersect",t,{radius:s,point:m}),qt.circle(t,s,m)},a},"filledCircle")});var Zv,PZ=R(()=>{"use strict";Be();Je();Qe();Ze();Zv=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=u/4,f=u+h,d=-l/2,p=-f/2,m=5,{cssStyles:g}=t,y=Vo(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=Kt.svg(i),S=Jt(t,{});t.look!=="handDrawn"&&(S.roughness=0,S.fillStyle="solid");let T=He(x),E=w.path(T,S),_=He(b),A=w.path(_,S),L=i.insert(()=>E,":first-child");return L.insert(()=>A),L.attr("class","basic label-container"),g&&t.look!=="handDrawn"&&L.selectAll("path").attr("style",g),n&&t.look!=="handDrawn"&&L.selectAll("path").attr("style",n),L.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))})`),Qt(t,L),t.intersect=function(M){return qt.polygon(t,x,M)},i},"multiWaveEdgedRectangle")});var Ww,BZ=R(()=>{"use strict";Be();Ze();Qe();Je();Ww=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=t,m=Kt.svg(i),g=Jt(t,{}),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}`;t.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&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",p),n&&t.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))})`),Qt(t,b),t.intersect=function(w){return qt.polygon(t,y,w)},i},"windowPane")});var rD,FZ=R(()=>{"use strict";Be();Je();Qe();Ze();rD=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=u/4,f=u+h,{cssStyles:d}=t,p=Kt.svg(i),m=Jt(t,{});t.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},...Vo(-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&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",d),n&&t.look!=="handDrawn"&&v.selectAll("path").attr("style",n),v.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(t.padding??0)+l/2*.1/2-(a.x-(a.left??0))},${-u/2+(t.padding??0)-h/2-(a.y-(a.top??0))})`),Qt(t,v),t.intersect=function(x){return qt.polygon(t,g,x)},i},"linedWaveEdgedRect")});var nD,zZ=R(()=>{"use strict";Be();Je();Qe();Ze();nD=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=Math.max(a.width+(t.padding??0)*2,t?.width??0),u=Math.max(a.height+(t.padding??0)*2,t?.height??0),h=u/4,f=.2*l,d=.2*u,p=u+h,{cssStyles:m}=t,g=Kt.svg(i),y=Jt(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=[{x:-l/2-l/2*.1,y:p/2},...Vo(-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},...Vo(x+l,(b+u)*1.3,x+l-f,(b+u)*1.5,-u*.03,.5)],S=He(v),T=g.path(S,y),E=He(w),_=g.path(E,{...y,fillStyle:"solid"}),A=i.insert(()=>_,":first-child");return A.insert(()=>T,":first-child"),A.attr("class","basic label-container"),m&&t.look!=="handDrawn"&&A.selectAll("path").attr("style",m),n&&t.look!=="handDrawn"&&A.selectAll("path").attr("style",n),A.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(t.padding??0)-(a.x-(a.left??0))},${-u/2+(t.padding??0)-h/2-(a.y-(a.top??0))})`),Qt(t,A),t.intersect=function(L){return qt.polygon(t,v,L)},i},"taggedWaveEdgedRectangle")});function qh(e,t,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;d{"use strict";Be();Je();Ze();Qe();o(qh,"generateCirclePoints");Yw=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+(t.padding??0),u=a.height+(t.padding??0),h=Math.max(5,u*.1),{cssStyles:f}=t,d=[...qh(l/2,-u/2,h,30,-90,0),{x:-l/2-h,y:h},...qh(l/2+h*2,-h,h,20,-180,-270),...qh(l/2+h*2,h,h,20,-90,-180),{x:-l/2-h,y:-u/2},...qh(l/2,u/2,h,20,0,90)],p=[{x:l/2,y:-u/2-h},{x:-l/2,y:-u/2-h},...qh(l/2,-u/2,h,20,-90,0),{x:-l/2-h,y:-h},...qh(l/2+l*.1,-h,h,20,-180,-270),...qh(l/2+l*.1,h,h,20,-90,-180),{x:-l/2-h,y:u/2},...qh(l/2,u/2,h,20,0,90),{x:-l/2,y:u/2+h},{x:l/2,y:u/2+h}],m=Kt.svg(i),g=Jt(t,{fill:"none"});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let v=He(d).replace("Z",""),x=m.path(v,g),b=He(p),w=m.path(b,{...g}),S=i.insert("g",":first-child");return S.insert(()=>w,":first-child").attr("stroke-opacity",0),S.insert(()=>x,":first-child"),S.attr("class","text"),f&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(${h}, 0)`),s.attr("transform",`translate(${-l/2+h-(a.x-(a.left??0))},${-u/2+(t.padding??0)/2-(a.y-(a.top??0))})`),Qt(t,S),t.intersect=function(T){return qt.polygon(t,p,T)},i},"curlyBraceLeft")});function Xh(e,t,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;d{"use strict";Be();Je();Ze();Qe();o(Xh,"generateCirclePoints");GZ=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+(t.padding??0),u=a.height+(t.padding??0),h=Math.max(5,u*.1),{cssStyles:f}=t,d=[...Xh(l/2,-u/2,h,20,-90,0),{x:l/2+h,y:-h},...Xh(l/2+h*2,-h,h,20,-180,-270),...Xh(l/2+h*2,h,h,20,-90,-180),{x:l/2+h,y:u/2},...Xh(l/2,u/2,h,20,0,90)],p=[{x:-l/2,y:-u/2-h},{x:l/2,y:-u/2-h},...Xh(l/2,-u/2,h,20,-90,0),{x:l/2+h,y:-h},...Xh(l/2+h*2,-h,h,20,-180,-270),...Xh(l/2+h*2,h,h,20,-90,-180),{x:l/2+h,y:u/2},...Xh(l/2,u/2,h,20,0,90),{x:l/2,y:u/2+h},{x:-l/2,y:u/2+h}],m=Kt.svg(i),g=Jt(t,{fill:"none"});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let v=He(d).replace("Z",""),x=m.path(v,g),b=He(p),w=m.path(b,{...g}),S=i.insert("g",":first-child");return S.insert(()=>w,":first-child").attr("stroke-opacity",0),S.insert(()=>x,":first-child"),S.attr("class","text"),f&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(${-h}, 0)`),s.attr("transform",`translate(${-l/2+(t.padding??0)/2-(a.x-(a.left??0))},${-u/2+(t.padding??0)/2-(a.y-(a.top??0))})`),Qt(t,S),t.intersect=function(T){return qt.polygon(t,p,T)},i},"curlyBraceRight")});function Fa(e,t,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;d{"use strict";Be();Je();Ze();Qe();o(Fa,"generateCirclePoints");UZ=o(async(e,t)=>{let{labelStyles:r,nodeStyles:n}=te(t);t.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await he(e,t,de(t)),l=a.width+(t.padding??0),u=a.height+(t.padding??0),h=Math.max(5,u*.1),{cssStyles:f}=t,d=[...Fa(l/2,-u/2,h,30,-90,0),{x:-l/2-h,y:h},...Fa(l/2+h*2,-h,h,20,-180,-270),...Fa(l/2+h*2,h,h,20,-90,-180),{x:-l/2-h,y:-u/2},...Fa(l/2,u/2,h,20,0,90)],p=[...Fa(-l/2+h+h/2,-u/2,h,20,-90,-180),{x:l/2-h/2,y:h},...Fa(-l/2-h/2,-h,h,20,0,90),...Fa(-l/2-h/2,h,h,20,-90,0),{x:l/2-h/2,y:-h},...Fa(-l/2+h+h/2,u/2,h,30,-180,-270)],m=[{x:l/2,y:-u/2-h},{x:-l/2,y:-u/2-h},...Fa(l/2,-u/2,h,20,-90,0),{x:-l/2-h,y:-h},...Fa(l/2+h*2,-h,h,20,-180,-270),...Fa(l/2+h*2,h,h,20,-90,-180),{x:-l/2-h,y:u/2},...Fa(l/2,u/2,h,20,0,90),{x:-l/2,y:u/2+h},{x:l/2-h-h/2,y:u/2+h},...Fa(-l/2+h+h/2,-u/2,h,20,-90,-180),{x:l/2-h/2,y:h},...Fa(-l/2-h/2,-h,h,20,0,90),...Fa(-l/2-h/2,h,h,20,-90,0),{x:l/2-h/2,y:-h},...Fa(-l/2+h+h/2,u/2,h,30,-180,-270)],g=Kt.svg(i),y=Jt(t,{fill:"none"});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let x=He(d).replace("Z",""),b=g.path(x,y),S=He(p).replace("Z",""),T=g.path(S,y),E=He(m),_=g.path(E,{...y}),A=i.insert("g",":first-child");return A.insert(()=>_,":first-child").attr("stroke-opacity",0),A.insert(()=>b,":first-child"),A.insert(()=>T,":first-child"),A.attr("class","text"),f&&t.look!=="handDrawn"&&A.selectAll("path").attr("style",f),n&&t.look!=="handDrawn"&&A.selectAll("path").attr("style",n),A.attr("transform",`translate(${h-h/4}, 0)`),s.attr("transform",`translate(${-l/2+(t.padding??0)/2-(a.x-(a.left??0))},${-u/2+(t.padding??0)/2-(a.y-(a.top??0))})`),Qt(t,A),t.intersect=function(L){return qt.polygon(t,m,L)},i},"curlyBraces")});var WZ,YZ=R(()=>{"use strict";Qe();ce();iu();Je();Ze();Be();WZ=o(async(e,t,{config:{themeVariables:r,flowchart:n}})=>{let{labelStyles:i}=te(t);t.labelStyle=i;let a=t.assetHeight??48,s=t.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;t.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await he(e,t,"icon-shape default"),m=t.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=Cc(t),w=-y/2,S=-g/2,T=t.label?8:0,E=Kt.svg(h),_=Jt(t,{stroke:b.get("fill")||x});t.look!=="handDrawn"&&(_.roughness=0,_.fillStyle="solid");let A=E.rectangle(w,S,y,g,_),L=Math.max(y,f.width),M=g+f.height+T,N=E.rectangle(-L/2,-M/2,L,M,{..._,fill:"transparent",stroke:"none"}),k=h.insert(()=>A,":first-child"),I=h.insert(()=>N);if(t.icon){let C=h.append("g");C.html(`${await Ao(t.icon,{height:l,width:l,fallbackPrefix:""})}`);let O=C.node().getBBox(),D=O.width,P=O.height,F=O.x,B=O.y;C.attr("transform",`translate(${-D/2-F},${m?f.height/2+T/2-P/2-B:-f.height/2-T/2-P/2-B})`),C.selectAll("path").attr("fill",b.get("stroke")??v)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-M/2:M/2-f.height})`),k.attr("transform",`translate(0,${m?f.height/2+T/2:-f.height/2-T/2})`),Qt(t,I),t.intersect=function(C){if(V.info("iconSquare intersect",t,C),!t.label)return qt.rect(t,C);let O=t.x??0,D=t.y??0,P=t.height??0,F=[];return m?F=[{x:O-f.width/2,y:D-P/2},{x:O+f.width/2,y:D-P/2},{x:O+f.width/2,y:D-P/2+f.height+T},{x:O+y/2,y:D-P/2+f.height+T},{x:O+y/2,y:D+P/2},{x:O-y/2,y:D+P/2},{x:O-y/2,y:D-P/2+f.height+T},{x:O-f.width/2,y:D-P/2+f.height+T}]:F=[{x:O-y/2,y:D-P/2},{x:O+y/2,y:D-P/2},{x:O+y/2,y:D-P/2+g},{x:O+f.width/2,y:D-P/2+g},{x:O+f.width/2/2,y:D+P/2},{x:O-f.width/2,y:D+P/2},{x:O-f.width/2,y:D-P/2+g},{x:O-y/2,y:D-P/2+g}],qt.polygon(t,F,C)},h},"iconSquare")});var qZ,XZ=R(()=>{"use strict";Qe();ce();iu();Je();Ze();Be();qZ=o(async(e,t,{config:{themeVariables:r,flowchart:n}})=>{let{labelStyles:i}=te(t);t.labelStyle=i;let a=t.assetHeight??48,s=t.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;t.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await he(e,t,"icon-shape default"),p=20,m=t.label?8:0,g=t.pos==="t",{nodeBorder:y,mainBkg:v}=r,{stylesMap:x}=Cc(t),b=Kt.svg(h),w=Jt(t,{stroke:x.get("fill")||v});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let S=h.append("g");t.icon&&S.html(`${await Ao(t.icon,{height:l,width:l,fallbackPrefix:""})}`);let T=S.node().getBBox(),E=T.width,_=T.height,A=T.x,L=T.y,M=Math.max(E,_)*Math.SQRT2+p*2,N=b.circle(0,0,M,w),k=Math.max(M,f.width),I=M+f.height+m,C=b.rectangle(-k/2,-I/2,k,I,{...w,fill:"transparent",stroke:"none"}),O=h.insert(()=>N,":first-child"),D=h.insert(()=>C);return S.attr("transform",`translate(${-E/2-A},${g?f.height/2+m/2-_/2-L:-f.height/2-m/2-_/2-L})`),S.selectAll("path").attr("fill",x.get("stroke")||y),d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${g?-I/2:I/2-f.height})`),O.attr("transform",`translate(0,${g?f.height/2+m/2:-f.height/2-m/2})`),Qt(t,D),t.intersect=function(P){return V.info("iconSquare intersect",t,P),qt.rect(t,P)},h},"iconCircle")});var jZ,KZ=R(()=>{"use strict";Qe();ce();iu();Je();Ze();Be();jZ=o(async(e,t,{config:{themeVariables:r,flowchart:n}})=>{let{labelStyles:i}=te(t);t.labelStyle=i;let a=t.assetHeight??48,s=t.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;t.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await he(e,t,"icon-shape default"),p=t.pos==="t",m=l,g=l,{nodeBorder:y}=r,{stylesMap:v}=Cc(t),x=-g/2,b=-m/2,w=t.label?8:0,S=Kt.svg(h),T=Jt(t,{stroke:"none",fill:"none"});t.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let E=S.rectangle(x,b,g,m,T),_=Math.max(g,f.width),A=m+f.height+w,L=S.rectangle(-_/2,-A/2,_,A,{...T,fill:"transparent",stroke:"none"}),M=h.insert(()=>E,":first-child"),N=h.insert(()=>L);if(t.icon){let k=h.append("g");k.html(`${await Ao(t.icon,{height:l,width:l,fallbackPrefix:""})}`);let I=k.node().getBBox(),C=I.width,O=I.height,D=I.x,P=I.y;k.attr("transform",`translate(${-C/2-D},${p?f.height/2+w/2-O/2-P:-f.height/2-w/2-O/2-P})`),k.selectAll("path").attr("fill",v.get("stroke")||y)}return d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${p?-A/2:A/2-f.height})`),M.attr("transform",`translate(0,${p?f.height/2+w/2:-f.height/2-w/2})`),Qt(t,N),t.intersect=function(k){if(V.info("iconSquare intersect",t,k),!t.label)return qt.rect(t,k);let I=t.x??0,C=t.y??0,O=t.height??0,D=[];return p?D=[{x:I-f.width/2,y:C-O/2},{x:I+f.width/2,y:C-O/2},{x:I+f.width/2,y:C-O/2+f.height+w},{x:I+g/2,y:C-O/2+f.height+w},{x:I+g/2,y:C+O/2},{x:I-g/2,y:C+O/2},{x:I-g/2,y:C-O/2+f.height+w},{x:I-f.width/2,y:C-O/2+f.height+w}]:D=[{x:I-g/2,y:C-O/2},{x:I+g/2,y:C-O/2},{x:I+g/2,y:C-O/2+m},{x:I+f.width/2,y:C-O/2+m},{x:I+f.width/2/2,y:C+O/2},{x:I-f.width/2,y:C+O/2},{x:I-f.width/2,y:C-O/2+m},{x:I-g/2,y:C-O/2+m}],qt.polygon(t,D,k)},h},"icon")});var QZ,ZZ=R(()=>{"use strict";Qe();ce();Je();Ze();Be();QZ=o(async(e,t,{config:{flowchart:r}})=>{let n=new Image;n.src=t?.img??"",await n.decode();let i=Number(n.naturalWidth.toString().replace("px","")),a=Number(n.naturalHeight.toString().replace("px",""));t.imageAspectRatio=i/a;let{labelStyles:s}=te(t);t.labelStyle=s;let l=r?.wrappingWidth;t.defaultWidth=r?.wrappingWidth;let u=Math.max(t.label?l??0:0,t?.assetWidth??i),h=t.constraint==="on"&&t?.assetHeight?t.assetHeight*t.imageAspectRatio:u,f=t.constraint==="on"?h/t.imageAspectRatio:t?.assetHeight??a;t.width=Math.max(h,l??0);let{shapeSvg:d,bbox:p,label:m}=await he(e,t,"image-shape default"),g=t.pos==="t",y=-h/2,v=-f/2,x=t.label?8:0,b=Kt.svg(d),w=Jt(t,{});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let S=b.rectangle(y,v,h,f,w),T=Math.max(h,p.width),E=f+p.height+x,_=b.rectangle(-T/2,-E/2,T,E,{...w,fill:"none",stroke:"none"}),A=d.insert(()=>S,":first-child"),L=d.insert(()=>_);if(t.img){let M=d.append("image");M.attr("href",t.img),M.attr("width",h),M.attr("height",f),M.attr("preserveAspectRatio","none"),M.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})`),A.attr("transform",`translate(0,${g?p.height/2+x/2:-p.height/2-x/2})`),Qt(t,L),t.intersect=function(M){if(V.info("iconSquare intersect",t,M),!t.label)return qt.rect(t,M);let N=t.x??0,k=t.y??0,I=t.height??0,C=[];return g?C=[{x:N-p.width/2,y:k-I/2},{x:N+p.width/2,y:k-I/2},{x:N+p.width/2,y:k-I/2+p.height+x},{x:N+h/2,y:k-I/2+p.height+x},{x:N+h/2,y:k+I/2},{x:N-h/2,y:k+I/2},{x:N-h/2,y:k-I/2+p.height+x},{x:N-p.width/2,y:k-I/2+p.height+x}]:C=[{x:N-h/2,y:k-I/2},{x:N+h/2,y:k-I/2},{x:N+h/2,y:k-I/2+f},{x:N+p.width/2,y:k-I/2+f},{x:N+p.width/2/2,y:k+I/2},{x:N-p.width/2,y:k+I/2},{x:N-p.width/2,y:k-I/2+f},{x:N-h/2,y:k-I/2+f}],qt.polygon(t,C,M)},d},"imageSquare")});var JZ,tJ=R(()=>{"use strict";Qe();ce();iu();Je();Ze();Am();Be();JZ=o(async(e,t,{config:{themeVariables:r,flowchart:n}})=>{let{labelStyles:i}=te(t);t.labelStyle=i;let a=t.assetHeight??48,s=t.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;t.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await he(e,t,"icon-shape default"),m=t.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:v,mainBkg:x}=r,{stylesMap:b}=Cc(t),w=-y/2,S=-g/2,T=t.label?8:0,E=Kt.svg(h),_=Jt(t,{stroke:b.get("fill")||x});t.look!=="handDrawn"&&(_.roughness=0,_.fillStyle="solid");let A=E.path(Ml(w,S,y,g,5),_),L=Math.max(y,f.width),M=g+f.height+T,N=E.rectangle(-L/2,-M/2,L,M,{..._,fill:"transparent",stroke:"none"}),k=h.insert(()=>A,":first-child"),I=h.insert(()=>N);if(t.icon){let C=h.append("g");C.html(`${await Ao(t.icon,{height:l,width:l,fallbackPrefix:""})}`);let O=C.node().getBBox(),D=O.width,P=O.height,F=O.x,B=O.y;C.attr("transform",`translate(${-D/2-F},${m?f.height/2+T/2-P/2-B:-f.height/2-T/2-P/2-B})`),C.selectAll("path").attr("fill",b.get("stroke")??v)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-M/2:M/2-f.height})`),k.attr("transform",`translate(0,${m?f.height/2+T/2:-f.height/2-T/2})`),Qt(t,I),t.intersect=function(C){if(V.info("iconSquare intersect",t,C),!t.label)return qt.rect(t,C);let O=t.x??0,D=t.y??0,P=t.height??0,F=[];return m?F=[{x:O-f.width/2,y:D-P/2},{x:O+f.width/2,y:D-P/2},{x:O+f.width/2,y:D-P/2+f.height+T},{x:O+y/2,y:D-P/2+f.height+T},{x:O+y/2,y:D+P/2},{x:O-y/2,y:D+P/2},{x:O-y/2,y:D-P/2+f.height+T},{x:O-f.width/2,y:D-P/2+f.height+T}]:F=[{x:O-y/2,y:D-P/2},{x:O+y/2,y:D-P/2},{x:O+y/2,y:D-P/2+g},{x:O+f.width/2,y:D-P/2+g},{x:O+f.width/2/2,y:D+P/2},{x:O-f.width/2,y:D+P/2},{x:O-f.width/2,y:D-P/2+g},{x:O-y/2,y:D-P/2+g}],qt.polygon(t,F,C)},h},"iconRounded")});var iD,Nm,qw,eJ,rJ,aD,sD=R(()=>{"use strict";ce();zQ();$Q();GQ();VQ();UQ();HQ();YQ();XQ();jQ();QQ();ZQ();JQ();tZ();eZ();rZ();nZ();iZ();sZ();oZ();lZ();uZ();hZ();fZ();dZ();pZ();gZ();yZ();vZ();xZ();bZ();TZ();kZ();EZ();CZ();SZ();AZ();_Z();LZ();DZ();RZ();NZ();MZ();IZ();OZ();PZ();BZ();FZ();zZ();$Z();VZ();HZ();YZ();XZ();KZ();ZZ();tJ();iD={state:FQ,stateStart:Vv,stateEnd:Uv,forkJoin:Lw,choice:WQ,note:qQ,rectWithTitle:KQ,roundedRect:_w,squareRect:_m,rectangle:_m,rect:_m,process:_m,proc:_m,rounded:_w,event:_w,stadium:Dw,pill:Dw,terminal:Dw,subroutine:Lm,"framed-rectangle":Lm,"fr-rect":Lm,subprocess:Lm,subproc:Lm,cylinder:Hv,db:Hv,cyl:Hv,database:Hv,question:Wv,diam:Wv,diamond:Wv,decision:Wv,hexagon:Nw,hex:Nw,prepare:Nw,lean_right:Yv,"lean-r":Yv,"lean-right":Yv,"in-out":Yv,lean_left:qv,"lean-l":qv,"lean-left":qv,"out-in":qv,trapezoid:Xv,"trap-b":Xv,"trapezoid-bottom":Xv,priority:Xv,inv_trapezoid:Rm,"inv-trapezoid":Rm,"trapezoid-top":Rm,"trap-t":Rm,manual:Rm,doublecircle:Rw,"dbl-circ":Rw,"double-circle":Rw,circle:KL,circ:KL,rect_left_inv_arrow:QL,odd:QL,card:Mw,"notched-rectangle":Mw,"notch-rect":Mw,"lined-rectangle":Dm,"lin-rect":Dm,"lin-proc":Dm,"lined-process":Dm,"shaded-process":Dm,"small-circle":Vv,"sm-circ":Vv,start:Vv,stop:Uv,"framed-circle":Uv,"fr-circ":Uv,join:Lw,fork:Lw,comment:Yw,"brace-l":Yw,bolt:Uw,"com-link":Uw,"lightning-bolt":Uw,doc:eD,document:eD,delay:ZL,"half-rounded-rectangle":ZL,"horizontal-cylinder":zw,"h-cyl":zw,das:zw,"lined-cylinder":Vw,"lin-cyl":Vw,disk:Vw,"curved-trapezoid":Ow,"curv-trap":Ow,display:Ow,"divided-rectangle":jv,"div-rect":jv,"div-proc":jv,"divided-process":jv,triangle:Iw,tri:Iw,extract:Iw,"window-pane":Ww,"win-pane":Ww,"internal-storage":Ww,"f-circ":Hw,junction:Hw,"filled-circle":Hw,"lin-doc":rD,"lined-document":rD,"notched-pentagon":$w,"notch-pent":$w,"loop-limit":$w,"flipped-triangle":Gw,"flip-tri":Gw,"manual-file":Gw,"sloped-rectangle":Pw,"sl-rect":Pw,"manual-input":Pw,docs:Zv,documents:Zv,"st-doc":Zv,"stacked-document":Zv,processes:Qv,procs:Qv,"stacked-rectangle":Qv,"st-rect":Qv,flag:JL,"paper-tape":JL,"bow-tie-rectangle":Bw,"bow-rect":Bw,"stored-data":Bw,"crossed-circle":Fw,"cross-circ":Fw,summary:Fw,"tag-doc":nD,"tagged-document":nD,"tag-rect":Kv,"tagged-rectangle":Kv,"tag-proc":Kv,"tagged-process":Kv,hourglass:tD,collate:tD,text:aZ,anchor:cZ,brace:Yw,labelRect:mZ,"brace-r":GZ,braces:UZ,iconSquare:WZ,iconCircle:qZ,icon:jZ,iconRounded:JZ,imageSquare:QZ},Nm=new Map,qw=o(async(e,t,r)=>{let n,i;if(t.shape==="rect"&&(t.rx&&t.ry?t.shape="roundedRect":t.shape="squareRect"),!iD[t.shape])throw new Error(`No such shape: ${t.shape}. Please check your syntax.`);if(t.link){let a;r.config.securityLevel==="sandbox"?a="_top":t.linkTarget&&(a=t.linkTarget||"_blank"),n=e.insert("svg:a").attr("xlink:href",t.link).attr("target",a),i=await iD[t.shape](n,t,r)}else i=await iD[t.shape](e,t,r),n=i;return t.tooltip&&i.attr("title",t.tooltip),Nm.set(t.id,n),t.haveCallback&&Nm.get(t.id).attr("class",Nm.get(t.id).attr("class")+" clickable"),n},"insertNode"),eJ=o((e,t)=>{Nm.set(t.id,e)},"setNodeElem"),rJ=o(()=>{Nm.clear()},"clear"),aD=o(e=>{let t=Nm.get(e.id);V.trace("Transforming node",e.diff,e,"translate("+(e.x-e.width/2-5)+", "+e.width/2+")");let r=8,n=e.diff||0;return e.clusterNode?t.attr("transform","translate("+(e.x+n-e.width/2)+", "+(e.y-e.height/2-r)+")"):t.attr("transform","translate("+e.x+", "+e.y+")"),n},"positionNode")});var nJ,iJ=R(()=>{"use strict";js();hr();ce();WL();qL();XL();sD();Be();_r();nJ={common:Yt,getConfig:Nr,insertCluster:gw,insertEdge:Ew,insertEdgeLabel:Tw,insertMarkers:Cw,insertNode:qw,interpolateToCurve:mm,labelHelper:he,log:V,positionEdgeLabel:kw}});function S9t(e){return typeof e=="symbol"||ti(e)&&ga(e)==C9t}var C9t,oo,Fd=R(()=>{"use strict";Au();Po();C9t="[object Symbol]";o(S9t,"isSymbol");oo=S9t});function A9t(e,t){for(var r=-1,n=e==null?0:e.length,i=Array(n);++r{"use strict";o(A9t,"arrayMap");Ns=A9t});function oJ(e){if(typeof e=="string")return e;if(Le(e))return Ns(e,oJ)+"";if(oo(e))return sJ?sJ.call(e):"";var t=e+"";return t=="0"&&1/e==-_9t?"-0":t}var _9t,aJ,sJ,lJ,cJ=R(()=>{"use strict";kd();zd();Hn();Fd();_9t=1/0,aJ=ra?ra.prototype:void 0,sJ=aJ?aJ.toString:void 0;o(oJ,"baseToString");lJ=oJ});function D9t(e){for(var t=e.length;t--&&L9t.test(e.charAt(t)););return t}var L9t,uJ,hJ=R(()=>{"use strict";L9t=/\s/;o(D9t,"trimmedEndIndex");uJ=D9t});function N9t(e){return e&&e.slice(0,uJ(e)+1).replace(R9t,"")}var R9t,fJ,dJ=R(()=>{"use strict";hJ();R9t=/^\s+/;o(N9t,"baseTrim");fJ=N9t});function B9t(e){if(typeof e=="number")return e;if(oo(e))return pJ;if(xn(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=xn(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=fJ(e);var r=I9t.test(e);return r||O9t.test(e)?P9t(e.slice(2),r?2:8):M9t.test(e)?pJ:+e}var pJ,M9t,I9t,O9t,P9t,mJ,gJ=R(()=>{"use strict";dJ();eo();Fd();pJ=NaN,M9t=/^[-+]0x[0-9a-f]+$/i,I9t=/^0b[01]+$/i,O9t=/^0o[0-7]+$/i,P9t=parseInt;o(B9t,"toNumber");mJ=B9t});function z9t(e){if(!e)return e===0?e:0;if(e=mJ(e),e===yJ||e===-yJ){var t=e<0?-1:1;return t*F9t}return e===e?e:0}var yJ,F9t,Mm,oD=R(()=>{"use strict";gJ();yJ=1/0,F9t=17976931348623157e292;o(z9t,"toFinite");Mm=z9t});function $9t(e){var t=Mm(e),r=t%1;return t===t?r?t-r:t:0}var Sc,Im=R(()=>{"use strict";oD();o($9t,"toInteger");Sc=$9t});var G9t,Xw,vJ=R(()=>{"use strict";Mh();Io();G9t=ks(si,"WeakMap"),Xw=G9t});function V9t(){}var ei,lD=R(()=>{"use strict";o(V9t,"noop");ei=V9t});function U9t(e,t){for(var r=-1,n=e==null?0:e.length;++r{"use strict";o(U9t,"arrayEach");jw=U9t});function H9t(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a{"use strict";o(H9t,"baseFindIndex");Kw=H9t});function W9t(e){return e!==e}var xJ,bJ=R(()=>{"use strict";o(W9t,"baseIsNaN");xJ=W9t});function Y9t(e,t,r){for(var n=r-1,i=e.length;++n{"use strict";o(Y9t,"strictIndexOf");wJ=Y9t});function q9t(e,t,r){return t===t?wJ(e,t,r):Kw(e,xJ,r)}var Om,Qw=R(()=>{"use strict";uD();bJ();TJ();o(q9t,"baseIndexOf");Om=q9t});function X9t(e,t){var r=e==null?0:e.length;return!!r&&Om(e,t,0)>-1}var Zw,hD=R(()=>{"use strict";Qw();o(X9t,"arrayIncludes");Zw=X9t});var j9t,kJ,EJ=R(()=>{"use strict";C9();j9t=S5(Object.keys,Object),kJ=j9t});function Z9t(e){if(!xc(e))return kJ(e);var t=[];for(var r in Object(e))Q9t.call(e,r)&&r!="constructor"&&t.push(r);return t}var K9t,Q9t,Pm,Jw=R(()=>{"use strict";cm();EJ();K9t=Object.prototype,Q9t=K9t.hasOwnProperty;o(Z9t,"baseKeys");Pm=Z9t});function J9t(e){return oi(e)?R5(e):Pm(e)}var $r,Ac=R(()=>{"use strict";D9();Jw();Bo();o(J9t,"keys");$r=J9t});var tLt,eLt,rLt,va,CJ=R(()=>{"use strict";dm();_d();I9();Bo();cm();Ac();tLt=Object.prototype,eLt=tLt.hasOwnProperty,rLt=I5(function(e,t){if(xc(t)||oi(t)){$o(t,$r(t),e);return}for(var r in t)eLt.call(t,r)&&bc(e,r,t[r])}),va=rLt});function aLt(e,t){if(Le(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||oo(e)?!0:iLt.test(e)||!nLt.test(e)||t!=null&&e in Object(t)}var nLt,iLt,Bm,tT=R(()=>{"use strict";Hn();Fd();nLt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,iLt=/^\w*$/;o(aLt,"isKey");Bm=aLt});function oLt(e){var t=em(e,function(n){return r.size===sLt&&r.clear(),n}),r=t.cache;return t}var sLt,SJ,AJ=R(()=>{"use strict";v9();sLt=500;o(oLt,"memoizeCapped");SJ=oLt});var lLt,cLt,uLt,_J,LJ=R(()=>{"use strict";AJ();lLt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,cLt=/\\(\\)?/g,uLt=SJ(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(lLt,function(r,n,i,a){t.push(i?a.replace(cLt,"$1"):n||r)}),t}),_J=uLt});function hLt(e){return e==null?"":lJ(e)}var eT,fD=R(()=>{"use strict";cJ();o(hLt,"toString");eT=hLt});function fLt(e,t){return Le(e)?e:Bm(e,t)?[e]:_J(eT(e))}var jh,Jv=R(()=>{"use strict";Hn();tT();LJ();fD();o(fLt,"castPath");jh=fLt});function pLt(e){if(typeof e=="string"||oo(e))return e;var t=e+"";return t=="0"&&1/e==-dLt?"-0":t}var dLt,_c,Fm=R(()=>{"use strict";Fd();dLt=1/0;o(pLt,"toKey");_c=pLt});function mLt(e,t){t=jh(t,e);for(var r=0,n=t.length;e!=null&&r{"use strict";Jv();Fm();o(mLt,"baseGet");Kh=mLt});function gLt(e,t,r){var n=e==null?void 0:Kh(e,t);return n===void 0?r:n}var DJ,RJ=R(()=>{"use strict";t2();o(gLt,"get");DJ=gLt});function yLt(e,t){for(var r=-1,n=t.length,i=e.length;++r{"use strict";o(yLt,"arrayPush");zm=yLt});function vLt(e){return Le(e)||_l(e)||!!(NJ&&e&&e[NJ])}var NJ,MJ,IJ=R(()=>{"use strict";kd();um();Hn();NJ=ra?ra.isConcatSpreadable:void 0;o(vLt,"isFlattenable");MJ=vLt});function OJ(e,t,r,n,i){var a=-1,s=e.length;for(r||(r=MJ),i||(i=[]);++a0&&r(l)?t>1?OJ(l,t-1,r,n,i):zm(i,l):n||(i[i.length]=l)}return i}var Lc,$m=R(()=>{"use strict";rT();IJ();o(OJ,"baseFlatten");Lc=OJ});function xLt(e){var t=e==null?0:e.length;return t?Lc(e,1):[]}var Wr,nT=R(()=>{"use strict";$m();o(xLt,"flatten");Wr=xLt});function bLt(e){return M5(N5(e,void 0,Wr),e+"")}var PJ,BJ=R(()=>{"use strict";nT();R9();M9();o(bLt,"flatRest");PJ=bLt});function wLt(e,t,r){var n=-1,i=e.length;t<0&&(t=-t>i?0:i+t),r=r>i?i:r,r<0&&(r+=i),i=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(i);++n{"use strict";o(wLt,"baseSlice");iT=wLt});function DLt(e){return LLt.test(e)}var TLt,kLt,ELt,CLt,SLt,ALt,_Lt,LLt,FJ,zJ=R(()=>{"use strict";TLt="\\ud800-\\udfff",kLt="\\u0300-\\u036f",ELt="\\ufe20-\\ufe2f",CLt="\\u20d0-\\u20ff",SLt=kLt+ELt+CLt,ALt="\\ufe0e\\ufe0f",_Lt="\\u200d",LLt=RegExp("["+_Lt+TLt+SLt+ALt+"]");o(DLt,"hasUnicode");FJ=DLt});function RLt(e,t,r,n){var i=-1,a=e==null?0:e.length;for(n&&a&&(r=e[++i]);++i{"use strict";o(RLt,"arrayReduce");$J=RLt});function NLt(e,t){return e&&$o(t,$r(t),e)}var VJ,UJ=R(()=>{"use strict";_d();Ac();o(NLt,"baseAssign");VJ=NLt});function MLt(e,t){return e&&$o(t,Es(t),e)}var HJ,WJ=R(()=>{"use strict";_d();$h();o(MLt,"baseAssignIn");HJ=MLt});function ILt(e,t){for(var r=-1,n=e==null?0:e.length,i=0,a=[];++r{"use strict";o(ILt,"arrayFilter");Gm=ILt});function OLt(){return[]}var sT,pD=R(()=>{"use strict";o(OLt,"stubArray");sT=OLt});var PLt,BLt,YJ,FLt,Vm,oT=R(()=>{"use strict";aT();pD();PLt=Object.prototype,BLt=PLt.propertyIsEnumerable,YJ=Object.getOwnPropertySymbols,FLt=YJ?function(e){return e==null?[]:(e=Object(e),Gm(YJ(e),function(t){return BLt.call(e,t)}))}:sT,Vm=FLt});function zLt(e,t){return $o(e,Vm(e),t)}var qJ,XJ=R(()=>{"use strict";_d();oT();o(zLt,"copySymbols");qJ=zLt});var $Lt,GLt,lT,mD=R(()=>{"use strict";rT();A5();oT();pD();$Lt=Object.getOwnPropertySymbols,GLt=$Lt?function(e){for(var t=[];e;)zm(t,Vm(e)),e=lm(e);return t}:sT,lT=GLt});function VLt(e,t){return $o(e,lT(e),t)}var jJ,KJ=R(()=>{"use strict";_d();mD();o(VLt,"copySymbolsIn");jJ=VLt});function ULt(e,t,r){var n=t(e);return Le(e)?n:zm(n,r(e))}var cT,gD=R(()=>{"use strict";rT();Hn();o(ULt,"baseGetAllKeys");cT=ULt});function HLt(e){return cT(e,$r,Vm)}var e2,yD=R(()=>{"use strict";gD();oT();Ac();o(HLt,"getAllKeys");e2=HLt});function WLt(e){return cT(e,Es,lT)}var uT,vD=R(()=>{"use strict";gD();mD();$h();o(WLt,"getAllKeysIn");uT=WLt});var YLt,hT,QJ=R(()=>{"use strict";Mh();Io();YLt=ks(si,"DataView"),hT=YLt});var qLt,fT,ZJ=R(()=>{"use strict";Mh();Io();qLt=ks(si,"Promise"),fT=qLt});var XLt,Qh,xD=R(()=>{"use strict";Mh();Io();XLt=ks(si,"Set"),Qh=XLt});var JJ,jLt,ttt,ett,rtt,ntt,KLt,QLt,ZLt,JLt,tDt,$d,lo,Gd=R(()=>{"use strict";QJ();x5();ZJ();xD();vJ();Au();m9();JJ="[object Map]",jLt="[object Object]",ttt="[object Promise]",ett="[object Set]",rtt="[object WeakMap]",ntt="[object DataView]",KLt=_u(hT),QLt=_u(Ph),ZLt=_u(fT),JLt=_u(Qh),tDt=_u(Xw),$d=ga;(hT&&$d(new hT(new ArrayBuffer(1)))!=ntt||Ph&&$d(new Ph)!=JJ||fT&&$d(fT.resolve())!=ttt||Qh&&$d(new Qh)!=ett||Xw&&$d(new Xw)!=rtt)&&($d=o(function(e){var t=ga(e),r=t==jLt?e.constructor:void 0,n=r?_u(r):"";if(n)switch(n){case KLt:return ntt;case QLt:return JJ;case ZLt:return ttt;case JLt:return ett;case tDt:return rtt}return t},"getTag"));lo=$d});function nDt(e){var t=e.length,r=new e.constructor(t);return t&&typeof e[0]=="string"&&rDt.call(e,"index")&&(r.index=e.index,r.input=e.input),r}var eDt,rDt,itt,att=R(()=>{"use strict";eDt=Object.prototype,rDt=eDt.hasOwnProperty;o(nDt,"initCloneArray");itt=nDt});function iDt(e,t){var r=t?om(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}var stt,ott=R(()=>{"use strict";k5();o(iDt,"cloneDataView");stt=iDt});function sDt(e){var t=new e.constructor(e.source,aDt.exec(e));return t.lastIndex=e.lastIndex,t}var aDt,ltt,ctt=R(()=>{"use strict";aDt=/\w*$/;o(sDt,"cloneRegExp");ltt=sDt});function oDt(e){return htt?Object(htt.call(e)):{}}var utt,htt,ftt,dtt=R(()=>{"use strict";kd();utt=ra?ra.prototype:void 0,htt=utt?utt.valueOf:void 0;o(oDt,"cloneSymbol");ftt=oDt});function ADt(e,t,r){var n=e.constructor;switch(t){case gDt:return om(e);case lDt:case cDt:return new n(+e);case yDt:return stt(e,r);case vDt:case xDt:case bDt:case wDt:case TDt:case kDt:case EDt:case CDt:case SDt:return E5(e,r);case uDt:return new n;case hDt:case pDt:return new n(e);case fDt:return ltt(e);case dDt:return new n;case mDt:return ftt(e)}}var lDt,cDt,uDt,hDt,fDt,dDt,pDt,mDt,gDt,yDt,vDt,xDt,bDt,wDt,TDt,kDt,EDt,CDt,SDt,ptt,mtt=R(()=>{"use strict";k5();ott();ctt();dtt();k9();lDt="[object Boolean]",cDt="[object Date]",uDt="[object Map]",hDt="[object Number]",fDt="[object RegExp]",dDt="[object Set]",pDt="[object String]",mDt="[object Symbol]",gDt="[object ArrayBuffer]",yDt="[object DataView]",vDt="[object Float32Array]",xDt="[object Float64Array]",bDt="[object Int8Array]",wDt="[object Int16Array]",TDt="[object Int32Array]",kDt="[object Uint8Array]",EDt="[object Uint8ClampedArray]",CDt="[object Uint16Array]",SDt="[object Uint32Array]";o(ADt,"initCloneByTag");ptt=ADt});function LDt(e){return ti(e)&&lo(e)==_Dt}var _Dt,gtt,ytt=R(()=>{"use strict";Gd();Po();_Dt="[object Map]";o(LDt,"baseIsMap");gtt=LDt});var vtt,DDt,xtt,btt=R(()=>{"use strict";ytt();Ad();vv();vtt=zo&&zo.isMap,DDt=vtt?Fo(vtt):gtt,xtt=DDt});function NDt(e){return ti(e)&&lo(e)==RDt}var RDt,wtt,Ttt=R(()=>{"use strict";Gd();Po();RDt="[object Set]";o(NDt,"baseIsSet");wtt=NDt});var ktt,MDt,Ett,Ctt=R(()=>{"use strict";Ttt();Ad();vv();ktt=zo&&zo.isSet,MDt=ktt?Fo(ktt):wtt,Ett=MDt});function dT(e,t,r,n,i,a){var s,l=t&IDt,u=t&ODt,h=t&PDt;if(r&&(s=i?r(e,n,i,a):r(e)),s!==void 0)return s;if(!xn(e))return e;var f=Le(e);if(f){if(s=itt(e),!l)return C5(e,s)}else{var d=lo(e),p=d==Att||d==GDt;if(Ll(e))return T5(e,l);if(d==_tt||d==Stt||p&&!i){if(s=u||p?{}:_5(e),!l)return u?jJ(e,HJ(s,e)):qJ(e,VJ(s,e))}else{if(!_n[d])return i?e:{};s=ptt(e,d,l)}}a||(a=new yc);var m=a.get(e);if(m)return m;a.set(e,s),Ett(e)?e.forEach(function(v){s.add(dT(v,t,r,v,e,a))}):xtt(e)&&e.forEach(function(v,x){s.set(x,dT(v,t,r,x,e,a))});var g=h?u?uT:e2:u?Es:$r,y=f?void 0:g(e);return jw(y||e,function(v,x){y&&(x=v,v=e[x]),bc(s,x,dT(v,t,r,x,e,a))}),s}var IDt,ODt,PDt,Stt,BDt,FDt,zDt,$Dt,Att,GDt,VDt,UDt,_tt,HDt,WDt,YDt,qDt,XDt,jDt,KDt,QDt,ZDt,JDt,tRt,eRt,rRt,nRt,iRt,aRt,_n,pT,bD=R(()=>{"use strict";mv();cD();dm();UJ();WJ();w9();E9();XJ();KJ();yD();vD();Gd();att();mtt();S9();Hn();fm();btt();eo();Ctt();Ac();$h();IDt=1,ODt=2,PDt=4,Stt="[object Arguments]",BDt="[object Array]",FDt="[object Boolean]",zDt="[object Date]",$Dt="[object Error]",Att="[object Function]",GDt="[object GeneratorFunction]",VDt="[object Map]",UDt="[object Number]",_tt="[object Object]",HDt="[object RegExp]",WDt="[object Set]",YDt="[object String]",qDt="[object Symbol]",XDt="[object WeakMap]",jDt="[object ArrayBuffer]",KDt="[object DataView]",QDt="[object Float32Array]",ZDt="[object Float64Array]",JDt="[object Int8Array]",tRt="[object Int16Array]",eRt="[object Int32Array]",rRt="[object Uint8Array]",nRt="[object Uint8ClampedArray]",iRt="[object Uint16Array]",aRt="[object Uint32Array]",_n={};_n[Stt]=_n[BDt]=_n[jDt]=_n[KDt]=_n[FDt]=_n[zDt]=_n[QDt]=_n[ZDt]=_n[JDt]=_n[tRt]=_n[eRt]=_n[VDt]=_n[UDt]=_n[_tt]=_n[HDt]=_n[WDt]=_n[YDt]=_n[qDt]=_n[rRt]=_n[nRt]=_n[iRt]=_n[aRt]=!0;_n[$Dt]=_n[Att]=_n[XDt]=!1;o(dT,"baseClone");pT=dT});function oRt(e){return pT(e,sRt)}var sRt,rn,wD=R(()=>{"use strict";bD();sRt=4;o(oRt,"clone");rn=oRt});function uRt(e){return pT(e,lRt|cRt)}var lRt,cRt,TD,Ltt=R(()=>{"use strict";bD();lRt=1,cRt=4;o(uRt,"cloneDeep");TD=uRt});function hRt(e){for(var t=-1,r=e==null?0:e.length,n=0,i=[];++t{"use strict";o(hRt,"compact");Dc=hRt});function dRt(e){return this.__data__.set(e,fRt),this}var fRt,Rtt,Ntt=R(()=>{"use strict";fRt="__lodash_hash_undefined__";o(dRt,"setCacheAdd");Rtt=dRt});function pRt(e){return this.__data__.has(e)}var Mtt,Itt=R(()=>{"use strict";o(pRt,"setCacheHas");Mtt=pRt});function mT(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new Cd;++t{"use strict";b5();Ntt();Itt();o(mT,"SetCache");mT.prototype.add=mT.prototype.push=Rtt;mT.prototype.has=Mtt;Um=mT});function mRt(e,t){for(var r=-1,n=e==null?0:e.length;++r{"use strict";o(mRt,"arraySome");yT=mRt});function gRt(e,t){return e.has(t)}var Hm,vT=R(()=>{"use strict";o(gRt,"cacheHas");Hm=gRt});function xRt(e,t,r,n,i,a){var s=r&yRt,l=e.length,u=t.length;if(l!=u&&!(s&&u>l))return!1;var h=a.get(e),f=a.get(t);if(h&&f)return h==t&&f==e;var d=-1,p=!0,m=r&vRt?new Um:void 0;for(a.set(e,t),a.set(t,e);++d{"use strict";gT();kD();vT();yRt=1,vRt=2;o(xRt,"equalArrays");xT=xRt});function bRt(e){var t=-1,r=Array(e.size);return e.forEach(function(n,i){r[++t]=[i,n]}),r}var Ott,Ptt=R(()=>{"use strict";o(bRt,"mapToArray");Ott=bRt});function wRt(e){var t=-1,r=Array(e.size);return e.forEach(function(n){r[++t]=n}),r}var Wm,bT=R(()=>{"use strict";o(wRt,"setToArray");Wm=wRt});function ORt(e,t,r,n,i,a,s){switch(r){case IRt:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case MRt:return!(e.byteLength!=t.byteLength||!a(new sm(e),new sm(t)));case ERt:case CRt:case _Rt:return Oo(+e,+t);case SRt:return e.name==t.name&&e.message==t.message;case LRt:case RRt:return e==t+"";case ARt:var l=Ott;case DRt:var u=n&TRt;if(l||(l=Wm),e.size!=t.size&&!u)return!1;var h=s.get(e);if(h)return h==t;n|=kRt,s.set(e,t);var f=xT(l(e),l(t),n,i,a,s);return s.delete(e),f;case NRt:if(CD)return CD.call(e)==CD.call(t)}return!1}var TRt,kRt,ERt,CRt,SRt,ARt,_Rt,LRt,DRt,RRt,NRt,MRt,IRt,Btt,CD,Ftt,ztt=R(()=>{"use strict";kd();T9();Ed();ED();Ptt();bT();TRt=1,kRt=2,ERt="[object Boolean]",CRt="[object Date]",SRt="[object Error]",ARt="[object Map]",_Rt="[object Number]",LRt="[object RegExp]",DRt="[object Set]",RRt="[object String]",NRt="[object Symbol]",MRt="[object ArrayBuffer]",IRt="[object DataView]",Btt=ra?ra.prototype:void 0,CD=Btt?Btt.valueOf:void 0;o(ORt,"equalByTag");Ftt=ORt});function zRt(e,t,r,n,i,a){var s=r&PRt,l=e2(e),u=l.length,h=e2(t),f=h.length;if(u!=f&&!s)return!1;for(var d=u;d--;){var p=l[d];if(!(s?p in t:FRt.call(t,p)))return!1}var m=a.get(e),g=a.get(t);if(m&&g)return m==t&&g==e;var y=!0;a.set(e,t),a.set(t,e);for(var v=s;++d{"use strict";yD();PRt=1,BRt=Object.prototype,FRt=BRt.hasOwnProperty;o(zRt,"equalObjects");$tt=zRt});function VRt(e,t,r,n,i,a){var s=Le(e),l=Le(t),u=s?Utt:lo(e),h=l?Utt:lo(t);u=u==Vtt?wT:u,h=h==Vtt?wT:h;var f=u==wT,d=h==wT,p=u==h;if(p&&Ll(e)){if(!Ll(t))return!1;s=!0,f=!1}if(p&&!f)return a||(a=new yc),s||Fh(e)?xT(e,t,r,n,i,a):Ftt(e,t,u,r,n,i,a);if(!(r&$Rt)){var m=f&&Htt.call(e,"__wrapped__"),g=d&&Htt.call(t,"__wrapped__");if(m||g){var y=m?e.value():e,v=g?t.value():t;return a||(a=new yc),i(y,v,r,n,a)}}return p?(a||(a=new yc),$tt(e,t,r,n,i,a)):!1}var $Rt,Vtt,Utt,wT,GRt,Htt,Wtt,Ytt=R(()=>{"use strict";mv();ED();ztt();Gtt();Gd();Hn();fm();xv();$Rt=1,Vtt="[object Arguments]",Utt="[object Array]",wT="[object Object]",GRt=Object.prototype,Htt=GRt.hasOwnProperty;o(VRt,"baseIsEqualDeep");Wtt=VRt});function qtt(e,t,r,n,i){return e===t?!0:e==null||t==null||!ti(e)&&!ti(t)?e!==e&&t!==t:Wtt(e,t,r,n,qtt,i)}var TT,SD=R(()=>{"use strict";Ytt();Po();o(qtt,"baseIsEqual");TT=qtt});function WRt(e,t,r,n){var i=r.length,a=i,s=!n;if(e==null)return!a;for(e=Object(e);i--;){var l=r[i];if(s&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++i{"use strict";mv();SD();URt=1,HRt=2;o(WRt,"baseIsMatch");Xtt=WRt});function YRt(e){return e===e&&!xn(e)}var kT,AD=R(()=>{"use strict";eo();o(YRt,"isStrictComparable");kT=YRt});function qRt(e){for(var t=$r(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,kT(i)]}return t}var Ktt,Qtt=R(()=>{"use strict";AD();Ac();o(qRt,"getMatchData");Ktt=qRt});function XRt(e,t){return function(r){return r==null?!1:r[e]===t&&(t!==void 0||e in Object(r))}}var ET,_D=R(()=>{"use strict";o(XRt,"matchesStrictComparable");ET=XRt});function jRt(e){var t=Ktt(e);return t.length==1&&t[0][2]?ET(t[0][0],t[0][1]):function(r){return r===e||Xtt(r,e,t)}}var Ztt,Jtt=R(()=>{"use strict";jtt();Qtt();_D();o(jRt,"baseMatches");Ztt=jRt});function KRt(e,t){return e!=null&&t in Object(e)}var tet,eet=R(()=>{"use strict";o(KRt,"baseHasIn");tet=KRt});function QRt(e,t,r){t=jh(t,e);for(var n=-1,i=t.length,a=!1;++n{"use strict";Jv();um();Hn();wv();L5();Fm();o(QRt,"hasPath");CT=QRt});function ZRt(e,t){return e!=null&&CT(e,t,tet)}var ST,DD=R(()=>{"use strict";eet();LD();o(ZRt,"hasIn");ST=ZRt});function eNt(e,t){return Bm(e)&&kT(t)?ET(_c(e),t):function(r){var n=DJ(r,e);return n===void 0&&n===t?ST(r,e):TT(t,n,JRt|tNt)}}var JRt,tNt,ret,net=R(()=>{"use strict";SD();RJ();DD();tT();AD();_D();Fm();JRt=1,tNt=2;o(eNt,"baseMatchesProperty");ret=eNt});function rNt(e){return function(t){return t?.[e]}}var AT,RD=R(()=>{"use strict";o(rNt,"baseProperty");AT=rNt});function nNt(e){return function(t){return Kh(t,e)}}var iet,aet=R(()=>{"use strict";t2();o(nNt,"basePropertyDeep");iet=nNt});function iNt(e){return Bm(e)?AT(_c(e)):iet(e)}var set,oet=R(()=>{"use strict";RD();aet();tT();Fm();o(iNt,"property");set=iNt});function aNt(e){return typeof e=="function"?e:e==null?na:typeof e=="object"?Le(e)?ret(e[0],e[1]):Ztt(e):set(e)}var dn,es=R(()=>{"use strict";Jtt();net();Du();Hn();oet();o(aNt,"baseIteratee");dn=aNt});function sNt(e,t,r,n){for(var i=-1,a=e==null?0:e.length;++i{"use strict";o(sNt,"arrayAggregator");cet=sNt});function oNt(e,t){return e&&am(e,t,$r)}var Ym,_T=R(()=>{"use strict";w5();Ac();o(oNt,"baseForOwn");Ym=oNt});function lNt(e,t){return function(r,n){if(r==null)return r;if(!oi(r))return e(r,n);for(var i=r.length,a=t?i:-1,s=Object(r);(t?a--:++a{"use strict";Bo();o(lNt,"createBaseEach");het=lNt});var cNt,Ms,Zh=R(()=>{"use strict";_T();fet();cNt=het(Ym),Ms=cNt});function uNt(e,t,r,n){return Ms(e,function(i,a,s){t(n,i,r(i),s)}),n}var det,pet=R(()=>{"use strict";Zh();o(uNt,"baseAggregator");det=uNt});function hNt(e,t){return function(r,n){var i=Le(r)?cet:det,a=t?t():{};return i(r,e,dn(n,2),a)}}var met,get=R(()=>{"use strict";uet();pet();es();Hn();o(hNt,"createAggregator");met=hNt});var fNt,LT,yet=R(()=>{"use strict";Io();fNt=o(function(){return si.Date.now()},"now"),LT=fNt});var vet,dNt,pNt,Jh,xet=R(()=>{"use strict";pm();Ed();Ld();$h();vet=Object.prototype,dNt=vet.hasOwnProperty,pNt=wc(function(e,t){e=Object(e);var r=-1,n=t.length,i=n>2?t[2]:void 0;for(i&&ro(t[0],t[1],i)&&(n=1);++r{"use strict";o(mNt,"arrayIncludesWith");DT=mNt});function yNt(e,t,r,n){var i=-1,a=Zw,s=!0,l=e.length,u=[],h=t.length;if(!l)return u;r&&(t=Ns(t,Fo(r))),n?(a=DT,s=!1):t.length>=gNt&&(a=Hm,s=!1,t=new Um(t));t:for(;++i{"use strict";gT();hD();ND();zd();Ad();vT();gNt=200;o(yNt,"baseDifference");bet=yNt});var vNt,tf,Tet=R(()=>{"use strict";wet();$m();pm();D5();vNt=wc(function(e,t){return Sd(e)?bet(e,Lc(t,1,Sd,!0)):[]}),tf=vNt});function xNt(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var xa,ket=R(()=>{"use strict";o(xNt,"last");xa=xNt});function bNt(e,t,r){var n=e==null?0:e.length;return n?(t=r||t===void 0?1:Sc(t),iT(e,t<0?0:t,n)):[]}var gi,Eet=R(()=>{"use strict";dD();Im();o(bNt,"drop");gi=bNt});function wNt(e,t,r){var n=e==null?0:e.length;return n?(t=r||t===void 0?1:Sc(t),t=n-t,iT(e,0,t<0?0:t)):[]}var Pu,Cet=R(()=>{"use strict";dD();Im();o(wNt,"dropRight");Pu=wNt});function TNt(e){return typeof e=="function"?e:na}var qm,RT=R(()=>{"use strict";Du();o(TNt,"castFunction");qm=TNt});function kNt(e,t){var r=Le(e)?jw:Ms;return r(e,qm(t))}var Et,NT=R(()=>{"use strict";cD();Zh();RT();Hn();o(kNt,"forEach");Et=kNt});var Aet=R(()=>{"use strict";NT()});function ENt(e,t){for(var r=-1,n=e==null?0:e.length;++r{"use strict";o(ENt,"arrayEvery");_et=ENt});function CNt(e,t){var r=!0;return Ms(e,function(n,i,a){return r=!!t(n,i,a),r}),r}var Det,Ret=R(()=>{"use strict";Zh();o(CNt,"baseEvery");Det=CNt});function SNt(e,t,r){var n=Le(e)?_et:Det;return r&&ro(e,t,r)&&(t=void 0),n(e,dn(t,3))}var za,Net=R(()=>{"use strict";Let();Ret();es();Hn();Ld();o(SNt,"every");za=SNt});function ANt(e,t){var r=[];return Ms(e,function(n,i,a){t(n,i,a)&&r.push(n)}),r}var MT,MD=R(()=>{"use strict";Zh();o(ANt,"baseFilter");MT=ANt});function _Nt(e,t){var r=Le(e)?Gm:MT;return r(e,dn(t,3))}var Yr,ID=R(()=>{"use strict";aT();MD();es();Hn();o(_Nt,"filter");Yr=_Nt});function LNt(e){return function(t,r,n){var i=Object(t);if(!oi(t)){var a=dn(r,3);t=$r(t),r=o(function(l){return a(i[l],l,i)},"predicate")}var s=e(t,r,n);return s>-1?i[a?t[s]:s]:void 0}}var Met,Iet=R(()=>{"use strict";es();Bo();Ac();o(LNt,"createFind");Met=LNt});function RNt(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var i=r==null?0:Sc(r);return i<0&&(i=DNt(n+i,0)),Kw(e,dn(t,3),i)}var DNt,Oet,Pet=R(()=>{"use strict";uD();es();Im();DNt=Math.max;o(RNt,"findIndex");Oet=RNt});var NNt,rs,Bet=R(()=>{"use strict";Iet();Pet();NNt=Met(Oet),rs=NNt});function MNt(e){return e&&e.length?e[0]:void 0}var aa,Fet=R(()=>{"use strict";o(MNt,"head");aa=MNt});var zet=R(()=>{"use strict";Fet()});function INt(e,t){var r=-1,n=oi(e)?Array(e.length):[];return Ms(e,function(i,a,s){n[++r]=t(i,a,s)}),n}var IT,OD=R(()=>{"use strict";Zh();Bo();o(INt,"baseMap");IT=INt});function ONt(e,t){var r=Le(e)?Ns:IT;return r(e,dn(t,3))}var Xt,Xm=R(()=>{"use strict";zd();es();OD();Hn();o(ONt,"map");Xt=ONt});function PNt(e,t){return Lc(Xt(e,t),1)}var ba,PD=R(()=>{"use strict";$m();Xm();o(PNt,"flatMap");ba=PNt});function BNt(e,t){return e==null?e:am(e,qm(t),Es)}var BD,$et=R(()=>{"use strict";w5();RT();$h();o(BNt,"forIn");BD=BNt});function FNt(e,t){return e&&Ym(e,qm(t))}var FD,Get=R(()=>{"use strict";_T();RT();o(FNt,"forOwn");FD=FNt});var zNt,$Nt,GNt,zD,Vet=R(()=>{"use strict";im();get();zNt=Object.prototype,$Nt=zNt.hasOwnProperty,GNt=met(function(e,t,r){$Nt.call(e,r)?e[r].push(t):vc(e,r,[t])}),zD=GNt});function VNt(e,t){return e>t}var Uet,Het=R(()=>{"use strict";o(VNt,"baseGt");Uet=VNt});function WNt(e,t){return e!=null&&HNt.call(e,t)}var UNt,HNt,Wet,Yet=R(()=>{"use strict";UNt=Object.prototype,HNt=UNt.hasOwnProperty;o(WNt,"baseHas");Wet=WNt});function YNt(e,t){return e!=null&&CT(e,t,Wet)}var jt,qet=R(()=>{"use strict";Yet();LD();o(YNt,"has");jt=YNt});function XNt(e){return typeof e=="string"||!Le(e)&&ti(e)&&ga(e)==qNt}var qNt,yi,OT=R(()=>{"use strict";Au();Hn();Po();qNt="[object String]";o(XNt,"isString");yi=XNt});function jNt(e,t){return Ns(t,function(r){return e[r]})}var Xet,jet=R(()=>{"use strict";zd();o(jNt,"baseValues");Xet=jNt});function KNt(e){return e==null?[]:Xet(e,$r(e))}var gr,$D=R(()=>{"use strict";jet();Ac();o(KNt,"values");gr=KNt});function ZNt(e,t,r,n){e=oi(e)?e:gr(e),r=r&&!n?Sc(r):0;var i=e.length;return r<0&&(r=QNt(i+r,0)),yi(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&Om(e,t,r)>-1}var QNt,Wn,Ket=R(()=>{"use strict";Qw();Bo();OT();Im();$D();QNt=Math.max;o(ZNt,"includes");Wn=ZNt});function tMt(e,t,r){var n=e==null?0:e.length;if(!n)return-1;var i=r==null?0:Sc(r);return i<0&&(i=JNt(n+i,0)),Om(e,t,i)}var JNt,PT,Qet=R(()=>{"use strict";Qw();Im();JNt=Math.max;o(tMt,"indexOf");PT=tMt});function aMt(e){if(e==null)return!0;if(oi(e)&&(Le(e)||typeof e=="string"||typeof e.splice=="function"||Ll(e)||Fh(e)||_l(e)))return!e.length;var t=lo(e);if(t==eMt||t==rMt)return!e.size;if(xc(e))return!Pm(e).length;for(var r in e)if(iMt.call(e,r))return!1;return!0}var eMt,rMt,nMt,iMt,cr,BT=R(()=>{"use strict";Jw();Gd();um();Hn();Bo();fm();cm();xv();eMt="[object Map]",rMt="[object Set]",nMt=Object.prototype,iMt=nMt.hasOwnProperty;o(aMt,"isEmpty");cr=aMt});function oMt(e){return ti(e)&&ga(e)==sMt}var sMt,Zet,Jet=R(()=>{"use strict";Au();Po();sMt="[object RegExp]";o(oMt,"baseIsRegExp");Zet=oMt});var trt,lMt,Uo,ert=R(()=>{"use strict";Jet();Ad();vv();trt=zo&&zo.isRegExp,lMt=trt?Fo(trt):Zet,Uo=lMt});function cMt(e){return e===void 0}var fr,rrt=R(()=>{"use strict";o(cMt,"isUndefined");fr=cMt});function uMt(e,t){return e{"use strict";o(uMt,"baseLt");FT=uMt});function hMt(e,t){var r={};return t=dn(t,3),Ym(e,function(n,i,a){vc(r,i,t(n,i,a))}),r}var Vd,nrt=R(()=>{"use strict";im();_T();es();o(hMt,"mapValues");Vd=hMt});function fMt(e,t,r){for(var n=-1,i=e.length;++n{"use strict";Fd();o(fMt,"baseExtremum");jm=fMt});function dMt(e){return e&&e.length?jm(e,na,Uet):void 0}var Is,irt=R(()=>{"use strict";zT();Het();Du();o(dMt,"max");Is=dMt});function pMt(e){return e&&e.length?jm(e,na,FT):void 0}var Il,VD=R(()=>{"use strict";zT();GD();Du();o(pMt,"min");Il=pMt});function mMt(e,t){return e&&e.length?jm(e,dn(t,2),FT):void 0}var Ud,art=R(()=>{"use strict";zT();es();GD();o(mMt,"minBy");Ud=mMt});function yMt(e){if(typeof e!="function")throw new TypeError(gMt);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}var gMt,srt,ort=R(()=>{"use strict";gMt="Expected a function";o(yMt,"negate");srt=yMt});function vMt(e,t,r,n){if(!xn(e))return e;t=jh(t,e);for(var i=-1,a=t.length,s=a-1,l=e;l!=null&&++i{"use strict";dm();Jv();wv();eo();Fm();o(vMt,"baseSet");lrt=vMt});function xMt(e,t,r){for(var n=-1,i=t.length,a={};++n{"use strict";t2();crt();Jv();o(xMt,"basePickBy");$T=xMt});function bMt(e,t){if(e==null)return{};var r=Ns(uT(e),function(n){return[n]});return t=dn(t),$T(e,r,function(n,i){return t(n,i[0])})}var Os,urt=R(()=>{"use strict";zd();es();UD();vD();o(bMt,"pickBy");Os=bMt});function wMt(e,t){var r=e.length;for(e.sort(t);r--;)e[r]=e[r].value;return e}var hrt,frt=R(()=>{"use strict";o(wMt,"baseSortBy");hrt=wMt});function TMt(e,t){if(e!==t){var r=e!==void 0,n=e===null,i=e===e,a=oo(e),s=t!==void 0,l=t===null,u=t===t,h=oo(t);if(!l&&!h&&!a&&e>t||a&&s&&u&&!l&&!h||n&&s&&u||!r&&u||!i)return 1;if(!n&&!a&&!h&&e{"use strict";Fd();o(TMt,"compareAscending");drt=TMt});function kMt(e,t,r){for(var n=-1,i=e.criteria,a=t.criteria,s=i.length,l=r.length;++n=l)return u;var h=r[n];return u*(h=="desc"?-1:1)}}return e.index-t.index}var mrt,grt=R(()=>{"use strict";prt();o(kMt,"compareMultiple");mrt=kMt});function EMt(e,t,r){t.length?t=Ns(t,function(a){return Le(a)?function(s){return Kh(s,a.length===1?a[0]:a)}:a}):t=[na];var n=-1;t=Ns(t,Fo(dn));var i=IT(e,function(a,s,l){var u=Ns(t,function(h){return h(a)});return{criteria:u,index:++n,value:a}});return hrt(i,function(a,s){return mrt(a,s,r)})}var yrt,vrt=R(()=>{"use strict";zd();t2();es();OD();frt();Ad();grt();Du();Hn();o(EMt,"baseOrderBy");yrt=EMt});var CMt,xrt,brt=R(()=>{"use strict";RD();CMt=AT("length"),xrt=CMt});function BMt(e){for(var t=wrt.lastIndex=0;wrt.test(e);)++t;return t}var Trt,SMt,AMt,_Mt,LMt,DMt,RMt,HD,WD,NMt,krt,Ert,Crt,MMt,Srt,Art,IMt,OMt,PMt,wrt,_rt,Lrt=R(()=>{"use strict";Trt="\\ud800-\\udfff",SMt="\\u0300-\\u036f",AMt="\\ufe20-\\ufe2f",_Mt="\\u20d0-\\u20ff",LMt=SMt+AMt+_Mt,DMt="\\ufe0e\\ufe0f",RMt="["+Trt+"]",HD="["+LMt+"]",WD="\\ud83c[\\udffb-\\udfff]",NMt="(?:"+HD+"|"+WD+")",krt="[^"+Trt+"]",Ert="(?:\\ud83c[\\udde6-\\uddff]){2}",Crt="[\\ud800-\\udbff][\\udc00-\\udfff]",MMt="\\u200d",Srt=NMt+"?",Art="["+DMt+"]?",IMt="(?:"+MMt+"(?:"+[krt,Ert,Crt].join("|")+")"+Art+Srt+")*",OMt=Art+Srt+IMt,PMt="(?:"+[krt+HD+"?",HD,Ert,Crt,RMt].join("|")+")",wrt=RegExp(WD+"(?="+WD+")|"+PMt+OMt,"g");o(BMt,"unicodeSize");_rt=BMt});function FMt(e){return FJ(e)?_rt(e):xrt(e)}var Drt,Rrt=R(()=>{"use strict";brt();zJ();Lrt();o(FMt,"stringSize");Drt=FMt});function zMt(e,t){return $T(e,t,function(r,n){return ST(e,n)})}var Nrt,Mrt=R(()=>{"use strict";UD();DD();o(zMt,"basePick");Nrt=zMt});var $Mt,Hd,Irt=R(()=>{"use strict";Mrt();BJ();$Mt=PJ(function(e,t){return e==null?{}:Nrt(e,t)}),Hd=$Mt});function UMt(e,t,r,n){for(var i=-1,a=VMt(GMt((t-e)/(r||1)),0),s=Array(a);a--;)s[n?a:++i]=e,e+=r;return s}var GMt,VMt,Ort,Prt=R(()=>{"use strict";GMt=Math.ceil,VMt=Math.max;o(UMt,"baseRange");Ort=UMt});function HMt(e){return function(t,r,n){return n&&typeof n!="number"&&ro(t,r,n)&&(r=n=void 0),t=Mm(t),r===void 0?(r=t,t=0):r=Mm(r),n=n===void 0?t{"use strict";Prt();Ld();oD();o(HMt,"createRange");Brt=HMt});var WMt,Ho,zrt=R(()=>{"use strict";Frt();WMt=Brt(),Ho=WMt});function YMt(e,t,r,n,i){return i(e,function(a,s,l){r=n?(n=!1,a):t(r,a,s,l)}),r}var $rt,Grt=R(()=>{"use strict";o(YMt,"baseReduce");$rt=YMt});function qMt(e,t,r){var n=Le(e)?$J:$rt,i=arguments.length<3;return n(e,dn(t,4),r,i,Ms)}var qr,YD=R(()=>{"use strict";GJ();Zh();es();Grt();Hn();o(qMt,"reduce");qr=qMt});function XMt(e,t){var r=Le(e)?Gm:MT;return r(e,srt(dn(t,3)))}var ef,Vrt=R(()=>{"use strict";aT();MD();es();Hn();ort();o(XMt,"reject");ef=XMt});function QMt(e){if(e==null)return 0;if(oi(e))return yi(e)?Drt(e):e.length;var t=lo(e);return t==jMt||t==KMt?e.size:Pm(e).length}var jMt,KMt,qD,Urt=R(()=>{"use strict";Jw();Gd();Bo();OT();Rrt();jMt="[object Map]",KMt="[object Set]";o(QMt,"size");qD=QMt});function ZMt(e,t){var r;return Ms(e,function(n,i,a){return r=t(n,i,a),!r}),!!r}var Hrt,Wrt=R(()=>{"use strict";Zh();o(ZMt,"baseSome");Hrt=ZMt});function JMt(e,t,r){var n=Le(e)?yT:Hrt;return r&&ro(e,t,r)&&(t=void 0),n(e,dn(t,3))}var r2,Yrt=R(()=>{"use strict";kD();es();Wrt();Hn();Ld();o(JMt,"some");r2=JMt});var tIt,Rc,qrt=R(()=>{"use strict";$m();vrt();pm();Ld();tIt=wc(function(e,t){if(e==null)return[];var r=t.length;return r>1&&ro(e,t[0],t[1])?t=[]:r>2&&ro(t[0],t[1],t[2])&&(t=[t[0]]),yrt(e,Lc(t,1),[])}),Rc=tIt});var eIt,rIt,Xrt,jrt=R(()=>{"use strict";xD();lD();bT();eIt=1/0,rIt=Qh&&1/Wm(new Qh([,-0]))[1]==eIt?function(e){return new Qh(e)}:ei,Xrt=rIt});function iIt(e,t,r){var n=-1,i=Zw,a=e.length,s=!0,l=[],u=l;if(r)s=!1,i=DT;else if(a>=nIt){var h=t?null:Xrt(e);if(h)return Wm(h);s=!1,i=Hm,u=new Um}else u=t?[]:l;t:for(;++n{"use strict";gT();hD();ND();vT();jrt();bT();nIt=200;o(iIt,"baseUniq");Km=iIt});var aIt,XD,Krt=R(()=>{"use strict";$m();pm();GT();D5();aIt=wc(function(e){return Km(Lc(e,1,Sd,!0))}),XD=aIt});function sIt(e){return e&&e.length?Km(e):[]}var Qm,Qrt=R(()=>{"use strict";GT();o(sIt,"uniq");Qm=sIt});function oIt(e,t){return e&&e.length?Km(e,dn(t,2)):[]}var Zrt,Jrt=R(()=>{"use strict";es();GT();o(oIt,"uniqBy");Zrt=oIt});function cIt(e){var t=++lIt;return eT(e)+t}var lIt,Wd,tnt=R(()=>{"use strict";fD();lIt=0;o(cIt,"uniqueId");Wd=cIt});function uIt(e,t,r){for(var n=-1,i=e.length,a=t.length,s={};++n{"use strict";o(uIt,"baseZipObject");ent=uIt});function hIt(e,t){return ent(e||[],t||[],bc)}var VT,nnt=R(()=>{"use strict";dm();rnt();o(hIt,"zipObject");VT=hIt});var Ve=R(()=>{"use strict";CJ();wD();Ltt();Dtt();N9();xet();Tet();Eet();Cet();Aet();Net();ID();Bet();zet();PD();nT();NT();$et();Get();Vet();qet();Du();Ket();Qet();Hn();BT();uv();eo();ert();OT();rrt();Ac();ket();Xm();nrt();irt();O9();VD();art();lD();yet();Irt();urt();zrt();YD();Vrt();Urt();Yrt();qrt();Krt();Qrt();tnt();$D();nnt();});function ant(e,t){e[t]?e[t]++:e[t]=1}function snt(e,t){--e[t]||delete e[t]}function n2(e,t,r,n){var i=""+t,a=""+r;if(!e&&i>a){var s=i;i=a,a=s}return i+int+a+int+(fr(n)?fIt:n)}function dIt(e,t,r,n){var i=""+t,a=""+r;if(!e&&i>a){var s=i;i=a,a=s}var l={v:i,w:a};return n&&(l.name=n),l}function jD(e,t){return n2(e,t.v,t.w,t.name)}var fIt,Yd,int,yr,UT=R(()=>{"use strict";Ve();fIt="\0",Yd="\0",int="",yr=class{static{o(this,"Graph")}constructor(t={}){this._isDirected=jt(t,"directed")?t.directed:!0,this._isMultigraph=jt(t,"multigraph")?t.multigraph:!1,this._isCompound=jt(t,"compound")?t.compound:!1,this._label=void 0,this._defaultNodeLabelFn=Cs(void 0),this._defaultEdgeLabelFn=Cs(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[Yd]={}),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(t){return this._label=t,this}graph(){return this._label}setDefaultNodeLabel(t){return Si(t)||(t=Cs(t)),this._defaultNodeLabelFn=t,this}nodeCount(){return this._nodeCount}nodes(){return $r(this._nodes)}sources(){var t=this;return Yr(this.nodes(),function(r){return cr(t._in[r])})}sinks(){var t=this;return Yr(this.nodes(),function(r){return cr(t._out[r])})}setNodes(t,r){var n=arguments,i=this;return Et(t,function(a){n.length>1?i.setNode(a,r):i.setNode(a)}),this}setNode(t,r){return jt(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=r),this):(this._nodes[t]=arguments.length>1?r:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=Yd,this._children[t]={},this._children[Yd][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)}node(t){return this._nodes[t]}hasNode(t){return jt(this._nodes,t)}removeNode(t){var r=this;if(jt(this._nodes,t)){var n=o(function(i){r.removeEdge(r._edgeObjs[i])},"removeEdge");delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],Et(this.children(t),function(i){r.setParent(i)}),delete this._children[t]),Et($r(this._in[t]),n),delete this._in[t],delete this._preds[t],Et($r(this._out[t]),n),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this}setParent(t,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(fr(r))r=Yd;else{r+="";for(var n=r;!fr(n);n=this.parent(n))if(n===t)throw new Error("Setting "+r+" as parent of "+t+" would create a cycle");this.setNode(r)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=r,this._children[r][t]=!0,this}_removeFromParentsChildList(t){delete this._children[this._parent[t]][t]}parent(t){if(this._isCompound){var r=this._parent[t];if(r!==Yd)return r}}children(t){if(fr(t)&&(t=Yd),this._isCompound){var r=this._children[t];if(r)return $r(r)}else{if(t===Yd)return this.nodes();if(this.hasNode(t))return[]}}predecessors(t){var r=this._preds[t];if(r)return $r(r)}successors(t){var r=this._sucs[t];if(r)return $r(r)}neighbors(t){var r=this.predecessors(t);if(r)return XD(r,this.successors(t))}isLeaf(t){var r;return this.isDirected()?r=this.successors(t):r=this.neighbors(t),r.length===0}filterNodes(t){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var n=this;Et(this._nodes,function(s,l){t(l)&&r.setNode(l,s)}),Et(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&&Et(r.nodes(),function(s){r.setParent(s,a(s))}),r}setDefaultEdgeLabel(t){return Si(t)||(t=Cs(t)),this._defaultEdgeLabelFn=t,this}edgeCount(){return this._edgeCount}edges(){return gr(this._edgeObjs)}setPath(t,r){var n=this,i=arguments;return qr(t,function(a,s){return i.length>1?n.setEdge(a,s,r):n.setEdge(a,s),s}),this}setEdge(){var t,r,n,i,a=!1,s=arguments[0];typeof s=="object"&&s!==null&&"v"in s?(t=s.v,r=s.w,n=s.name,arguments.length===2&&(i=arguments[1],a=!0)):(t=s,r=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),t=""+t,r=""+r,fr(n)||(n=""+n);var l=n2(this._isDirected,t,r,n);if(jt(this._edgeLabels,l))return a&&(this._edgeLabels[l]=i),this;if(!fr(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(r),this._edgeLabels[l]=a?i:this._defaultEdgeLabelFn(t,r,n);var u=dIt(this._isDirected,t,r,n);return t=u.v,r=u.w,Object.freeze(u),this._edgeObjs[l]=u,ant(this._preds[r],t),ant(this._sucs[t],r),this._in[r][l]=u,this._out[t][l]=u,this._edgeCount++,this}edge(t,r,n){var i=arguments.length===1?jD(this._isDirected,arguments[0]):n2(this._isDirected,t,r,n);return this._edgeLabels[i]}hasEdge(t,r,n){var i=arguments.length===1?jD(this._isDirected,arguments[0]):n2(this._isDirected,t,r,n);return jt(this._edgeLabels,i)}removeEdge(t,r,n){var i=arguments.length===1?jD(this._isDirected,arguments[0]):n2(this._isDirected,t,r,n),a=this._edgeObjs[i];return a&&(t=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],snt(this._preds[r],t),snt(this._sucs[t],r),delete this._in[r][i],delete this._out[t][i],this._edgeCount--),this}inEdges(t,r){var n=this._in[t];if(n){var i=gr(n);return r?Yr(i,function(a){return a.v===r}):i}}outEdges(t,r){var n=this._out[t];if(n){var i=gr(n);return r?Yr(i,function(a){return a.w===r}):i}}nodeEdges(t,r){var n=this.inEdges(t,r);if(n)return n.concat(this.outEdges(t,r))}};yr.prototype._nodeCount=0;yr.prototype._edgeCount=0;o(ant,"incrementOrInitEntry");o(snt,"decrementOrRemoveEntry");o(n2,"edgeArgsToId");o(dIt,"edgeArgsToObj");o(jD,"edgeObjToId")});var wa=R(()=>{"use strict";UT()});function ont(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function pIt(e,t){if(e!=="_next"&&e!=="_prev")return t}var HT,lnt=R(()=>{"use strict";HT=class{static{o(this,"List")}constructor(){var t={};t._next=t._prev=t,this._sentinel=t}dequeue(){var t=this._sentinel,r=t._prev;if(r!==t)return ont(r),r}enqueue(t){var r=this._sentinel;t._prev&&t._next&&ont(t),t._next=r._next,r._next._prev=t,r._next=t,t._prev=r}toString(){for(var t=[],r=this._sentinel,n=r._prev;n!==r;)t.push(JSON.stringify(n,pIt)),n=n._prev;return"["+t.join(", ")+"]"}};o(ont,"unlink");o(pIt,"filterOutLinks")});function cnt(e,t){if(e.nodeCount()<=1)return[];var r=yIt(e,t||mIt),n=gIt(r.graph,r.buckets,r.zeroIdx);return Wr(Xt(n,function(i){return e.outEdges(i.v,i.w)}))}function gIt(e,t,r){for(var n=[],i=t[t.length-1],a=t[0],s;e.nodeCount();){for(;s=a.dequeue();)KD(e,t,r,s);for(;s=i.dequeue();)KD(e,t,r,s);if(e.nodeCount()){for(var l=t.length-2;l>0;--l)if(s=t[l].dequeue(),s){n=n.concat(KD(e,t,r,s,!0));break}}}return n}function KD(e,t,r,n,i){var a=i?[]:void 0;return Et(e.inEdges(n.v),function(s){var l=e.edge(s),u=e.node(s.v);i&&a.push({v:s.v,w:s.w}),u.out-=l,QD(t,r,u)}),Et(e.outEdges(n.v),function(s){var l=e.edge(s),u=s.w,h=e.node(u);h.in-=l,QD(t,r,h)}),e.removeNode(n.v),a}function yIt(e,t){var r=new yr,n=0,i=0;Et(e.nodes(),function(l){r.setNode(l,{v:l,in:0,out:0})}),Et(e.edges(),function(l){var u=r.edge(l.v,l.w)||0,h=t(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=Ho(i+n+3).map(function(){return new HT}),s=n+1;return Et(r.nodes(),function(l){QD(a,s,r.node(l))}),{graph:r,buckets:a,zeroIdx:s}}function QD(e,t,r){r.out?r.in?e[r.out-r.in+t].enqueue(r):e[e.length-1].enqueue(r):e[0].enqueue(r)}var mIt,unt=R(()=>{"use strict";Ve();wa();lnt();mIt=Cs(1);o(cnt,"greedyFAS");o(gIt,"doGreedyFAS");o(KD,"removeNode");o(yIt,"buildState");o(QD,"assignBucket")});function hnt(e){var t=e.graph().acyclicer==="greedy"?cnt(e,r(e)):vIt(e);Et(t,function(n){var i=e.edge(n);e.removeEdge(n),i.forwardName=n.name,i.reversed=!0,e.setEdge(n.w,n.v,i,Wd("rev"))});function r(n){return function(i){return n.edge(i).weight}}o(r,"weightFn")}function vIt(e){var t=[],r={},n={};function i(a){jt(n,a)||(n[a]=!0,r[a]=!0,Et(e.outEdges(a),function(s){jt(r,s.w)?t.push(s):i(s.w)}),delete r[a])}return o(i,"dfs"),Et(e.nodes(),i),t}function fnt(e){Et(e.edges(),function(t){var r=e.edge(t);if(r.reversed){e.removeEdge(t);var n=r.forwardName;delete r.reversed,delete r.forwardName,e.setEdge(t.w,t.v,r,n)}})}var ZD=R(()=>{"use strict";Ve();unt();o(hnt,"run");o(vIt,"dfsFAS");o(fnt,"undo")});function Nc(e,t,r,n){var i;do i=Wd(n);while(e.hasNode(i));return r.dummy=t,e.setNode(i,r),i}function pnt(e){var t=new yr().setGraph(e.graph());return Et(e.nodes(),function(r){t.setNode(r,e.node(r))}),Et(e.edges(),function(r){var n=t.edge(r.v,r.w)||{weight:0,minlen:1},i=e.edge(r);t.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),t}function WT(e){var t=new yr({multigraph:e.isMultigraph()}).setGraph(e.graph());return Et(e.nodes(),function(r){e.children(r).length||t.setNode(r,e.node(r))}),Et(e.edges(),function(r){t.setEdge(r,e.edge(r))}),t}function JD(e,t){var r=e.x,n=e.y,i=t.x-r,a=t.y-n,s=e.width/2,l=e.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 rf(e){var t=Xt(Ho(eR(e)+1),function(){return[]});return Et(e.nodes(),function(r){var n=e.node(r),i=n.rank;fr(i)||(t[i][n.order]=r)}),t}function mnt(e){var t=Il(Xt(e.nodes(),function(r){return e.node(r).rank}));Et(e.nodes(),function(r){var n=e.node(r);jt(n,"rank")&&(n.rank-=t)})}function gnt(e){var t=Il(Xt(e.nodes(),function(a){return e.node(a).rank})),r=[];Et(e.nodes(),function(a){var s=e.node(a).rank-t;r[s]||(r[s]=[]),r[s].push(a)});var n=0,i=e.graph().nodeRankFactor;Et(r,function(a,s){fr(a)&&s%i!==0?--n:n&&Et(a,function(l){e.node(l).rank+=n})})}function tR(e,t,r,n){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),Nc(e,"border",i,t)}function eR(e){return Is(Xt(e.nodes(),function(t){var r=e.node(t).rank;if(!fr(r))return r}))}function ynt(e,t){var r={lhs:[],rhs:[]};return Et(e,function(n){t(n)?r.lhs.push(n):r.rhs.push(n)}),r}function vnt(e,t){var r=LT();try{return t()}finally{console.log(e+" time: "+(LT()-r)+"ms")}}function xnt(e,t){return t()}var Mc=R(()=>{"use strict";Ve();wa();o(Nc,"addDummyNode");o(pnt,"simplify");o(WT,"asNonCompoundGraph");o(JD,"intersectRect");o(rf,"buildLayerMatrix");o(mnt,"normalizeRanks");o(gnt,"removeEmptyRanks");o(tR,"addBorderNode");o(eR,"maxRank");o(ynt,"partition");o(vnt,"time");o(xnt,"notime")});function wnt(e){function t(r){var n=e.children(r),i=e.node(r);if(n.length&&Et(n,t),jt(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,s=i.maxRank+1;a{"use strict";Ve();Mc();o(wnt,"addBorderSegments");o(bnt,"addBorderNode")});function Ent(e){var t=e.graph().rankdir.toLowerCase();(t==="lr"||t==="rl")&&Snt(e)}function Cnt(e){var t=e.graph().rankdir.toLowerCase();(t==="bt"||t==="rl")&&xIt(e),(t==="lr"||t==="rl")&&(bIt(e),Snt(e))}function Snt(e){Et(e.nodes(),function(t){knt(e.node(t))}),Et(e.edges(),function(t){knt(e.edge(t))})}function knt(e){var t=e.width;e.width=e.height,e.height=t}function xIt(e){Et(e.nodes(),function(t){rR(e.node(t))}),Et(e.edges(),function(t){var r=e.edge(t);Et(r.points,rR),jt(r,"y")&&rR(r)})}function rR(e){e.y=-e.y}function bIt(e){Et(e.nodes(),function(t){nR(e.node(t))}),Et(e.edges(),function(t){var r=e.edge(t);Et(r.points,nR),jt(r,"x")&&nR(r)})}function nR(e){var t=e.x;e.x=e.y,e.y=t}var Ant=R(()=>{"use strict";Ve();o(Ent,"adjust");o(Cnt,"undo");o(Snt,"swapWidthHeight");o(knt,"swapWidthHeightOne");o(xIt,"reverseY");o(rR,"reverseYOne");o(bIt,"swapXY");o(nR,"swapXYOne")});function _nt(e){e.graph().dummyChains=[],Et(e.edges(),function(t){TIt(e,t)})}function TIt(e,t){var r=t.v,n=e.node(r).rank,i=t.w,a=e.node(i).rank,s=t.name,l=e.edge(t),u=l.labelRank;if(a!==n+1){e.removeEdge(t);var h,f,d;for(d=0,++n;n{"use strict";Ve();Mc();o(_nt,"run");o(TIt,"normalizeEdge");o(Lnt,"undo")});function i2(e){var t={};function r(n){var i=e.node(n);if(jt(t,n))return i.rank;t[n]=!0;var a=Il(Xt(e.outEdges(n),function(s){return r(s.w)-e.edge(s).minlen}));return(a===Number.POSITIVE_INFINITY||a===void 0||a===null)&&(a=0),i.rank=a}o(r,"dfs"),Et(e.sources(),r)}function qd(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var YT=R(()=>{"use strict";Ve();o(i2,"longestPath");o(qd,"slack")});function qT(e){var t=new yr({directed:!1}),r=e.nodes()[0],n=e.nodeCount();t.setNode(r,{});for(var i,a;kIt(t,e){"use strict";Ve();wa();YT();o(qT,"feasibleTree");o(kIt,"tightTree");o(EIt,"findMinSlackEdge");o(CIt,"shiftRanks")});var Rnt=R(()=>{"use strict"});var sR=R(()=>{"use strict"});var mWe,oR=R(()=>{"use strict";Ve();sR();mWe=Cs(1)});var Nnt=R(()=>{"use strict";oR()});var lR=R(()=>{"use strict"});var Mnt=R(()=>{"use strict";lR()});var SWe,Int=R(()=>{"use strict";Ve();SWe=Cs(1)});function cR(e){var t={},r={},n=[];function i(a){if(jt(r,a))throw new a2;jt(t,a)||(r[a]=!0,t[a]=!0,Et(e.predecessors(a),i),delete r[a],n.push(a))}if(o(i,"visit"),Et(e.sinks(),i),qD(t)!==e.nodeCount())throw new a2;return n}function a2(){}var uR=R(()=>{"use strict";Ve();cR.CycleException=a2;o(cR,"topsort");o(a2,"CycleException");a2.prototype=new Error});var Ont=R(()=>{"use strict";uR()});function XT(e,t,r){Le(t)||(t=[t]);var n=(e.isDirected()?e.successors:e.neighbors).bind(e),i=[],a={};return Et(t,function(s){if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);Pnt(e,s,r==="post",a,n,i)}),i}function Pnt(e,t,r,n,i,a){jt(n,t)||(n[t]=!0,r||a.push(t),Et(i(t),function(s){Pnt(e,s,r,n,i,a)}),r&&a.push(t))}var hR=R(()=>{"use strict";Ve();o(XT,"dfs");o(Pnt,"doDfs")});function fR(e,t){return XT(e,t,"post")}var Bnt=R(()=>{"use strict";hR();o(fR,"postorder")});function dR(e,t){return XT(e,t,"pre")}var Fnt=R(()=>{"use strict";hR();o(dR,"preorder")});var znt=R(()=>{"use strict";sR();UT()});var $nt=R(()=>{"use strict";Rnt();oR();Nnt();Mnt();Int();Ont();Bnt();Fnt();znt();lR();uR()});function af(e){e=pnt(e),i2(e);var t=qT(e);mR(t),pR(t,e);for(var r,n;r=Hnt(t);)n=Wnt(t,e,r),Ynt(t,e,r,n)}function pR(e,t){var r=fR(e,e.nodes());r=r.slice(0,r.length-1),Et(r,function(n){DIt(e,t,n)})}function DIt(e,t,r){var n=e.node(r),i=n.parent;e.edge(r,i).cutvalue=Vnt(e,t,r)}function Vnt(e,t,r){var n=e.node(r),i=n.parent,a=!0,s=t.edge(r,i),l=0;return s||(a=!1,s=t.edge(i,r)),l=s.weight,Et(t.nodeEdges(r),function(u){var h=u.v===r,f=h?u.w:u.v;if(f!==i){var d=h===a,p=t.edge(u).weight;if(l+=d?p:-p,NIt(e,r,f)){var m=e.edge(r,f).cutvalue;l+=d?-m:m}}}),l}function mR(e,t){arguments.length<2&&(t=e.nodes()[0]),Unt(e,{},1,t)}function Unt(e,t,r,n,i){var a=r,s=e.node(n);return t[n]=!0,Et(e.neighbors(n),function(l){jt(t,l)||(r=Unt(e,t,r,l,n))}),s.low=a,s.lim=r++,i?s.parent=i:delete s.parent,r}function Hnt(e){return rs(e.edges(),function(t){return e.edge(t).cutvalue<0})}function Wnt(e,t,r){var n=r.v,i=r.w;t.hasEdge(n,i)||(n=r.w,i=r.v);var a=e.node(n),s=e.node(i),l=a,u=!1;a.lim>s.lim&&(l=s,u=!0);var h=Yr(t.edges(),function(f){return u===Gnt(e,e.node(f.v),l)&&u!==Gnt(e,e.node(f.w),l)});return Ud(h,function(f){return qd(t,f)})}function Ynt(e,t,r,n){var i=r.v,a=r.w;e.removeEdge(i,a),e.setEdge(n.v,n.w,{}),mR(e),pR(e,t),RIt(e,t)}function RIt(e,t){var r=rs(e.nodes(),function(i){return!t.node(i).parent}),n=dR(e,r);n=n.slice(1),Et(n,function(i){var a=e.node(i).parent,s=t.edge(i,a),l=!1;s||(s=t.edge(a,i),l=!0),t.node(i).rank=t.node(a).rank+(l?s.minlen:-s.minlen)})}function NIt(e,t,r){return e.hasEdge(t,r)}function Gnt(e,t,r){return r.low<=t.lim&&t.lim<=r.lim}var qnt=R(()=>{"use strict";Ve();$nt();Mc();aR();YT();af.initLowLimValues=mR;af.initCutValues=pR;af.calcCutValue=Vnt;af.leaveEdge=Hnt;af.enterEdge=Wnt;af.exchangeEdges=Ynt;o(af,"networkSimplex");o(pR,"initCutValues");o(DIt,"assignCutValue");o(Vnt,"calcCutValue");o(mR,"initLowLimValues");o(Unt,"dfsAssignLowLim");o(Hnt,"leaveEdge");o(Wnt,"enterEdge");o(Ynt,"exchangeEdges");o(RIt,"updateRanks");o(NIt,"isTreeEdge");o(Gnt,"isDescendant")});function gR(e){switch(e.graph().ranker){case"network-simplex":Xnt(e);break;case"tight-tree":IIt(e);break;case"longest-path":MIt(e);break;default:Xnt(e)}}function IIt(e){i2(e),qT(e)}function Xnt(e){af(e)}var MIt,yR=R(()=>{"use strict";aR();qnt();YT();o(gR,"rank");MIt=i2;o(IIt,"tightTreeRanker");o(Xnt,"networkSimplexRanker")});function jnt(e){var t=Nc(e,"root",{},"_root"),r=OIt(e),n=Is(gr(r))-1,i=2*n+1;e.graph().nestingRoot=t,Et(e.edges(),function(s){e.edge(s).minlen*=i});var a=PIt(e)+1;Et(e.children(),function(s){Knt(e,t,i,a,n,r,s)}),e.graph().nodeRankFactor=i}function Knt(e,t,r,n,i,a,s){var l=e.children(s);if(!l.length){s!==t&&e.setEdge(t,s,{weight:0,minlen:r});return}var u=tR(e,"_bt"),h=tR(e,"_bb"),f=e.node(s);e.setParent(u,s),f.borderTop=u,e.setParent(h,s),f.borderBottom=h,Et(l,function(d){Knt(e,t,r,n,i,a,d);var p=e.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;e.setEdge(u,m,{weight:y,minlen:v,nestingEdge:!0}),e.setEdge(g,h,{weight:y,minlen:v,nestingEdge:!0})}),e.parent(s)||e.setEdge(t,u,{weight:0,minlen:i+a[s]})}function OIt(e){var t={};function r(n,i){var a=e.children(n);a&&a.length&&Et(a,function(s){r(s,i+1)}),t[n]=i}return o(r,"dfs"),Et(e.children(),function(n){r(n,1)}),t}function PIt(e){return qr(e.edges(),function(t,r){return t+e.edge(r).weight},0)}function Qnt(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,Et(e.edges(),function(r){var n=e.edge(r);n.nestingEdge&&e.removeEdge(r)})}var Znt=R(()=>{"use strict";Ve();Mc();o(jnt,"run");o(Knt,"dfs");o(OIt,"treeDepths");o(PIt,"sumWeights");o(Qnt,"cleanup")});function Jnt(e,t,r){var n={},i;Et(r,function(a){for(var s=e.parent(a),l,u;s;){if(l=e.parent(s),l?(u=n[l],n[l]=s):(u=i,i=s),u&&u!==s){t.setEdge(u,s);return}s=l}})}var tit=R(()=>{"use strict";Ve();o(Jnt,"addSubgraphConstraints")});function eit(e,t,r){var n=FIt(e),i=new yr({compound:!0}).setGraph({root:n}).setDefaultNodeLabel(function(a){return e.node(a)});return Et(e.nodes(),function(a){var s=e.node(a),l=e.parent(a);(s.rank===t||s.minRank<=t&&t<=s.maxRank)&&(i.setNode(a),i.setParent(a,l||n),Et(e[r](a),function(u){var h=u.v===a?u.w:u.v,f=i.edge(h,a),d=fr(f)?0:f.weight;i.setEdge(h,a,{weight:e.edge(u).weight+d})}),jt(s,"minRank")&&i.setNode(a,{borderLeft:s.borderLeft[t],borderRight:s.borderRight[t]}))}),i}function FIt(e){for(var t;e.hasNode(t=Wd("_root")););return t}var rit=R(()=>{"use strict";Ve();wa();o(eit,"buildLayerGraph");o(FIt,"createRootNode")});function nit(e,t){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 iit=R(()=>{"use strict";Ve();o(nit,"crossCount");o(zIt,"twoLayerCrossCount")});function ait(e){var t={},r=Yr(e.nodes(),function(l){return!e.children(l).length}),n=Is(Xt(r,function(l){return e.node(l).rank})),i=Xt(Ho(n+1),function(){return[]});function a(l){if(!jt(t,l)){t[l]=!0;var u=e.node(l);i[u.rank].push(l),Et(e.successors(l),a)}}o(a,"dfs");var s=Rc(r,function(l){return e.node(l).rank});return Et(s,a),i}var sit=R(()=>{"use strict";Ve();o(ait,"initOrder")});function oit(e,t){return Xt(t,function(r){var n=e.inEdges(r);if(n.length){var i=qr(n,function(a,s){var l=e.edge(s),u=e.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 lit=R(()=>{"use strict";Ve();o(oit,"barycenter")});function cit(e,t){var r={};Et(e,function(i,a){var s=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};fr(i.barycenter)||(s.barycenter=i.barycenter,s.weight=i.weight)}),Et(t.edges(),function(i){var a=r[i.v],s=r[i.w];!fr(a)&&!fr(s)&&(s.indegree++,a.out.push(r[i.w]))});var n=Yr(r,function(i){return!i.indegree});return $It(n)}function $It(e){var t=[];function r(a){return function(s){s.merged||(fr(s.barycenter)||fr(a.barycenter)||s.barycenter>=a.barycenter)&&GIt(a,s)}}o(r,"handleIn");function n(a){return function(s){s.in.push(a),--s.indegree===0&&e.push(s)}}for(o(n,"handleOut");e.length;){var i=e.pop();t.push(i),Et(i.in.reverse(),r(i)),Et(i.out,n(i))}return Xt(Yr(t,function(a){return!a.merged}),function(a){return Hd(a,["vs","i","barycenter","weight"])})}function GIt(e,t){var r=0,n=0;e.weight&&(r+=e.barycenter*e.weight,n+=e.weight),t.weight&&(r+=t.barycenter*t.weight,n+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=r/n,e.weight=n,e.i=Math.min(t.i,e.i),t.merged=!0}var uit=R(()=>{"use strict";Ve();o(cit,"resolveConflicts");o($It,"doResolveConflicts");o(GIt,"mergeEntries")});function fit(e,t){var r=ynt(e,function(f){return jt(f,"barycenter")}),n=r.lhs,i=Rc(r.rhs,function(f){return-f.i}),a=[],s=0,l=0,u=0;n.sort(VIt(!!t)),u=hit(a,i,u),Et(n,function(f){u+=f.vs.length,a.push(f.vs),s+=f.barycenter*f.weight,l+=f.weight,u=hit(a,i,u)});var h={vs:Wr(a)};return l&&(h.barycenter=s/l,h.weight=l),h}function hit(e,t,r){for(var n;t.length&&(n=xa(t)).i<=r;)t.pop(),e.push(n.vs),r++;return r}function VIt(e){return function(t,r){return t.barycenterr.barycenter?1:e?r.i-t.i:t.i-r.i}}var dit=R(()=>{"use strict";Ve();Mc();o(fit,"sort");o(hit,"consumeUnsortable");o(VIt,"compareWithBias")});function vR(e,t,r,n){var i=e.children(t),a=e.node(t),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=oit(e,i);Et(h,function(g){if(e.children(g.v).length){var y=vR(e,g.v,r,n);u[g.v]=y,jt(y,"barycenter")&&HIt(g,y)}});var f=cit(h,r);UIt(f,u);var d=fit(f,n);if(s&&(d.vs=Wr([s,d.vs,l]),e.predecessors(s).length)){var p=e.node(e.predecessors(s)[0]),m=e.node(e.predecessors(l)[0]);jt(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 UIt(e,t){Et(e,function(r){r.vs=Wr(r.vs.map(function(n){return t[n]?t[n].vs:n}))})}function HIt(e,t){fr(e.barycenter)?(e.barycenter=t.barycenter,e.weight=t.weight):(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight)}var pit=R(()=>{"use strict";Ve();lit();uit();dit();o(vR,"sortSubgraph");o(UIt,"expandSubgraphs");o(HIt,"mergeBarycenters")});function yit(e){var t=eR(e),r=mit(e,Ho(1,t+1),"inEdges"),n=mit(e,Ho(t-1,-1,-1),"outEdges"),i=ait(e);git(e,i);for(var a=Number.POSITIVE_INFINITY,s,l=0,u=0;u<4;++l,++u){WIt(l%2?r:n,l%4>=2),i=rf(e);var h=nit(e,i);h{"use strict";Ve();wa();Mc();tit();rit();iit();sit();pit();o(yit,"order");o(mit,"buildLayerGraphs");o(WIt,"sweepLayerGraphs");o(git,"assignOrder")});function xit(e){var t=qIt(e);Et(e.graph().dummyChains,function(r){for(var n=e.node(r),i=n.edgeObj,a=YIt(e,t,i.v,i.w),s=a.path,l=a.lca,u=0,h=s[u],f=!0;r!==i.w;){if(n=e.node(r),f){for(;(h=s[u])!==l&&e.node(h).maxRanks||l>t[u].lim));for(h=u,u=n;(u=e.parent(u))!==h;)a.push(u);return{path:i.concat(a.reverse()),lca:h}}function qIt(e){var t={},r=0;function n(i){var a=r;Et(e.children(i),n),t[i]={low:a,lim:r++}}return o(n,"dfs"),Et(e.children(),n),t}var bit=R(()=>{"use strict";Ve();o(xit,"parentDummyChains");o(YIt,"findPath");o(qIt,"postorder")});function XIt(e,t){var r={};function n(i,a){var s=0,l=0,u=i.length,h=xa(a);return Et(a,function(f,d){var p=KIt(e,f),m=p?e.node(p).order:u;(p||f===h)&&(Et(a.slice(l,d+1),function(g){Et(e.predecessors(g),function(y){var v=e.node(y),x=v.order;(xh)&&wit(r,p,f)})})}o(n,"scan");function i(a,s){var l=-1,u,h=0;return Et(s,function(f,d){if(e.node(f).dummy==="border"){var p=e.predecessors(f);p.length&&(u=e.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(t,i),r}function KIt(e,t){if(e.node(t).dummy)return rs(e.predecessors(t),function(r){return e.node(r).dummy})}function wit(e,t,r){if(t>r){var n=t;t=r,r=n}var i=e[t];i||(e[t]=i={}),i[r]=!0}function QIt(e,t,r){if(t>r){var n=t;t=r,r=n}return jt(e[t],r)}function ZIt(e,t,r,n){var i={},a={},s={};return Et(t,function(l){Et(l,function(u,h){i[u]=u,a[u]=u,s[u]=h})}),Et(t,function(l){var u=-1;Et(l,function(h){var f=n(h);if(f.length){f=Rc(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";Ve();wa();Mc();o(XIt,"findType1Conflicts");o(jIt,"findType2Conflicts");o(KIt,"findOtherInnerSegmentNode");o(wit,"addConflict");o(QIt,"hasConflict");o(ZIt,"verticalAlignment");o(JIt,"horizontalCompaction");o(tOt,"buildBlockGraph");o(eOt,"findSmallestWidthAlignment");o(rOt,"alignCoordinates");o(nOt,"balance");o(Tit,"positionX");o(iOt,"sep");o(aOt,"width")});function Eit(e){e=WT(e),sOt(e),FD(Tit(e),function(t,r){e.node(r).x=t})}function sOt(e){var t=rf(e),r=e.graph().ranksep,n=0;Et(t,function(i){var a=Is(Xt(i,function(s){return e.node(s).height}));Et(i,function(s){e.node(s).y=n+a/2}),n+=a+r})}var Cit=R(()=>{"use strict";Ve();Mc();kit();o(Eit,"position");o(sOt,"positionY")});function co(e,t){var r=t&&t.debugTiming?vnt:xnt;r("layout",function(){var n=r(" buildLayoutGraph",function(){return yOt(e)});r(" runLayout",function(){oOt(n,r)}),r(" updateInputGraph",function(){lOt(e,n)})})}function oOt(e,t){t(" makeSpaceForEdgeLabels",function(){vOt(e)}),t(" removeSelfEdges",function(){AOt(e)}),t(" acyclic",function(){hnt(e)}),t(" nestingGraph.run",function(){jnt(e)}),t(" rank",function(){gR(WT(e))}),t(" injectEdgeLabelProxies",function(){xOt(e)}),t(" removeEmptyRanks",function(){gnt(e)}),t(" nestingGraph.cleanup",function(){Qnt(e)}),t(" normalizeRanks",function(){mnt(e)}),t(" assignRankMinMax",function(){bOt(e)}),t(" removeEdgeLabelProxies",function(){wOt(e)}),t(" normalize.run",function(){_nt(e)}),t(" parentDummyChains",function(){xit(e)}),t(" addBorderSegments",function(){wnt(e)}),t(" order",function(){yit(e)}),t(" insertSelfEdges",function(){_Ot(e)}),t(" adjustCoordinateSystem",function(){Ent(e)}),t(" position",function(){Eit(e)}),t(" positionSelfEdges",function(){LOt(e)}),t(" removeBorderNodes",function(){SOt(e)}),t(" normalize.undo",function(){Lnt(e)}),t(" fixupEdgeLabelCoords",function(){EOt(e)}),t(" undoCoordinateSystem",function(){Cnt(e)}),t(" translateGraph",function(){TOt(e)}),t(" assignNodeIntersects",function(){kOt(e)}),t(" reversePoints",function(){COt(e)}),t(" acyclic.undo",function(){fnt(e)})}function lOt(e,t){Et(e.nodes(),function(r){var n=e.node(r),i=t.node(r);n&&(n.x=i.x,n.y=i.y,t.children(r).length&&(n.width=i.width,n.height=i.height))}),Et(e.edges(),function(r){var n=e.edge(r),i=t.edge(r);n.points=i.points,jt(i,"x")&&(n.x=i.x,n.y=i.y)}),e.graph().width=t.graph().width,e.graph().height=t.graph().height}function yOt(e){var t=new yr({multigraph:!0,compound:!0}),r=bR(e.graph());return t.setGraph(Gh({},uOt,xR(r,cOt),Hd(r,hOt))),Et(e.nodes(),function(n){var i=bR(e.node(n));t.setNode(n,Jh(xR(i,fOt),dOt)),t.setParent(n,e.parent(n))}),Et(e.edges(),function(n){var i=bR(e.edge(n));t.setEdge(n,Gh({},mOt,xR(i,pOt),Hd(i,gOt)))}),t}function vOt(e){var t=e.graph();t.ranksep/=2,Et(e.edges(),function(r){var n=e.edge(r);n.minlen*=2,n.labelpos.toLowerCase()!=="c"&&(t.rankdir==="TB"||t.rankdir==="BT"?n.width+=n.labeloffset:n.height+=n.labeloffset)})}function xOt(e){Et(e.edges(),function(t){var r=e.edge(t);if(r.width&&r.height){var n=e.node(t.v),i=e.node(t.w),a={rank:(i.rank-n.rank)/2+n.rank,e:t};Nc(e,"edge-proxy",a,"_ep")}})}function bOt(e){var t=0;Et(e.nodes(),function(r){var n=e.node(r);n.borderTop&&(n.minRank=e.node(n.borderTop).rank,n.maxRank=e.node(n.borderBottom).rank,t=Is(t,n.maxRank))}),e.graph().maxRank=t}function wOt(e){Et(e.nodes(),function(t){var r=e.node(t);r.dummy==="edge-proxy"&&(e.edge(r.e).labelRank=r.rank,e.removeNode(t))})}function TOt(e){var t=Number.POSITIVE_INFINITY,r=0,n=Number.POSITIVE_INFINITY,i=0,a=e.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;t=Math.min(t,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"),Et(e.nodes(),function(h){u(e.node(h))}),Et(e.edges(),function(h){var f=e.edge(h);jt(f,"x")&&u(f)}),t-=s,n-=l,Et(e.nodes(),function(h){var f=e.node(h);f.x-=t,f.y-=n}),Et(e.edges(),function(h){var f=e.edge(h);Et(f.points,function(d){d.x-=t,d.y-=n}),jt(f,"x")&&(f.x-=t),jt(f,"y")&&(f.y-=n)}),a.width=r-t+s,a.height=i-n+l}function kOt(e){Et(e.edges(),function(t){var r=e.edge(t),n=e.node(t.v),i=e.node(t.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(JD(n,a)),r.points.push(JD(i,s))})}function EOt(e){Et(e.edges(),function(t){var r=e.edge(t);if(jt(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 COt(e){Et(e.edges(),function(t){var r=e.edge(t);r.reversed&&r.points.reverse()})}function SOt(e){Et(e.nodes(),function(t){if(e.children(t).length){var r=e.node(t),n=e.node(r.borderTop),i=e.node(r.borderBottom),a=e.node(xa(r.borderLeft)),s=e.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}}),Et(e.nodes(),function(t){e.node(t).dummy==="border"&&e.removeNode(t)})}function AOt(e){Et(e.edges(),function(t){if(t.v===t.w){var r=e.node(t.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}})}function _Ot(e){var t=rf(e);Et(t,function(r){var n=0;Et(r,function(i,a){var s=e.node(i);s.order=a+n,Et(s.selfEdges,function(l){Nc(e,"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 LOt(e){Et(e.nodes(),function(t){var r=e.node(t);if(r.dummy==="selfedge"){var n=e.node(r.e.v),i=n.x+n.width/2,a=n.y,s=r.x-i,l=n.height/2;e.setEdge(r.e,r.label),e.removeNode(t),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 xR(e,t){return Vd(Hd(e,t),Number)}function bR(e){var t={};return Et(e,function(r,n){t[n.toLowerCase()]=r}),t}var cOt,uOt,hOt,fOt,dOt,pOt,mOt,gOt,Sit=R(()=>{"use strict";Ve();wa();Tnt();Ant();ZD();iR();yR();Znt();vit();bit();Cit();Mc();o(co,"layout");o(oOt,"runLayout");o(lOt,"updateInputGraph");cOt=["nodesep","edgesep","ranksep","marginx","marginy"],uOt={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},hOt=["acyclicer","ranker","rankdir","align"],fOt=["width","height"],dOt={width:0,height:0},pOt=["minlen","weight","width","height","labeloffset"],mOt={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},gOt=["labelpos"];o(yOt,"buildLayoutGraph");o(vOt,"makeSpaceForEdgeLabels");o(xOt,"injectEdgeLabelProxies");o(bOt,"assignRankMinMax");o(wOt,"removeEdgeLabelProxies");o(TOt,"translateGraph");o(kOt,"assignNodeIntersects");o(EOt,"fixupEdgeLabelCoords");o(COt,"reversePointsForReversedEdges");o(SOt,"removeBorderNodes");o(AOt,"removeSelfEdges");o(_Ot,"insertSelfEdges");o(LOt,"positionSelfEdges");o(xR,"selectNumberAttrs");o(bR,"canonicalize")});var Xd=R(()=>{"use strict";ZD();Sit();iR();yR()});function Yn(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:DOt(e),edges:ROt(e)};return fr(e.graph())||(t.value=rn(e.graph())),t}function DOt(e){return Xt(e.nodes(),function(t){var r=e.node(t),n=e.parent(t),i={v:t};return fr(r)||(i.value=r),fr(n)||(i.parent=n),i})}function ROt(e){return Xt(e.edges(),function(t){var r=e.edge(t),n={v:t.v,w:t.w};return fr(t.name)||(n.name=t.name),fr(r)||(n.value=r),n})}var s2=R(()=>{"use strict";Ve();UT();o(Yn,"write");o(DOt,"writeNodes");o(ROt,"writeEdges")});var vr,jd,_it,Lit,KT,NOt,Dit,Rit,MOt,Zm,Ait,Nit,Mit,Iit,Oit,Pit=R(()=>{"use strict";ce();wa();s2();vr=new Map,jd=new Map,_it=new Map,Lit=o(()=>{jd.clear(),_it.clear(),vr.clear()},"clear"),KT=o((e,t)=>{let r=jd.get(t)||[];return V.trace("In isDescendant",t," ",e," = ",r.includes(e)),r.includes(e)},"isDescendant"),NOt=o((e,t)=>{let r=jd.get(t)||[];return V.info("Descendants of ",t," is ",r),V.info("Edge is ",e),e.v===t||e.w===t?!1:r?r.includes(e.v)||KT(e.v,t)||KT(e.w,t)||r.includes(e.w):(V.debug("Tilt, ",t,",not in descendants"),!1)},"edgeInCluster"),Dit=o((e,t,r,n)=>{V.warn("Copying children of ",e,"root",n,"data",t.node(e),n);let i=t.children(e)||[];e!==n&&i.push(e),V.warn("Copying (nodes) clusterId",e,"nodes",i),i.forEach(a=>{if(t.children(a).length>0)Dit(a,t,r,n);else{let s=t.node(a);V.info("cp ",a," to ",n," with parent ",e),r.setNode(a,s),n!==t.parent(a)&&(V.warn("Setting parent",a,t.parent(a)),r.setParent(a,t.parent(a))),e!==n&&a!==e?(V.debug("Setting parent",a,e),r.setParent(a,e)):(V.info("In copy ",e,"root",n,"data",t.node(e),n),V.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==n,"node!==clusterId",a!==e));let l=t.edges(a);V.debug("Copying Edges",l),l.forEach(u=>{V.info("Edge",u);let h=t.edge(u.v,u.w,u.name);V.info("Edge data",h,n);try{NOt(u,n)?(V.info("Copying as ",u.v,u.w,h,u.name),r.setEdge(u.v,u.w,h,u.name),V.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):V.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",n," clusterId:",e)}catch(f){V.error(f)}})}V.debug("Removing node",a),t.removeNode(a)})},"copy"),Rit=o((e,t)=>{let r=t.children(e),n=[...r];for(let i of r)_it.set(i,e),n=[...n,...Rit(i,t)];return n},"extractDescendants"),MOt=o((e,t,r)=>{let n=e.edges().filter(u=>u.v===t||u.w===t),i=e.edges().filter(u=>u.v===r||u.w===r),a=n.map(u=>({v:u.v===t?r:u.v,w:u.w===t?t: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"),Zm=o((e,t,r)=>{let n=t.children(e);if(V.trace("Searching children of id ",e,n),n.length<1)return e;let i;for(let a of n){let s=Zm(a,t,r),l=MOt(t,r,s);if(s)if(l.length>0)i=s;else return s}return i},"findNonClusterChild"),Ait=o(e=>!vr.has(e)||!vr.get(e).externalConnections?e:vr.has(e)?vr.get(e).id:e,"getAnchorId"),Nit=o((e,t)=>{if(!e||t>10){V.debug("Opting out, no graph ");return}else V.debug("Opting in, graph ");e.nodes().forEach(function(r){e.children(r).length>0&&(V.warn("Cluster identified",r," Replacement id in edges: ",Zm(r,e,r)),jd.set(r,Rit(r,e)),vr.set(r,{id:Zm(r,e,r),clusterData:e.node(r)}))}),e.nodes().forEach(function(r){let n=e.children(r),i=e.edges();n.length>0?(V.debug("Cluster identified",r,jd),i.forEach(a=>{let s=KT(a.v,r),l=KT(a.w,r);s^l&&(V.warn("Edge: ",a," leaves cluster ",r),V.warn("Descendants of XXX ",r,": ",jd.get(r)),vr.get(r).externalConnections=!0)})):V.debug("Not a cluster ",r,jd)});for(let r of vr.keys()){let n=vr.get(r).id,i=e.parent(n);i!==r&&vr.has(i)&&!vr.get(i).externalConnections&&(vr.get(r).id=i)}e.edges().forEach(function(r){let n=e.edge(r);V.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),V.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(e.edge(r)));let i=r.v,a=r.w;if(V.warn("Fix XXX",vr,"ids:",r.v,r.w,"Translating: ",vr.get(r.v)," --- ",vr.get(r.w)),vr.get(r.v)||vr.get(r.w)){if(V.warn("Fixing and trying - removing XXX",r.v,r.w,r.name),i=Ait(r.v),a=Ait(r.w),e.removeEdge(r.v,r.w,r.name),i!==r.v){let s=e.parent(i);vr.get(s).externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){let s=e.parent(a);vr.get(s).externalConnections=!0,n.toCluster=r.w}V.warn("Fix Replacing with XXX",i,a,r.name),e.setEdge(i,a,n,r.name)}}),V.warn("Adjusted Graph",Yn(e)),Mit(e,0),V.trace(vr)},"adjustClustersAndEdges"),Mit=o((e,t)=>{if(V.warn("extractor - ",t,Yn(e),e.children("D")),t>10){V.error("Bailing out");return}let r=e.nodes(),n=!1;for(let i of r){let a=e.children(i);n=n||a.length>0}if(!n){V.debug("Done, no node has children",e.nodes());return}V.debug("Nodes = ",r,t);for(let i of r)if(V.debug("Extracting node",i,vr,vr.has(i)&&!vr.get(i).externalConnections,!e.parent(i),e.node(i),e.children("D")," Depth ",t),!vr.has(i))V.debug("Not a cluster",i,t);else if(!vr.get(i).externalConnections&&e.children(i)&&e.children(i).length>0){V.warn("Cluster without external connections, without a parent and with children",i,t);let s=e.graph().rankdir==="TB"?"LR":"TB";vr.get(i)?.clusterData?.dir&&(s=vr.get(i).clusterData.dir,V.warn("Fixing dir",vr.get(i).clusterData.dir,s));let l=new yr({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});V.warn("Old graph before copy",Yn(e)),Dit(i,e,l,i),e.setNode(i,{clusterNode:!0,id:i,clusterData:vr.get(i).clusterData,label:vr.get(i).label,graph:l}),V.warn("New graph after copy node: (",i,")",Yn(l)),V.debug("Old graph after copy",Yn(e))}else V.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!vr.get(i).externalConnections," no parent: ",!e.parent(i)," children ",e.children(i)&&e.children(i).length>0,e.children("D"),t),V.debug(vr);r=e.nodes(),V.warn("New list of nodes",r);for(let i of r){let a=e.node(i);V.warn(" Now next level",i,a),a?.clusterNode&&Mit(a.graph,t+1)}},"extractor"),Iit=o((e,t)=>{if(t.length===0)return[];let r=Object.assign([],t);return t.forEach(n=>{let i=e.children(n),a=Iit(e,i);r=[...r,...a]}),r},"sorter"),Oit=o(e=>Iit(e,e.children()),"sortNodesByHierarchy")});var Fit={};xr(Fit,{render:()=>IOt});var Bit,IOt,zit=R(()=>{"use strict";Xd();s2();wa();XL();Be();Pit();sD();WL();qL();ce();Nd();Ue();Bit=o(async(e,t,r,n,i,a)=>{V.warn("Graph in recursive render:XAX",Yn(t),i);let s=t.graph().rankdir;V.trace("Dir in recursive render - dir:",s);let l=e.insert("g").attr("class","root");t.nodes()?V.info("Recursive render XXX",t.nodes()):V.info("No nodes found for",t),t.edges().length>0&&V.info("Recursive edges",t.edge(t.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(t.nodes().map(async function(y){let v=t.node(y);if(i!==void 0){let x=JSON.parse(JSON.stringify(i.clusterData));V.trace(`Setting data for parent cluster XXX + Node.id = `,y,` + data=`,x.height,` +Parent cluster`,i.height),t.setNode(i.id,x),t.parent(y)||(V.trace("Setting parent",y,i.id),t.setParent(y,i.id,x))}if(V.info("(Insert) Node XXX"+y+": "+JSON.stringify(t.node(y))),v?.clusterNode){V.info("Cluster identified XBX",y,v.width,t.node(y));let{ranksep:x,nodesep:b}=t.graph();v.graph.setGraph({...v.graph.graph(),ranksep:x+25,nodesep:b});let w=await Bit(d,v.graph,r,n,t.node(y),a),S=w.elem;Qt(v,S),v.diff=w.diff||0,V.info("New compound node after recursive render XAX",y,"width",v.width,"height",v.height),eJ(S,v)}else t.children(y).length>0?(V.trace("Cluster - the non recursive path XBX",y,v.id,v,v.width,"Graph:",t),V.trace(Zm(v.id,t)),vr.set(v.id,{id:Zm(v.id,t),node:v})):(V.trace("Node - the non recursive path XAX",y,d,t.node(y),s),await qw(d,t.node(y),{config:a,dir:s}))})),await o(async()=>{let y=t.edges().map(async function(v){let x=t.edge(v.v,v.w,v.name);V.info("Edge "+v.v+" -> "+v.w+": "+JSON.stringify(v)),V.info("Edge "+v.v+" -> "+v.w+": ",v," ",JSON.stringify(t.edge(v))),V.info("Fix",vr,"ids:",v.v,v.w,"Translating: ",vr.get(v.v),vr.get(v.w)),await Tw(f,x)});await Promise.all(y)},"processEdges")(),V.info("Graph before layout:",JSON.stringify(Yn(t))),V.info("############################################# XXX"),V.info("### Layout ### XXX"),V.info("############################################# XXX"),co(t),V.info("Graph after layout:",JSON.stringify(Yn(t)));let m=0,{subGraphTitleTotalMargin:g}=io(a);return await Promise.all(Oit(t).map(async function(y){let v=t.node(y);if(V.info("Position XBX => "+y+": ("+v.x,","+v.y,") width: ",v.width," height: ",v.height),v?.clusterNode)v.y+=g,V.info("A tainted cluster node XBX1",y,v.id,v.width,v.height,v.x,v.y,t.parent(y)),vr.get(v.id).node=v,aD(v);else if(t.children(y).length>0){V.info("A pure cluster node XBX1",y,v.id,v.x,v.y,v.width,v.height,t.parent(y)),v.height+=g,t.node(v.parentId);let x=v?.padding/2||0,b=v?.labelBBox?.height||0,w=b-x||0;V.debug("OffsetY",w,"labelHeight",b,"halfPadding",x),await gw(u,v),vr.get(v.id).node=v}else{let x=t.node(v.parentId);v.y+=g/2,V.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),aD(v)}})),t.edges().forEach(function(y){let v=t.edge(y);V.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(v),v),v.points.forEach(S=>S.y+=g/2);let x=t.node(y.v);var b=t.node(y.w);let w=Ew(h,v,vr,r,x,b,n);kw(v,w)}),t.nodes().forEach(function(y){let v=t.node(y);V.info(y,v.type,v.diff),v.isGroup&&(m=v.diff)}),V.warn("Returning from recursive render XAX",l,m),{elem:l,diff:m}},"recursiveRender"),IOt=o(async(e,t)=>{let r=new yr({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.config?.flowchart?.nodeSpacing||e.nodeSpacing,ranksep:e.config?.rankSpacing||e.config?.flowchart?.rankSpacing||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),n=t.select("g");Cw(n,e.markers,e.type,e.diagramId),rJ(),_Q(),TQ(),Lit(),e.nodes.forEach(a=>{r.setNode(a.id,{...a}),a.parentId&&r.setParent(a.id,a.parentId)}),V.debug("Edges:",e.edges),e.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";iJ();ce();o2={},wR=o(e=>{for(let t of e)o2[t.name]=t},"registerLayoutLoaders"),OOt=o(()=>{wR([{name:"dagre",loader:o(async()=>await Promise.resolve().then(()=>(zit(),Fit)),"loader")}])},"registerDefaultLayoutLoaders");OOt();QT=o(async(e,t)=>{if(!(e.layoutAlgorithm in o2))throw new Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);let r=o2[e.layoutAlgorithm];return(await r.loader()).render(e,t,nJ,{algorithm:r.algorithm})},"render"),$it=o((e="",{fallback:t="dagre"}={})=>{if(e in o2)return e;if(t in o2)return V.warn(`Layout algorithm ${e} is not registered. Using ${t} as fallback.`),t;throw new Error(`Both layout algorithms ${e} and ${t} are not registered.`)},"getRegisteredLayoutAlgorithm")});var JT,POt,BOt,TR=R(()=>{"use strict";Jn();ce();JT=o((e,t,r,n)=>{e.attr("class",r);let{width:i,height:a,x:s,y:l}=POt(e,t);Pr(e,a,i,n);let u=BOt(s,l,i,a,t);e.attr("viewBox",u),V.debug(`viewBox configured: ${u} with padding: ${t}`)},"setupViewPortForSVG"),POt=o((e,t)=>{let r=e.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:r.width+t*2,height:r.height+t*2,x:r.x,y:r.y}},"calculateDimensionsWithPadding"),BOt=o((e,t,r,n,i)=>`${e-i} ${t-i} ${r} ${n}`,"createViewBox")});var FOt,zOt,Git,Vit=R(()=>{"use strict";ur();Ue();ce();pL();ZT();TR();_r();dL();FOt=o(function(e,t){return t.db.getClasses()},"getClasses"),zOt=o(async function(e,t,r,n){V.info("REF0:"),V.info("Drawing state diagram (v2)",t);let{securityLevel:i,flowchart:a,layout:s}=pt(),l;i==="sandbox"&&(l=Gt("#i"+t));let u=i==="sandbox"?l.nodes()[0].contentDocument:document;V.debug("Before getData: ");let h=n.db.getData();V.debug("Data: ",h);let f=rw(t,i),d=fL();h.type=n.type,h.layoutAlgorithm=$it(s),h.layoutAlgorithm==="dagre"&&s==="elk"&&V.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=t,V.debug("REF1:",h),await QT(h,f);let p=h.config.flowchart?.diagramPadding??8;Oe.insertTitle(f,"flowchartTitleText",a?.titleTopMargin||0,n.db.getDiagramTitle()),JT(f,p,"flowchart",a?.useMaxWidth||!1);for(let m of h.nodes){let g=Gt(`#${t} [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"),Git={getClasses:FOt,draw:zOt}});var kR,Uit,Hit=R(()=>{"use strict";kR=function(){var e=o(function(wi,Ae,Ie,we){for(Ie=Ie||{},we=wi.length;we--;Ie[wi[we]]=Ae);return Ie},"o"),t=[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],S=[1,33],T=[1,44],E=[1,46],_=[1,42],A=[1,47],L=[1,43],M=[1,50],N=[1,45],k=[1,51],I=[1,52],C=[1,34],O=[1,35],D=[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],Q=[8,9,11,75,77],j=[1,77],at=[1,90],X=[1,95],J=[1,94],Z=[1,91],H=[1,87],q=[1,93],K=[1,89],ot=[1,96],ct=[1,92],ut=[1,97],et=[1,88],Mt=[8,9,10,11,40,75,77],it=[8,9,10,11,40,46,75,77],wt=[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],Ot=[8,9,11,44,60,75,77,88,101,104,105,108,110,113,114,115],St=[44,60,88,101,104,105,108,110,113,114,115],Vt=[1,123],Pt=[1,122],_t=[1,130],dt=[1,144],Y=[1,145],ft=[1,146],mt=[1,147],rt=[1,132],ht=[1,134],nt=[1,138],st=[1,139],Tt=[1,140],kt=[1,141],Ct=[1,142],At=[1,143],$t=[1,148],Nt=[1,149],yt=[1,128],Ut=[1,129],zt=[1,136],ae=[1,131],ke=[1,135],Ee=[1,133],le=[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],Zt=[1,151],me=[1,153],Ht=[8,9,11],ne=[8,9,10,11,14,44,60,88,104,105,108,110,113,114,115],xe=[1,173],Se=[1,169],Ye=[1,170],fe=[1,174],ee=[1,171],pe=[1,172],Me=[77,115,118],oe=[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],qe=[10,105],Cr=[31,49,51,53,55,57,62,64,66,67,69,71,115,116,117],En=[1,242],or=[1,240],ln=[1,244],Ir=[1,238],ii=[1,239],mn=[1,241],Pn=[1,243],Sr=[1,245],pi=[1,263],ps=[8,9,11,105],Bn=[8,9,10,11,60,83,104,105,108,109,110,111],Eo={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(Ae,Ie,we,Wt,Fe,gt,gn){var vt=gt.length-1;switch(Fe){case 2:this.$=[];break;case 3:(!Array.isArray(gt[vt])||gt[vt].length>0)&>[vt-1].push(gt[vt]),this.$=gt[vt-1];break;case 4:case 181:this.$=gt[vt];break;case 11:Wt.setDirection("TB"),this.$="TB";break;case 12:Wt.setDirection(gt[vt-1]),this.$=gt[vt-1];break;case 27:this.$=gt[vt-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=Wt.addSubGraph(gt[vt-6],gt[vt-1],gt[vt-4]);break;case 34:this.$=Wt.addSubGraph(gt[vt-3],gt[vt-1],gt[vt-3]);break;case 35:this.$=Wt.addSubGraph(void 0,gt[vt-1],void 0);break;case 37:this.$=gt[vt].trim(),Wt.setAccTitle(this.$);break;case 38:case 39:this.$=gt[vt].trim(),Wt.setAccDescription(this.$);break;case 43:this.$=gt[vt-1]+gt[vt];break;case 44:this.$=gt[vt];break;case 45:Wt.addVertex(gt[vt-1][0],void 0,void 0,void 0,void 0,void 0,void 0,gt[vt]),Wt.addLink(gt[vt-3].stmt,gt[vt-1],gt[vt-2]),this.$={stmt:gt[vt-1],nodes:gt[vt-1].concat(gt[vt-3].nodes)};break;case 46:Wt.addLink(gt[vt-2].stmt,gt[vt],gt[vt-1]),this.$={stmt:gt[vt],nodes:gt[vt].concat(gt[vt-2].nodes)};break;case 47:Wt.addLink(gt[vt-3].stmt,gt[vt-1],gt[vt-2]),this.$={stmt:gt[vt-1],nodes:gt[vt-1].concat(gt[vt-3].nodes)};break;case 48:this.$={stmt:gt[vt-1],nodes:gt[vt-1]};break;case 49:Wt.addVertex(gt[vt-1][0],void 0,void 0,void 0,void 0,void 0,void 0,gt[vt]),this.$={stmt:gt[vt-1],nodes:gt[vt-1],shapeData:gt[vt]};break;case 50:this.$={stmt:gt[vt],nodes:gt[vt]};break;case 51:this.$=[gt[vt]];break;case 52:Wt.addVertex(gt[vt-5][0],void 0,void 0,void 0,void 0,void 0,void 0,gt[vt-4]),this.$=gt[vt-5].concat(gt[vt]);break;case 53:this.$=gt[vt-4].concat(gt[vt]);break;case 54:this.$=gt[vt];break;case 55:this.$=gt[vt-2],Wt.setClass(gt[vt-2],gt[vt]);break;case 56:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"square");break;case 57:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"doublecircle");break;case 58:this.$=gt[vt-5],Wt.addVertex(gt[vt-5],gt[vt-2],"circle");break;case 59:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"ellipse");break;case 60:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"stadium");break;case 61:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"subroutine");break;case 62:this.$=gt[vt-7],Wt.addVertex(gt[vt-7],gt[vt-1],"rect",void 0,void 0,void 0,Object.fromEntries([[gt[vt-5],gt[vt-3]]]));break;case 63:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"cylinder");break;case 64:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"round");break;case 65:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"diamond");break;case 66:this.$=gt[vt-5],Wt.addVertex(gt[vt-5],gt[vt-2],"hexagon");break;case 67:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"odd");break;case 68:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"trapezoid");break;case 69:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"inv_trapezoid");break;case 70:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"lean_right");break;case 71:this.$=gt[vt-3],Wt.addVertex(gt[vt-3],gt[vt-1],"lean_left");break;case 72:this.$=gt[vt],Wt.addVertex(gt[vt]);break;case 73:gt[vt-1].text=gt[vt],this.$=gt[vt-1];break;case 74:case 75:gt[vt-2].text=gt[vt-1],this.$=gt[vt-2];break;case 76:this.$=gt[vt];break;case 77:var qa=Wt.destructLink(gt[vt],gt[vt-2]);this.$={type:qa.type,stroke:qa.stroke,length:qa.length,text:gt[vt-1]};break;case 78:this.$={text:gt[vt],type:"text"};break;case 79:this.$={text:gt[vt-1].text+""+gt[vt],type:gt[vt-1].type};break;case 80:this.$={text:gt[vt],type:"string"};break;case 81:this.$={text:gt[vt],type:"markdown"};break;case 82:var qa=Wt.destructLink(gt[vt]);this.$={type:qa.type,stroke:qa.stroke,length:qa.length};break;case 83:this.$=gt[vt-1];break;case 84:this.$={text:gt[vt],type:"text"};break;case 85:this.$={text:gt[vt-1].text+""+gt[vt],type:gt[vt-1].type};break;case 86:this.$={text:gt[vt],type:"string"};break;case 87:case 102:this.$={text:gt[vt],type:"markdown"};break;case 99:this.$={text:gt[vt],type:"text"};break;case 100:this.$={text:gt[vt-1].text+""+gt[vt],type:gt[vt-1].type};break;case 101:this.$={text:gt[vt],type:"text"};break;case 103:this.$=gt[vt-4],Wt.addClass(gt[vt-2],gt[vt]);break;case 104:this.$=gt[vt-4],Wt.setClass(gt[vt-2],gt[vt]);break;case 105:case 113:this.$=gt[vt-1],Wt.setClickEvent(gt[vt-1],gt[vt]);break;case 106:case 114:this.$=gt[vt-3],Wt.setClickEvent(gt[vt-3],gt[vt-2]),Wt.setTooltip(gt[vt-3],gt[vt]);break;case 107:this.$=gt[vt-2],Wt.setClickEvent(gt[vt-2],gt[vt-1],gt[vt]);break;case 108:this.$=gt[vt-4],Wt.setClickEvent(gt[vt-4],gt[vt-3],gt[vt-2]),Wt.setTooltip(gt[vt-4],gt[vt]);break;case 109:this.$=gt[vt-2],Wt.setLink(gt[vt-2],gt[vt]);break;case 110:this.$=gt[vt-4],Wt.setLink(gt[vt-4],gt[vt-2]),Wt.setTooltip(gt[vt-4],gt[vt]);break;case 111:this.$=gt[vt-4],Wt.setLink(gt[vt-4],gt[vt-2],gt[vt]);break;case 112:this.$=gt[vt-6],Wt.setLink(gt[vt-6],gt[vt-4],gt[vt]),Wt.setTooltip(gt[vt-6],gt[vt-2]);break;case 115:this.$=gt[vt-1],Wt.setLink(gt[vt-1],gt[vt]);break;case 116:this.$=gt[vt-3],Wt.setLink(gt[vt-3],gt[vt-2]),Wt.setTooltip(gt[vt-3],gt[vt]);break;case 117:this.$=gt[vt-3],Wt.setLink(gt[vt-3],gt[vt-2],gt[vt]);break;case 118:this.$=gt[vt-5],Wt.setLink(gt[vt-5],gt[vt-4],gt[vt]),Wt.setTooltip(gt[vt-5],gt[vt-2]);break;case 119:this.$=gt[vt-4],Wt.addVertex(gt[vt-2],void 0,void 0,gt[vt]);break;case 120:this.$=gt[vt-4],Wt.updateLink([gt[vt-2]],gt[vt]);break;case 121:this.$=gt[vt-4],Wt.updateLink(gt[vt-2],gt[vt]);break;case 122:this.$=gt[vt-8],Wt.updateLinkInterpolate([gt[vt-6]],gt[vt-2]),Wt.updateLink([gt[vt-6]],gt[vt]);break;case 123:this.$=gt[vt-8],Wt.updateLinkInterpolate(gt[vt-6],gt[vt-2]),Wt.updateLink(gt[vt-6],gt[vt]);break;case 124:this.$=gt[vt-6],Wt.updateLinkInterpolate([gt[vt-4]],gt[vt]);break;case 125:this.$=gt[vt-6],Wt.updateLinkInterpolate(gt[vt-4],gt[vt]);break;case 126:case 128:this.$=[gt[vt]];break;case 127:case 129:gt[vt-2].push(gt[vt]),this.$=gt[vt-2];break;case 131:this.$=gt[vt-1]+gt[vt];break;case 179:this.$=gt[vt];break;case 180:this.$=gt[vt-1]+""+gt[vt];break;case 182:this.$=gt[vt-1]+""+gt[vt];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:t,10:r,12:n},{1:[3]},e(i,a,{5:6}),{4:7,9:t,10:r,12:n},{4:8,9:t,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:S,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I,120:C,121:O,122:D,123:P},e(i,[2,9]),e(i,[2,10]),e(i,[2,11]),{8:[1,54],9:[1,55],10:F,15:53,18:56},e(B,[2,3]),e(B,[2,4]),e(B,[2,5]),e(B,[2,6]),e(B,[2,7]),e(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},e(B,[2,36]),{35:[1,73]},{37:[1,74]},e(B,[2,39]),e(Q,[2,50],{18:75,39:76,10:F,40:j}),{10:[1,78]},{10:[1,79]},{10:[1,80]},{10:[1,81]},{14:at,44:X,60:J,79:[1,85],88:Z,94:[1,82],96:[1,83],100:84,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et,119:86},e(B,[2,183]),e(B,[2,184]),e(B,[2,185]),e(B,[2,186]),e(Mt,[2,51]),e(Mt,[2,54],{46:[1,98]}),e(it,[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:_,105:A,108:L,110:M,113:N,114:k,115:I}),e(wt,[2,179]),e(wt,[2,140]),e(wt,[2,141]),e(wt,[2,142]),e(wt,[2,143]),e(wt,[2,144]),e(wt,[2,145]),e(wt,[2,146]),e(wt,[2,147]),e(wt,[2,148]),e(wt,[2,149]),e(wt,[2,150]),e(i,[2,12]),e(i,[2,18]),e(i,[2,19]),{9:[1,112]},e(Ot,[2,26],{18:113,10:F}),e(B,[2,27]),{42:114,43:38,44:g,45:39,47:40,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},e(B,[2,40]),e(B,[2,41]),e(B,[2,42]),e(St,[2,76],{73:115,62:[1,117],74:[1,116]}),{76:118,78:119,79:[1,120],80:[1,121],115:Vt,118:Pt},e([44,60,62,74,88,101,104,105,108,110,113,114,115],[2,82]),e(B,[2,28]),e(B,[2,29]),e(B,[2,30]),e(B,[2,31]),e(B,[2,32]),{10:_t,12:dt,14:Y,27:ft,28:124,32:mt,44:rt,60:ht,75:nt,79:[1,126],80:[1,127],82:137,83:st,84:Tt,85:kt,86:Ct,87:At,88:$t,89:Nt,90:125,104:yt,108:Ut,110:zt,113:ae,114:ke,115:Ee},e(le,a,{5:150}),e(B,[2,37]),e(B,[2,38]),e(Q,[2,48],{44:Zt}),e(Q,[2,49],{18:152,10:F,40:me}),e(Mt,[2,44]),{44:g,47:154,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},{101:[1,155],102:156,104:[1,157]},{44:g,47:158,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},{44:g,47:159,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},e(Ht,[2,105],{10:[1,160],95:[1,161]}),{79:[1,162]},e(Ht,[2,113],{119:164,10:[1,163],14:at,44:X,60:J,88:Z,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et}),e(Ht,[2,115],{10:[1,165]}),e(ne,[2,181]),e(ne,[2,168]),e(ne,[2,169]),e(ne,[2,170]),e(ne,[2,171]),e(ne,[2,172]),e(ne,[2,173]),e(ne,[2,174]),e(ne,[2,175]),e(ne,[2,176]),e(ne,[2,177]),e(ne,[2,178]),{44:g,47:166,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},{30:167,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:175,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:177,50:[1,176],67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:178,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:179,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:180,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{108:[1,181]},{30:182,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:183,65:[1,184],67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:185,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:186,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{30:187,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},e(wt,[2,180]),e(i,[2,20]),e(Ot,[2,25]),e(Q,[2,46],{39:188,18:189,10:F,40:j}),e(St,[2,73],{10:[1,190]}),{10:[1,191]},{30:192,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{77:[1,193],78:194,115:Vt,118:Pt},e(Me,[2,78]),e(Me,[2,80]),e(Me,[2,81]),e(Me,[2,166]),e(Me,[2,167]),{8:G,9:z,10:_t,11:W,12:dt,14:Y,21:196,27:ft,29:[1,195],32:mt,44:rt,60:ht,75:nt,82:137,83:st,84:Tt,85:kt,86:Ct,87:At,88:$t,89:Nt,90:197,104:yt,108:Ut,110:zt,113:ae,114:ke,115:Ee},e(oe,[2,99]),e(oe,[2,101]),e(oe,[2,102]),e(oe,[2,155]),e(oe,[2,156]),e(oe,[2,157]),e(oe,[2,158]),e(oe,[2,159]),e(oe,[2,160]),e(oe,[2,161]),e(oe,[2,162]),e(oe,[2,163]),e(oe,[2,164]),e(oe,[2,165]),e(oe,[2,88]),e(oe,[2,89]),e(oe,[2,90]),e(oe,[2,91]),e(oe,[2,92]),e(oe,[2,93]),e(oe,[2,94]),e(oe,[2,95]),e(oe,[2,96]),e(oe,[2,97]),e(oe,[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:S,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I,120:C,121:O,122:D,123:P},{10:F,18:199},{44:[1,200]},e(Mt,[2,43]),{10:[1,201],44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:111,113:N,114:k,115:I},{10:[1,202]},{10:[1,203],105:[1,204]},e(qe,[2,126]),{10:[1,205],44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:111,113:N,114:k,115:I},{10:[1,206],44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:111,113:N,114:k,115:I},{79:[1,207]},e(Ht,[2,107],{10:[1,208]}),e(Ht,[2,109],{10:[1,209]}),{79:[1,210]},e(ne,[2,182]),{79:[1,211],97:[1,212]},e(Mt,[2,55],{112:111,44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,113:N,114:k,115:I}),{31:[1,213],67:xe,81:214,115:fe,116:ee,117:pe},e(Cr,[2,84]),e(Cr,[2,86]),e(Cr,[2,87]),e(Cr,[2,151]),e(Cr,[2,152]),e(Cr,[2,153]),e(Cr,[2,154]),{49:[1,215],67:xe,81:214,115:fe,116:ee,117:pe},{30:216,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{51:[1,217],67:xe,81:214,115:fe,116:ee,117:pe},{53:[1,218],67:xe,81:214,115:fe,116:ee,117:pe},{55:[1,219],67:xe,81:214,115:fe,116:ee,117:pe},{57:[1,220],67:xe,81:214,115:fe,116:ee,117:pe},{60:[1,221]},{64:[1,222],67:xe,81:214,115:fe,116:ee,117:pe},{66:[1,223],67:xe,81:214,115:fe,116:ee,117:pe},{30:224,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},{31:[1,225],67:xe,81:214,115:fe,116:ee,117:pe},{67:xe,69:[1,226],71:[1,227],81:214,115:fe,116:ee,117:pe},{67:xe,69:[1,229],71:[1,228],81:214,115:fe,116:ee,117:pe},e(Q,[2,45],{18:152,10:F,40:me}),e(Q,[2,47],{44:Zt}),e(St,[2,75]),e(St,[2,74]),{62:[1,230],67:xe,81:214,115:fe,116:ee,117:pe},e(St,[2,77]),e(Me,[2,79]),{30:231,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},e(le,a,{5:232}),e(oe,[2,100]),e(B,[2,35]),{43:233,44:g,45:39,47:40,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},{10:F,18:234},{10:En,60:or,83:ln,91:235,104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{10:En,60:or,83:ln,91:246,103:[1,247],104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{10:En,60:or,83:ln,91:248,103:[1,249],104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{104:[1,250]},{10:En,60:or,83:ln,91:251,104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{44:g,47:252,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},e(Ht,[2,106]),{79:[1,253]},{79:[1,254],97:[1,255]},e(Ht,[2,114]),e(Ht,[2,116],{10:[1,256]}),e(Ht,[2,117]),e(it,[2,56]),e(Cr,[2,85]),e(it,[2,57]),{51:[1,257],67:xe,81:214,115:fe,116:ee,117:pe},e(it,[2,64]),e(it,[2,59]),e(it,[2,60]),e(it,[2,61]),{108:[1,258]},e(it,[2,63]),e(it,[2,65]),{66:[1,259],67:xe,81:214,115:fe,116:ee,117:pe},e(it,[2,67]),e(it,[2,68]),e(it,[2,70]),e(it,[2,69]),e(it,[2,71]),e([10,44,60,88,101,104,105,108,110,113,114,115],[2,83]),{31:[1,260],67:xe,81:214,115:fe,116:ee,117:pe},{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:S,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I,120:C,121:O,122:D,123:P},e(Mt,[2,53]),{43:262,44:g,45:39,47:40,60:y,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I},e(Ht,[2,119],{105:pi}),e(ps,[2,128],{107:264,10:En,60:or,83:ln,104:Ir,108:ii,109:mn,110:Pn,111:Sr}),e(Bn,[2,130]),e(Bn,[2,132]),e(Bn,[2,133]),e(Bn,[2,134]),e(Bn,[2,135]),e(Bn,[2,136]),e(Bn,[2,137]),e(Bn,[2,138]),e(Bn,[2,139]),e(Ht,[2,120],{105:pi}),{10:[1,265]},e(Ht,[2,121],{105:pi}),{10:[1,266]},e(qe,[2,127]),e(Ht,[2,103],{105:pi}),e(Ht,[2,104],{112:111,44:g,60:y,88:T,101:E,104:_,105:A,108:L,110:M,113:N,114:k,115:I}),e(Ht,[2,108]),e(Ht,[2,110],{10:[1,267]}),e(Ht,[2,111]),{97:[1,268]},{51:[1,269]},{62:[1,270]},{66:[1,271]},{8:G,9:z,11:W,21:272},e(B,[2,34]),e(Mt,[2,52]),{10:En,60:or,83:ln,104:Ir,106:273,107:237,108:ii,109:mn,110:Pn,111:Sr},e(Bn,[2,131]),{14:at,44:X,60:J,88:Z,100:274,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et,119:86},{14:at,44:X,60:J,88:Z,100:275,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et,119:86},{97:[1,276]},e(Ht,[2,118]),e(it,[2,58]),{30:277,67:xe,79:Se,80:Ye,81:168,115:fe,116:ee,117:pe},e(it,[2,66]),e(le,a,{5:278}),e(ps,[2,129],{107:264,10:En,60:or,83:ln,104:Ir,108:ii,109:mn,110:Pn,111:Sr}),e(Ht,[2,124],{119:164,10:[1,279],14:at,44:X,60:J,88:Z,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et}),e(Ht,[2,125],{119:164,10:[1,280],14:at,44:X,60:J,88:Z,104:H,105:q,108:K,110:ot,113:ct,114:ut,115:et}),e(Ht,[2,112]),{31:[1,281],67:xe,81:214,115:fe,116:ee,117:pe},{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:S,88:T,101:E,104:_,105:A,108:L,110:M,112:41,113:N,114:k,115:I,120:C,121:O,122:D,123:P},{10:En,60:or,83:ln,91:283,104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},{10:En,60:or,83:ln,91:284,104:Ir,106:236,107:237,108:ii,109:mn,110:Pn,111:Sr},e(it,[2,62]),e(B,[2,33]),e(Ht,[2,122],{105:pi}),e(Ht,[2,123],{105:pi})],defaultActions:{},parseError:o(function(Ae,Ie){if(Ie.recoverable)this.trace(Ae);else{var we=new Error(Ae);throw we.hash=Ie,we}},"parseError"),parse:o(function(Ae){var Ie=this,we=[0],Wt=[],Fe=[null],gt=[],gn=this.table,vt="",qa=0,W1=0,Y1=0,q1=2,X1=1,lp=gt.slice.call(arguments,1),jn=Object.create(this.lexer),ca={yy:{}};for(var Zl in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Zl)&&(ca.yy[Zl]=this.yy[Zl]);jn.setInput(Ae,ca.yy),ca.yy.lexer=jn,ca.yy.parser=this,typeof jn.yylloc>"u"&&(jn.yylloc={});var Vf=jn.yylloc;gt.push(Vf);var j1=jn.options&&jn.options.ranges;typeof ca.yy.parseError=="function"?this.parseError=ca.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function mz(Xa){we.length=we.length-2*Xa,Fe.length=Fe.length-Xa,gt.length=gt.length-Xa}o(mz,"popStack");function Uf(){var Xa;return Xa=Wt.pop()||jn.lex()||X1,typeof Xa!="number"&&(Xa instanceof Array&&(Wt=Xa,Xa=Wt.pop()),Xa=Ie.symbols_[Xa]||Xa),Xa}o(Uf,"lex");for(var ua,K1,Cn,Ni,gz,cp,Jl={},Hf,Co,Kb,Wf;;){if(Cn=we[we.length-1],this.defaultActions[Cn]?Ni=this.defaultActions[Cn]:((ua===null||typeof ua>"u")&&(ua=Uf()),Ni=gn[Cn]&&gn[Cn][ua]),typeof Ni>"u"||!Ni.length||!Ni[0]){var up="";Wf=[];for(Hf in gn[Cn])this.terminals_[Hf]&&Hf>q1&&Wf.push("'"+this.terminals_[Hf]+"'");jn.showPosition?up="Parse error on line "+(qa+1)+`: +`+jn.showPosition()+` +Expecting `+Wf.join(", ")+", got '"+(this.terminals_[ua]||ua)+"'":up="Parse error on line "+(qa+1)+": Unexpected "+(ua==X1?"end of input":"'"+(this.terminals_[ua]||ua)+"'"),this.parseError(up,{text:jn.match,token:this.terminals_[ua]||ua,line:jn.yylineno,loc:Vf,expected:Wf})}if(Ni[0]instanceof Array&&Ni.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Cn+", token: "+ua);switch(Ni[0]){case 1:we.push(ua),Fe.push(jn.yytext),gt.push(jn.yylloc),we.push(Ni[1]),ua=null,K1?(ua=K1,K1=null):(W1=jn.yyleng,vt=jn.yytext,qa=jn.yylineno,Vf=jn.yylloc,Y1>0&&Y1--);break;case 2:if(Co=this.productions_[Ni[1]][1],Jl.$=Fe[Fe.length-Co],Jl._$={first_line:gt[gt.length-(Co||1)].first_line,last_line:gt[gt.length-1].last_line,first_column:gt[gt.length-(Co||1)].first_column,last_column:gt[gt.length-1].last_column},j1&&(Jl._$.range=[gt[gt.length-(Co||1)].range[0],gt[gt.length-1].range[1]]),cp=this.performAction.apply(Jl,[vt,W1,qa,ca.yy,Ni[1],Fe,gt].concat(lp)),typeof cp<"u")return cp;Co&&(we=we.slice(0,-1*Co*2),Fe=Fe.slice(0,-1*Co),gt=gt.slice(0,-1*Co)),we.push(this.productions_[Ni[1]][0]),Fe.push(Jl.$),gt.push(Jl._$),Kb=gn[we[we.length-2]][we[we.length-1]],we.push(Kb);break;case 3:return!0}}return!0},"parse")},cl=function(){var wi={EOF:1,parseError:o(function(Ie,we){if(this.yy.parser)this.yy.parser.parseError(Ie,we);else throw new Error(Ie)},"parseError"),setInput:o(function(Ae,Ie){return this.yy=Ie||this.yy||{},this._input=Ae,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 Ae=this._input[0];this.yytext+=Ae,this.yyleng++,this.offset++,this.match+=Ae,this.matched+=Ae;var Ie=Ae.match(/(?:\r\n?|\n).*/g);return Ie?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ae},"input"),unput:o(function(Ae){var Ie=Ae.length,we=Ae.split(/(?:\r\n?|\n)/g);this._input=Ae+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ie),this.offset-=Ie;var Wt=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),we.length-1&&(this.yylineno-=we.length-1);var Fe=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:we?(we.length===Wt.length?this.yylloc.first_column:0)+Wt[Wt.length-we.length].length-we[0].length:this.yylloc.first_column-Ie},this.options.ranges&&(this.yylloc.range=[Fe[0],Fe[0]+this.yyleng-Ie]),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(Ae){this.unput(this.match.slice(Ae))},"less"),pastInput:o(function(){var Ae=this.matched.substr(0,this.matched.length-this.match.length);return(Ae.length>20?"...":"")+Ae.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var Ae=this.match;return Ae.length<20&&(Ae+=this._input.substr(0,20-Ae.length)),(Ae.substr(0,20)+(Ae.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var Ae=this.pastInput(),Ie=new Array(Ae.length+1).join("-");return Ae+this.upcomingInput()+` +`+Ie+"^"},"showPosition"),test_match:o(function(Ae,Ie){var we,Wt,Fe;if(this.options.backtrack_lexer&&(Fe={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&&(Fe.yylloc.range=this.yylloc.range.slice(0))),Wt=Ae[0].match(/(?:\r\n?|\n).*/g),Wt&&(this.yylineno+=Wt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Wt?Wt[Wt.length-1].length-Wt[Wt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ae[0].length},this.yytext+=Ae[0],this.match+=Ae[0],this.matches=Ae,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(Ae[0].length),this.matched+=Ae[0],we=this.performAction.call(this,this.yy,this,Ie,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),we)return we;if(this._backtrack){for(var gt in Fe)this[gt]=Fe[gt];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ae,Ie,we,Wt;this._more||(this.yytext="",this.match="");for(var Fe=this._currentRules(),gt=0;gtIe[0].length)){if(Ie=we,Wt=gt,this.options.backtrack_lexer){if(Ae=this.test_match(we,Fe[gt]),Ae!==!1)return Ae;if(this._backtrack){Ie=!1;continue}else return!1}else if(!this.options.flex)break}return Ie?(Ae=this.test_match(Ie,Fe[Wt]),Ae!==!1?Ae:!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 Ie=this.next();return Ie||this.lex()},"lex"),begin:o(function(Ie){this.conditionStack.push(Ie)},"begin"),popState:o(function(){var Ie=this.conditionStack.length-1;return Ie>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(Ie){return Ie=this.conditionStack.length-1-Math.abs(Ie||0),Ie>=0?this.conditionStack[Ie]:"INITIAL"},"topState"),pushState:o(function(Ie){this.begin(Ie)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Ie,we,Wt,Fe){var gt=Fe;switch(Wt){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"),we.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 we.yytext=we.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 Ie.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return Ie.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return Ie.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 wi}();Eo.lexer=cl;function Fn(){this.yy={}}return o(Fn,"Parser"),Fn.prototype=Eo,Eo.Parser=Fn,new Fn}();kR.parser=kR;Uit=kR});var $Ot,GOt,Wit,Yit=R(()=>{"use strict";ul();$Ot=o((e,t)=>{let r=ay,n=r(e,"r"),i=r(e,"g"),a=r(e,"b");return Xs(n,i,a,t)},"fade"),GOt=o(e=>`.label { + font-family: ${e.fontFamily}; + color: ${e.nodeTextColor||e.textColor}; + } + .cluster-label text { + fill: ${e.titleColor}; + } + .cluster-label span { + color: ${e.titleColor}; + } + .cluster-label span p { + background-color: transparent; + } + + .label text,span { + fill: ${e.nodeTextColor||e.textColor}; + color: ${e.nodeTextColor||e.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${e.mainBkg}; + stroke: ${e.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: ${e.lineColor} !important; + stroke-width: 0; + stroke: ${e.lineColor}; + } + + .arrowheadPath { + fill: ${e.arrowheadColor}; + } + + .edgePath .path { + stroke: ${e.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${e.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${e.edgeLabelBackground}; + p { + background-color: ${e.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${e.edgeLabelBackground}; + fill: ${e.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${$Ot(e.edgeLabelBackground,.5)}; + // background-color: + } + + .cluster rect { + fill: ${e.clusterBkg}; + stroke: ${e.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${e.titleColor}; + } + + .cluster span { + color: ${e.titleColor}; + } + /* .cluster div { + color: ${e.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${e.fontFamily}; + font-size: 12px; + background: ${e.tertiaryColor}; + border: 1px solid ${e.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; + } + + rect.text { + fill: none; + stroke-width: 0; + } + + .icon-shape, .image-shape { + background-color: ${e.edgeLabelBackground}; + p { + background-color: ${e.edgeLabelBackground}; + padding: 2px; + } + rect { + opacity: 0.5; + background-color: ${e.edgeLabelBackground}; + fill: ${e.edgeLabelBackground}; + } + text-align: center; + } +`,"getStyles"),Wit=GOt});var tk={};xr(tk,{diagram:()=>VOt});var VOt,ek=R(()=>{"use strict";Ue();dL();Vit();Hit();Yit();VOt={parser:Uit,db:ew,renderer:Git,styles:Wit,init:o(e=>{e.flowchart||(e.flowchart={}),e.layout&&W7({layout:e.layout}),e.flowchart.arrowMarkerAbsolute=e.arrowMarkerAbsolute,W7({flowchart:{arrowMarkerAbsolute:e.arrowMarkerAbsolute}}),ew.clear(),ew.setGen("gen-2")},"init")}});var ER,Qit,Zit=R(()=>{"use strict";ER=function(){var e=o(function(A,L,M,N){for(M=M||{},N=A.length;N--;M[A[N]]=L);return M},"o"),t=[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],S=[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(L,M,N,k,I,C,O){var D=C.length-1;switch(I){case 1:break;case 2:this.$=[];break;case 3:C[D-1].push(C[D]),this.$=C[D-1];break;case 4:case 5:this.$=C[D];break;case 6:case 7:this.$=[];break;case 8:k.addEntity(C[D-4]),k.addEntity(C[D-2]),k.addRelationship(C[D-4],C[D],C[D-2],C[D-3]);break;case 9:k.addEntity(C[D-3]),k.addAttributes(C[D-3],C[D-1]);break;case 10:k.addEntity(C[D-2]);break;case 11:k.addEntity(C[D]);break;case 12:k.addEntity(C[D-6],C[D-4]),k.addAttributes(C[D-6],C[D-1]);break;case 13:k.addEntity(C[D-5],C[D-3]);break;case 14:k.addEntity(C[D-3],C[D-1]);break;case 15:case 16:this.$=C[D].trim(),k.setAccTitle(this.$);break;case 17:case 18:this.$=C[D].trim(),k.setAccDescription(this.$);break;case 19:case 43:this.$=C[D];break;case 20:case 41:case 42:this.$=C[D].replace(/"/g,"");break;case 21:case 29:this.$=[C[D]];break;case 22:C[D].push(C[D-1]),this.$=C[D];break;case 23:this.$={attributeType:C[D-1],attributeName:C[D]};break;case 24:this.$={attributeType:C[D-2],attributeName:C[D-1],attributeKeyTypeList:C[D]};break;case 25:this.$={attributeType:C[D-2],attributeName:C[D-1],attributeComment:C[D]};break;case 26:this.$={attributeType:C[D-3],attributeName:C[D-2],attributeKeyTypeList:C[D-1],attributeComment:C[D]};break;case 27:case 28:case 31:this.$=C[D];break;case 30:C[D-2].push(C[D]),this.$=C[D-2];break;case 32:this.$=C[D].replace(/"/g,"");break;case 33:this.$={cardA:C[D],relType:C[D-1],cardB:C[D-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]},e(t,[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},e(t,[2,7],{1:[2,1]}),e(t,[2,3]),{9:16,11:9,20:r,22:n,24:i,26:a,27:s,28:l},e(t,[2,5]),e(t,[2,6]),e(t,[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]},e(t,[2,18]),e(m,[2,19]),e(m,[2,20]),e(t,[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]},e(y,[2,34]),e(y,[2,35]),e(y,[2,36]),e(y,[2,37]),e(y,[2,38]),e(t,[2,15]),e(t,[2,16]),e(t,[2,17]),{13:[1,39]},{17:[1,40]},e(t,[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},e(v,[2,39]),e(v,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},e(t,[2,9]),{17:[2,22]},e(x,[2,23],{32:50,33:51,35:52,37:b,38:w}),e([17,34,37,38],[2,28]),e(t,[2,14],{15:[1,55]}),e([27,28],[2,33]),e(t,[2,8]),e(t,[2,41]),e(t,[2,42]),e(t,[2,43]),e(x,[2,24],{33:56,36:[1,57],38:w}),e(x,[2,25]),e(S,[2,29]),e(x,[2,32]),e(S,[2,31]),{16:58,17:[1,59],29:32,30:33,34:g},e(x,[2,26]),{35:60,37:b},{17:[1,61]},e(t,[2,13]),e(S,[2,30]),e(t,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:o(function(L,M){if(M.recoverable)this.trace(L);else{var N=new Error(L);throw N.hash=M,N}},"parseError"),parse:o(function(L){var M=this,N=[0],k=[],I=[null],C=[],O=this.table,D="",P=0,F=0,B=0,G=2,z=1,W=C.slice.call(arguments,1),Q=Object.create(this.lexer),j={yy:{}};for(var at in this.yy)Object.prototype.hasOwnProperty.call(this.yy,at)&&(j.yy[at]=this.yy[at]);Q.setInput(L,j.yy),j.yy.lexer=Q,j.yy.parser=this,typeof Q.yylloc>"u"&&(Q.yylloc={});var X=Q.yylloc;C.push(X);var J=Q.options&&Q.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Z(Pt){N.length=N.length-2*Pt,I.length=I.length-Pt,C.length=C.length-Pt}o(Z,"popStack");function H(){var Pt;return Pt=k.pop()||Q.lex()||z,typeof Pt!="number"&&(Pt instanceof Array&&(k=Pt,Pt=k.pop()),Pt=M.symbols_[Pt]||Pt),Pt}o(H,"lex");for(var q,K,ot,ct,ut,et,Mt={},it,wt,Ot,St;;){if(ot=N[N.length-1],this.defaultActions[ot]?ct=this.defaultActions[ot]:((q===null||typeof q>"u")&&(q=H()),ct=O[ot]&&O[ot][q]),typeof ct>"u"||!ct.length||!ct[0]){var Vt="";St=[];for(it in O[ot])this.terminals_[it]&&it>G&&St.push("'"+this.terminals_[it]+"'");Q.showPosition?Vt="Parse error on line "+(P+1)+`: +`+Q.showPosition()+` +Expecting `+St.join(", ")+", got '"+(this.terminals_[q]||q)+"'":Vt="Parse error on line "+(P+1)+": Unexpected "+(q==z?"end of input":"'"+(this.terminals_[q]||q)+"'"),this.parseError(Vt,{text:Q.match,token:this.terminals_[q]||q,line:Q.yylineno,loc:X,expected:St})}if(ct[0]instanceof Array&&ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ot+", token: "+q);switch(ct[0]){case 1:N.push(q),I.push(Q.yytext),C.push(Q.yylloc),N.push(ct[1]),q=null,K?(q=K,K=null):(F=Q.yyleng,D=Q.yytext,P=Q.yylineno,X=Q.yylloc,B>0&&B--);break;case 2:if(wt=this.productions_[ct[1]][1],Mt.$=I[I.length-wt],Mt._$={first_line:C[C.length-(wt||1)].first_line,last_line:C[C.length-1].last_line,first_column:C[C.length-(wt||1)].first_column,last_column:C[C.length-1].last_column},J&&(Mt._$.range=[C[C.length-(wt||1)].range[0],C[C.length-1].range[1]]),et=this.performAction.apply(Mt,[D,F,P,j.yy,ct[1],I,C].concat(W)),typeof et<"u")return et;wt&&(N=N.slice(0,-1*wt*2),I=I.slice(0,-1*wt),C=C.slice(0,-1*wt)),N.push(this.productions_[ct[1]][0]),I.push(Mt.$),C.push(Mt._$),Ot=O[N[N.length-2]][N[N.length-1]],N.push(Ot);break;case 3:return!0}}return!0},"parse")},E=function(){var A={EOF:1,parseError:o(function(M,N){if(this.yy.parser)this.yy.parser.parseError(M,N);else throw new Error(M)},"parseError"),setInput:o(function(L,M){return this.yy=M||this.yy||{},this._input=L,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 L=this._input[0];this.yytext+=L,this.yyleng++,this.offset++,this.match+=L,this.matched+=L;var M=L.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),L},"input"),unput:o(function(L){var M=L.length,N=L.split(/(?:\r\n?|\n)/g);this._input=L+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-M),this.offset-=M;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),N.length-1&&(this.yylineno-=N.length-1);var I=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:N?(N.length===k.length?this.yylloc.first_column:0)+k[k.length-N.length].length-N[0].length:this.yylloc.first_column-M},this.options.ranges&&(this.yylloc.range=[I[0],I[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(L){this.unput(this.match.slice(L))},"less"),pastInput:o(function(){var L=this.matched.substr(0,this.matched.length-this.match.length);return(L.length>20?"...":"")+L.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var L=this.match;return L.length<20&&(L+=this._input.substr(0,20-L.length)),(L.substr(0,20)+(L.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var L=this.pastInput(),M=new Array(L.length+1).join("-");return L+this.upcomingInput()+` +`+M+"^"},"showPosition"),test_match:o(function(L,M){var N,k,I;if(this.options.backtrack_lexer&&(I={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(I.yylloc.range=this.yylloc.range.slice(0))),k=L[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+L[0].length},this.yytext+=L[0],this.match+=L[0],this.matches=L,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(L[0].length),this.matched+=L[0],N=this.performAction.call(this,this.yy,this,M,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),N)return N;if(this._backtrack){for(var C in I)this[C]=I[C];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var L,M,N,k;this._more||(this.yytext="",this.match="");for(var I=this._currentRules(),C=0;CM[0].length)){if(M=N,k=C,this.options.backtrack_lexer){if(L=this.test_match(N,I[C]),L!==!1)return L;if(this._backtrack){M=!1;continue}else return!1}else if(!this.options.flex)break}return M?(L=this.test_match(M,I[k]),L!==!1?L:!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,N,k,I){var C=I;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 N.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 N.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 A}();T.lexer=E;function _(){this.yy={}}return o(_,"Parser"),_.prototype=T,T.Parser=_,new _}();ER.parser=ER;Qit=ER});var Kd,CR,jOt,KOt,Jit,QOt,ZOt,JOt,tPt,ePt,tat,eat=R(()=>{"use strict";ce();Ue();Ci();Kd=new Map,CR=[],jOt={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"},KOt={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},Jit=o(function(e,t=void 0){return Kd.has(e)?!Kd.get(e).alias&&t&&(Kd.get(e).alias=t,V.info(`Add alias '${t}' to entity '${e}'`)):(Kd.set(e,{attributes:[],alias:t}),V.info("Added new entity :",e)),Kd.get(e)},"addEntity"),QOt=o(()=>Kd,"getEntities"),ZOt=o(function(e,t){let r=Jit(e),n;for(n=t.length-1;n>=0;n--)r.attributes.push(t[n]),V.debug("Added attribute ",t[n].attributeName)},"addAttributes"),JOt=o(function(e,t,r,n){let i={entityA:e,roleA:t,entityB:r,relSpec:n};CR.push(i),V.debug("Added new relationship :",i)},"addRelationship"),tPt=o(()=>CR,"getRelationships"),ePt=o(function(){Kd=new Map,CR=[],Ar()},"clear"),tat={Cardinality:jOt,Identification:KOt,getConfig:o(()=>pt().er,"getConfig"),addEntity:Jit,addAttributes:ZOt,getEntities:QOt,addRelationship:JOt,getRelationships:tPt,clear:ePt,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,setDiagramTitle:cn,getDiagramTitle:Jr}});var Ol,rPt,Wo,rat=R(()=>{"use strict";Ol={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"},rPt=o(function(e,t){let r;e.append("defs").append("marker").attr("id",Ol.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"),e.append("defs").append("marker").attr("id",Ol.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"),e.append("defs").append("marker").attr("id",Ol.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),e.append("defs").append("marker").attr("id",Ol.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),r=e.append("defs").append("marker").attr("id",Ol.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",t.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),r.append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M9,0 L9,18"),r=e.append("defs").append("marker").attr("id",Ol.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),r.append("circle").attr("stroke",t.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),r.append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M21,0 L21,18"),e.append("defs").append("marker").attr("id",Ol.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),e.append("defs").append("marker").attr("id",Ol.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),r=e.append("defs").append("marker").attr("id",Ol.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",t.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),r.append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),r=e.append("defs").append("marker").attr("id",Ol.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),r.append("circle").attr("stroke",t.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),r.append("path").attr("stroke",t.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"insertMarkers"),Wo={ERMarkers:Ol,insertMarkers:rPt}});var nat,iat=R(()=>{"use strict";nat=/^(?:[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 nPt(e){return typeof e=="string"&&nat.test(e)}var aat,sat=R(()=>{"use strict";iat();o(nPt,"validate");aat=nPt});function oat(e,t=0){return Ta[e[t+0]]+Ta[e[t+1]]+Ta[e[t+2]]+Ta[e[t+3]]+"-"+Ta[e[t+4]]+Ta[e[t+5]]+"-"+Ta[e[t+6]]+Ta[e[t+7]]+"-"+Ta[e[t+8]]+Ta[e[t+9]]+"-"+Ta[e[t+10]]+Ta[e[t+11]]+Ta[e[t+12]]+Ta[e[t+13]]+Ta[e[t+14]]+Ta[e[t+15]]}var Ta,lat=R(()=>{"use strict";Ta=[];for(let e=0;e<256;++e)Ta.push((e+256).toString(16).slice(1));o(oat,"unsafeStringify")});function iPt(e){if(!aat(e))throw TypeError("Invalid UUID");let t,r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=t&255,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=t&255,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=t&255,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=t&255,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=t&255,r}var cat,uat=R(()=>{"use strict";sat();o(iPt,"parse");cat=iPt});function aPt(e){e=unescape(encodeURIComponent(e));let t=[];for(let r=0;r{"use strict";lat();uat();o(aPt,"stringToBytes");sPt="6ba7b810-9dad-11d1-80b4-00c04fd430c8",oPt="6ba7b811-9dad-11d1-80b4-00c04fd430c8";o(SR,"v35")});function lPt(e,t,r,n){switch(e){case 0:return t&r^~t&n;case 1:return t^r^n;case 2:return t&r^t&n^r&n;case 3:return t^r^n}}function AR(e,t){return e<>>32-t}function cPt(e){let t=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof e=="string"){let s=unescape(encodeURIComponent(e));e=[];for(let l=0;l>>0;p=d,d=f,f=AR(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 fat,dat=R(()=>{"use strict";o(lPt,"f");o(AR,"ROTL");o(cPt,"sha1");fat=cPt});var uPt,_R,pat=R(()=>{"use strict";hat();dat();uPt=SR("v5",80,fat),_R=uPt});var mat=R(()=>{"use strict";pat()});function bPt(e="",t=""){let r=e.replace(hPt,"");return`${yat(t)}${yat(r)}${_R(e,xPt)}`}function yat(e=""){return e.length>0?`${e}-`:""}var hPt,zi,l2,fPt,dPt,pPt,mPt,vat,gPt,gat,yPt,vPt,xPt,xat,bat=R(()=>{"use strict";wa();ur();Xd();Ue();ce();_r();rat();Jn();hr();mat();hPt=/[^\dA-Za-z](\W)*/g,zi={},l2=new Map,fPt=o(function(e){let t=Object.keys(e);for(let r of t)zi[r]=e[r]},"setConf"),dPt=o((e,t,r)=>{let n=zi.entityPadding/3,i=zi.entityPadding/3,a=zi.fontSize*.85,s=t.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 S=`${t.node().id}-attr-${y}`,T=0,E=yh(w.attributeType),_=e.append("text").classed("er entityLabel",!0).attr("id",`${S}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",pt().fontFamily).style("font-size",a+"px").text(E),A=e.append("text").classed("er entityLabel",!0).attr("id",`${S}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",pt().fontFamily).style("font-size",a+"px").text(w.attributeName),L={};L.tn=_,L.nn=A;let M=_.node().getBBox(),N=A.node().getBBox();if(f=Math.max(f,M.width),d=Math.max(d,N.width),T=Math.max(M.height,N.height),u){let k=w.attributeKeyTypeList!==void 0?w.attributeKeyTypeList.join(","):"",I=e.append("text").classed("er entityLabel",!0).attr("id",`${S}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",pt().fontFamily).style("font-size",a+"px").text(k);L.kn=I;let C=I.node().getBBox();p=Math.max(p,C.width),T=Math.max(T,C.height)}if(h){let k=e.append("text").classed("er entityLabel",!0).attr("id",`${S}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",pt().fontFamily).style("font-size",a+"px").text(w.attributeComment||"");L.cn=k;let I=k.node().getBBox();m=Math.max(m,I.width),T=Math.max(T,I.height)}L.height=T,l.push(L),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(zi.minEntityWidth,Math.max(s.width+zi.entityPadding*2,x+i*v)),height:r.length>0?g:Math.max(zi.minEntityHeight,s.height+zi.entityPadding*2)};if(r.length>0){let w=Math.max(0,(b.width-x-i*v)/(v/2));t.attr("transform","translate("+b.width/2+","+(n+s.height/2)+")");let S=s.height+n*2,T="attributeBoxOdd";l.forEach(E=>{let _=S+n+E.height/2;E.tn.attr("transform","translate("+i+","+_+")");let A=e.insert("rect","#"+E.tn.node().id).classed(`er ${T}`,!0).attr("x",0).attr("y",S).attr("width",f+i*2+w).attr("height",E.height+n*2),L=parseFloat(A.attr("x"))+parseFloat(A.attr("width"));E.nn.attr("transform","translate("+(L+i)+","+_+")");let M=e.insert("rect","#"+E.nn.node().id).classed(`er ${T}`,!0).attr("x",L).attr("y",S).attr("width",d+i*2+w).attr("height",E.height+n*2),N=parseFloat(M.attr("x"))+parseFloat(M.attr("width"));if(u){E.kn.attr("transform","translate("+(N+i)+","+_+")");let k=e.insert("rect","#"+E.kn.node().id).classed(`er ${T}`,!0).attr("x",N).attr("y",S).attr("width",p+i*2+w).attr("height",E.height+n*2);N=parseFloat(k.attr("x"))+parseFloat(k.attr("width"))}h&&(E.cn.attr("transform","translate("+(N+i)+","+_+")"),e.insert("rect","#"+E.cn.node().id).classed(`er ${T}`,"true").attr("x",N).attr("y",S).attr("width",m+i*2+w).attr("height",E.height+n*2)),S+=E.height+n*2,T=T==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else b.height=Math.max(zi.minEntityHeight,g),t.attr("transform","translate("+b.width/2+","+b.height/2+")");return b},"drawAttributes"),pPt=o(function(e,t,r){let n=[...t.keys()],i;return n.forEach(function(a){let s=bPt(a,"entity");l2.set(a,s);let l=e.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",pt().fontFamily).style("font-size",zi.fontSize+"px").text(t.get(a).alias??a),{width:f,height:d}=dPt(l,h,t.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"),mPt=o(function(e,t){t.nodes().forEach(function(r){r!==void 0&&t.node(r)!==void 0&&e.select("#"+r).attr("transform","translate("+(t.node(r).x-t.node(r).width/2)+","+(t.node(r).y-t.node(r).height/2)+" )")})},"adjustEntities"),vat=o(function(e){return(e.entityA+e.roleA+e.entityB).replace(/\s/g,"")},"getEdgeName"),gPt=o(function(e,t){return e.forEach(function(r){t.setEdge(l2.get(r.entityA),l2.get(r.entityB),{relationship:r},vat(r))}),e},"addRelationships"),gat=0,yPt=o(function(e,t,r,n,i){gat++;let a=r.edge(l2.get(t.entityA),l2.get(t.entityB),vat(t)),s=ma().x(function(y){return y.x}).y(function(y){return y.y}).curve(Ts),l=e.insert("path","#"+n).classed("er relationshipLine",!0).attr("d",s(a.points)).style("stroke",zi.stroke).style("fill","none");t.relSpec.relType===i.db.Identification.NON_IDENTIFYING&&l.attr("stroke-dasharray","8,8");let u="";switch(zi.arrowMarkerAbsolute&&(u=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,u=u.replace(/\(/g,"\\("),u=u.replace(/\)/g,"\\)")),t.relSpec.cardA){case i.db.Cardinality.ZERO_OR_ONE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ZERO_OR_ONE_END+")");break;case i.db.Cardinality.ZERO_OR_MORE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ZERO_OR_MORE_END+")");break;case i.db.Cardinality.ONE_OR_MORE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ONE_OR_MORE_END+")");break;case i.db.Cardinality.ONLY_ONE:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.ONLY_ONE_END+")");break;case i.db.Cardinality.MD_PARENT:l.attr("marker-end","url("+u+"#"+Wo.ERMarkers.MD_PARENT_END+")");break}switch(t.relSpec.cardB){case i.db.Cardinality.ZERO_OR_ONE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ZERO_OR_ONE_START+")");break;case i.db.Cardinality.ZERO_OR_MORE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ZERO_OR_MORE_START+")");break;case i.db.Cardinality.ONE_OR_MORE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ONE_OR_MORE_START+")");break;case i.db.Cardinality.ONLY_ONE:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.ONLY_ONE_START+")");break;case i.db.Cardinality.MD_PARENT:l.attr("marker-start","url("+u+"#"+Wo.ERMarkers.MD_PARENT_START+")");break}let h=l.node().getTotalLength(),f=l.node().getPointAtLength(h*.5),d="rel"+gat,p=t.roleA.split(/
    /g),m=e.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",pt().fontFamily).style("font-size",zi.fontSize+"px");if(p.length==1)m.text(t.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();e.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"),vPt=o(function(e,t,r,n){zi=pt().er,V.info("Drawing ER diagram");let i=pt().securityLevel,a;i==="sandbox"&&(a=Gt("#i"+t));let l=(i==="sandbox"?Gt(a.nodes()[0].contentDocument.body):Gt("body")).select(`[id='${t}']`);Wo.insertMarkers(l,zi);let u;u=new yr({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:zi.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let h=pPt(l,n.db.getEntities(),u),f=gPt(n.db.getRelationships(),u);co(u),mPt(l,u),f.forEach(function(y){yPt(l,y,u,h,n)});let d=zi.diagramPadding;Oe.insertTitle(l,"entityTitleText",zi.titleTopMargin,n.db.getDiagramTitle());let p=l.node().getBBox(),m=p.width+d*2,g=p.height+d*2;Pr(l,g,m,zi.useMaxWidth),l.attr("viewBox",`${p.x-d} ${p.y-d} ${m} ${g}`)},"draw"),xPt="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";o(bPt,"generateId");o(yat,"strWithHyphen");xat={setConf:fPt,draw:vPt}});var wPt,wat,Tat=R(()=>{"use strict";wPt=o(e=>` + .entityBox { + fill: ${e.mainBkg}; + stroke: ${e.nodeBorder}; + } + + .attributeBoxOdd { + fill: ${e.attributeBackgroundColorOdd}; + stroke: ${e.nodeBorder}; + } + + .attributeBoxEven { + fill: ${e.attributeBackgroundColorEven}; + stroke: ${e.nodeBorder}; + } + + .relationshipLabelBox { + fill: ${e.tertiaryColor}; + opacity: 0.7; + background-color: ${e.tertiaryColor}; + rect { + opacity: 0.5; + } + } + + .relationshipLine { + stroke: ${e.lineColor}; + } + + .entityTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; + } + #MD_PARENT_START { + fill: #f5f5f5 !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; + } + #MD_PARENT_END { + fill: #f5f5f5 !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; + } + +`,"getStyles"),wat=wPt});var kat={};xr(kat,{diagram:()=>TPt});var TPt,Eat=R(()=>{"use strict";Zit();eat();bat();Tat();TPt={parser:Qit,db:tat,renderer:xat,styles:wat}});function ri(e){return typeof e=="object"&&e!==null&&typeof e.$type=="string"}function ka(e){return typeof e=="object"&&e!==null&&typeof e.$refText=="string"}function LR(e){return typeof e=="object"&&e!==null&&typeof e.name=="string"&&typeof e.type=="string"&&typeof e.path=="string"}function Zd(e){return typeof e=="object"&&e!==null&&ri(e.container)&&ka(e.reference)&&typeof e.message=="string"}function uo(e){return typeof e=="object"&&e!==null&&Array.isArray(e.content)}function sf(e){return typeof e=="object"&&e!==null&&typeof e.tokenType=="object"}function c2(e){return uo(e)&&typeof e.fullText=="string"}var Qd,Yo=R(()=>{"use strict";o(ri,"isAstNode");o(ka,"isReference");o(LR,"isAstNodeDescription");o(Zd,"isLinkingError");Qd=class{static{o(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}isInstance(t,r){return ri(t)&&this.isSubtype(t.$type,r)}isSubtype(t,r){if(t===r)return!0;let n=this.subtypes[t];n||(n=this.subtypes[t]={});let i=n[r];if(i!==void 0)return i;{let a=this.computeIsSubtype(t,r);return n[r]=a,a}}getAllSubTypes(t){let r=this.allSubtypes[t];if(r)return r;{let n=this.getAllTypes(),i=[];for(let a of n)this.isSubtype(a,t)&&i.push(a);return this.allSubtypes[t]=i,i}}};o(uo,"isCompositeCstNode");o(sf,"isLeafCstNode");o(c2,"isRootCstNode")});function SPt(e){return typeof e=="string"?e:typeof e>"u"?"undefined":typeof e.toString=="function"?e.toString():Object.prototype.toString.call(e)}function rk(e){return!!e&&typeof e[Symbol.iterator]=="function"}function en(...e){if(e.length===1){let t=e[0];if(t instanceof ho)return t;if(rk(t))return new ho(()=>t[Symbol.iterator](),r=>r.next());if(typeof t.length=="number")return new ho(()=>({index:0}),r=>r.index1?new ho(()=>({collIndex:0,arrIndex:0}),t=>{do{if(t.iterator){let r=t.iterator.next();if(!r.done)return r;t.iterator=void 0}if(t.array){if(t.arrIndex{"use strict";ho=class e{static{o(this,"StreamImpl")}constructor(t,r){this.startFn=t,this.nextFn=r}iterator(){let t={state:this.startFn(),next:o(()=>this.nextFn(t.state),"next"),[Symbol.iterator]:()=>t};return t}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let t=this.iterator(),r=0,n=t.next();for(;!n.done;)r++,n=t.next();return r}toArray(){let t=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&t.push(n.value);while(!n.done);return t}toSet(){return new Set(this)}toMap(t,r){let n=this.map(i=>[t?t(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(t){let r=t[Symbol.iterator]();return new e(()=>({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 ns})}join(t=","){let r=this.iterator(),n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=t),n+=SPt(i.value)),a=!0;while(!i.done);return n}indexOf(t,r=0){let n=this.iterator(),i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===t)return i;a=n.next(),i++}return-1}every(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(!t(n.value))return!1;n=r.next()}return!0}some(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(t(n.value))return!0;n=r.next()}return!1}forEach(t){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)t(i.value,n),i=r.next(),n++}map(t){return new e(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?ns:{done:!1,value:t(i)}})}filter(t){return new e(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&t(n.value))return n;while(!n.done);return ns})}nonNullable(){return this.filter(t=>t!=null)}reduce(t,r){let n=this.iterator(),i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=t(i,a.value),a=n.next();return i}reduceRight(t,r){return this.recursiveReduce(this.iterator(),t,r)}recursiveReduce(t,r,n){let i=t.next();if(i.done)return n;let a=this.recursiveReduce(t,r,n);return a===void 0?i.value:r(a,i.value)}find(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(t(n.value))return n.value;n=r.next()}}findIndex(t){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(t(i.value))return n;i=r.next(),n++}return-1}includes(t){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===t)return!0;n=r.next()}return!1}flatMap(t){return new e(()=>({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=t(i);if(rk(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return ns})}flat(t){if(t===void 0&&(t=1),t<=0)return this;let r=t>1?this.flat(t-1):this;return new e(()=>({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(rk(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return ns})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(t=1){return new e(()=>{let r=this.startFn();for(let n=0;n({size:0,state:this.startFn()}),r=>(r.size++,r.size>t?ns:this.nextFn(r.state)))}distinct(t){let r=new Set;return this.filter(n=>{let i=t?t(n):n;return r.has(i)?!1:(r.add(i),!0)})}exclude(t,r){let n=new Set;for(let i of t){let a=r?r(i):i;n.add(a)}return this.filter(i=>{let a=r?r(i):i;return!n.has(a)})}};o(SPt,"toString");o(rk,"isIterable");u2=new ho(()=>{},()=>ns),ns=Object.freeze({done:!0,value:void 0});o(en,"stream");Ic=class extends ho{static{o(this,"TreeStreamImpl")}constructor(t,r,n){super(()=>({iterators:n?.includeRoot?[[t][Symbol.iterator]()]:[r(t)[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 ns})}iterator(){let t={state:this.startFn(),next:o(()=>this.nextFn(t.state),"next"),prune:o(()=>{t.state.pruned=!0},"prune"),[Symbol.iterator]:()=>t};return t}};(function(e){function t(a){return a.reduce((s,l)=>s+l,0)}o(t,"sum"),e.sum=t;function r(a){return a.reduce((s,l)=>s*l,0)}o(r,"product"),e.product=r;function n(a){return a.reduce((s,l)=>Math.min(s,l))}o(n,"min"),e.min=n;function i(a){return a.reduce((s,l)=>Math.max(s,l))}o(i,"max"),e.max=i})(Jm||(Jm={}))});var ik={};xr(ik,{DefaultNameRegexp:()=>nk,RangeComparison:()=>Fu,compareRange:()=>_at,findCommentNode:()=>MR,findDeclarationNodeAtOffset:()=>_Pt,findLeafNodeAtOffset:()=>IR,findLeafNodeBeforeOffset:()=>Lat,flattenCst:()=>APt,getInteriorNodes:()=>RPt,getNextNode:()=>LPt,getPreviousNode:()=>Rat,getStartlineNode:()=>DPt,inRange:()=>NR,isChildNode:()=>RR,isCommentNode:()=>DR,streamCst:()=>Jd,toDocumentSegment:()=>t0,tokenToRange:()=>tg});function Jd(e){return new Ic(e,t=>uo(t)?t.content:[],{includeRoot:!0})}function APt(e){return Jd(e).filter(sf)}function RR(e,t){for(;e.container;)if(e=e.container,e===t)return!0;return!1}function tg(e){return{start:{character:e.startColumn-1,line:e.startLine-1},end:{character:e.endColumn,line:e.endLine-1}}}function t0(e){if(!e)return;let{offset:t,end:r,range:n}=e;return{range:n,offset:t,end:r,length:r-t}}function _at(e,t){if(e.end.linet.end.line||e.start.line===t.end.line&&e.start.character>t.end.character)return Fu.After;let r=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,n=e.end.lineFu.After}function _Pt(e,t,r=nk){if(e){if(t>0){let n=t-e.offset,i=e.text.charAt(n);r.test(i)||t--}return IR(e,t)}}function MR(e,t){if(e){let r=Rat(e,!0);if(r&&DR(r,t))return r;if(c2(e)){let n=e.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let a=e.content[i];if(DR(a,t))return a}}}}function DR(e,t){return sf(e)&&t.includes(e.tokenType.name)}function IR(e,t){if(sf(e))return e;if(uo(e)){let r=Dat(e,t,!1);if(r)return IR(r,t)}}function Lat(e,t){if(sf(e))return e;if(uo(e)){let r=Dat(e,t,!0);if(r)return Lat(r,t)}}function Dat(e,t,r){let n=0,i=e.content.length-1,a;for(;n<=i;){let s=Math.floor((n+i)/2),l=e.content[s];if(l.offset<=t&&l.end>t)return l;l.end<=t?(a=r?l:void 0,n=s+1):i=s-1}return a}function Rat(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e);for(;n>0;){n--;let i=r.content[n];if(t||!i.hidden)return i}e=r}}function LPt(e,t=!0){for(;e.container;){let r=e.container,n=r.content.indexOf(e),i=r.content.length-1;for(;n{"use strict";Yo();Ps();o(Jd,"streamCst");o(APt,"flattenCst");o(RR,"isChildNode");o(tg,"tokenToRange");o(t0,"toDocumentSegment");(function(e){e[e.Before=0]="Before",e[e.After=1]="After",e[e.OverlapFront=2]="OverlapFront",e[e.OverlapBack=3]="OverlapBack",e[e.Inside=4]="Inside"})(Fu||(Fu={}));o(_at,"compareRange");o(NR,"inRange");nk=/^[\w\p{L}]$/u;o(_Pt,"findDeclarationNodeAtOffset");o(MR,"findCommentNode");o(DR,"isCommentNode");o(IR,"findLeafNodeAtOffset");o(Lat,"findLeafNodeBeforeOffset");o(Dat,"binarySearch");o(Rat,"getPreviousNode");o(LPt,"getNextNode");o(DPt,"getStartlineNode");o(RPt,"getInteriorNodes");o(NPt,"getCommonParent");o(Aat,"getParentChain")});function of(e){throw new Error("Error! The input value was not handled.")}var e0,ak=R(()=>{"use strict";e0=class extends Error{static{o(this,"ErrorWithLocation")}constructor(t,r){super(t?`${r} at ${t.range.start.line}:${t.range.start.character}`:r)}};o(of,"assertUnreachable")});var m2={};xr(m2,{AbstractElement:()=>PR,AbstractRule:()=>h2,AbstractType:()=>f2,Action:()=>uN,Alternatives:()=>hN,ArrayLiteral:()=>BR,ArrayType:()=>FR,Assignment:()=>fN,BooleanLiteral:()=>$R,CharacterRange:()=>dN,Condition:()=>sk,Conjunction:()=>VR,CrossReference:()=>mN,Disjunction:()=>HR,EndOfFile:()=>gN,Grammar:()=>YR,GrammarImport:()=>Mat,Group:()=>vN,InferredType:()=>qR,Interface:()=>XR,Keyword:()=>xN,LangiumGrammarAstReflection:()=>eg,LangiumGrammarTerminals:()=>MPt,NamedArgument:()=>Iat,NegatedToken:()=>bN,Negation:()=>jR,NumberLiteral:()=>QR,Parameter:()=>ZR,ParameterReference:()=>JR,ParserRule:()=>eN,ReferenceType:()=>rN,RegexToken:()=>TN,ReturnType:()=>Oat,RuleCall:()=>EN,SimpleType:()=>aN,StringLiteral:()=>sN,TerminalAlternatives:()=>CN,TerminalGroup:()=>AN,TerminalRule:()=>lk,TerminalRuleCall:()=>LN,Type:()=>oN,TypeAttribute:()=>Pat,TypeDefinition:()=>OR,UnionType:()=>lN,UnorderedGroup:()=>DN,UntilToken:()=>RN,ValueLiteral:()=>ok,Wildcard:()=>MN,isAbstractElement:()=>d2,isAbstractRule:()=>IPt,isAbstractType:()=>OPt,isAction:()=>zu,isAlternatives:()=>fk,isArrayLiteral:()=>$Pt,isArrayType:()=>zR,isAssignment:()=>Bl,isBooleanLiteral:()=>GR,isCharacterRange:()=>pN,isCondition:()=>PPt,isConjunction:()=>UR,isCrossReference:()=>r0,isDisjunction:()=>WR,isEndOfFile:()=>yN,isFeatureName:()=>BPt,isGrammar:()=>GPt,isGrammarImport:()=>VPt,isGroup:()=>lf,isInferredType:()=>ck,isInterface:()=>uk,isKeyword:()=>Xo,isNamedArgument:()=>UPt,isNegatedToken:()=>wN,isNegation:()=>KR,isNumberLiteral:()=>HPt,isParameter:()=>WPt,isParameterReference:()=>tN,isParserRule:()=>$a,isPrimitiveType:()=>Nat,isReferenceType:()=>nN,isRegexToken:()=>kN,isReturnType:()=>iN,isRuleCall:()=>Fl,isSimpleType:()=>hk,isStringLiteral:()=>YPt,isTerminalAlternatives:()=>SN,isTerminalGroup:()=>_N,isTerminalRule:()=>qo,isTerminalRuleCall:()=>dk,isType:()=>p2,isTypeAttribute:()=>qPt,isTypeDefinition:()=>FPt,isUnionType:()=>cN,isUnorderedGroup:()=>pk,isUntilToken:()=>NN,isValueLiteral:()=>zPt,isWildcard:()=>IN,reflection:()=>lr});function IPt(e){return lr.isInstance(e,h2)}function OPt(e){return lr.isInstance(e,f2)}function PPt(e){return lr.isInstance(e,sk)}function BPt(e){return Nat(e)||e==="current"||e==="entry"||e==="extends"||e==="false"||e==="fragment"||e==="grammar"||e==="hidden"||e==="import"||e==="interface"||e==="returns"||e==="terminal"||e==="true"||e==="type"||e==="infer"||e==="infers"||e==="with"||typeof e=="string"&&/\^?[_a-zA-Z][\w_]*/.test(e)}function Nat(e){return e==="string"||e==="number"||e==="boolean"||e==="Date"||e==="bigint"}function FPt(e){return lr.isInstance(e,OR)}function zPt(e){return lr.isInstance(e,ok)}function d2(e){return lr.isInstance(e,PR)}function $Pt(e){return lr.isInstance(e,BR)}function zR(e){return lr.isInstance(e,FR)}function GR(e){return lr.isInstance(e,$R)}function UR(e){return lr.isInstance(e,VR)}function WR(e){return lr.isInstance(e,HR)}function GPt(e){return lr.isInstance(e,YR)}function VPt(e){return lr.isInstance(e,Mat)}function ck(e){return lr.isInstance(e,qR)}function uk(e){return lr.isInstance(e,XR)}function UPt(e){return lr.isInstance(e,Iat)}function KR(e){return lr.isInstance(e,jR)}function HPt(e){return lr.isInstance(e,QR)}function WPt(e){return lr.isInstance(e,ZR)}function tN(e){return lr.isInstance(e,JR)}function $a(e){return lr.isInstance(e,eN)}function nN(e){return lr.isInstance(e,rN)}function iN(e){return lr.isInstance(e,Oat)}function hk(e){return lr.isInstance(e,aN)}function YPt(e){return lr.isInstance(e,sN)}function qo(e){return lr.isInstance(e,lk)}function p2(e){return lr.isInstance(e,oN)}function qPt(e){return lr.isInstance(e,Pat)}function cN(e){return lr.isInstance(e,lN)}function zu(e){return lr.isInstance(e,uN)}function fk(e){return lr.isInstance(e,hN)}function Bl(e){return lr.isInstance(e,fN)}function pN(e){return lr.isInstance(e,dN)}function r0(e){return lr.isInstance(e,mN)}function yN(e){return lr.isInstance(e,gN)}function lf(e){return lr.isInstance(e,vN)}function Xo(e){return lr.isInstance(e,xN)}function wN(e){return lr.isInstance(e,bN)}function kN(e){return lr.isInstance(e,TN)}function Fl(e){return lr.isInstance(e,EN)}function SN(e){return lr.isInstance(e,CN)}function _N(e){return lr.isInstance(e,AN)}function dk(e){return lr.isInstance(e,LN)}function pk(e){return lr.isInstance(e,DN)}function NN(e){return lr.isInstance(e,RN)}function IN(e){return lr.isInstance(e,MN)}var MPt,h2,f2,sk,OR,ok,PR,BR,FR,$R,VR,HR,YR,Mat,qR,XR,Iat,jR,QR,ZR,JR,eN,rN,Oat,aN,sN,lk,oN,Pat,lN,uN,hN,fN,dN,mN,gN,vN,xN,bN,TN,EN,CN,AN,LN,DN,RN,MN,eg,lr,Oc=R(()=>{"use strict";Yo();MPt={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]*/},h2="AbstractRule";o(IPt,"isAbstractRule");f2="AbstractType";o(OPt,"isAbstractType");sk="Condition";o(PPt,"isCondition");o(BPt,"isFeatureName");o(Nat,"isPrimitiveType");OR="TypeDefinition";o(FPt,"isTypeDefinition");ok="ValueLiteral";o(zPt,"isValueLiteral");PR="AbstractElement";o(d2,"isAbstractElement");BR="ArrayLiteral";o($Pt,"isArrayLiteral");FR="ArrayType";o(zR,"isArrayType");$R="BooleanLiteral";o(GR,"isBooleanLiteral");VR="Conjunction";o(UR,"isConjunction");HR="Disjunction";o(WR,"isDisjunction");YR="Grammar";o(GPt,"isGrammar");Mat="GrammarImport";o(VPt,"isGrammarImport");qR="InferredType";o(ck,"isInferredType");XR="Interface";o(uk,"isInterface");Iat="NamedArgument";o(UPt,"isNamedArgument");jR="Negation";o(KR,"isNegation");QR="NumberLiteral";o(HPt,"isNumberLiteral");ZR="Parameter";o(WPt,"isParameter");JR="ParameterReference";o(tN,"isParameterReference");eN="ParserRule";o($a,"isParserRule");rN="ReferenceType";o(nN,"isReferenceType");Oat="ReturnType";o(iN,"isReturnType");aN="SimpleType";o(hk,"isSimpleType");sN="StringLiteral";o(YPt,"isStringLiteral");lk="TerminalRule";o(qo,"isTerminalRule");oN="Type";o(p2,"isType");Pat="TypeAttribute";o(qPt,"isTypeAttribute");lN="UnionType";o(cN,"isUnionType");uN="Action";o(zu,"isAction");hN="Alternatives";o(fk,"isAlternatives");fN="Assignment";o(Bl,"isAssignment");dN="CharacterRange";o(pN,"isCharacterRange");mN="CrossReference";o(r0,"isCrossReference");gN="EndOfFile";o(yN,"isEndOfFile");vN="Group";o(lf,"isGroup");xN="Keyword";o(Xo,"isKeyword");bN="NegatedToken";o(wN,"isNegatedToken");TN="RegexToken";o(kN,"isRegexToken");EN="RuleCall";o(Fl,"isRuleCall");CN="TerminalAlternatives";o(SN,"isTerminalAlternatives");AN="TerminalGroup";o(_N,"isTerminalGroup");LN="TerminalRuleCall";o(dk,"isTerminalRuleCall");DN="UnorderedGroup";o(pk,"isUnorderedGroup");RN="UntilToken";o(NN,"isUntilToken");MN="Wildcard";o(IN,"isWildcard");eg=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(t,r){switch(t){case uN:case hN:case fN:case dN:case mN:case gN:case vN:case xN:case bN:case TN:case EN:case CN:case AN:case LN:case DN:case RN:case MN:return this.isSubtype(PR,r);case BR:case QR:case sN:return this.isSubtype(ok,r);case FR:case rN:case aN:case lN:return this.isSubtype(OR,r);case $R:return this.isSubtype(sk,r)||this.isSubtype(ok,r);case VR:case HR:case jR:case JR:return this.isSubtype(sk,r);case qR:case XR:case oN:return this.isSubtype(f2,r);case eN:return this.isSubtype(h2,r)||this.isSubtype(f2,r);case lk:return this.isSubtype(h2,r);default:return!1}}getReferenceType(t){let r=`${t.container.$type}:${t.property}`;switch(r){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return f2;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return h2;case"Grammar:usedGrammars":return YR;case"NamedArgument:parameter":case"ParameterReference:parameter":return ZR;case"TerminalRuleCall:rule":return lk;default:throw new Error(`${r} is not a valid reference id.`)}}getTypeMetaData(t){switch(t){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:t,properties:[]}}}},lr=new eg});var gk={};xr(gk,{assignMandatoryProperties:()=>BN,copyAstNode:()=>PN,findLocalReferences:()=>jPt,findRootNode:()=>Bat,getContainerOfType:()=>n0,getDocument:()=>$i,hasContainerOfType:()=>XPt,linkContentToContainer:()=>mk,streamAllContents:()=>Pc,streamAst:()=>jo,streamContents:()=>g2,streamReferences:()=>rg});function mk(e){for(let[t,r]of Object.entries(e))t.startsWith("$")||(Array.isArray(r)?r.forEach((n,i)=>{ri(n)&&(n.$container=e,n.$containerProperty=t,n.$containerIndex=i)}):ri(r)&&(r.$container=e,r.$containerProperty=t))}function n0(e,t){let r=e;for(;r;){if(t(r))return r;r=r.$container}}function XPt(e,t){let r=e;for(;r;){if(t(r))return!0;r=r.$container}return!1}function $i(e){let r=Bat(e).$document;if(!r)throw new Error("AST node has no document.");return r}function Bat(e){for(;e.$container;)e=e.$container;return e}function g2(e,t){if(!e)throw new Error("Node must be an AstNode.");let r=t?.range;return new ho(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndexg2(r,t))}function jo(e,t){if(e){if(t?.range&&!ON(e,t.range))return new Ic(e,()=>[])}else throw new Error("Root node must be an AstNode.");return new Ic(e,r=>g2(r,t),{includeRoot:!0})}function ON(e,t){var r;if(!t)return!0;let n=(r=e.$cstNode)===null||r===void 0?void 0:r.range;return n?NR(n,t):!1}function rg(e){return new ho(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex{rg(n).forEach(i=>{i.reference.ref===e&&r.push(i.reference)})}),en(r)}function BN(e,t){let r=e.getTypeMetaData(t.$type),n=t;for(let i of r.properties)i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=Fat(i.defaultValue))}function Fat(e){return Array.isArray(e)?[...e.map(Fat)]:e}function PN(e,t){let r={$type:e.$type};for(let[n,i]of Object.entries(e))if(!n.startsWith("$"))if(ri(i))r[n]=PN(i,t);else if(ka(i))r[n]=t(r,n,i.$refNode,i.$refText);else if(Array.isArray(i)){let a=[];for(let s of i)ri(s)?a.push(PN(s,t)):ka(s)?a.push(t(r,n,s.$refNode,s.$refText)):a.push(s);r[n]=a}else r[n]=i;return mk(r),r}var is=R(()=>{"use strict";Yo();Ps();Pl();o(mk,"linkContentToContainer");o(n0,"getContainerOfType");o(XPt,"hasContainerOfType");o($i,"getDocument");o(Bat,"findRootNode");o(g2,"streamContents");o(Pc,"streamAllContents");o(jo,"streamAst");o(ON,"isAstNodeInRange");o(rg,"streamReferences");o(jPt,"findLocalReferences");o(BN,"assignMandatoryProperties");o(Fat,"copyDefaultValue");o(PN,"copyAstNode")});function ar(e){return e.charCodeAt(0)}function yk(e,t){Array.isArray(e)?e.forEach(function(r){t.push(r)}):t.push(e)}function ng(e,t){if(e[t]===!0)throw"duplicate flag "+t;let r=e[t];e[t]=!0}function i0(e){if(e===void 0)throw Error("Internal Error - Should never get here!");return!0}function y2(){throw Error("Internal Error - Should never get here!")}function FN(e){return e.type==="Character"}var zN=R(()=>{"use strict";o(ar,"cc");o(yk,"insertToSet");o(ng,"addFlag");o(i0,"ASSERT_EXISTS");o(y2,"ASSERT_NEVER_REACH_HERE");o(FN,"isCharacter")});var v2,x2,$N,zat=R(()=>{"use strict";zN();v2=[];for(let e=ar("0");e<=ar("9");e++)v2.push(e);x2=[ar("_")].concat(v2);for(let e=ar("a");e<=ar("z");e++)x2.push(e);for(let e=ar("A");e<=ar("Z");e++)x2.push(e);$N=[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 KPt,vk,QPt,a0,$at=R(()=>{"use strict";zN();zat();KPt=/[0-9a-fA-F]/,vk=/[0-9]/,QPt=/[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(t){this.idx=t.idx,this.input=t.input,this.groupIdx=t.groupIdx}pattern(t){this.idx=0,this.input=t,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:t.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 t=[],r=this.idx;for(t.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),t.push(this.alternative());return{type:"Disjunction",value:t,loc:this.loc(r)}}alternative(){let t=[],r=this.idx;for(;this.isTerm();)t.push(this.term());return{type:"Alternative",value:t,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let t=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(t)};case"$":return{type:"EndAnchor",loc:this.loc(t)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(t)};case"B":return{type:"NonWordBoundary",loc:this.loc(t)}}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(t)}}return y2()}quantifier(t=!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(t===!0&&r===void 0)return;i0(r);break}if(!(t===!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 t,r=this.idx;switch(this.peekChar()){case".":t=this.dotAll();break;case"\\":t=this.atomEscape();break;case"[":t=this.characterClass();break;case"(":t=this.group();break}return t===void 0&&this.isPatternCharacter()&&(t=this.patternCharacter()),i0(t)?(t.loc=this.loc(r),this.isQuantifier()&&(t.quantifier=this.quantifier()),t):y2()}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 t,r=!1;switch(this.popChar()){case"d":t=v2;break;case"D":t=v2,r=!0;break;case"s":t=$N;break;case"S":t=$N,r=!0;break;case"w":t=x2;break;case"W":t=x2,r=!0;break}return i0(t)?{type:"Set",value:t,complement:r}:y2()}controlEscapeAtom(){let t;switch(this.popChar()){case"f":t=ar("\f");break;case"n":t=ar(` +`);break;case"r":t=ar("\r");break;case"t":t=ar(" ");break;case"v":t=ar("\v");break}return i0(t)?{type:"Character",value:t}:y2()}controlLetterEscapeAtom(){this.consumeChar("c");let t=this.popChar();if(/[a-zA-Z]/.test(t)===!1)throw Error("Invalid ");return{type:"Character",value:t.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 t=this.popChar();return{type:"Character",value:ar(t)}}classPatternCharacterAtom(){switch(this.peekChar()){case` +`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let t=this.popChar();return{type:"Character",value:ar(t)}}}characterClass(){let t=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(FN(n)&&this.isRangeDash()){this.consumeChar("-");let a=this.classAtom(),s=a.type==="Character";if(FN(a)){if(a.value=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(t){return{begin:t,end:this.idx}}}});var Bc,Gat=R(()=>{"use strict";Bc=class{static{o(this,"BaseRegExpVisitor")}visitChildren(t){for(let r in t){let n=t[r];t.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(t){switch(t.type){case"Pattern":this.visitPattern(t);break;case"Flags":this.visitFlags(t);break;case"Disjunction":this.visitDisjunction(t);break;case"Alternative":this.visitAlternative(t);break;case"StartAnchor":this.visitStartAnchor(t);break;case"EndAnchor":this.visitEndAnchor(t);break;case"WordBoundary":this.visitWordBoundary(t);break;case"NonWordBoundary":this.visitNonWordBoundary(t);break;case"Lookahead":this.visitLookahead(t);break;case"NegativeLookahead":this.visitNegativeLookahead(t);break;case"Character":this.visitCharacter(t);break;case"Set":this.visitSet(t);break;case"Group":this.visitGroup(t);break;case"GroupBackReference":this.visitGroupBackReference(t);break;case"Quantifier":this.visitQuantifier(t);break}this.visitChildren(t)}visitPattern(t){}visitFlags(t){}visitDisjunction(t){}visitAlternative(t){}visitStartAnchor(t){}visitEndAnchor(t){}visitWordBoundary(t){}visitNonWordBoundary(t){}visitLookahead(t){}visitNegativeLookahead(t){}visitCharacter(t){}visitSet(t){}visitGroup(t){}visitGroupBackReference(t){}visitQuantifier(t){}}});var b2=R(()=>{"use strict";$at();Gat()});var bk={};xr(bk,{NEWLINE_REGEXP:()=>VN,escapeRegExp:()=>o0,getCaseInsensitivePattern:()=>HN,getTerminalParts:()=>ZPt,isMultilineComment:()=>UN,isWhitespace:()=>xk,partialMatches:()=>WN,partialRegExp:()=>Uat});function ZPt(e){try{typeof e!="string"&&(e=e.source),e=`/${e}/`;let t=Vat.pattern(e),r=[];for(let n of t.value.value)s0.reset(e),s0.visit(n),r.push({start:s0.startRegexp,end:s0.endRegex});return r}catch{return[]}}function UN(e){try{return typeof e=="string"&&(e=new RegExp(e)),e=e.toString(),s0.reset(e),s0.visit(Vat.pattern(e)),s0.multiline}catch{return!1}}function xk(e){return(typeof e=="string"?new RegExp(e):e).test(" ")}function o0(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function HN(e){return Array.prototype.map.call(e,t=>/\w/.test(t)?`[${t.toLowerCase()}${t.toUpperCase()}]`:o0(t)).join("")}function WN(e,t){let r=Uat(e),n=t.match(r);return!!n&&n[0].length>0}function Uat(e){typeof e=="string"&&(e=new RegExp(e));let t=e,r=e.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(),e.flags)}var VN,Vat,GN,s0,ig=R(()=>{"use strict";b2();VN=/\r?\n/gm,Vat=new a0,GN=class extends Bc{static{o(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(t){this.multiline=!1,this.regex=t,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(t){t.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(t){let r=String.fromCharCode(t.value);if(!this.multiline&&r===` +`&&(this.multiline=!0),t.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=o0(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(t){if(!this.multiline){let r=this.regex.substring(t.loc.begin,t.loc.end),n=new RegExp(r);this.multiline=!!` +`.match(n)}if(t.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(t.loc.begin,t.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(t){t.type==="Group"&&t.quantifier||super.visitChildren(t)}},s0=new GN;o(ZPt,"getTerminalParts");o(UN,"isMultilineComment");o(xk,"isWhitespace");o(o0,"escapeRegExp");o(HN,"getCaseInsensitivePattern");o(WN,"partialMatches");o(Uat,"partialRegExp")});var Tk={};xr(Tk,{findAssignment:()=>tM,findNameAssignment:()=>wk,findNodeForKeyword:()=>ZN,findNodeForProperty:()=>T2,findNodesForKeyword:()=>JPt,findNodesForKeywordInternal:()=>JN,findNodesForProperty:()=>KN,getActionAtElement:()=>Xat,getActionType:()=>Kat,getAllReachableRules:()=>w2,getCrossReferenceTerminal:()=>XN,getEntryRule:()=>Hat,getExplicitRuleType:()=>eM,getHiddenRules:()=>Wat,getRuleType:()=>rM,getTypeName:()=>l0,isArrayCardinality:()=>eBt,isArrayOperator:()=>rBt,isCommentTerminal:()=>jN,isDataType:()=>nBt,isDataTypeRule:()=>k2,isOptionalCardinality:()=>tBt,terminalRegex:()=>ag});function Hat(e){return e.rules.find(t=>$a(t)&&t.entry)}function Wat(e){return e.rules.filter(t=>qo(t)&&t.hidden)}function w2(e,t){let r=new Set,n=Hat(e);if(!n)return new Set(e.rules);let i=[n].concat(Wat(e));for(let s of i)Yat(s,r,t);let a=new Set;for(let s of e.rules)(r.has(s.name)||qo(s)&&s.hidden)&&a.add(s);return a}function Yat(e,t,r){t.add(e.name),Pc(e).forEach(n=>{if(Fl(n)||r&&dk(n)){let i=n.rule.ref;i&&!t.has(i.name)&&Yat(i,t,r)}})}function XN(e){if(e.terminal)return e.terminal;if(e.type.ref){let t=wk(e.type.ref);return t?.terminal}}function jN(e){return e.hidden&&!ag(e).test(" ")}function KN(e,t){return!e||!t?[]:QN(e,t,e.astNode,!0)}function T2(e,t,r){if(!e||!t)return;let n=QN(e,t,e.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 QN(e,t,r,n){if(!n){let i=n0(e.grammarSource,Bl);if(i&&i.feature===t)return[e]}return uo(e)&&e.astNode===r?e.content.flatMap(i=>QN(i,t,r,!1)):[]}function JPt(e,t){return e?JN(e,t,e?.astNode):[]}function ZN(e,t,r){if(!e)return;let n=JN(e,t,e?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function JN(e,t,r){if(e.astNode!==r)return[];if(Xo(e.grammarSource)&&e.grammarSource.value===t)return[e];let n=Jd(e).iterator(),i,a=[];do if(i=n.next(),!i.done){let s=i.value;s.astNode===r?Xo(s.grammarSource)&&s.grammarSource.value===t&&a.push(s):n.prune()}while(!i.done);return a}function tM(e){var t;let r=e.astNode;for(;r===((t=e.container)===null||t===void 0?void 0:t.astNode);){let n=n0(e.grammarSource,Bl);if(n)return n;e=e.container}}function wk(e){let t=e;return ck(t)&&(zu(t.$container)?t=t.$container.$container:$a(t.$container)?t=t.$container:of(t.$container)),qat(e,t,new Map)}function qat(e,t,r){var n;function i(a,s){let l;return n0(a,Bl)||(l=qat(s,s,r)),r.set(e,l),l}if(o(i,"go"),r.has(e))return r.get(e);r.set(e,void 0);for(let a of Pc(t)){if(Bl(a)&&a.feature.toLowerCase()==="name")return r.set(e,a),a;if(Fl(a)&&$a(a.rule.ref))return i(a,a.rule.ref);if(hk(a)&&(!((n=a.typeRef)===null||n===void 0)&&n.ref))return i(a,a.typeRef.ref)}}function Xat(e){let t=e.$container;if(lf(t)){let r=t.elements,n=r.indexOf(e);for(let i=n-1;i>=0;i--){let a=r[i];if(zu(a))return a;{let s=Pc(r[i]).find(zu);if(s)return s}}}if(d2(t))return Xat(t)}function tBt(e,t){return e==="?"||e==="*"||lf(t)&&!!t.guardCondition}function eBt(e){return e==="*"||e==="+"}function rBt(e){return e==="+="}function k2(e){return jat(e,new Set)}function jat(e,t){if(t.has(e))return!0;t.add(e);for(let r of Pc(e))if(Fl(r)){if(!r.rule.ref||$a(r.rule.ref)&&!jat(r.rule.ref,t))return!1}else{if(Bl(r))return!1;if(zu(r))return!1}return!!e.definition}function nBt(e){return qN(e.type,new Set)}function qN(e,t){if(t.has(e))return!0;if(t.add(e),zR(e))return!1;if(nN(e))return!1;if(cN(e))return e.types.every(r=>qN(r,t));if(hk(e)){if(e.primitiveType!==void 0)return!0;if(e.stringType!==void 0)return!0;if(e.typeRef!==void 0){let r=e.typeRef.ref;return p2(r)?qN(r.type,t):!1}else return!1}else return!1}function eM(e){if(e.inferredType)return e.inferredType.name;if(e.dataType)return e.dataType;if(e.returnType){let t=e.returnType.ref;if(t){if($a(t))return t.name;if(uk(t)||p2(t))return t.name}}}function l0(e){var t;if($a(e))return k2(e)?e.name:(t=eM(e))!==null&&t!==void 0?t:e.name;if(uk(e)||p2(e)||iN(e))return e.name;if(zu(e)){let r=Kat(e);if(r)return r}else if(ck(e))return e.name;throw new Error("Cannot get name of Unknown Type")}function Kat(e){var t;if(e.inferredType)return e.inferredType.name;if(!((t=e.type)===null||t===void 0)&&t.ref)return l0(e.type.ref)}function rM(e){var t,r,n;return qo(e)?(r=(t=e.type)===null||t===void 0?void 0:t.name)!==null&&r!==void 0?r:"string":k2(e)?e.name:(n=eM(e))!==null&&n!==void 0?n:e.name}function ag(e){let t={s:!1,i:!1,u:!1},r=sg(e.definition,t),n=Object.entries(t).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}function sg(e,t){if(SN(e))return iBt(e);if(_N(e))return aBt(e);if(pN(e))return lBt(e);if(dk(e)){let r=e.rule.ref;if(!r)throw new Error("Missing rule reference.");return $u(sg(r.definition),{cardinality:e.cardinality,lookahead:e.lookahead})}else{if(wN(e))return oBt(e);if(NN(e))return sBt(e);if(kN(e)){let r=e.regex.lastIndexOf("/"),n=e.regex.substring(1,r),i=e.regex.substring(r+1);return t&&(t.i=i.includes("i"),t.s=i.includes("s"),t.u=i.includes("u")),$u(n,{cardinality:e.cardinality,lookahead:e.lookahead,wrap:!1})}else{if(IN(e))return $u(nM,{cardinality:e.cardinality,lookahead:e.lookahead});throw new Error(`Invalid terminal element: ${e?.$type}`)}}}function iBt(e){return $u(e.elements.map(t=>sg(t)).join("|"),{cardinality:e.cardinality,lookahead:e.lookahead})}function aBt(e){return $u(e.elements.map(t=>sg(t)).join(""),{cardinality:e.cardinality,lookahead:e.lookahead})}function sBt(e){return $u(`${nM}*?${sg(e.terminal)}`,{cardinality:e.cardinality,lookahead:e.lookahead})}function oBt(e){return $u(`(?!${sg(e.terminal)})${nM}*?`,{cardinality:e.cardinality,lookahead:e.lookahead})}function lBt(e){return e.right?$u(`[${YN(e.left)}-${YN(e.right)}]`,{cardinality:e.cardinality,lookahead:e.lookahead,wrap:!1}):$u(YN(e.left),{cardinality:e.cardinality,lookahead:e.lookahead,wrap:!1})}function YN(e){return o0(e.value)}function $u(e,t){var r;return(t.wrap!==!1||t.lookahead)&&(e=`(${(r=t.lookahead)!==null&&r!==void 0?r:""}${e})`),t.cardinality?`${e}${t.cardinality}`:e}var nM,zl=R(()=>{"use strict";ak();Oc();Yo();is();Pl();ig();o(Hat,"getEntryRule");o(Wat,"getHiddenRules");o(w2,"getAllReachableRules");o(Yat,"ruleDfs");o(XN,"getCrossReferenceTerminal");o(jN,"isCommentTerminal");o(KN,"findNodesForProperty");o(T2,"findNodeForProperty");o(QN,"findNodesForPropertyInternal");o(JPt,"findNodesForKeyword");o(ZN,"findNodeForKeyword");o(JN,"findNodesForKeywordInternal");o(tM,"findAssignment");o(wk,"findNameAssignment");o(qat,"findNameAssignmentInternal");o(Xat,"getActionAtElement");o(tBt,"isOptionalCardinality");o(eBt,"isArrayCardinality");o(rBt,"isArrayOperator");o(k2,"isDataTypeRule");o(jat,"isDataTypeRuleInternal");o(nBt,"isDataType");o(qN,"isDataTypeInternal");o(eM,"getExplicitRuleType");o(l0,"getTypeName");o(Kat,"getActionType");o(rM,"getRuleType");o(ag,"terminalRegex");nM=/[\s\S]/.source;o(sg,"abstractElementToRegex");o(iBt,"terminalAlternativesToRegex");o(aBt,"terminalGroupToRegex");o(sBt,"untilTokenToRegex");o(oBt,"negateTokenToRegex");o(lBt,"characterRangeToRegex");o(YN,"keywordToRegex");o($u,"withCardinality")});function iM(e){let t=[],r=e.Grammar;for(let n of r.rules)qo(n)&&jN(n)&&UN(ag(n))&&t.push(n.name);return{multilineCommentRules:t,nameRegexp:nk}}var aM=R(()=>{"use strict";Pl();zl();ig();Oc();o(iM,"createGrammarConfig")});var sM=R(()=>{"use strict"});function og(e){console&&console.error&&console.error(`Error: ${e}`)}function E2(e){console&&console.warn&&console.warn(`Warning: ${e}`)}var Qat=R(()=>{"use strict";o(og,"PRINT_ERROR");o(E2,"PRINT_WARNING")});function C2(e){let t=new Date().getTime(),r=e();return{time:new Date().getTime()-t,value:r}}var Zat=R(()=>{"use strict";o(C2,"timer")});function S2(e){function t(){}o(t,"FakeConstructor"),t.prototype=e;let r=new t;function n(){return typeof r.bar}return o(n,"fakeAccess"),n(),n(),e;(0,eval)(e)}var Jat=R(()=>{"use strict";o(S2,"toFastProperties")});var lg=R(()=>{"use strict";Qat();Zat();Jat()});function cBt(e){return uBt(e)?e.LABEL:e.name}function uBt(e){return yi(e.LABEL)&&e.LABEL!==""}function kk(e){return Xt(e,cg)}function cg(e){function t(r){return Xt(r,cg)}if(o(t,"convertDefinition"),e instanceof nn){let r={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return yi(e.label)&&(r.label=e.label),r}else{if(e instanceof Ln)return{type:"Alternative",definition:t(e.definition)};if(e instanceof an)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof Dn)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof Rn)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:cg(new br({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof bn)return{type:"RepetitionWithSeparator",idx:e.idx,separator:cg(new br({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Lr)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};if(e instanceof wn)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};if(e instanceof br){let r={type:"Terminal",name:e.terminalType.name,label:cBt(e.terminalType),idx:e.idx};yi(e.label)&&(r.terminalLabel=e.label);let n=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(r.pattern=Uo(n)?n.source:n),r}else{if(e instanceof as)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};throw Error("non exhaustive match")}}}var fo,nn,as,Ln,an,Dn,Rn,Lr,bn,wn,br,Ek=R(()=>{"use strict";Ve();o(cBt,"tokenLabel");o(uBt,"hasTokenLabel");fo=class{static{o(this,"AbstractProduction")}get definition(){return this._definition}set definition(t){this._definition=t}constructor(t){this._definition=t}accept(t){t.visit(this),Et(this.definition,r=>{r.accept(t)})}},nn=class extends fo{static{o(this,"NonTerminal")}constructor(t){super([]),this.idx=1,va(this,Os(t,r=>r!==void 0))}set definition(t){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(t){t.visit(this)}},as=class extends fo{static{o(this,"Rule")}constructor(t){super(t.definition),this.orgText="",va(this,Os(t,r=>r!==void 0))}},Ln=class extends fo{static{o(this,"Alternative")}constructor(t){super(t.definition),this.ignoreAmbiguities=!1,va(this,Os(t,r=>r!==void 0))}},an=class extends fo{static{o(this,"Option")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},Dn=class extends fo{static{o(this,"RepetitionMandatory")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},Rn=class extends fo{static{o(this,"RepetitionMandatoryWithSeparator")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},Lr=class extends fo{static{o(this,"Repetition")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},bn=class extends fo{static{o(this,"RepetitionWithSeparator")}constructor(t){super(t.definition),this.idx=1,va(this,Os(t,r=>r!==void 0))}},wn=class extends fo{static{o(this,"Alternation")}get definition(){return this._definition}set definition(t){this._definition=t}constructor(t){super(t.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,va(this,Os(t,r=>r!==void 0))}},br=class{static{o(this,"Terminal")}constructor(t){this.idx=1,va(this,Os(t,r=>r!==void 0))}accept(t){t.visit(this)}};o(kk,"serializeGrammar");o(cg,"serializeProduction")});var ss,tst=R(()=>{"use strict";Ek();ss=class{static{o(this,"GAstVisitor")}visit(t){let r=t;switch(r.constructor){case nn:return this.visitNonTerminal(r);case Ln:return this.visitAlternative(r);case an:return this.visitOption(r);case Dn:return this.visitRepetitionMandatory(r);case Rn:return this.visitRepetitionMandatoryWithSeparator(r);case bn:return this.visitRepetitionWithSeparator(r);case Lr:return this.visitRepetition(r);case wn:return this.visitAlternation(r);case br:return this.visitTerminal(r);case as:return this.visitRule(r);default:throw Error("non exhaustive match")}}visitNonTerminal(t){}visitAlternative(t){}visitOption(t){}visitRepetition(t){}visitRepetitionMandatory(t){}visitRepetitionMandatoryWithSeparator(t){}visitRepetitionWithSeparator(t){}visitAlternation(t){}visitTerminal(t){}visitRule(t){}}});function oM(e){return e instanceof Ln||e instanceof an||e instanceof Lr||e instanceof Dn||e instanceof Rn||e instanceof bn||e instanceof br||e instanceof as}function c0(e,t=[]){return e instanceof an||e instanceof Lr||e instanceof bn?!0:e instanceof wn?r2(e.definition,n=>c0(n,t)):e instanceof nn&&Wn(t,e)?!1:e instanceof fo?(e instanceof nn&&t.push(e),za(e.definition,n=>c0(n,t))):!1}function lM(e){return e instanceof wn}function Bs(e){if(e instanceof nn)return"SUBRULE";if(e instanceof an)return"OPTION";if(e instanceof wn)return"OR";if(e instanceof Dn)return"AT_LEAST_ONE";if(e instanceof Rn)return"AT_LEAST_ONE_SEP";if(e instanceof bn)return"MANY_SEP";if(e instanceof Lr)return"MANY";if(e instanceof br)return"CONSUME";throw Error("non exhaustive match")}var est=R(()=>{"use strict";Ve();Ek();o(oM,"isSequenceProd");o(c0,"isOptionalProd");o(lM,"isBranchingProd");o(Bs,"getProductionDslName")});var os=R(()=>{"use strict";Ek();tst();est()});function rst(e,t,r){return[new an({definition:[new br({terminalType:e.separator})].concat(e.definition)})].concat(t,r)}var Gu,Ck=R(()=>{"use strict";Ve();os();Gu=class{static{o(this,"RestWalker")}walk(t,r=[]){Et(t.definition,(n,i)=>{let a=gi(t.definition,i+1);if(n instanceof nn)this.walkProdRef(n,a,r);else if(n instanceof br)this.walkTerminal(n,a,r);else if(n instanceof Ln)this.walkFlat(n,a,r);else if(n instanceof an)this.walkOption(n,a,r);else if(n instanceof Dn)this.walkAtLeastOne(n,a,r);else if(n instanceof Rn)this.walkAtLeastOneSep(n,a,r);else if(n instanceof bn)this.walkManySep(n,a,r);else if(n instanceof Lr)this.walkMany(n,a,r);else if(n instanceof wn)this.walkOr(n,a,r);else throw Error("non exhaustive match")})}walkTerminal(t,r,n){}walkProdRef(t,r,n){}walkFlat(t,r,n){let i=r.concat(n);this.walk(t,i)}walkOption(t,r,n){let i=r.concat(n);this.walk(t,i)}walkAtLeastOne(t,r,n){let i=[new an({definition:t.definition})].concat(r,n);this.walk(t,i)}walkAtLeastOneSep(t,r,n){let i=rst(t,r,n);this.walk(t,i)}walkMany(t,r,n){let i=[new an({definition:t.definition})].concat(r,n);this.walk(t,i)}walkManySep(t,r,n){let i=rst(t,r,n);this.walk(t,i)}walkOr(t,r,n){let i=r.concat(n);Et(t.definition,a=>{let s=new Ln({definition:[a]});this.walk(s,i)})}};o(rst,"restForRepetitionWithSeparator")});function u0(e){if(e instanceof nn)return u0(e.referencedRule);if(e instanceof br)return dBt(e);if(oM(e))return hBt(e);if(lM(e))return fBt(e);throw Error("non exhaustive match")}function hBt(e){let t=[],r=e.definition,n=0,i=r.length>n,a,s=!0;for(;i&&s;)a=r[n],s=c0(a),t=t.concat(u0(a)),n=n+1,i=r.length>n;return Qm(t)}function fBt(e){let t=Xt(e.definition,r=>u0(r));return Qm(Wr(t))}function dBt(e){return[e.terminalType]}var cM=R(()=>{"use strict";Ve();os();o(u0,"first");o(hBt,"firstForSequence");o(fBt,"firstForBranching");o(dBt,"firstForTerminal")});var Sk,uM=R(()=>{"use strict";Sk="_~IN~_"});function nst(e){let t={};return Et(e,r=>{let n=new hM(r).startWalking();va(t,n)}),t}function pBt(e,t){return e.name+t+Sk}var hM,ist=R(()=>{"use strict";Ck();cM();Ve();uM();os();hM=class extends Gu{static{o(this,"ResyncFollowsWalker")}constructor(t){super(),this.topProd=t,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(t,r,n){}walkProdRef(t,r,n){let i=pBt(t.referencedRule,t.idx)+this.topProd.name,a=r.concat(n),s=new Ln({definition:a}),l=u0(s);this.follows[i]=l}};o(nst,"computeAllProdsFollows");o(pBt,"buildBetweenProdsFollowPrefix")});function ug(e){let t=e.toString();if(Ak.hasOwnProperty(t))return Ak[t];{let r=mBt.pattern(t);return Ak[t]=r,r}}function ast(){Ak={}}var Ak,mBt,_k=R(()=>{"use strict";b2();Ak={},mBt=new a0;o(ug,"getRegExpAst");o(ast,"clearRegExpParserCache")});function lst(e,t=!1){try{let r=ug(e);return fM(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===ost)t&&E2(`${A2} Unable to optimize: < ${e.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="";t&&(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(`${A2} + Failed parsing: < ${e.toString()} > + Using the @chevrotain/regexp-to-ast library + Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function fM(e,t,r){switch(e.type){case"Disjunction":for(let i=0;i{if(typeof u=="number")Lk(u,t,r);else{let h=u;if(r===!0)for(let f=h.from;f<=h.to;f++)Lk(f,t,r);else{for(let f=h.from;f<=h.to&&f=hg){let f=h.from>=hg?h.from:hg,d=h.to,p=Fc(f),m=Fc(d);for(let g=p;g<=m;g++)t[g]=g}}}});break;case"Group":fM(s.value,t,r);break;default:throw Error("Non Exhaustive Match")}let l=s.quantifier!==void 0&&s.quantifier.atLeast===0;if(s.type==="Group"&&dM(s)===!1||s.type!=="Group"&&l===!1)break}break;default:throw Error("non exhaustive match!")}return gr(t)}function Lk(e,t,r){let n=Fc(e);t[n]=n,r===!0&&gBt(e,t)}function gBt(e,t){let r=String.fromCharCode(e),n=r.toUpperCase();if(n!==r){let i=Fc(n.charCodeAt(0));t[i]=i}else{let i=r.toLowerCase();if(i!==r){let a=Fc(i.charCodeAt(0));t[a]=a}}}function sst(e,t){return rs(e.value,r=>{if(typeof r=="number")return Wn(t,r);{let n=r;return rs(t,i=>n.from<=i&&i<=n.to)!==void 0}})}function dM(e){let t=e.quantifier;return t&&t.atLeast===0?!0:e.value?Le(e.value)?za(e.value,dM):dM(e.value):!1}function Dk(e,t){if(t instanceof RegExp){let r=ug(t),n=new pM(e);return n.visit(r),n.found}else return rs(t,r=>Wn(e,r.charCodeAt(0)))!==void 0}var ost,A2,pM,cst=R(()=>{"use strict";b2();Ve();lg();_k();mM();ost="Complement Sets are not supported for first char optimization",A2=`Unable to use "first char" lexer optimizations: +`;o(lst,"getOptimizedStartCodesIndices");o(fM,"firstCharOptimizedIndices");o(Lk,"addOptimizedIdxToResult");o(gBt,"handleIgnoreCase");o(sst,"findCode");o(dM,"isWholeOptional");pM=class extends Bc{static{o(this,"CharCodeFinder")}constructor(t){super(),this.targetCharCodes=t,this.found=!1}visitChildren(t){if(this.found!==!0){switch(t.type){case"Lookahead":this.visitLookahead(t);return;case"NegativeLookahead":this.visitNegativeLookahead(t);return}super.visitChildren(t)}}visitCharacter(t){Wn(this.targetCharCodes,t.value)&&(this.found=!0)}visitSet(t){t.complement?sst(t,this.targetCharCodes)===void 0&&(this.found=!0):sst(t,this.targetCharCodes)!==void 0&&(this.found=!0)}};o(Dk,"canMatchCharCode")});function fst(e,t){t=Jh(t,{useSticky:yM,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` +`],tracer:o((b,w)=>w(),"tracer")});let r=t.tracer;r("initCharCodeToOptimizedIndexMap",()=>{IBt()});let n;r("Reject Lexer.NA",()=>{n=ef(e,b=>b[h0]===li.NA)});let i=!1,a;r("Transform Patterns",()=>{i=!1,a=Xt(n,b=>{let w=b[h0];if(Uo(w)){let S=w.source;return S.length===1&&S!=="^"&&S!=="$"&&S!=="."&&!w.ignoreCase?S:S.length===2&&S[0]==="\\"&&!Wn(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],S[1])?S[1]:t.useSticky?hst(w):ust(w)}else{if(Si(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 S=w.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),T=new RegExp(S);return t.useSticky?hst(T):ust(T)}}else throw Error("non exhaustive match")}})});let s,l,u,h,f;r("misc mapping",()=>{s=Xt(n,b=>b.tokenTypeIdx),l=Xt(n,b=>{let w=b.GROUP;if(w!==li.SKIPPED){if(yi(w))return w;if(fr(w))return!1;throw Error("non exhaustive match")}}),u=Xt(n,b=>{let w=b.LONGER_ALT;if(w)return Le(w)?Xt(w,T=>PT(n,T)):[PT(n,w)]}),h=Xt(n,b=>b.PUSH_MODE),f=Xt(n,b=>jt(b,"POP_MODE"))});let d;r("Line Terminator Handling",()=>{let b=bst(t.lineTerminatorCharacters);d=Xt(n,w=>!1),t.positionTracking!=="onlyOffset"&&(d=Xt(n,w=>jt(w,"LINE_BREAKS")?!!w.LINE_BREAKS:xst(w,b)===!1&&Dk(b,w.PATTERN)))});let p,m,g,y;r("Misc Mapping #2",()=>{p=Xt(n,yst),m=Xt(a,NBt),g=qr(n,(b,w)=>{let S=w.GROUP;return yi(S)&&S!==li.SKIPPED&&(b[S]=[]),b},{}),y=Xt(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 t.safeMode||r("First Char Optimization",()=>{x=qr(n,(b,w,S)=>{if(typeof w.PATTERN=="string"){let T=w.PATTERN.charCodeAt(0),E=Fc(T);gM(b,E,y[S])}else if(Le(w.START_CHARS_HINT)){let T;Et(w.START_CHARS_HINT,E=>{let _=typeof E=="string"?E.charCodeAt(0):E,A=Fc(_);T!==A&&(T=A,gM(b,A,y[S]))})}else if(Uo(w.PATTERN))if(w.PATTERN.unicode)v=!1,t.ensureOptimizations&&og(`${A2} 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=lst(w.PATTERN,t.ensureOptimizations);cr(T)&&(v=!1),Et(T,E=>{gM(b,E,y[S])})}else t.ensureOptimizations&&og(`${A2} 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 dst(e,t){let r=[],n=vBt(e);r=r.concat(n.errors);let i=xBt(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat(yBt(a)),r=r.concat(ABt(a)),r=r.concat(_Bt(a,t)),r=r.concat(LBt(a)),r}function yBt(e){let t=[],r=Yr(e,n=>Uo(n[h0]));return t=t.concat(wBt(r)),t=t.concat(EBt(r)),t=t.concat(CBt(r)),t=t.concat(SBt(r)),t=t.concat(TBt(r)),t}function vBt(e){let t=Yr(e,i=>!jt(i,h0)),r=Xt(t,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:qn.MISSING_PATTERN,tokenTypes:[i]})),n=tf(e,t);return{errors:r,valid:n}}function xBt(e){let t=Yr(e,i=>{let a=i[h0];return!Uo(a)&&!Si(a)&&!jt(a,"exec")&&!yi(a)}),r=Xt(t,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=tf(e,t);return{errors:r,valid:n}}function wBt(e){class t extends Bc{static{o(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(a){this.found=!0}}let r=Yr(e,i=>{let a=i.PATTERN;try{let s=ug(a),l=new t;return l.visit(s),l.found}catch{return bBt.test(a.source)}});return Xt(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 TBt(e){let t=Yr(e,n=>n.PATTERN.test(""));return Xt(t,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:qn.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}function EBt(e){class t extends Bc{static{o(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(a){this.found=!0}}let r=Yr(e,i=>{let a=i.PATTERN;try{let s=ug(a),l=new t;return l.visit(s),l.found}catch{return kBt.test(a.source)}});return Xt(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 CBt(e){let t=Yr(e,n=>{let i=n[h0];return i instanceof RegExp&&(i.multiline||i.global)});return Xt(t,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:qn.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function SBt(e){let t=[],r=Xt(e,a=>qr(e,(s,l)=>(a.PATTERN.source===l.PATTERN.source&&!Wn(t,l)&&l.PATTERN!==li.NA&&(t.push(l),s.push(l)),s),[]));r=Dc(r);let n=Yr(r,a=>a.length>1);return Xt(n,a=>{let s=Xt(a,u=>u.name);return{message:`The same RegExp pattern ->${aa(a).PATTERN}<-has been used in all of the following Token Types: ${s.join(", ")} <-`,type:qn.DUPLICATE_PATTERNS_FOUND,tokenTypes:a}})}function ABt(e){let t=Yr(e,n=>{if(!jt(n,"GROUP"))return!1;let i=n.GROUP;return i!==li.SKIPPED&&i!==li.NA&&!yi(i)});return Xt(t,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 _Bt(e,t){let r=Yr(e,i=>i.PUSH_MODE!==void 0&&!Wn(t,i.PUSH_MODE));return Xt(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 LBt(e){let t=[],r=qr(e,(n,i,a)=>{let s=i.PATTERN;return s===li.NA||(yi(s)?n.push({str:s,idx:a,tokenType:i}):Uo(s)&&RBt(s)&&n.push({str:s.source,idx:a,tokenType:i})),n},[]);return Et(e,(n,i)=>{Et(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`;t.push({message:u,type:qn.UNREACHABLE_PATTERN,tokenTypes:[n,l]})}})}),t}function DBt(e,t){if(Uo(t)){let r=t.exec(e);return r!==null&&r.index===0}else{if(Si(t))return t(e,0,[],{});if(jt(t,"exec"))return t.exec(e,0,[],{});if(typeof t=="string")return t===e;throw Error("non exhaustive match")}}function RBt(e){return rs([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>e.source.indexOf(r)!==-1)===void 0}function ust(e){let t=e.ignoreCase?"i":"";return new RegExp(`^(?:${e.source})`,t)}function hst(e){let t=e.ignoreCase?"iy":"y";return new RegExp(`${e.source}`,t)}function pst(e,t,r){let n=[];return jt(e,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}),jt(e,Rk)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Rk+`> property in its definition +`,type:qn.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),jt(e,Rk)&&jt(e,fg)&&!jt(e.modes,e.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${fg}: <${e.defaultMode}>which does not exist +`,type:qn.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),jt(e,Rk)&&Et(e.modes,(i,a)=>{Et(i,(s,l)=>{if(fr(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(jt(s,"LONGER_ALT")){let u=Le(s.LONGER_ALT)?s.LONGER_ALT:[s.LONGER_ALT];Et(u,h=>{!fr(h)&&!Wn(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 mst(e,t,r){let n=[],i=!1,a=Dc(Wr(gr(e.modes))),s=ef(a,u=>u[h0]===li.NA),l=bst(r);return t&&Et(s,u=>{let h=xst(u,l);if(h!==!1){let d={message:MBt(u,h),type:h.issue,tokenType:u};n.push(d)}else jt(u,"LINE_BREAKS")?u.LINE_BREAKS===!0&&(i=!0):Dk(l,u.PATTERN)&&(i=!0)}),t&&!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 gst(e){let t={},r=$r(e);return Et(r,n=>{let i=e[n];if(Le(i))t[n]=[];else throw Error("non exhaustive match")}),t}function yst(e){let t=e.PATTERN;if(Uo(t))return!1;if(Si(t))return!0;if(jt(t,"exec"))return!0;if(yi(t))return!1;throw Error("non exhaustive match")}function NBt(e){return yi(e)&&e.length===1?e.charCodeAt(0):!1}function xst(e,t){if(jt(e,"LINE_BREAKS"))return!1;if(Uo(e.PATTERN)){try{Dk(t,e.PATTERN)}catch(r){return{issue:qn.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(yi(e.PATTERN))return!1;if(yst(e))return{issue:qn.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function MBt(e,t){if(t.issue===qn.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern. + The problem is in the <${e.name}> Token Type + Root cause: ${t.errMsg}. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===qn.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. + The problem is in the <${e.name}> Token Type + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function bst(e){return Xt(e,r=>yi(r)?r.charCodeAt(0):r)}function gM(e,t,r){e[t]===void 0?e[t]=[r]:e[t].push(r)}function Fc(e){return e255?255+~~(e/255):e}}var h0,fg,Rk,yM,bBt,kBt,vst,hg,Nk,mM=R(()=>{"use strict";b2();_2();Ve();lg();cst();_k();h0="PATTERN",fg="defaultMode",Rk="modes",yM=typeof new RegExp("(?:)").sticky=="boolean";o(fst,"analyzeTokenTypes");o(dst,"validatePatterns");o(yBt,"validateRegExpPattern");o(vBt,"findMissingPatterns");o(xBt,"findInvalidPatterns");bBt=/[^\\][$]/;o(wBt,"findEndOfInputAnchor");o(TBt,"findEmptyMatchRegExps");kBt=/[^\\[][\^]|^\^/;o(EBt,"findStartOfInputAnchor");o(CBt,"findUnsupportedFlags");o(SBt,"findDuplicatePatterns");o(ABt,"findInvalidGroupType");o(_Bt,"findModesThatDoNotExist");o(LBt,"findUnreachablePatterns");o(DBt,"testTokenType");o(RBt,"noMetaChar");o(ust,"addStartOfInput");o(hst,"addStickyFlag");o(pst,"performRuntimeChecks");o(mst,"performWarningRuntimeChecks");o(gst,"cloneEmptyGroups");o(yst,"isCustomPattern");o(NBt,"isShortPattern");vst={test:o(function(e){let t=e.length;for(let r=this.lastIndex;r{r.isParent=r.categoryMatches.length>0})}function OBt(e){let t=rn(e),r=e,n=!0;for(;n;){r=Dc(Wr(Xt(r,a=>a.CATEGORIES)));let i=tf(r,t);t=t.concat(i),cr(i)?n=!1:r=i}return t}function PBt(e){Et(e,t=>{vM(t)||(kst[wst]=t,t.tokenTypeIdx=wst++),Tst(t)&&!Le(t.CATEGORIES)&&(t.CATEGORIES=[t.CATEGORIES]),Tst(t)||(t.CATEGORIES=[]),zBt(t)||(t.categoryMatches=[]),$Bt(t)||(t.categoryMatchesMap={})})}function BBt(e){Et(e,t=>{t.categoryMatches=[],Et(t.categoryMatchesMap,(r,n)=>{t.categoryMatches.push(kst[n].tokenTypeIdx)})})}function FBt(e){Et(e,t=>{Est([],t)})}function Est(e,t){Et(e,r=>{t.categoryMatchesMap[r.tokenTypeIdx]=!0}),Et(t.CATEGORIES,r=>{let n=e.concat(t);Wn(n,r)||Est(n,r)})}function vM(e){return jt(e,"tokenTypeIdx")}function Tst(e){return jt(e,"CATEGORIES")}function zBt(e){return jt(e,"categoryMatches")}function $Bt(e){return jt(e,"categoryMatchesMap")}function Cst(e){return jt(e,"tokenTypeIdx")}var wst,kst,f0=R(()=>{"use strict";Ve();o(Vu,"tokenStructuredMatcher");o(dg,"tokenStructuredMatcherNoCategories");wst=1,kst={};o(Uu,"augmentTokenTypes");o(OBt,"expandCategories");o(PBt,"assignTokenDefaultProps");o(BBt,"assignCategoriesTokensProp");o(FBt,"assignCategoriesMapProp");o(Est,"singleAssignCategoriesToksMap");o(vM,"hasShortKeyProperty");o(Tst,"hasCategoriesProperty");o(zBt,"hasExtendingTokensTypesProperty");o($Bt,"hasExtendingTokensTypesMapProperty");o(Cst,"isTokenType")});var xM,bM=R(()=>{"use strict";xM={buildUnableToPopLexerModeMessage(e){return`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(e,t,r,n,i){return`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${r} characters.`}}});var qn,L2,li,_2=R(()=>{"use strict";mM();Ve();lg();f0();bM();_k();(function(e){e[e.MISSING_PATTERN=0]="MISSING_PATTERN",e[e.INVALID_PATTERN=1]="INVALID_PATTERN",e[e.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",e[e.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",e[e.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",e[e.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",e[e.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",e[e.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",e[e.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",e[e.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",e[e.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",e[e.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",e[e.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",e[e.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",e[e.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",e[e.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",e[e.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",e[e.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(qn||(qn={}));L2={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` +`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:xM,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(L2);li=class{static{o(this,"Lexer")}constructor(t,r=L2){if(this.lexerDefinition=t,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}=C2(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({},L2,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===L2.lineTerminatorsPattern)this.config.lineTerminatorsPattern=vst;else if(this.config.lineTerminatorCharacters===L2.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),Le(t)?i={modes:{defaultMode:rn(t)},defaultMode:fg}:(a=!1,i=rn(t))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(pst(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(mst(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},Et(i.modes,(l,u)=>{i.modes[u]=ef(l,h=>fr(h))});let s=$r(i.modes);if(Et(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(dst(l,s))}),cr(this.lexerDefinitionErrors)){Uu(l);let h;this.TRACE_INIT("analyzeTokenTypes",()=>{h=fst(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=Xt(this.lexerDefinitionErrors,h=>h.message).join(`----------------------- +`);throw new Error(`Errors detected in definition of Lexer: +`+u)}Et(this.lexerDefinitionWarning,l=>{E2(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(yM?(this.chopInput=na,this.match=this.matchWithTest):(this.updateLastIndex=ei,this.match=this.matchWithExec),a&&(this.handleModes=ei),this.trackStartLines===!1&&(this.computeNewColumn=na),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=ei),/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",()=>{ast()}),this.TRACE_INIT("toFastProperties",()=>{S2(this)})})}tokenize(t,r=this.defaultMode){if(!cr(this.lexerDefinitionErrors)){let i=Xt(this.lexerDefinitionErrors,a=>a.message).join(`----------------------- +`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: +`+i)}return this.tokenizeInternal(t,r)}tokenizeInternal(t,r){let n,i,a,s,l,u,h,f,d,p,m,g,y,v,x,b,w=t,S=w.length,T=0,E=0,_=this.hasCustom?0:Math.floor(t.length/10),A=new Array(_),L=[],M=this.trackStartLines?1:void 0,N=this.trackStartLines?1:void 0,k=gst(this.emptyGroups),I=this.trackStartLines,C=this.config.lineTerminatorsPattern,O=0,D=[],P=[],F=[],B=[];Object.freeze(B);let G;function z(){return D}o(z,"getPossiblePatternsSlow");function W(J){let Z=Fc(J),H=P[Z];return H===void 0?B:H}o(W,"getPossiblePatternsOptimized");let Q=o(J=>{if(F.length===1&&J.tokenType.PUSH_MODE===void 0){let Z=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(J);L.push({offset:J.startOffset,line:J.startLine,column:J.startColumn,length:J.image.length,message:Z})}else{F.pop();let Z=xa(F);D=this.patternIdxToConfig[Z],P=this.charCodeToPatternIdxToConfig[Z],O=D.length;let H=this.canModeBeOptimized[Z]&&this.config.safeMode===!1;P&&H?G=W:G=z}},"pop_mode");function j(J){F.push(J),P=this.charCodeToPatternIdxToConfig[J],D=this.patternIdxToConfig[J],O=D.length,O=D.length;let Z=this.canModeBeOptimized[J]&&this.config.safeMode===!1;P&&Z?G=W:G=z}o(j,"push_mode"),j.call(this,r);let at,X=this.config.recoveryEnabled;for(;Tu.length){u=s,h=f,at=ct;break}}}break}}if(u!==null){if(d=u.length,p=at.group,p!==void 0&&(m=at.tokenTypeIdx,g=this.createTokenInstance(u,T,m,at.tokenType,M,N,d),this.handlePayload(g,h),p===!1?E=this.addToken(A,E,g):k[p].push(g)),t=this.chopInput(t,d),T=T+d,N=this.computeNewColumn(N,d),I===!0&&at.canLineTerminator===!0){let q=0,K,ot;C.lastIndex=0;do K=C.test(u),K===!0&&(ot=C.lastIndex-1,q++);while(K===!0);q!==0&&(M=M+q,N=d-ot,this.updateTokenEndLineColumnLocation(g,p,ot,q,M,N,d))}this.handleModes(at,Q,j,g)}else{let q=T,K=M,ot=N,ct=X===!1;for(;ct===!1&&T{"use strict";Ve();_2();f0();o(Hu,"tokenLabel");o(wM,"hasTokenLabel");GBt="parent",Sst="categories",Ast="label",_st="group",Lst="push_mode",Dst="pop_mode",Rst="longer_alt",Nst="line_breaks",Mst="start_chars_hint";o(Mk,"createToken");o(VBt,"createTokenInternal");po=Mk({name:"EOF",pattern:li.NA});Uu([po]);o(d0,"createTokenInstance");o(D2,"tokenMatcher")});var Wu,Ist,$l,pg=R(()=>{"use strict";p0();Ve();os();Wu={buildMismatchTokenMessage({expected:e,actual:t,previous:r,ruleName:n}){return`Expecting ${wM(e)?`--> ${Hu(e)} <--`:`token of type --> ${e.name} <--`} but found --> '${t.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:e,ruleName:t}){return"Redundant input, expecting EOF but found: "+e.image},buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",l=` +but found: '`+aa(t).image+"'";if(n)return a+n+l;{let u=qr(e,(p,m)=>p.concat(m),[]),h=Xt(u,p=>`[${Xt(p,m=>Hu(m)).join(", ")}]`),d=`one of these possible Token sequences: +${Xt(h,(p,m)=>` ${m+1}. ${p}`).join(` +`)}`;return a+d+l}},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:r,ruleName:n}){let i="Expecting: ",s=` +but found: '`+aa(t).image+"'";if(r)return i+r+s;{let u=`expecting at least one iteration which starts with one of these possible Token sequences:: + <${Xt(e,h=>`[${Xt(h,f=>Hu(f)).join(",")}]`).join(" ,")}>`;return i+u+s}}};Object.freeze(Wu);Ist={buildRuleNotFoundError(e,t){return"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+`<- +inside top level rule: ->`+e.name+"<-"}},$l={buildDuplicateFoundError(e,t){function r(f){return f instanceof br?f.terminalType.name:f instanceof nn?f.nonTerminalName:""}o(r,"getExtraProductionArgument");let n=e.name,i=aa(t),a=i.idx,s=Bs(i),l=r(i),u=a>0,h=`->${s}${u?a:""}<- ${l?`with argument: ->${l}<-`:""} + appears more than once (${t.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(e){return`Namespace conflict found in grammar. +The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.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(e){let t=Xt(e.prefixPath,i=>Hu(i)).join(", "),r=e.alternation.idx===0?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix +in inside <${e.topLevelRule.name}> Rule, +<${t}> 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(e){let t=Xt(e.prefixPath,i=>Hu(i)).join(", "),r=e.alternation.idx===0?"":e.alternation.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in inside <${e.topLevelRule.name}> Rule, +<${t}> 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(e){let t=Bs(e.repetition);return e.repetition.idx!==0&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens. +This could lead to an infinite loop.`},buildTokenNameError(e){return"deprecated"},buildEmptyAlternationError(e){return`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in inside <${e.topLevelRule.name}> Rule. +Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(e){return`An Alternation cannot have more than 256 alternatives: + inside <${e.topLevelRule.name}> Rule. + has ${e.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(e){let t=e.topLevelRule.name,r=Xt(e.leftRecursionPath,a=>a.name),n=`${t} --> ${r.concat([t]).join(" --> ")}`;return`Left Recursion found in grammar. +rule: <${t}> 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(e){return"deprecated"},buildDuplicateRuleNameError(e){let t;return e.topLevelRule instanceof as?t=e.topLevelRule.name:t=e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}}});function Ost(e,t){let r=new TM(e,t);return r.resolveRefs(),r.errors}var TM,Pst=R(()=>{"use strict";Fs();Ve();os();o(Ost,"resolveGrammar");TM=class extends ss{static{o(this,"GastRefResolverVisitor")}constructor(t,r){super(),this.nameToTopRule=t,this.errMsgProvider=r,this.errors=[]}resolveRefs(){Et(gr(this.nameToTopRule),t=>{this.currTopLevel=t,t.accept(this)})}visitNonTerminal(t){let r=this.nameToTopRule[t.nonTerminalName];if(r)t.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,t);this.errors.push({message:n,type:Gi.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:t.nonTerminalName})}}}});function Bk(e,t,r=[]){r=rn(r);let n=[],i=0;function a(l){return l.concat(gi(e,i+1))}o(a,"remainingPathWith");function s(l){let u=Bk(a(l),t,r);return n.concat(u)}for(o(s,"getAlternativesForProd");r.length{cr(u.definition)===!1&&(n=s(u.definition))}),n;if(l instanceof br)r.push(l.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:gi(e,i)}),n}function Fk(e,t,r,n){let i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE",l=!1,u=t.length,h=u-n-1,f=[],d=[];for(d.push({idx:-1,def:e,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:gi(m),ruleStack:Pu(y),occurrenceStack:Pu(v)};d.push(b)}else if(x instanceof br)if(g=0;b--){let w=x.definition[b],S={idx:g,def:w.definition.concat(gi(m)),ruleStack:y,occurrenceStack:v};d.push(S),d.push(s)}else if(x instanceof Ln)d.push({idx:g,def:x.definition.concat(gi(m)),ruleStack:y,occurrenceStack:v});else if(x instanceof as)d.push(UBt(x,g,y,v));else throw Error("non exhaustive match")}return f}function UBt(e,t,r,n){let i=rn(r);i.push(e.name);let a=rn(n);return a.push(1),{idx:t,def:e.definition,ruleStack:i,occurrenceStack:a}}var kM,Ik,mg,Ok,R2,Pk,N2,M2=R(()=>{"use strict";Ve();cM();Ck();os();kM=class extends Gu{static{o(this,"AbstractNextPossibleTokensWalker")}constructor(t,r){super(),this.topProd=t,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(t,r=[]){this.found||super.walk(t,r)}walkProdRef(t,r,n){if(t.referencedRule.name===this.nextProductionName&&t.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(t.referencedRule,i)}}updateExpectedNext(){cr(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},Ik=class extends kM{static{o(this,"NextAfterTokenWalker")}constructor(t,r){super(t,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(t,r,n){if(this.isAtEndOfPath&&t.terminalType.name===this.nextTerminalName&&t.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),a=new Ln({definition:i});this.possibleTokTypes=u0(a),this.found=!0}}},mg=class extends Gu{static{o(this,"AbstractNextTerminalAfterProductionWalker")}constructor(t,r){super(),this.topRule=t,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},Ok=class extends mg{static{o(this,"NextTerminalAfterManyWalker")}walkMany(t,r,n){if(t.idx===this.occurrence){let i=aa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof br&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(t,r,n)}},R2=class extends mg{static{o(this,"NextTerminalAfterManySepWalker")}walkManySep(t,r,n){if(t.idx===this.occurrence){let i=aa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof br&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(t,r,n)}},Pk=class extends mg{static{o(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(t,r,n){if(t.idx===this.occurrence){let i=aa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof br&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(t,r,n)}},N2=class extends mg{static{o(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(t,r,n){if(t.idx===this.occurrence){let i=aa(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof br&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(t,r,n)}};o(Bk,"possiblePathsFrom");o(Fk,"nextPossibleTokensAfter");o(UBt,"expandTopLevelRule")});function I2(e){if(e instanceof an||e==="Option")return Xn.OPTION;if(e instanceof Lr||e==="Repetition")return Xn.REPETITION;if(e instanceof Dn||e==="RepetitionMandatory")return Xn.REPETITION_MANDATORY;if(e instanceof Rn||e==="RepetitionMandatoryWithSeparator")return Xn.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof bn||e==="RepetitionWithSeparator")return Xn.REPETITION_WITH_SEPARATOR;if(e instanceof wn||e==="Alternation")return Xn.ALTERNATION;throw Error("non exhaustive match")}function $k(e){let{occurrence:t,rule:r,prodType:n,maxLookahead:i}=e,a=I2(n);return a===Xn.ALTERNATION?gg(t,r,i):yg(t,r,a,i)}function Fst(e,t,r,n,i,a){let s=gg(e,t,r),l=Hst(s)?dg:Vu;return a(s,n,l,i)}function zst(e,t,r,n,i,a){let s=yg(e,t,i,r),l=Hst(s)?dg:Vu;return a(s[0],l,n)}function $st(e,t,r,n){let i=e.length,a=za(e,s=>za(s,l=>l.length===1));if(t)return function(s){let l=Xt(s,u=>u.GATE);for(let u=0;uWr(u)),l=qr(s,(u,h,f)=>(Et(h,d=>{jt(u,d.tokenTypeIdx)||(u[d.tokenTypeIdx]=f),Et(d.categoryMatches,p=>{jt(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=e.length;if(n&&!r){let a=Wr(e);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,Et(u.categoryMatches,f=>{l[f]=!0}),l),[]);return function(){let l=this.LA(1);return s[l.tokenTypeIdx]===!0}}}else return function(){t:for(let a=0;aBk([s],1)),n=Bst(r.length),i=Xt(r,s=>{let l={};return Et(s,u=>{let h=EM(u.partialPath);Et(h,f=>{l[f]=!0})}),l}),a=r;for(let s=1;s<=t;s++){let l=a;a=Bst(l.length);for(let u=0;u{let x=EM(v.partialPath);Et(x,b=>{i[u][b]=!0})})}}}}return n}function gg(e,t,r,n){let i=new zk(e,Xn.ALTERNATION,n);return t.accept(i),Vst(i.result,r)}function yg(e,t,r,n){let i=new zk(e,r);t.accept(i);let a=i.result,l=new CM(t,e,r).startWalking(),u=new Ln({definition:a}),h=new Ln({definition:l});return Vst([u,h],n)}function Gk(e,t){t:for(let r=0;r{let i=t[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function Hst(e){return za(e,t=>za(t,r=>za(r,n=>cr(n.categoryMatches))))}var Xn,CM,zk,vg=R(()=>{"use strict";Ve();M2();Ck();f0();os();(function(e){e[e.OPTION=0]="OPTION",e[e.REPETITION=1]="REPETITION",e[e.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",e[e.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",e[e.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",e[e.ALTERNATION=5]="ALTERNATION"})(Xn||(Xn={}));o(I2,"getProdType");o($k,"getLookaheadPaths");o(Fst,"buildLookaheadFuncForOr");o(zst,"buildLookaheadFuncForOptionalProd");o($st,"buildAlternativesLookAheadFunc");o(Gst,"buildSingleAlternativeLookaheadFunction");CM=class extends Gu{static{o(this,"RestDefinitionFinderWalker")}constructor(t,r,n){super(),this.topProd=t,this.targetOccurrence=r,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(t,r,n,i){return t.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(i),!0):!1}walkOption(t,r,n){this.checkIsTarget(t,Xn.OPTION,r,n)||super.walkOption(t,r,n)}walkAtLeastOne(t,r,n){this.checkIsTarget(t,Xn.REPETITION_MANDATORY,r,n)||super.walkOption(t,r,n)}walkAtLeastOneSep(t,r,n){this.checkIsTarget(t,Xn.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(t,r,n)}walkMany(t,r,n){this.checkIsTarget(t,Xn.REPETITION,r,n)||super.walkOption(t,r,n)}walkManySep(t,r,n){this.checkIsTarget(t,Xn.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(t,r,n)}},zk=class extends ss{static{o(this,"InsideDefinitionFinderVisitor")}constructor(t,r,n){super(),this.targetOccurrence=t,this.targetProdType=r,this.targetRef=n,this.result=[]}checkIsTarget(t,r){t.idx===this.targetOccurrence&&this.targetProdType===r&&(this.targetRef===void 0||t===this.targetRef)&&(this.result=t.definition)}visitOption(t){this.checkIsTarget(t,Xn.OPTION)}visitRepetition(t){this.checkIsTarget(t,Xn.REPETITION)}visitRepetitionMandatory(t){this.checkIsTarget(t,Xn.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(t){this.checkIsTarget(t,Xn.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(t){this.checkIsTarget(t,Xn.REPETITION_WITH_SEPARATOR)}visitAlternation(t){this.checkIsTarget(t,Xn.ALTERNATION)}};o(Bst,"initializeArrayOfArrays");o(EM,"pathToHashKeys");o(HBt,"isUniquePrefixHash");o(Vst,"lookAheadSequenceFromAlternatives");o(gg,"getLookaheadPathsForOr");o(yg,"getLookaheadPathsForOptionalProd");o(Gk,"containsPath");o(Ust,"isStrictPrefixOfPath");o(Hst,"areTokenCategoriesNotUsed")});function Wst(e){let t=e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName});return Xt(t,r=>Object.assign({type:Gi.CUSTOM_LOOKAHEAD_VALIDATION},r))}function Yst(e,t,r,n){let i=ba(e,u=>WBt(u,r)),a=QBt(e,t,r),s=ba(e,u=>XBt(u,r)),l=ba(e,u=>qBt(u,e,n,r));return i.concat(a,s,l)}function WBt(e,t){let r=new SM;e.accept(r);let n=r.allProductions,i=zD(n,YBt),a=Os(i,l=>l.length>1);return Xt(gr(a),l=>{let u=aa(l),h=t.buildDuplicateFoundError(e,l),f=Bs(u),d={message:h,type:Gi.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:f,occurrence:u.idx},p=qst(u);return p&&(d.parameter=p),d})}function YBt(e){return`${Bs(e)}_#_${e.idx}_#_${qst(e)}`}function qst(e){return e instanceof br?e.terminalType.name:e instanceof nn?e.nonTerminalName:""}function qBt(e,t,r,n){let i=[];if(qr(t,(s,l)=>l.name===e.name?s+1:s,0)>1){let s=n.buildDuplicateRuleNameError({topLevelRule:e,grammarName:r});i.push({message:s,type:Gi.DUPLICATE_RULE_NAME,ruleName:e.name})}return i}function Xst(e,t,r){let n=[],i;return Wn(t,e)||(i=`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:Gi.INVALID_RULE_OVERRIDE,ruleName:e})),n}function _M(e,t,r,n=[]){let i=[],a=Vk(t.definition);if(cr(a))return[];{let s=e.name;Wn(a,e)&&i.push({message:r.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:n}),type:Gi.LEFT_RECURSION,ruleName:s});let u=tf(a,n.concat([e])),h=ba(u,f=>{let d=rn(n);return d.push(f),_M(e,f,r,d)});return i.concat(h)}}function Vk(e){let t=[];if(cr(e))return t;let r=aa(e);if(r instanceof nn)t.push(r.referencedRule);else if(r instanceof Ln||r instanceof an||r instanceof Dn||r instanceof Rn||r instanceof bn||r instanceof Lr)t=t.concat(Vk(r.definition));else if(r instanceof wn)t=Wr(Xt(r.definition,a=>Vk(a.definition)));else if(!(r instanceof br))throw Error("non exhaustive match");let n=c0(r),i=e.length>1;if(n&&i){let a=gi(e);return t.concat(Vk(a))}else return t}function jst(e,t){let r=new O2;e.accept(r);let n=r.alternations;return ba(n,a=>{let s=Pu(a.definition);return ba(s,(l,u)=>{let h=Fk([l],[],Vu,1);return cr(h)?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:a,emptyChoiceIdx:u}),type:Gi.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:a.idx,alternative:u+1}]:[]})})}function Kst(e,t,r){let n=new O2;e.accept(n);let i=n.alternations;return i=ef(i,s=>s.ignoreAmbiguities===!0),ba(i,s=>{let l=s.idx,u=s.maxLookahead||t,h=gg(l,e,u,s),f=jBt(h,s,e,r),d=KBt(h,s,e,r);return f.concat(d)})}function XBt(e,t){let r=new O2;e.accept(r);let n=r.alternations;return ba(n,a=>a.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:a}),type:Gi.TOO_MANY_ALTS,ruleName:e.name,occurrence:a.idx}]:[])}function Qst(e,t,r){let n=[];return Et(e,i=>{let a=new AM;i.accept(a);let s=a.allProductions;Et(s,l=>{let u=I2(l),h=l.maxLookahead||t,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:Gi.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function jBt(e,t,r,n){let i=[],a=qr(e,(l,u,h)=>(t.definition[h].ignoreAmbiguities===!0||Et(u,f=>{let d=[h];Et(e,(p,m)=>{h!==m&&Gk(p,f)&&t.definition[m].ignoreAmbiguities!==!0&&d.push(m)}),d.length>1&&!Gk(i,f)&&(i.push(f),l.push({alts:d,path:f}))}),l),[]);return Xt(a,l=>{let u=Xt(l.alts,f=>f+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:u,prefixPath:l.path}),type:Gi.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:t.idx,alternatives:l.alts}})}function KBt(e,t,r,n){let i=qr(e,(s,l,u)=>{let h=Xt(l,f=>({idx:u,path:f}));return s.concat(h)},[]);return Dc(ba(i,s=>{if(t.definition[s.idx].ignoreAmbiguities===!0)return[];let u=s.idx,h=s.path,f=Yr(i,p=>t.definition[p.idx].ignoreAmbiguities!==!0&&p.idx{let m=[p.idx+1,u+1],g=t.idx===0?"":t.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:m,prefixPath:p.path}),type:Gi.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:g,alternatives:m}})}))}function QBt(e,t,r){let n=[],i=Xt(t,a=>a.name);return Et(e,a=>{let s=a.name;if(Wn(i,s)){let l=r.buildNamespaceConflictError(a);n.push({message:l,type:Gi.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:s})}}),n}var SM,O2,AM,P2=R(()=>{"use strict";Ve();Fs();os();vg();M2();f0();o(Wst,"validateLookahead");o(Yst,"validateGrammar");o(WBt,"validateDuplicateProductions");o(YBt,"identifyProductionForDuplicates");o(qst,"getExtraProductionArgument");SM=class extends ss{static{o(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(t){this.allProductions.push(t)}visitOption(t){this.allProductions.push(t)}visitRepetitionWithSeparator(t){this.allProductions.push(t)}visitRepetitionMandatory(t){this.allProductions.push(t)}visitRepetitionMandatoryWithSeparator(t){this.allProductions.push(t)}visitRepetition(t){this.allProductions.push(t)}visitAlternation(t){this.allProductions.push(t)}visitTerminal(t){this.allProductions.push(t)}};o(qBt,"validateRuleDoesNotAlreadyExist");o(Xst,"validateRuleIsOverridden");o(_M,"validateNoLeftRecursion");o(Vk,"getFirstNoneTerminal");O2=class extends ss{static{o(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(t){this.alternations.push(t)}};o(jst,"validateEmptyOrAlternative");o(Kst,"validateAmbiguousAlternationAlternatives");AM=class extends ss{static{o(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(t){this.allProductions.push(t)}visitRepetitionMandatory(t){this.allProductions.push(t)}visitRepetitionMandatoryWithSeparator(t){this.allProductions.push(t)}visitRepetition(t){this.allProductions.push(t)}};o(XBt,"validateTooManyAlts");o(Qst,"validateSomeNonEmptyLookaheadPath");o(jBt,"checkAlternativesAmbiguities");o(KBt,"checkPrefixAlternativesAmbiguities");o(QBt,"checkTerminalAndNoneTerminalsNameSpace")});function Zst(e){let t=Jh(e,{errMsgProvider:Ist}),r={};return Et(e.rules,n=>{r[n.name]=n}),Ost(r,t.errMsgProvider)}function Jst(e){return e=Jh(e,{errMsgProvider:$l}),Yst(e.rules,e.tokenTypes,e.errMsgProvider,e.grammarName)}var tot=R(()=>{"use strict";Ve();Pst();P2();pg();o(Zst,"resolveGrammar");o(Jst,"validateGrammar")});function cf(e){return Wn(aot,e.name)}var eot,rot,not,iot,aot,xg,m0,B2,F2,z2,bg=R(()=>{"use strict";Ve();eot="MismatchedTokenException",rot="NoViableAltException",not="EarlyExitException",iot="NotAllInputParsedException",aot=[eot,rot,not,iot];Object.freeze(aot);o(cf,"isRecognitionException");xg=class extends Error{static{o(this,"RecognitionException")}constructor(t,r){super(t),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(t,r,n){super(t,r),this.previousToken=n,this.name=eot}},B2=class extends xg{static{o(this,"NoViableAltException")}constructor(t,r,n){super(t,r),this.previousToken=n,this.name=rot}},F2=class extends xg{static{o(this,"NotAllInputParsedException")}constructor(t,r){super(t,r),this.name=iot}},z2=class extends xg{static{o(this,"EarlyExitException")}constructor(t,r,n){super(t,r),this.previousToken=n,this.name=not}}});function ZBt(e,t,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=po,f=1),!(h===void 0||f===void 0)&&this.shouldInRepetitionRecoveryBeTried(h,f,s)&&this.tryInRepetitionRecovery(e,t,r,h)}var LM,RM,DM,Uk,NM=R(()=>{"use strict";p0();Ve();bg();uM();Fs();LM={},RM="InRuleRecoveryException",DM=class extends Error{static{o(this,"InRuleRecoveryException")}constructor(t){super(t),this.name=RM}},Uk=class{static{o(this,"Recoverable")}initRecoverable(t){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=jt(t,"recoveryEnabled")?t.recoveryEnabled:ls.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=ZBt)}getTokenToInsert(t){let r=d0(t,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(t){return!0}canTokenTypeBeDeletedInRecovery(t){return!0}tryInRepetitionRecovery(t,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=Pu(l),this.SAVE_ERROR(g)},"generateErrorMessage");for(;!u;)if(this.tokenMatcher(f,i)){d();return}else if(n.call(this)){d(),t.apply(this,r);return}else this.tokenMatcher(f,a)?u=!0:(f=this.SKIP_TOKEN(),this.addToResyncTokens(f,l));this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(t,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),t)||this.isBackTracking()||this.canPerformInRuleRecovery(t,this.getFollowsForInRuleRecovery(t,r)))}getFollowsForInRuleRecovery(t,r){let n=this.getCurrentGrammarPath(t,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(t,r){if(this.canRecoverWithSingleTokenInsertion(t,r))return this.getTokenToInsert(t);if(this.canRecoverWithSingleTokenDeletion(t)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new DM("sad sad panda")}canPerformInRuleRecovery(t,r){return this.canRecoverWithSingleTokenInsertion(t,r)||this.canRecoverWithSingleTokenDeletion(t)}canRecoverWithSingleTokenInsertion(t,r){if(!this.canTokenTypeBeInsertedInRecovery(t)||cr(r))return!1;let n=this.LA(1);return rs(r,a=>this.tokenMatcher(n,a))!==void 0}canRecoverWithSingleTokenDeletion(t){return this.canTokenTypeBeDeletedInRecovery(t)?this.tokenMatcher(this.LA(2),t):!1}isInCurrentRuleReSyncSet(t){let r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return Wn(n,t)}findReSyncTokenType(){let t=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=rs(t,a=>D2(r,a));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return LM;let t=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(t),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let t=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return Xt(t,(n,i)=>i===0?LM:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(t[i-1])})}flattenFollowSet(){let t=Xt(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return Wr(t)}getFollowSetFromFollowKey(t){if(t===LM)return[po];let r=t.ruleName+t.idxInCallingRule+Sk+t.inRule;return this.resyncFollows[r]}addToResyncTokens(t,r){return this.tokenMatcher(t,po)||r.push(t),r}reSyncTo(t){let r=[],n=this.LA(1);for(;this.tokenMatcher(n,t)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return Pu(r)}attemptInRepetitionRecovery(t,r,n,i,a,s,l){}getCurrentGrammarPath(t,r){let n=this.getHumanReadableRuleStack(),i=rn(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:t,lastTokOccurrence:r}}getHumanReadableRuleStack(){return Xt(this.RULE_STACK,t=>this.shortRuleNameToFullName(t))}};o(ZBt,"attemptInRepetitionRecovery")});function Hk(e,t,r){return r|t|e}var Wk=R(()=>{"use strict";o(Hk,"getKeyForAutomaticLookahead")});var Yu,MM=R(()=>{"use strict";Ve();pg();Fs();P2();vg();Yu=class{static{o(this,"LLkLookaheadStrategy")}constructor(t){var r;this.maxLookahead=(r=t?.maxLookahead)!==null&&r!==void 0?r:ls.maxLookahead}validate(t){let r=this.validateNoLeftRecursion(t.rules);if(cr(r)){let n=this.validateEmptyOrAlternatives(t.rules),i=this.validateAmbiguousAlternationAlternatives(t.rules,this.maxLookahead),a=this.validateSomeNonEmptyLookaheadPath(t.rules,this.maxLookahead);return[...r,...n,...i,...a]}return r}validateNoLeftRecursion(t){return ba(t,r=>_M(r,r,$l))}validateEmptyOrAlternatives(t){return ba(t,r=>jst(r,$l))}validateAmbiguousAlternationAlternatives(t,r){return ba(t,n=>Kst(n,r,$l))}validateSomeNonEmptyLookaheadPath(t,r){return Qst(t,r,$l)}buildLookaheadForAlternation(t){return Fst(t.prodOccurrence,t.rule,t.maxLookahead,t.hasPredicates,t.dynamicTokensEnabled,$st)}buildLookaheadForOptional(t){return zst(t.prodOccurrence,t.rule,t.maxLookahead,t.dynamicTokensEnabled,I2(t.prodType),Gst)}}});function JBt(e){Yk.reset(),e.accept(Yk);let t=Yk.dslMethods;return Yk.reset(),t}var qk,IM,Yk,sot=R(()=>{"use strict";Ve();Fs();Wk();os();MM();qk=class{static{o(this,"LooksAhead")}initLooksAhead(t){this.dynamicTokensEnabled=jt(t,"dynamicTokensEnabled")?t.dynamicTokensEnabled:ls.dynamicTokensEnabled,this.maxLookahead=jt(t,"maxLookahead")?t.maxLookahead:ls.maxLookahead,this.lookaheadStrategy=jt(t,"lookaheadStrategy")?t.lookaheadStrategy:new Yu({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(t){Et(t,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:a,repetitionMandatory:s,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:u}=JBt(r);Et(n,h=>{let f=h.idx===0?"":h.idx;this.TRACE_INIT(`${Bs(h)}${f}`,()=>{let d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:h.idx,rule:r,maxLookahead:h.maxLookahead||this.maxLookahead,hasPredicates:h.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=Hk(this.fullRuleNameToShort[r.name],256,h.idx);this.setLaFuncCache(p,d)})}),Et(i,h=>{this.computeLookaheadFunc(r,h.idx,768,"Repetition",h.maxLookahead,Bs(h))}),Et(a,h=>{this.computeLookaheadFunc(r,h.idx,512,"Option",h.maxLookahead,Bs(h))}),Et(s,h=>{this.computeLookaheadFunc(r,h.idx,1024,"RepetitionMandatory",h.maxLookahead,Bs(h))}),Et(l,h=>{this.computeLookaheadFunc(r,h.idx,1536,"RepetitionMandatoryWithSeparator",h.maxLookahead,Bs(h))}),Et(u,h=>{this.computeLookaheadFunc(r,h.idx,1280,"RepetitionWithSeparator",h.maxLookahead,Bs(h))})})})}computeLookaheadFunc(t,r,n,i,a,s){this.TRACE_INIT(`${s}${r===0?"":r}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:t,maxLookahead:a||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),u=Hk(this.fullRuleNameToShort[t.name],n,r);this.setLaFuncCache(u,l)})}getKeyForAutomaticLookahead(t,r){let n=this.getLastExplicitRuleShortName();return Hk(n,t,r)}getLaFuncFromCache(t){return this.lookAheadFuncsCache.get(t)}setLaFuncCache(t,r){this.lookAheadFuncsCache.set(t,r)}},IM=class extends ss{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(t){this.dslMethods.option.push(t)}visitRepetitionWithSeparator(t){this.dslMethods.repetitionWithSeparator.push(t)}visitRepetitionMandatory(t){this.dslMethods.repetitionMandatory.push(t)}visitRepetitionMandatoryWithSeparator(t){this.dslMethods.repetitionMandatoryWithSeparator.push(t)}visitRepetition(t){this.dslMethods.repetition.push(t)}visitAlternation(t){this.dslMethods.alternation.push(t)}},Yk=new IM;o(JBt,"collectMethods")});function BM(e,t){isNaN(e.startOffset)===!0?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset{"use strict";o(BM,"setNodeLocationOnlyOffset");o(FM,"setNodeLocationFull");o(oot,"addTerminalToCst");o(lot,"addNoneTerminalToCst")});function zM(e,t){Object.defineProperty(e,tFt,{enumerable:!1,configurable:!0,writable:!1,value:t})}var tFt,uot=R(()=>{"use strict";tFt="name";o(zM,"defineNameProp")});function eFt(e,t){let r=$r(e),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=t,r}function fot(e,t,r){let n=o(function(){},"derivedConstructor");zM(n,e+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return Et(t,a=>{i[a]=eFt}),n.prototype=i,n.prototype.constructor=n,n}function rFt(e,t){return nFt(e,t)}function nFt(e,t){let r=Yr(t,i=>Si(e[i])===!1),n=Xt(r,i=>({msg:`Missing visitor method: <${i}> on ${e.constructor.name} CST Visitor.`,type:$M.MISSING_METHOD,methodName:i}));return Dc(n)}var $M,dot=R(()=>{"use strict";Ve();uot();o(eFt,"defaultVisit");o(hot,"createBaseSemanticVisitorConstructor");o(fot,"createBaseVisitorConstructorWithDefaults");(function(e){e[e.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",e[e.MISSING_METHOD=1]="MISSING_METHOD"})($M||($M={}));o(rFt,"validateVisitor");o(nFt,"validateMissingCstMethods")});var Qk,pot=R(()=>{"use strict";cot();Ve();dot();Fs();Qk=class{static{o(this,"TreeBuilder")}initTreeBuilder(t){if(this.CST_STACK=[],this.outputCst=t.outputCst,this.nodeLocationTracking=jt(t,"nodeLocationTracking")?t.nodeLocationTracking:ls.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=ei,this.cstFinallyStateUpdate=ei,this.cstPostTerminal=ei,this.cstPostNonTerminal=ei,this.cstPostRule=ei;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=FM,this.setNodeLocationFromNode=FM,this.cstPostRule=ei,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=ei,this.setNodeLocationFromNode=ei,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=BM,this.setNodeLocationFromNode=BM,this.cstPostRule=ei,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=ei,this.setNodeLocationFromNode=ei,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=ei,this.setNodeLocationFromNode=ei,this.cstPostRule=ei,this.setInitialNodeLocation=ei;else throw Error(`Invalid config option: "${t.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(t){t.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(t){t.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(t){t.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(t){let r=this.LA(1);t.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(t){let r={name:t,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(t){let r=this.LA(0),n=t.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(t){let r=this.LA(0),n=t.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(t,r){let n=this.CST_STACK[this.CST_STACK.length-1];oot(n,r,t),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(t,r){let n=this.CST_STACK[this.CST_STACK.length-1];lot(n,r,t),this.setNodeLocationFromNode(n.location,t.location)}getBaseCstVisitorConstructor(){if(fr(this.baseCstVisitorConstructor)){let t=hot(this.className,$r(this.gastProductionsCache));return this.baseCstVisitorConstructor=t,t}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(fr(this.baseCstVisitorWithDefaultsConstructor)){let t=fot(this.className,$r(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=t,t}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let t=this.RULE_STACK;return t[t.length-1]}getPreviousExplicitRuleShortName(){let t=this.RULE_STACK;return t[t.length-2]}getLastExplicitRuleOccurrenceIndex(){let t=this.RULE_OCCURRENCE_STACK;return t[t.length-1]}}});var Zk,mot=R(()=>{"use strict";Fs();Zk=class{static{o(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(t){if(this.selfAnalysisDone!==!0)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=t,this.tokVectorLength=t.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):wg}LA(t){let r=this.currIdx+t;return r<0||this.tokVectorLength<=r?wg:this.tokVector[r]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(t){this.currIdx=t}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}}});var Jk,got=R(()=>{"use strict";Ve();bg();Fs();pg();P2();os();Jk=class{static{o(this,"RecognizerApi")}ACTION(t){return t.call(this)}consume(t,r,n){return this.consumeInternal(r,t,n)}subrule(t,r,n){return this.subruleInternal(r,t,n)}option(t,r){return this.optionInternal(r,t)}or(t,r){return this.orInternal(r,t)}many(t,r){return this.manyInternal(t,r)}atLeastOne(t,r){return this.atLeastOneInternal(t,r)}CONSUME(t,r){return this.consumeInternal(t,0,r)}CONSUME1(t,r){return this.consumeInternal(t,1,r)}CONSUME2(t,r){return this.consumeInternal(t,2,r)}CONSUME3(t,r){return this.consumeInternal(t,3,r)}CONSUME4(t,r){return this.consumeInternal(t,4,r)}CONSUME5(t,r){return this.consumeInternal(t,5,r)}CONSUME6(t,r){return this.consumeInternal(t,6,r)}CONSUME7(t,r){return this.consumeInternal(t,7,r)}CONSUME8(t,r){return this.consumeInternal(t,8,r)}CONSUME9(t,r){return this.consumeInternal(t,9,r)}SUBRULE(t,r){return this.subruleInternal(t,0,r)}SUBRULE1(t,r){return this.subruleInternal(t,1,r)}SUBRULE2(t,r){return this.subruleInternal(t,2,r)}SUBRULE3(t,r){return this.subruleInternal(t,3,r)}SUBRULE4(t,r){return this.subruleInternal(t,4,r)}SUBRULE5(t,r){return this.subruleInternal(t,5,r)}SUBRULE6(t,r){return this.subruleInternal(t,6,r)}SUBRULE7(t,r){return this.subruleInternal(t,7,r)}SUBRULE8(t,r){return this.subruleInternal(t,8,r)}SUBRULE9(t,r){return this.subruleInternal(t,9,r)}OPTION(t){return this.optionInternal(t,0)}OPTION1(t){return this.optionInternal(t,1)}OPTION2(t){return this.optionInternal(t,2)}OPTION3(t){return this.optionInternal(t,3)}OPTION4(t){return this.optionInternal(t,4)}OPTION5(t){return this.optionInternal(t,5)}OPTION6(t){return this.optionInternal(t,6)}OPTION7(t){return this.optionInternal(t,7)}OPTION8(t){return this.optionInternal(t,8)}OPTION9(t){return this.optionInternal(t,9)}OR(t){return this.orInternal(t,0)}OR1(t){return this.orInternal(t,1)}OR2(t){return this.orInternal(t,2)}OR3(t){return this.orInternal(t,3)}OR4(t){return this.orInternal(t,4)}OR5(t){return this.orInternal(t,5)}OR6(t){return this.orInternal(t,6)}OR7(t){return this.orInternal(t,7)}OR8(t){return this.orInternal(t,8)}OR9(t){return this.orInternal(t,9)}MANY(t){this.manyInternal(0,t)}MANY1(t){this.manyInternal(1,t)}MANY2(t){this.manyInternal(2,t)}MANY3(t){this.manyInternal(3,t)}MANY4(t){this.manyInternal(4,t)}MANY5(t){this.manyInternal(5,t)}MANY6(t){this.manyInternal(6,t)}MANY7(t){this.manyInternal(7,t)}MANY8(t){this.manyInternal(8,t)}MANY9(t){this.manyInternal(9,t)}MANY_SEP(t){this.manySepFirstInternal(0,t)}MANY_SEP1(t){this.manySepFirstInternal(1,t)}MANY_SEP2(t){this.manySepFirstInternal(2,t)}MANY_SEP3(t){this.manySepFirstInternal(3,t)}MANY_SEP4(t){this.manySepFirstInternal(4,t)}MANY_SEP5(t){this.manySepFirstInternal(5,t)}MANY_SEP6(t){this.manySepFirstInternal(6,t)}MANY_SEP7(t){this.manySepFirstInternal(7,t)}MANY_SEP8(t){this.manySepFirstInternal(8,t)}MANY_SEP9(t){this.manySepFirstInternal(9,t)}AT_LEAST_ONE(t){this.atLeastOneInternal(0,t)}AT_LEAST_ONE1(t){return this.atLeastOneInternal(1,t)}AT_LEAST_ONE2(t){this.atLeastOneInternal(2,t)}AT_LEAST_ONE3(t){this.atLeastOneInternal(3,t)}AT_LEAST_ONE4(t){this.atLeastOneInternal(4,t)}AT_LEAST_ONE5(t){this.atLeastOneInternal(5,t)}AT_LEAST_ONE6(t){this.atLeastOneInternal(6,t)}AT_LEAST_ONE7(t){this.atLeastOneInternal(7,t)}AT_LEAST_ONE8(t){this.atLeastOneInternal(8,t)}AT_LEAST_ONE9(t){this.atLeastOneInternal(9,t)}AT_LEAST_ONE_SEP(t){this.atLeastOneSepFirstInternal(0,t)}AT_LEAST_ONE_SEP1(t){this.atLeastOneSepFirstInternal(1,t)}AT_LEAST_ONE_SEP2(t){this.atLeastOneSepFirstInternal(2,t)}AT_LEAST_ONE_SEP3(t){this.atLeastOneSepFirstInternal(3,t)}AT_LEAST_ONE_SEP4(t){this.atLeastOneSepFirstInternal(4,t)}AT_LEAST_ONE_SEP5(t){this.atLeastOneSepFirstInternal(5,t)}AT_LEAST_ONE_SEP6(t){this.atLeastOneSepFirstInternal(6,t)}AT_LEAST_ONE_SEP7(t){this.atLeastOneSepFirstInternal(7,t)}AT_LEAST_ONE_SEP8(t){this.atLeastOneSepFirstInternal(8,t)}AT_LEAST_ONE_SEP9(t){this.atLeastOneSepFirstInternal(9,t)}RULE(t,r,n=Tg){if(Wn(this.definedRulesNames,t)){let s={message:$l.buildDuplicateRuleNameError({topLevelRule:t,grammarName:this.className}),type:Gi.DUPLICATE_RULE_NAME,ruleName:t};this.definitionErrors.push(s)}this.definedRulesNames.push(t);let i=this.defineRule(t,r,n);return this[t]=i,i}OVERRIDE_RULE(t,r,n=Tg){let i=Xst(t,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let a=this.defineRule(t,r,n);return this[t]=a,a}BACKTRACK(t,r){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return t.apply(this,r),!0}catch(i){if(cf(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return kk(gr(this.gastProductionsCache))}}});var tE,yot=R(()=>{"use strict";Ve();Wk();bg();vg();M2();Fs();NM();p0();f0();tE=class{static{o(this,"RecognizerEngine")}initRecognizerEngine(t,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={},jt(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(Le(t)){if(cr(t))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 t[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(Le(t))this.tokensMap=qr(t,(a,s)=>(a[s.name]=s,a),{});else if(jt(t,"modes")&&za(Wr(gr(t.modes)),Cst)){let a=Wr(gr(t.modes)),s=Qm(a);this.tokensMap=qr(s,(l,u)=>(l[u.name]=u,l),{})}else if(xn(t))this.tokensMap=rn(t);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=po;let n=jt(t,"modes")?Wr(gr(t.modes)):gr(t),i=za(n,a=>cr(a.categoryMatches));this.tokenMatcher=i?dg:Vu,Uu(gr(this.tokensMap))}defineRule(t,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${t}> 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=jt(n,"resyncEnabled")?n.resyncEnabled:Tg.resyncEnabled,a=jt(n,"recoveryValueFunc")?n.recoveryValueFunc:Tg.recoveryValueFunc,s=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[s]=t,this.fullRuleNameToShort[t]=s;let l;return this.outputCst===!0?l=o(function(...f){try{this.ruleInvocationStateUpdate(s,t,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,t,this.subruleIdx),r.apply(this,f)}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(l,{ruleName:t,originalGrammarAction:r})}invokeRuleCatch(t,r,n){let i=this.RULE_STACK.length===1,a=r&&!this.isBackTracking()&&this.recoveryEnabled;if(cf(t)){let s=t;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(t);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(t);throw s}}else throw t}optionInternal(t,r){let n=this.getKeyForAutomaticLookahead(512,r);return this.optionInternalLogic(t,r,n)}optionInternalLogic(t,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof t!="function"){a=t.DEF;let s=t.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=t;if(i.call(this)===!0)return a.call(this)}atLeastOneInternal(t,r){let n=this.getKeyForAutomaticLookahead(1024,t);return this.atLeastOneInternalLogic(t,r,n)}atLeastOneInternalLogic(t,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(t,Xn.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[t,r],i,1024,t,Pk)}atLeastOneSepFirstInternal(t,r){let n=this.getKeyForAutomaticLookahead(1536,t);this.atLeastOneSepFirstInternalLogic(t,r,n)}atLeastOneSepFirstInternalLogic(t,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,[t,a,l,i,N2],l,1536,t,N2)}else throw this.raiseEarlyExitException(t,Xn.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(t,r){let n=this.getKeyForAutomaticLookahead(768,t);return this.manyInternalLogic(t,r,n)}manyInternalLogic(t,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,[t,r],i,768,t,Ok,s)}manySepFirstInternal(t,r){let n=this.getKeyForAutomaticLookahead(1280,t);this.manySepFirstInternalLogic(t,r,n)}manySepFirstInternalLogic(t,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,[t,a,l,i,R2],l,1280,t,R2)}}repetitionSepSecondInternal(t,r,n,i,a){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,r,n,i,a],n,1536,t,a)}doSingleRepetition(t){let r=this.getLexerPosition();return t.call(this),this.getLexerPosition()>r}orInternal(t,r){let n=this.getKeyForAutomaticLookahead(256,r),i=Le(t)?t:t.DEF,s=this.getLaFuncFromCache(n).call(this,i);if(s!==void 0)return i[s].ALT.call(this);this.raiseNoAltException(r,t.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let t=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:t,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new F2(r,t))}}subruleInternal(t,r,n){let i;try{let a=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=t.apply(this,a),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:t.ruleName),i}catch(a){throw this.subruleInternalError(a,n,t.ruleName)}}subruleInternalError(t,r,n){throw cf(t)&&t.partialCstResult!==void 0&&(this.cstPostNonTerminal(t.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete t.partialCstResult),t}consumeInternal(t,r,n){let i;try{let a=this.LA(1);this.tokenMatcher(a,t)===!0?(this.consumeToken(),i=a):this.consumeInternalError(t,a,n)}catch(a){i=this.consumeInternalRecovery(t,r,a)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:t.name,i),i}consumeInternalError(t,r,n){let i,a=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:t,actual:r,previous:a,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new m0(i,r,a))}consumeInternalRecovery(t,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(t,r);try{return this.tryInRuleRecovery(t,i)}catch(a){throw a.name===RM?n:a}}else throw n}saveRecogState(){let t=this.errors,r=rn(this.RULE_STACK);return{errors:t,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(t){this.errors=t.errors,this.importLexerState(t.lexerState),this.RULE_STACK=t.RULE_STACK}ruleInvocationStateUpdate(t,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(t),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let t=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[t]}shortRuleNameToFullName(t){return this.shortRuleNameToFull[t]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),po)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}});var eE,vot=R(()=>{"use strict";bg();Ve();vg();Fs();eE=class{static{o(this,"ErrorHandler")}initErrorHandler(t){this._errors=[],this.errorMessageProvider=jt(t,"errorMessageProvider")?t.errorMessageProvider:ls.errorMessageProvider}SAVE_ERROR(t){if(cf(t))return t.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:rn(this.RULE_OCCURRENCE_STACK)},this._errors.push(t),t;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return rn(this._errors)}set errors(t){this._errors=t}raiseEarlyExitException(t,r,n){let i=this.getCurrRuleFullName(),a=this.getGAstProductions()[i],l=yg(t,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 z2(h,this.LA(1),this.LA(0)))}raiseNoAltException(t,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],a=gg(t,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 B2(u,this.LA(1),l))}}});var rE,xot=R(()=>{"use strict";M2();Ve();rE=class{static{o(this,"ContentAssist")}initContentAssist(){}computeContentAssist(t,r){let n=this.gastProductionsCache[t];if(fr(n))throw Error(`Rule ->${t}<- does not exist in this grammar.`);return Fk([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(t){let r=aa(t.ruleStack),i=this.getGAstProductions()[r];return new Ik(i,t).startWalking()}}});function G2(e,t,r,n=!1){iE(r);let i=xa(this.recordingProdStack),a=Si(t)?t:t.DEF,s=new e({definition:[],idx:r});return n&&(s.separator=t.SEP),jt(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),aE}function sFt(e,t){iE(t);let r=xa(this.recordingProdStack),n=Le(e)===!1,i=n===!1?e:e.DEF,a=new wn({definition:[],idx:t,ignoreAmbiguities:n&&e.IGNORE_AMBIGUITIES===!0});jt(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD);let s=r2(i,l=>Si(l.GATE));return a.hasPredicates=s,r.definition.push(a),Et(i,l=>{let u=new Ln({definition:[]});a.definition.push(u),jt(l,"IGNORE_AMBIGUITIES")?u.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:jt(l,"GATE")&&(u.ignoreAmbiguities=!0),this.recordingProdStack.push(u),l.ALT.call(this),this.recordingProdStack.pop()}),aE}function Tot(e){return e===0?"":`${e}`}function iE(e){if(e<0||e>wot){let t=new Error(`Invalid DSL Method idx value: <${e}> + Idx value must be a none negative value smaller than ${wot+1}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}var aE,bot,wot,kot,Eot,aFt,nE,Cot=R(()=>{"use strict";Ve();os();_2();f0();p0();Fs();Wk();aE={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(aE);bot=!0,wot=Math.pow(2,8)-1,kot=Mk({name:"RECORDING_PHASE_TOKEN",pattern:li.NA});Uu([kot]);Eot=d0(kot,`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(Eot);aFt={name:`This CSTNode indicates the Parser is in Recording Phase + See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},nE=class{static{o(this,"GastRecorder")}initGastRecorder(t){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let t=0;t<10;t++){let r=t>0?t:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,t,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,t,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,t)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,t)},this[`MANY${r}`]=function(n){this.manyInternalRecord(t,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(t,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(t,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(t,n)}}this.consume=function(t,r,n){return this.consumeInternalRecord(r,t,n)},this.subrule=function(t,r,n){return this.subruleInternalRecord(r,t,n)},this.option=function(t,r){return this.optionInternalRecord(r,t)},this.or=function(t,r){return this.orInternalRecord(r,t)},this.many=function(t,r){this.manyInternalRecord(t,r)},this.atLeastOne=function(t,r){this.atLeastOneInternalRecord(t,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 t=this;for(let r=0;r<10;r++){let n=r>0?r:"";delete t[`CONSUME${n}`],delete t[`SUBRULE${n}`],delete t[`OPTION${n}`],delete t[`OR${n}`],delete t[`MANY${n}`],delete t[`MANY_SEP${n}`],delete t[`AT_LEAST_ONE${n}`],delete t[`AT_LEAST_ONE_SEP${n}`]}delete t.consume,delete t.subrule,delete t.option,delete t.or,delete t.many,delete t.atLeastOne,delete t.ACTION,delete t.BACKTRACK,delete t.LA})}ACTION_RECORD(t){}BACKTRACK_RECORD(t,r){return()=>!0}LA_RECORD(t){return wg}topLevelRuleRecord(t,r){try{let n=new as({definition:[],name:t});return n.name=t,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(t,r){return G2.call(this,an,t,r)}atLeastOneInternalRecord(t,r){G2.call(this,Dn,r,t)}atLeastOneSepFirstInternalRecord(t,r){G2.call(this,Rn,r,t,bot)}manyInternalRecord(t,r){G2.call(this,Lr,r,t)}manySepFirstInternalRecord(t,r){G2.call(this,bn,r,t,bot)}orInternalRecord(t,r){return sFt.call(this,t,r)}subruleInternalRecord(t,r,n){if(iE(r),!t||jt(t,"ruleName")===!1){let l=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(t)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let i=xa(this.recordingProdStack),a=t.ruleName,s=new nn({idx:r,nonTerminalName:a,label:n?.LABEL,referencedRule:void 0});return i.definition.push(s),this.outputCst?aFt:aE}consumeInternalRecord(t,r,n){if(iE(r),!vM(t)){let s=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(t)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw s.KNOWN_RECORDER_ERROR=!0,s}let i=xa(this.recordingProdStack),a=new br({idx:r,terminalType:t,label:n?.LABEL});return i.definition.push(a),Eot}};o(G2,"recordProd");o(sFt,"recordOrProd");o(Tot,"getIdxSuffix");o(iE,"assertMethodIdxIsValid")});var sE,Sot=R(()=>{"use strict";Ve();lg();Fs();sE=class{static{o(this,"PerformanceTracer")}initPerformanceTracer(t){if(jt(t,"traceInitPerf")){let r=t.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=ls.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(t,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${t}>`);let{time:i,value:a}=C2(r),s=i>10?console.warn:console.log;return this.traceInitIndent time: ${i}ms`),this.traceInitIndent--,a}else return r()}}});function Aot(e,t){t.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(e.prototype,i,a):e.prototype[i]=r.prototype[i]})})}var _ot=R(()=>{"use strict";o(Aot,"applyMixins")});function oE(e=void 0){return function(){return e}}var wg,ls,Tg,Gi,V2,U2,Fs=R(()=>{"use strict";Ve();lg();ist();p0();pg();tot();NM();sot();pot();mot();got();yot();vot();xot();Cot();Sot();_ot();P2();wg=d0(po,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(wg);ls=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Wu,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Tg=Object.freeze({recoveryValueFunc:o(()=>{},"recoveryValueFunc"),resyncEnabled:!0});(function(e){e[e.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",e[e.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",e[e.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",e[e.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",e[e.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",e[e.LEFT_RECURSION=5]="LEFT_RECURSION",e[e.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",e[e.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",e[e.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",e[e.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",e[e.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",e[e.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",e[e.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",e[e.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(Gi||(Gi={}));o(oE,"EMPTY_ALT");V2=class e{static{o(this,"Parser")}static performSelfAnalysis(t){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let t;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{S2(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Et(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=Zst({rules:gr(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(cr(n)&&this.skipValidations===!1){let i=Jst({rules:gr(this.gastProductionsCache),tokenTypes:gr(this.tokensMap),errMsgProvider:$l,grammarName:r}),a=Wst({lookaheadStrategy:this.lookaheadStrategy,rules:gr(this.gastProductionsCache),tokenTypes:gr(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(i,a)}}),cr(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let i=nst(gr(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:gr(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(gr(this.gastProductionsCache))})),!e.DEFER_DEFINITION_ERRORS_HANDLING&&!cr(this.definitionErrors))throw t=Xt(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected: + ${t.join(` +------------------------------- +`)}`)})}constructor(t,r){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(t,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),jt(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=jt(r,"skipValidations")?r.skipValidations:ls.skipValidations}};V2.DEFER_DEFINITION_ERRORS_HANDLING=!1;Aot(V2,[Uk,qk,Qk,Zk,tE,Jk,eE,rE,nE,sE]);U2=class extends V2{static{o(this,"EmbeddedActionsParser")}constructor(t,r=ls){let n=rn(r);n.outputCst=!1,super(t,n)}}});var Lot=R(()=>{"use strict";os()});var Dot=R(()=>{"use strict"});var Rot=R(()=>{"use strict";Lot();Dot()});var Not=R(()=>{"use strict";sM()});var g0=R(()=>{"use strict";sM();Fs();_2();p0();vg();MM();pg();bg();bM();os();os();Rot();Not()});function y0(e,t,r){return`${e.name}_${t}_${r}`}function Pot(e){let t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};dFt(t,e);let r=e.length;for(let n=0;nBot(e,t,s));return Sg(e,t,n,r,...i)}function xFt(e,t,r){let n=sa(e,t,r,{type:uf});hf(e,n);let i=Sg(e,t,n,r,v0(e,t,r));return bFt(e,t,r,i)}function v0(e,t,r){let n=Yr(Xt(r.definition,i=>Bot(e,t,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:TFt(e,n)}function Fot(e,t,r,n,i){let a=n.left,s=n.right,l=sa(e,t,r,{type:fFt});hf(e,l);let u=sa(e,t,r,{type:Oot});return a.loopback=l,u.loopback=l,e.decisionMap[y0(t,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=l,_i(s,l),i===void 0?(_i(l,a),_i(l,u)):(_i(l,u),_i(l,i.left),_i(i.right,a)),{left:a,right:u}}function zot(e,t,r,n,i){let a=n.left,s=n.right,l=sa(e,t,r,{type:hFt});hf(e,l);let u=sa(e,t,r,{type:Oot}),h=sa(e,t,r,{type:uFt});return l.loopback=h,u.loopback=h,_i(l,a),_i(l,u),_i(s,h),i!==void 0?(_i(h,u),_i(h,i.left),_i(i.right,a)):_i(h,l),e.decisionMap[y0(t,i?"RepetitionWithSeparator":"Repetition",r.idx)]=l,{left:l,right:u}}function bFt(e,t,r,n){let i=n.left,a=n.right;return _i(i,a),e.decisionMap[y0(t,"Option",r.idx)]=i,n}function hf(e,t){return e.decisionStates.push(t),t.decision=e.decisionStates.length-1,t.decision}function Sg(e,t,r,n,...i){let a=sa(e,t,n,{type:cFt,start:r});r.end=a;for(let l of i)l!==void 0?(_i(r,l.left),_i(l.right,a)):_i(r,a);let s={left:r,right:a};return e.decisionMap[y0(t,wFt(n),n.idx)]=r,s}function wFt(e){if(e instanceof wn)return"Alternation";if(e instanceof an)return"Option";if(e instanceof Lr)return"Repetition";if(e instanceof bn)return"RepetitionWithSeparator";if(e instanceof Dn)return"RepetitionMandatory";if(e instanceof Rn)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function TFt(e,t){let r=t.length;for(let a=0;a{"use strict";Xm();ID();g0();o(y0,"buildATNKey");uf=1,lFt=2,Mot=4,Iot=5,Cg=7,cFt=8,uFt=9,hFt=10,fFt=11,Oot=12,H2=class{static{o(this,"AbstractTransition")}constructor(t){this.target=t}isEpsilon(){return!1}},kg=class extends H2{static{o(this,"AtomTransition")}constructor(t,r){super(t),this.tokenType=r}},W2=class extends H2{static{o(this,"EpsilonTransition")}constructor(t){super(t)}isEpsilon(){return!0}},Eg=class extends H2{static{o(this,"RuleTransition")}constructor(t,r,n){super(t),this.rule=r,this.followState=n}isEpsilon(){return!0}};o(Pot,"createATN");o(dFt,"createRuleStartAndStopATNStates");o(Bot,"atom");o(pFt,"repetition");o(mFt,"repetitionSep");o(gFt,"repetitionMandatory");o(yFt,"repetitionMandatorySep");o(vFt,"alternation");o(xFt,"option");o(v0,"block");o(Fot,"plus");o(zot,"star");o(bFt,"optional");o(hf,"defineDecisionState");o(Sg,"makeAlts");o(wFt,"getProdType");o(TFt,"makeBlock");o(VM,"tokenRef");o(kFt,"ruleRef");o(EFt,"buildRuleHandle");o(_i,"epsilon");o(sa,"newState");o(UM,"addTransition");o(CFt,"removeState")});function HM(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map(r=>r.stateNumber.toString()).join("_")}`}var Y2,Ag,Got=R(()=>{"use strict";Xm();Y2={},Ag=class{static{o(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(t){let r=HM(t);r in this.map||(this.map[r]=this.configs.length,this.configs.push(t))}get elements(){return this.configs}get alts(){return Xt(this.configs,t=>t.alt)}get key(){let t="";for(let r in this.map)t+=r+":";return t}};o(HM,"getATNConfigKey")});function SFt(e,t){let r={};return n=>{let i=n.toString(),a=r[i];return a!==void 0||(a={atnStartState:e,decision:t,states:{}},r[i]=a),a}}function Uot(e,t=!0){let r=new Set;for(let n of e){let i=new Set;for(let a of n){if(a===void 0){if(t)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 AFt(e){let t=e.decisionStates.length,r=Array(t);for(let n=0;nHu(i)).join(", "),r=e.production.idx===0?"":e.production.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(", ")}> in <${NFt(e.production)}${r}> inside <${e.topLevelRule.name}> Rule, +<${t}> 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 NFt(e){if(e instanceof nn)return"SUBRULE";if(e instanceof an)return"OPTION";if(e instanceof wn)return"OR";if(e instanceof Dn)return"AT_LEAST_ONE";if(e instanceof Rn)return"AT_LEAST_ONE_SEP";if(e instanceof bn)return"MANY_SEP";if(e instanceof Lr)return"MANY";if(e instanceof br)return"CONSUME";throw Error("non exhaustive match")}function MFt(e,t,r){let n=ba(t.configs.elements,a=>a.state.transitions),i=Zrt(n.filter(a=>a instanceof kg).map(a=>a.tokenType),a=>a.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:e}}function IFt(e,t){return e.edges[t.tokenTypeIdx]}function OFt(e,t,r){let n=new Ag,i=[];for(let s of e.elements){if(r.is(s.alt)===!1)continue;if(s.state.type===Cg){i.push(s);continue}let l=s.state.transitions.length;for(let u=0;u0&&!$Ft(a))for(let s of i)a.add(s);return a}function PFt(e,t){if(e instanceof kg&&D2(t,e.tokenType))return e.target}function BFt(e,t){let r;for(let n of e.elements)if(t.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function Wot(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}function Hot(e,t,r,n){return n=Yot(e,n),t.edges[r.tokenTypeIdx]=n,n}function Yot(e,t){if(t===Y2)return t;let r=t.configs.key,n=e.states[r];return n!==void 0?n:(t.configs.finalize(),e.states[r]=t,t)}function FFt(e){let t=new Ag,r=e.transitions.length;for(let n=0;n0){let i=[...e.stack],s={state:i.pop(),alt:e.alt,stack:i};cE(s,t)}else t.add(e);return}r.epsilonOnlyTransitions||t.add(e);let n=r.transitions.length;for(let i=0;i1)return!0;return!1}function WFt(e){for(let t of Array.from(e.values()))if(Object.keys(t).length===1)return!0;return!1}var lE,Vot,q2,qot=R(()=>{"use strict";g0();$ot();Got();VD();PD();Jrt();Xm();nT();NT();BT();YD();o(SFt,"createDFACache");lE=class{static{o(this,"PredicateSet")}constructor(){this.predicates=[]}is(t){return t>=this.predicates.length||this.predicates[t]}set(t,r){this.predicates[t]=r}toString(){let t="",r=this.predicates.length;for(let n=0;nconsole.log(n)}initialize(t){this.atn=Pot(t.rules),this.dfas=AFt(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(t){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:a}=t,s=this.dfas,l=this.logging,u=y0(n,"Alternation",r),f=this.atn.decisionMap[u].decision,d=Xt($k({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),p=>Xt(p,m=>m[0]));if(Uot(d,!1)&&!a){let p=qr(d,(m,g,y)=>(Et(g,v=>{v&&(m[v.tokenTypeIdx]=y,Et(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 lE,g=p===void 0?0:p.length;for(let v=0;vXt(p,m=>m[0]));if(Uot(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,Et(v.categoryMatches,x=>{y[x]=!0})),y),{});return function(){let y=this.LA(1);return g[y.tokenTypeIdx]===!0}}}return function(){let p=WM.call(this,s,f,Vot,l);return typeof p=="object"?!1:p===0}}};o(Uot,"isLL1Sequence");o(AFt,"initATNSimulator");o(WM,"adaptivePredict");o(_Ft,"performLookahead");o(LFt,"computeLookaheadTarget");o(DFt,"reportLookaheadAmbiguity");o(RFt,"buildAmbiguityError");o(NFt,"getProductionDslName");o(MFt,"buildAdaptivePredictError");o(IFt,"getExistingTargetState");o(OFt,"computeReachSet");o(PFt,"getReachableTarget");o(BFt,"getUniqueAlt");o(Wot,"newDFAState");o(Hot,"addDFAEdge");o(Yot,"addDFAState");o(FFt,"computeStartState");o(cE,"closure");o(zFt,"getEpsilonTarget");o($Ft,"hasConfigInRuleStopState");o(GFt,"allConfigsInRuleStopStates");o(VFt,"hasConflictTerminatingPrediction");o(UFt,"getConflictingAltSets");o(HFt,"hasConflictingAltSet");o(WFt,"hasStateAssociatedWithOneAlt")});var Xot=R(()=>{"use strict";qot()});var jot,YM,Kot,uE,Xr,Dr,hE,Qot,qM,Zot,Jot,tlt,elt,XM,rlt,nlt,ilt,fE,_g,Lg,jM,Dg,alt,KM,QM,ZM,JM,tI,slt,olt,eI,llt,rI,X2,clt,ult,hlt,flt,dlt,plt,mlt,glt,dE,ylt,vlt,xlt,blt,wlt,Tlt,klt,Elt,Clt,Slt,Alt,pE,_lt,Llt,Dlt,Rlt,Nlt,Mlt,Ilt,Olt,Plt,Blt,Flt,zlt,$lt,nI,iI,Glt,Vlt,Ult,Hlt,Wlt,Ylt,qlt,Xlt,jlt,aI,Ft,sI=R(()=>{"use strict";(function(e){function t(r){return typeof r=="string"}o(t,"is"),e.is=t})(jot||(jot={}));(function(e){function t(r){return typeof r=="string"}o(t,"is"),e.is=t})(YM||(YM={}));(function(e){e.MIN_VALUE=-2147483648,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}o(t,"is"),e.is=t})(Kot||(Kot={}));(function(e){e.MIN_VALUE=0,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}o(t,"is"),e.is=t})(uE||(uE={}));(function(e){function t(n,i){return n===Number.MAX_VALUE&&(n=uE.MAX_VALUE),i===Number.MAX_VALUE&&(i=uE.MAX_VALUE),{line:n,character:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.uinteger(i.line)&&Ft.uinteger(i.character)}o(r,"is"),e.is=r})(Xr||(Xr={}));(function(e){function t(n,i,a,s){if(Ft.uinteger(n)&&Ft.uinteger(i)&&Ft.uinteger(a)&&Ft.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(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Xr.is(i.start)&&Xr.is(i.end)}o(r,"is"),e.is=r})(Dr||(Dr={}));(function(e){function t(n,i){return{uri:n,range:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Dr.is(i.range)&&(Ft.string(i.uri)||Ft.undefined(i.uri))}o(r,"is"),e.is=r})(hE||(hE={}));(function(e){function t(n,i,a,s){return{targetUri:n,targetRange:i,targetSelectionRange:a,originSelectionRange:s}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Dr.is(i.targetRange)&&Ft.string(i.targetUri)&&Dr.is(i.targetSelectionRange)&&(Dr.is(i.originSelectionRange)||Ft.undefined(i.originSelectionRange))}o(r,"is"),e.is=r})(Qot||(Qot={}));(function(e){function t(n,i,a,s){return{red:n,green:i,blue:a,alpha:s}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.numberRange(i.red,0,1)&&Ft.numberRange(i.green,0,1)&&Ft.numberRange(i.blue,0,1)&&Ft.numberRange(i.alpha,0,1)}o(r,"is"),e.is=r})(qM||(qM={}));(function(e){function t(n,i){return{range:n,color:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Dr.is(i.range)&&qM.is(i.color)}o(r,"is"),e.is=r})(Zot||(Zot={}));(function(e){function t(n,i,a){return{label:n,textEdit:i,additionalTextEdits:a}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.string(i.label)&&(Ft.undefined(i.textEdit)||Lg.is(i))&&(Ft.undefined(i.additionalTextEdits)||Ft.typedArray(i.additionalTextEdits,Lg.is))}o(r,"is"),e.is=r})(Jot||(Jot={}));(function(e){e.Comment="comment",e.Imports="imports",e.Region="region"})(tlt||(tlt={}));(function(e){function t(n,i,a,s,l,u){let h={startLine:n,endLine:i};return Ft.defined(a)&&(h.startCharacter=a),Ft.defined(s)&&(h.endCharacter=s),Ft.defined(l)&&(h.kind=l),Ft.defined(u)&&(h.collapsedText=u),h}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.uinteger(i.startLine)&&Ft.uinteger(i.startLine)&&(Ft.undefined(i.startCharacter)||Ft.uinteger(i.startCharacter))&&(Ft.undefined(i.endCharacter)||Ft.uinteger(i.endCharacter))&&(Ft.undefined(i.kind)||Ft.string(i.kind))}o(r,"is"),e.is=r})(elt||(elt={}));(function(e){function t(n,i){return{location:n,message:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&hE.is(i.location)&&Ft.string(i.message)}o(r,"is"),e.is=r})(XM||(XM={}));(function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4})(rlt||(rlt={}));(function(e){e.Unnecessary=1,e.Deprecated=2})(nlt||(nlt={}));(function(e){function t(r){let n=r;return Ft.objectLiteral(n)&&Ft.string(n.href)}o(t,"is"),e.is=t})(ilt||(ilt={}));(function(e){function t(n,i,a,s,l,u){let h={range:n,message:i};return Ft.defined(a)&&(h.severity=a),Ft.defined(s)&&(h.code=s),Ft.defined(l)&&(h.source=l),Ft.defined(u)&&(h.relatedInformation=u),h}o(t,"create"),e.create=t;function r(n){var i;let a=n;return Ft.defined(a)&&Dr.is(a.range)&&Ft.string(a.message)&&(Ft.number(a.severity)||Ft.undefined(a.severity))&&(Ft.integer(a.code)||Ft.string(a.code)||Ft.undefined(a.code))&&(Ft.undefined(a.codeDescription)||Ft.string((i=a.codeDescription)===null||i===void 0?void 0:i.href))&&(Ft.string(a.source)||Ft.undefined(a.source))&&(Ft.undefined(a.relatedInformation)||Ft.typedArray(a.relatedInformation,XM.is))}o(r,"is"),e.is=r})(fE||(fE={}));(function(e){function t(n,i,...a){let s={title:n,command:i};return Ft.defined(a)&&a.length>0&&(s.arguments=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.title)&&Ft.string(i.command)}o(r,"is"),e.is=r})(_g||(_g={}));(function(e){function t(a,s){return{range:a,newText:s}}o(t,"replace"),e.replace=t;function r(a,s){return{range:{start:a,end:a},newText:s}}o(r,"insert"),e.insert=r;function n(a){return{range:a,newText:""}}o(n,"del"),e.del=n;function i(a){let s=a;return Ft.objectLiteral(s)&&Ft.string(s.newText)&&Dr.is(s.range)}o(i,"is"),e.is=i})(Lg||(Lg={}));(function(e){function t(n,i,a){let s={label:n};return i!==void 0&&(s.needsConfirmation=i),a!==void 0&&(s.description=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Ft.string(i.label)&&(Ft.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(Ft.string(i.description)||i.description===void 0)}o(r,"is"),e.is=r})(jM||(jM={}));(function(e){function t(r){let n=r;return Ft.string(n)}o(t,"is"),e.is=t})(Dg||(Dg={}));(function(e){function t(a,s,l){return{range:a,newText:s,annotationId:l}}o(t,"replace"),e.replace=t;function r(a,s,l){return{range:{start:a,end:a},newText:s,annotationId:l}}o(r,"insert"),e.insert=r;function n(a,s){return{range:a,newText:"",annotationId:s}}o(n,"del"),e.del=n;function i(a){let s=a;return Lg.is(s)&&(jM.is(s.annotationId)||Dg.is(s.annotationId))}o(i,"is"),e.is=i})(alt||(alt={}));(function(e){function t(n,i){return{textDocument:n,edits:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&eI.is(i.textDocument)&&Array.isArray(i.edits)}o(r,"is"),e.is=r})(KM||(KM={}));(function(e){function t(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(t,"create"),e.create=t;function r(n){let i=n;return i&&i.kind==="create"&&Ft.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||Ft.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Ft.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Dg.is(i.annotationId))}o(r,"is"),e.is=r})(QM||(QM={}));(function(e){function t(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(t,"create"),e.create=t;function r(n){let i=n;return i&&i.kind==="rename"&&Ft.string(i.oldUri)&&Ft.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||Ft.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||Ft.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Dg.is(i.annotationId))}o(r,"is"),e.is=r})(ZM||(ZM={}));(function(e){function t(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(t,"create"),e.create=t;function r(n){let i=n;return i&&i.kind==="delete"&&Ft.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||Ft.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||Ft.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||Dg.is(i.annotationId))}o(r,"is"),e.is=r})(JM||(JM={}));(function(e){function t(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>Ft.string(i.kind)?QM.is(i)||ZM.is(i)||JM.is(i):KM.is(i)))}o(t,"is"),e.is=t})(tI||(tI={}));(function(e){function t(n){return{uri:n}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.uri)}o(r,"is"),e.is=r})(slt||(slt={}));(function(e){function t(n,i){return{uri:n,version:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.uri)&&Ft.integer(i.version)}o(r,"is"),e.is=r})(olt||(olt={}));(function(e){function t(n,i){return{uri:n,version:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.uri)&&(i.version===null||Ft.integer(i.version))}o(r,"is"),e.is=r})(eI||(eI={}));(function(e){function t(n,i,a,s){return{uri:n,languageId:i,version:a,text:s}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.string(i.uri)&&Ft.string(i.languageId)&&Ft.integer(i.version)&&Ft.string(i.text)}o(r,"is"),e.is=r})(llt||(llt={}));(function(e){e.PlainText="plaintext",e.Markdown="markdown";function t(r){let n=r;return n===e.PlainText||n===e.Markdown}o(t,"is"),e.is=t})(rI||(rI={}));(function(e){function t(r){let n=r;return Ft.objectLiteral(r)&&rI.is(n.kind)&&Ft.string(n.value)}o(t,"is"),e.is=t})(X2||(X2={}));(function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25})(clt||(clt={}));(function(e){e.PlainText=1,e.Snippet=2})(ult||(ult={}));(function(e){e.Deprecated=1})(hlt||(hlt={}));(function(e){function t(n,i,a){return{newText:n,insert:i,replace:a}}o(t,"create"),e.create=t;function r(n){let i=n;return i&&Ft.string(i.newText)&&Dr.is(i.insert)&&Dr.is(i.replace)}o(r,"is"),e.is=r})(flt||(flt={}));(function(e){e.asIs=1,e.adjustIndentation=2})(dlt||(dlt={}));(function(e){function t(r){let n=r;return n&&(Ft.string(n.detail)||n.detail===void 0)&&(Ft.string(n.description)||n.description===void 0)}o(t,"is"),e.is=t})(plt||(plt={}));(function(e){function t(r){return{label:r}}o(t,"create"),e.create=t})(mlt||(mlt={}));(function(e){function t(r,n){return{items:r||[],isIncomplete:!!n}}o(t,"create"),e.create=t})(glt||(glt={}));(function(e){function t(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}o(t,"fromPlainText"),e.fromPlainText=t;function r(n){let i=n;return Ft.string(i)||Ft.objectLiteral(i)&&Ft.string(i.language)&&Ft.string(i.value)}o(r,"is"),e.is=r})(dE||(dE={}));(function(e){function t(r){let n=r;return!!n&&Ft.objectLiteral(n)&&(X2.is(n.contents)||dE.is(n.contents)||Ft.typedArray(n.contents,dE.is))&&(r.range===void 0||Dr.is(r.range))}o(t,"is"),e.is=t})(ylt||(ylt={}));(function(e){function t(r,n){return n?{label:r,documentation:n}:{label:r}}o(t,"create"),e.create=t})(vlt||(vlt={}));(function(e){function t(r,n,...i){let a={label:r};return Ft.defined(n)&&(a.documentation=n),Ft.defined(i)?a.parameters=i:a.parameters=[],a}o(t,"create"),e.create=t})(xlt||(xlt={}));(function(e){e.Text=1,e.Read=2,e.Write=3})(blt||(blt={}));(function(e){function t(r,n){let i={range:r};return Ft.number(n)&&(i.kind=n),i}o(t,"create"),e.create=t})(wlt||(wlt={}));(function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26})(Tlt||(Tlt={}));(function(e){e.Deprecated=1})(klt||(klt={}));(function(e){function t(r,n,i,a,s){let l={name:r,kind:n,location:{uri:a,range:i}};return s&&(l.containerName=s),l}o(t,"create"),e.create=t})(Elt||(Elt={}));(function(e){function t(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(t,"create"),e.create=t})(Clt||(Clt={}));(function(e){function t(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(t,"create"),e.create=t;function r(n){let i=n;return i&&Ft.string(i.name)&&Ft.number(i.kind)&&Dr.is(i.range)&&Dr.is(i.selectionRange)&&(i.detail===void 0||Ft.string(i.detail))&&(i.deprecated===void 0||Ft.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}o(r,"is"),e.is=r})(Slt||(Slt={}));(function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"})(Alt||(Alt={}));(function(e){e.Invoked=1,e.Automatic=2})(pE||(pE={}));(function(e){function t(n,i,a){let s={diagnostics:n};return i!=null&&(s.only=i),a!=null&&(s.triggerKind=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.typedArray(i.diagnostics,fE.is)&&(i.only===void 0||Ft.typedArray(i.only,Ft.string))&&(i.triggerKind===void 0||i.triggerKind===pE.Invoked||i.triggerKind===pE.Automatic)}o(r,"is"),e.is=r})(_lt||(_lt={}));(function(e){function t(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(t,"create"),e.create=t;function r(n){let i=n;return i&&Ft.string(i.title)&&(i.diagnostics===void 0||Ft.typedArray(i.diagnostics,fE.is))&&(i.kind===void 0||Ft.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||_g.is(i.command))&&(i.isPreferred===void 0||Ft.boolean(i.isPreferred))&&(i.edit===void 0||tI.is(i.edit))}o(r,"is"),e.is=r})(Llt||(Llt={}));(function(e){function t(n,i){let a={range:n};return Ft.defined(i)&&(a.data=i),a}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Dr.is(i.range)&&(Ft.undefined(i.command)||_g.is(i.command))}o(r,"is"),e.is=r})(Dlt||(Dlt={}));(function(e){function t(n,i){return{tabSize:n,insertSpaces:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Ft.uinteger(i.tabSize)&&Ft.boolean(i.insertSpaces)}o(r,"is"),e.is=r})(Rlt||(Rlt={}));(function(e){function t(n,i,a){return{range:n,target:i,data:a}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Dr.is(i.range)&&(Ft.undefined(i.target)||Ft.string(i.target))}o(r,"is"),e.is=r})(Nlt||(Nlt={}));(function(e){function t(n,i){return{range:n,parent:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Dr.is(i.range)&&(i.parent===void 0||e.is(i.parent))}o(r,"is"),e.is=r})(Mlt||(Mlt={}));(function(e){e.namespace="namespace",e.type="type",e.class="class",e.enum="enum",e.interface="interface",e.struct="struct",e.typeParameter="typeParameter",e.parameter="parameter",e.variable="variable",e.property="property",e.enumMember="enumMember",e.event="event",e.function="function",e.method="method",e.macro="macro",e.keyword="keyword",e.modifier="modifier",e.comment="comment",e.string="string",e.number="number",e.regexp="regexp",e.operator="operator",e.decorator="decorator"})(Ilt||(Ilt={}));(function(e){e.declaration="declaration",e.definition="definition",e.readonly="readonly",e.static="static",e.deprecated="deprecated",e.abstract="abstract",e.async="async",e.modification="modification",e.documentation="documentation",e.defaultLibrary="defaultLibrary"})(Olt||(Olt={}));(function(e){function t(r){let n=r;return Ft.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}o(t,"is"),e.is=t})(Plt||(Plt={}));(function(e){function t(n,i){return{range:n,text:i}}o(t,"create"),e.create=t;function r(n){let i=n;return i!=null&&Dr.is(i.range)&&Ft.string(i.text)}o(r,"is"),e.is=r})(Blt||(Blt={}));(function(e){function t(n,i,a){return{range:n,variableName:i,caseSensitiveLookup:a}}o(t,"create"),e.create=t;function r(n){let i=n;return i!=null&&Dr.is(i.range)&&Ft.boolean(i.caseSensitiveLookup)&&(Ft.string(i.variableName)||i.variableName===void 0)}o(r,"is"),e.is=r})(Flt||(Flt={}));(function(e){function t(n,i){return{range:n,expression:i}}o(t,"create"),e.create=t;function r(n){let i=n;return i!=null&&Dr.is(i.range)&&(Ft.string(i.expression)||i.expression===void 0)}o(r,"is"),e.is=r})(zlt||(zlt={}));(function(e){function t(n,i){return{frameId:n,stoppedLocation:i}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.defined(i)&&Dr.is(n.stoppedLocation)}o(r,"is"),e.is=r})($lt||($lt={}));(function(e){e.Type=1,e.Parameter=2;function t(r){return r===1||r===2}o(t,"is"),e.is=t})(nI||(nI={}));(function(e){function t(n){return{value:n}}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&(i.tooltip===void 0||Ft.string(i.tooltip)||X2.is(i.tooltip))&&(i.location===void 0||hE.is(i.location))&&(i.command===void 0||_g.is(i.command))}o(r,"is"),e.is=r})(iI||(iI={}));(function(e){function t(n,i,a){let s={position:n,label:i};return a!==void 0&&(s.kind=a),s}o(t,"create"),e.create=t;function r(n){let i=n;return Ft.objectLiteral(i)&&Xr.is(i.position)&&(Ft.string(i.label)||Ft.typedArray(i.label,iI.is))&&(i.kind===void 0||nI.is(i.kind))&&i.textEdits===void 0||Ft.typedArray(i.textEdits,Lg.is)&&(i.tooltip===void 0||Ft.string(i.tooltip)||X2.is(i.tooltip))&&(i.paddingLeft===void 0||Ft.boolean(i.paddingLeft))&&(i.paddingRight===void 0||Ft.boolean(i.paddingRight))}o(r,"is"),e.is=r})(Glt||(Glt={}));(function(e){function t(r){return{kind:"snippet",value:r}}o(t,"createSnippet"),e.createSnippet=t})(Vlt||(Vlt={}));(function(e){function t(r,n,i,a){return{insertText:r,filterText:n,range:i,command:a}}o(t,"create"),e.create=t})(Ult||(Ult={}));(function(e){function t(r){return{items:r}}o(t,"create"),e.create=t})(Hlt||(Hlt={}));(function(e){e.Invoked=0,e.Automatic=1})(Wlt||(Wlt={}));(function(e){function t(r,n){return{range:r,text:n}}o(t,"create"),e.create=t})(Ylt||(Ylt={}));(function(e){function t(r,n){return{triggerKind:r,selectedCompletionInfo:n}}o(t,"create"),e.create=t})(qlt||(qlt={}));(function(e){function t(r){let n=r;return Ft.objectLiteral(n)&&YM.is(n.uri)&&Ft.string(n.name)}o(t,"is"),e.is=t})(Xlt||(Xlt={}));(function(e){function t(a,s,l,u){return new aI(a,s,l,u)}o(t,"create"),e.create=t;function r(a){let s=a;return!!(Ft.defined(s)&&Ft.string(s.uri)&&(Ft.undefined(s.languageId)||Ft.string(s.languageId))&&Ft.uinteger(s.lineCount)&&Ft.func(s.getText)&&Ft.func(s.positionAt)&&Ft.func(s.offsetAt))}o(r,"is"),e.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"),e.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&&t.push(r.length),this._lineOffsets=t}return this._lineOffsets}positionAt(t){t=Math.max(Math.min(t,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return Xr.create(0,t);for(;nt?i=s:n=s+1}let a=n-1;return Xr.create(a,t-r[a])}offsetAt(t){let r=this.getLineOffsets();if(t.line>=r.length)return this._content.length;if(t.line<0)return 0;let n=r[t.line],i=t.line+1"u"}o(n,"undefined"),e.undefined=n;function i(m){return m===!0||m===!1}o(i,"boolean"),e.boolean=i;function a(m){return t.call(m)==="[object String]"}o(a,"string"),e.string=a;function s(m){return t.call(m)==="[object Number]"}o(s,"number"),e.number=s;function l(m,g,y){return t.call(m)==="[object Number]"&&g<=m&&m<=y}o(l,"numberRange"),e.numberRange=l;function u(m){return t.call(m)==="[object Number]"&&-2147483648<=m&&m<=2147483647}o(u,"integer"),e.integer=u;function h(m){return t.call(m)==="[object Number]"&&0<=m&&m<=2147483647}o(h,"uinteger"),e.uinteger=h;function f(m){return t.call(m)==="[object Function]"}o(f,"func"),e.func=f;function d(m){return m!==null&&typeof m=="object"}o(d,"objectLiteral"),e.objectLiteral=d;function p(m,g){return Array.isArray(m)&&m.every(g)}o(p,"typedArray"),e.typedArray=p})(Ft||(Ft={}))});var j2,K2,x0,b0,oI,Rg,mE=R(()=>{"use strict";sI();Yo();Pl();j2=class{static{o(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]}buildRootNode(t){return this.rootNode=new Rg(t),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(t){let r=new b0;return r.grammarSource=t,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(t,r){let n=new x0(t.startOffset,t.image.length,tg(t),t.tokenType,!1);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(t){let r=t.container;if(r){let n=r.content.indexOf(t);n>=0&&r.content.splice(n,1)}}construct(t){let r=this.current;typeof t.$type=="string"&&(this.current.astNode=t),t.$cstNode=r;let n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}addHiddenTokens(t){for(let r of t){let n=new x0(r.startOffset,r.image.length,tg(r),r.tokenType,!0);n.root=this.rootNode,this.addHiddenToken(this.rootNode,n)}}addHiddenToken(t,r){let{offset:n,end:i}=r;for(let a=0;al&&i=0;t--){let r=this.content[t];if(!r.hidden)return r}return this.content[this.content.length-1]}},oI=class e extends Array{static{o(this,"CstNodeContainer")}constructor(t){super(),this.parent=t,Object.setPrototypeOf(this,e.prototype)}push(...t){return this.addParents(t),super.push(...t)}unshift(...t){return this.addParents(t),super.unshift(...t)}splice(t,r,...n){return this.addParents(n),super.splice(t,r,...n)}addParents(t){for(let r of t)r.container=this.parent}},Rg=class extends b0{static{o(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(t){super(),this._text="",this._text=t??""}}});function lI(e){return e.$type===gE}var gE,Klt,Qlt,Q2,Z2,yE,Ng,J2,YFt,cI,tx=R(()=>{"use strict";g0();Xot();Oc();zl();is();mE();gE=Symbol("Datatype");o(lI,"isDataTypeNode");Klt="\u200B",Qlt=o(e=>e.endsWith(Klt)?e:e+Klt,"withRuleSuffix"),Q2=class{static{o(this,"AbstractLangiumParser")}constructor(t){this._unorderedGroups=new Map,this.lexer=t.parser.Lexer;let r=this.lexer.definition;this.wrapper=new cI(r,Object.assign(Object.assign({},t.parser.ParserConfig),{errorMessageProvider:t.parser.ParserErrorMessageProvider}))}alternatives(t,r){this.wrapper.wrapOr(t,r)}optional(t,r){this.wrapper.wrapOption(t,r)}many(t,r){this.wrapper.wrapMany(t,r)}atLeastOne(t,r){this.wrapper.wrapAtLeastOne(t,r)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},Z2=class extends Q2{static{o(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(t){super(t),this.nodeBuilder=new j2,this.stack=[],this.assignmentMap=new Map,this.linker=t.references.Linker,this.converter=t.parser.ValueConverter,this.astReflection=t.shared.AstReflection}rule(t,r){let n=t.fragment?void 0:k2(t)?gE:l0(t),i=this.wrapper.DEFINE_RULE(Qlt(t.name),this.startImplementation(n,r).bind(this));return t.entry&&(this.mainRule=i),i}parse(t){this.nodeBuilder.buildRootNode(t);let r=this.lexer.tokenize(t);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(t,r){return n=>{if(!this.isRecording()){let a={$type:t};this.stack.push(a),t===gE&&(a.value="")}let i;try{i=r(n)}catch{i=void 0}return!this.isRecording()&&i===void 0&&(i=this.construct()),i}}consume(t,r,n){let i=this.wrapper.wrapConsume(t,r);if(!this.isRecording()&&this.isValidToken(i)){let a=this.nodeBuilder.buildLeafNode(i,n),{assignment:s,isCrossRef:l}=this.getAssignment(n),u=this.current;if(s){let h=Xo(n)?i.image:this.converter.convert(i.image,a);this.assign(s.operator,s.feature,h,a,l)}else if(lI(u)){let h=i.image;Xo(n)||(h=this.converter.convert(h,a).toString()),u.value+=h}}}isValidToken(t){return!t.isInsertedInRecovery&&!isNaN(t.startOffset)&&typeof t.endOffset=="number"&&!isNaN(t.endOffset)}subrule(t,r,n,i){let a;this.isRecording()||(a=this.nodeBuilder.buildCompositeNode(n));let s=this.wrapper.wrapSubrule(t,r,i);!this.isRecording()&&a&&a.length>0&&this.performSubruleAssignment(s,n,a)}performSubruleAssignment(t,r,n){let{assignment:i,isCrossRef:a}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,t,n,a);else if(!i){let s=this.current;if(lI(s))s.value+=t.toString();else if(typeof t=="object"&&t){let l=t.$type,u=this.assignWithoutOverride(t,s);l&&(u.$type=l);let h=u;this.stack.pop(),this.stack.push(h)}}}action(t,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:t};this.stack.pop(),this.stack.push(i),r.feature&&r.operator&&this.assign(r.operator,r.feature,n,n.$cstNode,!1)}}construct(t=!0){if(this.isRecording())return;let r=this.current;return mk(r),this.nodeBuilder.construct(r),t&&this.stack.pop(),lI(r)?this.converter.convert(r.value,r.$cstNode):(BN(this.astReflection,r),r)}getAssignment(t){if(!this.assignmentMap.has(t)){let r=n0(t,Bl);this.assignmentMap.set(t,{assignment:r,isCrossRef:r?r0(r.terminal):!1})}return this.assignmentMap.get(t)}assign(t,r,n,i,a){let s=this.current,l;switch(a&&typeof n=="string"?l=this.linker.buildReference(s,r,i,n):l=n,t){case"=":{s[r]=l;break}case"?=":{s[r]=!0;break}case"+=":Array.isArray(s[r])||(s[r]=[]),s[r].push(l)}}assignWithoutOverride(t,r){for(let[n,i]of Object.entries(r)){let a=t[n];a===void 0?t[n]=i:Array.isArray(a)&&Array.isArray(i)&&(i.push(...a),t[n]=i)}return t}get definitionErrors(){return this.wrapper.definitionErrors}},yE=class{static{o(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(t){return Wu.buildMismatchTokenMessage(t)}buildNotAllInputParsedMessage(t){return Wu.buildNotAllInputParsedMessage(t)}buildNoViableAltMessage(t){return Wu.buildNoViableAltMessage(t)}buildEarlyExitMessage(t){return Wu.buildEarlyExitMessage(t)}},Ng=class extends yE{static{o(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:t,actual:r}){return`Expecting ${t.LABEL?"`"+t.LABEL+"`":t.name.endsWith(":KW")?`keyword '${t.name.substring(0,t.name.length-3)}'`:`token of type '${t.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:t}){return`Expecting end of file but found \`${t.image}\`.`}},J2=class extends Q2{static{o(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(t){this.resetState();let r=this.lexer.tokenize(t);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(t,r){let n=this.wrapper.DEFINE_RULE(Qlt(t.name),this.startImplementation(r).bind(this));return t.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(t){return r=>{let n=this.keepStackSize();try{t(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let t=this.elementStack.length;return this.stackSize=t,t}resetStackSize(t){this.removeUnexpectedElements(),this.stackSize=t}consume(t,r,n){this.wrapper.wrapConsume(t,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(t,r,n,i){this.before(n),this.wrapper.wrapSubrule(t,r,i),this.after(n)}before(t){this.isRecording()||this.elementStack.push(t)}after(t){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(t);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},YFt={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new Ng},cI=class extends U2{static{o(this,"ChevrotainWrapper")}constructor(t,r){let n=r&&"maxLookahead"in r;super(t,Object.assign(Object.assign(Object.assign({},YFt),{lookaheadStrategy:n?new Yu({maxLookahead:r.maxLookahead}):new q2}),r))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(t,r){return this.RULE(t,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(t,r){return this.consume(t,r)}wrapSubrule(t,r,n){return this.subrule(t,r,{ARGS:[n]})}wrapOr(t,r){this.or(t,r)}wrapOption(t,r){this.option(t,r)}wrapMany(t,r){this.many(t,r)}wrapAtLeastOne(t,r){this.atLeastOne(t,r)}}});function xE(e,t,r){return qFt({parser:t,tokens:r,rules:new Map,ruleNames:new Map},e),t}function qFt(e,t){let r=w2(t,!1),n=en(t.rules).filter($a).filter(i=>r.has(i));for(let i of n){let a=Object.assign(Object.assign({},e),{consume:1,optional:1,subrule:1,many:1,or:1});a.rules.set(i.name,e.parser.rule(i,w0(a,i.definition)))}}function w0(e,t,r=!1){let n;if(Xo(t))n=tzt(e,t);else if(zu(t))n=XFt(e,t);else if(Bl(t))n=w0(e,t.terminal);else if(r0(t))n=Zlt(e,t);else if(Fl(t))n=jFt(e,t);else if(fk(t))n=QFt(e,t);else if(pk(t))n=ZFt(e,t);else if(lf(t))n=JFt(e,t);else if(yN(t)){let i=e.consume++;n=o(()=>e.parser.consume(i,po,t),"method")}else throw new e0(t.$cstNode,`Unexpected element type: ${t.$type}`);return Jlt(e,r?void 0:vE(t),n,t.cardinality)}function XFt(e,t){let r=l0(t);return()=>e.parser.action(r,t)}function jFt(e,t){let r=t.rule.ref;if($a(r)){let n=e.subrule++,i=t.arguments.length>0?KFt(r,t.arguments):()=>({});return a=>e.parser.subrule(n,tct(e,r),t,i(a))}else if(qo(r)){let n=e.consume++,i=uI(e,r.name);return()=>e.parser.consume(n,i,t)}else if(r)of(r);else throw new e0(t.$cstNode,`Undefined rule type: ${t.$type}`)}function KFt(e,t){let r=t.map(n=>qu(n.value));return n=>{let i={};for(let a=0;at(n)||r(n)}else if(UR(e)){let t=qu(e.left),r=qu(e.right);return n=>t(n)&&r(n)}else if(KR(e)){let t=qu(e.value);return r=>!t(r)}else if(tN(e)){let t=e.parameter.ref.name;return r=>r!==void 0&&r[t]===!0}else if(GR(e)){let t=!!e.true;return()=>t}of(e)}function QFt(e,t){if(t.elements.length===1)return w0(e,t.elements[0]);{let r=[];for(let i of t.elements){let a={ALT:w0(e,i,!0)},s=vE(i);s&&(a.GATE=qu(s)),r.push(a)}let n=e.or++;return i=>e.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 ZFt(e,t){if(t.elements.length===1)return w0(e,t.elements[0]);let r=[];for(let l of t.elements){let u={ALT:w0(e,l,!0)},h=vE(l);h&&(u.GATE=qu(h)),r.push(u)}let n=e.or++,i=o((l,u)=>{let h=u.getRuleStack().join("-");return`uGroup_${l}_${h}`},"idFunc"),a=o(l=>e.parser.alternatives(n,r.map((u,h)=>{let f={ALT:o(()=>!0,"ALT")},d=e.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=Jlt(e,vE(t),a,"*");return l=>{s(l),e.parser.isRecording()||e.parser.unorderedGroups.delete(i(n,e.parser))}}function JFt(e,t){let r=t.elements.map(n=>w0(e,n));return n=>r.forEach(i=>i(n))}function vE(e){if(lf(e))return e.guardCondition}function Zlt(e,t,r=t.terminal){if(r)if(Fl(r)&&$a(r.rule.ref)){let n=e.subrule++;return i=>e.parser.subrule(n,tct(e,r.rule.ref),t,i)}else if(Fl(r)&&qo(r.rule.ref)){let n=e.consume++,i=uI(e,r.rule.ref.name);return()=>e.parser.consume(n,i,t)}else if(Xo(r)){let n=e.consume++,i=uI(e,r.value);return()=>e.parser.consume(n,i,t)}else throw new Error("Could not build cross reference parser");else{if(!t.type.ref)throw new Error("Could not resolve reference to type: "+t.type.$refText);let n=wk(t.type.ref),i=n?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+l0(t.type.ref));return Zlt(e,t,i)}}function tzt(e,t){let r=e.consume++,n=e.tokens[t.value];if(!n)throw new Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(r,n,t)}function Jlt(e,t,r,n){let i=t&&qu(t);if(!n)if(i){let a=e.or++;return s=>e.parser.alternatives(a,[{ALT:o(()=>r(s),"ALT"),GATE:o(()=>i(s),"GATE")},{ALT:oE(),GATE:o(()=>!i(s),"GATE")}])}else return r;if(n==="*"){let a=e.many++;return s=>e.parser.many(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else if(n==="+"){let a=e.many++;if(i){let s=e.or++;return l=>e.parser.alternatives(s,[{ALT:o(()=>e.parser.atLeastOne(a,{DEF:o(()=>r(l),"DEF")}),"ALT"),GATE:o(()=>i(l),"GATE")},{ALT:oE(),GATE:o(()=>!i(l),"GATE")}])}else return s=>e.parser.atLeastOne(a,{DEF:o(()=>r(s),"DEF")})}else if(n==="?"){let a=e.optional++;return s=>e.parser.optional(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else of(n)}function tct(e,t){let r=ezt(e,t),n=e.rules.get(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function ezt(e,t){if($a(t))return t.name;if(e.ruleNames.has(t))return e.ruleNames.get(t);{let r=t,n=r.$container,i=t.$type;for(;!$a(n);)(lf(n)||fk(n)||pk(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,e.ruleNames.set(t,i),i}}function uI(e,t){let r=e.tokens[t];if(!r)throw new Error(`Token "${t}" not found."`);return r}var hI=R(()=>{"use strict";g0();Oc();ak();Ps();zl();o(xE,"createParser");o(qFt,"buildRules");o(w0,"buildElement");o(XFt,"buildAction");o(jFt,"buildRuleCall");o(KFt,"buildRuleCallPredicate");o(qu,"buildPredicate");o(QFt,"buildAlternatives");o(ZFt,"buildUnorderedGroup");o(JFt,"buildGroup");o(vE,"getGuardCondition");o(Zlt,"buildCrossReference");o(tzt,"buildKeyword");o(Jlt,"wrap");o(tct,"getRule");o(ezt,"getRuleName");o(uI,"getToken")});function fI(e){let t=e.Grammar,r=e.parser.Lexer,n=new J2(e);return xE(t,n,r.definition),n.finalize(),n}var dI=R(()=>{"use strict";tx();hI();o(fI,"createCompletionParser")});function pI(e){let t=ect(e);return t.finalize(),t}function ect(e){let t=e.Grammar,r=e.parser.Lexer,n=new Z2(e);return xE(t,n,r.definition)}var mI=R(()=>{"use strict";tx();hI();o(pI,"createLangiumParser");o(ect,"prepareLangiumParser")});var T0,gI=R(()=>{"use strict";g0();Oc();is();zl();ig();Ps();T0=class{static{o(this,"DefaultTokenBuilder")}buildTokens(t,r){let n=en(w2(t,!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&&xk(l)?a.unshift(s):a.push(s)}),a}buildTerminalTokens(t){return t.filter(qo).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(t){let r=ag(t),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:t.name,PATTERN:n,LINE_BREAKS:!0};return t.hidden&&(i.GROUP=xk(r)?li.SKIPPED:"hidden"),i}requiresCustomPattern(t){return t.flags.includes("u")?!0:!!(t.source.includes("?<=")||t.source.includes("?(r.lastIndex=i,r.exec(n))}buildKeywordTokens(t,r,n){return t.filter($a).flatMap(i=>Pc(i).filter(Xo)).distinct(i=>i.value).toArray().sort((i,a)=>a.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!n?.caseInsensitive))}buildKeywordToken(t,r,n){return{name:t.value,PATTERN:this.buildKeywordPattern(t,n),LONGER_ALT:this.findLongerAlt(t,r)}}buildKeywordPattern(t,r){return r?new RegExp(HN(t.value)):t.value}findLongerAlt(t,r){return r.reduce((n,i)=>{let a=i?.PATTERN;return a?.source&&WN("^"+a.source+"$",t.value)&&n.push(i),n},[])}}});var k0,zc,yI=R(()=>{"use strict";Oc();zl();k0=class{static{o(this,"DefaultValueConverter")}convert(t,r){let n=r.grammarSource;if(r0(n)&&(n=XN(n)),Fl(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,t,r)}return t}runConverter(t,r,n){var i;switch(t.name.toUpperCase()){case"INT":return zc.convertInt(r);case"STRING":return zc.convertString(r);case"ID":return zc.convertID(r)}switch((i=rM(t))===null||i===void 0?void 0:i.toLowerCase()){case"number":return zc.convertNumber(r);case"boolean":return zc.convertBoolean(r);case"bigint":return zc.convertBigint(r);case"date":return zc.convertDate(r);default:return r}}};(function(e){function t(h){let f="";for(let d=1;d{"use strict";Object.defineProperty(bI,"__esModule",{value:!0});var vI;function xI(){if(vI===void 0)throw new Error("No runtime abstraction layer installed");return vI}o(xI,"RAL");(function(e){function t(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");vI=r}o(t,"install"),e.install=t})(xI||(xI={}));bI.default=xI});var ict=Ti(Ga=>{"use strict";Object.defineProperty(Ga,"__esModule",{value:!0});Ga.stringArray=Ga.array=Ga.func=Ga.error=Ga.number=Ga.string=Ga.boolean=void 0;function rzt(e){return e===!0||e===!1}o(rzt,"boolean");Ga.boolean=rzt;function rct(e){return typeof e=="string"||e instanceof String}o(rct,"string");Ga.string=rct;function nzt(e){return typeof e=="number"||e instanceof Number}o(nzt,"number");Ga.number=nzt;function izt(e){return e instanceof Error}o(izt,"error");Ga.error=izt;function azt(e){return typeof e=="function"}o(azt,"func");Ga.func=azt;function nct(e){return Array.isArray(e)}o(nct,"array");Ga.array=nct;function szt(e){return nct(e)&&e.every(t=>rct(t))}o(szt,"stringArray");Ga.stringArray=szt});var kI=Ti(Mg=>{"use strict";Object.defineProperty(Mg,"__esModule",{value:!0});Mg.Emitter=Mg.Event=void 0;var ozt=wI(),act;(function(e){let t={dispose(){}};e.None=function(){return t}})(act||(Mg.Event=act={}));var TI=class{static{o(this,"CallbackList")}add(t,r=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(t),this._contexts.push(r),Array.isArray(n)&&n.push({dispose:o(()=>this.remove(t,r),"dispose")})}remove(t,r=null){if(!this._callbacks)return;let n=!1;for(let i=0,a=this._callbacks.length;i{this._callbacks||(this._callbacks=new TI),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(t,r);let i={dispose:o(()=>{this._callbacks&&(this._callbacks.remove(t,r),i.dispose=e._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(t){this._callbacks&&this._callbacks.invoke.call(this._callbacks,t)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};Mg.Emitter=bE;bE._noop=function(){}});var sct=Ti(Ig=>{"use strict";Object.defineProperty(Ig,"__esModule",{value:!0});Ig.CancellationTokenSource=Ig.CancellationToken=void 0;var lzt=wI(),czt=ict(),EI=kI(),wE;(function(e){e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:EI.Event.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:EI.Event.None});function t(r){let n=r;return n&&(n===e.None||n===e.Cancelled||czt.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}o(t,"is"),e.is=t})(wE||(Ig.CancellationToken=wE={}));var uzt=Object.freeze(function(e,t){let r=(0,lzt.default)().timer.setTimeout(e.bind(t),0);return{dispose(){r.dispose()}}}),TE=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?uzt:(this._emitter||(this._emitter=new EI.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},CI=class{static{o(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new TE),this._token}cancel(){this._token?this._token.cancel():this._token=wE.Cancelled}dispose(){this._token?this._token instanceof TE&&this._token.dispose():this._token=wE.None}};Ig.CancellationTokenSource=CI});var kr={};var Ko=R(()=>{"use strict";wr(kr,Qi(sct(),1))});function AI(){return new Promise(e=>{typeof setImmediate>"u"?setTimeout(e,0):setImmediate(e)})}function lct(){return SI=Date.now(),new kr.CancellationTokenSource}function cct(e){oct=e}function ff(e){return e===$c}async function Vi(e){if(e===kr.CancellationToken.None)return;let t=Date.now();if(t-SI>=oct&&(SI=t,await AI()),e.isCancellationRequested)throw $c}var SI,oct,$c,cs,Qo=R(()=>{"use strict";Ko();o(AI,"delayNextTick");SI=0,oct=10;o(lct,"startCancelableOperation");o(cct,"setInterruptionPeriod");$c=Symbol("OperationCancelled");o(ff,"isOperationCancelled");o(Vi,"interruptAndCheck");cs=class{static{o(this,"Deferred")}constructor(){this.promise=new Promise((t,r)=>{this.resolve=n=>(t(n),this),this.reject=n=>(r(n),this)})}}});function _I(e,t){if(e.length<=1)return e;let r=e.length/2|0,n=e.slice(0,r),i=e.slice(r);_I(n,t),_I(i,t);let a=0,s=0,l=0;for(;ar.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function hzt(e){let t=fct(e.range);return t!==e.range?{newText:e.newText,range:t}:e}var kE,Og,dct=R(()=>{"use strict";kE=class e{static{o(this,"FullTextDocument")}constructor(t,r,n,i){this._uri=t,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(t){if(t){let r=this.offsetAt(t.start),n=this.offsetAt(t.end);return this._content.substring(r,n)}return this._content}update(t,r){for(let n of t)if(e.isIncremental(n)){let i=fct(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=uct(n.text,!1,a);if(u-l===f.length)for(let p=0,m=f.length;pt?i=s:n=s+1}let a=n-1;return t=this.ensureBeforeEOL(t,r[a]),{line:a,character:t-r[a]}}offsetAt(t){let r=this.getLineOffsets();if(t.line>=r.length)return this._content.length;if(t.line<0)return 0;let n=r[t.line];if(t.character<=0)return n;let i=t.line+1r&&hct(this._content.charCodeAt(t-1));)t--;return t}get lineCount(){return this.getLineOffsets().length}static isIncremental(t){let r=t;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(t){let r=t;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}};(function(e){function t(i,a,s,l){return new kE(i,a,s,l)}o(t,"create"),e.create=t;function r(i,a,s){if(i instanceof kE)return i.update(a,s),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}o(r,"update"),e.update=r;function n(i,a){let s=i.getText(),l=_I(a.map(hzt),(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"),e.applyEdits=n})(Og||(Og={}));o(_I,"mergeSort");o(uct,"computeLineOffsets");o(hct,"isEOL");o(fct,"getWellformedRange");o(hzt,"getWellformedEdit")});var pct,zs,Pg,LI=R(()=>{"use strict";(()=>{"use strict";var e={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}},t={};function r(i){var a=t[i];if(a!==void 0)return a.exports;var s=t[i]={exports:{}};return e[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(()=>M,"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(N,k){if(!N.scheme&&k)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${N.authority}", path: "${N.path}", query: "${N.query}", fragment: "${N.fragment}"}`);if(N.scheme&&!a.test(N.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(N.path){if(N.authority){if(!s.test(N.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(N.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,I,C,O,D,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=I||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=D||h,u(this,P))}get fsPath(){return b(this,!1)}with(k){if(!k)return this;let{scheme:I,authority:C,path:O,query:D,fragment:P}=k;return I===void 0?I=this.scheme:I===null&&(I=h),C===void 0?C=this.authority:C===null&&(C=h),O===void 0?O=this.path:O===null&&(O=h),D===void 0?D=this.query:D===null&&(D=h),P===void 0?P=this.fragment:P===null&&(P=h),I===this.scheme&&C===this.authority&&O===this.path&&D===this.query&&P===this.fragment?this:new g(I,C,O,D,P)}static parse(k,I=!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),I):new g(h,h,h,h,h)}static file(k){let I=h;if(i&&(k=k.replace(/\\/g,f)),k[0]===f&&k[1]===f){let C=k.indexOf(f,2);C===-1?(I=k.substring(2),k=f):(I=k.substring(2,C),k=k.substring(C)||f)}return new g("file",I,k,h,h)}static from(k){let I=new g(k.scheme,k.authority,k.path,k.query,k.fragment);return u(I,!0),I}toString(k=!1){return w(this,k)}toJSON(){return this}static revive(k){if(k){if(k instanceof p)return k;{let I=new g(k);return I._formatted=k.external,I._fsPath=k._sep===m?k.fsPath:null,I}}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(N,k,I){let C,O=-1;for(let D=0;D=97&&P<=122||P>=65&&P<=90||P>=48&&P<=57||P===45||P===46||P===95||P===126||k&&P===47||I&&P===91||I&&P===93||I&&P===58)O!==-1&&(C+=encodeURIComponent(N.substring(O,D)),O=-1),C!==void 0&&(C+=N.charAt(D));else{C===void 0&&(C=N.substr(0,D));let F=y[P];F!==void 0?(O!==-1&&(C+=encodeURIComponent(N.substring(O,D)),O=-1),C+=F):O===-1&&(O=D)}}return O!==-1&&(C+=encodeURIComponent(N.substring(O))),C!==void 0?C:N}o(v,"d");function x(N){let k;for(let I=0;I1&&N.scheme==="file"?`//${N.authority}${N.path}`:N.path.charCodeAt(0)===47&&(N.path.charCodeAt(1)>=65&&N.path.charCodeAt(1)<=90||N.path.charCodeAt(1)>=97&&N.path.charCodeAt(1)<=122)&&N.path.charCodeAt(2)===58?k?N.path.substr(1):N.path[1].toLowerCase()+N.path.substr(2):N.path,i&&(I=I.replace(/\//g,"\\")),I}o(b,"m");function w(N,k){let I=k?x:v,C="",{scheme:O,authority:D,path:P,query:F,fragment:B}=N;if(O&&(C+=O,C+=":"),(D||O==="file")&&(C+=f,C+=f),D){let G=D.indexOf("@");if(G!==-1){let z=D.substr(0,G);D=D.substr(G+1),G=z.lastIndexOf(":"),G===-1?C+=I(z,!1,!1):(C+=I(z.substr(0,G),!1,!1),C+=":",C+=I(z.substr(G+1),!1,!0)),C+="@"}D=D.toLowerCase(),G=D.lastIndexOf(":"),G===-1?C+=I(D,!1,!0):(C+=I(D.substr(0,G),!1,!0),C+=D.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+=I(P,!0,!1)}return F&&(C+="?",C+=I(F,!1,!1)),B&&(C+="#",C+=k?B:v(B,!1,!1)),C}o(w,"y");function S(N){try{return decodeURIComponent(N)}catch{return N.length>3?N.substr(0,3)+S(N.substr(3)):N}}o(S,"v");let T=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function E(N){return N.match(T)?N.replace(T,k=>S(k)):N}o(E,"C");var _=r(470);let A=_.posix||_,L="/";var M;(function(N){N.joinPath=function(k,...I){return k.with({path:A.join(k.path,...I)})},N.resolvePath=function(k,...I){let C=k.path,O=!1;C[0]!==L&&(C=L+C,O=!0);let D=A.resolve(C,...I);return O&&D[0]===L&&!k.authority&&(D=D.substring(1)),k.with({path:D})},N.dirname=function(k){if(k.path.length===0||k.path===L)return k;let I=A.dirname(k.path);return I.length===1&&I.charCodeAt(0)===46&&(I=""),k.with({path:I})},N.basename=function(k){return A.basename(k.path)},N.extname=function(k){return A.extname(k.path)}})(M||(M={}))})(),pct=n})();({URI:zs,Utils:Pg}=pct)});var us,Gc=R(()=>{"use strict";LI();(function(e){e.basename=Pg.basename,e.dirname=Pg.dirname,e.extname=Pg.extname,e.joinPath=Pg.joinPath,e.resolvePath=Pg.resolvePath;function t(n,i){return n?.toString()===i?.toString()}o(t,"equals"),e.equals=t;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";dct();Bg();Ko();Ps();Gc();(function(e){e[e.Changed=0]="Changed",e[e.Parsed=1]="Parsed",e[e.IndexedContent=2]="IndexedContent",e[e.ComputedScopes=3]="ComputedScopes",e[e.Linked=4]="Linked",e[e.IndexedReferences=5]="IndexedReferences",e[e.Validated=6]="Validated"})(Tn||(Tn={}));ex=class{static{o(this,"DefaultLangiumDocumentFactory")}constructor(t){this.serviceRegistry=t.ServiceRegistry,this.textDocuments=t.workspace.TextDocuments,this.fileSystemProvider=t.workspace.FileSystemProvider}async fromUri(t,r=kr.CancellationToken.None){let n=await this.fileSystemProvider.readFile(t);return this.createAsync(t,n,r)}fromTextDocument(t,r,n){return r=r??zs.parse(t.uri),n?this.createAsync(r,t,n):this.create(r,t)}fromString(t,r,n){return n?this.createAsync(r,t,n):this.create(r,t)}fromModel(t,r){return this.create(r,{$model:t})}create(t,r){if(typeof r=="string"){let n=this.parse(t,r);return this.createLangiumDocument(n,t,void 0,r)}else if("$model"in r){let n={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(n,t)}else{let n=this.parse(t,r.getText());return this.createLangiumDocument(n,t,r)}}async createAsync(t,r,n){if(typeof r=="string"){let i=await this.parseAsync(t,r,n);return this.createLangiumDocument(i,t,void 0,r)}else{let i=await this.parseAsync(t,r.getText(),n);return this.createLangiumDocument(i,t,r)}}createLangiumDocument(t,r,n,i){let a;if(n)a={parseResult:t,uri:r,state:Tn.Parsed,references:[],textDocument:n};else{let s=this.createTextDocumentGetter(r,i);a={parseResult:t,uri:r,state:Tn.Parsed,references:[],get textDocument(){return s()}}}return t.value.$document=a,a}async update(t,r){var n,i;let a=(n=t.parseResult.value.$cstNode)===null||n===void 0?void 0:n.root.fullText,s=(i=this.textDocuments)===null||i===void 0?void 0:i.get(t.uri.toString()),l=s?s.getText():await this.fileSystemProvider.readFile(t.uri);if(s)Object.defineProperty(t,"textDocument",{value:s});else{let u=this.createTextDocumentGetter(t.uri,l);Object.defineProperty(t,"textDocument",{get:u})}return a!==l&&(t.parseResult=await this.parseAsync(t.uri,l,r),t.parseResult.value.$document=t),t.state=Tn.Parsed,t}parse(t,r){return this.serviceRegistry.getServices(t).parser.LangiumParser.parse(r)}parseAsync(t,r,n){return this.serviceRegistry.getServices(t).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(t,r){let n=this.serviceRegistry,i;return()=>i??(i=Og.create(t.toString(),n.getServices(t).LanguageMetaData.languageId,0,r??""))}},rx=class{static{o(this,"DefaultLangiumDocuments")}constructor(t){this.documentMap=new Map,this.langiumDocumentFactory=t.workspace.LangiumDocumentFactory}get all(){return en(this.documentMap.values())}addDocument(t){let r=t.uri.toString();if(this.documentMap.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentMap.set(r,t)}getDocument(t){let r=t.toString();return this.documentMap.get(r)}async getOrCreateDocument(t,r){let n=this.getDocument(t);return n||(n=await this.langiumDocumentFactory.fromUri(t,r),this.addDocument(n),n)}createDocument(t,r,n){if(n)return this.langiumDocumentFactory.fromString(r,t,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,t);return this.addDocument(i),i}}hasDocument(t){return this.documentMap.has(t.toString())}invalidateDocument(t){let r=t.toString(),n=this.documentMap.get(r);return n&&(n.state=Tn.Changed,n.precomputedScopes=void 0,n.references=[],n.diagnostics=void 0),n}deleteDocument(t){let r=t.toString(),n=this.documentMap.get(r);return n&&(n.state=Tn.Changed,this.documentMap.delete(r)),n}}});var nx,DI=R(()=>{"use strict";Ko();Yo();is();Qo();Bg();nx=class{static{o(this,"DefaultLinker")}constructor(t){this.reflection=t.shared.AstReflection,this.langiumDocuments=()=>t.shared.workspace.LangiumDocuments,this.scopeProvider=t.references.ScopeProvider,this.astNodeLocator=t.workspace.AstNodeLocator}async link(t,r=kr.CancellationToken.None){for(let n of jo(t.parseResult.value))await Vi(r),rg(n).forEach(i=>this.doLink(i,t))}doLink(t,r){let n=t.reference;if(n._ref===void 0)try{let i=this.getCandidate(t);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(t,i)}}catch(i){n._ref=Object.assign(Object.assign({},t),{message:`An error occurred while resolving reference to '${n.$refText}': ${i}`})}r.references.push(n)}unlink(t){for(let r of t.references)delete r._ref,delete r._nodeDescription;t.references=[]}getCandidate(t){let n=this.scopeProvider.getScope(t).getElement(t.reference.$refText);return n??this.createLinkingError(t)}buildReference(t,r,n,i){let a=this,s={$refNode:n,$refText:i,get ref(){var l;if(ri(this._ref))return this._ref;if(LR(this._nodeDescription)){let u=a.loadAstNode(this._nodeDescription);this._ref=u??a.createLinkingError({reference:s,container:t,property:r},this._nodeDescription)}else if(this._ref===void 0){let u=a.getLinkedNode({reference:s,container:t,property:r});if(u.error&&$i(t).state{"use strict";zl();o(mct,"isNamed");ix=class{static{o(this,"DefaultNameProvider")}getName(t){if(mct(t))return t.name}getNameNode(t){return T2(t.$cstNode,"name")}}});var ax,NI=R(()=>{"use strict";zl();Yo();is();Pl();Ps();Gc();ax=class{static{o(this,"DefaultReferences")}constructor(t){this.nameProvider=t.references.NameProvider,this.index=t.shared.workspace.IndexManager,this.nodeLocator=t.workspace.AstNodeLocator}findDeclaration(t){if(t){let r=tM(t),n=t.astNode;if(r&&n){let i=n[r.feature];if(ka(i))return i.ref;if(Array.isArray(i)){for(let a of i)if(ka(a)&&a.$refNode&&a.$refNode.offset<=t.offset&&a.$refNode.end>=t.end)return a.ref}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===t||RR(t,i)))return n}}}findDeclarationNode(t){let r=this.findDeclaration(t);if(r?.$cstNode){let n=this.nameProvider.getNameNode(r);return n??r.$cstNode}}findReferences(t,r){let n=[];if(r.includeDeclaration){let a=this.getReferenceToSelf(t);a&&n.push(a)}let i=this.index.findAllReferences(t,this.nodeLocator.getAstNodePath(t));return r.documentUri&&(i=i.filter(a=>us.equals(a.sourceUri,r.documentUri))),n.push(...i),en(n)}getReferenceToSelf(t){let r=this.nameProvider.getNameNode(t);if(r){let n=$i(t),i=this.nodeLocator.getAstNodePath(t);return{sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:t0(r),local:!0}}}}});var Vc,E0,Fg=R(()=>{"use strict";Ps();Vc=class{static{o(this,"MultiMap")}constructor(t){if(this.map=new Map,t)for(let[r,n]of t)this.add(r,n)}get size(){return Jm.sum(en(this.map.values()).map(t=>t.length))}clear(){this.map.clear()}delete(t,r){if(r===void 0)return this.map.delete(t);{let n=this.map.get(t);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(t):n.splice(i,1),!0}return!1}}get(t){var r;return(r=this.map.get(t))!==null&&r!==void 0?r:[]}has(t,r){if(r===void 0)return this.map.has(t);{let n=this.map.get(t);return n?n.indexOf(r)>=0:!1}}add(t,r){return this.map.has(t)?this.map.get(t).push(r):this.map.set(t,[r]),this}addAll(t,r){return this.map.has(t)?this.map.get(t).push(...r):this.map.set(t,Array.from(r)),this}forEach(t){this.map.forEach((r,n)=>r.forEach(i=>t(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return en(this.map.entries()).flatMap(([t,r])=>r.map(n=>[t,n]))}keys(){return en(this.map.keys())}values(){return en(this.map.values()).flat()}entriesGroupedByKey(){return en(this.map.entries())}},E0=class{static{o(this,"BiMap")}get size(){return this.map.size}constructor(t){if(this.map=new Map,this.inverse=new Map,t)for(let[r,n]of t)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(t,r){return this.map.set(t,r),this.inverse.set(r,t),this}get(t){return this.map.get(t)}getKey(t){return this.inverse.get(t)}delete(t){let r=this.map.get(t);return r!==void 0?(this.map.delete(t),this.inverse.delete(r),!0):!1}}});var sx,MI=R(()=>{"use strict";Ko();is();Fg();Qo();sx=class{static{o(this,"DefaultScopeComputation")}constructor(t){this.nameProvider=t.references.NameProvider,this.descriptions=t.workspace.AstNodeDescriptionProvider}async computeExports(t,r=kr.CancellationToken.None){return this.computeExportsForNode(t.parseResult.value,t,void 0,r)}async computeExportsForNode(t,r,n=g2,i=kr.CancellationToken.None){let a=[];this.exportNode(t,a,r);for(let s of n(t))await Vi(i),this.exportNode(s,a,r);return a}exportNode(t,r,n){let i=this.nameProvider.getName(t);i&&r.push(this.descriptions.createDescription(t,i,n))}async computeLocalScopes(t,r=kr.CancellationToken.None){let n=t.parseResult.value,i=new Vc;for(let a of Pc(n))await Vi(r),this.processNode(a,t,i);return i}processNode(t,r,n){let i=t.$container;if(i){let a=this.nameProvider.getName(t);a&&n.add(i,this.descriptions.createDescription(t,a,r))}}}});var zg,ox,fzt,II=R(()=>{"use strict";Ps();zg=class{static{o(this,"StreamScope")}constructor(t,r,n){var i;this.elements=t,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(t){let r=this.caseInsensitive?this.elements.find(n=>n.name.toLowerCase()===t.toLowerCase()):this.elements.find(n=>n.name===t);if(r)return r;if(this.outerScope)return this.outerScope.getElement(t)}},ox=class{static{o(this,"MapScope")}constructor(t,r,n){var i;this.elements=new Map,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1;for(let a of t){let s=this.caseInsensitive?a.name.toLowerCase():a.name;this.elements.set(s,a)}this.outerScope=r}getElement(t){let r=this.caseInsensitive?t.toLowerCase():t,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(t)}getAllElements(){let t=en(this.elements.values());return this.outerScope&&(t=t.concat(this.outerScope.getAllElements())),t}},fzt={getElement(){},getAllElements(){return u2}}});var $g,lx,C0,EE,Gg,CE=R(()=>{"use strict";$g=class{static{o(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(t){this.toDispose.push(t)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(t=>t.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},lx=class extends $g{static{o(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(t){return this.throwIfDisposed(),this.cache.has(t)}set(t,r){this.throwIfDisposed(),this.cache.set(t,r)}get(t,r){if(this.throwIfDisposed(),this.cache.has(t))return this.cache.get(t);if(r){let n=r();return this.cache.set(t,n),n}else return}delete(t){return this.throwIfDisposed(),this.cache.delete(t)}clear(){this.throwIfDisposed(),this.cache.clear()}},C0=class extends $g{static{o(this,"ContextCache")}constructor(t){super(),this.cache=new Map,this.converter=t??(r=>r)}has(t,r){return this.throwIfDisposed(),this.cacheForContext(t).has(r)}set(t,r,n){this.throwIfDisposed(),this.cacheForContext(t).set(r,n)}get(t,r,n){this.throwIfDisposed();let i=this.cacheForContext(t);if(i.has(r))return i.get(r);if(n){let a=n();return i.set(r,a),a}else return}delete(t,r){return this.throwIfDisposed(),this.cacheForContext(t).delete(r)}clear(t){if(this.throwIfDisposed(),t){let r=this.converter(t);this.cache.delete(r)}else this.cache.clear()}cacheForContext(t){let r=this.converter(t),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},EE=class extends C0{static{o(this,"DocumentCache")}constructor(t){super(r=>r.toString()),this.onDispose(t.workspace.DocumentBuilder.onUpdate((r,n)=>{let i=r.concat(n);for(let a of i)this.clear(a)}))}},Gg=class extends lx{static{o(this,"WorkspaceCache")}constructor(t){super(),this.onDispose(t.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}});var cx,OI=R(()=>{"use strict";II();is();Ps();CE();cx=class{static{o(this,"DefaultScopeProvider")}constructor(t){this.reflection=t.shared.AstReflection,this.nameProvider=t.references.NameProvider,this.descriptions=t.workspace.AstNodeDescriptionProvider,this.indexManager=t.shared.workspace.IndexManager,this.globalScopeCache=new Gg(t.shared)}getScope(t){let r=[],n=this.reflection.getReferenceType(t),i=$i(t.container).precomputedScopes;if(i){let s=t.container;do{let l=i.get(s);l.length>0&&r.push(en(l).filter(u=>this.reflection.isSubtype(u.type,n))),s=s.$container}while(s)}let a=this.getGlobalScope(n,t);for(let s=r.length-1;s>=0;s--)a=this.createScope(r[s],a);return a}createScope(t,r,n){return new zg(en(t),r,n)}createScopeForNodes(t,r,n){let i=en(t).map(a=>{let s=this.nameProvider.getName(a);if(s)return this.descriptions.createDescription(a,s)}).nonNullable();return new zg(i,r,n)}getGlobalScope(t,r){return this.globalScopeCache.get(t,()=>new ox(this.indexManager.allElements(t)))}}});function PI(e){return typeof e.$comment=="string"}function gct(e){return typeof e=="object"&&!!e&&("$ref"in e||"$error"in e)}var ux,SE=R(()=>{"use strict";LI();Yo();is();zl();o(PI,"isAstNodeWithComment");o(gct,"isIntermediateReference");ux=class{static{o(this,"DefaultJsonSerializer")}constructor(t){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=t.shared.workspace.LangiumDocuments,this.astNodeLocator=t.workspace.AstNodeLocator,this.nameProvider=t.references.NameProvider,this.commentProvider=t.documentation.CommentProvider}serialize(t,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=$i(t),JSON.stringify(t,a,r?.space)}finally{this.currentDocument=void 0}}deserialize(t,r={}){let n=JSON.parse(t);return this.linkNode(n,n,r),n}replacer(t,r,{refText:n,sourceText:i,textRegions:a,comments:s,uriConverter:l}){var u,h,f,d;if(!this.ignoreProperties.has(t))if(ka(r)){let p=r.ref,m=n?r.$refText:void 0;if(p){let g=$i(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)),(!t||r.$document)&&p?.$textRegion&&(p.$textRegion.documentURI=(f=this.currentDocument)===null||f===void 0?void 0:f.uri.toString())),i&&!t&&(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(t){let r=o(n=>({offset:n.offset,end:n.end,length:n.length,range:n.range}),"createDocumentSegment");if(t.$cstNode){let n=t.$textRegion=r(t.$cstNode),i=n.assignments={};return Object.keys(t).filter(a=>!a.startsWith("$")).forEach(a=>{let s=KN(t.$cstNode,a).map(r);s.length!==0&&(i[a]=s)}),t}}linkNode(t,r,n,i,a,s){for(let[u,h]of Object.entries(t))if(Array.isArray(h))for(let f=0;f{"use strict";Gc();hx=class{static{o(this,"DefaultServiceRegistry")}register(t){if(!this.singleton&&!this.map){this.singleton=t;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 t.LanguageMetaData.fileExtensions)this.map[r]!==void 0&&this.map[r]!==t&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${t.LanguageMetaData.languageId}'.`),this.map[r]=t}getServices(t){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=us.extname(t),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 AE(e){return{code:e}}var Vg,fx,dx=R(()=>{"use strict";Fg();Qo();Ps();o(AE,"diagnosticData");(function(e){e.all=["fast","slow","built-in"]})(Vg||(Vg={}));fx=class{static{o(this,"ValidationRegistry")}constructor(t){this.entries=new Vc,this.reflection=t.shared.AstReflection}register(t,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(t)){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(t,r){return async(n,i,a)=>{try{await t.call(r,n,i,a)}catch(s){if(ff(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(t,r){if(t==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(t))this.entries.add(n,r)}getChecks(t,r){let n=en(this.entries.get(t)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}}});function yct(e){if(e.range)return e.range;let t;return typeof e.property=="string"?t=T2(e.node.$cstNode,e.property,e.index):typeof e.keyword=="string"&&(t=ZN(e.node.$cstNode,e.keyword,e.index)),t??(t=e.node.$cstNode),t?t.range:{start:{line:0,character:0},end:{line:0,character:0}}}function _E(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+e)}}var px,Xu,FI=R(()=>{"use strict";Ko();zl();is();Pl();Qo();dx();px=class{static{o(this,"DefaultDocumentValidator")}constructor(t){this.validationRegistry=t.validation.ValidationRegistry,this.metadata=t.LanguageMetaData}async validateDocument(t,r={},n=kr.CancellationToken.None){let i=t.parseResult,a=[];if(await Vi(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)===Xu.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)===Xu.ParsingError}))||(this.processLinkingErrors(t,a,r),r.stopAfterLinkingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===Xu.LinkingError}))))return a;try{a.push(...await this.validateAst(i.value,r,n))}catch(s){if(ff(s))throw s;console.error("An error occurred during validation:",s)}return await Vi(n),a}processLexingErrors(t,r,n){for(let i of t.lexerErrors){let a={severity:_E("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:AE(Xu.LexingError),source:this.getSource()};r.push(a)}}processParsingErrors(t,r,n){for(let i of t.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=tg(i.token);if(a){let s={severity:_E("error"),range:a,message:i.message,data:AE(Xu.ParsingError),source:this.getSource()};r.push(s)}}}processLinkingErrors(t,r,n){for(let i of t.references){let a=i.error;if(a){let s={node:a.container,property:a.property,index:a.index,data:{code:Xu.LinkingError,containerType:a.container.$type,property:a.property,refText:a.reference.$refText}};r.push(this.toDiagnostic("error",a.message,s))}}}async validateAst(t,r,n=kr.CancellationToken.None){let i=[],a=o((s,l,u)=>{i.push(this.toDiagnostic(s,l,u))},"acceptor");return await Promise.all(jo(t).map(async s=>{await Vi(n);let l=this.validationRegistry.getChecks(s.$type,r.categories);for(let u of l)await u(s,a,n)})),i}toDiagnostic(t,r,n){return{message:r,range:yct(n),severity:_E(t),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};o(yct,"getDiagnosticRange");o(_E,"toDiagnosticSeverity");(function(e){e.LexingError="lexing-error",e.ParsingError="parsing-error",e.LinkingError="linking-error"})(Xu||(Xu={}))});var mx,gx,zI=R(()=>{"use strict";Ko();Yo();is();Pl();Qo();Gc();mx=class{static{o(this,"DefaultAstNodeDescriptionProvider")}constructor(t){this.astNodeLocator=t.workspace.AstNodeLocator,this.nameProvider=t.references.NameProvider}createDescription(t,r,n=$i(t)){r??(r=this.nameProvider.getName(t));let i=this.astNodeLocator.getAstNodePath(t);if(!r)throw new Error(`Node at path ${i} has no name.`);let a,s=o(()=>{var l;return a??(a=t0((l=this.nameProvider.getNameNode(t))!==null&&l!==void 0?l:t.$cstNode))},"nameSegmentGetter");return{node:t,name:r,get nameSegment(){return s()},selectionSegment:t0(t.$cstNode),type:t.$type,documentUri:n.uri,path:i}}},gx=class{static{o(this,"DefaultReferenceDescriptionProvider")}constructor(t){this.nodeLocator=t.workspace.AstNodeLocator}async createDescriptions(t,r=kr.CancellationToken.None){let n=[],i=t.parseResult.value;for(let a of jo(i))await Vi(r),rg(a).filter(s=>!Zd(s)).forEach(s=>{let l=this.createDescription(s);l&&n.push(l)});return n}createDescription(t){let r=t.reference.$nodeDescription,n=t.reference.$refNode;if(!r||!n)return;let i=$i(t.container).uri;return{sourceUri:i,sourcePath:this.nodeLocator.getAstNodePath(t.container),targetUri:r.documentUri,targetPath:r.path,segment:t0(n),local:us.equals(r.documentUri,i)}}}});var yx,$I=R(()=>{"use strict";yx=class{static{o(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(t){if(t.$container){let r=this.getAstNodePath(t.$container),n=this.getPathSegment(t);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:t,$containerIndex:r}){if(!t)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?t+this.indexSeparator+r:t}getAstNode(t,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]},t)}}});var vx,GI=R(()=>{"use strict";Qo();vx=class{static{o(this,"DefaultConfigurationProvider")}constructor(t){this._ready=new cs,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=t.ServiceRegistry}get ready(){return this._ready.promise}initialize(t){var r,n;this.workspaceConfig=(n=(r=t.capabilities.workspace)===null||r===void 0?void 0:r.configuration)!==null&&n!==void 0?n:!1}async initialized(t){if(this.workspaceConfig){if(t.register){let r=this.serviceRegistry.all;t.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(t.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=await t.fetchConfiguration(r);r.forEach((i,a)=>{this.updateSectionConfiguration(i.section,n[a])})}}this._ready.resolve()}updateConfiguration(t){t.settings&&Object.keys(t.settings).forEach(r=>{this.updateSectionConfiguration(r,t.settings[r])})}updateSectionConfiguration(t,r){this.settings[t]=r}async getConfiguration(t,r){await this.ready;let n=this.toSectionName(t);if(this.settings[n])return this.settings[n][r]}toSectionName(t){return`${t}`}}});var S0,VI=R(()=>{"use strict";(function(e){function t(r){return{dispose:o(async()=>await r(),"dispose")}}o(t,"create"),e.create=t})(S0||(S0={}))});var xx,UI=R(()=>{"use strict";Ko();VI();Fg();Qo();Ps();dx();Bg();xx=class{static{o(this,"DefaultDocumentBuilder")}constructor(t){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Vc,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Tn.Changed,this.langiumDocuments=t.workspace.LangiumDocuments,this.langiumDocumentFactory=t.workspace.LangiumDocumentFactory,this.indexManager=t.workspace.IndexManager,this.serviceRegistry=t.ServiceRegistry}async build(t,r={},n=kr.CancellationToken.None){var i,a;for(let s of t){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(t.map(s=>s.uri),[]),await this.buildDocuments(t,r,n)}async update(t,r,n=kr.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 t){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=en(t).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(t,r),await Vi(n);let a=this.langiumDocuments.all.filter(s=>{var l;return s.staten(t,r)))}shouldRelink(t,r){return t.references.some(n=>n.error!==void 0)?!0:this.indexManager.isAffected(t,r)}onUpdate(t){return this.updateListeners.push(t),S0.create(()=>{let r=this.updateListeners.indexOf(t);r>=0&&this.updateListeners.splice(r,1)})}async buildDocuments(t,r,n){this.prepareBuild(t,r),await this.runCancelable(t,Tn.Parsed,n,a=>this.langiumDocumentFactory.update(a,n)),await this.runCancelable(t,Tn.IndexedContent,n,a=>this.indexManager.updateContent(a,n)),await this.runCancelable(t,Tn.ComputedScopes,n,async a=>{let s=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.precomputedScopes=await s.computeLocalScopes(a,n)}),await this.runCancelable(t,Tn.Linked,n,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,n)),await this.runCancelable(t,Tn.IndexedReferences,n,a=>this.indexManager.updateReferences(a,n));let i=t.filter(a=>this.shouldValidate(a));await this.runCancelable(i,Tn.Validated,n,a=>this.validate(a,n));for(let a of t){let s=this.buildState.get(a.uri.toString());s&&(s.completed=!0)}}prepareBuild(t,r){for(let n of t){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(t,r,n,i){let a=t.filter(s=>s.state{this.buildPhaseListeners.delete(t,r)})}waitUntil(t,r,n){let i;if(r&&"path"in r?i=r:n=r,n??(n=kr.CancellationToken.None),i){let a=this.langiumDocuments.getDocument(i);if(a&&a.state>t)return Promise.resolve(i)}return this.currentState>=t?Promise.resolve(void 0):n.isCancellationRequested?Promise.reject($c):new Promise((a,s)=>{let l=this.onBuildPhase(t,()=>{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($c)})})}async notifyBuildPhase(t,r,n){if(t.length===0)return;let i=this.buildPhaseListeners.get(r);for(let a of i)await Vi(n),await a(t,n)}shouldValidate(t){return!!this.getBuildOptions(t).validation}async validate(t,r){var n,i;let a=this.serviceRegistry.getServices(t.uri).validation.DocumentValidator,s=this.getBuildOptions(t).validation,l=typeof s=="object"?s:void 0,u=await a.validateDocument(t,l,r);t.diagnostics?t.diagnostics.push(...u):t.diagnostics=u;let h=this.buildState.get(t.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(t){var r,n;return(n=(r=this.buildState.get(t.uri.toString()))===null||r===void 0?void 0:r.options)!==null&&n!==void 0?n:{}}}});var bx,HI=R(()=>{"use strict";is();CE();Ko();Ps();Gc();bx=class{static{o(this,"DefaultIndexManager")}constructor(t){this.symbolIndex=new Map,this.symbolByTypeIndex=new C0,this.referenceIndex=new Map,this.documents=t.workspace.LangiumDocuments,this.serviceRegistry=t.ServiceRegistry,this.astReflection=t.AstReflection}findAllReferences(t,r){let n=$i(t).uri,i=[];return this.referenceIndex.forEach(a=>{a.forEach(s=>{us.equals(s.targetUri,n)&&s.targetPath===r&&i.push(s)})}),en(i)}allElements(t,r){let n=en(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,t)).flat()}getFileDescriptions(t,r){var n;return r?this.symbolByTypeIndex.get(t,r,()=>{var a;return((a=this.symbolIndex.get(t))!==null&&a!==void 0?a:[]).filter(l=>this.astReflection.isSubtype(l.type,r))}):(n=this.symbolIndex.get(t))!==null&&n!==void 0?n:[]}remove(t){let r=t.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r),this.referenceIndex.delete(r)}async updateContent(t,r=kr.CancellationToken.None){let i=await this.serviceRegistry.getServices(t.uri).references.ScopeComputation.computeExports(t,r),a=t.uri.toString();this.symbolIndex.set(a,i),this.symbolByTypeIndex.clear(a)}async updateReferences(t,r=kr.CancellationToken.None){let i=await this.serviceRegistry.getServices(t.uri).workspace.ReferenceDescriptionProvider.createDescriptions(t,r);this.referenceIndex.set(t.uri.toString(),i)}isAffected(t,r){let n=this.referenceIndex.get(t.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}}});var wx,WI=R(()=>{"use strict";Ko();Qo();Gc();wx=class{static{o(this,"DefaultWorkspaceManager")}constructor(t){this.initialBuildOptions={},this._ready=new cs,this.serviceRegistry=t.ServiceRegistry,this.langiumDocuments=t.workspace.LangiumDocuments,this.documentBuilder=t.workspace.DocumentBuilder,this.fileSystemProvider=t.workspace.FileSystemProvider,this.mutex=t.workspace.WorkspaceLock}get ready(){return this._ready.promise}initialize(t){var r;this.folders=(r=t.workspaceFolders)!==null&&r!==void 0?r:void 0}initialized(t){return this.mutex.write(r=>{var n;return this.initializeWorkspace((n=this.folders)!==null&&n!==void 0?n:[],r)})}async initializeWorkspace(t,r=kr.CancellationToken.None){let n=await this.performStartup(t);await Vi(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(t){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(t,i),await Promise.all(t.map(a=>[a,this.getRootFolder(a)]).map(async a=>this.traverseFolder(...a,r,i))),this._ready.resolve(),n}loadAdditionalDocuments(t,r){return Promise.resolve()}getRootFolder(t){return zs.parse(t.uri)}async traverseFolder(t,r,n,i){let a=await this.fileSystemProvider.readDirectory(r);await Promise.all(a.map(async s=>{if(this.includeEntry(t,s,n)){if(s.isDirectory)await this.traverseFolder(t,s.uri,n,i);else if(s.isFile){let l=await this.langiumDocuments.getOrCreateDocument(s.uri);i(l)}}}))}includeEntry(t,r,n){let i=us.basename(r.uri);if(i.startsWith("."))return!1;if(r.isDirectory)return i!=="node_modules"&&i!=="out";if(r.isFile){let a=us.extname(r.uri);return n.includes(a)}return!1}}});function vct(e){return Array.isArray(e)&&(e.length===0||"name"in e[0])}function qI(e){return e&&"modes"in e&&"defaultMode"in e}function YI(e){return!vct(e)&&!qI(e)}var Tx,XI=R(()=>{"use strict";g0();Tx=class{static{o(this,"DefaultLexer")}constructor(t){let r=t.parser.TokenBuilder.buildTokens(t.Grammar,{caseInsensitive:t.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=YI(r)?Object.values(r):r;this.chevrotainLexer=new li(n,{positionTracking:"full"})}get definition(){return this.tokenTypes}tokenize(t){var r;let n=this.chevrotainLexer.tokenize(t);return{tokens:n.tokens,errors:n.errors,hidden:(r=n.groups.hidden)!==null&&r!==void 0?r:[]}}toTokenTypeDictionary(t){if(YI(t))return t;let r=qI(t)?Object.values(t.modes).flat():t,n={};return r.forEach(i=>n[i.name]=i),n}};o(vct,"isTokenTypeArray");o(qI,"isIMultiModeLexerDefinition");o(YI,"isTokenTypeDictionary")});function QI(e,t,r){let n,i;typeof e=="string"?(i=t,n=r):(i=e.range.start,n=t),i||(i=Xr.create(0,0));let a=wct(e),s=JI(n),l=pzt({lines:a,position:i,options:s});return xzt({index:0,tokens:l,position:i})}function ZI(e,t){let r=JI(t),n=wct(e);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 wct(e){let t="";return typeof e=="string"?t=e:t=e.text,t.split(VN)}function pzt(e){var t,r,n;let i=[],a=e.position.line,s=e.position.character;for(let l=0;l=f.length){if(i.length>0){let m=Xr.create(a,s);i.push({type:"break",content:"",range:Dr.create(m,m)})}}else{xct.lastIndex=d;let m=xct.exec(f);if(m){let g=m[0],y=m[1],v=Xr.create(a,s+d),x=Xr.create(a,s+d+g.length);i.push({type:"tag",content:y,range:Dr.create(v,x)}),d+=g.length,d=KI(f,d)}if(d0&&i[i.length-1].type==="break"?i.slice(0,-1):i}function mzt(e,t,r,n){let i=[];if(e.length===0){let a=Xr.create(r,n),s=Xr.create(r,n+t.length);i.push({type:"text",content:t,range:Dr.create(a,s)})}else{let a=0;for(let l of e){let u=l.index,h=t.substring(a,u);h.length>0&&i.push({type:"text",content:t.substring(a,u),range:Dr.create(Xr.create(r,a+n),Xr.create(r,u+n))});let f=h.length+1,d=l[1];if(i.push({type:"inline-tag",content:d,range:Dr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+d.length+n))}),f+=d.length,l.length===4){f+=l[2].length;let p=l[3];i.push({type:"text",content:p,range:Dr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+p.length+n))})}else i.push({type:"text",content:"",range:Dr.create(Xr.create(r,a+f+n),Xr.create(r,a+f+n))});a=u+l[0].length}let s=t.substring(a);s.length>0&&i.push({type:"text",content:s,range:Dr.create(Xr.create(r,a+n),Xr.create(r,a+n+s.length))})}return i}function KI(e,t){let r=e.substring(t).match(gzt);return r?t+r.index:e.length}function vzt(e){let t=e.match(yzt);if(t&&typeof t.index=="number")return t.index}function xzt(e){var t,r,n,i;let a=Xr.create(e.position.line,e.position.character);if(e.tokens.length===0)return new LE([],Dr.create(a,a));let s=[];for(;e.index0){let u=KI(t,a);s=t.substring(u),t=t.substring(0,a)}return(e==="linkcode"||e==="link"&&r.link==="code")&&(s=`\`${s}\``),(i=(n=r.renderLink)===null||n===void 0?void 0:n.call(r,t,s))!==null&&i!==void 0?i:Ezt(t,s)}}function Ezt(e,t){try{return zs.parse(e,!0),`[${t}](${e})`}catch{return e}}function bct(e){return e.endsWith(` +`)?` +`:` + +`}var xct,dzt,gzt,yzt,LE,kx,Ex,DE,tO=R(()=>{"use strict";sI();ig();Gc();o(QI,"parseJSDoc");o(ZI,"isJSDoc");o(wct,"getLines");xct=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,dzt=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;o(pzt,"tokenize");o(mzt,"buildInlineTokens");gzt=/\S/,yzt=/\s*$/;o(KI,"skipWhitespace");o(vzt,"lastCharacter");o(xzt,"parseJSDocComment");o(bzt,"parseJSDocElement");o(wzt,"appendEmptyLine");o(Tct,"parseJSDocText");o(Tzt,"parseJSDocInline");o(kct,"parseJSDocTag");o(Ect,"parseJSDocLine");o(JI,"normalizeOptions");o(jI,"normalizeOption");LE=class{static{o(this,"JSDocCommentImpl")}constructor(t,r){this.elements=t,this.range=r}getTag(t){return this.getAllTags().find(r=>r.name===t)}getTags(t){return this.getAllTags().filter(r=>r.name===t)}getAllTags(){return this.elements.filter(t=>"name"in t)}toString(){let t="";for(let r of this.elements)if(t.length===0)t=r.toString();else{let n=r.toString();t+=bct(t)+n}return t.trim()}toMarkdown(t){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(t);else{let i=n.toMarkdown(t);r+=bct(r)+i}return r.trim()}},kx=class{static{o(this,"JSDocTagImpl")}constructor(t,r,n,i){this.name=t,this.content=r,this.inline=n,this.range=i}toString(){let t=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?t=`${t} ${r}`:this.content.inlines.length>1&&(t=`${t} +${r}`),this.inline?`{${t}}`:t}toMarkdown(t){var r,n;return(n=(r=t?.renderTag)===null||r===void 0?void 0:r.call(t,this))!==null&&n!==void 0?n:this.toMarkdownDefault(t)}toMarkdownDefault(t){let r=this.content.toMarkdown(t);if(this.inline){let a=kzt(this.name,r,t??{});if(typeof a=="string")return a}let n="";t?.tag==="italic"||t?.tag===void 0?n="*":t?.tag==="bold"?n="**":t?.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(kzt,"renderInlineTag");o(Ezt,"renderLinkDefault");Ex=class{static{o(this,"JSDocTextImpl")}constructor(t,r){this.inlines=t,this.range=r}toString(){let t="";for(let r=0;rn.range.start.line&&(t+=` +`)}return t}toMarkdown(t){let r="";for(let n=0;ni.range.start.line&&(r+=` +`)}return r}},DE=class{static{o(this,"JSDocLineImpl")}constructor(t,r){this.text=t,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};o(bct,"fillNewlines")});var Cx,eO=R(()=>{"use strict";is();tO();Cx=class{static{o(this,"JSDocDocumentationProvider")}constructor(t){this.indexManager=t.shared.workspace.IndexManager,this.commentProvider=t.documentation.CommentProvider}getDocumentation(t){let r=this.commentProvider.getComment(t);if(r&&ZI(r))return QI(r).toMarkdown({renderLink:o((i,a)=>this.documentationLinkRenderer(t,i,a),"renderLink"),renderTag:o(i=>this.documentationTagRenderer(t,i),"renderTag")})}documentationLinkRenderer(t,r,n){var i;let a=(i=this.findNameInPrecomputedScopes(t,r))!==null&&i!==void 0?i:this.findNameInGlobalScope(t,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(t,r){}findNameInPrecomputedScopes(t,r){let i=$i(t).precomputedScopes;if(!i)return;let a=t;do{let l=i.get(a).find(u=>u.name===r);if(l)return l;a=a.$container}while(a)}findNameInGlobalScope(t,r){return this.indexManager.allElements().find(i=>i.name===r)}}});var Sx,rO=R(()=>{"use strict";SE();Pl();Sx=class{static{o(this,"DefaultCommentProvider")}constructor(t){this.grammarConfig=()=>t.parser.GrammarConfig}getComment(t){var r;return PI(t)?t.$comment:(r=MR(t.$cstNode,this.grammarConfig().multilineCommentRules))===null||r===void 0?void 0:r.text}}});var ci={};var nO=R(()=>{"use strict";wr(ci,Qi(kI(),1))});var Ax,iO,aO,sO=R(()=>{"use strict";Qo();nO();Ax=class{static{o(this,"DefaultAsyncParser")}constructor(t){this.syncParser=t.parser.LangiumParser}parse(t){return Promise.resolve(this.syncParser.parse(t))}},iO=class{static{o(this,"AbstractThreadedAsyncParser")}constructor(t){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=t.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length{if(this.queue.length>0){let r=this.queue.shift();r&&(t.lock(),r.resolve(t))}}),this.workerPool.push(t)}}async parse(t,r){let n=await this.acquireParserWorker(r),i=new cs,a,s=r.onCancellationRequested(()=>{a=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(t).then(l=>{let u=this.hydrator.hydrate(l);i.resolve(u)}).catch(l=>{i.reject(l)}).finally(()=>{s.dispose(),clearTimeout(a)}),i.promise}terminateWorker(t){t.terminate();let r=this.workerPool.indexOf(t);r>=0&&this.workerPool.splice(r,1)}async acquireParserWorker(t){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new cs;return t.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject($c)}),this.queue.push(r),r.promise}},aO=class{static{o(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(t,r,n,i){this.onReadyEmitter=new ci.Emitter,this.deferred=new cs,this._ready=!0,this._parsing=!1,this.sendMessage=t,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($c),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(t){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new cs,this.sendMessage(t),this.deferred.promise}}});var _x,oO=R(()=>{"use strict";Ko();Qo();_x=class{static{o(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new kr.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(t){this.cancelWrite();let r=new kr.CancellationTokenSource;return this.previousTokenSource=r,this.enqueue(this.writeQueue,t,r.token)}read(t){return this.enqueue(this.readQueue,t)}enqueue(t,r,n){let i=new cs,a={action:r,deferred:i,cancellationToken:n??kr.CancellationToken.None};return t.push(a),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;let t=[];if(this.writeQueue.length>0)t.push(this.writeQueue.shift());else if(this.readQueue.length>0)t.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(t.map(async({action:r,deferred:n,cancellationToken:i})=>{try{let a=await Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){ff(a)?n.resolve(void 0):n.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}});var Lx,lO=R(()=>{"use strict";mE();Oc();Yo();is();Fg();Pl();Lx=class{static{o(this,"DefaultHydrator")}constructor(t){this.grammarElementIdMap=new E0,this.tokenTypeIdMap=new E0,this.grammar=t.Grammar,this.lexer=t.parser.Lexer,this.linker=t.references.Linker}dehydrate(t){return{lexerErrors:t.lexerErrors.map(r=>Object.assign({},r)),parserErrors:t.parserErrors.map(r=>Object.assign({},r)),value:this.dehydrateAstNode(t.value,this.createDehyrationContext(t.value))}}createDehyrationContext(t){let r=new Map,n=new Map;for(let i of jo(t))r.set(i,{});if(t.$cstNode)for(let i of Jd(t.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(t,r){let n=r.astNodes.get(t);n.$type=t.$type,n.$containerIndex=t.$containerIndex,n.$containerProperty=t.$containerProperty,t.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(t.$cstNode,r));for(let[i,a]of Object.entries(t))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)):ka(l)?s.push(this.dehydrateReference(l,r)):s.push(l)}else ri(a)?n[i]=this.dehydrateAstNode(a,r):ka(a)?n[i]=this.dehydrateReference(a,r):a!==void 0&&(n[i]=a);return n}dehydrateReference(t,r){let n={};return n.$refText=t.$refText,t.$refNode&&(n.$refNode=r.cstNodes.get(t.$refNode)),n}dehydrateCstNode(t,r){let n=r.cstNodes.get(t);return c2(t)?n.fullText=t.fullText:n.grammarSource=this.getGrammarElementId(t.grammarSource),n.hidden=t.hidden,n.astNode=r.astNodes.get(t.astNode),uo(t)?n.content=t.content.map(i=>this.dehydrateCstNode(i,r)):sf(t)&&(n.tokenType=t.tokenType.name,n.offset=t.offset,n.length=t.length,n.startLine=t.range.start.line,n.startColumn=t.range.start.character,n.endLine=t.range.end.line,n.endColumn=t.range.end.character),n}hydrate(t){let r=t.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:t.lexerErrors,parserErrors:t.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(t){let r=new Map,n=new Map;for(let a of jo(t))r.set(a,{});let i;if(t.$cstNode)for(let a of Jd(t.$cstNode)){let s;"fullText"in a?(s=new Rg(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(t,r){let n=r.astNodes.get(t);n.$type=t.$type,n.$containerIndex=t.$containerIndex,n.$containerProperty=t.$containerProperty,t.$cstNode&&(n.$cstNode=r.cstNodes.get(t.$cstNode));for(let[i,a]of Object.entries(t))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)):ka(l)?s.push(this.hydrateReference(l,n,i,r)):s.push(l)}else ri(a)?n[i]=this.setParent(this.hydrateAstNode(a,r),n):ka(a)?n[i]=this.hydrateReference(a,n,i,r):a!==void 0&&(n[i]=a);return n}setParent(t,r){return t.$container=r,t}hydrateReference(t,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(t.$refNode),t.$refText)}hydrateCstNode(t,r,n=0){let i=r.cstNodes.get(t);if(typeof t.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(t.grammarSource)),i.astNode=r.astNodes.get(t.astNode),uo(i))for(let a of t.content){let s=this.hydrateCstNode(a,r,n++);i.content.push(s)}return i}hydrateCstLeafNode(t){let r=this.getTokenType(t.tokenType),n=t.offset,i=t.length,a=t.startLine,s=t.startColumn,l=t.endLine,u=t.endColumn,h=t.hidden;return new x0(n,i,{start:{line:a,character:s},end:{line:l,character:u}},r,h)}getTokenType(t){return this.lexer.definition[t]}getGrammarElementId(t){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(t)}getGrammarElement(t){this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap();let r=this.grammarElementIdMap.getKey(t);if(r)return r;throw new Error("Invalid grammar element id: "+t)}createGrammarElementIdMap(){let t=0;for(let r of jo(this.grammar))d2(r)&&this.grammarElementIdMap.set(r,t++)}}});function mo(e){return{documentation:{CommentProvider:o(t=>new Sx(t),"CommentProvider"),DocumentationProvider:o(t=>new Cx(t),"DocumentationProvider")},parser:{AsyncParser:o(t=>new Ax(t),"AsyncParser"),GrammarConfig:o(t=>iM(t),"GrammarConfig"),LangiumParser:o(t=>pI(t),"LangiumParser"),CompletionParser:o(t=>fI(t),"CompletionParser"),ValueConverter:o(()=>new k0,"ValueConverter"),TokenBuilder:o(()=>new T0,"TokenBuilder"),Lexer:o(t=>new Tx(t),"Lexer"),ParserErrorMessageProvider:o(()=>new Ng,"ParserErrorMessageProvider")},workspace:{AstNodeLocator:o(()=>new yx,"AstNodeLocator"),AstNodeDescriptionProvider:o(t=>new mx(t),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:o(t=>new gx(t),"ReferenceDescriptionProvider")},references:{Linker:o(t=>new nx(t),"Linker"),NameProvider:o(()=>new ix,"NameProvider"),ScopeProvider:o(t=>new cx(t),"ScopeProvider"),ScopeComputation:o(t=>new sx(t),"ScopeComputation"),References:o(t=>new ax(t),"References")},serializer:{Hydrator:o(t=>new Lx(t),"Hydrator"),JsonSerializer:o(t=>new ux(t),"JsonSerializer")},validation:{DocumentValidator:o(t=>new px(t),"DocumentValidator"),ValidationRegistry:o(t=>new fx(t),"ValidationRegistry")},shared:o(()=>e.shared,"shared")}}function go(e){return{ServiceRegistry:o(()=>new hx,"ServiceRegistry"),workspace:{LangiumDocuments:o(t=>new rx(t),"LangiumDocuments"),LangiumDocumentFactory:o(t=>new ex(t),"LangiumDocumentFactory"),DocumentBuilder:o(t=>new xx(t),"DocumentBuilder"),IndexManager:o(t=>new bx(t),"IndexManager"),WorkspaceManager:o(t=>new wx(t),"WorkspaceManager"),FileSystemProvider:o(t=>e.fileSystemProvider(t),"FileSystemProvider"),WorkspaceLock:o(()=>new _x,"WorkspaceLock"),ConfigurationProvider:o(t=>new vx(t),"ConfigurationProvider")}}}var cO=R(()=>{"use strict";aM();dI();mI();gI();yI();DI();RI();NI();MI();OI();SE();BI();FI();dx();zI();$I();GI();UI();Bg();HI();WI();XI();eO();rO();tx();sO();oO();lO();o(mo,"createDefaultCoreModule");o(go,"createDefaultSharedCoreModule")});function Ui(e,t,r,n,i,a,s,l,u){let h=[e,t,r,n,i,a,s,l,u].reduce(RE,{});return _ct(h)}function Act(e){if(e&&e[hO])for(let t of Object.values(e))Act(t);return e}function _ct(e,t){let r=new Proxy({},{deleteProperty:o(()=>!1,"deleteProperty"),get:o((n,i)=>Sct(n,i,e,t||r),"get"),getOwnPropertyDescriptor:o((n,i)=>(Sct(n,i,e,t||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:o((n,i)=>i in e,"has"),ownKeys:o(()=>[...Reflect.ownKeys(e),hO],"ownKeys")});return r[hO]=!0,r}function Sct(e,t,r,n){if(t in e){if(e[t]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:e[t]});if(e[t]===Cct)throw new Error('Cycle detected. Please make "'+String(t)+'" lazy. See https://langium.org/docs/configuration-services/#resolving-cyclic-dependencies');return e[t]}else if(t in r){let i=r[t];e[t]=Cct;try{e[t]=typeof i=="function"?i(n):_ct(i,n)}catch(a){throw e[t]=a instanceof Error?a:void 0,a}return e[t]}else return}function RE(e,t){if(t){for(let[r,n]of Object.entries(t))if(n!==void 0){let i=e[r];i!==null&&n!==null&&typeof i=="object"&&typeof n=="object"?e[r]=RE(i,n):e[r]=n}}return e}var uO,hO,Cct,fO=R(()=>{"use strict";(function(e){e.merge=(t,r)=>RE(RE({},t),r)})(uO||(uO={}));o(Ui,"inject");hO=Symbol("isProxy");o(Act,"eagerLoad");o(_ct,"_inject");Cct=Symbol();o(Sct,"_resolve");o(RE,"_merge")});var Lct=R(()=>{"use strict"});var Dct=R(()=>{"use strict";rO();eO();tO()});var Rct=R(()=>{"use strict"});var Nct=R(()=>{"use strict";aM();Rct()});var Mct=R(()=>{"use strict"});var Ict=R(()=>{"use strict";sO();dI();mE();mI();tx();XI();Mct();gI();yI()});var Oct=R(()=>{"use strict";DI();RI();NI();II();MI();OI()});var Pct=R(()=>{"use strict";lO();SE()});var NE,yo,dO=R(()=>{"use strict";NE=class{static{o(this,"EmptyFileSystemProvider")}readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}},yo={fileSystemProvider:o(()=>new NE,"fileSystemProvider")}});function Azt(){let e=Ui(go(yo),Szt),t=Ui(mo({shared:e}),Czt);return e.ServiceRegistry.register(t),t}function df(e){var t;let r=Azt(),n=r.serializer.JsonSerializer.deserialize(e);return r.shared.workspace.LangiumDocumentFactory.fromModel(n,zs.parse(`memory://${(t=n.name)!==null&&t!==void 0?t:"grammar"}.langium`)),n}var Czt,Szt,Bct=R(()=>{"use strict";cO();fO();Oc();dO();Gc();Czt={Grammar:o(()=>{},"Grammar"),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},Szt={AstReflection:o(()=>new eg,"AstReflection")};o(Azt,"createMinimalGrammarServices");o(df,"loadGrammarFromJson")});var Gr={};xr(Gr,{AstUtils:()=>gk,BiMap:()=>E0,Cancellation:()=>kr,ContextCache:()=>C0,CstUtils:()=>ik,DONE_RESULT:()=>ns,Deferred:()=>cs,Disposable:()=>S0,DisposableCache:()=>$g,DocumentCache:()=>EE,EMPTY_STREAM:()=>u2,ErrorWithLocation:()=>e0,GrammarUtils:()=>Tk,MultiMap:()=>Vc,OperationCancelled:()=>$c,Reduction:()=>Jm,RegExpUtils:()=>bk,SimpleCache:()=>lx,StreamImpl:()=>ho,TreeStreamImpl:()=>Ic,URI:()=>zs,UriUtils:()=>us,WorkspaceCache:()=>Gg,assertUnreachable:()=>of,delayNextTick:()=>AI,interruptAndCheck:()=>Vi,isOperationCancelled:()=>ff,loadGrammarFromJson:()=>df,setInterruptionPeriod:()=>cct,startCancelableOperation:()=>lct,stream:()=>en});var Fct=R(()=>{"use strict";CE();nO();wr(Gr,ci);Fg();VI();ak();Bct();Qo();Ps();Gc();is();Ko();Pl();zl();ig()});var zct=R(()=>{"use strict";FI();dx()});var $ct=R(()=>{"use strict";zI();$I();GI();UI();Bg();dO();HI();oO();WI()});var Ea={};xr(Ea,{AbstractAstReflection:()=>Qd,AbstractCstNode:()=>K2,AbstractLangiumParser:()=>Q2,AbstractParserErrorMessageProvider:()=>yE,AbstractThreadedAsyncParser:()=>iO,AstUtils:()=>gk,BiMap:()=>E0,Cancellation:()=>kr,CompositeCstNodeImpl:()=>b0,ContextCache:()=>C0,CstNodeBuilder:()=>j2,CstUtils:()=>ik,DONE_RESULT:()=>ns,DatatypeSymbol:()=>gE,DefaultAstNodeDescriptionProvider:()=>mx,DefaultAstNodeLocator:()=>yx,DefaultAsyncParser:()=>Ax,DefaultCommentProvider:()=>Sx,DefaultConfigurationProvider:()=>vx,DefaultDocumentBuilder:()=>xx,DefaultDocumentValidator:()=>px,DefaultHydrator:()=>Lx,DefaultIndexManager:()=>bx,DefaultJsonSerializer:()=>ux,DefaultLangiumDocumentFactory:()=>ex,DefaultLangiumDocuments:()=>rx,DefaultLexer:()=>Tx,DefaultLinker:()=>nx,DefaultNameProvider:()=>ix,DefaultReferenceDescriptionProvider:()=>gx,DefaultReferences:()=>ax,DefaultScopeComputation:()=>sx,DefaultScopeProvider:()=>cx,DefaultServiceRegistry:()=>hx,DefaultTokenBuilder:()=>T0,DefaultValueConverter:()=>k0,DefaultWorkspaceLock:()=>_x,DefaultWorkspaceManager:()=>wx,Deferred:()=>cs,Disposable:()=>S0,DisposableCache:()=>$g,DocumentCache:()=>EE,DocumentState:()=>Tn,DocumentValidator:()=>Xu,EMPTY_SCOPE:()=>fzt,EMPTY_STREAM:()=>u2,EmptyFileSystem:()=>yo,EmptyFileSystemProvider:()=>NE,ErrorWithLocation:()=>e0,GrammarAST:()=>m2,GrammarUtils:()=>Tk,JSDocDocumentationProvider:()=>Cx,LangiumCompletionParser:()=>J2,LangiumParser:()=>Z2,LangiumParserErrorMessageProvider:()=>Ng,LeafCstNodeImpl:()=>x0,MapScope:()=>ox,Module:()=>uO,MultiMap:()=>Vc,OperationCancelled:()=>$c,ParserWorker:()=>aO,Reduction:()=>Jm,RegExpUtils:()=>bk,RootCstNodeImpl:()=>Rg,SimpleCache:()=>lx,StreamImpl:()=>ho,StreamScope:()=>zg,TextDocument:()=>Og,TreeStreamImpl:()=>Ic,URI:()=>zs,UriUtils:()=>us,ValidationCategory:()=>Vg,ValidationRegistry:()=>fx,ValueConverter:()=>zc,WorkspaceCache:()=>Gg,assertUnreachable:()=>of,createCompletionParser:()=>fI,createDefaultCoreModule:()=>mo,createDefaultSharedCoreModule:()=>go,createGrammarConfig:()=>iM,createLangiumParser:()=>pI,delayNextTick:()=>AI,diagnosticData:()=>AE,eagerLoad:()=>Act,getDiagnosticRange:()=>yct,inject:()=>Ui,interruptAndCheck:()=>Vi,isAstNode:()=>ri,isAstNodeDescription:()=>LR,isAstNodeWithComment:()=>PI,isCompositeCstNode:()=>uo,isIMultiModeLexerDefinition:()=>qI,isJSDoc:()=>ZI,isLeafCstNode:()=>sf,isLinkingError:()=>Zd,isNamed:()=>mct,isOperationCancelled:()=>ff,isReference:()=>ka,isRootCstNode:()=>c2,isTokenTypeArray:()=>vct,isTokenTypeDictionary:()=>YI,loadGrammarFromJson:()=>df,parseJSDoc:()=>QI,prepareLangiumParser:()=>ect,setInterruptionPeriod:()=>cct,startCancelableOperation:()=>lct,stream:()=>en,toDiagnosticSeverity:()=>_E});var Uc=R(()=>{"use strict";cO();fO();BI();Lct();Yo();Dct();Nct();Ict();Oct();Pct();Fct();wr(Ea,Gr);zct();$ct();Oc()});function Xct(e){return Gl.isInstance(e,qct)}function jct(e){return Gl.isInstance(e,pO)}function Kct(e){return Gl.isInstance(e,mO)}function Qct(e){return Gl.isInstance(e,Rzt)}function Zct(e){return Gl.isInstance(e,gO)}function tut(e){return Gl.isInstance(e,Jct)}function eut(e){return Gl.isInstance(e,yO)}function nut(e){return Gl.isInstance(e,rut)}function aut(e){return Gl.isInstance(e,iut)}function out(e){return Gl.isInstance(e,sut)}function cut(e){return Gl.isInstance(e,lut)}var _zt,De,Yct,qct,pO,Lzt,Dzt,mO,Rzt,gO,Jct,yO,rut,iut,sut,lut,Nzt,uut,Gl,Gct,Mzt,Vct,Izt,Uct,Ozt,Hct,Pzt,Wct,Bzt,Fzt,zzt,$zt,Gzt,Vzt,Vl,vO,xO,bO,wO,TO,Uzt,Hzt,Wzt,Yzt,Ug,A0,Zo,qzt,Jo=R(()=>{"use strict";Uc();Uc();Uc();Uc();_zt=Object.defineProperty,De=o((e,t)=>_zt(e,"name",{value:t,configurable:!0}),"__name"),Yct="Statement",qct="Architecture";o(Xct,"isArchitecture");De(Xct,"isArchitecture");pO="Branch";o(jct,"isBranch");De(jct,"isBranch");Lzt="Checkout",Dzt="CherryPicking",mO="Commit";o(Kct,"isCommit");De(Kct,"isCommit");Rzt="Common";o(Qct,"isCommon");De(Qct,"isCommon");gO="GitGraph";o(Zct,"isGitGraph");De(Zct,"isGitGraph");Jct="Info";o(tut,"isInfo");De(tut,"isInfo");yO="Merge";o(eut,"isMerge");De(eut,"isMerge");rut="Packet";o(nut,"isPacket");De(nut,"isPacket");iut="PacketBlock";o(aut,"isPacketBlock");De(aut,"isPacketBlock");sut="Pie";o(out,"isPie");De(out,"isPie");lut="PieSection";o(cut,"isPieSection");De(cut,"isPieSection");Nzt="Direction",uut=class extends Qd{static{o(this,"MermaidAstReflection")}static{De(this,"MermaidAstReflection")}getAllTypes(){return["Architecture","Branch","Checkout","CherryPicking","Commit","Common","Direction","Edge","GitGraph","Group","Info","Junction","Merge","Packet","PacketBlock","Pie","PieSection","Service","Statement"]}computeIsSubtype(e,t){switch(e){case pO:case Lzt:case Dzt:case mO:case yO:return this.isSubtype(Yct,t);case Nzt:return this.isSubtype(gO,t);default:return!1}}getReferenceType(e){let t=`${e.container.$type}:${e.property}`;switch(t){default:throw new Error(`${t} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case"Architecture":return{name:"Architecture",properties:[{name:"accDescr"},{name:"accTitle"},{name:"edges",defaultValue:[]},{name:"groups",defaultValue:[]},{name:"junctions",defaultValue:[]},{name:"services",defaultValue:[]},{name:"title"}]};case"Branch":return{name:"Branch",properties:[{name:"name"},{name:"order"}]};case"Checkout":return{name:"Checkout",properties:[{name:"branch"}]};case"CherryPicking":return{name:"CherryPicking",properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case"Commit":return{name:"Commit",properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case"Common":return{name:"Common",properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case"Edge":return{name:"Edge",properties:[{name:"lhsDir"},{name:"lhsGroup",defaultValue:!1},{name:"lhsId"},{name:"lhsInto",defaultValue:!1},{name:"rhsDir"},{name:"rhsGroup",defaultValue:!1},{name:"rhsId"},{name:"rhsInto",defaultValue:!1},{name:"title"}]};case"GitGraph":return{name:"GitGraph",properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case"Group":return{name:"Group",properties:[{name:"icon"},{name:"id"},{name:"in"},{name:"title"}]};case"Info":return{name:"Info",properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case"Junction":return{name:"Junction",properties:[{name:"id"},{name:"in"}]};case"Merge":return{name:"Merge",properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case"Packet":return{name:"Packet",properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case"PacketBlock":return{name:"PacketBlock",properties:[{name:"end"},{name:"label"},{name:"start"}]};case"Pie":return{name:"Pie",properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case"PieSection":return{name:"PieSection",properties:[{name:"label"},{name:"value"}]};case"Service":return{name:"Service",properties:[{name:"icon"},{name:"iconText"},{name:"id"},{name:"in"},{name:"title"}]};case"Direction":return{name:"Direction",properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};default:return{name:e,properties:[]}}}},Gl=new uut,Mzt=De(()=>Gct??(Gct=df('{"$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"),Izt=De(()=>Vct??(Vct=df(`{"$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"),Ozt=De(()=>Uct??(Uct=df('{"$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"),Pzt=De(()=>Hct??(Hct=df('{"$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"),Bzt=De(()=>Wct??(Wct=df(`{"$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"),Fzt={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},zzt={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},$zt={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},Gzt={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},Vzt={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1},Vl={AstReflection:De(()=>new uut,"AstReflection")},vO={Grammar:De(()=>Mzt(),"Grammar"),LanguageMetaData:De(()=>Fzt,"LanguageMetaData"),parser:{}},xO={Grammar:De(()=>Izt(),"Grammar"),LanguageMetaData:De(()=>zzt,"LanguageMetaData"),parser:{}},bO={Grammar:De(()=>Ozt(),"Grammar"),LanguageMetaData:De(()=>$zt,"LanguageMetaData"),parser:{}},wO={Grammar:De(()=>Pzt(),"Grammar"),LanguageMetaData:De(()=>Gzt,"LanguageMetaData"),parser:{}},TO={Grammar:De(()=>Bzt(),"Grammar"),LanguageMetaData:De(()=>Vzt,"LanguageMetaData"),parser:{}},Uzt=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,Hzt=/accTitle[\t ]*:([^\n\r]*)/,Wzt=/title([\t ][^\n\r]*|)/,Yzt={ACC_DESCR:Uzt,ACC_TITLE:Hzt,TITLE:Wzt},Ug=class extends k0{static{o(this,"AbstractMermaidValueConverter")}static{De(this,"AbstractMermaidValueConverter")}runConverter(e,t,r){let n=this.runCommonConverter(e,t,r);return n===void 0&&(n=this.runCustomConverter(e,t,r)),n===void 0?super.runConverter(e,t,r):n}runCommonConverter(e,t,r){let n=Yzt[e.name];if(n===void 0)return;let i=n.exec(t);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{De(this,"CommonValueConverter")}runCustomConverter(e,t,r){}},Zo=class extends T0{static{o(this,"AbstractMermaidTokenBuilder")}static{De(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,r){let n=super.buildKeywordTokens(e,t,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},qzt=class extends Zo{static{o(this,"CommonTokenBuilder")}static{De(this,"CommonTokenBuilder")}}});function IE(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),TO,ME);return t.ServiceRegistry.register(r),{shared:t,GitGraph:r}}var Xzt,ME,kO=R(()=>{"use strict";Jo();Uc();Xzt=class extends Zo{static{o(this,"GitGraphTokenBuilder")}static{De(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},ME={parser:{TokenBuilder:De(()=>new Xzt,"TokenBuilder"),ValueConverter:De(()=>new A0,"ValueConverter")}};o(IE,"createGitGraphServices");De(IE,"createGitGraphServices")});function PE(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),vO,OE);return t.ServiceRegistry.register(r),{shared:t,Info:r}}var jzt,OE,EO=R(()=>{"use strict";Jo();Uc();jzt=class extends Zo{static{o(this,"InfoTokenBuilder")}static{De(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},OE={parser:{TokenBuilder:De(()=>new jzt,"TokenBuilder"),ValueConverter:De(()=>new A0,"ValueConverter")}};o(PE,"createInfoServices");De(PE,"createInfoServices")});function FE(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),xO,BE);return t.ServiceRegistry.register(r),{shared:t,Packet:r}}var Kzt,BE,CO=R(()=>{"use strict";Jo();Uc();Kzt=class extends Zo{static{o(this,"PacketTokenBuilder")}static{De(this,"PacketTokenBuilder")}constructor(){super(["packet-beta"])}},BE={parser:{TokenBuilder:De(()=>new Kzt,"TokenBuilder"),ValueConverter:De(()=>new A0,"ValueConverter")}};o(FE,"createPacketServices");De(FE,"createPacketServices")});function $E(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),bO,zE);return t.ServiceRegistry.register(r),{shared:t,Pie:r}}var Qzt,Zzt,zE,SO=R(()=>{"use strict";Jo();Uc();Qzt=class extends Zo{static{o(this,"PieTokenBuilder")}static{De(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},Zzt=class extends Ug{static{o(this,"PieValueConverter")}static{De(this,"PieValueConverter")}runCustomConverter(e,t,r){if(e.name==="PIE_SECTION_LABEL")return t.replace(/"/g,"").trim()}},zE={parser:{TokenBuilder:De(()=>new Qzt,"TokenBuilder"),ValueConverter:De(()=>new Zzt,"ValueConverter")}};o($E,"createPieServices");De($E,"createPieServices")});function VE(e=yo){let t=Ui(go(e),Vl),r=Ui(mo({shared:t}),wO,GE);return t.ServiceRegistry.register(r),{shared:t,Architecture:r}}var Jzt,t$t,GE,AO=R(()=>{"use strict";Jo();Uc();Jzt=class extends Zo{static{o(this,"ArchitectureTokenBuilder")}static{De(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},t$t=class extends Ug{static{o(this,"ArchitectureValueConverter")}static{De(this,"ArchitectureValueConverter")}runCustomConverter(e,t,r){if(e.name==="ARCH_ICON")return t.replace(/[()]/g,"").trim();if(e.name==="ARCH_TEXT_ICON")return t.replace(/["()]/g,"");if(e.name==="ARCH_TITLE")return t.replace(/[[\]]/g,"").trim()}},GE={parser:{TokenBuilder:De(()=>new Jzt,"TokenBuilder"),ValueConverter:De(()=>new t$t,"ValueConverter")}};o(VE,"createArchitectureServices");De(VE,"createArchitectureServices")});var hut={};xr(hut,{InfoModule:()=>OE,createInfoServices:()=>PE});var fut=R(()=>{"use strict";EO();Jo()});var dut={};xr(dut,{PacketModule:()=>BE,createPacketServices:()=>FE});var put=R(()=>{"use strict";CO();Jo()});var mut={};xr(mut,{PieModule:()=>zE,createPieServices:()=>$E});var gut=R(()=>{"use strict";SO();Jo()});var yut={};xr(yut,{ArchitectureModule:()=>GE,createArchitectureServices:()=>VE});var vut=R(()=>{"use strict";AO();Jo()});var xut={};xr(xut,{GitGraphModule:()=>ME,createGitGraphServices:()=>IE});var but=R(()=>{"use strict";kO();Jo()});async function Ul(e,t){let r=e$t[e];if(!r)throw new Error(`Unknown diagram type: ${e}`);_0[e]||await r();let i=_0[e].parse(t);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new r$t(i);return i.value}var _0,e$t,r$t,Hg=R(()=>{"use strict";kO();EO();CO();SO();AO();Jo();_0={},e$t={info:De(async()=>{let{createInfoServices:e}=await Promise.resolve().then(()=>(fut(),hut)),t=e().Info.parser.LangiumParser;_0.info=t},"info"),packet:De(async()=>{let{createPacketServices:e}=await Promise.resolve().then(()=>(put(),dut)),t=e().Packet.parser.LangiumParser;_0.packet=t},"packet"),pie:De(async()=>{let{createPieServices:e}=await Promise.resolve().then(()=>(gut(),mut)),t=e().Pie.parser.LangiumParser;_0.pie=t},"pie"),architecture:De(async()=>{let{createArchitectureServices:e}=await Promise.resolve().then(()=>(vut(),yut)),t=e().Architecture.parser.LangiumParser;_0.architecture=t},"architecture"),gitGraph:De(async()=>{let{createGitGraphServices:e}=await Promise.resolve().then(()=>(but(),xut)),t=e().GitGraph.parser.LangiumParser;_0.gitGraph=t},"gitGraph")};o(Ul,"parse");De(Ul,"parse");r$t=class extends Error{static{o(this,"MermaidParseError")}constructor(e){let t=e.lexerErrors.map(n=>n.message).join(` +`),r=e.parserErrors.map(n=>n.message).join(` +`);super(`Parsing failed: ${t} ${r}`),this.result=e}static{De(this,"MermaidParseError")}}});function pf(e,t){e.accDescr&&t.setAccDescription?.(e.accDescr),e.accTitle&&t.setAccTitle?.(e.accTitle),e.title&&t.setDiagramTitle?.(e.title)}var Dx=R(()=>{"use strict";o(pf,"populateCommonDb")});var jr,UE=R(()=>{"use strict";jr={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4}});var mf,HE=R(()=>{"use strict";mf=class{constructor(t){this.init=t;this.records=this.init()}static{o(this,"ImperativeState")}reset(){this.records=this.init()}}});function _O(){return $9({length:7})}function i$t(e,t){let r=Object.create(null);return e.reduce((n,i)=>{let a=t(i);return r[a]||(r[a]=!0,n.push(i)),n},[])}function wut(e,t,r){let n=e.indexOf(t);n===-1?e.push(r):e.splice(n,1,r)}function kut(e){let t=e.reduce((i,a)=>i.seq>a.seq?i:a,e[0]),r="";e.forEach(function(i){i===t?r+=" *":r+=" |"});let n=[r,t.id,t.seq];for(let i in Te.records.branches)Te.records.branches.get(i)===t.id&&n.push(i);if(V.debug(n.join(" ")),t.parents&&t.parents.length==2&&t.parents[0]&&t.parents[1]){let i=Te.records.commits.get(t.parents[0]);wut(e,t,i),t.parents[1]&&e.push(Te.records.commits.get(t.parents[1]))}else{if(t.parents.length==0)return;if(t.parents[0]){let i=Te.records.commits.get(t.parents[0]);wut(e,t,i)}}e=i$t(e,i=>i.id),kut(e)}var n$t,L0,Te,a$t,s$t,o$t,l$t,c$t,u$t,h$t,Tut,f$t,d$t,p$t,m$t,g$t,Eut,y$t,v$t,x$t,WE,LO=R(()=>{"use strict";ce();_r();js();hr();Ci();UE();HE();hl();n$t=Er.gitGraph,L0=o(()=>Ss({...n$t,...Nr().gitGraph}),"getConfig"),Te=new mf(()=>{let e=L0(),t=e.mainBranchName,r=e.mainBranchOrder;return{mainBranchName:t,commits:new Map,head:null,branchConfig:new Map([[t,{name:t,order:r}]]),branches:new Map([[t,null]]),currBranch:t,direction:"LR",seq:0,options:{}}});o(_O,"getID");o(i$t,"uniqBy");a$t=o(function(e){Te.records.direction=e},"setDirection"),s$t=o(function(e){V.debug("options str",e),e=e?.trim(),e=e||"{}";try{Te.records.options=JSON.parse(e)}catch(t){V.error("error while parsing gitGraph options",t.message)}},"setOptions"),o$t=o(function(){return Te.records.options},"getOptions"),l$t=o(function(e){let t=e.msg,r=e.id,n=e.type,i=e.tags;V.info("commit",t,r,n,i),V.debug("Entering commit:",t,r,n,i);let a=L0();r=Yt.sanitizeText(r,a),t=Yt.sanitizeText(t,a),i=i?.map(l=>Yt.sanitizeText(l,a));let s={id:r||Te.records.seq+"-"+_O(),message:t,seq:Te.records.seq++,type:n??jr.NORMAL,tags:i??[],parents:Te.records.head==null?[]:[Te.records.head.id],branch:Te.records.currBranch};Te.records.head=s,V.info("main branch",a.mainBranchName),Te.records.commits.set(s.id,s),Te.records.branches.set(Te.records.currBranch,s.id),V.debug("in pushCommit "+s.id)},"commit"),c$t=o(function(e){let t=e.name,r=e.order;if(t=Yt.sanitizeText(t,L0()),Te.records.branches.has(t))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 ${t}")`);Te.records.branches.set(t,Te.records.head!=null?Te.records.head.id:null),Te.records.branchConfig.set(t,{name:t,order:r}),Tut(t),V.debug("in createBranch")},"branch"),u$t=o(e=>{let t=e.branch,r=e.id,n=e.type,i=e.tags,a=L0();t=Yt.sanitizeText(t,a),r&&(r=Yt.sanitizeText(r,a));let s=Te.records.branches.get(Te.records.currBranch),l=Te.records.branches.get(t),u=s?Te.records.commits.get(s):void 0,h=l?Te.records.commits.get(l):void 0;if(u&&h&&u.branch===t)throw new Error(`Cannot merge branch '${t}' into itself.`);if(Te.records.currBranch===t){let p=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:["branch abc"]},p}if(u===void 0||!u){let p=new Error(`Incorrect usage of "merge". Current branch (${Te.records.currBranch})has no commits`);throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:["commit"]},p}if(!Te.records.branches.has(t)){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") does not exist");throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:[`branch ${t}`]},p}if(h===void 0||!h){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") has no commits");throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:['"commit"']},p}if(u===h){let p=new Error('Incorrect usage of "merge". Both branches have same head');throw p.hash={text:`merge ${t}`,token:`merge ${t}`,expected:["branch abc"]},p}if(r&&Te.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 ${t} ${r} ${n} ${i?.join(" ")}`,token:`merge ${t} ${r} ${n} ${i?.join(" ")}`,expected:[`merge ${t} ${r}_UNIQUE ${n} ${i?.join(" ")}`]},p}let f=l||"",d={id:r||`${Te.records.seq}-${_O()}`,message:`merged branch ${t} into ${Te.records.currBranch}`,seq:Te.records.seq++,parents:Te.records.head==null?[]:[Te.records.head.id,f],branch:Te.records.currBranch,type:jr.MERGE,customType:n,customId:!!r,tags:i??[]};Te.records.head=d,Te.records.commits.set(d.id,d),Te.records.branches.set(Te.records.currBranch,d.id),V.debug(Te.records.branches),V.debug("in mergeBranch")},"merge"),h$t=o(function(e){let t=e.id,r=e.targetId,n=e.tags,i=e.parent;V.debug("Entering cherryPick:",t,r,n);let a=L0();if(t=Yt.sanitizeText(t,a),r=Yt.sanitizeText(r,a),n=n?.map(u=>Yt.sanitizeText(u,a)),i=Yt.sanitizeText(i,a),!t||!Te.records.commits.has(t)){let u=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw u.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},u}let s=Te.records.commits.get(t);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||!Te.records.commits.has(r)){if(l===Te.records.currBranch){let d=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw d.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},d}let u=Te.records.branches.get(Te.records.currBranch);if(u===void 0||!u){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Te.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},d}let h=Te.records.commits.get(u);if(h===void 0||!h){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${Te.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},d}let f={id:Te.records.seq+"-"+_O(),message:`cherry-picked ${s?.message} into ${Te.records.currBranch}`,seq:Te.records.seq++,parents:Te.records.head==null?[]:[Te.records.head.id,s.id],branch:Te.records.currBranch,type:jr.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===jr.MERGE?`|parent:${i}`:""}`]};Te.records.head=f,Te.records.commits.set(f.id,f),Te.records.branches.set(Te.records.currBranch,f.id),V.debug(Te.records.branches),V.debug("in cherryPick")}},"cherryPick"),Tut=o(function(e){if(e=Yt.sanitizeText(e,L0()),Te.records.branches.has(e)){Te.records.currBranch=e;let t=Te.records.branches.get(Te.records.currBranch);t===void 0||!t?Te.records.head=null:Te.records.head=Te.records.commits.get(t)??null}else{let t=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${e}")`);throw t.hash={text:`checkout ${e}`,token:`checkout ${e}`,expected:[`branch ${e}`]},t}},"checkout");o(wut,"upsert");o(kut,"prettyPrintCommitHistory");f$t=o(function(){V.debug(Te.records.commits);let e=Eut()[0];kut([e])},"prettyPrint"),d$t=o(function(){Te.reset(),Ar()},"clear"),p$t=o(function(){return[...Te.records.branchConfig.values()].map((t,r)=>t.order!==null&&t.order!==void 0?t:{...t,order:parseFloat(`0.${r}`)}).sort((t,r)=>(t.order??0)-(r.order??0)).map(({name:t})=>({name:t}))},"getBranchesAsObjArray"),m$t=o(function(){return Te.records.branches},"getBranches"),g$t=o(function(){return Te.records.commits},"getCommits"),Eut=o(function(){let e=[...Te.records.commits.values()];return e.forEach(function(t){V.debug(t.id)}),e.sort((t,r)=>t.seq-r.seq),e},"getCommitsArray"),y$t=o(function(){return Te.records.currBranch},"getCurrentBranch"),v$t=o(function(){return Te.records.direction},"getDirection"),x$t=o(function(){return Te.records.head},"getHead"),WE={commitType:jr,getConfig:L0,setDirection:a$t,setOptions:s$t,getOptions:o$t,commit:l$t,branch:c$t,merge:u$t,cherryPick:h$t,checkout:Tut,prettyPrint:f$t,clear:d$t,getBranchesAsObjArray:p$t,getBranches:m$t,getCommits:g$t,getCommitsArray:Eut,getCurrentBranch:y$t,getDirection:v$t,getHead:x$t,setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,setAccDescription:Fr,setDiagramTitle:cn,getDiagramTitle:Jr}});var b$t,w$t,T$t,k$t,E$t,C$t,S$t,Cut,Sut=R(()=>{"use strict";Hg();ce();Dx();LO();UE();b$t=o((e,t)=>{pf(e,t),e.dir&&t.setDirection(e.dir);for(let r of e.statements)w$t(r,t)},"populate"),w$t=o((e,t)=>{let n={Commit:o(i=>t.commit(T$t(i)),"Commit"),Branch:o(i=>t.branch(k$t(i)),"Branch"),Merge:o(i=>t.merge(E$t(i)),"Merge"),Checkout:o(i=>t.checkout(C$t(i)),"Checkout"),CherryPicking:o(i=>t.cherryPick(S$t(i)),"CherryPicking")}[e.$type];n?n(e):V.error(`Unknown statement type: ${e.$type}`)},"parseStatement"),T$t=o(e=>({id:e.id,msg:e.message??"",type:e.type!==void 0?jr[e.type]:jr.NORMAL,tags:e.tags??void 0}),"parseCommit"),k$t=o(e=>({name:e.name,order:e.order??0}),"parseBranch"),E$t=o(e=>({branch:e.branch,id:e.id??"",type:e.type!==void 0?jr[e.type]:void 0,tags:e.tags??void 0}),"parseMerge"),C$t=o(e=>e.branch,"parseCheckout"),S$t=o(e=>({id:e.id,targetId:"",tags:e.tags?.length===0?void 0:e.tags,parent:e.parent}),"parseCherryPicking"),Cut={parse:o(async e=>{let t=await Ul("gitGraph",e);V.debug(t),b$t(t,WE)},"parse")}});var A$t,tl,yf,vf,Hc,ju,D0,$s,Gs,YE,Rx,qE,gf,Rr,_$t,_ut,Lut,L$t,D$t,R$t,N$t,M$t,I$t,O$t,P$t,B$t,F$t,z$t,$$t,Aut,G$t,Nx,V$t,U$t,H$t,W$t,Y$t,Dut,Rut=R(()=>{"use strict";ur();Ue();ce();_r();UE();A$t=pt(),tl=A$t?.gitGraph,yf=10,vf=40,Hc=4,ju=2,D0=8,$s=new Map,Gs=new Map,YE=30,Rx=new Map,qE=[],gf=0,Rr="LR",_$t=o(()=>{$s.clear(),Gs.clear(),Rx.clear(),gf=0,qE=[],Rr="LR"},"clear"),_ut=o(e=>{let t=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof e=="string"?e.split(/\\n|\n|/gi):e).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(),t.appendChild(i)}),t},"drawText"),Lut=o(e=>{let t,r,n;return Rr==="BT"?(r=o((i,a)=>i<=a,"comparisonFunc"),n=1/0):(r=o((i,a)=>i>=a,"comparisonFunc"),n=0),e.forEach(i=>{let a=Rr==="TB"||Rr=="BT"?Gs.get(i)?.y:Gs.get(i)?.x;a!==void 0&&r(a,n)&&(t=i,n=a)}),t},"findClosestParent"),L$t=o(e=>{let t="",r=1/0;return e.forEach(n=>{let i=Gs.get(n).y;i<=r&&(t=n,r=i)}),t||void 0},"findClosestParentBT"),D$t=o((e,t,r)=>{let n=r,i=r,a=[];e.forEach(s=>{let l=t.get(s);if(!l)throw new Error(`Commit not found for key ${s}`);l.parents.length?(n=N$t(l),i=Math.max(n,i)):a.push(l),M$t(l,n)}),n=i,a.forEach(s=>{I$t(s,n,r)}),e.forEach(s=>{let l=t.get(s);if(l?.parents.length){let u=L$t(l.parents);n=Gs.get(u).y-vf,n<=i&&(i=n);let h=$s.get(l.branch).pos,f=n-yf;Gs.set(l.id,{x:h,y:f})}})},"setParallelBTPos"),R$t=o(e=>{let t=Lut(e.parents.filter(n=>n!==null));if(!t)throw new Error(`Closest parent not found for commit ${e.id}`);let r=Gs.get(t)?.y;if(r===void 0)throw new Error(`Closest parent position not found for commit ${e.id}`);return r},"findClosestParentPos"),N$t=o(e=>R$t(e)+vf,"calculateCommitPosition"),M$t=o((e,t)=>{let r=$s.get(e.branch);if(!r)throw new Error(`Branch not found for commit ${e.id}`);let n=r.pos,i=t+yf;return Gs.set(e.id,{x:n,y:i}),{x:n,y:i}},"setCommitPosition"),I$t=o((e,t,r)=>{let n=$s.get(e.branch);if(!n)throw new Error(`Branch not found for commit ${e.id}`);let i=t+r,a=n.pos;Gs.set(e.id,{x:a,y:i})},"setRootPosition"),O$t=o((e,t,r,n,i,a)=>{if(a===jr.HIGHLIGHT)e.append("rect").attr("x",r.x-10).attr("y",r.y-10).attr("width",20).attr("height",20).attr("class",`commit ${t.id} commit-highlight${i%D0} ${n}-outer`),e.append("rect").attr("x",r.x-6).attr("y",r.y-6).attr("width",12).attr("height",12).attr("class",`commit ${t.id} commit${i%D0} ${n}-inner`);else if(a===jr.CHERRY_PICK)e.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",10).attr("class",`commit ${t.id} ${n}`),e.append("circle").attr("cx",r.x-3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${t.id} ${n}`),e.append("circle").attr("cx",r.x+3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${t.id} ${n}`),e.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 ${t.id} ${n}`),e.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 ${t.id} ${n}`);else{let s=e.append("circle");if(s.attr("cx",r.x),s.attr("cy",r.y),s.attr("r",t.type===jr.MERGE?9:10),s.attr("class",`commit ${t.id} commit${i%D0}`),a===jr.MERGE){let l=e.append("circle");l.attr("cx",r.x),l.attr("cy",r.y),l.attr("r",6),l.attr("class",`commit ${n} ${t.id} commit${i%D0}`)}a===jr.REVERSE&&e.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} ${t.id} commit${i%D0}`)}},"drawCommitBullet"),P$t=o((e,t,r,n)=>{if(t.type!==jr.CHERRY_PICK&&(t.customId&&t.type===jr.MERGE||t.type!==jr.MERGE)&&tl?.showCommitLabel){let i=e.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(t.id),l=s.node()?.getBBox();if(l&&(a.attr("x",r.posWithOffset-l.width/2-ju).attr("y",r.y+13.5).attr("width",l.width+2*ju).attr("height",l.height+2*ju),Rr==="TB"||Rr==="BT"?(a.attr("x",r.x-(l.width+4*Hc+5)).attr("y",r.y-12),s.attr("x",r.x-(l.width+4*Hc)).attr("y",r.y+l.height-12)):s.attr("x",r.posWithOffset-l.width/2),tl.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"),B$t=o((e,t,r,n)=>{if(t.tags.length>0){let i=0,a=0,s=0,l=[];for(let u of t.tags.reverse()){let h=e.insert("polygon"),f=e.append("circle"),d=e.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-Hc/2},${m+ju} + ${n-a/2-Hc/2},${m-ju} + ${r.posWithOffset-a/2-Hc},${m-p-ju} + ${r.posWithOffset+a/2+Hc},${m-p-ju} + ${r.posWithOffset+a/2+Hc},${m+p+ju} + ${r.posWithOffset-a/2-Hc},${m+p+ju}`),h.attr("cy",m).attr("cx",n-a/2+Hc/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+yf},${g-p-2} + ${r.x+yf+a+4},${g-p-2} + ${r.x+yf+a+4},${g+p+2} + ${r.x+yf},${g+p+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),h.attr("cx",r.x+Hc/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"),F$t=o(e=>{switch(e.customType??e.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"),z$t=o((e,t,r,n)=>{let i={x:0,y:0};if(e.parents.length>0){let a=Lut(e.parents);if(a){let s=n.get(a)??i;return t==="TB"?s.y+vf:t==="BT"?(n.get(e.id)??i).y-vf:s.x+vf}}else return t==="TB"?YE:t==="BT"?(n.get(e.id)??i).y-vf:0;return 0},"calculatePosition"),$$t=o((e,t,r)=>{let n=Rr==="BT"&&r?t:t+yf,i=Rr==="TB"||Rr==="BT"?n:$s.get(e.branch)?.pos,a=Rr==="TB"||Rr==="BT"?$s.get(e.branch)?.pos:n;if(a===void 0||i===void 0)throw new Error(`Position were undefined for commit ${e.id}`);return{x:a,y:i,posWithOffset:n}},"getCommitPosition"),Aut=o((e,t,r)=>{if(!tl)throw new Error("GitGraph config not found");let n=e.append("g").attr("class","commit-bullets"),i=e.append("g").attr("class","commit-labels"),a=Rr==="TB"||Rr==="BT"?YE:0,s=[...t.keys()],l=tl?.parallelCommits??!1,u=o((f,d)=>{let p=t.get(f)?.seq,m=t.get(d)?.seq;return p!==void 0&&m!==void 0?p-m:0},"sortKeys"),h=s.sort(u);Rr==="BT"&&(l&&D$t(h,t,a),h=h.reverse()),h.forEach(f=>{let d=t.get(f);if(!d)throw new Error(`Commit not found for key ${f}`);l&&(a=z$t(d,Rr,a,Gs));let p=$$t(d,a,l);if(r){let m=F$t(d),g=d.customType??d.type,y=$s.get(d.branch)?.index??0;O$t(n,d,p,m,y,g),P$t(i,d,p,a),B$t(i,d,p,a)}Rr==="TB"||Rr==="BT"?Gs.set(d.id,{x:p.x,y:p.posWithOffset}):Gs.set(d.id,{x:p.posWithOffset,y:p.y}),a=Rr==="BT"&&l?a+vf:a+vf+yf,a>gf&&(gf=a)})},"drawCommits"),G$t=o((e,t,r,n,i)=>{let s=(Rr==="TB"||Rr==="BT"?r.xh.branch===s,"isOnBranchToGetCurve"),u=o(h=>h.seq>e.seq&&h.sequ(h)&&l(h))},"shouldRerouteArrow"),Nx=o((e,t,r=0)=>{let n=e+Math.abs(e-t)/2;if(r>5)return n;if(qE.every(s=>Math.abs(s-n)>=10))return qE.push(n),n;let a=Math.abs(e-t);return Nx(e,t-a/5,r+1)},"findLane"),V$t=o((e,t,r,n)=>{let i=Gs.get(t.id),a=Gs.get(r.id);if(i===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${t.id} and ${r.id}`);let s=G$t(t,r,i,a,n),l="",u="",h=0,f=0,d=$s.get(r.branch)?.index;r.type===jr.MERGE&&t.id!==r.parents[0]&&(d=$s.get(t.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&&t.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&&t.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&&t.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");e.append("path").attr("d",p).attr("class","arrow arrow"+d%D0)},"drawArrow"),U$t=o((e,t)=>{let r=e.append("g").attr("class","commit-arrows");[...t.keys()].forEach(n=>{let i=t.get(n);i.parents&&i.parents.length>0&&i.parents.forEach(a=>{V$t(r,t.get(a),i,t)})})},"drawArrows"),H$t=o((e,t)=>{let r=e.append("g");t.forEach((n,i)=>{let a=i%D0,s=$s.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",gf),l.attr("y2",s),l.attr("class","branch branch"+a),Rr==="TB"?(l.attr("y1",YE),l.attr("x1",s),l.attr("y2",gf),l.attr("x2",s)):Rr==="BT"&&(l.attr("y1",gf),l.attr("x1",s),l.attr("y2",YE),l.attr("x2",s)),qE.push(s);let u=n.name,h=_ut(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-(tl?.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-(tl?.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",gf),p.attr("transform","translate("+(s-m.width/2-5)+", "+gf+")")):f.attr("transform","translate(-19, "+(s-m.height/2)+")")})},"drawBranches"),W$t=o(function(e,t,r,n,i){return $s.set(e,{pos:t,index:r}),t+=50+(i?40:0)+(Rr==="TB"||Rr==="BT"?n.width/2:0),t},"setBranchPosition"),Y$t=o(function(e,t,r,n){if(_$t(),V.debug("in gitgraph renderer",e+` +`,"id:",t,r),!tl)throw new Error("GitGraph config not found");let i=tl.rotateCommitLabel??!1,a=n.db;Rx=a.getCommits();let s=a.getBranchesAsObjArray();Rr=a.getDirection();let l=Gt(`[id="${t}"]`),u=0;s.forEach((h,f)=>{let d=_ut(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=W$t(h.name,u,f,y,i),g.remove(),m.remove(),p.remove()}),Aut(l,Rx,!1),tl.showBranches&&H$t(l,s),U$t(l,Rx),Aut(l,Rx,!0),Oe.insertTitle(l,"gitTitleText",tl.titleTopMargin??0,a.getDiagramTitle()),Y7(void 0,l,tl.diagramPadding,tl.useMaxWidth)},"draw"),Dut={draw:Y$t}});var q$t,Nut,Mut=R(()=>{"use strict";q$t=o(e=>` + .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(t=>` + .branch-label${t} { fill: ${e["gitBranchLabel"+t]}; } + .commit${t} { stroke: ${e["git"+t]}; fill: ${e["git"+t]}; } + .commit-highlight${t} { stroke: ${e["gitInv"+t]}; fill: ${e["gitInv"+t]}; } + .label${t} { fill: ${e["git"+t]}; } + .arrow${t} { stroke: ${e["git"+t]}; } + `).join(` +`)} + + .branch { + stroke-width: 1; + stroke: ${e.lineColor}; + stroke-dasharray: 2; + } + .commit-label { font-size: ${e.commitLabelFontSize}; fill: ${e.commitLabelColor};} + .commit-label-bkg { font-size: ${e.commitLabelFontSize}; fill: ${e.commitLabelBackground}; opacity: 0.5; } + .tag-label { font-size: ${e.tagLabelFontSize}; fill: ${e.tagLabelColor};} + .tag-label-bkg { fill: ${e.tagLabelBackground}; stroke: ${e.tagLabelBorder}; } + .tag-hole { fill: ${e.textColor}; } + + .commit-merge { + stroke: ${e.primaryColor}; + fill: ${e.primaryColor}; + } + .commit-reverse { + stroke: ${e.primaryColor}; + fill: ${e.primaryColor}; + stroke-width: 3; + } + .commit-highlight-outer { + } + .commit-highlight-inner { + stroke: ${e.primaryColor}; + fill: ${e.primaryColor}; + } + + .arrow { stroke-width: 8; stroke-linecap: round; fill: none} + .gitTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; + } +`,"getStyles"),Nut=q$t});var Iut={};xr(Iut,{diagram:()=>X$t});var X$t,Out=R(()=>{"use strict";Sut();LO();Rut();Mut();X$t={parser:Cut,db:WE,renderer:Dut,styles:Nut}});var DO,Fut,zut=R(()=>{"use strict";DO=function(){var e=o(function(I,C,O,D){for(O=O||{},D=I.length;D--;O[I[D]]=C);return O},"o"),t=[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],S=[1,20],T=[1,21],E=[1,22],_=[1,23],A=[1,25],L=[1,35],M={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,D,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]},e(t,[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:S,33:T,35:E,36:_,37:24,38:A,40:L},e(t,[2,7],{1:[2,1]}),e(t,[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:S,33:T,35:E,36:_,37:24,38:A,40:L},e(t,[2,5]),e(t,[2,6]),e(t,[2,17]),e(t,[2,18]),e(t,[2,19]),e(t,[2,20]),e(t,[2,21]),e(t,[2,22]),e(t,[2,23]),e(t,[2,24]),e(t,[2,25]),e(t,[2,26]),e(t,[2,27]),{32:[1,37]},{34:[1,38]},e(t,[2,30]),e(t,[2,31]),e(t,[2,32]),{39:[1,39]},e(t,[2,8]),e(t,[2,9]),e(t,[2,10]),e(t,[2,11]),e(t,[2,12]),e(t,[2,13]),e(t,[2,14]),e(t,[2,15]),e(t,[2,16]),{41:[1,40],43:[1,41]},e(t,[2,4]),e(t,[2,28]),e(t,[2,29]),e(t,[2,33]),e(t,[2,34],{42:[1,42],43:[1,43]}),e(t,[2,40],{41:[1,44]}),e(t,[2,35],{43:[1,45]}),e(t,[2,36]),e(t,[2,38],{42:[1,46]}),e(t,[2,37]),e(t,[2,39])],defaultActions:{},parseError:o(function(C,O){if(O.recoverable)this.trace(C);else{var D=new Error(C);throw D.hash=O,D}},"parseError"),parse:o(function(C){var O=this,D=[0],P=[],F=[null],B=[],G=this.table,z="",W=0,Q=0,j=0,at=2,X=1,J=B.slice.call(arguments,1),Z=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]);Z.setInput(C,H.yy),H.yy.lexer=Z,H.yy.parser=this,typeof Z.yylloc>"u"&&(Z.yylloc={});var K=Z.yylloc;B.push(K);var ot=Z.options&&Z.options.ranges;typeof H.yy.parseError=="function"?this.parseError=H.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ct(mt){D.length=D.length-2*mt,F.length=F.length-mt,B.length=B.length-mt}o(ct,"popStack");function ut(){var mt;return mt=P.pop()||Z.lex()||X,typeof mt!="number"&&(mt instanceof Array&&(P=mt,mt=P.pop()),mt=O.symbols_[mt]||mt),mt}o(ut,"lex");for(var et,Mt,it,wt,Ot,St,Vt={},Pt,_t,dt,Y;;){if(it=D[D.length-1],this.defaultActions[it]?wt=this.defaultActions[it]:((et===null||typeof et>"u")&&(et=ut()),wt=G[it]&&G[it][et]),typeof wt>"u"||!wt.length||!wt[0]){var ft="";Y=[];for(Pt in G[it])this.terminals_[Pt]&&Pt>at&&Y.push("'"+this.terminals_[Pt]+"'");Z.showPosition?ft="Parse error on line "+(W+1)+`: +`+Z.showPosition()+` +Expecting `+Y.join(", ")+", got '"+(this.terminals_[et]||et)+"'":ft="Parse error on line "+(W+1)+": Unexpected "+(et==X?"end of input":"'"+(this.terminals_[et]||et)+"'"),this.parseError(ft,{text:Z.match,token:this.terminals_[et]||et,line:Z.yylineno,loc:K,expected:Y})}if(wt[0]instanceof Array&&wt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+it+", token: "+et);switch(wt[0]){case 1:D.push(et),F.push(Z.yytext),B.push(Z.yylloc),D.push(wt[1]),et=null,Mt?(et=Mt,Mt=null):(Q=Z.yyleng,z=Z.yytext,W=Z.yylineno,K=Z.yylloc,j>0&&j--);break;case 2:if(_t=this.productions_[wt[1]][1],Vt.$=F[F.length-_t],Vt._$={first_line:B[B.length-(_t||1)].first_line,last_line:B[B.length-1].last_line,first_column:B[B.length-(_t||1)].first_column,last_column:B[B.length-1].last_column},ot&&(Vt._$.range=[B[B.length-(_t||1)].range[0],B[B.length-1].range[1]]),St=this.performAction.apply(Vt,[z,Q,W,H.yy,wt[1],F,B].concat(J)),typeof St<"u")return St;_t&&(D=D.slice(0,-1*_t*2),F=F.slice(0,-1*_t),B=B.slice(0,-1*_t)),D.push(this.productions_[wt[1]][0]),F.push(Vt.$),B.push(Vt._$),dt=G[D[D.length-2]][D[D.length-1]],D.push(dt);break;case 3:return!0}}return!0},"parse")},N=function(){var I={EOF:1,parseError:o(function(O,D){if(this.yy.parser)this.yy.parser.parseError(O,D);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,D=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),D.length-1&&(this.yylineno-=D.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:D?(D.length===P.length?this.yylloc.first_column:0)+P[P.length-D.length].length-D[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 D,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],D=this.performAction.call(this,this.yy,this,O,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),D)return D;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,D,P;this._more||(this.yytext="",this.match="");for(var F=this._currentRules(),B=0;BO[0].length)){if(O=D,P=B,this.options.backtrack_lexer){if(C=this.test_match(D,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,D,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 I}();M.lexer=N;function k(){this.yy={}}return o(k,"Parser"),k.prototype=M,M.Parser=k,new k}();DO.parser=DO;Fut=DO});var $ut=Ti((RO,NO)=>{"use strict";(function(e,t){typeof RO=="object"&&typeof NO<"u"?NO.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs_plugin_isoWeek=t()})(RO,function(){"use strict";var e="day";return function(t,r,n){var i=o(function(l){return l.add(4-l.isoWeekday(),e)},"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()),e);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,e));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 Gut=Ti((MO,IO)=>{"use strict";(function(e,t){typeof MO=="object"&&typeof IO<"u"?IO.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs_plugin_customParseFormat=t()})(MO,function(){"use strict";var e={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"},t=/(\[[^[]*\])|([-_:/.,()\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(A,L,M){var N=M&&M.toUpperCase();return L||v[M]||e[M]||v[N].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(k,I,C){return I||C.slice(1)})})).match(t),b=x.length,w=0;w-1)return new Date((D==="X"?1e3:1)*O);var B=m(D)(O),G=B.year,z=B.month,W=B.day,Q=B.hours,j=B.minutes,at=B.seconds,X=B.milliseconds,J=B.zone,Z=B.week,H=new Date,q=W||(G||z?1:H.getDate()),K=G||H.getFullYear(),ot=0;G&&!z||(ot=z>0?z-1:H.getMonth());var ct,ut=Q||0,et=j||0,Mt=at||0,it=X||0;return J?new Date(Date.UTC(K,ot,q,ut,et,Mt,it+60*J.offset*1e3)):P?new Date(Date.UTC(K,ot,q,ut,et,Mt,it)):(ct=new Date(K,ot,q,ut,et,Mt,it),Z&&(ct=F(ct).week(Z).toDate()),ct)}catch{return new Date("")}}(S,_,T,v),this.init(),N&&N!==!0&&(this.$L=this.locale(N).$L),M&&S!=this.format(_)&&(this.$d=new Date("")),s={}}else if(_ instanceof Array)for(var k=_.length,I=1;I<=k;I+=1){E[1]=_[I-1];var C=v.apply(this,E);if(C.isValid()){this.$d=C.$d,this.$L=C.$L,this.init();break}I===k&&(this.$d=new Date(""))}else b.call(this,w)}}})});var Vut=Ti((OO,PO)=>{"use strict";(function(e,t){typeof OO=="object"&&typeof PO<"u"?PO.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs_plugin_advancedFormat=t()})(OO,function(){"use strict";return function(e,t){var r=t.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 iht(e,t,r){let n=!0;for(;n;)n=!1,r.forEach(function(i){let a="^\\s*"+i+"\\s*$",s=new RegExp(a);e[0].match(s)&&(t[i]=!0,e.shift(1),n=!0)})}var Wut,vo,Yut,qut,Xut,Uut,Wc,$O,GO,VO,Mx,Ix,UO,HO,KE,Yg,WO,jut,YO,Ox,qO,XO,QE,BO,Z$t,J$t,tGt,eGt,rGt,nGt,iGt,aGt,sGt,oGt,lGt,cGt,uGt,hGt,fGt,dGt,pGt,mGt,gGt,yGt,vGt,xGt,bGt,Kut,wGt,TGt,kGt,Qut,EGt,FO,Zut,Jut,XE,Wg,CGt,SGt,zO,jE,Hi,tht,AGt,R0,_Gt,Hut,LGt,eht,DGt,rht,RGt,NGt,nht,aht=R(()=>{"use strict";Wut=Qi(Qp(),1),vo=Qi(Jb(),1),Yut=Qi($ut(),1),qut=Qi(Gut(),1),Xut=Qi(Vut(),1);ce();Ue();_r();Ci();vo.default.extend(Yut.default);vo.default.extend(qut.default);vo.default.extend(Xut.default);Uut={friday:5,saturday:6},Wc="",$O="",VO="",Mx=[],Ix=[],UO=new Map,HO=[],KE=[],Yg="",WO="",jut=["active","done","crit","milestone"],YO=[],Ox=!1,qO=!1,XO="sunday",QE="saturday",BO=0,Z$t=o(function(){HO=[],KE=[],Yg="",YO=[],XE=0,zO=void 0,jE=void 0,Hi=[],Wc="",$O="",WO="",GO=void 0,VO="",Mx=[],Ix=[],Ox=!1,qO=!1,BO=0,UO=new Map,Ar(),XO="sunday",QE="saturday"},"clear"),J$t=o(function(e){$O=e},"setAxisFormat"),tGt=o(function(){return $O},"getAxisFormat"),eGt=o(function(e){GO=e},"setTickInterval"),rGt=o(function(){return GO},"getTickInterval"),nGt=o(function(e){VO=e},"setTodayMarker"),iGt=o(function(){return VO},"getTodayMarker"),aGt=o(function(e){Wc=e},"setDateFormat"),sGt=o(function(){Ox=!0},"enableInclusiveEndDates"),oGt=o(function(){return Ox},"endDatesAreInclusive"),lGt=o(function(){qO=!0},"enableTopAxis"),cGt=o(function(){return qO},"topAxisEnabled"),uGt=o(function(e){WO=e},"setDisplayMode"),hGt=o(function(){return WO},"getDisplayMode"),fGt=o(function(){return Wc},"getDateFormat"),dGt=o(function(e){Mx=e.toLowerCase().split(/[\s,]+/)},"setIncludes"),pGt=o(function(){return Mx},"getIncludes"),mGt=o(function(e){Ix=e.toLowerCase().split(/[\s,]+/)},"setExcludes"),gGt=o(function(){return Ix},"getExcludes"),yGt=o(function(){return UO},"getLinks"),vGt=o(function(e){Yg=e,HO.push(e)},"addSection"),xGt=o(function(){return HO},"getSections"),bGt=o(function(){let e=Hut(),t=10,r=0;for(;!e&&r[\d\w- ]+)/.exec(r);if(i!==null){let s=null;for(let u of i.groups.ids.split(" ")){let h=R0(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,vo.default)(r,t.trim(),!0);if(a.isValid())return a.toDate();{V.debug("Invalid date:"+r),V.debug("With date format:"+t.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"),Zut=o(function(e){let t=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(e.trim());return t!==null?[Number.parseFloat(t[1]),t[2]]:[NaN,"ms"]},"parseDuration"),Jut=o(function(e,t,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=R0(p);m!==void 0&&(!f||m.startTime{window.open(r,"_self")}),UO.set(n,r))}),eht(e,"clickable")},"setLink"),eht=o(function(e,t){e.split(",").forEach(function(r){let n=R0(r);n!==void 0&&n.classes.push(t)})},"setClass"),DGt=o(function(e,t,r){if(pt().securityLevel!=="loose"||t===void 0)return;let n=[];if(typeof r=="string"){n=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let a=0;a{Oe.runFunc(t,...n)})},"setClickFun"),rht=o(function(e,t){YO.push(function(){let r=document.querySelector(`[id="${e}"]`);r!==null&&r.addEventListener("click",function(){t()})},function(){let r=document.querySelector(`[id="${e}-text"]`);r!==null&&r.addEventListener("click",function(){t()})})},"pushFun"),RGt=o(function(e,t,r){e.split(",").forEach(function(n){DGt(n,t,r)}),eht(e,"clickable")},"setClickEvent"),NGt=o(function(e){YO.forEach(function(t){t(e)})},"bindFunctions"),nht={getConfig:o(()=>pt().gantt,"getConfig"),clear:Z$t,setDateFormat:aGt,getDateFormat:fGt,enableInclusiveEndDates:sGt,endDatesAreInclusive:oGt,enableTopAxis:lGt,topAxisEnabled:cGt,setAxisFormat:J$t,getAxisFormat:tGt,setTickInterval:eGt,getTickInterval:rGt,setTodayMarker:nGt,getTodayMarker:iGt,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,setDisplayMode:uGt,getDisplayMode:hGt,setAccDescription:Fr,getAccDescription:zr,addSection:vGt,getSections:xGt,getTasks:bGt,addTask:AGt,findTaskById:R0,addTaskOrg:_Gt,setIncludes:dGt,getIncludes:pGt,setExcludes:mGt,getExcludes:gGt,setClickEvent:RGt,setLink:LGt,getLinks:yGt,bindFunctions:NGt,parseDuration:Zut,isInvalidDate:Kut,setWeekday:wGt,getWeekday:TGt,setWeekend:kGt};o(iht,"getTaskTags")});var ZE,MGt,sht,IGt,Ku,OGt,oht,lht=R(()=>{"use strict";ZE=Qi(Jb(),1);ce();ur();hr();Ue();Jn();MGt=o(function(){V.debug("Something is calling, setConf, remove the call")},"setConf"),sht={monday:Lh,tuesday:U3,wednesday:H3,thursday:gc,friday:W3,saturday:Y3,sunday:Tl},IGt=o((e,t)=>{let r=[...e].map(()=>-1/0),n=[...e].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+t,s>i&&(i=s);break}return i},"getMaxIntersections"),OGt=o(function(e,t,r,n){let i=pt().gantt,a=pt().securityLevel,s;a==="sandbox"&&(s=Gt("#i"+t));let l=a==="sandbox"?Gt(s.nodes()[0].contentDocument.body):Gt("body"),u=a==="sandbox"?s.nodes()[0].contentDocument:document,h=u.getElementById(t);Ku=h.parentElement.offsetWidth,Ku===void 0&&(Ku=1200),i.useWidth!==void 0&&(Ku=i.useWidth);let f=n.db.getTasks(),d=[];for(let A of f)d.push(A.type);d=_(d);let p={},m=2*i.topPadding;if(n.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let A={};for(let M of f)A[M.section]===void 0?A[M.section]=[M]:A[M.section].push(M);let L=0;for(let M of Object.keys(A)){let N=IGt(A[M],L)+1;L+=N,m+=N*(i.barHeight+i.barGap),p[M]=N}}else{m+=f.length*(i.barHeight+i.barGap);for(let A of d)p[A]=f.filter(L=>L.type===A).length}h.setAttribute("viewBox","0 0 "+Ku+" "+m);let g=l.select(`[id="${t}"]`),y=j3().domain([t3(f,function(A){return A.startTime}),J4(f,function(A){return A.endTime})]).rangeRound([0,Ku-i.leftPadding-i.rightPadding]);function v(A,L){let M=A.startTime,N=L.startTime,k=0;return M>N?k=1:MG.order))].map(G=>A.find(z=>z.order===G));g.append("g").selectAll("rect").data(D).enter().append("rect").attr("x",0).attr("y",function(G,z){return z=G.order,z*L+M-2}).attr("width",function(){return C-i.rightPadding/2}).attr("height",L).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(A).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)+N+.5*(y(G.endTime)-y(G.startTime))-.5*k:y(G.startTime)+N}).attr("y",function(G,z){return z=G.order,z*L+M}).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)+N+.5*(y(G.endTime)-y(G.startTime))).toString()+"px "+(z*L+M+.5*k).toString()+"px"}).attr("class",function(G){let z="task",W="";G.classes.length>0&&(W=G.classes.join(" "));let Q=0;for(let[at,X]of d.entries())G.type===X&&(Q=at%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+=Q,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 Q=this.getBBox().width;return Q>W-z?W+Q+1.5*i.leftPadding>C?z+N-5:W+N+5:(W-z)/2+z+N}).attr("y",function(G,z){return z=G.order,z*L+i.barHeight/2+(i.fontSize/2-2)+M}).attr("text-height",k).attr("class",function(G){let z=y(G.startTime),W=y(G.endTime);G.milestone&&(W=z+k);let Q=this.getBBox().width,j="";G.classes.length>0&&(j=G.classes.join(" "));let at=0;for(let[J,Z]of d.entries())G.type===Z&&(at=J%i.numberSectionStyles);let X="";return G.active&&(G.crit?X="activeCritText"+at:X="activeText"+at),G.done?G.crit?X=X+" doneCritText"+at:X=X+" doneText"+at:G.crit&&(X=X+" critText"+at),G.milestone&&(X+=" milestoneText"),Q>W-z?W+Q+1.5*i.leftPadding>C?j+" taskTextOutsideLeft taskTextOutside"+at+" "+X:j+" taskTextOutsideRight taskTextOutside"+at+" "+X+" width-"+Q:j+" taskText taskText"+at+" "+X+" width-"+Q}),pt().securityLevel==="sandbox"){let G;G=Gt("#i"+t);let z=G.nodes()[0].contentDocument;P.filter(function(W){return F.has(W.id)}).each(function(W){var Q=z.querySelector("#"+W.id),j=z.querySelector("#"+W.id+"-text");let at=Q.parentNode;var X=z.createElement("a");X.setAttribute("xlink:href",F.get(W.id)),X.setAttribute("target","_top"),at.appendChild(X),X.appendChild(Q),X.appendChild(j)})}}o(b,"drawRects");function w(A,L,M,N,k,I,C,O){if(C.length===0&&O.length===0)return;let D,P;for(let{startTime:Q,endTime:j}of I)(D===void 0||QP)&&(P=j);if(!D||!P)return;if((0,ZE.default)(P).diff((0,ZE.default)(D),"year")>5){V.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,ZE.default)(D);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(Q){return"exclude-"+Q.start.format("YYYY-MM-DD")}).attr("x",function(Q){return y(Q.start)+M}).attr("y",i.gridLineStartPadding).attr("width",function(Q){let j=Q.end.add(1,"day");return y(j)-y(Q.start)}).attr("height",k-L-i.gridLineStartPadding).attr("transform-origin",function(Q,j){return(y(Q.start)+M+.5*(y(Q.end)-y(Q.start))).toString()+"px "+(j*A+.5*k).toString()+"px"}).attr("class","exclude-range")}o(w,"drawExcludeDays");function S(A,L,M,N){let k=aA(y).tickSize(-N+L+i.gridLineStartPadding).tickFormat(bd(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],D=C[2],P=n.db.getWeekday()||i.weekday;switch(D){case"millisecond":k.ticks(pc.every(O));break;case"second":k.ticks(Zs.every(O));break;case"minute":k.ticks(Tu.every(O));break;case"hour":k.ticks(ku.every(O));break;case"day":k.ticks(Mo.every(O));break;case"week":k.ticks(sht[P].every(O));break;case"month":k.ticks(Eu.every(O));break}}if(g.append("g").attr("class","grid").attr("transform","translate("+A+", "+(N-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=iA(y).tickSize(-N+L+i.gridLineStartPadding).tickFormat(bd(n.db.getAxisFormat()||i.axisFormat||"%Y-%m-%d"));if(C!==null){let D=C[1],P=C[2],F=n.db.getWeekday()||i.weekday;switch(P){case"millisecond":O.ticks(pc.every(D));break;case"second":O.ticks(Zs.every(D));break;case"minute":O.ticks(Tu.every(D));break;case"hour":O.ticks(ku.every(D));break;case"day":O.ticks(Mo.every(D));break;case"week":O.ticks(sht[F].every(D));break;case"month":O.ticks(Eu.every(D));break}}g.append("g").attr("class","grid").attr("transform","translate("+A+", "+L+")").call(O).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}o(S,"makeGrid");function T(A,L){let M=0,N=Object.keys(p).map(k=>[k,p[k]]);g.append("g").selectAll("text").data(N).enter().append(function(k){let I=k[0].split(Yt.lineBreakRegex),C=-(I.length-1)/2,O=u.createElementNS("http://www.w3.org/2000/svg","text");O.setAttribute("dy",C+"em");for(let[D,P]of I.entries()){let F=u.createElementNS("http://www.w3.org/2000/svg","tspan");F.setAttribute("alignment-baseline","central"),F.setAttribute("x","10"),D>0&&F.setAttribute("dy","1em"),F.textContent=P,O.appendChild(F)}return O}).attr("x",10).attr("y",function(k,I){if(I>0)for(let C=0;C{"use strict";PGt=o(e=>` + .mermaid-main-font { + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .exclude-range { + fill: ${e.excludeBkgColor}; + } + + .section { + stroke: none; + opacity: 0.2; + } + + .section0 { + fill: ${e.sectionBkgColor}; + } + + .section2 { + fill: ${e.sectionBkgColor2}; + } + + .section1, + .section3 { + fill: ${e.altSectionBkgColor}; + opacity: 0.2; + } + + .sectionTitle0 { + fill: ${e.titleColor}; + } + + .sectionTitle1 { + fill: ${e.titleColor}; + } + + .sectionTitle2 { + fill: ${e.titleColor}; + } + + .sectionTitle3 { + fill: ${e.titleColor}; + } + + .sectionTitle { + text-anchor: start; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + + /* Grid and axis */ + + .grid .tick { + stroke: ${e.gridColor}; + opacity: 0.8; + shape-rendering: crispEdges; + } + + .grid .tick text { + font-family: ${e.fontFamily}; + fill: ${e.textColor}; + } + + .grid path { + stroke-width: 0; + } + + + /* Today line */ + + .today { + fill: none; + stroke: ${e.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: ${e.taskTextDarkColor}; + text-anchor: start; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .taskTextOutsideLeft { + fill: ${e.taskTextDarkColor}; + text-anchor: end; + } + + + /* Special case clickable */ + + .task.clickable { + cursor: pointer; + } + + .taskText.clickable { + cursor: pointer; + fill: ${e.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideLeft.clickable { + cursor: pointer; + fill: ${e.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideRight.clickable { + cursor: pointer; + fill: ${e.taskTextClickableColor} !important; + font-weight: bold; + } + + + /* Specific task settings for the sections*/ + + .taskText0, + .taskText1, + .taskText2, + .taskText3 { + fill: ${e.taskTextColor}; + } + + .task0, + .task1, + .task2, + .task3 { + fill: ${e.taskBkgColor}; + stroke: ${e.taskBorderColor}; + } + + .taskTextOutside0, + .taskTextOutside2 + { + fill: ${e.taskTextOutsideColor}; + } + + .taskTextOutside1, + .taskTextOutside3 { + fill: ${e.taskTextOutsideColor}; + } + + + /* Active task */ + + .active0, + .active1, + .active2, + .active3 { + fill: ${e.activeTaskBkgColor}; + stroke: ${e.activeTaskBorderColor}; + } + + .activeText0, + .activeText1, + .activeText2, + .activeText3 { + fill: ${e.taskTextDarkColor} !important; + } + + + /* Completed task */ + + .done0, + .done1, + .done2, + .done3 { + stroke: ${e.doneTaskBorderColor}; + fill: ${e.doneTaskBkgColor}; + stroke-width: 2; + } + + .doneText0, + .doneText1, + .doneText2, + .doneText3 { + fill: ${e.taskTextDarkColor} !important; + } + + + /* Tasks on the critical line */ + + .crit0, + .crit1, + .crit2, + .crit3 { + stroke: ${e.critBorderColor}; + fill: ${e.critBkgColor}; + stroke-width: 2; + } + + .activeCrit0, + .activeCrit1, + .activeCrit2, + .activeCrit3 { + stroke: ${e.critBorderColor}; + fill: ${e.activeTaskBkgColor}; + stroke-width: 2; + } + + .doneCrit0, + .doneCrit1, + .doneCrit2, + .doneCrit3 { + stroke: ${e.critBorderColor}; + fill: ${e.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: ${e.taskTextDarkColor} !important; + } + + .activeCritText0, + .activeCritText1, + .activeCritText2, + .activeCritText3 { + fill: ${e.taskTextDarkColor} !important; + } + + .titleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.titleColor||e.textColor}; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } +`,"getStyles"),cht=PGt});var hht={};xr(hht,{diagram:()=>BGt});var BGt,fht=R(()=>{"use strict";zut();aht();lht();uht();BGt={parser:Fut,db:nht,renderer:oht,styles:cht}});var mht,ght=R(()=>{"use strict";Hg();ce();mht={parse:o(async e=>{let t=await Ul("info",e);V.debug(t)},"parse")}});var Px,jO=R(()=>{Px="11.3.0"});var VGt,UGt,yht,vht=R(()=>{"use strict";jO();VGt={version:Px},UGt=o(()=>VGt.version,"getVersion"),yht={getVersion:UGt}});var Vs,xf=R(()=>{"use strict";ur();Ue();Vs=o(e=>{let{securityLevel:t}=pt(),r=Gt("body");if(t==="sandbox"){let a=Gt(`#i${e}`).node()?.contentDocument??document;r=Gt(a.body)}return r.select(`#${e}`)},"selectSvgElement")});var HGt,xht,bht=R(()=>{"use strict";ce();xf();Jn();HGt=o((e,t,r)=>{V.debug(`rendering info diagram +`+e);let n=Vs(t);Pr(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"),xht={draw:HGt}});var wht={};xr(wht,{diagram:()=>WGt});var WGt,Tht=R(()=>{"use strict";ght();vht();bht();WGt={parser:mht,db:yht,renderer:xht}});var Cht,KO,JE,QO,XGt,jGt,KGt,QGt,ZGt,JGt,tVt,t6,ZO=R(()=>{"use strict";ce();Ci();hl();Cht=Er.pie,KO={sections:new Map,showData:!1,config:Cht},JE=KO.sections,QO=KO.showData,XGt=structuredClone(Cht),jGt=o(()=>structuredClone(XGt),"getConfig"),KGt=o(()=>{JE=new Map,QO=KO.showData,Ar()},"clear"),QGt=o(({label:e,value:t})=>{JE.has(e)||(JE.set(e,t),V.debug(`added new section: ${e}, with value: ${t}`))},"addSection"),ZGt=o(()=>JE,"getSections"),JGt=o(e=>{QO=e},"setShowData"),tVt=o(()=>QO,"getShowData"),t6={getConfig:jGt,clear:KGt,setDiagramTitle:cn,getDiagramTitle:Jr,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addSection:QGt,getSections:ZGt,setShowData:JGt,getShowData:tVt}});var eVt,Sht,Aht=R(()=>{"use strict";Hg();ce();Dx();ZO();eVt=o((e,t)=>{pf(e,t),t.setShowData(e.showData),e.sections.map(t.addSection)},"populateDb"),Sht={parse:o(async e=>{let t=await Ul("pie",e);V.debug(t),eVt(t,t6)},"parse")}});var rVt,_ht,Lht=R(()=>{"use strict";rVt=o(e=>` + .pieCircle{ + stroke: ${e.pieStrokeColor}; + stroke-width : ${e.pieStrokeWidth}; + opacity : ${e.pieOpacity}; + } + .pieOuterCircle{ + stroke: ${e.pieOuterStrokeColor}; + stroke-width: ${e.pieOuterStrokeWidth}; + fill: none; + } + .pieTitleText { + text-anchor: middle; + font-size: ${e.pieTitleTextSize}; + fill: ${e.pieTitleTextColor}; + font-family: ${e.fontFamily}; + } + .slice { + font-family: ${e.fontFamily}; + fill: ${e.pieSectionTextColor}; + font-size:${e.pieSectionTextSize}; + // fill: white; + } + .legend text { + fill: ${e.pieLegendTextColor}; + font-family: ${e.fontFamily}; + font-size: ${e.pieLegendTextSize}; + } +`,"getStyles"),_ht=rVt});var nVt,iVt,Dht,Rht=R(()=>{"use strict";ur();Ue();ce();xf();Jn();_r();nVt=o(e=>{let t=[...e.entries()].map(n=>({label:n[0],value:n[1]})).sort((n,i)=>i.value-n.value);return e5().value(n=>n.value)(t)},"createPieArcs"),iVt=o((e,t,r,n)=>{V.debug(`rendering pie chart +`+e);let i=n.db,a=pt(),s=Ss(i.getConfig(),a.pie),l=40,u=18,h=4,f=450,d=f,p=Vs(t),m=p.append("g");m.attr("transform","translate("+d/2+","+f/2+")");let{themeVariables:g}=a,[y]=Tc(g.pieOuterStrokeWidth);y??=2;let v=s.textPosition,x=Math.min(d,f)/2-l,b=Cl().innerRadius(0).outerRadius(x),w=Cl().innerRadius(x*v).outerRadius(x*v);m.append("circle").attr("cx",0).attr("cy",0).attr("r",x+y/2).attr("class","pieOuterCircle");let S=i.getSections(),T=nVt(S),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],_=bu(E);m.selectAll("mySlices").data(T).enter().append("path").attr("d",b).attr("fill",k=>_(k.data.label)).attr("class","pieCircle");let A=0;S.forEach(k=>{A+=k}),m.selectAll("mySlices").data(T).enter().append("text").text(k=>(k.data.value/A*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 L=m.selectAll(".legend").data(_.domain()).enter().append("g").attr("class","legend").attr("transform",(k,I)=>{let C=u+h,O=C*_.domain().length/2,D=12*u,P=I*C-O;return"translate("+D+","+P+")"});L.append("rect").attr("width",u).attr("height",u).style("fill",_).style("stroke",_),L.data(T).append("text").attr("x",u+h).attr("y",u-h).text(k=>{let{label:I,value:C}=k.data;return i.getShowData()?`${I} [${C}]`:I});let M=Math.max(...L.selectAll("text").nodes().map(k=>k?.getBoundingClientRect().width??0)),N=d+l+u+h+M;p.attr("viewBox",`0 0 ${N} ${f}`),Pr(p,f,N,s.useMaxWidth)},"draw"),Dht={draw:iVt}});var Nht={};xr(Nht,{diagram:()=>aVt});var aVt,Mht=R(()=>{"use strict";Aht();ZO();Lht();Rht();aVt={parser:Sht,db:t6,renderer:Dht,styles:_ht}});var JO,Pht,Bht=R(()=>{"use strict";JO=function(){var e=o(function(Tt,kt,Ct,At){for(Ct=Ct||{},At=Tt.length;At--;Ct[Tt[At]]=kt);return Ct},"o"),t=[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],S=[1,20],T=[1,21],E=[1,22],_=[1,24],A=[1,25],L=[1,26],M=[1,27],N=[1,28],k=[1,29],I=[1,32],C=[1,33],O=[1,34],D=[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],Q=[1,65],j=[1,66],at=[1,67],X=[1,68],J=[1,69],Z=[1,70],H=[1,71],q=[1,72],K=[1,73],ot=[1,74],ct=[1,75],ut=[1,76],et=[4,5,6,7,8,9,10,11,12,13,14,15,18],Mt=[1,90],it=[1,91],wt=[1,92],Ot=[1,99],St=[1,93],Vt=[1,96],Pt=[1,94],_t=[1,95],dt=[1,97],Y=[1,98],ft=[1,102],mt=[10,55,56,57],rt=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],ht={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(kt,Ct,At,$t,Nt,yt,Ut){var zt=yt.length-1;switch(Nt){case 23:this.$=yt[zt];break;case 24:this.$=yt[zt-1]+""+yt[zt];break;case 26:this.$=yt[zt-1]+yt[zt];break;case 27:this.$=[yt[zt].trim()];break;case 28:yt[zt-2].push(yt[zt].trim()),this.$=yt[zt-2];break;case 29:this.$=yt[zt-4],$t.addClass(yt[zt-2],yt[zt]);break;case 37:this.$=[];break;case 42:this.$=yt[zt].trim(),$t.setDiagramTitle(this.$);break;case 43:this.$=yt[zt].trim(),$t.setAccTitle(this.$);break;case 44:case 45:this.$=yt[zt].trim(),$t.setAccDescription(this.$);break;case 46:$t.addSection(yt[zt].substr(8)),this.$=yt[zt].substr(8);break;case 47:$t.addPoint(yt[zt-3],"",yt[zt-1],yt[zt],[]);break;case 48:$t.addPoint(yt[zt-4],yt[zt-3],yt[zt-1],yt[zt],[]);break;case 49:$t.addPoint(yt[zt-4],"",yt[zt-2],yt[zt-1],yt[zt]);break;case 50:$t.addPoint(yt[zt-5],yt[zt-4],yt[zt-2],yt[zt-1],yt[zt]);break;case 51:$t.setXAxisLeftText(yt[zt-2]),$t.setXAxisRightText(yt[zt]);break;case 52:yt[zt-1].text+=" \u27F6 ",$t.setXAxisLeftText(yt[zt-1]);break;case 53:$t.setXAxisLeftText(yt[zt]);break;case 54:$t.setYAxisBottomText(yt[zt-2]),$t.setYAxisTopText(yt[zt]);break;case 55:yt[zt-1].text+=" \u27F6 ",$t.setYAxisBottomText(yt[zt-1]);break;case 56:$t.setYAxisBottomText(yt[zt]);break;case 57:$t.setQuadrant1Text(yt[zt]);break;case 58:$t.setQuadrant2Text(yt[zt]);break;case 59:$t.setQuadrant3Text(yt[zt]);break;case 60:$t.setQuadrant4Text(yt[zt]);break;case 64:this.$={text:yt[zt],type:"text"};break;case 65:this.$={text:yt[zt-1].text+""+yt[zt],type:yt[zt-1].type};break;case 66:this.$={text:yt[zt],type:"text"};break;case 67:this.$={text:yt[zt],type:"markdown"};break;case 68:this.$=yt[zt];break;case 69:this.$=yt[zt-1]+""+yt[zt];break}},"anonymous"),table:[{18:t,26:1,27:2,28:r,55:n,56:i,57:a},{1:[3]},{18:t,26:8,27:2,28:r,55:n,56:i,57:a},{18:t,26:9,27:2,28:r,55:n,56:i,57:a},e(s,[2,33],{29:10}),e(l,[2,61]),e(l,[2,62]),e(l,[2,63]),{1:[2,30]},{1:[2,31]},e(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:S,41:T,42:E,48:_,50:A,51:L,52:M,53:N,54:k,60:I,61:C,63:O,64:D,65:P,66:F,67:B}),e(s,[2,34]),{27:45,55:n,56:i,57:a},e(u,[2,37]),e(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:S,41:T,42:E,48:_,50:A,51:L,52:M,53:N,54:k,60:I,61:C,63:O,64:D,65:P,66:F,67:B}),e(u,[2,39]),e(u,[2,40]),e(u,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},e(u,[2,45]),e(u,[2,46]),{18:[1,50]},{4:f,5:d,10:p,12:m,13:g,14:y,43:51,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:52,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:53,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:54,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:55,58:31,60:I,61:C,63:O,64:D,65:P,66:F,67:B},{4:f,5:d,10:p,12:m,13:g,14:y,43:56,58:31,60:I,61:C,63:O,64:D,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:D,65:P,66:F,67:B},e(W,[2,64]),e(W,[2,66]),e(W,[2,67]),e(W,[2,70]),e(W,[2,71]),e(W,[2,72]),e(W,[2,73]),e(W,[2,74]),e(W,[2,75]),e(W,[2,76]),e(W,[2,77]),e(W,[2,78]),e(W,[2,79]),e(W,[2,80]),e(s,[2,35]),e(u,[2,38]),e(u,[2,42]),e(u,[2,43]),e(u,[2,44]),{3:64,4:Q,5:j,6:at,7:X,8:J,9:Z,10:H,11:q,12:K,13:ot,14:ct,15:ut,21:63},e(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:D,65:P,66:F,67:B}),e(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:D,65:P,66:F,67:B}),e(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:D,65:P,66:F,67:B}),e(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:D,65:P,66:F,67:B}),e(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:D,65:P,66:F,67:B}),e(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:D,65:P,66:F,67:B}),{45:[1,79]},{44:[1,80]},e(W,[2,65]),e(W,[2,81]),e(W,[2,82]),e(W,[2,83]),{3:82,4:Q,5:j,6:at,7:X,8:J,9:Z,10:H,11:q,12:K,13:ot,14:ct,15:ut,18:[1,81]},e(et,[2,23]),e(et,[2,1]),e(et,[2,2]),e(et,[2,3]),e(et,[2,4]),e(et,[2,5]),e(et,[2,6]),e(et,[2,7]),e(et,[2,8]),e(et,[2,9]),e(et,[2,10]),e(et,[2,11]),e(et,[2,12]),e(u,[2,52],{58:31,43:83,4:f,5:d,10:p,12:m,13:g,14:y,60:I,61:C,63:O,64:D,65:P,66:F,67:B}),e(u,[2,55],{58:31,43:84,4:f,5:d,10:p,12:m,13:g,14:y,60:I,61:C,63:O,64:D,65:P,66:F,67:B}),{46:[1,85]},{45:[1,86]},{4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,16:89,17:Pt,18:_t,19:dt,20:Y,22:88,23:87},e(et,[2,24]),e(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:D,65:P,66:F,67:B}),e(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:D,65:P,66:F,67:B}),e(u,[2,47],{22:88,16:89,23:100,4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,17:Pt,18:_t,19:dt,20:Y}),{46:[1,101]},e(u,[2,29],{10:ft}),e(mt,[2,27],{16:103,4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,17:Pt,18:_t,19:dt,20:Y}),e(rt,[2,25]),e(rt,[2,13]),e(rt,[2,14]),e(rt,[2,15]),e(rt,[2,16]),e(rt,[2,17]),e(rt,[2,18]),e(rt,[2,19]),e(rt,[2,20]),e(rt,[2,21]),e(rt,[2,22]),e(u,[2,49],{10:ft}),e(u,[2,48],{22:88,16:89,23:104,4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,17:Pt,18:_t,19:dt,20:Y}),{4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,16:89,17:Pt,18:_t,19:dt,20:Y,22:105},e(rt,[2,26]),e(u,[2,50],{10:ft}),e(mt,[2,28],{16:103,4:Mt,5:it,6:wt,8:Ot,11:St,13:Vt,17:Pt,18:_t,19:dt,20:Y})],defaultActions:{8:[2,30],9:[2,31]},parseError:o(function(kt,Ct){if(Ct.recoverable)this.trace(kt);else{var At=new Error(kt);throw At.hash=Ct,At}},"parseError"),parse:o(function(kt){var Ct=this,At=[0],$t=[],Nt=[null],yt=[],Ut=this.table,zt="",ae=0,ke=0,Ee=0,le=2,Zt=1,me=yt.slice.call(arguments,1),Ht=Object.create(this.lexer),ne={yy:{}};for(var xe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xe)&&(ne.yy[xe]=this.yy[xe]);Ht.setInput(kt,ne.yy),ne.yy.lexer=Ht,ne.yy.parser=this,typeof Ht.yylloc>"u"&&(Ht.yylloc={});var Se=Ht.yylloc;yt.push(Se);var Ye=Ht.options&&Ht.options.ranges;typeof ne.yy.parseError=="function"?this.parseError=ne.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function fe(Sr){At.length=At.length-2*Sr,Nt.length=Nt.length-Sr,yt.length=yt.length-Sr}o(fe,"popStack");function ee(){var Sr;return Sr=$t.pop()||Ht.lex()||Zt,typeof Sr!="number"&&(Sr instanceof Array&&($t=Sr,Sr=$t.pop()),Sr=Ct.symbols_[Sr]||Sr),Sr}o(ee,"lex");for(var pe,Me,oe,qe,Cr,En,or={},ln,Ir,ii,mn;;){if(oe=At[At.length-1],this.defaultActions[oe]?qe=this.defaultActions[oe]:((pe===null||typeof pe>"u")&&(pe=ee()),qe=Ut[oe]&&Ut[oe][pe]),typeof qe>"u"||!qe.length||!qe[0]){var Pn="";mn=[];for(ln in Ut[oe])this.terminals_[ln]&&ln>le&&mn.push("'"+this.terminals_[ln]+"'");Ht.showPosition?Pn="Parse error on line "+(ae+1)+`: +`+Ht.showPosition()+` +Expecting `+mn.join(", ")+", got '"+(this.terminals_[pe]||pe)+"'":Pn="Parse error on line "+(ae+1)+": Unexpected "+(pe==Zt?"end of input":"'"+(this.terminals_[pe]||pe)+"'"),this.parseError(Pn,{text:Ht.match,token:this.terminals_[pe]||pe,line:Ht.yylineno,loc:Se,expected:mn})}if(qe[0]instanceof Array&&qe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+oe+", token: "+pe);switch(qe[0]){case 1:At.push(pe),Nt.push(Ht.yytext),yt.push(Ht.yylloc),At.push(qe[1]),pe=null,Me?(pe=Me,Me=null):(ke=Ht.yyleng,zt=Ht.yytext,ae=Ht.yylineno,Se=Ht.yylloc,Ee>0&&Ee--);break;case 2:if(Ir=this.productions_[qe[1]][1],or.$=Nt[Nt.length-Ir],or._$={first_line:yt[yt.length-(Ir||1)].first_line,last_line:yt[yt.length-1].last_line,first_column:yt[yt.length-(Ir||1)].first_column,last_column:yt[yt.length-1].last_column},Ye&&(or._$.range=[yt[yt.length-(Ir||1)].range[0],yt[yt.length-1].range[1]]),En=this.performAction.apply(or,[zt,ke,ae,ne.yy,qe[1],Nt,yt].concat(me)),typeof En<"u")return En;Ir&&(At=At.slice(0,-1*Ir*2),Nt=Nt.slice(0,-1*Ir),yt=yt.slice(0,-1*Ir)),At.push(this.productions_[qe[1]][0]),Nt.push(or.$),yt.push(or._$),ii=Ut[At[At.length-2]][At[At.length-1]],At.push(ii);break;case 3:return!0}}return!0},"parse")},nt=function(){var Tt={EOF:1,parseError:o(function(Ct,At){if(this.yy.parser)this.yy.parser.parseError(Ct,At);else throw new Error(Ct)},"parseError"),setInput:o(function(kt,Ct){return this.yy=Ct||this.yy||{},this._input=kt,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 kt=this._input[0];this.yytext+=kt,this.yyleng++,this.offset++,this.match+=kt,this.matched+=kt;var Ct=kt.match(/(?:\r\n?|\n).*/g);return Ct?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),kt},"input"),unput:o(function(kt){var Ct=kt.length,At=kt.split(/(?:\r\n?|\n)/g);this._input=kt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ct),this.offset-=Ct;var $t=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),At.length-1&&(this.yylineno-=At.length-1);var Nt=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:At?(At.length===$t.length?this.yylloc.first_column:0)+$t[$t.length-At.length].length-At[0].length:this.yylloc.first_column-Ct},this.options.ranges&&(this.yylloc.range=[Nt[0],Nt[0]+this.yyleng-Ct]),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(kt){this.unput(this.match.slice(kt))},"less"),pastInput:o(function(){var kt=this.matched.substr(0,this.matched.length-this.match.length);return(kt.length>20?"...":"")+kt.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var kt=this.match;return kt.length<20&&(kt+=this._input.substr(0,20-kt.length)),(kt.substr(0,20)+(kt.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var kt=this.pastInput(),Ct=new Array(kt.length+1).join("-");return kt+this.upcomingInput()+` +`+Ct+"^"},"showPosition"),test_match:o(function(kt,Ct){var At,$t,Nt;if(this.options.backtrack_lexer&&(Nt={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&&(Nt.yylloc.range=this.yylloc.range.slice(0))),$t=kt[0].match(/(?:\r\n?|\n).*/g),$t&&(this.yylineno+=$t.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:$t?$t[$t.length-1].length-$t[$t.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+kt[0].length},this.yytext+=kt[0],this.match+=kt[0],this.matches=kt,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(kt[0].length),this.matched+=kt[0],At=this.performAction.call(this,this.yy,this,Ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),At)return At;if(this._backtrack){for(var yt in Nt)this[yt]=Nt[yt];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var kt,Ct,At,$t;this._more||(this.yytext="",this.match="");for(var Nt=this._currentRules(),yt=0;ytCt[0].length)){if(Ct=At,$t=yt,this.options.backtrack_lexer){if(kt=this.test_match(At,Nt[yt]),kt!==!1)return kt;if(this._backtrack){Ct=!1;continue}else return!1}else if(!this.options.flex)break}return Ct?(kt=this.test_match(Ct,Nt[$t]),kt!==!1?kt:!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 Ct=this.next();return Ct||this.lex()},"lex"),begin:o(function(Ct){this.conditionStack.push(Ct)},"begin"),popState:o(function(){var Ct=this.conditionStack.length-1;return Ct>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(Ct){return Ct=this.conditionStack.length-1-Math.abs(Ct||0),Ct>=0?this.conditionStack[Ct]:"INITIAL"},"topState"),pushState:o(function(Ct){this.begin(Ct)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(Ct,At,$t,Nt){var yt=Nt;switch($t){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 Tt}();ht.lexer=nt;function st(){this.yy={}}return o(st,"Parser"),st.prototype=ht,ht.Parser=st,new st}();JO.parser=JO;Pht=JO});var hs,e6,Fht=R(()=>{"use strict";ur();hl();ce();m4();hs=xp(),e6=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:Er.quadrantChart?.chartWidth||500,chartWidth:Er.quadrantChart?.chartHeight||500,titlePadding:Er.quadrantChart?.titlePadding||10,titleFontSize:Er.quadrantChart?.titleFontSize||20,quadrantPadding:Er.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:Er.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:Er.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:Er.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:Er.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:Er.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:Er.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:Er.quadrantChart?.pointTextPadding||5,pointLabelFontSize:Er.quadrantChart?.pointLabelFontSize||12,pointRadius:Er.quadrantChart?.pointRadius||5,xAxisPosition:Er.quadrantChart?.xAxisPosition||"top",yAxisPosition:Er.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:Er.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:Er.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:hs.quadrant1Fill,quadrant2Fill:hs.quadrant2Fill,quadrant3Fill:hs.quadrant3Fill,quadrant4Fill:hs.quadrant4Fill,quadrant1TextFill:hs.quadrant1TextFill,quadrant2TextFill:hs.quadrant2TextFill,quadrant3TextFill:hs.quadrant3TextFill,quadrant4TextFill:hs.quadrant4TextFill,quadrantPointFill:hs.quadrantPointFill,quadrantPointTextFill:hs.quadrantPointTextFill,quadrantXAxisTextFill:hs.quadrantXAxisTextFill,quadrantYAxisTextFill:hs.quadrantYAxisTextFill,quadrantTitleFill:hs.quadrantTitleFill,quadrantInternalBorderStrokeFill:hs.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:hs.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,V.info("clear called")}setData(t){this.data={...this.data,...t}}addPoints(t){this.data.points=[...t,...this.data.points]}addClass(t,r){this.classes.set(t,r)}setConfig(t){V.trace("setConfig called with: ",t),this.config={...this.config,...t}}setThemeConfig(t){V.trace("setThemeConfig called with: ",t),this.themeConfig={...this.themeConfig,...t}}calculateSpace(t,r,n,i){let a=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,s={top:t==="top"&&r?a:0,bottom:t==="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(t,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:t==="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:t==="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(t){let{quadrantSpace:r}=t,{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(t){let{quadrantSpace:r}=t,{quadrantHeight:n,quadrantLeft:i,quadrantTop:a,quadrantWidth:s}=r,l=wl().domain([0,1]).range([i,s+i]),u=wl().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(t){let r=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:n}=t,{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(t){if(t)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){let t=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,t,r,n);return{points:this.getQuadrantPoints(a),quadrants:this.getQuadrants(a),axisLabels:this.getAxisLabels(i,t,r,a),borderLines:this.getBorders(a),title:this.getTitle(n)}}}});function tP(e){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(e)}function zht(e){return!/^\d+$/.test(e)}function $ht(e){return!/^\d+px$/.test(e)}var N0,Ght=R(()=>{"use strict";N0=class extends Error{static{o(this,"InvalidStyleError")}constructor(t,r,n){super(`value for ${t} ${r} is invalid, please use a valid ${n}`),this.name="InvalidStyleError"}};o(tP,"validateHexCode");o(zht,"validateNumber");o($ht,"validateSizeInPixels")});function Qu(e){return Zr(e.trim(),lVt)}function cVt(e){Ca.setData({quadrant1Text:Qu(e.text)})}function uVt(e){Ca.setData({quadrant2Text:Qu(e.text)})}function hVt(e){Ca.setData({quadrant3Text:Qu(e.text)})}function fVt(e){Ca.setData({quadrant4Text:Qu(e.text)})}function dVt(e){Ca.setData({xAxisLeftText:Qu(e.text)})}function pVt(e){Ca.setData({xAxisRightText:Qu(e.text)})}function mVt(e){Ca.setData({yAxisTopText:Qu(e.text)})}function gVt(e){Ca.setData({yAxisBottomText:Qu(e.text)})}function eP(e){let t={};for(let r of e){let[n,i]=r.trim().split(/\s*:\s*/);if(n==="radius"){if(zht(i))throw new N0(n,i,"number");t.radius=parseInt(i)}else if(n==="color"){if(tP(i))throw new N0(n,i,"hex code");t.color=i}else if(n==="stroke-color"){if(tP(i))throw new N0(n,i,"hex code");t.strokeColor=i}else if(n==="stroke-width"){if($ht(i))throw new N0(n,i,"number of pixels (eg. 10px)");t.strokeWidth=i}else throw new Error(`style named ${n} is not supported.`)}return t}function yVt(e,t,r,n,i){let a=eP(i);Ca.addPoints([{x:r,y:n,text:Qu(e.text),className:t,...a}])}function vVt(e,t){Ca.addClass(e,eP(t))}function xVt(e){Ca.setConfig({chartWidth:e})}function bVt(e){Ca.setConfig({chartHeight:e})}function wVt(){let e=pt(),{themeVariables:t,quadrantChart:r}=e;return r&&Ca.setConfig(r),Ca.setThemeConfig({quadrant1Fill:t.quadrant1Fill,quadrant2Fill:t.quadrant2Fill,quadrant3Fill:t.quadrant3Fill,quadrant4Fill:t.quadrant4Fill,quadrant1TextFill:t.quadrant1TextFill,quadrant2TextFill:t.quadrant2TextFill,quadrant3TextFill:t.quadrant3TextFill,quadrant4TextFill:t.quadrant4TextFill,quadrantPointFill:t.quadrantPointFill,quadrantPointTextFill:t.quadrantPointTextFill,quadrantXAxisTextFill:t.quadrantXAxisTextFill,quadrantYAxisTextFill:t.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:t.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:t.quadrantInternalBorderStrokeFill,quadrantTitleFill:t.quadrantTitleFill}),Ca.setData({titleText:Jr()}),Ca.build()}var lVt,Ca,TVt,Vht,Uht=R(()=>{"use strict";Ue();hr();Ci();Fht();Ght();lVt=pt();o(Qu,"textSanitizer");Ca=new e6;o(cVt,"setQuadrant1Text");o(uVt,"setQuadrant2Text");o(hVt,"setQuadrant3Text");o(fVt,"setQuadrant4Text");o(dVt,"setXAxisLeftText");o(pVt,"setXAxisRightText");o(mVt,"setYAxisTopText");o(gVt,"setYAxisBottomText");o(eP,"parseStyles");o(yVt,"addPoint");o(vVt,"addClass");o(xVt,"setWidth");o(bVt,"setHeight");o(wVt,"getQuadrantData");TVt=o(function(){Ca.clear(),Ar()},"clear"),Vht={setWidth:xVt,setHeight:bVt,setQuadrant1Text:cVt,setQuadrant2Text:uVt,setQuadrant3Text:hVt,setQuadrant4Text:fVt,setXAxisLeftText:dVt,setXAxisRightText:pVt,setYAxisTopText:mVt,setYAxisBottomText:gVt,parseStyles:eP,addPoint:yVt,addClass:vVt,getQuadrantData:wVt,clear:TVt,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,getAccDescription:zr,setAccDescription:Fr}});var kVt,Hht,Wht=R(()=>{"use strict";ur();Ue();ce();Jn();kVt=o((e,t,r,n)=>{function i(A){return A==="top"?"hanging":"middle"}o(i,"getDominantBaseLine");function a(A){return A==="left"?"start":"middle"}o(a,"getTextAnchor");function s(A){return`translate(${A.x}, ${A.y}) rotate(${A.rotation||0})`}o(s,"getTransformation");let l=pt();V.debug(`Rendering quadrant chart +`+e);let u=l.securityLevel,h;u==="sandbox"&&(h=Gt("#i"+t));let d=(u==="sandbox"?Gt(h.nodes()[0].contentDocument.body):Gt("body")).select(`[id="${t}"]`),p=d.append("g").attr("class","main"),m=l.quadrantChart?.chartWidth??500,g=l.quadrantChart?.chartHeight??500;Pr(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"),S=p.append("g").attr("class","title");y.title&&S.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",A=>A.x1).attr("y1",A=>A.y1).attr("x2",A=>A.x2).attr("y2",A=>A.y2).style("stroke",A=>A.strokeFill).style("stroke-width",A=>A.strokeWidth);let T=v.selectAll("g.quadrant").data(y.quadrants).enter().append("g").attr("class","quadrant");T.append("rect").attr("x",A=>A.x).attr("y",A=>A.y).attr("width",A=>A.width).attr("height",A=>A.height).attr("fill",A=>A.fill),T.append("text").attr("x",0).attr("y",0).attr("fill",A=>A.text.fill).attr("font-size",A=>A.text.fontSize).attr("dominant-baseline",A=>i(A.text.horizontalPos)).attr("text-anchor",A=>a(A.text.verticalPos)).attr("transform",A=>s(A.text)).text(A=>A.text.text),w.selectAll("g.label").data(y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(A=>A.text).attr("fill",A=>A.fill).attr("font-size",A=>A.fontSize).attr("dominant-baseline",A=>i(A.horizontalPos)).attr("text-anchor",A=>a(A.verticalPos)).attr("transform",A=>s(A));let _=b.selectAll("g.data-point").data(y.points).enter().append("g").attr("class","data-point");_.append("circle").attr("cx",A=>A.x).attr("cy",A=>A.y).attr("r",A=>A.radius).attr("fill",A=>A.fill).attr("stroke",A=>A.strokeColor).attr("stroke-width",A=>A.strokeWidth),_.append("text").attr("x",0).attr("y",0).text(A=>A.text.text).attr("fill",A=>A.text.fill).attr("font-size",A=>A.text.fontSize).attr("dominant-baseline",A=>i(A.text.horizontalPos)).attr("text-anchor",A=>a(A.text.verticalPos)).attr("transform",A=>s(A.text))},"draw"),Hht={draw:kVt}});var Yht={};xr(Yht,{diagram:()=>EVt});var EVt,qht=R(()=>{"use strict";Bht();Uht();Wht();EVt={parser:Pht,db:Vht,renderer:Hht,styles:o(()=>"","styles")}});var rP,Kht,Qht=R(()=>{"use strict";rP=function(){var e=o(function(O,D,P,F){for(P=P||{},F=O.length;F--;P[O[F]]=D);return P},"o"),t=[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],S=[1,43],T=[1,42],E=[1,47],_=[1,50],A=[1,10,12,14,16,18,19,21,23,34,35,36],L=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],M=[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],N=[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(D,P,F,B,G,z,W){var Q=z.length-1;switch(G){case 5:B.setOrientation(z[Q]);break;case 9:B.setDiagramTitle(z[Q].text.trim());break;case 12:B.setLineData({text:"",type:"text"},z[Q]);break;case 13:B.setLineData(z[Q-1],z[Q]);break;case 14:B.setBarData({text:"",type:"text"},z[Q]);break;case 15:B.setBarData(z[Q-1],z[Q]);break;case 16:this.$=z[Q].trim(),B.setAccTitle(this.$);break;case 17:case 18:this.$=z[Q].trim(),B.setAccDescription(this.$);break;case 19:this.$=z[Q-1];break;case 20:this.$=[Number(z[Q-2]),...z[Q]];break;case 21:this.$=[Number(z[Q])];break;case 22:B.setXAxisTitle(z[Q]);break;case 23:B.setXAxisTitle(z[Q-1]);break;case 24:B.setXAxisTitle({type:"text",text:""});break;case 25:B.setXAxisBand(z[Q]);break;case 26:B.setXAxisRangeData(Number(z[Q-2]),Number(z[Q]));break;case 27:this.$=z[Q-1];break;case 28:this.$=[z[Q-2],...z[Q]];break;case 29:this.$=[z[Q]];break;case 30:B.setYAxisTitle(z[Q]);break;case 31:B.setYAxisTitle(z[Q-1]);break;case 32:B.setYAxisTitle({type:"text",text:""});break;case 33:B.setYAxisRangeData(Number(z[Q-2]),Number(z[Q]));break;case 37:this.$={text:z[Q],type:"text"};break;case 38:this.$={text:z[Q],type:"text"};break;case 39:this.$={text:z[Q],type:"markdown"};break;case 40:this.$=z[Q];break;case 41:this.$=z[Q-1]+""+z[Q];break}},"anonymous"),table:[e(t,r,{3:1,4:2,7:4,5:n,34:i,35:a,36:s}),{1:[3]},e(t,r,{4:2,7:4,3:8,5:n,34:i,35:a,36:s}),e(t,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]},e(l,[2,34]),e(l,[2,35]),e(l,[2,36]),{1:[2,1]},e(t,r,{4:2,7:4,3:21,5:n,34:i,35:a,36:s}),{1:[2,3]},e(l,[2,5]),e(t,[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:S,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:_,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:_,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]},e(A,[2,18]),{1:[2,2]},e(A,[2,8]),e(A,[2,9]),e(L,[2,37],{40:55,41:f,42:d,43:p,44:m,45:g,46:y,47:v,48:x,49:b,50:w}),e(L,[2,38]),e(L,[2,39]),e(M,[2,40]),e(M,[2,42]),e(M,[2,43]),e(M,[2,44]),e(M,[2,45]),e(M,[2,46]),e(M,[2,47]),e(M,[2,48]),e(M,[2,49]),e(M,[2,50]),e(M,[2,51]),e(A,[2,10]),e(A,[2,22],{30:41,29:56,24:S,27:T}),e(A,[2,24]),e(A,[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},e(A,[2,11]),e(A,[2,30],{33:60,27:E}),e(A,[2,32]),{31:[1,61]},e(A,[2,12]),{17:62,24:_},{25:63,27:N},e(A,[2,14]),{17:65,24:_},e(A,[2,16]),e(A,[2,17]),e(M,[2,41]),e(A,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},e(A,[2,31]),{27:[1,69]},e(A,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},e(A,[2,15]),e(A,[2,26]),e(A,[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},e(A,[2,33]),e(A,[2,19]),{25:73,27:N},{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(D,P){if(P.recoverable)this.trace(D);else{var F=new Error(D);throw F.hash=P,F}},"parseError"),parse:o(function(D){var P=this,F=[0],B=[],G=[null],z=[],W=this.table,Q="",j=0,at=0,X=0,J=2,Z=1,H=z.slice.call(arguments,1),q=Object.create(this.lexer),K={yy:{}};for(var ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ot)&&(K.yy[ot]=this.yy[ot]);q.setInput(D,K.yy),K.yy.lexer=q,K.yy.parser=this,typeof q.yylloc>"u"&&(q.yylloc={});var ct=q.yylloc;z.push(ct);var ut=q.options&&q.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function et(ht){F.length=F.length-2*ht,G.length=G.length-ht,z.length=z.length-ht}o(et,"popStack");function Mt(){var ht;return ht=B.pop()||q.lex()||Z,typeof ht!="number"&&(ht instanceof Array&&(B=ht,ht=B.pop()),ht=P.symbols_[ht]||ht),ht}o(Mt,"lex");for(var it,wt,Ot,St,Vt,Pt,_t={},dt,Y,ft,mt;;){if(Ot=F[F.length-1],this.defaultActions[Ot]?St=this.defaultActions[Ot]:((it===null||typeof it>"u")&&(it=Mt()),St=W[Ot]&&W[Ot][it]),typeof St>"u"||!St.length||!St[0]){var rt="";mt=[];for(dt in W[Ot])this.terminals_[dt]&&dt>J&&mt.push("'"+this.terminals_[dt]+"'");q.showPosition?rt="Parse error on line "+(j+1)+`: +`+q.showPosition()+` +Expecting `+mt.join(", ")+", got '"+(this.terminals_[it]||it)+"'":rt="Parse error on line "+(j+1)+": Unexpected "+(it==Z?"end of input":"'"+(this.terminals_[it]||it)+"'"),this.parseError(rt,{text:q.match,token:this.terminals_[it]||it,line:q.yylineno,loc:ct,expected:mt})}if(St[0]instanceof Array&&St.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ot+", token: "+it);switch(St[0]){case 1:F.push(it),G.push(q.yytext),z.push(q.yylloc),F.push(St[1]),it=null,wt?(it=wt,wt=null):(at=q.yyleng,Q=q.yytext,j=q.yylineno,ct=q.yylloc,X>0&&X--);break;case 2:if(Y=this.productions_[St[1]][1],_t.$=G[G.length-Y],_t._$={first_line:z[z.length-(Y||1)].first_line,last_line:z[z.length-1].last_line,first_column:z[z.length-(Y||1)].first_column,last_column:z[z.length-1].last_column},ut&&(_t._$.range=[z[z.length-(Y||1)].range[0],z[z.length-1].range[1]]),Pt=this.performAction.apply(_t,[Q,at,j,K.yy,St[1],G,z].concat(H)),typeof Pt<"u")return Pt;Y&&(F=F.slice(0,-1*Y*2),G=G.slice(0,-1*Y),z=z.slice(0,-1*Y)),F.push(this.productions_[St[1]][0]),G.push(_t.$),z.push(_t._$),ft=W[F[F.length-2]][F[F.length-1]],F.push(ft);break;case 3:return!0}}return!0},"parse")},I=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(D,P){return this.yy=P||this.yy||{},this._input=D,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 D=this._input[0];this.yytext+=D,this.yyleng++,this.offset++,this.match+=D,this.matched+=D;var P=D.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),D},"input"),unput:o(function(D){var P=D.length,F=D.split(/(?:\r\n?|\n)/g);this._input=D+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(D){this.unput(this.match.slice(D))},"less"),pastInput:o(function(){var D=this.matched.substr(0,this.matched.length-this.match.length);return(D.length>20?"...":"")+D.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var D=this.match;return D.length<20&&(D+=this._input.substr(0,20-D.length)),(D.substr(0,20)+(D.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var D=this.pastInput(),P=new Array(D.length+1).join("-");return D+this.upcomingInput()+` +`+P+"^"},"showPosition"),test_match:o(function(D,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=D[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+D[0].length},this.yytext+=D[0],this.match+=D[0],this.matches=D,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(D[0].length),this.matched+=D[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 D,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(D=this.test_match(F,G[z]),D!==!1)return D;if(this._backtrack){P=!1;continue}else return!1}else if(!this.options.flex)break}return P?(D=this.test_match(P,G[B]),D!==!1?D:!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=I;function C(){this.yy={}}return o(C,"Parser"),C.prototype=k,k.Parser=C,new C}();rP.parser=rP;Kht=rP});function nP(e){return e.type==="bar"}function r6(e){return e.type==="band"}function qg(e){return e.type==="linear"}var n6=R(()=>{"use strict";o(nP,"isBarPlot");o(r6,"isBandAxisData");o(qg,"isLinearAxisData")});var Xg,iP=R(()=>{"use strict";Nl();Xg=class{constructor(t){this.parentGroup=t}static{o(this,"TextDimensionCalculatorWithFont")}getMaxDimension(t,r){if(!this.parentGroup)return{width:t.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 t){let s=vQ(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,aP=R(()=>{"use strict";jg=class{constructor(t,r,n,i){this.axisConfig=t;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(t){this.range=t,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=t[1]-t[0]:this.boundingRect.width=t[1]-t[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(t){this.axisPosition=t,this.setRange(this.range)}getTickDistance(){let t=this.getRange();return Math.abs(t[0]-t[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(t=>t.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){.7*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(.7*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(t){let r=t.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*t.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=t.width,this.boundingRect.height=t.height-r}calculateSpaceIfDrawnVertical(t){let r=t.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*t.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=t.width-r,this.boundingRect.height=t.height}calculateSpace(t){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(t):this.calculateSpaceIfDrawnHorizontally(t),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}getDrawableElementsForLeftAxis(){let t=[];if(this.showAxisLine){let r=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;t.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&&t.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);t.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&&t.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForBottomAxis(){let t=[];if(this.showAxisLine){let r=this.boundingRect.y+this.axisConfig.axisLineWidth/2;t.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&&t.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);t.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&&t.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForTopAxis(){let t=[];if(this.showAxisLine){let r=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.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;t.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&&t.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElements(){if(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 i6,Zht=R(()=>{"use strict";ur();ce();aP();i6=class extends jg{static{o(this,"BandAxis")}constructor(t,r,n,i,a){super(t,i,a,r),this.categories=n,this.scale=Up().domain(this.categories).range(this.getRange())}setRange(t){super.setRange(t)}recalculateScale(){this.scale=Up().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),V.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(t){return this.scale(t)??this.getRange()[0]}}});var a6,Jht=R(()=>{"use strict";ur();aP();a6=class extends jg{static{o(this,"LinearAxis")}constructor(t,r,n,i,a){super(t,i,a,r),this.domain=n,this.scale=wl().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let t=[...this.domain];this.axisPosition==="left"&&t.reverse(),this.scale=wl().domain(t).range(this.getRange())}getScaleValue(t){return this.scale(t)}}});function sP(e,t,r,n){let i=new Xg(n);return r6(e)?new i6(t,r,e.categories,e.title,i):new a6(t,r,[e.min,e.max],e.title,i)}var tft=R(()=>{"use strict";n6();iP();Zht();Jht();o(sP,"getAxis")});function eft(e,t,r,n){let i=new Xg(n);return new oP(i,e,t,r)}var oP,rft=R(()=>{"use strict";iP();oP=class{constructor(t,r,n,i){this.textDimensionCalculator=t;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(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){let r=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(r.width,t.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 t=[];return this.showChartTitle&&t.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),t}};o(eft,"getChartTitleComponent")});var s6,nft=R(()=>{"use strict";ur();s6=class{constructor(t,r,n,i,a){this.plotData=t;this.xAxis=r;this.yAxis=n;this.orientation=i;this.plotIndex=a}static{o(this,"LinePlot")}getDrawableElement(){let t=this.plotData.data.map(n=>[this.xAxis.getScaleValue(n[0]),this.yAxis.getScaleValue(n[1])]),r;return this.orientation==="horizontal"?r=ma().y(n=>n[0]).x(n=>n[1])(t):r=ma().x(n=>n[0]).y(n=>n[1])(t),r?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:r,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}});var o6,ift=R(()=>{"use strict";o6=class{constructor(t,r,n,i,a,s){this.barData=t;this.boundingRect=r;this.xAxis=n;this.yAxis=i;this.orientation=a;this.plotIndex=s}static{o(this,"BarPlot")}getDrawableElement(){let t=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:t.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:t.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 aft(e,t,r){return new lP(e,t,r)}var lP,sft=R(()=>{"use strict";nft();ift();lP=class{constructor(t,r,n){this.chartConfig=t;this.chartData=r;this.chartThemeConfig=n;this.boundingRect={x:0,y:0,width:0,height:0}}static{o(this,"BasePlot")}setAxes(t,r){this.xAxis=t,this.yAxis=r}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){return this.boundingRect.width=t.width,this.boundingRect.height=t.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let t=[];for(let[r,n]of this.chartData.plots.entries())switch(n.type){case"line":{let i=new s6(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);t.push(...i.getDrawableElement())}break;case"bar":{let i=new o6(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);t.push(...i.getDrawableElement())}break}return t}};o(aft,"getPlotComponent")});var l6,oft=R(()=>{"use strict";tft();rft();sft();n6();l6=class{constructor(t,r,n,i){this.chartConfig=t;this.chartData=r;this.componentStore={title:eft(t,r,n,i),plot:aft(t,r,n),xAxis:sP(r.xAxis,t.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},i),yAxis:sP(r.yAxis,t.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},i)}}static{o(this,"Orchestrator")}calculateVerticalSpace(){let t=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),s=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),l=this.componentStore.plot.calculateSpace({width:a,height:s});t-=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:t,height:r}),r-=l.height,this.componentStore.yAxis.setAxisPosition("left"),l=this.componentStore.yAxis.calculateSpace({width:t,height:r}),n=l.width,t-=l.width,t>0&&(a+=t,t=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=>nP(u))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let t=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=0,s=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),l=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),u=this.componentStore.plot.calculateSpace({width:s,height:l});t-=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:t,height:r}),t-=u.width,i=u.width,this.componentStore.yAxis.setAxisPosition("top"),u=this.componentStore.yAxis.calculateSpace({width:t,height:r}),r-=u.height,a=n+u.height,t>0&&(s+=t,t=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=>nP(h))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let t=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let r of Object.values(this.componentStore))t.push(...r.getDrawableElements());return t}}});var c6,lft=R(()=>{"use strict";oft();c6=class{static{o(this,"XYChartBuilder")}static build(t,r,n,i){return new l6(t,r,n,i).getDrawableElement()}}});function uft(){let e=xp(),t=Nr();return Ss(e.xyChart,t.themeVariables.xyChart)}function hft(){let e=Nr();return Ss(Er.xyChart,e.xyChart)}function fft(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function hP(e){let t=Nr();return Zr(e.trim(),t)}function _Vt(e){cft=e}function LVt(e){e==="horizontal"?Fx.chartOrientation="horizontal":Fx.chartOrientation="vertical"}function DVt(e){hn.xAxis.title=hP(e.text)}function dft(e,t){hn.xAxis={type:"linear",title:hn.xAxis.title,min:e,max:t},u6=!0}function RVt(e){hn.xAxis={type:"band",title:hn.xAxis.title,categories:e.map(t=>hP(t.text))},u6=!0}function NVt(e){hn.yAxis.title=hP(e.text)}function MVt(e,t){hn.yAxis={type:"linear",title:hn.yAxis.title,min:e,max:t},uP=!0}function IVt(e){let t=Math.min(...e),r=Math.max(...e),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,t),max:Math.max(i,r)}}function pft(e){let t=[];if(e.length===0)return t;if(!u6){let r=qg(hn.xAxis)?hn.xAxis.min:1/0,n=qg(hn.xAxis)?hn.xAxis.max:-1/0;dft(Math.min(r,1),Math.max(n,e.length))}if(uP||IVt(e),r6(hn.xAxis)&&(t=hn.xAxis.categories.map((r,n)=>[r,e[n]])),qg(hn.xAxis)){let r=hn.xAxis.min,n=hn.xAxis.max,i=(n-r)/(e.length-1),a=[];for(let s=r;s<=n;s+=i)a.push(`${s}`);t=a.map((s,l)=>[s,e[l]])}return t}function mft(e){return cP[e===0?0:e%cP.length]}function OVt(e,t){let r=pft(t);hn.plots.push({type:"line",strokeFill:mft(Bx),strokeWidth:2,data:r}),Bx++}function PVt(e,t){let r=pft(t);hn.plots.push({type:"bar",fill:mft(Bx),data:r}),Bx++}function BVt(){if(hn.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return hn.title=Jr(),c6.build(Fx,hn,zx,cft)}function FVt(){return zx}function zVt(){return Fx}var Bx,cft,Fx,zx,hn,cP,u6,uP,$Vt,gft,yft=R(()=>{"use strict";js();hl();m4();_r();hr();Ci();lft();n6();Bx=0,Fx=hft(),zx=uft(),hn=fft(),cP=zx.plotColorPalette.split(",").map(e=>e.trim()),u6=!1,uP=!1;o(uft,"getChartDefaultThemeConfig");o(hft,"getChartDefaultConfig");o(fft,"getChartDefaultData");o(hP,"textSanitizer");o(_Vt,"setTmpSVGG");o(LVt,"setOrientation");o(DVt,"setXAxisTitle");o(dft,"setXAxisRangeData");o(RVt,"setXAxisBand");o(NVt,"setYAxisTitle");o(MVt,"setYAxisRangeData");o(IVt,"setYAxisRangeFromPlotData");o(pft,"transformDataWithoutCategory");o(mft,"getPlotColorFromPalette");o(OVt,"setLineData");o(PVt,"setBarData");o(BVt,"getDrawableElem");o(FVt,"getChartThemeConfig");o(zVt,"getChartConfig");$Vt=o(function(){Ar(),Bx=0,Fx=hft(),hn=fft(),zx=uft(),cP=zx.plotColorPalette.split(",").map(e=>e.trim()),u6=!1,uP=!1},"clear"),gft={getDrawableElem:BVt,clear:$Vt,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,getAccDescription:zr,setAccDescription:Fr,setOrientation:LVt,setXAxisTitle:DVt,setXAxisRangeData:dft,setXAxisBand:RVt,setYAxisTitle:NVt,setYAxisRangeData:MVt,setLineData:OVt,setBarData:PVt,setTmpSVGG:_Vt,getChartThemeConfig:FVt,getChartConfig:zVt}});var GVt,vft,xft=R(()=>{"use strict";ce();xf();Jn();GVt=o((e,t,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"),V.debug(`Rendering xychart chart +`+e);let f=Vs(t),d=f.append("g").attr("class","main"),p=d.append("rect").attr("width",s.width).attr("height",s.height).attr("class","background");Pr(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 S=d;w>0&&g[b]&&(S=g[b]),b+=v[w],x=g[b],x||(x=g[b]=S.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"),vft={draw:GVt}});var bft={};xr(bft,{diagram:()=>VVt});var VVt,wft=R(()=>{"use strict";Qht();yft();xft();VVt={parser:Kht,db:gft,renderer:vft}});var fP,Eft,Cft=R(()=>{"use strict";fP=function(){var e=o(function(at,X,J,Z){for(J=J||{},Z=at.length;Z--;J[at[Z]]=X);return J},"o"),t=[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],S=[1,48],T=[1,49],E=[1,50],_=[1,51],A=[1,52],L=[1,53],M=[53,54],N=[1,64],k=[1,60],I=[1,61],C=[1,62],O=[1,63],D=[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(X,J,Z,H,q,K,ot){var ct=K.length-1;switch(q){case 4:this.$=K[ct].trim(),H.setAccTitle(this.$);break;case 5:case 6:this.$=K[ct].trim(),H.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:H.addRequirement(K[ct-3],K[ct-4]);break;case 14:H.setNewReqId(K[ct-2]);break;case 15:H.setNewReqText(K[ct-2]);break;case 16:H.setNewReqRisk(K[ct-2]);break;case 17:H.setNewReqVerifyMethod(K[ct-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(K[ct-3]);break;case 34:H.setNewElementType(K[ct-2]);break;case 35:H.setNewElementDocRef(K[ct-2]);break;case 38:H.addRelationship(K[ct-2],K[ct],K[ct-4]);break;case 39:H.addRelationship(K[ct-2],K[ct-4],K[ct]);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:t,9:r,11:n,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:t,9:r,11:n,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},e(a,[2,6]),{3:12,4:2,6:t,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},e(a,[2,4]),e(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]},e(x,[2,20]),e(x,[2,21]),e(x,[2,22]),e(x,[2,23]),e(x,[2,24]),e(x,[2,25]),e(b,[2,49]),e(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:S,57:T,58:E,59:_,60:A,61:L},{52:54,55:w,56:S,57:T,58:E,59:_,60:A,61:L},{5:[1,55]},{5:[1,56]},{53:[1,57]},e(M,[2,40]),e(M,[2,41]),e(M,[2,42]),e(M,[2,43]),e(M,[2,44]),e(M,[2,45]),e(M,[2,46]),{54:[1,58]},{5:N,20:59,21:k,24:I,26:C,28:O,30:D},{5:P,30:F,46:66,47:B,49:G},{23:71,62:y,63:v},{23:72,62:y,63:v},e(z,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:N,20:77,21:k,24:I,26:C,28:O,30:D},e(z,[2,19]),e(z,[2,33]),{22:[1,78]},{22:[1,79]},{5:P,30:F,46:80,47:B,49:G},e(z,[2,37]),e(z,[2,38]),e(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]},e(z,[2,18]),{48:94,62:[1,95],63:[1,96]},{50:97,62:[1,98],63:[1,99]},e(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:N,20:106,21:k,24:I,26:C,28:O,30:D},{5:N,20:107,21:k,24:I,26:C,28:O,30:D},{5:N,20:108,21:k,24:I,26:C,28:O,30:D},{5:N,20:109,21:k,24:I,26:C,28:O,30:D},{5:P,30:F,46:110,47:B,49:G},{5:P,30:F,46:111,47:B,49:G},e(z,[2,14]),e(z,[2,15]),e(z,[2,16]),e(z,[2,17]),e(z,[2,34]),e(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(X,J){if(J.recoverable)this.trace(X);else{var Z=new Error(X);throw Z.hash=J,Z}},"parseError"),parse:o(function(X){var J=this,Z=[0],H=[],q=[null],K=[],ot=this.table,ct="",ut=0,et=0,Mt=0,it=2,wt=1,Ot=K.slice.call(arguments,1),St=Object.create(this.lexer),Vt={yy:{}};for(var Pt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Pt)&&(Vt.yy[Pt]=this.yy[Pt]);St.setInput(X,Vt.yy),Vt.yy.lexer=St,Vt.yy.parser=this,typeof St.yylloc>"u"&&(St.yylloc={});var _t=St.yylloc;K.push(_t);var dt=St.options&&St.options.ranges;typeof Vt.yy.parseError=="function"?this.parseError=Vt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Y(Ut){Z.length=Z.length-2*Ut,q.length=q.length-Ut,K.length=K.length-Ut}o(Y,"popStack");function ft(){var Ut;return Ut=H.pop()||St.lex()||wt,typeof Ut!="number"&&(Ut instanceof Array&&(H=Ut,Ut=H.pop()),Ut=J.symbols_[Ut]||Ut),Ut}o(ft,"lex");for(var mt,rt,ht,nt,st,Tt,kt={},Ct,At,$t,Nt;;){if(ht=Z[Z.length-1],this.defaultActions[ht]?nt=this.defaultActions[ht]:((mt===null||typeof mt>"u")&&(mt=ft()),nt=ot[ht]&&ot[ht][mt]),typeof nt>"u"||!nt.length||!nt[0]){var yt="";Nt=[];for(Ct in ot[ht])this.terminals_[Ct]&&Ct>it&&Nt.push("'"+this.terminals_[Ct]+"'");St.showPosition?yt="Parse error on line "+(ut+1)+`: +`+St.showPosition()+` +Expecting `+Nt.join(", ")+", got '"+(this.terminals_[mt]||mt)+"'":yt="Parse error on line "+(ut+1)+": Unexpected "+(mt==wt?"end of input":"'"+(this.terminals_[mt]||mt)+"'"),this.parseError(yt,{text:St.match,token:this.terminals_[mt]||mt,line:St.yylineno,loc:_t,expected:Nt})}if(nt[0]instanceof Array&&nt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ht+", token: "+mt);switch(nt[0]){case 1:Z.push(mt),q.push(St.yytext),K.push(St.yylloc),Z.push(nt[1]),mt=null,rt?(mt=rt,rt=null):(et=St.yyleng,ct=St.yytext,ut=St.yylineno,_t=St.yylloc,Mt>0&&Mt--);break;case 2:if(At=this.productions_[nt[1]][1],kt.$=q[q.length-At],kt._$={first_line:K[K.length-(At||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-(At||1)].first_column,last_column:K[K.length-1].last_column},dt&&(kt._$.range=[K[K.length-(At||1)].range[0],K[K.length-1].range[1]]),Tt=this.performAction.apply(kt,[ct,et,ut,Vt.yy,nt[1],q,K].concat(Ot)),typeof Tt<"u")return Tt;At&&(Z=Z.slice(0,-1*At*2),q=q.slice(0,-1*At),K=K.slice(0,-1*At)),Z.push(this.productions_[nt[1]][0]),q.push(kt.$),K.push(kt._$),$t=ot[Z[Z.length-2]][Z[Z.length-1]],Z.push($t);break;case 3:return!0}}return!0},"parse")},Q=function(){var at={EOF:1,parseError:o(function(J,Z){if(this.yy.parser)this.yy.parser.parseError(J,Z);else throw new Error(J)},"parseError"),setInput:o(function(X,J){return this.yy=J||this.yy||{},this._input=X,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 X=this._input[0];this.yytext+=X,this.yyleng++,this.offset++,this.match+=X,this.matched+=X;var J=X.match(/(?:\r\n?|\n).*/g);return J?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),X},"input"),unput:o(function(X){var J=X.length,Z=X.split(/(?:\r\n?|\n)/g);this._input=X+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J),this.offset-=J;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),Z.length-1&&(this.yylineno-=Z.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:Z?(Z.length===H.length?this.yylloc.first_column:0)+H[H.length-Z.length].length-Z[0].length:this.yylloc.first_column-J},this.options.ranges&&(this.yylloc.range=[q[0],q[0]+this.yyleng-J]),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(X){this.unput(this.match.slice(X))},"less"),pastInput:o(function(){var X=this.matched.substr(0,this.matched.length-this.match.length);return(X.length>20?"...":"")+X.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var X=this.match;return X.length<20&&(X+=this._input.substr(0,20-X.length)),(X.substr(0,20)+(X.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var X=this.pastInput(),J=new Array(X.length+1).join("-");return X+this.upcomingInput()+` +`+J+"^"},"showPosition"),test_match:o(function(X,J){var Z,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=X[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+X[0].length},this.yytext+=X[0],this.match+=X[0],this.matches=X,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(X[0].length),this.matched+=X[0],Z=this.performAction.call(this,this.yy,this,J,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Z)return Z;if(this._backtrack){for(var K in q)this[K]=q[K];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var X,J,Z,H;this._more||(this.yytext="",this.match="");for(var q=this._currentRules(),K=0;KJ[0].length)){if(J=Z,H=K,this.options.backtrack_lexer){if(X=this.test_match(Z,q[K]),X!==!1)return X;if(this._backtrack){J=!1;continue}else return!1}else if(!this.options.flex)break}return J?(X=this.test_match(J,q[H]),X!==!1?X:!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 J=this.next();return J||this.lex()},"lex"),begin:o(function(J){this.conditionStack.push(J)},"begin"),popState:o(function(){var J=this.conditionStack.length-1;return J>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(J){return J=this.conditionStack.length-1-Math.abs(J||0),J>=0?this.conditionStack[J]:"INITIAL"},"topState"),pushState:o(function(J){this.begin(J)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(J,Z,H,q){var K=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 Z.yytext=Z.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 at}();W.lexer=Q;function j(){this.yy={}}return o(j,"Parser"),j.prototype=W,W.Parser=j,new j}();fP.parser=fP;Eft=fP});var dP,Us,$x,bf,Gx,YVt,qVt,XVt,jVt,KVt,QVt,ZVt,JVt,tUt,eUt,rUt,nUt,iUt,aUt,sUt,oUt,lUt,Sft,Aft=R(()=>{"use strict";Ue();ce();Ci();dP=[],Us={},$x=new Map,bf={},Gx=new Map,YVt={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},qVt={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},XVt={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},jVt={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},KVt=o((e,t)=>($x.has(e)||$x.set(e,{name:e,type:t,id:Us.id,text:Us.text,risk:Us.risk,verifyMethod:Us.verifyMethod}),Us={},$x.get(e)),"addRequirement"),QVt=o(()=>$x,"getRequirements"),ZVt=o(e=>{Us!==void 0&&(Us.id=e)},"setNewReqId"),JVt=o(e=>{Us!==void 0&&(Us.text=e)},"setNewReqText"),tUt=o(e=>{Us!==void 0&&(Us.risk=e)},"setNewReqRisk"),eUt=o(e=>{Us!==void 0&&(Us.verifyMethod=e)},"setNewReqVerifyMethod"),rUt=o(e=>(Gx.has(e)||(Gx.set(e,{name:e,type:bf.type,docRef:bf.docRef}),V.info("Added new requirement: ",e)),bf={},Gx.get(e)),"addElement"),nUt=o(()=>Gx,"getElements"),iUt=o(e=>{bf!==void 0&&(bf.type=e)},"setNewElementType"),aUt=o(e=>{bf!==void 0&&(bf.docRef=e)},"setNewElementDocRef"),sUt=o((e,t,r)=>{dP.push({type:e,src:t,dst:r})},"addRelationship"),oUt=o(()=>dP,"getRelationships"),lUt=o(()=>{dP=[],Us={},$x=new Map,bf={},Gx=new Map,Ar()},"clear"),Sft={RequirementType:YVt,RiskLevel:qVt,VerifyType:XVt,Relationships:jVt,getConfig:o(()=>pt().req,"getConfig"),addRequirement:KVt,getRequirements:QVt,setNewReqId:ZVt,setNewReqText:JVt,setNewReqRisk:tUt,setNewReqVerifyMethod:eUt,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addElement:rUt,getElements:nUt,setNewElementType:iUt,setNewElementDocRef:aUt,addRelationship:sUt,getRelationships:oUt,clear:lUt}});var cUt,_ft,Lft=R(()=>{"use strict";cUt=o(e=>` + + marker { + fill: ${e.relationColor}; + stroke: ${e.relationColor}; + } + + marker.cross { + stroke: ${e.lineColor}; + } + + svg { + font-family: ${e.fontFamily}; + font-size: ${e.fontSize}; + } + + .reqBox { + fill: ${e.requirementBackground}; + fill-opacity: 1.0; + stroke: ${e.requirementBorderColor}; + stroke-width: ${e.requirementBorderSize}; + } + + .reqTitle, .reqLabel{ + fill: ${e.requirementTextColor}; + } + .reqLabelBox { + fill: ${e.relationLabelBackground}; + fill-opacity: 1.0; + } + + .req-title-line { + stroke: ${e.requirementBorderColor}; + stroke-width: ${e.requirementBorderSize}; + } + .relationshipLine { + stroke: ${e.relationColor}; + stroke-width: 1; + } + .relationshipLabel { + fill: ${e.relationLabelColor}; + } + +`,"getStyles"),_ft=cUt});var pP,uUt,mP,Dft=R(()=>{"use strict";pP={CONTAINS:"contains",ARROW:"arrow"},uUt=o((e,t)=>{let r=e.append("defs").append("marker").attr("id",pP.CONTAINS+"_line_ending").attr("refX",0).attr("refY",t.line_height/2).attr("markerWidth",t.line_height).attr("markerHeight",t.line_height).attr("orient","auto").append("g");r.append("circle").attr("cx",t.line_height/2).attr("cy",t.line_height/2).attr("r",t.line_height/2).attr("fill","none"),r.append("line").attr("x1",0).attr("x2",t.line_height).attr("y1",t.line_height/2).attr("y2",t.line_height/2).attr("stroke-width",1),r.append("line").attr("y1",0).attr("y2",t.line_height).attr("x1",t.line_height/2).attr("x2",t.line_height/2).attr("stroke-width",1),e.append("defs").append("marker").attr("id",pP.ARROW+"_line_ending").attr("refX",t.line_height).attr("refY",.5*t.line_height).attr("markerWidth",t.line_height).attr("markerHeight",t.line_height).attr("orient","auto").append("path").attr("d",`M0,0 + L${t.line_height},${t.line_height/2} + M${t.line_height},${t.line_height/2} + L0,${t.line_height}`).attr("stroke-width",1)},"insertLineEndings"),mP={ReqMarkers:pP,insertLineEndings:uUt}});var ui,Rft,Nft,Mft,Ift,hUt,fUt,dUt,pUt,mUt,gUt,Kg,yUt,Oft,Pft=R(()=>{"use strict";ur();Xd();wa();Ue();ce();Jn();hr();Dft();ui={},Rft=0,Nft=o((e,t)=>e.insert("rect","#"+t).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",ui.rect_min_width+"px").attr("height",ui.rect_min_height+"px"),"newRectNode"),Mft=o((e,t,r)=>{let n=ui.rect_min_width/2,i=e.append("text").attr("class","req reqLabel reqTitle").attr("id",t).attr("x",n).attr("y",ui.rect_padding).attr("dominant-baseline","hanging"),a=0;r.forEach(h=>{a==0?i.append("tspan").attr("text-anchor","middle").attr("x",ui.rect_min_width/2).attr("dy",0).text(h):i.append("tspan").attr("text-anchor","middle").attr("x",ui.rect_min_width/2).attr("dy",ui.line_height*.75).text(h),a++});let s=1.5*ui.rect_padding,l=a*ui.line_height*.75,u=s+l;return e.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",ui.rect_min_width).attr("y1",u).attr("y2",u),{titleNode:i,y:u}},"newTitleNode"),Ift=o((e,t,r,n)=>{let i=e.append("text").attr("class","req reqLabel").attr("id",t).attr("x",ui.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",ui.rect_padding).attr("dy",ui.line_height).text(u)}),i},"newBodyNode"),hUt=o((e,t,r,n)=>{let i=t.node().getTotalLength(),a=t.node().getPointAtLength(i*.5),s="rel"+Rft;Rft++;let u=e.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();e.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"),fUt=o(function(e,t,r,n,i){let a=r.edge(Kg(t.src),Kg(t.dst)),s=ma().x(function(u){return u.x}).y(function(u){return u.y}),l=e.insert("path","#"+n).attr("class","er relationshipLine").attr("d",s(a.points)).attr("fill","none");t.type==i.db.Relationships.CONTAINS?l.attr("marker-start","url("+Yt.getUrl(ui.arrowMarkerAbsolute)+"#"+t.type+"_line_ending)"):(l.attr("stroke-dasharray","10,7"),l.attr("marker-end","url("+Yt.getUrl(ui.arrowMarkerAbsolute)+"#"+mP.ReqMarkers.ARROW+"_line_ending)")),hUt(e,l,ui,`<<${t.type}>>`)},"drawRelationshipFromLayout"),dUt=o((e,t,r)=>{e.forEach((n,i)=>{i=Kg(i),V.info("Added new requirement: ",i);let a=r.append("g").attr("id",i),s="req-"+i,l=Nft(a,s),u=[],h=Mft(a,i+"_title",[`<<${n.type}>>`,`${n.name}`]);u.push(h.titleNode);let f=Ift(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();t.setNode(i,{width:d.width,height:d.height,shape:"rect",id:i})})},"drawReqs"),pUt=o((e,t,r)=>{e.forEach((n,i)=>{let a=Kg(i),s=r.append("g").attr("id",a),l="element-"+a,u=Nft(s,l),h=[],f=Mft(s,l+"_title",["<>",`${i}`]);h.push(f.titleNode);let d=Ift(s,l+"_body",[`Type: ${n.type||"Not Specified"}`,`Doc Ref: ${n.docRef||"None"}`],f.y);h.push(d);let p=u.node().getBBox();t.setNode(a,{width:p.width,height:p.height,shape:"rect",id:a})})},"drawElements"),mUt=o((e,t)=>(e.forEach(function(r){let n=Kg(r.src),i=Kg(r.dst);t.setEdge(n,i,{relationship:r})}),e),"addRelationships"),gUt=o(function(e,t){t.nodes().forEach(function(r){r!==void 0&&t.node(r)!==void 0&&(e.select("#"+r),e.select("#"+r).attr("transform","translate("+(t.node(r).x-t.node(r).width/2)+","+(t.node(r).y-t.node(r).height/2)+" )"))})},"adjustEntities"),Kg=o(e=>e.replace(/\s/g,"").replace(/\./g,"_"),"elementString"),yUt=o((e,t,r,n)=>{ui=pt().requirement;let i=ui.securityLevel,a;i==="sandbox"&&(a=Gt("#i"+t));let l=(i==="sandbox"?Gt(a.nodes()[0].contentDocument.body):Gt("body")).select(`[id='${t}']`);mP.insertLineEndings(l,ui);let u=new yr({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:ui.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();dUt(h,u,l),pUt(f,u,l),mUt(d,u),co(u),gUt(l,u),d.forEach(function(v){fUt(l,v,u,t,n)});let p=ui.rect_padding,m=l.node().getBBox(),g=m.width+p*2,y=m.height+p*2;Pr(l,y,g,ui.useMaxWidth),l.attr("viewBox",`${m.x-p} ${m.y-p} ${g} ${y}`)},"draw"),Oft={draw:yUt}});var Bft={};xr(Bft,{diagram:()=>vUt});var vUt,Fft=R(()=>{"use strict";Cft();Aft();Lft();Pft();vUt={parser:Eft,db:Sft,renderer:Oft,styles:_ft}});var gP,Gft,Vft=R(()=>{"use strict";gP=function(){var e=o(function(H,q,K,ot){for(K=K||{},ot=H.length;ot--;K[H[ot]]=q);return K},"o"),t=[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],S=[1,32],T=[1,33],E=[1,34],_=[1,35],A=[1,36],L=[1,37],M=[1,38],N=[1,39],k=[1,41],I=[1,42],C=[1,43],O=[1,44],D=[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],Q=[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],at=[1,122],X={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,K,ot,ct,ut,et,Mt){var it=et.length-1;switch(ut){case 3:return ct.apply(et[it]),et[it];break;case 4:case 9:this.$=[];break;case 5:case 10:et[it-1].push(et[it]),this.$=et[it-1];break;case 6:case 7:case 11:case 12:this.$=et[it];break;case 8:case 13:this.$=[];break;case 15:et[it].type="createParticipant",this.$=et[it];break;case 16:et[it-1].unshift({type:"boxStart",boxData:ct.parseBoxData(et[it-2])}),et[it-1].push({type:"boxEnd",boxText:et[it-2]}),this.$=et[it-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(et[it-2]),sequenceIndexStep:Number(et[it-1]),sequenceVisible:!0,signalType:ct.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(et[it-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:ct.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:ct.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:ct.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:ct.LINETYPE.ACTIVE_START,actor:et[it-1].actor};break;case 23:this.$={type:"activeEnd",signalType:ct.LINETYPE.ACTIVE_END,actor:et[it-1].actor};break;case 29:ct.setDiagramTitle(et[it].substring(6)),this.$=et[it].substring(6);break;case 30:ct.setDiagramTitle(et[it].substring(7)),this.$=et[it].substring(7);break;case 31:this.$=et[it].trim(),ct.setAccTitle(this.$);break;case 32:case 33:this.$=et[it].trim(),ct.setAccDescription(this.$);break;case 34:et[it-1].unshift({type:"loopStart",loopText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.LOOP_START}),et[it-1].push({type:"loopEnd",loopText:et[it-2],signalType:ct.LINETYPE.LOOP_END}),this.$=et[it-1];break;case 35:et[it-1].unshift({type:"rectStart",color:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.RECT_START}),et[it-1].push({type:"rectEnd",color:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.RECT_END}),this.$=et[it-1];break;case 36:et[it-1].unshift({type:"optStart",optText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.OPT_START}),et[it-1].push({type:"optEnd",optText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.OPT_END}),this.$=et[it-1];break;case 37:et[it-1].unshift({type:"altStart",altText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.ALT_START}),et[it-1].push({type:"altEnd",signalType:ct.LINETYPE.ALT_END}),this.$=et[it-1];break;case 38:et[it-1].unshift({type:"parStart",parText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.PAR_START}),et[it-1].push({type:"parEnd",signalType:ct.LINETYPE.PAR_END}),this.$=et[it-1];break;case 39:et[it-1].unshift({type:"parStart",parText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.PAR_OVER_START}),et[it-1].push({type:"parEnd",signalType:ct.LINETYPE.PAR_END}),this.$=et[it-1];break;case 40:et[it-1].unshift({type:"criticalStart",criticalText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.CRITICAL_START}),et[it-1].push({type:"criticalEnd",signalType:ct.LINETYPE.CRITICAL_END}),this.$=et[it-1];break;case 41:et[it-1].unshift({type:"breakStart",breakText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.BREAK_START}),et[it-1].push({type:"breakEnd",optText:ct.parseMessage(et[it-2]),signalType:ct.LINETYPE.BREAK_END}),this.$=et[it-1];break;case 43:this.$=et[it-3].concat([{type:"option",optionText:ct.parseMessage(et[it-1]),signalType:ct.LINETYPE.CRITICAL_OPTION},et[it]]);break;case 45:this.$=et[it-3].concat([{type:"and",parText:ct.parseMessage(et[it-1]),signalType:ct.LINETYPE.PAR_AND},et[it]]);break;case 47:this.$=et[it-3].concat([{type:"else",altText:ct.parseMessage(et[it-1]),signalType:ct.LINETYPE.ALT_ELSE},et[it]]);break;case 48:et[it-3].draw="participant",et[it-3].type="addParticipant",et[it-3].description=ct.parseMessage(et[it-1]),this.$=et[it-3];break;case 49:et[it-1].draw="participant",et[it-1].type="addParticipant",this.$=et[it-1];break;case 50:et[it-3].draw="actor",et[it-3].type="addParticipant",et[it-3].description=ct.parseMessage(et[it-1]),this.$=et[it-3];break;case 51:et[it-1].draw="actor",et[it-1].type="addParticipant",this.$=et[it-1];break;case 52:et[it-1].type="destroyParticipant",this.$=et[it-1];break;case 53:this.$=[et[it-1],{type:"addNote",placement:et[it-2],actor:et[it-1].actor,text:et[it]}];break;case 54:et[it-2]=[].concat(et[it-1],et[it-1]).slice(0,2),et[it-2][0]=et[it-2][0].actor,et[it-2][1]=et[it-2][1].actor,this.$=[et[it-1],{type:"addNote",placement:ct.PLACEMENT.OVER,actor:et[it-2].slice(0,2),text:et[it]}];break;case 55:this.$=[et[it-1],{type:"addLinks",actor:et[it-1].actor,text:et[it]}];break;case 56:this.$=[et[it-1],{type:"addALink",actor:et[it-1].actor,text:et[it]}];break;case 57:this.$=[et[it-1],{type:"addProperties",actor:et[it-1].actor,text:et[it]}];break;case 58:this.$=[et[it-1],{type:"addDetails",actor:et[it-1].actor,text:et[it]}];break;case 61:this.$=[et[it-2],et[it]];break;case 62:this.$=et[it];break;case 63:this.$=ct.PLACEMENT.LEFTOF;break;case 64:this.$=ct.PLACEMENT.RIGHTOF;break;case 65:this.$=[et[it-4],et[it-1],{type:"addMessage",from:et[it-4].actor,to:et[it-1].actor,signalType:et[it-3],msg:et[it],activate:!0},{type:"activeStart",signalType:ct.LINETYPE.ACTIVE_START,actor:et[it-1].actor}];break;case 66:this.$=[et[it-4],et[it-1],{type:"addMessage",from:et[it-4].actor,to:et[it-1].actor,signalType:et[it-3],msg:et[it]},{type:"activeEnd",signalType:ct.LINETYPE.ACTIVE_END,actor:et[it-4].actor}];break;case 67:this.$=[et[it-3],et[it-1],{type:"addMessage",from:et[it-3].actor,to:et[it-1].actor,signalType:et[it-2],msg:et[it]}];break;case 68:this.$={type:"addParticipant",actor:et[it]};break;case 69:this.$=ct.LINETYPE.SOLID_OPEN;break;case 70:this.$=ct.LINETYPE.DOTTED_OPEN;break;case 71:this.$=ct.LINETYPE.SOLID;break;case 72:this.$=ct.LINETYPE.BIDIRECTIONAL_SOLID;break;case 73:this.$=ct.LINETYPE.DOTTED;break;case 74:this.$=ct.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 75:this.$=ct.LINETYPE.SOLID_CROSS;break;case 76:this.$=ct.LINETYPE.DOTTED_CROSS;break;case 77:this.$=ct.LINETYPE.SOLID_POINT;break;case 78:this.$=ct.LINETYPE.DOTTED_POINT;break;case 79:this.$=ct.parseMessage(et[it].trim().substring(1));break}},"anonymous"),table:[{3:1,4:t,5:r,6:n},{1:[3]},{3:5,4:t,5:r,6:n},{3:6,4:t,5:r,6:n},e([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:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},e(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:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},e(F,[2,7]),e(F,[2,8]),e(F,[2,14]),{12:48,50:L,52:M,53:N},{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]},e(F,[2,29]),e(F,[2,30]),{32:[1,61]},{34:[1,62]},e(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},e([5,51,64,71,72,73,74,75,76,77,78,79,80,81],[2,68]),e(F,[2,6]),e(F,[2,15]),e(B,[2,9],{10:93}),e(F,[2,17]),{5:[1,95],19:[1,94]},{5:[1,96]},e(F,[2,21]),{5:[1,97]},{5:[1,98]},e(F,[2,24]),e(F,[2,25]),e(F,[2,26]),e(F,[2,27]),e(F,[2,28]),e(F,[2,31]),e(F,[2,32]),e(G,i,{7:99}),e(G,i,{7:100}),e(G,i,{7:101}),e(z,i,{40:102,7:103}),e(W,i,{42:104,7:105}),e(W,i,{7:105,42:106}),e(Q,i,{45:107,7:108}),e(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},e(j,[2,69]),e(j,[2,70]),e(j,[2,71]),e(j,[2,72]),e(j,[2,73]),e(j,[2,74]),e(j,[2,75]),e(j,[2,76]),e(j,[2,77]),e(j,[2,78]),{22:118,70:P},{22:120,58:119,70:P},{70:[2,63]},{70:[2,64]},{56:121,81:at},{56:123,81:at},{56:124,81:at},{56:125,81:at},{4:[1,128],5:[1,130],11:127,12:129,16:[1,126],50:L,52:M,53:N},{5:[1,131]},e(F,[2,19]),e(F,[2,20]),e(F,[2,22]),e(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:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,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:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,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:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,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:S,41:T,43:E,44:_,46:A,49:[1,136],50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,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:S,41:T,43:E,44:_,46:A,48:[1,138],50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,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:S,41:T,43:E,44:_,46:A,47:[1,141],50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,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:S,41:T,43:E,44:_,46:A,50:L,52:M,53:N,54:k,59:I,60:C,61:O,62:D,70:P},{15:[1,143]},e(F,[2,49]),{15:[1,144]},e(F,[2,51]),e(F,[2,52]),{22:145,70:P},{22:146,70:P},{56:147,81:at},{56:148,81:at},{56:149,81:at},{64:[1,150],81:[2,62]},{5:[2,55]},{5:[2,79]},{5:[2,56]},{5:[2,57]},{5:[2,58]},e(F,[2,16]),e(B,[2,10]),{12:151,50:L,52:M,53:N},e(B,[2,12]),e(B,[2,13]),e(F,[2,18]),e(F,[2,34]),e(F,[2,35]),e(F,[2,36]),e(F,[2,37]),{15:[1,152]},e(F,[2,38]),{15:[1,153]},e(F,[2,39]),e(F,[2,40]),{15:[1,154]},e(F,[2,41]),{5:[1,155]},{5:[1,156]},{56:157,81:at},{56:158,81:at},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:159,70:P},e(B,[2,11]),e(z,i,{7:103,40:160}),e(W,i,{7:105,42:161}),e(Q,i,{7:108,45:162}),e(F,[2,48]),e(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,K){if(K.recoverable)this.trace(q);else{var ot=new Error(q);throw ot.hash=K,ot}},"parseError"),parse:o(function(q){var K=this,ot=[0],ct=[],ut=[null],et=[],Mt=this.table,it="",wt=0,Ot=0,St=0,Vt=2,Pt=1,_t=et.slice.call(arguments,1),dt=Object.create(this.lexer),Y={yy:{}};for(var ft in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ft)&&(Y.yy[ft]=this.yy[ft]);dt.setInput(q,Y.yy),Y.yy.lexer=dt,Y.yy.parser=this,typeof dt.yylloc>"u"&&(dt.yylloc={});var mt=dt.yylloc;et.push(mt);var rt=dt.options&&dt.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ht(Ee){ot.length=ot.length-2*Ee,ut.length=ut.length-Ee,et.length=et.length-Ee}o(ht,"popStack");function nt(){var Ee;return Ee=ct.pop()||dt.lex()||Pt,typeof Ee!="number"&&(Ee instanceof Array&&(ct=Ee,Ee=ct.pop()),Ee=K.symbols_[Ee]||Ee),Ee}o(nt,"lex");for(var st,Tt,kt,Ct,At,$t,Nt={},yt,Ut,zt,ae;;){if(kt=ot[ot.length-1],this.defaultActions[kt]?Ct=this.defaultActions[kt]:((st===null||typeof st>"u")&&(st=nt()),Ct=Mt[kt]&&Mt[kt][st]),typeof Ct>"u"||!Ct.length||!Ct[0]){var ke="";ae=[];for(yt in Mt[kt])this.terminals_[yt]&&yt>Vt&&ae.push("'"+this.terminals_[yt]+"'");dt.showPosition?ke="Parse error on line "+(wt+1)+`: +`+dt.showPosition()+` +Expecting `+ae.join(", ")+", got '"+(this.terminals_[st]||st)+"'":ke="Parse error on line "+(wt+1)+": Unexpected "+(st==Pt?"end of input":"'"+(this.terminals_[st]||st)+"'"),this.parseError(ke,{text:dt.match,token:this.terminals_[st]||st,line:dt.yylineno,loc:mt,expected:ae})}if(Ct[0]instanceof Array&&Ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+kt+", token: "+st);switch(Ct[0]){case 1:ot.push(st),ut.push(dt.yytext),et.push(dt.yylloc),ot.push(Ct[1]),st=null,Tt?(st=Tt,Tt=null):(Ot=dt.yyleng,it=dt.yytext,wt=dt.yylineno,mt=dt.yylloc,St>0&&St--);break;case 2:if(Ut=this.productions_[Ct[1]][1],Nt.$=ut[ut.length-Ut],Nt._$={first_line:et[et.length-(Ut||1)].first_line,last_line:et[et.length-1].last_line,first_column:et[et.length-(Ut||1)].first_column,last_column:et[et.length-1].last_column},rt&&(Nt._$.range=[et[et.length-(Ut||1)].range[0],et[et.length-1].range[1]]),$t=this.performAction.apply(Nt,[it,Ot,wt,Y.yy,Ct[1],ut,et].concat(_t)),typeof $t<"u")return $t;Ut&&(ot=ot.slice(0,-1*Ut*2),ut=ut.slice(0,-1*Ut),et=et.slice(0,-1*Ut)),ot.push(this.productions_[Ct[1]][0]),ut.push(Nt.$),et.push(Nt._$),zt=Mt[ot[ot.length-2]][ot[ot.length-1]],ot.push(zt);break;case 3:return!0}}return!0},"parse")},J=function(){var H={EOF:1,parseError:o(function(K,ot){if(this.yy.parser)this.yy.parser.parseError(K,ot);else throw new Error(K)},"parseError"),setInput:o(function(q,K){return this.yy=K||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 K=q.match(/(?:\r\n?|\n).*/g);return K?(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 K=q.length,ot=q.split(/(?:\r\n?|\n)/g);this._input=q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-K),this.offset-=K;var ct=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),ot.length-1&&(this.yylineno-=ot.length-1);var ut=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:ot?(ot.length===ct.length?this.yylloc.first_column:0)+ct[ct.length-ot.length].length-ot[0].length:this.yylloc.first_column-K},this.options.ranges&&(this.yylloc.range=[ut[0],ut[0]+this.yyleng-K]),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(),K=new Array(q.length+1).join("-");return q+this.upcomingInput()+` +`+K+"^"},"showPosition"),test_match:o(function(q,K){var ot,ct,ut;if(this.options.backtrack_lexer&&(ut={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&&(ut.yylloc.range=this.yylloc.range.slice(0))),ct=q[0].match(/(?:\r\n?|\n).*/g),ct&&(this.yylineno+=ct.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ct?ct[ct.length-1].length-ct[ct.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],ot=this.performAction.call(this,this.yy,this,K,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ot)return ot;if(this._backtrack){for(var et in ut)this[et]=ut[et];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var q,K,ot,ct;this._more||(this.yytext="",this.match="");for(var ut=this._currentRules(),et=0;etK[0].length)){if(K=ot,ct=et,this.options.backtrack_lexer){if(q=this.test_match(ot,ut[et]),q!==!1)return q;if(this._backtrack){K=!1;continue}else return!1}else if(!this.options.flex)break}return K?(q=this.test_match(K,ut[ct]),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 K=this.next();return K||this.lex()},"lex"),begin:o(function(K){this.conditionStack.push(K)},"begin"),popState:o(function(){var K=this.conditionStack.length-1;return K>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(K){return K=this.conditionStack.length-1-Math.abs(K||0),K>=0?this.conditionStack[K]:"INITIAL"},"topState"),pushState:o(function(K){this.begin(K)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(K,ot,ct,ut){var et=ut;switch(ct){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 ot.yytext=ot.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 ot.yytext=ot.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}();X.lexer=J;function Z(){this.yy={}}return o(Z,"Parser"),Z.prototype=X,X.Parser=Z,new Z}();gP.parser=gP;Gft=gP});function vP(e,t){if(e.links==null)e.links=t;else for(let r in t)e.links[r]=t[r]}function qft(e,t){if(e.properties==null)e.properties=t;else for(let r in t)e.properties[r]=t[r]}function UUt(){Ge.records.currentBox=void 0}var Ge,TUt,yP,kUt,EUt,xi,CUt,SUt,AUt,_Ut,LUt,DUt,RUt,Ux,NUt,MUt,IUt,OUt,PUt,Uft,M0,BUt,FUt,zUt,Vx,$Ut,GUt,Hft,Wft,VUt,Yft,Xft,HUt,jft,xP,Kft=R(()=>{"use strict";Ue();ce();HE();hr();Ci();Ge=new mf(()=>({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})),TUt=o(function(e){Ge.records.boxes.push({name:e.text,wrap:e.wrap??M0(),fill:e.color,actorKeys:[]}),Ge.records.currentBox=Ge.records.boxes.slice(-1)[0]},"addBox"),yP=o(function(e,t,r,n){let i=Ge.records.currentBox,a=Ge.records.actors.get(e);if(a){if(Ge.records.currentBox&&a.box&&Ge.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 '${Ge.records.currentBox.name}' at the same time.`);if(i=a.box?a.box:Ge.records.currentBox,a.box=i,a&&t===a.name&&r==null)return}if(r?.text==null&&(r={text:t,type:n}),(n==null||r.text==null)&&(r={text:t,type:n}),Ge.records.actors.set(e,{box:i,name:t,description:r.text,wrap:r.wrap??M0(),prevActor:Ge.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:n??"participant"}),Ge.records.prevActor){let s=Ge.records.actors.get(Ge.records.prevActor);s&&(s.nextActor=e)}Ge.records.currentBox&&Ge.records.currentBox.actorKeys.push(e),Ge.records.prevActor=e},"addActor"),kUt=o(e=>{let t,r=0;if(!e)return 0;for(t=0;t>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},s}return Ge.records.messages.push({from:e,to:t,message:r?.text??"",wrap:r?.wrap??M0(),type:n,activate:i}),!0},"addSignal"),CUt=o(function(){return Ge.records.boxes.length>0},"hasAtLeastOneBox"),SUt=o(function(){return Ge.records.boxes.some(e=>e.name)},"hasAtLeastOneBoxWithTitle"),AUt=o(function(){return Ge.records.messages},"getMessages"),_Ut=o(function(){return Ge.records.boxes},"getBoxes"),LUt=o(function(){return Ge.records.actors},"getActors"),DUt=o(function(){return Ge.records.createdActors},"getCreatedActors"),RUt=o(function(){return Ge.records.destroyedActors},"getDestroyedActors"),Ux=o(function(e){return Ge.records.actors.get(e)},"getActor"),NUt=o(function(){return[...Ge.records.actors.keys()]},"getActorKeys"),MUt=o(function(){Ge.records.sequenceNumbersEnabled=!0},"enableSequenceNumbers"),IUt=o(function(){Ge.records.sequenceNumbersEnabled=!1},"disableSequenceNumbers"),OUt=o(()=>Ge.records.sequenceNumbersEnabled,"showSequenceNumbers"),PUt=o(function(e){Ge.records.wrapEnabled=e},"setWrap"),Uft=o(e=>{if(e===void 0)return{};e=e.trim();let t=/^:?wrap:/.exec(e)!==null?!0:/^:?nowrap:/.exec(e)!==null?!1:void 0;return{cleanedText:(t===void 0?e:e.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:t}},"extractWrap"),M0=o(()=>Ge.records.wrapEnabled!==void 0?Ge.records.wrapEnabled:pt().sequence?.wrap??!1,"autoWrap"),BUt=o(function(){Ge.reset(),Ar()},"clear"),FUt=o(function(e){let t=e.trim(),{wrap:r,cleanedText:n}=Uft(t),i={text:n,wrap:r};return V.debug(`parseMessage: ${JSON.stringify(i)}`),i},"parseMessage"),zUt=o(function(e){let t=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(e),r=t?.[1]?t[1].trim():"transparent",n=t?.[2]?t[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",r)||(r="transparent",n=e.trim());else{let s=new Option().style;s.color=r,s.color!==r&&(r="transparent",n=e.trim())}let{wrap:i,cleanedText:a}=Uft(n);return{text:a?Zr(a,pt()):void 0,color:r,wrap:i}},"parseBoxData"),Vx={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},$Ut={FILLED:0,OPEN:1},GUt={LEFTOF:0,RIGHTOF:1,OVER:2},Hft=o(function(e,t,r){let n={actor:e,placement:t,message:r.text,wrap:r.wrap??M0()},i=[].concat(e,e);Ge.records.notes.push(n),Ge.records.messages.push({from:i[0],to:i[1],message:r.text,wrap:r.wrap??M0(),type:Vx.NOTE,placement:t})},"addNote"),Wft=o(function(e,t){let r=Ux(e);try{let n=Zr(t.text,pt());n=n.replace(/&/g,"&"),n=n.replace(/=/g,"=");let i=JSON.parse(n);vP(r,i)}catch(n){V.error("error while parsing actor link text",n)}},"addLinks"),VUt=o(function(e,t){let r=Ux(e);try{let n={},i=Zr(t.text,pt()),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,vP(r,n)}catch(n){V.error("error while parsing actor link text",n)}},"addALink");o(vP,"insertLinks");Yft=o(function(e,t){let r=Ux(e);try{let n=Zr(t.text,pt()),i=JSON.parse(n);qft(r,i)}catch(n){V.error("error while parsing actor properties text",n)}},"addProperties");o(qft,"insertProperties");o(UUt,"boxEnd");Xft=o(function(e,t){let r=Ux(e),n=document.getElementById(t.text);try{let i=n.innerHTML,a=JSON.parse(i);a.properties&&qft(r,a.properties),a.links&&vP(r,a.links)}catch(i){V.error("error while parsing actor details text",i)}},"addDetails"),HUt=o(function(e,t){if(e?.properties!==void 0)return e.properties[t]},"getActorProperty"),jft=o(function(e){if(Array.isArray(e))e.forEach(function(t){jft(t)});else switch(e.type){case"sequenceIndex":Ge.records.messages.push({from:void 0,to:void 0,message:{start:e.sequenceIndex,step:e.sequenceIndexStep,visible:e.sequenceVisible},wrap:!1,type:e.signalType});break;case"addParticipant":yP(e.actor,e.actor,e.description,e.draw);break;case"createParticipant":if(Ge.records.actors.has(e.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");Ge.records.lastCreated=e.actor,yP(e.actor,e.actor,e.description,e.draw),Ge.records.createdActors.set(e.actor,Ge.records.messages.length);break;case"destroyParticipant":Ge.records.lastDestroyed=e.actor,Ge.records.destroyedActors.set(e.actor,Ge.records.messages.length);break;case"activeStart":xi(e.actor,void 0,void 0,e.signalType);break;case"activeEnd":xi(e.actor,void 0,void 0,e.signalType);break;case"addNote":Hft(e.actor,e.placement,e.text);break;case"addLinks":Wft(e.actor,e.text);break;case"addALink":VUt(e.actor,e.text);break;case"addProperties":Yft(e.actor,e.text);break;case"addDetails":Xft(e.actor,e.text);break;case"addMessage":if(Ge.records.lastCreated){if(e.to!==Ge.records.lastCreated)throw new Error("The created participant "+Ge.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");Ge.records.lastCreated=void 0}else if(Ge.records.lastDestroyed){if(e.to!==Ge.records.lastDestroyed&&e.from!==Ge.records.lastDestroyed)throw new Error("The destroyed participant "+Ge.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");Ge.records.lastDestroyed=void 0}xi(e.from,e.to,e.msg,e.signalType,e.activate);break;case"boxStart":TUt(e.boxData);break;case"boxEnd":UUt();break;case"loopStart":xi(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":xi(void 0,void 0,void 0,e.signalType);break;case"rectStart":xi(void 0,void 0,e.color,e.signalType);break;case"rectEnd":xi(void 0,void 0,void 0,e.signalType);break;case"optStart":xi(void 0,void 0,e.optText,e.signalType);break;case"optEnd":xi(void 0,void 0,void 0,e.signalType);break;case"altStart":xi(void 0,void 0,e.altText,e.signalType);break;case"else":xi(void 0,void 0,e.altText,e.signalType);break;case"altEnd":xi(void 0,void 0,void 0,e.signalType);break;case"setAccTitle":Mr(e.text);break;case"parStart":xi(void 0,void 0,e.parText,e.signalType);break;case"and":xi(void 0,void 0,e.parText,e.signalType);break;case"parEnd":xi(void 0,void 0,void 0,e.signalType);break;case"criticalStart":xi(void 0,void 0,e.criticalText,e.signalType);break;case"option":xi(void 0,void 0,e.optionText,e.signalType);break;case"criticalEnd":xi(void 0,void 0,void 0,e.signalType);break;case"breakStart":xi(void 0,void 0,e.breakText,e.signalType);break;case"breakEnd":xi(void 0,void 0,void 0,e.signalType);break}},"apply"),xP={addActor:yP,addMessage:EUt,addSignal:xi,addLinks:Wft,addDetails:Xft,addProperties:Yft,autoWrap:M0,setWrap:PUt,enableSequenceNumbers:MUt,disableSequenceNumbers:IUt,showSequenceNumbers:OUt,getMessages:AUt,getActors:LUt,getCreatedActors:DUt,getDestroyedActors:RUt,getActor:Ux,getActorKeys:NUt,getActorProperty:HUt,getAccTitle:Br,getBoxes:_Ut,getDiagramTitle:Jr,setDiagramTitle:cn,getConfig:o(()=>pt().sequence,"getConfig"),clear:BUt,parseMessage:FUt,parseBoxData:zUt,LINETYPE:Vx,ARROWTYPE:$Ut,PLACEMENT:GUt,addNote:Hft,setAccTitle:Mr,apply:jft,setAccDescription:Fr,getAccDescription:zr,hasAtLeastOneBox:CUt,hasAtLeastOneBoxWithTitle:SUt}});var WUt,Qft,Zft=R(()=>{"use strict";WUt=o(e=>`.actor { + stroke: ${e.actorBorder}; + fill: ${e.actorBkg}; + } + + text.actor > tspan { + fill: ${e.actorTextColor}; + stroke: none; + } + + .actor-line { + stroke: ${e.actorLineColor}; + } + + .messageLine0 { + stroke-width: 1.5; + stroke-dasharray: none; + stroke: ${e.signalColor}; + } + + .messageLine1 { + stroke-width: 1.5; + stroke-dasharray: 2, 2; + stroke: ${e.signalColor}; + } + + #arrowhead path { + fill: ${e.signalColor}; + stroke: ${e.signalColor}; + } + + .sequenceNumber { + fill: ${e.sequenceNumberColor}; + } + + #sequencenumber { + fill: ${e.signalColor}; + } + + #crosshead path { + fill: ${e.signalColor}; + stroke: ${e.signalColor}; + } + + .messageText { + fill: ${e.signalTextColor}; + stroke: none; + } + + .labelBox { + stroke: ${e.labelBoxBorderColor}; + fill: ${e.labelBoxBkgColor}; + } + + .labelText, .labelText > tspan { + fill: ${e.labelTextColor}; + stroke: none; + } + + .loopText, .loopText > tspan { + fill: ${e.loopTextColor}; + stroke: none; + } + + .loopLine { + stroke-width: 2px; + stroke-dasharray: 2, 2; + stroke: ${e.labelBoxBorderColor}; + fill: ${e.labelBoxBorderColor}; + } + + .note { + //stroke: #decc93; + stroke: ${e.noteBorderColor}; + fill: ${e.noteBkgColor}; + } + + .noteText, .noteText > tspan { + fill: ${e.noteTextColor}; + stroke: none; + } + + .activation0 { + fill: ${e.activationBkgColor}; + stroke: ${e.activationBorderColor}; + } + + .activation1 { + fill: ${e.activationBkgColor}; + stroke: ${e.activationBorderColor}; + } + + .activation2 { + fill: ${e.activationBkgColor}; + stroke: ${e.activationBorderColor}; + } + + .actorPopupMenu { + position: absolute; + } + + .actorPopupMenuPanel { + position: absolute; + fill: ${e.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: ${e.actorBorder}; + fill: ${e.actorBkg}; + } + .actor-man circle, line { + stroke: ${e.actorBorder}; + fill: ${e.actorBkg}; + stroke-width: 2px; + } +`,"getStyles"),Qft=WUt});var bP,wf,tdt,edt,YUt,Jft,wP,qUt,XUt,Hx,I0,rdt,Yc,TP,jUt,KUt,QUt,ZUt,JUt,tHt,eHt,ndt,rHt,nHt,iHt,aHt,sHt,oHt,lHt,idt,cHt,kP,uHt,hi,adt=R(()=>{"use strict";hr();lv();_r();bP=Qi(Qp(),1);js();wf=18*2,tdt="actor-top",edt="actor-bottom",YUt="actor-box",Jft="actor-man",wP=o(function(e,t){return Td(e,t)},"drawRect"),qUt=o(function(e,t,r,n,i){if(t.links===void 0||t.links===null||Object.keys(t.links).length===0)return{height:0,width:0};let a=t.links,s=t.actorCnt,l=t.rectData;var u="none";i&&(u="block !important");let h=e.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,bP.sanitizeUrl)(a[v]);g.attr("xlink:href",y),g.attr("target","_blank"),uHt(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"),XUt=o(function(e){return"var pu = document.getElementById('"+e+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),Hx=o(async function(e,t,r=null){let n=e.append("foreignObject"),i=await vh(t.text,Nr()),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)),t.class==="noteText"){let l=e.node().firstChild;l.setAttribute("height",s.height+2*t.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)),t.class==="loopText"?n.attr("y",Math.round(h)):n.attr("y",Math.round(h-s.height))}return[n]},"drawKatex"),I0=o(function(e,t){let r=0,n=0,i=t.text.split(Yt.lineBreakRegex),[a,s]=Tc(t.fontSize),l=[],u=0,h=o(()=>t.y,"yfunc");if(t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0)switch(t.valign){case"top":case"start":h=o(()=>Math.round(t.y+t.textMargin),"yfunc");break;case"middle":case"center":h=o(()=>Math.round(t.y+(r+n+t.textMargin)/2),"yfunc");break;case"bottom":case"end":h=o(()=>Math.round(t.y+(r+n+2*t.textMargin)-t.textMargin),"yfunc");break}if(t.anchor!==void 0&&t.textMargin!==void 0&&t.width!==void 0)switch(t.anchor){case"left":case"start":t.x=Math.round(t.x+t.textMargin),t.anchor="start",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"middle":case"center":t.x=Math.round(t.x+t.width/2),t.anchor="middle",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"right":case"end":t.x=Math.round(t.x+t.width-t.textMargin),t.anchor="end",t.dominantBaseline="middle",t.alignmentBaseline="middle";break}for(let[f,d]of i.entries()){t.textMargin!==void 0&&t.textMargin===0&&a!==void 0&&(u=f*a);let p=e.append("text");p.attr("x",t.x),p.attr("y",h()),t.anchor!==void 0&&p.attr("text-anchor",t.anchor).attr("dominant-baseline",t.dominantBaseline).attr("alignment-baseline",t.alignmentBaseline),t.fontFamily!==void 0&&p.style("font-family",t.fontFamily),s!==void 0&&p.style("font-size",s),t.fontWeight!==void 0&&p.style("font-weight",t.fontWeight),t.fill!==void 0&&p.attr("fill",t.fill),t.class!==void 0&&p.attr("class",t.class),t.dy!==void 0?p.attr("dy",t.dy):u!==0&&p.attr("dy",u);let m=d||B9;if(t.tspan){let g=p.append("tspan");g.attr("x",t.x),t.fill!==void 0&&g.attr("fill",t.fill),g.text(m)}else p.text(m);t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0&&(n+=(p._groups||p)[0][0].getBBox().height,r=n),l.push(p)}return l},"drawText"),rdt=o(function(e,t){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=e.append("polygon");return n.attr("points",r(t.x,t.y,t.width,t.height,7)),n.attr("class","labelBox"),t.y=t.y+t.height/2,I0(e,t),n},"drawLabel"),Yc=-1,TP=o((e,t,r,n)=>{e.select&&r.forEach(i=>{let a=t.get(i),s=e.select("#actor"+a.actorCnt);!n.mirrorActors&&a.stopy?s.attr("y2",a.stopy+a.height/2):n.mirrorActors&&s.attr("y2",a.stopy)})},"fixLifeLineHeights"),jUt=o(function(e,t,r,n){let i=n?t.stopy:t.starty,a=t.x+t.width/2,s=i+t.height,l=e.append("g").lower();var u=l;n||(Yc++,Object.keys(t.links||{}).length&&!r.forceMenus&&u.attr("onclick",XUt(`actor${Yc}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Yc).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",t.name),u=l.append("g"),t.actorCnt=Yc,t.links!=null&&u.attr("id","root-"+Yc));let h=Sl();var f="actor";t.properties?.class?f=t.properties.class:h.fill="#eaeaea",n?f+=` ${edt}`:f+=` ${tdt}`,h.x=t.x,h.y=i,h.width=t.width,h.height=t.height,h.class=f,h.rx=3,h.ry=3,h.name=t.name;let d=wP(u,h);if(t.rectData=h,t.properties?.icon){let m=t.properties.icon.trim();m.charAt(0)==="@"?Tq(u,h.x+h.width-20,h.y+10,m.substr(1)):wq(u,h.x+h.width-20,h.y+10,m)}kP(r,Pi(t.description))(t.description,u,h.x,h.y,h.width,h.height,{class:`actor ${YUt}`},r);let p=t.height;if(d.node){let m=d.node().getBBox();t.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),KUt=o(function(e,t,r,n){let i=n?t.stopy:t.starty,a=t.x+t.width/2,s=i+80,l=e.append("g").lower();n||(Yc++,l.append("line").attr("id","actor"+Yc).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",t.name),t.actorCnt=Yc);let u=e.append("g"),h=Jft;n?h+=` ${edt}`:h+=` ${tdt}`,u.attr("class",h),u.attr("name",t.name);let f=Sl();f.x=t.x,f.y=i,f.fill="#eaeaea",f.width=t.width,f.height=t.height,f.class="actor",f.rx=3,f.ry=3,u.append("line").attr("id","actor-man-torso"+Yc).attr("x1",a).attr("y1",i+25).attr("x2",a).attr("y2",i+45),u.append("line").attr("id","actor-man-arms"+Yc).attr("x1",a-wf/2).attr("y1",i+33).attr("x2",a+wf/2).attr("y2",i+33),u.append("line").attr("x1",a-wf/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+wf/2-2).attr("y2",i+60);let d=u.append("circle");d.attr("cx",t.x+t.width/2),d.attr("cy",i+10),d.attr("r",15),d.attr("width",t.width),d.attr("height",t.height);let p=u.node().getBBox();return t.height=p.height,kP(r,Pi(t.description))(t.description,u,f.x,f.y+35,f.width,f.height,{class:`actor ${Jft}`},r),t.height},"drawActorTypeActor"),QUt=o(async function(e,t,r,n){switch(t.type){case"actor":return await KUt(e,t,r,n);case"participant":return await jUt(e,t,r,n)}},"drawActor"),ZUt=o(function(e,t,r){let i=e.append("g");ndt(i,t),t.name&&kP(r)(t.name,i,t.x,t.y+(t.textMaxHeight||0)/2,t.width,0,{class:"text"},r),i.lower()},"drawBox"),JUt=o(function(e){return e.append("g")},"anchorElement"),tHt=o(function(e,t,r,n,i){let a=Sl(),s=t.anchored;a.x=t.startx,a.y=t.starty,a.class="activation"+i%3,a.width=t.stopx-t.startx,a.height=r-t.starty,wP(s,a)},"drawActivation"),eHt=o(async function(e,t,r,n){let{boxMargin:i,boxTextMargin:a,labelBoxHeight:s,labelBoxWidth:l,messageFontFamily:u,messageFontSize:h,messageFontWeight:f}=n,d=e.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(t.startx,t.starty,t.stopx,t.starty),p(t.stopx,t.starty,t.stopx,t.stopy),p(t.startx,t.stopy,t.stopx,t.stopy),p(t.startx,t.starty,t.startx,t.stopy),t.sections!==void 0&&t.sections.forEach(function(y){p(t.startx,y.y,t.stopx,y.y).style("stroke-dasharray","3, 3")});let m=ov();m.text=r,m.x=t.startx,m.y=t.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",rdt(d,m),m=idt(),m.text=t.title,m.x=t.startx+l/2+(t.stopx-t.startx)/2,m.y=t.starty+i+a,m.anchor="middle",m.valign="middle",m.textMargin=a,m.class="loopText",m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=!0;let g=Pi(m.text)?await Hx(d,m,t):I0(d,m);if(t.sectionTitles!==void 0){for(let[y,v]of Object.entries(t.sectionTitles))if(v.message){m.text=v.message,m.x=t.startx+(t.stopx-t.startx)/2,m.y=t.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=t.wrap,Pi(m.text)?(t.starty=t.sections[y].y,await Hx(d,m,t)):I0(d,m);let x=Math.round(g.map(b=>(b._groups||b)[0][0].getBBox().height).reduce((b,w)=>b+w));t.sections[y].height+=x-(i+a)}}return t.height=Math.round(t.stopy-t.starty),d},"drawLoop"),ndt=o(function(e,t){m5(e,t)},"drawBackgroundRect"),rHt=o(function(e){e.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"),nHt=o(function(e){e.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"),iHt=o(function(e){e.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"),aHt=o(function(e){e.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"),sHt=o(function(e){e.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"),oHt=o(function(e){e.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"),lHt=o(function(e){e.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"),idt=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"),cHt=o(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),kP=function(){function e(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(e,"byText");function t(a,s,l,u,h,f,d,p){let{actorFontSize:m,actorFontFamily:g,actorFontWeight:y}=p,[v,x]=Tc(m),b=a.split(Yt.lineBreakRegex);for(let w=0;w{let s=O0(Rt),l=a.actorKeys.reduce((f,d)=>f+=e.get(d).width+(e.get(d).margin||0),0);l-=2*Rt.boxTextMargin,a.wrap&&(a.name=Oe.wrapLabel(a.name,l-2*Rt.wrapPadding,s));let u=Oe.calculateTextDimensions(a.name,s);i=Yt.getMax(u.height,i);let h=Yt.getMax(l,u.width+2*Rt.wrapPadding);if(a.margin=Rt.boxTextMargin,la.textMaxHeight=i),Yt.getMax(n,Rt.height)}var Rt,re,hHt,O0,Qg,EP,dHt,pHt,CP,odt,ldt,h6,sdt,gHt,vHt,bHt,wHt,THt,cdt,udt=R(()=>{"use strict";ur();adt();ce();hr();lv();Ue();yp();_r();Jn();Rt={},re={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(e=>e.height||0))+(this.loops.length===0?0:this.loops.map(e=>e.height||0).reduce((e,t)=>e+t))+(this.messages.length===0?0:this.messages.map(e=>e.height||0).reduce((e,t)=>e+t))+(this.notes.length===0?0:this.notes.map(e=>e.height||0).reduce((e,t)=>e+t))},"getHeight"),clear:o(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:o(function(e){this.boxes.push(e)},"addBox"),addActor:o(function(e){this.actors.push(e)},"addActor"),addLoop:o(function(e){this.loops.push(e)},"addLoop"),addMessage:o(function(e){this.messages.push(e)},"addMessage"),addNote:o(function(e){this.notes.push(e)},"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,ldt(pt())},"init"),updateVal:o(function(e,t,r,n){e[t]===void 0?e[t]=r:e[t]=n(r,e[t])},"updateVal"),updateBounds:o(function(e,t,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",t-f*Rt.boxMargin,Math.min),i.updateVal(h,"stopy",n+f*Rt.boxMargin,Math.max),i.updateVal(re.data,"startx",e-f*Rt.boxMargin,Math.min),i.updateVal(re.data,"stopx",r+f*Rt.boxMargin,Math.max),l!=="activation"&&(i.updateVal(h,"startx",e-f*Rt.boxMargin,Math.min),i.updateVal(h,"stopx",r+f*Rt.boxMargin,Math.max),i.updateVal(re.data,"starty",t-f*Rt.boxMargin,Math.min),i.updateVal(re.data,"stopy",n+f*Rt.boxMargin,Math.max))},"updateItemBounds")}o(s,"updateFn"),this.sequenceItems.forEach(s()),this.activations.forEach(s("activation"))},"updateBounds"),insert:o(function(e,t,r,n){let i=Yt.getMin(e,r),a=Yt.getMax(e,r),s=Yt.getMin(t,n),l=Yt.getMax(t,n);this.updateVal(re.data,"startx",i,Math.min),this.updateVal(re.data,"starty",s,Math.min),this.updateVal(re.data,"stopx",a,Math.max),this.updateVal(re.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),newActivation:o(function(e,t,r){let n=r.get(e.from),i=h6(e.from).length||0,a=n.x+n.width/2+(i-1)*Rt.activationWidth/2;this.activations.push({startx:a,starty:this.verticalPos+2,stopx:a+Rt.activationWidth,stopy:void 0,actor:e.from,anchored:hi.anchorElement(t)})},"newActivation"),endActivation:o(function(e){let t=this.activations.map(function(r){return r.actor}).lastIndexOf(e.from);return this.activations.splice(t,1)[0]},"endActivation"),createLoop:o(function(e={message:void 0,wrap:!1,width:void 0},t){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:e.message,wrap:e.wrap,width:e.width,height:0,fill:t}},"createLoop"),newLoop:o(function(e={message:void 0,wrap:!1,width:void 0},t){this.sequenceItems.push(this.createLoop(e,t))},"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(e){let t=this.sequenceItems.pop();t.sections=t.sections||[],t.sectionTitles=t.sectionTitles||[],t.sections.push({y:re.getVerticalPos(),height:0}),t.sectionTitles.push(e),this.sequenceItems.push(t)},"addSectionToLoop"),saveVerticalPos:o(function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},"saveVerticalPos"),resetVerticalPos:o(function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},"resetVerticalPos"),bumpVerticalPos:o(function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=Yt.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")},hHt=o(async function(e,t){re.bumpVerticalPos(Rt.boxMargin),t.height=Rt.boxMargin,t.starty=re.getVerticalPos();let r=Sl();r.x=t.startx,r.y=t.starty,r.width=t.width||Rt.width,r.class="note";let n=e.append("g"),i=hi.drawRect(n,r),a=ov();a.x=t.startx,a.y=t.starty,a.width=r.width,a.dy="1em",a.text=t.message,a.class="noteText",a.fontFamily=Rt.noteFontFamily,a.fontSize=Rt.noteFontSize,a.fontWeight=Rt.noteFontWeight,a.anchor=Rt.noteAlign,a.textMargin=Rt.noteMargin,a.valign="center";let s=Pi(a.text)?await Hx(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*Rt.noteMargin),t.height+=l+2*Rt.noteMargin,re.bumpVerticalPos(l+2*Rt.noteMargin),t.stopy=t.starty+l+2*Rt.noteMargin,t.stopx=t.startx+r.width,re.insert(t.startx,t.starty,t.stopx,t.stopy),re.models.addNote(t)},"drawNote"),O0=o(e=>({fontFamily:e.messageFontFamily,fontSize:e.messageFontSize,fontWeight:e.messageFontWeight}),"messageFont"),Qg=o(e=>({fontFamily:e.noteFontFamily,fontSize:e.noteFontSize,fontWeight:e.noteFontWeight}),"noteFont"),EP=o(e=>({fontFamily:e.actorFontFamily,fontSize:e.actorFontSize,fontWeight:e.actorFontWeight}),"actorFont");o(fHt,"boundMessage");dHt=o(async function(e,t,r,n){let{startx:i,stopx:a,starty:s,message:l,type:u,sequenceIndex:h,sequenceVisible:f}=t,d=Oe.calculateTextDimensions(l,O0(Rt)),p=ov();p.x=i,p.y=s+10,p.width=a-i,p.class="messageText",p.dy="1em",p.text=l,p.fontFamily=Rt.messageFontFamily,p.fontSize=Rt.messageFontSize,p.fontWeight=Rt.messageFontWeight,p.anchor=Rt.messageAlign,p.valign="center",p.textMargin=Rt.wrapPadding,p.tspan=!1,Pi(p.text)?await Hx(e,p,{startx:i,stopx:a,starty:r}):I0(e,p);let m=d.width,g;i===a?Rt.rightAngles?g=e.append("path").attr("d",`M ${i},${r} H ${i+Yt.getMax(Rt.width/2,m/2)} V ${r+25} H ${i}`):g=e.append("path").attr("d","M "+i+","+r+" C "+(i+60)+","+(r-10)+" "+(i+60)+","+(r+30)+" "+i+","+(r+20)):(g=e.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="";Rt.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||Rt.showSequenceNumbers)&&(g.attr("marker-start","url("+y+"#sequencenumber)"),e.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"),pHt=o(function(e,t,r,n,i,a,s){let l=0,u=0,h,f=0;for(let d of n){let p=t.get(d),m=p.box;h&&h!=m&&(s||re.models.addBox(h),u+=Rt.boxMargin+h.margin),m&&m!=h&&(s||(m.x=l+u,m.y=i),u+=m.margin),p.width=p.width||Rt.width,p.height=Yt.getMax(p.height||Rt.height,Rt.height),p.margin=p.margin||Rt.actorMargin,f=Yt.getMax(f,p.height),r.get(p.name)&&(u+=p.width/2),p.x=l+u,p.starty=re.getVerticalPos(),re.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,re.models.addActor(p)}h&&!s&&re.models.addBox(h),re.bumpVerticalPos(f)},"addActorRenderingData"),CP=o(async function(e,t,r,n){if(n){let i=0;re.bumpVerticalPos(Rt.boxMargin*2);for(let a of r){let s=t.get(a);s.stopy||(s.stopy=re.getVerticalPos());let l=await hi.drawActor(e,s,Rt,!0);i=Yt.getMax(i,l)}re.bumpVerticalPos(i+Rt.boxMargin)}else for(let i of r){let a=t.get(i);await hi.drawActor(e,a,Rt,!1)}},"drawActors"),odt=o(function(e,t,r,n){let i=0,a=0;for(let s of r){let l=t.get(s),u=vHt(l),h=hi.drawPopup(e,l,u,Rt,Rt.forceMenus,n);h.height>i&&(i=h.height),h.width+l.x>a&&(a=h.width+l.x)}return{maxHeight:i,maxWidth:a}},"drawActorsPopup"),ldt=o(function(e){Vn(Rt,e),e.fontFamily&&(Rt.actorFontFamily=Rt.noteFontFamily=Rt.messageFontFamily=e.fontFamily),e.fontSize&&(Rt.actorFontSize=Rt.noteFontSize=Rt.messageFontSize=e.fontSize),e.fontWeight&&(Rt.actorFontWeight=Rt.noteFontWeight=Rt.messageFontWeight=e.fontWeight)},"setConf"),h6=o(function(e){return re.activations.filter(function(t){return t.actor===e})},"actorActivations"),sdt=o(function(e,t){let r=t.get(e),n=h6(e),i=n.reduce(function(s,l){return Yt.getMin(s,l.startx)},r.x+r.width/2-1),a=n.reduce(function(s,l){return Yt.getMax(s,l.stopx)},r.x+r.width/2+1);return[i,a]},"activationBounds");o(qc,"adjustLoopHeightForWrap");o(mHt,"adjustCreatedDestroyedData");gHt=o(async function(e,t,r,n){let{securityLevel:i,sequence:a}=pt();Rt=a;let s;i==="sandbox"&&(s=Gt("#i"+t));let l=i==="sandbox"?Gt(s.nodes()[0].contentDocument.body):Gt("body"),u=i==="sandbox"?s.nodes()[0].contentDocument:document;re.init(),V.debug(n.db);let h=i==="sandbox"?l.select(`[id="${t}"]`):Gt(`[id="${t}"]`),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 yHt(f,y,n);if(Rt.height=await xHt(f,w,m),hi.insertComputerIcon(h),hi.insertDatabaseIcon(h),hi.insertClockIcon(h),x&&(re.bumpVerticalPos(Rt.boxMargin),b&&re.bumpVerticalPos(m[0].textMaxHeight)),Rt.hideUnusedParticipants===!0){let F=new Set;y.forEach(B=>{F.add(B.from),F.add(B.to)}),g=g.filter(B=>F.has(B))}pHt(h,f,d,g,0,y,!1);let S=await THt(y,f,w,n);hi.insertArrowHead(h),hi.insertArrowCrossHead(h),hi.insertArrowFilledHead(h),hi.insertSequenceNumber(h);function T(F,B){let G=re.endActivation(F);G.starty+18>B&&(G.starty=B-6,B+=12),hi.drawActivation(h,G,B,Rt,h6(F.from).length),re.insert(G.startx,B-10,G.stopx,B)}o(T,"activeEnd");let E=1,_=1,A=[],L=[],M=0;for(let F of y){let B,G,z;switch(F.type){case n.db.LINETYPE.NOTE:re.resetVerticalPos(),G=F.noteModel,await hHt(h,G);break;case n.db.LINETYPE.ACTIVE_START:re.newActivation(F,h,f);break;case n.db.LINETYPE.ACTIVE_END:T(F,re.getVerticalPos());break;case n.db.LINETYPE.LOOP_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.LOOP_END:B=re.endLoop(),await hi.drawLoop(h,B,"loop",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.RECT_START:qc(S,F,Rt.boxMargin,Rt.boxMargin,W=>re.newLoop(void 0,W.message));break;case n.db.LINETYPE.RECT_END:B=re.endLoop(),L.push(B),re.models.addLoop(B),re.bumpVerticalPos(B.stopy-re.getVerticalPos());break;case n.db.LINETYPE.OPT_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.OPT_END:B=re.endLoop(),await hi.drawLoop(h,B,"opt",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.ALT_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.ALT_ELSE:qc(S,F,Rt.boxMargin+Rt.boxTextMargin,Rt.boxMargin,W=>re.addSectionToLoop(W));break;case n.db.LINETYPE.ALT_END:B=re.endLoop(),await hi.drawLoop(h,B,"alt",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W)),re.saveVerticalPos();break;case n.db.LINETYPE.PAR_AND:qc(S,F,Rt.boxMargin+Rt.boxTextMargin,Rt.boxMargin,W=>re.addSectionToLoop(W));break;case n.db.LINETYPE.PAR_END:B=re.endLoop(),await hi.drawLoop(h,B,"par",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.AUTONUMBER:E=F.message.start||E,_=F.message.step||_,F.message.visible?n.db.enableSequenceNumbers():n.db.disableSequenceNumbers();break;case n.db.LINETYPE.CRITICAL_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.CRITICAL_OPTION:qc(S,F,Rt.boxMargin+Rt.boxTextMargin,Rt.boxMargin,W=>re.addSectionToLoop(W));break;case n.db.LINETYPE.CRITICAL_END:B=re.endLoop(),await hi.drawLoop(h,B,"critical",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;case n.db.LINETYPE.BREAK_START:qc(S,F,Rt.boxMargin,Rt.boxMargin+Rt.boxTextMargin,W=>re.newLoop(W));break;case n.db.LINETYPE.BREAK_END:B=re.endLoop(),await hi.drawLoop(h,B,"break",Rt),re.bumpVerticalPos(B.stopy-re.getVerticalPos()),re.models.addLoop(B);break;default:try{z=F.msgModel,z.starty=re.getVerticalPos(),z.sequenceIndex=E,z.sequenceVisible=n.db.showSequenceNumbers();let W=await fHt(h,z);mHt(F,z,W,M,f,d,p),A.push({messageModel:z,lineStartY:W}),re.models.addMessage(z)}catch(W){V.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+_),M++}V.debug("createdActors",d),V.debug("destroyedActors",p),await CP(h,f,g,!1);for(let F of A)await dHt(h,F.messageModel,F.lineStartY,n);Rt.mirrorActors&&await CP(h,f,g,!0),L.forEach(F=>hi.drawBackgroundRect(h,F)),TP(h,f,g,Rt);for(let F of re.models.boxes)F.height=re.getVerticalPos()-F.y,re.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)",hi.drawBox(h,F,Rt);x&&re.bumpVerticalPos(Rt.boxMargin);let N=odt(h,f,g,u),{bounds:k}=re.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 I=k.stopy-k.starty;I2,d=o(y=>l?-y:y,"adjustValue");e.from===e.to?h=u:(e.activate&&!f&&(h+=d(Rt.activationWidth/2-1)),[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN].includes(e.type)||(h+=d(3)),[r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(e.type)&&(u-=d(3)));let p=[n,i,a,s],m=Math.abs(u-h);e.wrap&&e.message&&(e.message=Oe.wrapLabel(e.message,Yt.getMax(m+2*Rt.wrapPadding,Rt.width),O0(Rt)));let g=Oe.calculateTextDimensions(e.message,O0(Rt));return{width:Yt.getMax(e.wrap?0:g.width+2*Rt.wrapPadding,m+2*Rt.wrapPadding,Rt.width),height:0,startx:u,stopx:h,starty:0,stopy:0,message:e.message,type:e.type,wrap:e.wrap,fromBounds:Math.min.apply(null,p),toBounds:Math.max.apply(null,p)}},"buildMessageModel"),THt=o(async function(e,t,r,n){let i={},a=[],s,l,u;for(let h of e){switch(h.id=Oe.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=t.get(h.from?h.from:h.to.actor),p=h6(h.from?h.from:h.to.actor).length,m=d.x+d.width/2+(p-1)*Rt.activationWidth/2,g={startx:m,stopx:m+Rt.activationWidth,actor:h.from,enabled:!0};re.activations.push(g)}break;case n.db.LINETYPE.ACTIVE_END:{let d=re.activations.map(p=>p.actor).lastIndexOf(h.from);re.activations.splice(d,1).splice(0,1)}break}h.placement!==void 0?(l=await bHt(h,t,n),h.noteModel=l,a.forEach(d=>{s=d,s.from=Yt.getMin(s.from,l.startx),s.to=Yt.getMax(s.to,l.startx+l.width),s.width=Yt.getMax(s.width,Math.abs(s.from-s.to))-Rt.labelBoxWidth})):(u=wHt(h,t,n),h.msgModel=u,u.startx&&u.stopx&&a.length>0&&a.forEach(d=>{if(s=d,u.startx===u.stopx){let p=t.get(h.from),m=t.get(h.to);s.from=Yt.getMin(p.x-u.width/2,p.x-p.width/2,s.from),s.to=Yt.getMax(m.x+u.width/2,m.x+p.width/2,s.to),s.width=Yt.getMax(s.width,Math.abs(s.to-s.from))-Rt.labelBoxWidth}else s.from=Yt.getMin(u.startx,s.from),s.to=Yt.getMax(u.stopx,s.to),s.width=Yt.getMax(s.width,u.width)-Rt.labelBoxWidth}))}return re.activations=[],V.debug("Loop type widths:",i),i},"calculateLoopBounds"),cdt={bounds:re,drawActors:CP,drawActorsPopup:odt,setConf:ldt,draw:gHt}});var hdt={};xr(hdt,{diagram:()=>kHt});var kHt,fdt=R(()=>{"use strict";Vft();Kft();Zft();udt();kHt={parser:Gft,db:xP,renderer:cdt,styles:Qft,init:o(({wrap:e})=>{xP.setWrap(e)},"init")}});var SP,f6,AP=R(()=>{"use strict";SP=function(){var e=o(function(Pt,_t,dt,Y){for(dt=dt||{},Y=Pt.length;Y--;dt[Pt[Y]]=_t);return dt},"o"),t=[1,17],r=[1,18],n=[1,19],i=[1,39],a=[1,40],s=[1,25],l=[1,23],u=[1,24],h=[1,31],f=[1,32],d=[1,33],p=[1,34],m=[1,35],g=[1,36],y=[1,26],v=[1,27],x=[1,28],b=[1,29],w=[1,43],S=[1,30],T=[1,42],E=[1,44],_=[1,41],A=[1,45],L=[1,9],M=[1,8,9],N=[1,56],k=[1,57],I=[1,58],C=[1,59],O=[1,60],D=[1,61],P=[1,62],F=[1,8,9,40],B=[1,74],G=[1,8,9,12,13,22,38,40,43,60,61,62,63,64,65,66,71,73],z=[1,8,9,12,13,17,20,22,38,40,43,47,60,61,62,63,64,65,66,71,73,75,81,96,98,99],W=[13,75,81,96,98,99],Q=[13,65,66,75,81,96,98,99],j=[13,60,61,62,63,64,75,81,96,98,99],at=[1,94],X=[1,111],J=[1,109],Z=[1,103],H=[1,104],q=[1,105],K=[1,106],ot=[1,107],ct=[1,108],ut=[1,110],et=[1,8,9,38,40,43],Mt=[1,8,9,22],it=[1,8,9,79],wt=[1,8,9,22,74,75,79,81,82,83,84,85,86],Ot={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,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,namespaceIdentifier:37,STRUCT_START:38,classStatements:39,STRUCT_STOP:40,NAMESPACE:41,classIdentifier:42,STYLE_SEPARATOR:43,members:44,CLASS:45,ANNOTATION_START:46,ANNOTATION_END:47,MEMBER:48,SEPARATOR:49,relation:50,NOTE_FOR:51,noteText:52,NOTE:53,direction_tb:54,direction_bt:55,direction_rl:56,direction_lr:57,relationType:58,lineType:59,AGGREGATION:60,EXTENSION:61,COMPOSITION:62,DEPENDENCY:63,LOLLIPOP:64,LINE:65,DOTTED_LINE:66,CALLBACK:67,LINK:68,LINK_TARGET:69,CLICK:70,CALLBACK_NAME:71,CALLBACK_ARGS:72,HREF:73,STYLE:74,ALPHA:75,stylesOpt:76,CSSCLASS:77,style:78,COMMA:79,styleComponent:80,NUM:81,COLON:82,UNIT:83,SPACE:84,BRKT:85,PCT:86,commentToken:87,textToken:88,graphCodeTokens:89,textNoTagsToken:90,TAGSTART:91,TAGEND:92,"==":93,"--":94,DEFAULT:95,MINUS:96,keywords:97,UNICODE_TEXT:98,BQUOTE_STR:99,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",17:"DOT",20:"GENERICTYPE",22:"LABEL",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",38:"STRUCT_START",40:"STRUCT_STOP",41:"NAMESPACE",43:"STYLE_SEPARATOR",45:"CLASS",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"MEMBER",49:"SEPARATOR",51:"NOTE_FOR",53:"NOTE",54:"direction_tb",55:"direction_bt",56:"direction_rl",57:"direction_lr",60:"AGGREGATION",61:"EXTENSION",62:"COMPOSITION",63:"DEPENDENCY",64:"LOLLIPOP",65:"LINE",66:"DOTTED_LINE",67:"CALLBACK",68:"LINK",69:"LINK_TARGET",70:"CLICK",71:"CALLBACK_NAME",72:"CALLBACK_ARGS",73:"HREF",74:"STYLE",75:"ALPHA",77:"CSSCLASS",79:"COMMA",81:"NUM",82:"COLON",83:"UNIT",84:"SPACE",85:"BRKT",86:"PCT",89:"graphCodeTokens",91:"TAGSTART",92:"TAGEND",93:"==",94:"--",95:"DEFAULT",96:"MINUS",97:"keywords",98:"UNICODE_TEXT",99:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,3],[15,2],[18,1],[18,3],[18,1],[18,2],[18,2],[18,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[37,2],[39,1],[39,2],[39,3],[24,1],[24,3],[24,4],[24,6],[42,2],[42,3],[26,4],[44,1],[44,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,1],[31,1],[31,1],[31,1],[50,3],[50,2],[50,2],[50,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[76,1],[76,3],[78,1],[78,2],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[87,1],[87,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[90,1],[90,1],[90,1],[90,1],[16,1],[16,1],[16,1],[16,1],[19,1],[52,1]],performAction:o(function(_t,dt,Y,ft,mt,rt,ht){var nt=rt.length-1;switch(mt){case 8:this.$=rt[nt-1];break;case 9:case 12:case 14:this.$=rt[nt];break;case 10:case 13:this.$=rt[nt-2]+"."+rt[nt];break;case 11:case 15:this.$=rt[nt-1]+rt[nt];break;case 16:case 17:this.$=rt[nt-1]+"~"+rt[nt]+"~";break;case 18:ft.addRelation(rt[nt]);break;case 19:rt[nt-1].title=ft.cleanupLabel(rt[nt]),ft.addRelation(rt[nt-1]);break;case 29:this.$=rt[nt].trim(),ft.setAccTitle(this.$);break;case 30:case 31:this.$=rt[nt].trim(),ft.setAccDescription(this.$);break;case 32:ft.addClassesToNamespace(rt[nt-3],rt[nt-1]);break;case 33:ft.addClassesToNamespace(rt[nt-4],rt[nt-1]);break;case 34:this.$=rt[nt],ft.addNamespace(rt[nt]);break;case 35:this.$=[rt[nt]];break;case 36:this.$=[rt[nt-1]];break;case 37:rt[nt].unshift(rt[nt-2]),this.$=rt[nt];break;case 39:ft.setCssClass(rt[nt-2],rt[nt]);break;case 40:ft.addMembers(rt[nt-3],rt[nt-1]);break;case 41:ft.setCssClass(rt[nt-5],rt[nt-3]),ft.addMembers(rt[nt-5],rt[nt-1]);break;case 42:this.$=rt[nt],ft.addClass(rt[nt]);break;case 43:this.$=rt[nt-1],ft.addClass(rt[nt-1]),ft.setClassLabel(rt[nt-1],rt[nt]);break;case 44:ft.addAnnotation(rt[nt],rt[nt-2]);break;case 45:this.$=[rt[nt]];break;case 46:rt[nt].push(rt[nt-1]),this.$=rt[nt];break;case 47:break;case 48:ft.addMember(rt[nt-1],ft.cleanupLabel(rt[nt]));break;case 49:break;case 50:break;case 51:this.$={id1:rt[nt-2],id2:rt[nt],relation:rt[nt-1],relationTitle1:"none",relationTitle2:"none"};break;case 52:this.$={id1:rt[nt-3],id2:rt[nt],relation:rt[nt-1],relationTitle1:rt[nt-2],relationTitle2:"none"};break;case 53:this.$={id1:rt[nt-3],id2:rt[nt],relation:rt[nt-2],relationTitle1:"none",relationTitle2:rt[nt-1]};break;case 54:this.$={id1:rt[nt-4],id2:rt[nt],relation:rt[nt-2],relationTitle1:rt[nt-3],relationTitle2:rt[nt-1]};break;case 55:ft.addNote(rt[nt],rt[nt-1]);break;case 56:ft.addNote(rt[nt]);break;case 57:ft.setDirection("TB");break;case 58:ft.setDirection("BT");break;case 59:ft.setDirection("RL");break;case 60:ft.setDirection("LR");break;case 61:this.$={type1:rt[nt-2],type2:rt[nt],lineType:rt[nt-1]};break;case 62:this.$={type1:"none",type2:rt[nt],lineType:rt[nt-1]};break;case 63:this.$={type1:rt[nt-1],type2:"none",lineType:rt[nt]};break;case 64:this.$={type1:"none",type2:"none",lineType:rt[nt]};break;case 65:this.$=ft.relationType.AGGREGATION;break;case 66:this.$=ft.relationType.EXTENSION;break;case 67:this.$=ft.relationType.COMPOSITION;break;case 68:this.$=ft.relationType.DEPENDENCY;break;case 69:this.$=ft.relationType.LOLLIPOP;break;case 70:this.$=ft.lineType.LINE;break;case 71:this.$=ft.lineType.DOTTED_LINE;break;case 72:case 78:this.$=rt[nt-2],ft.setClickEvent(rt[nt-1],rt[nt]);break;case 73:case 79:this.$=rt[nt-3],ft.setClickEvent(rt[nt-2],rt[nt-1]),ft.setTooltip(rt[nt-2],rt[nt]);break;case 74:this.$=rt[nt-2],ft.setLink(rt[nt-1],rt[nt]);break;case 75:this.$=rt[nt-3],ft.setLink(rt[nt-2],rt[nt-1],rt[nt]);break;case 76:this.$=rt[nt-3],ft.setLink(rt[nt-2],rt[nt-1]),ft.setTooltip(rt[nt-2],rt[nt]);break;case 77:this.$=rt[nt-4],ft.setLink(rt[nt-3],rt[nt-2],rt[nt]),ft.setTooltip(rt[nt-3],rt[nt-1]);break;case 80:this.$=rt[nt-3],ft.setClickEvent(rt[nt-2],rt[nt-1],rt[nt]);break;case 81:this.$=rt[nt-4],ft.setClickEvent(rt[nt-3],rt[nt-2],rt[nt-1]),ft.setTooltip(rt[nt-3],rt[nt]);break;case 82:this.$=rt[nt-3],ft.setLink(rt[nt-2],rt[nt]);break;case 83:this.$=rt[nt-4],ft.setLink(rt[nt-3],rt[nt-1],rt[nt]);break;case 84:this.$=rt[nt-4],ft.setLink(rt[nt-3],rt[nt-1]),ft.setTooltip(rt[nt-3],rt[nt]);break;case 85:this.$=rt[nt-5],ft.setLink(rt[nt-4],rt[nt-2],rt[nt]),ft.setTooltip(rt[nt-4],rt[nt-1]);break;case 86:this.$=rt[nt-2],ft.setCssStyle(rt[nt-1],rt[nt]);break;case 87:ft.setCssClass(rt[nt-1],rt[nt]);break;case 88:this.$=[rt[nt]];break;case 89:rt[nt-2].push(rt[nt]),this.$=rt[nt-2];break;case 91:this.$=rt[nt-1]+rt[nt];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,18:20,19:38,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:t,34:r,36:n,37:21,41:i,42:22,45:a,46:s,48:l,49:u,51:h,53:f,54:d,55:p,56:m,57:g,67:y,68:v,70:x,74:b,75:w,77:S,81:T,96:E,98:_,99:A},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(L,[2,5],{8:[1,46]}),{8:[1,47]},e(M,[2,18],{22:[1,48]}),e(M,[2,20]),e(M,[2,21]),e(M,[2,22]),e(M,[2,23]),e(M,[2,24]),e(M,[2,25]),e(M,[2,26]),e(M,[2,27]),e(M,[2,28]),{33:[1,49]},{35:[1,50]},e(M,[2,31]),e(M,[2,47],{50:51,58:54,59:55,13:[1,52],22:[1,53],60:N,61:k,62:I,63:C,64:O,65:D,66:P}),{38:[1,63]},e(F,[2,38],{38:[1,65],43:[1,64]}),e(M,[2,49]),e(M,[2,50]),{16:66,75:w,81:T,96:E,98:_},{16:37,18:67,19:38,75:w,81:T,96:E,98:_,99:A},{16:37,18:68,19:38,75:w,81:T,96:E,98:_,99:A},{16:37,18:69,19:38,75:w,81:T,96:E,98:_,99:A},{75:[1,70]},{13:[1,71]},{16:37,18:72,19:38,75:w,81:T,96:E,98:_,99:A},{13:B,52:73},e(M,[2,57]),e(M,[2,58]),e(M,[2,59]),e(M,[2,60]),e(G,[2,12],{16:37,19:38,18:76,17:[1,75],20:[1,77],75:w,81:T,96:E,98:_,99:A}),e(G,[2,14],{20:[1,78]}),{15:79,16:80,75:w,81:T,96:E,98:_},{16:37,18:81,19:38,75:w,81:T,96:E,98:_,99:A},e(z,[2,114]),e(z,[2,115]),e(z,[2,116]),e(z,[2,117]),e([1,8,9,12,13,20,22,38,40,43,60,61,62,63,64,65,66,71,73],[2,118]),e(L,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,18:20,37:21,42:22,16:37,19:38,5:82,32:t,34:r,36:n,41:i,45:a,46:s,48:l,49:u,51:h,53:f,54:d,55:p,56:m,57:g,67:y,68:v,70:x,74:b,75:w,77:S,81:T,96:E,98:_,99:A}),{5:83,10:5,16:37,18:20,19:38,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:t,34:r,36:n,37:21,41:i,42:22,45:a,46:s,48:l,49:u,51:h,53:f,54:d,55:p,56:m,57:g,67:y,68:v,70:x,74:b,75:w,77:S,81:T,96:E,98:_,99:A},e(M,[2,19]),e(M,[2,29]),e(M,[2,30]),{13:[1,85],16:37,18:84,19:38,75:w,81:T,96:E,98:_,99:A},{50:86,58:54,59:55,60:N,61:k,62:I,63:C,64:O,65:D,66:P},e(M,[2,48]),{59:87,65:D,66:P},e(W,[2,64],{58:88,60:N,61:k,62:I,63:C,64:O}),e(Q,[2,65]),e(Q,[2,66]),e(Q,[2,67]),e(Q,[2,68]),e(Q,[2,69]),e(j,[2,70]),e(j,[2,71]),{8:[1,90],24:91,39:89,42:22,45:a},{16:92,75:w,81:T,96:E,98:_},{44:93,48:at},{47:[1,95]},{13:[1,96]},{13:[1,97]},{71:[1,98],73:[1,99]},{22:X,74:J,75:Z,76:100,78:101,80:102,81:H,82:q,83:K,84:ot,85:ct,86:ut},{75:[1,112]},{13:B,52:113},e(M,[2,56]),e(M,[2,119]),{16:37,18:114,19:38,75:w,81:T,96:E,98:_,99:A},e(G,[2,15]),e(G,[2,16]),e(G,[2,17]),{38:[2,34]},{15:116,16:80,17:[1,115],38:[2,9],75:w,81:T,96:E,98:_},e(et,[2,42],{11:117,12:[1,118]}),e(L,[2,7]),{9:[1,119]},e(Mt,[2,51]),{16:37,18:120,19:38,75:w,81:T,96:E,98:_,99:A},{13:[1,122],16:37,18:121,19:38,75:w,81:T,96:E,98:_,99:A},e(W,[2,63],{58:123,60:N,61:k,62:I,63:C,64:O}),e(W,[2,62]),{40:[1,124]},{24:91,39:125,42:22,45:a},{8:[1,126],40:[2,35]},e(F,[2,39],{38:[1,127]}),{40:[1,128]},{40:[2,45],44:129,48:at},{16:37,18:130,19:38,75:w,81:T,96:E,98:_,99:A},e(M,[2,72],{13:[1,131]}),e(M,[2,74],{13:[1,133],69:[1,132]}),e(M,[2,78],{13:[1,134],72:[1,135]}),{13:[1,136]},e(M,[2,86],{79:[1,137]}),e(it,[2,88],{80:138,22:X,74:J,75:Z,81:H,82:q,83:K,84:ot,85:ct,86:ut}),e(wt,[2,90]),e(wt,[2,92]),e(wt,[2,93]),e(wt,[2,94]),e(wt,[2,95]),e(wt,[2,96]),e(wt,[2,97]),e(wt,[2,98]),e(wt,[2,99]),e(wt,[2,100]),e(M,[2,87]),e(M,[2,55]),e(G,[2,13]),{15:139,16:80,75:w,81:T,96:E,98:_},{38:[2,11]},e(et,[2,43]),{13:[1,140]},{1:[2,4]},e(Mt,[2,53]),e(Mt,[2,52]),{16:37,18:141,19:38,75:w,81:T,96:E,98:_,99:A},e(W,[2,61]),e(M,[2,32]),{40:[1,142]},{24:91,39:143,40:[2,36],42:22,45:a},{44:144,48:at},e(F,[2,40]),{40:[2,46]},e(M,[2,44]),e(M,[2,73]),e(M,[2,75]),e(M,[2,76],{69:[1,145]}),e(M,[2,79]),e(M,[2,80],{13:[1,146]}),e(M,[2,82],{13:[1,148],69:[1,147]}),{22:X,74:J,75:Z,78:149,80:102,81:H,82:q,83:K,84:ot,85:ct,86:ut},e(wt,[2,91]),{38:[2,10]},{14:[1,150]},e(Mt,[2,54]),e(M,[2,33]),{40:[2,37]},{40:[1,151]},e(M,[2,77]),e(M,[2,81]),e(M,[2,83]),e(M,[2,84],{69:[1,152]}),e(it,[2,89],{80:138,22:X,74:J,75:Z,81:H,82:q,83:K,84:ot,85:ct,86:ut}),e(et,[2,8]),e(F,[2,41]),e(M,[2,85])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],79:[2,34],116:[2,11],119:[2,4],129:[2,46],139:[2,10],143:[2,37]},parseError:o(function(_t,dt){if(dt.recoverable)this.trace(_t);else{var Y=new Error(_t);throw Y.hash=dt,Y}},"parseError"),parse:o(function(_t){var dt=this,Y=[0],ft=[],mt=[null],rt=[],ht=this.table,nt="",st=0,Tt=0,kt=0,Ct=2,At=1,$t=rt.slice.call(arguments,1),Nt=Object.create(this.lexer),yt={yy:{}};for(var Ut in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ut)&&(yt.yy[Ut]=this.yy[Ut]);Nt.setInput(_t,yt.yy),yt.yy.lexer=Nt,yt.yy.parser=this,typeof Nt.yylloc>"u"&&(Nt.yylloc={});var zt=Nt.yylloc;rt.push(zt);var ae=Nt.options&&Nt.options.ranges;typeof yt.yy.parseError=="function"?this.parseError=yt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ke(oe){Y.length=Y.length-2*oe,mt.length=mt.length-oe,rt.length=rt.length-oe}o(ke,"popStack");function Ee(){var oe;return oe=ft.pop()||Nt.lex()||At,typeof oe!="number"&&(oe instanceof Array&&(ft=oe,oe=ft.pop()),oe=dt.symbols_[oe]||oe),oe}o(Ee,"lex");for(var le,Zt,me,Ht,ne,xe,Se={},Ye,fe,ee,pe;;){if(me=Y[Y.length-1],this.defaultActions[me]?Ht=this.defaultActions[me]:((le===null||typeof le>"u")&&(le=Ee()),Ht=ht[me]&&ht[me][le]),typeof Ht>"u"||!Ht.length||!Ht[0]){var Me="";pe=[];for(Ye in ht[me])this.terminals_[Ye]&&Ye>Ct&&pe.push("'"+this.terminals_[Ye]+"'");Nt.showPosition?Me="Parse error on line "+(st+1)+`: +`+Nt.showPosition()+` +Expecting `+pe.join(", ")+", got '"+(this.terminals_[le]||le)+"'":Me="Parse error on line "+(st+1)+": Unexpected "+(le==At?"end of input":"'"+(this.terminals_[le]||le)+"'"),this.parseError(Me,{text:Nt.match,token:this.terminals_[le]||le,line:Nt.yylineno,loc:zt,expected:pe})}if(Ht[0]instanceof Array&&Ht.length>1)throw new Error("Parse Error: multiple actions possible at state: "+me+", token: "+le);switch(Ht[0]){case 1:Y.push(le),mt.push(Nt.yytext),rt.push(Nt.yylloc),Y.push(Ht[1]),le=null,Zt?(le=Zt,Zt=null):(Tt=Nt.yyleng,nt=Nt.yytext,st=Nt.yylineno,zt=Nt.yylloc,kt>0&&kt--);break;case 2:if(fe=this.productions_[Ht[1]][1],Se.$=mt[mt.length-fe],Se._$={first_line:rt[rt.length-(fe||1)].first_line,last_line:rt[rt.length-1].last_line,first_column:rt[rt.length-(fe||1)].first_column,last_column:rt[rt.length-1].last_column},ae&&(Se._$.range=[rt[rt.length-(fe||1)].range[0],rt[rt.length-1].range[1]]),xe=this.performAction.apply(Se,[nt,Tt,st,yt.yy,Ht[1],mt,rt].concat($t)),typeof xe<"u")return xe;fe&&(Y=Y.slice(0,-1*fe*2),mt=mt.slice(0,-1*fe),rt=rt.slice(0,-1*fe)),Y.push(this.productions_[Ht[1]][0]),mt.push(Se.$),rt.push(Se._$),ee=ht[Y[Y.length-2]][Y[Y.length-1]],Y.push(ee);break;case 3:return!0}}return!0},"parse")},St=function(){var Pt={EOF:1,parseError:o(function(dt,Y){if(this.yy.parser)this.yy.parser.parseError(dt,Y);else throw new Error(dt)},"parseError"),setInput:o(function(_t,dt){return this.yy=dt||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 dt=_t.match(/(?:\r\n?|\n).*/g);return dt?(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 dt=_t.length,Y=_t.split(/(?:\r\n?|\n)/g);this._input=_t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-dt),this.offset-=dt;var ft=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 mt=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===ft.length?this.yylloc.first_column:0)+ft[ft.length-Y.length].length-Y[0].length:this.yylloc.first_column-dt},this.options.ranges&&(this.yylloc.range=[mt[0],mt[0]+this.yyleng-dt]),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(),dt=new Array(_t.length+1).join("-");return _t+this.upcomingInput()+` +`+dt+"^"},"showPosition"),test_match:o(function(_t,dt){var Y,ft,mt;if(this.options.backtrack_lexer&&(mt={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&&(mt.yylloc.range=this.yylloc.range.slice(0))),ft=_t[0].match(/(?:\r\n?|\n).*/g),ft&&(this.yylineno+=ft.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ft?ft[ft.length-1].length-ft[ft.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],Y=this.performAction.call(this,this.yy,this,dt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Y)return Y;if(this._backtrack){for(var rt in mt)this[rt]=mt[rt];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var _t,dt,Y,ft;this._more||(this.yytext="",this.match="");for(var mt=this._currentRules(),rt=0;rtdt[0].length)){if(dt=Y,ft=rt,this.options.backtrack_lexer){if(_t=this.test_match(Y,mt[rt]),_t!==!1)return _t;if(this._backtrack){dt=!1;continue}else return!1}else if(!this.options.flex)break}return dt?(_t=this.test_match(dt,mt[ft]),_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 dt=this.next();return dt||this.lex()},"lex"),begin:o(function(dt){this.conditionStack.push(dt)},"begin"),popState:o(function(){var dt=this.conditionStack.length-1;return dt>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(dt){return dt=this.conditionStack.length-1-Math.abs(dt||0),dt>=0?this.conditionStack[dt]:"INITIAL"},"topState"),pushState:o(function(dt){this.begin(dt)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(dt,Y,ft,mt){var rt=mt;switch(ft){case 0:return 54;case 1:return 55;case 2:return 56;case 3:return 57;case 4:break;case 5:break;case 6:return this.begin("acc_title"),32;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),34;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 71;case 22:this.popState();break;case 23:return 72;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 74;case 28:return this.begin("namespace"),41;break;case 29:return this.popState(),8;break;case 30:break;case 31:return this.begin("namespace-body"),38;break;case 32:return this.popState(),40;break;case 33:return"EOF_IN_STRUCT";case 34:return 8;case 35:break;case 36:return"EDGE_STATE";case 37:return this.begin("class"),45;break;case 38:return this.popState(),8;break;case 39:break;case 40:return this.popState(),this.popState(),40;break;case 41:return this.begin("class-body"),38;break;case 42:return this.popState(),40;break;case 43:return"EOF_IN_STRUCT";case 44:return"EDGE_STATE";case 45:return"OPEN_IN_STRUCT";case 46:break;case 47:return"MEMBER";case 48:return 77;case 49:return 67;case 50:return 68;case 51:return 70;case 52:return 51;case 53:return 53;case 54:return 46;case 55:return 47;case 56:return 73;case 57:this.popState();break;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 60:this.popState();break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:return 69;case 64:return 69;case 65:return 69;case 66:return 69;case 67:return 61;case 68:return 61;case 69:return 63;case 70:return 63;case 71:return 62;case 72:return 60;case 73:return 64;case 74:return 65;case 75:return 66;case 76:return 22;case 77:return 43;case 78:return 96;case 79:return 17;case 80:return"PLUS";case 81:return 82;case 82:return 79;case 83:return 85;case 84:return 85;case 85:return 86;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 75;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 81;case 93:return 98;case 94:return 84;case 95:return 84;case 96:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,32,33,34,35,36,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},namespace:{rules:[26,28,29,30,31,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},"class-body":{rules:[26,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},class:{rules:[26,38,39,40,41,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr:{rules:[9,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_title:{rules:[7,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_args:{rules:[22,23,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_name:{rules:[19,20,21,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},href:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},struct:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},generic:{rules:[26,48,49,50,51,52,53,54,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},bqstring:{rules:[26,48,49,50,51,52,53,54,55,56,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},string:{rules:[24,25,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96],inclusive:!0}}};return Pt}();Ot.lexer=St;function Vt(){this.yy={}}return o(Vt,"Parser"),Vt.prototype=Ot,Ot.Parser=Vt,new Vt}();SP.parser=SP;f6=SP});var mdt,Wx,gdt=R(()=>{"use strict";Ue();hr();mdt=["#","+","~","-",""],Wx=class{static{o(this,"ClassMember")}constructor(t,r){this.memberType=r,this.visibility="",this.classifier="";let n=Zr(t,pt());this.parseMember(n)}getDisplayDetails(){let t=this.visibility+yh(this.id);this.memberType==="method"&&(t+=`(${yh(this.parameters.trim())})`,this.returnType&&(t+=" : "+yh(this.returnType))),t=t.trim();let r=this.parseClassifier();return{displayText:t,cssStyle:r}}parseMember(t){let r="";if(this.memberType==="method"){let i=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(t);if(i){let a=i[1]?i[1].trim():"";if(mdt.includes(a)&&(this.visibility=a),this.id=i[2].trim(),this.parameters=i[3]?i[3].trim():"",r=i[4]?i[4].trim():"",this.returnType=i[5]?i[5].trim():"",r===""){let s=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(s)&&(r=s,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{let n=t.length,i=t.substring(0,1),a=t.substring(n-1);mdt.includes(i)&&(this.visibility=i),/[$*]/.exec(a)&&(r=a),this.id=t.substring(this.visibility===""?0:1,r===""?n:n-1)}this.classifier=r}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}});var m6,LP,Wi,d6,ydt,Zu,_P,Yx,P0,B0,AHt,p6,vdt,_Ht,LHt,DHt,RHt,NHt,MHt,IHt,xdt,OHt,PHt,BHt,DP,FHt,zHt,$Ht,GHt,VHt,UHt,HHt,WHt,bdt,RP,YHt,qHt,XHt,jHt,KHt,QHt,ZHt,Zg,NP=R(()=>{"use strict";ur();ce();Ue();hr();_r();Ci();gdt();m6="classId-",LP=[],Wi=new Map,d6=[],ydt=0,Zu=new Map,_P=0,Yx=[],P0=o(e=>Yt.sanitizeText(e,pt()),"sanitizeText"),B0=o(function(e){let t=Yt.sanitizeText(e,pt()),r="",n=t;if(t.indexOf("~")>0){let i=t.split("~");n=P0(i[0]),r=P0(i[1])}return{className:n,type:r}},"splitClassNameAndType"),AHt=o(function(e,t){let r=Yt.sanitizeText(e,pt());t&&(t=P0(t));let{className:n}=B0(r);Wi.get(n).label=t},"setClassLabel"),p6=o(function(e){let t=Yt.sanitizeText(e,pt()),{className:r,type:n}=B0(t);if(Wi.has(r))return;let i=Yt.sanitizeText(r,pt());Wi.set(i,{id:i,type:n,label:i,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:m6+i+"-"+ydt}),ydt++},"addClass"),vdt=o(function(e){let t=Yt.sanitizeText(e,pt());if(Wi.has(t))return Wi.get(t).domId;throw new Error("Class not found: "+t)},"lookUpDomId"),_Ht=o(function(){LP=[],Wi=new Map,d6=[],Yx=[],Yx.push(bdt),Zu=new Map,_P=0,RP="TB",Ar()},"clear"),LHt=o(function(e){return Wi.get(e)},"getClass"),DHt=o(function(){return Wi},"getClasses"),RHt=o(function(){return LP},"getRelations"),NHt=o(function(){return d6},"getNotes"),MHt=o(function(e){V.debug("Adding relation: "+JSON.stringify(e)),p6(e.id1),p6(e.id2),e.id1=B0(e.id1).className,e.id2=B0(e.id2).className,e.relationTitle1=Yt.sanitizeText(e.relationTitle1.trim(),pt()),e.relationTitle2=Yt.sanitizeText(e.relationTitle2.trim(),pt()),LP.push(e)},"addRelation"),IHt=o(function(e,t){let r=B0(e).className;Wi.get(r).annotations.push(t)},"addAnnotation"),xdt=o(function(e,t){p6(e);let r=B0(e).className,n=Wi.get(r);if(typeof t=="string"){let i=t.trim();i.startsWith("<<")&&i.endsWith(">>")?n.annotations.push(P0(i.substring(2,i.length-2))):i.indexOf(")")>0?n.methods.push(new Wx(i,"method")):i&&n.members.push(new Wx(i,"attribute"))}},"addMember"),OHt=o(function(e,t){Array.isArray(t)&&(t.reverse(),t.forEach(r=>xdt(e,r)))},"addMembers"),PHt=o(function(e,t){let r={id:`note${d6.length}`,class:t,text:e};d6.push(r)},"addNote"),BHt=o(function(e){return e.startsWith(":")&&(e=e.substring(1)),P0(e.trim())},"cleanupLabel"),DP=o(function(e,t){e.split(",").forEach(function(r){let n=r;/\d/.exec(r[0])&&(n=m6+n);let i=Wi.get(n);i&&i.cssClasses.push(t)})},"setCssClass"),FHt=o(function(e,t){e.split(",").forEach(function(r){t!==void 0&&(Wi.get(r).tooltip=P0(t))})},"setTooltip"),zHt=o(function(e,t){return t&&Zu.has(t)?Zu.get(t).classes.get(e).tooltip:Wi.get(e).tooltip},"getTooltip"),$Ht=o(function(e,t,r){let n=pt();e.split(",").forEach(function(i){let a=i;/\d/.exec(i[0])&&(a=m6+a);let s=Wi.get(a);s&&(s.link=Oe.formatUrl(t,n),n.securityLevel==="sandbox"?s.linkTarget="_top":typeof r=="string"?s.linkTarget=P0(r):s.linkTarget="_blank")}),DP(e,"clickable")},"setLink"),GHt=o(function(e,t,r){e.split(",").forEach(function(n){VHt(n,t,r),Wi.get(n).haveCallback=!0}),DP(e,"clickable")},"setClickEvent"),VHt=o(function(e,t,r){let n=Yt.sanitizeText(e,pt());if(pt().securityLevel!=="loose"||t===void 0)return;let a=n;if(Wi.has(a)){let s=vdt(a),l=[];if(typeof r=="string"){l=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let u=0;u")),i.classed("hover",!0)}).on("mouseout",function(){t.transition().duration(500).style("opacity",0),Gt(this).classed("hover",!1)})},"setupToolTips");Yx.push(bdt);RP="TB",YHt=o(()=>RP,"getDirection"),qHt=o(e=>{RP=e},"setDirection"),XHt=o(function(e){Zu.has(e)||(Zu.set(e,{id:e,classes:new Map,children:{},domId:m6+e+"-"+_P}),_P++)},"addNamespace"),jHt=o(function(e){return Zu.get(e)},"getNamespace"),KHt=o(function(){return Zu},"getNamespaces"),QHt=o(function(e,t){if(Zu.has(e))for(let r of t){let{className:n}=B0(r);Wi.get(n).parent=e,Zu.get(e).classes.set(n,Wi.get(n))}},"addClassesToNamespace"),ZHt=o(function(e,t){let r=Wi.get(e);if(!(!t||!r))for(let n of t)n.includes(",")?r.styles.push(...n.split(",")):r.styles.push(n)},"setCssStyle"),Zg={setAccTitle:Mr,getAccTitle:Br,getAccDescription:zr,setAccDescription:Fr,getConfig:o(()=>pt().class,"getConfig"),addClass:p6,bindFunctions:UHt,clear:_Ht,getClass:LHt,getClasses:DHt,getNotes:NHt,addAnnotation:IHt,addNote:PHt,getRelations:RHt,addRelation:MHt,getDirection:YHt,setDirection:qHt,addMember:xdt,addMembers:OHt,cleanupLabel:BHt,lineType:HHt,relationType:WHt,setClickEvent:GHt,setCssClass:DP,setLink:$Ht,getTooltip:zHt,setTooltip:FHt,lookUpDomId:vdt,setDiagramTitle:cn,getDiagramTitle:Jr,setClassLabel:AHt,addNamespace:XHt,addClassesToNamespace:QHt,getNamespace:jHt,getNamespaces:KHt,setCssStyle:ZHt}});var JHt,g6,MP=R(()=>{"use strict";JHt=o(e=>`g.classGroup text { + fill: ${e.nodeBorder||e.classText}; + stroke: none; + font-family: ${e.fontFamily}; + font-size: 10px; + + .title { + font-weight: bolder; + } + +} + +.nodeLabel, .edgeLabel { + color: ${e.classText}; +} +.edgeLabel .label rect { + fill: ${e.mainBkg}; +} +.label text { + fill: ${e.classText}; +} +.edgeLabel .label span { + background: ${e.mainBkg}; +} + +.classTitle { + font-weight: bolder; +} +.node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${e.mainBkg}; + stroke: ${e.nodeBorder}; + stroke-width: 1px; + } + + +.divider { + stroke: ${e.nodeBorder}; + stroke-width: 1; +} + +g.clickable { + cursor: pointer; +} + +g.classGroup rect { + fill: ${e.mainBkg}; + stroke: ${e.nodeBorder}; +} + +g.classGroup line { + stroke: ${e.nodeBorder}; + stroke-width: 1; +} + +.classLabel .box { + stroke: none; + stroke-width: 0; + fill: ${e.mainBkg}; + opacity: 0.5; +} + +.classLabel .label { + fill: ${e.nodeBorder}; + font-size: 10px; +} + +.relation { + stroke: ${e.lineColor}; + stroke-width: 1; + fill: none; +} + +.dashed-line{ + stroke-dasharray: 3; +} + +.dotted-line{ + stroke-dasharray: 1 2; +} + +#compositionStart, .composition { + fill: ${e.lineColor} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +#compositionEnd, .composition { + fill: ${e.lineColor} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${e.lineColor} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${e.lineColor} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +#extensionStart, .extension { + fill: transparent !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +#extensionEnd, .extension { + fill: transparent !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +#aggregationStart, .aggregation { + fill: transparent !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +#aggregationEnd, .aggregation { + fill: transparent !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +#lollipopStart, .lollipop { + fill: ${e.mainBkg} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +#lollipopEnd, .lollipop { + fill: ${e.mainBkg} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +.edgeTerminals { + font-size: 11px; + line-height: initial; +} + +.classTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; +} +`,"getStyles"),g6=JHt});var wdt,tWt,eWt,kdt,rWt,Tdt,y6,Edt=R(()=>{"use strict";ur();_r();ce();hr();wdt=0,tWt=o(function(e,t,r,n,i){let a=o(function(b){switch(b){case i.db.relationType.AGGREGATION:return"aggregation";case i.db.relationType.EXTENSION:return"extension";case i.db.relationType.COMPOSITION:return"composition";case i.db.relationType.DEPENDENCY:return"dependency";case i.db.relationType.LOLLIPOP:return"lollipop"}},"getRelationType");t.points=t.points.filter(b=>!Number.isNaN(b.y));let s=t.points,l=ma().x(function(b){return b.x}).y(function(b){return b.y}).curve(Ts),u=e.append("path").attr("d",l(s)).attr("id","edge"+wdt).attr("class","relation"),h="";n.arrowMarkerAbsolute&&(h=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,h=h.replace(/\(/g,"\\("),h=h.replace(/\)/g,"\\)")),r.relation.lineType==1&&u.attr("class","relation dashed-line"),r.relation.lineType==10&&u.attr("class","relation dotted-line"),r.relation.type1!=="none"&&u.attr("marker-start","url("+h+"#"+a(r.relation.type1)+"Start)"),r.relation.type2!=="none"&&u.attr("marker-end","url("+h+"#"+a(r.relation.type2)+"End)");let f,d,p=t.points.length,m=Oe.calcLabelPosition(t.points);f=m.x,d=m.y;let g,y,v,x;if(p%2!==0&&p>1){let b=Oe.calcCardinalityPosition(r.relation.type1!=="none",t.points,t.points[0]),w=Oe.calcCardinalityPosition(r.relation.type2!=="none",t.points,t.points[p-1]);V.debug("cardinality_1_point "+JSON.stringify(b)),V.debug("cardinality_2_point "+JSON.stringify(w)),g=b.x,y=b.y,v=w.x,x=w.y}if(r.title!==void 0){let b=e.append("g").attr("class","classLabel"),w=b.append("text").attr("class","label").attr("x",f).attr("y",d).attr("fill","red").attr("text-anchor","middle").text(r.title);window.label=w;let S=w.node().getBBox();b.insert("rect",":first-child").attr("class","box").attr("x",S.x-n.padding/2).attr("y",S.y-n.padding/2).attr("width",S.width+n.padding).attr("height",S.height+n.padding)}V.info("Rendering relation "+JSON.stringify(r)),r.relationTitle1!==void 0&&r.relationTitle1!=="none"&&e.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",g).attr("y",y).attr("fill","black").attr("font-size","6").text(r.relationTitle1),r.relationTitle2!==void 0&&r.relationTitle2!=="none"&&e.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",v).attr("y",x).attr("fill","black").attr("font-size","6").text(r.relationTitle2),wdt++},"drawEdge"),eWt=o(function(e,t,r,n){V.debug("Rendering class ",t,r);let i=t.id,a={id:i,label:t.id,width:0,height:0},s=e.append("g").attr("id",n.db.lookUpDomId(i)).attr("class","classGroup"),l;t.link?l=s.append("svg:a").attr("xlink:href",t.link).attr("target",t.linkTarget).append("text").attr("y",r.textHeight+r.padding).attr("x",0):l=s.append("text").attr("y",r.textHeight+r.padding).attr("x",0);let u=!0;t.annotations.forEach(function(w){let S=l.append("tspan").text("\xAB"+w+"\xBB");u||S.attr("dy",r.textHeight),u=!1});let h=kdt(t),f=l.append("tspan").text(h).attr("class","title");u||f.attr("dy",r.textHeight);let d=l.node().getBBox().height,p,m,g;if(t.members.length>0){p=s.append("line").attr("x1",0).attr("y1",r.padding+d+r.dividerMargin/2).attr("y2",r.padding+d+r.dividerMargin/2);let w=s.append("text").attr("x",r.padding).attr("y",d+r.dividerMargin+r.textHeight).attr("fill","white").attr("class","classText");u=!0,t.members.forEach(function(S){Tdt(w,S,u,r),u=!1}),m=w.node().getBBox()}if(t.methods.length>0){g=s.append("line").attr("x1",0).attr("y1",r.padding+d+r.dividerMargin+m.height).attr("y2",r.padding+d+r.dividerMargin+m.height);let w=s.append("text").attr("x",r.padding).attr("y",d+2*r.dividerMargin+m.height+r.textHeight).attr("fill","white").attr("class","classText");u=!0,t.methods.forEach(function(S){Tdt(w,S,u,r),u=!1})}let y=s.node().getBBox();var v=" ";t.cssClasses.length>0&&(v=v+t.cssClasses.join(" "));let b=s.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",y.width+2*r.padding).attr("height",y.height+r.padding+.5*r.dividerMargin).attr("class",v).node().getBBox().width;return l.node().childNodes.forEach(function(w){w.setAttribute("x",(b-w.getBBox().width)/2)}),t.tooltip&&l.insert("title").text(t.tooltip),p&&p.attr("x2",b),g&&g.attr("x2",b),a.width=b,a.height=y.height+r.padding+.5*r.dividerMargin,a},"drawClass"),kdt=o(function(e){let t=e.id;return e.type&&(t+="<"+yh(e.type)+">"),t},"getClassTitleString"),rWt=o(function(e,t,r,n){V.debug("Rendering note ",t,r);let i=t.id,a={id:i,text:t.text,width:0,height:0},s=e.append("g").attr("id",i).attr("class","classGroup"),l=s.append("text").attr("y",r.textHeight+r.padding).attr("x",0),u=JSON.parse(`"${t.text}"`).split(` +`);u.forEach(function(p){V.debug(`Adding line: ${p}`),l.append("tspan").text(p).attr("class","title").attr("dy",r.textHeight)});let h=s.node().getBBox(),d=s.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",h.width+2*r.padding).attr("height",h.height+u.length*r.textHeight+r.padding+.5*r.dividerMargin).node().getBBox().width;return l.node().childNodes.forEach(function(p){p.setAttribute("x",(d-p.getBBox().width)/2)}),a.width=d,a.height=h.height+u.length*r.textHeight+r.padding+.5*r.dividerMargin,a},"drawNote"),Tdt=o(function(e,t,r,n){let{displayText:i,cssStyle:a}=t.getDisplayDetails(),s=e.append("tspan").attr("x",n.padding).text(i);a!==""&&s.attr("style",t.cssStyle),r||s.attr("dy",n.textHeight)},"addTspan"),y6={getClassTitleString:kdt,drawClass:eWt,drawEdge:tWt,drawNote:rWt}});var x6,v6,qx,nWt,iWt,Cdt,Sdt=R(()=>{"use strict";ur();Xd();wa();ce();Edt();Jn();Ue();x6={},v6=20,qx=o(function(e){let t=Object.entries(x6).find(r=>r[1].label===e);if(t)return t[0]},"getGraphId"),nWt=o(function(e){e.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),e.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),e.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),iWt=o(function(e,t,r,n){let i=pt().class;x6={},V.info("Rendering diagram "+e);let a=pt().securityLevel,s;a==="sandbox"&&(s=Gt("#i"+t));let l=a==="sandbox"?Gt(s.nodes()[0].contentDocument.body):Gt("body"),u=l.select(`[id='${t}']`);nWt(u);let h=new yr({multigraph:!0});h.setGraph({isMultiGraph:!0}),h.setDefaultEdgeLabel(function(){return{}});let f=n.db.getClasses(),d=[...f.keys()];for(let b of d){let w=f.get(b),S=y6.drawClass(u,w,i,n);x6[S.id]=S,h.setNode(S.id,S),V.info("Org height: "+S.height)}n.db.getRelations().forEach(function(b){V.info("tjoho"+qx(b.id1)+qx(b.id2)+JSON.stringify(b)),h.setEdge(qx(b.id1),qx(b.id2),{relation:b},b.title||"DEFAULT")}),n.db.getNotes().forEach(function(b){V.debug(`Adding note: ${JSON.stringify(b)}`);let w=y6.drawNote(u,b,i,n);x6[w.id]=w,h.setNode(w.id,w),b.class&&f.has(b.class)&&h.setEdge(b.id,qx(b.class),{relation:{id1:b.id,id2:b.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),co(h),h.nodes().forEach(function(b){b!==void 0&&h.node(b)!==void 0&&(V.debug("Node "+b+": "+JSON.stringify(h.node(b))),l.select("#"+(n.db.lookUpDomId(b)||b)).attr("transform","translate("+(h.node(b).x-h.node(b).width/2)+","+(h.node(b).y-h.node(b).height/2)+" )"))}),h.edges().forEach(function(b){b!==void 0&&h.edge(b)!==void 0&&(V.debug("Edge "+b.v+" -> "+b.w+": "+JSON.stringify(h.edge(b))),y6.drawEdge(u,h.edge(b),h.edge(b).relation,i,n))});let g=u.node().getBBox(),y=g.width+v6*2,v=g.height+v6*2;Pr(u,v,y,i.useMaxWidth);let x=`${g.x-v6} ${g.y-v6} ${y} ${v}`;V.debug(`viewBox ${x}`),u.attr("viewBox",x)},"draw"),Cdt={draw:iWt}});var Adt={};xr(Adt,{diagram:()=>aWt});var aWt,_dt=R(()=>{"use strict";AP();NP();MP();Sdt();aWt={parser:f6,db:Zg,renderer:Cdt,styles:g6,init:o(e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute,Zg.clear()},"init")}});var cWt,uWt,hWt,fWt,dWt,pWt,mWt,gWt,yWt,vWt,xWt,b6,IP=R(()=>{"use strict";ce();cWt=o((e,t,r,n)=>{t.forEach(i=>{xWt[i](e,r,n)})},"insertMarkers"),uWt=o((e,t,r)=>{V.trace("Making markers for ",r),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionStart").attr("class","marker extension "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-extensionEnd").attr("class","marker extension "+t).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"),hWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionStart").attr("class","marker composition "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-compositionEnd").attr("class","marker composition "+t).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"),fWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).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"),dWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).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"),e.append("defs").append("marker").attr("id",r+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).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"),pWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).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),e.append("defs").append("marker").attr("id",r+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).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"),mWt=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-pointEnd").attr("class","marker "+t).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"),e.append("marker").attr("id",r+"_"+t+"-pointStart").attr("class","marker "+t).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"),gWt=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-circleEnd").attr("class","marker "+t).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"),e.append("marker").attr("id",r+"_"+t+"-circleStart").attr("class","marker "+t).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"),yWt=o((e,t,r)=>{e.append("marker").attr("id",r+"_"+t+"-crossEnd").attr("class","marker cross "+t).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"),e.append("marker").attr("id",r+"_"+t+"-crossStart").attr("class","marker cross "+t).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"),vWt=o((e,t,r)=>{e.append("defs").append("marker").attr("id",r+"_"+t+"-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"),xWt={extension:uWt,composition:hWt,aggregation:fWt,dependency:dWt,lollipop:pWt,point:mWt,circle:gWt,cross:yWt,barb:vWt},b6=cWt});function Rdt(e,t){t&&e.attr("style",t)}function bWt(e){let t=Gt(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=t.append("xhtml:div"),n=e.label,i=e.isNode?"nodeLabel":"edgeLabel",a=r.append("span");return a.html(n),Rdt(a,e.labelStyle),a.attr("class",i),Rdt(r,e.labelStyle),r.style("display","inline-block"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),t.node()}var wWt,oa,Xx=R(()=>{"use strict";ur();ce();Ue();hr();_r();Nl();o(Rdt,"applyStyle");o(bWt,"addHtmlLabel");wWt=o((e,t,r,n)=>{let i=e||"";if(typeof i=="object"&&(i=i[0]),Tr(pt().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
    "),V.debug("vertexText"+i);let a={isNode:n,label:UL(no(i)),labelStyle:t.replace("fill:","color:")};return bWt(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",t.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"),oa=wWt});function Hl(e,t,r,n){return e.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+r/2+")")}var Li,Nn,w6=R(()=>{"use strict";Xx();Nl();Ue();ur();hr();_r();Li=o(async(e,t,r,n)=>{let i=pt(),a,s=t.useHtmlLabels||Tr(i.flowchart.htmlLabels);r?a=r:a="node default";let l=e.insert("g").attr("class",a).attr("id",t.domId||t.id),u=l.insert("g").attr("class","label").attr("style",t.labelStyle),h;t.labelText===void 0?h="":h=typeof t.labelText=="string"?t.labelText:t.labelText[0];let f=u.node(),d;t.labelType==="markdown"?d=ia(u,Zr(no(h),i),{useHtmlLabels:s,width:t.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):d=f.appendChild(oa(Zr(no(h),i),t.labelStyle,!1,n));let p=d.getBBox(),m=t.padding/2;if(Tr(i.flowchart.htmlLabels)){let g=d.children[0],y=Gt(d),v=g.getElementsByTagName("img");if(v){let x=h.replace(/]*>/g,"").trim()==="";await Promise.all([...v].map(b=>new Promise(w=>{function S(){if(b.style.display="flex",b.style.flexDirection="column",x){let T=i.fontSize?i.fontSize:window.getComputedStyle(document.body).fontSize,_=parseInt(T,10)*5+"px";b.style.minWidth=_,b.style.maxWidth=_}else b.style.width="100%";w(b)}o(S,"setupImage"),setTimeout(()=>{b.complete&&S()}),b.addEventListener("error",S),b.addEventListener("load",S)})))}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+")"),t.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"),Nn=o((e,t)=>{let r=t.node().getBBox();e.width=r.width,e.height=r.height},"updateNodeBounds");o(Hl,"insertPolygonShape")});var dr,Wl,Ndt,Mdt,k6,TWt,Idt,Odt,Jg,T6,Pdt,Bdt,Fdt,zdt,$dt=R(()=>{"use strict";ce();s2();wa();dr={},Wl={},Ndt={},Mdt=o(()=>{Wl={},Ndt={},dr={}},"clear"),k6=o((e,t)=>(V.trace("In isDescendant",t," ",e," = ",Wl[t].includes(e)),!!Wl[t].includes(e)),"isDescendant"),TWt=o((e,t)=>(V.info("Descendants of ",t," is ",Wl[t]),V.info("Edge is ",e),e.v===t||e.w===t?!1:Wl[t]?Wl[t].includes(e.v)||k6(e.v,t)||k6(e.w,t)||Wl[t].includes(e.w):(V.debug("Tilt, ",t,",not in descendants"),!1)),"edgeInCluster"),Idt=o((e,t,r,n)=>{V.warn("Copying children of ",e,"root",n,"data",t.node(e),n);let i=t.children(e)||[];e!==n&&i.push(e),V.warn("Copying (nodes) clusterId",e,"nodes",i),i.forEach(a=>{if(t.children(a).length>0)Idt(a,t,r,n);else{let s=t.node(a);V.info("cp ",a," to ",n," with parent ",e),r.setNode(a,s),n!==t.parent(a)&&(V.warn("Setting parent",a,t.parent(a)),r.setParent(a,t.parent(a))),e!==n&&a!==e?(V.debug("Setting parent",a,e),r.setParent(a,e)):(V.info("In copy ",e,"root",n,"data",t.node(e),n),V.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==n,"node!==clusterId",a!==e));let l=t.edges(a);V.debug("Copying Edges",l),l.forEach(u=>{V.info("Edge",u);let h=t.edge(u.v,u.w,u.name);V.info("Edge data",h,n);try{TWt(u,n)?(V.info("Copying as ",u.v,u.w,h,u.name),r.setEdge(u.v,u.w,h,u.name),V.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):V.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",n," clusterId:",e)}catch(f){V.error(f)}})}V.debug("Removing node",a),t.removeNode(a)})},"copy"),Odt=o((e,t)=>{let r=t.children(e),n=[...r];for(let i of r)Ndt[i]=e,n=[...n,...Odt(i,t)];return n},"extractDescendants"),Jg=o((e,t)=>{V.trace("Searching",e);let r=t.children(e);if(V.trace("Searching children of id ",e,r),r.length<1)return V.trace("This is a valid node",e),e;for(let n of r){let i=Jg(n,t);if(i)return V.trace("Found replacement for",e," => ",i),i}},"findNonClusterChild"),T6=o(e=>!dr[e]||!dr[e].externalConnections?e:dr[e]?dr[e].id:e,"getAnchorId"),Pdt=o((e,t)=>{if(!e||t>10){V.debug("Opting out, no graph ");return}else V.debug("Opting in, graph ");e.nodes().forEach(function(r){e.children(r).length>0&&(V.warn("Cluster identified",r," Replacement id in edges: ",Jg(r,e)),Wl[r]=Odt(r,e),dr[r]={id:Jg(r,e),clusterData:e.node(r)})}),e.nodes().forEach(function(r){let n=e.children(r),i=e.edges();n.length>0?(V.debug("Cluster identified",r,Wl),i.forEach(a=>{if(a.v!==r&&a.w!==r){let s=k6(a.v,r),l=k6(a.w,r);s^l&&(V.warn("Edge: ",a," leaves cluster ",r),V.warn("Descendants of XXX ",r,": ",Wl[r]),dr[r].externalConnections=!0)}})):V.debug("Not a cluster ",r,Wl)});for(let r of Object.keys(dr)){let n=dr[r].id,i=e.parent(n);i!==r&&dr[i]&&!dr[i].externalConnections&&(dr[r].id=i)}e.edges().forEach(function(r){let n=e.edge(r);V.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),V.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(e.edge(r)));let i=r.v,a=r.w;if(V.warn("Fix XXX",dr,"ids:",r.v,r.w,"Translating: ",dr[r.v]," --- ",dr[r.w]),dr[r.v]&&dr[r.w]&&dr[r.v]===dr[r.w]){V.warn("Fixing and trixing link to self - removing XXX",r.v,r.w,r.name),V.warn("Fixing and trixing - removing XXX",r.v,r.w,r.name),i=T6(r.v),a=T6(r.w),e.removeEdge(r.v,r.w,r.name);let s=r.w+"---"+r.v;e.setNode(s,{domId:s,id:s,labelStyle:"",labelText:n.label,padding:0,shape:"labelRect",style:""});let l=structuredClone(n),u=structuredClone(n);l.label="",l.arrowTypeEnd="none",u.label="",l.fromCluster=r.v,u.toCluster=r.v,e.setEdge(i,s,l,r.name+"-cyclic-special"),e.setEdge(s,a,u,r.name+"-cyclic-special")}else if(dr[r.v]||dr[r.w]){if(V.warn("Fixing and trixing - removing XXX",r.v,r.w,r.name),i=T6(r.v),a=T6(r.w),e.removeEdge(r.v,r.w,r.name),i!==r.v){let s=e.parent(i);dr[s].externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){let s=e.parent(a);dr[s].externalConnections=!0,n.toCluster=r.w}V.warn("Fix Replacing with XXX",i,a,r.name),e.setEdge(i,a,n,r.name)}}),V.warn("Adjusted Graph",Yn(e)),Bdt(e,0),V.trace(dr)},"adjustClustersAndEdges"),Bdt=o((e,t)=>{if(V.warn("extractor - ",t,Yn(e),e.children("D")),t>10){V.error("Bailing out");return}let r=e.nodes(),n=!1;for(let i of r){let a=e.children(i);n=n||a.length>0}if(!n){V.debug("Done, no node has children",e.nodes());return}V.debug("Nodes = ",r,t);for(let i of r)if(V.debug("Extracting node",i,dr,dr[i]&&!dr[i].externalConnections,!e.parent(i),e.node(i),e.children("D")," Depth ",t),!dr[i])V.debug("Not a cluster",i,t);else if(!dr[i].externalConnections&&e.children(i)&&e.children(i).length>0){V.warn("Cluster without external connections, without a parent and with children",i,t);let s=e.graph().rankdir==="TB"?"LR":"TB";dr[i]?.clusterData?.dir&&(s=dr[i].clusterData.dir,V.warn("Fixing dir",dr[i].clusterData.dir,s));let l=new yr({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});V.warn("Old graph before copy",Yn(e)),Idt(i,e,l,i),e.setNode(i,{clusterNode:!0,id:i,clusterData:dr[i].clusterData,labelText:dr[i].labelText,graph:l}),V.warn("New graph after copy node: (",i,")",Yn(l)),V.debug("Old graph after copy",Yn(e))}else V.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!dr[i].externalConnections," no parent: ",!e.parent(i)," children ",e.children(i)&&e.children(i).length>0,e.children("D"),t),V.debug(dr);r=e.nodes(),V.warn("New list of nodes",r);for(let i of r){let a=e.node(i);V.warn(" Now next level",i,a),a.clusterNode&&Bdt(a.graph,t+1)}},"extractor"),Fdt=o((e,t)=>{if(t.length===0)return[];let r=Object.assign(t);return t.forEach(n=>{let i=e.children(n),a=Fdt(e,i);r=[...r,...a]}),r},"sorter"),zdt=o(e=>Fdt(e,e.children()),"sortNodesByHierarchy")});var kWt,Gdt,Vdt=R(()=>{"use strict";kWt=o(e=>{let t=new Set;for(let r of e)switch(r){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(r);break}return t},"expandAndDeduplicateDirections"),Gdt=o((e,t,r)=>{let n=kWt(e),i=2,a=t.height+2*r.padding,s=a/i,l=t.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 EWt(e,t){return e.intersect(t)}var Udt,Hdt=R(()=>{"use strict";o(EWt,"intersectNode");Udt=EWt});function CWt(e,t,r,n){var i=e.x,a=e.y,s=i-n.x,l=a-n.y,u=Math.sqrt(t*t*l*l+r*r*s*s),h=Math.abs(t*r*s/u);n.x{"use strict";o(CWt,"intersectEllipse");E6=CWt});function SWt(e,t,r){return E6(e,t,t,r)}var Wdt,Ydt=R(()=>{"use strict";OP();o(SWt,"intersectCircle");Wdt=SWt});function AWt(e,t,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,v,x,b;if(i=t.y-e.y,s=e.x-t.x,u=t.x*e.y-e.x*t.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&qdt(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*e.x+l*e.y+h,d=a*t.x+l*t.y+h,!(f!==0&&d!==0&&qdt(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 qdt(e,t){return e*t>0}var Xdt,jdt=R(()=>{"use strict";o(AWt,"intersectLine");o(qdt,"sameSign");Xdt=AWt});function _Wt(e,t,r){var n=e.x,i=e.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(g){s=Math.min(s,g.x),l=Math.min(l,g.y)}):(s=Math.min(s,t.x),l=Math.min(l,t.y));for(var u=n-e.width/2-s,h=i-e.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,S=y.y-r.y,T=Math.sqrt(w*w+S*S);return b{"use strict";jdt();Kdt=_Wt;o(_Wt,"intersectPolygon")});var LWt,F0,PP=R(()=>{"use strict";LWt=o((e,t)=>{var r=e.x,n=e.y,i=t.x-r,a=t.y-n,s=e.width/2,l=e.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"),F0=LWt});var Mn,BP=R(()=>{"use strict";Hdt();Ydt();OP();Qdt();PP();Mn={node:Udt,circle:Wdt,ellipse:E6,polygon:Kdt,rect:F0}});var DWt,Zdt,Jdt=R(()=>{"use strict";w6();ce();Ue();BP();DWt=o(async(e,t)=>{t.useHtmlLabels||pt().flowchart.htmlLabels||(t.centerLabel=!0);let{shapeSvg:n,bbox:i,halfPadding:a}=await Li(e,t,"node "+t.classes,!0);V.info("Classes = ",t.classes);let s=n.insert("rect",":first-child");return s.attr("rx",t.rx).attr("ry",t.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",i.width+t.padding).attr("height",i.height+t.padding),Nn(t,s),t.intersect=function(l){return Mn.rect(t,l)},n},"note"),Zdt=DWt});function FP(e,t,r,n){let i=[],a=o(l=>{i.push(l,0)},"addBorder"),s=o(l=>{i.push(0,l)},"skipBorder");t.includes("t")?(V.debug("add top border"),a(r)):s(r),t.includes("r")?(V.debug("add right border"),a(n)):s(n),t.includes("b")?(V.debug("add bottom border"),a(r)):s(r),t.includes("l")?(V.debug("add left border"),a(n)):s(n),e.attr("stroke-dasharray",i.join(" "))}var t0t,xo,e0t,RWt,NWt,MWt,IWt,OWt,PWt,BWt,FWt,zWt,$Wt,GWt,VWt,UWt,HWt,WWt,YWt,qWt,XWt,jWt,r0t,KWt,QWt,n0t,t1,jx,i0t,a0t,Kx,zP=R(()=>{"use strict";ur();Ue();hr();ce();Vdt();Xx();BP();Jdt();w6();t0t=o(e=>e?" "+e:"","formatClass"),xo=o((e,t)=>`${t||"node default"}${t0t(e.classes)} ${t0t(e.class)}`,"getClassesFromNode"),e0t=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.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}];V.info("Question main (Circle)");let u=Hl(r,s,s,l);return u.attr("style",t.style),Nn(t,u),t.intersect=function(h){return V.warn("Intersect called"),Mn.polygon(t,l,h)},r},"question"),RWt=o((e,t)=>{let r=e.insert("g").attr("class","node default").attr("id",t.domId||t.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),t.width=28,t.height=28,t.intersect=function(s){return Mn.circle(t,14,s)},r},"choice"),NWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=4,a=n.height+t.padding,s=a/i,l=n.width+2*s+t.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=Hl(r,l,a,u);return h.attr("style",t.style),Nn(t,h),t.intersect=function(f){return Mn.polygon(t,u,f)},r},"hexagon"),MWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,void 0,!0),i=2,a=n.height+2*t.padding,s=a/i,l=n.width+2*s+t.padding,u=Gdt(t.directions,n,t),h=Hl(r,l,a,u);return h.attr("style",t.style),Nn(t,h),t.intersect=function(f){return Mn.polygon(t,u,f)},r},"block_arrow"),IWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.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 Hl(r,i,a,s).attr("style",t.style),t.width=i+a,t.height=a,t.intersect=function(u){return Mn.polygon(t,s,u)},r},"rect_left_inv_arrow"),OWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t),!0),i=n.width+t.padding,a=n.height+t.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=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"lean_right"),PWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.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=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"lean_left"),BWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.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=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"trapezoid"),FWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.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=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"inv_trapezoid"),zWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.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=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"rect_right_inv_arrow"),$Wt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=i/2,s=a/(2.5+i/50),l=n.height+s+t.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",t.style).attr("d",u).attr("transform","translate("+-i/2+","+-(l/2+s)+")");return Nn(t,h),t.intersect=function(f){let d=Mn.rect(t,f),p=d.x-t.x;if(a!=0&&(Math.abs(p)t.height/2-s)){let m=s*s*(1-p*p/(a*a));m!=0&&(m=Math.sqrt(m)),m=s-m,f.y-t.y>0&&(m=-m),d.y+=m}return d},r},"cylinder"),GWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(e,t,"node "+t.classes+" "+t.class,!0),a=r.insert("rect",":first-child"),s=t.positioned?t.width:n.width+t.padding,l=t.positioned?t.height:n.height+t.padding,u=t.positioned?-s/2:-n.width/2-i,h=t.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),t.props){let f=new Set(Object.keys(t.props));t.props.borders&&(FP(a,t.props.borders,s,l),f.delete("borders")),f.forEach(d=>{V.warn(`Unknown node property ${d}`)})}return Nn(t,a),t.intersect=function(f){return Mn.rect(t,f)},r},"rect"),VWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(e,t,"node "+t.classes,!0),a=r.insert("rect",":first-child"),s=t.positioned?t.width:n.width+t.padding,l=t.positioned?t.height:n.height+t.padding,u=t.positioned?-s/2:-n.width/2-i,h=t.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),t.props){let f=new Set(Object.keys(t.props));t.props.borders&&(FP(a,t.props.borders,s,l),f.delete("borders")),f.forEach(d=>{V.warn(`Unknown node property ${d}`)})}return Nn(t,a),t.intersect=function(f){return Mn.rect(t,f)},r},"composite"),UWt=o(async(e,t)=>{let{shapeSvg:r}=await Li(e,t,"label",!0);V.trace("Classes = ",t.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"),t.props){let s=new Set(Object.keys(t.props));t.props.borders&&(FP(n,t.props.borders,i,a),s.delete("borders")),s.forEach(l=>{V.warn(`Unknown node property ${l}`)})}return Nn(t,n),t.intersect=function(s){return Mn.rect(t,s)},r},"labelRect");o(FP,"applyNodePropertyBorders");HWt=o((e,t)=>{let r;t.classes?r="node "+t.classes:r="node default";let n=e.insert("g").attr("class",r).attr("id",t.domId||t.id),i=n.insert("rect",":first-child"),a=n.insert("line"),s=n.insert("g").attr("class","label"),l=t.labelText.flat?t.labelText.flat():t.labelText,u="";typeof l=="object"?u=l[0]:u=l,V.info("Label text abc79",u,l,typeof l=="object");let h=s.node().appendChild(oa(u,t.labelStyle,!0,!0)),f={width:0,height:0};if(Tr(pt().flowchart.htmlLabels)){let y=h.children[0],v=Gt(h);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}V.info("Text 2",l);let d=l.slice(1,l.length),p=h.getBBox(),m=s.node().appendChild(oa(d.join?d.join("
    "):d,t.labelStyle,!0,!0));if(Tr(pt().flowchart.htmlLabels)){let y=m.children[0],v=Gt(m);f=y.getBoundingClientRect(),v.attr("width",f.width),v.attr("height",f.height)}let g=t.padding/2;return Gt(m).attr("transform","translate( "+(f.width>p.width?0:(p.width-f.width)/2)+", "+(p.height+g+5)+")"),Gt(h).attr("transform","translate( "+(f.width{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.height+t.padding,a=n.width+i/4+t.padding,s=r.insert("rect",":first-child").attr("style",t.style).attr("rx",i/2).attr("ry",i/2).attr("x",-a/2).attr("y",-i/2).attr("width",a).attr("height",i);return Nn(t,s),t.intersect=function(l){return Mn.rect(t,l)},r},"stadium"),YWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(e,t,xo(t,void 0),!0),a=r.insert("circle",":first-child");return a.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+i).attr("width",n.width+t.padding).attr("height",n.height+t.padding),V.info("Circle main"),Nn(t,a),t.intersect=function(s){return V.info("Circle intersect",t,n.width/2+i,s),Mn.circle(t,n.width/2+i,s)},r},"circle"),qWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Li(e,t,xo(t,void 0),!0),a=5,s=r.insert("g",":first-child"),l=s.insert("circle"),u=s.insert("circle");return s.attr("class",t.class),l.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+i+a).attr("width",n.width+t.padding+a*2).attr("height",n.height+t.padding+a*2),u.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",n.width/2+i).attr("width",n.width+t.padding).attr("height",n.height+t.padding),V.info("DoubleCircle main"),Nn(t,l),t.intersect=function(h){return V.info("DoubleCircle intersect",t,n.width/2+i+a,h),Mn.circle(t,n.width/2+i+a,h)},r},"doublecircle"),XWt=o(async(e,t)=>{let{shapeSvg:r,bbox:n}=await Li(e,t,xo(t,void 0),!0),i=n.width+t.padding,a=n.height+t.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=Hl(r,i,a,s);return l.attr("style",t.style),Nn(t,l),t.intersect=function(u){return Mn.polygon(t,s,u)},r},"subroutine"),jWt=o((e,t)=>{let r=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Nn(t,n),t.intersect=function(i){return Mn.circle(t,7,i)},r},"start"),r0t=o((e,t,r)=>{let n=e.insert("g").attr("class","node default").attr("id",t.domId||t.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 Nn(t,s),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(l){return Mn.rect(t,l)},n},"forkJoin"),KWt=o((e,t)=>{let r=e.insert("g").attr("class","node default").attr("id",t.domId||t.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),Nn(t,i),t.intersect=function(a){return Mn.circle(t,7,a)},r},"end"),QWt=o((e,t)=>{let r=t.padding/2,n=4,i=8,a;t.classes?a="node "+t.classes:a="node default";let s=e.insert("g").attr("class",a).attr("id",t.domId||t.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=t.classData.annotations?.[0],y=t.classData.annotations[0]?"\xAB"+t.classData.annotations[0]+"\xBB":"",v=p.node().appendChild(oa(y,t.labelStyle,!0,!0)),x=v.getBBox();if(Tr(pt().flowchart.htmlLabels)){let A=v.children[0],L=Gt(v);x=A.getBoundingClientRect(),L.attr("width",x.width),L.attr("height",x.height)}t.classData.annotations[0]&&(d+=x.height+n,f+=x.width);let b=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(pt().flowchart.htmlLabels?b+="<"+t.classData.type+">":b+="<"+t.classData.type+">");let w=p.node().appendChild(oa(b,t.labelStyle,!0,!0));Gt(w).attr("class","classTitle");let S=w.getBBox();if(Tr(pt().flowchart.htmlLabels)){let A=w.children[0],L=Gt(w);S=A.getBoundingClientRect(),L.attr("width",S.width),L.attr("height",S.height)}d+=S.height+n,S.width>f&&(f=S.width);let T=[];t.classData.members.forEach(A=>{let L=A.getDisplayDetails(),M=L.displayText;pt().flowchart.htmlLabels&&(M=M.replace(//g,">"));let N=p.node().appendChild(oa(M,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0)),k=N.getBBox();if(Tr(pt().flowchart.htmlLabels)){let I=N.children[0],C=Gt(N);k=I.getBoundingClientRect(),C.attr("width",k.width),C.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,T.push(N)}),d+=i;let E=[];if(t.classData.methods.forEach(A=>{let L=A.getDisplayDetails(),M=L.displayText;pt().flowchart.htmlLabels&&(M=M.replace(//g,">"));let N=p.node().appendChild(oa(M,L.cssStyle?L.cssStyle:t.labelStyle,!0,!0)),k=N.getBBox();if(Tr(pt().flowchart.htmlLabels)){let I=N.children[0],C=Gt(N);k=I.getBoundingClientRect(),C.attr("width",k.width),C.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,E.push(N)}),d+=i,g){let A=(f-x.width)/2;Gt(v).attr("transform","translate( "+(-1*f/2+A)+", "+-1*d/2+")"),m=x.height+n}let _=(f-S.width)/2;return Gt(w).attr("transform","translate( "+(-1*f/2+_)+", "+(-1*d/2+m)+")"),m+=S.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(A=>{Gt(A).attr("transform","translate( "+-f/2+", "+(-1*d/2+m+i/2)+")");let L=A?.getBBox();m+=(L?.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(A=>{Gt(A).attr("transform","translate( "+-f/2+", "+(-1*d/2+m)+")");let L=A?.getBBox();m+=(L?.height??0)+n}),l.attr("style",t.style).attr("class","outer title-state").attr("x",-f/2-r).attr("y",-(d/2)-r).attr("width",f+t.padding).attr("height",d+t.padding),Nn(t,l),t.intersect=function(A){return Mn.rect(t,A)},s},"class_box"),n0t={rhombus:e0t,composite:VWt,question:e0t,rect:GWt,labelRect:UWt,rectWithTitle:HWt,choice:RWt,circle:YWt,doublecircle:qWt,stadium:WWt,hexagon:NWt,block_arrow:MWt,rect_left_inv_arrow:IWt,lean_right:OWt,lean_left:PWt,trapezoid:BWt,inv_trapezoid:FWt,rect_right_inv_arrow:zWt,cylinder:$Wt,start:jWt,end:KWt,note:Zdt,subroutine:XWt,fork:r0t,join:r0t,class_box:QWt},t1={},jx=o(async(e,t,r)=>{let n,i;if(t.link){let a;pt().securityLevel==="sandbox"?a="_top":t.linkTarget&&(a=t.linkTarget||"_blank"),n=e.insert("svg:a").attr("xlink:href",t.link).attr("target",a),i=await n0t[t.shape](n,t,r)}else i=await n0t[t.shape](e,t,r),n=i;return t.tooltip&&i.attr("title",t.tooltip),t.class&&i.attr("class","node default "+t.class),t1[t.id]=n,t.haveCallback&&t1[t.id].attr("class",t1[t.id].attr("class")+" clickable"),n},"insertNode"),i0t=o((e,t)=>{t1[t.id]=e},"setNodeElem"),a0t=o(()=>{t1={}},"clear"),Kx=o(e=>{let t=t1[e.id];V.trace("Transforming node",e.diff,e,"translate("+(e.x-e.width/2-5)+", "+e.width/2+")");let r=8,n=e.diff||0;return e.clusterNode?t.attr("transform","translate("+(e.x+n-e.width/2)+", "+(e.y-e.height/2-r)+")"):t.attr("transform","translate("+e.x+", "+e.y+")"),n},"positionNode")});var ZWt,JWt,tYt,eYt,rYt,s0t,o0t,l0t,c0t=R(()=>{"use strict";PP();ce();Xx();Nl();ur();Ue();hr();Nd();ZWt=o((e,t)=>{V.info("Creating subgraph rect for ",t.id,t);let r=pt(),n=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),i=n.insert("rect",":first-child"),a=Tr(r.flowchart.htmlLabels),s=n.insert("g").attr("class","cluster-label"),l=t.labelType==="markdown"?ia(s,t.labelText,{style:t.labelStyle,useHtmlLabels:a},r):s.node().appendChild(oa(t.labelText,t.labelStyle,void 0,!0)),u=l.getBBox();if(Tr(r.flowchart.htmlLabels)){let g=l.children[0],y=Gt(l);u=g.getBoundingClientRect(),y.attr("width",u.width),y.attr("height",u.height)}let h=0*t.padding,f=h/2,d=t.width<=u.width+h?u.width+h:t.width;t.width<=u.width+h?t.diff=(u.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,V.trace("Data ",t,JSON.stringify(t)),i.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-d/2).attr("y",t.y-t.height/2-f).attr("width",d).attr("height",t.height+h);let{subGraphTitleTopMargin:p}=io(r);a?s.attr("transform",`translate(${t.x-u.width/2}, ${t.y-t.height/2+p})`):s.attr("transform",`translate(${t.x}, ${t.y-t.height/2+p})`);let m=i.node().getBBox();return t.width=m.width,t.height=m.height,t.intersect=function(g){return F0(t,g)},n},"rect"),JWt=o((e,t)=>{let r=e.insert("g").attr("class","note-cluster").attr("id",t.id),n=r.insert("rect",":first-child"),i=0*t.padding,a=i/2;n.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2-a).attr("width",t.width+i).attr("height",t.height+i).attr("fill","none");let s=n.node().getBBox();return t.width=s.width,t.height=s.height,t.intersect=function(l){return F0(t,l)},r},"noteGroup"),tYt=o((e,t)=>{let r=pt(),n=e.insert("g").attr("class",t.classes).attr("id",t.id),i=n.insert("rect",":first-child"),a=n.insert("g").attr("class","cluster-label"),s=n.append("rect"),l=a.node().appendChild(oa(t.labelText,t.labelStyle,void 0,!0)),u=l.getBBox();if(Tr(r.flowchart.htmlLabels)){let g=l.children[0],y=Gt(l);u=g.getBoundingClientRect(),y.attr("width",u.width),y.attr("height",u.height)}u=l.getBBox();let h=0*t.padding,f=h/2,d=t.width<=u.width+t.padding?u.width+t.padding:t.width;t.width<=u.width+t.padding?t.diff=(u.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,i.attr("class","outer").attr("x",t.x-d/2-f).attr("y",t.y-t.height/2-f).attr("width",d+h).attr("height",t.height+h),s.attr("class","inner").attr("x",t.x-d/2-f).attr("y",t.y-t.height/2-f+u.height-1).attr("width",d+h).attr("height",t.height+h-u.height-3);let{subGraphTitleTopMargin:p}=io(r);a.attr("transform",`translate(${t.x-u.width/2}, ${t.y-t.height/2-t.padding/3+(Tr(r.flowchart.htmlLabels)?5:3)+p})`);let m=i.node().getBBox();return t.height=m.height,t.intersect=function(g){return F0(t,g)},n},"roundedWithTitle"),eYt=o((e,t)=>{let r=e.insert("g").attr("class",t.classes).attr("id",t.id),n=r.insert("rect",":first-child"),i=0*t.padding,a=i/2;n.attr("class","divider").attr("x",t.x-t.width/2-a).attr("y",t.y-t.height/2).attr("width",t.width+i).attr("height",t.height+i);let s=n.node().getBBox();return t.width=s.width,t.height=s.height,t.diff=-t.padding/2,t.intersect=function(l){return F0(t,l)},r},"divider"),rYt={rect:ZWt,roundedWithTitle:tYt,noteGroup:JWt,divider:eYt},s0t={},o0t=o((e,t)=>{V.trace("Inserting cluster");let r=t.shape||"rect";s0t[t.id]=rYt[r](e,t)},"insertCluster"),l0t=o(()=>{s0t={}},"clear")});var h0t,nYt,u0t,f0t=R(()=>{"use strict";ce();h0t=o((e,t,r,n,i)=>{t.arrowTypeStart&&u0t(e,"start",t.arrowTypeStart,r,n,i),t.arrowTypeEnd&&u0t(e,"end",t.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),nYt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},u0t=o((e,t,r,n,i,a)=>{let s=nYt[r];if(!s){V.warn(`Unknown arrow type: ${r}`);return}let l=t==="start"?"Start":"End";e.attr(`marker-${t}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function C6(e,t){pt().flowchart.htmlLabels&&e&&(e.style.width=t.length*9+"px",e.style.height="12px")}var S6,Sa,p0t,A6,_6,iYt,aYt,d0t,L6,$P=R(()=>{"use strict";ce();Xx();Nl();ur();Ue();_r();hr();YL();Nd();f0t();S6={},Sa={},p0t=o(()=>{S6={},Sa={}},"clear"),A6=o((e,t)=>{let r=pt(),n=Tr(r.flowchart.htmlLabels),i=t.labelType==="markdown"?ia(e,t.label,{style:t.labelStyle,useHtmlLabels:n,addSvgBackground:!0},r):oa(t.label,t.labelStyle),a=e.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=Gt(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),S6[t.id]=a,t.width=l.width,t.height=l.height;let u;if(t.startLabelLeft){let h=oa(t.startLabelLeft,t.labelStyle),f=e.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+")"),Sa[t.id]||(Sa[t.id]={}),Sa[t.id].startLeft=f,C6(u,t.startLabelLeft)}if(t.startLabelRight){let h=oa(t.startLabelRight,t.labelStyle),f=e.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+")"),Sa[t.id]||(Sa[t.id]={}),Sa[t.id].startRight=f,C6(u,t.startLabelRight)}if(t.endLabelLeft){let h=oa(t.endLabelLeft,t.labelStyle),f=e.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),Sa[t.id]||(Sa[t.id]={}),Sa[t.id].endLeft=f,C6(u,t.endLabelLeft)}if(t.endLabelRight){let h=oa(t.endLabelRight,t.labelStyle),f=e.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),Sa[t.id]||(Sa[t.id]={}),Sa[t.id].endRight=f,C6(u,t.endLabelRight)}return i},"insertEdgeLabel");o(C6,"setTerminalWidth");_6=o((e,t)=>{V.debug("Moving label abc88 ",e.id,e.label,S6[e.id],t);let r=t.updatedPath?t.updatedPath:t.originalPath,n=pt(),{subGraphTitleTotalMargin:i}=io(n);if(e.label){let a=S6[e.id],s=e.x,l=e.y;if(r){let u=Oe.calcLabelPosition(r);V.debug("Moving label "+e.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),t.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(e.startLabelLeft){let a=Sa[e.id].startLeft,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.startLabelRight){let a=Sa[e.id].startRight,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.endLabelLeft){let a=Sa[e.id].endLeft,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(e.endLabelRight){let a=Sa[e.id].endRight,s=e.x,l=e.y;if(r){let u=Oe.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),iYt=o((e,t)=>{let r=e.x,n=e.y,i=Math.abs(t.x-r),a=Math.abs(t.y-n),s=e.width/2,l=e.height/2;return i>=s||a>=l},"outsideNode"),aYt=o((e,t,r)=>{V.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(t)} + insidePoint : ${JSON.stringify(r)} + node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);let n=e.x,i=e.y,a=Math.abs(n-r.x),s=e.width/2,l=r.xMath.abs(n-t.x)*u){let d=r.y{V.debug("abc88 cutPathAtIntersect",e,t);let r=[],n=e[0],i=!1;return e.forEach(a=>{if(!iYt(t,a)&&!i){let s=aYt(t,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"),L6=o(function(e,t,r,n,i,a,s){let l=r.points;V.debug("abc88 InsertEdge: edge=",r,"e=",t);let u=!1,h=a.node(t.v);var f=a.node(t.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&&(V.debug("to cluster abc88",n[r.toCluster]),l=d0t(r.points,n[r.toCluster].node),u=!0),r.fromCluster&&(V.debug("from cluster abc88",n[r.fromCluster]),l=d0t(l.reverse(),n[r.fromCluster].node).reverse(),u=!0);let d=l.filter(S=>!Number.isNaN(S.y)),p=Ts;r.curve&&(i==="graph"||i==="flowchart")&&(p=r.curve);let{x:m,y:g}=xw(r),y=ma().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=e.append("path").attr("d",y(d)).attr("id",r.id).attr("class"," "+v+(r.classes?" "+r.classes:"")).attr("style",r.style),b="";(pt().flowchart.arrowMarkerAbsolute||pt().state.arrowMarkerAbsolute)&&(b=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,b=b.replace(/\(/g,"\\("),b=b.replace(/\)/g,"\\)")),h0t(x,r,b,s,i);let w={};return u&&(w.updatedPath=l),w.originalPath=r.points,w},"insertEdge")});var m0t,g0t,y0t=R(()=>{"use strict";Xd();s2();IP();w6();$dt();zP();c0t();$P();ce();Nd();Ue();m0t=o(async(e,t,r,n,i,a)=>{V.info("Graph in recursive render: XXX",Yn(t),i);let s=t.graph().rankdir;V.trace("Dir in recursive render - dir:",s);let l=e.insert("g").attr("class","root");t.nodes()?V.info("Recursive render XXX",t.nodes()):V.info("No nodes found for",t),t.edges().length>0&&V.trace("Recursive edges",t.edge(t.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(t.nodes().map(async function(g){let y=t.node(g);if(i!==void 0){let v=JSON.parse(JSON.stringify(i.clusterData));V.info("Setting data for cluster XXX (",g,") ",v,i),t.setNode(i.id,v),t.parent(g)||(V.trace("Setting parent",g,i.id),t.setParent(g,i.id,v))}if(V.info("(Insert) Node XXX"+g+": "+JSON.stringify(t.node(g))),y?.clusterNode){V.info("Cluster identified",g,y.width,t.node(g));let{ranksep:v,nodesep:x}=t.graph();y.graph.setGraph({...y.graph.graph(),ranksep:v,nodesep:x});let b=await m0t(d,y.graph,r,n,t.node(g),a),w=b.elem;Nn(y,w),y.diff=b.diff||0,V.info("Node bounds (abc123)",g,y,y.width,y.x,y.y),i0t(w,y),V.warn("Recursive render complete ",w,y)}else t.children(g).length>0?(V.info("Cluster - the non recursive path XXX",g,y.id,y,t),V.info(Jg(y.id,t)),dr[y.id]={id:Jg(y.id,t),node:y}):(V.info("Node - the non recursive path",g,y.id,y),await jx(d,t.node(g),{config:a,dir:s}))})),t.edges().forEach(async function(g){let y=t.edge(g.v,g.w,g.name);V.info("Edge "+g.v+" -> "+g.w+": "+JSON.stringify(g)),V.info("Edge "+g.v+" -> "+g.w+": ",g," ",JSON.stringify(t.edge(g))),V.info("Fix",dr,"ids:",g.v,g.w,"Translating: ",dr[g.v],dr[g.w]),await A6(f,y)}),t.edges().forEach(function(g){V.info("Edge "+g.v+" -> "+g.w+": "+JSON.stringify(g))}),V.info("Graph before layout:",JSON.stringify(Yn(t))),V.info("#############################################"),V.info("### Layout ###"),V.info("#############################################"),V.info(t),co(t),V.info("Graph after layout:",JSON.stringify(Yn(t)));let p=0,{subGraphTitleTotalMargin:m}=io(a);return zdt(t).forEach(function(g){let y=t.node(g);V.info("Position "+g+": "+JSON.stringify(t.node(g))),V.info("Position "+g+": ("+y.x,","+y.y,") width: ",y.width," height: ",y.height),y?.clusterNode?(y.y+=m,Kx(y)):t.children(g).length>0?(y.height+=m,o0t(u,y),dr[y.id].node=y):(y.y+=m/2,Kx(y))}),t.edges().forEach(function(g){let y=t.edge(g);V.info("Edge "+g.v+" -> "+g.w+": "+JSON.stringify(y),y),y.points.forEach(x=>x.y+=m/2);let v=L6(h,g,y,dr,r,t,n);_6(y,v)}),t.nodes().forEach(function(g){let y=t.node(g);V.info(g,y.type,y.diff),y.type==="group"&&(p=y.diff)}),{elem:l,diff:p}},"recursiveRender"),g0t=o(async(e,t,r,n,i)=>{b6(e,r,n,i),a0t(),p0t(),l0t(),Mdt(),V.warn("Graph at first:",JSON.stringify(Yn(t))),Pdt(t),V.warn("Graph after:",JSON.stringify(Yn(t)));let a=pt();await m0t(e,t,n,i,void 0,a)},"render")});function v0t(e){let t;switch(e){case 0:t="aggregation";break;case 1:t="extension";break;case 2:t="composition";break;case 3:t="dependency";break;case 4:t="lollipop";break;default:t="none"}return t}var VP,GP,sYt,x0t,oYt,lYt,cYt,uYt,b0t,w0t=R(()=>{"use strict";ur();wa();ce();Ue();y0t();_r();_r();Jn();hr();VP=o(e=>Yt.sanitizeText(e,pt()),"sanitizeText"),GP={dividerMargin:10,padding:5,textHeight:10,curve:void 0},sYt=o(function(e,t,r,n){V.info("keys:",[...e.keys()]),V.info(e),e.forEach(function(i){let s={shape:"rect",id:i.id,domId:i.domId,labelText:VP(i.id),labelStyle:"",style:"fill: none; stroke: black",padding:pt().flowchart?.padding??pt().class?.padding};t.setNode(i.id,s),x0t(i.classes,t,r,n,i.id),V.info("setNode",s)})},"addNamespaces"),x0t=o(function(e,t,r,n,i){V.info("keys:",[...e.keys()]),V.info(e),[...e.values()].filter(a=>a.parent===i).forEach(function(a){let s=a.cssClasses.join(" "),l=gm(a.styles),u=a.label??a.id,h=0,d={labelStyle:l.labelStyle,shape:"class_box",labelText:VP(u),classData:a,rx:h,ry:h,class:s,style:l.style,id:a.id,domId:a.domId,tooltip:n.db.getTooltip(a.id,i)||"",haveCallback:a.haveCallback,link:a.link,width:a.type==="group"?500:void 0,type:a.type,padding:pt().flowchart?.padding??pt().class?.padding};t.setNode(a.id,d),i&&t.setParent(a.id,i),V.info("setNode",d)})},"addClasses"),oYt=o(function(e,t,r,n){V.info(e),e.forEach(function(i,a){let s=i,l="",u={labelStyle:"",style:""},h=s.text,f=0,p={labelStyle:u.labelStyle,shape:"note",labelText:VP(h),noteData:s,rx:f,ry:f,class:l,style:u.style,id:s.id,domId:s.id,tooltip:"",type:"note",padding:pt().flowchart?.padding??pt().class?.padding};if(t.setNode(s.id,p),V.info("setNode",p),!s.class||!n.has(s.class))return;let m=r+a,g={id:`edgeNote${m}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:mm(GP.curve,Cu)};t.setEdge(s.id,s.class,g,m)})},"addNotes"),lYt=o(function(e,t){let r=pt().flowchart,n=0;e.forEach(function(i){n++;let a={classes:"relation",pattern:i.relation.lineType==1?"dashed":"solid",id:B5(i.id1,i.id2,{prefix:"id",counter:n}),arrowhead:i.type==="arrow_open"?"none":"normal",startLabelRight:i.relationTitle1==="none"?"":i.relationTitle1,endLabelLeft:i.relationTitle2==="none"?"":i.relationTitle2,arrowTypeStart:v0t(i.relation.type1),arrowTypeEnd:v0t(i.relation.type2),style:"fill:none",labelStyle:"",curve:mm(r?.curve,Cu)};if(V.info(a,i),i.style!==void 0){let s=gm(i.style);a.style=s.style,a.labelStyle=s.labelStyle}i.text=i.title,i.text===void 0?i.style!==void 0&&(a.arrowheadStyle="fill: #333"):(a.arrowheadStyle="fill: #333",a.labelpos="c",pt().flowchart?.htmlLabels??pt().htmlLabels?(a.labelType="html",a.label=''+i.text+""):(a.labelType="text",a.label=i.text.replace(Yt.lineBreakRegex,` +`),i.style===void 0&&(a.style=a.style||"stroke: #333; stroke-width: 1.5px;fill:none"),a.labelStyle=a.labelStyle.replace("color:","fill:"))),t.setEdge(i.id1,i.id2,a,n)})},"addRelations"),cYt=o(function(e){GP={...GP,...e}},"setConf"),uYt=o(async function(e,t,r,n){V.info("Drawing class - ",t);let i=pt().flowchart??pt().class,a=pt().securityLevel;V.info("config:",i);let s=i?.nodeSpacing??50,l=i?.rankSpacing??50,u=new yr({multigraph:!0,compound:!0}).setGraph({rankdir:n.db.getDirection(),nodesep:s,ranksep:l,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),h=n.db.getNamespaces(),f=n.db.getClasses(),d=n.db.getRelations(),p=n.db.getNotes();V.info(d),sYt(h,u,t,n),x0t(f,u,t,n),lYt(d,u),oYt(p,u,d.length+1,f);let m;a==="sandbox"&&(m=Gt("#i"+t));let g=a==="sandbox"?Gt(m.nodes()[0].contentDocument.body):Gt("body"),y=g.select(`[id="${t}"]`),v=g.select("#"+t+" g");if(await g0t(v,u,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",t),Oe.insertTitle(y,"classTitleText",i?.titleTopMargin??5,n.db.getDiagramTitle()),No(u,y,i?.diagramPadding,i?.useMaxWidth),!i?.htmlLabels){let x=a==="sandbox"?m.nodes()[0].contentDocument:document,b=x.querySelectorAll('[id="'+t+'"] .edgeLabel .label');for(let w of b){let S=w.getBBox(),T=x.createElementNS("http://www.w3.org/2000/svg","rect");T.setAttribute("rx",0),T.setAttribute("ry",0),T.setAttribute("width",S.width),T.setAttribute("height",S.height),w.insertBefore(T,w.firstChild)}}},"draw");o(v0t,"getArrowMarker");b0t={setConf:cYt,draw:uYt}});var T0t={};xr(T0t,{diagram:()=>hYt});var hYt,k0t=R(()=>{"use strict";AP();NP();MP();w0t();hYt={parser:f6,db:Zg,renderer:b0t,styles:g6,init:o(e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute,Zg.clear()},"init")}});var UP,D6,HP=R(()=>{"use strict";UP=function(){var e=o(function(F,B,G,z){for(G=G||{},z=F.length;z--;G[F[z]]=B);return G},"o"),t=[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],S=[1,29],T=[1,30],E=[1,31],_=[1,34],A=[1,35],L=[1,36],M=[1,37],N=[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],I=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],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,Q,j,at){var X=j.length-1;switch(Q){case 3:return W.setRootDoc(j[X]),j[X];break;case 4:this.$=[];break;case 5:j[X]!="nl"&&(j[X-1].push(j[X]),this.$=j[X-1]);break;case 6:case 7:this.$=j[X];break;case 8:this.$="nl";break;case 12:this.$=j[X];break;case 13:let q=j[X-1];q.description=W.trimColon(j[X]),this.$=q;break;case 14:this.$={stmt:"relation",state1:j[X-2],state2:j[X]};break;case 15:let K=W.trimColon(j[X]);this.$={stmt:"relation",state1:j[X-3],state2:j[X-1],description:K};break;case 19:this.$={stmt:"state",id:j[X-3],type:"default",description:"",doc:j[X-1]};break;case 20:var J=j[X],Z=j[X-2].trim();if(j[X].match(":")){var H=j[X].split(":");J=H[0],Z=[Z,H[1]]}this.$={stmt:"state",id:J,type:"default",description:Z};break;case 21:this.$={stmt:"state",id:j[X-3],type:"default",description:j[X-5],doc:j[X-1]};break;case 22:this.$={stmt:"state",id:j[X],type:"fork"};break;case 23:this.$={stmt:"state",id:j[X],type:"join"};break;case 24:this.$={stmt:"state",id:j[X],type:"choice"};break;case 25:this.$={stmt:"state",id:W.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:j[X-1].trim(),note:{position:j[X-2].trim(),text:j[X].trim()}};break;case 29:this.$=j[X].trim(),W.setAccTitle(this.$);break;case 30:case 31:this.$=j[X].trim(),W.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:j[X-1].trim(),classes:j[X].trim()};break;case 34:this.$={stmt:"style",id:j[X-1].trim(),styleClass:j[X].trim()};break;case 35:this.$={stmt:"applyClass",id:j[X-1].trim(),styleClass:j[X].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[X].trim(),type:"default",description:""};break;case 44:this.$={stmt:"state",id:j[X-2].trim(),classes:[j[X].trim()],type:"default",description:""};break;case 45:this.$={stmt:"state",id:j[X-2].trim(),classes:[j[X].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:t,5:r,6:n},{1:[3]},{3:5,4:t,5:r,6:n},{3:6,4:t,5:r,6:n},e([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:S,42:T,45:E,48:_,49:A,50:L,51:M,54:N},e(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:S,42:T,45:E,48:_,49:A,50:L,51:M,54:N},e(k,[2,7]),e(k,[2,8]),e(k,[2,9]),e(k,[2,10]),e(k,[2,11]),e(k,[2,12],{14:[1,39],15:[1,40]}),e(k,[2,16]),{18:[1,41]},e(k,[2,18],{20:[1,42]}),{23:[1,43]},e(k,[2,22]),e(k,[2,23]),e(k,[2,24]),e(k,[2,25]),{30:44,31:[1,45],56:[1,46],57:[1,47]},e(k,[2,28]),{34:[1,48]},{36:[1,49]},e(k,[2,31]),{39:[1,50],41:[1,51]},{43:[1,52]},{46:[1,53]},e(I,[2,42],{55:[1,54]}),e(I,[2,43],{55:[1,55]}),e(k,[2,36]),e(k,[2,37]),e(k,[2,38]),e(k,[2,39]),e(k,[2,6]),e(k,[2,13]),{13:56,24:d,54:N},e(k,[2,17]),e(C,i,{7:57}),{24:[1,58]},{24:[1,59]},{23:[1,60]},{24:[2,46]},{24:[2,47]},e(k,[2,29]),e(k,[2,30]),{40:[1,61]},{40:[1,62]},{44:[1,63]},{47:[1,64]},{24:[1,65]},{24:[1,66]},e(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:S,42:T,45:E,48:_,49:A,50:L,51:M,54:N},e(k,[2,20],{20:[1,69]}),{31:[1,70]},{24:[1,71]},e(k,[2,32]),e(k,[2,33]),e(k,[2,34]),e(k,[2,35]),e(I,[2,44]),e(I,[2,45]),e(k,[2,15]),e(k,[2,19]),e(C,i,{7:72}),e(k,[2,26]),e(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:S,42:T,45:E,48:_,49:A,50:L,51:M,54:N},e(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=[],Q=[null],j=[],at=this.table,X="",J=0,Z=0,H=0,q=2,K=1,ot=j.slice.call(arguments,1),ct=Object.create(this.lexer),ut={yy:{}};for(var et in this.yy)Object.prototype.hasOwnProperty.call(this.yy,et)&&(ut.yy[et]=this.yy[et]);ct.setInput(B,ut.yy),ut.yy.lexer=ct,ut.yy.parser=this,typeof ct.yylloc>"u"&&(ct.yylloc={});var Mt=ct.yylloc;j.push(Mt);var it=ct.options&&ct.options.ranges;typeof ut.yy.parseError=="function"?this.parseError=ut.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function wt(Tt){z.length=z.length-2*Tt,Q.length=Q.length-Tt,j.length=j.length-Tt}o(wt,"popStack");function Ot(){var Tt;return Tt=W.pop()||ct.lex()||K,typeof Tt!="number"&&(Tt instanceof Array&&(W=Tt,Tt=W.pop()),Tt=G.symbols_[Tt]||Tt),Tt}o(Ot,"lex");for(var St,Vt,Pt,_t,dt,Y,ft={},mt,rt,ht,nt;;){if(Pt=z[z.length-1],this.defaultActions[Pt]?_t=this.defaultActions[Pt]:((St===null||typeof St>"u")&&(St=Ot()),_t=at[Pt]&&at[Pt][St]),typeof _t>"u"||!_t.length||!_t[0]){var st="";nt=[];for(mt in at[Pt])this.terminals_[mt]&&mt>q&&nt.push("'"+this.terminals_[mt]+"'");ct.showPosition?st="Parse error on line "+(J+1)+`: +`+ct.showPosition()+` +Expecting `+nt.join(", ")+", got '"+(this.terminals_[St]||St)+"'":st="Parse error on line "+(J+1)+": Unexpected "+(St==K?"end of input":"'"+(this.terminals_[St]||St)+"'"),this.parseError(st,{text:ct.match,token:this.terminals_[St]||St,line:ct.yylineno,loc:Mt,expected:nt})}if(_t[0]instanceof Array&&_t.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Pt+", token: "+St);switch(_t[0]){case 1:z.push(St),Q.push(ct.yytext),j.push(ct.yylloc),z.push(_t[1]),St=null,Vt?(St=Vt,Vt=null):(Z=ct.yyleng,X=ct.yytext,J=ct.yylineno,Mt=ct.yylloc,H>0&&H--);break;case 2:if(rt=this.productions_[_t[1]][1],ft.$=Q[Q.length-rt],ft._$={first_line:j[j.length-(rt||1)].first_line,last_line:j[j.length-1].last_line,first_column:j[j.length-(rt||1)].first_column,last_column:j[j.length-1].last_column},it&&(ft._$.range=[j[j.length-(rt||1)].range[0],j[j.length-1].range[1]]),Y=this.performAction.apply(ft,[X,Z,J,ut.yy,_t[1],Q,j].concat(ot)),typeof Y<"u")return Y;rt&&(z=z.slice(0,-1*rt*2),Q=Q.slice(0,-1*rt),j=j.slice(0,-1*rt)),z.push(this.productions_[_t[1]][0]),Q.push(ft.$),j.push(ft._$),ht=at[z[z.length-2]][z[z.length-1]],z.push(ht);break;case 3:return!0}}return!0},"parse")},D=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 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: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=[Q[0],Q[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,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))),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 Q)this[j]=Q[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 Q=this._currentRules(),j=0;jG[0].length)){if(G=z,W=j,this.options.backtrack_lexer){if(B=this.test_match(z,Q[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,Q[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,Q){var j=Q;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=D;function P(){this.yy={}}return o(P,"Parser"),P.prototype=O,O.Parser=P,new P}();UP.parser=UP;D6=UP});var S0t,R6,e1,Qx,A0t,_0t,L0t,z0,N6,WP,YP,qP,XP,jP,M6,I6,D0t,R0t,KP,QP,N0t,M0t,r1,mYt,I0t,ZP,gYt,yYt,O0t,P0t,vYt,B0t,xYt,F0t,JP,tB,z0t,O6,$0t,eB,P6=R(()=>{"use strict";S0t="LR",R6="TB",e1="state",Qx="relation",A0t="classDef",_0t="style",L0t="applyClass",z0="default",N6="divider",WP="fill:none",YP="fill: #333",qP="c",XP="text",jP="normal",M6="rect",I6="rectWithTitle",D0t="stateStart",R0t="stateEnd",KP="divider",QP="roundedWithTitle",N0t="note",M0t="noteGroup",r1="statediagram",mYt="state",I0t=`${r1}-${mYt}`,ZP="transition",gYt="note",yYt="note-edge",O0t=`${ZP} ${yYt}`,P0t=`${r1}-${gYt}`,vYt="cluster",B0t=`${r1}-${vYt}`,xYt="cluster-alt",F0t=`${r1}-${xYt}`,JP="parent",tB="note",z0t="state",O6="----",$0t=`${O6}${tB}`,eB=`${O6}${JP}`});function rB(e="",t=0,r="",n=O6){let i=r!==null&&r.length>0?`${n}${r}`:"";return`${z0t}-${e}${i}-${t}`}function B6(e,t,r){if(!t.id||t.id===""||t.id==="")return;t.cssClasses&&(Array.isArray(t.cssCompiledStyles)||(t.cssCompiledStyles=[]),t.cssClasses.split(" ").forEach(i=>{if(r.get(i)){let a=r.get(i);t.cssCompiledStyles=[...t.cssCompiledStyles,...a.styles]}}));let n=e.find(i=>i.id===t.id);n?Object.assign(n,t):e.push(t)}function wYt(e){return e?.classes?.join(" ")??""}function TYt(e){return e?.styles??[]}var F6,Tf,bYt,G0t,n1,V0t,U0t=R(()=>{"use strict";Ue();ce();hr();P6();F6=new Map,Tf=0;o(rB,"stateDomId");bYt=o((e,t,r,n,i,a,s,l)=>{V.trace("items",t),t.forEach(u=>{switch(u.stmt){case e1:n1(e,u,r,n,i,a,s,l);break;case z0:n1(e,u,r,n,i,a,s,l);break;case Qx:{n1(e,u.state1,r,n,i,a,s,l),n1(e,u.state2,r,n,i,a,s,l);let h={id:"edge"+Tf,start:u.state1.id,end:u.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:WP,labelStyle:"",label:Yt.sanitizeText(u.description,pt()),arrowheadStyle:YP,labelpos:qP,labelType:XP,thickness:jP,classes:ZP,look:s};i.push(h),Tf++}break}})},"setupDoc"),G0t=o((e,t=R6)=>{let r=t;if(e.doc)for(let n of e.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir");o(B6,"insertOrUpdateNode");o(wYt,"getClassesFromDbInfo");o(TYt,"getStylesFromDbInfo");n1=o((e,t,r,n,i,a,s,l)=>{let u=t.id,h=r.get(u),f=wYt(h),d=TYt(h);if(V.info("dataFetcher parsedItem",t,h,d),u!=="root"){let p=M6;t.start===!0?p=D0t:t.start===!1&&(p=R0t),t.type!==z0&&(p=t.type),F6.get(u)||F6.set(u,{id:u,shape:p,description:Yt.sanitizeText(u,pt()),cssClasses:`${f} ${I0t}`,cssStyles:d});let m=F6.get(u);t.description&&(Array.isArray(m.description)?(m.shape=I6,m.description.push(t.description)):m.description?.length>0?(m.shape=I6,m.description===u?m.description=[t.description]:m.description=[m.description,t.description]):(m.shape=M6,m.description=t.description),m.description=Yt.sanitizeTextOrArray(m.description,pt())),m.description?.length===1&&m.shape===I6&&(m.type==="group"?m.shape=QP:m.shape=M6),!m.type&&t.doc&&(V.info("Setting cluster for XCX",u,G0t(t)),m.type="group",m.isGroup=!0,m.dir=G0t(t),m.shape=t.type===N6?KP:QP,m.cssClasses=`${m.cssClasses} ${B0t} ${a?F0t:""}`);let g={labelStyle:"",shape:m.shape,label:m.description,cssClasses:m.cssClasses,cssCompiledStyles:[],cssStyles:m.cssStyles,id:u,dir:m.dir,domId:rB(u,Tf),type:m.type,isGroup:m.type==="group",padding:8,rx:10,ry:10,look:s};if(g.shape===KP&&(g.label=""),e&&e.id!=="root"&&(V.trace("Setting node ",u," to be child of its parent ",e.id),g.parentId=e.id),g.centerLabel=!0,t.note){let y={labelStyle:"",shape:N0t,label:t.note.text,cssClasses:P0t,cssStyles:[],cssCompilesStyles:[],id:u+$0t+"-"+Tf,domId:rB(u,Tf,tB),type:m.type,isGroup:m.type==="group",padding:pt().flowchart.padding,look:s,position:t.note.position},v=u+eB,x={labelStyle:"",shape:M0t,label:t.note.text,cssClasses:m.cssClasses,cssStyles:[],id:u+eB,domId:rB(u,Tf,JP),type:"group",isGroup:!0,padding:16,look:s,position:t.note.position};Tf++,x.id=v,y.parentId=v,B6(n,x,l),B6(n,y,l),B6(n,g,l);let b=u,w=y.id;t.note.position==="left of"&&(b=y.id,w=u),i.push({id:b+"-"+w,start:b,end:w,arrowhead:"none",arrowTypeEnd:"",style:WP,labelStyle:"",classes:O0t,arrowheadStyle:YP,labelpos:qP,labelType:XP,thickness:jP,look:s})}else B6(n,g,l)}t.doc&&(V.trace("Adding nodes children "),bYt(t,t.doc,r,n,i,!a,s,l))},"dataFetcher"),V0t=o(()=>{F6.clear(),Tf=0},"reset")});var nB,kYt,EYt,H0t,iB=R(()=>{"use strict";Ue();ce();pL();ZT();TR();_r();P6();nB=o((e,t=R6)=>{if(!e.doc)return t;let r=t;for(let n of e.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),kYt=o(function(e,t){return t.db.extract(t.db.getRootDocV2()),t.db.getClasses()},"getClasses"),EYt=o(async function(e,t,r,n){V.info("REF0:"),V.info("Drawing state diagram (v2)",t);let{securityLevel:i,state:a,layout:s}=pt();n.db.extract(n.db.getRootDocV2());let l=n.db.getData(),u=rw(t,i);l.type=n.type,l.layoutAlgorithm=s,l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["barb"],l.diagramId=t,await QT(l,u);let h=8;Oe.insertTitle(u,"statediagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),JT(u,h,r1,a?.useMaxWidth??!0)},"draw"),H0t={getClasses:kYt,draw:EYt,getDir:nB}});function Q0t(){return new Map}function aB(e=""){let t=e;return e===lB&&(Zx++,t=`${X0t}${Zx}`),t}function sB(e="",t=z0){return e===lB?X0t:t}function IYt(e=""){let t=e;return e===j0t&&(Zx++,t=`${K0t}${Zx}`),t}function OYt(e="",t=z0){return e===j0t?K0t:t}function PYt(e,t,r){let n=aB(e.id.trim()),i=sB(e.id.trim(),e.type),a=aB(t.id.trim()),s=sB(t.id.trim(),t.type);kf(n,i,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),kf(a,s,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),Hs.relations.push({id1:n,id2:a,relationTitle:Yt.sanitizeText(r,pt())})}var lB,X0t,j0t,K0t,W0t,Y0t,CYt,SYt,G6,cB,Z0t,V6,i1,J0t,U6,Hs,Zx,q0t,AYt,_Yt,z6,LYt,DYt,$6,uB,RYt,kf,tpt,$0,ept,NYt,MYt,rpt,oB,BYt,FYt,npt,zYt,hB,$Yt,GYt,VYt,UYt,HYt,WYt,el,H6=R(()=>{"use strict";ce();_r();hr();Ue();Ci();U0t();iB();P6();lB="[*]",X0t="start",j0t=lB,K0t="end",W0t="color",Y0t="fill",CYt="bgFill",SYt=",";o(Q0t,"newClassesList");G6=[],cB=[],Z0t=S0t,V6=[],i1=Q0t(),J0t=o(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),U6={root:J0t()},Hs=U6.root,Zx=0,q0t=0,AYt={LINE:0,DOTTED_LINE:1},_Yt={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},z6=o(e=>JSON.parse(JSON.stringify(e)),"clone"),LYt=o(e=>{V.info("Setting root doc",e),V6=e},"setRootDoc"),DYt=o(()=>V6,"getRootDoc"),$6=o((e,t,r)=>{if(t.stmt===Qx)$6(e,t.state1,!0),$6(e,t.state2,!1);else if(t.stmt===e1&&(t.id==="[*]"?(t.id=r?e.id+"_start":e.id+"_end",t.start=r):t.id=t.id.trim()),t.doc){let n=[],i=[],a;for(a=0;a0&&i.length>0){let s={stmt:e1,id:z9(),type:"divider",doc:z6(i)};n.push(z6(s)),t.doc=n}t.doc.forEach(s=>$6(t,s,!0))}},"docTranslator"),uB=o(()=>($6({id:"root"},{id:"root",doc:V6},!0),{id:"root",doc:V6}),"getRootDocV2"),RYt=o(e=>{let t;e.doc?t=e.doc:t=e,V.info(t),tpt(!0),V.info("Extract initial document:",t),t.forEach(a=>{switch(V.warn("Statement",a.stmt),a.stmt){case e1:kf(a.id.trim(),a.type,a.doc,a.description,a.note,a.classes,a.styles,a.textStyles);break;case Qx:rpt(a.state1,a.state2,a.description);break;case A0t:npt(a.id.trim(),a.classes);break;case _0t:{let s=a.id.trim().split(","),l=a.styleClass.split(",");s.forEach(u=>{let h=$0(u);if(h===void 0){let f=u.trim();kf(f),h=$0(f)}h.styles=l.map(f=>f.replace(/;/g,"")?.trim())})}break;case L0t:hB(a.id.trim(),a.styleClass);break}});let r=ept(),i=pt().look;V0t(),n1(void 0,uB(),r,G6,cB,!0,i,i1),G6.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"),kf=o(function(e,t=z0,r=null,n=null,i=null,a=null,s=null,l=null){let u=e?.trim();if(Hs.states.has(u)?(Hs.states.get(u).doc||(Hs.states.get(u).doc=r),Hs.states.get(u).type||(Hs.states.get(u).type=t)):(V.info("Adding state ",u,n),Hs.states.set(u,{id:u,descriptions:[],type:t,doc:r,note:i,classes:[],styles:[],textStyles:[]})),n&&(V.info("Setting state description",u,n),typeof n=="string"&&oB(u,n.trim()),typeof n=="object"&&n.forEach(h=>oB(u,h.trim()))),i){let h=Hs.states.get(u);h.note=i,h.note.text=Yt.sanitizeText(h.note.text,pt())}a&&(V.info("Setting state classes",u,a),(typeof a=="string"?[a]:a).forEach(f=>hB(u,f.trim()))),s&&(V.info("Setting state styles",u,s),(typeof s=="string"?[s]:s).forEach(f=>$Yt(u,f.trim()))),l&&(V.info("Setting state styles",u,s),(typeof l=="string"?[l]:l).forEach(f=>GYt(u,f.trim())))},"addState"),tpt=o(function(e){G6=[],cB=[],U6={root:J0t()},Hs=U6.root,Zx=0,i1=Q0t(),e||Ar()},"clear"),$0=o(function(e){return Hs.states.get(e)},"getState"),ept=o(function(){return Hs.states},"getStates"),NYt=o(function(){V.info("Documents = ",U6)},"logDocuments"),MYt=o(function(){return Hs.relations},"getRelations");o(aB,"startIdIfNeeded");o(sB,"startTypeIfNeeded");o(IYt,"endIdIfNeeded");o(OYt,"endTypeIfNeeded");o(PYt,"addRelationObjs");rpt=o(function(e,t,r){if(typeof e=="object")PYt(e,t,r);else{let n=aB(e.trim()),i=sB(e),a=IYt(t.trim()),s=OYt(t);kf(n,i),kf(a,s),Hs.relations.push({id1:n,id2:a,title:Yt.sanitizeText(r,pt())})}},"addRelation"),oB=o(function(e,t){let r=Hs.states.get(e),n=t.startsWith(":")?t.replace(":","").trim():t;r.descriptions.push(Yt.sanitizeText(n,pt()))},"addDescription"),BYt=o(function(e){return e.substring(0,1)===":"?e.substr(2).trim():e.trim()},"cleanupLabel"),FYt=o(()=>(q0t++,"divider-id-"+q0t),"getDividerId"),npt=o(function(e,t=""){i1.has(e)||i1.set(e,{id:e,styles:[],textStyles:[]});let r=i1.get(e);t?.split(SYt).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(W0t).exec(n)){let s=i.replace(Y0t,CYt).replace(W0t,Y0t);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),zYt=o(function(){return i1},"getClasses"),hB=o(function(e,t){e.split(",").forEach(function(r){let n=$0(r);if(n===void 0){let i=r.trim();kf(i),n=$0(i)}n.classes.push(t)})},"setCssClass"),$Yt=o(function(e,t){let r=$0(e);r!==void 0&&r.styles.push(t)},"setStyle"),GYt=o(function(e,t){let r=$0(e);r!==void 0&&r.textStyles.push(t)},"setTextStyle"),VYt=o(()=>Z0t,"getDirection"),UYt=o(e=>{Z0t=e},"setDirection"),HYt=o(e=>e&&e[0]===":"?e.substr(1).trim():e.trim(),"trimColon"),WYt=o(()=>{let e=pt();return{nodes:G6,edges:cB,other:{},config:e,direction:nB(uB())}},"getData"),el={getConfig:o(()=>pt().state,"getConfig"),getData:WYt,addState:kf,clear:tpt,getState:$0,getStates:ept,getRelations:MYt,getClasses:zYt,getDirection:VYt,addRelation:rpt,getDividerId:FYt,setDirection:UYt,cleanupLabel:BYt,lineType:AYt,relationType:_Yt,logDocuments:NYt,getRootDoc:DYt,setRootDoc:LYt,getRootDocV2:uB,extract:RYt,trimColon:HYt,getAccTitle:Br,setAccTitle:Mr,getAccDescription:zr,setAccDescription:Fr,addStyleClass:npt,setCssClass:hB,addDescription:oB,setDiagramTitle:cn,getDiagramTitle:Jr}});var YYt,W6,fB=R(()=>{"use strict";YYt=o(e=>` +defs #statediagram-barbEnd { + fill: ${e.transitionColor}; + stroke: ${e.transitionColor}; + } +g.stateGroup text { + fill: ${e.nodeBorder}; + stroke: none; + font-size: 10px; +} +g.stateGroup text { + fill: ${e.textColor}; + stroke: none; + font-size: 10px; + +} +g.stateGroup .state-title { + font-weight: bolder; + fill: ${e.stateLabelColor}; +} + +g.stateGroup rect { + fill: ${e.mainBkg}; + stroke: ${e.nodeBorder}; +} + +g.stateGroup line { + stroke: ${e.lineColor}; + stroke-width: 1; +} + +.transition { + stroke: ${e.transitionColor}; + stroke-width: 1; + fill: none; +} + +.stateGroup .composit { + fill: ${e.background}; + border-bottom: 1px +} + +.stateGroup .alt-composit { + fill: #e0e0e0; + border-bottom: 1px +} + +.state-note { + stroke: ${e.noteBorderColor}; + fill: ${e.noteBkgColor}; + + text { + fill: ${e.noteTextColor}; + stroke: none; + font-size: 10px; + } +} + +.stateLabel .box { + stroke: none; + stroke-width: 0; + fill: ${e.mainBkg}; + opacity: 0.5; +} + +.edgeLabel .label rect { + fill: ${e.labelBackgroundColor}; + opacity: 0.5; +} +.edgeLabel { + background-color: ${e.edgeLabelBackground}; + p { + background-color: ${e.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${e.edgeLabelBackground}; + fill: ${e.edgeLabelBackground}; + } + text-align: center; +} +.edgeLabel .label text { + fill: ${e.transitionLabelColor||e.tertiaryTextColor}; +} +.label div .edgeLabel { + color: ${e.transitionLabelColor||e.tertiaryTextColor}; +} + +.stateLabel text { + fill: ${e.stateLabelColor}; + font-size: 10px; + font-weight: bold; +} + +.node circle.state-start { + fill: ${e.specialStateColor}; + stroke: ${e.specialStateColor}; +} + +.node .fork-join { + fill: ${e.specialStateColor}; + stroke: ${e.specialStateColor}; +} + +.node circle.state-end { + fill: ${e.innerEndBackground}; + stroke: ${e.background}; + stroke-width: 1.5 +} +.end-state-inner { + fill: ${e.compositeBackground||e.background}; + // stroke: ${e.background}; + stroke-width: 1.5 +} + +.node rect { + fill: ${e.stateBkg||e.mainBkg}; + stroke: ${e.stateBorder||e.nodeBorder}; + stroke-width: 1px; +} +.node polygon { + fill: ${e.mainBkg}; + stroke: ${e.stateBorder||e.nodeBorder};; + stroke-width: 1px; +} +#statediagram-barbEnd { + fill: ${e.lineColor}; +} + +.statediagram-cluster rect { + fill: ${e.compositeTitleBackground}; + stroke: ${e.stateBorder||e.nodeBorder}; + stroke-width: 1px; +} + +.cluster-label, .nodeLabel { + color: ${e.stateLabelColor}; + // line-height: 1; +} + +.statediagram-cluster rect.outer { + rx: 5px; + ry: 5px; +} +.statediagram-state .divider { + stroke: ${e.stateBorder||e.nodeBorder}; +} + +.statediagram-state .title-state { + rx: 5px; + ry: 5px; +} +.statediagram-cluster.statediagram-cluster .inner { + fill: ${e.compositeBackground||e.background}; +} +.statediagram-cluster.statediagram-cluster-alt .inner { + fill: ${e.altBackground?e.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: ${e.altBackground?e.altBackground:"#efefef"}; +} + +.note-edge { + stroke-dasharray: 5; +} + +.statediagram-note rect { + fill: ${e.noteBkgColor}; + stroke: ${e.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} +.statediagram-note rect { + fill: ${e.noteBkgColor}; + stroke: ${e.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} + +.statediagram-note text { + fill: ${e.noteTextColor}; +} + +.statediagram-note .nodeLabel { + color: ${e.noteTextColor}; +} +.statediagram .edgeLabel { + color: red; // ${e.noteTextColor}; +} + +#dependencyStart, #dependencyEnd { + fill: ${e.lineColor}; + stroke: ${e.lineColor}; + stroke-width: 1; +} + +.statediagramTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; +} +`,"getStyles"),W6=YYt});var dB,qYt,XYt,ipt,jYt,apt,spt=R(()=>{"use strict";dB={},qYt=o((e,t)=>{dB[e]=t},"set"),XYt=o(e=>dB[e],"get"),ipt=o(()=>Object.keys(dB),"keys"),jYt=o(()=>ipt().length,"size"),apt={get:XYt,set:qYt,keys:ipt,size:jYt}});var KYt,QYt,ZYt,JYt,lpt,tqt,eqt,rqt,nqt,pB,opt,cpt,upt=R(()=>{"use strict";ur();spt();H6();_r();hr();Ue();ce();KYt=o(e=>e.append("circle").attr("class","start-state").attr("r",pt().state.sizeUnit).attr("cx",pt().state.padding+pt().state.sizeUnit).attr("cy",pt().state.padding+pt().state.sizeUnit),"drawStartState"),QYt=o(e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",pt().state.textHeight).attr("class","divider").attr("x2",pt().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),ZYt=o((e,t)=>{let r=e.append("text").attr("x",2*pt().state.padding).attr("y",pt().state.textHeight+2*pt().state.padding).attr("font-size",pt().state.fontSize).attr("class","state-title").text(t.id),n=r.node().getBBox();return e.insert("rect",":first-child").attr("x",pt().state.padding).attr("y",pt().state.padding).attr("width",n.width+2*pt().state.padding).attr("height",n.height+2*pt().state.padding).attr("rx",pt().state.radius),r},"drawSimpleState"),JYt=o((e,t)=>{let r=o(function(p,m,g){let y=p.append("tspan").attr("x",2*pt().state.padding).text(m);g||y.attr("dy",pt().state.textHeight)},"addTspan"),i=e.append("text").attr("x",2*pt().state.padding).attr("y",pt().state.textHeight+1.3*pt().state.padding).attr("font-size",pt().state.fontSize).attr("class","state-title").text(t.descriptions[0]).node().getBBox(),a=i.height,s=e.append("text").attr("x",pt().state.padding).attr("y",a+pt().state.padding*.4+pt().state.dividerMargin+pt().state.textHeight).attr("class","state-description"),l=!0,u=!0;t.descriptions.forEach(function(p){l||(r(s,p,u),u=!1),l=!1});let h=e.append("line").attr("x1",pt().state.padding).attr("y1",pt().state.padding+a+pt().state.dividerMargin/2).attr("y2",pt().state.padding+a+pt().state.dividerMargin/2).attr("class","descr-divider"),f=s.node().getBBox(),d=Math.max(f.width,i.width);return h.attr("x2",d+3*pt().state.padding),e.insert("rect",":first-child").attr("x",pt().state.padding).attr("y",pt().state.padding).attr("width",d+2*pt().state.padding).attr("height",f.height+a+2*pt().state.padding).attr("rx",pt().state.radius),e},"drawDescrState"),lpt=o((e,t,r)=>{let n=pt().state.padding,i=2*pt().state.padding,a=e.node().getBBox(),s=a.width,l=a.x,u=e.append("text").attr("x",0).attr("y",pt().state.titleShift).attr("font-size",pt().state.fontSize).attr("class","state-title").text(t.id),f=u.node().getBBox().width+i,d=Math.max(f,s);d===s&&(d=d+i);let p,m=e.node().getBBox();t.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-pt().state.textHeight;return e.insert("rect",":first-child").attr("x",p).attr("y",g).attr("class",r?"alt-composit":"composit").attr("width",d).attr("height",m.height+pt().state.textHeight+pt().state.titleShift+1).attr("rx","0"),u.attr("x",p+n),f<=s&&u.attr("x",l+(d-i)/2-f/2+n),e.insert("rect",":first-child").attr("x",p).attr("y",pt().state.titleShift-pt().state.textHeight-pt().state.padding).attr("width",d).attr("height",pt().state.textHeight*3).attr("rx",pt().state.radius),e.insert("rect",":first-child").attr("x",p).attr("y",pt().state.titleShift-pt().state.textHeight-pt().state.padding).attr("width",d).attr("height",m.height+3+2*pt().state.textHeight).attr("rx",pt().state.radius),e},"addTitleAndBox"),tqt=o(e=>(e.append("circle").attr("class","end-state-outer").attr("r",pt().state.sizeUnit+pt().state.miniPadding).attr("cx",pt().state.padding+pt().state.sizeUnit+pt().state.miniPadding).attr("cy",pt().state.padding+pt().state.sizeUnit+pt().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",pt().state.sizeUnit).attr("cx",pt().state.padding+pt().state.sizeUnit+2).attr("cy",pt().state.padding+pt().state.sizeUnit+2)),"drawEndState"),eqt=o((e,t)=>{let r=pt().state.forkWidth,n=pt().state.forkHeight;if(t.parentId){let i=r;r=n,n=i}return e.append("rect").style("stroke","black").style("fill","black").attr("width",r).attr("height",n).attr("x",pt().state.padding).attr("y",pt().state.padding)},"drawForkJoinState"),rqt=o((e,t,r,n)=>{let i=0,a=n.append("text");a.style("text-anchor","start"),a.attr("class","noteText");let s=e.replace(/\r\n/g,"
    ");s=s.replace(/\n/g,"
    ");let l=s.split(Yt.lineBreakRegex),u=1.25*pt().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",t+pt().state.noteMargin),d.attr("y",r+i+1.25*pt().state.noteMargin)}}return{textWidth:a.node().getBBox().width,textHeight:i}},"_drawLongText"),nqt=o((e,t)=>{t.attr("class","state-note");let r=t.append("rect").attr("x",0).attr("y",pt().state.padding),n=t.append("g"),{textWidth:i,textHeight:a}=rqt(e,0,0,n);return r.attr("height",a+2*pt().state.noteMargin),r.attr("width",i+pt().state.noteMargin*2),r},"drawNote"),pB=o(function(e,t){let r=t.id,n={id:r,label:t.id,width:0,height:0},i=e.append("g").attr("id",r).attr("class","stateGroup");t.type==="start"&&KYt(i),t.type==="end"&&tqt(i),(t.type==="fork"||t.type==="join")&&eqt(i,t),t.type==="note"&&nqt(t.note.text,i),t.type==="divider"&&QYt(i),t.type==="default"&&t.descriptions.length===0&&ZYt(i,t),t.type==="default"&&t.descriptions.length>0&&JYt(i,t);let a=i.node().getBBox();return n.width=a.width+2*pt().state.padding,n.height=a.height+2*pt().state.padding,apt.set(r,n),n},"drawState"),opt=0,cpt=o(function(e,t,r){let n=o(function(u){switch(u){case el.relationType.AGGREGATION:return"aggregation";case el.relationType.EXTENSION:return"extension";case el.relationType.COMPOSITION:return"composition";case el.relationType.DEPENDENCY:return"dependency"}},"getRelationType");t.points=t.points.filter(u=>!Number.isNaN(u.y));let i=t.points,a=ma().x(function(u){return u.x}).y(function(u){return u.y}).curve(Ts),s=e.append("path").attr("d",a(i)).attr("id","edge"+opt).attr("class","transition"),l="";if(pt().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(el.relationType.DEPENDENCY)+"End)"),r.title!==void 0){let u=e.append("g").attr("class","stateLabel"),{x:h,y:f}=Oe.calcLabelPosition(t.points),d=Yt.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),S=w.node().getBBox();g=Math.max(g,S.width),y=Math.min(y,S.x),V.info(S.x,h,f+p),p===0&&(p=w.node().getBBox().height,V.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,S)=>w.attr("y",f+S*p-b)),v=p*d.length}let x=u.node().getBBox();u.insert("rect",":first-child").attr("class","box").attr("x",h-g/2-pt().state.padding/2).attr("y",f-v/2-pt().state.padding/2-3.5).attr("width",g+pt().state.padding).attr("height",v+pt().state.padding),V.info(x)}opt++},"drawEdge")});var bo,mB,iqt,aqt,sqt,oqt,hpt,fpt,dpt=R(()=>{"use strict";ur();Xd();wa();ce();hr();upt();Ue();Jn();mB={},iqt=o(function(){},"setConf"),aqt=o(function(e){e.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"),sqt=o(function(e,t,r,n){bo=pt().state;let i=pt().securityLevel,a;i==="sandbox"&&(a=Gt("#i"+t));let s=i==="sandbox"?Gt(a.nodes()[0].contentDocument.body):Gt("body"),l=i==="sandbox"?a.nodes()[0].contentDocument:document;V.debug("Rendering diagram "+e);let u=s.select(`[id='${t}']`);aqt(u);let h=n.db.getRootDoc();hpt(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;Pr(u,m,g,bo.useMaxWidth),u.attr("viewBox",`${d.x-bo.padding} ${d.y-bo.padding} `+p+" "+m)},"draw"),oqt=o(e=>e?e.length*bo.fontSizeFactor:1,"getLabelWidth"),hpt=o((e,t,r,n,i,a,s)=>{let l=new yr({compound:!0,multigraph:!0}),u,h=!0;for(u=0;u{let T=S.parentElement,E=0,_=0;T&&(T.parentElement&&(E=T.parentElement.getBBox().width),_=parseInt(T.getAttribute("data-x-shift"),10),Number.isNaN(_)&&(_=0)),S.setAttribute("x1",0-_+8),S.setAttribute("x2",E-_-8)})):V.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&&(V.debug("Edge "+b.v+" -> "+b.w+": "+JSON.stringify(l.edge(b))),cpt(t,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,V.debug("Doc rendered",x,l),x},"renderDoc"),fpt={setConf:iqt,draw:sqt}});var ppt={};xr(ppt,{diagram:()=>lqt});var lqt,mpt=R(()=>{"use strict";HP();H6();fB();dpt();lqt={parser:D6,db:el,renderer:fpt,styles:W6,init:o(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,el.clear()},"init")}});var vpt={};xr(vpt,{diagram:()=>fqt});var fqt,xpt=R(()=>{"use strict";HP();H6();fB();iB();fqt={parser:D6,db:el,renderer:H0t,styles:W6,init:o(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute,el.clear()},"init")}});var gB,Tpt,kpt=R(()=>{"use strict";gB=function(){var e=o(function(d,p,m,g){for(m=m||{},g=d.length;g--;m[d[g]]=p);return m},"o"),t=[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]},e(t,[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},e(t,[2,7],{1:[2,1]}),e(t,[2,3]),{9:15,11:r,12:n,14:i,16:a,17:s,18:l},e(t,[2,5]),e(t,[2,6]),e(t,[2,8]),{13:[1,16]},{15:[1,17]},e(t,[2,11]),e(t,[2,12]),{19:[1,18]},e(t,[2,4]),e(t,[2,9]),e(t,[2,10]),e(t,[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="",S=0,T=0,E=0,_=2,A=1,L=x.slice.call(arguments,1),M=Object.create(this.lexer),N={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(N.yy[k]=this.yy[k]);M.setInput(p,N.yy),N.yy.lexer=M,N.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var I=M.yylloc;x.push(I);var C=M.options&&M.options.ranges;typeof N.yy.parseError=="function"?this.parseError=N.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 D(){var H;return H=y.pop()||M.lex()||A,typeof H!="number"&&(H instanceof Array&&(y=H,H=y.pop()),H=m.symbols_[H]||H),H}o(D,"lex");for(var P,F,B,G,z,W,Q={},j,at,X,J;;){if(B=g[g.length-1],this.defaultActions[B]?G=this.defaultActions[B]:((P===null||typeof P>"u")&&(P=D()),G=b[B]&&b[B][P]),typeof G>"u"||!G.length||!G[0]){var Z="";J=[];for(j in b[B])this.terminals_[j]&&j>_&&J.push("'"+this.terminals_[j]+"'");M.showPosition?Z="Parse error on line "+(S+1)+`: +`+M.showPosition()+` +Expecting `+J.join(", ")+", got '"+(this.terminals_[P]||P)+"'":Z="Parse error on line "+(S+1)+": Unexpected "+(P==A?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(Z,{text:M.match,token:this.terminals_[P]||P,line:M.yylineno,loc:I,expected:J})}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(M.yytext),x.push(M.yylloc),g.push(G[1]),P=null,F?(P=F,F=null):(T=M.yyleng,w=M.yytext,S=M.yylineno,I=M.yylloc,E>0&&E--);break;case 2:if(at=this.productions_[G[1]][1],Q.$=v[v.length-at],Q._$={first_line:x[x.length-(at||1)].first_line,last_line:x[x.length-1].last_line,first_column:x[x.length-(at||1)].first_column,last_column:x[x.length-1].last_column},C&&(Q._$.range=[x[x.length-(at||1)].range[0],x[x.length-1].range[1]]),W=this.performAction.apply(Q,[w,T,S,N.yy,G[1],v,x].concat(L)),typeof W<"u")return W;at&&(g=g.slice(0,-1*at*2),v=v.slice(0,-1*at),x=x.slice(0,-1*at)),g.push(this.productions_[G[1]][0]),v.push(Q.$),x.push(Q._$),X=b[g[g.length-2]][g[g.length-1]],g.push(X);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}();gB.parser=gB;Tpt=gB});var a1,yB,Jx,tb,gqt,yqt,vqt,xqt,bqt,wqt,Tqt,Ept,kqt,vB,Cpt=R(()=>{"use strict";Ue();Ci();a1="",yB=[],Jx=[],tb=[],gqt=o(function(){yB.length=0,Jx.length=0,a1="",tb.length=0,Ar()},"clear"),yqt=o(function(e){a1=e,yB.push(e)},"addSection"),vqt=o(function(){return yB},"getSections"),xqt=o(function(){let e=Ept(),t=100,r=0;for(;!e&&r{r.people&&e.push(...r.people)}),[...new Set(e)].sort()},"updateActors"),wqt=o(function(e,t){let r=t.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:e,score:n};tb.push(s)},"addTask"),Tqt=o(function(e){let t={section:a1,type:a1,description:e,task:e,classes:[]};Jx.push(t)},"addTaskOrg"),Ept=o(function(){let e=o(function(r){return tb[r].processed},"compileTask"),t=!0;for(let[r,n]of tb.entries())e(r),t=t&&n.processed;return t},"compileTasks"),kqt=o(function(){return bqt()},"getActors"),vB={getConfig:o(()=>pt().journey,"getConfig"),clear:gqt,setDiagramTitle:cn,getDiagramTitle:Jr,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addSection:yqt,getSections:vqt,getTasks:xqt,addTask:wqt,addTaskOrg:Tqt,getActors:kqt}});var Eqt,Spt,Apt=R(()=>{"use strict";Eqt=o(e=>`.label { + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + color: ${e.textColor}; + } + .mouth { + stroke: #666; + } + + line { + stroke: ${e.textColor} + } + + .legend { + fill: ${e.textColor}; + } + + .label text { + fill: #333; + } + .label { + color: ${e.textColor} + } + + .face { + ${e.faceColor?`fill: ${e.faceColor}`:"fill: #FFF8DC"}; + stroke: #999; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${e.mainBkg}; + stroke: ${e.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${e.arrowheadColor}; + } + + .edgePath .path { + stroke: ${e.lineColor}; + stroke-width: 1.5px; + } + + .flowchart-link { + stroke: ${e.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${e.edgeLabelBackground}; + rect { + opacity: 0.5; + } + text-align: center; + } + + .cluster rect { + } + + .cluster text { + fill: ${e.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: ${e.tertiaryColor}; + border: 1px solid ${e.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .task-type-0, .section-type-0 { + ${e.fillType0?`fill: ${e.fillType0}`:""}; + } + .task-type-1, .section-type-1 { + ${e.fillType0?`fill: ${e.fillType1}`:""}; + } + .task-type-2, .section-type-2 { + ${e.fillType0?`fill: ${e.fillType2}`:""}; + } + .task-type-3, .section-type-3 { + ${e.fillType0?`fill: ${e.fillType3}`:""}; + } + .task-type-4, .section-type-4 { + ${e.fillType0?`fill: ${e.fillType4}`:""}; + } + .task-type-5, .section-type-5 { + ${e.fillType0?`fill: ${e.fillType5}`:""}; + } + .task-type-6, .section-type-6 { + ${e.fillType0?`fill: ${e.fillType6}`:""}; + } + .task-type-7, .section-type-7 { + ${e.fillType0?`fill: ${e.fillType7}`:""}; + } + + .actor-0 { + ${e.actor0?`fill: ${e.actor0}`:""}; + } + .actor-1 { + ${e.actor1?`fill: ${e.actor1}`:""}; + } + .actor-2 { + ${e.actor2?`fill: ${e.actor2}`:""}; + } + .actor-3 { + ${e.actor3?`fill: ${e.actor3}`:""}; + } + .actor-4 { + ${e.actor4?`fill: ${e.actor4}`:""}; + } + .actor-5 { + ${e.actor5?`fill: ${e.actor5}`:""}; + } +`,"getStyles"),Spt=Eqt});var xB,Cqt,Lpt,Dpt,Sqt,Aqt,_pt,_qt,Lqt,Rpt,Dqt,s1,Npt=R(()=>{"use strict";ur();lv();xB=o(function(e,t){return Td(e,t)},"drawRect"),Cqt=o(function(e,t){let n=e.append("circle").attr("cx",t.cx).attr("cy",t.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=e.append("g");i.append("circle").attr("cx",t.cx-15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",t.cx+15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=Cl().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("+t.cx+","+(t.cy+2)+")")}o(a,"smile");function s(u){let h=Cl().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("+t.cx+","+(t.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",t.cx-5).attr("y1",t.cy+7).attr("x2",t.cx+5).attr("y2",t.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),t.score>3?a(i):t.score<3?s(i):l(i),n},"drawFace"),Lpt=o(function(e,t){let r=e.append("circle");return r.attr("cx",t.cx),r.attr("cy",t.cy),r.attr("class","actor-"+t.pos),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("r",t.r),r.class!==void 0&&r.attr("class",r.class),t.title!==void 0&&r.append("title").text(t.title),r},"drawCircle"),Dpt=o(function(e,t){return bq(e,t)},"drawText"),Sqt=o(function(e,t){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=e.append("polygon");n.attr("points",r(t.x,t.y,50,20,7)),n.attr("class","labelBox"),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,Dpt(e,t)},"drawLabel"),Aqt=o(function(e,t,r){let n=e.append("g"),i=Sl();i.x=t.x,i.y=t.y,i.fill=t.fill,i.width=r.width*t.taskCount+r.diagramMarginX*(t.taskCount-1),i.height=r.height,i.class="journey-section section-type-"+t.num,i.rx=3,i.ry=3,xB(n,i),Rpt(r)(t.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+t.num},r,t.colour)},"drawSection"),_pt=-1,_qt=o(function(e,t,r){let n=t.x+r.width/2,i=e.append("g");_pt++;let a=300+5*30;i.append("line").attr("id","task"+_pt).attr("x1",n).attr("y1",t.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Cqt(i,{cx:n,cy:300+(5-t.score)*30,score:t.score});let s=Sl();s.x=t.x,s.y=t.y,s.fill=t.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+t.num,s.rx=3,s.ry=3,xB(i,s);let l=t.x+14;t.people.forEach(u=>{let h=t.actors[u].color,f={cx:l,cy:t.y,r:7,fill:h,stroke:"#000",title:u,pos:t.actors[u].position};Lpt(i,f),l+=10}),Rpt(r)(t.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,t.colour)},"drawTask"),Lqt=o(function(e,t){m5(e,t)},"drawBackgroundRect"),Rpt=function(){function e(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(e,"byText");function t(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=Ju[n].color,a={cx:20,cy:r,r:7,fill:i,stroke:"#000",pos:Ju[n].position};s1.drawCircle(e,a);let s={x:40,y:r+7,fill:"#666",text:n,textMargin:t.boxTextMargin|5};s1.drawText(e,s),r+=20})}var Rqt,Ju,Y6,G0,Mqt,rl,bB,Mpt,Iqt,wB,Ipt=R(()=>{"use strict";ur();Npt();Ue();Jn();Rqt=o(function(e){Object.keys(e).forEach(function(r){Y6[r]=e[r]})},"setConf"),Ju={};o(Nqt,"drawActorLegend");Y6=pt().journey,G0=Y6.leftMargin,Mqt=o(function(e,t,r,n){let i=pt().journey,a=pt().securityLevel,s;a==="sandbox"&&(s=Gt("#i"+t));let l=a==="sandbox"?Gt(s.nodes()[0].contentDocument.body):Gt("body");rl.init();let u=l.select("#"+t);s1.initGraphics(u);let h=n.db.getTasks(),f=n.db.getDiagramTitle(),d=n.db.getActors();for(let x in Ju)delete Ju[x];let p=0;d.forEach(x=>{Ju[x]={color:i.actorColours[p%i.actorColours.length],position:p},p++}),Nqt(u),rl.insert(0,0,G0,Object.keys(Ju).length*50),Iqt(u,h,0);let m=rl.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;Pr(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"),rl={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:o(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:o(function(e,t,r,n){e[t]===void 0?e[t]=r:e[t]=n(r,e[t])},"updateVal"),updateBounds:o(function(e,t,r,n){let i=pt().journey,a=this,s=0;function l(u){return o(function(f){s++;let d=a.sequenceItems.length-s+1;a.updateVal(f,"starty",t-d*i.boxMargin,Math.min),a.updateVal(f,"stopy",n+d*i.boxMargin,Math.max),a.updateVal(rl.data,"startx",e-d*i.boxMargin,Math.min),a.updateVal(rl.data,"stopx",r+d*i.boxMargin,Math.max),u!=="activation"&&(a.updateVal(f,"startx",e-d*i.boxMargin,Math.min),a.updateVal(f,"stopx",r+d*i.boxMargin,Math.max),a.updateVal(rl.data,"starty",t-d*i.boxMargin,Math.min),a.updateVal(rl.data,"stopy",n+d*i.boxMargin,Math.max))},"updateItemBounds")}o(l,"updateFn"),this.sequenceItems.forEach(l())},"updateBounds"),insert:o(function(e,t,r,n){let i=Math.min(e,r),a=Math.max(e,r),s=Math.min(t,n),l=Math.max(t,n);this.updateVal(rl.data,"startx",i,Math.min),this.updateVal(rl.data,"starty",s,Math.min),this.updateVal(rl.data,"stopx",a,Math.max),this.updateVal(rl.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),bumpVerticalPos:o(function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return this.data},"getBounds")},bB=Y6.sectionFills,Mpt=Y6.sectionColours,Iqt=o(function(e,t,r){let n=pt().journey,i="",a=n.height*2+n.diagramMarginY,s=r+a,l=0,u="#CCC",h="black",f=0;for(let[d,p]of t.entries()){if(i!==p.section){u=bB[l%bB.length],f=l%bB.length,h=Mpt[l%Mpt.length];let g=0,y=p.section;for(let x=d;x(Ju[y]&&(g[y]=Ju[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(e,p,n),rl.insert(p.x,p.y,p.x+p.width+n.taskMargin,300+5*30)}},"drawTasks"),wB={setConf:Rqt,draw:Mqt}});var Opt={};xr(Opt,{diagram:()=>Oqt});var Oqt,Ppt=R(()=>{"use strict";kpt();Cpt();Apt();Ipt();Oqt={parser:Tpt,db:vB,renderer:wB,styles:Spt,init:o(e=>{wB.setConf(e.journey),vB.clear()},"init")}});var kB,Upt,Hpt=R(()=>{"use strict";kB=function(){var e=o(function(p,m,g,y){for(g=g||{},y=p.length;y--;g[p[y]]=m);return g},"o"),t=[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 S=b.length-1;switch(x){case 1:return b[S-1];case 2:this.$=[];break;case 3:b[S-1].push(b[S]),this.$=b[S-1];break;case 4:case 5:this.$=b[S];break;case 6:case 7:this.$=[];break;case 8:v.getCommonDb().setDiagramTitle(b[S].substr(6)),this.$=b[S].substr(6);break;case 9:this.$=b[S].trim(),v.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=b[S].trim(),v.getCommonDb().setAccDescription(this.$);break;case 12:v.addSection(b[S].substr(8)),this.$=b[S].substr(8);break;case 15:v.addTask(b[S],0,""),this.$=b[S];break;case 16:v.addEvent(b[S].substr(2)),this.$=b[S];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},e(t,[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},e(t,[2,7],{1:[2,1]}),e(t,[2,3]),{9:18,11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},e(t,[2,5]),e(t,[2,6]),e(t,[2,8]),{13:[1,19]},{15:[1,20]},e(t,[2,11]),e(t,[2,12]),e(t,[2,13]),e(t,[2,14]),e(t,[2,15]),e(t,[2,16]),e(t,[2,4]),e(t,[2,9]),e(t,[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,S="",T=0,E=0,_=0,A=2,L=1,M=b.slice.call(arguments,1),N=Object.create(this.lexer),k={yy:{}};for(var I in this.yy)Object.prototype.hasOwnProperty.call(this.yy,I)&&(k.yy[I]=this.yy[I]);N.setInput(m,k.yy),k.yy.lexer=N,k.yy.parser=this,typeof N.yylloc>"u"&&(N.yylloc={});var C=N.yylloc;b.push(C);var O=N.options&&N.options.ranges;typeof k.yy.parseError=="function"?this.parseError=k.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function D(q){y.length=y.length-2*q,x.length=x.length-q,b.length=b.length-q}o(D,"popStack");function P(){var q;return q=v.pop()||N.lex()||L,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,Q,j={},at,X,J,Z;;){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="";Z=[];for(at in w[G])this.terminals_[at]&&at>A&&Z.push("'"+this.terminals_[at]+"'");N.showPosition?H="Parse error on line "+(T+1)+`: +`+N.showPosition()+` +Expecting `+Z.join(", ")+", got '"+(this.terminals_[F]||F)+"'":H="Parse error on line "+(T+1)+": Unexpected "+(F==L?"end of input":"'"+(this.terminals_[F]||F)+"'"),this.parseError(H,{text:N.match,token:this.terminals_[F]||F,line:N.yylineno,loc:C,expected:Z})}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(N.yytext),b.push(N.yylloc),y.push(z[1]),F=null,B?(F=B,B=null):(E=N.yyleng,S=N.yytext,T=N.yylineno,C=N.yylloc,_>0&&_--);break;case 2:if(X=this.productions_[z[1]][1],j.$=x[x.length-X],j._$={first_line:b[b.length-(X||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(X||1)].first_column,last_column:b[b.length-1].last_column},O&&(j._$.range=[b[b.length-(X||1)].range[0],b[b.length-1].range[1]]),Q=this.performAction.apply(j,[S,E,T,k.yy,z[1],x,b].concat(M)),typeof Q<"u")return Q;X&&(y=y.slice(0,-1*X*2),x=x.slice(0,-1*X),b=b.slice(0,-1*X)),y.push(this.productions_[z[1]][0]),x.push(j.$),b.push(j._$),J=w[y[y.length-2]][y[y.length-1]],y.push(J);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}();kB.parser=kB;Upt=kB});var CB={};xr(CB,{addEvent:()=>Jpt,addSection:()=>jpt,addTask:()=>Zpt,addTaskOrg:()=>tmt,clear:()=>Xpt,default:()=>Hqt,getCommonDb:()=>qpt,getSections:()=>Kpt,getTasks:()=>Qpt});var o1,Ypt,EB,q6,l1,qpt,Xpt,jpt,Kpt,Qpt,Zpt,Jpt,tmt,Wpt,Hqt,emt=R(()=>{"use strict";Ci();o1="",Ypt=0,EB=[],q6=[],l1=[],qpt=o(()=>xy,"getCommonDb"),Xpt=o(function(){EB.length=0,q6.length=0,o1="",l1.length=0,Ar()},"clear"),jpt=o(function(e){o1=e,EB.push(e)},"addSection"),Kpt=o(function(){return EB},"getSections"),Qpt=o(function(){let e=Wpt(),t=100,r=0;for(;!e&&rr.id===Ypt-1).events.push(e)},"addEvent"),tmt=o(function(e){let t={section:o1,type:o1,description:e,task:e,classes:[]};q6.push(t)},"addTaskOrg"),Wpt=o(function(){let e=o(function(r){return l1[r].processed},"compileTask"),t=!0;for(let[r,n]of l1.entries())e(r),t=t&&n.processed;return t},"compileTasks"),Hqt={clear:Xpt,getCommonDb:qpt,addSection:jpt,getSections:Kpt,getTasks:Qpt,addTask:Zpt,addTaskOrg:tmt,addEvent:Jpt}});function amt(e,t){e.each(function(){var r=Gt(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;ft||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 Wqt,X6,Yqt,qqt,nmt,Xqt,jqt,rmt,Kqt,Qqt,Zqt,SB,imt,Jqt,tXt,eXt,rXt,Ef,smt=R(()=>{"use strict";ur();Wqt=12,X6=o(function(e,t){let r=e.append("rect");return r.attr("x",t.x),r.attr("y",t.y),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("width",t.width),r.attr("height",t.height),r.attr("rx",t.rx),r.attr("ry",t.ry),t.class!==void 0&&r.attr("class",t.class),r},"drawRect"),Yqt=o(function(e,t){let n=e.append("circle").attr("cx",t.cx).attr("cy",t.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=e.append("g");i.append("circle").attr("cx",t.cx-15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",t.cx+15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=Cl().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("+t.cx+","+(t.cy+2)+")")}o(a,"smile");function s(u){let h=Cl().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("+t.cx+","+(t.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",t.cx-5).attr("y1",t.cy+7).attr("x2",t.cx+5).attr("y2",t.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),t.score>3?a(i):t.score<3?s(i):l(i),n},"drawFace"),qqt=o(function(e,t){let r=e.append("circle");return r.attr("cx",t.cx),r.attr("cy",t.cy),r.attr("class","actor-"+t.pos),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("r",t.r),r.class!==void 0&&r.attr("class",r.class),t.title!==void 0&&r.append("title").text(t.title),r},"drawCircle"),nmt=o(function(e,t){let r=t.text.replace(//gi," "),n=e.append("text");n.attr("x",t.x),n.attr("y",t.y),n.attr("class","legend"),n.style("text-anchor",t.anchor),t.class!==void 0&&n.attr("class",t.class);let i=n.append("tspan");return i.attr("x",t.x+t.textMargin*2),i.text(r),n},"drawText"),Xqt=o(function(e,t){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=e.append("polygon");n.attr("points",r(t.x,t.y,50,20,7)),n.attr("class","labelBox"),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,nmt(e,t)},"drawLabel"),jqt=o(function(e,t,r){let n=e.append("g"),i=SB();i.x=t.x,i.y=t.y,i.fill=t.fill,i.width=r.width,i.height=r.height,i.class="journey-section section-type-"+t.num,i.rx=3,i.ry=3,X6(n,i),imt(r)(t.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+t.num},r,t.colour)},"drawSection"),rmt=-1,Kqt=o(function(e,t,r){let n=t.x+r.width/2,i=e.append("g");rmt++;let a=300+5*30;i.append("line").attr("id","task"+rmt).attr("x1",n).attr("y1",t.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Yqt(i,{cx:n,cy:300+(5-t.score)*30,score:t.score});let s=SB();s.x=t.x,s.y=t.y,s.fill=t.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+t.num,s.rx=3,s.ry=3,X6(i,s),imt(r)(t.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,t.colour)},"drawTask"),Qqt=o(function(e,t){X6(e,{x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,class:"rect"}).lower()},"drawBackgroundRect"),Zqt=o(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),SB=o(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),imt=function(){function e(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(e,"byText");function t(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";ur();smt();ce();Ue();Jn();nXt=o(function(e,t,r,n){let i=pt(),a=i.leftMargin??50;V.debug("timeline",n.db);let s=i.securityLevel,l;s==="sandbox"&&(l=Gt("#i"+t));let h=(s==="sandbox"?Gt(l.nodes()[0].contentDocument.body):Gt("body")).select("#"+t);h.append("g");let f=n.db.getTasks(),d=n.db.getCommonDb().getDiagramTitle();V.debug("task",f),Ef.initGraphics(h);let p=n.db.getSections();V.debug("sections",p);let m=0,g=0,y=0,v=0,x=50+a,b=50;v=50;let w=0,S=!0;p.forEach(function(L){let M={number:w,descr:L,section:w,width:150,padding:20,maxHeight:m},N=Ef.getVirtualNodeHeight(h,M,i);V.debug("sectionHeight before draw",N),m=Math.max(m,N+20)});let T=0,E=0;V.debug("tasks.length",f.length);for(let[L,M]of f.entries()){let N={number:L,descr:M,section:M.section,width:150,padding:20,maxHeight:g},k=Ef.getVirtualNodeHeight(h,N,i);V.debug("taskHeight before draw",k),g=Math.max(g,k+20),T=Math.max(T,M.events.length);let I=0;for(let C of M.events){let O={descr:C,section:M.section,number:M.section,width:150,padding:20,maxHeight:50};I+=Ef.getVirtualNodeHeight(h,O,i)}E=Math.max(E,I)}V.debug("maxSectionHeight before draw",m),V.debug("maxTaskHeight before draw",g),p&&p.length>0?p.forEach(L=>{let M=f.filter(C=>C.section===L),N={number:w,descr:L,section:w,width:200*Math.max(M.length,1)-50,padding:20,maxHeight:m};V.debug("sectionNode",N);let k=h.append("g"),I=Ef.drawNode(k,N,w,i);V.debug("sectionNode output",I),k.attr("transform",`translate(${x}, ${v})`),b+=m+50,M.length>0&&omt(h,M,w,x,b,g,i,T,E,m,!1),x+=200*Math.max(M.length,1),b=v,w++}):(S=!1,omt(h,f,w,x,b,g,i,T,E,m,!0));let _=h.node().getBBox();V.debug("bounds",_),d&&h.append("text").text(d).attr("x",_.width/2-a).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),y=S?m+g+150:g+100,h.append("g").attr("class","lineWrapper").append("line").attr("x1",a).attr("y1",y).attr("x2",_.width+3*a).attr("y2",y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),No(void 0,h,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),omt=o(function(e,t,r,n,i,a,s,l,u,h,f){for(let d of t){let p={descr:d.task,section:r,number:r,width:150,padding:20,maxHeight:a};V.debug("taskNode",p);let m=e.append("g").attr("class","taskWrapper"),y=Ef.drawNode(m,p,r,s).height;if(V.debug("taskHeight after draw",y),m.attr("transform",`translate(${n}, ${i})`),a=Math.max(a,y),d.events){let v=e.append("g").attr("class","lineWrapper"),x=a;i+=100,x=x+iXt(e,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"),iXt=o(function(e,t,r,n,i,a){let s=0,l=i;i=i+100;for(let u of t){let h={descr:u,section:r,number:r,width:150,padding:20,maxHeight:50};V.debug("eventNode",h);let f=e.append("g").attr("class","eventWrapper"),p=Ef.drawNode(f,h,r,a).height;s=s+p,f.attr("transform",`translate(${n}, ${i})`),i=i+10+p}return i=l,s},"drawEvents"),lmt={setConf:o(()=>{},"setConf"),draw:nXt}});var aXt,sXt,umt,hmt=R(()=>{"use strict";ul();aXt=o(e=>{let t="";for(let r=0;r` + .edge { + stroke-width: 3; + } + ${aXt(e)} + .section-root rect, .section-root path, .section-root circle { + fill: ${e.git0}; + } + .section-root text { + fill: ${e.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .eventWrapper { + filter: brightness(120%); + } +`,"getStyles"),umt=sXt});var fmt={};xr(fmt,{diagram:()=>oXt});var oXt,dmt=R(()=>{"use strict";Hpt();emt();cmt();hmt();oXt={db:CB,renderer:lmt,parser:Upt,styles:umt}});var AB,gmt,ymt=R(()=>{"use strict";AB=function(){var e=o(function(S,T,E,_){for(E=E||{},_=S.length;_--;E[S[_]]=T);return E},"o"),t=[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,_,A,L,M,N){var k=M.length-1;switch(L){case 6:case 7:return A;case 8:A.getLogger().trace("Stop NL ");break;case 9:A.getLogger().trace("Stop EOF ");break;case 11:A.getLogger().trace("Stop NL2 ");break;case 12:A.getLogger().trace("Stop EOF2 ");break;case 15:A.getLogger().info("Node: ",M[k].id),A.addNode(M[k-1].length,M[k].id,M[k].descr,M[k].type);break;case 16:A.getLogger().trace("Icon: ",M[k]),A.decorateNode({icon:M[k]});break;case 17:case 21:A.decorateNode({class:M[k]});break;case 18:A.getLogger().trace("SPACELIST");break;case 19:A.getLogger().trace("Node: ",M[k].id),A.addNode(0,M[k].id,M[k].descr,M[k].type);break;case 20:A.decorateNode({icon:M[k]});break;case 25:A.getLogger().trace("node found ..",M[k-2]),this.$={id:M[k-1],descr:M[k-1],type:A.getType(M[k-2],M[k])};break;case 26:this.$={id:M[k],descr:M[k],type:A.nodeType.DEFAULT};break;case 27:A.getLogger().trace("node found ..",M[k-3]),this.$={id:M[k-3],descr:M[k-1],type:A.getType(M[k-2],M[k])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:t},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:t},{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},e(u,[2,3]),{1:[2,2]},e(u,[2,4]),e(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},e(p,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:s,22:l}),e(p,[2,18]),e(p,[2,19]),e(p,[2,20]),e(p,[2,21]),e(p,[2,23]),e(p,[2,24]),e(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},e(m,[2,14],{7:g,11:y}),e(v,[2,8]),e(v,[2,9]),e(v,[2,10]),e(p,[2,15]),e(p,[2,16]),e(p,[2,17]),{20:[1,35]},{21:[1,36]},e(m,[2,13],{7:g,11:y}),e(v,[2,11]),e(v,[2,12]),{21:[1,37]},e(p,[2,25]),e(p,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(T,E){if(E.recoverable)this.trace(T);else{var _=new Error(T);throw _.hash=E,_}},"parseError"),parse:o(function(T){var E=this,_=[0],A=[],L=[null],M=[],N=this.table,k="",I=0,C=0,O=0,D=2,P=1,F=M.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;M.push(W);var Q=B.options&&B.options.ranges;typeof G.yy.parseError=="function"?this.parseError=G.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function j(wt){_.length=_.length-2*wt,L.length=L.length-wt,M.length=M.length-wt}o(j,"popStack");function at(){var wt;return wt=A.pop()||B.lex()||P,typeof wt!="number"&&(wt instanceof Array&&(A=wt,wt=A.pop()),wt=E.symbols_[wt]||wt),wt}o(at,"lex");for(var X,J,Z,H,q,K,ot={},ct,ut,et,Mt;;){if(Z=_[_.length-1],this.defaultActions[Z]?H=this.defaultActions[Z]:((X===null||typeof X>"u")&&(X=at()),H=N[Z]&&N[Z][X]),typeof H>"u"||!H.length||!H[0]){var it="";Mt=[];for(ct in N[Z])this.terminals_[ct]&&ct>D&&Mt.push("'"+this.terminals_[ct]+"'");B.showPosition?it="Parse error on line "+(I+1)+`: +`+B.showPosition()+` +Expecting `+Mt.join(", ")+", got '"+(this.terminals_[X]||X)+"'":it="Parse error on line "+(I+1)+": Unexpected "+(X==P?"end of input":"'"+(this.terminals_[X]||X)+"'"),this.parseError(it,{text:B.match,token:this.terminals_[X]||X,line:B.yylineno,loc:W,expected:Mt})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Z+", token: "+X);switch(H[0]){case 1:_.push(X),L.push(B.yytext),M.push(B.yylloc),_.push(H[1]),X=null,J?(X=J,J=null):(C=B.yyleng,k=B.yytext,I=B.yylineno,W=B.yylloc,O>0&&O--);break;case 2:if(ut=this.productions_[H[1]][1],ot.$=L[L.length-ut],ot._$={first_line:M[M.length-(ut||1)].first_line,last_line:M[M.length-1].last_line,first_column:M[M.length-(ut||1)].first_column,last_column:M[M.length-1].last_column},Q&&(ot._$.range=[M[M.length-(ut||1)].range[0],M[M.length-1].range[1]]),K=this.performAction.apply(ot,[k,C,I,G.yy,H[1],L,M].concat(F)),typeof K<"u")return K;ut&&(_=_.slice(0,-1*ut*2),L=L.slice(0,-1*ut),M=M.slice(0,-1*ut)),_.push(this.productions_[H[1]][0]),L.push(ot.$),M.push(ot._$),et=N[_[_.length-2]][_[_.length-1]],_.push(et);break;case 3:return!0}}return!0},"parse")},b=function(){var S={EOF:1,parseError:o(function(E,_){if(this.yy.parser)this.yy.parser.parseError(E,_);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,_=T.split(/(?:\r\n?|\n)/g);this._input=T+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var A=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),_.length-1&&(this.yylineno-=_.length-1);var L=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:_?(_.length===A.length?this.yylloc.first_column:0)+A[A.length-_.length].length-_[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[L[0],L[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 _,A,L;if(this.options.backtrack_lexer&&(L={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&&(L.yylloc.range=this.yylloc.range.slice(0))),A=T[0].match(/(?:\r\n?|\n).*/g),A&&(this.yylineno+=A.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:A?A[A.length-1].length-A[A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+T[0].length},this.yytext+=T[0],this.match+=T[0],this.matches=T,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(T[0].length),this.matched+=T[0],_=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),_)return _;if(this._backtrack){for(var M in L)this[M]=L[M];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var T,E,_,A;this._more||(this.yytext="",this.match="");for(var L=this._currentRules(),M=0;ME[0].length)){if(E=_,A=M,this.options.backtrack_lexer){if(T=this.test_match(_,L[M]),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,L[A]),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,_,A,L){var M=L;switch(A){case 0:return E.getLogger().trace("Found comment",_.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:",_.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 ...",_.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:",_.yytext),20;break;case 36:return E.getLogger().trace("Long description:",_.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 S}();x.lexer=b;function w(){this.yy={}}return o(w,"Parser"),w.prototype=x,x.Parser=w,new w}();AB.parser=AB;gmt=AB});var Yl,vmt,_B,hXt,fXt,dXt,pXt,Yi,mXt,gXt,yXt,vXt,xXt,bXt,wXt,xmt,bmt=R(()=>{"use strict";Ue();hr();ce();hl();Yl=[],vmt=0,_B={},hXt=o(()=>{Yl=[],vmt=0,_B={}},"clear"),fXt=o(function(e){for(let t=Yl.length-1;t>=0;t--)if(Yl[t].levelYl.length>0?Yl[0]:null,"getMindmap"),pXt=o((e,t,r,n)=>{V.info("addNode",e,t,r,n);let i=pt(),a=i.mindmap?.padding??Er.mindmap.padding;switch(n){case Yi.ROUNDED_RECT:case Yi.RECT:case Yi.HEXAGON:a*=2}let s={id:vmt++,nodeId:Zr(t,i),level:e,descr:Zr(r,i),type:n,children:[],width:i.mindmap?.maxNodeWidth??Er.mindmap.maxNodeWidth,padding:a},l=fXt(e);if(l)l.children.push(s),Yl.push(s);else if(Yl.length===0)Yl.push(s);else throw new Error('There can be only one root. No parent could be found for ("'+s.descr+'")')},"addNode"),Yi={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},mXt=o((e,t)=>{switch(V.debug("In get type",e,t),e){case"[":return Yi.RECT;case"(":return t===")"?Yi.ROUNDED_RECT:Yi.CLOUD;case"((":return Yi.CIRCLE;case")":return Yi.CLOUD;case"))":return Yi.BANG;case"{{":return Yi.HEXAGON;default:return Yi.DEFAULT}},"getType"),gXt=o((e,t)=>{_B[e]=t},"setElementForId"),yXt=o(e=>{if(!e)return;let t=pt(),r=Yl[Yl.length-1];e.icon&&(r.icon=Zr(e.icon,t)),e.class&&(r.class=Zr(e.class,t))},"decorateNode"),vXt=o(e=>{switch(e){case Yi.DEFAULT:return"no-border";case Yi.RECT:return"rect";case Yi.ROUNDED_RECT:return"rounded-rect";case Yi.CIRCLE:return"circle";case Yi.CLOUD:return"cloud";case Yi.BANG:return"bang";case Yi.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),xXt=o(()=>V,"getLogger"),bXt=o(e=>_B[e],"getElementById"),wXt={clear:hXt,addNode:pXt,getMindmap:dXt,nodeType:Yi,getType:mXt,setElementForId:gXt,decorateNode:yXt,type2Str:vXt,getLogger:xXt,getElementById:bXt},xmt=wXt});function ji(e){"@babel/helpers - typeof";return ji=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ji(e)}function iF(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function wmt(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r=e.length?{done:!0}:{done:!1,value:e[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(e)},"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 XXt(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function jXt(e,t){return t={exports:{}},e(t,t.exports),t.exports}function rjt(e){for(var t=e.length;t--&&ejt.test(e.charAt(t)););return t}function ajt(e){return e&&e.slice(0,njt(e)+1).replace(ijt,"")}function ujt(e){var t=ljt.call(e,eb),r=e[eb];try{e[eb]=void 0;var n=!0}catch{}var i=cjt.call(e);return n&&(t?e[eb]=r:delete e[eb]),i}function pjt(e){return djt.call(e)}function vjt(e){return e==null?e===void 0?yjt:gjt:Cmt&&Cmt in Object(e)?hjt(e):mjt(e)}function xjt(e){return e!=null&&typeof e=="object"}function Tjt(e){return typeof e=="symbol"||bjt(e)&&Ygt(e)==wjt}function Ajt(e){if(typeof e=="number")return e;if(Sb(e))return Smt;if(j0(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=j0(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=sjt(e);var r=Ejt.test(e);return r||Cjt.test(e)?Sjt(e.slice(2),r?2:8):kjt.test(e)?Smt:+e}function Rjt(e,t,r){var n,i,a,s,l,u,h=0,f=!1,d=!1,p=!0;if(typeof e!="function")throw new TypeError(_jt);t=Amt(t)||0,j0(r)&&(f=!!r.leading,d="maxWait"in r,a=d?Ljt(Amt(r.maxWait)||0,t):a,p="trailing"in r?!!r.trailing:p);function m(E){var _=n,A=i;return n=i=void 0,h=E,s=e.apply(A,_),s}o(m,"invokeFunc");function g(E){return h=E,l=setTimeout(x,t),f?m(E):s}o(g,"leadingEdge");function y(E){var _=E-u,A=E-h,L=t-_;return d?Djt(L,a-A):L}o(y,"remainingWait");function v(E){var _=E-u,A=E-h;return u===void 0||_>=t||_<0||d&&A>=a}o(v,"shouldInvoke");function x(){var E=LB();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 S(){return l===void 0?s:b(LB())}o(S,"flush");function T(){var E=LB(),_=v(E);if(n=arguments,i=this,u=E,_){if(l===void 0)return g(u);if(d)return clearTimeout(l),l=setTimeout(x,t),m(u)}return l===void 0&&(l=setTimeout(x,t)),s}return o(T,"debounced"),T.cancel=w,T.flush=S,T}function NC(e,t,r,n,i,a){var s;return ni(e)?s=e:s=k1[e]||k1.euclidean,t===0&&ni(e)?s(i,a):s(t,r,n,i,a)}function kQt(e,t){if(MC(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||Sb(e)?!0:TQt.test(e)||!wQt.test(e)||t!=null&&e in Object(t)}function LQt(e){if(!j0(e))return!1;var t=Ygt(e);return t==SQt||t==AQt||t==CQt||t==_Qt}function NQt(e){return!!qmt&&qmt in e}function PQt(e){if(e!=null){try{return OQt.call(e)}catch{}try{return e+""}catch{}}return""}function WQt(e){if(!j0(e)||MQt(e))return!1;var t=DQt(e)?HQt:zQt;return t.test(BQt(e))}function qQt(e,t){return e?.[t]}function jQt(e,t){var r=XQt(e,t);return YQt(r)?r:void 0}function QQt(){this.__data__=xb?xb(null):{},this.size=0}function JQt(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}function iZt(e){var t=this.__data__;if(xb){var r=t[e];return r===eZt?void 0:r}return nZt.call(t,e)?t[e]:void 0}function lZt(e){var t=this.__data__;return xb?t[e]!==void 0:oZt.call(t,e)}function hZt(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=xb&&t===void 0?uZt:t,this}function A1(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t-1}function CZt(e,t){var r=this.__data__,n=IC(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function _1(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t-1&&e%1==0&&e0;){var f=i.shift();t(f),a.add(f.id()),l&&n(i,a,f)}return e}function C1t(e,t,r){if(r.isParent())for(var n=r._private.children,i=0;i0&&arguments[0]!==void 0?arguments[0]:cte,t=arguments.length>1?arguments[1]:void 0,r=0;r0?k=C:N=C;while(Math.abs(I)>s&&++O=a?b(M,O):D===0?O:S(M,N,N+h)}o(T,"getTForX");var E=!1;function _(){E=!0,(e!==t||r!==n)&&w()}o(_,"precompute");var A=o(function(N){return E||_(),e===t&&r===n?N:N===0?0:N===1?1:v(T(N),t,n)},"f");A.getControlPoints=function(){return[{x:e,y:t},{x:r,y:n}]};var L="generateBezier("+[e,t,r,n]+")";return A.toString=function(){return L},A}function fgt(e,t,r,n,i){if(n===1||t===r)return r;var a=i(t,r,n);return e==null||((e.roundValue||e.color)&&(a=Math.round(a)),e.min!==void 0&&(a=Math.max(a,e.min)),e.max!==void 0&&(a=Math.min(a,e.max))),a}function dgt(e,t){return e.pfValue!=null||e.value!=null?e.pfValue!=null&&(t==null||t.type.units!=="%")?e.pfValue:e.value:e}function h1(e,t,r,n,i){var a=i!=null?i.type:null;r<0?r=0:r>1&&(r=1);var s=dgt(e,i),l=dgt(t,i);if(be(s)&&be(l))return fgt(a,s,l,r,n);if(kn(s)&&kn(l)){for(var u=[],h=0;h0?(m==="spring"&&g.push(s.duration),s.easingImpl=hC[m].apply(null,g)):s.easingImpl=hC[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&&!e.locked()){var w={};ab(x.x,b.x)&&(w.x=h1(x.x,b.x,v,y)),ab(x.y,b.y)&&(w.y=h1(x.y,b.y,v,y)),e.position(w)}var S=s.startPan,T=s.pan,E=a.pan,_=T!=null&&n;_&&(ab(S.x,T.x)&&(E.x=h1(S.x,T.x,v,y)),ab(S.y,T.y)&&(E.y=h1(S.y,T.y,v,y)),e.emit("pan"));var A=s.startZoom,L=s.zoom,M=L!=null&&n;M&&(ab(A,L)&&(a.zoom=yb(a.minZoom,h1(A,L,v,y),a.maxZoom)),e.emit("zoom")),(_||M)&&e.emit("viewport");var N=s.style;if(N&&N.length>0&&i){for(var k=0;k=0;_--){var A=E[_];A()}E.splice(0,E.length)},"callbacks"),b=m.length-1;b>=0;b--){var w=m[b],S=w._private;if(S.stopped){m.splice(b,1),S.hooked=!1,S.playing=!1,S.started=!1,x(S.frames);continue}!S.playing&&!S.applying||(S.playing&&S.applying&&(S.applying=!1),S.started||kte(f,w,e),Tte(f,w,e,d),S.applying&&(S.applying=!1),x(S.frames),S.step!=null&&S.step(e),w.completed()&&(m.splice(b,1),S.hooked=!1,S.playing=!1,S.started=!1,x(S.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?t.notify("draw",r):t.notify("draw")),r.unmerge(n),t.emit("step")}function V1t(e){this.options=ir({},Rte,Nte,e)}function U1t(e){this.options=ir({},Mte,e)}function H1t(e){this.options=ir({},Ite,e)}function VC(e){this.options=ir({},Ote,e),this.options.layout=this;var t=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=t.some(function(h){return h.data("id")===a}),u=t.some(function(h){return h.data("id")===s});return!l||!u});this.options.eles=this.options.eles.not(n)}function Y1t(e){this.options=ir({},Zte,e)}function kF(e){this.options=ir({},Jte,e)}function q1t(e){this.options=ir({},tee,e)}function X1t(e){this.options=ir({},eee,e)}function j1t(e){this.options=e,this.notifications=0}function Z1t(e,t){t.radius===0?e.lineTo(t.cx,t.cy):e.arc(t.cx,t.cy,t.radius,t.startAngle,t.endAngle,t.counterClockwise)}function CF(e,t,r,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;return n===0||t.radius===0?{cx:t.x,cy:t.y,radius:0,startX:t.x,startY:t.y,stopX:t.x,stopY:t.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(iee(e,t,r,n,i),{cx:KB,cy:QB,radius:Y0,startX:K1t,startY:Q1t,stopX:ZB,stopY:JB,startAngle:jc.ang+Math.PI/2*q0,endAngle:nl.ang-Math.PI/2*q0,counterClockwise:pC})}function J1t(e){var t=[];if(e!=null){for(var r=0;r5&&arguments[5]!==void 0?arguments[5]:5,s=arguments.length>6?arguments[6]:void 0;e.beginPath(),e.moveTo(t+a,r),e.lineTo(t+n-a,r),e.quadraticCurveTo(t+n,r,t+n,r+a),e.lineTo(t+n,r+i-a),e.quadraticCurveTo(t+n,r+i,t+n-a,r+i),e.lineTo(t+a,r+i),e.quadraticCurveTo(t,r+i,t,r+i-a),e.lineTo(t,r+a),e.quadraticCurveTo(t,r,t+a,r),e.closePath(),s?e.stroke():e.fill()}function Yee(e,t){for(var r=atob(e),n=new ArrayBuffer(r.length),i=new Uint8Array(n),a=0;a{"use strict";o(ji,"_typeof");o(iF,"_classCallCheck");o(wmt,"_defineProperties");o(aF,"_createClass");o(Ogt,"_defineProperty$1");o(ql,"_slicedToArray");o(TXt,"_arrayWithHoles");o(kXt,"_iterableToArrayLimit");o(Pgt,"_unsupportedIterableToArray");o(Tmt,"_arrayLikeToArray");o(EXt,"_nonIterableRest");o(Bgt,"_createForOfIteratorHelper");qi=typeof window>"u"?null:window,kmt=qi?qi.navigator:null;qi&&qi.document;CXt=ji(""),Fgt=ji({}),SXt=ji(function(){}),AXt=typeof HTMLElement>"u"?"undefined":ji(HTMLElement),Eb=o(function(t){return t&&t.instanceString&&ni(t.instanceString)?t.instanceString():null},"instanceStr"),Ke=o(function(t){return t!=null&&ji(t)==CXt},"string"),ni=o(function(t){return t!=null&&ji(t)===SXt},"fn"),kn=o(function(t){return!wo(t)&&(Array.isArray?Array.isArray(t):t!=null&&t instanceof Array)},"array"),Ur=o(function(t){return t!=null&&ji(t)===Fgt&&!kn(t)&&t.constructor===Object},"plainObject"),_Xt=o(function(t){return t!=null&&ji(t)===Fgt},"object"),be=o(function(t){return t!=null&&ji(t)===ji(1)&&!isNaN(t)},"number"),LXt=o(function(t){return be(t)&&Math.floor(t)===t},"integer"),gC=o(function(t){if(AXt!=="undefined")return t!=null&&t instanceof HTMLElement},"htmlElement"),wo=o(function(t){return Cb(t)||zgt(t)},"elementOrCollection"),Cb=o(function(t){return Eb(t)==="collection"&&t._private.single},"element"),zgt=o(function(t){return Eb(t)==="collection"&&!t._private.single},"collection"),sF=o(function(t){return Eb(t)==="core"},"core"),$gt=o(function(t){return Eb(t)==="stylesheet"},"stylesheet"),DXt=o(function(t){return Eb(t)==="event"},"event"),Rf=o(function(t){return t==null?!0:!!(t===""||t.match(/^\s+$/))},"emptyString"),RXt=o(function(t){return typeof HTMLElement>"u"?!1:t instanceof HTMLElement},"domElement"),NXt=o(function(t){return Ur(t)&&be(t.x1)&&be(t.x2)&&be(t.y1)&&be(t.y2)},"boundingBox"),MXt=o(function(t){return _Xt(t)&&ni(t.then)},"promise"),IXt=o(function(){return kmt&&kmt.userAgent.match(/msie|trident|edge/i)},"ms"),db=o(function(t,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"),GXt=o(function(t,r){return-1*Vgt(t,r)},"descending"),ir=Object.assign!=null?Object.assign.bind(Object):function(e){for(var t=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("^"+BXt+"$").exec(t);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"),HXt=o(function(t){var r,n=new RegExp("^"+OXt+"$").exec(t);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"),WXt=o(function(t){return qXt[t.toLowerCase()]},"colorname2tuple"),YXt=o(function(t){return(kn(t)?t:null)||WXt(t)||VXt(t)||HXt(t)||UXt(t)},"color2tuple"),qXt={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]},Ugt=o(function(t){for(var r=t.map,n=t.keys,i=n.length,a=0;a1&&arguments[1]!==void 0?arguments[1]:p1,n=r,i;i=t.next(),!i.done;)n=n*Xgt+i.value|0;return n},"hashIterableInts"),pb=o(function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p1;return r*Xgt+t|0},"hashInt"),mb=o(function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ob;return(r<<5)+r+t|0},"hashIntAlt"),Mjt=o(function(t,r){return t*2097152+r},"combineHashes"),Cf=o(function(t){return t[0]*2097152+t[1]},"combineHashesArray"),j6=o(function(t,r){return[pb(t[0],r[0]),mb(t[1],r[1])]},"hashArrays"),Ijt=o(function(t,r){var n={value:0,done:!1},i=0,a=t.length,s={next:o(function(){return i=0&&!(t[i]===r&&(t.splice(i,1),n));i--);},"removeFromArray"),uF=o(function(t){t.splice(0,t.length)},"clearArray"),Gjt=o(function(t,r){for(var n=0;n"u"?"undefined":ji(Set))!==Ujt?Set:Hjt,DC=o(function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(t===void 0||r===void 0||!sF(t)){fi("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"){fi("An element must be of type `nodes` or `edges`; you specified `"+i+"`");return}this.length=1,this[0]=this;var a=this._private={cy:t,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 C1,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=t.pan(),u=t.zoom();a.position={x:(s.x-l.x)/u,y:(s.y-l.y)/u}}var h=[];kn(r.classes)?h=r.classes:Ke(r.classes)&&(h=r.classes.split(/\s+/));for(var f=0,d=h.length;fb?1:0},"defaultCmp"),f=o(function(x,b,w,S,T){var E;if(w==null&&(w=0),T==null&&(T=n),w<0)throw new Error("lo must be non-negative");for(S==null&&(S=x.length);wM;0<=M?L++:L--)A.push(L);return A}.apply(this).reverse(),_=[],S=0,T=E.length;SN;0<=N?++A:--A)k.push(s(x,w));return k},"nsmallest"),y=o(function(x,b,w,S){var T,E,_;for(S==null&&(S=n),T=x[w];w>b;){if(_=w-1>>1,E=x[_],S(T,E)<0){x[w]=E,w=_;continue}break}return x[w]=T},"_siftdown"),v=o(function(x,b,w){var S,T,E,_,A;for(w==null&&(w=n),T=x.length,A=b,E=x[b],S=2*b+1;S0;){var E=b.pop(),_=v(E),A=E.id();if(p[A]=_,_!==1/0)for(var L=E.neighborhood().intersect(g),M=0;M0)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")},Xjt={kruskal:o(function(t){t=t||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(S){for(var T=0;T0;){if(T(),_++,S===f){for(var A=[],L=a,M=f,N=x[M];A.unshift(L),N!=null&&A.unshift(N),L=v[M],L!=null;)M=L.id(),N=x[M];return{found:!0,distance:d[S],path:this.spawn(A),steps:_}}m[S]=!0;for(var k=w._private.edges,I=0;IN&&(g[M]=N,b[M]=L,w[M]=T),!a){var k=L*f+A;!a&&g[k]>N&&(g[k]=N,b[k]=A,w[k]=T)}}}for(var I=0;I1&&arguments[1]!==void 0?arguments[1]:s,St=w(wt),Vt=[],Pt=St;;){if(Pt==null)return r.spawn();var _t=b(Pt),dt=_t.edge,Y=_t.pred;if(Vt.unshift(Pt[0]),Pt.same(Ot)&&Vt.length>0)break;dt!=null&&Vt.unshift(dt),Pt=Y}return u.spawn(Vt)},"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=rKt(a,t,r),n--}return r},"contractUntil"),nKt={kargerStein:o(function(){var t=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/eKt);if(a<2){fi("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]:t.length,i=1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:t.length,i=-1/0,a=r;a1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:t.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]:t.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?t=t.slice(r,n):(n0&&t.splice(0,r));for(var l=0,u=t.length-1;u>=0;u--){var h=t[u];s?isFinite(h)||(t[u]=-1/0,l++):t.splice(u,1)}a&&t.sort(function(p,m){return p-m});var f=t.length,d=Math.floor(f/2);return f%2!==0?t[d+1+l]:(t[d-1+l]+t[d+l])/2},"median"),cKt=o(function(t){return Math.PI*t/180},"deg2rad"),K6=o(function(t,r){return Math.atan2(r,t)-Math.PI/2},"getAngleFromDisp"),hF=Math.log2||function(e){return Math.log(e)/Math.log(2)},r1t=o(function(t){return t>0?1:t<0?-1:0},"signum"),Q0=o(function(t,r){return Math.sqrt(H0(t,r))},"dist"),H0=o(function(t,r){var n=r.x-t.x,i=r.y-t.y;return n*n+i*i},"sqdist"),uKt=o(function(t){for(var r=t.length,n=0,i=0;i=t.x1&&t.y2>=t.y1)return{x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y2,w:t.x2-t.x1,h:t.y2-t.y1};if(t.w!=null&&t.h!=null&&t.w>=0&&t.h>=0)return{x1:t.x1,y1:t.y1,x2:t.x1+t.w,y2:t.y1+t.h,w:t.w,h:t.h}}},"makeBoundingBox"),fKt=o(function(t){return{x1:t.x1,x2:t.x2,w:t.w,y1:t.y1,y2:t.y2,h:t.h}},"copyBoundingBox"),dKt=o(function(t){t.x1=1/0,t.y1=1/0,t.x2=-1/0,t.y2=-1/0,t.w=0,t.h=0},"clearBoundingBox"),pKt=o(function(t,r,n){return{x1:t.x1+r,x2:t.x2+r,y1:t.y1+n,y2:t.y2+n,w:t.w,h:t.h}},"shiftBoundingBox"),n1t=o(function(t,r){t.x1=Math.min(t.x1,r.x1),t.x2=Math.max(t.x2,r.x2),t.w=t.x2-t.x1,t.y1=Math.min(t.y1,r.y1),t.y2=Math.max(t.y2,r.y2),t.h=t.y2-t.y1},"updateBoundingBox"),mKt=o(function(t,r,n){t.x1=Math.min(t.x1,r),t.x2=Math.max(t.x2,r),t.w=t.x2-t.x1,t.y1=Math.min(t.y1,n),t.y2=Math.max(t.y2,n),t.h=t.y2-t.y1},"expandBoundingBoxByPoint"),oC=o(function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return t.x1-=r,t.x2+=r,t.y1-=r,t.y2+=r,t.w=t.x2-t.x1,t.h=t.y2-t.y1,t},"expandBoundingBox"),lC=o(function(t){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=ql(r,4);n=l[0],i=l[1],a=l[2],s=l[3]}return t.x1-=s,t.x2+=i,t.y1-=n,t.y2+=a,t.w=t.x2-t.x1,t.h=t.y2-t.y1,t},"expandBoundingBoxSides"),Rmt=o(function(t,r){t.x1=r.x1,t.y1=r.y1,t.x2=r.x2,t.y2=r.y2,t.w=t.x2-t.x1,t.h=t.y2-t.y1},"assignBoundingBox"),fF=o(function(t,r){return!(t.x1>r.x2||r.x1>t.x2||t.x2r.y2||r.y1>t.y2)},"boundingBoxesIntersect"),T1=o(function(t,r,n){return t.x1<=r&&r<=t.x2&&t.y1<=n&&n<=t.y2},"inBoundingBox"),gKt=o(function(t,r){return T1(t,r.x,r.y)},"pointInBoundingBox"),i1t=o(function(t,r){return T1(t,r.x1,r.y1)&&T1(t,r.x2,r.y2)},"boundingBoxInBoundingBox"),a1t=o(function(t,r,n,i,a,s,l){var u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",h=u==="auto"?Z0(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=_f(t,r,n,i,y,v,x,b,!1),g.length>0)return g}if(m){var w=n+f+l,S=i-d+h-l,T=w,E=i+d-h+l;if(g=_f(t,r,n,i,w,S,T,E,!1),g.length>0)return g}if(p){var _=n-f+h-l,A=i+d+l,L=n+f-h+l,M=A;if(g=_f(t,r,n,i,_,A,L,M,!1),g.length>0)return g}if(m){var N=n-f-l,k=i-d+h-l,I=N,C=i+d-h+l;if(g=_f(t,r,n,i,N,k,I,C,!1),g.length>0)return g}var O;{var D=n-f+h,P=i-d+h;if(O=lb(t,r,n,i,D,P,h+l),O.length>0&&O[0]<=D&&O[1]<=P)return[O[0],O[1]]}{var F=n+f-h,B=i-d+h;if(O=lb(t,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=lb(t,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,Q=i+d-h;if(O=lb(t,r,n,i,W,Q,h+l),O.length>0&&O[0]<=W&&O[1]>=Q)return[O[0],O[1]]}return[]},"roundRectangleIntersectLine"),yKt=o(function(t,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<=t&&t<=f+u&&d-u<=r&&r<=p+u},"inLineVicinity"),vKt=o(function(t,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!(tf.x2||rf.y2)},"inBezierVicinity"),xKt=o(function(t,r,n,i){n-=i;var a=r*r-4*t*n;if(a<0)return[];var s=Math.sqrt(a),l=2*t,u=(-r+s)/l,h=(-r-s)/l;return[u,h]},"solveQuadratic"),bKt=o(function(t,r,n,i,a){var s=1e-5;t===0&&(t=s),r/=t,n/=t,i/=t;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"),wKt=o(function(t,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*t+2*a*a+2*a*t-l*t+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*t-a*t+i*s-i*i+i*r-s*r,m=[];bKt(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,S,T=0;T=0?Sh?(t-a)*(t-a)+(r-s)*(r-s):f-p},"sqdistToFiniteLine"),Ws=o(function(t,r,n){for(var i,a,s,l,u,h=0,f=0;f=t&&t>=s||i<=t&&t<=s)u=(t-i)/(s-i)*(l-a)+a,u>r&&h++;else continue;return h%2!==0},"pointInsidePolygonPoints"),rh=o(function(t,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=bC(f,-h);y=xC(v)}else y=f;return Ws(t,r,y)},"pointInsidePolygon"),kKt=o(function(t,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]+t,S=b[0]*u[1]+r;if(b.length>1){if(b[0]==b[1])return[w,S];var T=b[1]*u[0]+t,E=b[1]*u[1]+r;return[w,S,T,E]}else return[w,S]},"intersectLineCircle"),NB=o(function(t,r,n){return r<=t&&t<=n||n<=t&&t<=r?t:t<=r&&r<=n||n<=r&&r<=t?r:n},"midOfThree"),_f=o(function(t,r,n,i,a,s,l,u,h){var f=t-a,d=n-t,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,S=x/b,T=.001,E=0-T,_=1+T;return E<=w&&w<=_&&E<=S&&S<=_?[t+w*d,r+w*g]:h?[t+w*d,r+w*g]:[]}else return v===0||x===0?NB(t,n,l)===l?[l,u]:NB(t,n,a)===a?[a,s]:NB(a,l,n)===n?[n,i]:[]:[]},"finiteLinesIntersect"),vb=o(function(t,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=bC(d,-u);m=xC(y)}else m=d}else m=n;for(var v,x,b,w,S=0;S2){for(var g=[f[0],f[1]],y=Math.pow(g[0]-t,2)+Math.pow(g[1]-r,2),v=1;vf&&(f=S)},"set"),get:o(function(w){return h[w]},"get")},p=0;p0?D=O.edgesTo(C)[0]:D=C.edgesTo(O)[0];var P=i(D);C=C.id(),A[C]>A[k]+P&&(A[C]=A[k]+P,L.nodes.indexOf(C)<0?L.push(C):L.updateItem(C),_[C]=0,E[C]=[]),A[C]==A[k]+P&&(_[C]=_[C]+_[k],E[C].push(k))}else for(var F=0;F0;){for(var W=T.pop(),Q=0;Q0&&l.push(n[u]);l.length!==0&&a.push(i.collection(l))}return a},"assign"),zKt=o(function(t,r){for(var n=0;n5&&arguments[5]!==void 0?arguments[5]:VKt,l=i,u,h,f=0;f=2?rb(t,r,n,0,Pmt,UKt):rb(t,r,n,0,Omt)},"euclidean"),squaredEuclidean:o(function(t,r,n){return rb(t,r,n,0,Pmt)},"squaredEuclidean"),manhattan:o(function(t,r,n){return rb(t,r,n,0,Omt)},"manhattan"),max:o(function(t,r,n){return rb(t,r,n,-1/0,HKt)},"max")};k1["squared-euclidean"]=k1.squaredEuclidean;k1.squaredeuclidean=k1.squaredEuclidean;o(NC,"clusteringDistance");WKt=Da({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),pF=o(function(t){return WKt(t)},"setOptions"),wC=o(function(t,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 NC(t,i.length,l,u,h,f)},"getDist"),MB=o(function(t,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"),XKt=o(function(t,r,n){for(var i=0;il&&(l=r[h][f],u=f);a[u].push(t[h])}for(var d=0;d=a.threshold||a.mode==="dendrogram"&&t.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},t[g.index]=v,t.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"),Vmt=o(function(t,r,n){for(var i=[],a=0;al&&(s=h,l=r[a*t+h])}s>0&&i.push(s)}for(var f=0;fh&&(u=f,h=d)}n[a]=s[u]}return i=Vmt(t,r,n),i},"assign"),Umt=o(function(t){for(var r=this.cy(),n=this.nodes(),i=lQt(t),a={},s=0;s=N?(k=N,N=C,I=O):C>k&&(k=C);for(var D=0;D0?1:0;_[L%i.minIterations*l+W]=Q,z+=Q}if(z>0&&(L>=i.minIterations-1||L==i.maxIterations-1)){for(var j=0,at=0;at1||E>1)&&(l=!0),d[w]=[],b.outgoers().forEach(function(A){A.isEdge()&&d[w].push(A.id())})}else p[w]=[void 0,b.target().id()]}):s.forEach(function(b){var w=b.id();if(b.isNode()){var S=b.degree(!0);S%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 S=w,T=[w],E,_,A;d[S].length;)E=d[S].shift(),_=p[E][0],A=p[E][1],S!=A?(d[A]=d[A].filter(function(L){return L!=E}),S=A):!a&&S!=_&&(d[_]=d[_].filter(function(L){return L!=E}),S=_),T.unshift(E),T.unshift(S);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")},J6=o(function(){var t=this,r={},n=0,i=0,a=[],s=[],l={},u=o(function(p,m){for(var g=s.length-1,y=[],v=t.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(t);v.merge(x),b.forEach(function(w){var S=w.id(),T=w.connectedEdges().intersection(t);v.merge(w),r[S].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=t.getElementById(m).connectedEdges().intersection(t);if(y.size()===0)a.push(t.spawn(t.getElementById(m)));else{var v,x,b,w;y.forEach(function(S){v=S.source().id(),x=S.target().id(),b=v===m?x:v,b!==g&&(w=S.id(),l[w]||(l[w]=!0,s.push({x:m,y:b,edge:S})),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");t.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 t.getElementById(d)});return{cut:t.spawn(f),components:a}},"hopcroftTarjanBiconnected"),gQt={hopcroftTarjanBiconnected:J6,htbc:J6,htb:J6,hopcroftTarjanBiconnectedComponents:J6},tC=o(function(){var t=this,r={},n=0,i=[],a=[],s=t.spawn(t),l=o(function u(h){a.push(h),r[h]={index:n,low:n++,explored:!1};var f=t.getElementById(h).connectedEdges().intersection(t);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=t.spawn();;){var p=a.pop();if(d.merge(t.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 t.forEach(function(u){if(u.isNode()){var h=u.id();h in r||l(h)}}),{cut:s,components:i}},"tarjanStronglyConnected"),yQt={tarjanStronglyConnected:tC,tsc:tC,tscc:tC,tarjanStronglyConnectedComponents:tC},f1t={};[gb,qjt,Xjt,Kjt,Zjt,tKt,nKt,_Kt,v1,x1,HB,GKt,tQt,sQt,dQt,mQt,gQt,yQt].forEach(function(e){ir(f1t,e)});d1t=0,p1t=1,m1t=2,nh=o(function e(t){if(!(this instanceof e))return new e(t);this.id="Thenable/1.0.7",this.state=d1t,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof t=="function"&&t.call(this,this.fulfill.bind(this),this.reject.bind(this))},"api");nh.prototype={fulfill:o(function(t){return Hmt(this,p1t,"fulfillValue",t)},"fulfill"),reject:o(function(t){return Hmt(this,m1t,"rejectReason",t)},"reject"),then:o(function(t,r){var n=this,i=new nh;return n.onFulfilled.push(Ymt(t,i,"fulfill")),n.onRejected.push(Ymt(r,i,"reject")),g1t(n),i.proxy},"then")};Hmt=o(function(t,r,n,i){return t.state===d1t&&(t.state=r,t[n]=i,g1t(t)),t},"deliver"),g1t=o(function(t){t.state===p1t?Wmt(t,"onFulfilled",t.fulfillValue):t.state===m1t&&Wmt(t,"onRejected",t.rejectReason)},"execute"),Wmt=o(function(t,r,n){if(t[r].length!==0){var i=t[r];t[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(t){return this.toggleClass(t,!0)},"addClass"),hasClass:o(function(t){var r=this[0];return r!=null&&r._private.classes.has(t)},"hasClass"),toggleClass:o(function(t,r){kn(t)||(t=t.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(t){return this.toggleClass(t,!1)},"removeClass"),flashClass:o(function(t,r){var n=this;if(r==null)r=250;else if(r===0)return n;return n.addClass(t),setTimeout(function(){n.removeClass(t)},r),n},"flashClass")};cC.className=cC.classNames=cC.classes;Vr={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Xi,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 e,t,r;for(e=Vr.comparatorOp.split("|"),r=0;r=0)&&t!=="="&&(Vr.comparatorOp+="|\\!"+t)})();pn=o(function(){return{checks:[]}},"newQuery"),Ne={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},YB=[{selector:":selected",matches:o(function(t){return t.selected()},"matches")},{selector:":unselected",matches:o(function(t){return!t.selected()},"matches")},{selector:":selectable",matches:o(function(t){return t.selectable()},"matches")},{selector:":unselectable",matches:o(function(t){return!t.selectable()},"matches")},{selector:":locked",matches:o(function(t){return t.locked()},"matches")},{selector:":unlocked",matches:o(function(t){return!t.locked()},"matches")},{selector:":visible",matches:o(function(t){return t.visible()},"matches")},{selector:":hidden",matches:o(function(t){return!t.visible()},"matches")},{selector:":transparent",matches:o(function(t){return t.transparent()},"matches")},{selector:":grabbed",matches:o(function(t){return t.grabbed()},"matches")},{selector:":free",matches:o(function(t){return!t.grabbed()},"matches")},{selector:":removed",matches:o(function(t){return t.removed()},"matches")},{selector:":inside",matches:o(function(t){return!t.removed()},"matches")},{selector:":grabbable",matches:o(function(t){return t.grabbable()},"matches")},{selector:":ungrabbable",matches:o(function(t){return!t.grabbable()},"matches")},{selector:":animated",matches:o(function(t){return t.animated()},"matches")},{selector:":unanimated",matches:o(function(t){return!t.animated()},"matches")},{selector:":parent",matches:o(function(t){return t.isParent()},"matches")},{selector:":childless",matches:o(function(t){return t.isChildless()},"matches")},{selector:":child",matches:o(function(t){return t.isChild()},"matches")},{selector:":orphan",matches:o(function(t){return t.isOrphan()},"matches")},{selector:":nonorphan",matches:o(function(t){return t.isChild()},"matches")},{selector:":compound",matches:o(function(t){return t.isNode()?t.isParent():t.source().isParent()||t.target().isParent()},"matches")},{selector:":loop",matches:o(function(t){return t.isLoop()},"matches")},{selector:":simple",matches:o(function(t){return t.isSimple()},"matches")},{selector:":active",matches:o(function(t){return t.active()},"matches")},{selector:":inactive",matches:o(function(t){return!t.active()},"matches")},{selector:":backgrounding",matches:o(function(t){return t.backgrounding()},"matches")},{selector:":nonbackgrounding",matches:o(function(t){return!t.backgrounding()},"matches")}].sort(function(e,t){return GXt(e.selector,t.selector)}),DJt=function(){for(var e={},t,r=0;r0&&f.edgeCount>0)return on("The selector `"+t+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(f.edgeCount>1)return on("The selector `"+t+"` is invalid because it uses multiple edge selectors"),!1;f.edgeCount===1&&on("The selector `"+t+"` 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"),PJt=o(function(){if(this.toStringCache!=null)return this.toStringCache;for(var t=o(function(f){return f??""},"clean"),r=o(function(f){return Ke(f)?'"'+f+'"':t(f)},"cleanVal"),n=o(function(f){return" "+f+" "},"space"),i=o(function(f,d){var p=f.type,m=f.value;switch(p){case Ne.GROUP:{var g=t(m);return g.substring(0,g.length-1)}case Ne.DATA_COMPARE:{var y=f.field,v=f.operator;return"["+y+n(t(v))+r(m)+"]"}case Ne.DATA_BOOL:{var x=f.operator,b=f.field;return"["+t(x)+b+"]"}case Ne.DATA_EXIST:{var w=f.field;return"["+w+"]"}case Ne.META_COMPARE:{var S=f.operator,T=f.field;return"[["+T+n(t(S))+r(m)+"]]"}case Ne.STATE:return m;case Ne.ID:return"#"+m;case Ne.CLASS:return"."+m;case Ne.PARENT:case Ne.CHILD:return a(f.parent,d)+n(">")+a(f.child,d);case Ne.ANCESTOR:case Ne.DESCENDANT:return a(f.ancestor,d)+" "+a(f.descendant,d);case Ne.COMPOUND_SPLIT:{var E=a(f.left,d),_=a(f.subject,d),A=a(f.right,d);return E+(E.length>0?" ":"")+_+A}case Ne.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?"":""+t,h=""+n),f&&(t=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=t===n;break;case">":p=!0,i=t>n;break;case">=":p=!0,i=t>=n;break;case"<":p=!0,i=t1&&arguments[1]!==void 0?arguments[1]:!0;return xF(this,e,t,C1t)};o(S1t,"addParent");E1.forEachUp=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return xF(this,e,t,S1t)};o(HJt,"addParentAndChildren");E1.forEachUpAndDown=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return xF(this,e,t,HJt)};E1.ancestors=E1.parents;bb=A1t={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 t=this[0];if(t)return t._private.data.id},"id")};bb.attr=bb.data;bb.removeAttr=bb.removeData;WJt=A1t,PC={};o(OB,"defineDegreeFunction");ir(PC,{degree:OB(function(e,t){return t.source().same(t.target())?2:1}),indegree:OB(function(e,t){return t.target().same(e)?1:0}),outdegree:OB(function(e,t){return t.source().same(e)?1:0})});o(u1,"defineDegreeBoundsFunction");ir(PC,{minDegree:u1("degree",function(e,t){return et}),minIndegree:u1("indegree",function(e,t){return et}),minOutdegree:u1("outdegree",function(e,t){return et})});ir(PC,{totalDegree:o(function(t){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(t,r+m[t]):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},t===void 0?a:a[t]}else if(!s)return;return this},"relativePosition")};Kl.modelPosition=Kl.point=Kl.position;Kl.modelPositions=Kl.points=Kl.positions;Kl.renderedPoint=Kl.renderedPosition;Kl.relativePoint=Kl.relativePosition;YJt=_1t;b1=Pf={};Pf.renderedBoundingBox=function(e){var t=this.boundingBox(e),r=this.cy(),n=r.zoom(),i=r.pan(),a=t.x1*n+i.x,s=t.x2*n+i.x,l=t.y1*n+i.y,u=t.y2*n+i.y;return{x1:a,x2:s,y1:l,y2:u,w:s-a,h:u-l}};Pf.dirtyCompoundBoundsCache=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.cy();return!t.styleEnabled()||!t.hasCompoundNodes()?this:(this.forEachUp(function(r){if(r.isParent()){var n=r._private;n.compoundBoundsClean=!1,n.bbCache=null,e||r.emitAndNotify("bounds")}}),this)};Pf.updateCompoundBounds=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.cy();if(!t.styleEnabled()||!t.hasCompoundNodes())return this;if(!e&&t.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(L,M,N){var k=0,I=0,C=M+N;return L>0&&C>0&&(k=M/C*L,I=N/C*L),{biasDiff:k,biasComplementDiff:I}}o(m,"computeBiasValues");function g(L,M,N,k){if(N.units==="%")switch(k){case"width":return L>0?N.pfValue*L:0;case"height":return M>0?N.pfValue*M:0;case"average":return L>0&&M>0?N.pfValue*(L+M)/2:0;case"min":return L>0&&M>0?L>M?N.pfValue*M:N.pfValue*L:0;case"max":return L>0&&M>0?L>M?N.pfValue*L:N.pfValue*M:0;default:return 0}else return N.units==="px"?N.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),S=w.biasDiff,T=w.biasComplementDiff,E=m(f.height.val-d.h,x,b),_=E.biasDiff,A=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=(-S+d.x1+d.x2+T)/2,l.autoHeight=Math.max(d.h,f.height.val),p.y=(-_+d.y1+d.y2+A)/2}o(r,"update");for(var n=0;nt.x2?i:t.x2,t.y1=nt.y2?a:t.y2,t.w=t.x2-t.x1,t.h=t.y2-t.y1)},"updateBounds"),W0=o(function(t,r){return r==null?t:Xl(t,r.x1,r.y1,r.x2,r.y2)},"updateBoundsFromBox"),nb=o(function(t,r,n){return jl(t,r,n)},"prefixedProperty"),eC=o(function(t,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,oC(d,1),Xl(t,d.x1,d.y1,d.x2,d.y2)}}},"updateBoundsFromArrow"),PB=o(function(t,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=nb(s,"labelWidth",n),d=nb(s,"labelHeight",n),p=nb(s,"labelX",n),m=nb(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,S=w/2,T=r.pstyle("text-background-padding").pfValue,E=2,_=d,A=f,L=A/2,M=_/2,N,k,I,C;if(v)N=p-L,k=p+L,I=m-M,C=m+M;else{switch(u.value){case"left":N=p-A,k=p;break;case"center":N=p-L,k=p+L;break;case"right":N=p,k=p+A;break}switch(h.value){case"top":I=m-_,C=m;break;case"center":I=m-M,C=m+M;break;case"bottom":I=m,C=m+_;break}}N+=g-Math.max(b,S)-T-E,k+=g+Math.max(b,S)+T+E,I+=y-Math.max(b,S)-T-E,C+=y+Math.max(b,S)+T+E;var O=n||"main",D=a.labelBounds,P=D[O]=D[O]||{};P.x1=N,P.y1=I,P.x2=k,P.y2=C,P.w=k-N,P.h=C-I;var F=v&&x.strValue==="autorotate",B=x.pfValue!=null&&x.pfValue!==0;if(F||B){var G=F?nb(a.rstyle,"labelAngle",n):x.pfValue,z=Math.cos(G),W=Math.sin(G),Q=(N+k)/2,j=(I+C)/2;if(!v){switch(u.value){case"left":Q=k;break;case"right":Q=N;break}switch(h.value){case"top":j=C;break;case"bottom":j=I;break}}var at=o(function(ct,ut){return ct=ct-Q,ut=ut-j,{x:ct*z-ut*W+Q,y:ct*W+ut*z+j}},"rotate"),X=at(N,I),J=at(N,C),Z=at(k,I),H=at(k,C);N=Math.min(X.x,J.x,Z.x,H.x),k=Math.max(X.x,J.x,Z.x,H.x),I=Math.min(X.y,J.y,Z.y,H.y),C=Math.max(X.y,J.y,Z.y,H.y)}var q=O+"Rot",K=D[q]=D[q]||{};K.x1=N,K.y1=I,K.x2=k,K.y2=C,K.w=k-N,K.h=C-I,Xl(t,N,I,k,C),Xl(a.labelBounds.all,N,I,k,C)}return t}},"updateBoundsFromLabel"),qJt=o(function(t,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=(t.w+l*2)/t.w,h=(t.h+l*2)/t.h,f=0,d=0;["diamond","pentagon","round-triangle"].includes(s)?(u=(t.w+l*2.4)/t.w,d=-l/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(s)?u=(t.w+l*2.4)/t.w:s==="star"?(u=(t.w+l*2.8)/t.w,h=(t.h+l*2.6)/t.h,d=-l/3.8):s==="triangle"?(u=(t.w+l*2.8)/t.w,h=(t.h+l*2.4)/t.h,d=-l/1.4):s==="vee"&&(u=(t.w+l*4.4)/t.w,h=(t.h+l*3.8)/t.h,d=-l*.5);var p=t.h*h-t.h,m=t.w*u-t.w;if(lC(t,[Math.ceil(p/2),Math.ceil(m/2)]),f!=0||d!==0){var g=pKt(t,f,d);n1t(t,g)}}}},"updateBoundsFromOutline"),XJt=o(function(t,r){var n=t._private.cy,i=n.styleEnabled(),a=n.headless(),s=Ys(),l=t._private,u=t.isNode(),h=t.isEdge(),f,d,p,m,g,y,v=l.rstyle,x=u&&i?t.pstyle("bounds-expansion").pfValue:[0],b=o(function(Mt){return Mt.pstyle("display").value!=="none"},"isDisplayed"),w=!i||b(t)&&(!h||b(t.source())&&b(t.target()));if(w){var S=0,T=0;i&&r.includeOverlays&&(S=t.pstyle("overlay-opacity").value,S!==0&&(T=t.pstyle("overlay-padding").value));var E=0,_=0;i&&r.includeUnderlays&&(E=t.pstyle("underlay-opacity").value,E!==0&&(_=t.pstyle("underlay-padding").value));var A=Math.max(T,_),L=0,M=0;if(i&&(L=t.pstyle("width").pfValue,M=L/2),u&&r.includeNodes){var N=t.position();g=N.x,y=N.y;var k=t.outerWidth(),I=k/2,C=t.outerHeight(),O=C/2;f=g-I,d=g+I,p=y-O,m=y+O,Xl(s,f,p,d,m),i&&r.includeOutlines&&qJt(s,t)}else if(h&&r.includeEdges)if(i&&!a){var D=t.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-=M,d+=M,p-=M,m+=M,Xl(s,f,p,d,m),D==="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}Xl(s,f-M,p-M,d+M,m+M)}}else if(D==="bezier"||D==="unbundled-bezier"||D.endsWith("segments")||D.endsWith("taxi")){var G;switch(D){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 J=f;f=d,d=J}if(p>m){var Z=p;p=m,m=Z}f-=M,d+=M,p-=M,m+=M,Xl(s,f,p,d,m)}if(i&&r.includeEdges&&h&&(eC(s,t,"mid-source"),eC(s,t,"mid-target"),eC(s,t,"source"),eC(s,t,"target")),i){var H=t.pstyle("ghost").value==="yes";if(H){var q=t.pstyle("ghost-offset-x").pfValue,K=t.pstyle("ghost-offset-y").pfValue;Xl(s,s.x1+q,s.y1+K,s.x2+q,s.y2+K)}}var ot=l.bodyBounds=l.bodyBounds||{};Rmt(ot,s),lC(ot,x),oC(ot,1),i&&(f=s.x1,d=s.x2,p=s.y1,m=s.y2,Xl(s,f-A,p-A,d+A,m+A));var ct=l.overlayBounds=l.overlayBounds||{};Rmt(ct,s),lC(ct,x),oC(ct,1);var ut=l.labelBounds=l.labelBounds||{};ut.all!=null?dKt(ut.all):ut.all=Ys(),i&&r.includeLabels&&(r.includeMainLabels&&PB(s,t,null),h&&(r.includeSourceLabels&&PB(s,t,"source"),r.includeTargetLabels&&PB(s,t,"target")))}return s.x1=il(s.x1),s.y1=il(s.y1),s.x2=il(s.x2),s.y2=il(s.y2),s.w=il(s.x2-s.x1),s.h=il(s.y2-s.y1),s.w>0&&s.h>0&&w&&(lC(s,x),oC(s,1)),s},"boundingBoxImpl"),D1t=o(function(t){var r=0,n=o(function(s){return(s?1:0)<=0;l--)s(l);return this};Of.removeAllListeners=function(){return this.removeListener("*")};Of.emit=Of.trigger=function(e,t,r){var n=this.listeners,i=n.length;return this.emitting++,kn(t)||(t=[t]),ute(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===lte)&&a.eventMatches(a.context,d,s)){var p=[s];t!=null&&Gjt(p,t),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[t]=u,a.set(h,{ele:u,index:t})}return this.length--,this},"unmergeAt"),unmergeOne:o(function(t){t=t[0];var r=this._private,n=t._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(t){var r=this._private.cy;if(!t)return this;if(t&&Ke(t)){var n=t;t=r.mutableElements().filter(n)}for(var i=0;i=0;r--){var n=this[r];t(n)&&this.unmergeAt(r)}return this},"unmergeBy"),map:o(function(t,r){for(var n=[],i=this,a=0;an&&(n=u,i=l)}return{value:n,ele:i}},"max"),min:o(function(t,r){for(var n=1/0,i,a=this,s=0;s=0&&a"u"?"undefined":ji(Symbol))!=t&&ji(Symbol.iterator)!=t;r&&(TC[Symbol.iterator]=function(){var n=this,i={value:void 0,done:!1},a=0,s=this.length;return Ogt({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[t];return a??(r?i.style().getDefaultProperty(t):null)}},"parsedStyle"),numericStyle:o(function(t){var r=this[0];if(r.cy().styleEnabled()&&r){var n=r.pstyle(t);return n.pfValue!==void 0?n.pfValue:n.value}},"numericStyle"),numericStyleUnits:o(function(t){var r=this[0];if(r.cy().styleEnabled()&&r)return r.pstyle(t).units},"numericStyleUnits"),renderedStyle:o(function(t){var r=this.cy();if(!r.styleEnabled())return this;var n=this[0];if(n)return r.style().getRenderedStyle(n,t)},"renderedStyle"),style:o(function(t,r){var n=this.cy();if(!n.styleEnabled())return this;var i=!1,a=n.style();if(Ur(t)){var s=t;a.applyBypass(this,s,i),this.emitAndNotify("style")}else if(Ke(t))if(r===void 0){var l=this[0];return l?a.getStylePropertyValue(l,t):void 0}else a.applyBypass(this,t,r,i),this.emitAndNotify("style");else if(t===void 0){var u=this[0];return u?a.getRawStyle(u):void 0}return this},"style"),removeStyle:o(function(t){var r=this.cy();if(!r.styleEnabled())return this;var n=!1,i=r.style(),a=this;if(t===void 0)for(var s=0;s0&&t.push(f[0]),t.push(l[0])}return this.spawn(t,!0).filter(e)},"neighborhood"),closedNeighborhood:o(function(t){return this.neighborhood().add(this).filter(t)},"closedNeighborhood"),openNeighborhood:o(function(t){return this.neighborhood(t)},"openNeighborhood")});Ua.neighbourhood=Ua.neighborhood;Ua.closedNeighbourhood=Ua.closedNeighborhood;Ua.openNeighbourhood=Ua.openNeighborhood;ir(Ua,{source:al(o(function(t){var r=this[0],n;return r&&(n=r._private.source||r.cy().collection()),n&&t?n.filter(t):n},"sourceImpl"),"source"),target:al(o(function(t){var r=this[0],n;return r&&(n=r._private.target||r.cy().collection()),n&&t?n.filter(t):n},"targetImpl"),"target"),sources:cgt({attr:"source"}),targets:cgt({attr:"target"})});o(cgt,"defineSourceFunction");ir(Ua,{edgesWith:al(ugt(),"edgesWith"),edgesTo:al(ugt({thisIsSrc:!0}),"edgesTo")});o(ugt,"defineEdgesWithFunction");ir(Ua,{connectedEdges:al(function(e){for(var t=[],r=this,n=0;n0);return s},"components"),component:o(function(){var t=this[0];return t.cy().mutableElements().components(t)[0]},"component")});Ua.componentsOf=Ua.components;La=o(function(t,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(t===void 0){fi("A collection must have a reference to the core");return}var a=new Qc,s=!1;if(!r)r=[];else if(r.length>0&&Ur(r[0])&&!Cb(r[0])){s=!0;for(var l=[],u=new C1,h=0,f=r.length;h0&&arguments[0]!==void 0?arguments[0]:!0,t=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 La(n,l),G=0;G0&&arguments[0]!==void 0?arguments[0]:!0,t=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,D=0;D0&&(e?N.emitAndNotify("remove"):t&&N.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")}(),In=o(function(t,r,n,i){var a=bte(t,r,n,i);return function(s,l,u){return s+(l-s)*a(u)}},"cubicBezier"),hC={linear:o(function(t,r,n){return t+(r-t)*n},"linear"),ease:In(.25,.1,.25,1),"ease-in":In(.42,0,1,1),"ease-out":In(0,0,.58,1),"ease-in-out":In(.42,0,.58,1),"ease-in-sine":In(.47,0,.745,.715),"ease-out-sine":In(.39,.575,.565,1),"ease-in-out-sine":In(.445,.05,.55,.95),"ease-in-quad":In(.55,.085,.68,.53),"ease-out-quad":In(.25,.46,.45,.94),"ease-in-out-quad":In(.455,.03,.515,.955),"ease-in-cubic":In(.55,.055,.675,.19),"ease-out-cubic":In(.215,.61,.355,1),"ease-in-out-cubic":In(.645,.045,.355,1),"ease-in-quart":In(.895,.03,.685,.22),"ease-out-quart":In(.165,.84,.44,1),"ease-in-out-quart":In(.77,0,.175,1),"ease-in-quint":In(.755,.05,.855,.06),"ease-out-quint":In(.23,1,.32,1),"ease-in-out-quint":In(.86,0,.07,1),"ease-in-expo":In(.95,.05,.795,.035),"ease-out-expo":In(.19,1,.22,1),"ease-in-out-expo":In(1,0,0,1),"ease-in-circ":In(.6,.04,.98,.335),"ease-out-circ":In(.075,.82,.165,1),"ease-in-out-circ":In(.785,.135,.15,.86),spring:o(function(t,r,n){if(n===0)return hC.linear;var i=wte(t,r,n);return function(a,s,l){return a+(s-a)*i(l)}},"spring"),"cubic-bezier":In};o(fgt,"getEasedValue");o(dgt,"getValue");o(h1,"ease");o(Tte,"step$1");o(ab,"valid");o(kte,"startAnimation");o(pgt,"stepAll");Ete={animate:sn.animate(),animation:sn.animation(),animated:sn.animated(),clearQueue:sn.clearQueue(),delay:sn.delay(),delayAnimation:sn.delayAnimation(),stop:sn.stop(),addToAnimationPool:o(function(t){var r=this;r.styleEnabled()&&r._private.aniEles.merge(t)},"addToAnimationPool"),stopAnimationLoop:o(function(){this._private.animationsRunning=!1},"stopAnimationLoop"),startAnimationLoop:o(function(){var t=this;if(t._private.animationsRunning=!0,!t.styleEnabled())return;function r(){t._private.animationsRunning&&yC(o(function(a){pgt(a,t),r()},"animationStep"))}o(r,"headlessStep");var n=t.renderer();n&&n.beforeRender?n.beforeRender(o(function(a,s){pgt(s,t)},"rendererAnimationStep"),n.beforeRenderPriorities.animations):r()},"startAnimationLoop")},Cte={qualifierCompare:o(function(t,r){return t==null||r==null?t==null&&r==null:t.sameText(r)},"qualifierCompare"),eventMatches:o(function(t,r,n){var i=r.qualifier;return i!=null?t!==n.target&&Cb(n.target)&&i.matches(n.target):!0},"eventMatches"),addEventFields:o(function(t,r){r.cy=t,r.target=t},"addEventFields"),callbackContext:o(function(t,r,n){return r.qualifier!=null?n.target:t},"callbackContext")},iC=o(function(t){return Ke(t)?new Mf(t):t},"argSelector"),G1t={createEmitter:o(function(){var t=this._private;return t.emitter||(t.emitter=new BC(Cte,this)),this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(t,r,n){return this.emitter().on(t,iC(r),n),this},"on"),removeListener:o(function(t,r,n){return this.emitter().removeListener(t,iC(r),n),this},"removeListener"),removeAllListeners:o(function(){return this.emitter().removeAllListeners(),this},"removeAllListeners"),one:o(function(t,r,n){return this.emitter().one(t,iC(r),n),this},"one"),once:o(function(t,r,n){return this.emitter().one(t,iC(r),n),this},"once"),emit:o(function(t,r){return this.emitter().emit(t,r),this},"emit"),emitAndNotify:o(function(t,r){return this.emit(t),this.notify(t,r),this},"emitAndNotify")};sn.eventAliasesOn(G1t);XB={png:o(function(t){var r=this._private.renderer;return t=t||{},r.png(t)},"png"),jpg:o(function(t){var r=this._private.renderer;return t=t||{},t.bg=t.bg||"#fff",r.jpg(t)},"jpg")};XB.jpeg=XB.jpg;fC={layout:o(function(t){var r=this;if(t==null){fi("Layout options must be specified to make a layout");return}if(t.name==null){fi("A `name` must be specified to make a layout");return}var n=t.name,i=r.extension("layout",n);if(i==null){fi("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var a;Ke(t.eles)?a=r.$(t.eles):a=t.eles!=null?t.eles:r.$();var s=new i(ir({},t,{cy:r,eles:a}));return s},"layout")};fC.createLayout=fC.makeLayout=fC.layout;Ste={notify:o(function(t,r){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var i=n.batchNotifications[t]=n.batchNotifications[t]||this.collection();r!=null&&i.merge(r);return}if(n.notificationsEnabled){var a=this.renderer();this.destroyed()||!a||a.notify(t,r)}},"notify"),notifications:o(function(t){var r=this._private;return t===void 0?r.notificationsEnabled:(r.notificationsEnabled=!!t,this)},"notifications"),noNotifications:o(function(t){this.notifications(!1),t(),this.notifications(!0)},"noNotifications"),batching:o(function(){return this._private.batchCount>0},"batching"),startBatch:o(function(){var t=this._private;return t.batchCount==null&&(t.batchCount=0),t.batchCount===0&&(t.batchStyleEles=this.collection(),t.batchNotifications={}),t.batchCount++,this},"startBatch"),endBatch:o(function(){var t=this._private;if(t.batchCount===0)return this;if(t.batchCount--,t.batchCount===0){t.batchStyleEles.updateStyle();var r=this.renderer();Object.keys(t.batchNotifications).forEach(function(n){var i=t.batchNotifications[n];i.empty()?r.notify(n):r.notify(n,i)})}return this},"endBatch"),batch:o(function(t){return this.startBatch(),t(),this.endBatch(),this},"batch"),batchData:o(function(t){var r=this;return this.batch(function(){for(var n=Object.keys(t),i=0;i0;)r.removeChild(r.childNodes[0]);t._private.renderer=null,t.mutableElements().forEach(function(n){var i=n._private;i.rscratch={},i.rstyle={},i.animation.current=[],i.animation.queue=[]})},"destroyRenderer"),onRender:o(function(t){return this.on("render",t)},"onRender"),offRender:o(function(t){return this.off("render",t)},"offRender")};jB.invalidateDimensions=jB.resize;dC={collection:o(function(t,r){return Ke(t)?this.$(t):wo(t)?t.collection():kn(t)?(r||(r={}),new La(this,t,r.unique,r.removed)):new La(this)},"collection"),nodes:o(function(t){var r=this.$(function(n){return n.isNode()});return t?r.filter(t):r},"nodes"),edges:o(function(t){var r=this.$(function(n){return n.isEdge()});return t?r.filter(t):r},"edges"),$:o(function(t){var r=this._private.elements;return t?r.filter(t):r.spawnSelf()},"$"),mutableElements:o(function(){return this._private.elements},"mutableElements")};dC.elements=dC.filter=dC.$;Wa={},hb="t",_te="f";Wa.apply=function(e){for(var t=this,r=t._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&&(S=1),l.color){var E=n.valueMin[0],_=n.valueMax[0],A=n.valueMin[1],L=n.valueMax[1],M=n.valueMin[2],N=n.valueMax[2],k=n.valueMin[3]==null?1:n.valueMin[3],I=n.valueMax[3]==null?1:n.valueMax[3],C=[Math.round(E+(_-E)*S),Math.round(A+(L-A)*S),Math.round(M+(N-M)*S),Math.round(k+(I-k)*S)];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)*S;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 D=n.field.split("."),P=d.data,F=0;F0&&a>0){for(var l={},u=!1,h=0;h0?e.delayAnimation(s).play().promise().then(w):w()}).then(function(){return e.animation({style:l,duration:a,easing:e.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){r.removeBypasses(e,i),e.emitAndNotify("style"),n.transitioning=!1})}else n.transitioning&&(this.removeBypasses(e,i),e.emitAndNotify("style"),n.transitioning=!1)};Wa.checkTrigger=function(e,t,r,n,i,a){var s=this.properties[t],l=i(s);l!=null&&l(r,n)&&a(s)};Wa.checkZOrderTrigger=function(e,t,r,n){var i=this;this.checkTrigger(e,t,r,n,function(a){return a.triggersZOrder},function(){i._private.cy.notify("zorder",e)})};Wa.checkBoundsTrigger=function(e,t,r,n){this.checkTrigger(e,t,r,n,function(i){return i.triggersBounds},function(i){e.dirtyCompoundBoundsCache(),e.dirtyBoundingBoxCache(),i.triggersBoundsOfParallelBeziers&&t==="curve-style"&&(r==="bezier"||n==="bezier")&&e.parallelEdges().forEach(function(a){a.isBundledBezier()&&a.dirtyBoundingBoxCache()}),i.triggersBoundsOfConnectedEdges&&t==="display"&&(r==="none"||n==="none")&&e.connectedEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})};Wa.checkTriggers=function(e,t,r,n){e.dirtyStyleCache(),this.checkZOrderTrigger(e,t,r,n),this.checkBoundsTrigger(e,t,r,n)};Lb={};Lb.applyBypass=function(e,t,r,n){var i=this,a=[],s=!0;if(t==="*"||t==="**"){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 Mf(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],S=t.properties[b];if(!S){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&&t[0]==="d"&&(f=new RegExp(l.data.regex).exec(t))){if(r)return!1;var p=l.data;return{name:e,value:f,strValue:""+t,mapped:p,field:f[1],bypass:r}}else if(t.length>=10&&t[0]==="m"&&(d=new RegExp(l.mapData.regex).exec(t))){if(r||h.multiple)return!1;var m=l.mapData;if(!(h.color||h.number))return!1;var g=this.parse(e,d[4]);if(!g||g.mapped)return!1;var y=this.parse(e,d[5]);if(!y||y.mapped)return!1;if(g.pfValue===y.pfValue||g.strValue===y.strValue)return on("`"+e+": "+t+"` is not a valid mapper because the output range is zero; converting to `"+e+": "+g.strValue+"`"),this.parse(e,g.strValue);if(h.color){var v=g.value,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:e,value:d,strValue:""+t,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=t.split(/\s+/):kn(t)?w=t:w=[t],h.evenMultiple&&w.length%2!==0)return null;for(var S=[],T=[],E=[],_="",A=!1,L=0;L0?" ":"")+M.strValue}return h.validate&&!h.validate(S,T)?null:h.singleEnum&&A?S.length===1&&Ke(S[0])?{name:e,value:S[0],strValue:S[0],bypass:r}:null:{name:e,value:S,pfValue:E,strValue:_,bypass:r,units:T}}var N=o(function(){for(var H=0;Hh.max||h.strictMax&&t===h.max))return null;var D={name:e,value:t,strValue:""+t+(k||""),units:k,bypass:r};return h.unitless||k!=="px"&&k!=="em"?D.pfValue=t:D.pfValue=k==="px"||!k?t:this.getEmSizeInPixels()*t,(k==="ms"||k==="s")&&(D.pfValue=k==="ms"?t:1e3*t),(k==="deg"||k==="rad")&&(D.pfValue=k==="rad"?t:cKt(t)),k==="%"&&(D.pfValue=t/100),D}else if(h.propList){var P=[],F=""+t;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(t){return t===void 0?this._private.minZoom:this.zoomRange({min:t})},"minZoom"),maxZoom:o(function(t){return t===void 0?this._private.maxZoom:this.zoomRange({max:t})},"maxZoom"),getZoomedViewport:o(function(t){var r=this._private,n=r.pan,i=r.zoom,a,s,l=!1;if(r.zoomingEnabled||(l=!0),be(t)?s=t:Ur(t)&&(s=t.level,t.position!=null?a=RC(t.position,i,n):t.renderedPosition!=null&&(a=t.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||!t.cancelOnFailedZoom)&&r.panningEnabled){var h=t.pan;be(h.x)&&(r.pan.x=h.x,l=!1),be(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(t){var r=this.getCenterPan(t);return r&&(this._private.pan=r,this.emit("pan viewport"),this.notify("viewport")),this},"center"),getCenterPan:o(function(t,r){if(this._private.panningEnabled){if(Ke(t)){var n=t;t=this.mutableElements().filter(n)}else wo(t)||(t=this.mutableElements());if(t.length!==0){var i=t.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 t=this._private,r=t.container,n=this;return t.sizeCache=t.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 t=this._private.pan,r=this._private.zoom,n=this.renderedExtent(),i={x1:(n.x1-t.x)/r,x2:(n.x2-t.x)/r,y1:(n.y1-t.y)/r,y2:(n.y2-t.y)/r};return i.w=i.x2-i.x1,i.h=i.y2-i.y1,i},"extent"),renderedExtent:o(function(){var t=this.width(),r=this.height();return{x1:0,y1:0,x2:t,y2:r,w:t,h:r}},"renderedExtent"),multiClickDebounceTime:o(function(t){if(t)this._private.multiClickDebounceTime=t;else return this._private.multiClickDebounceTime;return this},"multiClickDebounceTime")};tp.centre=tp.center;tp.autolockNodes=tp.autolock;tp.autoungrabifyNodes=tp.autoungrabify;Tb={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})};Tb.attr=Tb.data;Tb.removeAttr=Tb.removeData;kb=o(function(t){var r=this;t=ir({},t);var n=t.container;n&&!gC(n)&&gC(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=qi!==void 0&&n!==void 0&&!t.headless,l=t;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 La(this),listeners:[],aniEles:new La(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:be(l.zoom)?l.zoom:1,pan:{x:Ur(l.pan)&&be(l.pan.x)?l.pan.x:0,y:Ur(l.pan)&&be(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(MXt);if(v)return S1.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=Ys(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),h;if(wo(t.roots))h=t.roots;else if(kn(t.roots)){for(var f=[],d=0;d0;){var O=C(),D=M(O,k);if(D)O.outgoers().filter(function(ut){return ut.isNode()&&n.has(ut)}).forEach(I);else if(D===null){on("Detected double maximal shift for node `"+O.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}L();var P=0;if(t.avoidOverlap)for(var F=0;F0&&x[0].length<=3?Pt/2:0),Y=2*Math.PI/x[it].length*wt;return it===0&&x[0].length===1&&(dt=1),{x:K.x+dt*Math.cos(Y),y:K.y+dt*Math.sin(Y)}}else{var _t={x:K.x+(wt+1-(Ot+1)/2)*St,y:(it+1)*Vt};return _t}},"getPosition");return n.nodes().layoutPositions(this,t,ct),this};Mte={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(t,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(t,r){return r},"transform")};o(U1t,"CircleLayout");U1t.prototype.run=function(){var e=this.options,t=e,r=e.cy,n=t.eles,i=t.counterclockwise!==void 0?!t.counterclockwise:t.clockwise,a=n.nodes().not(":parent");t.sort&&(a=a.sort(t.sort));for(var s=Ys(t.boundingBox?t.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=t.sweep===void 0?2*Math.PI-2*Math.PI/a.length:t.sweep,h=u/Math.max(1,a.length-1),f,d=0,p=0;p1&&t.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 S=o(function(E,_){var A=t.startAngle+_*h*(i?1:-1),L=f*Math.cos(A),M=f*Math.sin(A),N={x:l.x+L,y:l.y+M};return N},"getPos");return n.nodes().layoutPositions(this,t,S),this};Ite={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(t){return t.degree()},"concentric"),levelWidth:o(function(t){return t.maxDegree()/4},"levelWidth"),animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(t,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(t,r){return r},"transform")};o(H1t,"ConcentricLayout");H1t.prototype.run=function(){for(var e=this.options,t=e,r=t.counterclockwise!==void 0?!t.counterclockwise:t.clockwise,n=e.cy,i=t.eles,a=i.nodes().not(":parent"),s=Ys(t.boundingBox?t.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-S.value);T>=v&&(b=[],x.push(b))}b.push(S)}var E=h+t.minNodeSpacing;if(!t.avoidOverlap){var _=x.length>0&&x[0].length>1,A=Math.min(s.w,s.h)/2-E,L=A/(x.length+_?1:0);E=Math.min(E,L)}for(var M=0,N=0;N1&&t.avoidOverlap){var O=Math.cos(C)-Math.cos(0),D=Math.sin(C)-Math.sin(0),P=Math.sqrt(E*E/(O*O+D*D));M=Math.max(P,M)}k.r=M,M+=E}if(t.equidistant){for(var F=0,B=0,G=0;G=e.numIter||(Vte(n,e),n.temperature=n.temperature*e.coolingFactor,n.temperature=e.animationThreshold&&a(),yC(d)}},"frame");f()}else{for(;h;)h=s(u),u++;ygt(n,e),l()}return this};VC.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this};VC.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};Pte=o(function(t,r,n){for(var i=n.eles.edges(),a=n.eles.nodes(),s=Ys(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:t.width(),h:t.height()}),l={isCompound:t.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(A);for(var f=0;fi.count?0:i.graph},"findLCA"),Fte=o(function e(t,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=EC(t,l,u),v=EC(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=(t.nodeRepulsion+r.nodeRepulsion)/w,m=d*x/p,g=d*b/p;t.isLocked||(t.offsetX-=m,t.offsetY-=g),r.isLocked||(r.offsetX+=m,r.offsetY+=g)}},"nodeRepulsion"),Wte=o(function(t,r,n,i){if(n>0)var a=t.maxX-r.minX;else var a=r.maxX-t.minX;if(i>0)var s=t.maxY-r.minY;else var s=r.maxY-t.minY;return a>=0&&s>=0?Math.sqrt(a*a+s*s):0},"nodesOverlap"),EC=o(function(t,r,n){var i=t.positionX,a=t.positionY,s=t.height||1,l=t.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"),Yte=o(function(t,r){for(var n=0;nn){var v=r.gravity*m/y,x=r.gravity*g/y;p.offsetX+=v,p.offsetY+=x}}}}},"calculateGravityForces"),Xte=o(function(t,r){var n=[],i=0,a=-1;for(n.push.apply(n,t.graphSet[0]),a+=t.graphSet[0].length;i<=a;){var s=n[i++],l=t.idToIndex[s],u=t.layoutNodes[l],h=u.children;if(0n)var a={x:n*t/i,y:n*r/i};else var a={x:t,y:r};return a},"limitForce"),Qte=o(function e(t,r){var n=t.parentId;if(n!=null){var i=r.layoutNodes[r.idToIndex[n]],a=!1;if((i.maxX==null||t.maxX+i.padRight>i.maxX)&&(i.maxX=t.maxX+i.padRight,a=!0),(i.minX==null||t.minX-i.padLefti.maxY)&&(i.maxY=t.maxY+i.padBottom,a=!0),(i.minY==null||t.minY-i.padTopx&&(g+=v+r.componentSpacing,m=0,y=0,v=0)}}},"separateComponents"),Zte={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(t){},"position"),sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(t,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(t,r){return r},"transform")};o(Y1t,"GridLayout");Y1t.prototype.run=function(){var e=this.options,t=e,r=e.cy,n=t.eles,i=n.nodes().not(":parent");t.sort&&(i=i.sort(t.sort));var a=Ys(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(a.h===0||a.w===0)n.nodes().layoutPositions(this,t,function(Q){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 at=Math.min(u,h);at==u?u=j:h=j},"small"),d=o(function(j){if(j==null)return Math.max(u,h);var at=Math.max(u,h);at==u?u=j:h=j},"large"),p=t.rows,m=t.cols!=null?t.cols:t.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(t.condense&&(b=0,w=0),t.avoidOverlap)for(var S=0;S=h&&(O=0,C++)},"moveToNextCell"),P={},F=0;F(O=TKt(e,t,D[P],D[P+1],D[P+2],D[P+3])))return v(_,O),!0}else if(L.edgeType==="bezier"||L.edgeType==="multibezier"||L.edgeType==="self"||L.edgeType==="compound"){for(var D=L.allpts,P=0;P+5(O=wKt(e,t,D[P],D[P+1],D[P+2],D[P+3],D[P+4],D[P+5])))return v(_,O),!0}for(var F=F||A.source,B=B||A.target,G=i.getArrowWidth(M,N),z=[{name:"source",x:L.arrowStartX,y:L.arrowStartY,angle:L.srcArrowAngle},{name:"target",x:L.arrowEndX,y:L.arrowEndY,angle:L.tgtArrowAngle},{name:"mid-source",x:L.midX,y:L.midY,angle:L.midsrcArrowAngle},{name:"mid-target",x:L.midX,y:L.midY,angle:L.midtgtArrowAngle}],P=0;P0&&(x(F),x(B))}o(b,"checkEdge");function w(_,A,L){return jl(_,A,L)}o(w,"preprop");function S(_,A){var L=_._private,M=p,N;A?N=A+"-":N="",_.boundingBox();var k=L.labelBounds[A||"main"],I=_.pstyle(N+"label").value,C=_.pstyle("text-events").strValue==="yes";if(!(!C||!I)){var O=w(L.rscratch,"labelX",A),D=w(L.rscratch,"labelY",A),P=w(L.rscratch,"labelAngle",A),F=_.pstyle(N+"text-margin-x").pfValue,B=_.pstyle(N+"text-margin-y").pfValue,G=k.x1-M-F,z=k.x2+M-F,W=k.y1-M-B,Q=k.y2+M-B;if(P){var j=Math.cos(P),at=Math.sin(P),X=o(function(ct,ut){return ct=ct-O,ut=ut-D,{x:ct*j-ut*at+O,y:ct*at+ut*j+D}},"rotate"),J=X(G,W),Z=X(G,Q),H=X(z,W),q=X(z,Q),K=[J.x+F,J.y+B,H.x+F,H.y+B,q.x+F,q.y+B,Z.x+F,Z.y+B];if(Ws(e,t,K))return v(_),!0}else if(T1(k,e,t))return v(_),!0}}o(S,"checkLabel");for(var T=s.length-1;T>=0;T--){var E=s[T];E.isNode()?x(E)||S(E):b(E)||S(E)||S(E,"source")||S(E,"target")}return l};rp.getAllInBox=function(e,t,r,n){var i=this.getCachedZSortedEles().interactive,a=[],s=Math.min(e,r),l=Math.max(e,r),u=Math.min(t,n),h=Math.max(t,n);e=s,r=l,t=u,n=h;for(var f=Ys({x1:e,y1:t,x2:r,y2:n}),d=0;d0?-(Math.PI-t.ang):Math.PI+t.ang},"invertVec"),iee=o(function(t,r,n,i,a){if(t!==Tgt?kgt(r,t,jc):nee(nl,jc),kgt(r,n,nl),bgt=jc.nx*nl.ny-jc.ny*nl.nx,wgt=jc.nx*nl.nx-jc.ny*-nl.ny,th=Math.asin(Math.max(-1,Math.min(1,bgt))),Math.abs(th)<1e-6){KB=r.x,QB=r.y,Y0=d1=0;return}q0=1,pC=!1,wgt<0?th<0?th=Math.PI+th:(th=Math.PI-th,q0=-1,pC=!0):th>0&&(q0=-1,pC=!0),r.radius!==void 0?d1=r.radius:d1=i,V0=th/2,aC=Math.min(jc.len/2,nl.len/2),a?(Xc=Math.abs(Math.cos(V0)*d1/Math.sin(V0)),Xc>aC?(Xc=aC,Y0=Math.abs(Xc*Math.sin(V0)/Math.cos(V0))):Y0=d1):(Xc=Math.min(aC,d1),Y0=Math.abs(Xc*Math.sin(V0)/Math.cos(V0))),ZB=r.x+nl.nx*Xc,JB=r.y+nl.ny*Xc,KB=ZB-nl.ny*Y0*q0,QB=JB+nl.nx*Y0*q0,K1t=r.x+jc.nx*Xc,Q1t=r.y+jc.ny*Xc,Tgt=r},"calcCornerArc");o(Z1t,"drawPreparedRoundCorner");o(CF,"getRoundCorner");Ya={};Ya.findMidptPtsEtc=function(e,t){var r=t.posPts,n=t.intersectionPts,i=t.vectorNormInverse,a,s=e.pstyle("source-endpoint"),l=e.pstyle("target-endpoint"),u=s.units!=null&&l.units!=null,h=o(function(T,E,_,A){var L=A-E,M=_-T,N=Math.sqrt(M*M+L*L);return{x:-L/N,y:M/N}},"recalcVectorNormInverse"),f=e.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(e.source()[0],s),p=ql(d,2),m=p[0],g=p[1],y=this.manualEndptToPx(e.target()[0],l),v=ql(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(e.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}};Ya.findHaystackPoints=function(e){for(var t=0;t0?Math.max(kt-Ct,0):Math.min(kt+Ct,0)},"subDWH"),I=k(M,A),C=k(N,L),O=!1;b===h?x=Math.abs(I)>Math.abs(C)?i:n:b===u||b===l?(x=n,O=!0):(b===a||b===s)&&(x=i,O=!0);var D=x===n,P=D?C:I,F=D?N:M,B=r1t(F),G=!1;!(O&&(S||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(S){var W=T<0?1+T:T;z=W*P}else{var Q=T<0?P:0;z=Q+T*B}var j=o(function(kt){return Math.abs(kt)<_||Math.abs(kt)>=Math.abs(P)},"getIsTooClose"),at=j(z),X=j(Math.abs(P)-Math.abs(z)),J=at||X;if(J&&!G)if(D){var Z=Math.abs(F)<=p/2,H=Math.abs(M)<=m/2;if(Z){var q=(f.x1+f.x2)/2,K=f.y1,ot=f.y2;r.segpts=[q,K,q,ot]}else if(H){var ct=(f.y1+f.y2)/2,ut=f.x1,et=f.x2;r.segpts=[ut,ct,et,ct]}else r.segpts=[f.x1,f.y2]}else{var Mt=Math.abs(F)<=d/2,it=Math.abs(N)<=g/2;if(Mt){var wt=(f.y1+f.y2)/2,Ot=f.x1,St=f.x2;r.segpts=[Ot,wt,St,wt]}else if(it){var Vt=(f.x1+f.x2)/2,Pt=f.y1,_t=f.y2;r.segpts=[Vt,Pt,Vt,_t]}else r.segpts=[f.x2,f.y1]}else if(D){var dt=f.y1+z+(v?p/2*B:0),Y=f.x1,ft=f.x2;r.segpts=[Y,dt,ft,dt]}else{var mt=f.x1+z+(v?d/2*B:0),rt=f.y1,ht=f.y2;r.segpts=[mt,rt,mt,ht]}if(r.isRound){var nt=e.pstyle("taxi-radius").value,st=e.pstyle("radius-type").value[0]==="arc-radius";r.radii=new Array(r.segpts.length/2).fill(nt),r.isArcRadius=new Array(r.segpts.length/2).fill(st)}};Ya.tryToCorrectInvalidPoints=function(e,t){var r=e._private.rscratch;if(r.edgeType==="bezier"){var n=t.srcPos,i=t.tgtPos,a=t.srcW,s=t.srcH,l=t.tgtW,u=t.tgtH,h=t.srcShape,f=t.tgtShape,d=t.srcCornerRadius,p=t.tgtCornerRadius,m=t.srcRs,g=t.tgtRs,y=!be(r.startX)||!be(r.startY),v=!be(r.arrowStartX)||!be(r.arrowStartY),x=!be(r.endX)||!be(r.endY),b=!be(r.arrowEndX)||!be(r.arrowEndY),w=3,S=this.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.arrowShapeWidth,T=w*S,E=Q0({x:r.ctrlpts[0],y:r.ctrlpts[1]},{x:r.startX,y:r.startY}),_=EC.poolIndex()){var O=I;I=C,C=O}var D=L.srcPos=I.position(),P=L.tgtPos=C.position(),F=L.srcW=I.outerWidth(),B=L.srcH=I.outerHeight(),G=L.tgtW=C.outerWidth(),z=L.tgtH=C.outerHeight(),W=L.srcShape=r.nodeShapes[t.getNodeShape(I)],Q=L.tgtShape=r.nodeShapes[t.getNodeShape(C)],j=L.srcCornerRadius=I.pstyle("corner-radius").value==="auto"?"auto":I.pstyle("corner-radius").pfValue,at=L.tgtCornerRadius=C.pstyle("corner-radius").value==="auto"?"auto":C.pstyle("corner-radius").pfValue,X=L.tgtRs=C._private.rscratch,J=L.srcRs=I._private.rscratch;L.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var Z=0;Z0){var ot=a,ct=H0(ot,m1(r)),ut=H0(ot,m1(K)),et=ct;if(ut2){var Mt=H0(ot,{x:K[2],y:K[3]});Mt0){var ht=s,nt=H0(ht,m1(r)),st=H0(ht,m1(rt)),Tt=nt;if(st2){var kt=H0(ht,{x:rt[2],y:rt[3]});kt=g||_){v={cp:S,segment:E};break}}if(v)break}var A=v.cp,L=v.segment,M=(g-x)/L.length,N=L.t1-L.t0,k=m?L.t0+N*M:L.t1-N*M;k=yb(0,k,1),t=y1(A.p0,A.p1,A.p2,k),p=see(A.p0,A.p1,A.p2,k);break}case"straight":case"segments":case"haystack":{for(var I=0,C,O,D,P,F=n.allpts.length,B=0;B+3=g));B+=2);var G=g-O,z=G/C;z=yb(0,z,1),t=hKt(D,P,z),p=eyt(D,P);break}}s("labelX",d,t.x),s("labelY",d,t.y),s("labelAutoAngle",d,p)}},"calculateEndProjection");h("source"),h("target"),this.applyLabelDimensions(e)}};Jc.applyLabelDimensions=function(e){this.applyPrefixedLabelDimensions(e),e.isEdge()&&(this.applyPrefixedLabelDimensions(e,"source"),this.applyPrefixedLabelDimensions(e,"target"))};Jc.applyPrefixedLabelDimensions=function(e,t){var r=e._private,n=this.getLabelText(e,t),i=this.calculateLabelDimensions(e,n),a=e.pstyle("line-height").pfValue,s=e.pstyle("text-wrap").strValue,l=jl(r.rscratch,"labelWrapCachedLines",t)||[],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;Af(r.rstyle,"labelWidth",t,d),Af(r.rscratch,"labelWidth",t,d),Af(r.rstyle,"labelHeight",t,p),Af(r.rscratch,"labelHeight",t,p),Af(r.rscratch,"labelLineHeight",t,f)};Jc.getLabelText=function(e,t){var r=e._private,n=t?t+"-":"",i=e.pstyle(n+"label").strValue,a=e.pstyle("text-transform").value,s=o(function(Q,j){return j?(Af(r.rscratch,Q,t,j),j):jl(r.rscratch,Q,t)},"rscratch");if(!i)return"";a=="none"||(a=="uppercase"?i=i.toUpperCase():a=="lowercase"&&(i=i.toLowerCase()));var l=e.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=e.pstyle("text-max-width").pfValue,p=e.pstyle("text-overflow-wrap").value,m=p==="anywhere",g=[],y=/[\s\u200b]+|$/g,v=0;vd){var T=x.matchAll(y),E="",_=0,A=Bgt(T),L;try{for(A.s();!(L=A.n()).done;){var M=L.value,N=M[0],k=x.substring(_,M.index);_=M.index+N.length;var I=E.length===0?k:E+k+N,C=this.calculateLabelDimensions(e,I),O=C.width;O<=d?E+=k+N:(E&&g.push(E),E=k+N)}}catch(W){A.e(W)}finally{A.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 D=e.pstyle("text-max-width").pfValue,P="",F="\u2026",B=!1;if(this.calculateLabelDimensions(e,i).widthD)break;P+=i[G],G===i.length-1&&(B=!0)}return B||(P+=F),P}return i};Jc.getLabelJustification=function(e){var t=e.pstyle("text-justification").strValue,r=e.pstyle("text-halign").strValue;if(t==="auto")if(e.isNode())switch(r){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return t};Jc.calculateLabelDimensions=function(e,t){var r=this,n=r.cy.window(),i=n.document,a=K0(t,e._private.labelDimsKey),s=r.labelDimCache||(r.labelDimCache=[]),l=s[a];if(l!=null)return l;var u=0,h=e.pstyle("font-style").strValue,f=e.pstyle("font-size").pfValue,d=e.pstyle("font-family").strValue,p=e.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=t.split(` +`),w=0;w1&&arguments[1]!==void 0?arguments[1]:!0;if(t.merge(s),l)for(var u=0;u=e.desktopTapThreshold2}var me=i(Y);zt&&(e.hoverData.tapholdCancelled=!0);var Ht=o(function(){var qe=e.hoverData.dragDelta=e.hoverData.dragDelta||[];qe.length===0?(qe.push(yt[0]),qe.push(yt[1])):(qe[0]+=yt[0],qe[1]+=yt[1])},"updateDragDelta");mt=!0,n(At,["mousemove","vmousemove","tapdrag"],Y,{x:st[0],y:st[1]});var ne=o(function(){e.data.bgActivePosistion=void 0,e.hoverData.selecting||rt.emit({originalEvent:Y,type:"boxstart",position:{x:st[0],y:st[1]}}),Ct[4]=1,e.hoverData.selecting=!0,e.redrawHint("select",!0),e.redraw()},"goIntoBoxMode");if(e.hoverData.which===3){if(zt){var xe={originalEvent:Y,type:"cxtdrag",position:{x:st[0],y:st[1]}};Nt?Nt.emit(xe):rt.emit(xe),e.hoverData.cxtDragged=!0,(!e.hoverData.cxtOver||At!==e.hoverData.cxtOver)&&(e.hoverData.cxtOver&&e.hoverData.cxtOver.emit({originalEvent:Y,type:"cxtdragout",position:{x:st[0],y:st[1]}}),e.hoverData.cxtOver=At,At&&At.emit({originalEvent:Y,type:"cxtdragover",position:{x:st[0],y:st[1]}}))}}else if(e.hoverData.dragging){if(mt=!0,rt.panningEnabled()&&rt.userPanningEnabled()){var Se;if(e.hoverData.justStartedPan){var Ye=e.hoverData.mdownPos;Se={x:(st[0]-Ye[0])*ht,y:(st[1]-Ye[1])*ht},e.hoverData.justStartedPan=!1}else Se={x:yt[0]*ht,y:yt[1]*ht};rt.panBy(Se),rt.emit("dragpan"),e.hoverData.dragged=!0}st=e.projectIntoViewport(Y.clientX,Y.clientY)}else if(Ct[4]==1&&(Nt==null||Nt.pannable())){if(zt){if(!e.hoverData.dragging&&rt.boxSelectionEnabled()&&(me||!rt.panningEnabled()||!rt.userPanningEnabled()))ne();else if(!e.hoverData.selecting&&rt.panningEnabled()&&rt.userPanningEnabled()){var fe=a(Nt,e.hoverData.downs);fe&&(e.hoverData.dragging=!0,e.hoverData.justStartedPan=!0,Ct[4]=0,e.data.bgActivePosistion=m1(Tt),e.redrawHint("select",!0),e.redraw())}Nt&&Nt.pannable()&&Nt.active()&&Nt.unactivate()}}else{if(Nt&&Nt.pannable()&&Nt.active()&&Nt.unactivate(),(!Nt||!Nt.grabbed())&&At!=$t&&($t&&n($t,["mouseout","tapdragout"],Y,{x:st[0],y:st[1]}),At&&n(At,["mouseover","tapdragover"],Y,{x:st[0],y:st[1]}),e.hoverData.last=At),Nt)if(zt){if(rt.boxSelectionEnabled()&&me)Nt&&Nt.grabbed()&&(v(Ut),Nt.emit("freeon"),Ut.emit("free"),e.dragData.didDrag&&(Nt.emit("dragfreeon"),Ut.emit("dragfree"))),ne();else if(Nt&&Nt.grabbed()&&e.nodeIsDraggable(Nt)){var ee=!e.dragData.didDrag;ee&&e.redrawHint("eles",!0),e.dragData.didDrag=!0,e.hoverData.draggingEles||g(Ut,{inDragLayer:!0});var pe={x:0,y:0};if(be(yt[0])&&be(yt[1])&&(pe.x+=yt[0],pe.y+=yt[1],ee)){var Me=e.hoverData.dragDelta;Me&&be(Me[0])&&be(Me[1])&&(pe.x+=Me[0],pe.y+=Me[1])}e.hoverData.draggingEles=!0,Ut.silentShift(pe).emit("position drag"),e.redrawHint("drag",!0),e.redraw()}}else Ht();mt=!0}if(Ct[2]=st[0],Ct[3]=st[1],mt)return Y.stopPropagation&&Y.stopPropagation(),Y.preventDefault&&Y.preventDefault(),!1}},"mousemoveHandler"),!1);var M,N,k;e.registerBinding(t,"mouseup",o(function(Y){if(!(e.hoverData.which===1&&Y.which!==1&&e.hoverData.capture)){var ft=e.hoverData.capture;if(ft){e.hoverData.capture=!1;var mt=e.cy,rt=e.projectIntoViewport(Y.clientX,Y.clientY),ht=e.selection,nt=e.findNearestElement(rt[0],rt[1],!0,!1),st=e.dragData.possibleDragElements,Tt=e.hoverData.down,kt=i(Y);if(e.data.bgActivePosistion&&(e.redrawHint("select",!0),e.redraw()),e.hoverData.tapholdCancelled=!0,e.data.bgActivePosistion=void 0,Tt&&Tt.unactivate(),e.hoverData.which===3){var Ct={originalEvent:Y,type:"cxttapend",position:{x:rt[0],y:rt[1]}};if(Tt?Tt.emit(Ct):mt.emit(Ct),!e.hoverData.cxtDragged){var At={originalEvent:Y,type:"cxttap",position:{x:rt[0],y:rt[1]}};Tt?Tt.emit(At):mt.emit(At)}e.hoverData.cxtDragged=!1,e.hoverData.which=null}else if(e.hoverData.which===1){if(n(nt,["mouseup","tapend","vmouseup"],Y,{x:rt[0],y:rt[1]}),!e.dragData.didDrag&&!e.hoverData.dragged&&!e.hoverData.selecting&&!e.hoverData.isOverThresholdDrag&&(n(Tt,["click","tap","vclick"],Y,{x:rt[0],y:rt[1]}),N=!1,Y.timeStamp-k<=mt.multiClickDebounceTime()?(M&&clearTimeout(M),N=!0,k=null,n(Tt,["dblclick","dbltap","vdblclick"],Y,{x:rt[0],y:rt[1]})):(M=setTimeout(function(){N||n(Tt,["oneclick","onetap","voneclick"],Y,{x:rt[0],y:rt[1]})},mt.multiClickDebounceTime()),k=Y.timeStamp)),Tt==null&&!e.dragData.didDrag&&!e.hoverData.selecting&&!e.hoverData.dragged&&!i(Y)&&(mt.$(r).unselect(["tapunselect"]),st.length>0&&e.redrawHint("eles",!0),e.dragData.possibleDragElements=st=mt.collection()),nt==Tt&&!e.dragData.didDrag&&!e.hoverData.selecting&&nt!=null&&nt._private.selectable&&(e.hoverData.dragging||(mt.selectionType()==="additive"||kt?nt.selected()?nt.unselect(["tapunselect"]):nt.select(["tapselect"]):kt||(mt.$(r).unmerge(nt).unselect(["tapunselect"]),nt.select(["tapselect"]))),e.redrawHint("eles",!0)),e.hoverData.selecting){var $t=mt.collection(e.getAllInBox(ht[0],ht[1],ht[2],ht[3]));e.redrawHint("select",!0),$t.length>0&&e.redrawHint("eles",!0),mt.emit({type:"boxend",originalEvent:Y,position:{x:rt[0],y:rt[1]}});var Nt=o(function(zt){return zt.selectable()&&!zt.selected()},"eleWouldBeSelected");mt.selectionType()==="additive"||kt||mt.$(r).unmerge($t).unselect(),$t.emit("box").stdFilter(Nt).select().emit("boxselect"),e.redraw()}if(e.hoverData.dragging&&(e.hoverData.dragging=!1,e.redrawHint("select",!0),e.redrawHint("eles",!0),e.redraw()),!ht[4]){e.redrawHint("drag",!0),e.redrawHint("eles",!0);var yt=Tt&&Tt.grabbed();v(st),yt&&(Tt.emit("freeon"),st.emit("free"),e.dragData.didDrag&&(Tt.emit("dragfreeon"),st.emit("dragfree")))}}ht[4]=0,e.hoverData.down=null,e.hoverData.cxtStarted=!1,e.hoverData.draggingEles=!1,e.hoverData.selecting=!1,e.hoverData.isOverThresholdDrag=!1,e.dragData.didDrag=!1,e.hoverData.dragged=!1,e.hoverData.dragDelta=[],e.hoverData.mdownPos=null,e.hoverData.mdownGPos=null}}},"mouseupHandler"),!1);var I=o(function(Y){if(!e.scrollingPage){var ft=e.cy,mt=ft.zoom(),rt=ft.pan(),ht=e.projectIntoViewport(Y.clientX,Y.clientY),nt=[ht[0]*mt+rt.x,ht[1]*mt+rt.y];if(e.hoverData.draggingEles||e.hoverData.dragging||e.hoverData.cxtStarted||A()){Y.preventDefault();return}if(ft.panningEnabled()&&ft.userPanningEnabled()&&ft.zoomingEnabled()&&ft.userZoomingEnabled()){Y.preventDefault(),e.data.wheelZooming=!0,clearTimeout(e.data.wheelTimeout),e.data.wheelTimeout=setTimeout(function(){e.data.wheelZooming=!1,e.redrawHint("eles",!0),e.redraw()},150);var st;Y.deltaY!=null?st=Y.deltaY/-250:Y.wheelDeltaY!=null?st=Y.wheelDeltaY/1e3:st=Y.wheelDelta/1e3,st=st*e.wheelSensitivity;var Tt=Y.deltaMode===1;Tt&&(st*=33);var kt=ft.zoom()*Math.pow(10,st);Y.type==="gesturechange"&&(kt=e.gestureStartZoom*Y.scale),ft.zoom({level:kt,renderedPosition:{x:nt[0],y:nt[1]}}),ft.emit(Y.type==="gesturechange"?"pinchzoom":"scrollzoom")}}},"wheelHandler");e.registerBinding(e.container,"wheel",I,!0),e.registerBinding(t,"scroll",o(function(Y){e.scrollingPage=!0,clearTimeout(e.scrollingPageTimeout),e.scrollingPageTimeout=setTimeout(function(){e.scrollingPage=!1},250)},"scrollHandler"),!0),e.registerBinding(e.container,"gesturestart",o(function(Y){e.gestureStartZoom=e.cy.zoom(),e.hasTouchStarted||Y.preventDefault()},"gestureStartHandler"),!0),e.registerBinding(e.container,"gesturechange",function(dt){e.hasTouchStarted||I(dt)},!0),e.registerBinding(e.container,"mouseout",o(function(Y){var ft=e.projectIntoViewport(Y.clientX,Y.clientY);e.cy.emit({originalEvent:Y,type:"mouseout",position:{x:ft[0],y:ft[1]}})},"mouseOutHandler"),!1),e.registerBinding(e.container,"mouseover",o(function(Y){var ft=e.projectIntoViewport(Y.clientX,Y.clientY);e.cy.emit({originalEvent:Y,type:"mouseover",position:{x:ft[0],y:ft[1]}})},"mouseOverHandler"),!1);var C,O,D,P,F,B,G,z,W,Q,j,at,X,J=o(function(Y,ft,mt,rt){return Math.sqrt((mt-Y)*(mt-Y)+(rt-ft)*(rt-ft))},"distance"),Z=o(function(Y,ft,mt,rt){return(mt-Y)*(mt-Y)+(rt-ft)*(rt-ft)},"distanceSq"),H;e.registerBinding(e.container,"touchstart",H=o(function(Y){if(e.hasTouchStarted=!0,!!L(Y)){b(),e.touchData.capture=!0,e.data.bgActivePosistion=void 0;var ft=e.cy,mt=e.touchData.now,rt=e.touchData.earlier;if(Y.touches[0]){var ht=e.projectIntoViewport(Y.touches[0].clientX,Y.touches[0].clientY);mt[0]=ht[0],mt[1]=ht[1]}if(Y.touches[1]){var ht=e.projectIntoViewport(Y.touches[1].clientX,Y.touches[1].clientY);mt[2]=ht[0],mt[3]=ht[1]}if(Y.touches[2]){var ht=e.projectIntoViewport(Y.touches[2].clientX,Y.touches[2].clientY);mt[4]=ht[0],mt[5]=ht[1]}if(Y.touches[1]){e.touchData.singleTouchMoved=!0,v(e.dragData.touchDragEles);var nt=e.findContainerClientCoords();W=nt[0],Q=nt[1],j=nt[2],at=nt[3],C=Y.touches[0].clientX-W,O=Y.touches[0].clientY-Q,D=Y.touches[1].clientX-W,P=Y.touches[1].clientY-Q,X=0<=C&&C<=j&&0<=D&&D<=j&&0<=O&&O<=at&&0<=P&&P<=at;var st=ft.pan(),Tt=ft.zoom();F=J(C,O,D,P),B=Z(C,O,D,P),G=[(C+D)/2,(O+P)/2],z=[(G[0]-st.x)/Tt,(G[1]-st.y)/Tt];var kt=200,Ct=kt*kt;if(B=1){for(var ke=e.touchData.startPosition=[null,null,null,null,null,null],Ee=0;Ee=e.touchTapThreshold2}if(ft&&e.touchData.cxt){Y.preventDefault();var ke=Y.touches[0].clientX-W,Ee=Y.touches[0].clientY-Q,le=Y.touches[1].clientX-W,Zt=Y.touches[1].clientY-Q,me=Z(ke,Ee,le,Zt),Ht=me/B,ne=150,xe=ne*ne,Se=1.5,Ye=Se*Se;if(Ht>=Ye||me>=xe){e.touchData.cxt=!1,e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var fe={originalEvent:Y,type:"cxttapend",position:{x:ht[0],y:ht[1]}};e.touchData.start?(e.touchData.start.unactivate().emit(fe),e.touchData.start=null):rt.emit(fe)}}if(ft&&e.touchData.cxt){var fe={originalEvent:Y,type:"cxtdrag",position:{x:ht[0],y:ht[1]}};e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.touchData.start?e.touchData.start.emit(fe):rt.emit(fe),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxtDragged=!0;var ee=e.findNearestElement(ht[0],ht[1],!0,!0);(!e.touchData.cxtOver||ee!==e.touchData.cxtOver)&&(e.touchData.cxtOver&&e.touchData.cxtOver.emit({originalEvent:Y,type:"cxtdragout",position:{x:ht[0],y:ht[1]}}),e.touchData.cxtOver=ee,ee&&ee.emit({originalEvent:Y,type:"cxtdragover",position:{x:ht[0],y:ht[1]}}))}else if(ft&&Y.touches[2]&&rt.boxSelectionEnabled())Y.preventDefault(),e.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,e.touchData.selecting||rt.emit({originalEvent:Y,type:"boxstart",position:{x:ht[0],y:ht[1]}}),e.touchData.selecting=!0,e.touchData.didSelect=!0,mt[4]=1,!mt||mt.length===0||mt[0]===void 0?(mt[0]=(ht[0]+ht[2]+ht[4])/3,mt[1]=(ht[1]+ht[3]+ht[5])/3,mt[2]=(ht[0]+ht[2]+ht[4])/3+1,mt[3]=(ht[1]+ht[3]+ht[5])/3+1):(mt[2]=(ht[0]+ht[2]+ht[4])/3,mt[3]=(ht[1]+ht[3]+ht[5])/3),e.redrawHint("select",!0),e.redraw();else if(ft&&Y.touches[1]&&!e.touchData.didSelect&&rt.zoomingEnabled()&&rt.panningEnabled()&&rt.userZoomingEnabled()&&rt.userPanningEnabled()){Y.preventDefault(),e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var pe=e.dragData.touchDragEles;if(pe){e.redrawHint("drag",!0);for(var Me=0;Me0&&!e.hoverData.draggingEles&&!e.swipePanning&&e.data.bgActivePosistion!=null&&(e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.redraw())}},"touchmoveHandler"),!1);var K;e.registerBinding(t,"touchcancel",K=o(function(Y){var ft=e.touchData.start;e.touchData.capture=!1,ft&&ft.unactivate()},"touchcancelHandler"));var ot,ct,ut,et;if(e.registerBinding(t,"touchend",ot=o(function(Y){var ft=e.touchData.start,mt=e.touchData.capture;if(mt)Y.touches.length===0&&(e.touchData.capture=!1),Y.preventDefault();else return;var rt=e.selection;e.swipePanning=!1,e.hoverData.draggingEles=!1;var ht=e.cy,nt=ht.zoom(),st=e.touchData.now,Tt=e.touchData.earlier;if(Y.touches[0]){var kt=e.projectIntoViewport(Y.touches[0].clientX,Y.touches[0].clientY);st[0]=kt[0],st[1]=kt[1]}if(Y.touches[1]){var kt=e.projectIntoViewport(Y.touches[1].clientX,Y.touches[1].clientY);st[2]=kt[0],st[3]=kt[1]}if(Y.touches[2]){var kt=e.projectIntoViewport(Y.touches[2].clientX,Y.touches[2].clientY);st[4]=kt[0],st[5]=kt[1]}ft&&ft.unactivate();var Ct;if(e.touchData.cxt){if(Ct={originalEvent:Y,type:"cxttapend",position:{x:st[0],y:st[1]}},ft?ft.emit(Ct):ht.emit(Ct),!e.touchData.cxtDragged){var At={originalEvent:Y,type:"cxttap",position:{x:st[0],y:st[1]}};ft?ft.emit(At):ht.emit(At)}e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!1,e.touchData.start=null,e.redraw();return}if(!Y.touches[2]&&ht.boxSelectionEnabled()&&e.touchData.selecting){e.touchData.selecting=!1;var $t=ht.collection(e.getAllInBox(rt[0],rt[1],rt[2],rt[3]));rt[0]=void 0,rt[1]=void 0,rt[2]=void 0,rt[3]=void 0,rt[4]=0,e.redrawHint("select",!0),ht.emit({type:"boxend",originalEvent:Y,position:{x:st[0],y:st[1]}});var Nt=o(function(xe){return xe.selectable()&&!xe.selected()},"eleWouldBeSelected");$t.emit("box").stdFilter(Nt).select().emit("boxselect"),$t.nonempty()&&e.redrawHint("eles",!0),e.redraw()}if(ft?.unactivate(),Y.touches[2])e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);else if(!Y.touches[1]){if(!Y.touches[0]){if(!Y.touches[0]){e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var yt=e.dragData.touchDragEles;if(ft!=null){var Ut=ft._private.grabbed;v(yt),e.redrawHint("drag",!0),e.redrawHint("eles",!0),Ut&&(ft.emit("freeon"),yt.emit("free"),e.dragData.didDrag&&(ft.emit("dragfreeon"),yt.emit("dragfree"))),n(ft,["touchend","tapend","vmouseup","tapdragout"],Y,{x:st[0],y:st[1]}),ft.unactivate(),e.touchData.start=null}else{var zt=e.findNearestElement(st[0],st[1],!0,!0);n(zt,["touchend","tapend","vmouseup","tapdragout"],Y,{x:st[0],y:st[1]})}var ae=e.touchData.startPosition[0]-st[0],ke=ae*ae,Ee=e.touchData.startPosition[1]-st[1],le=Ee*Ee,Zt=ke+le,me=Zt*nt*nt;e.touchData.singleTouchMoved||(ft||ht.$(":selected").unselect(["tapunselect"]),n(ft,["tap","vclick"],Y,{x:st[0],y:st[1]}),ct=!1,Y.timeStamp-et<=ht.multiClickDebounceTime()?(ut&&clearTimeout(ut),ct=!0,et=null,n(ft,["dbltap","vdblclick"],Y,{x:st[0],y:st[1]})):(ut=setTimeout(function(){ct||n(ft,["onetap","voneclick"],Y,{x:st[0],y:st[1]})},ht.multiClickDebounceTime()),et=Y.timeStamp)),ft!=null&&!e.dragData.didDrag&&ft._private.selectable&&me"u"){var Mt=[],it=o(function(Y){return{clientX:Y.clientX,clientY:Y.clientY,force:1,identifier:Y.pointerId,pageX:Y.pageX,pageY:Y.pageY,radiusX:Y.width/2,radiusY:Y.height/2,screenX:Y.screenX,screenY:Y.screenY,target:Y.target}},"makeTouch"),wt=o(function(Y){return{event:Y,touch:it(Y)}},"makePointer"),Ot=o(function(Y){Mt.push(wt(Y))},"addPointer"),St=o(function(Y){for(var ft=0;ft0)return W[0]}return null},"getCurveT"),g=Object.keys(p),y=0;y0?m:a1t(a,s,t,r,n,i,l,u)},"intersectLine"),checkPoint:o(function(t,r,n,i,a,s,l,u){u=u==="auto"?Z0(i,a):u;var h=2*u;if(rh(t,r,this.points,s,l,i,a-h,[0,-1],n)||rh(t,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!!(Ws(t,r,p)||X0(t,r,h,h,s+i/2-u,l+a/2-u,n)||X0(t,r,h,h,s-i/2+u,l+a/2-u,n))},"checkPoint")}};ih.registerNodeShapes=function(){var e=this.nodeShapes={},t=this;this.generateEllipse(),this.generatePolygon("triangle",fs(3,0)),this.generateRoundPolygon("round-triangle",fs(3,0)),this.generatePolygon("rectangle",fs(4,0)),e.square=e.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",fs(5,0)),this.generateRoundPolygon("round-pentagon",fs(5,0)),this.generatePolygon("hexagon",fs(6,0)),this.generateRoundPolygon("round-hexagon",fs(6,0)),this.generatePolygon("heptagon",fs(7,0)),this.generateRoundPolygon("round-heptagon",fs(7,0)),this.generatePolygon("octagon",fs(8,0)),this.generateRoundPolygon("round-octagon",fs(8,0));var n=new Array(20);{var i=VB(5,0),a=VB(5,Math.PI/5),s=.5*(3-Math.sqrt(5));s*=1.57;for(var l=0;l=t.deqFastCost*S)break}else if(h){if(b>=t.deqCost*m||b>=t.deqAvgCost*p)break}else if(w>=t.deqNoDrawCost*zB)break;var T=t.deq(n,v,y);if(T.length>0)for(var E=0;E0&&(t.onDeqd(n,g),!h&&t.shouldRedraw(n,g,v,y)&&a())},"dequeue"),l=t.priority||cF;i.beforeRender(s,l(n))}},"setupDequeueingImpl")},"setupDequeueing")},lee=function(){function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:vC;iF(this,e),this.idsByKey=new Qc,this.keyForId=new Qc,this.cachesByLvl=new Qc,this.lvls=[],this.getKey=t,this.doesEleInvalidateKey=r}return o(e,"ElementTextureCacheLookup"),aF(e,[{key:"getIdsFor",value:o(function(r){r==null&&fi("Can not get id list for null key");var n=this.idsByKey,i=this.idsByKey.get(r);return i||(i=new C1,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 Qc,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")}]),e}(),Agt=25,sC=50,mC=-4,tF=3,cee=7.99,uee=8,hee=1024,fee=1024,dee=1024,pee=.2,mee=.8,gee=10,yee=.15,vee=.1,xee=.9,bee=.9,wee=100,Tee=1,g1={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},kee=Da({getKey:null,doesEleInvalidateKey:vC,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:Qgt,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),ub=o(function(t,r){var n=this;n.renderer=t,n.onDequeues=[];var i=kee(r);ir(n,i),n.lookup=new lee(i.getKey,i.doesEleInvalidateKey),n.setupDequeueing()},"ElementTextureCache"),Ki=ub.prototype;Ki.reasons=g1;Ki.getTextureQueue=function(e){var t=this;return t.eleImgCaches=t.eleImgCaches||{},t.eleImgCaches[e]=t.eleImgCaches[e]||[]};Ki.getRetiredTextureQueue=function(e){var t=this,r=t.eleImgCaches.retired=t.eleImgCaches.retired||{},n=r[e]=r[e]||[];return n};Ki.getElementQueue=function(){var e=this,t=e.eleCacheQueue=e.eleCacheQueue||new Ab(function(r,n){return n.reqs-r.reqs});return t};Ki.getElementKeyToQueue=function(){var e=this,t=e.eleKeyToCacheQueue=e.eleKeyToCacheQueue||{};return t};Ki.getElement=function(e,t,r,n,i){var a=this,s=this.renderer,l=s.cy.zoom(),u=this.lookup;if(!t||t.w===0||t.h===0||isNaN(t.w)||isNaN(t.h)||!e.visible()||e.removed()||!a.allowEdgeTxrCaching&&e.isEdge()||!a.allowParentTxrCaching&&e.isParent())return null;if(n==null&&(n=Math.ceil(hF(l*r))),n=cee||n>tF)return null;var h=Math.pow(2,n),f=t.h*h,d=t.w*h,p=s.eleTextBiggerThanMin(e,h);if(!this.isVisible(e,p))return null;var m=u.get(e,n);if(m&&m.invalidated&&(m.invalidated=!1,m.texture.invalidatedWidth-=m.width),m)return m;var g;if(f<=Agt?g=Agt:f<=sC?g=sC:g=Math.ceil(f/sC)*sC,f>dee||d>fee)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;N--)L=a.getElement(e,t,r,N,g1.downscale);M()}else return a.queueElement(e,E.level-1),E;else{var k;if(!w&&!S&&!T)for(var I=n-1;I>=mC;I--){var C=u.get(e,I);if(C){k=C;break}}if(b(k))return a.queueElement(e,n),k;v.context.translate(v.usedWidth,0),v.context.scale(h,h),this.drawElement(v.context,e,t,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+uee),v.eleCaches.push(m),u.set(e,n,m),a.checkTextureFullness(v),m};Ki.invalidateElements=function(e){for(var t=0;t=pee*e.width&&this.retireTexture(e)};Ki.checkTextureFullness=function(e){var t=this,r=t.getTextureQueue(e.height);e.usedWidth/e.width>mee&&e.fullnessChecks>=gee?Nf(r,e):e.fullnessChecks++};Ki.retireTexture=function(e){var t=this,r=e.height,n=t.getTextureQueue(r),i=this.lookup;Nf(n,e),e.retired=!0;for(var a=e.eleCaches,s=0;s=t)return s.retired=!1,s.usedWidth=0,s.invalidatedWidth=0,s.fullnessChecks=0,uF(s.eleCaches),s.context.setTransform(1,0,0,1,0,0),s.context.clearRect(0,0,s.width,s.height),Nf(i,s),n.push(s),s}};Ki.queueElement=function(e,t){var r=this,n=r.getElementQueue(),i=r.getElementKeyToQueue(),a=this.getKey(e),s=i[a];if(s)s.level=Math.max(s.level,t),s.eles.merge(e),s.reqs++,n.updateItem(s);else{var l={eles:e.spawn().merge(e),level:t,reqs:1,key:a};n.push(l),i[a]=l}};Ki.dequeue=function(e){for(var t=this,r=t.getElementQueue(),n=t.getElementKeyToQueue(),i=[],a=t.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=t.getBoundingBox(h);t.getElement(h,d,e,l.level,g1.dequeue)}return i};Ki.removeFromQueue=function(e){var t=this,r=t.getElementQueue(),n=t.getElementKeyToQueue(),i=this.getKey(e),a=n[i];a!=null&&(a.eles.length===1?(a.reqs=lF,r.updateItem(a),r.pop(),n[i]=null):a.eles.unmerge(e))};Ki.onDequeue=function(e){this.onDequeues.push(e)};Ki.offDequeue=function(e){Nf(this.onDequeues,e)};Ki.setupDequeueing=syt.setupDequeueing({deqRedrawThreshold:wee,deqCost:yee,deqAvgCost:vee,deqNoDrawCost:xee,deqFastCost:bee,deq:o(function(t,r,n){return t.dequeue(r,n)},"deq"),onDeqd:o(function(t,r){for(var n=0;n=Cee||r>SC)return null}n.validateLayersElesOrdering(r,e);var u=n.layersByLevel,h=Math.pow(2,r),f=u[r]=u[r]||[],d,p=n.levelIsComplete(r,e),m,g=o(function(){var M=o(function(O){if(n.validateLayersElesOrdering(O,e),n.levelIsComplete(O,e))return m=u[O],!0},"canUseAsTmpLvl"),N=o(function(O){if(!m)for(var D=r+O;fb<=D&&D<=SC&&!M(D);D+=O);},"checkLvls");N(1),N(-1);for(var k=f.length-1;k>=0;k--){var I=f[k];I.invalid&&Nf(f,I)}},"checkTempLevels");if(!p)g();else return f;var y=o(function(){if(!d){d=Ys();for(var M=0;MMee)return null;var I=n.makeLayer(d,r);if(N!=null){var C=f.indexOf(N)+1;f.splice(C,0,I)}else(M.insert===void 0||M.insert)&&f.unshift(I);return I},"makeLayer");if(n.skipping&&!l)return null;for(var x=null,b=e.length/Eee,w=!l,S=0;S=b||!i1t(x.bb,T.boundingBox()))&&(x=v({insert:!0,after:x}),!x))return null;m||w?n.queueLayer(x,T):n.drawEleInLayer(x,T,r,t),x.eles.push(T),_[r]=x}return m||(w?null:f)};Ra.getEleLevelForLayerLevel=function(e,t){return e};Ra.drawEleInLayer=function(e,t,r,n){var i=this,a=this.renderer,s=e.context,l=t.boundingBox();l.w===0||l.h===0||!t.visible()||(r=i.getEleLevelForLayerLevel(r,n),a.setImgSmoothing(s,!1),a.drawCachedElement(s,t,null,null,r,Iee),a.setImgSmoothing(s,!0))};Ra.levelIsComplete=function(e,t){var r=this,n=r.layersByLevel[e];if(!n||n.length===0)return!1;for(var i=0,a=0;a0||s.invalid)return!1;i+=s.eles.length}return i===t.length};Ra.validateLayersElesOrdering=function(e,t){var r=this.layersByLevel[e];if(r)for(var n=0;n0){t=!0;break}}return t};Ra.invalidateElements=function(e){var t=this;e.length!==0&&(t.lastInvalidationTime=eh(),!(e.length===0||!t.haveLayers())&&t.updateElementsInLayers(e,o(function(n,i,a){t.invalidateLayer(n)},"invalAssocLayers")))};Ra.invalidateLayer=function(e){if(this.lastInvalidationTime=eh(),!e.invalid){var t=e.level,r=e.eles,n=this.layersByLevel[t];Nf(n,e),e.elesQueue=[],e.invalid=!0,e.replacement&&(e.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=t._private.rscratch;if(!(a&&!t.visible())&&!(l.badLine||l.allpts==null||isNaN(l.allpts[0]))){var u;r&&(u=r,e.translate(-u.x1,-u.y1));var h=a?t.pstyle("opacity").value:1,f=a?t.pstyle("line-opacity").value:1,d=t.pstyle("curve-style").value,p=t.pstyle("line-style").value,m=t.pstyle("width").pfValue,g=t.pstyle("line-cap").value,y=t.pstyle("line-outline-width").value,v=t.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(e,t,O),s.drawEdgeTrianglePath(t,e,l.allpts)):(e.lineWidth=m,e.lineCap=g,s.eleStrokeStyle(e,t,O),s.drawEdgePath(t,e,l.allpts,p),e.lineCap="butt")},"drawLine"),S=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x;if(e.lineWidth=m+y,e.lineCap=g,y>0)s.colorStrokeStyle(e,v[0],v[1],v[2],O);else{e.lineCap="butt";return}d==="straight-triangle"?s.drawEdgeTrianglePath(t,e,l.allpts):(s.drawEdgePath(t,e,l.allpts,p),e.lineCap="butt")},"drawLineOutline"),T=o(function(){i&&s.drawEdgeOverlay(e,t)},"drawOverlay"),E=o(function(){i&&s.drawEdgeUnderlay(e,t)},"drawUnderlay"),_=o(function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b;s.drawArrowheads(e,t,O)},"drawArrows"),A=o(function(){s.drawElementText(e,t,null,n)},"drawText");e.lineJoin="round";var L=t.pstyle("ghost").value==="yes";if(L){var M=t.pstyle("ghost-offset-x").pfValue,N=t.pstyle("ghost-offset-y").pfValue,k=t.pstyle("ghost-opacity").value,I=x*k;e.translate(M,N),w(I),_(I),e.translate(-M,-N)}else S();E(),w(),_(),T(),A(),r&&e.translate(u.x1,u.y1)}};cyt=o(function(t){if(!["overlay","underlay"].includes(t))throw new Error("Invalid state");return function(r,n){if(n.visible()){var i=n.pstyle("".concat(t,"-opacity")).value;if(i!==0){var a=this,s=a.usePaths(),l=n._private.rscratch,u=n.pstyle("".concat(t,"-padding")).pfValue,h=2*u,f=n.pstyle("".concat(t,"-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");ah.drawEdgeOverlay=cyt("overlay");ah.drawEdgeUnderlay=cyt("underlay");ah.drawEdgePath=function(e,t,r,n){var i=e._private.rscratch,a=t,s,l=!1,u=this.usePaths(),h=e.pstyle("line-dash-pattern").pfValue,f=e.pstyle("line-dash-offset").pfValue;if(u){var d=r.join("$"),p=i.pathCacheKey&&i.pathCacheKey===d;p?(s=t=i.pathCache,l=!0):(s=t=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(t.beginPath&&t.beginPath(),t.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(t))return}else if(n===!1)return;if(t.isNode()){var l=t.pstyle("label");if(!l||!l.value)return;var u=s.getLabelJustification(t);e.textAlign=u,e.textBaseline="bottom"}else{var h=t.element()._private.rscratch.badLine,f=t.pstyle("label"),d=t.pstyle("source-label"),p=t.pstyle("target-label");if(h||(!f||!f.value)&&(!d||!d.value)&&(!p||!p.value))return;e.textAlign="center",e.textBaseline="bottom"}var m=!r,g;r&&(g=r,e.translate(-g.x1,-g.y1)),i==null?(s.drawText(e,t,null,m,a),t.isEdge()&&(s.drawText(e,t,"source",m,a),s.drawText(e,t,"target",m,a))):s.drawText(e,t,i,m,a),r&&e.translate(g.x1,g.y1)};np.getFontCache=function(e){var t;this.fontCaches=this.fontCaches||[];for(var r=0;r2&&arguments[2]!==void 0?arguments[2]:!0,n=t.pstyle("font-style").strValue,i=t.pstyle("font-size").pfValue+"px",a=t.pstyle("font-family").strValue,s=t.pstyle("font-weight").strValue,l=r?t.effectiveOpacity()*t.pstyle("text-opacity").value:1,u=t.pstyle("text-outline-opacity").value*l,h=t.pstyle("color").value,f=t.pstyle("text-outline-color").value;e.font=n+" "+s+" "+i+" "+a,e.lineJoin="round",this.colorFillStyle(e,h[0],h[1],h[2],l),this.colorStrokeStyle(e,f[0],f[1],f[2],u)};o(GB,"roundRect");np.getTextAngle=function(e,t){var r,n=e._private,i=n.rscratch,a=t?t+"-":"",s=e.pstyle(a+"text-rotation"),l=jl(i,"labelAngle",t);return s.strValue==="autorotate"?r=e.isEdge()?l:0:s.strValue==="none"?r=0:r=s.pfValue,r};np.drawText=function(e,t,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=t._private,s=a.rscratch,l=i?t.effectiveOpacity():1;if(!(i&&(l===0||t.pstyle("text-opacity").value===0))){r==="main"&&(r=null);var u=jl(s,"labelX",r),h=jl(s,"labelY",r),f,d,p=this.getLabelText(t,r);if(p!=null&&p!==""&&!isNaN(u)&&!isNaN(h)){this.setupTextStyle(e,t,i);var m=r?r+"-":"",g=jl(s,"labelWidth",r),y=jl(s,"labelHeight",r),v=t.pstyle(m+"text-margin-x").pfValue,x=t.pstyle(m+"text-margin-y").pfValue,b=t.isEdge(),w=t.pstyle("text-halign").value,S=t.pstyle("text-valign").value;b&&(w="center",S="center"),u+=v,h+=x;var T;switch(n?T=this.getTextAngle(t,r):T=0,T!==0&&(f=u,d=h,e.translate(f,d),e.rotate(T),u=0,h=0),S){case"top":break;case"center":h+=y/2;break;case"bottom":h+=y;break}var E=t.pstyle("text-background-opacity").value,_=t.pstyle("text-border-opacity").value,A=t.pstyle("text-border-width").pfValue,L=t.pstyle("text-background-padding").pfValue,M=t.pstyle("text-background-shape").strValue,N=M.indexOf("round")===0,k=2;if(E>0||A>0&&_>0){var I=u-L;switch(w){case"left":I-=g;break;case"center":I-=g/2;break}var C=h-y-L,O=g+2*L,D=y+2*L;if(E>0){var P=e.fillStyle,F=t.pstyle("text-background-color").value;e.fillStyle="rgba("+F[0]+","+F[1]+","+F[2]+","+E*l+")",N?GB(e,I,C,O,D,k):e.fillRect(I,C,O,D),e.fillStyle=P}if(A>0&&_>0){var B=e.strokeStyle,G=e.lineWidth,z=t.pstyle("text-border-color").value,W=t.pstyle("text-border-style").value;if(e.strokeStyle="rgba("+z[0]+","+z[1]+","+z[2]+","+_*l+")",e.lineWidth=A,e.setLineDash)switch(W){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"double":e.lineWidth=A/4,e.setLineDash([]);break;case"solid":e.setLineDash([]);break}if(N?GB(e,I,C,O,D,k,"stroke"):e.strokeRect(I,C,O,D),W==="double"){var Q=A/2;N?GB(e,I+Q,C+Q,O-Q*2,D-Q*2,k,"stroke"):e.strokeRect(I+Q,C+Q,O-Q*2,D-Q*2)}e.setLineDash&&e.setLineDash([]),e.lineWidth=G,e.strokeStyle=B}}var j=2*t.pstyle("text-outline-width").pfValue;if(j>0&&(e.lineWidth=j),t.pstyle("text-wrap").value==="wrap"){var at=jl(s,"labelWrapCachedLines",r),X=jl(s,"labelLineHeight",r),J=g/2,Z=this.getLabelJustification(t);switch(Z==="auto"||(w==="left"?Z==="left"?u+=-g:Z==="center"&&(u+=-J):w==="center"?Z==="left"?u+=-J:Z==="right"&&(u+=J):w==="right"&&(Z==="center"?u+=J:Z==="right"&&(u+=g))),S){case"top":h-=(at.length-1)*X;break;case"center":case"bottom":h-=(at.length-1)*X;break}for(var H=0;H0&&e.strokeText(at[H],u,h),e.fillText(at[H],u,h),h+=X}else j>0&&e.strokeText(p,u,h),e.fillText(p,u,h);T!==0&&(e.rotate(-T),e.translate(-f,-d))}}};I1={};I1.drawNode=function(e,t,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=t._private,f=h.rscratch,d=t.position();if(!(!be(d.x)||!be(d.y))&&!(a&&!t.visible())){var p=a?t.effectiveOpacity():1,m=s.usePaths(),g,y=!1,v=t.padding();l=t.width()+2*v,u=t.height()+2*v;var x;r&&(x=r,e.translate(-x.x1,-x.y1));for(var b=t.pstyle("background-image"),w=b.value,S=new Array(w.length),T=new Array(w.length),E=0,_=0;_0&&arguments[0]!==void 0?arguments[0]:I;s.eleFillStyle(e,t,nt)},"setupShapeColor"),H=o(function(){var nt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:z;s.colorStrokeStyle(e,C[0],C[1],C[2],nt)},"setupBorderColor"),q=o(function(){var nt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:at;s.colorStrokeStyle(e,Q[0],Q[1],Q[2],nt)},"setupOutlineColor"),K=o(function(nt,st,Tt,kt){var Ct=s.nodePathCache=s.nodePathCache||[],At=Kgt(Tt==="polygon"?Tt+","+kt.join(","):Tt,""+st,""+nt,""+J),$t=Ct[At],Nt,yt=!1;return $t!=null?(Nt=$t,yt=!0,f.pathCache=Nt):(Nt=new Path2D,Ct[At]=f.pathCache=Nt),{path:Nt,cacheHit:yt}},"getPath"),ot=t.pstyle("shape").strValue,ct=t.pstyle("shape-polygon-points").pfValue;if(m){e.translate(d.x,d.y);var ut=K(l,u,ot,ct);g=ut.path,y=ut.cacheHit}var et=o(function(){if(!y){var nt=d;m&&(nt={x:0,y:0}),s.nodeShapes[s.getNodeShape(t)].draw(g||e,nt.x,nt.y,l,u,J,f)}m?e.fill(g):e.fill()},"drawShape"),Mt=o(function(){for(var nt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,st=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,Tt=h.backgrounding,kt=0,Ct=0;Ct0&&arguments[0]!==void 0?arguments[0]:!1,st=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p;s.hasPie(t)&&(s.drawPie(e,t,st),nt&&(m||s.nodeShapes[s.getNodeShape(t)].draw(e,d.x,d.y,l,u,J,f)))},"drawPie"),wt=o(function(){var nt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,st=(N>0?N:-N)*nt,Tt=N>0?0:255;N!==0&&(s.colorFillStyle(e,Tt,Tt,Tt,st),m?e.fill(g):e.fill())},"darken"),Ot=o(function(){if(k>0){if(e.lineWidth=k,e.lineCap=P,e.lineJoin=D,e.setLineDash)switch(O){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash(B),e.lineDashOffset=G;break;case"solid":case"double":e.setLineDash([]);break}if(F!=="center"){if(e.save(),e.lineWidth*=2,F==="inside")m?e.clip(g):e.clip();else{var nt=new Path2D;nt.rect(-l/2-k,-u/2-k,l+2*k,u+2*k),nt.addPath(g),e.clip(nt,"evenodd")}m?e.stroke(g):e.stroke(),e.restore()}else m?e.stroke(g):e.stroke();if(O==="double"){e.lineWidth=k/3;var st=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",m?e.stroke(g):e.stroke(),e.globalCompositeOperation=st}e.setLineDash&&e.setLineDash([])}},"drawBorder"),St=o(function(){if(W>0){if(e.lineWidth=W,e.lineCap="butt",e.setLineDash)switch(j){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"solid":case"double":e.setLineDash([]);break}var nt=d;m&&(nt={x:0,y:0});var st=s.getNodeShape(t),Tt=k;F==="inside"&&(Tt=0),F==="outside"&&(Tt*=2);var kt=(l+Tt+(W+X))/l,Ct=(u+Tt+(W+X))/u,At=l*kt,$t=u*Ct,Nt=s.nodeShapes[st].points,yt;if(m){var Ut=K(At,$t,st,Nt);yt=Ut.path}if(st==="ellipse")s.drawEllipsePath(yt||e,nt.x,nt.y,At,$t);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(st)){var zt=0,ae=0,ke=0;st==="round-diamond"?zt=(Tt+X+W)*1.4:st==="round-heptagon"?(zt=(Tt+X+W)*1.075,ke=-(Tt/2+X+W)/35):st==="round-hexagon"?zt=(Tt+X+W)*1.12:st==="round-pentagon"?(zt=(Tt+X+W)*1.13,ke=-(Tt/2+X+W)/15):st==="round-tag"?(zt=(Tt+X+W)*1.12,ae=(Tt/2+W+X)*.07):st==="round-triangle"&&(zt=(Tt+X+W)*(Math.PI/2),ke=-(Tt+X/2+W)/Math.PI),zt!==0&&(kt=(l+zt)/l,At=l*kt,["round-hexagon","round-tag"].includes(st)||(Ct=(u+zt)/u,$t=u*Ct)),J=J==="auto"?o1t(At,$t):J;for(var Ee=At/2,le=$t/2,Zt=J+(Tt+W+X)/2,me=new Array(Nt.length/2),Ht=new Array(Nt.length/2),ne=0;ne0){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=uyt("overlay");I1.drawNodeUnderlay=uyt("underlay");I1.hasPie=function(e){return e=e[0],e._private.hasPie};I1.drawPie=function(e,t,r,n){t=t[0],n=n||t.position();var i=t.cy().style(),a=t.pstyle("pie-size"),s=n.x,l=n.y,u=t.width(),h=t.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=t.pstyle("pie-"+m+"-background-size").value,y=t.pstyle("pie-"+m+"-background-color").value,v=t.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,S=b+w;g===0||d>=1||d+x>1||(e.beginPath(),e.moveTo(s,l),e.arc(s,l,f,b,S),e.closePath(),this.colorFillStyle(e,y[0],y[1],y[2],v),e.fill(),d+=x)}};To={},Wee=100;To.getPixelRatio=function(){var e=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var t=this.cy.window(),r=e.backingStorePixelRatio||e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return(t.devicePixelRatio||1)/r};To.paintCache=function(e){for(var t=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(),S=i!==void 0?i:w,T=u.pan(),E={x:T.x,y:T.y},_={zoom:w,pan:{x:T.x,y:T.y}},A=s.prevViewport,L=A===void 0||_.zoom!==A.zoom||_.pan.x!==A.pan.x||_.pan.y!==A.pan.y;!L&&!(y&&!g)&&(s.motionBlurPxRatio=1),a&&(E=a),S*=l,E.x*=l,E.y*=l;var M=s.getCachedZSortedEles();function N(ut,et,Mt,it,wt){var Ot=ut.globalCompositeOperation;ut.globalCompositeOperation="destination-out",s.colorFillStyle(ut,255,255,255,s.motionBlurTransparency),ut.fillRect(et,Mt,it,wt),ut.globalCompositeOperation=Ot}o(N,"mbclear");function k(ut,et){var Mt,it,wt,Ot;!s.clearingMotionBlur&&(ut===h.bufferContexts[s.MOTIONBLUR_BUFFER_NODE]||ut===h.bufferContexts[s.MOTIONBLUR_BUFFER_DRAG])?(Mt={x:T.x*m,y:T.y*m},it=w*m,wt=s.canvasWidth*m,Ot=s.canvasHeight*m):(Mt=E,it=S,wt=s.canvasWidth,Ot=s.canvasHeight),ut.setTransform(1,0,0,1,0,0),et==="motionBlur"?N(ut,0,0,wt,Ot):!t&&(et===void 0||et)&&ut.clearRect(0,0,wt,Ot),r||(ut.translate(Mt.x,Mt.y),ut.scale(it,it)),a&&ut.translate(a.x,a.y),i&&ut.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 I=s.data.bufferContexts[s.TEXTURE_BUFFER];I.setTransform(1,0,0,1,0,0),I.clearRect(0,0,s.canvasWidth*s.textureMult,s.canvasHeight*s.textureMult),s.render({forcedContext:I,drawOnlyNodeLayer:!0,forcedPxRatio:l*s.textureMult});var _=s.textureCache.viewport={zoom:u.zoom(),pan:u.pan(),width:s.canvasWidth,height:s.canvasHeight};_.mpan={x:(0-_.pan.x)/_.zoom,y:(0-_.pan.y)/_.zoom}}f[s.DRAG]=!1,f[s.NODE]=!1;var C=h.contexts[s.NODE],O=s.textureCache.texture,_=s.textureCache.viewport;C.setTransform(1,0,0,1,0,0),p?N(C,0,0,_.width,_.height):C.clearRect(0,0,_.width,_.height);var D=b.core("outside-texture-bg-color").value,P=b.core("outside-texture-bg-opacity").value;s.colorFillStyle(C,D[0],D[1],D[2],P),C.fillRect(0,0,_.width,_.height);var w=u.zoom();k(C,!1),C.clearRect(_.mpan.x,_.mpan.y,_.width/_.zoom/l,_.height/_.zoom/l),C.drawImage(O,_.mpan.x,_.mpan.y,_.width/_.zoom/l,_.height/_.zoom/l)}else s.textureOnViewport&&!t&&(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=t||(W?s.data.bufferContexts[s.MOTIONBLUR_BUFFER_NODE]:h.contexts[s.NODE]),Q=p&&!W?"motionBlur":void 0;k(C,Q),G?s.drawCachedNodes(C,M.nondrag,l,F):s.drawLayeredElements(C,M.nondrag,l,F),s.debug&&s.drawDebugPoints(C,M.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=t||(W?s.data.bufferContexts[s.MOTIONBLUR_BUFFER_DRAG]:h.contexts[s.DRAG]);k(C,p&&!W?"motionBlur":void 0),G?s.drawCachedNodes(C,M.drag,l,F):s.drawCachedElements(C,M.drag,l,F),s.debug&&s.drawDebugPoints(C,M.drag),!r&&!p&&(f[s.DRAG]=!1)}if(s.showFps||!n&&f[s.SELECT_BOX]&&!r){var C=t||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(),at=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(at.x,at.y,b.core("active-bg-size").pfValue/w,0,2*Math.PI),C.fill()}var X=s.lastRedrawTime;if(s.showFps&&X){X=Math.round(X);var J=Math.round(1e3/X);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 = "+X+" ms = "+J+" fps",0,20);var Z=60;C.strokeRect(0,30,250,20),C.fillRect(0,30,250*Math.min(J/Z,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],K=h.contexts[s.DRAG],ot=s.data.bufferCanvases[s.MOTIONBLUR_BUFFER_DRAG],ct=o(function(et,Mt,it){et.setTransform(1,0,0,1,0,0),it||!x?et.clearRect(0,0,s.canvasWidth,s.canvasHeight):N(et,0,0,s.canvasWidth,s.canvasHeight);var wt=m;et.drawImage(Mt,0,0,s.canvasWidth*wt,s.canvasHeight*wt,0,0,s.canvasWidth,s.canvasHeight)},"drawMotionBlur");(f[s.NODE]||z[s.NODE])&&(ct(H,q,z[s.NODE]),f[s.NODE]=!1),(f[s.DRAG]||z[s.DRAG])&&(ct(K,ot,z[s.DRAG]),f[s.DRAG]=!1)}s.prevViewport=_,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()},Wee)),t||u.emit("render")};Bf={};Bf.drawPolygonPath=function(e,t,r,n,i,a){var s=n/2,l=i/2;e.beginPath&&e.beginPath(),e.moveTo(t+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(e.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=t.pan(),v={x:y.x*h,y:y.y*h};h*=t.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)}e.bg&&(m.globalCompositeOperation="destination-over",m.fillStyle=e.bg,m.rect(0,0,a,s),m.fill())}return p};o(Yee,"b64ToBlob");o(Igt,"b64UriToB64");o(fyt,"output");Nb.png=function(e){return fyt(e,this.bufferCanvasImage(e),"image/png")};Nb.jpg=function(e){return fyt(e,this.bufferCanvasImage(e),"image/jpeg")};dyt={};dyt.nodeShapeImpl=function(e,t,r,n,i,a,s,l){switch(e){case"ellipse":return this.drawEllipsePath(t,r,n,i,a);case"polygon":return this.drawPolygonPath(t,r,n,i,a,s);case"round-polygon":return this.drawRoundPolygonPath(t,r,n,i,a,s,l);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(t,r,n,i,a,l);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(t,r,n,i,a,s,l);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(t,r,n,i,a,l);case"barrel":return this.drawBarrelPath(t,r,n,i,a)}};qee=pyt,Kr=pyt.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(pyt,"CanvasRenderer");Kr.redrawHint=function(e,t){var r=this;switch(e){case"eles":r.data.canvasNeedsRedraw[Kr.NODE]=t;break;case"drag":r.data.canvasNeedsRedraw[Kr.DRAG]=t;break;case"select":r.data.canvasNeedsRedraw[Kr.SELECT_BOX]=t;break}};Xee=typeof Path2D<"u";Kr.path2dEnabled=function(e){if(e===void 0)return this.pathsEnabled;this.pathsEnabled=!!e};Kr.usePaths=function(){return Xee&&this.pathsEnabled};Kr.setImgSmoothing=function(e,t){e.imageSmoothingEnabled!=null?e.imageSmoothingEnabled=t:(e.webkitImageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t,e.msImageSmoothingEnabled=t)};Kr.getImgSmoothing=function(e){return e.imageSmoothingEnabled!=null?e.imageSmoothingEnabled:e.webkitImageSmoothingEnabled||e.mozImageSmoothingEnabled||e.msImageSmoothingEnabled};Kr.makeOffscreenCanvas=function(e,t){var r;if((typeof OffscreenCanvas>"u"?"undefined":ji(OffscreenCanvas))!=="undefined")r=new OffscreenCanvas(e,t);else{var n=this.cy.window(),i=n.document;r=i.createElement("canvas"),r.width=e,r.height=t}return r};[lyt,tu,ah,AF,np,I1,To,Bf,Nb,dyt].forEach(function(e){ir(Kr,e)});jee=[{name:"null",impl:j1t},{name:"base",impl:ayt},{name:"canvas",impl:qee}],Kee=[{type:"layout",extensions:ree},{type:"renderer",extensions:jee}],myt={},gyt={};o(yyt,"setExtension");o(vyt,"getExtension");o(Qee,"setModule");o(Zee,"getModule");nF=o(function(){if(arguments.length===2)return vyt.apply(null,arguments);if(arguments.length===3)return yyt.apply(null,arguments);if(arguments.length===4)return Zee.apply(null,arguments);if(arguments.length===5)return Qee.apply(null,arguments);fi("Invalid extension access syntax")},"extension");kb.prototype.extension=nF;Kee.forEach(function(e){e.extensions.forEach(function(t){yyt(e.type,t.name,t.impl)})});xyt=o(function e(){if(!(this instanceof e))return new e;this.length=0},"Stylesheet"),ep=xyt.prototype;ep.instanceString=function(){return"stylesheet"};ep.selector=function(e){var t=this.length++;return this[t]={selector:e,properties:[]},this};ep.css=function(e,t){var r=this.length-1;if(Ke(e))this[r].properties.push({name:e,value:t});else if(Ur(e))for(var n=e,i=Object.keys(n),a=0;a{"use strict";o(function(t,r){typeof Mb=="object"&&typeof LF=="object"?LF.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Mb=="object"?Mb.layoutBase=r():t.layoutBase=r()},"webpackUniversalModuleDefinition")(Mb,function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=e,r.c=t,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(e,t,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,e.exports=n},function(e,t,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)},e.exports=s},function(e,t,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),e.exports=n},function(e,t,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()},e.exports=h},function(e,t,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},e.exports=n},function(e,t,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 S=x.source.owner.getEdges().indexOf(x);if(S==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(S,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,w=this.getNodes(),S=w.length,T=0;Tv&&(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,S,T,E,_,A=this.nodes,L=A.length,M=0;Mw&&(y=w),vT&&(x=T),bw&&(y=w),vT&&(x=T),b=this.nodes.length){var L=0;v.forEach(function(M){M.owner==g&&L++}),L==this.nodes.length&&(this.isConnected=!0)}},e.exports=p},function(e,t,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]=A,!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===D&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=x,l[1]=v,k=!0)),-O===D?f>u?(l[2]=_,l[3]=A,I=!0):(l[2]=E,l[3]=T,I=!0):O===D&&(f>u?(l[2]=S,l[3]=T,I=!0):(l[2]=L,l[3]=A,I=!0)),k&&I)return!1;if(u>f?h>d?(P=this.getCardinalDirection(C,D,4),F=this.getCardinalDirection(O,D,2)):(P=this.getCardinalDirection(-C,D,3),F=this.getCardinalDirection(-O,D,1)):h>d?(P=this.getCardinalDirection(-C,D,1),F=this.getCardinalDirection(-O,D,3)):(P=this.getCardinalDirection(C,D,2),F=this.getCardinalDirection(O,D,4)),!k)switch(P){case 1:G=m,B=u+-w/D,l[0]=B,l[1]=G;break;case 2:B=x,G=h+b*D,l[0]=B,l[1]=G;break;case 3:G=v,B=u+w/D,l[0]=B,l[1]=G;break;case 4:B=y,G=h+-b*D,l[0]=B,l[1]=G;break}if(!I)switch(F){case 1:W=T,z=f+-N/D,l[2]=z,l[3]=W;break;case 2:z=L,W=d+M*D,l[2]=z,l[3]=W;break;case 3:W=A,z=f+N/D,l[2]=z,l[3]=W;break;case 4:z=_,W=d+-M*D,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,S=void 0,T=void 0,E=void 0,_=void 0,A=void 0,L=void 0;return w=p-f,T=h-d,_=d*f-h*p,S=v-g,E=m-y,A=y*g-m*v,L=w*E-S*T,L===0?null:(x=(T*A-E*_)/L,b=(S*_-w*A)/L,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)},e.exports=n},function(e,t,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,e.exports=n},function(e,t,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"},e.exports=i},function(e,t,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 _=E.getEdges(),x=0;x<_.length;x++){var A=_[x].getOtherEnd(E);if(S.get(E)!=A)if(!b.has(A))w.push(A),S.set(A,E);else{g=!1;break}}}if(!g)m=[];else{var L=[].concat(n(b));m.push(L);for(var x=0;x-1&&T.splice(N,1)}b=new Set,S=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(A,1);var L=S.getNeighborsList();L.forEach(function(k){if(y.indexOf(k)<0){var I=v.get(k),C=I-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},e.exports=p},function(e,t,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)},e.exports=n},function(e,t,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},e.exports=i},function(e,t,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 S=0;Sh},"_defaultCompareFunction")}]),l}();e.exports=s},function(e,t,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(t,r){typeof Ib=="object"&&typeof RF=="object"?RF.exports=r(DF()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof Ib=="object"?Ib.coseBase=r(DF()):t.coseBase=r(t.layoutBase)},"webpackUniversalModuleDefinition")(Ib,function(e){return function(t){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return t[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=t,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(t,r){t.exports=e},function(t,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,t.exports=a},function(t,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];t.exports=a},function(t,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];t.exports=a},function(t,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];t.exports=a},function(t,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()),_=this.nodesWithGravity.filter(function(A){return E.has(A)});this.graphManager.setAllNodesToApplyGravitation(_),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(L){return T.has(L)});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 _=!this.isTreeGrowing&&!this.isGrowthFinished,A=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(_,A),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},w.prototype.getPositionsData=function(){for(var T=this.graphManager.getAllNodes(),E={},_=0;_1){var k;for(k=0;kA&&(A=Math.floor(N.y)),M=Math.floor(N.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new m(d.WORLD_CENTER_X-N.x/2,d.WORLD_CENTER_Y-N.y/2))},w.radialLayout=function(T,E,_){var A=Math.max(this.maxDiagonalInTree(T),h.DEFAULT_RADIAL_SEPARATION);w.branchRadialLayout(E,null,0,359,0,A);var L=x.calculateBounds(T),M=new b;M.setDeviceOrgX(L.getMinX()),M.setDeviceOrgY(L.getMinY()),M.setWorldOrgX(_.x),M.setWorldOrgY(_.y);for(var N=0;N1;){var Q=W[0];W.splice(0,1);var j=P.indexOf(Q);j>=0&&P.splice(j,1),G--,F--}E!=null?z=(P.indexOf(W[0])+1)%G:z=0;for(var at=Math.abs(A-_)/F,X=z;B!=F;X=++X%G){var J=P[X].getOtherEnd(T);if(J!=E){var Z=(_+B*at)%360,H=(Z+at)%360;w.branchRadialLayout(J,T,Z,H,L+M,M),B++}}},w.maxDiagonalInTree=function(T){for(var E=y.MIN_VALUE,_=0;_E&&(E=L)}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 _=[],A=this.graphManager.getAllNodes(),L=0;L"u"&&(E[k]=[]),E[k]=E[k].concat(M)}Object.keys(E).forEach(function(I){if(E[I].length>1){var C="DummyCompound_"+I;T.memberGroups[C]=E[I];var O=E[I][0].getParent(),D=new l(T.graphManager);D.id=C,D.paddingLeft=O.paddingLeft||0,D.paddingRight=O.paddingRight||0,D.paddingBottom=O.paddingBottom||0,D.paddingTop=O.paddingTop||0,T.idToDummyNode[C]=D;var P=T.getGraphManager().add(T.newGraph(),D),F=O.getChild();F.add(D);for(var B=0;B=0;T--){var E=this.compoundOrder[T],_=E.id,A=E.paddingLeft,L=E.paddingTop;this.adjustLocations(this.tiledMemberPack[_],E.rect.x,E.rect.y,A,L)}},w.prototype.repopulateZeroDegreeMembers=function(){var T=this,E=this.tiledZeroDegreePack;Object.keys(E).forEach(function(_){var A=T.idToDummyNode[_],L=A.paddingLeft,M=A.paddingTop;T.adjustLocations(E[_],A.rect.x,A.rect.y,L,M)})},w.prototype.getToBeTiled=function(T){var E=T.id;if(this.toBeTiled[E]!=null)return this.toBeTiled[E];var _=T.getChild();if(_==null)return this.toBeTiled[E]=!1,!1;for(var A=_.getNodes(),L=0;L0)return this.toBeTiled[E]=!1,!1;if(M.getChild()==null){this.toBeTiled[M.id]=!1;continue}if(!this.getToBeTiled(M))return this.toBeTiled[E]=!1,!1}return this.toBeTiled[E]=!0,!0},w.prototype.getNodeDegree=function(T){for(var E=T.id,_=T.getEdges(),A=0,L=0;L<_.length;L++){var M=_[L];M.getSource().id!==M.getTarget().id&&(A=A+1)}return A},w.prototype.getNodeDegreeWithChildren=function(T){var E=this.getNodeDegree(T);if(T.getChild()==null)return E;for(var _=T.getChild().getNodes(),A=0;A<_.length;A++){var L=_[A];E+=this.getNodeDegreeWithChildren(L)}return E},w.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},w.prototype.fillCompexOrderByDFS=function(T){for(var E=0;EI&&(I=O.rect.height)}_+=I+T.verticalPadding}},w.prototype.tileCompoundMembers=function(T,E){var _=this;this.tiledMemberPack=[],Object.keys(T).forEach(function(A){var L=E[A];_.tiledMemberPack[A]=_.tileNodes(T[A],L.paddingLeft+L.paddingRight),L.rect.width=_.tiledMemberPack[A].width,L.rect.height=_.tiledMemberPack[A].height})},w.prototype.tileNodes=function(T,E){var _=h.TILING_PADDING_VERTICAL,A=h.TILING_PADDING_HORIZONTAL,L={rows:[],rowWidth:[],rowHeight:[],width:0,height:E,verticalPadding:_,horizontalPadding:A};T.sort(function(k,I){return k.rect.width*k.rect.height>I.rect.width*I.rect.height?-1:k.rect.width*k.rect.height0&&(N+=T.horizontalPadding),T.rowWidth[_]=N,T.width0&&(k+=T.verticalPadding);var I=0;k>T.rowHeight[_]&&(I=T.rowHeight[_],T.rowHeight[_]=k,I=T.rowHeight[_]-I),T.height+=I,T.rows[_].push(E)},w.prototype.getShortestRowIndex=function(T){for(var E=-1,_=Number.MAX_VALUE,A=0;A_&&(E=A,_=T.rowWidth[A]);return E},w.prototype.canAddHorizontal=function(T,E,_){var A=this.getShortestRowIndex(T);if(A<0)return!0;var L=T.rowWidth[A];if(L+T.horizontalPadding+E<=T.width)return!0;var M=0;T.rowHeight[A]<_&&A>0&&(M=_+T.verticalPadding-T.rowHeight[A]);var N;T.width-L>=E+T.horizontalPadding?N=(T.height+M)/(L+E+T.horizontalPadding):N=(T.height+M)/T.width,M=_+T.verticalPadding;var k;return T.widthM&&E!=_){A.splice(-1,1),T.rows[_].push(L),T.rowWidth[E]=T.rowWidth[E]-M,T.rowWidth[_]=T.rowWidth[_]+M,T.width=T.rowWidth[instance.getLongestRowIndex(T)];for(var N=Number.MIN_VALUE,k=0;kN&&(N=A[k].height);E>0&&(N+=T.verticalPadding);var I=T.rowHeight[E]+T.rowHeight[_];T.rowHeight[E]=N,T.rowHeight[_]0)for(var F=L;F<=M;F++)P[0]+=this.grid[F][N-1].length+this.grid[F][N].length-1;if(M0)for(var F=N;F<=k;F++)P[3]+=this.grid[L-1][F].length+this.grid[L][F].length-1;for(var B=y.MAX_VALUE,G,z,W=0;W{"use strict";o(function(t,r){typeof Ob=="object"&&typeof MF=="object"?MF.exports=r(NF()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof Ob=="object"?Ob.cytoscapeCoseBilkent=r(NF()):t.cytoscapeCoseBilkent=r(t.coseBase)},"webpackUniversalModuleDefinition")(Ob,function(e){return function(t){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return t[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=t,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(t,r){t.exports=e},function(t,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={},S=this.layout=new l,T=this;T.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var E=S.newGraphManager();this.gm=E;var _=this.options.eles.nodes(),A=this.options.eles.edges();this.root=E.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(_),S);for(var L=0;L0){var k;k=b.getGraphManager().add(b.newGraph(),_),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),t.exports=y}])})});function sre(e,t,r,n,i){return e.insert("polygon",":first-child").attr("points",n.map(function(a){return a.x+","+a.y}).join(" ")).attr("transform","translate("+(i.width-t)/2+", "+r+")")}var tre,ere,rre,nre,ire,are,ore,lre,wyt,Tyt,kyt=R(()=>{"use strict";Nl();_r();tre=12,ere=o(function(e,t,r,n){t.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.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`),t.append("line").attr("class","node-line-"+n).attr("x1",0).attr("y1",r.height).attr("x2",r.width).attr("y2",r.height)},"defaultBkg"),rre=o(function(e,t,r){t.append("rect").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.type2Str(r.type)).attr("height",r.height).attr("width",r.width)},"rectBkg"),nre=o(function(e,t,r){let n=r.width,i=r.height,a=.15*n,s=.25*n,l=.35*n,u=.2*n;t.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.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"),ire=o(function(e,t,r){let n=r.width,i=r.height,a=.15*n;t.append("path").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.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"),are=o(function(e,t,r){t.append("circle").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.type2Str(r.type)).attr("r",r.width/2)},"circleBkg");o(sre,"insertPolygonShape");ore=o(function(e,t,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}];sre(t,s,n,l,r)},"hexagonBkg"),lre=o(function(e,t,r){t.append("rect").attr("id","node-"+r.id).attr("class","node-bkg node-"+e.type2Str(r.type)).attr("height",r.height).attr("rx",r.padding).attr("ry",r.padding).attr("width",r.width)},"roundedRectBkg"),wyt=o(async function(e,t,r,n,i){let a=i.htmlLabels,s=n%(tre-1),l=t.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 ia(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]=Tc(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===e.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 e.nodeType.DEFAULT:ere(e,h,r,s);break;case e.nodeType.ROUNDED_RECT:lre(e,h,r,s);break;case e.nodeType.RECT:rre(e,h,r,s);break;case e.nodeType.CIRCLE:h.attr("transform","translate("+r.width/2+", "+ +r.height/2+")"),are(e,h,r,s);break;case e.nodeType.CLOUD:nre(e,h,r,s);break;case e.nodeType.BANG:ire(e,h,r,s);break;case e.nodeType.HEXAGON:ore(e,h,r,s);break}return e.setElementForId(r.id,l),r.height},"drawNode"),Tyt=o(function(e,t){let r=e.getElementById(t.id),n=t.x||0,i=t.y||0;r.attr("transform","translate("+n+","+i+")")},"positionNode")});async function Cyt(e,t,r,n,i){await wyt(e,t,r,n,i),r.children&&await Promise.all(r.children.map((a,s)=>Cyt(e,t,a,n<0?s:n,i)))}function cre(e,t){t.edges().map((r,n)=>{let i=r.data();if(r[0]._private.bodyBounds){let a=r[0]._private.rscratch;V.trace("Edge: ",n,i),e.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 Syt(e,t,r,n){t.add({group:"nodes",data:{id:e.id.toString(),labelText:e.descr,height:e.height,width:e.width,level:n,nodeId:e.id,padding:e.padding,type:e.type},position:{x:e.x,y:e.y}}),e.children&&e.children.forEach(i=>{Syt(i,t,r,n+1),t.add({group:"edges",data:{id:`${e.id}_${i.id}`,source:e.id,target:i.id,depth:n,section:i.section}})})}function ure(e,t){return new Promise(r=>{let n=Gt("body").append("div").attr("id","cy").attr("style","display:none"),i=sl({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});n.remove(),Syt(e,i,t,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=>{V.info("Ready",a),r(i)})})}function hre(e,t){t.nodes().map((r,n)=>{let i=r.data();i.x=r.position().x,i.y=r.position().y,Tyt(e,i);let a=e.getElementById(i.nodeId);V.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 Eyt,fre,Ayt,_yt=R(()=>{"use strict";_F();Eyt=Qi(byt(),1);ur();Ue();ce();xf();Jn();kyt();hl();sl.use(Eyt.default);o(Cyt,"drawNodes");o(cre,"drawEdges");o(Syt,"addNodes");o(ure,"layoutMindmap");o(hre,"positionNodes");fre=o(async(e,t,r,n)=>{V.debug(`Rendering mindmap diagram +`+e);let i=n.db,a=i.getMindmap();if(!a)return;let s=pt();s.htmlLabels=!1;let l=Vs(t),u=l.append("g");u.attr("class","mindmap-edges");let h=l.append("g");h.attr("class","mindmap-nodes"),await Cyt(i,h,a,-1,s);let f=await ure(a,s);cre(u,f),hre(i,f),No(void 0,l,s.mindmap?.padding??Er.mindmap.padding,s.mindmap?.useMaxWidth??Er.mindmap.useMaxWidth)},"draw"),Ayt={draw:fre}});var dre,pre,Lyt,Dyt=R(()=>{"use strict";ul();dre=o(e=>{let t="";for(let r=0;r` + .edge { + stroke-width: 3; + } + ${dre(e)} + .section-root rect, .section-root path, .section-root circle, .section-root polygon { + fill: ${e.git0}; + } + .section-root text { + fill: ${e.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"),Lyt=pre});var Ryt={};xr(Ryt,{diagram:()=>mre});var mre,Nyt=R(()=>{"use strict";ymt();bmt();_yt();Dyt();mre={db:xmt,renderer:Ayt,parser:gmt,styles:Lyt}});var IF,Pb,Oyt=R(()=>{"use strict";IF=function(){var e=o(function(l,u,h,f){for(h=h||{},f=l.length;f--;h[l[f]]=u);return h},"o"),t=[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:t,20:r},{1:[2,6],7:11,10:[1,12]},e(r,[2,4],{9:13,5:[1,14]}),{12:[1,15]},e(n,[2,8]),e(n,[2,9]),{19:[1,16]},e(n,[2,11]),{1:[2,1]},{1:[2,5]},e(r,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:t,20:r},{15:18,16:7,17:8,18:t,20:r},{18:[1,19]},e(r,[2,3]),{12:[1,20]},e(n,[2,10]),{15:21,16:7,17:8,18:t,20:r},e([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,S=1,T=m.slice.call(arguments,1),E=Object.create(this.lexer),_={yy:{}};for(var A in this.yy)Object.prototype.hasOwnProperty.call(this.yy,A)&&(_.yy[A]=this.yy[A]);E.setInput(u,_.yy),_.yy.lexer=E,_.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var L=E.yylloc;m.push(L);var M=E.options&&E.options.ranges;typeof _.yy.parseError=="function"?this.parseError=_.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function N(at){f.length=f.length-2*at,p.length=p.length-at,m.length=m.length-at}o(N,"popStack");function k(){var at;return at=d.pop()||E.lex()||S,typeof at!="number"&&(at instanceof Array&&(d=at,at=d.pop()),at=h.symbols_[at]||at),at}o(k,"lex");for(var I,C,O,D,P,F,B={},G,z,W,Q;;){if(O=f[f.length-1],this.defaultActions[O]?D=this.defaultActions[O]:((I===null||typeof I>"u")&&(I=k()),D=g[O]&&g[O][I]),typeof D>"u"||!D.length||!D[0]){var j="";Q=[];for(G in g[O])this.terminals_[G]&&G>w&&Q.push("'"+this.terminals_[G]+"'");E.showPosition?j="Parse error on line "+(v+1)+`: +`+E.showPosition()+` +Expecting `+Q.join(", ")+", got '"+(this.terminals_[I]||I)+"'":j="Parse error on line "+(v+1)+": Unexpected "+(I==S?"end of input":"'"+(this.terminals_[I]||I)+"'"),this.parseError(j,{text:E.match,token:this.terminals_[I]||I,line:E.yylineno,loc:L,expected:Q})}if(D[0]instanceof Array&&D.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+I);switch(D[0]){case 1:f.push(I),p.push(E.yytext),m.push(E.yylloc),f.push(D[1]),I=null,C?(I=C,C=null):(x=E.yyleng,y=E.yytext,v=E.yylineno,L=E.yylloc,b>0&&b--);break;case 2:if(z=this.productions_[D[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},M&&(B._$.range=[m[m.length-(z||1)].range[0],m[m.length-1].range[1]]),F=this.performAction.apply(B,[y,x,v,_.yy,D[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_[D[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}();IF.parser=IF;Pb=IF});var YC,qC,WC,xre,OF,bre,PF,wre,Tre,kre,Ere,Pyt,Byt=R(()=>{"use strict";Ue();hr();Ci();YC=[],qC=[],WC=new Map,xre=o(()=>{YC=[],qC=[],WC=new Map,Ar()},"clear"),OF=class{constructor(t,r,n=0){this.source=t;this.target=r;this.value=n}static{o(this,"SankeyLink")}},bre=o((e,t,r)=>{YC.push(new OF(e,t,r))},"addLink"),PF=class{constructor(t){this.ID=t}static{o(this,"SankeyNode")}},wre=o(e=>{e=Yt.sanitizeText(e,pt());let t=WC.get(e);return t===void 0&&(t=new PF(e),WC.set(e,t),qC.push(t)),t},"findOrCreateNode"),Tre=o(()=>qC,"getNodes"),kre=o(()=>YC,"getLinks"),Ere=o(()=>({nodes:qC.map(e=>({id:e.ID})),links:YC.map(e=>({source:e.source.ID,target:e.target.ID,value:e.value}))}),"getGraph"),Pyt={nodesMap:WC,getConfig:o(()=>pt().sankey,"getConfig"),getNodes:Tre,getLinks:kre,getGraph:Ere,addLink:bre,findOrCreateNode:wre,getAccTitle:Br,setAccTitle:Mr,getAccDescription:zr,setAccDescription:Fr,getDiagramTitle:Jr,setDiagramTitle:cn,clear:xre}});function Bb(e,t){let r;if(t===void 0)for(let n of e)n!=null&&(r=n)&&(r=n);else{let n=-1;for(let i of e)(i=t(i,++n,e))!=null&&(r=i)&&(r=i)}return r}var Fyt=R(()=>{"use strict";o(Bb,"max")});function O1(e,t){let r;if(t===void 0)for(let n of e)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of e)(i=t(i,++n,e))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var zyt=R(()=>{"use strict";o(O1,"min")});function P1(e,t){let r=0;if(t===void 0)for(let n of e)(n=+n)&&(r+=n);else{let n=-1;for(let i of e)(i=+t(i,++n,e))&&(r+=i)}return r}var $yt=R(()=>{"use strict";o(P1,"sum")});var BF=R(()=>{"use strict";Fyt();zyt();$yt()});function Cre(e){return e.target.depth}function FF(e){return e.depth}function zF(e,t){return t-1-e.height}function Fb(e,t){return e.sourceLinks.length?e.depth:t-1}function $F(e){return e.targetLinks.length?e.depth:e.sourceLinks.length?O1(e.sourceLinks,Cre)-1:0}var GF=R(()=>{"use strict";BF();o(Cre,"targetDepth");o(FF,"left");o(zF,"right");o(Fb,"justify");o($F,"center")});function B1(e){return function(){return e}}var Gyt=R(()=>{"use strict";o(B1,"constant")});function Vyt(e,t){return XC(e.source,t.source)||e.index-t.index}function Uyt(e,t){return XC(e.target,t.target)||e.index-t.index}function XC(e,t){return e.y0-t.y0}function VF(e){return e.value}function Sre(e){return e.index}function Are(e){return e.nodes}function _re(e){return e.links}function Hyt(e,t){let r=e.get(t);if(!r)throw new Error("missing: "+t);return r}function Wyt({nodes:e}){for(let t of e){let r=t.y0,n=r;for(let i of t.sourceLinks)i.y0=r+i.width/2,r+=i.width;for(let i of t.targetLinks)i.y1=n+i.width/2,n+=i.width}}function jC(){let e=0,t=0,r=1,n=1,i=24,a=8,s,l=Sre,u=Fb,h,f,d=Are,p=_re,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),Wyt(O),O}o(g,"sankey"),g.update=function(O){return Wyt(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?(e=t=0,r=+O[0],n=+O[1],g):[r-e,n-t]},g.extent=function(O){return arguments.length?(e=+O[0][0],r=+O[1][0],t=+O[0][1],n=+O[1][1],g):[[e,t],[r,n]]},g.iterations=function(O){return arguments.length?(m=+O,g):m};function y({nodes:O,links:D}){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 D.entries()){B.index=F;let{source:G,target:z}=B;typeof G!="object"&&(G=B.source=Hyt(P,G)),typeof z!="object"&&(z=B.target=Hyt(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 D of O)D.value=D.fixedValue===void 0?Math.max(P1(D.sourceLinks,VF),P1(D.targetLinks,VF)):D.fixedValue}o(v,"computeNodeValues");function x({nodes:O}){let D=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>D)throw new Error("circular link");P=F,F=new Set}}o(x,"computeNodeDepths");function b({nodes:O}){let D=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>D)throw new Error("circular link");P=F,F=new Set}}o(b,"computeNodeHeights");function w({nodes:O}){let D=Bb(O,B=>B.depth)+1,P=(r-e-i)/(D-1),F=new Array(D);for(let B of O){let G=Math.max(0,Math.min(D-1,Math.floor(u.call(null,B,D))));B.layer=G,B.x0=e+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 S(O){let D=O1(O,P=>(n-t-(P.length-1)*s)/P1(P,VF));for(let P of O){let F=t;for(let B of P){B.y0=F,B.y1=F+B.value*D,F=B.y1+s;for(let G of B.sourceLinks)G.width=G.value*D}F=(n-F+s)/(P.length+1);for(let B=0;BP.length)-1)),S(D);for(let P=0;P0))continue;let j=(W/Q-z.y0)*D;z.y0+=j,z.y1+=j,N(z)}h===void 0&&G.sort(XC),A(G,P)}}o(E,"relaxLeftToRight");function _(O,D,P){for(let F=O.length,B=F-2;B>=0;--B){let G=O[B];for(let z of G){let W=0,Q=0;for(let{target:at,value:X}of z.sourceLinks){let J=X*(at.layer-z.layer);W+=C(z,at)*J,Q+=J}if(!(Q>0))continue;let j=(W/Q-z.y0)*D;z.y0+=j,z.y1+=j,N(z)}h===void 0&&G.sort(XC),A(G,P)}}o(_,"relaxRightToLeft");function A(O,D){let P=O.length>>1,F=O[P];M(O,F.y0-s,P-1,D),L(O,F.y1+s,P+1,D),M(O,n,O.length-1,D),L(O,t,0,D)}o(A,"resolveCollisions");function L(O,D,P,F){for(;P1e-6&&(B.y0+=G,B.y1+=G),D=B.y1+s}}o(L,"resolveCollisionsTopToBottom");function M(O,D,P,F){for(;P>=0;--P){let B=O[P],G=(B.y1-D)*F;G>1e-6&&(B.y0-=G,B.y1-=G),D=B.y0-s}}o(M,"resolveCollisionsBottomToTop");function N({sourceLinks:O,targetLinks:D}){if(f===void 0){for(let{source:{sourceLinks:P}}of D)P.sort(Uyt);for(let{target:{targetLinks:P}}of O)P.sort(Vyt)}}o(N,"reorderNodeLinks");function k(O){if(f===void 0)for(let{sourceLinks:D,targetLinks:P}of O)D.sort(Uyt),P.sort(Vyt)}o(k,"reorderLinks");function I(O,D){let P=O.y0-(O.sourceLinks.length-1)*s/2;for(let{target:F,width:B}of O.sourceLinks){if(F===D)break;P+=B+s}for(let{source:F,width:B}of D.targetLinks){if(F===O)break;P-=B}return P}o(I,"targetTop");function C(O,D){let P=D.y0-(D.targetLinks.length-1)*s/2;for(let{source:F,width:B}of D.targetLinks){if(F===O)break;P+=B+s}for(let{target:F,width:B}of O.sourceLinks){if(F===D)break;P-=B}return P}return o(C,"sourceTop"),g}var Yyt=R(()=>{"use strict";BF();GF();Gyt();o(Vyt,"ascendingSourceBreadth");o(Uyt,"ascendingTargetBreadth");o(XC,"ascendingBreadth");o(VF,"value");o(Sre,"defaultId");o(Are,"defaultNodes");o(_re,"defaultLinks");o(Hyt,"find");o(Wyt,"computeLinkBreadths");o(jC,"Sankey")});function WF(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function qyt(){return new WF}var UF,HF,ip,Lre,YF,Xyt=R(()=>{"use strict";UF=Math.PI,HF=2*UF,ip=1e-6,Lre=HF-ip;o(WF,"Path");o(qyt,"path");WF.prototype=qyt.prototype={constructor:WF,moveTo:o(function(e,t){this._+="M"+(this._x0=this._x1=+e)+","+(this._y0=this._y1=+t)},"moveTo"),closePath:o(function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},"closePath"),lineTo:o(function(e,t){this._+="L"+(this._x1=+e)+","+(this._y1=+t)},"lineTo"),quadraticCurveTo:o(function(e,t,r,n){this._+="Q"+ +e+","+ +t+","+(this._x1=+r)+","+(this._y1=+n)},"quadraticCurveTo"),bezierCurveTo:o(function(e,t,r,n,i,a){this._+="C"+ +e+","+ +t+","+ +r+","+ +n+","+(this._x1=+i)+","+(this._y1=+a)},"bezierCurveTo"),arcTo:o(function(e,t,r,n,i){e=+e,t=+t,r=+r,n=+n,i=+i;var a=this._x1,s=this._y1,l=r-e,u=n-t,h=a-e,f=s-t,d=h*h+f*f;if(i<0)throw new Error("negative radius: "+i);if(this._x1===null)this._+="M"+(this._x1=e)+","+(this._y1=t);else if(d>ip)if(!(Math.abs(f*l-u*h)>ip)||!i)this._+="L"+(this._x1=e)+","+(this._y1=t);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((UF-Math.acos((g+d-y)/(2*v*x)))/2),w=b/x,S=b/v;Math.abs(w-1)>ip&&(this._+="L"+(e+w*h)+","+(t+w*f)),this._+="A"+i+","+i+",0,0,"+ +(f*p>h*m)+","+(this._x1=e+S*l)+","+(this._y1=t+S*u)}},"arcTo"),arc:o(function(e,t,r,n,i,a){e=+e,t=+t,r=+r,a=!!a;var s=r*Math.cos(n),l=r*Math.sin(n),u=e+s,h=t+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)>ip||Math.abs(this._y1-h)>ip)&&(this._+="L"+u+","+h),r&&(d<0&&(d=d%HF+HF),d>Lre?this._+="A"+r+","+r+",0,1,"+f+","+(e-s)+","+(t-l)+"A"+r+","+r+",0,1,"+f+","+(this._x1=u)+","+(this._y1=h):d>ip&&(this._+="A"+r+","+r+",0,"+ +(d>=UF)+","+f+","+(this._x1=e+r*Math.cos(i))+","+(this._y1=t+r*Math.sin(i))))},"arc"),rect:o(function(e,t,r,n){this._+="M"+(this._x0=this._x1=+e)+","+(this._y0=this._y1=+t)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},"rect"),toString:o(function(){return this._},"toString")};YF=qyt});var jyt=R(()=>{"use strict";Xyt()});function KC(e){return o(function(){return e},"constant")}var Kyt=R(()=>{"use strict";o(KC,"default")});function Qyt(e){return e[0]}function Zyt(e){return e[1]}var Jyt=R(()=>{"use strict";o(Qyt,"x");o(Zyt,"y")});var tvt,evt=R(()=>{"use strict";tvt=Array.prototype.slice});function Dre(e){return e.source}function Rre(e){return e.target}function Nre(e){var t=Dre,r=Rre,n=Qyt,i=Zyt,a=null;function s(){var l,u=tvt.call(arguments),h=t.apply(this,u),f=r.apply(this,u);if(a||(a=l=YF()),e(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?(t=l,s):t},s.target=function(l){return arguments.length?(r=l,s):r},s.x=function(l){return arguments.length?(n=typeof l=="function"?l:KC(+l),s):n},s.y=function(l){return arguments.length?(i=typeof l=="function"?l:KC(+l),s):i},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function Mre(e,t,r,n,i){e.moveTo(t,r),e.bezierCurveTo(t=(t+n)/2,r,t,i,n,i)}function qF(){return Nre(Mre)}var rvt=R(()=>{"use strict";jyt();evt();Kyt();Jyt();o(Dre,"linkSource");o(Rre,"linkTarget");o(Nre,"link");o(Mre,"curveHorizontal");o(qF,"linkHorizontal")});var nvt=R(()=>{"use strict";rvt()});function Ire(e){return[e.source.x1,e.y0]}function Ore(e){return[e.target.x0,e.y1]}function QC(){return qF().source(Ire).target(Ore)}var ivt=R(()=>{"use strict";nvt();o(Ire,"horizontalSource");o(Ore,"horizontalTarget");o(QC,"default")});var avt=R(()=>{"use strict";Yyt();GF();ivt()});var zb,svt=R(()=>{"use strict";zb=class e{static{o(this,"Uid")}static{this.count=0}static next(t){return new e(t+ ++e.count)}constructor(t){this.id=t,this.href=`#${t}`}toString(){return"url("+this.href+")"}}});var Pre,Bre,ovt,lvt=R(()=>{"use strict";Ue();ur();avt();Jn();svt();Pre={left:FF,right:zF,center:$F,justify:Fb},Bre=o(function(e,t,r,n){let{securityLevel:i,sankey:a}=pt(),s=X4.sankey,l;i==="sandbox"&&(l=Gt("#i"+t));let u=i==="sandbox"?Gt(l.nodes()[0].contentDocument.body):Gt("body"),h=i==="sandbox"?u.select(`[id="${t}"]`):Gt(`[id="${t}"]`),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=Pre[m];jC().nodeId(M=>M.id).nodeWidth(10).nodePadding(10+(v?15:0)).nodeAlign(b).extent([[0,0],[f,d]])(x);let T=bu(z_);h.append("g").attr("class","nodes").selectAll(".node").data(x.nodes).join("g").attr("class","node").attr("id",M=>(M.uid=zb.next("node-")).id).attr("transform",function(M){return"translate("+M.x0+","+M.y0+")"}).attr("x",M=>M.x0).attr("y",M=>M.y0).append("rect").attr("height",M=>M.y1-M.y0).attr("width",M=>M.x1-M.x0).attr("fill",M=>T(M.id));let E=o(({id:M,value:N})=>v?`${M} +${g}${Math.round(N*100)/100}${y}`:M,"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",M=>M.x0(M.y1+M.y0)/2).attr("dy",`${v?"0":"0.35"}em`).attr("text-anchor",M=>M.x0(N.uid=zb.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",N=>N.source.x1).attr("x2",N=>N.target.x0);M.append("stop").attr("offset","0%").attr("stop-color",N=>T(N.source.id)),M.append("stop").attr("offset","100%").attr("stop-color",N=>T(N.target.id))}let L;switch(A){case"gradient":L=o(M=>M.uid,"coloring");break;case"source":L=o(M=>T(M.source.id),"coloring");break;case"target":L=o(M=>T(M.target.id),"coloring");break;default:L=A}_.append("path").attr("d",QC()).attr("stroke",L).attr("stroke-width",M=>Math.max(1,M.width)),No(void 0,h,0,p)},"draw"),ovt={draw:Bre}});var cvt,uvt=R(()=>{"use strict";cvt=o(e=>e.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,` +`).trim(),"prepareTextForParsing")});var hvt={};xr(hvt,{diagram:()=>zre});var Fre,zre,fvt=R(()=>{"use strict";Oyt();Byt();lvt();uvt();Fre=Pb.parse.bind(Pb);Pb.parse=e=>Fre(cvt(e));zre={parser:Pb,db:Pyt,renderer:ovt}});var mvt,XF,Ure,Hre,Wre,Yre,qre,Ff,jF=R(()=>{"use strict";js();hl();_r();Ci();mvt={packet:[]},XF=structuredClone(mvt),Ure=Er.packet,Hre=o(()=>{let e=Ss({...Ure,...Nr().packet});return e.showBits&&(e.paddingY+=10),e},"getConfig"),Wre=o(()=>XF.packet,"getPacket"),Yre=o(e=>{e.length>0&&XF.packet.push(e)},"pushWord"),qre=o(()=>{Ar(),XF=structuredClone(mvt)},"clear"),Ff={pushWord:Yre,getPacket:Wre,getConfig:Hre,clear:qre,setAccTitle:Mr,getAccTitle:Br,setDiagramTitle:cn,getDiagramTitle:Jr,getAccDescription:zr,setAccDescription:Fr}});var Xre,jre,Kre,gvt,yvt=R(()=>{"use strict";Hg();ce();Dx();jF();Xre=1e4,jre=o(e=>{pf(e,Ff);let t=-1,r=[],n=1,{bitsPerRow:i}=Ff.getConfig();for(let{start:a,end:s,label:l}of e.blocks){if(s&&s{if(e.end===void 0&&(e.end=e.start),e.start>e.end)throw new Error(`Block start ${e.start} is greater than block end ${e.end}.`);return e.end+1<=t*r?[e,void 0]:[{start:e.start,end:t*r-1,label:e.label},{start:t*r,end:e.end,label:e.label}]},"getNextFittingBlock"),gvt={parse:o(async e=>{let t=await Ul("packet",e);V.debug(t),jre(t)},"parse")}});var Qre,Zre,vvt,xvt=R(()=>{"use strict";xf();Jn();Qre=o((e,t,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=Vs(t);y.attr("viewbox",`0 0 ${g} ${m}`),Pr(y,m,g,a.useMaxWidth);for(let[v,x]of f.entries())Zre(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"),Zre=o((e,t,r,{rowHeight:n,paddingX:i,paddingY:a,bitWidth:s,bitsPerRow:l,showBits:u})=>{let h=e.append("g"),f=r*(n+a)+a;for(let d of t){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"),vvt={draw:Qre}});var Jre,bvt,wvt=R(()=>{"use strict";_r();Jre={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},bvt=o(({packet:e}={})=>{let t=Ss(Jre,e);return` + .packetByte { + font-size: ${t.byteFontSize}; + } + .packetByte.start { + fill: ${t.startByteColor}; + } + .packetByte.end { + fill: ${t.endByteColor}; + } + .packetLabel { + fill: ${t.labelColor}; + font-size: ${t.labelFontSize}; + } + .packetTitle { + fill: ${t.titleColor}; + font-size: ${t.titleFontSize}; + } + .packetBlock { + stroke: ${t.blockStrokeColor}; + stroke-width: ${t.blockStrokeWidth}; + fill: ${t.blockFillColor}; + } + `},"styles")});var Tvt={};xr(Tvt,{diagram:()=>tne});var tne,kvt=R(()=>{"use strict";jF();yvt();xvt();wvt();tne={parser:gvt,db:Ff,renderer:vvt,styles:bvt}});var KF,Svt,Avt=R(()=>{"use strict";KF=function(){var e=o(function(w,S,T,E){for(T=T||{},E=w.length;E--;T[w[E]]=S);return T},"o"),t=[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(S,T,E,_,A,L,M){var N=L.length-1;switch(A){case 4:_.getLogger().debug("Rule: separator (NL) ");break;case 5:_.getLogger().debug("Rule: separator (Space) ");break;case 6:_.getLogger().debug("Rule: separator (EOF) ");break;case 7:_.getLogger().debug("Rule: hierarchy: ",L[N-1]),_.setHierarchy(L[N-1]);break;case 8:_.getLogger().debug("Stop NL ");break;case 9:_.getLogger().debug("Stop EOF ");break;case 10:_.getLogger().debug("Stop NL2 ");break;case 11:_.getLogger().debug("Stop EOF2 ");break;case 12:_.getLogger().debug("Rule: statement: ",L[N]),typeof L[N].length=="number"?this.$=L[N]:this.$=[L[N]];break;case 13:_.getLogger().debug("Rule: statement #2: ",L[N-1]),this.$=[L[N-1]].concat(L[N]);break;case 14:_.getLogger().debug("Rule: link: ",L[N],S),this.$={edgeTypeStr:L[N],label:""};break;case 15:_.getLogger().debug("Rule: LABEL link: ",L[N-3],L[N-1],L[N]),this.$={edgeTypeStr:L[N],label:L[N-1]};break;case 18:let k=parseInt(L[N]),I=_.generateId();this.$={id:I,type:"space",label:"",width:k,children:[]};break;case 23:_.getLogger().debug("Rule: (nodeStatement link node) ",L[N-2],L[N-1],L[N]," typestr: ",L[N-1].edgeTypeStr);let C=_.edgeStrToEdgeData(L[N-1].edgeTypeStr);this.$=[{id:L[N-2].id,label:L[N-2].label,type:L[N-2].type,directions:L[N-2].directions},{id:L[N-2].id+"-"+L[N].id,start:L[N-2].id,end:L[N].id,label:L[N-1].label,type:"edge",directions:L[N].directions,arrowTypeEnd:C,arrowTypeStart:"arrow_open"},{id:L[N].id,label:L[N].label,type:_.typeStr2Type(L[N].typeStr),directions:L[N].directions}];break;case 24:_.getLogger().debug("Rule: nodeStatement (abc88 node size) ",L[N-1],L[N]),this.$={id:L[N-1].id,label:L[N-1].label,type:_.typeStr2Type(L[N-1].typeStr),directions:L[N-1].directions,widthInColumns:parseInt(L[N],10)};break;case 25:_.getLogger().debug("Rule: nodeStatement (node) ",L[N]),this.$={id:L[N].id,label:L[N].label,type:_.typeStr2Type(L[N].typeStr),directions:L[N].directions,widthInColumns:1};break;case 26:_.getLogger().debug("APA123",this?this:"na"),_.getLogger().debug("COLUMNS: ",L[N]),this.$={type:"column-setting",columns:L[N]==="auto"?-1:parseInt(L[N])};break;case 27:_.getLogger().debug("Rule: id-block statement : ",L[N-2],L[N-1]);let O=_.generateId();this.$={...L[N-2],type:"composite",children:L[N-1]};break;case 28:_.getLogger().debug("Rule: blockStatement : ",L[N-2],L[N-1],L[N]);let D=_.generateId();this.$={id:D,type:"composite",label:"",children:L[N-1]};break;case 29:_.getLogger().debug("Rule: node (NODE_ID separator): ",L[N]),this.$={id:L[N]};break;case 30:_.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",L[N-1],L[N]),this.$={id:L[N-1],label:L[N].label,typeStr:L[N].typeStr,directions:L[N].directions};break;case 31:_.getLogger().debug("Rule: dirList: ",L[N]),this.$=[L[N]];break;case 32:_.getLogger().debug("Rule: dirList: ",L[N-1],L[N]),this.$=[L[N-1]].concat(L[N]);break;case 33:_.getLogger().debug("Rule: nodeShapeNLabel: ",L[N-2],L[N-1],L[N]),this.$={typeStr:L[N-2]+L[N],label:L[N-1]};break;case 34:_.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",L[N-3],L[N-2]," #3:",L[N-1],L[N]),this.$={typeStr:L[N-3]+L[N],label:L[N-2],directions:L[N-1]};break;case 35:case 36:this.$={type:"classDef",id:L[N-1].trim(),css:L[N].trim()};break;case 37:this.$={type:"applyClass",id:L[N-1].trim(),styleClass:L[N].trim()};break;case 38:this.$={type:"applyStyles",id:L[N-1].trim(),stylesStr:L[N].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:n,31:i,32:a,40:s,44:l,47:u},{8:[1,20]},e(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:t,28:r,29:n,31:i,32:a,40:s,44:l,47:u}),e(f,[2,16],{14:22,15:d,16:p}),e(f,[2,17]),e(f,[2,18]),e(f,[2,19]),e(f,[2,20]),e(f,[2,21]),e(f,[2,22]),e(m,[2,25],{27:[1,25]}),e(f,[2,26]),{19:26,26:12,32:a},{11:27,13:4,19:5,20:6,21:t,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]},e(g,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},e(h,[2,13]),{26:35,32:a},{32:[2,14]},{17:[1,36]},e(m,[2,24]),{11:37,13:4,14:22,15:d,16:p,19:5,20:6,21:t,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]},e(g,[2,30]),{18:[1,43]},{18:[1,44]},e(m,[2,23]),{18:[1,45]},{30:[1,46]},e(f,[2,28]),e(f,[2,35]),e(f,[2,36]),e(f,[2,37]),e(f,[2,38]),{37:[1,47]},{34:48,35:y},{15:[1,50]},e(f,[2,27]),e(g,[2,33]),{39:[1,51]},{34:52,35:y,39:[2,31]},{32:[2,15]},e(g,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:o(function(S,T){if(T.recoverable)this.trace(S);else{var E=new Error(S);throw E.hash=T,E}},"parseError"),parse:o(function(S){var T=this,E=[0],_=[],A=[null],L=[],M=this.table,N="",k=0,I=0,C=0,O=2,D=1,P=L.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(S,B.yy),B.yy.lexer=F,B.yy.parser=this,typeof F.yylloc>"u"&&(F.yylloc={});var z=F.yylloc;L.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 Q(it){E.length=E.length-2*it,A.length=A.length-it,L.length=L.length-it}o(Q,"popStack");function j(){var it;return it=_.pop()||F.lex()||D,typeof it!="number"&&(it instanceof Array&&(_=it,it=_.pop()),it=T.symbols_[it]||it),it}o(j,"lex");for(var at,X,J,Z,H,q,K={},ot,ct,ut,et;;){if(J=E[E.length-1],this.defaultActions[J]?Z=this.defaultActions[J]:((at===null||typeof at>"u")&&(at=j()),Z=M[J]&&M[J][at]),typeof Z>"u"||!Z.length||!Z[0]){var Mt="";et=[];for(ot in M[J])this.terminals_[ot]&&ot>O&&et.push("'"+this.terminals_[ot]+"'");F.showPosition?Mt="Parse error on line "+(k+1)+`: +`+F.showPosition()+` +Expecting `+et.join(", ")+", got '"+(this.terminals_[at]||at)+"'":Mt="Parse error on line "+(k+1)+": Unexpected "+(at==D?"end of input":"'"+(this.terminals_[at]||at)+"'"),this.parseError(Mt,{text:F.match,token:this.terminals_[at]||at,line:F.yylineno,loc:z,expected:et})}if(Z[0]instanceof Array&&Z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+at);switch(Z[0]){case 1:E.push(at),A.push(F.yytext),L.push(F.yylloc),E.push(Z[1]),at=null,X?(at=X,X=null):(I=F.yyleng,N=F.yytext,k=F.yylineno,z=F.yylloc,C>0&&C--);break;case 2:if(ct=this.productions_[Z[1]][1],K.$=A[A.length-ct],K._$={first_line:L[L.length-(ct||1)].first_line,last_line:L[L.length-1].last_line,first_column:L[L.length-(ct||1)].first_column,last_column:L[L.length-1].last_column},W&&(K._$.range=[L[L.length-(ct||1)].range[0],L[L.length-1].range[1]]),q=this.performAction.apply(K,[N,I,k,B.yy,Z[1],A,L].concat(P)),typeof q<"u")return q;ct&&(E=E.slice(0,-1*ct*2),A=A.slice(0,-1*ct),L=L.slice(0,-1*ct)),E.push(this.productions_[Z[1]][0]),A.push(K.$),L.push(K._$),ut=M[E[E.length-2]][E[E.length-1]],E.push(ut);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(S,T){return this.yy=T||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 T=S.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),S},"input"),unput:o(function(S){var T=S.length,E=S.split(/(?:\r\n?|\n)/g);this._input=S+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-T),this.offset-=T;var _=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 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:E?(E.length===_.length?this.yylloc.first_column:0)+_[_.length-E.length].length-E[0].length:this.yylloc.first_column-T},this.options.ranges&&(this.yylloc.range=[A[0],A[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(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(),T=new Array(S.length+1).join("-");return S+this.upcomingInput()+` +`+T+"^"},"showPosition"),test_match:o(function(S,T){var E,_,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[0].match(/(?:\r\n?|\n).*/g),_&&(this.yylineno+=_.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:_?_[_.length-1].length-_[_.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],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 L in A)this[L]=A[L];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var S,T,E,_;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),L=0;LT[0].length)){if(T=E,_=L,this.options.backtrack_lexer){if(S=this.test_match(E,A[L]),S!==!1)return S;if(this._backtrack){T=!1;continue}else return!1}else if(!this.options.flex)break}return T?(S=this.test_match(T,A[_]),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 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,_,A){var L=A;switch(_){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}();KF.parser=KF;Svt=KF});function une(e){switch(V.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return V.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 hne(e){switch(V.debug("typeStr2Type",e),e){case"==":return"thick";default:return"normal"}}function fne(e){switch(e.trim()){case"--x":return"arrow_cross";case"--o":return"arrow_circle";default:return"arrow_point"}}var Ql,ZF,QF,_vt,Lvt,nne,Rvt,ine,ZC,ane,sne,one,lne,Nvt,JF,$b,cne,Dvt,dne,pne,mne,gne,yne,vne,xne,bne,wne,Tne,kne,Mvt,Ivt=R(()=>{"use strict";wD();js();Ue();ce();hr();Ci();Ql=new Map,ZF=[],QF=new Map,_vt="color",Lvt="fill",nne="bgFill",Rvt=",",ine=pt(),ZC=new Map,ane=o(e=>Yt.sanitizeText(e,ine),"sanitizeText"),sne=o(function(e,t=""){let r=ZC.get(e);r||(r={id:e,styles:[],textStyles:[]},ZC.set(e,r)),t?.split(Rvt).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(_vt).exec(n)){let s=i.replace(Lvt,nne).replace(_vt,Lvt);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),one=o(function(e,t=""){let r=Ql.get(e);t!=null&&(r.styles=t.split(Rvt))},"addStyle2Node"),lne=o(function(e,t){e.split(",").forEach(function(r){let n=Ql.get(r);if(n===void 0){let i=r.trim();n={id:i,type:"na",children:[]},Ql.set(i,n)}n.classes||(n.classes=[]),n.classes.push(t)})},"setCssClass"),Nvt=o((e,t)=>{let r=e.flat(),n=[];for(let i of r){if(i.label&&(i.label=ane(i.label)),i.type==="classDef"){sne(i.id,i.css);continue}if(i.type==="applyClass"){lne(i.id,i?.styleClass??"");continue}if(i.type==="applyStyles"){i?.stylesStr&&one(i.id,i?.stylesStr);continue}if(i.type==="column-setting")t.columns=i.columns??-1;else if(i.type==="edge"){let a=(QF.get(i.id)??0)+1;QF.set(i.id,a),i.id=a+"-"+i.id,ZF.push(i)}else{i.label||(i.type==="composite"?i.label="":i.label=i.id);let a=Ql.get(i.id);if(a===void 0?Ql.set(i.id,i):(i.type!=="na"&&(a.type=i.type),i.label!==i.id&&(a.label=i.label)),i.children&&Nvt(i.children,i),i.type==="space"){let s=i.width??1;for(let l=0;l{V.debug("Clear called"),Ar(),$b={id:"root",type:"composite",children:[],columns:-1},Ql=new Map([["root",$b]]),JF=[],ZC=new Map,ZF=[],QF=new Map},"clear");o(une,"typeStr2Type");o(hne,"edgeTypeStr2Type");o(fne,"edgeStrToEdgeData");Dvt=0,dne=o(()=>(Dvt++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Dvt),"generateId"),pne=o(e=>{$b.children=e,Nvt(e,$b),JF=$b.children},"setHierarchy"),mne=o(e=>{let t=Ql.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1},"getColumns"),gne=o(()=>[...Ql.values()],"getBlocksFlat"),yne=o(()=>JF||[],"getBlocks"),vne=o(()=>ZF,"getEdges"),xne=o(e=>Ql.get(e),"getBlock"),bne=o(e=>{Ql.set(e.id,e)},"setBlock"),wne=o(()=>console,"getLogger"),Tne=o(function(){return ZC},"getClasses"),kne={getConfig:o(()=>Nr().block,"getConfig"),typeStr2Type:une,edgeTypeStr2Type:hne,edgeStrToEdgeData:fne,getLogger:wne,getBlocksFlat:gne,getBlocks:yne,getEdges:vne,setHierarchy:pne,getBlock:xne,setBlock:bne,getColumns:mne,getClasses:Tne,clear:cne,generateId:dne},Mvt=kne});var JC,Ene,Ovt,Pvt=R(()=>{"use strict";ul();JC=o((e,t)=>{let r=ay,n=r(e,"r"),i=r(e,"g"),a=r(e,"b");return Xs(n,i,a,t)},"fade"),Ene=o(e=>`.label { + font-family: ${e.fontFamily}; + color: ${e.nodeTextColor||e.textColor}; + } + .cluster-label text { + fill: ${e.titleColor}; + } + .cluster-label span,p { + color: ${e.titleColor}; + } + + + + .label text,span,p { + fill: ${e.nodeTextColor||e.textColor}; + color: ${e.nodeTextColor||e.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${e.mainBkg}; + stroke: ${e.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: ${e.arrowheadColor}; + } + + .edgePath .path { + stroke: ${e.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${e.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${e.edgeLabelBackground}; + rect { + opacity: 0.5; + background-color: ${e.edgeLabelBackground}; + fill: ${e.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${JC(e.edgeLabelBackground,.5)}; + // background-color: + } + + .node .cluster { + // fill: ${JC(e.mainBkg,.5)}; + fill: ${JC(e.clusterBkg,.5)}; + stroke: ${JC(e.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: ${e.titleColor}; + } + + .cluster span,p { + color: ${e.titleColor}; + } + /* .cluster div { + color: ${e.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${e.fontFamily}; + font-size: 12px; + background: ${e.tertiaryColor}; + border: 1px solid ${e.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; + } +`,"getStyles"),Ovt=Ene});function Cne(e,t){if(e===0||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);if(e<0)return{px:t,py:0};if(e===1)return{px:0,py:t};let r=t%e,n=Math.floor(t/e);return{px:r,py:n}}function tz(e,t,r=0,n=0){V.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"sieblingWidth",r),e?.size?.width||(e.size={width:r,height:n,x:0,y:0});let i=0,a=0;if(e.children?.length>0){for(let m of e.children)tz(m,t);let s=Sne(e);i=s.width,a=s.height,V.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",i,a);for(let m of e.children)m.size&&(V.debug(`abc95 Setting size of children of ${e.id} id=${m.id} ${i} ${a} ${JSON.stringify(m.size)}`),m.size.width=i*(m.widthInColumns??1)+bi*((m.widthInColumns??1)-1),m.size.height=a,m.size.x=0,m.size.y=0,V.debug(`abc95 updating size of ${e.id} children child:${m.id} maxWidth:${i} maxHeight:${a}`));for(let m of e.children)tz(m,t,i,a);let l=e.columns??-1,u=0;for(let m of e.children)u+=m.widthInColumns??1;let h=e.children.length;l>0&&l0?Math.min(e.children.length,l):e.children.length;if(m>0){let g=(d-m*bi-bi)/m;V.debug("abc95 (growing to fit) width",e.id,d,e.size?.width,g);for(let y of e.children)y.size&&(y.size.width=g)}}e.size={width:d,height:p,x:0,y:0}}V.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}function Bvt(e,t){V.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);let r=e.columns??-1;if(V.debug("layoutBlocks columns abc95",e.id,"=>",r,e),e.children&&e.children.length>0){let n=e?.children[0]?.size?.width??0,i=e.children.length*n+(e.children.length-1)*bi;V.debug("widthOfChildren 88",i,"posX");let a=0;V.debug("abc91 block?.size?.x",e.id,e?.size?.x);let s=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-bi,l=0;for(let u of e.children){let h=e;if(!u.size)continue;let{width:f,height:d}=u.size,{px:p,py:m}=Cne(r,a);if(m!=l&&(l=m,s=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-bi,V.debug("New row in layout for block",e.id," and child ",u.id,l)),V.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}${bi}`),h.size){let g=f/2;u.size.x=s+bi+g,V.debug(`abc91 layout blocks (calc) px, pyid:${u.id} startingPos=X${s} new startingPosX${u.size.x} ${g} padding=${bi} 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+bi)+d/2+bi,V.debug(`abc88 layout blocks (calc) px, pyid:${u.id}startingPosX${s}${bi}${g}=>x:${u.size.x}y:${u.size.y}${u.widthInColumns}(width * (child?.w || 1)) / 2${f*(u?.widthInColumns??1)/2}`)}u.children&&Bvt(u,t),a+=u?.widthInColumns??1,V.debug("abc88 columnsPos",u,a)}}V.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}function Fvt(e,{minX:t,minY:r,maxX:n,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&e.id!=="root"){let{x:a,y:s,width:l,height:u}=e.size;a-l/2n&&(n=a+l/2),s+u/2>i&&(i=s+u/2)}if(e.children)for(let a of e.children)({minX:t,minY:r,maxX:n,maxY:i}=Fvt(a,{minX:t,minY:r,maxX:n,maxY:i}));return{minX:t,minY:r,maxX:n,maxY:i}}function zvt(e){let t=e.getBlock("root");if(!t)return;tz(t,e,0,0),Bvt(t,e),V.debug("getBlocks",JSON.stringify(t,null,2));let{minX:r,minY:n,maxX:i,maxY:a}=Fvt(t),s=a-n,l=i-r;return{x:r,y:n,width:l,height:s}}var bi,Sne,$vt=R(()=>{"use strict";ce();Ue();bi=pt()?.block?.padding??8;o(Cne,"calculateBlockPosition");Sne=o(e=>{let t=0,r=0;for(let n of e.children){let{width:i,height:a,x:s,y:l}=n.size??{width:0,height:0,x:0,y:0};V.debug("getMaxChildSize abc95 child:",n.id,"width:",i,"height:",a,"x:",s,"y:",l,n.type),n.type!=="space"&&(i>t&&(t=i/(e.widthInColumns??1)),a>r&&(r=a))}return{width:t,height:r}},"getMaxChildSize");o(tz,"setBlockSizes");o(Bvt,"layoutBlocks");o(Fvt,"findBounds");o(zvt,"layout")});function Gvt(e,t,r=!1){let n=e,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=gm(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??Nr()?.block?.padding??0}}async function Ane(e,t,r){let n=Gvt(t,r,!1);if(n.type==="group")return;let i=Nr(),a=await jx(e,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 _ne(e,t,r){let n=Gvt(t,r,!0);if(r.getBlock(n.id).type!=="space"){let a=Nr();await jx(e,n,{config:a}),t.intersect=n?.intersect,Kx(n)}}async function ez(e,t,r,n){for(let i of t)await n(e,i,r),i.children&&await ez(e,i.children,r,n)}async function Vvt(e,t,r){await ez(e,t,r,Ane)}async function Uvt(e,t,r){await ez(e,t,r,_ne)}async function Hvt(e,t,r,n,i){let a=new yr({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 t)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}];L6(e,{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 A6(e,{...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"}),_6({...s,x:d[1].x,y:d[1].y},{originalPath:d}))}}}var Wvt=R(()=>{"use strict";wa();js();$P();zP();_r();o(Gvt,"getNodeFromBlock");o(Ane,"calculateBlockSize");o(_ne,"insertBlockPositioned");o(ez,"performOperations");o(Vvt,"calculateBlockSizes");o(Uvt,"insertBlocks");o(Hvt,"insertEdges")});var Lne,Dne,Yvt,qvt=R(()=>{"use strict";ur();js();IP();ce();Jn();$vt();Wvt();Lne=o(function(e,t){return t.db.getClasses()},"getClasses"),Dne=o(async function(e,t,r,n){let{securityLevel:i,block:a}=Nr(),s=n.db,l;i==="sandbox"&&(l=Gt("#i"+t));let u=i==="sandbox"?Gt(l.nodes()[0].contentDocument.body):Gt("body"),h=i==="sandbox"?u.select(`[id="${t}"]`):Gt(`[id="${t}"]`);b6(h,["point","circle","cross"],n.type,t);let d=s.getBlocks(),p=s.getBlocksFlat(),m=s.getEdges(),g=h.insert("g").attr("class","block");await Vvt(g,d,s);let y=zvt(s);if(await Uvt(g,d,s),await Hvt(g,m,p,s,t),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:S}=a;Pr(h,b,w,!!S),V.debug("Here Bounds",y,v),h.attr("viewBox",`${v.x-5} ${v.y-5} ${v.width+10} ${v.height+10}`)}},"draw"),Yvt={draw:Dne,getClasses:Lne}});var Xvt={};xr(Xvt,{diagram:()=>Rne});var Rne,jvt=R(()=>{"use strict";Avt();Ivt();Pvt();qvt();Rne={parser:Svt,db:Mvt,renderer:Yvt,styles:Ovt}});var rz,nz,Gb,Zvt,iz,ds,eu,tS,Jvt,One,Vb,t2t,e2t,r2t,n2t,eS,zf,rS=R(()=>{"use strict";rz={L:"left",R:"right",T:"top",B:"bottom"},nz={L:o(e=>`${e},${e/2} 0,${e} 0,0`,"L"),R:o(e=>`0,${e/2} ${e},0 ${e},${e}`,"R"),T:o(e=>`0,0 ${e},0 ${e/2},${e}`,"T"),B:o(e=>`${e/2},0 ${e},${e} 0,${e}`,"B")},Gb={L:o((e,t)=>e-t+2,"L"),R:o((e,t)=>e-2,"R"),T:o((e,t)=>e-t+2,"T"),B:o((e,t)=>e-2,"B")},Zvt=o(function(e){return ds(e)?e==="L"?"R":"L":e==="T"?"B":"T"},"getOppositeArchitectureDirection"),iz=o(function(e){let t=e;return t==="L"||t==="R"||t==="T"||t==="B"},"isArchitectureDirection"),ds=o(function(e){let t=e;return t==="L"||t==="R"},"isArchitectureDirectionX"),eu=o(function(e){let t=e;return t==="T"||t==="B"},"isArchitectureDirectionY"),tS=o(function(e,t){let r=ds(e)&&eu(t),n=eu(e)&&ds(t);return r||n},"isArchitectureDirectionXY"),Jvt=o(function(e){let t=e[0],r=e[1],n=ds(t)&&eu(r),i=eu(t)&&ds(r);return n||i},"isArchitecturePairXY"),One=o(function(e){return e!=="LL"&&e!=="RR"&&e!=="TT"&&e!=="BB"},"isValidArchitectureDirectionPair"),Vb=o(function(e,t){let r=`${e}${t}`;return One(r)?r:void 0},"getArchitectureDirectionPair"),t2t=o(function([e,t],r){let n=r[0],i=r[1];return ds(n)?eu(i)?[e+(n==="L"?-1:1),t+(i==="T"?1:-1)]:[e+(n==="L"?-1:1),t]:ds(i)?[e+(i==="L"?1:-1),t+(n==="T"?1:-1)]:[e,t+(n==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),e2t=o(function(e){return e==="LT"||e==="TL"?[1,1]:e==="BL"||e==="LB"?[1,-1]:e==="BR"||e==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),r2t=o(function(e){return e.type==="service"},"isArchitectureService"),n2t=o(function(e){return e.type==="junction"},"isArchitectureJunction"),eS=o(e=>e.data(),"edgeData"),zf=o(e=>e.data(),"nodeData")});function Di(e){let t=pt().architecture;return t?.[e]?t[e]:i2t[e]}var i2t,pr,Pne,Bne,Fne,zne,$ne,Gne,Vne,Une,Hne,Wne,Yne,qne,Xne,jne,ap,Ub=R(()=>{"use strict";hl();Ue();HE();Ci();rS();i2t=Er.architecture,pr=new mf(()=>({nodes:{},groups:{},edges:[],registeredIds:{},config:i2t,dataStructures:void 0,elements:{}})),Pne=o(()=>{pr.reset(),Ar()},"clear"),Bne=o(function({id:e,icon:t,in:r,title:n,iconText:i}){if(pr.records.registeredIds[e]!==void 0)throw new Error(`The service id [${e}] is already in use by another ${pr.records.registeredIds[e]}`);if(r!==void 0){if(e===r)throw new Error(`The service [${e}] cannot be placed within itself`);if(pr.records.registeredIds[r]===void 0)throw new Error(`The service [${e}]'s parent does not exist. Please make sure the parent is created before this service`);if(pr.records.registeredIds[r]==="node")throw new Error(`The service [${e}]'s parent is not a group`)}pr.records.registeredIds[e]="node",pr.records.nodes[e]={id:e,type:"service",icon:t,iconText:i,title:n,edges:[],in:r}},"addService"),Fne=o(()=>Object.values(pr.records.nodes).filter(r2t),"getServices"),zne=o(function({id:e,in:t}){pr.records.registeredIds[e]="node",pr.records.nodes[e]={id:e,type:"junction",edges:[],in:t}},"addJunction"),$ne=o(()=>Object.values(pr.records.nodes).filter(n2t),"getJunctions"),Gne=o(()=>Object.values(pr.records.nodes),"getNodes"),Vne=o(e=>pr.records.nodes[e],"getNode"),Une=o(function({id:e,icon:t,in:r,title:n}){if(pr.records.registeredIds[e]!==void 0)throw new Error(`The group id [${e}] is already in use by another ${pr.records.registeredIds[e]}`);if(r!==void 0){if(e===r)throw new Error(`The group [${e}] cannot be placed within itself`);if(pr.records.registeredIds[r]===void 0)throw new Error(`The group [${e}]'s parent does not exist. Please make sure the parent is created before this group`);if(pr.records.registeredIds[r]==="node")throw new Error(`The group [${e}]'s parent is not a group`)}pr.records.registeredIds[e]="group",pr.records.groups[e]={id:e,icon:t,title:n,in:r}},"addGroup"),Hne=o(()=>Object.values(pr.records.groups),"getGroups"),Wne=o(function({lhsId:e,rhsId:t,lhsDir:r,rhsDir:n,lhsInto:i,rhsInto:a,lhsGroup:s,rhsGroup:l,title:u}){if(!iz(r))throw new Error(`Invalid direction given for left hand side of edge ${e}--${t}. Expected (L,R,T,B) got ${r}`);if(!iz(n))throw new Error(`Invalid direction given for right hand side of edge ${e}--${t}. Expected (L,R,T,B) got ${n}`);if(pr.records.nodes[e]===void 0&&pr.records.groups[e]===void 0)throw new Error(`The left-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(pr.records.nodes[t]===void 0&&pr.records.groups[e]===void 0)throw new Error(`The right-hand id [${t}] does not yet exist. Please create the service/group before declaring an edge to it.`);let h=pr.records.nodes[e].in,f=pr.records.nodes[t].in;if(s&&h&&f&&h==f)throw new Error(`The left-hand id [${e}] 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 [${t}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let d={lhsId:e,lhsDir:r,lhsInto:i,lhsGroup:s,rhsId:t,rhsDir:n,rhsInto:a,rhsGroup:l,title:u};pr.records.edges.push(d),pr.records.nodes[e]&&pr.records.nodes[t]&&(pr.records.nodes[e].edges.push(pr.records.edges[pr.records.edges.length-1]),pr.records.nodes[t].edges.push(pr.records.edges[pr.records.edges.length-1]))},"addEdge"),Yne=o(()=>pr.records.edges,"getEdges"),qne=o(()=>{if(pr.records.dataStructures===void 0){let e=Object.entries(pr.records.nodes).reduce((s,[l,u])=>(s[l]=u.edges.reduce((h,f)=>{if(f.lhsId===l){let d=Vb(f.lhsDir,f.rhsDir);d&&(h[d]=f.rhsId)}else{let d=Vb(f.rhsDir,f.lhsDir);d&&(h[d]=f.lhsId)}return h},{}),s),{}),t=Object.keys(e)[0],r={[t]:1},n=Object.keys(e).reduce((s,l)=>l===t?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=e[h],[d,p]=l[h];Object.entries(f).forEach(([m,g])=>{r[g]||(l[g]=t2t([d,p],m),u.push(g))})}}return l},"BFS"),a=[i(t)];for(;Object.keys(n).length>0;)a.push(i(Object.keys(n)[0]));pr.records.dataStructures={adjList:e,spatialMaps:a}}return pr.records.dataStructures},"getDataStructures"),Xne=o((e,t)=>{pr.records.elements[e]=t},"setElementForId"),jne=o(e=>pr.records.elements[e],"getElementById"),ap={clear:Pne,setDiagramTitle:cn,getDiagramTitle:Jr,setAccTitle:Mr,getAccTitle:Br,setAccDescription:Fr,getAccDescription:zr,addService:Bne,getServices:Fne,addJunction:zne,getJunctions:$ne,getNodes:Gne,getNode:Vne,addGroup:Une,getGroups:Hne,addEdge:Wne,getEdges:Yne,setElementForId:Xne,getElementById:jne,getDataStructures:qne};o(Di,"getConfigField")});var Kne,a2t,s2t=R(()=>{"use strict";Hg();ce();Dx();Ub();Kne=o((e,t)=>{pf(e,t),e.groups.map(t.addGroup),e.services.map(r=>t.addService({...r,type:"service"})),e.junctions.map(r=>t.addJunction({...r,type:"junction"})),e.edges.map(t.addEdge)},"populateDb"),a2t={parse:o(async e=>{let t=await Ul("architecture",e);V.debug(t),Kne(t,ap)},"parse")}});var Qne,o2t,l2t=R(()=>{"use strict";Qne=o(e=>` + .edge { + stroke-width: ${e.archEdgeWidth}; + stroke: ${e.archEdgeColor}; + fill: none; + } + + .arrow { + fill: ${e.archEdgeArrowColor}; + } + + .node-bkg { + fill: none; + stroke: ${e.archGroupBorderColor}; + stroke-width: ${e.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"),o2t=Qne});var sz=Ti((Hb,az)=>{"use strict";o(function(t,r){typeof Hb=="object"&&typeof az=="object"?az.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Hb=="object"?Hb.layoutBase=r():t.layoutBase=r()},"webpackUniversalModuleDefinition")(Hb,function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=e,r.c=t,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(e,t,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,e.exports=n},function(e,t,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)},e.exports=s},function(e,t,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),e.exports=n},function(e,t,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()},e.exports=h},function(e,t,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,e.exports=i},function(e,t,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},e.exports=n},function(e,t,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 S=x.source.owner.getEdges().indexOf(x);if(S==-1)throw"Not in owner's edge list!";x.source.owner.getEdges().splice(S,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,v,x,b,w=this.getNodes(),S=w.length,T=0;Tv&&(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,S,T,E,_,A=this.nodes,L=A.length,M=0;Mw&&(y=w),vT&&(x=T),bw&&(y=w),vT&&(x=T),b=this.nodes.length){var L=0;v.forEach(function(M){M.owner==g&&L++}),L==this.nodes.length&&(this.isConnected=!0)}},e.exports=p},function(e,t,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]=A,!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===D&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=x,l[1]=v,k=!0)),-O===D?f>u?(l[2]=_,l[3]=A,I=!0):(l[2]=E,l[3]=T,I=!0):O===D&&(f>u?(l[2]=S,l[3]=T,I=!0):(l[2]=L,l[3]=A,I=!0)),k&&I)return!1;if(u>f?h>d?(P=this.getCardinalDirection(C,D,4),F=this.getCardinalDirection(O,D,2)):(P=this.getCardinalDirection(-C,D,3),F=this.getCardinalDirection(-O,D,1)):h>d?(P=this.getCardinalDirection(-C,D,1),F=this.getCardinalDirection(-O,D,3)):(P=this.getCardinalDirection(C,D,2),F=this.getCardinalDirection(O,D,4)),!k)switch(P){case 1:G=m,B=u+-w/D,l[0]=B,l[1]=G;break;case 2:B=x,G=h+b*D,l[0]=B,l[1]=G;break;case 3:G=v,B=u+w/D,l[0]=B,l[1]=G;break;case 4:B=y,G=h+-b*D,l[0]=B,l[1]=G;break}if(!I)switch(F){case 1:W=T,z=f+-N/D,l[2]=z,l[3]=W;break;case 2:z=L,W=d+M*D,l[2]=z,l[3]=W;break;case 3:W=A,z=f+N/D,l[2]=z,l[3]=W;break;case 4:z=_,W=d+-M*D,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,S=void 0,T=void 0,E=void 0,_=void 0,A=void 0,L=void 0;return w=p-f,T=h-d,_=d*f-h*p,S=v-g,E=m-y,A=y*g-m*v,L=w*E-S*T,L===0?null:(x=(T*A-E*_)/L,b=(S*_-w*A)/L,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,e.exports=i},function(e,t,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)},e.exports=n},function(e,t,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,e.exports=n},function(e,t,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"},e.exports=i},function(e,t,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 _=E.getEdges(),x=0;x<_.length;x++){var A=_[x].getOtherEnd(E);if(S.get(E)!=A)if(!b.has(A))w.push(A),S.set(A,E);else{g=!1;break}}}if(!g)m=[];else{var L=[].concat(n(b));m.push(L);for(var x=0;x-1&&T.splice(N,1)}b=new Set,S=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(A,1);var L=S.getNeighborsList();L.forEach(function(k){if(y.indexOf(k)<0){var I=v.get(k),C=I-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},e.exports=p},function(e,t,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)},e.exports=n},function(e,t,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},e.exports=i},function(e,t,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 S=0;Sh},"_defaultCompareFunction")}]),l}();e.exports=s},function(e,t,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(fe){for(var ee=[];fe-- >0;)ee.push(0);return ee}(Math.min(this.m+1,this.n)),this.U=function(fe){var ee=o(function pe(Me){if(Me.length==0)return 0;for(var oe=[],qe=0;qe0;)ee.push(0);return ee}(this.n),l=function(fe){for(var ee=[];fe-- >0;)ee.push(0);return ee}(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;D--)if(this.s[D]!==0){for(var P=D+1;P=0;j--){if(function(fe,ee){return fe&&ee}(j0;){var ut=void 0,et=void 0;for(ut=I-2;ut>=-1&&ut!==-1;ut--)if(Math.abs(s[ut])<=ct+ot*(Math.abs(this.s[ut])+Math.abs(this.s[ut+1]))){s[ut]=0;break}if(ut===I-2)et=4;else{var Mt=void 0;for(Mt=I-1;Mt>=ut&&Mt!==ut;Mt--){var it=(Mt!==I?Math.abs(s[Mt]):0)+(Mt!==ut+1?Math.abs(s[Mt-1]):0);if(Math.abs(this.s[Mt])<=ct+ot*it){this.s[Mt]=0;break}}Mt===ut?et=3:Mt===I-1?et=1:(et=2,ut=Mt)}switch(ut++,et){case 1:{var wt=s[I-2];s[I-2]=0;for(var Ot=I-2;Ot>=ut;Ot--){var St=n.hypot(this.s[Ot],wt),Vt=this.s[Ot]/St,Pt=wt/St;if(this.s[Ot]=St,Ot!==ut&&(wt=-Pt*s[Ot-1],s[Ot-1]=Vt*s[Ot-1]),h)for(var _t=0;_t=this.s[ut+1]);){var ne=this.s[ut];if(this.s[ut]=this.s[ut+1],this.s[ut+1]=ne,h&&utMath.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},e.exports=n},function(e,t,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(t,r){typeof Wb=="object"&&typeof oz=="object"?oz.exports=r(sz()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof Wb=="object"?Wb.coseBase=r(sz()):t.coseBase=r(t.layoutBase)},"webpackUniversalModuleDefinition")(Wb,function(e){return(()=>{"use strict";var t={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,S=l(551).Layout,T=l(551).Integer,E=l(551).IGeometry,_=l(551).LGraph,A=l(551).Transform,L=l(551).LinkedList;function M(){u.call(this),this.toBeTiled={},this.constraints={}}o(M,"CoSELayout"),M.prototype=Object.create(u.prototype);for(var N in u)M[N]=u[N];M.prototype.newGraphManager=function(){var k=new h(this);return this.graphManager=k,k},M.prototype.newGraph=function(k){return new f(null,this.graphManager,k)},M.prototype.newNode=function(k){return new d(this.graphManager,k)},M.prototype.newEdge=function(k){return new p(null,null,k)},M.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)},M.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},M.prototype.layout=function(){var k=v.DEFAULT_CREATE_BENDS_AS_NEEDED;return k&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},M.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 I=new Set(this.getAllNodes()),C=this.nodesWithGravity.filter(function(P){return I.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 I=new Set(this.getAllNodes()),C=this.nodesWithGravity.filter(function(O){return I.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},M.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()),I=this.nodesWithGravity.filter(function(D){return k.has(D)});this.graphManager.setAllNodesToApplyGravitation(I),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},M.prototype.getPositionsData=function(){for(var k=this.graphManager.getAllNodes(),I={},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(J){k.fixedNodesOnHorizontal.add(J),k.fixedNodesOnVertical.add(J)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var G=this.constraints.alignmentConstraint.vertical,C=0;C=2*J.length/3;q--)Z=Math.floor(Math.random()*(q+1)),H=J[q],J[q]=J[Z],J[Z]=H;return J},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(J){if(J.left){var Z=F.has(J.left)?F.get(J.left):J.left,H=F.has(J.right)?F.get(J.right):J.right;k.nodesInRelativeHorizontal.includes(Z)||(k.nodesInRelativeHorizontal.push(Z),k.nodeToRelativeConstraintMapHorizontal.set(Z,[]),k.dummyToNodeForVerticalAlignment.has(Z)?k.nodeToTempPositionMapHorizontal.set(Z,k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(Z)[0]).getCenterX()):k.nodeToTempPositionMapHorizontal.set(Z,k.idToNodeMap.get(Z).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(Z).push({right:H,gap:J.gap}),k.nodeToRelativeConstraintMapHorizontal.get(H).push({left:Z,gap:J.gap})}else{var q=B.has(J.top)?B.get(J.top):J.top,K=B.has(J.bottom)?B.get(J.bottom):J.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(K)||(k.nodesInRelativeVertical.push(K),k.nodeToRelativeConstraintMapVertical.set(K,[]),k.dummyToNodeForHorizontalAlignment.has(K)?k.nodeToTempPositionMapVertical.set(K,k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(K)[0]).getCenterY()):k.nodeToTempPositionMapVertical.set(K,k.idToNodeMap.get(K).getCenterY())),k.nodeToRelativeConstraintMapVertical.get(q).push({bottom:K,gap:J.gap}),k.nodeToRelativeConstraintMapVertical.get(K).push({top:q,gap:J.gap})}});else{var W=new Map,Q=new Map;this.constraints.relativePlacementConstraint.forEach(function(J){if(J.left){var Z=F.has(J.left)?F.get(J.left):J.left,H=F.has(J.right)?F.get(J.right):J.right;W.has(Z)?W.get(Z).push(H):W.set(Z,[H]),W.has(H)?W.get(H).push(Z):W.set(H,[Z])}else{var q=B.has(J.top)?B.get(J.top):J.top,K=B.has(J.bottom)?B.get(J.bottom):J.bottom;Q.has(q)?Q.get(q).push(K):Q.set(q,[K]),Q.has(K)?Q.get(K).push(q):Q.set(K,[q])}});var j=o(function(Z,H){var q=[],K=[],ot=new L,ct=new Set,ut=0;return Z.forEach(function(et,Mt){if(!ct.has(Mt)){q[ut]=[],K[ut]=!1;var it=Mt;for(ot.push(it),ct.add(it),q[ut].push(it);ot.length!=0;){it=ot.shift(),H.has(it)&&(K[ut]=!0);var wt=Z.get(it);wt.forEach(function(Ot){ct.has(Ot)||(ot.push(Ot),ct.add(Ot),q[ut].push(Ot))})}ut++}}),{components:q,isFixed:K}},"constructComponents"),at=j(W,k.fixedNodesOnHorizontal);this.componentsOnHorizontal=at.components,this.fixedComponentsOnHorizontal=at.isFixed;var X=j(Q,k.fixedNodesOnVertical);this.componentsOnVertical=X.components,this.fixedComponentsOnVertical=X.isFixed}}},M.prototype.updateDisplacements=function(){var k=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(X){var J=k.idToNodeMap.get(X.nodeId);J.displacementX=0,J.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var I=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))},M.radialLayout=function(k,I,C){var O=Math.max(this.maxDiagonalInTree(k),m.DEFAULT_RADIAL_SEPARATION);M.branchRadialLayout(I,null,0,359,0,O);var D=_.calculateBounds(k),P=new A;P.setDeviceOrgX(D.getMinX()),P.setDeviceOrgY(D.getMinY()),P.setWorldOrgX(C.x),P.setWorldOrgY(C.y);for(var F=0;F1;){var q=H[0];H.splice(0,1);var K=j.indexOf(q);K>=0&&j.splice(K,1),J--,at--}I!=null?Z=(j.indexOf(H[0])+1)%J:Z=0;for(var ot=Math.abs(O-C)/at,ct=Z;X!=at;ct=++ct%J){var ut=j[ct].getOtherEnd(k);if(ut!=I){var et=(C+X*ot)%360,Mt=(et+ot)%360;M.branchRadialLayout(ut,k,et,Mt,D+P,P),X++}}},M.maxDiagonalInTree=function(k){for(var I=T.MIN_VALUE,C=0;CI&&(I=D)}return I},M.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},M.prototype.groupZeroDegreeMembers=function(){var k=this,I={};this.memberGroups={},this.idToDummyNode={};for(var C=[],O=this.graphManager.getAllNodes(),D=0;D"u"&&(I[B]=[]),I[B]=I[B].concat(P)}Object.keys(I).forEach(function(G){if(I[G].length>1){var z="DummyCompound_"+G;k.memberGroups[z]=I[G];var W=I[G][0].getParent(),Q=new d(k.graphManager);Q.id=z,Q.paddingLeft=W.paddingLeft||0,Q.paddingRight=W.paddingRight||0,Q.paddingBottom=W.paddingBottom||0,Q.paddingTop=W.paddingTop||0,k.idToDummyNode[z]=Q;var j=k.getGraphManager().add(k.newGraph(),Q),at=W.getChild();at.add(Q);for(var X=0;XD?(O.rect.x-=(O.labelWidth-D)/2,O.setWidth(O.labelWidth),O.labelMarginLeft=(O.labelWidth-D)/2):O.labelPosHorizontal=="right"&&O.setWidth(D+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))}})},M.prototype.repopulateCompounds=function(){for(var k=this.compoundOrder.length-1;k>=0;k--){var I=this.compoundOrder[k],C=I.id,O=I.paddingLeft,D=I.paddingTop,P=I.labelMarginLeft,F=I.labelMarginTop;this.adjustLocations(this.tiledMemberPack[C],I.rect.x,I.rect.y,O,D,P,F)}},M.prototype.repopulateZeroDegreeMembers=function(){var k=this,I=this.tiledZeroDegreePack;Object.keys(I).forEach(function(C){var O=k.idToDummyNode[C],D=O.paddingLeft,P=O.paddingTop,F=O.labelMarginLeft,B=O.labelMarginTop;k.adjustLocations(I[C],O.rect.x,O.rect.y,D,P,F,B)})},M.prototype.getToBeTiled=function(k){var I=k.id;if(this.toBeTiled[I]!=null)return this.toBeTiled[I];var C=k.getChild();if(C==null)return this.toBeTiled[I]=!1,!1;for(var O=C.getNodes(),D=0;D0)return this.toBeTiled[I]=!1,!1;if(P.getChild()==null){this.toBeTiled[P.id]=!1;continue}if(!this.getToBeTiled(P))return this.toBeTiled[I]=!1,!1}return this.toBeTiled[I]=!0,!0},M.prototype.getNodeDegree=function(k){for(var I=k.id,C=k.getEdges(),O=0,D=0;DW&&(W=j.rect.height)}C+=W+k.verticalPadding}},M.prototype.tileCompoundMembers=function(k,I){var C=this;this.tiledMemberPack=[],Object.keys(k).forEach(function(O){var D=I[O];if(C.tiledMemberPack[O]=C.tileNodes(k[O],D.paddingLeft+D.paddingRight),D.rect.width=C.tiledMemberPack[O].width,D.rect.height=C.tiledMemberPack[O].height,D.setCenter(C.tiledMemberPack[O].centerX,C.tiledMemberPack[O].centerY),D.labelMarginLeft=0,D.labelMarginTop=0,m.NODE_DIMENSIONS_INCLUDE_LABELS){var P=D.rect.width,F=D.rect.height;D.labelWidth&&(D.labelPosHorizontal=="left"?(D.rect.x-=D.labelWidth,D.setWidth(P+D.labelWidth),D.labelMarginLeft=D.labelWidth):D.labelPosHorizontal=="center"&&D.labelWidth>P?(D.rect.x-=(D.labelWidth-P)/2,D.setWidth(D.labelWidth),D.labelMarginLeft=(D.labelWidth-P)/2):D.labelPosHorizontal=="right"&&D.setWidth(P+D.labelWidth)),D.labelHeight&&(D.labelPosVertical=="top"?(D.rect.y-=D.labelHeight,D.setHeight(F+D.labelHeight),D.labelMarginTop=D.labelHeight):D.labelPosVertical=="center"&&D.labelHeight>F?(D.rect.y-=(D.labelHeight-F)/2,D.setHeight(D.labelHeight),D.labelMarginTop=(D.labelHeight-F)/2):D.labelPosVertical=="bottom"&&D.setHeight(F+D.labelHeight))}})},M.prototype.tileNodes=function(k,I){var C=this.tileNodesByFavoringDim(k,I,!0),O=this.tileNodesByFavoringDim(k,I,!1),D=this.getOrgRatio(C),P=this.getOrgRatio(O),F;return PB&&(B=X.getWidth())});var G=P/D,z=F/D,W=Math.pow(C-O,2)+4*(G+O)*(z+C)*D,Q=(O-C+Math.sqrt(W))/(2*(G+O)),j;I?(j=Math.ceil(Q),j==Q&&j++):j=Math.floor(Q);var at=j*(G+O)-O;return B>at&&(at=B),at+=O*2,at},M.prototype.tileNodesByFavoringDim=function(k,I,C){var O=m.TILING_PADDING_VERTICAL,D=m.TILING_PADDING_HORIZONTAL,P=m.TILING_COMPARE_BY,F={rows:[],rowWidth:[],rowHeight:[],width:0,height:I,verticalPadding:O,horizontalPadding:D,centerX:0,centerY:0};P&&(F.idealRowWidth=this.calcIdealRowWidth(k,C));var B=o(function(J){return J.rect.width*J.rect.height},"getNodeArea"),G=o(function(J,Z){return B(Z)-B(J)},"areaCompareFcn");k.sort(function(X,J){var Z=G;return F.idealRowWidth?(Z=P,Z(X.id,J.id)):Z(X,J)});for(var z=0,W=0,Q=0;Q0&&(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(I)},M.prototype.getShortestRowIndex=function(k){for(var I=-1,C=Number.MAX_VALUE,O=0;OC&&(I=O,C=k.rowWidth[O]);return I},M.prototype.canAddHorizontal=function(k,I,C){if(k.idealRowWidth){var O=k.rows.length-1,D=k.rowWidth[O];return D+I+k.horizontalPadding<=k.idealRowWidth}var P=this.getShortestRowIndex(k);if(P<0)return!0;var F=k.rowWidth[P];if(F+k.horizontalPadding+I<=k.width)return!0;var B=0;k.rowHeight[P]0&&(B=C+k.verticalPadding-k.rowHeight[P]);var G;k.width-F>=I+k.horizontalPadding?G=(k.height+B)/(F+I+k.horizontalPadding):G=(k.height+B)/k.width,B=C+k.verticalPadding;var z;return k.widthP&&I!=C){O.splice(-1,1),k.rows[C].push(D),k.rowWidth[I]=k.rowWidth[I]-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);I>0&&(F+=k.verticalPadding);var G=k.rowHeight[I]+k.rowHeight[C];k.rowHeight[I]=F,k.rowHeight[C]0)for(var at=D;at<=P;at++)j[0]+=this.grid[at][F-1].length+this.grid[at][F].length-1;if(P0)for(var at=F;at<=B;at++)j[3]+=this.grid[D-1][at].length+this.grid[D][at].length-1;for(var X=T.MAX_VALUE,J,Z,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 me=0;Zt.forEach(function(ne){Tt=="horizontal"?(yt.set(ne,x.has(ne)?b[x.get(ne)]:Ct.get(ne)),me+=yt.get(ne)):(yt.set(ne,x.has(ne)?w[x.get(ne)]:Ct.get(ne)),me+=yt.get(ne))}),me=me/Zt.length,le.forEach(function(ne){kt.has(ne)||yt.set(ne,me)})}else{var Ht=0;le.forEach(function(ne){Tt=="horizontal"?Ht+=x.has(ne)?b[x.get(ne)]:Ct.get(ne):Ht+=x.has(ne)?w[x.get(ne)]:Ct.get(ne)}),Ht=Ht/le.length,le.forEach(function(ne){yt.set(ne,Ht)})}});for(var ae=o(function(){var Zt=zt.shift(),me=st.get(Zt);me.forEach(function(Ht){if(yt.get(Ht.id)ne&&(ne=oe),qexe&&(xe=qe)}}catch(Pn){Ye=!0,fe=Pn}finally{try{!Se&&ee.return&&ee.return()}finally{if(Ye)throw fe}}var Cr=(me+ne)/2-(Ht+xe)/2,En=!0,or=!1,ln=void 0;try{for(var Ir=le[Symbol.iterator](),ii;!(En=(ii=Ir.next()).done);En=!0){var mn=ii.value;yt.set(mn,yt.get(mn)+Cr)}}catch(Pn){or=!0,ln=Pn}finally{try{!En&&Ir.return&&Ir.return()}finally{if(or)throw ln}}})}return yt},"findAppropriatePositionForRelativePlacement"),N=o(function(st){var Tt=0,kt=0,Ct=0,At=0;if(st.forEach(function(Ut){Ut.left?b[x.get(Ut.left)]-b[x.get(Ut.right)]>=0?Tt++:kt++:w[x.get(Ut.top)]-w[x.get(Ut.bottom)]>=0?Ct++:At++}),Tt>kt&&Ct>At)for(var $t=0;$tkt)for(var Nt=0;NtAt)for(var yt=0;yt1)y.fixedNodeConstraint.forEach(function(nt,st){O[st]=[nt.position.x,nt.position.y],D[st]=[b[x.get(nt.nodeId)],w[x.get(nt.nodeId)]]}),P=!0;else if(y.alignmentConstraint)(function(){var nt=0;if(y.alignmentConstraint.vertical){for(var st=y.alignmentConstraint.vertical,Tt=o(function(yt){var Ut=new Set;st[yt].forEach(function(ke){Ut.add(ke)});var zt=new Set([].concat(u(Ut)).filter(function(ke){return B.has(ke)})),ae=void 0;zt.size>0?ae=b[x.get(zt.values().next().value)]:ae=L(Ut).x,st[yt].forEach(function(ke){O[nt]=[ae,w[x.get(ke)]],D[nt]=[b[x.get(ke)],w[x.get(ke)]],nt++})},"_loop2"),kt=0;kt0?ae=b[x.get(zt.values().next().value)]:ae=L(Ut).y,Ct[yt].forEach(function(ke){O[nt]=[b[x.get(ke)],ae],D[nt]=[b[x.get(ke)],w[x.get(ke)]],nt++})},"_loop3"),$t=0;$tQ&&(Q=W[at].length,j=at);if(Q0){var Vt={x:0,y:0};y.fixedNodeConstraint.forEach(function(nt,st){var Tt={x:b[x.get(nt.nodeId)],y:w[x.get(nt.nodeId)]},kt=nt.position,Ct=A(kt,Tt);Vt.x+=Ct.x,Vt.y+=Ct.y}),Vt.x/=y.fixedNodeConstraint.length,Vt.y/=y.fixedNodeConstraint.length,b.forEach(function(nt,st){b[st]+=Vt.x}),w.forEach(function(nt,st){w[st]+=Vt.y}),y.fixedNodeConstraint.forEach(function(nt){b[x.get(nt.nodeId)]=nt.position.x,w[x.get(nt.nodeId)]=nt.position.y})}if(y.alignmentConstraint){if(y.alignmentConstraint.vertical)for(var Pt=y.alignmentConstraint.vertical,_t=o(function(st){var Tt=new Set;Pt[st].forEach(function(At){Tt.add(At)});var kt=new Set([].concat(u(Tt)).filter(function(At){return B.has(At)})),Ct=void 0;kt.size>0?Ct=b[x.get(kt.values().next().value)]:Ct=L(Tt).x,Tt.forEach(function(At){B.has(At)||(b[x.get(At)]=Ct)})},"_loop4"),dt=0;dt0?Ct=w[x.get(kt.values().next().value)]:Ct=L(Tt).y,Tt.forEach(function(At){B.has(At)||(w[x.get(At)]=Ct)})},"_loop5"),mt=0;mt{a.exports=e}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return t[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(45);return i})()})});var c2t=Ti((Yb,cz)=>{"use strict";o(function(t,r){typeof Yb=="object"&&typeof cz=="object"?cz.exports=r(lz()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof Yb=="object"?Yb.cytoscapeFcose=r(lz()):t.cytoscapeFcose=r(t.coseBase)},"webpackUniversalModuleDefinition")(Yb,function(e){return(()=>{"use strict";var t={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(S){v=!0,x=S}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],S=w.connectedEdges().length,x.forEach(function(D){D.connectedEdges().length0&&g.set("dummy"+(g.size+1),_),A},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,S=void 0;try{for(var T=p.nodeIndexes[Symbol.iterator](),E;!(b=(E=T.next()).done);b=!0){var _=E.value,A=u(_,2),L=A[0],M=A[1],N=m.cy.getElementById(L);if(N){var k=N.boundingBox(),I=p.xCoords[M]-k.w/2,C=p.xCoords[M]+k.w/2,O=p.yCoords[M]-k.h/2,D=p.yCoords[M]+k.h/2;Iy&&(y=C),Ox&&(x=D)}}}catch(z){w=!0,S=z}finally{try{!b&&T.return&&T.return()}finally{if(w)throw S}}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],Q=W.getRect().x,j=W.getRect().x+W.getRect().width,at=W.getRect().y,X=W.getRect().y+W.getRect().height;Qy&&(y=j),atx&&(x=X)});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,S=void 0,T=void 0,E=void 0,_=d.descendants().not(":parent"),A=_.length,L=0;Lw&&(y=w),vT&&(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 S=b.cy,T=b.eles,E=T.nodes(),_=T.edges(),A=void 0,L=void 0,M=void 0,N={};b.randomize&&(A=w.nodeIndexes,L=w.xCoords,M=w.yCoords);var k=o(function(z){return typeof z=="function"},"isFn"),I=o(function(z,W){return k(z)?z(W):z},"optFn"),C=u.calcParentsWithoutChildren(S,T),O=o(function G(z,W,Q,j){for(var at=W.length,X=0;X0){var ot=void 0;ot=Q.getGraphManager().add(Q.newGraph(),H),G(ot,Z,Q,j)}}},"processChildrenList"),D=o(function(z,W,Q){for(var j=0,at=0,X=0;X0?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=j/at: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),D(F,B,_),P(F,b),F.runLayout(),N},"coseLayout");a.exports={coseLayout:v}},212:(a,s,l)=>{var u=function(){function b(w,S){for(var T=0;T0)if(D){var B=d.getTopMostNodes(T.eles.nodes());if(k=d.connectComponents(E,T.eles,B),k.forEach(function(it){var wt=it.boundingBox();I.push({x:wt.x1+wt.w/2,y:wt.y1+wt.h/2})}),T.randomize&&k.forEach(function(it){T.eles=it,A.push(m(T))}),T.quality=="default"||T.quality=="proof"){var G=E.collection();if(T.tile){var z=new Map,W=[],Q=[],j=0,at={nodeIndexes:z,xCoords:W,yCoords:Q},X=[];if(k.forEach(function(it,wt){it.edges().length==0&&(it.nodes().forEach(function(Ot,St){G.merge(it.nodes()[St]),Ot.isParent()||(at.nodeIndexes.set(it.nodes()[St].id(),j++),at.xCoords.push(it.nodes()[0].position().x),at.yCoords.push(it.nodes()[0].position().y))}),X.push(wt))}),G.length>1){var J=G.boundingBox();I.push({x:J.x1+J.w/2,y:J.y1+J.h/2}),k.push(G),A.push(at);for(var Z=X.length-1;Z>=0;Z--)k.splice(X[Z],1),A.splice(X[Z],1),I.splice(X[Z],1)}}k.forEach(function(it,wt){T.eles=it,N.push(y(T,A[wt])),d.relocateComponent(I[wt],N[wt],T)})}else k.forEach(function(it,wt){d.relocateComponent(I[wt],A[wt],T)});var H=new Set;if(k.length>1){var q=[],K=_.filter(function(it){return it.css("display")=="none"});k.forEach(function(it,wt){var Ot=void 0;if(T.quality=="draft"&&(Ot=A[wt].nodeIndexes),it.nodes().not(K).length>0){var St={};St.edges=[],St.nodes=[];var Vt=void 0;it.nodes().not(K).forEach(function(Pt){if(T.quality=="draft")if(!Pt.isParent())Vt=Ot.get(Pt.id()),St.nodes.push({x:A[wt].xCoords[Vt]-Pt.boundingbox().w/2,y:A[wt].yCoords[Vt]-Pt.boundingbox().h/2,width:Pt.boundingbox().w,height:Pt.boundingbox().h});else{var _t=d.calcBoundingBox(Pt,A[wt].xCoords,A[wt].yCoords,Ot);St.nodes.push({x:_t.topLeftX,y:_t.topLeftY,width:_t.width,height:_t.height})}else N[wt][Pt.id()]&&St.nodes.push({x:N[wt][Pt.id()].getLeft(),y:N[wt][Pt.id()].getTop(),width:N[wt][Pt.id()].getWidth(),height:N[wt][Pt.id()].getHeight()})}),it.edges().forEach(function(Pt){var _t=Pt.source(),dt=Pt.target();if(_t.css("display")!="none"&&dt.css("display")!="none")if(T.quality=="draft"){var Y=Ot.get(_t.id()),ft=Ot.get(dt.id()),mt=[],rt=[];if(_t.isParent()){var ht=d.calcBoundingBox(_t,A[wt].xCoords,A[wt].yCoords,Ot);mt.push(ht.topLeftX+ht.width/2),mt.push(ht.topLeftY+ht.height/2)}else mt.push(A[wt].xCoords[Y]),mt.push(A[wt].yCoords[Y]);if(dt.isParent()){var nt=d.calcBoundingBox(dt,A[wt].xCoords,A[wt].yCoords,Ot);rt.push(nt.topLeftX+nt.width/2),rt.push(nt.topLeftY+nt.height/2)}else rt.push(A[wt].xCoords[ft]),rt.push(A[wt].yCoords[ft]);St.edges.push({startX:mt[0],startY:mt[1],endX:rt[0],endY:rt[1]})}else N[wt][_t.id()]&&N[wt][dt.id()]&&St.edges.push({startX:N[wt][_t.id()].getCenterX(),startY:N[wt][_t.id()].getCenterY(),endX:N[wt][dt.id()].getCenterX(),endY:N[wt][dt.id()].getCenterY()})}),St.nodes.length>0&&(q.push(St),H.add(wt))}});var ot=O.packComponents(q,T.randomize).shifts;if(T.quality=="draft")A.forEach(function(it,wt){var Ot=it.xCoords.map(function(Vt){return Vt+ot[wt].dx}),St=it.yCoords.map(function(Vt){return Vt+ot[wt].dy});it.xCoords=Ot,it.yCoords=St});else{var ct=0;H.forEach(function(it){Object.keys(N[it]).forEach(function(wt){var Ot=N[it][wt];Ot.setCenter(Ot.getCenterX()+ot[ct].dx,Ot.getCenterY()+ot[ct].dy)}),ct++})}}}else{var P=T.eles.boundingBox();if(I.push({x:P.x1+P.w/2,y:P.y1+P.h/2}),T.randomize){var F=m(T);A.push(F)}T.quality=="default"||T.quality=="proof"?(N.push(y(T,A[0])),d.relocateComponent(I[0],N[0],T)):d.relocateComponent(I[0],A[0],T)}var ut=o(function(wt,Ot){if(T.quality=="default"||T.quality=="proof"){typeof wt=="number"&&(wt=Ot);var St=void 0,Vt=void 0,Pt=wt.data("id");return N.forEach(function(dt){Pt in dt&&(St={x:dt[Pt].getRect().getCenterX(),y:dt[Pt].getRect().getCenterY()},Vt=dt[Pt])}),T.nodeDimensionsIncludeLabels&&(Vt.labelWidth&&(Vt.labelPosHorizontal=="left"?St.x+=Vt.labelWidth/2:Vt.labelPosHorizontal=="right"&&(St.x-=Vt.labelWidth/2)),Vt.labelHeight&&(Vt.labelPosVertical=="top"?St.y+=Vt.labelHeight/2:Vt.labelPosVertical=="bottom"&&(St.y-=Vt.labelHeight/2))),St==null&&(St={x:wt.position("x"),y:wt.position("y")}),{x:St.x,y:St.y}}else{var _t=void 0;return A.forEach(function(dt){var Y=dt.nodeIndexes.get(wt.id());Y!=null&&(_t={x:dt.xCoords[Y],y:dt.yCoords[Y]})}),_t==null&&(_t={x:wt.position("x"),y:wt.position("y")}),{x:_t.x,y:_t.y}}},"getPositions");if(T.quality=="default"||T.quality=="proof"||T.randomize){var et=d.calcParentsWithoutChildren(E,_),Mt=_.filter(function(it){return it.css("display")=="none"});T.eles=_.not(Mt),_.nodes().not(":parent").not(Mt).layoutPositions(S,T,ut),et.length>0&&et.forEach(function(it){it.position(ut(it))})}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,S=new Map,T=[],E=[],_=[],A=[],L=[],M=[],N=[],k=[],I=void 0,C=void 0,O=1e8,D=1e-9,P=m.piTol,F=m.samplingType,B=m.nodeSeparation,G=void 0,z=o(function(){for(var Tt=0,kt=0,Ct=!1;kt=$t;){yt=At[$t++];for(var le=T[yt],Zt=0;Ztae&&(ae=L[Ht],ke=Ht)}return ke},"BFS"),Q=o(function(Tt){var kt=void 0;if(Tt){kt=Math.floor(Math.random()*C),I=kt;for(var At=0;At=1)break;ae=zt}for(var le=0;le=1)break;ae=zt}for(var me=0;me0&&(kt.isParent()?T[Tt].push(S.get(kt.id())):T[Tt].push(kt.id()))})});var et=o(function(Tt){var kt=w.get(Tt),Ct=void 0;b.get(Tt).forEach(function(At){g.getElementById(At).isParent()?Ct=S.get(At):Ct=At,T[kt].push(Ct),T[w.get(Ct)].push(Tt)})},"_loop"),Mt=!0,it=!1,wt=void 0;try{for(var Ot=b.keys()[Symbol.iterator](),St;!(Mt=(St=Ot.next()).done);Mt=!0){var Vt=St.value;et(Vt)}}catch(st){it=!0,wt=st}finally{try{!Mt&&Ot.return&&Ot.return()}finally{if(it)throw wt}}C=w.size;var Pt=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=e}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return t[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(579);return i})()})});var F1,sp,uz=R(()=>{"use strict";iu();F1=o(e=>`${e}`,"wrapIcon"),sp={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:F1('')},server:{body:F1('')},disk:{body:F1('')},internet:{body:F1('')},cloud:{body:F1('')},unknown:CS,blank:{body:F1("")}}}});var u2t,h2t,f2t,d2t,p2t=R(()=>{"use strict";iu();Ue();Nl();Ub();uz();rS();u2t=o(async function(e,t){let r=Di("padding"),n=Di("iconSize"),i=n/2,a=n/6,s=a/2;await Promise.all(t.edges().map(async l=>{let{source:u,sourceDir:h,sourceArrow:f,sourceGroup:d,target:p,targetDir:m,targetArrow:g,targetGroup:y,label:v}=eS(l),{x,y:b}=l[0].sourceEndpoint(),{x:w,y:S}=l[0].midpoint(),{x:T,y:E}=l[0].targetEndpoint(),_=r+4;if(d&&(ds(h)?x+=h==="L"?-_:_:b+=h==="T"?-_:_+18),y&&(ds(m)?T+=m==="L"?-_:_:E+=m==="T"?-_:_+18),!d&&ap.getNode(u)?.type==="junction"&&(ds(h)?x+=h==="L"?i:-i:b+=h==="T"?i:-i),!y&&ap.getNode(p)?.type==="junction"&&(ds(m)?T+=m==="L"?i:-i:E+=m==="T"?i:-i),l[0]._private.rscratch){let A=e.insert("g");if(A.insert("path").attr("d",`M ${x},${b} L ${w},${S} L${T},${E} `).attr("class","edge"),f){let L=ds(h)?Gb[h](x,a):x-s,M=eu(h)?Gb[h](b,a):b-s;A.insert("polygon").attr("points",nz[h](a)).attr("transform",`translate(${L},${M})`).attr("class","arrow")}if(g){let L=ds(m)?Gb[m](T,a):T-s,M=eu(m)?Gb[m](E,a):E-s;A.insert("polygon").attr("points",nz[m](a)).attr("transform",`translate(${L},${M})`).attr("class","arrow")}if(v){let L=tS(h,m)?"XY":ds(h)?"X":"Y",M=0;L==="X"?M=Math.abs(x-T):L==="Y"?M=Math.abs(b-E)/1.5:M=Math.abs(x-T)/2;let N=A.append("g");if(await ia(N,v,{useHtmlLabels:!1,width:M,classes:"architecture-service-label"},pt()),N.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),L==="X")N.attr("transform","translate("+w+", "+S+")");else if(L==="Y")N.attr("transform","translate("+w+", "+S+") rotate(-90)");else if(L==="XY"){let k=Vb(h,m);if(k&&Jvt(k)){let I=N.node().getBoundingClientRect(),[C,O]=e2t(k);N.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*C*O*45})`);let D=N.node().getBoundingClientRect();N.attr("transform",` + translate(${w}, ${S-I.height/2}) + translate(${C*D.width/2}, ${O*D.height/2}) + rotate(${-1*C*O*45}, 0, ${I.height/2}) + `)}}}}}))},"drawEdges"),h2t=o(async function(e,t){let n=Di("padding")*.75,i=Di("fontSize"),s=Di("iconSize")/2;await Promise.all(t.nodes().map(async l=>{let u=zf(l);if(u.type==="group"){let{h,w:f,x1:d,y1:p}=l.boundingBox();e.append("rect").attr("x",d+s).attr("y",p+s).attr("width",f).attr("height",h).attr("class","node-bkg");let m=e.append("g"),g=d,y=p;if(u.icon){let v=m.append("g");v.html(`${await Ao(u.icon,{height:n,width:n,fallbackPrefix:sp.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 ia(v,u.label,{useHtmlLabels:!1,width:f,classes:"architecture-service-label"},pt()),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"),f2t=o(async function(e,t,r){for(let n of r){let i=t.append("g"),a=Di("iconSize");if(n.title){let h=i.append("g");await ia(h,n.title,{useHtmlLabels:!1,width:a*1.5,classes:"architecture-service-label"},pt()),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 Ao(n.icon,{height:a,width:a,fallbackPrefix:sp.prefix})}`);else if(n.iconText){s.html(`${await Ao("blank",{height:a,width:a,fallbackPrefix:sp.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,e.setElementForId(n.id,i)}return 0},"drawServices"),d2t=o(function(e,t,r){r.forEach(n=>{let i=t.append("g"),a=Di("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,e.setElementForId(n.id,i)})},"drawJunctions")});function Zne(e,t){e.forEach(r=>{t.add({group:"nodes",data:{type:"service",id:r.id,icon:r.icon,label:r.title,parent:r.in,width:Di("iconSize"),height:Di("iconSize")},classes:"node-service"})})}function Jne(e,t){e.forEach(r=>{t.add({group:"nodes",data:{type:"junction",id:r.id,parent:r.in,width:Di("iconSize"),height:Di("iconSize")},classes:"node-junction"})})}function tie(e,t){t.nodes().map(r=>{let n=zf(r);if(n.type==="group")return;n.x=r.position().x,n.y=r.position().y,e.getElementById(n.id).attr("transform","translate("+(n.x||0)+","+(n.y||0)+")")})}function eie(e,t){e.forEach(r=>{t.add({group:"nodes",data:{type:"group",id:r.id,icon:r.icon,label:r.title,parent:r.in},classes:"node-group"})})}function rie(e,t){e.forEach(r=>{let{lhsId:n,rhsId:i,lhsInto:a,lhsGroup:s,rhsInto:l,lhsDir:u,rhsDir:h,rhsGroup:f,title:d}=r,p=tS(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%"};t.add({group:"edges",data:m,classes:p})})}function nie(e){let t=e.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]=t.reduce(([i,a],{horiz:s,vert:l})=>[[...i,...s],[...a,...l]],[[],[]]);return{horizontal:r,vertical:n}}function iie(e){let t=[],r=o(i=>`${i[0]},${i[1]}`,"posToStr"),n=o(i=>i.split(",").map(a=>parseInt(a)),"strToPos");return e.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),t.push({[rz[p]]:y,[rz[Zvt(p)]]:f,gap:1.5*Di("iconSize")}))})}}}}),t}function aie(e,t,r,n,{spatialMaps:i}){return new Promise(a=>{let s=Gt("body").append("div").attr("id","cy").attr("style","display:none"),l=sl({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight",label:"data(label)","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${Di("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:`${Di("padding")}px`}}]});s.remove(),eie(r,l),Zne(e,l),Jne(t,l),rie(n,l);let u=nie(i),h=iie(i),f=l.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(d){let[p,m]=d.connectedNodes(),{parent:g}=zf(p),{parent:y}=zf(m);return g===y?1.5*Di("iconSize"):.5*Di("iconSize")},edgeElasticity(d){let[p,m]=d.connectedNodes(),{parent:g}=zf(p),{parent:y}=zf(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:S,y:T}=m;x=(y-w+(b-g)*(w-T)/(b-S))/Math.sqrt(1+Math.pow((w-T)/(b-S),2)),v=Math.sqrt(Math.pow(y-w,2)+Math.pow(g-b,2)-Math.pow(x,2));let E=Math.sqrt(Math.pow(S-b,2)+Math.pow(T-w,2));v=v/E;let _=(S-b)*(y-w)-(T-w)*(g-b);switch(!0){case _>=0:_=1;break;case _<0:_=-1;break}let A=(S-b)*(g-b)+(T-w)*(y-w);switch(!0){case A>=0:A=1;break;case A<0:A=-1;break}return x=Math.abs(x)*_,v=v*A,{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}=eS(p),[S,T]=eu(w)?[x.x,b.y]:[b.x,x.y],{weights:E,distances:_}=d(x,b,S,T);p.style("segment-distances",_),p.style("segment-weights",E)}}l.endBatch(),f.run()}),f.run(),l.ready(d=>{V.info("Ready",d),a(l)})})}var m2t,sie,g2t,y2t=R(()=>{"use strict";iu();_F();m2t=Qi(c2t(),1);ur();ce();xf();Jn();Ub();uz();rS();p2t();a4([{name:sp.prefix,icons:sp}]);sl.use(m2t.default);o(Zne,"addServices");o(Jne,"addJunctions");o(tie,"positionNodes");o(eie,"addGroups");o(rie,"addEdges");o(nie,"getAlignments");o(iie,"getRelativeConstraints");o(aie,"layoutArchitecture");sie=o(async(e,t,r,n)=>{let i=n.db,a=i.getServices(),s=i.getJunctions(),l=i.getGroups(),u=i.getEdges(),h=i.getDataStructures(),f=Vs(t),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 f2t(i,p,a),d2t(i,p,s);let g=await aie(a,s,l,u,h);await u2t(d,g),await h2t(m,g),tie(i,g),No(void 0,f,Di("padding"),Di("useMaxWidth"))},"draw"),g2t={draw:sie}});var v2t={};xr(v2t,{diagram:()=>oie});var oie,x2t=R(()=>{"use strict";s2t();Ub();l2t();y2t();oie={parser:a2t,db:ap,renderer:g2t,styles:o2t}});var qie={};xr(qie,{default:()=>Yie});iu();SS();jf();var Oj="c4",$St=o(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),"detector"),GSt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Ij(),Mj));return{id:Oj,diagram:e}},"loader"),VSt={id:Oj,detector:$St,loader:GSt},Pj=VSt;var qit="flowchart",UOt=o((e,t)=>t?.flowchart?.defaultRenderer==="dagre-wrapper"||t?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(e),"detector"),HOt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(ek(),tk));return{id:qit,diagram:e}},"loader"),WOt={id:qit,detector:UOt,loader:HOt},Xit=WOt;var jit="flowchart-v2",YOt=o((e,t)=>t?.flowchart?.defaultRenderer==="dagre-d3"?!1:(t?.flowchart?.defaultRenderer==="elk"&&(t.layout="elk"),/^\s*graph/.test(e)&&t?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(e)),"detector"),qOt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(ek(),tk));return{id:jit,diagram:e}},"loader"),XOt={id:jit,detector:YOt,loader:qOt},Kit=XOt;var Cat="er",kPt=o(e=>/^\s*erDiagram/.test(e),"detector"),EPt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Eat(),kat));return{id:Cat,diagram:e}},"loader"),CPt={id:Cat,detector:kPt,loader:EPt},Sat=CPt;var Put="gitGraph",j$t=o(e=>/^\s*gitGraph/.test(e),"detector"),K$t=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Out(),Iut));return{id:Put,diagram:e}},"loader"),Q$t={id:Put,detector:j$t,loader:K$t},But=Q$t;var dht="gantt",FGt=o(e=>/^\s*gantt/.test(e),"detector"),zGt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(fht(),hht));return{id:dht,diagram:e}},"loader"),$Gt={id:dht,detector:FGt,loader:zGt},pht=$Gt;var kht="info",YGt=o(e=>/^\s*info/.test(e),"detector"),qGt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Tht(),wht));return{id:kht,diagram:e}},"loader"),Eht={id:kht,detector:YGt,loader:qGt};var Iht="pie",sVt=o(e=>/^\s*pie/.test(e),"detector"),oVt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Mht(),Nht));return{id:Iht,diagram:e}},"loader"),Oht={id:Iht,detector:sVt,loader:oVt};var Xht="quadrantChart",CVt=o(e=>/^\s*quadrantChart/.test(e),"detector"),SVt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(qht(),Yht));return{id:Xht,diagram:e}},"loader"),AVt={id:Xht,detector:CVt,loader:SVt},jht=AVt;var Tft="xychart",UVt=o(e=>/^\s*xychart-beta/.test(e),"detector"),HVt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(wft(),bft));return{id:Tft,diagram:e}},"loader"),WVt={id:Tft,detector:UVt,loader:HVt},kft=WVt;var zft="requirement",xUt=o(e=>/^\s*requirement(Diagram)?/.test(e),"detector"),bUt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Fft(),Bft));return{id:zft,diagram:e}},"loader"),wUt={id:zft,detector:xUt,loader:bUt},$ft=wUt;var ddt="sequence",EHt=o(e=>/^\s*sequenceDiagram/.test(e),"detector"),CHt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(fdt(),hdt));return{id:ddt,diagram:e}},"loader"),SHt={id:ddt,detector:EHt,loader:CHt},pdt=SHt;var Ldt="class",sWt=o((e,t)=>t?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(e),"detector"),oWt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(_dt(),Adt));return{id:Ldt,diagram:e}},"loader"),lWt={id:Ldt,detector:sWt,loader:oWt},Ddt=lWt;var E0t="classDiagram",fYt=o((e,t)=>/^\s*classDiagram/.test(e)&&t?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(e),"detector"),dYt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(k0t(),T0t));return{id:E0t,diagram:e}},"loader"),pYt={id:E0t,detector:fYt,loader:dYt},C0t=pYt;var gpt="state",cqt=o((e,t)=>t?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(e),"detector"),uqt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(mpt(),ppt));return{id:gpt,diagram:e}},"loader"),hqt={id:gpt,detector:cqt,loader:uqt},ypt=hqt;var bpt="stateDiagram",dqt=o((e,t)=>!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&t?.state?.defaultRenderer==="dagre-wrapper"),"detector"),pqt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(xpt(),vpt));return{id:bpt,diagram:e}},"loader"),mqt={id:bpt,detector:dqt,loader:pqt},wpt=mqt;var Bpt="journey",Pqt=o(e=>/^\s*journey/.test(e),"detector"),Bqt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Ppt(),Opt));return{id:Bpt,diagram:e}},"loader"),Fqt={id:Bpt,detector:Pqt,loader:Bqt},Fpt=Fqt;ce();xf();Jn();var zqt=o((e,t,r)=>{V.debug(`rendering svg for syntax error +`);let n=Vs(t),i=n.append("g");n.attr("viewBox","0 0 2412 512"),Pr(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"),TB={draw:zqt},zpt=TB;var $qt={db:{},renderer:TB,parser:{parse:o(()=>{},"parse")}},$pt=$qt;var Gpt="flowchart-elk",Gqt=o((e,t={})=>/^\s*flowchart-elk/.test(e)||/^\s*flowchart|graph/.test(e)&&t?.flowchart?.defaultRenderer==="elk"?(t.layout="elk",!0):!1,"detector"),Vqt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(ek(),tk));return{id:Gpt,diagram:e}},"loader"),Uqt={id:Gpt,detector:Gqt,loader:Vqt},Vpt=Uqt;var pmt="timeline",lXt=o(e=>/^\s*timeline/.test(e),"detector"),cXt=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(dmt(),fmt));return{id:pmt,diagram:e}},"loader"),uXt={id:pmt,detector:lXt,loader:cXt},mmt=uXt;var Myt="mindmap",gre=o(e=>/^\s*mindmap/.test(e),"detector"),yre=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(Nyt(),Ryt));return{id:Myt,diagram:e}},"loader"),vre={id:Myt,detector:gre,loader:yre},Iyt=vre;var dvt="sankey",$re=o(e=>/^\s*sankey-beta/.test(e),"detector"),Gre=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(fvt(),hvt));return{id:dvt,diagram:e}},"loader"),Vre={id:dvt,detector:$re,loader:Gre},pvt=Vre;var Evt="packet",ene=o(e=>/^\s*packet-beta/.test(e),"detector"),rne=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(kvt(),Tvt));return{id:Evt,diagram:e}},"loader"),Cvt={id:Evt,detector:ene,loader:rne};var Kvt="block",Nne=o(e=>/^\s*block-beta/.test(e),"detector"),Mne=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(jvt(),Xvt));return{id:Kvt,diagram:e}},"loader"),Ine={id:Kvt,detector:Nne,loader:Mne},Qvt=Ine;var b2t="architecture",lie=o(e=>/^\s*architecture/.test(e),"detector"),cie=o(async()=>{let{diagram:e}=await Promise.resolve().then(()=>(x2t(),v2t));return{id:b2t,diagram:e}},"loader"),uie={id:b2t,detector:lie,loader:cie},w2t=uie;jf();Ue();var T2t=!1,z1=o(()=>{T2t||(T2t=!0,id("error",$pt,e=>e.toLowerCase().trim()==="error"),id("---",{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")},e=>e.toLowerCase().trimStart().startsWith("---")),c4(Pj,C0t,Ddt,Sat,pht,Eht,Oht,$ft,pdt,Vpt,Kit,Xit,Iyt,mmt,But,wpt,ypt,Fpt,jht,pvt,Cvt,kft,Qvt,w2t))},"addDiagrams");ce();jf();Ue();var k2t=o(async()=>{V.debug("Loading registered diagrams");let t=(await Promise.allSettled(Object.entries(Xf).map(async([r,{detector:n,loader:i}])=>{if(i)try{by(r)}catch{try{let{diagram:a,id:s}=await i();id(s,a,n)}catch(a){throw V.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete Xf[r],a}}}))).filter(r=>r.status==="rejected");if(t.length>0){V.error(`Failed to load ${t.length} external diagrams`);for(let r of t)V.error(r);throw new Error(`Failed to load ${t.length} external diagrams`)}},"loadRegisteredDiagrams");ce();ur();var nS="comm",iS="rule",aS="decl";var E2t="@import";var C2t="@keyframes";var S2t="@layer";var hz=Math.abs,qb=String.fromCharCode;function sS(e){return e.trim()}o(sS,"trim");function Xb(e,t,r){return e.replace(t,r)}o(Xb,"replace");function A2t(e,t,r){return e.indexOf(t,r)}o(A2t,"indexof");function op(e,t){return e.charCodeAt(t)|0}o(op,"charat");function $f(e,t,r){return e.slice(t,r)}o($f,"substr");function ko(e){return e.length}o(ko,"strlen");function _2t(e){return e.length}o(_2t,"sizeof");function $1(e,t){return t.push(e),e}o($1,"append");var oS=1,G1=1,L2t=0,ol=0,Ri=0,U1="";function lS(e,t,r,n,i,a,s,l){return{value:e,root:t,parent:r,type:n,props:i,children:a,line:oS,column:G1,length:s,return:"",siblings:l}}o(lS,"node");function D2t(){return Ri}o(D2t,"char");function R2t(){return Ri=ol>0?op(U1,--ol):0,G1--,Ri===10&&(G1=1,oS--),Ri}o(R2t,"prev");function ll(){return Ri=ol2||V1(Ri)>3?"":" "}o(I2t,"whitespace");function O2t(e,t){for(;--t&&ll()&&!(Ri<48||Ri>102||Ri>57&&Ri<65||Ri>70&&Ri<97););return cS(e,jb()+(t<6&&sh()==32&&ll()==32))}o(O2t,"escaping");function fz(e){for(;ll();)switch(Ri){case e:return ol;case 34:case 39:e!==34&&e!==39&&fz(Ri);break;case 40:e===41&&fz(e);break;case 92:ll();break}return ol}o(fz,"delimiter");function P2t(e,t){for(;ll()&&e+Ri!==57;)if(e+Ri===84&&sh()===47)break;return"/*"+cS(t,ol-1)+"*"+qb(e===47?e:ll())}o(P2t,"commenter");function B2t(e){for(;!V1(sh());)ll();return cS(e,ol)}o(B2t,"identifier");function $2t(e){return M2t(hS("",null,null,null,[""],e=N2t(e),0,[0],e))}o($2t,"compile");function hS(e,t,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="",S=i,T=a,E=n,_=w;v;)switch(g=b,b=ll()){case 40:if(g!=108&&op(_,d-1)==58){A2t(_+=Xb(uS(b),"&","&\f"),"&\f",hz(h?l[h-1]:0))!=-1&&(x=-1);break}case 34:case 39:case 91:_+=uS(b);break;case 9:case 10:case 13:case 32:_+=I2t(g);break;case 92:_+=O2t(jb()-1,7);continue;case 47:switch(sh()){case 42:case 47:$1(hie(P2t(ll(),jb()),t,r,u),u),(V1(g||1)==5||V1(sh()||1)==5)&&ko(_)&&$f(_,-1,void 0)!==" "&&(_+=" ");break;default:_+="/"}break;case 123*y:l[h++]=ko(_)*x;case 125*y:case 59:case 0:switch(b){case 0:case 125:v=0;case 59+f:x==-1&&(_=Xb(_,/\f/g,"")),m>0&&(ko(_)-d||y===0&&g===47)&&$1(m>32?z2t(_+";",n,r,d-1,u):z2t(Xb(_," ","")+";",n,r,d-2,u),u);break;case 59:_+=";";default:if($1(E=F2t(_,t,r,h,f,i,l,w,S=[],T=[],d,a),a),b===123)if(f===0)hS(_,t,E,E,S,a,d,l,T);else switch(p===99&&op(_,3)===110?100:p){case 100:case 108:case 109:case 115:hS(e,E,E,n&&$1(F2t(e,E,E,0,0,i,l,w,i,S=[],d,T),T),i,T,d,l,n?S:T);break;default:hS(_,E,E,E,[""],T,0,l,T)}}h=f=m=0,y=x=1,w=_="",d=s;break;case 58:d=1+ko(_),m=g;default:if(y<1){if(b==123)--y;else if(b==125&&y++==0&&R2t()==125)continue}switch(_+=qb(b),b*y){case 38:x=f>0?1:(_+="\f",-1);break;case 44:l[h++]=(ko(_)-1)*x,x=1;break;case 64:sh()===45&&(_+=uS(ll())),p=sh(),f=d=ko(w=_+=B2t(jb())),b++;break;case 45:g===45&&ko(_)==2&&(y=0)}}return a}o(hS,"parse");function F2t(e,t,r,n,i,a,s,l,u,h,f,d){for(var p=i-1,m=i===0?a:[""],g=_2t(m),y=0,v=0,x=0;y0?m[b]+" "+w:Xb(w,/&\f/g,m[b])))&&(u[x++]=S);return lS(e,t,r,i===0?iS:l,u,h,f,d)}o(F2t,"ruleset");function hie(e,t,r,n){return lS(e,t,r,nS,qb(D2t()),$f(e,2,-2),0,n)}o(hie,"comment");function z2t(e,t,r,n,i){return lS(e,t,r,aS,$f(e,0,n),$f(e,n+1,-1),n,i)}o(z2t,"declaration");function fS(e,t){for(var r="",n=0;n{H2t.forEach(e=>{e()}),H2t=[]},"attachFunctions");ce();var Y2t=o(e=>e.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");l4();sL();function q2t(e){let t=e.match(o4);if(!t)return{text:e,metadata:{}};let r=j5(t[1],{schema:X5})??{};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:e.slice(t[0].length),metadata:n}}o(q2t,"extractFrontMatter");_r();var die=o(e=>e.replace(/\r\n?/g,` +`).replace(/<(\w+)([^>]*)>/g,(t,r,n)=>"<"+r+n.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),pie=o(e=>{let{text:t,metadata:r}=q2t(e),{displayMode:n,title:i,config:a={}}=r;return n&&(a.gantt||(a.gantt={}),a.gantt.displayMode=n),{title:i,config:a,text:t}},"processFrontmatter"),mie=o(e=>{let t=Oe.detectInit(e)??{},r=Oe.detectDirective(e,"wrap");return Array.isArray(r)?t.wrap=r.some(({type:n})=>n==="wrap"):r?.type==="wrap"&&(t.wrap=!0),{text:Tj(e),directive:t}},"processDirectives");function dz(e){let t=die(e),r=pie(t),n=mie(r.text),i=Ss(r.config,n.directive);return e=Y2t(n.text),{code:e,title:r.title,config:i}}o(dz,"preprocessDiagram");z7();g4();_r();function X2t(e){let t=new TextEncoder().encode(e),r=Array.from(t,n=>String.fromCodePoint(n)).join("");return btoa(r)}o(X2t,"toBase64");var gie=5e4,yie="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",vie="sandbox",xie="loose",bie="http://www.w3.org/2000/svg",wie="http://www.w3.org/1999/xlink",Tie="http://www.w3.org/1999/xhtml",kie="100%",Eie="100%",Cie="border:0;margin:0;",Sie="margin:0",Aie="allow-top-navigation-by-user-activation allow-popups",_ie='The "iframe" tag is not supported by your browser.',Lie=["foreignobject"],Die=["dominant-baseline"];function J2t(e){let t=dz(e);return ly(),q$(t.config??{}),t}o(J2t,"processAndSetConfigs");async function Rie(e,t){z1();try{let{code:r,config:n}=J2t(e);return{diagramType:(await txt(r)).type,config:n}}catch(r){if(t?.suppressErrors)return!1;throw r}}o(Rie,"parse");var j2t=o((e,t,r=[])=>` +.${e} ${t} { ${r.join(" !important; ")} !important; }`,"cssImportantStyles"),Nie=o((e,t=new Map)=>{let r="";if(e.themeCSS!==void 0&&(r+=` +${e.themeCSS}`),e.fontFamily!==void 0&&(r+=` +:root { --mermaid-font-family: ${e.fontFamily}}`),e.altFontFamily!==void 0&&(r+=` +:root { --mermaid-alt-font-family: ${e.altFontFamily}}`),t instanceof Map){let s=e.htmlLabels??e.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];t.forEach(l=>{cr(l.styles)||s.forEach(u=>{r+=j2t(l.id,u,l.styles)}),cr(l.textStyles)||(r+=j2t(l.id,"tspan",(l?.textStyles||[]).map(u=>u.replace("color","fill"))))})}return r},"createCssStyles"),Mie=o((e,t,r,n)=>{let i=Nie(e,r),a=_V(t,i,e.themeVariables);return fS($2t(`${n}{${a}}`),G2t)},"createUserStyles"),Iie=o((e="",t,r)=>{let n=e;return!r&&!t&&(n=n.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),n=no(n),n=n.replace(/
    /g,"
    "),n},"cleanUpSvgCode"),Oie=o((e="",t)=>{let r=t?.viewBox?.baseVal?.height?t.viewBox.baseVal.height+"px":Eie,n=X2t(`${e}`);return``},"putIntoIFrame"),K2t=o((e,t,r,n,i)=>{let a=e.append("div");a.attr("id",r),n&&a.attr("style",n);let s=a.append("svg").attr("id",t).attr("width","100%").attr("xmlns",bie);return i&&s.attr("xmlns:xlink",i),s.append("g"),e},"appendDivSvgG");function Q2t(e,t){return e.append("iframe").attr("id",t).attr("style","width: 100%; height: 100%;").attr("sandbox","")}o(Q2t,"sandboxedIframe");var Pie=o((e,t,r,n)=>{e.getElementById(t)?.remove(),e.getElementById(r)?.remove(),e.getElementById(n)?.remove()},"removeExistingElements"),Bie=o(async function(e,t,r){z1();let n=J2t(t);t=n.code;let i=Nr();V.debug(i),t.length>(i?.maxTextSize??gie)&&(t=yie);let a="#"+e,s="i"+e,l="#"+s,u="d"+e,h="#"+u,f=o(()=>{let I=Gt(p?l:h).node();I&&"remove"in I&&I.remove()},"removeTempElements"),d=Gt("body"),p=i.securityLevel===vie,m=i.securityLevel===xie,g=i.fontFamily;if(r!==void 0){if(r&&(r.innerHTML=""),p){let k=Q2t(Gt(r),s);d=Gt(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=Gt(r);K2t(d,e,u,`font-family: ${g}`,wie)}else{if(Pie(document,e,u,s),p){let k=Q2t(Gt("body"),s);d=Gt(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=Gt("body");K2t(d,e,u)}let y,v;try{y=await H1.fromText(t,{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,S=w.firstChild,T=y.renderer.getClasses?.(t,y),E=Mie(i,b,T,a),_=document.createElement("style");_.innerHTML=E,w.insertBefore(_,S);try{await y.renderer.draw(t,e,Px,y)}catch(k){throw i.suppressErrorRendering?f():zpt.draw(t,e,Px),k}let A=d.select(`${h} svg`),L=y.db.getAccTitle?.(),M=y.db.getAccDescription?.();zie(b,A,L,M),d.select(`[id="${e}"]`).selectAll("foreignobject > *").attr("xmlns",Tie);let N=d.select(h).node().innerHTML;if(V.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),N=Iie(N,p,Tr(i.arrowMarkerAbsolute)),p){let k=d.select(h+" svg").node();N=Oie(N,k)}else m||(N=Z2t.default.sanitize(N,{ADD_TAGS:Lie,ADD_ATTR:Die}));if(W2t(),v)throw v;return f(),{diagramType:b,svg:N,bindFunctions:y.db.bindFunctions}},"render");function Fie(e={}){let t=Vn({},e);t?.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables||(t.themeVariables={}),t.themeVariables.fontFamily=t.fontFamily),H$(t),t?.theme&&t.theme in _o?t.themeVariables=_o[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=_o.default.getThemeVariables(t.themeVariables));let r=typeof t=="object"?HS(t):WS();J1(r.logLevel),z1()}o(Fie,"initialize");var txt=o((e,t={})=>{let{code:r}=dz(e);return H1.fromText(r,t)},"getDiagramFromText");function zie(e,t,r,n){V2t(t,e),U2t(t,r,n,t.attr("id"))}o(zie,"addA11yInfo");var Gf=Object.freeze({render:Bie,parse:Rie,getDiagramFromText:txt,initialize:Fie,getConfig:Nr,setConfig:v4,getSiteConfig:WS,updateSiteConfig:W$,reset:o(()=>{ly()},"reset"),globalReset:o(()=>{ly(hh)},"globalReset"),defaultConfig:hh});J1(Nr().logLevel);ly(Nr());ZT();_r();var $ie=o((e,t,r)=>{V.warn(e),U9(e)?(r&&r(e.str,e.hash),t.push({...e,message:e.str,error:e})):(r&&r(e),e instanceof Error&&t.push({str:e.message,message:e.message,hash:e.name,error:e}))},"handleError"),ext=o(async function(e={querySelector:".mermaid"}){try{await Gie(e)}catch(t){if(U9(t)&&V.error(t.str),oh.parseError&&oh.parseError(t),!e.suppressErrors)throw V.error("Use the suppressErrors option to suppress these errors"),t}},"run"),Gie=o(async function({postRenderCallback:e,querySelector:t,nodes:r}={querySelector:".mermaid"}){let n=Gf.getConfig();V.debug(`${e?"":"No "}Callback function found`);let i;if(r)i=r;else if(t)i=document.querySelectorAll(t);else throw new Error("Nodes and querySelector are both undefined");V.debug(`Found ${i.length} diagrams`),n?.startOnLoad!==void 0&&(V.debug("Start On Load: "+n?.startOnLoad),Gf.updateSiteConfig({startOnLoad:n?.startOnLoad}));let a=new Oe.InitIDGenerator(n.deterministicIds,n.deterministicIDSeed),s,l=[];for(let u of Array.from(i)){V.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=s4(Oe.entityDecode(s)).trim().replace(//gi,"
    ");let f=Oe.detectInit(s);f&&V.debug("Detected early reinit: ",f);try{let{svg:d,bindFunctions:p}=await axt(h,s,u);u.innerHTML=d,e&&await e(h),p&&p(u)}catch(d){$ie(d,l,oh.parseError)}}if(l.length>0)throw l[0]},"runThrowsErrors"),rxt=o(function(e){Gf.initialize(e)},"initialize"),Vie=o(async function(e,t,r){V.warn("mermaid.init is deprecated. Please use run instead."),e&&rxt(e);let n={postRenderCallback:r,querySelector:".mermaid"};typeof t=="string"?n.querySelector=t:t&&(t instanceof HTMLElement?n.nodes=[t]:n.nodes=t),await ext(n)},"init"),Uie=o(async(e,{lazyLoad:t=!0}={})=>{z1(),c4(...e),t===!1&&await k2t()},"registerExternalDiagrams"),nxt=o(function(){if(oh.startOnLoad){let{startOnLoad:e}=Gf.getConfig();e&&oh.run().catch(t=>V.error("Mermaid failed to initialize",t))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",nxt,!1)}var Hie=o(function(e){oh.parseError=e},"setParseErrorHandler"),dS=[],pz=!1,ixt=o(async()=>{if(!pz){for(pz=!0;dS.length>0;){let e=dS.shift();if(e)try{await e()}catch(t){V.error("Error executing queue",t)}}pz=!1}},"executeQueue"),Wie=o(async(e,t)=>new Promise((r,n)=>{let i=o(()=>new Promise((a,s)=>{Gf.parse(e,t).then(l=>{a(l),r(l)},l=>{V.error("Error parsing",l),oh.parseError?.(l),s(l),n(l)})}),"performCall");dS.push(i),ixt().catch(n)}),"parse"),axt=o((e,t,r)=>new Promise((n,i)=>{let a=o(()=>new Promise((s,l)=>{Gf.render(e,t,r).then(u=>{s(u),n(u)},u=>{V.error("Error parsing",u),oh.parseError?.(u),l(u),i(u)})}),"performCall");dS.push(a),ixt().catch(i)}),"render"),oh={startOnLoad:!0,mermaidAPI:Gf,parse:Wie,render:axt,init:Vie,run:ext,registerExternalDiagrams:Uie,registerLayoutLoaders:wR,initialize:rxt,parseError:void 0,contentLoaded:nxt,setParseErrorHandler:Hie,detectType:gp,registerIconPacks:a4},Yie=oh;return fxt(qie);})(); +/*! 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/images/favicon.png b/assets/images/favicon.png new file mode 100644 index 00000000..1cf13b9f Binary files /dev/null and b/assets/images/favicon.png differ diff --git a/assets/images/social/about.png b/assets/images/social/about.png new file mode 100644 index 00000000..c7f8598a Binary files /dev/null and b/assets/images/social/about.png differ diff --git a/assets/images/social/demo.png b/assets/images/social/demo.png new file mode 100644 index 00000000..cca5e9e6 Binary files /dev/null and b/assets/images/social/demo.png differ diff --git a/assets/images/social/get-started/quick-start.png b/assets/images/social/get-started/quick-start.png new file mode 100644 index 00000000..6f561eaf Binary files /dev/null and b/assets/images/social/get-started/quick-start.png differ diff --git a/assets/images/social/index.png b/assets/images/social/index.png new file mode 100644 index 00000000..f5f98d00 Binary files /dev/null and b/assets/images/social/index.png differ diff --git a/assets/images/social/sample/demo/demo-index.png b/assets/images/social/sample/demo/demo-index.png new file mode 100644 index 00000000..65f7506e Binary files /dev/null and b/assets/images/social/sample/demo/demo-index.png differ diff --git a/assets/images/social/setup/advanced.png b/assets/images/social/setup/advanced.png new file mode 100644 index 00000000..9c88a7c9 Binary files /dev/null and b/assets/images/social/setup/advanced.png differ diff --git a/assets/images/social/setup/configuration.png b/assets/images/social/setup/configuration.png new file mode 100644 index 00000000..1834660a Binary files /dev/null and b/assets/images/social/setup/configuration.png differ diff --git a/assets/images/social/setup/connection.png b/assets/images/social/setup/connection.png new file mode 100644 index 00000000..3752078d Binary files /dev/null and b/assets/images/social/setup/connection.png differ diff --git a/assets/images/social/setup/delete-data.png b/assets/images/social/setup/delete-data.png new file mode 100644 index 00000000..3b2655c2 Binary files /dev/null and b/assets/images/social/setup/delete-data.png differ diff --git a/assets/images/social/setup/deployment.png b/assets/images/social/setup/deployment.png new file mode 100644 index 00000000..16345905 Binary files /dev/null and b/assets/images/social/setup/deployment.png differ diff --git a/assets/images/social/setup/design.png b/assets/images/social/setup/design.png new file mode 100644 index 00000000..63ba689f Binary files /dev/null and b/assets/images/social/setup/design.png differ diff --git a/assets/images/social/setup/generator/count.png b/assets/images/social/setup/generator/count.png new file mode 100644 index 00000000..3f03dea8 Binary files /dev/null and b/assets/images/social/setup/generator/count.png differ diff --git a/assets/images/social/setup/generator/data-generator.png b/assets/images/social/setup/generator/data-generator.png new file mode 100644 index 00000000..f03223a2 Binary files /dev/null and b/assets/images/social/setup/generator/data-generator.png differ diff --git a/assets/images/social/setup/generator/foreign-key.png b/assets/images/social/setup/generator/foreign-key.png new file mode 100644 index 00000000..d4bcec8d Binary files /dev/null and b/assets/images/social/setup/generator/foreign-key.png differ diff --git a/assets/images/social/setup/guide/data-source/database/cassandra.png b/assets/images/social/setup/guide/data-source/database/cassandra.png new file mode 100644 index 00000000..7740fe7b Binary files /dev/null and b/assets/images/social/setup/guide/data-source/database/cassandra.png differ diff --git a/assets/images/social/setup/guide/data-source/database/mysql.png b/assets/images/social/setup/guide/data-source/database/mysql.png new file mode 100644 index 00000000..6726a785 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/database/mysql.png differ diff --git a/assets/images/social/setup/guide/data-source/database/postgres.png b/assets/images/social/setup/guide/data-source/database/postgres.png new file mode 100644 index 00000000..7bff0955 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/database/postgres.png differ diff --git a/assets/images/social/setup/guide/data-source/file/csv.png b/assets/images/social/setup/guide/data-source/file/csv.png new file mode 100644 index 00000000..601a6c1b Binary files /dev/null and b/assets/images/social/setup/guide/data-source/file/csv.png differ diff --git a/assets/images/social/setup/guide/data-source/file/delta-lake.png b/assets/images/social/setup/guide/data-source/file/delta-lake.png new file mode 100644 index 00000000..89415306 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/file/delta-lake.png differ diff --git a/assets/images/social/setup/guide/data-source/file/iceberg.png b/assets/images/social/setup/guide/data-source/file/iceberg.png new file mode 100644 index 00000000..9b146b29 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/file/iceberg.png differ diff --git a/assets/images/social/setup/guide/data-source/file/json.png b/assets/images/social/setup/guide/data-source/file/json.png new file mode 100644 index 00000000..26ad4e05 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/file/json.png differ diff --git a/assets/images/social/setup/guide/data-source/file/orc.png b/assets/images/social/setup/guide/data-source/file/orc.png new file mode 100644 index 00000000..9956396a Binary files /dev/null and b/assets/images/social/setup/guide/data-source/file/orc.png differ diff --git a/assets/images/social/setup/guide/data-source/file/parquet.png b/assets/images/social/setup/guide/data-source/file/parquet.png new file mode 100644 index 00000000..b7e6d783 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/file/parquet.png differ diff --git a/assets/images/social/setup/guide/data-source/http/http.png b/assets/images/social/setup/guide/data-source/http/http.png new file mode 100644 index 00000000..8e49762e Binary files /dev/null and b/assets/images/social/setup/guide/data-source/http/http.png differ diff --git a/assets/images/social/setup/guide/data-source/messaging/kafka.png b/assets/images/social/setup/guide/data-source/messaging/kafka.png new file mode 100644 index 00000000..da864aa9 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/messaging/kafka.png differ diff --git a/assets/images/social/setup/guide/data-source/messaging/solace.png b/assets/images/social/setup/guide/data-source/messaging/solace.png new file mode 100644 index 00000000..c4b6d6bf Binary files /dev/null and b/assets/images/social/setup/guide/data-source/messaging/solace.png differ diff --git a/assets/images/social/setup/guide/data-source/metadata/data-contract-cli.png b/assets/images/social/setup/guide/data-source/metadata/data-contract-cli.png new file mode 100644 index 00000000..5b541d9c Binary files /dev/null and b/assets/images/social/setup/guide/data-source/metadata/data-contract-cli.png differ diff --git a/assets/images/social/setup/guide/data-source/metadata/great-expectations.png b/assets/images/social/setup/guide/data-source/metadata/great-expectations.png new file mode 100644 index 00000000..93622737 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/metadata/great-expectations.png differ diff --git a/assets/images/social/setup/guide/data-source/metadata/marquez.png b/assets/images/social/setup/guide/data-source/metadata/marquez.png new file mode 100644 index 00000000..8495eaf1 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/metadata/marquez.png differ diff --git a/assets/images/social/setup/guide/data-source/metadata/open-data-contract-standard.png b/assets/images/social/setup/guide/data-source/metadata/open-data-contract-standard.png new file mode 100644 index 00000000..0e0ca029 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/metadata/open-data-contract-standard.png differ diff --git a/assets/images/social/setup/guide/data-source/metadata/open-metadata.png b/assets/images/social/setup/guide/data-source/metadata/open-metadata.png new file mode 100644 index 00000000..f1367c03 Binary files /dev/null and b/assets/images/social/setup/guide/data-source/metadata/open-metadata.png differ diff --git a/assets/images/social/setup/guide/index.png b/assets/images/social/setup/guide/index.png new file mode 100644 index 00000000..3335b600 Binary files /dev/null and b/assets/images/social/setup/guide/index.png differ diff --git a/assets/images/social/setup/guide/scenario/auto-generate-connection.png b/assets/images/social/setup/guide/scenario/auto-generate-connection.png new file mode 100644 index 00000000..99a820ba Binary files /dev/null and b/assets/images/social/setup/guide/scenario/auto-generate-connection.png differ diff --git a/assets/images/social/setup/guide/scenario/batch-and-event.png b/assets/images/social/setup/guide/scenario/batch-and-event.png new file mode 100644 index 00000000..b211fd9a Binary files /dev/null and b/assets/images/social/setup/guide/scenario/batch-and-event.png differ diff --git a/assets/images/social/setup/guide/scenario/data-generation.png b/assets/images/social/setup/guide/scenario/data-generation.png new file mode 100644 index 00000000..020dae21 Binary files /dev/null and b/assets/images/social/setup/guide/scenario/data-generation.png differ diff --git a/assets/images/social/setup/guide/scenario/data-validation.png b/assets/images/social/setup/guide/scenario/data-validation.png new file mode 100644 index 00000000..03ea3b9d Binary files /dev/null and b/assets/images/social/setup/guide/scenario/data-validation.png differ diff --git a/assets/images/social/setup/guide/scenario/delete-generated-data.png b/assets/images/social/setup/guide/scenario/delete-generated-data.png new file mode 100644 index 00000000..d310d979 Binary files /dev/null and b/assets/images/social/setup/guide/scenario/delete-generated-data.png differ diff --git a/assets/images/social/setup/guide/scenario/first-data-generation.png b/assets/images/social/setup/guide/scenario/first-data-generation.png new file mode 100644 index 00000000..fb0b863a Binary files /dev/null and b/assets/images/social/setup/guide/scenario/first-data-generation.png differ diff --git a/assets/images/social/setup/guide/scenario/records-per-column.png b/assets/images/social/setup/guide/scenario/records-per-column.png new file mode 100644 index 00000000..4e420085 Binary files /dev/null and b/assets/images/social/setup/guide/scenario/records-per-column.png differ diff --git a/assets/images/social/setup/index.png b/assets/images/social/setup/index.png new file mode 100644 index 00000000..536de2f9 Binary files /dev/null and b/assets/images/social/setup/index.png differ diff --git a/assets/images/social/setup/report/alert.png b/assets/images/social/setup/report/alert.png new file mode 100644 index 00000000..22c7c381 Binary files /dev/null and b/assets/images/social/setup/report/alert.png differ diff --git a/assets/images/social/setup/report/html-report.png b/assets/images/social/setup/report/html-report.png new file mode 100644 index 00000000..9b6284bb Binary files /dev/null and b/assets/images/social/setup/report/html-report.png differ diff --git a/assets/images/social/setup/validation.png b/assets/images/social/setup/validation.png new file mode 100644 index 00000000..87b7569f Binary files /dev/null and b/assets/images/social/setup/validation.png differ diff --git a/assets/images/social/setup/validation/basic-validation.png b/assets/images/social/setup/validation/basic-validation.png new file mode 100644 index 00000000..c22defdd Binary files /dev/null and b/assets/images/social/setup/validation/basic-validation.png differ diff --git a/assets/images/social/setup/validation/column-name-validation.png b/assets/images/social/setup/validation/column-name-validation.png new file mode 100644 index 00000000..907d6c7a Binary files /dev/null and b/assets/images/social/setup/validation/column-name-validation.png differ diff --git a/assets/images/social/setup/validation/external-source-validation.png b/assets/images/social/setup/validation/external-source-validation.png new file mode 100644 index 00000000..0c33c657 Binary files /dev/null and b/assets/images/social/setup/validation/external-source-validation.png differ diff --git a/assets/images/social/setup/validation/group-by-validation.png b/assets/images/social/setup/validation/group-by-validation.png new file mode 100644 index 00000000..7e47dabc Binary files /dev/null and b/assets/images/social/setup/validation/group-by-validation.png differ diff --git a/assets/images/social/setup/validation/upstream-data-source-validation.png b/assets/images/social/setup/validation/upstream-data-source-validation.png new file mode 100644 index 00000000..fe012e66 Binary files /dev/null and b/assets/images/social/setup/validation/upstream-data-source-validation.png differ diff --git a/assets/images/social/sponsor.png b/assets/images/social/sponsor.png new file mode 100644 index 00000000..b1c74087 Binary files /dev/null and b/assets/images/social/sponsor.png differ diff --git a/assets/images/social/use-case.png b/assets/images/social/use-case.png new file mode 100644 index 00000000..abbce3e2 Binary files /dev/null and b/assets/images/social/use-case.png differ diff --git a/assets/images/social/use-case/blog/shift-left-data-quality.png b/assets/images/social/use-case/blog/shift-left-data-quality.png new file mode 100644 index 00000000..afa76cb2 Binary files /dev/null and b/assets/images/social/use-case/blog/shift-left-data-quality.png differ diff --git a/assets/images/social/use-case/business-value.png b/assets/images/social/use-case/business-value.png new file mode 100644 index 00000000..c7f2106a Binary files /dev/null and b/assets/images/social/use-case/business-value.png differ diff --git a/assets/images/social/use-case/comparison.png b/assets/images/social/use-case/comparison.png new file mode 100644 index 00000000..25df49ab Binary files /dev/null and b/assets/images/social/use-case/comparison.png differ diff --git a/assets/images/social/use-case/roadmap.png b/assets/images/social/use-case/roadmap.png new file mode 100644 index 00000000..1088a6de Binary files /dev/null and b/assets/images/social/use-case/roadmap.png differ diff --git a/assets/javascripts/bundle.83f73b43.min.js b/assets/javascripts/bundle.83f73b43.min.js new file mode 100644 index 00000000..c1def78c --- /dev/null +++ b/assets/javascripts/bundle.83f73b43.min.js @@ -0,0 +1,16 @@ +"use strict";(()=>{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://data.catering/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